/* Самохостингові шрифти. Раніше сторінка тягнула їх із Google Fonts — це два
   зайві сторонні з'єднання на кожне завантаження, дані про кожного відвідувача в
   Google і два домени, які доводилось дозволяти в CSP.

   ВАЖЛИВО: в Archivo на Google Fonts НЕМАЄ кирилиці — лише latin, latin-ext і
   vietnamese. Тобто український текст ніколи й не малювався Archivo: він падає на
   системний гротеск із --sans. Archivo реально малює тільки цифри й латиницю
   (числа у смузі показників, «McKinsey», «IX»). Тому кирилицю тут возити нема
   звідки, і 4 накреслення latin — це все, що має сенс тягнути.
   IBM Plex Mono кирилицю має, тому в нього по два файли на вагу. */
@font-face{
  font-family:'Archivo';
  font-style:normal;
  font-weight:400;
  font-display:swap;
  src:url('fonts/archivo-400-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face{
  font-family:'Archivo';
  font-style:normal;
  font-weight:600;
  font-display:swap;
  src:url('fonts/archivo-600-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face{
  font-family:'Archivo';
  font-style:normal;
  font-weight:800;
  font-display:swap;
  src:url('fonts/archivo-800-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face{
  font-family:'Archivo';
  font-style:normal;
  font-weight:900;
  font-display:swap;
  src:url('fonts/archivo-900-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face{
  font-family:'IBM Plex Mono';
  font-style:normal;
  font-weight:400;
  font-display:swap;
  src:url('fonts/ibm-plex-mono-400-cyrillic.woff2') format('woff2');
  unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face{
  font-family:'IBM Plex Mono';
  font-style:normal;
  font-weight:400;
  font-display:swap;
  src:url('fonts/ibm-plex-mono-400-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face{
  font-family:'IBM Plex Mono';
  font-style:normal;
  font-weight:500;
  font-display:swap;
  src:url('fonts/ibm-plex-mono-500-cyrillic.woff2') format('woff2');
  unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face{
  font-family:'IBM Plex Mono';
  font-style:normal;
  font-weight:500;
  font-display:swap;
  src:url('fonts/ibm-plex-mono-500-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face{
  font-family:'IBM Plex Mono';
  font-style:normal;
  font-weight:600;
  font-display:swap;
  src:url('fonts/ibm-plex-mono-600-cyrillic.woff2') format('woff2');
  unicode-range:U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face{
  font-family:'IBM Plex Mono';
  font-style:normal;
  font-weight:600;
  font-display:swap;
  src:url('fonts/ibm-plex-mono-600-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root{
  --ink:#14171c; --ink-2:#3d444e; --ink-3:#6d757f;
  --paper:#e7eaee; --paper-2:#dde1e7; --card:#fff; --line:#c3cad3;
  --c-people:#14171c; --c-legis:#4b3f9e; --c-pres:#a8123a; --c-gov:#0b6b5f;
  --c-law:#b5610b; --c-court:#2a5c9a; --c-indep:#5c7a16; --c-local:#6f5433;
  --c-op:#7a2f52;
  --surface-2:#fbfcfd; --bar-bg:rgba(231,234,238,.94); --shadow:rgba(20,23,28,.13);
  --vac-2:#8b939d; --on-accent:#fff;
  --sans:'Archivo','Helvetica Neue',Helvetica,Arial,sans-serif;
  --mono:'IBM Plex Mono',ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.5;
  background-image:linear-gradient(var(--paper-2) 1px,transparent 1px),linear-gradient(90deg,var(--paper-2) 1px,transparent 1px);
  background-size:56px 56px}
.wrap{max-width:1240px;margin:0 auto;padding:0 18px 96px}

.hero{padding:56px 0 28px;border-bottom:3px solid var(--ink)}
.eyebrow{font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  color:var(--ink-3);display:flex;flex-wrap:wrap;gap:6px 14px}
.eyebrow b{color:var(--c-pres);font-weight:600}
.thesis{margin:26px 0 0;font-weight:900;letter-spacing:-.03em;line-height:.94;font-size:clamp(30px,6.4vw,64px);text-wrap:balance}
.thesis span{color:var(--ink-3)}
.thesis-src{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-top:14px}
.lede{max-width:64ch;margin:26px 0 0;font-size:16px;color:var(--ink-2)}
.lede strong{color:var(--ink);font-weight:600}

/* ---- смуга показників: усе рахується з даних, тому не розходиться з картками ---- */
.stats{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(148px,1fr));margin:28px 0 0}
.stat{background:var(--card);border:1px solid var(--line);border-top:4px solid var(--sa,var(--ink));padding:11px 12px 10px}
.stat b{display:block;font-size:27px;font-weight:900;letter-spacing:-.03em;line-height:1}
.stat span{display:block;font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.07em;
  text-transform:uppercase;color:var(--ink-3);margin-top:6px;line-height:1.35}

.controls{position:sticky;top:0;z-index:40;background:var(--bar-bg);backdrop-filter:blur(8px);
  border-bottom:1px solid var(--line);margin:0 -18px;padding:10px 18px}
.chips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}
.chips::-webkit-scrollbar{display:none}
.chip{flex:0 0 auto;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  padding:7px 11px;border:1.5px solid var(--ink);background:transparent;color:var(--ink);cursor:pointer;transition:background .12s,color .12s}
.chip[aria-pressed="true"]{background:var(--ink);color:var(--paper)}
.chip:focus-visible{outline:3px solid var(--c-pres);outline-offset:2px}

/* ---- рядок пошуку + сортування ---- */
.toolrow{display:flex;gap:8px;align-items:center;margin-top:7px;flex-wrap:wrap}
.searchbox{position:relative;flex:1 1 220px;min-width:0;display:flex}
.searchbox input{width:100%;font:inherit;font-size:13.5px;padding:6px 30px 6px 10px;
  border:1.5px solid var(--ink);background:var(--card);color:var(--ink);border-radius:0}
.searchbox input::placeholder{color:var(--ink-3)}
.searchbox input:focus-visible{outline:3px solid var(--c-pres);outline-offset:2px}
.searchbox button{position:absolute;right:1px;top:1px;bottom:1px;width:27px;border:0;background:transparent;
  color:var(--ink-3);font:inherit;font-size:16px;line-height:1;cursor:pointer;display:none}
.searchbox.has button{display:block}
.sorts{display:flex;gap:6px;flex:0 0 auto}
.sorts .chip{padding:6px 9px;font-size:10px}

/* службовий статус — у підвалі; нагорі лишається тільки аварійне повідомлення */
.photostatus{font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:var(--ink-3);margin:0 0 8px}
.photoalert{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;color:var(--c-pres);padding:7px 0 1px}
.photostatus button,.photoalert button{font:inherit;letter-spacing:.06em;text-transform:uppercase;
  border:1px solid var(--line);background:var(--card);color:var(--ink);padding:3px 7px;cursor:pointer;margin-left:8px}

.focusbar{display:none;flex-direction:column;gap:5px;padding:8px 0 3px;font-size:13px;color:var(--ink-2)}
body.is-focused .focusbar{display:flex}
.fb-top{display:flex;align-items:baseline;gap:10px}
.focusbar .fb-name{font-weight:800;color:var(--ink)}
.focusbar>.fb-top>button{margin-left:auto;flex:0 0 auto;font-family:var(--mono);font-size:11px;letter-spacing:.08em;
  text-transform:uppercase;border:1.5px solid var(--ink);background:var(--ink);color:var(--paper);padding:6px 10px;cursor:pointer}
.legend-inline{font-family:var(--mono);font-size:11px;color:var(--ink-3);letter-spacing:.04em}

/* ---- ланцюг призначення: найкоротший шлях назад до народу ---- */
.fb-chain{display:flex;flex-wrap:wrap;align-items:center;gap:3px 5px;font-family:var(--mono);font-size:11px}
.fb-chain:empty{display:none}
.fb-chain .cl-lab{font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-right:4px}
.fb-chain button{font:inherit;font-size:11px;border:1px solid var(--line);background:var(--card);color:var(--ink-2);
  padding:2px 6px;cursor:pointer}
.fb-chain button:hover{border-color:var(--ink);color:var(--ink)}
.fb-chain button[aria-current="true"]{background:var(--ink);border-color:var(--ink);color:var(--paper);font-weight:600}
.fb-chain i{font-style:normal;color:var(--ink-3)}

.group{position:relative;padding:38px 0 6px;border-top:1px solid var(--line)}
.group:first-of-type{border-top:0}
.ghead{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin-bottom:6px}
.gnum{font-family:var(--mono);font-size:12px;font-weight:600;color:var(--ink-3);letter-spacing:.1em}
.gtitle{font-size:clamp(20px,3.2vw,30px);font-weight:900;letter-spacing:-.02em;margin:0}
.gbadge{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  padding:4px 8px;color:var(--on-accent);background:var(--accent)}
.gnote{max-width:78ch;margin:8px 0 20px;font-size:14px;color:var(--ink-2)}
.grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(258px,1fr))}
.grid.wide{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}
.grid.flat{padding-top:26px}

.sortnote{font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);
  border-bottom:1px solid var(--line);padding:26px 0 6px}
.empty{padding:44px 0;font-size:15px;color:var(--ink-2)}
.empty b{display:block;font-size:20px;font-weight:900;letter-spacing:-.02em;color:var(--ink);margin-bottom:6px}

.card{position:relative;background:var(--card);border:1px solid var(--line);border-left:5px solid var(--accent);
  padding:13px 14px 12px;cursor:pointer;transition:transform .12s,box-shadow .12s,opacity .15s;
  text-align:left;font:inherit;color:inherit;width:100%;display:block}
.card:hover{transform:translateY(-2px);box-shadow:4px 4px 0 var(--shadow)}
.card:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.card.tier-1{border-left-width:9px;background:linear-gradient(180deg,var(--card),var(--surface-2))}
.card.tier-1 .name{font-size:22px}
.crole{font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;
  color:var(--accent);margin-bottom:7px;display:block;line-height:1.35}
.who{display:flex;gap:10px;align-items:center}
.av{flex:0 0 auto;width:48px;height:48px;border-radius:50%;position:relative;overflow:hidden;
  display:grid;place-items:center;font-weight:800;font-size:15px;letter-spacing:-.02em;color:var(--on-accent);
  background:var(--accent);box-shadow:0 0 0 2px var(--card),0 0 0 3.5px var(--accent)}
.card.tier-1 .av{width:58px;height:58px;font-size:18px}
.av.abbr{font-size:12px;letter-spacing:0}
.card.tier-1 .av.abbr{font-size:14px}
.av img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 20%;opacity:0;transition:opacity .35s}
.av img.on{opacity:1}
.av.vac{background:repeating-linear-gradient(45deg,var(--ink-3),var(--ink-3) 4px,var(--vac-2) 4px,var(--vac-2) 8px);
  box-shadow:0 0 0 2px var(--card),0 0 0 3.5px var(--ink-3)}
.name{font-weight:800;font-size:17px;letter-spacing:-.02em;line-height:1.15}
.since{font-family:var(--mono);font-size:11.5px;color:var(--ink-2);margin-top:2px}
.tenure{color:var(--ink);font-weight:600;white-space:nowrap}
.flag{display:inline-block;font-family:var(--mono);font-size:9.5px;font-weight:600;letter-spacing:.1em;
  text-transform:uppercase;background:var(--c-law);color:var(--on-accent);padding:2px 5px;margin-left:6px;vertical-align:1px}
.flag.vacant{background:var(--c-pres)}
.meta{margin:11px 0 0;padding-top:9px;border-top:1px dashed var(--line);display:grid;gap:5px}
.mrow{display:grid;grid-template-columns:74px 1fr;gap:8px;font-size:12.5px;line-height:1.4}
.mkey{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-3);padding-top:2px}
.mval{color:var(--ink-2)} .mval b{color:var(--ink);font-weight:600}
.subs{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}
.sub{font-family:var(--mono);font-size:10.5px;border:1px solid var(--line);background:var(--paper);padding:3px 6px;color:var(--ink-2)}
.sub b{color:var(--ink);font-weight:600}
/* гілка влади підписана лише у плоских сортуваннях, де немає заголовків груп */
.gtag{display:none;font-family:var(--mono);font-size:9.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  color:var(--accent);margin-top:10px;padding-top:7px;border-top:1px dashed var(--line)}
.grid.flat .gtag{display:block}

body.is-focused .card{opacity:.16;filter:grayscale(1)}
body.is-focused .card.is-self{opacity:1;filter:none;box-shadow:0 0 0 3px var(--accent)}
body.is-focused .card.is-up,body.is-focused .card.is-down{opacity:1;filter:none}
body.is-focused .card.is-chain{opacity:.62;filter:grayscale(.5)}
.relmark{position:absolute;top:-1px;right:-1px;font-family:var(--mono);font-size:9.5px;font-weight:600;
  letter-spacing:.08em;padding:3px 6px;color:var(--on-accent);display:none}
body.is-focused .card.is-up .relmark.up{display:block;background:var(--c-pres)}
body.is-focused .card.is-down .relmark.down{display:block;background:var(--c-gov)}
body.is-focused .card.is-chain .relmark.chain{display:block;background:var(--ink-3)}
.group.hidden,.card.hidden{display:none}

.matrix{margin-top:56px;border-top:3px solid var(--ink);padding-top:34px}
h2.sec{font-size:clamp(22px,3.4vw,32px);font-weight:900;letter-spacing:-.025em;margin:0 0 6px}
.mechlegend{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(212px,1fr));margin:20px 0 30px}
.ml{display:flex;gap:9px;align-items:flex-start;background:var(--card);border:1px solid var(--line);padding:9px 11px}
.ml i{flex:0 0 auto;width:26px;height:0;margin-top:9px;border-top:4px solid var(--mc)}
.ml span{font-size:12px;color:var(--ink-2);line-height:1.35}
.ml b{display:block;font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--mc)}

.tier{margin-bottom:26px}
.tierlab{font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;
  color:var(--ink-3);border-bottom:1px solid var(--line);padding-bottom:6px;margin-bottom:14px}
.chan{display:grid;grid-template-columns:190px 156px 1fr;align-items:stretch;margin-bottom:10px;
  background:var(--card);border:1px solid var(--line)}
.src{padding:12px 13px;border-right:4px solid var(--sc);display:flex;flex-direction:column;justify-content:center;background:var(--surface-2)}
.src b{font-weight:800;font-size:14.5px;letter-spacing:-.01em;line-height:1.2}
.src em{font-style:normal;font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-top:3px}
.mech{position:relative;padding:12px 14px;display:flex;flex-direction:column;justify-content:center;min-height:66px}
.mech::before{content:"";position:absolute;left:0;right:20px;top:50%;border-top:4px solid var(--mc)}
.mech::after{content:"";position:absolute;right:6px;top:50%;transform:translateY(-50%);
  border-left:11px solid var(--mc);border-top:7px solid transparent;border-bottom:7px solid transparent}
.mech s{position:relative;text-decoration:none;background:var(--card);padding:2px 6px;align-self:flex-start;
  font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--mc);
  border:1px solid var(--mc);z-index:1}
