:root{--bg: #0f1115;--surface: #171a21;--surface-2: #1e222b;--border: #2a2f3a;--text: #e7e9ee;--muted: #9aa1b1;--accent: #5b8def;--found: #34d399;--likely: #fbbf24;--missing: #f87171;--radius: 10px;--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace}@media (prefers-color-scheme: light){:root{--bg: #f6f7f9;--surface: #ffffff;--surface-2: #f0f2f5;--border: #dfe3e9;--text: #1a1d23;--muted: #666e7d;--found: #0f9d63;--likely: #b7791f;--missing: #d64545}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.55 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}.wrap{max-width:1080px;margin:0 auto;padding:32px 20px 72px}header h1{font-size:25px;margin:0 0 6px;letter-spacing:-.02em}header p{color:var(--muted);margin:0 0 26px;font-size:14px}.scan-form{display:flex;gap:10px;flex-wrap:wrap}.scan-form input[type=text]{flex:1 1 340px;padding:12px 14px;font-size:15px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text)}.scan-form input[type=text]:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:transparent}button{padding:12px 22px;font-size:15px;font-weight:600;border:0;border-radius:var(--radius);background:var(--accent);color:#fff;cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}button.ghost{background:var(--surface);color:var(--text);border:1px solid var(--border);font-weight:500;padding:8px 14px;font-size:13px}.options{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-top:12px;color:var(--muted);font-size:13px}.options label{display:flex;gap:6px;align-items:center;cursor:pointer}.options input[type=number]{width:74px;padding:5px 8px;background:var(--surface);border:1px solid var(--border);border-radius:6px;color:var(--text)}.error{margin-top:16px;padding:12px 14px;border-radius:var(--radius);background:color-mix(in srgb,var(--missing) 14%,transparent);border:1px solid color-mix(in srgb,var(--missing) 40%,transparent);font-size:14px}.progress{margin-top:26px;padding:18px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.progress-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:14px}.progress-head strong{font-variant-numeric:tabular-nums}.bar{height:5px;background:var(--surface-2);border-radius:3px;overflow:hidden;margin:12px 0 10px}.bar>div{height:100%;background:var(--accent);transition:width .3s ease}.current-url{font-family:var(--mono);font-size:11.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report{margin-top:30px}.grade-row{display:flex;gap:16px;flex-wrap:wrap;align-items:stretch}.grade{flex:0 0 auto;display:flex;flex-direction:column;justify-content:center;align-items:center;min-width:128px;padding:20px 26px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.grade .letter{font-size:46px;font-weight:700;line-height:1;letter-spacing:-.03em}.grade .label{color:var(--muted);font-size:12.5px;margin-top:6px;text-align:center}.buckets{flex:1 1 420px;display:grid;grid-template-columns:repeat(auto-fit,minmax(196px,1fr));gap:12px}.bucket{padding:14px 16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.bucket h3{margin:0 0 3px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.bucket .score{font-size:26px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.bucket .counts{font-size:12.5px;color:var(--muted);margin-top:3px}.meta{margin-top:14px;color:var(--muted);font-size:12.5px}.warnings{margin-top:18px;display:grid;gap:8px}.warn{padding:11px 14px;font-size:13px;border-radius:var(--radius);background:color-mix(in srgb,var(--likely) 12%,transparent);border:1px solid color-mix(in srgb,var(--likely) 34%,transparent)}.warn a{color:inherit}.toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:26px 0 12px}.toolbar .spacer{flex:1}.chip{padding:6px 13px;font-size:13px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--muted);cursor:pointer}.chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#fff}.section{margin-top:22px}.section>h2{font-size:13px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin:0 0 9px;display:flex;justify-content:space-between;align-items:baseline;gap:12px}.section>h2 span{font-weight:400;text-transform:none;letter-spacing:0;font-size:12.5px}.items{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--surface)}.item{border-top:1px solid var(--border)}.item:first-child{border-top:0}.item-head{display:flex;align-items:flex-start;gap:11px;padding:11px 14px;cursor:pointer;width:100%;background:none;border:0;color:inherit;text-align:left;font:inherit}.item-head:hover{background:var(--surface-2)}.dot{width:8px;height:8px;border-radius:50%;flex:0 0 auto;margin-top:7px}.dot.found{background:var(--found)}.dot.likely{background:var(--likely)}.dot.missing{background:var(--missing)}.item-name{flex:1;font-size:14px}.item-name .req{font-size:10px;font-weight:700;letter-spacing:.05em;padding:1px 6px;border-radius:4px;margin-left:8px;vertical-align:1px;background:color-mix(in srgb,var(--accent) 20%,transparent);color:var(--accent);white-space:nowrap}.item-name .cond{background:color-mix(in srgb,var(--muted) 20%,transparent);color:var(--muted)}.item-sub{font-size:12px;color:var(--muted);margin-top:2px}.status-tag{font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;flex:0 0 auto;margin-top:2px}.status-tag.found{color:var(--found)}.status-tag.likely{color:var(--likely)}.status-tag.missing{color:var(--missing)}.evidence{padding:4px 14px 14px 33px;background:var(--surface-2);font-size:12.5px}.evidence .deadline{color:var(--muted);margin:6px 0 10px}.evidence ul{list-style:none;margin:0;padding:0;display:grid;gap:7px}.evidence li{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.evidence .kind{font-size:10px;text-transform:uppercase;letter-spacing:.05em;padding:2px 6px;border-radius:4px;background:var(--surface);border:1px solid var(--border);color:var(--muted);flex:0 0 auto}.evidence a{color:var(--accent);word-break:break-all}.evidence .where{color:var(--muted);font-size:11.5px}.evidence .none{color:var(--muted)}footer{margin-top:46px;padding-top:18px;border-top:1px solid var(--border);color:var(--muted);font-size:12px}@media (max-width: 620px){.grade-row{flex-direction:column}.status-tag{display:none}}
