/* 4IceHockey module styles. Every selector is hky- prefixed so nothing collides with the host theme (app.css).
   Tokens mirror the live site: chrome #232F3E, accent #1abc9c, 12px radius, Inter.
   Surfaces and text read tokens; the colour modes (hybrid is these defaults, light is the same, dark is the block
   at the end of this file) repaint them through html[data-fs-theme]. New colour rules need a dark counterpart. */
:root{
  --hky-chrome:#232F3E; --hky-chrome-2:#1a2330; --hky-ink:#0e1116; --hky-muted:#5b6472; --hky-line:#e3e7ee; --hky-bg:#fafbfd; --hky-card:#fff;
  --hky-accent:#1abc9c; --hky-accent-ink:#0b7a64; --hky-link:#0b57d0; --hky-live:#d92d20; --hky-win:#0e1116; --hky-warn-bg:#fff6dd; --hky-warn:#8a5a00;
  --hky-inset:#f5f7fa; --hky-hover:#f8fafc; --hky-chip:#eef1f6; --hky-chip-ink:#3b4554; --hky-text-2:#2b3442; --hky-line-2:#cfd6e0; --hky-line-3:#b8c1cf; --hky-quote:#f3fbf9; --hky-warn-line:#f2dca0;
  --hky-win-ink:#0a7a3e; --hky-loss-ink:#b42318; --hky-out-bg:#fdecea; --hky-q-bg:#fff6dd; --hky-ok-bg:#e8f5ee; --hky-result-line:#bfe9df;
  --hky-radius:12px; --hky-radius-sm:8px; --hky-shadow:0 1px 2px rgba(16,24,40,.05),0 6px 20px rgba(16,24,40,.06);
  --hky-font:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}
.hky-wrap{max-width:1240px;margin:0 auto;padding:0 16px}
.hky-main{width:100%;min-width:0;box-sizing:border-box;padding-top:20px;padding-bottom:48px;font-family:var(--hky-font);color:var(--hky-ink);line-height:1.5}
.hky-main a{color:var(--hky-link);text-decoration:none}.hky-main a:hover{text-decoration:underline}
.hky-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hky-skip{position:absolute;left:-999px;top:0;background:var(--hky-card);color:var(--hky-ink);padding:8px 12px;z-index:100}.hky-skip:focus{left:8px;top:8px}

