:root{color-scheme:dark;--bg-0:#060911;--bg-1:#0b1120;--text:#e9eff9;--text-dim:#9db0c9;--accent:#5b9dff;--accent-2:#a06bff;--accent-dim:#2a4d7a;--crit:#ff5d78;--high:#ff9a3d;--med:#ffd23f;--low:#57d9a3;--info:#7aa2c9;--ok:#4ade80;--glass:rgba(255,255,255,.045);--glass-2:rgba(255,255,255,.08);--glass-border:rgba(255,255,255,.10);--glass-blur:18px;--shadow:0 18px 50px -20px rgba(0,0,0,.65);--radius:16px;--bg:var(--bg-1);--bg-elev:var(--glass);--bg-elev-2:var(--glass-2);--border:var(--glass-border);--surface-2:rgba(255,255,255,.06)}:root[data-theme=light]{color-scheme:light;--bg-0:#eef2fb;--bg-1:#e6ecf7;--text:#10192b;--text-dim:#55617a;--accent:#2f6bff;--accent-2:#7c3aed;--accent-dim:#a9c4ff;--crit:#e11d48;--high:#ea580c;--med:#ad7811;--low:#0f9d6b;--info:#3b6ea5;--ok:#0f9d58;--glass:rgba(255,255,255,.58);--glass-2:rgba(255,255,255,.8);--glass-border:rgba(20,32,58,.10);--glass-blur:16px;--shadow:0 18px 44px -22px rgba(30,55,110,.35);--surface-2:rgba(20,32,58,.06)}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100%}body{background:var(--bg-0);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased;position:relative}body:before{inset:-25% -10% auto -10%;height:90vh;z-index:-2;background:radial-gradient(38% 48% at 18% 22%,color-mix(in srgb,var(--accent) 42%,transparent),transparent 70%),radial-gradient(42% 52% at 82% 8%,color-mix(in srgb,var(--accent-2) 40%,transparent),transparent 70%),radial-gradient(46% 58% at 62% 82%,color-mix(in srgb,var(--accent) 26%,transparent),transparent 72%);filter:blur(72px) saturate(150%);opacity:.55;animation:blobFloat 20s ease-in-out infinite alternate}body:after,body:before{content:"";position:fixed}body:after{inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,transparent,var(--bg-0) 78%)}@keyframes blobFloat{to{transform:translate3d(0,-4%,0) scale(1.06)}}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.container{max-width:1080px;margin:0 auto;padding:28px 24px 64px}body,html{overflow-x:hidden}h1,h2,h3,h4{overflow-wrap:anywhere}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.panel-head>h2,.panel-head>h3{margin:0}.topbar{position:sticky;top:0;z-index:50;justify-content:space-between;gap:16px;padding:11px 24px;background:color-mix(in srgb,var(--bg-1) 62%,transparent);backdrop-filter:blur(16px) saturate(150%);-webkit-backdrop-filter:blur(16px) saturate(150%);border-bottom:1px solid var(--glass-border)}.topbar,.topbar .left{display:flex;align-items:center}.topbar .left{gap:22px}.topbar .right{display:flex}.brand,.topbar .right{align-items:center;gap:10px}.brand{display:inline-flex;font-size:15px;font-weight:800;color:var(--text);letter-spacing:-.2px}.brand:hover{text-decoration:none}.brand .dim{color:var(--text-dim);font-weight:600}.topnav{display:flex;gap:4px;align-items:center}.topnav a{color:var(--text-dim);font-size:14px;padding:7px 12px;border-radius:9px}.topnav a:hover{color:var(--text);background:var(--glass);text-decoration:none}.account{gap:9px;padding:4px 12px 4px 4px;border-radius:999px;border:1px solid var(--glass-border);background:var(--glass)}.account,.account .avatar{display:inline-flex;align-items:center}.account .avatar{width:28px;height:28px;border-radius:50%;object-fit:cover;flex:0 0 auto;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;justify-content:center;font-weight:700;font-size:12px}.account .email{font-size:13px;color:var(--text-dim);max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.icon-btn{width:34px;height:34px;border-radius:10px;padding:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--glass-border);background:var(--glass);color:var(--text)}.icon-btn:hover{background:var(--glass-2)}.icon-btn svg{width:17px;height:17px}@media (max-width:640px){.account .email,.topnav{display:none}}.card{background:var(--glass);backdrop-filter:blur(var(--glass-blur)) saturate(140%);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(140%);border:1px solid var(--glass-border);border-radius:var(--radius);padding:22px;margin-bottom:18px;box-shadow:var(--shadow)}label{display:block;font-size:13px;color:var(--text-dim);margin-bottom:6px}input[type=email],input[type=password],input[type=text],input[type=url]{width:100%;padding:11px 13px;border-radius:10px;border:1px solid var(--glass-border);background:color-mix(in srgb,var(--bg-0) 55%,transparent);color:var(--text);font-size:14px}input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}button{background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff;border:none;padding:10px 18px;border-radius:11px;font-weight:650;cursor:pointer;font-size:14px;box-shadow:0 8px 20px -8px color-mix(in srgb,var(--accent) 75%,transparent);transition:transform .12s ease,filter .12s ease}button:hover{transform:translateY(-1px);filter:brightness(1.06)}button:active{transform:translateY(0)}button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}button.secondary{background:var(--glass-2);color:var(--text);border:1px solid var(--glass-border);box-shadow:none}.checkbox-row{display:flex;align-items:flex-start;gap:10px;margin:14px 0}.checkbox-row input{margin-top:3px}.checkbox-row span,.muted{font-size:13px;color:var(--text-dim)}.error{color:var(--crit);font-size:13px;margin-top:8px}.hero{padding:24px 4px 8px}.hero h1{font-size:30px;font-weight:850;letter-spacing:-.6px;margin:0 0 8px;background:linear-gradient(120deg,var(--text),color-mix(in srgb,var(--accent) 65%,var(--text)));-webkit-background-clip:text;background-clip:text;color:transparent}.hero p{color:var(--text-dim);max-width:660px;margin:0;font-size:14.5px}.hero-cta{display:inline-flex;margin-top:16px}.hero-cta button{display:inline-flex;align-items:center;gap:7px}.footer .ver{margin-left:10px;padding:2px 7px;border-radius:999px;font-size:11px;background:var(--surface-2);letter-spacing:.3px}.footer,.footer .ver{color:var(--text-dim)}.footer{margin-top:40px;padding:16px 22px;text-align:center;font-size:12.5px;border-top:1px solid var(--glass-border);background:var(--glass);backdrop-filter:blur(var(--glass-blur)) saturate(140%);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(140%)}.tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:18px}@media (max-width:900px){.tool-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.tool-grid{grid-template-columns:1fr}}.tool-card{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;gap:11px;background:var(--glass);backdrop-filter:blur(var(--glass-blur)) saturate(140%);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(140%);border:1px solid var(--glass-border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);transition:transform .18s ease,border-color .18s ease}.tool-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--accent) 48%,var(--glass-border))}.tool-card:before{content:"";position:absolute;top:-45%;right:-35%;width:62%;height:130%;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 30%,transparent),transparent 66%);filter:blur(32px);opacity:.5;pointer-events:none}.tool-card.soon{opacity:.72}.tool-ico{width:46px;height:46px;border-radius:13px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 88%,transparent),color-mix(in srgb,var(--accent-2) 88%,transparent));color:#fff;box-shadow:0 10px 22px -10px var(--accent)}.tool-ico svg{width:24px;height:24px}.tool-card h3{margin:0;font-size:17px;font-weight:780}.tool-card .tdesc{font-size:13.5px;color:var(--text-dim);line-height:1.55;flex:1 1}.tag{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;padding:3px 9px;border-radius:999px;width:fit-content;background:color-mix(in srgb,var(--accent) 15%,transparent);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 32%,transparent)}.tag.soon{background:color-mix(in srgb,var(--med) 16%,transparent);color:var(--med);border-color:color-mix(in srgb,var(--med) 34%,transparent)}.cta{margin-top:4px}.cta button{display:inline-flex;align-items:center;gap:7px}.hist-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.hist{display:flex;flex-direction:column}.hist-row{display:flex;align-items:center;gap:14px;padding:12px 6px;color:inherit;border-bottom:1px solid var(--glass-border);transition:background .12s ease;border-radius:8px}.hist-row:hover{background:var(--glass);text-decoration:none}.hist-row:last-child{border-bottom:none}.hist-row .h-main{flex:1 1;min-width:0}.hist-row .h-target{font-weight:650;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hist-row .h-sub{font-size:12px;color:var(--text-dim);margin-top:2px}.hist-row .h-score{font-weight:850;font-size:18px;min-width:40px;text-align:center}.hist-row .h-when{font-size:12px;color:var(--text-dim);white-space:nowrap}.hist-row .chev{color:var(--text-dim);flex:0 0 auto;opacity:.7}.hist-row:hover .chev{opacity:1}.badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.badge.critical{background:rgba(255,77,109,.16);color:var(--crit)}.badge.high{background:rgba(255,138,61,.16);color:var(--high)}.badge.medium{background:rgba(255,210,63,.16);color:var(--med)}.badge.low{background:rgba(111,211,163,.16);color:var(--low)}.badge.info{background:rgba(122,162,201,.16);color:var(--info)}.finding{border:1px solid var(--glass-border);border-radius:12px;padding:15px;margin-bottom:10px;background:var(--glass)}.finding h4{margin:6px 0 8px;font-size:15px}.finding .meta{display:flex;gap:8px;align-items:center;margin-bottom:4px}.finding .evidence{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;background:color-mix(in srgb,var(--bg-0) 60%,transparent);border:1px solid var(--glass-border);border-radius:8px;padding:8px 10px;margin:8px 0;overflow-x:auto;white-space:pre-wrap}.finding .remediation{font-size:13px;color:var(--text-dim)}.summary-grid{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.stat{flex:1 1;min-width:90px;text-align:center;padding:14px 12px;border:1px solid var(--glass-border);border-radius:12px;background:var(--glass)}.stat .n{font-size:24px;font-weight:800}.stat .l{font-size:11px;text-transform:uppercase;letter-spacing:.5px}.progress,.stat .l{color:var(--text-dim)}.progress{font-family:ui-monospace,Consolas,monospace;font-size:12px}.spinner{display:inline-block;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.scan-live{border-color:var(--accent-dim)}.scan-live-head{display:flex;align-items:center;gap:14px}.scan-live-title{font-weight:700;font-size:15px}.scan-live-msg{margin-top:2px;font-family:ui-monospace,Consolas,monospace}.scan-live-foot{margin-top:10px;font-size:12px}.spinner-ring{flex:0 0 auto;width:30px;height:30px;border-radius:50%;border-left:3px solid var(--bg-elev-2);border-bottom:3px solid var(--bg-elev-2);border-right-color:var(--bg-elev-2);border-top-color:var(--bg-elev-2);border-top:3px solid var(--accent);border-right:3px solid var(--accent);animation:spin .8s linear infinite}.scan-eta{margin-left:auto;text-align:right;min-width:84px}.scan-eta .n{font-size:20px;font-weight:800;color:var(--accent);line-height:1}.scan-eta .l{font-size:11px;color:var(--text-dim);margin-top:3px}.scanbar{margin-top:14px;height:10px;border-radius:999px;background:var(--bg);border:1px solid var(--border);overflow:hidden}.scanbar-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent-dim),var(--accent));transition:width .3s ease}.scanbar-fill.indeterminate{background:linear-gradient(90deg,var(--accent-dim),var(--accent),var(--accent-dim));background-size:200% 100%;animation:scanshimmer 1.1s linear infinite}@keyframes scanshimmer{to{background-position:-200% 0}}.turnstile-box{margin:14px 0 4px;min-height:65px}.notice{border-left:3px solid var(--accent);padding:10px 14px;margin:12px 0;background:color-mix(in srgb,var(--accent) 8%,transparent);border-radius:0 8px 8px 0;font-size:13px}.notice.warn{border-left-color:var(--high);background:color-mix(in srgb,var(--high) 10%,transparent)}.verdict{display:flex;gap:18px;align-items:center;border:1px solid var(--glass-border);border-radius:14px;padding:16px 20px;margin-bottom:14px}.verdict .vscore{text-align:center;min-width:84px}.verdict .vscore .n{font-size:34px;font-weight:800;line-height:1}.verdict .vscore .g{font-size:11px;color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;margin-top:4px}.verdict .vlabel{font-size:18px;font-weight:800}.verdict .vblurb{font-size:13px;color:var(--text-dim);margin-top:3px}.verdict.danger{background:color-mix(in srgb,var(--crit) 10%,transparent);border-color:var(--crit)}.verdict.danger .n,.verdict.danger .vlabel{color:var(--crit)}.verdict.warn{background:color-mix(in srgb,var(--med) 10%,transparent);border-color:var(--med)}.verdict.warn .n,.verdict.warn .vlabel{color:var(--med)}.verdict.caution{background:color-mix(in srgb,var(--low) 10%,transparent);border-color:var(--low)}.verdict.caution .n,.verdict.caution .vlabel{color:var(--low)}.verdict.ok{background:color-mix(in srgb,var(--ok) 10%,transparent);border-color:var(--ok)}.verdict.ok .n,.verdict.ok .vlabel{color:var(--ok)}.report-actions{display:flex;gap:8px;flex-wrap:wrap}.report-actions .cta,.report-actions a{display:inline-flex}.report-actions button{display:inline-flex;align-items:center;gap:6px}.btn-sm{font-size:13px;padding:8px 12px}.cat-row{margin:10px 0}.cat-head{display:flex;justify-content:space-between;align-items:baseline;font-size:14px;margin-bottom:4px;gap:12px}.bar{height:8px;background:var(--surface-2);overflow:hidden}.bar,.bar-fill{border-radius:6px}.bar-fill{height:100%;transition:width .4s ease}.group-row{border:1px solid var(--glass-border);border-radius:12px;padding:10px 14px}.group-row>summary{cursor:pointer;list-style:none}.group-row>summary::-webkit-details-marker{display:none}.group-row>summary:after{content:"▾";float:right;margin-left:8px;color:var(--text-dim);font-size:11px}.group-row[open]>summary:after{content:"▴"}.group-row .items{margin-top:12px;border-top:1px solid var(--glass-border);padding-top:10px}.group-row .intent{font-size:12.5px;font-style:italic;margin:0 0 10px}.item-row{display:flex;gap:10px;padding:9px 0;border-bottom:1px dashed var(--glass-border);font-size:13px}.item-row:last-child{border-bottom:none}.item-row .ico{width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;margin-top:1px}.item-row.pass .ico{background:rgba(74,222,128,.16);color:var(--ok)}.item-row.fail .ico{background:rgba(255,77,109,.16);color:var(--crit)}.item-row.partial .ico{background:rgba(255,210,63,.16);color:var(--med)}.item-row.unknown .ico{background:var(--surface-2);color:var(--text-dim)}.item-row .item-title{font-weight:600}.item-row .item-title .req{color:var(--crit);font-weight:700}.item-row .item-evidence{color:var(--text-dim);margin-top:2px}.item-row .item-fix{margin-top:4px;font-size:12.5px;padding-left:10px;border-left:2px solid var(--accent-dim)}.item-row.pass .item-title{opacity:.85}.facts-row{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 4px}.facts-row .stat{min-width:76px;padding:10px 8px}.facts-row .stat .n{font-size:19px}.evidence-line{font-size:13px;margin-bottom:6px;padding-left:10px;border-left:2px solid var(--glass-border);color:var(--text)}@media (max-width:640px){.container{padding:18px 14px 48px}.topbar{padding:10px 14px;gap:10px}.hero h1{font-size:24px}.panel-head{flex-direction:column;align-items:stretch}.panel-head>h2,.panel-head>h3{margin:0 0 2px}.report-actions{width:100%}.report-actions .cta,.report-actions a{flex:1 1}.report-actions button{width:100%;justify-content:center}.verdict{padding:14px;gap:12px}.verdict .vscore{min-width:58px}.verdict .vlabel{font-size:16px}.summary-grid{gap:8px}.summary-grid .stat{min-width:58px;padding:10px 6px}.stat .n{font-size:21px}.cat-head{font-size:13px}.group-row{padding:10px}.facts-row .stat{min-width:62px}.item-row{font-size:12.5px}.footer{padding:14px;font-size:11.5px}}@media print{.no-print,.progress,.topbar,form{display:none!important}details>:not(summary){display:block!important}.group-row>summary:after{display:none}body:after,body:before{display:none!important}body,html{background:#fff;color:#111}.card,.finding,.stat,.verdict{border-color:#ccc;background:#fff;box-shadow:none;page-break-inside:avoid;break-inside:avoid;-webkit-backdrop-filter:none;backdrop-filter:none}.finding .remediation,.muted,.stat .l{color:#444}.evidence{background:#f5f5f5;border-color:#ccc}a{color:#111;text-decoration:none}.container{max-width:100%;padding:0}}