:root{color-scheme:dark;--bg: #0f0f10;--panel: #18181b;--panel-2: #1f1f23;--border: #27272a;--border-2: #3f3f46;--fg: #fafafa;--muted: #a1a1aa;--muted-2: #71717a;--accent: #f97316;--accent-soft: rgba(249, 115, 22, .12);--danger: #ef4444;--green: #22c55e;--amber: #eab308;--slate: #64748b;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--fg)}code{background:var(--panel);padding:.1rem .4rem;border-radius:4px;font-size:.85em}button{font:inherit;padding:.55rem 1rem;border-radius:8px;border:1px solid var(--accent);background:var(--accent);color:#0f0f10;cursor:pointer;font-weight:600;transition:filter .12s}button:hover:not(:disabled){filter:brightness(1.08)}button:disabled{opacity:.55;cursor:not-allowed}button.ghost{background:transparent;color:var(--muted);border-color:var(--border);font-weight:500}button.ghost:hover:not(:disabled){color:var(--fg);border-color:var(--border-2);filter:none}.logo{display:inline-flex;align-items:center;gap:.6rem}.logo svg{display:block}.logo .wordmark{font-weight:600;letter-spacing:-.01em}.boot{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:var(--bg)}.boot-dot{width:10px;height:10px;border-radius:50%;background:var(--accent);animation:pulse 1.1s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.35;transform:scale(1)}50%{opacity:1;transform:scale(1.4)}}.login{min-height:100%;display:grid;place-items:center;padding:2rem 1rem}.login-card{width:100%;max-width:360px;background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:2rem;display:grid;gap:1rem}.login-head{text-align:center;display:grid;gap:.5rem;justify-items:center;margin-bottom:.5rem}.login-head h1{font-size:1.1rem;margin:0;letter-spacing:-.01em}.login-head p{margin:0;color:var(--muted);font-size:.875rem}.login-card label{display:grid;gap:.35rem;font-size:.85rem;color:var(--muted)}.login-card input{font:inherit;padding:.6rem .75rem;border-radius:8px;border:1px solid var(--border);background:var(--panel-2);color:var(--fg);outline:none;transition:border-color .12s,box-shadow .12s}.login-card input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.login-card input:disabled{opacity:.6}.login-error{margin:0;color:var(--danger);font-size:.85rem;background:#ef444414;border:1px solid rgba(239,68,68,.3);padding:.55rem .75rem;border-radius:8px}.login-card button[type=submit]{margin-top:.25rem}.app-header{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.5rem;border-bottom:1px solid var(--border);background:#0f0f10d9;position:sticky;top:0;z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.app-header .brand{display:flex;align-items:center;gap:.7rem}.app-header .wordmark{font-weight:600}.app-header .account{display:flex;align-items:center;gap:.8rem}.app-header .email{color:var(--muted);font-size:.85rem}.dashboard{max-width:1100px;margin:0 auto;padding:2.5rem 1.5rem 5rem}.dashboard .intro h1{font-size:clamp(1.5rem,3vw,2rem);margin:0 0 .5rem;letter-spacing:-.02em}.dashboard .meta{color:var(--muted);font-size:.85rem;margin:0}.dashboard section{margin-top:2rem}.dashboard section h2{font-size:.95rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 1rem;font-weight:500}.channel-section{margin-top:2.5rem!important}.channel-header{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--border);padding-bottom:.6rem;margin-bottom:1rem}.channel-header h2{margin:0!important;text-transform:none!important;letter-spacing:-.01em!important;color:var(--fg)!important;font-size:1.2rem!important;font-weight:600!important}.channel-meta{color:var(--muted);font-size:.85rem}.sync-status{display:grid;grid-template-columns:auto 1fr;gap:.85rem;align-items:center;padding:.85rem 1.1rem;background:var(--panel);border:1px solid var(--border);border-radius:10px;margin-top:1.5rem}.sync-status .dot{width:10px;height:10px;border-radius:50%;background:var(--slate);box-shadow:0 0 0 0 currentColor}.sync-status[data-status=ok] .dot{background:var(--green)}.sync-status[data-status=running] .dot{background:var(--amber);animation:pulse 1.2s ease-in-out infinite}.sync-status[data-status=error] .dot{background:var(--danger)}.sync-status strong{font-size:.95rem}.sync-status p{margin:.2rem 0 0;color:var(--muted);font-size:.825rem}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.75rem;margin-top:1.25rem}.kpi{display:grid;gap:.25rem;padding:1rem 1.1rem;background:var(--panel);border:1px solid var(--border);border-radius:10px}.kpi-label{color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}.kpi-value{font-size:1.6rem;font-weight:600;letter-spacing:-.02em}.kpi-hint{color:var(--muted-2);font-size:.78rem}.table-wrap{border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--panel)}.campaign-table{width:100%;border-collapse:collapse;font-size:.875rem}.campaign-table th,.campaign-table td{padding:.7rem .95rem;text-align:left;border-bottom:1px solid var(--border)}.campaign-table thead th{font-weight:500;color:var(--muted);text-transform:uppercase;font-size:.72rem;letter-spacing:.06em;background:var(--panel-2)}.campaign-table tbody tr:last-child td{border-bottom:none}.campaign-table tbody tr:hover{background:var(--panel-2)}.campaign-table .num{text-align:right;font-variant-numeric:tabular-nums}.campaign-table .muted{color:var(--muted);font-size:.8rem}.status-pill{display:inline-block;padding:.15rem .55rem;border-radius:999px;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;background:var(--panel-2);color:var(--muted);border:1px solid var(--border)}.status-pill[data-status=enabled],.status-pill[data-status=active]{background:#22c55e1a;color:var(--green);border-color:#22c55e4d}.status-pill[data-status=paused]{background:#eab3081a;color:var(--amber);border-color:#eab3084d}.status-pill[data-status=removed]{background:#ef444414;color:var(--danger);border-color:#ef444440}.empty{padding:2rem;text-align:center;background:var(--panel);border:1px dashed var(--border);border-radius:10px;color:var(--muted)}.empty p{margin:0}.error-panel{margin-top:1rem;padding:.85rem 1.1rem;background:#ef444414;border:1px solid rgba(239,68,68,.3);border-radius:10px;color:var(--danger);font-size:.875rem}.error-panel strong{color:#fca5a5}main.locked{max-width:480px;margin:6rem auto;padding:2rem;text-align:center;display:grid;gap:1rem;justify-items:center}main.locked h1{margin:0}main.locked p{color:var(--muted);margin:0;line-height:1.5}
