/* "Inicio": four different pages, one per kind of business (see dueno-home.js).
   body[data-vertical] also gives the rest of the app that business's background and shapes. */
.home{display:block}
.h-more{text-align:center;margin:22px 0 4px}
.empty-note{color:var(--muted);font-size:13px;margin:6px 0}
.mono{font-family:ui-monospace,"Cascadia Mono","SF Mono",Consolas,monospace;font-variant-numeric:tabular-nums}
.home svg text{font-family:inherit}

/* ================================================================ DENTAL · clinical console */
body[data-vertical="dental"]{--bg:#f2f5f9;--line:#dbe3ee;--radius:8px}
.dx{display:flex;flex-direction:column;gap:12px}
.dx-status{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted);padding:2px 2px 0}
.dx-status b{margin-left:auto;color:var(--ink);font-weight:600}
.dx-dot{width:8px;height:8px;border-radius:50%;background:#22a06b;box-shadow:0 0 0 4px #22a06b26}
.dx-week{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.dx-week div{display:flex;flex-direction:column;align-items:center;padding:8px 0;border:1px solid var(--line);border-radius:6px;background:var(--card);min-width:0}
.dx-week small{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.dx-week b{font-size:18px;line-height:1.2;font-family:ui-monospace,Consolas,monospace}
.dx-week i{font-style:normal;font-size:9px;color:var(--muted);white-space:nowrap}
.dx-week .today{background:var(--brand);border-color:var(--brand);color:#fff}
.dx-week .today small,.dx-week .today i{color:#ffffffcc}
.dx-week .closed{opacity:.45;background:transparent;border-style:dashed}
.dx-now{display:flex;align-items:center;gap:16px;padding:14px 16px;background:var(--card);border:1px solid var(--line);border-left:4px solid var(--brand);border-radius:8px}
.dx-ring{width:86px;height:86px;flex:none}
.dx-ring .track{fill:none;stroke:var(--line);stroke-width:7}
.dx-ring .fill{fill:none;stroke:var(--brand);stroke-width:7;stroke-linecap:round}
.dx-ring text{text-anchor:middle;font-size:17px;font-weight:700;fill:var(--ink);font-family:ui-monospace,Consolas,monospace}
.dx-ring text.small{font-size:8px;font-weight:400;fill:var(--muted);font-family:system-ui,sans-serif}
.dx-now div{display:flex;flex-direction:column;min-width:0}
.dx-now small{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--brand);font-weight:700}
.dx-now b{font-size:30px;line-height:1.1}
.dx-now strong{font-size:16px}
.dx-now span{font-size:13px;color:var(--muted)}
.dx-panel{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:14px}
.dx-panel h2{margin:0 0 10px;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--brand)}
.dx-help{margin:-4px 0 10px;font-size:12px;color:var(--muted)}
.dx-table{width:100%;border-collapse:collapse;font-size:13px}
.dx-table th{text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:600;padding:0 6px 6px;border-bottom:2px solid var(--line)}
.dx-table td{padding:9px 6px;border-bottom:1px solid var(--line);vertical-align:top}
.dx-table td:first-child{font-weight:700;color:var(--brand);width:52px}
.dx-table strong{display:block}.dx-table small{color:var(--muted);font-size:11px}
.dx-table td:last-child{text-align:right;width:88px}
.dx-chip{display:inline-block;font-size:11px;padding:2px 8px;border-radius:4px;background:var(--info-soft);color:var(--ink);white-space:nowrap}
.dx-table tr.done{opacity:.6}.dx-table tr.done .dx-chip{background:var(--ok-soft);color:var(--ok)}
.dx-table tr.now .dx-chip{background:var(--brand);color:#fff}
.dx-table tr.miss .dx-chip{background:var(--warn-soft);color:var(--warn)}
.dx-ficha{display:grid;grid-template-columns:1fr 1fr;background:var(--card);border:1px solid var(--line);border-radius:8px;overflow:hidden}
.dx-ficha div{display:flex;flex-direction:column;padding:10px 14px;border-bottom:1px solid var(--line)}
.dx-ficha div:nth-child(odd){border-right:1px solid var(--line)}
.dx-ficha div:nth-last-child(-n+2){border-bottom:0}
.dx-ficha span{font-size:11px;color:var(--muted)}
.dx-ficha b{font-size:19px}
.dx-recall{display:grid;grid-template-columns:minmax(0,1.3fr) 1fr 38px;align-items:center;gap:10px;padding:8px 0;border-top:1px solid var(--line)}
.dx-recall:first-of-type{border-top:0}
.dx-recall strong{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dx-recall small{font-size:11px;color:var(--muted)}
.dx-recall b{text-align:right;font-size:13px;color:var(--warn)}
.dx-meter{position:relative;height:6px;border-radius:3px;background:var(--line)}
.dx-meter span{position:absolute;inset:0 auto 0 0;width:var(--w,0%);border-radius:3px;background:linear-gradient(90deg,var(--brand),var(--warn))}
.dx-meter i{position:absolute;left:75%;top:-4px;bottom:-4px;width:2px;background:var(--ink);opacity:.5}
.dx-stack{display:flex;height:14px;border-radius:3px;overflow:hidden;gap:2px}
.dx-stack span{width:var(--w,0%)}
.dx-legend{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:13px}
.dx-legend li{display:flex;align-items:center;gap:8px}
.dx-legend span{flex:1}
.dx-legend i{width:10px;height:10px;border-radius:2px}
.dx .t0{background:var(--brand)}.dx .t1{background:#4f8fd6}.dx .t2{background:#8fb8e8}.dx .t3{background:#2a4a70}.dx .t4{background:#b9cde6}
.dx-line{display:block;width:100%;height:90px}
.dx-line .area{fill:color-mix(in srgb,var(--brand) 10%,transparent)}
.dx-line .stroke{fill:none;stroke:var(--brand);stroke-width:1.5;vector-effect:non-scaling-stroke}
.dx-line circle{fill:var(--card);stroke:var(--brand);stroke-width:1.5;vector-effect:non-scaling-stroke}
.dx-line circle.last{fill:var(--brand)}
.dx-axis{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);margin-top:4px}

/* ================================================================ VET · waiting room */
body[data-vertical="vet"]{--bg:#fbf4ea;--line:#eedfcb;--radius:22px}
.vx{display:flex;flex-direction:column;gap:18px}
.vx-hello{display:flex;align-items:flex-end;gap:10px}
.vx-paw{width:58px;height:58px;flex:none;border-radius:50%;background:var(--brand);display:grid;place-items:center;font-size:28px;box-shadow:0 6px 0 color-mix(in srgb,var(--brand) 55%,#000)}
.vx-bubble{position:relative;flex:1;background:var(--card);border-radius:22px 22px 22px 6px;padding:12px 16px;box-shadow:0 3px 0 var(--line)}
.vx-bubble small{display:block;color:var(--muted);font-size:12px}
.vx-bubble b{display:block;font-size:22px;line-height:1.15;font-family:ui-rounded,"Arial Rounded MT Bold","Segoe UI",sans-serif;font-weight:800}
.vx-bubble span{font-size:12px;color:var(--brand);font-weight:600}
.vx-stories{display:flex;gap:14px;overflow-x:auto;padding:2px 2px 6px;scrollbar-width:none}
.vx-stories figure{margin:0;display:flex;flex-direction:column;align-items:center;flex:none;width:68px}
.vx-ring{width:64px;height:64px;border-radius:50%;padding:3px;background:conic-gradient(var(--brand),var(--accent),var(--brand))}
.vx-ring span{display:grid;place-items:center;width:100%;height:100%;border-radius:50%;background:var(--card);font-size:30px;border:3px solid var(--card)}
.vx-stories figure.done .vx-ring,.vx-stories figure.miss .vx-ring{background:var(--line)}
.vx-stories figure.now .vx-ring{background:conic-gradient(#22a06b,#8be0b3,#22a06b)}
.vx-stories figcaption{font-size:13px;font-weight:700;margin-top:4px;max-width:68px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vx-stories small{font-size:11px;color:var(--muted)}
.vx-board{display:grid;grid-auto-flow:column;grid-auto-columns:78%;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:4px;scrollbar-width:thin}
.vx-col{scroll-snap-align:start;background:color-mix(in srgb,var(--brand-soft) 70%,transparent);border-radius:20px;padding:12px;display:flex;flex-direction:column;gap:8px}
.vx-col h2{margin:0 0 2px;font-size:14px;display:flex;justify-content:space-between;align-items:center;font-family:ui-rounded,"Arial Rounded MT Bold","Segoe UI",sans-serif}
.vx-col h2 b{min-width:24px;height:24px;border-radius:12px;background:var(--card);display:grid;place-items:center;font-size:12px}
.vx-col.c-now{background:color-mix(in srgb,#22a06b 16%,transparent)}
.vx-card{display:flex;gap:10px;align-items:center;background:var(--card);border-radius:16px;padding:10px;box-shadow:0 2px 0 var(--line)}
.vx-card>span{font-size:30px;flex:none}
.vx-card div{min-width:0}
.vx-card strong{display:block;font-size:18px;line-height:1.1;font-family:ui-rounded,"Arial Rounded MT Bold","Segoe UI",sans-serif}
.vx-card small{display:block;font-size:12px;color:var(--muted)}
.vx-card em{display:block;font-style:normal;font-size:12px;color:var(--brand);font-weight:600}
.vx-card.miss{opacity:.5}.vx-card.miss strong{text-decoration:line-through}
.vx-none{margin:6px 0;color:var(--muted);font-size:13px;text-align:center}
.vx-block h2{margin:0 0 10px;font-size:19px;font-family:ui-rounded,"Arial Rounded MT Bold","Segoe UI",sans-serif;font-weight:800}
.vx-ticket{display:flex;background:var(--card);border-radius:16px;margin-bottom:8px;overflow:hidden;box-shadow:0 2px 0 var(--line)}
.vx-stub{position:relative;flex:none;width:76px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:10px 4px;background:var(--brand);color:#fff;border-right:2px dashed var(--card)}
.vx-stub b{font-size:26px;line-height:1}
.vx-stub small{font-size:10px;text-transform:uppercase;opacity:.9}
.vx-body{display:flex;flex-direction:column;padding:10px 14px;min-width:0}
.vx-body strong{font-size:17px}
.vx-body span{font-size:13px;color:var(--muted)}
.vx-body em{align-self:flex-start;margin-top:4px;font-style:normal;font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px;background:var(--warn-soft);color:var(--warn)}
.vx-vaccines{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.vx-vaccines article{display:flex;flex-direction:column;align-items:center;text-align:center;background:var(--card);border-radius:20px;padding:14px 8px;box-shadow:0 2px 0 var(--line)}
.vx-vaccines article>span{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--brand-soft);font-size:22px;margin-bottom:6px}
.vx-vaccines strong{font-size:16px}
.vx-vaccines small{font-size:12px;color:var(--muted)}
.vx-vaccines em{font-style:normal;margin-top:6px;font-size:11px;font-weight:700;color:var(--brand)}
.vx-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.vx-facts div{padding:14px;display:flex;flex-direction:column;color:#fff}
.vx-facts b{font-size:26px;line-height:1.1;font-family:ui-rounded,"Arial Rounded MT Bold","Segoe UI",sans-serif}
.vx-facts span{font-size:12px;opacity:.9}
.vx-facts .b1{background:var(--brand);border-radius:28px 28px 8px 28px}
.vx-facts .b2{background:#5b8c51;border-radius:28px 28px 28px 8px}
.vx-facts .b3{background:#3f7fa8;border-radius:28px 8px 28px 28px}
.vx-facts .b4{background:#9b5a8c;border-radius:8px 28px 28px 28px}
.vx-line{display:block;width:100%;height:90px;background:var(--card);border-radius:18px;padding:8px}
.vx-line .area{fill:color-mix(in srgb,var(--brand) 22%,transparent)}
.vx-line .stroke{fill:none;stroke:var(--brand);stroke-width:3;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.vx-line circle{fill:var(--brand)}

/* ================================================================ STORE · sales newspaper */
body[data-vertical="tienda"]{--bg:#faf7f4;--line:#e8e0db;--radius:2px;--paper-ink:#1c1418}
.sx{display:flex;flex-direction:column;gap:22px;--serif:"Didot","Bodoni MT","Bodoni 72",Georgia,"Times New Roman",serif}
.sx h2{margin:0 0 12px;font-family:var(--serif);font-weight:400;font-style:italic;font-size:22px;display:flex;align-items:baseline;gap:10px}
.sx h2 small{font-family:system-ui,sans-serif;font-style:normal;font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--muted)}
.sx-mast{text-align:center;border-top:3px double var(--paper-ink);border-bottom:1px solid var(--paper-ink);padding:10px 0 8px}
.sx-mast small,.sx-mast p{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.18em;color:var(--muted);margin:0}
.sx-mast h1{margin:4px 0;font-family:var(--serif);font-weight:400;font-size:42px;line-height:1;letter-spacing:-.01em}
.sx-lead{display:grid;grid-template-columns:1.2fr 1fr;gap:12px 16px;align-items:end}
.sx-big small,.sx-side small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--muted)}
.sx-big b{display:block;font-family:var(--serif);font-weight:400;font-size:48px;line-height:1}
.sx-big span{font-size:13px;color:var(--muted)}
.sx-side{display:flex;flex-direction:column;gap:10px;border-left:1px solid var(--line);padding-left:14px}
.sx-side b{font-family:var(--serif);font-weight:400;font-size:24px}
.sx-trend{grid-column:1/-1;margin:0}
.sx-line{display:block;width:100%;height:110px}
.sx-line .area{fill:color-mix(in srgb,var(--brand) 14%,transparent)}
.sx-line .stroke{fill:none;stroke:var(--paper-ink);stroke-width:1.5;vector-effect:non-scaling-stroke}
.sx-line circle{fill:var(--paper-ink);r:0}
.sx-line circle.last{fill:var(--brand);r:5}
.sx-trend figcaption{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);border-top:1px solid var(--paper-ink);padding-top:6px}
.sx-track ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);position:relative}
.sx-track ol::before{content:"";position:absolute;left:16%;right:16%;top:22px;height:1px;background:var(--paper-ink)}
.sx-track li{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center}
.sx-track li span{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--bg);border:1px solid var(--paper-ink);font-family:var(--serif);font-size:22px;position:relative}
.sx-track li.s-awaiting_payment span{background:var(--warn);border-color:var(--warn);color:#fff}
.sx-track li.s-paid span{background:var(--brand);border-color:var(--brand);color:#fff}
.sx-track li b{font-size:12px;margin-top:6px}
.sx-track li small{font-size:11px;color:var(--muted)}
.sx-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 12px}
.sx-grid article{min-width:0}
.sx-tile{position:relative;aspect-ratio:4/3;display:grid;place-items:center;margin-bottom:8px;overflow:hidden}
.sx-tile span{font-family:var(--serif);font-size:52px;color:#ffffffe6;line-height:1}
.sx-tile i{position:absolute;left:8px;top:6px;font-family:var(--serif);font-style:italic;color:#fff;font-size:18px}
.sx-tile em{position:absolute;left:0;right:0;bottom:0;padding:4px 8px;background:#1c1418cc;color:#fff;font-style:normal;font-size:10px;text-transform:uppercase;letter-spacing:.12em}
.sx-grid strong{display:block;font-size:13px;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.sx-grid small{font-size:11px;color:var(--muted)}
.sx .k0{background:linear-gradient(145deg,#c24a86,#6d1f4a);stroke:#a3336f}
.sx .k1{background:linear-gradient(145deg,#e0a458,#9a5a1c);stroke:#c47f33}
.sx .k2{background:linear-gradient(145deg,#6f8f7a,#2f4f3e);stroke:#4f7560}
.sx .k3{background:linear-gradient(145deg,#8a7fc4,#3f3576);stroke:#6a5fb0}
.sx .k4{background:linear-gradient(145deg,#b9a9a0,#6b5a50);stroke:#95837a}
.sx-cols{display:grid;grid-template-columns:1fr;gap:22px}
.sx-donut{display:flex;align-items:center;gap:14px}
.sx-donut svg{width:120px;height:120px;flex:none}
.sx-donut circle{fill:none;stroke-width:16}
.sx-donut circle.base{stroke:var(--line)}
.sx-donut ul{list-style:none;margin:0;padding:0;flex:1;min-width:0;font-size:12px;display:flex;flex-direction:column;gap:6px}
.sx-donut li{display:flex;align-items:center;gap:6px}
.sx-donut li span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sx-donut li i{width:10px;height:10px;border-radius:50%;flex:none}
.sx-feed>div{display:grid;grid-template-columns:auto 1fr auto;gap:0 10px;padding:10px 0;border-top:1px solid var(--line);align-items:baseline}
.sx-feed>div span{font-size:11px;color:var(--muted)}
.sx-feed>div strong{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sx-feed>div b{font-family:var(--serif);font-weight:400;font-size:17px}
.sx-feed>div small{grid-column:2;font-size:11px;color:var(--muted)}
.sx-feed>div em{grid-column:3;font-style:normal;font-size:10px;text-transform:uppercase;letter-spacing:.1em;text-align:right;color:var(--muted)}
.sx-feed>div.s-awaiting_payment em{color:var(--warn)}.sx-feed>div.s-paid em{color:var(--brand)}
.sx-alert{border:1px solid var(--paper-ink);padding:12px 14px}
.sx-alert h2{font-size:18px;margin-bottom:8px}
.sx-alert p{margin:0;display:flex;flex-wrap:wrap;gap:6px}
.sx-alert span{font-size:12px;padding:4px 10px;border:1px solid var(--line);background:var(--card)}
.sx-alert span.out{border-color:var(--warn);color:var(--warn)}
.sx-coupons{display:grid;grid-template-columns:1fr;gap:10px}
.sx-coupons div{position:relative;padding:14px 16px;border:1.5px dashed var(--brand);background:color-mix(in srgb,var(--brand) 6%,var(--card))}
.sx-coupons small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--brand);font-weight:700}
.sx-coupons strong{display:block;font-family:var(--serif);font-weight:400;font-size:19px;margin:2px 0}
.sx-coupons span{font-size:14px}.sx-coupons s{color:var(--muted);margin-right:6px}

/* ================================================================ SALON · the day as a clock */
body[data-vertical="salon"]{--radius:18px}
.sl{display:flex;flex-direction:column;gap:18px;--serif:"Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif}
.sl-head{text-align:center;padding-top:4px}
.sl-head small{font-size:11px;text-transform:uppercase;letter-spacing:.24em;color:var(--muted)}
.sl-head h1{margin:2px 0 0;font-family:var(--serif);font-style:italic;font-weight:400;font-size:48px;line-height:1}
.sl-head p{margin:2px 0 0;font-family:var(--serif);font-size:17px;color:var(--muted)}
.sl-clock svg{display:block;width:min(100%,340px);margin:0 auto}
.sl-clock text{text-anchor:middle;fill:var(--muted);font-size:11px;font-family:var(--serif)}
.sl-clock .tick{stroke:var(--muted);stroke-width:1}
.sl-clock .track{fill:none;stroke:color-mix(in srgb,var(--line) 70%,transparent);stroke-width:14}
.sl-clock .seg{fill:none;stroke-width:14;stroke-linecap:round}
.sl-clock .seg.done{opacity:.4}.sl-clock .seg.miss{opacity:.2}
.sl-clock .face{fill:var(--card);stroke:var(--line)}
.sl-clock text.big{font-size:34px;fill:var(--ink);font-style:italic}
.sl-clock text.small{font-size:11px;fill:var(--muted)}
.sl-clock .hand{stroke:var(--warn);stroke-width:2;stroke-linecap:round}
.sl-clock .hand-dot{fill:var(--warn)}
.sl .c0{stroke:var(--brand);background:var(--brand)}
.sl .c1{stroke:#c9a36b;background:#c9a36b}
.sl .c2{stroke:#b76e79;background:#b76e79}
.sl .c3{stroke:#6f8796;background:#6f8796}
.sl-legend{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.sl-legend li{display:flex;align-items:center;gap:6px;padding:4px 12px 4px 4px;border:1px solid var(--line);border-radius:999px;background:var(--card);font-size:13px}
.sl-legend i{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;color:#fff;font-style:normal;font-size:10px;font-weight:700}
.sl-legend b{color:var(--muted);font-weight:400}
.sl-next{text-align:center;padding:16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.sl-next small{font-size:10px;text-transform:uppercase;letter-spacing:.24em;color:var(--muted)}
.sl-next b{display:block;font-family:var(--serif);font-style:italic;font-weight:400;font-size:30px}
.sl-next p{margin:2px 0 0;font-size:14px}
.sl-block h2{margin:0 0 10px;font-family:var(--serif);font-style:italic;font-weight:400;font-size:22px}
.sl-people{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.sl-people li{display:flex;align-items:center;gap:12px}
.sl-people i{width:40px;height:40px;border-radius:50%;flex:none;display:grid;place-items:center;font-style:normal;font-family:var(--serif);font-size:15px;background:var(--brand-soft);color:var(--brand);border:1px solid var(--brand)}
.sl-people div{min-width:0}
.sl-people strong{display:block;font-size:15px}
.sl-people small{color:var(--muted);font-size:12px}
.sl-cloud{margin:0;display:flex;flex-wrap:wrap;gap:8px}
.sl-cloud span{padding:6px 14px;border-radius:999px;border:1px solid var(--brand);color:var(--brand);font-family:var(--serif)}
.sl-cloud span small{opacity:.7;font-family:system-ui,sans-serif}
.sl-cloud .w3{background:var(--brand);color:#fff;font-size:18px}
.sl-cloud .w2{font-size:16px;background:var(--brand-soft)}
.sl-cloud .w1{font-size:14px}
.sl-foot{margin:0;text-align:center;font-family:var(--serif);font-style:italic;font-size:16px;line-height:1.55;color:var(--muted);padding:0 8px}
.sl-foot b{color:var(--ink);font-style:normal}

@media (min-width:720px){
  .sx-cols{grid-template-columns:1fr 1fr}
  .sx-grid{grid-template-columns:repeat(3,1fr)}
  .vx-board{grid-auto-flow:row;grid-template-columns:repeat(3,1fr);overflow:visible}
  .vx-vaccines{grid-template-columns:repeat(3,1fr)}
  .vx-facts{grid-template-columns:repeat(4,1fr)}
  .sx-coupons{grid-template-columns:1fr 1fr}
}

/* dark mode: keep each personality on dark surfaces */
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) body[data-vertical]{--bg:#121816;--line:#2b3531;--paper-ink:#e8eee9}}
:root[data-theme="dark"] body[data-vertical]{--bg:#121816;--line:#2b3531;--paper-ink:#e8eee9}
.vx-more{margin:2px 0 0;text-align:center;font-size:13px;color:var(--brand);font-weight:600}
