/* The census list (js/tvs.js): on tvs.html and the home page. Tokens from site.css. */
.tvs-box{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:18px;min-width:0}
.tv-tools{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.tv-q{flex:1 1 240px;min-width:0;height:44px;padding:0 14px;border-radius:12px;border:1px solid var(--line2);background:var(--bg2);color:var(--text);font:inherit;font-size:15px}
.tv-q:focus{outline:2px solid var(--blue);outline-offset:1px}
.tv-chips{display:flex;flex-wrap:wrap;gap:8px}
.tv-chips button{height:36px;padding:0 14px;border-radius:999px;border:1px solid var(--line2);background:transparent;color:var(--muted);font:inherit;font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap}
.tv-chips button:hover{color:var(--text)}
.tv-chips button[aria-pressed="true"]{background:rgba(91,140,255,.16);border-color:var(--blue);color:var(--text)}
.tv-chips .n{color:var(--dim);font-weight:500;margin-left:4px}
.tv-sum{margin:14px 2px 10px;color:var(--muted);font-size:14px;min-height:1.5em}
.tv-list{columns:2 360px;column-gap:16px}
.tv-brand{padding:0;break-inside:avoid;margin:0 0 14px;background:var(--bg2);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.tv-brand h3{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0;padding:10px 14px;font-size:15px;letter-spacing:0;background:var(--card2);border-bottom:1px solid var(--line)}
.tv-brand h3 b{font-size:12px;font-weight:700;color:var(--muted);background:var(--bg2);border:1px solid var(--line2);border-radius:999px;padding:1px 9px}
.tv-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:6px 10px;padding:9px 14px;border-top:1px solid var(--line);font-size:14.5px}
.tv-brand h3+.tv-row{border-top:0}
.tv-m{overflow-wrap:anywhere;font-weight:600}
.tv-a{color:var(--muted);font-size:13px;white-space:nowrap}
.tv-c{color:var(--dim);font-size:13px;font-family:"JetBrains Mono",ui-monospace,monospace;min-width:2.2em;text-align:right}
.tv-b{font-style:normal;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:2px 8px;border-radius:999px;border:1px solid var(--line2);color:var(--muted);white-space:nowrap}
.tv-b.k-box{color:var(--orange);border-color:rgba(255,163,26,.45)}
.tv-b.k-projector{color:#e06ad6;border-color:rgba(224,106,214,.45)}
.tv-b.k-tv{color:var(--blue);border-color:rgba(91,140,255,.45)}
.tv-fold{display:block;width:100%;height:40px;border:0;border-top:1px solid var(--line);background:transparent;color:var(--blue);font:inherit;font-size:14px;font-weight:600;cursor:pointer}
.tv-fold:hover{background:var(--card2)}
.tv-note{color:var(--muted);padding:28px 8px;text-align:center;column-span:all}
.tv-more{display:flex;width:fit-content;margin:6px auto 0;column-span:all}
.tv-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;column-span:all;margin-bottom:14px}
.tv-tile{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:2px 8px;padding:12px 14px;text-align:left;background:var(--bg2);border:1px solid var(--line);border-radius:14px;color:var(--text);font:inherit;cursor:pointer}
.tv-tile:hover{border-color:var(--line2);background:var(--card2)}
.tv-tile b{font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tv-tile .n{font-size:12px;font-weight:700;color:var(--muted)}
.tv-tile small{grid-column:1/-1;color:var(--dim);font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tv-wait{cursor:default;opacity:.45;color:transparent}.tv-tile.tv-wait:hover{background:var(--bg2);border-color:var(--line)}
@media(max-width:560px){.tv-tiles{grid-template-columns:1fr 1fr;gap:8px}.tv-tile{padding:10px 12px}}
@media(max-width:560px){
  .tvs-box{padding:14px}
  .tv-chips{width:100%}
  .tv-row{grid-template-columns:minmax(0,1fr) auto auto;padding:9px 12px}
  .tv-a{grid-column:1;grid-row:2}.tv-b{grid-column:3;grid-row:1}.tv-c{grid-column:2;grid-row:1}
}
.tvs-home{padding:64px 0 24px}
.tvs-home .wrap{text-align:center}.tvs-home .tvs-box{text-align:left}.tvs-home .lead{margin:0 auto 24px;text-align:center}
.tvs-home .tvs-box{max-width:980px;margin:0 auto}
.tvs-home .tv-list{max-height:none}
.tvs-foot{margin-top:14px;color:var(--dim);font-size:13px}
.tvp{padding-top:40px;padding-bottom:64px}
.tvp h1{margin:10px 0 12px}
.tvp .tvs-box{margin-top:24px}
/* the daily chart (js/tvs.js mountChart) */
.tvs-chart{margin-bottom:16px}
.dc-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 16px}
.dc-t{margin:0;font-size:17px}
.dc-tot{margin:0;color:var(--muted);font-size:14px}.dc-tot b{color:var(--text);font-size:22px;font-weight:800;margin-right:2px}
.dc-plot{position:relative;overflow:hidden;margin-top:10px;min-height:150px}
.dc-plot svg{display:block;max-width:100%;touch-action:pan-y}
.dc-grid{stroke:var(--line);stroke-width:1}
.dc-ax{fill:var(--dim);font-size:11px;font-family:"JetBrains Mono",ui-monospace,monospace}
.dc-hit{fill:transparent;cursor:pointer}
.dc-bar{opacity:.78;rx:2}
.dc-day.on .dc-bar{opacity:1}.dc-day.on .dc-hit{fill:rgba(91,140,255,.1)}
.dc-read{margin:8px 0 0;color:var(--text);font-size:14px;min-height:3em}
.dc-key{display:flex;flex-wrap:wrap;gap:6px 16px;margin:8px 0 0;color:var(--muted);font-size:13px}
.dc-key i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px}
.dc-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.tvp>.lead{max-width:none}
/* the headline in big numbers (js/tvs.js big): the count is the news, the section's name the eyebrow above it */
.tvs-eye{background:linear-gradient(90deg,#8b7bff,#d06bff);-webkit-background-clip:text;background-clip:text;color:transparent;letter-spacing:.04em;text-transform:none;font-size:15px}
.tvs-big{font-size:clamp(34px,6.4vw,64px);font-weight:800;line-height:1.08;letter-spacing:-.02em;margin:8px 0 14px}
@media(max-width:760px){.tvs-big{min-height:2.16em}}   /* the count wraps to two lines here, its placeholder one: no jump when it lands */
