:root{color-scheme:light;--bg: #f7f9fb;--surface: #ffffff;--surface-soft: #f2f4f6;--surface-strong: #e6e8ea;--ink: #131b2e;--text: #191c1e;--muted: #64748b;--muted-strong: #45464d;--line: #dde5ef;--line-soft: #edf2f7;--navy: #0f172a;--blue: #2563eb;--blue-soft: #eaf1ff;--teal: #0f9ba8;--teal-soft: #e7f8fa;--green: #059669;--green-soft: #e8f8ef;--amber: #d97706;--amber-soft: #fff6db;--red: #dc2626;--red-soft: #feecec;--shadow: 0 14px 34px rgba(15, 23, 42, .08);--shadow-soft: 0 1px 2px rgba(15, 23, 42, .05);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;min-width:320px;background:var(--bg);color:var(--text);letter-spacing:0}button,input,select{font:inherit}button{color:inherit}.loading-screen{min-height:100vh;display:grid;place-items:center;align-content:center;gap:12px;color:var(--navy);font-weight:800}.auth-page{min-height:100vh;display:grid;grid-template-columns:minmax(360px,520px) 1fr;background:linear-gradient(180deg,#ffffffb8,#f7f9fbeb),var(--bg)}.auth-panel{display:flex;flex-direction:column;justify-content:center;gap:36px;padding:56px;background:#ffffffeb;border-right:1px solid var(--line)}.auth-brand,.sidebar-brand{display:flex;align-items:center;gap:12px}.auth-brand strong,.sidebar-brand strong{display:block;font-size:20px;line-height:1.1;font-weight:850;color:var(--ink)}.auth-brand span,.sidebar-brand span{display:block;margin-top:2px;font-size:12px;line-height:1.3;color:var(--muted);font-weight:650}.brand-mark{width:42px;height:42px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:var(--navy);color:#5eead4;box-shadow:var(--shadow-soft);flex:0 0 auto}.auth-copy h1{margin:0 0 12px;font-size:48px;line-height:1.05;font-weight:850;color:var(--ink)}.auth-copy p{max-width:420px;margin:0;color:var(--muted-strong);font-size:16px;line-height:1.6}.auth-form{display:grid;gap:16px}.auth-form label{display:grid;gap:7px;font-size:13px;font-weight:750;color:var(--muted-strong)}.auth-form input{height:46px;border:1px solid var(--line);border-radius:8px;padding:0 14px;color:var(--ink);background:var(--surface);outline:0}.auth-form input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2563eb1f}.form-error{margin:0;color:var(--red);font-size:13px;font-weight:700}.auth-aside{display:grid;place-items:center;padding:56px;background:linear-gradient(135deg,#0f172a0f,#0f9ba80d),var(--bg)}.mini-dashboard{width:min(520px,100%);min-height:430px;display:grid;align-content:space-between;gap:22px;padding:28px;background:var(--surface);border:1px solid rgba(198,198,205,.72);border-radius:8px;box-shadow:var(--shadow)}.mini-topline,.mini-row{display:flex;justify-content:space-between;align-items:center;gap:16px}.mini-topline span,.mini-row span{color:var(--muted);font-weight:700}.mini-topline strong{font-size:42px;line-height:1;color:var(--green)}.mini-row strong{color:var(--ink);font-size:22px}.mini-bars{height:210px;display:flex;align-items:end;gap:14px;padding:18px;border-radius:8px;background-image:linear-gradient(to right,#eef2f7 1px,transparent 1px),linear-gradient(to bottom,#eef2f7 1px,transparent 1px);background-size:42px 42px}.mini-bars span{flex:1;min-width:22px;border-radius:8px 8px 0 0;background:linear-gradient(180deg,var(--blue),var(--teal))}.app-shell{min-height:100vh;display:flex}.sidebar{position:fixed;inset:0 auto 0 0;z-index:30;width:280px;display:flex;flex-direction:column;gap:24px;padding:28px 18px;background:var(--surface);border-right:1px solid var(--line);box-shadow:0 10px 28px #0f172a0a}.side-nav{display:grid;gap:6px}.side-nav button{height:44px;display:flex;align-items:center;gap:12px;border:0;border-radius:8px;padding:0 14px;background:transparent;color:var(--muted-strong);font-size:14px;line-height:1;font-weight:760;cursor:pointer}.side-nav button:hover{background:var(--surface-soft);color:var(--ink)}.side-nav button.active{background:#eceef0;color:var(--ink);box-shadow:inset 4px 0 0 var(--navy)}.sidebar-footer{margin-top:auto;display:grid;gap:12px}.account-chip{min-width:0;display:flex;gap:10px;align-items:center;padding:12px;border-radius:8px;background:var(--surface-soft)}.account-chip>span{width:34px;height:34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--navy);color:#fff;font-size:12px;font-weight:850;flex:0 0 auto}.account-chip div{min-width:0}.account-chip strong,.account-chip small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-chip strong{color:var(--ink);font-size:13px}.account-chip small{color:var(--muted);font-size:12px}.main-area{min-width:0;flex:1;margin-left:280px}.topbar{position:sticky;top:0;z-index:20;min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 30px;background:#f7f9fbe6;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid rgba(221,229,239,.86)}.topbar h1{margin:0;font-size:28px;line-height:1.18;font-weight:820;color:var(--ink)}.topbar p{margin:4px 0 0;color:var(--muted);font-size:14px;font-weight:650}.topbar-actions{display:inline-flex;align-items:center;gap:10px}.content{width:min(1480px,100%);margin:0 auto;padding:28px 30px 48px}.page-stack{display:grid;gap:18px}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.kpi-card,.panel{background:var(--surface);border:1px solid rgba(198,198,205,.66);border-radius:8px;box-shadow:var(--shadow-soft)}.kpi-card{min-height:148px;display:flex;align-items:flex-start;gap:16px;padding:20px}.kpi-icon{width:42px;height:42px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.kpi-card.blue .kpi-icon{background:var(--blue-soft);color:var(--blue)}.kpi-card.green .kpi-icon{background:var(--green-soft);color:var(--green)}.kpi-card.teal .kpi-icon{background:var(--teal-soft);color:var(--teal)}.kpi-card.amber .kpi-icon{background:var(--amber-soft);color:var(--amber)}.kpi-card.red .kpi-icon{background:var(--red-soft);color:var(--red)}.kpi-card.slate .kpi-icon{background:#e2e8f0;color:var(--ink)}.kpi-card p{margin:0 0 8px;color:var(--muted);font-size:12px;line-height:1.3;text-transform:uppercase;font-weight:800}.kpi-card strong{display:block;color:var(--ink);font-size:28px;line-height:1.12;font-weight:840;font-variant-numeric:tabular-nums}.kpi-card span{display:block;margin-top:9px;color:var(--muted-strong);font-size:13px;line-height:1.35;font-weight:720}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.7fr);gap:18px}.dashboard-grid.lower{grid-template-columns:minmax(0,1fr) minmax(320px,.8fr)}.subscription-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(320px,.75fr);gap:18px}.wide-panel{min-width:0}.panel{min-width:0;padding:20px}.panel.tall{min-height:420px}.panel-head{min-height:34px;display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px}.panel-head h2{margin:0;color:var(--ink);font-size:19px;line-height:1.2;font-weight:800}.chart-box{height:350px;min-height:0}.chart-box.compact{height:280px}.chart-tooltip{display:grid;gap:4px;min-width:140px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--shadow);color:var(--ink);font-size:12px;font-weight:700}.chart-tooltip span{color:var(--muted-strong);font-weight:650}.chart-legend{display:inline-flex;align-items:center;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:12px;font-weight:750}.chart-legend span{display:inline-flex;align-items:center;gap:6px}.chart-legend i{width:8px;height:8px;border-radius:50%}.subscription-compact{display:grid;gap:12px}.subscription-compact h3,.subscription-card h2{margin:0;color:var(--ink);font-size:24px;line-height:1.2}.subscription-compact strong{color:var(--ink);font-size:30px;line-height:1.12;font-variant-numeric:tabular-nums}.subscription-compact p{margin:0;color:var(--muted);font-size:14px;font-weight:650}.subscription-card{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px;margin-bottom:16px;border-radius:8px;background:var(--surface-soft)}.subscription-card p{margin:8px 0 0;color:var(--muted-strong)}.status-pill{min-height:26px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 9px;border-radius:999px;font-size:12px;line-height:1;font-weight:820;white-space:nowrap}.status-pill.success{background:var(--green-soft);color:#047857}.status-pill.warning{background:var(--amber-soft);color:var(--amber)}.status-pill.danger{background:var(--red-soft);color:var(--red)}.status-pill.neutral{background:#e2e8f0;color:var(--muted-strong)}.conversion-list,.restaurant-list,.metric-rows,.breakdown{display:grid;gap:10px}.conversion-list article,.restaurant-list article,.metric-rows div,.breakdown div{min-height:52px;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid var(--line-soft)}.conversion-list article:last-child,.restaurant-list article:last-child,.metric-rows div:last-child,.breakdown div:last-child{border-bottom:0}.conversion-list strong,.restaurant-list strong,.metric-rows strong,.breakdown strong{color:var(--ink);font-size:14px;font-weight:820}.conversion-list span,.restaurant-list span,.metric-rows span,.breakdown span{display:block;color:var(--muted);font-size:13px;line-height:1.35;font-weight:650}.conversion-list em{color:var(--green);font-style:normal;font-weight:850;font-variant-numeric:tabular-nums}.restaurant-icon{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:var(--surface-soft);color:var(--teal);flex:0 0 auto}.restaurant-list article{justify-content:flex-start}.breakdown div{min-height:58px;padding:12px 14px;border:0;border-radius:8px;background:var(--surface-soft)}.breakdown .positive-row strong{color:var(--green)}.breakdown .negative-row strong{color:var(--red)}.positive-text,.positive-cell{color:var(--green)}.negative-text,.negative-cell{color:var(--red)}.roi-hero{display:flex;justify-content:space-between;align-items:stretch;gap:18px;padding:26px;border-radius:8px;background:linear-gradient(135deg,#0f172a,#1e293b);color:#fff;box-shadow:var(--shadow)}.roi-hero h2{margin:0;font-size:42px;line-height:1.05;font-weight:850;font-variant-numeric:tabular-nums}.roi-hero p{max-width:560px;margin:10px 0 0;color:#cbd5e1;font-size:15px;line-height:1.5;font-weight:650}.roi-score{min-width:190px;display:grid;place-items:center;align-content:center;gap:7px;padding:18px;border-radius:8px;background:#ffffff14;border:1px solid rgba(255,255,255,.12)}.roi-score span{color:#cbd5e1;font-size:13px;font-weight:750}.roi-score strong{color:#5eead4;font-size:34px;line-height:1;font-weight:850}.table-wrap{width:100%;overflow:auto}table{width:100%;border-collapse:collapse;min-width:720px}th{padding:11px 12px;text-align:left;color:var(--muted);font-size:12px;line-height:1.2;text-transform:uppercase;font-weight:850;background:var(--surface-soft)}td{padding:14px 12px;border-bottom:1px solid var(--line-soft);color:var(--muted-strong);font-size:14px;font-weight:650;vertical-align:middle}td strong,td span{display:block}td strong{color:var(--ink);margin-bottom:3px}td span{color:var(--muted);font-size:12px;line-height:1.35}tr.selected-row td{background:#f6f8fb}.admin-detail-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(360px,1.15fr);gap:18px;align-items:start}.detail-summary{padding:14px;border-radius:8px;background:var(--surface-soft)}.admin-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.admin-form label{min-width:0;display:grid;gap:7px;color:var(--muted-strong);font-size:13px;font-weight:750}.admin-form input,.admin-form select{width:100%;height:42px;min-width:0;border:1px solid var(--line);border-radius:8px;padding:0 12px;outline:0;background:var(--surface);color:var(--ink)}.admin-form input:focus,.admin-form select:focus{border-color:var(--blue);box-shadow:0 0 0 3px #2563eb1f}.copy-field{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 40px 40px;gap:8px}.copy-field:has(>.icon-button:nth-child(2):last-child){grid-template-columns:minmax(0,1fr) 40px}.form-actions{grid-column:1 / -1;display:flex;align-items:center;justify-content:flex-end;gap:12px}.form-actions span{color:var(--muted-strong);font-size:13px;font-weight:750}.assistant-panel{display:grid;gap:14px}.assistant-number{display:flex;align-items:center;gap:12px;padding:12px;border-radius:8px;background:var(--surface-soft)}.assistant-number strong{display:block;color:var(--ink);font-size:16px;font-weight:850}.assistant-number span{display:block;margin-top:2px;color:var(--muted);font-size:13px;font-weight:650}.calls-list{display:grid;gap:10px}.calls-list article{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:12px;border:1px solid var(--line-soft);border-radius:8px;background:var(--surface)}.calls-list.compact article{padding:10px 0;border-width:0 0 1px;border-radius:0}.calls-list strong{display:block;color:var(--ink);font-size:14px;font-weight:820}.calls-list span{display:block;margin-top:3px;color:var(--muted);font-size:12px;line-height:1.35;font-weight:650}.calls-list p{margin:7px 0 0;color:var(--muted-strong);font-size:13px;line-height:1.4}.calls-list em{color:var(--muted-strong);font-size:12px;font-style:normal;font-weight:800;white-space:nowrap}.detail-calls{margin-top:18px}.detail-calls h3{margin:0 0 12px;color:var(--ink);font-size:16px;line-height:1.2;font-weight:820}.primary-button,.ghost-button,.icon-button,.select-control{min-height:40px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:14px;font-weight:800;cursor:pointer}.primary-button{border:0;padding:0 16px;background:var(--navy);color:#fff;box-shadow:var(--shadow-soft)}.primary-button:hover{background:#172033}.primary-button:disabled,.icon-button:disabled{opacity:.55;cursor:progress}.ghost-button,.icon-button,.select-control{border:1px solid var(--line);background:var(--surface);color:var(--muted-strong);box-shadow:var(--shadow-soft)}.ghost-button{padding:0 12px}.wide{width:100%}.ghost-button:hover,.icon-button:hover,.select-control:hover{border-color:#c8d3e0;background:var(--surface-soft);color:var(--ink)}.icon-button{width:40px;padding:0}.select-control{padding:0 11px}.select-control select{min-width:96px;border:0;outline:0;background:transparent;color:var(--ink);font-weight:800}.notice{min-height:46px;display:flex;align-items:center;gap:10px;padding:11px 13px;border-radius:8px;background:var(--amber-soft);color:var(--amber);border:1px solid rgba(217,119,6,.24);font-size:14px;font-weight:750}.notice span{flex:1}.notice button{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;background:transparent;cursor:pointer}.empty-state{min-height:220px;display:grid;place-items:center;align-content:center;gap:8px;color:var(--muted);text-align:center}.empty-state.compact{min-height:140px}.empty-state strong{color:var(--ink);font-size:16px}.empty-state span{max-width:320px;font-size:14px;line-height:1.45}.skeleton{position:relative;overflow:hidden;border:0;background:#e8eef6}.skeleton:after{content:"";position:absolute;inset:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);animation:shimmer 1.2s infinite}.spin{animation:spin 1s linear infinite}.mobile-only,.scrim{display:none}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{to{transform:translate(100%)}}@media(max-width:1180px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid,.dashboard-grid.lower,.subscription-layout{grid-template-columns:1fr}}@media(max-width:860px){.auth-page{grid-template-columns:1fr}.auth-panel{padding:34px 20px;border-right:0}.auth-aside{display:none}.sidebar{transform:translate(-102%);transition:transform .18s ease}.sidebar.open{transform:translate(0)}.scrim{position:fixed;inset:0;z-index:25;display:block;border:0;background:#0f172a47}.main-area{margin-left:0}.mobile-only{display:inline-flex}.topbar{align-items:flex-start;padding:14px 16px}.topbar h1{font-size:22px}.topbar-actions{margin-left:auto}.select-control{min-height:40px;padding:0 8px}.select-control select{min-width:76px;max-width:86px}.content{padding:18px 16px 34px}.kpi-grid{grid-template-columns:1fr}.kpi-card{min-height:128px}.panel{padding:16px}.chart-box{height:300px}.subscription-card,.roi-hero{flex-direction:column}.admin-detail-grid,.admin-form{grid-template-columns:1fr}.form-actions{justify-content:stretch}.form-actions .primary-button{flex:1}.roi-hero h2{font-size:34px}}
