/* POS Pulse dashboard. Patterns follow The Voice (docs/design-the-voice.md). Tokens come from tokens.css. */
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:radial-gradient(60rem 30rem at 85% -10%,var(--bg-glow),transparent 70%),radial-gradient(50rem 28rem at -5% 0,var(--bg-glow-2),transparent 70%),var(--bg);background-color:var(--bg);color:var(--ink);font-family:var(--font);font-size:var(--t-sm);line-height:1.5;min-height:100vh;font-variant-numeric:tabular-nums}
[data-theme='light'] body{-webkit-font-smoothing:auto}
:focus-visible{outline:2px solid var(--accent-ink);outline-offset:2px}
[hidden]{display:none!important}
:root{--page-x:clamp(1rem,1.4vw + .4rem,2.6rem);--page-max:1760px}
a{color:var(--info)}
h1,h2,h3{margin:0;font-weight:600}
.muted{color:var(--ink-3)}
.num{font-variant-numeric:tabular-nums}

/* chrome (glass allowed here only) */
.bar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:var(--s-4);flex-wrap:wrap;padding:.6rem var(--page-x);background:var(--glass);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:.65rem}
.mark{display:grid;place-items:center;width:2.2rem;height:2.2rem;border-radius:var(--r-md);background:var(--accent-wash);color:var(--accent-ink);box-shadow:0 0 0 1px var(--line-strong)}
.name{font-weight:700;letter-spacing:-.01em;line-height:1.1}
.tag{font-size:var(--t-2xs);color:var(--ink-3)}
.tabs{display:flex;gap:.25rem;padding:.2rem;border-radius:var(--r-pill);background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line)}
.tabs a{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .9rem;border-radius:var(--r-pill);color:var(--ink-2);text-decoration:none;font-weight:500;transition:background var(--dur) var(--ease)}
.tabs a[aria-current=page]{background:var(--nav-on);color:var(--nav-on-ink);box-shadow:var(--nav-lift)}
.count{min-width:1.3rem;padding:0 .4rem;border-radius:var(--r-pill);background:var(--accent-fill);color:#fff;font-size:var(--t-2xs);text-align:center}
.bar-end{margin-inline-start:auto;display:flex;gap:.5rem;align-items:center}

.btn{font:inherit;font-weight:500;color:var(--ink);background:var(--surface-2);border:1px solid var(--control-line);border-radius:var(--r-md);padding:.4rem .85rem;cursor:pointer;transition:transform var(--dur) var(--ease),background var(--dur) var(--ease)}
.btn:hover{background:var(--surface-3)}
.btn:active{transform:translateY(1px)}
.btn.icon{padding:.4rem .55rem;display:inline-grid;place-items:center}
.btn.primary{background:var(--accent-fill);border-color:transparent;color:#fff}
.btn.primary:hover{background:var(--accent-hover)}
.btn:disabled{opacity:.55;cursor:default}

/* page frame */
.page{max-width:var(--page-max);margin:0 auto;padding:var(--pad) var(--page-x) 3rem;display:flex;flex-direction:column;gap:var(--gap)}
.page:focus{outline:none}
.page-head{display:flex;flex-wrap:wrap;align-items:end;gap:.75rem 1rem}
.page-head h1{font-size:var(--t-xl);letter-spacing:-.02em}
.filters{display:flex;flex-wrap:wrap;gap:.5rem;align-items:end}
.f{display:flex;flex-direction:column;gap:.15rem;font-size:var(--t-2xs);color:var(--ink-3)}
select,input[type=text],input[type=date],input[type=password],textarea{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--control-line);border-radius:var(--r-sm);padding:.38rem .55rem;min-width:0}
select{max-width:14rem}
textarea{width:100%;resize:vertical;min-height:4rem}

.grid{display:grid;gap:var(--gap)}
.kpis{grid-template-columns:repeat(auto-fit,minmax(11rem,1fr))}
.two{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:1100px){.two{grid-template-columns:minmax(0,1fr)}}

.card,.panel,.kpi{background:linear-gradient(180deg,color-mix(in srgb,var(--surface-2) 55%,var(--surface)),var(--surface));border-radius:var(--r-lg);box-shadow:var(--shadow-1)}
[data-theme='light'] .card,[data-theme='light'] .panel,[data-theme='light'] .kpi{background:var(--surface);box-shadow:0 0 0 1px var(--line-strong)}
.panel{padding:var(--s-4) var(--pad);min-width:0}
.panel-h{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-bottom:var(--s-3)}
.panel-h h2{font-size:var(--t-sm)}
.panel-h .muted{font-size:var(--t-2xs)}

.kpi{position:relative;padding:.9rem 1rem .95rem;overflow:hidden;--kpi-accent:var(--neutral)}
.kpi::before{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:3px;background:var(--kpi-accent)}
.kpi .eyebrow{font-size:var(--t-xs);color:var(--ink-3);font-weight:500;text-transform:uppercase;letter-spacing:.06em}
.kpi-in{display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.kpi .v{font-size:var(--t-2xl);font-weight:600;letter-spacing:-.035em;line-height:1.2}
.kpi .s{font-size:var(--t-2xs);color:var(--ink-3)}
.kpi.good{--kpi-accent:var(--good)}.kpi.watch{--kpi-accent:var(--watch)}.kpi.risk{--kpi-accent:var(--risk)}.kpi.blue{--kpi-accent:var(--series-a)}

/* tables */
.tablewrap{overflow-x:auto;border-radius:var(--r-md);max-width:100%}
.tbl{width:100%;border-collapse:collapse;min-width:44rem}
.tbl th{position:sticky;top:0;text-align:start;font-size:var(--t-2xs);font-weight:600;color:var(--ink-3);text-transform:uppercase;letter-spacing:.05em;padding:.5rem .65rem;background:var(--surface-2);border-bottom:1px solid var(--line-strong);white-space:nowrap}
.tbl td{padding:.55rem .65rem;border-bottom:1px solid var(--line);vertical-align:middle}
.tbl tbody tr.click{cursor:pointer}
.tbl tbody tr.click:hover{background:var(--surface-2)}
.tbl td.r,.tbl th.r{text-align:end}
.sub{display:block;font-size:var(--t-2xs);color:var(--ink-3)}
.bar-cell{display:flex;align-items:center;gap:.5rem;min-width:9rem}
.track{flex:1;height:8px;border-radius:4px;background:var(--surface-3);overflow:hidden}
.fill{height:100%;background:var(--series-a);border-radius:4px}
.empty{padding:1.5rem;text-align:center;color:var(--ink-3)}

/* chips: icon + word, never colour alone */
.chip{display:inline-flex;align-items:center;gap:.3rem;padding:.12rem .55rem;border-radius:var(--r-pill);font-size:var(--t-2xs);font-weight:500;background:var(--surface-3);color:var(--ink-2);border:1px solid color-mix(in srgb,currentColor var(--status-edge),transparent);white-space:nowrap}
.chip.good{background:var(--good-wash);color:var(--good-ink)}
.chip.watch{background:var(--watch-wash);color:var(--watch-ink)}
.chip.risk{background:var(--risk-wash);color:var(--risk-ink)}
.chip.info{background:var(--info-wash);color:var(--info)}
.chip.theme{background:transparent;color:var(--ink-2);border-color:var(--line-strong)}
.chips{display:flex;flex-wrap:wrap;gap:.3rem}
.stars{letter-spacing:1px;color:var(--watch-ink);white-space:nowrap}
.stars .off{color:var(--ink-3);opacity:.45}

/* lists */
.cases{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}
.case{display:flex;gap:.75rem;align-items:flex-start;padding:.65rem .8rem;border-radius:var(--r-md);background:var(--surface-2);border:1px solid var(--line);width:100%;text-align:start;font:inherit;color:inherit;cursor:pointer}
.case:hover{background:var(--surface-3)}
.case .age{flex:none;min-width:3.4rem;text-align:center}
.case .age b{display:block;font-size:var(--t-lg)}
.quotes{display:grid;grid-template-columns:repeat(auto-fill,minmax(17rem,1fr));gap:var(--gap)}
.quote{background:var(--surface-2);border-radius:var(--r-md);padding:.8rem .9rem;border:1px solid var(--line);display:flex;flex-direction:column;gap:.5rem}
.quote blockquote{margin:0;font-size:var(--t-md);line-height:1.5;border-inline-start:3px solid var(--series-a);padding-inline-start:.65rem}
.quote footer{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;font-size:var(--t-2xs);color:var(--ink-3)}

/* charts */
.chart svg{width:100%;height:auto;display:block;overflow:visible}
.chart text{fill:var(--ink-3);font-size:11px;font-family:var(--font)}
.legend{display:flex;gap:1rem;flex-wrap:wrap;font-size:var(--t-2xs);color:var(--ink-2);margin-top:.4rem}
.legend i{display:inline-block;width:.8rem;height:3px;border-radius:2px;margin-inline-end:.35rem;vertical-align:middle}
.hb{display:grid;grid-template-columns:minmax(7rem,11rem) 1fr;gap:.35rem .75rem;align-items:center}
.hb .lab{font-size:var(--t-xs)}
.hb .bars{display:flex;flex-direction:column;gap:3px}
.hb .row{display:flex;align-items:center;gap:.5rem}
.hb .b{height:9px;border-radius:3px;min-width:2px}
.hb .b.cur{background:var(--series-a)}.hb .b.prev{background:var(--cat-neutral)}
.hb .n{font-size:var(--t-2xs);color:var(--ink-2)}

/* drawer */
.scrim{position:fixed;inset:0;background:var(--overlay);z-index:40}
.drawer{position:fixed;inset-block:0;inset-inline-end:0;width:min(44rem,100vw);z-index:50;background:var(--surface);border-inline-start:1px solid var(--line-strong);box-shadow:var(--shadow-2);overflow-y:auto;padding:var(--s-4) var(--pad) 2rem;display:flex;flex-direction:column;gap:var(--s-4);animation:slide var(--dur) var(--ease)}
@keyframes slide{from{transform:translateX(24px);opacity:0}to{transform:none;opacity:1}}
.drawer h2{font-size:var(--t-lg)}
.drawer .head{display:flex;justify-content:space-between;gap:.75rem;align-items:flex-start}
.drawer section{display:flex;flex-direction:column;gap:.35rem}
.drawer .lbl{font-size:var(--t-2xs);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);font-weight:600}
.drawer audio{width:100%}
.transcript{white-space:pre-wrap;background:var(--surface-2);border-radius:var(--r-md);padding:.65rem .8rem;border:1px solid var(--line);font-size:var(--t-md)}
.warn{padding:.55rem .75rem;border-radius:var(--r-md);background:var(--watch-wash);color:var(--watch-ink)}
.errbox{padding:.55rem .75rem;border-radius:var(--r-md);background:var(--risk-wash);color:var(--risk-ink)}
.form{display:flex;flex-direction:column;gap:.6rem;border-top:1px solid var(--line);padding-top:var(--s-3)}
.form label{display:flex;gap:.4rem;align-items:center}
.checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.2rem .75rem}
.err{color:var(--risk-ink);min-height:1.2em;margin:.2rem 0}

