:root{--bg:#0a0c10;--surface:#111318;--surface2:#181c24;--border:#ffffff12;--border2:#ffffff21;--text:#e8eaf0;--muted:#7a8196;--accent:#4f8ef7;--accent-hover:#6fa0ff;--bad:#f05a5a;--warn:#f0b429;--ok:#2dd4a0;--info:#60b8e8;--purple:#a78bfa;--orange:#f97316;--pink:#ec4899;--teal:#2fcfbc;--disabled-bg:#2a3550;--disabled-text:#7f879d;--font:"SF Mono", "Fira Code", "Consolas", monospace;--sans:-apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--radius:8px;--radius-sm:6px;--header-bg:#0a0c10eb;--scrollbar-track:#ffffff08;--scrollbar-thumb:#7a81967a;--scrollbar-thumb-hover:#60b8e8c7;--shadow-soft:#0000002e;--shadow-strong:#0000003d}:root[data-theme=light]{--bg:#f5f7fb;--surface:#fff;--surface2:#edf2f8;--border:#151f301a;--border2:#151f302e;--text:#172033;--muted:#637088;--accent:#2563eb;--accent-hover:#1d4ed8;--bad:#dc2626;--warn:#b7791f;--ok:#0f9f77;--info:#0284c7;--purple:#7c3aed;--orange:#c2410c;--pink:#be185d;--teal:#0f766e;--disabled-bg:#dce4f0;--disabled-text:#8a96aa;--header-bg:#f5f7fbe6;--scrollbar-track:#151f300f;--scrollbar-thumb:#6370886b;--scrollbar-thumb-hover:#2563ebb8;--shadow-soft:#151f301a;--shadow-strong:#151f3029}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track);scrollbar-gutter:stable;scrollbar-width:thin}html[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track);scrollbar-width:thin}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{border:2px solid var(--scrollbar-track);background:linear-gradient(180deg, var(--scrollbar-thumb), var(--border2));border-radius:999px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg, var(--scrollbar-thumb-hover), var(--scrollbar-thumb))}::-webkit-scrollbar-corner{background:var(--scrollbar-track)}
*{box-sizing:border-box;text-rendering:optimizelegibility;-webkit-user-select:none;user-select:none;margin:0;padding:0}body{background:var(--bg);min-height:100vh;color:var(--text);font-family:var(--sans);font-size:14px}button,summary{font:inherit;outline:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}
header{z-index:100;border-bottom:1px solid var(--border);background:var(--header-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);justify-content:space-around;align-items:center;gap:20px;padding:10px 32px;display:flex;position:sticky;top:0}main{max-width:1100px;min-height:calc(100vh - 125px);margin:0 auto;padding:28px 24px}.logo{align-items:center;gap:12px;min-width:0;display:flex}.logo-icon{border-radius:8px;flex:none;justify-content:center;align-items:center;width:36px;height:36px;display:flex;overflow:hidden}.logo-icon img{width:100%;height:100%;display:block}.logo h1{font-size:17px;font-weight:600}.logo span{color:var(--muted);font-family:var(--font);margin-top:2px;font-size:11px;line-height:1.4;display:block}.header-actions{flex:none;align-items:center;gap:10px;display:flex}.btn{border-radius:var(--radius-sm);cursor:pointer;border:0;justify-content:center;align-items:center;gap:8px;min-height:34px;padding:8px 14px;font-size:13px;font-weight:500;transition:background .15s,color .15s,border-color .15s,transform .15s;display:inline-flex}.btn svg{flex:none;width:1.05em;height:1.05em}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{background:var(--disabled-bg);color:var(--disabled-text);cursor:not-allowed}.btn-ghost{border:1px solid var(--border2);background:var(--surface2);color:var(--muted)}.btn-ghost:hover{color:var(--text)}.btn-ghost:disabled{color:var(--disabled-text);cursor:not-allowed;opacity:.74}.btn-icon{width:38px;min-width:38px;padding:8px}.theme-toggle{color:var(--text)}.export-dropdown{display:inline-flex;position:relative}.export-dropdown.is-open .export-trigger,.export-trigger:hover{color:var(--text);border-color:#60b8e86b}.export-menu{z-index:150;border:1px solid var(--border2);border-radius:var(--radius-sm);background:var(--surface2);width:218px;box-shadow:0 18px 42px var(--shadow-strong);display:grid;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden}.export-menu button{border:0;border-bottom:1px solid var(--border);min-width:0;color:var(--text);cursor:pointer;text-align:left;background:0 0;gap:2px;padding:10px 12px;display:grid}.export-menu button:last-child{border-bottom:0}.export-menu button:hover,.export-menu button:focus-visible{background:#60b8e814}.export-menu strong{font-family:var(--font);font-size:11px;font-weight:700}.export-menu span{color:var(--muted);font-family:var(--font);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.translate-dropdown{flex:none}.translate-menu{width:210px}.translate-menu button.active{background:#4f8ef71f}.translate-menu button.active strong{color:var(--accent)}.app-footer{color:var(--muted);font-family:var(--font);text-align:center;padding:0 24px 24px;font-size:11px}
.error-banner{border-radius:var(--radius);color:var(--bad);font-family:var(--font);background:#f05a5a14;border:1px solid #f05a5a59;margin-bottom:18px;padding:12px 14px;font-size:12px}.progress-area{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin-bottom:24px;padding:18px 20px}.progress-label{color:var(--muted);font-family:var(--font);margin-bottom:10px;font-size:12px}.progress-track{background:var(--surface2);border-radius:4px;height:4px;margin-bottom:10px;overflow:hidden}.progress-bar{background:linear-gradient(90deg, var(--accent), var(--purple));border-radius:4px;height:100%;transition:width .3s}.progress-step{color:var(--muted);font-family:var(--font);font-size:11px}.scan-log-frame{margin-top:10px;position:relative}.scan-log-frame:after{background:linear-gradient(180deg, #11131800, var(--surface));content:"";pointer-events:none;height:28px;position:absolute;bottom:0;left:0;right:0}:root[data-theme=light] .scan-log-frame:after{background:linear-gradient(180deg, #fff0, var(--surface))}.scan-log{max-height:138px;color:var(--muted);font-family:var(--font);flex-direction:column;gap:4px;padding-bottom:18px;font-size:11px;display:flex;overflow-y:auto}.log-line{gap:10px;display:flex}.log-time{width:60px;color:var(--accent);flex:none}.log-ok{color:var(--ok)}.log-warn{color:var(--warn)}.log-bad{color:var(--bad)}.panel-title{color:var(--muted);font-family:var(--font);letter-spacing:1.2px;text-transform:uppercase;font-size:10px}.scan-timeline{border-top:1px solid var(--border);margin-top:14px;padding-top:14px}.scan-timeline-track{scrollbar-color:transparent transparent;gap:0;padding-bottom:4px;display:flex;overflow-x:auto}.scan-timeline-track::-webkit-scrollbar{height:8px}.scan-timeline-track::-webkit-scrollbar-track{background:0 0;border-color:#0000}.scan-timeline-track::-webkit-scrollbar-thumb{background:0 0;border-color:#0000}.scan-timeline-track::-webkit-scrollbar-thumb:hover{background:0 0;border-color:#0000}.scan-timeline-item{min-width:74px;max-width:88px;color:var(--muted);font-family:var(--font);text-align:center;justify-items:center;gap:4px;font-size:9px;display:grid}.scan-timeline-dot{border-radius:50%;width:10px;height:10px;position:relative}.scan-timeline-dot:after{background:var(--border2);content:"";width:64px;height:1px;position:absolute;top:50%;left:100%}.scan-timeline-item:last-child .scan-timeline-dot:after{display:none}.timeline-ok{background:var(--ok)}.timeline-warn{background:var(--warn)}.timeline-bad{background:var(--bad)}.timeline-info{background:var(--info)}.scan-timeline-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:82px;min-height:24px;line-height:1.25;display:-webkit-box;overflow:hidden}.scan-timeline-time,.scan-timeline-status{color:var(--muted)}.summary{gap:12px;margin-bottom:28px;display:grid}.summary-top-grid{grid-template-columns:minmax(0,1fr) minmax(260px,320px);align-items:stretch;gap:12px;display:grid}.summary-main-grid{grid-template-columns:minmax(0,1fr) minmax(320px,.68fr);align-items:start;gap:12px;display:grid}.summary-left-stack,.summary-right-stack{gap:12px;min-width:0;display:grid}.summary-insight-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;display:grid}.summary-insight-stack{gap:12px;min-width:0;display:grid}.summary-overview-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:12px;display:grid}.risk-panel{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-width:0;padding:16px;display:flex}.risk-dial{width:144px;height:144px;position:relative}.risk-dial canvas{width:144px;height:144px;position:absolute;inset:0}.risk-dial-center{pointer-events:none;align-content:center;justify-items:center;display:grid;position:absolute;inset:0}.risk-dial-score{font-family:var(--font);font-size:32px;font-weight:800;line-height:1}.risk-dial-label{color:var(--muted);font-family:var(--font);letter-spacing:1.2px;text-transform:uppercase;margin-top:4px;font-size:9px}.risk-text h2{margin-bottom:5px;font-size:18px;font-weight:600}.risk-text p{color:var(--muted);font-size:12px;line-height:1.5}.risk-verdict{margin-top:8px;color:var(--text)!important}.radar-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);grid-template-rows:auto 1fr;min-width:0;padding:14px 16px;display:grid}.radar-canvas-wrap{justify-content:center;align-items:center;min-height:230px;display:flex;overflow:hidden}.radar-canvas-wrap canvas{width:min(100%,400px);height:auto}.professional-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.pro-card,.fingerprint-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-width:0;padding:14px 16px}.fingerprint-card{flex-direction:column;justify-content:center;gap:7px;display:flex}.pro-val{color:var(--ok);font-family:var(--font);font-weight:700;line-height:1.1}.pro-status-value{align-items:center;gap:8px;display:inline-flex}.pro-card-environment{gap:8px;display:grid}.environment-card-grid{grid-template-columns:repeat(1,minmax(0,1fr));gap:8px 18px;display:grid}.browser-env-card .environment-card-grid{grid-template-columns:1fr}.environment-card-field{min-width:0;color:var(--muted);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;font-size:10px;display:grid}.environment-card-field strong{min-width:0;color:var(--text);font-family:var(--font);text-align:right;overflow-wrap:anywhere;align-items:center;gap:6px;font-weight:600;display:inline-flex}.environment-card-field>span{color:var(--muted)}.environment-card-field.tone-bad strong,.environment-card-field.tone-ok strong,.environment-card-field.tone-warn strong{color:currentColor}.pro-status-dot{background:currentColor;border-radius:50%;flex:none;width:8px;height:8px;box-shadow:0 0 6px}.pro-hash{color:var(--info);font-family:var(--font);text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600;overflow:hidden}.fingerprint-hash-row{align-items:center;gap:8px;min-width:0;display:flex}.fingerprint-hash-row .pro-hash{flex:1;min-width:0}.icon-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;outline:none;flex:none;justify-content:center;align-items:center;transition:border-color .15s,color .15s,transform .15s;display:inline-flex}.icon-btn:hover:not(:disabled){color:var(--text);border-color:#60b8e86b;transform:translateY(-1px)}.icon-btn:active:not(:disabled){transform:translateY(0)}.icon-btn:disabled{cursor:not-allowed;opacity:.5}.copy-hash-btn svg{width:16px;height:16px}.score-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;display:grid}.score-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);grid-column:span 2;grid-template-columns:max-content minmax(0,1fr);align-items:start;gap:12px;min-width:0;padding:10px 16px;display:grid}.score-card-wide{grid-column:span 3}.score-card-copy{gap:5px;min-width:0;display:grid}.proxy-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);gap:12px;min-width:0;padding:14px 16px;display:grid}.proxy-card-bad{border-color:#f05a5a61}.proxy-card-warn{border-color:#f0b4295c}.proxy-card-ok{border-color:#2dd4a03d}.proxy-card-head{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.proxy-status{min-width:0;font-family:var(--font);text-align:right;align-items:center;gap:8px;font-size:13px;font-weight:700;line-height:1.2;display:inline-flex}.proxy-card-grid{grid-template-columns:minmax(0,1fr);gap:8px;display:grid}.proxy-card-grid div{grid-template-columns:minmax(82px,.42fr) minmax(0,1fr);align-items:center;gap:10px;min-width:0;display:grid}.proxy-card-grid span{color:var(--muted);font-size:10px}.proxy-card-grid strong{min-width:0;color:var(--text);font-family:var(--font);text-align:right;overflow-wrap:anywhere;justify-content:flex-end;align-items:center;gap:6px;font-size:11px;font-weight:600;display:inline-flex}.proxy-card-grid .tone-bad strong,.proxy-card-grid .tone-ok strong,.proxy-card-grid .tone-warn strong{color:currentColor}.sc-label{color:var(--muted);letter-spacing:1px;text-transform:uppercase;margin-bottom:6px;font-size:10px;font-weight:600}.sc-val{font-family:var(--font);white-space:nowrap;font-size:26px;font-weight:700;line-height:1}.rolling-value,.rolling-value-visual{display:inline}.rolling-value{font-variant-numeric:tabular-nums}.rolling-digit{vertical-align:-.11em;width:.64em;height:1em;line-height:1em;display:inline-block;overflow:hidden}.rolling-digit-track{transform:translate3d(0, calc(var(--rolling-digit,0) * -1em), 0);will-change:transform;flex-direction:column;transition:transform .78s cubic-bezier(.22,1,.36,1);display:flex}.rolling-digit-track span{height:1em;line-height:1em;display:block}.rolling-character{display:inline}.sc-sub{color:var(--muted);font-size:11px;line-height:1.35}.card-heading{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.card-heading-title{min-width:0;color:var(--muted);font-family:var(--font);letter-spacing:1.2px;text-transform:uppercase;align-items:center;gap:7px;font-size:10px;line-height:1;display:inline-flex}.card-heading-title span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.card-heading-title .section-title-icon{background:0 0;border:0;border-radius:0;width:14px;height:14px}.card-heading-title .section-title-icon svg{width:14px;height:14px}.score-card-purple .section-title-icon{color:var(--purple)}.score-card-bad .section-title-icon{color:var(--bad)}.score-card-orange .section-title-icon{color:var(--orange)}.score-card-accent .section-title-icon,.visitor-id-card .section-title-icon,.fingerprint-card .section-title-icon{color:var(--accent)}.score-card-ok .section-title-icon,.proxy-card .section-title-icon{color:var(--ok)}.score-card-warn .section-title-icon{color:var(--warn)}.score-card-pink .section-title-icon{color:var(--pink)}.score-card-info .section-title-icon{color:var(--info)}.score-card-teal .section-title-icon{color:var(--teal)}.browser-env-card .section-title-icon{color:var(--warn)}.pro-card-ok .section-title-icon{color:var(--ok)}.pro-card-warn .section-title-icon{color:var(--warn)}.pro-card-bad .section-title-icon{color:var(--bad)}.card-heading-meta{color:var(--ok);font-family:var(--font);white-space:nowrap;flex:none;font-size:10px}.visitor-id-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);flex-direction:column;justify-content:center;gap:7px;min-width:0;padding:14px 16px;display:flex}.visitor-id-row{align-items:center;gap:8px;min-width:0;display:flex}.visitor-id-value{min-width:0;color:var(--teal);font-family:var(--font);letter-spacing:.4px;text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:15px;font-weight:700;overflow:hidden}.visitor-id-copy{color:var(--muted);cursor:pointer;font-family:var(--font);background:0 0;border:none;outline:none;flex:none;justify-content:center;align-items:center;font-size:10px;display:inline-flex}.visitor-id-copy:hover:not(:disabled){color:var(--text);border-color:#60b8e86b}.visitor-id-copy:disabled{cursor:not-allowed;opacity:.5}.visitor-id-copy svg{width:16px;height:16px}.identity-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.top-signal-strip{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px;display:grid}.top-signal{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-width:0;color:var(--muted);grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:10px 12px;font-size:11px;display:grid}.top-signal span:nth-child(2){color:var(--text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.top-signal strong{color:var(--warn);font-family:var(--font)}.signal-level{font-family:var(--font);border-radius:4px;padding:2px 6px;font-size:10px}.signal-bad{color:var(--bad);background:#f05a5a26}.signal-warn{color:var(--warn);background:#f0b42921}.ip-panel{min-width:0;margin-bottom:0}.ip-panel-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-end;width:100%;margin-bottom:10px;padding-bottom:8px;display:flex}.ip-panel-heading .ip-panel-heading__left{flex-direction:column;display:flex}.ip-panel-heading h2{font-size:15px;font-weight:600}.ip-panel-heading p{color:var(--muted);font-family:var(--font);margin-top:3px;font-size:11px}.ip-provider-dropdown{gap:4px;min-width:10rem;display:grid;position:relative}.ip-provider-label{color:var(--muted);letter-spacing:1px;text-transform:uppercase;font-size:10px}.ip-provider-trigger{border:1px solid var(--border2);border-radius:var(--radius-sm);background:var(--surface2);width:100%;min-height:38px;color:var(--text);cursor:pointer;text-align:left;justify-content:space-between;align-items:center;gap:10px;padding:7px 9px;display:flex}.ip-provider-trigger:hover:not(:disabled),.ip-provider-dropdown.is-open .ip-provider-trigger{border-color:#60b8e86b}.ip-provider-trigger:disabled{color:var(--muted);cursor:progress}.ip-provider-trigger span{gap:2px;min-width:0;display:grid}.ip-provider-trigger strong,.ip-provider-menu strong{font-family:var(--font);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:600;overflow:hidden}.ip-provider-trigger em,.ip-provider-menu span{color:var(--muted);font-family:var(--font);text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-style:normal;overflow:hidden}.ip-provider-trigger b{color:var(--muted);font-family:var(--font);font-size:10px;font-weight:700}.ip-provider-menu{z-index:30;border:1px solid var(--border2);border-radius:var(--radius-sm);background:var(--surface2);width:100%;min-width:210px;display:grid;position:absolute;top:calc(100% + 6px);right:0;overflow:hidden;box-shadow:0 18px 42px #00000059}.ip-provider-menu button{border:0;border-bottom:1px solid var(--border);color:var(--text);cursor:pointer;text-align:left;background:0 0;gap:2px;padding:9px 10px;display:grid}.ip-provider-menu button:last-child{border-bottom:0}.ip-provider-menu button:hover,.ip-provider-menu button.active{background:#60b8e814}.ip-provider-error{border-radius:var(--radius-sm);color:var(--bad);font-family:var(--font);background:#f05a5a12;border:1px solid #f05a5a3d;margin-bottom:12px;padding:8px 10px;font-size:10px;line-height:1.5}.ip-provider-note{border-radius:var(--radius-sm);color:var(--warn);font-family:var(--font);background:#f0b42912;border:1px solid #f0b4293d;gap:3px;margin-bottom:12px;padding:8px 10px;font-size:10px;line-height:1.5;display:grid}.ip-provider-note span{color:var(--muted)}.ip-detail-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px 18px;display:grid}.ip-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);min-width:0;height:100%;padding:14px 16px}.ip-card-main{border-color:#60b8e833}.ip-card-label{color:var(--muted);font-family:var(--font);letter-spacing:1px;text-transform:uppercase;margin-bottom:8px;font-size:10px;display:block}.public-ip-line{align-items:center;gap:10px;min-width:0;display:flex}.ip-flag{border:1px solid var(--border2);object-fit:cover;background:var(--surface2);border-radius:4px;flex:none;width:34px;height:24px}.public-ip-value{min-width:0;color:var(--info);font-family:var(--font);overflow-wrap:anywhere;-webkit-user-select:text;user-select:text;font-size:18px;line-height:1.25;display:block}.ip-card-fields{gap:7px;display:grid}.ip-field-group h3{color:var(--muted);font-family:var(--font);letter-spacing:1px;text-transform:uppercase;font-size:10px}.ip-field{grid-template-columns:minmax(86px,.42fr) minmax(0,1fr);align-items:baseline;gap:10px;min-width:0;display:grid}.ip-field span{color:var(--muted);font-size:11px}.ip-field strong{min-width:0;color:var(--text);font-family:var(--font);text-align:right;overflow-wrap:anywhere;font-size:11px;font-weight:500}.ip-field-link{color:inherit;text-decoration:none}.ip-field-link:hover,.ip-field-link:focus-visible{color:var(--info);text-decoration:underline}.ip-field-empty strong{color:var(--muted);font-weight:400}.ip-chip-row{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.ip-chip-row.compact{justify-content:flex-start;margin-top:8px}.ip-chip{border:1px solid var(--border2);max-width:100%;min-height:20px;color:var(--muted);font-family:var(--font);overflow-wrap:anywhere;border-radius:4px;align-items:center;padding:2px 7px;font-size:10px;display:inline-flex}.ip-version-list{gap:4px;display:flex}.ip-version-row{color:var(--muted);font-family:var(--font);font-size:10px}.ip-version-row strong{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:500;overflow:hidden}.ip-version-row em{font-style:normal}.chip-ok,.scope-private,.scope-public{color:var(--ok);background:#2dd4a012;border-color:#2dd4a040}.chip-warn,.scope-carrier-nat,.scope-reserved{color:var(--warn);background:#f0b42914;border-color:#f0b42947}.scope-loopback,.scope-link-local,.scope-unknown{color:var(--info);background:#60b8e812;border-color:#60b8e840}.local-ip-list{gap:6px;display:grid}.local-ip-row{border-top:1px solid var(--border);min-width:0;color:var(--muted);font-family:var(--font);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:6px 0;font-size:10px;display:grid}.local-ip-address{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ip-muted{color:var(--muted);font-size:12px}.filter-bar{flex-wrap:nowrap;align-items:center;gap:10px;min-width:0;margin-bottom:16px;display:flex}.filter-scroll-shell{flex:auto;align-items:center;min-width:0;display:flex;overflow:hidden}.filter-group{scrollbar-width:none;flex-wrap:nowrap;flex:auto;align-items:center;gap:8px;min-width:0;padding-bottom:2px;display:flex;overflow-x:auto}.filter-group::-webkit-scrollbar{display:none}.filter-btn{border:1px solid var(--border2);min-height:28px;color:var(--muted);cursor:pointer;background:0 0;border-radius:20px;flex:none;align-items:center;gap:6px;padding:5px 10px;font-size:12px;transition:background .12s,color .12s,border-color .12s;display:inline-flex}.filter-btn .section-title-icon{background:0 0;border:0;width:18px;height:18px}.filter-btn .section-title-icon svg{width:13px;height:13px}.filter-btn span:not(.section-title-icon){color:inherit;font-size:12px}.filter-btn:hover{color:var(--text)}.filter-btn.active{border-color:var(--accent);background:var(--surface2);color:var(--text)}.filter-btn.risk-only{color:var(--bad);border-color:#f05a5a66}.filter-scroll-next{border:1px solid var(--border2);background:var(--surface);width:30px;min-width:30px;height:30px;color:var(--muted);cursor:pointer;font-family:var(--font);border-radius:50%;outline:none;justify-content:center;align-items:center;margin-left:6px;font-size:12px;display:inline-flex}.filter-scroll-next:hover{color:var(--text);border-color:#60b8e86b}.finding-search{flex:0 0 280px;align-items:center;min-width:220px;display:flex;position:relative}.finding-search svg{width:1em;height:1em;color:var(--muted);pointer-events:none;position:absolute;left:10px}.finding-search input{border:1px solid var(--border2);border-radius:var(--radius-sm);background:var(--surface);width:100%;min-width:0;min-height:32px;color:var(--text);font-family:var(--font);outline:none;padding:7px 10px 7px 32px;font-size:11px}.finding-search input::placeholder{color:var(--muted)}.finding-search input:focus{border-color:#4f8ef7a6}.findings-list{position:relative}.finding-focus-overlay{z-index:1000;cursor:zoom-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0000008a;border:0;width:100vw;height:100vh;position:fixed;inset:0}:root[data-theme=light] .finding-focus-overlay{background:#151f3057}.section-title{color:var(--muted);font-family:var(--font);letter-spacing:1.2px;text-transform:uppercase;align-items:center;gap:8px;margin-top:24px;margin-bottom:12px;font-size:11px;display:inline-flex}.section-title-icon{border:1px solid var(--border2);border-radius:var(--radius-sm);background:var(--surface);flex:none;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.section-title-icon svg{width:14px;height:14px}.section-title-vm .section-title-icon{color:var(--purple)}.section-title-bot .section-title-icon{color:var(--bad)}.section-title-fp .section-title-icon{color:var(--accent)}.section-title-net .section-title-icon{color:var(--ok)}.section-title-hw .section-title-icon{color:var(--warn)}.section-title-adv .section-title-icon{color:var(--info)}.section-title-beh .section-title-icon{color:var(--orange)}.section-title-crypto .section-title-icon{color:var(--teal)}.section-title-dom .section-title-icon{color:var(--pink)}.section-title-api .section-title-icon{color:var(--purple)}.card-heading-title .section-title-icon,.section-title .section-title-icon{color:currentColor}.finding-grid{column-width:320px;column-gap:10px}.finding{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);break-inside:avoid;align-self:start;width:100%;margin:0 0 10px;transition:border-color .15s;display:inline-block;overflow:hidden}.finding.is-selected{border-color:var(--border2);box-shadow:inset 0 0 0 1px #60b8e82e}.finding.is-expanded{z-index:1010;border-color:var(--border2);max-height:min(70vh,720px);box-shadow:0 24px 80px var(--shadow-strong);scrollbar-color:var(--scrollbar-thumb) transparent;scrollbar-width:thin;position:relative;overflow:hidden auto}.finding.is-expanded .finding-body{max-height:calc(min(70vh,720px) - 58px);overflow-y:auto}.finding-focus-card{top:var(--finding-focus-top);left:var(--finding-focus-left);z-index:1010;width:var(--finding-focus-width);max-width:calc(100vw - 16px);max-height:var(--finding-focus-max-height);position:fixed}.finding-focus-card .finding{margin:0;display:block}.finding-focus-card .finding.is-expanded{max-height:var(--finding-focus-max-height)}.finding-focus-card .finding.is-expanded .finding-body{max-height:max(84px, calc(var(--finding-focus-max-height) - 58px))}.finding:hover{border-color:var(--border2)}.finding.level-bad{border-left:3px solid var(--bad)}.finding.level-warn{border-left:3px solid var(--warn)}.finding.level-ok{border-left:3px solid var(--ok)}.finding.level-info{border-left:3px solid var(--border2)}.finding-header{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;padding:11px 14px;list-style:none;display:flex}.finding-header::-webkit-details-marker{display:none}.finding-dot{border-radius:50%;flex:none;width:8px;height:8px}.level-bad .finding-dot{background:var(--bad);box-shadow:0 0 6px var(--bad)}.level-warn .finding-dot{background:var(--warn)}.level-ok .finding-dot{background:var(--ok)}.level-info .finding-dot{background:var(--border2)}.finding-name{min-width:0;color:var(--text);font-family:var(--font);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:12px;font-weight:500;overflow:hidden}.finding-badge{font-family:var(--font);border-radius:4px;flex:none;padding:2px 7px;font-size:10px}.badge-vm{color:var(--purple);background:#a78bfa26}.badge-bot{color:var(--bad);background:#f05a5a26}.badge-fp{color:var(--accent);background:#4f8ef726}.badge-net{color:var(--ok);background:#2dd4a01a}.badge-hw{color:var(--warn);background:#f0b4291f}.badge-adv{color:var(--info);background:#60b8e81f}.badge-beh{color:var(--orange);background:#f973161f}.badge-crypto{color:var(--teal);background:#2fcfbc1f}.badge-dom{color:var(--pink);background:#ec48991f}.badge-api{color:var(--purple);background:#a78bfa1f}.finding-pts{color:var(--muted);flex:none;font-size:10px}.finding-pts.has-pts{color:var(--warn);font-weight:600}.finding-confidence{border:1px solid var(--border2);color:var(--muted);font-family:var(--font);border-radius:4px;flex:none;padding:2px 6px;font-size:10px}.finding-arrow{color:var(--muted);flex:none;font-size:10px;transition:transform .2s}.finding[open] .finding-arrow{transform:rotate(90deg)}.finding-body{border-top:1px solid var(--border);padding:0 14px 12px}.finding-meta{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.finding-meta span{border:1px solid var(--border);color:var(--muted);font-family:var(--font);border-radius:4px;padding:2px 6px;font-size:10px}.finding-val{border-radius:var(--radius-sm);background:var(--surface2);max-height:180px;color:var(--info);font-family:var(--font);white-space:pre-wrap;word-break:break-word;scrollbar-color:var(--scrollbar-thumb) transparent;scrollbar-width:thin;margin-top:10px;padding:8px 10px;font-size:11px;line-height:1.6;overflow-y:auto}.breakpoint-finding{margin-top:10px}.breakpoint-status{border-radius:var(--radius-sm);font-family:var(--font);text-align:center;padding:10px;font-size:12px;font-weight:700}.breakpoint-status-ok{color:var(--ok);background:#2dd4a01f}.breakpoint-status-bad{color:var(--bad);background:#f05a5a1f}.breakpoint-table{border-collapse:collapse;width:100%;color:var(--text);margin-top:10px;font-size:11px}.breakpoint-table td{border-bottom:1px solid var(--border);padding:8px 6px}.breakpoint-table td:last-child{color:var(--info);font-family:var(--font);text-align:right;overflow-wrap:anywhere;font-weight:700}.breakpoint-table tr:last-child td{border-bottom:none}.finding-recommendation{border-radius:var(--radius-sm);color:var(--text);background:#60b8e80f;border:1px solid #60b8e82e;margin-top:10px;padding:8px 10px;font-size:11px;line-height:1.5}.finding-val::-webkit-scrollbar{width:6px}.finding-val::-webkit-scrollbar-track{background:0 0}.finding-val::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);background-clip:content-box;border:1px solid #0000;border-radius:999px}.empty-results{color:var(--muted);align-items:center;gap:12px;padding:24px 0;display:flex}.empty-results-icon{border:1px solid var(--border2);border-radius:var(--radius-sm);width:34px;height:34px;color:var(--info);font-family:var(--font);flex:none;justify-content:center;align-items:center;font-size:15px;font-weight:700;display:flex}.empty-results strong,.empty-results span{display:block}.empty-results strong{color:var(--text);font-size:13px;font-weight:600}.empty-results span{margin-top:4px;font-size:12px;line-height:1.5}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;max-width:560px;min-height:420px;margin:0 auto;padding:60px 24px;display:flex}.empty-visual{justify-content:center;align-items:center;width:132px;height:132px;display:flex;position:relative}.empty-icon{z-index:1;appearance:none;background:var(--surface);cursor:pointer;border:1px solid #4f8ef77a;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex;position:relative;overflow:hidden;box-shadow:0 0 30px #4f8ef71f}.empty-icon:hover{border-color:#4f8ef7c7;transform:translateY(-1px);box-shadow:0 0 34px #4f8ef733}.empty-icon:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.empty-icon img{width:100%;height:100%;display:block}.empty-signal{border:1px solid var(--border2);pointer-events:none;border-radius:50%;position:absolute}.signal-one{border-color:#2dd4a047;inset:26px}.signal-two{border-color:#60b8e83d;inset:10px}.signal-three{border-color:#f0b42933;inset:0}.empty-copy{gap:8px;display:grid}.empty-kicker{color:var(--accent);font-family:var(--font);letter-spacing:1px;text-transform:uppercase;font-size:11px}.empty-title{color:var(--text);font-size:22px;font-weight:600}.empty-sub{max-width:380px;color:var(--muted);font-size:13px;line-height:1.6}.empty-checks{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;width:min(100%,520px);margin-top:8px;display:grid}.empty-checks span{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);min-width:0;color:var(--muted);font-family:var(--font);text-overflow:ellipsis;white-space:nowrap;padding:8px 10px;font-size:10px;overflow:hidden}.behavior-hud{z-index:240;border:1px solid var(--border2);border-radius:var(--radius);background:color-mix(in srgb, var(--surface) 94%, transparent);min-width:190px;box-shadow:0 18px 44px var(--shadow-strong);color:var(--muted);font-family:var(--font);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);gap:3px;padding:10px 12px;font-size:10px;display:grid;position:fixed;bottom:14px;right:14px}.behavior-hud-title{color:var(--accent);letter-spacing:1px;text-transform:uppercase;margin-bottom:4px;font-size:9px}.behavior-hud-row{justify-content:space-between;gap:14px;line-height:1.45;display:flex}.behavior-hud-row strong{color:var(--text);font-weight:600}.tone-bad{color:var(--bad)}.tone-warn{color:var(--warn)}.tone-ok{color:var(--ok)}.tone-purple{color:var(--purple)}.tone-accent{color:var(--accent)}.tone-info{color:var(--info)}.tone-orange{color:var(--orange)}.tone-pink{color:var(--pink)}.tone-teal{color:var(--teal)}.tone-border-bad{border-color:var(--bad);color:var(--bad)}.tone-border-warn{border-color:var(--warn);color:var(--warn)}.tone-border-ok{border-color:var(--ok);color:var(--ok)}
@media (max-width:920px){.summary-top-grid,.summary-main-grid,.summary-overview-grid{grid-template-columns:1fr}.ip-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){header{align-items:flex-start;padding:16px}.header-actions{flex-wrap:wrap;justify-content:flex-end}.btn{white-space:nowrap}.btn-icon{width:38px}main{padding:16px}.score-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.score-card{grid-column:span 1}.score-card-wide{grid-column:span 2}.identity-card-grid{grid-template-columns:1fr}.professional-grid,.top-signal-strip{grid-template-columns:1fr 1fr}.ip-detail-grid{grid-template-columns:1fr}.finding-grid{column-count:1;column-width:auto}.filter-bar{align-items:center}.finding-search{flex-basis:220px;min-width:180px}.empty-checks{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:470px){header{flex-direction:column}.header-actions{justify-content:stretch;width:100%}.header-actions .btn-primary{flex:auto}.export-dropdown{flex:120px}.export-trigger{width:100%}.export-menu{width:min(218px,100vw - 32px);left:0;right:auto}.risk-hero{align-items:flex-start;padding:18px}.risk-circle{width:58px;height:58px}.score-grid{grid-template-columns:1fr}.score-card,.score-card-wide{grid-column:span 1}.professional-grid,.summary-insight-grid,.top-signal-strip,.browser-env-card .environment-card-grid,.environment-card-grid{grid-template-columns:1fr}.risk-hero{flex-direction:column}.ip-panel-heading{flex-direction:column;align-items:flex-start}.ip-chip-row{justify-content:flex-start}.ip-field{grid-template-columns:1fr;gap:2px}.ip-field strong{text-align:left;white-space:normal;overflow-wrap:anywhere}.ip-version-row,.local-ip-row{grid-template-columns:1fr;align-items:start}.finding-search{flex:0 0 160px;min-width:140px}.filter-btn{padding-inline:8px}.filter-btn span:not(.section-title-icon){text-overflow:ellipsis;white-space:nowrap;max-width:78px;overflow:hidden}.behavior-hud{min-width:172px;font-size:9px;bottom:10px;right:10px}.empty-state{min-height:360px;padding:40px 16px}.empty-checks{grid-template-columns:1fr}}
@keyframes page-enter{0%{opacity:0}to{opacity:1}}@keyframes panel-enter{0%{opacity:0;transform:translateY(12px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes soft-pulse{0%,to{opacity:.55;transform:scale(1)}50%{opacity:1;transform:scale(1.04)}}@keyframes progress-sheen{0%{background-position:0 0}to{background-position:160px 0}}body{animation:.45s ease-out both page-enter}header,.progress-area,.summary,.results-panel,.empty-state,.error-banner{animation:.42s ease-out both panel-enter}.score-card,.pro-card,.fingerprint-card,.ip-card,.finding,.top-signal{transition:border-color .18s,box-shadow .18s,transform .18s}.score-card:hover,.pro-card:hover,.fingerprint-card:hover,.ip-card:hover,.top-signal:hover{border-color:var(--border2);box-shadow:0 12px 34px var(--shadow-soft);transform:translateY(-2px)}.finding{animation:.34s ease-out both panel-enter}.finding.is-expanded{animation:none}.finding:hover{border-color:var(--border2);box-shadow:0 12px 30px var(--shadow-strong);transform:translateY(-1px)}.finding.is-expanded:hover{box-shadow:0 24px 80px var(--shadow-strong);transform:none}.progress-bar{background:linear-gradient(90deg, transparent, #ffffff3d, transparent), linear-gradient(90deg, var(--accent), var(--purple));background-size:160px 100%,100% 100%;animation:1.2s linear infinite progress-sheen}.empty-signal{transform-origin:50%;animation:2.8s ease-in-out infinite soft-pulse}.signal-two{animation-delay:.28s}.signal-three{animation-delay:.56s}.filter-btn,.finding-search input,.ip-provider-trigger,.ip-provider-menu button{transition:background .15s,border-color .15s,color .15s,transform .15s}.filter-btn:hover,.ip-provider-menu button:hover{transform:translateY(-1px)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}

