:root{--ink:#10233d;--nav:#0b1a2d;--green:#b9ff46;--mint:#e6ffc3;--line:#dce4ec;--muted:#64748b;--bg:#f5f7fa;--card:#fff;--danger:#b42318}*{box-sizing:border-box}html{font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--bg)}body{margin:0;font-size:16px;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.button,button{border:0;border-radius:9px;background:var(--ink);color:#fff;padding:.72rem 1rem;font-weight:700;cursor:pointer}.button.accent,button.accent{background:var(--green);color:var(--nav)}.button.secondary,button.secondary{background:#edf1f5;color:var(--ink)}input,select,textarea{width:100%;border:1px solid #cbd5e1;border-radius:9px;padding:.68rem .75rem;background:white;color:var(--ink)}textarea{min-height:96px;resize:vertical}label{display:grid;grid-gap:.35rem;gap:.35rem;font-weight:700;font-size:.875rem}.grid,.stack{display:grid;grid-gap:1rem;gap:1rem}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:1.25rem;box-shadow:0 3px 14px #10233d0a}.muted{color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:#3f6212}.eyebrow,.pill{font-size:.75rem;font-weight:800}.pill{display:inline-flex;padding:.2rem .55rem;border-radius:999px;background:var(--mint)}.auth{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.auth-brand{background:var(--nav);color:white;padding:clamp(2rem,7vw,7rem);display:flex;flex-direction:column;justify-content:space-between}.mark{display:flex;align-items:center;gap:.65rem;font-weight:900;letter-spacing:-.02em}.mark-dot{width:26px;height:26px;border:7px solid var(--green);border-radius:50%;position:relative}.mark-dot:after{content:"";position:absolute;width:18px;height:3px;background:var(--green);left:15px;top:5px;transform:rotate(-35deg)}.auth-copy h1{font-size:clamp(2.5rem,5vw,5rem);line-height:.95;letter-spacing:-.06em;max-width:650px;margin:.6rem 0}.auth-panel{display:grid;place-items:center;padding:2rem}.auth-form{width:min(430px,100%)}.auth-form h1{font-size:2rem;margin:0}.app-shell{min-height:100vh;display:grid;grid-template-columns:245px 1fr}.sidebar{background:var(--nav);color:#d9e3ef;padding:1.4rem;display:flex;flex-direction:column;gap:2rem}.sidebar nav{display:grid;grid-gap:.35rem;gap:.35rem}.sidebar nav a{padding:.68rem .8rem;border-radius:8px}.sidebar nav a:hover{background:#ffffff12;color:white}.sidebar-footer{margin-top:auto}.main{min-width:0}.topbar{height:68px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 2rem}.content{padding:2rem;max-width:1280px;margin:auto}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.5rem}.page-head h1{margin:0;font-size:2rem;letter-spacing:-.04em}.metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.metric strong{display:block;font-size:2rem;line-height:1.1}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse}.table td,.table th{text-align:left;padding:.8rem;border-bottom:1px solid var(--line);white-space:nowrap}.table th{font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.empty{text-align:center;padding:3rem 1rem}.form-actions{display:flex;gap:.75rem;align-items:center}.section-title{margin:0 0 1rem}.court-row{display:flex;justify-content:space-between;align-items:center;padding:.8rem 0;border-bottom:1px solid var(--line)}.mobile-nav{display:none}@media(max-width:800px){.auth{grid-template-columns:1fr}.auth-brand{min-height:260px;padding:2rem}.auth-copy h1{font-size:2.5rem}.app-shell{display:block;padding-bottom:70px}.sidebar{display:none}.topbar{padding:0 1rem}.content{padding:1rem}.grid.two,.metrics{grid-template-columns:1fr}.page-head{align-items:flex-start;flex-direction:column}.mobile-nav{position:fixed;display:flex;z-index:20;bottom:0;left:0;right:0;height:64px;background:var(--nav);color:white;justify-content:space-around;align-items:center}.mobile-nav a{font-size:.78rem}.card{padding:1rem}}.field-error{color:#b42318;font-size:.82rem;font-weight:700}.error-message{border:1px solid #dc2626;background:#fef2f2;color:#7f1d1d;border-radius:10px;padding:.75rem}.success-message{border:1px solid #059669;background:#ecfdf5;color:#064e3b;border-radius:10px;padding:.75rem;font-weight:700}.view-label{display:block;font-size:.75rem;color:var(--muted);font-weight:500}.account-menu{position:relative}.account-menu summary{display:flex;align-items:center;gap:.5rem;list-style:none;cursor:pointer;border:1px solid var(--line);border-radius:999px;padding:.5rem .75rem;background:white;font-weight:700}.account-menu summary::-webkit-details-marker{display:none}.account-menu-mobile-label{display:none}.account-menu-panel{position:absolute;z-index:40;right:0;top:calc(100% + .5rem);width:min(310px,calc(100vw - 2rem));display:grid;grid-gap:.3rem;gap:.3rem;padding:.8rem;background:white;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 32px #10233d26}.account-menu-panel a{padding:.62rem;border-radius:8px}.account-menu-panel a:hover{background:#edf1f5}.account-menu-panel hr{width:100%;border:0;border-top:1px solid var(--line);margin:.35rem 0}.account-menu-panel button{width:100%;margin-top:.25rem}.player-shell{min-height:100vh;padding-top:68px}.player-topbar{position:fixed;z-index:30;top:0;left:0;right:0;height:68px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 2rem;background:white;border-bottom:1px solid var(--line)}.player-topbar nav{display:flex;gap:1.5rem;font-weight:700}.player-topbar .account-menu{justify-self:end}.player-mobile-nav{display:none}@media(max-width:800px){.account-menu-name{display:none}.account-menu-mobile-label{display:inline}.account-menu summary{min-height:44px;padding:.5rem .7rem}.player-shell{padding-top:60px;padding-bottom:70px}.player-topbar{height:60px;padding:0 1rem;grid-template-columns:1fr auto}.player-topbar nav{display:none}.player-topbar .mark{font-size:.9rem}.player-mobile-nav{position:fixed;display:flex;z-index:20;bottom:0;left:0;right:0;height:64px;background:var(--nav);color:white;justify-content:space-around;align-items:center}.player-mobile-nav a{font-size:.78rem}.topbar>div:first-child{min-width:0}.topbar>div:first-child strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:58vw}}.topbar-actions{display:flex;align-items:center;gap:.5rem}.club-mobile-menu{display:none;position:relative}.club-mobile-menu summary{list-style:none;cursor:pointer;border:1px solid var(--line);border-radius:999px;min-height:44px;padding:.55rem .75rem;background:white;font-weight:800}.club-mobile-menu summary::-webkit-details-marker{display:none}.club-mobile-menu nav{position:absolute;z-index:40;right:0;top:calc(100% + .5rem);width:210px;display:grid;padding:.6rem;background:white;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 32px #10233d26}.club-mobile-menu nav a{padding:.7rem;border-radius:8px}.club-mobile-menu nav a:hover{background:#edf1f5}.compact-summary{display:flex;gap:.5rem 1.25rem;align-items:center;flex-wrap:wrap;padding:.75rem 1rem;background:white;border:1px solid var(--line);border-radius:12px}.compact-summary span{color:var(--muted);white-space:nowrap}.compact-summary strong{color:var(--ink)}.dashboard-content{display:grid;grid-gap:1rem;gap:1rem}.dashboard-content .page-head{margin-bottom:0}.dashboard-section{background:white;border:1px solid var(--line);border-radius:14px;padding:1.1rem}.dashboard-section h2{margin:0 0 .75rem}.operation-list{display:grid}.operation-row{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:.8rem 0;border-bottom:1px solid var(--line)}.operation-row:last-child{border-bottom:0}.operation-row>div{display:grid;min-width:0}.operation-row>div:first-child strong{overflow-wrap:anywhere}.operation-row>div:last-child{text-align:right}.operation-row span{color:var(--muted);font-size:.85rem}.operation-row.live{margin:0 -.5rem;padding:.8rem .5rem;border-radius:10px;background:var(--mint);border-bottom:0}.operation-row.live b{color:#365314}.attention-list{display:grid;grid-gap:.5rem;gap:.5rem}.attention-list>a{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;border:1px solid #f59e0b;background:#fffbeb;border-radius:10px}.attention-list>a span{white-space:nowrap}.league-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.75rem;gap:.75rem}.league-summary-card{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;padding:1rem;border:1px solid var(--line);border-radius:12px;min-width:0}.league-summary-card>div{min-width:0}.league-summary-card h3{margin:.5rem 0 0;overflow-wrap:anywhere}.league-summary-card p{margin:.2rem 0 0}.league-summary-card .button{flex:0 0 auto}.compact-empty{padding:1rem;text-align:center}.league-overview{display:grid;grid-gap:1rem;gap:1rem}.league-overview .page-head{margin-bottom:0}.league-operation-grid{margin-top:0}.league-sessions{grid-column:1/-1}.league-details summary,.schedule-session summary{display:grid;grid-gap:.15rem;gap:.15rem;cursor:pointer}.details-body{margin-top:1rem}.roster-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:.75rem;gap:.75rem;padding:.75rem 0;border-bottom:1px solid var(--line)}.roster-row strong{overflow-wrap:anywhere}.roster-confirm{grid-column:1/-1;border:1px solid #dc2626;background:#fef2f2;border-radius:10px;padding:.8rem}.roster-confirm p{margin:.35rem 0}.roster-add{margin-top:1rem}.directory-search{display:grid;grid-gap:.5rem;gap:.5rem}.directory-caption{font-size:.85rem}.directory-list{display:grid}.directory-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:.75rem;gap:.75rem;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--line)}.directory-list article>div{display:grid;min-width:0}.directory-list span,.directory-list strong{overflow-wrap:anywhere}.directory-list article>div:last-child{justify-items:end}.add-player-card{position:-webkit-sticky;position:sticky;top:84px}.player-session-list{display:grid;grid-gap:.75rem;gap:.75rem;margin-bottom:1rem}.player-session-card{display:flex;justify-content:space-between;align-items:center;gap:1rem;background:white;border:1px solid var(--line);border-radius:14px;padding:1rem}.player-session-card>div{min-width:0}.player-session-card h2{margin:.2rem 0;overflow-wrap:anywhere}.player-session-card p{margin:0}.player-session-card.live{border:2px solid #92c632;background:#fbfff5}.player-session-card .button{flex:0 0 auto}@media(max-width:800px){.app-shell{padding-bottom:0}.club-mobile-menu{display:block}.topbar{height:64px}.view-label{font-size:.68rem}.content{max-width:100%;overflow-x:hidden}.page-head{margin-bottom:1rem}.page-head .form-actions{width:100%;flex-wrap:wrap}.compact-summary{justify-content:space-between;gap:.35rem;padding:.65rem .75rem;font-size:.82rem}.dashboard-section{padding:.9rem}.operation-row{align-items:flex-start}.operation-row>div:last-child b{font-size:.82rem}.league-card-grid{grid-template-columns:1fr}.league-summary-card{align-items:center}.league-summary-card .button{min-width:108px;text-align:center}.attention-list>a{align-items:flex-start}.league-operation-grid{display:flex;flex-direction:column}.league-sessions{order:-2}.league-roster{order:-1}.roster-row{align-items:start}.roster-confirm .form-actions{display:grid;grid-template-columns:1fr 1fr}.roster-confirm .form-actions button{width:100%}.roster-add{display:grid;grid-template-columns:minmax(0,1fr) auto}.player-directory-grid{display:flex;flex-direction:column}.add-player-card{position:static}.directory-search .form-actions{display:grid;grid-template-columns:minmax(0,1fr) auto}.directory-search .form-actions .button{grid-column:1/-1;text-align:center}.directory-list article{align-items:start}.player-session-card{align-items:flex-start;flex-direction:column}.player-session-card .button{width:100%;text-align:center}.court-row,.player-home .grid.two{gap:.75rem}.court-row>*{min-width:0}.court-row strong{overflow-wrap:anywhere}}@media(max-width:380px){.compact-summary{justify-content:flex-start}.topbar{gap:.35rem}.topbar-actions{gap:.25rem}.account-menu summary,.club-mobile-menu summary{padding:.5rem .6rem}.operation-row{display:grid}.operation-row>div:last-child{text-align:left}.league-summary-card{display:grid}.league-summary-card .button{width:100%}}.operation-row.live{margin:.2rem -.5rem;border:1px solid #b7df75}.operation-row.live+.operation-row.live{margin-top:.35rem}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem}.section-heading h2{margin:0}.section-heading a{font-size:.85rem;font-weight:800;color:#3f6212;white-space:nowrap}.league-operation-row .button{flex:0 0 auto;min-width:112px;text-align:center}.typeahead{position:relative}.typeahead-results{position:absolute;z-index:35;left:0;right:0;top:calc(100% - 1.1rem);display:grid;padding:.35rem;background:white;border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 28px #10233d25}.typeahead-results>a,.typeahead-results>span{display:grid;padding:.65rem .7rem;border-radius:8px}.typeahead-results>a:focus,.typeahead-results>a:hover{background:#edf1f5}.typeahead-results span{font-size:.8rem;color:var(--muted);overflow-wrap:anywhere}.directory-list article:target{background:#f7fee7;box-shadow:inset 4px 0 #84cc16;padding-left:.65rem}.player-primary-card{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:clamp(1.1rem,4vw,1.75rem);margin-bottom:1rem;border-radius:18px;background:var(--nav);color:white;box-shadow:0 12px 30px #10233d20}.player-primary-card.live{background:linear-gradient(135deg,var(--nav),#17365f);border:2px solid #84cc16}.player-primary-card h2{margin:.2rem 0;font-size:clamp(1.6rem,5vw,2.4rem)}.player-primary-card p{margin:.25rem 0}.player-primary-card .eyebrow{color:var(--green)}.player-primary-card .button{flex:0 0 auto}.player-disclosure-list{display:grid;grid-gap:.65rem;gap:.65rem;margin-bottom:1rem}.player-disclosure-list>details{background:white;border:1px solid var(--line);border-radius:12px;overflow:hidden}.player-disclosure-list summary{display:flex;justify-content:space-between;align-items:center;padding:.8rem 1rem;cursor:pointer}.player-disclosure-list summary span{display:grid;place-items:center;min-width:28px;height:28px;border-radius:999px;background:var(--mint);font-weight:900}.player-disclosure-list details>div{border-top:1px solid var(--line);padding:0 .9rem}.player-compact-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem 0;border-bottom:1px solid var(--line)}.player-compact-row:last-child{border-bottom:0}.player-compact-row>div{display:grid;min-width:0}.player-compact-row span{font-size:.8rem;color:var(--muted);overflow-wrap:anywhere}.player-compact-row b{font-size:.78rem;white-space:nowrap;color:#3f6212}@media(max-width:800px){.league-operation-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}.league-operation-row>div:last-child{text-align:left}.league-operation-row .button{min-width:104px}.player-primary-card{align-items:flex-start;flex-direction:column}.player-primary-card .button{width:100%;text-align:center}.player-compact-row{align-items:flex-start}.typeahead-results{position:static;margin-top:.35rem}.directory-search>.form-actions{display:flex;flex-wrap:wrap}.directory-search>.form-actions .button,.directory-search>.form-actions button{flex:1 1;text-align:center}}@media(max-width:380px){.league-operation-row{grid-template-columns:1fr}.league-operation-row .button{width:100%}.player-compact-row{display:grid}.player-compact-row b{white-space:normal}}.transient-notice{display:flex;align-items:center;justify-content:space-between;gap:1rem}.transient-notice button{padding:.1rem .35rem;background:transparent;color:inherit;font-size:1.2rem}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.league-schedule-defaults{display:grid;grid-template-columns:minmax(120px,180px) minmax(0,1fr);align-items:start;grid-gap:1rem;gap:1rem}.field-help{font-size:.8rem;font-weight:500}.schedule-fields input{min-width:0}@media(max-width:800px){.grid.three,.league-schedule-defaults{grid-template-columns:1fr}body,html{max-width:100%;overflow-x:hidden}.content,.score-entry-grid{min-width:0}}.dialog-backdrop{position:fixed;z-index:100;inset:0;height:100dvh;display:grid;place-items:center;padding:max(.5rem,env(safe-area-inset-top)) .5rem max(.5rem,env(safe-area-inset-bottom));background:#0b1a2db8;overflow:hidden}.decision-dialog{width:min(96vw,520px);max-height:100%;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);grid-gap:.5rem;gap:.5rem;padding:.85rem;background:white;border-radius:16px;box-shadow:0 24px 70px #0006;overflow:hidden}.decision-dialog h2{margin:0}.decision-dialog>.page-head{margin:0;align-items:center}.decision-dialog>.page-head h2{font-size:1.2rem}.decision-dialog-copy,.decision-dialog>form{min-height:0;overflow-y:auto;overscroll-behavior:contain}.decision-dialog>form{padding:.15rem .2rem .2rem}.decision-dialog .form-actions{position:-webkit-sticky;position:sticky;bottom:0;background:white;padding:.55rem 0 max(.25rem,env(safe-area-inset-bottom));z-index:1}.decision-dialog-copy{display:grid;grid-gap:.6rem;gap:.6rem}.decision-dialog-copy p{margin:0}.decision-dialog-actions{display:flex;justify-content:flex-end;gap:.65rem;flex-wrap:wrap}@media(max-width:520px){.decision-dialog-actions{display:grid;grid-template-columns:1fr}.decision-dialog-actions>*{width:100%;text-align:center}.decision-dialog input,.decision-dialog select,.decision-dialog textarea{font-size:16px}}.player-shell>.content{width:100%;max-width:650px!important;min-width:0}.app-shell,.auth,.auth-form,.auth-panel,.player-shell{min-width:0;max-width:100%}@media(max-width:800px){input,select,textarea{font-size:16px}.app-shell,.auth,.auth-form,.auth-panel,.player-shell{width:100%;overflow-x:hidden}}.league-mobile-list{display:none}.league-mobile-list>details>div,.league-mobile-list>section{display:grid;grid-gap:.65rem;gap:.65rem}.league-mobile-list h2{font-size:1rem;margin:.25rem 0}.league-mobile-list>details{border-top:1px solid var(--line);padding-top:.8rem}.league-mobile-list>details>summary{display:flex;justify-content:space-between;padding:.55rem 0;cursor:pointer}.league-mobile-card{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.85rem;border:1px solid var(--line);border-radius:12px;background:white}.league-mobile-card>div{min-width:0}.league-mobile-card h3{margin:.2rem 0;overflow-wrap:anywhere}.league-mobile-card p{margin:.4rem 0 0;font-size:.82rem}.league-mobile-card .button{flex:0 0 auto}@media(max-width:800px){.league-desktop-table{display:none}.league-mobile-list{display:grid;grid-gap:1rem;gap:1rem}}@media(max-width:380px){.league-mobile-card{display:grid}.league-mobile-card .button{width:100%;text-align:center}}.court-management-list{display:grid;grid-gap:.45rem;gap:.45rem}.court-management-row{display:grid;grid-template-columns:minmax(0,1fr) 100px 90px;grid-gap:.65rem;gap:.65rem;align-items:end;padding:.6rem 0;border-bottom:1px solid var(--line)}.court-management-row label{min-width:0}.court-management-row input{padding:.55rem .65rem}.court-active{display:flex;align-items:center;gap:.4rem;min-height:42px}.court-active input{width:auto}@media(max-width:800px){.court-management-grid{display:flex;flex-direction:column}.court-management-row{grid-template-columns:minmax(0,1fr) 76px auto;gap:.45rem}.court-management-row label{font-size:.75rem}.court-active{align-self:end;padding-bottom:.55rem}.court-management-row input{padding:.5rem}}.audit-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem 0;border-bottom:1px solid var(--line)}.audit-row>div{display:grid;min-width:0}.audit-row strong{overflow-wrap:anywhere}.audit-row span{color:var(--muted);font-size:.8rem}.audit-detail-row{align-items:flex-start}.audit-detail-row strong{max-width:70%;text-align:right;overflow-wrap:anywhere}@media(max-width:800px){.audit-detail-row{display:grid}.audit-detail-row strong{max-width:100%;text-align:left}.audit-row{align-items:flex-start}}.player-shell{--player-width:393px;width:393px;max-width:100%;margin-inline:auto;min-height:100dvh;padding-top:60px;padding-bottom:70px}.player-layout{min-width:0;container:player-app/inline-size}.player-layout>.content{width:100%;max-width:100%!important;padding:1rem;overflow-x:hidden}.player-shell .grid.three,.player-shell .grid.two{grid-template-columns:1fr}.player-shell .card{padding:1rem}.player-shell .page-head{align-items:flex-start;flex-direction:column;margin-bottom:1rem}.player-shell .page-head .form-actions{width:100%;flex-wrap:wrap}.player-shell .court-row{gap:.75rem}.player-shell .court-row>*{min-width:0}.player-shell .court-row strong{overflow-wrap:anywhere}.player-shell .player-session-card{align-items:flex-start;flex-direction:column}.player-shell .player-session-card .button{width:100%;text-align:center}.player-shell .player-home .grid.two{gap:.75rem}.player-shell .player-primary-card{align-items:flex-start;flex-direction:column;padding:clamp(1.1rem,4cqw,1.75rem)}.player-shell .player-primary-card h2{font-size:clamp(1.6rem,5cqw,2.4rem)}.player-shell .player-primary-card .button{width:100%;text-align:center}.player-shell .player-compact-row{align-items:flex-start}.player-shell .account-menu-name{display:none}.player-shell .account-menu-mobile-label{display:inline}.player-shell .account-menu summary{min-height:44px;padding:.5rem .7rem}.player-shell .account-menu-panel{width:min(310px,calc(var(--player-width) - 2rem))}.player-topbar{left:max(0px,calc((100vw - 393px)/2));right:auto;width:393px;max-width:100%;height:60px;padding:0 1rem;grid-template-columns:1fr auto}.player-topbar nav{display:none}.player-topbar .mark{font-size:.9rem}.player-mobile-nav{position:fixed;display:flex;z-index:20;bottom:0;left:max(0px,calc((100vw - 393px)/2));right:auto;width:393px;max-width:100%;height:64px;background:var(--nav);color:white;justify-content:space-around;align-items:center}.player-mobile-nav a{font-size:.78rem}.player-shell .dialog-backdrop{left:max(0px,calc((100vw - 393px)/2));right:auto;width:393px;max-width:100%}.player-shell .decision-dialog{width:96%}.player-shell .decision-dialog-actions{display:grid;grid-template-columns:1fr}.player-shell .decision-dialog-actions>*{width:100%;text-align:center}.player-shell .decision-dialog input,.player-shell .decision-dialog select,.player-shell .decision-dialog textarea,.player-shell input,.player-shell select,.player-shell textarea{font-size:16px}@media(max-width:800px){.player-shell{--player-width:100vw;width:100%;max-width:none}.player-mobile-nav,.player-shell .dialog-backdrop,.player-topbar{left:0;width:100%;max-width:none}}@container player-app (max-width:380px){.player-compact-row{display:grid}.player-compact-row b{white-space:normal}}.player-join{width:393px;max-width:100%!important;padding:1rem}.player-join .grid.two{grid-template-columns:1fr}.player-join .card{padding:1rem}.player-join .page-head{align-items:flex-start;flex-direction:column;margin-bottom:1rem}.player-auth{width:393px;max-width:100%;margin-inline:auto;grid-template-columns:1fr}.player-auth .auth-brand{min-height:260px;padding:2rem}.player-auth .auth-copy h1{font-size:2.5rem}.player-auth .auth-panel{padding:2rem}.player-auth .grid.two{grid-template-columns:1fr}@media(max-width:800px){.player-auth,.player-join{width:100%;max-width:none}}.typeahead-results>button{display:grid;width:100%;padding:.65rem .7rem;border:0;border-radius:8px;background:white;color:var(--ink);text-align:left;font-weight:400}.typeahead-results>button:focus,.typeahead-results>button:hover{background:#edf1f5}.player-join{display:grid;grid-gap:.85rem;gap:.85rem;container-type:inline-size}.join-header{display:grid;grid-gap:.2rem;gap:.2rem;padding:.15rem .1rem .45rem;border-bottom:1px solid var(--line)}.join-header h1{font-size:clamp(1.4rem,5.8cqw,1.85rem);line-height:1.12;letter-spacing:-.035em;margin:.15rem 0 .25rem;overflow-wrap:anywhere}.join-club{color:#3f6212}.join-meta{display:flex;gap:.25rem .6rem;flex-wrap:wrap;margin:0;font-size:.83rem;font-weight:700}.join-progress{margin:0;color:var(--muted);font-size:.8rem}.join-account{display:flex;gap:.3rem;flex-wrap:wrap;align-items:baseline;margin:.4rem 0 0;padding-top:.45rem;border-top:1px solid var(--line);font-size:.78rem;color:var(--muted)}.join-account strong{color:var(--ink);overflow-wrap:anywhere}.join-account a{margin-left:auto;color:#3f6212;font-weight:800;text-decoration:underline}.join-availability h2,.join-choice h2,.join-full h2,.join-joined h2{margin:.15rem 0 .35rem;font-size:1.3rem;line-height:1.2}.join-availability>p,.join-choice p,.join-full p{margin:.15rem 0;font-size:.88rem}.join-team-list{display:grid;border-top:1px solid var(--line)}.join-team-item{border-bottom:1px solid var(--line)}.join-team-complete{opacity:.78}.join-team-toggle{width:100%;min-height:58px;display:flex;justify-content:space-between;align-items:center;gap:.6rem;padding:.65rem .2rem;border-radius:0;background:transparent;color:var(--ink);text-align:left;font-weight:400}.join-team-toggle>span:first-child{display:grid;min-width:0;grid-gap:.1rem;gap:.1rem}.join-team-toggle strong{font-size:.9rem;overflow-wrap:anywhere}.join-team-toggle small{font-size:.76rem;color:var(--muted)}.join-team-toggle>span:last-child{font-size:1.3rem;color:#3f6212}.join-team-toggle:focus-visible,.join-team-toggle:hover{background:#f7fee7}.join-team-detail{display:grid;grid-gap:.6rem;gap:.6rem;padding:.25rem 0 .85rem}.join-member{display:grid;grid-gap:.5rem;gap:.5rem;padding:.7rem;border:1px solid var(--line);border-radius:10px;background:#f8fafc}.join-member>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:.4rem;flex-wrap:wrap;font-size:.84rem}.join-claim-form button,.join-member>button{min-height:44px;width:100%}.join-claim-form{padding-top:.25rem}.join-awaiting{display:inline-flex;padding:.2rem .55rem;border-radius:999px;background:#fff4d5;color:#854d0e;font-size:.7rem;font-weight:800}.join-no-results{padding:.8rem 0}.join-create{padding:0!important;overflow:hidden}.join-create>summary{display:flex;justify-content:space-between;align-items:center;gap:.5rem;min-height:78px;padding:1rem;list-style:none;cursor:pointer}.join-create>summary::-webkit-details-marker{display:none}.join-create>summary>span:first-child{display:grid;grid-gap:.15rem;gap:.15rem}.join-create>summary strong{font-size:1.08rem}.join-create>summary small{font-size:.78rem;color:var(--muted)}.join-create>summary>span:last-child{font-size:1.35rem;color:#3f6212}.join-create[open]>summary>span:last-child{transform:rotate(45deg)}.join-create-body{padding:0 1rem 1rem;border-top:1px solid var(--line)}.join-create-body p{margin-top:.75rem}.join-create-body button{min-height:46px}.join-joined{border-color:#b7df75;background:#fbfff5}.join-joined .eyebrow{color:#3f6212}.join-team-name{font-size:1.05rem;line-height:1.25;overflow-wrap:anywhere}.join-member-status{display:grid;grid-gap:.2rem;gap:.2rem;font-size:.8rem;color:var(--muted)}.join-joined .button{width:100%;min-height:46px;display:grid;place-items:center;text-align:center}.join-home-link{display:flex;align-items:center;min-height:44px;padding:.55rem .7rem;border:1px solid var(--line);border-radius:9px;background:white;font-size:.85rem;font-weight:800;color:var(--ink)}.join-session{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:.5rem;gap:.5rem;padding:.75rem 0;border-bottom:1px solid var(--line);font-size:.82rem}.join-session>div{display:grid}.join-session>div span,.join-session>span{color:var(--muted)}.join-session>a{color:#3f6212;font-weight:800;text-decoration:underline}.join-session details{grid-column:1/-1}.join-session summary{min-height:40px;display:flex;align-items:center;cursor:pointer;font-weight:700}.join-session details>div{padding:.5rem 0}.player-join a:focus-visible,.player-join button:focus-visible,.player-join input:focus-visible,.player-join summary:focus-visible{outline:3px solid #6b9d16;outline-offset:2px}.same-partner-team-roster{display:grid;grid-gap:.75rem;gap:.75rem;margin-top:1rem}.same-partner-team-roster>.card{box-shadow:none}.same-partner-team-roster .roster-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:.7rem 0;border-top:1px solid var(--line)}.same-partner-team-roster .roster-row>div{display:grid;grid-gap:.35rem;gap:.35rem}.same-partner-team-roster .roster-row p{margin:0}.same-partner-team-roster .roster-row summary{cursor:pointer}.same-partner-sessions{margin-bottom:1rem}.same-partner-admin-section{margin-top:1rem}.same-partner-team-roster .roster-row{flex-wrap:wrap}.same-partner-team-roster .roster-row>div{min-width:0}.same-partner-team-roster .roster-row details{max-width:100%}.same-partner-csv-import>summary{cursor:pointer;min-height:44px;padding:.65rem 0;font-weight:800}.same-partner-csv-import>.stack{padding:.75rem 0;border-top:1px solid var(--line)}.same-partner-csv-import .button{display:inline-block;justify-self:start}.csv-preview{border:1px solid var(--line);border-radius:12px;padding:1rem;background:#fbfcfe}.csv-preview h3{margin:0}.csv-preview-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));grid-gap:.5rem;gap:.5rem}.csv-preview-stats span{padding:.55rem;border-radius:8px;background:white;border:1px solid var(--line);font-size:.82rem}.csv-preview-stats strong{font-size:1.05rem}.csv-preview-list{display:grid;max-height:420px;overflow:auto;border-top:1px solid var(--line)}.csv-preview-list article{padding:.65rem 0;border-bottom:1px solid var(--line)}.csv-preview-list article>div{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.csv-preview-list article small{display:block;color:var(--muted);overflow-wrap:anywhere}.csv-preview-list article p{margin:.25rem 0}.csv-conflict{background:#fff0ef;color:var(--danger)}