/* Football Life 0.8.2 — original football clubhouse theme.
   The reference informs column placement only. */
:root {
  color-scheme: dark;
  --paper:#0d1b17; --white:#14271f; --ink:#f0f3e8;
  --muted:#b0beac; --line:#3b5140; --green:#c2e681;
  --lime:#c2e681; --gold:#edca7e; --blue:#98c9c7;
  --sans:'Noto Sans Thai','Leelawadee UI','Segoe UI',sans-serif;
  --serif:'Chakra Petch','Noto Sans Thai',sans-serif;
}
body {
  isolation:isolate; margin:0; font-size:16px; line-height:1.8;
  color:var(--ink); font-family:var(--sans);
  background:
    radial-gradient(ellipse at 12% 0%,#7ca54724,transparent 48%),
    radial-gradient(ellipse at 90% 25%,#d5b76009,transparent 40%),
    repeating-linear-gradient(90deg,#0d2018f0 0,#0d2018f0 120px,#142b1ef0 120px,#142b1ef0 240px),#102219;
  background-attachment:fixed;
}
body::before {
  content:''; position:fixed; inset:0; pointer-events:none; z-index:-1;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1000' height='1400' viewBox='0 0 1000 1400'%3E%3Cg fill='none' stroke='%23d9e8bc' stroke-opacity='.10' stroke-width='2'%3E%3Cpath d='M65 65h870v1270H65zM65 700h870M250 65v190h500V65M250 1335v-190h500v190M370 65v70h260V65M370 1335v-70h260v70'/%3E%3Ccircle cx='500' cy='700' r='115'/%3E%3Ccircle cx='500' cy='700' r='4'/%3E%3C/g%3E%3C/svg%3E") center top / min(100vw,1250px) auto no-repeat;
}
main { max-width:1580px; margin:auto; padding:0 30px; }
button,input,select { font-family:var(--sans); }
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible { outline:3px solid var(--gold); outline-offset:3px; }
h1,h2,h3 { font-family:var(--sans); color:var(--ink); letter-spacing:-.4px; }
.small,.muted { color:var(--muted); }
.small { font-size:14px; line-height:1.85; }
.eyebrow,.section-label { font-size:12px; letter-spacing:1.3px; color:#c3ceae; }
.section-label { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:16px; font-weight:650; }
.section-label>span { color:#a8b79d; font-size:12px; letter-spacing:.2px; font-weight:400; }
.panel {
  background:linear-gradient(145deg,#192e24f5,#102219f8);
  border:1px solid #415b42; border-radius:14px; padding:22px;
  box-shadow:0 10px 28px #04100730,inset 0 1px 0 #dbe8ba06;
}
.panel h3 { font-size:20px; margin-bottom:13px; line-height:1.5; }
.primary { background:var(--lime); color:#142313; border:1px solid var(--lime); border-radius:8px; font-size:15px; font-weight:750; min-height:46px; }
.secondary { background:#233b26; color:#edf3df; border:1px solid #6a8250; border-radius:8px; font-size:15px; min-height:44px; }
.text-button { color:#d3e4ab; border-color:#7a9160; font-size:15px; }

/* A football masthead, rather than the reference's compact simulation toolbar. */
.masthead { display:flex; width:100%; max-width:none; min-height:82px; height:auto; margin:0; padding:14px max(30px,calc((100% - 1520px)/2)); justify-content:space-between; align-items:center; background:#0b1a13e6; border-bottom:1px solid #6c80504d; }
.brand { min-width:0; gap:13px; font-size:24px; font-weight:750; letter-spacing:-.5px; }
.brand-icon { font-size:34px; width:49px; height:49px; display:grid; place-items:center; border:1px solid #8a9e5c; border-radius:50%; background:#263c24; color:var(--gold); text-shadow:none; }
.brand small { font-size:11px; letter-spacing:2.2px; color:#c4cea7; margin-top:1px; }
.edition { flex-shrink:0; color:#bbcaad; font-size:12px; letter-spacing:.8px; }
.edition i { background:var(--lime); }
.career-clock { display:flex; align-items:center; gap:24px; min-height:93px; padding:17px 2px 21px; position:relative; }
.clock-name { display:flex; align-items:center; gap:12px; }
.clock-name .eyebrow { display:none; }
.clock-name strong { color:var(--gold); font:700 47px/1.1 var(--serif); white-space:nowrap; }
.clock-name strong small { font:500 16px var(--sans); color:#d3dcc8; margin-left:9px; }
.clock-context { display:flex; gap:8px 14px; align-items:baseline; flex-wrap:wrap; }
.clock-context b { font:650 22px var(--serif); color:#d1dfb6; }
.clock-context>span { font-size:17px; font-weight:600; }
.clock-context small { color:#acbea2; font-size:14px; }
.career-clock .year-progress { position:absolute; left:2px; right:2px; bottom:0; height:4px; width:auto; background:#2f4730; border-radius:4px; }
.year-progress i { background:linear-gradient(90deg,#779d4d,#e2ce8c); border-radius:4px; }
.toolbar { display:flex; align-items:center; flex-wrap:wrap; gap:13px; padding:13px 0; margin:0; position:relative; top:auto; background:none; border:0; box-shadow:none; backdrop-filter:none; }
.time-controls { display:flex; align-items:center; gap:10px; flex-wrap:nowrap; }
.pause { min-width:112px; min-height:43px; border:1px solid #c7e390; border-radius:8px; padding:8px 14px; background:#c3df8b; color:#162610; font-size:15px; font-weight:700; }
.speeds { gap:5px; }
.speeds button { min-width:45px; min-height:42px; padding:7px 10px; border:1px solid #547043; border-radius:7px; color:#d9e5cd; background:#1a3021; font-size:14px; }
.speeds button[aria-pressed=true] { background:#3c532d; border-color:#d6ce8c; color:#fff3c3; }
.top-wallet { display:flex; align-items:center; flex-wrap:wrap; gap:10px 13px; margin-left:auto; }
.top-wallet b { color:var(--gold); font:650 25px var(--serif); }
.top-wallet small { display:none; }
.top-wallet button { background:#2b4027; border:1px solid #6b8250; color:#e1ebc7; font-size:14px; padding:8px 12px; border-radius:8px; }
.tools { display:flex; align-items:center; gap:6px; margin-left:auto; }
.tools button { padding:9px 12px; color:#d6e2c9; background:#182b1e; border:1px solid #4c6740; border-radius:7px; font-size:13px; }

/* The important daily plan remains accessible above all three columns. */
.daily-focus-bar { display:flex; gap:20px; align-items:center; margin:5px 0 23px; padding:17px 19px; border:1px solid #6e824c; border-left:5px solid #d4c37a; border-radius:12px; background:linear-gradient(100deg,#2b3e25ed,#172e20ed); }
.daily-focus-bar>div:first-child { flex:0 0 205px; }
.daily-focus-bar .section-label { font-size:11px; color:#dbc985; margin-bottom:3px; }
.daily-focus-bar b { display:block; font-size:17px; color:#edf1dd; }
.daily-focus-bar small { display:block; color:#b3c3a7; font-size:13px; margin-top:3px; }
.daily-focus-bar .focus-list { display:flex; flex-wrap:wrap; gap:7px; flex:1; margin:0; }
.daily-focus-bar .focus-option { display:block; flex:1 1 120px; text-align:center; min-height:46px; padding:10px 7px; color:#c4d3b7; border:1px solid #49663e; border-radius:8px; background:#12261b; }
.daily-focus-bar .focus-option span { font-size:13px; white-space:nowrap; color:inherit; }
.daily-focus-bar .focus-option:disabled { opacity:.72; }
.daily-focus-bar .focus-option[aria-pressed=true] { background:#b8d882; color:#1c2e13; border-color:#d8e9ab; font-weight:750; }
.daily-focus-bar .focus-option[aria-pressed=true]::after { display:none; }

.game-layout { display:grid; grid-template-columns:minmax(278px,.95fr) minmax(430px,1.7fr) minmax(285px,1fr); gap:22px; margin:0; align-items:start; }
.left-column,.right-column,.timeline-column { display:flex; flex-direction:column; gap:20px; min-width:0; grid-column:auto; }

/* A player card inspired by a club dressing room, without passport styling. */
.identity-card { padding:0; overflow:hidden; border-color:#8a8f54; border-top:4px solid #d1bd70; background:radial-gradient(ellipse at 95% 0,#d8bc5c14,transparent 70%),linear-gradient(150deg,#263a27,#11241b 80%); }
.identity-ribbon { display:flex; align-items:center; gap:9px; padding:17px 19px 11px; background:none; color:#ddcf94; font-size:12px; letter-spacing:1px; border:0; }
.identity-ribbon span { margin-left:auto; color:#c2d3ae; font-size:12px; letter-spacing:0; }
.identity-ribbon b { color:#dcc77b; font:600 15px var(--serif); }
.identity-person { display:flex; align-items:center; gap:15px; padding:8px 19px 17px; }
.identity-person>div:last-child { min-width:0; flex:1; }
.identity-person h1 { overflow-wrap:anywhere; font-size:24px; font-weight:750; line-height:1.45; overflow-wrap:anywhere; }
.identity-person p { font-size:15px; color:#c6dab2; margin-top:5px; }
.identity-person>div>small { font-size:12px; color:#b1c3a4; }
.identity-person .pixel-stage { flex:0 0 82px; width:82px; height:120px; margin:0; padding:0; background:radial-gradient(ellipse,#a1c76c27,transparent 75%); border:1px solid #748452; border-radius:35px 35px 10px 10px; box-shadow:inset 0 0 20px #040e0755; }
.identity-person .pixel-player { width:80px; height:114px; }
.identity-person .avatar-name { display:none; }
.shirt-picker { display:flex; align-items:center; gap:9px; margin-top:8px; color:#becfae; font-size:13px; }
.shirt-picker select { width:68px; min-height:33px; padding:3px 7px; margin:0; color:#eff3de; background:#102418; border:1px solid #748452; border-radius:6px; font-size:15px; }
.identity-data { display:grid; grid-template-columns:62px minmax(0,1fr); gap:9px 12px; padding:1px 19px 18px; font-size:13px; }
.identity-data>span { color:#afc19e; }
.identity-data b { font-weight:500; color:#e5edda; text-align:right; line-height:1.6; overflow-wrap:anywhere; }
.identity-card .ratings-button { display:flex; align-items:center; gap:12px; width:calc(100% - 38px); margin:0 19px 15px; padding:10px 12px; background:linear-gradient(110deg,#66573355,#203a23); border:1px solid #a09255; border-radius:9px; }
.identity-card .ratings-button b { color:#f0d284; font:700 32px var(--serif); }
.identity-card .ratings-button span { font-size:13px; color:#d9e3c8; }
.identity-card .ratings-button span:last-child { margin-left:auto; font-size:22px; color:#d4e3b4; }
.identity-card .team-standing { padding:0 19px; margin:0; border:0; }
.identity-card .team-standing>span { font-size:13px; line-height:1.8; color:#c9d5bd; }
.identity-card .talent-note { padding:12px 19px 17px; margin:0; font-size:12px; color:#a7bc99; white-space:normal; border:0; }
.identity-code { display:none; }
.player-statline span { font-size:13px; }

.condition-card .section-label { color:#cbd9b7; }
.condition-card h3 { font-size:22px; }
.readiness-score { display:flex; align-items:center; gap:13px; padding:6px 0 13px; border-color:#4f6843; }
.readiness-score b { font:700 45px var(--serif); color:#e4cf89; }
.readiness-score span { font-size:13px; line-height:1.8; color:#c4d0b8; }
.readiness-effect { font-size:13px; margin:12px 0 6px; }
.readiness-effect.positive { color:#bddda0; }
.readiness-effect.negative { color:#edb38c; }
.readiness-notes { font-size:13px; line-height:1.8; color:#bdcbb2; margin-bottom:15px; }
.condition-card .metric { display:grid; grid-template-columns:95px minmax(0,1fr) 37px; align-items:center; gap:9px; min-height:31px; margin:15px 0; }
.condition-card .metric>div:first-child { display:contents; }
.condition-card .metric span { grid-column:1; grid-row:1; font-size:13px; color:#d1dfc3; white-space:nowrap; }
.condition-card .metric b { grid-column:3; grid-row:1; color:#ecf1de; font-size:15px; text-align:right; position:relative; white-space:nowrap; }
.metric b small { display:none; }
.condition-card .metric .meter { grid-column:2; grid-row:1; height:9px; margin:0; }
.meter { background:#304433; height:8px; border-radius:5px; overflow:hidden; }
.meter i { background:#a0c76b; border-radius:5px; }
.meter i.blue { background:#86bdb1; }
.meter i.gold { background:#d6bc73; }
.meter i.red { background:#c7825f; }
.stat-delta { position:absolute; right:0; top:20px; font-size:11px; font-style:normal; font-weight:400; }
.stat-delta.gain { color:#b5d88c; }
.stat-delta.drop { color:#e2a076; }
.fitness-note { font-size:13px!important; border-color:#48603e; line-height:1.8; }
.stat-guide { margin-top:14px; padding-top:12px; border-top:1px solid #405637; }
.stat-guide summary { color:#c4d3b4; font-size:13px; cursor:pointer; }
.stat-guide p { font-size:13px; color:#b4c4a8; line-height:1.9; margin-top:9px; }
.save-note { color:#a7be98; font-size:12px; padding:0 3px; margin:0; }
.save-note i { background:#b3d274; }

/* The centre stays a football pitch and a sideline notebook. */
.scene-card { padding:0; overflow:hidden; border-color:#678355; border-radius:16px; }
.world-scene { position:relative; min-height:190px; aspect-ratio:640/210; overflow:hidden; background:#12281f; }
.world-scene>svg { width:100%; height:100%; display:block; }
.scene-player { position:absolute; left:35%; bottom:8%; transform:translateX(-50%); width:82px; height:118px; }
.scene-player .pixel-stage { width:82px; height:118px; margin:0; padding:0; background:none; border:0; box-shadow:none; }
.scene-player .pixel-player { width:82px; height:118px; filter:drop-shadow(4px 5px 0 #07150c55); }
.scene-player .avatar-name { display:none; }
.scene-location { position:absolute; top:13px; left:15px; color:#e2ebd4; padding:4px 8px; background:#11231bd9; border:1px solid #71815a; border-radius:6px; font-size:11px; letter-spacing:.5px; }
.scene-caption { display:grid; gap:4px; padding:15px 20px; border-top:1px solid #628150; background:#193021; }
.scene-caption b { font-size:15px; color:#e1eaca; }
.scene-caption span { font-size:13px; color:#b4c8a5; }
.year-outlook { border-left:4px solid #d3bc70; background:linear-gradient(115deg,#35412af0,#152b1df5); }
.year-outlook .section-label { color:#e2ce91; }
.year-outlook h3 { font-size:20px; margin:0 0 10px; }
.year-outlook p { font-size:15px; line-height:1.9; color:#c1cfb6; }
.outlook-pills { display:flex; flex-wrap:wrap; gap:7px; margin-top:13px; }
.outlook-pills span { font-size:12px; padding:4px 9px; background:#1b3323; border:1px solid #60764b; color:#d0dfbd; border-radius:20px; }
.journal-panel { padding:23px; background:linear-gradient(150deg,#1b3023f8,#10241af8); }
.timeline-heading { margin:0 0 14px; padding:0 0 15px; border-color:#4c6740; }
.timeline-heading .eyebrow { color:#c5b678; font-size:11px; margin:0 0 3px; }
.timeline-heading h2 { color:#eef1dc; font-size:26px; }
.live-label { color:#c4d1ad; font-size:12px; }
.timeline { margin:0; padding:0; max-height:930px; overflow:auto; scrollbar-width:thin; scrollbar-color:#6d8451 transparent; }
.entry { display:block; padding:16px 0 16px 16px; margin:0; border-left:1px solid #638151; border-bottom:1px solid #3b5437; }
.entry-dot { display:none; }
.entry-age { font-size:12px; color:#a9be95; }
.entry p,.entry.diary p { font-size:16px!important; line-height:1.95; color:#d3dec7; }
.entry.milestone p { color:#ead8a0; font-weight:600; }
.entry.choice p { color:#d9eabf; }
.entry.setback p { color:#edb496; }
.entry.effect p { color:#b5c5a8; font-size:15px!important; }
.entry.income p,.entry.expense p,.entry.purchase p { font-size:15px!important; color:#d3c796; }
.entry.health p { color:#b7d6b0; }
.entry.training p { color:#c2d9c0; }
.entry.year p { font-size:18px!important; color:#e9dea9; }

.family-card .section-label { color:#cbd6b5; }
.family-card p { font-size:14px!important; }
.metric { margin:15px 0; }
.metric span { font-size:14px; color:#c9d7bb; }
.metric b { font-size:16px; color:#edf2de; }
.news-panel { border-top:3px solid #d1bb76; }
.news-panel .section-label { justify-content:flex-start; font-size:12px; gap:8px; }
.news-panel .section-label>span { margin-left:auto; font-size:12px; }
.news-dot { width:7px; height:7px; border-radius:50%; background:#e0c47c; }
.sports-news { padding:14px 0; border-bottom:1px solid #405539; }
.sports-news:last-child { border:0; padding-bottom:0; }
.sports-news small { display:block; color:#acbe99; font-size:12px; margin-bottom:5px; }
.sports-news p { color:#cbd8be; font-size:15px; line-height:1.9; }
.sports-news.breaking p { color:#e8d9ad; }
.sports-news.breaking small { color:#d8c382; }
.profile-club { color:#e1e8cd; font-size:21px; font-weight:650; }
.wallet-balance { font:650 34px var(--serif); color:var(--gold); margin:10px 0; }
.contract-note { font-size:15px; line-height:1.9; color:#c0cfb1; }
.career-actions { display:grid; gap:11px; margin-top:17px; }
.career-actions .secondary,.career-actions .text-button { font-size:14px; }
.right-column .small { font-size:14px; }
.right-column .player-statline { margin:0 0 15px; padding:8px 0 13px; border-color:#4a633d; }
.right-column .player-statline b { color:#e1d49b; font-size:28px; }
.right-column .player-statline span { font-size:12px; }
.form-results span { font-size:14px; background:#1d3222; border-color:#627c4c; color:#cfdeba; padding:4px 8px; }
.form-results .good { color:#d0ec9e; background:#344b23; border-color:#92b05d; }
.form-results .poor { color:#edbe9a; background:#503723; border-color:#96704b; }
.record-line,.national-mini { font-size:14px; line-height:1.9; color:#c0d0b2; }
.sponsor-mini { display:grid; gap:5px; padding:13px; margin-top:15px; background:#2c3a23; border:1px solid #7a8150; border-radius:9px; }
.sponsor-mini b { color:#e7e4bd; font-size:15px; }
.sponsor-mini small,.sponsor-mini span { color:#c1cca5; font-size:13px; }
.life-cells { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:6px; margin:0; }
.life-cells span { display:grid; place-items:center; height:34px; border:1px solid #405c35; background:#19301e; color:#a6bc95; border-radius:6px; font-size:12px; }
.life-cells .past { background:#3a502a; color:#d3e2b7; border-color:#68824c; }
.life-cells .current { background:#d2df98; color:#1d3217; border:2px solid #f1d68c; font-weight:750; }

/* Match and shop dialogs use the same original green-and-gold club palette. */
dialog { background:#14271d; border:1px solid #82925d; color:#edf2df; border-radius:15px; box-shadow:0 25px 100px #0009; }
dialog::backdrop { background:#030d07d4; backdrop-filter:blur(5px); }
.dialog-inner { background:#14271d; padding:30px; }
.dialog-inner h2 { font-size:29px; color:#f0edce; }
.dialog-inner>.eyebrow { font-size:12px; color:#c5bd81; }
.decision-age { font-size:14px; color:#d0dcad; }
.decision-story,.result-story { font-size:17px; line-height:1.95; color:#d0ddc0; }
.decision-options button { background:#112418; border-color:#627e48; border-radius:10px; color:#edf3de; padding:19px; }
.decision-options button:hover { background:#263d24; border-color:#bbce85; }
.decision-options b { font-size:18px; color:#ecf2d9; line-height:1.7; }
.decision-options small { font-size:15px; line-height:1.85; color:#b9cda7; }
.choice-index { color:#cfbf7c; font-size:23px; }
.choice-arrow { color:#bfdb8c; }
.effect-chip { font-size:13px; padding:5px 9px; }
.effect-chip.positive { color:#d0e7ab; background:#3d502855; border-color:#7b9a51; }
.effect-chip.negative { color:#edb896; background:#55362666; border-color:#a5774f; }
.chance-now { background:#2b4028; border-color:#6b8453; color:#d6e8b9; font-size:14px; }
.risk-tag { color:#e1c485; font-size:13px; }
.match-scoreboard { border-color:#7c8e53; background:linear-gradient(120deg,#304425,#10241a); border-radius:11px; }
.match-label,.match-scoreboard>p { color:#bccfa1; font-size:13px; }
.scoreline strong { color:#eed18a; font-size:43px; }
.scoreline>span { font-size:17px; }
.match-dialog { max-width:960px; }
.tactical-field { max-height:410px; }
.tactics-wrap { background:#10271a; border-color:#57794a; border-radius:10px; }
.tactics-caption { color:#d2dfbf; font-size:15px; }
.tactics-legend { font-size:12px; color:#b0c398; }
.match-lineups { border:1px solid #4c6b40; border-radius:9px; margin:14px 0 20px; padding:15px; }
.match-lineups summary { font-size:15px; color:#c9d7b5; cursor:pointer; }
.lineup-columns { display:grid; grid-template-columns:1fr 1fr; gap:22px; margin-top:16px; }
.lineup-columns h4 { font-size:16px; color:#ddcd94; margin:0 0 8px; }
.lineup-columns p { display:grid; grid-template-columns:26px minmax(0,1fr) 32px; gap:7px; border-bottom:1px solid #3c5735; padding:7px 0; font-size:13px; }
.lineup-columns p span,.lineup-columns p small { color:#a9c096; }
.lineup-columns p b { font-weight:500; }
.lineup-columns .your-name b { color:#e7d99a; }
.modal-close-top { position:sticky; top:0; float:right; z-index:6; width:36px; height:36px; background:#2c4228; border:1px solid #7c905a; color:#e3e9c5; font-size:24px; border-radius:7px; }
.shop-wallet { position:sticky; top:0; z-index:5; display:grid; grid-template-columns:minmax(0,1fr) auto 33px; align-items:center; gap:13px; background:#1a3120f5; border-block:1px solid #93a467; padding:14px 11px; margin:12px -10px 18px; box-shadow:0 9px 18px #040f0855; backdrop-filter:blur(8px); font-size:16px; }
.shop-wallet b { color:#efd28c; font-size:27px; white-space:nowrap; }
.wallet-close { width:33px; height:33px; display:grid; place-items:center; padding:0; background:#3a502c; border:1px solid #899858; color:#e6ebcd; border-radius:7px; font-size:23px; line-height:1; }
.shop-item { background:#10271a; border-color:#577445; padding:18px; border-radius:10px; gap:16px; }
.shop-item h3 { color:#e4edd1; font-size:18px; }
.shop-item p { color:#b5c9a2; font-size:15px; line-height:1.8; }
.shop-item button { font-size:15px; min-width:105px; }
.shop-item button:disabled { opacity:.85; background:#2d4227; color:#c0d3a6; border-color:#6b8251; }
.shop-message { font-size:15px; color:#d8e6b0; }
.investment-overview { margin:18px 0; padding:18px; background:#203923; border:1px solid #6e824c; border-radius:10px; }
.investment-overview h3 { font-size:18px; color:var(--gold); margin-bottom:12px; }
.investment-overview p { font-size:14px; line-height:1.85; margin-top:12px; color:#d3dec7; }
.shop-recommendation { color:#d1d3a3; font-size:15px; }
.life-settings { padding:17px 0; border-block:1px solid #506a3f; margin-bottom:22px; }
.life-settings>summary { font-size:15px; color:#d8d6a1; cursor:pointer; line-height:1.8; }
.life-settings h3 { font-size:20px; margin:22px 0 12px; }
.life-settings p { color:#b9cda9; font-size:15px; line-height:1.85; }
.life-settings label { margin:15px 0; display:grid; gap:8px; font-size:15px; }
.life-settings input:not([type=checkbox]),.life-settings select,input,select { color:#ecf1dd; background:#0d2116; border:1px solid #5b7947; border-radius:7px; padding:11px; font-size:16px; }
.life-settings .auto-toggle { display:flex; gap:12px; align-items:center; }
.auto-toggle input { accent-color:#bfd887; width:20px; height:20px; flex:0 0 20px; }
.auto-toggle span { font-size:15px; }
.season-card { background:linear-gradient(130deg,#2c4227,#132a1b); border-color:#72894e; border-radius:10px; }
.season-card>p:not(.eyebrow) { color:#c9d7b7; font-size:15px; }
.season-grid { border-color:#67804a; }
.season-grid b { color:#dfdda1; }
.season-grid b small { color:#d4b67c; }
.season-grid span { font-size:13px; }
.season-dashboard h2 { font-size:28px; }
.season-dashboard .season-card>p:not(.eyebrow) { font-size:14px; }
.season-dashboard .season-grid span { font-size:12px; }
.table-scroll { overflow-x:auto; margin:18px 0; }
.league-table { width:100%; border-collapse:collapse; font-size:14px; white-space:nowrap; }
.league-table th,.league-table td { padding:10px 8px; border-bottom:1px solid #49653c; text-align:center; }
.league-table th:nth-child(2) { text-align:left; min-width:155px; }
.league-table thead { color:#baccaa; }
.league-table .own-team { background:#4a5c2d; color:#f0edc0; }
.fixture-details,.live-league { border:1px solid #577542; border-radius:9px; margin:16px 0; padding:16px; }
.fixture-details summary,.live-league summary { font-size:15px; color:#d1dfbb; cursor:pointer; font-weight:600; }
.fixture-list>div { display:grid; grid-template-columns:1fr auto; gap:7px; padding:11px 0; border-bottom:1px solid #3d5a32; }
.fixture-list small { grid-column:1/-1; color:#abc497; font-size:13px; }
.honours { color:#e3c67c; line-height:2; }
.chart-tabs button { font-size:15px; background:#10261a; border-color:#547342; color:#c3d2af; }
.chart-tabs button[aria-pressed=true] { background:#485c2d; color:#f0edbe; border-color:#b8bb72; }
.season-chart { background:#10271a; border-color:#567345; }
.season-selector,.season-selector select { font-size:15px; }
.summary-card { background:linear-gradient(145deg,#34492a,#17301e); border:1px solid #9da265; border-radius:12px; }
.summary-card h2 { color:#eddfa9; font-size:28px; }
.summary-card>p { font-size:16px; }
.career-dossier { font-size:15px; line-height:1.9; }
.career-dossier h3 { color:#e1e7c5; font-size:22px; }
.career-dossier details { border-top:1px solid #597244; padding:15px 0; }
.career-dossier summary { font-size:16px; color:#e2dfb3; cursor:pointer; }
.career-dossier details p,.career-dossier>p { font-size:14px; color:#c0d0ad; padding:8px 0; }
.dossier-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; padding:18px 0; }
.dossier-grid b { display:block; font:650 31px var(--serif); color:#ead18a; }
.dossier-grid span { font-size:13px; color:#bdceaa; }

/* Start page shares the football identity and the larger readable type. */
.intro h1 em { color:#c9e68e; }
.intro .lead { font-size:18px; }
.intro-meta b { color:#d7dc99; }
.intro-meta span { font-size:14px; }
.intro h1 { font-size:clamp(40px,4.2vw,65px); }
.start-card { border-color:#85945d; border-radius:16px; background:linear-gradient(140deg,#253c26f5,#10231af8); }
.start-card::before { background:linear-gradient(90deg,#e2c77e,#91b766); border-radius:16px 16px 0 0; }
.start-card h2 { font-size:29px; }
.start-card>.muted { font-size:15px; }
.card-top { color:#bac99f; font-size:12px; }
.card-note { font-size:12px; color:#b7c6a2; }
label { font-size:16px; }
label small { font-size:13px; }
.shirt-preview { background:#273f26; border-color:#7b9255; padding:12px 15px; }
.shirt-preview b { color:#e6d28a; font-size:23px; }
.shirt-preview span,.shirt-preview span:last-child { font-size:13px; }
.random-country b { font-size:16px; }
.random-country small { font-size:14px; }
.start-tools span { font-size:13px; }
.start-bottom p:not(.eyebrow) { font-size:15px; }
footer { margin-top:35px; padding:25px 30px; border-color:#53683f; color:#b4c49f; font-size:13px; }
footer span { font-size:12px; }

@media(min-width:1500px) {
  .game-layout { grid-template-columns:minmax(310px,1fr) minmax(510px,1.85fr) minmax(320px,1.05fr); }
  .world-scene { min-height:220px; }
  .entry p,.entry.diary p { font-size:17px!important; }
}
@media(max-width:1160px) {
  .masthead { padding-inline:22px; }
  main { padding-inline:22px; }
  .game-layout { grid-template-columns:300px minmax(0,1fr); }
  .right-column { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; gap:20px; }
  .daily-focus-bar>div:first-child { flex-basis:180px; }
  .daily-focus-bar .focus-option { flex-basis:135px; }
  .toolbar .top-wallet { order:3; flex:1; }
  .tools { margin-left:auto; }
}
@media(max-width:720px) {
  main { padding-inline:14px; }
  .masthead { min-height:72px; padding:12px 15px; gap:12px; }
  .brand { font-size:20px; gap:9px; }
  .brand-icon { width:40px; height:40px; font-size:27px; }
  .brand small { font-size:9px; letter-spacing:1.2px; }
  .edition { font-size:10px; letter-spacing:0; }
  .edition i { display:none; }
  .edition { max-width:80px; text-align:right; line-height:1.6; }
  .career-clock { min-height:89px; gap:15px; padding-block:14px 20px; }
  .clock-name strong { font-size:39px; }
  .clock-name strong small { font-size:13px; }
  .clock-context>span { font-size:14px; }
  .clock-context b { font-size:19px; }
  .clock-context small { display:none; }
  .toolbar { display:grid; grid-template-columns:1fr; gap:12px; }
  .toolbar .time-controls { justify-content:space-between; }
  .toolbar .top-wallet { order:2; margin:0; justify-content:space-between; }
  .toolbar .tools { order:3; margin:0; justify-content:flex-end; }
  .tools button { padding:8px; font-size:12px; }
  .top-wallet { justify-content:space-between; }
  .top-wallet b { font-size:24px; }
  .daily-focus-bar { flex-direction:column; align-items:stretch; padding:15px; gap:12px; margin-bottom:19px; }
  .daily-focus-bar>div:first-child { flex:initial; }
  .daily-focus-bar .focus-list { display:grid; grid-template-columns:repeat(2,1fr); }
  .daily-focus-bar .focus-option { min-width:0; padding:10px 5px; }
  .daily-focus-bar .focus-option span { font-size:13px; }
  .game-layout { display:flex; flex-direction:column; gap:20px; }
  .left-column,.timeline-column,.right-column { width:100%; display:flex; flex-direction:column; }
  .identity-person { gap:18px; }
  .identity-person h1 { font-size:25px; }
  .identity-data { font-size:14px; }
  .identity-card .talent-note { font-size:13px; }
  .identity-card .team-standing>span { font-size:14px; }
  .condition-card .metric { grid-template-columns:103px minmax(0,1fr) 38px; margin:17px 0; }
  .condition-card .metric span { font-size:14px; }
  .condition-card .metric b { font-size:16px; }
  .readiness-score span { font-size:14px; }
  .scene-location { font-size:10px; left:10px; top:10px; }
  .world-scene { min-height:160px; }
  .scene-player,.scene-player .pixel-stage,.scene-player .pixel-player { width:68px; height:97px; }
  .scene-caption { padding:14px 16px; }
  .scene-caption b { font-size:14px; }
  .panel { padding:20px; }
  .identity-card,.scene-card { padding:0; }
  .timeline-heading h2 { font-size:24px; }
  .entry p,.entry.diary p { font-size:16px!important; }
  .dialog-inner { padding:24px 19px; }
  .dialog-inner h2 { font-size:25px; }
  .decision-story,.result-story { font-size:16px; }
  .decision-options b { font-size:17px; }
  .decision-options small { font-size:14px; }
  .decision-options.four-choices { grid-template-columns:1fr; }
  .match-dialog { width:calc(100% - 16px); }
  .tactical-field { max-height:300px; }
  .lineup-columns { gap:13px; }
  .lineup-columns p { grid-template-columns:20px minmax(0,1fr) 25px; gap:5px; font-size:12px; }
  .shop-wallet { gap:9px; margin-inline:-5px; font-size:14px; }
  .shop-wallet b { font-size:24px; }
  .shop-item { padding:15px; gap:12px; }
  .shop-item h3 { font-size:17px; }
  .shop-item p { font-size:14px; }
  .shop-item button { min-width:89px; font-size:13px; }
  .dossier-grid { grid-template-columns:repeat(2,1fr); }
  .league-table { font-size:13px; }
  footer { flex-direction:column; gap:10px; padding-inline:15px; }
}