.dst{padding:11px 12px;display:flex;flex-wrap:wrap;gap:5px;align-content:center}
.pill{font-size:12.5px;line-height:1.3;border:1px solid var(--line);border-left:3px solid var(--pc);
  background:var(--paper);padding:4px 8px}
.pill u{text-decoration:none;font-family:var(--mono);font-size:10px;color:var(--ink-3);margin-left:5px}

.checks{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(268px,1fr));margin-top:22px}
.check{border:1px solid var(--line);border-top:4px solid var(--accent);background:var(--card);padding:14px}
.check h3{margin:0 0 6px;font-size:14px;font-weight:800}
.check p{margin:0;font-size:13px;color:var(--ink-2)}

footer{margin-top:56px;border-top:1px solid var(--line);padding-top:22px;font-size:12.5px;color:var(--ink-2)}
footer h3{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);margin:0 0 8px}
footer ul{margin:0 0 16px;padding-left:18px} footer li{margin-bottom:4px}
footer a{color:var(--c-court)}

@media (max-width:760px){
  .chan{grid-template-columns:1fr}
  .src{border-right:0;border-bottom:4px solid var(--sc)}
  .mech{min-height:0;padding:9px 12px 4px}
  .mech::before,.mech::after{display:none}
}
@media (max-width:640px){
  .hero{padding:34px 0 22px}
  .mrow{grid-template-columns:66px 1fr}
  .card{padding:12px}
  .stat b{font-size:22px}
  .toolrow{gap:6px}
  .searchbox{flex:1 1 100%}
  .sorts{width:100%;overflow-x:auto;scrollbar-width:none}
  .sorts::-webkit-scrollbar{display:none}
  /* На телефоні липка панель із розгорнутим фокусом з'їдала пів екрана. Статус фото
     ховаємо, ланцюг кладемо в один рядок із горизонтальним скролом, перелік зв'язків
     обрізаємо двома рядками — панель лишається ~чверть екрана. */
  .fb-chain{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
  .fb-chain::-webkit-scrollbar{display:none}
  .fb-chain button{white-space:nowrap}
  .fb-chain .cl-lab{display:none}
  .legend-inline{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
}
/* Палець, а не миша. Два справжні дефекти на телефоні:
   1) Safari на iOS збільшує всю сторінку, щойно фокус потрапляє в поле введення з
      кеглем меншим за 16px — тому саме 16px, не менше;
   2) дрібні керівні елементи (ланцюг — 22px) не добираються до 44pt Apple і 48dp
      Material. Піднімаємо їх до ~40px: панель трохи вища, зате в неї можна влучити.
   Заведено на pointer:coarse, а не на ширину: планшет із дотиком теж палець. */
@media (pointer:coarse){
  .searchbox input{font-size:16px;padding-top:9px;padding-bottom:9px}
  .searchbox input::-webkit-search-cancel-button{display:none}
  .searchbox button{width:40px;font-size:20px}
  .chip{padding:12px 13px}
  .sorts .chip{padding:13px 11px}
  .fb-chain{gap:5px 6px}
  .fb-chain button{padding:11px 10px}
  .focusbar>.fb-top>button{padding:11px 13px}
  .photostatus button,.photoalert button{padding:8px 10px}
}
/* Темна тема. Перевизначаємо ЛИШЕ токени — жодне правило компонентів тут не
   дублюється, тому світла й темна не можуть розійтися. Акценти гілок беремо
   освітлені: оригінальні (#14171c, #4b3f9e…) на темному тлі нечитабельні.
   #fff там, де текст лежить НА акценті, лишається білим — він і має лишатись. */
@media (prefers-color-scheme:dark){
  :root{
    --ink:#e6eaf0; --ink-2:#b3bcc9; --ink-3:#87919f;
    --paper:#0e1116; --paper-2:#161a21; --card:#171c23; --line:#2b323d;
    --surface-2:#1b212a; --bar-bg:rgba(14,17,22,.94); --shadow:rgba(0,0,0,.5);
    --vac-2:#5d6672; --on-accent:#0e1116;
    --c-people:#c8d1de; --c-legis:#8f86e8; --c-pres:#f0577f; --c-gov:#3fbfa9;
    --c-law:#e0932f; --c-court:#6aa6e8; --c-indep:#a8c74a; --c-local:#c39a68;
    --c-op:#d97fa5;
  }
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
@media print{body{background:#fff}.controls,.focusbar{display:none!important}.card,.chan{break-inside:avoid;box-shadow:none}}
