:root{--bg: #080b16;--header-bg: rgba(10, 15, 27, .9);--card: #0a111e;--card-inner: #0c1522;--border: #141c2d;--border-strong: #1e2842;--pill: #141d35;--pill-hover: #1b2645;--text: #f8fafc;--text-soft: #e2e8f0;--label: #94a3b8;--muted: #7a879c;--pill-text: #6b7894;--cyan: #22d3ee;--purple: #8b5cf6;--emerald: #10b981;--green: #16a34a;--amber: #f59e0b;--orange: #f97316;--red: #f43f5e;--slate: #7689a2;--radius: 12px;--radius-lg: 14px;color-scheme:dark;font-family:DM Sans,system-ui,-apple-system,Segoe UI,sans-serif}*,*:before,*:after{box-sizing:border-box}html,body{margin:0}body{min-height:100vh;background:var(--bg);color:var(--text);font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,p{margin:0}button{font:inherit}svg{flex:none}.text-cyan{color:var(--cyan)}.text-emerald{color:var(--emerald)}.text-orange{color:var(--orange)}.text-purple{color:var(--purple)}.text-amber{color:var(--amber)}.text-slate{color:var(--slate)}.header{position:sticky;top:0;z-index:20;background:var(--header-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid #121927}.header__inner{max-width:1440px;margin:0 auto;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px 24px;flex-wrap:wrap}.title{font-size:24px;font-weight:700;line-height:1.25;letter-spacing:-.01em}.title__accent{background:linear-gradient(90deg,#22d3ee,#8b5cf6 58%,#22d3ee);-webkit-background-clip:text;background-clip:text;color:transparent}.subtitle{margin-top:4px;color:var(--muted);font-size:14px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.demo-badge{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--amber);background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);border-radius:999px;padding:1px 8px}.filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pill{height:31px;padding:0 12px;border:0;border-radius:8px;background:var(--pill);color:var(--pill-text);font-size:14px;font-weight:500;display:inline-flex;align-items:center;gap:8px;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s,box-shadow .15s}.pill:hover{background:var(--pill-hover);color:var(--text-soft)}.pill.is-active{background:var(--cyan);color:#06121a;box-shadow:0 0 18px #22d3ee73}.pill:disabled{opacity:.5;cursor:default}.pill svg{width:16px;height:16px}.pill--custom{color:var(--text-soft)}.pill:focus-visible,.btn-refresh:focus-visible,.cal__day:focus-visible,.picker__arrow:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.btn-refresh{height:35px;margin-left:8px;padding:0 14px;border:1px solid var(--border-strong);border-radius:8px;background:#0a0b16;color:var(--text);font-size:14px;font-weight:500;display:inline-flex;align-items:center;gap:8px;cursor:pointer;transition:background .15s,border-color .15s}.btn-refresh:hover{background:#111a2e;border-color:#2a3656}.btn-refresh:disabled{cursor:progress}.btn-refresh svg{width:16px;height:16px}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.picker-anchor{position:relative}.picker{position:absolute;top:calc(100% + 8px);right:0;z-index:30;width:304px;padding:14px;background:#0c1424;border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:0 24px 60px #0000008c}.picker__nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.picker__month{font-weight:600;color:var(--text-soft)}.picker__arrow{width:30px;height:30px;display:grid;place-items:center;border:0;border-radius:8px;background:var(--pill);color:var(--text-soft);cursor:pointer}.picker__arrow:disabled{opacity:.35;cursor:default}.picker__arrow svg{width:16px;height:16px}.cal{display:grid;grid-template-columns:repeat(7,1fr);row-gap:2px}.cal__weekday{text-align:center;font-size:12px;color:var(--muted);padding:4px 0 6px}.cal__day{height:36px;border:0;border-radius:8px;background:transparent;color:var(--text-soft);font-size:13px;cursor:pointer}.cal__day:hover:not(:disabled):not(.is-edge){background:var(--pill-hover)}.cal__day.is-outside{color:#3f4b63}.cal__day.is-today{box-shadow:inset 0 0 0 1px #22d3ee73}.cal__day.is-in-range{background:#22d3ee1f;border-radius:0;color:var(--text)}.cal__day.is-edge{background:var(--cyan);color:#06121a;font-weight:600}.cal__day:disabled{color:#2b3548;cursor:default}.picker__footer{margin-top:12px;padding-top:12px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:10px}.picker__summary{font-size:13px;color:var(--label)}.picker__actions{display:flex;justify-content:flex-end;gap:8px}.main{max-width:1440px;margin:0 auto;padding:32px 24px 48px;display:flex;flex-direction:column;gap:40px}.section__title{display:flex;align-items:center;gap:10px;margin-bottom:20px;font-size:22px;font-weight:600;line-height:1.25;letter-spacing:-.01em}.section__title svg{width:22px;height:22px}.grid{display:grid;gap:16px}.grid+.grid{margin-top:16px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-6{grid-template-columns:repeat(6,minmax(0,1fr))}.grid-call4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid--tight{gap:12px}.grid--tight+.grid,.grid+.grid--tight{margin-top:12px}.stat{display:flex;align-items:flex-start;justify-content:space-between;gap:2px;min-width:0;padding:24px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);transition:border-color .2s,box-shadow .2s,transform .2s}.stat:hover{transform:translateY(-1px);border-color:var(--border-strong)}.stat__text{min-width:0}.stat__label{font-size:14px;color:var(--label);line-height:20px}.stat__value{margin-top:4px;font-size:30px;font-weight:700;line-height:36px;letter-spacing:-.02em;color:var(--text);white-space:nowrap}.stat__sub{margin-top:4px;font-size:14px;line-height:20px}.tone-label{color:var(--label)}.tone-muted{color:var(--muted)}.stat--sm{padding:16px;background:var(--card-inner)}.stat--sm .stat__label{font-size:13px;line-height:18px}.stat--sm .stat__value{margin-top:2px;font-size:24px;line-height:30px}.stat--sm .stat__sub{margin-top:2px;font-size:13px;line-height:18px}.icon-box{flex:none;width:42px;height:42px;display:grid;place-items:center;border-radius:12px}.icon-box svg{width:20px;height:20px}.stat--sm .icon-box{width:32px;height:32px;border-radius:9px}.stat--sm .icon-box svg{width:16px;height:16px}.icon-box--lg{width:40px;height:40px;border-radius:10px}.accent-emerald{background:#10b9811c;color:var(--emerald)}.accent-emerald-strong{background:#10b98133;color:var(--emerald)}.accent-cyan{background:#22d3ee1f;color:var(--cyan)}.accent-purple{background:#8b5cf624;color:#9d74fb}.accent-amber{background:#f59e0b1c;color:var(--amber)}.accent-orange{background:#f9731647;color:#fb923c}.accent-slate{background:var(--pill);color:#8a99b5}.glow-emerald{box-shadow:0 0 36px -6px #10b9814d}.glow-cyan{box-shadow:0 0 36px -6px #22d3ee52}.glow-purple{box-shadow:0 0 36px -6px #8b5cf65c}.glow-amber{box-shadow:0 0 36px -6px #f59e0b4d}.edge-cyan,.edge-cyan:hover{border-color:#22d3ee4d}.edge-purple,.edge-purple:hover{border-color:#8b5cf65c}.panel{min-width:0;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg)}.panel__header{padding:24px}.panel__title{font-size:22px;font-weight:600;line-height:1.2;letter-spacing:-.01em}.panel__desc{margin-top:6px;font-size:14px;color:var(--muted)}.panel__body{padding:0 24px 24px}.source-panel{min-width:0;padding:20px;border-radius:var(--radius-lg)}.source-panel--organic{background:linear-gradient(135deg,#102b2b,#0d1f27 55%,#0c1a24);border:1px solid rgba(16,185,129,.32)}.source-panel--paid{background:linear-gradient(135deg,#25231f,#211b1b 55%,#1d1719);border:1px solid rgba(249,115,22,.3)}.source-panel__header{display:flex;align-items:center;gap:16px;margin-bottom:24px}.chart-box{position:relative;width:100%;min-width:0}.chart-box .recharts-surface,.chart-box .recharts-wrapper{overflow:visible}.pie-label{font-size:15px;font-family:inherit}.recharts-text{font-family:DM Sans,system-ui,sans-serif}.legend{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:6px 14px;font-size:14px;color:var(--text-soft)}.legend__item{display:inline-flex;align-items:center;gap:6px}.legend__swatch{width:14px;height:14px;border-radius:2px}.chart-tooltip{min-width:150px;padding:10px 12px;background:#0f1729;border:1px solid var(--border-strong);border-radius:10px;box-shadow:0 12px 32px #00000073;font-size:13px}.chart-tooltip__title{margin-bottom:6px;font-weight:600;color:var(--text-soft)}.chart-tooltip__row{display:flex;align-items:center;gap:8px;color:var(--label);line-height:22px}.chart-tooltip__swatch{width:10px;height:10px;border-radius:2px}.chart-tooltip__value{margin-left:auto;padding-left:16px;font-weight:600;color:var(--text)}.empty{display:grid;place-items:center;min-height:120px;color:var(--muted);font-size:14px;text-align:center}.funnel{display:flex;flex-direction:column;gap:17px}.funnel__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px;font-size:15px;line-height:20px}.funnel__name{font-weight:500;color:var(--text-soft)}.funnel__right{display:flex;align-items:center;gap:44px}.funnel__conv{font-size:14px;color:var(--muted)}.funnel__count{min-width:24px;text-align:right;font-weight:600;color:var(--text)}.funnel__track{height:10px;border-radius:999px;background:var(--pill);overflow:hidden}.funnel__bar{height:100%;border-radius:999px;transition:width .6s ease}.table-wrap{overflow-x:auto;padding-bottom:4px}.table{width:100%;border-collapse:collapse;font-size:14px}.table th{padding:12px 16px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);color:var(--muted);font-weight:500;text-align:right;line-height:1.35;vertical-align:middle}.table td{padding:16px;text-align:right;color:var(--text-soft);white-space:nowrap}.table tbody tr+tr td{border-top:1px solid var(--border)}.table tbody tr:hover td{background:#94a3b808}.table .cell--left{text-align:left}.table th:first-child,.table td:first-child{padding-left:24px}.table th:last-child,.table td:last-child{padding-right:24px}.cell--name{font-weight:500;color:var(--text)}.cell--green{color:#22c55e!important}.cell--strong{color:var(--text)!important;font-weight:700}.cell--revenue{color:var(--cyan)!important;font-weight:700}.cell--cash{color:var(--emerald)!important;font-weight:500}.cell--empty{text-align:center!important;color:var(--muted)!important;padding:32px!important}.badge{display:inline-block;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:600;border:1px solid}.badge--excellent{color:#34d399;background:#10b98124;border-color:#10b98159}.badge--good{color:#67e8f9;background:#22d3ee24;border-color:#22d3ee4d}.badge--average{color:#fbbf24;background:#f59e0b1f;border-color:#f59e0b4d}.badge--needs-work{color:#fb7185;background:#f43f5e1f;border-color:#f43f5e4d}.badge--no-data{color:var(--muted);background:var(--pill);border-color:var(--border-strong)}.footer{border-top:1px solid #0f1626;padding:32px 24px;text-align:center;font-size:14px;color:var(--muted)}.footer__error{color:var(--amber)}.status-block{min-height:50vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--label);text-align:center}.status-block__detail{max-width:640px;font-size:13px;color:var(--muted);word-break:break-word}@media(max-width:1200px){.grid-6{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1024px){.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-2{grid-template-columns:minmax(0,1fr)}}@media(max-width:640px){.header{position:static}.header__inner{padding:16px}.main{padding:24px 16px 40px;gap:32px}.section__title,.panel__title{font-size:19px}.panel__header{padding:20px 16px 18px}.panel__body{padding:0 16px 16px}.source-panel{padding:16px}.grid-4{grid-template-columns:minmax(0,1fr)}.grid-6,.grid-call4{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:minmax(0,1fr)}.stat{padding:18px}.stat--sm{padding:14px}.stat__value{font-size:26px;line-height:32px}.btn-refresh{margin-left:0}.picker{right:auto;left:0}.funnel__right{gap:16px}.table th:first-child,.table td:first-child{padding-left:16px}}
