@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&family=DM+Sans:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body,div,section,article,header,footer,main,nav,aside{cursor:default;caret-color:transparent}input,textarea,select,[contenteditable=true]{cursor:text;caret-color:auto}input[type=button],input[type=submit],input[type=reset],input[type=checkbox],input[type=radio],input[type=file],input[type=range],input[type=color],select{cursor:pointer}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;scroll-behavior:smooth}body{font-family:var(--font-family-body);font-size:var(--font-size-md);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-bg-primary);min-height:100vh;overflow-x:hidden}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:var(--gradient-arena);pointer-events:none;z-index:-1}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-display);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);color:var(--color-text-primary);letter-spacing:var(--letter-spacing-tight)}h1{font-size:var(--font-size-5xl);font-weight:var(--font-weight-extrabold);margin-bottom:var(--space-6);background:linear-gradient(135deg,var(--color-text-primary) 0%,var(--color-primary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}h2{font-size:var(--font-size-3xl);margin-bottom:var(--space-5)}h3{font-size:var(--font-size-2xl);margin-bottom:var(--space-4)}h4{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-3)}h5{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-2)}h6{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);color:var(--color-text-secondary)}p{margin-bottom:var(--space-4);color:var(--color-text-secondary)}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast),text-shadow var(--transition-fast)}a:hover{color:var(--color-primary-light);text-shadow:0 0 8px var(--color-primary-glow)}strong,b{font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}small{font-size:var(--font-size-sm);color:var(--color-text-muted)}ul,ol{padding-left:var(--space-6);margin-bottom:var(--space-4)}li{margin-bottom:var(--space-2);color:var(--color-text-secondary)}li::marker{color:var(--color-primary)}input,textarea,select,button{font-family:inherit;font-size:inherit}input,textarea,select{width:100%;padding:var(--space-3) var(--space-4);background-color:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-primary);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast)}input::placeholder,textarea::placeholder{color:var(--color-text-muted)}input:hover,textarea:hover,select:hover{border-color:var(--color-border);background-color:var(--color-bg-elevated)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--color-primary);background-color:var(--color-bg-elevated);box-shadow:0 0 0 3px var(--color-primary-subtle),var(--shadow-glow-primary)}input:disabled,textarea:disabled,select:disabled{background-color:var(--color-bg-secondary);color:var(--color-text-muted);cursor:not-allowed;opacity:.6}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2394a3b8' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-4) center;padding-right:var(--space-10)}label{display:block;font-family:var(--font-family-display);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-2);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase}label.required:after{content:" *";color:var(--color-error)}.form-group{margin-bottom:var(--space-5)}.form-hint{display:block;margin-top:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-muted)}.form-error{display:block;margin-top:var(--space-2);font-size:var(--font-size-sm);color:var(--color-error)}input[type=checkbox],input[type=radio]{width:18px;height:18px;padding:0;cursor:pointer;accent-color:var(--color-primary)}input[type=date]{-moz-appearance:none;appearance:none;-webkit-appearance:none}input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;filter:invert(.7);opacity:.7;transition:opacity var(--transition-fast)}input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1}button,.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);font-family:var(--font-family-display);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;border:none;border-radius:var(--radius-lg);cursor:pointer;transition:background-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast);position:relative;overflow:hidden}button:active,.btn:active{transform:translateY(1px)}.btn-primary{background:var(--gradient-primary);color:var(--color-text-inverse);box-shadow:var(--shadow-md)}.btn-primary:hover{box-shadow:var(--shadow-glow-primary),var(--shadow-lg);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0);box-shadow:var(--shadow-md)}.btn-secondary{background-color:var(--color-bg-tertiary);color:var(--color-text-primary);border:1px solid var(--color-border)}.btn-secondary:hover{background-color:var(--color-bg-elevated);border-color:var(--color-primary);color:var(--color-primary)}.btn-danger{background-color:var(--color-error);color:#fff}.btn-danger:hover{background-color:#dc2626;box-shadow:var(--shadow-glow-error)}.btn-success{background-color:var(--color-success);color:#fff}.btn-success:hover{background-color:#059669;box-shadow:var(--shadow-glow-success)}.btn-warning{background-color:var(--color-warning);color:var(--color-text-inverse)}.btn-warning:hover{background-color:#d97706;box-shadow:var(--shadow-glow-warning)}.btn-outline{background-color:transparent;color:var(--color-primary);border:2px solid var(--color-primary)}.btn-outline:hover{background-color:var(--color-primary);color:var(--color-text-inverse);box-shadow:var(--shadow-glow-primary)}.btn-ghost{background-color:transparent;color:var(--color-text-secondary)}.btn-ghost:hover{background-color:var(--color-bg-tertiary);color:var(--color-text-primary)}.btn-sm{padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs)}.btn-lg{padding:var(--space-4) var(--space-8);font-size:var(--font-size-md)}button:disabled,.btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}button:disabled:hover,.btn:disabled:hover{transform:none;box-shadow:none}table{width:100%;border-collapse:collapse;margin-bottom:var(--space-6)}th,td{padding:var(--space-4);text-align:left;border-bottom:1px solid var(--color-border-light)}th{font-family:var(--font-family-display);font-weight:var(--font-weight-semibold);font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider);background-color:var(--color-bg-secondary)}tbody tr{transition:background-color var(--transition-fast)}tbody tr:hover{background-color:var(--color-bg-tertiary)}.card{background-color:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);padding:var(--space-6);margin-bottom:var(--space-4);box-shadow:var(--shadow-md);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast);position:relative;overflow:hidden}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gradient-primary);opacity:0;transition:opacity var(--transition-fast)}.card:hover{border-color:var(--color-border);box-shadow:var(--shadow-lg)}.card:hover:before{opacity:1}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border-light)}.card-title{font-family:var(--font-family-display);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.container{max-width:var(--content-max-width);margin:0 auto;padding:0 var(--space-6)}.container-narrow{max-width:var(--content-narrow)}.container-wide{max-width:var(--content-wide)}.page{padding-top:var(--space-8);padding-bottom:var(--space-8);min-height:calc(100vh - var(--header-height))}.page.container{padding:var(--space-8) var(--space-6)}.text-center{text-align:center}.text-right{text-align:right}.text-left{text-align:left}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-muted{color:var(--color-text-muted)}.text-accent{color:var(--color-primary)}.text-error{color:var(--color-error)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.font-display{font-family:var(--font-family-display)}.font-body{font-family:var(--font-family-body)}.font-mono{font-family:var(--font-family-mono)}.font-bold{font-weight:var(--font-weight-bold)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-medium{font-weight:var(--font-weight-medium)}.uppercase{text-transform:uppercase;letter-spacing:var(--letter-spacing-wider)}.hidden{display:none!important}.invisible{visibility:hidden}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--space-2)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.loading{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:var(--space-4);padding:var(--space-12);color:var(--color-text-muted)}.spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite;box-shadow:0 0 20px var(--color-primary-glow)}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;padding:var(--space-16);color:var(--color-text-muted)}.empty-state h3{color:var(--color-text-secondary);margin-bottom:var(--space-3)}.empty-state p{max-width:400px;margin:0 auto var(--space-6)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.skip-link{position:absolute;top:-100px;left:var(--space-4);background:var(--color-primary);color:var(--color-text-inverse);padding:var(--space-3) var(--space-6);border-radius:var(--radius-lg);z-index:9999;transition:top var(--transition-fast);font-weight:var(--font-weight-semibold)}.skip-link:focus{top:var(--space-4)}@media (prefers-contrast: high){.btn{border:2px solid currentColor}.card{border:2px solid var(--color-border)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.spinner{animation:none;border-color:var(--color-primary)}}@media (max-width: 480px){html{font-size:14px}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-2xl)}.container{padding:0 var(--space-4)}.page{padding-top:var(--space-4);padding-bottom:var(--space-4)}.page.container{padding:var(--space-4) var(--space-4)}.card{padding:var(--space-4);border-radius:var(--radius-lg)}.btn{width:100%;justify-content:center}.btn+.btn{margin-top:var(--space-2)}}@media (min-width: 481px) and (max-width: 768px){.container{padding:0 var(--space-5)}}@media (min-width: 769px){.container{padding:0 var(--space-8)}}@media print{body{background:#fff;color:#000}.btn,.header,.toast-container{display:none!important}.card{box-shadow:none;border:1px solid #ccc;background:#fff}a:after{content:" (" attr(href) ")";font-size:.8em}}.toast-container{position:fixed;bottom:var(--space-6);right:var(--space-6);z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--space-3);max-width:420px;pointer-events:none}.toast{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);pointer-events:auto;opacity:0;transform:translate(100%) scale(.9);transition:opacity var(--transition-normal),transform var(--transition-bounce);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:relative;overflow:hidden}.toast:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px}.toast-visible{opacity:1;transform:translate(0) scale(1)}.toast-hidden{opacity:0;transform:translate(100%) scale(.9)}.toast-success:before{background:var(--gradient-primary);background:linear-gradient(180deg,var(--color-success) 0%,#059669 100%);box-shadow:var(--shadow-glow-success)}.toast-error:before{background:linear-gradient(180deg,var(--color-error) 0%,#dc2626 100%);box-shadow:var(--shadow-glow-error)}.toast-warning:before{background:linear-gradient(180deg,var(--color-warning) 0%,#d97706 100%);box-shadow:var(--shadow-glow-warning)}.toast-info:before{background:var(--gradient-primary);box-shadow:var(--shadow-glow-primary)}.toast-icon{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-lg)}.toast-success .toast-icon{color:var(--color-success)}.toast-error .toast-icon{color:var(--color-error)}.toast-warning .toast-icon{color:var(--color-warning)}.toast-info .toast-icon{color:var(--color-primary)}.toast-content{flex:1;min-width:0}.toast-title{font-family:var(--font-family-display);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);color:var(--color-text-primary);margin-bottom:var(--space-1)}.toast-message{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-snug)}.toast-link{display:inline-block;margin-top:var(--space-2);font-size:var(--font-size-xs);color:var(--color-primary);text-decoration:underline;text-underline-offset:2px}.toast-link:hover{color:var(--color-primary-light)}.toast-close{flex-shrink:0;background:none;border:none;padding:var(--space-1);color:var(--color-text-muted);cursor:pointer;font-size:var(--font-size-lg);line-height:1;opacity:.6;transition:opacity var(--transition-fast),color var(--transition-fast)}.toast-close:hover{opacity:1;color:var(--color-text-primary)}.status-badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);font-family:var(--font-family-display);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);border-radius:var(--radius-full);white-space:nowrap}.status-badge-draft{background-color:var(--color-bg-elevated);color:var(--color-text-secondary);border:1px solid var(--color-border)}.status-badge-pending,.status-badge-pending-approval{background-color:var(--color-warning-light);color:var(--color-warning);border:1px solid rgba(245,158,11,.3)}.status-badge-convenor-review{background-color:var(--color-info-light);color:var(--color-info);border:1px solid rgba(59,130,246,.3)}.status-badge-approved{background-color:var(--color-success-light);color:var(--color-success);border:1px solid rgba(16,185,129,.3)}.status-badge-rejected{background-color:var(--color-error-light);color:var(--color-error);border:1px solid rgba(239,68,68,.3)}.status-badge-published{background-color:var(--color-primary-subtle);color:var(--color-primary);border:1px solid rgba(0,212,255,.3);box-shadow:0 0 8px var(--color-primary-glow)}.status-badge-pending-sync{background-color:var(--color-warning-light);color:var(--color-warning);border:1px solid rgba(245,158,11,.3)}.status-badge-synced{background-color:var(--color-success-light);color:var(--color-success);border:1px solid rgba(16,185,129,.3)}.status-badge-cancelled{background-color:var(--color-bg-tertiary);color:var(--color-text-muted);border:1px solid var(--color-border)}.status-badge-sm{padding:2px var(--space-2);font-size:10px}.status-badge-lg{padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm)}.notification-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 var(--space-1);font-family:var(--font-family-display);font-size:11px;font-weight:var(--font-weight-bold);background:linear-gradient(135deg,var(--color-error) 0%,#dc2626 100%);color:#fff;border-radius:var(--radius-full);box-shadow:0 0 8px var(--color-error-glow);animation:pulse-badge 2s ease-in-out infinite}.notification-badge.hidden{display:none}@keyframes pulse-badge{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.badge{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-2);font-family:var(--font-family-display);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.badge-secondary{background-color:var(--color-bg-elevated);color:var(--color-text-secondary)}.badge-info{background-color:var(--color-primary-subtle);color:var(--color-primary)}.badge-success{background-color:var(--color-success-light);color:var(--color-success)}.badge-warning{background-color:var(--color-warning-light);color:var(--color-warning)}.badge-danger{background-color:var(--color-error-light);color:var(--color-error)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#000000bf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:var(--z-modal-backdrop);display:flex;align-items:center;justify-content:center;padding:var(--space-6);opacity:0;visibility:hidden;transition:opacity var(--transition-normal),visibility var(--transition-normal)}.modal-backdrop.open{opacity:1;visibility:visible}.modal{background:var(--gradient-surface);border:1px solid var(--color-border);border-radius:var(--radius-2xl);box-shadow:var(--shadow-2xl);max-width:560px;width:100%;max-height:90vh;overflow-x:hidden;overflow-y:auto;transform:scale(.9) translateY(20px);transition:transform var(--transition-bounce);position:relative}.modal-backdrop.open .modal{transform:scale(1) translateY(0)}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-border-light)}.modal-title{font-family:var(--font-family-display);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.modal-close{background:none;border:none;padding:var(--space-2);color:var(--color-text-muted);cursor:pointer;font-size:var(--font-size-xl);line-height:1;border-radius:var(--radius-md);transition:background-color var(--transition-fast),color var(--transition-fast)}.modal-close:hover{background-color:var(--color-bg-elevated);color:var(--color-text-primary)}.modal-body{padding:var(--space-6)}.modal-footer{display:flex;justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-top:1px solid var(--color-border-light);background-color:var(--color-bg-secondary);border-radius:0 0 var(--radius-2xl) var(--radius-2xl)}.modal-form{padding:var(--space-6)}.modal-form .form-group{margin-bottom:var(--space-4)}.modal-form .form-group:last-of-type{margin-bottom:var(--space-5)}.modal-form select,.modal-form input{width:100%;max-width:100%;box-sizing:border-box}.modal-form select{text-overflow:ellipsis;overflow:hidden}.modal-form .form-actions{display:flex;justify-content:flex-end;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--color-border-light)}.modal-overlay .modal{min-width:420px;max-width:560px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#000000bf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);animation:fadeIn .2s ease}.modal-overlay.closing{animation:fadeOut .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.modal.hidden{display:none}.confirm-dialog{background-color:var(--color-bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);min-width:320px;max-width:480px;animation:slideUp .2s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.confirm-dialog-header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border)}.confirm-dialog-header h3{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.confirm-dialog-body{padding:var(--space-5)}.confirm-dialog-body p{margin:0;color:var(--color-text-secondary);line-height:1.5}.confirm-dialog-body p+p{margin-top:var(--space-3)}.confirm-dialog-body .warning-bullets{margin:var(--space-3) 0;padding-left:var(--space-5);color:var(--color-text-secondary)}.confirm-dialog-body .warning-bullets li{margin-bottom:var(--space-2);line-height:1.4}.confirm-dialog-body .warning-bullets li:last-child{margin-bottom:0}.confirm-dialog-actions{display:flex;justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-top:1px solid var(--color-border)}.dropdown{position:relative;display:inline-block}.dropdown-menu{position:absolute;top:calc(100% + var(--space-2));right:0;min-width:220px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);z-index:var(--z-dropdown);opacity:0;visibility:hidden;transform:translateY(-8px) scale(.95);transition:opacity var(--transition-fast),visibility var(--transition-fast),transform var(--transition-fast);overflow:hidden}.dropdown.open .dropdown-menu{opacity:1;visibility:visible;transform:translateY(0) scale(1)}.dropdown-item{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);text-align:left;background:none;border:none;color:var(--color-text-primary);font-size:var(--font-size-sm);cursor:pointer;transition:background-color var(--transition-fast)}.dropdown-item:hover{background-color:var(--color-bg-elevated)}.dropdown-item:first-child{border-radius:var(--radius-xl) var(--radius-xl) 0 0}.dropdown-item:last-child{border-radius:0 0 var(--radius-xl) var(--radius-xl)}.dropdown-divider{height:1px;background-color:var(--color-border-light);margin:var(--space-2) 0}.nav-dropdown{position:relative;display:inline-flex}.nav-dropdown-toggle{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background:none;border:none;color:var(--color-text-secondary);font-family:var(--font-family-display);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;border-radius:var(--radius-lg);transition:background-color var(--transition-fast),color var(--transition-fast)}.nav-dropdown-toggle:hover{background-color:var(--color-bg-tertiary);color:var(--color-text-primary)}.nav-dropdown.open .nav-dropdown-toggle{background-color:var(--color-bg-tertiary);color:var(--color-primary)}.nav-dropdown-arrow{font-size:10px;transition:transform var(--transition-fast)}.nav-dropdown.open .nav-dropdown-arrow{transform:rotate(180deg)}.nav-dropdown-menu{position:absolute;top:calc(100% + var(--space-2));left:0;min-width:200px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);z-index:var(--z-dropdown);opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity var(--transition-fast),visibility var(--transition-fast),transform var(--transition-fast);overflow:hidden}.nav-dropdown.open .nav-dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}.nav-dropdown-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);color:var(--color-text-primary);text-decoration:none;font-size:var(--font-size-sm);transition:background-color var(--transition-fast),color var(--transition-fast)}.nav-dropdown-item:hover{background-color:var(--color-bg-elevated);color:var(--color-primary)}.nav-dropdown-item:first-child{border-radius:var(--radius-xl) var(--radius-xl) 0 0}.nav-dropdown-item:last-child{border-radius:0 0 var(--radius-xl) var(--radius-xl)}.nav-dropdown-item.has-notification{display:flex;align-items:center;justify-content:space-between}.tabs{display:flex;gap:var(--space-1);margin-bottom:var(--space-6);padding:var(--space-1);background-color:var(--color-bg-secondary);border-radius:var(--radius-xl);border:1px solid var(--color-border-light)}.tab{flex:1;padding:var(--space-3) var(--space-4);border:none;background:none;color:var(--color-text-secondary);font-family:var(--font-family-display);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;border-radius:var(--radius-lg);transition:background-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast)}.tab:hover{color:var(--color-text-primary)}.tab.active{background-color:var(--color-bg-elevated);color:var(--color-primary);box-shadow:var(--shadow-md)}.pagination{display:flex;align-items:center;justify-content:center;gap:var(--space-2);margin-top:var(--space-6)}.pagination-btn{display:flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:var(--space-2);background-color:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-secondary);font-family:var(--font-family-display);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.pagination-btn:hover:not(:disabled){background-color:var(--color-bg-elevated);border-color:var(--color-primary);color:var(--color-primary)}.pagination-btn.active{background:var(--gradient-primary);border-color:var(--color-primary);color:var(--color-text-inverse);box-shadow:var(--shadow-glow-primary)}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-info{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0 var(--space-4)}.game-card{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);background-color:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);margin-bottom:var(--space-3);transition:border-color var(--transition-fast),background-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast);position:relative}.game-card:hover{border-color:var(--color-primary);background-color:var(--color-surface-hover);box-shadow:var(--shadow-md),0 0 20px #00d4ff1a;transform:translate(4px)}.game-card.has-swap{border-left:4px solid var(--color-primary)}.game-card.is-swap-target{border-left:4px solid var(--color-warning)}.game-card.pending-sync{background-color:var(--color-warning-light);border-left:4px solid var(--color-warning)}.game-swap-status{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-1)}.swap-source-indicator,.swap-target-indicator{font-family:var(--font-family-display);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.swap-source-indicator{color:var(--color-primary)}.swap-target-indicator{color:var(--color-text-muted)}.swap-indicator{display:flex;align-items:center;gap:var(--space-2)}.swap-indicator-label{font-size:var(--font-size-xs);color:var(--color-text-muted)}.practice-card{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);background-color:var(--color-surface);border:1px solid var(--color-border-light);border-left:4px solid var(--color-text-muted);border-radius:var(--radius-xl);margin-bottom:var(--space-3);opacity:.85;transition:border-color var(--transition-fast),background-color var(--transition-fast),box-shadow var(--transition-fast),opacity var(--transition-fast)}.practice-card:hover{border-color:var(--color-text-secondary);background-color:var(--color-surface-hover);box-shadow:var(--shadow-md);opacity:1}.practice-indicator{display:flex;align-items:center;gap:var(--space-3);min-width:120px}.practice-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--color-bg-tertiary);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);color:var(--color-text-secondary)}.practice-icon svg{width:18px;height:18px}.practice-label{font-family:var(--font-family-display);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);color:var(--color-text-muted)}.practice-info{flex:1;padding:0 var(--space-4)}.practice-details{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm)}.practice-time{font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.practice-at{color:var(--color-text-muted)}.practice-arena{color:var(--color-text-secondary)}.practice-status{min-width:100px;text-align:right}.approval-list{display:flex;flex-direction:column;gap:var(--space-5)}.approval-list-header h3{margin:0 0 var(--space-2) 0}.approval-list-items{display:flex;flex-direction:column;gap:var(--space-4)}.approval-item-card{background-color:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);padding:var(--space-5);transition:border-color var(--transition-fast)}.approval-item-card:hover{border-color:var(--color-border)}.approval-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border-light)}.approval-initiator{font-family:var(--font-family-display);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.approval-date{font-size:var(--font-size-sm);color:var(--color-text-muted)}.approval-swap-details{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4)}.swap-game{flex:1;padding:var(--space-4);background-color:var(--color-bg-tertiary);border-radius:var(--radius-lg)}.swap-game .game-label{display:block;font-family:var(--font-family-display);font-size:var(--font-size-xs);color:var(--color-text-muted);margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider)}.swap-game .teams{display:block;font-family:var(--font-family-display);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-1)}.swap-game .datetime{display:block;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.swap-arrow{font-size:var(--font-size-2xl);color:var(--color-primary);flex-shrink:0}.approval-item-actions{display:flex;justify-content:flex-end;gap:var(--space-3)}.swap-detail{display:flex;flex-direction:column;gap:var(--space-6)}.swap-detail-status{display:flex;align-items:center;gap:var(--space-4)}.expiry-info{font-size:var(--font-size-sm);color:var(--color-text-muted)}.swap-detail-games{display:flex;align-items:stretch;gap:var(--space-4)}.swap-arrow-large{display:flex;align-items:center;justify-content:center;font-size:var(--font-size-3xl);color:var(--color-primary);flex-shrink:0;text-shadow:0 0 20px var(--color-primary-glow)}.swap-detail-approvals{padding:var(--space-5);background-color:var(--color-bg-tertiary);border-radius:var(--radius-xl)}.swap-detail-approvals h4{margin:0 0 var(--space-4) 0}.approvals-grid{display:flex;flex-direction:column;gap:var(--space-3)}.approval-status-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background-color:var(--color-surface);border-radius:var(--radius-lg)}.approval-icon{font-size:var(--font-size-lg);width:24px;text-align:center}.approval-status-approved .approval-icon{color:var(--color-success)}.approval-status-rejected .approval-icon{color:var(--color-error)}.approval-status-pending .approval-icon{color:var(--color-text-muted)}.approval-team{flex:1;font-family:var(--font-family-display);font-weight:var(--font-weight-medium)}.approval-status{text-transform:capitalize;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.approval-reason{font-size:var(--font-size-sm);color:var(--color-text-muted);font-style:italic}.swap-detail-actions{display:flex;justify-content:flex-end;gap:var(--space-3);padding-top:var(--space-5);border-top:1px solid var(--color-border-light)}.swap-detail-meta{text-align:center}.blackouts-page{max-width:800px;margin:0 auto}.blackouts-content{display:flex;flex-direction:column;gap:var(--space-6)}.form-container{background-color:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);padding:var(--space-6)}.form-container.hidden{display:none}.blackout-manager h3{margin:0 0 var(--space-5) 0;font-size:var(--font-size-lg)}.blackout-form{display:flex;flex-direction:column;gap:var(--space-4)}.blackout-form .form-row{display:flex;gap:var(--space-4)}.blackout-form .form-row .form-group{flex:1}.blackout-form .form-actions{display:flex;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border-light)}.blackout-list{display:flex;flex-direction:column;gap:var(--space-4)}.blackout-list .empty-state,.blackout-list .error-state{text-align:center;padding:var(--space-10);background-color:var(--color-surface);border-radius:var(--radius-xl)}.blackout-item{background-color:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);padding:var(--space-4) var(--space-5);display:flex;flex-direction:column;gap:var(--space-3);transition:border-color var(--transition-fast)}.blackout-item:hover{border-color:var(--color-border)}.blackout-dates{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap}.date-range{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-family-display);font-weight:var(--font-weight-semibold)}.date-separator{color:var(--color-text-muted);font-weight:var(--font-weight-normal)}.blackout-reason{color:var(--color-text-secondary);font-size:var(--font-size-sm);font-style:italic}.blackout-actions{display:flex;gap:var(--space-2);margin-top:var(--space-1)}.sync-dropdown{position:relative;display:inline-block}.sync-dropdown .sync-btn{display:inline-flex;align-items:center;gap:var(--space-2)}.sync-dropdown .dropdown-arrow{font-size:10px;transition:transform var(--transition-fast)}.sync-dropdown-menu{position:absolute;top:calc(100% + var(--space-2));right:0;min-width:200px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);z-index:var(--z-dropdown);opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity var(--transition-fast),visibility var(--transition-fast),transform var(--transition-fast);overflow:hidden}.sync-dropdown-menu.show{opacity:1;visibility:visible;transform:translateY(0)}.sync-dropdown-menu .dropdown-item{display:block;width:100%;padding:var(--space-3) var(--space-4);text-align:left;background:none;border:none;cursor:pointer;font-size:var(--font-size-sm);color:var(--color-text-primary);transition:background-color var(--transition-fast)}.sync-dropdown-menu .dropdown-item:hover{background-color:var(--color-bg-elevated)}.sync-dropdown-menu .dropdown-divider{height:1px;margin:var(--space-2) 0;background:var(--color-border)}.sync-dropdown-menu .dropdown-item-warning{color:var(--color-warning)}.sync-dropdown-menu .dropdown-item-warning:hover{background-color:rgba(var(--color-warning-rgb, 245, 158, 11),.1)}.sync-spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@media (max-width: 768px){.toast-container{left:var(--space-4);right:var(--space-4);bottom:var(--space-4);max-width:none}.modal{margin:var(--space-4);max-height:95vh}.approval-swap-details{flex-direction:column}.swap-arrow{transform:rotate(90deg)}.swap-detail-games{flex-direction:column}.swap-arrow-large{transform:rotate(90deg)}.blackouts-page .page-header{flex-direction:column;align-items:stretch}.blackout-form .form-row,.blackout-form .form-actions{flex-direction:column}.blackout-actions{flex-wrap:wrap}.blackout-actions button{flex:1}.tabs{flex-direction:column}}:root{--color-primary: #00d4ff;--color-primary-dark: #00a8cc;--color-primary-light: #33ddff;--color-primary-glow: rgba(0, 212, 255, .4);--color-primary-subtle: rgba(0, 212, 255, .1);--color-secondary: #64748b;--color-secondary-dark: #475569;--color-secondary-light: #94a3b8;--color-success: #10b981;--color-success-light: rgba(16, 185, 129, .15);--color-success-glow: rgba(16, 185, 129, .4);--color-warning: #f59e0b;--color-warning-light: rgba(245, 158, 11, .15);--color-warning-glow: rgba(245, 158, 11, .4);--color-error: #ef4444;--color-error-light: rgba(239, 68, 68, .15);--color-error-glow: rgba(239, 68, 68, .4);--color-info: #3b82f6;--color-info-light: rgba(59, 130, 246, .15);--color-bg-deep: #080b10;--color-bg-primary: #0f1419;--color-bg-secondary: #161d27;--color-bg-tertiary: #1e2836;--color-bg-elevated: #252f3f;--color-bg-hover: #2d3a4d;--color-surface: #161d27;--color-surface-hover: #1e2836;--color-surface-active: #252f3f;--color-text-primary: #f1f5f9;--color-text-secondary: #94a3b8;--color-text-muted: #64748b;--color-text-inverse: #0f1419;--color-text-accent: #00d4ff;--color-border: #2d3a4d;--color-border-light: #1e2836;--color-border-focus: #00d4ff;--color-border-subtle: rgba(255, 255, 255, .06);--gradient-primary: linear-gradient(135deg, #00d4ff 0%, #0099cc 100%);--gradient-surface: linear-gradient(180deg, #1e2836 0%, #161d27 100%);--gradient-glow: radial-gradient(ellipse at center, rgba(0, 212, 255, .15) 0%, transparent 70%);--gradient-arena: linear-gradient(135deg, rgba(0, 212, 255, .05) 0%, transparent 50%, rgba(245, 158, 11, .03) 100%);--gradient-stripe: repeating-linear-gradient( -45deg, transparent, transparent 10px, rgba(0, 212, 255, .03) 10px, rgba(0, 212, 255, .03) 20px );--font-family-display: "Outfit", -apple-system, BlinkMacSystemFont, sans-serif;--font-family-body: "DM Sans", -apple-system, BlinkMacSystemFont, sans-serif;--font-family-mono: "JetBrains Mono", "SF Mono", "Fira Code", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-md: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--line-height-tight: 1.2;--line-height-snug: 1.35;--line-height-normal: 1.5;--line-height-relaxed: 1.65;--letter-spacing-tight: -.025em;--letter-spacing-normal: 0;--letter-spacing-wide: .025em;--letter-spacing-wider: .05em;--letter-spacing-caps: .1em;--space-px: 1px;--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--space-xs: var(--space-1);--space-sm: var(--space-2);--space-md: var(--space-4);--space-lg: var(--space-6);--space-xl: var(--space-8);--space-2xl: var(--space-12);--radius-none: 0;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--border-width-thin: 1px;--border-width-medium: 2px;--border-width-thick: 3px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4), 0 2px 4px -2px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .5), 0 4px 6px -4px rgba(0, 0, 0, .4);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .5), 0 8px 10px -6px rgba(0, 0, 0, .4);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .6);--shadow-inner: inset 0 2px 4px rgba(0, 0, 0, .3);--shadow-glow-primary: 0 0 20px var(--color-primary-glow), 0 0 40px rgba(0, 212, 255, .2);--shadow-glow-success: 0 0 20px var(--color-success-glow);--shadow-glow-warning: 0 0 20px var(--color-warning-glow);--shadow-glow-error: 0 0 20px var(--color-error-glow);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--transition-bounce: .5s cubic-bezier(.34, 1.56, .64, 1);--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-bounce: cubic-bezier(.34, 1.56, .64, 1);--z-base: 0;--z-dropdown: 100;--z-sticky: 200;--z-fixed: 300;--z-modal-backdrop: 400;--z-modal: 500;--z-toast: 600;--z-tooltip: 700;--header-height: 72px;--sidebar-width: 280px;--content-max-width: 1280px;--content-narrow: 720px;--content-wide: 1440px}.status-draft{--status-color: var(--color-secondary);--status-bg: var(--color-bg-tertiary)}.status-pending,.status-pending-approval{--status-color: var(--color-warning);--status-bg: var(--color-warning-light)}.status-convenor-review{--status-color: var(--color-info);--status-bg: var(--color-info-light)}.status-approved{--status-color: var(--color-success);--status-bg: var(--color-success-light)}.status-rejected{--status-color: var(--color-error);--status-bg: var(--color-error-light)}.status-published{--status-color: var(--color-primary);--status-bg: var(--color-primary-subtle)}.status-cancelled{--status-color: var(--color-text-muted);--status-bg: var(--color-bg-tertiary)}.glass{background:#161d27cc;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--color-border-subtle)}.stripe-overlay:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--gradient-stripe);pointer-events:none;opacity:.5}.glow-line{position:relative}.glow-line:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--gradient-primary);box-shadow:var(--shadow-glow-primary)}.header{position:sticky;top:0;z-index:var(--z-sticky);background:#0f1419d9;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--color-border-light);height:var(--header-height)}.header:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--color-primary-glow),transparent)}.header-content{display:flex;align-items:center;justify-content:space-between;max-width:var(--content-max-width);margin:0 auto;padding:0 var(--space-6);height:100%}.header-logo{font-family:var(--font-family-display);font-size:var(--font-size-xl);font-weight:var(--font-weight-extrabold);letter-spacing:var(--letter-spacing-tight);color:var(--color-text-primary);text-decoration:none;display:flex;align-items:center;gap:var(--space-3);transition:color var(--transition-fast)}.header-logo:hover{color:var(--color-primary);text-decoration:none;text-shadow:0 0 20px var(--color-primary-glow)}.header-logo:before{content:"";width:32px;height:32px;background:var(--gradient-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-glow-primary)}.header-nav{display:flex;align-items:center;gap:var(--space-1)}.nav-link{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-family:var(--font-family-display);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);text-decoration:none;border-radius:var(--radius-lg);transition:background-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast)}.nav-link:hover{background-color:var(--color-bg-tertiary);color:var(--color-text-primary);text-decoration:none}.nav-link.active{background-color:var(--color-primary-subtle);color:var(--color-primary);box-shadow:inset 0 0 0 1px #00d4ff4d}.nav-link.has-notification{position:relative}.nav-link .notification-badge{margin-left:var(--space-1)}.nav-link.nav-admin,.nav-link.nav-convenor{color:var(--color-primary)}.header-actions{display:flex;align-items:center;gap:var(--space-4)}.mobile-menu-toggle{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:40px;height:40px;padding:var(--space-2);background:transparent;border:none;border-radius:var(--radius-md);cursor:pointer;z-index:calc(var(--z-modal) + 1);transition:background-color var(--transition-fast)}.mobile-menu-toggle.hidden{display:none!important}.mobile-menu-toggle:hover{background-color:var(--color-bg-tertiary)}.hamburger-line{display:block;width:22px;height:2px;background-color:var(--color-text-primary);border-radius:1px;transition:transform var(--transition-fast),opacity var(--transition-fast)}.mobile-menu-toggle.active .hamburger-line:nth-child(1){transform:translateY(7px) rotate(45deg)}.mobile-menu-toggle.active .hamburger-line:nth-child(2){opacity:0}.mobile-menu-toggle.active .hamburger-line:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.user-menu{display:flex;align-items:center;gap:var(--space-4)}.user-name{font-family:var(--font-family-display);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.user-role{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.main{min-height:calc(100vh - var(--header-height));padding-bottom:var(--space-16)}.login-page{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - var(--header-height));padding:var(--space-6);background:var(--gradient-arena);position:relative}.login-page:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--gradient-glow);opacity:.5}.login-container{width:100%;max-width:420px;position:relative;z-index:1}.login-card{padding:var(--space-10);text-align:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-2xl);box-shadow:var(--shadow-2xl)}.login-card:before{opacity:1}.login-title{font-size:var(--font-size-3xl);margin-bottom:var(--space-2)}.login-subtitle{color:var(--color-text-secondary);margin-bottom:var(--space-8)}.login-form .form-group{margin-bottom:var(--space-5);text-align:left}.login-submit{width:100%;padding:var(--space-4);font-size:var(--font-size-md);margin-top:var(--space-4)}.dashboard-grid{display:grid;gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.welcome-card{text-align:center;display:flex;flex-direction:column;align-items:center;background:var(--gradient-surface)}.association-logo-container{width:100%;max-width:180px;margin-bottom:var(--space-5);padding:var(--space-4);background:var(--color-bg-tertiary);border-radius:var(--radius-xl)}.association-logo{width:100%;height:auto;max-height:120px;object-fit:contain;border-radius:var(--radius-md)}.quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:var(--space-4)}.quick-action{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-5);background-color:var(--color-bg-tertiary);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);color:var(--color-text-primary);text-decoration:none;transition:background-color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.quick-action:hover{background-color:var(--color-bg-elevated);border-color:var(--color-primary);transform:translateY(-4px);box-shadow:var(--shadow-lg),0 0 20px #00d4ff26;text-decoration:none}.quick-action-icon{font-size:var(--font-size-3xl);filter:grayscale(.3);transition:filter var(--transition-fast)}.quick-action:hover .quick-action-icon{filter:grayscale(0)}.quick-action-label{font-family:var(--font-family-display);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-align:center}.pending-list,.upcoming-games-list,.my-swaps-list{display:flex;flex-direction:column;gap:var(--space-3)}.pending-item,.upcoming-game-item,.my-swap-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4);background-color:var(--color-bg-tertiary);border-radius:var(--radius-lg);border:1px solid var(--color-border-light);transition:border-color var(--transition-fast),background-color var(--transition-fast)}.pending-item:hover,.upcoming-game-item:hover,.my-swap-item:hover{border-color:var(--color-border);background-color:var(--color-bg-elevated)}.pending-info,.swap-info{display:flex;flex-direction:column;gap:var(--space-1)}.pending-date,.swap-date{font-family:var(--font-family-display);font-weight:var(--font-weight-semibold)}.pending-teams{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.game-date-time{display:flex;flex-direction:column;gap:var(--space-1);width:35%;flex-shrink:0}.game-date{font-family:var(--font-family-display);font-weight:var(--font-weight-semibold)}.game-time{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.game-matchup{display:flex;align-items:center;gap:var(--space-2);flex:1}.vs-text{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase}.opponent{font-weight:var(--font-weight-medium)}.pending-approval-card{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);background-color:var(--color-bg-tertiary);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);text-decoration:none;color:inherit;transition:border-color var(--transition-fast),background-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.pending-approval-card:hover{border-color:var(--color-warning);background-color:var(--color-bg-elevated);transform:translate(4px);box-shadow:var(--shadow-md),0 0 15px #fbbf2426;text-decoration:none}.pending-card-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border-light)}.pending-initiator{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.pending-initiator strong{color:var(--color-text-primary)}.pending-action-hint{font-family:var(--font-family-display);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-warning);opacity:0;transform:translate(-8px);transition:opacity var(--transition-fast),transform var(--transition-fast)}.pending-approval-card:hover .pending-action-hint{opacity:1;transform:translate(0)}.pending-swap-games{display:flex;align-items:stretch;gap:var(--space-3)}.pending-game{flex:1;display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3);background-color:var(--color-bg-secondary);border-radius:var(--radius-lg);min-width:0}.pending-game-label{font-family:var(--font-family-display);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider);color:var(--color-text-muted)}.pending-game-date{font-family:var(--font-family-display);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.pending-game-time{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.pending-swap-arrow{display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xl);color:var(--color-warning);flex-shrink:0;text-shadow:0 0 10px rgba(251,191,36,.4)}.historic-swaps-list{display:flex;flex-direction:column;gap:var(--space-3)}.historic-swap-card{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4);background-color:var(--color-bg-tertiary);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);text-decoration:none;color:inherit;transition:border-color var(--transition-fast),background-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.historic-swap-card:hover{border-color:var(--color-primary);background-color:var(--color-bg-elevated);transform:translate(4px);box-shadow:var(--shadow-md),0 0 15px #00d4ff1a;text-decoration:none}.historic-swap-games{display:flex;align-items:stretch;gap:var(--space-3)}.historic-game{flex:1;display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3);background-color:var(--color-bg-secondary);border-radius:var(--radius-lg);min-width:0}.historic-game-label{font-family:var(--font-family-display);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider);color:var(--color-text-muted)}.historic-game-date{font-family:var(--font-family-display);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.historic-game-time{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.historic-game-teams{font-size:var(--font-size-xs);color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.historic-swap-arrow{display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xl);color:var(--color-primary);flex-shrink:0;text-shadow:0 0 10px var(--color-primary-glow)}.historic-swap-footer{display:flex;align-items:center;justify-content:space-between;padding-top:var(--space-3);border-top:1px solid var(--color-border-light)}.historic-my-decision{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-family-display);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.historic-my-decision .decision-icon{font-size:var(--font-size-md)}.historic-my-decision.decision-initiated{color:var(--color-primary)}.historic-my-decision.decision-approved{color:var(--color-success)}.historic-my-decision.decision-rejected{color:var(--color-error)}.historic-my-decision.decision-neutral{color:var(--color-text-muted)}.my-requests-list,.external-requests-list{display:flex;flex-direction:column;gap:var(--space-3)}.my-request-card,.external-request-card{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4);background-color:var(--color-bg-tertiary);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);text-decoration:none;color:inherit;transition:border-color var(--transition-fast),background-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast)}.my-request-card:hover,.external-request-card:hover{border-color:var(--color-primary);background-color:var(--color-bg-elevated);transform:translate(4px);box-shadow:var(--shadow-md),0 0 15px #00d4ff1a;text-decoration:none}.external-request-header{display:flex;align-items:center;margin-bottom:var(--space-2)}.external-request-initiator{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.external-request-initiator strong{color:var(--color-text-primary)}.swap-request-games{display:flex;align-items:stretch;gap:var(--space-3)}.swap-request-game{flex:1;display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-3);background-color:var(--color-bg-secondary);border-radius:var(--radius-lg);min-width:0}.swap-request-game-label{font-family:var(--font-family-display);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider);color:var(--color-text-muted)}.swap-request-game-date{font-family:var(--font-family-display);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.swap-request-game-time{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.swap-request-game-teams{font-size:var(--font-size-xs);color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.swap-request-arrow{display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xl);color:var(--color-primary);flex-shrink:0;text-shadow:0 0 10px var(--color-primary-glow)}.swap-request-footer{display:flex;align-items:center;justify-content:space-between;padding-top:var(--space-3);border-top:1px solid var(--color-border-light)}.swap-request-role{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-family-display);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.swap-request-role .role-icon{font-size:var(--font-size-md)}.swap-request-role.initiated{color:var(--color-primary)}.swap-request-role.decision-approved{color:var(--color-success)}.swap-request-role.decision-rejected{color:var(--color-error)}.swap-request-role.decision-pending{color:var(--color-warning)}.swap-request-role.decision-neutral{color:var(--color-text-muted)}.view-toggle{display:flex;padding:var(--space-1);background-color:var(--color-bg-secondary);border:1px solid var(--color-border-light);border-radius:var(--radius-xl)}.view-toggle-btn{padding:var(--space-2) var(--space-4);border:none;background:none;color:var(--color-text-secondary);font-family:var(--font-family-display);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;border-radius:var(--radius-lg);transition:background-color var(--transition-fast),color var(--transition-fast)}.view-toggle-btn:hover{color:var(--color-text-primary)}.view-toggle-btn.active{background:var(--gradient-primary);color:var(--color-text-inverse);box-shadow:var(--shadow-md)}.schedule-filters{margin-bottom:var(--space-6)}.filter-row{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:var(--space-2)}.filter-group-inline{flex-direction:row;align-items:center;gap:var(--space-2)}.filter-group-inline label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);white-space:nowrap}.filter-group label{font-size:var(--font-size-xs)}.filter-input{padding:var(--space-2) var(--space-3);min-width:140px}.date-filters{display:flex;align-items:center;gap:var(--space-4)}.filter-actions{display:flex;gap:var(--space-2)}.filter-toggle-group{display:flex;padding:var(--space-1);background-color:var(--color-bg-secondary);border:1px solid var(--color-border-light);border-radius:var(--radius-xl)}.filter-toggle-btn{padding:var(--space-2) var(--space-4);border:none;background:none;color:var(--color-text-secondary);font-family:var(--font-family-display);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;border-radius:var(--radius-lg);transition:background-color var(--transition-fast),color var(--transition-fast)}.filter-toggle-btn:hover{color:var(--color-text-primary)}.filter-toggle-btn.active{background:var(--gradient-primary);color:var(--color-text-inverse);box-shadow:var(--shadow-md)}.schedule-date-group{margin-bottom:var(--space-8)}.date-header{font-family:var(--font-family-display);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);padding:var(--space-3) 0;border-bottom:2px solid var(--color-border-light);margin-bottom:var(--space-4);display:flex;align-items:center;gap:var(--space-3)}.date-header:before{content:"";width:4px;height:24px;background:var(--gradient-primary);border-radius:var(--radius-full)}.game-info{flex:1;min-width:0}.game-teams{font-family:var(--font-family-display);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-1)}.game-details{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.game-actions{display:flex;gap:var(--space-2);flex-shrink:0}.game-at{color:var(--color-text-muted);margin:0 var(--space-1)}.game-id{color:var(--color-text-muted);font-size:var(--font-size-xs);font-family:var(--font-family-mono);margin-left:var(--space-2)}.calendar-container{padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-2xl)}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-6)}.calendar-title{font-family:var(--font-family-display);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin:0}.calendar-nav{padding:var(--space-2) var(--space-4);min-width:auto}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;margin-bottom:var(--space-2);background:var(--color-border-light);border-radius:var(--radius-lg) var(--radius-lg) 0 0;overflow:hidden}.calendar-weekday{background:var(--color-bg-tertiary);padding:var(--space-3);text-align:center;font-family:var(--font-family-display);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider)}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--color-border-light);border-radius:0 0 var(--radius-lg) var(--radius-lg);overflow:hidden}.calendar-day{background:var(--color-bg-secondary);aspect-ratio:1 / 1;padding:var(--space-2);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;position:relative;transition:background-color var(--transition-fast);background-size:auto 75%;background-position:center bottom;background-repeat:no-repeat}.calendar-day.empty{background-color:var(--color-bg-primary)}.calendar-day.past{opacity:.4}.calendar-day.today{background-color:var(--color-primary-subtle)}.calendar-day.today .calendar-day-number{background:var(--gradient-primary);color:var(--color-text-inverse);border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-glow-primary)}.calendar-day.blackout{background-color:#64748b26;position:relative}.calendar-day.blackout:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(-45deg,transparent,transparent 4px,rgba(148,163,184,.12) 4px,rgba(148,163,184,.12) 8px);pointer-events:none;border-radius:inherit}.calendar-day.blackout:not(.past){border:1px solid rgba(148,163,184,.4)}.calendar-day.blackout .calendar-day-number{background:#64748bb3;color:var(--color-text-secondary)}.calendar-day.has-game{cursor:pointer;border:2px solid transparent}.calendar-day.has-game:hover{background-color:var(--color-bg-tertiary);border-color:var(--color-primary);box-shadow:inset 0 0 20px #00d4ff1a}.calendar-day.has-practice{border:2px solid transparent}.calendar-practice-icon{display:flex;align-items:center;justify-content:center;flex:1;color:var(--color-text-muted);opacity:.5}.calendar-practice-icon svg{height:38%;width:auto}.calendar-day.has-practice:hover .calendar-practice-icon{opacity:.8}.calendar-day.has-practice:hover{border-color:var(--color-border-light)}.calendar-day-number{font-family:var(--font-family-display);font-weight:var(--font-weight-bold);font-size:var(--font-size-sm);background:#161d27e6;padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);z-index:1}.calendar-opponent-name{flex:1;display:flex;align-items:center;justify-content:center;text-align:center;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);padding:var(--space-1);line-height:1.2;word-break:break-word;overflow:hidden;max-height:60%}.calendar-day.has-game:hover .calendar-opponent-name{color:var(--color-text)}.calendar-tooltip{position:fixed;z-index:var(--z-tooltip);padding:var(--space-4);background:#161d27f2;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--color-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl),0 0 20px #00d4ff33,inset 0 1px #ffffff0d;pointer-events:none;opacity:0;transform:translateY(4px);transition:opacity var(--transition-fast),transform var(--transition-fast);min-width:180px;max-width:280px}.calendar-tooltip.visible{opacity:1;transform:translateY(0)}.calendar-tooltip.below{transform:translateY(-4px)}.calendar-tooltip.below.visible{transform:translateY(0)}.calendar-tooltip:before{content:"";position:absolute;bottom:-6px;left:50%;transform:translate(-50%) rotate(45deg);width:12px;height:12px;background:#161d27f2;border-right:1px solid var(--color-primary);border-bottom:1px solid var(--color-primary)}.calendar-tooltip.below:before{bottom:auto;top:-6px;border-right:none;border-bottom:none;border-left:1px solid var(--color-primary);border-top:1px solid var(--color-primary)}.tooltip-game{display:flex;flex-direction:column;gap:var(--space-1)}.tooltip-game+.tooltip-game{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border-light)}.tooltip-time{font-family:var(--font-family-display);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-primary)}.tooltip-arena{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.tooltip-blackout{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-2) var(--space-3);background-color:#64748b33;border:1px solid rgba(148,163,184,.4);border-radius:var(--radius-md)}.tooltip-blackout-label{font-family:var(--font-family-display);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider);color:var(--color-text-muted)}.tooltip-blackout-reason{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.tooltip-game+.tooltip-blackout,.tooltip-blackout+.tooltip-game{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border-light)}.tooltip-practice{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-2) var(--space-3);background-color:#64748b1a;border:1px solid rgba(148,163,184,.3);border-radius:var(--radius-md)}.tooltip-practice-label{font-family:var(--font-family-display);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider);color:var(--color-text-muted)}.tooltip-game+.tooltip-practice,.tooltip-practice+.tooltip-game,.tooltip-blackout+.tooltip-practice,.tooltip-practice+.tooltip-blackout{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border-light)}.page-header{display:flex;flex-direction:column;gap:var(--space-1);padding-top:var(--space-6);margin-bottom:var(--space-6)}.page-header .back-link{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--font-size-sm);text-decoration:none;margin-bottom:var(--space-2);width:fit-content}.page-header .back-link:hover{color:var(--color-primary)}.page-header h1{margin:0;font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold)}.page-header .page-subtitle{margin:0;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.page-header .page-header-actions{display:flex;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-4)}.back-link{display:inline-flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.back-link:hover{color:var(--color-primary)}.swap-request-progress{display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-10)}.progress-step{display:flex;flex-direction:column;align-items:center;gap:var(--space-2)}.step-number{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background-color:var(--color-bg-tertiary);border:2px solid var(--color-border);border-radius:50%;font-family:var(--font-family-display);font-weight:var(--font-weight-bold);color:var(--color-text-muted);transition:all var(--transition-normal)}.progress-step.active .step-number{background:var(--gradient-primary);border-color:var(--color-primary);color:var(--color-text-inverse);box-shadow:var(--shadow-glow-primary)}.progress-step.completed .step-number{background-color:var(--color-success);border-color:var(--color-success);color:#fff;box-shadow:var(--shadow-glow-success)}.step-label{font-family:var(--font-family-display);font-size:var(--font-size-sm);color:var(--color-text-muted)}.progress-step.active .step-label{color:var(--color-primary);font-weight:var(--font-weight-medium)}.progress-connector{width:100px;height:2px;background-color:var(--color-border-light);margin:0 var(--space-4);margin-bottom:var(--space-6);position:relative}.progress-connector:after{content:"";position:absolute;left:0;top:0;height:100%;width:0;background:var(--gradient-primary);transition:width var(--transition-slow)}.progress-step.completed+.progress-connector:after{width:100%}.swap-options-loading,.swap-form-loading{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding:var(--space-16)}.swap-options-list{display:flex;flex-direction:column;gap:var(--space-4)}.swap-options-filters{margin-bottom:var(--space-5)}.swap-option-card{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5);background:var(--color-surface);border:2px solid var(--color-border-light);border-radius:var(--radius-xl);cursor:pointer;transition:border-color var(--transition-fast),background-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.swap-option-card:hover{border-color:var(--color-primary);background-color:var(--color-surface-hover);box-shadow:var(--shadow-md),0 0 20px #00d4ff1a;transform:translate(4px)}.swap-option-card.selected{border-color:var(--color-primary);background-color:var(--color-primary-subtle);box-shadow:var(--shadow-glow-primary)}.swap-option-info{flex:1}.swap-option-date{font-family:var(--font-family-display);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-1)}.swap-option-time{color:var(--color-text-secondary);margin-bottom:var(--space-3)}.swap-option-teams{font-weight:var(--font-weight-medium);margin-bottom:var(--space-1)}.swap-option-arena{font-size:var(--font-size-sm);color:var(--color-text-muted)}.swap-option-score{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);background-color:var(--color-bg-tertiary);border-radius:var(--radius-lg);font-size:var(--font-size-sm)}.score-label{color:var(--color-text-muted)}.score-value{font-family:var(--font-family-display);font-weight:var(--font-weight-bold);color:var(--color-success)}.swap-form h3{margin-bottom:var(--space-3)}.swap-comparison{display:grid;grid-template-columns:1fr auto 1fr;gap:var(--space-6);margin:var(--space-8) 0;align-items:start}.swap-game h4{margin-bottom:var(--space-4);color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider)}.game-card-detailed{background:var(--gradient-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);padding:var(--space-6)}.game-card-detailed .game-teams{display:flex;align-items:center;justify-content:center;gap:var(--space-5);margin-bottom:var(--space-6);text-align:center}.game-card-detailed .team{display:flex;flex-direction:column;gap:var(--space-1)}.game-card-detailed .team-label{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.game-card-detailed .team-name{font-family:var(--font-family-display);font-weight:var(--font-weight-semibold)}.game-card-detailed .team-vs{font-family:var(--font-family-display);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-muted)}.game-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4)}.info-item{display:flex;flex-direction:column;gap:var(--space-1)}.info-label{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.info-value{font-weight:var(--font-weight-medium)}.swap-summary{background-color:var(--color-primary-subtle);border:1px solid rgba(0,212,255,.2);border-radius:var(--radius-xl);padding:var(--space-5);margin:var(--space-8) 0}.swap-summary h4{margin-bottom:var(--space-4);color:var(--color-primary)}.swap-summary ul{list-style:disc;margin-left:var(--space-5)}.swap-summary li{margin-bottom:var(--space-2);color:var(--color-text-secondary)}.swap-form-actions{display:flex;justify-content:flex-end;gap:var(--space-4);margin-top:var(--space-8)}.swap-created{text-align:center;padding:var(--space-16)}.swap-created h3{color:var(--color-success);margin-bottom:var(--space-4)}.swap-created-actions{display:flex;justify-content:center;gap:var(--space-4);margin-top:var(--space-8)}.swap-detail-header{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-8)}.swap-detail-header h1{margin-bottom:0;flex:1}.swap-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--space-6)}.swap-detail-grid .full-width{grid-column:1 / -1}.game-detail p{margin-bottom:var(--space-2)}.approvals-list{display:flex;flex-direction:column;gap:var(--space-3)}.approval-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4);background-color:var(--color-bg-tertiary);border-radius:var(--radius-lg)}.swap-actions{display:flex;justify-content:flex-end;gap:var(--space-4)}.convenor-page{padding:var(--space-8);max-width:var(--content-max-width);margin:0 auto}.convenor-dashboard{background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-2xl);padding:var(--space-6);margin-bottom:var(--space-8)}.dashboard-header{margin-bottom:var(--space-6)}.dashboard-header h2{margin-bottom:var(--space-4)}.dashboard-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--space-4)}.stat-card{display:flex;flex-direction:column;align-items:center;padding:var(--space-5);background-color:var(--color-bg-tertiary);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);text-align:center;transition:border-color var(--transition-fast),transform var(--transition-fast)}.stat-card:hover{border-color:var(--color-border);transform:translateY(-2px)}.stat-card.loading{opacity:.6}.stat-card.highlight{background-color:var(--color-primary-subtle);border-color:var(--color-primary)}.stat-value{font-family:var(--font-family-display);font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);line-height:1}.stat-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-top:var(--space-2)}.dashboard-filters{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:flex-end}.swap-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.swap-table th,.swap-table td{padding:var(--space-4);text-align:left;border-bottom:1px solid var(--color-border-light)}.swap-table th{background-color:var(--color-bg-tertiary);font-family:var(--font-family-display);font-weight:var(--font-weight-semibold);color:var(--color-text-muted);text-transform:uppercase;font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-wider)}.swap-table tbody tr{transition:background-color var(--transition-fast)}.swap-table tbody tr:hover{background-color:var(--color-bg-tertiary)}.swap-id{font-family:var(--font-family-mono);font-size:var(--font-size-xs);color:var(--color-text-muted)}.actions-cell{display:flex;gap:var(--space-2);flex-wrap:wrap}.content-section{background-color:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-2xl);padding:var(--space-6)}.content-section h3{margin-bottom:var(--space-5)}.section-description{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin-top:calc(-1 * var(--space-3));margin-bottom:var(--space-5)}.blackouts-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4);margin-bottom:var(--space-4);background-color:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-xl)}.blackouts-toolbar .filter-group{display:flex;align-items:center;gap:var(--space-3)}.blackouts-toolbar .filter-group label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);white-space:nowrap}.blackouts-summary{display:flex;align-items:center;gap:var(--space-3);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.blackouts-summary .summary-divider{color:var(--color-text-muted)}.blackouts-table{width:100%}.blackouts-table .team-cell{font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.blackouts-table .date-cell{white-space:nowrap}.blackouts-table .duration-cell{color:var(--color-warning);font-weight:var(--font-weight-medium);white-space:nowrap}.blackouts-table .reason-cell{color:var(--color-text-secondary);font-style:italic;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-6);padding:var(--space-4);background-color:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-xl)}.toolbar-filters{display:flex;gap:var(--space-4);align-items:center}.toolbar-actions{display:flex;align-items:center;gap:var(--space-4)}.checkbox-label{display:flex;align-items:center;gap:var(--space-2);cursor:pointer;font-size:var(--font-size-sm);white-space:nowrap}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.admin-section{margin-bottom:var(--space-8)}.admin-section:last-child{margin-bottom:0}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border-light)}.section-header h2{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold)}.section-actions{display:flex;align-items:center;gap:var(--space-4)}.admin-list{display:flex;flex-direction:column;gap:var(--space-3)}.admin-list-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5);background-color:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.admin-list-item:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.admin-list-item.deleted{opacity:.5;background-color:var(--color-bg-secondary)}.admin-list-item .item-main{flex:1;min-width:0}.admin-list-item .item-info{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-2)}.admin-list-item .item-name{font-family:var(--font-family-display);font-weight:var(--font-weight-semibold);margin:0;font-size:var(--font-size-md)}.admin-list-item .item-badge{display:inline-block;padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.admin-list-item .badge-info{background-color:var(--color-primary-subtle);color:var(--color-primary)}.admin-list-item .badge-danger{background-color:var(--color-error-light);color:var(--color-error)}.admin-list-item .badge-success{background-color:var(--color-success-light);color:var(--color-success)}.admin-list-item .badge-warning{background-color:var(--color-warning-light);color:var(--color-warning)}.admin-list-item .badge-secondary{background-color:var(--color-bg-elevated);color:var(--color-text-secondary)}.admin-list-item .item-meta{display:flex;gap:var(--space-4);font-size:var(--font-size-sm);color:var(--color-text-muted)}.admin-list-item .meta-item{white-space:nowrap}.admin-list-item .item-contacts{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border-light)}.admin-list-item .contacts-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);margin-right:var(--space-2)}.admin-list-item .contacts-list{list-style:none;margin:var(--space-2) 0 0 0;padding:0;display:flex;flex-direction:column;gap:var(--space-1)}.admin-list-item .contact-item{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm)}.admin-list-item .contact-name{color:var(--color-text);font-weight:var(--font-weight-medium)}.admin-list-item .contact-email{color:var(--color-primary);text-decoration:none}.admin-list-item .contact-email:hover{text-decoration:underline}.admin-list-item .item-actions{display:flex;gap:var(--space-2);flex-shrink:0}.admin-list-item .item-logo{width:48px;height:48px;object-fit:contain;border-radius:var(--radius-md);background-color:var(--color-bg-tertiary)}.admin-list-item .item-details{flex:1;min-width:0}.admin-list-item .item-badges{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-top:var(--space-2)}.admin-list-loading{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding:var(--space-16);color:var(--color-text-muted)}.admin-form{max-width:500px}.admin-form h3{margin-bottom:var(--space-6)}.admin-form .form-actions{display:flex;gap:var(--space-4);justify-content:flex-end;margin-top:var(--space-8)}.admin-form-loading{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding:var(--space-10);color:var(--color-text-muted)}.admin-modal{background:var(--gradient-surface);border:1px solid var(--color-border);border-radius:var(--radius-2xl);box-shadow:var(--shadow-2xl);max-width:560px;width:90%;max-height:90vh;overflow:auto;position:relative}.admin-modal .modal-close{position:absolute;top:var(--space-4);right:var(--space-4)}.admin-modal .modal-body{padding:var(--space-8)}.grouped-list{display:flex;flex-direction:column;gap:var(--space-8)}.list-group{display:flex;flex-direction:column;gap:var(--space-3)}.list-group-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) 0;border-bottom:2px solid var(--color-border);margin-bottom:var(--space-3)}.list-group-title{font-family:var(--font-family-display);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.list-group-count{font-size:var(--font-size-sm);color:var(--color-text-muted);background-color:var(--color-bg-tertiary);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full)}.list-group-items{display:flex;flex-direction:column;gap:var(--space-3)}.filter-select{padding:var(--space-2) var(--space-4);min-width:150px}.convenor-item .item-email{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-top:var(--space-1)}.convenor-item .item-badges{margin-top:var(--space-3)}.sync-status-text{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.sync-status-text.sync-success{color:var(--color-success)}.sync-status-text.sync-warning{color:var(--color-warning)}.sync-status-text.sync-error{color:var(--color-error)}.logo-uploader{display:flex;flex-direction:column;gap:var(--space-4)}.logo-preview{width:160px;height:160px;border:2px dashed var(--color-border);border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;background-color:var(--color-bg-tertiary);overflow:hidden}.logo-image{max-width:100%;max-height:100%;object-fit:contain}.logo-placeholder{color:var(--color-text-muted);font-size:var(--font-size-sm);text-align:center;padding:var(--space-4)}.logo-actions{display:flex;gap:var(--space-3)}.logo-info{color:var(--color-text-muted);font-size:var(--font-size-sm)}.upload-status{padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);font-size:var(--font-size-sm)}.upload-status.status-info{background-color:var(--color-info-light);color:var(--color-info)}.upload-status.status-success{background-color:var(--color-success-light);color:var(--color-success)}.upload-status.status-error{background-color:var(--color-error-light);color:var(--color-error)}.file-upload{text-align:center}.file-drop-zone{border:2px dashed var(--color-border);border-radius:var(--radius-xl);padding:var(--space-12);cursor:pointer;transition:all var(--transition-fast)}.file-drop-zone:hover,.file-drop-zone.drag-over{border-color:var(--color-primary);background-color:var(--color-primary-subtle)}.drop-zone-content{display:flex;flex-direction:column;align-items:center;gap:var(--space-3)}.upload-icon{color:var(--color-text-muted);font-size:var(--font-size-3xl)}.error-state{text-align:center;padding:var(--space-16);color:var(--color-error)}.error-state p{margin-bottom:var(--space-6)}.form-status{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);font-size:var(--font-size-sm)}.form-status.status-info{background-color:var(--color-info-light);color:var(--color-info)}.form-status.status-success{background-color:var(--color-success-light);color:var(--color-success)}.form-status.status-error{background-color:var(--color-error-light);color:var(--color-error)}@media (max-width: 768px){.header-content{padding:0 var(--space-4)}.mobile-menu-toggle{display:flex}.header-nav{display:flex!important;flex-direction:column;align-items:stretch;position:fixed;top:var(--header-height);left:0;width:100vw;height:calc(100vh - var(--header-height));height:calc(100dvh - var(--header-height));background:#0f1419fa;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);padding:var(--space-6);gap:var(--space-2);transform:translate(-100%);opacity:0;visibility:hidden;transition:transform var(--transition-normal),opacity var(--transition-normal),visibility var(--transition-normal);z-index:var(--z-modal);overflow-x:hidden;overflow-y:auto;box-sizing:border-box}.header-nav.mobile-open{transform:translate(0);opacity:1;visibility:visible}.header-nav .nav-link,.header-nav .nav-dropdown{width:100%}.header-nav .nav-link{padding:var(--space-4);font-size:var(--font-size-base);border-radius:var(--radius-md);border:1px solid var(--color-border-light);background:var(--color-bg-secondary)}.header-nav .nav-link:hover{background:var(--color-bg-tertiary);border-color:var(--color-primary)}.header-nav .nav-dropdown-toggle{width:100%;padding:var(--space-4);font-size:var(--font-size-base);border-radius:var(--radius-md);border:1px solid var(--color-border-light);background:var(--color-bg-secondary);justify-content:space-between}.header-nav .nav-dropdown-menu{position:static;transform:none;opacity:1;visibility:visible;box-shadow:none;background:transparent;border:none;padding:var(--space-2) 0 0 var(--space-4);display:none}.header-nav .nav-dropdown.open .nav-dropdown-menu{display:flex;flex-direction:column;gap:var(--space-2)}.header-nav .nav-dropdown-item{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-bg-tertiary)}.user-name,.user-role{display:none}.header-logo:before{width:28px;height:28px}.dashboard-grid{grid-template-columns:1fr}.schedule-header{flex-direction:column;align-items:stretch}.schedule-filters{flex-direction:column}.swap-comparison{grid-template-columns:1fr}.swap-comparison .swap-arrow{transform:rotate(90deg);padding:var(--space-4) 0}.swap-detail-header{flex-direction:column;align-items:flex-start}.swap-form-actions,.swap-created-actions,.swap-actions{flex-direction:column}.swap-option-card{flex-direction:column;align-items:stretch}.swap-option-score{justify-content:center;margin-top:var(--space-3)}.pending-item,.upcoming-game-item,.my-swap-item{flex-direction:column;align-items:stretch;gap:var(--space-3)}.pending-swap-games{flex-direction:column;gap:var(--space-2)}.pending-swap-arrow{transform:rotate(90deg);padding:var(--space-1) 0}.pending-action-hint{display:none}.historic-swap-games{flex-direction:column;gap:var(--space-2)}.historic-swap-arrow{transform:rotate(90deg);padding:var(--space-1) 0}.historic-swap-footer{flex-direction:column;gap:var(--space-3);align-items:flex-start}.convenor-page{padding:var(--space-4)}.admin-toolbar{flex-direction:column;gap:var(--space-4)}.toolbar-filters{flex-direction:column;align-items:stretch}.admin-list-item{flex-direction:column;align-items:stretch;gap:var(--space-4)}.admin-list-item .item-actions{justify-content:flex-end}.admin-form .form-actions{flex-direction:column}.list-group-header{flex-direction:column;align-items:flex-start;gap:var(--space-2)}}.ice-scheduler-page{padding:var(--space-8);max-width:var(--content-max-width);margin:0 auto}.ice-scheduler-page .dashboard-grid{margin-bottom:var(--space-8)}.ice-scheduler-page .dashboard-card{background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-2xl);padding:var(--space-6);transition:border-color var(--transition-fast),transform var(--transition-fast)}.ice-scheduler-page .dashboard-card:hover{border-color:var(--color-border);transform:translateY(-2px)}.ice-scheduler-page .dashboard-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3)}.ice-scheduler-page .dashboard-card-header h3{margin:0;font-size:var(--font-size-lg)}.ice-scheduler-page .dashboard-card-description{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin-bottom:var(--space-4)}.ice-scheduler-page .dashboard-grid-4{grid-template-columns:repeat(4,1fr)}.ice-scheduler-page .dashboard-grid-4 .dashboard-card{padding:var(--space-4)}.ice-scheduler-hero-grid{display:grid;grid-template-columns:1fr 1fr 1fr;grid-template-rows:auto auto;gap:var(--space-5);margin-bottom:var(--space-6)}.ice-scheduler-hero-grid #association-logo-card{grid-row:span 2;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px}.ice-scheduler-hero-grid #association-logo-card .association-logo-container{max-width:280px;padding:var(--space-5)}.ice-scheduler-hero-grid #association-logo-card .association-logo{max-height:180px}.ice-scheduler-hero-grid .dashboard-card{padding:var(--space-4)}@media (max-width: 900px){.ice-scheduler-hero-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}.ice-scheduler-hero-grid #association-logo-card{grid-row:span 1;grid-column:span 2}}@media (max-width: 600px){.ice-scheduler-hero-grid{grid-template-columns:1fr}.ice-scheduler-hero-grid #association-logo-card{grid-column:span 1}}.ice-scheduler-page .content-section{margin-bottom:var(--space-6)}.ice-scheduler-page .content-section+.content-section{margin-top:var(--space-6)}.ice-scheduler-page .season-info{padding:var(--space-4);background:var(--color-bg-tertiary);border-radius:var(--radius-lg)}.ice-scheduler-page .season-info p{margin:0}.ice-scheduler-page .season-info p+p{margin-top:var(--space-2)}.ice-scheduler-page .quick-action-link{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-4);background:var(--color-bg-tertiary);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);color:var(--color-text-primary);text-decoration:none;transition:background-color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}.ice-scheduler-page .quick-action-link:hover{background:var(--color-bg-elevated);border-color:var(--color-primary);transform:translateY(-2px);text-decoration:none}.ice-scheduler-page .quick-action-icon{font-size:var(--font-size-2xl)}.ice-scheduler-page .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4)}.ice-scheduler-page .section-header h3{margin:0}.ice-scheduler-page .form-container{background:var(--color-bg-tertiary);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);padding:var(--space-5);margin-bottom:var(--space-5)}.ice-scheduler-page .form-container h4{margin:0 0 var(--space-4) 0;font-size:var(--font-size-md)}.ice-scheduler-page .form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4)}.ice-scheduler-page .time-select-group{display:flex;align-items:center;gap:var(--space-2)}.ice-scheduler-page .time-select-group select{flex:1;min-width:80px}.ice-scheduler-page .time-separator{font-weight:700;color:var(--color-text-secondary)}.ice-scheduler-page .admin-list-item.selected{background:var(--color-primary-subtle);border-color:var(--color-primary)}.ice-scheduler-page .item-content.selectable{cursor:pointer;flex:1}.ice-scheduler-page .item-notes{font-size:var(--font-size-xs);color:var(--color-text-muted);font-style:italic;margin-top:var(--space-1)}.ice-scheduler-page .item-content.selectable:hover{opacity:.8}.ice-scheduler-page .slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:8px;border-radius:4px;background:var(--color-bg-secondary);outline:none;cursor:pointer}.ice-scheduler-page .slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:var(--color-primary);cursor:pointer;box-shadow:0 2px 6px #0000004d;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.ice-scheduler-page .slider::-webkit-slider-thumb:hover{transform:scale(1.1);box-shadow:0 2px 10px var(--color-primary-glow)}.ice-scheduler-page .slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--color-primary);cursor:pointer;border:none;box-shadow:0 2px 6px #0000004d}.ice-scheduler-page .slider-labels{display:flex;justify-content:space-between;font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:var(--space-1)}.ice-scheduler-page .filter-section{margin-bottom:var(--space-6)}.ice-scheduler-page .filter-row{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:flex-end}.ice-scheduler-page .filter-row .form-group{flex:1;min-width:150px;max-width:250px;margin-bottom:0}.ice-scheduler-page .filter-row>.btn{align-self:flex-end;flex-shrink:0;margin-bottom:0}.ice-scheduler-page .week-nav{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.ice-scheduler-page .week-nav .form-control{width:auto}.ice-scheduler-page .filter-row .form-group:has(.week-nav){max-width:none;flex:0 0 auto}.ice-scheduler-page .btn-icon{display:flex;align-items:center;justify-content:center;width:32px;min-width:32px;height:32px;flex-shrink:0;padding:0;background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);cursor:pointer;font-size:var(--font-size-lg);transition:all .15s ease}.ice-scheduler-page .btn-icon:hover{background-color:var(--color-bg-tertiary);border-color:var(--color-primary);color:var(--color-primary)}.ice-scheduler-page .week-nav #today-btn{flex-shrink:0;white-space:nowrap}.ice-scheduler-page .checkbox-group{display:flex;flex-wrap:wrap;gap:var(--space-4)}.ice-scheduler-page .allotment-day-group{margin-bottom:var(--space-6)}.ice-scheduler-page .day-header{display:flex;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border-light)}.ice-scheduler-page .day-name{font-weight:var(--font-weight-semibold);font-size:var(--font-size-md)}.ice-scheduler-page .day-date{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.ice-scheduler-page .assignment-badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);font-size:var(--font-size-sm);background-color:var(--color-bg-secondary);margin-right:var(--space-2);margin-bottom:var(--space-1)}.ice-scheduler-page .assignment-badge.status-draft{background-color:#eab30833;border:1px solid rgba(234,179,8,.4)}.ice-scheduler-page .assignment-badge.status-released{background-color:#22c55e33;border:1px solid rgba(34,197,94,.4)}.ice-scheduler-page .assignment-badge .status-indicator{font-size:var(--font-size-xs);padding:2px 6px;border-radius:var(--radius-sm);text-transform:uppercase;font-weight:500}.ice-scheduler-page .assignment-badge.status-draft .status-indicator{background-color:#a1620733;color:#9ca3af}.ice-scheduler-page .assignment-badge.status-released .status-indicator{background-color:#22c55e4d;color:#15803d}.ice-scheduler-page .unassign-btn{background:none;border:none;color:var(--color-text-secondary);cursor:pointer;font-size:var(--font-size-base);padding:0 4px;line-height:1;opacity:.7}.ice-scheduler-page .unassign-btn:hover{color:var(--color-danger);opacity:1}.ice-scheduler-page .lock-btn{background:none;border:none;font-size:var(--font-size-xs);cursor:pointer;padding:0 var(--space-1);margin-left:var(--space-1);opacity:.5;transition:opacity var(--transition-fast)}.ice-scheduler-page .lock-btn:hover{opacity:1}.ice-scheduler-page .assignment-badge.locked{border:1px solid var(--color-warning);background:#f59e0b1a}.ice-scheduler-page .assignment-badge.locked .lock-btn{opacity:1}.ice-scheduler-page .assign-modal-info{margin-bottom:var(--space-4);padding:var(--space-3);background-color:var(--color-bg-secondary);border-radius:var(--radius-md)}.ice-scheduler-page .allotment-info{line-height:1.5}.ice-scheduler-page .assign-warnings{padding:var(--space-3);background-color:#eab3081a;border:1px solid rgba(234,179,8,.3);border-radius:var(--radius-md);margin-bottom:var(--space-4);color:#a16207}.ice-scheduler-page .assign-warnings .warning-header{font-weight:var(--font-weight-semibold);margin-bottom:var(--space-2)}.ice-scheduler-page .assign-warnings .warning-list{margin:0;padding-left:var(--space-4);font-size:var(--font-size-sm)}.ice-scheduler-page .assign-warnings .warning-list li{margin-bottom:var(--space-1)}.ice-scheduler-page .assign-warnings .warning-list li:last-child{margin-bottom:0}.ice-scheduler-page .assign-warnings .blackout-warning{color:var(--color-danger)}.ice-scheduler-page .stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--space-4)}.ice-scheduler-page .stat-item{display:flex;flex-direction:column;align-items:center;padding:var(--space-4);background-color:var(--color-bg-secondary);border-radius:var(--radius-md);text-align:center}.ice-scheduler-page .stat-value{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.ice-scheduler-page .stat-value.stat-draft{color:#a16207}.ice-scheduler-page .stat-value.stat-released{color:#15803d}.ice-scheduler-page .stat-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-top:var(--space-1)}.ice-scheduler-page .usage-table{width:100%;border-collapse:collapse}.ice-scheduler-page .usage-table th,.ice-scheduler-page .usage-table td{padding:var(--space-3);text-align:left;border-bottom:1px solid var(--color-border)}.ice-scheduler-page .usage-table th{font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);font-size:var(--font-size-sm);text-transform:uppercase}.ice-scheduler-page .usage-table tbody tr:hover{background-color:var(--color-bg-secondary)}.ice-scheduler-page .usage-status{display:inline-block;padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:500}.ice-scheduler-page .usage-status.ok{background-color:#22c55e33;color:#15803d}.ice-scheduler-page .usage-status.near-limit{background-color:#eab30833;color:#a16207}.ice-scheduler-page .usage-status.over-limit{background-color:#ef444433;color:#b91c1c}.ice-scheduler-page .view-toggle{display:flex;gap:0;margin-right:var(--space-4)}.ice-scheduler-page .view-toggle .btn{border-radius:0}.ice-scheduler-page .view-toggle .btn:first-child{border-radius:var(--radius-md) 0 0 var(--radius-md)}.ice-scheduler-page .view-toggle .btn:last-child{border-radius:0 var(--radius-md) var(--radius-md) 0}.ice-scheduler-page .view-toggle .btn.active{background-color:var(--color-primary);color:#fff}.ice-scheduler-page .schedule-view-layout{display:flex;gap:var(--space-4);min-height:600px}.ice-scheduler-page .schedule-team-sidebar{width:200px;flex-shrink:0;background-color:var(--color-bg-secondary);border-radius:var(--radius-md);padding:var(--space-3);overflow-y:auto;max-height:700px}.ice-scheduler-page .schedule-team-sidebar h4{margin:0 0 var(--space-2) 0;font-size:var(--font-size-base)}.ice-scheduler-page .sidebar-hint{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin:0 0 var(--space-3) 0}.ice-scheduler-page .schedule-teams-list{display:flex;flex-direction:column;gap:var(--space-2)}.ice-scheduler-page .schedule-team-item{padding:var(--space-2) var(--space-3);background-color:var(--color-bg-primary);border:1px solid var(--color-border);border-left:4px solid var(--color-border);border-radius:var(--radius-md);cursor:grab;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:var(--space-2);transition:all .15s ease}.ice-scheduler-page .schedule-team-item:hover{border-color:var(--color-primary);box-shadow:0 2px 4px #0000001a}.ice-scheduler-page .schedule-team-item.dragging{opacity:.5;cursor:grabbing}.ice-scheduler-page .schedule-team-item .team-division{font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.ice-scheduler-page .schedule-team-item .team-hours{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-muted);white-space:nowrap;padding:2px 6px;background-color:var(--color-bg-tertiary);border-radius:var(--radius-sm)}.ice-scheduler-page .schedule-team-item.age-u7{border-left-color:#a855f7}.ice-scheduler-page .schedule-team-item.age-u9{border-left-color:#3b82f6}.ice-scheduler-page .schedule-team-item.age-u11{border-left-color:#22c55e}.ice-scheduler-page .schedule-team-item.age-u13{border-left-color:#eab308}.ice-scheduler-page .schedule-team-item.age-u15{border-left-color:#f97316}.ice-scheduler-page .schedule-team-item.age-u18{border-left-color:#ef4444}.ice-scheduler-page .schedule-team-item.over-limit{background-color:#ef44441a}.ice-scheduler-page .schedule-team-item .team-hours.over{color:#ef4444;font-weight:var(--font-weight-bold)}.ice-scheduler-page .schedule-calendar{flex:1;overflow-x:auto}.ice-scheduler-page .schedule-header{display:grid;grid-template-columns:50px repeat(7,minmax(0,1fr));gap:1px;background-color:var(--color-border);border-radius:var(--radius-md) var(--radius-md) 0 0;overflow:hidden}.ice-scheduler-page .schedule-header>div{background-color:var(--color-bg-secondary);padding:var(--space-2) var(--space-1);text-align:center;font-weight:var(--font-weight-medium);font-size:var(--font-size-sm)}.ice-scheduler-page .schedule-day-col .day-name{font-weight:var(--font-weight-semibold)}.ice-scheduler-page .schedule-day-col .day-date{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-top:2px}.ice-scheduler-page .schedule-time-col{background-color:var(--color-bg-secondary)}.ice-scheduler-page .schedule-grid{display:flex;flex-direction:column;gap:1px;background-color:var(--color-border)}.ice-scheduler-page .schedule-row{display:grid;grid-template-columns:50px repeat(7,minmax(0,1fr));gap:1px;min-height:60px}.ice-scheduler-page .schedule-row.empty-row{min-height:24px}.ice-scheduler-page .schedule-row.empty-row .schedule-time-cell{padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs)}.ice-scheduler-page .schedule-row.has-allotments{min-height:80px}.ice-scheduler-page .schedule-row.empty-row .schedule-cell{min-height:24px;padding:2px}.ice-scheduler-page .schedule-row.has-allotments .schedule-cell{min-height:80px}.ice-scheduler-page .schedule-time-cell{background-color:var(--color-bg-secondary);padding:var(--space-2);font-size:var(--font-size-xs);color:var(--color-text-secondary);text-align:right;display:flex;align-items:flex-start;justify-content:flex-end}.ice-scheduler-page .schedule-cell{background-color:var(--color-bg-primary);padding:var(--space-1);min-height:60px;min-width:0;display:flex;flex-direction:column;gap:var(--space-1);overflow:hidden}.ice-scheduler-page .schedule-allotment{background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:2px 4px;font-size:10px;position:relative;min-width:0;display:flex;flex-direction:column;overflow:hidden}.ice-scheduler-page .schedule-allotment.available{border-color:var(--color-primary);border-style:dashed}.ice-scheduler-page .schedule-allotment.full{background-color:#22c55e1a;border-color:#22c55e80}.ice-scheduler-page .allotment-arena{font-weight:var(--font-weight-medium);color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.ice-scheduler-page .allotment-assignments{display:flex;flex-direction:column;gap:1px}.ice-scheduler-page .schedule-assignment{display:flex;align-items:center;justify-content:space-between;padding:1px 2px;border-radius:2px;font-size:10px;line-height:1.2}.ice-scheduler-page .schedule-assignment.draft{background-color:#a1620733}.ice-scheduler-page .schedule-assignment.released{background-color:#22c55e33}.ice-scheduler-page .schedule-assignment .assignment-team{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.ice-scheduler-page .schedule-assignment .unassign-x{background:none;border:none;color:var(--color-text-secondary);cursor:pointer;padding:0;margin-left:2px;font-size:12px;line-height:1;flex-shrink:0}.ice-scheduler-page .schedule-assignment .unassign-x:hover{color:var(--color-danger)}.ice-scheduler-page .drop-zone{flex:1;min-height:14px;border:1px dashed transparent;border-radius:2px;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.ice-scheduler-page .drop-zone.highlight{border-color:var(--color-primary);background-color:#3b82f61a}.ice-scheduler-page .drop-zone.drag-over{border-color:var(--color-primary);background-color:#3b82f633}.ice-scheduler-page .schedule-calendar.expanded-weekdays .schedule-header,.ice-scheduler-page .schedule-calendar.expanded-weekdays .schedule-row{grid-template-columns:50px repeat(5,1fr)}.ice-scheduler-page .schedule-calendar.expanded-weekend .schedule-header,.ice-scheduler-page .schedule-calendar.expanded-weekend .schedule-row{grid-template-columns:50px repeat(2,1fr)}.ice-scheduler-page .empty-hint{font-size:var(--font-size-sm);color:var(--color-text-secondary);text-align:center;padding:var(--space-4)}.ice-scheduler-page .allocation-progress{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-8) var(--space-4);text-align:center}.ice-scheduler-page .spinner-lg{width:48px;height:48px;border:4px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite}.ice-scheduler-page .progress-text{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-top:var(--space-4)}.ice-scheduler-page .progress-subtext{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-top:var(--space-2)}.ice-scheduler-page .allocation-results{padding:var(--space-4) 0}.ice-scheduler-page .results-summary{text-align:center;margin-bottom:var(--space-6)}.ice-scheduler-page .summary-header{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--space-4)}.ice-scheduler-page .summary-stats{display:flex;justify-content:center;gap:var(--space-8)}.ice-scheduler-page .summary-stats .stat{display:flex;flex-direction:column;align-items:center}.ice-scheduler-page .summary-stats .stat-value{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-primary)}.ice-scheduler-page .summary-stats .stat-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-top:var(--space-1)}.ice-scheduler-page .results-metrics h4,.ice-scheduler-page .results-breakdown h4,.ice-scheduler-page .results-violations h4{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border)}.ice-scheduler-page .metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);margin-bottom:var(--space-6)}.ice-scheduler-page .metric{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-3);background:var(--color-bg-secondary);border-radius:var(--radius-md)}.ice-scheduler-page .metric-value{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-success)}.ice-scheduler-page .metric-label{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-top:var(--space-1)}.ice-scheduler-page .breakdown-table-container{max-height:300px;overflow-y:auto;margin-bottom:var(--space-6)}.ice-scheduler-page .breakdown-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.ice-scheduler-page .breakdown-table th,.ice-scheduler-page .breakdown-table td{padding:var(--space-2) var(--space-3);text-align:left;border-bottom:1px solid var(--color-border)}.ice-scheduler-page .breakdown-table th{font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);background:var(--color-bg-secondary);position:sticky;top:0}.ice-scheduler-page .breakdown-table tbody tr:hover{background:var(--color-bg-tertiary)}.ice-scheduler-page .violations-list{list-style:none;padding:0;margin:0 0 var(--space-6) 0}.ice-scheduler-page .violation-item{display:flex;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-bg-secondary);border-radius:var(--radius-sm);margin-bottom:var(--space-2);font-size:var(--font-size-sm)}.ice-scheduler-page .violation-item.soft{border-left:3px solid var(--color-warning)}.ice-scheduler-page .violation-item.hard{border-left:3px solid var(--color-danger)}.ice-scheduler-page .violation-category{font-weight:var(--font-weight-medium);color:var(--color-text-primary);min-width:120px}.ice-scheduler-page .violation-desc{color:var(--color-text-secondary)}.ice-scheduler-page .more-violations{font-style:italic;color:var(--color-text-muted);padding:var(--space-2)}.ice-scheduler-page .no-violations{color:var(--color-success);padding:var(--space-3);text-align:center;background:rgba(var(--color-success-rgb),.1);border-radius:var(--radius-md)}.modal-content.modal-lg{max-width:800px}.btn-accent{background:linear-gradient(135deg,#8b5cf6,#6366f1);color:#fff;border:none}.btn-accent:hover{background:linear-gradient(135deg,#7c3aed,#4f46e5);box-shadow:0 0 20px #8b5cf666}.ice-scheduler-page .report-header-info{display:flex;justify-content:space-between;align-items:center}.ice-scheduler-page .report-meta{display:flex;align-items:center;gap:var(--space-4)}.ice-scheduler-page .season-badge{background:var(--gradient-primary);color:#fff;padding:var(--space-2) var(--space-4);border-radius:var(--radius-lg);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm)}.ice-scheduler-page .filter-controls{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:flex-end}.ice-scheduler-page .filter-controls .filter-group{display:flex;flex-direction:column;gap:var(--space-2)}.ice-scheduler-page .filter-controls .filter-group label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.ice-scheduler-page .filter-controls .form-select{padding:var(--space-2) var(--space-4);min-width:180px;background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--font-size-sm)}.ice-scheduler-page #team-allocation-table{width:100%;border-collapse:collapse}.ice-scheduler-page #team-allocation-table th,.ice-scheduler-page #team-allocation-table td{padding:var(--space-3) var(--space-4);text-align:left;border-bottom:1px solid var(--color-border-light)}.ice-scheduler-page #team-allocation-table th{font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.05em}.ice-scheduler-page #team-allocation-table tbody tr:hover{background-color:var(--color-bg-secondary)}.ice-scheduler-page .usage-bar-container{width:100px;height:8px;background-color:var(--color-bg-tertiary);border-radius:var(--radius-full);overflow:hidden;display:inline-block;vertical-align:middle;margin-right:var(--space-2)}.ice-scheduler-page .usage-bar{height:100%;border-radius:var(--radius-full);transition:width .3s ease}.ice-scheduler-page .usage-bar.status-ok{background-color:var(--color-success)}.ice-scheduler-page .usage-bar.status-near{background-color:var(--color-warning)}.ice-scheduler-page .usage-bar.status-over{background-color:var(--color-error)}.ice-scheduler-page .usage-percent{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.ice-scheduler-page .status-badge{display:inline-block;padding:2px 10px;border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.ice-scheduler-page .status-badge.status-ok{background-color:#22c55e33;color:#15803d}.ice-scheduler-page .status-badge.status-near{background-color:#eab30833;color:#a16207}.ice-scheduler-page .status-badge.status-over{background-color:#ef444433;color:#b91c1c}.ice-scheduler-page .status-badge.status-none{background-color:#9ca3af33;color:#6b7280}.ice-scheduler-page #team-allocation-table tr.status-over{background-color:#ef44440d}.ice-scheduler-page #team-allocation-table tr.status-near{background-color:#eab3080d}.ice-scheduler-page .badge-danger{background-color:#ef444433;color:#b91c1c}.ice-scheduler-page .badge-warning{background-color:#eab30833;color:#a16207}.ice-scheduler-page .badge-success{background-color:#22c55e33;color:#15803d}.ice-scheduler-page .audit-filters{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:flex-end}.ice-scheduler-page .audit-filters .filter-actions{margin-left:auto}.ice-scheduler-page .form-input{padding:var(--space-2) var(--space-3);background-color:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--font-size-sm)}.ice-scheduler-page .form-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-glow)}.ice-scheduler-page .audit-summary{display:flex;flex-wrap:wrap;gap:var(--space-6);padding:var(--space-4);background-color:var(--color-bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--color-border-light)}.ice-scheduler-page .audit-summary-item{display:flex;flex-direction:column;gap:var(--space-1)}.ice-scheduler-page .audit-summary-label{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.ice-scheduler-page .audit-summary-value{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.ice-scheduler-page #allocations-table{width:100%;border-collapse:collapse}.ice-scheduler-page #allocations-table th,.ice-scheduler-page #allocations-table td{padding:var(--space-3) var(--space-4);text-align:left;border-bottom:1px solid var(--color-border-light)}.ice-scheduler-page #allocations-table th{font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.05em}.ice-scheduler-page #allocations-table tbody tr:hover{background-color:var(--color-bg-secondary)}.ice-scheduler-page .status-badge.status-released{background-color:#22c55e33;color:#15803d}.ice-scheduler-page .status-badge.status-draft{background-color:#eab30833;color:#a16207}@media (max-width: 768px){.ice-scheduler-page{padding:var(--space-4)}.ice-scheduler-page .dashboard-grid{grid-template-columns:1fr}.ice-scheduler-page .audit-filters{flex-direction:column;align-items:stretch}.ice-scheduler-page .audit-filters .filter-actions{margin-left:0;margin-top:var(--space-2)}.ice-scheduler-page .audit-summary{flex-direction:column;gap:var(--space-3)}}.aliases-description{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin-bottom:var(--space-3)}.aliases-arena-name{font-weight:var(--font-weight-semibold);font-size:var(--font-size-lg);margin-bottom:var(--space-4);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border-light)}.alias-add-form{margin-bottom:var(--space-4)}.alias-add-form .form-group-inline{display:flex;gap:var(--space-2)}.alias-add-form .form-control{flex:1}.aliases-list{list-style:none;padding:0;margin:0}.alias-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-3);background:var(--color-bg-secondary);border-radius:var(--radius-md);margin-bottom:var(--space-2)}.alias-text{font-family:var(--font-mono);font-size:var(--font-size-sm)}.alias-item .delete-alias-btn{padding:var(--space-1) var(--space-2);font-size:var(--font-size-lg);line-height:1}.empty-aliases{color:var(--color-text-muted);font-style:italic;text-align:center;padding:var(--space-4)}.admin-list-item.needs-review{border-left:4px solid var(--color-warning)}.alert{padding:var(--space-4);border-radius:var(--radius-lg);margin-bottom:var(--space-4)}.alert-warning{background-color:var(--color-warning-light);border:1px solid var(--color-warning);color:var(--color-warning)}.alert strong{font-weight:var(--font-weight-semibold)}.merge-description{color:var(--color-text-secondary);margin-bottom:var(--space-4);line-height:1.6}.merge-description span{font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.toolbar-stats .badge{padding:var(--space-2) var(--space-3)}.schedule-summary{display:flex;gap:var(--space-4);margin-bottom:var(--space-6)}.schedule-summary .summary-stat{background-color:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-6);text-align:center}.schedule-summary .stat-value{display:block;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-primary)}.schedule-summary .stat-label{font-size:var(--font-size-sm);color:var(--color-text-muted)}.schedule-list{display:flex;flex-direction:column;gap:var(--space-6)}.schedule-month{background-color:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);overflow:hidden}.schedule-month .month-header{background-color:var(--color-bg-secondary);padding:var(--space-3) var(--space-4);margin:0;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);border-bottom:1px solid var(--color-border-light)}.month-events{display:flex;flex-direction:column}.schedule-item{display:flex;align-items:flex-start;gap:var(--space-4);padding:var(--space-4);border-bottom:1px solid var(--color-border-light)}.schedule-item:last-child{border-bottom:none}.schedule-item .item-date{flex-shrink:0;width:50px;text-align:center;padding-top:var(--space-1)}.schedule-item .date-day{display:block;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text);line-height:1}.schedule-item .date-weekday{display:block;font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);margin-top:var(--space-1)}.schedule-item .item-details{flex:1;min-width:0}.schedule-item .item-type-badge{display:inline-block;padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide);margin-bottom:var(--space-1)}.schedule-item .game-badge{background-color:var(--color-primary-subtle);color:var(--color-primary)}.schedule-item .practice-badge{background-color:var(--color-success-light);color:var(--color-success)}.schedule-item .blackout-badge{background-color:var(--color-error-light);color:var(--color-error)}.schedule-item.blackout-item{background-color:#ef44440d}.schedule-item .meta-reason{font-style:italic}.table-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4);gap:var(--space-4);flex-wrap:wrap}.table-toolbar .toolbar-filters{display:flex;gap:var(--space-3);flex-wrap:wrap;align-items:center}.table-toolbar .search-box{min-width:200px}.table-toolbar .search-box .form-input{width:100%}.table-toolbar .filter-select .form-select{min-width:150px}.table-toolbar .table-stats{font-size:var(--font-size-sm);color:var(--color-text-muted);white-space:nowrap}.table-container{background-color:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);overflow:hidden}.data-table{width:100%;border-collapse:collapse}.data-table thead{background-color:var(--color-bg-secondary);border-bottom:2px solid var(--color-border-light)}.data-table th{padding:var(--space-3) var(--space-4);text-align:left;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.data-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .15s ease}.data-table th.sortable:hover{background-color:var(--color-border-light)}.data-table th .sort-icon{display:inline-block;width:16px;height:16px;vertical-align:middle;margin-left:var(--space-1)}.data-table th .sort-icon.sort-asc:after{content:"";display:inline-block;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:6px solid var(--color-text-secondary)}.data-table th .sort-icon.sort-desc:after{content:"";display:inline-block;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid var(--color-text-secondary)}.data-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-light);font-size:var(--font-size-sm)}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover{background-color:var(--color-bg-secondary)}.data-table td a{color:var(--color-primary);text-decoration:none}.data-table td a:hover{text-decoration:underline}@media (max-width: 768px){.table-toolbar,.table-toolbar .toolbar-filters{flex-direction:column;align-items:stretch}.table-toolbar .search-box,.table-toolbar .filter-select{width:100%;min-width:auto}.table-toolbar .search-box .form-input,.table-toolbar .filter-select .form-select{width:100%}.table-toolbar .table-stats{text-align:center}.table-container{overflow-x:auto}.data-table{min-width:600px}}.schedule-item .item-title{font-weight:var(--font-weight-medium);color:var(--color-text);margin-bottom:var(--space-1)}.schedule-item .item-meta{display:flex;gap:var(--space-4);font-size:var(--font-size-sm);color:var(--color-text-muted)}.schedule-item .meta-time:before{content:""}.schedule-item .meta-arena:before{content:""}@media (max-width: 640px){.schedule-summary{flex-direction:row;justify-content:center}.schedule-item{gap:var(--space-3)}.schedule-item .item-date{width:40px}.schedule-item .item-meta{flex-direction:column;gap:var(--space-1)}}
