/* Trojan Basketball blueprint theme: visual layer only. */
:root{color-scheme:dark;--bg:#0c0d0f;--surface:#181a1e;--ink:#f7f7f8;--muted:#b6bac2;--line:#383c44;--maroon:#e40036;--maroon2:#b60029;--red:#f23550;--gold:#f7f7f8;--green:#e40036;--shadow:0 10px 30px #0005;--trojan-red:#e40036}
html,body,body:has(.basketball-portal),body:has(.portal-landing),.app,.main,.content,.basketball-portal{color:#f7f7f8!important;background-color:#0c0d0f!important}
body:has(.portal-landing),body:has(.basketball-portal){background-image:radial-gradient(ellipse at top left,#e400361b,transparent 55%),linear-gradient(#ffffff03 1px,transparent 1px),linear-gradient(90deg,#ffffff03 1px,transparent 1px)!important;background-size:auto,40px 40px,40px 40px!important;background-attachment:fixed}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
h1,h2,h3,h4{color:#fff!important;letter-spacing:-.02em}a{color:#ff607e}small,.hint,.muted,.footer-note,.portal-game-card small,.portal-person-row small,.portal-role-card p,.player-select small,.player-time{color:#bec2ca!important}
.portal-landing{max-width:1200px;padding:28px 24px 48px}.portal-welcome.trojan-blueprint-hero{padding:0!important;border:0!important;border-radius:24px!important;overflow:hidden;background:#08090a!important;box-shadow:0 14px 44px #0007!important;position:relative}.portal-welcome.trojan-blueprint-hero::before,.portal-welcome.trojan-blueprint-hero::after{display:none!important}.trojan-blueprint-art{display:block;width:100%;height:auto;aspect-ratio:1774/887;object-fit:contain}.trojan-sr-only{position:absolute!important;clip-path:inset(50%);height:1px;width:1px;overflow:hidden;white-space:nowrap}
body .portal-header,body .top,body .sidebar,body .identity-banner,body .arena-sheet-header,body .game-staff-line,body .scoring-session-bar{background:#111215!important;color:#fff!important;border-color:#383c44!important}.portal-header{border-bottom:2px solid #e40036!important}.portal-brand{background:transparent!important;color:#fff!important}.portal-brand img{border-color:#444!important}.portal-tabs,body .mobile-nav{background:#17191d!important;border-color:#383c44!important}.portal-tabs button{background:transparent!important;color:#c9ccd2!important}.portal-tabs button.active,.portal-tabs button:hover{color:#fff!important;background:#24262b!important;border-bottom-color:#e40036!important}
body :is(.card,.panel,.sheet,.portal-game-card,.portal-role-card,.portal-team-card,.portal-email-login,.portal-rule-note,.referee-directory-row,.referee-schedule-filters,.cgbbl-day-filters,.game-review-section,.game-review-item,.game-rules-bar,.rules-reference-header,.league-rules,.rotation-plan,.team-foul-panel,.team-markers,.compact-team-strip,.stat-readonly,.quick-stat-help,.quick-foul-allocation,.notice,.account-preview-banner,.testing-area-banner){background:#191b20!important;color:#f5f6f8!important;border-color:#3b3f47!important;box-shadow:none!important}
body .portal-game-card,body .portal-team-card{border:1px solid #3b3f47!important;transition:border-color .16s,background .16s}.portal-game-card:hover,.portal-team-card:hover{border-color:#e40036!important;background:#23252b!important}.portal-game-group h2{border-left:3px solid #e40036;padding-left:12px}.portal-game-card strong,.portal-team-card small,.portal-coach-grade h3{color:#ff657f!important}.portal-content .section-head{gap:14px;align-items:center}.portal-content .section-head>.shirt-team-logo{max-width:80px;max-height:80px}
body button,body .btn,body .step-arrow,body .stat-stepper,body .quick-stat-number{color:#fff!important;background:#292c32!important;border-color:#51555f!important}body .btn:not(.secondary),body button.primary,body button[aria-pressed=true],body .period-buttons button.active{background:#d80032!important;color:#fff!important;border-color:#f21e4c!important}body .btn.secondary,body button.secondary{background:#272a30!important;color:#f7f7f8!important;border-color:#555a64!important}body button:disabled{opacity:.45!important}body button:hover:not(:disabled),body .btn:hover{filter:brightness(1.13)}body :is(button,a,input,select,textarea):focus-visible{outline:2px solid #ff476d!important;outline-offset:3px}
body input:not([type=checkbox]):not([type=radio]),body select,body textarea{background:#111317!important;color:#fff!important;border:1px solid #565b66!important;border-radius:7px}body input::placeholder,body textarea::placeholder{color:#9299a5!important}body option{background:#181a20;color:#fff}body label,body legend{color:#e0e2e7!important}body fieldset{border-color:#414651!important}body hr{border:0;border-top:1px solid #414651;margin:24px 0}
/* Checkbox size stays independent of the full-width text input rules. */
body input[type=checkbox],body input[type=radio],body .portal-email-login input[type=checkbox]{appearance:auto!important;width:20px!important;height:20px!important;min-width:20px!important;min-height:20px!important;max-width:20px!important;max-height:20px!important;padding:0!important;margin:0!important;vertical-align:middle;accent-color:#e40036;flex:0 0 20px!important}.portal-email-login form>label:has(input[type=checkbox]){display:flex!important;align-items:center;gap:10px;margin:16px 0!important;min-height:32px}.portal-email-login form>label:not(:has(input[type=checkbox])){display:grid;gap:7px;margin:14px 0;font-size:14px}.portal-email-login form>button{display:block;min-height:44px;width:100%;margin:12px 0}.portal-email-login{max-width:480px!important;border-top:4px solid #e40036!important;box-shadow:0 12px 35px #0006!important}.portal-email-login h2{font-size:24px}.portal-email-login input:not([type=checkbox]){font-size:16px!important;min-height:46px}
body dialog,body .rule-popup,body .quick-stat-popup,body .rotation-record-popup{background:#191b20!important;color:#f7f7f8!important;border:1px solid #555a65!important;border-top:4px solid #e40036!important;box-shadow:0 25px 80px #0009!important}dialog::backdrop{background:#000a!important;backdrop-filter:blur(3px)}dialog>label{display:grid;gap:7px;margin:14px 0}dialog input:not([type=checkbox]):not([type=radio]),dialog textarea,dialog select{width:100%;min-height:44px;padding:10px;font-size:16px}dialog .actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}dialog fieldset label{gap:8px;min-height:36px}#game-code-share{color:#fff!important}
body table{color:#f1f2f5!important;background:#17191e!important;border-color:#3d424c!important}body table th,body table td{color:#f1f2f5!important;border-color:#3b4049!important;background-color:transparent!important}body table thead,body table thead th,body .sheet header{background:#101114!important;color:#fff!important}.sheet tbody tr:nth-child(even),.portal-stats-table tbody tr:nth-child(even),.rotation-table tbody tr:nth-child(even){background:#1e2127!important}body .sheet tr.court{background:#23262c!important}.sheet .quick-stat-number{font-variant-numeric:tabular-nums;color:#fff!important;background:#30343b!important;border-color:#646b77!important}.sheet .quick-stat-number:active{background:#ad0028!important}.sheet .quick-stat-cell small,.sheet .inline-player-time{color:#ccd0d8!important}.sheet .picked{background:#4b1524!important;outline-color:#ff315e!important}
body .sheet tr.foul-watch:not(.unavailable),body .sheet tr.score-near:not(.unavailable){background:#381d26!important;box-shadow:inset 3px 0 #ff6a89!important}body .sheet tr.foul-danger:not(.unavailable),body .sheet tr.score-limit:not(.unavailable){background:#51202f!important;box-shadow:inset 4px 0 #ff315e!important}body .sheet tr.foul-out:not(.unavailable){background:#721b32!important;box-shadow:inset 5px 0 #fff!important}.sheet .player-risk-label{color:#ff93aa!important}.sheet tr.unavailable{background:#151619!important;color:#a3a7b0!important;opacity:.65}.sheet .bench-divider{background:#0e0f11!important;color:#ced2da!important}
body .arena-scoreboard,body .arena-caption,body .arena-game-tools,body .score-control{background:#111215!important;color:#fff!important;border-color:#41454e!important}body .arena-score,body .step-number,body .clock-colon,body .countdown-clock,body .arena-clock{color:#fff!important}body .arena-score{background:#08090b!important;border-bottom-color:#e40036!important}.possession-bar{background:#1f2228!important;color:#fff!important}.possession-bar .selected{background:#d80032!important;color:#fff!important}.game-rules-bar button,.compact-team-stat,.compact-stat-heading{color:#f1f2f6!important}.rule-alert,.rule-team-note,.rule-summary,.rule-due,.flag-badge,.app-error-badge,.exception-badge,.referee-status{color:#ffd8e1!important;background:#4b1c29!important;border-color:#e40036!important}.flag-reviewed{background:#25292f!important;color:#d4d8df!important}.toast{background:#2d3038!important;color:#fff!important;border:1px solid #6b7180!important}
@media(max-width:900px){.portal-landing{padding:16px 12px 32px}.portal-welcome.trojan-blueprint-hero{border-radius:16px!important}.portal-header{gap:10px;padding:12px}.portal-filters{gap:7px}.portal-email-login{margin:20px auto!important}.roster-board .sheet{background:#191b20!important}.sheet tr.compact-court-row,.sheet tr.compact-bench-row{border-color:#454a55!important}}
@media(max-width:480px){.portal-landing{padding:10px 8px 24px}.portal-welcome.trojan-blueprint-hero{border-radius:12px!important}.portal-email-login{padding:20px 16px!important}.portal-email-login h2{font-size:21px}.portal-content{padding:14px 10px}.portal-filters .btn{min-height:40px}.portal-tabs button{min-height:44px}.sheet .quick-stat-number{min-height:44px!important}.sheet .player-select b{line-height:1.25}.portal-game-card{min-height:76px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
/* Review flags must use the same high-contrast surfaces as the dashboards. */
body .roster-review-item{background:#20232a!important;color:#f5f6f8!important;border:1px solid #464c58!important;border-left:4px solid #e40036!important;border-radius:10px;padding:18px!important;margin:14px 0!important}.roster-review-item>div:first-child{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.roster-review-item b{color:#fff!important;font-size:15px}.roster-review-item>div>span{background:#4a1a29!important;color:#ffb9c9!important;border:1px solid #b52a4d;border-radius:5px;padding:4px 7px;font-size:10px;white-space:nowrap}.roster-review-item p{color:#e2e5eb!important;line-height:1.5}.roster-review-item small{color:#aeb6c5!important}.roster-review-note{background:#15181d!important;border-left:2px solid #707888!important;padding:10px}.roster-review-filters{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.roster-review-filters label{display:flex;align-items:center;gap:8px}.roster-review-item .actions{display:flex;gap:8px;flex-wrap:wrap}.roster-review-item .actions button{flex:0 0 auto!important;width:auto!important;min-width:0!important;padding:9px 14px!important;min-height:38px}
body .portal-person-row{display:flex!important;flex-wrap:wrap;align-items:center;gap:8px;padding:18px 0!important}.portal-person-row>b,.portal-person-row>small{flex-basis:100%;width:100%}.portal-person-row>button{display:inline-flex!important;width:auto!important;min-width:0!important;max-width:100%;flex:0 0 auto!important;justify-self:start;align-items:center;min-height:38px;padding:9px 14px!important;margin:0!important}.portal-person-row small{line-height:1.5}.portal-person-row>b{font-size:15px;overflow-wrap:anywhere}
@media(max-width:480px){.roster-review-item{padding:14px!important}.roster-review-item>div:first-child{flex-wrap:wrap;gap:8px}.roster-review-item .actions button{min-height:42px}}
body .portal-brand{flex:0 1 auto;min-width:max-content;max-width:none}body .portal-brand>span:last-child{white-space:nowrap;max-width:250px;overflow:hidden;text-overflow:ellipsis}body .portal-brand small{white-space:normal}.portal-person-row small{overflow-wrap:anywhere}
.team-season-record{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 16px;padding:12px 16px;background:#252930;border-left:3px solid #ed1745;border-radius:6px}.team-season-record b{font-size:20px;color:#fff}.team-season-record span{font-size:12px;color:#c7ccd4}.paired-season-stats thead tr:first-child th[colspan]{text-align:center;border-left:1px solid #555}.paired-season-stats thead tr:nth-child(2) th{font-size:10px;color:#d4d9e0}.paired-season-stats .stat-average{background:#ffffff06;color:#cbd2dc;border-right:1px solid #444}.paired-season-stats td{font-variant-numeric:tabular-nums}
/* Keep player names left aligned and all numeric stats centered. */
.portal-stats-table thead th:not(:nth-child(2)),.portal-stats-table tbody td{text-align:center}
.paired-season-stats thead tr:nth-child(2) th{text-align:center}
/* Standings notices and highlighted teams must retain dark-theme contrast. */
body .portal-content .standings-policy{background:#252930!important;color:#e3e7ed!important;border-left:3px solid #ed1745;line-height:1.6;padding:13px 16px}
body .standings-table .standings-own-team{background:#2d3440!important;color:#f5f6f8!important}
body .standings-table tbody th{color:#f5f6f8!important}
body .standings-explanation p,body .standings-explanation summary{color:#e3e7ed!important}
body .standings-explanation a{color:#ff8ca7!important}
.portal-schedule-card{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px;border:1px solid #414650;border-radius:10px;background:#191d24}.portal-schedule-details{min-width:0;flex:1}.portal-schedule-details small{display:block;margin-top:10px;font-size:12px;color:#c7cfdb}.portal-game-title{display:block;background:transparent!important;border:0!important;padding:0!important;min-height:30px;text-align:left;color:#fff!important;font-size:17px;font-weight:800;cursor:pointer}.portal-game-title:hover{text-decoration:underline}.portal-schedule-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;max-width:60%}.portal-schedule-actions .btn{width:auto!important;min-height:44px;margin:0;white-space:nowrap}.portal-schedule-actions .portal-opponent-link{margin:0!important}.portal-game-title:focus-visible{outline:2px solid #fff;outline-offset:4px}@media(max-width:800px){.portal-schedule-card{align-items:flex-start;flex-direction:column;gap:14px;padding:15px}.portal-schedule-actions{max-width:100%;justify-content:flex-start}.portal-schedule-actions .btn{font-size:12px;padding:10px 12px}}
/* Opponent averages stays a separate, compact schedule action. */
body .portal-game-entry .portal-opponent-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:auto;max-width:100%;min-height:44px;margin:8px 0 0;padding:10px 15px;border:1px solid #5b616d;border-left:3px solid #ed1745;border-radius:9px;background:#252930;color:#f5f6f8;font-size:13px;font-weight:700;line-height:1.4;text-align:left;text-decoration:none;white-space:normal;overflow-wrap:anywhere;cursor:pointer;transition:background .15s,border-color .15s}
body .portal-game-entry .portal-opponent-link:hover{background:#343941;border-color:#ed1745}
body .portal-game-entry .portal-opponent-link:focus-visible{outline:3px solid #fff;outline-offset:3px}
body .portal-game-entry .portal-opponent-link:active{background:#424852}
@media(max-width:480px){body .portal-game-entry .portal-opponent-link{font-size:12px;padding:9px 12px}}
/* Reuse the exact artwork lettering for the compact league name and slogan. */
.trojan-layout-banner{box-sizing:border-box;display:grid;grid-template-columns:74px minmax(250px,400px) minmax(250px,430px);align-items:center;justify-content:space-between;gap:24px;width:100%;padding:10px 28px;background-color:#090a0c;background-image:linear-gradient(#ffffff05 1px,transparent 1px),linear-gradient(90deg,#ffffff05 1px,transparent 1px);background-size:24px 24px;border-bottom:2px solid #e40036;color:#fff;position:static;overflow:hidden}
.trojan-banner-logo,.trojan-banner-name,.trojan-banner-slogan{display:block;background-image:url('assets/league/every-trojan-banner.jpg');background-repeat:no-repeat;min-width:0}
.trojan-banner-logo{width:68px;aspect-ratio:410/386;background-size:432.683% 229.793%;background-position:50.22% 10.98%}
.trojan-banner-name{width:100%;aspect-ratio:800/152;background-size:221.75% 583.553%;background-position:50.103% 61.224%}
.trojan-banner-slogan{width:100%;aspect-ratio:800/55;background-size:221.75% 1612.727%;background-position:50.308% 77.404%}
.trojan-banner-abbreviation{display:none;font-family:Impact,'Arial Black',sans-serif;font-weight:900;font-style:italic;font-size:30px;letter-spacing:.055em;color:#fff;text-align:center}
@media(max-width:1000px){.trojan-layout-banner{grid-template-columns:58px minmax(210px,1fr) minmax(240px,1.1fr);gap:16px;padding:8px 16px}.trojan-banner-logo{width:54px}}
@media(max-width:650px){.trojan-layout-banner{grid-template-columns:48px minmax(0,1fr);grid-template-rows:25px auto;gap:2px 10px;padding:7px 12px;min-height:64px}.trojan-banner-logo{width:46px;grid-row:1/3}.trojan-banner-name{display:none}.trojan-banner-abbreviation{display:block;grid-column:2;grid-row:1;font-size:25px;line-height:1}.trojan-banner-slogan{grid-column:2;grid-row:2;max-width:420px;justify-self:center}}
/* Compact Hoops-style scoring rows, with all rec controls kept in place. */
body .quick-score-view .sheet-scroll{overflow:visible!important}body .quick-score-view .roster-board{min-width:0!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;border:0!important}body .quick-score-view .sheet{border:1px solid #414957!important;border-radius:12px;overflow:hidden}body .quick-score-view .sheet table,body .quick-score-view .sheet thead,body .quick-score-view .sheet tbody{display:block!important;width:100%!important;min-width:0!important}body .quick-score-view .sheet thead tr,body .quick-score-view .sheet tbody tr.compact-court-row{display:grid!important;grid-template-columns:minmax(100px,1.35fr) repeat(4,minmax(0,1fr))!important;gap:5px!important;padding:8px!important;align-items:center;border-bottom:1px solid #414957!important;border-radius:0!important;margin:0!important}body .quick-score-view .sheet thead th{width:auto!important;padding:3px 0!important;font-size:9px!important;border:0!important;white-space:normal}body .quick-score-view .sheet thead th:last-child,body .quick-score-view .sheet .compact-court-row>td.player-time{display:none!important}body .quick-score-view .sheet .compact-court-row>td{grid-column:auto!important;padding:0!important;min-width:0;border:0!important}body .quick-score-view .sheet .compact-court-row>td::before{display:none!important}body .quick-score-view .sheet .compact-court-row .compact-player-header{display:block!important}body .quick-score-view .sheet .compact-court-row .player-identity{display:flex!important;align-items:center;gap:4px;flex-wrap:wrap}body .quick-score-view .sheet .compact-court-row .player-select{min-height:26px!important;padding:0!important;min-width:0;flex:1}body .quick-score-view .sheet .compact-court-row .player-select b{font-size:12px!important}body .quick-score-view .sheet .inline-player-time{display:block!important;font-size:10px;margin-top:3px;color:#c5cfdf}body .quick-score-view .sheet .quick-stat-number{min-width:0!important;min-height:44px!important;font-size:21px!important;background:#2a303b!important;color:#fff!important;border:1px solid #596273!important}body .quick-score-view .sheet .vacant{display:block!important;height:auto!important;min-height:36px!important;padding:8px!important}body .quick-score-view .sheet .vacant td{display:block!important;border:0!important;font-size:11px!important;padding:0!important}body .quick-score-view .sheet .compact-bench-row{display:block!important;margin:0!important;padding:3px 8px!important;border-bottom:1px solid #343c49!important;border-radius:0!important}body .quick-score-view .sheet .compact-bench-row>td{display:block!important;padding:0!important;border:0!important}body .quick-score-view .sheet .compact-bench-row .compact-player-header{grid-template-columns:44px auto auto auto auto!important;justify-content:start!important;gap:8px!important}body .quick-score-view .sheet .bench-jersey-button{min-height:36px!important;width:44px!important;font-size:13px!important}body .quick-score-view .sheet .bench-divider{display:block!important;padding:7px 9px!important}body .quick-score-view .sheet .bench-divider th{display:block!important;border:0!important}body .quick-score-view .sheet footer{padding:8px!important;font-size:10px!important}body .quick-score-view .phone-lineup-overview{display:none!important}
@media(max-width:650px){body .quick-score-view .roster-board{gap:5px!important}body .quick-score-view .sheet thead tr,body .quick-score-view .sheet tbody tr.compact-court-row{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:4px!important;padding:5px!important}body .quick-score-view .sheet .compact-court-row>td:first-child{grid-column:1/-1!important}body .quick-score-view .sheet thead th:first-child{display:none!important}body .quick-score-view .sheet .compact-court-row .player-select b{font-size:11px!important}body .quick-score-view .sheet .compact-court-row .compact-player-header{display:flex!important;align-items:center;justify-content:space-between;gap:4px}body .quick-score-view .sheet .quick-stat-number{font-size:18px!important}body .quick-score-view .sheet .compact-bench-row .compact-player-header{grid-template-columns:32px auto auto auto auto!important;gap:3px!important}body .quick-score-view .sheet .bench-jersey-button{width:32px!important}body .quick-score-view .sheet .compact-bench-row{padding:3px!important}}
/* Full-width player heading and compact number-only bench. */
body .quick-score-view .sheet tbody{display:flex!important;flex-wrap:wrap!important;gap:0!important}body .quick-score-view .sheet tbody tr{flex-basis:100%}body .quick-score-view .sheet tbody tr.compact-court-row{grid-template-columns:repeat(4,minmax(0,1fr))!important;width:100%}body .quick-score-view .sheet .compact-court-row>td.compact-player-cell{grid-column:1/-1!important}body .quick-score-view .sheet .compact-court-row .compact-player-header{display:flex!important;align-items:center;justify-content:space-between;gap:8px}body .quick-score-view .sheet .compact-court-row .player-identity{flex:1;min-width:0}body .quick-score-view .sheet .compact-court-row .player-select{width:100%;min-height:24px!important}body .quick-score-view .sheet .compact-court-row .player-select small{font-size:11px!important;line-height:1.4;color:#e1e5ed!important;white-space:normal}body .quick-score-view .sheet .compact-court-row .inline-player-time{font-size:14px!important;font-weight:800;white-space:nowrap;margin:0}body .quick-score-view .sheet thead tr{grid-template-columns:repeat(4,minmax(0,1fr))!important}body .quick-score-view .sheet thead th:first-child{display:none!important}body .quick-score-view .sheet .compact-bench-row{flex:0 0 auto!important;width:auto!important;border:0!important;padding:6px 3px!important}body .quick-score-view .sheet .compact-bench-row .compact-player-header{display:block!important}body .quick-score-view .sheet .compact-bench-row .compact-player-header>:not(.bench-jersey-button){display:none!important}body .quick-score-view .sheet .bench-jersey-button{width:44px!important;min-height:44px!important}body .quick-score-view .sheet .compact-bench-row.unavailable .bench-jersey-button{opacity:.4;background:#30343c!important;color:#a6abb4!important}body .quick-score-view .sheet .jersey-entry>span{display:none!important}.bench-dialog-availability{margin:14px 0}.bench-dialog-availability .availability{display:flex;justify-content:center;gap:18px;flex-wrap:wrap}.bench-dialog-availability label{display:flex;align-items:center;gap:6px}.bench-dialog-availability input[type=checkbox]{width:20px;height:20px;min-height:20px}
.director-stat-arrows{display:flex;gap:8px}.director-stat-arrows button{flex:1;min-height:40px;padding:5px;border:1px solid #626b7b;border-radius:6px;background:#303640;color:#fff;font-size:18px}.director-edit-fields input{text-align:center;font-size:22px;font-weight:800}
/* Player names read as a heading while retaining the substitution tap target. */
body .quick-score-view .sheet .compact-court-row .player-select{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;outline-offset:3px;display:flex!important;align-items:center;min-height:32px!important;padding:2px 4px!important;color:#f5f6f8!important}body .quick-score-view .sheet .compact-court-row .player-select small{font-size:14px!important;font-weight:700!important;line-height:1.4;letter-spacing:.01em;color:#f5f6f8!important;overflow-wrap:normal}body .quick-score-view .sheet .compact-court-row .player-select:hover{background:transparent!important;color:#fff!important;text-decoration:underline;text-underline-offset:3px}body .quick-score-view .sheet .compact-court-row .player-select:focus-visible{outline:2px solid #ff7999!important;border-radius:4px!important}body .quick-score-view .sheet .compact-court-row .player-identity{background:transparent!important;border:0!important;box-shadow:none!important}body .quick-score-view .sheet .compact-court-row .inline-player-time{font-size:15px!important;padding-left:5px}
@media(max-width:500px){body .quick-score-view .sheet .compact-court-row .player-select small{font-size:12px!important}}

/* Keep header dropdowns and labels in distinct, non-shrinking columns. */
body .portal-header .portal-filters{display:flex;flex-wrap:wrap;gap:10px;min-width:0}body .portal-header .portal-filters>label{display:flex;flex-direction:column;align-items:stretch;flex:0 0 auto;min-width:max-content;width:auto;gap:4px}body .portal-header .portal-filters>label select{box-sizing:border-box;max-width:100%;margin:0}body .portal-header .portal-filters>label:has(select[aria-label=League]){min-width:90px}

