[hidden]{display:none!important}.detail-views{display:flex;gap:8px;margin:15px 0 16px;flex:none}.detail-views button{border:1px solid #607f9055;border-radius:8px;background:#14222dd9;padding:10px 23px;min-height:43px;color:#bdcdd7;font-weight:600}.detail-views button[aria-selected=true]{background:#5fe2cb;color:#09201e;border-color:#5fe2cb}.detail-views button:hover{border-color:#5fe2cb}.ranking[data-metric=kills] .kills-column{display:none}.retry-data{border:0;background:transparent;color:var(--blue);margin-top:12px;font-size:15px;text-decoration:underline}.data-message{margin:auto;text-align:center;font-size:16px;line-height:1.7;color:#bed0dc;padding:24px}.history-panel{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;border:1px solid #53708499;background:#081622ef;border-radius:8px}.history-list{flex:1;min-height:0;display:flex;flex-direction:column;gap:10px;padding:14px;overflow:hidden}.match-row{display:grid;grid-template-columns:130px minmax(0,1fr) 100px 140px 25px;gap:20px;align-items:center;text-align:left;width:100%;height:78px;min-height:78px;padding:13px 20px;border:1px solid #55708470;border-radius:7px;background:#152837e8;transition:background .18s,border-color .18s,transform .18s}.match-row:hover{background:#1a3545;border-color:#5fe2cb99;transform:translateX(2px)}.match-date{display:flex;flex-direction:column;gap:7px;color:#d2dfe8;font-size:14px}.match-date small{font-size:12px;color:#95acbd}.match-names{min-width:0;display:flex;flex-direction:column;gap:8px}.match-names>*{font-weight:500;font-size:15px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:#aebfce}.match-names>.winner{color:#9ff1df;font-weight:700}.match-score{font-family:'Barlow Condensed',Arial,sans-serif;font-size:27px;font-weight:700;white-space:nowrap;text-align:center;color:#f0f6f8}.match-map{font-size:12px;line-height:1.5;color:#9fb7c9}.match-open{font-size:21px;color:#88b4c2}.history-panel .table-bottom{min-height:47px;flex:none;margin-top:0;background:#102535;padding:10px 18px}.history-panel[aria-busy=true],.ranking[aria-busy=true]{cursor:progress}.training-info{flex:1;min-height:0;border:1px solid #6b8da355;border-radius:10px;padding:clamp(24px,5vh,60px);background:#091c29e8;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:20px}.training-info h3{font:700 50px 'Barlow Condensed',Arial;margin:0}.training-info p{font-size:18px;line-height:1.8;max-width:650px;color:#c0d2df}.purchase-detail .button,.profile-detail .button{margin-top:12px;width:100%}.modal-amount{font-size:40px!important;font-weight:700;color:#b4f8e9!important}.profile-name{font-size:25px!important;color:#f2f7fa!important}.match-dialog{width:min(1040px,calc(100% - 40px));max-width:none;max-height:calc(100dvh - 40px);padding:30px;overflow:auto}.match-dialog h2{font-size:34px;margin-right:30px}.match-detail-meta{display:flex;gap:18px;flex-wrap:wrap;color:#a5bdcb;font-size:14px;margin:13px 0 22px}.technical-badge{color:#e8c388}.match-detail-score{font:700 54px 'Barlow Condensed',Arial;text-align:center;margin:-15px 0 20px;color:#b6f2e6}.match-teams{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}.match-team{min-width:0;border:1px solid #476171;border-radius:8px;overflow:hidden;background:#10222e}.match-team.won{border-color:#5fe2cb99}.team-heading{padding:18px 18px 14px;background:#162f3c;min-height:93px}.team-heading>span{font-size:11px;letter-spacing:1.5px;color:#97aeba}.won .team-heading>span{color:#8eefd7}.team-heading h3{font-size:18px;margin:9px 0 0;overflow-wrap:anywhere}.match-team table{width:100%;table-layout:fixed;border-collapse:collapse}.match-team th{height:38px;font-size:12px;padding:10px 9px}.match-team td{height:51px;padding:12px 9px;font-size:14px}.match-team th:first-child,.match-team td:first-child{width:48%;padding-left:15px}.match-team th:nth-child(2),.match-team td:nth-child(2){width:18%}.match-team th:nth-child(3),.match-team td:nth-child(3){width:21%}.match-team th:nth-child(4),.match-team td:nth-child(4){width:13%}.match-player{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.match-player:hover{color:var(--blue)}.positive{color:#8be5c8}.negative{color:#ed9e9e}.match-detail-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:22px}.match-detail-bottom code{font-size:12px!important;color:#8ca5b9!important;overflow-wrap:anywhere}.match-detail-bottom .button{white-space:nowrap;flex:none}.login-label{max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-close:focus-visible{outline-offset:0}
@media(max-height:900px)and(min-width:761px){.detail-views{margin:12px 0}.detail-views button{padding:8px 20px;min-height:39px}.match-row{min-height:72px;height:72px}.history-list{padding:12px;gap:10px}.history-panel .table-bottom{min-height:44px}.match-dialog{padding:25px}.match-dialog h2{font-size:31px}.team-heading{min-height:80px;padding:14px 15px}.match-team td{height:46px;padding-top:10px;padding-bottom:10px}.match-detail-meta{margin-bottom:17px}.match-detail-score{font-size:43px}}
@media(max-width:1050px){.match-row{grid-template-columns:105px minmax(0,1fr) 85px 20px;gap:14px;padding-left:14px;padding-right:14px}.match-map{display:none}.match-date{font-size:12px}.match-names>*{font-size:14px}.match-score{font-size:24px}}
@media(max-width:760px){.detail-views{margin:10px 0;gap:7px}.detail-views button{min-height:39px;padding:9px 20px;font-size:13px}.history-list{padding:9px;gap:8px}.match-row{grid-template-columns:minmax(0,1fr) 75px;grid-template-rows:20px 1fr;height:86px;min-height:86px;gap:3px 10px;padding:10px 12px}.match-date{grid-column:1;grid-row:1;flex-direction:row;align-items:center;gap:13px;font-size:11px}.match-date small{font-size:11px}.match-names{grid-column:1;grid-row:2;gap:5px}.match-names>*{font-size:13px}.match-score{grid-column:2;grid-row:1/3;font-size:25px}.match-open{display:none}.history-panel .table-bottom{padding:10px;min-height:44px}.training-info{padding:25px;gap:16px}.training-info h3{font-size:40px}.training-info p{font-size:16px}.match-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:22px 14px}.match-dialog h2{font-size:29px}.match-teams{grid-template-columns:1fr;gap:16px}.match-detail-meta{font-size:12px;gap:12px;margin:10px 0 17px}.match-detail-score{font-size:37px}.team-heading{min-height:72px;padding:13px}.team-heading h3{font-size:16px}.team-heading>span{font-size:10px}.match-team td{height:43px;font-size:13px}.match-team th{height:34px;font-size:11px}.match-detail-bottom{align-items:flex-start;flex-direction:column}.match-detail-bottom .button{width:100%;min-height:42px;font-size:13px}.profile-name{font-size:21px!important}}
@media(prefers-reduced-motion:reduce){.match-row{transition:none}.match-row:hover{transform:none}}
@media(max-height:900px)and(min-width:761px){#ranking-panel td{height:54px;padding-top:11px;padding-bottom:11px;font-size:15px}#ranking-panel .player-name{font-size:16px}#ranking-panel th{height:44px;font-size:12px}}
.detail-views button{min-height:44px}.swatches button{position:relative}.swatches button:after{content:'';position:absolute;inset:-10px}.swatches{gap:20px}@media(max-width:760px){.table-pager button{min-height:44px;min-width:44px}}

/* One content edge for the header, mode heading, table and page footer.
   Mode arrows live in the gutter; they must not indent the table again. */
:root{--content-gutter:clamp(64px,6.25vw,160px)}
.match-names>span{display:flex;align-items:center;gap:10px}.match-team-name{min-width:0;overflow:hidden;text-overflow:ellipsis}.match-names .win-badge{flex:none;font:500 11px/1.4 Inter,Arial,sans-serif;letter-spacing:0;padding:2px 7px;border-radius:4px;background:#5fe2cb16;color:#a1e8d9}.match-versus{text-align:center;font-size:13px;font-weight:600;letter-spacing:1px;color:#8ca5b5}
.header,.screen,footer{padding-inline:var(--content-gutter)}
.explore{left:var(--content-gutter)}
.detail-layout{margin-inline:0;min-width:0}
.detail-content,.detail-heading>div,.detail-controls,.season-picker,.search{min-width:0}
.detail-heading{align-items:flex-end}
.detail-controls{display:grid;grid-template-columns:minmax(160px,200px) minmax(180px,260px);align-items:end;gap:16px;flex:0 1 476px}
.detail-controls .search,.season-picker select{height:44px;min-height:44px}
.season-picker select{width:100%;max-width:100%}
.detail-controls .search input{width:100%;min-width:0}
.table-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:16px}
.table-bottom>.table-pager{grid-column:2;justify-self:center}
#table-season,#history-season{grid-column:3;justify-self:end;text-align:right}
@media(min-width:761px){.mode-arrow{width:44px;height:44px}.mode-arrow.previous{left:-56px}.mode-arrow.next{right:-56px}.mode-arrow span{top:54px;font-size:10px;left:-8px;right:-8px}.mode-arrow svg{width:13px;height:25px}}
@media(min-width:761px)and(max-width:1050px){.detail-controls{grid-template-columns:minmax(135px,160px) minmax(150px,190px);gap:12px;flex-basis:362px}.header{gap:18px}}
@media(max-width:760px){:root{--content-gutter:17px}.detail-heading{align-items:stretch}.detail-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;flex:none}.table-bottom{grid-template-columns:minmax(0,1fr) auto;gap:9px}.table-bottom>.table-pager{grid-column:2}.table-bottom #table-season,.table-bottom #history-season{display:none}}
@media(max-width:390px){:root{--content-gutter:14px}}
.purchase-form{display:flex;flex-direction:column;gap:16px;margin-top:20px}.purchase-form label{display:flex;flex-direction:column;gap:8px;font-size:14px;color:#c8dce8}.purchase-form input,.purchase-form textarea{width:100%;border:1px solid #63869770;border-radius:8px;background:#112532;color:#f1f7fb;padding:12px 14px;min-height:46px;font:15px Inter,Arial,sans-serif}.purchase-form textarea{resize:vertical;min-height:85px;max-height:140px}.purchase-form .button{margin-top:0}.purchase-form .button:disabled{opacity:.55;cursor:wait}.purchase-status{font-size:14px!important;margin:0;min-height:24px}.purchase-status.error{color:#ffb9b9!important}.purchase-receipt{font-size:21px!important;color:#adf4e3!important;font-weight:700}
.account-controls{display:flex;align-items:center;gap:12px;flex:none}.language-toggle{min-width:44px;min-height:44px;border:1px solid #6f9fb64d;border-radius:7px;background:#13273380;color:#b2e9e1;font-size:12px;font-weight:700;letter-spacing:.7px}.language-toggle:hover{border-color:#5fe2cb;background:#24434b}.footer-links{display:flex;align-items:center;gap:28px}.footer-brand{display:flex;flex-direction:column;gap:4px}.clan-signature{font-size:10px;letter-spacing:.5px;color:#8aa4b4}.footer-help-icon{display:none}:root{--footer:54px}.legal-dialog{width:min(820px,calc(100% - 32px));max-width:none;max-height:calc(100dvh - 40px);overflow:auto}.legal-copy{margin-top:22px}.legal-copy section+section{margin-top:24px}.legal-copy h3{font-size:18px;color:#e3f1f6;margin:0 0 10px}.legal-copy p{font-size:15px;line-height:1.85;margin:0}.legal-copy .button{margin-top:25px}.legal-source{display:block;font-size:13px;margin-top:15px;color:#92d9ce}.document-links{display:flex;flex-direction:column;gap:10px;margin-top:20px}.purchase-detail>p:not(.modal-amount){font-size:14px;line-height:1.7}
.account-controls .language-toggle{min-width:44px}
#modal:has(.purchase-detail){max-height:calc(100dvh - 32px);overflow:auto}
.history-list[data-fill=true] .match-row{flex-grow:1;flex-shrink:0}

/* Shared control geometry: every action uses the same rounded rectangle. */
:root{--control-radius:8px;--control-duration:160ms}
button,a.button,.mode-card,.match-row,.season-picker select,.search,.purchase-form input,.purchase-form textarea{border-radius:var(--control-radius)}
button,a.button{font-family:Inter,Arial,sans-serif;transition:background-color var(--control-duration) ease,border-color var(--control-duration) ease,color var(--control-duration) ease,box-shadow var(--control-duration) ease,transform var(--control-duration) ease}
.button,.login,.language-toggle,.detail-views button,.subtabs button,.vip-mobile-tabs button,.table-pager button,.mode-arrow,.modal-close{border-radius:var(--control-radius);font-weight:600;min-height:44px;border-width:1px;border-style:solid}
.mode-arrow{box-shadow:none}.mode-arrow:hover{box-shadow:0 0 0 1px #5fe2cb22}
.modal-close{width:44px;height:44px;padding:0;display:grid;place-items:center;font-size:28px;line-height:1;background:#142b38;border-color:#7197ab55;color:#cde3ec}
.modal-close:hover{background:#244653;border-color:#5fe2cb99}
.button:focus-visible,.login:focus-visible,.language-toggle:focus-visible,.detail-views button:focus-visible,.subtabs button:focus-visible,.vip-mobile-tabs button:focus-visible,.table-pager button:focus-visible,.mode-arrow:focus-visible,.modal-close:focus-visible{outline:2px solid #5fe2cb;outline-offset:3px}
.button:disabled,button:disabled{cursor:default}
.swatches button{border-radius:var(--control-radius)!important}.swatches button:before{border-radius:var(--control-radius)}
.footer-help-icon{border-radius:var(--control-radius)}
@media(prefers-reduced-motion:reduce){button,a.button{transition:none}}

/* Privileges use content-sized cards, not full-height dashboard columns. */
.vip.active{justify-content:center}
.vip>.screen-title,.vip>.product-grid,.vip>.vip-bottom{width:min(100%,1240px);margin-inline:auto}
.vip>.product-grid{flex:0 1 auto;grid-template-rows:auto;align-items:stretch;max-height:none}
.vip .product{border-radius:var(--control-radius);padding:26px}
.vip .product>.button{margin-top:24px}
.vip .color-product>.button{margin-top:auto}
.vip .product ul{margin-top:22px;margin-bottom:0}
.vip .color-product .nickname{margin-top:24px;margin-bottom:14px}
.vip .name-commands{margin-bottom:22px}
.vip .swatches{display:grid;grid-template-columns:repeat(5,minmax(0,44px));justify-content:space-between;gap:0;width:100%;max-width:300px}.vip .swatches button{min-width:0;width:100%}
@media(min-width:761px){.vip .product-top{margin-bottom:12px}.vip .product h3{margin-top:0}.vip .product>.button{align-self:stretch}.vip .product:not(.color-product)>.button{margin-top:auto}.vip .product ul{padding-bottom:24px}}
@media(max-height:780px)and(min-width:761px){.vip .product{padding:20px}.vip .product ul{margin-top:18px;padding-bottom:20px}.vip .color-product .nickname{margin-top:18px}.vip .name-commands{margin-bottom:16px}}
@media(max-width:760px){.vip.active{justify-content:flex-start}.vip>.product-grid{grid-template-rows:auto}.vip .product{padding:20px}.vip .product>.button,.vip .color-product>.button{margin-top:18px}.vip .product ul{margin-top:18px;margin-bottom:0}.vip .name-commands{margin-bottom:0}}
.play>svg{animation:play-icon-cue 2.8s ease-in-out infinite;flex:none;transform-origin:center}
.header-play>svg{width:14px;height:14px}.header-play{gap:9px}
@keyframes play-icon-cue{0%,65%,100%{transform:translateX(0)}76%{transform:translateX(3px)}87%{transform:translateX(0)}}
.footer-title-short,.footer-contact-icon{display:none}
.contact-email{display:block;margin:18px 0 24px;color:#9ae9d8;font-size:clamp(17px,4vw,24px);font-weight:600;overflow-wrap:anywhere}.contact-detail .button{width:100%}
@media(max-width:760px){.header .header-play{gap:7px;padding-inline:9px}.header-play>svg{width:12px;height:12px}.footer-title-full,.footer-contact-label{display:none}.footer-title-short{display:inline}.footer-contact-icon{display:grid;place-items:center;min-width:32px;font-size:18px}.footer-links{gap:10px}}
@media(prefers-reduced-motion:reduce){.play>svg{animation:none}}
.community-links{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:20px;font-size:14px;color:#a0bacb}.community-links a:hover{color:#adf0df}.clan-signature:hover{color:#a0efdb}
@media(max-height:650px){.vip.active{justify-content:flex-start;overflow-y:auto}}
@media(min-width:761px)and(max-width:900px){:root{--header:120px}.header{display:grid;grid-template-columns:1fr 1fr 1fr;grid-template-rows:44px 44px;grid-template-areas:"brand clock account" "nav nav play";align-content:center;gap:10px}.header .brand{grid-area:brand}.header .account-controls{grid-area:account;justify-self:end}.header nav{grid-area:nav;gap:24px}.header .header-play{grid-area:play;justify-self:end;margin:0}.header .world-clock{top:33px}.header .login-label{display:none}.header .login-short{display:inline}}
@media(max-width:1050px)and(min-width:761px){.header{gap:12px}.header nav{gap:16px}.account-controls{gap:7px}.login .login-label{font-size:12px}.header-play{min-width:90px;padding-inline:12px}.login{padding-inline:10px}}
@media(max-width:760px){.account-controls{grid-area:login;justify-self:end;gap:6px}.account-controls .login{padding:9px 8px;gap:5px}.language-toggle{min-width:40px;font-size:11px}.header{grid-template-columns:minmax(0,1fr) 70px minmax(0,1fr)}.header .brand>span:nth-child(2){display:none}:root{--footer:54px}.footer-links{gap:12px}.footer-brand{font-size:9px;letter-spacing:0}.clan-signature{font-size:9px}.footer-help-label{display:none}.footer-help-icon{display:grid;place-items:center;width:28px;height:28px;border:1px solid #7399b34f;border-radius:50%;font-size:14px}.legal-dialog{max-height:calc(100dvh - 24px);padding:24px 20px}.legal-copy p{font-size:14px}.match-versus{grid-column:2;grid-row:1/3;align-self:center}}
