:root{color-scheme:dark;--bg:#090d0b;--panel:#121813;--line:#2a342c;--text:#f2f5ef;--muted:#9aa59c;--accent:#a8ff24;--danger:#ff6b71}*{box-sizing:border-box}html,body{max-width:100%}body{margin:0;background:radial-gradient(circle at 10% 0,#172315,transparent 32%),var(--bg);color:var(--text);font:15px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}header{display:flex;align-items:center;gap:20px;padding:20px max(24px,calc((100% - 1160px)/2));border-bottom:1px solid var(--line)}header strong,.brand{letter-spacing:.14em}header span,.muted{color:var(--muted)}main{width:min(1160px,calc(100% - 40px));margin:38px auto 80px;min-width:0}.login{min-height:100vh;display:grid;place-items:center}.login-card{width:min(430px,calc(100% - 32px));padding:34px;border:1px solid var(--line);background:var(--panel)}h1{font:700 clamp(34px,5vw,62px)/1 sans-serif;overflow-wrap:anywhere}h2{font-family:system-ui,sans-serif;overflow-wrap:anywhere}.eyebrow{color:var(--accent);letter-spacing:.15em}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.card,.panel{display:block;padding:22px;border:1px solid var(--line);background:var(--panel);color:var(--text);text-decoration:none}.panel{margin:18px 0}.card,.panel,header,nav{min-width:0}nav{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}.top-nav{margin:0 0 0 auto}.top-nav a{padding:8px 10px;color:var(--muted);text-decoration:none;overflow-wrap:anywhere}.top-nav a.active,.top-nav a:hover{color:var(--accent)}a{color:var(--accent)}form{display:grid;gap:12px;margin-top:16px}label{display:grid;gap:6px;color:var(--muted)}input,textarea,select,button{font:inherit}input,textarea,select{width:100%;padding:11px;border:1px solid #465248;background:#0c110d;color:var(--text)}button,.button-link{padding:11px 16px;border:1px solid #658f2d;background:#253a19;color:var(--accent);cursor:pointer}.button-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.danger{border-color:#7a363a;color:var(--danger);background:#31191b}.release{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line);text-decoration:none}.state{color:var(--accent);text-transform:uppercase}.filters,.inline-form{display:grid;grid-template-columns:minmax(200px,1fr) 180px auto;align-items:end}.report-row{display:grid;gap:4px;padding:18px;border:1px solid var(--line);background:var(--panel);text-decoration:none;color:var(--text)}.report-row span{color:var(--muted)}.report-row.unread{border-left:4px solid var(--accent)}.notice{padding:18px;border:1px solid var(--line);background:var(--panel)}.notice.error{border-color:#7a363a;color:var(--danger)}.notice.success{border-color:#658f2d}.one-time-key{display:block;padding:14px;background:#070a08;color:var(--accent);font-size:18px;overflow-wrap:anywhere}.table-wrap{max-width:100%;overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere}th{color:var(--muted)}td small{display:block;color:var(--muted)}.row-actions,.actions{display:flex;flex-wrap:wrap;gap:8px}.row-actions form,.actions form{display:inline-grid;margin:0}.check{display:flex;align-items:center;gap:8px}.check input{width:auto}.status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.status-grid div{display:grid;padding:14px;border:1px solid var(--line)}pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#090d0b;padding:16px;max-height:480px;overflow:auto}
.analytics-page{width:min(1420px,calc(100% - 32px));margin:22px auto 48px;min-width:0}.analytics-topline{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:12px}.analytics-topline h1{margin:4px 0 7px;font-size:clamp(32px,4vw,52px)}.analytics-topline p{margin:0}.analytics-controls{display:flex;align-items:end;justify-content:flex-end;gap:8px;margin:0;padding:0;background:transparent}.analytics-controls label{font-size:11px;letter-spacing:.04em}.analytics-controls select,.analytics-controls input{min-width:108px;padding:8px 9px}.analytics-controls button,.analytics-controls .button-link{min-height:37px;padding:8px 12px}.custom-date{display:none}.analytics-controls:has(select option[value=custom]:checked) .custom-date{display:grid}.test-switch{display:flex;align-items:center;gap:7px;height:37px;padding:0 11px;border:1px solid var(--line);background:#0d120e;white-space:nowrap}.test-switch input{width:auto;min-width:0;accent-color:var(--accent)}.analytics-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) minmax(220px,1.35fr);gap:8px;margin:12px 0}.metric-card{display:grid;grid-template-columns:1fr auto;gap:3px 10px;min-width:0;padding:12px 14px;border:1px solid var(--line);background:linear-gradient(145deg,#141b15,#0f1410)}.metric-card span,.metric-card small{color:var(--muted);overflow-wrap:anywhere}.metric-card span{align-self:end;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.metric-card strong{grid-row:1/3;grid-column:2;font:700 clamp(24px,2.6vw,38px)/1 system-ui,sans-serif;text-align:right;white-space:nowrap}.metric-card small{font-size:10px}.metric-card.revenue{border-color:#597d2a;background:linear-gradient(145deg,#182314,#10160f)}.analytics-cockpit{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);grid-template-areas:"trend funnel" "products geo";gap:8px}.trend-panel{grid-area:trend}.funnel-panel{grid-area:funnel}.products-panel{grid-area:products}.geo-panel{grid-area:geo}.analytics-card{min-width:0;margin:0;padding:14px}.section-heading{display:flex;gap:12px;justify-content:space-between;align-items:flex-start}.section-heading h2{margin:2px 0 8px;font-size:18px}.section-heading .eyebrow{margin:0;font-size:10px}.analytics-chart,.analytics-map{display:block;width:100%;max-width:100%;min-width:0;height:160px;margin:6px 0 0;border:1px solid var(--line);background:#090d0b}.analytics-map{height:112px;background:#0b130e}.chart-axis{stroke:#4c5c4e;stroke-width:1}.chart-line{fill:none;stroke:var(--accent);stroke-width:3;stroke-linejoin:round;stroke-linecap:round}.chart-label,.map-label{fill:var(--muted);font:12px ui-monospace,SFMono-Regular,Menlo,monospace}.map-ocean{fill:#0b130e}.map-point{fill:var(--accent);fill-opacity:.9;stroke:#f2f5ef;stroke-width:1}.analytics-funnel-list,.compact-list{display:grid;gap:1px;background:var(--line)}.analytics-funnel-list div,.compact-list div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 9px;background:var(--panel)}.analytics-funnel-list span,.compact-list span{color:var(--muted);font-size:12px}.analytics-funnel-list strong,.compact-list strong{font-size:15px;color:var(--text)}.analytics-card table{font-size:12px}.analytics-card th,.analytics-card td{padding:8px 7px}.analytics-details{margin-top:8px;border:1px solid var(--line);background:#0d120e}.analytics-details summary{padding:10px 14px;color:var(--muted);cursor:pointer}.analytics-details[open] summary{border-bottom:1px solid var(--line);color:var(--accent)}.details-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line)}.details-grid article{min-width:0;padding:12px;background:var(--panel)}.details-grid h3{margin:0 0 6px;font:600 13px system-ui,sans-serif}.health-list{display:grid;gap:5px;margin:0;padding:0;list-style:none}.health-list li{display:flex;justify-content:space-between;gap:8px;padding:7px 0;border-bottom:1px solid var(--line);font-size:11px}.health-fresh{color:var(--accent)}.health-unavailable{color:var(--danger)}
@media(max-width:1000px){.analytics-topline{align-items:flex-start;flex-direction:column}.analytics-controls{justify-content:flex-start;flex-wrap:wrap}.analytics-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.analytics-cockpit{grid-template-columns:1fr;grid-template-areas:"trend" "funnel" "products" "geo"}.details-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:860px){.analytics-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){main{width:min(100% - 24px,1160px)}header{padding:16px 12px;align-items:flex-start;flex-wrap:wrap}.top-nav{width:100%;margin:0}.filters,.inline-form{grid-template-columns:1fr}}
@media(max-width:520px){.analytics-page{width:calc(100% - 16px);margin-top:16px}.analytics-controls{display:grid;grid-template-columns:1fr 1fr;width:100%}.analytics-controls label:first-child{grid-column:1/-1}.test-switch{min-width:0}.analytics-kpis{grid-template-columns:1fr 1fr}.metric-card{display:block}.metric-card strong{display:block;margin:5px 0;text-align:left;white-space:normal}.metric-card.revenue{grid-column:1/-1}.details-grid{grid-template-columns:1fr}.products-panel .table-wrap{overflow-x:auto}.analytics-card{padding:11px}}
@media(max-width:320px){main{width:calc(100% - 16px);margin-top:22px}.analytics-controls,.analytics-kpis{grid-template-columns:1fr}.analytics-controls label:first-child,.metric-card.revenue{grid-column:auto}.analytics-controls button,.analytics-controls .button-link{width:100%}.card,.panel{padding:10px}.analytics-chart{height:145px}.top-nav a{padding:8px 5px;font-size:13px}header{gap:10px}header span{font-size:13px}}

/* Compact device breakdown belongs in the cockpit, not in the long-form detail. */
.analytics-cockpit{grid-template-areas:"trend funnel" "products geo" "products devices"}
.devices-panel{grid-area:devices}
.device-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.device-grid>div{display:grid;grid-template-columns:auto 1fr;gap:0 7px;align-items:center;padding:8px;border:1px solid var(--line);background:#0c110d}
.device-icon{grid-row:1/3;color:var(--accent);font-size:22px}
.device-grid span:not(.device-icon){color:var(--muted);font-size:10px}
.device-grid strong{font-size:18px}
.data-caption{margin:3px 0 7px;color:var(--muted);font-size:10px;line-height:1.35}
.geo-attribution{display:inline-block;margin:3px 0 6px;color:var(--muted);font-size:9px}
.chart-point{fill:var(--accent);stroke:#f2f5ef;stroke-width:2}
@media(max-width:1000px){.analytics-cockpit{grid-template-areas:"trend" "funnel" "products" "geo" "devices"}}

/* Analytics follows the approved one-screen mockup: summary, paired primary
   panels, paired conversion/product panels, then downloads and payments. */
.analytics-page{width:min(1420px,calc(100% - 32px));margin:16px auto 36px}
.analytics-topline{align-items:center;margin-bottom:8px}
.analytics-topline h1{font-size:32px}
.analytics-topline>div>.muted{font-size:11px}
.analytics-kpis{grid-template-columns:repeat(5,minmax(0,1fr));margin:8px 0}
.metric-card{display:block;min-height:76px;padding:11px 13px}
.metric-card strong{display:block;margin:8px 0 4px;font-size:23px;text-align:left;white-space:normal}
.metric-card.revenue{background:#111a10}
.analytics-primary-grid,.analytics-secondary-grid,.analytics-bottom-grid{display:grid;gap:8px;margin-top:8px}
.analytics-primary-grid>.analytics-card,.analytics-secondary-grid>.analytics-card{grid-area:auto}
.analytics-primary-grid{grid-template-columns:minmax(0,1.45fr) minmax(320px,.8fr)}
.analytics-secondary-grid{grid-template-columns:minmax(300px,.72fr) minmax(0,1.53fr)}
.analytics-bottom-grid{grid-template-columns:1fr 1fr}
.analytics-card{padding:12px}
.analytics-card h2{margin-bottom:4px;font-size:16px}
.analytics-chart{height:154px;margin-top:3px}
.analytics-map{height:96px;margin-top:3px}
.geo-meta{display:grid;grid-template-columns:1.15fr .85fr;gap:6px;margin-top:6px}
.compact-list,.device-grid{gap:1px;background:var(--line)}
.compact-list div,.device-grid>div{display:flex;align-items:center;justify-content:space-between;gap:7px;min-height:27px;padding:5px 7px;border:0;background:var(--panel)}
.compact-list span,.device-grid span{color:var(--muted);font-size:10px}
.compact-list strong,.device-grid strong{font-size:12px}
.analytics-funnel{display:grid;grid-template-columns:1fr .78fr .52fr;gap:5px;align-items:center;margin-top:10px}
.analytics-funnel div{display:grid;place-items:center;min-height:74px;padding:9px 6px;background:#202a20;color:var(--text)}
.analytics-funnel div:nth-child(2){background:#334622}
.analytics-funnel div:nth-child(3){background:var(--accent);color:#0b100c}
.analytics-funnel strong{font-size:22px}
.analytics-funnel span{font-size:10px;text-transform:uppercase}
.analytics-secondary-grid .analytics-card,.analytics-bottom-grid .analytics-card{min-height:128px}
.analytics-card table{font-size:11px}
.analytics-card th,.analytics-card td{padding:6px}
.analytics-status-strip{display:flex;justify-content:space-between;gap:20px;margin-top:8px;padding:7px 10px;border:1px solid var(--line);color:var(--muted);font-size:10px}
.analytics-status-strip b{font-weight:500}
@media(max-width:1000px){
  .analytics-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
  .analytics-primary-grid,.analytics-secondary-grid,.analytics-bottom-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
  .analytics-kpis{grid-template-columns:1fr 1fr}
  .metric-card.revenue{grid-column:1/-1}
  .analytics-primary-grid,.analytics-secondary-grid,.analytics-bottom-grid{display:block}
  .analytics-primary-grid>.analytics-card,.analytics-secondary-grid>.analytics-card,.analytics-bottom-grid>.analytics-card{margin-top:8px}
  .geo-meta{grid-template-columns:1fr}
  .analytics-status-strip{display:grid}
}

/* Analytics clarity pass: one compact cockpit, with secondary operational
   tables available only on demand. */
.analytics-page{width:min(1420px,calc(100% - 32px));margin:16px auto 36px}
.analytics-kpis{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:8px 0}
.metric-card{min-height:88px}
.metric-card small{display:block;line-height:1.35}
.analytics-cockpit{display:grid;grid-template-columns:minmax(0,1.42fr) minmax(330px,.78fr);grid-template-areas:"trend geo" "products funnel";gap:8px}
.trend-panel{grid-area:trend}.geo-panel{grid-area:geo}.products-panel{grid-area:products}.funnel-panel{grid-area:funnel}
.analytics-chart{height:190px}
.analytics-map{height:118px}
.chart-grid{stroke:#29352d;stroke-width:1;stroke-dasharray:3 5}
.chart-tick{fill:#758079;font:10px ui-monospace,SFMono-Regular,Menlo,monospace}
.chart-area{fill:url(#trend-fill)}
.chart-line{fill:none;stroke:var(--accent);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.chart-point{fill:var(--accent);stroke:#0b100c;stroke-width:2;cursor:help}
.world-land{fill:#1b271e;stroke:#435346;stroke-width:1}
.map-ocean{fill:#09100c}
.map-empty{fill:var(--muted);font:12px ui-monospace,SFMono-Regular,Menlo,monospace}
.map-marker{cursor:help;outline:none}
.map-marker:focus .map-point,.map-marker:hover .map-point{fill:#fff;stroke:var(--accent)}
.map-pulse{fill:var(--accent);opacity:.17}
.map-point{fill:var(--accent);stroke:#dfffb2;stroke-width:1.5}
.map-label{fill:#dce4dd;font:10px ui-monospace,SFMono-Regular,Menlo,monospace;paint-order:stroke;stroke:#09100c;stroke-width:3px;stroke-linejoin:round}
.geo-meta{grid-template-columns:.92fr 1.08fr;gap:10px}
.device-list{display:grid;gap:6px}
.device-row{display:grid;gap:4px}
.device-row>div{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:10px}
.device-row span{color:var(--muted)}.device-row strong{font-size:10px}
.device-track{display:block;height:6px;background:#263129;overflow:hidden}
.device-track i{display:block;height:100%;background:var(--accent);min-width:0}
.analytics-funnel{grid-template-columns:1fr .8fr .58fr}
.analytics-funnel div{position:relative}
.analytics-funnel div:not(:last-child)::after{content:"→";position:absolute;right:-8px;z-index:1;color:var(--text);font-size:13px}
.analytics-details{margin-top:8px}
.analytics-details summary{font-size:11px;letter-spacing:.04em}
.details-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}

@media(max-width:1000px){
  .analytics-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
  .analytics-cockpit{grid-template-columns:1fr;grid-template-areas:"trend" "geo" "funnel" "products"}
}
@media(max-width:620px){
  .analytics-kpis{grid-template-columns:1fr 1fr}
  .metric-card.revenue{grid-column:1/-1}
  .analytics-chart{height:170px}
  .geo-meta{grid-template-columns:1fr}
}
@media(max-width:380px){
  .analytics-kpis{grid-template-columns:1fr}
  .metric-card.revenue{grid-column:auto}
}