/* login */
.login{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:1rem;background:var(--bg)}
.login-card{width:min(24rem,100%);padding:1.5rem;display:flex;flex-direction:column;gap:.5rem}
.pager{display:flex;gap:.75rem;align-items:center;justify-content:flex-end;color:var(--ink-3)}


/* ---------- additions: location, filters, phone pieces that also exist on desktop ---------- */
a.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;color:var(--ink)}
.filter-wrap{margin-inline-start:auto}
.filter-toggle{display:none}
.list-cards{display:none}
.tabs .ti{display:none}
.close .cl{display:none}
.locrow{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .75rem}
.fcard{padding:.8rem .9rem;border-radius:var(--r-md);background:var(--surface-2);border:1px solid var(--line);display:flex;flex-direction:column;gap:.35rem;cursor:pointer;-webkit-tap-highlight-color:transparent}
.fcard:active{background:var(--surface-3)}
.fc-top{display:flex;justify-content:space-between;align-items:center;gap:.5rem}
.player{display:flex;flex-direction:column}

/* ---------- phones (360 to 430 px primary) ---------- */
@media(max-width:700px){
  :root{--page-x:max(1rem,env(safe-area-inset-left),env(safe-area-inset-right));--pad:1rem;--gap:.75rem;--t-2xs:.75rem;--t-xs:.8rem;--t-sm:.9rem;--t-2xl:1.7rem}
  input,select,textarea{font-size:16px}
  select{max-width:none;width:100%}
  select,input[type=text],input[type=date],input[type=password]{min-height:44px}
  .btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center}
  .btn.icon{min-width:44px}
  .page,.panel,.card{min-width:0}
  .page{padding-bottom:calc(5.5rem + env(safe-area-inset-bottom))}
  .kpi,.fcard,.case,.drawer,.quote{overflow-wrap:anywhere}

  /* compact header: brand, theme, lock */
  .bar{flex-wrap:nowrap;gap:.5rem;padding-top:calc(.5rem + env(safe-area-inset-top));padding-bottom:.5rem;background:var(--surface);backdrop-filter:none;-webkit-backdrop-filter:none}
  .tag,#exportBtn{display:none}
  .name{white-space:nowrap}
  .bar-end{margin-inline-start:auto}

  /* bottom tab bar */
  .tabs{position:fixed;left:0;right:0;bottom:0;z-index:30;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:0 0 env(safe-area-inset-bottom);border-radius:0;background:var(--surface);box-shadow:0 -1px 0 var(--line-strong)}
  .tabs a{position:relative;flex-direction:column;justify-content:center;gap:.15rem;min-height:56px;padding:.4rem .25rem;border-radius:0;font-size:.75rem;color:var(--ink-3)}
  .tabs .ti{display:block}
  .tabs .long{display:none}
  .tabs a[aria-current=page]{background:transparent;box-shadow:inset 0 2px 0 var(--accent);color:var(--accent-ink)}
  .tabs .count{position:absolute;top:.3rem;left:calc(50% + .6rem);min-width:1.25rem;padding:0 .35rem;line-height:1.25rem}

  /* filters behind a button */
  .filter-wrap{margin-inline-start:0;width:100%}
  .filter-toggle{display:inline-flex;width:100%;justify-content:space-between;padding-inline:1rem}
  .filters{display:none;margin-top:.5rem;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}
  .filters.open{display:grid}
  .f{font-size:var(--t-xs)}
  .page-head h1{font-size:var(--t-lg)}

  /* tiles and charts */
  .kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kpi{padding:.7rem .75rem .75rem .9rem}
  .kpi .eyebrow{font-size:.75rem;letter-spacing:.03em}
  .quotes{grid-template-columns:minmax(0,1fr)}
  .tablewrap .tbl{min-width:0!important}
  .tbl th,.tbl td{padding:.5rem .4rem}
  .bar-cell{min-width:0}
  .bar-cell .track{display:none}
  .hb{grid-template-columns:minmax(0,1fr)}
  .legend{gap:.4rem 1rem}

  /* feedback: cards, not a table */
  .list-table{display:none}
  .list-cards{display:flex;flex-direction:column;gap:.6rem;list-style:none;margin:0;padding:0}
  .pager{flex-wrap:wrap;justify-content:space-between}
  .case{min-height:44px}

  /* drawer becomes a full-screen sheet */
  body.sheet-open{overflow:hidden}
  .drawer{inset:0;width:100%;height:100dvh;border-inline-start:0;padding:0 var(--page-x) calc(2rem + env(safe-area-inset-bottom));gap:.9rem;animation:rise var(--dur) var(--ease);overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  @keyframes rise{from{transform:translateY(24px);opacity:0}to{transform:none;opacity:1}}
  .drawer .head{position:sticky;top:0;z-index:3;align-items:center;margin-inline:calc(var(--page-x)*-1);padding:calc(.6rem + env(safe-area-inset-top)) var(--page-x) .6rem;background:var(--surface);border-bottom:1px solid var(--line)}
  .drawer .head h2{font-size:var(--t-md)}
  .close{flex:none;min-width:44px;gap:.4rem;padding-inline:.9rem}
  .close .cl{display:inline}
  .player{position:sticky;top:var(--dh,3.6rem);z-index:2;margin-inline:calc(var(--page-x)*-1);padding:.5rem var(--page-x);background:var(--surface);border-bottom:1px solid var(--line)}
  .drawer audio{height:44px}
  .checks{grid-template-columns:minmax(0,1fr)}
  .form label{min-height:44px}
  .form input[type=checkbox]{width:22px;height:22px;flex:none}
  .form .btn.primary{width:100%;min-height:48px}
  textarea{min-height:6rem}
  .locrow .btn{min-width:44px}
}

