/* =====================================================================
   ADOstats.nl 2026 — stylesheet (release s02, 2026-10-27)
   Same house style as ADOfans.nl (css/af-2026.css): ADO Pantone colours,
   IBM Plex Sans + Big Shoulders Display, green bars with a gold rule.
   Replaces css/adostats_2025.css (that file stays for reference only).
   ===================================================================== */
:root{
  --green:#006242; --green-2:#00843D; --bar:#154734; --gold:#FFD100; --lime:#C5D900;
  --paper:#f3f1ea; --card:#ffffff; --line:#e4e1d6; --stripe:#f7f6f1; --ink:#1d3328; --muted:#5b6a61;
  --win:#00843D; --draw:#FFD100; --draw-ink:#154734; --draw-text:#b58f00; --loss:#b5322b; --warn:#b4530f;
  --in:#FFD100; --in-ink:#154734; --out:#5fae7f; --future:#eef0ea;
  --radius:12px;
  --font:"IBM Plex Sans",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --display:"Big Shoulders Display","Arial Narrow",Impact,sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;color:var(--ink);font:400 15px/1.5 var(--font);background:#2b3a2f url("/img/website-background-1971.jpg") center top/cover no-repeat fixed}
@media (max-width:1024px){body{background-attachment:scroll}}
a{color:var(--green-2)}
a:hover{color:var(--green)}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
img{max-width:100%;height:auto}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.txt-left{text-align:left}.txt-center{text-align:center}.txt-right{text-align:right}
.txt-align-top{vertical-align:top}.txt-align-middle{vertical-align:middle}.txt-align-bottom{vertical-align:bottom}
.icon-height{height:18px;width:auto}

/* ---------- shell ---------- */
.as-shell{max-width:1320px;margin:0 auto;background:var(--paper);box-shadow:0 0 40px rgba(0,0,0,.3);min-height:100vh}
.as-topbar{display:flex;justify-content:space-between;gap:12px;background:var(--bar);color:#c9d4cc;font-size:12px;padding:7px 24px}
.as-topbar a{color:#c9d4cc;text-decoration:none}
.as-topbar a:hover{color:var(--gold)}
.as-header{background:var(--green);padding:18px 16px;text-align:center}
.as-header a{display:inline-block;max-width:100%}
.as-header img{display:block;width:640px;max-width:100%;height:auto;border-radius:8px}
.as-nav{background:var(--bar);position:sticky;top:0;z-index:20}
.as-nav ul{list-style:none;margin:0;padding:0 12px;display:flex;flex-wrap:wrap}
.as-nav li.ext{margin-left:auto}
.as-nav a{display:block;padding:13px 12px 11px;color:#fff;text-decoration:none;font:600 15px/1.3 var(--font);border-bottom:3px solid transparent}
.as-nav a[aria-current="page"]{border-bottom-color:var(--gold)}
.as-nav a:hover{color:var(--gold);border-bottom-color:var(--lime)}
.as-nav li.ext a{color:var(--gold)}
.as-nav .new{font-size:10px;font-weight:700;background:var(--gold);color:var(--bar);border-radius:4px;padding:1px 4px;margin-left:5px;vertical-align:2px}
.as-menu-btn{display:none}
.as-cols{display:grid;grid-template-columns:230px minmax(0,1fr);gap:20px;padding:24px;align-items:start}
.as-cols>*{min-width:0}
.blk{background:var(--card);border-radius:var(--radius);overflow:hidden;margin-bottom:20px}
.bar{margin:0;padding:12px 16px 10px;background:var(--bar);color:#fff;border-bottom:3px solid var(--gold);font:600 15px/1.3 var(--font);letter-spacing:.04em;text-transform:uppercase;display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}
.bar small{font-size:12px;letter-spacing:0;text-transform:none;color:#cfe0d6;font-weight:400}
.pad{padding:14px 18px}
.lnk{list-style:none;margin:0;padding:6px 14px 10px}
.lnk li+li{border-top:1px solid var(--line)}
.lnk a{display:block;padding:8px 4px;color:var(--ink);text-decoration:none;font-weight:600}
.lnk a:hover{color:var(--green-2)}
.lnk .sep{padding:10px 4px 2px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600}
.as-footer{background:var(--bar);color:#c9d4cc;font-size:13px;padding:18px 24px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px}
.as-footer a{color:var(--gold)}

/* ---------- existing pages (old markup) restyled ---------- */
.as-main>.middle,.as-main>div:not(.blk):not(.grid2){background:var(--card);border-radius:var(--radius);overflow:hidden;margin-bottom:20px}
.middle{padding:0 0 10px}
table{border-collapse:collapse;border-spacing:0;font-variant-numeric:tabular-nums}
table.table-main,table.table-player{width:100%;margin:0 0 4px}
table.table-main caption,table.table-player caption,table.table-left caption{caption-side:top;text-align:left;padding:12px 16px 10px;background:var(--bar);color:#fff;border-bottom:3px solid var(--gold);font:600 15px/1.3 var(--font);letter-spacing:.04em;text-transform:uppercase}
table.table-main th,table.table-player th,table.table-left th{font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-weight:600;padding:8px;border-bottom:2px solid var(--bar);background:none}
table.table-main td,table.table-player td{padding:7px 8px;border-bottom:1px solid var(--line)}
table.table-main tr:nth-child(even) td,table.table-player tr:nth-child(even) td{background:var(--stripe)}
table.table-main a,table.table-player a,table.table-left a{color:var(--ink);font-weight:600;text-decoration:none}
table.table-main a:hover,table.table-player a:hover,table.table-left a:hover{color:var(--green-2);text-decoration:underline}
table.table-main img,table.table-left img{vertical-align:middle}
.tabelhead,#tabelhead{background:var(--bar);color:#fff}
.tablefooter,.middelfooter{padding:8px 16px;color:var(--muted);font-size:13px}
form{margin:0}
form .table-main td{background:none!important}
input[type=checkbox]{accent-color:var(--green-2);width:18px;height:18px;vertical-align:-3px}
button,select,input[type=submit]{font:600 14px/1 var(--font);border:1.5px solid var(--line);border-radius:8px;padding:8px 12px;background:#fff;color:var(--ink);min-height:38px;cursor:pointer}
button:hover,input[type=submit]:hover{border-color:var(--green-2);color:var(--green-2)}
hr{border:0;border-top:1px solid var(--line);margin:12px 0}
h1,h2,h3{color:var(--bar)}
/* sidebar fragments (text/*.html from cron) */
.as-left .includemodule,.as-left table.table-left{width:100%}
table.table-left{width:100%;font-size:12.5px}
table.table-left td{padding:4px 6px;border-top:1px solid var(--line)}
table.table-left tr:has(td a[href^="/teams/3/"]) td,table.table-left tr.ado td{background:var(--green-2);color:#fff}
table.table-left img{width:20px;height:20px;object-fit:contain}

/* ---------- new components ---------- */
.ph{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;padding:14px 18px;border-bottom:1px solid var(--line)}
.ph h1{margin:0;font:800 clamp(26px,3.6vw,38px)/1 var(--display);color:var(--bar);text-wrap:balance}
.spick{display:flex;align-items:center;gap:6px;margin-left:auto}
.spick a{text-decoration:none;font:600 14px/1 var(--font);padding:9px 8px;border-radius:8px;min-height:40px;display:inline-flex;align-items:center}
.spick a:hover{background:var(--stripe)}
.spick select{min-height:40px}
.controls{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;padding:12px 18px}
.group{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.group b{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-right:4px}
.chip{display:inline-flex;align-items:center;font:600 13px/1 var(--font);border:1.5px solid var(--line);background:#fff;color:var(--ink);border-radius:999px;padding:8px 12px;min-height:36px;text-decoration:none}
.chip:hover{border-color:var(--green-2);color:var(--green-2)}
.chip[aria-current="true"],.chip.on{background:var(--bar);border-color:var(--bar);color:#fff}
.chip small{font-weight:400;opacity:.75;margin-left:4px}
.record{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) minmax(0,1.6fr) minmax(0,1fr);gap:12px;padding:16px 18px 6px}
.record div{border-left:3px solid var(--line);padding-left:10px}
.record b{display:inline-block;white-space:nowrap;font:800 34px/1 var(--display);color:var(--bar)}
.record .w b{color:var(--win)}.record .d b{color:var(--draw-text)}.record .l b{color:var(--loss)}
.record span{display:block;font-size:13px;color:var(--muted)}
.recnote{padding:0 18px 10px;font-size:13px;color:var(--muted);margin:0}
.mt{width:100%;border-collapse:collapse}
.mt th{font-size:11px;color:var(--muted);font-weight:600;text-align:left;padding:8px 6px;border-bottom:2px solid var(--bar)}
.mt td{padding:8px 6px;border-bottom:1px solid var(--line);vertical-align:middle}
.mt tr.fut td{color:var(--muted)}
.mt tbody tr:hover td{background:var(--stripe)}
.typ{display:inline-block;font:700 11px/1 var(--font);letter-spacing:.06em;text-transform:uppercase;padding:5px 7px;border-radius:5px;background:#ebe8de;color:#4a564f}
.typ.com{background:var(--bar);color:#fff}.typ.bek{background:#7a4a00;color:#fff}.typ.eur{background:#1d4e89;color:#fff}
.typ.nac,.typ.ply,.typ.bsl{background:#5b3d7a;color:#fff}
.dt{white-space:nowrap;font-size:14px}
.dt small{display:block;color:var(--muted);font-size:12px}
.team{display:flex;align-items:center;gap:8px;font-weight:600}
.team a{color:inherit;text-decoration:none}
.team a:hover{text-decoration:underline}
.team.h{justify-content:flex-end;text-align:right}
.team.ado{color:var(--bar);font-weight:700}
.shirt{width:24px;height:24px;object-fit:contain;flex:none}
.sc{text-align:center;white-space:nowrap}
.sc a,.sc .s{font:800 26px/1 var(--display);color:var(--bar);text-decoration:none}
.sc a:hover{color:var(--green-2)}
.sc small{display:block;font-size:11px;color:var(--muted)}
.wgv{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:6px;color:#fff;font:700 13px/1 var(--font)}
.wgv.W{background:var(--win)}.wgv.G{background:var(--draw);color:var(--draw-ink)}.wgv.V{background:var(--loss)}
.more{display:flex;gap:6px;justify-content:flex-end;align-items:center}
.more a{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;border:1.5px solid var(--line);border-radius:8px;text-decoration:none;color:var(--bar);font-weight:600;font-size:13px;padding:0 8px}
.more a:hover{border-color:var(--green-2);color:var(--green-2)}
.more a.main{background:var(--bar);border-color:var(--bar);color:#fff}
.mcards{display:none}
.scoreboard{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;align-items:center;padding:22px 18px 14px}
.scoreboard .tm{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;font-weight:700;font-size:17px}
.scoreboard .tm a{color:inherit;text-decoration:none}
.scoreboard .tm img{width:56px;height:56px;object-fit:contain}
.scoreboard .tm.ado{color:var(--bar)}
.big{font:800 64px/1 var(--display);color:var(--bar);text-align:center}
.big small{display:block;font:400 13px/1.4 var(--font);color:var(--muted)}
.meta{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 18px;padding:0 18px 16px;font-size:14px;color:var(--muted)}
.meta b{color:var(--ink);font-weight:600}
.pn{display:flex;justify-content:space-between;gap:10px;padding:10px 18px;border-top:1px solid var(--line);font-size:14px}
.pn a{text-decoration:none;font-weight:600}
.grid2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}
.grid2>*{min-width:0}
.lineup{list-style:none;margin:0;padding:6px 0}
.lineup li{display:grid;grid-template-columns:34px 1fr auto;gap:8px;align-items:center;padding:7px 16px;border-top:1px solid var(--line)}
.lineup li:first-child{border-top:0}
.lineup .nr{font:800 18px/1 var(--display);color:var(--muted);text-align:right}
.lineup a{color:var(--ink);font-weight:600;text-decoration:none}
.lineup a:hover{color:var(--green-2);text-decoration:underline}
.ev{display:inline-flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;font-size:12.5px;color:var(--muted)}
.ev span{display:inline-flex;align-items:center;gap:3px;white-space:nowrap}
.sub-h{margin:0;padding:10px 16px 4px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600;border-top:1px solid var(--line)}
.ico{display:inline-block;width:10px;height:13px;border-radius:2px;border:1px solid rgba(0,0,0,.25)}
.ico.y{background:#f2c200}.ico.r{background:#d62d20}.ico.yr{background:linear-gradient(135deg,#f2c200 50%,#d62d20 50%)}
.arrow-in{color:var(--win);font-weight:700}.arrow-out{color:var(--loss);font-weight:700}
.ball{display:inline-block;width:15px;height:15px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3CclipPath id='c'%3E%3Ccircle cx='8' cy='8' r='7.3'/%3E%3C/clipPath%3E%3Ccircle cx='8' cy='8' r='7.3' fill='%23fff'/%3E%3Cg clip-path='url(%23c)' fill='%231d3328' stroke='%231d3328' stroke-width='.7' stroke-linejoin='round'%3E%3Cpolygon points='8.00,5.70 10.19,7.29 9.35,9.86 6.65,9.86 5.81,7.29'/%3E%3Cline x1='8.00' y1='5.70' x2='8.00' y2='3.10' fill='none'/%3E%3Cline x1='10.19' y1='7.29' x2='12.66' y2='6.49' fill='none'/%3E%3Cline x1='9.35' y1='9.86' x2='10.88' y2='11.96' fill='none'/%3E%3Cline x1='6.65' y1='9.86' x2='5.12' y2='11.96' fill='none'/%3E%3Cline x1='5.81' y1='7.29' x2='3.34' y2='6.49' fill='none'/%3E%3Cpolygon points='8.00,2.60 5.53,0.80 6.47,-2.10 9.53,-2.10 10.47,0.80'/%3E%3Cpolygon points='13.14,6.33 14.08,3.42 17.14,3.42 18.08,6.33 15.61,8.13'/%3E%3Cpolygon points='11.17,12.37 14.23,12.37 15.18,15.28 12.70,17.07 10.23,15.28'/%3E%3Cpolygon points='4.83,12.37 5.77,15.28 3.30,17.07 0.82,15.28 1.77,12.37'/%3E%3Cpolygon points='2.86,6.33 0.39,8.13 -2.08,6.33 -1.14,3.42 1.92,3.42'/%3E%3C/g%3E%3Ccircle cx='8' cy='8' r='7.3' fill='none' stroke='%231d3328' stroke-width='1'/%3E%3C/svg%3E") center/contain no-repeat;vertical-align:-3px}
.timeline{list-style:none;margin:0;padding:6px 0}
.timeline li{display:grid;grid-template-columns:1fr 46px 1fr;gap:10px;align-items:center;padding:6px 16px;border-top:1px solid var(--line);font-size:14px}
.timeline li:first-child{border-top:0}
.timeline .m{text-align:center;font:800 17px/1 var(--display);color:var(--bar)}
.timeline .l{text-align:right}
.kv{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;padding:12px 18px 16px;font-size:14px;margin:0}
.kv dt{color:var(--muted)}.kv dd{margin:0;font-weight:600}
.opp{padding:12px 18px 16px;font-size:14px;line-height:1.6;margin:0}
.scroller{overflow-x:auto}
.tt{width:100%;border-collapse:collapse;font-size:14px}
.tt th{font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-weight:600;text-align:right;padding:9px 8px;border-bottom:2px solid var(--bar);white-space:nowrap}
.tt th a{color:inherit;text-decoration:none;display:inline-flex;align-items:center;min-height:28px}
.tt th[aria-sort] a::after{content:" ▾";color:var(--green-2)}
.tt th[aria-sort="ascending"] a::after{content:" ▴"}
.tt td{padding:8px;text-align:right;border-bottom:1px solid var(--line);white-space:nowrap}
.tt .l{text-align:left}
.tt tbody tr:nth-child(even) td{background:var(--stripe)}
.tt a{color:var(--ink);font-weight:600;text-decoration:none}
.tt a:hover{color:var(--green-2);text-decoration:underline}
.tt td.strong{font-weight:700;color:var(--bar)}
.tt tfoot td{font-weight:700;border-top:2px solid var(--bar);border-bottom:0}
.prof{display:grid;grid-template-columns:150px minmax(0,1fr);gap:18px;padding:18px}
.photo{width:150px;aspect-ratio:3/4;border-radius:10px;object-fit:cover;background:var(--stripe);display:flex;align-items:center;justify-content:center;font:800 48px/1 var(--display);color:var(--line);max-width:100%}
.prof h2{margin:0 0 4px;font:800 34px/1.05 var(--display);color:var(--bar)}
.stats{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.stats div{background:var(--stripe);border-radius:10px;padding:10px 14px;min-width:96px}
.stats b{display:block;font:800 28px/1 var(--display);color:var(--bar)}
.stats span{font-size:12px;color:var(--muted)}
.empty{padding:22px 18px;color:var(--muted);margin:0}
/* line-up grid */
.og{border-collapse:separate;border-spacing:0}
.og th,.og td{padding:0;text-align:center}
.og .name{position:sticky;left:0;z-index:2;background:#fff;text-align:left;padding:0 10px 0 14px;white-space:nowrap;border-right:1px solid var(--line);min-width:160px}
.og thead .name{z-index:3;vertical-align:bottom;padding-bottom:8px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.og tbody tr:nth-child(even) td,.og tbody tr:nth-child(even) .name{background:var(--stripe)}
.og .name .nr{display:inline-block;min-width:22px;color:var(--muted);font-size:12px}
.og .name a{font-weight:600;color:var(--ink);text-decoration:none}
.og .name a:hover{text-decoration:underline}
.og .m{width:30px;min-width:30px;border-right:1px solid var(--line)}
.og thead .m{vertical-align:bottom;padding:6px 0 4px}
.og .lbl{writing-mode:vertical-rl;transform:rotate(180deg);font-size:12px;white-space:nowrap;display:inline-block}
.og .lbl a{color:var(--ink);text-decoration:none}
.og .lbl a:hover{text-decoration:underline}
.og .res td{padding:3px 0 6px;font-size:10.5px;font-weight:700;border-bottom:1px solid var(--line)}
.og .res .name{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600}
.og .res .wgv{width:16px;height:16px;font-size:10px;border-radius:4px;margin-top:2px}
.og .warn{color:var(--warn);font-weight:700;font-size:13px;cursor:help}
.og td.future,.og th.future{background:var(--future)!important}
.og th.future .lbl{opacity:.5}
.og tbody td.m{height:30px}
.c{display:flex;align-items:center;justify-content:center;width:24px;height:22px;margin:auto;border-radius:4px;font-size:10px;font-weight:700;position:relative;line-height:1}
.c.x{background:var(--win)}.c.u{background:var(--out);color:#fff}.c.I{background:var(--in);color:var(--in-ink)}
.c.iu{background:linear-gradient(90deg,var(--in) 50%,var(--out) 50%);color:var(--in-ink)}
.c.n{color:var(--muted);font-weight:400}
.c .g{position:absolute;top:-5px;right:-5px;min-width:13px;height:13px;border-radius:7px;background:var(--ink);color:#fff;font-size:9px;line-height:13px;padding:0 2px}
.c .k{position:absolute;bottom:-3px;left:3px;width:7px;height:9px;border-radius:1px;background:#f2c200;border:1px solid rgba(0,0,0,.25)}
.c .k.r{background:#d62d20}
.og .tot{padding:0 8px;font-size:13px;white-space:nowrap;border-right:1px solid var(--line)}
.og thead .tot{vertical-align:bottom;padding-bottom:8px;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.og .tot.b{font-weight:700}
.legend{display:flex;flex-wrap:wrap;gap:8px 18px;padding:12px 18px 16px;font-size:13px;color:var(--muted);border-top:1px solid var(--line)}
.legend span{display:inline-flex;align-items:center;gap:6px}
.legend .c{margin:0}

/* ---------- responsive ---------- */
@media (max-width:860px){
  .as-cols{grid-template-columns:minmax(0,1fr);padding:16px;gap:0}
  .as-left{order:2}
  .grid2{grid-template-columns:minmax(0,1fr);gap:0}
  .as-menu-btn{display:inline-flex;align-items:center;gap:8px;background:none;border:0;color:#fff;font-weight:600;padding:12px 16px;min-height:44px;cursor:pointer}
  .as-nav ul{display:none;padding:0 0 8px}
  .as-nav.open ul{display:block}
  .as-nav li.ext{margin-left:0}
  .as-nav a{padding:11px 16px;border-bottom:0;border-left:4px solid transparent}
  .as-nav a[aria-current="page"]{border-left-color:var(--gold)}
  .as-topbar .d{display:none}
  .record{grid-template-columns:repeat(3,minmax(0,1fr))}
  .mt{display:none}
  .mcards{display:block;list-style:none;margin:0;padding:0}
  .mcards li{padding:12px 14px;border-top:1px solid var(--line)}
  .mcards .top{display:flex;align-items:center;gap:8px;font-size:13px}
  .mcards .top .wgv{margin-left:auto}
  .mcards .row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;align-items:center;margin-top:8px}
  .mcards .team{font-size:14px}
  .mcards .more{margin-top:8px;justify-content:flex-start}
  .scoreboard .tm{font-size:14px}
  .big{font-size:48px}
  .prof{grid-template-columns:96px minmax(0,1fr);gap:14px;padding:14px}
  .photo{width:96px;font-size:32px}
  .prof h2{font-size:26px}
  .spick{margin-left:0}
  .og .name{min-width:0;padding:0 6px 0 8px;font-size:13px}
  /* old pages: wide tables scroll inside their card */
  .as-main table.table-main,.as-main table.table-player{display:block;overflow-x:auto;width:100%}
  .as-main table[style*="width"],.as-main td[style*="width"]{max-width:100%}
}
@media (max-width:420px){.timeline li{grid-template-columns:1fr 38px 1fr;padding:6px 10px;font-size:13px}}
@media (prefers-reduced-motion:no-preference){.chip,.more a{transition:background .15s,color .15s,border-color .15s}}

/* links in definition lists */
.kv a{color:var(--green-2);text-decoration:none}
.kv a:hover{text-decoration:underline}
.bar small a{color:inherit}

/* old pages: headings inside captions/cells, tables placed directly in the main column */
caption h1,caption h2,caption h3{margin:0;font:inherit;color:inherit;letter-spacing:inherit}
table.table-main h1,table.table-main h2,table.table-main h3,table.table-player h2{margin:0;font-size:1em;color:inherit;line-height:1.35}
.as-main>table.table-main,.as-main>table.table-player{background:var(--card);margin-bottom:20px}
table.table-main th a{display:inline-block;min-width:28px;padding:6px 4px;font-size:14px;color:var(--green-2)}
table.table-main th h2{font-size:13px;margin-bottom:6px;color:var(--ink);text-transform:none;letter-spacing:0}

/* per-kwartier grafieken (SVG, s02) */
.qgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 24px;padding:8px 18px 4px}
.qgrid>*{min-width:0}
.qfig{margin:0;padding:10px 0 14px;border-bottom:1px solid var(--line)}
.qfig figcaption{font:700 15px/1.3 var(--font);color:var(--bar)}
.qlegend{display:flex;flex-wrap:wrap;gap:4px 16px;margin:6px 0 2px;font-size:13px;color:var(--muted)}
.qlegend span{display:inline-flex;align-items:center;gap:6px}
.qlegend i{width:12px;height:12px;border-radius:3px;display:inline-block}
.qlegend b{color:var(--ink)}
.qwrap{width:100%}
.qchart{width:100%;height:auto;display:block;font-family:var(--font)}
.qchart .grid{stroke:var(--line);stroke-width:1}
.qchart .base{stroke:#9aa59e;stroke-width:1}
.qchart .ytick{font-size:11px;fill:var(--muted);text-anchor:end}
.qchart .xtick{font-size:12px;fill:var(--ink);text-anchor:middle}
.qchart .ylab{font-size:11px;fill:var(--muted);text-anchor:middle}
.qchart .val{font-size:11px;fill:var(--ink);text-anchor:middle;font-weight:600}
.qchart .hit{fill:transparent}
.qchart .bar:hover .hit{fill:rgba(21,71,52,.06)}
.qtable summary{cursor:pointer;font-size:13px;color:var(--green-2);font-weight:600;margin-top:4px;min-height:32px;display:flex;align-items:center}
@media (max-width:1100px){.qgrid{grid-template-columns:minmax(0,1fr)}}
.qchart .ytick,.qchart .ylab,.qchart .val{font-size:12px}
.qchart .xtick{font-size:12.5px}
.qchart .ytick,.qchart .ylab,.qchart .val{font-size:11px}.qchart .xtick{font-size:11px}

/* s03: charts, result tiles, W/G/V bars, cards, search */
.qgrid.one{grid-template-columns:minmax(0,1fr)}
.lchart{max-width:820px}
.strip{display:flex;flex-wrap:wrap;gap:4px;padding:6px 18px 16px}
.pad .strip{padding:4px 0 10px}
.tile{display:flex;flex-direction:column;align-items:center;justify-content:center;width:46px;min-height:56px;border-radius:8px;text-decoration:none;color:#fff;background:#6b7a72;line-height:1.1;padding:4px 0}
.pad .tile{width:40px}
.tile.W{background:var(--win)}.tile.V{background:var(--loss)}.tile.G{background:var(--draw);color:var(--draw-ink)}
.tile b{font:800 20px/1 var(--display)}
.tile small{font-size:10px}
.tile:hover{filter:brightness(1.1);color:#fff}.tile.G:hover{color:var(--draw-ink)}
.wgvbars{display:grid;gap:8px;margin:6px 0}
.wrow{display:grid;grid-template-columns:56px 1fr 34px;gap:8px;align-items:center;font-size:13px}
.wl{color:var(--muted)}.wn{text-align:right;font-weight:700;color:var(--bar)}
.wtrack{display:flex;gap:2px;height:28px;border-radius:6px;overflow:hidden;background:var(--stripe)}
.wseg{display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:12px;min-width:2px;white-space:nowrap;overflow:hidden}
.wseg.W{background:#00843D}.wseg.G{background:#FFD100;color:#154734}.wseg.V{background:#b5322b}
.mini{display:inline-flex;gap:1px;width:90px;height:10px;border-radius:3px;overflow:hidden;background:var(--stripe);vertical-align:middle}
.mini i{display:block;min-width:1px}.mini .W{background:#00843D}.mini .G{background:#FFD100}.mini .V{background:#b5322b}
.toplist{margin:6px 0 0;padding-left:22px;font-size:14px}
.toplist li{padding:5px 0;border-bottom:1px solid var(--line)}
.toplist li b{float:right;font:800 18px/1 var(--display);color:var(--bar)}
.toplist a{color:var(--ink);font-weight:600;text-decoration:none}
.search{margin-left:auto;display:flex;gap:6px}
.search input{border:1.5px solid var(--line);border-radius:8px;padding:9px 12px;min-height:40px;font:400 14px var(--font);width:220px;max-width:100%}
.letters{display:flex;flex-wrap:wrap;gap:6px;padding:12px 18px}
.letters a{display:inline-flex;align-items:center;justify-content:center;min-width:40px;min-height:40px;border-radius:8px;border:1.5px solid var(--line);text-decoration:none;font-weight:700;color:var(--bar)}
.letters a[aria-current="page"]{background:var(--bar);color:#fff;border-color:var(--bar)}
.tt .pl{display:inline-flex;align-items:center;gap:10px}
.plist img{width:32px;height:40px;object-fit:cover;border-radius:4px}
.ini{width:32px;height:40px;border-radius:4px;background:var(--stripe);display:inline-flex;align-items:center;justify-content:center;font:800 14px var(--display);color:#b9c2bc}
.plist td small{display:block;color:var(--muted);font-size:12px}
.plist td{white-space:normal}
.tcards{list-style:none;margin:0;padding:12px 18px 6px;display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}
.tcards a{display:flex;flex-direction:column;gap:3px;padding:12px;border:1.5px solid var(--line);border-radius:10px;text-decoration:none;color:var(--ink);height:100%}
.tcards a:hover{border-color:var(--green-2)}
.tpic{width:64px;height:80px;border-radius:6px;object-fit:cover;background:var(--stripe);display:flex;align-items:center;justify-content:center;font:800 22px var(--display);color:#b9c2bc;margin-bottom:6px}
.tn{font-weight:700;color:var(--bar)}.tp{font-size:13px;color:var(--muted)}.tst{font-size:13px}
.tcards .mini{width:100%;margin-top:6px}
.teamh{display:flex;align-items:center;gap:12px}
.shirt.big{width:44px;height:44px}
.mini-h{margin:8px 0 2px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.ph .alink{margin-left:auto;font-weight:600;text-decoration:none}
@media (max-width:860px){.search{margin-left:0;width:100%}.search input{flex:1}.tile{width:42px}}

/* s04: card table */
.cardt th{white-space:nowrap}
.cardt .ico{vertical-align:-2px}

/* s05: collectie (programmaboekjes, kaartjes, seizoenkaarten, elftalfoto's), portretfoto's, club van 100, over, eindstand */
.ph .sub{margin:0;color:var(--muted);font-size:14px;flex-basis:100%}
.dec{margin:0;padding:16px 18px 4px;font:800 22px/1 var(--display);color:var(--bar);display:flex;gap:8px;align-items:baseline}
.dec small{font:600 13px/1 var(--font);color:var(--muted)}
.gal{list-style:none;margin:0;padding:12px 18px 14px;display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:16px}
.gal.kaartjes{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.gal.tfoto{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));padding-top:8px}
.gal li{display:flex;flex-direction:column;gap:8px;min-width:0}
.zoom{display:block;cursor:zoom-in;border-radius:8px;overflow:hidden;background:var(--stripe);box-shadow:0 1px 0 var(--line),0 2px 8px rgba(21,71,52,.12)}
.zoom img{display:block;width:100%;height:auto}
@media (prefers-reduced-motion:no-preference){.zoom img{transition:transform .2s}.zoom:hover img{transform:scale(1.03)}}
.gal.boekjes .zoom img,.gal.skaart .zoom img{aspect-ratio:3/4;object-fit:cover}
.gal.kaartjes .zoom img{aspect-ratio:16/9;object-fit:contain;background:#efece3}
.noimg{display:flex;align-items:center;justify-content:center;text-align:center;aspect-ratio:3/4;border:1.5px dashed var(--line);border-radius:8px;background:var(--stripe);color:var(--muted);font-size:12px;padding:10px}
.noimg.wide{aspect-ratio:16/9;font-size:14px}
.cap{display:flex;flex-direction:column;gap:4px;font-size:13px;line-height:1.3}
.cap .gl{display:flex;gap:6px;align-items:center;color:var(--muted)}
.cap .gm{display:flex;gap:5px;align-items:center;font-weight:600;min-width:0}
.cap .gm span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cap .gm em{font-style:normal;font-weight:400;color:var(--muted)}
.cap .gm .shirt{width:18px;height:18px}
.cap .gs{display:flex;gap:6px;align-items:center}
.cap .gs a{font-weight:700;color:var(--ink);text-decoration:none}
.cap .gs a:hover{color:var(--green-2);text-decoration:underline}
.cap .wgv{width:20px;height:20px;font-size:11px}
.sn{font:800 18px/1 var(--display);color:var(--bar);text-decoration:none}
.gal.tfoto a{display:flex;flex-direction:column;gap:6px;text-decoration:none}
.gal.tfoto img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:8px;display:block;background:var(--stripe)}
.gal.tfoto a:hover .sn{color:var(--green-2)}
.nofoto{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center;margin:4px 18px 16px;padding:10px 12px;border:1.5px dashed #c9c3b3;border-radius:8px;background:#f6f3ea;color:#6f716a;font-size:13px}
.nofoto b{font-weight:600;margin-right:4px}
.nofoto span{background:#fff;border:1px solid #e3ddcd;border-radius:999px;padding:2px 10px;font:600 13px var(--font);color:#6f716a}
@media (max-width:640px){.nofoto{margin-inline:12px}}
.cover{display:flex;align-items:center;gap:12px;padding:0 18px 4px;font-size:13px;color:var(--muted)}
.cover p{margin:0}.cover b{color:var(--ink)}
.meter{flex:0 0 140px;height:8px;border-radius:99px;background:#eef0ea;overflow:hidden}
.meter i{display:block;height:100%;background:var(--green-2);border-radius:99px}
.help{margin:14px 18px;padding:14px 16px;border-left:4px solid var(--gold);background:#fffbe6;border-radius:6px}
.help p{margin:0 0 6px}.help p:last-child{margin:0}
.mail{font-weight:600;user-select:all;-webkit-user-select:all}
.tbig{margin:0;padding:18px}
.tbig .zoom img{max-height:620px;object-fit:contain;background:#111}
.tbig figcaption{padding:12px 2px 0;font-size:14px;max-width:75ch}
.tbig figcaption p{margin:0 0 6px}
.tbig .src{color:var(--muted);font-size:12px}
.lnk.row{display:flex;flex-wrap:wrap;gap:4px 18px;padding:0 18px 14px}
.lnk.row li+li{border-top:0}
.pgrid{list-style:none;margin:0;padding:10px 18px 14px;display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:14px}
.pgrid a{position:relative;display:flex;flex-direction:column;gap:2px;text-decoration:none;color:var(--ink)}
.pgrid img,.pgrid .ini{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;border-radius:8px;background:var(--stripe);display:flex;align-items:center;justify-content:center;font:800 40px/1 var(--display);color:#cfcabb;margin-bottom:4px}
.pgrid .nr{position:absolute;top:6px;left:6px;min-width:26px;height:26px;padding:0 5px;border-radius:6px;background:var(--bar);color:#fff;font:800 15px/26px var(--display);text-align:center}
.pgrid b{font-size:14px;line-height:1.25}
.pgrid small{font-size:12px;color:var(--muted)}
.pgrid a:hover b{color:var(--green-2)}
.c100 .bars{width:28%;min-width:120px}
.hb{display:flex;height:12px;border-radius:3px;overflow:hidden;gap:1px}
.hb i{display:block;height:100%}
.c100 td small{display:block;font-size:11px;color:var(--muted);line-height:1.1}
.rip{color:var(--muted)}
.act{font:700 10px/1 var(--font);letter-spacing:.05em;text-transform:uppercase;background:var(--gold);color:var(--bar);border-radius:4px;padding:3px 5px;vertical-align:2px}
.numbers{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1px;background:var(--line);border-bottom:1px solid var(--line)}
.numbers div{background:#fff;padding:14px 18px}
.numbers b{display:block;font:800 30px/1 var(--display);color:var(--bar)}
.numbers span{font-size:13px;color:var(--muted)}
.prose{padding:6px 18px 18px;max-width:72ch}
.prose h2{font:800 22px/1.1 var(--display);color:var(--bar);margin:20px 0 6px}
.prose p{margin:0 0 10px}
.tt.stand .sh{width:18px;height:18px;vertical-align:-4px;margin-right:6px}
.tt.stand tr.ado td{background:var(--green-2);color:#fff;font-weight:700}
.tt.stand tr.ado td.strong{color:#fff}
#as-lb{position:fixed;inset:0;z-index:50;background:rgba(10,20,14,.88);display:flex;align-items:center;justify-content:center;padding:16px}
#as-lb[hidden]{display:none}
#as-lb figure{margin:0;display:flex;flex-direction:column;align-items:center;gap:10px;max-width:100%;max-height:100%}
#as-lb img{max-width:100%;max-height:calc(100vh - 110px);border-radius:6px;background:#fff}
#as-lb figcaption{color:#e9efe9;font-size:14px;text-align:center}
#as-lb .x{position:absolute;top:12px;right:12px;width:44px;height:44px;border:0;border-radius:50%;background:var(--gold);color:var(--bar);font:700 26px/1 var(--font);cursor:pointer}
@media (max-width:640px){.gal{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-inline:12px}.gal.kaartjes,.gal.tfoto{grid-template-columns:minmax(0,1fr)}.pgrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding-inline:12px}.cover{flex-direction:column;align-items:flex-start}.meter{flex-basis:auto;width:100%}.c100 .bars{display:none}}
@media (max-width:420px){.pgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* s06: competitiestand links zoals op ADOfans (D6 variant B): rijen afwisselend donker/lichter groen, ADO-rij geel */
table.table-left.stand-short{width:100%;margin:0 0 14px;border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums}
table.table-left.stand-short th{font-size:11px;padding:10px 4px 8px;border-bottom:0;text-align:left}
table.table-left.stand-short th.txt-right,table.table-left.stand-short td.txt-right{text-align:right}
table.table-left.stand-short td{border:0;padding:7px 4px;color:#fff;background:#006242}
table.table-left.stand-short tr:nth-child(odd) td{background:#00843D}
table.table-left.stand-short td:first-child,table.table-left.stand-short th:first-child{padding-left:8px;border-left:14px solid #fff}
table.table-left.stand-short td:last-child,table.table-left.stand-short th:last-child{padding-right:8px;font-weight:700;border-right:14px solid #fff}
table.table-left.stand-short td:nth-child(2){font-weight:700}
table.table-left.stand-short tr.ado td{background:#FFD100;color:#154734;font-weight:800}

/* s07: "op deze datum" in de kleuren van de competitiestand (alle rijen afwisselend groen; geen aparte ADO-markering, vervangt AS17) */
table.table-left.otd-short th{text-align:center}
table.table-left.otd-short th:first-child{text-align:left}
table.table-left.otd-short td{text-align:center;padding-top:6px;padding-bottom:6px}
table.table-left.otd-short td:first-child{text-align:left;font-weight:600}
table.table-left.otd-short td:nth-child(2){font-weight:400}
table.table-left.otd-short tr:has(td a[href^="/teams/3/"]) td{color:#fff}
table.table-left.otd-short tr:nth-child(even) td{background:#006242}
table.table-left.otd-short tr:nth-child(odd) td{background:#00843D}
table.table-left.otd-short a{color:#fff;font-weight:700}
table.table-left.otd-short a:hover{color:#FFD100}
table.table-left.otd-short img{width:22px;height:22px}
.as-left .otd-short + .tablefooter{padding:0 14px 14px;font-size:13px;color:var(--muted)}

/* ===== s17 (feedback nr 001, 28-10) ===== */
/* Over ADOstats: acht tegels op een rij (lange labels breken af), 4 op tablet, 2 op een telefoon */
.numbers{grid-template-columns:repeat(8,minmax(0,1fr))}
.numbers div{padding:14px 10px}.numbers b{font-size:26px}.numbers span{font-size:12px;hyphens:manual;overflow-wrap:break-word}
@media (max-width:1000px){.numbers{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:420px){.numbers{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* kopregels van tabellen: lichtgroen met donkergroene tekst */
.tt thead th,.mt thead th,table.table-left.stand-short th{background:#dfe9e2;color:#154734}
table.table-left.stand-short th{font-weight:700;border-bottom:2px solid #154734}
/* wedstrijdlijst: kopjes Thuis/Uitslag/Uit/Meer boven hun kolom, oefen-label in blauw, rijen om en om, aanwijzen = lichtgroene rij */
.mt thead th:nth-child(3),.mt thead th:nth-child(4),.mt thead th:nth-child(5),.mt thead th:nth-child(7){text-align:center}
.typ.oef{background:#2f6fb0;color:#fff}
.mt tbody tr:nth-child(even) td{background:#f6f3ea}
.mt tbody tr:hover td,.tt tbody tr:hover td{background:#e3eee7}
.mt tbody tr:hover td:first-child{box-shadow:inset 4px 0 0 #154734}
/* links: zoals op adofans.nl een gele markering achter de tekst (donkere tekst); op donkere vlakken wordt de tekst geel */
.as-main a:not(.chip):not(.tile):not(.zoom):not(.main):not(.xtra):not(.more a):not(:has(img)):hover,
.as-main a:not(.chip):not(.tile):not(.zoom):not(.main):not(.xtra):not(.more a):not(:has(img)):focus-visible,
.as-left a:not(:has(img)):hover,.as-left a:not(:has(img)):focus-visible{background:#FFD100;color:#154734!important;text-decoration:none;box-shadow:0 0 0 2px #FFD100;border-radius:2px}
.as-main .tcards a:hover,.as-main .spick a:hover{background:none;box-shadow:none;color:inherit!important}
.as-main .bar a:hover,.as-main .bar a:focus-visible,.as-left .stand-short a:hover,.as-left .stand-short a:focus-visible,.as-left .bar a:hover{background:none;box-shadow:none;color:#FFD100!important;text-decoration:none}
/* de "!" in de wedstrijdlijst: gele knop met pop-up */
.xi{position:relative;display:inline-flex}
.xi .xtra{background:#FFD100;border-color:#d9b100;color:#154734;font-weight:800}
.xi .pop{display:none;position:absolute;right:0;bottom:calc(100% + 8px);width:260px;max-width:70vw;background:#154734;color:#fff;font-size:12.5px;line-height:1.4;padding:10px 12px;border-radius:8px;box-shadow:0 6px 18px rgba(0,0,0,.25);z-index:30;text-align:left;font-weight:500}
.xi .pop::after{content:"";position:absolute;right:14px;top:100%;border:7px solid transparent;border-top-color:#154734}
.xi:hover .pop,.xi:focus-within .pop{display:block}
/* wedstrijdpagina: ronde, seizoen, extra info, pijlen, verloop met teamnamen en lijnen, minuten bij doelpunten en kaarten */
.rnd{display:inline-block;margin-left:10px;padding:3px 9px;border-radius:6px;background:#FFD100;color:#154734;font-size:.8em;letter-spacing:.04em}
.bar small{font-weight:600}
.xnote{margin:0 18px 12px;padding:10px 14px;background:#fff4bf;border-left:4px solid #FFD100;border-radius:6px;font-size:14px}
.pn a{display:inline-flex;align-items:center;gap:8px;font-size:15px}
.pn .arr{flex:none}
.timeline li.thd{border-top:0;padding-top:4px;padding-bottom:8px}
.timeline li.thd .l,.timeline li.thd .r{font:700 12px/1.2 var(--font);letter-spacing:.06em;text-transform:uppercase;color:#154734}
.timeline li.thd .r{text-align:left}
.timeline .m{border-left:2px solid #c9c3b3;border-right:2px solid #c9c3b3;align-self:stretch;display:flex;align-items:center;justify-content:center}
.ev span{font-weight:600;color:#3d4a43}
/* spelerspagina: vlaggetje, links in de kolom Wed. */
.flag{width:20px;height:15px;vertical-align:-2px;border-radius:2px;box-shadow:0 0 0 1px rgba(0,0,0,.12)}
.tt td a.wl{color:#00843D;text-decoration:underline;text-underline-offset:3px;font-weight:700}
/* s18: de legenda gewonnen / gelijk / verloren boven de W/G/V-balken begint waar de balken beginnen (label 56 px + tussenruimte 8 px) */
.qlegend.wleg{margin-left:64px}
.qlegend.wleg .wh{margin-left:auto;width:34px;justify-content:flex-end;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
@media (max-width:420px){.qlegend.wleg{margin-left:0}}
/* s19: dezelfde ronde pijlknop bij vorige/volgende seizoen en vorige/volgende elftalfoto als bij vorige/volgende wedstrijd */
.arr{flex:none}
.spick a{gap:8px;white-space:nowrap}
@media (max-width:420px){.spick{flex-wrap:wrap;justify-content:space-between;gap:4px 8px;width:100%}.spick-form{order:-1;flex:1 0 100%}.spick-form select{width:100%}.spick a{padding:9px 4px;gap:6px}}

/* s21: schakelaar Auto / Licht / Donker in de topbalk */
.as-topbar{align-items:center;flex-wrap:wrap}
.as-topbar .d{margin-right:auto}
/* s22: schakelaar als één afgeronde baan met een gouden markering (geen losse randen meer) */
.as-theme{display:inline-flex;gap:2px;padding:3px;border-radius:999px;background:rgba(255,255,255,.12)}
.as-topbar .as-theme button{font:600 11px/1 var(--font);letter-spacing:.02em;color:#c9d4cc;background:transparent;border:0;border-radius:999px;padding:6px 12px;min-height:0;cursor:pointer}
.as-topbar .as-theme button:hover{color:#fff}
.as-topbar .as-theme button[aria-pressed="true"]{background:var(--gold);color:#154734}
.as-topbar .as-theme button[aria-pressed="true"]:hover{color:#154734}
@media (max-width:860px){.as-topbar{padding:7px 16px}.as-topbar .as-theme button{padding:8px 13px}}

/* s21: donkere weergave. Alleen actief met <html data-theme="dark">: index.php zet dat vóór het tekenen (voorkeur Auto/Licht/Donker uit localStorage "as-theme", anders de systeeminstelling). Eerst de variabelen, dan de plekken met een vaste kleur. */
:root[data-theme=dark]{color-scheme:dark;--paper:#0f1612;--card:#17221c;--line:#2a3930;--stripe:#1c2922;--ink:#e3eee7;--muted:#97aa9f;--future:#1a251f;--draw-text:#e0b800}
:root[data-theme=dark] body{background-color:#0d1a12;background-blend-mode:multiply}
:root[data-theme=dark] .as-shell{box-shadow:0 0 40px rgba(0,0,0,.6)}
:root[data-theme=dark] a{color:#6fd39a}
:root[data-theme=dark] .ph h1,:root[data-theme=dark] .record b,:root[data-theme=dark] .team.ado,:root[data-theme=dark] .sc a,:root[data-theme=dark] .sc .s,:root[data-theme=dark] .more a,:root[data-theme=dark] .scoreboard .tm.ado,:root[data-theme=dark] .scoreboard .big,:root[data-theme=dark] .timeline .m,:root[data-theme=dark] .tt td.strong,:root[data-theme=dark] .prof h2,:root[data-theme=dark] .stats b,:root[data-theme=dark] .qfig figcaption,:root[data-theme=dark] .wn,:root[data-theme=dark] .toplist li b,:root[data-theme=dark] .letters a,:root[data-theme=dark] .tn,:root[data-theme=dark] .dec,:root[data-theme=dark] .sn,:root[data-theme=dark] .act,:root[data-theme=dark] .numbers b,:root[data-theme=dark] .prose h2,:root[data-theme=dark] .x,:root[data-theme=dark] .team.ado a,:root[data-theme=dark] h1,:root[data-theme=dark] h2:not(.bar),:root[data-theme=dark] h3,:root[data-theme=dark] .kv dd,:root[data-theme=dark] .lineup a,:root[data-theme=dark] .nr{color:#e6f0ea}
:root[data-theme=dark] .dec{color:#8fd8ae}
:root[data-theme=dark] .tt thead th,:root[data-theme=dark] .mt thead th,:root[data-theme=dark] table.table-left.stand-short th{background:#22362b;color:#cfe3d6}
:root[data-theme=dark] table.table-left.stand-short th{border-bottom-color:#4f7a62}
:root[data-theme=dark] .mt tbody tr:nth-child(even) td{background:#1a251f}
:root[data-theme=dark] .mt tbody tr:hover td,:root[data-theme=dark] .tt tbody tr:hover td{background:#243d2f}
:root[data-theme=dark] .mt tbody tr:hover td:first-child{box-shadow:inset 4px 0 0 #FFD100}
:root[data-theme=dark] .numbers{background:var(--line)}
:root[data-theme=dark] .numbers div{background:var(--card)}
:root[data-theme=dark] .chip{background:var(--card);color:#d6e6dc;border-color:#34463b}
:root[data-theme=dark] .chip.on,:root[data-theme=dark] .chip[aria-current="true"]{background:#2b6a49;border-color:#2b6a49;color:#fff}
:root[data-theme=dark] .typ{background:#2a3730;color:#cfdad3}
:root[data-theme=dark] .typ.oef{background:#2f6fb0;color:#fff}
:root[data-theme=dark] .more a{background:#1d2a23;color:#e6f0ea;border-color:#3a4d41}
:root[data-theme=dark] .more a.main{background:#2b6a49;border-color:#2b6a49;color:#fff}
:root[data-theme=dark] .xi .xtra{background:#FFD100;color:#154734}
:root[data-theme=dark] .nofoto{background:#1b2620;border-color:#3b4b40;color:#9db0a4}
:root[data-theme=dark] .nofoto span{background:#23332a;border-color:#34463b;color:#b9cabf}
:root[data-theme=dark] .help,:root[data-theme=dark] .xnote{background:#2e2a10;border-color:#FFD100;color:#f0e6b0}
:root[data-theme=dark] .meter{background:#26352c}
:root[data-theme=dark] button,:root[data-theme=dark] select,:root[data-theme=dark] input[type=submit]{background:#1d2a23;color:#e3eee7;border-color:#3a4d41}
:root[data-theme=dark] .tile{box-shadow:none}
:root[data-theme=dark] .og .name,:root[data-theme=dark] .gal.kaartjes .zoom img{background:#1d2a23}
:root[data-theme=dark] .prof .photo{background:#22362b;color:#cfe3d6}
:root[data-theme=dark] .scoreboard,:root[data-theme=dark] .meta{color:#cfe0d5}
:root[data-theme=dark] .record>div,:root[data-theme=dark] .stats>div{border-color:#34463b}
:root[data-theme=dark] .stats>div{background:#1d2a23}
:root[data-theme=dark] .stats span,:root[data-theme=dark] .record span,:root[data-theme=dark] .numbers span{color:#97aa9f}
:root[data-theme=dark] .qlegend,:root[data-theme=dark] .qlegend span{color:#b6c6bb}
:root[data-theme=dark] .wgvbars .wl{color:#97aa9f}
:root[data-theme=dark] .recnote{color:#97aa9f}
:root[data-theme=dark] svg text{fill:#c6d6cc}
:root[data-theme=dark] svg line,:root[data-theme=dark] svg .grid{stroke:#34463b}
:root[data-theme=dark] .tt td,:root[data-theme=dark] .tt th{border-color:#2a3930}
:root[data-theme=dark] .lineup li,:root[data-theme=dark] .timeline li,:root[data-theme=dark] .pn,:root[data-theme=dark] .spick a{border-color:#2a3930}
:root[data-theme=dark] .timeline .m{border-color:#4a5d51}
:root[data-theme=dark] .pn a,:root[data-theme=dark] .spick a{color:#6fd39a}
:root[data-theme=dark] .xtra{color:#154734}
:root[data-theme=dark] .tt td a.wl{color:#6fd39a}
:root[data-theme=dark] .as-main a:not(.chip):not(.tile):not(.zoom):not(.main):not(.xtra):not(.more a):not(:has(img)):hover,:root[data-theme=dark] .as-left a:not(:has(img)):hover{background:#FFD100;color:#154734!important}
:root[data-theme=dark] table.table-left.stand-short td:first-child,:root[data-theme=dark] table.table-left.stand-short th:first-child{border-left-color:var(--card)}
:root[data-theme=dark] table.table-left.stand-short td:last-child,:root[data-theme=dark] table.table-left.stand-short th:last-child{border-right-color:var(--card)}
:root[data-theme=dark] .ev span{color:#cbd9d0}
:root[data-theme=dark] .timeline li.thd .l,:root[data-theme=dark] .timeline li.thd .r{color:#cfe3d6}
:root[data-theme=dark] .kv a,:root[data-theme=dark] .qfig summary,:root[data-theme=dark] .qfig a,:root[data-theme=dark] details summary,:root[data-theme=dark] .recnote a,:root[data-theme=dark] .as-main p a{color:#6fd39a}
:root[data-theme=dark] .as-left .lnk a{color:#e6f0ea}
:root[data-theme=dark] .as-topbar .as-theme button{background:transparent;color:#c9d4cc;border:0}
:root[data-theme=dark] .as-topbar .as-theme button:hover{color:#fff}
:root[data-theme=dark] .as-topbar .as-theme button[aria-pressed="true"]{background:#FFD100;color:#154734}
:root[data-theme=dark] .as-nav .as-menu-btn{background:none;border:0;color:#fff}
/* s23 (AS22): blok "Vandaag jarig" bovenaan Spelers A-Z en Trainers */
.bd{margin:14px 18px 18px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--card)}
.bd-h{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--stripe);border-bottom:2px solid var(--gold);font:700 13px/1 var(--font);letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}
.bd-h svg{width:20px;height:20px;flex:none}
.bd-h .dt{margin-left:auto;font-weight:600;letter-spacing:0;text-transform:none;color:var(--muted);font-size:13px;white-space:nowrap}
.bd ul{list-style:none;margin:0;padding:0}
.bd li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 14px;border-top:1px solid var(--line)}
.bd li:first-child{border-top:0}
.bd .who{display:flex;flex-direction:column;gap:2px;min-width:0}
.bd .who a{font-weight:600}
.bd .who small{color:var(--muted);font-size:13px}
.bd .dag{color:var(--muted);font-weight:600}
.bd .age{display:flex;align-items:baseline;gap:5px;font:800 28px/1 var(--display);color:var(--ink);text-align:right}
.bd .age small{font:600 12px var(--font);color:var(--muted)}
.bd .rip .age,.bd .old .age{font:600 13px/1.25 var(--font);color:var(--muted);max-width:150px;text-align:right;display:block}
@media (max-width:420px){.bd{margin:12px 12px 14px}}
/* s24 (AS21): stadions */
.venue-sub{padding:0 18px 4px;margin:-6px 0 0;color:var(--muted);font-size:14px}
.venue-sub b{color:var(--ink)}
.badge-home{display:inline-block;margin-left:8px;padding:2px 7px;border-radius:999px;background:var(--gold);color:#154734;font:700 10px/1.3 var(--font);letter-spacing:.04em;text-transform:uppercase;vertical-align:1px;white-space:nowrap}
.meta a{font-weight:600}
/* s28 (feedback nr 002): percentages en saldo in het record, leeftijd, shirtjes in de lijsten, kop met aantallen */
.record em{margin-left:8px;font:800 20px/1 var(--display);font-style:normal}
.record .w em{color:var(--win)}.record .d em{color:var(--draw-text)}.record .l em{color:var(--loss)}
.saldo.pos{color:var(--win)}.saldo.neg{color:var(--loss)}.saldo.nul{color:var(--muted)}
.recnote .saldo,.pad .saldo{font:700 13px/1 var(--font);margin-left:0}
.ph .age{margin-left:12px;align-self:center;color:var(--muted);font-size:15px;white-space:nowrap}
.tt .sh{display:inline-flex;align-items:center;gap:8px;vertical-align:middle}
.tt .sh .shirt{width:20px;height:20px}
.bar small.cnt{font-weight:600}
/* s29: lange wedstrijdlijsten: de nieuwste 50 gewoon, de oudere per seizoen in uitklapbare blokken */
.tt.fixed{table-layout:fixed;width:100%;min-width:700px}
.tt.fixed.wide{min-width:780px}
.tt.fixed td.mc{white-space:normal;overflow-wrap:anywhere}
.olderhead{margin:0;padding:12px 18px;font:700 12px var(--font);letter-spacing:.05em;text-transform:uppercase;color:var(--muted);border-top:1px solid var(--line);background:var(--stripe)}
.olderhead small{font-weight:500;letter-spacing:0;text-transform:none;margin-left:8px}
.seasons details.sx{border-top:1px solid var(--line)}
.seasons details.sx[open]{background:var(--card)}
.seasons summary{display:grid;grid-template-columns:22px 250px 130px minmax(80px,200px) auto;gap:12px;align-items:center;padding:10px 18px;cursor:pointer;list-style:none;font-size:14px}
.seasons summary::-webkit-details-marker{display:none}
.seasons summary::before{content:"";width:8px;height:8px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(-45deg);transition:transform .15s;justify-self:center}
.seasons details[open]>summary::before{transform:rotate(45deg)}
.seasons summary:hover{background:var(--stripe)}
.seasons .sx-n{font:700 15px var(--font);color:var(--ink)}
.seasons .sx-n .rest{font-weight:500;color:var(--muted)}
.seasons .sx-c{color:var(--muted)}
.seasons .sx-r b{font:800 15px var(--display);margin-right:6px}
.seasons .sx-r b.W{color:var(--win)}.seasons .sx-r b.G{color:var(--draw-text)}.seasons .sx-r b.V{color:var(--loss)}
.seasons .scroller{border-top:1px solid var(--line)}
@media (max-width:700px){.seasons summary{grid-template-columns:22px 1fr auto;gap:4px 10px;padding:10px 14px}.seasons .sx-n{grid-column:2}.seasons .sx-c{grid-column:2;grid-row:2;font-size:13px}.seasons .mini{display:none}.seasons .sx-r{grid-column:3;grid-row:1 / span 2}}
/* s33 (feedback nr 003): competitienaam naast de titel, gemiddelde punten in het record */
.ph .comp{margin-left:12px;align-self:center;color:var(--muted);font:600 16px/1.2 var(--font);white-space:nowrap}
.record em.avg{font:700 13px/1 var(--font);color:var(--muted);margin-left:8px}
.record em.avg small{display:inline;font-size:12px;margin-left:3px;color:inherit}
/* s35 (feedback nr 004): wedstrijdpagina: leeftijd, p bij strafschop, rode en blauwe bal; per kwartier: kader met schaduw, gecentreerde titels */
.lineup .who{min-width:0}
.lineup .age,.kv .age{font:500 12px/1.2 var(--font);color:var(--muted);margin-left:6px;white-space:nowrap}
.pk{display:inline-block;min-width:13px;text-align:center;font:800 10.5px/13px var(--font);color:#fff;background:#6b7a71;border-radius:3px;padding:0 3px}
.ball.miss{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3CclipPath id='c'%3E%3Ccircle cx='8' cy='8' r='7.3'/%3E%3C/clipPath%3E%3Ccircle cx='8' cy='8' r='7.3' fill='%23e53935'/%3E%3Cg clip-path='url(%23c)' fill='%231d3328' stroke='%231d3328' stroke-width='.7' stroke-linejoin='round'%3E%3Cpolygon points='8.00,5.70 10.19,7.29 9.35,9.86 6.65,9.86 5.81,7.29'/%3E%3Cline x1='8.00' y1='5.70' x2='8.00' y2='3.10' fill='none'/%3E%3Cline x1='10.19' y1='7.29' x2='12.66' y2='6.49' fill='none'/%3E%3Cline x1='9.35' y1='9.86' x2='10.88' y2='11.96' fill='none'/%3E%3Cline x1='6.65' y1='9.86' x2='5.12' y2='11.96' fill='none'/%3E%3Cline x1='5.81' y1='7.29' x2='3.34' y2='6.49' fill='none'/%3E%3Cpolygon points='8.00,2.60 5.53,0.80 6.47,-2.10 9.53,-2.10 10.47,0.80'/%3E%3Cpolygon points='13.14,6.33 14.08,3.42 17.14,3.42 18.08,6.33 15.61,8.13'/%3E%3Cpolygon points='11.17,12.37 14.23,12.37 15.18,15.28 12.70,17.07 10.23,15.28'/%3E%3Cpolygon points='4.83,12.37 5.77,15.28 3.30,17.07 0.82,15.28 1.77,12.37'/%3E%3Cpolygon points='2.86,6.33 0.39,8.13 -2.08,6.33 -1.14,3.42 1.92,3.42'/%3E%3C/g%3E%3Ccircle cx='8' cy='8' r='7.3' fill='none' stroke='%231d3328' stroke-width='1'/%3E%3C/svg%3E")}
.ball.og{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3CclipPath id='c'%3E%3Ccircle cx='8' cy='8' r='7.3'/%3E%3C/clipPath%3E%3Ccircle cx='8' cy='8' r='7.3' fill='%232f6fd0'/%3E%3Cg clip-path='url(%23c)' fill='%231d3328' stroke='%231d3328' stroke-width='.7' stroke-linejoin='round'%3E%3Cpolygon points='8.00,5.70 10.19,7.29 9.35,9.86 6.65,9.86 5.81,7.29'/%3E%3Cline x1='8.00' y1='5.70' x2='8.00' y2='3.10' fill='none'/%3E%3Cline x1='10.19' y1='7.29' x2='12.66' y2='6.49' fill='none'/%3E%3Cline x1='9.35' y1='9.86' x2='10.88' y2='11.96' fill='none'/%3E%3Cline x1='6.65' y1='9.86' x2='5.12' y2='11.96' fill='none'/%3E%3Cline x1='5.81' y1='7.29' x2='3.34' y2='6.49' fill='none'/%3E%3Cpolygon points='8.00,2.60 5.53,0.80 6.47,-2.10 9.53,-2.10 10.47,0.80'/%3E%3Cpolygon points='13.14,6.33 14.08,3.42 17.14,3.42 18.08,6.33 15.61,8.13'/%3E%3Cpolygon points='11.17,12.37 14.23,12.37 15.18,15.28 12.70,17.07 10.23,15.28'/%3E%3Cpolygon points='4.83,12.37 5.77,15.28 3.30,17.07 0.82,15.28 1.77,12.37'/%3E%3Cpolygon points='2.86,6.33 0.39,8.13 -2.08,6.33 -1.14,3.42 1.92,3.42'/%3E%3C/g%3E%3Ccircle cx='8' cy='8' r='7.3' fill='none' stroke='%231d3328' stroke-width='1'/%3E%3C/svg%3E")}
.qgrid.framed{gap:12px 24px}
.qgrid.framed .qfig{background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:0 3px 10px rgba(21,71,52,.12);padding:12px 16px}
.qgrid.framed .qfig figcaption{text-align:center}
.qgrid.framed .qlegend{justify-content:center}
:root[data-theme=dark] .qgrid.framed .qfig{box-shadow:0 3px 10px rgba(0,0,0,.45)}
/* s38 (feedback nr 005): totaalregel rechts, Balans gecentreerd */
.recnote.split{display:flex;justify-content:space-between;gap:4px 12px;flex-wrap:wrap}
.tt th.ctr,.tt td.ctr{text-align:center}
/* s39: met het jaartal voluit past de wedstrijdenlijst weer in de kolom naast het linkermenu (1000 px breed): smallere cellen en knoppen */
.mt th,.mt td{padding-left:3px;padding-right:3px}
.mt .more{gap:4px}
.mt .more a{min-width:32px;padding:0 8px}
/* s40 (AS47): label 'actief' in donker met donkere letters op het geel; 'meerdere clubs' in de gedempte kleur */
:root[data-theme=dark] .act{color:#154734}
.tt .muted{color:var(--muted)}
/* s41 (AS47): 'meerdere clubs' met alle thuisclubs als title: stippellijntje en help-cursor als hint */
.tt .muted[title]{cursor:help;text-decoration:underline dotted;text-underline-offset:3px}
/* s42 (AS48): Opstellingen met volledig overzicht: zonder linkermenu en breder (knop Toon/Verberg menu, keus in html[data-left]); op een telefoon (menu staat al onder de inhoud) geen knop */
.ph .left-toggle{margin-left:auto;gap:7px;cursor:pointer}
html:not([data-left]) .left-toggle{display:none}
html[data-left=hide] .as-shell{max-width:1480px}
html[data-left=hide] .as-cols{grid-template-columns:minmax(0,1fr)}
html[data-left=hide] .as-left{display:none}
@media (max-width:860px){.ph .left-toggle{display:none}html[data-left=hide] .as-left{display:block}}
