:root{--bg:#0b0c10;--card:#111319;--text:#f5f7ff;--muted:#b6bdcc;--border:#ffffff1f;--accent:#7c5cff;--accent2:#41d1ff}*{box-sizing:border-box}html,body{height:100%;margin:0;padding:0}body{background:radial-gradient(1200px 600px at 20% 10%,#7c5cff40,transparent),radial-gradient(900px 500px at 80% 20%,#41d1ff2e,transparent),var(--bg);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,Apple Color Emoji,Segoe UI Emoji;line-height:1.5}a{color:inherit;text-decoration:none}.container{max-width:960px;margin:0 auto;padding:0 20px}.header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);z-index:10;background:#0b0c10b8;position:sticky;top:0}.headerInner{justify-content:space-between;align-items:center;gap:16px;padding:14px 0;display:flex}.brand{letter-spacing:.2px;font-weight:700}.nav{color:var(--muted);flex-wrap:wrap;gap:14px;display:flex}.nav a:hover{color:var(--text)}.main{padding:48px 0}.hero{border:1px solid var(--border);background:linear-gradient(#ffffff0f,#ffffff05);border-radius:18px;padding:28px}.hero h1{margin:0 0 10px;font-size:clamp(32px,4vw,44px);line-height:1.1}.hero p{color:var(--muted);margin:0 0 18px;font-size:16px}.eyebrow{color:var(--accent2);letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px;font-size:13px;font-weight:700;display:inline-block}.buttons{flex-wrap:wrap;gap:12px;display:flex}.button{border:1px solid var(--border);color:var(--text);background:#ffffff08;border-radius:12px;justify-content:center;align-items:center;padding:12px 14px;font-weight:600;transition:transform .12s,background .12s,border-color .12s;display:inline-flex}.button:hover{background:#ffffff0f;border-color:#ffffff38;transform:translateY(-1px)}.button:disabled{opacity:.6;cursor:not-allowed;transform:none}.button.primary{background:linear-gradient(135deg,#7c5cffd9,#41d1ff99);border-color:#7c5cff80}.button.danger{background:linear-gradient(135deg,#ff5d7ae0,#ff914db8);border-color:#ff5d7a73}.button.secondary[aria-disabled=true]{opacity:.6;cursor:not-allowed}.card{border:1px solid var(--border);background:#ffffff08;border-radius:16px;padding:22px}.card h1{margin:0 0 10px;font-size:28px;line-height:1.2}.card p{color:var(--muted);margin:0 0 12px}.authCard{max-width:560px;margin:0 auto}.authForm{flex-direction:column;gap:14px;margin-top:18px;display:flex}.field{color:var(--text);flex-direction:column;gap:8px;font-weight:600;display:flex}.input{border:1px solid var(--border);width:100%;color:var(--text);font:inherit;background:#ffffff0a;border-radius:12px;padding:12px 14px}.input::placeholder{color:var(--muted)}.input:focus{border-color:#7c5cff80;outline:2px solid #7c5cff59}.inputWithAction{border:1px solid var(--border);background:#ffffff0a;border-radius:12px;align-items:stretch;display:flex;overflow:hidden}.inputWithAction:focus-within{border-color:#7c5cff80;outline:2px solid #7c5cff59}.inputWithActionField{background:0 0;border:0;border-radius:0;outline:none}.inputWithActionField:focus{border-color:#0000;outline:none}.inputActionButton{width:52px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-left:1px solid #ffffff14;justify-content:center;align-items:center;transition:background .12s,color .12s;display:inline-flex}.inputActionButton:hover,.inputActionButton:focus-visible{color:var(--text);background:#ffffff0d;outline:none}.inputActionButton svg{width:20px;height:20px}.note{color:var(--muted);margin-top:14px;font-size:14px}.dangerText{color:#ffb3bf}.dangerInlineLink{color:#ff8d7a;text-underline-offset:3px;font-weight:700;-webkit-text-decoration:underline #ff8d7a8c;text-decoration:underline #ff8d7a8c}.dangerInlineLink:hover,.dangerInlineLink:focus-visible{color:#ffc2b5}.accountDeleteLayout{gap:20px;display:grid}.accountDeleteHeader{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.accountDeleteHeader h2{margin:0 0 6px;font-size:24px}.accountDeleteHeader p{margin:0}.statusGrid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:18px;display:grid}.statusItem{border:1px solid var(--border);background:#ffffff05;border-radius:14px;flex-direction:column;gap:6px;padding:14px;display:flex}.statusItem strong{font-size:24px}.statusLabel{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:13px}.statusCard{border:1px solid var(--border);border-radius:14px;margin:18px 0;padding:18px}.statusCard h2,.statusCard h3{margin:0 0 8px}.statusCard p{margin:0}.statusCardSuccess{background:#2fc98017;border-color:#2fc98047}.statusCardWarn{background:#ffb84d17;border-color:#ffb84d47}.statusCardError{background:#ff5d7a17;border-color:#ff5d7a47}.infoList{color:var(--muted);gap:8px;margin:0;padding-left:20px;display:grid}.compactList{margin-top:10px}.footer{border-top:1px solid var(--border);color:var(--muted);padding:22px 0}.footerInner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.footerLinks{flex-wrap:wrap;gap:14px;display:flex}.footerLinks a:hover,.footerEmail:hover{color:var(--text)}@media (max-width:640px){.accountDeleteHeader{flex-direction:column}}.adminShell{gap:20px;display:grid}.adminAuthShell{max-width:680px;margin:0 auto}.adminIntroCard h1{margin:0 0 10px;font-size:clamp(28px,3.4vw,38px)}.adminIntroCard p{max-width:720px;margin:0}.adminIntroCard code,.adminList code{color:var(--accent2);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.adminIntroRow{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.adminIntroMeta{justify-items:end;gap:12px;display:grid}.adminUserBadge{border:1px solid var(--border);background:#ffffff08;border-radius:16px;gap:4px;min-width:220px;padding:14px 16px;display:grid}.adminUserRole{color:var(--accent2);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:700}.adminUserBadge strong{word-break:break-word;font-size:15px;line-height:1.4}.adminInlineNote{margin-bottom:0}.adminContent{gap:20px;display:grid}.adminNav{flex-wrap:wrap;gap:10px;display:flex}.adminNavItem{border:1px solid var(--border);color:var(--muted);background:#ffffff05;border-radius:999px;padding:10px 14px;font-weight:600;transition:background .12s,border-color .12s,color .12s,transform .12s}.adminNavItem:hover{color:var(--text);border-color:#fff3;transform:translateY(-1px)}.adminNavItem.isActive{color:var(--text);background:linear-gradient(135deg,#7c5cff38,#41d1ff26);border-color:#7c5cff80}.adminSectionPage{gap:18px;display:grid}.adminSectionHero h1{margin:0 0 10px;font-size:clamp(26px,3vw,34px)}.adminSectionHero p{max-width:740px;margin:0}.adminMetricGrid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.adminMetricCard{border:1px solid var(--border);background:#ffffff06;border-radius:14px;flex-direction:column;gap:8px;padding:16px;display:flex}.adminMetricLabel{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:12px}.adminMetricCard strong{font-size:18px;line-height:1.3}.adminTwoColumnGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.adminListCard h2{margin:0 0 12px;font-size:20px}.adminList{color:var(--muted);gap:8px;margin:0;padding-left:20px;display:grid}.adminFoundationList{gap:12px;margin:0;padding-left:20px;display:grid}.adminFoundationList li{color:var(--muted)}.adminFoundationList strong{color:var(--text);margin-bottom:4px;display:block}.adminFoundationList p{margin:0}.adminGateCard{max-width:720px;margin:0 auto}.adminLoginCard{gap:10px;display:grid}.adminZonesExplorer{gap:18px;display:grid}.adminZonesHero h1{margin:0 0 10px;font-size:clamp(28px,3.3vw,38px)}.adminZonesHero p{max-width:760px;margin:0}.adminZonesSummaryGrid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;display:grid}.adminInfoCard{border:1px solid var(--border);background:#ffffff06;border-radius:14px;flex-direction:column;gap:8px;padding:16px;display:flex}.adminInfoCard span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:12px}.adminInfoCard strong{font-size:21px}.adminInfoCard.isAccent{background:linear-gradient(135deg,#41d1ff1f,#7c5cff1a);border-color:#41d1ff47}.adminZonesControls{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end;gap:12px;display:grid}.adminFieldCompact{font-size:14px}.adminControlGroup,.adminFieldCompact{gap:8px;display:grid}.adminControlLabel{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:12px}.adminSegmented{flex-wrap:wrap;gap:8px;display:inline-flex}.adminSegmentedButton{border:1px solid var(--border);color:var(--muted);font:inherit;cursor:pointer;background:#ffffff05;border-radius:999px;padding:10px 14px;font-weight:600}.adminSegmentedButton.isActive{color:var(--text);background:#41d1ff1f;border-color:#41d1ff66}.adminCheckbox{min-height:46px;color:var(--text);align-items:center;gap:10px;display:inline-flex}.adminCheckbox input{width:16px;height:16px}.adminZonesLayerCard{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.adminLayerLegend{color:var(--muted);flex-wrap:wrap;gap:12px;display:flex}.adminLegendItem{align-items:center;gap:8px;display:inline-flex}.adminLegendSwatch{border-radius:999px;width:12px;height:12px;display:inline-block}.adminLegendSwatchZone{background:#54c6f5}.adminLegendSwatchSupply{background:#1ebf9e}.adminLegendSwatchDemand{background:#ff9d4d}.adminZonesMainGrid{grid-template-columns:minmax(0,1.7fr) minmax(320px,.9fr);align-items:start;gap:16px;display:grid}.adminZonesCanvasCard{min-height:620px}.adminMapFrame{height:100%;min-height:560px}.adminLeafletMap{border-radius:16px;width:100%;min-height:560px;overflow:hidden}.adminMapEmptyState h2,.adminZonesLoading h1,.adminZoneDetailCard h2{margin:0 0 10px}.adminMapEmptyState p,.adminZonesLoading p{margin:0}.adminZonesTableWrap{overflow:auto}.adminZonesTable{border-collapse:collapse;width:100%}.adminZonesTable th,.adminZonesTable td{text-align:left;white-space:nowrap;border-bottom:1px solid #ffffff14;padding:12px 14px}.adminZonesTable th{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:12px}.adminZonesTable tbody tr{cursor:pointer;transition:background .12s}.adminZonesTable tbody tr:hover{background:#ffffff08}.adminZonesTable tbody tr.isSelected{background:#41d1ff1a}.adminZoneDetailCard{gap:16px;display:grid;position:sticky;top:86px}.adminZoneDetailCard p{color:var(--muted);margin:0}.adminZoneDetailGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.adminZoneInsightCard{border:1px solid var(--border);background:#ffffff05;border-radius:14px;gap:10px;padding:16px;display:grid}.adminZoneInsightCard h3,.adminZoneInsightCard p{margin:0}.adminCompareCard{border:1px solid var(--border);background:#ffffff05;border-radius:14px;gap:14px;padding:16px;display:grid}.adminCompareHeader{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.adminCompareHeader h3,.adminCompareSnapshot h4{margin:0}.adminCompareHeader p,.adminCompareSnapshot p,.adminMutedText{color:var(--muted);margin:0}.adminMiniField{min-width:220px}.adminCompareGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.adminCompareSnapshot{background:#ffffff05;border:1px solid #ffffff14;border-radius:12px;gap:6px;padding:12px;display:grid}.adminDeltaTable{gap:8px;display:grid}.adminDeltaRow{border-bottom:1px solid #ffffff14;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(0,1fr));align-items:center;gap:10px;padding:10px 0;display:grid}.adminDeltaRow:last-child{border-bottom:0}.adminDeltaRow span,.adminDeltaRow strong{min-width:0}.adminDeltaValue{font-weight:700}.adminDeltaValue.isPositive{color:#79f2ce}.adminDeltaValue.isNegative{color:#ffb19a}@media (max-width:760px){.adminIntroMeta{justify-items:stretch;width:100%}.adminUserBadge{min-width:0}.adminTwoColumnGrid,.adminZonesControls,.adminZonesMainGrid,.adminZoneDetailGrid,.adminCompareGrid,.adminDeltaRow{grid-template-columns:1fr}.adminZoneDetailCard{position:static}.adminLeafletMap,.adminMapFrame,.adminZonesCanvasCard{min-height:480px}}
