:root{--bg:#0b0b0b;--bg-elevated:#121212;--bg-card:#1c1c1c;--border:#2f2f2f;--text:#f5f5f5;--text-secondary:#b3b3b3;--text-muted:#737373;--primary:#208aef;--primary-hover:#1878d4;--accent:#208aef;--primary-rgb:32,138,239;--success:#43a047;--danger:#ef4444;--radius:10px;--radius-lg:14px;--shadow:0 12px 40px rgba(0,0,0,0.45)}*{box-sizing:border-box}body,html{margin:0;padding:0;background:radial-gradient(1200px 600px at 10% -10%,rgba(var(--primary-rgb),.14),transparent 55%),radial-gradient(900px 500px at 90% 0,rgba(var(--primary-rgb),.1),transparent 50%),var(--bg);color:var(--text);font-family:Segoe UI,Helvetica Neue,Arial,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}input,select,textarea{width:100%;padding:12px 14px;background:var(--bg);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:15px}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.25)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border:none;border-radius:8px;font-weight:600;transition:background .15s,transform .1s}.btn:active{transform:scale(.98)}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover)}.btn-secondary{background:var(--bg-card);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{background:#222}.btn-ghost{background:transparent;color:var(--text-secondary);border:1px solid transparent}.btn-ghost:hover{color:var(--text);background:var(--bg-card)}.btn-danger{background:transparent;color:var(--danger);border:1px solid rgba(239,68,68,.4)}.btn-danger:hover{background:rgba(239,68,68,.1)}.btn-sm{padding:8px 14px;font-size:14px}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px}.badge{display:inline-block;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;background:rgba(32,138,239,.15);color:var(--primary)}.badge-success{background:rgba(76,175,80,.15);color:var(--success)}.badge-muted{background:rgba(255,255,255,.06);color:var(--text-secondary)}.grid-2{grid-template-columns:repeat(2,1fr);grid-gap:16px}.grid-2,.grid-3{display:grid;gap:16px}.grid-3{grid-template-columns:repeat(3,1fr);grid-gap:16px}@media (max-width:900px){.grid-2,.grid-3{grid-template-columns:1fr}}.table{width:100%;border-collapse:collapse}.table td,.table th{padding:12px 14px;text-align:left;border-bottom:1px solid var(--border)}.table th{color:var(--text-muted);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.table tr:hover td{background:rgba(255,255,255,.02)}.empty-state{text-align:center;padding:48px 24px;color:var(--text-secondary)}.toast{position:fixed;bottom:24px;right:24px;padding:14px 20px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);z-index:1000;animation:slideUp .2s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.legal-page{max-width:820px;margin:0 auto;padding:48px 32px 64px}.legal-header h1{font-size:clamp(32px,5vw,42px);font-weight:800;margin:0 0 12px;line-height:1.15}.legal-subtitle{color:var(--text-secondary);font-size:17px;line-height:1.6;margin:0 0 8px}.legal-meta{color:var(--text-muted);font-size:13px;margin:0 0 28px}.legal-notice{background:rgba(32,138,239,.08);border:1px solid rgba(32,138,239,.25);border-radius:var(--radius-lg);padding:20px 22px;margin-bottom:32px;font-size:14px;line-height:1.65;color:var(--text-secondary)}.legal-notice strong{color:var(--text);display:block;margin-bottom:8px;font-size:13px;letter-spacing:.06em;text-transform:uppercase}.legal-toc{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px 24px;margin-bottom:40px}.legal-toc-title{margin:0 0 12px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.legal-toc ol{margin:0;padding-left:20px;display:grid;grid-gap:8px;gap:8px}.legal-toc a{color:var(--primary);font-size:14px;text-decoration:none}.legal-toc a:hover{text-decoration:underline}.legal-section{margin-bottom:36px;scroll-margin-top:24px}.legal-section h2{font-size:20px;font-weight:700;margin:0 0 14px;padding-bottom:10px;border-bottom:1px solid var(--border)}.legal-prose{color:var(--text-secondary);font-size:15px;line-height:1.75}.legal-prose p{margin:0 0 14px}.legal-prose p:last-child{margin-bottom:0}.legal-prose ol,.legal-prose ul{margin:0 0 14px;padding-left:22px}.legal-prose li{margin-bottom:8px}.legal-prose li:last-child{margin-bottom:0}.legal-prose a{color:var(--primary)}.legal-footer-note{margin-top:16px;padding-top:24px;border-top:1px solid var(--border);color:var(--text-muted);font-size:14px;text-align:center}.legal-footer-note a{color:var(--primary)}.admin-shell{display:flex;min-height:calc(100vh - 65px)}.admin-sidebar{width:240px;flex-shrink:0;border-right:1px solid var(--border);background:var(--bg-elevated);padding:24px 16px}.admin-sidebar-title{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin:0 12px 12px}.admin-nav-btn{display:block;width:100%;text-align:left;padding:10px 14px;margin-bottom:4px;border:none;border-radius:8px;background:transparent;color:var(--text-secondary);font-weight:500;font-size:14px}.admin-nav-btn:hover{background:rgba(255,255,255,.04);color:var(--text)}.admin-nav-btn.active{background:rgba(32,138,239,.15);color:var(--primary);font-weight:600}.admin-main{flex:1 1;min-width:0;padding:32px 28px 80px}.admin-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:28px;flex-wrap:wrap}.admin-stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));grid-gap:14px;gap:14px;margin-bottom:28px}.admin-stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:18px 20px}.admin-stat-card-clickable{display:block;width:100%;text-align:left;cursor:pointer;transition:border-color .15s ease,transform .15s ease,background .15s ease;color:inherit;font:inherit}.admin-stat-card-clickable:hover{border-color:color-mix(in srgb,var(--accent,#38bdf8) 55%,var(--border));background:color-mix(in srgb,var(--bg-elevated) 80%,var(--bg-card));transform:translateY(-1px)}.admin-stat-hint{margin-top:8px;font-size:12px;font-weight:600;color:var(--text-muted)}.admin-detail-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px;padding:10px 12px;border-radius:var(--radius-md,10px);border:1px solid var(--border);background:color-mix(in srgb,var(--bg-elevated) 70%,transparent);font-size:13px;color:var(--text-secondary)}.admin-hbar-row-clickable{width:100%;border:0;background:transparent;padding:4px 0;cursor:pointer;border-radius:8px;text-align:left;color:inherit;font:inherit}.admin-hbar-row-clickable:hover .admin-hbar-track{outline:1px solid color-mix(in srgb,var(--accent,#38bdf8) 40%,transparent)}.admin-vbar-col-clickable{border:0;background:transparent;padding:0;cursor:pointer}.admin-vbar-col-clickable:hover .admin-vbar-fill{filter:brightness(1.15)}.admin-stat-label{font-size:12px;color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.admin-stat-value{font-size:28px;font-weight:800;margin-top:6px}.admin-platform-note{color:var(--text-muted);font-size:13px;margin:0 0 16px}.admin-platform-breakdown{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.admin-platform-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:var(--bg-elevated);font-size:13px;color:var(--text-secondary)}.admin-platform-chip strong{color:var(--text);font-weight:700}.admin-filters{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:12px;gap:12px;align-items:end;margin-bottom:20px}.admin-filter-field{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:600;color:var(--text-muted)}.admin-filter-field input[type=date],.admin-filter-field select{width:100%;min-height:38px;font-weight:500;color:var(--text)}.admin-filter-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:38px;flex-wrap:wrap}.admin-filter-count{font-size:13px;font-weight:600;color:var(--text-secondary)}.admin-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px;margin-bottom:24px}.admin-chart-card h3{font-size:15px;font-weight:700;margin:0 0 4px}.admin-chart-empty{color:var(--text-muted);font-size:13px;margin:12px 0 0}.admin-hbar{display:flex;flex-direction:column;gap:8px;margin-top:12px}.admin-hbar-row{display:grid;grid-template-columns:96px 1fr 36px;grid-gap:8px;gap:8px;align-items:center}.admin-hbar-label{font-size:12px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-hbar-track{height:10px;border-radius:999px;background:color-mix(in srgb,var(--border) 70%,transparent);overflow:hidden}.admin-hbar-fill{height:100%;border-radius:999px;min-width:4px}.admin-hbar-value{font-size:12px;font-weight:700;text-align:right;color:var(--text)}.admin-vbar{margin-top:12px}.admin-vbar-plot{gap:2px;width:100%;border-bottom:1px solid var(--border);padding-bottom:4px}.admin-vbar-col,.admin-vbar-plot{display:flex;align-items:flex-end}.admin-vbar-col{flex:1 1;justify-content:center;min-width:0;height:100%}.admin-vbar-fill{width:100%;max-width:14px;border-radius:3px 3px 0 0;min-height:0}.admin-vbar-axis{display:flex;justify-content:space-between;margin-top:6px;font-size:11px;color:var(--text-muted)}@media (max-width:900px){.admin-chart-grid{grid-template-columns:1fr}.admin-chart-card[style]{grid-column:auto!important}}.pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:16px;padding-top:12px;border-top:1px solid var(--border)}.pagination-meta{font-size:13px;color:var(--text-muted)}.pagination-actions{display:flex;align-items:center;gap:8px}.pagination-page{font-size:13px;color:var(--text-secondary);min-width:96px;text-align:center}.admin-table-wrap{overflow-x:auto}.admin-actions{display:flex;gap:6px;flex-wrap:wrap}.badge-warning{background:rgba(255,152,0,.15);color:#ffb74d}.badge-danger{background:rgba(239,68,68,.15);color:var(--danger)}@media (max-width:900px){.admin-shell{flex-direction:column}.admin-sidebar{width:100%;border-right:none;border-bottom:1px solid var(--border);display:flex;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;gap:6px;padding:8px 12px;position:-webkit-sticky;position:sticky;top:65px;z-index:5;background:var(--bg-elevated)}.admin-sidebar-title{display:none}.admin-nav-btn{width:auto;margin-bottom:0;white-space:nowrap;flex-shrink:0}}.admin-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.65);display:flex;align-items:center;justify-content:center;padding:24px;z-index:200}.admin-modal{width:100%;max-width:480px;max-height:90vh;overflow-y:auto}.admin-field-label{display:block;font-size:13px;font-weight:600;color:var(--text-secondary);margin-bottom:6px}.admin-link{color:var(--primary);font-size:13px;font-weight:500}.admin-link:hover{text-decoration:underline}.impersonation-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:12px 24px;background:rgba(255,152,0,.12);border-bottom:1px solid rgba(255,152,0,.35);color:#ffcc80;font-size:14px}.admin-export-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.viz-line-wrap{position:relative;width:100%}.viz-line-wrap svg{width:100%;height:220px;display:block}.viz-grid{stroke:var(--border);stroke-width:1;stroke-dasharray:3 4}.viz-axis{fill:var(--text-muted);font-size:11px}.viz-crosshair{stroke:var(--text-muted);stroke-width:1}.viz-tooltip{position:absolute;top:8px;z-index:5;min-width:150px;padding:8px 10px;border-radius:8px;border:1px solid var(--border);background:rgba(18,18,18,.96);font-size:12px;line-height:1.6;pointer-events:none;box-shadow:var(--shadow)}.viz-legend{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 10px}.viz-legend-item{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-secondary);font-size:12px;cursor:pointer}.viz-legend-item.off{opacity:.4;text-decoration:line-through}.viz-swatch{display:inline-block;width:10px;height:10px;border-radius:3px;flex-shrink:0}.viz-muted{color:var(--text-muted);font-size:12px}.viz-donut{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:8px}.viz-donut-total{fill:var(--text);font-size:16px;font-weight:800}.viz-donut-caption{fill:var(--text-muted);font-size:7px}.viz-donut-legend{list-style:none;margin:0;padding:0;flex:1 1;min-width:160px}.viz-donut-legend button{display:grid;grid-template-columns:12px 1fr auto 40px;align-items:center;grid-gap:8px;gap:8px;width:100%;padding:4px 6px;border:0;border-radius:6px;background:transparent;color:inherit;font:inherit;font-size:13px;text-align:left}.viz-donut-legend button:not(:disabled){cursor:pointer}.viz-donut-legend button:not(:disabled):hover{background:rgba(255,255,255,.04)}.viz-donut-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary)}.viz-kpi-foot{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;min-height:18px}.viz-delta{font-size:12px;font-weight:700;padding:1px 6px;border-radius:999px}.viz-delta-good{color:#4ade80;background:rgba(74,222,128,.12)}.viz-delta-bad{color:#f87171;background:rgba(248,113,113,.12)}.viz-delta-flat{color:var(--text-muted);background:rgba(255,255,255,.05)}.viz-matrix td,.viz-matrix th{white-space:nowrap}.viz-funnel{display:grid;grid-gap:10px;gap:10px}.viz-funnel-row{display:grid;grid-template-columns:150px 1fr 170px;align-items:center;grid-gap:12px;gap:12px}.viz-funnel-label{font-size:13px;color:var(--text-secondary)}.viz-funnel-track{background:var(--bg-elevated);border-radius:6px;height:24px;overflow:hidden}.viz-funnel-fill{height:100%;background:var(--primary)}.viz-funnel-value{font-size:13px}.viz-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin-bottom:20px}.viz-presets{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden}.viz-presets button{padding:8px 12px;border:0;border-right:1px solid var(--border);background:var(--bg-elevated);color:var(--text-secondary);font-size:13px;cursor:pointer}.viz-presets button:last-child{border-right:0}.viz-presets button.active{background:rgba(32,138,239,.18);color:var(--primary);font-weight:700}.viz-section-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap}.viz-kpi-row{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.viz-funnel-card{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);grid-gap:32px;gap:32px;margin-bottom:16px}.viz-funnel-card h3{margin:0}.viz-funnel-card .viz-funnel-row{grid-template-columns:90px 1fr 150px}@media (max-width:1100px){.viz-funnel-card{grid-template-columns:minmax(0,1fr)}}@media (max-width:640px){.viz-kpi-row{grid-template-columns:repeat(2,minmax(0,1fr))}.viz-funnel-card .viz-funnel-row{grid-template-columns:64px minmax(0,1fr);gap:4px 10px}.viz-funnel-card .viz-funnel-value{grid-column:2;font-size:12px}}.viz-health-list{list-style:none;margin:8px 0 0;padding:0}.viz-health-list li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--border);font-size:13px}@media (max-width:640px){.viz-funnel-row{grid-template-columns:1fr;gap:4px}.viz-line-wrap svg{height:180px}}.portal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 32px;border-bottom:1px solid var(--border);background:rgba(10,10,10,.9);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:-webkit-sticky;position:sticky;top:0;z-index:100}.portal-header-nav{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.portal-menu-toggle{display:none;width:40px;height:40px;border:1px solid var(--border);border-radius:10px;background:transparent;color:var(--text);font-size:18px;cursor:pointer}@media (max-width:760px){.portal-header{flex-wrap:wrap;padding:12px 16px}.portal-menu-toggle{display:block}.portal-header-nav{display:none;flex-basis:100%;flex-direction:column;align-items:stretch;gap:4px;padding-top:8px}.portal-header-nav-open{display:flex}.portal-header-nav>a,.portal-header-nav>button,.portal-header-nav>span{padding:10px 4px;text-align:left}}.admin-me{font-size:13px}.admin-me,.admin-role{color:var(--text-secondary)}.admin-role{display:inline-block;padding:1px 8px;border-radius:999px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;background:rgba(255,255,255,.08)}.admin-role-owner{background:rgba(251,191,36,.16);color:#fbbf24}.admin-role-admin{background:rgba(32,138,239,.18);color:#60a5fa}.admin-role-support{background:rgba(52,211,153,.16);color:#34d399}.admin-bulk-bar{position:-webkit-sticky;position:sticky;top:72px;z-index:4;display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 12px;margin-bottom:12px;border:1px solid rgba(32,138,239,.45);border-radius:10px;background:#0f1a26}.admin-check-cell{width:36px;white-space:nowrap}.admin-check-cell input{width:16px;height:16px;cursor:pointer}.admin-select-all{margin-left:6px;padding:0;border:0;background:none;color:var(--primary);font-size:11px;cursor:pointer}.admin-row-selected td{background:rgba(32,138,239,.08)}.settings-page{margin-bottom:24px}.settings-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:16px}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));grid-gap:16px;gap:16px;border:0;padding:0;margin:0;min-width:0}.settings-card h3{margin:0 0 4px}.settings-wide{grid-column:1/-1}.settings-field{display:grid;grid-gap:6px;gap:6px;margin-top:12px;font-size:13px;color:var(--text-secondary);min-width:0}.settings-toggle{display:flex;align-items:center;gap:10px;margin-top:12px;font-weight:600;cursor:pointer}.settings-toggle input{width:18px;height:18px}.settings-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:12px;gap:12px}.settings-price-table{display:grid;grid-template-columns:minmax(150px,1fr) 140px minmax(200px,2fr);grid-gap:8px 12px;gap:8px 12px;align-items:center;margin-top:12px}.settings-price-row{display:contents}.settings-th{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}.settings-msg{padding:10px 12px;border-radius:8px;font-size:14px}.settings-msg-ok{background:rgba(52,211,153,.12);color:#34d399}.settings-msg-error{background:rgba(248,113,113,.12);color:#f87171}.settings-form{display:grid}.settings-form button{margin-top:16px;justify-self:start}.settings-roles{list-style:none;margin:12px 0 0;padding:0;display:grid;grid-gap:10px;gap:10px;font-size:13px;color:var(--text-secondary)}.settings-roles li{display:grid;grid-template-columns:80px 1fr;grid-gap:10px;gap:10px;align-items:start}fieldset:disabled .settings-card{opacity:.85}.announcement{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;margin-bottom:16px;border-radius:10px;border:1px solid;font-size:14px;line-height:1.5}.announcement-info{background:rgba(56,189,248,.1);border-color:rgba(56,189,248,.35)}.announcement-success{background:rgba(52,211,153,.1);border-color:rgba(52,211,153,.35)}.announcement-warning{background:rgba(251,191,36,.1);border-color:rgba(251,191,36,.4)}.announcement-text{flex:1 1}.announcement-text a{color:var(--primary);font-weight:600}.announcement-close{border:0;background:none;color:var(--text-muted);cursor:pointer;font-size:14px}@media (max-width:640px){.settings-grid{grid-template-columns:minmax(0,1fr)}.settings-price-table{grid-template-columns:1fr 1fr}.settings-price-table .settings-th:nth-child(3){display:none}.settings-price-row>span{grid-column:1/-1;margin-top:8px;font-weight:600}.admin-bulk-bar{top:120px}}.dash-layout{display:flex;min-height:calc(100vh - 65px)}.dash-aside{width:240px;flex-shrink:0;border-right:1px solid var(--border);padding:24px 16px;background:var(--bg-elevated)}.dash-aside-title{color:var(--text-muted);font-size:12px;font-weight:600;text-transform:uppercase;margin:0 0 12px 8px}.dash-tab{display:block;width:100%;text-align:left;padding:10px 12px;margin-bottom:4px;border:none;border-radius:8px;background:transparent;color:var(--text-secondary);font-weight:500;cursor:pointer;white-space:nowrap}.dash-tab-active{background:rgba(32,138,239,.15);color:var(--primary);font-weight:600}.dash-aside-foot{margin-top:32px;padding:0 8px}.dash-main{flex:1 1;min-width:0;padding:32px;overflow:auto}.co-header{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:20px}.co-title{margin:0 0 6px;font-size:28px;font-weight:800}.co-muted{color:var(--text-secondary);margin:0}.co-small{font-size:12px}.co-device-select{display:grid;grid-gap:4px;gap:4px;min-width:200px}.co-plan{margin-bottom:16px;background:linear-gradient(135deg,rgba(32,138,239,.12),rgba(32,138,239,.02) 60%),var(--bg-card)}.co-plan-head{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.co-plan-title{margin:10px 0 4px;font-size:22px}.co-plan-actions{display:flex;gap:8px;flex-wrap:wrap}.co-pill{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700}.co-pill-good{color:#4ade80;background:rgba(74,222,128,.14)}.co-pill-info{color:#38bdf8;background:rgba(56,189,248,.14)}.co-pill-gold{color:#fbbf24;background:rgba(251,191,36,.14)}.co-pill-bad{color:#f87171;background:rgba(248,113,113,.14)}.co-pill-muted{color:var(--text-muted);background:rgba(255,255,255,.06)}.co-progress{margin-top:16px;height:8px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden}.co-progress-thin{height:6px;margin:8px 0 12px}.co-progress-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,#208aef,#38bdf8)}.co-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));grid-gap:16px;gap:16px;margin-bottom:16px}.co-tile{display:flex;flex-direction:column;gap:6px;text-align:left;color:inherit;font:inherit}button.co-tile{cursor:pointer;transition:border-color .15s}button.co-tile:hover{border-color:rgba(32,138,239,.5)}.co-tile-label{color:var(--text-muted);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.co-tile-value{font-size:32px;font-weight:800;line-height:1.1}.co-tile-value-sm{font-size:22px}.co-tile-sub{font-size:16px;color:var(--text-muted);font-weight:600}.co-slots{display:flex;gap:4px}.co-slot{width:18px;height:6px;border-radius:3px;background:rgba(255,255,255,.1)}.co-slot-on{background:var(--primary)}.co-stack{display:flex;height:10px;border-radius:999px;overflow:hidden;gap:2px;margin-top:8px}.co-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));grid-gap:16px;gap:16px}.co-section-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.co-section-head h3{margin:0}.co-devices,.co-playlists,.co-steps{list-style:none;margin:8px 0 0;padding:0}.co-playlists li,.co-step{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--border)}.co-playlists li:last-child,.co-step:last-child{border-bottom:0}.co-check{flex-shrink:0;width:22px;height:22px;border-radius:50%;border:2px solid var(--border);display:grid;place-items:center;font-size:12px;font-weight:800}.co-step-done .co-check{border-color:#34d399;background:rgba(52,211,153,.18);color:#34d399}.co-step-done strong{color:var(--text-secondary)}.co-step-text{flex:1 1;min-width:0;display:grid;grid-gap:2px;gap:2px}.co-device{width:100%;display:flex;align-items:center;gap:12px;padding:10px;margin-top:6px;border:1px solid transparent;border-radius:10px;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.co-device:hover{background:rgba(255,255,255,.04)}.co-device-active{border-color:rgba(32,138,239,.45);background:rgba(32,138,239,.08)}.co-device-icon{font-size:22px}.co-device-text{flex:1 1;min-width:0;display:grid;grid-gap:2px;gap:2px}.co-device-text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.co-device-seen{display:inline-flex;align-items:center;gap:6px;color:var(--text-secondary);white-space:nowrap}.co-dot{width:8px;height:8px;border-radius:50%;background:var(--text-muted)}.co-dot-on{background:#34d399;box-shadow:0 0 0 3px rgba(52,211,153,.18)}.co-pl-health{display:inline-flex;align-items:center;gap:8px}.co-pl-bar{width:90px;height:8px;border-radius:999px;background:rgba(248,113,113,.35);overflow:hidden;display:block}.co-pl-bar span{display:block;height:100%}@media (max-width:760px){.dash-layout{flex-direction:column}.dash-aside{width:auto;padding:8px 12px;border-right:0;border-bottom:1px solid var(--border);position:-webkit-sticky;position:sticky;top:65px;z-index:5}.dash-aside-foot,.dash-aside-title{display:none}.dash-tabs{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}.dash-tab{width:auto;margin:0;padding:8px 12px}.dash-main{padding:20px 16px}.co-grid{grid-template-columns:minmax(0,1fr)}.co-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.co-playlists li{flex-wrap:wrap}.co-playlists .co-step-text{flex-basis:100%}.co-pl-health{flex:1 1}}.portal-logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:20px}.portal-logo-icon{border-radius:8px;box-shadow:0 2px 12px rgba(32,138,239,.35)}.portal-logo-brand{color:var(--primary)}.portal-logo-sub{color:var(--text-muted);font-weight:500;font-size:14px}.hero-section{position:relative;overflow:hidden;padding:64px 32px 80px}.hero-bg{inset:0;background:linear-gradient(180deg,rgba(10,10,10,.55) 0,rgba(10,10,10,.92) 70%,var(--bg) 100%),url(/images/brand/hero-feature.png) 50% /cover no-repeat;opacity:.9}.hero-bg,.hero-glow{position:absolute;pointer-events:none}.hero-glow{top:-20%;right:-10%;width:60%;height:80%;background:radial-gradient(ellipse,rgba(var(--primary-rgb),.18) 0,transparent 70%)}.hero-inner{position:relative;z-index:1;max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;grid-gap:48px;gap:48px;align-items:center}.hero-copy{text-align:left}.hero-badge{display:inline-flex;align-items:center;gap:10px;padding:6px 14px 6px 8px;border-radius:999px;background:rgba(var(--primary-rgb),.12);border:1px solid rgba(var(--primary-rgb),.25);color:var(--primary);font-size:13px;font-weight:600;margin-bottom:24px}.hero-badge-icon{border-radius:6px}.hero-title{font-size:clamp(36px,5vw,52px);font-weight:800;line-height:1.1;margin:0 0 20px}.hero-title-accent{color:var(--primary)}.hero-subtitle{color:var(--text-secondary);font-size:18px;max-width:520px;margin:0 0 32px;line-height:1.6}.hero-actions{display:flex;gap:16px;flex-wrap:wrap}.hero-store-badges{margin-top:24px}.store-download{display:flex;flex-direction:column;gap:20px}.store-download-centered{align-items:center}.store-download-centered .store-apk-block,.store-download-centered .store-badge-row{justify-content:center;text-align:center}.store-badge-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:10px}.store-badge-link{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:150px;height:50px;line-height:0;transition:transform .15s,opacity .15s}.store-badge-link:hover{transform:translateY(-1px);opacity:.92}.store-badge-image{display:block;width:100%;height:100%;object-fit:contain;object-position:center}.store-apk-label{display:flex;flex-direction:column;align-items:flex-start;line-height:1.1}.store-apk-eyebrow{font-size:11px;font-weight:500;color:var(--text-muted)}.store-apk-title{font-size:15px;font-weight:700}.store-apk-block{max-width:560px}.store-apk-copy{margin:0 0 12px;color:var(--text-secondary);font-size:14px;line-height:1.5}.store-apk-button{display:inline-flex;align-items:center;gap:10px;padding:12px 18px;border-radius:999px;border:1px solid var(--border);background:#111;color:var(--text);font-size:15px;font-weight:600;transition:border-color .15s,background .15s}.store-apk-button:hover{border-color:rgba(var(--primary-rgb),.55);background:#1a1a1a}.store-apk-icon{font-size:18px}.store-badges{display:flex;flex-wrap:wrap;gap:12px}.store-badge{display:flex;flex-direction:column;align-items:flex-start;min-width:168px;padding:12px 16px;border-radius:var(--radius);border:1px solid var(--border);background:#141414;transition:border-color .15s,transform .15s,background .15s}.store-badge:hover{border-color:rgba(var(--primary-rgb),.55);background:#1a1a1a;transform:translateY(-1px)}.store-badge-eyebrow{font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.store-badge-label{margin-top:2px;font-size:17px;font-weight:700;color:var(--text)}.store-badge-meta{margin-top:2px;font-size:12px;color:var(--text-secondary)}.store-badges-sm .store-badge{min-width:148px;padding:10px 14px}.store-badges-sm .store-badge-label{font-size:15px}.store-badges-sm .store-badge-image{height:40px}.hero-btn{padding:14px 28px;font-size:16px}.hero-visual{position:relative}.hero-screenshot{width:100%;height:auto;border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow),0 0 0 1px rgba(255,255,255,.04)}.section{padding:80px 32px}.section-elevated{background:var(--bg-elevated)}.section-inner{max-width:1100px;margin:0 auto}.section-inner-narrow{max-width:800px}.section-header{text-align:center;margin-bottom:40px}.section-eyebrow{margin:0 0 10px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--primary)}.section-title{font-size:clamp(28px,4vw,36px);font-weight:800;margin:0 0 12px}.section-desc{margin:0 auto;max-width:620px;color:var(--text-secondary);font-size:17px;line-height:1.6}.feature-card-title{margin:0 0 10px;font-size:18px}.feature-card-desc{margin:0;color:var(--text-secondary);font-size:15px;line-height:1.6}.steps-list{margin:0;padding:0;list-style:none;display:grid;grid-gap:20px;gap:20px}.step-item{display:flex;gap:16px;align-items:flex-start;padding:20px;background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border)}.step-number{flex-shrink:0;width:32px;height:32px;border-radius:50%;background:var(--primary);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px}.step-text{color:var(--text-secondary);padding-top:4px;line-height:1.6}.carousel{max-width:900px;margin:0 auto}.carousel-tabs,.gallery-tabs{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-bottom:24px}.carousel-tab,.gallery-tab{padding:8px 16px;border-radius:999px;border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);font-size:14px;font-weight:600;transition:background .15s,color .15s,border-color .15s}.carousel-tab:hover,.gallery-tab:hover{color:var(--text);border-color:rgba(32,138,239,.4)}.carousel-tab.active,.gallery-tab.active{background:rgba(32,138,239,.15);border-color:rgba(32,138,239,.45);color:var(--primary)}.carousel-stage{display:grid;grid-template-columns:auto 1fr auto;grid-gap:12px;gap:12px;align-items:center}.carousel-arrow{width:44px;height:44px;border-radius:50%;border:1px solid var(--border);background:var(--bg-card);color:var(--text);font-size:28px;line-height:1;display:flex;align-items:center;justify-content:center;transition:background .15s,border-color .15s}.carousel-arrow:hover{background:#222;border-color:var(--primary)}.carousel-frame{margin:0;position:relative;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow);background:#000}.carousel-image{width:100%;height:auto;display:block}.carousel-caption{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:rgba(0,0,0,.75);border-top:1px solid var(--border)}.carousel-caption-label{font-weight:600;font-size:14px}.carousel-caption-meta{color:var(--text-muted);font-size:13px}.carousel-dots{display:flex;justify-content:center;gap:8px;margin-top:20px}.carousel-dot{width:10px;height:10px;border-radius:50%;border:none;padding:0;background:var(--border);transition:background .15s,transform .15s}.carousel-dot.active{background:var(--primary);transform:scale(1.15)}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:16px;gap:16px}.gallery-item{display:block;width:100%;padding:0;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--bg-card);text-align:left;transition:border-color .15s,transform .15s,box-shadow .15s}.gallery-item:hover{border-color:rgba(32,138,239,.5);transform:translateY(-2px);box-shadow:var(--shadow)}.gallery-thumb{width:100%;height:auto;display:block;aspect-ratio:16/9;object-fit:contain;background:#000}.gallery-item-label{display:block;padding:10px 12px;font-size:14px;font-weight:600;color:var(--text-secondary)}.gallery-lightbox{position:fixed;inset:0;z-index:300;background:rgba(0,0,0,.88);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;gap:12px}.gallery-lightbox-image{max-width:min(1100px,100%);width:100%;height:auto;border-radius:var(--radius-lg);border:1px solid var(--border)}.gallery-lightbox-caption{margin:0;color:var(--text-secondary);font-size:15px}.gallery-lightbox-close{position:absolute;top:20px;right:24px;width:44px;height:44px;border-radius:50%;border:1px solid var(--border);background:var(--bg-card);color:var(--text);font-size:28px;line-height:1}@media (max-width:900px){.hero-inner{grid-template-columns:1fr}.hero-copy,.hero-inner{text-align:center}.hero-subtitle{margin-left:auto;margin-right:auto}.hero-actions{justify-content:center}.carousel-stage{grid-template-columns:1fr}.carousel-arrow{display:none}}.contact-page{padding:48px 24px 80px}.contact-inner{max-width:920px;margin:0 auto}.contact-title{font-size:clamp(28px,4vw,40px);font-weight:800;margin:0 0 16px}.contact-email-hint,.contact-lead{color:var(--text-secondary);margin:0 0 12px;max-width:640px}.contact-email-hint{margin-bottom:32px}.contact-email-link{color:var(--accent)}.contact-form{margin-top:8px}.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px;margin-bottom:20px}.contact-field{display:flex;flex-direction:column;gap:6px}.contact-field-full{grid-column:1/-1}.contact-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.contact-form input,.contact-form textarea{background:transparent;border:1px solid #3a3f4b;border-radius:10px;padding:14px 16px;color:var(--text)}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#8b93a3}.contact-form textarea{resize:vertical;min-height:160px}.contact-error{color:var(--danger);margin:0 0 16px;font-size:14px}.btn-contact{background:#ffffff;color:#111111;border:none;border-radius:10px;padding:14px 28px;font-weight:700;min-width:160px}.btn-contact:hover:not(:disabled){background:#f0f0f0}.btn-contact:disabled{opacity:.65;cursor:not-allowed}.contact-success{max-width:560px}.contact-success-title{margin:0 0 8px;font-size:20px;font-weight:700;color:var(--success)}.contact-success-text{margin:0 0 20px;color:var(--text-secondary)}@media (max-width:640px){.contact-grid{grid-template-columns:1fr}.contact-field-full{grid-column:auto}}