/* ---------- amplified: insights, charts, detail ---------- */
.ar,.ar-ok,[dir=rtl]{font-family:'Noto Sans Arabic',var(--font)}
.chart text{font-variant-numeric:tabular-nums}
.chart .word{cursor:pointer;outline:none}
.chart .word:hover text,.chart .word:focus-visible text{text-decoration:underline}
.chart .word:focus-visible rect{stroke:var(--accent-ink);stroke-width:2}
.legend i.dash{background:none!important;height:0;border-top:3px dashed;border-radius:0}
.legend.scale{align-items:center;gap:.6rem}
.legend .grad{display:inline-block;width:7rem;height:8px;border-radius:4px;background:linear-gradient(90deg,var(--risk),var(--neutral),var(--good))}
.readout{margin-top:.5rem;padding:.55rem .75rem;border-radius:var(--r-md);background:var(--surface-2);border:1px solid var(--line);min-height:2.6rem;display:flex;flex-wrap:wrap;gap:.3rem .6rem;align-items:center}
.cloudgrid{grid-template-columns:minmax(0,3fr) minmax(0,2fr)}
@media(max-width:1100px){.cloudgrid{grid-template-columns:minmax(0,1fr)}}
.subtabs{display:flex;gap:.25rem;padding:.2rem;border-radius:var(--r-pill);background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line);align-self:flex-start;max-width:100%;overflow-x:auto}
.subtabs a{padding:.35rem .9rem;border-radius:var(--r-pill);color:var(--ink-2);text-decoration:none;font-weight:500;white-space:nowrap}
.subtabs a.on{background:var(--nav-on);color:var(--nav-on-ink);box-shadow:var(--nav-lift)}
.chip.owner{background:var(--surface-3);color:var(--ink);font-weight:600}
.moodbar{display:inline-flex;align-items:center;gap:.4rem;white-space:nowrap}
.moodbar svg{flex:none;width:60px;height:12px}
.comp{color:var(--info);font-size:var(--t-md)}
.tbl td.c,.tbl th.c{text-align:center}
.termbar{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}
.fc-mood{align-items:center}

