:root{--bg-base: #050b1f;--bg-surface: #0c1635;--bg-surface-strong: #101d46;--bg-accent: #142656;--text-primary: #f1f5ff;--text-muted: #9fb0da;--positive: #2ce28f;--negative: #ff5a6f;--warning: #f7c04b;--info: #49a3ff;--border: #20356b;--radius-card: 10px;--radius-control: 8px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px}*{box-sizing:border-box}body{margin:0;font-family:Sora,IBM Plex Sans,Segoe UI,sans-serif;color:var(--text-primary);background:radial-gradient(circle at 15% 10%,#1a2d67 0%,transparent 40%),radial-gradient(circle at 85% 20%,#132957 0%,transparent 38%),linear-gradient(180deg,#061231,#040a1a);min-height:100vh}a{color:var(--info)}h1,h2,h3,p{margin:0}.auth-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:clamp(20px,3vw,36px)}.auth-landing{width:min(1180px,100%);display:grid;grid-template-columns:1.25fr minmax(310px,420px);gap:var(--space-6)}.auth-showcase{border-radius:var(--radius-card);border:1px solid rgba(74,117,220,.5);background:linear-gradient(130deg,#0d1d46f5,#08122cf7 60%),radial-gradient(circle at 80% 5%,rgba(41,208,154,.25),transparent 38%);padding:clamp(20px,3.2vw,42px);display:grid;gap:var(--space-4);box-shadow:0 24px 60px #01071a73}.auth-kicker{display:inline-flex;align-items:center;width:fit-content;font-size:.76rem;font-weight:700;letter-spacing:.12em;color:#7dd4ff;padding:6px 10px;border-radius:999px;border:1px solid rgba(73,163,255,.5);background:#203a7e66}.auth-showcase h1{font-size:clamp(1.7rem,3vw,2.6rem);line-height:1.1}.auth-copy{color:var(--text-muted);max-width:66ch;line-height:1.55}.auth-metrics{margin-top:var(--space-2);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}.auth-metric-card{border:1px solid rgba(53,82,156,.75);border-radius:var(--radius-control);background:#0a1536d6;padding:12px;display:grid;gap:6px}.auth-metric-card span{font-size:.74rem;color:var(--text-muted)}.auth-metric-card strong{font-size:clamp(1rem,1.25vw,1.36rem);font-weight:700}.auth-metric-card small{color:var(--text-muted);font-size:.75rem;min-height:1.1rem}.auth-metric-card.positive strong,.auth-metric-card.positive small{color:var(--positive)}.auth-metric-card.negative strong,.auth-metric-card.negative small{color:var(--negative)}.auth-metric-card.neutral strong{color:var(--text-primary)}.auth-card{width:100%;padding:clamp(22px,2.2vw,32px);border-radius:var(--radius-card);border:1px solid rgba(69,107,200,.62);background:linear-gradient(180deg,#0b183af5,#09122df2),radial-gradient(circle at 15% 10%,rgba(65,151,255,.14),transparent 42%);display:grid;gap:var(--space-4);box-shadow:0 24px 60px #01071a73}.auth-card h2{font-size:1.44rem}.turnstile-wrap{display:grid;justify-items:start}.turnstile-slot{min-height:65px}.auth-card input,.auth-card button,.form-grid input,.form-grid select,.form-grid button,.table-wrap input,.table-wrap select,.inline-actions input{font:inherit}label{display:grid;gap:var(--space-2);color:var(--text-muted)}input,select{width:100%;background:var(--bg-accent);border:1px solid var(--border);color:var(--text-primary);padding:var(--space-3);border-radius:var(--radius-control)}input:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid var(--info);outline-offset:2px}.primary-btn,.ghost-btn{border-radius:var(--radius-control);padding:var(--space-3) var(--space-4);border:1px solid var(--border);cursor:pointer}.mini-btn{border-radius:6px;padding:4px 8px;border:1px solid var(--border);background:var(--bg-accent);color:var(--text-primary);font-size:.78rem;cursor:pointer}.mini-btn:disabled{opacity:.6;cursor:default}.primary-btn{background:linear-gradient(120deg,#1f75ff,#31b9ff);color:#fff;border:none}.ghost-btn{background:var(--bg-accent);color:var(--text-primary)}.app-shell{width:min(1400px,100%);margin:0 auto;padding:var(--space-6)}.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-4)}.brand{font-size:1.4rem;font-weight:700;letter-spacing:.2px;color:var(--text-primary);text-decoration:none}.subtitle{color:var(--text-muted);margin-top:var(--space-2)}.topbar-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:var(--space-3)}.view-as-panel{margin-bottom:var(--space-4);gap:var(--space-2)}.view-as-control{display:grid;gap:4px;width:min(560px,100%)}.view-as-control span{font-size:.74rem;color:var(--text-muted)}.view-as-control select{min-width:240px;padding:8px 10px}.user-chip{background:var(--bg-accent);border:1px solid var(--border);border-radius:999px;padding:6px 12px;color:var(--text-muted)}.tabs{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-6)}.tabs a{text-decoration:none;color:var(--text-muted);border:1px solid var(--border);border-radius:var(--radius-control);padding:10px 12px;background:var(--bg-surface)}.tabs a.active{color:var(--text-primary);border-color:#3f67c7;background:var(--bg-surface-strong)}.stack-lg{display:grid;gap:var(--space-6)}.status-row{display:flex;flex-wrap:wrap;gap:var(--space-2)}.status-badge{font-size:.85rem;border:1px solid var(--border);border-radius:999px;padding:6px 10px}.status-badge.neutral{color:var(--text-muted)}.status-badge.positive{color:var(--positive)}.status-badge.negative{color:var(--negative)}.status-badge.warning{color:var(--warning)}.metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-3)}.metrics-grid.metrics-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-card{border:1px solid var(--border);border-radius:var(--radius-card);background:linear-gradient(155deg,#12214bf0,#0a132cf5);padding:var(--space-4)}.metric-title{color:var(--text-muted);margin-bottom:var(--space-2)}.metric-value{font-family:IBM Plex Mono,JetBrains Mono,monospace;font-size:1.65rem;font-weight:600}.metric-sub{margin-top:var(--space-2)}.grid-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.panel{border:1px solid var(--border);border-radius:var(--radius-card);background:#0c1635d9;padding:var(--space-4);display:grid;gap:var(--space-4)}.operations-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}.operations-grid article{border:1px solid var(--border);border-radius:var(--radius-control);padding:var(--space-3);background:#101d46bf}.operations-grid p{margin-top:var(--space-2);color:var(--text-primary)}.bar-chart{display:grid;gap:var(--space-2)}.bar-row{display:grid;grid-template-columns:64px 1fr 72px;gap:var(--space-2);align-items:center}.bar-symbol,.bar-value{font-size:.85rem;color:var(--text-muted)}.bar-track{background:#ffffff0d;border-radius:999px;height:14px;overflow:hidden}.bar-fill{height:100%;border-radius:999px}.bar-fill.positive{background:linear-gradient(90deg,#1bbd78,#2ce28f)}.bar-fill.negative{background:linear-gradient(90deg,#e4445a,#ff7288)}.allocation-grid{position:relative;width:100%;height:clamp(280px,38vw,620px);border-radius:var(--radius-control);overflow:hidden;border:1px solid var(--border);background:linear-gradient(180deg,#07112cd9,#050e24f2),radial-gradient(circle at 20% 10%,rgba(73,163,255,.12) 0%,transparent 48%)}.allocation-item{position:absolute;display:flex;align-items:flex-start;justify-content:flex-start;padding:6px 8px;color:#ecfff6;border:1px solid rgba(3,10,25,.75);text-shadow:0 1px 2px rgba(0,0,0,.45);cursor:default;transition:filter .12s ease,transform .12s ease,box-shadow .12s ease}.allocation-item.positive{background:linear-gradient(145deg,#16b485,#1ecf95)}.allocation-item.negative{background:linear-gradient(145deg,#cf404f,#f34755)}.allocation-item:focus-visible,.allocation-item:hover{filter:brightness(1.08);transform:translateZ(0) scale(1.01);z-index:3;box-shadow:0 8px 22px #00000047}.allocation-item.tiny{padding:4px 5px}.allocation-symbol{font-size:clamp(.65rem,.85vw,1.02rem);font-weight:700;letter-spacing:.02em;line-height:1;white-space:nowrap}.allocation-item.tiny .allocation-symbol{font-size:clamp(.58rem,.72vw,.86rem)}.allocation-tooltip{position:absolute;left:var(--space-2);top:calc(100% - 2px);opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .12s ease,transform .12s ease;background:#050d22fa;border:1px solid rgba(77,119,214,.65);border-radius:var(--radius-control);padding:7px 9px;min-width:190px;display:grid;gap:2px;z-index:6}.allocation-tooltip strong{font-size:.74rem;color:var(--text-primary);font-weight:700;margin-bottom:2px}.allocation-tooltip span{font-size:.72rem;color:var(--text-muted);white-space:nowrap}.allocation-item:hover .allocation-tooltip,.allocation-item:focus-visible .allocation-tooltip{opacity:1;transform:translateY(0)}@media(max-width:1080px){.allocation-grid{height:clamp(240px,60vw,440px)}.allocation-tooltip{min-width:164px;left:4px}}.table-wrap{width:100%;overflow:auto;border-radius:var(--radius-control);border:1px solid var(--border)}table{width:100%;border-collapse:collapse;min-width:860px;font-size:.92rem}th,td{padding:10px;border-bottom:1px solid rgba(43,65,117,.5);text-align:left}th{color:var(--text-muted);background:#0e1c43e6}td{color:var(--text-primary)}.text-positive{color:var(--positive)}.text-negative{color:var(--negative)}.text-muted{color:var(--text-muted)}.text-link{color:var(--info);text-decoration:none}.text-link:hover{text-decoration:underline}.inline-actions{display:flex;gap:var(--space-2);align-items:center}.form-grid{display:grid;gap:var(--space-3)}.form-grid.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3)}.detail-grid article{border:1px solid var(--border);border-radius:var(--radius-control);padding:var(--space-3);background:#101d4673}.loading,.error-text{padding:var(--space-4);border-radius:var(--radius-control);border:1px solid var(--border);background:#0c163580}.error-text{color:#ff9cab}@media(max-width:1080px){.auth-landing,.auth-metrics,.metrics-grid,.grid-two,.operations-grid,.detail-grid,.form-grid.two-col{grid-template-columns:1fr}.app-shell{padding:var(--space-4)}.topbar{flex-direction:column}}@media(prefers-reduced-motion:reduce){*{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important;scroll-behavior:auto!important}}
