@media (max-width:768px){.error-boundary-fallback{margin:.5rem;padding:1rem}.error-content{max-width:100%}.navigation-error-fallback{min-height:200px;padding:1rem}.navigation-error-fallback .error-icon{font-size:2rem}.navigation-error-fallback h3{font-size:1.125rem}}@keyframes errorFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.navigation-menu.theme-light,.navigation-menu.theme-dark{background:linear-gradient(180deg, var(--nav-bg-color) 0%, var(--nav-surface-color) 100%)}.menu-item:first-child .menu-item-content,.menu-item:first-child{margin-top:0}@media (max-width:768px){.navigation-menu{z-index:200;width:250px;max-width:250px;height:100vh;transition:transform .3s;position:fixed;top:0;left:0;transform:translate(0)}.navigation-menu.closed{transform:translate(-100%);width:250px!important;min-width:250px!important;max-width:250px!important}.navigation-menu.open .menu-label{display:inline}.navigation-menu .nav-toggle-container{display:none}.menu-header{justify-content:space-between;align-items:center;display:flex}.menu-header h2{margin:0}.role-indicator{justify-content:flex-end}.navigation-menu.open:before{content:"";z-index:-1;background:rgba(0,0,0,.4);width:calc(100vw - 250px);height:100vh;position:fixed;top:0;left:250px}}@media (min-width:769px){.navigation-menu{transition:width .3s,min-width .3s;position:relative}.navigation-menu.closed{width:60px!important;min-width:60px!important}}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-.5rem)}to{opacity:1;transform:translateY(0)}}@keyframes dots{0%,20%{content:""}40%{content:"."}60%{content:".."}80%,to{content:"..."}}@media (min-width:768px){.roster-grid-improved{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}}@media (min-width:1024px){.roster-grid-improved{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.25rem}}@media (min-width:1200px){.roster-grid-improved{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.25rem}}@media (min-width:1400px){.roster-grid-improved{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.25rem}}@media (min-width:1600px){.roster-grid-improved{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1.25rem}}@media (min-width:1920px){.roster-grid-improved{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.25rem}}@media (max-width:768px){.roster-desktop-only{display:none}.roster-mobile-cards{flex-direction:column;gap:.75rem;display:flex}.roster-card{background:var(--bg-secondary);border:1px solid var(--border-color,#e0e0e0);border-radius:10px;padding:1rem;transition:box-shadow .2s}.roster-card:active{box-shadow:0 2px 8px rgba(0,0,0,.12)}.roster-card-header{border-bottom:1px solid var(--border-color,#e0e0e0);justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.5rem;display:flex}.roster-card-name{color:var(--text-primary);font-size:1rem;font-weight:600}.roster-card-details{flex-direction:column;gap:.4rem;margin-bottom:.75rem;display:flex}.roster-card-row{justify-content:space-between;align-items:center;font-size:.875rem;display:flex}.roster-card-label{color:var(--text-secondary);font-size:.8rem}.roster-card-value{color:var(--text-primary);text-align:right}a.roster-card-value{color:var(--button-primary,#3b82f6);text-decoration:none}.roster-card-actions{border-top:1px solid var(--border-color,#e0e0e0);gap:.5rem;padding-top:.5rem;display:flex}.roster-card-actions .btn{flex:1}}.users-table .col-role,.users-table .col-status{text-align:left}@media (max-width:768px){.users-table{background:0 0;border:none;border-radius:0;overflow:visible}.users-table .table-header{display:none}.users-table .table-row{border:1px solid var(--border-color,#e0e0e0);background:var(--bg-secondary,#fff);border-radius:8px;flex-direction:column;gap:.5rem;margin-bottom:.75rem;padding:1rem;display:flex}.users-table .table-row:hover{border-color:var(--button-primary)}.users-table .table-row .col-name{border-bottom:1px solid var(--border-color,#e0e0e0);padding-bottom:.5rem}.users-table .table-row .col-id{font-size:.75rem}.users-table .table-row .col-id .user-id{word-break:break-all;font-size:.7rem}.users-table .table-row .col-role,.users-table .table-row .col-status,.users-table .table-row .col-last-login{align-items:center;gap:.5rem;display:flex}.users-table .table-row .col-role:before{content:"Role:";color:var(--text-secondary);min-width:70px;font-size:.75rem}.users-table .table-row .col-status:before{content:"Status:";color:var(--text-secondary);min-width:70px;font-size:.75rem}.users-table .table-row .col-last-login:before{content:"Last Login:";color:var(--text-secondary);min-width:70px;font-size:.75rem}.users-table .table-row .col-actions{border-top:1px solid var(--border-color,#e0e0e0);flex-direction:row;padding-top:.5rem}.users-table .table-row .col-actions .btn{flex:1}}.players-table .col-status,.players-table .col-jersey{text-align:left}@media (max-width:768px){.players-table{background:0 0;border:none;border-radius:0;overflow:visible}.players-table .table-header{display:none}.players-table .table-row{border:1px solid var(--border-color,#e0e0e0);background:var(--bg-secondary,#fff);border-radius:8px;flex-direction:column;gap:0;margin:.5rem 0;padding:0;display:flex;overflow:hidden}.players-table .table-row:hover{border-color:var(--button-primary)}.players-table .table-row .col-name{order:1;padding:.75rem 1rem .5rem}.players-table .table-row .col-name .player-name-link{font-size:1.05rem;font-weight:600}.players-table .table-row .col-id{border-bottom:1px solid var(--border-color,#e0e0e0);order:2;padding:0 1rem .5rem;font-size:.7rem}.players-table .table-row .col-id .user-id{word-break:break-all;font-size:.65rem}.players-table .table-row .col-role,.players-table .table-row .col-jersey,.players-table .table-row .col-bats-throws,.players-table .table-row .col-height-weight{padding:.4rem 1rem}.players-table .table-row .col-role{order:3;align-items:center;gap:.5rem;padding-top:.6rem;display:flex}.players-table .table-row .col-jersey{order:4;align-items:center;gap:.5rem;display:flex}.players-table .table-row .col-bats-throws{order:5;align-items:center;gap:0;font-size:.85rem;display:flex}.players-table .table-row .col-height-weight{order:6;align-items:center;gap:0;font-size:.85rem;display:flex}.players-table .table-row .col-status{order:7;align-items:center;gap:.5rem;padding:.4rem 1rem;display:flex}.players-table .table-row .col-role:before{content:"Position:";color:var(--text-secondary);min-width:70px;font-size:.75rem}.players-table .table-row .col-jersey:before{content:"Jersey #:";color:var(--text-secondary);min-width:70px;font-size:.75rem}.players-table .table-row .col-status:before{content:"Status:";color:var(--text-secondary);min-width:70px;font-size:.75rem}.players-table .table-row .col-bats-throws .player-detail-label,.players-table .table-row .col-height-weight .player-detail-label{color:var(--text-secondary);font-size:.75rem}.players-table .table-row .col-actions{border-top:1px solid var(--border-color,#e0e0e0);flex-direction:row;order:8;padding:.6rem 1rem}.players-table .table-row .col-actions .btn{flex:1}.parent-association-row{flex-direction:column!important;align-items:flex-start!important}.parent-association-row .btn{width:100%;margin-top:.25rem}.team-association-card{padding:.5rem!important}}.schedule-practices-form-grid input,.schedule-practices-form-grid select,.schedule-practices-form-grid textarea{border:1px solid var(--border-color);background:var(--bg-primary);width:100%;color:var(--text-primary);border-radius:6px;padding:.5rem .75rem;font-size:.875rem}.schedule-practices-form-actions{border-top:1px solid var(--border-color);grid-template-columns:1.5fr 1.2fr 1.5fr 1.5fr 1fr 1fr;align-items:center;gap:.5rem;margin-top:.25rem;padding:.75rem 1rem 0;display:grid}@media (max-width:768px){.form-row{flex-direction:column;gap:.5rem}.modal{max-width:none;margin:1rem}.modal-header,.modal-content,.modal-actions{padding-left:1rem;padding-right:1rem}}@media (max-width:768px){.pagination-controls{text-align:center;flex-direction:column;gap:1rem}.pagination-buttons{flex-wrap:wrap;justify-content:center}.pagination-buttons .btn{min-width:50px;padding:.375rem .5rem;font-size:.8rem}}.roster-table .role-cell,.roster-table .actions-cell{text-align:left}@media (max-width:1024px){.teams-table .table-header,.teams-table .table-row{grid-template-columns:2fr 1fr 1fr 1fr 1.5fr}}@media (max-width:768px){.teams-table .table-header,.teams-table .table-row{grid-template-columns:1fr;gap:.5rem}.teams-table .table-header span,.teams-table .table-row span{border-bottom:1px solid var(--border-color);text-align:left;padding:.25rem 0}.teams-table .table-header span:before{content:attr(data-label) ": ";font-weight:700}.roster-table .table-header{display:none}.roster-table .table-row{border-bottom:1px solid var(--border-color);flex-direction:column;gap:.5rem;padding:1rem;display:flex}.roster-table .table-row span{text-align:left;padding:.25rem 0}.roster-table .email-cell{word-break:break-all;overflow-wrap:break-word}.roster-table .table-actions{justify-content:flex-start}.roster-table .table-actions .btn{flex:none;width:auto}}@media (max-width:768px){.profile-header-large{flex-direction:column;align-items:flex-start;gap:1rem;padding:1.5rem}.player-name-section{flex-direction:column;align-items:flex-start}.info-grid{grid-template-columns:1fr}.profile-actions{flex-direction:column}.section-header{flex-direction:column;align-items:flex-start;gap:1rem}.player-selector{width:100%}}@media (max-width:767px){.profile-detail-view{padding:0}.profile-card-large .profile-header-large{flex-direction:column;align-items:stretch;gap:1rem;padding:1.25rem}.profile-card-large .player-name-section{flex-wrap:wrap;width:100%}.profile-card-large .player-name-section h2{word-break:break-word;font-size:1.35rem}.profile-card-large .player-meta,.profile-card-large .profile-header-large>div:last-child{flex-direction:column;width:100%!important;min-width:0!important}.profile-card-large .player-meta>div{width:100%!important;min-width:0!important}.profile-card-large .profile-header-large select,.profile-card-large .player-selector{box-sizing:border-box;width:100%;min-width:0;padding:.625rem .875rem;font-size:.9rem}.profile-card-large .profile-content-large{padding:1rem}.profile-card-large .profile-section{margin-bottom:1.5rem}.profile-card-large .profile-section h4{margin-bottom:.875rem;font-size:1rem}.profile-card-large .info-grid{grid-template-columns:1fr;gap:.75rem}.profile-card-large .info-item{border-bottom:1px solid var(--border-color,#e0e0e0);flex-direction:row;justify-content:space-between;align-items:baseline;gap:.5rem;padding-bottom:.5rem}.profile-card-large .info-item:last-child{border-bottom:none;padding-bottom:0}.profile-card-large .info-label{flex-shrink:0;font-size:.75rem}.profile-card-large .info-value{text-align:right;word-break:break-word;overflow-wrap:break-word;font-size:.9rem}.contacts-list,.coaches-list{flex-direction:column;gap:1rem;display:flex}.contact-card{padding:.875rem}.contact-header{flex-wrap:wrap;gap:.5rem}.contact-header strong{word-break:break-word;font-size:.95rem}.contact-item{font-size:.85rem;overflow:hidden}.contact-item a,.contact-item span{word-break:break-all;overflow-wrap:break-word;min-width:0}.primary-badge,.assistant-badge,.manager-badge,.relationship-badge{margin-left:0;padding:.2rem .5rem;font-size:.65rem}.profile-card-large .profile-section>div[style*="display: flex"]{flex-direction:column!important;gap:.75rem!important}.profile-card-large .profile-section .btn{text-align:center;width:100%}.btn-extended-profile{width:100%}.profile-card-large .status-badge{padding:.2rem .5rem;font-size:.7rem}.profile-card-large .profile-section>div[style*=marginBottom]{margin-bottom:1.25rem!important}.profile-card-large .profile-section h5{font-size:.875rem;margin-bottom:.625rem!important}}@media (min-width:768px) and (max-width:1024px){.profile-card-large .profile-header-large{gap:1.25rem;padding:1.75rem}.profile-card-large .player-name-section h2{font-size:1.75rem}.profile-card-large .profile-header-large>div:last-child{min-width:280px}.profile-card-large .profile-header-large select{padding:.5rem .875rem;font-size:.95rem}.profile-card-large .profile-content-large{padding:1.75rem}.profile-card-large .profile-section{margin-bottom:1.75rem}.profile-card-large .profile-section h4{font-size:1.05rem}.profile-card-large .info-grid{grid-template-columns:repeat(2,1fr);gap:1.25rem}.profile-card-large .profile-section>div[style*="display: flex"]{flex-wrap:wrap;gap:.625rem!important}.profile-card-large .profile-section .btn{flex:calc(50% - .3125rem);min-width:140px}.profile-card-large .info-label{font-size:.8rem}.profile-card-large .info-value{font-size:.95rem}.profile-card-large .profile-section h5{font-size:.9rem}}@media (min-width:1025px) and (max-width:1280px){.profile-card-large .profile-header-large,.profile-card-large .profile-content-large{padding:1.875rem}.profile-card-large .info-grid{grid-template-columns:repeat(3,1fr);gap:1.375rem}.profile-card-large .profile-section .btn{flex:calc(33.333% - .375rem);min-width:120px}}.billing-stat-overdue,.billing-stat-owed{color:var(--status-error)!important}@media (max-width:1200px){.accounts-table .table-header,.accounts-table .table-row{grid-template-columns:1.5fr 1.2fr 1fr 1fr 1fr .8fr 1.5fr;font-size:.85rem}.transactions-table .table-header,.transactions-table .table-row{grid-template-columns:1fr 1.5fr .8fr 1fr 1fr 2fr;font-size:.85rem}}@media (max-width:768px){.billing-stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem}.billing-stats .stat-card{padding:1rem}.billing-stats .stat-value{font-size:1.5rem}.view-toggle{width:100%}.view-toggle .btn{flex:1}.accounts-table .table-header{display:none}.accounts-table .table-row{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;flex-direction:column;gap:.25rem;margin-bottom:.75rem;padding:1rem;display:flex}.accounts-table .table-row>div{border-bottom:none;justify-content:space-between;align-items:center;padding:.25rem 0;display:flex}.accounts-table .table-row>div:before{color:var(--text-secondary);text-transform:uppercase;min-width:100px;font-size:.75rem;font-weight:600}.accounts-table .col-team:before{content:"Team:"}.accounts-table .col-balance:before{content:"Balance:"}.accounts-table .col-total-paid:before{content:"Paid:"}.accounts-table .col-total-owed:before{content:"Owed:"}.accounts-table .col-last-payment:before{content:"Last Payment:"}.accounts-table .col-status:before{content:"Status:"}.accounts-table .col-actions:before{content:none}.accounts-table .col-actions{border-top:1px solid var(--border-color);flex-direction:row;justify-content:stretch;margin-top:.25rem;padding-top:.5rem}.accounts-table .col-actions .btn{flex:1}.transactions-table .table-header{display:none}.transactions-table .table-row{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;flex-direction:column;gap:.25rem;margin-bottom:.75rem;padding:1rem;display:flex}.transactions-table .table-row>div{border-bottom:none;justify-content:space-between;align-items:center;padding:.25rem 0;display:flex}.transactions-table .table-row>div:before{color:var(--text-secondary);text-transform:uppercase;min-width:100px;font-size:.75rem;font-weight:600}.transactions-table .col-date:before{content:"Date:"}.transactions-table .col-team:before{content:"Team:"}.transactions-table .col-type:before{content:"Type:"}.transactions-table .col-amount:before{content:"Amount:"}.transactions-table .col-method:before{content:"Method:"}.transactions-table .col-description:before{content:"Description:"}}@media (max-width:1200px){.reports-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}}@media (max-width:768px){.reports-grid{grid-template-columns:1fr;gap:1rem}.report-card{padding:1.25rem}.report-header{text-align:left;flex-direction:column;align-items:flex-start}.report-icon{width:50px;height:50px;font-size:2rem}.report-actions{flex-direction:column}.report-actions .btn{width:100%}}@media (max-width:1024px){.setting-item{grid-template-columns:1fr;gap:1rem}.setting-control{min-width:100%}}@media (max-width:768px){.settings-sections{gap:1.5rem}.settings-category{padding:1.25rem}.settings-category h4{font-size:1.125rem}.setting-item{padding:1rem}.settings-actions-bar{flex-direction:column;align-items:stretch;gap:1rem}.settings-actions-bar .actions{flex-direction:column}.settings-actions-bar .actions .btn{width:100%}}@media (max-width:1400px){.impersonation-table .table-header,.impersonation-table .table-row{grid-template-columns:1.3fr 1.3fr 1.8fr 1.2fr 1.2fr .7fr .7fr;font-size:.85rem}}@media (max-width:1024px){.impersonation-table .table-header,.impersonation-table .table-row{grid-template-columns:1.2fr 1.2fr 1.5fr 1fr 1fr .8fr;gap:.75rem}.impersonation-table .col-duration{display:none}}@media (max-width:768px){.impersonation-table .table-header{display:none}.impersonation-table .table-row{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:8px;grid-template-columns:1fr;gap:.25rem;margin-bottom:.75rem;padding:1rem}.impersonation-table .table-row:hover{background:var(--bg-tertiary)}.impersonation-table .table-row>div{padding:.25rem 0}.impersonation-table .col-reason:before,.impersonation-table .col-started:before,.impersonation-table .col-ended:before,.impersonation-table .col-duration:before,.impersonation-table .col-status:before{color:var(--text-secondary);text-transform:uppercase;margin-bottom:.125rem;font-size:.75rem;font-weight:600;display:block}.impersonation-table .col-reason:before{content:"Reason"}.impersonation-table .col-started:before{content:"Started"}.impersonation-table .col-ended:before{content:"Ended"}.impersonation-table .col-duration{display:block}.impersonation-table .col-duration:before{content:"Duration"}.impersonation-table .col-status:before{content:"Status"}.impersonation-table .col-impersonator,.impersonation-table .col-target{gap:.125rem}}@media (max-width:768px){.testing-metrics-table{font-size:.85rem}.testing-metrics-table thead th,.testing-metrics-table tbody td{padding:.75rem 1rem}.percentile-badge{width:40px;height:40px;font-size:.9rem}}@media (max-width:480px){.testing-metrics-table-container{margin-left:-1rem;margin-right:-1rem}.testing-metrics-table{border-left:none;border-right:none;border-radius:0}.testing-metrics-table thead th,.testing-metrics-table tbody td{padding:.625rem .75rem;font-size:.8rem}.percentile-badge{width:36px;height:36px;font-size:.85rem}}@media (max-width:1200px){.charts-grid{grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}}@media (max-width:768px){.charts-grid{grid-template-columns:1fr;gap:1.5rem}.metric-chart-container{padding:1rem}.chart-title{font-size:.95rem}.testing-charts-container{margin-top:2rem;padding-top:1.5rem}.charts-section-title{margin-bottom:1rem;font-size:1.1rem}}@media (max-width:480px){.charts-grid{gap:1rem}.metric-chart-container{border-radius:6px;padding:.75rem}.chart-title{margin-bottom:.75rem;padding-bottom:.5rem;font-size:.9rem}}@media (max-width:768px){.card-section{padding:1.25rem}.section-title{font-size:1rem}.record-display{gap:1.5rem}.record-stat{min-width:100px}.record-stat .stat-value{font-size:1.25rem}.stats-list{gap:1.5rem}.stats-list .stat-item{min-width:100px}.stats-list .stat-value{font-size:1.25rem}}@media (max-width:480px){.card-section{padding:1rem}.section-title{padding-bottom:.5rem;font-size:.95rem}.record-display{flex-direction:column;gap:1rem}.record-stat{min-width:auto}.record-stat .stat-value{font-size:1.125rem}.stats-list{flex-direction:column;gap:1rem}.stats-list .stat-item{min-width:auto}.stats-list .stat-value{font-size:1.125rem}.section-note{padding:.625rem .875rem;font-size:.8rem}}@media (max-width:768px){.metric-chart-container{padding:1rem}.metric-chart-container .chart-header{flex-direction:column;align-items:flex-start;gap:.5rem}.metric-chart-container .chart-title{font-size:.95rem}.metric-chart-container .chart-percentile{font-size:.85rem}}@media (max-width:480px){.metric-chart-container{border-radius:6px;padding:.75rem}.metric-chart-container .chart-title{font-size:.9rem}.metric-chart-container .chart-percentile{padding:.2rem .6rem;font-size:.8rem}.metric-chart-container .chart-empty-state{padding:2rem 1rem}}@media (max-width:480px){.action-buttons-grid{flex-direction:column}.action-buttons-grid .btn{width:100%}}@media (max-width:1024px){.team-management-grid,.team-management-grid.with-admin{grid-template-columns:1fr}}@media (max-width:768px){.manage-players-table{background:0 0;border:none;overflow:visible}.manage-players-header{display:none}.manage-players-row{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:8px;flex-direction:column;gap:.4rem;margin-bottom:.75rem;padding:1rem;display:flex}.manage-players-row .player-name{border-bottom:1px solid var(--border-color);padding-bottom:.5rem;font-size:1rem}.manage-players-row>span:nth-child(2){align-items:center;gap:.5rem;display:flex}.manage-players-row>span:nth-child(2):before{content:"Jersey:";color:var(--text-secondary);min-width:60px;font-size:.75rem}.manage-players-row>span:nth-child(3){align-items:center;gap:.5rem;display:flex}.manage-players-row>span:nth-child(3):before{content:"Position:";color:var(--text-secondary);min-width:60px;font-size:.75rem}.manage-players-row>span:nth-child(4){border-top:1px solid var(--border-color);padding-top:.5rem}.manage-players-assign-row{flex-direction:column;align-items:stretch}.manage-players-field{min-width:unset}.manage-players-assign-btn{align-self:stretch}.manage-coaches-table{background:0 0;border:none;overflow:visible}.manage-coaches-header{display:none}.manage-coaches-row{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:8px;flex-direction:column;gap:.4rem;margin-bottom:.75rem;padding:1rem;display:flex}.manage-coaches-row .coach-name{border-bottom:1px solid var(--border-color);padding-bottom:.5rem;font-size:1rem}.manage-coaches-row>span:nth-child(2){align-items:center;gap:.5rem;display:flex}.manage-coaches-row>span:nth-child(2):before{content:"Email:";color:var(--text-secondary);min-width:50px;font-size:.75rem}.manage-coaches-row .coach-email{word-break:break-all}.manage-coaches-row>span:nth-child(3){align-items:center;gap:.5rem;display:flex}.manage-coaches-row>span:nth-child(3):before{content:"Role:";color:var(--text-secondary);min-width:50px;font-size:.75rem}.manage-coaches-row>span:nth-child(4){border-top:1px solid var(--border-color);padding-top:.5rem}.manage-coaches-assign-row{flex-direction:column;align-items:stretch}.manage-coaches-field{min-width:unset}.manage-coaches-assign-btn{align-self:stretch}.schedule-practices-table{background:0 0;border:none;overflow:visible}.schedule-practices-header{display:none}.schedule-practices-row{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:8px;flex-direction:column;gap:.4rem;margin-bottom:.75rem;padding:1rem;display:flex}.schedule-practices-row>span:first-child{border-bottom:1px solid var(--border-color);padding-bottom:.5rem;font-size:.95rem;font-weight:600}.schedule-practices-row>span:nth-child(2){align-items:center;gap:.5rem;display:flex}.schedule-practices-row>span:nth-child(2):before{content:"Date:";color:var(--text-secondary);min-width:60px;font-size:.75rem}.schedule-practices-row>span:nth-child(3){align-items:center;gap:.5rem;display:flex}.schedule-practices-row>span:nth-child(3):before{content:"Time:";color:var(--text-secondary);min-width:60px;font-size:.75rem}.schedule-practices-row>span:nth-child(4){align-items:center;gap:.5rem;display:flex}.schedule-practices-row>span:nth-child(4):before{content:"Location:";color:var(--text-secondary);min-width:60px;font-size:.75rem}.schedule-practices-row>span:nth-child(5){align-items:center;gap:.5rem;display:flex}.schedule-practices-row>span:nth-child(5):before{content:"Status:";color:var(--text-secondary);min-width:60px;font-size:.75rem}.schedule-practices-row>span:last-child{border-top:1px solid var(--border-color);flex-direction:row;padding-top:.5rem}.schedule-practices-form-grid{grid-template-columns:1fr!important;padding:0!important}.schedule-practices-form-actions{flex-wrap:wrap;padding:.75rem 0 0!important}.attendance-table{background:0 0;border:none;overflow:visible}.attendance-table thead{display:none}.attendance-table tbody tr{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:8px;flex-direction:column;gap:.3rem;margin-bottom:.5rem;padding:.75rem 1rem;display:flex}.attendance-table tbody tr td{border-bottom:none;padding:0}.attendance-table tbody tr td:first-child{border-bottom:1px solid var(--border-color);padding-bottom:.4rem;font-size:.95rem;font-weight:600}.attendance-table tbody tr td:nth-child(2):before{content:"Jersey: ";color:var(--text-secondary);font-size:.75rem}.attendance-table tbody tr td:nth-child(3):before{content:"P Late: ";color:var(--text-secondary);font-size:.75rem}.attendance-table tbody tr td:nth-child(4):before{content:"P Present: ";color:var(--text-secondary);font-size:.75rem}.attendance-table tbody tr td:nth-child(5):before{content:"P Absent: ";color:var(--text-secondary);font-size:.75rem}.attendance-table tbody tr td:nth-child(6):before{content:"P Excused: ";color:var(--text-secondary);font-size:.75rem}.attendance-table tbody tr td:nth-child(7):before{content:"G Late: ";color:var(--text-secondary);font-size:.75rem}.attendance-table tbody tr td:nth-child(8):before{content:"G Present: ";color:var(--text-secondary);font-size:.75rem}.attendance-table tbody tr td:nth-child(9):before{content:"G Absent: ";color:var(--text-secondary);font-size:.75rem}.attendance-table tbody tr td:nth-child(10):before{content:"G Excused: ";color:var(--text-secondary);font-size:.75rem}.schedule-games-table{background:0 0;border:none;overflow:visible}.schedule-games-header{display:none}.schedule-games-row{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:8px;flex-direction:column;gap:.4rem;margin-bottom:.75rem;padding:1rem;display:flex}.schedule-games-row>span:first-child{align-items:center;gap:.5rem;display:flex}.schedule-games-row>span:nth-child(2){border-bottom:1px solid var(--border-color);padding-bottom:.5rem;font-size:.95rem;font-weight:600}.schedule-games-row>span:nth-child(2):before{content:"vs ";color:var(--text-secondary);font-weight:400}.schedule-games-row>span:nth-child(3){align-items:center;gap:.5rem;display:flex}.schedule-games-row>span:nth-child(3):before{content:"Date:";color:var(--text-secondary);min-width:60px;font-size:.75rem}.schedule-games-row>span:nth-child(4){align-items:center;gap:.5rem;display:flex}.schedule-games-row>span:nth-child(4):before{content:"Time:";color:var(--text-secondary);min-width:60px;font-size:.75rem}.schedule-games-row>span:nth-child(5){align-items:center;gap:.5rem;display:flex}.schedule-games-row>span:nth-child(5):before{content:"Location:";color:var(--text-secondary);min-width:60px;font-size:.75rem}.schedule-games-row>span:nth-child(6){align-items:center;gap:.5rem;display:flex}.schedule-games-row>span:nth-child(6):before{content:"Status:";color:var(--text-secondary);min-width:60px;font-size:.75rem}.schedule-games-row>span:nth-child(7){border-top:1px solid var(--border-color);padding-top:.5rem}.schedule-games-form-grid{grid-template-columns:1fr!important}.team-history-table{background:0 0;border:none;overflow:visible}.team-history-header{display:none}.team-history-row{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:8px;flex-direction:column;gap:.4rem;margin-bottom:.75rem;padding:1rem;display:flex}.team-history-row>span:first-child{border-bottom:1px solid var(--border-color);padding-bottom:.5rem;font-weight:600}}@media (max-width:768px){.filter-buttons{gap:.25rem;margin-bottom:1rem;padding:.75rem 0}.filter-button{gap:.375rem;padding:.5rem .75rem;font-size:.8125rem}.filter-button-icon{font-size:.875rem}}@media (max-width:480px){.filter-buttons{flex-wrap:wrap;gap:.375rem}.filter-button{flex:1;justify-content:center;min-width:calc(50% - .1875rem);padding:.625rem .5rem}}@media (prefers-contrast:high){.filter-button{border-width:2px}.filter-button.active{border-width:3px}}@media (prefers-reduced-motion:reduce){.filter-button{transition:none}.filter-button:hover,.filter-button:active{transform:none}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.testing-view{width:100%;padding:1rem;animation:.3s ease-in fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.testing-view-header{border-bottom:1px solid var(--border-color);margin-bottom:1.5rem;padding-bottom:1rem}.testing-view-title{color:var(--text-primary);margin:0 0 .5rem;font-size:1.5rem;font-weight:600}.testing-view-description{color:var(--text-secondary);margin:0;font-size:.875rem;line-height:1.5}.testing-view-content{flex-direction:column;gap:2rem;display:flex}.metric-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:1.5rem;transition:box-shadow .2s}.metric-section:hover{box-shadow:0 2px 8px rgba(0,0,0,.1)}.metric-section-title{color:var(--text-primary);border-bottom:2px solid var(--primary-color);margin:0 0 1rem;padding-bottom:.75rem;font-size:1.125rem;font-weight:600}.metric-charts-grid{grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:1.5rem;max-width:100%;display:grid}.metric-charts-grid:has(.metric-chart-wrapper:only-child){grid-template-columns:minmax(500px,600px)}.metric-chart-wrapper{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;padding:1rem;transition:all .2s}.metric-chart-wrapper:hover{border-color:var(--border-hover);box-shadow:0 2px 4px rgba(0,0,0,.05)}.metric-chart-container{width:100%;min-height:420px}.chart-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.5rem;display:flex}.chart-title{color:var(--text-primary);margin:0;font-size:1rem;font-weight:600}.chart-percentile{color:var(--primary-color);background:rgba(66,133,244,.1);border-radius:12px;padding:.25rem .75rem;font-size:.875rem;font-weight:500}.testing-view-empty{text-align:center;background:var(--bg-secondary);border:1px dashed var(--border-color);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;min-height:300px;padding:4rem 2rem;display:flex}.testing-view-empty h3{color:var(--text-primary);margin:0 0 .5rem;font-size:1.25rem;font-weight:600}.testing-view-empty p{color:var(--text-secondary);max-width:400px;margin:0;font-size:.875rem}.testing-view-loading{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:300px;padding:4rem 2rem;display:flex}.loading-spinner{border:4px solid var(--border-color);border-top:4px solid var(--primary-color);border-radius:50%;width:48px;height:48px;margin-bottom:1rem;animation:1s linear infinite spin}.testing-view-loading p{color:var(--text-secondary);margin:0;font-size:.875rem}.testing-view-error{text-align:center;background:rgba(239,68,68,.05);border:1px solid rgba(239,68,68,.2);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;min-height:300px;padding:4rem 2rem;display:flex}.testing-view-error h3{color:var(--text-primary);margin:0 0 .5rem;font-size:1.25rem;font-weight:600}.testing-view-error p{color:var(--text-secondary);max-width:500px;margin:0;font-size:.875rem}.chart-empty-state{background:var(--bg-secondary);border:1px dashed var(--border-color);border-radius:6px;justify-content:center;align-items:center;min-height:250px;display:flex}.chart-empty-state p{color:var(--text-muted);margin:0;font-size:.875rem}@media (max-width:1024px){.metric-charts-grid{grid-template-columns:1fr}}@media (max-width:768px){.testing-view{padding:.75rem}.testing-view-header{margin-bottom:1rem}.testing-view-title{font-size:1.25rem}.testing-view-description{font-size:.8125rem}.testing-view-content{gap:1.5rem}.metric-section{padding:1rem}.metric-section-title{font-size:1rem}.metric-charts-grid{grid-template-columns:1fr;gap:1rem}.metric-chart-wrapper{padding:.75rem}.chart-header{flex-direction:column;align-items:flex-start;gap:.5rem}.chart-percentile{font-size:.8125rem}}@media (max-width:480px){.testing-view{padding:.5rem}.metric-section{border-radius:6px;padding:.75rem}.metric-chart-container{min-height:300px}.testing-view-empty,.testing-view-loading,.testing-view-error{min-height:250px;padding:3rem 1rem}.empty-icon,.error-icon{font-size:3rem}}[data-theme=light] .metric-section{background:#fff}[data-theme=light] .metric-chart-wrapper{background:#f9fafb}[data-theme=light] .chart-percentile{color:#4285f4;background:rgba(66,133,244,.12)}[data-theme=dark] .metric-section{background:var(--bg-secondary)}[data-theme=dark] .metric-chart-wrapper{background:var(--bg-primary)}@media (prefers-reduced-motion:reduce){.testing-view,.metric-section,.metric-chart-wrapper{transition:none;animation:none}.loading-spinner{border-top-color:var(--primary-color);animation:none}}@media (prefers-contrast:high){.metric-section,.metric-chart-wrapper,.testing-view-error{border-width:2px}}.metric-chart-wrapper:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.communication-page{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.communication-page .section-content{flex-direction:column;flex:1;min-height:0;display:flex;padding:0!important}.page-content:has(.chat-layout){flex-direction:column;display:flex;overflow:hidden}.page-content:has(.chat-layout) .section-container{flex-direction:column;flex:1;min-height:0;display:flex}.section-content:has(.chat-layout){flex-direction:column;flex:1;min-height:0;display:flex;padding:0!important}.chat-layout{background:#fff;background:var(--bg-primary);min-height:0;box-shadow:0 2px 8px rgba(0,0,0,.1);box-shadow:0 2px 8px var(--shadow-color);border:2px solid var(--border-color);border-radius:12px;flex:1;gap:0;display:flex;overflow:hidden}.conversations-sidebar{background:var(--bg-secondary);border-right:2px solid var(--border-color);flex-direction:column;flex-shrink:0;width:320px;display:flex}.sidebar-header{background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);flex-shrink:0;align-items:center;gap:.5rem;padding:1rem 1.25rem;display:flex}.sidebar-header h3{color:var(--text-primary);margin:0;font-size:1.25rem;font-weight:700}.connection-status{align-items:center;display:flex}.status-indicator{font-size:.75rem;animation:2s ease-in-out infinite pulse}.status-indicator.connected{color:#28a745;animation:none}.status-indicator.connecting{color:#ffc107}.status-indicator.reconnecting{color:#fd7e14}.status-indicator.disconnected{color:#6c757d;animation:none}.status-indicator.error{color:#dc3545;animation:none}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.new-conversation-btn{cursor:pointer;color:var(--text-primary);background:0 0;border:none;border-radius:6px;margin-left:auto;padding:.25rem;font-size:1.25rem;transition:background-color .2s}.new-conversation-btn:hover{background:var(--bg-quaternary)}.conversations-list{flex:1;overflow-y:auto}.conversations-list::-webkit-scrollbar{width:6px}.conversations-list::-webkit-scrollbar-track{background:0 0}.conversations-list::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.conversation-item{cursor:pointer;border-bottom:1px solid var(--border-color);align-items:center;gap:.75rem;padding:.875rem 1.25rem;transition:background-color .2s;display:flex;position:relative}.conversation-item:hover{background:var(--bg-tertiary)}.conversation-item.active{background:var(--button-primary-alpha)}.conversation-icon{display:none}.conversation-info{flex-direction:column;flex:1;align-items:flex-start;gap:.25rem;min-width:0;padding-right:3rem;display:flex}.conversation-header{justify-content:space-between;align-items:center;gap:.5rem;width:100%;display:flex}.conversation-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;text-align:left;flex:1;font-size:.9375rem;font-weight:600;overflow:hidden}.conversation-time{color:var(--text-secondary);flex-shrink:0;font-size:.75rem;position:absolute;top:.875rem;right:1.25rem}.conversation-preview{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;text-align:left;width:100%;font-size:.8125rem;overflow:hidden}.conversation-item .unread-badge{background:var(--button-primary);color:var(--bg-primary);text-align:center;border-radius:12px;min-width:20px;padding:.125rem .5rem;font-size:.75rem;font-weight:600;position:absolute;top:2.25rem;right:1.25rem}.chat-container{background:var(--bg-primary);flex-direction:column;flex:1;display:flex;overflow:hidden}.chat-header{background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.chat-header h3{color:var(--text-primary);margin:0;font-size:1.125rem;font-weight:600}.chat-close-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:2rem;height:2rem;padding:0;font-size:1.5rem;transition:background-color .2s;display:flex}.chat-close-btn:hover{background:var(--bg-quaternary)}.messages-list{background:var(--bg-primary);flex-direction:column;flex:1;gap:.5rem;padding:1rem;display:flex;overflow-y:auto}.messages-list::-webkit-scrollbar{width:6px}.messages-list::-webkit-scrollbar-track{background:0 0}.messages-list::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.chat-date-separator{justify-content:center;align-items:center;width:100%;margin:4px 0;padding:8px 0;display:flex}.chat-date-label{color:var(--text-secondary,#8e8e93);letter-spacing:.2px;font-size:11px;font-weight:600}.message-group{flex-direction:column;max-width:70%;margin-bottom:.5rem;display:flex}.message-group:has(.bubble-reactions){margin-top:.75rem}.message-group.own{align-self:flex-end;align-items:flex-end}.message-group.other{align-self:flex-start;align-items:flex-start}.message-sender{color:var(--text-secondary);margin-bottom:.25rem;padding:0 .75rem;font-size:.75rem;font-weight:500}.message-bubble{word-wrap:break-word;text-align:left;border-radius:18px;max-width:100%;padding:.625rem .875rem;font-size:.9375rem;line-height:1.4;position:relative}.message-group.own .message-bubble{background:var(--button-primary);color:var(--bg-primary);text-align:left;border-bottom-right-radius:4px}.message-group.other .message-bubble{background:var(--chat-bubble-other,#e5e5ea);color:var(--text-primary);text-align:left;border-bottom-left-radius:4px}.message-timestamp{color:var(--text-secondary);margin-top:.25rem;padding:0 .75rem;font-size:.6875rem}.message-attachments{flex-direction:column;gap:.5rem;margin-top:.5rem;display:flex}.attachment-item{background:var(--bg-tertiary);border-radius:8px;align-items:center;gap:.5rem;padding:.5rem;display:flex}.message-group.own .attachment-item{background:rgba(255,255,255,.2)}.attachment-icon{font-size:1.5rem}.attachment-info{flex-direction:column;flex:1;gap:.25rem;display:flex}.attachment-name{font-size:.8125rem;font-weight:500}.attachment-preview{cursor:pointer;border-radius:8px;max-width:200px;max-height:200px;margin-top:.5rem}.message-bubble-wrapper{flex-direction:column;max-width:100%;display:flex;position:relative}.bubble-reactions{z-index:5;gap:2px;display:flex;position:absolute;top:-12px}.message-group.own .bubble-reactions{left:-4px;right:auto}.message-group.other .bubble-reactions{left:auto;right:-4px}.bubble-reaction-item{background:var(--bg-primary);border:1px solid var(--border-color);cursor:pointer;width:26px;height:26px;box-shadow:0 1px 3px var(--shadow-color);border-radius:50%;justify-content:center;align-items:center;font-size:.875rem;display:flex;position:relative}.bubble-reaction-count{background:var(--bg-tertiary);color:var(--text-primary);border-radius:50%;justify-content:center;align-items:center;width:14px;height:14px;font-size:.6rem;font-weight:700;line-height:1;display:flex;position:absolute;bottom:-4px;right:-4px}.bubble-emoji-picker{background:var(--bg-primary);border:1px solid var(--border-color);box-shadow:0 4px 16px var(--shadow-color);z-index:100;white-space:nowrap;border-radius:16px;flex-wrap:wrap;justify-content:center;gap:.25rem;max-width:280px;padding:.375rem .5rem;display:flex;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.bubble-emoji-picker .emoji-option{cursor:pointer;background:0 0;border:none;border-radius:50%;padding:.25rem;font-size:1.375rem;transition:transform .15s}.bubble-emoji-picker .emoji-option:hover{background:var(--bg-tertiary);transform:scale(1.3)}.emoji-picker-actions{border-top:1px solid var(--border-color);justify-content:center;gap:.25rem;width:100%;margin-top:.125rem;padding-top:.25rem;display:flex}.message-reactions{display:none}.message-actions{margin-top:.25rem;position:relative}.add-reaction-btn{display:none}.emoji-picker{background:var(--bg-primary);border:1px solid var(--border-color);box-shadow:0 4px 12px var(--shadow-color);z-index:100;border-radius:12px;gap:.5rem;margin-bottom:.5rem;padding:.5rem;display:flex;position:absolute;bottom:100%;left:0}.emoji-picker.above{margin-top:.5rem;margin-bottom:0;top:100%;bottom:auto}.emoji-option{cursor:pointer;border-radius:6px;padding:.25rem;font-size:1.5rem;transition:background-color .2s}.edit-message-inline{flex-direction:column;gap:.25rem;width:100%;display:flex}.edit-message-input{border:1px solid var(--accent-color);background:var(--bg-primary);width:100%;color:var(--text-primary);resize:none;border-radius:8px;outline:none;padding:.375rem .5rem;font-family:inherit;font-size:.875rem;line-height:1.4}.edit-message-actions{justify-content:flex-end;gap:.375rem;display:flex}.edit-action-btn{cursor:pointer;border:none;border-radius:4px;padding:.125rem .5rem;font-size:.75rem;font-weight:600}.edit-action-btn.save{background:var(--accent-color);color:#fff}.edit-action-btn.cancel{background:var(--bg-tertiary);color:var(--text-secondary)}.edited-indicator{color:var(--text-secondary);font-size:.7rem;font-style:italic}.emoji-option:hover{background:var(--bg-tertiary)}.moderated-indicator{color:var(--text-tertiary);font-style:italic}.moderate-action{display:inline-block;position:relative}.moderate-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);cursor:pointer;color:var(--text-primary);border-radius:12px;padding:.25rem .5rem;font-size:.8125rem;transition:all .2s}.moderate-btn:hover{background:var(--bg-quaternary);transform:scale(1.05)}.moderate-menu{background:var(--bg-primary);border:1px solid var(--border-color);box-shadow:0 4px 12px var(--shadow-color);z-index:100;border-radius:8px;flex-direction:column;min-width:100px;margin-bottom:.5rem;padding:.25rem;display:flex;position:absolute;bottom:100%;left:0}.moderate-option{cursor:pointer;text-align:left;color:var(--text-primary);background:0 0;border:none;border-radius:4px;padding:.5rem .75rem;font-size:.8125rem;transition:background-color .2s}.moderate-option:hover{background:var(--bg-tertiary)}.message-input-area{background:var(--bg-secondary);border-top:1px solid var(--border-color);-webkit-backdrop-filter:blur(20px);flex-shrink:0;padding:1rem 1.25rem}.input-row{align-items:flex-end;gap:.5rem;display:flex}.selected-files{background:var(--bg-tertiary);border-radius:12px;flex-wrap:wrap;gap:.625rem;margin-bottom:.75rem;padding:.5rem;display:flex}.selected-file{background:var(--bg-primary);border:1px solid var(--border-color);box-shadow:0 1px 3px var(--shadow-color);border-radius:10px;align-items:center;gap:.625rem;padding:.625rem .75rem;font-size:.8125rem;transition:all .2s;display:flex}.selected-file:hover{box-shadow:0 2px 6px var(--shadow-color);transform:translateY(-1px)}.file-icon{font-size:1.25rem}.file-info{flex-direction:column;gap:.125rem;display:flex}.file-name{color:var(--text-primary);font-weight:500}.file-size{color:var(--text-secondary);font-size:.75rem}.remove-file-btn{color:var(--status-error);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;padding:0;font-size:1.25rem;transition:background-color .2s;display:flex}.remove-file-btn:hover{background:rgba(220,53,69,.1)}.input-container{background:var(--bg-primary);box-shadow:0 2px 8px var(--shadow-color);border:1px solid var(--border-color);border-radius:22px;flex:1;align-items:flex-end;gap:.625rem;min-width:0;padding:.375rem;transition:all .2s;display:flex}.input-container:focus-within{box-shadow:0 4px 12px var(--button-primary-alpha);border-color:var(--button-primary)}.message-input{resize:none;min-height:36px;max-height:120px;color:var(--text-primary);box-shadow:none;background:0 0;border:none;border-radius:18px;outline:none;flex:1;padding:.5rem .875rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:.9375rem;line-height:1.4}.message-input:focus{box-shadow:none;border:none;outline:none}.message-input::-webkit-input-placeholder{color:var(--text-secondary)}.message-input::-moz-placeholder{color:var(--text-secondary)}.message-input::-ms-input-placeholder{color:var(--text-secondary)}.message-input::placeholder{color:var(--text-secondary)}.input-actions{align-items:center;gap:.375rem;padding-right:.25rem;display:flex}.attach-btn,.send-btn{cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:1.125rem;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.attach-btn{background:var(--bg-primary);color:var(--button-primary);border:1px solid var(--border-color);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;padding:0;font-size:1.75rem;font-weight:500;display:flex}.attach-btn:hover{background:var(--button-primary-alpha);transform:scale(1.1)}.attach-btn:active{transform:scale(.95)}.send-btn{background:var(--button-primary);color:var(--bg-primary);box-shadow:0 2px 6px var(--button-primary-alpha)}.send-btn:hover:not(:disabled){background:var(--button-primary-hover);box-shadow:0 3px 8px var(--button-primary-alpha);transform:scale(1.1)}.send-btn:active:not(:disabled){transform:scale(.95)}.send-btn:disabled{background:var(--bg-tertiary);cursor:not-allowed;box-shadow:none;opacity:.5}.file-input{display:none}.mobile-back-btn{cursor:pointer;color:var(--text-primary);background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;margin-right:.5rem;padding:.25rem .5rem;font-size:1.25rem;display:none}.mobile-back-btn:hover{background:var(--bg-quaternary)}.loading-state,.error-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:3rem;display:flex}.spinner{border:3px solid var(--border-color);border-top-color:var(--button-primary);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}@media (max-width:768px){.chat-layout{border-radius:0;flex:1;min-height:0;position:relative}.conversations-sidebar{z-index:20;border-right:none;width:100%;height:100%;display:none;position:absolute;top:0;left:0}.chat-layout.sidebar-open .conversations-sidebar,.mobile-back-btn{display:flex}.chat-container{border-radius:0;width:100%}.message-group{max-width:85%}.message-bubble{font-size:.875rem}.message-input-area{padding:.5rem .75rem}.input-container{padding:.25rem}.message-input{min-height:32px;max-height:80px;padding:.375rem .75rem;font-size:.875rem}}.upload-progress{background-color:var(--border-color,#e0e0e0);border-radius:2px;width:100%;height:4px;margin-top:4px;position:relative;overflow:hidden}.upload-progress-bar{background:linear-gradient(90deg, var(--primary-color,#007aff), var(--primary-color-dark,#0051d5));border-radius:2px;height:100%;transition:width .3s}.upload-progress-text{color:var(--text-secondary,#666);font-size:10px;font-weight:500;position:absolute;top:-18px;right:0}.selected-file{position:relative}.selected-file .remove-file-btn:disabled{opacity:.5;cursor:not-allowed}.message-image-attachments{flex-direction:column;gap:.25rem;max-width:66.67%;display:flex}.message-group.own .message-image-attachments{align-self:flex-end}.message-group.other .message-image-attachments{align-self:flex-start}.chat-image-attachment{cursor:pointer;border-radius:12px;max-width:280px;margin-top:.5rem;line-height:0;position:relative;overflow:hidden}.chat-inline-image{object-fit:contain;border-radius:12px;max-width:100%;max-height:300px;display:block}.chat-image-overlay{background:0 0;border-radius:12px;justify-content:center;align-items:center;transition:background .2s;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.chat-image-overlay .chat-image-download-icon{opacity:0;color:#fff;background:rgba(0,0,0,.5);border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.5rem;transition:opacity .2s;display:flex}.chat-image-attachment:hover .chat-image-overlay{background:rgba(0,0,0,.25)}.chat-image-attachment:hover .chat-image-download-icon{opacity:1}.chat-image-wrapper{margin:.25rem 0}.chat-image-loading{background:rgba(255,255,255,.05);border-radius:12px;justify-content:center;align-items:center;width:200px;height:150px;display:flex}.chat-image-spinner{border:3px solid rgba(255,255,255,.2);border-top-color:var(--primary-color,#4a9eff);border-radius:50%;width:24px;height:24px;animation:.8s linear infinite chat-image-spin}@keyframes chat-image-spin{to{transform:rotate(360deg)}}.chat-image-error{color:var(--text-secondary,#999);background:rgba(255,255,255,.05);border-radius:12px;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.85rem;display:flex}.chat-image-broken-icon{font-size:1.2rem}.chat-image-error-text{text-overflow:ellipsis;white-space:nowrap;max-width:200px;overflow:hidden}.image-lightbox-overlay{z-index:9999;cursor:pointer;background:rgba(0,0,0,.92);justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.lightbox-image{object-fit:contain;cursor:default;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-radius:8px;max-width:90vw;max-height:85vh}.lightbox-close-btn{color:#fff;cursor:pointer;z-index:10000;background:rgba(255,255,255,.15);border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.5rem;transition:background .2s;display:flex;position:absolute;top:16px;right:16px}.lightbox-close-btn:hover{background:rgba(255,255,255,.3)}.lightbox-download-btn{color:#fff;cursor:pointer;z-index:10000;background:rgba(255,255,255,.15);border:none;border-radius:20px;padding:.5rem 1.25rem;font-size:.9375rem;transition:background .2s;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}.lightbox-download-btn:hover{background:rgba(255,255,255,.3)}.input-emoji-wrapper{flex-shrink:0;position:relative}.input-emoji-picker{background:var(--bg-primary);border:1px solid var(--border-color);max-width:280px;box-shadow:0 4px 16px var(--shadow-color);z-index:200;border-radius:16px;flex-wrap:wrap;justify-content:center;gap:.25rem;padding:.5rem;display:flex;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.input-emoji-picker .emoji-option{cursor:pointer;background:0 0;border:none;border-radius:50%;padding:.25rem;font-size:1.375rem;transition:transform .15s}.input-emoji-picker .emoji-option:hover{background:var(--bg-tertiary);transform:scale(1.3)}._container_xao7g_3{padding:0}._toolbar_xao7g_8{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}._searchInput_xao7g_16{border:1px solid var(--border-color,#dee2e6);background:var(--bg-secondary,#fff);min-width:200px;color:var(--text-primary,#212529);border-radius:6px;flex:1;padding:.5rem .75rem;font-size:.9rem}._searchInput_xao7g_16:focus{border-color:var(--primary-color,#0d6efd);outline:none;box-shadow:0 0 0 2px rgba(13,110,253,.15)}._filterSelect_xao7g_33{border:1px solid var(--border-color,#dee2e6);background:var(--bg-secondary,#fff);color:var(--text-primary,#212529);border-radius:6px;padding:.5rem .75rem;font-size:.9rem}._btnPrimary_xao7g_43{background:var(--primary-color,#0d6efd);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.85rem}._btnPrimary_xao7g_43:hover{background:#0b5ed7}._btnPrimary_xao7g_43:disabled{opacity:.6;cursor:not-allowed}._btnSecondary_xao7g_63{background:var(--bg-secondary,#f8f9fa);color:var(--text-primary,#212529);border:1px solid var(--border-color,#dee2e6);cursor:pointer;white-space:nowrap;border-radius:6px;padding:.5rem 1rem;font-size:.85rem}._btnSecondary_xao7g_63:hover{background:#e9ecef}._btnDanger_xao7g_78{color:#fff;cursor:pointer;background:#dc3545;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.85rem}._btnDanger_xao7g_78:hover{background:#bb2d3b}._btnSmall_xao7g_92{cursor:pointer;border:1px solid var(--border-color,#dee2e6);background:var(--bg-secondary,#f8f9fa);color:var(--text-primary,#212529);border-radius:4px;padding:.3rem .6rem;font-size:.8rem}._btnSmall_xao7g_92:hover{background:#e9ecef}._orgTable_xao7g_107{border-collapse:collapse;width:100%;margin-top:.5rem}._orgTable_xao7g_107 th,._orgTable_xao7g_107 td{text-align:left;border-bottom:1px solid var(--border-color,#dee2e6);padding:.6rem .75rem;font-size:.9rem}._orgTable_xao7g_107 th{color:var(--text-secondary,#6c757d);text-transform:uppercase;letter-spacing:.03em;font-size:.8rem;font-weight:600}._orgTable_xao7g_107 tbody tr:hover{background:var(--bg-hover,rgba(0,0,0,.02))}._expandBtn_xao7g_133{cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.2rem .4rem;font-size:1rem}._expandBtn_xao7g_133:hover{background:rgba(0,0,0,.05)}._orgName_xao7g_146{cursor:pointer;color:var(--primary-color,#0d6efd);font-weight:500}._orgName_xao7g_146:hover{text-decoration:underline}._statusBadge_xao7g_157{border-radius:12px;padding:.2rem .5rem;font-size:.75rem;font-weight:600;display:inline-block}._statusActive_xao7g_165{color:#0f5132;background:#d1e7dd}._statusInactive_xao7g_170{color:#842029;background:#f8d7da}._actionsCell_xao7g_176{align-items:center;gap:.4rem;display:flex}._toggleSwitch_xao7g_183{width:36px;height:20px;display:inline-block;position:relative}._toggleSwitch_xao7g_183 input{opacity:0;width:0;height:0}._toggleSlider_xao7g_196{cursor:pointer;background-color:#ccc;border-radius:20px;transition:all .3s;position:absolute;top:0;bottom:0;left:0;right:0}._toggleSlider_xao7g_196:before{content:"";background-color:#fff;border-radius:50%;width:14px;height:14px;transition:all .3s;position:absolute;bottom:3px;left:3px}._toggleSwitch_xao7g_183 input:checked+._toggleSlider_xao7g_196{background-color:var(--primary-color,#0d6efd)}._toggleSwitch_xao7g_183 input:checked+._toggleSlider_xao7g_196:before{transform:translate(16px)}._expandedRow_xao7g_229 td{background:var(--bg-tertiary,#f8f9fa);padding:0}._tournamentPanel_xao7g_234{padding:1rem 1.5rem}._tournamentToolbar_xao7g_238{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}._tournamentTable_xao7g_246{border-collapse:collapse;width:100%}._tournamentTable_xao7g_246 th,._tournamentTable_xao7g_246 td{text-align:left;border-bottom:1px solid var(--border-color,#dee2e6);padding:.5rem .6rem;font-size:.85rem}._tournamentTable_xao7g_246 th{color:var(--text-secondary,#6c757d);text-transform:uppercase;font-size:.75rem;font-weight:600}._typeBadge_xao7g_266{border-radius:4px;padding:.15rem .4rem;font-size:.75rem;font-weight:600;display:inline-block}._typeRegular_xao7g_274{color:#055160;background:#cff4fc}._typeState_xao7g_279{color:#664d03;background:#fff3cd}._inlineForm_xao7g_285{background:var(--bg-secondary,#fff);border:1px solid var(--border-color,#dee2e6);border-radius:8px;margin-bottom:1rem;padding:1rem}._formTitle_xao7g_293{color:var(--text-primary,#212529);margin:0 0 .75rem;font-size:.95rem;font-weight:600}._formGrid_xao7g_300{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}._formGroup_xao7g_306{flex-direction:column;gap:.25rem;display:flex}._formGroupFull_xao7g_312{flex-direction:column;grid-column:1/-1;gap:.25rem;display:flex}._formLabel_xao7g_319{color:var(--text-secondary,#6c757d);font-size:.8rem;font-weight:500}._formInput_xao7g_325,._formSelect_xao7g_326,._formTextarea_xao7g_327{border:1px solid var(--border-color,#dee2e6);background:var(--bg-secondary,#fff);color:var(--text-primary,#212529);border-radius:4px;padding:.4rem .6rem;font-size:.85rem}._formInput_xao7g_325:focus,._formSelect_xao7g_326:focus,._formTextarea_xao7g_327:focus{border-color:var(--primary-color,#0d6efd);outline:none;box-shadow:0 0 0 2px rgba(13,110,253,.15)}._formTextarea_xao7g_327{resize:vertical;min-height:60px}._formActions_xao7g_349{justify-content:flex-end;gap:.5rem;margin-top:.75rem;display:flex}._formError_xao7g_356{color:#dc3545;margin-top:.5rem;font-size:.8rem}._loadingState_xao7g_363{flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:3rem 1rem;display:flex}._spinner_xao7g_372{border:3px solid var(--border-color,#dee2e6);border-top-color:var(--primary-color,#0d6efd);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite _spin_xao7g_372}@keyframes _spin_xao7g_372{to{transform:rotate(360deg)}}._errorState_xao7g_387{text-align:center;padding:3rem 1rem}._errorState_xao7g_387 h3{color:#dc3545;margin:0 0 .5rem}._errorState_xao7g_387 p{color:var(--text-secondary,#6c757d);margin:0 0 1rem}._emptyState_xao7g_402{text-align:center;color:var(--text-secondary,#6c757d);padding:2rem 1rem}._emptyState_xao7g_402 h4{margin:0 0 .5rem}._emptyState_xao7g_402 p{margin:0}._container_1rpns_3{padding:0}._toolbar_1rpns_8{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}._searchInput_1rpns_16{border:1px solid var(--border-color,#dee2e6);background:var(--bg-secondary,#fff);min-width:200px;color:var(--text-primary,#212529);border-radius:6px;flex:1;padding:.5rem .75rem;font-size:.9rem}._searchInput_1rpns_16:focus{border-color:var(--primary-color,#0d6efd);outline:none;box-shadow:0 0 0 2px rgba(13,110,253,.15)}._filterSelect_1rpns_33,._filterInput_1rpns_34{border:1px solid var(--border-color,#dee2e6);background:var(--bg-secondary,#fff);color:var(--text-primary,#212529);border-radius:6px;padding:.5rem .75rem;font-size:.9rem}._btnPrimary_1rpns_44{background:var(--primary-color,#0d6efd);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.85rem}._btnPrimary_1rpns_44:hover{background:#0b5ed7}._btnPrimary_1rpns_44:disabled{opacity:.6;cursor:not-allowed}._btnSecondary_1rpns_64{background:var(--bg-secondary,#f8f9fa);color:var(--text-primary,#212529);border:1px solid var(--border-color,#dee2e6);cursor:pointer;white-space:nowrap;border-radius:6px;padding:.5rem 1rem;font-size:.85rem}._btnSecondary_1rpns_64:hover{background:#e9ecef}._btnRegister_1rpns_79{cursor:pointer;color:#fff;white-space:nowrap;background:#198754;border:none;border-radius:4px;padding:.3rem .75rem;font-size:.8rem}._btnRegister_1rpns_79:hover{background:#157347}._btnRegister_1rpns_79:disabled{opacity:.6;cursor:not-allowed}._orgTable_1rpns_100{border-collapse:collapse;width:100%;margin-top:.5rem}._orgTable_1rpns_100 th,._orgTable_1rpns_100 td{text-align:left;border-bottom:1px solid var(--border-color,#dee2e6);padding:.6rem .75rem;font-size:.9rem}._orgTable_1rpns_100 th{color:var(--text-secondary,#6c757d);text-transform:uppercase;letter-spacing:.03em;font-size:.8rem;font-weight:600}._orgTable_1rpns_100 tbody tr:hover{background:var(--bg-hover,rgba(0,0,0,.02))}._expandBtn_1rpns_126{cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.2rem .4rem;font-size:1rem}._expandBtn_1rpns_126:hover{background:rgba(0,0,0,.05)}._orgName_1rpns_139{cursor:pointer;color:var(--primary-color,#0d6efd);font-weight:500}._orgName_1rpns_139:hover{text-decoration:underline}._expandedRow_1rpns_150 td{background:var(--bg-tertiary,#f8f9fa);padding:0}._tournamentPanel_1rpns_155{padding:1rem 1.5rem}._tournamentToolbar_1rpns_159{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}._tournamentTable_1rpns_167{border-collapse:collapse;width:100%}._tournamentTable_1rpns_167 th,._tournamentTable_1rpns_167 td{text-align:left;border-bottom:1px solid var(--border-color,#dee2e6);padding:.5rem .6rem;font-size:.85rem}._tournamentTable_1rpns_167 th{color:var(--text-secondary,#6c757d);text-transform:uppercase;font-size:.75rem;font-weight:600}._typeBadge_1rpns_188{border-radius:4px;padding:.15rem .4rem;font-size:.75rem;font-weight:600;display:inline-block}._typeRegular_1rpns_196{color:#055160;background:#cff4fc}._typeState_1rpns_201{color:#664d03;background:#fff3cd}._pastBadge_1rpns_206{color:#842029;background:#f8d7da;border-radius:12px;padding:.2rem .5rem;font-size:.75rem;font-weight:600;display:inline-block}._upcomingBadge_1rpns_216{color:#0f5132;background:#d1e7dd;border-radius:12px;padding:.2rem .5rem;font-size:.75rem;font-weight:600;display:inline-block}._successText_1rpns_226{color:#198754;font-size:.8rem;font-weight:600}._registerError_1rpns_232{color:#dc3545;margin-bottom:.5rem;font-size:.8rem}._loadingState_1rpns_239{flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding:3rem 1rem;display:flex}._spinner_1rpns_248{border:3px solid var(--border-color,#dee2e6);border-top-color:var(--primary-color,#0d6efd);border-radius:50%;width:32px;height:32px;animation:.8s linear infinite _spin_1rpns_248}@keyframes _spin_1rpns_248{to{transform:rotate(360deg)}}._errorState_1rpns_263{text-align:center;padding:3rem 1rem}._errorState_1rpns_263 h3{color:#dc3545;margin:0 0 .5rem}._errorState_1rpns_263 p{color:var(--text-secondary,#6c757d);margin:0 0 1rem}._emptyState_1rpns_278{text-align:center;color:var(--text-secondary,#6c757d);padding:2rem 1rem}._emptyState_1rpns_278 h4{margin:0 0 .5rem}._emptyState_1rpns_278 p{margin:0}.billing-stat-overdue,.billing-stat-owed{color:red}._notificationList_1u2wa_3{flex-direction:column;flex:1;gap:6px;max-height:450px;margin:0;padding:4px 4px 0;display:flex;overflow-y:auto}._notificationItem_1u2wa_14{background:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:0 1px 2px var(--shadow-color);border-radius:6px;padding:8px 10px 10px;font-size:.8125rem;transition:all .2s}._notificationItem_1u2wa_14:hover{box-shadow:0 2px 4px var(--shadow-color);background:var(--bg-tertiary);transform:translateY(-1px)}._notificationItem_1u2wa_14._critical_1u2wa_31{border-left:3px solid var(--status-error)}._notificationItem_1u2wa_14._high_1u2wa_35{border-left:3px solid var(--button-danger)}._notificationItem_1u2wa_14._medium_1u2wa_39{border-left:3px solid var(--status-warning)}._notificationItem_1u2wa_14._low_1u2wa_43{border-left:3px solid var(--status-success)}._notificationHeader_1u2wa_47{justify-content:space-between;align-items:flex-start;gap:6px;margin-bottom:4px;display:flex}._notificationTitle_1u2wa_55{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;text-align:left;flex:1;font-size:.75rem;font-weight:600;line-height:1.3;overflow:hidden}._notificationContent_1u2wa_67{justify-content:flex-start;align-items:flex-start;gap:6px;margin-bottom:2px;display:flex}._notificationMessage_1u2wa_75{color:var(--text-secondary);word-wrap:break-word;overflow-wrap:break-word;white-space:normal;text-align:left;-webkit-line-clamp:3;-webkit-box-orient:vertical;flex:1;max-width:50%;font-size:.6875rem;line-height:1.4;display:-webkit-box;overflow:hidden}._notificationCategory_1u2wa_91{text-transform:uppercase;letter-spacing:.3px;color:var(--text-muted);border:1px solid var(--border-color);border-radius:3px;flex-shrink:0;align-self:flex-start;padding:2px 6px;font-size:.625rem;font-weight:400;display:inline-block}._notificationCategory_1u2wa_91._performance_1u2wa_106,._notificationCategory_1u2wa_91._user_management_1u2wa_107,._notificationCategory_1u2wa_91._financial_1u2wa_108,._notificationCategory_1u2wa_91._security_1u2wa_109,._notificationCategory_1u2wa_91._documents_1u2wa_110,._notificationCategory_1u2wa_91._system_health_1u2wa_111{color:var(--text-muted);opacity:1;background:0 0}._actionRequiredBadge_1u2wa_117{background:var(--status-error);color:var(--bg-primary);text-transform:uppercase;letter-spacing:.3px;border-radius:3px;flex-shrink:0;padding:1px 4px;font-size:.625rem;font-weight:600}._unreadBadge_1u2wa_129{background:var(--button-primary);color:var(--bg-primary);text-transform:uppercase;letter-spacing:.3px;border-radius:3px;flex-shrink:0;padding:1px 4px;font-size:.625rem;font-weight:600}._autoGeneratedBadge_1u2wa_141{background:var(--text-muted);color:var(--bg-primary);text-transform:uppercase;letter-spacing:.3px;border-radius:3px;flex-shrink:0;padding:1px 4px;font-size:.5625rem;font-weight:500}._notificationActions_1u2wa_153{border-top:1px solid var(--border-color);margin-top:6px;padding-top:6px}._notificationActionBtn_1u2wa_159{background:var(--button-primary);color:var(--bg-primary);cursor:pointer;border:none;border-radius:3px;padding:3px 6px;font-size:.6875rem;font-weight:500;transition:background-color .2s}._notificationActionBtn_1u2wa_159:hover{background:var(--button-primary-hover)}._notificationActionBtn_1u2wa_159:focus{outline:2px solid var(--focus-color);outline-offset:1px}._notificationMeta_1u2wa_180{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:4px;margin-top:4px;margin-bottom:0;padding-top:4px;display:flex}._notificationTime_1u2wa_191{color:var(--text-muted);font-size:.625rem;font-style:italic}._noNotifications_1u2wa_197{text-align:center;color:var(--text-muted);padding:16px 8px;font-style:italic}._noNotifications_1u2wa_197 span{font-size:.75rem}@media (max-width:768px){._notificationItem_1u2wa_14{padding:6px 8px 8px}._notificationHeader_1u2wa_47{flex-direction:column;align-items:flex-start;gap:4px}._notificationTitle_1u2wa_55{font-size:.6875rem}._notificationMessage_1u2wa_75{font-size:.625rem}._notificationMeta_1u2wa_180{flex-direction:column;align-items:flex-start;gap:2px;margin-bottom:0}}@keyframes _slideIn_1u2wa_1{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}._notificationItem_1u2wa_14{animation:.2s ease-out _slideIn_1u2wa_1}._notificationList_1u2wa_3::-webkit-scrollbar{width:4px}._notificationList_1u2wa_3::-webkit-scrollbar-track{background:var(--bg-tertiary);border-radius:2px}._notificationList_1u2wa_3::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:2px}._notificationList_1u2wa_3::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}.dashboard-sections .section.notifications,.dashboard-sections .section.recent-activities{padding:1.5rem 1.5rem .5rem}.recent-activities .activity-notes,.upcoming-events .event-notes{color:var(--text-secondary);text-align:left;font-size:.85rem;line-height:1.3;display:block}.recent-activities .activity-type{text-transform:uppercase;white-space:nowrap;text-align:center;letter-spacing:.5px;border:1px solid var(--border-color);text-transform:uppercase;white-space:nowrap;text-align:center;letter-spacing:.5px;background:var(--bg-primary);color:var(--text-secondary);border-radius:4px;flex-shrink:0;padding:4px 12px;font-size:.7rem;font-weight:600}.recent-activities .activity-item:has(.activity-type.user_management){border-left-color:#28a745}.recent-activities .activity-item:has(.activity-type.login){border-left-color:#28a745}.recent-activities .activity-item:has(.activity-type.logout){border-left-color:#28a745}.recent-activities .activity-item:has(.activity-type.user_created){border-left-color:#28a745}.recent-activities .activity-item:has(.activity-type.user_updated){border-left-color:#28a745}.recent-activities .activity-item:has(.activity-type.user_deleted){border-left-color:#28a745}.recent-activities .activity-item[data-activity-type*=user],.recent-activities .activity-item[data-activity-type*=login]{border-left:3px solid #28a745!important}.recent-activities .activity-item[data-activity-type*=error],.recent-activities .activity-item[data-activity-type*=security]{border-left:3px solid #dc3545!important}.recent-activities .activity-item[data-activity-type*=team],.recent-activities .activity-item[data-activity-type*=player]{border-left:3px solid #6f42c1!important}@keyframes slideInActivity{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}@media (max-width:768px){.dashboard-sections{grid-template-columns:1fr;gap:1rem}.player-breakdown-chart .chart-content{min-height:400px;padding:10px 20px 20px 30px}.player-breakdown-chart .chart-container{height:280px}.player-breakdown-chart .chart-bars{justify-content:space-evenly;gap:8px;padding:15px 15px 0}.player-breakdown-chart .chart-labels{justify-content:space-evenly;gap:8px;padding:0 15px}.player-breakdown-chart .bar-container,.player-breakdown-chart .chart-label-item{min-width:15px;max-width:60px}.player-breakdown-chart .bar-value{font-size:.6rem}.player-breakdown-chart .chart-label-text{max-width:80px;font-size:.6rem}.player-breakdown-chart .grid-label{min-width:40px;font-size:.6rem;left:-50px}}@media (max-width:768px){.filter-content{padding:1rem}.filter-section{margin-bottom:1.25rem}.filter-options{gap:.5rem}.filter-checkbox{flex:calc(50% - .25rem);min-width:0;padding:.625rem .75rem}.checkbox-label{text-overflow:ellipsis;overflow:hidden}}@media (max-width:480px){.filter-content{padding:.75rem}.filter-checkbox{flex:100%}.date-preset-btn{text-align:center;flex:calc(50% - .1875rem);min-width:0}}@media (max-width:1024px){.calendar-day{min-height:80px;padding:.375rem}.day-number{font-size:.75rem}.calendar-event{padding:.2rem .375rem;font-size:.7rem}.event-time{display:none}}@media (max-width:768px){.calendar-header{flex-direction:column;gap:.75rem;padding:.75rem}.calendar-navigation{justify-content:center;gap:.5rem;width:100%}.calendar-title{flex:1;min-width:0;font-size:1rem}.calendar-controls{justify-content:center;gap:.5rem;width:100%}.view-mode-btn{padding:.375rem .625rem;font-size:.75rem}.today-btn{padding:.375rem .75rem;font-size:.75rem}.nav-btn{width:2rem;height:2rem;font-size:1rem}.day-header{letter-spacing:0;padding:.375rem .125rem;font-size:.65rem}.calendar-day{min-height:50px;padding:.125rem}.day-number{padding:.125rem;font-size:.7rem}.calendar-day.today .day-number{width:1.4rem;height:1.4rem;font-size:.65rem}.calendar-event{border-left-width:2px;padding:.1rem .2rem;font-size:.6rem}.multi-day-event{min-height:1.2rem;padding:.1rem .2rem;font-size:.6rem}.multi-day-event .event-org-name,.event-time,.event-org-name{display:none}.more-events{padding:.1rem;font-size:.6rem}.week-view-header{gap:0}.week-day-header{padding:.5rem .125rem}.week-day-name{letter-spacing:0;font-size:.65rem}.week-day-number{font-size:1rem}.week-view-content{gap:0}.week-day-column{padding:.25rem}.week-event-item{border-left-width:2px;padding:.25rem}.week-event-item .event-time{font-size:.6rem}.week-event-item .event-title{font-size:.7rem}.week-event-item .event-org-name{display:none}.day-view-content{padding:.75rem}.day-view-header{min-height:0;padding:.5rem}.day-event-item{flex-direction:column;gap:.75rem}.event-time-block{border-right:none;border-bottom:1px solid var(--border-color);flex-direction:row;min-width:auto;padding-bottom:.5rem;padding-right:0}}@media (max-width:768px){.list-view{gap:1rem}.list-view-header{flex-direction:column;align-items:flex-start;gap:.5rem}.list-event-card{padding:1rem}.event-title{font-size:1.125rem}.pagination-controls{flex-direction:column;align-items:stretch;gap:.75rem}.pagination-buttons,.page-size-selector{justify-content:center}}@media (max-width:480px){.list-event-card{padding:.75rem}.event-card-header{flex-direction:column;align-items:flex-start;gap:.5rem}.event-details{padding:.5rem}.pagination-btn{min-width:32px;height:32px;font-size:.8125rem}}@media (max-width:768px){.schedule-event-details{border-radius:12px 12px 0 0;max-width:100%;max-height:95vh}.event-details-content{padding:20px}.event-datetime-info,.details-grid{grid-template-columns:1fr}.teams-display{flex-direction:column}.vs-separator{transform:rotate(90deg)}.event-actions{flex-direction:column}.action-btn{justify-content:center;width:100%}}@media (max-width:768px){.attendance-row{flex-direction:column;align-items:flex-start;gap:8px}.attendance-statuses{justify-content:space-between;width:100%}.attendance-status-btn{text-align:center;flex:1}}.schedule-page{background-color:var(--bg-primary);height:100%;color:var(--text-primary);flex-direction:column;display:flex}.schedule-header{border-bottom:1px solid var(--border-color);background-color:var(--bg-secondary);justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.schedule-title-section{flex-direction:column;gap:.25rem;display:flex}.schedule-title{color:var(--button-primary);margin:0;font-size:1.75rem;font-weight:600}.schedule-subtitle{color:var(--text-secondary);margin:0;font-size:.875rem}.schedule-controls{align-items:center;gap:1rem;display:flex}.view-mode-toggle{background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:.5rem;padding:.25rem;display:flex}.view-mode-btn{cursor:pointer;color:#6b7280;background:0 0;border:none;border-radius:.375rem;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s;display:flex}.view-mode-btn:hover{background-color:var(--bg-secondary);color:#111827}.view-mode-btn.active{background-color:var(--button-primary);color:#fff;box-shadow:0 1px 2px rgba(0,0,0,.1)}[data-theme=light] .view-mode-btn{color:#374151;font-weight:600}[data-theme=light] .view-mode-btn:hover{color:#111827;background-color:#f3f4f6}[data-theme=light] .view-mode-btn.active{color:#fff;background-color:#1f618d;font-weight:600}.view-mode-icon{font-size:1rem}.view-mode-label{font-weight:500}.refresh-btn{border:1px solid var(--border-color);background-color:var(--bg-primary);cursor:pointer;color:var(--text-primary);border-radius:.375rem;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;transition:all .2s;display:flex}.refresh-btn:hover:not(:disabled){background-color:var(--bg-secondary);border-color:var(--text-secondary)}.refresh-btn:disabled{opacity:.6;cursor:not-allowed}.refresh-icon{font-size:1rem;transition:transform .3s}.refresh-btn:hover:not(:disabled) .refresh-icon{transform:rotate(180deg)}.schedule-filters{border-bottom:1px solid var(--border-color);background-color:var(--bg-primary);padding:1rem 1.5rem}.schedule-content{flex-direction:column;flex:1;min-height:0;display:flex;overflow:auto}.schedule-loading{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1rem;display:flex}.loading-spinner{font-size:2rem;animation:1s linear infinite spin}.schedule-error{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1rem;padding:2rem;display:flex}.schedule-error h3{color:var(--status-error);margin:0;font-size:1.25rem;font-weight:600}.schedule-error p{color:var(--text-secondary);max-width:400px;margin:0}.retry-btn{background-color:var(--button-primary);color:#fff;cursor:pointer;border:none;border-radius:.375rem;padding:.75rem 1.5rem;font-weight:500;transition:background-color .2s}.retry-btn:hover{background-color:var(--button-primary-hover)}@media (max-width:768px){.schedule-page{min-height:100vh;min-height:100dvh}.schedule-header{z-index:100;background-color:var(--bg-secondary);border-bottom:2px solid var(--border-color);flex-direction:column;align-items:stretch;gap:1rem;padding:1rem;position:-webkit-sticky;position:sticky;top:0}.schedule-title-section{text-align:center;order:1}.schedule-controls{order:2;justify-content:center;gap:.75rem}.view-mode-toggle{flex:1;min-height:48px}.view-mode-btn{-webkit-tap-highlight-color:rgba(31,97,141,.2);tap-highlight-color:rgba(31,97,141,.2);flex:1;justify-content:center;min-height:44px;padding:.75rem 1rem;font-size:.9375rem}.view-mode-btn:active{transition:transform .1s;transform:scale(.98)}.refresh-btn{-webkit-tap-highlight-color:rgba(31,97,141,.2);tap-highlight-color:rgba(31,97,141,.2);min-height:44px;padding:.75rem 1rem}.refresh-btn:active{transition:transform .1s;transform:scale(.98)}.schedule-filters{-webkit-overflow-scrolling:touch;padding:1rem;overflow-x:auto}.schedule-title{font-size:1.5rem;line-height:1.2}.schedule-subtitle{font-size:.8125rem}.schedule-content{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.schedule-loading,.schedule-error{text-align:center;padding:2rem 1rem}.loading-spinner,.error-icon{font-size:2.5rem}.retry-btn{-webkit-tap-highlight-color:rgba(31,97,141,.2);tap-highlight-color:rgba(31,97,141,.2);min-height:44px;padding:.75rem 1.5rem;font-size:1rem}.retry-btn:active{transform:scale(.98)}}@media (max-width:480px){.schedule-header{gap:.75rem;padding:.75rem}.schedule-controls{flex-direction:column;gap:.75rem}.view-mode-toggle{width:100%;padding:.125rem}.view-mode-btn{min-height:48px;padding:.875rem 1rem;font-size:1rem}.view-mode-icon{font-size:1.125rem}.refresh-btn{justify-content:center;width:100%;min-height:48px;padding:.875rem 1rem;font-size:1rem}.refresh-icon{font-size:1.125rem}.schedule-filters{padding:.75rem}.schedule-title{font-size:1.375rem}.schedule-subtitle{font-size:.75rem}.schedule-loading,.schedule-error{padding:1.5rem .75rem}.schedule-error h3{font-size:1.125rem}.schedule-error p{font-size:.875rem;line-height:1.4}}@media (max-width:768px) and (orientation:landscape){.schedule-header{flex-direction:row;justify-content:space-between;align-items:center;padding:.75rem 1rem}.schedule-title-section{text-align:left;order:1}.schedule-controls{flex-direction:row;order:2;gap:.75rem}.view-mode-toggle{flex:none;width:auto}.refresh-btn{width:auto}.schedule-title{font-size:1.25rem}.schedule-subtitle{font-size:.75rem}}@media (hover:none) and (pointer:coarse){.view-mode-btn:hover{color:var(--text-secondary);background:0 0}.view-mode-btn.active:hover{background-color:var(--button-primary);color:#fff}.refresh-btn:hover:not(:disabled){background-color:var(--bg-primary);border-color:var(--border-color)}.view-mode-btn:active{background-color:var(--bg-tertiary);transform:scale(.98)}.view-mode-btn.active:active{background-color:var(--button-primary-hover);transform:scale(.98)}.refresh-btn:active:not(:disabled){background-color:var(--bg-secondary);transform:scale(.98)}.view-mode-btn,.refresh-btn{min-width:48px;min-height:48px}}[data-theme=dark] .schedule-page{background-color:var(--bg-primary)!important;color:var(--text-primary)!important}[data-theme=dark] .schedule-header{background-color:var(--bg-secondary)!important;border-color:var(--border-color)!important}[data-theme=dark] .schedule-title{color:var(--button-primary)!important}[data-theme=dark] .schedule-subtitle{color:var(--text-secondary)!important}[data-theme=dark] .view-mode-toggle{background-color:var(--bg-tertiary)!important;border-color:var(--border-color)!important}[data-theme=dark] .view-mode-btn{color:var(--text-secondary)!important}[data-theme=dark] .view-mode-btn:hover{background-color:var(--bg-secondary)!important;color:var(--text-primary)!important}[data-theme=dark] .view-mode-btn.active{background-color:var(--button-primary)!important;color:#fff!important}[data-theme=dark] .refresh-btn{background-color:var(--bg-primary)!important;border-color:var(--border-color)!important;color:var(--text-primary)!important}[data-theme=dark] .refresh-btn:hover:not(:disabled){background-color:var(--bg-secondary)!important;border-color:var(--text-secondary)!important}[data-theme=dark] .schedule-filters{background-color:var(--bg-primary)!important;border-color:var(--border-color)!important}[data-theme=dark] .schedule-loading{color:var(--text-secondary)!important}[data-theme=dark] .schedule-error h3{color:var(--status-error)!important}[data-theme=dark] .schedule-error p{color:var(--text-secondary)!important}[data-theme=dark] .retry-btn{background-color:var(--button-primary)!important}[data-theme=dark] .retry-btn:hover{background-color:var(--button-primary-hover)!important}@media (prefers-contrast:high){.schedule-page{--border-color:#000;--text-secondary:#000}.view-mode-btn{border:1px solid var(--border-color)}.refresh-btn{border:2px solid var(--border-color)}}@media (prefers-reduced-motion:reduce){.view-mode-btn,.refresh-btn,.loading-spinner,.refresh-icon{transition:none;animation:none}}.payment-method-card{background:var(--card-background,#fff);border:1px solid var(--border-color,#e0e0e0);border-radius:8px;margin-bottom:12px;padding:16px;transition:all .2s}.payment-method-card:hover{border-color:var(--border-color,#e0e0e0)!important;background:rgba(255,255,255,.05)!important;box-shadow:0 4px 12px rgba(0,0,0,.08)!important}.payment-method-header{border-bottom:1px solid var(--border-color,#e0e0e0);align-items:center;gap:8px;margin-bottom:12px;padding-bottom:12px;display:flex}.payment-icon{font-size:24px}.payment-type{color:var(--text-primary,#333);font-size:16px;font-weight:600}.payment-method-content{flex-direction:column;gap:8px;display:flex}.payment-detail{justify-content:space-between;align-items:center;font-size:14px;display:flex}.detail-label{color:var(--text-secondary,#666);font-weight:500}.detail-value{color:var(--text-primary,#333);text-align:right}.masked-number{letter-spacing:1px;font-family:monospace}@media (prefers-color-scheme:dark){.payment-method-card{background:var(--card-background-dark,#2a2a2a);border-color:var(--border-color-dark,#444)}.payment-method-card:hover{border-color:var(--primary-color-dark,#0d6efd)}.payment-type{color:var(--text-primary-dark,#e0e0e0)}.detail-label{color:var(--text-secondary-dark,#aaa)}.detail-value{color:var(--text-primary-dark,#e0e0e0)}}@media (max-width:768px){.payment-method-card{padding:14px}.payment-icon{font-size:20px}.payment-type{font-size:15px}.payment-detail{font-size:13px}}@media (max-width:480px){.payment-method-card{padding:12px}.payment-detail{flex-direction:column;align-items:flex-start;gap:4px}.detail-value{text-align:left}}.account-credit-display{background:var(--card-background,#fff);border:1px solid var(--border-color,#e0e0e0);border-radius:8px;margin-bottom:16px;padding:20px;transition:all .2s}.credit-header{align-items:center;gap:10px;margin-bottom:16px;display:flex}.credit-icon{font-size:28px}.credit-title{color:var(--text-primary,#333);margin:0;font-size:18px;font-weight:600}.credit-content{flex-direction:column;align-items:center;gap:8px;padding:16px 0;display:flex}.credit-amount{letter-spacing:1px;font-family:monospace;font-size:36px;font-weight:700}.credit-amount.zero{color:var(--text-secondary,#666)}.credit-amount.positive{color:var(--success-color,#28a745)}.credit-amount.negative{color:var(--error-color,#dc3545)}.credit-description{color:var(--text-secondary,#666);font-size:14px}.credit-status{font-style:italic}@media (prefers-color-scheme:dark){.account-credit-display{background:var(--card-background-dark,#2a2a2a);border-color:var(--border-color-dark,#444)}.credit-title{color:var(--text-primary-dark,#e0e0e0)}.credit-amount.zero{color:var(--text-secondary-dark,#aaa)}.credit-amount.positive{color:var(--success-color-dark,#4caf50)}.credit-amount.negative{color:var(--error-color-dark,#f44336)}.credit-description{color:var(--text-secondary-dark,#aaa)}}@media (max-width:768px){.account-credit-display{padding:16px}.credit-icon{font-size:24px}.credit-title{font-size:16px}.credit-amount{font-size:28px}.credit-description{font-size:13px}}@media (max-width:480px){.account-credit-display{padding:14px}.credit-amount{font-size:24px}}.subscription-card{background:var(--card-background,#fff);border:1px solid var(--border-color,#e0e0e0);border-radius:8px;margin-bottom:12px;padding:16px;transition:all .2s}.subscription-card:hover{border-color:var(--primary-color,#007bff);transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.08)}.subscription-header{align-items:center;gap:10px;margin-bottom:12px;display:flex}.subscription-icon{font-size:20px}.subscription-group{color:var(--text-primary,#333);margin:0;font-size:16px;font-weight:600}.subscription-content{padding-left:30px}.subscription-description{color:var(--text-secondary,#666);margin:0;font-size:14px;line-height:1.5}@media (prefers-color-scheme:dark){.subscription-card{background:var(--card-background-dark,#2a2a2a);border-color:var(--border-color-dark,#444)}.subscription-card:hover{border-color:var(--primary-color-dark,#0d6efd)}.subscription-group{color:var(--text-primary-dark,#e0e0e0)}.subscription-description{color:var(--text-secondary-dark,#aaa)}}@media (max-width:768px){.subscription-card{padding:14px}.subscription-icon{font-size:18px}.subscription-group{font-size:15px}.subscription-description{font-size:13px}.subscription-content{padding-left:28px}}@media (max-width:480px){.subscription-card{padding:12px}.subscription-content{margin-top:8px;padding-left:0}}.subscriptions-list{background:var(--card-background,#fff);border:1px solid var(--border-color,#e0e0e0);border-radius:8px;margin-bottom:16px;padding:20px}.subscriptions-header{border-bottom:2px solid var(--border-color,#e0e0e0);justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;display:flex}.subscriptions-title{color:var(--text-primary,#333);margin:0;font-size:18px;font-weight:600}.subscriptions-count{background:var(--primary-color,#007bff);color:#fff;border-radius:12px;padding:4px 12px;font-size:14px;font-weight:600}.subscriptions-content{flex-direction:column;gap:0;display:flex}.subscriptions-list.empty{justify-content:center;align-items:center;min-height:200px;display:flex}.empty-state{text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex}@media (prefers-color-scheme:dark){.subscriptions-list{background:var(--card-background-dark,#2a2a2a);border-color:var(--border-color-dark,#444)}.subscriptions-header{border-bottom-color:var(--border-color-dark,#444)}.subscriptions-title{color:var(--text-primary-dark,#e0e0e0)}.subscriptions-count{background:var(--primary-color-dark,#0d6efd)}.empty-message{color:var(--text-secondary-dark,#aaa)}}.invoices-list{background:var(--card-background,#fff);border:1px solid var(--border-color,#e0e0e0);border-radius:8px;margin-bottom:16px;padding:20px}.invoices-header{border-bottom:2px solid var(--border-color,#e0e0e0);justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;display:flex}.invoices-title{color:var(--text-primary,#333);margin:0;font-size:18px;font-weight:600}.invoices-count{background:var(--primary-color,#007bff);color:#fff;border-radius:12px;padding:4px 12px;font-size:14px;font-weight:600}.invoices-grid-container{flex-direction:column;display:flex}.invoices-grid-header{border-bottom:2px solid var(--border-color,#e0e0e0);color:var(--text-primary,#333);background:0 0;grid-template-columns:1fr 1fr 1.5fr 1fr 1fr;gap:16px;padding:12px 16px;font-size:14px;font-weight:600;display:grid}.invoices-grid-row{border-bottom:1px solid var(--border-color,#e0e0e0);cursor:pointer;color:var(--text-primary,#333);grid-template-columns:1fr 1fr 1.5fr 1fr 1fr;align-items:center;gap:16px;padding:12px 16px;font-size:14px;transition:background-color .2s;display:grid}.invoices-grid-row:hover{background:var(--table-row-hover,#f8f9fa)}.text-center{text-align:center;justify-self:center}.invoice-number{color:var(--primary-color,#007bff);font-family:inherit}.invoice-amount{font-weight:600}.invoice-status-badge{text-transform:capitalize;border-radius:12px;padding:4px 12px;font-size:12px;font-weight:600;display:inline-block}.invoice-status-badge.status-paid{color:#155724;background:#d4edda}.invoice-status-badge.status-pending{color:#856404;background:#fff3cd}.invoice-status-badge.status-overdue{color:#721c24;background:#f8d7da}.invoice-status-badge.status-cancelled{color:#383d41;background:#e2e3e5}.invoice-modal-overlay{z-index:1000;background:rgba(0,0,0,.5);justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.invoice-modal{background:var(--card-background,#fff);border-radius:12px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px rgba(0,0,0,.15)}.invoices-list.empty{flex-direction:column;align-items:stretch;min-height:200px;display:flex}.invoices-list.empty .invoices-header{justify-content:flex-start;margin-bottom:16px}.invoices-list.empty .empty-state{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}@media (prefers-color-scheme:dark){.invoices-list{background:var(--card-background-dark,#2a2a2a);border-color:var(--border-color-dark,#444)}.invoices-header{border-bottom-color:var(--border-color-dark,#444)}.invoices-title{color:var(--text-primary-dark,#e0e0e0)}.invoices-count{background:var(--primary-color-dark,#0d6efd)}.invoices-table thead{background:var(--table-header-bg-dark,#1a1a1a);border-bottom-color:var(--border-color-dark,#444)}.invoices-table th{color:var(--text-primary-dark,#e0e0e0)}.invoices-table tbody tr{border-bottom-color:var(--border-color-dark,#444)}.invoices-table tbody tr:hover{background:var(--table-row-hover-dark,#333)}.invoices-table td{color:var(--text-primary-dark,#e0e0e0)}.invoice-number{color:var(--primary-color-dark,#0d6efd)}.invoice-modal{background:var(--card-background-dark,#2a2a2a)}.modal-header{border-bottom-color:var(--border-color-dark,#444)}.modal-header h3{color:var(--text-primary-dark,#e0e0e0)}.modal-close{color:var(--text-secondary-dark,#aaa)}.modal-close:hover{background:var(--table-row-hover-dark,#333)}.modal-section h4{color:var(--text-primary-dark,#e0e0e0)}.modal-label{color:var(--text-secondary-dark,#aaa)}.modal-value{color:var(--text-primary-dark,#e0e0e0)}.modal-section.amounts{background:var(--table-header-bg-dark,#1a1a1a)}.modal-section.amounts .modal-row.total{border-top-color:var(--border-color-dark,#444)}.empty-message{color:var(--text-secondary-dark,#aaa)}}.scheduled-payments-list{background:var(--card-background,#fff);border:1px solid var(--border-color,#e0e0e0);border-radius:8px;margin-bottom:16px;padding:20px}.payments-header{border-bottom:2px solid var(--border-color,#e0e0e0);justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;display:flex}.payments-title{color:var(--text-primary,#333);margin:0;font-size:18px;font-weight:600}.payments-count{background:var(--primary-color,#007bff);color:#fff;border-radius:12px;padding:4px 12px;font-size:14px;font-weight:600}.payments-grid-container{flex-direction:column;display:flex}.payments-grid-header{border-bottom:2px solid var(--border-color,#e0e0e0);color:var(--text-primary,#333);background:0 0;grid-template-columns:1.5fr 1fr 1.5fr 1fr;gap:16px;padding:12px 16px;font-size:14px;font-weight:600;display:grid}.payments-grid-row{border-bottom:1px solid var(--border-color,#e0e0e0);cursor:pointer;color:var(--text-primary,#333);grid-template-columns:1.5fr 1fr 1.5fr 1fr;align-items:center;gap:16px;padding:12px 16px;font-size:14px;transition:background-color .2s;display:grid}.payments-grid-row:hover{background:var(--table-row-hover,#f8f9fa)}.payments-grid-row.overdue{background:#fff5f5}.payments-grid-row.due-soon{background:#fffbf0}.text-right{text-align:right;justify-self:end}.payment-due-date{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.urgency-badge{text-transform:uppercase;white-space:nowrap;border-radius:10px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.payment-row.overdue .urgency-badge{color:#721c24;background:#f8d7da}.payment-row.due-soon .urgency-badge{color:#856404;background:#fff3cd}.payment-amount{font-weight:600}.payment-modal-overlay{z-index:1000;background:rgba(0,0,0,.5);justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.payment-modal{background:var(--card-background,#fff);border-radius:12px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px rgba(0,0,0,.15)}.modal-header h3{color:var(--text-primary,#333);margin:0;font-size:20px;font-weight:600}.modal-close{color:var(--text-secondary,#666);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:28px;transition:background-color .2s;display:flex}.modal-close:hover{background:var(--table-row-hover,#f8f9fa)}.modal-section{margin-bottom:24px}.modal-section:last-child{margin-bottom:0}.modal-section h4{color:var(--text-primary,#333);margin:0 0 12px;font-size:16px;font-weight:600}.modal-row{justify-content:space-between;align-items:flex-start;gap:16px;padding:8px 0;display:flex}.modal-row.full-width{flex-direction:column;gap:4px}.modal-label{color:var(--text-secondary,#666);flex-shrink:0;font-weight:600}.modal-value{color:var(--text-primary,#333);text-align:right;flex-grow:1}.modal-row.full-width .modal-value{text-align:left}.modal-value.overdue{color:#721c24;font-weight:600}.modal-value.due-soon{color:#856404;font-weight:600}.modal-section.amounts{background:var(--table-header-bg,#f8f9fa);border-radius:8px;padding:16px}.modal-section.amounts .modal-row.total{border-top:2px solid var(--border-color,#e0e0e0);margin-top:8px;padding-top:12px;font-size:16px;font-weight:600}.payment-methods-list{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.payment-method-badge{background:var(--primary-color,#007bff);color:#fff;border-radius:12px;padding:4px 12px;font-size:12px;font-weight:600;display:inline-block}.scheduled-payments-list.empty{flex-direction:column;align-items:stretch;min-height:200px;display:flex}.scheduled-payments-list.empty .payments-header{justify-content:flex-start;margin-bottom:16px}.scheduled-payments-list.empty .empty-state{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.empty-message{color:var(--text-secondary,#666);margin:0;font-size:16px;font-style:italic}@media (prefers-color-scheme:dark){.scheduled-payments-list{background:var(--card-background-dark,#2a2a2a);border-color:var(--border-color-dark,#444)}.payments-header{border-bottom-color:var(--border-color-dark,#444)}.payments-title{color:var(--text-primary-dark,#e0e0e0)}.payments-count{background:var(--primary-color-dark,#0d6efd)}.payments-table thead{background:var(--table-header-bg-dark,#1a1a1a);border-bottom-color:var(--border-color-dark,#444)}.payments-table th{color:var(--text-primary-dark,#e0e0e0)}.payments-table tbody tr{border-bottom-color:var(--border-color-dark,#444)}.payments-table tbody tr:hover{background:var(--table-row-hover-dark,#333)}.payments-table tbody tr.payment-row.overdue{background:#3d1f1f}.payments-table tbody tr.payment-row.due-soon{background:#3d3520}.payments-table td{color:var(--text-primary-dark,#e0e0e0)}.payment-modal{background:var(--card-background-dark,#2a2a2a)}.modal-header{border-bottom-color:var(--border-color-dark,#444)}.modal-header h3{color:var(--text-primary-dark,#e0e0e0)}.modal-close{color:var(--text-secondary-dark,#aaa)}.modal-close:hover{background:var(--table-row-hover-dark,#333)}.modal-section h4{color:var(--text-primary-dark,#e0e0e0)}.modal-label{color:var(--text-secondary-dark,#aaa)}.modal-value{color:var(--text-primary-dark,#e0e0e0)}.modal-section.amounts{background:var(--table-header-bg-dark,#1a1a1a)}.modal-section.amounts .modal-row.total{border-top-color:var(--border-color-dark,#444)}.payment-method-badge{background:var(--primary-color-dark,#0d6efd)}.empty-message{color:var(--text-secondary-dark,#aaa)}}.documents-list{flex-direction:column;gap:16px;display:flex}.documents-list.empty{justify-content:center;align-items:center;min-height:200px;display:flex}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:40px 20px;display:flex}.empty-icon{opacity:.5;font-size:64px}.empty-message{color:var(--text-secondary,#666);margin:0;font-size:16px;line-height:1.5}.documents-list .documents-grid-container{width:100%}.documents-list .documents-grid-header{border-bottom:2px solid var(--border-color,#e0e0e0);color:var(--text-primary,#333);grid-template-columns:2fr 1.25fr 1fr 1.5fr 1fr;gap:16px;padding:12px 16px;font-size:14px;font-weight:600;display:grid}.documents-list .documents-grid-row{color:var(--text-primary,#333);cursor:pointer;grid-template-columns:2fr 1.25fr 1fr 1.5fr 1fr;align-items:center;gap:16px;padding:12px 16px;font-size:14px;transition:background-color .2s;display:grid}.documents-list .documents-grid-row:hover{background:rgba(0,123,255,.08)}.documents-list .documents-grid-row:focus{outline:2px solid var(--focus-color);outline-offset:-2px}.documents-list .documents-grid-row:focus:not(:focus-visible){outline:none}.documents-list .documents-grid-row:focus-visible{outline:2px solid var(--focus-color);outline-offset:-2px}.documents-list .documents-grid-header>div:first-child,.documents-list .documents-grid-row>div:first-child{text-align:left;justify-self:start}.documents-list .document-name{color:var(--text-primary,#333);font-weight:500}.documents-list .documents-grid-header>div:nth-child(2),.documents-list .documents-grid-row>div:nth-child(2),.documents-list .documents-grid-header>div:nth-child(3),.documents-list .documents-grid-row>div:nth-child(3),.documents-list .documents-grid-header>div:nth-child(4),.documents-list .documents-grid-row>div:nth-child(4){text-align:left;justify-self:start}.documents-list .documents-grid-header>div:nth-child(5),.documents-list .documents-grid-row>div:nth-child(5){text-align:center;justify-self:center}.documents-list .document-status-badge{white-space:nowrap;border-radius:12px;padding:4px 12px;font-size:12px;font-weight:600;display:inline-block}.documents-list .document-status-badge.current{color:#155724;background:#d4edda}.documents-list .document-status-badge.expired{color:#721c24;background:#f8d7da}@media (prefers-color-scheme:dark){.empty-message{color:var(--text-secondary-dark,#aaa)}.documents-list .documents-grid-header{border-bottom-color:var(--border-color-dark,#444);color:var(--text-primary-dark,#e0e0e0)}.documents-list .documents-grid-row{color:var(--text-primary-dark,#e0e0e0)}.documents-list .documents-grid-row:hover{background:rgba(13,110,253,.15)}.documents-list .document-name{color:var(--text-primary-dark,#e0e0e0)}.documents-list .document-status-badge.current{color:#a3d9a5;background:#1e4620}.documents-list .document-status-badge.expired{color:#f5a3a8;background:#4a1f23}}@media (max-width:768px){.empty-state{padding:30px 15px}.empty-icon{font-size:48px}.empty-message{font-size:15px}.documents-list .documents-grid-header,.documents-list .documents-grid-row{grid-template-columns:2fr 1.25fr 1fr 1.5fr 1fr;gap:12px;padding:10px 12px;font-size:13px}}@media (max-width:480px){.documents-list .documents-grid-header{display:none}.documents-list .documents-grid-row{grid-template-columns:1fr;gap:8px;padding:12px}.documents-list .documents-grid-row>div:not(.document-name){color:var(--text-secondary,#666);font-size:12px}.documents-list .document-name{margin-bottom:4px;font-size:15px}}.document-viewer-overlay{z-index:1000;background:rgba(0,0,0,.75);justify-content:center;align-items:center;padding:20px;animation:.2s fadeIn;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.document-viewer-container{background:var(--card-background,#fff);border-radius:12px;flex-direction:column;width:100%;max-width:1200px;height:90vh;animation:.3s slideUp;display:flex;box-shadow:0 10px 40px rgba(0,0,0,.3)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.document-viewer-header{border-bottom:1px solid var(--border-color,#e0e0e0);flex-shrink:0;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.document-viewer-title{color:var(--text-primary,#333);text-overflow:ellipsis;white-space:nowrap;flex:1;margin:0;padding-right:16px;font-size:20px;font-weight:700;overflow:hidden}.document-viewer-close{width:40px;height:40px;color:var(--text-secondary,#666);cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}.document-viewer-close:hover{background:var(--hover-background,#f0f0f0);color:var(--text-primary,#333)}.document-viewer-close:focus{outline:2px solid var(--primary-color,#007bff);outline-offset:2px}.document-viewer-close:focus:not(:focus-visible){outline:none}.document-viewer-close:focus-visible{outline:2px solid var(--primary-color,#007bff);outline-offset:2px}.document-viewer-content{flex:1;min-height:400px;display:flex;position:relative;overflow:hidden}.document-viewer-loading{flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:40px;display:flex}.loading-spinner{border:4px solid var(--border-color,#e0e0e0);border-top-color:var(--primary-color,#007bff);border-radius:50%;width:48px;height:48px;animation:.8s linear infinite spin}.document-viewer-error{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:40px;display:flex}.error-icon{opacity:.7;font-size:64px}.error-message{color:var(--text-primary,#333);max-width:400px;margin:0;font-size:16px;line-height:1.5}.error-retry-button{background:var(--primary-color,#007bff);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:10px 24px;font-size:14px;font-weight:600;transition:background .2s}.error-retry-button:hover{background:var(--primary-color-hover,#0056b3)}.document-viewer-iframe{background:#fff;border:none;width:100%;height:100%}.document-viewer-text{width:100%;height:100%;padding:24px;overflow:auto}.document-viewer-text pre{color:var(--text-primary,#333);white-space:pre-wrap;word-wrap:break-word;margin:0;font-family:Courier New,monospace;font-size:14px;line-height:1.6}@media (prefers-color-scheme:dark){.document-viewer-overlay{background:rgba(0,0,0,.85)}.document-viewer-container{background:var(--card-background-dark,#2a2a2a)}.document-viewer-header{border-bottom-color:var(--border-color-dark,#444)}.document-viewer-title{color:var(--text-primary-dark,#e0e0e0)}.document-viewer-close{color:var(--text-secondary-dark,#aaa)}.document-viewer-close:hover{background:var(--hover-background-dark,#3a3a3a);color:var(--text-primary-dark,#e0e0e0)}.document-viewer-close:focus{outline-color:var(--primary-color-dark,#0d6efd)}.loading-spinner{border-color:var(--border-color-dark,#444);border-top-color:var(--primary-color-dark,#0d6efd)}.loading-text{color:var(--text-secondary-dark,#aaa)}.error-message{color:var(--text-primary-dark,#e0e0e0)}.error-retry-button{background:var(--primary-color-dark,#0d6efd)}.error-retry-button:hover{background:var(--primary-color-hover-dark,#0a58ca)}.error-retry-button:focus{outline-color:var(--primary-color-dark,#0d6efd)}.document-viewer-text pre{color:var(--text-primary-dark,#e0e0e0)}}@media (max-width:768px){.document-viewer-overlay{padding:0}.document-viewer-container{border-radius:0;max-width:100%;max-height:100vh}.document-viewer-header{padding:16px 20px}.document-viewer-title{font-size:18px}.document-viewer-close{width:36px;height:36px}.document-viewer-content{min-height:300px}.document-viewer-loading,.document-viewer-error{padding:30px 20px}.error-icon{font-size:48px}.error-message{font-size:15px}.document-viewer-text{padding:20px}.document-viewer-text pre{font-size:13px}}.signature-modal-overlay{z-index:1000;background:rgba(0,0,0,.7);justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.signature-modal{background:var(--bg-primary,#fff);border-radius:12px;flex-direction:column;width:100%;max-width:900px;max-height:90vh;display:flex;overflow-y:auto;box-shadow:0 10px 40px rgba(0,0,0,.3)}.signature-modal-header{border-bottom:1px solid var(--border-color,#e0e0e0);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.signature-modal-header h3{color:var(--text-primary,#333);margin:0;font-size:20px;font-weight:600}.signature-modal-close{color:var(--text-secondary,#666);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:24px;transition:background-color .2s;display:flex}.signature-modal-close:hover{background:var(--bg-hover,#f5f5f5)}.signature-modal-body{flex:1;padding:24px;overflow-y:auto}.signature-document-preview{border:1px solid var(--border-color,#e0e0e0);background:#f5f5f5;border-radius:8px;margin-bottom:24px;overflow:hidden}.document-preview-iframe{border:none;width:100%;height:400px;display:block}.document-loading,.document-error{flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:60px 20px;display:flex}.loading-spinner-small{border:3px solid var(--border-color,#e0e0e0);border-top-color:var(--button-primary,#007bff);border-radius:50%;width:32px;height:32px;animation:1s linear infinite spin}.document-loading p,.document-error p{color:var(--text-secondary,#666);margin:0;font-size:14px}.document-error .error-icon{font-size:32px}.signature-document-info{background:var(--bg-secondary,#f8f9fa);border-radius:8px;margin-bottom:24px;padding:16px}.signature-document-info h4{color:var(--text-primary,#333);margin:0 0 8px;font-size:16px;font-weight:600}.signature-document-info p{color:var(--text-secondary,#666);margin:0;font-size:14px;line-height:1.5}.signature-canvas-container{margin-bottom:20px}.signature-label{color:var(--text-primary,#333);margin-bottom:8px;font-size:14px;font-weight:500;display:block}.signature-canvas{border:2px solid var(--border-color,#e0e0e0);cursor:crosshair;background:#fff;border-radius:8px;width:100%;height:200px;display:block}.signature-clear-button{border:1px solid var(--border-color,#e0e0e0);color:var(--text-secondary,#666);cursor:pointer;background:0 0;border-radius:6px;margin-top:8px;padding:6px 12px;font-size:13px;transition:all .2s}.signature-clear-button:hover:not(:disabled){background:var(--bg-hover,#f5f5f5);border-color:var(--text-secondary,#666)}.signature-clear-button:disabled{opacity:.5;cursor:not-allowed}.signature-error{color:#856404;background:#fff3cd;border:1px solid #ffc107;border-radius:6px;align-items:center;gap:8px;margin-bottom:16px;padding:12px;font-size:14px;display:flex}.signature-agreement{background:var(--bg-secondary,#f8f9fa);border-radius:8px;margin-bottom:20px;padding:16px}.signature-agreement p{color:var(--text-secondary,#666);margin:0;font-size:13px;line-height:1.6}.signature-modal-footer{border-top:1px solid var(--border-color,#e0e0e0);justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.signature-cancel-button,.signature-sign-button{cursor:pointer;border:none;border-radius:8px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s}.signature-cancel-button{color:var(--text-secondary,#666);border:1px solid var(--border-color,#e0e0e0);background:0 0}.signature-cancel-button:hover:not(:disabled){background:var(--bg-hover,#f5f5f5)}.signature-sign-button{background:var(--button-primary,#007bff);color:#fff}.signature-sign-button:hover:not(:disabled){background:var(--button-primary-hover,#0056b3)}.signature-sign-button:disabled,.signature-cancel-button:disabled{opacity:.6;cursor:not-allowed}@media (prefers-color-scheme:dark){.signature-modal{background:var(--bg-primary-dark,#1e1e1e)}.signature-modal-header{border-bottom-color:var(--border-color-dark,#444)}.signature-modal-header h3{color:var(--text-primary-dark,#e0e0e0)}.signature-modal-close{color:var(--text-secondary-dark,#aaa)}.signature-modal-close:hover{background:var(--bg-hover-dark,#2a2a2a)}.signature-document-preview{border-color:var(--border-color-dark,#444);background:#2a2a2a}.document-loading p,.document-error p{color:var(--text-secondary-dark,#aaa)}.loading-spinner-small{border-color:var(--border-color-dark,#444);border-top-color:var(--button-primary,#007bff)}.signature-document-info{background:var(--bg-secondary-dark,#2a2a2a)}.signature-document-info h4{color:var(--text-primary-dark,#e0e0e0)}.signature-document-info p{color:var(--text-secondary-dark,#aaa)}.signature-label{color:var(--text-primary-dark,#e0e0e0)}.signature-canvas{border-color:var(--border-color-dark,#444);background:#fff}.signature-clear-button{border-color:var(--border-color-dark,#444);color:var(--text-secondary-dark,#aaa)}.signature-clear-button:hover:not(:disabled){background:var(--bg-hover-dark,#2a2a2a);border-color:var(--text-secondary-dark,#aaa)}.signature-agreement{background:var(--bg-secondary-dark,#2a2a2a)}.signature-agreement p{color:var(--text-secondary-dark,#aaa)}.signature-modal-footer{border-top-color:var(--border-color-dark,#444)}.signature-cancel-button{color:var(--text-secondary-dark,#aaa);border-color:var(--border-color-dark,#444)}.signature-cancel-button:hover:not(:disabled){background:var(--bg-hover-dark,#2a2a2a)}}@media (max-width:768px){.signature-modal{border-radius:0;max-width:100%;max-height:100vh}.document-preview-iframe{height:300px}.signature-canvas{height:150px}}.account-error-boundary{background-color:var(--background-color,#fff);justify-content:center;align-items:center;min-height:400px;padding:2rem;display:flex}.error-boundary-content{text-align:center;background-color:var(--card-background,#f9f9f9);border-radius:8px;max-width:600px;padding:2rem;box-shadow:0 2px 8px rgba(0,0,0,.1)}.error-icon{margin-bottom:1rem;font-size:4rem;line-height:1}.error-title{color:var(--text-primary,#1a1a1a);margin:0 0 1rem;font-size:1.5rem;font-weight:600}.error-message{color:var(--text-secondary,#666);margin:0 0 1.5rem;font-size:1rem;line-height:1.6}.error-details{text-align:left;background-color:var(--background-color,#fff);border:1px solid var(--border-color,#e0e0e0);border-radius:4px;margin:1.5rem 0;padding:1rem}.error-details summary{cursor:pointer;color:var(--text-primary,#1a1a1a);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-weight:500}.error-details summary:hover{color:var(--primary-color,#007bff)}.error-stack{color:#d32f2f;white-space:pre-wrap;word-wrap:break-word;background-color:#f5f5f5;border-radius:4px;margin:1rem 0 0;padding:1rem;font-family:Courier New,monospace;font-size:.875rem;overflow-x:auto}.error-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;margin:1.5rem 0;display:flex}.error-button{cursor:pointer;border:none;border-radius:4px;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;transition:all .2s}.error-button.primary{background-color:var(--primary-color,#007bff);color:#fff}.error-button.primary:hover{background-color:var(--primary-hover,#0056b3);transform:translateY(-1px);box-shadow:0 2px 4px rgba(0,0,0,.2)}.error-button.secondary{background-color:var(--secondary-color,#6c757d);color:#fff}.error-button.secondary:hover{background-color:#5a6268;transform:translateY(-1px);box-shadow:0 2px 4px rgba(0,0,0,.2)}.error-button.tertiary{color:var(--text-secondary,#666);border:1px solid var(--border-color,#e0e0e0);background-color:transparent}.error-button.tertiary:hover{background-color:var(--hover-background,#f5f5f5);border-color:var(--text-secondary,#666)}.error-support{border-top:1px solid var(--border-color,#e0e0e0);margin-top:2rem;padding-top:1.5rem}.support-text{color:var(--text-secondary,#666);margin:0;font-size:.875rem}.support-link{color:var(--primary-color,#007bff);font-weight:500;text-decoration:none}.support-link:hover{text-decoration:underline}@media (max-width:768px){.account-error-boundary{padding:1rem}.error-boundary-content{padding:1.5rem}.error-icon{font-size:3rem}.error-title{font-size:1.25rem}.error-actions{flex-direction:column}.error-button{width:100%}}@keyframes skeleton-loading{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg,#f0f0f0 0%,#e0e0e0 20%,#f0f0f0 40%,#f0f0f0 100%) 0 0/200% 100%;border-radius:4px;animation:1.5s ease-in-out infinite skeleton-loading;display:block}@media (prefers-color-scheme:dark){.skeleton{background:linear-gradient(90deg,#2a2a2a 0%,#3a3a3a 20%,#2a2a2a 40%,#2a2a2a 100%)}}.skeleton-card{background-color:var(--card-background,#fff);border:1px solid var(--border-color,#e0e0e0);border-radius:8px;margin-bottom:1rem;padding:1.5rem}.skeleton-icon{border-radius:50%;width:40px;height:40px}.skeleton-title{width:60%;height:20px;margin-bottom:.5rem}.skeleton-text{width:100%;height:16px;margin-bottom:.5rem}.skeleton-text.short{width:40%}.skeleton-text.tiny{width:30%}.skeleton-badge{border-radius:12px;width:80px;height:24px}.skeleton-amount{width:120px;height:32px;margin-top:.5rem}.skeleton-date{width:100px;height:18px}.payment-method-card-skeleton .skeleton-header{align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.payment-method-card-skeleton .skeleton-content{margin-bottom:1rem}.payment-method-card-skeleton .skeleton-footer{border-top:1px solid var(--border-color,#e0e0e0);gap:1rem;padding-top:1rem;display:flex}.account-credit-skeleton{text-align:center;padding:2rem}.account-credit-skeleton .skeleton-title{width:50%;margin:0 auto 1rem}.account-credit-skeleton .skeleton-amount{width:150px;height:48px;margin:0 auto}.invoice-card-skeleton .skeleton-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.invoice-card-skeleton .skeleton-row{justify-content:space-between;margin-bottom:.75rem;display:flex}.invoice-card-skeleton .skeleton-footer{border-top:1px solid var(--border-color,#e0e0e0);justify-content:flex-end;padding-top:1rem;display:flex}.scheduled-payment-card-skeleton .skeleton-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.scheduled-payment-card-skeleton .skeleton-footer{border-top:1px solid var(--border-color,#e0e0e0);justify-content:flex-end;padding-top:1rem;display:flex}.document-card-skeleton .skeleton-header{align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.account-page-skeleton{padding:2rem}.skeleton-page-header{margin-bottom:2rem}.skeleton-page-title{width:200px;height:36px;margin-bottom:.5rem}.skeleton-page-subtitle{width:400px;height:20px}.skeleton-tabs{border-bottom:2px solid var(--border-color,#e0e0e0);gap:1rem;margin-bottom:2rem;display:flex}.skeleton-tab{width:120px;height:40px;margin-bottom:-2px}.skeleton-content{margin-top:2rem}.skeleton-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem;display:grid}.skeleton-section{grid-column:span 1}.skeleton-section.full-width{grid-column:span 2}.skeleton-section-title{width:180px;height:24px;margin-bottom:1rem}.skeleton-documents-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem;display:grid}@media (max-width:768px){.skeleton-grid{grid-template-columns:1fr}.skeleton-section,.skeleton-section.full-width{grid-column:span 1}.skeleton-page-subtitle{width:100%}.skeleton-documents-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.skeleton{background:#f0f0f0;animation:none}@media (prefers-color-scheme:dark){.skeleton{background:#2a2a2a}}}.account-tabs-header{justify-content:center;align-items:center;gap:.75rem;margin-top:1rem;margin-bottom:2.25rem;padding:.5rem 0;display:flex}.account-tabs-header .tab-header{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;border-radius:8px;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;transition:all .2s;display:flex}.account-tabs-header .tab-header:hover{background:var(--bg-hover);border-color:var(--button-primary);transform:translateY(-1px);box-shadow:0 2px 8px rgba(0,0,0,.1)}.account-tabs-header .tab-header:focus{outline:2px solid var(--focus-color);outline-offset:2px;z-index:1}.account-tabs-header .tab-header:focus:not(:focus-visible){outline:none}.account-tabs-header .tab-header:focus-visible{outline:2px solid var(--focus-color);outline-offset:2px}.account-tabs-header .tab-header.active{color:var(--text-primary);border-color:var(--text-primary);background:0 0}.tab-label{font-weight:500}.billing-content,.documents-content{animation:.3s ease-in fadeIn}.billing-grid-two-column{grid-template-columns:1fr 1fr;align-items:stretch;gap:1.5rem;display:grid}.billing-grid-item{flex-direction:column;min-height:100%;display:flex}.billing-grid-item>*{flex:1;height:100%}.billing-grid-item .empty-state,.billing-grid-item .account-credit-display{flex-direction:column;justify-content:center;height:100%;margin-bottom:0;display:flex}.profile-card-large .payment-method-card,.profile-card-large .invoice-card,.profile-card-large .scheduled-payment-card,.profile-card-large .document-card,.profile-card-large .documents-list{background:0 0;border:none!important}.profile-card-large .account-credit-display{background:0 0;border-color:var(--border-color,#e0e0e0)!important}.profile-card-large .payment-method-card,.profile-card-large .subscriptions-list,.profile-card-large .invoices-list,.profile-card-large .scheduled-payments-list{background:0 0;border:1px solid var(--border-color,#e0e0e0)!important}.profile-card-large .subscription-item,.profile-card-large .invoice-item,.profile-card-large .scheduled-payment-item,.profile-card-large .document-item,.profile-card-large .subscription-card,.profile-card-large .invoice-card,.profile-card-large .scheduled-payment-card,.profile-card-large .document-card{background:0 0;border:none!important}.profile-card-large .payment-method-card{background:0 0;border:1px solid var(--border-color,#e0e0e0)!important}.profile-card-large .payment-method-header,.profile-card-large .subscription-header,.profile-card-large .invoice-header,.profile-card-large .payment-header,.profile-card-large .payment-amounts,.profile-card-large .invoice-amounts,.profile-card-large .payment-methods-section,.profile-card-large .invoice-row.total,.profile-card-large .payment-row.total{border-color:var(--border-color,#e0e0e0)!important}.profile-card-large h3,.profile-card-large h4,.profile-card-large h5,.profile-card-large .credit-title,.profile-card-large .subscription-title,.profile-card-large .invoice-title,.profile-card-large .payment-title{border-bottom:none!important;padding-bottom:0!important}.profile-card-large .subscriptions-list h3,.profile-card-large .invoices-list h3,.profile-card-large .scheduled-payments-list h3,.profile-card-large .documents-list h3,.profile-card-large [class*=-list] h3,.profile-card-large [class*=-list] h4,.profile-card-large .subscriptions-list>:first-child,.profile-card-large .invoices-list>:first-child,.profile-card-large .scheduled-payments-list>:first-child,.profile-card-large .documents-list>:first-child{border-bottom:none!important}.profile-card-large .subscriptions-header,.profile-card-large .invoices-header,.profile-card-large .scheduled-payments-header,.profile-card-large .payments-header,.profile-card-large .documents-header{border-bottom:none!important;padding-bottom:0!important}.profile-card-large hr,.profile-card-large .divider,.profile-card-large .separator{display:none!important}.profile-card-large .payment-method-card:hover{background:rgba(255,255,255,.05)!important;transform:none!important;box-shadow:0 4px 12px rgba(0,0,0,.08)!important}.profile-card-large .subscription-card:hover,.profile-card-large .invoice-card:hover,.profile-card-large .scheduled-payment-card:hover,.profile-card-large .document-card:hover,.profile-card-large .subscription-item:hover,.profile-card-large .invoice-item:hover,.profile-card-large .scheduled-payment-item:hover,.profile-card-large .document-item:hover,.profile-card-large [class*=-card]:hover,.profile-card-large [class*=-item]:hover{background:rgba(255,255,255,.05)!important}@media (max-width:768px){.billing-grid-two-column{grid-template-columns:1fr;gap:1rem}.billing-grid-item .empty-state,.billing-grid-item .account-credit-display{height:auto}}.payment-methods-list{flex-direction:column;gap:1rem;display:flex}.empty-state{text-align:center;background:var(--bg-secondary);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;padding:2rem;display:flex}.empty-icon{opacity:.5;margin-bottom:.75rem;font-size:2.5rem}.empty-message{color:var(--text-secondary);margin:0;font-size:.95rem}.account-page-loading{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:4rem 2rem;display:flex}.loading-spinner{border:4px solid var(--border-color);border-top-color:var(--button-primary);border-radius:50%;width:48px;height:48px;margin-bottom:1rem;animation:1s linear infinite spin}.loading-text{color:var(--text-secondary);margin:0;font-size:1rem}.account-page{max-width:1400px;min-height:100vh;margin:0 auto;padding:2rem}.account-page-header{margin-bottom:2rem}.account-page-title{color:var(--text-primary);margin:0 0 .5rem;font-size:2rem;font-weight:600}.account-page-error{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:4rem 2rem;display:flex}.error-icon{margin-bottom:1rem;font-size:3rem}.error-message{color:var(--status-error);max-width:500px;margin:0 0 1.5rem;font-size:1rem}.error-retry-button{background-color:var(--button-primary);color:#fff;cursor:pointer;border:none;border-radius:.5rem;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;transition:background-color .2s}.error-retry-button:hover,.error-retry-button:active{background-color:var(--button-primary-hover)}.error-retry-button:focus{outline:2px solid var(--focus-color);outline-offset:2px}.error-retry-button:focus:not(:focus-visible){outline:none}.error-retry-button:focus-visible{outline:2px solid var(--focus-color);outline-offset:2px}@media (max-width:1024px){.account-tabs-header{gap:.375rem}.account-tabs-header .tab-header{padding:.5rem 1rem;font-size:.8125rem}}@media (max-width:768px){.account-tabs-header{flex-wrap:wrap;gap:.25rem}.account-tabs-header .tab-header{white-space:nowrap;padding:.5rem .875rem;font-size:.8125rem}.tab-icon{font-size:1rem}}@media (max-width:480px){.account-tabs-header{justify-content:center;width:100%}.account-tabs-header .tab-header{flex:1;padding:.5rem .75rem;font-size:.75rem}.tab-icon{font-size:.9375rem}}.profile-header-large.documents-header-left{text-align:left}.profile-header-large.documents-header-left .player-name-section{justify-content:flex-start}.documents-section-card{border:1px solid var(--border-color);background:0 0;border-radius:8px;flex-direction:column;margin-bottom:1.5rem;padding:1.5rem;display:flex}.documents-section-card:last-child{margin-bottom:0}.documents-section-card h4{color:var(--text-primary);margin:0 0 1rem;font-size:1.1rem;font-weight:600}.documents-section-card:first-of-type .documents-grid-container .documents-grid-header{border-bottom:2px solid var(--border-color,#e0e0e0);color:var(--text-primary,#333);background:0 0;grid-template-columns:2fr 1.25fr 1fr 1fr 1fr;gap:16px;padding:12px 16px;font-size:14px;font-weight:600;display:grid}.documents-section-card:first-of-type .documents-grid-container .documents-grid-header>div:first-child,.documents-section-card:first-of-type .documents-grid-container .documents-grid-header>div:nth-child(2),.documents-section-card:first-of-type .documents-grid-container .documents-grid-header>div:nth-child(3),.documents-section-card:first-of-type .documents-grid-container .documents-grid-header>div:nth-child(4){text-align:left}.documents-section-card:first-of-type .documents-grid-container .documents-grid-row{cursor:pointer;color:var(--text-primary,#333);border-bottom:none;grid-template-columns:2fr 1.25fr 1fr 1fr 1fr;align-items:center;gap:16px;padding:12px 16px;font-size:14px;transition:background-color .2s;display:grid}.documents-section-card:first-of-type .documents-grid-container .documents-grid-row>div{align-items:center;display:flex}.documents-section-card:first-of-type .documents-grid-container .documents-grid-row>div:first-child,.documents-section-card:first-of-type .documents-grid-container .documents-grid-row>div:nth-child(2),.documents-section-card:first-of-type .documents-grid-container .documents-grid-row>div:nth-child(3),.documents-section-card:first-of-type .documents-grid-container .documents-grid-row>div:nth-child(4){text-align:left;justify-content:flex-start;justify-self:start}.documents-section-card:first-of-type .documents-grid-container .documents-grid-row:hover{background:rgba(0,123,255,.08)}.documents-section-card:first-of-type .documents-grid-container .documents-grid-row:focus{outline:2px solid var(--focus-color);outline-offset:-2px}.documents-section-card:first-of-type .documents-grid-container .documents-grid-row:focus:not(:focus-visible){outline:none}.documents-section-card:first-of-type .documents-grid-container .documents-grid-row:focus-visible{outline:2px solid var(--focus-color);outline-offset:-2px}.text-center{text-align:center;justify-content:center;justify-self:center;align-items:center;display:flex}.document-name{color:var(--text-primary,#333);font-weight:500}.document-status-badge{text-transform:capitalize;border-radius:12px;padding:4px 12px;font-size:12px;font-weight:600;display:inline-block}.document-status-badge.signed{color:#155724;background:#d4edda}.document-status-badge.unsigned{color:#856404;background:#fff3cd}.document-sign-button{background:var(--button-primary,#007bff);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:6px 16px;font-size:13px;font-weight:500;transition:all .2s}.document-sign-button:hover{background:var(--button-primary-hover,#0056b3);transform:translateY(-1px);box-shadow:0 2px 8px rgba(0,123,255,.3)}.document-sign-button:active{transform:translateY(0)}@media (max-width:768px){.documents-section-card .documents-grid-container{overflow-x:auto}.documents-section-card:first-of-type .documents-grid-container .documents-grid-header,.documents-section-card:first-of-type .documents-grid-container .documents-grid-row{grid-template-columns:2fr 1.25fr 1fr 1fr 1fr;gap:12px;padding:10px 12px;font-size:13px}.documents-section-card{padding:1.25rem}}@media (prefers-color-scheme:dark){.documents-section-card .documents-grid-container .documents-grid-header,.documents-section-card .documents-grid-container .documents-grid-row{border-bottom-color:var(--border-color-dark,#444);color:var(--text-primary-dark,#e0e0e0)}.documents-section-card .documents-grid-container .documents-grid-row:hover{background:rgba(13,110,253,.15)}.document-name{color:var(--text-primary-dark,#e0e0e0)}.document-status-badge.signed{color:#a3d9a5;background:#1e4620}.document-status-badge.unsigned{color:#f0d896;background:#4a3f1a}}@media print{.account-tabs-header{display:none}}@media (max-width:768px){.page-header{padding:1rem 1rem .75rem}.page-title-section h1{font-size:1.5rem}.page-description{font-size:.875rem}.page-content{padding:0 1rem 1rem}.page-filter-buttons{margin-top:.75rem}.section-content{padding:1rem 0}.section-content h3{font-size:1.125rem}.section-actions{gap:.5rem}}@media (max-width:480px){.page-header{padding:.75rem .75rem .5rem}.page-title-section h1{font-size:1.375rem}.page-content{padding:0 .75rem .75rem}.section-content{padding:.75rem 0}.section-actions{flex-direction:column}.section-actions .btn{justify-content:center;width:100%}}@media (prefers-contrast:high){.page-header{border-bottom-width:2px}.section-content{border-width:2px}}@media (prefers-reduced-motion:reduce){.base-page.loading:after{animation:none}}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes slideOutRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(100%)}}@keyframes criticalPulse{0%,to{box-shadow:0 4px 16px rgba(0,0,0,.15)}50%{box-shadow:0 4px 20px rgba(220,53,69,.4)}}@keyframes sessionErrorFadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@keyframes stripeMove{0%{background-position:0 0}to{background-position:40px 0}}@media (max-width:768px){.banner-content{flex-direction:column;align-items:stretch;gap:12px;padding:10px 16px}.banner-left{justify-content:center}.impersonation-details{justify-content:center;gap:12px}.session-timing-container{margin-top:8px}.banner-right{justify-content:center}.end-impersonation-btn{justify-content:center;width:100%;padding:12px 20px}.impersonated-user-name{font-size:16px}.status-text{font-size:13px}}@media (max-width:480px){.impersonation-details{flex-direction:column;align-items:center;gap:6px}.admin-info,.session-duration,.remaining-time{font-size:12px}.btn-text{display:none}.end-impersonation-btn{padding:10px 16px}}@media (prefers-contrast:high){.impersonation-banner{background:#d63384;border-bottom-color:#a02952}.end-impersonation-btn{color:#a02952;background:#fff;border-color:#a02952}.remaining-time.time-critical{color:#fff;background:#dc3545}}@media (prefers-reduced-motion:reduce){.impersonation-banner,.banner-stripe,.remaining-time.time-critical{animation:none}.end-impersonation-btn:hover:not(:disabled){transform:none}}@media print{.impersonation-banner{display:none}}._loginContainer_4do5o_3{background-color:var(--bg-primary);min-height:100vh;padding:var(--mobile-padding);justify-content:center;align-items:center;transition:background-color .2s;display:flex}._loginCard_4do5o_13{background-color:var(--surface-primary);box-shadow:0 2px 10px var(--shadow-color);border:1px solid var(--border-primary);border-radius:8px;width:100%;max-width:400px;padding:2rem;transition:all .2s;position:relative}._themeToggle_4do5o_25{cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.5rem;font-size:1.5rem;transition:background-color .2s;position:absolute;top:1rem;right:1rem}._themeToggle_4do5o_25:hover{background-color:var(--bg-secondary)}._loginHeader_4do5o_42{justify-content:flex-start;align-items:center;gap:0;margin-bottom:2rem;display:flex}._loginLogo_4do5o_50{object-fit:contain;width:60px;height:60px}._loginTitle_4do5o_56{color:var(--text-primary);margin:0;font-size:1.5rem;font-weight:600;transition:color .2s}._welcomeMessage_4do5o_64{background-color:var(--bg-secondary);border-left:4px solid var(--button-primary);border-radius:4px;margin-bottom:1.5rem;padding:1rem}._welcomeMessage_4do5o_64 p{color:var(--text-primary);margin:0;font-size:.9rem;line-height:1.5}._passwordRequirements_4do5o_79{color:var(--text-muted);margin-top:.5rem;font-size:.75rem;line-height:1.4;display:block}._forgotPassword_4do5o_87{text-align:center;margin-top:1rem}._forgotPassword_4do5o_87 a{color:var(--button-primary);font-size:.875rem;font-weight:500;text-decoration:none;transition:color .2s}._forgotPassword_4do5o_87 a:hover{color:var(--button-primary-hover);text-decoration:underline}._formGroup_4do5o_105{margin-bottom:1rem}._formGroupLast_4do5o_109{margin-bottom:1.5rem}._formLabel_4do5o_113{color:var(--text-primary);text-align:left;margin-bottom:.5rem;font-weight:500;transition:color .2s;display:block}._formInput_4do5o_122{border:1px solid var(--input-border);background-color:var(--input-bg);width:100%;color:var(--input-text);box-sizing:border-box;border-radius:4px;padding:.75rem;font-size:1rem;transition:all .2s}._formInput_4do5o_122:focus{border-color:var(--input-border-focus);box-shadow:var(--focus-shadow);outline:none}._formInput_4do5o_122::-webkit-input-placeholder{color:var(--input-placeholder)}._formInput_4do5o_122::-moz-placeholder{color:var(--input-placeholder)}._formInput_4do5o_122::-ms-input-placeholder{color:var(--input-placeholder)}._formInput_4do5o_122::placeholder{color:var(--input-placeholder)}._errorMessage_4do5o_144{color:var(--status-error);background-color:var(--bg-secondary);border:1px solid var(--status-error);border-radius:4px;margin-bottom:1rem;padding:.5rem;font-size:.875rem;transition:all .2s}._loginButton_4do5o_155{background-color:var(--button-primary);color:#fff;cursor:pointer;width:100%;min-height:var(--touch-target-min);border:none;border-radius:4px;justify-content:center;align-items:center;gap:.5rem;padding:.75rem;font-size:1rem;font-weight:500;transition:all .2s;display:flex}._loginButton_4do5o_155:hover:not(:disabled){background-color:var(--button-primary-hover)}._loginButton_4do5o_155:focus{outline:2px solid var(--focus-color);outline-offset:2px;box-shadow:var(--focus-shadow)}._loginButton_4do5o_155:disabled{cursor:not-allowed;opacity:.6;background-color:var(--button-secondary)}._spinner_4do5o_190{border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite _spin_4do5o_190;display:inline-block}@keyframes _spin_4do5o_190{to{transform:rotate(360deg)}}@media (max-width:768px){._loginContainer_4do5o_3{padding:1rem}._loginCard_4do5o_13{width:100%;max-width:none;padding:1.5rem}._loginTitle_4do5o_56{margin-bottom:1.5rem;font-size:1.25rem}._formInput_4do5o_122,._loginButton_4do5o_155{font-size:16px}}@media (max-width:480px){._loginContainer_4do5o_3{padding:.5rem}._loginCard_4do5o_13{border-radius:6px;padding:1rem}._loginTitle_4do5o_56{font-size:1.125rem}}@media (prefers-contrast:high){._loginCard_4do5o_13{border:2px solid var(--border-primary)}._formInput_4do5o_122{border:2px solid var(--input-border)}._formInput_4do5o_122:focus{border:2px solid var(--input-border-focus)}._errorMessage_4do5o_144{border:2px solid var(--status-error)}}@media (prefers-reduced-motion:reduce){._loginContainer_4do5o_3,._loginCard_4do5o_13,._loginTitle_4do5o_56,._formLabel_4do5o_113,._formInput_4do5o_122,._errorMessage_4do5o_144,._loginButton_4do5o_155{transition:none}._spinner_4do5o_190{border-top-color:rgba(255,255,255,.3);animation:none}}._formInput_4do5o_122:focus-visible{outline:2px solid var(--focus-color);outline-offset:2px;box-shadow:var(--focus-shadow)}._loginButton_4do5o_155:focus-visible{outline:2px solid var(--focus-color);outline-offset:2px;box-shadow:var(--focus-shadow)}._formHint_4do5o_295{color:var(--text-muted);margin-top:.25rem;font-size:.75rem;transition:color .2s;display:block}._successMessage_4do5o_303{color:var(--status-success);background-color:var(--bg-secondary);border:1px solid var(--status-success);text-align:center;border-radius:4px;margin:1rem 0;padding:1rem;transition:all .2s}._linkSection_4do5o_314{text-align:center;color:var(--text-secondary);margin-top:1.5rem;font-size:.875rem}._linkSection_4do5o_314 a{color:var(--button-primary);font-weight:500;text-decoration:none;transition:color .2s}._linkSection_4do5o_314 a:hover{color:var(--button-primary-hover);text-decoration:underline}.App{text-align:left;background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh}.dashboard{background-color:var(--bg-primary);padding:2rem}.login{background-color:var(--bg-secondary);max-width:400px;box-shadow:0 2px 4px var(--shadow-color);border-radius:.5rem;margin:0 auto;padding:2rem}.dashboard-main{flex:1;overflow-y:auto}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-primary);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--nav-bg-color:#fff;--nav-text-color:#2c3e50;--nav-text-secondary:#5d6d7e;--nav-hover-color:#ecf0f1;--nav-active-color:#1f618d;--nav-border-color:#bdc3c7;--nav-surface-color:#f8f9fa;--bg-primary:#fff;--bg-secondary:#f8f9fa;--bg-tertiary:#ecf0f1;--bg-quaternary:#d5dbdb;--surface-primary:#fff;--surface-secondary:#f8f9fa;--text-primary:#2c3e50;--text-secondary:#5d6d7e;--text-muted:#7b8794;--border-primary:#bdc3c7;--border-color:#bdc3c7;--border-hover:#a6acaf;--shadow-color:rgba(0,0,0,.1);--button-primary:#1f618d;--button-primary-rgb:31, 97, 141;--button-primary-hover:#1a5276;--button-secondary:#7b8794;--button-secondary-hover:#5d6d7e;--button-success:#186a3b;--button-success-hover:#145a32;--button-danger:#a93226;--button-danger-hover:#922b21;--button-primary-alpha:rgba(31,97,141,.2);--input-bg:#fff;--input-border:#bdc3c7;--input-border-focus:#1f618d;--input-text:#2c3e50;--input-placeholder:#7b8794;--status-success:#186a3b;--status-warning:#8b6914;--status-error:#a93226;--status-info:#1f618d;--chat-bubble-other:#e5e5ea;--focus-color:#1f618d;--focus-shadow:0 0 0 2px rgba(31,97,141,.3);--focus-ring:rgba(31,97,141,.3);--touch-target-min:44px;--mobile-padding:1rem;--mobile-gap:.75rem;--mobile-border-radius:12px;--breakpoint-mobile:480px;--breakpoint-tablet:768px;--breakpoint-desktop:1024px}[data-theme=dark]{--nav-bg-color:#1b2631;--nav-text-color:#f8f9fa;--nav-text-secondary:#d5dbdb;--nav-hover-color:#2c3e50;--nav-active-color:#5dade2;--nav-border-color:#566573;--nav-surface-color:#2c3e50;--bg-primary:#1b2631;--bg-secondary:#2c3e50;--bg-tertiary:#34495e;--bg-quaternary:#4a5568;--surface-primary:#2c3e50;--surface-secondary:#34495e;--text-primary:#f8f9fa;--text-secondary:#d5dbdb;--text-muted:#aeb6bf;--border-primary:#566573;--border-color:#566573;--border-hover:#6b7280;--shadow-color:rgba(0,0,0,.4);--button-primary:#5dade2;--button-primary-rgb:93, 173, 226;--button-primary-hover:#85c1e9;--button-secondary:#aeb6bf;--button-secondary-hover:#d5dbdb;--button-success:#58d68d;--button-success-hover:#7dcea0;--button-danger:#ec7063;--button-danger-hover:#f1948a;--button-primary-alpha:rgba(93,173,226,.2);--input-bg:#2c3e50;--input-border:#566573;--input-border-focus:#5dade2;--input-text:#f8f9fa;--input-placeholder:#aeb6bf;--status-success:#58d68d;--status-warning:#f7dc6f;--status-error:#ec7063;--status-info:#5dade2;--chat-bubble-other:#3a3a3c;--focus-color:#5dade2;--focus-shadow:0 0 0 2px rgba(93,173,226,.3);--focus-ring:rgba(93,173,226,.3);--touch-target-min:44px;--mobile-padding:1rem;--mobile-gap:.75rem;--mobile-border-radius:12px}*{transition:background-color .2s,color .2s,border-color .2s,box-shadow .2s}body{background-color:var(--bg-primary);color:var(--text-primary)}.navigation{background-color:var(--nav-bg-color);color:var(--nav-text-color);border-color:var(--nav-border-color)}.navigation-item{color:var(--nav-text-color);border-color:var(--nav-border-color)}.navigation-item:hover{background-color:var(--nav-hover-color)}.navigation-item.active{background-color:var(--nav-active-color);color:#fff}.navigation-item.secondary{color:var(--nav-text-secondary)}.btn{cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid transparent;border-radius:6px;padding:.375rem .75rem;font-size:.8rem;font-weight:500;transition:all .2s;position:relative;overflow:hidden}.btn:before{content:"";pointer-events:none;border-radius:inherit;background:linear-gradient(135deg,rgba(255,255,255,.1) 0%,rgba(255,255,255,.05) 100%);position:absolute;top:0;bottom:0;left:0;right:0}.btn-primary{background-color:rgba(var(--button-primary-rgb,0, 123, 255), .12);color:var(--button-primary,#007bff);border-color:rgba(var(--button-primary-rgb,0, 123, 255), .3)}.btn-primary:hover{background-color:rgba(var(--button-primary-rgb,0, 123, 255), .2);box-shadow:0 2px 8px rgba(var(--button-primary-rgb,0, 123, 255), .2);transform:translateY(-1px)}.btn-secondary{color:#6c757d;background-color:rgba(108,117,125,.1);border-color:rgba(108,117,125,.3)}.btn-secondary:hover{color:#545b62;background-color:rgba(108,117,125,.15);border-color:rgba(108,117,125,.4);transform:translateY(-1px)}[data-theme=light] .btn-secondary{color:#374151;background-color:#f3f4f6;border-color:#d1d5db}[data-theme=light] .btn-secondary:hover{color:#1f2937;background-color:#e5e7eb;border-color:#9ca3af}[data-theme=dark] .btn-secondary{color:#e2e8f0;background-color:#4a5568;border-color:#718096}[data-theme=dark] .btn-secondary:hover{color:#fff;background-color:#5a6a82;border-color:#90a0b4;transform:translateY(-1px)}.btn-secondary.btn-sm{padding:.375rem .75rem;font-size:.875rem}[data-theme=light] .btn-secondary.btn-sm{color:#374151;background-color:#f3f4f6;border-color:#d1d5db}[data-theme=light] .btn-secondary.btn-sm:hover{color:#1f2937;background-color:#e5e7eb;border-color:#9ca3af}[data-theme=dark] .btn-secondary.btn-sm{color:#e2e8f0;background-color:#4a5568;border-color:#718096}[data-theme=dark] .btn-secondary.btn-sm:hover{color:#fff;background-color:#5a6a82;border-color:#90a0b4}.form-input{background-color:var(--input-bg);border:1px solid var(--input-border);color:var(--input-text);border-radius:.25rem;padding:.5rem}.form-input:focus{border-color:var(--input-border-focus);outline:none;box-shadow:0 0 0 2px rgba(52,152,219,.2)}.form-input::-webkit-input-placeholder{color:var(--input-placeholder)}.form-input::-moz-placeholder{color:var(--input-placeholder)}.form-input::-ms-input-placeholder{color:var(--input-placeholder)}.form-input::placeholder{color:var(--input-placeholder)}.card{background-color:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:0 2px 4px var(--shadow-color);border-radius:.5rem}.theme-toggle{border:1px solid var(--nav-border-color);color:var(--nav-text-color);cursor:pointer;background:0 0;border-radius:.25rem;justify-content:center;align-items:center;min-width:2.5rem;height:2.5rem;padding:.5rem;display:flex}.theme-toggle:hover{background-color:var(--nav-hover-color)}.theme-toggle:focus{box-shadow:0 0 0 2px var(--nav-active-color);outline:none}:focus{outline:2px solid var(--focus-color);outline-offset:2px}:focus:not(:focus-visible){outline:none}:focus-visible{outline:2px solid var(--focus-color);outline-offset:2px;box-shadow:var(--focus-shadow)}.btn:focus{outline:2px solid var(--focus-color);outline-offset:2px;box-shadow:var(--focus-shadow)}.form-input:focus{outline:2px solid var(--focus-color);outline-offset:2px;border-color:var(--input-border-focus);box-shadow:var(--focus-shadow)}.theme-toggle:focus{outline:2px solid var(--focus-color);outline-offset:2px;box-shadow:var(--focus-shadow);background-color:var(--nav-hover-color)}.skip-link{background:var(--focus-color);color:#fff;z-index:1000;border-radius:4px;padding:8px 12px;font-weight:600;text-decoration:none;transition:top .3s;position:absolute;top:-40px;left:6px}.skip-link:focus{outline-offset:2px;outline:2px solid #fff;top:6px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.touch-target{min-height:var(--touch-target-min);min-width:var(--touch-target-min)}.mobile-padding{padding:var(--mobile-padding)}.mobile-gap{gap:var(--mobile-gap)}.mobile-border-radius{border-radius:var(--mobile-border-radius)}.touch-feedback{-webkit-tap-highlight-color:rgba(31,97,141,.2);tap-highlight-color:rgba(31,97,141,.2)}.touch-feedback:active{transition:transform .1s;transform:scale(.98)}.smooth-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.no-select{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}@media (max-width:768px){.responsive-text-lg{font-size:1.25rem}.responsive-text-base{font-size:1rem}.responsive-text-sm{font-size:.875rem}.responsive-text-xs{font-size:.75rem}}@media (max-width:480px){.responsive-text-lg{font-size:1.125rem}.responsive-text-base{font-size:.9375rem}.responsive-text-sm{font-size:.8125rem}.responsive-text-xs{font-size:.6875rem}}@media (max-width:768px){.mobile-p-4{padding:1rem}.mobile-p-3{padding:.75rem}.mobile-p-2{padding:.5rem}.mobile-m-4{margin:1rem}.mobile-m-3{margin:.75rem}.mobile-m-2{margin:.5rem}.mobile-gap-4{gap:1rem}.mobile-gap-3{gap:.75rem}.mobile-gap-2{gap:.5rem}}.min-h-screen-mobile{min-height:100vh;min-height:100dvh}.h-screen-mobile{height:100vh;height:100dvh}@supports (padding:max(0px)){.safe-area-inset-top{padding-top:max(1rem, env(safe-area-inset-top))}.safe-area-inset-bottom{padding-bottom:max(1rem, env(safe-area-inset-bottom))}.safe-area-inset-left{padding-left:max(1rem, env(safe-area-inset-left))}.safe-area-inset-right{padding-right:max(1rem, env(safe-area-inset-right))}}@media (prefers-contrast:high){:root{--nav-border-color:#000;--border-color:#000;--focus-color:#000}[data-theme=dark]{--nav-border-color:#fff;--border-color:#fff;--focus-color:#fff}:focus{outline:3px solid var(--focus-color);outline-offset:2px}.btn:focus{outline:3px solid var(--focus-color);background-color:var(--focus-color);color:var(--bg-primary)}}.tab{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-bottom:2px solid transparent;padding:12px 20px;font-weight:500;transition:all .2s}.tab:hover{color:var(--text-primary);background:var(--bg-secondary)}.tab.active{color:var(--button-primary);border-bottom-color:var(--button-primary);background-color:rgba(var(--button-primary-rgb), .12)}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}.skip-link{transition:none}}.flex-center{justify-content:center;align-items:center;display:flex}.flex-between{justify-content:space-between;align-items:center;display:flex}.flex-column{flex-direction:column;display:flex}.text-center{text-align:center}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.p-1{padding:.5rem}.p-2{padding:1rem}.p-3{padding:1.5rem}.p-4{padding:2rem}.form-select{border:1px solid var(--border-color);background:var(--input-bg);color:var(--input-text);border-radius:.25rem;min-width:200px;padding:.5rem;font-size:1rem}.form-label{color:var(--text-primary);margin-bottom:.5rem;font-weight:700;display:block}.stats-section{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:8px;margin-bottom:2rem;padding:1rem}.stats-section h3{border-bottom:2px solid var(--nav-active-color);color:var(--text-primary);margin:0 0 1rem;padding-bottom:.5rem}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-top:1rem;display:grid}.stat-item{color:var(--text-primary)}.stat-value-primary{color:var(--nav-active-color);font-weight:700}.stat-value-success{color:var(--status-success);font-weight:700}.stat-value-warning{color:var(--status-warning);font-weight:700}.stat-value-error{color:var(--status-error);font-weight:700}.loading-container{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:200px;padding:2rem;display:flex}.empty-state{text-align:center;color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:2rem}.player-selection{margin-bottom:2rem}.highlights-list{margin-top:1rem;padding:0;list-style:none}.highlights-list li{border-bottom:1px solid var(--border-color);color:var(--text-primary);padding:.5rem 0}.highlights-list li:last-child{border-bottom:none}.error-details{white-space:pre-wrap;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;margin-top:1rem;padding:1rem}.perf-monitor-toggle{z-index:9999;position:fixed;top:10px;right:10px}.perf-monitor-toggle button{color:#fff;cursor:pointer;background-color:#007bff;border:none;border-radius:4px;padding:8px 12px;font-size:12px}.perf-monitor-panel{color:#fff;z-index:9999;background:#1a1a1a;border:1px solid #333;border-radius:8px;width:300px;max-height:80vh;padding:16px;font-family:monospace;font-size:12px;position:fixed;top:10px;right:10px;overflow:auto}.perf-monitor-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.perf-monitor-header h3{margin:0;font-size:14px}.perf-monitor-close{color:#fff;cursor:pointer;background-color:#dc3545;border:none;border-radius:4px;padding:4px 8px;font-size:10px}.perf-section{margin-bottom:16px}.perf-section h4{margin:0 0 8px}.perf-section.localStorage h4{color:#ffc107}.perf-section.cache h4{color:#28a745}.perf-section.memory h4{color:#17a2b8}.perf-section.rate-limiting h4{color:#fd7e14}.perf-rate-item{margin-bottom:4px}.perf-rate-item-title{font-weight:700}.perf-rate-item-details{margin-left:8px}.perf-actions{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.perf-btn{cursor:pointer;color:#fff;border:none;border-radius:4px;padding:4px 8px;font-size:10px}.perf-btn.clear{background-color:#6c757d}.perf-btn.maintenance{background-color:#28a745}.perf-btn.reset{background-color:#fd7e14}.perf-footer{color:#888;border-top:1px solid #333;margin-top:16px;padding-top:8px;font-size:10px}.progress-fill{transition:width .3s}.error-page-actions{flex-wrap:wrap;gap:1rem;margin-top:1.5rem;display:flex}.error-page-details{margin-top:1rem;font-size:.875rem}.error-page-summary{cursor:pointer;color:var(--text-secondary)}.error-page-pre{background:var(--bg-secondary);border:1px solid var(--border-color);white-space:pre-wrap;border-radius:4px;margin-top:.5rem;padding:1rem;font-size:.75rem;overflow-x:auto}.error-page-redirect{color:var(--text-secondary);margin-top:1rem;font-size:.875rem}.player-distribution-section{margin:24px 0}.loading-spinner{border:3px solid #f3f3f3;border-top-color:#007bff;border-radius:50%;width:40px;height:40px;margin:0 auto 1rem;animation:1s linear infinite spin}.loading-text{color:#6c757d;margin:0}.loading-debug{color:#adb5bd;margin-top:.5rem;font-size:.85rem}.login-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.login-title{flex:1;margin:0}.dashboard-loading{text-align:center;padding:2rem}.perf-toggle-btn{cursor:pointer;color:#fff;border:none;border-radius:4px;padding:8px 16px;font-size:12px}.perf-toggle-btn.visible{background-color:#dc3545}.perf-toggle-btn.hidden{background-color:#007bff}.timer-progress{transition:width 1s linear}.stat-value.red{color:red}.stat-value.green{color:green}.stat-value.blue{color:#00f}.transaction-positive{color:green}.transaction-negative{color:red}.status-badge.current{color:#fff;background-color:green}.status-badge.overdue{color:#fff;background-color:red}.status-badge.paid{color:#fff;background-color:#00f}.billing-stat-overdue,.billing-stat-owed{color:red}.activity-meta{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-top:4px;padding-top:4px;display:flex}.hidden{display:none}.priority-badge{text-transform:uppercase;color:#fff;border-radius:4px;padding:.25rem .5rem;font-size:.75rem;font-weight:500}.priority-badge.high{background-color:#dc3545}.priority-badge.medium{color:#000;background-color:#ffc107}.priority-badge.low{background-color:#28a745}.priority-badge.urgent{background-color:#6f42c1}.chart-bar{background-color:#007bff}.perf-toggle-button{cursor:pointer;color:#fff;border:none;border-radius:4px;padding:8px 16px;font-size:12px;font-weight:500;transition:all .2s;box-shadow:0 2px 4px rgba(0,0,0,.1)}.perf-toggle-button.visible{background-color:#dc3545}.perf-toggle-button.hidden{background-color:#007bff}.perf-toggle-button:hover{transform:scale(1.05);box-shadow:0 4px 8px rgba(0,0,0,.15)}.dashboard-layout{flex-direction:column;height:100vh;display:flex;overflow:hidden}.dashboard-header{background-color:var(--surface-primary);border-bottom:1px solid var(--border-primary);z-index:100;justify-content:space-between;align-items:center;min-height:60px;padding:.75rem 1.5rem;transition:margin-top .3s;display:flex;box-shadow:0 2px 4px rgba(0,0,0,.1)}.dashboard-header.with-impersonation-banner{margin-top:76px}.header-left{align-items:center;gap:.75rem;display:flex}.header-left .header-logo{object-fit:contain;width:auto;height:48px}.header-left h1{color:var(--text-primary);margin:0;font-size:1.5rem;font-weight:600}.header-center{align-items:center;gap:1rem;display:flex}.header-center .role-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:20px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s}.header-center .role-badge.admin{background-color:var(--status-error);color:#fff}.header-center .role-badge.coach{background-color:var(--status-warning);color:#fff}.header-center .role-badge.parent{background-color:var(--status-success);color:#fff}.header-center .role-badge.player{background-color:var(--button-primary);color:#fff}.header-center .role-switcher{background:var(--surface-secondary);border:1px solid var(--border-primary);color:var(--text-primary);cursor:pointer;border-radius:4px;min-width:100px;padding:.375rem .5rem;font-size:.8rem;transition:all .2s}.header-center .role-switcher:hover{background:var(--surface-hover);border-color:var(--border-active)}.header-center .role-switcher:focus{outline:2px solid var(--border-active);outline-offset:2px}.header-right{align-items:center;gap:1rem;display:flex}.header-theme-toggle{background:var(--surface-secondary);border:1px solid var(--border-primary);color:var(--text-primary);cursor:pointer;border-radius:.25rem;justify-content:center;align-items:center;min-width:2.5rem;height:2.5rem;padding:.5rem;transition:all .2s;display:flex}.header-theme-toggle:hover{background-color:var(--surface-hover);transform:scale(1.05)}.header-theme-toggle:focus{box-shadow:0 0 0 2px var(--border-active);outline:none}.dashboard-content{flex:1;height:calc(100vh - 60px);transition:height .3s;display:flex;overflow:hidden}.dashboard-content.with-impersonation-banner{height:calc(100vh - 136px)}.dashboard-main{background-color:var(--bg-primary);color:var(--text-primary);flex:1;padding:1.5rem;overflow-y:auto}.mobile-nav-toggle{background:var(--surface-secondary);border:1px solid var(--border-primary);color:var(--text-primary);cursor:pointer;border-radius:4px;padding:.3rem .6rem;font-size:1.4rem;line-height:1;transition:background-color .2s;display:none}.mobile-nav-toggle:hover{background:var(--surface-hover)}@media (max-width:768px){.mobile-nav-toggle{justify-content:center;align-items:center;display:flex}.dashboard-header{flex-wrap:wrap;min-height:auto;padding:.5rem 1rem}.dashboard-header.with-impersonation-banner{margin-top:100px}.header-left .header-logo{height:32px}.header-left h1{font-size:1.25rem}.header-center{order:3;justify-content:center;width:100%;margin-top:.5rem}.dashboard-content{flex-direction:row;position:relative}.dashboard-content.with-impersonation-banner{height:calc(100vh - 220px)}.dashboard-main{flex:1;width:100%;padding:1rem}}@media (max-width:480px){.dashboard-header{padding:.375rem .75rem}.dashboard-header.with-impersonation-banner{margin-top:120px}.header-left h1{font-size:1.125rem}.dashboard-content.with-impersonation-banner{height:calc(100vh - 220px)}.dashboard-main{height:calc(100vh - 100px);padding:.75rem}}.base-page{background:var(--bg-primary);flex-direction:column;height:100%;display:flex}.page-header{background:var(--bg-primary);padding:1.5rem 2rem 1rem}.page-title-section h1{color:var(--text-primary);text-align:left;margin:0 0 .25rem;font-size:1.75rem;font-weight:600;line-height:1.2}.page-description{color:var(--text-secondary);text-align:left;margin:0 0 1rem;font-size:.9375rem;line-height:1.4}.page-content{flex:1;padding:0 2rem 2rem;overflow-y:auto}.page-filter-buttons{margin-top:1rem}.section-container{min-height:200px}.section-content{background:0 0;border:none;border-radius:0;flex-direction:column;flex:1;padding:1.5rem 0;display:flex}.section-content h3{color:var(--text-primary);margin:0 0 .75rem;font-size:1.25rem;font-weight:600}.section-content p{color:var(--text-secondary);margin:0 0 1.5rem;line-height:1.5}.section-actions{flex-wrap:wrap;gap:.75rem;display:flex}.error-state{justify-content:center;align-items:center;height:100%;padding:2rem;display:flex}.error-content h2{color:var(--text-primary);margin:0 0 1rem;font-size:1.5rem}.error-content p{color:var(--text-secondary);margin:0 0 1.5rem;line-height:1.5}@media (max-width:768px){.page-header{padding:1rem 1rem .75rem}.page-title-section h1{font-size:1.5rem}.page-description{font-size:.875rem}.page-content{padding:0 1rem 1rem}.page-filter-buttons{margin-top:.75rem}.section-content{padding:1rem 0}.section-content h3{font-size:1.125rem}.section-actions{gap:.5rem}}@media (max-width:480px){.page-header{padding:.75rem .75rem .5rem}.page-title-section h1{font-size:1.375rem}.page-content{padding:0 .75rem .75rem}.section-content{padding:.75rem 0}.section-actions{flex-direction:column}.section-actions .btn{justify-content:center;width:100%}}.base-page.loading{opacity:.6;pointer-events:none}.base-page.loading:after{content:"";border:3px solid var(--border-color);border-top:3px solid var(--primary-color);border-radius:50%;width:32px;height:32px;margin:-16px 0 0 -16px;animation:1s linear infinite spin;position:absolute;top:50%;left:50%}@media (prefers-contrast:high){.page-header{border-bottom-width:2px}.section-content{border-width:2px}}@media (prefers-reduced-motion:reduce){.base-page.loading:after{animation:none}}.user-dropdown-container{display:inline-block;position:relative}.user-dropdown-trigger{cursor:pointer;background:0 0;border-radius:.375rem;align-items:center;min-width:200px;padding:.5rem 1rem;transition:all .2s;display:flex}.user-dropdown-trigger:hover{background:var(--nav-hover-color)}.user-dropdown-trigger:hover .user-name{color:#60a5fa;font-weight:700}.user-dropdown-trigger:focus{outline:2px solid var(--nav-active-color);outline-offset:2px}.user-dropdown-trigger.open{background:var(--nav-hover-color)}.user-dropdown-trigger.open .user-name{color:#60a5fa;font-weight:700}.user-info{flex:1;align-items:center;gap:.75rem;display:flex}.user-avatar{background:var(--nav-active-color);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:.875rem;font-weight:600;display:flex}.user-details{flex-direction:column;align-items:flex-start;display:flex;box-shadow:none!important;background:0 0!important;border:none!important;border-radius:0!important;margin:0!important;padding:0!important}.user-name{color:var(--nav-text-color);font-size:.875rem;font-weight:500;line-height:1.2}.user-email{color:var(--nav-text-secondary);font-size:.75rem;line-height:1.2}.dropdown-chevron{color:var(--text-secondary);font-size:.75rem;transition:transform .2s}.dropdown-chevron.open{transform:rotate(180deg)}.user-dropdown-menu{background:var(--nav-bg-color);border:1px solid var(--nav-border-color);z-index:1000;border-radius:.5rem;min-width:280px;animation:.2s ease-out dropdownSlideIn;position:absolute;top:100%;right:0;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.15)}.dropdown-header{background:var(--bg-tertiary);border-bottom:1px solid var(--nav-border-color);padding:1rem}.user-info-header{align-items:center;display:flex}.user-avatar-large{background:var(--nav-active-color);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:3rem;height:3rem;margin-right:1rem;font-size:1.25rem;font-weight:600;display:flex}.user-details-header{flex-direction:column;flex:1;align-items:flex-start;display:flex}.user-name-header{color:var(--nav-text-color);margin-bottom:.25rem;font-size:1rem;font-weight:600}.user-email-header{color:var(--nav-text-secondary);margin-bottom:.5rem;font-size:.875rem}.user-role-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:12px;padding:.25rem .75rem;font-size:.75rem;font-weight:500}.user-role-badge.admin{background-color:var(--status-error);color:#fff}.user-role-badge.coach{background-color:var(--status-warning);color:#fff}.user-role-badge.parent{background-color:var(--status-success);color:#fff}.user-role-badge.player{background-color:var(--button-primary);color:#fff}.dropdown-divider{background:var(--border-color);height:1px;margin:0}.dropdown-items{max-height:400px;padding:.5rem 0;overflow-y:auto}.dropdown-item{margin:0}.dropdown-item-content{cursor:pointer;color:var(--nav-text-color);text-align:left;background:0 0;border:none;align-items:center;width:100%;padding:.75rem 1rem;transition:all .2s;display:flex}.dropdown-item-content:hover{background-color:var(--nav-hover-color);color:var(--nav-active-color)}.dropdown-item-content:focus{outline:2px solid var(--nav-active-color);outline-offset:-2px;background-color:var(--nav-hover-color)}.dropdown-item-content.current-role{background-color:var(--nav-active-color);color:#fff;font-weight:500}.dropdown-item-content.current-role:hover{background-color:var(--nav-active-color);opacity:.9}.dropdown-icon{text-align:center;min-width:1.25rem;margin-right:.75rem;font-size:1rem}.dropdown-label{flex:1;font-size:.875rem;font-weight:400}.dropdown-items::-webkit-scrollbar{width:6px}.dropdown-items::-webkit-scrollbar-track{background:var(--bg-secondary)}.dropdown-items::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.dropdown-items::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.error-boundary-fallback{background-color:var(--error-bg,#fef2f2);border:1px solid var(--error-border,#fecaca);border-radius:8px;justify-content:center;align-items:center;min-height:200px;margin:1rem;padding:2rem;display:flex}.error-content{text-align:center;max-width:500px}.error-content h2{color:var(--error-text,#dc2626);margin-bottom:1rem;font-size:1.5rem}.error-content p{color:var(--text-secondary,#6b7280);margin-bottom:1rem;line-height:1.5}.error-content details{background-color:var(--surface,#f9fafb);text-align:left;color:var(--text-primary,#374151);border-radius:4px;margin:1rem 0;padding:1rem;font-family:monospace;font-size:.875rem}.error-content summary{cursor:pointer;margin-bottom:.5rem;font-weight:600}.retry-button,.refresh-button{background-color:var(--primary,#3b82f6);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:.75rem 1.5rem;font-size:.875rem;font-weight:500;transition:background-color .2s}.retry-button:hover,.refresh-button:hover{background-color:var(--primary-hover,#2563eb)}.retry-button:focus,.refresh-button:focus{outline:2px solid var(--primary,#3b82f6);outline-offset:2px}.navigation-error-fallback{background-color:var(--nav-bg,#fff);border:1px solid var(--error-border,#fecaca);text-align:center;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;min-height:300px;padding:2rem;display:flex}.navigation-error-fallback .error-icon{margin-bottom:1rem;font-size:3rem}.navigation-error-fallback h3{color:var(--error-text,#dc2626);margin-bottom:1rem;font-size:1.25rem}.navigation-error-fallback p{color:var(--text-secondary,#6b7280);max-width:300px;margin-bottom:.5rem;line-height:1.5}[data-theme=dark] .error-boundary-fallback{--error-bg:#1f1f23;--error-border:#dc2626;--error-text:#f87171;--text-secondary:#9ca3af;--surface:#2d2d30;--text-primary:#e5e7eb;--primary:#3b82f6;--primary-hover:#2563eb}[data-theme=dark] .navigation-error-fallback{--nav-bg:#1f1f23;--error-border:#dc2626;--error-text:#f87171;--text-secondary:#9ca3af}[data-theme=light] .error-boundary-fallback{--error-bg:#fef2f2;--error-border:#fecaca;--error-text:#dc2626;--text-secondary:#6b7280;--surface:#f9fafb;--text-primary:#374151;--primary:#3b82f6;--primary-hover:#2563eb}[data-theme=light] .navigation-error-fallback{--nav-bg:#fff;--error-border:#fecaca;--error-text:#dc2626;--text-secondary:#6b7280}@media (max-width:768px){.error-boundary-fallback{margin:.5rem;padding:1rem}.error-content{max-width:100%}.navigation-error-fallback{min-height:200px;padding:1rem}.navigation-error-fallback .error-icon{font-size:2rem}.navigation-error-fallback h3{font-size:1.125rem}}.error-boundary-fallback,.navigation-error-fallback{animation:.3s ease-out errorFadeIn}.navigation-menu{background:var(--nav-bg-color,#fff);width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;min-width:200px;max-width:300px;height:100%;color:var(--nav-text-color,#2c3e50);box-shadow:2px 0 4px var(--shadow-color,rgba(0,0,0,.1));border-right:1px solid var(--nav-border-color,#bdc3c7);flex-direction:column;flex-shrink:0;transition:width .3s,min-width .3s,background-color .2s,color .2s,box-shadow .2s;display:flex;overflow-y:auto}.navigation-menu.closed{width:60px!important;min-width:60px!important}.nav-toggle-container{border-bottom:1px solid var(--nav-border-color);background:rgba(0,0,0,.02);justify-content:flex-start;padding:.75rem;transition:border-color .2s,background-color .2s;display:flex}.theme-dark .nav-toggle-container{background:rgba(0,0,0,.15)}.nav-toggle-button{background:var(--nav-surface-color);border:1px solid var(--nav-border-color);color:var(--nav-text-color);cursor:pointer;border-radius:.25rem;justify-content:center;align-items:center;padding:.4rem .6rem;font-size:.9rem;transition:all .2s;display:flex}.nav-toggle-button:hover{background-color:var(--nav-hover-color);transform:scale(1.05)}.nav-toggle-button:focus{box-shadow:0 0 0 2px var(--nav-active-color);outline:none}.nav-arrow-icon{justify-content:center;align-items:center;display:flex}.navigation-menu.closed .menu-label{display:none}.navigation-menu.closed .menu-item-content{justify-content:center;padding:.75rem .5rem}.navigation-menu.closed .menu-icon{margin-right:0;font-size:1.5rem}.navigation-menu.theme-light,.navigation-menu.theme-dark{background:linear-gradient(180deg, var(--nav-bg-color) 0%, var(--nav-surface-color) 100%)}.menu-header{border-bottom:1px solid var(--nav-border-color);background:rgba(0,0,0,.05);padding:1.5rem;transition:border-color .2s,background-color .2s}.theme-dark .menu-header{background:rgba(0,0,0,.2)}.header-top{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.menu-header h2{color:var(--nav-text-color);margin:0;font-size:1.25rem;font-weight:600;transition:color .2s}.nav-theme-toggle{background:var(--nav-surface-color);border:1px solid var(--nav-border-color);color:var(--nav-text-color);cursor:pointer;border-radius:.25rem;justify-content:center;align-items:center;min-width:2.5rem;height:2.5rem;padding:.5rem;transition:all .2s;display:flex}.nav-theme-toggle:hover{background-color:var(--nav-hover-color);transform:scale(1.05)}.nav-theme-toggle:focus{box-shadow:0 0 0 2px var(--nav-active-color);outline:none}.role-indicator{flex-direction:column;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.role-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:20px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s}.role-switcher{background:var(--nav-surface-color);border:1px solid var(--nav-border-color);color:var(--nav-text-color);cursor:pointer;border-radius:4px;min-width:100px;padding:.375rem .5rem;font-size:.8rem;transition:all .2s}.role-switcher:hover{background:var(--nav-hover-color);border-color:var(--nav-active-color)}.role-switcher:focus{outline:2px solid var(--nav-active-color);outline-offset:2px}.role-switcher option{background:var(--nav-bg-color);color:var(--nav-text-color);padding:.25rem}.user-info{text-align:center;padding-top:.75rem;transition:border-color .2s}.user-name{color:var(--nav-text-color);margin-bottom:.25rem;font-size:.9rem;font-weight:600;transition:color .2s}.user-email{color:var(--nav-text-secondary);font-size:.8rem;transition:color .2s}.role-badge.admin{color:#fff;background-color:#e74c3c}.role-badge.coach{color:#fff;background-color:#f39c12}.role-badge.parent{color:#fff;background-color:#27ae60}.role-badge.player{color:#fff;background-color:#9b59b6}.menu-items{flex-direction:column;flex:1;padding:.5rem 0;display:flex;overflow-y:auto}.menu-item:first-child .menu-item-content,.menu-item:first-child{margin-top:0}.menu-item{margin-bottom:.25rem}.menu-item-content{cursor:pointer;color:var(--nav-text-color,#2c3e50);text-align:left;background:0 0;border-left:3px solid transparent;justify-content:flex-start;align-items:center;padding:.75rem 1.5rem;transition:all .2s;display:flex;position:relative}.menu-item-content .menu-label:first-child{margin-left:0}.menu-item-content:hover{background-color:var(--nav-hover-color,#ecf0f1);border-left-color:var(--nav-active-color,#1f618d)}.menu-item-content:hover .menu-label{color:var(--nav-text-color)}.menu-item-content.active:hover{color:var(--button-primary);background-color:rgba(25,118,210,.12);border-left-color:transparent}.menu-item-content.active:hover .menu-label{color:var(--button-primary);font-size:1.05rem}.menu-item-content.active{color:var(--button-primary);background-color:rgba(25,118,210,.12);border-left-color:transparent;font-weight:700}.menu-item-content.active .menu-label{color:var(--button-primary);font-size:1.05rem}[data-theme=dark] .menu-item-content.active,[data-theme=dark] .menu-item-content.active:hover{background-color:rgba(25,118,210,.12)}.menu-icon{text-align:left;min-width:24px;margin-right:.75rem;font-size:1.25rem;transition:transform .2s}.menu-label{text-align:left;flex:1;font-size:.95rem;font-weight:700;transition:color .2s,font-size .2s}.navigation-menu::-webkit-scrollbar{width:6px}.navigation-menu::-webkit-scrollbar-track{background:var(--nav-surface-color)}.navigation-menu::-webkit-scrollbar-thumb{background:var(--nav-border-color);border-radius:3px;transition:background-color .2s}.navigation-menu::-webkit-scrollbar-thumb:hover{background:var(--nav-text-secondary)}@media (max-width:768px){.navigation-menu{z-index:200;width:250px;max-width:250px;height:100vh;transition:transform .3s;position:fixed;top:0;left:0;transform:translate(0)}.navigation-menu.closed{transform:translate(-100%);width:250px!important;min-width:250px!important;max-width:250px!important}.navigation-menu.open .menu-label{display:inline}.navigation-menu .nav-toggle-container{display:none}.menu-header{justify-content:space-between;align-items:center;display:flex}.menu-header h2{margin:0}.role-indicator{justify-content:flex-end}.navigation-menu.open:before{content:"";z-index:-1;background:rgba(0,0,0,.4);width:calc(100vw - 250px);height:100vh;position:fixed;top:0;left:250px}}@media (min-width:769px){.navigation-menu{transition:width .3s,min-width .3s;position:relative}.navigation-menu.closed{width:60px!important;min-width:60px!important}}.page-router{background-color:var(--bg-primary);width:100%;height:100%;color:var(--text-primary);flex-direction:column;display:flex}.page-router:has(.communication-page){overflow:hidden}.page-content-wrapper{flex-direction:column;width:100%;height:100%;display:flex}.page-content-wrapper:has(.communication-page){flex:1;min-height:0}.page-content{width:100%;max-width:100%;margin:0 auto;padding:0}.page-content:has(.communication-page){flex-direction:column;flex:1;min-height:0;display:flex}.page-content h1{color:var(--text-primary);margin-bottom:1.25rem;font-size:2rem;font-weight:600}.page-content p{color:var(--text-secondary);text-align:left;margin-bottom:1.5rem;font-size:1.1rem;line-height:1.6}.page-content .content-section{box-shadow:none;background:0 0;border:none;border-radius:0;margin-bottom:1.25rem;padding:1.25rem 0}.page-content .content-section.error-section{background:var(--bg-secondary);border:1px solid var(--status-error);box-shadow:0 2px 4px var(--shadow-color);border-radius:8px;margin-bottom:1.25rem;padding:1.25rem}.page-content .content-section.error-section h2{color:var(--status-error);margin-bottom:1rem;font-size:1.5rem;font-weight:500}.page-content .content-section h2{color:var(--text-primary);margin-bottom:1rem;font-size:1.5rem;font-weight:500}.page-content .content-section h3{color:var(--text-primary);margin-bottom:.75rem;font-size:1.25rem;font-weight:500}.filter-buttons{scrollbar-width:thin;scrollbar-color:var(--text-muted) transparent;border-bottom:none;justify-content:center;gap:.5rem;margin-bottom:.75rem;padding:.5rem 0;display:flex;overflow-x:auto}.filter-buttons::-webkit-scrollbar{height:4px}.filter-buttons::-webkit-scrollbar-track{background:0 0}.filter-buttons::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:2px}.filter-buttons::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.filter-button{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;white-space:nowrap;border-radius:6px;align-items:center;gap:.5rem;min-width:-webkit-fit-content;min-width:-moz-fit-content;min-width:fit-content;padding:.75rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s;display:flex;position:relative}.filter-button:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-hover);transform:translateY(-1px)}.filter-button:focus{box-shadow:0 0 0 2px var(--focus-ring);border-color:var(--primary-color);outline:none}.filter-button:active{transform:translateY(0)}.filter-button.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color);font-weight:600;box-shadow:0 2px 4px rgba(0,0,0,.1)}.filter-button.active:hover{background:var(--primary-hover);border-color:var(--primary-hover);color:#fff}[data-theme=light] .filter-button.active{color:#4285f4;background:rgba(66,133,244,.12);border-color:#4285f4;font-weight:600;box-shadow:0 2px 4px rgba(66,133,244,.2)}[data-theme=light] .filter-button.active:hover{color:#4285f4;background:rgba(66,133,244,.2);border-color:#4285f4}.filter-button-icon{flex-shrink:0;font-size:1rem;line-height:1}.filter-button-label{line-height:1}@media (max-width:768px){.filter-buttons{gap:.25rem;margin-bottom:1rem;padding:.75rem 0}.filter-button{gap:.375rem;padding:.5rem .75rem;font-size:.8125rem}.filter-button-icon{font-size:.875rem}}@media (max-width:480px){.filter-buttons{flex-wrap:wrap;gap:.375rem}.filter-button{flex:1;justify-content:center;min-width:calc(50% - .1875rem);padding:.625rem .5rem}}@media (prefers-contrast:high){.filter-button{border-width:2px}.filter-button.active{border-width:3px}}@media (prefers-reduced-motion:reduce){.filter-button{transition:none}.filter-button:hover,.filter-button:active{transform:none}}.filter-button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.filter-button.loading{opacity:.6;cursor:not-allowed}.filter-button.loading:after{content:"";border:2px solid transparent;border-top-color:currentColor;border-radius:50%;width:12px;height:12px;margin:-6px 0 0 -6px;animation:1s linear infinite spin;position:absolute;top:50%;left:50%}.role-based-dashboard{background-color:var(--bg-primary);color:var(--text-primary)}.dashboard-error{text-align:center;background:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:0 2px 4px var(--shadow-color);border-radius:8px;padding:4rem 2rem}.dashboard-error h2{color:var(--status-error);margin-bottom:1rem}.dashboard-error p{color:var(--text-secondary);font-size:1.1rem}.dashboard-stats{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem;display:grid}.stat-card{background:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:0 2px 4px var(--shadow-color);text-align:center;border-radius:8px;padding:1.5rem;transition:transform .2s,box-shadow .2s,border-color .2s;position:relative}.stat-card.clickable{cursor:pointer}.stat-card:hover{box-shadow:0 4px 8px var(--shadow-color);transform:translateY(-2px)}.stat-card.clickable:hover{border-color:var(--button-primary)}.stat-card.clickable:active{transform:translateY(0)}.stat-card h3{color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px;margin:0 0 .5rem;font-size:.875rem;font-weight:600}.stat-link-indicator{visibility:hidden;color:var(--text-secondary);margin-top:.5rem;font-size:.75rem;transition:visibility .2s}.stat-card:hover .stat-link-indicator{visibility:visible}.dashboard-stats .stat-value{color:var(--text-primary);margin:0;font-size:2rem;font-weight:700}.admin-dashboard{padding:1rem}.dashboard-sections{grid-template-columns:1fr 1fr;gap:2rem;margin-top:2rem;display:grid}.dashboard-sections .section{background:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:0 2px 4px var(--shadow-color);border-radius:8px;flex-direction:column;padding:1.5rem;display:flex}.dashboard-sections .section h2{color:var(--text-primary);border-bottom:2px solid var(--nav-active-color);flex-shrink:0;margin:0 0 1rem;padding-bottom:.5rem;font-size:1.25rem;font-weight:600}.dashboard-sections .section.notifications,.dashboard-sections .section.recent-activities{padding:1.5rem 1.5rem .5rem}.recent-activities .activity-list{flex-direction:column;flex:1;gap:12px;max-height:450px;margin:0;padding:4px 4px 0;display:flex;overflow-y:auto}.recent-activities .activity-item{background:var(--bg-secondary);border:1px solid var(--border-color);border-left:3px solid var(--border-color);box-shadow:0 1px 2px var(--shadow-color);cursor:pointer;border-radius:6px;margin-bottom:0;padding:12px 16px;transition:all .2s}.recent-activities .activity-item:hover{box-shadow:0 2px 4px var(--shadow-color);background:var(--bg-tertiary);transform:translateY(-1px)}.recent-activities .activity-content{flex-direction:column;gap:8px;display:flex}.recent-activities .activity-title{color:var(--text-primary);text-align:left;font-size:1rem;font-weight:600;line-height:1.4}.recent-activities .activity-score{color:var(--text-secondary);text-align:left;font-size:.85rem;font-weight:600;line-height:1.3;display:block}.recent-activities .activity-notes,.upcoming-events .event-notes{color:var(--text-secondary);text-align:left;font-size:.85rem;line-height:1.3;display:block}.recent-activities .activity-footer{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;padding-top:8px;display:flex}.recent-activities .activity-time{color:var(--text-secondary);font-size:.75rem;font-style:italic}.recent-activities .activity-type{text-transform:uppercase;white-space:nowrap;text-align:center;letter-spacing:.5px;border:1px solid var(--border-color);text-transform:uppercase;white-space:nowrap;text-align:center;letter-spacing:.5px;background:var(--bg-primary);color:var(--text-secondary);border-radius:4px;flex-shrink:0;padding:4px 12px;font-size:.7rem;font-weight:600}.recent-activities .activity-item{border-left:3px solid var(--border-color)}.recent-activities .activity-item:has(.activity-type.game){border-left-color:#007bff}.recent-activities .activity-item:has(.activity-type.practice){border-left-color:#28a745}.recent-activities .activity-item:has(.activity-type.tournament){border-left-color:#2c5282}.recent-activities .activity-item:has(.activity-type.player){border-left-color:#6f42c1}.recent-activities .activity-item:has(.activity-type.payment){border-left-color:#fd7e14}.recent-activities .activity-item:has(.activity-type.feedback){border-left-color:#ffc107}.recent-activities .activity-item .activity-type.user_management,.recent-activities .activity-item .activity-type.login,.recent-activities .activity-item .activity-type.logout,.recent-activities .activity-item .activity-type.user_created,.recent-activities .activity-item .activity-type.user_updated,.recent-activities .activity-item .activity-type.user_deleted{color:#28a745}.recent-activities .activity-item:has(.activity-type.user_management){border-left-color:#28a745}.recent-activities .activity-item:has(.activity-type.login){border-left-color:#28a745}.recent-activities .activity-item:has(.activity-type.logout){border-left-color:#28a745}.recent-activities .activity-item:has(.activity-type.user_created){border-left-color:#28a745}.recent-activities .activity-item:has(.activity-type.user_updated){border-left-color:#28a745}.recent-activities .activity-item:has(.activity-type.user_deleted){border-left-color:#28a745}.recent-activities .activity-item[data-activity-type*=user],.recent-activities .activity-item[data-activity-type*=login]{border-left:3px solid #28a745!important}.recent-activities .activity-item[data-activity-type*=payment]{border-left:3px solid #fd7e14!important}.recent-activities .activity-item[data-activity-type*=billing]{border-left:3px solid #007bff!important}.recent-activities .activity-item[data-activity-type*=feedback]{border-left:3px solid #ffc107!important}.recent-activities .activity-item[data-activity-type*=error],.recent-activities .activity-item[data-activity-type*=security]{border-left:3px solid #dc3545!important}.recent-activities .activity-item[data-activity-type*=team],.recent-activities .activity-item[data-activity-type*=player]{border-left:3px solid #6f42c1!important}.recent-activities .activity-item .activity-type.user_management,.recent-activities .activity-item .activity-type.login,.recent-activities .activity-item .activity-type.logout{color:var(--button-primary)}.recent-activities .activity-item .activity-type.error,.recent-activities .activity-item .activity-type.security,.recent-activities .activity-item .activity-type.alert{color:var(--status-error)}.recent-activities .activity-item .activity-type.warning,.recent-activities .activity-item .activity-type.notification{color:var(--status-warning)}.recent-activities .activity-item .activity-type.team_management,.recent-activities .activity-item .activity-type.player_management,.recent-activities .activity-item .activity-type.system{color:var(--nav-active-color)}.recent-activities .activity-content{text-align:left}.recent-activities .activity-main{margin-bottom:4px;display:block}.recent-activities .activity-description{color:var(--text-primary);margin-bottom:2px;font-size:.75rem;font-weight:600;line-height:1.3}.recent-activities .activity-info{text-align:left;color:var(--text-secondary);word-wrap:break-word;overflow-wrap:break-word;margin-top:2px;font-size:.6875rem;line-height:1.4;display:block}.recent-activities .activity-meta{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;gap:4px;margin-top:4px;padding-top:4px;display:flex}.recent-activities .activity-item{animation:.2s ease-out slideInActivity}.recent-activities .activity-list::-webkit-scrollbar{width:4px}.recent-activities .activity-list::-webkit-scrollbar-track{background:var(--bg-tertiary);border-radius:2px}.recent-activities .activity-list::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:2px}.recent-activities .activity-list::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}.upcoming-events .event-list{flex-direction:column;flex:1;gap:12px;max-height:450px;margin:0;padding:4px 4px 0;display:flex;overflow-y:auto}.upcoming-events .event-item{background:var(--bg-secondary);border:1px solid var(--border-color);border-left:3px solid var(--border-color);box-shadow:0 1px 2px var(--shadow-color);cursor:pointer;border-radius:6px;margin-bottom:0;padding:12px 16px;transition:all .2s}.upcoming-events .event-item:hover{box-shadow:0 2px 4px var(--shadow-color);background:var(--bg-tertiary);transform:translateY(-1px)}.upcoming-events .event-content{flex-direction:column;gap:8px;display:flex}.upcoming-events .event-title{color:var(--text-primary);text-align:left;font-size:1rem;font-weight:600;line-height:1.4}.upcoming-events .event-footer{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;padding-top:8px;display:flex}.upcoming-events .event-date{color:var(--text-secondary);font-size:.75rem;font-style:italic}.upcoming-events .event-type{border:1px solid var(--border-color);text-transform:uppercase;white-space:nowrap;text-align:center;letter-spacing:.5px;background:var(--bg-primary);color:var(--text-secondary);border-radius:4px;flex-shrink:0;padding:4px 12px;font-size:.7rem;font-weight:600}.upcoming-events .event-item:has(.event-type.game){border-left-color:#007bff}.upcoming-events .event-item:has(.event-type.practice){border-left-color:#28a745}.upcoming-events .event-item:has(.event-type.tournament){border-left-color:#2c5282}.upcoming-events .event-list::-webkit-scrollbar{width:4px}.upcoming-events .event-list::-webkit-scrollbar-track{background:var(--bg-tertiary);border-radius:2px}.upcoming-events .event-list::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:2px}.upcoming-events .event-list::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}.player-distribution-section{background:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:0 2px 4px var(--shadow-color);border-radius:8px;margin:2rem 0;padding:1.5rem 0 .5rem}.player-breakdown-chart{width:100%;padding:0 1.5rem}.player-breakdown-chart .chart-header{border-bottom:2px solid var(--nav-active-color);justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:.5rem;display:flex}.player-breakdown-chart .chart-header h3{color:var(--text-primary);margin:0;font-size:1.25rem;font-weight:600}.player-breakdown-chart .view-toggle{gap:.5rem;display:flex}.player-breakdown-chart .toggle-btn{border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);cursor:pointer;border-radius:4px;padding:.5rem 1rem;font-size:.875rem;transition:all .2s}.player-breakdown-chart .toggle-btn:hover{background:var(--bg-secondary);border-color:var(--button-primary)}.player-breakdown-chart .toggle-btn.active{background:var(--button-primary);color:var(--button-text);border-color:var(--button-primary)}.player-breakdown-chart .chart-content{flex-direction:column;justify-content:center;align-items:center;min-height:450px;padding:0 40px 20px;display:flex;position:relative}.player-breakdown-chart .chart-container{border:2px solid var(--border-color);background:var(--bg-primary);border-radius:8px;width:100%;max-width:100%;height:320px;margin:0 0 30px;position:relative}.player-breakdown-chart .chart-grid{pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}.player-breakdown-chart .grid-line{background:var(--border-color);opacity:.3;height:1px;position:absolute;left:0;right:0}.player-breakdown-chart .grid-line.baseline{background:var(--text-secondary);opacity:.6;height:2px}.player-breakdown-chart .grid-label{color:var(--text-secondary);text-align:right;min-width:60px;font-size:.75rem;font-weight:500;position:absolute;left:-70px;transform:translateY(-50%)}.player-breakdown-chart .chart-bars{justify-content:space-evenly;align-items:flex-end;gap:12px;height:100%;padding:20px 20px 0;display:flex;position:absolute;bottom:0;left:0;right:0;overflow-x:auto}.player-breakdown-chart .bar-container{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;min-width:20px;max-width:80px;height:100%;display:flex;position:relative}.player-breakdown-chart .bar{background:var(--nav-active-color);border-radius:4px 4px 0 0;justify-content:center;align-items:center;width:100%;min-height:8px;margin-bottom:0;transition:all .3s;display:flex;position:relative}.player-breakdown-chart .bar:hover{opacity:.8;transform:scaleY(1.05)}.player-breakdown-chart .bar-value{color:var(--bg-primary);text-shadow:0 1px 2px rgba(0,0,0,.3);z-index:10;font-size:.75rem;font-weight:600}.player-breakdown-chart .chart-labels{justify-content:space-evenly;align-items:flex-start;gap:12px;width:100%;margin-top:0;padding:0 20px;display:flex;overflow-x:auto}.player-breakdown-chart .chart-label-item{flex-direction:column;flex:1;align-items:center;min-width:20px;max-width:80px;display:flex}.player-breakdown-chart .chart-label-text{color:var(--text-secondary);text-align:center;word-wrap:break-word;white-space:normal;max-width:100%;font-size:.75rem;font-weight:500;line-height:1.3;overflow:visible}.player-breakdown-chart.loading .chart-content,.player-breakdown-chart.error .chart-content,.player-breakdown-chart.no-data .chart-content{justify-content:center;align-items:center;min-height:200px;display:flex}.player-breakdown-chart .loading-bars{align-items:flex-end;gap:1rem;height:150px;display:flex}.player-breakdown-chart .loading-bar{background:var(--border-color);border-radius:4px 4px 0 0;width:30px;animation:1.5s ease-in-out infinite pulse}.player-breakdown-chart .loading-bar:nth-child(2){animation-delay:.2s}.player-breakdown-chart .loading-bar:nth-child(3){animation-delay:.4s}.player-breakdown-chart .loading-bar:nth-child(4){animation-delay:.6s}.player-breakdown-chart .loading-bar:nth-child(5){animation-delay:.8s}.player-breakdown-chart .error-content,.player-breakdown-chart .no-data-content,.player-breakdown-chart .empty-chart{text-align:center;color:var(--text-secondary);padding:2rem}.player-breakdown-chart .error-message{justify-content:center;align-items:center;gap:.5rem;margin-bottom:1rem;font-size:1.1rem;display:flex}.player-breakdown-chart .error-icon{font-size:1.5rem}@media (max-width:768px){.dashboard-sections{grid-template-columns:1fr;gap:1rem}.player-breakdown-chart .chart-content{min-height:400px;padding:10px 20px 20px 30px}.player-breakdown-chart .chart-container{height:280px}.player-breakdown-chart .chart-bars{justify-content:space-evenly;gap:8px;padding:15px 15px 0}.player-breakdown-chart .chart-labels{justify-content:space-evenly;gap:8px;padding:0 15px}.player-breakdown-chart .bar-container,.player-breakdown-chart .chart-label-item{min-width:15px;max-width:60px}.player-breakdown-chart .bar-value{font-size:.6rem}.player-breakdown-chart .chart-label-text{max-width:80px;font-size:.6rem}.player-breakdown-chart .grid-label{min-width:40px;font-size:.6rem;left:-50px}}.loading-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:3rem;display:flex}.loading-dots{margin-bottom:1rem;font-size:1.2em;display:inline-block}.loading-dots-inline{font-size:inherit;display:inline-block}.loading-dots-inline:after{content:"";animation:1.5s steps(4,end) infinite dots}.error-state,.empty-state,.access-denied{text-align:center;padding:3rem}.error-state h3,.empty-state h4,.access-denied h3{color:#dc3545;margin-top:0;margin-bottom:1.5rem;font-size:1.25rem;font-weight:600}.error-state p,.empty-state p,.access-denied p{color:var(--text-secondary);margin-top:0;margin-bottom:1.5rem;font-size:.95rem;line-height:1.6}.empty-state h4{color:#6c757d}.error-actions{justify-content:center;gap:1rem;margin-top:1rem;display:flex}.section-header{justify-content:center;align-items:center;margin-bottom:2rem;padding-bottom:1rem;display:flex}.section-header.with-title{justify-content:space-between}.section-header h3{color:var(--text-primary);margin:0}.team-roster-header h3{color:var(--text-primary);margin:0;font-size:1.5rem;font-weight:600}.team-roster-header .back-button{margin-left:1rem;position:absolute;right:1rem}.header-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;width:100%;display:flex}.roster-grid,.profiles-grid,.videos-grid,.stats-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin-bottom:2rem;display:grid}.roster-section h4{color:var(--text-primary);margin-top:2rem;margin-bottom:1rem;padding-left:.5rem;font-size:1.25rem;font-weight:600}.roster-section:first-of-type h4{margin-top:0}.roster-grid-improved{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.25rem;width:100%;margin-bottom:2rem;display:grid}@media (min-width:768px){.roster-grid-improved{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}}@media (min-width:1024px){.roster-grid-improved{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.25rem}}@media (min-width:1200px){.roster-grid-improved{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.25rem}}@media (min-width:1400px){.roster-grid-improved{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.25rem}}@media (min-width:1600px){.roster-grid-improved{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1.25rem}}@media (min-width:1920px){.roster-grid-improved{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.25rem}}.roster-card-compact{background:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:0 2px 4px var(--shadow-color);border-radius:8px;flex-direction:column;gap:1rem;height:100%;padding:1.25rem;transition:all .2s;display:flex}.roster-card-compact:hover{box-shadow:0 4px 8px var(--shadow-color);transform:translateY(-2px)}.card-header-compact{justify-content:space-between;align-items:flex-start;gap:.75rem;padding-bottom:.75rem;display:flex}.card-header-compact h5{color:var(--text-primary);flex:1;margin:0;font-size:1rem;font-weight:600;line-height:1.4}.role-badge{background:var(--button-primary);color:#fff;text-transform:uppercase;white-space:nowrap;border-radius:4px;padding:.25rem .75rem;font-size:.75rem;font-weight:600}.player-badges{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.card-content-compact{flex-direction:column;flex:1;gap:.75rem;display:flex}.contact-info{color:var(--text-secondary);flex-direction:column;gap:.5rem;font-size:.875rem;display:flex}.contact-info span{word-break:break-word;align-items:center;gap:.5rem;display:flex}.player-details{flex-direction:column;gap:.5rem;font-size:.875rem;display:flex}.player-details .positions{color:var(--text-secondary);align-items:center;gap:.5rem;display:flex}.card-actions-compact{gap:.5rem;margin-top:auto;padding-top:.75rem;display:flex}.card-actions-compact .btn{padding:.5rem .75rem;font-size:.875rem}.coach-card{border-left:3px solid var(--button-primary)}.player-card{border-left:3px solid var(--status-success)}.player-card.inactive{border-left-color:var(--status-error);opacity:.8}.player-card.injured{border-left-color:var(--status-warning)}.roster-card,.profile-card,.video-card,.stats-card{background:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:0 2px 4px var(--shadow-color);border-radius:8px;padding:1.5rem;transition:box-shadow .2s}.video-card{padding:0;transition:box-shadow .2s,transform .15s;overflow:hidden}.video-card:hover{box-shadow:0 4px 12px var(--shadow-color);transform:translateY(-2px)}.video-thumbnail{aspect-ratio:16/9;background:#000;width:100%;position:relative;overflow:hidden}.video-thumb-element{object-fit:cover;width:100%;height:100%;display:block}.play-button-overlay{color:#fff;pointer-events:none;background:rgba(0,0,0,.6);border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.25rem;transition:background .2s;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.video-card:hover .play-button-overlay{background:rgba(0,0,0,.8)}.category-badge{color:#fff;text-transform:capitalize;background:rgba(0,0,0,.65);border-radius:4px;padding:2px 8px;font-size:.7rem;position:absolute;top:8px;right:8px}.video-info{padding:.75rem 1rem}.video-info h4{white-space:nowrap;text-overflow:ellipsis;margin:0 0 .25rem;font-size:.875rem;font-weight:600;overflow:hidden}.video-info p{color:var(--text-secondary);margin:0 0 .5rem;font-size:.8rem}.video-meta{color:var(--text-secondary);gap:.75rem;font-size:.75rem;display:flex}.video-player-modal{width:90vw;max-width:900px}.video-player-element{background:#000;width:100%;max-height:70vh;display:block}.video-player-info{padding:.75rem 1.25rem}.video-player-info p{color:var(--text-secondary);margin:0 0 .5rem;font-size:.875rem}.roster-table-container{margin-top:1rem}.roster-table-container h4{color:var(--text-primary);margin-top:2rem;margin-bottom:1rem;padding-left:.5rem;font-size:1.25rem;font-weight:600}.roster-table-container h4:first-of-type{margin-top:0}.roster-table{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:8px;flex-direction:column;width:100%;margin-bottom:2rem;display:flex;overflow:hidden}.roster-table-coaches .table-header,.roster-table-coaches .table-row{grid-template-columns:2fr 1.5fr 2.5fr 1.5fr 1fr;align-items:center;gap:1rem;width:100%;padding:1rem;display:grid}.roster-table-players .table-header,.roster-table-players .table-row{grid-template-columns:2fr 1fr 3fr 1.5fr 1fr;align-items:center;gap:1rem;width:100%;padding:1rem;display:grid}.roster-table .table-header{background:var(--bg-tertiary);color:var(--text-primary);font-size:.875rem;font-weight:600}.roster-table .table-header>span{text-align:left}.roster-table .table-row{min-height:3rem;transition:background-color .2s}.roster-table .table-row:nth-child(odd){background:var(--bg-secondary)}.roster-table .table-row:hover{background:var(--bg-tertiary)}.roster-table .table-row:last-child{border-bottom:none}.roster-table .name-cell{color:var(--text-primary);font-weight:500}.roster-table .jersey-cell{text-align:left;width:80px}.roster-table .position-cell{width:120px}.roster-table .status-cell{width:100px}.roster-table .email-cell{color:var(--text-secondary);font-size:.8rem}.roster-table .phone-cell{color:var(--text-secondary);width:120px;font-size:.8rem}.roster-table .actions-cell{text-align:left;width:140px}.roster-table .role-cell{width:120px}.jersey-number{background:var(--button-primary);color:#fff;text-align:center;border-radius:4px;min-width:30px;padding:.25rem .5rem;font-size:.75rem;font-weight:600;display:inline-block}.status-badge{text-transform:capitalize;border-radius:4px;padding:.25rem .5rem;font-size:.75rem;font-weight:500;display:inline-block}.table-actions{justify-content:flex-start;align-items:center;gap:.5rem;display:flex}.table-actions .btn{padding:.375rem .75rem;font-size:.8rem}.roster-mobile-cards{display:none}.roster-empty-text{text-align:center;color:var(--text-secondary);padding:1.5rem}@media (max-width:768px){.roster-desktop-only{display:none}.roster-mobile-cards{flex-direction:column;gap:.75rem;display:flex}.roster-card{background:var(--bg-secondary);border:1px solid var(--border-color,#e0e0e0);border-radius:10px;padding:1rem;transition:box-shadow .2s}.roster-card:active{box-shadow:0 2px 8px rgba(0,0,0,.12)}.roster-card-header{border-bottom:1px solid var(--border-color,#e0e0e0);justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.5rem;display:flex}.roster-card-name{color:var(--text-primary);font-size:1rem;font-weight:600}.roster-card-details{flex-direction:column;gap:.4rem;margin-bottom:.75rem;display:flex}.roster-card-row{justify-content:space-between;align-items:center;font-size:.875rem;display:flex}.roster-card-label{color:var(--text-secondary);font-size:.8rem}.roster-card-value{color:var(--text-primary);text-align:right}a.roster-card-value{color:var(--button-primary,#3b82f6);text-decoration:none}.roster-card-actions{border-top:1px solid var(--border-color,#e0e0e0);gap:.5rem;padding-top:.5rem;display:flex}.roster-card-actions .btn{flex:1}}.users-table .table-header>div,.users-table .table-row>div,.players-table .table-header>div,.players-table .table-row>div,.accounts-table .table-header>div,.accounts-table .table-row>div,.transactions-table .table-header>div,.transactions-table .table-row>div,.impersonation-table .table-header>div,.impersonation-table .table-row>div,.teams-table .table-header>span,.teams-table .table-row>span{text-align:left;text-overflow:ellipsis;min-width:0;overflow:hidden}.users-table{border:1px solid var(--border-color);background:var(--bg-secondary);text-align:left;border-radius:8px;flex-direction:column;margin-top:1rem;display:flex;overflow:hidden}.users-table .table-header{background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);color:var(--text-primary);text-align:left;grid-template-columns:1.5fr 2fr 1fr 1fr 1.5fr 1.5fr;align-items:center;gap:1rem;padding:1rem;font-size:.875rem;font-weight:600;display:grid}.users-table .table-row{border-bottom:1px solid var(--border-color);grid-template-columns:1.5fr 2fr 1fr 1fr 1.5fr 1.5fr;align-items:center;gap:1rem;padding:1rem;transition:background-color .2s;display:grid}.users-table .table-row:hover{background:var(--bg-tertiary)}.users-table .table-row:last-child{border-bottom:none}.users-table .col-name{text-align:left;flex-direction:column;gap:.25rem;display:flex}.users-table .col-name strong{color:var(--text-primary);font-weight:600}.users-table .col-name .user-name-link,.users-table .col-name .player-name-link{color:var(--button-primary);cursor:pointer;font-weight:600;text-decoration:none;transition:color .2s}.users-table .col-name .user-name-link:hover,.users-table .col-name .player-name-link:hover{color:var(--button-primary-hover);text-decoration:underline}.users-table .col-name small{color:var(--text-secondary);font-size:.8rem}.users-table .col-id{text-align:left;font-family:Monaco,Menlo,Ubuntu Mono,monospace}.users-table .user-id{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color);word-break:break-all;border-radius:4px;padding:.25rem .5rem;font-size:.75rem}.users-table .col-role,.users-table .col-status{text-align:left}.users-table .col-last-login{text-align:left;flex-direction:column;gap:.25rem;display:flex}.users-table .col-last-login strong{color:var(--text-primary);font-weight:600}.users-table .col-last-login small{color:var(--text-secondary);font-size:.8rem}.users-table .col-actions{flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:.5rem;display:flex}.users-table .col-actions .btn{padding:.375rem .75rem;font-size:.8rem}.role-badge{text-transform:uppercase;border-radius:4px;padding:.25rem .5rem;font-size:.75rem;font-weight:500}.role-badge.admin{background-color:var(--status-error);color:#fff}.role-badge.coach{background-color:var(--button-primary);color:#fff}.role-badge.parent{background-color:var(--status-info);color:#fff}.users-table .table-header .sortable,.players-table .table-header .sortable{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap;flex-direction:row;align-items:center}.users-table .sortable:hover,.players-table .sortable:hover{color:var(--button-primary)}.users-table .sort-indicator,.players-table .sort-indicator{color:var(--button-primary);margin-left:.35rem;font-size:.8rem}@media (max-width:768px){.users-table{background:0 0;border:none;border-radius:0;overflow:visible}.users-table .table-header{display:none}.users-table .table-row{border:1px solid var(--border-color,#e0e0e0);background:var(--bg-secondary,#fff);border-radius:8px;flex-direction:column;gap:.5rem;margin-bottom:.75rem;padding:1rem;display:flex}.users-table .table-row:hover{border-color:var(--button-primary)}.users-table .table-row .col-name{border-bottom:1px solid var(--border-color,#e0e0e0);padding-bottom:.5rem}.users-table .table-row .col-id{font-size:.75rem}.users-table .table-row .col-id .user-id{word-break:break-all;font-size:.7rem}.users-table .table-row .col-role,.users-table .table-row .col-status,.users-table .table-row .col-last-login{align-items:center;gap:.5rem;display:flex}.users-table .table-row .col-role:before{content:"Role:";color:var(--text-secondary);min-width:70px;font-size:.75rem}.users-table .table-row .col-status:before{content:"Status:";color:var(--text-secondary);min-width:70px;font-size:.75rem}.users-table .table-row .col-last-login:before{content:"Last Login:";color:var(--text-secondary);min-width:70px;font-size:.75rem}.users-table .table-row .col-actions{border-top:1px solid var(--border-color,#e0e0e0);flex-direction:row;padding-top:.5rem}.users-table .table-row .col-actions .btn{flex:1}}.players-table{border:1px solid var(--border-color);background:var(--bg-secondary);text-align:left;border-radius:8px;flex-direction:column;margin-top:1rem;display:flex;overflow:hidden}.players-table .table-header{background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);color:var(--text-primary);text-align:left;grid-template-columns:1.5fr 1fr .8fr 1.2fr 1.2fr .8fr 1.2fr;align-items:center;justify-items:start;gap:1rem;padding:1rem;font-size:.875rem;font-weight:600;display:grid}.players-table .table-header>div{text-align:left;justify-self:start;width:100%}.players-table .table-row{border-bottom:1px solid var(--border-color);grid-template-columns:1.5fr 1fr .8fr 1.2fr 1.2fr .8fr 1.2fr;align-items:center;gap:1rem;padding:1rem;transition:background-color .2s;display:grid}.players-table .table-row:hover{background:var(--bg-tertiary)}.players-table .table-row:last-child{border-bottom:none}.players-table .col-name{text-align:left;flex-direction:column;gap:.25rem;display:flex}.players-table .col-name .player-name-link{color:var(--button-primary);cursor:pointer;font-weight:600;text-decoration:none;transition:color .2s}.players-table .col-name .player-name-link:hover{color:var(--button-primary-hover);text-decoration:underline}.players-table .col-name small{color:var(--text-secondary);font-size:.8rem}.players-table .col-id{text-align:left;font-family:Monaco,Menlo,Ubuntu Mono,monospace}.players-table .user-id{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color);word-break:break-all;border-radius:4px;padding:.25rem .5rem;font-size:.75rem}.players-table .col-role{text-align:left;flex-direction:column;gap:.25rem;display:flex}.position-tag{background:var(--button-primary);color:#fff;white-space:nowrap;border-radius:4px;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;padding:.15rem .45rem;font-size:.75rem;font-weight:500;display:inline-block}.position-tag.not-set{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color)}.players-table .col-status,.players-table .col-jersey{text-align:left}.players-table .col-bats-throws,.players-table .col-height-weight{text-align:left;color:var(--text-primary);font-size:.85rem}.players-table .player-detail-label{color:var(--text-secondary);margin-right:.15rem;font-size:.75rem}.players-table .player-detail-separator{color:var(--text-secondary);opacity:.5;margin:0 .4rem}.players-table .col-actions{flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:.5rem;display:flex}.players-table .col-actions .btn{padding:.375rem .75rem;font-size:.8rem}@media (max-width:768px){.players-table{background:0 0;border:none;border-radius:0;overflow:visible}.players-table .table-header{display:none}.players-table .table-row{border:1px solid var(--border-color,#e0e0e0);background:var(--bg-secondary,#fff);border-radius:8px;flex-direction:column;gap:0;margin:.5rem 0;padding:0;display:flex;overflow:hidden}.players-table .table-row:hover{border-color:var(--button-primary)}.players-table .table-row .col-name{order:1;padding:.75rem 1rem .5rem}.players-table .table-row .col-name .player-name-link{font-size:1.05rem;font-weight:600}.players-table .table-row .col-id{border-bottom:1px solid var(--border-color,#e0e0e0);order:2;padding:0 1rem .5rem;font-size:.7rem}.players-table .table-row .col-id .user-id{word-break:break-all;font-size:.65rem}.players-table .table-row .col-role,.players-table .table-row .col-jersey,.players-table .table-row .col-bats-throws,.players-table .table-row .col-height-weight{padding:.4rem 1rem}.players-table .table-row .col-role{order:3;align-items:center;gap:.5rem;padding-top:.6rem;display:flex}.players-table .table-row .col-jersey{order:4;align-items:center;gap:.5rem;display:flex}.players-table .table-row .col-bats-throws{order:5;align-items:center;gap:0;font-size:.85rem;display:flex}.players-table .table-row .col-height-weight{order:6;align-items:center;gap:0;font-size:.85rem;display:flex}.players-table .table-row .col-status{order:7;align-items:center;gap:.5rem;padding:.4rem 1rem;display:flex}.players-table .table-row .col-role:before{content:"Position:";color:var(--text-secondary);min-width:70px;font-size:.75rem}.players-table .table-row .col-jersey:before{content:"Jersey #:";color:var(--text-secondary);min-width:70px;font-size:.75rem}.players-table .table-row .col-status:before{content:"Status:";color:var(--text-secondary);min-width:70px;font-size:.75rem}.players-table .table-row .col-bats-throws .player-detail-label,.players-table .table-row .col-height-weight .player-detail-label{color:var(--text-secondary);font-size:.75rem}.players-table .table-row .col-actions{border-top:1px solid var(--border-color,#e0e0e0);flex-direction:row;order:8;padding:.6rem 1rem}.players-table .table-row .col-actions .btn{flex:1}.parent-association-row{flex-direction:column!important;align-items:flex-start!important}.parent-association-row .btn{width:100%;margin-top:.25rem}.team-association-card{padding:.5rem!important}}.user-controls{margin:1rem 0}.search-filter-row{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.search-box{flex:1;min-width:300px}.search-input{border:1px solid var(--border-color);background:var(--bg-secondary);width:100%;color:var(--text-primary);border-radius:6px;padding:.75rem;font-size:.9rem}.search-input:focus{border-color:var(--button-primary);box-shadow:0 0 0 2px var(--button-primary-alpha);outline:none}.filter-controls{align-items:center;gap:.5rem;display:flex}.filter-select{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);border-radius:4px;padding:.5rem;font-size:.875rem}.pagination-controls-top{color:var(--text-secondary);justify-content:space-between;align-items:center;margin-bottom:1rem;font-size:.875rem;display:flex}.page-size-control{align-items:center;gap:.5rem;display:flex}.page-size-select{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);border-radius:4px;padding:.25rem .5rem;font-size:.875rem}.user-stats{flex-wrap:wrap;gap:1rem;margin:1.5rem 0;display:flex}.user-stats .stat-card{background:var(--bg-secondary);border:1px solid var(--border-color);text-align:center;min-width:120px;box-shadow:0 2px 4px var(--shadow-color);border-radius:8px;flex:1;padding:1rem;transition:box-shadow .2s}.user-stats .stat-card:hover{box-shadow:0 4px 8px var(--shadow-color)}.user-stats .stat-value{color:var(--text-primary);margin-bottom:.25rem;font-size:1.5rem;font-weight:700;display:block}.user-stats .stat-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:.75rem;font-weight:500;display:block}.stats-loading{color:var(--text-secondary);justify-content:center;align-items:center;padding:2rem;display:flex}.pagination-controls{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;justify-content:space-between;align-items:center;margin-top:1.5rem;padding:1rem;display:flex}.pagination-buttons .btn{min-width:60px;padding:.5rem .75rem;font-size:.875rem}.pagination-buttons .btn:disabled{opacity:.5;cursor:not-allowed}.pagination-buttons .btn.btn-primary{background:var(--button-primary);color:#fff;border-color:var(--button-primary)}.pagination-buttons .btn.btn-primary:hover:not(:disabled){background:var(--button-primary-hover);border-color:var(--button-primary-hover)}.btn-extended-profile{padding:.5rem 1.5rem;font-weight:600;background:var(--button-primary)!important;color:#fff!important;border-color:var(--button-primary)!important}.btn-extended-profile:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.15);background:var(--button-primary-hover)!important;border-color:var(--button-primary-hover)!important}.modal-overlay{z-index:1000;background:rgba(0,0,0,.5);justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.modal{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;width:100%;max-width:600px;max-height:90vh;position:relative;overflow-y:auto;box-shadow:0 10px 25px rgba(0,0,0,.2)}.modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1.5rem 1.5rem 1rem;display:flex}.modal-header h4{color:var(--text-primary);margin:0;font-size:1.25rem;font-weight:600}.close-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.25rem;font-size:1.5rem;line-height:1;transition:background-color .2s}.close-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.modal-content{padding:1.5rem}.modal-actions{border-top:1px solid var(--border-color);justify-content:flex-end;gap:1rem;padding:1rem 1.5rem 1.5rem;display:flex}.manage-coaches-table{border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.manage-coaches-header{background:var(--bg-tertiary);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--border-color);text-align:left;grid-template-columns:2fr 2.5fr 1.5fr 1fr;gap:.5rem;padding:.75rem 1rem;font-size:.85rem;font-weight:600;display:grid}.manage-coaches-row{border-bottom:1px solid var(--border-color);text-align:left;grid-template-columns:2fr 2.5fr 1.5fr 1fr;align-items:center;gap:.5rem;padding:.75rem 1rem;transition:background-color .15s;display:grid}.manage-coaches-row:last-child{border-bottom:none}.manage-coaches-row:hover{background:var(--bg-tertiary)}.manage-coaches-row .coach-name{color:var(--text-primary);font-weight:600}.manage-coaches-row .coach-email{color:var(--text-secondary);font-size:.875rem}.manage-coaches-error{color:#dc3545;background:rgba(220,53,69,.1);border:1px solid rgba(220,53,69,.3);border-radius:6px;margin-bottom:.75rem;padding:.5rem .75rem;font-size:.875rem}.manage-coaches-confirm{background:rgba(255,193,7,.1);border:1px solid rgba(255,193,7,.4);border-radius:6px;margin-top:.75rem;padding:.75rem 1rem}.manage-coaches-confirm p{color:var(--text-primary);margin:0 0 .5rem}.manage-coaches-assign{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:8px;margin-top:1rem;padding:1rem}.manage-coaches-assign h5{color:var(--text-primary);margin:0 0 .75rem;font-size:.95rem}.manage-coaches-assign-row{flex-wrap:wrap;align-items:flex-end;gap:.75rem;display:flex}.manage-coaches-field{flex:1;min-width:160px}.manage-coaches-field label{color:var(--text-secondary);margin-bottom:.25rem;font-size:.8rem;font-weight:500;display:block}.manage-coaches-field select{border:1px solid var(--border-color);background:var(--bg-primary);width:100%;color:var(--text-primary);border-radius:6px;padding:.5rem .75rem;font-size:.875rem}.manage-coaches-assign-btn{flex-shrink:0;align-self:flex-end}.btn-danger{color:#fff;cursor:pointer;background:#dc3545;border:none;border-radius:4px;padding:.35rem .75rem;font-size:.8rem;transition:background-color .15s}.btn-danger:hover{background:#c82333}.btn-danger:disabled{opacity:.6;cursor:not-allowed}.manage-players-table{border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.manage-players-header{background:var(--bg-tertiary);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--border-color);text-align:left;grid-template-columns:2.5fr 1fr 1.5fr 1fr;gap:.5rem;padding:.75rem 1rem;font-size:.85rem;font-weight:600;display:grid}.manage-players-row{border-bottom:1px solid var(--border-color);text-align:left;grid-template-columns:2.5fr 1fr 1.5fr 1fr;align-items:center;gap:.5rem;padding:.75rem 1rem;transition:background-color .15s;display:grid}.manage-players-row:last-child{border-bottom:none}.manage-players-row:hover{background:var(--bg-tertiary)}.manage-players-row .player-name{color:var(--text-primary);font-weight:600}.manage-players-row .player-jersey{color:var(--text-secondary);font-size:.875rem}.manage-players-error{color:#dc3545;background:rgba(220,53,69,.1);border:1px solid rgba(220,53,69,.3);border-radius:6px;margin-bottom:.75rem;padding:.5rem .75rem;font-size:.875rem}.manage-players-confirm{background:rgba(255,193,7,.1);border:1px solid rgba(255,193,7,.4);border-radius:6px;margin-top:.75rem;padding:.75rem 1rem}.manage-players-confirm p{color:var(--text-primary);margin:0 0 .5rem}.manage-players-assign{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:8px;margin-top:1rem;padding:1rem}.manage-players-assign h5{color:var(--text-primary);margin:0 0 .75rem;font-size:.95rem}.manage-players-assign-row{flex-wrap:wrap;align-items:flex-end;gap:.75rem;display:flex}.manage-players-field{flex:1;min-width:200px}.manage-players-field label{color:var(--text-secondary);margin-bottom:.25rem;font-size:.8rem;font-weight:500;display:block}.manage-players-field select{border:1px solid var(--border-color);background:var(--bg-primary);width:100%;color:var(--text-primary);border-radius:6px;padding:.5rem .75rem;font-size:.875rem}.manage-players-assign-btn{flex-shrink:0;align-self:flex-end}.team-history-section{margin-bottom:1.5rem}.team-history-section:last-child{margin-bottom:0}.team-history-section h5{color:var(--text-primary);margin:0 0 .75rem;font-size:.95rem;font-weight:600}.team-history-section p{color:var(--text-secondary);margin:0;font-size:.875rem}.team-history-table{border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.team-history-header{background:var(--bg-tertiary);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--border-color);text-align:left;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:.5rem;padding:.75rem 1rem;font-size:.85rem;font-weight:600;display:grid}.team-history-row{border-bottom:1px solid var(--border-color);text-align:left;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));align-items:center;gap:.5rem;padding:.6rem 1rem;font-size:.875rem;transition:background-color .15s;display:grid}.team-history-row:last-child{border-bottom:none}.team-history-row:hover{background:var(--bg-tertiary)}.schedule-practices-error{color:#dc3545;background:rgba(220,53,69,.1);border:1px solid rgba(220,53,69,.3);border-radius:6px;margin-bottom:.75rem;padding:.5rem .75rem;font-size:.875rem}.schedule-practices-conflict{color:#856404;background:rgba(255,193,7,.1);border:1px solid rgba(255,193,7,.4);border-radius:6px;margin-bottom:.75rem;padding:.75rem;font-size:.875rem}.schedule-practices-conflict pre{white-space:pre-wrap;margin:.5rem 0 0;font-size:.8rem}.schedule-practices-table{border:1px solid var(--border-color);border-radius:8px;margin-bottom:1rem;overflow:hidden}.schedule-practices-header{background:var(--bg-tertiary);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--border-color);grid-template-columns:1.5fr 1.2fr 1.5fr 1.5fr 1fr 1fr;gap:.5rem;padding:.75rem 1rem;font-size:.8rem;font-weight:600;display:grid}.schedule-practices-row{border-bottom:1px solid var(--border-color);grid-template-columns:1.5fr 1.2fr 1.5fr 1.5fr 1fr 1fr;align-items:center;gap:.5rem;padding:.6rem 1rem;font-size:.85rem;transition:background-color .15s;display:grid}.schedule-practices-row:last-child{border-bottom:none}.schedule-practices-row:hover{background:var(--bg-tertiary)}.schedule-practices-form{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:8px;margin-top:1rem;padding:1rem}.schedule-practices-form h5{color:var(--text-primary);margin:0 0 .75rem;font-size:.95rem}.schedule-practices-form-grid{grid-template-columns:repeat(4,1fr);align-items:end;gap:1rem;margin-bottom:.75rem;padding:0 1rem;display:grid}.schedule-practices-form-grid .form-control{flex-direction:column;display:flex}.schedule-practices-form-grid label{color:var(--text-secondary);margin-bottom:.25rem;font-size:.8rem;font-weight:500;display:block}.schedule-practices-form-grid input,.schedule-practices-form-grid select,.schedule-practices-form-grid textarea{border:1px solid var(--border-color);background:var(--bg-primary);width:100%;color:var(--text-primary);border-radius:6px;padding:.5rem .75rem;font-size:.875rem}.schedule-practices-form-actions{border-top:1px solid var(--border-color);grid-template-columns:1.5fr 1.2fr 1.5fr 1.5fr 1fr 1fr;align-items:center;gap:.5rem;margin-top:.25rem;padding:.75rem 1rem 0;display:grid}.schedule-practices-form-actions .form-actions-inner{align-items:center;gap:8px;display:flex}.attendance-table{border-collapse:collapse;border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:8px;width:100%;overflow:hidden}.attendance-table thead{background:var(--bg-tertiary)}.attendance-table th{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;text-align:left;border-bottom:1px solid var(--border-color);padding:.75rem 1rem;font-size:.8rem;font-weight:600}.attendance-table td{border-bottom:1px solid var(--border-color);padding:.6rem 1rem;font-size:.85rem}.attendance-table tbody tr:last-child td{border-bottom:none}.attendance-table tbody tr:hover{background:var(--bg-tertiary)}.attendance-table .att-present{color:var(--status-success,#28a745);font-weight:600}.attendance-table .att-absent{color:var(--status-error,#dc3545);font-weight:600}.attendance-table .att-late{color:var(--status-warning,#ffc107);font-weight:600}.attendance-table .att-excused{color:var(--status-info,#17a2b8);font-weight:600}.attendance-table .att-group-header{text-align:center;border-bottom:1px solid var(--border-color);border-left:2px solid var(--border-color);font-size:.85rem}.schedule-games-error{color:#dc3545;background:rgba(220,53,69,.1);border:1px solid rgba(220,53,69,.3);border-radius:6px;margin-bottom:.75rem;padding:.5rem .75rem;font-size:.875rem}.schedule-games-table{border:1px solid var(--border-color);border-radius:8px;margin-bottom:1rem;overflow:hidden}.schedule-games-header{background:var(--bg-tertiary);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--border-color);text-align:left;grid-template-columns:.8fr 1.5fr 1fr .8fr 1.5fr .8fr .8fr;gap:.5rem;padding:.75rem 1rem;font-size:.8rem;font-weight:600;display:grid}.schedule-games-row{border-bottom:1px solid var(--border-color);text-align:left;grid-template-columns:.8fr 1.5fr 1fr .8fr 1.5fr .8fr .8fr;align-items:center;gap:.5rem;padding:.6rem 1rem;font-size:.85rem;transition:background-color .15s;display:grid}.schedule-games-row:last-child{border-bottom:none}.schedule-games-row:hover{background:var(--bg-tertiary)}.schedule-games-form{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:8px;margin-top:1rem;padding:1rem}.schedule-games-form h5{color:var(--text-primary);margin:0 0 .75rem;font-size:.95rem}.schedule-games-form-grid{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.schedule-games-form-grid .form-control{flex-direction:column;display:flex}.schedule-games-form-grid label{color:var(--text-secondary);margin-bottom:.25rem;font-size:.8rem;font-weight:500;display:block}.schedule-games-form-grid input,.schedule-games-form-grid select{border:1px solid var(--border-color);background:var(--bg-primary);width:100%;color:var(--text-primary);border-radius:6px;padding:.5rem .75rem;font-size:.875rem}.form-row{flex-wrap:wrap;gap:1rem;margin-bottom:1rem;display:flex}.form-group{flex-direction:column;flex:1;display:flex}.form-group label{color:var(--text-primary);text-align:left;margin-bottom:.5rem;font-size:.875rem;font-weight:500}[data-theme=dark] .form-group label,[data-theme=dark] .modal .form-group label{color:#e0e0e0}.form-group input,.form-group select{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);border-radius:6px;padding:.75rem;font-size:.9rem;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus{border-color:var(--button-primary);box-shadow:0 0 0 2px var(--button-primary-alpha);outline:none}.error-text{color:var(--status-error);margin-top:.25rem;font-size:.75rem;font-weight:500}.form-note{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;margin-top:1rem;padding:1rem}.form-note p{color:var(--text-secondary);margin:0;font-size:.875rem}.form-row.single{display:block}@media (max-width:768px){.form-row{flex-direction:column;gap:.5rem}.modal{max-width:none;margin:1rem}.modal-header,.modal-content,.modal-actions{padding-left:1rem;padding-right:1rem}}.operation-error{margin:1rem 0}.error-message{border:1px solid var(--status-error);color:var(--status-error);background:rgba(220,53,69,.1);border-radius:6px;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.875rem;display:flex}.error-icon{font-size:1rem}.operation-success{margin:1rem 0}.success-message{border:1px solid var(--status-success);color:var(--status-success);background:rgba(40,167,69,.1);border-radius:6px;align-items:center;gap:.5rem;margin-top:1rem;padding:.75rem 1rem;font-size:.875rem;font-weight:500;display:flex}.success-icon{font-size:1rem}@media (max-width:768px){.pagination-controls{text-align:center;flex-direction:column;gap:1rem}.pagination-buttons{flex-wrap:wrap;justify-content:center}.pagination-buttons .btn{min-width:50px;padding:.375rem .5rem;font-size:.8rem}}.impersonation-modal{max-width:600px}.impersonation-warning{background:rgba(255,193,7,.1);border:1px solid #ffc107;border-radius:6px;align-items:flex-start;gap:.75rem;margin-bottom:1.5rem;padding:1rem;display:flex}.warning-icon{flex-shrink:0;font-size:1.25rem}.warning-text{font-size:.9rem;line-height:1.4}.target-user-info{margin-bottom:1.5rem}.target-user-info h5{color:var(--text-primary);margin:0 0 .75rem;font-size:1rem}.user-details{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;padding:1rem}.user-details div{margin-bottom:.5rem;font-size:.9rem}.user-details div:last-child{margin-bottom:0}.reason-input{margin-bottom:1.5rem}.reason-input label{color:var(--text-primary);margin-bottom:.5rem;font-size:.9rem;font-weight:600;display:block}.required{color:var(--status-error)}.reason-textarea{border:1px solid var(--border-color);background:var(--bg-secondary);width:100%;color:var(--text-primary);resize:vertical;border-radius:6px;min-height:100px;padding:.75rem;font-family:inherit;font-size:.9rem;transition:border-color .2s,box-shadow .2s}.reason-textarea:focus{border-color:var(--button-primary);box-shadow:0 0 0 2px var(--button-primary-alpha);outline:none}.reason-textarea:disabled{opacity:.6;cursor:not-allowed}.character-count{text-align:right;color:var(--text-secondary);margin-top:.25rem;font-size:.75rem}.impersonation-terms{margin-bottom:1rem}.terms-list h5{color:var(--text-primary);margin:0 0 .75rem;font-size:.9rem}.terms-list ul{color:var(--text-secondary);margin:0;padding-left:1.25rem;font-size:.85rem;line-height:1.4}.terms-list li{margin-bottom:.5rem}.terms-list li:last-child{margin-bottom:0}.roster-table .name-cell{color:var(--text-primary);text-align:left;font-weight:500}.roster-table .jersey-cell{text-align:left}.roster-table .position-cell{color:var(--text-secondary);white-space:normal;word-wrap:break-word;text-align:left;width:100%;line-height:1.4;display:block;overflow:visible}.roster-table .status-cell{text-align:left}.roster-table .email-cell{color:var(--text-secondary);text-align:left;font-size:.85rem}.roster-table .email-cell a{color:inherit;text-decoration:none;transition:color .2s}.roster-table .email-cell a:hover{color:var(--button-primary);text-decoration:underline}.roster-table .phone-cell{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;text-align:left;font-size:.85rem;overflow:hidden}.roster-table .role-cell,.roster-table .actions-cell{text-align:left}.roster-table .table-actions{flex-wrap:wrap;justify-content:flex-start;gap:.5rem;display:flex}.roster-table .table-actions .btn{white-space:nowrap;padding:.25rem .5rem;font-size:.75rem}.jersey-number{background:var(--button-primary);color:#fff;border-radius:4px;padding:.25rem .5rem;font-size:.75rem;font-weight:600}.status-badge{text-transform:capitalize;border-radius:4px;padding:.25rem .5rem;font-size:.75rem;font-weight:500}.status-badge.active{background-color:var(--status-success);color:#fff}.status-badge.inactive{background-color:var(--status-error);color:#fff}.status-badge.injured{background-color:var(--status-warning);color:#fff}.role-badge{text-transform:uppercase;background-color:var(--status-info);color:#fff;border-radius:4px;padding:.25rem .5rem;font-size:.75rem;font-weight:500}.mt-4{margin-top:2rem}.teams-table-container{margin-top:1rem}.teams-table{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:8px;flex-direction:column;width:100%;margin-bottom:2rem;display:flex;overflow:hidden}.teams-table .table-header{background:var(--bg-tertiary);color:var(--text-primary);grid-template-columns:2.5fr 1fr 1fr 1fr 2fr;align-items:center;gap:1rem;padding:1rem;font-size:.875rem;font-weight:600;display:grid}.teams-table .table-header>span{text-align:left}.teams-table .table-row{grid-template-columns:2.5fr 1fr 1fr 1fr 2fr;align-items:center;gap:1rem;min-height:3rem;padding:1rem;transition:background-color .2s;display:grid}.teams-table .table-row:hover{background:var(--bg-tertiary)}.teams-table .table-row:last-child{border-bottom:none}.teams-table .name-cell,.teams-table .age-group-cell,.teams-table .season-cell,.teams-table .status-cell,.teams-table .actions-cell{text-align:left}.teams-table .name-cell .team-link{color:var(--button-primary);cursor:pointer;font-weight:500;font-size:inherit;background:0 0;border:none;padding:0;font-family:inherit;text-decoration:none;transition:color .2s}.teams-table .name-cell .team-link:hover{color:var(--button-primary-hover);text-decoration:underline}.teams-table .status-cell .status-badge{display:inline-block}.teams-table .actions-cell .table-actions{flex-wrap:wrap;justify-content:flex-start;gap:.5rem;display:flex}.teams-table .actions-cell .table-actions .btn{white-space:nowrap;padding:.25rem .5rem;font-size:.75rem}.data-table{border-collapse:collapse;width:100%}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--border-color);padding:.75rem 1rem}.data-table th{color:var(--text-secondary);background:var(--bg-secondary);font-size:.85rem;font-weight:600}.data-table tbody tr:hover{background:var(--bg-tertiary)}@media (max-width:1024px){.teams-table .table-header,.teams-table .table-row{grid-template-columns:2fr 1fr 1fr 1fr 1.5fr}}@media (max-width:768px){.teams-table .table-header,.teams-table .table-row{grid-template-columns:1fr;gap:.5rem}.teams-table .table-header span,.teams-table .table-row span{border-bottom:1px solid var(--border-color);text-align:left;padding:.25rem 0}.teams-table .table-header span:before{content:attr(data-label) ": ";font-weight:700}.roster-table .table-header{display:none}.roster-table .table-row{border-bottom:1px solid var(--border-color);flex-direction:column;gap:.5rem;padding:1rem;display:flex}.roster-table .table-row span{text-align:left;padding:.25rem 0}.roster-table .email-cell{word-break:break-all;overflow-wrap:break-word}.roster-table .table-actions{justify-content:flex-start}.roster-table .table-actions .btn{flex:none;width:auto}}.player-selector{border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-primary);cursor:pointer;border-radius:4px;min-width:250px;padding:.5rem 1rem;font-size:.95rem}.player-selector:focus{border-color:var(--primary-color);outline:none;box-shadow:0 0 0 3px rgba(0,123,255,.1)}.profile-detail-view{width:100%;max-width:100%;margin:0 auto;padding:0 2rem}.profile-card-large{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.1)}.profile-header-large{color:#fff;background:linear-gradient(135deg,#4a90e2 0%,#357abd 100%);border-radius:12px 12px 0 0;justify-content:space-between;align-items:center;padding:2rem;display:flex}[data-theme=dark] .profile-header-large{background:linear-gradient(135deg,#1e3a5f 0%,#2c5282 100%)}.player-name-section{align-items:center;gap:1rem;display:flex}.player-name-section h2{margin:0;font-size:2rem;font-weight:600}.jersey-number-large{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(255,255,255,.2);border-radius:8px;padding:.5rem 1rem;font-size:1.5rem;font-weight:700}.player-meta{gap:.5rem;display:flex}.profile-content-large{padding:2rem}.profile-section{margin-bottom:2rem}.profile-section:last-child{margin-bottom:0}.profile-section h4{color:var(--text-primary);border-bottom:2px solid var(--border-color);margin:0 0 1rem;padding-bottom:.5rem;font-size:1.1rem;font-weight:600}.info-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1.5rem;display:grid}.info-item{flex-direction:column;gap:.25rem;display:flex}.info-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:.85rem;font-weight:500}.info-value{color:var(--text-primary);font-size:1rem;font-weight:500}.contacts-list{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;display:grid}.coaches-list{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin-top:1rem;display:grid}.contact-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1rem;transition:all .2s;position:relative}.contact-card:hover{transform:translateY(-2px);box-shadow:0 2px 8px rgba(0,0,0,.1)}.contact-card.emergency{background:rgba(220,53,69,.05);border-color:#dc3545}.contact-header strong{color:var(--text-primary);font-size:1rem}.contact-footer{justify-content:flex-end;margin-top:.75rem;padding-top:.75rem;display:flex}.relationship-badge{background:var(--primary-color);color:#fff;text-transform:uppercase;letter-spacing:.5px;border-radius:12px;padding:.25rem .75rem;font-size:.75rem;font-weight:600}.primary-badge{color:#fff;text-transform:uppercase;letter-spacing:.5px;background:#28a745;border-radius:12px;margin-left:.5rem;padding:.25rem .75rem;font-size:.75rem;font-weight:600}.assistant-badge{color:#fff;text-transform:uppercase;letter-spacing:.5px;background:#007bff;border-radius:12px;margin-left:.5rem;padding:.25rem .75rem;font-size:.75rem;font-weight:600}.manager-badge{color:#fff;text-transform:uppercase;letter-spacing:.5px;background:#6c757d;border-radius:12px;margin-left:.5rem;padding:.25rem .75rem;font-size:.75rem;font-weight:600}.contact-card.emergency .relationship-badge{background:#dc3545}.contact-details{flex-direction:column;gap:.5rem;display:flex}.contact-item{align-items:center;gap:.5rem;font-size:.9rem;display:flex}.contact-icon{font-size:1rem}.contact-item a{color:var(--primary-color);text-decoration:none;transition:color .2s}.contact-item a:hover{color:var(--primary-hover);text-decoration:underline}.profile-actions{border-top:1px solid var(--border-color);gap:1rem;margin-top:1.5rem;padding-top:1.5rem;display:flex}.profile-actions .btn{flex:1}.status-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:12px;padding:.35rem .75rem;font-size:.75rem;font-weight:600}.status-badge.active{color:#fff;background:#28a745}.status-badge.inactive{color:#fff;background:#6c757d}@media (max-width:768px){.profile-header-large{flex-direction:column;align-items:flex-start;gap:1rem;padding:1.5rem}.player-name-section{flex-direction:column;align-items:flex-start}.info-grid{grid-template-columns:1fr}.profile-actions{flex-direction:column}.section-header{flex-direction:column;align-items:flex-start;gap:1rem}.player-selector{width:100%}}@media (max-width:767px){.profile-detail-view{padding:0}.profile-card-large .profile-header-large{flex-direction:column;align-items:stretch;gap:1rem;padding:1.25rem}.profile-card-large .player-name-section{flex-wrap:wrap;width:100%}.profile-card-large .player-name-section h2{word-break:break-word;font-size:1.35rem}.profile-card-large .player-meta,.profile-card-large .profile-header-large>div:last-child{flex-direction:column;width:100%!important;min-width:0!important}.profile-card-large .player-meta>div{width:100%!important;min-width:0!important}.profile-card-large .profile-header-large select,.profile-card-large .player-selector{box-sizing:border-box;width:100%;min-width:0;padding:.625rem .875rem;font-size:.9rem}.profile-card-large .profile-content-large{padding:1rem}.profile-card-large .profile-section{margin-bottom:1.5rem}.profile-card-large .profile-section h4{margin-bottom:.875rem;font-size:1rem}.profile-card-large .info-grid{grid-template-columns:1fr;gap:.75rem}.profile-card-large .info-item{border-bottom:1px solid var(--border-color,#e0e0e0);flex-direction:row;justify-content:space-between;align-items:baseline;gap:.5rem;padding-bottom:.5rem}.profile-card-large .info-item:last-child{border-bottom:none;padding-bottom:0}.profile-card-large .info-label{flex-shrink:0;font-size:.75rem}.profile-card-large .info-value{text-align:right;word-break:break-word;overflow-wrap:break-word;font-size:.9rem}.contacts-list,.coaches-list{flex-direction:column;gap:1rem;display:flex}.contact-card{padding:.875rem}.contact-header{flex-wrap:wrap;gap:.5rem}.contact-header strong{word-break:break-word;font-size:.95rem}.contact-item{font-size:.85rem;overflow:hidden}.contact-item a,.contact-item span{word-break:break-all;overflow-wrap:break-word;min-width:0}.primary-badge,.assistant-badge,.manager-badge,.relationship-badge{margin-left:0;padding:.2rem .5rem;font-size:.65rem}.profile-card-large .profile-section>div[style*="display: flex"]{flex-direction:column!important;gap:.75rem!important}.profile-card-large .profile-section .btn{text-align:center;width:100%}.btn-extended-profile{width:100%}.profile-card-large .status-badge{padding:.2rem .5rem;font-size:.7rem}.profile-card-large .profile-section>div[style*=marginBottom]{margin-bottom:1.25rem!important}.profile-card-large .profile-section h5{font-size:.875rem;margin-bottom:.625rem!important}}@media (min-width:768px) and (max-width:1024px){.profile-card-large .profile-header-large{gap:1.25rem;padding:1.75rem}.profile-card-large .player-name-section h2{font-size:1.75rem}.profile-card-large .profile-header-large>div:last-child{min-width:280px}.profile-card-large .profile-header-large select{padding:.5rem .875rem;font-size:.95rem}.profile-card-large .profile-content-large{padding:1.75rem}.profile-card-large .profile-section{margin-bottom:1.75rem}.profile-card-large .profile-section h4{font-size:1.05rem}.profile-card-large .info-grid{grid-template-columns:repeat(2,1fr);gap:1.25rem}.profile-card-large .profile-section>div[style*="display: flex"]{flex-wrap:wrap;gap:.625rem!important}.profile-card-large .profile-section .btn{flex:calc(50% - .3125rem);min-width:140px}.profile-card-large .info-label{font-size:.8rem}.profile-card-large .info-value{font-size:.95rem}.profile-card-large .profile-section h5{font-size:.9rem}}@media (min-width:1025px) and (max-width:1280px){.profile-card-large .profile-header-large,.profile-card-large .profile-content-large{padding:1.875rem}.profile-card-large .info-grid{grid-template-columns:repeat(3,1fr);gap:1.375rem}.profile-card-large .profile-section .btn{flex:calc(33.333% - .375rem);min-width:120px}}.billing-stats{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:2rem;display:grid}.billing-stats .stat-card{background:var(--bg-secondary);border:1px solid var(--border-color);text-align:center;box-shadow:0 2px 4px var(--shadow-color);border-radius:8px;padding:1.25rem;transition:all .2s}.billing-stats .stat-card:hover{box-shadow:0 4px 8px var(--shadow-color);transform:translateY(-2px)}.billing-stats .stat-value{color:var(--text-primary);margin-bottom:.5rem;font-size:1.75rem;font-weight:700;display:block}.billing-stats .stat-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:.8rem;font-weight:500;display:block}.billing-stat-overdue,.billing-stat-owed{color:var(--status-error)!important}.billing-stat-credit{color:var(--status-success)!important}.billing-stat-revenue{color:var(--button-primary)!important}.view-toggle{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;gap:.5rem;padding:.25rem;display:flex}.view-toggle .btn{border-radius:4px;transition:all .2s}.view-toggle .btn:not(.btn-primary){color:var(--text-secondary);background:0 0;border:none}.view-toggle .btn:not(.btn-primary):hover{background:var(--bg-secondary);color:var(--text-primary)}.accounts-table{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:8px;flex-direction:column;margin-top:1rem;display:flex;overflow:hidden}.accounts-table .table-header{background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);color:var(--text-primary);grid-template-columns:2fr 1.5fr 1.2fr 1.2fr 1.3fr 1fr 2fr;align-items:center;gap:1rem;padding:1rem 1.25rem;font-size:.875rem;font-weight:600;display:grid}.accounts-table .table-row{border-bottom:1px solid var(--border-color);grid-template-columns:2fr 1.5fr 1.2fr 1.2fr 1.3fr 1fr 2fr;align-items:center;gap:1rem;padding:1rem 1.25rem;transition:background-color .2s;display:grid}.accounts-table .table-row:hover{background:var(--bg-tertiary)}.accounts-table .table-row:last-child{border-bottom:none}.accounts-table .col-team strong{color:var(--text-primary);font-weight:600}.accounts-table .col-balance{font-weight:600}.balance-positive{color:var(--status-success)}.balance-negative{color:var(--status-error)}.balance-zero{color:var(--button-primary)}.accounts-table .col-total-paid,.accounts-table .col-total-owed{color:var(--text-primary);font-weight:500}.accounts-table .col-last-payment{color:var(--text-secondary);font-size:.9rem}.accounts-table .col-status .status-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:12px;padding:.25rem .625rem;font-size:.7rem;font-weight:600;display:inline-block}.accounts-table .col-status .status-badge.current{background:var(--status-success);color:#fff}.accounts-table .col-status .status-badge.overdue{background:var(--status-error);color:#fff}.accounts-table .col-status .status-badge.paid{background:var(--button-primary);color:#fff}.accounts-table .col-actions{flex-wrap:wrap;gap:.5rem;display:flex}.accounts-table .col-actions .btn{white-space:nowrap;padding:.375rem .75rem;font-size:.8rem}.transactions-table{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:8px;flex-direction:column;margin-top:1rem;display:flex;overflow:hidden}.transactions-table .table-header{background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);color:var(--text-primary);grid-template-columns:1.2fr 1.8fr 1fr 1.2fr 1.2fr 2.5fr;align-items:center;gap:1rem;padding:1rem 1.25rem;font-size:.875rem;font-weight:600;display:grid}.transactions-table .table-row{border-bottom:1px solid var(--border-color);grid-template-columns:1.2fr 1.8fr 1fr 1.2fr 1.2fr 2.5fr;align-items:center;gap:1rem;padding:1rem 1.25rem;transition:background-color .2s;display:grid}.transactions-table .table-row:hover{background:var(--bg-tertiary)}.transactions-table .table-row:last-child{border-bottom:none}.transactions-table .col-date{color:var(--text-secondary);font-size:.9rem}.transactions-table .col-team{color:var(--text-primary);font-weight:500}.transactions-table .col-type .type-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:12px;padding:.25rem .625rem;font-size:.7rem;font-weight:600;display:inline-block}.transactions-table .col-type .type-badge.payment{background:var(--status-success);color:#fff}.transactions-table .col-type .type-badge.charge{background:var(--status-warning);color:#fff}.transactions-table .col-type .type-badge.refund{background:var(--status-info);color:#fff}.transactions-table .col-type .type-badge.adjustment{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.transactions-table .col-amount{font-size:1rem;font-weight:600}.transaction-amount-positive{color:var(--status-success)}.transaction-amount-negative{color:var(--status-error)}.transactions-table .col-method{color:var(--text-secondary);text-transform:capitalize;font-size:.85rem}.transactions-table .col-description{color:var(--text-secondary);font-size:.9rem}@media (max-width:1200px){.accounts-table .table-header,.accounts-table .table-row{grid-template-columns:1.5fr 1.2fr 1fr 1fr 1fr .8fr 1.5fr;font-size:.85rem}.transactions-table .table-header,.transactions-table .table-row{grid-template-columns:1fr 1.5fr .8fr 1fr 1fr 2fr;font-size:.85rem}}@media (max-width:768px){.billing-stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem}.billing-stats .stat-card{padding:1rem}.billing-stats .stat-value{font-size:1.5rem}.view-toggle{width:100%}.view-toggle .btn{flex:1}.accounts-table .table-header{display:none}.accounts-table .table-row{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;flex-direction:column;gap:.25rem;margin-bottom:.75rem;padding:1rem;display:flex}.accounts-table .table-row>div{border-bottom:none;justify-content:space-between;align-items:center;padding:.25rem 0;display:flex}.accounts-table .table-row>div:before{color:var(--text-secondary);text-transform:uppercase;min-width:100px;font-size:.75rem;font-weight:600}.accounts-table .col-team:before{content:"Team:"}.accounts-table .col-balance:before{content:"Balance:"}.accounts-table .col-total-paid:before{content:"Paid:"}.accounts-table .col-total-owed:before{content:"Owed:"}.accounts-table .col-last-payment:before{content:"Last Payment:"}.accounts-table .col-status:before{content:"Status:"}.accounts-table .col-actions:before{content:none}.accounts-table .col-actions{border-top:1px solid var(--border-color);flex-direction:row;justify-content:stretch;margin-top:.25rem;padding-top:.5rem}.accounts-table .col-actions .btn{flex:1}.transactions-table .table-header{display:none}.transactions-table .table-row{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;flex-direction:column;gap:.25rem;margin-bottom:.75rem;padding:1rem;display:flex}.transactions-table .table-row>div{border-bottom:none;justify-content:space-between;align-items:center;padding:.25rem 0;display:flex}.transactions-table .table-row>div:before{color:var(--text-secondary);text-transform:uppercase;min-width:100px;font-size:.75rem;font-weight:600}.transactions-table .col-date:before{content:"Date:"}.transactions-table .col-team:before{content:"Team:"}.transactions-table .col-type:before{content:"Type:"}.transactions-table .col-amount:before{content:"Amount:"}.transactions-table .col-method:before{content:"Method:"}.transactions-table .col-description:before{content:"Description:"}}.reports-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem;margin-top:1.5rem;display:grid}.report-card{background:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:0 2px 4px var(--shadow-color);border-radius:12px;flex-direction:column;gap:1rem;padding:1.5rem;transition:all .3s;display:flex}.report-card:hover{box-shadow:0 6px 12px var(--shadow-color);border-color:var(--button-primary);transform:translateY(-4px)}.report-header{border-bottom:2px solid var(--border-color);align-items:center;gap:1rem;padding-bottom:1rem;display:flex}.report-icon{background:linear-gradient(135deg, var(--button-primary) 0%, var(--button-primary-hover) 100%);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:60px;height:60px;font-size:2.5rem;display:flex;box-shadow:0 4px 8px rgba(0,123,255,.2)}.report-header h4{color:var(--text-primary);margin:0;font-size:1.125rem;font-weight:600;line-height:1.3}.report-content{flex-direction:column;flex:1;gap:1rem;display:flex}.report-content p{color:var(--text-secondary);margin:0;font-size:.9rem;line-height:1.5}.report-meta{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;flex-direction:column;gap:.5rem;padding:1rem;display:flex}.meta-item{justify-content:space-between;align-items:center;font-size:.85rem;display:flex}.meta-item span:first-child{color:var(--text-secondary);font-weight:500}.meta-item span:last-child{color:var(--text-primary);font-weight:600}.report-actions{border-top:1px solid var(--border-color);gap:.75rem;padding-top:1rem;display:flex}.report-actions .btn{flex:1;padding:.625rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s}.report-actions .btn:hover{box-shadow:0 4px 8px var(--shadow-color);transform:translateY(-2px)}.report-card[data-report-type=user_activity] .report-icon{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.report-card[data-report-type=system_performance] .report-icon{background:linear-gradient(135deg,#f093fb 0%,#f5576c 100%)}.report-card[data-report-type=data_usage] .report-icon{background:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%)}.report-card[data-report-type=security_audit] .report-icon{background:linear-gradient(135deg,#43e97b 0%,#38f9d7 100%)}.reports-grid+.empty-state{margin-top:3rem}@media (max-width:1200px){.reports-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}}@media (max-width:768px){.reports-grid{grid-template-columns:1fr;gap:1rem}.report-card{padding:1.25rem}.report-header{text-align:left;flex-direction:column;align-items:flex-start}.report-icon{width:50px;height:50px;font-size:2rem}.report-actions{flex-direction:column}.report-actions .btn{width:100%}}.report-generation-modal .modal{max-width:500px}.report-type-selector{grid-template-columns:repeat(2,1fr);gap:1rem;margin:1.5rem 0;display:grid}.report-type-option{border:2px solid var(--border-color);background:var(--bg-secondary);cursor:pointer;text-align:center;border-radius:8px;padding:1rem;transition:all .2s}.report-type-option:hover{border-color:var(--button-primary);background:var(--bg-tertiary)}.report-type-option.selected{border-color:var(--button-primary);background:rgba(0,123,255,.1)}.report-type-option .icon{margin-bottom:.5rem;font-size:2rem}.report-type-option .label{color:var(--text-primary);font-size:.875rem;font-weight:600}.download-progress{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;margin-top:1rem;padding:1rem}.progress-bar{background:var(--bg-secondary);border-radius:4px;width:100%;height:8px;margin-top:.5rem;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--button-primary) 0%, var(--button-primary-hover) 100%);border-radius:4px;height:100%;transition:width .3s}.progress-text{color:var(--text-secondary);text-align:center;margin-top:.5rem;font-size:.85rem}.settings-sections{flex-direction:column;gap:2rem;margin-top:1.5rem;display:flex}.settings-category{background:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:0 2px 4px var(--shadow-color);border-radius:12px;padding:1.5rem}.settings-category h4{color:var(--text-primary);border-bottom:2px solid var(--border-color);align-items:center;gap:.75rem;margin:0 0 1.5rem;padding-bottom:1rem;font-size:1.25rem;font-weight:600;display:flex}.settings-category h4:before{content:"⚙️";font-size:1.5rem}.settings-list{flex-direction:column;gap:1.25rem;display:flex}.setting-item{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;grid-template-columns:1fr auto;align-items:center;gap:2rem;padding:1.25rem;transition:all .2s;display:grid}.setting-item:hover{border-color:var(--button-primary);box-shadow:0 2px 8px var(--shadow-color)}.setting-info{flex-direction:column;gap:.5rem;display:flex}.setting-info label{color:var(--text-primary);text-transform:capitalize;cursor:pointer;font-size:.95rem;font-weight:600}.setting-info p{color:var(--text-secondary);margin:0;font-size:.85rem;line-height:1.5}.setting-control{align-items:center;min-width:250px;display:flex}.setting-control input,.setting-control select{border:1px solid var(--border-color);background:var(--bg-secondary);width:100%;color:var(--text-primary);border-radius:6px;padding:.625rem .875rem;font-size:.9rem;transition:all .2s}.setting-control input:focus,.setting-control select:focus{border-color:var(--button-primary);box-shadow:0 0 0 3px var(--button-primary-alpha);outline:none}.setting-control input[type=number]{text-align:right}.setting-control select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;padding-right:2.5rem}.setting-control input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;-ms-appearance:none;appearance:none;background:var(--bg-tertiary);border:2px solid var(--border-color);cursor:pointer;border-radius:13px;width:50px;height:26px;transition:all .3s;position:relative}.setting-control input[type=checkbox]:before{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:all .3s;position:absolute;top:2px;left:2px;box-shadow:0 2px 4px rgba(0,0,0,.2)}.setting-control input[type=checkbox]:checked{background:var(--button-primary);border-color:var(--button-primary)}.setting-control input[type=checkbox]:checked:before{left:26px}.settings-actions-bar{background:var(--bg-secondary);border-top:2px solid var(--border-color);box-shadow:0 -4px 12px var(--shadow-color);z-index:10;justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex;position:-webkit-sticky;position:sticky;bottom:0;left:0;right:0}.settings-actions-bar .changes-indicator{color:var(--status-warning);align-items:center;gap:.5rem;font-size:.9rem;font-weight:500;display:flex}.settings-actions-bar .changes-indicator:before{content:"⚠️";font-size:1.25rem}.settings-actions-bar .actions{gap:1rem;display:flex}.settings-category[data-category=General] h4:before{content:"🏢"}.settings-category[data-category=Security] h4:before{content:"🔒"}.settings-category[data-category=Notifications] h4:before{content:"🔔"}.settings-category[data-category=Performance] h4:before{content:"⚡"}.settings-category[data-category=Backup] h4:before{content:"💾"}.setting-value-badge{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary);border-radius:12px;margin-left:.5rem;padding:.25rem .625rem;font-size:.8rem;font-weight:600;display:inline-block}.setting-value-badge.enabled{border-color:var(--status-success);color:var(--status-success);background:rgba(40,167,69,.1)}.setting-value-badge.disabled{border-color:var(--status-error);color:var(--status-error);background:rgba(220,53,69,.1)}.settings-search{margin-bottom:1.5rem;position:relative}.settings-search input{border:1px solid var(--border-color);background:var(--bg-secondary);width:100%;color:var(--text-primary);border-radius:8px;padding:.875rem 1rem .875rem 3rem;font-size:.95rem;transition:all .2s}.settings-search input:focus{border-color:var(--button-primary);box-shadow:0 0 0 3px var(--button-primary-alpha);outline:none}.settings-search:before{content:"🔍";pointer-events:none;font-size:1.25rem;position:absolute;top:50%;left:1rem;transform:translateY(-50%)}@media (max-width:1024px){.setting-item{grid-template-columns:1fr;gap:1rem}.setting-control{min-width:100%}}@media (max-width:768px){.settings-sections{gap:1.5rem}.settings-category{padding:1.25rem}.settings-category h4{font-size:1.125rem}.setting-item{padding:1rem}.settings-actions-bar{flex-direction:column;align-items:stretch;gap:1rem}.settings-actions-bar .actions{flex-direction:column}.settings-actions-bar .actions .btn{width:100%}}.settings-tabs{border-bottom:2px solid var(--border-color);gap:.5rem;margin-bottom:1.5rem;display:flex;overflow-x:auto}.settings-tab{color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:3px solid transparent;padding:.75rem 1.5rem;font-weight:500;transition:all .2s}.settings-tab:hover{color:var(--text-primary);background:var(--bg-tertiary)}.settings-tab.active{color:var(--button-primary);border-bottom-color:var(--button-primary)}.settings-danger-zone{border:2px solid var(--status-error);background:rgba(220,53,69,.05);border-radius:12px;margin-top:2rem;padding:1.5rem}.settings-danger-zone h4{color:var(--status-error);align-items:center;gap:.5rem;margin:0 0 1rem;font-size:1.125rem;font-weight:600;display:flex}.settings-danger-zone h4:before{content:"⚠️";font-size:1.5rem}.settings-danger-zone p{color:var(--text-secondary);margin:0 0 1rem;font-size:.9rem;line-height:1.5}.settings-danger-zone .btn{background:var(--status-error);border-color:var(--status-error);color:#fff}.settings-danger-zone .btn:hover{background:#c82333;border-color:#bd2130}.impersonation-table{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:8px;flex-direction:column;margin-top:1rem;display:flex;overflow:hidden}.impersonation-table .table-header{background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);color:var(--text-primary);grid-template-columns:1.5fr 1.5fr 2fr 1.3fr 1.3fr .8fr .8fr;align-items:center;gap:1rem;padding:1rem 1.25rem;font-size:.875rem;font-weight:600;display:grid}.impersonation-table .table-row{border-bottom:1px solid var(--border-color);grid-template-columns:1.5fr 1.5fr 2fr 1.3fr 1.3fr .8fr .8fr;align-items:center;gap:1rem;padding:1rem 1.25rem;transition:background-color .2s;display:grid}.impersonation-table .table-row:hover{background:var(--bg-tertiary)}.impersonation-table .table-row:last-child{border-bottom:none}.impersonation-table .col-impersonator,.impersonation-table .col-target{flex-direction:column;gap:.25rem;display:flex}.impersonation-table .col-impersonator strong,.impersonation-table .col-target strong{color:var(--text-primary);font-size:.9rem;font-weight:600}.impersonation-table .col-impersonator small,.impersonation-table .col-target small{color:var(--text-secondary);font-size:.8rem}.impersonation-table .col-reason{color:var(--text-secondary);font-size:.85rem;line-height:1.4}.impersonation-table .col-started,.impersonation-table .col-ended{color:var(--text-secondary);font-size:.85rem}.impersonation-table .col-duration{color:var(--text-primary);font-size:.85rem;font-weight:500}.impersonation-table .col-status .status-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:12px;padding:.25rem .625rem;font-size:.7rem;font-weight:600;display:inline-block}.impersonation-table .col-status .status-badge.active{background:var(--status-success);color:#fff}.impersonation-table .col-status .status-badge.ended{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color)}@media (max-width:1400px){.impersonation-table .table-header,.impersonation-table .table-row{grid-template-columns:1.3fr 1.3fr 1.8fr 1.2fr 1.2fr .7fr .7fr;font-size:.85rem}}@media (max-width:1024px){.impersonation-table .table-header,.impersonation-table .table-row{grid-template-columns:1.2fr 1.2fr 1.5fr 1fr 1fr .8fr;gap:.75rem}.impersonation-table .col-duration{display:none}}@media (max-width:768px){.impersonation-table .table-header{display:none}.impersonation-table .table-row{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:8px;grid-template-columns:1fr;gap:.25rem;margin-bottom:.75rem;padding:1rem}.impersonation-table .table-row:hover{background:var(--bg-tertiary)}.impersonation-table .table-row>div{padding:.25rem 0}.impersonation-table .col-reason:before,.impersonation-table .col-started:before,.impersonation-table .col-ended:before,.impersonation-table .col-duration:before,.impersonation-table .col-status:before{color:var(--text-secondary);text-transform:uppercase;margin-bottom:.125rem;font-size:.75rem;font-weight:600;display:block}.impersonation-table .col-reason:before{content:"Reason"}.impersonation-table .col-started:before{content:"Started"}.impersonation-table .col-ended:before{content:"Ended"}.impersonation-table .col-duration{display:block}.impersonation-table .col-duration:before{content:"Duration"}.impersonation-table .col-status:before{content:"Status"}.impersonation-table .col-impersonator,.impersonation-table .col-target{gap:.125rem}}.impersonation-stats{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.impersonation-stats .stat-card{background:var(--bg-secondary);border:1px solid var(--border-color);text-align:center;box-shadow:0 2px 4px var(--shadow-color);border-radius:8px;padding:1.25rem}.impersonation-stats .stat-value{color:var(--text-primary);margin-bottom:.5rem;font-size:1.75rem;font-weight:700;display:block}.impersonation-stats .stat-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:.8rem;font-weight:500;display:block}.testing-metrics-table-container{margin-top:1.5rem;overflow-x:auto}.testing-metrics-table{border-collapse:separate;border-spacing:0;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;width:100%;overflow:hidden}.testing-metrics-table thead{background:var(--bg-tertiary)}.testing-metrics-table thead th{text-align:left;color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--border-color);padding:1rem 1.25rem;font-size:.875rem;font-weight:600}.testing-metrics-table tbody tr{transition:background-color .2s}.testing-metrics-table tbody tr:hover{background:var(--bg-tertiary)}.testing-metrics-table tbody tr:not(:last-child){border-bottom:1px solid var(--border-color)}.testing-metrics-table tbody td{color:var(--text-primary);padding:1rem 1.25rem;font-size:.9rem}.testing-metrics-table .metric-name{color:var(--text-primary);font-weight:500}.testing-metrics-table .metric-percentile{text-align:center}.percentile-badge{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:1rem;font-weight:700;transition:all .2s;display:inline-flex;box-shadow:0 2px 8px rgba(102,126,234,.3)}.percentile-badge:hover{transform:scale(1.05);box-shadow:0 4px 12px rgba(102,126,234,.4)}.percentile-badge.percentile-zero{border:2px solid var(--border-color);background:linear-gradient(135deg,#6c757d 0%,#495057 100%);box-shadow:0 2px 8px rgba(108,117,125,.3)}.percentile-badge.percentile-zero:hover{box-shadow:0 4px 12px rgba(108,117,125,.4)}.testing-metrics-table .metric-measurement{color:var(--text-primary);font-weight:500}.testing-metrics-table .metric-measurement:empty:before{content:"-";color:var(--text-secondary)}@media (max-width:768px){.testing-metrics-table{font-size:.85rem}.testing-metrics-table thead th,.testing-metrics-table tbody td{padding:.75rem 1rem}.percentile-badge{width:40px;height:40px;font-size:.9rem}}@media (max-width:480px){.testing-metrics-table-container{margin-left:-1rem;margin-right:-1rem}.testing-metrics-table{border-left:none;border-right:none;border-radius:0}.testing-metrics-table thead th,.testing-metrics-table tbody td{padding:.625rem .75rem;font-size:.8rem}.percentile-badge{width:36px;height:36px;font-size:.85rem}}.testing-charts-container{border-top:1px solid var(--border-color);margin-top:2.5rem;padding-top:2rem}.charts-section-title{color:var(--text-primary);margin-bottom:1.5rem;padding-left:.5rem;font-size:1.25rem;font-weight:600}.charts-grid{grid-template-columns:repeat(auto-fit,minmax(450px,1fr));gap:2rem;margin-top:1.5rem;display:grid}.metric-chart-container{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:1.5rem;transition:box-shadow .2s;box-shadow:0 2px 4px rgba(0,0,0,.05)}.metric-chart-container:hover{box-shadow:0 4px 12px rgba(0,0,0,.1)}.chart-title{color:var(--text-primary);border-bottom:2px solid var(--border-color);margin-bottom:1rem;padding-bottom:.75rem;font-size:1rem;font-weight:600}.sparse-data-message{text-align:center;color:var(--text-secondary);background:var(--bg-tertiary);border-radius:6px;margin-top:1rem;padding:2rem 1.5rem}.sparse-data-message p{margin:0;font-size:.95rem}.sparse-data-message .sparse-data-hint{color:var(--text-tertiary);margin-top:.5rem;font-size:.85rem}@media (max-width:1200px){.charts-grid{grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}}@media (max-width:768px){.charts-grid{grid-template-columns:1fr;gap:1.5rem}.metric-chart-container{padding:1rem}.chart-title{font-size:.95rem}.testing-charts-container{margin-top:2rem;padding-top:1.5rem}.charts-section-title{margin-bottom:1rem;font-size:1.1rem}}@media (max-width:480px){.charts-grid{gap:1rem}.metric-chart-container{border-radius:6px;padding:.75rem}.chart-title{margin-bottom:.75rem;padding-bottom:.5rem;font-size:.9rem}}.content-card{background:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:0 2px 4px var(--shadow-color);border-radius:12px;overflow:hidden}.card-section{border-bottom:1px solid var(--border-color);padding:1.5rem}.card-section:last-child{border-bottom:none}.section-title{color:var(--text-primary);margin:0 0 1rem;padding-bottom:.75rem;font-size:1.125rem;font-weight:600}.record-display{flex-wrap:wrap;gap:2rem;margin-top:1rem;display:flex}.record-stat{text-align:center;flex-direction:column;gap:.25rem;min-width:120px;display:flex}.record-stat .stat-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:.85rem;font-weight:500}.record-stat .stat-value{color:var(--text-primary);font-size:1.5rem;font-weight:700}.stats-list{flex-wrap:wrap;justify-content:center;gap:2rem;margin-top:1rem;display:flex}.stats-list .stat-item{text-align:center;flex-direction:column;gap:.25rem;min-width:120px;display:flex}.stats-list .stat-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:.85rem;font-weight:500;display:block}.stats-list .stat-value{color:var(--text-primary);font-size:1.5rem;font-weight:700;display:block}.section-note{background:var(--bg-tertiary);border-left:3px solid var(--button-primary);color:var(--text-secondary);border-radius:4px;margin-top:1rem;padding:.75rem 1rem;font-size:.875rem;line-height:1.5}.section-note.minimal{color:var(--text-secondary);text-align:center;background:0 0;border:none;margin-top:.75rem;padding:0;font-size:.75rem}.positive{color:var(--status-success)}.negative{color:var(--status-error)}@media (max-width:768px){.card-section{padding:1.25rem}.section-title{font-size:1rem}.record-display{gap:1.5rem}.record-stat{min-width:100px}.record-stat .stat-value{font-size:1.25rem}.stats-list{gap:1.5rem}.stats-list .stat-item{min-width:100px}.stats-list .stat-value{font-size:1.25rem}}@media (max-width:480px){.card-section{padding:1rem}.section-title{padding-bottom:.5rem;font-size:.95rem}.record-display{flex-direction:column;gap:1rem}.record-stat{min-width:auto}.record-stat .stat-value{font-size:1.125rem}.stats-list{flex-direction:column;gap:1rem}.stats-list .stat-item{min-width:auto}.stats-list .stat-value{font-size:1.125rem}.section-note{padding:.625rem .875rem;font-size:.8rem}}.team-selector-centered{justify-content:center;margin:.75rem 0;display:flex}.team-selector-centered .form-select{border:1px solid var(--border-color);background-color:var(--bg-primary);color:var(--text-primary);cursor:pointer;border-radius:6px;min-width:250px;max-width:350px;padding:.5rem 2rem .5rem .75rem;font-size:.95rem;transition:all .2s}.team-selector-centered .form-select:hover{border-color:var(--primary-color)}.team-selector-centered .form-select:focus{border-color:var(--primary-color);outline:none;box-shadow:0 0 0 3px rgba(0,123,255,.1)}.team-roster-header{justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.team-roster-header .header-title-section{text-align:center;flex:1}.team-roster-header .header-title-section h3{margin:0 0 .5rem}.stats-header-section{text-align:center;margin-bottom:1.5rem;padding-bottom:1rem}.metric-chart-container{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.metric-chart-container .chart-header{border-bottom:2px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.metric-chart-container .chart-title{color:var(--text-primary);border-bottom:none;margin:0;padding-bottom:0;font-size:1rem;font-weight:600}.metric-chart-container .chart-percentile{color:var(--primary-color);background:var(--bg-secondary);border-radius:4px;padding:.25rem .75rem;font-size:.9rem;font-weight:600}.metric-chart-container .chart-empty-state{text-align:center;color:var(--text-secondary);background:var(--bg-tertiary);border-radius:6px;padding:3rem 1.5rem}.metric-chart-container .chart-empty-state p{margin:0;font-size:.95rem}@media (max-width:768px){.metric-chart-container{padding:1rem}.metric-chart-container .chart-header{flex-direction:column;align-items:flex-start;gap:.5rem}.metric-chart-container .chart-title{font-size:.95rem}.metric-chart-container .chart-percentile{font-size:.85rem}}@media (max-width:480px){.metric-chart-container{border-radius:6px;padding:.75rem}.metric-chart-container .chart-title{font-size:.9rem}.metric-chart-container .chart-percentile{padding:.2rem .6rem;font-size:.8rem}.metric-chart-container .chart-empty-state{padding:2rem 1rem}}.action-buttons-grid{flex-wrap:wrap;justify-content:center;gap:.75rem;padding:0;display:flex}@media (max-width:480px){.action-buttons-grid{flex-direction:column}.action-buttons-grid .btn{width:100%}}.team-management-grid{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.team-management-grid.with-admin{grid-template-columns:1fr 1fr 1fr}.team-management-grid>*{min-width:0}@media (max-width:1024px){.team-management-grid,.team-management-grid.with-admin{grid-template-columns:1fr}}@media (max-width:768px){.manage-players-table{background:0 0;border:none;overflow:visible}.manage-players-header{display:none}.manage-players-row{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:8px;flex-direction:column;gap:.4rem;margin-bottom:.75rem;padding:1rem;display:flex}.manage-players-row .player-name{border-bottom:1px solid var(--border-color);padding-bottom:.5rem;font-size:1rem}.manage-players-row>span:nth-child(2){align-items:center;gap:.5rem;display:flex}.manage-players-row>span:nth-child(2):before{content:"Jersey:";color:var(--text-secondary);min-width:60px;font-size:.75rem}.manage-players-row>span:nth-child(3){align-items:center;gap:.5rem;display:flex}.manage-players-row>span:nth-child(3):before{content:"Position:";color:var(--text-secondary);min-width:60px;font-size:.75rem}.manage-players-row>span:nth-child(4){border-top:1px solid var(--border-color);padding-top:.5rem}.manage-players-assign-row{flex-direction:column;align-items:stretch}.manage-players-field{min-width:unset}.manage-players-assign-btn{align-self:stretch}.manage-coaches-table{background:0 0;border:none;overflow:visible}.manage-coaches-header{display:none}.manage-coaches-row{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:8px;flex-direction:column;gap:.4rem;margin-bottom:.75rem;padding:1rem;display:flex}.manage-coaches-row .coach-name{border-bottom:1px solid var(--border-color);padding-bottom:.5rem;font-size:1rem}.manage-coaches-row>span:nth-child(2){align-items:center;gap:.5rem;display:flex}.manage-coaches-row>span:nth-child(2):before{content:"Email:";color:var(--text-secondary);min-width:50px;font-size:.75rem}.manage-coaches-row .coach-email{word-break:break-all}.manage-coaches-row>span:nth-child(3){align-items:center;gap:.5rem;display:flex}.manage-coaches-row>span:nth-child(3):before{content:"Role:";color:var(--text-secondary);min-width:50px;font-size:.75rem}.manage-coaches-row>span:nth-child(4){border-top:1px solid var(--border-color);padding-top:.5rem}.manage-coaches-assign-row{flex-direction:column;align-items:stretch}.manage-coaches-field{min-width:unset}.manage-coaches-assign-btn{align-self:stretch}.schedule-practices-table{background:0 0;border:none;overflow:visible}.schedule-practices-header{display:none}.schedule-practices-row{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:8px;flex-direction:column;gap:.4rem;margin-bottom:.75rem;padding:1rem;display:flex}.schedule-practices-row>span:first-child{border-bottom:1px solid var(--border-color);padding-bottom:.5rem;font-size:.95rem;font-weight:600}.schedule-practices-row>span:nth-child(2){align-items:center;gap:.5rem;display:flex}.schedule-practices-row>span:nth-child(2):before{content:"Date:";color:var(--text-secondary);min-width:60px;font-size:.75rem}.schedule-practices-row>span:nth-child(3){align-items:center;gap:.5rem;display:flex}.schedule-practices-row>span:nth-child(3):before{content:"Time:";color:var(--text-secondary);min-width:60px;font-size:.75rem}.schedule-practices-row>span:nth-child(4){align-items:center;gap:.5rem;display:flex}.schedule-practices-row>span:nth-child(4):before{content:"Location:";color:var(--text-secondary);min-width:60px;font-size:.75rem}.schedule-practices-row>span:nth-child(5){align-items:center;gap:.5rem;display:flex}.schedule-practices-row>span:nth-child(5):before{content:"Status:";color:var(--text-secondary);min-width:60px;font-size:.75rem}.schedule-practices-row>span:last-child{border-top:1px solid var(--border-color);flex-direction:row;padding-top:.5rem}.schedule-practices-form-grid{grid-template-columns:1fr!important;padding:0!important}.schedule-practices-form-actions{flex-wrap:wrap;padding:.75rem 0 0!important}.attendance-table{background:0 0;border:none;overflow:visible}.attendance-table thead{display:none}.attendance-table tbody tr{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:8px;flex-direction:column;gap:.3rem;margin-bottom:.5rem;padding:.75rem 1rem;display:flex}.attendance-table tbody tr td{border-bottom:none;padding:0}.attendance-table tbody tr td:first-child{border-bottom:1px solid var(--border-color);padding-bottom:.4rem;font-size:.95rem;font-weight:600}.attendance-table tbody tr td:nth-child(2):before{content:"Jersey: ";color:var(--text-secondary);font-size:.75rem}.attendance-table tbody tr td:nth-child(3):before{content:"P Late: ";color:var(--text-secondary);font-size:.75rem}.attendance-table tbody tr td:nth-child(4):before{content:"P Present: ";color:var(--text-secondary);font-size:.75rem}.attendance-table tbody tr td:nth-child(5):before{content:"P Absent: ";color:var(--text-secondary);font-size:.75rem}.attendance-table tbody tr td:nth-child(6):before{content:"P Excused: ";color:var(--text-secondary);font-size:.75rem}.attendance-table tbody tr td:nth-child(7):before{content:"G Late: ";color:var(--text-secondary);font-size:.75rem}.attendance-table tbody tr td:nth-child(8):before{content:"G Present: ";color:var(--text-secondary);font-size:.75rem}.attendance-table tbody tr td:nth-child(9):before{content:"G Absent: ";color:var(--text-secondary);font-size:.75rem}.attendance-table tbody tr td:nth-child(10):before{content:"G Excused: ";color:var(--text-secondary);font-size:.75rem}.schedule-games-table{background:0 0;border:none;overflow:visible}.schedule-games-header{display:none}.schedule-games-row{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:8px;flex-direction:column;gap:.4rem;margin-bottom:.75rem;padding:1rem;display:flex}.schedule-games-row>span:first-child{align-items:center;gap:.5rem;display:flex}.schedule-games-row>span:nth-child(2){border-bottom:1px solid var(--border-color);padding-bottom:.5rem;font-size:.95rem;font-weight:600}.schedule-games-row>span:nth-child(2):before{content:"vs ";color:var(--text-secondary);font-weight:400}.schedule-games-row>span:nth-child(3){align-items:center;gap:.5rem;display:flex}.schedule-games-row>span:nth-child(3):before{content:"Date:";color:var(--text-secondary);min-width:60px;font-size:.75rem}.schedule-games-row>span:nth-child(4){align-items:center;gap:.5rem;display:flex}.schedule-games-row>span:nth-child(4):before{content:"Time:";color:var(--text-secondary);min-width:60px;font-size:.75rem}.schedule-games-row>span:nth-child(5){align-items:center;gap:.5rem;display:flex}.schedule-games-row>span:nth-child(5):before{content:"Location:";color:var(--text-secondary);min-width:60px;font-size:.75rem}.schedule-games-row>span:nth-child(6){align-items:center;gap:.5rem;display:flex}.schedule-games-row>span:nth-child(6):before{content:"Status:";color:var(--text-secondary);min-width:60px;font-size:.75rem}.schedule-games-row>span:nth-child(7){border-top:1px solid var(--border-color);padding-top:.5rem}.schedule-games-form-grid{grid-template-columns:1fr!important}.team-history-table{background:0 0;border:none;overflow:visible}.team-history-header{display:none}.team-history-row{border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:8px;flex-direction:column;gap:.4rem;margin-bottom:.75rem;padding:1rem;display:flex}.team-history-row>span:first-child{border-bottom:1px solid var(--border-color);padding-bottom:.5rem;font-weight:600}}.game-result{text-align:center;margin:.5rem 0}.result-badge{letter-spacing:.025em;border-radius:4px;padding:.25rem .75rem;font-size:.875rem;font-weight:600;display:inline-block}.result-badge.w{background-color:var(--status-success);color:#fff}.result-badge.l{background-color:var(--status-error);color:#fff}.result-badge.t{background-color:var(--status-warning);color:#fff}.calendar-view{background:var(--bg-primary);height:100%;box-shadow:0 2px 8px var(--shadow-color);border-radius:8px;flex-direction:column;display:flex;overflow:hidden}.calendar-header{background:var(--button-primary);color:#fff;border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1rem 1.5rem;display:flex}.calendar-navigation{align-items:center;gap:1rem;display:flex}.nav-btn{color:#fff;cursor:pointer;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:6px;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;font-size:1.25rem;font-weight:700;transition:all .2s;display:flex}.nav-btn:hover{background:rgba(255,255,255,.2);border-color:rgba(255,255,255,.3);transform:translateY(-1px)}.nav-btn:active{transform:translateY(0)}.calendar-title{text-align:center;min-width:350px;margin:0;font-size:1.5rem;font-weight:600}.today-btn{color:#fff;cursor:pointer;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:6px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s}.today-btn:hover{background:rgba(255,255,255,.2);border-color:rgba(255,255,255,.3)}.calendar-day-headers{background:var(--bg-secondary);border-bottom:2px solid var(--border-color);grid-template-columns:repeat(7,1fr);display:grid}.day-header{text-align:center;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;padding:.75rem;font-size:.875rem;font-weight:600}.calendar-grid{background:var(--bg-primary);background:var(--border-color);flex:1;grid-template-rows:repeat(6,minmax(100px,1fr));grid-template-columns:repeat(7,1fr);gap:1px;min-height:0;display:grid;overflow-y:auto}.calendar-month-grid{background:var(--border-color);flex-direction:column;flex:1;gap:1px;min-height:0;display:flex;overflow-y:auto}.calendar-week-row{background:var(--border-color);flex-direction:column;display:flex}.multi-day-row,.week-multi-day-row{background:var(--bg-secondary);grid-template-columns:repeat(7,1fr);gap:2px;padding:2px 0;display:grid}.multi-day-event{cursor:pointer;white-space:nowrap;text-overflow:ellipsis;border-radius:4px;align-items:center;gap:.25rem;min-height:1.5rem;padding:.25rem .5rem;font-size:.7rem;transition:all .2s;display:flex;overflow:hidden}.multi-day-event:hover{-webkit-filter:brightness(.95);filter:brightness(.95);box-shadow:0 2px 4px rgba(0,0,0,.15)}.multi-day-event.event-type-tournament{color:#2c5282;background:rgba(30,58,95,.2)}.multi-day-event.event-type-game{color:#007bff;background:rgba(0,123,255,.2)}.multi-day-event.event-type-practice{color:#28a745;background:rgba(40,167,69,.2)}.multi-day-event.event-type-scrimmage{color:#ff9800;background:rgba(255,152,0,.2)}.multi-day-event .event-org-name{opacity:.7;font-size:.65rem}.multi-day-event .event-title{text-overflow:ellipsis;font-size:.7rem;font-weight:600;overflow:hidden}.calendar-week-days{flex:1;grid-template-columns:repeat(7,1fr);gap:1px;min-height:80px;display:grid}.calendar-day{background:var(--bg-primary);cursor:pointer;flex-direction:column;min-height:100px;padding:.5rem;transition:background-color .2s;display:flex;position:relative;overflow:hidden}.calendar-day:hover{background:var(--bg-tertiary)}.calendar-day.other-month{background:var(--bg-secondary);opacity:.5}.calendar-day.other-month .day-number{color:var(--text-secondary)}.calendar-day.today{border:2px solid var(--button-primary);background:rgba(0,123,255,.05)}.calendar-day.selected{box-shadow:inset 0 0 0 2px var(--button-primary);background:rgba(0,123,255,.1)}.calendar-day.has-events{font-weight:500}.day-number{color:var(--text-primary);text-align:right;margin-bottom:.25rem;padding:.25rem;font-size:.875rem;font-weight:600}.calendar-day.today .day-number{background:var(--button-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;margin-left:auto;display:flex}.day-events{flex-direction:column;flex:1;gap:.25rem;display:flex;overflow:hidden}.calendar-event{cursor:pointer;white-space:nowrap;text-overflow:ellipsis;border-left:3px solid;border-radius:4px;align-items:center;gap:.25rem;padding:.125rem .375rem;font-size:.7rem;transition:all .2s;display:flex;overflow:hidden}.calendar-event:hover{transform:translate(2px);box-shadow:0 2px 4px rgba(0,0,0,.1)}.calendar-event.hovered{z-index:10;box-shadow:0 4px 8px rgba(0,0,0,.15)}.calendar-event.event-type-game,.day-event-item.event-type-game,.week-event-item.event-type-game{color:#007bff;background:rgba(0,123,255,.1);border-left-color:#007bff}.calendar-event.event-type-practice,.day-event-item.event-type-practice,.week-event-item.event-type-practice{color:#28a745;background:rgba(40,167,69,.1);border-left-color:#28a745}.calendar-event.event-type-scrimmage,.day-event-item.event-type-scrimmage,.week-event-item.event-type-scrimmage{color:#ff9800;background:rgba(255,152,0,.1);border-left-color:#ff9800}.calendar-event.event-type-tournament,.day-event-item.event-type-tournament,.week-event-item.event-type-tournament{color:#2c5282;background:rgba(30,58,95,.1);border-left-color:#2c5282}.calendar-event.status-cancelled,.day-event-item.status-cancelled,.week-event-item.status-cancelled{opacity:.6;text-decoration:line-through}.calendar-event.event-type-tournament.tournament-not-registered,.day-event-item.event-type-tournament.tournament-not-registered,.week-event-item.event-type-tournament.tournament-not-registered{opacity:.6;background:0 0;border-left-style:dashed}.multi-day-event.event-type-tournament.tournament-not-registered{opacity:.6;background:0 0;border:1px dashed #2c5282}.event-org-name{opacity:.7;text-overflow:ellipsis;white-space:nowrap;font-size:.65rem;font-weight:600;display:block;overflow:hidden}.event-practice-type{text-transform:uppercase;letter-spacing:.3px;opacity:.8;flex-shrink:0;font-size:.6rem;font-weight:700}.event-practice-type-badge{color:#28a745;background:rgba(40,167,69,.15);border-radius:10px;flex-shrink:0;padding:.125rem .5rem;font-size:.7rem;font-weight:600}.event-score{opacity:.9;flex-shrink:0;font-size:.7rem;font-weight:700}.event-score-day{color:var(--text-primary);font-size:.9rem;font-weight:600}.event-title{text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:500;overflow:hidden}.calendar-event .event-title{font-size:.7rem}.event-time{opacity:.8;flex-shrink:0;font-size:.7rem}.more-events{color:var(--text-secondary);text-align:center;cursor:pointer;border-radius:4px;padding:.25rem .5rem;font-size:.7rem;transition:background-color .2s}.more-events:hover{background:var(--bg-tertiary);color:var(--text-primary)}@media (max-width:1024px){.calendar-day{min-height:80px;padding:.375rem}.day-number{font-size:.75rem}.calendar-event{padding:.2rem .375rem;font-size:.7rem}.event-time{display:none}}.calendar-empty-state{text-align:center;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;padding:3rem;display:flex}.calendar-empty-state h3{color:var(--text-primary);margin:0 0 .5rem}.calendar-empty-state p{margin:0;font-size:.875rem}.calendar-controls{align-items:center;gap:1rem;display:flex}.view-mode-selector{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:6px;gap:0;padding:2px;display:flex}.view-mode-btn{color:rgba(255,255,255,.8);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s}.view-mode-btn:hover{color:#fff;background:rgba(255,255,255,.1)}.view-mode-btn.active{color:#fff;background:rgba(255,255,255,.2);font-weight:600}.day-view{flex-direction:column;flex:1;display:flex;overflow:hidden}.day-view-header{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);min-height:60px;padding:1rem 1.5rem}.all-day-section{border-bottom:1px solid var(--border-color);margin-bottom:1.5rem;padding-bottom:1rem}.all-day-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);margin-bottom:.75rem;font-size:.75rem;font-weight:600}.all-day-events{flex-direction:column;gap:.75rem;display:flex}.day-event-item.all-day-event{padding-left:1rem}.day-event-item.all-day-event .event-details-block{padding-left:0}.day-view-content{flex:1;padding:1.5rem;overflow-y:auto}.no-events{text-align:center;color:var(--text-secondary);padding:3rem;font-size:1rem}.day-events-list{flex-direction:column;gap:1rem;display:flex}.day-event-item{background:var(--bg-primary);cursor:pointer;border-left:4px solid;border-radius:8px;gap:1rem;padding:1rem;transition:all .2s;display:flex;box-shadow:0 2px 4px rgba(0,0,0,.05)}.day-event-item:hover{transform:translate(4px);box-shadow:0 4px 12px rgba(0,0,0,.1)}.event-time-block{border-right:1px solid var(--border-color);flex-direction:column;gap:.25rem;min-width:80px;padding-right:1rem;display:flex}.event-start-time{color:var(--text-primary);font-size:1.125rem;font-weight:600}.event-end-time{color:var(--text-secondary);font-size:.875rem}.event-details-block{flex-direction:column;flex:1;gap:.5rem;display:flex}.event-header{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.event-header .event-org-name{opacity:.7;width:100%;font-size:.8rem;font-weight:600;display:block}.event-header .event-title{color:var(--text-primary);font-size:1.125rem;font-weight:600}.event-location{color:var(--text-secondary);align-items:center;gap:.5rem;font-size:.875rem;display:flex}.location-icon{font-size:1rem}.event-description{color:var(--text-secondary);font-size:.875rem;line-height:1.5}.week-view{flex-direction:column;flex:1;display:flex;overflow:hidden}.week-view-header{background:var(--bg-secondary);border-bottom:2px solid var(--border-color);background:var(--border-color);grid-template-columns:repeat(7,1fr);gap:1px;display:grid}.week-day-header{background:var(--bg-secondary);text-align:center;cursor:pointer;padding:1rem;transition:background-color .2s}.week-day-header:hover{background:var(--bg-tertiary)}.week-day-header.today{background:rgba(0,123,255,.1)}.week-day-header.selected{box-shadow:inset 0 -3px 0 var(--button-primary);background:rgba(0,123,255,.15)}.week-day-name{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.25rem;font-size:.875rem;font-weight:600}.week-day-number{color:var(--text-primary);font-size:1.5rem;font-weight:700}.week-day-header.today .week-day-number{color:var(--button-primary)}.week-view-content{background:var(--border-color);flex:1;grid-template-columns:repeat(7,1fr);gap:1px;display:grid;overflow-y:auto}.week-multi-day-row{border-bottom:1px solid var(--border-color)}.week-day-column{background:var(--bg-primary);padding:.5rem;overflow-y:auto}.no-events-placeholder{height:100%;min-height:100px}.week-day-events{flex-direction:column;gap:.5rem;display:flex}.week-event-item{background:var(--bg-secondary);cursor:pointer;border-left:3px solid;border-radius:6px;flex-direction:column;gap:.25rem;padding:.5rem;transition:all .2s;display:flex}.week-event-item:hover{transform:translateY(-2px);box-shadow:0 4px 8px rgba(0,0,0,.1)}.week-event-item .event-time{color:var(--text-primary);font-size:.75rem;font-weight:600}.week-event-item .event-title{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;font-weight:500;overflow:hidden}@media (max-width:768px){.calendar-header{flex-direction:column;gap:.75rem;padding:.75rem}.calendar-navigation{justify-content:center;gap:.5rem;width:100%}.calendar-title{flex:1;min-width:0;font-size:1rem}.calendar-controls{justify-content:center;gap:.5rem;width:100%}.view-mode-btn{padding:.375rem .625rem;font-size:.75rem}.today-btn{padding:.375rem .75rem;font-size:.75rem}.nav-btn{width:2rem;height:2rem;font-size:1rem}.day-header{letter-spacing:0;padding:.375rem .125rem;font-size:.65rem}.calendar-day{min-height:50px;padding:.125rem}.day-number{padding:.125rem;font-size:.7rem}.calendar-day.today .day-number{width:1.4rem;height:1.4rem;font-size:.65rem}.calendar-event{border-left-width:2px;padding:.1rem .2rem;font-size:.6rem}.multi-day-event{min-height:1.2rem;padding:.1rem .2rem;font-size:.6rem}.multi-day-event .event-org-name,.event-time,.event-org-name{display:none}.more-events{padding:.1rem;font-size:.6rem}.week-view-header{gap:0}.week-day-header{padding:.5rem .125rem}.week-day-name{letter-spacing:0;font-size:.65rem}.week-day-number{font-size:1rem}.week-view-content{gap:0}.week-day-column{padding:.25rem}.week-event-item{border-left-width:2px;padding:.25rem}.week-event-item .event-time{font-size:.6rem}.week-event-item .event-title{font-size:.7rem}.week-event-item .event-org-name{display:none}.day-view-content{padding:.75rem}.day-view-header{min-height:0;padding:.5rem}.day-event-item{flex-direction:column;gap:.75rem}.event-time-block{border-right:none;border-bottom:1px solid var(--border-color);flex-direction:row;min-width:auto;padding-bottom:.5rem;padding-right:0}}.list-view{flex-direction:column;gap:1.5rem;width:100%;min-height:400px;max-height:100vh;display:flex;overflow-y:auto}.list-view-header{border-bottom:2px solid var(--border-color);justify-content:space-between;align-items:center;padding:1rem 0;display:flex}.list-view-title{color:var(--text-primary);margin:0;font-size:1.5rem;font-weight:600}.list-view-summary{color:var(--text-secondary);font-size:.875rem;font-weight:500}.list-view-header-controls{align-items:center;gap:1.5rem;display:flex}.hide-past-toggle{cursor:pointer;color:var(--text-secondary);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.hide-past-toggle input[type=checkbox]{cursor:pointer;width:16px;height:16px;accent-color:var(--primary-color)}.toggle-label{font-weight:500}.list-view-content{scrollbar-width:thin;scrollbar-color:var(--button-primary) var(--bg-secondary);flex-direction:column;flex:1;gap:1rem;max-height:calc(100vh - 200px);display:flex;overflow-y:auto}.list-view-content::-webkit-scrollbar{width:8px}.list-view-content::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:4px}.list-view-content::-webkit-scrollbar-thumb{background:var(--button-primary);border-radius:4px}.list-view-content::-webkit-scrollbar-thumb:hover{background:var(--button-primary-hover)}.list-event-card{cursor:pointer;border-left:4px solid;border-radius:8px;min-height:-webkit-fit-content;min-height:-moz-fit-content;min-height:fit-content;padding:1rem;transition:all .2s;position:relative;overflow:visible;box-shadow:0 2px 4px rgba(0,0,0,.05)}.list-event-card.event-type-game{background:rgba(0,123,255,.1);border-left-color:#007bff}.list-event-card.event-type-practice{background:rgba(40,167,69,.1);border-left-color:#28a745}.list-event-card.event-type-scrimmage{background:rgba(255,152,0,.1);border-left-color:#ff9800}.list-event-card.event-type-tournament{background:rgba(30,58,95,.1);border-left-color:#2c5282}.list-event-card:hover{transform:translate(4px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.list-event-card.event-type-game:hover{background:rgba(0,123,255,.15)}.list-event-card.event-type-practice:hover{background:rgba(40,167,69,.15)}.list-event-card.event-type-scrimmage:hover{background:rgba(255,152,0,.15)}.list-event-card.event-type-tournament:hover{background:rgba(30,58,95,.15)}.list-event-card.selected{box-shadow:0 4px 12px rgba(0,123,255,.3)}.list-event-card.status-cancelled{opacity:.6}.event-card-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.event-type-info{align-items:center;gap:.5rem;display:flex}.event-icon{display:none}.event-type-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:600}.event-status{align-items:center;display:flex}.status-indicator{letter-spacing:.05em;border-radius:12px;padding:.25rem .75rem;font-size:.75rem;font-weight:600}.status-indicator.status-scheduled{color:#1e40af;background:#dbeafe}.status-indicator.status-in-progress{color:#065f46;background:#d1fae5}.status-indicator.status-completed{color:#374151;background:#e5e7eb}.status-indicator.status-cancelled{color:#991b1b;background:#fee2e2;text-decoration:line-through}.event-card-content{flex-direction:column;gap:.75rem;min-height:-webkit-fit-content;min-height:-moz-fit-content;min-height:fit-content;display:flex}.event-org-name{opacity:.7;color:var(--text-secondary);margin:0 0 .25rem;font-size:.8rem;font-weight:600;display:block}.event-title{color:var(--text-primary);margin:0 0 .5rem;font-size:1.125rem;font-weight:600;line-height:1.4}.event-description{color:var(--text-secondary);margin:0 0 .5rem;font-size:.875rem;line-height:1.5}.event-details{flex-direction:column;gap:.5rem;width:100%;margin-top:.5rem;display:flex}.event-datetime{flex-wrap:wrap;align-items:center;gap:1rem;font-size:.875rem;display:flex}.event-date{align-items:center;gap:.5rem;display:flex}.date-label{color:var(--text-primary);font-weight:600}.full-date{color:var(--text-secondary);font-size:.8125rem}.event-time{align-items:center;gap:.5rem;display:flex}.time-label{color:var(--text-primary);font-weight:600}.duration{color:var(--text-secondary);font-size:.8125rem}.event-location{color:var(--text-primary);align-items:center;gap:.5rem;width:100%;font-size:.875rem;font-weight:500;display:flex}.location-text{flex:1;font-weight:500}.tournament-info,.practice-info,.game-info{background:var(--bg-secondary);border-radius:6px;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.5rem;padding:.5rem .75rem;font-size:.875rem;display:flex}.info-label{color:var(--text-secondary);font-weight:600}.info-value{color:var(--text-primary);font-weight:500}.team-count,.attendance-required,.game-score{color:var(--text-secondary);font-size:.8125rem}.attendance-required{color:#dc2626;font-weight:600}.pagination-controls{border-top:2px solid var(--border-color);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;display:flex}.pagination-info{color:var(--text-secondary);font-size:.875rem;font-weight:500}.pagination-buttons{align-items:center;gap:.5rem;display:flex}.pagination-btn{border:1px solid var(--border-color);background:var(--bg-secondary);min-width:36px;height:36px;color:var(--text-primary);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;padding:.5rem;font-size:.875rem;font-weight:500;transition:all .2s;display:flex}.pagination-btn:hover:not(:disabled){background:var(--bg-tertiary);border-color:var(--primary-color);color:var(--primary-color)}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-btn.page-number{min-width:40px}.pagination-btn.page-number.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color);font-weight:600}.pagination-ellipsis{color:var(--text-secondary);padding:0 .5rem}.page-size-selector{color:var(--text-secondary);align-items:center;gap:.5rem;font-size:.875rem;display:flex}.page-size-select{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);cursor:pointer;border-radius:6px;padding:.5rem;font-size:.875rem;transition:all .2s}.page-size-select:hover{border-color:var(--primary-color)}.page-size-select:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px var(--focus-ring);outline:none}.list-empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:400px;padding:4rem 2rem;display:flex}.empty-state-icon{opacity:.5;margin-bottom:1rem;font-size:4rem}.empty-state-title{color:var(--text-primary);margin:0 0 .5rem;font-size:1.5rem;font-weight:600}.empty-state-message{color:var(--text-secondary);max-width:400px;margin:0;font-size:1rem;line-height:1.5}@media (max-width:768px){.list-view{gap:1rem}.list-view-header{flex-direction:column;align-items:flex-start;gap:.5rem}.list-event-card{padding:1rem}.event-title{font-size:1.125rem}.pagination-controls{flex-direction:column;align-items:stretch;gap:.75rem}.pagination-buttons,.page-size-selector{justify-content:center}}@media (max-width:480px){.list-event-card{padding:.75rem}.event-card-header{flex-direction:column;align-items:flex-start;gap:.5rem}.event-details{padding:.5rem}.pagination-btn{min-width:32px;height:32px;font-size:.8125rem}}.schedule-event-details-overlay{z-index:1000;background-color:rgba(0,0,0,.5);justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.schedule-event-details{background:var(--bg-primary,#fff);border-radius:12px;flex-direction:column;width:100%;max-width:800px;max-height:90vh;transition:all .3s;display:flex;overflow:hidden;box-shadow:0 20px 40px rgba(0,0,0,.15)}.schedule-event-details.collapsed{max-height:120px}.event-details-header{border-bottom:1px solid var(--border-light,#e5e7eb);background:var(--bg-secondary,#f9fafb);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.header-main{align-items:center;gap:16px;display:flex}.event-type-indicator{background:var(--bg-tertiary,#f3f4f6);border-radius:20px;align-items:center;gap:8px;padding:6px 12px;display:flex}.event-icon{font-size:18px}.event-type-label{color:var(--text-primary,#111827);font-size:14px;font-weight:600}.event-status-indicator .status-badge{text-transform:uppercase;letter-spacing:.5px;border-radius:16px;padding:4px 12px;font-size:12px;font-weight:600}.status-scheduled{color:#1e40af;background:#dbeafe}.status-in-progress{color:#92400e;background:#fef3c7}.status-completed{color:#065f46;background:#d1fae5}.status-cancelled{color:#991b1b;background:#fee2e2}.header-controls{align-items:center;gap:8px;display:flex}.expand-toggle-btn,.close-btn{cursor:pointer;color:var(--text-secondary,#6b7280);background:0 0;border:none;border-radius:6px;padding:8px;font-size:20px;transition:background-color .2s}.expand-toggle-btn:hover,.close-btn:hover{background:var(--bg-hover,#e5e7eb)}.close-btn{font-size:24px;font-weight:300}.event-details-content{flex:1;padding:24px;overflow-y:auto}.event-basic-info{margin-bottom:24px}.schedule-event-details .event-title{color:var(--text-primary,#111827);margin:0 0 12px;font-size:24px;font-weight:700;line-height:1.3}.schedule-event-details .event-description{color:var(--text-secondary,#6b7280);margin:0 0 20px;font-size:15px;line-height:1.6}.event-datetime-info{background:var(--bg-secondary,#f9fafb);border:1px solid var(--border-light,#e5e7eb);border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;padding:16px;display:grid}.datetime-item{flex-direction:column;gap:4px;display:flex}.datetime-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary,#9ca3af);font-size:12px;font-weight:600}.datetime-value{color:var(--text-primary,#111827);font-size:15px;font-weight:500}.event-details-tabs{border-bottom:2px solid var(--border-light,#e5e7eb);gap:4px;margin-bottom:24px;display:flex}.tab-btn{cursor:pointer;color:var(--text-secondary,#6b7280);background:0 0;border:none;border-bottom:3px solid transparent;align-items:center;gap:6px;margin-bottom:-2px;padding:12px 20px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.tab-btn:hover{color:var(--text-primary,#111827);background:var(--bg-hover,#f3f4f6)}.tab-btn.active{color:var(--primary-color,#2563eb);border-bottom-color:var(--primary-color,#2563eb)}.tab-icon{font-size:16px}.tab-content{animation:.3s fadeIn}.details-section-title{color:var(--text-primary,#111827);border-bottom:2px solid var(--border-light,#e5e7eb);margin:0 0 16px;padding-bottom:8px;font-size:16px;font-weight:700}.details-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;display:grid}.detail-item{align-items:baseline;gap:8px;display:flex}.detail-label{color:var(--text-tertiary,#9ca3af);text-transform:uppercase;letter-spacing:.3px;flex-shrink:0;font-size:13px;font-weight:600}.detail-value{color:var(--text-primary,#111827);text-align:right;flex:1;font-size:15px;font-weight:500}.detail-value.required{color:#dc2626;font-weight:600}.detail-value.optional{color:#059669}.detail-link{color:var(--primary-color,#2563eb);font-weight:500;text-decoration:none;transition:color .2s}.detail-link:hover{color:var(--primary-hover,#1d4ed8);text-decoration:underline}.location-content{flex-direction:column;gap:20px;display:flex}.location-display{background:var(--bg-secondary,#f9fafb);border:1px solid var(--border-light,#e5e7eb);border-radius:8px;align-items:center;gap:12px;padding:16px;display:flex}.location-icon{flex-shrink:0;font-size:24px}.location-text{color:var(--text-primary,#111827);font-size:16px;font-weight:500;line-height:1.5}.map-placeholder{background:var(--bg-secondary,#f9fafb);border:2px dashed var(--border-light,#e5e7eb);text-align:center;color:var(--text-tertiary,#9ca3af);border-radius:8px;padding:60px 20px;font-size:14px}.equipment-list{grid-column:1/-1}.equipment-items{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.equipment-item{background:var(--bg-accent,#f3f4f6);color:var(--text-primary,#111827);border-radius:16px;padding:6px 12px;font-size:13px;font-weight:500}.teams-matchup{grid-column:1/-1}.teams-display{background:var(--bg-secondary,#f9fafb);border-radius:8px;align-items:center;gap:16px;margin-top:8px;padding:16px;display:flex}.team{border:2px solid var(--border-light,#e5e7eb);background:#fff;border-radius:6px;flex-direction:column;flex:1;gap:6px;padding:12px;display:flex}.team-label{text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary,#9ca3af);font-size:11px;font-weight:600}.team-id{color:var(--text-primary,#111827);font-size:15px;font-weight:600}.team-score{color:var(--primary-color,#2563eb);font-size:24px;font-weight:700}.vs-separator{color:var(--text-tertiary,#9ca3af);text-transform:uppercase;font-size:14px;font-weight:700}.final-score-banner{background:var(--bg-secondary,#f8fafc);border:1px solid var(--border-light,#e5e7eb);border-radius:10px;flex-direction:column;align-items:center;gap:6px;margin:16px 0;padding:16px 20px;display:flex}.final-score-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-tertiary,#94a3b8);font-size:11px;font-weight:600}.final-score-numbers{align-items:center;gap:12px;display:flex}.final-score-team{color:var(--text-secondary,#64748b);min-width:40px;font-size:13px;font-weight:500}.final-score-team:first-child{text-align:right}.final-score-team:last-child{text-align:left}.final-score-value{color:var(--text-primary,#1e293b);text-align:center;min-width:32px;font-size:28px;font-weight:700}.final-score-divider{color:var(--text-tertiary,#94a3b8);font-size:20px;font-weight:300}.event-actions{border-top:1px solid var(--border-light,#e5e7eb);gap:12px;margin-top:24px;padding-top:24px;display:flex}.action-btn{cursor:pointer;border:none;border-radius:6px;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:600;transition:background-color .2s;display:flex}.action-btn:disabled{opacity:.6;cursor:not-allowed}.action-btn.primary{background-color:var(--button-primary);color:#fff}.action-btn.primary:hover:not(:disabled){background-color:var(--button-primary-hover)}.action-btn.secondary{background-color:var(--button-secondary,#7b8794);color:#fff}.action-btn.secondary:hover:not(:disabled){background-color:var(--button-secondary-hover,#5d6d7e)}.score-form{border-top:1px solid var(--border-light,#e5e7eb);margin-top:24px;padding-top:24px}.score-inputs{align-items:flex-end;gap:16px;margin-bottom:16px;display:flex}.score-field{flex-direction:column;flex:1;gap:6px;display:flex}.score-label{color:var(--text-tertiary,#9ca3af);text-transform:uppercase;letter-spacing:.3px;font-size:13px;font-weight:600}.score-input{border:1px solid var(--border-color,#d1d5db);text-align:center;background:var(--bg-primary,#fff);color:var(--text-primary,#111827);border-radius:6px;width:100%;padding:10px 12px;font-size:18px;font-weight:600}.score-input:focus{border-color:var(--button-primary);box-shadow:0 0 0 2px var(--button-primary-alpha,rgba(31,97,141,.2));outline:none}.score-separator{color:var(--text-tertiary,#9ca3af);padding-bottom:10px;font-size:24px;font-weight:700}.score-error{color:#dc2626;margin:0 0 12px;font-size:13px}.score-form-actions{justify-content:flex-end;gap:12px;display:flex}@media (max-width:768px){.schedule-event-details{border-radius:12px 12px 0 0;max-width:100%;max-height:95vh}.event-details-content{padding:20px}.event-datetime-info,.details-grid{grid-template-columns:1fr}.teams-display{flex-direction:column}.vs-separator{transform:rotate(90deg)}.event-actions{flex-direction:column}.action-btn{justify-content:center;width:100%}}.attendance-section{border-top:1px solid var(--border-light,#e5e7eb);margin-top:24px;padding-top:24px}.attendance-loading,.attendance-empty{color:var(--text-secondary,#6b7280);padding:16px 0;font-size:14px}.attendance-error{color:#dc2626;margin:0 0 12px;font-size:13px}.attendance-list{flex-direction:column;gap:8px;max-height:400px;margin-bottom:16px;display:flex;overflow-y:auto}.attendance-row{background:var(--bg-secondary,#f9fafb);border:1px solid var(--border-light,#e5e7eb);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.attendance-player{flex-shrink:1;align-items:center;gap:8px;min-width:0;display:flex}.attendance-jersey{color:var(--text-tertiary,#9ca3af);min-width:32px;font-size:13px;font-weight:700}.attendance-name{color:var(--text-primary,#111827);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}.attendance-statuses{flex-shrink:0;gap:4px;display:flex}.attendance-status-btn{border:1px solid var(--border-light,#d1d5db);background:var(--bg-primary,#fff);color:var(--text-secondary,#6b7280);cursor:pointer;border-radius:4px;padding:4px 10px;font-size:12px;font-weight:500;transition:all .15s}.attendance-status-btn:hover{border-color:var(--text-secondary,#9ca3af)}.attendance-status-btn.active-present{color:#065f46;background:#d1fae5;border-color:#6ee7b7}.attendance-status-btn.active-absent{color:#991b1b;background:#fee2e2;border-color:#fca5a5}.attendance-status-btn.active-late{color:#92400e;background:#fef3c7;border-color:#fcd34d}.attendance-status-btn.active-excused{color:#1e40af;background:#dbeafe;border-color:#93c5fd}.attendance-actions{justify-content:flex-end;gap:12px;display:flex}@media (max-width:768px){.attendance-row{flex-direction:column;align-items:flex-start;gap:8px}.attendance-statuses{justify-content:space-between;width:100%}.attendance-status-btn{text-align:center;flex:1}}.schedule-event-filter{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;margin-bottom:1.5rem;transition:all .2s;overflow:hidden}.filter-header{background:var(--bg-primary);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1rem;display:flex}.filter-toggle{color:var(--text-primary);cursor:pointer;background:0 0;border:none;align-items:center;gap:.5rem;padding:0;font-size:1rem;font-weight:500;transition:color .2s;display:flex}.filter-toggle:hover{color:var(--primary-color)}.filter-toggle:focus{outline:2px solid var(--focus-ring);outline-offset:2px;border-radius:4px}.filter-icon{font-size:1.125rem}.filter-label{font-weight:600}.filter-badge{color:#ef4444;background:rgba(239,68,68,.1);border-radius:12px;margin-left:.25rem;padding:.25rem .5rem;font-size:.75rem;font-weight:600;line-height:1}.expand-icon{margin-left:.25rem;font-size:.875rem;transition:transform .2s}.expand-icon.rotated{transform:rotate(180deg)}.clear-filters-btn{background:var(--danger-color);color:#fff;cursor:pointer;border:none;border-radius:4px;padding:.5rem .75rem;font-size:.875rem;font-weight:500;transition:background-color .2s}.clear-filters-btn:hover{background:var(--danger-hover)}.clear-filters-btn:focus{outline:2px solid var(--focus-ring);outline-offset:2px}.filter-content{background:var(--bg-primary);padding:1.5rem}.filter-section{margin-bottom:1.5rem}.filter-section:last-child{margin-bottom:0}.filter-section-title{color:var(--text-primary);text-transform:uppercase;letter-spacing:.05em;margin:0 0 .75rem;font-size:.875rem;font-weight:600}.filter-options{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.filter-checkbox{cursor:pointer;border:1px solid var(--border-color);background:var(--bg-secondary);border-radius:6px;align-items:center;gap:.5rem;min-width:-webkit-fit-content;min-width:-moz-fit-content;min-width:fit-content;padding:.5rem .75rem;transition:all .2s;display:flex}.filter-checkbox:hover{background:var(--bg-tertiary);border-color:var(--border-hover)}.filter-checkbox input[type=checkbox]{cursor:pointer;width:18px;height:18px;accent-color:var(--primary-color)}.checkbox-label{color:var(--text-primary);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap;font-size:.875rem;font-weight:500}[data-theme=light] .filter-checkbox{background:#fff;border-color:#d1d5db}[data-theme=light] .filter-checkbox:hover{background:#f3f4f6;border-color:#9ca3af}[data-theme=light] .checkbox-label{color:#111827;font-weight:500}@media (max-width:768px){.filter-content{padding:1rem}.filter-section{margin-bottom:1.25rem}.filter-options{gap:.5rem}.filter-checkbox{flex:calc(50% - .25rem);min-width:0;padding:.625rem .75rem}.checkbox-label{text-overflow:ellipsis;overflow:hidden}}@media (max-width:480px){.filter-content{padding:.75rem}.filter-checkbox{flex:100%}.date-preset-btn{text-align:center;flex:calc(50% - .1875rem);min-width:0}}.session-extension-notification{z-index:9998;border-radius:8px;width:400px;max-width:calc(100vw - 40px);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;animation:.3s ease-out slideInRight;position:fixed;top:80px;right:20px;box-shadow:0 4px 16px rgba(0,0,0,.15)}.session-extension-notification.animating-out{animation:.3s ease-in forwards slideOutRight}.session-extension-notification.warning{background:linear-gradient(135deg,#fff3cd 0%,#ffeaa7 100%);border:1px solid #ffc107;border-left-width:4px}.session-extension-notification.critical{background:linear-gradient(135deg,#f8d7da 0%,#f5c6cb 100%);border:1px solid #dc3545;border-left-width:4px;animation:.3s ease-out slideInRight,2s .5s infinite criticalPulse}.session-timing-display{background:rgba(255,255,255,.95);border:1px solid rgba(0,0,0,.1);border-radius:8px;margin:8px 0;padding:16px;transition:all .3s;box-shadow:0 2px 8px rgba(0,0,0,.1)}.session-timing-display.normal{border-left:4px solid #28a745}.session-timing-display.warning{background:rgba(255,193,7,.05);border-left:4px solid #ffc107}.session-timing-display.critical{background:rgba(220,53,69,.05);border-left:4px solid #dc3545;animation:2s infinite criticalPulse}.session-timing-display.expired{opacity:.8;background:rgba(108,117,125,.05);border-left:4px solid #6c757d}.session-error-display{background-color:var(--error-bg,#fef2f2);border:1px solid var(--error-border,#fecaca);border-radius:12px;max-width:600px;margin:2rem auto;padding:0;animation:.3s ease-out sessionErrorFadeIn;overflow:hidden;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}.impersonation-banner{z-index:9999;background:linear-gradient(135deg,#ff6b35 0%,#f7931e 100%);border-bottom:3px solid #e55a2b;animation:.3s ease-out slideDown;position:fixed;top:0;left:0;right:0;box-shadow:0 2px 8px rgba(229,90,43,.3)}.banner-content{justify-content:space-between;align-items:center;max-width:1400px;min-height:60px;margin:0 auto;padding:12px 20px;display:flex}.banner-left{flex:1;align-items:center;gap:12px;display:flex}.impersonation-icon{background:rgba(255,255,255,.2);border:2px solid rgba(255,255,255,.3);border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.icon-mask{color:#fff;-webkit-filter:drop-shadow(0 1px 2px rgba(0,0,0,.2));filter:drop-shadow(0 1px 2px rgba(0,0,0,.2));font-size:20px}.impersonation-info{flex-direction:column;gap:4px;display:flex}.impersonation-status{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.status-text{color:rgba(255,255,255,.9);text-transform:uppercase;letter-spacing:.5px;font-size:14px;font-weight:600}.impersonated-user-name{color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.2);font-size:18px;font-weight:700}.impersonation-details{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.session-timing-container{border-top:1px solid rgba(255,255,255,.2);margin-top:12px;padding-top:12px}.session-timing-container .banner-timing{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);margin:0}.session-timing-container .banner-timing .timing-main{margin-bottom:8px}.session-timing-container .banner-timing .timing-label,.session-timing-container .banner-timing .timing-value{color:rgba(255,255,255,.9)}.session-timing-container .banner-timing .progress-container{background:rgba(255,255,255,.2);margin-bottom:8px}.session-timing-container .banner-timing .timing-details{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.1)}.session-timing-container .banner-timing .detail-label,.session-timing-container .banner-timing .detail-value{color:rgba(255,255,255,.8)}.admin-info,.session-duration,.remaining-time{color:rgba(255,255,255,.85);font-size:13px;font-weight:500}.remaining-time{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:2px 8px}.remaining-time.time-warning{color:#fff3cd;background:rgba(255,193,7,.2);border-color:rgba(255,193,7,.4)}.remaining-time.time-critical{color:#f8d7da;background:rgba(220,53,69,.2);border-color:rgba(220,53,69,.4);animation:2s infinite pulse}.banner-right{align-items:center;display:flex}.end-impersonation-btn{color:#e55a2b;cursor:pointer;background:rgba(255,255,255,.95);border:2px solid rgba(255,255,255,.3);border-radius:6px;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:600;transition:all .2s;display:flex;box-shadow:0 2px 4px rgba(0,0,0,.1)}.end-impersonation-btn:hover:not(:disabled){background:#fff;border-color:rgba(255,255,255,.5);transform:translateY(-1px);box-shadow:0 4px 8px rgba(0,0,0,.15)}.end-impersonation-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 4px rgba(0,0,0,.1)}.end-impersonation-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.btn-icon{font-size:16px;font-weight:700}.btn-text{white-space:nowrap}.loading-dots{color:inherit}.loading-dots:after{content:"";animation:1.5s steps(4,end) infinite dots}.banner-stripe{background:repeating-linear-gradient(45deg,rgba(255,255,255,.3),rgba(255,255,255,.3) 10px,rgba(255,255,255,.1) 10px,rgba(255,255,255,.1) 20px);height:4px;animation:2s linear infinite stripeMove}@media (max-width:768px){.banner-content{flex-direction:column;align-items:stretch;gap:12px;padding:10px 16px}.banner-left{justify-content:center}.impersonation-details{justify-content:center;gap:12px}.session-timing-container{margin-top:8px}.banner-right{justify-content:center}.end-impersonation-btn{justify-content:center;width:100%;padding:12px 20px}.impersonated-user-name{font-size:16px}.status-text{font-size:13px}}@media (max-width:480px){.impersonation-details{flex-direction:column;align-items:center;gap:6px}.admin-info,.session-duration,.remaining-time{font-size:12px}.btn-text{display:none}.end-impersonation-btn{padding:10px 16px}}@media (prefers-contrast:high){.impersonation-banner{background:#d63384;border-bottom-color:#a02952}.end-impersonation-btn{color:#a02952;background:#fff;border-color:#a02952}.remaining-time.time-critical{color:#fff;background:#dc3545}}@media (prefers-reduced-motion:reduce){.impersonation-banner,.banner-stripe,.remaining-time.time-critical{animation:none}.end-impersonation-btn:hover:not(:disabled){transform:none}}.end-impersonation-btn:focus{outline-offset:2px;outline:3px solid rgba(255,255,255,.8)}@media print{.impersonation-banner{display:none}}.contact-management{background:#fff;border-radius:8px;margin-bottom:24px;padding:24px;box-shadow:0 2px 4px rgba(0,0,0,.1)}.contact-header{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;display:flex}.contact-header h3{color:var(--text-primary);margin:0;font-size:1.25rem;font-weight:600}.contact-form{gap:20px;display:grid}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{color:#374151;font-size:.875rem;font-weight:500}.form-group input,.form-group select{border:1px solid #d1d5db;border-radius:6px;padding:10px 12px;font-size:.875rem;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.form-group input:disabled,.form-group select:disabled{color:#6b7280;cursor:not-allowed;background-color:#f9fafb}.form-group input.error,.form-group select.error{border-color:#ef4444;box-shadow:0 0 0 3px rgba(239,68,68,.1)}.error-message{color:#ef4444;margin-top:4px;font-size:.75rem}.emergency-contact-section{border-top:1px solid #e5e7eb;margin-top:20px;padding-top:20px}.section-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.section-header h4{color:var(--text-primary);margin:0;font-size:1.1rem;font-weight:600}.emergency-contact-form{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;gap:16px;padding:16px;display:grid}.form-actions{border-top:1px solid #e5e7eb;justify-content:flex-end;gap:12px;margin-top:20px;padding-top:20px;display:flex}.btn{cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid transparent;border-radius:6px;justify-content:center;align-items:center;padding:.375rem .75rem;font-size:.8rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{color:#3b82f6;background-color:rgba(59,130,246,.12);border-color:rgba(59,130,246,.3)}.btn-primary:hover:not(:disabled){background-color:rgba(59,130,246,.2);transform:translateY(-1px);box-shadow:0 2px 8px rgba(59,130,246,.2)}.btn-secondary{background-color:var(--bg-tertiary,#f3f4f6);color:var(--text-primary,#374151);border:1px solid var(--border-color,#d1d5db)}.btn-secondary:hover:not(:disabled){background-color:var(--bg-hover,#e5e7eb)}.btn-danger{color:#fff;background-color:#ef4444}.btn-danger:hover:not(:disabled){background-color:#dc2626}.btn-small{padding:6px 12px;font-size:.75rem}@media (max-width:768px){.contact-management{padding:16px}.contact-header,.section-header{flex-direction:column;align-items:flex-start;gap:12px}.form-actions{flex-direction:column}.btn{width:100%}}.btn.loading:disabled{position:relative}.btn.loading:disabled:after{content:"";border:2px solid transparent;border-top-color:currentColor;border-radius:50%;width:16px;height:16px;margin:auto;animation:1s linear infinite spin;position:absolute}.btn:focus{outline-offset:2px;outline:2px solid #3b82f6}.form-group input:focus,.form-group select:focus{outline-offset:-2px;outline:2px solid #3b82f6}
