/* 4Futbol module styles. Every selector is ftb- prefixed so nothing collides with the host theme (app.css).
   Tokens mirror the live site, read from www.4futbol.com on 2026-09-20: chrome #232F3E, accent #1abc9c, body #fafbfd, 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{
  --ftb-chrome:#232F3E; --ftb-chrome-2:#1a2330; --ftb-ink:#0e1116; --ftb-muted:#5b6472; --ftb-line:#e3e7ee; --ftb-bg:#fafbfd; --ftb-card:#fff;
  --ftb-accent:#1abc9c; --ftb-accent-ink:#0b7a64; --ftb-link:#0b57d0; --ftb-live:#d92d20; --ftb-warn-bg:#fff6dd; --ftb-warn:#8a5a00;
  --ftb-win:#0a7a3e; --ftb-draw:#8a6d00; --ftb-loss:#b42318;
  --ftb-inset:#f5f7fa; --ftb-hover:#f8fafc; --ftb-chip:#eef1f6; --ftb-chip-ink:#3b4554; --ftb-text-2:#2b3442; --ftb-line-2:#cfd6e0; --ftb-line-3:#b8c1cf; --ftb-quote:#f3fbf9; --ftb-warn-line:#f2dca0;
  --ftb-out-bg:#fdecea; --ftb-ok-bg:#e8f5ee; --ftb-me:#f0f8ff; --ftb-src-bg:#e8f8f4; --ftb-empty-bg:#fffdf6; --ftb-near-bg:#fff1e0; --ftb-near-ink:#9a4a00; --ftb-door-link:#f1f4f9; --ftb-door-hover:#e3e9f2;
  --ftb-pitch:#eaf5ee; --ftb-pitch-line:#9bb3a6; --ftb-pitch-small:#d6efe0; --ftb-pitch-ink:#5b6472; --ftb-ball:#111;
  --ftb-radius:12px; --ftb-radius-sm:8px; --ftb-shadow:0 1px 2px rgba(16,24,40,.05),0 6px 20px rgba(16,24,40,.06);
  --ftb-font:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}
.ftb-wrap{max-width:1240px;margin:0 auto;padding:0 16px}
.ftb-main{padding-top:20px;padding-bottom:48px;font-family:var(--ftb-font);color:var(--ftb-ink);line-height:1.5}
.ftb-main a{color:var(--ftb-link);text-decoration:none}.ftb-main a:hover{text-decoration:underline}
.ftb-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ftb-skip{position:absolute;left:-999px;top:0;background:var(--ftb-card);color:var(--ftb-ink);padding:8px 12px;z-index:100}.ftb-skip:focus{left:8px;top:8px}

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

/* ---------- ticker ---------- */
.ftb-ticker{background:#10161f;color:#fff;font-family:var(--ftb-font)}
.ftb-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}
.ftb-ticker__tab{background:#1c2633;color:#c6d0dc;border:0;border-radius:999px;padding:4px 12px;font:600 12px var(--ftb-font);cursor:pointer;white-space:nowrap;display:inline-flex;gap:6px;align-items:center}
.ftb-ticker__tab.is-active{background:var(--ftb-accent);color:#04241d}
.ftb-ticker__tab:focus-visible,.ftb-follow:focus-visible,.ftb-match:focus-visible{outline:2px solid #fff;outline-offset:2px}
.ftb-dot{width:7px;height:7px;border-radius:50%;background:var(--ftb-live);box-shadow:0 0 0 0 #d92d2088;animation:ftb-pulse 1.6s infinite}
.ftb-ticker__all{margin-left:auto;color:#9fe8d8;font-size:12px;font-weight:600;text-decoration:none;white-space:nowrap;padding-left:12px}
.ftb-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}
.ftb-ticker__strip.is-active{display:flex}
.ftb-ticker__empty{color:#9fb0c3;font-size:13px;padding:10px 0}
@keyframes ftb-pulse{70%{box-shadow:0 0 0 7px #d92d2000}100%{box-shadow:0 0 0 0 #d92d2000}}

/* ---------- match card ---------- */
.ftb-match{display:block;text-decoration:none!important;color:inherit;font-family:var(--ftb-font)}
.ftb-match__row{display:flex;align-items:center;gap:8px;font-weight:500;opacity:.88}
.ftb-match__row.is-winner,.ftb-match.is-live .ftb-match__row,.ftb-match.is-pre .ftb-match__row{opacity:1}
.ftb-match__row.is-winner{font-weight:800}
.ftb-match__name{flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ftb-match__score{font-variant-numeric:tabular-nums;font-weight:800;min-width:1.2em;text-align:right}
.ftb-match__score.ftb-flash{animation:ftb-flash 2.4s ease-out}
.ftb-pens{font-size:.8em;color:var(--ftb-muted);font-weight:700}
@keyframes ftb-flash{0%{background:var(--ftb-accent);color:#04241d;border-radius:4px}100%{background:transparent}}
.ftb-match__status{display:flex;flex-wrap:wrap;gap:4px 8px;font-size:11px;margin-top:4px}
.ftb-match__meta{opacity:.75}
.ftb-live{color:var(--ftb-live);font-weight:800;text-transform:uppercase;font-size:.92em;letter-spacing:.04em}
.ftb-live::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor;margin-right:4px;vertical-align:1px;animation:ftb-pulse 1.6s infinite}
.ftb-pending{color:var(--ftb-warn);font-weight:700}
.ftb-off{color:var(--ftb-muted);font-weight:700;text-transform:uppercase;font-size:.92em}
.ftb-match--ticker{flex:0 0 auto;min-width:150px;max-width:210px;background:#1c2633;color:#fff;border-radius:var(--ftb-radius-sm);padding:7px 10px;font-size:13px;scroll-snap-align:start;border:1px solid transparent}
.ftb-match--ticker:hover{border-color:#3a4a5e}
.ftb-match--ticker .ftb-match__status{color:#9fb0c3;flex-wrap:nowrap;white-space:nowrap;overflow:hidden}
.ftb-match--ticker .ftb-live{color:#ff7a6e}
.ftb-match--ticker.is-mine{border-color:var(--ftb-accent)}
/* dark crests need a light chip on the dark ticker */
.ftb-match--ticker .ftb-logo{background:#fff;border-radius:4px;padding:1px;box-sizing:border-box}
.ftb-board{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin:12px 0 24px}
.ftb-match--board{background:var(--ftb-card);border:1px solid var(--ftb-line);border-radius:var(--ftb-radius);padding:12px 14px;box-shadow:var(--ftb-shadow);font-size:15px;color:var(--ftb-ink)!important}
.ftb-match--board:hover{border-color:var(--ftb-line-3)}
.ftb-match--board .ftb-match__row{padding:3px 0}
.ftb-match--board .ftb-match__status{color:var(--ftb-muted);font-size:12px;border-top:1px solid var(--ftb-line);margin-top:8px;padding-top:8px}
.ftb-match--board.is-mine{box-shadow:0 0 0 2px var(--ftb-accent),var(--ftb-shadow)}
.ftb-dayhead{font-size:14px;text-transform:uppercase;letter-spacing:.06em;color:var(--ftb-muted);margin:22px 0 0}
.ftb-matchhead .ftb-match__row--big{padding:8px 0;font-size:20px;opacity:1}
.ftb-matchhead .ftb-match__score{font-size:32px}
.ftb-matchhead__comp{margin:0 0 10px}
.ftb-match__status--big{font-size:14px}

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

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

/* ---------- tables ---------- */
.ftb-tablewrap{overflow-x:auto;margin:0 0 16px;border:1px solid var(--ftb-line);border-radius:var(--ftb-radius);background:var(--ftb-card);box-shadow:var(--ftb-shadow)}
.ftb-table{width:100%;border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums}
.ftb-table caption{text-align:left;font-weight:800;padding:12px 14px 8px;font-size:15px}
.ftb-table th,.ftb-table td{padding:8px 12px;border-top:1px solid var(--ftb-line);text-align:left;white-space:nowrap}
.ftb-table thead th{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--ftb-muted);background:var(--ftb-inset);border-top:0;font-weight:700}
.ftb-table tbody th{font-weight:600}
.ftb-table .n{text-align:right}.ftb-table .c{text-align:center}.ftb-table tbody tr:hover{background:var(--ftb-hover)}
.ftb-table tbody tr[data-me]{background:var(--ftb-me);box-shadow:inset 2px 0 0 var(--ftb-link)}
.ftb-table--compact th,.ftb-table--compact td{padding:6px 10px}
.ftb-table [data-sort]{cursor:pointer;user-select:none}.ftb-table [data-sort]::after{content:" ↕";opacity:.35}
.ftb-table [aria-sort=ascending]::after{content:" ↑";opacity:1}.ftb-table [aria-sort=descending]::after{content:" ↓";opacity:1}
.ftb-strong{font-weight:800}
.ftb-w{color:var(--ftb-win);font-weight:800}.ftb-l{color:var(--ftb-loss);font-weight:800}.ftb-d{color:var(--ftb-draw);font-weight:800}
.ftb-tag{display:inline-block;font-size:11px;font-weight:700;padding:1px 7px;border-radius:999px;background:var(--ftb-chip);color:var(--ftb-chip-ink)}
.ftb-tag--out{background:var(--ftb-out-bg);color:var(--ftb-loss)}.ftb-tag--ok{background:var(--ftb-ok-bg);color:var(--ftb-win)}
.ftb-form{display:inline-flex;gap:3px}
.ftb-form i{font-style:normal;font-size:10px;font-weight:800;width:16px;height:16px;border-radius:3px;display:grid;place-items:center;color:#fff}
.ftb-form__w{background:var(--ftb-win)}.ftb-form__d{background:#9a8600}.ftb-form__l{background:var(--ftb-loss)}
/* table zones: a coloured left edge plus a key — never colour alone */
.ftb-z-ucl td:first-child,.ftb-z-ucl th:first-child{box-shadow:inset 3px 0 0 #0b57d0}
.ftb-z-ucl-q td:first-child,.ftb-z-ucl-q th:first-child{box-shadow:inset 3px 0 0 #6aa2f7}
.ftb-z-uel td:first-child,.ftb-z-uel th:first-child{box-shadow:inset 3px 0 0 #f59e0b}
.ftb-z-uecl td:first-child,.ftb-z-uecl th:first-child{box-shadow:inset 3px 0 0 #10b981}
.ftb-z-playoff td:first-child,.ftb-z-playoff th:first-child{box-shadow:inset 3px 0 0 #1abc9c}
.ftb-z-playoff-2 td:first-child,.ftb-z-playoff-2 th:first-child{box-shadow:inset 3px 0 0 #7dd3c0}
.ftb-z-rel td:first-child,.ftb-z-rel th:first-child{box-shadow:inset 3px 0 0 #b42318}
.ftb-z-rel-po td:first-child,.ftb-z-rel-po th:first-child{box-shadow:inset 3px 0 0 #f08a80}
.ftb-zonekey{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:12px;color:var(--ftb-muted);margin:-8px 0 16px}
.ftb-zonekey__item{display:inline-flex;align-items:center;gap:6px}
.ftb-zonekey__item i{width:10px;height:10px;border-radius:2px;display:inline-block}
.ftb-zonekey .ftb-z-ucl{background:#0b57d0}.ftb-zonekey .ftb-z-ucl-q{background:#6aa2f7}.ftb-zonekey .ftb-z-uel{background:#f59e0b}.ftb-zonekey .ftb-z-uecl{background:#10b981}
.ftb-zonekey .ftb-z-playoff{background:#1abc9c}.ftb-zonekey .ftb-z-playoff-2{background:#7dd3c0}.ftb-zonekey .ftb-z-rel{background:#b42318}.ftb-zonekey .ftb-z-rel-po{background:#f08a80}

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

/* ---------- goals list ---------- */
.ftb-goals{list-style:none;padding:0;margin:0;font-size:15px}
.ftb-goals li{display:flex;align-items:center;gap:10px;padding:7px 0;border-top:1px solid var(--ftb-line)}
.ftb-goals li:first-child{border:0}
.ftb-goals__min{font-variant-numeric:tabular-nums;font-weight:800;min-width:42px;color:var(--ftb-muted)}
.ftb-goals__who{flex:1}
.ftb-goals__away{flex-direction:row-reverse;text-align:right}

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

/* ---------- diagrams ---------- */
.ftb-diagram{margin:22px 0;max-width:520px}
.ftb-diagram svg,.ftb-sizes__draw svg{width:100%;height:auto;border-radius:var(--ftb-radius);border:1px solid var(--ftb-line)}
.ftb-diagram figcaption,.ftb-sizes__draw figcaption{font-size:13px;color:var(--ftb-muted);margin-top:8px;font-style:italic}
.ftb-d-grass{fill:var(--ftb-pitch)}
.ftb-d-line{stroke:var(--ftb-pitch-line);stroke-width:1.5;fill:none}
.ftb-d-half{stroke:var(--ftb-pitch-line);stroke-width:1.5;stroke-dasharray:4 3}
.ftb-d-goal{stroke:var(--ftb-pitch-ink);stroke-width:2}
.ftb-d-off{stroke:#e8590c;stroke-width:2;stroke-dasharray:5 4}
.ftb-d-pass{stroke:#0b57d0;stroke-width:2;stroke-dasharray:4 3}
.ftb-d-small{fill:var(--ftb-pitch-small);stroke:#0b7a64;stroke-width:2}
.ftb-d-att circle{fill:#0b57d0}.ftb-d-def circle{fill:#b42318}
.ftb-d-att text,.ftb-d-def text{fill:#fff;font:700 10px var(--ftb-font);text-anchor:middle}
.ftb-d-ball{fill:var(--ftb-ball)}
.ftb-d-label{fill:var(--ftb-pitch-ink);font:600 9px var(--ftb-font)}
.ftb-d-big{fill:var(--ftb-accent-ink);font:800 16px var(--ftb-font)}

/* ---------- field size tool ---------- */
.ftb-sizes__tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.ftb-sizes__panel{display:none}.ftb-sizes__panel.is-active{display:block}
.ftb-sizes__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}
@media(max-width:820px){.ftb-sizes__grid{grid-template-columns:1fr}}

/* ---------- home ---------- */
.ftb-doors{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:0 0 20px}
@media(max-width:760px){.ftb-doors{grid-template-columns:1fr}}
.ftb-door{background:var(--ftb-card);border:1px solid var(--ftb-line);border-radius:var(--ftb-radius);box-shadow:var(--ftb-shadow);overflow:hidden}
.ftb-door__head{display:flex;gap:14px;align-items:center;padding:16px 18px;text-decoration:none!important;color:var(--ftb-ink)!important;border-bottom:1px solid var(--ftb-line)}
.ftb-door__head:hover{background:var(--ftb-hover)}
.ftb-door__icon{font-size:30px;line-height:1}
.ftb-door__head b{display:block;font-size:18px}
.ftb-door__head span span{font-size:14px;color:var(--ftb-muted)}
.ftb-door>h2{margin:0;padding:14px 18px 4px;font-size:22px}.ftb-door>p{margin:0;padding:0 18px;font-size:15px}
.ftb-door__links{display:flex;flex-wrap:wrap;gap:6px;padding:12px 18px 16px}
.ftb-door__links a{font-size:13px;font-weight:600;padding:4px 10px;border-radius:999px;background:var(--ftb-door-link);color:var(--ftb-text-2)!important;text-decoration:none!important}
.ftb-door__links a:hover{background:var(--ftb-door-hover)}
.ftb-rail .ftb-card{padding:14px}
.ftb-rail h2{font-size:12px;text-transform:uppercase;letter-spacing:.07em;color:var(--ftb-muted);margin:0 0 10px}
.ftb-rail .ftb-tablewrap{box-shadow:none;margin:0;border:0}
.ftb-list{list-style:none;padding:0;margin:0;font-size:14px}.ftb-list li{display:flex;justify-content:space-between;gap:10px;padding:6px 0;border-top:1px solid var(--ftb-line)}.ftb-list li:first-child{border:0}
.ftb-topics{background:var(--ftb-chrome);color:#dfe7ef;border-radius:var(--ftb-radius);padding:12px;font-size:14px}
.ftb-topics h2{font-size:11px;letter-spacing:.1em;color:#9fb0c3;margin:0 0 8px}
.ftb-topics a{display:block;color:#dfe7ef!important;padding:6px 4px;border-top:1px solid #ffffff14;text-decoration:none!important}.ftb-topics a:hover{color:#fff!important;background:#ffffff0d}
.ftb-feeditem{padding:12px 0;border-top:1px solid var(--ftb-line)}.ftb-feeditem:first-of-type{border:0}
.ftb-feeditem a{font-weight:600;font-size:16px}
.ftb-hubgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px;margin-bottom:16px}
.ftb-hubgrid a{display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid var(--ftb-line);border-radius:var(--ftb-radius-sm);background:var(--ftb-card);color:var(--ftb-ink)!important;font-weight:600;font-size:14px;text-decoration:none!important}
.ftb-hubgrid a:hover{border-color:var(--ftb-line-3)}
.ftb-hubgrid a span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ftb-filter{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:0 0 4px}
.ftb-filter input,.ftb-filter select{padding:8px 12px;border:1px solid var(--ftb-line);border-radius:999px;font:14px var(--ftb-font);background:var(--ftb-card);min-width:0}
.ftb-filter input{flex:1 1 220px}
.ftb-tile{display:block;text-decoration:none!important;color:var(--ftb-ink)!important;margin:0}a.ftb-tile:hover{border-color:var(--ftb-line-3)}
.ftb-tile b{display:block;font-size:17px;margin-bottom:4px}.ftb-tile span{font-size:14px;color:var(--ftb-muted)}
.ftb-tile--tool{border-left:4px solid var(--ftb-accent)}
.ftb-champ{display:flex;flex-wrap:wrap;gap:24px;align-items:center}
.ftb-champ b{display:block;font-size:22px;letter-spacing:-.3px}
.ftb-champ__final{flex:1 1 100%;border-top:1px solid var(--ftb-line);padding-top:12px}
.ftb-champ__final b{font-size:18px}

@media (prefers-reduced-motion:reduce){.ftb-dot,.ftb-live::before,.ftb-match__score.ftb-flash{animation:none}}
/* the hidden attribute must win over display:flex/grid on filtered rows */
.ftb-main [hidden]{display:none!important}
.ftb-empty-state{border-left:4px solid var(--ftb-warn);background:var(--ftb-card)df6}
.ftb-empty-state p{font-size:15px}
.ftb-matchhead__h1{margin-bottom:2px}

/* ===================== 4Futbol additions ===================== */
.ftb-h1__sub{font-size:.55em;font-weight:600;color:var(--ftb-muted);white-space:nowrap}
.ftb-h3{font-size:16px;margin:0 0 6px;font-weight:700}
.ftb-pills{display:inline-flex;gap:6px;flex-wrap:wrap}
.ftb-pill{display:inline-block;font:700 11px/1 var(--ftb-font);padding:4px 9px;border-radius:999px;background:var(--ftb-chip);color:var(--ftb-chip-ink);white-space:nowrap}
.ftb-pill--live{background:var(--ftb-out-bg);color:var(--ftb-loss)}.ftb-pill--near-live{background:var(--ftb-card)1e0;color:var(--ftb-near-ink)}.ftb-pill--results{background:var(--ftb-chip);color:var(--ftb-chip-ink)}.ftb-pill--partial{background:var(--ftb-warn-bg);color:var(--ftb-warn)}
.ftb-chips--tabs{border-bottom:1px solid var(--ftb-line);padding-bottom:10px}
.ftb-clubgrid{list-style:none;margin:0 0 14px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:6px 14px;font-size:14.5px}
.ftb-clubgrid li{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ftb-d-spot{fill:var(--ftb-pitch-line)}
.ftb-livefoot{font-size:12.5px;color:var(--ftb-muted);padding-top:18px;padding-bottom:6px}.ftb-livefoot p{margin:0 0 6px}

/* ---------- two-legged ties ---------- */
.ftb-ties{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;margin-bottom:8px}
.ftb-tie{padding:12px 14px;margin:0}
.ftb-tie__row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:3px 0;opacity:.78}
.ftb-tie__row.is-winner{opacity:1;font-weight:800}
.ftb-tie__agg{font:800 18px var(--ftb-font);font-variant-numeric:tabular-nums}
.ftb-tie__legs{display:flex;gap:8px;margin-top:8px;border-top:1px solid var(--ftb-line);padding-top:8px}
.ftb-tie__leg{flex:1;display:flex;flex-direction:column;font-size:12px;color:var(--ftb-muted)!important;min-width:0}
.ftb-tie__leg b{color:var(--ftb-ink);font-size:14px}
.ftb-tie__foot{margin:8px 0 0;font-size:13px}
.ftb-tie__note{margin:6px 0 0;font-size:12px;color:var(--ftb-muted)}

/* ---------- study: hub, formation explorer, scouting report ---------- */
.ftb-toolcard{display:block;color:inherit!important;text-decoration:none!important;transition:box-shadow .15s,transform .15s}
.ftb-toolcard:hover{box-shadow:0 2px 4px rgba(16,24,40,.06),0 12px 28px rgba(16,24,40,.12);transform:translateY(-1px)}
.ftb-toolcard p{margin:0;font-size:14.5px;color:var(--ftb-text-2)}.ftb-toolcard .ftb-pill{float:right}
.ftb-door--study{border-top:3px solid #6c5ce7}.ftb-door--follow{border-top:3px solid var(--ftb-accent)}
.ftb-fx__controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:12px}
.ftb-fx__controls select{padding:8px 12px;border:1px solid var(--ftb-line);border-radius:var(--ftb-radius-sm);font:600 15px var(--ftb-font);background:var(--ftb-card)}
.ftb-fx__phases{display:flex;flex-wrap:wrap;gap:6px}
.ftb-fx__stage{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}
@media(max-width:900px){.ftb-fx__stage{grid-template-columns:1fr}}
.ftb-fx__pitch svg{width:100%;height:auto;display:block;border-radius:10px}
.ftb-fx__player{cursor:pointer;outline:none}
.ftb-fx__player circle{fill:#0b57d0;stroke:#fff;stroke-width:2;transition:cx .35s ease,cy .35s ease}
.ftb-fx__player text{fill:#fff;font:700 9px var(--ftb-font);pointer-events:none}
.ftb-fx__player:hover circle,.ftb-fx__player:focus circle{fill:#0842a0}
.ftb-fx__player.is-on circle{fill:var(--ftb-accent);stroke:#04241d}.ftb-fx__player.is-on text{fill:#04241d}
.ftb-fx__panel{margin:0}.ftb-fx__panel p{font-size:14.5px;margin:0 0 10px}
.ftb-sr-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 14px}
.ftb-sr-grid--2{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:10px}
@media(max-width:720px){.ftb-sr-grid,.ftb-sr-grid--2{grid-template-columns:1fr}}
.ftb-sr-form label{display:flex;flex-direction:column;gap:4px;font:600 12.5px var(--ftb-font);color:var(--ftb-muted)}
.ftb-sr-form input,.ftb-sr-form select,.ftb-sr-form textarea{font:15px var(--ftb-font);color:var(--ftb-ink);padding:7px 10px;border:1px solid var(--ftb-line);border-radius:var(--ftb-radius-sm);background:var(--ftb-card);width:100%;min-width:0}
.ftb-sr-form textarea{resize:vertical;line-height:1.5}
.ftb-sr-wide{margin-top:10px}
.ftb-sr-form .ftb-card{margin-bottom:14px}
.ftb-sr-grades{border:1px solid var(--ftb-line);border-radius:var(--ftb-radius-sm);margin:0 0 10px;padding:8px 12px 10px;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:6px 16px}
.ftb-sr-grades legend{font:800 12px var(--ftb-font);text-transform:uppercase;letter-spacing:.05em;color:var(--ftb-accent-ink);padding:0 6px}
.ftb-sr-grades label{flex-direction:row;align-items:center;justify-content:space-between;color:var(--ftb-ink);font-weight:500;font-size:14px}
.ftb-sr-grades select{width:96px;padding:4px 6px;font-size:13.5px}

@media print{
  .ftb-ticker,.ftb-subnav,.sa-topbar,.sa-header,.sa-footer,.ftb-crumbs,.ftb-actions,.ftb-cols aside,.ftb-noprint,.ftb-skip{display:none!important}
  .ftb-tablewrap,.ftb-card{box-shadow:none;border-color:#999}
  .ftb-sr-form .ftb-card{break-inside:avoid;padding:8px 10px;margin-bottom:8px}
  .ftb-sr-form input,.ftb-sr-form select,.ftb-sr-form textarea{border:0;border-bottom:1px solid #bbb;border-radius:0;padding:2px 0;font-size:12.5px;appearance:none;-webkit-appearance:none;background:none}
  .ftb-sr-grades{grid-template-columns:repeat(3,1fr)}
}

/* ---------- inside the engine's pages ---------- */
/* The engine makes <main> a flex item, which would shrink the module's column to its content. */
main.ftb-main{width:100%;box-sizing:border-box;color:var(--ftb-ink)}
.ftb-standfirst{margin:0 0 16px}
/* blocks the kit places inside the home feed's column */
.ftb-homeblock{margin:12px 0 16px;font-family:var(--ftb-font);color:var(--ftb-ink)}
.ftb-homeblock .ftb-ticker{border-radius:var(--ftb-radius);overflow:hidden;margin:0 0 12px}
.ftb-homeblock .ftb-ticker__tabs,.ftb-homeblock .ftb-ticker__strip{max-width:none}
.ftb-homeblock .ftb-doors{padding:0;max-width:none}
.ftb-homeblock a{color:var(--ftb-link)}
.ftb-homeblock .ftb-post-card__art,.ftb-homeblock .ftb-ticker a{color:inherit}
.ftb-homeblock .ftb-h2,.ftb-main .ftb-h1,.ftb-main .ftb-h2{color:var(--ftb-ink)}
.ftb-glance .ftb-home__rail{column-width:290px;column-gap:14px;display:block}
.ftb-glance .ftb-home__rail .ftb-card{margin:0 0 14px;break-inside:avoid}
.ftb-homeblock.ftb-livefoot{padding:0;max-width:none}

/* ---------- dark mode ---------- */
/* The chrome (ticker, club 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"]{
  --ftb-ink:var(--fs-ink,#c6d0dc); --ftb-muted:var(--fs-ink-3,#8fa2b8); --ftb-line:var(--fs-line-3,#2a3542); --ftb-bg:var(--fs-page-bg,#10151c);
  --ftb-card:var(--fs-surface,#161d26); --ftb-link:var(--fs-link,#79b8ff); --ftb-accent-ink:#3fe0c0;
  --ftb-inset:var(--fs-surface-2,#1d2631); --ftb-hover:var(--fs-surface-3,#232e3c); --ftb-chip:#243040; --ftb-chip-ink:#c6d0dc; --ftb-text-2:var(--fs-ink-2,#b4bfcd);
  --ftb-line-2:var(--fs-line-2,#2f3c4c); --ftb-line-3:#3a4a5e; --ftb-quote:#14262a; --ftb-warn-bg:#3a2e12; --ftb-warn:#f2c46b; --ftb-warn-line:#5a4720;
  --ftb-win:#4ade80; --ftb-draw:#e6c65c; --ftb-loss:#ff8a80; --ftb-out-bg:#3a1c1a; --ftb-ok-bg:#12301f; --ftb-me:#17283c; --ftb-src-bg:#12302a; --ftb-empty-bg:#2a2414;
  --ftb-near-bg:#3a2a12; --ftb-near-ink:#f2b76b; --ftb-door-link:#243040; --ftb-door-hover:#2e3c4e;
  --ftb-pitch:#14281d; --ftb-pitch-line:#4c6b59; --ftb-pitch-small:#1c3a29; --ftb-pitch-ink:#9fb0c3; --ftb-ball:#e6edf5;
  --ftb-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 crest would vanish on a dark card */
html[data-fs-theme="dark"] .ftb-logo{background:#fff;border-radius:4px;padding:1px;box-sizing:border-box}
html[data-fs-theme="dark"] .ftb-subnav a:hover{color:#fff}
html[data-fs-theme="dark"] .ftb-chips a.is-active,html[data-fs-theme="dark"] .ftb-chip.is-active{background:var(--ftb-accent);color:#04241d!important;border-color:var(--ftb-accent)}
html[data-fs-theme="dark"] .ftb-btn--primary{background:#2f6fd6;border-color:#2f6fd6;color:#fff!important}
html[data-fs-theme="dark"] .ftb-article h2,html[data-fs-theme="dark"] .ftb-article h3{color:var(--fs-heading,#dde5ef)}
html[data-fs-theme="dark"] .ftb-post-card h3 a{color:var(--ftb-ink)!important}
html[data-fs-theme="dark"] .ftb-form__w,html[data-fs-theme="dark"] .ftb-form__l{color:#10151c}
