@font-face{font-family:Touchline Sans;src:url(../assets/fonts/DejaVuSans.woff) format("woff");font-weight:400;font-display:swap;}
@font-face{font-family:Touchline Sans;src:url(../assets/fonts/DejaVuSans-Bold.woff) format("woff");font-weight:600 900;font-display:swap;}
/* Season One design tokens and components. Legacy layout remains responsible for geometry. */
:root{--surface:#192d38;--surface-raised:#203945;--line:#38515a;--ink:#edf3ed;--muted:#b3c6c9;--accent:#4f9773;--gold:#d8bc79;--radius:12px;}
body,button,input,select,textarea{font-family:"Touchline Sans",system-ui,-apple-system,"Segoe UI",sans-serif;}
body{color:var(--ink);background:#0c1b24;font-variant-numeric:tabular-nums;}
#stage{background:#122630;}#workspace{scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:#496575 transparent;}
button{touch-action:manipulation;}button:focus-visible,select:focus-visible,input:focus-visible,[role=button]:focus-visible{outline:3px solid #dfc888;outline-offset:2px;}
/* Stadium console surfaces: static CSS textures keep the frame distinct and light. */
#topbar{
 position:relative;z-index:4;min-height:50px;background-color:#2d4340;
 background-image:radial-gradient(circle,rgba(236,228,182,.10) .65px,transparent .85px),linear-gradient(115deg,#3b5448,#304647 58%,#25393f);
 background-size:6px 6px,100% 100%;border-bottom:1px solid #a6b99b66;
 box-shadow:inset 0 1px 0 #ecf3db1f,0 3px 10px #051b2040;
}
#topbar .chip-btn{background:#1c333866;border:1px solid #c4d7b329;color:#e6efdb;box-shadow:inset 0 1px 0 #f4f5dc0d;}
#topbar #week-label{color:#f3f2de;}#topbar #season-label{color:#d3dfd0;}
.res-chip{background:none;box-shadow:none;font-weight:650;color:#edf3df;}.res-chip .ic{opacity:1;}
#bottom-nav{
 display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background-color:#263d36;
 background-image:repeating-linear-gradient(0deg,#e5edd706 0 1px,transparent 1px 4px),linear-gradient(180deg,#344c42,#243b36 48%,#1c3131);
 border-top:1px solid #b6c59e80;gap:4px;padding:5px 8px;min-height:65px;
 box-shadow:inset 0 1px 0 #f0eedb17,0 -5px 18px #071a2059;
}
#bottom-nav .nav-btn{min-width:0;width:100%;min-height:54px;flex:none;border-radius:10px;border:1px solid transparent;color:#c5d5cb;box-shadow:none;}
#bottom-nav .nav-btn.active{background:linear-gradient(180deg,#f0dea9,#d4ba7a);border-color:#f3e3b5;color:#233a32;box-shadow:inset 0 1px 0 #fff4d566,0 2px 0 #071f2466;}
#bottom-nav .nav-btn.active::after{background:#506c51;bottom:3px;width:20px;}
#bottom-nav .nav-btn:focus-visible{outline:3px solid #fff0bc;outline-offset:-3px;}
#bottom-nav .nav-btn.active:focus-visible{outline-color:#233a32;outline-offset:-4px;}
#bottom-nav .n-lb{font-size:12px;font-weight:600;letter-spacing:0;text-transform:none;}#bottom-nav .n-ic{font-size:20px;filter:grayscale(.35) opacity(.85);}
#bottom-nav .nav-btn.active .n-ic{filter:none;}
#match-view-switch{display:none;}
#manager-bar{background:#152c35;border-top:1px solid #38515a;box-shadow:none;}#manager-bar #coach-primary,.action-btn.green{background:#347756;border-color:#72a488;color:#f5fff5;box-shadow:none;}
.action-btn{border-radius:10px;box-shadow:none;text-shadow:none;}.action-btn.red{background:#473238;color:#f3c8c5;border-color:#7b5156;}.action-btn.gold{background:#d8bc79;color:#1c302e;box-shadow:none;}
.action-btn:disabled{opacity:.5;filter:grayscale(.6);}#screens .screen-title{font-size:20px;letter-spacing:-.4px;}
#match-header{background:#172c36;border:0;border-bottom:1px solid #38515a;border-radius:0;}.tname{font-size:13px!important;}#score-wrap{box-shadow:none;border-color:#314650;}#phase-label,#match-clock{font-size:12px;}
#pitch-wrap{border:0;}#ticker{background:#11242ee8;box-shadow:none;max-width:96%;}#ticker-text{font-size:12px;}
#stage[data-match-view=live] #screen-squad>#release-match-panel{display:block;}#stage[data-match-view=squad] #release-match-panel{display:none;}
.release-card{border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);padding:15px;margin:10px 0;color:var(--ink);}
.release-card h3{font-size:17px;line-height:1.4;margin:5px 0 9px;font-weight:700;letter-spacing:-.25px;}.release-card p{font-size:14px;line-height:1.55;color:var(--muted);margin:6px 0;}
.release-card small{display:block;font-size:12px;line-height:1.5;color:var(--muted);}.release-eyebrow{font-size:12px;letter-spacing:1px;font-weight:700;color:var(--gold);}
.lesson-progress{display:flex;gap:8px;margin-top:14px;}.lesson-progress span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#203a46;border:1px solid #577079;color:#b7cbd1;font-size:12px;}.lesson-progress .done{background:#347756;color:#fff;}.lesson-progress .current{border-color:var(--gold);color:var(--gold);}
.match-digest ul{padding-left:18px;font-size:14px;line-height:1.55;}.match-digest li{padding:5px 0;}.match-digest .action-btn{width:100%;margin-top:14px;min-height:44px;}.live-evidence{border-left:3px solid #79ae88;}.live-evidence p{font-size:13px;}
#club-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px;}#club-history{grid-column:1/-1;}
.release-link{display:block;min-height:44px;min-width:44px;padding:11px 12px;border-radius:10px;border:1px solid var(--line);background:var(--surface-raised);color:var(--ink);font-size:13px;font-weight:600;text-align:left;cursor:pointer;}
#secondary-nav{padding:10px 12px 0;}#secondary-nav .release-link{width:100%;}#open-shortlist{width:100%;margin-bottom:12px;color:#e6d095;}
.club-view-tabs{border:0;background:#132833;padding:4px;border-radius:10px;}.club-view-tab{font-size:13px;border-radius:8px;}.club-view-tab.active{background:#2b494d;}
.coach-plan,.journey-panel,.team-drill,.club-upgrade-card{box-shadow:none!important;}.feature-surface{box-shadow:none;}.club-upgrade-card,.club-facility-card{border-radius:12px!important;}
#squad-grid .player-card{background:#1b323f;border-color:#334d57;border-left-color:var(--quality-accent);padding:10px;}.roster-fit{color:#bdcfcf!important;}#bench-row{background:#152b35;border:0;padding:0;margin-top:22px;}#bench-row .bench-card{background:#1c333f;border:1px solid #38515a;box-shadow:none;min-height:100px;}
.coach-help,.coach-plan-foot,.competition-pro-meta,.competition-offline>p[data-offline-time],.scout-need-copy small,.scout-center-stats small{font-size:12px;line-height:1.5;}
#modal-box{background:#162d37;border:1px solid #476169;border-radius:16px;box-shadow:0 24px 80px #0009;}#modal-box .modal-title{font-size:18px;}#modal-box .modal-x{min-width:44px;min-height:44px;}
.transfer-plan{padding:12px 0;}.transfer-plan label{display:block;font-size:13px;font-weight:600;margin-bottom:12px;color:#bfd0d1;}.transfer-plan select{display:block;margin-top:6px;width:100%;min-height:46px;background:#233d48;border:1px solid #58707a;border-radius:8px;color:var(--ink);font-size:16px;padding:8px;}
.transfer-quote{display:grid;grid-template-columns:1fr auto;gap:8px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:13px;}.transfer-quote strong{color:#c8dfa6;}.transfer-warning{color:#f2baaa;font-size:13px;}.transfer-fit{font-size:13px;color:#c8d6d4;}
.transfer-actions{display:flex;gap:8px;flex-wrap:wrap;}.transfer-actions button{flex:1;min-height:46px;font-size:13px;min-width:70px;}.transfer-actions .action-btn{margin:0;}
.transfer-summary{display:flex;justify-content:space-between;align-items:baseline;gap:8px;padding:0 0 7px;font-size:13px;color:#bfd0d1;}.transfer-summary b{color:var(--ink);text-align:right;}
.shortlist-row{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:8px;align-items:center;border-bottom:1px solid var(--line);padding:12px 0;}.shortlist-row img{width:40px;height:40px;image-rendering:pixelated;}.shortlist-row small{display:block;font-size:12px;color:var(--muted);margin:4px 0;}.shortlist-row b{font-size:14px;overflow-wrap:anywhere;}.shortlist-remove{grid-column:3;min-height:44px;min-width:44px;border:1px solid var(--line);background:#263b45;color:#d5aeac;border-radius:8px;font-size:20px;}
.empty-state{padding:20px 8px;color:var(--muted);line-height:1.6;}.opponent-player{display:flex;flex-direction:column;gap:6px;}.opponent-player span{font-size:13px;color:var(--muted);}
.club-masthead{display:flex;align-items:center;gap:12px;margin:16px 0;}.club-masthead h2{font-size:21px;overflow-wrap:anywhere;}.club-masthead p{font-size:13px;color:var(--muted);}.memory-list{font-size:14px;padding-left:20px;line-height:1.65;}.archive-row{display:flex;justify-content:space-between;gap:10px;padding:13px 0;border-bottom:1px solid var(--line);}.archive-row small{display:block;color:var(--muted);font-size:12px;margin-top:4px;}.archive-row b{white-space:nowrap;}
.release-settings{display:grid;gap:8px;margin:14px 0;}.release-settings small,.release-settings p{font-size:12px;color:var(--muted);}.save-preview{display:grid;gap:6px;border:1px solid var(--line);border-radius:10px;padding:15px;font-size:14px;}
@media(prefers-reduced-motion:reduce){#workspace{scroll-behavior:auto;}*{animation-duration:.01ms!important;transition-duration:.01ms!important;}}
@media(max-height:540px){#topbar{min-height:44px;}#bottom-nav{min-height:56px;}#bottom-nav .nav-btn{min-height:48px;}#manager-bar{padding-top:4px;padding-bottom:4px;}.release-card{padding:12px;}#pitch-wrap{flex-shrink:0;}}
#stage[data-tab=match][data-match-view=live] #screen-squad>#release-match-panel{display:block!important;}
.club-view-tab.active{color:#edf3ed;}

.transfer-actions .action-btn:not(.green):not(.red){background:#263f4a;color:#d9e6e3;border:1px solid #57717b;box-shadow:none;}
#club-panel-development .journey-panel>summary,#club-panel-development .club-facility-card p{font-size:13px;}

.next-fixtures{display:grid;gap:7px;border-top:1px solid var(--line);padding-top:12px;font-size:13px;color:#c1d1d0;}

/* Match management is a child of Match; Club is the long-term management hub. */
.club-overview-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:16px;}
.club-overview-stats>span{min-width:0;padding:12px 8px;background:var(--surface);border:1px solid var(--line);border-radius:10px;}
.club-overview-stats small{display:block;color:var(--muted);font-size:12px!important;min-height:32px;line-height:1.4;}
.club-overview-stats b{display:block;font-size:20px;margin-top:5px;}
#club-overview .club-masthead{margin:2px 0 18px;}
#club-overview .club-masthead h3{font-size:21px;overflow-wrap:anywhere;}
#club-overview .club-masthead p{margin:4px 0;color:var(--muted);}
#club-shortcuts{margin-top:18px;}
.coach-squad-link .action-btn{width:100%;}
.coach-next-plan{margin-top:18px;}
.coach-next-plan>summary{padding:10px 12px;border:1px solid var(--line);border-radius:10px;}
.roster-fit{display:flex;flex-direction:column;gap:2px;}
.roster-condition{font-size:12px;color:#94b8a6;}
.settings-section{font-size:14px!important;margin:20px 0 5px;color:var(--gold);}
.settings-economy{padding:8px 0;}
.settings-economy summary{min-height:44px;}
.settings-economy p{color:var(--muted);}
#screen-tournament .subtabs{overflow-x:auto;}
.subtab:focus-visible,.club-view-tab:focus-visible{outline:3px solid var(--gold);outline-offset:-3px;}
