:root{--bg: #f6f8fb;--surface: #ffffff;--surface-soft: #edf3ff;--surface-soft-2: #e4ecff;--text: #111827;--muted: #374151;--primary: #1d4ed8;--primary-2: #2563eb;--sun: #f3d977}*{box-sizing:border-box}body{margin:0;font-family:Poppins,Arial,sans-serif;background:var(--bg);color:var(--text)}.layout{min-height:100vh;display:grid;grid-template-columns:260px 1fr}.sidebar{background:var(--surface-soft);color:var(--text);padding:20px;display:flex;flex-direction:column;gap:8px}.brandBlock{display:flex;gap:10px;align-items:center;margin-bottom:8px}.logoDot{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;font-size:12px;font-weight:800;color:#fff;background:linear-gradient(130deg,var(--primary),var(--primary-2))}.brandBlock h1{margin:0;font-size:18px}.brandBlock p{margin:2px 0 0;color:var(--muted);font-size:11px;letter-spacing:.04em;text-transform:uppercase}.nav{text-align:left;border:0;background:transparent;color:var(--muted);padding:10px 12px;border-radius:8px;cursor:pointer;font-weight:600}.nav.active,.nav:hover{background:var(--surface);color:var(--primary)}.nav .hgi{margin-right:8px;font-size:16px;vertical-align:-2px}.primaryCta{margin-top:auto;border:0;border-radius:14px;padding:10px 12px;color:#fff;font-weight:700;background:linear-gradient(140deg,var(--primary),var(--primary-2))}.sideFooter{margin-top:12px;display:flex;align-items:center;gap:10px;border-radius:12px;background:var(--surface-soft-2);padding:10px}.sideFooter strong{display:block;font-size:13px}.sideFooter p{margin:2px 0 0;font-size:11px;color:var(--muted)}.avatar{width:32px;height:32px;border-radius:999px;background:#fff;color:var(--primary);display:grid;place-items:center;font-size:11px;font-weight:800}.main{padding:20px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.topbar h2{margin:0;font-family:Poppins,Arial,sans-serif;font-size:34px;font-weight:800;letter-spacing:-.02em}.topbar input{width:320px;max-width:100%;border:0;border-radius:999px;background:var(--surface);padding:10px 14px}.topbarActions{display:flex;gap:8px;align-items:center}.ghostBtn,.primaryBtn{border:0;border-radius:12px;padding:10px 12px;font-weight:700}.ghostBtn{background:var(--surface-soft-2);color:var(--primary)}.primaryBtn{color:#fff;background:linear-gradient(140deg,var(--primary),var(--primary-2))}.ghostBtn .hgi,.primaryBtn .hgi{margin-right:6px;vertical-align:-2px}.grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.metric{background:var(--surface-soft);border-radius:14px;padding:14px;position:relative;overflow:hidden}.metric.accent:before{content:"";position:absolute;left:0;top:0;height:100%;width:4px;background:var(--sun)}.metric p{margin:0;font-size:11px;color:var(--muted);text-transform:uppercase}.metric h4{margin:6px 0;font-size:28px;font-family:Poppins,Arial,sans-serif;line-height:1.15}.metric span{font-size:12px;color:var(--muted)}.panel{border-radius:16px;background:var(--surface);padding:14px;box-shadow:0 12px 28px -20px #0f355038}.panel h3{margin:0 0 10px;font-size:18px;font-family:Poppins,Arial,sans-serif}.list{margin:0;padding-left:18px}.list li{margin:8px 0}.progressWrap{margin-top:10px}.progressRow{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-bottom:6px}.progress{height:8px;border-radius:999px;background:var(--surface-soft-2);overflow:hidden}.progress div{height:100%;background:linear-gradient(140deg,var(--primary),var(--primary-2))}.dashboardHeaderRow{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.dashboardHeaderRow h3{margin:0;font-size:16px}.dashboardHeaderRow select{border:0;border-radius:10px;padding:8px 10px;background:var(--surface-soft);color:var(--text);font-weight:600}.eventList{display:grid;gap:8px}.eventItem{border:0;background:var(--surface-soft);border-radius:12px;padding:10px;text-align:left;cursor:pointer;display:flex;justify-content:space-between;align-items:center}.eventItem strong{display:block;font-size:14px}.eventItem span{display:block;font-size:12px;color:var(--muted)}.eventItem small{font-size:11px;font-weight:700;color:var(--primary)}.eventItem.active{background:var(--surface-soft-2);outline:2px solid var(--primary)}.detailGrid{display:grid;gap:6px}.detailGrid p{margin:0;font-size:14px}.trendStack{display:grid;gap:10px}.trendRow{border-radius:10px;background:var(--surface-soft);padding:10px}.trendLabel{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:13px}.trendLabel strong{font-size:13px}.table{width:100%;border-collapse:collapse}.table th{text-align:left;background:var(--surface-soft-2);font-size:11px;text-transform:uppercase;color:var(--muted);padding:10px}.table td{padding:10px;background:var(--surface);font-size:13px}.table tbody tr:nth-child(2n) td{background:#f7fcfd}.table tbody tr:hover td{background:var(--surface-soft)}.chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.chips.tight{margin:0}.chip{font-size:12px;border-radius:999px;padding:6px 10px;background:var(--surface-soft-2);color:var(--muted);font-weight:700;cursor:pointer}.chip.active{background:var(--primary);color:#fff}.formGrid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.formGrid input{border:0;background:var(--surface-soft);border-radius:10px;padding:10px;font-size:13px}.actions{margin-top:10px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}.actions input{border:0;background:var(--surface-soft);border-radius:10px;padding:10px;min-width:220px}.switchRow{margin-top:10px;display:flex;align-items:center;justify-content:space-between;border-radius:10px;background:var(--surface-soft);padding:10px;font-size:14px;gap:8px}.heroPlaceholder{height:140px;border-radius:12px;display:grid;place-items:center;color:var(--muted);background:linear-gradient(120deg,var(--surface-soft-2),var(--surface-soft));margin-bottom:10px;font-size:13px}.hint{margin:6px 0;color:var(--muted);font-size:13px}.radiusBar{margin-top:10px;border-radius:10px;background:var(--surface-soft);padding:10px;display:flex;justify-content:space-between;font-size:13px}input[type=range]{width:100%;accent-color:var(--primary)}.kpiInline{display:flex;justify-content:space-between;align-items:center;background:var(--surface-soft);border-radius:10px;padding:8px 10px;margin-bottom:10px}.kpiBand{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:10px}.kpiBand>div{background:var(--surface-soft);border-radius:10px;padding:8px 10px}.kpiBand small{display:block;color:var(--muted);font-size:11px}.kpiBand strong{display:block;margin-top:4px;font-size:20px;font-family:Poppins,Arial,sans-serif}.kpiInline span{font-size:12px;color:var(--muted)}.kpiInline strong{font-size:18px;font-family:Poppins,Arial,sans-serif}.span2{grid-column:1 / -1}.small{margin-top:10px;font-size:12px;padding:8px 10px}.leaderMini{margin-top:10px;background:var(--surface-soft);border-radius:10px;padding:10px}.leaderMini span{display:block;font-size:12px;color:var(--muted)}.leaderMini strong{font-size:14px}.notice{margin-bottom:12px;border-radius:10px;background:#fff7d6;color:#111827;font-weight:700;padding:10px 12px}.linkBtn{border:0;background:transparent;color:var(--primary);cursor:pointer;font-size:12px;font-weight:700}.rowActions{display:flex;gap:8px;flex-wrap:wrap}.modalBackdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;display:grid;place-items:center;z-index:100}.confirmModal{width:min(420px,calc(100% - 24px));background:var(--surface);border-radius:14px;padding:14px;box-shadow:0 24px 48px -20px #0f172a6b}.confirmModal h3{margin:0 0 8px}.confirmModal p{margin:0;font-size:14px;color:var(--muted)}.radioGroup{margin-top:12px;display:grid;gap:8px}.radioGroup label{display:flex;align-items:center;gap:8px;font-size:14px}@media (max-width: 1100px){.layout{grid-template-columns:220px 1fr}.grid4{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar{flex-direction:column;align-items:flex-start}.topbarActions{width:100%}.topbarActions input{flex:1;min-width:180px}}@media (max-width: 800px){.layout{grid-template-columns:1fr}.sidebar{position:static}.grid2,.formGrid,.grid4,.kpiBand{grid-template-columns:1fr}.topbarActions{flex-wrap:wrap}.eventItem{flex-direction:column;align-items:flex-start;gap:4px}.dashboardHeaderRow{flex-direction:column;align-items:flex-start;gap:8px}}.authShell{min-height:100vh;display:grid;place-items:center;background:#0b1220;color:#e2e8f0;padding:24px}.authCard{width:min(460px,100%);background:#111827;border:1px solid #334155;border-radius:14px;padding:24px}.authCard h1{margin:0 0 8px;font-size:24px}.authCard p{margin:0 0 16px;color:#94a3b8}.authCard form{display:grid;gap:12px}.authCard input{height:42px;border-radius:10px;border:1px solid #475569;background:#020617;color:#e2e8f0;padding:0 12px}.authCard button{height:42px;border-radius:10px;border:1px solid #2563eb;background:#2563eb;color:#f8fafc;font-weight:700}.authNotice{margin-top:12px;color:#cbd5e1;font-size:13px}.authErrorBanner{position:fixed;top:16px;right:16px;background:#7f1d1d;color:#fee2e2;border:1px solid #ef4444;border-radius:8px;padding:8px 10px;z-index:9999;max-width:500px}.sessionBanner{position:fixed;top:12px;right:12px;display:flex;align-items:center;gap:8px;background:#0f172a;color:#e2e8f0;border:1px solid #334155;border-radius:10px;padding:8px 10px;z-index:9999}.sessionBanner button{height:30px;border-radius:8px;border:1px solid #334155;background:#1e293b;color:#e2e8f0;padding:0 10px}
