:root{--bg: #0e0e1a;--card: #1a1a2e;--fg: #e8e8f0;--muted: #8888a0;--good: #3ddc84;--warn: #ffb020;--bad: #ff5c5c}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font-family:system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased}.wrap{max-width:720px;margin:0 auto;padding:32px 20px 64px}h1{font-size:26px;margin:0 0 4px}.sub{color:var(--muted);margin:0 0 28px;font-size:14px}.card{background:var(--card);border-radius:14px;padding:18px 20px;margin-bottom:14px}.card h2{font-size:13px;margin:0 0 12px;color:var(--muted);font-weight:600;letter-spacing:.05em;text-transform:uppercase}.row{display:flex;justify-content:space-between;gap:16px;padding:6px 0;font-size:15px}.row .k{color:var(--muted);flex-shrink:0}.row .v{font-weight:600;text-align:right;word-break:break-all}.mono{font-family:ui-monospace,SF Mono,Menlo,monospace}.tag{display:inline-block;padding:2px 8px;border-radius:6px;font-size:12px;font-weight:600;margin-left:6px}.tag.good{background:#3ddc8426;color:var(--good)}.tag.warn{background:#ffb02026;color:var(--warn)}.tag.bad{background:#ff5c5c26;color:var(--bad)}.loading{color:var(--muted);font-size:14px}.foot{color:var(--muted);font-size:12px;margin-top:28px;text-align:center;line-height:1.7}.foot a{color:var(--muted)}.scorecard{text-align:center;padding:28px 20px;border-radius:16px;margin-bottom:16px;background:var(--card)}.scorecard.good{box-shadow:inset 0 0 0 2px #3ddc8466}.scorecard.warn{box-shadow:inset 0 0 0 2px #ffb02066}.scorecard.bad{box-shadow:inset 0 0 0 2px #ff5c5c66}.score-num{font-size:64px;font-weight:800;line-height:1}.scorecard.good .score-num{color:var(--good)}.scorecard.warn .score-num{color:var(--warn)}.scorecard.bad .score-num{color:var(--bad)}.score-max{color:var(--muted);font-size:14px;margin-top:4px}.score-note{margin-top:10px;font-size:14px}.finding-detail{color:var(--muted);font-size:12px;padding:0 0 8px}.dim-group{margin-bottom:10px}.dim-title{font-size:12px;color:var(--muted);letter-spacing:.08em;border-bottom:1px solid rgba(128,128,128,.15);padding-bottom:4px;margin-bottom:6px}.pending{display:block;margin-top:6px;font-size:12px;opacity:.75}details summary{cursor:pointer;list-style:none}details summary h2{display:inline}details summary:before{content:"▸ ";color:var(--muted)}details[open] summary:before{content:"▾ "}
