:root{--bg:#050608;--panel:#111419;--panel-2:#171a20;--border:#2a2f38;--text:#f5f7fa;--muted:#a8adb7;--green:#baff00;--green-soft:#baff0024}*{box-sizing:border-box}html,body,#root{background:radial-gradient(circle at top, #11151a 0%, var(--bg) 42%);min-height:100%;color:var(--text);margin:0;font-family:Arial,Helvetica,sans-serif}html{height:auto;overflow-y:auto}body{-webkit-overflow-scrolling:touch;overflow:hidden auto}button{font:inherit}.app-shell{--bottom-nav-max-width:520px;max-width:520px;min-height:100dvh;margin:0 auto;padding:22px 18px 156px}.app-loading-shell{place-items:center;padding-bottom:22px;display:grid}.app-loading-card{border:1px solid var(--border);text-align:center;background:#111419db;border-radius:8px;width:min(100%,360px);padding:24px}.app-loading-card h1{color:var(--text);letter-spacing:0;margin:0 0 8px;font-size:30px;line-height:1.05}.app-loading-card p{color:var(--muted);margin:0;font-size:16px;line-height:1.35}.app-loading-card .app-loading-note{color:#ffcf66;margin-top:16px}.app-loading-card .primary-button{width:100%;margin-top:16px}.standings-shell{min-height:calc(100dvh + 140px);padding-bottom:156px}.app-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.brand-logo{cursor:pointer;width:290px;max-width:100%;height:auto}.bell{color:var(--text);font-size:28px}.ladder-row{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:10px;display:flex}.standings-hero{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:18px;margin-bottom:8px;padding:8px 0 24px;display:grid}.standings-page-heading{color:var(--text);letter-spacing:0;margin:0 0 14px;font-size:44px;font-weight:900;line-height:1}.standings-ladder-name{color:var(--green);text-transform:uppercase;letter-spacing:.08em;font-size:17px;font-weight:900}.standings-ladder-dates{color:var(--text);margin-top:4px;font-size:14px}.ladder-event-control{color:var(--green);text-transform:uppercase;flex-direction:column;gap:8px;margin:0 0 20px;font-size:13px;font-weight:900;display:flex}.ladder-event-control select{border:1px solid var(--border);width:100%;color:var(--text);text-transform:none;letter-spacing:0;background:#07090c;border-radius:8px;padding:12px;font-size:15px;font-weight:800}.ladder-event-control select:focus,.admin-field input:focus,.admin-field select:focus,.admin-field textarea:focus,.admin-score-row input:focus,.admin-score-row select:focus{border-color:var(--green);outline:none;box-shadow:0 0 0 1px #abff008c}.active-ladder-control{flex:0 0 220px;margin-bottom:18px}.join-ladder-section{margin:0 0 22px}.join-ladder-toggle{color:var(--green);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:6px 0;font-size:17px;font-weight:900;display:inline-flex}.join-ladder-toggle svg{transition:transform .16s}.join-ladder-toggle:hover svg,.join-ladder-toggle:focus-visible svg{transform:translate(4px)}.join-ladder-toggle:focus-visible{outline:2px solid var(--green);outline-offset:4px}.join-ladder-form{border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr) 150px;align-items:end;gap:12px;margin-top:14px;padding:16px 0 4px;display:grid}.join-ladder-form .ladder-event-control,.join-ladder-form .primary-button{margin:0}.join-ladder-form .primary-button{border-radius:8px;min-height:46px;padding:12px 14px;font-size:15px}.join-ladder-message{border:1px solid var(--green);background:var(--green-soft);color:var(--text);border-radius:8px;margin:0 0 22px;padding:12px 14px;font-size:15px;font-weight:800;line-height:1.35}.join-ladder-message.error{color:#ffb3b3;background:#ff6b6b1f;border-color:#ff6b6bb8}.club-badge{text-align:center;background:#0c111280;min-width:134px;padding:20px 18px}.club-badge-primary{color:var(--green);font-size:31px;font-weight:900;line-height:.95}.club-badge-secondary{color:var(--green);margin-top:4px;font-size:16px;font-weight:800;line-height:1.15}.rules-shell{padding-bottom:180px}.glass-card{background:linear-gradient(145deg,#c1ffb84d,#090b0e80);border:1px solid #baff0091;border-radius:10px;padding:4px 18px;box-shadow:0 14px 34px #0000006b}.rules-card{background:linear-gradient(145deg,#c1ffb82e,#090b0eb8);padding:28px 18px}.stats-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:28px;display:grid}.standings-stats-grid{margin-bottom:8px}.playoff-eligibility-note{color:#fff;text-align:center;margin:0 0 28px;font-size:14px;font-style:italic;line-height:1.4}.stat-card{text-align:center;padding:10px 8px}.stat-icon{margin-bottom:0;font-size:22px}.stat-label{color:var(--text);font-size:15px}.stat-value{color:var(--green);margin-top:8px;font-size:20px;font-weight:900}.standings-title{text-align:center;align-items:center;gap:12px;margin:8px 0 18px;font-size:30px;font-weight:900}.standings-title span{color:var(--green);padding:8px 10px 0 8px}.playoff-title{margin-top:34px;font-size:26px}.player-list{flex-direction:column;gap:16px;display:flex}.player-card,.challenge-card{padding:18px 18px 16px;transition:transform .18s,border-color .18s}.player-card:hover,.challenge-card:hover{border-color:#baff008c;transform:translateY(-2px)}.player-top{grid-template-columns:70px 84px 1fr;align-items:center;gap:14px;display:grid}.rank-box{background:linear-gradient(145deg,#20242b,#12151a);border:1px solid #a0ff989e;border-radius:10px;justify-content:center;align-items:center;width:62px;height:62px;font-size:34px;font-weight:900;display:flex}.player-icon{width:72px;height:72px;color:var(--green);background:#080a0d;border-radius:6%;justify-content:center;align-items:center;font-size:36px;display:flex}.player-avatar-button{appearance:none;cursor:pointer;border:1px solid #a0ff989e;padding:0;transition:border-color .18s,transform .18s;overflow:hidden}.player-avatar-button:hover,.player-avatar-button:focus-visible{border:1px solid var(--green);transform:scale(1.03)}.player-avatar{background:#080a0d;justify-content:center;align-items:center;width:100%;height:100%;display:inline-flex;position:relative;overflow:hidden}.player-avatar img{object-fit:cover;width:100%;height:100%;display:block}.player-avatar-fallback{width:100%;height:100%;color:var(--green);justify-content:center;align-items:center;font-size:36px;display:flex}.player-avatar-fallback[hidden]{display:none}.player-avatar-lock{color:#fff;background:#040608ad;justify-content:center;align-items:center;font-size:22px;display:flex;position:absolute;inset:0}.player-name{margin-bottom:8px;font-size:20px;font-weight:900;line-height:1.1}.player-summary{text-align:center;flex-direction:column;align-items:center;min-width:0;display:flex}.status-badge{background:var(--green-soft);color:var(--green);border-radius:7px;margin-top:6px;margin-bottom:4px;padding:3px 12px;font-size:14px;font-weight:800;display:inline-block}.status-badge.needs{color:var(--muted);background:#ffffff14}.player-metrics{border-top:1px solid #447e3c69;grid-auto-columns:1fr;grid-auto-flow:column;margin-top:12px;padding-top:6px;display:grid}.metric{text-align:center;border-right:1px solid var(--border)}.metric:last-child{border-right:0}.metric-value{font-size:28px;font-weight:900}.metric-label{color:var(--text);text-transform:uppercase;margin-top:4px;font-size:14px}.profile-summary-card{box-shadow:none;background:#1d2d23;border-color:#baff00bf;padding:30px 40px 28px}.profile-identity-row{justify-content:space-between;align-items:center;gap:28px;min-height:140px;display:flex}.profile-identity-copy{flex:1;min-width:0}.profile-avatar-image,.profile-avatar-select{flex:0 0 140px;width:140px;height:140px}.profile-avatar-image{border:1px solid #baff00d1}.profile-avatar-image .player-avatar-fallback{font-size:52px}.profile-avatar-select{cursor:pointer;background:0 0;border:0;padding:0;position:relative}.profile-avatar-select:focus-visible{outline-offset:4px;outline:3px solid #fff}.profile-avatar-add{color:#c8cfcd;background:#2b3532;border:2px solid #9aa3a1;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;font-size:20px;display:flex;position:absolute;top:-17px;right:-17px}.avatar-picker{border-top:1px solid #baff0073;margin:24px 0 4px;padding-top:22px}.avatar-picker-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.avatar-option{color:#fff;font:inherit;cursor:pointer;background:#101713;border:1px solid #0000;border-radius:6px;gap:7px;padding:5px;font-size:12px;font-weight:800;display:grid}.avatar-option .player-avatar{aspect-ratio:1}.avatar-option:hover:not(:disabled),.avatar-option:focus-visible,.avatar-option.selected{border-color:var(--green)}.avatar-option:disabled{cursor:not-allowed;opacity:.68}.avatar-picker-note{color:var(--muted);margin:12px 0 0;font-size:12px}.profile-discipline-performance{margin-top:26px;display:grid}.profile-discipline-performance section{border-top:1px solid #baff0073;padding:18px 0 20px}.profile-discipline-performance h3{color:var(--green);text-transform:uppercase;margin:0 0 18px;font-size:20px}.profile-discipline-metrics{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.profile-discipline-metrics>div{text-align:center;gap:3px;padding:0 10px;display:grid}.profile-discipline-metrics>div+div{border-left:0}.profile-discipline-metrics strong{font-size:34px}.profile-discipline-metrics span{color:var(--muted);text-transform:uppercase;font-size:14px;font-weight:800}.profile-summary-card h2{margin:0 0 6px;font-size:32px;font-weight:900}.profile-summary-card .profile-email{color:var(--green);overflow-wrap:anywhere;margin:12px 0 0;font-size:18px}.profile-password-card,.profile-details-card,.feedback-card{margin-top:16px}.profile-details-card h3,.profile-password-card h3{margin:0 0 18px;font-size:22px;line-height:1.2}.profile-security-note{color:var(--muted);margin:8px 0 0;font-size:13px;line-height:1.35}.feedback-card h2{margin:0 0 18px;font-size:22px;line-height:1.2}.install-shell{padding-bottom:180px}.install-card{gap:20px;display:grid}.install-card-heading{grid-template-columns:42px minmax(0,1fr);align-items:start;gap:14px;display:grid}.install-card-heading>svg{color:var(--green);margin-top:4px;font-size:32px}.install-card-heading h2{margin:0 0 8px;font-size:24px;line-height:1.15}.install-card-heading p{color:var(--muted);margin:0;font-size:15px;line-height:1.45}.install-steps{gap:12px;display:grid}.install-steps article{border:1px solid var(--border);background:#07090cb8;border-radius:8px;grid-template-columns:34px minmax(0,1fr);gap:12px;padding:14px;display:grid}.install-steps article>svg{color:var(--green);margin-top:2px;font-size:24px}.install-steps h3{margin:0 0 8px;font-size:18px;line-height:1.2}.install-steps ol{color:var(--muted);margin:0;padding-left:19px;font-size:15px;line-height:1.45}.install-steps li+li{margin-top:4px}.install-link-button{border:1px solid var(--green);color:var(--green);background:0 0;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:12px 14px;font-size:15px;font-weight:900;text-decoration:none;display:inline-flex}.contact-admin-list{gap:12px;display:grid}.contact-admin-list div{border:1px solid var(--border);background:#07090cb8;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;display:flex}.contact-admin-list span{color:var(--muted);text-transform:uppercase;font-size:13px;font-weight:800}.contact-admin-list a,.contact-admin-list strong{color:var(--green);text-align:right;overflow-wrap:anywhere;font-size:15px;font-weight:500;text-decoration:none}.bottom-nav{width:min(100%, var(--bottom-nav-max-width,520px));padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);padding-bottom:env(safe-area-inset-bottom);box-sizing:border-box;z-index:30;background:#f6f6f3;border-top:1px solid #baff00b8;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:50%;right:auto;transform:translate(-50%);box-shadow:0 -4px 18px #00000047}.nav-item{color:#030;cursor:pointer;background:#f6f6f3;border:0;flex-direction:column;justify-content:center;align-items:center;min-height:102px;padding:15px 4px 18px;font-size:16px;font-weight:800;line-height:1.1;transition:background-color .18s,color .18s;display:flex;position:relative}.nav-item:hover{color:#030;background:#e9e9e3}.nav-item:hover .nav-icon{color:#030}.nav-item.active{background:var(--green);color:#030;font-weight:800}.nav-item.active:hover{background:var(--green);color:#030}.nav-icon{font-size:32px;line-height:1;display:block}.nav-item:not(:last-child){border-right:1px solid #0000003d}.nav-item:last-child{border-right:0}.print-standings-shell{min-height:100dvh;color:var(--text);padding:22px 18px 48px}.print-standings-controls{flex-wrap:wrap;justify-content:center;gap:10px;max-width:8.5in;margin:0 auto 18px;display:flex}.print-control-button,.admin-print-standings-link{border:1px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-weight:900;transition:transform .16s ease-out,border-color .16s ease-out,color .16s ease-out,background-color .16s ease-out;display:inline-flex}.print-control-button:hover,.print-control-button:focus-visible,.admin-print-standings-link:hover,.admin-print-standings-link:focus-visible{border-color:var(--green);color:var(--green);background:#baff0014;outline:none;transform:translateY(-1px)}.print-control-button.primary{border-color:var(--green);background:var(--green);color:#050608}.print-control-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.admin-print-standings-link{text-transform:none;font-size:13px}.print-selector-card{border:1px solid var(--border);background:#111419eb;border-radius:8px;gap:14px;width:min(100%,8.5in);margin:0 auto 18px;padding:16px;display:grid}.print-selector-card h1{color:var(--green);margin:0 0 4px;font-size:24px;line-height:1.1}.print-selector-card p,.print-muted{color:var(--muted);margin:0;font-size:15px;line-height:1.35}.print-ladder-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.print-ladder-option{border:1px solid var(--border);color:var(--text);cursor:pointer;background:#07090c;border-radius:8px;align-items:center;gap:9px;padding:11px 12px;font-weight:800;line-height:1.2;display:flex}.print-ladder-option.selected{border-color:var(--green);color:var(--green)}.print-ladder-option input{width:18px;height:18px;accent-color:var(--green)}.standings-print-sheet{color:#050608;background:#fff;width:8.5in;min-height:11in;margin:0 auto;position:relative;box-shadow:0 22px 60px #00000047}.standings-print-header{color:#fff;background:#050608;grid-template-columns:3.2in minmax(0,1fr);align-items:center;gap:.42in;height:1.12in;padding:.2in .42in;display:grid}.standings-print-header img{width:100%;height:auto}.standings-print-header h2{margin:0;font-size:28pt;line-height:1}.standings-print-header strong{color:#adff00;margin-top:.06in;font-size:15pt;line-height:1.1;display:block}.standings-print-header span{color:#c8ced8;margin-top:.04in;font-size:10pt;display:block}.standings-print-accent{background:#adff00;height:.1in}.standings-print-grid{grid-template-columns:minmax(0,1fr);gap:.18in;padding:.34in .42in .72in;display:grid}.standings-print-sheet.two-ladders .standings-print-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.2in}.standings-print-ladder{background:#eef2f5;border:1px solid #d6dce2;overflow:hidden}.standings-print-ladder-title{color:#fff;background:#050608;justify-content:space-between;align-items:center;gap:.12in;padding:.12in .18in;display:flex}.standings-print-ladder-title h3{color:#adff00;margin:0;font-size:21pt;line-height:1.05}.standings-print-sheet.two-ladders .standings-print-ladder-title h3{font-size:15pt}.standings-print-ladder-title span{color:#c8ced8;white-space:nowrap;font-size:9pt}.standings-print-ladder table{border-collapse:collapse;width:100%;font-size:14pt}.standings-print-sheet.two-ladders table{font-size:8.9pt}.standings-print-ladder th,.standings-print-ladder td{text-align:left;white-space:nowrap;font-variant-numeric:tabular-nums;padding:.14in .12in}.standings-print-sheet.two-ladders th,.standings-print-sheet.two-ladders td{padding:.105in .07in}.standings-print-ladder th{color:#68717d;text-transform:uppercase;border-bottom:1px solid #d6dce2;font-size:.78em}.standings-print-ladder td{font-weight:400}.standings-print-ladder td:first-child,.standings-print-ladder td:nth-child(2),.standings-print-ladder td:nth-child(3){font-weight:900}.standings-print-ladder th:first-child,.standings-print-ladder td:first-child{width:.44in}.standings-print-ladder th:nth-child(3),.standings-print-ladder td:nth-child(3),.standings-print-ladder th:nth-child(4),.standings-print-ladder td:nth-child(4),.standings-print-ladder th:nth-child(5),.standings-print-ladder td:nth-child(5){width:.52in}.standings-print-ladder tbody tr:nth-child(2n){background:#fff}.standings-print-empty{color:#68717d;text-align:center;place-items:center;min-height:8.8in;padding:.42in;font-size:18pt;display:grid}.standings-print-footer{color:#68717d;justify-content:space-between;gap:.24in;font-size:10pt;line-height:1.25;display:flex;position:absolute;bottom:.34in;left:.42in;right:.42in}@media (width<=880px){.print-standings-shell{overflow-x:auto}.print-selector-card,.print-standings-controls{width:min(100%,8.5in)}.print-ladder-options{grid-template-columns:1fr}}@media print{@page{size:letter portrait;margin:0}html,body,#root{background:#fff}.print-standings-shell{background:#fff;min-height:0;padding:0}.print-standings-controls,.print-selector-card{display:none}.standings-print-sheet{width:8.5in;height:11in;box-shadow:none;page-break-after:avoid;margin:0}}.auth-shell{min-height:100dvh;padding:max(28px, env(safe-area-inset-top)) 22px max(28px, env(safe-area-inset-bottom));flex-direction:column;justify-content:center;max-width:520px;margin:0 auto;display:flex}.auth-logo{width:280px;max-width:86%;margin:0 auto 34px;display:block}.auth-card{padding:28px}.auth-card h1{margin:0 0 10px;font-size:38px;line-height:1}.auth-card p{color:var(--muted);margin:0 0 26px;font-size:16px;line-height:1.45}.turnstile-widget{width:100%;margin:0 0 18px;overflow:hidden}.form-group{margin-bottom:18px}.form-row{gap:14px;display:grid}.form-row.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-group label,.form-choice-group legend{color:var(--green);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;font-size:14px;font-weight:800;display:block}.form-group input,.form-group select,.form-group textarea{border:1px solid var(--border);width:100%;color:var(--text);background:#07090c;border-radius:12px;outline:none;padding:15px 16px;font-size:17px}.form-group input[type=date],.admin-field input[type=date]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#050608;border-color:#baff0057}.form-group input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;filter:invert();opacity:.92}.admin-field input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;filter:invert();opacity:.92}.form-group input[type=checkbox],.form-group input[type=radio]{width:auto}.form-group .form-check-label{color:var(--text);letter-spacing:0;text-transform:none;align-items:center;gap:10px;margin:0;font-size:15px;line-height:1.35;display:flex}.form-group .form-check-label input{width:20px;height:20px;accent-color:var(--green);flex:none;margin:0}.form-choice-group{border:0;margin-left:0;margin-right:0;padding:0}.form-choice-list{gap:10px;display:grid}.form-choice-group .form-choice{border:1px solid var(--border);color:var(--text);letter-spacing:0;text-transform:none;cursor:pointer;background:#07090c;border-radius:8px;align-items:center;gap:10px;margin:0;padding:11px 12px;font-size:15px;font-weight:800;line-height:1.35;display:flex}.form-choice input{width:18px;height:18px;accent-color:var(--green);flex:none;margin:0}.form-choice:has(input:checked){border-color:var(--green);background:var(--green-soft);color:var(--text)}.form-group textarea{resize:vertical;min-height:180px;line-height:1.4;font:inherit}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--green);outline:none;box-shadow:0 0 0 1px #abff008c}.form-group input[aria-invalid=true],.form-group textarea[aria-invalid=true]{border-color:#ff6b6bb8}.field-error{color:#ffb3b3;margin-top:8px;font-size:14px;font-weight:700;line-height:1.35;display:block}.form-status-message{color:var(--muted);margin:0 0 16px;font-size:15px;font-weight:700;line-height:1.35}.primary-button{background:var(--green);color:#050608;cursor:pointer;border:0;border-radius:14px;width:100%;margin-top:8px;padding:16px 18px;font-size:18px;font-weight:900}.primary-button:disabled{border:1px solid var(--border);background:var(--panel);color:var(--muted);filter:none}.primary-button.error-button{color:#ffb3b3;background:#ff6b6b29;border:1px solid #ff6b6bb8}.text-button{width:100%;color:var(--green);cursor:pointer;background:0 0;border:0;margin-top:20px;font-size:15px;font-weight:800}.auth-secondary-action{color:var(--text);margin-top:16px;margin-bottom:-10px}.form-error{color:#ff6b6b;margin-bottom:16px;font-weight:700}.form-message{background:#ff6b6b14;border:1px solid #ff6b6b8f;border-radius:8px;outline:none;margin-top:4px;margin-bottom:14px;padding:10px 12px;line-height:1.35}.form-message strong,.form-message span{display:block}.form-message strong{margin-bottom:4px}.form-message-error{color:#ff6b6b}.form-message-error strong{color:#ffb3b3}.form-message-success{border-color:var(--green);background:var(--green-soft);color:var(--green);font-weight:800}.form-message-success strong{color:var(--green)}.form-message-warning{color:#ffd666;background:#ffd6661a;border-color:#ffd666b3;font-weight:800}.form-message-warning strong{color:#ffe6a3}.welcome-card{width:100%;margin-bottom:18px;padding:8px 18px}.welcome-label{color:#efefef;margin-bottom:2px;font-size:14px}.welcome-name{color:var(--green);font-size:22px;font-weight:900}.registration-notice{border:1px solid var(--green);background:var(--green-soft);width:100%;color:var(--text);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin:-6px 0 22px;padding:12px 14px;font-size:15px;font-weight:800;line-height:1.35;display:flex}.registration-notice button{color:var(--green);cursor:pointer;font:inherit;white-space:nowrap;background:0 0;border:0;padding:0;font-weight:800}.registration-target-card{background:#07090cb8;border:1px solid #baff0057;border-radius:8px;margin:-8px 0 22px;padding:12px 14px}.registration-target-card span,.registration-target-card small{display:block}.registration-target-card span{color:var(--green);text-transform:uppercase;font-size:12px;font-weight:900}.registration-target-card strong{color:var(--text);margin-top:4px;font-size:18px;line-height:1.2;display:block}.registration-target-card small{color:var(--muted);margin-top:5px;font-size:13px;font-weight:700;line-height:1.35}.profile-menu-wrap{justify-content:flex-end;display:flex;position:relative}.profile-button{background:var(--panel);border:1px solid var(--border);width:48px;height:48px;color:var(--green);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;font-size:20px;display:flex}.brand-button{cursor:pointer;background:0 0;border:0;padding:0;line-height:0}.profile-menu{z-index:20;background:#0e120ffa;border:1px solid #baff0091;border-radius:8px;width:200px;position:absolute;top:calc(100% + 20px);right:0;overflow:hidden;box-shadow:0 14px 34px #0000006b}.profile-menu-club-heading{color:var(--green);text-align:center;text-transform:uppercase;border-bottom:1px solid #baff0038;padding:12px 16px;font-size:13px;font-weight:800}.profile-menu-club-list{border-bottom:1px solid #baff0038;padding:8px}.profile-menu-club{width:100%;color:var(--muted);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:5px;padding:9px 10px;font-size:14px;font-weight:700;display:block}.profile-menu-club:hover,.profile-menu-club:focus-visible,.profile-menu-club.active{color:var(--green);background:#baff001a;outline:none}.profile-menu-item{width:100%;color:var(--text);text-align:center;font:inherit;cursor:pointer;background:0 0;border:0;padding:13px 18px;font-size:18px;font-weight:600}.profile-menu-item+.profile-menu-item{border-top:1px solid #baff0038}.profile-menu-item:hover,.profile-menu-item:focus-visible{color:var(--green);background:#baff0014;outline:none}.profile-menu-item.logout{color:var(--green);font-weight:400}.card-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.card-actions .status-badge{margin-top:0}.player-card .card-actions{justify-content:center;width:100%;margin-top:0}.player-card .card-actions .challenge-button{min-width:112px;min-height:32px;padding:4px 18px}.challenge-button{border:1px solid var(--green);color:var(--green);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;min-height:44px;padding:9px 14px;font-size:14px;font-weight:900;line-height:1.2;display:inline-flex}.challenge-button.pending{opacity:1;cursor:pointer;border-color:var(--muted);color:var(--muted);background:#b2b8c414}.challenge-button.pending.disputed{color:#ffb3b3;background:#ff6c6c1f;border-color:#ff8f9a}.challenge-button.secondary{border-color:var(--border);color:var(--muted)}.challenge-confirm-panel,.challenge-inline-message{border:1px solid var(--border);background:#07090c;border-radius:8px;margin-top:14px;padding:10px 12px}.challenge-confirm-panel p,.challenge-inline-message{color:var(--text);margin:0;font-size:14px;font-weight:800;line-height:1.35}.challenge-confirm-actions{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.challenge-inline-message.error{color:#ffb3b3;border-color:#ff6b6b}.challenge-inline-message.success{border-color:var(--green);color:var(--green)}.challenge-closed-note{border:1px solid var(--border);color:var(--muted);text-align:center;background:#07090c;border-radius:8px;width:340px;margin:-4px auto 16px;padding:12px 14px;font-size:14px;font-weight:800;line-height:1.35}.challenge-button:not(:disabled):hover,.challenge-button:not(:disabled):focus-visible,.primary-button:not(:disabled):hover,.primary-button:not(:disabled):focus-visible{filter:brightness(1.08)}button:disabled{cursor:not-allowed;opacity:.52}.challenge-meta{border-top:1px solid var(--border);margin-top:16px;padding-top:16px}.matchup-display{font-size:20px;font-weight:900;line-height:1.25}.matchup-display-teams{gap:4px;display:grid}.matchup-versus{color:var(--muted);font-weight:800}.challenge-status-badge{text-transform:uppercase;letter-spacing:.08em;border-radius:8px;padding:7px 12px;font-size:13px;font-weight:900;display:inline-block}.challenge-empty{text-align:center;color:var(--muted);justify-content:center;align-items:center;min-height:56px;padding:18px 20px;font-size:14px;line-height:1.4;display:flex}.challenge-section{margin-bottom:36px}.challenge-section h2{margin:0 0 16px;font-size:26px;font-weight:900;line-height:1.1}.challenge-section .challenge-card+.challenge-card{margin-top:14px}.team-management-heading{justify-content:space-between;align-items:end;gap:14px;margin-bottom:16px;display:flex}.team-management-heading h2{margin-bottom:3px}.team-management-heading p,.team-management-card p,.team-management-note,.team-management-stats{color:var(--muted);margin:0;font-size:14px;font-weight:700;line-height:1.4}.team-management-card .player-name{margin-bottom:7px}.team-text-button{color:var(--muted);cursor:pointer;background:0 0;border:0;margin-top:14px;padding:0;font-size:13px;font-weight:800;text-decoration:underline}.team-text-button:hover,.team-text-button:focus-visible{color:var(--text)}.team-invitation-group{margin-top:24px}.team-invitation-group h3{margin:0 0 10px;font-size:16px}.team-invite-form{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;margin-top:18px;padding:16px 18px;display:grid}.team-invite-form .challenge-button{min-height:48px}.team-management-note{margin-top:14px}.status-pending,.status-pending_confirmation{color:#ffd95a;background:#ffd95a24}.status-disputed{color:#ff8f9a;background:#ff6c6c24}.status-declined{color:var(--muted);background:#b2b8c424}.status-accepted{color:#7fc5ff;background:#7fc5ff24}.status-completed,.status-scored{color:#9cff7a;background:#9cff7a24}.status-waiting{color:var(--muted);background:#b2b8c424}.challenge-message{margin-top:12px;font-size:16px;font-weight:700}.challenge-result-winner{color:var(--green);text-transform:uppercase;margin-bottom:3px;font-size:13px;font-weight:900;line-height:1.25}.challenge-result-summary{color:var(--green);margin-top:12px;font-size:16px;font-weight:900;line-height:1.35}.challenge-date{opacity:.55;margin-top:4px;font-size:12px}.challenge-action{margin-top:16px}.challenge-actions{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.page-kicker{color:var(--green);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px;font-size:14px;font-weight:900}.page-title{letter-spacing:-.02em;margin:0 0 24px;font-size:38px;font-weight:900;line-height:1.05}.app-header-row{justify-content:space-between;align-items:center;margin-bottom:26px;display:flex}.recent-matches-card{margin-top:20px;padding:34px 28px}.profile-recent-matches-card{box-shadow:none;background:#1d2d23;border-color:#baff00bf}.recent-matches-card h3{border-bottom:1px solid #baff0073;margin:0;padding-bottom:26px;font-size:26px}.recent-match{border-bottom:1px solid #baff0073;grid-template-columns:minmax(0,1fr) minmax(120px,auto);align-items:center;gap:24px;padding:26px 0;display:grid}.recent-match:last-child{border-bottom:none;padding-bottom:0}.recent-match-result{font-size:19px;font-weight:800;line-height:1.3}.recent-match-score{font-size:inherit;font-weight:800}.recent-match-date{color:#c1c7c4;margin-top:4px;font-size:13px}.status-expired{color:#b8b8b8;background:#b4b4b424}.match-win{color:#8cff75}.match-loss{color:#ff7379}.recent-match-impact{justify-items:start;gap:4px;font-size:16px;font-weight:900;display:grid}.impact-positive{color:#9cff7a}.impact-negative{color:#ff8b8b}.impact-points{color:var(--green)}.recent-opponent{color:#fff;font-weight:700}.profile-empty-matches{color:var(--muted);margin:24px 0 0}.match-result-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.match-round-label{color:var(--muted);text-transform:uppercase;font-size:13px;font-weight:800}.challenge-result-summary{margin-top:12px}.match-results-panel{box-shadow:none;background:#1d2d23;border-color:#baff00d1;padding:10px 28px}.match-result-entry{border-bottom:1px solid #baff006b;padding:24px 0}.match-result-entry:last-child{border-bottom:0}.match-result-player-row{color:var(--text);grid-template-columns:minmax(0,1fr) auto minmax(126px,auto);align-items:baseline;gap:14px;font-size:19px;font-weight:900;line-height:1.2;display:grid}.match-result-player-name{overflow-wrap:anywhere;min-width:0}.match-result-winner-row .match-result-player-name,.match-result-winner-row .match-result-set-scores{color:var(--green)}.match-result-set-scores{font-variant-numeric:tabular-nums;justify-content:flex-end;gap:8px;display:flex}.match-result-impact{font-variant-numeric:tabular-nums;white-space:nowrap;grid-template-columns:repeat(2,auto);justify-content:end;gap:16px;font-size:15px;display:grid}.match-result-date{color:var(--green);font-variant-numeric:tabular-nums;align-items:center;gap:8px;margin-top:10px;font-size:14px;display:flex}.match-result-date span{text-transform:uppercase;font-size:12px;font-weight:900}.match-result-date span:before{content:"•";margin-right:8px}.match-result-retired{color:#ff8b8b;vertical-align:middle;margin-left:7px;font-size:11px}@media (width<=420px){.match-results-panel{padding:8px 18px}.match-result-entry{padding:20px 0}.match-result-player-row{grid-template-columns:minmax(0,1fr) auto minmax(104px,auto);gap:9px;font-size:16px}.match-result-set-scores{gap:5px}.match-result-impact{gap:9px;font-size:12px}.match-result-date{margin-top:8px;font-size:13px}}.admin-shell{--bottom-nav-max-width:768px;max-width:768px;padding-bottom:112px}.admin-selected-ladder-card{justify-content:space-between;gap:18px;margin-bottom:16px;padding:20px;display:flex}.admin-selected-ladder-card h2{margin:8px 0;font-size:28px;line-height:1.1}.admin-ladder-meta-badges{flex-wrap:wrap;gap:8px;display:flex}.admin-ladder-meta-badges span{border:1px solid var(--green);color:var(--green);font-variant-numeric:tabular-nums;background:#07090cdb;border-radius:8px;padding:5px 9px;font-size:13px;font-weight:800;line-height:1.2}.admin-ladder-type-badge{text-transform:uppercase}.admin-selected-ladder-card p,.admin-row p{color:var(--muted);margin:0;font-size:14px;line-height:1.4}.admin-label{color:var(--green);text-transform:uppercase;font-size:12px;font-weight:900}.admin-status-block{text-align:right;flex-direction:column;align-items:flex-end;gap:8px;display:flex}.admin-status{border:1px solid var(--border);color:var(--green);text-transform:uppercase;border-radius:8px;padding:6px 10px;font-size:13px;font-weight:900}.admin-blockers{color:var(--muted);font-size:13px;line-height:1.35}.admin-tabs{scrollbar-color:var(--border) transparent;gap:8px;margin:0 0 16px;padding-top:10px;padding-bottom:12px;display:flex;overflow-x:auto}.admin-tabs::-webkit-scrollbar{height:6px}.admin-tabs::-webkit-scrollbar-track{background:0 0}.admin-tabs::-webkit-scrollbar-thumb{background:var(--border);border-radius:8px}.admin-tabs button,.admin-row-actions button{border:1px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer;text-transform:capitalize;border-radius:8px;padding:9px 12px;font-weight:800;transition:transform .16s ease-out,border-color .16s ease-out,color .16s ease-out,background-color .16s ease-out}.admin-tabs button:hover,.admin-row-actions button:hover{border-color:var(--green);color:var(--green);background:#abff0014;transform:translateY(-1px)}.admin-tabs button:focus{outline:none}.admin-tabs button:focus-visible{border-color:var(--green);outline:2px solid var(--green);outline-offset:2px}.admin-tabs button.active{border-color:var(--green);color:var(--green);outline-color:var(--green);background:#abff001a}.admin-panel{margin-bottom:22px}.admin-reason-panel{border:1px solid var(--border);background:#111419c7;border-radius:8px;grid-template-columns:minmax(0,1fr);gap:12px;padding:14px;display:grid}.admin-reason-panel h3{color:var(--green);margin:0;font-size:18px;line-height:1.2}.admin-inline-reason-panel{margin:-18px 0 30px}.admin-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.admin-action-grid{flex-wrap:wrap;justify-content:center;gap:10px;margin-bottom:36px;display:flex}.admin-field-help{color:var(--muted);text-transform:none;margin-top:6px;font-size:12px;font-weight:700;line-height:1.35;display:block}.admin-ladder-snapshot{border-top:1px solid var(--border);margin-top:18px;padding-top:18px}.admin-ladder-snapshot h4,.admin-ladder-playoff-round h5{margin:0;line-height:1.2}.admin-ladder-snapshot h4{color:var(--text);margin-bottom:12px;font-size:17px}.admin-ladder-snapshot-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.admin-ladder-snapshot-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}.admin-ladder-snapshot-card{border:1px solid var(--border);background:#07090cc7;border-radius:8px;min-width:0;padding:14px}.admin-ladder-standing-list,.admin-ladder-playoff-list{flex-direction:column;gap:8px;display:flex}.admin-ladder-standing-row{border-top:1px solid #ffffff14;grid-template-columns:34px minmax(0,1fr);align-items:start;gap:10px;padding-top:8px;display:grid}.admin-ladder-standing-row:first-child,.admin-ladder-playoff-row:first-child{border-top:0;padding-top:0}.admin-ladder-standing-row>span{border:1px solid var(--border);color:var(--green);border-radius:8px;justify-content:center;align-items:center;font-size:16px;font-weight:900;line-height:32px;display:flex}.admin-ladder-standing-row strong,.admin-ladder-playoff-row strong{color:var(--text);font-size:14px;line-height:1.25;display:block}.admin-ladder-standing-row p,.admin-ladder-playoff-row p{color:var(--muted);margin:3px 0 0;font-size:12px;font-weight:700;line-height:1.35}.admin-ladder-playoff-round{border-top:1px solid #ffffff14;padding-top:10px}.admin-ladder-playoff-round:first-child{border-top:0;padding-top:0}.admin-ladder-playoff-round h5{color:var(--green);text-transform:uppercase;font-size:13px}.admin-ladder-playoff-row{border-top:1px solid #ffffff14;margin-top:8px;padding-top:8px}.admin-ladder-playoff-row.champion{border:1px solid var(--green);border-radius:8px;padding:10px}.admin-new-admin-form,.admin-new-ladder-form,.admin-new-player-form{border:1px solid var(--border);background:#111419c7;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px;padding:14px;display:grid}.admin-ladder-player-form{border:1px solid var(--border);background:#111419c7;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:12px;margin-bottom:16px;padding:14px;display:grid}.admin-new-admin-form .admin-form-actions,.admin-new-admin-form .form-message,.admin-new-ladder-form .admin-form-actions,.admin-new-ladder-form .form-message,.admin-new-player-form .admin-form-heading,.admin-new-player-form .admin-form-actions,.admin-new-player-form .form-message,.admin-ladder-player-form .admin-form-heading,.admin-ladder-player-form .admin-form-actions,.admin-ladder-player-form .form-message{grid-column:1/-1}.admin-form-heading{color:var(--text);grid-column:1/-1;justify-content:space-between;align-items:center;gap:10px;font-size:16px;font-weight:900;display:flex}.admin-form-heading .admin-muted{font-weight:400}.admin-current-inline{border:1px solid var(--green);color:var(--green);text-transform:uppercase;border-radius:8px;padding:2px 6px;font-size:10px;font-weight:900}.admin-form-actions{align-items:center;gap:10px;display:flex}.admin-ladder-cleanup{background:#2d101457;border:1px solid #ff6b6b6b;border-radius:8px;margin:16px 0;padding:14px}.admin-ladder-cleanup h3{color:#ffc6c6;margin-bottom:4px;font-size:16px;line-height:1.25}.admin-ladder-cleanup .admin-form-actions{margin-top:12px}.admin-cleanup-blocked{color:#ffb3b3;gap:4px;margin-top:12px;margin-bottom:0;padding-left:18px;font-size:13px;font-weight:800;line-height:1.4;display:grid}.admin-ladder-cleanup-panel{border-top:1px solid #ffffff1a;gap:10px;margin-top:14px;padding-top:14px;display:grid}.admin-ladder-cleanup-panel .admin-muted strong{color:var(--text)}.admin-ladder-panel{margin:0 0 36px}.admin-section-heading-band{background:var(--green);color:#05070a;width:auto;margin:18px calc(50% - 50vw) 30px;padding:8px 0;display:block;position:relative}.admin-section-heading-band>div{max-width:768px;margin:0 auto;padding:0 18px}.admin-section-heading-band .admin-muted{color:#05070a;margin:4px 0 0;font-size:14px;line-height:1.3}.admin-section-heading-band h3,.admin-section-heading-band strong{color:#05070a;margin:0;font-size:20px;line-height:1.2;display:block}.admin-ladder-heading{display:block}.admin-ladder-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 18px;display:grid}.admin-ladder-row{border:1px solid var(--border);color:inherit;cursor:pointer;font:inherit;text-align:left;background:#07090cc7;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;width:100%;min-width:0;padding:16px;display:flex}.admin-ladder-row:hover,.admin-ladder-row:focus-visible,.admin-ladder-row.selected{border-color:var(--green);background:#a6ff000d}.admin-ladder-card-main{flex:auto;gap:10px;min-width:0;display:grid}.admin-ladder-row strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:17px;line-height:1.2;display:block;overflow:hidden}.admin-ladder-card-badges{flex-wrap:wrap;gap:6px;display:flex}.admin-ladder-card-badges span{border:1px solid var(--green);color:var(--green);text-transform:uppercase;background:#07090cdb;border-radius:8px;padding:5px 10px;font-size:11px;font-weight:900;line-height:1}.admin-ladder-card-status{border:1px solid var(--border);color:var(--muted);text-transform:uppercase;white-space:nowrap;border-radius:8px;flex:none;padding:8px 14px;font-size:18px;font-weight:900;line-height:1}.admin-ladder-row:not(.selected) .admin-ladder-card-badges span,.admin-ladder-row:not(.selected) .admin-ladder-card-status{opacity:.5}.admin-ladder-card-status.active{border-color:var(--green);color:var(--green)}@media (width<=900px){.admin-ladder-list{grid-template-columns:1fr}.admin-ladder-row{align-items:flex-start}}.admin-new-ladder-form .admin-new-ladder-actions{grid-column:2;justify-content:flex-start;align-self:end;min-width:0}.admin-create-ladder-toggle{width:fit-content;color:var(--green);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:8px;margin:0 0 16px;padding:4px 0;font-size:16px;font-weight:900;line-height:1.2;display:inline-flex}.admin-create-ladder-toggle:hover,.admin-create-ladder-toggle:focus-visible{color:var(--text);text-underline-offset:4px;text-decoration:underline}.admin-create-ladder-toggle svg{flex:none;width:14px;height:14px}.admin-new-ladder-date-row{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0;display:grid}.admin-ladder-type-selects{grid-template-columns:1fr;gap:10px;min-width:0;display:grid}.admin-new-ladder-form .admin-field,.admin-new-ladder-form input,.admin-new-ladder-form select{min-width:0}.admin-new-ladder-form .admin-new-ladder-actions .primary-button{width:100%;min-height:44px;margin-top:0}.admin-secondary-button{border:1px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer;border-radius:8px;padding:12px 14px;font-weight:800}.primary-button.compact{min-height:44px;padding:12px;font-size:15px}.admin-action-grid .primary-button.compact{color:#ffcf66;background:0 0;border:1px solid #ffcf6694;flex:calc(16.6667% - 8.33333px);width:auto;min-width:132px;max-width:190px;min-height:44px;margin-top:0;padding-inline:10px}.admin-action-grid .primary-button.compact:hover,.admin-action-grid .primary-button.compact:focus-visible,.admin-action-grid .primary-button.compact.danger:hover,.admin-action-grid .primary-button.compact.danger:focus-visible{color:#ffcf66;background:#ffcf6614;border-color:#ffcf66}.primary-button.danger{color:#ffb3b3;background:#ff6b6b1f;border:1px solid #ff6b6bb8}.admin-action-grid .primary-button.compact.danger{color:#ffcf66;background:0 0;border-color:#ffcf6694}.primary-button.error-button{color:#fee2e2;background:#7f1d1d73;border-color:#fca5a5}.admin-field{color:var(--green);text-transform:uppercase;flex-direction:column;gap:8px;font-size:12px;font-weight:900;display:flex}.admin-field input,.admin-field select,.admin-field textarea{border:1px solid var(--border);width:100%;min-width:0;color:var(--text);text-transform:none;background:#07090c;border-radius:8px;padding:12px;font-size:15px}.admin-field input,.admin-field select{min-height:52px;line-height:1.2}.admin-field input[type=date]{appearance:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;padding-right:42px}.admin-field input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;filter:invert()brightness(1.35);opacity:1}.admin-date-input{width:100%;min-width:0;display:block;position:relative}.admin-date-input input{max-width:100%;display:block}.admin-date-input svg{width:17px;height:17px;color:var(--green);pointer-events:none;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.admin-date-input input::-webkit-calendar-picker-indicator{color:#0000;opacity:0;background:0 0;width:auto;height:auto;position:absolute;inset:0}.admin-field textarea{resize:vertical;min-height:86px}.admin-choice-field{border:0;margin:0;padding:0}.admin-choice-field legend{color:var(--green);text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:900}.admin-choice-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.admin-choice{border:1px solid var(--border);color:var(--text);text-transform:none;cursor:pointer;background:#07090c;border-radius:8px;align-items:center;gap:9px;min-width:0;padding:10px;font-size:14px;font-weight:800;line-height:1.25;display:flex}.admin-choice input{width:17px;height:17px;accent-color:var(--green);flex:none;margin:0}.admin-choice span{overflow-wrap:anywhere}.admin-choice:has(input:checked){border-color:var(--green);background:var(--green-soft)}.admin-field input[type=checkbox]{width:24px;height:24px;accent-color:var(--green)}.admin-field.locked{opacity:.62}.admin-field.locked input,.admin-field.locked select{cursor:not-allowed}.admin-subsection{border-top:1px solid var(--border);margin-top:18px;padding-top:18px}.admin-subsection h3,.admin-row h3{margin:0 0 8px;font-size:18px;line-height:1.2}.admin-muted{color:var(--muted);margin:0;font-size:14px;line-height:1.4}.admin-tier-row{grid-template-columns:repeat(3,minmax(70px,1fr)) auto;align-items:end;gap:10px;margin-bottom:10px;display:grid}.admin-score-row{grid-template-columns:repeat(4,minmax(82px,1fr)) auto;align-items:end;gap:10px;margin-bottom:10px;display:grid}.admin-tier-row label,.admin-score-row label{color:var(--muted);flex-direction:column;gap:6px;font-size:12px;font-weight:800;display:flex}.admin-score-row label span{overflow-wrap:anywhere}.admin-tier-row input,.admin-tier-row select,.admin-score-row input,.admin-score-row select{border:1px solid var(--border);width:100%;color:var(--text);background:#07090c;border-radius:8px;padding:10px;font-size:15px}.admin-tier-row button,.admin-score-row button{border:1px solid var(--border);background:var(--panel);min-height:42px;color:var(--text);cursor:pointer;border-radius:8px;padding:9px 12px;font-weight:800}.admin-override-row{grid-template-columns:minmax(150px,.6fr) 1.4fr;gap:12px;margin:18px 0;display:grid}.admin-close-blockers{background:#ffcf6614;border:1px solid #ffcf6694;border-radius:8px;gap:12px;margin-bottom:16px;padding:14px;display:grid}.admin-invite-panel{border:1px solid var(--border);background:#111419c7;border-radius:8px;gap:12px;margin-bottom:36px;padding:14px;display:grid}.admin-invite-content{grid-template-columns:minmax(0,1fr) auto;justify-content:space-between;align-items:center;gap:18px 28px;display:grid}.admin-invite-row{grid-template-columns:minmax(0,1fr) auto;gap:10px;display:grid}.admin-invite-row input{border:1px solid var(--border);width:100%;color:var(--text);background:#07090c;border-radius:8px;padding:12px;font-size:14px}.admin-invite-row button{border:1px solid var(--green);color:var(--green);cursor:pointer;background:0 0;border-radius:8px;padding:9px 12px;font-size:13px;font-weight:900}.admin-invite-row button:hover,.admin-invite-row button:focus-visible,.admin-invite-qr a:hover,.admin-invite-qr a:focus-visible{border-color:var(--green);color:var(--green);background:#a6ff0014}.admin-invite-qr{grid-template-columns:132px minmax(0,1fr);align-items:center;gap:12px;display:grid}.admin-invite-qr img{background:#fff;border:8px solid #fff;border-radius:8px;width:132px;height:132px}.admin-invite-qr a{border:1px solid var(--green);color:var(--green);background:0 0;border-radius:8px;justify-self:start;padding:9px 12px;font-size:13px;font-weight:900;text-decoration:none}.admin-close-blockers h3{color:#ffcf66;margin:0 0 6px;font-size:18px;line-height:1.2}.admin-close-blocker-list{gap:8px;display:grid}.admin-close-blocker-row{background:#07090c;border:1px solid #ffcf6642;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.admin-close-blocker-row strong{color:var(--text);font-size:15px;line-height:1.2;display:block}.admin-close-blocker-row p{color:var(--muted);margin:5px 0 0;font-size:13px;line-height:1.35}.admin-close-blocker-row button{color:#ffcf66;cursor:pointer;text-transform:capitalize;background:0 0;border:1px solid #ffcf6694;border-radius:8px;padding:9px 12px;font-size:13px;font-weight:900}.admin-list{flex-direction:column;gap:12px;display:flex}.admin-terminology-panel{flex-direction:column;gap:14px;display:flex}.admin-terminology-intro{border:1px solid var(--border);background:#111419c7;border-radius:8px;padding:14px}.admin-terminology-intro h3{color:var(--green);margin:0 0 6px;font-size:20px;line-height:1.2}.admin-terminology-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.admin-terminology-card{border:1px solid var(--border);background:#111419c7;border-radius:8px;min-width:0;padding:14px}.admin-terminology-card h4{color:var(--green);margin:0 0 12px;font-size:17px;line-height:1.2}.admin-terminology-list{flex-direction:column;gap:10px;display:flex}.admin-terminology-row{border-top:1px solid #ffffff14;padding-top:10px}.admin-terminology-row:first-child{border-top:0;padding-top:0}.admin-terminology-row strong{color:var(--text);font-size:14px;line-height:1.25;display:block}.admin-terminology-row p{color:var(--muted);margin:4px 0 0;font-size:13px;line-height:1.4}.admin-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.admin-summary-item{border:1px solid var(--border);background:#111419c7;border-radius:8px;padding:12px}.admin-summary-item span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800;display:block}.admin-summary-item strong{color:var(--text);margin-top:4px;font-size:28px;line-height:1;display:block}.admin-filter-row{flex-wrap:wrap;gap:8px;display:flex}.admin-filter-row button{border:1px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer;border-radius:8px;padding:9px 12px;font-weight:800}.admin-filter-row button.active{border-color:var(--green);color:var(--green)}.admin-match-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.admin-match-filter-summary{color:var(--text);flex-direction:column;gap:2px;margin-right:auto;display:flex}.admin-match-filter-summary strong{font-size:16px;line-height:1.2}.admin-match-filter-summary span{color:var(--muted);font-size:13px;font-weight:800}.admin-match-toolbar button{width:auto;min-width:150px}.admin-match-toolbar button[hidden]{display:none}.admin-match-toolbar .primary-button.compact{min-height:44px;padding:9px 14px}.admin-row{border:1px solid var(--border);background:#111419c7;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:14px;display:grid}.admin-roster-divider{background:var(--border);height:1px;margin:8px 0}.admin-roster-section,.admin-available-players-section{border:1px solid var(--border);background:#111419c7;border-radius:8px;padding:14px}.admin-subsection-heading{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.admin-subsection-heading h3{color:var(--text);margin:0;font-size:18px;line-height:1.2}.admin-subsection-heading p{color:var(--muted);margin:5px 0 0;font-size:13px;font-weight:700;line-height:1.35}.admin-count-badge{border:1px solid var(--green);min-width:34px;color:var(--green);text-align:center;border-radius:8px;font-size:14px;font-weight:900;line-height:30px}.admin-available-player-list{gap:10px;display:grid}.admin-available-player-row{border:1px solid #ffffff14;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.admin-available-player-row h4{color:var(--text);margin:0;font-size:16px;line-height:1.2}.admin-available-player-row p{color:var(--muted);word-break:break-word;margin:4px 0 0;font-size:13px;font-weight:700;line-height:1.35}.admin-available-player-meta{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.admin-available-player-meta span{border:1px solid var(--border);color:var(--muted);white-space:nowrap;border-radius:8px;padding:5px 8px;font-size:12px;font-weight:800}.admin-row-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.admin-player-row{grid-template-columns:minmax(0,1fr);align-items:stretch}.admin-player-actions{grid-template-columns:repeat(3,minmax(0,1fr));justify-content:stretch;width:100%;display:grid}.admin-player-actions button{white-space:nowrap;min-width:0}.admin-badge{border:1px solid var(--green);color:var(--green);text-transform:uppercase;vertical-align:middle;border-radius:8px;margin-left:8px;padding:3px 7px;font-size:11px;font-weight:900;display:inline-flex}.admin-badge.warning{color:#ffcf66;border-color:#ffcf66}.admin-challenge-row{grid-template-columns:minmax(0,1fr);align-items:stretch}.admin-challenge-info{min-width:0}.admin-challenge-row>.admin-row-actions{border-top:1px solid var(--border);justify-content:flex-start;padding-top:12px}.admin-challenge-row>.admin-row-actions button{white-space:nowrap}.admin-challenge-meta{color:var(--muted);flex-wrap:wrap;gap:6px 12px;margin-top:8px;font-size:13px;line-height:1.4;display:flex}.admin-challenge-resolution{border-left:3px solid var(--green);margin-top:10px;padding-left:10px}.admin-challenge-resolution span{color:var(--green);text-transform:uppercase;font-size:12px;font-weight:900;display:block}.admin-challenge-resolution p{color:var(--muted);margin:3px 0 0}.admin-account-meta,.admin-status-history{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.admin-account-meta span,.admin-status-history span{border:1px solid var(--border);color:var(--muted);border-radius:8px;padding:5px 8px;font-size:12px;font-weight:800}.admin-challenge-action-form,.admin-password-reset-form{border-top:1px solid var(--border);grid-column:1/-1;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:12px;padding-top:14px;display:grid}.admin-challenge-action-form h4,.admin-password-reset-form h4{grid-column:1/-1;margin:0;font-size:16px;line-height:1.2}.admin-form-context{color:var(--muted);grid-column:1/-1;margin:-4px 0 0;font-size:13px;font-weight:800}.admin-challenge-action-form .admin-row-actions,.admin-challenge-score-form .admin-score-row,.admin-challenge-score-form .admin-muted,.admin-challenge-score-form .form-message,.admin-password-reset-form .admin-row-actions,.admin-password-reset-form .form-message{grid-column:1/-1}.admin-impact-warning{color:#ffdf9e;background:#ffce731f;border:1px solid #ffce73;border-radius:8px;grid-column:1/-1;padding:10px 12px;font-size:13px;font-weight:800;line-height:1.35}.admin-impact-warning.compact{margin-top:10px;padding:6px 8px;display:inline-flex}.admin-empty-state{border:1px solid var(--border);color:var(--muted);text-align:center;background:#111419c7;border-radius:8px;padding:16px}.admin-audit-filters{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.admin-diff-list{gap:8px;margin-top:12px;display:grid}.admin-diff-row{border:1px solid var(--border);background:#07090c;border-radius:8px;grid-template-columns:minmax(96px,.34fr) minmax(0,1fr);gap:10px;padding:9px 10px;font-size:13px;line-height:1.35;display:grid}.admin-diff-field{color:var(--green);overflow-wrap:anywhere;font-weight:900}.admin-diff-values{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.admin-diff-values.single{grid-template-columns:1fr}.admin-diff-values div{border-left:1px solid var(--border);gap:3px;padding-left:10px;display:grid}.admin-diff-values span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900}.admin-diff-values strong{color:var(--text);overflow-wrap:anywhere;font-weight:700}.admin-json-details{color:var(--muted);margin-top:12px;font-size:13px}.admin-json-details summary{cursor:pointer;font-weight:800}.admin-json-details pre{border:1px solid var(--border);white-space:pre-wrap;word-break:break-word;background:#07090c;border-radius:8px;max-height:220px;padding:10px;overflow:auto}.playoff-seed-row.outside-field{opacity:.68}.playoff-shape-summary{color:var(--text);background:#bdff3414;border:1px solid #bdff3457;border-radius:8px;margin:0;padding:10px 12px;font-size:15px;font-weight:800;line-height:1.35}.playoff-champion-card{border:1px solid var(--green);background:var(--green-soft);color:var(--text);border-radius:8px;padding:14px}.playoff-champion-card span{color:var(--green);text-transform:uppercase;font-size:12px;font-weight:900;display:block}.playoff-champion-card strong{overflow-wrap:anywhere;margin-top:4px;font-size:20px;line-height:1.2;display:block}.playoff-champion-card p{color:var(--muted);margin:6px 0 0;font-size:13px;line-height:1.35}.playoff-bracket{grid-template-columns:1fr;gap:18px;display:grid}.public-playoff-section{margin-top:34px}.public-playoff-champion{margin-bottom:16px}.public-playoff-bracket .playoff-slot{grid-template-columns:1fr}.public-playoff-meta{color:var(--muted);margin:0;font-size:14px;font-weight:700;line-height:1.35}.public-playoff-report-button{justify-self:start;margin-top:2px}.public-playoff-actions{flex-wrap:wrap;gap:10px;margin-top:2px;display:flex}.playoff-score-note{border-left:3px solid var(--green);color:var(--text);background:#bdff3414;margin:0;padding:10px 12px;font-size:14px;font-weight:800;line-height:1.4}.playoff-round{gap:10px;display:grid}.playoff-round-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:8px;display:flex}.playoff-round-header h3{color:var(--green);margin:0;font-size:20px;line-height:1.2}.playoff-round-header span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900}.playoff-round-matches,.playoff-matchup{border:1px solid var(--border);background:#07090cc7;border-radius:8px}.playoff-round-matches{grid-template-columns:1fr;gap:0;display:grid;overflow:hidden}.playoff-matchup{border:0;border-bottom:1px solid var(--border);border-radius:0;gap:10px;padding:12px;display:grid}.playoff-matchup:last-child{border-bottom:0}.playoff-matchup h4{color:var(--green);margin:0;font-size:16px;line-height:1.2}.playoff-slot{border:1px solid var(--border);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-height:96px;padding:10px;display:grid}.playoff-slot span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800;display:block}.playoff-slot strong{overflow-wrap:anywhere;margin-top:3px;font-size:15px;line-height:1.2;display:block}.playoff-slot p{color:var(--muted);margin:4px 0 0;font-size:12px;line-height:1.35}.playoff-slot button{border:1px solid var(--green);min-width:84px;color:var(--green);cursor:pointer;background:0 0;border-radius:8px;padding:8px 10px;font-weight:900}.playoff-slot.bye{border-color:var(--green);background:var(--green-soft)}.playoff-slot.match-winner{border-color:var(--green)}.playoff-slot.empty{opacity:.72;border-style:dashed}.admin-correction-form{border-top:1px solid var(--border);grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-top:14px;display:grid}.admin-correction-form .admin-tier-row,.admin-correction-form .admin-score-row,.admin-correction-form .admin-inline-error,.admin-correction-form .admin-row-actions{grid-column:1/-1}.admin-row-actions button.error-button{color:#ffb3b3;background:#ff6b6b29;border-color:#ff6b6bb8}.admin-alert{background:#ff6b6b1f;border-radius:8px;margin-bottom:14px;padding:12px 14px}@media (width<=640px){.profile-summary-card{padding:24px}.recent-matches-card{padding:24px 18px}.profile-identity-row{gap:18px;min-height:100px}.profile-summary-card h2{font-size:26px}.profile-summary-card .profile-email{font-size:15px}.profile-avatar-image,.profile-avatar-select{flex-basis:100px;width:100px;height:100px}.profile-avatar-add{width:34px;height:34px;font-size:16px;top:-10px;right:-10px}.avatar-picker-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.recent-match{grid-template-columns:minmax(0,1fr) minmax(92px,auto);gap:14px}.recent-match-result{font-size:16px}.recent-match-impact{font-size:14px}.team-invite-form{grid-template-columns:1fr}.team-invite-form .challenge-button{width:100%}.form-row.two{grid-template-columns:1fr;gap:0}.ladder-row{flex-direction:column;gap:10px}.active-ladder-control{flex:none;width:100%}.join-ladder-form{grid-template-columns:1fr}.admin-row,.admin-available-player-row{grid-template-columns:1fr;align-items:stretch}.admin-available-player-meta{justify-content:flex-start}.admin-ladder-snapshot-columns{grid-template-columns:1fr;align-items:stretch}.admin-close-blocker-row{grid-template-columns:1fr}.admin-row-actions{justify-content:flex-start}.admin-summary-grid,.admin-ladder-snapshot-grid,.admin-audit-filters,.admin-challenge-action-form{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-new-ladder-form{gap:12px;overflow:hidden}.admin-new-ladder-date-row{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-new-ladder-form .admin-field,.admin-new-ladder-form input,.admin-new-ladder-form select,.admin-ladder-type-selects{max-width:100%}.admin-tier-row,.admin-score-row{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-invite-content,.admin-invite-row,.admin-invite-qr{grid-template-columns:1fr}.admin-tier-row button,.admin-score-row button{grid-column:1/-1}}@media (width<=420px){.profile-summary-card{padding:20px}.recent-matches-card{padding:20px 14px}.profile-identity-row{gap:14px;min-height:82px}.profile-summary-card h2{font-size:22px}.profile-summary-card .profile-email{font-size:13px}.profile-avatar-image,.profile-avatar-select{flex-basis:82px;width:82px;height:82px}.profile-discipline-performance h3{font-size:18px}.profile-discipline-metrics strong{font-size:28px}.profile-discipline-metrics span{font-size:11px}.avatar-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.recent-match{grid-template-columns:minmax(0,1fr) auto;gap:10px}.recent-match-result{font-size:15px}.recent-match-impact{font-size:13px}.auth-shell{padding:max(20px, env(safe-area-inset-top)) 18px max(20px, env(safe-area-inset-bottom))}.auth-logo{width:230px;margin-bottom:22px}.auth-card{padding:22px}.standings-hero{gap:12px;padding-bottom:20px}.standings-page-heading{font-size:39px}.standings-ladder-name{font-size:15px}.club-badge{min-width:112px;padding:18px 12px}.club-badge-primary{font-size:26px}.club-badge-secondary{font-size:14px}.player-top{grid-template-columns:62px 68px minmax(0,1fr);gap:10px}.playoff-bracket{grid-template-columns:1fr}.rank-box{width:62px;height:62px}.player-icon{width:68px;height:68px;font-size:30px}.player-name{font-size:22px}.page-title{font-size:34px}.admin-selected-ladder-card,.admin-row,.admin-override-row{flex-direction:column;grid-template-columns:1fr;align-items:stretch}.admin-selected-ladder-card{gap:14px;padding:18px}.admin-selected-ladder-card h2{font-size:32px}.admin-ladder-meta-badges span,.admin-status{padding:8px 10px;font-size:12px;line-height:1.1}.admin-status-block{text-align:left;align-items:flex-start}.admin-player-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-settings-grid,.admin-new-admin-form,.admin-new-ladder-form,.admin-new-player-form,.admin-ladder-player-form,.admin-correction-form,.admin-summary-grid,.admin-challenge-action-form,.admin-password-reset-form,.admin-terminology-grid,.admin-audit-filters,.admin-ladder-list,.admin-diff-row,.playoff-bracket,.admin-score-row{grid-template-columns:1fr}.admin-new-ladder-form .admin-new-ladder-actions{grid-column:1}.admin-new-ladder-date-row{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-diff-values{grid-template-columns:1fr}}
