.scan-page{--paper:#f6f5f4;--white:#fff;--ink:#121212;--ink-soft:#3d3d3d;--gray:#6b6b6b;--gray-mid:#c4c4c4;--gray-line:#e3e2e0;--red:#a00e33;--red-bright:#c81e42;--red-deep:#6e0a22;--paper-warm:#f2efed;--font-en:"Inter","Noto Sans JP",sans-serif;--font-jp:"Noto Sans JP","Inter",sans-serif;--gutter:clamp(20px,5vw,72px);background:var(--paper);color:var(--ink);font-family:var(--font-jp);letter-spacing:.02em;-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.9}.scan-page *,.scan-page :before,.scan-page :after{box-sizing:border-box}.scan-page h1,.scan-page h2,.scan-page h3,.scan-page p,.scan-page ol,.scan-page ul{margin-top:0}.scan-page a{color:inherit}.scan-page :focus-visible{outline:2px solid var(--red);outline-offset:3px}.scan-page .btn{font:inherit;letter-spacing:.12em;cursor:pointer;isolation:isolate;border:0;border-radius:999px;align-items:center;gap:14px;padding:18px 34px;font-size:14px;font-weight:700;line-height:1.5;text-decoration:none;transition:color .35s,transform .3s,box-shadow .35s;display:inline-flex;position:relative;overflow:hidden}.scan-page .btn:before{z-index:-1;background:var(--red);content:"";transform-origin:100%;transition:transform .45s cubic-bezier(.22,1,.36,1);position:absolute;inset:0;transform:scaleX(0)}.scan-page .btn:hover:before{transform-origin:0;transform:scaleX(1)}.scan-page .btn:hover{transform:translateY(-3px)}.scan-page .btn .arr{transition:transform .35s cubic-bezier(.22,1,.36,1)}.scan-page .btn:hover .arr{transform:translate(6px)}.scan-page .btn--solid{background:var(--ink);color:var(--white)}.scan-page .btn--solid:hover{color:var(--white);box-shadow:0 10px 24px #a00e3338}.scan-page .btn--red{background:var(--red);color:var(--white)}.scan-page .btn--red:before{background:var(--red-deep)}.scan-page .btn--red:hover{background:var(--red-deep);box-shadow:0 10px 24px #6e0a2238}.scan-page .btn--ghost{color:var(--ink);background:0 0;border:1.5px solid}.scan-page .btn--ghost:hover{color:var(--white);border-color:#0000}.scan-page .btn:disabled{opacity:.5;pointer-events:none;transform:none}.p-header{height:64px;padding:0 var(--gutter);background:var(--paper);box-shadow:0 1px 0 var(--gray-line);justify-content:space-between;align-items:center;display:flex}.p-header .brand{letter-spacing:.06em;font-size:15px;font-weight:700;text-decoration:none}.p-header .brand small{color:var(--gray);font-family:var(--font-en);letter-spacing:.24em;font-size:10px;font-weight:400;display:block}.scan{width:min(1040px,calc(100% - var(--gutter)*2));margin-inline:auto;padding-bottom:clamp(64px,8vw,110px)}.scan-hero{border-bottom:1px solid var(--gray-line);padding:clamp(56px,8vw,96px) 0 40px}.scan .mono{color:var(--red);font-family:var(--font-en);letter-spacing:.4em;text-transform:uppercase;align-items:center;gap:14px;font-size:12px;font-weight:600;display:flex}.dia{background:var(--red);flex:0 0 11px;width:11px;height:11px;display:inline-block;transform:rotate(45deg)}.scan-hero h1{letter-spacing:.01em;margin:20px 0;font-size:clamp(34px,5.1vw,61px);font-weight:900;line-height:1.25}.scan-hero em{color:var(--red);font-style:normal;text-decoration:none}.scan-hero p{max-width:46em;color:var(--ink-soft);font-size:clamp(15px,1.4vw,18px);line-height:2.1}.scan-box,.scan-card,.scan-cta{background:var(--white);border:1px solid var(--gray-line);border-radius:12px;margin-top:32px;padding:clamp(22px,3vw,36px);box-shadow:0 18px 40px #12121214}#scan-result{background:0 0;border:0;margin-top:40px;padding:0}.scan-meta{color:var(--gray);font-family:var(--font-en);letter-spacing:.04em;overflow-wrap:anywhere;margin-bottom:20px;font-size:13px}#scan-form{gap:14px;display:grid}#scan-form label{letter-spacing:.08em;margin-bottom:10px;font-size:13px;font-weight:700}#scan-form input[type=url]{width:100%;min-width:0;color:var(--ink);border:1px solid var(--gray-line);font-family:var(--font-en);background:#fbfaf9;border-radius:10px;padding:14px 16px;font-size:16px}#scan-form input[type=url]:focus{border-color:var(--red);background:#fff;outline:0;box-shadow:0 0 0 3px #a00e331f}#scan-form .consent{align-items:flex-start;gap:12px;margin:0;font-size:13.5px;font-weight:500;line-height:1.8;display:flex}#scan-form .consent input{width:22px;height:22px;accent-color:var(--red);flex:0 0 22px;margin:1px 0 0}.scan-notice{color:var(--ink-soft);margin-bottom:0;font-size:13.5px;line-height:1.8}.scan a.scan-pp,.mail,.scan-notice a{color:var(--red-deep);text-underline-offset:3px;text-decoration:underline}#scan-progress li{color:var(--gray);border-bottom:1px solid var(--gray-line);padding:12px 0;font-size:15px}#scan-progress li:last-child{border-bottom:0}#scan-error{color:var(--ink);background:#a00e330f;border:1px solid #c81e4273;border-radius:12px;margin-top:22px;padding:20px 24px;font-size:14px;font-weight:700}.scan-card{padding:clamp(24px,3vw,40px)}.scan-card[data-state=found-high]{box-shadow:inset 4px 0 0 var(--red),0 18px 40px #12121214;border-color:#c81e4273}.scan-lbl{color:var(--red);font-family:var(--font-en);letter-spacing:.35em;text-transform:uppercase;font-size:11px;font-weight:600;display:block}.scan-verdict-title{margin:12px 0;font-size:clamp(26px,3.4vw,36px);font-weight:900;line-height:1.35}.scan-verdict-why,.scan-disclaimer{font-size:16px;line-height:1.9}.scan-disclaimer{color:var(--ink);border-top:1px solid var(--gray-line);margin-top:20px;padding-top:16px}.scan-tally{background:var(--gray-line);border:1px solid var(--gray-line);border-radius:10px;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:24px;display:grid;overflow:hidden}.scan-tile{background:var(--white);letter-spacing:.06em;padding:16px 18px;font-size:13px;font-weight:700}.scan-tile b{color:var(--ink);font-family:var(--font-en);letter-spacing:-.02em;margin-bottom:8px;font-size:clamp(28px,3vw,36px);font-weight:800;line-height:1;display:block}.scan-tile:first-child b:not(:empty){color:var(--red)}.scan-top,#scan-vulns{margin:32px 0}.scan-top h2,#scan-vulns h2,.scan-limits h2,#scan-booking h2,.scan-group h2{letter-spacing:.02em;margin-bottom:18px;font-size:clamp(20px,2.4vw,26px);font-weight:900;line-height:1.4}.scan-top-list{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.scan-fix,.scan-vuln{background:var(--white);border:1px solid var(--gray-line);border-radius:12px;min-width:0;padding:clamp(20px,2.4vw,28px)}.scan-vuln{margin-top:16px}.scan-num{color:var(--gray);font-family:var(--font-en);letter-spacing:.2em;font-size:13px;font-weight:700}.scan-sev{color:var(--gray);font-family:var(--font-en);align-items:center;gap:8px;margin:10px 0;font-size:13px;font-weight:700;display:flex}.scan-fix[data-sev=high] .scan-sev{color:var(--red)}.scan-fix[data-sev=mid] .scan-sev{color:var(--ink-soft)}.scan-sev:has(.scan-meter[data-level="3"]){color:var(--red)}.scan-sev:has(.scan-meter[data-level="2"]){color:var(--ink-soft)}.scan-meter{gap:3px;display:inline-flex}.scan-meter i{background:var(--gray-line);border-radius:2px;width:12px;height:12px}.scan-meter[data-level="1"] i:first-child{background:var(--gray)}.scan-meter[data-level="2"] i:nth-child(-n+2){background:var(--ink-soft)}.scan-meter[data-level="3"] i{background:var(--red)}.scan-fix h3,.scan-vuln h3{margin:10px 0;font-size:18px;font-weight:800;line-height:1.5}.scan-fix p,.scan-vuln p,.scan-item p{color:var(--ink-soft);font-size:15px;line-height:1.9}.scan-vuln-caveat{color:var(--ink)!important;font-size:16px!important}.scan-sev-note{color:var(--gray);font-size:13px;display:block}.scan-term{overflow-wrap:anywhere;font-size:14px;display:block}.scan-term span{color:var(--gray)}.scan-who{background:var(--paper);border-radius:10px;padding:12px 14px;font-size:14px}.scan-page details{min-height:44px}.scan-page summary{cursor:pointer;align-items:center;gap:10px;min-height:44px;font-weight:700;list-style:none;display:flex}.scan-page summary::-webkit-details-marker{display:none}.scan-page summary:before{color:currentColor;content:"+";text-align:center;width:18px;height:18px;font-size:22px;font-weight:400;line-height:16px}.scan-page details[open]>summary:before{content:"−"}.scan-page summary:hover{color:var(--red)}.scan-vuln-grid{grid-template-columns:1fr;gap:16px;display:grid}.scan-vuln-empty{color:var(--ink-soft);background:var(--white);border:1px dashed var(--gray-line);overflow-wrap:anywhere;border-radius:12px;padding:20px}.scan-score{background:var(--white);border:1px solid var(--gray-line);border-radius:12px;grid-template-columns:auto 1fr;align-items:center;gap:24px;padding:clamp(24px,3vw,40px);display:grid;box-shadow:0 18px 40px #12121214}.scan-grade{color:var(--ink);font-family:var(--font-en);letter-spacing:-.02em;font-size:clamp(56px,6vw,76px);font-weight:800;line-height:1}.scan-points{color:var(--ink-soft);font-family:var(--font-en);font-size:22px;font-weight:700;display:block}.scan-scoring{margin-top:16px}.scan-scoring p{color:var(--ink-soft);font-size:14px;line-height:1.9}.scan-group{border-top:1px solid var(--gray-line);padding:28px 0}.scan-item{border-bottom:1px solid var(--gray-line);grid-template-columns:150px 1fr;gap:16px;min-width:0;padding:17px 0;display:grid}.scan-item strong,.detail{overflow-wrap:anywhere;display:block}.detail{color:var(--gray);margin-top:8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.scan-okfold{border-bottom:1px solid var(--gray-line)}.scan-limits{background:var(--paper-warm);border-radius:12px;margin-top:32px;padding:24px 28px}.scan-limits ul{padding:0;list-style:none}.scan-limits li{padding-left:18px;font-size:14px;line-height:1.9;position:relative}.scan-limits li:before{background:var(--gray);content:"";width:7px;height:7px;position:absolute;top:.75em;left:2px;transform:rotate(45deg)}.scan-actions{flex-wrap:wrap;gap:14px;margin-top:28px;display:flex}#scan-booking{background:var(--white);border:1px solid var(--gray-line);border-radius:12px;padding:clamp(22px,3vw,36px)}#scan-booking iframe{background:var(--white);border:1px solid var(--gray-line);border-radius:10px;width:100%;margin-top:16px}.scan-cta{margin:32px 0;padding:clamp(24px,3vw,36px)}.scan-cta h2{margin:0 0 8px;font-size:clamp(20px,2.4vw,24px);font-weight:900}.scan-cta p{color:var(--ink-soft);margin:0 0 20px;font-size:15px}.p-footer{padding:48px var(--gutter) 32px;color:var(--paper);background:var(--ink)}.p-footer__name{letter-spacing:.08em;margin:0;font-size:16px;font-weight:800}.p-footer__bottom{color:#fff9;border-top:1px solid #ffffff1f;flex-wrap:wrap;gap:20px;margin:28px 0 0;padding-top:20px;font-size:13px;display:flex}.p-footer__bottom a{color:inherit}@media (width<=640px){.scan-page{font-size:15px}.scan{padding-bottom:48px}.scan-box,.scan-card,.scan-cta,.scan-score,#scan-booking{padding:20px}.scan-tally{grid-template-columns:1fr 1fr}.scan-top-list,.scan-vuln-grid,.scan-item{grid-template-columns:1fr}.scan-grade{font-size:56px}.scan-page .btn{text-align:center;justify-content:center;width:100%;padding:16px 24px}}@media print{.p-header,.p-footer,#scan-start,#scan-progress,#scan-error,.scan-cta,.scan-actions{display:none!important}.scan{max-width:none;padding:0}.scan-box,#scan-result{border:0;margin:0;padding:0}}
