@import "https://fonts.googleapis.com/css2?family=Inter:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,400&family=JetBrains+Mono:wght@400;500;600&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}:root{--bg:#05070f;--bg2:#090d1a;--surface:#0d1120;--surface2:#111827;--surface3:#1a2235;--bd:#ffffff0d;--bd2:#ffffff17;--bd3:#ffffff29;--t1:#f0f4ff;--t2:#c4cfe8;--t3:#8896b8;--t4:#55688a;--brand:#4f8ef7;--brand-h:#6098f8;--brand-dim:#4f8ef71a;--brand-bd:#4f8ef740;--cyan:#00c8ef;--cyan2:#5dd8f0;--cg:#00c8ef12;--cgb:#00c8ef2e;--green:#0ea874;--amber:#e89c20;--rose:#e83f5a;--blue:#3b82f6;--sans:"Inter", system-ui, -apple-system, sans-serif;--mono:"JetBrains Mono", ui-monospace, "Cascadia Code", monospace;--shadow-sm:0 1px 3px #0006, 0 1px 2px #00000040;--shadow-md:0 4px 16px #00000080, 0 2px 6px #0000004d;--shadow-lg:0 12px 40px #000000a6, 0 4px 16px #0006;--t-fast:.1s ease;--t-base:.15s ease;--t-slow:.22s ease;--t-spring:.22s cubic-bezier(.34,1.56,.64,1);--ease-out:cubic-bezier(.22,1,.36,1)}html,body{background:var(--bg);height:100%;color:var(--t2);font-family:var(--sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);font-size:15px;line-height:1.6}#root{min-height:100dvh}.app-loading{background:var(--bg);position:fixed;inset:0}.login-back-link{color:var(--t4);transition:color var(--t-base);font-size:12px;text-decoration:none}.login-back-link:hover{color:var(--t2)}::selection{color:var(--t1);background:#4f8ef733}a:focus-visible,button:focus-visible,input:focus-visible{outline-offset:2px;outline:2px solid #4f8ef799}.bg-grid{z-index:0;pointer-events:none;background-image:linear-gradient(#4f8ef705 1px,#0000 1px),linear-gradient(90deg,#4f8ef705 1px,#0000 1px);background-size:52px 52px;position:fixed;inset:0;-webkit-mask-image:radial-gradient(80% 80% at 50% 30%,#000 20%,#0000 100%);mask-image:radial-gradient(80% 80% at 50% 30%,#000 20%,#0000 100%)}.bg-glow{z-index:0;pointer-events:none;background:radial-gradient(55% 45% at 50% -5%,#4f8ef70d 0%,#0000 60%);position:fixed;inset:0}.login-root{justify-content:center;align-items:center;min-height:100dvh;display:flex;position:relative;overflow:hidden}.login-card{z-index:10;background:var(--surface);border:1px solid var(--bd2);width:100%;max-width:380px;box-shadow:var(--shadow-lg), 0 0 0 1px #4f8ef70a;border-radius:14px;margin:24px;padding:40px 36px 36px;position:relative}.login-logo{justify-content:center;margin-bottom:24px;display:flex}.login-logo-icon{background:var(--brand-dim);border:1px solid var(--brand-bd);border-radius:12px;place-items:center;width:44px;height:44px;display:grid;box-shadow:0 0 24px #4f8ef71a}.login-tag{font-family:var(--sans);letter-spacing:.05em;text-transform:uppercase;color:var(--t4);text-align:center;margin-bottom:10px;font-size:11px;font-weight:600}.login-title{letter-spacing:-.035em;color:var(--t1);text-align:center;margin-bottom:6px;font-size:22px;font-weight:700}.login-sub{color:var(--t3);text-align:center;margin-bottom:32px;font-size:14px;line-height:1.5}.login-form{flex-direction:column;gap:18px;display:flex}.field-group{flex-direction:column;gap:6px;display:flex}.field-label{font-family:var(--sans);color:var(--t2);font-size:13px;font-weight:500}.field-input{background:var(--bg2);border:1px solid var(--bd2);width:100%;color:var(--t1);font-family:var(--sans);transition:border-color var(--t-base), box-shadow var(--t-base);border-radius:8px;outline:none;padding:10px 14px;font-size:14px}.field-input::placeholder{color:var(--t4);opacity:1}.field-input:focus{border-color:var(--brand-bd);outline:none;box-shadow:0 0 0 3px #4f8ef71a}.login-error{color:#fb7185;background:#e83f5a12;border:1px solid #e83f5a33;border-radius:8px;align-items:center;gap:9px;padding:10px 14px;font-size:13px;line-height:1.4;display:flex}.login-error-dot{background:var(--rose);border-radius:50%;flex-shrink:0;width:5px;height:5px}.login-btn{background:var(--brand);color:#fff;width:100%;font-family:var(--sans);letter-spacing:-.01em;cursor:pointer;transition:background var(--t-base), box-shadow var(--t-base), transform var(--t-fast);border:none;border-radius:9px;margin-top:6px;padding:11px;font-size:14px;font-weight:600;box-shadow:0 1px 3px #0000004d,0 0 0 1px #4f8ef740}.login-btn:hover:not(:disabled){background:var(--brand-h);transform:translateY(-1px);box-shadow:0 4px 16px #4f8ef759,0 0 0 1px #4f8ef766}.login-btn:active:not(:disabled){transform:scale(.99)}.login-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.login-btn-inner{justify-content:center;align-items:center;gap:8px;display:flex}.spinner{border:1.5px solid #ffffff40;border-top-color:#fff;border-radius:50%;width:13px;height:13px;animation:.65s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.login-footer{color:var(--t4);text-align:center;margin-top:22px;font-size:12px}.dash-root{min-height:100dvh;position:relative}.dash-nav{z-index:300;padding-top:env(safe-area-inset-top);-webkit-backdrop-filter:blur(24px)saturate(1.4);backdrop-filter:blur(24px)saturate(1.4);border-bottom:1px solid var(--bd);background:#05070fe0;position:sticky;top:0}.nav-i{justify-content:space-between;align-items:center;gap:16px;max-width:1200px;height:58px;margin:0 auto;padding:0 clamp(20px,4vw,48px);display:flex}.logo{color:inherit;align-items:center;gap:10px;text-decoration:none;display:flex}.logo-icon{background:var(--brand-dim);border:1px solid var(--brand-bd);border-radius:8px;flex-shrink:0;place-items:center;width:30px;height:30px;display:grid}.logo-text{flex-direction:column;gap:0;display:flex}.logo-name{font-family:var(--sans);color:var(--t1);letter-spacing:-.03em;font-size:14px;font-weight:700;line-height:1.2}.logo-name em{color:var(--brand);font-style:normal}.logo-sub{color:var(--t4);letter-spacing:.06em;text-transform:uppercase;font-size:10px;font-weight:500}.nav-r{align-items:center;gap:10px;display:flex}.nav-divider{background:var(--bd2);width:1px;height:18px}.nav-status{font-family:var(--sans);color:var(--t4);align-items:center;gap:6px;font-size:12px;font-weight:500;display:flex}.nav-status-dot{background:var(--green);width:6px;height:6px;box-shadow:0 0 6px var(--green);border-radius:50%;animation:2.5s ease-in-out infinite pulse-dot}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.35}}.nav-user{align-items:center;gap:8px;display:flex}.nav-avatar{border:1.5px solid var(--bd2);object-fit:cover;border-radius:50%;width:24px;height:24px}.nav-avatar-fallback{border:1.5px solid var(--bd2);background:var(--brand-dim);width:24px;height:24px;color:var(--brand);border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:grid}.nav-user-name{font-family:var(--sans);color:var(--t3);text-overflow:ellipsis;white-space:nowrap;max-width:160px;font-size:13px;font-weight:500;overflow:hidden}.nav-logout-btn{font-family:var(--sans);border:1px solid var(--bd2);color:var(--t3);cursor:pointer;transition:color var(--t-base), border-color var(--t-base), background var(--t-base);background:0 0;border-radius:7px;padding:5px 12px;font-size:13px;font-weight:500}.nav-logout-btn:hover{color:var(--rose);background:#e83f5a0d;border-color:#e83f5a4d}.wrap{z-index:2;max-width:1200px;margin:0 auto;padding:0 clamp(20px,4vw,48px);position:relative}.dash-main{padding-bottom:80px}.dash-hero{padding:52px 0 40px}.hero-eyebrow{font-family:var(--sans);color:var(--t3);letter-spacing:.04em;align-items:center;gap:8px;margin-bottom:20px;font-size:12px;font-weight:500;display:inline-flex}.hero-eyebrow-dot{background:var(--brand);width:5px;height:5px;box-shadow:0 0 8px var(--brand);border-radius:50%}.hero-h1{letter-spacing:-.04em;color:var(--t1);margin-bottom:28px;font-size:clamp(1.7rem,3.5vw,2.6rem);font-weight:800;line-height:1.1}.hero-h1 .accent{color:var(--brand);font-weight:700}.hero-h1 .dim{color:var(--t3);font-weight:600}.input-wrap{max-width:560px}.input-label{font-family:var(--sans);color:var(--t3);align-items:center;gap:6px;margin-bottom:8px;font-size:13px;font-weight:500;display:flex}.input-shell{background:var(--surface);border:1px solid var(--bd2);box-shadow:var(--shadow-sm);transition:border-color var(--t-base), box-shadow var(--t-base);border-radius:10px;display:flex}.input-shell:focus-within{border-color:var(--brand-bd);box-shadow:0 0 0 3px #4f8ef717, var(--shadow-sm)}#url-input{font-size:14px;font-family:var(--mono);color:var(--t1);background:0 0;border:none;outline:none;flex:1;min-width:0;padding:13px 16px}#url-input::placeholder{color:var(--t4);opacity:1}#url-input:disabled{opacity:.5}#scan-btn{min-width:96px;min-height:38px;font-family:var(--sans);letter-spacing:-.01em;background:var(--brand);color:#fff;cursor:pointer;transition:background var(--t-base), box-shadow var(--t-base), transform var(--t-fast);white-space:nowrap;border:none;border-radius:7px;margin:5px;padding:0 22px;font-size:13px;font-weight:600;box-shadow:0 1px 3px #00000040,0 0 0 1px #4f8ef733}#scan-btn:hover:not(:disabled){background:var(--brand-h);transform:translateY(-1px);box-shadow:0 3px 12px #4f8ef759,0 0 0 1px #4f8ef759}#scan-btn:disabled{opacity:.3;cursor:not-allowed;box-shadow:none;transform:none}.scan-err{font-family:var(--sans);color:var(--rose);align-items:center;gap:6px;margin-top:8px;padding:0 2px;font-size:13px;display:flex}.scan-err:before{content:"";background:var(--rose);border-radius:50%;flex-shrink:0;width:4px;height:4px}.dash-content{grid-template-columns:220px 1fr;align-items:start;gap:16px;display:grid}.dash-content-full{grid-template-columns:1fr}@media (width<=860px){.dash-content{grid-template-columns:1fr}}.dash-history{background:var(--surface);border:1px solid var(--bd);border-radius:12px;flex-direction:column;max-height:calc(100vh - 82px);display:flex;position:sticky;top:70px;overflow:hidden}.hist-hd{border-bottom:1px solid var(--bd);flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.hist-title{font-family:var(--sans);color:var(--t3);font-size:12px;font-weight:600}.hist-count{font-family:var(--mono);color:var(--t3);background:var(--surface2);border:1px solid var(--bd2);border-radius:4px;padding:1px 7px;font-size:11px;font-weight:600}.hist-list{scrollbar-width:thin;scrollbar-color:#ffffff0f transparent;flex:1;overflow-y:auto}.hist-list::-webkit-scrollbar{width:3px}.hist-list::-webkit-scrollbar-thumb{background:var(--bd2);border-radius:999px}.hist-empty{font-family:var(--sans);color:var(--t4);text-align:center;padding:24px 16px;font-size:13px;line-height:1.5}.hist-item{cursor:pointer;text-align:left;width:100%;transition:background var(--t-base), border-color var(--t-base);background:0 0;border:none;border-left:2px solid #0000;align-items:center;gap:9px;padding:10px 14px;display:flex}.hist-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.hist-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.hist-url{color:var(--t1);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:500;overflow:hidden}.hist-meta{font-family:var(--mono);color:var(--t4);font-size:10px}.hist-score{font-weight:700}.hist-status{font-family:var(--mono);text-transform:uppercase;letter-spacing:.03em;border:1px solid #0000;border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:9px;font-weight:700}.hist-completed{color:#34d399;background:#0ea8741a;border-color:#0ea87433}.hist-failed{color:#fb7185;background:#e83f5a1a;border-color:#e83f5a33}.hist-running{color:#fbbf24;background:#e89c201a;border-color:#e89c2033}.hist-pending{color:#93c5fd;background:#4f8ef71a;border-color:#4f8ef733}.hist-filters{border-bottom:1px solid var(--bd);flex-shrink:0;align-items:center;gap:3px;padding:8px 12px;display:flex}.hist-filter-btn{font-family:var(--sans);color:var(--t4);cursor:pointer;transition:all var(--t-base);background:0 0;border:1px solid #0000;border-radius:5px;padding:3px 9px;font-size:11px;font-weight:500}.hist-filter-btn:hover{color:var(--t2);background:var(--surface2)}.hist-filter-btn.active{background:var(--brand-dim);color:var(--brand);border-color:var(--brand-bd)}.hist-clear-btn{border:1px solid var(--bd2);width:26px;height:26px;color:var(--t4);cursor:pointer;transition:all var(--t-base);background:0 0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;display:flex}.hist-clear-btn:hover{color:var(--rose);background:#e83f5a0f;border-color:#e83f5a4d}.hist-clear-btn.confirm{width:auto;font-family:var(--sans);color:var(--rose);background:#e83f5a14;border-color:#e83f5a59;padding:3px 8px;font-size:11px;font-weight:600;animation:.9s ease-in-out infinite pulse-confirm}@keyframes pulse-confirm{0%,to{opacity:1}50%{opacity:.65}}.hist-group{flex-direction:column;display:flex}.hist-group-label{font-family:var(--sans);color:var(--t4);letter-spacing:.04em;text-transform:uppercase;background:var(--surface);z-index:1;padding:8px 14px 4px;font-size:10px;font-weight:600;position:sticky;top:0}.hist-item{cursor:pointer;text-align:left;width:100%;transition:background var(--t-base), border-color var(--t-base), opacity var(--t-base);background:0 0;border:none;border-left:2px solid #0000;align-items:center;gap:9px;padding:9px 10px 9px 14px;display:flex;position:relative}.hist-item:hover{background:#ffffff06}.hist-item.active{border-left-color:var(--brand);background:#4f8ef70f}.hist-item.deleting{opacity:.4;pointer-events:none}.hist-del-btn{width:22px;height:22px;color:var(--t4);cursor:pointer;opacity:0;transition:opacity var(--t-base), color var(--t-base), background var(--t-base), border-color var(--t-base);background:0 0;border:1px solid #0000;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.hist-item:hover .hist-del-btn{opacity:1}.hist-del-btn:hover{color:var(--rose);background:#e83f5a1a;border-color:#e83f5a40}.hist-del-spin{border:1.5px solid #ffffff26;border-top-color:var(--t3);border-radius:50%;width:10px;height:10px;animation:.6s linear infinite spin;display:inline-block}.dash-panel{min-width:0}.sc-center{grid-template-columns:172px 1fr;align-items:start;gap:36px;max-width:820px;margin:48px auto;display:grid}.sc-left{flex-direction:column;align-items:center;gap:16px;display:flex}.sc-radar{flex-shrink:0;width:160px;height:160px;position:relative}.sc-radar svg{width:160px;height:160px;position:absolute;inset:0}.radar-ring{fill:none;stroke:#00c8ef1a;stroke-width:1px}.radar-cross{stroke:#00c8ef12;stroke-width:.5px}.radar-sweep{background:conic-gradient(#0000 0deg,#00c8ef00 260deg,#00c8ef1a 300deg,#00c8ef33 360deg);border-radius:50%;animation:2.4s linear infinite radar-spin;position:absolute;inset:0}.radar-beam{transform-origin:top;background:linear-gradient(#00c8efd9,#00c8ef00);width:2px;height:50%;animation:2.4s linear infinite radar-spin;position:absolute;top:50%;left:50%;transform:translate(-50%)rotate(0)}.radar-core{background:var(--bg);border:1px solid #00c8ef2e;border-radius:50%;place-items:center;display:grid;position:absolute;inset:58px}.radar-core-dot{background:var(--cyan);width:7px;height:7px;box-shadow:0 0 10px var(--cyan);border-radius:50%;animation:1.6s ease-in-out infinite pulse-dot}@keyframes radar-spin{to{transform:rotate(360deg)}}.sc-right{min-width:0}.sc-title{color:var(--t1);letter-spacing:-.03em;margin-bottom:4px;font-size:17px;font-weight:700}.sc-sub{font-family:var(--mono);color:var(--t4);margin-bottom:18px;font-size:11px}.sc-card{background:var(--surface2);border:1px solid var(--bd2);border-radius:10px;overflow:hidden}.sc-card-hd{border-bottom:1px solid var(--bd);background:var(--bg2);align-items:center;gap:8px;padding:9px 14px;display:flex}.sc-dots{gap:5px;display:flex}.sc-dot{border-radius:50%;width:9px;height:9px}.sc-card-url{font-family:var(--mono);color:var(--t3);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:11px;overflow:hidden}.sc-card-bd{padding:14px 16px 16px}.sc-prog-row{align-items:center;gap:10px;margin-bottom:10px;display:flex}.sc-prog-bar{background:#ffffff0d;border-radius:999px;flex:1;height:2px;overflow:hidden}.sc-prog-fill{background:linear-gradient(90deg, var(--brand), #7cb3ff, var(--brand));background-size:200%;border-radius:999px;height:100%;transition:width .3s ease-out;animation:2.5s linear infinite shimmer-prog}.sc-prog-pct{font-family:var(--mono);color:var(--t3);text-align:right;min-width:34px;font-size:11px;font-weight:600}.sc-phase{font-family:var(--sans);color:var(--t2);min-height:17px;margin-bottom:10px;font-size:12px}.term-log{background:var(--bg);border:1px solid var(--bd);font-family:var(--mono);scrollbar-width:thin;scrollbar-color:var(--bd) transparent;border-radius:7px;max-height:200px;padding:10px 12px;font-size:10.5px;line-height:1.8;overflow-y:auto}.tl-row{grid-template-columns:60px 68px 1fr;align-items:baseline;gap:8px;padding:1px 0;display:grid}.tl-ts{color:var(--t4);font-size:9.5px}.tl-mod{color:var(--cyan);letter-spacing:.04em;text-transform:uppercase;font-size:9.5px;font-weight:600}.tl-msg{color:var(--t2);text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;overflow:hidden}.tl-ok{color:var(--green)}.tl-cur{background:var(--cyan);vertical-align:middle;border-radius:1px;width:5px;height:10px;margin-left:3px;animation:.85s step-end infinite blink;display:inline-block}@media (width<=620px){.sc-center{text-align:center;grid-template-columns:1fr;gap:24px}.sc-left{align-items:center}.sc-radar,.sc-radar svg{width:140px;height:140px}.radar-core{inset:52px}}.r-topbar{background:var(--surface);border:1px solid var(--bd2);box-shadow:var(--shadow-sm);border-radius:12px;flex-wrap:wrap;align-items:center;gap:20px;margin-bottom:14px;padding:20px 24px;display:flex}.r-ring-wrap{flex-shrink:0;width:72px;height:72px;position:relative}.r-ring-svg{width:72px;height:72px;transform:rotate(-90deg)}.r-ring-track{fill:none;stroke:#ffffff0d;stroke-width:5px}.r-ring-glow{fill:none;stroke-width:7px;stroke-linecap:round;stroke-dasharray:207.35;stroke-dashoffset:207.35px;opacity:.15;filter:blur(3px);transition:stroke-dashoffset 1.1s var(--ease-out), stroke .4s}.r-ring-fg{fill:none;stroke-width:5px;stroke-linecap:round;stroke-dasharray:207.35;stroke-dashoffset:207.35px;transition:stroke-dashoffset 1.1s var(--ease-out), stroke .4s}.r-ring-inner{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.r-ring-num{font-family:var(--mono);letter-spacing:-.05em;font-size:1.2rem;font-weight:700;line-height:1}.r-ring-unit{font-family:var(--mono);color:var(--t4);margin-top:2px;font-size:8px}.r-score-info{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.r-grade-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.r-grade-badge{font-family:var(--mono);letter-spacing:.04em;border-radius:5px;padding:3px 10px;font-size:11px;font-weight:700}.r-verdict{letter-spacing:-.025em;font-size:16px;font-weight:600}.r-url-line{font-family:var(--mono);color:var(--t3);text-overflow:ellipsis;white-space:nowrap;max-width:400px;font-size:12px;overflow:hidden}.r-meta-pills{flex-wrap:wrap;gap:6px;margin-top:2px;display:flex}.r-pill{font-family:var(--mono);color:var(--t4);background:var(--surface2);border:1px solid var(--bd);white-space:nowrap;border-radius:4px;padding:2px 8px;font-size:10px}.r-topbar-actions{flex-wrap:wrap;flex-shrink:0;gap:7px;margin-left:auto;display:flex}.r-btn{font-family:var(--sans);border:1px solid var(--bd2);color:var(--t2);cursor:pointer;transition:background var(--t-base), color var(--t-base), border-color var(--t-base);white-space:nowrap;background:0 0;border-radius:7px;padding:7px 15px;font-size:13px;font-weight:500}.r-btn:hover{background:var(--surface2);color:var(--t1);border-color:var(--bd3)}.r-btn.primary{background:var(--brand);border-color:var(--brand);color:#fff;box-shadow:0 1px 3px #0003}.r-btn.primary:hover{background:var(--brand-h);box-shadow:0 3px 12px #4f8ef74d}.sev-row{grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px;display:grid}.sev-card{background:var(--surface);border:1px solid var(--bd);transition:border-color var(--t-base);border-radius:10px;padding:16px 18px;position:relative;overflow:hidden}.sev-card:hover{border-color:var(--bd2)}.sev-card.sc-crit{background:linear-gradient(90deg,#e83f5a0a 0%,#0000 55%);border-left:2px solid #e83f5aa6}.sev-card.sc-high{background:linear-gradient(90deg,#e89c200a 0%,#0000 55%);border-left:2px solid #e89c20a6}.sev-card.sc-med{background:linear-gradient(90deg,#3b82f60a 0%,#0000 55%);border-left:2px solid #3b82f6a6}.sev-card.sc-pass{background:linear-gradient(90deg,#0ea8740a 0%,#0000 55%);border-left:2px solid #0ea874a6}.sev-n{font-family:var(--mono);letter-spacing:-.07em;font-variant-numeric:tabular-nums;font-size:2rem;font-weight:700;line-height:1}.sev-card.sc-crit .sev-n{color:var(--rose)}.sev-card.sc-high .sev-n{color:var(--amber)}.sev-card.sc-med .sev-n{color:#60a5fa}.sev-card.sc-pass .sev-n{color:var(--green)}.sev-lbl{font-family:var(--sans);color:var(--t3);letter-spacing:0;margin-top:6px;font-size:12px;font-weight:500}.r-layout{grid-template-columns:236px 1fr;align-items:start;gap:12px;display:grid}.r-sidebar{background:var(--surface);border:1px solid var(--bd);border-radius:12px;flex-direction:column;max-height:calc(100vh - 82px);display:flex;position:sticky;top:70px;overflow:hidden}.r-sidebar-hd{border-bottom:1px solid var(--bd);background:var(--bg2);flex-shrink:0;justify-content:space-between;align-items:center;padding:11px 14px;display:flex}.r-sidebar-title{font-family:var(--sans);color:var(--t3);font-size:12px;font-weight:600}.sb-filter{gap:3px;display:flex}.sbf-btn{font-family:var(--sans);color:var(--t4);cursor:pointer;transition:all var(--t-base);background:0 0;border:1px solid #0000;border-radius:5px;padding:3px 9px;font-size:11px;font-weight:500}.sbf-btn:hover{color:var(--t2)}.sbf-btn.active{background:var(--brand-dim);color:var(--brand);border-color:var(--brand-bd)}.r-sidebar-list{scrollbar-width:thin;scrollbar-color:#ffffff0f transparent;flex:1;overflow-y:auto}.r-sidebar-list::-webkit-scrollbar{width:3px}.r-sidebar-list::-webkit-scrollbar-thumb{background:var(--bd2);border-radius:999px}.mod-item{cursor:pointer;transition:background var(--t-base), border-color var(--t-base);border-left:2px solid #0000;align-items:center;gap:10px;padding:10px 14px;display:flex}.mod-item:hover{background:#ffffff06}.mod-item.active{border-left-color:var(--brand);background:#4f8ef70f}.mod-indicator{border-radius:50%;flex-shrink:0;width:7px;height:7px}.mod-indicator.ok{background:var(--green);box-shadow:0 0 5px #0ea87480}.mod-indicator.mid{background:var(--amber);box-shadow:0 0 5px #e89c2080}.mod-indicator.bad{background:var(--rose);box-shadow:0 0 5px #e83f5a80}.mod-text{flex:1;min-width:0}.mod-name{color:var(--t1);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:500;line-height:1.3;overflow:hidden}.mod-badges{flex-wrap:wrap;gap:3px;margin-top:4px;display:flex}.mod-badge{font-family:var(--mono);border-radius:3px;padding:1px 5px;font-size:9px;font-weight:600}.mod-badge.c{color:#fda4af;background:#e83f5a24}.mod-badge.h{color:#fcd34d;background:#e89c2021}.mod-badge.m{color:#93c5fd;background:#3b82f621}.mod-badge.l{color:#67e8f9;background:#00c8ef1a}.mod-score{font-family:var(--mono);text-align:right;letter-spacing:-.02em;flex-shrink:0;min-width:26px;font-size:12px;font-weight:700}.r-detail{flex-direction:column;gap:8px;min-width:0;display:flex}.detail-head{background:var(--surface);border:1px solid var(--bd2);box-shadow:var(--shadow-sm);border-radius:12px;flex-wrap:wrap;align-items:center;gap:16px;padding:18px 22px;display:flex}.detail-ico{width:42px;height:42px;font-family:var(--mono);border-radius:10px;flex-shrink:0;place-items:center;font-size:14px;font-weight:700;display:grid}.detail-ico.ok{color:var(--green);background:#0ea87414;border:1px solid #0ea87433}.detail-ico.mid{color:var(--amber);background:#e89c2014;border:1px solid #e89c2033}.detail-ico.bad{color:var(--rose);background:#e83f5a14;border:1px solid #e83f5a33}.detail-title-wrap{flex:1;min-width:0}.detail-title{color:var(--t1);letter-spacing:-.025em;font-size:15px;font-weight:700}.detail-chips{flex-wrap:wrap;gap:5px;margin-top:6px;display:flex}.detail-chip{font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;border:1px solid #0000;border-radius:4px;padding:2px 8px;font-size:9px;font-weight:700}.detail-chip.c{color:#fda4af;background:#e83f5a1f;border-color:#e83f5a40}.detail-chip.h{color:#fcd34d;background:#e89c201c;border-color:#e89c203d}.detail-chip.m{color:#93c5fd;background:#3b82f61c;border-color:#3b82f63d}.detail-chip.l{color:#67e8f9;background:#00c8ef17;border-color:#00c8ef33}.detail-chip.ok{color:#6ee7b7;background:#0ea87417;border-color:#0ea87433}.detail-score-wrap{text-align:right;flex-shrink:0}.detail-score-num{font-family:var(--mono);letter-spacing:-.05em;font-size:1.6rem;font-weight:700;line-height:1}.detail-score-sub{font-family:var(--mono);color:var(--t4);margin-top:2px;font-size:9px}.detail-score-bar{background:#ffffff0f;border-radius:999px;width:56px;height:3px;margin-top:5px;margin-left:auto;overflow:hidden}.detail-score-fill{border-radius:999px;height:100%}.detail-err{font-family:var(--sans);color:var(--rose);background:#e83f5a0a;border:1px solid #e83f5a26;border-radius:8px;padding:12px 16px;font-size:13px}.detail-all-ok{background:var(--surface);font-family:var(--sans);color:var(--t3);border:1px solid #0ea87426;border-radius:8px;align-items:center;gap:12px;padding:16px 18px;font-size:13px;display:flex}.detail-ok-ico{width:22px;height:22px;color:var(--green);background:#0ea8741a;border:1px solid #0ea87433;border-radius:5px;flex-shrink:0;place-items:center;font-size:11px;display:grid}.detail-empty{text-align:center;background:var(--surface);border:1px solid var(--bd);color:var(--t4);font-family:var(--sans);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:56px 24px;font-size:13px;line-height:1.7;display:flex}.detail-empty-sym{opacity:.2;font-size:28px}.findings-wrap{flex-direction:column;gap:5px;display:flex}.fc{background:var(--surface);border:1px solid var(--bd);transition:border-color var(--t-base);border-radius:9px;overflow:hidden}.fc:hover{border-color:var(--bd3)}.fc.fc-crit{border-left:3px solid #e83f5ab3}.fc.fc-high{border-left:3px solid #e89c20b3}.fc.fc-med{border-left:3px solid #3b82f6b3}.fc.fc-low{border-left:3px solid #00c8ef80}.fc.fc-ok{opacity:.65;border-left:3px solid #0ea87466}.fc-top{align-items:flex-start;gap:10px;padding:12px 16px;display:flex}.fc-sev-badge{font-family:var(--mono);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;border-radius:5px;flex-shrink:0;margin-top:1px;padding:3px 8px;font-size:10px;font-weight:700}.fc-check{color:var(--t1);flex:1;min-width:0;font-size:13px;font-weight:500;line-height:1.45}.fc-ok-mark{width:20px;height:20px;font-family:var(--mono);color:var(--green);background:#0ea8741a;border:1px solid #0ea87433;border-radius:4px;flex-shrink:0;place-items:center;margin-top:1px;font-size:10px;font-weight:700;display:grid}.fc-detail{color:var(--t2);border-top:1px solid var(--bd);padding:10px 16px 12px;font-size:13px;line-height:1.7}.fc-collapse-btn{background:var(--bg2);border:none;border-top:1px solid var(--bd);cursor:pointer;width:100%;font:inherit;color:inherit;text-align:left;transition:background var(--t-base);justify-content:space-between;align-items:center;padding:8px 16px;display:flex}.fc-collapse-btn:hover{background:var(--surface2)}.fc-collapse-lbl{font-family:var(--sans);color:var(--t3);letter-spacing:0;text-transform:none;align-items:center;gap:6px;font-size:12px;font-weight:500;display:flex}.fc-collapse-arrow{color:var(--t4);transition:transform var(--t-slow);font-size:8px}.fc-collapse-arrow.open{transform:rotate(180deg)}.fc-collapse-body{background:var(--bg);border-top:1px solid var(--bd);padding:14px 16px;display:none}.fc-collapse-body.open{display:block}.evid-kv{font-family:var(--mono);grid-template-columns:auto 1fr;gap:3px 14px;font-size:11px;line-height:1.7;display:grid}.evid-key{color:var(--t4);white-space:nowrap}.evid-val{color:#60a5fa;word-break:break-all}.evid-raw{font-family:var(--mono);color:#60a5fa;white-space:pre-wrap;word-break:break-word;font-size:11px;line-height:1.65}.rem-steps{flex-direction:column;gap:8px;display:flex}.rem-step{color:var(--t2);align-items:flex-start;gap:12px;font-size:13px;line-height:1.65;display:flex}.rem-step-n{background:var(--brand-dim);width:20px;height:20px;color:var(--brand);border:1px solid var(--brand-bd);font-family:var(--mono);border-radius:5px;flex-shrink:0;place-items:center;margin-top:1px;font-size:10px;font-weight:700;display:grid}.rem-step-txt{flex:1;min-width:0}.rem-step-txt code{font-family:var(--mono);color:var(--cyan2);background:#ffffff12;border-radius:3px;padding:1px 5px;font-size:10px}.pass-section{background:var(--surface);border:1px solid var(--bd);border-radius:9px;padding:12px 16px}.pass-section-hd{font-family:var(--sans);color:var(--t4);align-items:center;gap:7px;margin-bottom:9px;font-size:12px;font-weight:500;display:flex}.pass-list{flex-direction:column;gap:5px;list-style:none;display:flex}.pass-item{font-family:var(--sans);color:var(--t3);align-items:flex-start;gap:9px;font-size:12px;line-height:1.5;display:flex}.pass-item-check{color:var(--green);flex-shrink:0;margin-top:2px;font-size:10px;font-weight:700}.empty-state{min-height:280px;font-family:var(--sans);color:var(--t4);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:14px;display:flex}.scan-failed{justify-content:center;align-items:center;min-height:200px;display:flex}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes shimmer-prog{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes fade-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media (width<=900px){.r-layout{grid-template-columns:1fr}.r-sidebar{max-height:none;position:static}.r-sidebar-list{max-height:220px}}@media (width<=760px){.sev-row{grid-template-columns:repeat(2,1fr);gap:8px}.r-topbar{padding:16px}.r-topbar-actions{width:100%;margin-left:0}.r-btn{text-align:center;flex:1}}@media (width<=480px){.r-url-line{display:none}.r-verdict{font-size:14px}}.input-shortcut-badge{background:0 0;border:none;flex-shrink:0;align-items:center;margin:5px 0;padding:0 4px;display:flex}.input-shortcut-key{font-family:var(--mono);color:var(--t4);background:var(--surface2);border:1px solid var(--bd2);letter-spacing:.02em;white-space:nowrap;-webkit-user-select:none;user-select:none;transition:color var(--t-base), border-color var(--t-base);border-radius:4px;padding:2px 6px;font-size:10px;font-weight:600}.input-shell:focus-within .input-shortcut-key{color:var(--brand);border-color:var(--brand-bd)}.toast-container{z-index:9999;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:24px;right:24px}.toast{pointer-events:all;background:var(--surface2);border:1px solid var(--bd2);box-shadow:var(--shadow-lg);font-family:var(--sans);color:var(--t1);min-width:220px;max-width:320px;animation:toast-slide-in .22s var(--ease-out) both;border-radius:9px;align-items:center;gap:10px;padding:11px 14px;font-size:13px;display:flex}@keyframes toast-slide-in{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}.toast-success{background:linear-gradient(to right, #0ea8740f, var(--surface2));border-color:#0ea8744d}.toast-error{background:linear-gradient(to right, #e83f5a0f, var(--surface2));border-color:#e83f5a4d}.toast-info{border-color:var(--brand-bd);background:linear-gradient(to right, var(--brand-dim), var(--surface2))}.toast-icon{font-family:var(--mono);flex-shrink:0;font-size:13px;font-weight:700}.toast-success .toast-icon{color:var(--green)}.toast-error .toast-icon{color:var(--rose)}.toast-info .toast-icon{color:var(--brand)}.toast-msg{min-width:0;color:var(--t1);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:13px;overflow:hidden}.toast-close{color:var(--t4);cursor:pointer;transition:color var(--t-base);background:0 0;border:none;flex-shrink:0;padding:0 2px;font-size:16px;line-height:1}.toast-close:hover{color:var(--t2)}.es-shield-wrap{background:var(--brand-dim);border:1px solid var(--brand-bd);border-radius:50%;place-items:center;width:72px;height:72px;animation:3s ease-in-out infinite es-pulse;display:grid;box-shadow:0 0 #4f8ef740}@keyframes es-pulse{0%,to{box-shadow:0 0 #4f8ef733}50%{box-shadow:0 0 0 10px #4f8ef700}}.es-shield{display:block}.es-title{color:var(--t1);letter-spacing:-.025em;margin-top:4px;font-size:16px;font-weight:700}.es-sub{color:var(--t3);margin-top:2px;font-size:13px}.es-chips{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:4px;display:flex}.es-chip{font-family:var(--mono);background:var(--surface2);border:1px solid var(--bd2);color:var(--t2);cursor:pointer;transition:background var(--t-base), color var(--t-base), border-color var(--t-base), transform var(--t-fast);border-radius:6px;padding:5px 12px;font-size:12px;font-weight:500}.es-chip:hover{background:var(--brand-dim);border-color:var(--brand-bd);color:var(--brand);transform:translateY(-1px)}.es-chip:active{transform:scale(.97)}.r-breadcrumb{font-family:var(--mono);color:var(--t4);flex-wrap:wrap;align-items:center;gap:8px;padding:0 2px 10px;font-size:11px;display:flex}.r-breadcrumb-back{color:var(--t3);font-family:var(--sans);cursor:pointer;transition:color var(--t-base), background var(--t-base);background:0 0;border:none;border-radius:5px;align-items:center;gap:5px;padding:3px 6px;font-size:12px;font-weight:500;display:inline-flex}.r-breadcrumb-back:hover{color:var(--brand);background:var(--brand-dim)}.r-breadcrumb-sep{color:var(--t4);font-size:13px;line-height:1}.r-breadcrumb-url{font-family:var(--mono);color:var(--t2);letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;max-width:280px;font-size:11px;overflow:hidden}.r-breadcrumb-ts{font-family:var(--mono);color:var(--t4);margin-left:auto;font-size:10px}.sc-mods-detected{flex-wrap:wrap;align-items:flex-start;gap:10px;margin-bottom:14px;display:flex}.sc-mods-label{font-family:var(--sans);color:var(--t3);white-space:nowrap;padding-top:3px;font-size:11px;font-weight:500}.sc-mods-chips{flex-wrap:wrap;gap:5px;display:flex}.sc-mod-chip{font-family:var(--mono);background:var(--brand-dim);border:1px solid var(--brand-bd);color:var(--brand);letter-spacing:.03em;animation:chip-pop .2s var(--t-spring) both;border-radius:4px;padding:2px 8px;font-size:10px;font-weight:600}@keyframes chip-pop{0%{opacity:0;transform:scale(.75)}to{opacity:1;transform:scale(1)}}@keyframes lp-blink{0%,to{opacity:1}50%{opacity:0}}@keyframes lp-cursor{0%,to{opacity:1}50%{opacity:0}}@keyframes lp-scan-in{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:translate(0)}}.lp-root{min-height:100dvh;color:var(--t2);font-family:var(--sans);background:#08090d;position:relative;overflow-x:hidden}.lp-dot-grid{z-index:0;pointer-events:none;background-image:radial-gradient(#ffffff0b 1px,#0000 1px);background-size:28px 28px;position:fixed;inset:0;-webkit-mask-image:radial-gradient(80% 60% at 50% 0,#000 0%,#0000 100%);mask-image:radial-gradient(80% 60% at 50% 0,#000 0%,#0000 100%)}.lp-wrap{z-index:2;max-width:1120px;margin:0 auto;padding:0 clamp(20px,5vw,52px);position:relative}.lp-fade{opacity:0;transition:opacity .5s var(--ease-out), transform .5s var(--ease-out);transform:translateY(14px)}.lp-fade.lp-vis{opacity:1;transform:none}.lp-fade-d1{transition-delay:.1s}.lp-fade-d2{transition-delay:.2s}.lp-nav{z-index:400;padding-top:env(safe-area-inset-top);-webkit-backdrop-filter:blur(20px)saturate(1.3);backdrop-filter:blur(20px)saturate(1.3);background:#08090de0;border-bottom:1px solid #ffffff0f;position:sticky;top:0}.lp-nav-inner{align-items:center;gap:0;max-width:1120px;height:58px;margin:0 auto;padding:0 clamp(20px,5vw,52px);display:flex}.lp-logo{color:var(--t1);flex-shrink:0;align-items:center;gap:8px;text-decoration:none;display:flex}.lp-logo-svg{color:var(--brand);flex-shrink:0}.lp-logo-name{letter-spacing:-.03em;color:var(--t1);font-size:14px;font-weight:700}.lp-logo-sub{color:var(--t4);font-weight:400}.lp-nav-mid{align-items:center;gap:2px;margin-left:32px;display:flex}.lp-nav-lnk{color:var(--t3);transition:color var(--t-base), background var(--t-base);border-radius:7px;padding:6px 12px;font-size:13.5px;font-weight:500;text-decoration:none}.lp-nav-lnk:hover{color:var(--t1);background:#ffffff0d}.lp-nav-right{align-items:center;gap:14px;margin-left:auto;display:flex}.lp-nav-badge{font-family:var(--mono);color:var(--t4);letter-spacing:.02em;white-space:nowrap;background:#ffffff06;border:1px solid #ffffff12;border-radius:5px;padding:4px 10px;font-size:11px}.lp-nav-btn{background:var(--brand);color:#fff;letter-spacing:-.01em;transition:background var(--t-base), opacity var(--t-base), transform var(--t-fast);white-space:nowrap;border-radius:8px;flex-shrink:0;padding:7px 16px;font-size:13px;font-weight:600;text-decoration:none}.lp-nav-btn:hover{background:var(--brand-h);transform:translateY(-1px)}.lp-hero{padding:clamp(64px,9vw,112px) 0 0}.lp-hero-inner{text-align:center}.lp-hero-kicker{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--t3);align-items:center;gap:8px;margin-bottom:28px;font-size:11px;font-weight:500;display:inline-flex}.lp-kicker-dot{background:var(--green);border-radius:50%;flex-shrink:0;width:6px;height:6px;box-shadow:0 0 0 3px #0ea8742e}.lp-h1{letter-spacing:-.05em;color:var(--t1);margin-bottom:20px;font-size:clamp(2.4rem,5.5vw,4.2rem);font-weight:800;line-height:1.06}.lp-h1-em{color:var(--brand);display:block}.lp-hero-sub{color:var(--t3);max-width:520px;margin:0 auto 36px;font-size:clamp(15px,1.6vw,17px);line-height:1.7}.lp-hero-cta{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;margin-bottom:clamp(48px,6vw,80px);display:flex}.lp-cta-btn{letter-spacing:-.01em;background:var(--brand);color:#fff;transition:background var(--t-base), transform var(--t-fast), box-shadow var(--t-base);white-space:nowrap;border-radius:9px;align-items:center;padding:11px 24px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex;box-shadow:0 1px 3px #0006,inset 0 1px #ffffff1f}.lp-cta-btn:hover{background:var(--brand-h);transform:translateY(-2px);box-shadow:0 6px 20px #4f8ef766,inset 0 1px #ffffff1f}.lp-cta-btn:active{transform:scale(.99)}.lp-cta-btn-lg{padding:13px 30px;font-size:15px}.lp-ghost-btn{color:var(--t3);transition:color var(--t-base), border-color var(--t-base), background var(--t-base);white-space:nowrap;border:1px solid #ffffff1a;border-radius:9px;align-items:center;padding:11px 18px;font-size:14px;font-weight:500;text-decoration:none;display:inline-flex}.lp-ghost-btn:hover{color:var(--t1);background:#ffffff08;border-color:#ffffff2e}.lp-hero-demo{z-index:2;max-width:860px;margin:0 auto;padding:0 clamp(20px,5vw,52px);position:relative}.lp-term{font-family:var(--mono);background:#0d0f14;border:1px solid #ffffff14;border-radius:12px;font-size:12.5px;line-height:1.6;overflow:hidden;box-shadow:0 24px 80px #0009,inset 0 1px #ffffff0d}.lp-term-titlebar{background:#13151b;border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:10px 16px;display:flex}.lp-term-dots{gap:6px;display:flex}.lp-term-dots span{border-radius:50%;width:11px;height:11px}.lp-term-dots span:first-child{background:#ff5f57}.lp-term-dots span:nth-child(2){background:#febc2e}.lp-term-dots span:nth-child(3){background:#28c840}.lp-term-title{color:#ffffff4d;letter-spacing:.02em;font-size:11px}.lp-term-body{padding:18px 22px 20px;overflow-x:auto}.lp-term-line{white-space:pre;flex-wrap:wrap;align-items:baseline;gap:0;display:flex}.lp-term-spacer{height:6px}.lp-term-rule{background:#ffffff0f;height:1px;margin:6px 0}.lp-tc-prompt{color:var(--brand)}.lp-tc-sep{color:#ffffff40}.lp-tc-path{color:var(--green)}.lp-tc-cmd{color:var(--t1)}.lp-tc-dim{color:var(--t3);align-items:baseline;gap:4px;font-size:12px;display:flex}.lp-tc-val{color:var(--t2)}.lp-tc-muted{color:#ffffff73}.lp-tc-pass{color:var(--green)}.lp-tc-fail{color:var(--rose)}.lp-tc-fail-dim{color:#e83f5aa6}.lp-tc-warn{color:var(--amber)}.lp-blink{animation:1.4s step-end infinite lp-blink}.lp-term-header-row{letter-spacing:.08em;color:#ffffff40;grid-template-columns:18px 200px 1fr;gap:12px;padding:4px 0 4px 2px;font-size:10px;display:grid}.lp-tr{animation:lp-scan-in .3s var(--ease-out) both;border-radius:4px;grid-template-columns:18px 200px 1fr;gap:12px;padding:3px 2px;display:grid}.lp-tr:hover{background:#ffffff06}.lp-tr-status{text-align:center}.lp-tr-mod{color:var(--t2);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.lp-tr-detail{color:#ffffff47;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lp-term-more{color:#ffffff38;padding:4px 2px 2px 32px;font-size:11.5px}.lp-term-score{flex-wrap:wrap;align-items:center;gap:14px;padding:10px 2px 2px;font-size:12.5px;display:flex}.lp-ts-label{letter-spacing:.08em;color:#ffffff40;font-size:10px}.lp-ts-val{color:var(--rose);letter-spacing:-.04em;font-size:20px;font-weight:700}.lp-ts-denom{color:#ffffff40;font-size:12px;font-weight:400}.lp-ts-bar{letter-spacing:1px;gap:2px;font-size:13px;display:flex}.lp-ts-filled{color:var(--rose)}.lp-ts-empty{color:#ffffff26}.lp-ts-issues{gap:0;display:flex}.lp-stats{background:#0b0c10;border-top:1px solid #ffffff0f;border-bottom:1px solid #ffffff0f;margin-top:clamp(40px,5vw,64px);padding:28px 0}.lp-stats-row{divide-x:1px solid #ffffff0f;grid-template-columns:repeat(4,1fr);display:grid}.lp-stat{text-align:center;border-right:1px solid #ffffff0f;flex-direction:column;align-items:center;gap:4px;padding:8px 0;display:flex}.lp-stat:last-child{border-right:none}.lp-stat-v{font-family:var(--mono);letter-spacing:-.04em;color:var(--t1);font-size:clamp(1.4rem,2.5vw,1.9rem);font-weight:700}.lp-stat-l{color:var(--t4);font-size:12px}.lp-sec-hd{margin-bottom:clamp(32px,4vw,52px)}.lp-sec-title{letter-spacing:-.04em;color:var(--t1);margin-bottom:12px;font-size:clamp(1.5rem,2.8vw,2.2rem);font-weight:800}.lp-sec-sub{color:var(--t3);max-width:540px;font-size:15px;line-height:1.7}.lp-coverage{padding:clamp(60px,8vw,96px) 0}.lp-cov-table{background:#0b0c10;border:1px solid #ffffff12;border-radius:12px;overflow:hidden}.lp-cov-thead{font-family:var(--mono);letter-spacing:.07em;color:#ffffff40;background:#0f1014;border-bottom:1px solid #ffffff12;grid-template-columns:90px 200px 1fr;gap:16px;padding:10px 20px;font-size:10.5px;display:grid}.lp-cov-row{transition:background var(--t-fast);border-bottom:1px solid #ffffff0a;grid-template-columns:90px 200px 1fr;gap:16px;padding:11px 20px;display:grid}.lp-cov-row:last-of-type{border-bottom:none}.lp-cov-row:hover{background:#ffffff05}.lp-cov-cat{font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;border-radius:4px;align-self:center;width:fit-content;padding:2px 7px;font-size:10.5px;font-weight:600}.lp-cat-net{color:var(--brand);background:#4f8ef71a;border:1px solid #4f8ef733}.lp-cat-web{color:var(--cyan);background:#00c8ef14;border:1px solid #00c8ef26}.lp-cat-code{color:var(--rose);background:#e83f5a14;border:1px solid #e83f5a26}.lp-cat-dns{color:var(--amber);background:#e89c2014;border:1px solid #e89c2026}.lp-cov-mod{color:var(--t1);align-self:center;font-size:13.5px;font-weight:600}.lp-cov-spec{color:var(--t3);align-self:center;font-size:13px;line-height:1.5}.lp-cov-more{color:var(--t4);font-size:12.5px;font-family:var(--mono);background:#0f1014;border-top:1px solid #ffffff0d;padding:12px 20px}.lp-how{background:#0a0b0f;border-top:1px solid #ffffff0d;padding:clamp(60px,8vw,96px) 0}.lp-steps{grid-template-columns:1fr auto 1fr auto 1fr;align-items:start;gap:0;display:grid}.lp-step{transition:border-color var(--t-slow);background:#0d0f14;border:1px solid #ffffff12;border-radius:11px;padding:24px 22px}.lp-step:hover{border-color:#ffffff21}.lp-step-n{font-family:var(--mono);letter-spacing:.06em;color:var(--brand);background:#4f8ef71a;border:1px solid #4f8ef733;border-radius:5px;justify-content:center;align-items:center;margin-bottom:14px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.lp-step-t{color:var(--t1);letter-spacing:-.025em;margin-bottom:8px;font-size:14px;font-weight:700}.lp-step-d{color:var(--t3);font-size:13px;line-height:1.6}.lp-step-arrow{color:#ffffff2e;flex-shrink:0;justify-content:center;align-items:center;padding:32px 16px 0;font-size:16px;display:flex}.lp-cta{border-top:1px solid #ffffff0d;padding:clamp(72px,10vw,112px) 0}.lp-cta-inner{text-align:center;flex-direction:column;align-items:center;gap:16px;display:flex}.lp-cta-title{letter-spacing:-.04em;color:var(--t1);margin:0;font-size:clamp(1.7rem,3.5vw,2.8rem);font-weight:800}.lp-cta-sub{color:var(--t3);max-width:420px;margin:0;font-size:15px;line-height:1.6}.lp-footer{background:#08090d;border-top:1px solid #ffffff0d;padding:22px 0}.lp-footer-row{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.lp-footer-logo{color:var(--t4);align-items:center;gap:7px;font-size:13px;font-weight:400;text-decoration:none;display:flex}.lp-footer-logo strong{color:var(--t3);font-weight:700}.lp-footer-logo svg{color:var(--brand);flex-shrink:0}.lp-footer-copy{color:var(--t4);margin-left:auto;font-size:12px}.lp-footer-links{gap:4px;display:flex}.lp-footer-lnk{color:var(--t4);transition:color var(--t-base);border-radius:5px;padding:4px 8px;font-size:12px;text-decoration:none}.lp-footer-lnk:hover{color:var(--t2)}.profile-card{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#121216a6;border:1px solid #ffffff14;border-radius:16px;margin-top:24px;position:relative;overflow:hidden;box-shadow:0 20px 40px #0006,inset 0 1px #ffffff1a}.profile-banner{background:linear-gradient(135deg,#4f8ef726 0%,#4f8ef705 100%);border-bottom:1px solid #ffffff0a;height:110px;position:relative;overflow:hidden}.profile-banner-glow{background:var(--brand);filter:blur(70px);opacity:.25;width:200px;height:200px;position:absolute;top:-60px;right:15%}.profile-content-wrap{flex-direction:column;gap:32px;padding:0 32px 32px;display:flex}.profile-header{border-bottom:1px solid #ffffff0f;align-items:flex-end;gap:24px;margin-top:-46px;padding-bottom:24px;display:flex}.profile-avatar-wrap{background:var(--bg);border-radius:50%;flex-shrink:0;padding:6px;position:relative;box-shadow:0 8px 24px #00000080}.profile-avatar,.profile-avatar-fallback{border:1px solid #ffffff1a;border-radius:50%;width:84px;height:84px}.profile-avatar{object-fit:cover}.profile-avatar-fallback{background:linear-gradient(135deg, var(--brand) 0%, #1e40af 100%);color:#fff;place-items:center;font-size:36px;font-weight:700;display:grid;box-shadow:inset 0 2px 4px #fff3}.profile-status-indicator{background:var(--green);border:3px solid var(--bg);border-radius:50%;width:16px;height:16px;position:absolute;bottom:10px;right:10px;box-shadow:0 0 10px #00c89680}.profile-info h2{color:var(--t1);letter-spacing:-.02em;margin-bottom:6px;font-size:24px;font-weight:700}.profile-badge{letter-spacing:.06em;text-transform:uppercase;color:#fff;background:linear-gradient(135deg,#0ea8744d,#0ea8741a);border:1px solid #0ea8744d;border-radius:20px;align-items:center;gap:6px;padding:4px 12px;font-size:11px;font-weight:600;display:inline-flex;box-shadow:0 2px 8px #0ea87433}.badge-dot{background:var(--green);width:6px;height:6px;box-shadow:0 0 6px var(--green);border-radius:50%}.profile-section h3{color:var(--t1);margin-bottom:8px;font-size:17px;font-weight:600}.profile-section p{color:var(--t3);margin-bottom:20px;font-size:14px;line-height:1.6}.profile-setting-row{background:#ffffff05;border:1px solid #ffffff0d;border-radius:12px;justify-content:space-between;align-items:center;padding:16px 20px;transition:all .3s;display:flex}.profile-setting-row:hover{background:#ffffff0a;border-color:#ffffff14}.setting-label{flex-direction:column;gap:4px;display:flex}.setting-title{color:var(--t1);font-size:14px;font-weight:600}.setting-desc{color:var(--t4);font-size:12px}@media (width<=860px){.lp-steps{grid-template-columns:1fr}.lp-step-arrow{align-self:center;padding:8px 0;transform:rotate(90deg)}.lp-cov-thead,.lp-cov-row{grid-template-columns:80px 1fr}.lp-cov-th-spec,.lp-cov-spec{display:none}.lp-stats-row{grid-template-columns:1fr 1fr}.lp-stat:nth-child(2){border-right:none}.lp-stat:nth-child(3){border-top:1px solid #ffffff0f}.lp-stat:nth-child(4){border-top:1px solid #ffffff0f;border-right:none}.lp-term-header-row,.lp-tr{grid-template-columns:18px 150px 1fr}}@media (width<=640px){.lp-nav-mid,.lp-nav-badge{display:none}.lp-hero-cta{flex-direction:column;align-items:stretch}.lp-cta-btn,.lp-ghost-btn{justify-content:center}.lp-cov-thead,.lp-cov-row{grid-template-columns:72px 1fr}.lp-term-header-row,.lp-tr{grid-template-columns:18px 140px 1fr;font-size:11px}.lp-footer-copy{order:3;width:100%;margin-left:0}.lp-footer-links{margin-left:auto}.nav-user-name,.nav-status{display:none}.nav-r{gap:6px}.nav-i{gap:8px}.nav-logout-btn{padding:4px 8px;font-size:11px}}@media (width<=420px){.lp-term-header-row,.lp-tr{grid-template-columns:18px 1fr}.lp-th-detail,.lp-tr-detail{display:none}}
