:root{font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#143c43;background:#eaf1e9;--accent:#13b8b0;--dark:#103c43}*{box-sizing:border-box}body{margin:0}header{background:var(--dark);color:#fff;display:flex;align-items:center;gap:13px;padding:16px max(16px,calc((100vw - 760px)/2));min-height:78px}header a{color:#fff;text-decoration:none;font-size:38px;line-height:1}header div{display:grid;gap:3px;flex:1}header small{font-size:10px;letter-spacing:2px;color:#8bd9c8}header strong{font-size:16px}.test{font-size:9px;letter-spacing:1px;border:1px solid #648b8a;padding:7px;border-radius:6px}main{max-width:760px;margin:20px auto;padding:0 14px 34px}.panel{background:#fff;border-radius:21px;border:1px solid #d8e5dd;box-shadow:0 5px 0 #d3e2d840;padding:22px;margin:0 0 16px}h1{font-size:29px;line-height:1.15;margin:7px 0 12px;letter-spacing:-.8px}h2{font-size:21px;margin:5px 0 10px}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:800;color:#218477;margin:0 0 8px}.muted{color:#5d757a;font-size:14px;line-height:1.6}.identity{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.identity label{display:grid;gap:5px;font-size:11px;font-weight:700}.identity label:first-child{flex:1;min-width:170px}input,select{min-height:43px;border:1px solid #c8dbd4;border-radius:9px;background:#f5f9f5;color:#143c43;font:inherit;padding:9px}input[type=color]{width:68px;padding:4px}.cards{display:grid;grid-template-columns:1fr 1fr;gap:10px}.card{cursor:pointer;text-align:left;background:#f5f8f4;border:2px solid #e3ece4;border-radius:15px;padding:14px;color:inherit;position:relative}.card[aria-pressed=true]{border-color:#109c8d;background:#e9f8f2}.card .portrait{width:48px;height:48px;float:left;margin-right:10px}.card .name{font-size:17px;font-weight:800;display:block}.card .position{font-size:10px;color:#607c7b;display:block;margin:4px 0 12px}.card .stats{clear:both;display:grid;grid-template-columns:1fr 1fr;gap:5px;font-size:11px;color:#55716f}.card .stats b{color:#174e50}.check{position:absolute;top:8px;right:9px;font-size:10px;color:#098875}.special{display:block;font-size:10px;color:#218477;margin-top:8px}.rules{background:#f2f6ef;padding:17px;border-radius:13px;font-size:12px;line-height:1.6;margin:18px 0}.rules p{margin:8px 0}.primary{width:100%;padding:15px;border:0;background:#107e75;color:#fff;border-radius:12px;font-size:15px;font-weight:750;cursor:pointer;box-shadow:0 4px 0 #0c5c57}.primary:disabled{opacity:.5;cursor:default}.fine{font-size:10px;line-height:1.6;color:#69817e;text-align:center;display:block;margin-top:14px}.scoreboard{padding:17px}.scorehead,.scorefooter{display:flex;justify-content:space-between;gap:10px;font-size:10px;color:#64807c}.scorehead{font-weight:800;text-transform:uppercase;letter-spacing:.8px;margin-bottom:16px}.scorelabels,.scorerow{display:grid;grid-template-columns:minmax(90px,1fr) 45px 58px 62px;align-items:center;text-align:center;gap:3px}.scorelabels{font-size:8px;color:#7c918b;margin-bottom:7px;letter-spacing:.5px}.scorelabels span:first-child,.scorerow strong{text-align:left}.scorerow{padding:10px 8px;border-radius:9px}.scorerow strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scorerow b{font-size:22px}.scorerow b:last-child{background:#eaf1e9;border-radius:7px;padding:3px}.home{background:#e7f6ef}.home b:last-child{background:#b8ead7}.scorefooter{padding-top:12px;border-top:1px solid #e3ece5;margin-top:8px}.ticker{padding:28px 14px 38px;display:flex;align-items:center;gap:16px;min-height:210px}.ticker strong{font-size:17px}.ticker p{font-size:13px;color:#6b8380;line-height:1.7}.pulse{width:13px;height:13px;border-radius:50%;background:#17a58d;flex-shrink:0;box-shadow:0 0 0 7px #17a58d18;animation:beat 1.3s infinite}@keyframes beat{50%{box-shadow:0 0 0 13px #17a58d08}}#court-stage{padding:0;overflow:hidden}.court-title{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:13px 15px;background:#163f48;color:#fff;font-size:12px;font-weight:800}.court-title small{font-size:9px;color:#a7d4ce;font-weight:400}canvas{display:block;width:100%;height:390px;background:#c7dec3}.court-caption{background:#f3f7ed;text-align:center;padding:11px 15px;font-size:11px;color:#466963;min-height:38px}#options{display:grid;gap:9px;margin:17px 0}#options button{font:inherit;text-align:left;font-size:14px;font-weight:700;padding:16px;border-radius:11px;border:1px solid #cdded3;background:#f5f9f3;color:#1f5658;cursor:pointer}#options button:hover{background:#e2f3e8;border-color:#169a87}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #f3bc53;outline-offset:3px}.back{display:block;text-align:center;margin-top:18px;font-size:13px;color:#16786e}[hidden]{display:none!important}@media(max-width:420px){main{margin-top:12px;padding:0 10px 25px}.panel{padding:17px;border-radius:17px}h1{font-size:26px}.card{padding:11px}.card .name{font-size:15px}.card .portrait{width:36px;height:40px;margin-right:6px}.card .stats{font-size:10px}canvas{height:330px}.scoreboard{padding:13px}.scorerow strong{font-size:12px}.scorelabels,.scorerow{grid-template-columns:minmax(80px,1fr) 35px 48px 55px}header{padding:13px}.test{font-size:8px}}

.round-heading{display:flex;justify-content:space-between;gap:12px;align-items:center}.round-heading strong{font-size:15px}.round-heading small{font-size:10px;color:#67837d}.round-tracker ol{list-style:none;display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin:14px 0 0;padding:0}.round-tracker li{text-align:center;background:#edf3eb;padding:9px 3px;border-radius:8px;font-size:11px;color:#7d9288}.round-tracker li.current{background:#173f47;color:#fff}.round-tracker li.won{background:#c7ebd8;color:#147a60}.round-tracker li.lost{background:#fbe0d5;color:#a34d39}@media(max-width:420px){.round-heading{align-items:flex-start;flex-direction:column;gap:4px}.round-tracker li{font-size:10px;padding:8px 2px}}

.online-panel{border:1px solid #d9e7dc;border-radius:12px;padding:13px;margin:16px 0}.quota{display:flex;justify-content:space-between;gap:12px;align-items:center}.quota strong{font-size:12px}.outline-small{border:1px solid #bdd2c5;background:#f1f7ef;padding:9px;border-radius:8px;color:#176c60;font:inherit;font-size:12px;cursor:pointer}.ranking-row{display:grid;grid-template-columns:32px 1fr 70px;align-items:center;padding:12px 0;border-top:1px solid #deeadf;gap:8px;font-size:12px}.ranking-row.you{color:#087d6c;font-weight:800}.ranking-row strong:last-child{text-align:right}#ranking h2{font-size:18px;margin-top:20px}

.header-ranking{border:1px solid #87b6b2;background:#e4f4d8;border-radius:12px;width:44px;height:44px;font-size:26px;cursor:pointer;flex-shrink:0}.ranking-title{display:flex;justify-content:space-between;align-items:center}.ranking-title h2{margin:0}.ranking-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:16px 0}.ranking-tabs button[aria-pressed=true]{background:#163f48;color:#fff}.youth-editor{border:1px solid #c9ded1;background:#f1f8ef;border-radius:14px;padding:15px;margin:20px 0}.youth-editor summary{cursor:pointer;font-weight:750;font-size:14px}.youth-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:12px 0 18px}.youth-grid label{display:grid;gap:5px;font-size:11px;font-weight:700}.youth-grid input,.youth-grid select{width:100%;min-width:0}.youth-grid input[type=color]{width:100%;height:43px}.youth-grid .band-option{display:flex;align-items:center;gap:8px}.youth-grid input[type=checkbox]{width:18px;min-height:18px}.youth-preview{height:88px;display:flex;justify-content:center;padding-top:10px}.youth-preview svg{height:78px;width:68px}.monthly-pair{font-size:12px;padding:10px 0;border-top:1px solid #e0e9df}.monthly-round{margin:14px 0;padding:12px;background:#f3f7ef;border-radius:10px}.monthly-round summary{cursor:pointer;font-size:13px;font-weight:700}.monthly-champion{background:#fff2c8;padding:15px;border-radius:12px;font-weight:750;font-size:14px}.monthly-info{font-size:13px;line-height:1.7;color:#557571}

/* Competition hub: trophy, daily entry, squad and player cards. */
:root{background:#edf5fa;--dark:#123c78;--accent:#078fc2;font-family:ui-rounded,'Trebuchet MS',system-ui,sans-serif}body{background:radial-gradient(ellipse at 100% 0,#b8edf4,transparent 65%),#edf5fa}body>header{background:linear-gradient(120deg,#133a76,#087cae);box-shadow:0 4px 0 #63dce1;padding-top:14px;padding-bottom:14px}header small{color:#b4f1ff;letter-spacing:1.5px}header .test{color:#dbf6ff;border-color:#73c7e1}main{max-width:860px}.panel{border:2px solid #d6e8f3;box-shadow:0 5px 0 #20598a0b}#setup{padding:0;overflow:hidden}.competition-hero{position:relative;display:grid;grid-template-columns:1fr 145px;gap:10px;align-items:center;padding:27px 26px 24px;background:radial-gradient(ellipse at 95% 20%,#24b3ce66,transparent 70%),linear-gradient(125deg,#132f69,#125a96);color:white;overflow:hidden}.competition-hero:before{content:'';position:absolute;width:220px;height:220px;border:1px solid #74d8ef30;border-radius:50%;right:-50px;top:-45px;box-shadow:0 0 0 35px #70d9ee09,0 0 0 70px #70d9ee09}.season-badge{font-size:9px;letter-spacing:1px;font-weight:850;color:#c9f4ff;border:1px solid #7ccedb77;padding:6px 9px;border-radius:20px;display:inline-block}.competition-hero h1{font-size:38px;letter-spacing:-1.3px;line-height:1.05;margin:17px 0 10px;color:#fffbe3}.competition-hero p{font-size:12px;line-height:1.6;color:#c7e8f5;max-width:300px;margin:0}.hero-trophy{position:relative;text-align:center;align-self:center;z-index:1}.hero-trophy>span{display:block;font-size:82px;filter:drop-shadow(0 8px 8px #071c5180);transform:rotate(7deg)}.hero-trophy i{display:block;width:105px;height:12px;border-radius:50%;background:#0b245255;margin:-4px auto 9px}.hero-trophy b{display:block;color:#ffe9a2;font-size:8px;letter-spacing:1.4px;line-height:1.5}.competition-format{display:grid;grid-template-columns:repeat(4,1fr);background:#f1fbff;border-bottom:1px solid #d6e9f3;padding:14px 9px}.competition-format>div{text-align:center;border-right:1px solid #d8e9f2}.competition-format>div:last-child{border:0}.competition-format b{display:block;font-size:18px;color:#16548a}.competition-format span{display:block;font-size:9px;color:#64869e;margin-top:3px}#setup>#prize-info,#setup>.online-panel,#setup>.team-customization,#setup>.youth-editor,#setup>.squad-heading,#setup>.pair-preview,#setup>#cards,#setup>.how-to-play,#setup>.competition-entry{margin-left:22px;margin-right:22px}#prize-info{background:linear-gradient(110deg,#fff6cb,#fffbe9);border:1px solid #efda88;color:#785714;font-size:12px;font-weight:750;padding:14px;margin-top:18px;margin-bottom:12px}.online-panel{background:#e9f8f7;border:1px solid #bde5df;margin-top:0;margin-bottom:18px;padding:12px 14px}.quota strong{font-size:12px;color:#167a72}.quota:before{content:'';width:8px;height:8px;border-radius:50%;background:#1bac81;flex-shrink:0}.quota{justify-content:flex-start}.online-panel #online-error:empty{display:none}.team-customization,.youth-editor,.how-to-play{border:1px solid #d5e5ef;border-radius:13px;padding:14px;background:#f7fafc;margin-top:12px;margin-bottom:12px}.team-customization summary,.how-to-play summary{font-size:13px;font-weight:800;color:#245780;cursor:pointer}.team-customization summary small,.how-to-play summary span{display:block;font-size:10px;color:#7b94a7;margin-top:4px;margin-left:17px;font-weight:400}.identity{margin-bottom:0}.youth-editor{background:#f1f8fa}.youth-editor summary{color:#245780;font-size:13px}.squad-heading{display:flex;justify-content:space-between;align-items:center;margin-top:25px;margin-bottom:12px}.squad-heading h2{font-size:22px;margin:4px 0}.squad-heading .eyebrow{color:#3884aa;font-size:9px;margin:0}.squad-heading>span{font-size:12px;font-weight:850;padding:8px 11px;border-radius:10px;background:#e7f3fb;color:#24699e}.pair-preview{padding:12px 14px;background:linear-gradient(100deg,#e9f8ff,#effbf6);border:1px solid #c8e7ef;border-radius:14px;margin-bottom:14px}.pair-names{display:flex;align-items:center;justify-content:center;gap:16px}.pair-names>span{display:flex;align-items:center;gap:6px;min-width:0}.pair-names .portrait{width:35px;height:42px;flex-shrink:0}.pair-names b{font-size:13px;color:#164b76;overflow-wrap:anywhere}.pair-names i{font-size:17px;font-style:normal;color:#8badbf}.pair-reading{font-size:10px;text-align:center;line-height:1.5;color:#418078;margin:7px 0 0}.cards{gap:12px}.card{background:linear-gradient(150deg,#fff,#eef4fb);border:2px solid #d6e4f0;border-radius:16px;padding:17px 14px;box-shadow:0 4px 0 #d7e3ed66;transition:transform .15s,border-color .15s}.card[aria-pressed=true]{border-color:#169bc0;background:linear-gradient(135deg,#e1f8ff,#edfdf5);box-shadow:0 4px 0 #1a94aa44}.card .portrait{height:65px;width:54px;margin-right:10px}.card .name{color:#184b79;margin-top:5px}.card .position{font-size:10px;min-height:24px;line-height:1.4;margin-bottom:9px}.card .stats{border-top:1px solid #d5e6ed;padding-top:11px;gap:8px;color:#688393}.card .stats b{color:#184e75}.card .check{top:9px;right:10px;background:#d5eceb;border-radius:50%;width:19px;height:19px;text-align:center;line-height:19px}.card[aria-pressed=true] .check{background:#159fc0;color:white}.card .special{color:#078cb0}.how-to-play{margin-top:20px}.how-to-play .rules{padding:0;background:transparent;margin-bottom:0}.competition-entry{margin-top:18px;margin-bottom:23px}.competition-entry #start{background:linear-gradient(#28bf82,#0da479);border:2px solid #96f3c8;box-shadow:0 4px 0 #087857;font-size:16px;padding:16px 12px}.competition-entry #start:disabled{background:#95aab6;border-color:#d8e3e9;box-shadow:0 4px 0 #748b99;opacity:1;color:#fff}.competition-entry .fine{font-size:10px;line-height:1.7;color:#7b94a5}.primary{background:#087fa6;box-shadow:0 4px 0 #07567f}.header-ranking{background:#fff1b1;border:2px solid #fff6cf;box-shadow:0 3px 0 #085e8a}.ranking-tabs button[aria-pressed=true]{background:#145b90}.round-tracker li.current{background:#155e96}.scoreboard{border-top:4px solid #168eb7}.scorehead{color:#2674a3}.home{background:#e2f6fc}.home b:last-child{background:#a5e1ec}button:disabled.card{cursor:default}.card:focus-visible{outline-color:#ffb82f}
@media(max-width:460px){.competition-hero{padding:23px 18px;grid-template-columns:1fr 105px;gap:5px}.competition-hero h1{font-size:31px}.competition-hero p{font-size:11px}.season-badge{font-size:7px;padding:5px 7px;letter-spacing:.6px}.hero-trophy>span{font-size:65px}.hero-trophy i{width:85px}.hero-trophy b{font-size:7px}.competition-format b{font-size:16px}.competition-format span{font-size:8px}#setup>#prize-info,#setup>.online-panel,#setup>.team-customization,#setup>.youth-editor,#setup>.squad-heading,#setup>.pair-preview,#setup>#cards,#setup>.how-to-play,#setup>.competition-entry{margin-left:13px;margin-right:13px}.card{padding:14px 10px}.card .portrait{width:43px;height:57px;margin-right:5px}.card .name{font-size:15px}.card .stats{font-size:10px;gap:7px}.pair-names{gap:8px}.pair-names b{font-size:11px}.pair-names .portrait{width:29px}.squad-heading h2{font-size:20px}.competition-format{padding-top:12px;padding-bottom:12px}}
@media(prefers-reduced-motion:reduce){.card{transition:none}}

.training-guide{margin:16px 22px;padding:14px;background:#eff6ff;border:1px solid #cbdff1;border-radius:13px;color:#315b7c}.training-guide summary{cursor:pointer;font-size:13px;font-weight:800}.training-guide p{font-size:11px;line-height:1.7;color:#5c7a91}.player-level{display:block;font-size:8px;font-weight:900;letter-spacing:1px;color:#0d86a2;margin:3px 0 5px}.player-xp{display:block;font-size:9px;color:#5a8094;margin-top:11px}.player-xp-bar{display:block;height:5px;background:#d8e7ed;border-radius:5px;overflow:hidden;margin-top:5px}.player-xp-bar i{display:block;height:100%;background:linear-gradient(90deg,#18b6ae,#80da6b)}.match-xp-earned{padding:12px;background:#e0f7ee;border-radius:10px;color:#187357;font-weight:750}.card .position{margin-top:4px}.card .name{overflow-wrap:anywhere}@media(max-width:460px){.training-guide{margin:14px 13px}.player-level{font-size:7px;letter-spacing:.6px}}

.training-row{display:grid;grid-template-columns:1fr auto;gap:8px;padding:14px 0;border-top:1px solid #d0e0ee}.training-row>strong{font-size:12px;grid-column:1/-1}.training-row>span{font-size:10px;color:#267e75;grid-column:1/-1}.training-row>select{min-width:0;width:100%;font-size:11px}.training-row>.primary{font-size:11px;padding:10px;width:auto;white-space:nowrap}.training-row>small{grid-column:1/-1;font-size:10px;color:#7b5261}.training-row>small:empty{display:none}#training-message{color:#178276;font-weight:750}

.player-profile{border:2px solid #9ed6e9;background:linear-gradient(145deg,#fff,#f1faff)}.profile-identity{display:flex;align-items:center;gap:14px;margin:23px 0 17px}.profile-badge{display:grid;place-items:center;flex-shrink:0;width:65px;height:72px;border-radius:20px;background:linear-gradient(#27bfd2,#1167ac);font-size:35px;border:3px solid #a8f3f0;box-shadow:0 4px 0 #c1d8e6}.profile-identity small{font-size:9px;letter-spacing:1.5px;color:#5c96b4;font-weight:800}.profile-identity h3{font-size:23px;line-height:1.1;margin:5px 0;color:#1d537f;overflow-wrap:anywhere}.profile-identity p{font-size:12px;color:#608299;margin:6px 0;overflow-wrap:anywhere}.profile-club{padding:13px 16px;border-radius:12px;background:#e4f3fb;border:1px solid #c5e2ef}.profile-club span{display:block;font-size:8px;letter-spacing:1px;color:#6997ad}.profile-club b{display:block;margin-top:5px;font-size:14px;color:#245b83}.cabinet-title{text-align:center;font-size:16px;color:#285b83;margin:24px 0 0}.trophy-cabinet{display:grid;grid-template-columns:repeat(3,1fr);align-items:end;gap:8px;padding:20px 8px 18px;border-bottom:8px solid #b9d5e5;border-radius:0 0 12px 12px;background:linear-gradient(#f4fbff,#e4f0f6);margin-top:8px}.trophy-slot{display:flex;align-items:center;flex-direction:column;justify-content:flex-end;min-width:0}.trophy-art{display:block;filter:drop-shadow(0 3px 2px #123c7c30)}.trophy-slot.daily{color:#eeb523}.trophy-slot.monthly{color:#27ad69}.trophy-slot.annual{color:#e24b51}.trophy-slot .daily{height:58px}.trophy-slot .monthly{height:82px}.trophy-slot .annual{height:108px}.trophy-slot>b{font-size:21px;margin-top:8px}.trophy-slot>span{font-size:10px;font-weight:750;margin-top:3px;color:#4e778f}.trophy-slot.empty .trophy-art{opacity:.23;filter:grayscale(.45)}.profile-note{font-size:10px;line-height:1.7;color:#718da0;text-align:center;margin:18px 7px}.profile-honours h4{color:#376f87;font-size:12px;margin-bottom:6px}.profile-honours p{font-size:11px;line-height:1.7;color:#648799}.ranking-profile-link{width:100%;border-right:0;border-left:0;border-bottom:0;background:transparent;color:#295f80;font:inherit;text-align:left;cursor:pointer;border-radius:0}.ranking-profile-link:hover{background:#e7f5fb}.ranking-profile-link:after{content:none}.annual-champion{background:#ffe5e7;color:#ae3744}header strong{font-size:14px}@media(max-width:420px){header{gap:7px}.header-ranking{width:36px;height:39px;font-size:22px}header small{font-size:8px;letter-spacing:.8px}header strong{font-size:12px}.profile-identity h3{font-size:20px}.trophy-slot .annual{height:95px}.trophy-slot .monthly{height:74px}.trophy-slot .daily{height:53px}}

.profile-earnings{margin-top:12px;padding:16px;border-radius:13px;background:linear-gradient(120deg,#fff3b7,#fffbe3);border:1px solid #efda89}.profile-earnings>span{display:block;font-size:9px;letter-spacing:.8px;color:#9a7c2e;font-weight:850}.profile-earnings>b{display:block;color:#88601c;font-size:27px;margin:7px 0;overflow-wrap:anywhere}.profile-earnings>small{display:block;color:#9a8554;font-size:9px;line-height:1.6}

.cup-lineup{display:grid;gap:10px;padding:16px;border:1px solid #b5d7d3;border-radius:16px;background:#edf9f4;margin:16px 0}.cup-lineup select{width:100%;padding:12px;border:1px solid #abc8c7;border-radius:10px;background:white;color:#183b4e;font:inherit}.cup-next{padding:14px;border-radius:12px;background:#fff0ba;font-weight:700;color:#51421a}

.rival-preview{background:#edf7fc;border:1px solid #bbd9e6;border-radius:16px;padding:16px;margin:14px 0;color:#19445a}.rival-preview h3{margin:4px 0 10px}.rival-preview p{font-size:13px;line-height:1.5}.rival-preview small{display:block;margin-top:10px;line-height:1.5}.rival-preview details{margin-top:12px}.rival-preview summary{cursor:pointer;font-weight:700}

/* A brighter, stadium-inspired competition lobby. Scoped to keep the match clear. */
body{background:radial-gradient(ellipse at 10% 0,#c0f4ec,transparent 55%),radial-gradient(ellipse at 100% 50%,#d1e6ff,transparent 60%),#edf4fb}
body>header{background:linear-gradient(110deg,#142d65,#15549a);box-shadow:0 3px 0 #57d7d8}header .test{display:none}header>a{display:grid;place-items:center;width:36px;height:40px;border-radius:12px;background:#ffffff15}header .header-ranking{background:#ffffff15;color:white;border-color:#ffffff30;box-shadow:none}main{margin-top:22px}#setup{border:1px solid #c9dcec;box-shadow:0 12px 40px #173e7612;border-radius:26px}.competition-hero{min-height:238px;padding:30px;grid-template-columns:1fr 170px;background:radial-gradient(ellipse at 80% 30%,#287dba77,transparent 55%),linear-gradient(125deg,#12275b,#15519a)}.competition-hero:before{width:260px;height:150px;border:2px solid #72cde54a;border-radius:0;top:60px;right:-28px;transform:rotate(-25deg) skewX(12deg);box-shadow:inset 0 0 0 12px #239fb133,0 0 0 12px #7cf2e309}.competition-hero:after{content:'';position:absolute;width:260px;height:1px;right:-25px;top:136px;transform:rotate(-25deg);background:#72cde54a}.competition-hero>div:first-child{z-index:1}.competition-hero h1{font-size:36px;line-height:1.08;letter-spacing:-1.2px;margin:18px 0 12px}.season-badge{border:0;background:#ffffff16;color:#9eefe1;font-size:9px;letter-spacing:1.2px;padding:7px 10px}.competition-hero p{font-size:12px;max-width:255px;color:#c6dcf2}.hero-trophy>span{transform:rotate(7deg);display:flex;justify-content:center}.hero-trophy .trophy-art{height:137px;width:123px;color:#ffc94d;filter:drop-shadow(0 9px 0 #071c5126) drop-shadow(0 0 24px #ffda6640)}.hero-trophy i{width:110px;height:9px;background:#0b245277;margin:4px auto 14px}.hero-trophy b{font-size:8px;letter-spacing:1px;color:#ffe3a2}
.circuit-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:18px 22px;background:#fff}.circuit-shortcuts button{position:relative;display:grid;grid-template-columns:39px 1fr;align-items:center;column-gap:8px;text-align:left;padding:11px 10px;border:1px solid #dbe6f0;background:#f6f9fd;color:#1d456f;border-radius:15px;font:inherit;cursor:pointer;min-width:0;transition:background .15s,transform .15s}.circuit-shortcuts button:hover{background:#eaf4ff;transform:translateY(-2px)}.circuit-shortcuts button[aria-current]{border-color:#ecc969;background:#fff8dd;box-shadow:0 3px 0 #e9d99d50}.circuit-icon{grid-row:span 2;display:grid;place-items:center;width:37px;height:40px;border-radius:12px;font-size:23px;background:#ffe9a0}.circuit-icon.monthly{background:#d7f6e7;filter:hue-rotate(65deg)}.circuit-icon.annual{background:#ffdddd;filter:hue-rotate(315deg)}.circuit-shortcuts strong{font-size:13px}.circuit-shortcuts small{font-size:9px;color:#7790a6;margin-top:3px}.competition-format{background:#f6f9fd;padding:13px 10px;border-top:1px solid #e4edf5}.competition-format b{font-size:17px;color:#264e7c}.competition-format span{font-size:9px}#prize-info{border:0;border-left:4px solid #f2c450;background:#fff8de;font-weight:750;font-size:12px;line-height:1.7;border-radius:12px}.online-panel{border:0;background:#eff9f5;padding:11px 13px}.youth-editor:not([open]){background:#f3f4fc;border:1px solid #e0e2f2;padding:13px}.youth-editor[open]{border:2px solid #91d3da;box-shadow:0 5px 0 #dcebef}.squad-heading{margin-top:25px}.squad-heading h2{font-size:24px;letter-spacing:-.6px}.squad-heading .eyebrow{font-size:8px;letter-spacing:1.5px}.squad-heading>span{background:#163d72;color:#fff;border-radius:20px;padding:8px 13px}.pair-preview{background:linear-gradient(115deg,#163c75,#1b647e);border:0;padding:17px 13px}.pair-names b{color:#fff}.pair-names i{color:#8be6d6}.pair-reading{color:#b1e5df}.pair-names .portrait{height:52px;width:43px}.rival-preview{margin:14px 22px;background:#f5f8fc;border:1px solid #e0e9f2;padding:15px}.rival-preview .eyebrow{font-size:8px;color:#6788a6;letter-spacing:1px}.rival-preview h3{font-size:17px;margin:8px 0}.rival-preview p{font-size:11px;line-height:1.65;color:#668095}.rival-preview>b{font-size:11px;color:#2a647f}.rival-preview>small{font-size:9px;color:#7e91a2}.rival-preview details{font-size:11px;color:#426b8d}.card{border-radius:18px;padding:18px 13px 14px;background:linear-gradient(155deg,#fff,#f0f4fb);box-shadow:0 4px 0 #d9e4ee;overflow:hidden}.card[aria-pressed=true]{border-color:#18b3a3;background:linear-gradient(145deg,#e2faf4,#f4fcff);box-shadow:0 4px 0 #9dd9ce}.card .portrait{height:75px;width:60px;filter:drop-shadow(0 4px 2px #204a6620)}.card .name{font-size:17px}.card .check{display:grid;place-items:center;min-width:19px;min-height:19px;background:#dae7ef;border-radius:50%;font-size:11px;top:9px;right:9px}.card[aria-pressed=true] .check{background:#159985;color:#fff}.card .stats{padding-top:12px;border-top:1px solid #204f6b15;gap:7px 8px;font-size:10px}.card .stats span{display:flex;justify-content:space-between;gap:4px}.card .stats b{color:#285c81}.player-level{font-size:8px;letter-spacing:.6px;color:#4684a2}.player-xp{font-size:9px;color:#7a91a4}.player-xp-bar{height:4px}.roster-hint{font-size:10px;line-height:1.6;color:#8397a7;text-align:center;margin:14px 24px 22px}.training-guide,.team-customization,.how-to-play{background:#f7f9fc;border-color:#e0e8f1}.competition-entry{padding:6px 0 14px}#start{background:linear-gradient(110deg,#20b6a3,#178e91);border:1px solid #189a90;box-shadow:0 4px 0 #116c77;border-radius:14px;font-size:15px;padding:17px}#start:disabled{background:#c0cfd9;border-color:#afc2d0;box-shadow:0 3px 0 #a2b5c3;color:#36546d;opacity:1}.competition-entry>.fine{max-width:550px;margin:16px auto 0;font-size:9px;line-height:1.8}.ranking-tabs{background:#edf3fa;border-radius:12px;padding:5px;gap:4px}.ranking-tabs button{flex:1;border:0;background:transparent;font-size:11px;padding:10px 7px}.ranking-tabs button[aria-pressed=true]{background:#1a4d86;box-shadow:0 2px 5px #173f7420}.ranking-row{padding:15px 8px;border-color:#e4edf6}.ranking-row.you{background:#e4f8ef;border-radius:10px}.ranking-title{gap:12px}.ranking-title h2{font-size:18px!important;margin:0!important}.outline-small{border-color:#d5e2ef;background:#f4f8fc;color:#2d628e}.monthly-info{font-size:12px;color:#688397}.cup-lineup{background:#f1f8fc;border-color:#d5e6f1}.training-row strong{overflow-wrap:anywhere}
@media(max-width:560px){main{margin-top:13px;padding:0 10px 25px}.competition-hero{padding:25px 20px;grid-template-columns:minmax(0,1fr) 110px;min-height:218px}.competition-hero h1{font-size:29px}.competition-hero p{font-size:11px}.hero-trophy .trophy-art{height:110px;width:98px}.hero-trophy i{width:85px}.hero-trophy b{font-size:7px}.season-badge{font-size:7px;letter-spacing:.8px}.circuit-shortcuts{padding:14px 13px;gap:7px}.circuit-shortcuts button{grid-template-columns:1fr;justify-items:center;text-align:center;padding:11px 5px;gap:5px}.circuit-icon{grid-row:auto;width:34px;height:34px;font-size:21px}.circuit-shortcuts strong{font-size:12px}.circuit-shortcuts small{font-size:8px;margin:0}.rival-preview{margin-left:13px;margin-right:13px}.squad-heading h2{font-size:21px}.cards{gap:9px}.card{padding:17px 10px 13px}.card .portrait{width:46px;height:65px;margin-right:6px}.card .name{font-size:15px}.card .stats{font-size:9px;gap:7px 6px}.card .position{font-size:9px}.pair-names b{font-size:12px}.competition-entry>.fine{padding:0 4px}}
@media(prefers-reduced-motion:reduce){.circuit-shortcuts button{transition:none}}
.rival-identity{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #dce7ef}.rival-crest{width:48px;height:57px;flex-shrink:0;filter:drop-shadow(0 3px 0 #21476615)}.rival-identity>div:first-of-type{flex:1;min-width:0}.rival-identity h3{font-size:19px;margin:4px 0}.rival-identity small{font-size:7px;letter-spacing:1px;color:#7191a8}.rival-identity b{font-size:11px;color:#3b6584}.rival-identity p{margin:5px 0 0;font-size:10px}.rival-kits{display:flex}.rival-kits .portrait{width:35px;height:47px;margin:0}.matchup-reading{padding:12px;margin-top:12px;background:#e6f5ef;border-radius:10px;color:#2c725e}.matchup-reading b{display:block;font-size:12px}.matchup-reading span{display:block;margin-top:6px;font-size:10px}.rival-circuit-row{display:flex;gap:10px;align-items:center;border-top:1px solid #dce7ef;padding:9px 0}.rival-circuit-row .rival-crest{width:28px;height:35px}.rival-circuit-row p{margin:0}.scoreboard .scorerow:not(.home){border-left:3px solid var(--rival-color,#e68b6a)}@media(max-width:420px){.rival-identity{gap:8px}.rival-identity h3{font-size:16px}.rival-kits .portrait{width:26px}.rival-crest{width:39px;height:48px}}

/* Earned card tiers: the selection check remains independent of rarity. */
.card.tier-bronze{--tier:#94603d;--tier-light:#fff1de;--tier-edge:#bd8a60}
.card.tier-silver{--tier:#53677e;--tier-light:#eff5fb;--tier-edge:#a0b2c6}
.card.tier-gold{--tier:#886019;--tier-light:#fff6ce;--tier-edge:#dbb344}
.card.tier-diamond{--tier:#146f8c;--tier-light:#e1fcff;--tier-edge:#50c7e2}
.card.tier-legendary{--tier:#7243a3;--tier-light:#f3e7ff;--tier-edge:#bd82ec}
.card[class*="tier-"]{border-color:var(--tier-edge);background:linear-gradient(145deg,#fff 12%,var(--tier-light));box-shadow:0 4px 0 color-mix(in srgb,var(--tier-edge) 50%,#dae5ef)}
.card[class*="tier-"][aria-pressed=true]{outline:3px solid #119b89;outline-offset:2px;border-color:var(--tier-edge);background:linear-gradient(145deg,#fff 12%,var(--tier-light))}
.player-tier{display:block;width:fit-content;max-width:calc(100% - 20px);padding:4px 8px;margin:0 0 12px;border-radius:6px;color:var(--tier);background:var(--tier-light);border:1px solid var(--tier-edge);font-size:9px;font-weight:900;letter-spacing:.7px;text-transform:uppercase}
.card.tier-legendary .player-tier{background:linear-gradient(110deg,#7243a3,#a64b88);color:#fff;border-color:#e5b55e}
.card.tier-diamond .player-tier{background:linear-gradient(110deg,#d6faff,#f4eaff)}

.next-tier{display:block;font-size:9px;color:var(--tier);margin:5px 0;line-height:1.5}.development-plan{margin:16px 22px;padding:18px;background:linear-gradient(135deg,#edf9f4,#eff5ff);border:1px solid #c9e2df;border-radius:16px}.development-heading{display:flex;align-items:center;gap:12px}.development-heading>span{font-size:29px}.development-heading small{font-size:8px;color:#418c87;letter-spacing:1.3px;font-weight:800}.development-heading h3{font-size:18px;color:#25577a;margin:5px 0}.development-plan>p{font-size:12px;color:#657f8c;line-height:1.6}.development-player{display:grid;gap:5px;padding:13px 0;border-top:1px solid #cddfe1}.development-player b{font-size:13px;color:#27566f}.development-player span{font-size:11px;color:#387768}.development-player small{font-size:10px;color:#6a838b}.development-link{display:block;font-size:12px;color:#16867b;font-weight:800;margin-top:12px}@media(max-width:560px){.development-plan{margin:14px 13px}.development-heading h3{font-size:16px}}

.player-trait{display:grid;clear:both;gap:5px;padding:10px;margin:12px -2px;border-radius:9px;background:#fff9;border:1px solid var(--tier-edge,#d3e2df)}.player-trait b{font-size:10px;color:var(--tier,#236b77)}.player-trait small{font-size:9px;line-height:1.5;color:#647e8b}.player-trait em{font-style:normal;font-size:9px;line-height:1.6;font-weight:750;color:#456b7d}

/* A compact tournament lobby; depth is available on demand. */
#setup .competition-hero{min-height:0;padding:8px 0 16px;background:none;box-shadow:none}#setup .competition-hero h1{font-size:clamp(26px,4vw,36px);line-height:1.1;margin:0 0 6px}#setup .competition-hero p{font-size:13px;margin:0}#setup .circuit-shortcuts{margin:0 0 14px}#setup .circuit-shortcuts small{display:none}#setup .squad-heading{margin-top:18px}#setup .squad-heading h2{font-size:20px}#setup .card{padding:12px 10px;min-height:0}#setup .card .portrait{height:70px;max-width:70px}#setup .card .name{font-size:20px}#setup .card .stats{grid-template-columns:1fr;gap:3px;font-size:11px}#setup .card .position{font-size:10px}#setup .card .player-level{font-size:10px}#setup .competition-entry{margin:14px 0 20px;padding:0;background:none;border:0}#setup .competition-entry .fine{font-size:11px;margin:8px 0 0}#setup .roster-hint{font-size:11px;margin:8px 0}#setup details{margin-top:10px}#setup details>summary{padding:14px;font-size:13px;cursor:pointer}#setup .rival-preview{margin:10px 0;padding:12px}.squad-detail{padding:14px;border-bottom:1px solid #d4e1df}.squad-detail h3{font-size:15px;margin:0 0 8px}.squad-detail p{font-size:12px;line-height:1.7}.squad-detail small{display:block;font-size:11px;margin-top:8px}.squad-detail .player-trait{font-size:12px}#setup .online-panel{padding:10px 12px;margin:8px 0}#setup .online-panel p:empty{display:none}@media(max-width:600px){#setup .cards{gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}#setup .card .portrait{height:56px}#setup .card .name{font-size:17px}#setup .card .stats{font-size:10px}#setup .pair-preview{padding:10px}}

.profile-streak{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;margin:12px 0;background:linear-gradient(120deg,#fff2d2,#fff8e8);border:1px solid #efcc82;border-radius:14px;color:#7c551b}.profile-streak span{font-size:11px;letter-spacing:.5px;font-weight:800}.profile-streak b{font-size:21px}@media(max-width:500px){.profile-streak b{font-size:16px}.profile-streak span{font-size:10px}}
