*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100vh;margin:0}body{color:#0b1d42;background:#f5f7fb;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input{font:inherit}.app{min-height:100vh;display:flex}.sidebar{color:#fff;background:linear-gradient(#061d43 0%,#03285a 100%);flex-direction:column;width:280px;min-height:100vh;padding:28px 20px;display:flex}.brand{align-items:center;gap:14px;margin-bottom:45px;display:flex}.brand-mark{color:#a8db35;border:2px solid #a8db35;border-radius:16px;place-items:center;width:52px;height:52px;font-weight:800;display:grid}.brand h1{letter-spacing:1px;margin:0;font-size:26px}.brand span{color:#a8db35;margin-top:4px;font-size:12px;display:block}.navigation{flex-direction:column;gap:7px;display:flex}.navigation a{color:#e9eef8;border-radius:9px;padding:14px 18px;font-weight:500;text-decoration:none}.navigation a:hover{background:#ffffff14}.navigation a.active{color:#fff;background:linear-gradient(90deg,#45b62c,#9ad728)}.sidebar-footer{border:1px solid #ffffff26;border-radius:12px;margin-top:auto;padding:20px}.sidebar-footer span,.sidebar-footer small{color:#aebbd0;display:block}.sidebar-footer strong{margin:8px 0 25px;font-size:21px;display:block}.main{flex:1;min-width:0}.topbar{background:#fff;border-bottom:1px solid #e3e8f0;justify-content:space-between;align-items:center;height:80px;padding:0 38px;display:flex}.topbar>div:first-child{align-items:center;gap:22px;display:flex}.topbar>div:first-child strong{font-size:22px}.topbar>div:first-child span{color:#65738b;border-left:1px solid #dce2ea;padding-left:22px}.user{align-items:center;gap:12px;display:flex}.avatar{color:#fff;background:#42ad35;border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.user span{color:#718096;margin-top:2px;font-size:13px;display:block}.content{padding:38px}.breadcrumb{color:#6e7d94;margin-bottom:24px}.content h2{margin:0;font-size:34px}.subtitle{color:#64748b;margin:8px 0 30px;font-size:17px}.empty-card{text-align:center;background:#fff;border:1px solid #e1e6ee;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;min-height:380px;padding:40px;display:flex;box-shadow:0 5px 20px #0f23460a}.empty-icon{background:#eff9e8;border-radius:50%;place-items:center;width:80px;height:80px;margin-bottom:15px;font-size:38px;display:grid}.empty-card h3{margin:5px 0;font-size:25px}.empty-card p{color:#68778e;max-width:430px;line-height:1.6}.empty-card button{color:#fff;cursor:pointer;background:#082c64;border:0;border-radius:8px;margin-top:15px;padding:13px 25px;font-weight:600}.empty-card button:hover{background:#0d3b80}@media (width<=850px){.sidebar{width:210px}.topbar>div:first-child span{display:none}}@media (width<=650px){.sidebar{display:none}.topbar{padding:0 20px}.content{padding:24px 18px}}.page-header{justify-content:space-between;align-items:flex-start;gap:25px;margin-bottom:28px;display:flex}.team-badge{text-align:right;background:#fff;border:1px solid #dfe5ed;border-radius:10px;padding:12px 18px;font-weight:700}.team-badge span{color:#718096;margin-top:3px;font-size:12px;font-weight:500;display:block}.upload-layout{grid-template-columns:minmax(0,1fr) 350px;gap:24px;display:grid}.upload-main{min-width:0}.upload-card{text-align:center;background:#fff;border:2px dashed #b8c5d6;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;min-height:330px;padding:40px;display:flex}.upload-card:hover{background:#fbfef9;border-color:#44b630}.upload-icon{color:#43ad32;background:#eff9e9;border-radius:50%;place-items:center;width:70px;height:70px;font-size:35px;font-weight:700;display:grid}.upload-card h3{margin:18px 0 5px;font-size:22px}.upload-card p{color:#697990}.upload-button{color:#fff;cursor:pointer;background:#0a3068;border-radius:8px;margin-top:10px;padding:13px 24px;font-weight:600;display:inline-block}.upload-button:hover{background:#0d3d82}.upload-button input{display:none}.upload-help{color:#7a879a;margin-top:12px;font-size:13px}.empty-files{text-align:center;background:#fff;border:1px solid #e0e6ee;border-radius:14px;margin-top:22px;padding:40px}.empty-document{color:#a9b5c5;font-size:42px}.empty-files h3{margin-bottom:5px}.empty-files p{color:#718096;margin:0}.requirements-card{background:#fff;border:1px solid #e0e6ee;border-radius:14px;align-self:start;padding:24px}.requirements-card h3{margin-top:0;margin-bottom:24px}.requirement{gap:14px;margin-bottom:24px;display:flex}.requirement-number{color:#43a832;background:#edf8e8;border-radius:50%;flex:0 0 34px;place-items:center;width:34px;height:34px;font-weight:800;display:grid}.requirement p{color:#718096;margin:5px 0 0;font-size:13px;line-height:1.5}.privacy-box{background:#f1f7ff;border:1px solid #d8e7fa;border-radius:10px;margin-top:10px;padding:16px}.privacy-box strong{color:#0a3068}.privacy-box p{color:#60718a;margin-bottom:0;font-size:13px;line-height:1.5}.progress-box{border-top:1px solid #e7ebf1;margin-top:24px;padding-top:20px}.progress-box>div:first-child{justify-content:space-between;font-size:13px;display:flex}.progress-track{background:#e9edf3;border-radius:10px;height:8px;margin:12px 0;overflow:hidden}.progress-value{background:#49b72f;width:0%;height:100%}.progress-box small{color:#7a879a}@media (width<=1050px){.upload-layout{grid-template-columns:1fr}.requirements-card{width:100%}}@media (width<=650px){.page-header{flex-direction:column}.team-badge{text-align:left}.upload-card{padding:25px 15px}}.selected-files{background:#fff;border:1px solid #e0e6ee;border-radius:14px;margin-top:22px;padding:24px}.selected-files-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;display:flex}.selected-files-header h3{margin:0}.selected-files-header p{color:#718096;margin:5px 0 0;font-size:14px}.clear-files{color:#66768d;cursor:pointer;background:0 0;border:0;font-weight:600}.files-list{flex-direction:column;gap:10px;display:flex}.file-row{border:1px solid #e4e9f0;border-radius:10px;align-items:center;gap:14px;padding:13px 15px;display:flex}.file-icon{color:#0a3068;background:#eef4fc;border-radius:9px;flex:0 0 48px;place-items:center;width:48px;height:48px;font-size:12px;font-weight:800;display:grid}.file-info{flex:1;min-width:0}.file-info strong{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.file-info span{color:#8592a5;margin-top:4px;font-size:12px;display:block}.file-status{color:#3c9b2d;background:#eef9e9;border-radius:20px;padding:5px 10px;font-size:12px;font-weight:700}.process-button{color:#fff;cursor:pointer;background:#48b52f;border:0;border-radius:9px;width:100%;margin-top:20px;padding:14px 20px;font-weight:700}.process-button:hover{background:#3ca127}.file-status.processing{color:#a66b00;background:#fff7df}.file-status.processed{color:#329326;background:#edf9e9}.file-status.error{color:#c33b3b;background:#fff0f0}.process-button:disabled{opacity:.6;cursor:not-allowed}.review-card{background:#fff;border:1px solid #e0e6ee;border-radius:14px;margin-top:24px;padding:24px;box-shadow:0 5px 20px #0f23460a}.review-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}.review-label{color:#7a879a;text-transform:uppercase;letter-spacing:.7px;font-size:12px;font-weight:700}.review-header h3{margin:5px 0 0;font-size:23px}.eligibility{white-space:nowrap;border-radius:999px;align-items:center;padding:8px 13px;font-size:13px;font-weight:800;display:inline-flex}.eligibility.eligible{color:#319127;background:#edf9e9}.eligibility.not-eligible{color:#bd3434;background:#fff0f0}.review-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.review-field{background:#f7f9fc;border:1px solid #e6ebf1;border-radius:10px;padding:15px}.review-field span{color:#7a879a;margin-bottom:6px;font-size:12px;display:block}.review-field strong{color:#0b1d42}.eligibility-warning{color:#a43131;background:#fff6f6;border:1px solid #f1cccc;border-radius:10px;margin-top:18px;padding:14px 16px;font-size:14px}.review-actions{justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.secondary-button,.danger-button,.confirm-button{cursor:pointer;border:0;border-radius:8px;padding:11px 17px;font-weight:700}.secondary-button{color:#18345f;background:#eef3f9}.danger-button{color:#b73838;background:#fff0f0}.confirm-button{color:#fff;background:#46b52f}@media (width<=900px){.review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.review-header{flex-direction:column}.review-grid{grid-template-columns:1fr}.review-actions{flex-direction:column}}.success-message{background:#eef9f1;border:1px solid #b7e4c7;border-radius:10px;margin-bottom:20px;padding:14px 18px;font-weight:600}.registered-players-section{margin-top:32px}.section-header{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.section-header h2{margin:4px 0 0}.players-count{background:#f1f3f5;border-radius:20px;justify-content:center;align-items:center;min-width:38px;height:38px;padding:0 12px;font-weight:700;display:flex}.registered-players-list{gap:12px;display:grid}.registered-player-card{background:#fff;border:1px solid #e4e7eb;border-radius:12px;padding:18px}.registered-player-main{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.registered-player-main strong{font-size:16px;display:block}.registered-player-main span{opacity:.7;margin-top:4px;font-size:13px;display:block}.registered-player-details{border-top:1px solid #eef0f2;gap:24px;margin-top:14px;padding-top:12px;font-size:13px;display:flex}.player-status{border-radius:20px;padding:6px 10px;font-size:12px;font-weight:700}.player-status.active{background:#eef9f1}.player-status.inactive{background:#f4f4f4}.empty-players{text-align:center;opacity:.7;border:1px dashed #d8dce1;border-radius:12px;padding:24px}.player-status.pending{color:#a66b00;background:#fff7df}.player-completion{border-top:1px solid #eef0f2;margin-top:14px;padding-top:14px}.completion-item{margin-bottom:7px;font-size:13px;font-weight:600}.completion-item.complete{color:#329326}.completion-item.pending{color:#a66b00}.photo-actions{gap:10px;margin-top:14px;display:flex}.eligibility.playing-up{color:#a66b00;background:#fff7df}.eligibility-playing-up-warning{color:#805900;background:#fffaf0;border:1px solid #f1d79a;border-radius:8px;margin-top:14px;padding:12px 14px;font-size:14px}.teams-navigation{flex-direction:column;gap:4px;margin:4px 0 8px;display:flex}.teams-navigation-title{text-transform:uppercase;letter-spacing:.08em;opacity:.55;padding:10px 16px 6px;font-size:12px;font-weight:700}.team-nav-button{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:10px 16px 10px 28px;font-size:14px;transition:background .15s,opacity .15s}.team-nav-button:hover{background:#ffffff14}.team-nav-button.active{background:#ffffff24;font-weight:700}.home-view{width:100%}.home-teams{margin-top:32px}.home-teams>h3{color:#172033;margin:0 0 18px;font-size:18px;font-weight:700}.home-team-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:18px;display:grid}.home-team-card{color:#172033;text-align:left;cursor:pointer;background:#fff;border:1px solid #e4e8ef;border-radius:16px;flex-direction:column;align-items:stretch;min-height:210px;padding:88px 24px 22px;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex;position:relative;box-shadow:0 4px 14px #0f172a0d}.home-team-card:before{content:"⚽";background:#f1f5f9;border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;font-size:21px;display:flex;position:absolute;top:20px;left:22px}.home-team-card:after{content:"→";color:#94a3b8;font-size:21px;font-weight:700;transition:transform .18s,color .18s;position:absolute;top:26px;right:22px}.home-team-card-main{flex-direction:column;align-items:flex-start;display:flex}.home-team-card-main>strong{color:#172033;margin:0;font-size:23px;font-weight:800;line-height:1.1;display:block}.home-team-card-main>span{color:#64748b;margin-top:6px;font-size:13px;font-weight:500;display:block}.home-team-manager{margin-top:18px}.home-team-manager-label{letter-spacing:.05em;text-transform:uppercase;display:block;color:#94a3b8!important;margin:0 0 5px!important;font-size:10px!important;font-weight:800!important}.home-team-manager-name{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.home-team-manager-name>strong{color:#172033;margin:0;font-size:15px;font-weight:800;line-height:1.2;display:block}.home-team-manager-role{letter-spacing:.03em;text-transform:uppercase;background:#eef9df;border-radius:999px;align-items:center;width:fit-content;padding:3px 7px;line-height:1;color:#4c8f13!important;margin:0!important;font-size:9px!important;font-weight:800!important;display:inline-flex!important}.home-team-player-count{color:#64748b;align-items:center;gap:5px;margin-top:auto;padding-top:20px;display:flex}.home-team-player-count>span{color:#64748b;margin:0;font-size:12px;font-weight:500;display:inline}.home-team-player-count>span:first-child{font-size:14px}.home-team-player-count>strong{color:#172033;margin:0;font-size:13px;font-weight:800;line-height:normal;display:inline}.home-team-card:hover{border-color:#cbd5e1;transform:translateY(-3px);box-shadow:0 12px 28px #0f172a1a}.home-team-card:hover:after{color:#334155;transform:translate(4px)}.home-team-card:active{transform:translateY(-1px)}@media (width<=900px){.home-team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.home-team-grid{grid-template-columns:1fr}.home-team-card{min-height:200px}}.players-view{width:100%}.club-players-list{flex-direction:column;gap:12px;margin-top:24px;display:flex}.club-player-card{background:#fff;border:1px solid #e5e9f0;border-radius:14px;grid-template-columns:minmax(260px,1.5fr) minmax(170px,.8fr) auto;align-items:center;gap:24px;padding:20px 22px;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid;box-shadow:0 3px 12px #0f172a0a}.club-player-card:hover{border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 8px 20px #0f172a12}.club-player-card strong{color:#172033;font-size:16px;font-weight:750;display:block}.club-player-card span{color:#64748b;font-size:13px}.player-categories{flex-wrap:wrap;gap:6px;margin:8px 0 5px;display:flex}.player-category-badge{background:#eef2ff;border-radius:999px;align-items:center;padding:4px 9px;font-weight:700;display:inline-flex;color:#4338ca!important;font-size:11px!important}.player-photo-status{text-align:center;border-radius:999px;min-width:125px;padding:7px 10px;font-size:12px;font-weight:700}.player-photo-status.available{color:#15803d;background:#ecfdf3}.player-photo-status.missing{color:#c2410c;background:#fff7ed}@media (width<=800px){.club-player-card{grid-template-columns:1fr;gap:10px}.player-photo-status{width:fit-content}}.club-player-identity{align-items:center;gap:16px;min-width:0;display:flex}.club-player-photo{color:#475569;background:#f1f5f9;border:2px solid #e5e9f0;border-radius:50%;flex:0 0 58px;justify-content:center;align-items:center;width:58px;height:58px;font-size:16px;font-weight:800;display:flex;overflow:hidden}.club-player-info{min-width:0}.player-card-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.player-photo-button{color:#0b2a55;cursor:pointer;background:#fff;border:1px solid #dbe3ed;border-radius:8px;justify-content:center;align-items:center;min-height:32px;padding:7px 13px;font-size:12px;font-weight:700;transition:background .15s,border-color .15s;display:inline-flex}.player-photo-button:hover{background:#f8fafc;border-color:#b8c5d6}@media (width<=800px){.player-card-actions{justify-content:flex-start}}.player-documents-button{color:#fff;cursor:pointer;background:#0b2a55;border:1px solid #dbe3ed;border-radius:8px;min-height:32px;padding:7px 13px;font-size:12px;font-weight:700}.player-documents-button:hover{background:#123b70}.player-documents-button:disabled{opacity:.55;cursor:wait}.player-documents-panel{background:#fff;border:1px solid #e5e9f0;border-radius:16px;margin-top:24px;padding:24px;box-shadow:0 8px 24px #0f172a0f}.player-documents-header{border-bottom:1px solid #eef2f6;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:16px;padding-bottom:18px;display:flex}.player-documents-header h3{color:#172033;margin:4px 0}.player-documents-header p{color:#64748b;margin:0;font-size:13px}.documents-close-button{color:#475569;cursor:pointer;background:#f1f5f9;border:0;border-radius:8px;width:34px;height:34px;font-size:22px}.player-documents-list{flex-direction:column;gap:10px;display:flex}.player-document-row{border:1px solid #e8edf3;border-radius:10px;align-items:center;gap:14px;padding:14px;display:flex}.player-document-icon{color:#4338ca;background:#eef2ff;border-radius:9px;flex:0 0 44px;justify-content:center;align-items:center;width:44px;height:44px;font-size:10px;font-weight:800;display:flex}.player-document-info{flex:1;min-width:0}.player-document-info strong{text-overflow:ellipsis;white-space:nowrap;color:#172033;font-size:14px;display:block;overflow:hidden}.player-document-info span{color:#64748b;font-size:12px}.empty-player-documents{color:#64748b;text-align:center;background:#f8fafc;border-radius:10px;padding:24px;font-size:13px}.login-page{background:linear-gradient(135deg,#071d3b 0%,#0b2a55 55%,#123b70 100%);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{background:#fff;border-radius:18px;width:100%;max-width:430px;padding:36px;box-shadow:0 24px 70px #00000040}.login-brand{align-items:center;gap:12px;margin-bottom:34px;display:flex}.login-brand h1{color:#0b2a55;margin:0;font-size:22px}.login-brand span{color:#64748b;font-size:12px}.login-heading h2{color:#172033;margin:0 0 8px;font-size:26px}.login-heading p{color:#64748b;margin:0 0 28px;font-size:14px;line-height:1.5}.login-form{flex-direction:column;gap:18px;display:flex}.login-form label{color:#334155;flex-direction:column;gap:7px;font-size:13px;font-weight:700;display:flex}.login-form input{box-sizing:border-box;width:100%;font:inherit;border:1px solid #d7dee8;border-radius:9px;outline:none;padding:12px 13px}.login-form input:focus{border-color:#0b2a55;box-shadow:0 0 0 3px #0b2a551a}.login-button{color:#fff;cursor:pointer;background:#0b2a55;border:0;border-radius:9px;margin-top:6px;padding:13px;font-size:14px;font-weight:800}.login-button:hover{background:#123b70}.login-button:disabled{opacity:.65;cursor:wait}.login-error{color:#b91c1c;background:#fef2f2;border-radius:8px;padding:11px 12px;font-size:12px}.logout-button{cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-left:12px;padding:8px 14px;font-size:13px;font-weight:600}.logout-button:hover{background:#f3f4f6}.registration-card{width:min(720px,100vw - 32px);max-width:720px}.registration-form{gap:22px}.registration-section{flex-direction:column;gap:14px;display:flex}.registration-section h3{color:#111827;margin:0;font-size:16px;font-weight:700}.registration-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.section-help,.registration-help,.registration-entry-help{color:#6b7280;margin:0;font-size:13px;line-height:1.5}.category-selector{flex-direction:column;gap:10px;display:flex}.category-option{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:14px}.category-option.selected{background:#f0fdf4;border-color:#16a34a}.category-check{cursor:pointer;align-items:center;gap:10px;display:flex}.category-check input{width:auto}.category-check span{color:#6b7280;margin-left:auto;font-size:13px}.coach-field{margin-top:12px}.coach-field span{color:#6b7280;font-weight:400}.registration-entry,.registration-back{cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:8px;width:100%;padding:11px 14px;font-weight:600}.registration-entry:hover,.registration-back:hover{background:#f9fafb}.login-divider{color:#9ca3af;align-items:center;gap:12px;font-size:12px;display:flex}.login-divider:before,.login-divider:after{content:"";background:#e5e7eb;flex:1;height:1px}.registration-entry-help,.registration-success{text-align:center}.success-icon{color:#15803d;background:#dcfce7;border-radius:50%;justify-content:center;align-items:center;width:58px;height:58px;margin:0 auto 20px;font-size:28px;font-weight:800;display:flex}.registration-status{background:#f9fafb;border-radius:10px;justify-content:space-between;align-items:center;margin:22px 0;padding:14px;display:flex}.registration-status span{color:#6b7280}.registration-status strong{color:#b45309}.registration-loading{text-align:center;color:#6b7280;padding:18px}@media (width<=640px){.registration-grid{grid-template-columns:1fr}.registration-card{width:calc(100vw - 20px)}}.admin-requests-view{flex-direction:column;gap:22px;display:flex}.admin-tabs{flex-wrap:wrap;gap:10px;display:flex}.admin-tab{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:10px;align-items:center;gap:9px;padding:10px 16px;font-weight:600;display:flex}.admin-tab span{background:#f1f5f9;border-radius:12px;justify-content:center;align-items:center;min-width:24px;height:24px;padding:0 7px;font-size:12px;display:inline-flex}.admin-tab.active{border-color:#1f6f54}.admin-tab.active span{color:#fff;background:#1f6f54}.admin-request-list{flex-direction:column;gap:12px;display:flex}.admin-request-card{text-align:left;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:14px;grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) auto;align-items:center;gap:20px;width:100%;padding:18px 20px;display:grid}.admin-request-card:hover{border-color:#94a3b8}.admin-request-main{flex-direction:column;gap:4px;display:flex}.admin-request-main strong{font-size:16px}.admin-request-main span{color:#64748b;font-size:13px}.admin-request-categories{flex-wrap:wrap;gap:6px;display:flex}.admin-request-categories span{background:#f1f5f9;border-radius:20px;padding:5px 10px;font-size:12px;font-weight:600}.admin-status{border-radius:20px;padding:6px 11px;font-size:12px;font-weight:700}.admin-status.pending{color:#9a3412;background:#fff7ed}.admin-status.approved{color:#166534;background:#ecfdf5}.admin-status.rejected{color:#991b1b;background:#fef2f2}.admin-request-detail{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:24px}.admin-detail-header{justify-content:space-between;align-items:flex-start;margin-bottom:24px;display:flex}.admin-detail-header h2{margin:4px 0 0}.admin-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.admin-detail-grid>div{border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;gap:4px;padding:13px;display:flex}.admin-detail-grid span{color:#64748b;font-size:12px}.admin-categories-detail{margin-top:24px}.admin-category-row{border-bottom:1px solid #e2e8f0;justify-content:space-between;padding:12px 0;display:flex}.admin-category-row span{color:#64748b}.admin-detail-actions{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.admin-detail-actions .login-button{width:auto}.admin-empty{text-align:center;color:#64748b;background:#fff;border:1px dashed #cbd5e1;border-radius:14px;padding:35px}.admin-error,.admin-rejection-reason{color:#991b1b;background:#fef2f2;border-radius:10px;padding:14px}.admin-rejection-reason{margin-top:20px}.admin-rejection-reason p{margin-bottom:0}@media (width<=900px){.admin-request-card,.admin-detail-grid{grid-template-columns:1fr}}.admin-clubs-page{width:100%}.admin-clubs-header{justify-content:space-between;align-items:flex-start;gap:32px;margin-bottom:28px;display:flex}.admin-page-eyebrow{color:#46a934;letter-spacing:.08em;text-transform:uppercase;margin-bottom:7px;font-size:12px;font-weight:800;display:block}.admin-clubs-header h1{color:#0b1d42;margin:0;font-size:34px;line-height:1.15}.admin-clubs-header p{color:#64748b;max-width:650px;margin:9px 0 0;font-size:15px;line-height:1.55}.admin-clubs-summary{background:#fff;border:1px solid #e2e8f0;border-radius:14px;flex:none;display:flex;overflow:hidden;box-shadow:0 4px 14px #0f172a0a}.admin-clubs-summary>div{text-align:center;min-width:105px;padding:15px 22px}.admin-clubs-summary>div+div{border-left:1px solid #e8edf3}.admin-clubs-summary strong{color:#0b2a55;font-size:22px;line-height:1;display:block}.admin-clubs-summary span{color:#718096;text-transform:uppercase;letter-spacing:.04em;margin-top:6px;font-size:11px;font-weight:700;display:block}.admin-clubs-toolbar{background:#fff;border:1px solid #e2e8f0;border-radius:14px;align-items:center;gap:16px;padding:16px;display:flex;box-shadow:0 3px 12px #0f172a09}.admin-clubs-search-wrapper{flex:1;min-width:260px;position:relative}.admin-clubs-search-icon{color:#94a3b8;pointer-events:none;font-size:20px;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.admin-clubs-search{color:#172033;background:#f8fafc;border:1px solid #dce3ec;border-radius:10px;outline:none;width:100%;height:44px;padding:0 42px;font-size:14px;transition:border-color .15s,box-shadow .15s,background .15s}.admin-clubs-search:focus{background:#fff;border-color:#46b52f;box-shadow:0 0 0 3px #46b52f1a}.admin-clubs-clear{color:#64748b;cursor:pointer;background:#e9eef5;border:0;border-radius:50%;width:27px;height:27px;font-size:18px;line-height:1;position:absolute;top:50%;right:11px;transform:translateY(-50%)}.admin-category-filters{flex-wrap:wrap;gap:7px;display:flex}.admin-category-filter{color:#52637a;cursor:pointer;background:#fff;border:1px solid #e1e7ef;border-radius:9px;height:38px;padding:0 14px;font-size:13px;font-weight:700;transition:background .15s,border-color .15s,color .15s}.admin-category-filter:hover{background:#f8fafc;border-color:#b8c5d6}.admin-category-filter.active{color:#fff;background:#0b2a55;border-color:#0b2a55}.admin-results-info{color:#718096;justify-content:space-between;align-items:center;padding:14px 3px 12px;font-size:13px;display:flex}.admin-results-info strong{color:#334155}.admin-clubs-list{flex-direction:column;gap:18px;display:flex}.admin-club-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:24px;transition:border-color .18s,box-shadow .18s;overflow:hidden;box-shadow:0 4px 16px #0f172a0b}.admin-club-card:hover{border-color:#cbd5e1;box-shadow:0 9px 25px #0f172a12}.admin-club-heading{align-items:center;gap:18px;display:flex}.admin-club-logo{color:#fff;letter-spacing:.04em;background:linear-gradient(135deg,#0b2a55,#123b70);border:1px solid #dce5ef;border-radius:16px;flex:0 0 64px;place-items:center;width:64px;height:64px;font-size:20px;font-weight:800;display:grid;overflow:hidden}.admin-club-logo img{object-fit:cover;width:100%;height:100%;display:block}.admin-club-identity{flex:1;min-width:0}.admin-club-title-row{align-items:center;gap:12px;display:flex}.admin-club-title-row h2{color:#172033;margin:0;font-size:21px;line-height:1.2}.admin-club-team-count{color:#368c29;background:#eef7eb;border-radius:999px;align-items:center;padding:5px 9px;font-size:11px;font-weight:800;display:inline-flex}.admin-club-manager{color:#64748b;flex-wrap:wrap;align-items:center;gap:5px 12px;margin-top:8px;font-size:13px;display:flex}.admin-club-manager strong{color:#475569;font-weight:700}.admin-club-manager span+span{border-left:1px solid #dce2ea;padding-left:12px}.admin-club-divider{background:#edf1f5;height:1px;margin:20px 0}.admin-club-teams-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:13px;display:grid}.admin-team-card{background:#f9fbfd;border:1px solid #e4e9f0;border-radius:13px;flex-direction:column;min-height:155px;padding:17px;transition:transform .15s,border-color .15s,box-shadow .15s,background .15s;display:flex}.admin-team-card:hover{background:#fff;border-color:#c8d3df;transform:translateY(-2px);box-shadow:0 8px 18px #0f172a12}.admin-team-card-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.admin-team-category{color:#0b2a55;font-size:21px;font-weight:850}.admin-team-status{color:#64748b;text-transform:uppercase;background:#eef2f6;border-radius:999px;align-items:center;padding:5px 8px;font-size:10px;font-weight:800;display:inline-flex}.admin-team-status.draft{color:#b45309;background:#fff7ed}.admin-team-status.approved{color:#15803d;background:#ecfdf3}.admin-team-status.submitted,.admin-team-status.pending{color:#1d4ed8;background:#eff6ff}.admin-team-tournament{margin:15px 0 17px}.admin-team-tournament span{color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px;font-size:10px;font-weight:700;display:block}.admin-team-tournament strong{color:#475569;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:650;display:block;overflow:hidden}.admin-team-enter{color:#0b2a55;cursor:pointer;background:#fff;border:1px solid #d8e1eb;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;width:100%;min-height:36px;margin-top:auto;padding:0 12px;font-size:12px;font-weight:750;transition:background .15s,color .15s,border-color .15s;display:flex}.admin-team-enter strong{font-size:17px;transition:transform .15s}.admin-team-enter:hover{color:#fff;background:#0b2a55;border-color:#0b2a55}.admin-team-enter:hover strong{transform:translate(3px)}.admin-clubs-state,.admin-clubs-empty{color:#64748b;text-align:center;background:#fff;border:1px dashed #ccd6e2;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;min-height:260px;padding:35px;display:flex}.admin-clubs-state strong{color:#172033;margin-top:14px}.admin-clubs-state span{margin-top:5px;font-size:13px}.admin-clubs-loader{border:3px solid #e4e9ef;border-top-color:#46b52f;border-radius:50%;width:34px;height:34px;animation:.7s linear infinite admin-clubs-spin}@keyframes admin-clubs-spin{to{transform:rotate(360deg)}}.admin-clubs-empty-icon{background:#eef7eb;border-radius:50%;place-items:center;width:60px;height:60px;margin-bottom:13px;font-size:27px;display:grid}.admin-clubs-empty h3{color:#172033;margin:0}.admin-clubs-empty p{margin:7px 0 18px}.admin-clubs-empty button{color:#fff;cursor:pointer;background:#0b2a55;border:0;border-radius:8px;padding:10px 16px;font-weight:700}.admin-clubs-error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:12px;flex-direction:column;gap:5px;padding:18px;display:flex}@media (width<=1000px){.admin-clubs-toolbar{flex-direction:column;align-items:stretch}.admin-clubs-search-wrapper{min-width:0}}@media (width<=700px){.admin-clubs-header{flex-direction:column}.admin-clubs-summary{width:100%}.admin-clubs-summary>div{flex:1}.admin-club-heading{align-items:flex-start}.admin-club-title-row{flex-direction:column;align-items:flex-start;gap:7px}.admin-club-manager{flex-direction:column;align-items:flex-start}.admin-club-manager span+span{border-left:0;padding-left:0}.admin-results-info{flex-direction:column;align-items:flex-start;gap:4px}.admin-club-teams-grid{grid-template-columns:1fr}}@media (width<=480px){.admin-club-card{padding:18px}.admin-club-logo{border-radius:13px;flex-basis:54px;width:54px;height:54px;font-size:17px}.admin-category-filters{width:100%}.admin-category-filter{flex:1}}.support-mode-banner{background:linear-gradient(135deg,#eff6ff,#f8fbff);border:1px solid #bfdbfe;border-radius:14px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px;padding:15px 18px;display:flex;box-shadow:0 3px 12px #0f172a0a}.support-mode-info{align-items:center;gap:13px;display:flex}.support-mode-icon{color:#fff;background:#0b2a55;border-radius:11px;flex:0 0 42px;place-items:center;width:42px;height:42px;font-size:19px;display:grid}.support-mode-label{color:#2563eb;letter-spacing:.08em;text-transform:uppercase;margin-bottom:3px;font-size:10px;font-weight:850;display:block}.support-mode-team{color:#172033;align-items:center;gap:7px;font-size:15px;display:flex}.support-mode-team span{color:#94a3b8}.support-mode-tournament{color:#64748b;margin-top:3px;font-size:11px;display:block}.support-mode-exit{color:#475569;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;min-height:38px;padding:0 14px;font-size:12px;font-weight:750;transition:border-color .15s,color .15s,background .15s}.support-mode-exit:hover{color:#fff;background:#0b2a55;border-color:#0b2a55}@media (width<=650px){.support-mode-banner{flex-direction:column;align-items:stretch}.support-mode-exit{width:100%}}.support-navigation{flex-direction:column;gap:5px;display:flex}.support-navigation-context{background:#ffffff12;border:1px solid #ffffff1f;border-radius:9px;flex-direction:column;gap:2px;margin:2px 0 5px;padding:10px 12px;display:flex}.support-navigation-context strong{color:#fff;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:750;overflow:hidden}.support-navigation-context span{color:#9fcaef;font-size:11px;font-weight:650}.admin-registration-heading h2{color:#0f172a;margin:4px 0 6px;font-size:22px;font-weight:800}.admin-registration-tournaments{gap:12px;display:grid}.admin-registration-tournament{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;justify-content:space-between;align-items:center;gap:20px;padding:16px 18px;display:flex}.admin-registration-tournament>div{flex-direction:column;gap:4px;display:flex}.admin-registration-tournament strong{color:#0f172a;font-size:15px;font-weight:800}.admin-registration-tournament span{color:#64748b;font-size:13px;font-weight:600}.admin-registration-tournament button{color:#fff;cursor:pointer;background:#0f172a;border:0;border-radius:10px;min-width:190px;padding:10px 16px;font-size:13px;font-weight:800;transition:transform .15s,box-shadow .15s,opacity .15s}.admin-registration-tournament button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 16px #0f172a29}.admin-registration-tournament button:disabled{opacity:.55;cursor:not-allowed}.admin-team-registration{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:8px;margin-top:14px;padding:12px;display:flex}.admin-team-registration-state{justify-content:space-between;align-items:center;gap:10px;display:flex}.admin-team-registration-state span{color:#64748b;text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:700}.admin-team-registration-state strong{color:#0f172a;font-size:13px;font-weight:800}.admin-team-registration label{color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin-top:4px;font-size:11px;font-weight:800}.admin-team-registration select{color:#0f172a;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:9px;outline:none;width:100%;padding:9px 10px;font-size:13px;font-weight:600;transition:border-color .15s,box-shadow .15s}.admin-team-registration select:hover:not(:disabled){border-color:#94a3b8}.admin-team-registration select:focus{border-color:#64748b;box-shadow:0 0 0 3px #64748b1f}.admin-team-registration select:disabled{opacity:.6;cursor:wait}.admin-team-registration small{color:#9a3412;background:#fff7ed;border:1px solid #fed7aa;border-radius:7px;padding:6px 8px;font-size:11px;font-weight:700;line-height:1.35;display:block}@media (width<=720px){.admin-registration-controls{padding:18px}.admin-registration-tournament{flex-direction:column;align-items:stretch;gap:12px}.admin-registration-tournament button{width:100%;min-width:0}.admin-team-registration-state{flex-direction:column;align-items:flex-start;gap:4px}}.staff-card{background:#f8fafc;border:1px solid #dfe5ed;border-radius:14px;flex-direction:column;gap:16px;padding:20px;display:flex;box-shadow:0 3px 12px #0f172a0a}.staff-card+.staff-card{margin-top:4px}.staff-card .registration-grid{margin:0}.staff-categories{background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;gap:10px;padding:15px 16px;display:flex}.staff-categories>strong{color:#172033;margin-bottom:2px;font-size:13px;font-weight:800;display:block}.login-form .staff-categories label{color:#475569;cursor:pointer;border-radius:8px;flex-direction:row;align-items:center;gap:10px;padding:8px 10px;font-size:13px;font-weight:600;transition:background .15s,color .15s;display:flex}.login-form .staff-categories label:hover{color:#172033;background:#f1f5f9}.login-form .staff-categories input[type=checkbox]{accent-color:#16a34a;cursor:pointer;flex:0 0 17px;width:17px;height:17px;margin:0;padding:0}.login-form .staff-categories label:first-of-type{color:#0b2a55;border-bottom:1px solid #e5e7eb;margin-bottom:3px;padding-bottom:11px;font-weight:800}.staff-card>.registration-back{color:#b91c1c;background:#fff;border-color:#fecaca;align-self:flex-end;width:auto;padding:8px 13px;font-size:12px}.staff-card>.registration-back:hover{background:#fef2f2;border-color:#fca5a5}.registration-section>.registration-back{transition:background .15s,border-color .15s,color .15s}.registration-section>.registration-back:disabled{color:#94a3b8;cursor:not-allowed;opacity:.75;background:#f8fafc}.registration-form>.registration-section{border-bottom:1px solid #eef2f6;padding-bottom:22px}.registration-form>.registration-section:last-of-type{border-bottom:0}.login-form .category-check{flex-direction:row}.login-form .category-check input[type=checkbox]{accent-color:#16a34a;flex:0 0 17px;width:17px;height:17px;margin:0;padding:0}@media (width<=640px){.staff-card{padding:16px}.staff-card>.registration-back{align-self:stretch;width:100%}.staff-categories{padding:12px}}.admin-staff-row{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;gap:24px;padding:16px 0;display:flex}.admin-staff-row:last-child{border-bottom:0}.admin-staff-info{flex-direction:column;gap:4px;min-width:220px;display:flex}.admin-staff-info strong{color:#172033;font-size:15px}.admin-staff-info span{color:#64748b;font-size:13px}.admin-staff-row .admin-request-categories{justify-content:flex-end}@media (width<=650px){.admin-staff-row{flex-direction:column;align-items:flex-start}.admin-staff-row .admin-request-categories{justify-content:flex-start}}.admin-club-manager-role{color:#1d4ed8;letter-spacing:.04em;text-transform:uppercase;background:#eaf2ff;border-radius:999px;align-items:center;font-size:10px;font-weight:800;display:inline-flex;border:0!important;padding:3px 8px!important}.admin-team-card{min-height:0}.admin-team-manager{min-height:64px;margin:13px 0 12px}.admin-team-manager-label{color:#94a3b8;letter-spacing:.05em;text-transform:uppercase;margin-bottom:4px;font-size:10px;font-weight:800;display:block}.admin-team-manager-name{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.admin-team-manager-name strong{color:#334155;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:800;overflow:hidden}.admin-team-manager-role{color:#368c29;letter-spacing:.03em;text-transform:uppercase;background:#eef7eb;border-radius:999px;align-items:center;padding:3px 7px;font-size:9px;font-weight:800;display:inline-flex}.admin-team-manager-email{color:#64748b;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:11px;display:block;overflow:hidden}.admin-team-registration{margin-top:0}@media (width>=1150px){.admin-club-teams-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width>=701px) and (width<=1149px){.admin-club-teams-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.admin-club-teams-grid{grid-template-columns:1fr}.admin-team-manager{min-height:0}}.admin-registration-controls{background:#fff;border:1px solid #e2e8f0;border-radius:16px;margin-bottom:24px;padding:26px;box-shadow:0 4px 14px #0f172a0a}.admin-registration-heading{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;display:flex}.admin-registration-heading h2{color:#0b1d42;margin:0;font-size:24px;line-height:1.2}.admin-registration-heading p{color:#64748b;margin:7px 0 0;font-size:14px;line-height:1.5}.admin-registration-controls label{color:#334155;flex-direction:column;gap:7px;min-width:0;font-size:13px;font-weight:700;display:flex}.admin-registration-controls label>span{color:#52637a;font-size:12px;font-weight:700;display:block}.admin-registration-controls input,.admin-registration-controls select{color:#172033;width:100%;height:44px;font:inherit;background:#f8fafc;border:1px solid #dce3ec;border-radius:10px;outline:none;padding:0 13px;font-size:14px;transition:border-color .15s,box-shadow .15s,background .15s}.admin-registration-controls input:hover,.admin-registration-controls select:hover{border-color:#c4cfdd}.admin-registration-controls input:focus,.admin-registration-controls select:focus{background:#fff;border-color:#46b52f;box-shadow:0 0 0 3px #46b52f1a}.admin-registration-controls input::placeholder{color:#94a3b8}.admin-registration-controls select:disabled,.admin-registration-controls input:disabled{color:#94a3b8;cursor:not-allowed;background:#f1f5f9}.admin-registration-controls input[type=date],.admin-registration-controls input[type=time]{cursor:pointer;min-width:0}.admin-registration-controls button{color:#334155;min-height:42px;font:inherit;cursor:pointer;background:#fff;border:1px solid #d8e0ea;border-radius:9px;padding:0 18px;font-size:13px;font-weight:700;transition:background .15s,border-color .15s,transform .15s}.admin-registration-controls button:hover:not(:disabled){background:#f8fafc;border-color:#b8c5d6}.admin-registration-controls button:active:not(:disabled){transform:translateY(1px)}.admin-registration-controls button:disabled{opacity:.6;cursor:not-allowed}.admin-registration-controls .admin-team-enter{color:#fff;background:#0b2a55;border-color:#0b2a55}.admin-registration-controls .admin-team-enter:hover:not(:disabled){background:#123b70;border-color:#123b70}.admin-clubs-summary>.admin-team-enter{color:#0b2a55;cursor:pointer;background:#fff;border:0;border-left:1px solid #e8edf3;border-radius:0;align-self:stretch;min-width:145px;padding:0 20px;font-size:13px;font-weight:800;transition:background .15s,color .15s}.admin-clubs-summary>.admin-team-enter:hover{color:#fff;background:#0b2a55}.admin-clubs-empty{text-align:center;background:#fff;border:1px dashed #cbd5e1;border-radius:16px;min-height:260px;padding:42px 24px}.admin-clubs-empty-icon{background:#eff9e9;border-radius:50%;place-items:center;width:58px;height:58px;margin:0 auto 15px;font-size:25px;display:grid}.admin-clubs-empty h3{color:#172033;margin:0;font-size:19px}.admin-clubs-empty p{color:#718096;margin:8px 0 18px;font-size:14px}.admin-clubs-empty>button{color:#fff;cursor:pointer;background:#0b2a55;border:0;border-radius:9px;min-height:42px;padding:0 18px;font-size:13px;font-weight:800}.admin-clubs-empty>button:hover{background:#123b70}@media (width<=900px){.admin-registration-controls{padding:22px}.admin-clubs-header{flex-direction:column}.admin-clubs-summary{width:100%}.admin-clubs-summary>div,.admin-clubs-summary>.admin-team-enter{flex:1}}@media (width<=600px){.admin-registration-controls{padding:18px}.admin-registration-heading,.admin-clubs-summary{flex-direction:column}.admin-clubs-summary>.admin-team-enter{border-top:1px solid #e8edf3;border-left:0;min-height:46px}}.roster-page{width:100%}.roster-page-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:28px;display:flex}.roster-page-header h2{color:#0b1d42;margin:3px 0 0;font-size:34px}.roster-page-header .subtitle{margin:8px 0 0}.roster-count{text-align:center;background:#fff;border:1px solid #e2e8f0;border-radius:14px;min-width:82px;padding:13px 17px;box-shadow:0 4px 14px #0f172a0a}.roster-count strong{color:#0b2a55;font-size:23px}.roster-count span{color:#718096;font-size:13px;font-weight:600}.roster-toolbar{background:#fff;border:1px solid #e2e8f0;border-radius:14px;justify-content:space-between;align-items:center;gap:24px;margin-bottom:18px;padding:18px 20px;display:flex}.roster-toolbar>div:first-child>strong{color:#172033;font-size:15px;display:block}.roster-toolbar p{color:#64748b;margin:5px 0 0;font-size:13px}.roster-toolbar-actions{flex:none;gap:8px;display:flex}.roster-player-list{flex-direction:column;gap:14px;display:flex}.roster-player-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;grid-template-columns:112px minmax(280px,1fr) 190px;align-items:center;gap:22px;min-height:150px;padding:20px;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid;position:relative;box-shadow:0 4px 14px #0f172a0a}.roster-player-card:hover{border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 8px 22px #0f172a12}.roster-player-card.selected{background:#fbfef9;border-color:#8fd17d;box-shadow:0 0 0 2px #46b52f14,0 6px 18px #0f172a0d}.roster-select-box{color:#64748b;cursor:pointer;align-items:center;gap:6px;font-size:11px;font-weight:700;display:flex;position:absolute;top:13px;right:15px}.roster-select-box input{accent-color:#46b52f;width:17px;height:17px}.roster-player-photo{color:#64748b;background:#eef2f7;border:1px solid #dce3ec;border-radius:13px;justify-content:center;align-items:center;width:112px;height:128px;font-size:28px;font-weight:800;display:flex;overflow:hidden}.roster-player-photo img{object-fit:cover;width:100%;height:100%;display:block}.roster-player-info{min-width:0}.roster-player-name{color:#0b1d42;margin-bottom:13px;padding-right:90px;font-size:19px;font-weight:800;display:block}.roster-player-meta{align-items:center;gap:8px;margin-top:5px;font-size:13px;display:flex}.roster-player-meta span{color:#7a879a;min-width:78px}.roster-player-meta strong{color:#334155;font-weight:700}.roster-status{color:#64748b;background:#f1f5f9;border-radius:999px;margin-top:13px;padding:6px 10px;font-size:11px;font-weight:800;display:inline-flex}.roster-status.selected{color:#15803d;background:#ecfdf3}.roster-jersey{flex-direction:column;align-items:stretch;gap:8px;display:flex}.roster-jersey label{color:#52637a;text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:800}.roster-number-input{color:#0b2a55;text-align:center;background:#f8fafc;border:1px solid #dce3ec;border-radius:11px;outline:none;width:100%;height:64px;font-size:28px;font-weight:800}.roster-number-input:focus{background:#fff;border-color:#46b52f;box-shadow:0 0 0 3px #46b52f1a}.roster-number-input:disabled{color:#a0aec0;cursor:not-allowed;background:#f1f5f9}.roster-number-input.error{background:#fff7f7;border-color:#dc2626}.roster-number-error{color:#b91c1c;font-size:11px;font-weight:700}.roster-footer{background:#fff;border:1px solid #e2e8f0;border-radius:14px;margin-top:22px;padding:20px}.roster-summary{color:#64748b;justify-content:space-between;align-items:center;gap:20px;margin-bottom:14px;font-size:13px;display:flex}.roster-summary strong{color:#0b2a55;font-size:18px}.roster-summary-warning{color:#a66b00;font-weight:700}.roster-submit{margin-top:0}.roster-submit:disabled{color:#64748b;opacity:1;background:#cbd5e1}@media (width<=800px){.roster-player-card{grid-template-columns:96px minmax(0,1fr)}.roster-player-photo{width:96px;height:112px}.roster-jersey{grid-column:1/-1}.roster-number-input{max-width:160px}}@media (width<=600px){.roster-page-header,.roster-toolbar{flex-direction:column;align-items:stretch}.roster-count{width:fit-content}.roster-toolbar-actions{width:100%}.roster-toolbar-actions button{flex:1}.roster-player-card{grid-template-columns:1fr;padding-top:48px}.roster-player-photo{width:120px;height:140px}.roster-player-name{padding-right:0}.roster-summary{flex-direction:column;align-items:flex-start}}button.roster-player-photo{appearance:none;font:inherit;padding:0;position:relative}button.roster-player-photo.clickable{cursor:zoom-in}button.roster-player-photo.clickable:hover{border-color:#46b52f;box-shadow:0 0 0 3px #46b52f1f}.roster-photo-zoom{color:#fff;opacity:0;background:#0b2a55e6;border-radius:6px;padding:4px 7px;font-size:10px;font-weight:800;transition:opacity .15s;position:absolute;bottom:7px;right:7px}.roster-player-photo.clickable:hover .roster-photo-zoom{opacity:1}.roster-photo-initials{color:#64748b;font-size:28px;font-weight:800}.roster-photo-modal{z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);cursor:zoom-out;background:#050f1ee6;justify-content:center;align-items:center;padding:30px;display:flex;position:fixed;inset:0}.roster-photo-modal-content{cursor:default;background:#fff;border-radius:18px;width:min(560px,100vw - 40px);max-height:calc(100vh - 50px);position:relative;overflow:hidden;box-shadow:0 24px 70px #00000073}.roster-photo-modal-content img{object-fit:contain;background:#111827;width:100%;max-height:calc(100vh - 140px);display:block}.roster-photo-modal-name{color:#0b1d42;text-align:center;padding:16px 20px;font-size:18px;font-weight:800}.roster-photo-modal-close{z-index:2;color:#fff;cursor:pointer;background:#0b1d42e6;border:0;border-radius:50%;place-items:center;width:40px;height:40px;padding:0;font-size:27px;line-height:1;display:grid;position:absolute;top:12px;right:12px;box-shadow:0 3px 10px #00000040}.roster-photo-modal-close:hover{background:#0b1d42}@media (width<=600px){.roster-photo-modal{padding:15px}.roster-photo-modal-content{width:100%}.roster-photo-zoom{opacity:1}}.mobile-menu-button,.mobile-menu-close,.mobile-menu-backdrop{display:none}.mobile-sidebar{flex:none}@media (width<=650px){.mobile-sidebar{z-index:1001;pointer-events:none;width:min(86vw,320px);height:100vh;transition:transform .22s;position:fixed;top:0;left:0;transform:translate(-105%)}.mobile-sidebar-open{pointer-events:auto;transform:translate(0)}.mobile-sidebar .sidebar{width:100%;height:100vh;min-height:100vh;padding-top:70px;display:flex;overflow-y:auto;box-shadow:12px 0 35px #0000003d}.mobile-menu-button{color:#fff;cursor:pointer;background:#0b2a55;border:0;border-radius:9px;flex:none;justify-content:center;align-items:center;gap:7px;min-height:42px;padding:0 12px;display:inline-flex}.mobile-menu-button span{color:#fff;font-size:21px;line-height:1;display:block}.mobile-menu-button strong{color:#fff;font-size:13px;font-weight:750;line-height:1;display:block}.mobile-menu-close{z-index:1003;color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff2e;border-radius:10px;place-items:center;width:40px;height:40px;padding:0;font-size:28px;font-weight:400;line-height:1;display:grid;position:absolute;top:16px;right:16px}.mobile-menu-close:hover{background:#ffffff2e}.mobile-menu-backdrop{z-index:1000;cursor:default;background:#030f238c;border:0;width:100%;height:100%;margin:0;padding:0;display:block;position:fixed;inset:0}.topbar{gap:10px;height:70px;padding:0 14px}.topbar>div:first-of-type{flex:1;min-width:0}.topbar>div:first-of-type strong{white-space:nowrap;font-size:17px}.topbar>div:first-of-type span{display:none}.topbar .user{flex:none;gap:7px}.topbar .user>div:nth-child(2){display:none}.topbar .avatar{flex:0 0 36px;width:36px;height:36px;font-size:13px}.topbar .logout-button{white-space:nowrap;min-height:36px;padding:7px 9px;font-size:11px}.content{padding:20px 14px}.mobile-sidebar .brand{margin-bottom:28px}.mobile-sidebar .navigation,.mobile-sidebar .navigation a,.mobile-sidebar .support-navigation{width:100%}.mobile-sidebar .sidebar-footer{margin-top:auto}}@media (width<=480px){.mobile-sidebar{width:min(88vw,310px)}.topbar{gap:8px;padding-left:10px;padding-right:10px}.mobile-menu-button{padding:0 10px}.mobile-menu-button strong{display:none}.topbar>div:first-of-type strong{font-size:15px}.topbar .logout-button{padding:7px 8px;font-size:10px}.content{padding-left:12px;padding-right:12px}}@media (width<=370px){.topbar>div:first-of-type{display:none}.topbar .user{margin-left:auto}.mobile-menu-button{width:42px;min-width:42px;padding:0}}.team-matches-page{width:100%}.team-matches-header{margin-bottom:24px}.team-matches-header h2{color:#06294a;margin:0;font-size:32px;font-weight:800;line-height:1.1}.team-matches-header p{color:#5f6b76;margin:10px 0 0;font-size:15px}.team-match-list{gap:14px;display:grid}.team-match-card{background:#ffffff6b;border:1px solid #be9d5538;border-radius:18px;justify-content:space-between;align-items:center;gap:24px;width:100%;padding:22px 24px;display:flex;box-shadow:0 8px 24px #14293d09}.team-match-card-main{flex:1;min-width:0}.team-match-card-main>div{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.team-match-card-main>div>strong:first-child{color:#06294a;text-transform:uppercase;letter-spacing:.04em;background:#06294a14;border-radius:999px;align-items:center;padding:5px 9px;font-size:11px;font-weight:800;display:inline-flex}.team-match-card h3{color:#06294a;flex-basis:100%;margin:2px 0 4px;font-size:20px;font-weight:800;line-height:1.25}.team-match-card p{color:#5c6670;margin:0;font-size:14px;line-height:1.45}.team-match-card-main>div>span{color:#39782d;background:#edf7e8;border-radius:999px;align-items:center;padding:5px 10px;font-size:12px;font-weight:700;display:inline-flex}.team-match-actions{flex:none;justify-content:flex-end;align-items:center;display:flex}.team-match-actions .primary-button{white-space:nowrap;border-radius:10px;min-height:42px;padding:0 17px}@media (width<=900px){.team-match-card{flex-direction:column;align-items:flex-start;gap:18px}.team-match-actions{justify-content:flex-start;width:100%}}@media (width<=650px){.team-matches-header{margin-bottom:18px}.team-matches-header h2{font-size:27px}.team-match-card{border-radius:15px;padding:18px}.team-match-card-main>div{display:block}.team-match-card-main>div>strong:first-child{margin-bottom:10px}.team-match-card h3{margin:0 0 12px;font-size:18px}.team-match-card p{margin-top:7px}.team-match-card-main>div>span{margin-top:12px}.team-match-actions,.team-match-actions .primary-button{width:100%}}.team-match-actions .primary-button{appearance:none;color:#fff;cursor:pointer;background:#06294a;border:0;border-radius:10px;justify-content:center;align-items:center;min-height:42px;padding:0 18px;font-family:inherit;font-size:14px;font-weight:700;transition:transform .15s,box-shadow .15s,background .15s;display:inline-flex;box-shadow:0 5px 14px #06294a24}.team-match-actions .primary-button:hover{background:#0b3b68;transform:translateY(-1px);box-shadow:0 7px 18px #06294a33}.team-match-actions .primary-button:active{transform:translateY(0)}@media (width<=650px){.team-match-actions .primary-button{width:100%;min-height:46px}}.registered-player-identity{align-items:center;gap:16px;min-width:0;display:flex}.registered-player-name{flex-direction:column;gap:6px;min-width:0;display:flex}.registered-player-name strong{font-size:1rem}.registered-player-name span{opacity:.7}.registered-player-photo-button{cursor:pointer;background:0 0;border:0;border-radius:14px;width:82px;min-width:82px;height:82px;padding:0;overflow:hidden}.registered-player-photo{object-fit:cover;border-radius:14px;width:82px;height:82px;display:block}.registered-player-photo-placeholder{border-radius:14px;justify-content:center;align-items:center;width:82px;min-width:82px;height:82px;font-size:1rem;font-weight:700;display:flex}.registered-player-photo-status-row{margin-top:12px}.photo-actions{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.player-photo-modal{z-index:5000;background:#000000d1;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.player-photo-modal-content{background:#fff;border-radius:18px;flex-direction:column;align-items:center;gap:10px;width:min(520px,100%);max-height:92vh;padding:18px;display:flex;position:relative}.player-photo-modal-content img{object-fit:contain;border-radius:14px;width:100%;max-width:440px;max-height:70vh;display:block}.player-photo-modal-content strong{text-align:center;font-size:1rem}.player-photo-modal-content span{opacity:.7}.player-photo-modal-close{z-index:2;color:#fff;cursor:pointer;background:#000000b8;border:0;border-radius:50%;width:38px;height:38px;font-size:25px;line-height:1;position:absolute;top:8px;right:10px}@media (width<=650px){.registered-player-main{align-items:flex-start;gap:12px}.registered-player-identity{align-items:center;gap:12px}.registered-player-photo-button,.registered-player-photo,.registered-player-photo-placeholder{width:76px;min-width:76px;height:76px}.photo-actions{width:100%}.photo-actions .secondary-button{text-align:center;flex:auto}.player-photo-modal{padding:12px}.player-photo-modal-content{padding:14px}}.club-player-photo{border-radius:14px;width:82px;min-width:82px;height:82px;position:relative;overflow:hidden}.club-player-photo img{object-fit:cover;width:100%;height:100%;display:block}.club-player-photo-clickable{cursor:pointer;background:0 0;border:0;padding:0}.player-photo-zoom{background:#000000ad;border-radius:50%;justify-content:center;align-items:center;width:25px;height:25px;font-size:12px;display:flex;position:absolute;bottom:5px;right:5px}.player-photo-menu-wrapper{position:relative}.player-photo-menu{z-index:100;background:#fff;border:1px solid #0000001f;border-radius:12px;min-width:175px;padding:6px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 10px 30px #00000029}.player-photo-menu-item{cursor:pointer;white-space:nowrap;border-radius:8px;width:100%;padding:10px 12px;font-weight:600;display:block}.player-photo-menu-item:hover{background:#0000000d}@media (width<=650px){.club-player-photo{width:76px;min-width:76px;height:76px}.player-photo-menu{left:0;right:auto}}.registered-player-photo-button{position:relative}.registered-player-photo-button .player-photo-zoom{position:absolute;bottom:5px;right:5px}.documents-modal{z-index:5100;background:#000000c7;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.documents-modal-content{background:#fff;border-radius:18px;width:min(720px,100%);max-height:88vh;padding:24px;overflow-y:auto;box-shadow:0 24px 70px #00000047}.documents-modal-content .player-documents-header{z-index:2;background:#fff;border-bottom:1px solid #00000014;margin:-24px -24px 18px;padding:24px;position:sticky;top:-24px}.documents-modal-content .documents-close-button{flex-shrink:0}.documents-modal-loading{text-align:center;opacity:.65;padding:35px 20px;font-weight:600}.documents-modal-content .player-documents-list{flex-direction:column;gap:10px;display:flex}.documents-modal-content .player-document-row{border:1px solid #0000001a;border-radius:12px;align-items:center;gap:12px;padding:14px;display:flex}.documents-modal-content .player-document-info{flex:1;min-width:0}@media (width<=650px){.documents-modal{align-items:flex-end;padding:0}.documents-modal-content{border-radius:20px 20px 0 0;width:100%;max-height:88vh;padding:18px}.documents-modal-content .player-documents-header{margin:-18px -18px 14px;padding:18px;top:-18px}.documents-modal-content .player-document-row{flex-wrap:wrap;align-items:flex-start}.documents-modal-content .player-document-info{min-width:150px}.documents-modal-content .player-document-row .secondary-button{text-align:center;width:100%}}.game-day-match-card{cursor:pointer;transition:transform .15s,box-shadow .15s}.game-day-match-card:hover{transform:translateY(-2px)}.game-day-match-card:focus-visible{outline-offset:3px;outline:3px solid #1e5eff40}.game-day-open-hint{white-space:nowrap;opacity:.7;margin-left:auto;font-weight:700}.game-day-page{flex-direction:column;gap:22px;display:flex}.game-day-back{align-self:flex-start}.game-day-header{background:#fff;border-radius:18px;padding:24px;box-shadow:0 8px 28px #0000000f}.game-day-header h1{margin:6px 0 12px}.game-day-meta{flex-wrap:wrap;gap:10px;display:flex}.game-day-meta span{background:#0000000d;border-radius:999px;padding:6px 10px;font-size:.9rem;font-weight:600}.game-day-teams{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.game-day-team-card{background:#fff;border-radius:18px;flex-direction:column;gap:14px;min-height:220px;padding:22px;display:flex;box-shadow:0 8px 28px #0000000f}.game-day-team-card h2{margin:0}.game-day-side{text-transform:uppercase;letter-spacing:.08em;opacity:.55;font-size:.76rem;font-weight:800}.game-day-roster-ready{background:#1f9d551a;border-radius:10px;padding:10px 12px;font-weight:700}.game-day-roster-pending{background:#dc96001f;border-radius:10px;padding:10px 12px;font-weight:700}.game-day-team-actions{flex-wrap:wrap;gap:10px;margin-top:auto;display:flex}.game-day-main-actions{justify-content:center;padding:6px 0;display:flex}.game-day-future-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.game-day-future-card{background:#fff;border-radius:16px;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:20px;display:grid;box-shadow:0 8px 28px #0000000d}.game-day-future-card>span{font-size:1.8rem}.game-day-future-card strong{margin-bottom:4px;display:block}.game-day-future-card p{opacity:.65;margin:0}.game-day-roster-modal{z-index:5200;background:#000000c7;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.game-day-roster-modal-content{background:#fff;border-radius:20px;width:min(720px,100%);max-height:90vh;padding:24px;overflow-y:auto;box-shadow:0 24px 70px #0000004d}.game-day-roster-modal-header{z-index:2;background:#fff;border-bottom:1px solid #00000014;justify-content:space-between;align-items:flex-start;gap:20px;margin:-24px -24px 18px;padding:24px;display:flex;position:sticky;top:-24px}.game-day-roster-modal-header h2{margin:4px 0}.game-day-roster-modal-header p{opacity:.65;margin:0}.game-day-roster-list{flex-direction:column;gap:10px;display:flex}.game-day-roster-player{border:1px solid #00000017;border-radius:14px;grid-template-columns:52px 68px 1fr;align-items:center;gap:14px;padding:12px;display:grid}.game-day-roster-number{background:#0000000f;border-radius:12px;justify-content:center;align-items:center;width:46px;height:46px;font-size:1.1rem;font-weight:800;display:flex}.game-day-roster-photo{object-fit:cover;border-radius:12px;width:64px;height:64px;display:block}.game-day-roster-photo-empty{background:#00000012;justify-content:center;align-items:center;font-weight:800;display:flex}.game-day-roster-player-info{flex-direction:column;gap:4px;min-width:0;display:flex}.game-day-roster-player-info strong{font-size:.98rem}.game-day-roster-player-info span{opacity:.68;font-size:.84rem}.game-day-roster-player-info .game-day-play-up{opacity:1;background:#1e5eff17;border-radius:999px;align-self:flex-start;margin-top:3px;padding:3px 7px;font-weight:700}@media (width<=750px){.game-day-open-hint{display:none}.game-day-teams,.game-day-future-grid{grid-template-columns:1fr}.game-day-header{padding:18px}.game-day-header h1{font-size:1.45rem}.game-day-team-card{min-height:0;padding:18px}.game-day-team-actions{width:100%}.game-day-team-actions button{flex:160px}.game-day-future-card{grid-template-columns:auto 1fr}.game-day-future-card button{grid-column:1/-1;width:100%}.game-day-roster-modal{align-items:flex-end;padding:0}.game-day-roster-modal-content{border-radius:20px 20px 0 0;width:100%;max-height:92vh;padding:18px}.game-day-roster-modal-header{margin:-18px -18px 14px;padding:18px;top:-18px}.game-day-roster-player{grid-template-columns:44px 58px 1fr;gap:10px;padding:10px}.game-day-roster-number{width:40px;height:40px}.game-day-roster-photo{width:56px;height:56px}}.field-error{color:#b42318;margin-top:6px;font-size:.82rem;font-weight:600;line-height:1.3;display:block}.principal-staff-card{background:#2e7d320d;border:1px solid #c9dfc5}.principal-staff-header{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.principal-staff-header>div:first-child{flex-direction:column;gap:5px;display:flex}.principal-staff-badge{text-transform:uppercase;letter-spacing:.04em;background:#e7f5e5;border-radius:999px;width:fit-content;padding:4px 9px;font-size:.72rem;font-weight:700;display:inline-flex}.principal-staff-name{margin-top:5px;font-size:1rem}.principal-staff-email,.principal-staff-phone{opacity:.75;font-size:.88rem}.principal-staff-access{font-size:.85rem;font-weight:700}.principal-staff-categories{border-top:1px solid #00000014;margin-top:18px;padding-top:14px}.principal-category-list{flex-wrap:wrap;gap:7px;margin-top:10px;display:flex}.principal-category-badge{background:#2e7d321a;border-radius:999px;padding:5px 10px;font-size:.82rem;font-weight:700;display:inline-flex}.principal-no-categories{opacity:.7;font-size:.85rem}.other-staff-heading{flex-direction:column;gap:4px;margin:24px 0 12px;display:flex}.other-staff-heading>strong{font-size:.95rem}.other-staff-heading>span{opacity:.72;font-size:.85rem}@media (width<=650px){.principal-staff-header{flex-direction:column;gap:12px}}.forgot-password-button{font:inherit;cursor:pointer;background:0 0;border:0;align-self:flex-end;margin-top:-6px;padding:0;font-size:.85rem;font-weight:700;text-decoration:underline}.forgot-password-button:disabled{cursor:default;opacity:.55}.login-success-message{background:#2e7d3212;border:1px solid #b7d7ad;border-radius:10px;padding:12px 14px;font-size:.88rem;line-height:1.45}
