:root{--color-primary-50: #eff6ff;--color-primary-100: #dbeafe;--color-primary-200: #bfdbfe;--color-primary-300: #93c5fd;--color-primary-400: #60a5fa;--color-primary-500: #3b82f6;--color-primary-600: #2563eb;--color-primary-700: #1d4ed8;--color-primary-800: #1e40af;--color-primary-900: #1e3a8a;--color-primary-950: #172554;--color-secondary-50: #f8fafc;--color-secondary-100: #f1f5f9;--color-secondary-200: #e2e8f0;--color-secondary-300: #cbd5e1;--color-secondary-400: #94a3b8;--color-secondary-500: #64748b;--color-secondary-600: #475569;--color-secondary-700: #334155;--color-secondary-800: #1e293b;--color-secondary-900: #0f172a;--color-secondary-950: #020617;--color-success-50: #f0fdf4;--color-success-100: #dcfce7;--color-success-200: #bbf7d0;--color-success-300: #86efac;--color-success-400: #4ade80;--color-success-500: #22c55e;--color-success-600: #16a34a;--color-success-700: #15803d;--color-success-800: #166534;--color-success-900: #14532d;--color-success-950: #052e16;--color-warning-50: #fffbeb;--color-warning-100: #fef3c7;--color-warning-200: #fde68a;--color-warning-300: #fcd34d;--color-warning-400: #fbbf24;--color-warning-500: #f59e0b;--color-warning-600: #d97706;--color-warning-700: #b45309;--color-warning-800: #92400e;--color-warning-900: #78350f;--color-warning-950: #451a03;--color-error-50: #fef2f2;--color-error-100: #fee2e2;--color-error-200: #fecaca;--color-error-300: #fca5a5;--color-error-400: #f87171;--color-error-500: #ef4444;--color-error-600: #dc2626;--color-error-700: #b91c1c;--color-error-800: #991b1b;--color-error-900: #7f1d1d;--color-error-950: #450a0a;--color-neutral-50: #fafafa;--color-neutral-100: #f5f5f5;--color-neutral-200: #e5e5e5;--color-neutral-300: #d4d4d4;--color-neutral-400: #a3a3a3;--color-neutral-500: #737373;--color-neutral-600: #525252;--color-neutral-700: #404040;--color-neutral-800: #262626;--color-neutral-900: #171717;--color-neutral-950: #0a0a0a;--color-background: var(--color-neutral-50);--color-surface: #ffffff;--color-text-primary: var(--color-neutral-900);--color-text-secondary: var(--color-neutral-600);--color-text-muted: var(--color-neutral-500);--color-border: var(--color-neutral-200);--color-border-focus: var(--color-primary-500);--color-shadow: rgba(0, 0, 0, .1);--color-shadow-hover: rgba(0, 0, 0, .15);--font-family-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-family-mono: "JetBrains Mono", "Fira Code", Consolas, 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-size-5xl: 3rem;--font-size-6xl: 3.75rem;--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.25;--line-height-snug: 1.375;--line-height-normal: 1.5;--line-height-relaxed: 1.625;--line-height-loose: 2;--spacing-0: 0;--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-15: 3.75rem;--spacing-16: 4rem;--spacing-20: 5rem;--spacing-24: 6rem;--spacing-32: 8rem;--radius-none: 0;--radius-sm: .125rem;--radius-base: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--radius-3xl: 1.5rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 var(--color-shadow);--shadow-base: 0 1px 3px 0 var(--color-shadow), 0 1px 2px 0 var(--color-shadow);--shadow-md: 0 4px 6px -1px var(--color-shadow), 0 2px 4px -1px var(--color-shadow);--shadow-lg: 0 10px 15px -3px var(--color-shadow), 0 4px 6px -2px var(--color-shadow);--shadow-xl: 0 20px 25px -5px var(--color-shadow), 0 10px 10px -5px var(--color-shadow);--shadow-2xl: 0 25px 50px -12px var(--color-shadow);--transition-fast: .15s ease-in-out;--transition-normal: .25s ease-in-out;--transition-slow: .35s ease-in-out;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--z-toast: 1080}@media (prefers-color-scheme: dark){:root{--color-background: var(--color-neutral-900);--color-surface: var(--color-neutral-800);--color-text-primary: var(--color-neutral-100);--color-text-secondary: var(--color-neutral-300);--color-text-muted: var(--color-neutral-400);--color-border: var(--color-neutral-700);--color-shadow: rgba(0, 0, 0, .3);--color-shadow-hover: rgba(0, 0, 0, .4)}}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.text-3xl{font-size:var(--font-size-3xl)}.text-4xl{font-size:var(--font-size-4xl)}.text-5xl{font-size:var(--font-size-5xl)}.text-6xl{font-size:var(--font-size-6xl)}.font-light{font-weight:var(--font-weight-light)}.font-normal{font-weight:var(--font-weight-normal)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.font-extrabold{font-weight:var(--font-weight-extrabold)}.leading-tight{line-height:var(--line-height-tight)}.leading-snug{line-height:var(--line-height-snug)}.leading-normal{line-height:var(--line-height-normal)}.leading-relaxed{line-height:var(--line-height-relaxed)}.leading-loose{line-height:var(--line-height-loose)}.font-sans{font-family:var(--font-family-sans)}.font-mono{font-family:var(--font-family-mono)}.text-primary{color:var(--color-primary-600)}.text-primary-light{color:var(--color-primary-400)}.text-primary-dark{color:var(--color-primary-800)}.text-secondary{color:var(--color-text-secondary)}.text-muted{color:var(--color-text-muted)}.bg-primary{background-color:var(--color-primary-600)}.bg-primary-light{background-color:var(--color-primary-100)}.bg-primary-dark{background-color:var(--color-primary-800)}.bg-secondary{background-color:var(--color-secondary-100)}.bg-surface{background-color:var(--color-surface)}.bg-background{background-color:var(--color-background)}.border-primary{border-color:var(--color-primary-500)}.border-secondary{border-color:var(--color-border)}.p-0{padding:var(--spacing-0)}.p-1{padding:var(--spacing-1)}.p-2{padding:var(--spacing-2)}.p-3{padding:var(--spacing-3)}.p-4{padding:var(--spacing-4)}.p-5{padding:var(--spacing-5)}.p-6{padding:var(--spacing-6)}.p-8{padding:var(--spacing-8)}.p-10{padding:var(--spacing-10)}.p-12{padding:var(--spacing-12)}.m-0{margin:var(--spacing-0)}.m-1{margin:var(--spacing-1)}.m-2{margin:var(--spacing-2)}.m-3{margin:var(--spacing-3)}.m-4{margin:var(--spacing-4)}.m-5{margin:var(--spacing-5)}.m-6{margin:var(--spacing-6)}.m-8{margin:var(--spacing-8)}.m-10{margin:var(--spacing-10)}.m-12{margin:var(--spacing-12)}.rounded-none{border-radius:var(--radius-none)}.rounded-sm{border-radius:var(--radius-sm)}.rounded{border-radius:var(--radius-base)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-full{border-radius:var(--radius-full)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow{box-shadow:var(--shadow-base)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.shadow-2xl{box-shadow:var(--shadow-2xl)}.transition-fast{transition:all var(--transition-fast)}.transition-normal{transition:all var(--transition-normal)}.transition-slow{transition:all var(--transition-slow)}.hover\:shadow-md:hover{box-shadow:var(--shadow-md)}.hover\:shadow-lg:hover{box-shadow:var(--shadow-lg)}.hover\:bg-primary-dark:hover{background-color:var(--color-primary-700)}.hover\:text-primary:hover{color:var(--color-primary-600)}.focus\:border-primary:focus{border-color:var(--color-border-focus)}.focus\:ring-primary:focus{box-shadow:0 0 0 3px #3b82f61a}.card-base,.card-hover{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all var(--transition-normal)}.card-hover:hover{box-shadow:var(--shadow-md);border-color:var(--color-primary-200)}.button-primary{background-color:var(--color-primary-600);color:#fff;padding:var(--spacing-3) var(--spacing-6);border-radius:var(--radius-md);font-weight:var(--font-weight-medium);transition:all var(--transition-fast)}.button-primary:hover{background-color:var(--color-primary-700);transform:translateY(-1px)}.button-primary:active{transform:translateY(0)}.button-secondary{background-color:var(--color-secondary-100);color:var(--color-text-primary);padding:var(--spacing-3) var(--spacing-6);border-radius:var(--radius-md);font-weight:var(--font-weight-medium);transition:all var(--transition-fast)}.button-secondary:hover{background-color:var(--color-secondary-200)}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-4)}.section{padding:var(--spacing-16) 0}.grid-responsive{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-6)}@media (max-width: 768px){.container{padding:0 var(--spacing-3)}.section{padding:var(--spacing-12) 0}.grid-responsive{grid-template-columns:1fr;gap:var(--spacing-4)}}.detail-container{max-width:1200px;margin:0 auto;padding:var(--spacing-6);background-color:var(--color-background);min-height:100vh}.detail-content{scroll-behavior:smooth;display:flex;flex-direction:column;gap:var(--spacing-8)}.detail-section .section-header{padding:var(--spacing-6) var(--spacing-6) var(--spacing-4) var(--spacing-6);border-bottom:1px solid var(--color-border);background-color:var(--color-surface)}.detail-section .section-header .section-title{display:flex;align-items:center;gap:var(--spacing-3);margin:0;font-size:var(--font-size-2xl);font-weight:600;color:var(--color-text-primary)}.detail-section .section-header .section-title .section-icon{font-size:1.75rem;width:1.75rem;height:1.75rem;color:var(--color-primary-600)}.detail-card{border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);border:1px solid var(--color-border);overflow:hidden;transition:all var(--transition-normal)}.detail-card:hover{box-shadow:0 6px 20px #00000026;transform:translateY(-2px)}.detail-card .mat-mdc-card-content{padding:var(--spacing-6)}.detail-form .form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-5);margin-bottom:24px}.detail-form .form-grid .full-width{grid-column:1/-1}.detail-form .form-field,.detail-form .form-field .mat-mdc-form-field{width:100%}.detail-form .form-field .mat-mdc-input-element{padding-inline:var(--spacing-3) var(--spacing-4)}.detail-form .form-field textarea{resize:vertical;min-height:100px}.detail-array-section .section-header{padding:var(--spacing-6) var(--spacing-6) var(--spacing-4) var(--spacing-6);border-bottom:1px solid var(--color-border);background-color:var(--color-surface)}.detail-array-section .section-header .section-title{display:flex;align-items:center;gap:var(--spacing-3);margin:0;font-size:var(--font-size-2xl);font-weight:600;color:var(--color-text-primary)}.detail-array-section .section-header .section-title .section-icon{font-size:1.75rem;width:1.75rem;height:1.75rem;color:var(--color-primary-600)}.detail-array-section .section-header .section-title .add-fab{margin-left:auto;width:40px;height:40px;box-shadow:0 4px 8px #00000026}.detail-array-section .section-header .section-title .add-fab .mat-icon{font-size:1.25rem;width:1.25rem;height:1.25rem}.detail-array-card{border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);border:1px solid var(--color-border);overflow:hidden;transition:all var(--transition-normal)}.detail-array-card:hover{box-shadow:0 6px 20px #00000026;transform:translateY(-2px)}.detail-array-card .mat-mdc-card-content{padding:var(--spacing-6)}.items-list{display:flex;flex-direction:column;gap:20px}.item-card{border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--spacing-5);background-color:var(--color-surface);box-shadow:0 2px 8px #00000014;transition:all var(--transition-normal)}.item-card:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-1px);border-color:var(--color-primary-600)}.item-card .item-content{display:grid;grid-template-columns:1fr 200px 200px auto;gap:var(--spacing-4);align-items:start}@media (max-width: 1024px){.item-card .item-content{grid-template-columns:1fr 200px auto}}@media (max-width: 768px){.item-card .item-content{grid-template-columns:1fr;gap:var(--spacing-3)}}.item-card .item-field{width:100%}.item-card .item-field.full-width{grid-column:1/-1}.item-card .mat-mdc-input-element{padding-inline:var(--spacing-3) var(--spacing-4)}.item-card ::ng-deep .mat-mdc-select-value{padding-inline:var(--spacing-3) var(--spacing-4)!important}.item-card .item-actions{display:flex;flex-direction:column;gap:var(--spacing-3);align-items:center;justify-content:center;min-width:120px}@media (max-width: 1024px){.item-card .item-actions{grid-column:1/-1;flex-direction:row;justify-content:space-between;min-width:auto}}.item-card .item-actions .primary-checkbox{display:flex;align-items:center;gap:6px;font-weight:500;margin:0}.item-card .item-actions .primary-checkbox .checkbox-icon{font-size:1.1rem;width:1.1rem;height:1.1rem;color:var(--color-warning-500)}.item-card .item-actions .remove-button{color:var(--color-error-500);transition:all .2s ease}.item-card .item-actions .remove-button:hover{background-color:var(--color-error-100);color:var(--color-error-700)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-15) var(--spacing-6);text-align:center;background-color:var(--color-surface);border-radius:var(--radius-xl);border:2px dashed var(--color-border)}.empty-state .empty-icon{font-size:72px;width:72px;height:72px;color:var(--color-text-muted);margin-bottom:20px;opacity:.6}.empty-state .empty-text{margin:0 0 32px;color:var(--color-text-secondary);font-size:1.1rem;font-weight:500}.empty-state .empty-action{padding:12px 24px;border-radius:var(--radius-lg);font-weight:500;box-shadow:0 4px 12px #00000026}.empty-state .empty-action .mat-icon{margin-right:8px;font-size:1.25rem;width:1.25rem;height:1.25rem}@media (max-width: 1024px){.detail-content{gap:var(--spacing-6)}.section-header{padding:20px 20px 12px!important}.section-header .section-title{font-size:1.25rem!important}.section-header .section-title .section-icon{font-size:1.5rem!important;width:1.5rem!important;height:1.5rem!important}}@media (max-width: 768px){.detail-container{padding:var(--spacing-4)}.detail-content{gap:var(--spacing-5)}.section-header{padding:16px 16px 8px!important}.section-header .section-title{font-size:1.1rem!important;flex-direction:column;align-items:flex-start;gap:8px}.section-header .section-title .add-fab{margin-left:0;margin-top:8px;align-self:flex-end}.detail-card .mat-mdc-card-content,.detail-array-card .mat-mdc-card-content{padding:var(--spacing-4)}.detail-form .form-grid{grid-template-columns:1fr;gap:var(--spacing-4)}}@media (max-width: 480px){.detail-container{padding:var(--spacing-3)}.section-header,.detail-card .mat-mdc-card-content,.detail-array-card .mat-mdc-card-content{padding:var(--spacing-4)}}@media (prefers-color-scheme: dark){.item-card,.empty-state{background-color:var(--color-surface);border-color:var(--color-border)}}.item-card:focus-within{border-color:var(--color-primary-600);box-shadow:0 0 0 2px var(--color-primary-200)}.item-card{transition:all var(--transition-normal)}.item-card.ng-enter{opacity:0;transform:translateY(-10px)}.item-card.ng-enter-active,.item-card.ng-leave{opacity:1;transform:translateY(0)}.item-card.ng-leave-active{opacity:0;transform:translateY(-10px)}.form-error-message{display:flex;align-items:center;gap:var(--spacing-2);color:var(--color-error-700);background-color:var(--color-error-50);padding:var(--spacing-4);border-radius:var(--radius-lg);border-left:4px solid var(--color-error-500);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);margin-bottom:var(--spacing-4)}.form-error-message .mat-icon{color:var(--color-error-600);font-size:var(--font-size-lg);width:var(--font-size-lg);height:var(--font-size-lg)}.roster-error-message{display:flex;align-items:center;gap:var(--spacing-2);color:var(--color-error-700);background-color:var(--color-error-50);padding:var(--spacing-3);border-radius:var(--radius-md);border-left:4px solid var(--color-error-500);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);margin-bottom:var(--spacing-3)}.roster-error-message .mat-icon{color:var(--color-error-600);font-size:var(--font-size-base);width:var(--font-size-base);height:var(--font-size-base)}*{box-sizing:border-box}html{font-family:var(--font-family-sans);font-size:16px;line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-background)}body{margin:0;padding:0;font-size:var(--font-size-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{margin:0;font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--color-text-primary)}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base)}p{margin:0 0 var(--spacing-4) 0;line-height:var(--line-height-relaxed);color:var(--color-text-secondary)}a{color:var(--color-primary-600);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-700)}a:focus{outline:2px solid var(--color-border-focus);outline-offset:2px}input,textarea,select,button{font-family:inherit;font-size:inherit}button{cursor:pointer;border:none;background:none;padding:0}button:focus{outline:2px solid var(--color-border-focus);outline-offset:2px}.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}@media print{*{background:transparent!important;color:#000!important;box-shadow:none!important;text-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}}.cdk-overlay-pane{background-color:var(--color-surface)!important;border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.mat-mdc-select-panel{background-color:var(--color-surface)!important;border:1px solid var(--color-border);border-radius:var(--radius-lg)}.mat-mdc-option{background-color:var(--color-surface)!important;color:var(--color-text-primary)!important}.mat-mdc-option:hover{background-color:var(--color-neutral-50)!important}.mat-mdc-option.mat-mdc-option-active,.mat-mdc-option.mdc-list-item--selected{background-color:var(--color-primary-100)!important;color:var(--color-primary-700)!important}@media (prefers-color-scheme: dark){.mat-mdc-option{background-color:var(--color-surface)!important;color:var(--color-text-primary)!important}.mat-mdc-option:hover{background-color:var(--color-neutral-700)!important}.mat-mdc-option.mat-mdc-option-active,.mat-mdc-option.mdc-list-item--selected{background-color:var(--color-primary-200)!important;color:var(--color-primary-900)!important}}
