/* Build 36. Shared card geometry, controls and typography for the whole UI. */
:root{
 --card-radius03:16px;
 --card-padding03:14px;
 --card-gap03:12px;
 --card-surface03:linear-gradient(145deg,var(--family-panel),#101e30);
 --card-shadow03:inset 0 1px #ffffff12,0 6px 18px #0002;
 --control-radius03:10px;
}
body :is(.panel,.team-branch,.shop-item,.achievement-card03,.stand-owned03 article,.museum-award,.result-row,.pulse-card,.daily03,.full-stand03,.games03,.stand-overview03,.achievements-hero03,.team-level-bar){
 border:1px solid var(--card-border03,var(--family-line))!important;
 border-radius:var(--card-radius03)!important;
 background:var(--card-surface03)!important;
 box-shadow:var(--card-shadow03)!important;
 min-width:0;
}
body :is(.home-feature,.illustrated-heading,.tournament-cover,#match-plan-panel){
 border:1px solid var(--card-border03,var(--family-line))!important;
 border-radius:var(--card-radius03)!important;
 box-shadow:var(--card-shadow03)!important;
}
body :is(.view,dialog,.resources,.topbar,.mobile-nav,.sidebar) :is(h1,h2,h3,p,span,small,strong,b,button,label,legend,summary){
 -webkit-text-stroke:0!important;
 text-shadow:none!important;
}
body :is(.view,dialog) :is(h1,h2,h3){letter-spacing:0!important;font-weight:800}
body :is(.view,dialog) :is(p,small){line-height:1.45}
body :is(.primary,.secondary){border-radius:var(--control-radius03)!important;line-height:1.25;white-space:normal;overflow-wrap:break-word}
body :is(.primary,.secondary):focus-visible{outline:2px solid var(--family-rim);outline-offset:2px}
body :is(.shop-grid,.team-branches,.achievement-grid03,.stand-owned03,.tournament-cards,.museum-shelf){gap:var(--card-gap03);align-items:stretch}
body :is(.tag03,.branch-rank,.brief-level,.badge){line-height:1.25;letter-spacing:.2px}
body .tag03{padding:4px 7px!important;border-radius:7px;font-size:9px!important;min-height:22px;max-width:100%;white-space:normal;display:inline-flex;align-items:center;justify-content:center;text-align:center}

/* Identical media, content and action positions inside each card collection. */
body .team-branch,body .shop-item{display:flex;flex-direction:column;overflow:hidden}
body .branch-content,body .shop-item-body{display:flex;flex-direction:column;flex:1;min-width:0;padding:var(--card-padding03)!important}
body .branch-content h2,body .shop-item h3{font-size:18px;line-height:1.25;margin:0 0 8px;overflow-wrap:break-word}
body .branch-rates03{flex:1;margin:0 0 12px;min-height:0}
body .branch-rates03>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:baseline;font-size:11px;line-height:1.5;padding:1px 0}
body .branch-rates03 span{min-width:0;overflow-wrap:break-word}
body .branch-content>.primary{margin-top:auto;min-height:42px;padding:10px 8px}
body .branch-rank{top:9px;right:9px;min-width:40px;padding:5px 8px;font-size:22px;border-radius:var(--control-radius03)}
body .branch-metal{left:12px;bottom:8px;font-size:8px;letter-spacing:.8px;line-height:1.25}
body .shop-item h3{min-height:2.5em;margin:8px 0}
body .shop-item p{font-size:12px;line-height:1.5;min-height:4.5em;margin:0 0 8px;overflow-wrap:break-word}
body .shop-item-body>small{line-height:1.45;min-height:1.45em;margin:0 0 10px}
body .shop-item-body>.card-actions03{display:grid;gap:7px;margin-top:auto}
body .shop-item-body>.card-actions03 button{margin:0;min-height:42px;padding:9px 8px!important;line-height:1.3;font-size:12px}
body .card-shop .card-actions03{min-height:91px;align-content:start}
body .shop-grid:has(.style03) .stand-shop .card-actions03{min-height:105px;align-content:start}
body .card-actions03 .style03{display:grid;margin:2px 0 0;gap:4px;font-size:9px;line-height:1.3;font-weight:500}
body .card-actions03 .style03 select{width:100%;min-width:0;min-height:36px;padding:6px 24px 6px 9px;font-size:11px;line-height:1.3;border:1px solid var(--family-line);border-radius:var(--control-radius03);background:#14293c;color:#e4f1f6}
body .shop-art03,body .card-illustration{height:180px!important;flex:none}
body .card-illustration .card-effect-icon03{width:32px;height:32px;left:10px;bottom:10px}
body .card-effect-icon03>.family-icon{width:100%;height:100%}
body .card-illustration>span{right:10px;top:10px;display:grid;place-items:center;width:30px;height:30px;border-radius:9px;line-height:1;font-size:20px}
body .loadout-slot{border-radius:var(--control-radius03);padding:10px;line-height:1.3;min-width:0}
body .loadout-slot>span{min-width:0;overflow-wrap:break-word}
body .loadout-slot .family-icon{flex:none;width:29px;height:29px}
body .loadout-slot small{line-height:1.4;margin-top:4px;font-weight:400}
body .achievement-card03{padding:var(--card-padding03);gap:12px}
body .achievement-card03 h3{font-size:14px;line-height:1.3;margin:5px 0 7px;overflow-wrap:break-word}
body .achievement-card03 p{font-size:11px;line-height:1.45}
body .achievement-progress03 progress{flex:1;min-width:0;width:0}
body .achievement-progress03 b{flex:none;line-height:1.3}
body .stand-owned03 article{padding:var(--card-padding03);gap:8px}
body .stand-owned03 article b{min-height:2.6em;display:flex;align-items:center;justify-content:center;font-size:12px;line-height:1.3}
body .stand-owned03 article small{min-height:2.8em;display:flex;align-items:center;justify-content:center;line-height:1.4}
body .museum-award{padding:var(--card-padding03);display:flex;flex-direction:column;align-items:center;gap:6px}
body .museum-award b{font-size:13px;line-height:1.3;color:#eaf3fa}
body .museum-award p,body .museum-award small{margin:0}
body .museum-counts>span{border:1px solid var(--family-line)!important;border-radius:var(--control-radius03);padding:12px 8px;min-width:0}
body .result-row{padding:var(--card-padding03);gap:14px}
body .result-info{min-width:0}
body .result-score{min-width:65px;line-height:1.3;text-align:center;padding:8px!important}
body .result-info .club-link{white-space:normal;line-height:1.3}
body .tournament-cover{padding:16px;min-height:270px;height:100%;transition:box-shadow .2s}
body .tournament-cover:hover{transform:none}
body .cover-top{display:flex;align-items:center;gap:9px;min-height:38px}
body .cover-emblem{flex:none;width:32px;height:32px}
body .cover-emblem .family-icon{width:32px;height:32px}
body .cover-top>.family-icon{flex:none;width:32px;height:32px}
body .cover-label,body .cover-top>span:last-child{font-size:8px;line-height:1.4;letter-spacing:.5px;min-width:0}
body .cover-content{display:flex;flex:1;flex-direction:column;max-width:100%;gap:9px;padding-top:18px}
body .cover-content>strong{font-size:24px;line-height:1.15;min-height:2.3em;display:flex;align-items:flex-end;letter-spacing:0;overflow-wrap:break-word}
body .cover-content>small{font-size:10px;line-height:1.4;min-height:2.8em;max-width:100%}
body .cover-action{margin-top:auto;font-size:11px;padding-top:12px;line-height:1.35}
body .league-ladder button{border-radius:var(--control-radius03);padding:12px 6px;line-height:1.2}
body .league-ladder button.active{outline:none;border-color:var(--family-rim)!important;box-shadow:inset 0 0 0 1px var(--family-rim)!important}
body .league-ladder button small{margin-top:12px;line-height:1.3;letter-spacing:0}

/* Metal colours are the only frame variation, not a second card template. */
body .team-branch[data-card-tier=bronze]{--card-border03:#bf9168}
body .team-branch[data-card-tier=silver]{--card-border03:#aebfce}
body .team-branch[data-card-tier=gold]{--card-border03:#d8b462}
body .team-branch[data-card-tier=red-gold]{--card-border03:#ea8b64}
body .achievement-card03.earned03{--card-border03:var(--medal)}
body .tournament-cover[data-metal=bronze]{--card-border03:#bf9168}
body .tournament-cover[data-metal=silver]{--card-border03:#aebfce}
body .tournament-cover[data-metal=gold]{--card-border03:#d8b462}
body .tournament-cover[data-metal=platinum]{--card-border03:#9bc9c9}

/* Currency pills share a row height. The match button no longer crosses the row border. */
body .resources{align-items:center;gap:8px}
body .resources .resource-chip,body .resources #energy03{align-self:center;display:flex;align-items:center;gap:6px;min-height:40px;padding:6px 10px;border-radius:var(--control-radius03);line-height:1.25}
body .resources .resource-chip strong{white-space:nowrap;line-height:1.25}
body .resources .resource-chip small{margin:0;line-height:1.35}
body .resources .resource-chip .family-icon{flex:none;width:24px;height:24px}
body .match-bonus03{border-radius:var(--control-radius03);padding:7px;gap:7px;line-height:1.3}
body .match-bonus03 strong,body .match-bonus03 small{overflow-wrap:break-word;line-height:1.3}
body .duel-header03 .duel-title03 h2,body .duel-result-heading03{font-size:clamp(18px,3vw,27px)!important;line-height:1.15;letter-spacing:0}
/* The old fixed height was smaller than min-height, crossing the subtitle with a border. */
body .duel-header03{height:64px;min-height:64px!important;padding:6px 18px!important;align-items:center}
body .duel-title03 h2{margin:0 0 3px}
body .duel-title03 small{display:block;font-size:10px!important;line-height:1.25!important;margin:0}
body .duel-area03{inset:64px 0 72px}
body .duel-footer03{height:72px;min-height:72px!important;padding:7px 18px!important}
body .duel-footer03 p{line-height:1.35;margin:0}
body dialog{border-radius:var(--card-radius03);border-width:1px;line-height:1.45}
body :is(.reward03,.online03){padding:24px}
body :is(.reward03,.online03) h2{font-size:24px;line-height:1.2;margin:10px 0}
body dialog .dialog-close{right:10px;top:10px;min-width:36px;min-height:36px;border-radius:var(--control-radius03)}

@media(orientation:landscape) and (max-height:650px){
 :root{--card-padding03:10px;--card-gap03:10px}
 body .resources{height:36px;padding-top:3px!important;padding-bottom:3px!important}
 body .resources .resource-chip,body .resources #energy03{min-height:28px;height:28px;padding:4px 8px;border-radius:8px}
 body .resources .resource-chip strong{font-size:12px}
 body .resources .resource-chip small{font-size:8px}
 body .resources .resource-chip .family-icon{width:20px;height:20px}
 body .team-hub-tabs03{margin-bottom:6px}
 body .team-hub-tabs03 button{min-height:32px;padding:4px 6px}
 body .team-page-heading{margin-bottom:5px;min-height:28px}
 body .team-page-heading h1{font-size:22px;line-height:1.15;margin:0}
 body .team-level-bar{padding:7px 10px!important;margin-bottom:8px;border-radius:var(--control-radius03)!important;min-height:44px}
 body .team-level-bar>div:first-child{gap:3px}
 body .team-level-bar small{font-size:9px;line-height:1.3}
 body .team-level-bar b{font-size:13px;line-height:1.25}
 body .branch-art{height:72px;max-height:72px!important}
 body .branch-art img{object-position:50% 0%}
 body .branch-content{padding:8px 10px!important}
 body .branch-content h2{font-size:17px;margin-bottom:5px;line-height:1.2}
 body .branch-rates03{margin:0 0 7px}
 body .branch-rates03>div{font-size:10px;line-height:1.35;padding:1px 0;gap:6px}
 body .branch-content>.primary{min-height:37px;padding:8px;font-size:11px}
 body .branch-rank{top:7px;right:7px;font-size:19px;min-width:34px;padding:4px 6px}
 body .branch-metal{font-size:7px;bottom:6px;left:10px}
 body .team-help{font-size:9px;line-height:1.3;margin:6px 0}
 body .shop-art03,body .card-illustration{height:124px!important}
 body .shop-item h3{font-size:15px;margin:7px 0;min-height:2.5em}
 body .shop-item p{font-size:11px;min-height:4.5em}
 body .shop-item-body>.card-actions03 button{min-height:38px;font-size:11px;padding:8px!important}
 body .card-shop .card-actions03{min-height:83px}
 body .loadout-slot{padding:8px;min-height:52px}
 body .loadout-slot .family-icon{width:24px;height:24px}
 body .achievement-card03{min-height:142px;gap:10px}
 body .achievement-card03 h3{font-size:13px}
 body .achievement-card03 p{font-size:10px}
 body .tournament-cover{min-height:210px;padding:12px}
 body .cover-content{padding-top:9px;gap:7px}
 body .cover-content>strong{font-size:21px}
 body .cover-content>small{font-size:9px}
 body .cover-action{padding-top:9px;font-size:10px}
 body .cover-top>span:last-child{font-size:7px;letter-spacing:.3px}
 #team-museum03 .museum{padding:14px}
 #team-museum03 .museum-heading{min-height:0}
 #team-museum03 .museum-heading h2{font-size:23px;margin:3px 0}
 #team-museum03 .museum-heading p{font-size:11px;margin:4px 0}
 #team-museum03 .museum-heading .eyebrow{font-size:8px}
 #team-museum03 .museum-counts{margin:13px 0;gap:10px}
 #team-museum03 .museum-counts>span{padding:8px;min-height:58px}
 #team-museum03 .museum-counts b{font-size:22px;line-height:1.3}
 #team-museum03 .museum-empty{min-height:110px;margin-top:12px;padding:12px}
 #team-museum03 .museum-empty .cup-art{width:65px;height:70px}
 #team-museum03 .museum-empty h3{font-size:17px}
 #team-museum03 .museum-empty p{font-size:11px;margin:6px 0}
 #team-museum03 .museum-star-rule{font-size:10px;line-height:1.4}
}
@media(orientation:landscape) and (max-height:380px){
 body .branch-art{height:57px;max-height:57px!important}
 body .team-level-bar{padding:5px 10px!important;min-height:40px}
 body .team-page-heading{min-height:26px}
 body #team-overview b{height:28px;min-width:32px;font-size:18px}
 body .branch-rates03>div{font-size:9px;line-height:1.4}
 body .branch-content h2{font-size:16px}
 body .branch-content>.primary{min-height:35px}
 body .branch-metal{font-size:6px;bottom:4px}
}
@media(orientation:portrait) and (max-width:600px){
 :root{--card-padding03:12px;--card-gap03:10px}
 body .resources{justify-content:space-between;gap:6px;padding:6px 12px!important;height:auto!important;min-height:54px}
 body .resources .resource-chip,body .resources #energy03{padding:7px;gap:5px;min-height:40px}
 body .resources .resource-chip strong{font-size:13px}
 body .resources .resource-chip small{font-size:8px}
 body .resources .resource-chip .family-icon{width:21px;height:21px}
 body .shop-art03,body .card-illustration{height:140px!important}
 body .shop-item h3{font-size:15px}
 body .shop-item p{font-size:11px}
 body .shop-item-body>.card-actions03 button{font-size:11px}
 body .card-illustration .card-effect-icon03{width:28px;height:28px;left:8px;bottom:8px}
 body .loadout-slot{padding:10px;font-size:11px}
 body .loadout-slot small{font-size:9px}
 body .branch-content h2{font-size:20px}
 body .branch-rates03>div{font-size:12px;line-height:1.6}
 body .branch-art{height:160px}
 body .stand-owned03 article small{font-size:10px}
 body .tournament-cover{min-height:270px}
 body .cover-content>strong{font-size:24px}
 body .duel-header03 .duel-title03 h2{font-size:17px!important}
 body .duel-footer03{height:95px;min-height:95px!important}
 body .duel-area03{bottom:95px}
 body .result-row{gap:10px}
 body .result-score{min-width:54px}
}
@media(orientation:landscape) and (min-height:651px) and (max-height:900px){
 body.team-screen .main-shell main{padding-top:18px}
 body .team-page-heading{margin-bottom:12px}
 body .team-page-heading h1{font-size:27px}
 body .team-level-bar{padding:12px 16px;margin-bottom:12px}
 body .branch-art{height:150px}
}

/* Preserve the shared sizing and match-plan refinements introduced in build 35. */
body :is(.view,dialog,.topbar,.resources,.setup-card,.auth-panel,.mobile-nav,.sidebar) *,
body .duel-overlay *{-webkit-text-stroke:0!important;text-shadow:none!important}
body :is(.shop-grid,.achievement-grid03,.stand-owned03){grid-auto-rows:1fr}
body :is(.shop-item,.achievement-card03){height:100%}
body .achievement-card03>div:last-child{display:flex;flex-direction:column;align-self:stretch;min-width:0}
body .achievement-progress03{margin-top:auto;padding-top:4px}
body .tournament-cover:before{background:linear-gradient(90deg,#071624eb,#08182cb8 65%,#07192b66)!important}
body .branch-content>.primary{justify-content:center}
body .duel-zone03>span{line-height:1.4;padding:3px 5px}
body :is(.brief-branches03>span,.brief-options button){border-radius:var(--control-radius03)!important}
#match-plan-panel .brief-branches03>span{min-width:0;gap:5px}
#match-plan-panel .brief-branches03 b{line-height:1.4}
#match-plan-panel .brief-options{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.55fr) minmax(0,1fr)}
#match-plan-panel .brief-options button{width:100%;line-height:1.3;white-space:normal;overflow-wrap:anywhere}
@media(max-width:360px) and (orientation:portrait){body .shop-grid{grid-template-columns:1fr}}

/* Build 37: actionable instructions and clear inventory accounting. */
.energy-alert37{display:flex;flex-direction:column;gap:5px;border:1px solid #b6cdd1;border-left:4px solid #ffce80;background:#233642;padding:12px 16px;border-radius:12px;margin:10px 0;color:#edf5f7}
.energy-alert37 b{font-size:18px}.energy-alert37 span{font-size:13px}.energy-notice37{color:#ffe4ad!important}
.inventory-heading37{font-size:19px;margin:22px 0 12px}.luck-value37{font-size:15px;color:#a9eacb;line-height:1.4}
.stand-inventory37{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:12px}
.stand-inventory-card37{display:flex;align-items:flex-start;gap:12px;padding:14px;border:1px solid var(--family-line);border-radius:var(--card-radius03);background:var(--card-surface03)}
.stand-inventory-card37>img{flex:none;width:74px;height:86px;object-fit:cover;border-radius:10px}.stand-inventory-card37>div{min-width:0}.stand-inventory-card37 b{display:block;font-size:15px;margin-bottom:7px}.stand-inventory-card37 p{font-size:12px;line-height:1.5}.stand-inventory-card37 small{font-size:10px;line-height:1.5;display:block;color:#b6cfdb}
.duel-instruction37{position:absolute;z-index:3;left:50%;top:7px;transform:translateX(-50%);padding:7px 17px;border:1px solid #f6e8bd77;border-radius:11px;background:#102536e8;box-shadow:0 4px 15px #0005;color:#fff3d3;max-width:90%;width:max-content;pointer-events:none;font-size:clamp(16px,2.7vw,24px);font-weight:850;line-height:1.15;text-align:center}
body .pitch-announcement-card{background:linear-gradient(135deg,#102636f5,#194056f5)!important;border:1px solid #b9e4ed!important;border-top:3px solid var(--family-rim)!important;box-shadow:0 16px 50px #0008,0 0 35px #80d1e71f!important;padding:22px 34px!important}
body .pitch-announcement #announcement-title{color:#ffffff!important;text-shadow:0 3px 5px #061d2d!important;-webkit-text-stroke:0!important;letter-spacing:.5px;font-size:clamp(25px,4.7vw,44px)!important;line-height:1.15}
body .pitch-announcement #announcement-caption{color:#c5dce6!important;font-size:10px!important;letter-spacing:1px;line-height:1.5}body .pitch-announcement #announcement-score{color:#ffe4a0!important}
body.match-screen #sound-button:before,body.match-screen #sound-button:after{display:none!important}
body.match-screen .arena-quick-controls button{background:linear-gradient(145deg,#234c64,#102c40)!important;border:1px solid #bad9e6a3!important;color:#eefaff!important;border-radius:12px!important;width:40px!important;min-width:40px!important;height:38px!important;display:grid;place-items:center;box-shadow:0 3px 10px #0004!important}
body.match-screen .arena-quick-controls :is(#sound-button,#stadium-camera){width:40px!important;min-width:40px!important;padding:4px!important;font-size:0}
body.match-screen .arena-quick-controls .family-icon{width:28px!important;height:28px!important}
.backdrop-options{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:9px!important}.backdrop-options button{min-width:0}.backdrop-options img{height:65px!important;object-fit:cover}.backdrop-options span{font-size:10px;line-height:1.3;display:block;white-space:normal}
@media(max-width:600px){.backdrop-options{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(orientation:landscape) and (max-height:400px){.duel-instruction37{font-size:18px;padding:5px 12px;top:5px}}

#match-plan-panel button{border-color:var(--club)!important}#match-plan-panel button[aria-pressed=true]{border-color:var(--club)!important;box-shadow:inset 0 0 0 1px var(--club),0 0 10px color-mix(in srgb,var(--club) 22%,transparent)!important}#match-plan-panel button:focus-visible{outline:2px solid var(--club);outline-offset:2px}

.yellow-card37{display:inline-block;width:8px;height:11px;border-radius:1px;background:#f5d958;border:1px solid #b78b1b;margin-left:3px;box-shadow:0 1px 2px #0005}

body.match-screen #event-callout{font-size:clamp(11px,1.6vw,14px)!important;line-height:1.35;background:#3b4855f2!important;color:#edf4f6!important;max-width:calc(100% - 185px)!important;box-shadow:0 3px 14px #0004;border:1px solid #8da1ad77;padding:8px 12px!important}body.match-screen #event-callout small{color:#c7d9e3!important;font-size:10px!important;line-height:1.45;margin-top:3px}

body.match-screen #event-callout small{display:block!important}body.match-screen #event-callout .card-symbol{flex:none}

/* Build 38: a studio card, then the game's own entrance. */
#studio-splash{grid-template-rows:minmax(0,1fr) auto;gap:8px;padding:14px 24px;background:#fffaf3}
#studio-splash .studio-logo-wrap{width:min(75vw,620px)!important;max-height:calc(100dvh - 100px);filter:drop-shadow(0 12px 24px #ea6a1620)}
#studio-splash #studio-logo{width:100%!important;max-width:100%!important;max-height:calc(100dvh - 110px)!important;height:auto;object-fit:contain}
#studio-splash .studio-present{font-size:clamp(12px,2vw,20px)!important;letter-spacing:.32em;color:#9c4b10;font-weight:800;margin-top:5px}
#studio-splash .studio-center{gap:0}#studio-splash .studio-pitch{display:none}
body.entry38{overflow:hidden!important}body.entry38 #auth{position:fixed;inset:0;z-index:500;display:grid!important;grid-template-columns:minmax(0,1.4fr) minmax(250px,.85fr);align-items:center;gap:35px;max-width:none;width:100%;min-height:100dvh;height:100dvh;padding:clamp(18px,4vw,65px);background:radial-gradient(ellipse at 20% 70%,#ad411d36,transparent 65%),linear-gradient(130deg,#171c28,#0d1522 75%);overflow:auto;box-sizing:border-box}
#auth[hidden]{display:none!important}.auth-brand38{text-align:center;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px}.auth-brand38>img{width:min(45vw,440px,65dvh);height:auto;aspect-ratio:1;object-fit:contain;border-radius:22%;box-shadow:0 15px 70px #e2601526}.auth-tagline38{font-size:clamp(23px,3.3vw,40px)!important;text-transform:none;letter-spacing:.055em;color:#f9e3be!important;font-weight:600!important;margin:0;text-shadow:0 2px 12px #0008!important;-webkit-text-stroke:0!important}
#auth .auth-panel{width:100%;max-width:410px;margin:auto;padding:25px;background:#202b3eab;border:1px solid #7d75684a;border-radius:24px;box-shadow:0 15px 50px #0005;box-sizing:border-box}
#auth .eyebrow{color:#d5aa7f;font-size:9px;letter-spacing:1px}#auth h2{font-size:clamp(20px,3vw,31px);margin:10px 0 18px;color:#f8f2e8}#auth label{display:block;font-size:12px;color:#c6d1de;margin-bottom:12px}#auth input{box-sizing:border-box;display:block;width:100%;margin-top:5px;border:1px solid #6b71845c;background:#0d1a2d;color:#fff;min-height:42px;border-radius:12px;padding:10px 13px;font:inherit}#auth input:focus{outline:2px solid #df8849;outline-offset:1px}#auth-submit{background:linear-gradient(120deg,#e86b22,#a83b18)!important;border:1px solid #ffb968!important;color:white!important;min-height:46px;border-radius:13px;font-size:17px;font-weight:800;box-shadow:0 7px 25px #bd471326}#demo-login-note38,.entry-build38{display:block;font-size:10px;line-height:1.5;color:#99a7bb;margin:10px 0}.entry-build38{text-align:center;margin-bottom:0}#auth .form-error:empty{display:none}
#profile-button{width:auto!important;min-width:66px!important;max-width:150px;height:36px;padding:0 12px;border-radius:11px!important;font-size:12px!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f6eedf;background:var(--family-panel);border:1px solid var(--family-line)}
#match-plan-panel .fixture-nick38{display:block!important;color:var(--family-rim)!important;font-size:11px!important;font-weight:800;line-height:1.25;letter-spacing:.03em;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#match-plan-panel .fixture-team .club-link{gap:3px!important}#match-plan-panel .fixture-team .club-link>span{height:auto;min-height:2.1em}
.opponent-build38{margin-top:10px;font-size:11px;color:#bcd0db;border-top:1px solid var(--family-line);padding-top:8px}.opponent-build38 summary{cursor:pointer;font-weight:750}.opponent-build38 summary>span{float:right;color:#ffda9e}.opponent-build38 p{font-size:10px;line-height:1.4}.opponent-build38>small{font-size:9px;line-height:1.6}.opponent-cards38{display:flex;gap:8px}.opponent-cards38 figure{margin:6px 0;display:flex;align-items:center;gap:5px;font-size:9px;flex:1;min-width:0}.opponent-cards38 img{width:35px;height:38px;object-fit:cover;border-radius:6px}
body.match-screen .scoreboard{width:min(590px,calc(100% - 176px))!important;max-width:none!important;display:grid!important;grid-template-columns:minmax(0,1fr) 84px minmax(0,1fr);padding:6px 9px!important;min-height:59px;align-items:center;gap:6px}
body.match-screen .scoreboard .team-name{display:grid!important;grid-template-columns:34px minmax(0,1fr) 18px!important;grid-template-rows:18px 16px auto!important;gap:0 5px!important;text-align:left!important;min-width:0;position:relative;padding:0!important;align-items:center}
body.match-screen .scoreboard .team-name>i{display:none!important}.scoreboard .score-crest38{display:block!important;grid-column:1;grid-row:1/3;width:33px;height:37px;object-fit:contain}.scoreboard .team-name>strong{grid-column:2/4;grid-row:1;font-size:10px!important;line-height:1.2!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.scoreboard .score-nick38{display:block!important;grid-column:2;grid-row:2;color:#f7dfb4!important;font-size:10px!important;font-weight:750;letter-spacing:0!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scoreboard .team-level{grid-column:3;grid-row:2;position:static!important;font-size:9px!important;margin:0!important;padding:0!important;border:0!important;background:none!important;min-width:0!important;line-height:1!important}.scoreboard .dismissals{grid-column:2/4;grid-row:3;display:flex;gap:2px;min-height:2px;position:static!important;margin:0!important}.scoreboard .score-center b{font-size:23px!important}.scoreboard #match-clock{font-size:8px!important;line-height:1.2;display:block}.scoreboard .score-center{align-self:center}
.duel-rivals38{flex:0 0 27px;min-height:27px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:2px 16px;background:#0f2535;border-bottom:1px solid #6d8b8f40;box-sizing:border-box}.rival38{display:flex;align-items:center;gap:5px;max-width:31%;min-width:0;color:#efdaba;font-size:10px}.rival38:last-child{flex-direction:row-reverse}.rival38 b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rival38 .club-crest03{width:20px;height:23px;object-fit:contain}.duel-rivals38>small{font-size:8px;letter-spacing:1px;color:#8fa6b6}.penalty-dots38{display:flex;align-items:center;gap:8px;max-width:62%;font-size:11px}.penalty-dots38>span{display:flex;gap:3px;flex-wrap:wrap;max-width:95px}.penalty-dots38 i{display:block;width:7px;height:7px;border-radius:50%;border:1px solid #8d9bac}.penalty-dots38 .scored{background:#66da94;border-color:#66da94}.penalty-dots38 .missed{background:#eb7064;border-color:#eb7064}.penalty-dots38 .pending{background:#233b4a}
.cup-bracket38{margin-top:18px;border:1px solid var(--family-line);border-radius:15px;padding:14px;background:#10263870}.cup-bracket38>summary{font-weight:800;color:var(--family-rim);cursor:pointer;min-height:28px}.cup-bracket38 .bracket{display:flex!important;gap:14px;overflow-x:auto;overscroll-behavior:contain;padding:10px 0 18px;align-items:flex-start}.cup-bracket38 .bracket>div{flex:0 0 270px;min-width:270px}.cup-bracket38 .fixture{grid-template-columns:minmax(0,1fr) 45px minmax(0,1fr);font-size:10px;padding:10px 7px;border:1px solid #5f788447;border-radius:12px;margin-bottom:8px;background:#1b3041}.cup-bracket38 .fixture .club-link{font-size:10px}.cup-bracket38 .fixture .club-crest03{width:28px;height:31px}.cup-bracket38 .fixture small{font-size:8px}.bracket-pending38 p{font-size:11px;color:#a9bdc8;border:1px dashed #63829077;border-radius:12px;padding:18px}
@media(orientation:landscape) and (max-height:430px){#auth .auth-panel{padding:17px 22px}#auth h2{margin:7px 0 12px;font-size:22px}#auth label{margin-bottom:8px}#auth input{min-height:36px;padding:8px 10px}#auth-submit{min-height:40px}#auth #demo-login-note38{margin:6px 0;font-size:9px}.entry-build38{margin-top:7px}.auth-brand38>img{width:min(40vw,66dvh)}#match-plan-panel .club-crest-mini03{width:41px;height:45px}}
@media(orientation:portrait){body.entry38 #auth{grid-template-columns:1fr;grid-template-rows:auto auto;gap:18px;align-content:center;padding:22px}.auth-brand38>img{width:min(58vw,30dvh)}.auth-tagline38{font-size:clamp(23px,5.5vw,32px)!important}#auth .auth-panel{padding:19px 23px}.scoreboard .score-crest38{width:23px;height:29px}body.match-screen .scoreboard{width:calc(100% - 20px)!important;top:55px!important}}
/* Explicit grid positions override legacy right-aligned away labels. */
body.match-screen .scoreboard .team-name>strong{grid-column:2/4!important;grid-row:1!important;justify-self:stretch!important;justify-content:flex-start!important;display:block!important;height:auto!important}
body.match-screen .scoreboard .team-name>.score-nick38{grid-column:2!important;grid-row:2!important;margin:0!important}
body.match-screen .scoreboard .team-name>.team-level{grid-column:3!important;grid-row:2!important;justify-self:end!important}
body.match-screen .scoreboard .team-name>.dismissals{grid-column:2/4!important;grid-row:3!important}
@media(orientation:landscape) and (max-height:430px){
 body.entry38 #auth{grid-template-columns:minmax(0,1.2fr) minmax(280px,1fr);padding:12px 24px;gap:24px}
 #auth .auth-panel{padding:16px 20px}
 #auth .eyebrow{font-size:8px!important;margin:0!important;line-height:1.3}
 #auth h2{font-size:21px!important;line-height:1.2!important;letter-spacing:0!important;margin:8px 0 12px!important}
 #auth label{margin:0 0 8px!important;font-size:11px!important;line-height:1.2}
 #auth input{min-height:34px!important;height:34px;margin-top:4px;padding:7px 10px;font-size:12px}
 #auth-submit{min-height:38px;padding:8px 14px;font-size:15px}
 .auth-brand38>img{width:min(38vw,61dvh)}
 .auth-tagline38{font-size:clamp(23px,3.3vw,29px)!important;letter-spacing:.045em}
 #auth .entry-build38{font-size:9px;margin:5px 0 0}
}
#match-plan-panel .opponent-build38{margin-top:6px;padding-top:5px;font-size:10px;line-height:1.4}
#match-plan-panel .opponent-build38>summary{padding:1px 0;min-height:20px;font-size:10px;line-height:1.5}
/* Club identities have their own row above the action title. */
body .duel-rivals38{position:absolute;top:0;left:0;right:0;height:27px;z-index:4}
body .duel-header03{top:27px}
body .duel-area03{top:91px}
.cup-bracket38 .bracket h3{font-size:18px!important;line-height:1.25;min-height:45px;margin:0 0 12px}

/* 0.5.1: stable tournament navigation, developer-logo touch target. */
#view-tournaments,#tournament-detail,#competitions{overflow-anchor:none}
.shop-logo03{touch-action:manipulation;cursor:pointer;user-select:none;-webkit-user-select:none}

#event-callout[hidden]{display:none!important}

/* First-install identity, compact on landscape phones. */
#auth .nickname-label41{display:flex;justify-content:space-between;gap:12px;margin:12px 0 8px;color:#edf2f7}
#nickname-count41{font-size:12px;font-weight:600;color:#f8c793;white-space:nowrap}
#auth #nickname{width:100%;box-sizing:border-box;font-size:20px;font-weight:700;letter-spacing:.04em;background:#101b2b;color:#fff;border:1px solid #bd845d;border-radius:12px;padding:12px 14px;outline:none}
#auth #nickname:focus{border-color:#ffb76b;box-shadow:0 0 0 3px #ff923223}
#auth #nickname[aria-invalid=true]{border-color:#ff7373}
#auth #nickname-hint41{color:#becbdc;font-size:12px;line-height:1.5;margin:9px 0}
#auth .form-error{font-size:12px;line-height:1.4;min-height:0}
@media(orientation:landscape) and (max-height:430px){#auth h2{font-size:20px}#auth #nickname{min-height:42px;padding:9px 12px;font-size:19px}#auth #nickname-hint41{font-size:11px;margin:7px 0}}