/* bar lists */
.bl{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.2rem}
.blr{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(3rem,1fr) 2.2rem;gap:.6rem;align-items:center;width:100%;padding:.4rem .5rem;border-radius:var(--r-sm);border:0;background:none;color:inherit;font:inherit;text-align:start}
button.blr{cursor:pointer;transition:background var(--dur) var(--ease)}
button.blr:hover{background:var(--surface-2)}
.bl-t{display:flex;flex-direction:column;min-width:0}
.bl-l{overflow-wrap:anywhere}
.bl-b{height:9px;border-radius:5px;background:var(--surface-3);overflow:hidden;display:block}
.bl-b span{display:block;height:100%;border-radius:5px}
.bl-n{text-align:end;color:var(--ink-2)}

/* heatmap table */
.tbl.heat th.c{text-align:center;white-space:normal;min-width:5rem}
.tbl.heat th.rowh{position:static;background:none;text-transform:none;letter-spacing:0;font-size:var(--t-xs);color:var(--ink);text-align:start;white-space:nowrap}
.tbl.heat td.hm{text-align:center;padding:.4rem .3rem;border:2px solid var(--surface);line-height:1.2}
.tbl.heat td.hm b{display:block;font-weight:600}
.tbl.heat td.none{color:var(--ink-3);background:var(--surface-2)}
.stack{display:flex;width:7rem;height:10px;border-radius:5px;overflow:hidden;background:var(--surface-3)}
.stack span{display:block;height:100%}

