:root{color-scheme:light;--cream:#f5f4eb;--paper:#fffef7;--green:#163e2e;--ink:#173d2e;--muted:#77816c;--line:#d9deca;--lime:#c4ef72;--soft:#e8eedb;--orange:#c4764b}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:#eef0e3;font-family:'Malgun Gothic','Apple SD Gothic Neo',system-ui,sans-serif;font-size:14px}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid #cbd5bd;border-radius:10px;padding:10px 14px;background:var(--paper);color:var(--ink);font-weight:700;line-height:1.4}button:hover:not(:disabled){background:#edf4dc;border-color:#8fa978}button:disabled{opacity:.48;cursor:default}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #79ac46;outline-offset:3px}a{color:inherit}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(26px,2.7vw,39px);line-height:1.3;letter-spacing:-.055em;word-break:keep-all}h2{font-size:19px;line-height:1.45;letter-spacing:-.04em}h3{font-size:16px}.eyebrow{font-size:10px;letter-spacing:.13em;color:#68835b;font-weight:800;margin-bottom:12px}.primary{background:var(--lime);border-color:#adc956;box-shadow:0 3px 8px #8aa04c22;color:#183f23}.primary:hover:not(:disabled){background:#d7ff90}.primary.large{width:100%;padding:14px;font-size:18px;border-radius:13px}.text-button,.danger-text{border:0;padding:9px 0;background:none;font-size:12px;font-weight:500;box-shadow:none}.danger-text{color:#aa4b35}.actions{display:flex;gap:9px;flex-wrap:wrap}.muted{font-size:12px;color:var(--muted);line-height:1.8}.center{text-align:center}.badge{display:inline-grid;place-items:center;width:56px;height:64px;background:#194f37;color:#ebf5ca;border:3px double #b7c891;border-radius:13px 13px 27px 27px;font-size:32px;font-weight:900;font-family:Georgia,serif;box-shadow:0 2px 0 #45644722}.portrait{display:inline-block;flex:none;background-color:#d8e7ca;background-image:url('assets/portraits.webp');background-size:400% 400%;background-position:var(--px) var(--py);width:90px;aspect-ratio:1;vertical-align:middle;overflow:hidden;border-radius:12px}.portrait.mini{width:39px;border-radius:8px}.portrait.small{width:48px;border-radius:9px}.topbar{position:sticky;top:0;z-index:9;display:flex;align-items:center;gap:22px;background:#fffef8f5;backdrop-filter:blur(12px);padding:13px max(18px,calc((100vw - 1500px)/2));border-bottom:1px solid #d4dcc6;box-shadow:0 2px 12px #29432b0a}.logo{display:flex;gap:12px;align-items:center;white-space:nowrap;background:none;border:0;padding:0}.logo .badge{width:40px;height:45px;font-size:25px}.logo strong{font-size:25px;letter-spacing:-.08em}.logo b{font-style:italic}nav{display:flex;align-items:center;gap:3px;flex:1;justify-content:center}nav button{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:11px;min-width:65px;padding:7px 13px;border:1px solid transparent;background:none}nav button span{font-size:20px;line-height:1.05}nav button.active{background:#e2edcd;border-color:#d0e2ad;color:#25552d}.career-status{display:flex;flex-direction:column;gap:6px;white-space:nowrap;font-size:11px;text-align:right}.career-status small{font-size:10px;color:#428148}.coach-button{display:flex;align-items:center;gap:10px;background:none;border:0;padding:0;white-space:nowrap;text-align:left;font-size:12px}.coach-button small{display:block;font-size:9px;color:var(--muted);font-weight:400;margin-top:4px}.club-strip{display:flex;justify-content:flex-end;align-items:center;gap:24px;max-width:1500px;margin:auto;padding:13px 28px;color:#68765c;font-size:11px}.club-strip>span:first-child{margin-right:auto;font-weight:800;font-size:12px;color:#304d32}.club-strip b{color:#25482f;margin-left:6px}.view{max-width:1500px;margin:auto;padding:5px 28px 20px}.panel{background:var(--paper);border:1px solid var(--line);border-radius:17px;padding:22px;box-shadow:0 4px 15px #354b2d05}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px}.panel-heading h2{margin:0}.panel-heading>span{font-size:10px;color:var(--muted)}.home-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:18px}.stadium{position:relative;min-height:405px;background:url('assets/stadium.webp') center center/cover;border-radius:19px;overflow:hidden}.stadium:after{content:'';position:absolute;inset:0;background:linear-gradient(130deg,#153e2d88,transparent 60%);pointer-events:none}.stadium-title{position:relative;z-index:1;padding:27px;color:#fffee8}.stadium-title h1{font-size:35px;line-height:1.4;text-shadow:0 2px 8px #173b2933}.stadium-title .eyebrow{color:#e1f6b5;font-size:9px}.stadium-caption{position:absolute;bottom:17px;left:20px;z-index:1;color:#f6f8e6;background:#18392dcc;backdrop-filter:blur(5px);border-radius:30px;padding:8px 12px;font-size:10px}.next-game{display:flex;flex-direction:column}.next-game .panel-heading{margin-bottom:13px}.versus{display:flex;justify-content:space-around;align-items:center;margin:15px 0}.versus .badge{width:69px;height:77px;font-size:41px}.versus>.badge:last-child{background:#9d6346;border-color:#e8d9b5}.versus>b{color:#8a8d79;font-size:23px}.team-names{display:grid;grid-template-columns:1fr 1fr;gap:18px;text-align:center;font-size:16px}.next-game .center{margin:13px 0 6px;font-size:11px}.readiness{display:flex;gap:10px;justify-content:space-around;margin:17px 0;padding:13px 4px;border-top:1px solid #e5e8d8;border-bottom:1px solid #e5e8d8;font-size:10px}.readiness b{display:block;text-align:center;font-size:13px;color:#456a32;margin-top:5px}.next-game .primary{margin-top:auto}.save-hint{font-size:10px;text-align:center;color:#718363;margin:10px 0 0}.story-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:16px;margin-top:17px}.story{display:flex;align-items:center;gap:17px;background:var(--paper);text-align:left;padding:19px;border-radius:16px;min-width:0}.story>div{min-width:0}.player-story{padding:0;overflow:hidden;gap:16px}.player-story>.portrait{width:126px;height:100%;min-height:174px;aspect-ratio:auto;align-self:stretch;border-radius:0;background-size:400% 400%}.story h2{font-size:17px;margin-bottom:10px;word-break:keep-all}.story p{font-size:11px;color:#7c836c;font-weight:400;line-height:1.7;margin-bottom:9px}.story strong{font-size:18px}.story small{font-size:10px;color:var(--muted);font-weight:400}.story .eyebrow{font-size:8px;display:block;margin:0 0 7px}.player-story>div{padding:16px 10px 15px 0}.story-icon{font-size:35px;color:#75974d}.mini-faces{display:flex;gap:5px}.bottom-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:17px;margin-top:18px}.news{list-style:none;padding:0;margin:0}.news li{font-size:12px;padding:10px 0;border-bottom:1px solid #ebeedf;line-height:1.7}.news small{display:inline-block;margin-right:13px;font-size:9px;color:#879375}.task{display:block;width:100%;text-align:left;border:0;border-top:1px solid #e5e9d8;padding:13px 0;background:none;border-radius:0}.task b{font-size:13px}.task span{display:block;font-size:11px;color:var(--muted);font-weight:400;margin-top:7px}.view-heading{display:flex;justify-content:space-between;align-items:center;gap:22px;margin:13px 0 24px}.view-heading h1{margin-bottom:9px}.view-heading .eyebrow{margin-bottom:8px}.view-heading p:not(.eyebrow){font-size:12px;color:#78846c;line-height:1.8;margin-bottom:0}.view-heading .actions{justify-content:flex-end}select,input{border:1px solid #cbd6bd;border-radius:8px;padding:10px 12px;background:#fffef7;color:var(--ink);max-width:100%;min-width:0}.squad-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:18px}.player-row{display:grid;grid-template-columns:48px minmax(90px,1fr) 35px 70px 65px;align-items:center;gap:12px;padding:9px 0;border-top:1px solid #e5ead9}.player-name{border:0;background:none;padding:0;text-align:left;min-width:0}.player-name b{font-size:13px}.player-name small{display:block;margin-top:5px;font-size:10px;color:#849078;font-weight:400}.rating{font-size:19px;font-weight:900}.fitness{position:relative;height:7px;background:#e0e5d4;border-radius:9px;display:block;margin-bottom:13px}.fitness i{display:block;background:#80b358;height:100%;border-radius:9px}.fitness small{display:block;text-align:right;font-size:9px;margin-top:5px}.pill{font-size:10px;padding:7px 8px;border-radius:30px}.pill.selected{background:#e6efc9;border-color:#b2cb7e;color:#39622a}.list-label{display:grid;grid-template-columns:1fr 47px 80px 65px;font-size:9px;color:#839174;padding:0 0 8px}.formation-panel{align-self:start;position:sticky;top:110px}.formation-panel h2{text-align:center}.formation-pitch{padding:22px 10px;background:repeating-linear-gradient(0deg,#346644 0px,#346644 50px,#396e49 50px,#396e49 100px);border:8px solid #608057;border-radius:11px;position:relative}.formation-pitch:before{content:'';position:absolute;inset:12px;border:1px solid #d3e9bc66;pointer-events:none}.formation-pitch>div{position:relative;display:flex;justify-content:space-around;gap:5px;margin:15px 0}.formation-pitch button{padding:0;border:0;background:none;color:#fff;font-size:9px;text-align:center;display:flex;align-items:center;flex-direction:column;gap:6px}.formation-pitch .portrait{width:43px;height:43px;border-radius:50%;border:2px solid #d2edaa}.formation-panel>.primary{width:100%}.market-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.recruit-card{border:1px solid #d0dbc0;border-radius:16px;background:var(--paper);overflow:hidden}.portrait.card-face{width:100%;height:auto;aspect-ratio:1.45;border-radius:0;background-size:400% 580%}.recruit-copy{padding:19px}.tag{font-size:9px;letter-spacing:.1em;background:#e9f0d7;color:#5f804b;border-radius:25px;padding:5px 9px;display:inline-block}.recruit-copy h2{font-size:24px;margin:11px 0 8px}.recruit-copy p{font-size:12px;line-height:1.7}.price{font-size:15px;display:block;margin:12px 0}.recruit-copy>.primary{width:100%}.recruit-copy>.text-button{font-size:10px}.training-options{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:11px}.training-card{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:10px;padding:18px 14px;background:#fffef7}.training-card>span{font-size:29px;color:#78a04f}.training-card strong{font-size:15px}.training-card small{font-size:10px;line-height:1.6;color:#859273;font-weight:400}.training-card.selected{background:#eef4dc;border:2px solid #9ac75c;padding:17px 13px}.training-card>b{font-size:9px;color:#52924b}.training-card:disabled{opacity:.75}.facility{display:flex;flex-direction:column;gap:9px;font-size:14px;align-items:flex-end}.facility button{font-size:11px}.section-heading{margin:35px 0 20px}.section-heading h2{margin-bottom:8px}.section-heading p{font-size:12px;color:#7c8a6e}.prep-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:20px}.prep-grid .versus{margin:22px 0}.prep-grid .readiness{margin:27px 0}.prep-grid .text-button{margin:10px auto;display:block}.tactic-controls{display:flex;flex-direction:column;gap:16px;margin:23px 0}.tactic-controls>div{display:flex;align-items:center;gap:15px;justify-content:space-between}.tactic-controls strong{font-size:12px;white-space:nowrap}.segments{display:flex;background:#e8eddc;border:1px solid #d7dec8;border-radius:9px;padding:3px;gap:3px}.segments button{font-size:11px;padding:8px 12px;border:0;border-radius:6px;background:none}.segments button.selected{background:#245639;color:#fff}.live-grid{display:grid;grid-template-columns:minmax(0,2.3fr) minmax(260px,1fr);gap:17px}.match-stage{min-width:0;background:#244e32;border-radius:17px;overflow:hidden;align-self:start;box-shadow:0 6px 20px #29472811}.scoreboard{display:flex;justify-content:space-between;align-items:center;gap:12px;color:#eff5dc;background:#203f2a;padding:15px 18px}.scoreboard>div:nth-child(2){display:flex;align-items:center;gap:17px}.scoreboard>div:nth-child(2)>span{font-size:12px}.scoreboard>div:nth-child(2)>b{font-size:30px;white-space:nowrap}.clock{display:flex;flex-direction:column}.clock small{font-size:8px;color:#b9c6a9}.clock>b{font-size:23px;margin-top:5px}.scoreboard select{font-size:11px;background:#2c5034;color:#f3f4e2;border-color:#65815a;padding:7px}#pitch{display:block;width:100%;aspect-ratio:1.65;background:#4c7a42}.match-stat{display:flex;justify-content:space-around;gap:15px;font-size:10px;color:#bed1b2;padding:13px}.match-stat b{color:#f0f6dc;margin-left:7px}.match-actions{display:flex;align-items:center;gap:14px;padding:13px 17px;background:#edf1df}.match-actions small{font-size:10px;color:#7b876b;line-height:1.5}.match-actions button{white-space:nowrap;font-size:12px}.commentary{background:#f9f9ed;padding:10px 17px;min-height:152px}.commentary p{font-size:11px;color:#718167;margin:0;padding:7px 0;border-bottom:1px solid #e4e8d7;line-height:1.6}.commentary b{display:inline-block;min-width:36px;color:#39603d}.commentary .goal{color:#245f2e;font-weight:800}.coach-panel{padding:20px}.coach-talk{display:flex;gap:12px;align-items:center}.coach-talk .portrait{width:72px;border-radius:10px}.coach-talk h2{font-size:17px;margin-bottom:7px}.coach-talk p{font-size:11px;color:#7c876c;line-height:1.7;margin:0}.coach-panel .tactic-controls>div{flex-direction:column;align-items:stretch;gap:8px}.coach-panel .segments{justify-content:space-between}.coach-panel .segments button{flex:1;padding:8px 6px}.coach-panel h3{margin:26px 0 15px;font-size:14px}.coach-panel h3 small{float:right;color:#859376;font-size:10px}.coach-panel label{display:block;font-size:10px;color:#738466;margin:12px 0}.coach-panel label select{display:block;width:100%;font-size:11px;margin-top:7px}.coach-panel #sub{width:100%;font-size:12px}.coach-panel>.muted{font-size:10px;margin-top:17px}.match-result{max-width:1000px;margin:20px auto;text-align:center;padding:35px}.match-result h1{font-size:32px;margin-bottom:30px}.final-score{display:flex;justify-content:center;align-items:center;gap:35px}.final-score span{font-size:17px}.final-score strong{font-size:65px;letter-spacing:-.04em;white-space:nowrap}.summary-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:30px auto;max-width:700px}.summary-cards>div{padding:18px;background:#edf3dd;border-radius:12px}.summary-cards small{display:block;font-size:10px;color:#7e8e6a;margin-bottom:8px}.summary-cards b{font-size:20px}.goal-list p{font-size:13px;line-height:1.8}.match-result .actions{justify-content:center}.league-table{overflow:auto}.table-row{display:grid;grid-template-columns:minmax(170px,1fr) 60px 90px 60px 50px;gap:10px;align-items:center;padding:15px 10px;border-bottom:1px solid #e8eddc;font-size:12px}.table-header{font-size:9px;color:#8a977a}.table-row>strong{font-size:13px}.table-row>strong>span{margin-left:15px;font-weight:600}.table-row.ours{background:#e9f3d5;border-radius:10px;color:#38612c}.history-row{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid #e5ead8;font-size:12px}.history-row small{font-size:9px;color:#849373}.history-row strong{margin-left:auto}.result-pill{padding:4px 7px;border-radius:5px;font-size:9px}.result-pill.win{background:#d9ecc3;color:#3b752f}.result-pill.draw{background:#e5e8d7;color:#6d7e60}.result-pill.loss{background:#f0ddcd;color:#b06a4d}.album{display:flex;flex-direction:column;gap:8px;padding:17px;border:1px solid #dce4ce;border-radius:12px;margin-bottom:15px}.album b{font-size:16px}.album span,.album small{font-size:11px;color:#869571}.scorer{display:flex;align-items:center;gap:11px;font-size:12px;margin-top:12px}.scorer>b{margin-left:auto}footer{text-align:center;padding:22px 20px;font-size:9px;color:#899678;line-height:1.8}dialog{border:1px solid #c8d6b7;border-radius:20px;width:min(860px,calc(100vw - 28px));padding:30px;background:#fffef6;color:var(--ink);max-height:90dvh;overflow:auto;box-shadow:0 25px 100px #183b2c33}dialog::backdrop{background:#173b2c99;backdrop-filter:blur(4px)}.close{position:absolute;right:15px;top:13px;border:0;font-size:25px;background:none;padding:1px 8px}.player-modal{display:grid;grid-template-columns:1fr 1.3fr;gap:28px;margin-top:10px}.portrait.profile-face{width:100%;height:100%;min-height:410px;border-radius:13px;background-size:580% 400%;align-self:stretch}.player-modal h1{font-size:34px;margin:15px 0 8px}.player-modal section>p{font-size:12px;line-height:1.7}.profile-rating{display:flex;align-items:center;gap:13px;margin:15px 0}.profile-rating>strong{font-size:48px;line-height:1;color:#3b7133}.profile-rating>span{font-size:13px;font-weight:700}.profile-rating small{font-size:9px;color:#8a967a;font-weight:400}.attribute-list{margin:15px 0}.attribute-list>div{display:grid;grid-template-columns:77px 1fr 30px;gap:10px;align-items:center;font-size:11px;margin:12px 0}.attribute-list i{height:6px;border-radius:8px;background:#e4e9d6;overflow:hidden}.attribute-list i>b{display:block;height:100%;background:#8cb855}.player-modal label{font-size:11px;display:flex;align-items:center;gap:10px;justify-content:space-between}.player-modal select{font-size:11px;padding:7px}.memories{font-size:10px;color:#7c9166;line-height:1.8;margin:15px 0}.memories span{display:block}.settings{max-width:600px;margin:auto}.settings h1{font-size:30px}.settings p{font-size:13px;line-height:1.9}.settings .primary{margin-right:10px}.settings hr{border:0;border-top:1px solid #dfe5d2;margin:25px 0}.warning{background:#f3e4bc;padding:12px;text-align:center;font-size:12px}.welcome{position:relative;min-height:100dvh;display:grid;grid-template-columns:1.1fr 1fr;background:#f9f8ec}.welcome-art{background:url('assets/stadium.webp') center/cover;min-height:700px}.welcome-copy{padding:clamp(30px,6vw,85px);align-self:center}.welcome-copy>.badge{margin-bottom:25px}.welcome-copy h1{font-size:clamp(33px,4vw,56px);margin-bottom:20px}.welcome-copy em{color:#669647;font-style:normal}.welcome-copy>p:not(.eyebrow){font-size:13px;color:#7e8a6d;line-height:1.9}.welcome form{margin:26px 0 15px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.welcome label{font-size:11px;color:#78866b}.welcome input{display:block;width:100%;margin-top:7px;font-size:14px}.welcome .primary{grid-column:1/-1;margin-top:7px;padding:14px;font-size:16px}.welcome-copy>small{display:block;font-size:10px;color:#8d987b;line-height:1.7}.welcome .text-button{margin-top:10px}.boot{margin:80px;text-align:center;font-size:16px;color:#6c8760}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);background:#1d4937;color:#fffdea;font-size:12px;line-height:1.7;padding:14px 22px;border-radius:12px;box-shadow:0 8px 25px #123b2c33;z-index:99;opacity:0;pointer-events:none;transition:opacity .16s,transform .16s;max-width:min(550px,calc(100vw - 28px));width:max-content}#toast.show{opacity:1;transform:translate(-50%,0)}
@media(min-width:1550px){.topbar{padding-left:calc((100vw - 1480px)/2);padding-right:calc((100vw - 1480px)/2)}}
@media(max-width:1150px){.topbar{gap:12px;padding:12px 17px}.logo strong{font-size:22px}.logo .badge{width:34px;height:40px}.logo{gap:8px}nav button{min-width:51px;padding:7px 9px;font-size:10px}.career-status{font-size:10px}.coach-button>span:not(.portrait){display:none}.view{padding:5px 20px 20px}.club-strip{padding:12px 20px}.stadium{min-height:375px}.stadium-title h1{font-size:30px}.story-grid{grid-template-columns:1.1fr 1fr 1fr;gap:11px}.story{gap:11px;padding:15px}.player-story{padding:0}.player-story>.portrait{width:102px}.story h2{font-size:15px}.story-icon{font-size:27px}.player-story>div{padding:15px 8px 15px 0}.panel{padding:19px}.live-grid{grid-template-columns:minmax(0,2fr) minmax(250px,1fr)}.scoreboard{padding:12px}.scoreboard>div:nth-child(2){gap:10px}.scoreboard>div:nth-child(2)>span{font-size:10px}.scoreboard>div:nth-child(2)>b{font-size:25px}.market-grid{gap:14px}.training-options{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:780px){.topbar{flex-wrap:wrap;gap:8px;padding:10px 13px;position:relative}.logo{order:0}.logo strong{font-size:23px}.career-status{order:1;margin-left:auto;text-align:right;font-size:10px}.coach-button{order:2;margin-left:8px}.coach-button .mini{width:36px}nav{order:3;width:100%;flex:auto;justify-content:space-between;border-top:1px solid #e1e5d2;margin-top:4px;padding-top:7px}nav button{flex:1;min-width:0;padding:7px 5px;font-size:10px;gap:5px}nav button span{font-size:19px}.club-strip{gap:13px;flex-wrap:wrap;padding:12px 14px;font-size:10px}.club-strip>span:first-child{font-size:11px;flex-basis:100%;margin:0}.club-strip .desktop-only{display:none}.club-strip b{margin-left:3px}.view{padding:3px 13px 15px}.home-grid{grid-template-columns:1fr;gap:13px}.stadium{min-height:275px}.stadium-title{padding:20px}.stadium-title h1{font-size:27px}.stadium-title .eyebrow{font-size:8px}.stadium-caption{font-size:8px;bottom:13px;left:15px}.next-game{padding:20px}.versus{margin:5px 0 10px}.versus .badge{width:52px;height:59px;font-size:33px}.team-names{font-size:14px}.readiness{margin:12px 0;padding:10px 0}.next-game .center{margin:9px 0 3px}.primary.large{font-size:16px;padding:12px}.story-grid{grid-template-columns:1fr;margin-top:13px;gap:11px}.story{min-height:110px;padding:17px;gap:18px}.story h2{font-size:16px;margin-bottom:7px}.story p{font-size:10px;margin-bottom:6px}.story .eyebrow{font-size:8px;margin-bottom:6px}.player-story{padding:0}.player-story>.portrait{min-height:151px;width:120px}.player-story>div{padding:16px 12px 16px 0}.story strong{font-size:17px}.mini-faces .mini{width:31px}.bottom-grid{grid-template-columns:1fr;gap:13px;margin-top:13px}.view-heading{display:block;margin:15px 0 18px}.view-heading h1{font-size:28px}.view-heading p:not(.eyebrow){font-size:11px}.view-heading .actions{justify-content:flex-start;margin-top:15px}.actions button,.actions select{font-size:11px}.panel{padding:17px}.panel h2{font-size:17px}.squad-grid{grid-template-columns:1fr;gap:13px}.formation-panel{position:static}.player-row{grid-template-columns:40px minmax(66px,1fr) 27px 43px 51px;gap:8px;padding:10px 0}.portrait.small{width:40px}.player-name b{font-size:11px}.player-name small{font-size:8px}.rating{font-size:17px}.pill{font-size:9px;padding:6px}.list-label{grid-template-columns:1fr 35px 51px 51px;font-size:8px}.fitness small{font-size:8px}.formation-pitch>div{margin:14px 0}.formation-pitch .portrait{width:39px;height:39px}.market-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.recruit-copy{padding:12px}.recruit-copy h2{font-size:20px}.recruit-copy p{font-size:10px}.recruit-copy .muted{display:none}.recruit-copy .tag{font-size:7px}.price{font-size:12px;margin:10px 0}.recruit-copy .primary{font-size:10px;padding:9px 6px}.recruit-copy .text-button{font-size:8px}.portrait.card-face{aspect-ratio:1.15;background-size:400% 460%}.facility{align-items:flex-start;margin-top:14px}.training-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.training-card{padding:15px;gap:8px}.training-card strong{font-size:14px}.training-card small{font-size:9px}.training-card.selected{padding:14px}.training-card>span{font-size:25px}.section-heading{margin:25px 0 15px}.section-heading p{font-size:11px;line-height:1.8}.prep-grid{grid-template-columns:1fr;gap:13px}.tactic-controls>div{gap:10px}.tactic-controls strong{font-size:11px}.segments button{font-size:10px;padding:8px 10px}.live-grid{grid-template-columns:1fr;gap:13px}.scoreboard{padding:12px 10px;gap:8px}.scoreboard>div:nth-child(2){gap:9px}.scoreboard>div:nth-child(2)>span{font-size:9px;max-width:70px}.scoreboard>div:nth-child(2)>b{font-size:25px}.clock small{font-size:7px}.clock>b{font-size:20px}.scoreboard select{font-size:9px;padding:5px}.match-stat{font-size:8px;gap:7px;padding:12px 8px}.match-stat b{margin-left:3px}.match-actions{gap:10px;padding:12px}.match-actions small{font-size:9px}.match-actions button{font-size:11px}.commentary{padding:8px 12px}.commentary p{font-size:10px}.coach-panel .tactic-controls>div{flex-direction:row;align-items:center}.coach-panel .segments button{padding:8px 12px}.coach-talk .portrait{width:65px}.coach-talk h2{font-size:17px}.coach-talk p{font-size:10px}.match-result{padding:23px 17px;margin:10px auto}.match-result h1{font-size:27px;margin-bottom:23px}.final-score{gap:17px;flex-wrap:wrap}.final-score span{font-size:12px;max-width:100px}.final-score strong{font-size:49px}.summary-cards{gap:8px;margin:24px 0}.summary-cards>div{padding:13px 7px}.summary-cards small{font-size:8px}.summary-cards b{font-size:16px}.table-row{grid-template-columns:minmax(125px,1fr) 29px 60px 31px 28px;gap:6px;padding:13px 4px;font-size:10px}.table-header{font-size:8px}.table-row>strong{font-size:10px}.table-row>strong>span{margin-left:8px}.history-row{gap:9px;font-size:11px}.history-row small{font-size:8px}dialog{padding:25px 18px}.player-modal{grid-template-columns:1fr;gap:17px}.portrait.profile-face{height:250px;min-height:0;width:100%;background-size:400% 700%}.player-modal h1{font-size:28px;margin-top:12px}.profile-rating>strong{font-size:42px}.welcome{grid-template-columns:1fr}.welcome-art{min-height:250px}.welcome-copy{padding:27px 24px}.welcome-copy>.badge{display:none}.welcome-copy h1{font-size:35px}.welcome-copy>p:not(.eyebrow){font-size:12px}.welcome form{margin:20px 0 15px;gap:10px}.welcome input{font-size:13px;padding:10px}.welcome-copy>small{font-size:9px}.settings p{font-size:12px}.settings button{font-size:11px}.boot{margin:60px 20px}footer{font-size:8px;padding:18px}}
@media(prefers-reduced-motion:reduce){#toast{transition:none}}

.portrait.profile-face{height:auto;min-height:0;aspect-ratio:1;background-size:400% 400%;align-self:start}.portrait.card-face{aspect-ratio:1;background-size:400% 400%}.player-story>.portrait{height:126px;min-height:0;align-self:center;aspect-ratio:1;background-size:400% 400%;border-radius:12px;margin-left:12px}
@media(max-width:1150px){.player-story>.portrait{height:102px}}
@media(max-width:780px){.player-story>.portrait{width:110px;height:110px}.portrait.profile-face{width:min(100%,300px);margin:auto}.portrait.card-face{aspect-ratio:1;background-size:400% 400%}}

@media(max-width:780px){.topbar{display:grid;grid-template-columns:minmax(0,1fr) auto 25px;gap:8px}.topbar nav{grid-column:1/-1;order:3}.topbar .logo{min-width:0}.logo strong{font-size:20px}.logo .badge{width:31px;height:36px;font-size:21px}.career-status{max-width:120px;margin:0;font-size:9px}.career-status small{font-size:8px;max-width:120px;overflow:hidden;text-overflow:ellipsis}.coach-button{margin:0;justify-content:center}.coach-button .portrait{display:none}.coach-button:after{content:'⚙';font-size:23px}}
@media(max-width:360px){.logo strong{font-size:18px}.career-status{max-width:103px}.career-status small{max-width:103px}.logo{gap:6px}}
.real-portrait{background:#e3ecd9!important;overflow:hidden;display:inline-flex;align-items:center;justify-content:center}.real-portrait img{width:100%;height:100%;object-fit:cover;display:block}.portrait-pending{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#68816b;font-size:32px;width:100%;height:100%;min-height:40px}.portrait-pending small{font-size:9px;white-space:nowrap}.portrait.small .portrait-pending small,.portrait.mini .portrait-pending small{display:none}.club-badge{background:none!important;border:0!important;box-shadow:none!important}.club-badge img{width:100%;height:100%;object-fit:contain}.club-preview{display:flex;align-items:center;gap:14px;padding:12px;background:#e8eedf;border-radius:12px}.club-preview img{object-fit:contain}.club-preview small{display:block;margin-top:6px}.team-select-label select{width:100%;min-height:46px;margin-top:7px}.market-filters{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.market-filters input{flex:1;min-width:150px}.market-filters input,.market-filters select{min-height:44px;font:inherit;padding:10px;border:1px solid #bfceb3;border-radius:9px;background:#fffef4}.load-more{display:block;margin:20px auto;min-height:44px}.real-report{margin-top:22px;padding-top:18px;border-top:1px solid #cbd5bd;grid-column:1/-1}.record-numbers{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.record-numbers span{padding:10px;background:#edf1e5;border-radius:8px;font-size:11px}.record-numbers b{display:block;font-size:22px;margin-top:5px}.report-axis{display:grid;grid-template-columns:90px 1fr 100px;align-items:center;gap:10px;margin:12px 0;font-size:12px}.report-axis i{height:7px;background:#e0e8d4;border-radius:5px;overflow:hidden}.report-axis i b{display:block;height:100%;background:#61945d}.report-axis strong{text-align:right;font-size:11px}.real-report details{font-size:12px;line-height:1.8;margin-top:18px}.real-report summary{cursor:pointer;min-height:44px;display:flex;align-items:center}.game-attributes-label,.source-note{font-size:11px;line-height:1.8;color:#61745c}.real-report .muted{font-size:11px;line-height:1.8}.recruit-copy .primary,.recruit-copy .text-button{min-height:44px}.real-report a{color:#245e46;text-decoration:underline}@media(max-width:780px){.market-filters input{flex-basis:100%}.market-filters select{flex:1;min-width:0}.record-numbers{grid-template-columns:repeat(2,1fr)}.report-axis{grid-template-columns:74px 1fr 84px;gap:7px}.welcome-art{min-height:180px}.welcome-copy{padding:24px 20px}.welcome-copy h1{font-size:32px}.club-preview{font-size:12px}.portrait.profile-face{max-width:220px}.real-report{margin-top:8px}.recruit-copy h2{font-size:18px}.recruit-copy .text-button{font-size:11px}.portrait.card-face .portrait-pending{min-height:145px}}
.position-help{font-size:12px;text-align:center;color:#64785d;margin:8px 0 14px}.formation-pitch.position-board{position:relative;display:block;height:390px;min-height:390px;margin:12px 0;border-width:9px}.position-board .position-slot{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:3px;width:18%;max-width:95px;min-width:44px;min-height:70px;padding:3px 0;background:transparent;border:0;color:#fff;cursor:pointer;border-radius:9px}.position-board .position-slot:hover,.position-board .position-slot:focus-visible{background:#c6ff6d33;outline:2px solid #d5ff8b;outline-offset:1px}.position-slot>small{font-size:9px;font-weight:800;color:#ddf9a9}.position-slot>span:not(.portrait){font-size:10px;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.position-slot .portrait{width:41px;height:41px;border:2px solid #d9eaca;border-radius:50%;flex:none}.empty-position{display:grid;place-items:center;width:41px;height:41px;border:1px dashed #cbe1b5;border-radius:50%;font-size:22px!important}.position-picker h1{font-size:25px;margin-bottom:10px}.position-picker>p{font-size:12px;line-height:1.8}.position-picker>div{display:grid;gap:7px;margin-top:16px}.position-candidate{display:flex;align-items:center;gap:12px;min-height:64px;width:100%;text-align:left;padding:9px;border:1px solid #d2dbc4;border-radius:10px;background:#f5f7ec}.position-candidate>span:not(.portrait){flex:1;min-width:0}.position-candidate b{font-size:14px}.position-candidate small{display:block;font-size:11px;color:#63745a;margin-top:5px}.position-candidate.current{border:2px solid #70a33b;background:#eaf6d4}.position-candidate .portrait{width:42px;height:42px;flex:none}.position-candidate>strong{font-size:20px}.position-candidate:hover{background:#eaf2da}@media(max-width:780px){.squad-grid>.formation-panel{grid-row:1}.formation-pitch.position-board{height:360px;min-height:360px}.position-slot .portrait{width:38px;height:38px}.position-slot>span:not(.portrait){font-size:9px}.position-board .position-slot{min-height:68px}.formation-panel .muted{font-size:11px;line-height:1.8}}
