:root{--bg: #eef5f8;--bg-soft: #ffffff;--panel: #ffffff;--line: #d6e2ea;--text: #0e1b2a;--muted: #5a7185;--accent: #56cde7;--primary: #0f2b6b;--warn: #ff9a3a}:root.dark{--bg: #0c1219;--bg-soft: #151e2a;--panel: #192332;--line: #2d3a4d;--text: #eef5ff;--muted: #9cb0c6;--accent: #56cde7;--primary: #56cde7;--warn: #ffb56b}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:Sora,sans-serif;color:var(--text);background:radial-gradient(900px 400px at 100% -15%,color-mix(in oklab,var(--accent) 16%,transparent),transparent 55%),radial-gradient(700px 360px at 0% 0%,color-mix(in oklab,var(--warn) 14%,transparent),transparent 55%),var(--bg)}input,select,textarea,button{font-family:inherit}h1,h2,h3{margin:0 0 10px}.auth-wrap,.center{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-card{width:min(560px,100%);border:1px solid var(--line);border-radius:18px;background:color-mix(in oklab,var(--panel) 92%,transparent);padding:28px;box-shadow:0 18px 45px #08132424}.csoc-gate{border-color:#c7d6e1;background:linear-gradient(180deg,#fff,#f7fbff)}.brand-logo{height:34px;width:auto;max-width:190px;object-fit:contain;display:block;margin-bottom:12px}.eyebrow,.mono,.hint{font-family:IBM Plex Mono,monospace}.eyebrow{color:var(--primary);text-transform:uppercase;font-size:11px;letter-spacing:.13em}.muted{color:var(--muted)}.error{color:#ef4444}.hint{color:var(--muted);font-size:12px}.stack{display:grid;gap:14px}label{display:grid;gap:7px;font-size:14px}input,select,textarea{width:100%;border:1px solid var(--line);background:var(--bg-soft);color:var(--text);border-radius:10px;padding:10px 12px}select[multiple]{min-height:140px}.checkbox-row{display:flex;align-items:center;gap:10px}.checkbox-row input[type=checkbox]{width:16px;height:16px}.repeatable-wrap>label{font-weight:600}button{border:1px solid color-mix(in oklab,var(--primary) 35%,var(--line));background:color-mix(in oklab,var(--primary) 14%,var(--bg-soft));color:var(--text);border-radius:10px;padding:10px 14px;cursor:pointer}button.active{border-color:var(--primary);background:color-mix(in oklab,var(--primary) 18%,var(--bg-soft))}button.ghost{background:transparent;border-color:var(--line)}.inline{margin-bottom:10px}.app-shell{min-height:100vh;display:grid;grid-template-columns:280px 1fr;position:relative}.sidebar{border-right:1px solid var(--line);background:color-mix(in oklab,var(--bg-soft) 90%,transparent);padding:18px 14px;display:grid;align-content:start;gap:10px;z-index:30;overflow-y:auto}.sidebar .brand-logo{height:34px;max-width:170px;margin-bottom:4px}.sidebar .mono{font-size:12px;line-height:1.3;word-break:break-word}.theme-row{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:4px}.sidebar nav{display:grid;gap:4px}.sidebar-subnav{margin-top:2px;padding-top:8px;border-top:1px solid var(--line)}.sidebar-subnav nav{display:grid;gap:8px}.sidebar-subnav button{text-align:left}.sidebar nav button{text-align:left;border:0;border-left:3px solid transparent;border-radius:8px;background:transparent;padding:9px 10px;font-size:15px;font-weight:600;color:var(--text)}.sidebar nav button:hover{background:color-mix(in oklab,var(--primary) 10%,var(--bg-soft))}.sidebar nav button.active{border-left-color:var(--primary);background:color-mix(in oklab,var(--primary) 16%,var(--bg-soft))}.sidebar .ghost{margin-top:8px}.sidebar>button.ghost:last-of-type{margin-top:auto}.main{padding:24px;overflow:auto}.mobile-nav-trigger,.sidebar-overlay{display:none}.header{display:flex;justify-content:space-between;align-items:start;margin-bottom:16px;gap:12px}.progress{width:260px;display:grid;gap:7px;justify-items:end}.progress div{width:100%;height:9px;background:color-mix(in oklab,var(--line) 70%,transparent);border-radius:999px;overflow:hidden}.progress i{display:block;height:100%;background:linear-gradient(90deg,var(--accent),var(--warn))}.admin-links button{text-transform:capitalize}.panel{border:1px solid var(--line);background:color-mix(in oklab,var(--panel) 94%,transparent);border-radius:14px;padding:16px}.grid2{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.grid2 .full{grid-column:1 / -1}.actions{margin-top:14px;display:flex;justify-content:space-between;gap:12px}.right-actions{display:flex;gap:10px}pre{margin:0;white-space:pre-wrap;background:color-mix(in oklab,var(--bg) 90%,var(--panel));border:1px solid var(--line);border-radius:10px;padding:10px}.kpi-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:14px}.kpi-grid article{border:1px solid var(--line);border-radius:12px;padding:14px;background:color-mix(in oklab,var(--panel) 95%,transparent)}.kpi-grid strong{font-size:28px}table{width:100%;border-collapse:collapse;font-size:13px}td,th{border-top:1px solid var(--line);padding:8px;text-align:left}.country-box{border:1px solid var(--line);border-radius:10px;padding:10px;background:var(--bg-soft)}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.chip{display:inline-flex;align-items:center;gap:6px;border:1px solid color-mix(in oklab,var(--accent) 40%,var(--line));border-radius:999px;padding:4px 10px;background:color-mix(in oklab,var(--accent) 18%,var(--panel));font-size:12px}.chip button{border:0;background:transparent;padding:0;font-size:12px;line-height:1}.tag-input-row{display:grid;grid-template-columns:1fr auto;gap:8px}.invite-box{display:grid;gap:10px;border:1px dashed var(--line);padding:12px;border-radius:12px}.invite-box img{width:280px;max-width:100%;border-radius:10px;background:#fff;padding:8px}@media(max-width:980px){.app-shell{grid-template-columns:1fr}.mobile-nav-trigger{display:inline-flex;position:fixed;top:12px;left:12px;z-index:40;padding:9px 12px;border-radius:9px}.sidebar{position:fixed;left:0;top:0;bottom:0;width:min(84vw,300px);border-right:1px solid var(--line);transform:translate(-100%);transition:transform .18s ease;overflow-y:auto}.nav-open .sidebar{transform:translate(0)}.sidebar-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#070a0e73;border:0;opacity:0;pointer-events:none;z-index:20}.nav-open .sidebar-overlay{opacity:1;pointer-events:auto}.grid2,.kpi-grid{grid-template-columns:1fr}.main{padding:58px 16px 16px}.header{display:grid;align-items:stretch}.progress{width:100%;justify-items:start}.actions{display:grid}}