/* next actions */
.acts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}
.act{display:flex;gap:.75rem;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:.65rem .8rem;border-radius:var(--r-md);background:var(--surface-2);border:1px solid var(--line)}
.act-main{flex:1 1 18rem;min-width:0;display:flex;flex-direction:column;gap:.3rem}
.act-t{overflow-wrap:anywhere}
.act-end{display:flex;gap:.5rem}
.quote blockquote .q-en{display:block;margin-top:.35rem;font-size:var(--t-sm);color:var(--ink-2)}

/* detail sheet */
.kpis.dk{grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem}
.kpis.dk .kpi{padding:.6rem .7rem .65rem .9rem}
.kpis.dk .kpi .v{font-size:var(--t-lg)}
.seg{display:inline-flex;padding:.15rem;border-radius:var(--r-pill);background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line);align-self:flex-start}
.seg button{font:inherit;font-size:var(--t-xs);font-weight:600;border:0;background:none;color:var(--ink-2);padding:.2rem .8rem;border-radius:var(--r-pill);cursor:pointer;min-height:28px}
.seg button.on{background:var(--nav-on);color:var(--nav-on-ink);box-shadow:var(--nav-lift)}
.tools{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}
.tgl{display:inline-flex;gap:.4rem;align-items:center;color:var(--ink-2);font-size:var(--t-xs)}
.tblock{display:flex;flex-direction:column;gap:.6rem}
.segs{display:flex;flex-direction:column;gap:.35rem}
.segrow{display:grid;grid-template-columns:1.6rem minmax(0,1fr) auto;gap:.5rem;align-items:start;padding:.5rem .6rem;border-radius:var(--r-md);background:var(--surface-2);border:1px solid var(--line);transition:background var(--dur) var(--ease)}
.segrow.flash{background:var(--accent-wash)}
.segrow:focus{outline:none}
.segno{color:var(--ink-3);font-size:var(--t-xs);padding-top:.15rem}
.seg-o{font-size:var(--t-md);overflow-wrap:anywhere}
.seg-t{color:var(--ink-2);font-size:var(--t-sm);margin-top:.15rem;overflow-wrap:anywhere}
.rawbox{display:grid;gap:.6rem}
.rawcol .lbl{margin-bottom:.25rem}
.plain{margin:0;padding-inline-start:1.1rem;display:flex;flex-direction:column;gap:.25rem}
.sumtxt{margin-top:.2rem}
.meter{display:flex;flex-direction:column;gap:.4rem}
.meter-top{display:flex;align-items:baseline;gap:.5rem;flex-wrap:wrap}
.meter-top .v{font-size:var(--t-xl);font-weight:600}
.meter-track{height:12px;border-radius:6px;background:var(--surface-3);overflow:hidden}
.meter-track span{display:block;height:100%;border-radius:6px}
.meter-ends{display:flex;justify-content:space-between;font-size:var(--t-2xs);color:var(--ink-3)}
.nxt{display:flex;flex-direction:column;gap:.45rem;align-items:flex-start}
.terms{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem .9rem}
.terms li{display:flex;gap:.4rem;align-items:baseline}
.term{font:inherit;font-weight:600;color:var(--info);background:none;border:0;border-bottom:1px dashed currentColor;padding:0;cursor:pointer}
@media(max-width:700px){
  .tablewrap .tbl.heat{min-width:38rem!important}
  .kpis.dk{grid-template-columns:repeat(2,minmax(0,1fr))}
  .blr{grid-template-columns:minmax(0,1fr) 2.2rem}
  .blr .bl-b{display:none}
  .act-end{width:100%}
  .act-end .btn{flex:1}
  .subtabs{width:100%}
  .subtabs a{flex:1;text-align:center;padding-inline:.5rem}
  .seg button{min-height:36px}
  .tgl{min-height:44px}
  .tgl input{width:22px;height:22px}
  .readout .btn{width:100%}
}
@media(min-width:900px){.rawbox{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* Floor for the smallest text: tokens.css sets --t-2xs .68rem (10.9px at a 16px root); keep labels >= 12px. */
:root, [data-theme="light"] { --t-2xs: 0.75rem; }
