:root{--bg: #f4f5fb;--bg-2: #eceefb;--panel: #ffffff;--panel-2: #fbfbff;--border: #eceefb;--border-2: #e3e6f7;--accent: #7c5cff;--accent-2: #3aa0ff;--violet: #7c5cff;--violet-2: #9b6bff;--cyan: #3aa0ff;--pink: #ff6bd6;--text: #0f1222;--muted: #7a7f95;--green: #16c98d;--red: #ff5470;--orange: #ff9a3d;--yellow: #e6b800;--purple: #9b6bff;--navy: #0e1330;--navy-2: #171c42;--mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--grad: linear-gradient(120deg, var(--violet), var(--violet-2) 55%, var(--pink));--grad-violet: linear-gradient(135deg, var(--violet), var(--violet-2) 55%, var(--pink));--grad-navy: linear-gradient(155deg, var(--navy), var(--navy-2) 55%, #1b1050);--radius: 20px;--radius-lg: 20px;--radius-md: 14px;--radius-sm: 10px;--shadow-flat: 0 1px 2px rgba(17, 21, 39, .04);--shadow-card: 0 10px 28px rgba(30, 20, 90, .08);--shadow-lg: 0 16px 34px rgba(124, 92, 255, .18);--shadow-hero: 0 28px 64px rgba(14, 19, 48, .35), 0 8px 20px rgba(124, 92, 255, .16);--tint-amber-bg: #fff6e6;--tint-orange-bg: #fff2e2;--tint-yellow-bg: #fff1c2;--tint-yellow-2-bg: #fff6d9;--tint-red-bg: #fff6f7;--tint-violet-panel-start: #faf8ff;--tint-violet-panel-end: #ffffff;--tint-violet-border: #e7e1ff;--tint-violet-border-2: #e3d9ff;--tint-violet2-start: #f7f4ff;--tint-violet3-start: #efe9ff;--text-2: #4b4f66}html[data-theme=dark]{--bg: #0b0d1a;--bg-2: #11142a;--panel: #161a33;--panel-2: #1b1f3d;--border: #262b4d;--border-2: #2e3459;--text: #eef0fb;--muted: #9599b8;--navy: #05070f;--navy-2: #0c0f22;--shadow-flat: 0 1px 2px rgba(0, 0, 0, .25);--shadow-card: 0 10px 28px rgba(0, 0, 0, .35);--shadow-lg: 0 16px 34px rgba(124, 92, 255, .28);--shadow-hero: 0 28px 64px rgba(0, 0, 0, .55), 0 8px 20px rgba(124, 92, 255, .22);--tint-amber-bg: rgba(255, 179, 64, .16);--tint-orange-bg: rgba(255, 138, 61, .16);--tint-yellow-bg: rgba(230, 184, 0, .18);--tint-yellow-2-bg: rgba(230, 184, 0, .16);--tint-red-bg: rgba(255, 84, 112, .14);--tint-violet-panel-start: #1c2044;--tint-violet-panel-end: #161a33;--tint-violet-border: #322a5c;--tint-violet-border-2: #322a5c;--tint-violet2-start: #1c2044;--tint-violet3-start: #201a44;--text-2: #c7cadb}html[data-theme=dark] body{background:radial-gradient(760px 520px at 6% -6%,rgba(124,92,255,.12),transparent 60%),radial-gradient(680px 480px at 100% 8%,rgba(255,107,214,.08),transparent 55%),radial-gradient(900px 620px at 88% 96%,rgba(58,160,255,.1),transparent 60%),var(--bg)}html[data-theme=dark] .nav-btn:hover{background:#7c5cff24}html[data-theme=dark] .kpi-icon.tone-violet,html[data-theme=dark] .ob-icon,html[data-theme=dark] .feature-icon,html[data-theme=dark] .cwe-tag{background:#7c5cff29}html[data-theme=dark] .kpi-icon.tone-red{background:#ff547029}html[data-theme=dark] .ob-step.done .ob-icon{background:#16c98d2e}html[data-theme=dark] .bar.trial{background:#ffffff14}html[data-theme=dark] .badge.plan-free{background:#5b46e038;color:#b9acff}html[data-theme=dark] .badge.plan-standard,html[data-theme=dark] .badge.sev-low,html[data-theme=dark] .badge.sev-info{background:#3aa0ff33;color:#8dc4ff}html[data-theme=dark] .badge.sev-critical{background:#ff547033;color:#ffa9b7}html[data-theme=dark] .badge.sev-high{background:#ff9a3d33;color:#ffb066}html[data-theme=dark] .badge.sev-medium{color:#ffce4d}html[data-theme=dark] .badge.locked{background:#7a7f9533;color:#b7bad6}html[data-theme=dark] .card .status-badge.status-queued{background:#e6b8002e;color:#ffce4d}html[data-theme=dark] .card .status-badge.status-running{background:#7c5cff38;color:#c3b3ff}html[data-theme=dark] .card .status-badge.status-done{background:#16c98d33;color:#6be8bd}html[data-theme=dark] .card .status-badge.status-error{background:#ff547033;color:#ffa9b7}html[data-theme=dark] .banner.err{background:#ff547024;border-color:#ff547059;color:#ff96a7}html[data-theme=dark] .banner.ok{background:#16c98d24;border-color:#16c98d59;color:#6be8bd}html[data-theme=dark] .tx-status.tx-confirmed{background:#16c98d2e;color:#6be8bd}html[data-theme=dark] .tx-status.tx-rejected,html[data-theme=dark] .tx-status.tx-expired{background:#ff54702e;color:#ff96a7}html[data-theme=dark] .checkbox-grid label.checked{background:#7c5cff29}html[data-theme=dark] .checkbox-grid label.disabled{color:var(--muted);background:var(--panel-2)}html[data-theme=dark] .dropzone{border-color:var(--tint-violet-border-2);background:var(--tint-violet-panel-start)}html[data-theme=dark] .dropzone:hover,html[data-theme=dark] .dropzone.drag{background:#7c5cff24}html[data-theme=dark] .wallet-tile:hover:not(:disabled){background:#7c5cff24}html[data-theme=dark] .hero-badge{background:#7c5cff2e}.text-danger{color:#c31742}html[data-theme=dark] .text-danger{color:#ff96a7}*{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100%;background:radial-gradient(760px 520px at 6% -6%,rgba(124,92,255,.08),transparent 60%),radial-gradient(680px 480px at 100% 8%,rgba(255,107,214,.06),transparent 55%),radial-gradient(900px 620px at 88% 96%,rgba(58,160,255,.07),transparent 60%),var(--bg);background-attachment:fixed;color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;-webkit-font-smoothing:antialiased}::selection{background:#7c5cff40}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border-2);border-radius:10px}::-webkit-scrollbar-track{background:transparent}.mono{font-family:var(--mono)}.muted{color:var(--muted)}.small{font-size:12.5px}.info-dot{display:inline-block;cursor:help;color:var(--muted);font-size:12px;margin-left:4px;border-bottom:1px dotted var(--muted)}.boot{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg)}.boot-card{display:flex;align-items:center;gap:12px;padding:20px 26px;border-radius:var(--radius-lg);background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow-card);color:var(--muted);font-weight:600;font-size:13.5px}.boot-logo{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:19px;background:linear-gradient(140deg,var(--violet),var(--pink));box-shadow:0 6px 14px #7c5cff59;animation:boot-glow 1.6s ease-in-out infinite}@keyframes boot-glow{0%,to{box-shadow:0 6px 14px #7c5cff59}50%{box-shadow:0 6px 22px #7c5cff99}}.shell{display:grid;grid-template-columns:232px 1fr;min-height:100vh}.sidebar{background:var(--panel);border-right:1px solid var(--border);display:flex;flex-direction:column;padding:22px 16px;position:sticky;top:0;height:100vh;overflow-y:auto}.brand{display:flex;align-items:center;gap:10px;padding:4px 8px 22px}.brand-logo{width:40px;height:40px;min-width:40px;border-radius:12px;background:linear-gradient(140deg,var(--violet),var(--pink));display:flex;align-items:center;justify-content:center;font-size:19px;box-shadow:0 6px 14px #7c5cff59}.brand-name{font-size:15px;font-weight:800;color:var(--text);line-height:1.2}.sidebar nav{display:flex;flex-direction:column;gap:3px;margin-top:4px}.nav-btn{display:flex;align-items:center;gap:12px;padding:10.5px 12px;border-radius:12px;border:none;background:transparent;color:var(--text-2);font-size:13.5px;font-weight:600;cursor:pointer;text-align:left;font-family:inherit;transition:background .15s ease,color .15s ease,box-shadow .15s ease,transform .15s ease}.nav-btn:hover{background:#f4f2ff;color:var(--violet)}.nav-btn.active{background:var(--grad-violet);color:#fff;box-shadow:0 8px 20px #7c5cff66,0 2px 8px #ff6bd638,inset 0 1px #fff3}.nav-icon{font-size:15px;width:18px;text-align:center;flex:none}.nav-btn.active .nav-icon{filter:none}.sidebar-footer{margin-top:auto;display:flex;flex-direction:column;gap:12px;padding-top:14px;border-top:1px solid var(--border)}.theme-toggle{display:flex;align-items:center;gap:10px;width:100%;border:1px solid var(--border);border-radius:14px;padding:8px 10px;background:var(--panel-2);cursor:pointer;font-family:inherit;text-align:left;transition:border-color .15s ease,background .15s ease}.theme-toggle:hover{border-color:var(--violet);background:var(--tint-violet2-start)}.theme-toggle-track{position:relative;flex:0 0 auto;width:40px;height:22px;border-radius:999px;background:var(--grad-violet);display:flex;align-items:center;padding:2px}html[data-theme=dark] .theme-toggle-track{justify-content:flex-end}.theme-toggle-thumb{width:18px;height:18px;border-radius:50%;background:var(--panel);display:flex;align-items:center;justify-content:center;font-size:11px;line-height:1;box-shadow:0 1px 3px #00000040;transition:transform .2s ease}.theme-toggle-label{font-size:12px;font-weight:600;color:var(--text)}.sidebar-upgrade{display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:100%;border:1px solid var(--tint-violet-border-2);border-radius:16px;padding:14px;background:linear-gradient(120deg,var(--tint-violet2-start),var(--panel) 80%);cursor:pointer;text-align:left;font-family:inherit}.sidebar-upgrade:hover{border-color:var(--violet);box-shadow:0 8px 18px #7c5cff24}.sidebar-upgrade strong{font-size:12.5px;color:var(--violet)}.sidebar-upgrade span{font-size:11px;color:var(--muted);line-height:1.4}.user-row{display:flex;align-items:center;gap:10px;border:1px solid var(--border);border-radius:16px;padding:10px 12px;background:var(--panel-2)}.user-avatar{width:36px;height:36px;min-width:36px;border-radius:50%;background:var(--grad-violet);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:13px}button.user-avatar{transition:transform .15s ease,box-shadow .15s ease}button.user-avatar:hover{transform:translateY(-1px);box-shadow:0 8px 18px #7c5cff59}.user-meta{flex:1;min-width:0}.user-meta .u-name{font-size:12.5px;font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-meta .u-sub{font-size:10.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.main{padding:26px 30px 60px;overflow-x:hidden;min-width:0}.page-head{margin-bottom:20px;display:flex;align-items:flex-start;gap:14px}.page-head h1{margin:0 0 6px;font-size:23px;font-weight:800}.page-head p{margin:0;max-width:620px;line-height:1.5}.page-icon{width:44px;height:44px;min-width:44px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:20px;margin-top:2px;box-shadow:var(--shadow-flat)}.page-icon.c-cyan{background:linear-gradient(140deg,#3aa0ff,#7fd2ff)}.page-icon.c-pink{background:linear-gradient(140deg,#ff6bd6,#ffa6dd)}.page-icon.c-violet{background:linear-gradient(140deg,var(--violet),var(--violet-2))}.page-icon.c-gold{background:linear-gradient(140deg,#ffb03d,#ffd876)}.page-icon.c-green{background:linear-gradient(140deg,#16c98d,#6be8c0)}.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}.greet h1{margin:0 0 6px;font-size:23px;font-weight:800}.greet p{margin:0;color:var(--muted);font-size:13.5px}.tb-right{display:flex;align-items:center;gap:12px}.tb-chip{height:40px;min-width:40px;padding:0 12px;border-radius:20px;background:var(--panel);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;gap:4px;font-size:13px;font-weight:700;cursor:pointer;color:var(--text)}.tb-chip:hover{border-color:var(--violet);color:var(--violet)}.banner{border-radius:14px;padding:12px 16px;font-size:13px;margin-bottom:16px;border:1px solid transparent;line-height:1.5}.banner.warn{background:var(--tint-amber-bg);border-color:#ffe2b3;color:#94590a}.banner.err{background:#ffe8ec;border-color:#ffc9d3;color:#c31742}.banner.ok{background:#e7f9f1;border-color:#b9ecd6;color:#0f9e6a}.banner.low-balance{background:var(--tint-orange-bg);border-color:#ffd9a3;color:#94590a}.banner-title{font-weight:800;font-size:13.5px;margin-bottom:3px}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:20px 22px;margin-bottom:18px}.card-grid{display:grid;gap:18px}.card-grid .card{margin-bottom:0}.section-title{font-size:14.5px;font-weight:800;color:var(--text);margin-bottom:14px;display:flex;align-items:center;gap:8px}.st-icon{font-size:16px}h2,h3{color:var(--text)}.card h3{font-size:13.5px;font-weight:800;margin:16px 0 10px}.card h3:first-child{margin-top:0}.card h2{font-size:17px;margin:0 0 8px}.scan-hero{background:linear-gradient(120deg,var(--panel) 60%,#f7f4ff)}.scan-hero-row{display:flex;gap:12px;flex-wrap:wrap}.sh-input{flex:1 1 320px;display:flex;align-items:center;gap:10px;border:1px solid var(--border);border-radius:13px;padding:0 14px;background:var(--panel-2)}.sh-input:focus-within{border-color:var(--violet);background:var(--panel)}.sh-input .sh-icon{font-size:15px;color:var(--muted)}.sh-input input{border:none;outline:none;background:transparent;flex:1;padding:13px 0;font-size:13.5px;color:var(--text);font-family:inherit}.btn-scan{border:none;background:var(--grad);color:#fff;font-weight:700;font-size:13.5px;padding:0 22px;border-radius:13px;cursor:pointer;box-shadow:0 12px 24px #7c5cff52;white-space:nowrap;transition:transform .15s ease,box-shadow .15s ease,filter .15s ease}.btn-scan:hover:not(:disabled){filter:brightness(1.05);transform:translateY(-1px);box-shadow:0 16px 28px #7c5cff61,0 4px 12px #ff6bd638}.btn-scan:disabled{opacity:.6;cursor:not-allowed}.mode-chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.mode-chip{display:flex;align-items:center;gap:7px;border:1px solid var(--border);background:var(--panel);border-radius:20px;padding:8px 14px;font-size:12.5px;font-weight:700;color:var(--text-2);cursor:pointer;font-family:inherit;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease,color .15s ease}.mode-chip .mc-icon{font-size:13px}.mode-chip:hover:not(:disabled){border-color:var(--violet);color:var(--violet);transform:translateY(-1px);box-shadow:var(--shadow-card)}.mode-chip.active{background:var(--grad-violet);color:#fff;border-color:transparent}.mode-chip:disabled{opacity:.5;cursor:not-allowed}.kpi-row{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-bottom:18px}.stat-row{grid-template-columns:repeat(4,1fr)}.kpi-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-md);padding:18px 18px 14px;box-shadow:var(--shadow-card);display:flex;align-items:flex-start;justify-content:space-between;gap:10px;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.kpi-card:hover{transform:translateY(-1px);box-shadow:var(--shadow-lg);border-color:var(--border-2)}.kpi-left{display:flex;flex-direction:column;gap:4px;min-width:0}.kpi-icon{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:15px;margin-bottom:6px}.kpi-icon.tone-violet{background:#efe9ff;color:var(--violet)}.kpi-icon.tone-red{background:#ffe8ec;color:var(--red)}.kpi-icon.tone-orange{background:var(--tint-orange-bg);color:var(--orange)}.kpi-value{font-size:26px;font-weight:800;line-height:1.1}.kpi-value .kpi-unit{font-size:12px;font-weight:600;color:var(--muted)}.kpi-label{font-size:12px;color:var(--muted);font-weight:600}.kpi-spark{flex:none;width:100px}.spark{width:100%;height:26px;display:block}.ring-wrap{position:relative;width:56px;height:56px;flex:none;border-radius:50%;background:conic-gradient(var(--ring-c, var(--violet)) calc(var(--p, 0) * 1%),var(--border) 0);display:flex;align-items:center;justify-content:center}.ring-wrap:before{content:"";position:absolute;top:6px;right:6px;bottom:6px;left:6px;border-radius:50%;background:var(--panel)}.ring-val{position:relative;z-index:1;font-size:13px;font-weight:800}.kpi-card:has(.ring-wrap){align-items:center}.dash-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:18px;align-items:start}.dash-side .card{margin-bottom:0}.onboard .ob-head{margin-bottom:4px}.onboard h3{margin:0 0 4px!important;font-size:15px!important}.ob-step{display:flex;align-items:center;gap:12px;padding:12px 4px;border-bottom:1px solid var(--border)}.ob-step:last-of-type{border-bottom:none}.ob-num{width:22px;height:22px;border-radius:50%;background:var(--bg-2);color:var(--muted);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;flex:none}.ob-step.active .ob-num{background:var(--grad-violet);color:#fff}.ob-step.done .ob-num{background:var(--green);color:#fff}.ob-icon{width:34px;height:34px;border-radius:10px;background:#f4f2ff;display:flex;align-items:center;justify-content:center;font-size:15px;flex:none}.ob-step.done .ob-icon{background:#e7f9f1;color:var(--green)}.ob-text{flex:1;min-width:0}.ob-text .ob-title{font-size:13px;font-weight:700}.ob-text .ob-desc{font-size:11.5px;color:var(--muted);line-height:1.4}.ob-state{font-size:11px;color:var(--border-2);flex:none}.ob-state.on{color:var(--green)}.ob-actions{display:flex;align-items:center;gap:12px;margin-top:14px}.ob-skip{border:none;background:none;color:var(--muted);font-size:12.5px;cursor:pointer;font-family:inherit}.ob-skip:hover{color:var(--text)}.lower-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:18px;align-items:stretch;margin-bottom:18px}.stepper-card,.progress-card,.plan-hero{background:var(--grad-navy);border-radius:var(--radius-lg);padding:22px 24px;color:#fff;position:relative;overflow:hidden;border:none;box-shadow:var(--shadow-hero),0 0 0 1px #9b6bff26 inset}.stepper-card:before,.progress-card:before,.plan-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(420px 220px at 92% -10%,rgba(155,107,255,.35),transparent 65%),radial-gradient(360px 200px at -8% 110%,rgba(255,107,214,.22),transparent 60%)}.stepper-card>*,.progress-card>*,.plan-hero>*{position:relative;z-index:1}.stepper-card .section-title,.progress-card .progress-head strong{color:#fff}.stepper-card .muted,.progress-card .muted,.plan-hero .muted{color:#fff9}.plan-hero{padding:26px 28px;margin-bottom:18px}.plan-hero .kv .k,.plan-hero .info-dot{color:#ffffff8c}.plan-hero .info-dot{border-bottom-color:#ffffff59}.plan-hero.plan-state-lapsed:before{background:radial-gradient(420px 220px at 92% -10%,rgba(255,84,112,.35),transparent 65%),radial-gradient(360px 200px at -8% 110%,rgba(255,107,214,.18),transparent 60%)}.hero-num{font-size:30px;font-weight:800;line-height:1;display:inline-block;vertical-align:middle;margin:0 2px}.hero-num.hero-num-sm{font-size:21px}.stepper-steps{display:flex;align-items:flex-start;justify-content:space-between;position:relative;padding:4px 6px 0;gap:4px}.stepper-steps:before{content:"";position:absolute;top:20px;left:30px;right:30px;height:2px;background:#ffffff1f;z-index:0}.step{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:8px;flex:1;text-align:center}.step-dot{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);font-weight:700;font-size:13px}.step.done .step-dot{background:#16c98d2e;border-color:#16c98d80;color:#6be8bd}.step.active .step-dot{background:linear-gradient(135deg,var(--violet),var(--pink));border-color:transparent;box-shadow:0 0 0 6px #7c5cff40}.step-label{font-size:10.5px;color:#ffffffa6;font-weight:600}.step.active .step-label,.step.done .step-label{color:#fff}.bar{height:6px;border-radius:6px;background:#ffffff1f;overflow:hidden}.bar>span{display:block;height:100%;border-radius:6px;background:var(--grad-violet)}.bar.trial{background:#eceefb}.bar.trial>span{background:linear-gradient(120deg,var(--violet),#c15bff)}.bar.full>span{background:var(--green)}.bar.danger>span{background:var(--red)}.stepper-log{background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:12px 14px;font-family:var(--mono);font-size:12px;line-height:1.9;color:#c9cbe8;min-height:70px;max-height:150px;overflow-y:auto}.log-line{display:flex;align-items:center;gap:8px}.log-dot{width:6px;height:6px;border-radius:50%;background:var(--violet-2);flex:none}.status-badge{font-size:10.5px;font-weight:800;padding:4px 11px;border-radius:20px;text-transform:uppercase;letter-spacing:.02em}.status-badge.status-queued{background:#e6b8002e;color:#ffce4d}.status-badge.status-running{background:#7c5cff38;color:#c3b3ff}.status-badge.status-done{background:#16c98d33;color:#6be8bd}.status-badge.status-error{background:#ff547033;color:#ffa9b7}.card .status-badge.status-queued{background:var(--tint-yellow-bg);color:#b58600}.card .status-badge.status-running{background:#e9e4ff;color:#5432d6}.card .status-badge.status-done{background:#d9f7ea;color:#0b8a5c}.card .status-badge.status-error{background:#ffdce3;color:#d41f4d}.heat-card{display:flex;flex-direction:column;align-items:center;text-align:center}.heat-card .section-title{align-self:flex-start}.heat-svg{width:150px;height:150px}.heat-legend{display:flex;flex-direction:column;gap:6px;width:100%;margin-top:8px}.heat-legend .lg{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-2);text-transform:capitalize}.heat-legend .lg i{width:9px;height:9px;border-radius:3px;display:inline-block}.recent-findings-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.rf-card{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;display:flex;background:var(--panel-2)}.rf-strip{width:5px;flex:none;background:var(--border-2)}.rf-strip.sev-critical{background:#e03158}.rf-strip.sev-high{background:#d97a1f}.rf-strip.sev-medium{background:#c99a12}.rf-strip.sev-low,.rf-strip.sev-info{background:#2f7fd6}.rf-body{padding:12px 14px;min-width:0;flex:1}.rf-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.rf-time{font-size:10.5px;color:var(--muted)}.rf-type{font-size:12.5px;font-weight:700;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rf-host{font-size:11px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feature-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px 22px;box-shadow:var(--shadow-card);margin-bottom:18px}.feature-cell{display:flex;align-items:flex-start;gap:12px}.feature-icon{width:40px;height:40px;min-width:40px;border-radius:12px;background:#f4f2ff;color:var(--violet);display:flex;align-items:center;justify-content:center;font-size:17px}.feature-title{font-size:13px;font-weight:800;margin-bottom:2px}.feature-desc{font-size:11.5px;color:var(--muted);line-height:1.4}.badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:800;padding:3px 10px;border-radius:20px;background:var(--bg-2);color:var(--text-2);white-space:nowrap}.badge.plan-free{background:#eef0ff;color:#5b46e0}.badge.plan-standard{background:#e4f0ff;color:#2f7fd6}.badge.plan-pro{background:linear-gradient(120deg,var(--violet),var(--pink));color:#fff}.badge.plan-topup{background:var(--tint-orange-bg);color:#b5690f}.badge.sev-critical{background:#ffdce3;color:#d41f4d}.badge.sev-high{background:#ffe9d2;color:#c76313}.badge.sev-medium{background:var(--tint-yellow-bg);color:#b58600}.badge.sev-low,.badge.sev-info{background:#dcecff;color:#1f6fc9}.badge.locked{background:#f1f1f6;color:#9296ab}.cwe-tag{background:#f4f2ff;color:var(--violet)}.btn{border:1px solid var(--border-2);background:var(--panel);color:var(--text);font-size:13px;font-weight:700;padding:10px 18px;border-radius:999px;cursor:pointer;font-family:inherit;transition:transform .1s ease,box-shadow .15s ease,border-color .15s ease}.btn:hover:not(:disabled){border-color:var(--violet);color:var(--violet);transform:translateY(-1px);box-shadow:var(--shadow-card)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--grad);color:#fff;border:none;box-shadow:0 10px 20px #7c5cff4d}.btn-primary:hover:not(:disabled){filter:brightness(1.06);color:#fff;transform:translateY(-1px);box-shadow:0 14px 26px #7c5cff5c,0 4px 10px #ff6bd633}.btn-danger{background:var(--red);color:#fff;border:none}.btn-ghost{background:transparent;border:1px solid var(--border);color:var(--muted)}.btn-ghost:hover:not(:disabled){color:var(--text);border-color:var(--border-2)}.btn-sm{padding:7px 13px;font-size:12px;border-radius:999px}.btn-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.field>span:first-child{font-size:12px;font-weight:700;color:var(--text-2)}.field input,.field textarea,input[type=text],textarea{width:100%;border:1px solid var(--border);border-radius:11px;padding:11px 14px;font-size:13px;background:var(--panel-2);outline:none;color:var(--text);font-family:inherit}.field input:focus,.field textarea:focus{border-color:var(--violet);background:var(--panel)}.field .req{color:var(--red);margin-left:3px;font-weight:800}.field.invalid>span:first-child{color:#c31742}.field.invalid input,.field.invalid textarea{border-color:var(--red);background:var(--tint-red-bg)}.field.invalid input:focus,.field.invalid textarea:focus{border-color:var(--red);background:var(--panel)}.radio-row{display:flex;gap:18px;flex-wrap:wrap;margin:10px 0 4px}.radio-row label{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:600;cursor:pointer;color:var(--text-2)}.radio-row input[type=radio]{accent-color:var(--violet);width:15px;height:15px}.checkbox-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:10px 0 4px}.checkbox-grid label{display:flex;align-items:center;gap:9px;padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--panel-2);font-size:12.5px;font-weight:600;cursor:pointer;color:var(--text-2);transition:border-color .15s ease,background .15s ease,color .15s ease}.checkbox-grid label:hover{border-color:var(--violet)}.checkbox-grid label.checked{border-color:var(--violet);background:#f5f2ff;color:var(--text);box-shadow:0 4px 14px #7c5cff29}.checkbox-grid label.disabled{cursor:not-allowed;color:#b3b6c6;background:#f7f7fb}.checkbox-grid label.disabled:hover{border-color:var(--border)}.checkbox-grid input[type=checkbox]{accent-color:var(--violet);width:15px;height:15px;flex:none}.checkbox-grid .scope-name{flex:1;line-height:1.3}.plans-grid .card{position:relative;border-top:3px solid var(--border-2);overflow:hidden}.plans-grid .card.plan-accent-free{border-top-color:#c9c4f5}.plans-grid .card.plan-accent-standard{border-top-color:var(--cyan)}.plans-grid .card.plan-accent-pro{border-top:3px solid transparent;background-image:linear-gradient(var(--panel),var(--panel)),var(--grad-violet);background-origin:border-box;background-clip:padding-box,border-box;box-shadow:var(--shadow-lg)}.plans-grid .card.plan-accent-topup{border-top-color:var(--orange)}.plan-ribbon{position:absolute;top:0;right:18px;background:var(--grad-violet);color:#fff;font-size:10.5px;font-weight:800;padding:5px 12px;border-radius:0 0 9px 9px;letter-spacing:.03em;box-shadow:0 6px 14px #7c5cff4d}.plan-price{font-size:27px;font-weight:800;letter-spacing:-.01em;color:var(--text)}.plan-price-unit{font-size:13px;font-weight:600;color:var(--muted)}.wallet-card{background:var(--grad-navy);border:none;color:#fff;position:relative;overflow:hidden}.wallet-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(360px 220px at 100% -10%,rgba(124,92,255,.35),transparent 60%),radial-gradient(300px 200px at -10% 120%,rgba(58,160,255,.25),transparent 60%);pointer-events:none}.wallet-card>*{position:relative}.wallet-card .muted{color:#ffffff9e}.wallet-card .plan-price{color:#fff;font-size:32px}.wallet-card .plan-price-unit{color:#ffffffb3}.checkbox-grid .scope-lock{flex:none;font-size:12px;opacity:.6}.section-eyebrow{display:inline-flex;align-items:center;gap:5px;font-size:10.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--violet);background:#f1ecff;padding:4px 11px;border-radius:20px;margin-bottom:10px}.scope-section{position:relative;margin-top:20px;padding:20px 20px 16px;border-radius:var(--radius-md);border:1px solid var(--tint-violet-border);background:linear-gradient(180deg,var(--tint-violet-panel-start) 0%,var(--tint-violet-panel-end) 65%);box-shadow:var(--shadow-flat)}.scope-section:before{content:"";position:absolute;inset:0 0 auto 0;height:3px;border-radius:var(--radius-md) var(--radius-md) 0 0;background:var(--grad-violet)}.scope-section h3{margin-top:0}.progress-head{display:flex;align-items:center;gap:10px;margin-bottom:6px}.progress-text{font-size:13px;color:#fffc;margin:4px 0}.spinner{width:15px;height:15px;border-radius:50%;border:2px solid rgba(255,255,255,.25);border-top-color:#fff;display:inline-block;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.trial-teaser{background:linear-gradient(115deg,var(--tint-violet3-start),var(--panel) 55%);border:1px solid var(--tint-violet-border-2);border-radius:var(--radius-lg);padding:16px 20px;font-size:13px;color:var(--text-2);margin-bottom:16px}.dropzone{border:2px dashed #d6d3f5;border-radius:var(--radius-lg);padding:44px 30px;text-align:center;background:#faf9ff;cursor:pointer;margin-bottom:14px}.dropzone:hover,.dropzone.drag{border-color:var(--violet);background:#f6f3ff}.dropzone.invalid{border-color:var(--red);background:var(--tint-red-bg)}.dz-icon{width:60px;height:60px;border-radius:18px;background:linear-gradient(140deg,var(--violet),var(--pink));display:flex;align-items:center;justify-content:center;margin:0 auto 14px;box-shadow:0 12px 24px #7c5cff4d;font-size:24px;color:#fff}.dz-title{font-size:14.5px;font-weight:700;margin-bottom:4px}.dz-sub{font-size:12px;color:var(--muted)}.filetype-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin:14px 0}.filetype-card{background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:14px 8px;text-align:center;box-shadow:var(--shadow-flat);font-size:11.5px;font-weight:700;color:var(--text-2)}.filetype-card .ft-icon{font-size:18px;display:block;margin-bottom:6px}.counts-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:12px 0}.count{border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px;text-align:center;background:var(--panel-2)}.count .n{font-size:22px;font-weight:800}.count .l{font-size:11px;color:var(--muted);margin-top:2px}.findings-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:6px}.fcard{display:flex;border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;background:var(--panel);box-shadow:var(--shadow-flat);transition:transform .15s ease,box-shadow .15s ease}.fcard:hover{box-shadow:var(--shadow-card);transform:translateY(-1px)}.fcard-strip{width:5px;flex:none;background:var(--border-2)}.fcard-strip.sev-critical{background:#e03158}.fcard-strip.sev-high{background:#d97a1f}.fcard-strip.sev-medium{background:#c99a12}.fcard-strip.sev-low,.fcard-strip.sev-info{background:#2f7fd6}.fcard-main{padding:14px 16px;min-width:0;flex:1}.fcard-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px}.fcard-type{font-size:13px;font-weight:700}.fcard-endpoint{margin-bottom:8px}.chip{display:inline-block;background:var(--bg-2);border-radius:8px;padding:3px 9px;font-size:11.5px;color:var(--text-2)}.fcard-block{margin-top:8px}.fcard-block-label{font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);margin-bottom:4px}.snip{background:#0f1222;color:#d6d8f5;border-radius:9px;padding:10px 12px;font-family:var(--mono);font-size:11.5px;overflow-x:auto;white-space:pre-wrap;word-break:break-word;margin:0}.link-btn{border:none;background:none;color:var(--violet);font-size:12px;font-weight:700;cursor:pointer;padding:4px 0 0;font-family:inherit}.scan-row{border:1px solid var(--border);border-radius:var(--radius-md);margin-bottom:12px;background:var(--panel);box-shadow:var(--shadow-flat);overflow:hidden}.scan-row-head{display:grid;grid-template-columns:auto 1.6fr 1fr .5fr 1fr 1fr auto;align-items:center;gap:14px;padding:15px 18px;cursor:pointer}.scan-row-head:hover{background:var(--panel-2)}.scan-target{font-size:13px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.scan-row-body{padding:4px 20px 20px;border-top:1px solid var(--border)}.hide-sm{font-size:12.5px}@media (max-width: 900px){.hide-sm{display:none}}.kv{display:grid;grid-template-columns:max-content 1fr;gap:6px 14px;font-size:13px;align-items:center}.kv .k{color:var(--muted);font-weight:600}.plans-grid{grid-template-columns:repeat(3,1fr);align-items:stretch;margin-bottom:4px}.plans-grid .card{display:flex;flex-direction:column}.checkout-panel{border:1px dashed var(--border-2)}.copy-row{display:flex;align-items:center;gap:10px;background:var(--bg-2);border-radius:9px;padding:8px 12px;margin:6px 0}.copy-row code{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.sep{border:none;border-top:1px solid var(--border);margin:14px 0}.topup-chips{display:flex;gap:8px;flex-wrap:wrap}.topup-chip{border:1px solid var(--border-2);background:var(--panel);border-radius:20px;padding:7px 14px;font-size:12.5px;font-weight:700;cursor:pointer;color:var(--text-2);font-family:inherit}.topup-chip.active{background:var(--grad-violet);color:#fff;border-color:transparent}.order-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--border);font-size:12.5px;flex-wrap:wrap}.order-row:last-child{border-bottom:none}.tx-status{font-size:10.5px;font-weight:800;padding:3px 10px;border-radius:20px;background:var(--bg-2);text-transform:uppercase}.tx-status.tx-confirmed{background:#e7f9f1;color:#0f9e6a}.tx-status.tx-pending,.tx-status.tx-pending-manual{background:var(--tint-yellow-2-bg);color:#c99a12}.tx-status.tx-rejected,.tx-status.tx-expired{background:#ffe3e8;color:#e03158}.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);padding:30px 16px}.hero-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-hero);padding:34px 32px;max-width:440px;width:100%;position:relative;text-align:center}.hero-card h1{font-size:20px;font-weight:800;margin:0 0 10px}.modal-close{position:absolute;top:16px;right:16px;border:none;background:var(--bg-2);color:var(--muted);width:30px;height:30px;border-radius:50%;cursor:pointer;font-size:14px}.modal-close:hover{color:var(--text)}.hero-badge{display:inline-block;font-size:10.5px;font-weight:800;letter-spacing:.04em;color:var(--violet);background:#f4f2ff;padding:5px 12px;border-radius:20px;margin-bottom:16px}.hero-logo{width:60px;height:60px;border-radius:18px;background:linear-gradient(140deg,var(--violet),var(--pink));display:flex;align-items:center;justify-content:center;font-size:28px;margin:0 auto 16px;box-shadow:0 14px 30px #7c5cff59}.hero-sub{font-size:13.5px;color:var(--muted);line-height:1.55;margin:0 0 16px}.hero .trial-teaser,.hero-card .trial-teaser{text-align:left}.wallet-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:16px 0}.wallet-tile{display:flex;flex-direction:column;align-items:center;gap:6px;border:1px solid var(--border);border-radius:var(--radius-md);padding:16px 8px;background:var(--panel-2);cursor:pointer;font-family:inherit}.wallet-tile:hover:not(:disabled){border-color:var(--violet);background:#f6f3ff}.wallet-tile:disabled{opacity:.5;cursor:not-allowed}.wallet-tile-icon{font-size:22px;display:flex}.wallet-tile-icon svg{width:26px;height:26px}.wallet-tile-name{font-size:12.5px;font-weight:700}.wallet-tile-status{font-size:10px;color:var(--muted)}.hero-actions{display:flex;justify-content:center;margin-top:6px}.hero-actions .btn{width:100%}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f12228c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:50;padding:20px}.tour-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f122280;z-index:70}.tour-overlay-solid{background:#0f122299;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:20px}.tour-welcome{position:relative;width:min(420px,100%);background:var(--panel);border-radius:var(--radius-lg);box-shadow:var(--shadow-hero);padding:34px 32px 28px;text-align:center}.tour-close{position:absolute;top:14px;right:14px;border:none;background:transparent;color:var(--muted);font-size:15px;cursor:pointer;width:28px;height:28px;border-radius:50%}.tour-close:hover{background:var(--bg-2);color:var(--text)}.tour-welcome-icon{display:inline-flex;align-items:center;justify-content:center;width:84px;height:84px;border-radius:24px;font-size:40px;background:var(--grad-violet);box-shadow:var(--shadow-lg);margin-bottom:18px}.tour-welcome h2{margin:0 0 10px;font-size:22px}.tour-welcome p{margin:0 0 22px;color:var(--muted);line-height:1.55}.tour-welcome-actions{display:flex;gap:10px;justify-content:center}.tour-welcome-actions .btn{min-width:120px}.tour-spotlight{position:fixed;z-index:71;border-radius:14px;box-shadow:0 0 0 4px #7c5cff8c,0 0 0 9999px #0f122280;pointer-events:none;transition:top .25s ease,left .25s ease,width .25s ease,height .25s ease}.tour-tooltip{position:fixed;z-index:72;width:320px;max-width:calc(100vw - 24px);background:var(--panel);border-radius:var(--radius-md);box-shadow:var(--shadow-hero);padding:18px 20px;transition:top .25s ease,left .25s ease}.tour-tooltip-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.tour-tooltip-icon{font-size:18px}.tour-tooltip-head strong{font-size:15px;flex:1}.tour-step-count{font-size:12px;color:var(--muted);font-weight:600}.tour-tooltip p{margin:0 0 14px;color:var(--muted);font-size:13.5px;line-height:1.5}.tour-dots{display:flex;gap:6px;margin-bottom:14px}.tour-dot{width:6px;height:6px;border-radius:50%;background:var(--border-2)}.tour-dot.active{background:var(--violet);width:16px;border-radius:4px}.tour-tooltip-actions{display:flex;align-items:center;justify-content:space-between;gap:8px}[data-tip]{position:relative}[data-tip]:after{content:attr(data-tip);position:absolute;z-index:65;left:0;bottom:calc(100% + 9px);width:max-content;max-width:260px;background:var(--navy-2);color:#fff;font-size:12px;font-weight:500;line-height:1.45;padding:8px 10px;border-radius:9px;box-shadow:var(--shadow-card);pointer-events:none;white-space:normal;text-align:left;opacity:0;transform:translateY(4px);transition:opacity .12s ease,transform .12s ease}[data-tip]:before{content:"";position:absolute;z-index:66;left:14px;bottom:calc(100% + 4px);border:5px solid transparent;border-top-color:var(--navy-2);opacity:0;pointer-events:none;transition:opacity .12s ease}[data-tip]:hover:after,[data-tip]:focus-within:after,[data-tip]:focus-visible:after{opacity:1;transform:translateY(0)}[data-tip]:hover:before,[data-tip]:focus-within:before,[data-tip]:focus-visible:before{opacity:1}[data-tip-pos=bottom]:after{bottom:auto;top:calc(100% + 9px);transform:translateY(-4px)}[data-tip-pos=bottom]:hover:after,[data-tip-pos=bottom]:focus-within:after{transform:translateY(0)}[data-tip-pos=bottom]:before{bottom:auto;top:calc(100% + 4px);border-top-color:transparent;border-bottom-color:var(--navy-2)}.scope-group{margin-top:14px}.scope-group-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.scope-group-title{font-size:12.5px;font-weight:700;color:var(--text)}.scope-group-pro .scope-group-title{color:var(--muted)}.scope-group-count{font-size:11px;font-weight:700;color:var(--muted);background:var(--bg-2);padding:2px 8px;border-radius:20px}.scope-group-divider{border:none;border-top:1px dashed var(--border-2);margin:18px 0 4px}.plan-features{list-style:none;margin:10px 0 14px;padding:0;display:flex;flex-direction:column;gap:7px}.plan-features li{position:relative;padding-left:20px;font-size:13px;line-height:1.45;color:var(--text)}.plan-features li:before{content:"✓";position:absolute;left:0;top:0;color:var(--violet);font-weight:800;font-size:12px}@media (max-width: 1180px){.kpi-row,.stat-row,.findings-grid,.recent-findings-row,.filetype-grid,.counts-grid{grid-template-columns:repeat(2,1fr)}.lower-grid,.dash-grid,.plans-grid,.feature-strip{grid-template-columns:1fr}}@media (max-width: 860px){.shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;flex-direction:column;padding:14px 16px}.brand{padding:2px 4px 12px}.sidebar nav{flex-direction:row;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:6px;margin:0 -16px;padding:0 16px 2px}.sidebar nav::-webkit-scrollbar{display:none}.nav-btn{flex:none;white-space:nowrap;padding:9px 14px}.sidebar-footer{width:100%;margin-top:14px}.scan-row-head{grid-template-columns:auto 1fr auto}.scan-row-head>span:nth-child(4),.scan-row-head>span:nth-child(5){display:none}}@media (max-width: 560px){.main{padding:18px 14px 44px}.page-head h1,.greet h1{font-size:19px}.page-icon{width:38px;height:38px;min-width:38px;font-size:17px}.card{padding:16px 15px}.kpi-row,.stat-row,.findings-grid,.recent-findings-row,.filetype-grid,.counts-grid,.checkbox-grid,.wallet-grid{grid-template-columns:1fr}.plans-grid{gap:14px}.btn-row .btn,.btn-row .btn-primary{flex:1 1 auto}.tb-right{width:100%;justify-content:flex-start}.modal-backdrop{padding:12px}.hero-card{padding:26px 20px}}
