:root{
  color-scheme:light;
  --page:#f9f9f7;--surface:#fcfcfb;--ink:#0b0b0b;--ink-2:#52514e;--muted:#898781;--grid:#e1e0d9;--axis:#c3c2b7;--border:rgba(11,11,11,.10);
  --s1:#2a78d6;--s2:#eb6834;--s3:#1baf7a;--s1-soft:#cde2fb;
  --st1:#86b6ef;--st2:#5598e7;--st3:#2a78d6;--st4:#1c5cab;--st5:#104281;
  --good:#0ca30c;--good-text:#006300;--bad:#d03b3b;--warn:#fab219;
  --radius:12px;--font:system-ui,-apple-system,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--page);color:var(--ink);font:14px/1.45 var(--font)}
a{color:var(--s1)}
button,input,select,textarea{font:inherit;color:inherit}
code{font:12px ui-monospace,SFMono-Regular,Menlo,monospace;background:#f0efec;padding:1px 5px;border-radius:4px}
.app{display:grid;grid-template-columns:232px 1fr;min-height:100vh}
.side{background:var(--surface);border-right:1px solid var(--grid);padding:18px 14px;display:flex;flex-direction:column;gap:14px;position:sticky;top:0;height:100vh}
.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:16px;padding:2px 6px}
.logo{width:28px;height:28px;border-radius:6px;object-fit:contain}
.side-label{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:0 6px}
.select,.input,textarea{width:100%;border:1px solid var(--grid);background:#fff;border-radius:8px;padding:8px 10px}
textarea{min-height:80px;resize:vertical}
.nav{display:flex;flex-direction:column;gap:2px;margin-top:6px}
.nav a{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;color:var(--ink-2);text-decoration:none;font-weight:600}
.nav a:hover{background:#f0efec}
.nav a.on{background:var(--s1-soft);color:var(--st5)}
.ic{width:16px;height:16px;border-radius:4px;background:currentColor;opacity:.75;mask-size:contain;-webkit-mask-size:contain;mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat}
.ic-overview{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 3h8v8H3zM13 3h8v5h-8zM13 10h8v11h-8zM3 13h8v8H3z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 3h8v8H3zM13 3h8v5h-8zM13 10h8v11h-8zM3 13h8v8H3z'/%3E%3C/svg%3E")}
.ic-visitors{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='9' cy='8' r='4'/%3E%3Cpath d='M1 21c0-4 3.6-7 8-7s8 3 8 7z'/%3E%3Ccircle cx='17' cy='9' r='3'/%3E%3Cpath d='M17 14c3.3 0 6 2.5 6 6h-5'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='9' cy='8' r='4'/%3E%3Cpath d='M1 21c0-4 3.6-7 8-7s8 3 8 7z'/%3E%3Ccircle cx='17' cy='9' r='3'/%3E%3Cpath d='M17 14c3.3 0 6 2.5 6 6h-5'/%3E%3C/svg%3E")}
.ic-mx{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='3' y='4' width='18' height='16' rx='3'/%3E%3Crect x='6' y='8' width='12' height='2' fill='%23fff'/%3E%3Crect x='6' y='12' width='8' height='2' fill='%23fff'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Crect x='3' y='4' width='18' height='16' rx='3'/%3E%3Crect x='6' y='8' width='12' height='2' fill='%23fff'/%3E%3Crect x='6' y='12' width='8' height='2' fill='%23fff'/%3E%3C/svg%3E")}
.ic-results{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 20V10h4v10zM10 20V4h4v16zM16 20v-7h4v7z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 20V10h4v10zM10 20V4h4v16zM16 20v-7h4v7z'/%3E%3C/svg%3E")}
.side-foot{margin-top:auto;display:flex;flex-direction:column;gap:8px;padding:0 4px}
.main{min-width:0}
.top{display:flex;align-items:center;gap:14px;padding:18px 26px 8px}
.top h1{font-size:20px;margin:0;flex:1}
.range{display:inline-flex;border:1px solid var(--grid);border-radius:8px;overflow:hidden;background:#fff}
.range button{border:0;background:transparent;padding:7px 12px;cursor:pointer;color:var(--ink-2);font-weight:600}
.range button+button{border-left:1px solid var(--grid)}
.range button.on{background:var(--s1-soft);color:var(--st5)}
.view{padding:10px 26px 40px;display:flex;flex-direction:column;gap:18px}
.view.loading{opacity:.55;transition:opacity .2s}
.btn{border:1px solid var(--grid);background:#fff;border-radius:8px;padding:7px 12px;cursor:pointer;font-weight:600;color:var(--ink)}
.btn:hover{background:#f4f4f1}
.btn.primary{background:var(--s1);border-color:var(--s1);color:#fff}
.btn.primary:hover{background:#256abf}
.btn.danger{color:var(--bad);border-color:rgba(208,59,59,.35)}
.btn.ghost{background:transparent}
.btn.small{padding:5px 9px;font-size:12px}
.btn[disabled]{opacity:.5;cursor:default}
.muted{color:var(--muted)}.small{font-size:12px}
.grid{display:grid;gap:16px}
.kpis{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}
.two{grid-template-columns:repeat(auto-fit,minmax(360px,1fr))}
.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px;min-width:0}
.card h3{margin:0 0 10px;font-size:13px;font-weight:600;color:var(--ink-2);display:flex;align-items:center;justify-content:space-between;gap:8px}
.card h3 .btn{font-weight:500}
.kpi .value{font-size:28px;font-weight:600;line-height:1.1;margin:4px 0 2px}
.kpi .delta{font-size:12px;color:var(--ink-2)}
.kpi .delta.up{color:var(--good-text)}.kpi .delta.down{color:var(--bad)}
.hero{font-size:44px;font-weight:600;line-height:1}
table.t{width:100%;border-collapse:collapse;font-size:13px}
table.t th{text-align:left;color:var(--muted);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.04em;padding:6px 8px;border-bottom:1px solid var(--grid);white-space:nowrap}
table.t td{padding:8px;border-bottom:1px solid #f0efec;vertical-align:top}
table.t tr:last-child td{border-bottom:0}
table.t td.num,table.t th.num{text-align:right;font-variant-numeric:tabular-nums}
table.t tr.click{cursor:pointer}table.t tr.click:hover td{background:#f6f6f3}
.scroll{overflow-x:auto}
.badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;background:#f0efec;color:var(--ink-2);white-space:nowrap}
.badge.stage-bounced{background:#f0efec;color:var(--ink-2)}
.badge.stage-awareness{background:#e6f0fc;color:#1c5cab}
.badge.stage-consideration{background:#d5e6fa;color:#184f95}
.badge.stage-decision{background:#b7d3f6;color:#0d366b}
.badge.stage-converted{background:#dff3df;color:var(--good-text)}
.badge.treatment{background:#e6f0fc;color:#1c5cab}.badge.control{background:#fdeae1;color:#9a3a12}
.badge.on{background:#dff3df;color:var(--good-text)}.badge.off{background:#f0efec;color:var(--muted)}
.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.stage{display:flex;flex-direction:column;gap:10px}
.stage .row{gap:8px}
.filters{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.filters select,.filters input{width:auto;min-width:130px}
.empty{padding:28px;text-align:center;color:var(--muted)}
.chart{position:relative}
.chart svg{display:block;width:100%;height:auto;overflow:visible}
.chart .bar{fill:var(--s1)}
.chart .bar:hover{filter:brightness(1.12)}
.chart .lbl{font-size:11px;fill:var(--ink-2)}
.chart .val{font-size:11px;fill:var(--ink);font-variant-numeric:tabular-nums}
.chart .grid{stroke:var(--grid);stroke-width:1}
.chart .axis{stroke:var(--axis);stroke-width:1}
.chart .line{fill:none;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.chart .area{opacity:.10}
.chart .dot{stroke:var(--surface);stroke-width:2}
.chart .cross{stroke:var(--axis);stroke-width:1}
.chart .hit{fill:transparent}
.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--ink-2);margin-top:6px}
.legend i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px;vertical-align:-1px}
.legend i.line{height:2px;width:14px;border-radius:1px;vertical-align:3px}
details.tv{margin-top:8px}
details.tv summary{cursor:pointer;color:var(--muted);font-size:12px}
.tooltip{position:fixed;z-index:50;background:#fff;border:1px solid var(--grid);border-radius:8px;padding:8px 10px;font-size:12px;box-shadow:0 6px 20px rgba(0,0,0,.12);pointer-events:none;min-width:140px}
.tooltip b{font-size:13px}
.tooltip .k{display:inline-block;width:12px;height:2px;margin-right:6px;vertical-align:middle}
.seg{display:flex;height:16px;border-radius:4px;overflow:hidden;background:#f0efec}
.seg span{display:block;height:100%;border-right:2px solid var(--surface)}
.seg span:last-child{border-right:0}
.drawer[hidden],.modal[hidden]{display:none}
.drawer{position:fixed;inset:0;background:rgba(11,11,11,.25);z-index:40;display:flex;justify-content:flex-end}
.drawer-panel{width:min(760px,96vw);background:var(--page);height:100%;overflow:auto;box-shadow:-12px 0 40px rgba(0,0,0,.18)}
.drawer-panel header,.modal-panel header{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;border-bottom:1px solid var(--grid);background:var(--surface);position:sticky;top:0;z-index:1}
.drawer-panel h2,.modal-panel h2{margin:0;font-size:17px}
.drawer-body,.modal-body{padding:18px 22px;display:flex;flex-direction:column;gap:16px}
.modal{position:fixed;inset:0;background:rgba(11,11,11,.3);z-index:45;display:flex;align-items:flex-start;justify-content:center;padding:4vh 16px;overflow:auto}
.modal-panel{width:min(1040px,100%);background:var(--page);border-radius:14px;box-shadow:0 20px 60px rgba(0,0,0,.25);max-height:92vh;overflow:auto}
.modal-panel.narrow{width:min(440px,100%)}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}
.facts div{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:10px 12px}
.facts b{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-weight:600;margin-bottom:3px}
.session{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:12px 14px}
.session h4{margin:0 0 8px;font-size:13px;display:flex;gap:10px;align-items:center}
.session h4 .pill{background:#4a3aa7;color:#fff;border-radius:999px;padding:2px 10px;font-size:11px}
.ev{display:grid;grid-template-columns:64px 130px 1fr;gap:10px;padding:6px 0;border-top:1px solid #f0efec;font-size:13px;align-items:baseline}
.ev:first-of-type{border-top:0}
.ev .t{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}
.ev .n{font-weight:600}
.ev .d{color:var(--ink-2);word-break:break-all}
.ev.mx_pageview .n{color:var(--st4)}.ev.mx_impression .n,.ev.mx_click .n,.ev.mx_launcher_click .n{color:#9a3a12}.ev.mx_cta_click .n,.ev.booking_purchase .n{color:var(--good-text)}
.exp-list{display:grid;gap:12px}
.exp{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:start}
.exp .meta{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0 8px}
.exp .title{font-weight:700;font-size:15px}
.exp .actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.switch{position:relative;width:38px;height:22px;border-radius:999px;background:#c3c2b7;border:0;cursor:pointer;flex:none}
.switch::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:left .15s}
.switch.on{background:var(--good)}.switch.on::after{left:19px}
.form{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form .full{grid-column:1/-1}
.field label{display:block;font-size:12px;color:var(--ink-2);font-weight:600;margin-bottom:4px}
.field .help{font-size:11px;color:var(--muted);margin-top:3px}
.checks{display:flex;gap:8px;flex-wrap:wrap}
.checks label{display:inline-flex;gap:5px;align-items:center;border:1px solid var(--grid);border-radius:999px;padding:4px 10px;background:#fff;font-size:12px;cursor:pointer}
.checks input{margin:0}
.tabs{display:flex;gap:4px;border-bottom:1px solid var(--grid);margin-bottom:10px}
.tabs button{border:0;background:transparent;padding:8px 12px;cursor:pointer;color:var(--ink-2);font-weight:600;border-bottom:2px solid transparent}
.tabs button.on{color:var(--st5);border-bottom-color:var(--s1)}
.preview-wrap{background:#e9e9e6;border-radius:12px;padding:18px;display:flex;justify-content:flex-end;align-items:flex-end;min-height:280px}
.pv{width:340px;background:#fff;border-radius:16px;box-shadow:0 12px 40px rgba(0,0,0,.22);overflow:hidden;font-family:var(--pv-font,var(--font));color:#212529}
.pv img{width:100%;height:130px;object-fit:cover;display:block}
.pv .b{padding:16px 18px}
.pv h2{font-size:17px;margin:0 0 4px}
.pv .sub{font-size:12px;color:#6c757d;font-weight:600;margin-bottom:10px}
.pv p{font-size:13px;margin:0 0 10px}
.pv ul{margin:0 0 12px;padding-left:18px;font-size:13px}
.pv .cta{display:block;text-align:center;padding:11px;border-radius:10px;font-weight:700;font-size:13px;color:var(--pv-cta-text,#fff);background:var(--pv-primary,#111)}
.pv .q{font-style:italic;font-size:13px;margin:0 0 6px}
.pv .stars{color:#f5a623;letter-spacing:2px}
.pv details{border-top:1px solid #eee;padding:6px 0;font-size:13px}
.error{color:var(--bad);font-size:13px}
.ok{color:var(--good-text);font-size:13px}
.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:#0b0b0b;color:#fff;padding:10px 16px;border-radius:10px;font-size:13px;z-index:60;box-shadow:0 8px 24px rgba(0,0,0,.25)}
.toast[hidden]{display:none}
.pager{display:flex;gap:8px;align-items:center;justify-content:flex-end;margin-top:8px}
.sig{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600}
.sig.yes{background:#dff3df;color:var(--good-text)}.sig.no{background:#f0efec;color:var(--ink-2)}
@media (max-width:900px){.app{grid-template-columns:1fr}.side{position:static;height:auto;flex-direction:row;flex-wrap:wrap;align-items:center}.nav{flex-direction:row;margin:0}.side-foot{margin:0}.form{grid-template-columns:1fr}.exp{grid-template-columns:1fr}}

.login{display:flex;flex-direction:column;gap:12px}
.login .btn{align-self:flex-start}
#who{color:var(--ink-2)}

.ic-journey{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M2 3h20l-7 9v8l-6-3v-5z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M2 3h20l-7 9v8l-6-3v-5z'/%3E%3C/svg%3E")}
.journey{display:grid;grid-template-columns:1fr 220px 1fr;gap:18px;align-items:start}
.journey .arm h3{justify-content:center;text-align:center;font-size:14px}
.journey .arm .n{font-size:32px;font-weight:600;text-align:center;line-height:1.1}
.journey .arm .n.t{color:var(--st4)}
.journey .arm .lab{text-align:center;color:var(--muted);font-size:12px;margin-bottom:6px}
.journey .impact{display:flex;flex-direction:column;gap:12px;padding-top:70px}
.journey .impact h3{text-align:center;justify-content:center;color:var(--st5);font-size:14px}
.journey .box{border:1px solid var(--grid);border-radius:12px;padding:12px 14px;text-align:center;background:#fff}
.journey .box b{display:block;font-size:12px;color:var(--ink-2);font-weight:600;margin-bottom:4px}
.journey .box .v{font-size:24px;font-weight:600}
.journey .box.good{background:#eaf5ea;border-color:#c9e6c9}.journey .box.good .v{color:var(--good-text)}
.journey .box.bad{background:#f7eeee;border-color:#eacaca}.journey .box.bad .v{color:var(--bad)}
.journey .conv{border:2px solid var(--ink);border-radius:12px;padding:10px 14px;text-align:center;margin:12px auto 0;width:max-content;background:#fff}
.journey .conv.t{border-color:var(--st3)}
.journey .conv b{display:block;font-size:12px;color:var(--ink-2)}
.journey .conv .v{font-size:18px;font-weight:600}
.journey .below{display:flex;justify-content:center;gap:28px;margin-top:10px;text-align:center}
.journey .below b{display:block;font-size:12px;color:var(--muted);font-weight:600}
.journey .below span{font-size:24px;font-weight:600}
.journey .below span.t{color:var(--st4)}
.split{display:flex;justify-content:center;gap:16px;align-items:center;font-size:13px;color:var(--ink-2);margin-bottom:6px}
.split b{font-size:20px;color:var(--ink)}
.kpis .card.dark{background:var(--st5);color:#fff}.kpis .card.dark h3,.kpis .card.dark .delta{color:#d7e6f7}.kpis .card.dark .value{color:#7fd3d3}
@media (max-width:1100px){.journey{grid-template-columns:1fr}.journey .impact{padding-top:0;flex-direction:row;flex-wrap:wrap}.journey .impact h3{width:100%}}

.pv.hero{background:#111 center/cover no-repeat;color:#fff;min-height:420px;display:flex;flex-direction:column;justify-content:flex-end}
.pv.hero .b{padding:18px}
.pv.hero h2{color:#fff;font-size:24px;text-shadow:0 2px 8px rgba(0,0,0,.5)}
.pv.hero .sub{color:rgba(255,255,255,.85)}
.pv.hero .icons{display:flex;gap:6px;margin:0 0 14px}
.pv.hero .icons div{flex:1;text-align:center;font-size:11px;font-weight:700}
.pv.hero .icons i{display:block;width:44px;height:44px;border:2px solid #fff;border-radius:50%;margin:0 auto 6px}
.pv.hero li{color:#fff}

.pv.media{background:#000;position:relative;padding:0;min-height:200px}
.pv.media img,.pv.media video{display:block;width:100%;height:auto;max-height:520px;object-fit:contain}
.pv.media .mcta{position:absolute;left:16px;right:16px;bottom:16px}

.chart.funnel svg{max-width:620px;margin:0 auto}
.journey .arm h3{font-size:15px}
.journey .arm .n{font-size:36px}
