.header{background-color:#fff;border-bottom:1px solid var(--color-neutral-200);box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:var(--z-sticky);overflow:visible}.header-container{max-width:var(--container-max-width);margin:0 auto;padding:var(--spacing-4);display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-4);overflow:visible}.header-logo{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-primary);text-decoration:none;flex-shrink:0}.header-logo:hover{color:var(--color-primary-dark);text-decoration:none}.header-nav{display:flex;align-items:center;gap:var(--spacing-2);overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch}.header-nav-link{padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-neutral-700);text-decoration:none;white-space:nowrap;border-radius:var(--radius-base);transition:background-color var(--transition-fast),color var(--transition-fast);min-height:var(--touch-target-min);display:inline-flex;align-items:center}.header-nav-link:hover{background-color:var(--color-neutral-100);color:var(--color-neutral-900);text-decoration:none}.header-login{background-color:var(--color-primary);color:#fff}.header-login:hover{background-color:var(--color-primary-dark);color:#fff}.user-menu-container{position:relative}.user-menu-button{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);background-color:var(--color-neutral-100);border:1px solid var(--color-neutral-300);border-radius:var(--radius-base);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-neutral-700);transition:background-color var(--transition-fast),border-color var(--transition-fast);min-height:var(--touch-target-min)}.user-menu-button:hover{background-color:var(--color-neutral-200);border-color:var(--color-neutral-400)}.user-icon{font-size:var(--font-size-lg)}.user-name{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-arrow{font-size:var(--font-size-xs);color:var(--color-neutral-500)}.user-menu-dropdown{position:absolute;top:calc(100% + var(--spacing-2));right:0;min-width:250px;background-color:#fff;border:1px solid var(--color-neutral-300);border-radius:var(--radius-base);box-shadow:var(--shadow-lg);z-index:2000}.user-menu-header{padding:var(--spacing-4)}.user-menu-name{font-size:var(--font-size-base);font-weight:var(--font-weight-bold);color:var(--color-neutral-900);margin-bottom:var(--spacing-1)}.user-menu-email{font-size:var(--font-size-sm);color:var(--color-neutral-600);margin-bottom:var(--spacing-1);word-break:break-all}.user-menu-role{display:inline-block;padding:var(--spacing-1) var(--spacing-2);background-color:var(--color-primary-light);color:var(--color-primary-dark);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);border-radius:var(--radius-sm);margin-top:var(--spacing-2)}.user-menu-divider{height:1px;background-color:var(--color-neutral-200);margin:0}.user-menu-logout{width:100%;padding:var(--spacing-3) var(--spacing-4);background:transparent;border:none;text-align:left;cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-error);transition:background-color var(--transition-fast)}.user-menu-logout:hover{background-color:var(--color-neutral-100)}@media (max-width: 639px){.header-container{flex-direction:column;align-items:stretch}.header-logo{text-align:center}.header-nav{justify-content:center;flex-wrap:wrap}.header-nav-link{font-size:var(--font-size-xs);padding:var(--spacing-2)}}@media (min-width: 640px){.header-nav-link{font-size:var(--font-size-base)}}.footer{background-color:var(--color-neutral-800);color:var(--color-neutral-200);margin-top:auto}.footer-container{max-width:var(--container-max-width);margin:0 auto;padding:var(--spacing-6) var(--spacing-4);display:flex;flex-direction:column;align-items:center;gap:var(--spacing-4);text-align:center}.footer-text{margin:0;font-size:var(--font-size-sm)}.footer-links{display:flex;gap:var(--spacing-4);flex-wrap:wrap;justify-content:center}.footer-link{font-size:var(--font-size-sm);color:var(--color-neutral-300);text-decoration:none;transition:color var(--transition-fast)}.footer-link:hover{color:#fff;text-decoration:underline}@media (min-width: 640px){.footer-container{flex-direction:row;justify-content:space-between;text-align:left}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;padding:0;min-height:100vh;line-height:1.5}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer;border:none;background:none}a{color:inherit;text-decoration:none}ul,ol{list-style:none}table{border-collapse:collapse;border-spacing:0}h1,h2,h3,h4,h5,h6{font-weight:inherit;font-size:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}#root{isolation:isolate}:root{--color-primary: #2563eb;--color-primary-dark: #1d4ed8;--color-primary-light: #3b82f6;--color-primary-subtle: #dbeafe;--color-secondary: #059669;--color-secondary-dark: #047857;--color-secondary-light: #10b981;--color-secondary-subtle: #d1fae5;--color-neutral-50: #f9fafb;--color-neutral-100: #f3f4f6;--color-neutral-200: #e5e7eb;--color-neutral-300: #d1d5db;--color-neutral-400: #9ca3af;--color-neutral-500: #6b7280;--color-neutral-600: #4b5563;--color-neutral-700: #374151;--color-neutral-800: #1f2937;--color-neutral-900: #111827;--color-success: #10b981;--color-success-bg: #d1fae5;--color-warning: #f59e0b;--color-warning-bg: #fef3c7;--color-error: #ef4444;--color-error-bg: #fee2e2;--color-info: #3b82f6;--color-info-bg: #dbeafe;--font-family-base: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-family-mono: "SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, "Courier New", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 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-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--spacing-1: .25rem;--spacing-2: .5rem;--spacing-3: .75rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-8: 2rem;--spacing-10: 2.5rem;--spacing-12: 3rem;--spacing-16: 4rem;--spacing-20: 5rem;--spacing-xs: var(--spacing-1);--spacing-sm: var(--spacing-2);--spacing-md: var(--spacing-4);--spacing-lg: var(--spacing-6);--spacing-xl: var(--spacing-8);--spacing-2xl: var(--spacing-10);--spacing-3xl: var(--spacing-12);--container-max-width: 1280px;--container-padding: var(--spacing-4);--content-max-width: 768px;--touch-target-min: 44px;--radius-sm: .25rem;--radius-base: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-base: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070}body{font-family:var(--font-family-base);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--color-neutral-900);background-color:var(--color-neutral-50)}h1{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);margin-bottom:var(--spacing-4)}h2{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);margin-bottom:var(--spacing-3)}h3{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);margin-bottom:var(--spacing-3)}h4{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);line-height:var(--line-height-normal);margin-bottom:var(--spacing-2)}p{margin-bottom:var(--spacing-4)}a{color:var(--color-primary);transition:color var(--transition-fast)}a:hover{color:var(--color-primary-dark);text-decoration:underline}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mt-0{margin-top:0}.mt-2{margin-top:var(--spacing-2)}.mt-4{margin-top:var(--spacing-4)}.mt-6{margin-top:var(--spacing-6)}.mt-8{margin-top:var(--spacing-8)}.mb-0{margin-bottom:0}.mb-2{margin-bottom:var(--spacing-2)}.mb-4{margin-bottom:var(--spacing-4)}.mb-6{margin-bottom:var(--spacing-6)}.mb-8{margin-bottom:var(--spacing-8)}.px-4{padding-left:var(--spacing-4);padding-right:var(--spacing-4)}.py-4{padding-top:var(--spacing-4);padding-bottom:var(--spacing-4)}.hidden{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media (min-width: 640px){h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}}@media (min-width: 1024px){body{font-size:var(--font-size-lg)}}@media (min-width: 2560px){:root{--font-size-base: 1.25rem;--font-size-lg: 1.5rem;--font-size-xl: 1.75rem;--font-size-2xl: 2rem;--font-size-3xl: 2.5rem;--font-size-4xl: 3rem}}@media (max-width: 320px){:root{--font-size-base: .875rem;--spacing-4: .75rem}}@media print{body{background-color:#fff;color:#000}a{text-decoration:underline}}.app-layout{display:flex;flex-direction:column;min-height:100vh;overflow-x:hidden}.app-main{flex:1;padding:var(--spacing-6) 0}@media (min-width: 1024px){.app-main{padding:var(--spacing-8) 0}}.container{width:100%;margin-left:auto;margin-right:auto;padding-left:var(--container-padding);padding-right:var(--container-padding)}.container--default{max-width:var(--container-max-width)}.container--narrow{max-width:var(--content-max-width)}.container--wide{max-width:1600px}.container--full{max-width:100%;padding-left:0;padding-right:0}@media (min-width: 640px){.container{padding-left:var(--spacing-6);padding-right:var(--spacing-6)}}@media (min-width: 1024px){.container{padding-left:var(--spacing-8);padding-right:var(--spacing-8)}}.button{display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-family-base);font-weight:var(--font-weight-medium);text-align:center;white-space:nowrap;vertical-align:middle;-webkit-user-select:none;user-select:none;border:1px solid transparent;border-radius:var(--radius-md);transition:all var(--transition-base);cursor:pointer;min-height:var(--touch-target-min);padding:var(--spacing-3) var(--spacing-6)}.button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.button--primary{color:#fff;background-color:var(--color-primary);border-color:var(--color-primary)}.button--primary:hover:not(:disabled){background-color:var(--color-primary-dark);border-color:var(--color-primary-dark)}.button--secondary{color:#fff;background-color:var(--color-secondary);border-color:var(--color-secondary)}.button--secondary:hover:not(:disabled){background-color:var(--color-secondary-dark);border-color:var(--color-secondary-dark)}.button--outline{color:var(--color-primary);background-color:transparent;border-color:var(--color-primary)}.button--outline:hover:not(:disabled){color:#fff;background-color:var(--color-primary)}.button--ghost{color:var(--color-neutral-700);background-color:transparent;border-color:transparent}.button--ghost:hover:not(:disabled){background-color:var(--color-neutral-100)}.button--danger{color:#fff;background-color:var(--color-error);border-color:var(--color-error)}.button--danger:hover:not(:disabled){background-color:#dc2626;border-color:#dc2626}.button--small{font-size:var(--font-size-sm);padding:var(--spacing-2) var(--spacing-4);min-height:36px}.button--medium{font-size:var(--font-size-base);padding:var(--spacing-3) var(--spacing-6)}.button--large{font-size:var(--font-size-lg);padding:var(--spacing-4) var(--spacing-8);min-height:52px}.button--full-width{width:100%}.button--disabled,.button:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.home{padding:var(--spacing-8) 0}.home h1{text-align:center;margin-bottom:var(--spacing-3)}.home-subtitle{text-align:center;font-size:var(--font-size-lg);color:var(--color-neutral-600);margin-bottom:var(--spacing-8)}.home-features{display:grid;grid-template-columns:1fr;gap:var(--spacing-6);margin-bottom:var(--spacing-8)}.home-feature{padding:var(--spacing-6);background-color:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-base);transition:transform var(--transition-base),box-shadow var(--transition-base);cursor:pointer}.home-feature:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.home-feature h3{font-size:var(--font-size-xl);margin-bottom:var(--spacing-2)}.home-feature p{color:var(--color-neutral-600);margin-bottom:0}.home-actions{display:flex;flex-direction:column;gap:var(--spacing-4);align-items:center}@media (min-width: 640px){.home-features{grid-template-columns:repeat(2,1fr)}.home-actions{flex-direction:row;justify-content:center}}@media (min-width: 1024px){.home{padding:var(--spacing-12) 0}}.input-wrapper{display:flex;flex-direction:column;gap:var(--spacing-2);margin-bottom:var(--spacing-4)}.input-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-neutral-700)}.input-required{color:var(--color-error);margin-left:var(--spacing-1)}.input{width:100%;min-height:var(--touch-target-min);padding:var(--spacing-3) var(--spacing-4);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-neutral-900);background-color:#fff;border:1px solid var(--color-neutral-300);border-radius:var(--radius-md);transition:border-color var(--transition-base),box-shadow var(--transition-base)}.input::placeholder{color:var(--color-neutral-400)}.input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-subtle)}.input:disabled,.input--disabled{background-color:var(--color-neutral-100);color:var(--color-neutral-500);cursor:not-allowed}.input--error{border-color:var(--color-error)}.input--error:focus{border-color:var(--color-error);box-shadow:0 0 0 3px var(--color-error-bg)}.input-error-message{font-size:var(--font-size-sm);color:var(--color-error);margin-top:var(--spacing-1)}.input-help-text{font-size:var(--font-size-sm);color:var(--color-neutral-600);margin-top:var(--spacing-1)}@media (min-width: 1024px){.input{font-size:var(--font-size-base)}}.error-message{padding:var(--spacing-4);border-radius:var(--radius-md);border-left:4px solid;margin-bottom:var(--spacing-4)}.error-message--error{background-color:var(--color-error-bg);border-color:var(--color-error);color:#991b1b}.error-message--warning{background-color:var(--color-warning-bg);border-color:var(--color-warning);color:#92400e}.error-message--info{background-color:var(--color-info-bg);border-color:var(--color-info);color:#1e40af}.error-message-header{display:flex;align-items:center;gap:var(--spacing-2);margin-bottom:var(--spacing-2)}.error-message-icon{flex-shrink:0}.error-message-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);margin:0}.error-message-text{margin:0 0 var(--spacing-3) 0;font-size:var(--font-size-sm);line-height:var(--line-height-relaxed)}.error-message-retry{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:inherit;background-color:#fffc;border:1px solid currentColor;border-radius:var(--radius-base);cursor:pointer;transition:background-color var(--transition-fast);min-height:var(--touch-target-min)}.error-message-retry:hover{background-color:#fff}.error-message-retry:focus-visible{outline:2px solid currentColor;outline-offset:2px}.login{max-width:480px;margin:var(--spacing-12) auto;padding:var(--spacing-8);background-color:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.login h1{text-align:center;margin-bottom:var(--spacing-2)}.login-subtitle{text-align:center;color:var(--color-neutral-600);margin-bottom:var(--spacing-6)}.login-form{display:flex;flex-direction:column;gap:var(--spacing-4)}@media (max-width: 639px){.login{margin:var(--spacing-6) var(--spacing-4);padding:var(--spacing-6)}}.competition-card{display:block;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);text-decoration:none;color:inherit;transition:var(--transition-base);box-shadow:var(--shadow-sm)}.competition-card:hover,.competition-card:focus{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--color-primary)}.competition-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border)}.competition-name{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0;flex:1;word-wrap:break-word}.competition-status{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);text-transform:capitalize;white-space:nowrap}.competition-details{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.competition-details>div{display:flex;justify-content:space-between;align-items:center}.competition-details .label{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.competition-details .value{font-size:var(--font-size-base);color:var(--color-text-primary);text-align:right}.competition-card-footer{text-align:right}.view-link{font-size:var(--font-size-sm);color:var(--color-primary);font-weight:var(--font-weight-medium)}@media (max-width: 768px){.competition-card{min-height:44px;padding:var(--spacing-md)}}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-4);padding:var(--spacing-8)}.loading-spinner{position:relative;display:inline-block}.loading-spinner--small{width:24px;height:24px}.loading-spinner--medium{width:48px;height:48px}.loading-spinner--large{width:64px;height:64px}.loading-spinner-circle{width:100%;height:100%;border:3px solid var(--color-neutral-200);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.loading-spinner--small .loading-spinner-circle{border-width:2px}.loading-spinner--large .loading-spinner-circle{border-width:4px}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{font-size:var(--font-size-base);color:var(--color-neutral-600);text-align:center}.loading--fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#ffffffe6;z-index:var(--z-modal)}.competition-list{padding:var(--spacing-md) 0}.competition-section{margin-bottom:var(--spacing-2xl)}.competition-section h2{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--color-border)}.competition-grid{display:grid;gap:var(--spacing-lg);grid-template-columns:1fr}@media (min-width: 768px){.competition-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.competition-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1440px){.competition-grid{grid-template-columns:repeat(4,1fr)}}.competition-list-empty{text-align:center;padding:var(--spacing-2xl) var(--spacing-xl);color:var(--color-text-secondary);max-width:600px;margin:var(--spacing-2xl) auto;background:var(--color-neutral-50);border-radius:var(--radius-lg);border:2px dashed var(--color-neutral-300)}.competition-list-empty .empty-state-icon{font-size:4rem;margin-bottom:var(--spacing-md);opacity:.6}.competition-list-empty h2{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--spacing-md)}.competition-list-empty p{font-size:var(--font-size-base);line-height:1.6;margin-bottom:var(--spacing-md)}.competition-list-empty .btn{margin-top:var(--spacing-lg)}.competition-list-empty .empty-state-icon{font-size:4rem;margin-bottom:var(--spacing-md)}.competition-list-empty h2{font-size:var(--font-size-xl);color:var(--color-text-primary);margin-bottom:var(--spacing-sm)}.competition-list-empty p{margin:var(--spacing-sm) 0;line-height:1.6}.competitions-page{padding:var(--spacing-lg) 0}.page-header{margin-bottom:var(--spacing-xl);display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-lg);flex-wrap:wrap}.page-header>div{flex:1;min-width:250px}.page-header h1{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--spacing-sm) 0;text-align:left}.page-description{font-size:var(--font-size-lg);color:var(--color-text-secondary);margin:0;text-align:left}.page-header .btn{white-space:nowrap;align-self:flex-start}.table-container{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin-bottom:var(--spacing-4)}.table{width:100%;border-collapse:collapse;background-color:#fff;border-radius:var(--radius-md);overflow:hidden}.table-header{padding:var(--spacing-3) var(--spacing-4);text-align:left;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);color:var(--color-neutral-700);background-color:var(--color-neutral-50);border-bottom:1px solid var(--color-neutral-200)}.table-row{border-bottom:1px solid var(--color-neutral-200);transition:background-color var(--transition-fast)}.table-row:hover{background-color:var(--color-neutral-50)}.table-row:last-child{border-bottom:none}.table-cell{padding:var(--spacing-4);font-size:var(--font-size-base);color:var(--color-neutral-900)}.table-empty{padding:var(--spacing-8);text-align:center;color:var(--color-neutral-500);background-color:#fff;border-radius:var(--radius-md)}@media (max-width: 639px){.table,.table thead,.table tbody,.table tr,.table th,.table td{display:block}.table thead{display:none}.table-row{margin-bottom:var(--spacing-4);border:1px solid var(--color-neutral-200);border-radius:var(--radius-md);overflow:hidden}.table-cell{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-3) var(--spacing-4);border-bottom:1px solid var(--color-neutral-100)}.table-cell:last-child{border-bottom:none}.table-cell:before{content:attr(data-label);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);margin-right:var(--spacing-4)}}@media (min-width: 640px){.table-cell[data-label]:before{display:none}}.standings-table{margin:var(--spacing-md) 0}.standings-empty{text-align:center;padding:var(--spacing-xl);color:var(--color-text-secondary);background:var(--color-surface);border-radius:var(--border-radius-md);border:1px solid var(--color-border)}.team-link{color:var(--color-primary);text-decoration:none;font-weight:var(--font-weight-medium);transition:var(--transition-base)}.team-link:hover,.team-link:focus{text-decoration:underline;color:var(--color-primary-dark)}.rank-badge{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;font-weight:var(--font-weight-bold);font-size:var(--font-size-sm)}.rank-1{background-color:gold;color:#333}.rank-2{background-color:silver;color:#333}.rank-3{background-color:#cd7f32;color:#fff}.rank-default{background-color:var(--color-background);color:var(--color-text-primary);border:1px solid var(--color-border)}@media (max-width: 768px){.rank-badge{width:28px;height:28px;font-size:var(--font-size-xs)}}.division-standings{margin:var(--spacing-lg) 0}.division-selector{margin-bottom:var(--spacing-lg)}.division-label{display:block;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin-bottom:var(--spacing-sm)}.division-tabs{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);border-bottom:2px solid var(--color-border)}.division-tab{background:none;border:none;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);cursor:pointer;transition:var(--transition-base);border-bottom:3px solid transparent;margin-bottom:-2px;min-height:44px}.division-tab:hover,.division-tab:focus{color:var(--color-text-primary);background-color:var(--color-background)}.division-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:var(--font-weight-bold)}.standings-content{margin-top:var(--spacing-md)}.division-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--spacing-md)}.division-standings-empty{text-align:center;padding:var(--spacing-xl);color:var(--color-text-secondary);background:var(--color-surface);border-radius:var(--border-radius-md);border:1px solid var(--color-border)}@media (max-width: 768px){.division-tabs{flex-direction:column;border-bottom:none}.division-tab{width:100%;text-align:left;border-bottom:1px solid var(--color-border);border-left:3px solid transparent;margin-bottom:0}.division-tab.active{border-left-color:var(--color-primary);border-bottom-color:var(--color-border);background-color:var(--color-background)}}.competition-details-page{padding:var(--spacing-lg) 0}.page-header h1{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--spacing-md) 0}.competition-meta{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.status-badge,.type-badge{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);text-transform:capitalize}.status-badge{background-color:#f8f9fa;color:#6c757d}.status-active{background-color:#d4edda;color:#155724}.status-upcoming{background-color:#d1ecf1;color:#0c5460}.status-completed{background-color:#f8f9fa;color:#6c757d}.type-badge{background-color:var(--color-primary);color:#fff}.competition-info{background:var(--color-surface);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-xl);box-shadow:var(--shadow-sm)}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.info-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.info-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}.info-value{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.competition-description{padding-top:var(--spacing-lg);border-top:1px solid var(--color-border)}.competition-description h2{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--spacing-sm) 0}.competition-description p{font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:1.6;margin:0}.standings-section{margin-top:var(--spacing-xl)}.standings-section h2{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--spacing-lg) 0}.not-found{text-align:center;padding:var(--spacing-3xl) var(--spacing-lg)}.not-found p{font-size:var(--font-size-base);color:var(--color-text-secondary);margin-bottom:var(--spacing-xl)}@media (min-width: 768px){.page-header h1{font-size:var(--font-size-4xl)}.info-grid{grid-template-columns:repeat(4,1fr)}}.competition-actions{margin:var(--spacing-xl) 0;display:flex;gap:var(--spacing-md);flex-wrap:wrap}.competition-actions a{text-decoration:none}.standings-page{padding:var(--spacing-lg) 0}.page-description{color:var(--color-text-secondary);font-size:var(--font-size-base);margin-top:var(--spacing-sm)}.no-divisions,.not-found{text-align:center;padding:var(--spacing-3xl) var(--spacing-lg);background:var(--color-surface);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm)}.no-divisions p,.not-found p{font-size:var(--font-size-base);color:var(--color-text-secondary);margin:0}.empty-state{text-align:center;padding:var(--spacing-3xl) var(--spacing-lg);background:var(--color-neutral-50);border-radius:var(--border-radius-lg);border:2px dashed var(--color-neutral-300);max-width:600px;margin:var(--spacing-2xl) auto}.empty-state-icon{font-size:4rem;margin-bottom:var(--spacing-md);opacity:.6}.empty-state h2{font-size:var(--font-size-xl);color:var(--color-text-primary);margin-bottom:var(--spacing-sm);font-weight:var(--font-weight-bold)}.empty-state p{color:var(--color-text-secondary);margin:var(--spacing-sm) 0;line-height:1.6}.empty-state .btn{margin-top:var(--spacing-lg)}.btn-link{display:inline-block;padding:var(--spacing-sm) var(--spacing-lg);background:var(--color-primary);color:#fff;text-decoration:none;border-radius:var(--border-radius-md);font-weight:var(--font-weight-medium);min-height:44px;line-height:28px}.btn-link:hover{opacity:.9}.competitions-standings-list{display:flex;flex-direction:column;gap:var(--spacing-xl)}.competition-standings-section{background:var(--color-surface);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);padding:var(--spacing-lg)}.competition-standings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:2px solid var(--color-border)}.competition-standings-header h2{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0}.view-full-link{color:var(--color-primary);text-decoration:none;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);white-space:nowrap}.view-full-link:hover{text-decoration:underline}.no-divisions-text{color:var(--color-text-secondary);font-style:italic;padding:var(--spacing-md);text-align:center}@media (max-width: 767px){.competition-standings-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.view-full-link{align-self:flex-end}}.fixtures-page{padding:var(--spacing-md) 0}.page-header h1{margin:var(--spacing-md) 0;font-size:var(--font-size-2xl);color:var(--color-neutral-900)}.back-link{display:inline-flex;align-items:center;color:var(--color-primary);text-decoration:none;font-size:var(--font-size-sm);margin-bottom:var(--spacing-sm)}.fixtures-controls{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl);padding:var(--spacing-lg);background:#fff;border-radius:var(--radius-lg);border:1px solid var(--color-neutral-200)}.control-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.control-label{font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);font-size:var(--font-size-sm)}.division-tabs{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.division-tab{padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--color-neutral-300);background:#fff;border-radius:var(--radius-md);cursor:pointer;font-weight:var(--font-weight-medium);color:var(--color-neutral-700);transition:all var(--transition-base);min-height:44px}.division-tab:hover{border-color:var(--color-primary);color:var(--color-primary)}.division-tab.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.month-select{padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--color-neutral-300);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-neutral-900);background:#fff;cursor:pointer;min-height:44px;max-width:300px}.month-select:focus{outline:none;border-color:var(--color-primary)}.fixtures-calendar{display:flex;flex-direction:column;gap:var(--spacing-xl)}.week-section{background:#fff;border-radius:var(--radius-lg);border:1px solid var(--color-neutral-200);overflow:hidden}.week-header{background:var(--color-neutral-100);padding:var(--spacing-md) var(--spacing-lg);margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-neutral-700);border-bottom:1px solid var(--color-neutral-200)}.week-matches{display:flex;flex-direction:column}.fixture-card{display:grid;grid-template-columns:140px 1fr auto;gap:var(--spacing-lg);align-items:center;padding:var(--spacing-lg);border-bottom:1px solid var(--color-neutral-100);transition:background var(--transition-base)}.fixture-card:last-child{border-bottom:none}.fixture-card:hover{background:var(--color-neutral-50)}.fixture-card.completed{background:var(--color-success-bg)}.fixture-card.completed:hover{background:var(--color-success-bg);opacity:.9}.fixture-date-column{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-sm);background:var(--color-neutral-50);border-radius:var(--radius-md);min-width:120px}.match-date{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);color:var(--color-neutral-800);text-align:center}.match-time{font-size:var(--font-size-xs);color:var(--color-neutral-600);margin-top:var(--spacing-xs)}.fixture-details{display:flex;flex-direction:column;gap:var(--spacing-sm);flex:1}.match-teams{display:flex;flex-direction:column;gap:var(--spacing-xs)}.team-row{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md)}.team-name{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-neutral-900);text-decoration:none;transition:color var(--transition-fast)}.team-name:hover{color:var(--color-primary)}.team-score{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-primary);min-width:32px;text-align:center}.versus{text-align:center;color:var(--color-neutral-500);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;margin:var(--spacing-xs) 0}.match-venue{font-size:var(--font-size-sm);color:var(--color-neutral-600)}.fixture-actions{display:flex;align-items:center;justify-content:flex-end}.view-details-btn{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary);color:#fff;text-decoration:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:background var(--transition-fast);min-height:44px;display:flex;align-items:center}.view-details-btn:hover{background:var(--color-primary-dark)}.status-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-md);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase}.status-badge.upcoming{background:var(--color-info-bg);color:var(--color-info)}.fixtures-content .empty-state{text-align:center;padding:var(--spacing-3xl) var(--spacing-md);color:var(--color-neutral-600);background:var(--color-neutral-50);border-radius:var(--radius-lg);border:2px dashed var(--color-neutral-300);max-width:600px;margin:var(--spacing-2xl) auto}.fixtures-content .empty-state .empty-state-icon{font-size:4rem;margin-bottom:var(--spacing-md);opacity:.6}.fixtures-content .empty-state h3{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--spacing-md)}.fixtures-content .empty-state p{font-size:var(--font-size-base);line-height:1.6;margin-bottom:var(--spacing-sm)}.fixtures-content .empty-state .btn{margin-top:var(--spacing-lg)}@media (max-width: 768px){.fixtures-controls{padding:var(--spacing-md)}.fixture-card{grid-template-columns:1fr;gap:var(--spacing-md)}.fixture-date-column{min-width:100%;flex-direction:row;justify-content:space-between}.fixture-actions{justify-content:flex-start}}@media (max-width: 480px){.team-name{font-size:var(--font-size-sm)}.team-score{font-size:var(--font-size-lg)}.month-select{max-width:100%}}.fixtures-calendar-page{padding:2rem 0}.control-group{margin-bottom:2rem}.control-group label{display:block;margin-bottom:.75rem;font-weight:600;color:var(--text-primary)}.view-mode-controls{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.view-mode-btn{padding:.75rem 1.5rem;border:2px solid var(--border-color);background:#fff;border-radius:6px;cursor:pointer;font-weight:500;font-size:.95rem;transition:all .2s}.view-mode-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.view-mode-btn.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.date-range-controls{display:flex;gap:2rem;margin-bottom:2rem;padding:1.5rem;background:#fff;border:1px solid var(--border-color);border-radius:8px}.date-input-group{display:flex;flex-direction:column;gap:.5rem;flex:1}.date-input-group label{font-weight:600;color:var(--text-primary)}.date-input-group input[type=date]{padding:.75rem;border:1px solid var(--border-color);border-radius:4px;font-size:1rem}.month-navigation{display:flex;align-items:center;justify-content:center;gap:2rem;margin-bottom:2rem;padding:1rem;background:#fff;border-radius:8px;border:1px solid var(--border-color)}.month-navigation h2{margin:0;font-size:1.5rem;color:var(--text-primary);min-width:220px;text-align:center}.nav-btn,.today-btn{padding:.5rem 1.25rem;border:1px solid var(--border-color);background:#fff;border-radius:4px;cursor:pointer;font-weight:500;transition:all .2s}.nav-btn:hover,.today-btn:hover{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.today-btn{background:var(--secondary-color);color:#fff;border-color:var(--secondary-color)}.fixtures-content{background:#fff;border-radius:8px;padding:1.5rem;border:1px solid var(--border-color)}.calendar-container{display:grid;grid-template-columns:2fr 1fr;gap:2rem}.calendar-grid{display:flex;flex-direction:column}.calendar-header{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--border-color);border:1px solid var(--border-color);border-bottom:none}.calendar-day-name{background:#f8f9fa;padding:.75rem;text-align:center;font-weight:600;color:var(--text-secondary);font-size:.85rem;text-transform:uppercase}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--border-color);border:1px solid var(--border-color)}.calendar-day{background:#fff;min-height:80px;padding:.5rem;cursor:default;transition:all .2s;position:relative}.calendar-day.other-month{background:#f8f9fa;opacity:.5}.calendar-day.today{background:#e3f2fd}.calendar-day.has-fixtures{cursor:pointer;border:2px solid transparent}.calendar-day.has-fixtures:hover{background:#f0f8ff;border-color:var(--primary-color)}.calendar-day.selected{background:#bbdefb;border-color:var(--primary-color)}.day-number{font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.fixture-count{font-size:.7rem;color:var(--primary-color);font-weight:600;padding:.25rem;background:#e3f2fd;border-radius:3px;text-align:center}.selected-date-fixtures{max-height:600px;overflow-y:auto}.selected-date-fixtures h3{margin:0 0 1rem;color:var(--text-primary);font-size:1.1rem;padding-bottom:.75rem;border-bottom:2px solid var(--border-color);position:sticky;top:0;background:#fff;z-index:1}.fixtures-list{display:flex;flex-direction:column;gap:1rem}.fixture-card{padding:1rem;border:1px solid var(--border-color);border-radius:6px;background:#fff;transition:box-shadow .2s}.fixture-card:hover{box-shadow:0 2px 8px #0000001a}.fixture-card.completed{border-left:4px solid #28a745}.match-time{font-size:.85rem;color:var(--text-secondary);font-weight:600;margin-bottom:.5rem}.match-teams{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.5rem}.team-row{display:flex;justify-content:space-between;align-items:center;padding:.25rem 0}.team-row a{color:var(--text-primary);text-decoration:none;font-weight:500}.team-row a:hover{color:var(--primary-color);text-decoration:underline}.versus{text-align:center;color:var(--text-secondary);font-size:.75rem;font-weight:600;margin:.25rem 0}.score{font-weight:700;color:var(--text-primary);font-size:1.1rem}.match-venue{font-size:.85rem;color:var(--text-secondary);margin-top:.5rem}.view-details{display:inline-block;margin-top:.5rem;color:var(--primary-color);text-decoration:none;font-size:.85rem;font-weight:600}.view-details:hover{text-decoration:underline}.fixtures-list-view{display:flex;flex-direction:column;gap:1rem}.fixture-card-large{display:grid;grid-template-columns:auto 1fr auto;gap:1.5rem;padding:1.5rem;border:1px solid var(--border-color);border-radius:8px;background:#fff;align-items:center;transition:all .2s}.fixture-card-large:hover{box-shadow:0 4px 12px #0000001a}.fixture-card-large.completed{border-left:4px solid #28a745}.fixture-date-time{text-align:center;padding-right:1.5rem;border-right:2px solid var(--border-color)}.fixture-date-time .date{font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.fixture-date-time .time{font-size:.9rem;color:var(--text-secondary)}.match-teams-large{display:flex;flex-direction:column;gap:.5rem}.match-teams-large .team-row{display:flex;justify-content:space-between;align-items:center;gap:1rem}.match-teams-large .team-row a{font-size:1.1rem}.fixture-actions .status-badge{padding:.5rem 1rem;background:#ffc107;color:#856404;border-radius:4px;font-weight:600;font-size:.85rem}@media (max-width: 1024px){.calendar-container{grid-template-columns:1fr}.selected-date-fixtures{max-height:none}}@media (max-width: 768px){.view-mode-controls{flex-direction:column}.view-mode-btn{width:100%}.month-navigation{flex-wrap:wrap;gap:1rem}.month-navigation h2{width:100%;order:-1}.date-range-controls{flex-direction:column;gap:1rem}.fixture-card-large{grid-template-columns:1fr;gap:1rem}.fixture-date-time{border-right:none;border-bottom:2px solid var(--border-color);padding-right:0;padding-bottom:1rem}.calendar-day{min-height:60px;font-size:.85rem}}.match-details{background:var(--color-surface);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-md)}.match-header{margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:2px solid var(--color-border)}.match-teams{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.team-info{flex:1;text-align:center}.team-name{display:block;font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-primary);text-decoration:none;margin-bottom:var(--spacing-xs)}.team-name:hover,.team-name:focus{text-decoration:underline}.team-score{display:block;font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.match-vs{font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.match-meta{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.match-date{font-weight:var(--font-weight-medium)}.match-venue{font-style:italic}.games-section h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--spacing-md)}.games-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.game-item{background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--border-radius-md);padding:var(--spacing-md)}.game-number{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-text-secondary);text-transform:uppercase;margin-bottom:var(--spacing-sm)}.game-matchup{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-sm)}.player{flex:1;display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm);border-radius:var(--border-radius-sm);transition:var(--transition-base)}.player.winner{background-color:#d4edda;font-weight:var(--font-weight-bold)}.player-name{flex:1}.breaker-badge{font-size:var(--font-size-lg)}.winner-badge{color:#28a745;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}.game-matchup .vs{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.game-detail{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.detail-label{font-weight:var(--font-weight-medium)}.games-empty,.match-details-empty{text-align:center;padding:var(--spacing-xl);color:var(--color-text-secondary)}@media (max-width: 768px){.match-teams{flex-direction:column;gap:var(--spacing-sm)}.team-info{width:100%}.match-vs{transform:rotate(90deg);margin:var(--spacing-xs) 0}.game-matchup{flex-direction:column;gap:var(--spacing-sm)}.player{width:100%}.game-matchup .vs{display:none}}.match-details-page{padding:var(--spacing-lg) 0}.team-profile-page{padding:var(--spacing-lg) 0}.division-name{font-size:var(--font-size-lg);color:var(--color-text-secondary);margin-top:var(--spacing-xs)}.team-stats,.team-roster,.recent-matches{margin-bottom:var(--spacing-xl)}.team-stats h2,.team-roster h2,.recent-matches h2{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--spacing-lg) 0}.stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--border-radius-md);padding:var(--spacing-md);text-align:center;box-shadow:var(--shadow-sm)}.player-link{color:var(--color-primary);text-decoration:none;font-weight:var(--font-weight-medium)}.player-link:hover,.player-link:focus{text-decoration:underline}.result-badge{display:inline-block;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm)}.result-badge.win{background-color:#d4edda;color:#155724}.result-badge.loss{background-color:#f8d7da;color:#721c24}.empty-message{text-align:center;padding:var(--spacing-xl);color:var(--color-text-secondary);background:var(--color-surface);border-radius:var(--border-radius-md);border:1px solid var(--color-border)}@media (min-width: 768px){.page-header h1{font-size:var(--font-size-4xl)}.stats-grid{grid-template-columns:repeat(3,1fr)}}.player-stats{background:var(--color-surface);border-radius:var(--border-radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-md)}.player-info{text-align:center;margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:2px solid var(--color-border)}.player-name{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--spacing-sm) 0}.player-team{display:inline-block;font-size:var(--font-size-lg);color:var(--color-primary);text-decoration:none;font-weight:var(--font-weight-medium)}.player-team:hover,.player-team:focus{text-decoration:underline}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md)}.stat-item{background:var(--color-background);border:1px solid var(--color-border);border-radius:var(--border-radius-md);padding:var(--spacing-md);text-align:center;transition:var(--transition-base)}.stat-item:hover{box-shadow:var(--shadow-sm);transform:translateY(-2px)}.stat-label{display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);margin-bottom:var(--spacing-xs);text-transform:uppercase;letter-spacing:.5px}.stat-value{display:block;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.no-stats-message{text-align:center;padding:var(--spacing-lg);color:var(--color-text-secondary);font-style:italic;margin-top:var(--spacing-md)}.player-stats-empty{text-align:center;padding:var(--spacing-xl);color:var(--color-text-secondary);background:var(--color-surface);border-radius:var(--border-radius-md);border:1px solid var(--color-border)}@media (min-width: 768px){.stats-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1024px){.stats-grid{grid-template-columns:repeat(6,1fr)}}@media (max-width: 480px){.stats-grid{grid-template-columns:1fr}}.player-profile-page{padding:var(--spacing-lg) 0}.page-header{margin-bottom:var(--spacing-xl);text-align:center}.back-link{display:inline-block;font-size:var(--font-size-sm);color:var(--color-primary);text-decoration:none;margin-bottom:var(--spacing-md);font-weight:var(--font-weight-medium)}.back-link:hover,.back-link:focus{text-decoration:underline}.page-header h1{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0}.not-found{text-align:center;padding:var(--spacing-3xl) var(--spacing-lg);background:var(--color-surface);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm)}.not-found h1{font-size:var(--font-size-2xl);color:var(--color-text-primary);margin-bottom:var(--spacing-md)}.not-found p{font-size:var(--font-size-base);color:var(--color-text-secondary);margin:0}@media (min-width: 768px){.page-header h1{font-size:var(--font-size-4xl)}}.match-schedule{margin-bottom:var(--spacing-xl)}.match-schedule h3{margin:0 0 var(--spacing-md) 0;color:var(--color-text);font-size:1.25rem}.match-schedule.empty{padding:var(--spacing-xl);text-align:center;color:var(--color-text-secondary);background:var(--color-background);border-radius:8px}.matches-list{display:grid;gap:var(--spacing-md);grid-template-columns:1fr}@media (min-width: 768px){.matches-list{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1200px){.matches-list{grid-template-columns:repeat(3,1fr)}}.match-card{background:#fff;border:1px solid var(--color-border);border-radius:8px;padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-md);transition:box-shadow .2s}.match-card:hover{box-shadow:0 4px 12px #0000001a}.match-header{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border)}.match-date{display:flex;flex-direction:column;gap:var(--spacing-xs)}.match-date .date{font-weight:600;color:var(--color-text);font-size:.875rem}.match-date .time{color:var(--color-text-secondary);font-size:.75rem}.match-location{font-size:.75rem;color:var(--color-text-secondary);text-align:right}.match-teams{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);padding:var(--spacing-sm) 0}.team{flex:1;text-align:center}.team-name{color:var(--color-text);text-decoration:none;font-weight:600;font-size:.95rem;display:block;padding:var(--spacing-xs);border-radius:4px;transition:background-color .2s}.team-name:hover{background-color:var(--color-background);color:var(--color-primary)}.vs{color:var(--color-text-secondary);font-weight:400;font-size:.875rem;flex-shrink:0}.match-actions{display:flex;justify-content:center;padding-top:var(--spacing-sm);border-top:1px solid var(--color-border)}.match-actions button{width:100%}@media (max-width: 767px){.match-teams{flex-direction:column;gap:var(--spacing-xs)}.vs{order:2}.team:first-child{order:1}.team:last-child{order:3}.team-name{font-size:1rem}}.team-members{max-width:1200px;margin:0 auto}.team-members-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.team-members-header h2{margin:0;color:var(--text-primary, #1a1a1a)}.member-form-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:2rem;margin-bottom:2rem;box-shadow:0 1px 3px #0000001a}.member-form-card h3{margin:0 0 1.5rem;color:var(--text-primary, #1a1a1a)}.member-form{display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column}.form-group label{margin-bottom:.5rem;font-weight:500;color:var(--text-primary, #1a1a1a)}.form-group input{padding:.75rem;border:1px solid #d1d5db;border-radius:6px;font-size:1rem;transition:border-color .2s}.form-group input:focus{outline:none;border-color:var(--primary-color, #2563eb);box-shadow:0 0 0 3px #2563eb1a}.form-group input:disabled{background-color:#f3f4f6;cursor:not-allowed}.form-group input::placeholder{color:#9ca3af}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:.5rem}.members-list{margin-top:2rem}.empty-state{text-align:center;padding:3rem 1rem;color:#6b7280;background:#f9fafb;border-radius:8px;border:1px dashed #d1d5db}.members-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.member-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem;display:flex;justify-content:space-between;align-items:flex-start;transition:box-shadow .2s,border-color .2s}.member-card:hover{box-shadow:0 4px 6px #0000000d;border-color:#d1d5db}.member-info{flex:1;min-width:0}.member-info h4{margin:0 0 .5rem;color:var(--text-primary, #1a1a1a);font-size:1.125rem}.member-email,.member-phone{margin:.25rem 0;color:#6b7280;font-size:.875rem;word-break:break-word}.member-phone{color:#9ca3af}.member-actions{display:flex;gap:.5rem;flex-shrink:0;margin-left:1rem}.action-btn{background:none;border:1px solid #e5e7eb;border-radius:6px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;font-size:1rem}.action-btn:hover{background-color:#f9fafb;border-color:#d1d5db;transform:translateY(-1px)}.edit-btn:hover{background-color:#eff6ff;border-color:#2563eb}.delete-btn:hover{background-color:#fef2f2;border-color:#dc2626}.action-btn:active{transform:translateY(0)}@media (max-width: 768px){.team-members-header{flex-direction:column;align-items:flex-start;gap:1rem}.members-grid{grid-template-columns:1fr}.member-form-card{padding:1.5rem}.form-actions{flex-direction:column-reverse}.form-actions button{width:100%}}.captain-dashboard{padding:var(--spacing-lg);max-width:1200px;margin:0 auto}.dashboard-header .team-name{margin:0;color:var(--color-text-secondary);font-size:1.1rem}.dashboard-tabs{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl);border-bottom:2px solid #e5e7eb}.tab-btn{background:none;border:none;border-bottom:2px solid transparent;padding:var(--spacing-md) var(--spacing-lg);margin-bottom:-2px;color:var(--color-text-secondary);font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.tab-btn:hover{color:var(--color-text);background-color:#00000005}.tab-btn.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.auth-required{text-align:center;padding:var(--spacing-xl);background:var(--color-background);border-radius:8px}.pending-section,.scheduled-section{margin-bottom:var(--spacing-xl)}.pending-section h2,.scheduled-section h2{margin:0 0 var(--spacing-md) 0;color:var(--color-text);font-size:1.5rem}.pending-matches{display:grid;gap:var(--spacing-md);grid-template-columns:1fr}@media (min-width: 768px){.pending-matches{grid-template-columns:repeat(2,1fr)}}.pending-card{background:#fff;border:2px solid var(--color-warning);border-radius:8px;padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-md)}.pending-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-sm)}.pending-header h3{margin:0;color:var(--color-text);font-size:1.1rem;flex:1}.status-badge.pending{background-color:var(--color-warning-light);color:var(--color-warning)}.status-badge.conflict{background-color:var(--color-error-light);color:var(--color-error)}.pending-details{flex:1}.pending-details p{margin:0 0 var(--spacing-xs) 0;color:var(--color-text-secondary);font-size:.875rem}.conflict-notice{color:var(--color-error);font-weight:600;display:flex;align-items:center;gap:var(--spacing-xs)}.empty-state h3{margin:0 0 var(--spacing-sm) 0;color:var(--color-text)}.empty-state p{margin:0;color:var(--color-text-secondary)}@media (max-width: 767px){.captain-dashboard{padding:var(--spacing-md)}.dashboard-header h1{font-size:1.5rem}.pending-header{flex-direction:column}.status-badge{align-self:flex-start}}.game-entry{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.game-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--color-border)}.game-header h4{margin:0;color:var(--color-text);font-size:1.1rem}.winner-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:4px;font-size:.875rem;font-weight:600}.winner-team1{background-color:var(--color-primary-light);color:var(--color-primary)}.winner-team2{background-color:var(--color-secondary-light);color:var(--color-secondary)}.game-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-md)}@media (min-width: 768px){.game-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.game-grid{grid-template-columns:1fr 1fr}.game-details:last-child{grid-column:1 / -1}}.player-selection,.game-details{display:flex;flex-direction:column}.player-selection label,.game-details label{margin-bottom:var(--spacing-xs);font-weight:600;color:var(--color-text);font-size:.875rem}.player-selection select,.game-details select{padding:var(--spacing-sm);border:1px solid var(--color-border);border-radius:4px;font-size:1rem;background:#fff;min-height:44px}.player-selection select:focus,.game-details select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.winner-selection select[value=team1]{border-color:var(--color-primary)}.winner-selection select[value=team2]{border-color:var(--color-secondary)}label:after{content:" "}.match-logger{background:#fff;border-radius:8px;padding:var(--spacing-lg);box-shadow:0 2px 8px #0000001a}.match-logger-header{margin-bottom:var(--spacing-lg);text-align:center}.match-logger-header h3{margin:0 0 var(--spacing-md) 0;color:var(--color-text);font-size:1.5rem}.match-info{display:flex;justify-content:center;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.team-name{font-weight:600;font-size:1.1rem;color:var(--color-text)}.vs{color:var(--color-text-secondary);font-weight:400}.score-summary{display:flex;justify-content:center;align-items:center;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl);padding:var(--spacing-lg);background:var(--color-background);border-radius:8px}.score-box{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm)}.team-label{font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--color-text-secondary)}.score{font-size:3rem;font-weight:700;line-height:1}.score-box.team1 .score{color:var(--color-primary)}.score-box.team2 .score{color:var(--color-secondary)}.score-divider{font-size:2rem;font-weight:300;color:var(--color-text-secondary)}.games-list{margin-bottom:var(--spacing-xl)}.actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;padding-top:var(--spacing-lg);border-top:1px solid var(--color-border)}.actions button{min-width:120px}@media (max-width: 767px){.match-logger{padding:var(--spacing-md)}.score-summary{gap:var(--spacing-md);padding:var(--spacing-md)}.score{font-size:2.5rem}.actions{flex-direction:column-reverse}.actions button{width:100%}}@media (min-width: 768px){.match-logger{max-width:900px;margin:0 auto}}.log-match-page{padding:var(--spacing-lg);min-height:60vh;display:flex;align-items:flex-start;justify-content:center}@media (max-width: 767px){.log-match-page{padding:var(--spacing-md)}}.organiser-dashboard{padding:var(--spacing-lg);max-width:1400px;margin:0 auto}.dashboard-header{margin-bottom:var(--spacing-xl)}.dashboard-header h1{margin:0 0 var(--spacing-sm) 0;color:var(--color-text);font-size:2rem}.dashboard-header .welcome-message{margin:0;color:var(--color-text-secondary);font-size:1.1rem}.quick-actions{display:grid;gap:var(--spacing-md);grid-template-columns:1fr;margin-bottom:var(--spacing-xl)}@media (min-width: 768px){.quick-actions{grid-template-columns:repeat(3,1fr)}}.action-card{background:#fff;border:2px solid #e5e7eb;border-radius:8px;padding:var(--spacing-lg);text-align:center;text-decoration:none;color:inherit;transition:all .2s;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);cursor:pointer}.action-card:hover{border-color:var(--color-primary);box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.action-card.primary{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.action-card.primary:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}.action-icon{font-size:2.5rem;margin-bottom:var(--spacing-xs)}.action-card h3{margin:0;font-size:1.1rem;font-weight:600}.action-card p{margin:0;font-size:.875rem;opacity:.8}.stats-overview{display:grid;gap:var(--spacing-md);grid-template-columns:repeat(2,1fr);margin-bottom:var(--spacing-xl)}@media (min-width: 768px){.stats-overview{grid-template-columns:repeat(4,1fr)}}.stat-card{background:#fff;border:2px solid #e5e7eb;border-radius:8px;padding:var(--spacing-lg);text-align:center}.stat-card.active{border-color:var(--color-success);background:var(--color-success-light)}.stat-card.draft{border-color:var(--color-warning);background:var(--color-warning-light)}.stat-card.completed{border-color:#6b7280;background:#f9fafb}.stat-value{font-size:2.5rem;font-weight:700;color:var(--color-text);margin-bottom:var(--spacing-xs)}.stat-label{font-size:.875rem;color:var(--color-text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.competitions-section{margin-bottom:var(--spacing-xl)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);flex-wrap:wrap;gap:var(--spacing-md)}.section-header h2{margin:0;color:var(--color-text);font-size:1.5rem}.empty-state{text-align:center;padding:var(--spacing-xl);background:var(--color-background);border-radius:8px}.empty-state-icon{font-size:4rem;margin-bottom:var(--spacing-md)}.empty-state h3{margin:0 0 var(--spacing-sm) 0;color:var(--color-text);font-size:1.25rem}.empty-state p{margin:0 0 var(--spacing-lg) 0;color:var(--color-text-secondary)}.competitions-grid{display:grid;gap:var(--spacing-md);grid-template-columns:1fr}@media (min-width: 768px){.competitions-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.competitions-grid{grid-template-columns:repeat(3,1fr)}}.competition-card{background:#fff;border:2px solid #e5e7eb;border-radius:8px;padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-md);transition:all .2s}.competition-card:hover{border-color:var(--color-primary);box-shadow:0 4px 12px #0000001a}.competition-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-sm)}.competition-header h3{margin:0;color:var(--color-text);font-size:1.1rem;flex:1}.status-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.status-badge.active{background-color:var(--color-success-light);color:var(--color-success)}.status-badge.draft{background-color:var(--color-warning-light);color:var(--color-warning)}.status-badge.completed{background-color:#f3f4f6;color:#6b7280}.competition-details{flex:1;display:flex;flex-direction:column;gap:var(--spacing-xs)}.detail-row{display:flex;justify-content:space-between;font-size:.875rem}.detail-row .label{color:var(--color-text-secondary);font-weight:500}.detail-row .value{color:var(--color-text);font-weight:600}.competition-actions{display:flex;gap:var(--spacing-sm);border-top:1px solid #e5e7eb;padding-top:var(--spacing-md)}.competition-actions .btn{flex:1}.btn-sm{padding:var(--spacing-xs) var(--spacing-sm);font-size:.875rem}@media (max-width: 767px){.organiser-dashboard{padding:var(--spacing-md)}.dashboard-header h1{font-size:1.5rem}.stat-value{font-size:2rem}.competition-header{flex-direction:column}.status-badge{align-self:flex-start}.section-header{flex-direction:column;align-items:flex-start}.section-header .btn{width:100%}}.create-competition{padding:var(--spacing-lg) 0}.page-header{margin-bottom:var(--spacing-xl)}.page-header h1{margin:0 0 var(--spacing-sm) 0;color:var(--color-text);font-size:2rem}.page-description{margin:0;color:var(--color-text-secondary);font-size:1.1rem}.error-message{background-color:var(--color-error-light);border:1px solid var(--color-error);color:var(--color-error);padding:var(--spacing-md);border-radius:4px;margin-bottom:var(--spacing-lg)}.competition-form{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:var(--spacing-xl);margin-bottom:var(--spacing-lg)}.form-section{margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-xl);border-bottom:1px solid #e5e7eb}.form-section:last-of-type{border-bottom:none;margin-bottom:var(--spacing-lg);padding-bottom:0}.form-section h2{margin:0 0 var(--spacing-lg) 0;color:var(--color-text);font-size:1.25rem;font-weight:600}.form-group{margin-bottom:var(--spacing-md)}.form-group label{display:block;margin-bottom:var(--spacing-xs);color:var(--color-text);font-weight:500;font-size:.875rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:var(--spacing-sm);border:1px solid #d1d5db;border-radius:4px;font-size:1rem;font-family:inherit;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #3b82f61a}.form-group small{display:block;margin-top:var(--spacing-xs);color:var(--color-text-secondary);font-size:.75rem}.form-row{display:grid;gap:var(--spacing-md);grid-template-columns:1fr}@media (min-width: 768px){.form-row{grid-template-columns:1fr 1fr}}.form-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;padding-top:var(--spacing-lg);border-top:1px solid #e5e7eb}.form-actions button{min-width:120px}.info-box{background:#f3f4f6;border:1px solid #d1d5db;border-radius:8px;padding:var(--spacing-md)}.info-box p{margin:0;color:var(--color-text-secondary);font-size:.875rem;line-height:1.5}.info-box strong{color:var(--color-text)}.auth-required{text-align:center;padding:var(--spacing-xl);background:var(--color-background);border-radius:8px;max-width:500px;margin:var(--spacing-xl) auto}.auth-required h2{margin:0 0 var(--spacing-md) 0;color:var(--color-text)}.auth-required p{margin-bottom:var(--spacing-lg);color:var(--color-text-secondary)}@media (max-width: 767px){.create-competition{padding:var(--spacing-md) 0}.page-header h1{font-size:1.5rem}.competition-form{padding:var(--spacing-md)}.form-actions{flex-direction:column-reverse}.form-actions button{width:100%}}.team-management-page{padding:2rem 0}.page-header{margin-bottom:2rem}.back-link{display:inline-block;color:var(--primary-color);text-decoration:none;margin-bottom:1rem;font-size:.95rem}.back-link:hover{text-decoration:underline}.page-header h1{margin:0;color:var(--text-primary)}.success-banner{background:#d4edda;color:#155724;padding:1rem;border-radius:4px;margin-bottom:1.5rem;border:1px solid #c3e6cb}.division-filter{margin-bottom:2rem}.division-filter label{display:block;margin-bottom:.75rem;font-weight:600;color:var(--text-primary)}.division-tabs{display:flex;gap:.5rem;flex-wrap:wrap}.division-tab{padding:.5rem 1.25rem;border:2px solid var(--border-color);background:#fff;border-radius:4px;cursor:pointer;font-weight:500;transition:all .2s}.division-tab:hover{border-color:var(--primary-color);color:var(--primary-color)}.division-tab.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.actions-bar{margin-bottom:2rem}.team-form-card{background:#fff;border:1px solid var(--border-color);border-radius:8px;padding:2rem;margin-bottom:2rem}.team-form-card h2{margin:0 0 1.5rem;color:var(--text-primary);font-size:1.25rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--text-primary)}.form-group input,.form-group select{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:4px;font-size:1rem}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #007bff1a}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.teams-section h2{margin:0 0 1.5rem;color:var(--text-primary);font-size:1.5rem;display:flex;align-items:center;gap:.5rem}.team-count{color:var(--text-secondary);font-size:1.25rem;font-weight:400}.teams-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.team-card{background:#fff;border:1px solid var(--border-color);border-radius:8px;padding:1.5rem;transition:box-shadow .2s}.team-card:hover{box-shadow:0 4px 12px #0000001a}.team-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.team-card-header h3{margin:0;color:var(--text-primary);font-size:1.25rem}.inactive-badge{background:#ffc107;color:#856404;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600}.team-card-body{margin-bottom:1rem}.team-info{display:flex;justify-content:space-between;padding:.5rem 0}.team-info .label{font-weight:600;color:var(--text-secondary)}.team-info .value{color:var(--text-primary)}.team-info .team-id{font-family:monospace;font-size:.85rem;color:var(--text-secondary)}.team-card-actions{display:flex;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.btn-link{color:var(--primary-color);text-decoration:none;font-weight:500;padding:.5rem 0}.btn-link:hover{text-decoration:underline}.empty-state{text-align:center;padding:4rem 2rem;color:var(--text-secondary)}.empty-state-icon{font-size:4rem;margin-bottom:1rem}.empty-state h3{margin:0 0 .5rem;color:var(--text-primary)}.empty-state p{margin:0 0 1.5rem}.access-denied{text-align:center;padding:4rem 2rem}.access-denied h1{color:var(--text-primary);margin-bottom:1rem}.access-denied p{color:var(--text-secondary);margin-bottom:2rem}@media (max-width: 768px){.teams-grid{grid-template-columns:1fr}.division-tabs{flex-direction:column}.division-tab{width:100%}.form-actions{flex-direction:column-reverse}.form-actions button{width:100%}}.not-found{min-height:70vh;display:flex;align-items:center;justify-content:center}.not-found-content{text-align:center;max-width:600px;padding:var(--spacing-8)}.not-found-title{font-size:120px;font-weight:900;color:var(--color-primary);margin:0;line-height:1;opacity:.8}.not-found-subtitle{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-text-primary);margin:var(--spacing-4) 0}.not-found-message{font-size:var(--font-size-lg);color:var(--color-text-secondary);margin-bottom:var(--spacing-8);line-height:1.6}.not-found-actions{display:flex;gap:var(--spacing-4);justify-content:center;flex-wrap:wrap}.not-found-actions a{text-decoration:none}@media (max-width: 768px){.not-found-title{font-size:80px}.not-found-subtitle{font-size:var(--font-size-xl)}.not-found-message{font-size:var(--font-size-base)}.not-found-actions{flex-direction:column;width:100%}.not-found-actions a,.not-found-actions button{width:100%}}.error-boundary{min-height:60vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-8)}.error-boundary-content{text-align:center;max-width:600px}.error-boundary-title{font-size:var(--font-size-3xl);font-weight:700;color:var(--color-text-primary);margin-bottom:var(--spacing-4)}.error-boundary-message{font-size:var(--font-size-lg);color:var(--color-text-secondary);margin-bottom:var(--spacing-8);line-height:1.6}.error-boundary-actions{display:flex;gap:var(--spacing-4);justify-content:center;flex-wrap:wrap}.error-boundary-link,.error-boundary-button{min-height:var(--touch-target-min);padding:var(--spacing-3) var(--spacing-6);border-radius:var(--border-radius);font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.error-boundary-link{background-color:var(--color-primary);color:#fff}.error-boundary-link:hover{background-color:var(--color-primary-dark);transform:translateY(-2px);box-shadow:0 4px 8px #0003}.error-boundary-button{background-color:transparent;color:var(--color-primary);border:2px solid var(--color-primary)}.error-boundary-button:hover{background-color:var(--color-primary-light)}@media (max-width: 768px){.error-boundary-title{font-size:var(--font-size-2xl)}.error-boundary-message{font-size:var(--font-size-base)}.error-boundary-actions{flex-direction:column}.error-boundary-link,.error-boundary-button{width:100%}}
