body,html{overflow:auto;scrollbar-width:none;-ms-overflow-style:none;height:-webkit-fill-available}body::-webkit-scrollbar,html::-webkit-scrollbar{display:none}.modal-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin:0}.modal-form-grid .form-group{display:flex;flex-direction:column;gap:.5rem;margin:0}.modal-form-grid .form-group label{font-weight:500;color:var(--color-text-light);font-size:.9rem}.modal-form-grid .form-group input,.modal-form-grid .form-group select{padding:.625rem .875rem;border:1px solid var(--color-border, #ddd);border-radius:4px;font-size:.95rem;background:var(--color-surface, #fff);transition:border-color .2s ease}.modal-form-grid .form-group input:focus,.modal-form-grid .form-group select:focus{outline:none;border-color:var(--color-primary, #007bff);box-shadow:0 0 0 3px #007bff1a}.modal-form-grid .form-group input[type=date]{font-family:inherit;line-height:1.5}.modal-form-grid .grid-subheader{grid-column:1 / -1;text-align:center;font-size:1rem;font-weight:600;margin:1.5rem 0 .5rem;padding-top:1.5rem;border-top:1px solid var(--color-border)}.promotion-date-group{display:flex;align-items:center;gap:.75rem}.age-at-promotion-display{font-size:.85rem;color:var(--color-text-light);white-space:nowrap}.ratio-rules-editor{display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem}.ratio-rule-item{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;padding:.875rem 1rem;background:var(--color-surface-secondary, #f8f9fa);border-radius:6px;border:1px solid var(--color-border, #e0e0e0)}.ratio-rule-item span{font-size:.95rem;color:var(--color-text, #333);white-space:nowrap}.ratio-rule-item .age-input,.ratio-rule-item .ratio-input{width:70px;padding:.5rem .75rem;border:1px solid var(--color-border, #ccc);border-radius:4px;font-size:.95rem;text-align:center;background:var(--color-surface, #fff)}.ratio-rule-item .age-input:read-only{background:var(--color-surface-tertiary, #e9ecef);cursor:not-allowed}.ratio-rule-item .delete-rule-btn,.ratio-rule-item .add-rule-btn{margin-left:auto;padding:.5rem 1rem;font-size:.9rem;border-radius:4px;cursor:pointer;transition:all .2s ease}.ratio-rule-item .delete-rule-btn{background:transparent;border:1px solid var(--color-danger, #dc3545);color:var(--color-danger, #dc3545)}.ratio-rule-item .delete-rule-btn:hover{background:var(--color-danger, #dc3545);color:#fff}.ratio-rule-item .add-rule-btn{background:var(--color-primary, #007bff);border:none;color:#fff}.ratio-rule-item .add-rule-btn:hover{background:var(--color-primary-dark, #0056b3)}.ratio-rule-item.add-new-rule{background:var(--color-surface, #fff);border:2px dashed var(--color-border, #ccc)}.ratio-rules-actions{display:flex;align-items:center;gap:1rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--color-border, #e0e0e0)}:root{--blue-50: #eff6ff;--blue-100: #dbeafe;--blue-200: #bfdbfe;--blue-300: #93c5fd;--blue-400: #60a5fa;--blue-500: #3b82f6;--blue-600: #2563eb;--blue-700: #1d4ed8;--blue-800: #1e40af;--blue-900: #1e3a8a;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--red-500: #ef4444;--green-500: #10b981;--yellow-500: #f59e0b;--orange-500: #f97316;--color-primary: var(--blue-800);--color-primary-hover: var(--blue-700);--color-primary-light: var(--blue-100);--color-secondary: var(--blue-600);--color-secondary-hover: var(--blue-500);--color-success: var(--green-500);--color-warning: var(--yellow-500);--color-danger: var(--red-500);--color-text: var(--gray-800);--color-text-light: var(--gray-500);--color-text-muted: var(--gray-400);--color-bg-body: var(--gray-50);--color-bg-surface: #ffffff;--color-bg-light: var(--gray-100);--color-bg-hover: var(--blue-50);--color-bg-selected: var(--blue-100);--color-bg-active-link: var(--blue-100);--color-border: var(--gray-200);--color-border-light: var(--gray-100);--color-border-dark: var(--gray-300);--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--leading-tight: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.625;--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;--radius-none: 0;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--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);--z-base: 0;--z-dropdown: 100;--z-sticky: 200;--z-fixed: 300;--z-header-base: 400;--z-modal-backdrop: 450;--z-modal: 500;--z-modal-overlay: 800;--z-popover: 600;--z-tooltip: 700;--nav-width: 240px;--header-height: 64px;--sidebar-collapsed: 48px;--content-max-width: 1200px;--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--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)}.schedule-list .status-badge,.schedule-item .status-badge,.room-header .status-badge{margin:0 var(--spacing-xs);vertical-align:middle}.schedule-list .status-badge,.schedule-item .status-badge{font-size:.7rem;padding:1px 6px;min-width:60px;height:20px}.room-header{display:flex;align-items:center;gap:var(--spacing-sm)}.room-header .status-badge{margin-left:auto}.u-bg-surface{background-color:var(--color-bg-surface)!important}.u-bg-page{background-color:var(--color-bg-page)!important}.u-bg-light{background-color:var(--color-bg-light)!important}.u-bg-primary{background-color:var(--color-primary)!important}.u-bg-secondary{background-color:var(--color-secondary)!important}.u-bg-accent{background-color:var(--color-accent)!important}.u-text-primary{color:var(--color-text)!important}.u-text-secondary{color:var(--color-text-secondary)!important}.u-text-muted{color:var(--color-text-muted)!important}.u-text-link{color:var(--color-text-link)!important}.u-text-white{color:#fff!important}.u-border{border:1px solid var(--color-border)!important}.u-border-light{border:1px solid var(--color-border-light)!important}.u-border-none{border:none!important}.u-border-radius{border-radius:var(--border-radius-md)!important}.u-border-radius-sm{border-radius:var(--border-radius-sm)!important}.u-border-radius-lg{border-radius:var(--border-radius-lg)!important}.u-shadow-sm{box-shadow:var(--shadow-sm)!important}.u-shadow-md{box-shadow:var(--shadow-md)!important}.u-shadow-lg{box-shadow:var(--shadow-lg)!important}.u-shadow-xl{box-shadow:var(--shadow-xl)!important}.u-shadow-none{box-shadow:none!important}.u-p-0{padding:0!important}.u-p-1{padding:var(--spacing-xs)!important}.u-p-2{padding:var(--spacing-sm)!important}.u-p-3{padding:var(--spacing-md)!important}.u-p-4{padding:var(--spacing-lg)!important}.u-p-5{padding:var(--spacing-xl)!important}.u-p-6{padding:var(--spacing-2xl)!important}.u-m-0{margin:0!important}.u-m-1{margin:var(--spacing-xs)!important}.u-m-2{margin:var(--spacing-sm)!important}.u-m-3{margin:var(--spacing-md)!important}.u-m-4{margin:var(--spacing-lg)!important}.u-m-5{margin:var(--spacing-xl)!important}.u-m-6{margin:var(--spacing-2xl)!important}.u-flex{display:flex!important}.u-flex-column{flex-direction:column!important}.u-flex-row{flex-direction:row!important}.u-justify-center{justify-content:center!important}.u-justify-between{justify-content:space-between!important}.u-justify-start{justify-content:flex-start!important}.u-justify-end{justify-content:flex-end!important}.u-align-center{align-items:center!important}.u-align-start{align-items:flex-start!important}.u-align-end{align-items:flex-end!important}.u-flex-1{flex:1!important}.u-flex-wrap{flex-wrap:wrap!important}.u-block{display:block!important}.u-inline{display:inline!important}.u-inline-block{display:inline-block!important}.u-none{display:none!important}.u-grid{display:grid!important}.u-relative{position:relative!important}.u-absolute{position:absolute!important}.u-fixed{position:fixed!important}.u-sticky{position:sticky!important}.u-w-full{width:100%!important}.u-w-auto{width:auto!important}.u-h-full{height:100%!important}.u-h-auto{height:auto!important}.u-text-xs{font-size:var(--font-size-xs)!important}.u-text-sm{font-size:var(--font-size-sm)!important}.u-text-base{font-size:var(--font-size-base)!important}.u-text-lg{font-size:var(--font-size-lg)!important}.u-text-xl{font-size:var(--font-size-xl)!important}.u-text-2xl{font-size:var(--font-size-2xl)!important}.u-text-3xl{font-size:var(--font-size-3xl)!important}.u-font-light{font-weight:var(--font-weight-light)!important}.u-font-normal{font-weight:var(--font-weight-normal)!important}.u-font-medium{font-weight:var(--font-weight-medium)!important}.u-font-semibold{font-weight:var(--font-weight-semibold)!important}.u-font-bold{font-weight:var(--font-weight-bold)!important}.u-text-left{text-align:left!important}.u-text-center{text-align:center!important}.u-text-right{text-align:right!important}.u-hover-bg-surface:hover{background-color:var(--color-bg-hover)!important}.u-hover-bg-primary:hover{background-color:var(--color-primary-hover)!important}.u-transition{transition:all var(--transition-normal)!important}.u-cursor-pointer{cursor:pointer!important}.u-cursor-not-allowed{cursor:not-allowed!important}.u-text-adaptive{color:var(--color-text)!important}.u-text-adaptive-secondary{color:var(--color-text-secondary)!important}.u-text-adaptive-muted{color:var(--color-text-muted)!important}.u-icon-adaptive{color:var(--color-text-secondary)!important}.u-icon-adaptive svg{color:inherit!important}.u-icon-inherit{color:inherit!important}.u-svg-inherit svg{color:inherit!important;fill:currentColor!important}@media (max-width: 768px){.u-mobile-hidden{display:none!important}.u-mobile-block{display:block!important}.u-mobile-flex{display:flex!important}.u-mobile-p-2{padding:var(--spacing-sm)!important}.u-mobile-m-2{margin:var(--spacing-sm)!important}}@media (min-width: 769px){.u-desktop-hidden{display:none!important}.u-desktop-block{display:block!important}.u-desktop-flex{display:flex!important}}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);border:1px solid transparent;border-radius:var(--border-radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:1.5;text-decoration:none;cursor:pointer;transition:var(--transition-normal);-webkit-user-select:none;user-select:none;outline:none}.button:focus{box-shadow:0 0 0 2px var(--color-primary),0 0 0 4px #4facfe4d}.button:disabled{opacity:.6;cursor:not-allowed}.button--primary{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.button--primary:hover:not(:disabled){background-color:var(--color-primary-hover);border-color:var(--color-primary-hover)}.button--secondary{background-color:var(--color-secondary);color:var(--color-text);border-color:var(--color-border)}.button--secondary:hover:not(:disabled){background-color:var(--color-bg-hover)}.button--outline{background-color:transparent;color:var(--color-primary);border-color:var(--color-primary)}.button--outline:hover:not(:disabled){background-color:var(--color-primary);color:#fff}.button--ghost{background-color:transparent;color:var(--color-text);border-color:transparent}.button--ghost:hover:not(:disabled){background-color:var(--color-bg-hover)}.button--danger{background-color:var(--color-error);color:#fff;border-color:var(--color-error)}.button--danger:hover:not(:disabled){background-color:var(--color-error-hover);border-color:var(--color-error-hover)}.button--xs{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs)}.button--sm{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm)}.button--md{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-base)}.button--lg{padding:var(--spacing-md) var(--spacing-lg);font-size:var(--font-size-lg)}.button--xl{padding:var(--spacing-lg) var(--spacing-xl);font-size:var(--font-size-xl)}.button--icon-only{padding:var(--spacing-sm);aspect-ratio:1}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;padding:var(--spacing-xs);background-color:transparent;color:var(--color-text);border:none;border-radius:var(--border-radius-md);cursor:pointer;transition:var(--transition-normal)}.icon-button:hover{background-color:var(--color-bg-hover)}.icon-button:focus{outline:none}.theme-toggle-button{position:relative;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background-color:var(--color-bg-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--border-radius-md);cursor:pointer;transition:var(--transition-normal)}.theme-toggle-button:hover{background-color:var(--color-bg-hover)}.nav-button{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background-color:transparent;color:var(--color-text);border:none;border-radius:var(--border-radius-md);text-decoration:none;cursor:pointer;transition:var(--transition-normal)}.nav-button:hover{background-color:var(--color-bg-hover)}.nav-button.active{background-color:var(--color-bg-active);color:var(--color-text-active)}.tab-button{padding:var(--spacing-sm) var(--spacing-md);background-color:transparent;color:var(--color-text-secondary);border:none;border-bottom:2px solid transparent;cursor:pointer;transition:var(--transition-normal)}.tab-button:hover{color:var(--color-text)}.fullscreen-button{position:fixed;top:var(--spacing-md);right:var(--spacing-md);z-index:var(--z-index-modal);display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background-color:var(--color-bg-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--border-radius-md);cursor:pointer;transition:var(--transition-normal);box-shadow:var(--shadow-md)}.fullscreen-button:hover{background-color:var(--color-bg-hover)}.button-group{display:inline-flex;border-radius:var(--border-radius-md);overflow:hidden}.button-group .button{border-radius:0;margin-left:-1px}.button-group .button:first-child{border-top-left-radius:var(--border-radius-md);border-bottom-left-radius:var(--border-radius-md);margin-left:0}.button-group .button:last-child{border-top-right-radius:var(--border-radius-md);border-bottom-right-radius:var(--border-radius-md)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#11182799;display:flex;align-items:center;justify-content:center;z-index:var(--z-index-modal);padding:1rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background-color:var(--color-bg-surface);color:var(--color-text);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-xl);width:100%;max-width:600px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;animation:modalSlideIn .2s ease-out;padding:2rem}.modal-content.staff-modal,.modal-content.leads-modal{padding:0!important}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-content--sm{max-width:450px!important}.modal-content--md{max-width:600px!important}.modal-content--lg{max-width:800px!important}.modal-content--xl{max-width:1000px!important}.modal-content.staff-modal,.modal-content.stylish-modal{max-width:900px!important}.modal-content.leads-modal{max-width:1400px!important}.modal-content.notification-modal{max-width:450px!important}.modal-content.processing-modal-content{max-width:400px!important}.modal-content.form-modal{max-width:600px!important}.modal-content.base-periods-modal{max-width:700px!important}.modal-content.inventory-modal{max-width:800px!important}.modal-content.item-modal{max-width:500px!important}.modal-header{padding:2rem 2rem 1.5rem;border-bottom:1px solid var(--color-border);flex-shrink:0;background-color:var(--color-bg-surface);display:flex;align-items:center;justify-content:space-between;gap:1rem}.modal-header h2,.modal-title{margin:0;font-size:1.5rem;font-weight:600;color:var(--color-text)}.modal-close{padding:var(--spacing-xs);background:none;border:none;color:var(--color-text-secondary);cursor:pointer;border-radius:var(--border-radius-sm);transition:var(--transition-normal)}.modal-close:hover{background-color:var(--color-bg-hover);color:var(--color-text)}.tab-nav{display:flex;border-bottom:1px solid var(--color-border);padding:0 2rem;flex-shrink:0;background-color:var(--color-bg-surface);gap:0}.tab-button{padding:1rem 1.5rem;border:none;border-bottom:3px solid transparent;background:none;cursor:pointer;font-size:.95rem;font-weight:500;color:var(--color-text-light);margin-bottom:-1px;transition:all .2s ease;position:relative}.tab-button.active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:600;background-color:transparent}.tab-button:hover:not(.active){color:var(--color-text);background-color:var(--color-bg-hover)}.modal-form-container{display:flex;flex-direction:column;flex-grow:1;overflow:hidden}.tab-content{padding:2rem;overflow-y:auto;flex-grow:1;background-color:var(--color-bg-light)}.modal-body{padding:2rem;overflow-y:auto;flex-grow:1}.modal-footer{padding:1.5rem 2rem;border-top:1px solid var(--color-border);background-color:var(--color-bg-light);flex-shrink:0}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;padding:1.5rem 2rem;border-top:1px solid var(--color-border);background-color:var(--color-bg-light);flex-shrink:0}.modal-actions button{padding:.65rem 1.25rem;border-radius:6px;font-size:.95rem;font-weight:600;min-width:100px;cursor:pointer;transition:all .2s ease-in-out;box-shadow:var(--shadow-sm);border:1px solid transparent}.modal-actions button.secondary,.modal-actions button.revert-btn,.btn-secondary{background-color:var(--color-bg-surface);color:var(--color-text);border:1px solid var(--color-border);box-shadow:none}.modal-actions button.secondary:hover,.modal-actions button.revert-btn:hover,.btn-secondary:hover{background-color:var(--color-bg-hover);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.modal-actions button:not(.secondary):not(.delete-btn):not(.revert-btn),.btn-primary{background-color:var(--color-primary);color:#fff;box-shadow:var(--shadow-md)}.modal-actions button:not(.secondary):not(.delete-btn):not(.revert-btn):hover,.btn-primary:hover{background-color:var(--color-primary-dark, #0053a6);transform:translateY(-1px);box-shadow:var(--shadow-lg)}.modal-actions button.delete-btn,.btn-delete{background-color:var(--color-danger);color:#fff;box-shadow:var(--shadow-md)}.modal-actions button.delete-btn:hover,.btn-delete:hover{background-color:var(--red-500);transform:translateY(-1px);box-shadow:var(--shadow-lg)}.modal-actions .button{min-width:80px}.notification-modal{max-width:420px;text-align:center}.notification-modal .modal-header{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem 1.5rem 1rem;border-bottom:none;background:none}.notification-icon{width:3.5rem;height:3.5rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;background-color:var(--color-bg-muted);color:var(--color-text)}.notification-modal--success .notification-icon{background-color:var(--color-success);color:#fff}.notification-modal--error .notification-icon{background-color:var(--color-danger);color:#fff}.notification-modal .modal-title{font-size:1.25rem;font-weight:600;margin:0}.notification-modal--success .modal-title{color:var(--color-success-dark)}.notification-modal--error .modal-title{color:var(--color-danger-dark)}.notification-modal .modal-body{padding:0 1.5rem 1.5rem;text-align:center}.notification-modal .modal-body p{margin:0;color:var(--color-text-light);line-height:1.5}.notification-modal .modal-actions{padding:1rem 1.5rem 1.5rem;justify-content:center;border-top:1px solid var(--color-border)}.notification-modal .modal-actions .button{min-width:100px}.card{background-color:var(--color-bg-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.card-header{padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border);background-color:var(--color-bg-light)}.card-title{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text)}.card-subtitle{margin:var(--spacing-xs) 0 0 0;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.card-body{padding:var(--spacing-lg)}.card-footer{padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--color-border);background-color:var(--color-bg-light)}.info-card{background-color:var(--color-bg-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--border-radius-md);padding:var(--spacing-md);box-shadow:var(--shadow-sm)}.stats-card{background-color:var(--color-bg-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--border-radius-md);padding:var(--spacing-lg);text-align:center;box-shadow:var(--shadow-sm)}.stats-card-value{display:block;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-primary);margin-bottom:var(--spacing-xs)}.stats-card-label{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.form-group{margin-bottom:var(--spacing-md)}.form-label{display:block;margin-bottom:var(--spacing-xs);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text)}.form-label--required:after{content:" *";color:var(--color-error)}.form-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-bg-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--border-radius-md);font-size:var(--font-size-base);transition:var(--transition-normal)}.form-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #4facfe1a}.form-input:disabled{opacity:.6;cursor:not-allowed;background-color:var(--color-bg-light)}.form-input--error{border-color:var(--color-error)}.form-input--error:focus{border-color:var(--color-error);box-shadow:0 0 0 3px #ef44441a}.form-select{width:100%;padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-bg-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--border-radius-md);font-size:var(--font-size-base);cursor:pointer;transition:var(--transition-normal);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem}.form-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #4facfe1a}.form-textarea{width:100%;min-height:100px;padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-bg-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--border-radius-md);font-size:var(--font-size-base);font-family:inherit;resize:vertical;transition:var(--transition-normal)}.form-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #4facfe1a}.form-error{margin-top:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-error)}.form-help{margin-top:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.form-checkbox,.form-radio{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs)}.form-checkbox input,.form-radio input{width:auto;margin:0}.navbar{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);background-color:var(--color-bg-surface);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.navbar-brand{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text);text-decoration:none}.navbar-nav{display:flex;align-items:center;gap:var(--spacing-sm);list-style:none;margin:0;padding:0}.navbar-item{margin:0}.navbar-link{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);color:var(--color-text);text-decoration:none;border-radius:var(--border-radius-md);transition:var(--transition-normal)}.navbar-link:hover{background-color:var(--color-bg-hover)}.navbar-link.active{background-color:var(--color-bg-active);color:var(--color-text-active)}.sidebar{width:250px;background-color:var(--color-bg-surface);border-right:1px solid var(--color-border);height:100vh;overflow-y:auto;display:flex;flex-direction:column}.sidebar-header{padding:var(--spacing-lg);border-bottom:1px solid var(--color-border)}.sidebar-nav{flex:1;padding:var(--spacing-md)}.sidebar-nav-group{margin-bottom:var(--spacing-lg)}.sidebar-nav-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-sm);padding:0 var(--spacing-sm)}.sidebar-nav-list{list-style:none;margin:0;padding:0}.sidebar-nav-item{margin-bottom:var(--spacing-xs)}.sidebar-nav-link{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);color:var(--color-text);text-decoration:none;border-radius:var(--border-radius-md);transition:var(--transition-normal)}.sidebar-nav-link:hover{background-color:var(--color-bg-hover)}.sidebar-nav-link.active{background-color:var(--color-bg-active);color:var(--color-text-active)}.breadcrumb{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-md) 0;list-style:none;margin:0}.breadcrumb-item{display:flex;align-items:center}.breadcrumb-item:not(:last-child):after{content:"/";margin:0 var(--spacing-xs);color:var(--color-text-secondary)}.breadcrumb-link{color:var(--color-text-link);text-decoration:none}.breadcrumb-link:hover{text-decoration:underline}.table{width:100%;border-collapse:collapse;background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);overflow:hidden}.table th,.table td{padding:var(--spacing-sm) var(--spacing-md);text-align:left;border-bottom:1px solid var(--color-border-light);color:var(--color-text)}.table th{background-color:var(--color-bg-light);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.table tr:last-child td{border-bottom:none}.table tr:hover{background-color:var(--color-bg-hover)}.table--striped tbody tr:nth-child(2n){background-color:var(--color-bg-light)}.table--compact th,.table--compact td{padding:var(--spacing-xs) var(--spacing-sm)}.grid{display:grid;gap:var(--spacing-md)}.grid--cols-1{grid-template-columns:repeat(1,1fr)}.grid--cols-2{grid-template-columns:repeat(2,1fr)}.grid--cols-3{grid-template-columns:repeat(3,1fr)}.grid--cols-4{grid-template-columns:repeat(4,1fr)}.grid--cols-5{grid-template-columns:repeat(5,1fr)}.grid--cols-6{grid-template-columns:repeat(6,1fr)}.grid--gap-sm{gap:var(--spacing-sm)}.grid--gap-md{gap:var(--spacing-md)}.grid--gap-lg{gap:var(--spacing-lg)}.weekly-grid{display:grid;background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);overflow:auto}.weekly-grid .grid-header-cell{background-color:var(--color-bg-light);color:var(--color-text-secondary);font-weight:var(--font-weight-semibold);padding:var(--spacing-sm);border-bottom:1px solid var(--color-border);border-right:1px solid var(--color-border-light);position:sticky;top:0;z-index:var(--z-index-sticky)}.weekly-grid .slot-label-cell{background-color:var(--color-bg-light);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);padding:var(--spacing-sm);border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border-light);position:sticky;left:0;z-index:var(--z-index-sticky)}.weekly-grid .day-slot{background-color:var(--color-bg-surface);border-right:1px solid var(--color-border-light);border-bottom:1px solid var(--color-border-light);padding:var(--spacing-xs);min-height:60px;display:flex;flex-direction:column;gap:var(--spacing-xs)}.weekly-grid .capacity-cell{background-color:var(--color-bg-light);color:var(--color-text-secondary);padding:var(--spacing-xs);text-align:center;font-size:var(--font-size-sm);border-right:1px solid var(--color-border-light);border-bottom:1px solid var(--color-border-light)}.weekly-grid .room-header{background-color:var(--color-bg-light);color:var(--color-text);font-weight:var(--font-weight-semibold);padding:var(--spacing-sm);border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.timeline-grid{background-color:var(--color-bg-light);border:1px solid var(--color-border);border-radius:var(--border-radius-md);overflow:hidden;position:relative}.timeline-container{background-color:var(--color-bg-light);padding:var(--spacing-md)}.grid-cell{background-color:var(--color-bg-surface);color:var(--color-text);border:1px solid var(--color-border-light);padding:var(--spacing-sm);display:flex;align-items:center;justify-content:center;min-height:40px}.timeline-header-container{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--color-border)}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.container--fluid{max-width:none;padding:0 var(--spacing-md)}.container--sm{max-width:640px}.container--md{max-width:768px}.container--lg{max-width:1024px}.container--xl{max-width:1280px}.section{padding:var(--spacing-2xl) 0}.section--sm{padding:var(--spacing-lg) 0}.section--md{padding:var(--spacing-xl) 0}.section--lg{padding:var(--spacing-2xl) 0}.divider{height:1px;background-color:var(--color-border);margin:var(--spacing-md) 0}.divider--vertical{width:1px;height:auto;margin:0 var(--spacing-md)}.panel{background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--border-radius-lg);overflow:hidden}.panel-header{padding:var(--spacing-md) var(--spacing-lg);background-color:var(--color-bg-light);border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between}.panel-title{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text)}.panel-body{padding:var(--spacing-lg)}.panel-footer{padding:var(--spacing-md) var(--spacing-lg);background-color:var(--color-bg-light);border-top:1px solid var(--color-border)}.detail-panel{background-color:var(--color-bg-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--border-radius-md);padding:var(--spacing-md);box-shadow:var(--shadow-sm)}.theme-toggle-button{background-color:transparent!important;box-shadow:none!important;border:none!important;outline:none!important;padding:var(--spacing-xs);margin-right:var(--spacing-md);transform:none!important;display:flex;align-items:center;justify-content:center;min-width:40px;min-height:40px;cursor:pointer;color:var(--color-text-secondary);transition:color .2s ease}.theme-toggle-button svg{width:24px;height:24px;display:block;flex-shrink:0;color:inherit}.theme-toggle-button:hover{color:var(--color-text)}.theme-toggle-button:focus{outline:none}input[type=number]{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:auto;opacity:1;cursor:pointer}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;margin:0;background-color:var(--color-bg-body);color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{background-color:var(--color-bg-surface)}.app-layout{display:flex;height:100vh;width:100vw;overflow:hidden}.side-nav-container{width:var(--nav-width);flex-shrink:0;height:100vh;background-color:var(--color-bg-light);border-right:1px solid var(--color-border);display:flex;flex-direction:column;transition:width .3s ease}.side-nav-container.collapsed{width:60px}.main-panel{flex:1;display:flex;flex-direction:column;height:100vh;overflow:hidden;background-color:#fff}.page-content{flex:1;overflow-y:auto;padding:1.5rem}.side-nav{display:flex;flex-direction:column;height:100%;position:relative}.side-nav-toggle{position:absolute;bottom:20px;right:50%;transform:translate(50%);width:32px;height:32px;background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-light);font-size:1.2rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;transition:all .2s ease;box-shadow:0 2px 4px #0000001a}.side-nav-toggle:hover{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.side-nav.collapsed .side-nav-logo,.side-nav.collapsed .side-nav-links,.side-nav.collapsed .side-nav-actions{opacity:0;pointer-events:none}.side-nav.collapsed .side-nav-toggle{opacity:1;pointer-events:auto}.side-nav-header{height:var(--header-height);padding:0 1.5rem;display:flex;align-items:center;box-sizing:border-box;border-bottom:1px solid var(--color-border);transition:opacity .2s ease,padding .3s ease}.side-nav-logo{max-height:40px;width:auto;transition:opacity .2s ease}.side-nav-links{padding:1rem 0;flex-grow:1;overflow-y:auto;transition:opacity .2s ease}.side-nav-actions{margin-top:auto;padding:1rem;border-top:1px solid var(--color-border);background-color:var(--color-bg-light);flex-shrink:0;transition:opacity .2s ease}.nav-button-demo{width:100%;padding:10px 16px;border:2px solid #dc2626;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;background-color:transparent;color:#dc2626;transition:all .2s ease;text-align:center}.nav-button-demo:hover{background-color:#dc2626;color:#fff;box-shadow:0 4px 6px -1px #dc26264d,0 2px 4px -1px #dc262633;transform:translateY(-1px)}.nav-button-demo:active{transform:translateY(0);box-shadow:0 2px 4px -1px #dc262633}.nav-button{display:block;width:100%;padding:12px 24px;text-align:left;background:none;border:none;font-size:1rem;font-weight:500;color:var(--color-text-light);cursor:pointer;border-left:5px solid transparent;transition:all .2s ease-in-out}.nav-button:hover{background-color:#f1f5f9;color:var(--color-text)}.nav-button.active{color:var(--color-primary);font-weight:600;border-left-color:var(--color-primary);background:radial-gradient(circle at left,rgba(30,64,175,.1),rgba(30,64,175,.05) 30%,transparent 100%);border-radius:0!important}.nav-button.active:hover{background:radial-gradient(circle at left,rgba(30,64,175,.15),rgba(30,64,175,.08) 30%,transparent 100%);color:var(--color-primary)}.user-menu{position:relative}.user-menu-dropdown{position:absolute;bottom:100%;right:0;min-width:240px;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--border-radius-md);box-shadow:var(--shadow-lg);z-index:10000;margin-bottom:8px;overflow:hidden}.user-menu-email{padding:12px 16px;background:var(--color-bg-light);border-bottom:1px solid var(--color-border);font-size:14px;color:var(--color-text-secondary);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-menu-item{width:100%;padding:12px 16px;text-align:left;background:transparent;border:none;color:var(--color-text);font-size:14px;cursor:pointer;transition:background-color .15s;display:block;border-bottom:1px solid var(--color-border-light)}.user-menu-item:last-child{border-bottom:none}.user-menu-item:hover{background-color:var(--color-bg-hover)}.user-menu-item.logout{color:var(--color-error)}.user-menu-item.logout:hover{background-color:#ef44441a}.user-menu-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9999}.page-header{display:flex;align-items:center;justify-content:space-between;height:var(--header-height);padding:0 1.5rem;border-bottom:1px solid var(--color-border);flex-shrink:0;background-color:#fff}.page-header h1{font-size:1.5rem;margin:0;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.menu-right{display:flex;align-items:center;gap:15px;position:relative;flex-shrink:0}@media (max-width: 860px){.side-nav-container{position:fixed;top:0;left:0;height:100%;z-index:var(--z-modal-overlay);transform:translate(-100%);transition:transform .3s ease-in-out;box-shadow:2px 0 10px #0000001a}.side-nav-container.open{transform:translate(0)}.mobile-nav-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0006;z-index:calc(var(--z-modal-overlay) - 1);opacity:0;pointer-events:none;transition:opacity .3s}.mobile-nav-overlay.open{opacity:1;pointer-events:auto}.hamburger-menu{display:flex;align-items:center;justify-content:center}}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background-color:#f4f7f9;color:#333;margin:0;padding:0}#root{background-color:#fff}h1{border-bottom:2px solid #e2e8f0;padding-bottom:10px}h3{font-size:1.1rem}.app-container{padding:20px;max-width:1600px;margin:0 auto}.header-sticky{position:sticky;top:0;z-index:var(--z-header-base);background-color:#f8fafc;box-shadow:0 2px 4px #0000000d}[data-theme=cosmic] .header-sticky,body.cosmic-mode .header-sticky{background-color:#1e293b;box-shadow:0 2px 4px #0003}.main-content{flex-grow:1;background-color:#f8fafc;background-color:var(--color-bg-light);overflow-x:hidden}.page-content-wrapper.with-sidebar .main-content{margin-left:45px;width:calc(100% - 45px)}.menu-bar{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:0 20px;border-bottom:1px solid #e2e8f0;height:var(--menu-height);position:relative}.controls-bar{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:10px 0;background-color:transparent;border-bottom:none;flex-wrap:wrap;margin-bottom:1.5rem}.sub-controls-bar{display:flex;justify-content:center;align-items:center;padding:8px 20px;background-color:transparent;border-bottom:none}.control-group{display:flex;align-items:center;gap:10px}.control-group input[type=text]{padding:.65rem 1rem;border:1px solid var(--color-border);border-radius:8px;background-color:var(--color-bg-surface);color:var(--color-text);font-size:.95rem;transition:all .2s ease;box-sizing:border-box;min-width:300px}.control-group input[type=text]:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #3b82f61a}.control-group input[type=text]::placeholder{color:var(--color-text-light);opacity:.7}.control-group select{padding:.65rem 1rem;border:1px solid var(--color-border);border-radius:8px;background-color:var(--color-bg-surface);color:var(--color-text);font-size:.95rem;transition:all .2s ease;cursor:pointer;min-width:150px}.control-group select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #3b82f61a}.control-group.center{flex-grow:1;justify-content:center}.nav-links{display:flex;gap:10px}.hamburger-menu{display:none;background:none;border:none;cursor:pointer;z-index:var(--z-modal);padding:8px;font-size:24px;line-height:1;align-items:center;justify-content:center;min-width:40px;min-height:40px}.menu-right{display:flex;align-items:center;gap:15px;justify-content:flex-end;position:relative}.menu-left{justify-content:flex-start}.menu-right{justify-content:flex-end}.user-info{font-weight:600;color:var(--color-text)}.icon-button{background:none;border:none;cursor:pointer;color:var(--color-text-secondary);padding:var(--spacing-xs);display:flex;align-items:center;justify-content:center;min-width:40px;min-height:40px;transition:color .2s ease;box-shadow:none;outline:none}.icon-button svg{width:24px;height:24px;display:block;flex-shrink:0;color:inherit}.icon-button:hover{color:var(--color-text)}.notification-bell-container{position:relative;display:inline-block}.notification-bell-trigger{position:relative;display:flex;align-items:center;justify-content:center;padding:var(--spacing-xs);color:var(--color-text-secondary);background:transparent;border:none;cursor:pointer;transition:color .2s ease;box-shadow:none;outline:none}.notification-bell-trigger:hover{color:var(--color-text)}.notification-bell-trigger:focus{outline:none}.notification-bell-trigger svg{color:inherit}.notification-badge{position:absolute;top:-2px;right:-2px;width:8px;height:8px;background-color:#e53e3e;border-radius:50%;display:block}.notification-dropdown{position:absolute;top:100%;right:0;width:300px;max-height:400px;overflow-y:auto;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 4px 6px #0000001a;z-index:1000;margin-top:4px}.notification-dropdown ul{list-style:none;padding:0;margin:0}.notification-dropdown li{padding:12px 16px;border-bottom:1px solid var(--color-border);cursor:pointer;transition:background-color .2s}.notification-dropdown li:last-child{border-bottom:none}.notification-dropdown li:hover{background-color:var(--color-bg-hover)}.notification-dropdown li.unread{background-color:var(--color-bg-light);font-weight:600}.notification-dropdown li p{margin:0 0 4px;color:var(--color-text);font-size:14px}.notification-dropdown li small{color:var(--color-text-light);font-size:12px}.no-notifications{padding:16px;text-align:center;color:var(--color-text-light);font-size:14px}.help-button-container{position:relative;display:inline-block}.help-button{background-color:transparent!important;box-shadow:none!important;border:none!important;padding:0;margin-right:var(--spacing-md);transform:none!important;display:flex;align-items:center;justify-content:center;width:32px;height:32px;cursor:pointer;color:var(--color-text-secondary);transition:var(--transition-normal);border-radius:var(--border-radius-md);font-size:24px;font-weight:600;line-height:1}.help-button:hover{color:var(--color-text);background-color:var(--color-bg-hover)!important}.help-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--border-radius-md);box-shadow:var(--shadow-lg);z-index:10000;overflow:hidden}.help-dropdown button{width:100%;padding:12px 16px;text-align:left;background:transparent;border:none;color:var(--color-text);font-size:14px;cursor:pointer;transition:background-color .15s;display:block;white-space:nowrap}.help-dropdown button:hover{background-color:var(--color-bg-hover);color:var(--color-text)}.help-page{max-width:1200px;margin:0 auto;padding:2rem}.help-page-header{text-align:center;margin-bottom:3rem}.help-page-header h1{font-size:2.5rem;color:var(--color-text);margin-bottom:.5rem}.help-page-header p{font-size:1.125rem;color:var(--color-text-light)}.help-content{display:flex;flex-direction:column;gap:3rem}.help-section h2{font-size:1.75rem;color:var(--color-text);margin-bottom:1.5rem}.help-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.help-card{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:8px;padding:1.5rem;cursor:pointer;transition:all .2s}.help-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a;border-color:var(--color-primary)}.help-card-icon{font-size:2.5rem;margin-bottom:1rem}.help-card h3{font-size:1.25rem;color:var(--color-text);margin-bottom:.5rem}.help-card p{font-size:.9rem;color:var(--color-text-light);margin:0}.help-list{display:flex;flex-direction:column;gap:1rem}.help-list-item{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:8px;padding:1.25rem}.help-list-item h4{font-size:1.125rem;color:var(--color-text);margin-bottom:.5rem}.help-list-item p{font-size:.9rem;color:var(--color-text-light);margin:0}.help-contact{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:8px;padding:1.5rem;text-align:center}.help-contact p{margin:.5rem 0;color:var(--color-text)}.filter-sidebar{position:fixed;left:0;top:55px;height:calc(100vh - 55px);background-color:#edf2f7;transition:width .3s ease-in-out;border-right:1px solid #e2e8f0;width:45px;overflow:hidden;z-index:var(--z-header-base)}button,.button{display:inline-flex;align-items:center;justify-content:center;padding:10px 16px;border:1px solid var(--color-border);border-radius:6px;font-size:.9rem;font-family:inherit;font-weight:500;cursor:pointer;background-color:var(--color-primary);color:#fff;text-decoration:none;transition:background-color .2s,box-shadow .2s,transform .1s;box-shadow:0 1px 2px #0000001a}button:hover,.button:hover{background-color:var(--color-primary-hover);box-shadow:0 2px 4px #00000026;transform:translateY(-1px)}.theme-selector-trigger:hover{background-color:transparent!important;box-shadow:none!important;transform:none!important}button.secondary,.button.secondary{background-color:var(--color-bg-light);color:var(--color-text);border:1px solid var(--color-border)}button.secondary:hover,.button.secondary:hover{background-color:var(--color-bg-hover);color:var(--color-text)}button.reset-btn,button.delete-btn,.button.reset-btn,.button.delete-btn{background-color:#dc2626;color:#fff;border-color:#dc2626}button.reset-btn:hover,button.delete-btn:hover,.button.reset-btn:hover,.button.delete-btn:hover{background-color:#b91c1c;border-color:#b91c1c}.roster-table,.waitlist-table,.leads-table,.settings-table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--color-border);border-radius:0;overflow:hidden;box-shadow:var(--shadow-md);background-color:var(--color-bg-surface)}.roster-table tbody tr{transition:background-color .25s ease-in-out;touch-action:manipulation}.roster-table th,.roster-table td,.waitlist-table th,.waitlist-table td,.leads-table th,.leads-table td,.settings-table th,.settings-table td{border:none;border-bottom:1px solid #f3f4f6;padding:14px 16px;text-align:left}.roster-table th,.waitlist-table th,.leads-table th,.settings-table th{background-color:var(--color-bg-light);font-weight:600;color:var(--color-text);border-top-left-radius:0;border-top-right-radius:0}.roster-table tbody tr:last-child td,.waitlist-table tbody tr:last-child td,.leads-table tbody tr:last-child td,.settings-table tbody tr:last-child td{border-bottom:none}.roster-table tbody tr:hover{background-color:var(--color-bg-hover);cursor:pointer}.roster-table tr.selected-row td,.roster-table tr.selected-row:hover td{background-color:var(--color-bg-selected)}button.revert-btn{background-color:#f59e0b}@media (max-width: 860px){.roster-table tr,.waitlist-table tr,.leads-table tr{box-shadow:var(--shadow-sm);margin-bottom:1rem;border:1px solid var(--color-border)}.roster-table td,.waitlist-table td,.leads-table td{border-bottom:1px solid var(--color-border);padding:.75rem 1rem}}.enrollment-tags-container{display:flex;flex-direction:column;gap:5px}.enrollment-tag{background-color:#e2e8f0;background-color:var(--color-bg-light);color:#2d3748;padding:4px 8px;border-radius:6px;font-size:.85rem;cursor:pointer;transition:background-color .2s;text-align:left}.enrollment-tag:hover{background-color:#cbd5e0}.enrollment-tag-date{font-size:.75rem;margin-left:8px;opacity:.7}.weekly-grid{display:grid;grid-template-columns:150px repeat(5,1fr);min-width:900px;background-color:#e2e8f0;gap:1px}.capacity-row{border-bottom:1px solid #dee2e6;border-bottom-left-radius:12px}.capacity-row,.capacity-row.slot-label-cell{font-weight:700;color:#1a253c}.timeline-track.drop-target{background-color:#c6f6d5;border:2px dashed #48bb78}.header-logo{height:40px;margin-right:15px;vertical-align:middle}.history-list{width:100%;margin-top:8px;padding-left:10px;border-left:2px solid #e2e8f0}.history-item{padding:4px 0;font-size:.85rem;color:var(--color-text-secondary)}.history-item.current{font-weight:700;color:var(--color-text)}.history-item.past{opacity:.7}.occupancy-bar.part-time-bar{background-image:repeating-linear-gradient(-45deg,rgba(255,255,255,.15),rgba(255,255,255,.15) 5px,transparent 5px,transparent 10px)}.bar-schedule-text{font-size:.7rem;font-weight:700;text-transform:uppercase;padding-left:8px;text-shadow:0 1px 2px rgba(0,0,0,.4);pointer-events:none}.occupancy-bar.modeled{background-color:#a78bfa!important}.occupancy-bar.cascade-move{border:2px dashed rgba(0,0,0,.22);box-shadow:0 0 0 1px #f59e0b80,0 1px 3px #00000026}.occupancy-bar.cascade-target{border:2px dashed rgba(0,0,0,.22);box-shadow:0 0 0 1px #34d39980,0 1px 3px #00000026}.occupancy-bar.dragging{cursor:grabbing;z-index:var(--z-header-base);box-shadow:0 4px 15px #0000004d;opacity:.4;will-change:transform,width,left}.resize-handle{position:absolute;top:0;bottom:0;width:8px;cursor:ew-resize;z-index:var(--z-header-base)}.resize-handle.left{left:0}.resize-handle.right{right:0}.day-slot{min-height:40px;display:flex;flex-direction:column;gap:2px;justify-content:center}.child-presence-visual{padding:2px 6px;border-radius:4px;font-size:.8rem;color:#1a253c;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;border:1px solid rgba(0,0,0,.1)}.weekly-grid .capacity-cell{text-align:center;font-weight:600;background-color:#eaf0f6;border-top:2px solid #e2e8f0}[data-theme=cosmic] .weekly-grid .capacity-cell,body.cosmic-mode .weekly-grid .capacity-cell{background-color:#334155;border-top:2px solid #475569}.weekly-grid .grid-header-cell,.weekly-grid .slot-label-cell,.weekly-grid .day-slot,.weekly-grid .capacity-cell,.weekly-grid .room-header{padding:8px;background-color:#fff;box-sizing:border-box}[data-theme=cosmic] .weekly-grid .grid-header-cell,[data-theme=cosmic] .weekly-grid .slot-label-cell,[data-theme=cosmic] .weekly-grid .day-slot,[data-theme=cosmic] .weekly-grid .room-header,body.cosmic-mode .weekly-grid .grid-header-cell,body.cosmic-mode .weekly-grid .slot-label-cell,body.cosmic-mode .weekly-grid .day-slot,body.cosmic-mode .weekly-grid .room-header{background-color:#1e293b}.weekly-grid .grid-header-cell{background-color:#f8fafc;font-weight:600;text-align:center;position:sticky;top:0;z-index:var(--z-header-base);border-bottom:2px solid #e2e8f0}[data-theme=cosmic] .weekly-grid .grid-header-cell,body.cosmic-mode .weekly-grid .grid-header-cell{background-color:#334155;border-bottom:2px solid #475569}.weekly-grid .grid-header-cell:first-child{left:0;z-index:var(--z-header-base);border-right:1px solid #e2e8f0}.weekly-grid .slot-label-cell{position:sticky;left:0;z-index:var(--z-header-base);background-color:#f8fafc;font-weight:500;border-right:1px solid #e2e8f0;text-align:right;padding-right:15px}.weekly-grid .room-header{grid-column:1 / -1;background-color:#e2e8f0;font-weight:700;color:#1a253c;text-align:left;padding:12px 8px;border-bottom:2px solid #cbd5e0}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:var(--z-modal);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-content--sm{max-width:400px}.modal-content input[type=email],.modal-content input[type=text],.modal-content input[type=password],.modal-content input[type=number],.modal-content input[type=date],.modal-content input[type=time],.modal-content input[type=tel],.modal-content select,.modal-content textarea{padding:.75rem;border:1px solid var(--color-border);border-radius:6px;background-color:var(--color-bg-surface);color:var(--color-text);font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box;width:100%}.modal-content input:focus,.modal-content select:focus,.modal-content textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-alpha)}.modal-content button{padding:.75rem 1.5rem;border:none;border-radius:var(--border-radius);font-weight:500;cursor:pointer;transition:all .2s ease;font-size:1rem}.modal-content button.primary{background-color:var(--color-primary);color:#fff}.modal-content button.primary:hover{background-color:var(--color-primary-dark)}.modal-content button.secondary{background-color:var(--color-bg-light);color:var(--color-text);border:1px solid var(--color-border)}.modal-content button.secondary:hover{background-color:var(--color-bg-hover)}.modal-content .form-group label{color:var(--color-text)}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px 20px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin-top:15px}.feature-grid .checkbox-item{margin-bottom:0;justify-content:space-between;border:1px solid #e2e8f0;background-color:#f8fafc;align-items:center;padding:10px 12px;border:1px solid var(--color-border);border-radius:8px;background-color:var(--color-bg-light);box-shadow:var(--shadow-sm)}.feature-grid .checkbox-item label{margin-bottom:0}.modal-content.stylish-modal .modal-header h2{margin:0!important;font-size:1.5rem!important;word-break:break-word!important;line-height:1.2!important}.modal-content.stylish-modal .header-info{display:flex!important;flex-direction:column!important;gap:.5rem!important;flex:1!important}.modal-content.stylish-modal .header-info .status-badge{align-self:flex-start!important}.stylish-modal .promotion-date-group{display:flex;flex-direction:column;align-items:flex-end;gap:.25rem}.modal-header .header-dob{font-size:.9rem;font-weight:400;color:var(--color-text-secondary);margin:4px 0 0}.promotion-date-group{display:flex;align-items:center;gap:.75rem;justify-content:flex-end}.age-at-promotion-display{font-size:.85rem;color:#475569;font-style:italic;white-space:nowrap}.tab-content{padding:0;flex:1;background-color:var(--color-bg-light);overflow-y:auto;min-height:0}.modal-content.staff-modal{display:flex;flex-direction:column;max-height:90vh;height:auto;overflow:hidden}.tab-content>div{width:100%}.info-tab-content,.parents-tab-content,.medical-tab-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem;align-items:stretch}.programs-tab-content .program-enrollment-manager{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.files-tab-content{display:block}.info-card{border:1px solid var(--color-border);border-radius:12px;padding:1rem;background-color:var(--color-bg-surface);box-shadow:0 1px 3px #0000000d;margin-bottom:0}.info-tab-content .info-card,.parents-tab-content .info-card,.medical-tab-content .info-card{margin-top:0}.info-card h3{margin-top:0;margin-bottom:1rem;font-size:1rem;font-weight:600;color:var(--color-text);border-bottom:1px solid var(--color-border);padding-bottom:.75rem}.info-card-item{display:grid;grid-template-columns:max-content 1fr;align-items:center;gap:1rem;padding:.8rem 0}.info-card-item input[type=text],.info-card-item input[type=date],.info-card-item input[type=tel],.info-card-item input[type=email]{width:auto;flex-grow:1;max-width:280px;text-align:right;border:1px solid var(--color-border);background-color:var(--color-bg-surface);color:var(--color-text)}.info-card-item:not(:last-child){border-bottom:1px solid var(--color-border)}.info-card-label{color:var(--color-text-light);font-weight:400}.info-card-item input:focus,.info-card textarea:focus{outline:none;border-color:var(--color-secondary);box-shadow:0 0 0 2px #3b82f633}.info-card-value{color:#1a253c;font-weight:600;text-align:right;-webkit-user-select:text;user-select:text;cursor:text}.info-card-item-vertical{display:flex;flex-direction:column;align-items:flex-start;padding:.6rem 0}.info-card-details{color:#2d3748;font-weight:500;margin-top:.5rem;padding:.5rem;background-color:#f8fafc;background-color:var(--color-bg-light);border-radius:6px;width:100%;box-sizing:border-box;-webkit-user-select:text;user-select:text;cursor:text}.status-badge{padding:1px 6px;border-radius:6px;font-size:.65rem;font-weight:500;text-transform:uppercase;letter-spacing:.02em;-webkit-user-select:text;user-select:text;cursor:text;display:inline-flex;align-items:center;justify-content:center;height:18px;line-height:1;white-space:nowrap;min-width:fit-content}.status-badge.status-enrolled{background-color:#c6f6d5;color:#2f855a}.status-badge.status-waitlist{background-color:#feebc8;color:#9c4221}.status-badge.status-inactive{background-color:#e2e8f0;background-color:var(--color-bg-light);color:#4a5568}.status-badge.status-registered{background-color:#dbeafe;color:#1e40af}.modal-content.base-slots-modal{max-width:450px;padding:25px}.modal-content.base-slots-modal h2{text-align:center;margin-bottom:20px;color:#1a253c;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--color-border);padding-bottom:10px}.modal-form-item{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;gap:10px}.modal-form-item label{flex-grow:1;font-weight:500;color:var(--color-text)}.roster-photo-container{width:40px;height:40px}.roster-photo{width:100%;height:100%;border-radius:50%;object-fit:cover}.roster-photo-placeholder{width:100%;height:100%;border-radius:50%;background-color:#e2e8f0;background-color:var(--color-bg-light);color:#4a5568;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.2rem}.profile-picture-container{position:relative}.header-info{display:flex;flex-direction:column;gap:.5rem;flex:1}.header-info h2{margin:0;line-height:1.2}.header-info .status-badge{align-self:flex-start}.profile-picture{width:60px;height:60px;border-radius:50%;background-color:#4a90e2;background-color:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;flex-shrink:0}.profile-picture-img{width:60px;height:60px;border-radius:50%;object-fit:cover}.profile-picture-label{position:relative;cursor:pointer;border-radius:50%}.upload-overlay{position:absolute;bottom:0;right:0;background:#00000080;color:#fff;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:14px;opacity:0;transition:opacity .2s}.profile-picture-label:hover .upload-overlay{opacity:1}.photo-viewer-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-overlay)}.photo-viewer-overlay img{max-width:90vw;max-height:90vh;border-radius:8px}.photo-viewer-close{position:absolute;top:20px;right:20px;font-size:2rem;color:#fff;background:none;border:none}.column-selector{position:relative}.column-selector-dropdown{position:absolute;top:100%;right:0;background-color:#fff;border:1px solid #cbd5e0;border-radius:6px;padding:10px;box-shadow:0 4px 8px #0000001a;z-index:var(--z-dropdown);width:150px}.column-selector-dropdown div{display:flex;align-items:center;gap:8px;padding:5px}.meal-item-name{background-color:transparent;border-radius:4px;padding:2px 6px;font-size:.75rem;font-weight:500;color:#333;text-shadow:0 1px 1px rgba(255,255,255,.5);position:relative;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.meal-item-name[style*=background-color]{color:#080808;text-shadow:0 1px 1px rgba(0,0,0,.5)}.remove-item-btn{position:absolute;top:50%;right:5px;transform:translateY(-50%);background:none;border:none;font-size:1.1rem;color:#e53e3e;cursor:pointer;line-height:1;padding:0;opacity:0;transition:opacity .2s ease}.meal-item-name:hover .remove-item-btn{opacity:1}.meal-planner-container{display:grid;grid-template-columns:250px 1fr 300px;gap:20px;height:calc(100vh - 160px);transition:grid-template-columns .3s ease}.meal-inventory-sidebar,.meal-shopping-list-sidebar,.meal-calendar-main{background-color:#f8fafc;border:1px solid #e2e8f0;background-color:var(--color-bg-light);border:1px solid var(--color-border);border-radius:8px;padding:15px;overflow-y:auto}.meal-calendar-main{padding:0}.meal-calendar-header{display:flex;justify-content:space-between;align-items:center;padding:15px;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--color-border)}.meal-calendar-header h3,.meal-inventory-sidebar h3,.meal-shopping-list-sidebar h3{text-align:center;border-bottom:none;padding-bottom:0;margin:0}.inventory-category h4{font-size:.9rem;color:#4a5568;margin:15px 0 5px}.inventory-list ul{list-style:none;padding:0;margin:0}.inventory-item{background-color:#fff;padding:8px 10px;border-radius:4px;margin-bottom:5px;font-size:.85rem;display:flex;justify-content:space-between;align-items:center;cursor:grab;border:1px solid #e2e8f0;border:1px solid var(--color-border)}.inventory-item.has-custom-color{background-color:var(--item-bg-color);color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.4);border-color:var(--item-bg-color)}.inventory-item.has-custom-color .item-action-btn{background-color:#fff3;color:#fff}.inventory-item.has-custom-color .item-action-btn:hover{background-color:#fff6}.inventory-item:active{cursor:grabbing}.fresh-indicator{width:10px;height:10px;background-color:#48bb78;border-radius:50%;display:inline-block}.meal-calendar-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background-color:#e2e8f0;border-top:1px solid #e2e8f0;background-color:var(--color-border);border-top:1px solid var(--color-border)}.calendar-header-cell{background-color:#f8fafc;background-color:var(--color-bg-light);font-weight:600;text-align:center;padding:8px}.calendar-day-cell{background-color:var(--color-bg-body);min-height:120px;padding:4px;position:relative;font-size:.8rem}.calendar-day-cell.blank{background-color:#f8fafc;background-color:var(--color-bg-light)}.day-number{position:absolute;top:5px;right:5px;font-size:1rem;font-weight:700;color:#96a5b8}.meal-slot.drag-over{border:2px dashed #4a90e2;border:2px dashed var(--color-primary);background-color:#e6f7ff}.meal-slot-warning{position:absolute;top:4px;right:25px;width:12px;height:12px;background-color:#e53e3e;color:#fff;border-radius:50%;font-weight:700;font-size:.8rem;display:flex;align-items:center;justify-content:center;z-index:var(--z-header-base);cursor:help;box-shadow:0 2px 4px #0003}.warning-tooltip{background-color:#1a253c;color:#fff;padding:8px 12px;border-radius:6px;font-size:.85rem;max-width:250px;white-space:normal;box-shadow:0 4px 6px #0000001a;z-index:var(--z-tooltip);pointer-events:none}.warning-tooltip p{margin:0}.clear-slot-btn{position:absolute;top:4px;right:4px;background:none;color:#a0aec0;border:none;border-radius:50%;width:18px;height:18px;font-size:.9rem;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:var(--z-header-base);opacity:0;transition:opacity .2s ease,color .2s ease}.meal-slot:hover .clear-slot-btn{opacity:1}.clear-slot-btn:hover{color:#e53e3e;background-color:#e53e3e1a}.meal-slot{background-color:var(--color-bg-surface);border:1px solid var(--color-border-light);border:1px dashed #e2e8f0;border:1px dashed var(--color-border);border-radius:4px;padding:5px;margin-top:5px;font-size:.8rem;min-height:40px;position:relative}.meal-label{font-weight:700;font-size:.7rem;color:#718096;display:block;margin-bottom:3px}.snack-master-control-container{background-color:#eaf0f6;border-bottom:1px solid #cbd5e0;padding:15px;text-align:center}.snack-master-control-container h4{font-size:1.1rem;color:#2d3748;margin-bottom:15px}.snack-master-grid{display:flex;justify-content:center;gap:20px;flex-wrap:wrap}.snack-master-item{display:flex;flex-direction:column;align-items:center;gap:5px}.snack-master-label{font-size:.9rem;font-weight:500;color:#4a5568;white-space:nowrap}.snack-master-input{width:70px;padding:6px 8px;border:1px solid #a0aec0;border-radius:4px;text-align:center;font-size:1.1rem;font-weight:700;color:#1a253c;background-color:#f8fafc;background-color:var(--color-bg-light)}.snack-global-toggle{margin-top:15px;text-align:center;display:flex;justify-content:center;gap:15px}.snack-toggle-button{background-color:#63b3ed;color:#fff;padding:8px 15px;border-radius:6px;font-weight:600;cursor:pointer;border:none;display:inline-flex;align-items:center;gap:8px;transition:background-color .2s ease}.snack-toggle-button:hover{background-color:#4299e1}.snack-toggle-icon{transition:transform .2s ease}.snack-toggle-icon.collapsed{transform:rotate(-90deg)}.snack-controls-header{font-weight:700;color:#4a5568;padding:5px 0;margin-bottom:5px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.snack-slots-container{margin-top:10px;margin-bottom:10px;padding-bottom:10px;border-bottom:1px dashed #e2e8f0}.snack-slot-item{display:flex;justify-content:space-between;align-items:center;padding:4px 0;font-size:.85rem}.snack-slot-label{font-weight:700;color:#4a5568}.snack-slot-controls{display:flex;align-items:center;gap:5px}.snack-slot-button{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700;border:none;cursor:pointer;transition:background-color .2s}.snack-slot-button-remove{background-color:#fbd38d;color:#9c4221}.snack-slot-button-remove:hover{background-color:#f6ad55}.snack-slot-button-add{background-color:#9ae6b4;color:#2f855a}.snack-slot-button-add:hover{background-color:#68d391}.snack-slot-count{font-size:1rem;font-weight:700;color:#1a253c;min-width:20px;text-align:center}.snack-slots-summary.compact{font-size:.7rem;padding:3px 5px;margin-top:5px;margin-bottom:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.snack-slot-button.compact{width:20px;height:20px;font-size:.8rem}.meal-inventory-sidebar,.meal-shopping-list-sidebar{position:relative;transition:width .3s ease,padding .3s ease;overflow:hidden;flex-shrink:0}.sidebar-option{display:flex;justify-content:space-between;align-items:center;padding:.5rem 1rem}.sidebar-option input[type=checkbox]{margin:0}.sidebar-toggle{position:absolute;top:8px;background-color:#e2e8f0;border:none;border-radius:4px;width:24px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-weight:700;font-size:.85rem;color:#4a5568;z-index:10;transition:background-color .2s ease;box-shadow:0 1px 3px #0000001a}.sidebar-toggle:hover{background-color:#cbd5e0}.meal-inventory-sidebar.collapsed .sidebar-toggle,.meal-shopping-list-sidebar.collapsed .sidebar-toggle{width:24px;height:36px}.meal-inventory-sidebar,.meal-shopping-list-sidebar{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:15px;overflow-y:auto;position:relative}.meal-shopping-list-sidebar:not(.collapsed){padding-left:15px;padding-top:52px}.meal-inventory-sidebar:not(.collapsed){padding-right:15px;padding-top:52px}.meal-shopping-list-sidebar .sidebar-toggle{left:8px}.meal-inventory-sidebar .sidebar-toggle{right:8px}.meal-inventory-sidebar.collapsed,.meal-shopping-list-sidebar.collapsed{width:40px;padding:0;cursor:pointer}.meal-inventory-sidebar.collapsed>*:not(.sidebar-toggle),.meal-shopping-list-sidebar.collapsed>*:not(.sidebar-toggle){display:none}.meal-planner-container.inventory-closed{grid-template-columns:40px 1fr 300px}.meal-planner-container.shopping-list-closed{grid-template-columns:250px 1fr 40px}.meal-planner-container.inventory-closed.shopping-list-closed{grid-template-columns:40px 1fr 40px}.shopping-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:2px solid var(--color-border)}.shopping-list-header h3{margin:0;font-size:1.1rem;font-weight:600;color:var(--color-text)}.shopping-list-count{font-size:.85rem;font-weight:500;color:var(--color-text-light);background-color:var(--color-primary);color:#fff;padding:3px 10px;border-radius:12px}.shopping-list{flex-grow:1;overflow-y:auto}.empty-shopping-list{text-align:center;padding:2rem 1rem;color:var(--color-text-muted);font-style:italic}.shopping-list-items{display:flex;flex-direction:column;gap:1.25rem}.shopping-list-category{background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:8px;padding:.75rem}.shopping-category-title{font-size:.9rem;font-weight:600;color:var(--color-primary);margin:0 0 .5rem;padding-bottom:.5rem;border-bottom:1px solid var(--color-border-light);text-transform:uppercase;letter-spacing:.5px}.shopping-category-items{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.shopping-list-item{background-color:var(--color-bg-light);border:1px solid var(--color-border-light);border-radius:6px;padding:.6rem;transition:all .2s ease}.shopping-list-item:hover{background-color:var(--color-bg-hover);border-color:var(--color-primary-light);box-shadow:0 2px 4px #0000000d}.shopping-item-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.shopping-item-name{font-size:.9rem;font-weight:500;color:var(--color-text)}.shopping-item-count{font-size:.85rem;font-weight:600;color:var(--color-text);background-color:var(--color-bg-hover);border:1px solid var(--color-border);padding:2px 8px;border-radius:10px}.shopping-item-dates{font-size:.75rem;color:var(--color-text-light);font-style:italic}.view-controls{display:flex;gap:10px}.fullscreen-button{background-color:#38a169}.fullscreen-button:hover{background-color:#2f855a}.fullscreen-calendar-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#fffffffa;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:var(--z-modal-overlay);display:flex;align-items:center;justify-content:center;padding:2vw;box-sizing:border-box}.fullscreen-calendar-content{width:100%;height:100%;display:flex;flex-direction:column}.fullscreen-header{text-align:center;margin-bottom:15px;flex-shrink:0}.fullscreen-header h2{font-size:2.5rem;color:#1a253c}.fullscreen-close-btn{position:absolute;top:20px;right:20px;font-size:2.5rem;color:#718096;background:none;border:none}.fullscreen-calendar-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;flex-grow:1;overflow-y:auto}.fullscreen-grid-header{font-size:1.2rem;font-weight:600;text-align:center;color:#4a5568;position:sticky;top:0;z-index:var(--z-header-base);border-bottom:2px solid #e2e8f0}.fullscreen-day-cell{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:10px;display:flex;flex-direction:column;gap:8px}.fullscreen-day-cell.blank{background-color:transparent;border:none}.fullscreen-day-number{font-size:1.1rem;font-weight:700;color:#2d3748}.fullscreen-snack-summary{font-size:.9rem;color:#718096;font-weight:500}.fullscreen-meal-slot{border-top:1px dashed #cbd5e0;padding-top:8px}.fullscreen-meal-label{font-weight:700;color:#4a5568}.fullscreen-item-name{padding-left:10px;color:#1a253c}.print-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:var(--z-modal-overlay)}.print-content{background-color:#fff;width:95vw;height:95vh;padding:2vw;box-sizing:border-box;overflow-y:auto}.print-header{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:2px solid #333;margin-bottom:10px;padding-bottom:10px}.print-header h3{margin:0;font-size:1.5rem;flex:1}.print-school-info{text-align:right;font-size:.9rem;line-height:1.4}.print-business-name{font-weight:600;margin-bottom:2px}.print-date-generated{color:#666;font-size:.85rem}.print-calendar-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;width:100%}.print-calendar-header-cell{font-weight:700;text-align:center;padding-bottom:5px;border-bottom:1px solid #ccc}.print-calendar-day-cell{border:1px solid #ccc;padding:5px;min-height:120px;font-size:.8rem}.print-calendar-day-cell.blank{background-color:#f8f8f8;border:1px solid #eee}.print-day-number{font-weight:700;margin-bottom:5px}.print-snack-slots{background-color:#f3f3f3;padding:3px;border-radius:3px;margin-bottom:5px}.print-snack-label{font-weight:700;font-size:.7rem}.print-snack-items{display:flex;flex-wrap:wrap;gap:5px;font-size:.7rem}.print-meal-slot{margin-top:5px}.print-meal-row{display:flex;justify-content:space-between;gap:5px;flex-wrap:wrap}.print-meal-row .print-meal-slot{flex:1;min-width:0}.print-meal-label{font-weight:700;font-size:.7rem;color:#555}.print-item-name{font-size:.75rem;padding-left:5px}.tooltip{position:fixed;background:#333;color:#fff;padding:5px 10px;border-radius:4px;font-size:.9rem;z-index:var(--z-modal-overlay);pointer-events:none;white-space:nowrap}@media (max-width: 860px){.header-logo{display:none}.header-logo body{font-size:16px;-webkit-text-size-adjust:100%}.header-logo button,.header-logo .nav-button{padding:12px 18px;font-size:1rem}.header-logo .roster-search-bar{width:100%;padding:12px 15px;font-size:1rem;border-radius:8px;border:1px solid #e2e8f0;margin-bottom:1rem;box-sizing:border-box}.header-logo .roster-card-list{border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.header-logo .roster-card-mobile{display:flex;align-items:center;gap:1rem;padding:1rem;background-color:#fff;cursor:pointer;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--color-border)}.header-logo .roster-card-mobile:last-child{border-bottom:none}.header-logo .roster-card-mobile:active{background-color:#f8fafc}.header-logo .roster-card-info{display:flex;flex-direction:column;flex-grow:1}.header-logo .roster-card-name{font-weight:600;color:#1e293b}.header-logo .roster-card-room{font-size:.9rem;color:#64748b}.header-logo .roster-card-arrow{font-size:1.5rem;color:#94a3b8}.header-logo .roster-no-results{padding:2rem;text-align:center;color:#64748b}.menu-bar,.controls-bar{flex-wrap:wrap;height:auto;padding:10px}.menu-left{flex-basis:50%}.menu-left{display:flex;align-items:center;justify-content:flex-start}.control-group.center{flex-basis:100%;order:3;justify-content:center!important}.controls-bar{flex-direction:column;align-items:stretch;gap:15px}.control-group{justify-content:space-between;width:100%}.roster-table thead,.waitlist-table thead,.leads-table thead{display:none}.roster-table,.waitlist-table,.leads-table,.roster-table tbody,.waitlist-table tbody,.leads-table tbody,.roster-table tr,.waitlist-table tr,.leads-table tr,.roster-table td,.waitlist-table td,.leads-table td{display:block;width:100%;box-sizing:border-box}.roster-table tr,.waitlist-table tr,.leads-table tr{margin-bottom:1rem;border:1px solid #e2e8f0;border:1px solid var(--color-border);border-radius:8px;padding:.5rem}.roster-table td,.waitlist-table td,.leads-table td{display:flex;justify-content:space-between;padding:.75rem .5rem;border:none;border-bottom:1px solid #f1f5f9;border-bottom:1px solid var(--color-bg-light);text-align:right}.roster-table td:last-child,.waitlist-table td:last-child,.leads-table td:last-child{border-bottom:none}.roster-table td:before,.waitlist-table td:before,.leads-table td:before{content:attr(data-label);font-weight:700;text-align:left;margin-right:1rem}.controls-bar button,.modal-actions button{padding:12px 16px;font-size:1rem}.hamburger-menu{display:block;font-size:1.5rem;background:none;border:none;color:#333;z-index:var(--z-modal)}.nav-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:calc(var(--z-modal-overlay) - 2);opacity:0;visibility:hidden;transition:opacity .3s ease-in-out,visibility .3s ease-in-out}.nav-overlay.open{opacity:1;visibility:visible}.nav-links{position:fixed;top:0;left:0;width:250px;height:100vh;padding-top:var(--menu-height);background:#fff;flex-direction:column;align-items:flex-start;box-shadow:2px 0 5px #0000001a;transform:translate(-100%);transition:transform .3s ease-in-out;z-index:calc(var(--z-modal) + 1)}.nav-links.open{transform:translate(0)}.nav-links .nav-button{width:100%;text-align:left;padding:1rem 1.5rem;border-radius:0;border-bottom:1px solid #f0f0f0}.menu-right{gap:8px}.controls-bar{flex-direction:column;align-items:stretch;gap:10px}.control-group{justify-content:space-between!important}.filter-sidebar{display:none}}.print-container{display:none}.configure-button{background-color:#718096}.configure-button:hover{background-color:#4a5568}.modal-content .form-group{margin-bottom:15px}.modal-content.base-periods-modal{max-width:450px}.base-periods-modal p{margin-top:0;margin-bottom:20px;color:#4a5568;text-align:center}.modal-form .form-group input[type=color]{padding:0;width:40px;height:40px;border-radius:50%;cursor:pointer;appearance:auto;-webkit-appearance:auto;-moz-appearance:auto}.modal-form-item.checkbox-item{padding:10px;border:1px solid var(--color-border);border-radius:6px;background-color:var(--color-bg-surface)}.modal-form-item.checkbox-item label{font-weight:600}.modal-form-item.checkbox-item input[type=checkbox]{width:20px;height:20px;accent-color:#4a90e2}.modal-content .modal-form{display:flex;flex-direction:column;gap:15px}.modal-content .modal-form>div{display:grid;grid-template-columns:120px 1fr;align-items:center;gap:15px}.modal-content .modal-form label{text-align:right;margin-bottom:0;font-weight:500}.modal-actions{margin-top:0;padding:12px 20px 15px}.modal-header h2{margin:0;display:flex;align-items:baseline;gap:var(--spacing-sm);line-height:1.2}.modal-header h2 .status-badge{flex-shrink:0;align-self:center}.timeline-hover-line{position:absolute;top:0;height:100%;width:1px;background-color:#4c6ef570;pointer-events:none;z-index:99;transform:translate(-50%)}.timeline-tooltip{position:absolute;transform:translate(-50%);pointer-events:none;z-index:100}.timeline-tooltip-content{background-color:#212529;color:#fff;padding:8px 12px;border-radius:6px;font-size:.85rem;white-space:nowrap;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;display:flex;flex-direction:column;gap:4px;text-align:center}.inventory-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.inventory-header h3{margin:0}.add-item-btn{background-color:#4a90e2;color:#fff;font-weight:600;padding:8px 16px;border:none;border-radius:6px;cursor:pointer;transition:background-color .2s ease}.add-item-btn:hover{background-color:#47a2fd}.inventory-item{position:relative}.item-name-wrapper{display:flex;align-items:center;gap:8px}.recipe-badge{font-size:.85rem;opacity:.9;cursor:help;margin-left:4px}.recipe-badge.clickable{cursor:pointer;transition:transform .2s ease}.recipe-badge.clickable:hover{transform:scale(1.2)}.item-actions{position:absolute;right:10px;top:50%;transform:translateY(-50%);display:flex;gap:5px;opacity:0;transition:opacity .2s ease}.inventory-item:hover .item-actions{opacity:1}.item-action-btn{background:#e9ecef;color:#495057;border:none;border-radius:50%;width:28px;height:28px;font-size:.9rem;display:flex;align-items:center;justify-content:center;cursor:pointer}.item-action-btn.delete{background:#ffe3e3;color:var(--color-danger)}.modal-content.item-modal{max-width:550px;max-height:90vh;overflow-y:auto}.item-modal h2{text-align:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--color-border);color:var(--primary-dark);font-size:1.5rem}.recipe-toggle-section{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--color-border)}.recipe-toggle-btn{width:100%;text-align:left;background-color:#f8f9fa;border:1px solid #cbd5e0;border-radius:8px;padding:.75rem 1rem;font-size:1rem;font-weight:600;color:#667eea;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.recipe-toggle-btn:hover{background-color:#e9ecef;border-color:#667eea}.recipe-toggle-btn .toggle-icon{font-size:.8rem;transition:transform .2s ease}.recipe-toggle-btn .has-recipe-indicator{margin-left:auto;font-size:1.1rem}.recipe-section-content{margin-top:1rem;padding:1rem;background-color:#f8fbff;border-radius:8px;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.form-group textarea{width:100%;padding:.75rem;border:1px solid #cbd5e0;border-radius:6px;font-family:inherit;font-size:.95rem;line-height:1.5;resize:vertical;transition:border-color .2s ease}.form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group textarea::placeholder{color:#a0aec0}.recipe-view-modal{max-width:700px}.recipe-view-content{max-height:60vh;overflow-y:auto;padding:1rem 0}.recipe-section-view{margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--color-border)}.recipe-section-view:last-child{border-bottom:none;padding-bottom:0}.recipe-section-view h3{font-size:1.1rem;font-weight:600;color:#667eea;margin-bottom:.75rem}.recipe-text{white-space:pre-wrap;line-height:1.7;color:var(--text-primary);margin:0}.no-recipe-message{text-align:center;color:var(--text-secondary);font-style:italic;padding:2rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-weight:600;color:#2d3748;margin-bottom:.5rem;font-size:.95rem}.form-group input[type=text],.form-group input[type=date],.form-group select{width:100%;padding:.65rem .75rem;border:1px solid #cbd5e0;border-radius:6px;font-size:.95rem;transition:border-color .2s ease,box-shadow .2s ease}.form-group input[type=text]:focus,.form-group input[type=date]:focus,.form-group select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group.checkbox-group{display:flex;align-items:center;justify-content:space-between}.form-group.checkbox-group input[type=checkbox]{width:20px;height:20px;accent-color:var(--color-primary)}.manage-inventory-btn{background-color:#4a90e2;color:#fff;font-weight:600;padding:6px 14px;font-size:.85rem}.inventory-item .item-name-wrapper .fresh-indicator{display:none}.modal-content.inventory-modal{max-width:90vw;width:1200px;height:80vh}.inventory-modal-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:15px;border-bottom:1px solid var(--color-border)}.inventory-modal-header h2{margin:0}.inventory-modal-header .add-item-btn{background-color:#4a90e2;color:#fff;font-weight:600;padding:8px 16px;border:none;border-radius:6px;cursor:pointer;transition:background-color .2s ease}.inventory-modal-header .add-item-btn:hover{background-color:#47a2fd}.inventory-table-container{flex-grow:1;overflow-y:auto;margin-top:15px}.inventory-table{width:100%;border-collapse:collapse}.inventory-table th,.inventory-table td{border:1px solid #e2e8f0;padding:12px;text-align:left}.inventory-table th{background-color:#f8f9fa;font-weight:600;position:sticky;top:0}.item-actions-table{display:flex;gap:8px}.recipe-indicator-cell{text-align:center}.recipe-indicator{font-size:1.2rem;cursor:help}.form-row{display:flex;gap:20px}.form-row .form-group{flex:1}.login-container{display:flex;align-items:center;justify-content:center;min-height:100vh;min-height:-webkit-fill-available;min-height:100dvh;background-color:#f4f7f9;box-sizing:border-box;padding:1rem}.login-box{background:#fff;padding:40px;border-radius:8px;box-shadow:0 4px 10px #0000001a;width:100%;max-width:400px}[data-theme=cosmic] .login-box,body.cosmic-mode .login-box{background:#1e293b;box-shadow:0 4px 10px #0000004d}.login-box h2{text-align:center;margin-bottom:25px;color:#1a253c}[data-theme=cosmic] .login-box h2,body.cosmic-mode .login-box h2{color:#f1f5f9}.input-group{margin-bottom:20px}.input-group label{display:block;margin-bottom:5px;font-weight:600;color:#4a5568}.input-group input{width:100%;padding:10px;border:1px solid #cbd5e0;border-radius:6px}.login-button{width:100%;padding:12px;font-size:1rem}.login-error{color:#e53e3e;text-align:center;margin-bottom:15px}.settings-page{width:100%}.settings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.settings-table{width:100%;border-collapse:collapse}.settings-table th,.settings-table td{border:1px solid #e2e8f0;padding:12px;text-align:left}.settings-table th{background-color:#f8fafc}.settings-table .edit-btn{background-color:#f6ad55;margin-right:10px}.settings-layout{display:flex;gap:2rem;align-items:flex-start}.settings-nav{width:220px;flex-shrink:0;background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}[data-theme=cosmic] .settings-nav,body.cosmic-mode .settings-nav{background-color:#1e293b;border-color:#334155}.settings-nav .nav-heading{padding:1rem 1rem .5rem;font-size:.75rem;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em}.settings-nav button{display:block;width:100%;padding:.8rem 1rem;text-align:left;background:none;border:none;border-left:4px solid transparent;font-size:1rem;font-weight:500;color:#334155;cursor:pointer;border-radius:0}.settings-nav button:hover{background-color:#f1f5f9;color:#1e293b}[data-theme=cosmic] .settings-nav button{color:#cbd5e1}[data-theme=cosmic] .settings-nav button:hover{background-color:#ffffff1a;color:#f1f5f9}body.cosmic-mode .settings-nav button{color:#cbd5e1}body.cosmic-mode .settings-nav button:hover{background-color:#ffffff1a;color:#f1f5f9}.settings-nav button.active{background-color:#eef2ff;color:#4338ca;font-weight:600;border-left-color:#4a90e2;border-left-color:var(--color-primary)}[data-theme=cosmic] .settings-nav button.active,body.cosmic-mode .settings-nav button.active{background-color:#4f46e533;color:#a5b4fc;border-left-color:#6366f1}.settings-form{margin-top:20px}.settings-form .form-group{margin-bottom:15px}.settings-form label{display:block;font-weight:600;margin-bottom:5px;color:#4a5568}.settings-form input,.settings-form textarea{width:100%;max-width:500px;padding:8px 12px;border:1px solid #cbd5e0;border-radius:6px;font-size:1rem}.settings-form textarea{min-height:80px}.form-actions{display:flex;align-items:center;gap:20px;margin-top:20px}.save-message{font-weight:600}.save-message.success{color:#2f855a}.save-message.error{color:#e53e3e}.settings-description{color:var(--color-text-secondary);margin-bottom:24px;font-size:14px}.theme-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-top:20px}.theme-card{position:relative;display:flex;align-items:center;gap:16px;padding:16px;background:var(--color-bg-surface);border:2px solid var(--color-border);border-radius:var(--border-radius-md);cursor:pointer;transition:all .2s ease;text-align:left;width:100%}.theme-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow);transform:translateY(-2px)}.theme-card.active{border-color:var(--color-primary);background:var(--color-primary-bg);box-shadow:var(--shadow-lg)}.theme-card-preview{width:48px;height:48px;border-radius:var(--border-radius-md);border:2px solid var(--color-border);flex-shrink:0;box-shadow:inset 0 2px 4px #0000001a}.theme-card-info{flex:1}.theme-card-name{font-weight:600;font-size:16px;color:var(--color-text);margin-bottom:4px}.theme-card-description{font-size:13px;color:var(--color-text-secondary);line-height:1.4}.theme-card-check{position:absolute;top:12px;right:12px;flex-shrink:0}.appearance-message{margin-top:20px;padding:12px 16px;background:var(--color-success-bg, #d1fae5);color:var(--color-success, #065f46);border-radius:var(--border-radius-md);font-weight:500}.settings-nav .nav-separator{border:none;border-top:1px solid #e2e8f0;margin:.5rem 0}.settings-content{flex-grow:1}.sidebar-divider{padding:10px 15px;font-size:.8rem;font-weight:700;color:#a0aec0;text-transform:uppercase;background-color:#edf2f7}.modal-content.stylish-modal .modal-header p{font-size:1rem;color:#64748b;margin-top:5px}.review-controls{padding:1rem 1.5rem;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center;background-color:#f8fafc;flex-shrink:0}.review-controls button{padding:6px 12px;font-size:.8rem;background-color:#fff;color:#4a5568;border:1px solid #cbd5e0}.review-controls button:hover{background-color:#f1f5f9}.review-controls strong{font-size:.9rem;color:#4a5568}.review-list{overflow-y:auto;padding:.5rem 1.5rem;flex-grow:1}.review-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem 0;border-bottom:1px solid #f1f5f9}.review-item:last-child{border-bottom:none}.review-item input[type=checkbox]{width:20px;height:20px;margin-top:4px;accent-color:#4a90e2;flex-shrink:0}.review-item-content{display:flex;flex-direction:column;gap:.25rem;flex-grow:1}.review-item-content p.review-item-details{margin:0}.review-item-header{display:flex;align-items:baseline;gap:1rem;width:100%}.change-badge{padding:3px 10px;border-radius:9999px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#fff;background-color:#718096}.change-badge.new_child,.change-badge.new_enrollment{background-color:#38a169}.change-badge.promotion,.change-badge.fte_change{background-color:#dd6b20}.change-badge.disenrollment{background-color:#e53e3e}.child-name{font-weight:600;color:#1e293b;flex:1 1 200px;min-width:150px}review-item-details{font-size:.9rem;color:#64748b;flex:2 1 300px;text-align:left}.permission-table{margin-top:1rem}.permission-table th,.permission-table td{text-align:center}.permission-table td:first-child{text-align:left;font-weight:500}.permission-table select{width:100px}.save-message{font-weight:600;color:#2f855a}.profile-dropdown{position:absolute;top:50px;right:0;background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 12px #0000001a;width:240px;z-index:1001;padding:0;overflow:hidden}[data-theme=cosmic] .profile-dropdown,body.cosmic-mode .profile-dropdown{background-color:#1e293b;border-color:#334155;box-shadow:0 4px 12px #0000004d}.profile-dropdown .user-menu-email{padding:12px 16px;background:#f8fafc;border-bottom:1px solid #e2e8f0;font-size:14px;color:#64748b;font-weight:500;word-break:break-word;margin:0}[data-theme=cosmic] .profile-dropdown .user-menu-email,body.cosmic-mode .profile-dropdown .user-menu-email{background:#0f172a;border-bottom-color:#334155;color:#cbd5e1}.dropdown-user-info{padding:4px 16px 12px}.dropdown-user-name{font-weight:600;color:#1e293b;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}[data-theme=cosmic] .dropdown-user-name,body.cosmic-mode .dropdown-user-name{color:#f1f5f9}.dropdown-user-email{font-size:.875rem;color:#64748b;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}[data-theme=cosmic] .dropdown-user-email,body.cosmic-mode .dropdown-user-email{color:#cbd5e1}.dropdown-divider{border:none;border-top:1px solid #f1f5f9;margin:8px 0}.profile-dropdown button{display:block;width:100%;text-align:left;padding:12px 16px;background-color:transparent;border:none;border-radius:0;border-bottom:1px solid #f1f5f9;font-size:14px;font-weight:500;color:#334155;cursor:pointer;box-shadow:none;margin:0}.profile-dropdown button:last-child{border-bottom:none}.profile-dropdown button:hover{background-color:#f8fafc}[data-theme=cosmic] .profile-dropdown button,body.cosmic-mode .profile-dropdown button{color:#f1f5f9;border-bottom-color:#334155}[data-theme=cosmic] .profile-dropdown button:hover,body.cosmic-mode .profile-dropdown button:hover{background-color:#334155}.user-moniker{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background-color:#4a90e2;color:#fff;font-weight:700;font-size:.9rem;cursor:pointer;transition:background-color .2s ease-in-out}.user-moniker:hover{background-color:#357abd}@media (max-width: 1200px){.meal-calendar-header{flex-direction:column;align-items:flex-start;gap:10px}.view-controls{width:100%;display:flex;flex-direction:column;gap:8px}.view-controls button{width:100%;text-align:center}}.timeline-container{overflow-x:auto;overflow-y:auto;max-height:calc(100vh - 160px);border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 4px 12px #00000014;position:relative;contain:layout style;scrollbar-width:none;-ms-overflow-style:none}.timeline-container::-webkit-scrollbar{display:none}.timeline-grid{display:grid;position:relative;background-color:#f1f5f9;grid-gap:1px}.grid-cell{background-color:#f8fafc;display:flex;align-items:center;min-height:42px;padding:8px}.header-cell,.month-header{position:-webkit-sticky!important;position:sticky!important;top:0!important;z-index:20!important;background-color:inherit}.timeline-grid .header-cell,.timeline-grid .month-header{position:-webkit-sticky!important;position:sticky!important;top:0!important;z-index:25!important}.label-cell{position:sticky;left:0;z-index:10}.corner-cell{position:sticky;top:0;left:0;z-index:30;justify-content:center;font-weight:700;border-bottom:2px solid #cbd5e0;border-right:1px solid #dee2e6}.month-header{flex-direction:column;justify-content:center;font-weight:600;line-height:1.2;border-bottom:2px solid #cbd5e0}.month-header-year{font-size:.75rem;color:#64748b}.room-header{grid-column:1 / -1;font-weight:700;background-color:#e2e8f0;color:#1e293b}.child-name-cell{justify-content:flex-end;font-weight:400;font-size:.85rem;color:#64748b;padding-right:15px;border-right:1px solid #e2e8f0;border-right:1px solid var(--color-border)}.timeline-grid>.timeline-track{display:grid!important;position:relative;padding:0}.month-break{border-right:1px solid #e9ecef}.month-grid-line{position:absolute;top:0;bottom:0;width:1px;background:var(--color-border, rgba(0, 0, 0, .08));pointer-events:none;z-index:1}.capacity-row{color:#334155;justify-content:flex-end;font-weight:700;border-right:1px solid #e2e8f0;font-size:.75rem;padding:4px 8px}.capacity-track{grid-column:2 / -1;display:grid;padding:0}.capacity-cell{justify-content:center;font-weight:600;border-right:1px solid #f1f5f9;border-right:1px solid var(--color-bg-light);font-size:.8rem;padding:4px}.capacity-cell:last-child{border-right:none}.over-capacity{background-color:#fff1f2!important;color:#be123c;font-weight:700}.ratio-row{font-size:.75rem;padding:4px 8px;font-weight:600;background-color:#f8fafc;border-top:1px solid #e2e8f0;text-align:right;color:#4a5568;justify-content:right}.ratio-cell{font-size:.8rem;padding:4px;background-color:#f8fafc;border-top:1px solid #e2e8f0;text-align:center;color:#4a5568;justify-content:center}.occupancy-bar{position:absolute;top:10%;height:70%;color:#fff;font-size:.8rem;display:flex;align-items:center;border-radius:6px;z-index:5;overflow:hidden;white-space:nowrap;box-shadow:0 1px 3px #00000026;cursor:grab;border:1px solid rgba(0,0,0,.1);transition:transform .1s ease-in-out,box-shadow .1s ease-in-out}.occupancy-bar:before{content:attr(data-label);padding:0 8px;pointer-events:none;text-shadow:0 1px 1px rgba(0,0,0,.3)}.occupancy-bar:hover{transform:scale(1.02);box-shadow:0 4px 8px #0003;z-index:6}.slot-nudge-controls{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;gap:1px;opacity:0;pointer-events:none;transition:opacity .15s ease-in-out;z-index:8}.occupancy-bar:hover .slot-nudge-controls{opacity:1;pointer-events:auto}.slot-nudge-btn{width:14px;height:12px;padding:0;border:none;border-radius:2px;background:#ffffff40;color:#ffffffd9;font-size:8px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.slot-nudge-btn:hover:not(:disabled){background:#ffffff8c;color:#fff}.slot-nudge-btn:disabled{opacity:.45;cursor:not-allowed}.bar-label{padding:0 8px;pointer-events:none}@media print{@page{size:letter landscape;margin:.5in}.hide-on-print,.header-sticky,.app-container>h1{display:none!important}.occupancy-bar,.print-snack-slots,.print-calendar-day-cell[style*=background-color],.meal-item-name[style*=background-color],.category-Vegetable,.category-Fruit,.category-Grain,.category-Dairy,.category-Protein,.category-Other{-webkit-print-color-adjust:exact;print-color-adjust:exact}.app-container{padding:0!important;margin:0!important;max-width:none!important;height:auto!important}.timeline-container{overflow:visible!important;max-height:none!important;border:none!important;box-shadow:none!important;padding-bottom:0!important}.timeline-grid{display:grid!important;grid-gap:0;border:1px solid #e2e8f0;border:1px solid var(--color-border);width:fit-content}.main-content{flex-grow:1;overflow-x:visible!important;width:auto!important}.header-cell,.label-cell,.corner-cell{position:static!important}.grid-cell{border-right:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--color-border);background-color:#fff;padding:4px 8px}.timeline-track{display:block!important;position:relative;padding:0!important;min-height:calc(var(--num-lanes, 1) * 42px);transition:min-height .2s ease-in-out}.occupancy-bar.print-mode{position:absolute!important;border:1px solid rgba(0,0,0,.2)!important;border-radius:4px!important;top:50%!important;transform:translateY(-50%)!important;height:auto!important;margin:0!important;padding:4px 8px!important;font-size:8pt!important;white-space:nowrap;display:block!important;overflow:visible!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.resize-handle,.bar-label,.slot-nudge-controls{display:none!important}.occupancy-bar.print-mode:before{content:attr(data-label);color:#000;font-weight:500;text-shadow:none}.print-button{display:none!important}.capacity-row,.capacity-cell{position:static!important;background-color:#f1f5f9!important;border-top:1px solid #e2e8f0!important;background-color:var(--color-bg-light)!important;border-top:1px solid var(--color-border)!important;font-weight:600!important}.capacity-cell.over-capacity{background-color:#ffe3e3!important;color:#be123c!important}.print-snack-group{display:flex;flex-direction:row;gap:5px;flex-wrap:wrap;margin-bottom:5px}.print-snack-group .print-meal-slot{flex:1;min-width:0}body.meal-planner-printing #root{display:none}#print-root,#print-root *{visibility:visible}.print-container{display:block;position:absolute;left:0;top:0;width:100%}.print-header h3{font-size:12pt;margin-bottom:5px}.print-calendar-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:2px;width:100%}.print-calendar-header-cell{padding-bottom:2px;font-size:8pt}.print-calendar-day-cell{page-break-inside:avoid;padding:3px;min-height:auto;font-size:7pt;border:1px solid #aaa}.print-calendar-day-cell.blank{background-color:#f8f8f8;border:1px solid #eee}.print-day-number{font-size:7pt;margin-bottom:2px}.print-item-name,.print-meal-label,.print-snack-label,.print-snack-items{font-size:6pt}.print-snack-slots{background-color:#f3f3f3;padding:2px;margin-bottom:2px;-webkit-print-color-adjust:exact;print-color-adjust:exact}}.spinner{border:4px solid rgba(0,0,0,.1);width:36px;height:36px;border-radius:50%;border-left-color:#4a90e2;animation:spin 1s ease infinite;margin:0 auto 15px}.modal-content.processing-modal-content{background-color:#fff;padding:30px 40px;text-align:center;box-shadow:0 4px 20px #00000026;border-radius:12px}.processing-modal-content p{font-size:1.1rem;font-weight:600;color:#4a5568;margin:0}.category-Vegetable{background-color:#e6f8ee;border-color:#a3e4c0}.category-Fruit{background-color:#ffe8e8;border-color:#eea40679}.category-Grain{background-color:#f7f2e6;border-color:#e2d7be}.category-Dairy{background-color:#f0f0f0;border-color:#d1d1d1}.category-Protein{background-color:#fcebeb;border-color:#f5a9a9}.category-Other{background-color:#f0f4f7;border-color:#d8e0e6}.revert-btn.on-timeline{position:absolute;top:50%;transform:translateY(-50%);width:24px;height:24px;border-radius:50%;border:1px solid rgba(0,0,0,.3);background-color:#ffc107;color:#000;font-size:16px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;box-shadow:0 1px 3px #0003}.revert-btn.on-timeline:hover{background-color:#ffca2c}.revert-btn.on-timeline.start{left:-12px}.revert-btn.on-timeline.end{right:-12px}.roster-toggle-bar{display:flex;margin-bottom:20px;border-bottom:2px solid var(--color-border)}.roster-toggle-bar button{padding:10px 20px;font-size:1.1rem;font-weight:600;border:none;background-color:transparent;color:#718096;cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-2px;border-radius:0}.roster-toggle-bar button.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.time-input-container{display:flex;align-items:center;border:1px solid #cbd5e0;border-radius:6px;padding:0 4px;background-color:#fff}.time-input-select{border:none;background-color:transparent;font-size:.9rem;padding:6px 2px;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:center}.time-input-select:focus{outline:none}.time-input-separator{font-weight:700;color:#4a5568}.time-input-text{width:110px;padding:8px 12px;border:1px solid #cbd5e0;border-radius:6px;font-size:.9rem;font-family:inherit;box-sizing:border-box;text-align:center}.color-picker-wrapper{position:relative}.color-swatch{width:100%;height:38px;border-radius:6px;border:1px solid #cbd5e0;cursor:pointer;background-color:#fff}.color-picker-popover{position:absolute;z-index:2;top:calc(100% + 5px);left:0}.color-picker-cover{position:fixed;top:0;right:0;bottom:0;left:0}.scheduler-page h2{text-align:center;margin-bottom:20px}.scheduler-grid{border:1px solid #e2e8f0;border:1px solid var(--color-border);border-radius:8px;background-color:#f8fafc;background-color:var(--color-bg-light)}.scheduler-time-header{display:grid;grid-template-columns:150px 1fr;border-bottom:2px solid #e2e8f0;border-bottom:2px solid var(--color-border);font-weight:600;color:#4a5568;position:sticky;top:102px;background-color:#f8fafc;z-index:10}.scheduler-header-times{display:flex;justify-content:space-around;padding:8px 0}.scheduler-room-section{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--color-border)}.scheduler-room-section:last-child{border-bottom:none}.scheduler-row{display:grid;grid-template-columns:150px 1fr;min-height:50px;border-bottom:1px solid #f1f5f9;border-bottom:1px solid var(--color-bg-light)}.scheduler-row:last-child{border-bottom:none}.scheduler-shift-label{padding:8px;font-size:.9rem;text-align:right;border-right:1px solid #e2e8f0;border-right:1px solid var(--color-border);background-color:#fff}.scheduler-timeline{position:relative;background-image:linear-gradient(to right,#e2e8f0 1px,transparent 1px);background-image:linear-gradient(to right,var(--color-border) 1px,transparent 1px);background-size:calc(100% / 12) 100%}.staff-block{position:absolute;top:5px;bottom:5px;background-color:#63b3ed;color:#fff;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:600;overflow:hidden;white-space:nowrap;box-shadow:0 2px 4px #0000001a;border:1px solid #4299e1}.staff-block.empty{background-color:#f1f5f9;background-color:var(--color-bg-light);color:#a0aec0;border:1px dashed #cbd5e0;box-shadow:none}.lunch-block{position:absolute;top:0;bottom:0;background-color:#fff6;z-index:1;display:flex;align-items:center;justify-content:center;font-size:.75rem;color:#1a253c;border-left:2px solid #f6ad55;border-right:2px solid #f6ad55;box-sizing:border-box}room-header h3{color:#1a253c;margin-top:25}.aide-block{display:inline-block;padding:4px 8px;background-color:#a78bfa;color:#fff;border-radius:999px;margin:4px;font-size:.8rem}.staff-name-label{position:relative;z-index:2}.program-enrollment-item{display:flex;justify-content:space-between;align-items:center;margin-top:0}.program-details{display:flex;flex-direction:column;gap:.25rem;margin-right:1rem;flex-grow:1;min-width:0}.program-details strong,.program-details small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.program-actions{display:flex;align-items:center;justify-content:flex-end;gap:1rem;flex-shrink:0;width:230px}.switch{position:relative;display:inline-block;width:50px;height:28px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;transition:.4s}.slider:before{position:absolute;content:"";height:20px;width:20px;left:4px;bottom:4px;background-color:#fff;transition:.4s}input:checked+.slider{background-color:#4caf50}input:focus+.slider{box-shadow:0 0 1px #2196f3}input:checked+.slider:before{transform:translate(22px)}.slider.round{border-radius:28px}.slider.round:before{border-radius:50%}.program-actions .schedule-select{padding:6px 10px;border-radius:4px;border:1px solid #ccc;background-color:#fff;min-width:150px}.extracurriculars-page-content .page-header-container{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.extracurriculars-page-content .page-description{font-size:1.1rem;color:#718096;margin:0}.extracurriculars-table{width:100%;border-collapse:collapse;margin-top:1rem}.extracurriculars-table th,.extracurriculars-table td{border:1px solid #e2e8f0;border:1px solid var(--color-border);padding:8px 12px;text-align:left;vertical-align:middle}.extracurriculars-table th{background-color:var(--color-bg-light);font-weight:600;white-space:nowrap}.extracurriculars-table .child-name-header{width:200px;text-align:center}.extracurriculars-table .child-name-cell{font-weight:500}.extracurriculars-table .program-cell{text-align:center}.extracurriculars-table .program-control-group{display:flex;flex-direction:column;align-items:center;gap:.5rem;min-height:50px}.extracurriculars-table .program-control-group input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:20px;height:20px;border:2px solid #cbd5e0;border-radius:4px;background-color:#fff;cursor:pointer;position:relative;transition:all .2s ease}.extracurriculars-table .program-control-group input[type=checkbox]:hover{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.extracurriculars-table .program-control-group input[type=checkbox]:checked{background-color:#667eea;border-color:#667eea}.extracurriculars-table .program-control-group input[type=checkbox]:checked:before{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:14px;font-weight:700;line-height:1}.extracurriculars-table .program-control-group input[type=checkbox]:focus{outline:none;box-shadow:0 0 0 3px #667eea33}.extracurriculars-table .program-control-group select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding:.5rem 2rem .5rem .75rem;font-size:.9rem;line-height:1.4;color:#2d3748;background-color:#fff;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='%23718096' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center;background-size:12px;border:1px solid #cbd5e0;border-radius:6px;cursor:pointer;transition:all .2s ease;min-width:140px}.extracurriculars-table .program-control-group select:hover{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.extracurriculars-table .program-control-group select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea33}.extracurriculars-table .program-control-group select option{padding:.5rem}.extracurriculars-page-content .page-controls{display:flex;gap:1rem}.modal-content.wide-modal{max-width:950px}.wide-modal .modal-body{background-color:var(--color-bg-light);padding:1rem}.program-management-list{display:flex;flex-direction:column;gap:1rem}.program-edit-item{background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1rem;display:flex;flex-direction:column;gap:.75rem}.program-edit-header{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;border-bottom:1px solid var(--color-border);padding-bottom:.75rem}.program-edit-header .program-title-input{flex:1 1 180px;font-size:1rem;font-weight:600;padding:8px 12px}.program-edit-header .add-schedule-form{display:flex;align-items:center;gap:.5rem;flex:2 1 400px;justify-content:flex-end}.add-schedule-form select,.add-schedule-form input[type=time],.add-schedule-form button{padding:.5rem .75rem;height:40px;box-sizing:border-box;font-size:.9rem;font-family:inherit;font-weight:400;border-width:1px;box-shadow:none;transition:all .2s ease}.add-schedule-form button:hover{transform:none}.program-edit-header .icon-btn.delete-btn{margin-left:auto}.details-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;padding-top:1rem;border-top:1px solid var(--color-border)}.schedule-list{display:flex;flex-wrap:wrap;gap:.5rem}.schedule-item{display:inline-flex;align-items:center;gap:.5rem;background-color:var(--color-bg-light);border:1px solid var(--color-border);border-radius:999px;padding:4px 6px 4px 10px;font-size:.85rem;font-weight:500;color:var(--color-text)}.schedule-item .icon-btn{width:20px;height:20px;font-size:.8rem;color:var(--color-text-light)}.schedule-item .icon-btn:hover{color:var(--color-danger);background-color:#ef44441a}.add-program-btn{width:100%;justify-content:center;padding:8px 16px;font-weight:500;background-color:var(--color-bg-surface);color:var(--color-primary);border:1px solid var(--color-primary)}.add-program-btn:hover{background-color:#eef6ff}.program-details-form label{display:block;font-size:.8rem;font-weight:500;color:var(--color-text-light);margin-bottom:.25rem}.program-details-form textarea,.program-details-form input{width:100%}.schedule-item .schedule-capacity{font-size:.75rem;color:var(--color-text-light);margin-left:.5rem}.add-schedule-form .capacity-input{width:90px;flex-grow:0}.focus-view-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:var(--color-bg-body);z-index:2000;display:flex;flex-direction:column;transform:translate(100%);transition:transform .3s ease-out}.focus-view-overlay.is-open{transform:translate(0)}.focus-view-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--color-border);background-color:var(--color-bg-surface);flex-shrink:0}.focus-view-header h2{margin:0;font-size:1.5rem;font-weight:600}.focus-view-actions{display:flex;gap:1rem}.focus-view-content{display:flex;flex-grow:1;overflow:hidden}.master-panel{width:300px;flex-shrink:0;border-right:1px solid var(--color-border);background-color:var(--color-bg-surface);display:flex;flex-direction:column;padding:1rem;box-sizing:border-box}.master-panel-list{flex-grow:1;overflow-y:auto;margin:-1rem -1rem 0}.master-list-item{display:block;width:100%;padding:1rem 1.5rem;text-align:left;background:none;border:none;border-bottom:1px solid var(--color-border);font-size:1rem;font-weight:500;cursor:pointer;color:var(--color-text);transition:background-color .15s ease}.master-list-item:hover{background-color:var(--color-bg-light)}.master-list-item.active{background-color:var(--color-primary-lightest);color:var(--color-primary);font-weight:600;position:relative}.master-list-item.active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background-color:var(--color-primary);border-radius:0 4px 4px 0}.master-panel .add-program-btn{margin-top:auto;padding-top:.75rem;padding-bottom:.75rem;width:100%;justify-content:center}.detail-panel{flex-grow:1;padding:1.5rem;overflow-y:auto;background-color:var(--color-bg-light)}.detail-panel .program-edit-item{background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.detail-panel .program-edit-item .program-input-group{display:flex;align-items:center;gap:.5rem;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:0;transition:all .2s ease-in-out}.detail-panel .program-edit-item .program-input-group:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.detail-panel .program-edit-item .program-title-input{flex-grow:1;border:none;background:transparent;font-size:1.1rem;font-weight:500;padding:.75rem 1rem;width:100%;outline:none}.detail-panel .program-edit-item .program-input-group .delete-btn{flex-shrink:0;margin-right:.5rem}.time-editor-container h4{font-size:.95rem;font-weight:600;color:var(--color-text-light);margin-bottom:.75rem;padding-top:.5rem;border-top:1px solid var(--color-border);margin-top:1.5rem}.schedule-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem;max-height:200px;overflow-y:auto;padding:10px;border:1px solid var(--color-border);border-radius:6px}.add-schedule-form{display:flex;align-items:center;gap:10px;flex-wrap:nowrap}.add-program-btn{align-self:flex-start;margin-top:1.5rem;width:100%}.icon-btn{background:none;border:none;cursor:pointer;font-size:1.2rem;padding:2px 4px;line-height:1;border-radius:4px;transition:background-color .2s}.icon-btn:hover{background-color:#e5e7eb}.program-input{flex-grow:1}.program-schedule-editor{margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0;border-top:1px solid var(--color-border)}.program-schedule-editor h4{font-size:.9rem;font-weight:600;color:#4a5568;margin-top:0;margin-bottom:.75rem}.schedule-item{display:flex;justify-content:space-between;align-items:center;background-color:#f1f5f9;padding:8px 12px;border-radius:6px;font-size:.9rem;gap:12px}.schedule-item-text{font-weight:500;color:#2d3748;flex:1}.schedule-item-actions{display:flex;gap:4px;align-items:center}.schedule-item-delete-btn{background:none!important;border:none!important;color:#e53e3e;cursor:pointer;font-weight:700;font-size:20px;padding:4px 8px;transition:opacity .2s ease;box-shadow:none!important;transform:none!important}.schedule-item-delete-btn:hover{opacity:.7;background:none!important;box-shadow:none!important;transform:none!important}.schedule-item-edit-btn{background:none!important;border:none!important;color:#3182ce;cursor:pointer;font-weight:700;font-size:18px;padding:4px 8px;transition:opacity .2s ease;box-shadow:none!important;transform:none!important}.schedule-item-edit-btn:hover{opacity:.7;background:none!important;box-shadow:none!important;transform:none!important}.add-schedule-form select,.add-schedule-form input[type=time]{padding:.5rem .75rem;height:40px;box-sizing:border-box;border:1px solid #d1d5db;border-radius:6px;font-size:.9rem;font-family:inherit;font-weight:400;transition:all .2s ease}.add-schedule-form select{min-width:110px;max-width:140px;flex-grow:1;flex-shrink:1}.add-schedule-form input[type=time]{white-space:nowrap;text-align:center;flex-shrink:0;flex-grow:0}.add-schedule-form button{padding:.5rem 1rem;height:40px;box-sizing:border-box;flex-shrink:0}.program-enrollment-manager{display:flex;gap:1.5rem;align-items:center}.program-control-group{display:flex;flex-direction:column;gap:.5rem;align-items:center;min-width:120px}.program-control-group .time-input-text{width:110px}.time-input-text:disabled{background-color:#f8fafc;cursor:not-allowed;opacity:.6}.no-times-msg{font-size:.8rem;color:#a0aec0;font-style:italic}.print-view{font-family:Arial,sans-serif;color:#000}.print-view h2{text-align:center;border-bottom:2px solid #000;padding-bottom:10px}.print-section{margin-top:1.5rem;page-break-inside:avoid}.print-section h3{background-color:#eee;padding:8px;margin:0}.print-subsection h4{margin:10px 0 5px 10px;font-style:italic}.print-subsection ul{list-style-type:none;padding-left:25px}.sortable-header{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.sortable-header:hover{background-color:var(--color-bg-hover, #e5e7eb)}.wl-sort-icon{margin-left:4px;font-size:.75rem;color:var(--color-primary, #2563eb)}.wl-sort-icon.inactive{color:var(--color-text-muted, #6b7280);opacity:.6}.wl-filter-row th{padding:4px 8px;background-color:var(--color-bg-light);border-bottom:2px solid var(--color-border)}.wl-filter-input{width:100%;padding:4px 8px;font-size:.8rem;border:1px solid var(--color-border, #d1d5db);border-radius:4px;background-color:var(--color-bg-surface, #fff);color:var(--color-text);box-sizing:border-box}.wl-filter-input:focus{outline:none;border-color:var(--color-primary, #2563eb);box-shadow:0 0 0 2px #2563eb26}.waitlist-actions{display:flex;gap:8px;align-items:center}.waitlist-actions button{padding:4px 12px;font-size:.875rem;border-radius:6px;border:1px solid #d1d5db;background-color:#fff;cursor:pointer;transition:all .2s ease-in-out;font-weight:500;color:#374151}.waitlist-actions button:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000000d}.waitlist-actions button:first-child{background-color:#2563eb;border-color:#2563eb;color:#fff}.waitlist-actions button:first-child:hover{background-color:#1d4ed8}.waitlist-actions button:last-child{color:#dc2626}.waitlist-actions button:last-child:hover{background-color:#fef2f2;border-color:#fca5a5;color:#b91c1c}.leads-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;border-bottom:2px solid var(--color-border);transition:background-color .3s ease}.leads-modal-header h2{margin:0;font-size:1.5rem;font-weight:600;color:var(--color-text)}.leads-modal-header .header-color-picker{width:40px;height:40px;border:2px solid var(--color-border);border-radius:8px;cursor:pointer;transition:all .2s ease}.leads-modal-header .header-color-picker:hover{transform:scale(1.05);box-shadow:0 2px 8px #00000026}.leads-modal-header.header-color-default{background:var(--color-bg-surface)}.leads-modal-header.header-color-red{background:linear-gradient(135deg,#fee2e2,#fecaca)}.leads-modal-header.header-color-orange{background:linear-gradient(135deg,#ffedd5,#fed7aa)}.leads-modal-header.header-color-yellow{background:linear-gradient(135deg,#fef3c7,#fde68a)}.leads-modal-header.header-color-green{background:linear-gradient(135deg,#d1fae5,#a7f3d0)}.leads-modal-header.header-color-cyan{background:linear-gradient(135deg,#cffafe,#a5f3fc)}.leads-modal-header.header-color-blue{background:linear-gradient(135deg,#dbeafe,#bfdbfe)}.leads-modal-header.header-color-purple{background:linear-gradient(135deg,#e9d5ff,#d8b4fe)}.leads-modal-header.header-color-pink{background:linear-gradient(135deg,#fce7f3,#fbcfe8)}.leads-modal-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;padding:20px 25px;background-color:var(--color-bg-light)}@media (min-width: 768px){.leads-modal-grid{grid-template-columns:1fr 1fr 1fr;gap:1.5rem 2rem}}.leads-modal-grid .form-column{display:flex;flex-direction:column;gap:15px}.leads-modal-grid h3{margin-top:0;padding-bottom:10px;border-bottom:2px solid var(--color-border);margin-bottom:15px;font-size:1.1rem;font-weight:600;color:var(--color-text)}.leads-modal-grid .form-group{display:grid;grid-template-columns:110px 1fr;gap:10px;align-items:center;margin-bottom:0}.leads-modal-grid .form-group label{margin-bottom:0;text-align:right;font-weight:500;font-size:.9rem;color:var(--color-text)}.leads-modal-grid .form-group input,.leads-modal-grid .form-column select{width:100%;padding:8px 12px;border:2px solid var(--color-border);border-radius:var(--border-radius-md, 8px);background:var(--color-bg-surface);color:var(--color-text);font-size:.9rem;transition:border-color .2s ease,box-shadow .2s ease}.leads-modal-grid .form-group input:focus,.leads-modal-grid .form-column select:focus{outline:none;border-color:var(--color-text-secondary);box-shadow:0 0 0 3px #0000000d}.notes-log-section{display:flex;flex-direction:column;gap:.5rem}.notes-log-header{display:flex;justify-content:space-between;align-items:center}.notes-log-header h4{margin:0;font-size:1rem;font-weight:600}.add-note-btn{padding:2px 8px;font-size:.75rem;font-weight:500}.notes-log-container{border:1px solid var(--color-border);border-radius:var(--radius-md);height:160px;overflow-y:auto;padding:.75rem;background-color:var(--color-bg-light);display:flex;flex-direction:column;gap:.75rem}.note-entry{background-color:var(--color-bg-surface);border-radius:var(--radius-sm);padding:.5rem .75rem;cursor:pointer;border-left:3px solid var(--color-secondary)}.note-entry p{margin:0 0 .25rem;font-size:.9rem;white-space:pre-wrap;color:var(--color-text)}.note-entry p.truncated{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.note-meta{display:flex;justify-content:flex-start;gap:.5rem;font-size:.7rem;color:var(--color-text-light);font-style:italic}.add-note-form{cursor:default;border-left-color:var(--color-primary)}.add-note-form textarea{width:100%;min-height:50px;margin-bottom:.5rem;font-size:.9rem}.add-note-actions{display:flex;justify-content:flex-end;gap:.5rem}.add-note-actions button.small{padding:4px 10px;font-size:.8rem}.no-notes-placeholder{font-style:italic;font-size:.9rem;color:var(--color-text-light);padding:1rem;text-align:center}.leads-modal-grid .notes-section{grid-column:3 / 4;height:100%;display:flex;flex-direction:column;padding:15px;background-color:var(--color-bg-surface);border-radius:8px;border:1px solid var(--color-border)}.leads-modal-grid .notes-section h3{padding-bottom:.5rem;margin-bottom:.5rem;border-bottom:1px solid var(--color-border)}.leads-modal-grid .notes-section textarea{flex-grow:1;min-height:120px;resize:vertical;border:none;box-shadow:none;padding:8px 12px}.tour-section-divider{margin:16px 0;border-top:2px solid var(--color-border)}.leads-modal-grid .form-column h4{margin:0;font-size:.95rem;font-weight:600;color:var(--color-text);border-bottom:none}.leads-table tr.clickable-row:hover{background-color:var(--color-bg-hover);transition:background-color .15s ease}.leads-table tr.clickable-row{user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.stylish-modal .info-tab-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.stylish-modal .info-card{background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:8px;padding:1rem;box-shadow:0 1px 3px #0000000d}.stylish-modal .info-card h3{margin-top:0;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-border);font-size:1rem;font-weight:600;color:var(--color-text)}.stylish-modal:not(.staff-modal) .info-card-item{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.stylish-modal:not(.staff-modal) .info-card-item:last-child{margin-bottom:0}.stylish-modal:not(.staff-modal) .info-card-item label{font-weight:500;color:var(--color-text-light)}.stylish-modal:not(.staff-modal) .info-card-item input[type=text],.stylish-modal:not(.staff-modal) .info-card-item input[type=date],.stylish-modal:not(.staff-modal) .info-card-item input[type=email],.stylish-modal:not(.staff-modal) .info-card-item input[type=tel],.stylish-modal:not(.staff-modal) .info-card-item select{width:100%;padding:8px 12px;border:1px solid var(--color-border);border-radius:6px;font-size:.9rem;box-sizing:border-box;background-color:var(--color-bg-surface);color:var(--color-text)}.stylish-modal:not(.staff-modal) .info-card-item input[type=color]{width:100%;height:38px;padding:4px;border:1px solid var(--color-border);border-radius:6px;cursor:pointer}.stylish-modal textarea{width:100%;box-sizing:border-box;padding:8px 12px;border:1px solid #cbd5e0;border-radius:6px;font-size:.9rem;font-family:inherit;resize:vertical}.filter-controls-container{position:relative;display:inline-block}.filter-popover{position:absolute;top:100%;right:0;margin-top:8px;width:280px;background-color:var(--color-bg-surface);border-radius:8px}.meal-calendar-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:10px 15px;flex-wrap:wrap}.month-navigation{display:flex;align-items:center;gap:.5rem}.month-navigation h3{margin:0;padding:0 .5rem;font-size:1.25rem;color:var(--color-text);white-space:nowrap}.view-controls{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}.view-controls>button{background-color:var(--color-bg-surface);color:var(--color-text-light);border:1px solid var(--color-border);font-weight:500;padding:6px 14px;font-size:.875rem;box-shadow:none}.view-controls>button:hover{background-color:var(--color-bg-hover);color:var(--color-text);border-color:var(--color-border-dark)}.button-group{display:inline-flex;overflow:hidden;border-radius:6px;border:1px solid var(--color-border)}.button-group button{border:none;border-left:1px solid var(--color-border-light);border-radius:0;padding:6px 14px;font-size:.875rem;background-color:var(--color-bg-surface);color:var(--color-text-light);font-weight:500;box-shadow:none}.button-group button:first-child{border-left:none}.button-group button:hover{background-color:var(--color-bg-hover);color:var(--color-text)}.filter-popover{border:1px solid var(--color-border);box-shadow:0 4px 12px #0000001a;z-index:var(--z-dropdown);padding:1rem;color:var(--color-text)}.filter-popover h3{margin-top:0;margin-bottom:1rem;font-size:1rem;font-weight:600;border-bottom:1px solid var(--color-border);padding-bottom:.75rem}.filter-option{margin-bottom:.75rem}.filter-option:last-child{margin-bottom:0}.filter-option label{display:flex;align-items:center;cursor:pointer;font-size:.9rem}.filter-option input[type=checkbox]{margin-right:.75rem;width:16px;height:16px;accent-color:var(--color-primary);padding:0;border:none;box-shadow:none;background:none}.controls-bar .control-group{padding:8px 15px;background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:var(--shadow-sm);flex-wrap:wrap;flex-grow:1;min-width:0;gap:10px}.controls-bar .control-group select{max-width:120px}.controls-bar .control-group input[type=month]{max-width:130px}.weekly-grid-room-header{grid-column:1 / -1;background-color:#e2e8f0;font-weight:700;color:#1a253c;text-align:left;padding:8px 12px;border-bottom:2px solid #cbd5e0}.controls-bar .control-group select{background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:6px;padding:.5rem 2rem .5rem .75rem;font-size:.9rem;color:var(--color-text);cursor:pointer;transition:all .2s ease;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;appearance:none;-webkit-appearance:none;-moz-appearance:none}.controls-bar .control-group select:hover{border-color:var(--color-primary);background-color:var(--color-bg-hover)}.controls-bar .control-group select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #3b82f61a}.controls-bar .control-group select[value=month],.controls-bar .control-group select[value=week]{font-weight:500;background-color:#eff6ff;border-color:var(--color-primary)}.roster-table tbody tr{border-radius:0}.roster-table tr.selected-row td,.roster-table tr.selected-row:hover td{border-radius:0!important}.timeline-container{border-radius:0!important;box-shadow:none!important;border:1px solid var(--color-border)}.corner-cell,.month-header{border-radius:0!important}.date-range-popover{position:absolute;top:100%;right:0;margin-top:8px;width:260px;background-color:var(--color-bg-surface);border-radius:8px;border:1px solid var(--color-border);box-shadow:var(--shadow-md);z-index:var(--z-dropdown);padding:1rem}.date-range-display{font-weight:500;background-color:var(--color-bg-surface);color:var(--color-text);padding:10px 14px;border:1px solid var(--color-border);border-radius:6px;box-shadow:none;transition:all .2s}.date-range-display:hover{background-color:var(--color-bg-light)}@media (max-width: 860px){.page-header .user-info{display:none}.controls-bar{flex-direction:column;align-items:stretch;gap:15px}.controls-bar .control-group{width:100%}}.roster-controls{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.roster-controls .control-group{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.roster-controls .control-group:last-child{justify-content:flex-end}.admin-page-container{display:flex;height:calc(100vh - 120px);width:100%;gap:1.5rem;padding:1rem}.user-list-panel{width:300px;flex-shrink:0;display:flex;flex-direction:column;background-color:var(--color-bg-light);border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.user-list-header{padding:1rem 1.25rem;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center;background-color:var(--color-bg-surface)}.user-list-header h3{margin:0;font-size:.95rem;font-weight:600;color:var(--color-text)}.add-user-btn{padding:.4rem .875rem;background-color:var(--color-primary);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.8rem;font-weight:500;white-space:nowrap}.add-user-btn:hover{background-color:var(--color-primary-dark)}.user-search-input{margin:.75rem;padding:.6rem .75rem;border-radius:6px;border:1px solid var(--color-border);background-color:var(--color-bg-surface);color:var(--color-text);width:calc(100% - 1.5rem);box-sizing:border-box;font-size:.875rem}.user-list{overflow-y:auto;padding:0 .75rem .75rem;flex-grow:1}.user-list-item{display:flex;flex-wrap:wrap;align-items:center;width:100%;padding:.65rem .75rem;margin-bottom:.4rem;background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:6px;text-align:left;cursor:pointer;transition:all .15s;gap:0 .5rem}.user-list-item:hover{background-color:var(--color-bg-hover);border-color:var(--color-primary)}.user-list-item.active{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.user-list-item.active .user-item-name,.user-list-item.active .user-item-email{color:#fff;opacity:1}.user-item-name{display:block;font-weight:600;font-size:.875rem;color:var(--color-text);flex:1 1 100%}.user-item-email{display:block;font-size:.78rem;margin-top:.15rem;opacity:.65;color:var(--color-text-light);flex:1 1 auto}html[data-theme=light] .user-item-name,body.light-mode .user-item-name,[data-theme=light] .user-item-name{color:#1e293b!important}html[data-theme=light] .user-item-email,body.light-mode .user-item-email,[data-theme=light] .user-item-email{color:#475569!important}.admin-page-container .detail-panel{flex-grow:1;overflow-y:auto;background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:8px;padding:2rem}.detail-content{max-width:860px}.admin-page-container .detail-section{margin-bottom:2.5rem}.admin-page-container .detail-section h2{font-size:1.2rem;font-weight:600;margin:0 0 1.5rem;padding-bottom:.75rem;border-bottom:2px solid var(--color-border);color:var(--color-text)}.admin-page-container .detail-section h3{font-size:.95rem;font-weight:600;margin:0 0 1rem;padding-bottom:.5rem;border-bottom:1px solid var(--color-border);color:var(--color-text);text-transform:uppercase;letter-spacing:.04em}.admin-page-container .form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem;margin-bottom:0}.admin-page-container .form-group{display:flex;flex-direction:column;gap:.35rem}.admin-page-container .form-group label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted, var(--color-text-light));margin-bottom:0}.admin-page-container .form-group input,.admin-page-container .form-group select{padding:.6rem .75rem;height:2.5rem;border:1px solid var(--color-border);border-radius:6px;background-color:var(--color-bg-light);color:var(--color-text);font-size:.9rem;box-sizing:border-box;width:100%}.admin-page-container .password-row{max-width:calc(50% - .625rem);margin-top:1.25rem}.admin-page-container .child-limit-row{max-width:200px;margin-bottom:1.25rem}.admin-page-container .child-limit-row input{-moz-appearance:textfield}.admin-page-container .child-limit-row input::-webkit-inner-spin-button,.admin-page-container .child-limit-row input::-webkit-outer-spin-button{-webkit-appearance:none}.admin-page-container .feature-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem;margin-top:0}.admin-page-container .feature-grid .checkbox-item{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:.75rem 1rem;min-height:52px;background-color:var(--color-bg-light);border:1px solid var(--color-border);border-radius:8px;box-shadow:none;margin-bottom:0;gap:.5rem}.admin-page-container .feature-grid .checkbox-item label{font-size:.85rem;font-weight:500;color:var(--color-text);cursor:pointer;margin-bottom:0}.admin-page-container .feature-grid .checkbox-item input[type=checkbox]{width:1rem;height:1rem;flex-shrink:0;cursor:pointer;accent-color:var(--color-primary)}.admin-page-container .form-actions.main-actions{display:flex;align-items:center;gap:.75rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--color-border)}.admin-page-container .save-all-btn{margin-left:auto;padding:.6rem 1.5rem;background-color:var(--color-primary);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:600}.admin-page-container .save-all-btn:hover{background-color:var(--color-primary-dark)}.invitation-notice{margin-top:1.25rem;padding:1rem 1.25rem;background-color:var(--color-bg-light);border:1px solid var(--color-border);border-left:3px solid var(--color-primary);border-radius:6px;font-size:.875rem;line-height:1.6;color:var(--color-text-light)}.invitation-notice p{margin:0}.role-badge{display:inline-block;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:2px 7px;border-radius:99px;white-space:nowrap;flex-shrink:0}.role-badge--superadmin{background-color:var(--color-danger, #ef4444);color:#fff}.role-badge--owner{background-color:var(--color-primary);color:#fff}.role-badge--admin{background-color:var(--color-success, #22c55e);color:#fff}.role-badge--teacher{background-color:var(--color-bg-hover);color:var(--color-text-light);border:1px solid var(--color-border)}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-dot--active{background-color:var(--color-success, #22c55e)}.status-dot--invited{background-color:var(--color-warning, #f59e0b)}.status-dot--inactive{background-color:var(--color-text-muted, #9ca3af)}.count-chip{display:inline-block;font-size:.72rem;font-weight:600;background-color:var(--color-bg-hover);color:var(--color-text-light);border-radius:99px;padding:1px 7px;margin-left:.4rem}.feature-count-chip{font-size:.7rem;color:var(--color-text-muted)}.user-item-top{display:flex;align-items:center;justify-content:space-between;width:100%;gap:.4rem}.user-item-meta{display:flex;align-items:center;gap:.5rem;margin-top:.2rem;width:100%}.user-list-search{padding:.5rem .75rem;border-bottom:1px solid var(--color-border);background-color:var(--color-bg-surface)}.section-header-actions{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--color-border);flex-wrap:wrap}.section-header-actions h3{margin:0;padding:0;border:none;flex:1}.section-title-row{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem;flex-wrap:wrap}.section-title-row h2{margin:0;padding:0;border:none;flex:1}.grant-revoke-actions{display:flex;gap:.5rem}.small-btn{padding:.3rem .75rem!important;font-size:.8rem!important}.admin-page-container .feature-grid .checkbox-item--on{background-color:var(--color-primary-light, var(--color-bg-hover));border-color:var(--color-primary)}.member-list{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem}.member-card{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background-color:var(--color-bg-light);border:1px solid var(--color-border);border-radius:8px;cursor:pointer;width:100%;text-align:left;transition:all .15s}.member-card:hover{border-color:var(--color-primary);background-color:var(--color-bg-hover)}.member-card-left{display:flex;align-items:center;gap:.65rem}.member-card-right{display:flex;align-items:center;gap:.5rem}.member-card-info{display:flex;flex-direction:column;gap:.15rem}.member-name{font-weight:600;font-size:.875rem;color:var(--color-text)}.member-email{font-size:.78rem;color:var(--color-text-light);opacity:.8}.member-edit-hint{font-size:.75rem;color:var(--color-primary);opacity:.6}.invited-label{font-size:.7rem;color:var(--color-warning, #f59e0b);font-weight:600}.invite-member-form{background-color:var(--color-bg-light);border:1px solid var(--color-primary);border-radius:8px;padding:1rem 1.25rem .75rem;margin-bottom:1rem;border-left:3px solid var(--color-primary)}.form-grid--compact{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))!important;gap:.75rem!important;margin-bottom:.75rem!important}.invite-form-actions{display:flex;justify-content:flex-end;margin-top:.5rem}.empty-state-msg{color:var(--color-text-muted);font-style:italic;font-size:.875rem;padding:.5rem 0;margin:0}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-top:1rem}.feature-item{display:flex;align-items:center;gap:.5rem;padding:.5rem;background-color:var(--color-bg-light);border-radius:4px}.feature-item input[type=checkbox]{margin:0}.feature-item label{margin:0;cursor:pointer}.action-buttons{display:flex;gap:1rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--color-border)}.save-btn,.delete-btn{padding:.75rem 1.5rem;border:none;border-radius:4px;cursor:pointer;font-weight:500}.save-btn{background-color:var(--color-success);color:#fff}.save-btn:hover{background-color:var(--color-success-dark)}.delete-btn{background-color:var(--color-danger);color:#fff}.delete-btn:hover{background-color:var(--color-danger-dark)}.steps-section{margin-top:2rem}.steps-section h4{font-size:1rem;font-weight:600;color:var(--color-text);margin-bottom:1rem;padding-top:1rem;border-top:1px solid var(--color-border)}.steps-list{display:flex;flex-direction:column;gap:1rem}.step-item-editor{display:flex;align-items:flex-start;gap:1rem;padding:1rem;background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:all .2s ease-in-out}.step-item-editor:hover{border-color:var(--color-border-hover);box-shadow:0 2px 8px #0000000d}.step-number{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;background-color:var(--color-primary);color:#fff;border-radius:50%;font-size:.85rem;font-weight:600;flex-shrink:0;margin-top:.25rem}.step-inputs{flex:1;display:flex;flex-direction:column;gap:.5rem}.step-inputs input{width:100%;padding:.75rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:.95rem;font-weight:500;background-color:var(--color-bg-body);transition:border-color .2s ease-in-out}.step-inputs input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.step-inputs textarea{width:100%;padding:.75rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:.9rem;color:var(--color-text-light);background-color:var(--color-bg-body);resize:vertical;min-height:2.5rem;transition:border-color .2s ease-in-out;font-family:inherit}.step-inputs textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.step-inputs textarea::placeholder{color:var(--color-text-muted);font-style:italic}.step-item-editor .icon-btn{width:2rem;height:2rem;border-radius:50%;border:none;background-color:var(--color-danger);color:#fff;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:.25rem;transition:all .2s ease-in-out}.step-item-editor .icon-btn:hover{background-color:var(--color-danger-dark);transform:scale(1.05)}.steps-section .button--secondary{margin-top:1rem;padding:.75rem 1.5rem;font-size:.9rem;font-weight:500}.detail-panel .program-details-form{margin-bottom:1.5rem}.detail-panel .program-details-form:last-of-type{margin-bottom:0}.detail-panel .program-details-form label{font-size:.85rem;font-weight:600;color:var(--color-text);margin-bottom:.5rem}.detail-panel .program-details-form input,.detail-panel .program-details-form textarea{padding:.875rem;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.95rem;background-color:var(--color-bg-body);transition:all .2s ease-in-out}.detail-panel .program-details-form input:focus,.detail-panel .program-details-form textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.detail-panel .program-details-form textarea{resize:vertical;min-height:4rem;font-family:inherit;line-height:1.5}@media (max-width: 768px){.step-item-editor{flex-direction:column;align-items:stretch;gap:.75rem;padding:1rem .75rem}.step-number{align-self:flex-start;width:1.75rem;height:1.75rem;font-size:.8rem;margin-top:0}.step-inputs{gap:.75rem}.step-item-editor .icon-btn{align-self:flex-end;margin-top:0}.steps-section .button--secondary{padding:.875rem 1rem;width:100%}}.step-item-editor:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.steps-list:empty:after{content:"No steps added yet. Click 'Add Step' to get started.";display:block;padding:2rem;text-align:center;color:var(--color-text-muted);font-style:italic;background-color:var(--color-bg-muted);border:1px dashed var(--color-border);border-radius:var(--radius-md)}.file-manager-section{margin-top:2rem}.file-manager-section h4{font-size:1rem;font-weight:600;color:var(--color-text);margin-bottom:1rem;padding-top:1rem;border-top:1px solid var(--color-border)}.file-list{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.file-item{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);transition:all .2s ease-in-out}.file-item:hover{border-color:var(--color-border-hover);box-shadow:0 1px 4px #0000000d}.file-name{font-size:.9rem;color:var(--color-text);font-weight:500;flex:1;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.file-item .icon-btn{width:1.75rem;height:1.75rem;border-radius:50%;border:none;background-color:var(--color-danger);color:#fff;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s ease-in-out}.file-item .icon-btn:hover{background-color:var(--color-danger-dark);transform:scale(1.05)}.no-files-msg{text-align:center;color:var(--color-text-muted);font-style:italic;padding:1.5rem;background-color:var(--color-bg-muted);border:1px dashed var(--color-border);border-radius:var(--radius-md);margin:0}.file-manager-section .button--secondary{padding:.75rem 1.5rem;font-size:.9rem;font-weight:500}.onboarding-documents h3{color:var(--color-text);font-weight:600;margin-bottom:1rem;border-bottom:1px solid var(--color-border);padding-bottom:.5rem}.onboarding-documents .file-list{display:flex;flex-direction:column;gap:.5rem}.file-item-link{display:inline-block;padding:.75rem 1rem;background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-primary);text-decoration:none;font-weight:500;transition:all .2s ease-in-out}.file-item-link:hover{background-color:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary-dark);transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.file-item-link:active{transform:translateY(0)}@media (max-width: 768px){.file-item-link{padding:1rem;font-size:.95rem}}.detail-row{background-color:var(--color-bg-muted)}.detail-row .detail-content{padding:1.5rem;border-left:3px solid var(--color-primary)}.detail-content h4{margin:0 0 1rem;color:var(--color-text);font-size:1.1rem;font-weight:600}.detail-content ul{list-style:none;padding:0;margin:0}.detail-content li{display:flex;align-items:center;gap:.75rem;padding:.75rem 0;border-bottom:1px solid var(--color-border)}.detail-content li:last-child{border-bottom:none}.status-icon{width:16px;height:16px;border-radius:50%;flex-shrink:0}.status-icon.status-pending{background-color:var(--color-text-tertiary);border:2px solid var(--color-border)}.status-icon.status-progress{background-color:var(--color-warning);animation:pulse 2s infinite}.status-icon.status-completed{background-color:var(--color-success);position:relative}.status-icon.status-completed:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:10px;font-weight:700}.detail-content small{color:var(--color-text-secondary);font-size:.85rem;margin-left:auto}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.detail-section{margin-bottom:2rem}.detail-section:last-child{margin-bottom:0}.uploaded-files-grid{display:grid;gap:.75rem}.file-item{display:flex;flex-direction:column;gap:.25rem;padding:.75rem;background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.file-link{color:var(--color-primary);text-decoration:none;font-weight:500}.file-link:hover{text-decoration:underline}.file-item small{color:var(--color-text-secondary);font-size:.8rem}.file-upload-block{margin-top:1rem}.file-upload-trigger{width:100%;padding:1.5rem;font-size:1rem;font-weight:500;color:var(--color-text-light);background-color:var(--color-bg-light);border:2px dashed var(--color-border);border-radius:var(--radius-md);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.75rem;transition:all .2s ease}.file-upload-trigger:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary);background-color:var(--color-bg-hover)}.file-upload-trigger:disabled{cursor:not-allowed;opacity:.7}.spinner-small{width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .75s linear infinite}.uploaded-files-list{margin-top:.75rem;font-size:var(--text-sm)}.uploaded-file-item{padding:.5rem 0;color:var(--color-success);font-weight:500}.document-repository{background:linear-gradient(135deg,#f8fafc,#e0f2fe);border:2px solid var(--color-primary)}.document-section{margin-bottom:2rem}.document-section:last-child{margin-bottom:0}.document-section h4{margin:0 0 1rem;font-size:var(--text-lg);color:var(--color-text);font-weight:600;padding-bottom:.5rem;border-bottom:2px solid var(--color-primary)}.document-list{display:flex;flex-direction:column;gap:.75rem}.document-item{display:flex;align-items:center;gap:1rem;padding:1rem;background-color:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);text-decoration:none;color:var(--color-text);transition:all .2s ease}.document-item:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.document-item.uploaded{background-color:#f0fdf4;border-color:var(--color-success)}.document-icon{font-size:1.5rem;flex-shrink:0}.document-name{flex:1;font-weight:500;color:var(--color-text)}.document-meta{font-size:var(--text-sm);color:var(--color-text-light);padding:.25rem .75rem;background-color:var(--color-bg-light);border-radius:var(--radius-sm)}.document-action{font-size:var(--text-sm);color:var(--color-primary);font-weight:600;text-decoration:none;padding:.5rem 1rem;border:1px solid var(--color-primary);border-radius:var(--radius-md);transition:all .2s ease;flex-shrink:0}.document-action:hover{background-color:var(--color-primary);color:#fff}.uploaded-docs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-top:.5rem}.file-group{background-color:var(--color-bg-light);border-radius:var(--radius-md);padding:.75rem}.file-group strong{font-size:.9rem;display:block;margin-bottom:.5rem}.admin-file-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.admin-file-list li{display:flex;justify-content:space-between;align-items:center;background:var(--color-bg-surface);padding:.5rem .75rem;border-radius:var(--radius-sm)}.admin-file-list a{font-weight:500;text-decoration:none;color:var(--color-primary)}.file-actions button{font-size:.75rem;padding:2px 8px}.onboarding-page{background-color:var(--color-bg-light);min-height:100vh}.onboarding-page .onboarding-header{background:linear-gradient(135deg,var(--color-primary) 0%,#0c4a6e 100%);color:#fff;padding:3rem 2rem;border-bottom:none;text-align:center;box-shadow:0 4px 6px #0000001a}.onboarding-page .onboarding-header h1{margin:0 0 .5rem;font-size:var(--text-3xl);font-weight:700;border-bottom:none;color:#fff}.onboarding-page .onboarding-header p{margin:0 0 1.5rem;color:#ffffffe6;font-size:var(--text-base);line-height:1.6}.onboarding-page .onboarding-header .child-name-subtitle{font-size:1.125rem;margin:.5rem 0 1.5rem}.onboarding-page .onboarding-header .child-name-subtitle strong{font-weight:700;color:#fff}.onboarding-page .onboarding-progress-bar{width:100%;max-width:400px;height:10px;background-color:#fff3;border-radius:var(--radius-full);overflow:hidden;margin:0 auto .5rem;box-shadow:inset 0 1px 3px #0003}.onboarding-page .progress-fill{height:100%;background-color:#22c55e;border-radius:var(--radius-full);transition:width .5s ease-in-out;box-shadow:0 0 8px #22c55e80}.onboarding-page .progress-text{font-size:var(--text-sm);color:#fffffff2;font-weight:500}.onboarding-layout{display:flex;gap:2rem;max-width:1200px;margin:2rem auto;padding:0 2rem}.onboarding-toc{width:280px;flex-shrink:0}.onboarding-toc h3{font-size:var(--text-lg);margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-border)}.onboarding-toc ul{list-style:none;padding:0;margin:0}.onboarding-toc li{padding:.75rem 1rem;border-radius:var(--radius-md);cursor:pointer;transition:background-color .2s ease;display:flex;align-items:center;gap:.75rem;font-weight:var(--font-medium)}.onboarding-toc li:hover{background-color:var(--color-bg-hover)}.onboarding-toc .status-icon{width:10px;height:10px;border-radius:50%;flex-shrink:0}.onboarding-toc li.status-pending .status-icon{background-color:var(--gray-300)}.onboarding-toc li.status-progress .status-icon{background-color:var(--color-warning)}.onboarding-toc li.status-completed .status-icon{background-color:var(--color-success)}.onboarding-toc li.status-completed{color:var(--color-text-light);text-decoration:line-through}.onboarding-content{flex-grow:1}.onboarding-step{background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:1.5rem;transition:box-shadow .2s ease;cursor:pointer}.onboarding-step:hover{box-shadow:var(--shadow-md)}.step-header{padding:1.5rem;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center}.step-header h3{margin:0;font-size:var(--text-xl)}.step-body{padding:1.5rem;line-height:var(--leading-relaxed)}.step-footer{padding:1rem 1.5rem;border-top:1px solid var(--color-border);background-color:var(--color-bg-light);text-align:right}.onboarding-step.completed{background-color:var(--color-bg-light);cursor:default}.onboarding-step.completed .step-header h3{text-decoration:line-through;color:var(--color-text-light)}.completed-badge{background-color:var(--color-success);color:#fff;padding:4px 10px;border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--font-bold)}.document-block{display:block;background-color:var(--color-bg-light);border:1px solid var(--color-border);padding:1rem;border-radius:var(--radius-md);margin:1rem 0;text-decoration:none;color:var(--color-primary);font-weight:var(--font-medium);transition:all .2s ease}.document-block:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.document-block span{margin-left:.5rem}.file-upload-instruction{padding:1rem;background-color:var(--color-bg-muted);border:2px dashed var(--color-primary);border-radius:var(--radius-md);color:var(--color-primary);font-weight:500;text-align:center;margin:1rem 0}.file-upload-instruction span{margin-left:.5rem}.file-upload-section{margin-top:1.5rem;padding:1.5rem;background-color:var(--color-bg-light);border:2px dashed var(--color-border);border-radius:var(--radius-md)}.file-upload-section h4{margin:0 0 1rem;font-size:var(--text-lg);color:var(--color-text)}.file-upload-area{position:relative}.file-upload-area input[type=file]{width:100%;padding:.75rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg-surface);cursor:pointer}.file-upload-area input[type=file]:hover{border-color:var(--color-primary)}.file-upload-area input[type=file]:disabled{opacity:.5;cursor:not-allowed}.upload-spinner{display:flex;align-items:center;gap:.5rem;margin-top:.5rem;color:var(--color-text-light);font-size:var(--text-sm)}.upload-spinner:before{content:"⏳";animation:spin 1s linear infinite}.uploaded-files{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--color-border)}.uploaded-files h5{margin:0 0 .5rem;font-size:var(--text-base);color:var(--color-text)}.uploaded-files ul{list-style:none;padding:0;margin:0}.uploaded-files li{padding:.5rem 0;color:var(--color-success);font-size:var(--text-sm)}.desktop-toc{display:block}.mobile-toc{display:none}.steps-list-admin{border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-bg-light);padding:.5rem}.step-item-admin{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background-color:var(--color-bg-surface);border-radius:var(--radius-sm);margin-bottom:.5rem;cursor:pointer;transition:all .2s ease;border:1px solid var(--color-border)}.step-item-admin:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.step-item-title{font-weight:var(--font-medium)}.step-content-editor{border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.5rem;background-color:var(--color-bg-light)}.content-blocks-container{display:flex;flex-direction:column;gap:.5rem}.content-block-editor{position:relative;padding:.75rem;background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm)}.content-block-editor .remove-block-btn{position:absolute;top:4px;right:4px;background:none;border:none;color:var(--color-text-muted);font-size:1.2rem;cursor:pointer}.content-block-editor .remove-block-btn:hover{color:var(--color-danger)}.content-block-editor textarea,.content-block-editor input{width:100%;border:none;padding:0;font-size:.9rem;resize:vertical}.content-block-editor textarea:focus,.content-block-editor input:focus{outline:none}.block-type-label{font-size:var(--text-xs);color:var(--color-text-muted);font-style:italic;margin-top:.5rem}.add-block-toolbar{margin-top:.75rem;display:flex;gap:.5rem}.add-block-toolbar button{font-size:var(--text-sm);padding:4px 10px}@media (max-width: 768px){.onboarding-layout{flex-direction:column;padding:0 1rem;margin-top:1rem}.desktop-toc{display:none}.mobile-toc{display:block;margin-bottom:1rem}.mobile-toc select{width:100%;padding:.75rem;font-size:1rem}.onboarding-header{padding:1.5rem 1rem}.step-header h3{font-size:var(--text-lg)}}.page-content .card .card-header{padding-left:1.5rem;padding-right:1.5rem}.page-header-simple .button.button--secondary:hover,.page-header-simple .button.button--secondary:focus{background-color:var(--color-bg-hover);border-color:var(--color-border-dark)}.compact-form{padding:1.5rem 2rem;width:100%;max-height:calc(80vh - 180px);overflow-y:auto;box-sizing:border-box}.compact-form .form-row{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem;background:none;border:none;padding:0}.compact-form .form-row h4{font-size:1.1rem;font-weight:600;color:var(--color-text);padding-bottom:.5rem;border-bottom:2px solid var(--color-border);margin-bottom:1rem}.compact-form .field-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.compact-form .field-group{display:flex;flex-direction:column;gap:.25rem}.compact-form .field-group label{font-size:.9rem;font-weight:600;color:var(--color-text);margin-bottom:.25rem}.compact-form input,.compact-form select{padding:.65rem .75rem;border:1px solid var(--color-border);border-radius:6px;font-size:.9rem;background:var(--color-bg-surface);color:var(--color-text);transition:border-color .2s}.compact-form input:focus,.compact-form select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #4a90e21a}.compact-info{padding:1.5rem 2rem;width:100%;overflow-y:auto;box-sizing:border-box;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.compact-info .info-card{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:8px;padding:1.25rem;box-shadow:var(--shadow-sm);height:100%}.compact-info .info-card h4{margin:0 0 .85rem;font-size:1rem;font-weight:600;color:var(--color-text);border-bottom:1px solid var(--color-border);padding-bottom:.65rem}.compact-info .info-card-item{display:flex;justify-content:space-between;align-items:center;padding:.65rem 0;border-bottom:none;gap:15px}.staff-modal.stylish-modal .staff-info-display .info-row{display:flex!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important}.compact-info .info-card-label{color:var(--color-text-light);font-weight:500;flex-shrink:0}.compact-info .info-card-value{font-size:.9rem;font-weight:600;color:var(--color-text);text-align:right}.compact-info .info-card-item-vertical{padding:.65rem 0;border-bottom:none}.compact-info .info-card-details{padding:.5rem;background-color:var(--color-bg-light)}.compact-info .info-card h4+.info-card-item{padding-top:0}.compact-info .info-card .info-card-item:not(:last-child){border-bottom:1px solid var(--color-border-light)}.compact-info .info-card .info-card-item:last-child{border-bottom:none}.file-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid var(--color-border)}.file-list{display:flex;flex-direction:column;gap:8px}.file-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:6px}.file-item a{color:var(--color-primary);text-decoration:none;font-size:14px}.file-item a:hover{text-decoration:underline}.delete-btn{background:transparent;border:none;color:#dc3545;font-size:16px;font-weight:700;cursor:pointer;padding:2px 6px;border-radius:3px}.delete-btn:hover{background:#dc3545;color:#fff}.onboarding-summary{display:flex;flex-direction:column;gap:12px}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--color-border-light)}.summary-row:last-child{border-bottom:none}.summary-row span:first-child{font-weight:500;color:var(--color-text-light);font-size:14px}.summary-row span:last-child{font-size:14px}.copy-btn{background:var(--color-primary);color:#fff;border:none;padding:4px 12px;border-radius:4px;font-size:12px;cursor:pointer}.copy-btn:hover{background:var(--color-primary-dark)}.assign-template{padding:15px;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:6px}.template-selector{display:flex;gap:10px;align-items:center}.template-selector select{flex:1;padding:6px 10px;border:1px solid var(--color-border);border-radius:4px}.template-selector button{background:var(--color-primary);color:#fff;border:none;padding:6px 15px;border-radius:4px;cursor:pointer;font-size:14px}.template-selector button:disabled{background:var(--color-text-light);cursor:not-allowed}.template-selector button:hover:not(:disabled){background:var(--color-primary-dark)}.steps-list{display:flex;flex-direction:column;gap:6px}.step-item{display:flex;align-items:center;gap:10px;padding:6px 0}.step-status{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}.step-status.completed{background:var(--color-success);color:#fff}.step-status.pending{background:var(--color-border);color:var(--color-text-light)}.step-title{font-size:14px}.onboarding-tab-content{padding:20px 25px;width:100%;max-height:calc(80vh - 180px);overflow-y:auto;box-sizing:border-box}.onboarding-overview{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:8px;padding:15px;max-width:100%;box-sizing:border-box}.onboarding-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid var(--color-border)}.onboarding-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--color-text)}.onboarding-actions{display:flex;gap:10px}.copy-link-btn{background:var(--color-primary);color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:14px;cursor:pointer;transition:background-color .2s}.copy-link-btn:hover{background:var(--color-primary-dark)}.onboarding-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:15px;margin-bottom:20px}.stat-item{display:flex;flex-direction:column;gap:5px}.stat-item label{font-size:.875rem;font-weight:500;color:var(--color-text-light);text-transform:uppercase;letter-spacing:.5px}.steps-progress h4{margin:0 0 12px;font-size:1rem;font-weight:600;color:var(--color-text)}.steps-list-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.step-card{display:flex;align-items:center;gap:10px;padding:10px;background:#00000005;border:1px solid var(--color-border-light);border-radius:6px;transition:background-color .2s}.step-card:hover{background:#0000000a}.step-status-indicator{flex-shrink:0}.step-number{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}.step-number.completed{background:var(--color-success);color:#fff}.step-number.pending{background:var(--color-border);color:var(--color-text-light)}.step-details{flex:1;display:flex;flex-direction:column;gap:4px}.step-details h5{margin:0;font-size:.875rem;font-weight:500;color:var(--color-text)}.completion-date{font-size:.75rem;color:var(--color-text-light)}.no-onboarding{text-align:center;padding:40px 20px;color:var(--color-text-light)}.staff-modal .tab-content{overflow-y:auto;background-color:var(--color-bg-light);flex-grow:1}.compact-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem}.compact-form .form-row{display:flex;flex-direction:column;gap:1rem}.compact-form .form-row h4{margin:0 0 1rem;font-size:1rem;font-weight:600;padding-bottom:.5rem;border-bottom:1px solid var(--color-border);color:var(--color-text)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.field-row .field-group:only-child{grid-column:1 / -1}.field-group label{font-size:.8rem;font-weight:500;color:var(--color-text-light);text-transform:uppercase;letter-spacing:.5px}.staff-info-display{display:flex!important;flex-direction:column!important;gap:1rem!important;padding:1.5rem 2rem!important}.staff-info-display .info-columns{display:grid!important;grid-template-columns:1fr 1fr!important;gap:1rem!important}.staff-modal .staff-info-display .info-columns{display:grid!important;grid-template-columns:1fr 1fr!important}.staff-info-display .info-section{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--border-radius-md);padding:1rem}.staff-info-display .info-section.full-width{grid-column:1 / -1}.staff-info-display .info-section h3{margin:0 0 .75rem;font-size:.95rem;font-weight:600;padding-bottom:.5rem;border-bottom:2px solid var(--color-primary);color:var(--color-text)}.info-list{display:flex;flex-direction:column;gap:.5rem}.staff-info-display .info-list .info-row{display:flex!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important;gap:1rem!important;padding:.375rem 0!important;min-height:28px!important;margin-bottom:0!important;border-bottom:none!important}.modal-content.stylish-modal.staff-modal .staff-info-display .info-list .info-row,.modal-content.stylish-modal.staff-modal .staff-info-display .info-row{display:flex!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important;gap:1rem!important;margin-bottom:0!important;border-bottom:none!important}.info-grid-two-col{display:grid!important;grid-template-columns:1fr 1fr!important;gap:.75rem 1.5rem!important}.info-grid-two-col .info-row{display:flex!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important;gap:1rem!important;padding:.375rem 0!important}.info-grid-two-col .info-row.full-width{grid-column:1 / -1}.staff-info-display .info-row label{font-size:.75rem!important;font-weight:600!important;color:var(--color-text-muted)!important;text-transform:none!important;letter-spacing:0!important;flex-shrink:0!important;text-align:left!important;margin-bottom:0!important}.modal-content.stylish-modal.staff-modal .staff-info-display .info-row label,.modal-content.stylish-modal.staff-modal .staff-info-display .info-list .info-row label{text-align:left!important;margin-bottom:0!important;font-weight:600!important}.staff-info-display .info-row span{font-size:.9rem!important;color:var(--color-text)!important;font-weight:400!important;text-align:right!important;flex-grow:1!important}.modal-content.stylish-modal.staff-modal .staff-info-display .info-row span,.modal-content.stylish-modal.staff-modal .staff-info-display .info-list .info-row span{text-align:right!important}.modal-content.stylish-modal.staff-modal .info-row,.modal-content.stylish-modal.staff-modal .staff-info-display .info-row,.modal-content.stylish-modal.staff-modal .info-list .info-row,.modal-content.stylish-modal.staff-modal .info-grid-two-col .info-row,.modal-content.staff-modal .info-row{display:flex!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important;gap:1rem!important;margin-bottom:0!important;padding:.375rem 0!important}@media (max-width: 768px){.staff-info-display .info-columns,.info-grid-two-col{grid-template-columns:1fr}}.onboarding-tab-content{padding:0}.onboarding-overview{padding:1.5rem}.sub-accounts-section{margin-top:2rem;padding-top:1rem;border-top:1px solid var(--color-border)}.sub-accounts-section h3{margin:0 0 1rem;font-size:1rem;font-weight:600;color:var(--color-text);padding-bottom:.5rem;border-bottom:1px solid var(--color-border)}.sub-accounts-list{display:flex;flex-direction:column;gap:.75rem}.sub-account-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background-color:var(--color-bg-light);border:1px solid var(--color-border);border-radius:6px;transition:all .2s ease}.sub-account-item:hover{background-color:var(--color-bg-hover);border-color:var(--color-primary)}.sub-account-info{display:flex;flex-direction:column;gap:.25rem}.sub-account-name{font-weight:500;color:var(--color-text);font-size:.9rem}.sub-account-email{font-size:.8rem;color:var(--color-text-light);opacity:.8}.sub-account-role{font-size:.8rem;color:var(--color-primary);font-weight:500;text-transform:capitalize}.sub-account-status{font-size:.8rem;color:var(--color-text-light);font-style:italic}.no-sub-accounts{text-align:center;padding:2rem;color:var(--color-text-muted);font-style:italic;background-color:var(--color-bg-light);border:1px dashed var(--color-border);border-radius:6px}.sub-account-item--clickable{width:100%;text-align:left;cursor:pointer;background:none;border:1px solid var(--color-border)}.sub-account-item--clickable:hover{border-color:var(--color-primary);background-color:var(--color-bg-hover)}.sub-account-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.2rem}.sub-account-edit-hint{font-size:.75rem;color:var(--color-primary);opacity:.7}.sub-account-breadcrumb{margin-bottom:1rem}.back-btn{background:none;border:none;color:var(--color-primary);font-size:.9rem;cursor:pointer;padding:.25rem 0;font-weight:500}.back-btn:hover{text-decoration:underline}.user-item-role-badge{font-size:.7rem;color:var(--color-text-light);background-color:var(--color-bg-hover);border:1px solid var(--color-border);border-radius:4px;padding:1px 5px;text-transform:capitalize;margin-left:auto;flex-shrink:0}.role-select-inline{font-size:.8rem;padding:3px 6px;border:1px solid var(--color-border);border-radius:4px;background:var(--color-bg-light);color:var(--color-text);cursor:pointer}.role-select-inline:disabled{opacity:.5;cursor:wait}.permission-mode-toggle{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem;font-size:.9rem;color:var(--color-text-light)}.mode-btn-group{display:flex;border:1px solid var(--color-border);border-radius:6px;overflow:hidden}.mode-btn{padding:.35rem .85rem;font-size:.85rem;background:none;border:none;cursor:pointer;color:var(--color-text-light);transition:background .15s,color .15s}.mode-btn+.mode-btn{border-left:1px solid var(--color-border)}.mode-btn.active{background-color:var(--color-primary);color:#fff;font-weight:600}.permission-table-scroll{overflow-x:auto;margin-bottom:1rem}.permission-table--user th,.permission-table--user td{min-width:90px;white-space:nowrap}.permission-table--user th:first-child,.permission-table--user td:first-child{min-width:140px;position:sticky;left:0;background-color:var(--color-bg);z-index:1}.no-members-msg{color:var(--color-text-light);font-style:italic;margin:1rem 0}.onboarding-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border)}.onboarding-header h3{margin:0;font-size:1.25rem;color:var(--color-text)}.onboarding-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-item{display:flex;flex-direction:column;gap:.25rem}.stat-item label{font-size:.75rem;font-weight:500;color:var(--color-text-light);text-transform:uppercase;letter-spacing:.5px}.stat-item span{font-size:1rem;font-weight:600;color:var(--color-text)}.steps-progress h4{margin:0 0 1rem;font-size:1rem;font-weight:600;color:var(--color-text)}.steps-list-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.75rem}.step-card{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;transition:all .2s ease}.step-card:hover{border-color:var(--color-primary);box-shadow:0 2px 4px #0000001a}.assign-template{text-align:center;padding:2rem;background-color:var(--color-bg-light);border:2px dashed var(--color-border);border-radius:var(--radius-lg);margin:1.5rem}.assign-template p{margin:0 0 1.5rem;color:var(--color-text-light);font-size:1rem}.template-selector{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:1rem;flex-wrap:wrap}.template-selector select{min-width:250px;padding:.5rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);color:var(--color-text);font-size:.9rem}.template-selector button{padding:.5rem 1.5rem;white-space:nowrap}.files-tab-content{padding:0}.files-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--color-border);background:var(--color-bg)}.files-header h4{margin:0;font-size:1.1rem;font-weight:600;color:var(--color-text)}.files-list{padding:1.5rem;display:flex;flex-direction:column;gap:.75rem}.no-files-message{text-align:center;padding:2rem;color:var(--color-text-light);font-style:italic}.file-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:all .2s ease}.file-item:hover{border-color:var(--color-primary);box-shadow:0 2px 4px #0000001a}.file-info{display:flex;align-items:center;gap:.75rem;flex:1}.file-icon{font-size:1.5rem;flex-shrink:0}.file-details{display:flex;flex-direction:column;gap:.25rem;flex:1}.file-name{font-weight:500;color:var(--color-primary);text-decoration:none;font-size:.9rem}.file-name:hover{text-decoration:underline}.file-meta{font-size:.75rem;color:var(--color-text-light)}.btn-delete-small{padding:.4rem .8rem;font-size:.8rem;background:transparent;color:var(--color-danger);border:1px solid var(--color-danger);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s ease}.btn-delete-small:hover{background:var(--color-danger);color:#fff}.staff-modal .profile-section{display:flex;align-items:center;gap:1.5rem;flex:1}.staff-modal .modal-header{padding:2rem 2rem 1.5rem}.profile-pic-container{position:relative;width:80px;height:80px;flex-shrink:0}.profile-pic{width:100%;height:100%;border-radius:50%;object-fit:cover;border:3px solid var(--color-border)}.profile-pic-placeholder{width:100%;height:100%;border-radius:50%;background:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.8rem;font-weight:600;border:3px solid var(--color-border)}.edit-pic-button{position:absolute;bottom:0;right:0;width:28px;height:28px;border-radius:50%;background:var(--color-primary);border:2px solid var(--color-bg);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.edit-pic-button:hover{transform:scale(1.1);background:var(--color-primary-hover)}.edit-pic-button span{font-size:14px}.profile-info{flex:1;display:flex;flex-direction:column;align-items:flex-end;text-align:right}.profile-info h2{margin:0 0 .5rem;font-size:1.5rem;font-weight:600;color:var(--color-text)}.profile-meta{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.position-badge{padding:.25rem .75rem;border-radius:var(--radius-sm);background:var(--color-bg-light);color:var(--color-text-light);font-size:.85rem;font-weight:500;border:1px solid var(--color-border)}.status-badge.in-progress{background:var(--color-warning-bg);color:var(--color-warning);border-color:var(--color-warning)}.status-badge.completed{background:var(--color-success-bg);color:var(--color-success);border-color:var(--color-success)}@media (max-width: 768px){.compact-form,.field-row,.compact-info,.steps-list-grid{grid-template-columns:1fr}.template-selector{flex-direction:column}.template-selector select{width:100%}}.staff-modal .modal-form-container{display:flex;flex-direction:column;flex-grow:1;overflow:hidden}.compact-form,.compact-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem;align-items:start}.form-row h4,.info-card h4{margin:0 0 1rem;font-size:1rem;font-weight:600;padding-bottom:.5rem;border-bottom:1px solid var(--color-border)}.field-group{display:flex;flex-direction:column;gap:.25rem}.field-group label{font-size:.8rem;font-weight:500;color:var(--color-text-light);text-transform:uppercase}.info-grid{display:flex;flex-direction:column;gap:.75rem}.info-item{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.5rem 0;border-bottom:1px solid var(--color-border-light)}.info-item:last-child{border-bottom:none}.info-item label{font-size:.85rem;color:var(--color-text-light)}.info-item span{font-weight:500;text-align:right}.react-joyride__tooltip{z-index:100000!important}.react-joyride__overlay{z-index:99999!important}.react-joyride__spotlight{z-index:99998!important}.__floater{z-index:100000!important}.__floater[data-placement=center]{position:fixed!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important;max-width:500px!important}.mentions{width:100%}.mentions__control{font-size:.9rem;font-family:inherit}.mentions__input{padding:var(--spacing-sm, 12px)!important;border:2px solid var(--color-border)!important;border-radius:var(--border-radius-md, 8px)!important;background:var(--color-bg-light)!important;color:var(--color-text)!important;font-size:.9rem!important;font-family:inherit!important;min-height:80px!important;overflow:auto!important;transition:border-color .2s ease!important}.mentions__input:focus{border-color:var(--color-primary)!important;outline:none!important;box-shadow:0 0 0 3px var(--color-primary-bg)!important}.mentions__highlighter{padding:var(--spacing-sm, 12px)!important;border:2px solid transparent!important;min-height:80px!important}.mentions__mention{background:#60a5fa33!important;color:#2563eb!important;font-weight:600!important;padding:2px 6px!important;border-radius:4px!important}.mentions__suggestions{background:var(--color-bg-surface)!important;border:2px solid var(--color-border)!important;border-radius:var(--border-radius-md, 8px)!important;box-shadow:var(--shadow-lg)!important;max-height:200px!important;overflow-y:auto!important;z-index:10000!important}.mentions__suggestions__list{margin:0!important;padding:0!important;list-style:none!important;background:var(--color-bg-surface)!important}.mentions__suggestions__item{padding:var(--spacing-sm, 12px)!important;border-bottom:1px solid var(--color-border)!important;cursor:pointer!important;color:var(--color-text)!important;background:var(--color-bg-surface)!important;transition:background-color .15s ease!important}.mentions__suggestions__item:last-child{border-bottom:none!important}.mentions__suggestions__item:hover,.mentions__suggestions__item--focused{background:var(--color-bg-hover)!important;color:var(--color-text)!important}.app-loading-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#fffffff2;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:9999;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;transition:opacity .3s ease-in-out}.loading-logo{max-width:200px;margin-bottom:2rem;animation:pulse 2s infinite ease-in-out}.spinner{width:50px;height:50px;border:5px solid #e0e0e0;border-top:5px solid #007bff;border-radius:50%;animation:spin 1.2s linear infinite;margin-bottom:1.5rem}.app-loading-overlay p{font-size:1.2rem;color:#333;font-weight:500}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.9}}.theme-selector{position:relative;display:inline-block}.theme-selector-trigger{display:flex;align-items:center;justify-content:center;gap:0;padding:0;background:transparent!important;border:none!important;color:var(--color-text-secondary);cursor:pointer;transition:color .2s ease;width:32px;height:32px;margin-right:var(--spacing-sm);box-shadow:none!important;outline:none!important;transform:none!important}.theme-selector-trigger:hover{color:var(--color-text);background:transparent!important;box-shadow:none!important;transform:none!important}.theme-selector-trigger:focus{outline:none}.theme-preview{width:20px;height:20px;border-radius:50%;border:2px solid var(--color-border);flex-shrink:0}.theme-selector-trigger .theme-name,.theme-selector-trigger .dropdown-arrow{display:none}.theme-option .theme-name{font-weight:500;flex:1;text-align:left}.dropdown-arrow{transition:transform .2s ease;opacity:.6}.dropdown-arrow.open{transform:rotate(180deg)}.theme-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:280px;z-index:10000;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--border-radius-md);box-shadow:var(--shadow-lg);overflow:hidden}.theme-list{max-height:300px;overflow-y:auto}.theme-option{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;background:none;border:none;border-bottom:1px solid var(--color-border-light);color:var(--color-text);cursor:pointer;transition:background-color .15s;text-align:left}.theme-option:last-child{border-bottom:none}.theme-option:hover{background:var(--color-bg-hover)}.theme-option.active{background:var(--color-primary-bg)}.theme-option.active .theme-name{color:var(--color-primary);font-weight:600}.theme-option .theme-preview{width:24px;height:24px;border:2px solid var(--color-border);box-shadow:none}.theme-info{flex:1}.theme-option .theme-name{font-weight:500;margin-bottom:2px;font-size:14px}.theme-description{font-size:12px;color:var(--color-text-secondary);line-height:1.3}.check-icon{color:var(--color-primary);flex-shrink:0}[data-theme=dark] .theme-dropdown,body.dark-mode .theme-dropdown{background:var(--color-bg-surface);border-color:var(--color-border)}[data-theme=dark] .theme-option:hover,body.dark-mode .theme-option:hover{background:var(--color-bg-hover)}[data-theme=dark] .theme-option.active,body.dark-mode .theme-option.active{background:var(--color-primary-bg);color:var(--color-primary)}[data-theme=cosmic] .theme-option:hover,body.cosmic-mode .theme-option:hover{background:#0f14204d}[data-theme=cosmic] .theme-option.active,body.cosmic-mode .theme-option.active{background:var(--color-primary-bg);color:var(--color-primary)}html[data-theme=light],[data-theme=light],body.light-mode{--color-bg-body: #f1f5f9;--color-bg-surface: #ffffff;--color-bg-light: #f8fafc;--color-bg-hover: #e2e8f0;--color-bg-active-link: #dbeafe;--color-text: #1e293b;--color-text-light: #475569;--color-text-muted: #64748b;--color-border: #cbd5e1;--color-border-light: #e2e8f0;--color-border-dark: #94a3b8;--color-primary: #2563eb;--color-primary-light: #3b82f6;--color-primary-dark: #1d4ed8;--color-primary-bg: #dbeafe;--color-success: #059669;--color-warning: #d97706;--color-error: #dc2626;--color-info: #0284c7;--shadow-sm: 0 1px 2px 0 rgba(37, 99, 235, .05);--shadow: 0 1px 3px 0 rgba(37, 99, 235, .1), 0 1px 2px 0 rgba(37, 99, 235, .06);--shadow-lg: 0 10px 15px -3px rgba(37, 99, 235, .1), 0 4px 6px -2px rgba(37, 99, 235, .05)}html[data-theme=light] button.primary,[data-theme=light] button.primary,body.light-mode button.primary{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 4px 14px #2563eb63}html[data-theme=light] button.primary:hover,[data-theme=light] button.primary:hover,body.light-mode button.primary:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 6px 20px #2563eb80}html[data-theme=light] .main-header,[data-theme=light] .main-header,body.light-mode .main-header{background:linear-gradient(135deg,#1e40af,#1e3a8a);color:#fff;box-shadow:0 4px 20px #1e3a8a4d}html[data-theme=light] .info-card,html[data-theme=light] .stats-card,[data-theme=light] .info-card,[data-theme=light] .stats-card,body.light-mode .info-card,body.light-mode .stats-card{background:#fff;border:1px solid rgba(37,99,235,.1);box-shadow:0 4px 12px #2563eb1a}html[data-theme=light] .sidebar,html[data-theme=light] .nav,html[data-theme=light] .nav-button,[data-theme=light] .sidebar,[data-theme=light] .nav,[data-theme=light] .nav-button,body.light-mode .sidebar,body.light-mode .nav,body.light-mode .nav-button{background:linear-gradient(180deg,#f8fafc,#f1f5f9);border-right:1px solid rgba(37,99,235,.2)}html[data-theme=light] .nav-button:hover,[data-theme=light] .nav-button:hover,body.light-mode .nav-button:hover{background-color:var(--color-bg-hover);color:var(--color-text)}html[data-theme=light] .nav-button.active,[data-theme=light] .nav-button.active,body.light-mode .nav-button.active{background-color:var(--color-bg-active-link);color:var(--color-primary)}html[data-theme=light] .timeline-header,html[data-theme=light] .timeline-headers,html[data-theme=light] .timeline-grid .header-cell,html[data-theme=light] .timeline-grid .month-header,html[data-theme=light] .header-cell,html[data-theme=light] .month-header,html[data-theme=light] *[class*=header-cell],html[data-theme=light] *[class*=month-header],[data-theme=light] .timeline-header,[data-theme=light] .timeline-headers,[data-theme=light] .timeline-grid .header-cell,[data-theme=light] .timeline-grid .month-header,[data-theme=light] .header-cell,[data-theme=light] .month-header,[data-theme=light] *[class*=header-cell],[data-theme=light] *[class*=month-header],body.light-mode .timeline-header,body.light-mode .timeline-headers,body.light-mode .timeline-grid .header-cell,body.light-mode .timeline-grid .month-header,body.light-mode .header-cell,body.light-mode .month-header,body.light-mode *[class*=header-cell],body.light-mode *[class*=month-header]{background:var(--color-bg-light)!important;color:var(--color-text)!important;box-shadow:none!important;border-bottom:1px solid var(--color-border)!important}html[data-theme=light] .timeline-header-container,[data-theme=light] .timeline-header-container,body.light-mode .timeline-header-container{-webkit-backdrop-filter:blur(8px)!important;backdrop-filter:blur(8px)!important;border-bottom:2px solid #1e3a8a!important}html[data-theme=light] .grid-cell.corner-cell,[data-theme=light] .grid-cell.corner-cell,body.light-mode .grid-cell.corner-cell{-webkit-backdrop-filter:blur(8px)!important;backdrop-filter:blur(8px)!important;border-right:1px solid #1e3a8a!important}html[data-theme=light] .page-header,[data-theme=light] .page-header,body.light-mode .page-header{background-color:var(--color-bg-surface);color:var(--color-text)}[data-theme=ocean],body.ocean-mode{--color-bg-body: #f0f9ff;--color-bg-surface: #ffffff;--color-bg-light: #f8fafc;--color-bg-hover: #e0f2fe;--color-bg-active-link: #bae6fd;--color-text: #083344;--color-text-light: #075985;--color-text-muted: #64748b;--color-border: #cbd5e1;--color-border-light: #e2e8f0;--color-border-dark: #7dd3fc;--color-primary: #0ea5e9;--color-primary-light: #38bdf8;--color-primary-dark: #075985;--color-primary-bg: #e0f2fe;--color-success: #10b981;--color-warning: #f59e0b;--color-error: #ef4444;--color-info: #3b82f6;--shadow-sm: 0 1px 2px 0 rgba(14, 165, 233, .07);--shadow: 0 1px 3px 0 rgba(14, 165, 233, .1), 0 1px 2px 0 rgba(14, 165, 233, .08);--shadow-lg: 0 10px 15px -3px rgba(14, 165, 233, .1), 0 4px 6px -2px rgba(14, 165, 233, .07)}html[data-theme=ocean] button.primary,[data-theme=ocean] button.primary,body.ocean-mode button.primary{background:linear-gradient(135deg,var(--color-primary-light) 0%,var(--color-primary) 100%)!important;color:#fff!important;border:none!important;box-shadow:0 4px 14px #0ea5e959!important}html[data-theme=ocean] button.primary:hover,[data-theme=ocean] button.primary:hover,body.ocean-mode button.primary:hover{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%)!important;box-shadow:0 6px 20px #0ea5e973!important}html[data-theme=ocean] .timeline-grid .header-cell,html[data-theme=ocean] .timeline-grid .month-header,html[data-theme=ocean] .header-cell,html[data-theme=ocean] .month-header,[data-theme=ocean] .timeline-grid .header-cell,[data-theme=ocean] .timeline-grid .month-header,[data-theme=ocean] .header-cell,[data-theme=ocean] .month-header,body.ocean-mode .timeline-grid .header-cell,body.ocean-mode .timeline-grid .month-header,body.ocean-mode .header-cell,body.ocean-mode .month-header{background:linear-gradient(180deg,#fff,#f0f9ff)!important;color:var(--color-primary-dark)!important;box-shadow:none!important;border-bottom:2px solid var(--color-primary)!important}html[data-theme=ocean] .page-header,[data-theme=ocean] .page-header,body.ocean-mode .page-header{background-color:var(--color-bg-surface)!important;color:var(--color-text)!important;border-bottom-color:var(--color-border)!important;box-shadow:var(--shadow)!important}html[data-theme=ocean] .info-card,html[data-theme=ocean] .stats-card,[data-theme=ocean] .info-card,[data-theme=ocean] .stats-card,body.ocean-mode .info-card,body.ocean-mode .stats-card{background-color:var(--color-bg-surface)!important;border:1px solid var(--color-border-light)!important;box-shadow:var(--shadow)!important}html[data-theme=ocean] .nav-button.active,[data-theme=ocean] .nav-button.active,body.ocean-mode .nav-button.active{background:var(--color-primary-bg)!important;color:var(--color-primary-dark)!important;border-left-color:var(--color-primary)!important;font-weight:600!important}[data-theme=dark],body.dark-mode{--color-bg-body: #0d1117;--color-bg-surface: #161b22;--color-bg-light: #21262d;--color-bg-hover: #30363d;--color-bg-selected: #3b82f6;--color-bg-active-link: #282e36;--color-text: #f0f6fc;--color-text-light: #8b949e;--color-text-muted: #6e7681;--color-border: #30363d;--color-border-light: #21262d;--color-border-dark: #484f58;--color-primary-light: #1f2937;--color-bg-hover: #374151;background-color:var(--color-bg-body);color:var(--color-text)}html[data-theme=dark] .main-panel,html[data-theme=dark] .page-header,[data-theme=dark] .main-panel,[data-theme=dark] .page-header,body.dark-mode .main-panel,body.dark-mode .page-header{background-color:var(--color-bg-surface);color:var(--color-text)}[data-theme=dark] button.secondary,[data-theme=dark] .modal-actions button.secondary,body.dark-mode button.secondary,body.dark-mode .modal-actions button.secondary{background-color:var(--color-bg-light);color:var(--color-text);border-color:var(--color-border)}[data-theme=dark] button.secondary:hover,[data-theme=dark] .modal-actions button.secondary:hover,body.dark-mode button.secondary:hover,body.dark-mode .modal-actions button.secondary:hover{background-color:var(--color-bg-hover)}[data-theme=dark] .icon-button,[data-theme=dark] .theme-toggle-button,body.dark-mode .icon-button,body.dark-mode .theme-toggle-button{color:var(--color-text)!important}html[data-theme=dark] .nav-button,[data-theme=dark] .nav-button,body.dark-mode .nav-button{color:var(--color-text-light)}html[data-theme=dark] .nav-button.active,[data-theme=dark] .nav-button.active,body.dark-mode .nav-button.active{color:var(--color-primary);background:var(--color-bg-active-link);box-shadow:inset 5px 0 0 0 var(--color-primary)}html[data-theme=dark] .nav-button:hover,[data-theme=dark] .nav-button:hover,body.dark-mode .nav-button:hover{background-color:var(--color-bg-hover);color:var(--color-text)}[data-theme=dark] .roster-table th,[data-theme=dark] .waitlist-table th,[data-theme=dark] .leads-table th,[data-theme=dark] .settings-table th,body.dark-mode .roster-table th,body.dark-mode .waitlist-table th,body.dark-mode .leads-table th,body.dark-mode .settings-table th{background-color:var(--color-bg-light);color:var(--color-text)}[data-theme=dark] .roster-table td,[data-theme=dark] .waitlist-table td,[data-theme=dark] .leads-table td,[data-theme=dark] .settings-table td,body.dark-mode .roster-table td,body.dark-mode .waitlist-table td,body.dark-mode .leads-table td,body.dark-mode .settings-table td{border-bottom:1px solid var(--color-border);color:var(--color-text);background-color:var(--color-bg-surface)}[data-theme=dark] .roster-table tbody tr:hover,body.dark-mode .roster-table tbody tr:hover{background-color:var(--color-bg-hover)}[data-theme=dark] .roster-table tr.selected-row td,body.dark-mode .roster-table tr.selected-row td{background-color:var(--color-bg-active-link)!important;color:var(--color-text)}[data-theme=dark] .roster-table tr.selected-row:hover td,body.dark-mode .roster-table tr.selected-row:hover td{background-color:var(--color-bg-hover)!important}[data-theme=dark] table td,[data-theme=dark] .table td,[data-theme=dark] .roster-table td,[data-theme=dark] .waitlist-table td,body.dark-mode table td,body.dark-mode .table td,body.dark-mode .roster-table td,body.dark-mode .waitlist-table td{color:var(--color-text)!important}[data-theme=dark] input:not([type=color]):not([type=checkbox]):not([type=radio]),[data-theme=dark] select,[data-theme=dark] textarea,body.dark-mode input:not([type=color]):not([type=checkbox]):not([type=radio]),body.dark-mode select,body.dark-mode textarea{background-color:var(--color-bg-light);color:var(--color-text);border-color:var(--color-border)}[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder,[data-theme=dark] select option,body.dark-mode input::placeholder,body.dark-mode textarea::placeholder,body.dark-mode select option{color:var(--color-text-muted)!important}[data-theme=dark] input:focus,[data-theme=dark] select:focus,[data-theme=dark] textarea:focus,body.dark-mode input:focus,body.dark-mode select:focus,body.dark-mode textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px #4facfe4d}[data-theme=dark] .weekly-grid .grid-header-cell,[data-theme=dark] .weekly-grid .slot-label-cell,[data-theme=dark] .weekly-grid .day-slot,[data-theme=dark] .weekly-grid .capacity-cell,[data-theme=dark] .weekly-grid .room-header,body.dark-mode .weekly-grid .grid-header-cell,body.dark-mode .weekly-grid .slot-label-cell,body.dark-mode .weekly-grid .day-slot,body.dark-mode .weekly-grid .capacity-cell,body.dark-mode .weekly-grid .room-header{background-color:var(--color-bg-surface);color:var(--color-text)}[data-theme=dark] .timeline-grid,[data-theme=dark] .timeline-container,body.dark-mode .timeline-grid,body.dark-mode .timeline-container{background-color:var(--color-bg-light)}[data-theme=dark] .grid-cell,body.dark-mode .grid-cell{background-color:var(--color-bg-surface);color:var(--color-text)}[data-theme=dark] .grid-cell strong,[data-theme=dark] .weekly-grid strong,[data-theme=dark] .timeline-grid strong,body.dark-mode .grid-cell strong,body.dark-mode .weekly-grid strong,body.dark-mode .timeline-grid strong{color:var(--color-text)!important}[data-theme=dark] .modal-content,[data-theme=dark] .modal-header,[data-theme=dark] .info-card,[data-theme=dark] .stats-card,[data-theme=dark] .detail-panel,body.dark-mode .modal-content,body.dark-mode .modal-header,body.dark-mode .info-card,body.dark-mode .stats-card,body.dark-mode .detail-panel{background-color:var(--color-bg-surface)!important;color:var(--color-text)!important;border-color:var(--color-border)!important}[data-theme=dark] .modal-content,body.dark-mode .modal-content{background-color:var(--color-bg-surface)!important;border:1px solid var(--color-border)!important;box-shadow:var(--shadow-lg)!important}[data-theme=dark] .modal-overlay,body.dark-mode .modal-overlay{background-color:#000000bf!important}[data-theme=dark] .info-card,body.dark-mode .info-card{background:var(--color-bg-surface)!important;border:1px solid var(--color-border)!important;box-shadow:var(--shadow-sm)!important}[data-theme=dark] .info-card .card-title,[data-theme=dark] .info-card .card-content,[data-theme=dark] .info-card .card-value,body.dark-mode .info-card .card-title,body.dark-mode .info-card .card-content,body.dark-mode .info-card .card-value,[data-theme=dark] .info-card h3,[data-theme=dark] .info-card h4,[data-theme=dark] .info-card-item label,[data-theme=dark] .info-card-item span,[data-theme=dark] .info-card p,[data-theme=dark] .info-card strong,body.dark-mode .info-card h3,body.dark-mode .info-card h4,body.dark-mode .info-card-item label,body.dark-mode .info-card-item span,body.dark-mode .info-card p,body.dark-mode .info-card strong,[data-theme=dark] .modal-header .header-dob,[data-theme=dark] .header-info h2,[data-theme=dark] .modal-header h2,[data-theme=dark] .modal-header h3,[data-theme=dark] .modal-header h4,body.dark-mode .modal-header .header-dob,body.dark-mode .header-info h2,body.dark-mode .modal-header h2,body.dark-mode .modal-header h3,body.dark-mode .modal-header h4{color:var(--color-text)!important}[data-theme=dark] .profile-dropdown,[data-theme=dark] .settings-nav,body.dark-mode .profile-dropdown,body.dark-mode .settings-nav{background-color:var(--color-bg-surface);border:1px solid var(--color-border)}[data-theme=dark] .profile-dropdown button,[data-theme=dark] .settings-nav button,body.dark-mode .profile-dropdown button,body.dark-mode .settings-nav button{color:var(--color-text)}[data-theme=dark] .profile-dropdown button:hover,[data-theme=dark] .settings-nav button:hover,body.dark-mode .profile-dropdown button:hover,body.dark-mode .settings-nav button:hover{background-color:var(--color-bg-hover)}[data-theme=dark] .settings-nav button.active,body.dark-mode .settings-nav button.active{background-color:var(--color-primary-bg);color:var(--color-primary);font-weight:600;border-left-color:var(--color-primary)}[data-theme=dark] .dropdown-menu,[data-theme=dark] .notification-dropdown,[data-theme=dark] .user-menu,body.dark-mode .dropdown-menu,body.dark-mode .notification-dropdown,body.dark-mode .user-menu{background-color:var(--color-bg-surface)!important;color:var(--color-text)!important}[data-theme=dark] .controls-bar .control-group,body.dark-mode .controls-bar .control-group{background-color:var(--color-bg-surface);border:1px solid var(--color-border)}[data-theme=dark] .user-info,[data-theme=dark] .menu-bar,[data-theme=dark] .controls-bar,[data-theme=dark] .sub-controls-bar,[data-theme=dark] .control-group,body.dark-mode .user-info,body.dark-mode .menu-bar,body.dark-mode .controls-bar,body.dark-mode .sub-controls-bar,body.dark-mode .control-group{color:var(--color-text)!important}[data-theme=dark] .meal-inventory-sidebar,[data-theme=dark] .meal-calendar-main,[data-theme=dark] .enrollment-tag,[data-theme=dark] .inventory-item,[data-theme=dark] .program-edit-header,[data-theme=dark] .tab-button,[data-theme=dark] .tab-content,body.dark-mode .meal-inventory-sidebar,body.dark-mode .meal-calendar-main,body.dark-mode .enrollment-tag,body.dark-mode .inventory-item,body.dark-mode .program-edit-header,body.dark-mode .tab-button,body.dark-mode .tab-content{background-color:var(--color-bg-surface);color:var(--color-text);border-color:var(--color-border)}[data-theme=dark] .enrollment-tag,[data-theme=dark] label,[data-theme=dark] span,body.dark-mode .enrollment-tag,body.dark-mode label,body.dark-mode span{color:var(--color-text)!important}[data-theme=dark] ::selection,body.dark-mode ::selection{background-color:var(--color-bg-active-link);color:var(--color-text)}[data-theme=dark] svg,[data-theme=dark] .icon,body.dark-mode svg,body.dark-mode .icon{color:var(--color-text)!important;fill:currentColor!important}[data-theme=dark] .notification-bell-trigger,[data-theme=dark] .theme-toggle-button,[data-theme=dark] .notification-bell-trigger svg,[data-theme=dark] .theme-toggle-button svg,body.dark-mode .notification-bell-trigger,body.dark-mode .theme-toggle-button,body.dark-mode .notification-bell-trigger svg,body.dark-mode .theme-toggle-button svg{color:var(--color-text)!important}[data-theme=dark] .status-badge.status-enrolled,body.dark-mode .status-badge.status-enrolled{background-color:#059669!important;color:#d1fae5!important}[data-theme=dark] .status-badge.status-waitlist,body.dark-mode .status-badge.status-waitlist{background-color:#d97706!important;color:#fef3c7!important}[data-theme=dark] .status-badge.status-inactive,body.dark-mode .status-badge.status-inactive{background-color:var(--color-gray-700)!important;color:var(--color-gray-200)!important}[data-theme=dark] .status-badge.status-registered,body.dark-mode .status-badge.status-registered{background-color:#2563eb!important;color:#dbeafe!important}[data-theme=dark] .status-badge,body.dark-mode .status-badge,[data-theme=dark] .page-description,[data-theme=dark] .page-header,[data-theme=dark] .page-title,body.dark-mode .page-description,body.dark-mode .page-header,body.dark-mode .page-title,[data-theme=dark] .history-item,[data-theme=dark] .history-item.current,[data-theme=dark] .history-item.past,body.dark-mode .history-item,body.dark-mode .history-item.current,body.dark-mode .history-item.past{color:var(--color-text)!important}[data-theme=dark] .extracurriculars-table .child-name-header,[data-theme=dark] .extracurriculars-table th,[data-theme=dark] .extracurriculars-table td,[data-theme=dark] .extracurriculars-table .child-name-cell,[data-theme=dark] .extracurriculars-page-content .page-description,body.dark-mode .extracurriculars-table .child-name-header,body.dark-mode .extracurriculars-table th,body.dark-mode .extracurriculars-table td,body.dark-mode .extracurriculars-table .child-name-cell,body.dark-mode .extracurriculars-page-content .page-description{color:var(--color-text)!important;background-color:var(--color-bg-light)!important}[data-theme=dark] .extracurriculars-table,body.dark-mode .extracurriculars-table{background-color:var(--color-bg-surface)!important;border-color:var(--color-border)!important}.dark-mode .main-panel,.dark-mode .page-header{background-color:var(--color-bg-surface);color:var(--color-text)}.dark-mode button.secondary,.dark-mode .modal-actions button.secondary{background-color:var(--color-bg-light);color:var(--color-text);border-color:var(--color-border)}.dark-mode button.secondary:hover,.dark-mode .modal-actions button.secondary:hover{background-color:var(--color-bg-hover)}.dark-mode .nav-button{color:var(--color-text-light)}.dark-mode .nav-button.active{color:var(--color-primary);background:var(--color-bg-active-link);box-shadow:inset 5px 0 0 0 var(--color-primary)}.dark-mode .nav-button:hover{background-color:var(--color-bg-hover)}.dark-mode .roster-table th,.dark-mode .waitlist-table th,.dark-mode .leads-table th,.dark-mode .settings-table th{background-color:var(--color-bg-light);color:var(--color-text)}.dark-mode .roster-table td,.dark-mode .waitlist-table td,.dark-mode .leads-table td,.dark-mode .settings-table td{border-bottom:1px solid var(--color-border);color:var(--color-text);background-color:var(--color-bg-surface)}.dark-mode .roster-table tbody tr:hover{background-color:var(--color-bg-hover)}.dark-mode .roster-table tr.selected-row td{background-color:var(--color-bg-active-link)!important;color:var(--color-text)}.dark-mode .roster-table tr.selected-row:hover td{background-color:var(--color-bg-hover)!important}.dark-mode .roster-toggle-bar button{color:var(--color-text)}.dark-mode .roster-toggle-bar button.active{background-color:var(--color-primary)}.dark-mode input:not([type=color]):not([type=checkbox]):not([type=radio]),.dark-mode select,.dark-mode textarea{background-color:var(--color-bg-light);color:var(--color-text);border-color:var(--color-border)}.dark-mode input::placeholder,.dark-mode textarea::placeholder{color:var(--color-text-light);opacity:.8}.dark-mode input:focus,.dark-mode select:focus,.dark-mode textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px #4facfe4d}.dark-mode .icon-button,.dark-mode .theme-toggle-button{color:var(--color-text)!important}.dark-mode .controls-bar .control-group{background-color:var(--color-bg-surface);border:1px solid var(--color-border)}.dark-mode .weekly-grid .grid-header-cell,.dark-mode .weekly-grid .slot-label-cell,.dark-mode .weekly-grid .day-slot,.dark-mode .weekly-grid .capacity-cell,.dark-mode .weekly-grid .room-header{background-color:var(--color-bg-surface);color:var(--color-text)}.dark-mode .weekly-grid .grid-header-cell{border-bottom:1px solid var(--color-border)}.dark-mode .weekly-grid .capacity-cell{color:var(--color-text-secondary)}[data-theme=dark] .over-capacity,[data-theme=dark] .capacity-cell.over-capacity,body.dark-mode .over-capacity,body.dark-mode .capacity-cell.over-capacity{background-color:#4a1a1a!important;color:#fca5a5!important;font-weight:700}.dark-mode .weekly-grid .room-header{background-color:var(--color-bg-light);border-bottom:1px solid var(--color-border)}.dark-mode .meal-calendar-grid,.dark-mode .calendar-day-cell,.dark-mode .calendar-header-cell{background-color:var(--color-bg-surface)}.dark-mode .timeline-container{background-color:var(--color-bg-light)}.dark-mode .modal-content{background:var(--color-bg-surface)!important;border:1px solid var(--color-border)!important;box-shadow:var(--shadow-lg)!important}.dark-mode .info-card,.dark-mode .stats-card,.dark-mode .detail-panel{background-color:var(--color-bg-surface)!important;color:var(--color-text)!important;border-color:var(--color-border)!important}.dark-mode .child-presence-visual{background-color:var(--color-bg-light);border:1px solid var(--color-border)}.dark-mode .profile-dropdown{background-color:var(--color-bg-surface);border:1px solid var(--color-border)}.dark-mode .dropdown-user-name{color:var(--color-text)}.dark-mode .dropdown-user-email{color:var(--color-text-secondary)}.dark-mode .profile-dropdown button{color:var(--color-text)}.dark-mode .profile-dropdown button:hover{background-color:var(--color-bg-hover)}.dark-mode .modal-overlay .modal-content,.dark-mode .sidebar,.dark-mode .filter-sidebar,.dark-mode .user-menu-container,.dark-mode .user-menu-trigger,.dark-mode .dropdown-divider,.dark-mode .info-card-item,.dark-mode .stats-grid,.dark-mode .form-container,.dark-mode .section-card{background-color:var(--color-bg-surface);color:var(--color-text);border-color:var(--color-border)}.dark-mode .user-menu-trigger:hover{background-color:var(--color-bg-hover)}.dark-mode ::selection{background-color:var(--color-bg-active-link);color:var(--color-text)}.dark-mode ::-moz-selection{background-color:var(--color-bg-active-link);color:var(--color-text)}.dark-mode .modal-header{background-color:var(--color-bg-surface);border-bottom:1px solid var(--color-border)}.dark-mode .modal-form-grid,.dark-mode .modal-form-grid .form-group,.dark-mode .modal-form-item{background-color:var(--color-bg-surface);color:var(--color-text)}.dark-mode .modal-form-grid .grid-subheader{color:var(--color-text-secondary)}.dark-mode .stylish-modal .promotion-date-group{border-color:var(--color-border)}.dark-mode .tab-button{color:var(--color-text-secondary);border-bottom:2px solid transparent}.dark-mode .tab-button:hover{color:var(--color-text)}.dark-mode .tab-button.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.dark-mode .tab-content{background-color:var(--color-bg-surface);color:var(--color-text)}.dark-mode .tab-nav{border-bottom:1px solid var(--color-border)}.dark-mode .meal-planner-grid{background-color:var(--color-bg-surface);border:1px solid var(--color-border)}[data-theme=dark] input[type=number]::-webkit-inner-spin-button,[data-theme=dark] input[type=number]::-webkit-outer-spin-button,body.dark-mode input[type=number]::-webkit-inner-spin-button,body.dark-mode input[type=number]::-webkit-outer-spin-button{-webkit-appearance:auto!important;opacity:1!important}.dark-mode input[type=number]::-webkit-inner-spin-button,.dark-mode input[type=number]::-webkit-outer-spin-button{-webkit-appearance:auto!important;opacity:1!important}html[data-theme=dark] .timeline-header,html[data-theme=dark] .timeline-headers,html[data-theme=dark] .timeline-grid .header-cell,html[data-theme=dark] .timeline-grid .month-header,html[data-theme=dark] .header-cell,html[data-theme=dark] .month-header,html[data-theme=dark] *[class*=header-cell],html[data-theme=dark] *[class*=month-header],[data-theme=dark] .timeline-header,[data-theme=dark] .timeline-headers,[data-theme=dark] .timeline-grid .header-cell,[data-theme=dark] .timeline-grid .month-header,[data-theme=dark] .header-cell,[data-theme=dark] .month-header,[data-theme=dark] *[class*=header-cell],[data-theme=dark] *[class*=month-header],body.dark-mode .timeline-header,body.dark-mode .timeline-headers,body.dark-mode .timeline-grid .header-cell,body.dark-mode .timeline-grid .month-header,body.dark-mode .header-cell,body.dark-mode .month-header,body.dark-mode *[class*=header-cell],body.dark-mode *[class*=month-header]{background-color:var(--color-bg-surface)!important;color:var(--color-text)!important;border-bottom:1px solid var(--color-border)!important;box-shadow:var(--shadow)!important}[data-theme=dark] select,body.dark-mode select{background-color:var(--color-bg-light);color:var(--color-text)}[data-theme=dark] .modal-content select,[data-theme=dark] .compact-form select,[data-theme=dark] .info-card-item select,body.dark-mode .modal-content select,body.dark-mode .compact-form select,body.dark-mode .info-card-item select{background-color:var(--color-bg-light)!important;color:var(--color-text)!important;border-color:var(--color-border)!important}[data-theme=dark] option,body.dark-mode option{background-color:var(--color-bg-surface)!important;color:var(--color-text)!important}[data-theme=dark] option:checked,[data-theme=dark] option:hover,body.dark-mode option:checked,body.dark-mode option:hover{background-color:var(--color-primary)!important;color:#fff!important}[data-theme=dark] .ratio-rules-editor,body.dark-mode .ratio-rules-editor{background-color:transparent}[data-theme=dark] .ratio-rule-item,body.dark-mode .ratio-rule-item{background:var(--color-bg-surface)!important;border-color:var(--color-border)!important}[data-theme=dark] .ratio-rule-item span,body.dark-mode .ratio-rule-item span{color:var(--color-text)!important}[data-theme=dark] .ratio-rule-item .age-input,[data-theme=dark] .ratio-rule-item .ratio-input,body.dark-mode .ratio-rule-item .age-input,body.dark-mode .ratio-rule-item .ratio-input{background:var(--color-bg-light)!important;border-color:var(--color-border)!important;color:var(--color-text)!important}[data-theme=dark] .ratio-rule-item .age-input:read-only,body.dark-mode .ratio-rule-item .age-input:read-only{background:var(--color-bg-hover)!important;color:var(--color-text-muted)!important}[data-theme=dark] .sidebar-toggle,body.dark-mode .sidebar-toggle{background-color:var(--color-bg-hover)!important;color:var(--color-text)!important;border-color:var(--color-border)!important}[data-theme=dark] .sidebar-toggle:hover,body.dark-mode .sidebar-toggle:hover{background-color:var(--color-bg-light)!important}[data-theme=dark] .meal-shopping-list-sidebar,[data-theme=dark] .meal-inventory-sidebar,body.dark-mode .meal-shopping-list-sidebar,body.dark-mode .meal-inventory-sidebar{background-color:var(--color-bg-surface)!important;border-color:var(--color-border)!important}[data-theme=dark] .inventory-category h4,body.dark-mode .inventory-category h4{color:var(--color-text-light)!important}[data-theme=dark] thead,[data-theme=dark] thead th,body.dark-mode thead,body.dark-mode thead th{background-color:var(--color-bg-light)!important;color:var(--color-text)!important;border-color:var(--color-border)!important}[data-theme=dark] ::-webkit-scrollbar,body.dark-mode ::-webkit-scrollbar{width:12px;height:12px}[data-theme=dark] ::-webkit-scrollbar-track,body.dark-mode ::-webkit-scrollbar-track{background:var(--color-bg-surface)}[data-theme=dark] ::-webkit-scrollbar-thumb,body.dark-mode ::-webkit-scrollbar-thumb{background:var(--color-bg-hover);border-radius:6px}[data-theme=dark] ::-webkit-scrollbar-thumb:hover,body.dark-mode ::-webkit-scrollbar-thumb:hover{background:var(--color-border-dark)}[data-theme=dark] .inventory-modal button,[data-theme=dark] .inventory-actions button,body.dark-mode .inventory-modal button,body.dark-mode .inventory-actions button{background-color:var(--color-bg-light)!important;color:var(--color-text)!important;border-color:var(--color-border)!important}[data-theme=dark] .inventory-modal button:hover,[data-theme=dark] .inventory-actions button:hover,body.dark-mode .inventory-modal button:hover,body.dark-mode .inventory-actions button:hover{background-color:var(--color-bg-hover)!important}[data-theme=dark] .inventory-modal button.primary-btn,[data-theme=dark] .inventory-actions button.primary-btn,body.dark-mode .inventory-modal button.primary-btn,body.dark-mode .inventory-actions button.primary-btn{background-color:var(--color-primary)!important;color:#fff!important}[data-theme=dark] .schedule-item,[data-theme=dark] .extracurricular-schedule-item,body.dark-mode .schedule-item,body.dark-mode .extracurricular-schedule-item{background-color:var(--color-bg-surface)!important;border-color:var(--color-border)!important;color:var(--color-text)!important}[data-theme=dark] .schedule-item:hover,[data-theme=dark] .extracurricular-schedule-item:hover,body.dark-mode .schedule-item:hover,body.dark-mode .extracurricular-schedule-item:hover{background-color:var(--color-bg-hover)!important}[data-theme=dark] .schedule-item-text,[data-theme=dark] .schedule-item span,[data-theme=dark] .schedule-item .schedule-capacity,[data-theme=dark] .bar-schedule-text,body.dark-mode .schedule-item-text,body.dark-mode .schedule-item span,body.dark-mode .schedule-item .schedule-capacity,body.dark-mode .bar-schedule-text{color:var(--color-text)!important}[data-theme=dark] .schedule-item .icon-btn,body.dark-mode .schedule-item .icon-btn{color:var(--color-text-light)!important}[data-theme=dark] .schedule-item-edit-btn,body.dark-mode .schedule-item-edit-btn{color:var(--color-info)!important}[data-theme=dark] .schedule-item-delete-btn,body.dark-mode .schedule-item-delete-btn{color:var(--color-error)!important}[data-theme=dark] .column-selector-dropdown,body.dark-mode .column-selector-dropdown{background-color:var(--color-bg-surface)!important;border-color:var(--color-border)!important;color:var(--color-text)!important}[data-theme=dark] .column-selector-dropdown label,body.dark-mode .column-selector-dropdown label{color:var(--color-text)!important}[data-theme=dark] .column-selector-dropdown input[type=checkbox],body.dark-mode .column-selector-dropdown input[type=checkbox]{accent-color:var(--color-primary)}[data-theme=dark] .widget-modal,body.dark-mode .widget-modal{background:var(--color-bg-surface)!important;color:var(--color-text)!important;border:1px solid var(--color-border)!important}[data-theme=dark] .widget-modal-header,body.dark-mode .widget-modal-header{border-bottom-color:var(--color-border)!important}[data-theme=dark] .widget-modal-header h2,body.dark-mode .widget-modal-header h2{color:var(--color-text)!important}[data-theme=dark] .widget-modal-close,body.dark-mode .widget-modal-close{background:var(--color-bg-light)!important;color:var(--color-text-muted)!important}[data-theme=dark] .widget-modal-close:hover,body.dark-mode .widget-modal-close:hover{background:var(--color-bg-hover)!important;color:var(--color-text)!important}[data-theme=nature],body.nature-mode{--color-bg-body: #f0f9ff;--color-bg-surface: rgba(255, 255, 255, .95);--color-bg-light: rgba(248, 250, 252, .9);--color-bg-hover: rgba(220, 252, 231, .8);--color-bg-active-link: rgba(187, 247, 208, .7);--color-text: #14532d;--color-text-light: #166534;--color-text-muted: #22c55e;--color-border: #86efac;--color-border-light: #bbf7d0;--color-border-dark: #4ade80;--color-primary: #16a34a;--color-primary-light: #22c55e;--color-primary-dark: #15803d;--color-primary-bg: rgba(220, 252, 231, .7);--color-success: #059669;--color-warning: #d97706;--color-error: #dc2626;--color-info: #0284c7}[data-theme=nature] body,body.nature-mode{background-image:radial-gradient(circle at 50% 50%,rgba(34,197,94,.1) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(22,163,74,.1) 0%,transparent 50%),radial-gradient(circle at 20% 80%,rgba(21,128,61,.1) 0%,transparent 50%);background-attachment:fixed}[data-theme=nature] .info-card,[data-theme=nature] .stats-card,[data-theme=nature] .modal-content,body.nature-mode .info-card,body.nature-mode .stats-card,body.nature-mode .modal-content{background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(134,239,172,.3);box-shadow:0 8px 32px #16a34a1a}html[data-theme=nature] .main-header,[data-theme=nature] .main-header,body.nature-mode .main-header{background:linear-gradient(135deg,#15803df2,#16a34af2);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);color:#fff}[data-theme=nature] button.primary,body.nature-mode button.primary{background:linear-gradient(135deg,#22c55e,#16a34a);box-shadow:0 4px 20px #22c55e4d}[data-theme=nature] button.primary:hover,body.nature-mode button.primary:hover{background:linear-gradient(135deg,#16a34a,#15803d);transform:translateY(-1px);box-shadow:0 8px 25px #22c55e66}html[data-theme=nature] .sidebar,[data-theme=nature] .sidebar,body.nature-mode .sidebar{background:#f8fafccc;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-right:1px solid rgba(134,239,172,.3)}[data-theme=nature] .main-content:before,body.nature-mode .main-content:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%2322c55e' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");pointer-events:none;z-index:-1}[data-theme=sunset],body.sunset-mode{--color-bg-body: #fef3c7;--color-bg-surface: rgba(255, 255, 255, .9);--color-bg-light: rgba(254, 252, 232, .9);--color-bg-hover: rgba(fed7aa, .8);--color-bg-active-link: rgba(254, 215, 170, .7);--color-text: #92400e;--color-text-light: #d97706;--color-text-muted: #f59e0b;--color-border: #fcd34d;--color-border-light: #fde68a;--color-border-dark: #f59e0b;--color-primary: #ea580c;--color-primary-light: #f97316;--color-primary-dark: #c2410c;--color-primary-bg: rgba(254, 215, 170, .6);--color-success: #059669;--color-warning: #d97706;--color-error: #dc2626;--color-info: #0284c7}[data-theme=sunset] body,body.sunset-mode{background:linear-gradient(135deg,#fef3c7,#fed7aa,#fb923c,#f97316,#ea580c);background-attachment:fixed;min-height:100vh}[data-theme=sunset] body:before,body.sunset-mode body:before{content:"";position:fixed;top:0;left:0;right:0;height:200px;background-image:radial-gradient(ellipse 300px 100px at 200px 50px,rgba(255,255,255,.3) 0%,transparent 70%),radial-gradient(ellipse 400px 80px at 600px 80px,rgba(255,255,255,.2) 0%,transparent 70%),radial-gradient(ellipse 500px 120px at 1000px 40px,rgba(255,255,255,.25) 0%,transparent 70%);animation:cloudDrift 30s ease-in-out infinite;pointer-events:none;z-index:-1}@keyframes cloudDrift{0%,to{transform:translate(0);opacity:.6}50%{transform:translate(20px);opacity:.8}}[data-theme=sunset] .info-card,[data-theme=sunset] .stats-card,[data-theme=sunset] .modal-content,body.sunset-mode .info-card,body.sunset-mode .stats-card,body.sunset-mode .modal-content{background:#ffffffd9;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border:1px solid rgba(251,146,60,.3);box-shadow:0 8px 32px #ea580c26}html[data-theme=sunset] .main-header,[data-theme=sunset] .main-header,body.sunset-mode .main-header{background:linear-gradient(135deg,#ea580ce6,#f97316e6,#fb923ce6);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);color:#fff;box-shadow:0 4px 20px #ea580c4d}[data-theme=sunset] button.primary,body.sunset-mode button.primary{background:linear-gradient(135deg,#f97316,#ea580c);box-shadow:0 4px 20px #f9731666,0 0 20px #ea580c33;color:#fff}[data-theme=sunset] button.primary:hover,body.sunset-mode button.primary:hover{background:linear-gradient(135deg,#ea580c,#c2410c);transform:translateY(-2px);box-shadow:0 8px 25px #f9731680,0 0 30px #ea580c4d}html[data-theme=sunset] .sidebar,[data-theme=sunset] .sidebar,body.sunset-mode .sidebar{background:#fefce8cc;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);border-right:1px solid rgba(251,146,60,.3)}[data-theme=sunset] h1,[data-theme=sunset] h2,[data-theme=sunset] h3,body.sunset-mode h1,body.sunset-mode h2,body.sunset-mode h3{text-shadow:0 2px 8px rgba(234,88,12,.2)}[data-theme=minimal],body.minimal-mode{--color-bg-body: #fefefe;--color-bg-surface: #fdfdfd;--color-bg-light: #f9f9f9;--color-bg-hover: #f4f4f4;--color-bg-active-link: #eeeeee;--color-text: #1a1a1a;--color-text-light: #4a4a4a;--color-text-muted: #888888;--color-border: #e8e8e8;--color-border-light: #f0f0f0;--color-border-dark: #d0d0d0;--color-primary: #2a2a2a;--color-primary-light: #4a4a4a;--color-primary-dark: #000000;--color-primary-bg: #f0f0f0;--color-success: #606060;--color-warning: #707070;--color-error: #505050;--color-info: #656565;--shadow-sm: 0 1px 1px 0 rgba(0, 0, 0, .02);--shadow: 0 1px 2px 0 rgba(0, 0, 0, .04), 0 1px 1px 0 rgba(0, 0, 0, .02);--shadow-lg: 0 4px 8px -2px rgba(0, 0, 0, .06), 0 2px 4px -1px rgba(0, 0, 0, .03);background-color:var(--color-bg-body);color:var(--color-text)}[data-theme=minimal] button.primary,body.minimal-mode button.primary{background-color:var(--color-primary);color:#fff;border:none;box-shadow:none;border-radius:2px}[data-theme=minimal] button.primary:hover,body.minimal-mode button.primary:hover{background-color:var(--color-primary-dark);box-shadow:none}[data-theme=minimal] button.secondary,body.minimal-mode button.secondary{background-color:transparent;color:var(--color-text);border:1px solid var(--color-border-dark);border-radius:2px}[data-theme=minimal] button.secondary:hover,body.minimal-mode button.secondary:hover{background-color:var(--color-bg-light);border-color:var(--color-primary)}html[data-theme=minimal] .nav,[data-theme=minimal] .nav,body.minimal-mode .nav{background-color:var(--color-bg-surface);border-bottom:1px solid var(--color-border);box-shadow:none}html[data-theme=minimal] .nav button.active,[data-theme=minimal] .nav button.active,body.minimal-mode .nav button.active{background-color:transparent;color:var(--color-primary);border-bottom:2px solid var(--color-primary);border-radius:0}[data-theme=minimal] .modal-overlay,body.minimal-mode .modal-overlay{background-color:#0000004d}[data-theme=minimal] .modal-content,body.minimal-mode .modal-content{background-color:var(--color-bg-body);border:1px solid var(--color-border);box-shadow:var(--shadow);border-radius:2px}[data-theme=minimal] input,[data-theme=minimal] select,[data-theme=minimal] textarea,body.minimal-mode input,body.minimal-mode select,body.minimal-mode textarea{border:1px solid var(--color-border-dark);border-radius:2px;background-color:var(--color-bg-body)}[data-theme=minimal] input:focus,[data-theme=minimal] select:focus,[data-theme=minimal] textarea:focus,body.minimal-mode input:focus,body.minimal-mode select:focus,body.minimal-mode textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary);outline:none}[data-theme=cosmic],body.cosmic-mode{--theme-refresh: 0;--color-bg-body: #040408;--color-bg-surface: #0d0d1a;--color-bg-light: #0f1420;--color-bg-hover: #0f3460;--color-bg-selected: #1e3a8a;--color-bg-active-link: #533483;--color-text: #e6e6ff;--color-text-light: #b8b8d6;--color-text-muted: #8a8ab8;--color-border: #312e81;--color-border-light: #1e1b4b;--color-border-dark: #4338ca;--color-primary: #8b5cf6;--color-primary-light: #a78bfa;--color-primary-dark: #7c3aed;--color-primary-bg: #2d1b69;--color-success: #06d6a0;--color-warning: #ffd60a;--color-error: #ff006e;--color-info: #00b4d8;--shadow-sm: 0 1px 2px 0 rgba(139, 92, 246, .1);--shadow: 0 1px 3px 0 rgba(139, 92, 246, .2), 0 1px 2px 0 rgba(139, 92, 246, .15);--shadow-lg: 0 10px 15px -3px rgba(139, 92, 246, .3), 0 4px 6px -2px rgba(139, 92, 246, .2);background-color:var(--color-bg-body)!important;color:var(--color-text)!important;background-image:radial-gradient(ellipse 2000px 600px at 25% 75%,rgba(255,255,255,.12) 0%,rgba(196,181,253,.15) 15%,rgba(168,123,250,.12) 30%,rgba(139,92,246,.1) 45%,rgba(59,130,246,.08) 60%,transparent 75%),radial-gradient(ellipse 1500px 400px at 75% 25%,rgba(255,255,255,.08) 0%,rgba(236,72,153,.12) 20%,rgba(168,123,250,.1) 40%,rgba(139,92,246,.08) 60%,transparent 80%),radial-gradient(ellipse 1200px 300px at 50% 50%,rgba(255,255,255,.15) 0%,rgba(255,255,255,.1) 25%,rgba(196,181,253,.08) 50%,rgba(168,123,250,.06) 75%,transparent 100%)!important;background-repeat:no-repeat!important;background-size:100% 100%!important;background-position:center!important;background-attachment:fixed!important}html[data-theme=cosmic],html.cosmic-mode{background-color:var(--color-bg-body)!important;background-image:radial-gradient(ellipse 2000px 600px at 25% 75%,rgba(255,255,255,.12) 0%,rgba(196,181,253,.15) 15%,rgba(168,123,250,.12) 30%,rgba(139,92,246,.1) 45%,rgba(59,130,246,.08) 60%,transparent 75%),radial-gradient(ellipse 1500px 400px at 75% 25%,rgba(255,255,255,.08) 0%,rgba(236,72,153,.12) 20%,rgba(168,123,250,.1) 40%,rgba(139,92,246,.08) 60%,transparent 80%),radial-gradient(ellipse 1200px 300px at 50% 50%,rgba(255,255,255,.15) 0%,rgba(255,255,255,.1) 25%,rgba(196,181,253,.08) 50%,rgba(168,123,250,.06) 75%,transparent 100%)!important;background-repeat:no-repeat!important;background-size:100% 100%!important;background-position:center!important;background-attachment:fixed!important}[data-theme=cosmic] button.primary,body.cosmic-mode button.primary{background:linear-gradient(135deg,#8b5cf6,#7c3aed,#6d28d9)!important;color:#fff!important;border:none!important;box-shadow:0 4px 15px #8b5cf666!important}[data-theme=cosmic] button.primary:hover,body.cosmic-mode button.primary:hover{background:linear-gradient(135deg,#a78bfa,#8b5cf6,#7c3aed)!important;box-shadow:0 6px 20px #8b5cf6b3!important;transform:translateY(-1px)!important}[data-theme=cosmic] button.secondary,[data-theme=cosmic] button,body.cosmic-mode button.secondary,body.cosmic-mode button{background-color:var(--color-bg-surface)!important;color:var(--color-text)!important;border:1px solid var(--color-border)!important;box-shadow:0 0 10px #8b5cf61a!important}[data-theme=cosmic] button.secondary:hover,[data-theme=cosmic] button:hover,body.cosmic-mode button.secondary:hover,body.cosmic-mode button:hover{background-color:var(--color-bg-hover)!important;border-color:var(--color-primary-light)!important;box-shadow:0 0 15px #8b5cf633!important;color:var(--color-primary-light)!important}[data-theme=cosmic] .timeline-container,[data-theme=cosmic] .main-panel,[data-theme=cosmic] .page-content,body.cosmic-mode .timeline-container,body.cosmic-mode .main-panel,body.cosmic-mode .page-content{background-color:var(--color-bg-surface)!important;border:1px solid var(--color-border)!important;box-shadow:0 4px 20px #8b5cf626!important;position:relative!important;overflow-x:auto!important;overflow-y:auto!important;color:var(--color-text)!important;scrollbar-width:none!important;-ms-overflow-style:none!important}[data-theme=cosmic] .timeline-container::-webkit-scrollbar,body.cosmic-mode .timeline-container::-webkit-scrollbar{display:none!important}html[data-theme=cosmic] .timeline-grid .header-cell,html[data-theme=cosmic] .timeline-grid .month-header,html[data-theme=cosmic] .header-cell,html[data-theme=cosmic] .month-header,html.cosmic-mode .timeline-grid .header-cell,html.cosmic-mode .timeline-grid .month-header,html.cosmic-mode .header-cell,html.cosmic-mode .month-header,[data-theme=cosmic] .timeline-grid .header-cell,[data-theme=cosmic] .timeline-grid .month-header,[data-theme=cosmic] .header-cell,[data-theme=cosmic] .month-header,body.cosmic-mode .timeline-grid .header-cell,body.cosmic-mode .timeline-grid .month-header,body.cosmic-mode .header-cell,body.cosmic-mode .month-header{position:sticky!important;top:0!important;z-index:30!important;background:linear-gradient(135deg,var(--color-bg-light) 0%,#2a1f5e 100%)!important;background-color:var(--color-bg-light)!important;background-image:radial-gradient(ellipse at center,rgba(139,92,246,.12) 0%,transparent 70%)!important;color:var(--color-text)!important;-webkit-backdrop-filter:blur(8px)!important;backdrop-filter:blur(8px)!important;border-top:1px solid rgba(139,92,246,.2)!important;border-bottom:1px solid rgba(139,92,246,.4)!important;border-left:none!important;border-right:none!important;box-shadow:0 2px 8px #0000004d,0 1px #8b5cf633 inset,0 -1px #0003 inset!important}[data-theme=cosmic] *[class*=header-cell],[data-theme=cosmic] *[class*=month-header],body.cosmic-mode *[class*=header-cell],body.cosmic-mode *[class*=month-header]{background:linear-gradient(135deg,var(--color-bg-light) 0%,#2a1f5e 100%)!important;background-color:var(--color-bg-light)!important;color:var(--color-text)!important;border-bottom:1px solid rgba(139,92,246,.4)!important}[data-theme=cosmic] .timeline-grid .corner-cell,body.cosmic-mode .timeline-grid .corner-cell{position:sticky!important;top:0!important;left:0!important;z-index:35!important;background:#0f1420f2!important;-webkit-backdrop-filter:blur(8px)!important;backdrop-filter:blur(8px)!important;border-bottom:1px solid rgba(139,92,246,.3)!important;border-right:1px solid rgba(139,92,246,.3)!important}[data-theme=cosmic] .timeline-header,[data-theme=cosmic] .timeline table th,body.cosmic-mode .timeline-header,body.cosmic-mode .timeline table th{background:linear-gradient(135deg,var(--color-bg-light) 0%,#2a1f5e 100%)!important;background-image:radial-gradient(ellipse at center,rgba(139,92,246,.12) 0%,transparent 70%)!important;color:var(--color-text)!important;border-top:1px solid rgba(139,92,246,.2)!important;border-bottom:1px solid rgba(139,92,246,.4)!important;border-left:none!important;border-right:none!important;box-shadow:0 2px 8px #0000004d,0 1px #8b5cf633 inset,0 -1px #0003 inset!important}[data-theme=cosmic] .timeline-header-container,body.cosmic-mode .timeline-header-container{-webkit-backdrop-filter:blur(8px)!important;backdrop-filter:blur(8px)!important;border-bottom:2px solid rgba(139,92,246,.4)!important}[data-theme=cosmic] .grid-cell.corner-cell,body.cosmic-mode .grid-cell.corner-cell{-webkit-backdrop-filter:blur(8px)!important;backdrop-filter:blur(8px)!important;border-right:1px solid rgba(139,92,246,.3)!important}[data-theme=cosmic] .timeline table td,[data-theme=cosmic] .timeline-cell,body.cosmic-mode .timeline table td,body.cosmic-mode .timeline-cell{background-color:var(--color-bg-surface)!important;border:1px solid var(--color-border-light)!important;color:var(--color-text)!important}[data-theme=cosmic] .timeline table tr:hover,[data-theme=cosmic] .timeline-row:hover,body.cosmic-mode .timeline table tr:hover,body.cosmic-mode .timeline-row:hover{background-color:#8b5cf60d!important}html[data-theme=cosmic] .side-nav-container,html[data-theme=cosmic] .nav,html.cosmic-mode .side-nav-container,html.cosmic-mode .nav,[data-theme=cosmic] .side-nav-container,[data-theme=cosmic] .nav,body.cosmic-mode .side-nav-container,body.cosmic-mode .nav{background:var(--color-bg-surface)!important;border-right:1px solid rgba(139,92,246,.3)!important;box-shadow:2px 0 12px #0003!important}html[data-theme=cosmic] .side-nav-container a,html[data-theme=cosmic] .side-nav-container button,html[data-theme=cosmic] .nav button,html[data-theme=cosmic] .nav button.active,html.cosmic-mode .side-nav-container a,html.cosmic-mode .side-nav-container button,html.cosmic-mode .nav button,html.cosmic-mode .nav button.active,[data-theme=cosmic] .side-nav-container a,[data-theme=cosmic] .side-nav-container button,[data-theme=cosmic] .nav button,[data-theme=cosmic] .nav button.active,body.cosmic-mode .side-nav-container a,body.cosmic-mode .side-nav-container button,body.cosmic-mode .nav button,body.cosmic-mode .nav button.active{color:var(--color-text-light)!important;background-color:transparent!important;background-image:none!important;background:transparent!important;border:none!important}html[data-theme=cosmic] .side-nav-container a:hover,html[data-theme=cosmic] .side-nav-container button:hover,html[data-theme=cosmic] .side-nav-container a.active,html[data-theme=cosmic] .side-nav-container button.active,html[data-theme=cosmic] .nav button:hover,html[data-theme=cosmic] .nav button.active,html.cosmic-mode .side-nav-container a:hover,html.cosmic-mode .side-nav-container button:hover,html.cosmic-mode .side-nav-container a.active,html.cosmic-mode .side-nav-container button.active,html.cosmic-mode .nav button:hover,html.cosmic-mode .nav button.active,[data-theme=cosmic] .side-nav-container a:hover,[data-theme=cosmic] .side-nav-container button:hover,[data-theme=cosmic] .side-nav-container a.active,[data-theme=cosmic] .side-nav-container button.active,body.cosmic-mode .side-nav-container a:hover,body.cosmic-mode .side-nav-container button:hover,body.cosmic-mode .side-nav-container a.active,body.cosmic-mode .side-nav-container button.active{color:var(--color-primary-light)!important;background:linear-gradient(135deg,#8b5cf626,#7c3aed1a)!important;box-shadow:0 0 15px #8b5cf633!important}[data-theme=cosmic] .main-panel,body.cosmic-mode .main-panel{background-color:var(--color-bg-body)!important;color:var(--color-text)!important}[data-theme=cosmic] input,[data-theme=cosmic] select,[data-theme=cosmic] textarea,body.cosmic-mode input,body.cosmic-mode select,body.cosmic-mode textarea{background-color:var(--color-bg-surface)!important;border:1px solid var(--color-border)!important;color:var(--color-text)!important}[data-theme=cosmic] input:focus,[data-theme=cosmic] select:focus,[data-theme=cosmic] textarea:focus,body.cosmic-mode input:focus,body.cosmic-mode select:focus,body.cosmic-mode textarea:focus{border-color:var(--color-primary-light)!important;box-shadow:0 0 0 2px #8b5cf633!important}[data-theme=cosmic] .modal-overlay,body.cosmic-mode .modal-overlay{background:radial-gradient(ellipse at center,#8b5cf61a,#ec48990d 30%,#000000b3 70%)!important}[data-theme=cosmic] .modal-content,[data-theme=cosmic] .modal-header,body.cosmic-mode .modal-content,body.cosmic-mode .modal-header{background:linear-gradient(135deg,var(--color-bg-surface) 0%,var(--color-bg-light) 100%)!important;color:var(--color-text)!important;border:2px solid var(--color-border)!important;box-shadow:0 20px 40px #8b5cf626,0 8px 20px #ec48991a,0 0 30px #8b5cf60d!important;background-image:radial-gradient(2px 2px at 10% 20%,rgba(255,255,255,.6),rgba(255,255,255,.2) 40%,transparent 60%),radial-gradient(1px 1px at 90% 80%,rgba(139,92,246,.7),rgba(139,92,246,.3) 35%,transparent 55%),linear-gradient(0deg,rgba(139,92,246,.1) 0%,transparent 10%,transparent 90%,rgba(139,92,246,.1) 100%);background-size:100px 80px,90px 70px,100% 100%;background-repeat:repeat,repeat,no-repeat}[data-theme=cosmic] .card,[data-theme=cosmic] .surface,body.cosmic-mode .card,body.cosmic-mode .surface{background-color:var(--color-bg-surface)!important;border:1px solid var(--color-border)!important;box-shadow:var(--shadow)!important}[data-theme=cosmic] .card:hover,body.cosmic-mode .card:hover{box-shadow:0 0 20px #8b5cf633!important;border-color:var(--color-border-dark)!important}[data-theme=cosmic] .app-layout,[data-theme=cosmic] .main-panel,[data-theme=cosmic] .page-content-inner,body.cosmic-mode .app-layout,body.cosmic-mode .main-panel,body.cosmic-mode .page-content-inner{background:transparent!important;color:var(--color-text)!important}[data-theme=cosmic] .app-layout:before,body.cosmic-mode .app-layout:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1;background-image:radial-gradient(2px 2px at 12% 15%,rgba(255,255,255,.9),rgba(255,255,255,.4) 1px,transparent 3px),radial-gradient(1px 1px at 25% 35%,rgba(255,255,255,.8),transparent),radial-gradient(2px 2px at 38% 8%,rgba(255,255,255,.7),rgba(255,255,255,.3) 1px,transparent 3px),radial-gradient(1px 1px at 52% 28%,rgba(255,255,255,.9),transparent),radial-gradient(2px 2px at 67% 45%,rgba(255,255,255,.6),rgba(255,255,255,.2) 1px,transparent 3px),radial-gradient(1px 1px at 78% 12%,rgba(255,255,255,.8),transparent),radial-gradient(1px 1px at 85% 62%,rgba(255,255,255,.7),transparent),radial-gradient(2px 2px at 92% 38%,rgba(255,255,255,.9),rgba(255,255,255,.4) 1px,transparent 3px);background-size:100% 100%;animation:starTwinkle1 8s ease-in-out infinite,starTwinkle2 12s ease-in-out infinite,starTwinkle3 6s ease-in-out infinite,starTwinkle4 10s ease-in-out infinite,starTwinkle5 9s ease-in-out infinite,starTwinkle6 7s ease-in-out infinite,starTwinkle7 11s ease-in-out infinite,starTwinkle8 5s ease-in-out infinite}[data-theme=cosmic] .app-layout:after,body.cosmic-mode .app-layout:after{content:"";position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1;background-image:radial-gradient(1px 1px at 18% 72%,rgba(255,255,255,.6),transparent),radial-gradient(2px 2px at 33% 55%,rgba(255,255,255,.8),rgba(255,255,255,.3) 1px,transparent 2px),radial-gradient(1px 1px at 48% 85%,rgba(255,255,255,.7),transparent),radial-gradient(1px 1px at 62% 18%,rgba(255,255,255,.9),transparent),radial-gradient(2px 2px at 75% 42%,rgba(255,255,255,.5),rgba(255,255,255,.2) 1px,transparent 2px),radial-gradient(1px 1px at 8% 58%,rgba(255,255,255,.8),transparent),radial-gradient(1px 1px at 95% 25%,rgba(255,255,255,.6),transparent);background-size:100% 100%;animation:starTwinkle3 13s ease-in-out infinite,starTwinkle6 9s ease-in-out infinite,starTwinkle2 15s ease-in-out infinite,starTwinkle7 7s ease-in-out infinite,starTwinkle4 11s ease-in-out infinite,starTwinkle1 6s ease-in-out infinite,starTwinkle5 14s ease-in-out infinite}[data-theme=cosmic] .page-content,[data-theme=cosmic] .page-content-inner,[data-theme=cosmic] .content-area,body.cosmic-mode .page-content,body.cosmic-mode .page-content-inner,body.cosmic-mode .content-area{background-color:var(--color-bg-body)!important;color:var(--color-text)!important}[data-theme=cosmic] .header,[data-theme=cosmic] .page-header,[data-theme=cosmic] .nav-header,[data-theme=cosmic] .app-header,[data-theme=cosmic] .top-nav,[data-theme=cosmic] .room-header,[data-theme=cosmic] .grid-cell.room-header,body.cosmic-mode .header,body.cosmic-mode .page-header,body.cosmic-mode .nav-header,body.cosmic-mode .app-header,body.cosmic-mode .top-nav,body.cosmic-mode .room-header,body.cosmic-mode .grid-cell.room-header{background-color:var(--color-bg-surface)!important;color:var(--color-text)!important;border-bottom:1px solid var(--color-border)!important;background-image:radial-gradient(2px 2px at 15% 30%,rgba(255,255,255,.8),rgba(255,255,255,.3) 40%,transparent 60%),radial-gradient(1px 1px at 85% 70%,rgba(139,92,246,.9),rgba(139,92,246,.4) 35%,transparent 55%),radial-gradient(2px 2px at 50% 15%,rgba(255,255,255,.7),rgba(255,255,255,.2) 45%,transparent 65%)!important;background-size:80px 60px,70px 50px,90px 65px!important;background-repeat:repeat!important;animation:headerSparkle 4s ease-in-out infinite!important}[data-theme=cosmic] .controls-bar,[data-theme=cosmic] .toolbar,[data-theme=cosmic] .control-panel,[data-theme=cosmic] .sub-controls-bar,body.cosmic-mode .controls-bar,body.cosmic-mode .toolbar,body.cosmic-mode .control-panel,body.cosmic-mode .sub-controls-bar{background-color:transparent!important;background-image:none!important;color:var(--color-text)!important;border:none!important}[data-theme=cosmic] table,[data-theme=cosmic] .grid,[data-theme=cosmic] .data-grid,[data-theme=cosmic] .timeline-grid,[data-theme=cosmic] .weekly-grid,body.cosmic-mode table,body.cosmic-mode .grid,body.cosmic-mode .data-grid,body.cosmic-mode .timeline-grid,body.cosmic-mode .weekly-grid{background-color:var(--color-bg-surface)!important;color:var(--color-text)!important;border:1px solid var(--color-border)!important}[data-theme=cosmic] .timeline-grid,[data-theme=cosmic] .weekly-grid,body.cosmic-mode .timeline-grid,body.cosmic-mode .weekly-grid{background-color:var(--color-bg-surface)!important}[data-theme=cosmic] thead,[data-theme=cosmic] th,body.cosmic-mode thead,body.cosmic-mode th{background-color:var(--color-bg-light)!important;color:var(--color-text)!important;border-bottom:2px solid var(--color-border)!important}[data-theme=cosmic] tbody tr,[data-theme=cosmic] td,body.cosmic-mode tbody tr,body.cosmic-mode td{background-color:var(--color-bg-surface)!important;color:var(--color-text)!important;border:1px solid var(--color-border-light)!important}[data-theme=cosmic] tbody tr:nth-child(2n),body.cosmic-mode tbody tr:nth-child(2n){background-color:#1a1a2eb3!important}[data-theme=cosmic] .grid-cell,[data-theme=cosmic] .calendar-cell,[data-theme=cosmic] .schedule-cell,body.cosmic-mode .grid-cell,body.cosmic-mode .calendar-cell,body.cosmic-mode .schedule-cell{background-color:var(--color-bg-surface)!important;border:1px solid var(--color-border-light)!important;color:var(--color-text)!important}[data-theme=cosmic] .empty-cell,body.cosmic-mode .empty-cell{background-color:#040408cc!important;border:1px solid var(--color-border-light)!important}[data-theme=cosmic] ul,[data-theme=cosmic] ol,[data-theme=cosmic] li,[data-theme=cosmic] .list-item,[data-theme=cosmic] .menu-item,body.cosmic-mode ul,body.cosmic-mode ol,body.cosmic-mode li,body.cosmic-mode .list-item,body.cosmic-mode .menu-item{background-color:inherit!important;color:var(--color-text)!important}[data-theme=cosmic] .panel,[data-theme=cosmic] .section,[data-theme=cosmic] .widget,[data-theme=cosmic] .component,body.cosmic-mode .panel,body.cosmic-mode .section,body.cosmic-mode .widget,body.cosmic-mode .component{background-color:var(--color-bg-surface)!important;color:var(--color-text)!important;border:1px solid var(--color-border)!important}[data-theme=cosmic] .info-card,[data-theme=cosmic] .card,[data-theme=cosmic] .info-panel,[data-theme=cosmic] .stats-card,[data-theme=cosmic] .detail-panel,body.cosmic-mode .info-card,body.cosmic-mode .card,body.cosmic-mode .info-panel,body.cosmic-mode .stats-card,body.cosmic-mode .detail-panel{background:linear-gradient(135deg,var(--color-bg-surface) 0%,var(--color-bg-light) 100%)!important;color:var(--color-text)!important;border:1px solid var(--color-border)!important;border-radius:6px!important;box-shadow:0 4px 12px #8b5cf626!important;background-image:radial-gradient(1px 1px at 15% 25%,rgba(255,255,255,.5),transparent),radial-gradient(1px 1px at 85% 75%,rgba(139,92,246,.4),transparent),linear-gradient(45deg,transparent 30%,rgba(139,92,246,.03) 50%,transparent 70%);background-size:80px 70px,90px 80px,100% 100%;background-repeat:repeat,repeat,no-repeat}[data-theme=cosmic] .dropdown,[data-theme=cosmic] .dropdown-menu,[data-theme=cosmic] .select-dropdown,body.cosmic-mode .dropdown,body.cosmic-mode .dropdown-menu,body.cosmic-mode .select-dropdown{background-color:var(--color-bg-surface)!important;color:var(--color-text)!important;border:1px solid var(--color-border)!important;box-shadow:0 4px 12px #0000004d!important}[data-theme=cosmic] .notification,[data-theme=cosmic] .alert,[data-theme=cosmic] .toast,body.cosmic-mode .notification,body.cosmic-mode .alert,body.cosmic-mode .toast{background-color:var(--color-bg-surface)!important;color:var(--color-text)!important;border:1px solid var(--color-border)!important}[data-theme=cosmic] .label,[data-theme=cosmic] .badge,[data-theme=cosmic] .tag,body.cosmic-mode .label,body.cosmic-mode .badge,body.cosmic-mode .tag{background-color:var(--color-primary-bg)!important;color:var(--color-text)!important}[data-theme=cosmic] .tab,[data-theme=cosmic] .tab-button,[data-theme=cosmic] .tab-nav,body.cosmic-mode .tab,body.cosmic-mode .tab-button,body.cosmic-mode .tab-nav{background-color:var(--color-bg-light)!important;color:var(--color-text-light)!important;border:1px solid var(--color-border)!important}[data-theme=cosmic] .tab.active,[data-theme=cosmic] .tab-button.active,body.cosmic-mode .tab.active,body.cosmic-mode .tab-button.active{background-color:var(--color-bg-surface)!important;color:var(--color-text)!important;border-bottom-color:var(--color-primary)!important}[data-theme=cosmic] .status-badge,[data-theme=cosmic] .indicator,body.cosmic-mode .status-badge,body.cosmic-mode .indicator{background-color:var(--color-primary-bg)!important;color:var(--color-text)!important}[data-theme=cosmic] .loading,[data-theme=cosmic] .progress,[data-theme=cosmic] .spinner,body.cosmic-mode .loading,body.cosmic-mode .progress,body.cosmic-mode .spinner{background-color:var(--color-bg-surface)!important}[data-theme=cosmic] hr,[data-theme=cosmic] .divider,[data-theme=cosmic] .separator,body.cosmic-mode hr,body.cosmic-mode .divider,body.cosmic-mode .separator{border-color:var(--color-border)!important;background-color:var(--color-border)!important}[data-theme=cosmic] *::-webkit-scrollbar,body.cosmic-mode *::-webkit-scrollbar{display:none}[data-theme=cosmic] *,body.cosmic-mode *{scrollbar-width:none;-ms-overflow-style:none}@keyframes starTwinkle1{0%,94%,to{opacity:0}2%,8%{opacity:1}}@keyframes starTwinkle2{0%,88%,to{opacity:0}12%,18%{opacity:1}}@keyframes starTwinkle3{0%,82%,to{opacity:0}22%,28%{opacity:1}}@keyframes starTwinkle4{0%,76%,to{opacity:0}32%,38%{opacity:1}}@keyframes starTwinkle5{0%,70%,to{opacity:0}42%,48%{opacity:1}}@keyframes starTwinkle6{0%,64%,to{opacity:0}52%,58%{opacity:1}}@keyframes starTwinkle7{0%,58%,to{opacity:0}62%,68%{opacity:1}}@keyframes starTwinkle8{0%,52%,to{opacity:0}72%,78%{opacity:1}}@keyframes cosmicDrift{0%{background-position:-800px 20%,1200px 80%,0% 0%,0% 100%}to{background-position:800px 20%,-1200px 80%,0% 0%,0% 100%}}@keyframes subtleGlow{0%,to{box-shadow:0 0 5px #8b5cf633}50%{box-shadow:0 0 15px #8b5cf666}}[data-theme=cosmic] .app-layout,body.cosmic-mode .app-layout{animation:cosmicDrift 60s linear infinite}[data-theme=cosmic] button.primary,body.cosmic-mode button.primary{animation:subtleGlow 3s ease-in-out infinite}[data-theme=cosmic] .meal-label,body.cosmic-mode .meal-label{color:var(--color-text-light)!important}[data-theme=cosmic] .meal-item-name,body.cosmic-mode .meal-item-name{color:var(--color-text)!important;text-shadow:none!important}[data-theme=cosmic] .meal-inventory-sidebar,[data-theme=cosmic] .meal-shopping-list-sidebar,body.cosmic-mode .meal-inventory-sidebar,body.cosmic-mode .meal-shopping-list-sidebar{background:var(--color-bg-surface)!important;color:var(--color-text)!important;border-color:var(--color-border)!important}[data-theme=cosmic] .inventory-item,body.cosmic-mode .inventory-item{background-color:var(--color-bg-light)!important;color:var(--color-text)!important;border-color:var(--color-border-light)!important}[data-theme=cosmic] .react-joyride__tooltip,body.cosmic-mode .react-joyride__tooltip{background:linear-gradient(135deg,var(--color-bg-surface) 0%,var(--color-bg-light) 100%)!important;color:var(--color-text)!important;border:2px solid var(--color-primary)!important;box-shadow:0 20px 40px #8b5cf64d,0 8px 20px #ec489933,0 0 30px #8b5cf626!important}[data-theme=cosmic] .react-joyride__tooltip *,body.cosmic-mode .react-joyride__tooltip *{color:var(--color-text)!important}[data-theme=cosmic] .react-joyride__tooltip h1,[data-theme=cosmic] .react-joyride__tooltip h2,[data-theme=cosmic] .react-joyride__tooltip h3,body.cosmic-mode .react-joyride__tooltip h1,body.cosmic-mode .react-joyride__tooltip h2,body.cosmic-mode .react-joyride__tooltip h3{color:var(--color-primary-light)!important}[data-theme=cosmic] .react-joyride__tooltip button,body.cosmic-mode .react-joyride__tooltip button{background-color:var(--color-primary)!important;color:#fff!important;border:none!important;box-shadow:0 4px 15px #8b5cf666!important}[data-theme=cosmic] .react-joyride__tooltip button:hover,body.cosmic-mode .react-joyride__tooltip button:hover{background-color:var(--color-primary-light)!important;box-shadow:0 6px 20px #8b5cf6b3!important}[data-theme=cosmic] .react-joyride__tooltip button[aria-label*=Close],[data-theme=cosmic] .react-joyride__tooltip button[data-action=close],body.cosmic-mode .react-joyride__tooltip button[aria-label*=Close],body.cosmic-mode .react-joyride__tooltip button[data-action=close]{width:24px!important;height:24px!important;padding:0!important;min-width:24px!important}[data-theme=cosmic] .react-joyride__tooltip button[aria-label*=Close] svg,[data-theme=cosmic] .react-joyride__tooltip button[data-action=close] svg,body.cosmic-mode .react-joyride__tooltip button[aria-label*=Close] svg,body.cosmic-mode .react-joyride__tooltip button[data-action=close] svg{width:12px!important;height:12px!important}[data-theme=cosmic] .react-joyride__overlay,body.cosmic-mode .react-joyride__overlay{background:radial-gradient(ellipse at center,#8b5cf626,#ec48991a 30%,#000c 70%)!important}[data-theme=cosmic] .over-capacity,[data-theme=cosmic] .capacity-cell.over-capacity,body.cosmic-mode .over-capacity,body.cosmic-mode .capacity-cell.over-capacity{background-color:#4a1a1a!important;color:#fca5a5!important;font-weight:700}[data-theme=cosmic] .ratio-rules-editor,body.cosmic-mode .ratio-rules-editor{background-color:transparent}[data-theme=cosmic] .ratio-rule-item,body.cosmic-mode .ratio-rule-item{background:var(--color-bg-surface)!important;border-color:var(--color-border)!important}[data-theme=cosmic] .ratio-rule-item span,body.cosmic-mode .ratio-rule-item span{color:var(--color-text)!important}[data-theme=cosmic] .ratio-rule-item .age-input,[data-theme=cosmic] .ratio-rule-item .ratio-input,body.cosmic-mode .ratio-rule-item .age-input,body.cosmic-mode .ratio-rule-item .ratio-input{background:var(--color-bg-light)!important;border-color:var(--color-border)!important;color:var(--color-text)!important}[data-theme=cosmic] .ratio-rule-item .age-input:read-only,body.cosmic-mode .ratio-rule-item .age-input:read-only{background:var(--color-bg-hover)!important;color:var(--color-text-muted)!important}[data-theme=cosmic] .sidebar-toggle,body.cosmic-mode .sidebar-toggle{background-color:var(--color-bg-hover)!important;color:var(--color-text)!important;border-color:var(--color-border)!important}[data-theme=cosmic] .sidebar-toggle:hover,body.cosmic-mode .sidebar-toggle:hover{background-color:var(--color-bg-light)!important}[data-theme=cosmic] .meal-shopping-list-sidebar,[data-theme=cosmic] .meal-inventory-sidebar,body.cosmic-mode .meal-shopping-list-sidebar,body.cosmic-mode .meal-inventory-sidebar{background-color:var(--color-bg-surface)!important;border-color:var(--color-border)!important}[data-theme=cosmic] .inventory-category h4,body.cosmic-mode .inventory-category h4{color:var(--color-text-light)!important}[data-theme=cosmic] thead,[data-theme=cosmic] thead th,body.cosmic-mode thead,body.cosmic-mode thead th{background-color:var(--color-bg-light)!important;color:var(--color-text)!important;border-color:var(--color-border)!important}[data-theme=cosmic] ::-webkit-scrollbar,body.cosmic-mode ::-webkit-scrollbar{width:12px;height:12px}[data-theme=cosmic] ::-webkit-scrollbar-track,body.cosmic-mode ::-webkit-scrollbar-track{background:var(--color-bg-surface)}[data-theme=cosmic] ::-webkit-scrollbar-thumb,body.cosmic-mode ::-webkit-scrollbar-thumb{background:var(--color-bg-hover);border-radius:6px}[data-theme=cosmic] ::-webkit-scrollbar-thumb:hover,body.cosmic-mode ::-webkit-scrollbar-thumb:hover{background:var(--color-border-dark)}[data-theme=cosmic] .inventory-modal button,[data-theme=cosmic] .inventory-actions button,body.cosmic-mode .inventory-modal button,body.cosmic-mode .inventory-actions button{background-color:var(--color-bg-light)!important;color:var(--color-text)!important;border-color:var(--color-border)!important}[data-theme=cosmic] .inventory-modal button:hover,[data-theme=cosmic] .inventory-actions button:hover,body.cosmic-mode .inventory-modal button:hover,body.cosmic-mode .inventory-actions button:hover{background-color:var(--color-bg-hover)!important}[data-theme=cosmic] .inventory-modal button.primary-btn,[data-theme=cosmic] .inventory-actions button.primary-btn,body.cosmic-mode .inventory-modal button.primary-btn,body.cosmic-mode .inventory-actions button.primary-btn{background-color:var(--color-primary)!important;color:#fff!important}[data-theme=cosmic] .schedule-item,[data-theme=cosmic] .extracurricular-schedule-item,body.cosmic-mode .schedule-item,body.cosmic-mode .extracurricular-schedule-item{background-color:var(--color-bg-surface)!important;border-color:var(--color-border)!important;color:var(--color-text)!important}[data-theme=cosmic] .schedule-item:hover,[data-theme=cosmic] .extracurricular-schedule-item:hover,body.cosmic-mode .schedule-item:hover,body.cosmic-mode .extracurricular-schedule-item:hover{background-color:var(--color-bg-hover)!important}[data-theme=cosmic] .schedule-item-text,[data-theme=cosmic] .schedule-item span,[data-theme=cosmic] .schedule-item .schedule-capacity,[data-theme=cosmic] .bar-schedule-text,body.cosmic-mode .schedule-item-text,body.cosmic-mode .schedule-item span,body.cosmic-mode .schedule-item .schedule-capacity,body.cosmic-mode .bar-schedule-text{color:var(--color-text)!important}[data-theme=cosmic] .schedule-item .icon-btn,body.cosmic-mode .schedule-item .icon-btn{color:var(--color-text-light)!important}[data-theme=cosmic] .schedule-item-edit-btn,body.cosmic-mode .schedule-item-edit-btn{color:var(--color-info)!important}[data-theme=cosmic] .schedule-item-delete-btn,body.cosmic-mode .schedule-item-delete-btn{color:var(--color-error)!important}[data-theme=cosmic] .column-selector-dropdown,body.cosmic-mode .column-selector-dropdown{background-color:var(--color-bg-surface)!important;border-color:var(--color-border)!important;color:var(--color-text)!important}[data-theme=cosmic] .column-selector-dropdown label,body.cosmic-mode .column-selector-dropdown label{color:var(--color-text)!important}[data-theme=cosmic] .column-selector-dropdown input[type=checkbox],body.cosmic-mode .column-selector-dropdown input[type=checkbox]{accent-color:var(--color-primary)}[data-theme=cosmic] .widget-modal,body.cosmic-mode .widget-modal{background:linear-gradient(135deg,var(--color-bg-surface) 0%,var(--color-bg-light) 100%)!important;color:var(--color-text)!important;border:2px solid var(--color-border)!important;box-shadow:0 0 30px #8b5cf64d,0 20px 60px #00000080!important}[data-theme=cosmic] .widget-modal-header,body.cosmic-mode .widget-modal-header{border-bottom-color:var(--color-border)!important}[data-theme=cosmic] .widget-modal-header h2,body.cosmic-mode .widget-modal-header h2{color:var(--color-text)!important}[data-theme=cosmic] .widget-modal-close,body.cosmic-mode .widget-modal-close{background:var(--color-bg-light)!important;color:var(--color-text-muted)!important}[data-theme=cosmic] .widget-modal-close:hover,body.cosmic-mode .widget-modal-close:hover{background:var(--color-bg-hover)!important;color:var(--color-text)!important}[data-theme=pink],body.pink-mode{--color-bg-body: #fdf0f7;--color-bg-surface: #ffffff;--color-bg-light: #fce7f3;--color-bg-hover: #fbcfe8;--color-bg-active-link: #fce7f3;--color-text: #5b0a36;--color-text-light: #a21caf;--color-text-muted: #d946ef;--color-border: #f9a8d4;--color-border-light: #fbcfe8;--color-border-dark: #f472b6;--color-primary: #e0218a;--color-primary-hover: #be185d;--color-primary-light: #f472b6;--color-primary-dark: #be185d;--color-primary-bg: #fdf0f7;--color-success: #059669;--color-warning: #f59e0b;--color-error: #ef4444;--color-info: #3b82f6;--shadow-sm: 0 1px 2px 0 rgba(224, 33, 138, .07);--shadow: 0 2px 4px -1px rgba(224, 33, 138, .1), 0 1px 3px 0 rgba(224, 33, 138, .08);--shadow-lg: 0 10px 15px -3px rgba(224, 33, 138, .1), 0 4px 6px -2px rgba(224, 33, 138, .07);background:var(--color-bg-body)!important;color:var(--color-text)!important}[data-theme=pink] button.primary,body.pink-mode button.primary{background-color:var(--color-primary)!important;color:#fff!important;border:none!important;box-shadow:var(--shadow)!important}[data-theme=pink] button.primary:hover,body.pink-mode button.primary:hover{background-color:var(--color-primary-light)!important;box-shadow:var(--shadow-lg)!important;transform:translateY(-1px)!important}[data-theme=pink] .timeline-grid .header-cell,[data-theme=pink] .timeline-grid .month-header,[data-theme=pink] .header-cell,[data-theme=pink] .month-header,body.pink-mode .timeline-grid .header-cell,body.pink-mode .timeline-grid .month-header,body.pink-mode .header-cell,body.pink-mode .month-header{background-color:var(--color-primary)!important;color:#fff!important;font-weight:600!important;border-bottom:2px solid var(--color-primary-dark)!important;box-shadow:none!important}[data-theme=pink] .modal-content,[data-theme=pink] .card,[data-theme=pink] .panel,[data-theme=pink] .surface,body.pink-mode .modal-content,body.pink-mode .card,body.pink-mode .panel,body.pink-mode .surface{background-color:var(--color-bg-surface)!important;border:1px solid var(--color-primary)!important;box-shadow:var(--shadow-lg)!important}[data-theme=pink] input,[data-theme=pink] select,[data-theme=pink] textarea,body.pink-mode input,body.pink-mode select,body.pink-mode textarea{background-color:var(--color-bg-surface)!important;border:1px solid var(--color-border)!important;color:var(--color-text)!important}[data-theme=pink] input:focus,[data-theme=pink] select:focus,[data-theme=pink] textarea:focus,body.pink-mode input:focus,body.pink-mode select:focus,body.pink-mode textarea:focus{border-color:var(--color-primary)!important;box-shadow:0 0 0 3px #e0218a33!important}[data-theme=pink] .nav button.active,body.pink-mode .nav button.active{background-color:var(--color-bg-active-link)!important;color:var(--color-primary-dark)!important;font-weight:600!important;border-left-color:var(--color-primary)!important}[data-theme=pink] .month-header-year,body.pink-mode .month-header-year{color:#fff!important;opacity:.8!important}[data-theme=pink] .meal-inventory-sidebar,[data-theme=pink] .meal-shopping-list-sidebar,body.pink-mode .meal-inventory-sidebar,body.pink-mode .meal-shopping-list-sidebar{background-color:var(--color-bg-surface)!important;color:var(--color-text)!important;border-color:var(--color-border)!important}[data-theme=pink] .inventory-item,body.pink-mode .inventory-item{background-color:var(--color-bg-body)!important;color:var(--color-text)!important;border-color:var(--color-border-light)!important}[data-theme=pink] .inventory-category h4,body.pink-mode .inventory-category h4{color:var(--color-text-light)!important}
