:root{--bg:#081714;--panel:#112521;--edge:#29443c;--text:#f4f7ee;--muted:#a5bdb2;--pink:#5ee39a;--purple:#edc56b;--green:#e8cb79;--danger:#ff788d;--light:#d8e9dd;color-scheme:dark}*{box-sizing:border-box}body{margin:0;font:15px 'Segoe UI',Arial,sans-serif;background:var(--bg);color:var(--text)}button,input,select{font:inherit}button{cursor:pointer;background:#263830;border:1px solid #3a4e46;color:var(--text);border-radius:10px;padding:12px 18px;font-weight:700}button:hover{border-color:var(--pink);filter:brightness(1.08)}button:disabled{cursor:wait;opacity:.5}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--green);outline-offset:3px}.primary{background:var(--pink);color:#09271c;border:0}.soft{background:#e7fbef;color:#284639;border:0}.small{font-size:12px;padding:8px 12px}.hide{display:none!important}.muted{color:var(--muted)}.tag{font-size:11px;letter-spacing:2px;font-weight:800;color:var(--pink)}a{color:var(--purple)}.app{max-width:1400px;margin:auto;padding:22px 28px}header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-bottom:20px;border-bottom:1px solid var(--edge)}.wordmark{display:flex;gap:12px;align-items:center;font-size:22px;line-height:1;letter-spacing:-1px;font-weight:950}.wordmark img{width:44px;height:44px}.wordmark small{display:block;font-size:11px;letter-spacing:4px;color:var(--pink);margin-top:6px}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.online{background:#23321e;color:var(--green);border-radius:50px;font-size:11px;letter-spacing:1px;padding:9px 13px}.nav{display:flex;gap:8px;margin:21px 0}.nav button{border:0;background:transparent;color:var(--muted)}.nav button.active{color:var(--pink);background:#66e69914}.hero{position:relative;overflow:hidden;border:1px solid #3c6551;border-radius:24px;padding:40px 44px;background:radial-gradient(ellipse at 85% 20%,#409a745e,transparent 45%),linear-gradient(110deg,#182b23,#1f4837);min-height:280px}.hero h1{position:relative;font-size:clamp(40px,5vw,66px);font-weight:900;line-height:1.02;letter-spacing:-3px;margin:15px 0 19px;max-width:650px}.hero h1 em{font-style:normal;color:var(--pink)}.hero p{position:relative;color:#c6ded0;max-width:530px;line-height:1.6}.hero .ball{position:absolute;right:40px;top:15px;width:260px;height:260px;opacity:.7;transform:rotate(-16deg)}.hero::after{content:'';position:absolute;right:-120px;bottom:-100px;width:700px;height:190px;border:1px solid #7bb19155;border-radius:50%;box-shadow:0 0 0 35px #7bb19111,0 0 0 70px #7bb19111;pointer-events:none}.metrics{display:flex;gap:30px;margin-top:25px}.metrics strong{font-size:26px;display:block}.metrics small{color:var(--muted);font-size:11px}.section-head{display:flex;justify-content:space-between;align-items:end;margin:30px 0 18px;gap:15px}.section-head h2{margin:6px 0;font-size:25px;letter-spacing:-.6px}.filters{display:flex;gap:6px;flex-wrap:wrap}.filters button{font-size:12px;padding:8px 13px;background:#17241f;border:1px solid var(--edge);border-radius:40px}.filters button.active{background:var(--light);color:#274237}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.competition{position:relative;background:var(--panel);border:1px solid var(--edge);border-radius:16px;padding:22px;text-align:left;min-height:178px;overflow:hidden;transition:.15s}.competition:hover{transform:translateY(-2px)}.competition b{font-size:20px;display:block;margin:14px 0 8px}.competition span{display:block;color:var(--muted);font-weight:400;font-size:12px;line-height:1.6;max-width:90%}.competition .count{position:absolute;right:22px;top:22px;color:var(--purple);font-size:12px}.competition .symbol{color:var(--pink);font-size:30px;line-height:1}.competition .season{display:block;color:#b7dbc5;font-size:10px;letter-spacing:2px;margin-top:14px}.panel{background:var(--panel);border:1px solid var(--edge);padding:24px;border-radius:18px}.layout{display:grid;grid-template-columns:330px 1fr;gap:22px;margin-top:22px}.team-crest{width:75px;height:88px;margin:0 auto;background:linear-gradient(135deg,#59c785,#5ee39a);clip-path:polygon(0 0,100% 0,100% 67%,50% 100%,0 67%);display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:900;color:white}.team-card{text-align:center;background:radial-gradient(ellipse at top,#32564744,transparent);border-radius:14px;padding:24px 12px}.team-card h2{font-size:23px;margin:14px 0 8px}.field{display:block;margin:19px 0 8px;font-size:11px;letter-spacing:1px;color:#b8d4c3;font-weight:800}select,input{width:100%;background:#101b16;border:1px solid #3a5047;border-radius:9px;color:white;padding:12px}.wide{width:100%;margin-top:13px}.kit{width:84px;height:90px;margin:20px auto;clip-path:polygon(20% 0,36% 0,45% 10%,55% 10%,64% 0,80% 0,100% 24%,86% 38%,76% 30%,76% 100%,24% 100%,24% 30%,14% 38%,0 24%);filter:drop-shadow(0 8px 9px #0005)}.stage-banner{background:linear-gradient(100deg,#3d8366,#254236);border-radius:16px;padding:23px;display:flex;justify-content:space-between;gap:20px;align-items:center}.stage-banner h2{font-size:24px;margin:8px 0}.stage-banner p{margin:0;color:#cee4d7;font-size:12px}.stage-banner .round{color:var(--green);font-size:35px;font-weight:900}.match-card{border:1px solid var(--edge);border-radius:16px;padding:26px;margin-top:18px;background:linear-gradient(130deg,#1a2b24,#151e1a);text-align:center}.versus{display:grid;grid-template-columns:1fr 70px 1fr;align-items:center;gap:12px;margin:23px 0}.versus b{font-size:22px;display:block}.versus span{font-size:12px;color:var(--muted)}.versus .vs{font-size:26px;color:var(--pink);font-weight:900}.match-card button{margin:7px}.results{line-height:1.8;color:#bacdc2;font-size:13px}.scroll-table{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px}th{font-size:10px;letter-spacing:1px;color:var(--muted);text-align:left;border-bottom:1px solid #354d43;padding:12px 9px}td{padding:10px 9px;border-bottom:1px solid #25362f}.me{background:#66e69915;color:var(--pink);font-weight:800}.table-title{margin:20px 0 8px;font-size:14px;color:#d4e9dc}.table-title:first-child{margin-top:0}.tie-list{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.tie{padding:14px;background:#1a2b24;border:1px solid var(--edge);border-radius:10px;font-size:12px;line-height:1.8}.tie strong{color:var(--green)}.fine{font-size:11px;color:var(--muted);line-height:1.8}.saved-card{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.saved-card b{display:block;font-size:18px;margin-bottom:8px}.quick-layout{max-width:900px;margin:auto}.quick-team{display:grid;grid-template-columns:1fr 1fr;gap:20px}.rules-text{line-height:1.8;max-width:950px}.rules-text h2{margin-top:30px}.rules-text li{margin:8px 0}.badge{font-size:10px;background:#a0f0c022;padding:5px 9px;border-radius:30px;color:#b4f3cd}.stage-tabs{display:flex;gap:7px;margin:15px 0;flex-wrap:wrap}.stage-tabs button{font-size:11px;padding:8px 11px}.match-overlay{position:fixed;inset:0;background:#0c1511f8;z-index:20;overflow:auto;padding:20px}.match-top{max-width:1040px;margin:0 auto 15px;display:flex;justify-content:space-between;align-items:center;gap:10px}.game-wrap{width:min(960px,100%);margin:auto;border:1px solid #4b816a;border-radius:14px;overflow:hidden;box-shadow:0 0 90px #47a77f33;aspect-ratio:3/2;background:#080909}ruffle-player{display:block;width:100%;height:100%}.match-help{max-width:960px;margin:14px auto;padding:13px 18px;border:1px solid var(--edge);border-radius:9px;font-size:13px;display:flex;justify-content:space-between;gap:14px;color:#c4e0cf}.score-head{font-size:20px;font-weight:900;color:var(--green)}.result-overlay{position:fixed;inset:0;z-index:30;background:#0e1b15ec;display:grid;place-items:center;padding:20px}.result-box{text-align:center;max-width:580px;width:100%;padding:42px;border:1px solid #519a7b;border-radius:24px;background:radial-gradient(ellipse at top,#395b4d,#172b23 70%)}.result-box h2{font-size:38px;margin:18px 0}.result-score{font-size:70px;font-weight:900;letter-spacing:8px;color:var(--green);margin:20px 0}.result-box p{line-height:1.8;color:#d1e3d8}.result-box button{margin:8px}dialog{background:#192a23;border:1px solid #5f8b79;color:white;border-radius:18px;padding:28px;max-width:550px;width:94%}dialog::backdrop{background:#07110dd9}dialog input[type=color]{height:50px;padding:5px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);z-index:60;background:var(--light);color:#153125;padding:14px 23px;border-radius:10px;box-shadow:0 5px 40px #0008;max-width:90%}footer{border-top:1px solid var(--edge);margin-top:35px;padding:20px 0;color:var(--muted);font-size:11px;line-height:1.8}.brand-guide{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.swatch{width:120px;padding:18px;border-radius:10px;font-size:12px}.session-note{color:#c6ff95;font-size:11px}.loading{padding:70px;text-align:center;color:#9fd5b5}@media(max-width:1000px){.grid{grid-template-columns:repeat(2,1fr)}.layout{grid-template-columns:280px 1fr}.hero .ball{right:-90px;opacity:.3}.hero h1{max-width:580px}}@media(max-width:720px){.app{padding:16px}.grid{grid-template-columns:1fr}.layout{grid-template-columns:1fr}.hero{padding:26px}.hero h1{font-size:45px;letter-spacing:-2px}.hero .ball{right:-100px}.wordmark{font-size:17px}.wordmark img{width:38px;height:38px}header>.row #exit{display:none}.online{font-size:9px}.nav{gap:0;justify-content:space-between}.nav button{padding:10px;font-size:12px}.metrics{gap:20px}.section-head{align-items:start;flex-direction:column}.team-card{padding:15px}.team-card .team-crest,.team-card .kit{display:none}.tie-list{grid-template-columns:1fr}.match-overlay{padding:10px}.match-top{font-size:11px}.match-help{font-size:11px}.quick-team{grid-template-columns:1fr}.saved-card{flex-wrap:wrap}.versus b{font-size:18px}.result-box{padding:24px}.result-box h2{font-size:30px}.game-wrap{border-radius:6px}}
/* PF 2026: carreira, consulta de ligas e controles durante a partida. */
input:not([type=color]):not([type=file]){width:100%;border:1px solid #465f55;border-radius:9px;background:#081714;color:var(--text);padding:13px 14px}select{max-width:100%}.nav{flex-wrap:wrap}.career-hero{padding:38px;border:1px solid #5d8977;border-radius:24px;background:radial-gradient(ellipse at 100% 0,#327b5c88,transparent 65%),linear-gradient(130deg,#264639,#14241d)}.career-hero h1{font-size:clamp(38px,6vw,64px);line-height:1.04;letter-spacing:-2.5px;margin:18px 0}.career-hero p{max-width:590px;color:#c8e0d2;line-height:1.6}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.coach-header{display:flex;gap:22px;align-items:center;background:linear-gradient(120deg,#27473a,#192a23);padding:25px;border-radius:20px;border:1px solid #58796b}.coach-header h1{margin:9px 0;font-size:35px;letter-spacing:-1px}.coach-header p{color:#c7d9ce;margin:0}.coach-header .team-crest{width:80px;height:95px;font-size:29px}.coach-rep{margin-left:auto;text-align:center}.coach-rep b{display:block;font-size:35px;color:var(--green)}.coach-rep span,.coach-rep small{display:block;font-size:10px;letter-spacing:1px;color:#c5dbce}.coach-rep small{margin-top:8px;letter-spacing:0}.career-tabs{display:flex;gap:8px;margin:20px 0;flex-wrap:wrap}.career-tabs button{background:transparent;border:1px solid var(--edge);color:var(--muted)}.career-tabs .active{background:#365347;color:#fff;border-color:#85b498}.career-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:20px 0}.career-stats div{background:#1a2b24;border:1px solid var(--edge);border-radius:12px;padding:17px 13px}.career-stats b{display:block;font-size:29px}.career-stats small{display:block;color:var(--muted);font-size:9px;letter-spacing:.7px}.career-fixture{background:radial-gradient(ellipse at 50% 0,#3c6b5766,transparent 80%),#192922}.offers-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.offers-grid h3{font-size:22px}.offer-hero{border-color:#acd3bc;background:#253a31}.history-list article{border-left:3px solid #edc56b;padding:4px 20px 16px;margin:23px 0}.history-list article p{margin:7px 0;color:var(--muted)}.history-list article small{display:block;color:#d9ebe0;margin:10px 0}.annual-report{margin-bottom:22px}.champions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.champions-grid article{padding:15px;background:#1f2f28;border-radius:9px}.champions-grid small{display:block;color:var(--muted);margin-bottom:9px}.champions-grid b{font-size:17px}.movement{border-bottom:1px solid var(--edge);padding:16px 0}.positive{color:var(--green)}.negative{color:#ff8fa8}.results-list>div{display:grid;grid-template-columns:1fr 70px 1fr;align-items:center;gap:10px;border-bottom:1px solid var(--edge);padding:12px 0;font-size:13px}.results-list>div span:first-child{text-align:right}.results-list>div b{text-align:center;color:var(--green)}.results-list small{grid-column:1/-1;text-align:center;color:#ffa3b5}.match-tools{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;max-width:265px}.danger{border-color:#9b3b57;color:#ffb6c6}.game-shell{position:relative;width:min(100%,800px);margin:auto}.game-wrap{width:100%;max-width:none!important}.player-name{position:absolute;bottom:4%;left:50%;transform:translateX(-50%);color:#fff;background:#14221ced;border:1px solid #a4dbba;border-radius:6px;padding:5px 12px;font-size:12px;font-weight:700;pointer-events:none;max-width:95%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:0 2px 9px #0008}.player-name.defending{bottom:auto;top:32%;border-color:#e8cb79}.player-name:empty{display:none}.match-meta{max-width:800px;margin:10px auto;display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.match-meta .fine{margin:0}.match-meta .badge{white-space:normal;max-width:100%}dialog::backdrop{background:#060c09e8}dialog{max-height:90vh;overflow:auto}.confirm-dialog{max-width:520px;width:calc(100% - 28px);line-height:1.65}.confirm-dialog h2{font-size:27px}.confirm-dialog .row{margin-top:22px}.world-dialog{width:min(1000px,calc(100% - 24px));max-width:1000px;max-height:94vh;padding:24px}.drawer-title{position:sticky;top:-24px;background:#112521;padding:12px 0;z-index:2;justify-content:space-between;border-bottom:1px solid var(--edge)}.kit-preview{margin:20px auto 10px}.saved-card>div span{display:block;margin-top:5px}
@media(max-width:800px){.coach-header{gap:13px;padding:20px}.coach-header h1{font-size:25px}.coach-header .team-crest{width:54px;height:65px;font-size:21px}.career-stats{grid-template-columns:repeat(3,1fr)}.champions-grid{grid-template-columns:repeat(2,1fr)}.match-top{flex-wrap:wrap;justify-content:center}.match-top>.wordmark{margin-right:auto}.match-tools{max-width:none;justify-content:center}.match-top>#matchTitle{font-size:12px}.game-shell{max-width:650px}.player-name{font-size:11px;padding:3px 7px}.career-hero{padding:26px}}
@media(max-width:480px){.form-grid,.offers-grid{grid-template-columns:1fr}.champions-grid{grid-template-columns:1fr}.coach-header{flex-wrap:wrap}.coach-rep{display:none}.career-stats{grid-template-columns:repeat(3,1fr)}.career-tabs{gap:5px}.career-tabs button{font-size:11px;padding:10px}.career-hero{padding:22px}.match-tools button{font-size:10px;padding:7px}.match-meta{font-size:10px}.match-meta .fine{font-size:10px}.player-name{font-size:9px}.world-dialog{padding:14px}.match-overlay .wordmark{font-size:16px}.match-overlay .wordmark img{width:30px;height:30px}.match-overlay .wordmark small{font-size:7px;letter-spacing:2px}}


.player-name.defending{top:auto;bottom:4%}

/* Local club and competition artwork. */
.team-crest.has-logo{background:transparent;border:0;border-radius:0;clip-path:none;padding:0;box-shadow:none}.crest-image{display:block;width:100%;height:100%;object-fit:contain}.inline-crest{width:21px;height:21px;object-fit:contain;flex-shrink:0;background:transparent;border-radius:4px;padding:2px}.crest-gap{width:21px;height:21px;display:inline-block;flex-shrink:0}.table-team{display:inline-flex;align-items:center;gap:8px;vertical-align:middle;text-align:left}.competition .symbol{display:flex;align-items:center;justify-content:center;width:58px;height:58px;background:transparent;border-radius:12px;padding:8px}.competition-logo{display:inline-block;width:100%;height:100%;object-fit:contain}.competition-fallback{font-size:28px;color:#37584a}.stage-identity{display:flex;align-items:center;gap:10px}.stage-identity .competition-logo{width:35px;height:35px;background:transparent;border-radius:6px;padding:4px}.quick-logo{display:flex;justify-content:center;margin:3px 0 18px}.quick-logo .team-crest{width:90px;height:100px}.match-competition{display:flex;align-items:center;justify-content:center;gap:6px;font-size:9px;color:#c6d8cd;margin-top:4px}.match-competition .competition-logo{width:20px;height:20px;object-fit:contain;background:transparent;border-radius:3px;padding:2px}#matchTitle{display:flex;align-items:center;justify-content:center;gap:7px;max-width:330px}.match-team{display:inline-flex;align-items:center;gap:5px;min-width:0}.match-team>span{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.match-team .inline-crest{width:23px;height:23px}.match-times{color:#acc3b5}.match-top>.wordmark{flex-shrink:0}.match-top .score-head{text-align:center}@media(max-width:650px){.match-team>span{max-width:90px}#matchTitle{font-size:11px;gap:5px;max-width:290px}.match-team .inline-crest{width:21px;height:21px}.match-top>.wordmark{max-width:240px}.table-team{gap:6px}.inline-crest{width:18px;height:18px}}

.match-overlay{background:#0c1511}
.competition-logo[src$=".svg"]{background:transparent;padding:0}

.team-card .team-crest.has-logo{display:block;margin:0 auto 12px}

.match-card .fixture-team{display:flex;align-items:center;justify-content:center;gap:10px;overflow-wrap:anywhere}.match-card .fixture-team .inline-crest{width:36px;height:36px;padding:3px;border-radius:6px}@media(max-width:650px){.match-card .fixture-team{gap:6px;font-size:16px}.match-card .fixture-team .inline-crest{width:28px;height:28px}}

.competition-country{margin:0 0 32px}.country-label{display:flex;align-items:center;gap:14px;font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--muted);margin:0 0 14px;font-weight:800}.country-label::after{content:"";height:1px;background:var(--edge);flex:1}

.crest-image,.inline-crest,.competition-logo{filter:drop-shadow(0 0 1px #ffffff80)}

/* Stadium identity: forest green, midnight and trophy gold. */
.wordmark.brand-home{border:0;background:transparent;padding:0;text-align:left;color:var(--text);border-radius:8px;cursor:pointer}.brand-home:hover{filter:none;opacity:.9}.wordmark img{width:48px;height:54px}.wordmark small{color:var(--purple);letter-spacing:3px}.hero,.career-hero{background:radial-gradient(ellipse at 90% 0,#207c5145,transparent 65%),linear-gradient(125deg,#103b2b,#0c211e);border-color:#39694d}.hero .ball{opacity:.85}.hero p,.career-hero p{color:#c4d9cb}.hero::after{border-color:#a6cc9d33;box-shadow:0 0 0 35px #a6cc9d0a,0 0 0 70px #a6cc9d0a}.stage-banner{background:linear-gradient(115deg,#20593c,#13362c)}.coach-header{background:linear-gradient(115deg,#1b4433,#112a25)}.tag{color:var(--green)}.match-overlay{background:#081714}.player-name{background:#0a211ef2;border-color:#79bc94}.nav button.active{background:#5ee39a14;color:#80e8ac}.primary{color:#08251a}.online{background:#203d2c;color:#edcf84}
.competition{isolation:isolate;min-height:208px}.competition .symbol{position:relative;width:64px;height:64px;padding:8px;background:radial-gradient(ellipse,#e1e0bf 15%,#acb99d 50%,#56755c33 72%,transparent 75%);border-radius:50%;filter:drop-shadow(0 2px 8px #0005)}.league-reveal{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at center,#e2e2c7 0%,#c2cdb2 35%,#3e6656 78%,#183b30);opacity:0;transform:scale(.85);transition:opacity .25s,transform .35s;pointer-events:none;border-radius:inherit;z-index:2}.league-reveal .competition-logo{width:64%;height:78%;padding:10px;filter:drop-shadow(0 8px 12px #0005)}.competition:hover .league-reveal,.competition:focus-visible .league-reveal{opacity:1;transform:scale(1)}.competition:hover .league-reveal .competition-logo,.competition:focus-visible .league-reveal .competition-logo{animation:league-float 2.8s ease-in-out infinite}.competition:hover>.symbol,.competition:hover>.count,.competition:hover>b,.competition:hover>span,.competition:hover>small,.competition:focus-visible>.symbol,.competition:focus-visible>.count,.competition:focus-visible>b,.competition:focus-visible>span,.competition:focus-visible>small{opacity:0}.stage-identity .competition-logo,.match-competition .competition-logo{background:radial-gradient(ellipse,#dce0bd 0%,#becbb260,transparent 73%);border-radius:50%}.stage-identity{color:#d7e8c8!important}
@keyframes league-float{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-5px) rotate(2deg)}}
.club-history{text-align:left;padding-top:18px;margin-top:18px;border-top:1px solid var(--edge);font-size:12px;line-height:1.65}.club-history h3{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--green);margin:0 0 10px}.club-history h4{font-size:11px;color:var(--muted);margin:16px 0 5px}.club-history p{margin:6px 0}.club-history ul{padding-left:16px;margin:6px 0}.club-history .history-source{font-size:10px;display:block;overflow-wrap:anywhere;margin-top:9px}.history-stat{display:flex;align-items:baseline;gap:7px}.history-stat strong{font-size:20px;color:var(--green)}.history-note{color:var(--muted);font-size:11px}.kit-options{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:22px 0}.kit-choice{display:flex;align-items:center;flex-direction:column;gap:12px;border:1px solid var(--edge);padding:18px 8px;border-radius:14px;cursor:pointer;background:#0a1e19}.kit-choice:has(input:checked){border-color:var(--pink);box-shadow:0 0 0 2px #5ee39a22}.kit-choice .kit{margin:3px auto;width:83px;height:96px}.kit-choice input{accent-color:var(--pink)}#kitDialog{width:min(520px,calc(100% - 24px))}.rules-text{max-width:none;padding:28px}.rules-intro{max-width:760px}.rules-text h1{font-size:clamp(28px,4vw,42px);line-height:1.1;letter-spacing:-1px;margin:12px 0 20px}.rules-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:25px 0}.rule-card{background:#0b1f1a;border:1px solid var(--edge);border-radius:12px;padding:20px}.rules-text .rule-card h2{font-size:19px;margin:0 0 10px}.rule-card p{margin:6px 0}.rules-text details{border-top:1px solid var(--edge);padding:18px 0}.rules-text summary{cursor:pointer;font-weight:700;color:var(--green)}.rules-text li{line-height:1.65}.rules-sources{columns:2;column-gap:35px}.rules-sources li{break-inside:avoid}.brand-mini{display:flex;gap:14px;align-items:center}.brand-mini img{width:56px;height:64px}
@media(max-width:650px){.rules-cards{grid-template-columns:1fr}.rules-sources{columns:1}.rules-text{padding:19px}.wordmark small{letter-spacing:2px}.club-history{font-size:12px}}
@media(prefers-reduced-motion:reduce){.competition,.league-reveal{transition:none}.competition:hover .league-reveal .competition-logo,.competition:focus-visible .league-reveal .competition-logo{animation:none}}

.hero p{max-width:min(530px,70%)}@media(max-width:800px){.hero .ball{right:-100px;opacity:.35}.hero p{max-width:85%}}

.layout>*,.form-grid>*,.rules-cards>*{min-width:0}.scroll-table{max-width:100%}.club-history{overflow-wrap:anywhere}.wordmark.brand-home>span{min-width:0}@media(max-width:520px){header{flex-wrap:wrap;gap:14px}.wordmark.brand-home{font-size:18px}.wordmark.brand-home img{width:38px;height:44px}.wordmark.brand-home small{font-size:8px;letter-spacing:2px}.wordmark.brand-home>span{white-space:nowrap}.match-top .wordmark{font-size:14px}.layout>.panel{padding:18px}.match-card{padding:18px}.versus{grid-template-columns:minmax(0,1fr) 35px minmax(0,1fr);gap:7px}.kit-options{gap:10px}}

/* v1.0.2: contrast halo for every club crest in the season selector. */
.team-card .team-crest.has-logo,.quick-logo .team-crest.has-logo{width:110px;height:110px;padding:12px;border-radius:50%;background:radial-gradient(ellipse,#dfdfbd 15%,#aab79b 47%,#4d6b5438 70%,transparent 75%);filter:drop-shadow(0 3px 10px #0004)}

.team-card .team-crest.has-logo .crest-image,.quick-logo .team-crest.has-logo .crest-image{animation:league-float 3.5s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.team-card .team-crest.has-logo .crest-image,.quick-logo .team-crest.has-logo .crest-image{animation:none}}
/* v1.0.3 — club selection arena. */
.quick-arena{max-width:1220px;margin:auto}.arena-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:30px 0 24px}.arena-heading h1{font-size:clamp(32px,4.5vw,52px);letter-spacing:-2px;line-height:1;margin:13px 0}.arena-mode{font-size:11px;letter-spacing:2px;color:var(--muted);display:flex;align-items:center;gap:15px}.arena-mode b{font-size:30px;color:var(--green);font-style:italic}.arena-options{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:20px;margin-bottom:20px}.club-pickers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.club-picker{min-width:0;position:relative;background:radial-gradient(ellipse at 50% 35%,#1e47373b,transparent 65%),linear-gradient(150deg,#122a24,#0b1e1a);border:1px solid #345245;border-radius:20px;padding:22px;overflow:hidden}.picker-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #8eae8f28;padding-bottom:16px}.picker-side{color:var(--green);font-size:11px;font-weight:800;letter-spacing:1.5px}.picker-ready{font-size:8px;letter-spacing:1px;color:var(--muted)}.picker-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:12px;margin-top:20px}.picker-filters .field{font-size:9px;letter-spacing:1px;margin:0 0 7px}.picker-filters select{padding:10px 8px;font-size:11px;width:100%;min-width:0}.club-orbit{height:230px;position:relative;margin:15px -12px 0;isolation:isolate}.selection-globe{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:.65;pointer-events:none}.orbit-lines{position:absolute;left:50%;top:50%;width:200px;height:200px;border:1px solid #8fc89820;border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 15px #8fc89808,0 0 0 35px #8fc89805}.club-wheel{position:absolute;inset:0 35px;outline:none;border-radius:50%}.club-wheel:focus-visible{outline:2px solid var(--green);outline-offset:1px}.wheel-slot{position:absolute;left:50%;top:50%;display:flex;align-items:center;justify-content:center;transform:translate(-50%,-50%);border:0;background:transparent;padding:0;border-radius:50%;transition:transform .3s,opacity .3s;min-width:0;color:#e1d8a4;font-size:24px;font-weight:900}.wheel-slot[data-offset="0"]{width:148px;height:148px;z-index:4}.wheel-slot[data-offset="-1"]{left:21%;width:68px;height:76px;z-index:2;opacity:.8;transform:translate(-50%,-50%) rotateY(22deg)}.wheel-slot[data-offset="1"]{left:79%;width:68px;height:76px;z-index:2;opacity:.8;transform:translate(-50%,-50%) rotateY(-22deg)}.wheel-slot[data-offset="-2"]{left:3%;width:43px;height:53px;z-index:1;opacity:.4;transform:translate(-50%,-50%) rotateY(30deg)}.wheel-slot[data-offset="2"]{left:97%;width:43px;height:53px;z-index:1;opacity:.4;transform:translate(-50%,-50%) rotateY(-30deg)}.wheel-slot.neighbour:hover{filter:none;opacity:1;transform:translate(-50%,-50%) scale(1.12)}.neighbour-crest{display:block;width:100%;height:100%;padding:4px;background:radial-gradient(ellipse,#acbda955,transparent 70%)}.orbit-crest{position:relative;z-index:2;width:122px;height:122px;padding:12px;background:radial-gradient(ellipse,#dcd8b9 10%,#a7b298 43%,#254e3c88 65%,transparent 72%);border-radius:50%;filter:drop-shadow(0 6px 14px #0008);animation:league-float 4s ease-in-out infinite}.orbit-ring{position:absolute;inset:0;border:1px solid #e8cb79bd;border-radius:50%;box-shadow:0 0 0 5px #98e3ad18,inset 0 0 22px #5ee39a22,0 0 26px #66c88e28}.orbit-ring::after{content:"";position:absolute;inset:-11px;border:1px dashed #c5d49c45;border-radius:50%;animation:orbit-spin 35s linear infinite}.wheel-arrow{position:absolute;top:50%;z-index:6;transform:translateY(-50%);height:45px;width:29px;border-radius:8px;padding:0;background:#0a1c17c9;border-color:#64837155;color:var(--green);font-size:31px;line-height:1}.wheel-arrow.previous{left:-1px}.wheel-arrow.next{right:-1px}.wheel-arrow:disabled{opacity:.22;cursor:default}.picker-identity{text-align:center;min-height:136px}.picker-identity h2{margin:0 0 8px;font-size:clamp(21px,2.5vw,30px);font-weight:900;letter-spacing:-.8px;overflow-wrap:anywhere;text-transform:uppercase}.picker-league{font-size:11px;color:var(--muted);margin:8px 0 18px;min-height:16px}.picker-facts{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #6e8c7345;border-radius:10px;background:#07151080;overflow:hidden}.picker-facts>span{padding:10px 5px;border-right:1px solid #6e8c7330}.picker-facts>span:last-child{border:0}.picker-facts small{display:block;font-size:8px;letter-spacing:1px;color:var(--muted);margin-bottom:5px}.picker-facts b{font-size:12px;color:#e6d79e;white-space:nowrap}.wheel-ticks{height:20px;display:flex;align-items:center;justify-content:center;gap:5px;margin:3px 0 16px}.wheel-ticks i{width:4px;height:4px;background:#9eb6a257;display:block}.wheel-ticks i.active{background:var(--green);width:7px;height:7px;box-shadow:0 0 7px #e8cb7960}.picker-search .field{font-size:9px}.picker-search input{width:100%;font-size:12px}.picker-hint{font-size:10px;text-align:center;color:#8ca99b;margin:13px 0 0}.quick-kickoff{text-align:center;margin:28px 0 38px;padding:24px;border-top:1px solid var(--edge)}.quick-match-summary{font-size:20px;font-weight:800;letter-spacing:-.5px;color:var(--text);margin:0 0 20px}.quick-kickoff .primary{min-width:260px;padding:17px 30px;box-shadow:0 6px 28px #5ee39a15}.quick-kickoff .fine{margin-bottom:0}.move-right .selected .orbit-crest{animation:crest-enter-right .3s ease-out,league-float 4s .3s ease-in-out infinite}.move-left .selected .orbit-crest{animation:crest-enter-left .3s ease-out,league-float 4s .3s ease-in-out infinite}
@keyframes orbit-spin{to{transform:rotate(360deg)}}@keyframes crest-enter-right{from{opacity:.25;transform:translateX(20px) scale(.8)}to{opacity:1;transform:translateX(0) scale(1)}}@keyframes crest-enter-left{from{opacity:.25;transform:translateX(-20px) scale(.8)}to{opacity:1;transform:translateX(0) scale(1)}}
@media(max-width:1000px) and (min-width:801px){.club-picker{padding:17px}.picker-ready{display:none}.club-wheel{inset:0 24px}.wheel-slot[data-offset="0"]{width:126px;height:126px}.orbit-crest{width:110px;height:110px}.wheel-slot[data-offset="-1"],.wheel-slot[data-offset="1"]{width:52px;height:64px}.wheel-slot[data-offset="-2"],.wheel-slot[data-offset="2"]{width:34px;height:43px}.picker-filters{grid-template-columns:1fr}.club-orbit{height:210px}.picker-facts b{font-size:10px}}
@media(max-width:800px){.club-pickers{grid-template-columns:1fr}.club-picker{padding:22px}.club-wheel{inset:0 44px}.wheel-slot[data-offset="-1"]{left:23%;width:80px;height:90px}.wheel-slot[data-offset="1"]{left:77%;width:80px;height:90px}.wheel-slot[data-offset="-2"]{left:5%;width:50px;height:62px}.wheel-slot[data-offset="2"]{left:95%;width:50px;height:62px}.picker-identity h2{font-size:26px}.picker-identity{min-height:125px}.arena-heading{margin-top:22px}}
@media(max-width:460px){.arena-options{grid-template-columns:1fr;gap:12px}.arena-mode{display:none}.arena-heading h1{font-size:38px}.club-picker{padding:16px}.picker-ready{display:none}.picker-filters{grid-template-columns:1fr}.club-wheel{inset:0 24px}.club-orbit{height:210px;margin-left:-6px;margin-right:-6px}.wheel-slot[data-offset="0"]{width:124px;height:124px}.orbit-crest{width:108px;height:108px}.wheel-slot[data-offset="-1"],.wheel-slot[data-offset="1"]{width:48px;height:60px}.wheel-slot[data-offset="-2"],.wheel-slot[data-offset="2"]{width:28px;height:38px}.picker-facts b{font-size:10px}.picker-facts small{font-size:7px}.quick-kickoff{padding:20px 0}.quick-kickoff .primary{min-width:0;width:100%}.quick-match-summary{font-size:17px}}
@media(prefers-reduced-motion:reduce){.orbit-crest,.orbit-ring::after,.move-left .selected .orbit-crest,.move-right .selected .orbit-crest{animation:none}.wheel-slot{transition:none}}
/* v1.0.4 */
table{font-variant-numeric:tabular-nums}th:not(:nth-child(2)),td:not(:nth-child(2)){text-align:center;white-space:nowrap}th:nth-child(2),td:nth-child(2){text-align:left;min-width:170px}.table-team{min-height:26px;align-items:center}.stage-tabs{align-items:center}.world-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:12px 0}.world-filters label,.career-calendar label{font-size:12px;color:var(--muted)}.world-filters select,.career-calendar select{margin-top:6px;width:100%}.trophy-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:18px}.trophy-card{padding:22px;border:1px solid var(--edge);border-radius:18px;text-align:center;background:radial-gradient(ellipse at top,#edc56b22,transparent)}.trophy-card img{height:145px;max-width:100%}.trophy-card .fixture-team{justify-content:center;margin-bottom:16px}.schedule-list{display:grid;gap:8px;margin-top:18px}.schedule-list article{padding:14px;border:1px solid var(--edge);border-radius:10px;display:grid;grid-template-columns:110px 1fr;gap:6px 14px}.schedule-list article>span{grid-column:2;color:var(--muted);font-size:12px}.zone-blue{border-left:4px solid #45a9ff}.zone-orange{border-left:4px solid #f4a340}.zone-green{border-left:4px solid #5ee39a}.zone-red{border-left:4px solid #ff6577}.zone-legend{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0;font-size:11px}.zone-legend span{padding-left:8px}#matchOverlay:fullscreen{width:100vw;height:100vh;overflow:auto}#matchOverlay:fullscreen .game-shell{max-width:min(1440px,calc((100vh - 165px)*1.5));margin:auto}.match-tools{flex-wrap:wrap}.filters{flex-wrap:wrap}.fullscreen-fallback .game-wrap{width:100%;max-width:none}@media(max-width:720px){.world-filters{grid-template-columns:1fr}.schedule-list article{grid-template-columns:1fr}.schedule-list article>span{grid-column:1}.trophy-grid{grid-template-columns:1fr 1fr}.trophy-card{padding:12px}}
/* Country catalog filters stay above the grid instead of squeezing the heading. */
.section-head:has(.filters){align-items:flex-start;flex-direction:column}.section-head:has(.filters) .filters{width:100%;justify-content:flex-start;gap:7px}.trophy-card img.inline-crest{height:24px;width:24px}.schedule-list .table-team{flex-wrap:wrap}
/* v1.0.5: preferences respect keyboard focus and system reduced motion. */
body{font-size:calc(15px * var(--font-scale,1))}.settings-panel{max-width:760px;margin:auto}.settings-panel select{display:block;width:100%;margin:8px 0 24px}.settings-check{display:flex;gap:12px;align-items:center;padding:14px 0}.settings-check input{width:22px;height:22px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid #ffe38b;outline-offset:4px}.high-contrast{--bg:#000;--panel:#07100c;--text:#fff;--muted:#fff;--edge:#fff}.high-contrast .panel,.high-contrast .competition{border:2px solid #fff}.reduce-motion *,.reduce-motion *::before,.reduce-motion *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}body[data-vision=protanopia],body[data-vision=deuteranopia]{--pink:#75bfff;--green:#ffd66b;--danger:#ffa45b}body[data-vision=tritanopia]{--pink:#74ddc3;--green:#ffc2dc;--danger:#f4a76e}html[dir=rtl] .settings-panel{text-align:right}.nav{flex-wrap:wrap}.hero .ball{background:url('hero-v105.png') center/cover!important;border:0!important;border-radius:24px!important;box-shadow:none!important;width:340px!important;height:310px!important;right:25px!important;top:40px!important}.hero .ball::before,.hero .ball::after{display:none!important}.game-wrap:fullscreen,ruffle-player:fullscreen{width:100vw;height:100vh;aspect-ratio:auto;border:0;border-radius:0;background:#000}.settings-panel .fine{line-height:1.7}body[data-vision]:not([data-vision=standard]) .zone-red{border-left-style:dashed}body[data-vision]:not([data-vision=standard]) .zone-green{border-left-style:double}body[data-vision]:not([data-vision=standard]) .zone-orange{border-left-style:dotted}@media(max-width:720px){.hero .ball{right:-80px!important;opacity:.25!important}body{overflow-wrap:anywhere}}
.settings-check{justify-content:flex-start!important;width:100%;text-align:start;flex-direction:row!important}.settings-check input{flex:0 0 22px!important;margin:0!important;min-width:22px}.field,.fine,.nav button,.settings-panel label{font-size:calc(12px * var(--font-scale,1))}.settings-panel h2{font-size:calc(24px * var(--font-scale,1))}
