:root{
  --bg:#04060b;--bg-2:#070b12;--panel:rgba(10,17,28,.82);--panel-solid:#0a111c;--panel-2:rgba(14,25,40,.82);
  --line:rgba(111,245,255,.16);--line-strong:rgba(111,245,255,.34);--text:#edfaff;--muted:#7893a7;
  --cyan:#69f6ff;--cyan-2:#18aef5;--violet:#a16dff;--magenta:#ff52ca;--danger:#ff5578;--warning:#ffd166;--success:#65f7a3;
  --primary:var(--cyan);--primary-2:var(--violet);--radius:20px;--radius-sm:13px;
  --shadow:0 28px 80px rgba(0,0,0,.52),0 0 0 1px rgba(255,255,255,.018) inset;--sidebar:276px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:var(--bg);color:var(--text);font:15px/1.58 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow-x:hidden}button,input,select,textarea{font:inherit}button{color:inherit}a{color:inherit;text-decoration:none}svg{display:block}code{font-family:"SFMono-Regular",Consolas,monospace;color:#9cf9ff;background:rgba(36,207,229,.075);border:1px solid rgba(105,246,255,.16);padding:.18rem .44rem;border-radius:8px;word-break:break-all}
.network-canvas{position:fixed;inset:0;width:100%;height:100%;z-index:-5;opacity:.5}.cyber-grid{position:fixed;inset:0;z-index:-4;pointer-events:none;background-image:linear-gradient(rgba(82,221,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(82,221,255,.035) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.92),transparent 88%)}.scanline{position:fixed;z-index:80;pointer-events:none;left:0;right:0;height:1px;top:-2px;background:linear-gradient(90deg,transparent,rgba(105,246,255,.28),transparent);box-shadow:0 0 18px rgba(105,246,255,.35);animation:scanline 9s linear infinite;opacity:.45}.noise-layer{position:fixed;inset:0;z-index:-2;pointer-events:none;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}.ambient{position:fixed;width:520px;height:520px;filter:blur(135px);opacity:.12;border-radius:50%;pointer-events:none;z-index:-3}.ambient-one{background:var(--cyan);right:-220px;top:-210px}.ambient-two{background:var(--magenta);left:12%;bottom:-370px}@keyframes scanline{to{transform:translateY(110vh)}}
.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);padding:24px 18px 18px;background:linear-gradient(180deg,rgba(6,10,17,.96),rgba(7,12,21,.92));backdrop-filter:blur(28px) saturate(125%);border-right:1px solid rgba(105,246,255,.12);display:flex;flex-direction:column;z-index:40;box-shadow:22px 0 70px rgba(0,0,0,.32)}.sidebar::before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);opacity:.55}.brand{position:relative;display:flex;align-items:center;gap:13px;padding:3px 8px 28px}.brand-mark{width:48px;height:48px;display:grid;place-items:center;position:relative;filter:drop-shadow(0 0 13px rgba(105,246,255,.36))}.brand-mark::before{content:"";position:absolute;inset:1px;background:linear-gradient(145deg,rgba(105,246,255,.95),rgba(161,109,255,.9));clip-path:polygon(25% 2%,75% 2%,98% 25%,98% 75%,75% 98%,25% 98%,2% 75%,2% 25%)}.brand-mark::after{content:"";position:absolute;inset:4px;background:#071019;clip-path:polygon(25% 2%,75% 2%,98% 25%,98% 75%,75% 98%,25% 98%,2% 75%,2% 25%)}.brand-mark svg{position:relative;z-index:1;width:31px;height:31px;fill:none;stroke:var(--cyan);stroke-width:2}.brand-copy strong,.brand-copy small{display:block}.brand-copy strong{font-size:16px;letter-spacing:.15em;text-shadow:0 0 16px rgba(105,246,255,.42)}.brand-copy small{font-size:10px;color:#6e8ca1;letter-spacing:.09em}.brand-pulse{margin-left:auto;width:7px;height:7px;border-radius:50%;background:var(--success);box-shadow:0 0 0 5px rgba(101,247,163,.07),0 0 15px var(--success);animation:pulse 2s ease-in-out infinite}@keyframes pulse{50%{opacity:.45;transform:scale(.82)}}.sidebar-caption{padding:0 12px 9px;font-size:9px;font-weight:800;letter-spacing:.22em;color:#496779}.sidebar nav{display:grid;gap:7px}.nav-link{display:flex;align-items:center;gap:12px;padding:11px 13px;border:1px solid transparent;border-radius:12px;color:#91aabe;position:relative;overflow:hidden;transition:.22s ease}.nav-link svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.nav-link::after{content:"";position:absolute;inset:0;opacity:0;background:linear-gradient(90deg,rgba(105,246,255,.13),rgba(161,109,255,.04));transition:.22s}.nav-link:hover{color:#dffcff;border-color:rgba(105,246,255,.11);transform:translateX(2px)}.nav-link.active{color:var(--cyan);border-color:rgba(105,246,255,.2);background:rgba(105,246,255,.065);box-shadow:inset 3px 0 var(--cyan),0 0 24px rgba(105,246,255,.05)}.nav-link.active::after{opacity:1}.nav-link span,.nav-link svg{position:relative;z-index:1}.nav-divider{font-size:9px;letter-spacing:.2em;color:#456274;margin:20px 12px 6px}.sidebar-footer{margin-top:auto;display:grid;gap:12px}.node-card{position:relative;display:flex;align-items:center;gap:10px;padding:12px;border:1px solid rgba(105,246,255,.12);border-radius:14px;background:linear-gradient(145deg,rgba(105,246,255,.045),rgba(161,109,255,.035));overflow:hidden}.node-card small,.node-card strong{display:block}.node-card small{font-size:8px;letter-spacing:.18em;color:#5f8298}.node-card strong{font-family:Consolas,monospace;font-size:12px;color:#c9f9ff}.node-orbit{width:30px;height:30px;border:1px solid rgba(105,246,255,.3);border-radius:50%;position:relative}.node-orbit::before{content:"";position:absolute;width:5px;height:5px;background:var(--cyan);border-radius:50%;top:-3px;left:12px;box-shadow:0 0 9px var(--cyan);animation:orbit 3s linear infinite;transform-origin:3px 18px}@keyframes orbit{to{transform:rotate(360deg)}}.live-badge{margin-left:auto;font-size:8px;letter-spacing:.09em;color:var(--success)}.live-badge i{display:inline-block;width:5px;height:5px;border-radius:50%;background:currentColor;margin-right:3px}.text-link{font-size:12px;color:var(--cyan);padding-left:3px}.text-link:hover{text-shadow:0 0 10px rgba(105,246,255,.55)}.sidebar-backdrop{display:none;position:fixed;inset:0;border:0;background:rgba(0,0,0,.64);backdrop-filter:blur(5px);z-index:35}
.app-main{margin-left:var(--sidebar);padding:0 36px 38px;max-width:1780px;min-height:100vh}.auth-main{min-height:100vh;display:grid;place-items:center;padding:32px}.topbar{min-height:124px;display:flex;align-items:center;gap:18px;border-bottom:1px solid rgba(105,246,255,.09);margin-bottom:28px;position:relative}.topbar::after{content:"";position:absolute;left:0;bottom:-1px;width:180px;height:1px;background:linear-gradient(90deg,var(--cyan),transparent);box-shadow:0 0 12px rgba(105,246,255,.5)}.heading-lockup h1,.auth-shell h1{margin:0;font-size:clamp(28px,3vw,42px);line-height:1.08;letter-spacing:-.045em;text-shadow:0 4px 36px rgba(0,0,0,.45)}.eyebrow{margin:0 0 5px;color:var(--cyan);font-size:10px;font-weight:900;letter-spacing:.21em;text-shadow:0 0 14px rgba(105,246,255,.42)}.topbar-actions{margin-left:auto;display:flex;gap:10px}.topbar-system{margin-left:20px;display:flex;align-items:center;gap:8px;font:700 9px/1 Consolas,monospace;letter-spacing:.12em;color:#61869a;border:1px solid rgba(105,246,255,.1);background:rgba(7,17,27,.55);border-radius:999px;padding:8px 11px}.system-light{width:6px;height:6px;border-radius:50%;background:var(--success);box-shadow:0 0 10px var(--success)}.menu-button{display:none;width:42px;height:42px;border:1px solid var(--line);border-radius:11px;background:rgba(10,20,31,.8);place-items:center}.menu-button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.app-footer{display:flex;justify-content:space-between;gap:14px;margin-top:35px;padding-top:18px;border-top:1px solid rgba(105,246,255,.08);font:10px/1.4 Consolas,monospace;letter-spacing:.1em;color:#496779}
.card,.metric-card{position:relative;background:linear-gradient(145deg,rgba(14,24,38,.88),rgba(7,14,24,.9));border:1px solid rgba(105,246,255,.14);border-radius:var(--radius);box-shadow:var(--shadow);backdrop-filter:blur(20px) saturate(118%);overflow:hidden}.card::before,.metric-card::before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,rgba(105,246,255,.5),rgba(161,109,255,.32),transparent);opacity:.55}.card::after,.metric-card::after{content:"";position:absolute;width:42px;height:42px;right:-1px;top:-1px;border-top:1px solid rgba(105,246,255,.35);border-right:1px solid rgba(105,246,255,.35);border-radius:0 var(--radius) 0 0;pointer-events:none}.card{padding:23px}.card:hover,.metric-card:hover{border-color:rgba(105,246,255,.22)}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}.metric-card{padding:20px;min-height:140px;display:flex;flex-direction:column;transition:.22s}.metric-card:hover{transform:translateY(-3px);box-shadow:0 32px 90px rgba(0,0,0,.55),0 0 28px rgba(105,246,255,.055)}.metric-card span{color:#7896aa;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.metric-card strong{font-size:32px;line-height:1.15;margin:12px 0 5px;letter-spacing:-.045em}.metric-card small{color:#597689;margin-top:auto}.metric-card .metric-icon{position:absolute;right:18px;bottom:17px;width:42px;height:42px;opacity:.12;color:var(--cyan)}.success-text{color:var(--success);text-shadow:0 0 18px rgba(101,247,163,.25)}.dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:18px 0}.span-2{grid-column:span 2}.card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:20px}.card-heading h2,.step-heading h2,.card h2,.card h3{margin:0;letter-spacing:-.03em}.card-heading h2{font-size:21px}
.button{position:relative;border:1px solid transparent;border-radius:12px;padding:10px 16px;cursor:pointer;font-weight:800;transition:.2s;display:inline-flex;justify-content:center;align-items:center;gap:8px;overflow:hidden;isolation:isolate}.button::before{content:"";position:absolute;inset:0;z-index:-1;opacity:0;background:linear-gradient(110deg,transparent,rgba(255,255,255,.22),transparent);transform:translateX(-100%);transition:.45s}.button:hover::before{opacity:1;transform:translateX(100%)}.button:hover{transform:translateY(-2px)}.button:active{transform:translateY(0)}.button:disabled{opacity:.42;cursor:not-allowed;transform:none}.button.primary{background:linear-gradient(125deg,var(--cyan),#42d9ef 45%,var(--violet));color:#031017;box-shadow:0 10px 28px rgba(48,211,235,.18),0 0 0 1px rgba(255,255,255,.2) inset}.button.secondary{background:rgba(105,246,255,.065);border-color:rgba(105,246,255,.28);color:var(--cyan);box-shadow:0 0 22px rgba(105,246,255,.04) inset}.button.ghost{background:rgba(255,255,255,.015);border-color:rgba(120,158,182,.2);color:#b9d0de}.button.danger{background:rgba(255,85,120,.09);border-color:rgba(255,85,120,.36);color:#ff8ca4}.button.success{background:rgba(101,247,163,.08);border-color:rgba(101,247,163,.34);color:var(--success)}.button.small{padding:7px 10px;font-size:11px}.button.full{width:100%}.icon-button{background:rgba(255,255,255,.02);border:1px solid var(--line);border-radius:10px;color:#b7cbd9;padding:7px 10px;cursor:pointer}.icon-button:hover{border-color:var(--line-strong);color:var(--cyan)}.danger-text{color:#ff8ca4}
.table-wrap{overflow:auto;border:1px solid rgba(105,246,255,.07);border-radius:14px;background:rgba(2,8,14,.28)}.table-wrap table{width:100%;border-collapse:collapse;min-width:720px}th,td{text-align:left;border-bottom:1px solid rgba(105,246,255,.075);padding:14px 12px;vertical-align:middle}th{font-size:9px;text-transform:uppercase;letter-spacing:.17em;color:#5c7b90;background:rgba(105,246,255,.018)}td{color:#bdd2df}tbody tr{transition:.17s}tbody tr:hover{background:rgba(105,246,255,.03)}tbody tr:last-child td{border-bottom:0}.empty-cell{text-align:center;color:var(--muted);padding:40px}.block{display:block}.muted{color:var(--muted)}.pill,.status{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:5px 9px;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.09em;background:#13202c;color:#91a9b9;border:1px solid rgba(255,255,255,.045)}.pill.active,.pill.owner,.status.good{background:rgba(101,247,163,.07);color:var(--success);border-color:rgba(101,247,163,.16)}.pill.expiring,.status.warn{background:rgba(255,209,102,.08);color:var(--warning);border-color:rgba(255,209,102,.16)}.pill.expired,.pill.disabled,.status.bad{background:rgba(255,85,120,.08);color:var(--danger);border-color:rgba(255,85,120,.16)}.status.info{background:rgba(105,246,255,.07);color:var(--cyan);border-color:rgba(105,246,255,.16)}
.stack-list{display:grid;gap:4px}.stack-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid rgba(105,246,255,.075)}.stack-item strong,.stack-item small{display:block}.stack-item small{color:var(--muted)}.health-list{list-style:none;padding:0;margin:0;display:grid;gap:3px}.health-list li{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid rgba(105,246,255,.075)}.bar-chart{height:230px;display:flex;align-items:flex-end;gap:12px;padding-top:20px}.bar-column{height:100%;flex:1;display:flex;flex-direction:column;align-items:center;gap:7px}.bar-track{height:170px;width:min(38px,70%);background:#050b12;border:1px solid rgba(105,246,255,.12);border-radius:10px;display:flex;align-items:flex-end;overflow:hidden}.bar-fill{width:100%;min-height:3px;background:linear-gradient(var(--violet),var(--cyan));box-shadow:0 0 15px rgba(105,246,255,.25)}.bar-value,.bar-column small{font-size:10px;color:var(--muted)}
.auth-shell{width:min(1020px,100%);display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:76px}.auth-brand p:not(.eyebrow){color:var(--muted);max-width:440px;font-size:17px}.auth-card{padding:31px;display:grid;gap:12px}.auth-card .card-heading{margin-bottom:8px}.status-dot{width:9px;height:9px;border-radius:50%;background:var(--success);box-shadow:0 0 0 7px rgba(101,247,163,.06),0 0 15px var(--success)}label{font-weight:760;color:#bdd3df;margin-top:5px;font-size:13px}input,select,textarea{width:100%;background:rgba(3,10,17,.74);color:var(--text);border:1px solid rgba(105,246,255,.16);border-radius:12px;padding:11px 13px;outline:none;transition:.18s}input:hover,select:hover,textarea:hover{border-color:rgba(105,246,255,.25)}input:focus,select:focus,textarea:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(105,246,255,.075),0 0 20px rgba(105,246,255,.05)}select option{background:#08111c}.password-row,.input-action{display:flex;gap:8px}.password-row input,.input-action input{flex:1}.form-help{font-size:11px;color:#69889c;margin:0 0 8px}.notice{display:flex;gap:12px;padding:13px 15px;border:1px solid rgba(105,246,255,.13);border-radius:13px;background:rgba(105,246,255,.035);margin-bottom:16px}.notice strong,.notice span{display:block}.notice span{color:var(--muted)}.notice.warning{border-color:rgba(255,209,102,.27);background:rgba(255,209,102,.045)}.notice.success{border-color:rgba(101,247,163,.25);background:rgba(101,247,163,.04)}.flash-stack{display:grid;gap:8px;margin-bottom:18px}.flash{display:flex;align-items:center;gap:9px;padding:12px 14px;border:1px solid rgba(105,246,255,.17);border-radius:12px;background:rgba(9,20,32,.92);box-shadow:var(--shadow)}.flash-icon{color:var(--cyan);font-size:9px}.flash.error{border-color:rgba(255,85,120,.34);color:#ffb1c0}.flash.success{border-color:rgba(101,247,163,.3);color:#a9f8c8}.flash.warning{border-color:rgba(255,209,102,.3);color:#ffe1a0}
.content-grid{display:grid;grid-template-columns:1.5fr .7fr;gap:18px}.content-grid.narrow{max-width:970px}.form-card{display:grid;gap:11px}.subtle-card{align-self:start}.wide-center{max-width:560px;margin:12vh auto;text-align:center}.error-code{font-size:74px;font-weight:950;color:var(--cyan);letter-spacing:-.07em;text-shadow:0 0 24px rgba(105,246,255,.32)}
.scan-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(350px,.8fr);gap:18px;align-items:start}.scan-form{display:grid;gap:17px}.wizard-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding-bottom:16px;border-bottom:1px solid rgba(105,246,255,.1)}.wizard-indicator{display:flex;align-items:center;justify-content:center;gap:8px;background:rgba(4,12,20,.65);border:1px solid rgba(105,246,255,.11);border-radius:12px;color:#68889d;padding:10px;cursor:pointer;transition:.18s}.wizard-indicator span{font:800 9px/1 Consolas,monospace;letter-spacing:.12em}.wizard-indicator.active{border-color:rgba(105,246,255,.39);background:linear-gradient(90deg,rgba(105,246,255,.09),rgba(161,109,255,.05));color:var(--cyan);box-shadow:0 0 22px rgba(105,246,255,.05)}.wizard-step{display:grid;gap:13px}.wizard-nav{display:flex;justify-content:space-between;gap:10px;margin-top:5px}.wizard-nav.end{justify-content:flex-end}.review-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.review-summary>div{padding:13px;border:1px solid rgba(105,246,255,.1);border-radius:12px;background:rgba(4,12,20,.58)}.review-summary span,.review-summary strong{display:block}.review-summary span{font-size:10px;color:var(--muted);margin-bottom:4px}.step-heading{display:flex;align-items:center;gap:13px;margin:8px 0 3px}.step-heading>span{display:grid;place-items:center;width:40px;height:40px;border:1px solid rgba(105,246,255,.35);border-radius:12px;color:var(--cyan);font:900 12px/1 Consolas,monospace;box-shadow:0 0 17px rgba(105,246,255,.07) inset}.form-grid{display:grid;gap:13px}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.advanced{border:1px solid rgba(105,246,255,.1);border-radius:13px;padding:12px 14px;background:rgba(2,8,14,.22)}.advanced summary{cursor:pointer;font-weight:760}.advanced[open] summary{margin-bottom:12px}.checkbox{display:flex;align-items:flex-start;gap:9px;font-weight:500;color:#adc4d2}.checkbox input{width:auto;margin-top:4px;accent-color:var(--cyan)}.authorization{padding:13px;border:1px solid rgba(255,209,102,.24);background:rgba(255,209,102,.035);border-radius:12px}.auto-shield-option{padding:13px;border:1px solid rgba(101,247,163,.19);background:rgba(101,247,163,.035);border-radius:12px}.review-strip{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.review-strip>div{padding:12px;border:1px solid rgba(105,246,255,.1);border-radius:12px;background:rgba(4,12,20,.45)}.review-strip span,.review-strip strong{display:block}.review-strip span{font-size:10px;color:var(--muted)}.geo-preview{border:1px solid rgba(105,246,255,.22);background:rgba(105,246,255,.045);padding:12px;border-radius:12px}.monitor-card{position:sticky;top:18px}.progress-ring-wrap{display:grid;place-items:center;padding:10px 0 18px}.progress-ring{--progress:0deg;width:138px;height:138px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--cyan) var(--progress),rgba(105,246,255,.08) 0);position:relative;box-shadow:0 0 35px rgba(105,246,255,.075)}.progress-ring::before{content:"";position:absolute;inset:11px;background:linear-gradient(145deg,#0a1420,#071019);border:1px solid rgba(105,246,255,.1);border-radius:50%}.progress-ring span{position:relative;font-size:25px;font-weight:900;text-shadow:0 0 16px rgba(105,246,255,.28)}.monitor-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.monitor-metrics>div{background:rgba(3,10,17,.58);border:1px solid rgba(105,246,255,.09);border-radius:12px;padding:11px}.monitor-metrics span,.monitor-metrics strong{display:block}.monitor-metrics span{font-size:10px;color:var(--muted)}.monitor-actions{margin:12px 0}.log-console{background:rgba(1,5,9,.82);border:1px solid rgba(105,246,255,.13);border-radius:13px;height:250px;overflow:auto;padding:13px;font:12px/1.58 "SFMono-Regular",Consolas,monospace;box-shadow:0 0 25px rgba(0,0,0,.28) inset}.log-line{display:flex;gap:10px;padding:3px 0}.log-time{color:#4f7185}.candidate-list{display:grid;gap:8px;margin-bottom:10px}.candidate{display:flex;justify-content:space-between;gap:10px;align-items:center;background:rgba(105,246,255,.035);border:1px solid rgba(105,246,255,.11);border-radius:11px;padding:11px}.filter-bar{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:16px}.filter-bar input,.filter-bar select{width:auto;min-width:150px;flex:1}.pagination{display:flex;justify-content:space-between;align-items:center;color:var(--muted);padding-top:16px}.pagination>div{display:flex;gap:8px}.action-stack{display:grid;gap:9px;margin-top:18px}.table-actions{display:flex;gap:6px;flex-wrap:wrap}
.whitelist-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:18px;margin-bottom:18px}.shield-card{min-height:290px}.shield-visual{display:flex;align-items:center;gap:20px;margin:18px 0}.shield-orb{position:relative;width:112px;height:112px;display:grid;place-items:center;flex:0 0 auto}.shield-orb::before{content:"";position:absolute;inset:8px;border:1px solid rgba(105,246,255,.35);clip-path:polygon(50% 0,94% 17%,87% 73%,50% 100%,13% 73%,6% 17%);background:linear-gradient(145deg,rgba(105,246,255,.09),rgba(161,109,255,.08));box-shadow:0 0 40px rgba(105,246,255,.09) inset}.shield-orb::after{content:"";position:absolute;inset:0;border:1px dashed rgba(105,246,255,.22);border-radius:50%;animation:spin 12s linear infinite}.shield-orb svg{position:relative;width:43px;height:43px;fill:none;stroke:var(--cyan);stroke-width:1.6;filter:drop-shadow(0 0 10px rgba(105,246,255,.55))}@keyframes spin{to{transform:rotate(360deg)}}.shield-summary{display:grid;gap:9px;flex:1}.shield-row{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:10px 0;border-bottom:1px solid rgba(105,246,255,.08)}.shield-row span{color:var(--muted);font-size:12px}.shield-row strong{font-family:Consolas,monospace;font-size:12px}.connection-path{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:8px;margin-top:16px}.path-node{padding:11px;border:1px solid rgba(105,246,255,.1);border-radius:11px;text-align:center;background:rgba(3,10,17,.5)}.path-node span,.path-node strong{display:block}.path-node span{font-size:9px;letter-spacing:.1em;color:#5d7c91}.path-node strong{font-size:12px}.path-arrow{color:#527b91}.readiness-list{display:grid;gap:9px}.readiness-item{display:flex;align-items:center;gap:11px;padding:12px;border:1px solid rgba(105,246,255,.09);border-radius:12px;background:rgba(3,10,17,.42)}.readiness-dot{width:9px;height:9px;border-radius:50%;background:var(--warning);box-shadow:0 0 10px currentColor}.readiness-item.good .readiness-dot{background:var(--success)}.readiness-item.bad .readiness-dot{background:var(--danger)}.readiness-item strong,.readiness-item small{display:block}.readiness-item small{color:var(--muted)}.auto-detect-panel{display:grid;gap:12px;padding:15px;border:1px solid rgba(105,246,255,.13);border-radius:14px;background:linear-gradient(135deg,rgba(105,246,255,.045),rgba(161,109,255,.025))}.detected-ip{display:flex;justify-content:space-between;align-items:center;gap:12px}.detected-ip code{font-size:14px}.firewall-note{font-size:11px;color:#718fa2;border-left:2px solid var(--warning);padding-left:10px;margin:3px 0}.inline-actions{display:flex;gap:9px;flex-wrap:wrap}
.dialog{border:1px solid rgba(105,246,255,.22);border-radius:18px;background:linear-gradient(145deg,#0d1723,#080f18);color:var(--text);box-shadow:0 34px 110px rgba(0,0,0,.72),0 0 35px rgba(105,246,255,.06);padding:0;max-width:480px;width:calc(100% - 30px)}.dialog::backdrop{background:rgba(0,0,0,.72);backdrop-filter:blur(7px)}.dialog form{padding:24px}.dialog.wide{max-width:650px}.dialog-kicker{font:800 9px/1 Consolas,monospace;letter-spacing:.17em;color:var(--cyan);margin-bottom:9px}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}.secret-value{display:block;font-size:18px;padding:14px;margin-top:14px;text-align:center}.toast-region{position:fixed;right:20px;bottom:20px;display:grid;gap:9px;z-index:90}.toast{max-width:370px;background:rgba(10,23,36,.96);border:1px solid rgba(105,246,255,.26);border-radius:12px;padding:12px 15px;box-shadow:0 20px 60px rgba(0,0,0,.45);backdrop-filter:blur(16px);animation:toastIn .22s ease-out}.toast.error{border-color:rgba(255,85,120,.5)}.toast.success{border-color:rgba(101,247,163,.45)}@keyframes toastIn{from{opacity:0;transform:translateY(8px)}}
@media(max-width:1160px){.metric-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr 1fr}.span-2{grid-column:span 2}.scan-layout{grid-template-columns:1fr}.monitor-card{position:static}.auth-shell{gap:34px}.whitelist-hero{grid-template-columns:1fr}.topbar-system{display:none}}
@media(max-width:820px){:root{--sidebar:282px}.sidebar{transform:translateX(-105%);transition:.24s}.sidebar.open{transform:none}.sidebar.open~.sidebar-backdrop{display:block}.app-main{margin-left:0;padding:0 16px 32px}.topbar{min-height:94px;margin-bottom:20px}.menu-button{display:grid}.topbar-actions{margin-left:auto}.metric-grid,.dashboard-grid,.content-grid,.auth-shell{grid-template-columns:1fr}.span-2{grid-column:auto}.auth-brand{display:none}.auth-main{padding:18px}.auth-card{padding:22px}.form-grid.two,.review-strip,.review-summary{grid-template-columns:1fr}.wizard-progress{grid-template-columns:1fr}.wizard-indicator{justify-content:flex-start}.filter-bar>*{width:100%!important}.pagination{align-items:flex-start;gap:12px;flex-direction:column}.card{padding:18px}.bar-chart{gap:6px}.monitor-card{position:static}.topbar h1{font-size:27px}.connection-path{grid-template-columns:1fr}.path-arrow{transform:rotate(90deg);text-align:center}.shield-visual{align-items:flex-start}.app-footer{flex-direction:column}.sidebar-backdrop{cursor:pointer}}
@media(max-width:520px){.metric-grid{grid-template-columns:1fr}.topbar-actions .button{padding:9px 11px;font-size:12px}.shield-visual{display:grid}.detected-ip{align-items:flex-start;flex-direction:column}.inline-actions{display:grid}.inline-actions .button{width:100%}.password-row,.input-action{display:grid}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}.network-canvas,.scanline{display:none}}
.status-dot.failed{background:var(--danger);box-shadow:0 0 0 7px rgba(255,85,120,.06),0 0 15px var(--danger)}


/* v39 live-candidate experience */
.scan-v39{align-items:start}.scan-command{overflow:visible}.wizard-progress.compact{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:26px}.scan-step-enter{animation:step-materialize .48s cubic-bezier(.2,.8,.2,1) both}@keyframes step-materialize{from{opacity:0;transform:translateY(16px) scale(.988);filter:blur(5px)}to{opacity:1;transform:none;filter:none}}
.command-input{position:relative}.command-input input{min-height:58px;font:600 16px/1.2 Consolas,monospace;letter-spacing:.03em;padding-right:150px}.analyze-button{min-width:135px;overflow:hidden}.button.loading span{opacity:.35}.button.loading::after{content:"";position:absolute;width:18px;height:18px;border:2px solid rgba(255,255,255,.25);border-top-color:currentColor;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
.analysis-panel{position:relative;display:grid;grid-template-columns:48px 1fr;gap:15px;align-items:center;margin-top:16px;padding:17px;border:1px solid rgba(105,246,255,.2);border-radius:15px;background:linear-gradient(120deg,rgba(105,246,255,.07),rgba(161,109,255,.045));overflow:hidden}.analysis-panel[hidden]{display:none}.analysis-panel small{display:block;color:var(--cyan);font:800 9px/1.3 Consolas,monospace;letter-spacing:.18em}.analysis-panel strong{display:block;margin:3px 0;font-size:17px}.analysis-panel p{margin:0;color:var(--muted);font-size:12px}.analysis-icon{width:44px;height:44px;border:1px solid rgba(105,246,255,.35);border-radius:50%;display:grid;place-items:center;box-shadow:0 0 22px rgba(105,246,255,.08)}.analysis-icon span{width:10px;height:10px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 7px rgba(105,246,255,.08),0 0 20px var(--cyan);animation:pulse 1.8s ease-in-out infinite}.analysis-scan-beam{position:absolute;inset:-40% auto -40% -25%;width:30%;background:linear-gradient(90deg,transparent,rgba(105,246,255,.13),transparent);transform:skewX(-18deg);animation:analysis-beam 2.4s ease-in-out infinite}.analysis-panel.analysis-success{border-color:rgba(101,247,163,.3)}.analysis-panel.analysis-success .analysis-icon span{background:var(--success);box-shadow:0 0 0 7px rgba(101,247,163,.08),0 0 20px var(--success)}.analysis-panel.analysis-failed{border-color:rgba(255,85,120,.35)}@keyframes analysis-beam{0%{left:-35%}60%,100%{left:125%}}
.analyzed-target-strip{display:flex;align-items:center;gap:12px;padding:12px 14px;margin-bottom:18px;border:1px solid var(--line);border-radius:13px;background:rgba(5,12,20,.55)}.analyzed-target-strip span{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.1em}.analyzed-target-strip strong{font-family:Consolas,monospace;color:var(--cyan)}.analyzed-target-strip .text-link{margin-left:auto;background:none;border:0;cursor:pointer}.strategy-grid>div>small,.static-control small{display:block;margin-top:7px;color:var(--muted);font-size:11px}.static-control{min-height:48px;padding:11px 13px;border:1px solid rgba(105,246,255,.16);border-radius:11px;background:rgba(4,11,18,.7)}.static-control strong,.static-control small{display:block}.static-control strong{color:#dffcff}.auto-shield-note{display:flex;gap:12px;align-items:center;margin-top:17px;padding:13px 15px;border:1px solid rgba(101,247,163,.18);border-radius:13px;background:rgba(101,247,163,.045)}.auto-shield-note strong,.auto-shield-note small{display:block}.auto-shield-note small{color:var(--muted)}.shield-pulse{width:10px;height:10px;border-radius:50%;background:var(--success);box-shadow:0 0 0 7px rgba(101,247,163,.08),0 0 18px var(--success);animation:pulse 1.6s ease-in-out infinite}.launch-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}.launch-bar span,.launch-bar small,.launch-bar strong{display:block}.launch-bar span,.launch-bar small{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.1em}.launch-bar strong{font-family:Consolas,monospace;color:var(--cyan);margin:3px 0}.launch-button{min-width:190px;min-height:52px;font-weight:800;letter-spacing:.05em;position:relative;overflow:hidden}.launch-button::before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 25%,rgba(255,255,255,.22),transparent 65%);transform:translateX(-130%);animation:button-sweep 3.4s ease-in-out infinite}@keyframes button-sweep{55%,100%{transform:translateX(130%)}}
.live-monitor{position:sticky;top:18px}.monitor-badges{display:flex;align-items:center;gap:12px}.candidate-counter{padding:6px 9px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font:700 9px/1 Consolas,monospace;text-transform:uppercase;letter-spacing:.08em}.candidate-counter b{color:var(--cyan);font-size:12px}.signal-orb-wrap{position:relative;min-height:174px;display:grid;place-items:center}.signal-orb{position:absolute;width:134px;height:134px;border-radius:50%;border:1px solid rgba(105,246,255,.13);display:grid;place-items:center}.signal-orb i{position:absolute;inset:8px;border:1px solid rgba(105,246,255,.08);border-radius:50%}.signal-orb i:nth-child(2){inset:24px;border-color:rgba(161,109,255,.13)}.signal-orb i:nth-child(3){inset:40px;border-color:rgba(255,82,202,.11)}.signal-orb span{width:8px;height:8px;border-radius:50%;background:var(--cyan);box-shadow:0 0 24px var(--cyan)}.signal-orb.scanning{animation:orb-rotate 9s linear infinite}.signal-orb.scanning i:nth-child(2){animation:orb-rotate 5s linear infinite reverse}.signal-orb.scanning::before,.signal-orb.scanning::after{content:"";position:absolute;inset:-13px;border:1px solid rgba(105,246,255,.1);border-radius:50%;animation:radar-wave 2.2s ease-out infinite}.signal-orb.scanning::after{animation-delay:1.1s}@keyframes orb-rotate{to{transform:rotate(360deg)}}@keyframes radar-wave{from{transform:scale(.72);opacity:.7}to{transform:scale(1.35);opacity:0}}.signal-orb-wrap .progress-ring{position:relative;z-index:2;background:rgba(4,9,16,.83)}
.candidate-section{margin-top:18px}.section-label{display:flex;justify-content:space-between;gap:12px;align-items:end;margin-bottom:10px}.section-label span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.12em}.section-label small{color:var(--muted)}.candidate-list{display:grid;gap:10px;max-height:355px;overflow:auto;padding-right:3px}.candidate-live{display:grid;grid-template-columns:12px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px;border:1px solid rgba(105,246,255,.13);border-radius:14px;background:linear-gradient(120deg,rgba(105,246,255,.045),rgba(161,109,255,.025));animation:candidate-arrive .45s cubic-bezier(.2,.8,.2,1) both;animation-delay:var(--candidate-delay,0ms);transition:.22s ease}.candidate-live:hover{transform:translateX(3px);border-color:rgba(105,246,255,.3);box-shadow:0 8px 28px rgba(0,0,0,.25),0 0 22px rgba(105,246,255,.045)}.candidate-live.active-candidate{border-color:rgba(101,247,163,.42);background:linear-gradient(120deg,rgba(101,247,163,.08),rgba(105,246,255,.035));box-shadow:inset 3px 0 var(--success),0 0 26px rgba(101,247,163,.06)}@keyframes candidate-arrive{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}.candidate-signal{width:7px;height:7px;border-radius:50%;background:var(--cyan);box-shadow:0 0 12px var(--cyan)}.active-candidate .candidate-signal{background:var(--success);box-shadow:0 0 12px var(--success)}.candidate-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.candidate-title-row strong{font:700 13px/1.35 Consolas,monospace;color:#dffcff}.level-chip{padding:3px 6px;border:1px solid rgba(161,109,255,.22);border-radius:999px;color:#c7aaff;font:800 8px/1 Consolas,monospace;letter-spacing:.08em}.candidate-activate{min-width:126px}.candidate-empty{min-height:90px;display:grid;place-items:center;align-content:center;gap:8px;border:1px dashed rgba(105,246,255,.13);border-radius:14px;color:var(--muted);text-align:center}.candidate-empty span{width:18px;height:18px;border:1px solid rgba(105,246,255,.3);border-radius:50%;box-shadow:0 0 18px rgba(105,246,255,.12);animation:pulse 1.8s ease-in-out infinite}.candidate-empty p{margin:0;font-size:12px}.status-dot.online{background:var(--success);box-shadow:0 0 14px var(--success)}
.history-shell{display:grid;gap:18px}.history-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.history-stat{position:relative;padding:17px 19px;border:1px solid rgba(105,246,255,.13);border-radius:16px;background:linear-gradient(135deg,rgba(12,23,37,.82),rgba(7,14,23,.82));overflow:hidden}.history-stat::after{content:"";position:absolute;width:80px;height:80px;right:-25px;bottom:-35px;border:1px solid rgba(105,246,255,.08);border-radius:50%}.history-stat span,.history-stat small,.history-stat strong{display:block}.history-stat span{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.12em}.history-stat strong{font-size:27px;margin:6px 0}.history-stat strong em{font-size:13px;color:var(--muted);font-style:normal;margin-left:4px}.history-stat small{color:#587487}.archive-pulse{width:9px;height:9px;border-radius:50%;background:var(--success);box-shadow:0 0 0 6px rgba(101,247,163,.07),0 0 15px var(--success);animation:pulse 1.7s ease-in-out infinite}.history-filter{grid-template-columns:minmax(180px,1.4fr) minmax(130px,.8fr) repeat(3,minmax(125px,.7fr)) auto auto}.history-table tbody tr{transition:.18s ease}.history-table tbody tr:hover{background:rgba(105,246,255,.035)}.user-chip,.latency-chip{display:inline-flex;padding:4px 7px;border:1px solid rgba(105,246,255,.14);border-radius:999px;background:rgba(105,246,255,.045);font:700 10px/1 Consolas,monospace}.latency-chip{color:var(--success);border-color:rgba(101,247,163,.15);background:rgba(101,247,163,.04)}.archive-empty{display:grid;place-items:center;gap:5px;padding:28px}.archive-empty span{width:24px;height:24px;border:1px solid rgba(105,246,255,.2);transform:rotate(45deg);box-shadow:0 0 18px rgba(105,246,255,.08)}.archive-empty strong{margin-top:7px}.archive-empty small{color:var(--muted)}
@media(max-width:1100px){.live-monitor{position:relative;top:auto}.history-overview{grid-template-columns:1fr}.history-filter{grid-template-columns:1fr 1fr}.candidate-live{grid-template-columns:10px minmax(0,1fr)}.candidate-activate{grid-column:2;width:100%}}
@media(max-width:680px){.wizard-progress.compact{grid-template-columns:1fr}.command-input{display:grid}.command-input input{padding-right:12px}.analyze-button,.launch-button{width:100%}.launch-bar{align-items:stretch;flex-direction:column}.history-filter{grid-template-columns:1fr}.candidate-live{grid-template-columns:9px minmax(0,1fr)}.section-label{align-items:flex-start;flex-direction:column}.analysis-panel{grid-template-columns:38px 1fr}.analysis-icon{width:36px;height:36px}}


/* v42 · native-looking web notifications and secure action dialog */
.toast-region{position:fixed;right:22px;top:22px;bottom:auto;width:min(390px,calc(100vw - 28px));display:flex;flex-direction:column;gap:11px;z-index:160;pointer-events:none}
.web-toast{--toast-accent:var(--cyan);position:relative;display:grid;grid-template-columns:42px minmax(0,1fr) 28px;align-items:start;gap:12px;overflow:hidden;padding:13px 13px 15px;border:1px solid color-mix(in srgb,var(--toast-accent) 31%,transparent);border-radius:16px;background:linear-gradient(145deg,rgba(13,27,42,.97),rgba(6,14,24,.96));box-shadow:0 22px 70px rgba(0,0,0,.52),inset 0 1px rgba(255,255,255,.035),0 0 34px color-mix(in srgb,var(--toast-accent) 8%,transparent);backdrop-filter:blur(22px) saturate(130%);pointer-events:auto;animation:web-toast-in .35s cubic-bezier(.2,.9,.25,1) both}
.web-toast.success{--toast-accent:var(--success)}.web-toast.error{--toast-accent:var(--danger)}.web-toast.warning{--toast-accent:#ffc968}.web-toast.info{--toast-accent:var(--cyan)}
.web-toast::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(180deg,transparent,var(--toast-accent),transparent);box-shadow:0 0 18px var(--toast-accent)}
.web-toast-icon{width:40px;height:40px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--toast-accent) 32%,transparent);border-radius:12px;background:color-mix(in srgb,var(--toast-accent) 8%,rgba(3,10,18,.72));box-shadow:inset 0 0 18px color-mix(in srgb,var(--toast-accent) 5%,transparent)}
.web-toast-icon svg,.web-toast-close svg{width:19px;height:19px;fill:none;stroke:var(--toast-accent);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.web-toast-copy{min-width:0;padding-top:1px}.web-toast-copy strong{display:block;margin-bottom:4px;color:#f2fbff;font-size:12px;letter-spacing:.02em}.web-toast-copy p{margin:0;color:#9bb0c0;font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.web-toast-close{width:28px;height:28px;display:grid;place-items:center;border:0;border-radius:8px;background:transparent;cursor:pointer;opacity:.55;transition:.18s ease}.web-toast-close:hover{opacity:1;background:rgba(255,255,255,.055)}.web-toast-close svg{width:15px;height:15px;stroke:#b8cad6}
.web-toast-progress{position:absolute;left:0;right:0;bottom:0;height:2px;transform-origin:left;background:linear-gradient(90deg,var(--toast-accent),color-mix(in srgb,var(--toast-accent) 35%,white));box-shadow:0 0 9px var(--toast-accent);animation:web-toast-timer var(--toast-duration) linear forwards}.web-toast.paused .web-toast-progress{animation-play-state:paused}.web-toast.leaving{animation:web-toast-out .23s ease-in forwards}
@keyframes web-toast-in{from{opacity:0;transform:translateX(26px) scale(.97);filter:blur(3px)}to{opacity:1;transform:none;filter:none}}@keyframes web-toast-out{to{opacity:0;transform:translateX(22px) scale(.97)}}@keyframes web-toast-timer{to{transform:scaleX(0)}}
.action-dialog{max-width:510px;border-color:rgba(105,246,255,.24);background:radial-gradient(circle at 15% 5%,rgba(105,246,255,.08),transparent 30%),linear-gradient(145deg,rgba(13,27,42,.985),rgba(5,12,21,.985));overflow:hidden}.action-dialog form{position:relative;padding:26px}.action-dialog form::before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);opacity:.48}.action-dialog-head{display:grid;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:15px}.action-dialog-symbol{--dialog-accent:#ffc968;width:50px;height:50px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--dialog-accent) 35%,transparent);border-radius:15px;background:color-mix(in srgb,var(--dialog-accent) 8%,rgba(4,12,20,.85));box-shadow:0 0 30px color-mix(in srgb,var(--dialog-accent) 8%,transparent)}.action-dialog[data-kind="danger"] .action-dialog-symbol{--dialog-accent:var(--danger)}.action-dialog[data-kind="success"] .action-dialog-symbol{--dialog-accent:var(--success)}.action-dialog[data-kind="info"] .action-dialog-symbol{--dialog-accent:var(--cyan)}.action-dialog-symbol svg{width:25px;height:25px;fill:none;stroke:var(--dialog-accent);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.action-dialog h2{margin:3px 0 0;font-size:21px}.action-dialog-message{margin:19px 0 0;color:#9eb3c2;line-height:1.65}.action-dialog-input{display:grid;gap:8px;margin-top:18px}.action-dialog-input[hidden]{display:none}.action-dialog-input span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#cbeaf5}.action-dialog-input small{color:var(--muted);font-size:11px}.action-dialog-input input{font:700 17px/1.2 Consolas,monospace;color:var(--cyan)}.action-dialog-note{display:flex;align-items:center;gap:9px;margin-top:18px;padding:10px 12px;border:1px solid rgba(105,246,255,.1);border-radius:11px;background:rgba(105,246,255,.035)}.action-dialog-note span{width:7px;height:7px;flex:0 0 auto;border-radius:50%;background:var(--cyan);box-shadow:0 0 13px var(--cyan)}.action-dialog-note small{color:#6f8797;line-height:1.45}.action-dialog .dialog-actions{margin-top:22px;padding-top:18px;border-top:1px solid rgba(105,246,255,.09)}
@media(max-width:680px){.toast-region{top:12px;right:14px;width:calc(100vw - 28px)}.web-toast{grid-template-columns:38px minmax(0,1fr) 26px}.web-toast-icon{width:36px;height:36px}.action-dialog form{padding:21px}.action-dialog-head{grid-template-columns:44px minmax(0,1fr)}.action-dialog-symbol{width:42px;height:42px;border-radius:12px}.action-dialog .dialog-actions{display:grid;grid-template-columns:1fr 1fr}.action-dialog .button{width:100%}}
@media(prefers-reduced-motion:reduce){.web-toast,.web-toast-progress{animation:none}.web-toast.leaving{opacity:0}}

/* v43 · orchestrated welcome sequence — panels arrive in sequence instead of popping in at once */
.topbar{animation:panel-arrive .55s cubic-bezier(.16,.9,.25,1) both}
.metric-grid>*,.dashboard-grid>*,.content-grid>*,.scan-layout>*,.history-shell>*,.whitelist-hero>*,.auth-shell>*{animation:panel-arrive .6s cubic-bezier(.16,.9,.25,1) both}
.metric-grid>*:nth-child(1),.dashboard-grid>*:nth-child(1),.content-grid>*:nth-child(1),.scan-layout>*:nth-child(1),.history-shell>*:nth-child(1),.whitelist-hero>*:nth-child(1),.auth-shell>*:nth-child(1){animation-delay:.04s}
.metric-grid>*:nth-child(2),.dashboard-grid>*:nth-child(2),.content-grid>*:nth-child(2),.scan-layout>*:nth-child(2),.history-shell>*:nth-child(2),.whitelist-hero>*:nth-child(2),.auth-shell>*:nth-child(2){animation-delay:.1s}
.metric-grid>*:nth-child(3),.dashboard-grid>*:nth-child(3),.content-grid>*:nth-child(3),.scan-layout>*:nth-child(3),.history-shell>*:nth-child(3){animation-delay:.16s}
.metric-grid>*:nth-child(4),.dashboard-grid>*:nth-child(4),.content-grid>*:nth-child(4){animation-delay:.22s}
.metric-grid>*:nth-child(5),.dashboard-grid>*:nth-child(5){animation-delay:.28s}
.metric-grid>*:nth-child(6),.dashboard-grid>*:nth-child(6){animation-delay:.34s}
.app-footer{animation:panel-arrive .6s cubic-bezier(.16,.9,.25,1) .4s both}
@keyframes panel-arrive{from{opacity:0;transform:translateY(16px) scale(.985);filter:blur(4px)}to{opacity:1;transform:none;filter:none}}

/* v43 · refined primary-button glow — a slow ambient breathing pulse instead of a static border, felt on the actions users take most */
.button.primary,.launch-button{animation:btn-breathe 3.6s ease-in-out infinite}
@keyframes btn-breathe{0%,100%{box-shadow:0 10px 28px rgba(48,211,235,.18),0 0 0 1px rgba(255,255,255,.2) inset}50%{box-shadow:0 10px 34px rgba(48,211,235,.32),0 0 22px rgba(161,109,255,.18),0 0 0 1px rgba(255,255,255,.24) inset}}

/* v43 · sidebar nav icons settle in with a soft cascade on load, reinforcing the "system waking up" feel */
.sidebar nav .nav-link{animation:nav-settle .45s cubic-bezier(.16,.9,.25,1) both}
.sidebar nav .nav-link:nth-child(1){animation-delay:.06s}.sidebar nav .nav-link:nth-child(2){animation-delay:.1s}.sidebar nav .nav-link:nth-child(3){animation-delay:.14s}.sidebar nav .nav-link:nth-child(4){animation-delay:.18s}.sidebar nav .nav-link:nth-child(5){animation-delay:.22s}.sidebar nav .nav-link:nth-child(6){animation-delay:.26s}.sidebar nav .nav-link:nth-child(7){animation-delay:.3s}
@keyframes nav-settle{from{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:none}}

@media(prefers-reduced-motion:reduce){.topbar,.metric-grid>*,.dashboard-grid>*,.content-grid>*,.scan-layout>*,.history-shell>*,.whitelist-hero>*,.auth-shell>*,.app-footer,.button.primary,.launch-button,.sidebar nav .nav-link{animation:none!important}}

/* v44 · rotating holo-frame — a slow conic gradient traces the card edge, felt more than seen */
.card,.metric-card{position:relative;isolation:isolate;overflow:hidden}
.card::before,.metric-card::before{content:"";position:absolute;inset:0;padding:1px;border-radius:inherit;background:conic-gradient(from var(--holo-a,0deg),transparent 0 78%,rgba(105,246,255,.55) 86%,rgba(161,109,255,.7) 92%,transparent 100%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:holo-spin 7s linear infinite;pointer-events:none;z-index:0;opacity:.85}
@keyframes holo-spin{to{--holo-a:360deg}}
@property --holo-a{syntax:'<angle>';inherits:false;initial-value:0deg}

/* v44 · holographic sweep on hover — a diagonal light band crosses the surface */
.card::after,.metric-card::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 40%,rgba(105,246,255,.1) 48%,rgba(161,109,255,.16) 52%,transparent 60%);background-size:220% 220%;background-position:130% 130%;transition:background-position .75s cubic-bezier(.2,.8,.2,1);pointer-events:none;z-index:0}
.card:hover::after,.metric-card:hover::after{background-position:-20% -20%}
.card>*,.metric-card>*{position:relative;z-index:1}

/* v44 · animated gradient text — brand mark and stat values shimmer instead of sitting flat */
.brand-copy strong,.metric-card strong{background:linear-gradient(100deg,#69f6ff,#a16dff,#ff52ca,#69f6ff);background-size:300% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:holo-text 6s linear infinite}
@keyframes holo-text{to{background-position:300% center}}

/* v44 · circuit-trace divider under card headings — a thin data line with a traveling pulse */
.card-heading{position:relative;padding-bottom:10px}
.card-heading::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:linear-gradient(90deg,rgba(105,246,255,.35),rgba(161,109,255,.15) 40%,transparent 70%)}
.card-heading::before{content:"";position:absolute;left:0;bottom:-1px;width:26px;height:3px;border-radius:2px;background:linear-gradient(90deg,#69f6ff,#a16dff);box-shadow:0 0 8px rgba(105,246,255,.7);animation:trace-run 3.2s ease-in-out infinite}
@keyframes trace-run{0%{left:0;opacity:.9}45%{opacity:1}90%{left:calc(100% - 26px);opacity:.6}100%{left:calc(100% - 26px);opacity:0}}

/* v44 · cursor-glow — soft light that follows the pointer on desktop, reinforcing depth */
#holo-cursor{position:fixed;width:340px;height:340px;border-radius:50%;pointer-events:none;z-index:2;mix-blend-mode:screen;background:radial-gradient(circle,rgba(105,246,255,.07),rgba(161,109,255,.04) 45%,transparent 70%);transform:translate(-50%,-50%);transition:opacity .3s;opacity:0;will-change:transform}
#holo-cursor.on{opacity:1}

@media(prefers-reduced-motion:reduce){.card::before,.metric-card::before,.card::after,.metric-card::after,.brand-copy strong,.metric-card strong,.card-heading::before{animation:none!important}#holo-cursor{display:none}}
@media(hover:none){#holo-cursor{display:none}}
@supports not (background:paint(x)){.card::before,.metric-card::before{animation:holo-spin-fallback 7s linear infinite}}
@keyframes holo-spin-fallback{0%{filter:hue-rotate(0deg)}100%{filter:hue-rotate(360deg)}}
