:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#07070a;color:#f6f3ff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at top right,rgba(141,91,255,.16),transparent 34rem),#07070a}button,input,select,textarea{font:inherit}input[type=checkbox]{width:18px;height:18px;accent-color:#9b6cff}.boot,.login-shell{min-height:100vh;display:grid;place-items:center}.login-card{width:min(430px,calc(100vw - 32px));padding:32px;border:1px solid rgba(155,108,255,.24);border-radius:18px;background:#16161bf0;box-shadow:0 28px 90px #00000073}.brand-row{display:flex;align-items:center;gap:12px}.brand-mark{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(135deg,#8b5cf6,#f33bd8);color:#fff;font-weight:900}.eyebrow{margin:0 0 4px;color:#a8a1b7;font-size:13px;letter-spacing:0;text-transform:uppercase}h1,h2,p{margin-top:0}.login-card h1{margin:0 0 28px}label{display:grid;gap:8px;margin:18px 0;color:#c9c3d6;font-weight:700}input,select,textarea{width:100%;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:12px 14px;background:#111116;color:#fff;outline:none}textarea{min-height:110px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:#9b6cff;box-shadow:0 0 0 3px #9b6cff26}.primary,.secondary,.icon-button,.logout{border:0;cursor:pointer;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:800}.primary{width:100%;padding:13px 16px;background:linear-gradient(135deg,#8b5cf6,#d93df6);color:#fff}.secondary,.icon-button{padding:10px 13px;background:#ffffff14;color:#f8f5ff;border:1px solid rgba(255,255,255,.1)}button:disabled{opacity:.65;cursor:not-allowed}.error,.notice{color:#ffb4b4;background:#ff48481f;border:1px solid rgba(255,72,72,.24);border-radius:12px;padding:12px 14px}.app-shell{min-height:100vh;display:grid;grid-template-columns:260px 1fr}.sidebar{position:sticky;top:0;height:100vh;padding:22px;background:#101014e6;border-right:1px solid rgba(255,255,255,.08)}.sidebar nav{display:grid;gap:8px;margin-top:28px}.sidebar a,.logout{width:100%;justify-content:flex-start;padding:12px;color:#b8b0c8;text-decoration:none;border-radius:12px;background:transparent}.sidebar a.active,.sidebar a:hover,.logout:hover{color:#fff;background:#ffffff14}.logout{position:absolute;left:22px;right:22px;bottom:22px;width:calc(100% - 44px);overflow:hidden;text-overflow:ellipsis}.content{padding:32px}.topbar,.panel-heading,.filters{display:flex;align-items:center;justify-content:space-between;gap:16px}.topbar h1{margin-bottom:0;font-size:clamp(30px,4vw,48px)}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:24px 0}.metric-card,.panel{border:1px solid rgba(255,255,255,.08);border-radius:18px;background:#16161be0}.metric-card{padding:20px}.metric-icon{color:#9b6cff}.metric-card p,.metric-card span,.panel-heading p,small{color:#948d9f}.metric-card strong{display:block;margin:6px 0;font-size:34px}.panel{padding:24px;margin-bottom:24px}.chart-shell{position:relative;margin-top:18px}.chart{width:100%;height:240px;overflow:visible}.chart-dot{fill:#f5f1ff;stroke:#9b6cff;stroke-width:1.1;cursor:pointer;vector-effect:non-scaling-stroke}.chart-dot:hover,.chart-dot:focus{fill:#fff;outline:none}.chart-tooltip{position:absolute;transform:translate(-50%,calc(-100% - 12px));min-width:92px;padding:9px 11px;border-radius:12px;background:#f6f3ff;color:#17131f;box-shadow:0 14px 35px #0000004d;pointer-events:none;text-align:center}.chart-tooltip strong,.chart-tooltip span{display:block}.chart-tooltip span{color:#6d6478;font-size:12px;font-weight:800}.range-toggle{display:inline-flex;gap:6px;padding:4px;border-radius:999px;background:#ffffff0f}.range-toggle button{border:0;border-radius:999px;padding:9px 13px;background:transparent;color:#bdb6cc;font-weight:800;cursor:pointer}.range-toggle button.active{background:#f5f1ff;color:#17131f}.filters{flex-wrap:wrap;justify-content:flex-end}.search{min-width:240px;display:flex;align-items:center;gap:8px;padding-left:12px;border-radius:12px;background:#111116;border:1px solid rgba(255,255,255,.1)}.filters select{width:auto;min-width:170px}.targeting-summary{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.targeting-summary span{display:inline-flex;align-items:center;gap:7px;padding:8px 10px;border-radius:999px;background:#9b6cff1f;color:#d9c8ff;font-size:13px;font-weight:800}.search input{border:0;background:transparent;box-shadow:none}.table-wrap{margin-top:18px;overflow:auto}table{width:100%;border-collapse:collapse;min-width:1180px}th,td{padding:14px 10px;border-bottom:1px solid rgba(255,255,255,.08);text-align:left;vertical-align:middle}th{color:#9d96aa;font-size:13px}.user-cell{display:flex;align-items:center;gap:12px}.user-cell span:last-child,.stacked,td:nth-child(5),td:nth-child(8){display:grid;gap:4px}.avatar{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:#2d2d34;color:#fff;font-weight:900}.pill{display:inline-flex;width:max-content;padding:7px 10px;border-radius:999px;background:#9b6cff29;color:#d9c8ff;font-size:13px;font-weight:800}.pill.success{background:#53de7126;color:#8df0a2}.pill.muted{background:#ffffff14;color:#aaa3b8}.pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;color:#a9a1b8}.pagination>div{display:flex;gap:8px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;background:#000000b8}.modal{width:min(520px,100%);padding:26px;border-radius:18px;background:#17171d;border:1px solid rgba(255,255,255,.1)}.modal-actions{display:flex;justify-content:flex-end;gap:12px}@media (max-width: 980px){.app-shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.logout{position:static;width:100%;margin-top:16px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar,.panel-heading{align-items:flex-start;flex-direction:column}}@media (max-width: 620px){.content{padding:18px}.metrics{grid-template-columns:1fr}.filters,.search{width:100%}}
