:root{--primary-color-start: #667eea;--primary-color-end: #764ba2;--club-dark-color: #764ba2;--club-ui-color: color-mix(in srgb, var(--club-dark-color) 35%, #5b616a);--club-primary-button-color: color-mix(in srgb, var(--club-main-color) 35%, #5b616a);--club-secondary-button-color: color-mix(in srgb, var(--club-secondary-color) 35%, #5b616a);--secondary-color: #5a67d8;--accent-color: #9f7aea;--text-primary: #213547;--text-secondary: #555;--text-light: #666;--text-white: #ffffff;--bg-white: #ffffff;--bg-light: #f5f5f5;--bg-lighter: #fafafa;--border-light: #e0e0e0;--border-lighter: #f0f0f0;--error-bg: #fee;--error-color: #c33;--error-border: #c33;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .1);--shadow-md: 0 4px 12px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 40px rgba(0, 0, 0, .1);--shadow-primary: 0 6px 20px rgba(102, 126, 234, .4);--overlay-dark: rgba(0, 0, 0, .5);--overlay-light: rgba(255, 255, 255, .2);--overlay-lighter: rgba(255, 255, 255, .3);--spacing-xs: .5rem;--spacing-sm: .75rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 2.5rem;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--transition-fast: .2s;--transition-normal: .3s}@font-face{font-family:Oswald;src:url(/fonts/Oswald-Variable.ttf) format("truetype");font-weight:200 700;font-style:normal;font-display:swap}.app-heading,.main-content .app-heading{font-family:Oswald,Arial Narrow,sans-serif;font-size:2.5rem;font-weight:400;text-transform:uppercase;letter-spacing:.025em;line-height:1.25}.app-panel-header{display:flex;align-items:center;padding:1.125rem 1.5rem;background:linear-gradient(135deg,var(--club-primary-button-color),var(--club-secondary-button-color));border-bottom:1px solid color-mix(in srgb,var(--club-secondary-button-color) 35%,#fff)}.app-panel-header h3{margin:0;color:#fff;font-size:1.375rem}.gradient-primary{background:linear-gradient(135deg,var(--primary-color-start) 0%,var(--primary-color-end) 100%)}.gradient-primary-hover{background:linear-gradient(135deg,var(--secondary-color) 0%,var(--accent-color) 100%)}.club-capacity-counter,.app-title-row .club-capacity-counter{display:inline-block;margin:0;padding:.35rem .625rem;border:1px solid #e1dbcf;border-radius:5px;background:#f4f0e5;color:#716c63}.app-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem}.app-title-row>:is(.app-heading,h3){margin:0}*,*:before,*:after{box-sizing:border-box}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color:var(--text-primary);background-color:var(--bg-white);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh;overflow-x:hidden}@media(max-width:768px){html,body{min-width:0;overflow-x:clip}h2{font-size:1.35rem}h3{font-size:1.1rem}.data-grid th,.data-grid td{padding:.6rem;font-size:.8125rem}.filter-input,.pagination-info,.pagination-page-size{font-size:.8125rem}}.sidebar{position:fixed;top:0;left:0;height:100vh;width:260px;background:linear-gradient(145deg,#34363a,#25272b);border-right:1px solid #45474c;display:flex;flex-direction:column;z-index:1000;transition:width var(--transition-normal);overflow-x:visible;overflow-y:auto}.sidebar.closed{width:70px}.sidebar.closed .sidebar-logo,.sidebar.closed .sidebar-link span,.sidebar.closed .expand-icon{opacity:0;width:0;overflow:hidden}.sidebar.closed .sidebar-link{justify-content:center;padding:var(--spacing-md)}.sidebar.closed .submenu-link,.sidebar.closed .sidebar-submenu{display:none}.sidebar-header{padding:24px 20px;border-bottom:1px solid #45474c;background:transparent;display:flex;align-items:center;gap:12px;min-height:72px}.sidebar.closed .sidebar-header{justify-content:center;padding:16px}.sidebar-toggle-internal{background:transparent;border:none;border-radius:6px;padding:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.sidebar-toggle-internal:hover{background:#ffffff12}.sidebar-toggle-internal svg{width:20px;height:20px;color:#c5c6ca}.sidebar-logo{margin:0;font-size:1.125rem;font-weight:600;color:#f4f4f5;flex:1;white-space:nowrap;transition:opacity var(--transition-normal);letter-spacing:-.02em;text-decoration:none;min-width:0}.player-sidebar-disabled{opacity:.45;cursor:not-allowed}.sidebar-logo span{display:block;width:100%;overflow:hidden}.sidebar-logo.name-overflow span{visibility:hidden}.sidebar-logo-container{flex:1;display:flex;align-items:center;justify-content:center;transition:opacity var(--transition-normal)}.sidebar-logo-image{max-width:120px;max-height:150px;object-fit:contain}.sidebar.closed .sidebar-logo-container{opacity:0;width:0;overflow:hidden}.mobile-menu-trigger{display:none}@media(max-width:768px){.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0);width:100%}.sidebar.closed{transform:translate(-100%)}.mobile-menu-trigger{display:flex;align-items:center;justify-content:center;position:fixed;top:12px;left:12px;width:36px;height:36px;background:linear-gradient(145deg,#34363a,#25272b);border:1px solid #45474c;border-radius:7px;box-shadow:0 1px 3px #0f172a1a;cursor:pointer;z-index:1100}.mobile-menu-trigger svg{width:19px;height:19px;color:#c5c6ca}}@media(min-width:769px){.sidebar-header{padding:var(--spacing-md)}}.sidebar-nav{display:flex;flex-direction:column;flex:1;padding:12px 0;overflow:visible}.sidebar-academia{order:1}.sidebar-management{order:2}.sidebar-facilities{order:3}.sidebar-tournaments{order:4}.sidebar-nav>.sidebar-link:first-child{order:5}.sidebar-nav>.sidebar-link.player-profile-link{order:0}.sidebar-nav>.sidebar-link.player-divisions-link{order:1}.sidebar-nav>.sidebar-link.player-chats-link{order:2}.sidebar-nav>.sidebar-link.player-progress-link{order:3}.sidebar-section{margin-bottom:4px;position:relative;overflow:visible}.sidebar-link{display:flex;align-items:center;gap:12px;padding:15px 20px;color:#c5c6ca;text-decoration:none;transition:all .15s ease;cursor:pointer;border:none;background:transparent;width:100%;font-size:1rem;font-weight:500;position:relative;border-left:3px solid transparent}.sidebar-link svg{width:20px;height:20px;flex-shrink:0;transition:none;stroke-width:2}.sidebar-link span{flex:1;text-align:left;white-space:nowrap;transition:opacity var(--transition-normal),width var(--transition-normal)}.sidebar-link:hover{background:#ffffff08;color:#f4f4f5}.sidebar-link.active{background:var(--club-secondary-button-color);color:#fff;font-weight:600;border-left-color:var(--club-secondary-button-color)}.sidebar-link.active svg{stroke-width:2.5}.sidebar-link.sidebar-parent{font-weight:500}.sidebar-section{position:relative}.sidebar-link.sidebar-parent .expand-icon{width:16px;height:16px;transition:transform .2s ease,opacity var(--transition-normal),width var(--transition-normal);margin-left:auto;stroke-width:2}.sidebar-link.sidebar-parent.expanded .expand-icon{transform:rotate(180deg)}.sidebar-link.sidebar-parent.active{background:var(--club-secondary-button-color);color:#fff;border-left-color:var(--club-secondary-button-color);font-weight:600}.sidebar.closed .sidebar-link.sidebar-parent{position:relative}.sidebar.closed .expand-icon{display:none}.sidebar-submenu{animation:slideDown .2s ease-out;overflow:hidden;display:flex;flex-direction:column;background:#ffffff08;margin:2px 0}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:500px}}.submenu-link{padding-left:52px;font-size:.875rem;font-weight:500;border-left:3px solid transparent}.submenu-link:hover{background:#ffffff12}.submenu-link.active{background:color-mix(in srgb,var(--club-secondary-button-color) 10%,#e4e4e7);color:#212529;border-left-color:var(--club-secondary-button-color);font-weight:600}.submenu-link svg{width:18px;height:18px;stroke-width:2}.submenu-link.active svg{stroke-width:2.5}.sidebar-submenu-floating{position:fixed;left:70px;margin-left:8px;background:linear-gradient(145deg,#34363a,#25272b);border-radius:8px;box-shadow:0 10px 40px #00000026;padding:8px 0;min-width:200px;z-index:2000;animation:slideInRight .2s ease-out;border:1px solid #45474c;display:flex;flex-direction:column}.academia-staff-link{order:2}.academia-players-link{order:3}@keyframes slideInRight{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.submenu-floating-header{padding:12px 16px;font-weight:600;color:#f4f4f5;font-size:.875rem;border-bottom:1px solid #45474c;margin-bottom:4px;background:#ffffff05}.sidebar-link-floating{display:flex;align-items:center;gap:12px;padding:10px 16px;color:#c5c6ca;text-decoration:none;transition:all .15s ease;cursor:pointer;font-size:.875rem;font-weight:500;border-left:3px solid transparent}.sidebar-link-floating svg{width:18px;height:18px;flex-shrink:0;stroke-width:2}.sidebar-link-floating:hover{background:#ffffff08;color:#f4f4f5}.sidebar-link-floating.active{background:color-mix(in srgb,var(--club-secondary-button-color) 10%,#e4e4e7);color:#212529;border-left-color:var(--club-secondary-button-color);font-weight:600}.sidebar-link-floating.active svg{stroke-width:2.5}.sidebar-footer{padding:12px 0;border-top:1px solid #45474c;margin-top:auto}.sidebar-footer .sidebar-link{color:#c5c6ca;font-weight:500}.sidebar-footer .sidebar-link:hover{background:#ffffff08;color:#f4f4f5}.sidebar-overlay{display:none}@media(max-width:768px){.sidebar-toggle.open{left:1rem}.sidebar.closed{transform:translate(-100%)}.sidebar-overlay{display:block;position:fixed;inset:0;background:var(--overlay-dark);z-index:999;animation:fadeIn .2s ease-out}}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track{background:transparent}.sidebar::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.sidebar::-webkit-scrollbar-thumb:hover{background:#9ca3af}:root{--primary-color-rgb: 103, 126, 234}.modal-overlay{position:fixed;inset:0;background:var(--overlay-dark);display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .2s ease-out}.modal-content{background:var(--bg-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:90%;max-width:500px;max-height:90vh;overflow:auto;animation:slideUp .3s ease-out}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-xl);border-bottom:1px solid var(--border-light)}.modal-header h2{margin:0;color:var(--text-primary);font-size:1.5rem}.close-button{background:none;border:none;color:var(--text-light);cursor:pointer;padding:var(--spacing-xs);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:background var(--transition-fast)}.close-button:hover{background:var(--bg-light)}.close-button svg{width:24px;height:24px}.account-form{padding:var(--spacing-xl)}.form-group{margin-bottom:var(--spacing-lg)}.form-group label{display:block;margin-bottom:var(--spacing-xs);font-weight:600;color:var(--text-secondary);font-size:.9rem}.form-group input{width:100%;padding:12px 16px;border:1px solid var(--border-light);border-radius:var(--radius-sm);font-size:.95rem;transition:all var(--transition-fast);background:var(--bg-white);color:var(--text-primary);box-sizing:border-box;height:45px}.form-group input:focus{outline:none;border-color:var(--primary-color-start);box-shadow:0 0 0 3px #667eea1a}.form-group input:disabled{background:var(--bg-light);cursor:not-allowed;opacity:.7}.modal-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;margin-top:var(--spacing-xl)}.button-secondary{background:var(--bg-light);color:var(--text-primary)}.password-requirements{margin-top:var(--spacing-sm);padding:var(--spacing-sm);background:var(--bg-light);border-radius:var(--radius-sm);font-size:.85rem}.password-requirements small{color:var(--text-secondary);font-weight:600;display:block;margin-bottom:var(--spacing-xs)}.password-requirements ul{margin:0;padding-left:var(--spacing-lg);list-style:none}.password-requirements li{color:var(--text-secondary);padding:2px 0;position:relative}.password-requirements li:before{content:"○";position:absolute;left:-20px;color:var(--text-light)}.password-requirements li.valid{color:#2e7d32}.password-requirements li.valid:before{content:"✓";color:#4caf50;font-weight:700}.form-field{margin-bottom:1.5rem}.form-label{display:block;margin-bottom:.5rem;font-weight:500;color:#333;font-size:.875rem}.required-indicator{color:#dc3545;margin-left:.25rem}.form-input,.form-textarea,.form-select{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:.875rem;transition:border-color .2s;font-family:inherit}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:#6c757d;box-shadow:0 0 0 3px #6c757d1a}.form-input.error,.form-textarea.error,.form-select.error{border-color:#dc3545}.form-error{display:block;margin-top:.25rem;font-size:.75rem;color:#dc3545}.form-textarea{resize:vertical;min-height:100px}.form-input:disabled,.form-textarea:disabled,.form-select:disabled{background-color:#f5f5f5;cursor:not-allowed}.multi-select{display:flex;flex-wrap:wrap;gap:.75rem;padding:.75rem;border:1px solid #ddd;border-radius:4px;background:#fff}.multi-select.error{border-color:#dc3545}.multi-select-option{display:flex;align-items:center;gap:.5rem;cursor:pointer;padding:.5rem .75rem;border:1px solid #ddd;border-radius:4px;background:#f8f9fa;transition:all .2s;-webkit-user-select:none;user-select:none}.multi-select-option:hover{background:#e9ecef;border-color:#999}.multi-select-checkbox{cursor:pointer}.multi-select-checkbox:checked+.multi-select-label{font-weight:600}.multi-select-option:has(.multi-select-checkbox:checked){background:#6c757d;color:#fff;border-color:#6c757d}.multi-select-label{font-size:.875rem}.form-button{padding:.75rem 1.5rem;border:none;border-radius:4px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.form-button:disabled{opacity:.6;cursor:not-allowed}.form-button-primary{background:var(--club-primary-button-color);color:#fff}.form-button-primary:hover:not(:disabled){background:var(--club-secondary-button-color);transform:translateY(-1px);box-shadow:0 2px 8px color-mix(in srgb,var(--club-secondary-button-color) 30%,transparent)}.form-button-secondary{background:#6c757d;color:#fff}.form-button-secondary:hover:not(:disabled){background:#5a6268}.form-button-danger{background:#dc3545;color:#fff}.form-button-danger:hover:not(:disabled){background:#c82333}.form-button-success{background:#28a745;color:#fff}.form-button-success:hover:not(:disabled){background:#218838}.form-button:active:not(:disabled){transform:translateY(0)}.date-input-wrapper{position:relative;display:flex;align-items:center;width:100%}.date-input-wrapper input[type=text],.date-input-wrapper input[type=date]{flex:1;padding:8px 36px 8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:inherit;transition:border-color .2s}.date-input-wrapper input[type=text]:focus,.date-input-wrapper input[type=date]:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.date-input-wrapper input.date-input-error{border-color:#e74c3c}.date-input-wrapper input.date-input-error:focus{border-color:#e74c3c;box-shadow:0 0 0 3px #e74c3c1a}.calendar-icon-btn{position:absolute;right:4px;display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;background:transparent;cursor:pointer;border-radius:4px;transition:background-color .2s}.calendar-icon-btn:hover{background-color:#0000000d}.calendar-icon-btn:active{background-color:#0000001a}.calendar-icon-btn svg{width:20px;height:20px;color:#666}.date-input-error-msg{position:absolute;bottom:-20px;left:0;font-size:12px;color:#e74c3c}.date-input-wrapper input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer}.validation-summary{margin-bottom:1rem;padding:.75rem 1rem;color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-left:3px solid #dc2626;border-radius:6px;font-size:.85rem}.validation-summary ul{margin:.35rem 0 0;padding-left:1.25rem}.validated-form.was-validated input:not([type=checkbox]):not([type=radio]):invalid,.validated-form.was-validated select:invalid,.validated-form.was-validated textarea:invalid{border-color:#dc3545!important;background-color:#fff7f7;box-shadow:0 0 0 1px #dc354514}.validated-form.was-validated input[type=checkbox]:invalid,.validated-form.was-validated input[type=radio]:invalid{outline:2px solid #dc3545;outline-offset:2px}.app-header{position:fixed;top:0;left:260px;right:0;height:72px;background:linear-gradient(145deg,#faf8f2,#ebe5d6);border-bottom:2px solid transparent;border-image:linear-gradient(90deg,var(--primary-color-start) 0%,var(--primary-color-end) 100%);border-image-slice:1;z-index:999;transition:left .3s ease}.app-header.sidebar-compact{left:70px}.header-content{display:flex;align-items:center;justify-content:space-between;height:100%;padding:0 32px}.header-left{flex:1;display:flex;align-items:center}.header-logo-image{max-height:44px;max-width:160px;object-fit:contain}.header-title{margin:0;font-size:1.75rem;font-weight:400;color:#6b7280;letter-spacing:-.03em}.header-brand{font-family:Segoe UI,-apple-system,BlinkMacSystemFont,system-ui,sans-serif;font-weight:600;font-size:1.9rem;background:linear-gradient(135deg,var(--primary-color-start) 0%,var(--primary-color-end) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.01em;text-transform:uppercase}.header-right{display:flex;align-items:center;gap:16px}.header-preview-button{display:inline-flex;align-items:center;gap:.45rem;min-height:40px;padding:.5rem .8rem;background:#fff;color:#475569;border:1px solid #dbe1e8;border-radius:8px;font:inherit;font-size:.85rem;font-weight:600;cursor:pointer}.header-preview-button:hover{color:var(--club-ui-color);border-color:var(--club-ui-color);background:color-mix(in srgb,var(--club-ui-color) 5%,#fff)}.header-preview-button svg{width:19px;height:19px}.user-menu-container{position:relative}.user-menu-trigger{display:flex;align-items:center;gap:12px;padding:8px 12px;background:transparent;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s ease}.user-menu-trigger:hover{background:#f9fafb;border-color:#d1d5db}.user-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--primary-color-start) 0%,var(--primary-color-end) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;flex-shrink:0}.user-info{display:flex;flex-direction:column;align-items:flex-start;max-width:180px}.user-name{font-size:.9375rem;font-weight:500;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.dropdown-arrow{width:16px;height:16px;color:#6b7280;transition:transform .2s ease;flex-shrink:0}.dropdown-arrow.open{transform:rotate(180deg)}.user-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 40px #00000026;min-width:220px;padding:8px 0;z-index:1000;animation:dropdownSlideIn .2s ease-out}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.dropdown-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;background:transparent;border:none;color:#374151;font-size:.9375rem;font-weight:500;text-align:left;cursor:pointer;transition:all .15s ease}.dropdown-item svg{width:18px;height:18px;color:#6b7280;flex-shrink:0}.dropdown-item:hover{background:#f9fafb;color:#111827}.dropdown-item:hover svg{color:var(--primary-color-start)}.dropdown-item.logout{border-top:1px solid #e5e7eb;margin-top:4px;padding-top:12px}.dropdown-item.logout:hover{background:#fee;color:#dc2626}.dropdown-item.logout:hover svg{color:#dc2626}@media(max-width:768px){.app-header,.app-header.sidebar-compact{left:0;height:60px;border-bottom-width:1px;background:linear-gradient(90deg,#34363a 60px,transparent 60px),linear-gradient(145deg,#faf8f2,#ebe5d6)}.header-content{padding:0 12px 0 60px}.header-title,.header-brand{font-size:1.125rem}.header-logo-image{max-height:32px;max-width:min(112px,25vw)}.user-info{display:none}.header-right{gap:8px}.header-preview-button{min-height:38px;padding:.45rem .6rem}.user-menu-trigger{gap:6px;padding:4px 6px 4px 4px;border-color:#e2e8f0;border-radius:9px}.user-avatar{width:32px;height:32px;font-size:.75rem}}.header-home-link{display:inline-flex;align-items:center;text-decoration:none}@media(max-width:480px){.header-preview-button span{display:none}.header-title,.header-brand{font-size:1rem}}.notification-bell{position:relative;flex-shrink:0}.notification-bell-trigger{position:relative;display:grid;place-items:center;width:40px;height:40px;padding:8px;border:1px solid #d6d1c5;border-radius:8px;background:#faf8f2;color:#34363a;cursor:pointer}.notification-bell-trigger svg{width:22px;height:22px}.notification-bell-count{position:absolute;top:-6px;right:-6px;min-width:18px;padding:2px 4px;border:2px solid #faf8f2;border-radius:12px;background:#75464b;color:#fff;font-size:.625rem;line-height:1.2}.notifications-panel{position:absolute;right:0;top:calc(100% + 12px);width:350px;max-width:calc(100vw - 32px);border:1px solid #d6d1c5;border-radius:10px;background:#faf8f2;color:#34363a;box-shadow:0 12px 30px #25272b26;overflow:hidden;z-index:1100}.notifications-panel-heading{display:flex;align-items:center;justify-content:space-between;background:#34363a;color:#fff;padding:.875rem 1rem}.notifications-panel-heading strong{font-family:Oswald,Arial Narrow,sans-serif;font-size:1.25rem;font-weight:400;text-transform:uppercase}.notifications-panel-heading button{border:0;background:transparent;color:#fff;font-size:1.5rem;cursor:pointer}.notifications-panel>p{padding:1rem;font-size:.875rem}.notifications-list{max-height:min(420px,65vh);overflow-y:auto}.notification-item{display:flex;flex-direction:column;gap:.25rem;width:100%;text-align:left;padding:1rem;background:#faf8f2;border:0;border-bottom:1px solid #e1dbcf;color:#34363a;cursor:pointer;overflow-wrap:anywhere}.notification-item.unread{background:#f1eadb;border-left:3px solid #75464b}.notification-item:hover{background:#ebe5d6}.notification-item span{font-size:.875rem}.notification-item small{font-size:.75rem;color:#716c63}@media(max-width:768px){.notifications-panel{position:fixed;top:76px;right:16px}}.layout{min-height:100vh;display:flex}.main-content{flex:1;margin-left:260px;margin-top:40px;padding:32px;transition:margin-left .3s ease;background:#f9fafb;min-height:calc(100vh - 72px)}.main-content.sidebar-compact{margin-left:70px}@media(max-width:768px){.layout{width:100%;min-width:0}.main-content{flex-basis:0;margin-left:0;margin-top:60px;padding:16px;min-width:0}.main-content.sidebar-compact{margin-left:0}}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;border-radius:8px;box-shadow:0 4px 20px #0000004d;max-height:90vh;overflow-y:auto;animation:modalSlideIn .2s ease-out}.modal-content.modal-full{overflow-y:hidden}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-small{width:100%;max-width:400px}.modal-medium{width:100%;max-width:600px}.modal-large{width:100%;max-width:900px}.modal-full{width:90vw!important;height:90vh!important;max-width:90vw!important;max-height:90vh!important;display:flex;flex-direction:column;overflow:hidden}.modal-full .modal-header{flex-shrink:0}.modal-full .modal-body{flex:1;overflow:hidden;padding:0}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e0e0e0}.modal-title{margin:0;font-size:1.25rem;font-weight:600;color:#333}.modal-close{background:none;border:none;font-size:2rem;color:#999;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.modal-close:hover{background:#f5f5f5;color:#333}.modal-body{padding:1.5rem}.legal-content{max-height:60vh;overflow-y:auto;padding:0 8px}.legal-content h2{color:#333;font-size:1.5rem;margin:0 0 8px}.legal-date{color:#666;font-size:.875rem;margin:0 0 24px;font-style:italic}.legal-content section{margin-bottom:24px}.legal-content h3{color:#444;font-size:1.125rem;margin:0 0 12px;font-weight:600}.legal-content p{color:#555;line-height:1.6;margin:0 0 12px;text-align:justify}.legal-content ul{margin:8px 0 12px 20px;padding:0}.legal-content li{color:#555;line-height:1.6;margin-bottom:8px}.legal-content::-webkit-scrollbar{width:8px}.legal-content::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.legal-content::-webkit-scrollbar-thumb{background:#ccc;border-radius:4px}.legal-content::-webkit-scrollbar-thumb:hover{background:#999}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(145deg,#050505,#18181b);position:relative;overflow:hidden}.login-container:before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,transparent,transparent 70px,rgba(255,255,255,.035) 70px,rgba(255,255,255,.035) 140px),repeating-linear-gradient(60deg,transparent,transparent 70px,rgba(255,255,255,.035) 70px,rgba(255,255,255,.035) 140px),repeating-linear-gradient(120deg,transparent,transparent 70px,rgba(255,255,255,.035) 70px,rgba(255,255,255,.035) 140px);opacity:.5;z-index:0}.login-container:after{content:"";position:absolute;width:400px;height:400px;background:#ffffff09;clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);top:-100px;left:-100px;z-index:0}.login-card{background:#fff;padding:48px 40px;border-radius:12px;box-shadow:0 8px 32px #00000014;width:100%;max-width:420px;position:relative;z-index:1;animation:slideUp .4s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.login-header{text-align:center;margin-bottom:32px}.app-logo{color:#09090b;margin:0 0 8px;font-size:2.5rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.welcome-text{color:#333;font-size:1.5rem;font-weight:400;margin:0 0 8px}.login-subtitle{color:#666;font-size:.875rem;margin:0;font-weight:400}.error-message{background:#fee;color:#c33;padding:12px 16px;border-radius:6px;margin-bottom:20px;font-size:.875rem;border-left:4px solid #c33;animation:shake .3s ease}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.login-form{width:100%}.form-group{margin-bottom:16px}.form-input{width:100%;padding:14px 16px;border:1px solid #e0e0e0;border-radius:6px;font-size:.9375rem;transition:all .2s ease;box-sizing:border-box;background:#fafafa;color:#333}.form-input::placeholder{color:#999}.form-input:hover{border-color:#ccc;background:#fff}.form-input:focus{outline:none;border-color:#18181b;background:#fff;box-shadow:0 0 0 3px #18181b1f}.form-input:disabled{background:#f5f5f5;cursor:not-allowed;opacity:.6}.login-button{width:100%;padding:14px;background:#09090b;color:#fff;border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:8px;margin-bottom:16px;box-shadow:0 2px 8px #09090b40}.login-button:hover:not(:disabled){background:#27272a;box-shadow:0 4px 12px #09090b52;transform:translateY(-1px)}.login-button:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 4px #09090b3d}.login-button:disabled{opacity:.5;cursor:not-allowed}.terms-text{text-align:center;font-size:.75rem;color:#666;margin:0;line-height:1.5}.terms-link{color:#18181b;text-decoration:none;font-weight:500}.terms-link:hover{text-decoration:underline}@media(max-width:480px){.login-card{padding:32px 24px;margin:16px}.app-logo{font-size:2rem}.welcome-text{font-size:1.25rem}}.login-recovery-button{border:0;background:transparent;color:#5b4548;padding:.625rem;font-size:.875rem;text-decoration:underline;cursor:pointer}.login-recovery-button:disabled{opacity:.6;cursor:default}.temporary-password-modal .modal-header{background:linear-gradient(110deg,var(--club-primary-button-color),var(--club-secondary-button-color));color:#fff}.temporary-password-modal .modal-title{color:#fff;font-family:Oswald,Arial Narrow,sans-serif;text-transform:uppercase;font-size:1.5rem;font-weight:400}.temporary-password-modal .modal-close{color:#fff}.temporary-password-modal .modal-body{background:#faf8f2}.temporary-password-body{display:flex;flex-direction:column;gap:.75rem;color:#34363a;overflow-wrap:anywhere}.temporary-password-body p{margin:0}.temporary-password-body>span,.temporary-password-body small{color:#716c63}.temporary-password-value{width:100%;min-width:0;box-sizing:border-box;padding:.75rem;font-family:monospace;font-size:1rem;background:#f4f0e5;border:1px solid #d6d1c5;border-radius:6px;color:#34363a}.recovery-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:.75rem;margin-top:.5rem}.recovery-actions button{padding:.625rem .875rem;border:1px solid #d6d1c5;border-radius:6px;background:#f4f0e5;color:#34363a;cursor:pointer}.recovery-actions button.app-create-button{background:linear-gradient(110deg,var(--club-primary-button-color),var(--club-secondary-button-color));color:#fff}.recovery-pending-badge{display:inline-block;width:fit-content;margin-top:.375rem;padding:.25rem .5rem;border:1px solid #d9c69d;background:#f4e8cc;color:#735723;border-radius:5px;font-size:.75rem;line-height:1.4}.recovery-pending-list{display:flex;flex-wrap:wrap;gap:.625rem;margin-bottom:1rem;padding:.875rem 1rem;background:#f4f0e5;border:1px solid #d6d1c5;border-left:4px solid #ad8650;border-radius:7px;color:#735723}.recovery-pending-list button{border:1px solid #d6d1c5;background:#fffdf8;border-radius:5px;padding:.25rem .5rem;cursor:pointer;color:#34363a}.recovery-success{padding:.875rem 1rem;margin-bottom:1rem;border:1px solid #b6d9be;border-left:4px solid #2f7d46;background:#edf7ef;border-radius:7px;color:#245c34}.pagination-container{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-top:1px solid #e0e0e0;flex-wrap:wrap;gap:1rem}.pagination-info{font-size:.875rem;color:#666}.pagination-controls{display:flex;align-items:center;gap:.5rem}.pagination-pages{display:flex;gap:.25rem}.pagination-button{padding:.5rem .75rem;border:1px solid #ddd;background:#fff;cursor:pointer;border-radius:4px;font-size:.875rem;transition:all .2s}.pagination-button:hover:not(:disabled){background:#f5f5f5;border-color:#999}.pagination-button:disabled{opacity:.5;cursor:not-allowed}.pagination-button.active{background:#6c757d;color:#fff;border-color:#6c757d}.pagination-page-size{display:flex;align-items:center;gap:.5rem;font-size:.875rem}.page-size-select{padding:.375rem .75rem;border:1px solid #ddd;border-radius:4px;font-size:.875rem;cursor:pointer}.page-size-select:focus{outline:none;border-color:#6c757d}@media(max-width:768px){.pagination-container{display:grid;grid-template-columns:1fr auto;gap:.75rem;margin-top:.875rem;padding:.875rem;background:#e9eef4;border:1px solid #d5dde7;border-radius:8px;box-shadow:none}.pagination-info{display:flex;align-items:center;color:#64748b;font-size:.8125rem}.pagination-controls{grid-column:1 / -1;grid-row:2;justify-content:center;gap:.375rem}.pagination-page-size{justify-content:flex-end;color:#475569;font-size:.8125rem}.pagination-button,.page-size-select{min-height:38px}.pagination-button{padding-inline:.7rem}}@media(max-width:390px){.pagination-container{grid-template-columns:1fr}.pagination-page-size{justify-content:flex-start}.pagination-controls{grid-row:3}}.data-grid-container{background:linear-gradient(145deg,#faf8f2,#ebe5d6);border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden;position:relative}.grid-loading-overlay{position:absolute;inset:0;background:#ffffffb3;display:flex;align-items:center;justify-content:center;z-index:100}.loading-spinner{width:40px;height:40px;border:3px solid #e0e0e0;border-top-color:#6c757d;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.data-grid-wrapper{overflow-x:auto}.data-grid{width:100%;border-collapse:collapse}.data-grid thead{background:#fff;position:sticky;top:0;z-index:10;box-shadow:0 2px 4px #0000000d}.data-grid th{padding:1rem;text-align:left;font-weight:600;color:#212529;border-bottom:2px solid #dee2e6;white-space:nowrap}.data-grid .actions-column{width:120px}.data-grid td{padding:1rem;border-bottom:1px solid #f0f0f0;color:#666}.data-grid tbody tr:hover{background:#f9f9f9}.data-grid tbody tr.highlighted{background:#e8f5e9;animation:highlightFade 2s ease-out}.data-grid tbody tr.clickable-row{cursor:pointer}.data-grid tbody tr.clickable-row:hover{background:#f8f9fa}@keyframes highlightFade{0%{background:#c8e6c9}to{background:#fff}}.actions-cell{vertical-align:middle}.grid-actions{display:flex;gap:.5rem;align-items:center}.filter-row th{padding:.5rem 1rem;background:#fff}.filter-input{width:100%;padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:.875rem}.filter-input:focus{outline:none;border-color:#6c757d}.no-data{text-align:center;padding:2rem!important;color:#999;font-style:italic}.grid-loading{padding:2rem;text-align:center;color:#666}.data-grid-container .data-grid thead>tr:first-child{background:#ebe5d6}.data-grid-container .data-grid thead>tr:first-child th{color:#42413d;border-bottom-color:#d6d1c5}.data-grid-container .data-grid .filter-row th{background:#f4f0e5;border-bottom-color:#d6d1c5}.data-grid-container .data-grid tbody>tr:not(.expanded-row):not(.highlighted){background:linear-gradient(145deg,#fffefa,#f8f5ed)}.data-grid-container .data-grid tbody>tr:not(.expanded-row):not(.highlighted):hover{background:#f2ede2}.data-grid-container .data-grid td{border-bottom-color:#d6d1c580}.data-grid-container .filter-input{background:#fffdf8;border-color:#d6d1c5;color:#42413d}.data-grid-container div.pagination-container{background:#f0ebdf;border-color:#d6d1c5}.confirm-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;padding:1rem}.confirm-dialog{background:#fff;border-radius:8px;padding:2rem;max-width:400px;width:100%;box-shadow:0 4px 20px #0000004d;animation:modalSlideIn .2s ease-out}.confirm-title{margin:0 0 1rem;font-size:1.25rem;font-weight:600;color:#333}.confirm-message{margin:0 0 1.5rem;color:#666;line-height:1.5}.confirm-actions{display:flex;gap:.75rem;justify-content:flex-end}.icon-button{padding:.5rem;border:none;border-radius:4px;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;background:transparent;color:#666}.icon-button:hover:not(:disabled){background:#f5f5f5}.icon-button:disabled{opacity:.5;cursor:not-allowed}.icon-button-primary{color:#495057}.icon-button-primary:hover:not(:disabled){background:#4950571a;color:#212529}.icon-button-danger{color:#dc3545}.icon-button-danger:hover:not(:disabled){background:#dc35451a}.icon-button-secondary{color:#6c757d}.icon-button-secondary:hover:not(:disabled){background:#6c757d1a}.icon-button svg{width:18px;height:18px}.app-toast-backdrop{position:fixed;inset:0;z-index:1499;background:#0f172a52;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);pointer-events:none}.app-toast{position:fixed;top:50%;left:calc(50% + 130px);z-index:1500;display:flex;align-items:flex-start;gap:1rem;width:min(460px,calc(100vw - 292px));box-sizing:border-box;padding:1.35rem 1.4rem;transform:translate(-50%,-50%);border:1px solid #cbd5e1;border-left:6px solid #28713d;border-radius:12px;background:#fff;color:#1f2937;box-shadow:0 24px 70px #0f172a7a,0 4px 14px #0f172a3d;font-size:.95rem}.app-toast.error{border-left-color:#ad343c}.app-toast.warning{border-left-color:#a66d09}.sidebar-compact .app-toast{left:calc(50% + 35px);width:min(430px,calc(100vw - 102px))}@media(max-width:768px){.app-toast,.sidebar-compact .app-toast{left:50%;width:min(430px,calc(100vw - 32px))}}.app-toast-icon{display:grid;flex:0 0 34px;place-items:center;width:34px;height:34px;border-radius:50%;background:#e5f1e7;color:#28713d;font-size:1.35rem;font-weight:700;line-height:1}.app-toast.error .app-toast-icon{background:#f9e7e7;color:#ad343c}.app-toast.warning .app-toast-icon{background:#fff1ce;color:#a66d09}.app-toast>div{display:grid;flex:1;gap:.35rem;min-width:0}.app-toast>div strong{color:#111827;font-size:1rem}.app-toast>div span{color:#475569;line-height:1.45}.app-toast>div span{overflow-wrap:anywhere}.app-toast button{padding:0;border:0;background:transparent;color:#5d5953;cursor:pointer;font-size:1.3rem;line-height:1}.divisions-page{padding:2rem}.divisions-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.divisions-header h2{margin:0;color:#1e293b;font-size:1.625rem}.divisions-page .data-grid thead tr:first-child{background:var(--club-ui-color)}.divisions-page .data-grid thead tr:first-child th{color:#fff;border-bottom-color:color-mix(in srgb,var(--club-ui-color) 75%,#000)}.divisions-page .pagination-container{background:color-mix(in srgb,var(--club-ui-color) 9%,#fff);border-color:color-mix(in srgb,var(--club-ui-color) 24%,#fff);border-top:2px solid var(--club-ui-color)}.division-name-cell,.division-staff-list,.division-staff-member{display:flex;align-items:center}.division-name-cell{gap:.75rem}.division-staff-list{flex-wrap:wrap;gap:.75rem 1rem}.division-staff-member{gap:.4rem;color:#334155;font-size:.85rem}.division-staff-member img,.division-person-placeholder{width:32px;height:32px;flex:0 0 32px;border:2px solid #e2e8f0;border-radius:50%;object-fit:cover}.division-person-placeholder,.division-player-placeholder{display:inline-flex;align-items:center;justify-content:center;color:#64748b;background:#f1f5f9;font-weight:600}.view-players-button{display:inline-flex;align-items:center;gap:.4rem;min-height:36px;padding:.45rem .7rem;color:var(--club-ui-color);background:#fff;border:1px solid var(--club-ui-color);border-radius:4px;cursor:pointer;white-space:nowrap}.view-players-button:hover{color:#fff;background:var(--club-ui-color)}.view-players-button svg{width:17px;height:17px}.data-grid tr.expanded-row:hover{background:#fff}.data-grid tr.expanded-row>td{padding:1rem 1.25rem 1.25rem;background:color-mix(in srgb,var(--club-ui-color) 5%,#fff)}.division-player-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:.75rem}.division-player-card{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#fff;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .2s}.division-player-card:hover,.division-player-card:focus-visible{border-color:var(--club-ui-color);box-shadow:0 3px 10px #0f172a1f;transform:translateY(-1px);outline:none}.division-player-card img,.division-player-placeholder{width:46px;height:46px;flex:0 0 46px;border-radius:50%;object-fit:cover}.division-player-card div{display:flex;min-width:0;flex-direction:column;gap:.2rem}.division-player-card strong{color:#1e293b}.division-player-card div span{overflow:hidden;color:#64748b;font-size:.8rem;text-overflow:ellipsis;white-space:nowrap}.division-container{background:var(--bg-white);border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden;height:100%}.division-section-header{display:flex;justify-content:space-between;align-items:center;margin:0}.division-section-header h3{margin:0;color:var(--text-primary);font-size:1.375rem}.division-list{display:flex;flex-direction:column;gap:12px;max-height:calc(100vh - 300px);overflow-y:auto;padding:var(--spacing-md) var(--spacing-xl)}.division-list::-webkit-scrollbar{width:8px}.division-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.division-list::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.division-list::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.division-card{display:flex;justify-content:space-between;align-items:center;padding:15px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;box-shadow:0 1px 2px #0f172a0d;transition:all .2s ease}.division-card:hover{background:#fff;border-color:var(--club-primary-button-color);box-shadow:0 4px 12px #0f172a1a}.division-card-content{flex:1;display:flex;align-items:center;gap:20px}.division-info{display:flex;align-items:center;gap:10px;flex:1}.division-info h4{margin:0;color:#1e293b;font-size:.95rem}.division-badge{padding:.25rem .65rem;color:#fff;background:linear-gradient(135deg,var(--club-primary-button-color),var(--club-secondary-button-color));border-radius:999px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.division-actions{display:flex;gap:8px;align-items:center}.division-priority-actions{display:flex;justify-content:flex-end;gap:8px}.divisions-page .data-grid td[data-column=priority]{width:1%}.division-move-button{display:inline-flex;align-items:center;justify-content:center;background:none;border:1px solid #ddd;cursor:pointer;padding:8px;border-radius:6px;transition:all .2s ease;width:36px;height:36px}.division-move-button svg{width:18px;height:18px;stroke-width:2}.division-move-button{color:#7f8c8d;border-color:#e0e0e0}.division-move-button:hover:not(:disabled){background:#3498db;border-color:#3498db;color:#fff;transform:translateY(-1px)}.division-move-button:disabled{opacity:.3;cursor:not-allowed;background:#f5f5f5}.division-empty{text-align:center;padding:60px var(--spacing-xl);color:#7f8c8d}.division-empty p:first-child{font-size:1.2rem;color:#34495e;margin-bottom:8px}.text-muted{font-size:.9rem}.division-loading{text-align:center;padding:40px;color:#7f8c8d;font-size:1.1rem}.division-error{background:#fee;color:#c33;padding:12px;border-radius:6px;margin-bottom:15px;border-left:4px solid #e74c3c}.division-form-modal{width:90%;max-width:500px;max-height:90dvh;display:flex;flex-direction:column;overflow:hidden}.division-form-modal .modal-header{flex-shrink:0;padding:20px}.division-form-modal .division-form{display:flex;flex-direction:column;min-height:0;padding:20px}.division-form-modal .division-form-layout{overflow-y:auto}.division-form-modal .form-actions{flex-shrink:0}.division-form-modal-edit{width:min(94vw,1200px);max-width:1200px;max-height:90vh;overflow:hidden}.division-form-modal-edit .division-form{display:flex;flex-direction:column;max-height:calc(90vh - 72px)}.division-form-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:0;min-height:0}.division-form-modal-edit .division-form-layout{grid-template-columns:repeat(2,minmax(0,1fr));overflow-y:auto}.division-form-modal-edit .form-actions{flex-shrink:0}.division-properties-panel,.division-players-panel{min-width:0;padding:0 24px}.division-properties-panel{padding:0}.division-form-modal-edit .division-properties-panel{padding-right:24px}.division-players-panel{display:flex;flex-direction:column;padding-right:0;border-left:1px solid #e2e8f0}.division-properties-panel h4,.division-players-panel h4{margin:0 0 16px;color:#334155;font-size:1rem}.division-players-heading{display:flex;align-items:center;justify-content:space-between}.division-players-heading span{color:#64748b;font-size:.8rem}.division-player-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px}.division-player-filters input{min-width:0;padding:9px 10px;color:#334155;background:#fff;border:1px solid #d7dde5;border-radius:5px}.division-player-filters input:focus{outline:none;border-color:var(--club-main-color, #3498db);box-shadow:0 0 0 2px color-mix(in srgb,var(--club-main-color, #3498db) 15%,transparent)}.division-player-grid{max-height:430px;overflow:auto;border:1px solid #e2e8f0;border-radius:6px}.division-player-grid table{width:100%;border-collapse:collapse;font-size:.875rem}.division-player-grid th,.division-player-grid td{padding:10px 12px;color:#334155;text-align:left;border-bottom:1px solid #eef2f6}.division-player-grid th{position:sticky;top:0;z-index:1;background:#f8fafc;font-size:.75rem;letter-spacing:.04em;text-transform:uppercase}.division-player-grid th:first-child,.division-player-grid td:first-child{width:42px;text-align:center}.division-player-grid tbody tr:hover{background:#f8fafc}.division-player-grid input[type=checkbox]{accent-color:var(--club-main-color, #3498db)}.division-player-empty{padding:28px!important;color:#64748b!important;text-align:center!important}.division-form-label{display:block;margin-bottom:8px;color:#2c3e50;font-size:.9rem;font-weight:500}.division-staff-options{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.division-form .form-group .division-staff-option{display:flex;align-items:center;gap:8px;padding:10px;color:#2c3e50;background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer}.division-form .form-group .division-staff-option:hover{border-color:var(--club-main-color, #3498db);background:#f8f9fa}.division-form .form-group .division-staff-option input[type=checkbox]{width:16px;height:16px;flex:0 0 16px;margin:0;accent-color:var(--club-main-color, #3498db)}.modal-backdrop{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:2500;animation:fadeIn .2s ease}.modal-content{background:#fff;border-radius:8px;box-shadow:0 4px 20px #0000004d;animation:slideUp .3s ease}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e0e0e0}.modal-header h3{margin:0;color:#2c3e50}.btn-close{background:none;border:none;font-size:2rem;color:#7f8c8d;cursor:pointer;padding:0;width:30px;height:30px;line-height:1;transition:color .2s ease}.btn-close:hover{color:#2c3e50}form{padding:20px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:6px;color:#2c3e50;font-weight:500}.form-control{width:100%;padding:10px;border:1px solid #ddd;border-radius:6px;font-size:1rem;transition:border-color .2s ease}.form-control:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.form-text{display:block;margin-top:5px;color:#7f8c8d;font-size:.85rem}.form-error{background:#fee;color:#c33;padding:12px;border-radius:6px;margin-bottom:15px;border-left:4px solid #e74c3c}.form-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:20px;border-top:1px solid #e0e0e0;margin-top:10px}.btn-primary,.btn-secondary{padding:10px 24px;border:none;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s ease}.btn-primary{background:var(--club-primary-button-color);color:#fff}.btn-primary:hover:not(:disabled){background:var(--club-secondary-button-color);transform:translateY(-2px);box-shadow:0 4px 8px color-mix(in srgb,var(--club-secondary-button-color) 30%,transparent)}.btn-primary:disabled{background:#bdc3c7;cursor:not-allowed}.btn-secondary{background:#ecf0f1;color:#2c3e50}.btn-secondary:hover{background:#bdc3c7}@media(max-width:768px){.divisions-header{align-items:center;gap:1rem;margin-bottom:1rem}.divisions-page .data-grid-wrapper{overflow:visible}.divisions-page .data-grid,.divisions-page .data-grid tbody{display:block}.divisions-page .data-grid thead{display:none}.divisions-page .data-grid tbody{padding:.75rem}.divisions-page .data-grid tbody>tr:not(.expanded-row){display:flex;flex-direction:column;margin-bottom:.75rem;overflow:hidden;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 3px #0f172a14}.divisions-page .data-grid tbody>tr:not(.expanded-row)>td{display:block;width:100%;padding:.75rem 1rem;border:0}.divisions-page .data-grid td[data-column=name]{order:1;padding-bottom:.5rem}.divisions-page .data-grid td[data-column=staff]{order:2;padding-top:.5rem;color:#64748b}.divisions-page .data-grid td[data-column=staff]:before{display:block;margin-bottom:.5rem;color:#64748b;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;content:"Staff"}.divisions-page .data-grid .actions-cell{order:3;display:flex;padding-top:.75rem;border-top:1px solid #eef2f6}.divisions-page .data-grid td[data-column=priority]{order:4;width:100%}.division-actions{width:100%;justify-content:flex-start}.view-players-button{margin-right:auto}.divisions-page .data-grid tr.expanded-row{display:block;margin:-.75rem 0 .75rem}.divisions-page .data-grid tr.expanded-row>td{display:block;width:100%;padding:.75rem}.division-player-cards{grid-template-columns:1fr}.division-section-header{gap:.75rem;padding:1rem}.division-section-header h3{font-size:1.25rem}.btn-create-division{padding:.625rem .875rem;white-space:nowrap}.division-list{max-height:none;padding:.75rem}.division-card{gap:.75rem;padding:.875rem}.division-card-content{min-width:0;gap:.5rem;width:100%}.division-info{flex-wrap:wrap;min-width:0}.division-actions{flex-wrap:wrap;justify-content:flex-end}.division-move-button{width:34px;height:34px;padding:7px}.division-form-modal{width:calc(100% - 24px);max-height:calc(100dvh - 24px);margin:0}.division-form-modal-edit{width:calc(100% - 20px);max-height:95vh}.division-form-modal-edit .division-form{max-height:calc(95vh - 72px)}.division-form-modal-edit .division-form-layout{grid-template-columns:minmax(0,1fr)}.division-form-modal-edit .division-properties-panel,.division-players-panel{padding:0}.division-players-panel{padding-top:20px;border-top:1px solid #e2e8f0;border-left:0}.division-player-filters{grid-template-columns:1fr 1fr}.division-player-grid{max-height:340px}}@media(max-width:480px){.division-staff-options{grid-template-columns:minmax(0,1fr)}.division-form-modal .form-actions>button{flex:1;min-width:0}.divisions-header{align-items:stretch;flex-direction:column}.divisions-header .btn-create-division{justify-content:center}.division-actions{gap:.4rem}.view-players-button{order:-1;width:100%;justify-content:center;margin:0}.division-staff-list{align-items:flex-start;flex-direction:column}}@media(max-width:430px){.division-card{flex-direction:column;align-items:stretch}.division-actions{width:100%}}.player-preview-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:10000;animation:fadeIn .2s ease}.player-preview-modal{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000004d;width:90%;max-width:800px;max-height:85vh;display:flex;flex-direction:column;animation:slideUp .3s ease;overflow:hidden}.player-preview-inline .player-preview-modal{width:100%;max-height:none}.player-preview-header{display:flex;justify-content:space-between;align-items:center;padding:20px 30px;border-bottom:1px solid #e0e0e0;background:linear-gradient(135deg,var(--club-primary-button-color),var(--club-secondary-button-color))}.player-preview-header h2{font-family:Oswald,Arial Narrow,sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.025em;margin:0;color:#fff;font-size:1.5rem}.player-preview-close{background:none;border:none;font-size:2rem;color:#fff;cursor:pointer;padding:0;width:30px;height:30px;line-height:1;transition:opacity .2s ease}.player-preview-close:hover{opacity:.8}.player-preview-content{display:grid;grid-template-columns:250px 1fr;gap:30px;padding:30px;overflow-y:auto}.player-preview-photo-section{display:flex;flex-direction:column;align-items:center}.player-preview-photo{width:200px;height:200px;border-radius:50%;object-fit:cover;border:4px solid var(--primary-color-start);box-shadow:0 4px 12px #00000026}.player-preview-photo-placeholder{width:200px;height:200px;border-radius:50%;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);display:flex;align-items:center;justify-content:center;border:4px solid #e0e0e0}.player-preview-photo-placeholder svg{width:100px;height:100px;color:#bdc3c7}.player-preview-info{display:flex;flex-direction:column;gap:20px}.player-preview-name{margin-bottom:10px}.player-preview-name h3{margin:0;font-size:2rem;color:#2c3e50;font-weight:700}.player-preview-section{background:#f8f9fa;padding:20px;border-radius:8px;border-left:4px solid var(--primary-color-start)}.player-preview-section h4{margin:0 0 15px;color:#2c3e50;font-size:1.1rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.player-preview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.player-preview-field{display:flex;flex-direction:column;gap:5px}.field-label{font-size:.85rem;color:#7f8c8d;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.field-value{font-size:1.1rem;color:#2c3e50;font-weight:600}.player-preview-badges{display:flex;flex-wrap:wrap;gap:8px}.player-preview-badges .division-badge{display:inline-block;padding:6px 14px;background-color:#3498db;color:#fff;border-radius:16px;font-size:.85rem;font-weight:500}.player-preview-badges .position-badge{display:inline-block;padding:6px 14px;background-color:#95a5a6;color:#fff;border-radius:16px;font-size:.85rem;font-weight:500}.player-preview-badges .position-badge.primary{background-color:#27ae60;font-weight:600}@media(max-width:768px){.player-preview-content{grid-template-columns:1fr;gap:20px}.player-preview-photo,.player-preview-photo-placeholder{width:150px;height:150px}.player-preview-photo-placeholder svg{width:70px;height:70px}.player-preview-name h3{font-size:1.5rem}}.club-page-wrapper{width:100%;max-width:100%}@media(max-width:768px){.divisions-page{padding:1rem}}.club-container{padding:var(--spacing-md);max-width:800px}.club-container h2{color:var(--text-primary);margin-bottom:var(--spacing-lg)}.loading,.error{padding:var(--spacing-xl);text-align:center}.error{color:var(--error-color);background:var(--error-bg);border-radius:var(--radius-sm)}.club-info-card{background:var(--bg-white);border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden;height:100%}.club-info-card>.app-panel-header{padding:1rem 1.5rem;background:linear-gradient(135deg,var(--club-primary-button-color),var(--club-secondary-button-color));border-bottom:2px solid color-mix(in srgb,var(--club-ui-color) 75%,#000)}.club-info-card>.app-panel-header .app-heading{margin:0;color:#fff;font-size:1rem;font-weight:600}.club-settings-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--spacing-md);align-items:stretch}.club-panel-body{padding:1.25rem 1.5rem}.club-settings-form>.message,.club-settings-actions{grid-column:1 / -1}.club-basic-info{display:grid;grid-template-columns:minmax(0,1fr) 160px;gap:1rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border-light)}@media(max-width:768px){.club-basic-info{grid-template-columns:1fr}}.text-input{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-light);border-radius:var(--radius-sm);font-size:1rem;transition:border-color var(--transition-fast)}.text-input:focus{outline:none;border-color:var(--primary-color-start);box-shadow:0 0 0 3px #667eea1a}.club-panel-body h4{color:var(--text-primary);margin:0 0 .75rem;font-size:.95rem}.club-colors-panel{margin-bottom:.5rem;padding:.75rem;background:color-mix(in srgb,var(--club-secondary-button-color) 6%,#fff);border:1px solid color-mix(in srgb,var(--club-secondary-button-color) 18%,#fff);border-radius:var(--radius-md)}.club-details-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:1rem;align-items:start}.club-details-grid .color-inputs{grid-template-columns:1fr}.club-contact-fields{margin-bottom:.75rem}.club-contact-grid{display:grid;grid-template-columns:1fr;gap:.65rem}.club-contact-grid input{width:100%;min-height:38px;padding:.5rem .65rem;border:1px solid var(--border-light);border-radius:var(--radius-sm);font:inherit}@media(max-width:1100px){.club-details-grid{grid-template-columns:1fr}}.club-public-content-panel{background:#fff}.website-sections-card{grid-column:1 / -1}.website-sections-note{margin:0 0 1rem;color:var(--text-secondary)}.website-sections-list{display:grid;gap:.5rem;margin:0;padding:0;list-style:none}.website-section-row{display:flex;align-items:center;gap:.75rem;padding:.65rem .75rem;border:1px solid var(--border-light);border-radius:var(--radius-sm)}.website-section-position{color:var(--text-secondary);font-weight:600}.website-section-name{flex:1;font-weight:600}.website-section-visibility,.website-section-order{display:flex;align-items:center;gap:.35rem}.website-section-order button{width:2rem;height:2rem;border:1px solid var(--border-light);border-radius:var(--radius-sm);background:var(--bg-white);cursor:pointer}.website-section-order button:disabled{opacity:.4;cursor:default}.club-public-content-grid{display:grid;grid-template-columns:1fr;gap:1rem}.club-slogan-field{margin-bottom:1rem}.club-slogan-field input{min-height:42px;padding:.65rem .75rem;border:1px solid var(--border-light);border-radius:var(--radius-sm);font:inherit}.club-public-content-grid textarea{width:100%;min-height:170px;padding:.75rem;border:1px solid var(--border-light);border-radius:var(--radius-sm);font:inherit;line-height:1.5;resize:vertical}.club-public-content-grid small,.cover-actions small{color:#64748b}.cover-upload-area{display:flex;align-items:center;justify-content:center;min-height:170px;overflow:hidden;background:#fff;border:1px dashed #cbd5e1;border-radius:var(--radius-sm);cursor:pointer}.cover-upload-area img{width:100%;height:170px;object-fit:cover}.cover-actions{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.cover-actions button{padding:0;background:none;color:#b91c1c;border:0;font-size:.78rem;cursor:pointer}.color-inputs{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:.5rem}@media(max-width:768px){.club-settings-form{grid-template-columns:1fr;gap:.75rem}.club-panel-body{padding:1rem}.club-public-content-grid,.club-contact-grid{grid-template-columns:1fr}.website-section-row{flex-wrap:wrap}.website-section-name{flex-basis:calc(100% - 2rem)}.color-inputs{grid-template-columns:1fr}.club-settings-form .form-actions{display:grid;grid-template-columns:1fr 1fr;gap:.625rem}.club-settings-form .form-actions .button{width:100%;min-width:0;min-height:40px;padding:.625rem .5rem;font-size:.8125rem;line-height:1.2}.club-settings-form .form-actions .button-primary{grid-column:1 / -1}}.form-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.form-group label{font-weight:600;color:var(--text-secondary);font-size:.9rem}.color-input-wrapper{display:flex;gap:var(--spacing-sm);align-items:center}.color-picker{width:42px;height:36px;border:1px solid var(--border-light);border-radius:var(--radius-sm);cursor:pointer;transition:border-color var(--transition-fast)}.color-picker:hover{border-color:var(--primary-color-start)}.color-text{flex:1;min-width:0;padding:.5rem .625rem;border:1px solid var(--border-light);border-radius:var(--radius-sm);font-family:Courier New,monospace;font-size:.8125rem;transition:border-color var(--transition-fast)}.color-text:focus{outline:none;border-color:var(--primary-color-start)}.color-preview{display:flex;align-items:center;gap:.75rem}.preview-label{font-weight:600;color:var(--text-secondary);flex-shrink:0;margin:0;font-size:.8rem}.preview-gradient{flex:1;height:32px;border-radius:var(--radius-sm);box-shadow:var(--shadow-sm)}.form-actions{display:flex;gap:.75rem;justify-content:flex-end}.message{padding:var(--spacing-sm);border-radius:var(--radius-sm);margin-bottom:var(--spacing-lg);font-size:.9rem}.message-error{background:var(--error-bg);color:var(--error-color);border-left:4px solid var(--error-border)}.message-success{background:#e8f5e9;color:#2e7d32;border-left:4px solid #4caf50}.button{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-sm);font-size:.95rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast);border:none}.button:disabled{opacity:.6;cursor:not-allowed}.button-secondary{background:var(--bg-light);color:var(--text-primary);border:1px solid var(--border-light)}.button-secondary:hover:not(:disabled){background:var(--border-light)}.button-primary{background:var(--club-primary-button-color);color:var(--text-white)}.button-primary:hover:not(:disabled){background:var(--club-secondary-button-color);transform:translateY(-2px);box-shadow:var(--shadow-primary)}.logo-upload-container{min-height:42px}.logo-upload-area{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:.5rem;min-height:42px;padding:.5rem .625rem;border:1px dashed var(--border-light);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background:var(--bg-light)}.logo-upload-area:hover{border-color:var(--primary-color-start);background:#667eea0d}.logo-upload-area svg{width:20px;height:20px;color:var(--text-light)}.logo-upload-area span{font-size:.8125rem;font-weight:500;color:var(--text-primary)}.logo-preview-wrapper{position:relative;display:inline-block}.logo-preview{max-width:130px;height:42px;object-fit:contain;border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);display:block}.remove-logo-btn{position:absolute;top:-6px;right:-6px;width:22px;height:22px;border-radius:50%;background:var(--error-color);color:#fff;border:2px solid white;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);box-shadow:var(--shadow-md)}.remove-logo-btn:hover{transform:scale(1.1);background:#c62828}.remove-logo-btn svg{width:16px;height:16px}.file-input{display:none}.dashboard-page{padding:var(--spacing-md)}@media(max-width:768px){.dashboard-page{padding:.5rem}}.user-form{display:flex;flex-direction:column}.user-form-create{gap:0}.user-form-create .form-field{margin-bottom:0}.user-form-create .user-photo-field{margin:0}.user-form-create .form-actions{margin-top:0;padding-top:.875rem}.user-about-input{resize:vertical;min-height:180px}.user-about-count{align-self:flex-end;margin-top:.25rem;color:#64748b;font-size:.75rem}.user-division-options{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.5rem}.user-division-option{display:flex;align-items:center;gap:.5rem;padding:.625rem;color:#334155;background:#fff;border:1px solid #d7dde5;border-radius:6px;cursor:pointer}.user-division-option:hover{border-color:var(--club-primary-button-color);background:#f8fafc}.user-division-option input{accent-color:var(--club-primary-button-color)}.form-error-banner{padding:1rem;background:#f8d7da;color:#721c24;border:1px solid #f5c6cb;border-radius:4px;margin-bottom:1rem}.user-form-section{width:100%;padding:1rem 0;border-bottom:1px solid #e2e8f0}.user-profile-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;padding-top:0}.user-identity-fields{display:flex;flex-direction:column}.user-identity-fields .form-field:last-child,.user-form-section>.form-field,.user-form-section.form-field{margin-bottom:0}.user-credentials-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.user-credentials-fields .form-field{margin-bottom:0}.user-password-requirements{grid-column:1 / -1;padding:.75rem .9rem;color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:7px;font-size:.8125rem}.user-password-requirements>span{color:#334155;font-weight:600}.user-password-requirements ul{display:flex;flex-wrap:wrap;gap:.4rem 1.25rem;margin:.5rem 0 0;padding:0;list-style:none}.user-password-requirements li{display:flex;align-items:center;gap:.35rem}.user-password-requirements li>span{width:1rem;color:#94a3b8;font-weight:700;text-align:center}.user-password-requirements li.valid{color:#15803d}.user-password-requirements li.valid>span{color:#16a34a}.user-photo-field{display:flex;align-items:center;gap:.875rem}.user-about-field textarea{min-height:0;flex:1}.user-about-field{display:flex;flex-direction:column;margin-bottom:0}.user-photo-field>div:last-child{display:flex;flex-direction:column;align-items:flex-start;gap:.375rem}.user-photo-preview,.user-photo-preview img{width:48px;height:48px;border-radius:50%}.user-photo-preview{display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#64748b;background:#f1f5f9;border:1px solid #dbe2ea;overflow:hidden}.user-photo-preview img{object-fit:cover}.user-photo-preview svg{width:25px;height:25px}.user-photo-button{padding:.5rem .75rem;color:#334155;background:#f8fafc;border:1px solid #d7dde5;border-radius:6px;font-size:.8125rem;font-weight:600;cursor:pointer}.user-photo-button:hover{background:#eef2f6}.user-photo-help{color:#64748b;font-size:.75rem}.form-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1rem;padding-top:1rem;border-top:1px solid #e0e0e0}@media(max-width:640px){.user-profile-fields,.user-credentials-fields{grid-template-columns:1fr;gap:0}.user-form-create .user-photo-field{margin-bottom:0}.user-division-options{grid-template-columns:1fr}.user-about-field textarea{min-height:140px}.form-actions{position:sticky;bottom:-1.5rem;margin-right:-1.5rem;margin-left:-1.5rem;padding:1rem 1.5rem;background:#fff}.form-actions button{flex:1}}.staff-profile{display:flex;flex-direction:column;gap:1rem}.staff-profile-modal .modal-header{background:linear-gradient(135deg,var(--club-primary-button-color),var(--club-secondary-button-color))}.staff-profile-modal .modal-title,.staff-profile-modal .modal-close{color:#fff}.staff-profile-modal .modal-title{font-family:Oswald,Arial Narrow,sans-serif;font-size:1.5rem;font-weight:400;text-transform:uppercase;letter-spacing:.025em}.staff-profile-hero{position:relative;min-height:330px;overflow:hidden;background:#e2e8f0;border:1px solid #d7dde5;border-radius:8px}.staff-profile-photo{display:block;width:100%;height:330px;object-fit:cover}.staff-profile-photo-placeholder{display:flex;align-items:center;justify-content:center;color:#94a3b8;background:linear-gradient(145deg,#f8fafc,#dbe2ea)}.staff-profile-photo-placeholder svg{width:110px;height:110px}.staff-profile-caption{position:absolute;right:0;bottom:0;left:0;padding:1rem 1.25rem;color:#fff;background:linear-gradient(180deg,transparent,rgba(15,23,42,.92))}.staff-profile-caption strong{display:block;font-size:1.5rem}.staff-profile-roles{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.5rem}.staff-profile-roles span,.staff-profile-divisions span{padding:.25rem .65rem;color:#fff;background:linear-gradient(135deg,var(--club-primary-button-color),var(--club-secondary-button-color));border-radius:999px;font-size:.75rem;font-weight:600}.staff-profile-roles span{border:1px solid rgba(255,255,255,.35)}.staff-profile-about,.staff-profile-divisions{padding:1rem 1.25rem;background:#f8fafc;border-left:3px solid var(--club-primary-button-color);border-radius:6px}.staff-profile-about p{margin:0;color:#475569;line-height:1.6;white-space:pre-wrap}.staff-profile-divisions{border-left-color:var(--club-secondary-button-color)}.staff-profile-divisions h4{margin:0 0 .65rem;color:#334155;font-size:.85rem;letter-spacing:.05em;text-transform:uppercase}.staff-profile-divisions div{display:flex;flex-wrap:wrap;gap:.45rem}.users-page{padding:2rem;max-width:none}.users-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.users-header h2{margin:0 0 1rem;color:#1e293b;font-size:1.625rem}.success-message{padding:.75rem 1rem;background:#d4edda;color:#155724;border:1px solid #c3e6cb;border-radius:4px;margin-bottom:1rem}.error-message{padding:.75rem 1rem;background:#f8d7da;color:#721c24;border:1px solid #f5c6cb;border-radius:4px;margin-bottom:1rem}.user-actions{display:flex;align-items:center;gap:.5rem}.user-photo-thumb,.user-photo-placeholder{width:44px;height:44px;flex-shrink:0;border-radius:50%;border:1px solid #d6d1c5}.user-photo-thumb{object-fit:cover}.user-photo-placeholder{display:flex;align-items:center;justify-content:center;color:#706b62;background:#eee8dc;font-size:.875rem;font-weight:600}.user-photo-placeholder svg{width:19px;height:19px}.roles-badges{display:flex;flex-wrap:wrap;gap:.5rem}.role-badge{display:inline-block;padding:.25rem .75rem;background:color-mix(in srgb,var(--club-secondary-button-color) 8%,#f8f5ed);color:#59514e;border:1px solid color-mix(in srgb,var(--club-secondary-button-color) 16%,#e5dfd4);border-radius:5px;font-size:.75rem;font-weight:500}.users-mobile-filters{display:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;padding:1rem;margin-bottom:1.25rem;background:#f4f0e5;border:1px solid #e1dbcf;border-radius:8px}.users-grid-filters{display:grid;gap:1rem}.users-identity-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.users-mobile-filters label,.users-grid-filters label{display:grid;gap:.5rem;min-width:0}.users-mobile-filters label span,.users-grid-filters label span{font-size:.75rem;color:#716c63;font-weight:600}.users-mobile-filters input,.users-mobile-filters select,.users-grid-filters input,.users-grid-filters select{box-sizing:border-box;width:100%;min-width:0;min-height:40px;padding:.5rem .75rem;border:1px solid #d6d1c5;border-radius:6px;background:#fffdf8;color:#42413d;font:inherit;font-size:.875rem}.staff-identity{display:flex;align-items:center;gap:.875rem;min-width:0}.staff-identity>div:last-child{min-width:0}.staff-identity strong{display:block;color:#34363a;font-weight:600;font-size:.95rem}.staff-identity span{display:block;margin-top:.3rem;color:#817a70;font-size:.825rem;overflow-wrap:anywhere}.users-page .data-grid th.actions-column{width:132px}.users-page .data-grid thead tr:first-child{background:var(--club-ui-color)}.users-page .data-grid thead tr:first-child th{color:#fff;border-bottom-color:color-mix(in srgb,var(--club-ui-color) 75%,#000)}.users-page .filter-row th{background:color-mix(in srgb,var(--club-ui-color) 8%,#fff)}.users-page .pagination-container{position:relative;background:color-mix(in srgb,var(--club-ui-color) 9%,#fff);border-color:color-mix(in srgb,var(--club-ui-color) 24%,#fff);border-top:0}.users-page .pagination-container:before{content:"";position:absolute;top:0;right:0;left:0;height:2px;background:linear-gradient(90deg,var(--club-main-color),var(--club-secondary-color));border-radius:8px 8px 0 0}.users-page .pagination-button.active{background:var(--club-ui-color);border-color:var(--club-ui-color)}@media(max-width:768px){.users-page{padding:1.5rem 0 2rem;width:100%;min-width:0;max-width:100%}.users-header{flex-direction:column;gap:1rem;margin-bottom:1rem}.users-header>div{width:100%}.users-header h2{margin-bottom:0;color:#1e293b;font-size:clamp(1.2rem,5.2vw,1.375rem);font-weight:600;line-height:1.3;letter-spacing:-.02em}.add-user-button{width:100%;justify-content:center;min-height:44px;background:var(--club-ui-color);border-radius:8px;font-size:.875rem;box-shadow:none}.success-message,.error-message{margin:.875rem 0 0;border-radius:8px}.users-mobile-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-bottom:1rem;padding:.875rem;background:color-mix(in srgb,var(--club-ui-color) 8%,#fff);border:1px solid color-mix(in srgb,var(--club-ui-color) 22%,#fff);border-left:3px solid var(--club-ui-color);border-radius:8px;box-shadow:none}.users-mobile-filters-title{grid-column:1 / -1;color:#1e293b;font-size:.8125rem;font-weight:650;letter-spacing:-.01em}.users-mobile-filters label:last-child{grid-column:1 / -1}.users-mobile-filters label{display:flex;flex-direction:column;gap:.375rem;min-width:0}.users-mobile-filters label span{color:#64748b;font-size:.71875rem;font-weight:600}.users-mobile-filters input,.users-mobile-filters select{width:100%;min-width:0;min-height:42px;padding:0 .75rem;background:#fff;color:#1f2937;border:1px solid #d7dce2;border-radius:7px;font:inherit;font-size:.875rem}.users-mobile-filters input:focus,.users-mobile-filters select:focus{outline:3px solid color-mix(in srgb,var(--primary-color-start) 16%,transparent);border-color:var(--primary-color-start)}.users-page .data-grid-container{overflow:visible;background:transparent;border-radius:0;box-shadow:none}.users-page .data-grid-wrapper{overflow:visible}.users-page .data-grid,.users-page .data-grid tbody{display:block;width:100%}.users-page .data-grid thead{display:none}.users-page .data-grid tbody{display:grid;grid-template-columns:minmax(0,1fr);gap:.625rem}.users-page .data-grid tbody tr{position:relative;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.875rem 1rem;padding:1rem;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 1px 2px #0f172a0a}.users-page .data-grid tbody tr:hover{background:#fff}.users-page .data-grid td{display:flex;flex-direction:column;gap:.3rem;min-width:0;padding:0;color:#1f2937;border:0}.users-page .data-grid td:before{content:attr(data-label);color:#64748b;font-size:.71875rem;font-weight:600;letter-spacing:0;line-height:1.2;text-transform:none}.users-page .data-grid td[data-column=email]{grid-column:1 / -1;min-height:48px;padding:0 6rem .875rem 0;border-bottom:1px solid #eef2f6;font-size:.875rem;overflow-wrap:anywhere}.users-page .data-grid td[data-column=firstName],.users-page .data-grid td[data-column=lastName]{font-size:.9375rem;font-weight:550}.users-page .data-grid td[data-column=firstName]{grid-column:1 / -1}.users-page .data-grid td[data-column=firstName]:before{display:none}.users-page .data-grid td[data-column=roles]{grid-column:1 / -1;padding-top:.125rem}.users-page .actions-cell{position:static;grid-column:1 / -1;grid-row:3;justify-self:end;display:block}.users-page .actions-cell:before{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.users-page .user-actions{gap:.375rem}.users-page .icon-button{width:38px;height:38px;padding:0;background:#fff;border:1px solid #dfe3e8;border-radius:7px}.users-page .role-badge{padding:.3rem .625rem;color:#fff;border:0;border-radius:6px;font-size:.71875rem;font-weight:600}.users-page .no-data{display:block;padding:2rem 1rem!important;background:#fff;border:1px solid #e5e7eb;border-radius:12px}}@media(max-width:390px){.users-mobile-filters{grid-template-columns:1fr}}.player-form-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.player-form-modal{background:#fff;border-radius:8px;box-shadow:0 4px 20px #0000004d;width:95%;max-width:1080px;max-height:calc(100dvh - 32px);display:flex;flex-direction:column;animation:slideUp .3s ease;overflow:hidden}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.player-form-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e0e0e0;flex-shrink:0}.player-form-header h2{margin:0;color:#2c3e50;font-size:1.25rem}.player-form-close{background:none;border:none;font-size:2rem;color:#7f8c8d;cursor:pointer;padding:0;width:30px;height:30px;line-height:1;transition:color .2s ease}.player-form-close:hover{color:#2c3e50}.player-form{padding:20px;overflow-y:auto;flex:1;min-height:0}.player-form-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}.player-form-details .player-form-section{min-width:0;padding:0 24px}.player-form-details .player-form-section:first-child{padding-left:0}.player-form-details .player-form-section:last-child{padding-right:0}.player-form-details .player-form-section+.player-form-section{border-left:1px solid #e2e8f0}.player-form>.player-form-section{padding-top:24px;border-top:1px solid #e2e8f0}.player-form-details .player-form-row{grid-template-columns:minmax(0,1fr);gap:0}.player-form-error{background-color:#fee;color:#c33;padding:10px 15px;border-radius:4px;margin-bottom:15px;border:1px solid #fcc}.player-form-section{margin-bottom:20px}.player-form-section h3{margin:0 0 15px;color:#2c3e50;font-size:.95rem;font-weight:600}.player-form-photo-section{display:flex;flex-direction:column;align-items:center;gap:16px}.photo-preview{width:120px;height:120px;border-radius:50%;border:1px solid #e0e0e0;overflow:hidden;display:flex;align-items:center;justify-content:center;background-color:#f5f5f5}.photo-preview-img{width:100%;height:100%;object-fit:cover}.photo-preview-placeholder{width:60px;height:60px;color:#bdc3c7}.photo-preview-placeholder svg{width:100%;height:100%}.photo-upload{flex:1;display:flex;flex-direction:column;gap:10px;align-items:center;max-width:100%}.btn-upload-photo{display:inline-block;padding:10px 20px;background-color:#f8f9fa;color:#334155;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-weight:500;transition:background-color .2s ease;text-align:center;width:fit-content}.btn-upload-photo:hover{background-color:#eef2f6}.photo-filename{font-size:.9rem;color:#7f8c8d;overflow-wrap:anywhere;text-align:center}.player-form-group{margin-bottom:15px}.player-form-group label{display:block;margin-bottom:6px;color:#475569;font-size:.9rem;font-weight:500}.player-form-group input{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:4px;font-size:1rem;background-color:#fff;color:#2c3e50;transition:all .2s ease}.player-form-group input:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 3px #3498db1a}.player-form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed;opacity:.6}.player-form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.player-form-checkbox-group{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.player-form-checkbox{display:flex;align-items:center;gap:8px;padding:10px;border:1px solid transparent;border-radius:4px;cursor:pointer;transition:all .2s ease;background-color:#fff}.player-form-checkbox:hover{background-color:#f8f9fa;border-color:#e2e8f0}.player-form-checkbox input[type=checkbox]{width:auto;margin:0;cursor:pointer;accent-color:var(--club-main-color, #334155)}.player-form-checkbox input[type=checkbox]:checked+span{color:#2c3e50;font-weight:600}.player-form-checkbox span{flex:1;font-size:.9rem;color:#2c3e50}.player-form-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:20px;border-top:1px solid #e0e0e0;margin-top:20px}.player-form-actions button{padding:10px 20px;border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-cancel{background-color:#fff;color:#7f8c8d;border:1px solid #ddd}.btn-cancel:hover:not(:disabled){background-color:#f8f9fa;color:#2c3e50}.btn-submit{background-color:var(--club-primary-button-color);color:#fff}.btn-submit:hover:not(:disabled){background-color:var(--club-secondary-button-color)}.btn-cancel:disabled,.btn-submit:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.player-form-modal{width:95%;max-height:calc(100dvh - 24px)}.player-form-details{grid-template-columns:minmax(0,1fr);gap:0}.player-form-details .player-form-section{padding:0}.player-form-details .player-form-section+.player-form-section{padding-top:24px;border-top:1px solid #e2e8f0;border-left:0}.player-form-row,.player-form-checkbox-group{grid-template-columns:1fr}}.players-page{padding:2rem;max-width:none}.players-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-lg)}.players-header h2{margin:0 0 1rem;color:#1e293b;font-size:1.625rem}.success-message{background-color:#d4edda;color:#155724;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius);margin-top:var(--spacing-sm);border:1px solid #c3e6cb}.error-message{background-color:#f8d7da;color:#721c24;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius);margin-top:var(--spacing-sm);border:1px solid #f5c6cb}.grid-loading{text-align:center;padding:40px;color:var(--text-secondary);font-size:1.1rem}.players-page .player-photo-cell{display:flex;align-items:center;justify-content:center}.players-page .player-photo-thumb{width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid #e0e0e0}.players-page .player-photo-placeholder{width:40px;height:40px;border-radius:50%;background-color:#f0f0f0;display:flex;align-items:center;justify-content:center;border:2px solid #e0e0e0}.players-page .player-photo-placeholder svg{width:24px;height:24px;color:#7f8c8d}.divisions-badges,.positions-badges{display:flex;flex-wrap:wrap;gap:5px}.division-badge{display:inline-block;padding:4px 10px;background:linear-gradient(135deg,var(--club-primary-button-color),var(--club-secondary-button-color));color:#fff;border-radius:12px;font-size:.75rem;font-weight:500}.position-badge{display:inline-block;padding:4px 10px;background:color-mix(in srgb,var(--club-ui-color) 68%,#94a3b8);color:#fff;border-radius:12px;font-size:.75rem;font-weight:500}.position-badge.primary{background:linear-gradient(135deg,var(--club-primary-button-color),var(--club-secondary-button-color));font-weight:600}.players-page .data-grid thead tr:first-child{background:var(--club-ui-color)}.players-page .data-grid thead tr:first-child th{color:#fff;border-bottom-color:color-mix(in srgb,var(--club-ui-color) 75%,#000)}.players-page .filter-row th{background:color-mix(in srgb,var(--club-ui-color) 8%,#fff)}.players-page .pagination-container{position:relative;background:color-mix(in srgb,var(--club-ui-color) 9%,#fff);border-color:color-mix(in srgb,var(--club-ui-color) 24%,#fff);border-top:0}.players-page .pagination-container:before{content:"";position:absolute;top:0;right:0;left:0;height:2px;background:linear-gradient(90deg,var(--club-primary-button-color),var(--club-secondary-button-color))}.player-actions{display:flex;gap:8px;align-items:center}.players-grid-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.players-birth-year-filter{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin-left:auto}.players-birth-year-filter input{width:100px;padding:.5rem;border:1px solid #cbd5e1;border-radius:6px}.players-age-filter{display:none}.players-page input[type=checkbox]{width:16px;height:16px;accent-color:var(--club-ui-color);cursor:pointer;flex-shrink:0}.player-mobile-birthdate{display:none}.btn-icon{background:none;border:none;cursor:pointer;padding:6px;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.btn-icon svg{width:18px;height:18px}.btn-edit{color:#3498db}.btn-edit:hover{background-color:#3498db1a}.btn-delete{color:#e74c3c}.btn-delete:hover{background-color:#e74c3c1a}@media(max-width:768px){.players-page .import-players-button,.players-page .players-selection-count,.players-page .players-batch-delete,.players-page .player-actions input[type=checkbox]{display:none}.players-page{width:100%;min-width:0;padding:1rem;box-sizing:border-box}.players-page .players-header-actions{width:100%;min-width:0}.players-page .players-birth-year-filter{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;margin-left:0}.players-page .players-birth-year-filter span{grid-column:1 / -1}.players-page .players-birth-year-filter input{width:100%;min-width:0;box-sizing:border-box}.players-page .players-age-filter{display:grid;gap:.5rem;width:100%}.players-page .players-age-filter input{width:100%;min-width:0;box-sizing:border-box;padding:.5rem;border:1px solid #cbd5e1;border-radius:6px}.players-header{flex-direction:column;align-items:stretch;gap:var(--spacing-md)}.add-player-button{width:100%;justify-content:center}.players-page .data-grid-container,.players-page .data-grid-wrapper{overflow:visible}.players-page .data-grid-container{background:transparent;box-shadow:none}.players-page .data-grid,.players-page .data-grid tbody{display:block;width:100%}.players-page .data-grid thead{display:none}.players-page .data-grid tbody{display:grid;gap:.625rem}.players-page .data-grid tbody tr{display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:.75rem;padding:.875rem;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 2px #0f172a0a}.players-page .data-grid td{min-width:0;padding:0;border:0}.players-page .data-grid td:before{display:none}.players-page .actions-cell{grid-column:1 / -1;grid-row:2;justify-self:end}.players-page td[data-column=photo]{grid-column:1}.players-page td[data-column=name]{grid-column:2;overflow:hidden}.players-page td[data-column=email],.players-page td[data-column=birthdate],.players-page td[data-column=age],.players-page td[data-column=division],.players-page td[data-column=positions]{display:none}.players-page .player-actions{gap:.25rem}.players-page .icon-button{width:34px;height:34px;padding:7px}.players-page .player-photo-cell{width:40px;min-width:0;padding:0!important}.players-page .player-photo-thumb,.players-page .player-photo-placeholder{width:36px;height:36px}.player-name-cell{display:flex;flex-direction:column;gap:.2rem;overflow-wrap:anywhere;color:#1e293b;font-size:.875rem;font-weight:600}.player-mobile-birthdate{display:block;color:#64748b;font-size:.75rem;font-weight:400}.players-page .pagination-container{margin-top:.75rem;grid-template-columns:minmax(0,1fr)}.players-page .pagination-page-size{justify-content:flex-start}.players-page .pagination-controls{grid-row:3;flex-wrap:wrap;min-width:0}.players-page .pagination-pages{flex-wrap:wrap;justify-content:center}}.player-batch-page{padding:2rem;min-width:0}.main-content .player-batch-page .app-heading{font-size:1.875rem}.player-batch-cancel.player-batch-back{margin-bottom:1rem;padding:.375rem .75rem;border-color:#45474c;background:transparent;color:#34363a;font-size:.8125rem;font-weight:500}.player-batch-cancel.player-batch-back:hover{background:#34363a;color:#fffdf8}.player-batch{display:grid;gap:1rem;min-width:0}.player-batch p{margin:0}.player-batch-file{display:grid;grid-template-columns:minmax(240px,360px) minmax(0,1fr);gap:1.5rem;align-items:start;padding:1.25rem;border:1px solid #d6d1c5;border-radius:8px;background:linear-gradient(145deg,#faf8f2,#ebe5d6)}.player-batch-file label>span,.player-batch-file p>strong{display:block;color:#34363a;font-size:.875rem;font-weight:600;line-height:1.5}.player-batch-file p>strong{margin-bottom:.5rem}.player-batch-file p{color:#716c63;font-size:.875rem;line-height:1.6}.player-batch-file input{width:100%;min-width:0;box-sizing:border-box}.player-batch .player-batch-file input{padding:.375rem;background:#f4f0e5;color:#59554e;font:inherit;font-size:.875rem}.player-batch-file input::file-selector-button{margin-right:.75rem;padding:.5rem .75rem;border:1px solid #d6d1c5;border-radius:4px;background:#34363a;color:#fffdf8;font:inherit;font-weight:500;cursor:pointer}.player-batch-file input::file-selector-button:hover{background:#45474c}.player-batch-file input:focus-visible{outline:2px solid #94a3b8;outline-offset:2px}.player-batch-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;color:#716c63}.player-batch label{display:grid;gap:.5rem}.player-batch .form-field{width:min(100%,360px);min-width:0;justify-self:start}.player-batch .form-label{display:block}.player-batch .form-input{box-sizing:border-box}.player-batch-password{display:grid;grid-template-columns:minmax(0,360px) minmax(0,1fr);align-items:start;gap:1.5rem;padding:1.25rem;border:1px solid #d6d1c5;border-radius:8px;background:#f4f0e5}.player-batch-password .form-field{margin-bottom:0}.player-batch-password-requirements{color:#716c63;font-size:.875rem}.player-batch-password-requirements>span{color:#34363a;font-weight:500}.player-batch-password-requirements ul{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;margin:.5rem 0 0;padding:0;list-style:none}.player-batch-password-requirements li>span:first-child{margin-right:.375rem}.player-batch-password-requirements li.valid{color:#15803d}.player-batch-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.player-batch input{padding:.6rem;border:1px solid #d6d1c5;border-radius:6px;background:#fffdf8;color:#34363a}.player-batch-table{overflow-x:auto;border:1px solid #d6d1c5;border-radius:8px;background:linear-gradient(145deg,#faf8f2,#ebe5d6)}.player-batch table{border-collapse:collapse;width:100%;font-size:.875rem}.player-batch th,.player-batch td{padding:.6rem;border-bottom:1px solid #d6d1c5;text-align:left;min-width:90px}.player-batch th{position:sticky;top:0;background:#34363a;color:#fffdf8;border-bottom-color:#45474c}.player-batch-invalid{background:#fff1f2;scroll-margin-top:100px}.player-batch-validation-summary{flex-basis:100%;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;padding:.875rem 1rem;border:1px solid #fecdd3;border-radius:6px;background:#fff1f2;color:#9f1239;font-size:.875rem}.player-batch-validation-summary button{padding:0;border:0;background:transparent;color:inherit;font:inherit;font-weight:600;text-decoration:underline;cursor:pointer}.player-batch-row-errors{color:#9f1239;min-width:220px}.player-batch-actions,.players-header-actions{display:flex;gap:.75rem;flex-wrap:wrap}.player-batch-actions{justify-content:flex-end}.player-batch-progress{display:flex;align-items:center;gap:.75rem;padding:1rem;border:1px solid #d6d1c5;border-radius:6px;background:#f0ebdf}.player-batch-progress .loading-spinner{margin:0;flex-shrink:0}.player-batch-actions .loading-spinner{width:16px;height:16px;margin:0;border-color:#fff6;border-top-color:#fff;flex-shrink:0}.player-batch-cancel{padding:.625rem 1.25rem;border:1px solid #d6d1c5;border-radius:6px;background:#f0ebdf;color:#34363a;font:inherit;font-weight:600;cursor:pointer}.player-batch-cancel:hover{background:#d6d1c5}.player-batch-cancel:disabled{opacity:.5;cursor:not-allowed}.player-batch td input{width:100%;min-width:110px;box-sizing:border-box;font:inherit}.player-batch td:nth-child(3) input{min-width:200px}.player-batch td input:focus{outline:2px solid #716c63;outline-offset:1px}.player-batch-add-row td{padding:0;border-bottom:0}.player-batch-add-row button{display:block;width:100%;padding:.875rem 1rem;border:0;background:#f4f0e5;color:#716c63;font:inherit;text-align:left;cursor:pointer}.player-batch-add-row button:hover:not(:disabled){background:#ebe5d6;color:#34363a}.player-batch-add-row button:focus-visible{outline:2px solid #94a3b8;outline-offset:-2px}.player-batch-add-row button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.player-batch-page{padding:1rem}.player-batch-file,.player-batch-password{grid-template-columns:minmax(0,1fr);gap:.75rem}}.coming-soon-page{padding:2rem}.coming-soon-page h2{margin-bottom:1.5rem;color:#333}@media(max-width:768px){.coming-soon-page{padding:1rem}.coming-soon{min-height:300px}.coming-soon p{font-size:1.05rem;padding:0 1rem}}.tournaments-page{box-sizing:border-box;width:100%;padding:2rem;min-width:0}.tournaments-header,.format-row,.fixture-actions{display:flex;justify-content:space-between;align-items:end;gap:1rem;flex-wrap:wrap}.tournaments-header{margin-bottom:1.75rem}.tournaments-header p{margin:.35rem 0 0;color:#64748b}.tournaments-page button:not(.icon-button):not(.form-button):not(.player-batch-cancel):not(.app-toast-close){padding:.65rem .9rem;border:1px solid #cbd5e1;border-radius:7px;background:#fff;cursor:pointer;font:inherit}.tournaments-page button.primary:not(.icon-button):not(.form-button):not(.player-batch-cancel){border-color:transparent;background:linear-gradient(135deg,var(--club-primary-button-color, #5b616a),var(--club-secondary-button-color, #6c444c));color:#fff;font-weight:600}.tournaments-page button.primary:not(.icon-button):not(.form-button):not(.player-batch-cancel):hover{transform:translateY(-1px);box-shadow:0 4px 10px #1e293b22}.tournaments-page button:not(.form-button):disabled{opacity:.5;cursor:not-allowed}.tournament-message{margin-bottom:1rem;padding:.8rem 1rem;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;color:#234e78}.tournament-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:1.5rem}.tournament-card{overflow:hidden;border:1px solid #ddd9d0;border-radius:16px;background:#fff;box-shadow:0 6px 22px #1e293b0d;transition:transform .18s,box-shadow .18s,border-color .18s}.tournament-card:hover,.tournament-card:focus-visible{transform:translateY(-3px);border-color:var(--club-secondary-button-color, #6c444c);box-shadow:0 12px 30px #1e293b18;outline:none}.tournament-card-cover{position:relative;height:190px;overflow:hidden;background:linear-gradient(135deg,var(--club-primary-button-color, #5b616a),var(--club-secondary-button-color, #6c444c))}.tournament-card-cover img{width:100%;height:100%;object-fit:cover}.tournament-card-placeholder{display:grid;place-items:center;width:100%;height:100%;color:#ffffffd9;background-image:radial-gradient(circle at 75% 20%,#ffffff20,transparent 36%)}.tournament-card-placeholder svg{width:82px;height:82px}.tournament-card-actions{position:absolute;top:.8rem;right:.8rem;display:flex;gap:.55rem}.tournament-card-actions .icon-button{width:46px;height:46px;border:1px solid #ffffff70;border-radius:10px;background:#fffffff2;box-shadow:0 3px 10px #0003}.tournament-card-actions .icon-button svg{width:24px;height:24px;stroke-width:1.8}.tournament-card-body{padding:1.25rem}.tournament-card-title{display:flex;align-items:start;justify-content:space-between;gap:.75rem}.tournament-card-title h3{margin:0;color:#25344a;font-size:1.25rem}.tournament-card-title span{flex-shrink:0;padding:.3rem .55rem;border-radius:999px;background:#fff3cd;color:#775c08;font-size:.72rem;font-weight:600}.tournament-card-title span.published{background:#dcfce7;color:#166534}.tournament-card-body>p{min-height:42px;margin:.75rem 0 1rem;color:#64748b;line-height:1.45}.tournament-card-stats{display:grid;grid-template-columns:repeat(3,1fr);padding:.9rem 0;border-block:1px solid #edf0f2}.tournament-card-stats div{display:grid;gap:.15rem;text-align:center}.tournament-card-stats div+div{border-left:1px solid #edf0f2}.tournament-card-stats strong{color:#25344a;font-size:1.1rem}.tournament-card-stats small{color:#7c8797}.tournament-division-cards{display:grid;gap:.65rem;margin-top:1rem}.tournament-division-card{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.8rem;border:1px solid #ded9cf;border-radius:9px;background:#faf8f3}.tournament-division-card>div:first-child{display:grid;gap:.2rem;min-width:0}.tournament-division-card strong{overflow:hidden;color:#34363a;text-overflow:ellipsis;white-space:nowrap}.tournament-division-card small{color:#74716b}.tournament-division-card>div:last-child{display:flex;gap:.4rem;flex-shrink:0}.tournament-division-card>div:last-child>span{display:inline-flex}.tournament-division-card button{padding:.45rem .6rem!important;font-size:.75rem!important}.tournament-card-files{display:flex;gap:.5rem;margin-top:1rem}.tournament-card-files span{padding:.35rem .55rem;border-radius:5px;background:#f1f5f9;color:#94a3b8;font-size:.75rem}.tournament-card-files span.ready{background:#edf7ef;color:#28713d}.tournament-manage{display:flex;justify-content:space-between;width:100%;margin-top:1rem;border:0!important;background:#f8fafc!important;color:#334155;font-weight:600!important}.tournament-empty{grid-column:1 / -1;display:grid;justify-items:center;padding:5rem 2rem;border:1px dashed #cbd5e1;border-radius:16px;color:#64748b;text-align:center}.tournament-empty svg{width:72px;color:#94a3b8}.tournament-empty h3{margin-bottom:0;color:#334155}.tournaments-page.workspace-open{width:100%;max-width:none;margin:0}.tournament-workspace{width:100%}.tournament-workspace-actions{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.tournament-workspace-actions .player-batch-back{margin-bottom:0}.tournament-context-header{margin-bottom:1.5rem;padding:1.25rem 1.5rem;border-radius:12px;background:linear-gradient(135deg,var(--club-primary-button-color),var(--club-secondary-button-color));color:#fff;box-shadow:0 4px 14px #1e293b18}.tournament-context-header span,.tournament-context-header small{display:block;color:#ffffffe0;font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.main-content .tournament-context-header .app-heading{margin:.15rem 0;color:#fff;font-size:2rem}.tournament-workspace section{position:relative;margin-bottom:1.25rem;padding:1.5rem;border:1px solid #e0e4e8;border-radius:12px;background:#fff;box-shadow:0 3px 12px #1e293b08}.step{position:absolute;right:1.25rem;top:1.1rem;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:color-mix(in srgb,var(--club-primary-button-color) 12%,#fff);color:var(--club-primary-button-color);font-weight:700}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.form-grid .wide{grid-column:1 / -1}.tournaments-page label{display:grid;gap:.4rem;font-size:.875rem}.tournaments-page input:not([type=checkbox]),.tournaments-page textarea,.tournaments-page select{box-sizing:border-box;width:100%;padding:.65rem;border:1px solid #cbd5e1;border-radius:6px;font:inherit}.tournaments-page textarea{min-height:100px;resize:vertical}.files,.candidate-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-top:1rem}.tournament-form .files{margin:1.25rem 0;padding:1.15rem;border:1px solid #ded9cf;border-radius:10px;background:#faf8f3}.tournament-form-divisions{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid #ded9cf}.tournament-form-divisions h4,.tournament-form-divisions p{margin:0 0 .65rem}.division-check{display:flex!important;align-items:center;gap:.65rem!important;padding:.75rem;border:1px solid #e3ded5;border-radius:7px;background:#fffdf8}.division-check span{margin-right:auto;font-weight:600}.division-check small{color:#713d43}.options{display:grid;gap:.5rem}.division-option{display:flex;align-items:center;gap:.75rem;padding:.7rem;border-bottom:1px solid #edf0f2}.division-option label{display:flex;align-items:center;margin-right:auto}.status{padding:.25rem .55rem;border-radius:999px;background:#fff3cd;color:#775c08;font-size:.75rem}.status.valid{background:#dcfce7;color:#166534}.status.started{background:#eee9df;color:#4b4741}.format-row{justify-content:flex-start;margin-top:1.25rem}.format-row label{min-width:150px}.groups,.rounds{display:flex;gap:1rem;overflow:auto;margin-top:1rem}.groups>div,.round{min-width:210px;padding:1rem;border-radius:8px;background:#f5f6f7}.groups span{display:block;margin-top:.5rem;padding:.5rem;background:#fff}.round article{display:grid;gap:.45rem;margin-top:.75rem;padding:.7rem;border:1px solid #dde2e7;border-radius:7px;background:#fff}.round article>div{display:grid;grid-template-columns:1fr 55px;align-items:center;gap:.5rem}.round article input{padding:.35rem!important}.round .penalties{grid-template-columns:1fr 55px 55px}.section-help{margin:-.35rem 0 1.25rem;color:#64748b;line-height:1.5}.tournament-mode-tabs{display:flex;gap:.4rem;margin:0 0 1.25rem;padding:.35rem;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc}.tournament-mode-tabs button{flex:1;border:0!important;background:transparent!important;color:#64748b;font-weight:600!important}.tournament-mode-tabs button.active{background:#fff!important;color:var(--club-primary-button-color);box-shadow:inset 0 -2px var(--club-secondary-button-color),0 2px 8px #1e293b12}.setup-progress{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:1.25rem}.setup-progress.division-progress{grid-template-columns:repeat(3,1fr)}.tournaments-page .setup-progress>button{position:relative;display:flex;align-items:center;gap:.55rem;padding:.45rem!important;border:0!important;background:transparent!important;color:#a29d94;text-align:left}.setup-progress>button:not(:last-child):after{content:"";position:absolute;left:40px;right:4px;bottom:-5px;height:2px;background:#ded9cf}.setup-progress strong{display:grid;place-items:center;width:28px;height:28px;border:1px solid #c9c2b6;border-radius:50%;background:#fffdf8}.setup-progress .active{color:#34363a!important;font-weight:700!important}.setup-progress .active strong{border-color:#34363a;background:#34363a;color:#fffdf8}.setup-progress .complete{color:#625e57!important}.setup-progress .complete strong{border-color:#8a4b52;background:#f0ebdf;color:#713d43}.setup-progress .complete:not(:last-child):after{background:#8a4b52}.setup-progress>button:disabled{opacity:.55}.wizard-actions{display:flex;justify-content:flex-end;margin-top:1.25rem;padding-top:1rem;border-top:1px solid #e2e8f0}.team-picker{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.team-pool{min-height:220px;padding:1rem;border:1px dashed #cbd5e1;border-radius:12px;background:#f8fafc}.team-pool.selected{border-color:color-mix(in srgb,var(--club-secondary-button-color) 55%,#cbd5e1);background:color-mix(in srgb,var(--club-secondary-button-color) 4%,#fff)}.team-pool-heading{display:flex;justify-content:space-between;margin-bottom:.85rem;color:#334155}.team-pool-heading span{display:grid;place-items:center;min-width:25px;height:25px;border-radius:999px;background:#e2e8f0;font-size:.75rem}.team-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:.7rem}.team-tiles>p{grid-column:1 / -1;align-self:center;color:#94a3b8;text-align:center}.tournaments-page .team-tile{display:grid;justify-items:center;gap:.4rem;min-height:132px;padding:.7rem!important;border:1px solid #e2e8f0!important;background:#fff!important;text-align:center}.team-tile:hover{border-color:var(--club-secondary-button-color)!important;transform:translateY(-2px);box-shadow:0 5px 12px #1e293b12}.team-tile small{color:#64748b}.team-crest{display:grid;place-items:center;width:58px;height:58px}.team-crest img{max-width:100%;max-height:100%;object-fit:contain}.team-crest svg{width:45px;height:45px;color:#94a3b8}.format-panel{margin-top:1.25rem;padding:1.2rem;border-radius:10px;background:#f8fafc}.format-panel h4,.format-panel p{margin-top:0}.validation-panel{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-left:4px solid var(--club-secondary-button-color)!important}.validation-panel h3,.validation-panel p{margin:.25rem 0}.fixture-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.fixture-preview-heading .section-help{margin-bottom:0}.fixture-preview{display:grid;gap:1.25rem}.fixture-preview-phase{overflow:hidden;border:1px solid #ded9cf;border-radius:12px;background:#fffdf8}.fixture-preview-title{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1rem;background:linear-gradient(135deg,#34363a,#514b4c);color:#fff}.fixture-preview-phase.playoff .fixture-preview-title{background:linear-gradient(135deg,var(--club-primary-button-color),var(--club-secondary-button-color))}.fixture-preview-title span{color:#ffffffbf;font-size:.72rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}.fixture-preview-rounds{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,520px),1fr));gap:1rem;padding:1rem}.fixture-preview-round{min-width:0;padding:.85rem;border:1px solid #e3ded5;border-radius:9px;background:#fff}.fixture-date-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:.75rem}.fixture-date-group{min-width:0;padding:.65rem;border:1px solid #eee8df;border-radius:7px;background:#fffdf8}.fixture-date-group h5{margin:0 0 .6rem;padding-bottom:.45rem;border-bottom:1px solid #e7e0d5;color:#713d43;font-size:.78rem;text-transform:uppercase;letter-spacing:.05em}.fixture-bracket-scroll{max-width:100%;padding:1rem;background:linear-gradient(90deg,#faf8f3,#fff,#faf8f3)}.fixture-bracket{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,180px) minmax(0,1fr);align-items:center;gap:.6rem;min-width:0}.fixture-bracket-wing{display:flex;align-items:center;gap:.5rem;min-width:0}.fixture-bracket-wing.right{flex-direction:row-reverse}.fixture-bracket-column{display:grid;flex:1;align-content:center;min-width:0}.fixture-bracket-column .fixture-preview-round{display:grid;gap:.6rem;border-color:#d6c9c0}.fixture-bracket-center{display:grid;justify-items:center;gap:.65rem;min-width:0}.fixture-bracket-center .fixture-preview-round{width:100%;border-color:var(--club-secondary-button-color);box-shadow:0 6px 18px #1e293b12}.fixture-bracket-trophy{display:grid;justify-items:center;gap:.25rem;color:var(--club-secondary-button-color);font-family:Oswald,Arial Narrow,sans-serif;font-size:1rem;letter-spacing:.08em;text-transform:uppercase}.fixture-bracket-trophy svg{width:58px;height:58px}.fixture-preview-round h4{margin:0 0 .75rem;color:#34363a;font-family:Oswald,Arial Narrow,sans-serif;font-size:1.05rem;font-weight:500;text-transform:uppercase;letter-spacing:.025em}.fixture-preview-match{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.35rem;min-width:0;padding:.5rem;border-radius:7px;background:#faf8f3}.fixture-preview-match+.fixture-preview-match{margin-top:.55rem}.fixture-preview-match>strong{color:#9a948a;font-size:.7rem;text-transform:uppercase}.fixture-preview-team{display:flex;align-items:center;gap:.45rem;min-width:0}.fixture-preview-team:last-child{justify-content:flex-end;text-align:right}.fixture-preview-team span{overflow:hidden;color:#34363a;font-size:.8rem;font-weight:600;text-overflow:ellipsis}.fixture-preview-team .match-crest{width:28px;height:28px;flex:0 0 28px}@media(max-width:1200px){.fixture-bracket-wing,.fixture-bracket-wing.right{flex-direction:column}.fixture-bracket-column{width:100%}}@media(max-width:700px){.fixture-bracket{grid-template-columns:1fr}.fixture-bracket-wing{order:1}.fixture-bracket-wing.right{order:2}.fixture-bracket-center{order:3}}.fixture-validation-footer{align-items:center;justify-content:flex-end}.fixture-validated{color:#28713d;font-weight:700}.playoff-arrangement{margin:1rem 0;padding:1rem;border:1px solid #ded9cf;border-radius:10px;background:#faf8f3}.playoff-arrangement h4{margin:0 0 .25rem;color:#34363a}.playoff-arrangement p{margin:0 0 1rem;color:#6b665f;font-size:.85rem}.playoff-arrangement-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:.7rem}.playoff-arrangement-match{min-width:0;padding:.75rem;border:1px solid #e3ded5;border-radius:8px;background:#fff}.playoff-arrangement-match>strong{display:block;margin-bottom:.55rem;color:#713d43;font-size:.75rem}.playoff-arrangement-match>div{display:grid;gap:.4rem}.tournaments-page .playoff-arrangement-team{display:flex;align-items:center;gap:.45rem;min-width:0;padding:.45rem!important;border-color:#e3ded5!important;background:#fffdf8!important;text-align:left;cursor:grab!important}.tournaments-page .playoff-arrangement-team.selected{border-color:var(--club-secondary-button-color)!important;background:#f4e9e8!important}.playoff-arrangement-team span:nth-child(2){min-width:0;flex:1;overflow-wrap:anywhere}.playoff-arrangement-team small,.playoff-bye{color:#827971;font-size:.7rem}.playoff-arrangement-team .match-crest{flex:0 0 27px;width:27px;height:27px}.group-distribution{margin-top:1.25rem;padding:1rem;border-radius:10px;background:#faf8f3}.group-distribution-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.group-distribution-heading h4{margin:0 0 .2rem;color:#34363a}.group-distribution-heading p{margin:0;color:#74716b;font-size:.85rem}.group-boards{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:1rem}.group-board{min-width:0;min-height:180px;padding:.85rem;border:1px dashed #c9c0b2;border-radius:10px;background:#fff;transition:border-color .2s,background .2s}.group-board.drop-target{border-color:var(--club-secondary-button-color);background:color-mix(in srgb,var(--club-secondary-button-color) 8%,#fff)}.tournaments-page .group-board-header{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem;width:100%;margin-bottom:.8rem;padding:.35rem .25rem .7rem!important;border:0!important;border-bottom:1px solid #e7e0d5!important;border-radius:0!important;background:transparent!important;color:#34363a;text-align:left}.group-board-header span{margin-left:auto;color:#74716b;font-size:.78rem}.group-board-header small{width:100%;color:var(--club-secondary-button-color)}.group-board-teams{display:grid;gap:.55rem}.tournaments-page .group-team{display:flex;align-items:center;gap:.6rem;width:100%;min-width:0;padding:.6rem!important;border:1px solid #e3ded5!important;background:#fffdf8!important;text-align:left;cursor:grab!important}.group-team:active{cursor:grabbing!important}.tournaments-page .group-team.selected{border-color:var(--club-secondary-button-color)!important;background:color-mix(in srgb,var(--club-secondary-button-color) 8%,#fff)!important}.group-team .match-crest{width:38px;height:38px;flex:0 0 38px}.group-team span:not(.match-crest){min-width:0;overflow:hidden;color:#34363a;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.group-team small{margin-left:auto;color:#74716b}.group-board-empty{margin:1.5rem 0;color:#948c80;font-size:.8rem;text-align:center}.format-note{margin:1rem 0 0;padding:.75rem 1rem;border-left:3px solid #8a4b52;background:#faf8f3;color:#625e57;line-height:1.45}.competition-home{min-height:380px}.competition-divisions{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1rem}.competition-divisions button{display:grid;gap:.4rem;padding:1.2rem!important;text-align:left}.competition-divisions strong{font-size:1.05rem}.competition-divisions span,.competition-divisions small{color:#64748b}.fixture-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.competition-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start;gap:1.25rem}.competition-layout>*,.competition-sidebar{min-width:0}.competition-phase-tabs{grid-column:1 / -1;display:flex;gap:.35rem;padding:.3rem;border:1px solid #e3ded5;border-radius:9px;background:#faf8f3}.tournaments-page .competition-phase-tabs button{flex:1;border:0!important;background:transparent!important;color:#6b665f;font-weight:600}.tournaments-page .competition-phase-tabs button.active{background:#fff!important;color:var(--club-primary-button-color, #424348);box-shadow:inset 0 -2px var(--club-secondary-button-color, #6c444c),0 2px 7px #1e293b12}.competition-layout.playoff-view{display:flex;flex-direction:column}.competition-layout.playoff-view .competition-phase-tabs,.competition-layout.playoff-view .competition-sidebar,.competition-layout.playoff-view .competition-dates{width:100%;box-sizing:border-box}.competition-layout.playoff-view .competition-sidebar{order:1}.competition-layout.playoff-view .competition-dates{order:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.competition-layout.playoff-view .competition-dates>.competition-panel-heading{grid-column:1 / -1;margin-bottom:0}.competition-layout.playoff-view .competition-dates>.match-card{margin-top:0}.competition-bracket{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,220px) minmax(0,1fr);align-items:center;gap:.75rem}.competition-bracket.final-only{display:flex;justify-content:center}.competition-bracket.final-only .competition-bracket-wing{display:none}.competition-bracket.final-only .competition-bracket-final{width:min(100%,360px)}.competition-bracket-wing{display:flex;align-items:center;gap:.6rem;min-width:0}.competition-bracket-wing.right{flex-direction:row-reverse}.competition-bracket-round{flex:1;min-width:0;padding:.7rem;border:1px solid #e3ded5;border-radius:9px;background:#fff}.competition-bracket-round h4{margin:0 0 .6rem;color:#45464a;font-family:Oswald,Arial Narrow,sans-serif;font-weight:500;text-transform:uppercase}.competition-bracket-match{display:grid;gap:.2rem;min-width:0;margin-top:.4rem;padding:.55rem;border-radius:7px;background:#faf8f3;font-size:.78rem}.competition-bracket-match b,.competition-bracket-match small{color:#91877c;font-size:.68rem;text-align:center}.competition-bracket-team{display:flex;align-items:center;gap:.35rem;min-width:0;overflow-wrap:anywhere}.competition-bracket-team .match-crest{flex:0 0 24px;width:24px;height:24px}.competition-bracket-team .match-crest svg{width:18px}.competition-bracket-team strong{margin-left:auto;white-space:nowrap}.competition-bracket-team.advanced{color:#354b3b;font-weight:700}.competition-bracket-team.out{color:#968e84}.competition-bracket-final{display:grid;justify-items:stretch;gap:.65rem;min-width:0}.competition-bracket-trophy{display:grid;justify-items:center;color:#805257;font-family:Oswald,Arial Narrow,sans-serif;text-transform:uppercase}.competition-bracket-trophy svg{width:38px;height:38px}.competition-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;padding-bottom:.85rem;border-bottom:1px solid #e8e2d9}.competition-panel-heading small{color:#7a5559;font-size:.68rem;font-weight:700;letter-spacing:.1em}.competition-panel-heading h3{margin:.2rem 0;font-family:Oswald,Arial Narrow,sans-serif;font-size:1.45rem;font-weight:500}.competition-panel-heading>svg{width:32px;color:#98757a}.competition-date-arrows{display:flex;gap:.35rem}.tournaments-page .competition-date-arrows button{width:38px;height:38px;padding:0!important;font-size:1.5rem!important;line-height:1}.competition-dates>.match-card,.competition-date-group>.match-card{margin-top:.7rem}.competition-layout .match-card{display:grid;gap:.5rem;min-width:0;padding:.85rem;border:1px solid #e3ded5;border-radius:9px;background:#fff}.competition-layout .match-card>.match-team{display:grid;grid-template-columns:34px minmax(0,1fr) 58px;align-items:center;gap:.5rem;min-width:0}.competition-layout .match-team>span:nth-child(2){min-width:0;overflow-wrap:anywhere}.competition-layout .match-card input{padding:.4rem!important;text-align:center}.competition-layout .match-card .penalties{display:grid;grid-template-columns:minmax(0,1fr) 58px 58px;gap:.5rem;align-items:center}.competition-layout .match-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.5rem}.competition-layout .match-actions button{min-width:0;white-space:normal}.competition-date-group{margin-top:1rem;padding:.85rem;border:1px solid #e5dfd5;border-radius:9px;background:#faf8f3}.competition-date-group h4,.competition-table h4,.competition-playoff-round h4{margin:0 0 .6rem;color:#45464a;font-family:Oswald,Arial Narrow,sans-serif;font-weight:500;text-transform:uppercase}.competition-sidebar .standings-list{gap:1rem;overflow:visible}.competition-sidebar .standings-list table{table-layout:fixed;white-space:normal;font-size:.83rem}.competition-sidebar .standings-list th,.competition-sidebar .standings-list td{padding:.5rem .2rem}.competition-sidebar .standings-list th:nth-child(2){width:48%}.competition-sidebar .standing-team{max-width:100%;gap:.35rem}.competition-sidebar .standing-team>span:last-child{min-width:0;overflow-wrap:anywhere}.competition-sidebar .standing-team .match-crest{flex:0 0 26px;width:26px;height:26px}.competition-sidebar tr.qualifying{background:#f2eee5}.qualifying-note{margin:.8rem 0 0;color:#75685b;font-size:.75rem}.competition-champion{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;padding:.85rem;border:1px solid #d6c29d;border-radius:9px;background:linear-gradient(120deg,#fbf6e9,#f5eee0)}.competition-champion>svg{flex:0 0 34px;width:34px;color:#9a7436}.competition-champion>div{display:grid;min-width:0}.competition-champion small{color:#806738;font-size:.65rem;font-weight:700;letter-spacing:.08em}.competition-champion strong{overflow-wrap:anywhere}.competition-champion .match-crest{margin-left:auto}.round{min-width:285px}.round .match-card>.match-team{grid-template-columns:38px minmax(0,1fr) 55px}.match-card time{color:#64748b;font-size:.72rem;text-align:center}.match-crest{display:grid;place-items:center;width:34px;height:34px}.match-crest img{max-width:100%;max-height:100%;object-fit:contain}.match-crest svg{width:27px;color:#94a3b8}.match-actions{display:grid!important;grid-template-columns:1fr!important}.match-actions button{padding:.45rem!important;font-size:.75rem!important}.standing-team{display:inline-flex;align-items:center;gap:.6rem}.standing-team .match-crest{width:30px;height:30px}.tracking-workspace{display:grid;gap:1.25rem;min-width:0}.tournament-workspace:has(.tracking-workspace)>.tournament-workspace-actions{display:none}.tracking-workspace>.tournament-workspace-actions{margin-bottom:0}.tournament-workspace:has(.tracking-workspace)>.tournament-context-header{display:none}.tracking-header{display:grid;gap:1.25rem;padding:1.5rem;border-radius:12px;background:linear-gradient(135deg,var(--club-primary-button-color, #3d3f43),var(--club-secondary-button-color, #70474e));color:#fff}.tracking-header small{font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.main-content .tracking-header .app-heading{margin:.15rem 0;color:#fff;font-size:2rem}.tracking-header p{margin:0;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.tracking-matchup{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:1rem;max-width:760px;width:100%;margin:auto}.tracking-matchup>div{display:grid;justify-items:center;gap:.5rem;min-width:0;text-align:center}.tracking-matchup .match-crest{width:68px;height:68px}.tracking-matchup .match-crest svg{width:56px}.tracking-matchup strong{overflow-wrap:anywhere}.tracking-content{display:grid;gap:1.25rem}.tracking-content section{min-width:0;padding:1.5rem;border:1px solid #e3ded5;border-radius:12px;background:#fff}.tracking-content h4{margin:0 0 .3rem;font-size:1.1rem}.tracking-content .section-help{margin:0 0 1.25rem}.tracking-schedule,.event-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;align-items:end}.tracking-content label{display:grid;gap:.35rem;min-width:0}.tracking-content input,.tracking-content select{box-sizing:border-box;width:100%;padding:.6rem;border:1px solid #cbd5e1;border-radius:6px;font:inherit}.tracking-actions{display:flex;justify-content:flex-end;gap:.75rem;padding-bottom:1rem}.event-list{display:grid;gap:.5rem}.event-list>div{display:grid;grid-template-columns:90px minmax(120px,1fr) minmax(100px,1fr) 70px auto;align-items:center;gap:.6rem;padding:.55rem;border-bottom:1px solid #e2e8f0}.event-kind{font-size:.78rem;font-weight:700}.event-kind.YellowCard{color:#a16207}.event-kind.RedCard{color:#dc2626}@media(max-width:800px){.tournaments-page{padding:1rem}.tournament-cards,.form-grid,.team-picker{grid-template-columns:1fr}.setup-progress span{display:none}.tracking-content section{padding:1rem}.main-content .tracking-header .app-heading{font-size:1.65rem}.tracking-matchup .match-crest{width:48px;height:48px}.tracking-schedule,.event-form{grid-template-columns:1fr}.fixture-preview-heading{align-items:stretch;flex-direction:column}.fixture-preview-heading button{width:100%}.group-distribution-heading{align-items:stretch;flex-direction:column}.event-list>div{grid-template-columns:80px 1fr auto}.event-list>div>span:nth-of-type(2),.event-list>div>small{grid-column:2}}@media(max-width:1100px){.tournaments-page{padding:1.5rem}.files,.candidate-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.competition-layout{grid-template-columns:1fr}.competition-bracket-wing,.competition-bracket-wing.right{flex-direction:column}.competition-bracket-round{width:100%;box-sizing:border-box}}@media(max-width:600px){.tournaments-page{padding:.85rem}.tournaments-header{align-items:stretch}.tournaments-header>button{width:100%}.tournament-card-cover{height:165px}.tournament-card-body{padding:1rem}.tournament-card-title{display:grid}.tournament-card-title span{justify-self:start}.tournament-division-card{align-items:stretch;flex-direction:column}.tournament-division-card>div:last-child{display:grid;grid-template-columns:1fr 1fr}.tournament-division-card>div:last-child>span,.tournament-division-card button{width:100%}.tournament-context-header{padding:1rem}.main-content .tournament-context-header .app-heading{font-size:1.65rem}.tournament-workspace section{padding:1rem}.files,.candidate-grid{grid-template-columns:1fr}.division-option{align-items:flex-start;flex-wrap:wrap}.division-option label{width:100%}.format-row{align-items:stretch}.format-row label,.format-row button{width:100%}.fixture-actions{align-items:stretch}.fixture-actions button{flex:1 1 100%}.groups,.rounds{margin-right:-1rem;padding-right:1rem}.validation-panel,.fixture-heading{align-items:stretch;flex-direction:column}.validation-panel button{width:100%}.team-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.competition-layout.playoff-view .competition-dates,.competition-bracket{grid-template-columns:1fr}.competition-bracket-final{order:3}}.standings-list{display:grid;gap:1.5rem;overflow-x:auto}.standings-list table{width:100%;border-collapse:collapse;white-space:nowrap}.standings-list th,.standings-list td{padding:.6rem;border-bottom:1px solid #e2e8f0;text-align:center}.standings-list th:nth-child(2),.standings-list td:nth-child(2){text-align:left}.guest-clubs-page{padding:2rem;min-width:0}.guest-clubs-heading,.guest-club-form-actions{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.guest-clubs-intro{color:#64748b;margin:.5rem 0 1.5rem}.guest-clubs-search{display:grid;gap:.5rem;max-width:360px;margin-bottom:1rem;font-size:.875rem}.guest-clubs-page input:not([type=checkbox]){padding:.625rem .75rem;border:1px solid #cbd5e1;border-radius:6px;width:100%;box-sizing:border-box;font:inherit}.guest-club-logo-preview{width:100px;height:100px;object-fit:contain;padding:.5rem;border:1px solid #e2e8f0;border-radius:6px;background:#fff}.guest-club-status{padding:.25rem .6rem;border-radius:4px;background:#edf7ef;color:#256336;font-size:.8rem}.guest-club-status.inactive{background:#f1f2f4;color:#64748b}.guest-club-form-actions>button:first-child{padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:5px;background:#fff;color:#374151;cursor:pointer;font:inherit}.guest-clubs-workspace{display:grid;grid-template-columns:minmax(0,1fr);gap:1.5rem;align-items:start}.guest-clubs-workspace.has-selection{grid-template-columns:270px minmax(0,1fr)}.guest-clubs-library{min-width:0}.guest-clubs-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1.25rem}.guest-club-card{position:relative;padding:1rem;border:1px solid #d6d1c5;border-radius:16px 16px 24px 24px;background:linear-gradient(145deg,#faf8f2,#ebe5d6);box-shadow:0 5px 18px #2525250a,inset 0 0 0 5px #ffffff50;color:#303238;min-width:0}.guest-club-card:before{content:"";display:block;width:42px;height:3px;margin:-.2rem auto .75rem;border-radius:3px;background:var(--club-secondary-button-color, #6c444c)}.guest-club-card.selected{border-color:var(--club-secondary-button-color, #6c444c);box-shadow:0 0 0 1px var(--club-secondary-button-color, #6c444c),0 5px 18px #25252512}.guest-club-card-top{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.guest-club-card-top button{background:transparent;border:0;color:#5e5b54;font:inherit;font-size:.8rem;cursor:pointer;padding:.35rem}.guest-club-crest{display:flex;align-items:center;justify-content:center;height:175px;margin:.75rem 0}.guest-club-crest img{max-width:150px;max-height:165px;object-fit:contain;filter:drop-shadow(0 4px 3px #29292918)}.guest-club-crest svg{width:125px;height:145px;color:#aaa79c}.guest-club-card h3{margin:0 0 1.25rem;text-align:center;font-size:1.35rem;font-weight:750;letter-spacing:-.025em;overflow-wrap:anywhere}.guest-club-card-caption{display:block;padding:.75rem 0;border-top:1px solid #bdb6a655;color:#777269;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em}.guest-club-card-divisions{display:grid;gap:.5rem}.guest-club-card-divisions button{display:flex;justify-content:space-between;align-items:center;gap:.75rem;width:100%;padding:.75rem;border:1px solid #d5d0c5;border-radius:6px;background:#ffffff70;color:#42413d;text-align:left;font:inherit;cursor:pointer;transition:background .15s}.guest-club-card-divisions strong{font-size:.9rem;overflow-wrap:anywhere}.guest-club-card-divisions small{display:block;margin-top:.25rem;color:#777269;font-size:.75rem}.guest-club-card-divisions button:hover{background:#fff}.guest-club-card-divisions button[aria-pressed=true]{background:var(--club-secondary-button-color, #6c444c);border-color:transparent;color:#fff}.guest-club-card-divisions button[aria-pressed=true] small{color:#ffffffc9}.guest-club-card button:focus-visible,.guest-clubs-panel-heading button:focus-visible{outline:2px solid #68635b;outline-offset:3px}.guest-club-card button:disabled{opacity:.5;cursor:not-allowed}.guest-clubs-empty{padding:2rem;border:1px dashed #d1d5db;border-radius:12px;text-align:center;color:#737373}.guest-clubs-roster-panel{min-width:0;padding:1.25rem;border:1px solid #ffffff80;border-radius:12px;background:#dce0e3bd;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);scroll-margin-top:90px}.guest-clubs-panel-heading{display:flex;align-items:center;justify-content:space-between;padding-bottom:1rem;border-bottom:1px solid #aab1b655;color:#596068;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.guest-clubs-panel-heading button{border:0;background:transparent;color:#596068;font-size:1.5rem;cursor:pointer;padding:0 .25rem}.guest-roster.guest-roster-embedded{padding:0}.guest-roster-embedded .app-heading{margin:1.25rem 0;font-size:1.35rem;overflow-wrap:anywhere}.guest-club-form{display:grid;gap:1.25rem}.guest-club-form>label{display:block;font-weight:500}.guest-club-form>label>input:not([type=checkbox]){display:block;margin-top:.5rem}.guest-club-form small{color:#64748b;font-weight:400}.guest-club-form fieldset{border:0;border-top:1px solid #e2e8f0;padding:1rem 0 0;margin:0}.guest-club-options{display:grid;gap:.5rem;margin-top:.75rem}.guest-club-options label{display:flex;gap:.5rem;align-items:center;padding:.75rem;border:1px solid #e2e8f0;border-radius:5px}.guest-club-form-actions{justify-content:flex-end;border-top:1px solid #e2e8f0;padding-top:1rem}.guest-club-card-top>div{display:flex;gap:.25rem}.guest-club-delete-error{display:grid;gap:1rem}.guest-club-delete-error p{margin:0;color:#475569;line-height:1.5}.guest-club-delete-error button{justify-self:end}.guest-club-toggle input{margin-right:.5rem}.guest-roster td:nth-child(3) input{min-width:140px}.guest-roster .player-batch>fieldset{border:0;padding:0;margin:0;min-width:0}.guest-roster .player-batch-toolbar{padding:1rem 0}.guest-roster-notice{color:#64748b;font-size:.875rem}.guest-roster-subheading{margin:0 0 1rem;font-size:1rem;font-weight:500;color:#59554e}.guest-roster-crest{width:48px;height:48px;object-fit:contain}.guest-roster-success{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;border:1px solid #b6d9be;border-left:4px solid #2f7d46;border-radius:8px;background:linear-gradient(135deg,#edf7ef,#e2f0e5);color:#245c34;box-shadow:0 2px 6px #245c340a}.guest-roster-success svg{width:26px;height:26px;flex-shrink:0}.guest-roster-success strong{font-size:.9375rem;font-weight:600}@media(max-width:900px){.guest-clubs-workspace.has-selection{grid-template-columns:minmax(0,1fr)}}@media(max-width:768px){.guest-clubs-page,.guest-clubs-roster-panel{padding:1rem}}.facilities-page{min-width:0;padding:2rem 1rem}.facilities-page>.app-title-row{margin-bottom:1.5rem}.facilities-section{padding:1.5rem;margin-bottom:1.5rem;background:linear-gradient(145deg,#faf8f2,#ebe5d6);border:1px solid #d6d1c5;border-radius:10px;box-shadow:0 2px 5px #34363a0a}.facilities-section h3{margin:0 0 .75rem;color:#334155}.facilities-section small,.facilities-empty{color:#64748b}.facilities-section-header,.facilities-description-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.facilities-description-footer{margin:.75rem 0 0}.facilities-toolbar{display:flex;flex-wrap:wrap;gap:.4rem;padding:.6rem;border:1px solid #45474c;border-bottom:0;border-radius:6px 6px 0 0;background:#34363a}.facilities-toolbar button{padding:.5rem .65rem;background:#ffffff0d;color:#faf8f2;border:1px solid #ffffff33;border-radius:4px;cursor:pointer}.facilities-toolbar button:hover:not(:disabled){background:#ffffff1f}.facilities-editor{min-height:180px;max-height:450px;overflow:auto;overflow-wrap:anywhere;padding:1rem;border:1px solid #d6d1c5;border-radius:0 0 6px 6px;line-height:1.6;background:#fffdf8;color:#34363a}.facilities-editor:focus{outline:2px solid var(--club-ui-color);outline-offset:1px}.facilities-editor ul,.facilities-editor ol{padding-left:1.5rem}.facilities-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.facilities-card{min-width:0;overflow:hidden;border:1px solid #d6d1c5;border-radius:8px;display:flex;flex-direction:column;background:#fffdf8;box-shadow:0 2px 4px #34363a0d}.facilities-card>img,.facilities-no-photo{width:100%;height:170px;object-fit:cover}.facilities-no-photo{display:grid;place-items:center;background:#f0ebdf;color:#716c63}.facilities-card-content{padding:1rem;display:flex;flex-direction:column;flex:1;overflow-wrap:anywhere}.facilities-card-content h4{margin:0 0 .5rem;color:#34363a}.facilities-card-content p{white-space:pre-wrap;color:#716c63;margin:0 0 1rem;flex:1}.facilities-card-actions{display:flex;flex-wrap:wrap;gap:.5rem}.facilities-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem}.facilities-form-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.5rem}.facilities-form-fields{display:flex;flex-direction:column;gap:.5rem;min-width:0}.facilities-form-fields input:not([type=checkbox]),.facilities-form-fields textarea{width:100%;box-sizing:border-box;padding:.7rem;border:1px solid #d7dce2;border-radius:6px;font:inherit}.facilities-form-fields textarea{resize:vertical}.facilities-checkbox{display:flex;align-items:center;gap:.5rem}.facilities-preview{display:grid;place-items:center;min-height:180px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#64748b}.facilities-preview img{width:100%;max-height:250px;object-fit:contain}.facilities-success{color:#15803d}.facilities-section .facilities-limit-error{color:#b91c1c}.facilities-page button:disabled{opacity:.55;cursor:not-allowed}@media(max-width:1024px){.facilities-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.facilities-page{padding:1.5rem 0}.facilities-section{padding:1rem}.facilities-section-header,.facilities-description-footer{flex-direction:column;align-items:stretch}.facilities-section-header button,.facilities-description-footer button{width:100%;justify-content:center}.facilities-cards,.facilities-form-grid{grid-template-columns:minmax(0,1fr)}.facilities-actions{flex-direction:column-reverse}.facilities-page button,.facilities-item-form button{min-height:44px}.facilities-form-fields input,.facilities-form-fields textarea{font-size:16px}}.partners-page{padding:2rem}.partners-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:2rem}.partners-header h2{margin:0;color:#1e293b;font-size:1.625rem}.partners-page .data-grid thead tr:first-child{background:var(--club-ui-color)}.partners-page .data-grid thead tr:first-child th{color:#fff}.partners-page .filter-row th,.partners-page .pagination-container{background:color-mix(in srgb,var(--club-ui-color) 8%,#fff)}.partner-grid-photo{display:block;width:72px;height:44px;object-fit:contain;background:#fff;border:1px solid #e2e8f0;border-radius:6px}.partner-badge{display:inline-block;padding:.3rem .7rem;background:#64748b;color:#fff;border-radius:999px;font-size:.75rem;font-weight:600}.partner-badge.featured{background:linear-gradient(135deg,var(--club-primary-button-color),var(--club-secondary-button-color))}.partner-actions{display:flex;gap:.5rem}.partners-mobile-filter{display:none}.partner-form-grid{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:1.5rem}.partner-fields{display:flex;flex-direction:column;gap:.6rem}.partner-fields input:not([type=checkbox]){min-height:44px;padding:.75rem;border:1px solid #d7dce2;border-radius:6px}.partner-fields small{color:#64748b}.partner-featured-option{display:flex;align-items:center;gap:.6rem;margin:.5rem 0;padding:.75rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px}.partner-featured-option input{width:17px;height:17px;accent-color:var(--club-ui-color)}.partner-preview{display:flex;align-items:center;justify-content:center;min-height:180px;padding:1rem;color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.partner-preview img{width:100%;max-height:180px;object-fit:contain}.partner-form-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e2e8f0}@media(max-width:768px){.partners-page{padding:1.5rem 0 2rem}.partners-header{flex-direction:column;margin-bottom:1rem}.add-partner-button{width:100%;justify-content:center;min-height:44px}.partners-mobile-filter{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1rem;padding:.875rem;background:color-mix(in srgb,var(--club-ui-color) 8%,#fff);border-left:3px solid var(--club-ui-color);border-radius:8px}.partners-mobile-filter label{color:#64748b;font-size:.75rem;font-weight:600}.partners-mobile-filter input{min-height:42px;padding:.65rem;border:1px solid #d7dce2;border-radius:6px}.partners-page .data-grid-container,.partners-page .data-grid-wrapper{overflow:visible;background:transparent;box-shadow:none}.partners-page .data-grid,.partners-page .data-grid tbody{display:block;width:100%}.partners-page .data-grid thead{display:none}.partners-page .data-grid tbody{display:grid;gap:.625rem}.partners-page .data-grid tbody tr{position:relative;display:grid;grid-template-columns:80px minmax(0,1fr);gap:.75rem;align-items:center;padding:1rem;background:#fff;border:1px solid #e2e8f0;border-radius:10px}.partners-page .data-grid td{min-width:0;padding:0;border:0}.partners-page .data-grid td:before{display:none}.partners-page .actions-cell{position:absolute;top:.75rem;right:.75rem}.partners-page td[data-column=photoUrl]{grid-row:1 / span 2}.partners-page td[data-column=name],.partners-page td[data-column=isFeatured]{grid-column:2;padding-right:5rem}.partner-form-grid{grid-template-columns:1fr}.partner-preview{grid-row:1;min-height:130px}.partner-form-actions{flex-direction:column-reverse}.partner-form-actions .button{width:100%}}.public-partners{width:100%;background:#fff;border-top:1px solid #e5e7eb}.public-featured-partners{display:flex;width:100%;min-height:180px;overflow-x:auto}.public-featured-partner{display:flex;flex:1 0 min(250px,50vw);flex-direction:column;align-items:center;justify-content:center;gap:.75rem;min-width:0;min-height:180px;padding:1.5rem;color:#fff;background:color-mix(in srgb,var(--public-primary) 82%,#4b5057);text-decoration:none}.public-featured-partner.secondary{background:color-mix(in srgb,var(--public-secondary) 82%,#4b5057)}.public-featured-partner img{width:100%;height:88px;object-fit:contain;filter:brightness(0) invert(1)}.public-partners-track{width:100%;min-height:180px;padding:1.25rem clamp(1rem,4vw,3rem);overflow:hidden}.public-partners-rail{display:flex;width:max-content;min-width:200%;animation:partners-train 28s linear infinite;will-change:transform}.public-partners-track:hover .public-partners-rail{animation-play-state:paused}.public-partners-group{display:flex;flex:0 0 50%;align-items:stretch;justify-content:space-around;gap:1rem;min-width:50%;padding:.25rem .5rem}@keyframes partners-train{to{transform:translate(-50%)}}.public-partner-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;min-height:130px;width:clamp(150px,16vw,220px);flex:0 0 clamp(150px,16vw,220px);padding:1rem;background:transparent;border:0;text-decoration:none}a.public-featured-partner,a.public-partner-card{cursor:pointer}a.public-featured-partner:focus-visible,a.public-partner-card:focus-visible{outline:3px solid #fff;outline-offset:-5px}.public-partner-card img{width:100%;height:76px;object-fit:contain;filter:grayscale(1);opacity:.76;transition:filter .2s ease,opacity .2s ease}.public-partner-card:hover img{filter:grayscale(1) contrast(1.15);opacity:1}@media(max-width:768px){.public-featured-partners{min-height:150px;overflow-x:hidden}.public-featured-partner{flex:1 1 0;min-height:150px;padding:.75rem .4rem}.public-featured-partner img{height:64px}.public-partners-track{min-height:150px;padding:.75rem 1rem}.public-partner-card{min-height:125px}.public-partner-card img{height:64px}}@media(prefers-reduced-motion:reduce){.public-partners-rail{animation:none}.public-partners-track{overflow-x:auto}}.club-public-site{display:flex;flex-direction:column;min-height:100vh;background:#f4f0e5;color:#34363a;scroll-behavior:smooth}.club-public-site{--public-matte-primary: color-mix(in srgb, var(--public-primary) 35%, #5b616a);--public-matte-secondary: color-mix(in srgb, var(--public-secondary) 35%, #5b616a)}.club-public-site :is(h1,h2,h3,h4),.public-staff-caption strong{font-family:Oswald,Arial Narrow,sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.025em}.club-public-site main{flex:1}.club-public-site .public-partners{background:#fff;border-top-color:#dedede}.club-public-site .public-partner-card{background:transparent}.public-site-header{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:clamp(1rem,3vw,2.5rem);min-height:76px;padding:.75rem clamp(1rem,5vw,4rem);background:linear-gradient(145deg,#faf8f2,#ebe5d6);border-bottom:2px solid var(--public-matte-secondary);box-shadow:0 2px 10px #0f172a12;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.public-site-brand{display:flex;align-items:center;gap:.75rem;min-width:0;color:#172033;text-decoration:none}.public-site-brand img{width:auto;max-width:130px;height:48px;object-fit:contain}.public-site-header nav{display:flex;align-items:center;gap:clamp(.75rem,2.5vw,2rem)}.public-site-header nav a{color:#34363a;font-size:.9rem;font-weight:650;text-decoration:none}.public-site-header nav a:hover{color:var(--public-matte-secondary)}.public-site-header-admin{margin-left:auto;padding:.7rem 1rem;color:#fff;background:linear-gradient(135deg,var(--public-matte-primary),var(--public-matte-secondary));border-radius:7px;font-size:.82rem;font-weight:700;text-decoration:none;white-space:nowrap;box-shadow:0 2px 8px #0f172a24}.public-site-hero{position:relative;display:flex;align-items:center;min-height:min(60vh,620px);padding:clamp(2rem,6vw,5rem);overflow:hidden;background:linear-gradient(135deg,var(--public-matte-primary),var(--public-matte-secondary));background-position:center;background-size:cover}.public-site-hero.with-cover:before{position:absolute;inset:0;content:"";background:linear-gradient(90deg,#25272be6,#34363a55)}.public-site-hero-content{position:relative;z-index:1;max-width:680px;color:#fff}.public-site-hero-logo{max-width:min(300px,70vw);max-height:140px;margin-bottom:1.25rem;object-fit:contain;filter:drop-shadow(0 3px 8px rgba(0,0,0,.18))}.public-site-hero h1{max-width:760px;margin:0;font-size:clamp(2rem,4.2vw,3.75rem);line-height:1.08;letter-spacing:.02em;text-wrap:balance;text-shadow:0 2px 10px rgba(0,0,0,.28)}.public-site-hero p{max-width:620px;margin:.8rem 0 1.75rem;font-size:clamp(1rem,1.6vw,1.25rem);line-height:1.5;text-wrap:balance}.public-site-section{padding:clamp(3.5rem,7vw,6rem) clamp(1rem,8vw,8rem);scroll-margin-top:74px}.public-site-section h2{margin:.25rem 0 2rem;font-size:clamp(2rem,4vw,2.5rem);letter-spacing:.025em}.public-site-kicker{color:var(--public-matte-secondary);font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.public-site-vision{display:flex;justify-content:center;background:linear-gradient(145deg,#faf8f2,#ebe5d6)}.public-site-vision>div{width:min(850px,100%);text-align:center}.public-site-vision p{margin:0;color:#59554e;font-size:clamp(1rem,2vw,1.2rem);line-height:1.85;white-space:pre-line}.public-site-staff{max-width:1440px;margin:0 auto}.public-staff-grid{display:grid;grid-template-columns:minmax(0,1000px);justify-content:center;gap:1.25rem}.public-staff-card{display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);overflow:hidden;background:#fffdf8;border:1px solid #d6d1c5;border-radius:12px;box-shadow:0 3px 12px #0f172a0f}.public-staff-card:not(.has-info){display:block;justify-self:center;width:min(320px,100%)}.public-staff-photo{position:relative;min-height:300px;background:linear-gradient(145deg,#45474c,#34363a)}.public-staff-photo>img{width:100%;height:300px;object-fit:cover}.public-staff-photo>span{display:flex;align-items:center;justify-content:center;min-height:300px;color:#fff;font-size:5rem;font-weight:700}.public-staff-caption{position:absolute;right:0;bottom:0;left:0;padding:2.5rem 1rem 1rem;color:#fff;background:linear-gradient(transparent,#0f172ae6)}.public-staff-caption strong{display:block;margin-bottom:.5rem;font-size:1.1rem}.public-staff-caption div,.public-staff-divisions{display:flex;flex-wrap:wrap;gap:.35rem}.public-staff-caption span,.public-staff-divisions span{padding:.25rem .55rem;border-radius:999px;font-size:.68rem;font-weight:650}.public-staff-caption span{background:linear-gradient(135deg,var(--public-matte-primary),var(--public-matte-secondary))}.public-staff-info{padding:1.25rem;align-self:stretch}.public-staff-info p{margin:0 0 .8rem;color:#59554e;font-size:.88rem;line-height:1.6;white-space:pre-line}.public-staff-divisions span{color:#34363a;background:#ebe5d6}.public-site-empty{color:#716c63}.public-site-facilities{background:linear-gradient(145deg,#faf8f2,#ebe5d6)}.public-facilities-content{max-width:1200px;margin:auto}.public-facilities-description{max-width:850px;color:#59554e;line-height:1.8;overflow-wrap:anywhere}.public-facilities-description ul,.public-facilities-description ol{padding-left:1.5rem}.public-facilities-gallery,.public-fields-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:1.5rem;margin-top:2rem}.public-facilities-gallery figure{margin:0;overflow:hidden;border:1px solid #d6d1c5;border-radius:8px}.public-facilities-gallery img,.public-field-card>img{display:block;width:100%;aspect-ratio:3 / 2;object-fit:cover}.public-facilities-gallery figcaption{padding:1rem;color:#59554e;font-size:.9rem;line-height:1.6;overflow-wrap:anywhere}.public-facilities-fields{margin-top:3rem}.public-facilities-fields h3{margin:0;font-size:1.5rem}.public-field-card{overflow:hidden;border:1px solid #d6d1c5;border-radius:8px;background:#f4f0e5}.public-field-card>div{padding:1.25rem;overflow-wrap:anywhere}.public-field-card h4{margin:0;font-size:1.1rem}.public-field-card p{margin:.65rem 0 0;color:#59554e;line-height:1.7;white-space:pre-line}.public-site-footer{padding:2rem clamp(1rem,5vw,4rem);color:#fff;background:linear-gradient(145deg,#34363a,#25272b)}.public-site-footer-content{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2rem;max-width:1200px;margin:auto}.public-site-contact{display:grid;gap:.6rem;justify-items:start}.public-site-contact h2{margin:0 0 .3rem;font-size:1.2rem}.public-site-contact a{display:flex;align-items:center;gap:.65rem;color:#fff;text-decoration:none;overflow-wrap:anywhere}.public-site-contact a svg{flex:none;width:20px;height:20px;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.public-site-contact a:hover{text-decoration:underline}.public-site-footer iframe{width:min(320px,100%);height:220px;border:0;border-radius:8px}.public-scroll-top{position:fixed;right:1.5rem;bottom:1.5rem;z-index:8;display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;background:linear-gradient(135deg,var(--public-matte-primary),var(--public-matte-secondary));color:#fff;border:1px solid rgba(255,255,255,.35);border-radius:50%;cursor:pointer;box-shadow:0 5px 16px #0f172a38;transition:transform .2s ease,box-shadow .2s ease}.public-scroll-top:hover{transform:translateY(-2px);box-shadow:0 7px 20px #0f172a47}.public-scroll-top svg{width:22px;height:22px}@media(max-width:768px){.public-site-footer-content{grid-template-columns:1fr}.public-site-footer iframe{width:100%}.public-scroll-top{display:none}.public-site-header{display:grid;grid-template-columns:auto 1fr;gap:.6rem 1rem;padding:.65rem 1rem}.public-site-brand{justify-content:flex-start}.public-site-brand img{height:38px}.public-site-header nav{grid-column:1 / -1;grid-row:2;justify-content:center;flex-wrap:wrap}.public-site-header-admin{grid-column:2;grid-row:1;justify-self:end;margin-left:0;padding:.6rem .75rem;font-size:.72rem}.public-site-hero{min-height:520px;padding:5rem 1.25rem 3rem;text-align:center}.public-site-hero-content{width:100%}.public-site-section{padding:3.5rem 1rem;scroll-margin-top:105px}}@media(max-width:640px){.public-staff-grid{grid-template-columns:1fr}.public-staff-card{display:block}.public-staff-photo,.public-staff-photo>img,.public-staff-photo>span{min-height:270px;height:270px}}.preview-page{position:fixed;inset:0;z-index:2000;overflow-y:auto;background:#f1f5f9;scroll-behavior:smooth}.preview-close{position:fixed;top:1rem;right:1rem;z-index:2010;display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;background:#0f172ae0;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:50%;font-size:1.8rem;line-height:1;cursor:pointer;box-shadow:0 4px 14px #0f172a33}.preview-close:hover{background:#0f172a;transform:translateY(-1px)}.frontclub-preview{display:flex;flex-direction:column;min-height:100vh;background:#f1f5f9}.preview-status{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem;background:#fff;color:#64748b;text-align:center}.preview-status.error-message{margin-bottom:0}@media(max-width:768px){.preview-close{top:.75rem;right:.75rem;width:40px;height:40px}}.kinesiology-page{padding:2rem}.kinesiology-page h2{margin-bottom:1.5rem;color:#333}.nutrition-page{padding:2rem}.nutrition-page h2{margin-bottom:1.5rem;color:#333}.coming-soon{display:flex;justify-content:center;align-items:center;min-height:400px;background:#f8f9fa;border-radius:8px;border:2px dashed #dee2e6}.coming-soon p{font-size:1.25rem;color:#6c757d;text-align:center;margin:0}.player-portal{max-width:1100px;margin:0 auto;padding:2rem}.player-portal h1{margin:0 0 1.5rem}.player-portal-panel{margin-bottom:1.5rem;padding:1.5rem;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 2px 8px #0000000f}.player-portal-panel h2{margin:0 0 1.25rem}.player-portal-panel h3{margin:1.5rem 0 .75rem}.player-portal-panel ul{margin:0;padding-left:1.5rem}.player-portal-roster{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:.75rem}.player-portal-player{display:flex;align-items:center;gap:.75rem;padding:.75rem;color:inherit;text-align:left;background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer}.player-portal-player:hover{border-color:var(--primary-color-start)}.player-portal-player img,.player-portal-avatar{flex:none;width:42px;height:42px;border-radius:50%}.player-portal-player img{object-fit:cover}.player-portal-avatar{display:grid;place-items:center;color:#fff;background:var(--primary-color-start);font-weight:700}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}.app-create-button{display:flex;align-items:center;gap:8px;padding:10px 20px;color:#fff;background:linear-gradient(135deg,var(--club-primary-button-color),var(--club-secondary-button-color));border:0;border-radius:6px;box-shadow:0 1px 2px #0f172a1f;font-weight:500;cursor:pointer;transition:all .3s ease}.app-create-button svg{width:18px;height:18px;stroke-width:2.5}.app-create-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}
