@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--ink:#18231d;--muted:#7b837e;--line:#e6e9e5;--paper:#f5f6f3;--lime:#c7f36b;--team:#a61931;--team2:#f5bd28}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.3}button,input,select,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #86b638;outline-offset:3px}button{color:inherit}svg{width:24px;height:24px}.header{height:86px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 4%}.brand{text-decoration:none;display:flex;align-items:center;color:var(--ink);font:800 25px Manrope,Arial,sans-serif;letter-spacing:-1.2px;gap:0}.brand-light{font-weight:500}.brand-icon{width:37px;height:37px;display:grid;place-items:center;background:var(--ink);color:var(--lime);border-radius:9px;margin-right:10px}.brand-icon svg{width:25px;height:25px}.beta{font:650 10px 'DM Sans',sans-serif;letter-spacing:1px;padding:4px 6px;border:1px solid var(--line);border-radius:4px;margin-left:10px;color:#747b74}.header-right{display:flex;gap:25px;align-items:center;font-size:13px;color:var(--muted)}.edition{font-size:11px;font-weight:700;letter-spacing:1.1px;padding:9px 12px;background:#f2f4ef;border-radius:5px;color:#495246}main{max-width:1510px;margin:auto;padding:30px 4% 0}.page-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.8px;color:#7c867b;margin-bottom:8px}h1{font:800 34px Manrope,Arial,sans-serif;letter-spacing:-1.5px;margin:0}h1 span{color:#7aab34}.heading-note{display:flex;gap:12px;align-items:center;font-size:13px;color:#8a908b;line-height:1.6}.heading-note strong{color:#52604e;font-weight:500}.heading-note svg{height:28px;width:28px}.workspace{display:grid;grid-template-columns:255px minmax(360px,1fr) 290px;gap:22px;align-items:start}.panel{background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden}.panel-heading{display:flex;justify-content:space-between;align-items:center;padding:21px 20px 18px}.panel h2{font:750 16px Manrope,sans-serif;letter-spacing:-.4px;margin:0}.step{font-size:12px;color:#a4ada2}.league{margin:0 16px 17px;padding:12px 10px;display:flex;align-items:center;gap:10px;background:#f6f7f4;border:1px solid #edf0e9;border-radius:8px}.league-icon{background:#da333d;color:white;width:29px;height:34px;border-radius:6px;display:grid;place-items:center;font-size:11px;font-weight:800}.league strong{font-size:13px;display:block}.league small{font-size:11px;color:var(--muted);display:block;margin-top:4px}.search{display:flex;align-items:center;margin:0 16px 14px;border:1px solid var(--line);border-radius:7px;height:40px;padding:0 11px;gap:8px}.search svg{width:16px;height:16px;color:#999f96;flex:none}.search input{border:0;outline:none;width:100%;font-size:13px;background:none}.team-list{max-height:469px;overflow:auto;padding:0 8px;scrollbar-width:thin;scrollbar-color:#dce2d8 transparent}.team-button{display:flex;align-items:center;gap:11px;width:100%;background:transparent;border:1px solid transparent;border-radius:7px;min-height:47px;padding:7px 10px;text-align:left;font-size:13px;font-weight:500;margin-bottom:2px}.team-button:hover{background:#f6f8f2}.team-button.active{background:#f1f8e7;border-color:#deedc5}.badge{width:29px;height:31px;border-radius:8px;display:grid;place-items:center;font-size:10px;letter-spacing:-.4px;font-weight:800;flex:none;color:white;background:var(--c);border:2px solid var(--c2);box-shadow:0 1px 1px #00000012}.team-check{margin-left:auto;color:#679931;font-weight:bold}.custom-team{margin:15px 16px 0;width:calc(100% - 32px);background:white;border:1px dashed #cdd5c6;border-radius:7px;padding:11px 4px;font-size:12px;font-weight:600}.custom-team span{padding-right:4px}.source-note{font-size:10px;line-height:1.8;color:#959c93;padding:13px 20px 17px}.source-note a{color:#6e7b66;text-decoration:underline}.board-panel{border-radius:12px;border:1px solid #23392c;overflow:hidden;background:#173b2c;box-shadow:0 7px 18px #16271a12}.board-top{display:flex;justify-content:space-between;align-items:center;padding:17px 23px;background:#193226;color:#fff}.board-team{display:flex;gap:12px;align-items:center}.large{width:34px;height:39px;font-size:12px;border-radius:9px}.board-team h2{font:700 16px Manrope,sans-serif;margin:0 0 5px}.board-team div>span{font-size:11px;color:#b6c8b9}.board-separator{padding:0 7px;opacity:.4}.live-count{font-size:14px;color:#d5e7d9;background:#264232;border:1px solid #34553d;border-radius:6px;padding:7px 9px}.live-count span{font-size:11px;margin-left:3px;color:#a9bdaa}.pitch-wrap{padding:0 16px;background:#19452f}.pitch{position:relative;aspect-ratio:680/880;width:100%;max-height:642px;background:repeating-linear-gradient(0deg,#205035 0%,#205035 10%,#24573a 10%,#24573a 20%);overflow:hidden;isolation:isolate}.pitch-lines{position:absolute;inset:0;height:100%;width:100%;color:#a5c99f;opacity:.44}.attack-direction{position:absolute;top:3%;left:5.7%;font-size:9px;letter-spacing:1.4px;color:#9bbd92;writing-mode:vertical-rl;transform:rotate(180deg);opacity:.7}.pitch-watermark{position:absolute;bottom:2%;right:6%;font-size:8px;letter-spacing:2px;color:#acd39c;opacity:.35}.player{position:absolute;transform:translate(-50%,-50%);width:87px;background:none;border:0;padding:3px 0;color:white;text-align:center;touch-action:none;user-select:none;z-index:2;cursor:grab}.player:active{cursor:grabbing}.player.selected{z-index:5}.player-disc{width:43px;height:43px;border-radius:50%;background:linear-gradient(90deg,var(--team) 0 50%,var(--team2) 50%);display:grid;place-items:center;margin:0 auto 5px;border:2px solid #f5edcd99;box-shadow:0 3px 6px #00170665;position:relative}.player-disc b{display:grid;place-items:center;min-width:22px;height:23px;padding:1px 4px;background:#18251ed9;border-radius:5px;font-size:15px;font-weight:700}.player.goalkeeper .player-disc{background:#d1e5bd;border-color:#e4f4d2}.player.goalkeeper .player-disc b{background:#334a2d}.player.selected .player-disc{outline:2px solid var(--lime);outline-offset:4px}.player:hover .player-disc{box-shadow:0 0 0 4px #c7f36b33,0 3px 6px #00170665}.player-name{display:inline-block;max-width:87px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px;font-weight:600;padding:3px 6px;background:#102d20d9;border-radius:4px;vertical-align:top}.player-role{display:block;font-size:8px;font-weight:600;letter-spacing:1px;line-height:1.6;color:#c2dcb6;margin-top:1px}.board-toolbar{display:flex;justify-content:space-between;align-items:center;background:#193226;color:#c1d0bd;padding:11px 17px;font-size:11px}.board-toolbar>div{display:flex;align-items:center}.drag-symbol{font-size:20px;vertical-align:middle;margin-right:4px;color:#b3cf9c}.icon-button,.reset-button{background:none;border:0;color:#d3dfcf;padding:4px 8px}.icon-button{font-size:23px;line-height:1}.reset-button{font-size:16px;display:flex;align-items:center;gap:6px}.reset-button span{font-size:11px}.toolbar-divider{height:15px;width:1px;background:#496047;margin:0 3px}.right-column{display:flex;flex-direction:column;gap:17px}.formation-tabs{display:flex;background:#f2f4f0;border-radius:7px;padding:3px;margin:0 18px 15px;gap:3px}.formation-tabs button{width:50%;border:0;border-radius:5px;background:none;color:#7c8676;font-size:12px;padding:8px}.formation-tabs button.active{color:#273222;background:white;box-shadow:0 1px 4px #102d2012;font-weight:650}.formation-tabs span{font-size:10px;color:#90998a;margin-left:3px}.formation-grid{padding:0 18px;display:grid;grid-template-columns:1fr 1fr;gap:9px;max-height:370px;overflow:auto;scrollbar-width:thin}.formation-card{height:95px;border:1px solid #e3e8df;border-radius:7px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:white;gap:7px;position:relative;font-size:13px;font-weight:650}.formation-card.active{background:#f4faeb;border:1px solid #a2ca65}.formation-card.active:after{content:'✓';position:absolute;right:7px;top:5px;color:#729d35;font-size:10px}.mini-pitch{height:52px;width:67px;position:relative;background:linear-gradient(0deg,transparent 49%,#dee5d8 49%,#dee5d8 51%,transparent 51%);border:1px solid #e3e8df;border-radius:2px}.mini-player{position:absolute;width:4px;height:4px;background:#829471;border-radius:50%;transform:translate(-50%,-50%)}.active .mini-player{background:#759e37}.custom-formation{background:none;border:0;text-align:center;width:100%;font-size:12px;color:#68765e;padding:14px}.formation-detail{border-top:1px solid var(--line);background:#fafbf8;padding:16px 19px}.formation-detail>div{display:flex;align-items:center;gap:7px}.mini-dot{height:5px;width:5px;border-radius:50%;background:#91b849}.formation-detail strong{font-size:12px}.formation-detail #formationTag{font-size:10px;color:#839574;margin-left:auto;padding:3px 7px;border:1px solid #e1e9d9;border-radius:4px}.formation-detail p{font-size:12px;line-height:1.7;color:#7e8876;margin:8px 0 0}.player-panel .panel-heading{padding-bottom:12px}.no-player{text-align:center;padding:5px 20px 24px}.select-player-icon{background:#f4f6f0;border:1px solid #e7ece2;border-radius:8px;display:grid;place-items:center;margin:0 auto 11px;width:35px;height:35px;color:#80956d;font-size:24px}.no-player p{font-size:13px;font-weight:500;margin:0 0 5px}.no-player small{font-size:11px;line-height:1.7;color:#92998b}.free-position{display:flex;gap:11px;padding:3px 9px}.free-position svg{flex:none;width:21px;height:21px;color:#7f906f}.free-position strong{font-size:12px;font-weight:600;color:#67775e}.free-position p{font-size:11px;line-height:1.7;color:#959d8d;margin:5px 0}footer{display:flex;justify-content:space-between;padding:23px 0 20px;font-size:10px;color:#969d92}footer>span:first-child{letter-spacing:.3px}.footer-slash{padding:0 10px;color:#c0c9b7}#playerForm{padding:0 19px 17px}.player-form-heading{display:flex;gap:8px;align-items:center;margin-bottom:12px;font-size:12px;color:#87927b}.player-form-heading span{background:#edf4e3;color:#5d792e;border-radius:5px;padding:5px 9px}form label{display:block;font-size:12px;font-weight:550;color:#66765c;margin-bottom:12px}form input,form select{width:100%;padding:9px 10px;border:1px solid #dfe5d9;border-radius:6px;background:white;margin-top:6px;color:#263521;font-size:14px;min-width:0}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.apply-button{width:100%;display:flex;justify-content:space-between;background:var(--ink);color:var(--lime);border:0;border-radius:6px;padding:11px 12px;font-size:12px;font-weight:600}.keyboard-tip{font-size:10px;line-height:1.7;color:#959d8d;margin-bottom:0}.empty-teams{font-size:13px;color:var(--muted);padding:20px 12px}dialog{width:min(400px,calc(100% - 32px));border:1px solid var(--line);border-radius:13px;padding:24px;color:var(--ink)}dialog::backdrop{background:#0c241aba;backdrop-filter:blur(3px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.dialog-heading h2{font:700 20px Manrope,sans-serif;margin:0}.dialog-heading button{background:none;border:0;font-size:24px;color:#78866b}dialog p{font-size:13px;color:#7e8975;line-height:1.6}#dialogError{color:#b1363c}input[type=color]{height:43px;padding:4px}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,15px);background:var(--ink);color:white;padding:12px 19px;border:1px solid #394d2f;border-radius:8px;box-shadow:0 5px 30px #0002;font-size:13px;opacity:0;pointer-events:none;transition:.2s;z-index:20}#toast.show{opacity:1;transform:translate(-50%,0)}[hidden]{display:none!important}@media(min-width:1450px){.pitch{max-height:700px}.team-list{max-height:521px}}@media(max-width:1150px){main{padding:25px 2.5% 0}.workspace{grid-template-columns:215px minmax(330px,1fr) 250px;gap:14px}.header{padding:0 2.5%}.panel-heading{padding:18px 16px}.formation-grid{padding:0 13px}.board-top{padding:15px}.league{margin-inline:12px}.league strong{font-size:11px}.league small{font-size:10px}.team-button{font-size:12px}.pitch-wrap{padding:0 8px}.player{width:74px}.player-name{max-width:74px}.player-disc{width:37px;height:37px}.player-disc b{font-size:13px}.player-name{font-size:10px}.team-list{max-height:423px}}@media(max-width:950px){.workspace{grid-template-columns:205px 1fr}.right-column{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;align-items:start}.formation-grid{grid-template-columns:repeat(3,1fr)}.free-position{display:none}.pitch{max-height:620px}.team-list{max-height:462px}.header-right .desktop-label{display:none}}@media(max-width:620px){.header{height:68px;padding:0 18px}.brand{font-size:21px}.brand-icon{width:32px;height:32px}.beta{font-size:8px}.edition{font-size:8px;letter-spacing:.5px;padding:7px}.header-right{gap:0}main{padding:23px 14px 0}.eyebrow{font-size:8px;letter-spacing:1.2px}h1{font-size:28px}.page-heading{margin-bottom:20px}.heading-note{font-size:10px;gap:4px}.heading-note svg{width:21px}.workspace{display:flex;flex-direction:column;gap:16px}.teams-panel{width:100%;display:grid;grid-template-columns:1fr 1fr}.teams-panel .panel-heading{padding:15px 14px 12px}.teams-panel .league{margin:9px 12px 8px 0;padding:7px;gap:7px}.league-icon{width:22px;height:25px;font-size:9px}.league small{font-size:8px}.league strong{font-size:10px}.search{grid-column:1/-1;margin:0 12px 10px;height:35px}.team-list{grid-column:1/-1;display:flex;gap:5px;overflow:auto;max-height:none;padding:0 12px 5px}.team-button{width:auto;white-space:nowrap;flex:none;padding:7px;gap:6px;min-height:38px;font-size:11px}.badge{width:23px;height:25px;font-size:8px}.team-check{display:none}.custom-team{grid-column:1/-1;margin:8px 12px 12px;padding:8px;width:calc(100% - 24px);font-size:11px}.source-note{display:none}.board-panel{width:100%}.board-top{padding:13px 16px}.large{width:31px;height:35px;font-size:10px}.pitch{max-height:none;min-height:430px}.player-disc{width:37px;height:37px}.player-name{font-size:10px;max-width:69px}.player-role{font-size:8px}.right-column{display:flex;flex-direction:column;width:100%;gap:16px}.right-column>.panel{width:100%}.formation-grid{grid-template-columns:repeat(3,1fr);max-height:320px}.formation-card{height:93px}.formation-panel .panel-heading,.player-panel .panel-heading{padding:18px}.no-player{padding:10px 20px 24px}.no-player small{font-size:12px}.free-position{display:flex;padding:0 6px}.free-position p{font-size:12px}footer{line-height:1.8;font-size:9px;padding:20px 3px}footer>span:last-child{display:none}.formation-tabs button{font-size:14px}form label{font-size:14px}.apply-button{font-size:14px}.player-form-heading{font-size:14px}.formation-detail p{font-size:13px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
/* Readable controls and secondary labels across screen sizes. */
.beta,.eyebrow,.edition,.league small,.league-icon,.source-note,.team-check,.board-team div>span,.live-count span,.drag-tip,.reset-button span,.formation-tabs span,.formation-detail #formationTag,.formation-detail strong,.formation-detail p,.no-player small,.free-position strong,.free-position p,.keyboard-tip,footer,.badge,.player-name,.player-role,.attack-direction,.pitch-watermark{font-size:12px}
.team-button,.search input,.league strong,.formation-tabs button,.formation-card,.custom-team,.custom-formation,.no-player p,form label,.apply-button{font-size:14px}
.player-role{font-size:12px;letter-spacing:.3px;line-height:1.25}.pitch-watermark{letter-spacing:1px}.attack-direction{font-size:12px;letter-spacing:1px}.eyebrow{letter-spacing:1px}.team-list{max-height:475px}.league small{line-height:1.4}.league strong{line-height:1.4}.source-note{font-size:12px}.brand .beta{font-size:10px}
@media(max-width:1150px){.league{padding:9px 7px;gap:7px}.league strong{font-size:13px}.team-button{gap:8px}.team-list{max-height:431px}.player-name{font-size:12px}.player-role{font-size:12px}}
@media(max-width:620px){.edition{font-size:10px}.eyebrow{font-size:10px}.league strong{font-size:12px}.league small{font-size:10px}.league-icon{font-size:10px}.team-button{font-size:13px}.team-list{max-height:none}.custom-team{font-size:13px}.player-name{font-size:12px;max-width:76px}.player{width:78px}.attack-direction,.pitch-watermark{display:none}.heading-note{font-size:12px}footer{font-size:12px}.board-toolbar{padding-inline:10px}.drag-tip,.reset-button span{font-size:12px}.badge{font-size:10px}.large{font-size:12px}}
/* Real squad portraits retain the club's split-color marker. */
.player-disc,.player.goalkeeper .player-disc{width:52px;height:52px;background:linear-gradient(90deg,var(--team) 0 50%,var(--team2) 50%);border:2px solid #ffffffa6;overflow:visible;margin-bottom:7px}
.player-face{position:absolute;left:0;top:0;width:100%;height:100%;object-fit:contain;object-position:center bottom;pointer-events:none;border-radius:50%}
.player-disc .shirt-number,.player.goalkeeper .player-disc .shirt-number{position:absolute;right:-6px;bottom:-4px;min-width:21px;height:20px;display:grid;place-items:center;padding:0 4px;font-size:11px;border:1px solid #d2dfc3a8;border-radius:5px;background:#172d20;color:#fff;z-index:2}
.face-fallback{display:grid;place-items:center;width:100%;height:100%;font-size:15px;font-weight:700;color:white;text-shadow:0 1px 3px #000;pointer-events:none}
.player-name{max-width:100px;text-shadow:none}.player{width:102px}.player-role{margin-top:2px}
.squad-panel{padding:21px 18px;background:#14291f;border-top:1px solid #34503a;color:#e7efdf}
.squad-heading{display:flex;justify-content:space-between;align-items:start;gap:12px;margin-bottom:17px}.squad-heading h2{font:700 16px Manrope,sans-serif;margin:0 0 6px}.squad-heading p{margin:0;color:#a8bda0;font-size:12px;line-height:1.6}.squad-heading>span{font-size:12px;color:#bed99a;white-space:nowrap;padding-top:3px}
.squad-list{display:grid;grid-template-columns:1fr 1fr;gap:8px;max-height:430px;overflow:auto;scrollbar-width:thin;scrollbar-color:#44603c transparent;padding:1px 3px 3px 1px}
.squad-player{display:flex;align-items:center;gap:9px;text-align:left;padding:8px;background:#1c3427;color:#fff;border:1px solid #2d4833;border-radius:7px;min-width:0}.squad-player:hover{border-color:#93b763;background:#294632}.squad-player.on-pitch{background:#243e2b}.squad-player.picked{outline:1px solid var(--lime);border-color:var(--lime)}
.squad-avatar{display:grid;place-items:center;position:relative;width:38px;height:38px;border-radius:50%;background:linear-gradient(90deg,var(--team) 0 50%,var(--team2) 50%);border:1px solid #d7e7ca6e;flex:none;overflow:hidden;font-size:12px;font-weight:700}.squad-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center bottom}.squad-info{min-width:0}.squad-info strong{display:block;font-size:12px;font-weight:550;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.squad-info small{display:block;color:#aac19f;font-size:12px;margin-top:4px}.squad-source{font-size:12px;line-height:1.7;color:#93aa89;margin:14px 0 0}.squad-source a{color:#c4d9ae}
#rosterSelectLabel{margin-bottom:18px}#rosterSelect{max-width:100%}
@media(max-width:1150px){.player{width:86px}.player-name{max-width:86px}.player-disc,.player.goalkeeper .player-disc{width:46px;height:46px}.squad-panel{padding:17px 12px}.squad-player{padding:7px 5px;gap:6px}.squad-avatar{width:33px;height:33px}}
@media(max-width:620px){.player{width:85px}.player-name{max-width:85px}.player-disc,.player.goalkeeper .player-disc{width:44px;height:44px}.player-name{font-size:11px}.player-role{font-size:11px}.squad-player{min-height:57px}.squad-info strong{font-size:12px}.squad-heading>span{font-size:11px}.squad-list{max-height:360px}}
.comparison-link{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:7px;background:#18231d;color:#d3f49a;text-decoration:none;font-size:14px;font-weight:600;white-space:nowrap}.comparison-link:hover{background:#2b4125}.comparison-link svg{width:19px;height:19px}.header-right .comparison-link{order:3}@media(max-width:800px){.header-right .edition{display:none}}@media(max-width:620px){.comparison-link{padding:9px 10px;font-size:12px;gap:5px}.comparison-link svg{width:15px;height:15px}.header .brand{font-size:19px}.header .brand .beta{display:none}}
/* Pitch annotation controls and player drop targets. */
.board-top{position:relative;gap:10px;z-index:12}.board-team{min-width:0}.board-team>div{min-width:0}.board-team h2{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-actions{display:flex;align-items:center;gap:8px;flex:none}.board-actions .live-count{white-space:nowrap}.drawing-toggle{display:grid;place-items:center;width:35px;height:35px;border:1px solid #486044;border-radius:6px;background:#264232;color:#d4e7ca;padding:7px}.drawing-toggle svg{width:19px;height:19px}.drawing-toggle:hover,.drawing-toggle.active{background:#c7f36b;color:#1b3220;border-color:#c7f36b}.drawing-tools{position:absolute;left:12px;right:12px;top:calc(100% - 1px);padding:12px;background:#f7faef;color:#22341c;border:1px solid #b7cc99;border-radius:0 0 9px 9px;box-shadow:0 6px 18px #10241333;z-index:14}.drawing-tool-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.drawing-tool{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:35px;border:1px solid #d5e0c7;border-radius:6px;padding:7px 10px;background:white;color:#536546;font-size:13px;font-weight:600}.drawing-tool svg{height:16px;width:16px}.drawing-tool.active{background:#dfefc9;border-color:#8dae5d;color:#2d461c}.drawing-color{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:#657854;margin:0}.drawing-color input[type=color]{width:35px;height:34px;min-width:35px;padding:3px;border:1px solid #bdcda8;border-radius:6px;cursor:pointer;background:white;margin:0}.drawing-finish{margin-left:auto;background:#20371f;border:0;border-radius:6px;color:#d0ef9d;min-height:35px;padding:7px 12px;font-size:13px;font-weight:600}.drawing-tools p{font-size:12px;line-height:1.5;color:#778969;margin:9px 0 0}.drawing-canvas{position:absolute;inset:0;display:block;width:100%;height:100%;z-index:8;pointer-events:none;touch-action:none;outline:none}.pitch.drawing-active .drawing-canvas{pointer-events:auto;cursor:crosshair}.pitch.erasing .drawing-canvas{cursor:cell}.pitch.drawing-active .player{pointer-events:none}.player.dragging{z-index:10;cursor:grabbing}.player.swap-target .player-disc{outline:3px dashed #dcff9c;outline-offset:5px;box-shadow:0 0 0 9px #c7f36b40}.player.swap-target .player-name{background:#c7f36b;color:#1d361d}.comparison-board .board-actions{gap:6px}.comparison-board .drawing-toggle{width:33px;height:33px}.comparison-board .drawing-tool-row{gap:6px}.comparison-board .drawing-tool{padding:7px 8px;font-size:12px}.comparison-board .drawing-finish{padding:7px 9px;font-size:12px}@media(max-width:620px){.board-top{gap:8px}.board-team{gap:8px}.board-team h2{font-size:14px}.board-team div>span{font-size:11px}.board-actions{gap:6px}.drawing-toggle{width:33px;height:33px}.drawing-tool-row{gap:6px}.drawing-tool{padding:7px 8px;font-size:12px}.drawing-tools{left:8px;right:8px;padding:10px}.drawing-finish{padding:7px 9px;font-size:12px}.drawing-tools p{font-size:11px}.board-actions .live-count{font-size:13px;padding:7px}.board-actions .live-count span{font-size:11px}}
/* Compact tools live inside the header, between the team and pencil button. */
.board-top{container-type:inline-size;flex-wrap:nowrap}.board-team{order:0;flex:1 1 auto}.board-actions{order:2}.drawing-tools{order:1;position:static;inset:auto;flex:0 0 auto;width:auto;margin:0;padding:4px;background:#264232;color:#d4e7ca;border:1px solid #486044;border-radius:7px;box-shadow:none;z-index:auto}.drawing-tool-row,.comparison-board .drawing-tool-row{flex-wrap:nowrap;gap:4px}.drawing-tools .drawing-tool,.drawing-tools .drawing-finish,.comparison-board .drawing-tools .drawing-tool,.comparison-board .drawing-tools .drawing-finish{width:30px;height:30px;min-height:30px;display:grid;place-items:center;padding:6px;margin:0;background:transparent;border:1px solid transparent;border-radius:4px;color:#d4e7ca}.drawing-tools .drawing-tool svg,.drawing-tools .drawing-finish svg{width:17px;height:17px}.drawing-tools .drawing-tool:hover,.drawing-tools .drawing-finish:hover{background:#36543c}.drawing-tools .drawing-tool.active{background:#c7f36b;border-color:#c7f36b;color:#1b3220}.drawing-tools .drawing-color{display:flex;padding:0;margin:0}.drawing-tools .drawing-color input[type=color]{width:28px;min-width:28px;height:28px;margin:0;padding:2px;border-color:#667e55;background:#193226;border-radius:4px}
@container(max-width:470px){.board-top:has(.drawing-tools:not([hidden])) .board-team>.badge{display:none}.board-top:has(.drawing-tools:not([hidden])) .live-count>span{display:none}.board-top:has(.drawing-tools:not([hidden])) .board-team .board-separator,.board-top:has(.drawing-tools:not([hidden])) .board-team div>span:last-child{display:none}}
.expand-board-button{display:grid;place-items:center;flex:none;width:30px;height:30px;margin-left:6px;padding:6px;border:1px solid #486044;border-radius:5px;background:transparent;color:#d5e7c8}.expand-board-button svg{width:17px;height:17px}.expand-board-button:hover,.expand-board-button.is-expanded{background:#c7f36b;border-color:#c7f36b;color:#193226}.squad-player{user-select:none;touch-action:pan-y;cursor:grab}.squad-player .squad-info{flex:1}.squad-drag-handle{flex:none;display:grid;place-items:center;align-self:stretch;width:20px;font-size:23px;line-height:1;color:#9fbd87;touch-action:none;cursor:grab}.bench-drag-origin{opacity:.4}.bench-drag-ghost{position:fixed!important;z-index:9999;width:210px!important;max-width:none!important;pointer-events:none;opacity:.96;box-shadow:0 12px 35px #0007;transform:rotate(-3deg);border:1px solid #c7f36b!important;border-radius:9px!important;background:#203e2b!important;color:#fff!important}.bench-drag-ghost .squad-info strong{font-size:14px}.bench-drag-ghost .squad-avatar{width:39px;height:39px}
.expanded-dialog{width:min(1500px,96vw);max-width:none;max-height:96dvh;padding:28px;border:1px solid #6c815d66;border-radius:18px;background:#101f17;color:#eef4e9;overflow:auto;box-shadow:0 35px 120px #0009}.expanded-dialog::backdrop{background:#020906c9;backdrop-filter:blur(10px)}.expanded-layout{display:grid;grid-template-columns:minmax(110px,.55fr) minmax(320px,1.8fr) minmax(230px,.9fr);align-items:stretch;gap:24px}.close-expanded{position:absolute;top:9px;right:12px;z-index:30;display:grid;place-items:center;width:32px;height:32px;border:1px solid #56714a;border-radius:50%;background:#223823;color:#dcf1cb;font-size:23px;line-height:1}.close-expanded:hover{background:#c7f36b;color:#193226}.expanded-identity{position:relative;display:flex;align-items:center;flex-direction:column;gap:22px;padding:28px 15px 20px;border-radius:10px;background:linear-gradient(150deg,#ffffff06,transparent);overflow:hidden}.expanded-identity:before{content:'';position:absolute;left:0;top:20px;bottom:20px;width:5px;background:linear-gradient(180deg,var(--team) 0 50%,var(--team2) 50%);border-radius:4px}.expanded-kicker{font-size:10px;font-weight:650;letter-spacing:2px;color:#92ad80;white-space:nowrap}.expanded-badge{width:58px;height:65px;border-radius:15px;font-size:18px;box-shadow:0 5px 24px #0003}.expanded-identity h2{writing-mode:vertical-rl;transform:rotate(180deg);font:800 clamp(26px,4.5vh,58px)/1 Manrope,Arial,sans-serif;letter-spacing:-1.5px;text-transform:uppercase;white-space:nowrap;margin:0;flex:1;color:#e5eedb}.expanded-formation-label{margin-top:auto;display:block;color:#8fa67f;font-size:11px;font-weight:600;letter-spacing:1.3px;text-align:center}.expanded-formation-label select{display:block;margin-top:10px;width:120px;padding:10px;border:1px solid #47623c;border-radius:6px;background:#1f3523;color:#d2eda9;font:700 18px 'DM Sans',sans-serif;letter-spacing:0}.expanded-center{min-width:0;display:flex;align-items:center;justify-content:center}.expanded-dialog .expanded-center .board-panel{width:100%;max-width:680px;margin:0;box-shadow:0 12px 45px #0003}.expanded-dialog .expanded-center .pitch-wrap{padding:0 12px}.expanded-dialog .expanded-center .pitch{width:min(100%,calc((100dvh - 190px)*.77273));min-width:min(310px,100%);max-width:650px;min-height:0;max-height:none;aspect-ratio:680/880;margin:0 auto}.expanded-dialog .expanded-center .board-top{padding:14px 17px}.expanded-dialog .expanded-center .board-team h2{font-size:17px}.expanded-dialog .expanded-center .player{width:96px}.expanded-dialog .expanded-center .player-disc,.expanded-dialog .expanded-center .player.goalkeeper .player-disc{width:50px;height:50px}.expanded-dialog .expanded-center .player-name{max-width:96px;font-size:12px}.expanded-dialog .expanded-center .player-role{font-size:12px}.expanded-dialog .expanded-center .board-toolbar{padding:10px 14px}.expanded-bench{min-width:0;display:flex;flex-direction:column;justify-content:center;padding-top:18px}.expanded-dialog .expanded-bench .squad-panel{border:1px solid #33482c;border-radius:10px;background:#172c1d;padding:18px 14px;width:100%}.expanded-dialog .expanded-bench .squad-heading{margin-bottom:15px}.expanded-dialog .expanded-bench .squad-heading h2{font-size:19px}.expanded-dialog .expanded-bench .squad-heading p{min-height:0;font-size:12px;line-height:1.7}.expanded-dialog .expanded-bench .squad-list{display:grid;grid-template-columns:1fr;max-height:calc(100dvh - 305px);min-height:170px;gap:7px}.expanded-dialog .expanded-bench .squad-player{padding:9px;min-height:60px;gap:9px}.expanded-dialog .expanded-bench .squad-avatar{width:40px;height:40px}.expanded-dialog .expanded-bench .squad-info strong{font-size:14px}.expanded-dialog .expanded-bench .squad-info small{font-size:12px}.expanded-dialog .expanded-bench .squad-source{font-size:11px;line-height:1.6}.expanded-dialog .expanded-bench .squad-drag-handle{width:24px}.expanded-empty{font-size:14px;color:#a7b59e;line-height:1.7;padding:20px}
@media(max-width:1100px){.expanded-dialog{padding:26px 15px 18px}.expanded-layout{grid-template-columns:110px minmax(300px,1.7fr) minmax(205px,1fr);gap:14px}.expanded-identity{padding-inline:8px;gap:18px}.expanded-kicker{font-size:9px;letter-spacing:1px}.expanded-formation-label select{width:95px;font-size:16px}.expanded-dialog .expanded-bench .squad-panel{padding:16px 10px}.expanded-dialog .expanded-bench .squad-player{padding:8px 6px;gap:7px}.expanded-dialog .expanded-center .player-disc,.expanded-dialog .expanded-center .player.goalkeeper .player-disc{width:44px;height:44px}.expanded-dialog .expanded-center .player{width:83px}.expanded-dialog .expanded-center .player-name{max-width:83px}.expanded-dialog .expanded-center .board-toolbar{padding-inline:8px}}
@media(max-width:760px){.expanded-dialog{width:98vw;padding:36px 10px 15px;border-radius:12px}.expanded-layout{grid-template-columns:48px minmax(310px,1fr) 220px;min-width:610px;gap:10px}.expanded-identity{padding:14px 4px;gap:15px}.expanded-kicker{display:none}.expanded-badge{width:35px;height:41px;font-size:11px;border-radius:9px}.expanded-identity h2{font-size:30px}.expanded-formation-label{writing-mode:vertical-rl;font-size:9px}.expanded-formation-label select{writing-mode:horizontal-tb;width:42px;padding:6px 1px;font-size:11px;margin-top:8px}.expanded-dialog .expanded-center .pitch{width:100%;min-width:0;min-height:420px}.expanded-dialog .expanded-center .board-team h2{font-size:14px}.expanded-dialog .expanded-center .board-top{padding:12px 10px}.expanded-dialog .expanded-center .board-toolbar .drag-tip{font-size:10px}.expanded-dialog .expanded-center .board-toolbar .reset-button span{font-size:10px}.expanded-dialog .expanded-center .player-name{font-size:11px}.expanded-dialog .expanded-center .player-role{font-size:11px}.expanded-dialog .expanded-bench .squad-list{max-height:430px}.expanded-dialog .expanded-bench .squad-source{font-size:10px}.expanded-dialog .expanded-bench{padding-top:0}}
.expanded-status{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);max-width:calc(100vw - 40px);padding:11px 16px;background:#c7f36b;color:#193226;border-radius:8px;font-size:13px;box-shadow:0 4px 18px #0003;opacity:0;pointer-events:none;z-index:100}.expanded-status.show{opacity:1}
.data-status{margin:12px auto;padding:10px 16px;max-width:1400px;border:1px solid #536349;border-radius:8px;background:#263425;color:#e1ebd7;font-size:13px}
.share-lineup-button{border:1px solid #56643f;border-radius:6px;background:#263921;color:#d6f4b4;padding:8px 10px;cursor:pointer;font:inherit;font-size:12px;white-space:nowrap}.board-toolbar .drag-tip{margin-left:10px;margin-right:auto}.share-dialog{width:min(440px,calc(100vw - 32px));box-sizing:border-box;padding:26px;border:1px solid #3d4f43;border-radius:16px;color:#edf2ed;background:#19241e}.share-dialog::backdrop{background:#08120dbb;backdrop-filter:blur(7px)}.share-dialog .dialog-heading{gap:16px}.share-description,.share-notice{font-size:13px;line-height:1.6;color:#adbdaf}.share-team{font-size:15px;font-weight:600;color:#daf4bf}.share-verification{margin:18px 0}.share-result{display:grid;gap:14px}.share-result[hidden]{display:none}.share-result input{box-sizing:border-box;width:100%;font-size:12px}.share-result a{color:#c7f36b}.share-result small{font-size:11px;line-height:1.5;color:#a9b6aa}.share-dialog button:disabled{opacity:.45;cursor:default}@media(max-width:1100px){.board-toolbar .drag-tip{display:none}.share-lineup-button{margin-right:auto}}@media(max-width:480px){.share-lineup-button{font-size:11px;padding:7px}.board-toolbar{gap:5px}}
