/* Wall-display layout: type follows both axes, content never shrinks into a row. */
:root {
  color-scheme: light;
  font-family: Inter, "Segoe UI", Arial, sans-serif;
  font-size: clamp(18px, min(1.2vw, 1.8vh), 32px);
  --ink:#14334f; --muted:#425e76; --page:#f2f7fc; --panel:#fff;
  --panel-head:#e7f0f8; --border:#bdcfdf; --card:#f1f6fb;
  --green:#116847; --bar:#21865e; --track:#d7e5ee;
  --gold:#8c5d1d; --podium:#fbf1dc; --receipt:#eaf7ef; --receipt-border:#a7d0b7;
  --button:#fff; --button-ink:#214967; --ring-bg:#eef8f3;
  --pad:clamp(12px,1.25vw,40px); --gap:clamp(10px,1vh,24px);
}
:root[data-theme="dark"] {
  color-scheme:dark; --ink:#edf4fb; --muted:#bbccdc; --page:#0a1b2a; --panel:#13293d;
  --panel-head:#193248; --border:#355068; --card:#1a3349;
  --green:#a5edce; --bar:#60c89f; --track:#355166;
  --gold:#f0cf8b; --podium:#34372f; --receipt:#183c35; --receipt-border:#396d59;
  --button:#19374e; --button-ink:#d6e7f5; --ring-bg:#14352e;
}
*{box-sizing:border-box}
body{margin:0;background:var(--page);color:var(--ink);overflow:hidden}
button{font:inherit}
#tv{height:100vh;height:100dvh;padding:0 var(--pad);display:grid;grid-template-rows:auto minmax(0,1fr) auto auto 3px;background:var(--page)}
.tv-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.55rem 0;border-bottom:1px solid var(--border);min-width:0}
.tv-brand{display:flex;align-items:center;gap:.7rem;min-width:0}
.tv-logo{height:clamp(40px,5.5vh,100px);width:auto;object-fit:contain;flex-shrink:0}
.tv-brand strong{font-size:1.1rem;letter-spacing:.035em}
.tv-brand strong span{font-weight:500}
.tv-brand small{display:block;font-size:.75rem;letter-spacing:.12em;color:var(--muted);margin-top:.2rem}
.tv-header-right{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;flex-shrink:0}
.tv-clock{text-align:right;white-space:nowrap;margin:0 .25rem}
.tv-clock b{font-size:1.55rem;font-variant-numeric:tabular-nums;line-height:1.1}
.tv-clock small{display:block;font-size:.75rem;color:var(--muted);margin-top:.15rem}
.tv-live{font-size:.72rem;white-space:nowrap;padding:.45rem .6rem;border-radius:2rem;border:1px solid #b08b4b;color:var(--gold);background:var(--podium);font-weight:650}
.tv-live.is-live{color:var(--green);border-color:var(--receipt-border);background:var(--receipt)}
.tv-icon-button{position:relative;display:inline-flex;align-items:center;justify-content:center;width:2.3rem;height:2.3rem;min-width:40px;min-height:40px;padding:0;background:var(--button);color:var(--button-ink);border:1px solid var(--border);border-radius:.45rem;cursor:pointer;flex-shrink:0}
.tv-icon-button svg{width:1.2rem;height:1.2rem;pointer-events:none}
.tv-icon-button:hover{border-color:var(--button-ink)}
.tv-icon-button:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.tv-icon-button:disabled{opacity:.6;cursor:wait}
.tv-icon-button.is-blocked::after,.tv-icon-button.is-unavailable::after{content:"";position:absolute;width:7px;height:7px;right:5px;bottom:5px;border-radius:50%;background:#cb861c}
.tv-stage{min-width:0;min-height:0;position:relative;overflow:hidden;padding-top:var(--gap)}
.tv-slide{height:100%;min-height:0;display:flex;flex-direction:column;gap:var(--gap);animation:slide-in .35s ease-out}
.tv-title{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-shrink:0}
.tv-title h1{font-size:1.45rem;line-height:1.15;margin:0;font-weight:750;overflow-wrap:break-word}
.tv-title p{margin:.3rem 0 0;color:var(--muted);font-size:.85rem;line-height:1.2}
.tv-eyebrow{display:block;color:var(--gold);font-size:.75rem;font-weight:750;letter-spacing:.12em;margin-bottom:.2rem}
.tv-section-number{font-size:2.2rem;line-height:1;color:var(--border);font-weight:800;flex-shrink:0}
.tv-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap);flex-shrink:0;min-width:0}
.tv-metric{border:1px solid var(--border);border-left:4px solid #648aa6;border-radius:.55rem;background:var(--panel);padding:.5rem .65rem;min-width:0}
.tv-metric small{font-size:.85rem;display:block;color:var(--muted);margin-bottom:.25rem;line-height:1.15}
.tv-metric strong{font-size:clamp(24px,1.75vw,58px);line-height:1.05;display:block;font-variant-numeric:tabular-nums;letter-spacing:-.035em;white-space:nowrap}
.tv-metric em{font-size:.8rem;font-style:normal;display:block;color:var(--muted);line-height:1.2;margin-top:.25rem}
.tv-metric.featured{background:var(--receipt);border-color:var(--receipt-border);border-left-color:var(--bar)}
.tv-metric.featured strong{color:var(--green)}
.tv-metric.billing{background:#e1effb;border-color:#a9c8e1;color:#183b58}
.tv-metric.settlement{background:#e0f2e6;border-color:#a3cbb3;color:#244c38}
.tv-metric.billing small,.tv-metric.billing em{color:#365a75}
.tv-metric.settlement small,.tv-metric.settlement em{color:#3c624d}
.tv-main-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);grid-template-rows:minmax(0,1fr);gap:var(--gap);flex:1;min-width:0;min-height:0}
.tv-panel{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:.55rem;background:var(--panel);overflow:hidden;min-width:0;min-height:0}
.tv-panel-title{display:flex;align-items:center;justify-content:space-between;gap:.75rem;background:var(--panel-head);border-bottom:1px solid var(--border);padding:.45rem .65rem;font-size:1rem;font-weight:750;line-height:1.2;flex-shrink:0}
.tv-panel-title span{font-size:.85rem;font-weight:500;color:var(--muted);text-align:right}
/* A compact visual hierarchy: name, realised amount, progress to target. */
.tv-metrics-overview{grid-template-columns:repeat(3,minmax(0,1fr))}
.tv-metric small{display:flex;align-items:center;gap:.4rem;font-weight:650}
.tv-metric small svg{width:1rem;height:1rem;flex-shrink:0;color:#5086b2}
.tv-metric.featured small svg{color:var(--green)}
.tv-metric.remaining{border-left-color:#c49b4b}
.tv-metric.remaining small svg{color:var(--gold)}
.tv-metric .tv-progress-track{margin-top:.5rem}
.tv-ranks,.tv-taxes{display:grid;grid-auto-flow:column;grid-auto-rows:min-content;align-content:start;gap:.4rem;padding:.45rem;position:relative;min-height:0;min-width:0;flex:1;overflow:hidden}
.tv-rank{position:relative;min-width:0;display:grid;grid-template-columns:1.65rem minmax(0,1fr) auto;column-gap:.45rem;row-gap:.3rem;align-items:center;align-content:center;padding:.35rem .45rem;border:1px solid var(--border);border-radius:.45rem;background:var(--card);font-variant-numeric:tabular-nums}
.tv-rank-no{grid-column:1;grid-row:1/3;display:grid;place-items:center;width:1.65rem;height:1.65rem;border-radius:50%;font-size:1rem;font-weight:800;color:var(--muted);background:var(--track)}
.tv-rank-name{grid-column:2;grid-row:1;font-size:clamp(18px,1.2vw,32px);font-weight:800;line-height:1.12;overflow-wrap:break-word}
.tv-rank-value{grid-column:3;grid-row:1;white-space:nowrap;text-align:right}
.tv-rank-value b{font-size:clamp(26px,1.8vw,48px);font-weight:800;line-height:1.1;color:var(--green);letter-spacing:-.035em}
.tv-progress-track{height:clamp(6px,.3rem,10px);background:var(--track);border-radius:1rem;overflow:hidden;min-width:0}
.tv-progress-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2c8c9c,var(--bar));transition:width .85s ease}
.tv-progress-track.is-complete i{background:var(--bar)}
.tv-progress-track.is-unset{background:repeating-linear-gradient(135deg,var(--track),var(--track) 5px,var(--border) 5px,var(--border) 8px)}
.tv-rank>.tv-progress-track{grid-column:2/4;grid-row:2}
.tv-rank.is-podium{background:var(--podium);border-color:#dbc58b}
.tv-rank.is-podium .tv-rank-no{color:#614619;background:#efd290}
.tv-rank[data-key]:nth-child(2) .tv-rank-no{background:#cfe0ed;color:#284c66}
.tv-rank[data-key]:nth-child(3) .tv-rank-no{background:#c7e8dc;color:#275642}
.tv-main-grid>aside{align-self:start;max-height:100%}
.tv-recent{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(5,max-content);align-content:start;gap:.4rem;padding:.45rem;min-width:0;min-height:0;overflow:hidden}
.tv-receipt{display:flex;flex-direction:column;gap:.1rem;padding:.18rem .4rem;border:1px solid var(--receipt-border);border-left:4px solid var(--bar);border-radius:.45rem;background:var(--receipt);min-width:0;line-height:1.2}
.tv-receipt-top{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:.2rem .5rem;font-variant-numeric:tabular-nums}
.tv-receipt-top b{color:var(--green);font-size:clamp(26px,1.7vw,44px);line-height:1.1;white-space:nowrap;font-weight:800;letter-spacing:-.025em}
.tv-receipt-top time{display:flex;align-items:center;gap:.25rem;font-size:1rem;color:var(--muted);white-space:nowrap}
.tv-receipt-top svg,.tv-receipt-region svg{width:1rem;height:1rem;flex-shrink:0}
.tv-receipt-name{font-size:clamp(20px,1.15vw,30px);font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}
.tv-receipt-region{display:flex;align-items:center;gap:.3rem;font-size:1rem;color:var(--muted);min-width:0;line-height:1.2}
.tv-receipt-region span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.tv-period{display:flex;gap:.5rem;flex-shrink:0}
.tv-period span{font-size:.9rem;color:var(--muted);border:1px solid var(--border);border-radius:.35rem;padding:.35rem .6rem}
.tv-period .active{color:var(--ink);background:var(--panel-head);border-color:#749dbd;font-weight:750}
.tv-feed{display:grid;grid-auto-rows:min-content;align-content:start;padding:.5rem;gap:.5rem;flex:1;min-height:0;min-width:0;position:relative;overflow:hidden}
.tv-event{display:grid;grid-template-columns:7rem minmax(0,1fr) minmax(0,1.3fr) auto;align-items:center;gap:.6rem;padding:.55rem .7rem;border:1px solid #a9c8e1;border-radius:.4rem;background:#e1effb;color:#183b58;min-width:0;font-size:1rem;line-height:1.25}
.tv-event.settlement{background:#e0f2e6;color:#244c38;border-color:#a3cbb3}
.tv-event-tag{font-size:.9rem;font-weight:800}
.tv-event-tag time{display:block;font-size:.9rem;font-weight:500;margin-top:.2rem}
.tv-event-name,.tv-event-identity{min-width:0;overflow-wrap:anywhere}
.tv-event-name b,.tv-event-identity b{display:block;font-size:1.05rem;font-weight:750;line-height:1.2}
.tv-event-name small,.tv-event-identity small{display:block;font-size:1rem;margin-top:.25rem;line-height:1.25}
.tv-event-amount{text-align:right;font-size:1.45rem;font-weight:800;white-space:nowrap;font-variant-numeric:tabular-nums}
.tv-event-amount small{display:block;font-size:.9rem;font-weight:600;margin-top:.2rem}
.tv-tax-body{display:flex;flex:1;min-height:0;min-width:0}
.tv-tax-body>.tv-panel{flex:1;width:100%}
.tv-tax{display:flex;flex-direction:column;justify-content:center;gap:.35rem;background:var(--card);border:1px solid var(--border);border-top:3px solid #6199b5;border-radius:.45rem;padding:.55rem;min-width:0;font-variant-numeric:tabular-nums}
.tv-tax:nth-child(3n+2){border-top-color:#4a9d7c}.tv-tax:nth-child(3n){border-top-color:#c7a259}
.tv-tax-head{display:flex;align-items:center;gap:.4rem;min-width:0}
.tv-tax-head svg{width:1.15rem;height:1.15rem;flex-shrink:0;color:#5486a3}
.tv-tax-head b{font-size:clamp(18px,1.2vw,30px);line-height:1.15;overflow-wrap:anywhere}
.tv-tax-values strong{display:block;font-size:clamp(26px,1.9vw,48px);line-height:1.1;color:var(--green);white-space:nowrap;letter-spacing:-.035em}
.tv-tax-note{font-size:1rem;line-height:1.2;color:var(--muted);overflow-wrap:anywhere}
.tv-statusbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:1.8rem;font-size:.75rem;line-height:1.2;color:var(--muted);padding:.2rem 0;min-width:0}
.tv-statusbar>span:first-child{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tv-statusbar>span:last-child{white-space:nowrap}
.tv-dots{display:flex;gap:.4rem;flex-shrink:0}
.tv-dots i{height:5px;width:1rem;border-radius:3px;background:var(--border)}
.tv-dots i.active{background:var(--bar);width:1.8rem}
.tv-ticker{display:flex;align-items:center;min-height:2.5rem;margin:0 calc(-1 * var(--pad));border-top:1px solid var(--border);background:var(--panel-head);min-width:0}
.tv-ticker>strong{display:flex;align-items:center;align-self:stretch;background:#e9c881;color:#18384e;padding:0 var(--pad);font-size:.9rem;letter-spacing:.08em;z-index:1}
.tv-ticker-window{flex:1;min-width:0;overflow:hidden}
.tv-ticker-window>div{display:inline-block;white-space:nowrap;padding-left:100%;font-size:1.15rem;line-height:1.3;animation:ticker var(--ticker-duration,40s) linear infinite}
.tv-ticker>span{font-size:.75rem;padding:0 var(--pad);background:var(--panel-head);color:var(--muted);white-space:nowrap;z-index:1}
.tv-progress{margin:0 calc(-1 * var(--pad));background:var(--track);overflow:hidden;min-width:0}
.tv-progress i{display:block;height:100%;width:0;background:var(--bar);transition:width 1s linear}
.tv-empty{margin:auto;grid-column:1/-1;align-self:center;text-align:center;font-size:1rem;line-height:1.5;color:var(--muted);padding:1rem}
.tv-loading{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1rem;text-align:center;color:var(--muted)}
.tv-loading h1{font-size:1.6rem;color:var(--ink);margin:0}.tv-loading p{font-size:1rem;margin:0}
.tv-spinner{height:2rem;width:2rem;border:3px solid var(--border);border-top-color:var(--bar);border-radius:50%;animation:spin 1s linear infinite}
.tv-new{animation:arrive .4s ease-out}
.tv-measure{position:absolute!important;visibility:hidden!important;height:auto!important;min-height:0!important;pointer-events:none!important}
@keyframes ticker{to{transform:translateX(-100%)}}@keyframes spin{to{transform:rotate(360deg)}}
@keyframes slide-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes arrive{from{opacity:.4;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
#tv{grid-template-columns:minmax(0,1fr)}.tv-header-right{min-width:0}
@media(max-width:1500px){
 .tv-brand strong{font-size:1rem}.tv-brand strong span{display:block}.tv-brand small{display:none}
 .tv-live{font-size:.7rem;padding:.35rem .4rem}.tv-clock small{font-size:.7rem}.tv-clock b{font-size:1.35rem}.tv-header-right{gap:.35rem}
 .tv-title h1{font-size:1.25rem}.tv-title p,.tv-eyebrow{display:none}
 .tv-event{grid-template-columns:6rem minmax(0,1fr) auto}
 .tv-event-identity{grid-column:2}.tv-event-amount{grid-column:3;grid-row:1/3}
 .tv-event-name{grid-column:2}.tv-event-tag{grid-column:1;grid-row:1/3}
}
@media(max-height:1200px) and (min-width:700px){
 .tv-receipt-top b{font-size:clamp(26px,1.7vw,36px)}
 .tv-receipt-name{font-size:clamp(20px,1.15vw,24px)}
}
@media(max-height:900px) and (min-width:700px){
 .tv-header{padding:.2rem 0}.tv-title p,.tv-eyebrow{display:none}.tv-title h1{font-size:1.2rem}
 .tv-stage{padding-top:6px}.tv-slide{gap:6px}.tv-section-number{font-size:1.8rem}
 .tv-metric{padding:6px 8px}.tv-metric strong{font-size:clamp(24px,2vw,36px)}.tv-metric em{display:none}
 .tv-panel-title{padding:.3rem .5rem}.tv-panel-title span{font-size:16px}
 .tv-ranks{gap:4px;padding:6px}.tv-rank{padding:4px 6px;column-gap:5px;row-gap:3px}
 .tv-rank-no{font-size:18px}.tv-rank-name{font-size:18px}.tv-rank-value b{font-size:26px}
 .tv-recent{gap:4px;padding:6px}.tv-receipt{padding:6px;gap:3px}
 .tv-receipt-name{font-size:20px}.tv-receipt-top b{font-size:26px}
 .tv-receipt-top time,.tv-receipt-region{font-size:18px}
 .tv-tax{padding:7px;gap:4px}.tv-tax-head b{font-size:18px}.tv-tax-values strong{font-size:26px}
 .tv-statusbar{min-height:1.4rem;padding:0}.tv-ticker{min-height:2rem}.tv-ticker>span{display:none}
}
/* Portrait: keep all comparisons above a compact 2 x 2 receipt panel. */
@media(max-aspect-ratio:11/10){
 .tv-main-grid{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto}
 .tv-recent{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto auto}
 .tv-header{flex-wrap:wrap;gap:.35rem;padding:.35rem 0}
 .tv-brand{width:100%;justify-content:center}.tv-brand strong span{display:inline}
 .tv-header-right{width:100%;justify-content:space-between}.tv-logo{height:44px}
 .tv-brand small,.tv-title p,.tv-eyebrow,.tv-metric em{display:none}
 .tv-title h1{font-size:1.2rem}.tv-metric{padding:.4rem}.tv-metric strong{font-size:clamp(22px,2.8vw,34px)}
 .tv-event{grid-template-columns:minmax(0,1fr) auto}
 .tv-event-tag{grid-column:1;grid-row:1}.tv-event-name{grid-column:1;grid-row:2}
 .tv-event-identity{grid-column:1/-1;grid-row:3}.tv-event-amount{grid-column:2;grid-row:1/3}
 .tv-ticker>span{display:none}
}
@media(min-width:1000px) and (min-aspect-ratio:1/1){
 .tv-main-grid{grid-template-columns:minmax(0,2fr) minmax(0,1fr);grid-template-rows:minmax(0,1fr)}
 .tv-recent{grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(5,max-content)}
 .tv-header{flex-wrap:nowrap}.tv-brand{width:auto;justify-content:flex-start}.tv-header-right{width:auto;justify-content:flex-end}
}
@media(min-width:700px) and (max-width:999px) and (min-height:901px){
 .tv-ranks{gap:4px;padding:6px}.tv-rank{padding:5px;column-gap:4px;row-gap:4px;grid-template-columns:1.4rem minmax(0,1fr) auto}
 .tv-rank-no{width:1.4rem;height:1.4rem;font-size:18px}.tv-rank-name{font-size:18px}.tv-rank-value b{font-size:26px}
 .tv-receipt{padding:6px;gap:3px}.tv-receipt-name{font-size:20px}.tv-receipt-top b{font-size:26px}
 .tv-receipt-top time,.tv-receipt-region{font-size:18px}
}
/* Small handhelds retain the full data in document flow. */
@media(max-width:699px),(max-height:599px){
 body{overflow-y:auto}#tv{height:auto;min-height:100vh;min-height:100dvh;grid-template-rows:auto auto auto auto 3px}
 .tv-stage{overflow:visible;min-height:60vh}.tv-slide{height:auto}
 .tv-header{flex-direction:column;align-items:stretch;gap:.5rem}.tv-brand{justify-content:center}.tv-header-right{justify-content:center;flex-wrap:wrap}
 .tv-clock{flex:1;text-align:center}.tv-main-grid{display:flex;flex-direction:column}
 .tv-main-grid>.tv-panel:first-child{height:390px;flex:none}.tv-tax-body>.tv-panel,.tv-slide>.tv-panel{height:450px;flex:none}
 .tv-metrics-overview{grid-template-columns:1fr}.tv-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
 .tv-metrics-overview{grid-template-columns:1fr}.tv-title h1{font-size:1.1rem}.tv-section-number{display:none}
 .tv-ticker>strong{font-size:.75rem}.tv-statusbar{gap:.4rem}.tv-dots{display:none}
 .tv-tax-values strong{font-size:28px}
}
@media(max-width:480px){.tv-recent{grid-template-columns:1fr}.tv-event{grid-template-columns:1fr}.tv-event-tag,.tv-event-name,.tv-event-identity,.tv-event-amount{grid-column:1;grid-row:auto}.tv-event-amount{text-align:left}}
body.tv-natural-flow{overflow-y:auto}body.tv-natural-flow #tv{height:auto;min-height:100vh;min-height:100dvh;grid-template-rows:auto auto auto auto 3px}
body.tv-natural-flow .tv-stage{overflow:visible}body.tv-natural-flow .tv-slide{height:auto}
body.tv-natural-flow .tv-main-grid{grid-template-rows:auto;align-items:start}
body.tv-natural-flow .tv-main-grid>.tv-panel:first-child,body.tv-natural-flow .tv-tax-body>.tv-panel{height:auto;flex:none}
body.tv-natural-flow .tv-ranks,body.tv-natural-flow .tv-taxes{flex:none}
@media(prefers-reduced-motion:reduce){.tv-slide,.tv-new{animation:none}.tv-progress-track i{transition:none}.tv-ticker-window>div{animation-duration:90s}}
/* Compact 4:3 office monitors keep every district without shrinking metadata. */
@media(min-width:700px) and (max-width:1100px) and (max-height:900px) and (min-aspect-ratio:11/10){
 .tv-rank{grid-template-columns:minmax(0,1fr) auto;column-gap:4px}
 .tv-rank-no{display:none}.tv-rank-name{grid-column:1}.tv-rank-value{grid-column:2}
 .tv-rank>.tv-progress-track{grid-column:1/3}
 .tv-rank-name{letter-spacing:-.025em}.tv-rank-value b{font-size:24px}
}

/* Backend-managed gallery occupies only unused tax-grid cells. */
.tv-gallery{position:relative;min-width:0;min-height:0;overflow:hidden;border:1px solid var(--border);border-radius:.45rem;background:#102b40;isolation:isolate}
.tv-gallery img{position:absolute;inset:1.8rem 0 0;width:100%;height:calc(100% - 1.8rem);object-fit:contain;opacity:0;transition:opacity .65s ease}
.tv-gallery img.is-active{opacity:1}
.tv-gallery-label{position:absolute;left:0;right:0;top:0;display:flex;align-items:center;gap:.35rem;padding:.4rem .5rem;color:#fff;background:#102b40;font-size:.72rem;line-height:1.1;letter-spacing:.08em;pointer-events:none}
.tv-gallery-label svg{width:1rem;height:1rem}
.tv-gallery-count{position:absolute;right:.45rem;bottom:.45rem;padding:.2rem .45rem;border-radius:1rem;background:#102b40cf;color:#fff;font-size:.8rem;line-height:1.2}
.tv-gallery-unavailable{display:none;position:absolute;inset:40% 0 auto;text-align:center;color:#fff;font-size:1rem}
.tv-gallery.is-unavailable:not(:has(img.is-active)) .tv-gallery-unavailable{display:block}
@media(max-height:900px) and (min-width:700px){
 .tv-receipt{padding:2px 6px;gap:1px}.tv-receipt-name{line-height:1.05}.tv-receipt-region{line-height:1.05}
}
@media(prefers-reduced-motion:reduce){.tv-gallery img{transition:none}}
