/* TENX Data — scoped to .tenx so it doesn't fight your theme. Match-day programme look: ink, paper, one floodlight-orange accent. */
.tenx{
  --tx-paper:#F3F4F0; --tx-card:#FFFFFF; --tx-ink:#0F1B2D; --tx-muted:#5B6576; --tx-line:#DADDE3;
  --tx-accent:#FF5A1F; --tx-accent-ink:#FFFFFF; --tx-court:#2F5BFF;
  --tx-good:#12925A; --tx-bad:#D8333F; --tx-warn:#B87800; --tx-chip:#ECEEF2;
  --tx-mono:"JetBrains Mono",ui-monospace,Menlo,Consolas,monospace;
  color:var(--tx-ink); display:flex; flex-direction:column; gap:14px; margin:1.5em 0; line-height:1.5;
}
.tenx *{box-sizing:border-box}
.tenx-h{font-size:1.15rem; margin:0; text-transform:uppercase; letter-spacing:.02em}
.tenx-row{display:flex; gap:8px; align-items:center; flex-wrap:wrap}
.tenx-between{justify-content:space-between}
.tenx-note{font-size:.82rem; color:var(--tx-muted); margin:0}
.tenx-mono{font-family:var(--tx-mono); font-variant-numeric:tabular-nums; font-size:.86rem; margin:0}
.tenx-card{background:var(--tx-card); border:1px solid var(--tx-line); border-radius:14px; padding:18px; display:flex; flex-direction:column; gap:10px}
.tenx-pick{border-left:5px solid var(--tx-accent)}
.tenx-id{font-family:var(--tx-mono); font-weight:600; background:var(--tx-ink); color:#fff; border-radius:8px; padding:3px 8px; font-size:.78rem}
.tenx-chip{display:inline-flex; align-items:center; font-family:var(--tx-mono); font-size:.72rem; padding:3px 9px; border-radius:999px; background:var(--tx-chip); color:var(--tx-ink); white-space:nowrap}
.tenx-chip.good{background:#12925A1f; color:var(--tx-good)}
.tenx-chip.bad{background:#D8333F1f; color:var(--tx-bad)}
.tenx-chip.warn{background:#B878001f; color:var(--tx-warn)}
.tenx-chip.acc{background:var(--tx-accent); color:var(--tx-accent-ink)}
.tenx .pos{color:var(--tx-good)} .tenx .neg{color:var(--tx-bad)}
.tenx-tiles{display:grid; grid-template-columns:repeat(auto-fit,minmax(140px,1fr)); gap:10px}
.tenx-tile{background:var(--tx-card); border:1px solid var(--tx-line); border-radius:12px; padding:14px; display:flex; flex-direction:column; gap:4px}
.tenx-tile .k{font-family:var(--tx-mono); font-size:.7rem; text-transform:uppercase; letter-spacing:.08em; color:var(--tx-muted)}
.tenx-tile .v{font-size:1.7rem; font-weight:700; line-height:1.1; font-variant-numeric:tabular-nums}
.tenx-table{overflow-x:auto; border:1px solid var(--tx-line); border-radius:12px; background:var(--tx-card)}
.tenx table{border-collapse:collapse; width:100%; font-size:.9rem; margin:0}
.tenx th,.tenx td{padding:9px 11px; text-align:left; border:0; border-bottom:1px solid var(--tx-line); white-space:nowrap}
.tenx td.tenx-wrap{white-space:normal; min-width:220px}
.tenx th{font-family:var(--tx-mono); font-size:.68rem; text-transform:uppercase; letter-spacing:.08em; color:var(--tx-muted); background:var(--tx-paper); font-weight:600}
.tenx th.n,.tenx td.n{text-align:right; font-family:var(--tx-mono); font-variant-numeric:tabular-nums}
.tenx tr:last-child td{border-bottom:0}
.tenx-form span{display:inline-block; width:19px; height:19px; line-height:19px; text-align:center; border-radius:4px; font-family:var(--tx-mono); font-size:.68rem; font-weight:600; margin-right:2px; color:#fff}
.tenx-form .W{background:var(--tx-good)} .tenx-form .D{background:var(--tx-muted)} .tenx-form .L{background:var(--tx-bad)}
.tenx-why{border-top:1px dashed var(--tx-line); padding-top:8px}
.tenx-why summary{cursor:pointer; font-weight:700; color:var(--tx-court)}
.tenx-filters select,.tenx select,.tenx input{border:1.5px solid var(--tx-line); background:var(--tx-card); border-radius:10px; padding:7px 10px; font:inherit; color:inherit}
.tenx-odd,.tenx button.tenx-odd{display:inline-flex; flex-direction:column; align-items:center; border:1.5px solid var(--tx-line); background:var(--tx-card); border-radius:9px; padding:6px 10px; min-width:84px; font:inherit; color:inherit}
.tenx button.tenx-odd{cursor:pointer}
.tenx button.tenx-odd[aria-pressed="true"]{border-color:var(--tx-accent); background:#FF5A1F14}
.tenx-odd small{font-size:.64rem; color:var(--tx-muted); font-family:var(--tx-mono); text-transform:uppercase; max-width:110px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.tenx-odd b{font-family:var(--tx-mono)}
.tenx-svg{width:100%; max-width:520px; height:auto}
.tenx-svg rect.over{fill:var(--tx-good)} .tenx-svg rect.under{fill:#9AA4B5}
.tenx-svg text{font:10px var(--tx-mono); fill:var(--tx-ink)}
.tenx-svg line.line{stroke:var(--tx-accent); stroke-width:2; stroke-dasharray:5 4}
.tenx-btn{border:0; cursor:pointer; border-radius:10px; padding:9px 15px; font-weight:700; background:var(--tx-accent); color:var(--tx-accent-ink); font:inherit; font-weight:700}
.tenx-btn.ghost{background:transparent; border:1.5px solid var(--tx-line); color:var(--tx-ink)}
.tenx-btn:disabled{opacity:.45; cursor:not-allowed}
.tenx-split{display:grid; grid-template-columns:1.6fr 1fr; gap:16px; align-items:start}
@media (max-width:860px){.tenx-split{grid-template-columns:1fr}}
.tenx-dark{background:var(--tx-ink); color:#fff; border-color:var(--tx-ink)}
.tenx-dark .tenx-note{color:#C9D0DB}
.tenx-bar{height:8px; border-radius:99px; background:#ffffff26; overflow:hidden}
.tenx-bar i{display:block; height:100%; background:var(--tx-accent)}
.tenx canvas{width:100%; display:block}
.tenx :focus-visible{outline:3px solid var(--tx-court); outline-offset:2px}

/* ===================== Site frame (body.tenx-site) =====================
   Match-day programme: ink header, cool paper, floodlight-orange accent, Anton headlines. */
body.tenx-site{
  --tx-paper:#F3F4F0; --tx-ink:#0F1B2D; --tx-muted:#5B6576; --tx-line:#DADDE3; --tx-accent:#FF5A1F;
  --tx-display:"Anton","Impact","Arial Narrow",sans-serif; --tx-body:"DM Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  margin:0; background:var(--tx-paper); color:var(--tx-ink); font-family:var(--tx-body); font-size:16px; line-height:1.6;
}
body.tenx-site *{box-sizing:border-box}
body.tenx-site a{color:inherit}
.tx-wrap{max-width:1180px; margin:0 auto; padding:0 20px}
.tx-top{position:sticky; top:0; z-index:50; background:var(--tx-ink); color:#fff}
body.admin-bar .tx-top{top:32px}
@media (max-width:782px){body.admin-bar .tx-top{top:46px}}
.tx-top-in{display:flex; align-items:center; gap:18px; min-height:62px}
.tx-logo{font-family:var(--tx-display); font-size:1.55rem; letter-spacing:.04em; text-decoration:none; color:#fff !important; white-space:nowrap}
.tx-logo b{color:var(--tx-accent); font-weight:400}
.tx-nav{display:flex; gap:4px; flex:1; overflow-x:auto; scrollbar-width:none}
.tx-nav::-webkit-scrollbar{display:none}
.tx-nav a{text-decoration:none; padding:6px 12px; border-radius:999px; font-weight:500; font-size:.95rem; color:#fff !important; opacity:.75; white-space:nowrap}
.tx-nav a:hover{opacity:1}
.tx-nav a[aria-current="page"]{background:var(--tx-accent); opacity:1}
.tx-age{font-family:"JetBrains Mono",ui-monospace,monospace; font-size:.72rem; border:1.5px solid currentColor; border-radius:6px; padding:1px 6px; white-space:nowrap}
.tx-main{padding-top:36px; padding-bottom:64px; min-height:60vh}
.tx-title{font-family:var(--tx-display); font-weight:400; text-transform:uppercase; font-size:clamp(2.2rem,6vw,4rem); line-height:1.02; margin:0 0 24px; text-wrap:balance}
.tx-content > *{max-width:100%}
.tx-content h2{font-family:var(--tx-display); font-weight:400; text-transform:uppercase; font-size:clamp(1.6rem,3.5vw,2.4rem); line-height:1.05; margin:40px 0 14px; text-wrap:balance}
.tx-content h3{font-size:1.15rem; margin:18px 0 8px}
.tx-content p{max-width:68ch}
.tx-foot{background:var(--tx-ink); color:#fff; padding:32px 0}
.tx-foot-in{display:flex; flex-direction:column; gap:12px}
.tx-foot-row{display:flex; justify-content:space-between; align-items:center; gap:16px; flex-wrap:wrap}
.tx-foot-links{display:flex; gap:14px; flex-wrap:wrap; font-size:.9rem}
.tx-foot p{opacity:.8; font-size:.86rem; margin:0; max-width:90ch}
.tx-foot a{color:#fff !important}

/* building blocks used inside page content */
.tx-eyebrow{font-family:"JetBrains Mono",ui-monospace,monospace; font-size:.78rem; letter-spacing:.12em; text-transform:uppercase; color:var(--tx-accent); font-weight:600; margin:0 0 8px}
.tx-hero{display:grid; grid-template-columns:1.3fr 1fr; gap:28px; align-items:end; margin-bottom:36px}
@media (max-width:820px){.tx-hero{grid-template-columns:1fr}}
.tx-hero h1{font-family:var(--tx-display); font-weight:400; text-transform:uppercase; font-size:clamp(2.6rem,7vw,4.8rem); line-height:1; margin:0 0 16px; text-wrap:balance}
.tx-hero h1 em{font-style:normal; color:var(--tx-accent)}
.tx-lede{font-size:1.15rem; color:var(--tx-muted); max-width:62ch}
.tx-btns{display:flex; gap:10px; flex-wrap:wrap; margin-top:18px}
.tx-btn{display:inline-block; text-decoration:none; border-radius:10px; padding:11px 18px; font-weight:700; background:var(--tx-accent); color:#fff !important}
.tx-btn.ghost{background:transparent; border:1.5px solid var(--tx-line); color:var(--tx-ink) !important}
.tx-grid{display:grid; gap:16px; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); margin:18px 0}
.tx-card{background:#fff; border:1px solid var(--tx-line); border-radius:14px; padding:20px; display:flex; flex-direction:column; gap:8px; text-decoration:none}
.tx-card h3{margin:0; font-size:1.2rem}
.tx-card p{margin:0; color:var(--tx-muted); font-size:.93rem}
.tx-card.dark{background:var(--tx-ink); color:#fff; border-color:var(--tx-ink)}
.tx-card.dark p{color:#C9D0DB}
.tx-card.featured{border:2px solid var(--tx-accent)}
.tx-price{font-family:var(--tx-display); font-size:2.6rem; line-height:1}
.tx-ticks{list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:6px; font-size:.93rem}
.tx-ticks li::before{content:"✓ "; color:#12925A; font-weight:700}
.tx-ticks li.no::before{content:"– "; color:var(--tx-muted)}
.tx-rule{border:0; border-top:2px solid var(--tx-ink); margin:36px 0}
.tx-cal{display:grid; grid-template-columns:repeat(7,minmax(130px,1fr)); gap:8px; overflow-x:auto}
.tx-cal div{background:#fff; border:1px solid var(--tx-line); border-radius:10px; padding:10px; font-size:.86rem; display:flex; flex-direction:column; gap:3px}
.tx-cal b{font-family:"JetBrains Mono",monospace; font-size:.72rem; color:var(--tx-muted)}
.tx-post{aspect-ratio:4/5; border-radius:10px; background:var(--tx-ink); color:#fff; display:flex; flex-direction:column; justify-content:space-between; padding:16px}
.tx-post .big{font-family:var(--tx-display); font-size:1.9rem; line-height:1.02; text-transform:uppercase}
.tx-post .big em{font-style:normal; color:var(--tx-accent)}
.tx-post small{font-family:"JetBrains Mono",monospace; opacity:.7}
body.tenx-site .tenx{margin:16px 0 28px}

/* Player Lab */
.tenx-lab-games{display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:12px}
.tenx button.tenx-lab-game{text-align:left; cursor:pointer; font:inherit; color:inherit; width:100%}
.tenx button.tenx-lab-game:hover{border-color:var(--tx-accent)}
.tenx-lab-game table{font-size:.84rem}
.tenx-lab-game th,.tenx-lab-game td{padding:5px 6px}
.tenx-lab-controls{position:sticky; top:62px; z-index:5; background:var(--tx-paper,#F3F4F0); padding:8px 0}
.tenx-lab-controls input[type=search]{min-width:200px; flex:1}
.tenx-lab-tabs{display:inline-flex; background:var(--tx-chip); border-radius:10px; padding:3px; gap:2px}
.tenx-lab-tabs button{border:0; background:transparent; padding:6px 11px; border-radius:8px; cursor:pointer; font:inherit; font-weight:700; font-size:.82rem; color:var(--tx-ink)}
.tenx-lab-tabs button[aria-pressed="true"]{background:var(--tx-accent); color:#fff}
.tenx th.on,.tenx td.on{background:#FF5A1F12; font-weight:700}
.tenx-lab-row{cursor:pointer}
.tenx-lab-row:hover td{background:#2F5BFF0d}
.tenx-lab-detail > td{background:var(--tx-paper,#F3F4F0); white-space:normal; padding:14px}
.tenx-lab-panel{display:flex; flex-direction:column; gap:12px; max-width:760px}
.tenx-spark{display:inline-flex; align-items:flex-end; gap:2px; height:26px; width:110px}
.tenx-spark i{display:block; flex:1; background:var(--tx-court); border-radius:2px 2px 0 0; min-height:2px}
.tenx-svg text.ax{fill:var(--tx-muted); font-size:9px}

/* AI picks + challenge */
.tenx-ai-top{display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:12px}
.tenx-ai-games{display:grid; grid-template-columns:repeat(auto-fit,minmax(320px,1fr)); gap:12px}
.tenx-ai-list{margin:0; padding-left:18px; display:flex; flex-direction:column; gap:10px}
.tenx-ai-list li{display:flex; flex-direction:column; gap:4px}
.tenx-bar-light{height:6px; border-radius:99px; background:var(--tx-chip); overflow:hidden}
.tenx-bar-light i{display:block; height:100%; background:var(--tx-court)}
.tenx-vs{display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:14px}
.tenx-vs .tenx-dark .tenx-tile{background:#ffffff10; border-color:#ffffff22}
.tenx-vs .tenx-dark .tenx-tile .k{color:#C9D0DB}

/* Sim League sportsbook */
.tenx .tx-fmt,.tenx .tx-link{border:1.5px solid var(--tx-line); background:var(--tx-card); border-radius:99px; padding:5px 12px; font:inherit; font-size:.8rem; font-weight:700; cursor:pointer; color:var(--tx-ink)}
.tenx .tx-link{border:0; background:none; padding:0; text-decoration:underline; font-weight:500}
.tx-sb{display:grid; grid-template-columns:minmax(0,1fr) 330px; gap:18px; align-items:start}
@media (max-width:980px){.tx-sb{grid-template-columns:1fr}}
.tx-side{position:sticky; top:80px}
.tx-games{display:flex; gap:8px; overflow-x:auto; padding-bottom:6px; scrollbar-width:thin}
.tenx .tx-game{flex:0 0 auto; display:flex; flex-direction:column; align-items:flex-start; gap:2px; border:1.5px solid var(--tx-line); background:var(--tx-card); border-radius:12px; padding:8px 12px; font:inherit; cursor:pointer; color:var(--tx-ink); text-align:left}
.tenx .tx-game small{font-family:var(--tx-mono); font-size:.68rem; color:var(--tx-muted)}
.tenx .tx-game.on{background:var(--tx-ink); color:#fff; border-color:var(--tx-ink)}
.tenx .tx-game.on small{color:#C9D0DB}
.tx-event{margin:14px 0 4px}
.tx-event h2{margin:0; font-size:1.35rem}
.tx-event h2 span{color:var(--tx-muted); font-weight:400}
.tx-tabs{display:flex; gap:26px; overflow-x:auto; border-bottom:1px solid var(--tx-line); margin:8px 0 14px; scrollbar-width:none}
.tenx .tx-tab{flex:0 0 auto; border:0; background:none; font:inherit; font-weight:700; font-size:1rem; color:var(--tx-muted); padding:10px 0 9px; cursor:pointer; border-bottom:3px solid transparent; border-radius:0}
.tenx .tx-tab.on{color:var(--tx-ink); border-bottom-color:var(--tx-ink)}
.tx-sec{margin:0 0 18px}
.tx-sec>header{display:flex; justify-content:space-between; align-items:center; padding:6px 4px 10px}
.tx-sec>header[role=button]{cursor:pointer}
.tx-sec h3{margin:0; font-size:1.08rem; font-weight:700}
.tx-coll>header{border-bottom:1px solid var(--tx-line); padding:14px 4px}
.tx-chev{width:10px; height:10px; border-right:2px solid var(--tx-ink); border-bottom:2px solid var(--tx-ink); transform:rotate(45deg); margin-right:6px; transition:transform .15s}
.tx-chev.up{transform:rotate(-135deg)}
.tx-box{background:var(--tx-card); border-radius:18px; padding:16px 18px; box-shadow:0 1px 3px rgba(15,27,45,.06)}
.tx-coll .tx-box{margin-top:10px}
.tx-two{display:grid; grid-template-columns:1fr 1fr; gap:10px 16px; text-align:center}
.tx-colh{font-weight:700; padding:2px 0 10px}
.tx-row{padding:4px 0}
.tx-lp{display:grid; grid-template-columns:52px 1fr; align-items:center; gap:8px; font-weight:700; font-variant-numeric:tabular-nums}
.tx-ou{display:grid; grid-template-columns:1fr 150px 150px; gap:10px; align-items:center; padding:5px 0; border-top:1px solid var(--tx-line)}
.tx-ou.tx-head{border-top:0; font-weight:700; text-align:center; padding-top:0}
.tx-ou .tx-line{font-weight:700; font-variant-numeric:tabular-nums}
@media (max-width:560px){.tx-ou{grid-template-columns:1fr 92px 92px}.tx-box{padding:12px}}
.tx-ou.main .tx-line::after,.tx-row.main .tx-lp>span::after{content:"•"; color:var(--tx-accent); margin-left:6px}
.tenx button.tx-px{width:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; min-height:46px; border:0; border-bottom:3px solid var(--tx-accent); background:#F2F3F1; border-radius:8px; font:inherit; font-weight:700; color:var(--tx-ink); cursor:pointer; font-variant-numeric:tabular-nums; transition:background .1s}
.tenx button.tx-px:hover{background:#E8EAE6}
.tenx button.tx-px.on{background:var(--tx-ink); color:#fff; border-bottom-color:var(--tx-ink)}
.tenx button.tx-px:disabled{opacity:.45; cursor:not-allowed}
.tenx button.tx-px small{font-size:.66rem; font-weight:500; color:inherit; opacity:.75}
.tx-more-wrap{display:flex; justify-content:center; margin-top:-16px; position:relative}
.tenx .tx-more{border:0; border-radius:99px; background:var(--tx-accent); color:#fff; font:inherit; font-weight:700; padding:10px 26px; cursor:pointer; box-shadow:0 2px 6px rgba(255,90,31,.3)}
.tx-slip{background:var(--tx-card); border:1.5px solid var(--tx-line); border-radius:16px; padding:16px; display:flex; flex-direction:column; gap:10px}
.tx-leg{display:flex; justify-content:space-between; gap:10px; border-bottom:1px solid var(--tx-line); padding-bottom:8px}
.tx-leg-r{display:flex; align-items:flex-start; gap:8px}
.tenx .tx-x{border:0; background:var(--tx-chip); border-radius:99px; width:24px; height:24px; cursor:pointer; font-size:1rem; line-height:1}
.tx-modes{display:grid; grid-template-columns:1fr 1fr; gap:6px}
.tenx .tx-mode{border:1.5px solid var(--tx-line); background:var(--tx-card); border-radius:10px; padding:8px; font:inherit; font-size:.8rem; font-weight:700; cursor:pointer}
.tenx .tx-mode.on{border-color:var(--tx-ink); background:var(--tx-ink); color:#fff}
.tx-slip input{width:100%; padding:9px 10px; border:1.5px solid var(--tx-line); border-radius:10px; font:inherit; font-weight:700}
.tx-warn{color:var(--tx-warn); min-height:1em; margin:0}
.tx-bl{display:flex; align-items:center; gap:6px; margin:2px 0}
.tx-dot{width:8px; height:8px; border-radius:99px; background:var(--tx-line); flex:0 0 auto}
.tx-dot.good{background:var(--tx-good)} .tx-dot.bad{background:var(--tx-bad)}
.tenx td.pos{color:var(--tx-good)} .tenx td.neg{color:var(--tx-bad)}
/* show every game and tab without sideways scrolling on larger screens */
@media (min-width:700px){
  .tx-games{flex-wrap:wrap; overflow:visible}
  .tx-tabs{flex-wrap:wrap; column-gap:26px; row-gap:0; overflow:visible}
}
@media (max-width:699px){
  .tx-games,.tx-tabs{-webkit-mask-image:linear-gradient(90deg,#000 85%,transparent); mask-image:linear-gradient(90deg,#000 85%,transparent)}
}
.tx-calc{word-break:break-word; margin:0; font-size:.75rem}