/* ---------- team marks ---------- */
.hky-logo{object-fit:contain;flex:0 0 auto;vertical-align:middle}
.hky-badge{--hky-sz:24px;display:inline-grid;place-items:center;flex:0 0 auto;width:calc(var(--hky-sz)*1.35);height:var(--hky-sz);border-radius:5px;background:var(--hky-c1,#334);color:#fff;
  font:800 calc(var(--hky-sz)*.4)/1 var(--hky-font);letter-spacing:.02em;box-shadow:inset 0 -3px 0 var(--hky-c2,#fff3);text-shadow:0 1px 1px #0006;vertical-align:middle}
.hky-teamlink{display:inline-flex;align-items:center;gap:8px;color:inherit!important;font-weight:600}
.hky-rank{font-size:.75em;color:var(--hky-muted);font-weight:700}

/* ---------- ticker ---------- */
.hky-ticker{background:#10161f;color:#fff;font-family:var(--hky-font)}
.hky-ticker__tabs{display:flex;gap:6px;align-items:center;padding:8px 16px 0;max-width:1240px;margin:0 auto;overflow-x:auto;scrollbar-width:none}
.hky-ticker__tab{background:#1c2633;color:#c6d0dc;border:0;border-radius:999px;padding:4px 12px;font:600 12px var(--hky-font);cursor:pointer;white-space:nowrap;display:inline-flex;gap:6px;align-items:center}
.hky-ticker__tab.is-active{background:var(--hky-accent);color:#04241d}
.hky-ticker__tab:focus-visible,.hky-follow:focus-visible,.hky-game:focus-visible{outline:2px solid #fff;outline-offset:2px}
.hky-dot{width:7px;height:7px;border-radius:50%;background:var(--hky-live);box-shadow:0 0 0 0 #d92d2088;animation:hky-pulse 1.6s infinite}
.hky-ticker__all{margin-left:auto;color:#9fe8d8;font-size:12px;font-weight:600;text-decoration:none;white-space:nowrap;padding-left:12px}
.hky-ticker__strip{display:none;gap:8px;padding:8px 16px 10px;max-width:1240px;margin:0 auto;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#334 transparent}
.hky-ticker__strip.is-active{display:flex}
.hky-ticker__empty{color:#9fb0c3;font-size:13px;padding:10px 0}
@keyframes hky-pulse{70%{box-shadow:0 0 0 7px #d92d2000}100%{box-shadow:0 0 0 0 #d92d2000}}

/* ---------- game card ---------- */
.hky-game{display:block;text-decoration:none!important;color:inherit;font-family:var(--hky-font)}
.hky-game__row{display:flex;align-items:center;gap:8px;font-weight:500;opacity:.86}
.hky-game__row.is-winner,.hky-game.is-live .hky-game__row,.hky-game.is-pre .hky-game__row{opacity:1}
.hky-game__row.is-winner{font-weight:800}
.hky-game__name{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hky-game__score{font-variant-numeric:tabular-nums;font-weight:800;min-width:1.6em;text-align:right}
.hky-game__score.hky-flash{animation:hky-flash 2.4s ease-out}
@keyframes hky-flash{0%{background:var(--hky-accent);color:#04241d;border-radius:4px}100%{background:transparent}}
.hky-game__status{display:flex;flex-wrap:wrap;gap:4px 8px;font-size:11px;margin-top:4px}
.hky-game__meta{opacity:.75}
.hky-live{color:var(--hky-live);font-weight:800;text-transform:uppercase;font-size:.92em;letter-spacing:.04em}
.hky-live::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor;margin-right:4px;vertical-align:1px}
.hky-game--ticker{flex:0 0 auto;min-width:148px;max-width:200px;background:#1c2633;color:#fff;border-radius:var(--hky-radius-sm);padding:7px 10px;font-size:13px;scroll-snap-align:start;border:1px solid transparent}
.hky-game--ticker:hover{border-color:#3a4a5e}
.hky-game--ticker .hky-game__status{color:#9fb0c3}
.hky-game--ticker .hky-live{color:#ff7a6e}
.hky-game--ticker.is-mine{border-color:var(--hky-accent)}
.hky-board{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:12px;margin:12px 0 24px}
.hky-game--board{background:var(--hky-card);border:1px solid var(--hky-line);border-radius:var(--hky-radius);padding:12px 14px;box-shadow:var(--hky-shadow);font-size:15px;color:var(--hky-ink)!important}
.hky-game--board:hover{border-color:var(--hky-line-3)}
.hky-game--board .hky-game__row{padding:3px 0}
.hky-game--board .hky-game__status{color:var(--hky-muted);font-size:12px;border-top:1px solid var(--hky-line);margin-top:8px;padding-top:8px}
.hky-game--board.is-mine{box-shadow:0 0 0 2px var(--hky-accent),var(--hky-shadow)}
.hky-dayhead{font-size:14px;text-transform:uppercase;letter-spacing:.06em;color:var(--hky-muted);margin:22px 0 0}

/* ---------- sub navigation ---------- */
.hky-subnav{background:var(--hky-card);border-bottom:1px solid var(--hky-line);font-family:var(--hky-font);position:sticky;top:0;z-index:20}
.hky-subnav__in{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none;align-items:center}
.hky-subnav a{padding:11px 11px;font-size:14px;font-weight:600;color:var(--hky-text-2);text-decoration:none;white-space:nowrap;border-bottom:2px solid transparent}
.hky-subnav a:hover{color:var(--hky-ink);border-color:var(--hky-line-2)}.hky-subnav a.is-active{color:var(--hky-accent-ink);border-color:var(--hky-accent)}
.hky-subnav__my{margin-left:auto;color:var(--hky-accent-ink)!important}

/* ---------- layout + cards ---------- */
.hky-h1{font-size:clamp(24px,3.2vw,32px);line-height:1.2;margin:4px 0 6px;letter-spacing:-.4px}
.hky-h2{font-size:18px;margin:0 0 12px;letter-spacing:-.2px}
.hky-lede{color:var(--hky-muted);margin:0 0 18px;max-width:780px}
.hky-crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:0 0 10px;font-size:13px;color:var(--hky-muted)}
.hky-crumbs li+li::before{content:"›";margin-right:6px;opacity:.6}
.hky-card{background:var(--hky-card);border:1px solid var(--hky-line);border-radius:var(--hky-radius);box-shadow:var(--hky-shadow);padding:16px 18px;margin:0 0 16px}
.hky-grid{display:grid;gap:16px}.hky-grid--2{grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr))}.hky-grid--3{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}
.hky-cols{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:20px;align-items:start}
.hky-home{display:grid;grid-template-columns:210px minmax(0,1fr) 320px;gap:20px;align-items:start}
@media(max-width:1080px){.hky-home{grid-template-columns:minmax(0,1fr) 300px}.hky-home__topics{display:none}}
@media(max-width:860px){.hky-cols,.hky-home{grid-template-columns:minmax(0,1fr)}}
.hky-note{font-size:13px;color:var(--hky-muted);margin:8px 0}
.hky-note--warn{background:var(--hky-warn-bg);color:var(--hky-warn);padding:8px 12px;border-radius:var(--hky-radius-sm);border:1px solid var(--hky-warn-line)}
.hky-source{font-size:12px;color:var(--hky-muted);margin:18px 0 0}
.hky-empty{text-align:center;padding:60px 0}
.hky-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 16px;padding:0;list-style:none}
.hky-chip,.hky-chips a{display:inline-block;padding:5px 12px;border-radius:999px;border:1px solid var(--hky-line);background:var(--hky-card);font-size:13px;font-weight:600;color:var(--hky-text-2)!important;text-decoration:none!important}
.hky-chips a:hover{border-color:var(--hky-line-3)}.hky-chips a.is-active,.hky-chip.is-active{background:var(--hky-chrome);color:#fff!important;border-color:var(--hky-chrome)}
.hky-btn{display:inline-block;padding:7px 14px;border-radius:999px;border:1px solid var(--hky-line);background:var(--hky-card);font:600 13px var(--hky-font);color:var(--hky-text-2)!important;text-decoration:none!important;cursor:pointer}
.hky-btn:hover{border-color:var(--hky-line-3)}.hky-btn--primary{background:var(--hky-link);border-color:var(--hky-link);color:#fff!important}
.hky-kv{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;margin:0;font-size:14px}.hky-kv dt{color:var(--hky-muted)}.hky-kv dd{margin:0;font-weight:600}
.hky-stat{display:flex;flex-direction:column;gap:2px}.hky-stat b{font-size:22px;letter-spacing:-.4px;font-variant-numeric:tabular-nums}.hky-stat span{font-size:12px;color:var(--hky-muted)}
.hky-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:14px}

/* ---------- tables ---------- */
.hky-tablewrap{overflow-x:auto;margin:0 0 16px;border:1px solid var(--hky-line);border-radius:var(--hky-radius);background:var(--hky-card);box-shadow:var(--hky-shadow)}
.hky-table{width:100%;border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums}
.hky-table caption{text-align:left;font-weight:800;padding:12px 14px 8px;font-size:15px}
.hky-table th,.hky-table td{padding:8px 12px;border-top:1px solid var(--hky-line);text-align:left;white-space:nowrap}
.hky-table thead th{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--hky-muted);background:var(--hky-inset);border-top:0;font-weight:700}
.hky-table tbody th{font-weight:600}
.hky-table .n{text-align:right}.hky-table tbody tr:hover{background:var(--hky-hover)}
.hky-table--compact th,.hky-table--compact td{padding:6px 10px}
.hky-table [data-sort]{cursor:pointer;user-select:none}.hky-table [data-sort]::after{content:" ↕";opacity:.35}
.hky-table [aria-sort=ascending]::after{content:" ↑";opacity:1}.hky-table [aria-sort=descending]::after{content:" ↓";opacity:1}
.hky-w{color:var(--hky-win-ink);font-weight:700}.hky-l{color:var(--hky-loss-ink);font-weight:700}.hky-t{color:var(--hky-muted);font-weight:700}
.hky-tag{display:inline-block;font-size:11px;font-weight:700;padding:1px 7px;border-radius:999px;background:var(--hky-chip);color:var(--hky-chip-ink)}
.hky-tag--out{background:var(--hky-out-bg);color:var(--hky-loss-ink)}.hky-tag--q{background:var(--hky-q-bg);color:var(--hky-warn)}.hky-tag--ok{background:var(--hky-ok-bg);color:var(--hky-win-ink)}

/* ---------- team / player hero ---------- */
.hky-hero{border-radius:var(--hky-radius);padding:22px;color:#fff;background:linear-gradient(120deg,var(--hky-c1,#232F3E) 0%,color-mix(in srgb,var(--hky-c1,#232F3E) 72%,#000) 100%);display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-bottom:16px;border-bottom:4px solid var(--hky-c2,#1abc9c)}
.hky-hero__mark{background:#fff;border-radius:12px;padding:8px;display:grid;place-items:center;flex:0 0 auto}
.hky-hero h1{margin:0;font-size:clamp(22px,3vw,30px);letter-spacing:-.4px}
.hky-hero p{margin:4px 0 0;opacity:.9;font-size:14px}
.hky-hero__side{margin-left:auto;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.hky-follow{background:#ffffff22;border:1px solid #ffffff55;color:#fff;border-radius:999px;padding:7px 14px;font:700 13px var(--hky-font);cursor:pointer}
.hky-follow[aria-pressed=true]{background:#fff;color:#111}.hky-follow[aria-pressed=true] .hky-follow__star{color:#e6a700}
.hky-main .hky-follow{background:var(--hky-card);color:var(--hky-text-2);border-color:var(--hky-line)}
.hky-hero .hky-follow{background:#ffffff22;color:#fff;border-color:#ffffff55}.hky-hero .hky-follow[aria-pressed=true]{background:#fff;color:#111}
.hky-tabs{display:flex;gap:4px;border-bottom:1px solid var(--hky-line);margin:0 0 16px;overflow-x:auto}
.hky-tabs a{padding:9px 12px;font-weight:600;font-size:14px;color:var(--hky-text-2)!important;border-bottom:2px solid transparent;text-decoration:none!important;white-space:nowrap}
.hky-tabs a:hover{border-color:var(--hky-line-2)}

/* ---------- news / blog ---------- */
.hky-news__list{list-style:none;padding:0;margin:0 0 12px}.hky-news__list li{padding:8px 0;border-top:1px solid var(--hky-line)}.hky-news__list li:first-child{border:0}
.hky-news__src{display:block;font-size:12px;color:var(--hky-muted)}
.hky-news__actions{display:flex;flex-wrap:wrap;gap:8px}
.hky-posts{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:16px}
.hky-post-card{background:var(--hky-card);border:1px solid var(--hky-line);border-radius:var(--hky-radius);overflow:hidden;box-shadow:var(--hky-shadow);display:flex;flex-direction:column}
.hky-post-card__art{height:120px;background:linear-gradient(135deg,var(--hky-chrome),#0b7a64);display:grid;place-items:center;color:#ffffffcc;font:800 13px var(--hky-font);letter-spacing:.12em;text-transform:uppercase}
.hky-post-card__body{padding:14px 16px 16px;display:flex;flex-direction:column;gap:6px;flex:1}
.hky-post-card h3{margin:0;font-size:17px;line-height:1.3}.hky-post-card h3 a{color:var(--hky-ink)!important}
.hky-post-card p{margin:0;color:var(--hky-muted);font-size:14px}
.hky-meta{font-size:12px;color:var(--hky-muted)}
.hky-article{max-width:760px;font-size:17px;line-height:1.7}
.hky-article h2{font-size:24px;margin:34px 0 10px;letter-spacing:-.3px}.hky-article h3{font-size:19px;margin:26px 0 8px}
.hky-article blockquote{border-left:4px solid var(--hky-accent);margin:18px 0;padding:4px 16px;color:var(--hky-text-2);background:var(--hky-quote);border-radius:0 8px 8px 0}
.hky-article table{border-collapse:collapse;width:100%;font-size:15px;margin:16px 0}.hky-article th,.hky-article td{border:1px solid var(--hky-line);padding:7px 10px;text-align:left}.hky-article th{background:var(--hky-inset)}
.hky-article code{background:var(--hky-chip);padding:1px 5px;border-radius:4px;font-size:.9em}
.hky-embed{margin:22px 0}

/* ---------- home ---------- */
.hky-rail .hky-card{padding:14px}
.hky-rail h2{font-size:12px;text-transform:uppercase;letter-spacing:.07em;color:var(--hky-muted);margin:0 0 10px}
.hky-rail .hky-tablewrap{box-shadow:none;margin:0;border:0}
.hky-list{list-style:none;padding:0;margin:0;font-size:14px}.hky-list li{display:flex;justify-content:space-between;gap:10px;padding:6px 0;border-top:1px solid var(--hky-line)}.hky-list li:first-child{border:0}
.hky-topics{background:var(--hky-chrome);color:#dfe7ef;border-radius:var(--hky-radius);padding:12px;font-size:14px}
.hky-topics h2{font-size:11px;letter-spacing:.1em;color:#9fb0c3;margin:0 0 8px}
.hky-topics a{display:block;color:#dfe7ef!important;padding:6px 4px;border-top:1px solid #ffffff14;text-decoration:none!important}.hky-topics a:hover{color:#fff!important;background:#ffffff0d}
.hky-feeditem{padding:12px 0;border-top:1px solid var(--hky-line)}.hky-feeditem:first-of-type{border:0}
.hky-feeditem a{font-weight:600;font-size:16px}
.hky-hubgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.hky-hubgrid a{display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid var(--hky-line);border-radius:var(--hky-radius-sm);background:var(--hky-card);color:var(--hky-ink)!important;font-weight:600;font-size:14px;text-decoration:none!important}
.hky-hubgrid a:hover{border-color:var(--hky-line-3)}
.hky-filter{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px}
.hky-filter input,.hky-filter select{padding:8px 12px;border:1px solid var(--hky-line);border-radius:999px;font:14px var(--hky-font);background:var(--hky-card);min-width:0}
.hky-filter input{flex:1 1 220px}
@media (prefers-reduced-motion:reduce){.hky-dot,.hky-game__score.hky-flash{animation:none}}

/* the hidden attribute must win over display:flex/grid on filtered rows */
.hky-main [hidden]{display:none!important}

/* dark logos (Panthers, Falcons, Raiders...) need a light chip on the dark ticker */
.hky-game--ticker .hky-logo{background:#fff;border-radius:4px;padding:1px;box-sizing:border-box}
.hky-game--ticker .hky-game__status{flex-wrap:nowrap;white-space:nowrap;overflow:hidden}

/* Play hub tiles */
a.hky-tile{display:block;text-decoration:none!important;color:var(--hky-ink)!important;margin:0}a.hky-tile:hover{border-color:var(--hky-line-3)}
.hky-tile b{display:block;font-size:17px;margin-bottom:4px}.hky-tile span{font-size:14px;color:var(--hky-muted)}

/* ===================== hockey additions ===================== */
.hky-game__sog{font-size:11px;color:var(--hky-muted);white-space:nowrap;font-variant-numeric:tabular-nums}
.hky-game.is-postponed .hky-game__row{opacity:.6}
.hky-ticker__day{flex:0 0 auto;align-self:center;font-size:11px;font-weight:700;color:#9fb0c3;text-transform:uppercase;letter-spacing:.06em;padding-right:4px}
.hky-datenav{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:6px 0 14px}
.hky-datenav strong{font-size:15px}
.hky-btn.is-disabled{opacity:.45;cursor:default}
.hky-emptystate{border-style:dashed;background:var(--hky-inset)}
.hky-emptystate p{margin:0 0 12px;color:var(--hky-chip-ink);font-size:15px;max-width:760px}

/* the two doors — both audiences, directly under the search box */
.hky-doors{display:grid;grid-template-columns:1fr 1fr;gap:12px;width:100%;max-width:760px;margin:14px auto 0;text-align:left;font-family:var(--hky-font)}
.hky-door{display:block;border-radius:var(--hky-radius);padding:12px 14px;background:#ffffff14;border:1px solid #ffffff38;color:#fff!important;text-decoration:none!important}
.hky-door:hover,.hky-door:focus-visible{background:#ffffff24;border-color:var(--hky-accent);outline:0}
.hky-door b{display:block;font-size:16px;letter-spacing:-.2px}
.hky-door span{font-size:12.5px;color:#c6d0dc}
.hky-door b span{color:inherit;font-size:inherit}
@media(max-width:520px){.hky-doors{gap:8px}.hky-door{padding:10px}.hky-door b{font-size:14px}.hky-door>span{display:none}}

/* audience tiles on the Play hub */
.hky-tile b{font-size:16px}
.hky-steps{counter-reset:s;list-style:none;padding:0;margin:0}
.hky-steps li{counter-increment:s;position:relative;padding:0 0 12px 38px;font-size:15px}
.hky-steps li::before{content:counter(s);position:absolute;left:0;top:0;width:26px;height:26px;border-radius:50%;background:var(--hky-chrome);color:#fff;font-weight:800;font-size:13px;display:grid;place-items:center}

/* tools */
.hky-tool{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:20px;align-items:start}
@media(max-width:820px){.hky-tool{grid-template-columns:minmax(0,1fr)}}
.hky-field{display:block;margin:0 0 12px;font-size:14px;font-weight:600}
.hky-field input,.hky-field select,.hky-field textarea{display:block;width:100%;margin-top:4px;padding:9px 11px;border:1px solid var(--hky-line-2);border-radius:var(--hky-radius-sm);font:15px var(--hky-font);background:var(--hky-card);box-sizing:border-box}
.hky-field textarea{min-height:150px;resize:vertical}
.hky-field small{display:block;font-weight:400;color:var(--hky-muted);margin-top:3px}
.hky-seg{display:flex;gap:6px;flex-wrap:wrap;margin-top:4px}
.hky-seg label{font-weight:600;font-size:13px;border:1px solid var(--hky-line-2);border-radius:999px;padding:5px 12px;cursor:pointer;background:var(--hky-card)}
.hky-seg input{position:absolute;width:1px;height:1px;margin:0;opacity:0;pointer-events:none}
.hky-seg input:checked+span{color:var(--hky-accent-ink)}
.hky-seg label:has(input:checked){border-color:var(--hky-accent);box-shadow:0 0 0 2px #1abc9c33}
.hky-seg label:has(input:focus-visible){outline:2px solid var(--hky-link)}
.hky-result{background:var(--hky-quote);border:1px solid var(--hky-result-line);border-radius:var(--hky-radius);padding:16px 18px}
.hky-result h3{margin:0 0 8px;font-size:17px}
.hky-result .hky-big{font-size:26px;font-weight:800;letter-spacing:-.4px;font-variant-numeric:tabular-nums}
.hky-why{font-size:14px;color:var(--hky-text-2);margin:10px 0 0;padding-left:18px}
.hky-why li{margin-bottom:4px}
.hky-checklist{list-style:none;padding:0;margin:0;columns:2;column-gap:24px;font-size:15px}
@media(max-width:640px){.hky-checklist{columns:1}}
.hky-checklist li{break-inside:avoid;padding:5px 0;display:flex;gap:8px;align-items:flex-start}
.hky-checklist input{margin-top:4px;flex:0 0 auto}
.hky-checklist small{display:block;color:var(--hky-muted);font-size:12.5px}
.hky-lines{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.hky-lines .hky-card{margin:0;padding:12px 14px}
.hky-lines h4{margin:0 0 6px;font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--hky-muted)}
.hky-lines ul{list-style:none;margin:0;padding:0;font-size:15px}
.hky-statgrid input{width:100%;box-sizing:border-box;padding:6px 8px;border:1px solid var(--hky-line-2);border-radius:6px;font:14px var(--hky-font)}
.hky-statgrid input[type=number]{max-width:64px;text-align:right}
.hky-sources{font-size:13.5px;color:var(--hky-chip-ink)}
.hky-sources li{margin-bottom:4px;word-break:break-word}
.hky-article .hky-note{font-size:14px}
.hky-region-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:16px}
@media print{
  .hky-ticker,.hky-subnav,.hky-disclaimer,.hky-crumbs,.hky-noprint,#search-header,footer,nav{display:none!important}
  .hky-main{padding:0}.hky-card,.hky-result{box-shadow:none;border-color:#999}
  body{background:#fff!important}
}

/* ---------- blocks on the engine's home page (home.above_feed, home.below_feed) ---------- */
.hky-homeblock{margin:12px 0 16px;font-family:var(--hky-font)}
.hky-homeblock .hky-ticker{border-radius:var(--hky-radius);overflow:hidden;margin:0 0 12px}
.hky-homeblock .hky-ticker__tabs,.hky-homeblock .hky-ticker__strip{max-width:none}
.hky-homeblock .hky-card{color:var(--hky-ink)}
.hky-homeblock .hky-doors{margin:0 0 12px}
.hky-homeblock .hky-door{background:var(--hky-card);border-color:var(--hky-line);color:var(--hky-text-2)!important;box-shadow:var(--hky-shadow)}
.hky-homeblock .hky-door:hover,.hky-homeblock .hky-door:focus-visible{background:var(--hky-card);border-color:var(--hky-accent)}
.hky-homeblock .hky-door b{color:var(--hky-ink)}.hky-homeblock .hky-door>span{color:var(--hky-muted)}
.hky-glance .hky-rail{display:block;column-width:270px;column-gap:14px}
.hky-glance .hky-rail .hky-card{margin:0 0 14px;break-inside:avoid}
.hky-home__blog{margin:0 0 16px}
.hky-home__blog a{color:var(--hky-link)}
.hky-main .hky-h1,.hky-main .hky-h2{color:var(--hky-ink)}
.hky-main .hky-hero h1,.hky-main .hky-hero .hky-h1{color:#fff}
.hky-disclaimer{margin:28px 0 0;font-size:12px;color:var(--hky-muted);max-width:900px}

/* ---------- dark mode ---------- */
/* The chrome (ticker, team heroes, badges) is already dark and stays as it is; the surfaces and the text flip.
   Values are the engine's own dark tokens (app.css section 14), with fallbacks so a missing token cannot paint white. */
html[data-fs-theme="dark"]{
  --hky-ink:var(--fs-ink,#c6d0dc); --hky-muted:var(--fs-ink-3,#8fa2b8); --hky-line:var(--fs-line-3,#2a3542); --hky-bg:var(--fs-page-bg,#10151c);
  --hky-card:var(--fs-surface,#161d26); --hky-link:var(--fs-link,#79b8ff); --hky-accent-ink:#3fe0c0;
  --hky-inset:var(--fs-surface-2,#1d2631); --hky-hover:var(--fs-surface-3,#232e3c); --hky-chip:#243040; --hky-chip-ink:#c6d0dc; --hky-text-2:var(--fs-ink-2,#b4bfcd);
  --hky-line-2:var(--fs-line-2,#2f3c4c); --hky-line-3:#3a4a5e; --hky-quote:#14262a; --hky-warn-bg:#3a2e12; --hky-warn:#f2c46b; --hky-warn-line:#5a4720;
  --hky-win-ink:#4ade80; --hky-loss-ink:#ff8a80; --hky-out-bg:#3a1c1a; --hky-q-bg:#3a2e12; --hky-ok-bg:#12301f; --hky-result-line:#1f4a40;
  --hky-win:#e6edf5; --hky-shadow:0 1px 2px rgba(0,0,0,.4),0 6px 20px rgba(0,0,0,.28);
}
/* the same chip everywhere in dark mode: a black or navy logo would vanish on a dark card */
html[data-fs-theme="dark"] .hky-logo{background:#fff;border-radius:4px;padding:1px;box-sizing:border-box}
html[data-fs-theme="dark"] .hky-subnav a:hover{color:#fff}
html[data-fs-theme="dark"] .hky-chips a.is-active,html[data-fs-theme="dark"] .hky-chip.is-active{background:var(--hky-accent);color:#04241d!important;border-color:var(--hky-accent)}
html[data-fs-theme="dark"] .hky-btn--primary{background:#2f6fd6;border-color:#2f6fd6;color:#fff!important}
html[data-fs-theme="dark"] .hky-game__score.hky-flash{color:#04241d}
html[data-fs-theme="dark"] .hky-article h2,html[data-fs-theme="dark"] .hky-article h3{color:var(--fs-heading,#dde5ef)}
html[data-fs-theme="dark"] .hky-post-card h3 a{color:var(--hky-ink)!important}
html[data-fs-theme="dark"] .hky-field input,html[data-fs-theme="dark"] .hky-field select,html[data-fs-theme="dark"] .hky-field textarea,html[data-fs-theme="dark"] .hky-statgrid input,html[data-fs-theme="dark"] .hky-filter input,html[data-fs-theme="dark"] .hky-filter select{background:var(--hky-inset);color:var(--hky-ink)}
