:root{--bg:#08111e;--panel:#101d30;--panel2:#0d192a;--line:#263a56;--text:#eef5ff;--muted:#9fb0c7;--accent:#52d3a5;--critical:#ff6b7a;--high:#ff9b63;--medium:#ffd166;--low:#68b9ff}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 75% 0,#193657 0,transparent 34%),var(--bg);color:var(--text);font:15px/1.55 Inter,system-ui,sans-serif}header{height:68px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:14px;padding:0 max(24px,calc((100% - 1080px)/2));white-space:nowrap}.brand{font-size:19px;font-weight:850;color:var(--text);text-decoration:none}.brand:after{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--accent);margin-left:5px}.version{margin-left:auto;color:var(--muted);font-size:12px}.beta{font-size:10px;font-weight:850;letter-spacing:.08em;color:#062117;background:var(--accent);border-radius:999px;padding:4px 8px}main{max-width:1080px;margin:auto;padding:65px 24px 100px}.hero{max-width:780px;margin-bottom:34px}.eyebrow{color:var(--accent);font-size:11px;font-weight:850;letter-spacing:.18em}.hero h1{font-size:clamp(38px,6vw,62px);line-height:1.02;letter-spacing:-.045em;margin:12px 0 20px}.hero p{color:var(--muted);font-size:18px}.panel{background:linear-gradient(145deg,var(--panel),var(--panel2));border:1px solid var(--line);border-radius:18px;padding:24px}.input-row{display:flex;gap:12px}.input-row input,textarea{width:100%;background:#07101c;color:var(--text);border:1px solid #304965;border-radius:10px;padding:14px 16px;font:inherit;outline:none}.input-row input:focus,textarea:focus{border-color:var(--accent)}button{border:1px solid var(--line);background:#16263a;color:var(--text);border-radius:10px;padding:12px 17px;font-weight:750;cursor:pointer}.primary{background:var(--accent);color:#052218;border-color:var(--accent);min-width:130px}.primary:disabled{opacity:.6}.hint{color:var(--muted);font-size:12px;margin:12px 0 0}.hidden{display:none!important}.results{margin-top:28px}.score-card{display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:22px}.score{width:92px;height:92px;border:7px solid var(--accent);border-radius:50%;display:grid;place-items:center;font-size:32px;font-weight:900}.score-card h2{margin:0}.score-card p{margin:5px 0;color:var(--muted)}.categories{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:15px 0}.categories div{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:15px}.categories span{display:block;color:var(--muted);font-size:12px}.categories strong{font-size:24px}.findings{display:grid;gap:12px}.finding{background:var(--panel);border:1px solid var(--line);border-left:4px solid;border-radius:12px;padding:17px}.finding.critical{border-left-color:var(--critical)}.finding.high{border-left-color:var(--high)}.finding.medium{border-left-color:var(--medium)}.finding.low{border-left-color:var(--low)}.finding.clean{border-left-color:var(--accent)}.finding-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.badge{font-size:10px;text-transform:uppercase;font-weight:850;border:1px solid var(--line);border-radius:999px;padding:3px 7px}.category{color:var(--muted);font-size:11px;text-transform:uppercase}.finding p{color:var(--muted);margin:8px 0}.fix{background:#081321;border-radius:8px;padding:10px 12px}.finding code{display:inline-block;color:#7292b4;margin-top:8px;font-size:11px}.details{margin-top:18px}.details summary{cursor:pointer;font-weight:750}.details pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#07101c;border-radius:10px;padding:14px;color:#abc0d9}textarea{min-height:360px;resize:vertical;font:13px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}.toolbar{display:flex;gap:12px;align-items:center;margin-bottom:12px}.toolbar span{color:var(--muted);font-size:13px}.toolbar input{display:none}.upload{display:inline-block;border:1px solid var(--line);border-radius:9px;padding:9px 13px;cursor:pointer;font-weight:700}footer{border-top:1px solid var(--line);padding:28px 24px;text-align:center;color:var(--muted);font-size:12px}footer a{color:inherit;margin:0 7px}@media(max-width:700px){header{padding:12px 18px;height:auto;flex-wrap:wrap}.input-row{flex-direction:column}.categories{grid-template-columns:repeat(2,1fr)}main{padding-top:45px}.score-card{grid-template-columns:1fr}.score{width:78px;height:78px}}
