/* Reference-led matchroom theme. Shared controls also serve league administration. */
:root{color-scheme:dark;--surface:#101a20;--canvas:#060b0e;--ink:#f3f6f8;--muted:#a9becb;--line:#293b44;--accent:#20ef4a;--bs-body-color:var(--ink);--bs-body-bg:var(--canvas);--bs-border-color:var(--line)}
html,body{background:#060b0e;color:var(--ink);font-family:'Segoe UI',Arial,sans-serif;font-size:16px}
body{background:radial-gradient(ellipse at 60% 0,#102119 0,transparent 55%),#060b0e}
a{color:#36f65e}a:hover{color:#9affac}p,.text-muted,.form-text{color:var(--muted)!important}
.app-shell{display:block!important;min-height:100dvh}.app-topbar{border-bottom:1px solid var(--line);background:#05090c}.workspace-main{max-width:1920px!important;padding:1rem!important}.workspace-footer{background:#080e12}.context-breadcrumb{margin-bottom:.65rem}.workspace-tabs{margin-bottom:1rem}.workspace-tabs a{color:#b6c8d1}.workspace-tabs a.active,.workspace-tabs a:hover{background:#103b24;color:#2bfa54}
.top-navigation{display:flex;align-items:center;gap:2rem;max-width:1920px;margin:auto;min-height:76px;padding:.4rem 1.5rem}.wordmark{display:flex;gap:.55rem;align-items:center;min-width:0;color:white;font-style:italic;font-weight:900;font-size:1.85rem;line-height:1;text-decoration:none;white-space:nowrap;letter-spacing:-.06em}.wordmark:hover{color:white}.wordmark-green{color:#24f14d}.wordmark-copy{min-width:0}.wordmark small{display:block;font-size:.68rem;letter-spacing:.45em;text-align:center;font-style:normal;margin-top:.25rem}.wordmark-target{display:grid;place-items:center;width:64px;height:64px;flex:0 0 64px}.wordmark-target img{display:block;width:100%;height:100%;object-fit:contain}.primary-links{display:flex;align-items:center;gap:.2rem;flex:1}.primary-links>a,.play-menu>summary{display:flex;align-items:center;justify-content:center;padding:1.05rem .95rem;color:#c7d6df;text-decoration:none;font-size:.9rem;border-bottom:3px solid transparent;white-space:nowrap;min-height:48px}.primary-links>a:hover,.primary-links>a.active{color:#22ff4a;background:linear-gradient(#082317,#092514);border-bottom-color:#22f04b;border-radius:6px 6px 0 0}.play-menu{position:relative}.play-menu>summary{cursor:pointer;list-style:none}.play-menu>summary::-webkit-details-marker{display:none}.play-menu>div{position:absolute;z-index:20;top:100%;right:0;min-width:210px;border:1px solid var(--line);background:#101c22;border-radius:8px;padding:.5rem;box-shadow:0 12px 30px #0008}.play-menu a{display:block;color:#def0e4;padding:.8rem;text-decoration:none}.workspace-identity{font-size:.75rem;color:var(--muted);white-space:nowrap}.menu-button{display:none;align-items:center;justify-content:center;gap:.65rem;min-width:94px;min-height:48px;border:1px solid #3d525c;background:#14222a;color:#eef5f8;border-radius:9px;padding:.6rem .85rem;font-weight:700;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.menu-button:active{background:#1a3039}.menu-icon{display:grid;gap:4px;width:20px}.menu-icon i{display:block;width:20px;height:2px;border-radius:2px;background:currentColor;transition:transform .18s ease,opacity .18s ease}.menu-is-open .menu-icon i:first-child{transform:translateY(6px) rotate(45deg)}.menu-is-open .menu-icon i:nth-child(2){opacity:0}.menu-is-open .menu-icon i:last-child{transform:translateY(-6px) rotate(-45deg)}
.card{background:linear-gradient(125deg,#101b21,#0b1419);border-color:var(--line);box-shadow:0 4px 18px #0002;border-radius:9px;color:var(--ink)}.card-header{background:#142028;color:#f1f6f8;border-color:var(--line)}.card-body{padding:1.15rem}.page-header{margin-bottom:1.1rem}.page-header h1{font-size:clamp(1.6rem,2.4vw,2.2rem)}.eyebrow{color:#35e55b}.btn{min-height:46px;touch-action:manipulation}.btn-primary,.btn-success{--bs-btn-color:#001a08;--bs-btn-bg:#21ed48;--bs-btn-border-color:#21ed48;--bs-btn-hover-color:#001a08;--bs-btn-hover-bg:#5bff78;--bs-btn-hover-border-color:#5bff78;--bs-btn-disabled-color:#0e2c17;--bs-btn-disabled-bg:#45965b;--bs-btn-disabled-border-color:#45965b;--bs-btn-active-bg:#1dd440;--bs-btn-active-color:#001a08}.btn-outline-primary,.btn-outline-success{--bs-btn-color:#27f751;--bs-btn-border-color:#1bc443;--bs-btn-hover-bg:#103d22;--bs-btn-hover-color:#58ff78;--bs-btn-hover-border-color:#2bef52}.btn-secondary,.btn-outline-secondary,.btn-outline-dark{--bs-btn-bg:#17242c;--bs-btn-color:#d4e0e7;--bs-btn-border-color:#344a55;--bs-btn-hover-bg:#263b45;--bs-btn-hover-color:#fff;--bs-btn-hover-border-color:#526f7b}.form-control,.form-select{background-color:#0a1217;color:#e8f2f6;border-color:#354b55;min-height:46px;font-size:1rem}.form-control:focus,.form-select:focus{background:#0b171c;color:#fff;border-color:#1feb49;box-shadow:0 0 0 3px #20ee4920}.form-control:disabled,.form-select:disabled{background-color:#18252b;color:#a3b3bb}.form-select{--bs-form-select-bg-img:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23bcd0d9' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3E%3C/svg%3E")}.form-label{color:#c8d9e1}.form-check-input{width:1.25rem;height:1.25rem;background-color:#14242c;border-color:#607780}.form-check-input:checked{background-color:#18ce3d;border-color:#1bef47}.form-check-label{padding-left:.25rem}.form-check{min-height:44px;display:flex;align-items:center;gap:.5rem}.form-check .form-check-input{margin-top:0}.table{--bs-table-color:#d8e4ec;--bs-table-bg:#0d171d;--bs-table-striped-color:#d8e4ec;--bs-table-striped-bg:#122029;--bs-table-hover-bg:#153324;--bs-table-hover-color:#fff}.table thead th{background:#111f26;color:#b1c7d2}.table>:not(caption)>*>*{border-color:#22343e}.table-responsive{background:#0d171d}.list-group-item{background:#101c23;color:#e4eff5;border-color:var(--line)}.bg-secondary{background:#253a44!important;color:#d7e9f0!important}.alert-danger{color:#ffb9bd;background:#341b23;border-color:#6d3544}.alert-success{color:#8fffaa;background:#0d3420;border-color:#216b37}.alert-info{color:#b4dfef;background:#122e3b;border-color:#285168}.alert-warning{color:#f2d193;background:#342b19;border-color:#6c5730}.quick-link{background:linear-gradient(135deg,#14242a,#0b151a);color:white}.quick-link:hover{color:white;border-color:#1de449}.step-number,.link-action{color:#2bf653}.dashboard-hero{background:linear-gradient(120deg,#133925,#0a1711);border:1px solid #245f38}.hero-target{color:#1b5830;opacity:.55}.workflow-links a{background:#12232b;color:#c9e2d0;border-color:#30494f}.skip-link{background:#13291c;color:#50ff75}.workflow-tabs{background:#142029}.workflow-tabs button.active{background:#0c4c25;color:#36ff62}.display-4{color:#fff}.validation-message{color:#ff9ba6}summary:focus-visible,a:focus-visible,button:focus-visible{outline-color:#74ff91}.btn:disabled,button:disabled{opacity:.5}
/* Wide screens: contextual rail, scoring work surface, match information. */
.matchroom-grid{display:grid;grid-template-columns:190px minmax(0,1fr) 310px;align-items:start;gap:14px}.matchroom-main,.matchroom-details{min-width:0}.match-navigation{position:sticky;top:1rem;min-height:620px;overflow:hidden;padding:.7rem}.match-back{display:block;padding:.8rem .4rem 1.2rem;color:#f2f6f8;font-weight:650;text-decoration:none}.match-navigation nav{display:grid;gap:.4rem;position:relative;z-index:1}.match-navigation nav a,.match-navigation nav button{display:flex;align-items:center;gap:.65rem;min-height:52px;padding:.8rem;border:0;border-radius:7px;text-decoration:none;background:transparent;color:#bcd0dd;text-align:left;font-size:.9rem}.match-navigation nav .active{background:linear-gradient(90deg,#16ab35,#093d22);color:#fff;box-shadow:inset 3px 0 #37ff61}.matchroom-decoration{position:absolute;bottom:-120px;left:-110px;font-size:27rem;line-height:1;color:#17402d;opacity:.45;pointer-events:none}.matchroom-details{display:grid;gap:14px}.matchroom-details h2{font-size:1.05rem;margin-bottom:.8rem}.compact-game-list{display:grid;gap:3px}.compact-game-list button{display:grid;grid-template-columns:28px minmax(0,1fr) auto 10px;align-items:center;gap:.5rem;border:0;border-bottom:1px solid #22333c;background:transparent;color:#e3edf2;padding:.6rem .25rem;min-height:52px;text-align:left;font-size:.8rem;border-radius:5px}.compact-game-list button.active{background:#075028;color:#55ff7b}.compact-game-list button:hover{background:#123c28}.compact-game-list small{display:block;color:#a9becb;font-size:.65rem}.game-number{border:1px solid #3e535d;background:#1b2b34;border-radius:5px;text-align:center;padding:.15rem}.compact-game-list strong{font-size:.8rem;white-space:nowrap}.compact-visits{list-style:none;padding:0;margin:0}.compact-visits li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:.8rem;padding:.65rem 0;border-bottom:1px solid #25353e;font-size:.75rem}.compact-visits li:first-child{color:#7aff9a}.compact-visits li span:first-child{overflow-wrap:anywhere}.game-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem;font-size:.85rem}.live-team-grid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin:1rem 0}.live-team-panel{border:1px solid #2b424b;border-radius:9px;overflow:hidden;background:#070f14}.live-team-panel header{display:flex;gap:.65rem;align-items:center;min-height:76px;padding:.8rem;background:#0a3020}.live-team-panel.is-throwing{border-color:#22f34a}.live-team-panel.is-throwing header{background:linear-gradient(115deg,#14b329,#087923)}.live-team-panel h3{font-size:1rem;margin:0 0 .25rem}.live-team-panel header span:not(.team-emblem){font-size:.75rem;color:#d2e8d8}.team-emblem{display:inline-flex;align-items:center;justify-content:center;width:45px;height:45px;flex-shrink:0;border:2px solid #1bf647;border-radius:50%;background:#071810;font-size:2rem;color:white}.live-team-body{display:flex;justify-content:space-between;align-items:center;gap:.7rem;min-height:130px;padding:1rem}.live-team-body p{font-size:.85rem;margin:0 0 .5rem}.throwing-label{font-size:.68rem;color:#29ff51;display:block}.remaining-score{font-size:clamp(2.7rem,4.6vw,5rem);font-weight:800;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:-.07em}.game-controls{margin:.75rem 0 1rem;border-bottom:1px solid #2b3c44}.game-controls summary{font-size:.8rem;color:#b8cdd7;min-height:44px}.score-keypad{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;margin:.75rem 0 1rem}.score-keypad button{min-height:58px;border:1px solid #354d58;border-radius:7px;background:linear-gradient(#1b2c35,#13212a);color:white;font-size:1.5rem;font-weight:700;touch-action:manipulation}.score-keypad button:active{background:#15542d;border-color:#29f254}.score-keypad .keypad-clear{font-size:.85rem}.match-scoreboard{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:1rem;border-color:#1fea45}.match-scoreboard .scoreboard-total{text-align:center;display:grid}.match-scoreboard strong{font-size:2.75rem;color:#fff;line-height:1.1}.scoreboard-total>span{margin-top:.35rem}.scoreboard-team{display:flex;align-items:center;gap:1rem;min-width:0}.scoreboard-team.away{justify-content:flex-end;text-align:right}.scoreboard-team h2{font-size:1.15rem;margin:0 0 .25rem;overflow-wrap:anywhere}.scoreboard-team .team-emblem{width:58px;height:58px;font-size:2.8rem}.scoreboard-notes{padding:.6rem 1rem;border-top:1px solid #254034;font-size:.7rem;color:#b0c8bb;display:flex;gap:1.2rem;flex-wrap:wrap}
/* Tablets retain two working columns; navigation becomes a horizontal touch rail. */
@media(max-width:1250px){.workspace-identity{display:none}.top-navigation{gap:1rem}.primary-links>a,.play-menu>summary{padding:.9rem .65rem}.matchroom-grid{grid-template-columns:minmax(0,1fr) 270px}.match-navigation{grid-column:1/-1;position:relative;top:0;min-height:0;padding:.35rem}.match-back,.matchroom-decoration{display:none}.match-navigation nav{display:flex;gap:.4rem}.match-navigation nav a,.match-navigation nav button{flex:1;justify-content:center;min-height:48px;white-space:nowrap}.remaining-score{font-size:3.5rem}.live-team-body{flex-direction:column-reverse;align-items:flex-start;min-height:160px}.scoreboard-team .team-emblem{display:none}}
/* Small tablets and phones: prioritise scoring and avoid nested page scrolling. */
@media(max-width:900px){.top-navigation{flex-wrap:wrap;justify-content:space-between;padding:.7rem 1rem;gap:.6rem}.wordmark{font-size:1.6rem}.wordmark-target{font-size:2.8rem}.menu-button{display:block}.primary-links{display:none;flex-basis:100%;flex-wrap:wrap;align-items:stretch}.primary-links.is-open{display:flex}.primary-links>a,.play-menu{flex:1 0 30%;text-align:center}.play-menu>div{position:static;width:100%;min-width:0}.primary-links>a,.play-menu>summary{min-height:48px}.matchroom-grid{grid-template-columns:minmax(0,1fr)}.matchroom-details{grid-template-columns:repeat(2,minmax(0,1fr))}.matchroom-details>section:last-child{grid-column:1/-1}.live-team-body{flex-direction:row;align-items:center;min-height:125px}.scoreboard-team h2{font-size:1rem}.workspace-tabs a{min-height:44px;display:flex;align-items:center}.table-responsive{max-width:100%}.btn,.workflow-links a{min-height:48px}input,select,textarea{font-size:16px!important}}
@media(max-width:600px){.workspace-main{padding:.65rem!important}.workspace-footer{padding-bottom:max(1rem,env(safe-area-inset-bottom))!important}.context-breadcrumb{font-size:.7rem;gap:.4rem}.workspace-tabs{gap:.1rem;scrollbar-width:thin;padding-bottom:.4rem}.workspace-tabs a{padding:.45rem .7rem;font-size:.75rem}.page-header h1{font-size:1.5rem}.page-description{font-size:.8rem}.card-body{padding:.8rem}.match-scoreboard{gap:.6rem;padding:.9rem .65rem}.match-scoreboard strong{font-size:2.1rem}.match-scoreboard span{font-size:.65rem}.scoreboard-team h2{font-size:.82rem}.match-navigation nav{overflow-x:auto;gap:0}.match-navigation nav a,.match-navigation nav button{font-size:.75rem;padding:.65rem .6rem;gap:.4rem;flex:1 0 auto}.live-team-grid{gap:.5rem}.live-team-panel header{padding:.6rem;min-height:68px}.live-team-panel header .team-emblem{display:none}.live-team-panel h3{font-size:.85rem}.live-team-panel header span:not(.team-emblem){font-size:.65rem}.live-team-body{flex-direction:column-reverse;align-items:flex-start;gap:.5rem;padding:.7rem;min-height:155px}.remaining-score{font-size:3.6rem}.live-team-body p{font-size:.75rem}.throwing-label{font-size:.62rem}.score-keypad{gap:.4rem}.score-keypad button{min-height:60px}.matchroom-details{grid-template-columns:1fr}.matchroom-details>section:last-child{grid-column:auto}.game-meta{font-size:.75rem}.dashboard-hero{padding:1.5rem}.dashboard-hero h1{font-size:2.4rem}.workflow-links{gap:.4rem}.workflow-links a{display:flex;align-items:center;padding:.5rem .65rem;font-size:.72rem}.form-check-label{font-size:.85rem}.workspace-form{column-gap:0}.d-flex.gap-2{flex-wrap:wrap}.table td,.table th{font-size:.75rem}.matchroom-main .btn-lg{font-size:1rem}.scoreboard-notes{gap:.4rem;font-size:.65rem}.compact-game-list button{min-height:56px}.primary-links>a,.play-menu{flex-basis:40%}}
@media(hover:none) and (pointer:coarse){button,a,input,select,summary{touch-action:manipulation}.score-keypad button{min-height:64px}.compact-game-list button{min-height:56px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
.matchday-page>.page-header .eyebrow{display:none}
.quick-visit-actions{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin:.75rem 0}.score-keypad .keypad-operator{font-size:1.6rem;color:#44ff6b;background:#103720}.checkout-dialog{width:min(460px,calc(100vw - 24px));max-height:90dvh;overflow:auto;border:1px solid #30e955;border-radius:12px;padding:1.5rem;background:#101d24;color:#edf5fa;box-shadow:0 20px 80px #0009}.checkout-dialog::backdrop{background:#000b;backdrop-filter:blur(3px)}.checkout-actions{display:flex;gap:.6rem;justify-content:space-between;flex-wrap:wrap}.score-expression{font-size:1.6rem!important;font-variant-numeric:tabular-nums}
@media(max-width:600px){.matchday-page>.page-header .page-description{display:none}.matchday-page>.page-header{margin:.3rem 0 .75rem}.matchday-page>.btn{font-size:.75rem;min-height:44px;padding:.5rem .65rem}.matchday-page>p{font-size:.75rem}.matchday-page>h2{font-size:1rem}.matchday-page .match-scoreboard{margin-bottom:.75rem!important}}
.captain-lineup{border-color:#1fea45!important}.captain-submit{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.45rem 1rem;padding:1rem;margin-bottom:.75rem;border:1px solid #2b424b;border-radius:9px;background:#09151b}.captain-submit span{color:#a9becb;font-size:.8rem}.captain-submit .btn{grid-column:1/-1}.captain-lineup .card{background:#071015}
.workspace-navigation{display:grid;grid-template-columns:1.2fr 1fr 1.3fr;gap:1px;margin-bottom:1rem;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:var(--line)}
.workspace-navigation section{min-width:0;padding:.65rem .8rem;background:#0d171d}
.workspace-navigation section>strong{display:block;margin-bottom:.35rem;color:#7d929d;font-size:.66rem;letter-spacing:.08em;text-transform:uppercase}
.workspace-navigation nav{display:flex;gap:.25rem;overflow-x:auto}
.workspace-navigation a{flex:0 0 auto;padding:.48rem .65rem;border-radius:6px;color:#c9d8df;text-decoration:none;font-size:.78rem;white-space:nowrap}
.workspace-navigation a:hover,.workspace-navigation a.active{background:#103b24;color:#43fb68}
@media(max-width:1000px){.workspace-navigation{grid-template-columns:1fr}.workspace-navigation section{padding:.55rem .65rem}}
.starting-player-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-bottom:1rem}.finish-match-panel{display:grid;gap:.4rem;padding:1rem;border:1px solid #1fea45;border-radius:9px;background:#092719}.finish-match-panel .btn{margin-top:.4rem}@media(max-width:650px){.starting-player-grid{grid-template-columns:1fr}}

/* WEB-07 touch-first scoring surface. */
.scoring-workspace{border:0;padding:0;margin:0}
.scorer-title-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.scorer-title-row h2{margin:0}.tablet-scorer-controls{display:flex;gap:.5rem;flex-wrap:wrap}.tablet-scorer-controls .btn{min-height:46px}.matchday-page:fullscreen{overflow:auto;background:#071015;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));color:#edf5fa}.matchday-page:fullscreen>.page-header,.matchday-page:fullscreen>.btn,.matchday-page:fullscreen>.alert-info{display:none}.matchday-page:fullscreen .matchroom-grid{max-width:1500px;margin:0 auto}

@media (min-width:700px) and (max-width:1250px) and (pointer:coarse){.matchroom-grid{gap:10px}.match-navigation nav a,.match-navigation nav button{min-height:58px;font-size:.9rem}.live-team-panel header{min-height:82px}.live-team-body{min-height:145px}.remaining-score{font-size:clamp(4rem,8vw,6.5rem)}.score-action-bar{position:sticky;bottom:0;z-index:20;padding:.7rem;background:#101d24;border:1px solid #2b424b;border-radius:10px;box-shadow:0 -8px 30px #0008}.score-action-bar .btn{min-height:58px;font-size:1rem}.score-keypad button{min-height:72px;font-size:1.8rem}.score-expression{min-height:58px;font-size:2rem!important}.compact-game-list button{min-height:62px}.checkout-dialog{width:min(560px,calc(100vw - 40px));font-size:1.05rem}.checkout-dialog .form-select,.checkout-dialog .btn{min-height:54px}.tablet-scorer-controls .btn{min-height:52px}}

@media (min-width:700px) and (max-width:1250px) and (orientation:landscape){.matchday-page:fullscreen .matchroom-grid{grid-template-columns:minmax(0,1fr) 280px}.matchday-page:fullscreen .match-navigation{grid-column:1/-1}.matchday-page:fullscreen .live-team-grid{margin:.5rem 0}.matchday-page:fullscreen .live-team-body{min-height:105px}.matchday-page:fullscreen .score-keypad{grid-template-columns:repeat(5,minmax(0,1fr))}.matchday-page:fullscreen .score-keypad .keypad-zero{grid-column:auto}.matchday-page:fullscreen .score-keypad button{min-height:62px}}

/* Compact navigation: stable touch targets and a contained phone menu. */
@media(max-width:900px){
.app-topbar{position:sticky;top:0;z-index:100;background:#05090cf5;backdrop-filter:blur(12px)}
.top-navigation{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.55rem;width:100%;min-height:64px;padding:.45rem max(1rem,env(safe-area-inset-right)) .45rem max(1rem,env(safe-area-inset-left))}
.wordmark{gap:.45rem;font-size:1.35rem;overflow:hidden}.wordmark-target{width:48px;height:48px;flex-basis:48px}.wordmark small{font-size:.52rem;letter-spacing:.34em;margin-top:.18rem}
.menu-button{display:flex;position:relative;z-index:2}
.primary-links{grid-column:1/-1;display:none;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:.4rem;max-height:calc(100dvh - 80px);overflow-y:auto;overscroll-behavior:contain;padding:.65rem 0 .25rem;border-top:1px solid #263942}
.primary-links.is-open{display:grid}
.primary-links>a,.primary-links>.play-menu{min-width:0;flex:none;text-align:left}
.primary-links>a,.play-menu>summary{justify-content:flex-start;width:100%;min-height:52px;padding:.75rem .85rem;border:1px solid #263942;border-radius:8px;background:#101a20;color:#d8e6ec;white-space:normal;line-height:1.25}
.primary-links>a:hover,.primary-links>a.active{border-color:#1ddf45;border-bottom-color:#1ddf45;border-radius:8px;background:#10371f}
.play-menu>summary{justify-content:space-between}.play-menu>div{position:static;width:100%;min-width:0;margin-top:.3rem;box-shadow:none}.play-menu a{min-height:48px;display:flex;align-items:center;border-radius:6px}
.top-navigation>.workspace-identity{display:none;grid-column:1/-1;align-items:center;justify-content:center;min-height:48px;margin-top:.15rem;border:1px solid #315043;border-radius:8px;background:#0c2d1a;color:#55f879;text-decoration:none;font-weight:700}
.top-navigation.menu-is-open>.workspace-identity{display:flex}
}
@media(max-width:600px){
.top-navigation{padding-top:max(.4rem,env(safe-area-inset-top))}
.wordmark{font-size:1.18rem}.wordmark-target{width:42px;height:42px;flex-basis:42px}.wordmark small{font-size:.47rem}
.menu-button{min-width:50px;width:50px;padding:.5rem}.menu-button>span:first-child{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.primary-links{grid-template-columns:1fr;padding-top:.55rem}.primary-links>a,.play-menu>summary{min-height:54px;padding:.85rem}
.page-content{min-width:0}.page-header{gap:.75rem}.page-actions{width:100%}.page-actions>.btn{flex:1 1 auto}
.card,.table-responsive,.alert{border-radius:8px}.section-heading{margin-top:1.45rem}.workspace-footer{justify-content:center;text-align:center}
}
@media(hover:none) and (pointer:coarse){
.menu-button,.primary-links>a,.play-menu>summary,.play-menu a,.top-navigation>.workspace-identity{min-height:52px}
.menu-button{-webkit-user-select:none;user-select:none}
}
.score-entry-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin:.9rem 0 .55rem}
.score-entry-heading>div{display:grid;gap:.15rem}
.score-entry-heading span{color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}
.score-entry-heading strong{font-size:1.05rem}
.score-entry-turn{text-align:right;min-width:0}
.score-entry-turn strong{max-width:18rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums}
.score-expression{font-size:1.6rem!important;font-weight:700;font-variant-numeric:tabular-nums;text-align:center;border-color:#2ed853}
.score-action-bar{display:grid;grid-template-columns:1fr 1fr 2fr;gap:.6rem;margin:.75rem 0}
.score-action-bar .score-submit{font-weight:750}
.score-keypad .keypad-zero{grid-column:1/3}
.score-correction{border-top:1px solid var(--line);padding-top:.75rem}
.score-correction summary{cursor:pointer;color:var(--muted);font-size:.82rem;min-height:44px;display:flex;align-items:center}
.score-correction>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.65rem;padding:.75rem 0}
.score-correction label{grid-column:1/-1;margin:0}

@media(max-width:600px){
  .matchroom-main{order:2}
  .matchroom-details{display:contents}
  .matchroom-details>section:nth-child(2){order:1}
  .matchroom-details>section:first-child{order:3}
  .matchroom-details>section:last-child{order:4}
  .matchroom-details>section:nth-child(2) .card-body{padding:.65rem}
  .matchroom-details>section:nth-child(2) h2{font-size:.9rem;margin:.1rem 0 .45rem}
  .compact-game-list{display:flex;gap:.4rem;overflow-x:auto;padding-bottom:.25rem;scroll-snap-type:x proximity}
  .compact-game-list button{grid-template-columns:26px minmax(76px,1fr) auto 8px;flex:0 0 155px;scroll-snap-align:start;border:1px solid #22333c;padding:.45rem}
  .score-action-bar{grid-template-columns:1fr 1fr}
  .score-action-bar .score-submit{grid-column:1/-1;grid-row:1}
  .score-entry-heading{align-items:center}
  .score-correction>div{grid-template-columns:1fr}
  .score-correction label{grid-column:auto}
}
