:root,[data-theme=light]{--brand-atomic-tangerine: #FE6B34;--brand-vintage-grape: #46375B;--brand-white: #FEFFFF;--bg-primary: #FEFFFF;--bg-secondary: #F8F6FA;--bg-tertiary: #F0EDF4;--bg-elevated: #FEFFFF;--bg-overlay: rgba(70, 55, 91, .5);--surface-primary: #FEFFFF;--surface-secondary: #F8F6FA;--surface-hover: #fef1e6;--text-primary: #2c3e45;--text-secondary: #7a8a8f;--text-tertiary: #9ea9ad;--text-quaternary: #2c383d;--text-inverse: #FEFFFF;--text-muted: #7A6B8F;--border-primary: #c8c1d2;--border-secondary: #D4CDE0;--border-focus: #FE6B34;--primary-color: #FE6B34;--primary-hover: #E55A2B;--primary-light: #FFEEE7;--primary-dark: #D14A1C;--secondary-color: #46375B;--secondary-hover: #362A47;--secondary-light: #F0EDF4;--success-color: #10b981;--success-bg: #d1fae5;--success-text: #065f46;--success-border: #a7f3d0;--chip-teal-text: #0e7490;--chip-teal-bg: rgba(14, 116, 144, .12);--warning-color: #f59e0b;--warning-bg: #fef3c7;--warning-text: #92400e;--warning-border: #fcd34d;--error-color: #ef4444;--error-bg: #fee2e2;--error-text: #FF2C2C;--error-border: #fecaca;--info-color: #FE6B34;--info-bg: #FFEEE7;--info-text: #D14A1C;--info-border: #FFB89E;--hover-bg: #fef1e6;--active-bg: #E5E0EC;--focus-ring: rgba(254, 107, 52, .4);--shadow-sm: 0 1px 2px 0 rgba(70, 55, 91, .05);--shadow-md: 0 4px 6px -1px rgba(70, 55, 91, .1), 0 2px 4px -1px rgba(70, 55, 91, .06);--shadow-lg: 0 10px 15px -3px rgba(70, 55, 91, .1), 0 4px 6px -2px rgba(70, 55, 91, .05);--shadow-xl: 0 20px 25px -5px rgba(70, 55, 91, .1), 0 10px 10px -5px rgba(70, 55, 91, .04);--shadow-card: 0 4px 12px rgba(74, 64, 58, .08);--card-bg: #FEFFFF;--card-border: #E5E0EC;--input-bg: #FFFFFF;--input-border: #D4CDE0;--input-focus-border: #FE6B34;--input-placeholder: #7A6B8F;--input-disabled-bg: #F8F6FA;--table-header-bg: #F8F6FA;--table-row-hover: #F0EDF4;--table-border: #E5E0EC;--sidebar-bg: #46375B;--sidebar-text: #D4CDE0;--sidebar-text-active: #FEFFFF;--sidebar-hover: rgba(255, 255, 255, .1);--sidebar-active: rgba(254, 107, 52, .2);--header-bg: #FEFFFF;--header-border: #E5E0EC;--modal-bg: #FEFFFF;--modal-overlay: rgba(70, 55, 91, .5);--spinner-track: #E5E0EC;--spinner-fill: #FE6B34;--scrollbar-track: #f5f0eb;--scrollbar-thumb: #ede8e2;--scrollbar-thumb-hover: #ede8e2;--body-background: #f5f0e8;--card-background: #fffdf9;--accent-orange: #f4a261;--accent-orange-hover: #e79552;--accent-orange-btn-background: rgb(242 153 83 / .1);--accent-orange-btn-hover: rgb(242 153 83 / .2);--accent-coral: #e87152;--chip-orange-bg: #fef1e6;--chip-purple-bg: #eee9f5;--purple-text: #8b79b3;--cal-day-background: rgba(74, 64, 58, .03);--warm-tint-bg: rgba(180, 83, 9, .08);--warm-tint-border: rgba(180, 83, 9, .25)}[data-theme=dark]{--brand-atomic-tangerine: #FE6B34;--brand-vintage-grape: #46375B;--brand-white: #FEFFFF;--bg-primary: #1E1730;--bg-secondary: #1a2f3a;--bg-tertiary: #362D4A;--bg-elevated: #2A2240;--bg-overlay: rgba(0, 0, 0, .7);--surface-primary: #2A2240;--surface-secondary: #3d3b36;--surface-hover: rgba(255, 255, 255, .05);--text-primary: #F8F9FA;--text-secondary: #A9B7BC;--text-tertiary: #5D7A85;--text-quaternary: #2c383d;--text-inverse: #1E1730;--text-muted: #7A6B8F;--border-primary: #9ea9ad;--border-secondary: #f4a261;--border-focus: #FF7A47;--primary-color: #f4a261;--primary-hover: #e79552;--primary-light: #3D2A35;--primary-dark: #FF9B70;--secondary-color: var(--text-tertiary);--secondary-hover: #bb8a61;--secondary-light: #362D4A;--success-color: #34d399;--sage-green: #6aab8e;--success-bg: rgba(34, 197, 94, .15);--success-text: #a7f3d0;--success-border: #065f46;--chip-teal-text: #57b9db;--chip-teal-bg: rgba(74, 158, 187, .15);--warning-color: #fbbf24;--warning-bg: #3D3020;--warning-text: #fde68a;--warning-border: #92400e;--error-color: #f87171;--error-bg: #3D2020;--error-text: #f87171;--error-border: rgba(239, 68, 68, .2);--error-hover: rgb(240 99 113 / 21%);--info-color: #FF7A47;--info-bg: #3D2A35;--info-text: #FFB89E;--info-border: #D14A1C;--hover-bg: rgba(255, 255, 255, .05);--active-bg: #4D4365;--focus-ring: rgba(255, 122, 71, .4);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4), 0 2px 4px -1px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .4), 0 4px 6px -2px rgba(0, 0, 0, .3);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .4), 0 10px 10px -5px rgba(0, 0, 0, .3);--shadow-card: 0 4px 12px rgba(74, 64, 58, .08);--card-bg: #0f2530;--card-border: #2a4450;--input-bg: #1a2f3a;--input-border: #2a4450;--input-focus-border: #f4a261;--input-placeholder: #5D7A85;--input-disabled-bg: #142934;--table-header-bg: #362D4A;--table-row-hover: rgba(255,255,255,.05);--table-border: #4D4365;--sidebar-bg: #150F22;--sidebar-text: #A89BB8;--sidebar-text-active: #F5F3F7;--sidebar-hover: rgba(255, 255, 255, .05);--sidebar-active: rgba(255, 122, 71, .2);--header-bg: #2A2240;--header-border: #3D3355;--modal-bg: #091820;--modal-overlay: rgba(0, 0, 0, .7);--spinner-track: #3D3355;--spinner-fill: #FF7A47;--scrollbar-track: #091820;--scrollbar-thumb: #0f2530;--scrollbar-thumb-hover: #0f2530;--body-background: #091820;--card-background: #0f2530;--cal-day-background: #142934;--accent-orange: #f4a261;--accent-orange-hover: #e79552;--accent-orange-btn-background: rgb(242 153 83 / .1);--accent-orange-btn-hover: rgb(242 153 83 / .2);--accent-coral: #e87152;--chip-orange-bg: #3d3b36;--chip-orange-border: #544b3f;--chip-purple-bg: #2d2a3d;--purple-text: #b19fd9;--warm-tint-bg: rgba(156, 87, 23, .2);--warm-tint-border: rgba(244, 162, 97, .3)}html{transition:background-color .3s ease,color .3s ease}body,.layout,.layout-content,.header,.sidebar,.card,.modal-content,.table,input,select,textarea,button{transition:background-color .3s ease,border-color .3s ease,color .3s ease}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 2rem;color:var(--text-tertiary);gap:1rem;background:transparent}.empty-state-icon{font-size:3rem;opacity:.5;margin-bottom:.5rem}.empty-state-title{font-size:1.25rem;font-weight:600;color:var(--text-secondary);margin-bottom:.5rem}.empty-state-message{font-size:.95rem;color:var(--text-tertiary);max-width:400px;line-height:1.5}.empty-state-action{margin-top:1rem}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 2rem;color:var(--text-tertiary);gap:1rem}.loading-spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--accent-orange);border-radius:50%;animation:spin .8s linear infinite}.loading-message{font-size:.95rem;color:var(--text-tertiary)}.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 2rem;color:var(--error-color, #ef4444);gap:1rem}.error-state-icon{font-size:3rem;opacity:.7}.error-state-title{font-size:1.25rem;font-weight:600;color:var(--error-color, #ef4444)}.error-state-message{font-size:.95rem;color:var(--text-secondary);max-width:400px;line-height:1.5}.error-state-action{margin-top:1rem}.form-group{display:flex;flex-direction:column;margin-bottom:1.25rem;gap:.5rem;background:var(--card-background);padding:1rem 2rem;border-radius:16px}.form-group label{font-size:.875rem;font-weight:500;color:var(--text-primary);margin-bottom:.25rem}.form-group input,.form-group textarea,.form-group select{border:1px solid var(--border-color);border-radius:8px;font-size:.95rem;background:var(--input-bg);color:var(--text-primary);transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.form-group input:disabled,.form-group textarea:disabled,.form-group select:disabled{opacity:.6;cursor:not-allowed;background:var(--surface-secondary)}.form-group .error-message{font-size:.8rem;color:var(--error-color, #ef4444);margin-top:.25rem}.form-group .help-text{font-size:.8rem;color:var(--text-tertiary);margin-top:.25rem}.btn{border:none;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:3px 10px;font-size:12px;border-radius:6px;line-height:1.4;height:30px;min-height:unset;align-self:center}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--accent-orange);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-orange-hover)}.btn-outline{background:transparent;border:1px solid var(--border-color);color:var(--text-primary)}.btn-outline:hover:not(:disabled){background:var(--surface-secondary);border-color:var(--accent-orange)}.card{background:var(--card-background);border-radius:12px;padding:1.5rem;transition:all .2s}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color)}.card-title{font-size:1.25rem;font-weight:600;color:var(--text-primary)}.card-body{color:var(--text-secondary)}.card-footer{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border-color);display:flex;align-items:center;justify-content:flex-end;gap:.75rem}.card-hover:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000001a}.badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:500}.badge-orange{background:var(--chip-orange-bg);color:var(--accent-orange)}.badge-purple{background:var(--chip-purple-bg);color:var(--purple-text)}.badge-success{background:#22c55e1a;color:#22c55e}.badge-error{background:#ef44441a;color:#ef4444}.badge-info{background:#fe6b3426;color:#3b82f6}.modal-content{background:var(--card-background);border-radius:12px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid var(--border-color)}.modal-title{font-size:1.5rem;font-weight:600;color:var(--text-primary)}.modal-close{background:transparent;border:none;font-size:1.5rem;color:var(--text-tertiary);cursor:pointer;padding:.25rem;line-height:1;transition:color .2s}.modal-close:hover{color:var(--text-primary)}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding:1.5rem;border-top:1px solid var(--border-color)}.table-container{overflow-x:auto;border-radius:12px;background:var(--card-background)}.table thead{background:var(--surface-secondary)}.table th{padding:1rem;text-align:left;font-size:.875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.table td{padding:1rem;border-top:1px solid var(--border-color);color:var(--text-primary)}.table tbody tr:hover{background:var(--surface-secondary)}.list{list-style:none;padding:0;margin:0}.list-item{padding:1rem;border-bottom:1px solid var(--border-color);display:flex;align-items:center;gap:1rem;transition:background .2s}.list-item:last-child{border-bottom:none}.list-item:hover{background:var(--surface-secondary)}.list-item-content{flex:1}.list-item-title{font-weight:500;color:var(--text-primary);margin-bottom:.25rem}.list-item-subtitle{font-size:.875rem;color:var(--text-tertiary)}.divider{height:1px;background:var(--border-color);margin:1.5rem 0}.divider-vertical{width:1px;background:var(--border-color);margin:0 1rem}.flex-column{flex-direction:column}.gap-sm{gap:.5rem}.gap-md{gap:1rem}.gap-lg{gap:1.5rem}.mt-sm{margin-top:.5rem}.mt-md{margin-top:1rem}.mt-lg{margin-top:1.5rem}.mt-xl{margin-top:2rem}.mb-sm{margin-bottom:.5rem}.mb-md{margin-bottom:1rem}.mb-lg{margin-bottom:1.5rem}.mb-xl{margin-bottom:2rem}.p-sm{padding:.5rem}.p-md{padding:1rem}.p-lg{padding:1.5rem}.p-xl{padding:2rem}.spinner,.loading-spinner{border-radius:50%;border-style:solid;border-color:var(--spinner-track, #e5e7eb);border-top-color:var(--spinner-fill, #3b82f6);animation:spin 1s linear infinite}.spinner-xs,.loading-spinner-xs{width:12px;height:12px;border-width:2px}.spinner-small,.loading-spinner-small{width:16px;height:16px;border-width:2px}.spinner-sm,.loading-spinner-sm{width:24px;height:24px;border-width:2px}.spinner,.loading-spinner,.spinner-medium,.loading-spinner-medium{width:32px;height:32px;border-width:3px}.spinner-lg,.loading-spinner-lg{width:40px;height:40px;border-width:4px}.spinner-large,.loading-spinner-large,.spinner-xl,.loading-spinner-xl{width:48px;height:48px;border-width:4px}.spinner-primary,.loading-spinner-primary{border-color:var(--spinner-track, #e5e7eb);border-top-color:var(--primary-color, #3b82f6)}.spinner-secondary,.loading-spinner-secondary{border-color:var(--spinner-track, #e5e7eb);border-top-color:var(--secondary-color, #6b7280)}.spinner-success,.loading-spinner-success{border-color:var(--success-bg, #d1fae5);border-top-color:var(--success-color, #10b981)}.spinner-warning,.loading-spinner-warning{border-color:var(--warning-bg, #fef3c7);border-top-color:var(--warning-color, #f59e0b)}.spinner-danger,.loading-spinner-danger{border-color:var(--error-bg, #fee2e2);border-top-color:var(--error-color, #ef4444)}.spinner-white,.loading-spinner-white{border-color:#ffffff4d;border-top-color:#fff}.spinner-brand,.loading-spinner-brand{border-color:var(--spinner-track, #e5e7eb);border-top-color:#667eea}.loading-spinner-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;gap:16px}.loading-spinner-fullscreen{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background-color:var(--bg-overlay, rgba(255, 255, 255, .9));z-index:9998}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem;min-height:200px;color:var(--text-secondary, #6b7280)}.loading-state .spinner,.loading-state .loading-spinner{margin:0 auto 1rem}.page-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;padding:3rem;background:transparent}.page-loading .spinner{margin-bottom:1rem}.page-loading p{color:var(--text-secondary, #6b7280);font-size:16px;margin:0}.loading-centered{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;min-height:200px;gap:1rem;color:var(--text-secondary, #6b7280)}.loading-centered .loading-spinner{margin:0}.spinner-message,.loading-message{font-size:14px;color:var(--text-secondary, #6b7280);text-align:center;margin:0}.spinner-inline{display:inline-block;width:14px;height:14px;border-width:2px;vertical-align:middle;margin-right:6px}.loading-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background-color:var(--bg-overlay, rgba(255, 255, 255, .8));-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:10;border-radius:inherit}.loading-overlay-content{display:flex;flex-direction:column;align-items:center;gap:16px;padding:24px;background-color:var(--bg-primary, white);border-radius:8px;box-shadow:var(--shadow-lg, 0 4px 12px rgba(0, 0, 0, .1))}.progress-bar{width:100%;height:8px;background-color:var(--border-primary, #e5e7eb);border-radius:4px;overflow:hidden}.progress-bar-fill{height:100%;background-color:var(--primary-color, #3b82f6);transition:width .3s ease;border-radius:4px}.progress-text{font-size:12px;color:var(--text-secondary, #6b7280);text-align:center;margin-top:8px}@media(prefers-reduced-motion:reduce){.spinner,.loading-spinner,.spinner-small,.loading-spinner-small,.spinner-xs,.spinner-sm,.spinner-lg,.spinner-xl,.spinner-large,.spinner-medium,.loading-spinner-xs,.loading-spinner-sm,.loading-spinner-lg,.loading-spinner-xl,.loading-spinner-large,.loading-spinner-medium,.spinner-inline{animation:none}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:3px 10px;border:none;border-radius:6px;font-size:12px;font-weight:500;line-height:1.4;height:30px;min-height:unset;align-self:center;cursor:pointer;transition:all .2s ease;text-decoration:none;white-space:nowrap}.btn:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px}.btn-xs{padding:.25rem .5rem;font-size:.75rem}.btn-sm{padding:.375rem .75rem;font-size:.8125rem}.btn-lg{padding:.75rem 1.5rem;font-size:1rem}.btn-xl{padding:1rem 2rem;font-size:1.125rem}.btn-primary{background-color:var(--primary-color, #FE6B34);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--primary-hover, #E55A2B)}.btn-secondary{background-color:var(--body-background);color:var(--text-secondary);border:1px solid var(--border-primary)!important}.btn-secondary:hover:not(:disabled){background-color:var(--hover-bg)}.btn-text{background-color:transparent;color:var(--text-primary);border:1px solid var(--border-primary)!important}.btn-text:hover:not(:disabled){background-color:var(--hover-bg);border-color:var(--text-secondary)!important}.btn-success{background-color:var(--success-bg);border:1px solid var(--success-color)!important;color:var(--success-color)}.btn-success:hover:not(:disabled){background-color:#2dff7a26}.btn-warning{background-color:var(--warning-color, #f59e0b);color:#fff}.btn-warning:hover:not(:disabled){background-color:#d97706}.btn-danger{color:var(--error-text);border:1px solid var(--error-text)!important;background:var(--card-background);padding:5px 10px;font-size:12px}.btn-danger:hover:not(:disabled){background-color:var(--error-hover)}.btn-outline{background-color:transparent;border:1px solid var(--border-secondary, #d1d5db);color:var(--text-primary, #374151)}.btn-outline:hover:not(:disabled){background-color:var(--hover-bg, #f9fafb);border-color:var(--border-secondary, #9ca3af)}.btn-outline-primary{background-color:transparent;border:1px solid var(--primary-color, #3b82f6);color:var(--primary-color, #3b82f6)}.btn-outline-primary:hover:not(:disabled){background-color:var(--primary-light, #eff6ff)}.btn-ghost{background-color:transparent;color:var(--text-primary, #374151)}.btn-ghost:hover:not(:disabled){background-color:var(--hover-bg, #f3f4f6)}.btn-link{background:none;border:none;color:var(--primary-color, #FE6B34);text-decoration:underline;padding:0}.btn-link:hover:not(:disabled){color:var(--primary-hover, #E55A2B)}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500;text-transform:capitalize}.status-active,.status-completed,.status-success{background-color:var(--success-bg, #d1fae5);color:var(--success-text, #065f46)}.status-inactive,.status-disabled{background-color:var(--secondary-light, #f3f4f6);color:var(--text-secondary, #4b5563)}.status-pending,.status-scheduled,.status-invited{background:var(--chip-orange-bg);color:var(--accent-orange)}.status-warning,.status-trial{background-color:var(--warning-bg, #fef3c7);color:var(--warning-text, #92400e)}.status-error,.status-failed,.status-cancelled,.status-suspended{background-color:var(--error-bg, #fee2e2);color:var(--error-text, #991b1b)}.status-info{background-color:var(--info-bg, #e0e7ff);color:var(--info-text, #3730a3)}.error-message,.alert-error{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background-color:var(--error-bg, #fef2f2);border:1px solid var(--error-border, #fecaca);border-radius:.375rem;color:var(--error-text, #991b1b);font-size:.875rem}.success-message,.alert-success{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background-color:var(--success-bg, #f0fdf4);border:1px solid var(--success-border, #bbf7d0);border-radius:.375rem;color:var(--success-text, #166534);font-size:.875rem}.warning-message,.alert-warning{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background-color:var(--warning-bg, #fffbeb);border:1px solid var(--warning-border, #fed7aa);border-radius:.375rem;color:var(--warning-text, #92400e);font-size:.875rem}.info-message,.alert-info{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background-color:var(--info-bg, #eff6ff);border:1px solid var(--info-border, #bfdbfe);border-radius:.375rem;color:var(--info-text, #1e40af);font-size:.875rem}.modal-overlay{position:fixed;inset:0;background-color:var(--modal-overlay, rgba(0, 0, 0, .5));display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:var(--modal-bg, white);border-radius:.5rem;padding:1.5rem;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl, 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04));position:relative}.modal-content.modal-sm{max-width:400px}.modal-content.modal-lg{max-width:800px}.modal-content.modal-xl{max-width:1200px}.modal-content.modal-full{max-width:95vw;max-height:95vh}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border-primary, #e5e7eb)}.modal-header h2,.modal-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary, #111827)}.modal-close{position:absolute;top:.75rem;right:.75rem;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;border-radius:50%;cursor:pointer;color:var(--text-secondary, #6b7280);font-size:1.25rem;font-weight:300;line-height:1;padding:0;z-index:100;transition:all .2s ease}.modal-close:hover{color:var(--text-primary, #374151);transform:scale(1.05)}.modal-close:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px}.modal-close svg{width:18px;height:18px;flex-shrink:0}.modal-body{margin-bottom:1.5rem;color:var(--text-primary)}.modal-footer,.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;padding-top:1rem;border-top:1px solid var(--border-primary, #e5e7eb)}.pagination{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem}.pagination-button{display:inline-flex;align-items:center;justify-content:center;min-width:2.5rem;height:2.5rem;padding:.5rem .75rem;background-color:var(--bg-primary, white);border:1px solid var(--border-secondary, #d1d5db);border-radius:.375rem;font-size:.875rem;font-weight:500;color:var(--text-primary, #374151);cursor:pointer;transition:all .2s}.pagination-button:hover:not(:disabled){background-color:var(--hover-bg, #f9fafb);border-color:var(--border-secondary, #9ca3af)}.pagination-button.active{background-color:var(--primary-color, #3b82f6);border-color:var(--primary-color, #3b82f6);color:#fff}.pagination-info{font-size:.875rem;color:var(--text-secondary, #6b7280);padding:0 .5rem}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}.page-header h1,.page-header h2{margin:0 0 .25rem;font-size:1.5rem;font-weight:600;color:var(--text-primary, #111827)}.page-header p{margin:0;color:var(--text-secondary, #6b7280);font-size:.875rem}.page-header-actions{display:flex;gap:.75rem;flex-shrink:0}.card{background:var(--card-bg, white);border:1px solid var(--card-border, #e5e7eb);border-radius:.5rem;padding:1.5rem;box-shadow:var(--shadow-card, 0 1px 3px rgba(0, 0, 0, .1))}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border-primary, #e5e7eb)}.card-header h3,.card-header h4{margin:0;font-size:1.125rem;font-weight:600;color:var(--text-primary, #111827)}.card-body{color:var(--text-primary, #374151)}.card-footer{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-primary, #e5e7eb)}.form-group{margin-bottom:1rem}.name-fields{display:flex;gap:.75rem}.name-fields .name-field{flex:1}.name-fields .name-field input{width:100%}.sub-label{display:block;font-size:.8rem;font-weight:500;color:#6b7280;margin-bottom:.25rem}.date-time-fields{display:flex;gap:.75rem}.date-time-fields .date-time-field{flex:1}.date-time-fields .date-time-field select{width:100%}.form-label{display:block;margin-bottom:.5rem;font-size:.875rem;font-weight:500;color:var(--text-primary, #374151)}.form-label.required:after{content:" *";color:var(--error-color, #ef4444)}.form-input,.form-select,.form-textarea{width:100%;padding:.5rem .75rem;border:1px solid var(--input-border, #d1d5db);border-radius:.375rem;font-size:.875rem;color:var(--text-primary, #111827);background-color:var(--input-bg, white);transition:border-color .2s,box-shadow .2s}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.form-input:disabled,.form-select:disabled,.form-textarea:disabled{background-color:var(--input-disabled-bg, #f9fafb);cursor:not-allowed}.form-input.error,.form-select.error,.form-textarea.error{border-color:var(--error-color, #ef4444)}.form-input.error:focus,.form-select.error:focus,.form-textarea.error:focus{outline:2px solid var(--error-color, #ef4444);outline-offset:2px}.form-textarea{min-height:100px;resize:vertical}.form-help{margin-top:.25rem;font-size:.75rem;color:var(--text-secondary, #6b7280)}.form-error,.form-error-message{margin-top:.5rem;font-size:.75rem;color:var(--error-text, #991b1b);background:var(--error-bg, #fef2f2);border:1px solid var(--error-border, #fecaca);border-radius:6px;padding:.5rem .75rem}.form-warning{margin-top:.5rem;font-size:.75rem;color:var(--warning-text, #92400e);background:var(--warning-bg, #fffbeb);border:1px solid var(--warning-border, #fde68a);border-radius:6px;padding:.5rem .75rem;display:flex;align-items:center;gap:.5rem}.search-input-global{width:100%;padding:.625rem 1rem;border:1px solid var(--input-border, #d1d5db);border-radius:.375rem;font-size:.875rem;color:var(--text-primary, #111827);background-color:var(--input-bg, white);transition:border-color .2s,box-shadow .2s}.search-input-global::placeholder{color:var(--text-secondary, #6b7280)}.search-input-global:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.table-container{background:var(--bg-primary, white);border:1px solid var(--border-primary, #e5e7eb);border-radius:.5rem;overflow:hidden}.table-responsive{overflow-x:auto}.table{width:100%;border-collapse:collapse}.table thead{background-color:var(--table-header-bg, #f9fafb);border-bottom:2px solid var(--table-border, #e5e7eb)}.table th{padding:.75rem 1rem;text-align:left;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary, #6b7280)}.table td{padding:.75rem 1rem;font-size:.875rem;color:var(--text-primary, #374151);border-bottom:1px solid var(--table-border, #e5e7eb)}.table tbody tr:hover{background-color:var(--table-row-hover, #f9fafb)}.table tbody tr:last-child td{border-bottom:none}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.hidden{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:768px){.page-header{flex-direction:column;align-items:stretch}.page-header-actions{flex-direction:column}.modal-content{margin:.5rem;max-height:calc(100vh - 1rem)}.pagination{flex-wrap:wrap}.hide-mobile{display:none}}@media(min-width:769px){.hide-desktop{display:none}}.billing-section-divider{margin-top:32px;padding-top:24px;border-top:1px solid #e9ecef}.billing-section-title{margin-bottom:8px;font-size:1.125rem;font-weight:600;color:#1f2937}.billing-section-description{color:#6c757d;font-size:.875rem;margin-bottom:16px}.accent-left-border{position:relative;border:1px solid var(--accent-orange);border-radius:8px;overflow:hidden}.accent-left-border:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--accent-orange);border-radius:0 3px 3px 0}[data-theme=dark] .page-header{border:none}[data-theme=dark] .card-header,[data-theme=dark] .form-card-header{border:none}[data-theme=dark] .card-header h3,[data-theme=dark] .card-header h4,[data-theme=dark] .card-title{color:#f5f3f7}[data-theme=dark] .card-body{color:#d4cde0}[data-theme=dark] .card-footer,[data-theme=dark] .form-card-actions{border:none;background:var(--input-bg)}[data-theme=dark] .form-group label,[data-theme=dark] .form-label,[data-theme=dark] .filter-group label,[data-theme=dark] .channel-label{color:#d4cde0}[data-theme=dark] .form-input,[data-theme=dark] .form-select,[data-theme=dark] .form-textarea,[data-theme=dark] .search-input,[data-theme=dark] .filter-select,[data-theme=dark] input[type=text],[data-theme=dark] input[type=email],[data-theme=dark] input[type=password],[data-theme=dark] input[type=number],[data-theme=dark] input[type=date],[data-theme=dark] input[type=time],[data-theme=dark] input[type=search],[data-theme=dark] select,[data-theme=dark] textarea{background-color:var(--input-bg);border:none;color:#f5f3f7;color-scheme:dark}[data-theme=dark] select{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='%23D4CDE0' d='M2.22 4.47a.75.75 0 0 1 1.06 0L6 7.19l2.72-2.72a.75.75 0 1 1 1.06 1.06L6.53 8.78a.75.75 0 0 1-1.06 0L2.22 5.53a.75.75 0 0 1 0-1.06z'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 10px center!important}[data-theme=dark] .form-input::placeholder,[data-theme=dark] .form-textarea::placeholder,[data-theme=dark] .search-input::placeholder,[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder{color:var(--input-placeholder)}[data-theme=dark] .form-input:focus,[data-theme=dark] .form-select:focus,[data-theme=dark] .form-textarea:focus,[data-theme=dark] .search-input:focus,[data-theme=dark] .filter-select:focus,[data-theme=dark] input:focus,[data-theme=dark] select:focus,[data-theme=dark] textarea:focus{border-color:#ff7a47;box-shadow:0 0 0 3px #ff7a4733}[data-theme=dark] .toggle-switch input:focus{border-color:transparent;box-shadow:none}[data-theme=dark] .form-input:disabled,[data-theme=dark] .form-select:disabled,[data-theme=dark] .form-textarea:disabled,[data-theme=dark] input:disabled,[data-theme=dark] select:disabled,[data-theme=dark] textarea:disabled{background-color:#2a2240;color:#7a6b8f}[data-theme=dark] .form-error,[data-theme=dark] .required{color:#f87171}[data-theme=dark] .modal-overlay{background:#000000b3}[data-theme=dark] .modal-content{background:var(--card-background);border:1px solid #362D4A}[data-theme=dark] .modal-header h2,[data-theme=dark] .modal-header h3{color:#f5f3f7}[data-theme=dark] .modal-body p{color:var(--text-tertiary)}[data-theme=dark] .modal-footer,[data-theme=dark] .modal-actions{border:none}[data-theme=dark] .table-container{background:var(--card-background);border:none}[data-theme=dark] .table thead,[data-theme=dark] thead,[data-theme=dark] .table th,[data-theme=dark] th,[data-theme=dark] .table td,[data-theme=dark] td{color:#d4cde0;border:none}[data-theme=dark] .table tbody tr:hover,[data-theme=dark] tbody tr:hover{background-color:var(--table-row-hover)}[data-theme=dark] .btn-outline{background-color:transparent;border:none;color:#d4cde0}[data-theme=dark] .btn-outline:hover:not(:disabled){background-color:#362d4a;border-color:#7a6b8f}[data-theme=dark] .btn-ghost{color:#d4cde0}[data-theme=dark] .btn-ghost:hover:not(:disabled){background-color:#362d4a}[data-theme=dark] .cancel-button,[data-theme=dark] .details-button{background:var(--input-bg);border:none;color:var(--text-tertiary)}[data-theme=dark] .cancel-button:hover,[data-theme=dark] .details-button:hover{background:#4d4365}[data-theme=dark] .filter-button{background:var(--input-bg);border:none;color:#d4cde0}[data-theme=dark] .filter-button:hover{background:#4d4365;border-color:#ff7a47;color:#ff7a47}[data-theme=dark] .filter-button.active{background:#fe6b34;border-color:#fe6b34;color:#fff}[data-theme=dark] .error-message,[data-theme=dark] .alert-error{background-color:#7f1d1d;border-color:#991b1b;color:#fecaca}[data-theme=dark] .success-message,[data-theme=dark] .alert-success{background-color:#064e3b;border-color:#065f46;color:#a7f3d0}[data-theme=dark] .warning-message,[data-theme=dark] .alert-warning{background-color:#78350f;border-color:#92400e;color:#fde68a}[data-theme=dark] .info-message,[data-theme=dark] .alert-info{background-color:#3d2a35;border-color:#d14a1c;color:#ffd4c4}[data-theme=dark] .empty-state{color:var(--text-tertiary)}[data-theme=dark] .empty-state h3,[data-theme=dark] .empty-state-title{color:#f5f3f7}[data-theme=dark] .empty-state p,[data-theme=dark] .empty-state-description{color:var(--text-tertiary)}[data-theme=dark] .empty-icon,[data-theme=dark] .empty-state-icon{color:#4d4365}[data-theme=dark] .loading,[data-theme=dark] .loading-state,[data-theme=dark] .loading-spinner{color:var(--text-tertiary)}[data-theme=dark] .loading-overlay{background-color:#1e1730cc}[data-theme=dark] .loading-overlay-content{background-color:#2a2240}[data-theme=dark] .spinner-message,[data-theme=dark] .loading-message{color:var(--text-tertiary)}[data-theme=dark] .pagination-button{background-color:#2a2240;border:none;color:#d4cde0}[data-theme=dark] .pagination-button:hover:not(:disabled){background-color:#362d4a;border:none}[data-theme=dark] .type-badge.type-photo-video{background:#3d2a35;color:#ffb89e}[data-theme=dark] .type-badge.type-liability{background:#78350f;color:#fde68a}[data-theme=dark] .type-badge.type-custom{background:#581c87;color:#e9d5ff}[data-theme=dark] .activity-item,[data-theme=dark] .schedule-item{background:var(--input-bg);border:none}[data-theme=dark] .history-contact,[data-theme=dark] .activity-client,[data-theme=dark] .session-client,[data-theme=dark] .schedule-client{color:#f5f3f7}[data-theme=dark] .history-meta,[data-theme=dark] .activity-date,[data-theme=dark] .activity-type,[data-theme=dark] .session-date,[data-theme=dark] .session-pet,[data-theme=dark] .session-type,[data-theme=dark] .schedule-type,[data-theme=dark] .schedule-time{color:var(--text-tertiary)}[data-theme=dark] .filters-section,[data-theme=dark] .consent-form-controls,[data-theme=dark] .scheduler-sidebar{background:var(--input-bg);border:none}[data-theme=dark] .dashboard-section,[data-theme=dark] .page-content{background:var(--card-background);border:none}[data-theme=dark] .results-count{color:var(--text-tertiary)}[data-theme=dark] .invitation-form,[data-theme=dark] .invitation-history-section{background:var(--card-background);box-shadow:0 2px 8px #0000004d}[data-theme=dark] .channel-option{background:var(--input-bg);border:none;color:#d4cde0}[data-theme=dark] .channel-option:hover{border-color:#ff7a47;background:#4d4365}[data-theme=dark] .channel-option.active{border-color:#ff7a47;background:#3d2a35;color:#ff7a47}[data-theme=dark] .history-toggle{background:var(--card-background);color:#f5f3f7}[data-theme=dark] .history-toggle:hover{background:var(--input-bg)}[data-theme=dark] .toggle-icon{color:var(--text-tertiary)}[data-theme=dark] .invitation-history{border:none}[data-theme=dark] .consent-form-container{background:var(--card-background);box-shadow:0 2px 8px #0000004d}[data-theme=dark] .form-type{background:#3d2a35;color:#ffb89e}[data-theme=dark] .form-text{background:var(--input-bg);color:#d4cde0}[data-theme=dark] .consent-checkbox{background:#78350f;border-color:#92400e}[data-theme=dark] .consent-checkbox label{color:#fde68a}[data-theme=dark] .signature-section{border:none}[data-theme=dark] .signature-section h4{color:#f5f3f7}[data-theme=dark] .signature-instruction{color:var(--text-tertiary)}[data-theme=dark] .signature-canvas-container,[data-theme=dark] .signature-display{background:#f5f3f7}[data-theme=dark] .privacy-notice{color:var(--text-tertiary)}[data-theme=dark] .consent-group{background:var(--card-background)}[data-theme=dark] .consent-group-header{background:var(--input-bg);border:none}[data-theme=dark] .group-title h4{color:#f5f3f7}[data-theme=dark] .version-count{background:#4d4365;color:#d4cde0}[data-theme=dark] .date-cell .date{color:#f5f3f7}[data-theme=dark] .date-cell .time{color:var(--text-tertiary)}[data-theme=dark] .ip-address{background:var(--input-bg);color:#d4cde0}[data-theme=dark] .no-signature{color:#7a6b8f}[data-theme=dark] .detail-row{background:var(--input-bg)}[data-theme=dark] .detail-value,[data-theme=dark] .header-content h1{color:#f5f3f7}[data-theme=dark] .header-subtitle{color:var(--text-tertiary)}[data-theme=dark] .back-button{background:var(--card-background);border:none;color:var(--text-tertiary)}[data-theme=dark] .back-button:hover{background:var(--input-bg);border-color:#ff7a47;color:#ff7a47}[data-theme=dark] .settings-modal .modal-footer{background:var(--input-bg)}[data-theme=dark] .ai-consent-info h3{color:#f5f3f7}[data-theme=dark] .ai-feature{background:#064e3b;border-color:#065f46}[data-theme=dark] .ai-feature h4{color:#a7f3d0}[data-theme=dark] .ai-feature p{color:#d4cde0}[data-theme=dark] .ai-consent-privacy{background:var(--input-bg);border:none}[data-theme=dark] .ai-consent-privacy h4{color:#f5f3f7}[data-theme=dark] .ai-consent-privacy ul{color:#d4cde0}[data-theme=dark] .ai-consent-current{background:#78350f;border-color:#92400e}[data-theme=dark] .ai-consent-current p{color:#fde68a}[data-theme=dark] .task-list-header h2,[data-theme=dark] .task-title{color:#f5f3f7}[data-theme=dark] .task-due-date{color:var(--text-tertiary)}[data-theme=dark] .task-description{color:#d4cde0}[data-theme=dark] .task-resources h4{color:#f5f3f7}[data-theme=dark] .task-details{border:none}[data-theme=dark] .task-instructions h4{color:#f5f3f7}[data-theme=dark] .task-instructions p{color:#d4cde0}[data-theme=dark] .task-metadata{color:var(--text-tertiary)}[data-theme=dark] .task-creator{background:var(--card-background);border:none}[data-theme=dark] .task-creator-header h3{color:#f5f3f7}[data-theme=dark] .close-button{color:var(--text-tertiary)}[data-theme=dark] .close-button:hover{color:#f87171}[data-theme=dark] .selected-resource{background:var(--input-bg)}[data-theme=dark] .resource-title{color:#f5f3f7}[data-theme=dark] .add-resources-button{background:var(--input-bg);border:none;color:var(--text-tertiary)}[data-theme=dark] .add-resources-button:hover{background:#4d4365}[data-theme=dark] .task-progress h4{color:#f5f3f7}[data-theme=dark] .progress-bar{background:var(--input-bg)}[data-theme=dark] .progress-percentage{color:var(--text-tertiary)}[data-theme=dark] .progress-notes-section label{color:#f5f3f7}[data-theme=dark] .completion-info{background:#064e3b}[data-theme=dark] .completion-info p{color:#a7f3d0}[data-theme=dark] .progress-metadata,[data-theme=dark] .progress-loading,[data-theme=dark] .progress-error{color:var(--text-tertiary)}[data-theme=dark] .status-tracker .step-circle{background:var(--input-bg);color:var(--text-tertiary)}[data-theme=dark] .status-tracker .status-step span{color:var(--text-tertiary)}[data-theme=dark] .status-tracker .step-connector{background:var(--input-bg)}[data-theme=dark] .meta-item{background-color:#362d4a;color:#d4cde0}[data-theme=dark] .meta-value{color:#f5f3f7}[data-theme=dark] .form-meta{border:none}[data-theme=dark] .form-preview{color:var(--text-tertiary)}[data-theme=dark] .animal-meta{border:none}[data-theme=dark] .animal-meta small,[data-theme=dark] .info-row .label{color:var(--text-tertiary)}[data-theme=dark] .info-row .value{color:#f5f3f7}[data-theme=dark] .more-tags{color:var(--text-tertiary)}[data-theme=dark] .monthly-calendar{background-color:#2a2240;border:none}[data-theme=dark] .monthly-calendar .calendar-header{background-color:#362d4a;border:none}[data-theme=dark] .monthly-calendar .calendar-title{color:#f5f3f7}[data-theme=dark] .monthly-calendar .calendar-nav-btn{color:var(--text-tertiary)}[data-theme=dark] .monthly-calendar .calendar-nav-btn:hover{background-color:#4d4365;color:#f5f3f7}[data-theme=dark] .monthly-calendar .calendar-day-header{background-color:#362d4a;border:none;color:var(--text-tertiary)}[data-theme=dark] .monthly-calendar .calendar-day{background-color:var(--cal-day-background);border:none}[data-theme=dark] .monthly-calendar .calendar-day.today{background-color:#3d2a35}[data-theme=dark] .monthly-calendar .calendar-day.non-working{background-color:#362d4a}[data-theme=dark] .monthly-calendar .calendar-day.other-month{background-color:#1e1730}[data-theme=dark] .monthly-calendar .calendar-day-number{color:#f5f3f7}[data-theme=dark] .monthly-calendar .calendar-day.other-month .calendar-day-number{color:#7a6b8f}[data-theme=dark] .tenant-calendar-view{background:var(--card-background);border:none}[data-theme=dark] .tenant-calendar-view .current-month{color:#f5f3f7}[data-theme=dark] .tenant-calendar-view .nav-button{background:var(--card-background);border:none;color:#d4cde0}[data-theme=dark] .tenant-calendar-view .nav-button:hover{background:var(--input-bg);border:none}[data-theme=dark] .tenant-calendar-view .calendar-grid{border:none}[data-theme=dark] .tenant-calendar-view .calendar-weekdays{background:var(--card-background);border-bottom:1px solid var(--text-tertiary);margin-bottom:1rem;width:95%;margin:0 auto}[data-theme=dark] .tenant-calendar-view .weekday{color:var(--text-secondary)}[data-theme=dark] .tenant-calendar-view .calendar-day{background-color:var(--cal-day-background);border:none}[data-theme=dark] .tenant-calendar-view .calendar-day.other-month{opacity:.35}[data-theme=dark] .tenant-calendar-view .calendar-day.today{background:#212f34;border:1px solid var(--chip-orange-border)}[data-theme=dark] .tenant-calendar-view .day-number{color:#f5f3f7}[data-theme=dark] .calendar-loading,[data-theme=dark] .calendar-error{color:var(--text-tertiary)}[data-theme=dark] .calendar-filters{background:var(--card-background);border:none}[data-theme=dark] .filters-header h3{color:#f5f3f7}[data-theme=dark] .clear-filters-button{background:var(--card-background);border:none}[data-theme=dark] .clear-filters-button:hover{background:#7f1d1d}[data-theme=dark] .filter-dropdown,[data-theme=dark] .dropdown-search{background:var(--card-background);border:none}[data-theme=dark] .dropdown-search input{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .dropdown-option:hover{background:var(--input-bg)}[data-theme=dark] .dropdown-option span{color:#f5f3f7}[data-theme=dark] .dropdown-loading,[data-theme=dark] .dropdown-empty{color:var(--text-tertiary)}[data-theme=dark] .active-filters{border:none}[data-theme=dark] .filter-badge{background:#3d2a35;border-color:#d14a1c;color:#ffb89e}[data-theme=dark] .remove-badge{color:#ffb89e}[data-theme=dark] .remove-badge:hover{background:#d14a1c}[data-theme=dark] .sessions-pending-card{background:var(--card-background);border:none}[data-theme=dark] .calendar-page .page-header h1{color:#f5f3f7}[data-theme=dark] .calendar-page .page-description{color:var(--text-tertiary)}[data-theme=dark] .calendar-controls{background:transparent}[data-theme=dark] .month-navigation .current-month{color:#f5f3f7}[data-theme=dark] .nav-button{background:var(--card-background);border:none;color:#d4cde0}[data-theme=dark] .nav-button:hover{background:var(--input-bg);border:none}[data-theme=dark] .profile-settings-page,[data-theme=dark] .profile-settings-page .settings-header{background:transparent}[data-theme=dark] .profile-settings-page .settings-header h1,[data-theme=dark] .settings-header h1{color:#f5f3f7}[data-theme=dark] .profile-settings-page .settings-header p,[data-theme=dark] .settings-header p{color:var(--text-tertiary)}[data-theme=dark] .settings-tabs{background:var(--card-background);box-shadow:0 1px 3px #0000004d;border:1px solid #362D4A}[data-theme=dark] .tabs-list{background:var(--input-bg);border:none}[data-theme=dark] .tab{color:var(--text-tertiary);background:transparent}[data-theme=dark] .tab:hover{color:#f5f3f7;background:#4d4365}[data-theme=dark] .settings-tabs .card,[data-theme=dark] .profile-settings-page .card{background:var(--card-background);border:none;box-shadow:0 1px 3px #0000004d}[data-theme=dark] .settings-tabs .card-header,[data-theme=dark] .profile-settings-page .card-header{border:none;background:var(--card-background)}[data-theme=dark] .settings-tabs .card-header h3,[data-theme=dark] .profile-settings-page .card-header h3{color:#f5f3f7}[data-theme=dark] .settings-tabs .card-content,[data-theme=dark] .profile-settings-page .card-content{background:var(--card-background)}[data-theme=dark] .settings-tabs .card-content p,[data-theme=dark] .profile-settings-page .card-content p{color:var(--text-tertiary)}[data-theme=dark] .settings-tabs .card-content h4,[data-theme=dark] .profile-settings-page .card-content h4{color:#f5f3f7}[data-theme=dark] .photo-upload-section{background:var(--input-bg);border:none}[data-theme=dark] .photo-upload-controls .form-help{color:var(--text-tertiary)}[data-theme=dark] .localization-settings{background:transparent}[data-theme=dark] .localization-settings .card{background:var(--card-background);border:none;box-shadow:0 1px 3px #0000004d}[data-theme=dark] .localization-settings .card-header{background:var(--card-background);border:none}[data-theme=dark] .localization-settings .card-header h3{color:#f5f3f7}[data-theme=dark] .localization-settings .card-header p{color:var(--text-tertiary)}[data-theme=dark] .localization-settings .card-content{background:var(--card-background)}[data-theme=dark] .localization-settings .form-label{color:#d4cde0}[data-theme=dark] .localization-settings .form-control{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .localization-settings .form-control:focus{border-color:#ff7a47;box-shadow:0 0 0 3px #ff7a4733}[data-theme=dark] .localization-settings .form-help-text{color:var(--text-tertiary)}[data-theme=dark] .localization-settings .settings-preview,[data-theme=dark] .settings-preview{background:var(--input-bg);border:none}[data-theme=dark] .localization-settings .settings-preview h4,[data-theme=dark] .settings-preview h4{color:#f5f3f7}[data-theme=dark] .localization-settings .preview-label,[data-theme=dark] .preview-label{color:var(--text-tertiary)}[data-theme=dark] .localization-settings .preview-value,[data-theme=dark] .preview-value{background:var(--card-background);border:none;color:#f5f3f7}[data-theme=dark] .localization-settings .form-actions,[data-theme=dark] .form-actions{border:none}[data-theme=dark] .save-message.success{background:#064e3b;border-color:#065f46;color:#a7f3d0}[data-theme=dark] .save-message.error{background:#7f1d1d;border-color:#991b1b;color:#fecaca}[data-theme=dark] .category-count{background:var(--card-background);border:none;color:#d4cde0}[data-theme=dark] .category-header-static{background:var(--input-bg);border:none}[data-theme=dark] .category-header-static h3{color:#f5f3f7}[data-theme=dark] .category-header-static .category-description{color:var(--text-tertiary)}[data-theme=dark] .event-config:hover{border-color:#ff7a47;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .channel-toggle{background:var(--card-background);border:none;color:#d4cde0}[data-theme=dark] .channel-toggle:hover{border-color:#ff7a47;background:#3d2a35}[data-theme=dark] .channel-info p{color:var(--text-tertiary)}[data-theme=dark] .role-toggle{background:var(--card-background);border:none;color:#d4cde0}[data-theme=dark] .role-toggle:hover{border-color:#ff7a47;background:#3d2a35}[data-theme=dark] .setting-group label,[data-theme=dark] .setting-label{color:var(--text-secondary)}[data-theme=dark] .notification-settings-page .sub-tabs{border:none}[data-theme=dark] .notification-settings-page .sub-tab{color:var(--text-tertiary)}[data-theme=dark] .notification-settings-page .sub-tab:hover{color:#f5f3f7;background:var(--input-bg)}[data-theme=dark] .notification-settings-page .sub-tab.active{color:#ff7a47;border-bottom-color:#ff7a47}[data-theme=dark] .toggle-slider:before{background:linear-gradient(135deg,#f5f3f7,#e5e7eb)}[data-theme=dark] .toggle-switch input[type=checkbox]:checked+.toggle-slider{background:linear-gradient(135deg,#fe6b34,#2563eb);border-color:#2563eb}[data-theme=dark] .quiet-hours-preview{background:var(--input-bg);border-left-color:#ff7a47}[data-theme=dark] .label-text{color:#f5f3f7}[data-theme=dark] .label-description{color:var(--text-tertiary)}[data-theme=dark] .preferences-preview{background:var(--input-bg);border:none}[data-theme=dark] .preview-section h4{color:#f5f3f7}[data-theme=dark] .preview-badge{background:#fe6b34;color:#fff}[data-theme=dark] .preview-warning{background:#78350f;border-color:#92400e;color:#fde68a}[data-theme=dark] .notification-type-toggle{background:var(--card-background);border:none}[data-theme=dark] .notification-type-toggle:hover{border-color:#ff7a47;background:#3d2a35}[data-theme=dark] .type-info strong{color:#f5f3f7}[data-theme=dark] .type-info p{color:var(--text-tertiary)}[data-theme=dark] .notification-toggle{border:none}[data-theme=dark] .notification-toggle:hover{border-color:#ff7a47;background:var(--input-bg)}[data-theme=dark] .toggle-info strong{color:#f5f3f7}[data-theme=dark] .toggle-info p{color:var(--text-tertiary)}[data-theme=dark] .protection-feature{background:var(--input-bg);border-left-color:#10b981}[data-theme=dark] .feature-info strong{color:#f5f3f7}[data-theme=dark] .feature-info p{color:var(--text-tertiary)}[data-theme=dark] .followup-settings{background:var(--card-background)}[data-theme=dark] .followup-settings .card{background:var(--card-background);border:none}[data-theme=dark] .followup-settings .card-header{background:var(--input-bg);border:none}[data-theme=dark] .followup-settings .card-header h3{color:#f5f3f7}[data-theme=dark] .followup-settings .card-content{background:var(--card-background)}[data-theme=dark] .snackbar-preferences{background:transparent}[data-theme=dark] .snackbar-preferences .preferences-header h2{color:#f5f3f7}[data-theme=dark] .snackbar-preferences .preferences-description{color:var(--text-tertiary)}[data-theme=dark] .snackbar-preferences .preference-section{background:var(--card-background);border:none}[data-theme=dark] .snackbar-preferences .preference-label h3{color:#f5f3f7}[data-theme=dark] .snackbar-preferences .preference-label p{color:var(--text-tertiary)}[data-theme=dark] .snackbar-preferences .section-title{color:#f5f3f7}[data-theme=dark] .snackbar-preferences .section-description{color:var(--text-tertiary)}[data-theme=dark] .snackbar-preferences .notification-type-item{background:var(--input-bg)}[data-theme=dark] .snackbar-preferences .type-label{color:#f5f3f7}[data-theme=dark] .snackbar-preferences .severity-info{background-color:#3d2a35;color:#ffb89e}[data-theme=dark] .snackbar-preferences .severity-success{background-color:#064e3b;color:#6ee7b7}[data-theme=dark] .snackbar-preferences .severity-warning{background-color:#78350f;color:#fcd34d}[data-theme=dark] .snackbar-preferences .severity-error{background-color:#7f1d1d;color:#fca5a5}[data-theme=dark] .snackbar-preferences .toggle-slider{background-color:#4d4365}[data-theme=dark] .snackbar-preferences .toggle-switch input:checked+.toggle-slider{background-color:#fe6b34}[data-theme=dark] .snackbar-preferences .quiet-hours-config{border:none}[data-theme=dark] .snackbar-preferences .time-picker label{color:#f5f3f7}[data-theme=dark] .snackbar-preferences .time-picker select{background-color:#362d4a;border:none;color:#f5f3f7}[data-theme=dark] .snackbar-preferences .time-picker select:focus{border-color:#ff7a47;box-shadow:0 0 0 2px #ff7a4733}[data-theme=dark] .snackbar-preferences .quiet-hours-note{color:var(--text-tertiary)}[data-theme=dark] .snackbar-preferences .save-message.success{background-color:#064e3b;color:#6ee7b7}[data-theme=dark] .snackbar-preferences .save-message.error{background-color:#7f1d1d;color:#fca5a5}[data-theme=dark] .subscription-manager.loading{color:var(--text-tertiary)}[data-theme=dark] .subscription-info{background:linear-gradient(135deg,#362d4a,#2a2240);border:none}[data-theme=dark] .tier-info h4{color:#f5f3f7}[data-theme=dark] .price{color:#ff7a47}[data-theme=dark] .billing-item{background:var(--input-bg);border:none}[data-theme=dark] .billing-item .label{color:var(--text-tertiary)}[data-theme=dark] .billing-item .value{color:#f5f3f7}[data-theme=dark] .subscription-features{background:var(--input-bg);border:none}[data-theme=dark] .subscription-features h5{color:#f5f3f7}[data-theme=dark] .subscription-features ul{color:#d4cde0}[data-theme=dark] .subscription-actions{border:none}[data-theme=dark] .subscription-actions h5,[data-theme=dark] .subscription-actions h6{color:#f5f3f7}[data-theme=dark] .tier-card{background:var(--card-background);border:none}[data-theme=dark] .tier-card:hover{border-color:#ff7a47;box-shadow:0 2px 8px #ff7a471a}[data-theme=dark] .tier-card.current{border-color:#10b981;background:#064e3b}[data-theme=dark] .tier-header{border:none}[data-theme=dark] .tier-header h6{color:#f5f3f7}[data-theme=dark] .tier-price{color:#ff7a47}[data-theme=dark] .tier-features ul{color:var(--text-tertiary)}[data-theme=dark] .overview-card{background:var(--card-background);box-shadow:0 2px 4px #0000004d}[data-theme=dark] .subscription-summary-card{background:var(--card-background)}[data-theme=dark] .subscription-summary-card h4{color:#f5f3f7}[data-theme=dark] .detail-row .label{color:var(--text-tertiary)}[data-theme=dark] .detail-row .value{color:#f5f3f7}[data-theme=dark] .detail-row .value.amount{color:#ff7a47}[data-theme=dark] .invoices-section,[data-theme=dark] .invoices-full{background:var(--card-background);box-shadow:0 2px 4px #0000004d}[data-theme=dark] .invoices-section h3,[data-theme=dark] .invoices-full h3{color:#f5f3f7}[data-theme=dark] .no-invoices{color:var(--text-tertiary)}[data-theme=dark] .invoice-item{background:var(--input-bg);border:none}[data-theme=dark] .invoice-item.invoice-due{background:var(--input-bg);border:none;border-left:3px solid #A78BFA}[data-theme=dark] .invoice-item.invoice-due:hover{background:#3d3455;border-color:#5d5375}[data-theme=dark] .invoice-item .invoice-number{color:#f5f3f7}[data-theme=dark] .invoice-item .invoice-client{color:#d4cde0}[data-theme=dark] .invoice-item .invoice-description{color:var(--text-tertiary)}[data-theme=dark] .invoice-item .invoice-due-date{color:#a78bfa}[data-theme=dark] .invoice-date{color:var(--text-tertiary)}[data-theme=dark] .invoice-amount{color:#f5f3f7}[data-theme=dark] .event-card{background:var(--input-bg);border:none}[data-theme=dark] .event-header{border:none}[data-theme=dark] .event-title h5{color:#f5f3f7}[data-theme=dark] .event-id{color:var(--text-tertiary)}[data-theme=dark] .event-type{color:#d4cde0}[data-theme=dark] .event-date{color:var(--text-tertiary)}[data-theme=dark] .event-amount-large{color:#10b981}[data-theme=dark] .event-metadata{border:none}[data-theme=dark] .event-metadata h6{color:#f5f3f7}[data-theme=dark] .metadata-key{color:var(--text-tertiary)}[data-theme=dark] .metadata-value{color:#d4cde0}[data-theme=dark] .recent-events{background:var(--card-background)}[data-theme=dark] .recent-events h4{color:#f5f3f7}[data-theme=dark] .event-item{border:none}[data-theme=dark] .no-events{color:var(--text-tertiary)}[data-theme=dark] .billing-history{background:var(--card-background);box-shadow:0 2px 4px #0000004d}[data-theme=dark] .history-header{border:none}[data-theme=dark] .history-header h3{color:#f5f3f7}[data-theme=dark] .quota-status{background:var(--card-background);box-shadow:0 2px 4px #0000004d}[data-theme=dark] .quota-status-header{border:none}[data-theme=dark] .quota-status-header h3{color:#f5f3f7}[data-theme=dark] .quota-item{background:var(--input-bg);border:none}[data-theme=dark] .quota-title{color:#f5f3f7}[data-theme=dark] .quota-values{color:var(--text-tertiary)}[data-theme=dark] .quota-progress{background:#4d4365}[data-theme=dark] .quota-percentage{color:var(--text-tertiary)}[data-theme=dark] .quota-footer,[data-theme=dark] .form-actions{border:none}[data-theme=dark] .subscription-modal-container{background:var(--card-background)}[data-theme=dark] .subscription-modal-header{background:var(--input-bg);border:none}[data-theme=dark] .subscription-modal-header h3{color:#f5f3f7}[data-theme=dark] .modal-close-btn,[data-theme=dark] .modal-close,[data-theme=dark] .modal-close-x{color:var(--text-tertiary)}[data-theme=dark] .modal-close-btn:hover,[data-theme=dark] .modal-close:hover,[data-theme=dark] .modal-close-x:hover{color:#f5f3f7}[data-theme=dark] .subscription-modal-body{background:var(--card-background)}[data-theme=dark] .modal-section h4{color:#f5f3f7}[data-theme=dark] .section-description{color:var(--text-tertiary)}[data-theme=dark] .plan-card-option{background:var(--card-background);border:none}[data-theme=dark] .plan-card-option:hover{border-color:#ff7a47;box-shadow:0 4px 12px #ff7a471a}[data-theme=dark] .plan-card-option.selected{border-color:#ff7a47;background:#3d2a35}[data-theme=dark] .plan-card-option.current{border-color:#10b981}[data-theme=dark] .plan-card-option h5{color:#f5f3f7}[data-theme=dark] .plan-card-price{color:#ff7a47}[data-theme=dark] .plan-card-price span{color:var(--text-tertiary)}[data-theme=dark] .plan-card-features li{color:#d4cde0}[data-theme=dark] .slider{background:#4d4365}[data-theme=dark] .slider-value .value-number{color:#f5f3f7}[data-theme=dark] .slider-value .value-label{color:var(--text-tertiary)}[data-theme=dark] .slider-cost{color:#ff7a47}[data-theme=dark] .summary-section{background:var(--input-bg)}[data-theme=dark] .summary-row{color:#d4cde0}[data-theme=dark] .summary-row.total{border:none;color:#f5f3f7}[data-theme=dark] .summary-row.total span:last-child{color:#ff7a47}[data-theme=dark] .subscription-modal-footer{background:var(--card-background);border:none}[data-theme=dark] .btn-text-danger:hover:not(:disabled){background:#7f1d1d}[data-theme=dark] .payment-methods-section{background:var(--card-background);box-shadow:0 2px 4px #0000004d}[data-theme=dark] .section-header{border:none}[data-theme=dark] .section-header h3{color:#f5f3f7}[data-theme=dark] .payment-method-card{background:var(--input-bg);border:none}[data-theme=dark] .payment-method-card:hover{border-color:#ff7a47;box-shadow:0 2px 8px #ff7a471a}[data-theme=dark] .payment-method-card.default{border-color:#10b981;background:#064e3b}[data-theme=dark] .method-type{color:#f5f3f7}[data-theme=dark] .method-expiry,[data-theme=dark] .no-payment-methods{color:var(--text-tertiary)}[data-theme=dark] .payment-history-section{background:var(--card-background);box-shadow:0 2px 4px #0000004d}[data-theme=dark] .payment-history-section h3{color:#f5f3f7}[data-theme=dark] .payment-history-table thead{background:var(--input-bg)}[data-theme=dark] .payment-history-table th{color:#d4cde0;border:none}[data-theme=dark] .payment-history-table td{color:var(--text-tertiary);border:none}[data-theme=dark] .payment-history-table tbody tr:hover{background:var(--table-row-hover)}[data-theme=dark] .subscription-summary{background:var(--input-bg)}[data-theme=dark] .subscription-summary h3{color:#f5f3f7}[data-theme=dark] .summary-line{color:#d4cde0}[data-theme=dark] .summary-total{border:none;color:#f5f3f7}[data-theme=dark] .reactivate-section{background:#064e3b;border-color:#065f46}[data-theme=dark] .reactivate-section h6{color:#a7f3d0}[data-theme=dark] .reactivate-section p{color:#6ee7b7}[data-theme=dark] .form-editor,[data-theme=dark] .consent-form-content{background:var(--card-background);border:none}[data-theme=dark] .consent-form-editor h3,[data-theme=dark] .form-editor h3{color:#f5f3f7}[data-theme=dark] .consent-form-editor .form-group label,[data-theme=dark] .form-editor .form-group label{color:#d4cde0}[data-theme=dark] .consent-form-editor .form-control,[data-theme=dark] .form-editor .form-control{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .consent-form-editor .form-control:focus,[data-theme=dark] .form-editor .form-control:focus{border-color:#ff7a47;box-shadow:0 0 0 3px #ff7a4733}[data-theme=dark] .category-filter{background:var(--card-background);border:none}[data-theme=dark] .category-filter label{color:#d4cde0}[data-theme=dark] .category-filter select{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .category-filter select:focus{border-color:#ff7a47;box-shadow:0 0 0 3px #ff7a4733}[data-theme=dark] .file-upload-area,[data-theme=dark] .upload-dropzone,[data-theme=dark] .dropzone{background:var(--input-bg);border:none;color:var(--text-tertiary)}[data-theme=dark] .file-upload-area:hover,[data-theme=dark] .upload-dropzone:hover,[data-theme=dark] .dropzone:hover{border-color:#ff7a47;background:#3d2a35}[data-theme=dark] .file-upload-area p,[data-theme=dark] .upload-dropzone p{color:var(--text-tertiary)}[data-theme=dark] .task-form .form-actions,[data-theme=dark] .add-task-form .form-actions,[data-theme=dark] .training-task-form .form-actions{background:transparent;border:none}[data-theme=dark] .task-form,[data-theme=dark] .add-task-form,[data-theme=dark] .training-task-form{background:var(--card-background);border:none}[data-theme=dark] .task-form h2,[data-theme=dark] .task-form h3,[data-theme=dark] .add-task-form h2,[data-theme=dark] .add-task-form h3{color:#f5f3f7}[data-theme=dark] .task-form .form-group label,[data-theme=dark] .add-task-form .form-group label{color:#d4cde0}[data-theme=dark] .task-form .form-control,[data-theme=dark] .add-task-form .form-control,[data-theme=dark] .task-form input,[data-theme=dark] .task-form select,[data-theme=dark] .task-form textarea,[data-theme=dark] .add-task-form input,[data-theme=dark] .add-task-form select,[data-theme=dark] .add-task-form textarea{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .task-form .form-control:focus,[data-theme=dark] .add-task-form .form-control:focus,[data-theme=dark] .task-form input:focus,[data-theme=dark] .task-form select:focus,[data-theme=dark] .task-form textarea:focus{border-color:#ff7a47;box-shadow:0 0 0 3px #ff7a4733}[data-theme=dark] .form-group label{color:#d4cde0}[data-theme=dark] .form-group .form-help,[data-theme=dark] .form-group .help-text{color:var(--text-tertiary)}[data-theme=dark] .form-container,[data-theme=dark] .form-wrapper,[data-theme=dark] .form-panel{background:var(--card-background);border:none}[data-theme=dark] .form-container h2,[data-theme=dark] .form-container h3,[data-theme=dark] .form-wrapper h2,[data-theme=dark] .form-wrapper h3{color:#f5f3f7}[data-theme=dark] .form-section{background:var(--card-background);border:none}[data-theme=dark] .form-section h4,[data-theme=dark] .form-section-title{color:#f5f3f7}[data-theme=dark] .upload-area,[data-theme=dark] .file-input-wrapper{background:var(--input-bg);border:none}[data-theme=dark] .upload-area:hover{border-color:#ff7a47;background:#3d2a35}[data-theme=dark] .upload-area .upload-text,[data-theme=dark] .upload-area p{color:var(--text-tertiary)}[data-theme=dark] .upload-area .upload-icon{color:#7a6b8f}[data-theme=dark] .calendar-header{background:var(--card-background);border:none}[data-theme=dark] .calendar-header h2,[data-theme=dark] .calendar-header h3,[data-theme=dark] .calendar-header .calendar-title{color:#f5f3f7}[data-theme=dark] .session-list-empty,[data-theme=dark] .sessions-empty,[data-theme=dark] .no-sessions{background:var(--card-background);border:none;color:var(--text-tertiary)}[data-theme=dark] .session-list-empty h3,[data-theme=dark] .sessions-empty h3,[data-theme=dark] .no-sessions h3{color:#f5f3f7}[data-theme=dark] .session-list-empty p,[data-theme=dark] .sessions-empty p,[data-theme=dark] .no-sessions p{color:var(--text-tertiary)}[data-theme=dark] .session-scheduler h2,[data-theme=dark] .session-scheduler h3{color:#f5f3f7}[data-theme=dark] .session-scheduler .form-group label{color:#d4cde0}[data-theme=dark] .session-scheduler .form-control,[data-theme=dark] .session-scheduler input,[data-theme=dark] .session-scheduler select,[data-theme=dark] .session-scheduler textarea{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .session-scheduler .form-control:focus,[data-theme=dark] .session-scheduler input:focus,[data-theme=dark] .session-scheduler select:focus{border-color:#ff7a47;box-shadow:0 0 0 3px #ff7a4733}[data-theme=dark] .scheduler-sidebar{background:var(--input-bg);border:none}[data-theme=dark] .scheduler-sidebar h4,[data-theme=dark] .animal-form h1,[data-theme=dark] .animal-form h2,[data-theme=dark] .animal-form h3,[data-theme=dark] .add-animal-form h1,[data-theme=dark] .add-animal-form h2,[data-theme=dark] .add-animal-form h3{color:#f5f3f7}[data-theme=dark] .animal-form .form-group label,[data-theme=dark] .add-animal-form .form-group label{color:#d4cde0}[data-theme=dark] .animal-form .form-control,[data-theme=dark] .animal-form input,[data-theme=dark] .animal-form select,[data-theme=dark] .animal-form textarea,[data-theme=dark] .add-animal-form .form-control,[data-theme=dark] .add-animal-form input,[data-theme=dark] .add-animal-form select,[data-theme=dark] .add-animal-form textarea{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .animal-form .form-control:focus,[data-theme=dark] .animal-form input:focus,[data-theme=dark] .animal-form select:focus,[data-theme=dark] .animal-form textarea:focus,[data-theme=dark] .add-animal-form .form-control:focus,[data-theme=dark] .add-animal-form input:focus,[data-theme=dark] .add-animal-form select:focus,[data-theme=dark] .add-animal-form textarea:focus{border-color:#ff7a47;box-shadow:0 0 0 3px #ff7a4733}[data-theme=dark] .animal-form .form-help,[data-theme=dark] .add-animal-form .form-help{color:var(--text-tertiary)}[data-theme=dark] .animal-form .form-actions,[data-theme=dark] .add-animal-form .form-actions{border:none}[data-theme=dark] .animal-form-section,[data-theme=dark] .form-section-card{background:var(--card-background);border:none}[data-theme=dark] .animal-form-section h4,[data-theme=dark] .form-section-card h4{color:#f5f3f7}[data-theme=dark] .behavior-tags-input,[data-theme=dark] .tags-input{background:var(--input-bg);border:none}[data-theme=dark] .behavior-tags-input input,[data-theme=dark] .tags-input input{background:transparent;color:#f5f3f7}[data-theme=dark] .behavior-tag-item,[data-theme=dark] .tag-item{background:#3d2a35;color:#ffb89e;border-color:#d14a1c}[data-theme=dark] .behavior-tag-item .remove-tag,[data-theme=dark] .tag-item .remove-tag{color:#ffb89e}[data-theme=dark] .behavior-tag-item .remove-tag:hover,[data-theme=dark] .tag-item .remove-tag:hover{color:#f87171}[data-theme=dark] .medical-conditions-input{background:var(--input-bg);border:none}[data-theme=dark] .medical-condition-item{background:#78350f;color:#fde68a;border-color:#92400e}[data-theme=dark] .animal-photo-upload,[data-theme=dark] .photo-upload-container{background:var(--input-bg);border:none}[data-theme=dark] .animal-photo-upload:hover,[data-theme=dark] .photo-upload-container:hover{border-color:#ff7a47;background:#3d2a35}[data-theme=dark] .animal-photo-upload p,[data-theme=dark] .photo-upload-container p{color:var(--text-tertiary)}[data-theme=dark] .invitation-header{background:var(--card-background);border:none}[data-theme=dark] .invitation-header h1,[data-theme=dark] .invitation-header h2{color:#f5f3f7}[data-theme=dark] .invitation-header p{color:var(--text-tertiary)}[data-theme=dark] .invite-client-form .form-actions,[data-theme=dark] .invitation-form .form-actions{border:none;background:transparent}[data-theme=dark] .invite-client-form,[data-theme=dark] .client-invitation-form{background:var(--card-background);border:none}[data-theme=dark] .invite-client-form h3,[data-theme=dark] .client-invitation-form h3{color:#f5f3f7}[data-theme=dark] .invite-client-form .form-group label,[data-theme=dark] .client-invitation-form .form-group label{color:#d4cde0}[data-theme=dark] .invite-client-form .form-control,[data-theme=dark] .invite-client-form input,[data-theme=dark] .invite-client-form select,[data-theme=dark] .invite-client-form textarea,[data-theme=dark] .client-invitation-form .form-control,[data-theme=dark] .client-invitation-form input,[data-theme=dark] .client-invitation-form select,[data-theme=dark] .client-invitation-form textarea{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .invite-client-form .form-control:focus,[data-theme=dark] .invite-client-form input:focus,[data-theme=dark] .invite-client-form select:focus,[data-theme=dark] .client-invitation-form .form-control:focus,[data-theme=dark] .client-invitation-form input:focus,[data-theme=dark] .client-invitation-form select:focus{border-color:#ff7a47;box-shadow:0 0 0 3px #ff7a4733}[data-theme=dark] .invite-client-form .form-help,[data-theme=dark] .client-invitation-form .form-help{color:var(--text-tertiary)}[data-theme=dark] .preference-item{background:var(--card-background);border:none}[data-theme=dark] .preference-item .preference-label h3{color:#f5f3f7}[data-theme=dark] .preference-item .preference-label p{color:var(--text-tertiary)}[data-theme=dark] .preference-section h3,[data-theme=dark] .preference-section .section-title{color:#f5f3f7}[data-theme=dark] .preference-section p,[data-theme=dark] .preference-section .section-description{color:var(--text-tertiary)}[data-theme=dark] .template-form,[data-theme=dark] .message-template-form,[data-theme=dark] .template-editor{background:var(--card-background);border:none}[data-theme=dark] .template-form h1,[data-theme=dark] .template-form h2,[data-theme=dark] .template-form h3,[data-theme=dark] .message-template-form h1,[data-theme=dark] .message-template-form h2,[data-theme=dark] .message-template-form h3,[data-theme=dark] .template-editor h1,[data-theme=dark] .template-editor h2,[data-theme=dark] .template-editor h3{color:#f5f3f7}[data-theme=dark] .template-form .form-group label,[data-theme=dark] .message-template-form .form-group label,[data-theme=dark] .template-editor .form-group label{color:#d4cde0}[data-theme=dark] .template-form .form-control,[data-theme=dark] .template-form input,[data-theme=dark] .template-form select,[data-theme=dark] .template-form textarea,[data-theme=dark] .message-template-form .form-control,[data-theme=dark] .message-template-form input,[data-theme=dark] .message-template-form select,[data-theme=dark] .message-template-form textarea{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .template-form .form-control:focus,[data-theme=dark] .template-form input:focus,[data-theme=dark] .template-form select:focus,[data-theme=dark] .message-template-form .form-control:focus,[data-theme=dark] .message-template-form input:focus,[data-theme=dark] .message-template-form select:focus{border-color:#ff7a47;box-shadow:0 0 0 3px #ff7a4733}[data-theme=dark] .variable-names,[data-theme=dark] .template-variables,[data-theme=dark] .variables-section,[data-theme=dark] .available-variables{background:var(--input-bg);border:none}[data-theme=dark] .variable-names h4,[data-theme=dark] .template-variables h4,[data-theme=dark] .variables-section h4,[data-theme=dark] .available-variables h4{color:#f5f3f7}[data-theme=dark] .variable-names p,[data-theme=dark] .template-variables p,[data-theme=dark] .variables-section p{color:var(--text-tertiary)}[data-theme=dark] .variable-tag,[data-theme=dark] .variable-badge,[data-theme=dark] .template-variable{background:#3d2a35;color:#ffb89e;border-color:#d14a1c}[data-theme=dark] .variable-tag:hover,[data-theme=dark] .variable-badge:hover,[data-theme=dark] .template-variable:hover{background:#d14a1c;color:#ffd4c4}[data-theme=dark] .variable-list{background:var(--input-bg);border:none}[data-theme=dark] .variable-item{background:var(--card-background);border:none;color:#d4cde0}[data-theme=dark] .variable-item code{background:#3d2a35;color:#ffb89e}[data-theme=dark] .tox .tox-toolbar-overlord{background-color:#2a2240!important}[data-theme=dark] .tox .tox-tbtn{color:#d4cde0!important;background-color:transparent!important}[data-theme=dark] .tox .tox-tbtn:hover{background-color:#362d4a!important}[data-theme=dark] .tox .tox-tbtn--enabled,[data-theme=dark] .tox .tox-tbtn--enabled:hover{background-color:#4d4365!important}[data-theme=dark] .tox .tox-tbtn svg{fill:#d4cde0!important}[data-theme=dark] .tox .tox-tbtn__select-label{color:#d4cde0!important}[data-theme=dark] .tox .tox-tbtn__select-chevron svg{fill:#d4cde0!important}[data-theme=dark] .tox .tox-split-button{background-color:transparent!important}[data-theme=dark] .tox .tox-split-button:hover{background-color:#362d4a!important}[data-theme=dark] .tox .tox-split-button__chevron svg{fill:#d4cde0!important}[data-theme=dark] .tox .tox-statusbar{background-color:#2a2240!important;border-color:#362d4a!important;color:#a89bb8!important}[data-theme=dark] .tox .tox-statusbar__text-container,[data-theme=dark] .tox .tox-statusbar__path-item,[data-theme=dark] .tox .tox-statusbar__wordcount{color:#a89bb8!important}[data-theme=dark] .tox .tox-menu{background-color:#2a2240!important;border-color:#362d4a!important}[data-theme=dark] .tox .tox-collection__item{color:#d4cde0!important}[data-theme=dark] .tox .tox-collection__item--active{background-color:#362d4a!important}[data-theme=dark] .tox .tox-collection__item-label{color:#d4cde0!important}[data-theme=dark] .tox .tox-dialog,[data-theme=dark] .tox .tox-dialog__header{background-color:#2a2240!important;border-color:#362d4a!important}[data-theme=dark] .tox .tox-dialog__title{color:#f0edf4!important}[data-theme=dark] .tox .tox-dialog__body{background-color:#2a2240!important;color:#d4cde0!important}[data-theme=dark] .tox .tox-dialog__footer{background-color:#2a2240!important;border-color:#362d4a!important}[data-theme=dark] .tox .tox-label{color:#d4cde0!important}[data-theme=dark] .tox .tox-textfield,[data-theme=dark] .tox .tox-textarea{background-color:#362d4a!important;border-color:#4d4365!important;color:#f0edf4!important}[data-theme=dark] .tox .tox-button--secondary{background-color:#362d4a!important;border-color:#4d4365!important;color:#d4cde0!important}[data-theme=dark] .tox .tox-button--secondary:hover{background-color:#4d4365!important}[data-theme=dark] .ql-toolbar{background-color:#2a2240!important;border-color:#362d4a!important}[data-theme=dark] .ql-toolbar .ql-stroke{stroke:#d4cde0!important}[data-theme=dark] .ql-toolbar .ql-fill{fill:#d4cde0!important}[data-theme=dark] .ql-toolbar .ql-picker{color:#d4cde0!important}[data-theme=dark] .ql-toolbar .ql-picker-options{background-color:#2a2240!important;border-color:#362d4a!important}[data-theme=dark] .ql-toolbar .ql-picker-item{color:#d4cde0!important}[data-theme=dark] .ql-toolbar .ql-picker-item:hover{background-color:#362d4a!important}[data-theme=dark] .ql-container{border-color:#362d4a!important}[data-theme=dark] .ql-editor{background-color:#362d4a!important;color:#f5f3f7!important}[data-theme=dark] .ql-editor.ql-blank:before{color:var(--text-tertiary)!important}[data-theme=dark] .template-preview{background:var(--input-bg);border:none}[data-theme=dark] .template-preview h4{color:#f5f3f7}[data-theme=dark] .template-preview-content{background:var(--card-background);border:none;color:#d4cde0}[data-theme=dark] .session-list.empty{background:var(--card-background);border:none;color:var(--text-tertiary)}[data-theme=dark] .session-list.empty h3{color:#f5f3f7}[data-theme=dark] .session-list.empty p{color:var(--text-tertiary)}[data-theme=dark] .session-list.empty .empty-icon{color:#4d4365}[data-theme=dark] .event-header h4,[data-theme=dark] .event-header h5{color:#f5f3f7}[data-theme=dark] .event-header p{color:var(--text-tertiary)}[data-theme=dark] .profile-settings-page .form-actions,[data-theme=dark] .settings-tabs .form-actions,[data-theme=dark] .general-settings .form-actions{background:transparent;border:none}.searchable-dropdown.dropdown-trigger{border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;padding:8px;cursor:pointer;background-color:var(--input-bg, #ffffff);color:var(--text-primary, #1f2937)}.searchable-dropdown.dropdown-trigger:hover{border-color:var(--accent-orange-hover, #ea580c)}.searchable-dropdown.dropdown-menu{position:absolute;top:100%;left:0;right:0;background-color:var(--card-background, #ffffff);border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;box-shadow:0 4px 12px #00000026;z-index:9999;max-height:200px;overflow:auto}.searchable-dropdown .dropdown-arrow{float:right;color:var(--text-tertiary, #9ca3af)}.searchable-dropdown .dropdown-header,.searchable-dropdown .dropdown-options{background:var(--card-background, #ffffff)}.searchable-dropdown .dropdown-search input,.searchable-dropdown .dropdown-search-input{width:100%;padding:8px;border:none;border-bottom:1px solid var(--border-primary, #e5e7eb);outline:none;background:var(--input-bg, #ffffff);color:var(--text-primary, #1f2937)}.searchable-dropdown .dropdown-search input::placeholder,.searchable-dropdown .dropdown-search-input::placeholder{color:var(--text-tertiary, #9ca3af)}.searchable-dropdown .dropdown-item,.searchable-dropdown .dropdown-option{padding:8px;cursor:pointer;border-bottom:1px solid var(--border-primary, #e5e7eb);background-color:var(--card-background, #ffffff);color:var(--text-primary, #1f2937)}.searchable-dropdown .dropdown-item:hover,.searchable-dropdown .dropdown-option:hover{background-color:var(--surface-hover, #f9fafb)}.searchable-dropdown .dropdown-item.selected,.searchable-dropdown .dropdown-option.selected{background-color:var(--warm-tint-bg, #fff7ed);color:var(--accent-orange, #f97316)}.searchable-dropdown .dropdown-no-results,.searchable-dropdown .no-results{padding:8px;color:var(--text-tertiary, #9ca3af);font-style:italic}[data-theme=dark] .page-header{background:transparent}[data-theme=dark] .page-header h1,[data-theme=dark] .page-header h2{color:#f5f3f7}[data-theme=dark] .page-header p{color:var(--text-tertiary)}[data-theme=dark] .settings-header{background:transparent}[data-theme=dark] .settings-header h1{color:#f5f3f7}[data-theme=dark] .settings-header p{color:var(--text-tertiary)}[data-theme=dark] .sessions-header{background:transparent}[data-theme=dark] .sessions-header h2{color:#f5f3f7}[data-theme=dark] .billing-header{background:transparent}[data-theme=dark] .billing-header h2{color:#f5f3f7}[data-theme=dark] .dashboard-header{background:transparent}[data-theme=dark] .dashboard-header h1,[data-theme=dark] .dashboard-header h2,[data-theme=dark] .header-content h1,[data-theme=dark] .header-content h2{color:#f5f3f7}[data-theme=dark] .header-content p{color:var(--text-tertiary)}[data-theme=dark] .header-text h1,[data-theme=dark] .header-text h2{color:#f5f3f7}[data-theme=dark] .header-text p{color:var(--text-tertiary)}[data-theme=dark] .form-header h3{color:#f5f3f7}[data-theme=dark] .section-header h3,[data-theme=dark] .section-header h4{color:#f5f3f7}[data-theme=dark] .section-header p{color:var(--text-tertiary)}[data-theme=dark] .list-header h1,[data-theme=dark] .list-header h2{color:#f5f3f7}[data-theme=dark] .list-header p{color:var(--text-tertiary)}[data-theme=dark] .manager-header h2{color:#f5f3f7}[data-theme=dark] .manager-header p,[data-theme=dark] .manager-header .description{color:var(--text-tertiary)}[data-theme=dark] .detail-header h1,[data-theme=dark] .detail-header h2{color:#f5f3f7}[data-theme=dark] .detail-header p{color:var(--text-tertiary)}[data-theme=dark] .preferences-header h2,[data-theme=dark] .preferences-header h3{color:#f5f3f7}[data-theme=dark] .preferences-header p,[data-theme=dark] .preferences-description{color:var(--text-tertiary)}[data-theme=dark] .consent-form-manager .page-header h2{color:#f5f3f7}[data-theme=dark] .consent-form-manager .page-header p{color:var(--text-tertiary)}[data-theme=dark] .template-creator-title{color:#f5f3f7}[data-theme=dark] .template-creator-error{background-color:#7f1d1d;border-color:#991b1b;color:#fecaca}[data-theme=dark] .template-form-label{color:#d4cde0}[data-theme=dark] .template-form-input,[data-theme=dark] .template-form-select,[data-theme=dark] .template-form-textarea{border:none;color:#f5f3f7}[data-theme=dark] .template-form-input:focus,[data-theme=dark] .template-form-select:focus,[data-theme=dark] .template-form-textarea:focus{border-color:#ff7a47;box-shadow:0 0 0 3px #ff7a4733}[data-theme=dark] .template-form-input::placeholder,[data-theme=dark] .template-form-textarea::placeholder{color:var(--text-tertiary)}[data-theme=dark] .template-variables-box{background-color:#362d4a;border:none}[data-theme=dark] .template-variables-title{color:#f5f3f7}[data-theme=dark] .template-variables-text{color:var(--text-tertiary)}[data-theme=dark] .template-section-title{color:#f5f3f7}[data-theme=dark] .template-char-count{color:var(--text-tertiary)}[data-theme=dark] .template-cancel-button{background-color:#4d4365}[data-theme=dark] .template-cancel-button:hover{background-color:#7a6b8f}[data-theme=dark] .client-list{background:transparent;color:#d4cde0}[data-theme=dark] .client-list .page-header{background:transparent}[data-theme=dark] .client-list .page-header h2{color:#f5f3f7}[data-theme=dark] .client-list .page-header p{color:var(--text-tertiary)}[data-theme=dark] .client-list-controls{background:var(--input-bg);border:1px solid #4D4365}[data-theme=dark] .client-list .search-input{background-color:#2a2240;border:none;color:#f5f3f7}[data-theme=dark] .client-list .search-input::placeholder{color:var(--text-tertiary)}[data-theme=dark] .client-list .filter-group label{color:#d4cde0}[data-theme=dark] .client-list .filter-select{background-color:#2a2240;border:none;color:#f5f3f7}[data-theme=dark] .client-table-container{background:var(--card-background);border:none}[data-theme=dark] .client-table{background:var(--card-background)}[data-theme=dark] .client-table thead{background:var(--input-bg);border:none}[data-theme=dark] .client-table th{color:#d4cde0;border:none;background:var(--input-bg)}[data-theme=dark] .client-list .balance-negative{color:#f87171}[data-theme=dark] .client-list .checkbox-column input[type=checkbox]{accent-color:#FE6B34}[data-theme=dark] .bulk-action-progress{background:#78350f;border-color:#92400e}[data-theme=dark] .progress-info{color:#fde68a}[data-theme=dark] .client-list .load-more-container{background:transparent}[data-theme=dark] .client-list .load-more-container .btn{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .client-list .load-more-container .btn:hover:not(:disabled){background:#4d4365}[data-theme=dark] .client-list .empty-state{color:var(--text-tertiary);background:transparent}[data-theme=dark] .client-list .empty-state p{color:var(--text-tertiary)}[data-theme=dark] .client-list .empty-state-hint{color:#7a6b8f}[data-theme=dark] .client-list .status-inactive{background:#7f1d1d;color:#fecaca}[data-theme=dark] .client-list .status-invited{background:#78350f;color:#fde68a}[data-theme=dark] .client-list .modal-content{background:var(--card-background);border:none}[data-theme=dark] .client-list .modal-content h3{color:#f5f3f7}[data-theme=dark] .client-list .modal-content p{color:#d4cde0}[data-theme=dark] .client-profile-loading,[data-theme=dark] .client-profile-error{color:var(--text-tertiary)}[data-theme=dark] .stat-value.negative{color:#f87171}[data-theme=dark] .profile-tabs .tab{color:var(--text-tertiary);background:transparent}[data-theme=dark] .profile-tabs .tab:hover{color:#f5f3f7;background:transparent}[data-theme=dark] .info-item p{color:#d4cde0}[data-theme=dark] .preferences-list .preference-item{background:var(--input-bg)}[data-theme=dark] .preference-item span:first-child{color:#d4cde0}[data-theme=dark] .preference-item .disabled{color:#7a6b8f}[data-theme=dark] .client-profile .consent-list .consent-item,[data-theme=dark] .client-profile [style*="border: 1px solid #ddd"]{background:var(--input-bg)!important;border-color:#4d4365!important}[data-theme=dark] .client-profile [style*="backgroundColor: #f8f9fa"]{background-color:#362d4a!important}[data-theme=dark] .client-profile [style*="color: #666"]{color:#a89bb8!important}[data-theme=dark] .client-profile [style*="color: #1a1a1a"],[data-theme=dark] .client-profile [style*="color: #212529"]{color:#f5f3f7!important}[data-theme=dark] .client-profile select[style*="border: 1px solid #ddd"]{background:var(--input-bg)!important;border-color:#4d4365!important;color:#f5f3f7!important}[data-theme=dark] .pets-grid .animal-card{background:var(--card-background);border:none}[data-theme=dark] .animal-info h4{color:#f5f3f7}[data-theme=dark] .animal-info p{color:#d4cde0}[data-theme=dark] .animal-details{color:var(--text-tertiary)}[data-theme=dark] .animal-details p,[data-theme=dark] .animal-details .detail-row span{color:#d4cde0}[data-theme=dark] .animal-details .detail-row strong{color:var(--text-tertiary)}[data-theme=dark] .animal-goals strong,[data-theme=dark] .animal-notes strong{color:#f5f3f7}[data-theme=dark] .animal-goals li,[data-theme=dark] .animal-notes p{color:#d4cde0}[data-theme=dark] .billing-summary{background:var(--input-bg)}[data-theme=dark] .billing-stat label{color:var(--text-tertiary)}[data-theme=dark] .billing-stat p{color:#f5f3f7}[data-theme=dark] .billing-stat .positive{color:#34d399}[data-theme=dark] .billing-stat .negative{color:#f87171}[data-theme=dark] .notification-delays-tab{background:transparent}[data-theme=dark] .delays-header{border:none}[data-theme=dark] .delays-header h3{color:#f5f3f7}[data-theme=dark] .delays-description{color:var(--text-tertiary)}[data-theme=dark] .overrides-badge{background:#fe6b34}[data-theme=dark] .delay-card{background:var(--card-background);border:none}[data-theme=dark] .delay-card:hover{border-color:#ff7a47;box-shadow:0 2px 8px #ff7a471a}[data-theme=dark] .delay-card.overridden{border-color:#fe6b34;background:#3d2a35}[data-theme=dark] .delay-card-header{border:none}[data-theme=dark] .delay-info h4{color:#f5f3f7}[data-theme=dark] .delay-info p{color:var(--text-tertiary)}[data-theme=dark] .delay-setting label{color:#d4cde0}[data-theme=dark] .delay-select{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .delay-select:focus{border-color:#ff7a47;box-shadow:0 0 0 3px #ff7a4733}[data-theme=dark] .delay-card.overridden .delay-select{border-color:#ff7a47}[data-theme=dark] .default-notice{background:var(--input-bg);color:var(--text-tertiary)}[data-theme=dark] .default-notice strong{color:#d4cde0}[data-theme=dark] .delays-actions{border:none}[data-theme=dark] .solo-subscription-notice{background:linear-gradient(135deg,#3d2a35,#d14a1c);border-color:#fe6b34}[data-theme=dark] .solo-subscription-notice .notice-text{color:#ffd4c4}[data-theme=dark] .solo-subscription-notice .notice-hint{color:#ffb89e}[data-theme=dark] .clientprofile-modal-content{background:var(--card-background);border:1px solid #362D4A}[data-theme=dark] .clientprofile-modal-content .modal-header{border:none}[data-theme=dark] .clientprofile-modal-content .modal-header h3{color:#f5f3f7}[data-theme=dark] .clientprofile-modal-content .modal-close{color:var(--text-tertiary)}[data-theme=dark] .clientprofile-modal-content .modal-close:hover{color:#f5f3f7}[data-theme=dark] .clientprofile-modal-content .modal-body{color:#d4cde0}[data-theme=dark] .forms-list .form-option{background:var(--input-bg);border:none}[data-theme=dark] .forms-list .form-option p{color:var(--text-tertiary)}[data-theme=dark] .consent-forms-list .consent-form-item{background:var(--card-background);border:none}[data-theme=dark] .form-info h4{color:#f5f3f7}[data-theme=dark] .form-status.assigned{background:#064e3b;color:#a7f3d0}[data-theme=dark] .form-status.not-assigned{background:#78350f;color:#fde68a}[data-theme=dark] .client-edit-modal .modal-content{background:var(--card-background);border:1px solid #362D4A}[data-theme=dark] .client-edit-modal .modal-header{border:none}[data-theme=dark] .client-edit-modal .modal-header h2{color:#f5f3f7}[data-theme=dark] .client-edit-modal .modal-body{background:var(--card-background)}[data-theme=dark] .client-edit-modal .form-section h3{color:#f5f3f7}[data-theme=dark] .client-edit-modal .modal-footer{background:var(--input-bg);border:none}[data-theme=dark] .client-profile .overview-tab .info-section{background:transparent}[data-theme=dark] .client-profile .animals-tab{background:var(--card-background)}[data-theme=dark] .client-profile .animals-tab .tab-header h3{color:#f5f3f7}[data-theme=dark] .client-profile .animals-grid{background:transparent}[data-theme=dark] .client-profile .pet-card,[data-theme=dark] .client-profile .animals-grid .animal-card{background:var(--input-bg);border:none}[data-theme=dark] .client-profile .sessions-tab{background:var(--card-background)}[data-theme=dark] .client-profile .sessions-tab h3{color:#f5f3f7}[data-theme=dark] .client-profile .sessions-list .session-card{background:var(--input-bg);border:none}[data-theme=dark] .client-profile .session-header{border:none}[data-theme=dark] .client-profile .session-animal .animal-name{color:#f5f3f7}[data-theme=dark] .client-profile .session-status.status-completed{background:#064e3b;color:#a7f3d0}[data-theme=dark] .client-profile .session-status.status-scheduled{background:#3d2a35;color:#ffb89e}[data-theme=dark] .client-profile .session-status.status-cancelled{background:#7f1d1d;color:#fecaca}[data-theme=dark] .client-profile .session-status.status-in-progress{background:#78350f;color:#fde68a}[data-theme=dark] .client-profile .session-label{color:var(--text-tertiary)}[data-theme=dark] .client-profile .session-value{color:#f5f3f7}[data-theme=dark] .client-profile .session-notes{border:none}[data-theme=dark] .client-profile .session-notes p,[data-theme=dark] .client-profile .loading-state,[data-theme=dark] .client-profile .error-state{color:var(--text-tertiary)}[data-theme=dark] .client-profile .error-state{color:#f87171}[data-theme=dark] .client-profile .notifications-tab{background:var(--card-background)}[data-theme=dark] .client-profile .notifications-tab h3{color:#f5f3f7}[data-theme=dark] .client-profile .billing-tab{background:var(--card-background)}[data-theme=dark] .client-profile .billing-tab h3{color:#f5f3f7}[data-theme=dark] .client-profile .permission-denied{background:var(--input-bg);border-radius:8px;padding:2rem;text-align:center}[data-theme=dark] .client-profile .permission-denied h3{color:#f5f3f7}[data-theme=dark] .client-profile .permission-denied p{color:var(--text-tertiary)}[data-theme=dark] .notification-settings{background:var(--card-background);box-shadow:0 1px 3px #0000004d}[data-theme=dark] .notification-settings .settings-header{background:var(--input-bg);border:none}[data-theme=dark] .notification-settings .settings-header h2{color:#f5f3f7}[data-theme=dark] .notification-settings .settings-description{color:var(--text-tertiary)}[data-theme=dark] .notification-category{background:var(--card-background);border:none}[data-theme=dark] .category-header{background:var(--input-bg)}[data-theme=dark] .category-header:hover{background:#4d4365}[data-theme=dark] .category-header h3{color:#f5f3f7}[data-theme=dark] .category-icon{color:var(--text-tertiary)}[data-theme=dark] .category-count{background:var(--card-background);border:none;color:var(--text-tertiary)}[data-theme=dark] .category-events{background:var(--card-background)}[data-theme=dark] .event-config{background:var(--card-background);border:none;box-shadow:0 1px 3px #0003}[data-theme=dark] .event-config:hover{border-color:#ff7a47;box-shadow:0 2px 8px #ff7a471a}[data-theme=dark] .event-config.disabled{background:var(--input-bg)}[data-theme=dark] .event-header{background:var(--input-bg);border:none}[data-theme=dark] .event-info h4{color:#f5f3f7}[data-theme=dark] .event-info p{color:var(--text-tertiary)}[data-theme=dark] .event-type-badge{background:var(--input-bg);border:none;color:var(--text-tertiary)}[data-theme=dark] .event-toggle{color:#f5f3f7}[data-theme=dark] .event-settings{background:var(--card-background)}[data-theme=dark] .setting-label,[data-theme=dark] .setting-group label{color:var(--text-secondary)}[data-theme=dark] .setting-help{color:var(--text-tertiary)}[data-theme=dark] .channel-toggle{background:var(--card-background);border-color:var(--border-color);color:var(--text-primary)}[data-theme=dark] .channel-toggle:hover{border-color:var(--accent-orange);background:var(--surface-hover)}[data-theme=dark] .role-toggle{background:var(--card-background);border-color:var(--border-color);color:var(--text-primary)}[data-theme=dark] .role-toggle:hover{border-color:var(--accent-orange);background:var(--surface-hover)}[data-theme=dark] .form-control{background:var(--input-bg);border-color:var(--border-color);color:var(--text-primary)}[data-theme=dark] .form-control::placeholder{color:var(--text-tertiary)}[data-theme=dark] .form-control:focus{border-color:var(--accent-orange);box-shadow:0 0 0 2px #f4a26126}[data-theme=dark] .form-control:disabled{opacity:.5}[data-theme=dark] .setting-group select{background:var(--input-bg);border-color:var(--border-color);color:var(--text-primary)}[data-theme=dark] .setting-group select:focus{border-color:var(--accent-orange);box-shadow:0 0 0 2px #f4a26126}[data-theme=dark] .setting-group textarea{background:var(--input-bg);border-color:var(--border-color);color:var(--text-primary)}[data-theme=dark] .setting-group textarea:focus{border-color:var(--accent-orange)}[data-theme=dark] .setting-group textarea::placeholder{color:var(--text-tertiary)}[data-theme=dark] .recipient-checkbox{background:var(--card-background);border:none}[data-theme=dark] .recipient-checkbox:hover{border-color:#ff7a47;background:var(--input-bg)}[data-theme=dark] .recipient-checkbox span{color:#d4cde0}[data-theme=dark] .placeholder-badge{background:#064e3b;border-color:#065f46;color:#a7f3d0}[data-theme=dark] .settings-actions{border:none}[data-theme=dark] .notification-preferences{background:transparent}[data-theme=dark] .preferences-header h3{color:#f5f3f7}[data-theme=dark] .preferences-header p{color:var(--text-tertiary)}[data-theme=dark] .preference-section{background:var(--card-background);border:none}[data-theme=dark] .preference-header h4{color:#f5f3f7}[data-theme=dark] .preference-description{color:var(--text-tertiary)}[data-theme=dark] .channel-option{background:var(--card-background);border:none}[data-theme=dark] .channel-option:hover{border-color:#ff7a47;background:var(--input-bg)}[data-theme=dark] .channel-info strong{color:#f5f3f7}[data-theme=dark] .channel-info span,[data-theme=dark] .channel-info p{color:var(--text-tertiary)}[data-theme=dark] .quiet-hours-config{border:none}[data-theme=dark] .time-input label{color:var(--text-tertiary)}[data-theme=dark] .time-input input[type=time]{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .quiet-hours-preview{background:var(--input-bg);border-color:#ff7a47}[data-theme=dark] .quiet-hours-preview p{color:#f5f3f7}[data-theme=dark] .quiet-hours-note{color:#a89bb8!important}[data-theme=dark] .toggle-slider{border:none}[data-theme=dark] .toggle-slider:before{background:linear-gradient(135deg,#d4cde0,#e5e7eb)}[data-theme=dark] .toggle-label{color:var(--text-tertiary)}[data-theme=dark] .system-events,[data-theme=dark] .delivery-channels,[data-theme=dark] .tenant-costs,[data-theme=dark] .analytics-section,[data-theme=dark] .operation-section{background:var(--card-background);border:none}[data-theme=dark] .system-events h3,[data-theme=dark] .delivery-channels h3,[data-theme=dark] .tenant-costs h3,[data-theme=dark] .analytics-section h3,[data-theme=dark] .operation-section h3{color:#f5f3f7}[data-theme=dark] .operation-section p{color:var(--text-tertiary)}[data-theme=dark] .event-item{background:var(--input-bg)}[data-theme=dark] .event-item .event-info strong{color:#f5f3f7}[data-theme=dark] .event-item .event-info p{color:var(--text-tertiary)}[data-theme=dark] .event-time{color:#7a6b8f}[data-theme=dark] .channel-stat{background:var(--input-bg);border:none}[data-theme=dark] .channel-name{color:#d4cde0}[data-theme=dark] .channel-count{color:#ff7a47}[data-theme=dark] .table-header{background:var(--input-bg);color:#f5f3f7}[data-theme=dark] .table-row{border:none;color:#d4cde0}[data-theme=dark] .table-row:hover{background:var(--table-row-hover)}[data-theme=dark] .analytics-controls{background:var(--input-bg)}[data-theme=dark] .time-range-selector label{color:#d4cde0}[data-theme=dark] .time-range-selector select{background:var(--card-background);border:none;color:#f5f3f7}[data-theme=dark] .channel-item{background:var(--input-bg)}[data-theme=dark] .channel-bar{background:#4d4365}[data-theme=dark] .type-item{background:var(--input-bg)}[data-theme=dark] .type-name{color:#d4cde0}[data-theme=dark] .type-count{color:#ff7a47}[data-theme=dark] .trend-chart{background:var(--input-bg)}[data-theme=dark] .trend-date{color:var(--text-tertiary)}[data-theme=dark] .notification-settings .form-group{background:var(--card-background);border:none}[data-theme=dark] .notification-settings .label-text{color:#f5f3f7}[data-theme=dark] .notification-settings .label-description{color:var(--text-tertiary)}[data-theme=dark] .client-sessions-page .page-header h1{color:#f5f3f7}[data-theme=dark] .client-sessions-page .page-header p{color:var(--text-tertiary)}[data-theme=dark] .client-sessions-page .session-card{background:var(--card-background);border:none}[data-theme=dark] .client-sessions-page .session-card.expanded{background:var(--card-background)}[data-theme=dark] .client-sessions-page .session-header{border:none}[data-theme=dark] .client-sessions-page .session-header:hover{background:var(--input-bg)}[data-theme=dark] .client-sessions-page .session-date{color:#f5f3f7}[data-theme=dark] .client-sessions-page .session-time{color:var(--text-tertiary)}[data-theme=dark] .client-sessions-page .session-animal{color:#ff7a47}[data-theme=dark] .animal-assessment-display{background:var(--card-background);border:none}[data-theme=dark] .assessment-text{color:#d4cde0;line-height:1.6}[data-theme=dark] .client-sessions-page .session-trainer{color:var(--text-tertiary)}[data-theme=dark] .client-sessions-page .session-content{background:var(--input-bg)}[data-theme=dark] .client-sessions-page .session-basic-details{background:var(--card-background)}[data-theme=dark] .client-sessions-page .session-basic-details p{color:#d4cde0}[data-theme=dark] .client-sessions-page .animal-info{background:var(--card-background);border-left-color:#ff7a47}[data-theme=dark] .client-sessions-page .animal-info p{color:#d4cde0}[data-theme=dark] .client-sessions-page .trainer-notes{background:#78350f;border-left-color:#f59e0b}[data-theme=dark] .client-sessions-page .trainer-notes h4{color:#fde68a}[data-theme=dark] .client-sessions-page .trainer-notes p{color:#fef3c7}[data-theme=dark] .client-sessions-page .session-media{background:#3d2a35;border-left-color:#ff7a47}[data-theme=dark] .client-sessions-page .session-media h4{color:#ffb89e}[data-theme=dark] .client-sessions-page .client-notes-section{background:#3d2a35}[data-theme=dark] .client-sessions-page .client-notes-section h4{color:#ffb89e}[data-theme=dark] .client-sessions-page .notes-display p{color:#ffd4c4}[data-theme=dark] .client-sessions-page .no-notes{color:#7a6b8f!important}[data-theme=dark] .client-sessions-page .notes-editor textarea{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .client-sessions-page .decline-reason{background:#7f1d1d;border-color:#991b1b}[data-theme=dark] .client-sessions-page .decline-reason h4{color:#fecaca}[data-theme=dark] .client-sessions-page .decline-reason p{color:#fca5a5}[data-theme=dark] .client-sessions-page .reschedule-request{background:var(--input-bg);border-color:#8b5cf6}[data-theme=dark] .client-sessions-page .reschedule-request h4{color:#c4b5fd}[data-theme=dark] .client-sessions-page .reschedule-request p{color:#d4cde0}[data-theme=dark] .client-sessions-page .no-sessions{color:var(--text-tertiary)}[data-theme=dark] .client-sessions-page .loading-state{background:transparent}[data-theme=dark] .client-sessions-page .loading-state p{color:var(--text-tertiary)}[data-theme=dark] .client-sessions-page .filters-section{background:var(--input-bg);border:none}[data-theme=dark] .client-sessions-page .filter-group label{color:#d4cde0}[data-theme=dark] .client-sessions-page .filter-group select{background:var(--card-background);border:none;color:#f5f3f7}[data-theme=dark] .client-sessions-page .filter-group select:focus{border-color:#ff7a47;box-shadow:0 0 0 2px #ff7a4733}[data-theme=dark] .client-sessions-page .session-details{background:transparent}[data-theme=dark] .client-sessions-page .session-details p{color:#d4cde0}[data-theme=dark] .client-sessions-page .session-details strong{color:#f5f3f7}[data-theme=dark] .client-sessions-page .pet-info{background:var(--card-background);border-left-color:#ff7a47}[data-theme=dark] .client-sessions-page .pet-info p{color:#d4cde0}[data-theme=dark] .client-schedule-page .page-header h1{color:#f5f3f7}[data-theme=dark] .client-schedule-page .page-header p{color:var(--text-tertiary)}[data-theme=dark] .client-schedule-page .page-content{background:var(--card-background);border:none;box-shadow:0 1px 3px #0000004d}[data-theme=dark] .client-schedule-page .calendar-container{background:var(--card-background);border:none}[data-theme=dark] .client-schedule-page .calendar-header h3{color:#f5f3f7}[data-theme=dark] .client-schedule-page .calendar-nav{color:var(--text-tertiary)}[data-theme=dark] .client-schedule-page .calendar-nav:hover{background:var(--input-bg);color:#f5f3f7}[data-theme=dark] .client-schedule-page .calendar-weekday{background:var(--input-bg);border:none;color:var(--text-tertiary)}[data-theme=dark] .client-schedule-page .calendar-day-cell{border:none}[data-theme=dark] .client-schedule-page .calendar-day{background-color:var(--cal-day-background);color:#d4cde0}[data-theme=dark] .client-schedule-page .calendar-day.available{color:#f5f3f7}[data-theme=dark] .client-schedule-page .calendar-day.available:hover{background:#3d2a35;color:#ff7a47}[data-theme=dark] .client-schedule-page .calendar-day.selected{background:#fe6b34;color:#fff}[data-theme=dark] .client-schedule-page .calendar-day.unavailable{background:#1e1730;color:#4d4365}[data-theme=dark] .client-schedule-page .time-slots-container{background:var(--card-background);border:none}[data-theme=dark] .client-schedule-page .time-slots-container h4{color:#f5f3f7}[data-theme=dark] .client-schedule-page .time-slot{background:var(--card-background);border:none;color:#d4cde0}[data-theme=dark] .client-schedule-page .time-slot:hover{background:#3d2a35;border-color:#ff7a47;color:#ff7a47}[data-theme=dark] .client-schedule-page .time-slot.selected{background:#fe6b34;border-color:#fe6b34;color:#fff}[data-theme=dark] .client-schedule-page .no-slots{color:#7a6b8f}[data-theme=dark] .client-schedule-page .scheduler-sidebar{background:var(--input-bg);border:none}[data-theme=dark] .client-schedule-page .booking-form{border:none}[data-theme=dark] .animals-page .loading-state{background:transparent}[data-theme=dark] .animals-page .loading-state p{color:var(--text-tertiary)}[data-theme=dark] .layout-main{background-color:var(--body-background)}[data-theme=dark] .session-scheduler .loading-state{background:transparent}[data-theme=dark] .session-scheduler .loading-state p{color:var(--text-tertiary)}[data-theme=dark] .note-item p{color:#d4cde0}[data-theme=dark] .note-meta{color:var(--text-tertiary)}[data-theme=dark] .no-notes{color:#7a6b8f}[data-theme=dark] .consent-forms-page .loading-state,[data-theme=dark] .consent-forms-page{background:transparent}[data-theme=dark] .consent-forms-header h2{color:#f5f3f7}[data-theme=dark] .consent-forms-header p{color:var(--text-tertiary)}[data-theme=dark] .consent-forms-empty{background:var(--card-background);border:none}[data-theme=dark] .consent-forms-empty h3{color:#f5f3f7}[data-theme=dark] .consent-forms-empty p{color:var(--text-tertiary)}[data-theme=dark] .consent-form-card,[data-theme=dark] .form-card{background:var(--card-background);border:none}[data-theme=dark] .form-card-header{border:none}[data-theme=dark] .form-card-header h3{color:#f5f3f7}[data-theme=dark] .form-card-content{background:var(--card-background)}[data-theme=dark] .form-preview{background:var(--input-bg);border:none}[data-theme=dark] .meta-item{color:#d4cde0}[data-theme=dark] .meta-label{color:var(--text-tertiary)}[data-theme=dark] .meta-value,[data-theme=dark] .consent-form-card-info h3{color:#f5f3f7}[data-theme=dark] .consent-form-card-meta{color:var(--text-tertiary)}[data-theme=dark] .consent-form-preview{background:var(--input-bg)}[data-theme=dark] .consent-form-preview strong{color:#f5f3f7}[data-theme=dark] .consent-form-preview-content{color:#d4cde0}[data-theme=dark] .consent-modal{background:var(--card-background);border:none}[data-theme=dark] .consent-modal-header{border:none}[data-theme=dark] .consent-modal-header h3{color:#f5f3f7}[data-theme=dark] .consent-modal-close{color:var(--text-tertiary)}[data-theme=dark] .consent-modal-close:hover,[data-theme=dark] .consent-modal-body h4{color:#f5f3f7}[data-theme=dark] .consent-modal-content{background:var(--input-bg);color:#d4cde0}[data-theme=dark] .consent-signature-group label{color:#f5f3f7}[data-theme=dark] .consent-modal-footer{border:none}[data-theme=dark] .dashboard-loading{background:transparent}[data-theme=dark] .dashboard-loading p{color:var(--text-tertiary)}[data-theme=dark] .dashboard-loading .loading-spinner{border:none;border-top-color:#ff7a47}[data-theme=dark] .dashboard,[data-theme=dark] .dashboard .loading-state{background:transparent}[data-theme=dark] .dashboard .loading-state p{color:var(--text-tertiary)}[data-theme=dark] .page-loading{background:transparent}[data-theme=dark] .page-loading p{color:var(--text-tertiary)}[data-theme=dark] .loading-state{background:transparent}[data-theme=dark] .loading-state p{color:var(--text-tertiary)}[data-theme=dark] .client-tasks-page,[data-theme=dark] .consent-forms-page,[data-theme=dark] .training-resources-page,[data-theme=dark] .client-sessions-page,[data-theme=dark] .animals-page,[data-theme=dark] .animals-list-page,[data-theme=dark] .animal-detail-page,[data-theme=dark] .animal-form-page,[data-theme=dark] .session-detail-page,[data-theme=dark] .template-manager-page,[data-theme=dark] .team-performance-page,[data-theme=dark] .client-assignment-page,[data-theme=dark] .animal-profile-page,[data-theme=dark] .notification-events-tab{background:transparent}[data-theme=dark] .notification-events-tab .events-header h3{color:#f5f3f7}[data-theme=dark] .notification-events-tab .events-filters{background:var(--input-bg);border:none}[data-theme=dark] .notification-events-tab .events-table-container{border:none}[data-theme=dark] .notification-events-tab .events-table{background:var(--card-background)}[data-theme=dark] .notification-events-tab .events-table thead{background:var(--input-bg)}[data-theme=dark] .notification-events-tab .events-table th,[data-theme=dark] .notification-events-tab .events-table td{color:#d4cde0;border:none}[data-theme=dark] .notification-events-tab .events-table tbody tr:hover{background:var(--table-row-hover)}[data-theme=dark] .notification-events-tab .badge-success{background:#064e3b;color:#a7f3d0;border-color:#065f46}[data-theme=dark] .notification-events-tab .badge-info{background:#3d2a35;color:#ffb89e;border-color:#d14a1c}[data-theme=dark] .notification-events-tab .badge-danger{background:#7f1d1d;color:#fecaca;border-color:#991b1b}[data-theme=dark] .notifications-tab{background:transparent}[data-theme=dark] .stat-label,[data-theme=dark] .profile-tabs .tab{color:var(--text-tertiary)}[data-theme=dark] .profile-tabs .tab:hover{color:#f5f3f7;background:var(--input-bg)}[data-theme=dark] .info-section h3{color:#f5f3f7}[data-theme=dark] .info-item .label{color:var(--text-tertiary)}[data-theme=dark] .info-item .value{color:#f5f3f7}[data-theme=dark] .info-section.compact{background:var(--input-bg);border:none}[data-theme=dark] .info-section.compact h3,[data-theme=dark] .info-label{color:var(--text-tertiary)}[data-theme=dark] .period-value{color:#ff7a47}[data-theme=dark] .period-select-row label{color:#f5f3f7}[data-theme=dark] .period-select-row select{background:var(--card-background);border:none;color:#f5f3f7}[data-theme=dark] .consent-form-item{background:var(--input-bg);border:none}[data-theme=dark] .status-signed{color:#a7f3d0}[data-theme=dark] .status-not-assigned{color:var(--text-tertiary)}[data-theme=dark] .preferences-list.compact .preference-item{border:none}[data-theme=dark] .session-card.expanded,[data-theme=dark] .session-header:hover{background:#1e1730}[data-theme=dark] .session-creator,[data-theme=dark] .session-scheduler{background:var(--card-background);border:none}[data-theme=dark] .session-creator-header,[data-theme=dark] .session-editor-header,[data-theme=dark] .session-scheduler-header{border:none}[data-theme=dark] .animal-session-scheduler .scheduler-header,[data-theme=dark] .session-notes-display,[data-theme=dark] .session-notes-editor{background:#1e1730;border:none}[data-theme=dark] .pre-session-notes{background:#422006;border-left-color:#f59e0b}[data-theme=dark] .pre-session-notes strong{color:#fbbf24}[data-theme=dark] .pre-session-notes p{color:#fde68a}[data-theme=dark] .post-session-notes{background:#064e3b;border-left-color:#22c55e}[data-theme=dark] .post-session-notes strong{color:#86efac}[data-theme=dark] .post-session-notes p{color:#d1fae5}[data-theme=dark] .client-pre-session-notes{background:#1e3a8a;border-color:#fe6b34}[data-theme=dark] .client-pre-session-notes strong{color:#ffb89e}[data-theme=dark] .client-pre-session-notes p{background:#1e293b;border-left-color:#fe6b34;color:#ffd4c4}[data-theme=dark] .client-visibility-info{background:#1e293b;border-color:#475569}[data-theme=dark] .client-visibility-info small{color:#94a3b8}[data-theme=dark] .pet-information,[data-theme=dark] .session-details{background:#1e1730;border:none}[data-theme=dark] .pet-information h4,[data-theme=dark] .session-details strong{color:#f5f3f7}[data-theme=dark] .pet-details,[data-theme=dark] .session-details-text{color:#d4cde0}[data-theme=dark] .medical-notes-text{background:var(--card-background);border:none;color:#d4cde0}[data-theme=dark] .session-media-badge,[data-theme=dark] .session-version-badge{background:var(--input-bg);color:#d4cde0}[data-theme=dark] .session-close-dropdown{background:var(--card-background);border:none}[data-theme=dark] .close-dropdown-header{border:none;color:var(--text-tertiary)}[data-theme=dark] .close-dropdown-option.cancel{border:none;color:var(--text-tertiary)}[data-theme=dark] .pending-approval-header h3{color:#fbbf24}[data-theme=dark] .pending-approval-header p{color:#fde68a}[data-theme=dark] .pending-session-details{border:none}[data-theme=dark] .calendar-day-header{background:#1e1730;border:none;color:#f5f3f7}[data-theme=dark] .calendar-cell.today{background:#1e3a8a}.calendar-cell{position:relative;padding-top:32px}.calendar-date{position:absolute;top:8px;left:8px;right:8px;display:flex;justify-content:space-between;align-items:center}.calendar-sessions{margin-top:0}.calendar-session-more{font-size:.75rem;color:#7a6b8f;padding:4px 6px;text-align:center;font-weight:500}[data-theme=dark] .team-management .filters{background:var(--card-background);border:none}[data-theme=dark] .team-management .filter-group label{color:#f5f3f7}[data-theme=dark] .team-management .filter-group input,[data-theme=dark] .team-management .filter-group select{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .team-management .filter-group input:focus,[data-theme=dark] .team-management .filter-group select:focus{border-color:#ff7a47}[data-theme=dark] .team-management .team-list{background:var(--card-background);border:none}[data-theme=dark] .team-management .team-table thead{background:var(--input-bg);border:none}[data-theme=dark] .team-management .team-table th{background:var(--input-bg);color:var(--text-tertiary);border:none}[data-theme=dark] .team-management .team-table td{border:none;color:#d4cde0}[data-theme=dark] .team-management .team-table tbody tr{background:var(--card-background)}[data-theme=dark] .team-management .team-table tbody tr:hover{background:var(--table-row-hover)}[data-theme=dark] .team-management .member-name{color:#f5f3f7}[data-theme=dark] .team-management .member-email{color:var(--text-tertiary)}[data-theme=dark] .team-management .metric-value{color:#f5f3f7}[data-theme=dark] .role-card{background:var(--card-background);border:none}[data-theme=dark] .role-card:hover{border-color:#ff7a47}[data-theme=dark] .role-name{color:#f5f3f7}[data-theme=dark] .role-inheritance{color:#ff7a47}[data-theme=dark] .role-stats{border:none}[data-theme=dark] .role-meta{color:#7a6b8f}[data-theme=dark] .role-details{background:var(--card-background);border:none}[data-theme=dark] .details-header{border:none}[data-theme=dark] .details-header h3,[data-theme=dark] .details-section h4{color:#f5f3f7}[data-theme=dark] .details-section p{color:var(--text-tertiary)}[data-theme=dark] .permission-item{background:var(--input-bg)}[data-theme=dark] .permission-name{color:#d4cde0}[data-theme=dark] .detail-row{border:none}[data-theme=dark] .detail-label{color:var(--text-secondary)}[data-theme=dark] .role-manager .empty-state{background:var(--card-background);border:none}[data-theme=dark] .role-manager .empty-state h3{color:#f5f3f7}[data-theme=dark] .role-manager .empty-state p{color:var(--text-tertiary)}[data-theme=dark] .role-form{background:var(--card-background)}[data-theme=dark] .form-header{border:none}[data-theme=dark] .form-header h2{color:#f5f3f7}[data-theme=dark] .form-header p{color:var(--text-tertiary)}[data-theme=dark] .form-section h3,[data-theme=dark] .form-group label{color:#f5f3f7}[data-theme=dark] .form-group input[type=text],[data-theme=dark] .form-group textarea,[data-theme=dark] .form-group select{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .form-group input[type=text]:focus,[data-theme=dark] .form-group textarea:focus,[data-theme=dark] .form-group select:focus{border-color:#ff7a47}[data-theme=dark] .form-group small{color:var(--text-tertiary)}[data-theme=dark] .permission-category{background:#1e1730;border:none}[data-theme=dark] .category-header{border:none}[data-theme=dark] .category-title h4{color:#f5f3f7}[data-theme=dark] .category-count{background:var(--input-bg);color:#d4cde0}[data-theme=dark] .permission-checkbox{background:var(--card-background);border:none}[data-theme=dark] .permission-checkbox:hover{border-color:#ff7a47}[data-theme=dark] .permission-name{color:#f5f3f7}[data-theme=dark] .permission-description{color:var(--text-tertiary)}[data-theme=dark] .permission-note{color:#fb923c}[data-theme=dark] .form-actions{border:none}[data-theme=dark] .calendar-modal{background:var(--card-background)}[data-theme=dark] .modal-header h2{color:#f5f3f7}[data-theme=dark] .session-count-text,[data-theme=dark] .close-button{color:var(--text-tertiary)}[data-theme=dark] .close-button:hover{background:var(--input-bg);color:#f5f3f7}[data-theme=dark] .no-sessions{color:var(--text-tertiary)}[data-theme=dark] .session-header{border:none}[data-theme=dark] .session-time,[data-theme=dark] .detail-value{color:#f5f3f7}[data-theme=dark] .session-notes{border:none}[data-theme=dark] .notes-item p{margin:0;color:#d4cde0;background:var(--input-bg);font-size:14px;line-height:1.4;padding:8px 12px;border:1px solid #4D4365;border-radius:4px}[data-theme=dark] .notes-text{color:#d4cde0}[data-theme=dark] .pagination-button{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .pagination-button:hover:not(:disabled){background:#4d4365;border-color:#7a6b8f}[data-theme=dark] .pagination-info{color:var(--text-tertiary)}[data-theme=dark] .modal-body::-webkit-scrollbar-track{background:#1e1730}[data-theme=dark] .modal-body::-webkit-scrollbar-thumb{background:#4d4365}[data-theme=dark] .modal-body::-webkit-scrollbar-thumb:hover{background:#7a6b8f}[data-theme=dark] .reschedule-modal-content{background:var(--card-background)}[data-theme=dark] .reschedule-modal-content h3{color:#f5f3f7}[data-theme=dark] .reschedule-modal-content p{color:var(--text-tertiary)}[data-theme=dark] .reschedule-banner{background:#422006;border-color:#f59e0b}[data-theme=dark] .reschedule-banner-icon{color:#fbbf24}[data-theme=dark] .reschedule-banner-title{color:#fde68a}[data-theme=dark] .reschedule-banner-reason{color:#fef3c7}[data-theme=dark] .cancellation-banner{background:#450a0a;border-color:#dc2626}[data-theme=dark] .cancellation-banner .reschedule-banner-icon{color:#f87171}[data-theme=dark] .cancellation-banner .reschedule-banner-title{color:#fecaca}[data-theme=dark] .cancellation-banner .reschedule-banner-reason{color:#fee2e2}[data-theme=dark] .team-management .modal-content{background:var(--card-background)}[data-theme=dark] .team-management .modal-close{color:var(--text-tertiary)}[data-theme=dark] .team-management .modal-close:hover,[data-theme=dark] .session-editor-header h3,[data-theme=dark] .session-creator-header h3{color:#f5f3f7}[data-theme=dark] .session-editor-client,[data-theme=dark] .session-creator-client,[data-theme=dark] .session-editor-date{color:var(--text-tertiary)}[data-theme=dark] .form-label{color:#f5f3f7}[data-theme=dark] .form-textarea,[data-theme=dark] .form-input,[data-theme=dark] .form-select{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .form-textarea:focus,[data-theme=dark] .form-input:focus,[data-theme=dark] .form-select:focus{border-color:#ff7a47}[data-theme=dark] .form-textarea:disabled,[data-theme=dark] .form-input:disabled,[data-theme=dark] .form-select:disabled{background:var(--card-background);color:#7a6b8f}[data-theme=dark] .form-help{color:var(--text-tertiary)}[data-theme=dark] .form-error{background:#450a0a;border-color:#dc2626;color:#fecaca}[data-theme=dark] .session-completed-banner{background-color:#0d3320;border-color:#166534;color:#a7f3d0}[data-theme=dark] .session-completed-banner svg{color:#34d399}[data-theme=dark] .session-completed-banner strong{color:#6ee7b7}[data-theme=dark] .ai-summary-display{background:#064e3b;border-color:#059669;color:#d1fae5}[data-theme=dark] .session-ai-summary{background:#064e3b;border-color:#059669}[data-theme=dark] .session-ai-summary h4{color:#86efac}[data-theme=dark] .session-ai-content{color:#d1fae5}[data-theme=dark] .team-page-header{border:none}[data-theme=dark] .team-page-title h1{color:#f5f3f7}[data-theme=dark] .team-page-title p{color:var(--text-tertiary)}[data-theme=dark] .profile-modal{background:var(--card-background)}[data-theme=dark] .close-btn{color:var(--text-tertiary)}[data-theme=dark] .close-btn:hover{background:var(--input-bg);color:#f5f3f7}[data-theme=dark] .member-name{color:#f5f3f7}[data-theme=dark] .member-email{color:var(--text-tertiary)}[data-theme=dark] .stat-value{color:#f5f3f7}[data-theme=dark] .stat-label{color:var(--text-tertiary)}[data-theme=dark] .modal-tabs{background:#1e1730;border:none}[data-theme=dark] .tab{color:var(--text-tertiary)}[data-theme=dark] .tab:hover{color:#f5f3f7;background:var(--card-background)}[data-theme=dark] .team-member-profile-container .modal-content{background:var(--card-background)}[data-theme=dark] .content-section{background:#1e1730;border:none}[data-theme=dark] .content-section h3{color:#f5f3f7}[data-theme=dark] .info-item label{color:var(--text-tertiary)}[data-theme=dark] .info-item p{color:#f5f3f7}[data-theme=dark] .metric-box{background:var(--card-background);border:none}[data-theme=dark] .metric-number{color:#ff7a47}[data-theme=dark] .metric-name{color:var(--text-tertiary)}[data-theme=dark] .role-badge{background:#1e3a8a;color:#ffb89e}[data-theme=dark] .permission-item{background:var(--card-background);border:none;color:#d4cde0}[data-theme=dark] .client-item{background:var(--card-background);border:none}[data-theme=dark] .client-name{color:#f5f3f7}[data-theme=dark] .client-email{color:var(--text-tertiary)}[data-theme=dark] .chart-section{background:var(--card-background);border:none}[data-theme=dark] .chart-section h4{color:#f5f3f7}[data-theme=dark] .analytics-table{background:var(--card-background);border:none}[data-theme=dark] .analytics-table h4{color:#f5f3f7}[data-theme=dark] .analytics-table th{background:#1e1730;color:var(--text-tertiary);border:none}[data-theme=dark] .analytics-table td{color:#d4cde0;border:none}[data-theme=dark] .analytics-table tr:hover{background:var(--table-row-hover)}[data-theme=dark] .comp-card{background:var(--card-background);border:none}[data-theme=dark] .card-value{color:#f5f3f7}[data-theme=dark] .card-label{color:var(--text-tertiary)}[data-theme=dark] .card-detail{color:#7a6b8f}[data-theme=dark] .compensation-settings{background:#1e1730;border:none}[data-theme=dark] .settings-header h4{color:#f5f3f7}[data-theme=dark] .setting-item{background:var(--card-background);border:none}[data-theme=dark] .setting-label{color:#d4cde0}[data-theme=dark] .setting-value{color:#f5f3f7}[data-theme=dark] .input-group{background:var(--input-bg);border:none}[data-theme=dark] .currency,[data-theme=dark] .unit{background:var(--card-background);color:var(--text-tertiary)}[data-theme=dark] .input-group input{background:var(--input-bg);color:#f5f3f7}[data-theme=dark] .modal-footer{background:#1e1730;border:none}[data-theme=dark] .team-invitation-modal .modal-content{background:var(--card-background)}[data-theme=dark] .team-invitation-form .form-group label{color:#f5f3f7}[data-theme=dark] .team-invitation-form .form-group input,[data-theme=dark] .team-invitation-form .form-group select,[data-theme=dark] .team-invitation-form .form-group textarea{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .team-invitation-form .form-group input:focus,[data-theme=dark] .team-invitation-form .form-group select:focus,[data-theme=dark] .team-invitation-form .form-group textarea:focus{border-color:#ff7a47}[data-theme=dark] .client-assignment .assignment-header h2{color:#f5f3f7}[data-theme=dark] .client-assignment .assignment-header p{color:var(--text-tertiary)}[data-theme=dark] .client-assignment .member-info{background:#1e1730}[data-theme=dark] .client-assignment .member-info strong{color:#f5f3f7}[data-theme=dark] .client-assignment .search-input{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .client-assignment .search-input:focus{border-color:#ff7a47}[data-theme=dark] .client-assignment .clients-panel{background:var(--card-background)}[data-theme=dark] .client-assignment .panel-header{background:#1e1730;border:none}[data-theme=dark] .client-assignment .panel-title{color:#f5f3f7}[data-theme=dark] .client-assignment .panel-count{background:var(--input-bg);color:#d4cde0}[data-theme=dark] .client-assignment .client-item{border:none}[data-theme=dark] .client-assignment .client-item:hover{background:#1e1730}[data-theme=dark] .client-assignment .client-name{color:#f5f3f7}[data-theme=dark] .client-assignment .client-email{color:var(--text-tertiary)}[data-theme=dark] .client-assignment .bulk-actions{background:#1e1730;border:none}[data-theme=dark] .client-assignment .btn-select-all{background:#1e3a8a;color:#ffb89e}[data-theme=dark] .client-assignment .btn-select-all:hover{background:#d14a1c}[data-theme=dark] .client-assignment .btn-clear{background:#422006;color:#fde68a}[data-theme=dark] .client-assignment .btn-clear:hover{background:#78350f}[data-theme=dark] .client-assignment .actions{border:none}[data-theme=dark] .client-assignment .empty-state{color:var(--text-tertiary)}[data-theme=dark] .role-editor-modal{background:var(--card-background)}[data-theme=dark] .editor-header{border:none}[data-theme=dark] .editor-header h2{color:#f5f3f7}[data-theme=dark] .editor-content{background:var(--card-background)}[data-theme=dark] .role-card{background:#1e1730;border:none}[data-theme=dark] .role-card:hover{border:none;background:var(--card-background)}[data-theme=dark] .role-card.selected{border-color:#ff7a47;background:#1e3a8a}[data-theme=dark] .role-label{color:#f5f3f7}[data-theme=dark] .role-description{color:var(--text-tertiary)}[data-theme=dark] .change-notice{background:#422006;border-color:#f59e0b}[data-theme=dark] .change-notice p{color:#fde68a}[data-theme=dark] .error-message{background:#450a0a;border-color:#dc2626;color:#fecaca}[data-theme=dark] .editor-footer{background:#1e1730;border:none}[data-theme=dark] .team-management .page-header h2{color:#f5f3f7}[data-theme=dark] .team-management .page-header p{color:var(--text-tertiary)}[data-theme=dark] .team-management .status-badge.active{background:#064e3b;color:#86efac}[data-theme=dark] .team-management .status-badge.inactive{background:#450a0a;color:#fecaca}[data-theme=dark] .team-management .status-badge.invited{background:#422006;color:#fde68a}[data-theme=dark] .team-management .role-badge{background:#1e3a8a;color:#ffb89e}[data-theme=dark] .team-management .empty-state{color:var(--text-tertiary)}[data-theme=dark] .team-management .empty-state h3{color:#f5f3f7}[data-theme=dark] .team-management .loading{color:var(--text-tertiary)}[data-theme=dark] .team-management .error{background:#450a0a;color:#fecaca}[data-theme=dark] .modal-content{background:var(--card-background)}[data-theme=dark] .modal-content h2,[data-theme=dark] .modal-content h3{color:#f5f3f7}[data-theme=dark] .modal-content p{color:#d4cde0}[data-theme=dark] .modal-header{border:none}[data-theme=dark] .modal-footer{border:none;background:#1e1730}[data-theme=dark] .modal-body{color:#d4cde0}[data-theme=dark] .info-separator{color:#4d4365}[data-theme=dark] .collapsible-section .section-header.clickable:hover{background:#ffffff0d}[data-theme=dark] .collapse-icon{color:var(--text-tertiary)}[data-theme=dark] .role-badge-inline{background:#1e3a8a;color:#ffb89e}[data-theme=dark] .collapsible-content{border:none}[data-theme=dark] .sessions-page{background:transparent}[data-theme=dark] .sessions-header h2,[data-theme=dark] .session-list-title h3{color:#f5f3f7}[data-theme=dark] .session-filters{background:#1e1730;border:none}[data-theme=dark] .session-filters .filter-group label{color:#d4cde0}[data-theme=dark] .session-filters .filter-group select,[data-theme=dark] .session-filters .filter-group input{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .session-card.expanded{background:var(--card-background)}[data-theme=dark] .session-header{background:transparent}[data-theme=dark] .session-header:hover{background:var(--input-bg)}[data-theme=dark] .session-date-primary{color:#f5f3f7}[data-theme=dark] .session-date-secondary{color:var(--text-tertiary)}[data-theme=dark] .session-notes-preview{color:#d4cde0}[data-theme=dark] .session-meta,[data-theme=dark] .session-media-count,[data-theme=dark] .session-expand-icon,[data-theme=dark] .session-full-date{color:var(--text-tertiary)}[data-theme=dark] .session-notes h4,[data-theme=dark] .session-ai-summary h4,[data-theme=dark] .session-media h4{color:#f5f3f7}[data-theme=dark] .session-notes-content,[data-theme=dark] .session-ai-content{color:#d4cde0}[data-theme=dark] .session-ai-summary{background:#064e3b;border-color:#065f46}[data-theme=dark] .session-ai-summary h4{color:#6ee7b7}[data-theme=dark] .session-metadata{color:var(--text-tertiary)}[data-theme=dark] .participant-name{color:#f5f3f7}[data-theme=dark] .participant-pet,[data-theme=dark] .participant-role{color:var(--text-tertiary)}[data-theme=dark] .session-card-notes{color:#d4cde0}[data-theme=dark] .session-media-badge,[data-theme=dark] .session-version-badge{background:var(--input-bg);color:var(--text-tertiary)}[data-theme=dark] .session-ai-badge-small{background:#064e3b;color:#6ee7b7}[data-theme=dark] .session-close-dropdown{background:var(--card-background);border:none;box-shadow:0 -4px 12px #0006}[data-theme=dark] .close-dropdown-header{color:var(--text-tertiary);border:none}[data-theme=dark] .close-dropdown-option{color:#d4cde0}[data-theme=dark] .close-dropdown-option:hover{background:var(--input-bg)}[data-theme=dark] .close-dropdown-option.cancel{color:var(--text-tertiary);border:none}[data-theme=dark] .session-creator{background:var(--card-background);border:none}[data-theme=dark] .session-creator-header,[data-theme=dark] .session-editor-header{border:none}[data-theme=dark] .session-creator-header h3,[data-theme=dark] .session-editor-header h3{color:#f5f3f7}[data-theme=dark] .session-creator-client,[data-theme=dark] .session-editor-client,[data-theme=dark] .session-editor-date{color:var(--text-tertiary)}[data-theme=dark] .session-creator-actions,[data-theme=dark] .session-editor-actions{border:none}[data-theme=dark] .session-scheduler{background:var(--card-background);border:none}[data-theme=dark] .session-scheduler-header{border:none}[data-theme=dark] .session-scheduler-header h3{color:#f5f3f7}[data-theme=dark] .session-scheduler-description{color:var(--text-tertiary)}[data-theme=dark] .session-scheduler-actions{border:none}[data-theme=dark] .pet-information{background:#1e1730;border:none}[data-theme=dark] .pet-information h4{color:#f5f3f7}[data-theme=dark] .pet-details{color:#d4cde0}[data-theme=dark] .pet-details strong{color:#f5f3f7}[data-theme=dark] .behavior-tags strong,[data-theme=dark] .medical-conditions strong{color:#d4cde0}[data-theme=dark] .medical-condition{background:#78350f;color:#fde68a}[data-theme=dark] .medical-notes-text{background:var(--input-bg);border:none;color:#d4cde0}[data-theme=dark] .session-details{background:#1e1730;border:none}[data-theme=dark] .session-details strong{color:#f5f3f7}[data-theme=dark] .session-details-text{color:#d4cde0}[data-theme=dark] .session-notes-editor{background:#1e1730;border:none}[data-theme=dark] .session-notes-editor h4{color:#f5f3f7}[data-theme=dark] .notes-form .form-group label{color:#d4cde0}[data-theme=dark] .notes-form .form-textarea{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .radio-option{color:#d4cde0}[data-theme=dark] .session-notes-display{background:#1e1730;border:none}[data-theme=dark] .session-notes-display h4{color:#f5f3f7;border:none}[data-theme=dark] .pre-session-notes{background:#78350f;border-left-color:#f59e0b}[data-theme=dark] .pre-session-notes strong{color:#fde68a}[data-theme=dark] .pre-session-notes p{color:#fef3c7}[data-theme=dark] .post-session-notes{background:#064e3b;border-left-color:#10b981}[data-theme=dark] .post-session-notes strong{color:#6ee7b7}[data-theme=dark] .post-session-notes p{color:#a7f3d0}[data-theme=dark] .client-visibility-info{background:#3d2a35;border-color:#d14a1c}[data-theme=dark] .client-visibility-info small{color:#ffb89e}[data-theme=dark] .client-pre-session-notes{background:#3d2a35;border-color:#0ea5e9}[data-theme=dark] .client-pre-session-notes strong{color:#7dd3fc}[data-theme=dark] .client-pre-session-notes p{background:#0c4a6e;border-left-color:#0ea5e9;color:#bae6fd}[data-theme=dark] .version-history{background:#1e1730;border:none}[data-theme=dark] .version-history h4{color:#f5f3f7}[data-theme=dark] .version-item{background:var(--card-background);border:none}[data-theme=dark] .version-number{background:var(--input-bg);color:#d4cde0}[data-theme=dark] .version-date,[data-theme=dark] .version-author{color:var(--text-tertiary)}[data-theme=dark] .version-notes-preview{color:#d4cde0}[data-theme=dark] .ai-summary-display{background:#064e3b;border-color:#065f46;color:#a7f3d0}[data-theme=dark] .pending-approval-header h3{color:#fde68a}[data-theme=dark] .pending-approval-header p{color:#fef3c7}[data-theme=dark] .pending-session-info h4{color:#f5f3f7}[data-theme=dark] .pending-session-date,[data-theme=dark] .pending-session-trainer{color:var(--text-tertiary)}[data-theme=dark] .pending-session-pet{color:#d4cde0}[data-theme=dark] .pending-session-actions,[data-theme=dark] .pending-session-details{border:none}[data-theme=dark] .pending-session-duration,[data-theme=dark] .pending-session-location{color:var(--text-tertiary)}[data-theme=dark] .pending-session-notes{color:#d4cde0}[data-theme=dark] .pending-session-notes strong{color:#f5f3f7}[data-theme=dark] .session-close-options{background:#1e1730;border:none}[data-theme=dark] .session-close-options h4{color:#f5f3f7}[data-theme=dark] .session-close-options p{color:var(--text-tertiary)}[data-theme=dark] .session-detail-page .header-content h1{color:#f5f3f7}[data-theme=dark] .session-detail-page .meta-item{background:var(--input-bg);color:#d4cde0}[data-theme=dark] .session-detail-page .loading-container,[data-theme=dark] .session-detail-page .error-container{color:var(--text-tertiary)}[data-theme=dark] .session-detail-page .error-container h2{color:#f87171}[data-theme=dark] .session-detail-page .error-container p{color:var(--text-tertiary)}[data-theme=dark] .calendar-view{background:var(--card-background);border:none}[data-theme=dark] .calendar-header{border:none}[data-theme=dark] .calendar-title h3{color:#f5f3f7}[data-theme=dark] .calendar-nav-btn{background:var(--input-bg);border:none;color:#d4cde0}[data-theme=dark] .calendar-nav-btn:hover:not(:disabled){background:#4d4365}[data-theme=dark] .calendar-view-toggle{border:none}[data-theme=dark] .calendar-view-btn{background:var(--input-bg);color:#d4cde0;border:none}[data-theme=dark] .calendar-view-btn:hover:not(.active){background:#4d4365}[data-theme=dark] .calendar-view-btn.active{background:#fe6b34;color:#fff}[data-theme=dark] .calendar-filter label{color:var(--text-tertiary)}[data-theme=dark] .calendar-filter select{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .calendar-grid{background:var(--card-background);border:none}[data-theme=dark] .calendar-day-header{background:#1e1730;border:none;color:#d4cde0}[data-theme=dark] .calendar-time-slot{background:#1e1730;border:none;color:var(--text-tertiary)}[data-theme=dark] .calendar-cell{background:var(--card-background)}[data-theme=dark] .calendar-cell.today{background:#3d2a35}[data-theme=dark] .calendar-cell.other-month{background:#1e1730}[data-theme=dark] .calendar-date{color:#f5f3f7}[data-theme=dark] .calendar-session{background:#1e3a8a;border-left-color:#fe6b34;color:#ffb89e}[data-theme=dark] .calendar-session:hover{background:#d14a1c}[data-theme=dark] .calendar-session.completed{background:#064e3b;border-left-color:#10b981;color:#6ee7b7}[data-theme=dark] .calendar-session.cancelled{background:#7f1d1d;border-left-color:#dc2626;color:#fca5a5}[data-theme=dark] .calendar-session-more{color:var(--text-tertiary)}[data-theme=dark] .animal-session-scheduler .scheduler-header{background:#1e1730;border:none}[data-theme=dark] .animal-session-scheduler .scheduler-header h2{color:#f5f3f7}[data-theme=dark] .animal-session-scheduler .animal-info{color:var(--text-tertiary)}[data-theme=dark] .meta-badge{background:var(--input-bg);color:#d4cde0;border:none}[data-theme=dark] .meta-badge.animal-badge{background:#1e3a8a;color:#ffb89e;border-color:#fe6b34}[data-theme=dark] .meta-badge.date-badge{background:var(--input-bg);color:#d4cde0;border:none}[data-theme=dark] .session-trainer{color:var(--text-tertiary)}[data-theme=dark] .tags-label{color:#d4cde0}[data-theme=dark] .session-card.past-session{border-left-color:#7a6b8f}[data-theme=dark] .session-card.past-session .session-date-primary{color:var(--text-tertiary)}[data-theme=dark] .messenger-widget{background:var(--card-background);box-shadow:0 8px 32px #0006}[data-theme=dark] .contact-list-container{background:#1e1730}[data-theme=dark] .contact-list-search{background:var(--card-background);border:none}[data-theme=dark] .search-icon{color:#7a6b8f}[data-theme=dark] .contact-search-input{color:#f5f3f7;background:transparent}[data-theme=dark] .contact-search-input::placeholder{color:var(--text-tertiary)}[data-theme=dark] .search-clear-button{color:#7a6b8f}[data-theme=dark] .search-clear-button:hover{background:var(--input-bg);color:var(--text-tertiary)}[data-theme=dark] .contact-section-title{color:var(--text-tertiary)}[data-theme=dark] .contact-item{background:var(--card-background);border:none}[data-theme=dark] .contact-item:hover{background:var(--input-bg)}[data-theme=dark] .contact-item:active{background:#4d4365}[data-theme=dark] .contact-name{color:#f5f3f7}[data-theme=dark] .contact-time{color:#7a6b8f}[data-theme=dark] .contact-preview,[data-theme=dark] .contact-list-loading,[data-theme=dark] .contact-list-empty{color:var(--text-tertiary)}[data-theme=dark] .contact-list-empty svg{color:#4d4365}[data-theme=dark] .contact-list-empty p{color:#d4cde0}[data-theme=dark] .contact-list-empty span{color:#7a6b8f}[data-theme=dark] .contact-list-content::-webkit-scrollbar-thumb{background:#4d4365}[data-theme=dark] .contact-list-content::-webkit-scrollbar-thumb:hover{background:#7a6b8f}[data-theme=dark] .message-thread-container{background:var(--card-background)}[data-theme=dark] .message-thread-header{background:var(--card-background);border:none}[data-theme=dark] .back-button{color:var(--text-tertiary)}[data-theme=dark] .back-button:hover{background:var(--input-bg);color:#f5f3f7}[data-theme=dark] .thread-info h3{color:#f5f3f7}[data-theme=dark] .message-thread-messages{background:#1e1730}[data-theme=dark] .message-date-divider span{background:var(--input-bg);color:var(--text-tertiary)}[data-theme=dark] .message-sender{color:var(--text-tertiary)}[data-theme=dark] .message-received .message-bubble{background:var(--input-bg);color:#f5f3f7;border:none}[data-theme=dark] .message-time{color:#7a6b8f}[data-theme=dark] .typing-dots{background:var(--input-bg);border:none}[data-theme=dark] .typing-dots span{background:#7a6b8f}[data-theme=dark] .typing-text,[data-theme=dark] .message-thread-empty{color:var(--text-tertiary)}[data-theme=dark] .message-thread-empty svg{color:#4d4365}[data-theme=dark] .message-thread-empty p{color:#d4cde0}[data-theme=dark] .message-thread-empty span{color:#7a6b8f}[data-theme=dark] .message-thread-messages::-webkit-scrollbar-thumb{background:#4d4365}[data-theme=dark] .message-thread-messages::-webkit-scrollbar-thumb:hover{background:#7a6b8f}[data-theme=dark] .message-composer{background:var(--card-background);border:none}[data-theme=dark] .message-attachments{border:none}[data-theme=dark] .attachment-preview{background:var(--input-bg);color:#d4cde0}[data-theme=dark] .attachment-remove{color:var(--text-tertiary)}[data-theme=dark] .attachment-remove:hover{background:#4d4365;color:#f5f3f7}[data-theme=dark] .emoji-picker{background:var(--card-background);border:none}[data-theme=dark] .emoji-picker-header span{color:#d4cde0}[data-theme=dark] .emoji-picker-close{color:var(--text-tertiary)}[data-theme=dark] .emoji-picker-close:hover{background:var(--input-bg);color:#f5f3f7}[data-theme=dark] .emoji-button:hover{background:var(--input-bg)}[data-theme=dark] .emoji-button:active{background:#4d4365}[data-theme=dark] .composer-action-button{color:var(--text-tertiary)}[data-theme=dark] .composer-action-button:hover{background:var(--input-bg);color:#f5f3f7}[data-theme=dark] .composer-action-button:active{background:#4d4365}[data-theme=dark] .message-input{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .message-input::placeholder{color:var(--text-tertiary)}[data-theme=dark] .message-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea33}[data-theme=dark] .character-count{color:var(--text-tertiary);border:none}[data-theme=dark] .message-input::-webkit-scrollbar-thumb{background:#4d4365}[data-theme=dark] .message-input::-webkit-scrollbar-thumb:hover{background:#7a6b8f}[data-theme=dark] .messenger-widget-button{box-shadow:0 -2px 12px #0006}[data-theme=dark] .messenger-widget-button:hover{box-shadow:0 -4px 16px #00000080}[data-theme=dark] .messenger-widget{background:#1e1730;box-shadow:0 8px 32px #0006}[data-theme=dark] .new-message-button-container{background:var(--card-background);border:none}[data-theme=dark] .new-message-picker{background:#1e1730}[data-theme=dark] .new-message-picker-header{background:var(--card-background);border:none}[data-theme=dark] .new-message-back-button{color:#667eea}[data-theme=dark] .new-message-back-button:hover{background:var(--input-bg)}[data-theme=dark] .new-message-picker-title{color:#f5f3f7}[data-theme=dark] .new-message-picker-search{background:var(--card-background);border:none}[data-theme=dark] .new-message-picker-search .contact-search-input{color:#f5f3f7}[data-theme=dark] .new-message-picker-list{background:#1e1730}[data-theme=dark] .new-message-picker-empty{color:var(--text-tertiary)}[data-theme=dark] .contact-item-unread .contact-name{color:#f5f3f7}[data-theme=dark] .contact-item-unread .contact-preview{color:#d4cde0}[data-theme=dark] .contact-item-unread .contact-time{color:#667eea}[data-theme=dark] .session-media{background:var(--card-background);border:none}[data-theme=dark] .session-media-uploader{background:transparent}[data-theme=dark] .media-upload-icon{color:var(--text-tertiary)}[data-theme=dark] .media-upload-primary{color:#f5f3f7}[data-theme=dark] .media-upload-secondary{color:var(--text-tertiary)}[data-theme=dark] .media-upload-limit{color:var(--accent-orange)}[data-theme=dark] .upload-item{background:var(--input-bg);border:none}[data-theme=dark] .upload-name{color:#f5f3f7}[data-theme=dark] .upload-size{color:var(--text-tertiary)}[data-theme=dark] .upload-progress-bar{background:#4d4365}[data-theme=dark] .upload-remove{color:#7a6b8f}[data-theme=dark] .upload-remove:hover{color:#f87171}[data-theme=dark] .session-media-gallery{background:transparent}[data-theme=dark] .media-gallery-item{background:var(--input-bg);border:none}[data-theme=dark] .media-gallery-skeleton{background:var(--input-bg)}[data-theme=dark] .skeleton-loader{background:linear-gradient(90deg,#362d4a,#4d4365 20%,#362d4a 40% 100%);background-size:200% 100%}[data-theme=dark] .media-gallery-empty{color:#7a6b8f}[data-theme=dark] .media-gallery-empty-icon{color:#4d4365}[data-theme=dark] .media-control-btn{background:#1f2937e6;color:#f5f3f7}[data-theme=dark] .media-control-btn:hover{background:var(--input-bg)}[data-theme=dark] .media-control-btn.delete:hover{background:#7f1d1d;color:#fca5a5}[data-theme=dark] .delete-confirmation-dialog{background:var(--card-background);border:1px solid #362D4A}[data-theme=dark] .delete-confirmation-title{color:#f5f3f7}[data-theme=dark] .delete-confirmation-message{color:#d4cde0}[data-theme=dark] .delete-confirmation-btn{background:var(--input-bg);border:none;color:#d4cde0}[data-theme=dark] .delete-confirmation-btn:hover{background:#4d4365}[data-theme=dark] .delete-confirmation-btn.confirm{background:#dc2626;border-color:#dc2626;color:#fff}[data-theme=dark] .delete-confirmation-btn.confirm:hover{background:#b91c1c}[data-theme=dark] .working-schedule-settings .card{background:var(--card-background);border:none}[data-theme=dark] .working-schedule-settings .card-header{border:none}[data-theme=dark] .working-schedule-settings .card-header h3{color:#f0edf4}[data-theme=dark] .working-schedule-settings .timezone-display{color:var(--text-tertiary)}[data-theme=dark] .working-schedule-settings .schedule-day{background:var(--card-background);border:none}[data-theme=dark] .working-schedule-settings .day-label label{color:#d4cde0}[data-theme=dark] .working-schedule-settings .time-inputs span{color:var(--text-tertiary)}[data-theme=dark] .working-schedule-settings .timezone-section{background:var(--input-bg);border:none}[data-theme=dark] .working-schedule-settings .timezone-section label{color:#d4cde0}[data-theme=dark] .working-schedule-settings .timezone-select{background:var(--card-background);border:none;color:#f0edf4}[data-theme=dark] .time-block-manager .time-block-header h4{color:#f0edf4}[data-theme=dark] .time-block-manager .add-time-block-form{background:var(--input-bg);border:none}[data-theme=dark] .time-block-manager .form-group label{color:#d4cde0}[data-theme=dark] .time-block-manager .form-group input,[data-theme=dark] .time-block-manager .form-group select{background:var(--card-background);border:none;color:#f0edf4}[data-theme=dark] .time-block-manager .form-group input::placeholder{color:var(--text-tertiary)}[data-theme=dark] .time-block-manager .time-block-item{background:var(--card-background);border:none}[data-theme=dark] .time-block-manager .time-block-item.unavailable{background:var(--card-background);border:none;border-left-color:#dc2626}[data-theme=dark] .time-block-manager .time-block-item.busy{background:var(--card-background);border:none;border-left-color:#f59e0b}[data-theme=dark] .time-block-manager .block-title{color:#f0edf4}[data-theme=dark] .time-block-manager .block-details{color:var(--text-tertiary)}[data-theme=dark] .time-block-manager .block-type,[data-theme=dark] .time-block-manager .no-blocks{color:#7a6b8f}[data-theme=dark] .info-box{background:var(--input-bg);border-left-color:#ff7a47}[data-theme=dark] .info-box .info-item{color:#d4cde0}[data-theme=dark] .info-box.disabled{opacity:.5}[data-theme=dark] .photo-upload-controls label.btn-primary{background-color:#fe6b34;color:#fff}[data-theme=dark] .photo-upload-controls label.btn-primary:hover{background-color:#2563eb}[data-theme=dark] .status.inactive{background-color:#362d4a;color:var(--text-tertiary)}[data-theme=dark] .animal-detail-page .species,[data-theme=dark] .animal-detail-page .breed,[data-theme=dark] .animal-detail-page .animal-meta{color:var(--text-tertiary)}[data-theme=dark] .behavior-tags-inline{border:none}[data-theme=dark] .behavior-tags-inline .behavior-label{color:var(--text-tertiary)}[data-theme=dark] .billing-settings{background:var(--card-background);box-shadow:0 2px 4px #0000004d}[data-theme=dark] .billing-settings.loading{color:var(--text-tertiary)}[data-theme=dark] .billing-settings-header{border:none}[data-theme=dark] .billing-settings-header h3{color:#f5f3f7}[data-theme=dark] .billing-settings-description{color:var(--text-tertiary)}[data-theme=dark] .billing-settings-success{background:#064e3b;border-color:#065f46;color:#a7f3d0}[data-theme=dark] .billing-settings-error{background:#7f1d1d;border-color:#991b1b;color:#fecaca}[data-theme=dark] .billing-settings-error .dismiss-error{color:#fecaca}[data-theme=dark] .billing-settings-error .dismiss-error:hover{color:#fff}[data-theme=dark] .settings-section{border:none}[data-theme=dark] .settings-section-header h4{color:#f5f3f7}[data-theme=dark] .settings-section-description{color:var(--text-tertiary)}[data-theme=dark] .settings-toggle input[type=checkbox]:checked+.toggle-slider{background:#ff7a47}[data-theme=dark] .toggle-label{color:#f5f3f7}[data-theme=dark] .toggle-description{color:var(--text-tertiary)}[data-theme=dark] .learn-more-link{color:#ff7a47}[data-theme=dark] .learn-more-link:hover{color:#ffb89e}[data-theme=dark] .settings-form-group label{color:#d4cde0}[data-theme=dark] .field-description{color:var(--text-tertiary)}[data-theme=dark] .settings-input{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .settings-input::placeholder{color:var(--text-tertiary)}[data-theme=dark] .settings-input:focus{border-color:#ff7a47;box-shadow:0 0 0 3px #ff7a4733}[data-theme=dark] .settings-input:disabled{background:var(--card-background);color:var(--text-tertiary)}[data-theme=dark] .settings-input-wrapper .input-prefix,[data-theme=dark] .settings-input-wrapper .input-suffix{color:var(--text-tertiary)}[data-theme=dark] .settings-select{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .settings-select:focus{border-color:#ff7a47;box-shadow:0 0 0 3px #ff7a4733}[data-theme=dark] .settings-select:disabled{background:var(--card-background);color:var(--text-tertiary)}[data-theme=dark] .remove-tag-btn{color:var(--text-tertiary)}[data-theme=dark] .remove-tag-btn:hover{background:#dc3545;color:#fff}[data-theme=dark] .tax-manual-notice{background:#78350f;border-color:#92400e}[data-theme=dark] .tax-manual-notice .notice-icon,[data-theme=dark] .tax-manual-notice p{color:#fde68a}[data-theme=dark] .settings-section .field-error{background:#7f1d1d;color:#fecaca}[data-theme=dark] .settings-three-column-grid .settings-column,[data-theme=dark] .settings-four-column-grid .settings-column{background:var(--input-bg);border:none}[data-theme=dark] .settings-four-column-grid .settings-section-header h4{color:#f5f3f7}[data-theme=dark] .settings-four-column-grid .settings-form-group label{color:#d4cde0}[data-theme=dark] .settings-four-column-grid .settings-select,[data-theme=dark] .settings-four-column-grid .settings-input{background:var(--card-background);border:none;color:#f5f3f7}[data-theme=dark] .settings-four-column-grid .settings-select:focus,[data-theme=dark] .settings-four-column-grid .settings-input:focus{border-color:#ff7a47;box-shadow:0 0 0 3px #ff7a4733}[data-theme=dark] .settings-four-column-grid .toggle-label{color:#d4cde0}[data-theme=dark] .settings-four-column-grid .tax-manual-notice{background:#3d2a35;border-color:#d14a1c;color:#ffd4c4}[data-theme=dark] .settings-four-column-grid .reminder-day-tag .remove-tag-btn{color:var(--text-tertiary)}[data-theme=dark] .settings-four-column-grid .reminder-day-tag .remove-tag-btn:hover{color:#f87171}[data-theme=dark] .settings-four-column-grid .input-prefix,[data-theme=dark] .settings-four-column-grid .input-suffix{color:var(--text-tertiary)}[data-theme=dark] .settings-actions,[data-theme=dark] .settings-footer{border:none}[data-theme=dark] .last-updated{color:var(--text-tertiary)}[data-theme=dark] .rate-settings{background:var(--card-background);border:none}[data-theme=dark] .rate-settings-header h4{color:#f5f3f7}[data-theme=dark] .rate-settings-description{color:var(--text-tertiary)}[data-theme=dark] .rate-card{background:var(--input-bg);border:none}[data-theme=dark] .rate-card:hover{border-color:#ff7a47}[data-theme=dark] .rate-card-header h5{color:#f5f3f7}[data-theme=dark] .rate-type-badge{background:#4d4365;color:#d4cde0}[data-theme=dark] .rate-type-badge.default{background:#3d2a35;color:#ff7a47}[data-theme=dark] .rate-description,[data-theme=dark] .no-rates,[data-theme=dark] .rate-settings.loading{color:var(--text-tertiary)}[data-theme=dark] .rate-settings-header{border:none}[data-theme=dark] .rate-settings-header h3{color:#f5f3f7}[data-theme=dark] .rate-settings-success{background:#064e3b;border-color:#065f46;color:#a7f3d0}[data-theme=dark] .rate-settings-error{background:#7f1d1d;border-color:#991b1b;color:#fecaca}[data-theme=dark] .rate-settings-error .dismiss-error{color:#fecaca}[data-theme=dark] .rate-settings-error .dismiss-error:hover{color:#fff}[data-theme=dark] .rate-section{background:var(--input-bg);border:none}[data-theme=dark] .rate-section-header h4{color:#f5f3f7}[data-theme=dark] .rate-section-description{color:var(--text-tertiary)}[data-theme=dark] .rate-display{background:var(--card-background);border:none}[data-theme=dark] .rate-period{color:var(--text-tertiary)}[data-theme=dark] .rate-not-configured{color:#fde68a}[data-theme=dark] .rate-edit-form{background:var(--card-background);border:none}[data-theme=dark] .rate-input-group label{color:var(--text-secondary)}[data-theme=dark] .rate-input-wrapper{background:var(--input-bg);border-color:var(--border-color)}[data-theme=dark] .rate-input-wrapper:focus-within{border-color:var(--accent-orange);box-shadow:0 0 0 3px #f4a26126}[data-theme=dark] .currency-prefix{color:#d4cde0;border:none}[data-theme=dark] .rate-input{background:transparent;color:var(--text-primary)}[data-theme=dark] .rate-input::placeholder{color:var(--text-tertiary)}[data-theme=dark] .rate-suffix{color:var(--text-tertiary)}[data-theme=dark] .currency-select,[data-theme=dark] .trainer-select{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .currency-select:focus,[data-theme=dark] .trainer-select:focus{border-color:#ff7a47;box-shadow:0 0 0 3px #ff7a4733}[data-theme=dark] .trainer-rate-item{background:var(--card-background);border:none}[data-theme=dark] .trainer-name{color:#f5f3f7}[data-theme=dark] .no-trainer-rates{background:var(--card-background);border:none}[data-theme=dark] .no-trainer-rates p,[data-theme=dark] .all-trainers-configured{color:var(--text-tertiary)}[data-theme=dark] .rate-settings-note{background:#3d2a35;border-color:#d14a1c;color:#ffd4c4}[data-theme=dark] .stripe-connect-status{background:var(--card-background);box-shadow:0 2px 4px #0000004d}[data-theme=dark] .stripe-connect-status h3{color:#f5f3f7}[data-theme=dark] .stripe-onboarding{background:var(--card-background);box-shadow:0 2px 4px #0000004d}[data-theme=dark] .stripe-onboarding h3{color:#f5f3f7}[data-theme=dark] .stripe-onboarding p{color:var(--text-tertiary)}[data-theme=dark] .invoice-detail{background:var(--card-background);box-shadow:0 2px 4px #0000004d}[data-theme=dark] .invoice-detail h3,[data-theme=dark] .invoice-detail h4{color:#f5f3f7}[data-theme=dark] .line-items-table{background:var(--card-background);border:none}[data-theme=dark] .line-items-table thead{background:var(--input-bg)}[data-theme=dark] .line-items-table th,[data-theme=dark] .line-items-table td{color:#d4cde0;border:none}[data-theme=dark] .refund-item{background:var(--surface-secondary);border:none}[data-theme=dark] .attempt-item,[data-theme=dark] .invoice-notes{background:var(--input-bg);border:none}[data-theme=dark] .invoice-notes h4{color:#f5f3f7}[data-theme=dark] .client-balances-section{background:var(--card-background);box-shadow:0 2px 4px #0000004d}[data-theme=dark] .client-balances-section h3{color:#f5f3f7}[data-theme=dark] .promo-stats .stat-card,[data-theme=dark] .promo-code-card{background:var(--card-background);box-shadow:0 2px 4px #0000004d}[data-theme=dark] .promo-code-card h4{color:#f5f3f7}[data-theme=dark] .promo-code-input{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .promo-code-input:focus{border-color:#ff7a47;box-shadow:0 0 0 3px #ff7a4733}[data-theme=dark] .package-description{color:var(--text-tertiary)}[data-theme=dark] .package-price{color:#ff7a47}[data-theme=dark] .quick-action-buttons .btn-outline{background:var(--input-bg);border:none;color:#d4cde0}[data-theme=dark] .quick-action-buttons .btn-outline:hover{background:#4d4365;border-color:#ff7a47;color:#ff7a47}[data-theme=dark] .invoice-payment-modal .modal-content{background:var(--card-background);border:1px solid #362D4A}[data-theme=dark] .payment-method-option{background:var(--input-bg);border:none}[data-theme=dark] .payment-method-option:hover{border-color:#ff7a47}[data-theme=dark] .payment-method-option.selected{border-color:#ff7a47;background:#3d2a35}[data-theme=dark] .invoice-list-item{background:var(--input-bg);border:none}[data-theme=dark] .invoice-list-item:hover{background:#4d4365}[data-theme=dark] .billing-section-divider{border-top-color:#362d4a}[data-theme=dark] .billing-section-title{color:#f5f3f7}[data-theme=dark] .billing-section-description{color:var(--text-tertiary)}[data-theme=dark] .resource-calculator{background:var(--card-background);border:none}[data-theme=dark] .calculator-header h4{color:#f5f3f7}[data-theme=dark] .resource-icon{background:var(--input-bg)}[data-theme=dark] .resource-name,[data-theme=dark] .resource-value{color:#f5f3f7}[data-theme=dark] .quantity-control{background:var(--input-bg)}[data-theme=dark] .qty-btn{background:#4d4365;color:#f5f3f7}[data-theme=dark] .qty-btn:hover:not(:disabled){background:#ff7a47;color:#fff}[data-theme=dark] .qty-value{color:#f5f3f7}[data-theme=dark] .included-resources{background:var(--input-bg)}[data-theme=dark] .total-label{color:#f5f3f7}[data-theme=dark] .calculator-actions{border-top-color:#362d4a}[data-theme=dark] .current-usage{background:var(--card-background);border:none}[data-theme=dark] .current-usage h4,[data-theme=dark] .usage-value{color:#f5f3f7}[data-theme=dark] .usage-bar{background:var(--input-bg)}[data-theme=dark] .usage-fill{background:#ff7a47}[data-theme=dark] .features-included{background:var(--card-background);border:none}[data-theme=dark] .features-included h4{color:#f5f3f7}[data-theme=dark] .feature-item{color:#d4cde0}[data-theme=dark] .plan-title h3{color:#f5f3f7}[data-theme=dark] .status-badge.active{background:#ff7a4733;color:#ff7a47}[data-theme=dark] .plan-details{border-top-color:#ffffff1a}[data-theme=dark] .usage-subscription{color:#d4cde0}[data-theme=dark] .usage-subscription.loading,[data-theme=dark] .usage-subscription.error{color:var(--text-tertiary)}[data-theme=dark] .usage-subscription .loading-spinner{border:none;border-top-color:#ff7a47}[data-theme=dark] .no-subscription{color:var(--text-tertiary)}[data-theme=dark] .no-subscription h3{color:#f5f3f7}[data-theme=dark] .no-subscription p{color:var(--text-tertiary)}[data-theme=dark] .connect-status-content.not-connected{background:var(--input-bg);border:1px solid #4D4365}[data-theme=dark] .connect-status-content.pending{background:#3d2a35;border-color:#78350f}[data-theme=dark] .connect-status-content.active{background:#1e3a2f;border-color:#065f46}[data-theme=dark] .connect-status-content.warning{background:#3d2a35;border-color:#991b1b}[data-theme=dark] .connect-status-content h4{color:#f5f3f7}[data-theme=dark] .connect-status-content p{color:var(--text-tertiary)}[data-theme=dark] .connect-status-header h3{color:#f5f3f7}[data-theme=dark] .connect-capabilities{background:var(--card-background);border:none}[data-theme=dark] .capability-label{color:#d4cde0}[data-theme=dark] .connect-requirements{background:var(--card-background);border:none}[data-theme=dark] .requirements-section h5{color:#f5f3f7}[data-theme=dark] .requirements-past-due{background:#3d2a35;border-color:#5c3d4a}[data-theme=dark] .requirements-past-due h5{color:#f87171}[data-theme=dark] .requirements-past-due .requirements-description,[data-theme=dark] .requirements-past-due .requirements-list li{color:#e4dcf0}[data-theme=dark] .requirements-currently-due{background:#3d3a2a;border-color:#5c5a3d}[data-theme=dark] .requirements-currently-due h5{color:#fbbf24}[data-theme=dark] .requirements-currently-due .requirements-description,[data-theme=dark] .requirements-currently-due .requirements-list li{color:#e4dcf0}[data-theme=dark] .requirements-description{color:#b8a8c8}[data-theme=dark] .requirements-list li{color:#e4dcf0}[data-theme=dark] .stripe-onboarding{background:var(--card-background);border:none}[data-theme=dark] .stripe-onboarding .onboarding-info h4{color:#f5f3f7}[data-theme=dark] .stripe-onboarding .onboarding-info p{color:var(--text-tertiary)}[data-theme=dark] .stripe-onboarding .onboarding-benefits li{color:#d4cde0}[data-theme=dark] .stripe-onboarding .onboarding-footer{border-top-color:#362d4a}[data-theme=dark] .stripe-onboarding .security-note,[data-theme=dark] .stripe-onboarding .onboarding-security-note{background:var(--input-bg);color:var(--text-tertiary)}[data-theme=dark] .stripe-onboarding .onboarding-error{background:#3d2a35;border-color:#991b1b}[data-theme=dark] .stripe-onboarding .error-text{color:#fecaca}[data-theme=dark] .setup-checklist{background:var(--card-background);border:none}[data-theme=dark] .setup-checklist-title h3{color:#f5f3f7}[data-theme=dark] .setup-checklist-dismiss{color:var(--text-tertiary)}[data-theme=dark] .setup-checklist-dismiss:hover{background:#ffffff14}[data-theme=dark] .setup-progress-bar{background:#ffffff1a}[data-theme=dark] .setup-progress-text{color:var(--text-tertiary)}[data-theme=dark] .setup-task-chip.pending{background:var(--card-background);color:#d4cde0;border:none}[data-theme=dark] .setup-task-chip.pending:hover{border-color:#ff7a47;background:#ff7a471a}[data-theme=dark] .setup-task-chip.completed{background:#22c55e1a;color:#86efac;border-color:#22c55e4d}[data-theme=dark] .setup-toggle-btn{color:#ff7a47}[data-theme=dark] .setup-toggle-btn:hover{background:#ff7a471a}[data-theme=dark] .wizard-skip-btn{color:var(--text-tertiary)}[data-theme=dark] .wizard-skip-btn:hover{background:#ffffff14}[data-theme=dark] .wizard-task-preview-item{background:var(--input-bg);color:#d4cde0}[data-theme=dark] .wizard-embedded-component{border:none}[data-theme=dark] .wizard-form-group label{color:#d4cde0}[data-theme=dark] .board-train-header h1{color:#f5f3f7}[data-theme=dark] .board-train-create-modal .modal-content,[data-theme=dark] .board-train-edit-modal .modal-content,[data-theme=dark] .board-train-request-modal .modal-content,[data-theme=dark] .board-train-change-details-modal .modal-content{background:var(--card-background);border:none}[data-theme=dark] .board-train-header p,[data-theme=dark] .program-counters,[data-theme=dark] .summary-card span,[data-theme=dark] .day-log-head,[data-theme=dark] .create-timezone-note,[data-theme=dark] .board-train-page .muted{color:var(--text-tertiary)}[data-theme=dark] .change-request-summary,[data-theme=dark] .change-request-context,[data-theme=dark] .change-request-modal-note p,[data-theme=dark] .change-request-modal-meta p{color:var(--text-secondary)}[data-theme=dark] .board-train-error{background:#3d2a35;color:#fecaca;border-color:#7f1d1d}[data-theme=dark] .board-train-create,[data-theme=dark] .program-list,[data-theme=dark] .day-log-item,[data-theme=dark] .board-train-page .summary-card,[data-theme=dark] .change-request-item{background:var(--card-background);border-color:var(--card-border)}[data-theme=dark] .change-request-panel-toggle{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .change-request-panel-toggle-icon{color:var(--text-tertiary)}[data-theme=dark] .change-request-panel{background:var(--card-background)}[data-theme=dark] .program-list h3,[data-theme=dark] .program-detail h3,[data-theme=dark] .day-log-item strong,[data-theme=dark] .summary-card strong,[data-theme=dark] .summary-content strong{color:#f5f3f7}[data-theme=dark] .program-item{background:var(--input-bg);border:none;color:#d4cde0}[data-theme=dark] .program-client-name{color:#f5f3f7}[data-theme=dark] .program-animal-name{color:var(--text-tertiary)}[data-theme=dark] .program-animal-avatar{background-color:#4d4365;color:#f5f3f7}[data-theme=dark] .status-chip{color:#d4cde0}[data-theme=dark] .status-chip.pending{color:#fbbf24}[data-theme=dark] .status-chip.approved{color:#86efac}[data-theme=dark] .status-chip.rejected{color:#fca5a5}[data-theme=dark] .board-train-pending-approval-section{background:#4a3420;border-color:#a16207}[data-theme=dark] .board-train-pending-approval-header h3{color:#fde68a}[data-theme=dark] .board-train-pending-approval-header p{color:#fcd34d}[data-theme=dark] .board-train-pending-approval-card{background:var(--card-background);border-color:#a16207}[data-theme=dark] .change-request-diff-item{background:var(--input-bg);border:none}[data-theme=dark] .change-request-diff-item p{color:var(--text-tertiary)}[data-theme=dark] .change-request-modal-note{background:var(--input-bg);border:none}[data-theme=dark] .create-section-title{color:#f5f3f7;border-top-color:#ffffff1a}[data-theme=dark] .create-draft-banner{background:#3a2e10;border-color:#7a5c00;color:#fde68a}[data-theme=dark] .create-package-error{background:#3d1515;border-color:#7f1d1d;color:#fca5a5}[data-theme=dark] .status-chip-draft{background:#3a2e10;color:#fde68a}[data-theme=dark] .program-draft-avatar{background:#3a3550;color:#d4cde0}[data-theme=dark] .create-input,[data-theme=dark] .create-intake-grid textarea{background:var(--input-bg);border-color:#ffffff1a;color:#f5f3f7}[data-theme=dark] .create-input::placeholder,[data-theme=dark] .create-intake-grid textarea::placeholder{color:var(--text-tertiary)}[data-theme=dark] .day-log-form,[data-theme=dark] .day-log-list,[data-theme=dark] .ai-summary-panel{background:var(--card-background)}[data-theme=dark] .board-train-page .create-grid input,[data-theme=dark] .board-train-page .create-intake-grid textarea,[data-theme=dark] .board-train-page .day-log-form input,[data-theme=dark] .board-train-page .day-log-form textarea,[data-theme=dark] .board-train-page .searchable-select .select-trigger,[data-theme=dark] .board-train-page .searchable-select .select-dropdown,[data-theme=dark] .board-train-page .searchable-select .select-search{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .board-train-page .day-log-form input::placeholder,[data-theme=dark] .board-train-page .day-log-form textarea::placeholder{color:var(--text-tertiary)}[data-theme=dark] .board-train-page .searchable-select .select-option{color:#d4cde0}[data-theme=dark] .board-train-page .searchable-select .select-option:hover:not(.empty){background:#4d4365}[data-theme=dark] .board-train-page .program-intake-card{background:var(--input-bg);border:none}[data-theme=dark] .board-train-page .program-intake-card strong{color:#f5f3f7}[data-theme=dark] .board-train-page .program-intake-card p,[data-theme=dark] .board-train-page .program-intake-card li{color:#d4cde0}[data-theme=dark] .tag.warning{background:#f59e0b29;border-color:#f59e0b66;color:#fcd34d}[data-theme=dark] .summary-content li{color:#d4cde0}[data-theme=dark] .day-log-links a{color:#bfdbfe;background:#253750;border-color:#36506f}[data-theme=dark] .day-log-links a:hover{background:#2d4362}:root{--font-size-multiplier: 1;--base-font-size: 16px}html{font-size:calc(var(--base-font-size) * var(--font-size-multiplier))}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.skip-link{position:absolute;top:-40px;left:6px;background:#000;color:#fff;padding:8px 16px;text-decoration:none;z-index:1000;border-radius:4px;font-weight:500;transition:top .2s ease-in-out}.skip-link:focus{top:6px}.keyboard-user *:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px}.keyboard-user button:focus,.keyboard-user a:focus,.keyboard-user input:focus,.keyboard-user select:focus,.keyboard-user textarea:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px}.high-contrast{--text-color: #000;--background-color: #fff;--border-color: #000;--link-color: #0000ff;--button-bg: #000;--button-text: #fff}.high-contrast *{color:var(--text-color)!important;background-color:var(--background-color)!important;border-color:var(--border-color)!important}.high-contrast a{color:var(--link-color)!important;text-decoration:underline!important}.high-contrast button{background-color:var(--button-bg)!important;color:var(--button-text)!important;border:2px solid var(--border-color)!important}.high-contrast input,.high-contrast select,.high-contrast textarea{border:2px solid var(--border-color)!important}.reduce-motion *,.reduce-motion *:before,.reduce-motion *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}button,a,input[type=button],input[type=submit],input[type=reset],.btn,.clickable{display:inline-flex;align-items:center;justify-content:center}.form-field{margin-bottom:1rem}.form-label{display:block;margin-bottom:.5rem;font-weight:500}.required-indicator{color:#dc2626;margin-left:.25rem}.form-error{color:#dc2626;font-size:.875rem;margin-top:.25rem;display:flex;align-items:center;gap:.25rem}.form-help{color:#6b7280;font-size:.875rem;margin-top:.25rem}input[required]:user-invalid,select[required]:user-invalid,textarea[required]:user-invalid{border-color:#dc2626}@supports not selector(:user-invalid){input[required]:invalid:not(:placeholder-shown):not(:focus),select[required]:invalid:not(:focus),textarea[required]:invalid:not(:placeholder-shown):not(:focus){border-color:#dc2626}}input[type=date]:invalid:not(.touched),input[type=time]:invalid:not(.touched),input[type=datetime-local]:invalid:not(.touched){border-color:var(--input-border, #d1d5db)}input[required]:valid:not(:placeholder-shown):not(:focus),select[required]:valid:not(:focus),textarea[required]:valid:not(:placeholder-shown):not(:focus){border-color:var(--input-border, #d1d5db)}input.is-invalid,select.is-invalid,textarea.is-invalid{border-color:#dc2626!important}input.is-valid,select.is-valid,textarea.is-valid{border-color:#10b981!important}[aria-live]{position:relative}[aria-live=assertive]{font-weight:500}.modal{background:#fff;border-radius:8px;padding:1.5rem;max-width:90vw;max-height:90vh;overflow-y:auto;position:relative}.modal:focus{outline:none}table{border-collapse:collapse;width:100%}th{text-align:left;font-weight:600;background-color:#f9fafb}th,td{padding:.75rem;border:1px solid #e5e7eb}ul,ol{padding-left:1.5rem}li{margin-bottom:.25rem}h1{font-size:2rem;font-weight:700;margin-bottom:1rem}h2{font-size:1.5rem;font-weight:600;margin-bottom:.75rem}h3{font-size:1.25rem;font-weight:600;margin-bottom:.5rem}h4{font-size:1.125rem;font-weight:500;margin-bottom:.5rem}.text-high-contrast{color:#000;background:#fff}.bg-high-contrast{background:#000;color:#fff}.loading{position:relative}.error{color:#dc2626;border-color:#dc2626}.success{color:#059669;border-color:#059669}.warning{color:#d97706;border-color:#d97706}@media(max-width:768px){html{font-size:calc(14px * var(--font-size-multiplier))}}@media print{.skip-link,.sr-only,button,.btn{display:none!important}*{background:#fff!important;color:#000!important}a{text-decoration:underline!important}}@media(prefers-color-scheme:dark){:root{--text-color: #f9fafb;--background-color: #111827;--border-color: #374151}}@supports selector(:focus-visible){.keyboard-user *:focus:not(:focus-visible){outline:none;box-shadow:none}.keyboard-user *:focus-visible{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;box-shadow:0 0 0 3px #fe6b344d}}:root{--mobile-font-min: .75rem;--mobile-content-padding: clamp(.75rem, 2.5vw, 1rem)}body{font-size:clamp(.9375rem,.95rem,1rem)}html,body{max-width:100%;overflow-x:clip}.mobile-safe-vh{min-height:100vh;min-height:100dvh}.mobile-content{padding:var(--mobile-content-padding)}.responsive-table-wrapper{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.responsive-table-wrapper table{min-width:640px}@media(max-width:768px){p,li,label,a,button,input,select,textarea,th,td{font-size:.875rem}.responsive-table-wrapper.stack-mobile table,.responsive-table-wrapper.stack-mobile thead,.responsive-table-wrapper.stack-mobile tbody,.responsive-table-wrapper.stack-mobile tr,.responsive-table-wrapper.stack-mobile th,.responsive-table-wrapper.stack-mobile td{display:block;width:100%}.responsive-table-wrapper.stack-mobile thead{display:none}.responsive-table-wrapper.stack-mobile tr{border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;margin-bottom:.75rem;padding:.5rem;background:var(--bg-primary, #fff)}.responsive-table-wrapper.stack-mobile td{border:0;padding:.5rem}.responsive-table-wrapper.stack-mobile td:before{content:attr(data-label);display:block;font-weight:600;margin-bottom:.25rem;color:var(--text-secondary, #475569)}}@media(max-width:768px){.team-page,.role-manager,.sessions-page,.calendar-page,.client-list,.client-profile,.settings-page,.reports-page,.billing-page,.tasks-page,.resource-library,.dashboard,.animals-page,.support-center,.upload-page,.profile-settings-page{padding:.75rem}.team-page [class*=table],.sessions-page [class*=table],.calendar-page [class*=table],.client-list [class*=table],.settings-page [class*=table],.reports-page [class*=table],.billing-page [class*=table]{overflow-x:auto}.team-page [class*=grid],.sessions-page [class*=grid],.calendar-page [class*=grid],.client-list [class*=grid],.settings-page [class*=grid],.reports-page [class*=grid],.billing-page [class*=grid],.tasks-page [class*=grid]{grid-template-columns:1fr!important}.team-page button,.sessions-page button,.calendar-page button,.client-list button,.settings-page button,.reports-page button,.billing-page button,.tasks-page button,.resource-library button,.dashboard button{min-height:44px}}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--body-background);color:var(--text-primary)}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box}select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M2.22 4.47a.75.75 0 0 1 1.06 0L6 7.19l2.72-2.72a.75.75 0 1 1 1.06 1.06L6.53 8.78a.75.75 0 0 1-1.06 0L2.22 5.53a.75.75 0 0 1 0-1.06z'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 10px center!important;padding-right:30px}.required{color:var(--error-color, #dc2626)}.input-error{border-color:var(--error-color, #dc2626)!important}.field-error{color:var(--error-color, #dc2626);font-size:13px;margin-top:4px;display:block}.auth-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px;background:var(--body-background)}.auth-card{background-color:var(--card-background);border:1px solid var(--text-quaternary);border-radius:12px;box-shadow:var(--shadow-xl);padding:32px;width:100%;max-width:420px}.auth-header{text-align:center;margin-bottom:32px}.auth-title{font-size:28px;font-weight:700;color:var(--text-primary);margin-bottom:8px}.auth-subtitle{font-size:16px;color:var(--text-secondary);line-height:1.5}.auth-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:6px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-label{font-size:14px;font-weight:500;color:var(--text-primary)}.form-input,.form-select{padding:12px 16px;border:1px solid var(--input-border);border-radius:8px;font-size:16px;transition:border-color .2s,box-shadow .2s,background-color .2s;background-color:var(--input-bg);color:var(--text-primary)}.form-input:focus,.form-select:focus{outline:none;border-color:var(--input-focus-border);box-shadow:0 0 0 3px var(--focus-ring)}.form-input:disabled,.form-select:disabled{background-color:var(--input-disabled-bg);color:var(--text-secondary);cursor:not-allowed}.form-input::placeholder{color:var(--input-placeholder)}.auth-button{padding:12px 24px;background-color:var(--primary-color);color:var(--text-inverse);border:none;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:background-color .2s,transform .1s;display:flex;align-items:center;justify-content:center;gap:8px}.auth-button:hover:not(:disabled){background-color:var(--primary-hover);transform:translateY(-1px)}.auth-button:active:not(:disabled){transform:translateY(0)}.auth-button:disabled{background-color:var(--text-tertiary);cursor:not-allowed;transform:none}.auth-footer{text-align:center;margin-top:24px;padding-top:24px;border-top:1px solid var(--border-primary)}.auth-footer p{font-size:14px;color:var(--text-secondary);margin:0}.auth-link{color:var(--primary-color);text-decoration:none;font-weight:500;transition:color .2s}.auth-link:hover{color:var(--primary-hover);text-decoration:underline}.error-message{padding:12px 16px;background-color:var(--error-bg);border:1px solid var(--error-border);border-radius:8px;color:var(--error-text);font-size:14px;display:flex;align-items:center;gap:8px}.success-message{padding:24px;background-color:var(--success-bg);border:1px solid var(--success-border);border-radius:8px;text-align:center;margin-top:16px}.success-icon{color:var(--success-color);margin-bottom:12px;display:flex;justify-content:center}.success-message p{color:var(--success-text);font-size:14px;line-height:1.5;margin:0}.auth-button:disabled{position:relative}.auth-button.loading:after{content:"";position:absolute;width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}@media(max-width:480px){.auth-container{padding:16px}.auth-card{padding:24px}.auth-title{font-size:24px}.form-row{grid-template-columns:1fr}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--body-background);padding:2rem 1rem}.login-wrapper{width:100%;max-width:480px;display:flex;flex-direction:column;align-items:center;gap:1rem}.login-logo img{height:120px;width:auto}.login-card{border-radius:8px;box-shadow:var(--shadow-card);padding:20px;margin:0 0 20px;border:1px solid rgba(255,255,255,.04);background:var(--card-background)}.login-form{display:flex;flex-direction:column;gap:1.25rem}.login-field{display:flex;flex-direction:column;gap:.5rem}.login-label{font-size:.9375rem;font-weight:600;color:var(--text-primary)}.login-input{width:100%;padding:.875rem 1.25rem;background:var(--input-bg);border:1px solid var(--input-border);border-radius:12px;font-size:1rem;color:var(--text-primary);transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.login-input::placeholder{color:var(--text-tertiary)}.login-input:focus{outline:none;border-color:var(--accent-orange);box-shadow:0 0 0 3px #f4a26126}.login-input:disabled{opacity:.6;cursor:not-allowed}.login-hint{font-size:.8125rem;color:var(--text-tertiary);line-height:1.5}.login-btn{width:100%;padding:1rem;background:var(--accent-orange);color:#1a1a1a;border:none;border-radius:999px;font-size:1.0625rem;font-weight:700;cursor:pointer;transition:background .2s,transform .1s;margin-top:.25rem}.login-btn:hover:not(:disabled){background:var(--accent-orange-hover);transform:translateY(-1px)}.login-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.login-error{padding:.75rem 1rem;background:var(--error-bg, rgba(239, 68, 68, .1));border:1px solid var(--error-border, rgba(239, 68, 68, .3));border-radius:10px;color:var(--error-color, #ef4444);font-size:.875rem}.login-success{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:1rem 0;text-align:center;color:var(--success-color, #22c55e)}.login-success p{color:var(--text-secondary);font-size:.9375rem;line-height:1.6;margin:0}.login-footer{font-size:.9rem;color:var(--text-tertiary);margin:0}.login-footer-link{color:var(--text-primary);font-weight:600;text-decoration:none}.login-footer-link:hover{color:var(--accent-orange)}.login-tenant-logo{height:64px;max-width:200px;object-fit:contain;display:block;margin:0 auto}.login-tenant-name{font-size:1.125rem;font-weight:600;color:var(--text-primary);text-align:center;margin-top:.5rem}.tenant-picker{display:flex;flex-direction:column;gap:.75rem}.tenant-picker-label{font-size:.9375rem;color:var(--text-secondary);margin:0 0 .25rem;text-align:center}.tenant-picker-list{display:flex;flex-direction:column;gap:.5rem}.tenant-picker-card{display:flex;align-items:center;gap:.875rem;width:100%;padding:.875rem 1rem;background:var(--card-background);border:1px solid transparent;border-radius:12px;cursor:pointer;text-align:left;transition:border-color .2s,box-shadow .2s;box-shadow:0 1px 3px #00000014}.tenant-picker-card:hover{border-color:var(--accent-orange-hover);box-shadow:0 2px 8px #0000001f}.tenant-picker-logo{height:40px;width:40px;object-fit:contain;border-radius:8px;flex-shrink:0}.tenant-picker-initials{height:40px;width:40px;border-radius:8px;background:var(--chip-orange-bg);color:var(--accent-orange);display:flex;align-items:center;justify-content:center;font-size:1.125rem;font-weight:700;flex-shrink:0}.tenant-picker-name{font-size:.9375rem;font-weight:600;color:var(--text-primary)}.tenant-picker-loading{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem 0;color:var(--text-secondary);font-size:.9375rem}.tenant-picker-empty{padding:1rem 0;text-align:center;color:var(--text-secondary);font-size:.9375rem}.tenant-picker-empty strong{color:var(--text-primary)}.register-card{max-width:520px}.register-header{text-align:center;margin-bottom:1.5rem}.register-title{font-size:1.5rem;font-weight:700;color:var(--text-primary, #1f2937);margin:0 0 .5rem}.register-subtitle{font-size:.9375rem;color:var(--text-secondary, #6b7280);margin:0;line-height:1.5}.register-optional-label{font-weight:400;color:var(--text-tertiary, #9ca3af)}.register-subdomain-input{display:flex;align-items:stretch;border:1px solid var(--input-border, #d1d5db);border-radius:12px;overflow:hidden;background:var(--input-bg, #ffffff);transition:border-color .2s,box-shadow .2s}.register-subdomain-input:focus-within{border-color:var(--accent-orange, #f4a261);box-shadow:0 0 0 3px #f4a26126}.register-subdomain-input input{border:none;outline:none;padding:.875rem 1.25rem;font-size:1rem;flex:1;background:transparent;color:var(--text-primary, #1f2937);min-width:0}.register-subdomain-input input::placeholder{color:var(--text-tertiary, #9ca3af)}.register-subdomain-input input:disabled{opacity:.6;cursor:not-allowed}.register-subdomain-suffix{padding:0 1rem;font-size:.875rem;color:var(--text-tertiary, #9ca3af);white-space:nowrap;border-left:1px solid var(--input-border, #d1d5db);background:var(--surface-secondary, #f9fafb);display:flex;align-items:center}.register-portal-preview{color:var(--text-primary, #1f2937)}.register-portal-url{font-size:.8125rem;color:var(--text-secondary, #6b7280);margin-top:.75rem}.register-portal-url strong{color:var(--accent-orange, #f4a261)}.tenant-calendar-view{background:transparent;border-radius:12px;padding:0;box-shadow:var(--shadow-card);border:none}.calendar-header{margin-bottom:24px;border-radius:12px}.view-toggle{display:inline-flex;background:var(--body-background);border-radius:24px;padding:4px;gap:4px;position:relative}.view-toggle:before{content:"";position:absolute;top:4px;left:4px;height:calc(100% - 8px);background:var(--accent-orange);border-radius:20px;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:0}.view-toggle[data-active=personal]:before{width:calc(50% - 6px);transform:translate(0)}.view-toggle[data-active=tenant]:before{width:calc(50% - 6px);transform:translate(calc(100% + 4px))}.view-toggle button{padding:8px 20px;border:none;background:transparent;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:color .2s ease;border-radius:20px;white-space:nowrap;position:relative;z-index:1}.view-toggle button:hover,.view-toggle button.active{color:var(--text-primary)}.calendar-controls{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.month-navigation{display:flex;align-items:center;gap:12px;margin-left:auto}.current-month{margin:0;font-size:24px;font-weight:700;min-width:auto;text-align:left;color:var(--text-primary);letter-spacing:-.5px;order:-1}.current-month.clickable{cursor:pointer;transition:color .2s,background-color .2s;padding:4px 12px;border-radius:6px}.current-month.clickable:hover{color:var(--primary-color, #2563eb);background-color:var(--primary-light, #eff6ff)}.nav-button{width:40px;height:40px;padding:0;border:none;background:var(--card-background);border-radius:50%;cursor:pointer;font-weight:500;font-size:18px;transition:all .2s;color:var(--text-secondary);display:flex;align-items:center;justify-content:center}.nav-button:hover{background:var(--card-background);color:var(--text-primary);opacity:.8}.calendar-error{text-align:center;padding:48px 24px;color:var(--error-color, #dc2626)}.calendar-error button{margin-top:16px;padding:8px 16px;border:1px solid var(--error-color, #dc2626);background:var(--card-bg, white);color:var(--error-color, #dc2626);border-radius:6px;cursor:pointer;font-weight:500}.calendar-error button:hover{background:var(--error-bg, #fef2f2)}.calendar-grid{border:none;border-radius:12px;background:transparent}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);background:transparent;border-bottom:none;margin-bottom:8px;border-bottom:1px solid var(--text-tertiary);margin-bottom:1rem;width:95%;margin:0 auto}.weekday{padding:12px 8px;text-align:center;font-weight:600;font-size:14px;color:var(--text-secondary);text-transform:capitalize;letter-spacing:0}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.calendar-day{min-height:100px;padding:8px;border:none;border-radius:6px;transition:all .2s;position:relative;display:flex;flex-direction:column}.calendar-day.other-month{background:transparent;color:var(--text-tertiary)}.calendar-day.other-month .day-number{color:var(--text-tertiary);opacity:.4}.calendar-day.today{background:var(--card-background);border:1px solid rgba(244,162,97,.3)}.calendar-day.today .day-number{background:transparent;color:var(--text-primary);border-radius:0;width:auto;height:auto;display:block;font-weight:600}.calendar-day.has-sessions{cursor:pointer}.calendar-day.has-sessions:hover,.calendar-day.has-actions:hover{background:#4a403a0d}.calendar-day.has-actions{cursor:pointer}.day-number{font-size:14px;font-weight:500;color:var(--text-secondary);align-self:flex-start;position:absolute;top:.6rem}.session-chips{display:flex;flex-direction:column;gap:4px;margin-top:8px;width:100%}.session-chip{font-size:11px;font-weight:500;padding:4px 8px;border-radius:4px;white-space:nowrap;overflow:visible;text-overflow:clip;max-width:100%;background:var(--chip-orange-bg);color:var(--accent-orange)}.session-chip-confirmed{background:var(--success-bg);color:var(--success-color)}.session-chip-pending{background:var(--chip-orange-bg);color:var(--accent-orange)}.session-chip-cancelled{background:var(--surface-hover);color:var(--text-tertiary);text-decoration:line-through;opacity:.7}.session-chip[data-tooltip]{position:relative}.session-chip-text{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.session-chip[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--card-background);color:var(--text-primary);font-size:11px;font-weight:500;white-space:nowrap;padding:5px 8px;border-radius:6px;box-shadow:0 4px 12px #0003;pointer-events:none;opacity:0;transition:opacity .15s ease;z-index:100}.session-chip[data-tooltip]:hover:after{opacity:1}.session-chip-more{background:var(--accent-orange-hover);color:var(--body-background);font-size:10px}@media(max-width:768px){.tenant-calendar-view{padding:16px}.calendar-controls{flex-direction:column;align-items:stretch}.view-toggle{width:100%}.view-toggle button{flex:1}.month-navigation{width:100%;justify-content:space-between}.current-month{font-size:18px;min-width:auto}.nav-button{padding:6px 12px;font-size:14px}.calendar-day{min-height:80px;padding:4px}.day-number{font-size:13px}.session-count{font-size:13px;padding:2px 4px}.weekday{padding:8px 4px;font-size:13px}}.calendar-day.blocked{background:repeating-linear-gradient(-45deg,transparent,transparent 5px,rgba(128,128,128,.08) 5px,rgba(128,128,128,.08) 10px),var(--surface-secondary, #f5f5f5);cursor:not-allowed}.calendar-day.blocked.today{background:repeating-linear-gradient(-45deg,transparent,transparent 5px,rgba(128,128,128,.08) 5px,rgba(128,128,128,.08) 10px),var(--surface-secondary, #f5f5f5)}[data-theme=dark] .calendar-day.blocked,[data-theme=dark] .calendar-day.blocked.today{background:repeating-linear-gradient(-45deg,transparent,transparent 5px,rgba(148,163,184,.07) 5px,rgba(148,163,184,.07) 10px),#1a2533}.blocked-label{position:absolute;bottom:6px;left:8px;font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-tertiary, #9ca3af);background:none;padding:0;border-radius:0;pointer-events:none}[data-theme=dark] .blocked-label{color:#4a5e73}.calendar-day-action-menu{background:var(--body-background);border:none;box-shadow:0 10px 24px #00000073;border-radius:8px;padding:.35rem;display:flex;flex-direction:column;gap:.3rem;width:180px}.calendar-day-action-btn{width:100%;border:1px solid transparent;border-radius:6px;background:var(--surface-secondary, #f9fafb);color:var(--text-primary, #111827);padding:.4rem .5rem;font-size:.78rem;text-align:left;cursor:pointer;justify-content:flex-start}.calendar-day-action-btn:hover{background:var(--primary-light, #eff6ff);border-color:var(--primary-color, #3b82f6)}@media(max-width:768px){.blocked-label{font-size:9px;bottom:4px;left:6px}}[data-theme=dark] .calendar-day-action-btn{background:transparent;border:none;color:#f5f3f7}[data-theme=dark] .calendar-day-action-btn:hover{background:var(--accent-orange-hover);border-color:#7a6b8f}.skeleton-day{pointer-events:none}.skeleton-day-number,.skeleton-chip{border-radius:4px;background:linear-gradient(90deg,var(--surface-hover) 25%,rgba(255,255,255,.15) 50%,var(--surface-hover) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.4s ease-in-out infinite}.skeleton-day-number{width:20px;height:14px;margin-bottom:8px}.skeleton-chip{height:18px;width:90%;margin-bottom:4px}.skeleton-chip-short{width:60%;animation-delay:.15s}.calendar-modal-backdrop{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.calendar-modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:min(100%,800px);width:100%;max-height:90vh;display:flex;flex-direction:column;animation:modalSlideIn .2s ease-out;position:relative}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.session-count-text{margin:0;font-size:14px;color:#6b7280}.modal-body{flex:1;overflow-y:auto;padding:0 10px}.no-sessions{text-align:center;padding:16px;color:#6b7280}.sessions-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px;margin:0;padding:0}.session-card{border:1px solid #e5e7eb;border-radius:6px;padding:8px 10px;background:#fff;transition:all .2s}.session-card.clickable{cursor:pointer}.session-card.clickable:hover{border-color:#3b82f6;background:#f8fafc}.session-card.clickable:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px}[data-theme=dark] .session-card.clickable:hover{border-color:var(--accent-orange, #FF7A47);background:var(--input-bg)}.session-header-compact{margin-bottom:8px}.session-header-compact .session-time{font-size:16px;font-weight:600;color:#111827}.session-time{font-size:18px;font-weight:600;color:#111827}.session-details-grid{display:grid;grid-template-columns:70px 1fr;gap:4px 12px;align-items:baseline;font-size:13px}.grid-label{font-weight:600;color:#6b7280;text-align:right}.grid-value{color:#111827}.grid-value-muted{color:#9ca3af;font-style:italic}.grid-notes-label{align-self:start;padding-top:2px}.grid-notes-content{min-width:0}.session-details{display:flex;flex-direction:column;gap:6px}.session-details-row{display:flex;flex-wrap:wrap;gap:12px}.detail-item{display:flex;gap:4px;font-size:13px}.detail-row{display:flex;gap:8px;font-size:14px}.detail-label{font-weight:600;color:#6b7280}.detail-value{color:#111827}.session-status-inline{padding:2px 8px;border-radius:10px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.session-status-inline.status-cancelled{background:#fee2e2;color:#991b1b}.session-status-inline.status-default{background:#f3f4f6;color:#374151}.session-notes-compact{margin-top:4px;font-size:13px}.session-notes-compact .detail-label{display:inline;margin-right:4px}.notes-text-compact{display:inline;margin:0;color:#4b5563;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.notes-text-compact:not(.expanded){display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;white-space:normal}.notes-text-compact.expanded{white-space:pre-wrap;display:block;margin-top:4px}.notes-toggle{background:none;border:none;color:#3b82f6;font-size:13px;cursor:pointer;padding:0;margin-left:4px;font-weight:500}.notes-toggle:hover{text-decoration:underline}[data-theme=dark] .notes-toggle{color:#ff7a47}[data-theme=dark] .session-header-compact .session-time,[data-theme=dark] .grid-value{color:#f5f3f7}[data-theme=dark] .grid-value-muted{color:#7a6b8f}[data-theme=dark] .detail-value{color:#f5f3f7}[data-theme=dark] .notes-text-compact{color:#d4cde0}.session-notes{margin-top:6px;padding-top:8px;border-top:1px solid var(--border-color, #f3f4f6);background:var(--card-bg, transparent)}.session-notes .detail-label{display:block;margin-bottom:2px;color:var(--text-secondary, #6b7280);font-size:13px}.notes-text{margin:0;font-size:13px;color:var(--text-primary, #4b5563);line-height:1.5;white-space:pre-wrap}.modal-footer{padding:16px 24px;border-top:1px solid #e5e7eb;background:#f9fafb;border-bottom-left-radius:12px;border-bottom-right-radius:12px}.pagination{display:flex;justify-content:space-between;align-items:center}.pagination-button{padding:8px 16px;border:1px solid #e5e7eb;background:#fff;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s}.pagination-button:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db}.pagination-button:disabled{opacity:.5;cursor:not-allowed}.pagination-info{font-size:14px;color:#6b7280;font-weight:500}@media(max-width:768px){.calendar-modal-backdrop{padding:0}.calendar-modal{max-width:100%;max-height:100vh;border-radius:0}.modal-header{padding:16px}.modal-header h2{font-size:20px}.modal-body{padding:16px}.session-card{padding:12px}.session-time{font-size:16px}.detail-row{flex-direction:column;gap:2px}.detail-label{min-width:auto;font-size:13px}.detail-value{font-size:14px}.pagination{flex-wrap:wrap;gap:12px}.pagination-button{flex:1;min-width:100px}.pagination-info{width:100%;text-align:center;order:-1}}.modal-body::-webkit-scrollbar{width:8px}.modal-body::-webkit-scrollbar-track{background:#f3f4f6}.modal-body::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.modal-body::-webkit-scrollbar-thumb:hover{background:#9ca3af}.session-actions{display:flex;gap:.5rem;margin-top:1rem;padding-top:1rem}.session-actions .btn{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem .75rem;font-size:.875rem;border-radius:.375rem;cursor:pointer;transition:all .2s;border:none}.session-actions .btn-sm{padding:.375rem .625rem;font-size:.8125rem}.session-actions .btn:disabled{opacity:.5;cursor:not-allowed}.reschedule-modal-backdrop{position:fixed;inset:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:1100}.reschedule-modal-content{background:#fff;border-radius:.5rem;padding:2rem;max-width:min(100%,500px);width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.reschedule-modal-content h3{font-size:1.25rem;font-weight:600;color:#111827;margin:0 0 .5rem}.reschedule-modal-content p{color:#6b7280;margin:0 0 1.5rem}.form-input:focus,.form-textarea:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.modal-actions .btn{padding:.5rem 1rem;font-size:.875rem;font-weight:500;border-radius:.375rem;cursor:pointer;transition:all .2s;border:none}.modal-actions .btn-primary{background-color:#2563eb;color:#fff}.modal-actions .btn:disabled{opacity:.5;cursor:not-allowed}.reschedule-banner{display:flex;gap:12px;padding:12px;margin-bottom:16px;background-color:#fef3c7;border:1px solid #fbbf24;border-radius:6px;align-items:flex-start}.reschedule-banner-icon{flex-shrink:0;color:#d97706}.reschedule-banner-content{flex:1}.reschedule-banner-title{font-size:14px;font-weight:600;color:#92400e;margin-bottom:4px}.reschedule-banner-reason{font-size:13px;color:#78350f;line-height:1.5}.cancellation-banner{background-color:#fee2e2;border-color:#f87171}.cancellation-banner .reschedule-banner-icon{color:#dc2626}.cancellation-banner .reschedule-banner-title{color:#991b1b}.cancellation-banner .reschedule-banner-reason{color:#7f1d1d}@media(max-width:768px){.reschedule-banner{padding:10px;gap:10px}.reschedule-banner-title,.reschedule-banner-reason{font-size:13px}}.searchable-select{position:relative;width:100%}.searchable-select.disabled{opacity:.6;cursor:not-allowed}.select-trigger{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--input-bg, white);border:1px solid var(--input-border);border-radius:6px;cursor:pointer;transition:all .2s;min-height:38px}.select-trigger:hover:not(.disabled){border-color:var(--border-secondary, #9ca3af)}.select-trigger:focus-visible{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.select-trigger.open{border-color:var(--border-secondary)}.select-value{flex:1;color:var(--text-primary, #111827);font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select-arrow{margin-left:8px;color:var(--text-secondary, #6b7280);display:flex;align-items:center;transition:transform .2s}.select-trigger.open .select-arrow{transform:rotate(180deg)}.select-dropdown{background:var(--card-bg, white);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;max-height:320px;display:flex;flex-direction:column;animation:dropdownSlideIn .15s ease-out}.select-search{padding:8px;border-bottom:1px solid var(--border-primary, #e5e7eb);position:sticky;top:0;background:var(--card-bg, white);z-index:1}.select-search input{width:100%;padding:8px 12px;border:1px solid var(--input-border, #e5e7eb);border-radius:6px;font-size:14px;outline:none;transition:all .2s;background:var(--input-bg, white);color:var(--text-primary, #111827)}.select-search input:focus{border-color:var(--primary-color, #3b82f6);box-shadow:0 0 0 3px var(--focus-ring, rgba(254, 107, 52, .15))}.select-search input::placeholder{color:var(--text-secondary, #9ca3af)}.select-options{overflow-y:auto;padding:4px}.select-option{padding:10px 12px;cursor:pointer;border-radius:6px;font-size:14px;color:var(--text-primary, #111827);transition:background .15s}.select-option:hover:not(.empty),.select-option.highlighted:not(.empty){background:var(--hover-bg, #f3f4f6)}.select-option.selected{background:var(--primary-light, #eff6ff);color:var(--primary-color, #1e40af);font-weight:500}.select-option.empty{color:var(--text-secondary, #6b7280);cursor:default;text-align:center;padding:16px 12px}.select-options::-webkit-scrollbar{width:8px}.select-options::-webkit-scrollbar-track{background:var(--surface-secondary, #f3f4f6);border-radius:4px}.select-options::-webkit-scrollbar-thumb{background:var(--border-secondary, #d1d5db);border-radius:4px}.select-options::-webkit-scrollbar-thumb:hover{background:var(--text-secondary, #9ca3af)}.sessions-page{display:flex;flex-direction:column;gap:24px;width:100%}.sessions-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.sessions-header h2{margin:0;font-size:1.875rem;font-weight:700;color:#111827;flex:1}.sessions-header .btn{flex-shrink:0;white-space:nowrap;min-width:fit-content}.sessions-scheduler-container{animation:slideIn .3s ease}.completed-sessions-toggle{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding:12px 16px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.completed-toggle-btn{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:500;padding:10px 16px;border-radius:6px;cursor:pointer;transition:all .2s ease}.completed-toggle-btn svg{flex-shrink:0}.completed-toggle-btn.btn-outline{background:#fff;border:2px solid #3b82f6;color:#3b82f6;box-shadow:0 1px 3px #fe6b3426}.completed-toggle-btn.btn-outline:hover{background:#eff6ff;border-color:#2563eb;color:#2563eb;box-shadow:0 2px 6px #3b82f633}.completed-toggle-hint{font-size:13px;color:#64748b;font-style:italic}.spinner-small{width:14px;height:14px;border:2px solid #e2e8f0;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}[data-theme=dark] .completed-sessions-toggle{background:#1e293b;border-color:#334155}[data-theme=dark] .completed-toggle-hint{color:#94a3b8}[data-theme=dark] .completed-toggle-btn.btn-outline{background:#1e293b;border-color:#60a5fa;color:#60a5fa}[data-theme=dark] .completed-toggle-btn.btn-outline:hover{background:#1e3a5f;border-color:#93c5fd;color:#93c5fd}.loading-all-sessions-message{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:32px;background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;grid-column:1 / -1}.loading-all-sessions-message p{margin:0;color:#0369a1;font-size:14px}[data-theme=dark] .loading-all-sessions-message{background:#1e3a5f;border-color:#0369a1}[data-theme=dark] .loading-all-sessions-message p{color:#7dd3fc}.client-pre-session-notes{background:#f0f9ff;border:1px solid #0ea5e9;border-radius:8px;padding:16px;margin-bottom:16px}.client-pre-session-notes strong{color:#0369a1;display:block;margin-bottom:8px;font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.client-pre-session-notes p{margin:0;color:#0c4a6e;font-style:italic;line-height:1.6;background:#fff;padding:12px;border-radius:4px;border-left:3px solid #0ea5e9}.session-notes-display{background:#f8fafc;border-radius:8px;padding:20px;border:1px solid #e2e8f0}.session-notes-display h4{margin:0 0 16px;color:#1e293b;font-size:16px;font-weight:600;border-bottom:2px solid #e2e8f0;padding-bottom:8px}.pre-session-notes{background:#fef3c7;border-left:4px solid #f59e0b;padding:16px;margin-bottom:16px;border-radius:6px}.pre-session-notes strong{color:#92400e;display:block;margin-bottom:8px;font-weight:600}.pre-session-notes p{margin:0;color:#78350f;line-height:1.6}.post-session-notes{background:#dcfce7;border-left:4px solid #22c55e;padding:16px;margin-bottom:16px;border-radius:6px}.post-session-notes strong{color:#166534;display:block;margin-bottom:8px;font-weight:600}.post-session-notes p{margin:0;color:#14532d;line-height:1.6}.client-visibility-info{background:#f1f5f9;border:1px solid #cbd5e1;border-radius:6px;padding:12px;margin-top:12px}.client-visibility-info small{color:#475569;font-weight:500;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.animal-session-scheduler{display:flex;flex-direction:column;gap:24px;width:100%}.animal-session-scheduler .scheduler-header{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:20px;margin-bottom:24px}.animal-session-scheduler .scheduler-header h2{margin:0 0 8px;font-size:1.5rem;font-weight:600;color:#1e293b}.animal-session-scheduler .animal-info{margin:0;color:#64748b;font-size:.875rem;font-weight:500}.session-creator,.session-editor{background:transparent;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px}.session-creator-header,.session-editor-header{margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e5e7eb}.session-creator-header h3,.session-editor-header h3{margin:0 0 4px;font-size:1.25rem;font-weight:600;color:#111827}.session-creator-client,.session-editor-client{margin:0;color:#6b7280;font-size:.875rem}.session-editor-header{display:flex;justify-content:space-between;align-items:flex-start}.session-editor-date{margin:4px 0 0;color:#6b7280;font-size:.875rem}.session-editor-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.meta-badge{padding:6px 12px;border-radius:6px;font-size:.75rem;font-weight:600;white-space:nowrap}.meta-badge.animal-badge{background:#dbeafe;color:#1e40af;border:1px solid #93c5fd}.meta-badge.date-badge{background:#f3f4f6;color:#374151;border:1px solid #d1d5db}.meta-badge.status-badge{text-transform:uppercase;letter-spacing:.5px}.meta-badge.status-completed{background:#d1fae5;color:#065f46;border:1px solid #6ee7b7}.meta-badge.status-cancelled{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.meta-badge.status-no-show{background:#f3f4f6;color:#374151;border:1px solid #d1d5db}.session-creator-form,.session-editor-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-label{font-weight:500;color:#374151;font-size:.875rem;display:flex;align-items:center;gap:6px}.form-textarea{padding:12px;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;line-height:1.5;resize:vertical;min-height:120px;font-family:inherit}.form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #fe6b3426}.form-textarea:disabled{background-color:#f9fafb;color:#6b7280}.form-help{font-size:.75rem;color:#6b7280;line-height:1.4}.form-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:12px;border-radius:6px;font-size:.875rem}.session-completed-banner{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;background-color:#ecfdf5;border:1px solid #a7f3d0;border-radius:8px;margin-bottom:20px;color:#065f46;font-size:.9rem;line-height:1.5}.session-completed-banner svg{flex-shrink:0;color:#059669;margin-top:1px}.session-completed-banner strong{color:#047857}.session-creator-actions,.session-editor-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid #e5e7eb}.session-list{overflow:hidden}.session-list-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--text-tertiary);background:transparent}.session-list-title h3{margin:0;font-size:1.125rem;font-weight:600;color:#111827}.session-list-actions{display:flex;gap:8px}.session-filters{padding:20px 24px;background:#f9fafb;border-bottom:1px solid #e5e7eb}.filter-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:16px}.filter-row:last-child{margin-bottom:0}.filter-group label{font-size:.875rem;font-weight:500;color:#374151}.session-status-badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:.75rem;font-weight:600;color:#fff}.session-duration,.session-location{display:flex;align-items:center;gap:4px;color:#6b7280;font-size:.75rem}.session-action-buttons{display:flex;gap:8px}.sessions{display:flex;flex-direction:column}.session-card{border-bottom:1px solid #e5e7eb;transition:all .2s ease}.session-card.expanded{background:#f9fafb}.session-header{display:flex;align-items:center;padding:16px 24px;cursor:pointer;transition:background-color .2s ease}.session-card.expanded .session-header{background:transparent}.session-date{flex-shrink:0;margin-right:16px}.session-date-primary{font-weight:600;color:#111827;font-size:.875rem}.session-date-secondary{color:#6b7280;font-size:.75rem;margin-top:2px}.session-avatars{display:flex;gap:4px;margin-top:8px;align-items:center}.session-avatar{cursor:pointer;transition:transform .2s ease}.session-avatar:hover{transform:scale(1.1)}.session-preview{flex:1;min-width:0}.session-notes-preview{color:#374151;font-size:.875rem;line-height:1.4;margin-bottom:8px}.session-meta{display:flex;align-items:center;gap:12px;font-size:.75rem}.session-media-count{display:flex;align-items:center;gap:4px;color:#6b7280}.session-ai-badge{display:flex;align-items:center;gap:4px;color:#059669;background:#d1fae5;padding:2px 6px;border-radius:4px;font-weight:500}.session-expand-icon{flex-shrink:0;margin-left:16px;color:#6b7280;transition:transform .2s ease}.session-expand-icon svg.rotated{transform:rotate(180deg)}.session-full-date{color:#6b7280;font-size:.875rem;margin-bottom:20px;padding-top:16px}.session-notes,.session-ai-summary,.session-media{margin-bottom:24px}.session-notes h4,.session-ai-summary h4,.session-media h4{margin:0 0 12px;font-size:1rem;font-weight:600;color:#111827;display:flex;align-items:center;gap:6px}.session-notes-content,.session-ai-content{color:#374151;line-height:1.6}.session-notes-content p,.session-ai-content p{margin:0 0 12px}.session-notes-content p:last-child,.session-ai-content p:last-child{margin-bottom:0}.session-ai-summary{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:6px;padding:16px}.session-ai-summary h4{color:#059669}.session-actions{display:flex;justify-content:space-between;align-items:center;padding-top:16px}.session-metadata{color:#6b7280;font-size:.75rem}.session-media-preview,.session-media-viewer,.session-file-upload{margin-top:8px}.version-history{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:16px;margin-bottom:20px}.version-history h4{margin:0 0 12px;font-size:.875rem;font-weight:600;color:#374151}.version-list{display:flex;flex-direction:column;gap:12px}.version-item{background:#fff;border:1px solid #e5e7eb;border-radius:4px;padding:12px}.version-header{display:flex;align-items:center;gap:12px;margin-bottom:8px;font-size:.75rem}.version-number{background:#e5e7eb;color:#374151;padding:2px 6px;border-radius:3px;font-weight:500}.version-date,.version-author{color:#6b7280}.version-notes-preview{color:#374151;font-size:.875rem;line-height:1.4}.ai-summary-display{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:6px;padding:12px;color:#374151;line-height:1.5}.ai-summary-display p{margin:0 0 8px}.ai-summary-display p:last-child{margin-bottom:0}.session-list.loading,.session-list.error{padding:48px 24px;text-align:center}.loading-spinner{display:flex;flex-direction:column;align-items:center;gap:16px}.error-message{display:flex;flex-direction:column;align-items:center;gap:16px;color:#dc2626}.error-message svg{width:48px;height:48px}.session-list.empty{padding:48px 24px;text-align:center}.empty-state{display:flex;flex-direction:column;align-items:center;gap:16px;color:#6b7280}.empty-icon{color:#d1d5db}.empty-icon svg{width:48px;height:48px}.empty-state h3{margin:0;color:#374151;font-size:1.125rem;font-weight:600}.empty-state p{margin:0;max-width:min(100%,400px);line-height:1.5}.btn-link{background:transparent;color:#3b82f6;border:none;padding:4px 8px}.btn-link:hover:not(:disabled){color:#2563eb;text-decoration:underline}.session-scheduler{background:#fff;border-radius:8px;padding:16px;box-shadow:0 1px 3px #0000001a}.session-scheduler.compact{padding:12px}.session-scheduler-header{margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e5e7eb}.session-scheduler-header h3{margin:0 0 4px;font-size:1.125rem;font-weight:600;color:#111827}.session-scheduler-description{margin:0;color:#6b7280;font-size:.8125rem}.session-scheduler-form{display:flex;flex-direction:column;gap:12px}.loading-indicator{font-size:.7rem;color:#6b7280;font-weight:400;font-style:italic}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.form-row-3{grid-template-columns:repeat(3,1fr)}.form-row-2{grid-template-columns:repeat(2,1fr)}.form-label{font-size:.8125rem;font-weight:500;color:#374151}.form-select,.form-input{padding:8px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:.8125rem;font-family:inherit;background:#fff;width:100%;color-scheme:light;box-sizing:border-box;height:35px}.form-select{cursor:pointer}.session-scheduler-form .form-input[type=date],.session-scheduler-form .form-input[type=time]{color:var(--text-primary, #374151)}.session-scheduler-form .form-input[type=date]::-webkit-calendar-picker-indicator,.session-scheduler-form .form-input[type=time]::-webkit-calendar-picker-indicator{cursor:pointer}.form-select:focus,.form-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #fe6b3426}.form-select:disabled,.form-input:disabled{background-color:#f9fafb;color:#6b7280;cursor:not-allowed}.form-control-static{padding:8px 10px;font-size:.8125rem;color:var(--text-primary, #374151);background:var(--surface-secondary, #f9fafb);border-radius:6px;border:1px solid var(--border-primary, #e5e7eb)}.required{color:#dc2626}.session-scheduler-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:12px;border-top:1px solid #e5e7eb}@media(max-width:640px){.form-row,.form-row-2,.form-row-3{grid-template-columns:1fr}}.spinner-sm{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}.calendar-view{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.calendar-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb}.calendar-title{display:flex;align-items:center;gap:12px}.calendar-title h3{margin:0;font-size:1.125rem;font-weight:600;color:#111827}.calendar-nav{display:flex;align-items:center;gap:8px}.calendar-nav-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#374151;cursor:pointer;transition:all .2s ease}.calendar-nav-btn:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.calendar-nav-btn:disabled{opacity:.5;cursor:not-allowed}.calendar-controls{display:flex;align-items:center;gap:12px}.calendar-view-toggle{display:flex;border:1px solid #d1d5db;border-radius:6px;overflow:hidden}.calendar-view-btn{padding:6px 12px;border:none;background:#fff;color:#374151;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;border-right:1px solid #d1d5db}.calendar-view-btn:last-child{border-right:none}.calendar-view-btn:hover:not(.active){background:#f9fafb}.calendar-view-btn.active{background:#3b82f6;color:#fff}.calendar-filter{display:flex;align-items:center;gap:8px}.calendar-filter label{font-size:.875rem;color:#6b7280;font-weight:500}.calendar-filter select{padding:6px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;background:#fff}.calendar-body{padding:24px}.calendar-grid{display:grid;gap:1px;background:var(--card-background);border:none;border-radius:6px;overflow:hidden}.calendar-grid.day-view{grid-template-columns:80px 1fr}.calendar-grid.week-view{grid-template-columns:80px repeat(7,1fr)}.calendar-grid.month-view{grid-template-columns:repeat(7,1fr)}.calendar-day-header{background:#f9fafb;padding:12px;font-size:.875rem;font-weight:600;color:#374151;text-align:center;border-bottom:2px solid #e5e7eb}.calendar-time-slot{background:#f9fafb;padding:8px;font-size:.75rem;color:#6b7280;text-align:right;border-right:2px solid #e5e7eb}.calendar-cell{background:#fff;min-height:80px;padding:32px 8px 8px;position:relative}.calendar-cell.today{background:#eff6ff}.calendar-cell.other-month{background:#f9fafb;opacity:.5}.calendar-date{position:absolute;top:8px;left:8px;right:8px;font-size:.875rem;font-weight:600;color:#374151;margin-bottom:0;display:flex;justify-content:space-between;align-items:center}.calendar-sessions{display:flex;flex-direction:column;gap:4px;margin-top:0}.calendar-session{background:#dbeafe;border-left:3px solid #3b82f6;padding:4px 6px;border-radius:3px;font-size:.75rem;color:#1e40af;cursor:pointer;transition:all .2s ease}.calendar-session:hover{background:#bfdbfe}.calendar-session.completed{background:#d1fae5;border-left-color:#059669;color:#065f46}.calendar-session.cancelled{background:#fee2e2;border-left-color:#dc2626;color:#991b1b}.calendar-session-time{font-weight:600;margin-bottom:2px}.calendar-session-client{opacity:.9}.calendar-session-more{font-size:.75rem;color:#6b7280;padding:4px 6px;text-align:center;font-weight:500}@media(max-width:768px){.session-creator,.session-list,.session-scheduler,.calendar-view{margin:0 -16px;border-radius:0}.session-header{padding:12px 16px}.session-content{padding:0 16px 16px}.session-creator-header,.session-editor-header,.session-scheduler-header{padding:16px;margin-bottom:16px}.session-creator-form,.session-editor-form,.session-scheduler-form{padding:0 16px 16px}.session-date{width:60px;margin-right:12px}.session-creator-actions,.session-editor-actions,.session-scheduler-actions{flex-direction:column-reverse;gap:8px}.btn{width:100%;justify-content:center}.session-list-header{flex-direction:column;align-items:flex-start;gap:12px}.session-list-actions{width:100%}.session-filters{padding:16px}.filter-row{grid-template-columns:1fr}.session-action-buttons{flex-direction:column;width:100%}.session-action-buttons .btn{width:100%}.calendar-header{flex-direction:column;gap:16px;align-items:flex-start}.calendar-controls{flex-direction:column;width:100%;gap:12px}.calendar-view-toggle{width:100%}.calendar-view-btn{flex:1}.calendar-filter{width:100%}.calendar-filter select{flex:1}.calendar-grid.week-view,.calendar-grid.day-view{font-size:.75rem}.calendar-session{font-size:.65rem}}.pet-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.behavior-tag{background:var(--chip-teal-bg);color:var(--chip-teal-text);border:1px solid var(--chip-teal-text);padding:3px 10px;font-size:.75rem;font-weight:500;border-radius:20px}.pet-medical-conditions{margin-bottom:16px}.pet-medical-conditions h4{margin:0 0 8px;font-size:.875rem;font-weight:600;color:#dc2626}.medical-conditions-list{display:flex;flex-wrap:wrap;gap:6px}.medical-condition{background:#fef2f2;color:#dc2626;padding:4px 8px;border-radius:4px;font-size:.75rem;font-weight:500;border:1px solid #fecaca}.session-notes-editor{margin-bottom:16px;padding:16px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.session-notes-editor h4{margin:0 0 16px;font-size:1rem;font-weight:600;color:#374151}.notes-form .form-group{margin-bottom:16px}.notes-form .form-group label{display:block;margin-bottom:4px;font-size:.875rem;font-weight:500;color:#374151}.notes-form .form-textarea{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;resize:vertical;min-height:80px}.notes-form .form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #fe6b3426}.radio-group{display:flex;flex-direction:column;gap:8px}.radio-option{display:flex;align-items:center;gap:8px;font-size:.875rem;cursor:pointer}.radio-option input[type=radio]{margin:0}.notes-form-actions{display:flex;gap:8px;margin-top:16px}.session-notes-display{margin-bottom:16px}.session-notes-display h4{margin:0 0 12px;font-size:.875rem;font-weight:600;color:#374151}.pre-session-notes,.post-session-notes{margin-bottom:12px}.pre-session-notes strong,.post-session-notes strong{font-size:.8125rem;color:#6b7280;text-transform:uppercase;letter-spacing:.025em}.pre-session-notes p,.post-session-notes p{margin:4px 0 0;font-size:.875rem;line-height:1.5;color:#374151}.client-visibility-info{margin-top:8px;padding:6px 8px;background:#dbeafe;border-radius:4px}.client-visibility-info small{font-size:.75rem;color:#1e40af;font-weight:500}.session-card.past-session{border-left:4px solid #9ca3af}.session-card.past-session .session-header{opacity:.8}.session-card.past-session .session-date-primary{color:#6b7280}.session-list-actions{display:flex;gap:8px;align-items:center}.session-list-actions .btn{display:flex;align-items:center;gap:6px;white-space:nowrap}.session-close-options{margin-bottom:16px;padding:16px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.session-close-options h4{margin:0 0 8px;font-size:1rem;font-weight:600;color:#374151}.session-close-options p{margin:0 0 16px;font-size:.875rem;color:#6b7280}.close-options-buttons{display:flex;gap:8px;flex-wrap:wrap}.btn-warning{background-color:#d97706;color:#fff;border:1px solid #d97706}.btn-warning:hover{background-color:#b45309;border-color:#b45309}.session-trainer{font-size:.8125rem;color:#6b7280;margin-top:2px;font-weight:500}.session-expand-icon{display:flex;align-items:center;gap:8px}.session-quick-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s ease}.btn-xs{padding:4px 6px;font-size:.75rem;border-radius:4px;border:1px solid transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.pet-information{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px;margin-bottom:16px}.pet-information h4{margin:0 0 12px;color:#374151;font-size:14px;font-weight:600}.pet-details{margin-bottom:12px;color:#4b5563;font-size:14px}.pet-details strong{color:#111827}.behavior-tags,.medical-conditions{margin-top:12px}.behavior-tags strong,.medical-conditions strong{display:block;margin-bottom:6px;color:#374151;font-size:13px}.tags-list,.conditions-list{display:flex;flex-wrap:wrap;gap:6px}.medical-condition{background:#fef3c7;color:#92400e;padding:4px 8px;border-radius:12px;font-size:13px;font-weight:500}.medical-notes-text{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:8px 12px;margin-top:4px;font-size:13px;color:#374151;line-height:1.4}.tags-label{font-size:13px;font-weight:600;color:#374151;margin-right:6px}.session-details{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px;margin-bottom:16px}.session-details strong{display:block;margin-bottom:6px;color:#374151;font-size:14px;font-weight:600}.session-details-text{color:#4b5563;font-size:14px;line-height:1.4}.pending-approval-section{background:var(--warm-tint-bg);border:1px solid var(--warm-tint-border);border-radius:12px;padding:20px;margin-bottom:24px}.pending-approval-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.pending-approval-header h3{color:var(--accent-orange);margin:0;font-size:16px;font-weight:600;display:flex;align-items:center;gap:8px}.pending-approval-header h3:before{content:"⚠";font-size:18px}.pending-count-badge{background:var(--accent-orange);color:#fff;padding:4px 12px;border-radius:12px;font-size:13px;font-weight:600}.pending-approval-header p{display:none}.pending-sessions-grid{display:flex;flex-direction:column;gap:12px}.pending-session-card{background:var(--card-background);border:none;border-radius:8px;padding:14px 16px;display:flex;align-items:center;gap:16px}.pending-session-header{display:flex;align-items:center;justify-content:space-evenly;flex:1;margin-bottom:0;min-width:0}.pending-session-info{display:flex;flex-direction:column;gap:3px;min-width:140px;flex:1}.pending-session-info h4{margin:0;color:var(--text-primary);font-size:15px;font-weight:500}.pending-session-date{color:var(--text-secondary);font-size:12px;margin:0}.pending-session-meta{display:flex;align-items:center;gap:10px;color:var(--text-secondary);font-size:14px;flex:1;text-align:center}.pending-session-meta-separator{color:var(--text-tertiary)}.pending-session-duration,.pending-session-location,.pending-session-pet{color:var(--text-secondary);font-size:14px;margin:0}.pending-session-trainer,.trainer-info-with-avatar{display:none}.pending-session-actions{display:flex;gap:8px;margin:0;padding:0;border:none;align-items:center;align-self:center;flex-shrink:0}.pending-session-actions .btn{padding:3px 10px;font-size:12px;border-radius:6px;font-weight:500;line-height:1.4;height:30px;min-height:unset;align-self:center}.pending-session-actions .btn svg{width:12px;height:12px;flex-shrink:0}.pending-session-details,.pending-session-notes{display:none}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:8px;padding:2rem;max-width:min(100%,500px);width:90%;max-height:90vh;overflow-y:auto}.modal-content h3{margin:0 0 1rem;color:#1f2937}.modal-content p{margin:0 0 1rem;color:#6b7280}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1rem}.pet-info-with-avatar{display:inline-flex;align-items:center;gap:8px}.pet-name-with-avatar{display:flex;align-items:center;gap:12px}.pet-name-with-avatar .pet-info{display:flex;flex-direction:column;gap:2px}.pet-name-with-avatar .pet-info strong{font-size:16px;color:#1f2937}.pet-name-with-avatar .pet-info span{font-size:14px;color:#6b7280}.sessions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px}.no-results-message{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:var(--text-secondary, #6b7280)}.no-results-message h4{margin:16px 0 8px;font-size:18px;font-weight:600;color:var(--text-primary, #374151)}.no-results-message p{margin:0;font-size:14px}.no-results-message .btn-link{background:none;border:none;color:var(--primary-color, #3b82f6);cursor:pointer;font-size:inherit;padding:0;text-decoration:underline}.no-results-message .btn-link:hover{color:var(--primary-dark, #2563eb)}.session-card-compact{overflow:hidden;transition:box-shadow .2s ease,transform .2s ease;display:flex;flex-direction:column;background:var(--card-background);border:1px solid transparent;border-radius:14px}.session-card-compact.clickable-card{cursor:pointer}.session-card-compact.clickable-card:focus{outline:2px solid var(--primary-color);outline-offset:2px}.session-card-compact.clickable-card:hover{border-color:var(--accent-orange)}.session-card-header{display:flex;justify-content:space-between;align-items:flex-start;padding:16px 16px 12px;background:transparent;border-bottom:none}.session-card-date{display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--body-background);color:var(--text-primary);border-radius:8px;padding:8px 14px;min-width:58px}.session-date-day{font-size:26px;font-weight:700;line-height:1}.session-date-month{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-top:3px;color:var(--text-secondary)}.session-card-status{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.session-card-compact .session-status-badge{border-radius:20px;font-size:12px;padding:4px 12px}.session-card-meta{display:flex;gap:8px;align-items:center}.session-media-badge,.session-version-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:var(--surface-hover);border-radius:4px;font-size:13px;color:var(--text-secondary);font-weight:500}.session-card-body{padding:4px 16px 12px;flex:1;display:flex;flex-direction:column;gap:12px}.session-card-time{font-size:13px;color:var(--text-secondary);font-weight:500}.session-card-participants{display:flex;flex-direction:column;gap:12px}.participant-info{display:flex;align-items:center;gap:10px}.participant-details{flex:1;min-width:0}.participant-name{font-weight:700;color:var(--text-primary);font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.participant-pet,.participant-role{font-size:12px;color:var(--text-secondary);display:flex;align-items:center;gap:4px;margin-top:2px;text-transform:uppercase;letter-spacing:.04em}.session-card-location{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary);padding:9px 12px;background:var(--input-bg);border-radius:8px;border:1px solid var(--input-border)}.session-card-tags{display:flex;flex-wrap:wrap;gap:6px}.behavior-tag-small{display:inline-flex;align-items:center;padding:3px 10px;background:var(--chip-teal-bg);color:var(--chip-teal-text);border:1px solid var(--chip-teal-text);border-radius:20px;font-size:12px;font-weight:500;white-space:nowrap}.session-card-notes{font-size:13px;color:var(--text-secondary);line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.session-ai-badge-small{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:var(--success-bg);color:var(--success-text);border-radius:4px;font-size:13px;font-weight:500}.session-card-footer{padding:0;border-top:1px solid var(--card-border);background:transparent;position:relative;display:flex;flex-direction:column}.session-card-quick-actions{display:flex}.session-card-quick-actions .btn{flex:1;justify-content:center;background:transparent;border:none;border-radius:0;padding:11px 8px;font-size:13px;font-weight:500;color:var(--text-secondary);gap:6px;transition:background .15s,color .15s;border-bottom:none!important}.session-card-quick-actions .btn:first-child{border-right:1px solid var(--card-border)}.session-card-quick-actions .btn:hover{background:var(--surface-hover);color:var(--text-primary)}.btn-block{width:100%;justify-content:center;background:var(--accent-orange)!important;border:none!important;border-radius:0!important;padding:13px 16px!important;font-size:14px!important;font-weight:600!important;color:#fff!important;gap:8px;transition:background .15s!important}.btn-block:hover{background:var(--accent-orange-hover)!important}.session-close-dropdown{position:absolute;bottom:100%;left:0;right:0;background:var(--card-background);border:1px solid var(--card-border);border-radius:10px 10px 0 0;box-shadow:var(--shadow-lg);padding:8px;margin-bottom:0;z-index:10}.close-dropdown-header{font-size:11px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;padding:6px 8px 8px;border-bottom:1px solid var(--card-border);margin-bottom:4px}.close-dropdown-option{width:100%;display:flex;align-items:center;gap:8px;padding:10px 12px;background:none;border:none;border-radius:6px;font-size:14px;color:var(--text-primary);cursor:pointer;transition:background .15s ease;text-align:left}.close-dropdown-option:hover{background:var(--surface-hover)}.close-dropdown-option.cancel{color:var(--text-secondary);border-top:1px solid var(--card-border);margin-top:4px;padding-top:12px}@media(max-width:768px){.sessions-grid{grid-template-columns:1fr}.session-card-participants{gap:8px}}.calendar-day-cell.blocked-cell{position:relative}.calendar-day.blocked{background:repeating-linear-gradient(-45deg,transparent,transparent 5px,rgba(128,128,128,.08) 5px,rgba(128,128,128,.08) 10px),var(--surface-secondary, #f5f5f5)!important;color:var(--text-tertiary, #9ca3af)!important;cursor:not-allowed}[data-theme=dark] .calendar-day.blocked{background:repeating-linear-gradient(-45deg,transparent,transparent 5px,rgba(148,163,184,.07) 5px,rgba(148,163,184,.07) 10px),#1a2533!important}.blocked-reason{position:absolute;bottom:6px;left:8px;font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-tertiary, #9ca3af);background:none;padding:0;border-radius:0;pointer-events:none}[data-theme=dark] .blocked-reason{color:#4a5e73}@media(max-width:768px){.blocked-reason{font-size:9px;bottom:4px;left:6px}}.load-more-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;margin-top:16px}.load-more-spinner{display:flex;align-items:center;gap:12px;color:#6b7280;font-size:14px}.load-more-spinner .spinner{width:24px;height:24px;border-width:2px}.load-more-btn{padding:12px 24px;font-size:14px}.load-more-end{color:#9ca3af;font-size:13px;padding:8px 16px}.session-search-filter{margin-bottom:.75rem}.session-filter-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s ease,margin-bottom .28s ease;margin-bottom:0}.session-filter-panel.expanded{grid-template-rows:1fr;margin-bottom:.625rem}.session-filter-panel-inner{overflow:hidden}.session-filter-panel-content{padding:1rem 1.125rem;background:var(--card-background);border:1px solid var(--text-tertiary);border-radius:10px}.sfp-row{display:flex;gap:1rem;flex-wrap:wrap}.sfp-row+.sfp-row{margin-top:.875rem}.sfp-row-bottom{align-items:flex-end}.sfp-field{display:flex;flex-direction:column;gap:.375rem;flex:1 1 160px}.sfp-field label{font-size:.6875rem;font-weight:600;letter-spacing:.06em;color:var(--text-tertiary)}.sfp-select{padding:.55rem .875rem;border:1px solid var(--input-border);border-radius:6px;background:var(--input-bg);font-size:.875rem;color:var(--text-primary);cursor:pointer;transition:border-color .15s;width:100%}.sfp-select:focus{outline:none;border-color:var(--input-focus-border);box-shadow:0 0 0 2px var(--focus-ring)}.sfp-field-date-range{flex:2 1 320px}.sfp-date-range{display:flex;align-items:center;gap:.5rem}.sfp-date{flex:1;padding:.55rem .75rem;border:1px solid var(--input-border);border-radius:6px;background:var(--input-bg);font-size:.875rem;color:var(--text-primary);transition:border-color .15s}.sfp-date:focus{outline:none;border-color:var(--input-focus-border);box-shadow:0 0 0 2px var(--focus-ring)}.sfp-date-to{font-size:.8125rem;color:var(--text-tertiary);flex-shrink:0}.sfp-actions{display:flex;gap:.5rem;align-items:flex-end;flex-shrink:0;margin-left:auto}.sfp-clear-btn{padding:.55rem 1rem;background:transparent;border:1px solid var(--border-primary);border-radius:6px;font-size:.875rem;color:var(--text-secondary);cursor:pointer;transition:all .15s;white-space:nowrap}.sfp-clear-btn:hover{border-color:var(--text-secondary);color:var(--text-primary)}.sfp-apply-btn{padding:.55rem 1.25rem;background:var(--accent-orange);border:none;border-radius:6px;font-size:.875rem;font-weight:600;color:#fff;cursor:pointer;transition:background .15s;white-space:nowrap}.sfp-apply-btn:hover{background:var(--accent-orange-hover)}.session-search-bar{display:flex;align-items:center;gap:.5rem}.session-search-input-wrap{position:relative;flex:1}.session-search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--text-tertiary);pointer-events:none}.session-search-input{width:100%;padding:.6rem 1rem .6rem 2.25rem;border:1px solid var(--input-border);border-radius:6px;font-size:.875rem;background:var(--input-bg);color:var(--text-primary);transition:border-color .15s}.session-search-input::placeholder{color:var(--input-placeholder)}.session-search-input:focus{outline:none;border-color:var(--input-focus-border);box-shadow:0 0 0 2px var(--focus-ring)}.session-filter-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.6rem 1rem;background:transparent;border:1px solid var(--input-border);border-radius:6px;font-size:.875rem;font-weight:500;color:var(--text-secondary);cursor:pointer;white-space:nowrap;transition:all .15s;flex-shrink:0;line-height:1.25;height:36px;min-height:unset}.session-filter-btn:hover,.session-filter-btn.active{border-color:var(--primary-color);color:var(--primary-color)}.session-completed-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.6rem 1rem;background:transparent;border:1px solid var(--input-border);border-radius:6px;font-size:.875rem;font-weight:500;color:var(--text-secondary);cursor:pointer;white-space:nowrap;transition:all .15s;flex-shrink:0;line-height:1.25;height:36px;min-height:unset}.session-completed-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.session-completed-btn.active{border-color:var(--primary-color);color:var(--primary-color);background:var(--primary-light)}.session-completed-btn:disabled{opacity:.6;cursor:not-allowed}@media(max-width:640px){.session-search-bar{flex-wrap:wrap}.session-search-input-wrap{width:100%}.sfp-field,.sfp-field-date-range{flex:1 1 100%}.sfp-actions{width:100%;margin-left:0}.sfp-apply-btn,.sfp-clear-btn{flex:1;text-align:center;justify-content:center}}.visibility-media-row{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;align-items:start}.visibility-media-row .form-group{margin-bottom:0}.session-media-group{border:2px dashed var(--card-border)!important;border-radius:12px;padding:1.25rem}@media(max-width:640px){.visibility-media-row{grid-template-columns:1fr}}.session-scheduler-modal{width:100%;max-width:min(100%,900px)}.session-scheduler-modal .session-scheduler{padding:0;max-width:100%;box-shadow:none;background:transparent;margin:0}.session-scheduler-modal .session-scheduler .form-group{background:transparent;border:none;padding:0;border-radius:0;margin-bottom:0}.session-scheduler-modal .scheduler-header{display:none}.session-scheduler-modal .session-scheduler .form-row{display:grid;gap:12px}.session-scheduler-modal .session-scheduler .form-row.form-row-3{grid-template-columns:repeat(3,1fr)}.session-scheduler-modal .session-scheduler .form-row.form-row-2{grid-template-columns:repeat(2,1fr)}.session-scheduler-modal input[type=date]:invalid,.session-scheduler-modal input[type=time]:invalid{border-color:var(--input-border, #d1d5db)}.session-scheduler-modal input[type=date]:invalid:focus,.session-scheduler-modal input[type=time]:invalid:focus{border-color:var(--input-border, #d1d5db);box-shadow:0 0 0 2px #fe6b3426}@media(max-width:600px){.session-scheduler-modal .session-scheduler .form-row.form-row-3,.session-scheduler-modal .session-scheduler .form-row.form-row-2{grid-template-columns:1fr}}.setup-checklist{background:linear-gradient(135deg,var(--primary-50, #eff6ff) 0%,var(--primary-100, #dbeafe) 100%);border:1px solid var(--primary-200, #bfdbfe);border-radius:12px;padding:1.25rem 1.5rem;margin-bottom:1.5rem;position:relative}.setup-checklist-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.setup-checklist-title{display:flex;align-items:center;gap:.5rem}.setup-checklist-title h3{margin:0;font-size:1rem;font-weight:600;color:var(--text-primary, #1e293b)}.setup-checklist-title .setup-icon{font-size:1.25rem}.setup-checklist-actions{display:flex;align-items:center;gap:.75rem}.setup-checklist-dismiss{background:none;border:none;color:var(--text-secondary, #64748b);cursor:pointer;font-size:.8rem;padding:.25rem .5rem;border-radius:4px;transition:background .15s}.setup-checklist-dismiss:hover{background:#0000000d}.setup-progress-bar{width:100%;height:6px;background:#00000014;border-radius:3px;margin-bottom:1rem;overflow:hidden}.setup-progress-fill{height:100%;background:var(--primary-500, #3b82f6);border-radius:3px;transition:width .4s ease}.setup-progress-text{font-size:.8rem;color:var(--text-secondary, #64748b);margin-bottom:.75rem}.setup-tasks-grid{display:flex;flex-wrap:wrap;gap:.5rem}.setup-task-chip{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border-radius:20px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .15s;border:1px solid transparent;text-decoration:none}.setup-task-chip.completed{background:var(--success-50, #f0fdf4);color:var(--success-700, #15803d);border-color:var(--success-200, #bbf7d0)}.setup-task-chip.completed .task-check{color:var(--success-500, #22c55e)}.setup-task-chip.pending{background:var(--bg-primary, white);color:var(--text-primary, #1e293b);border-color:var(--border-color, #e2e8f0)}.setup-task-chip.pending:hover{border-color:var(--primary-300, #93c5fd);background:var(--primary-50, #eff6ff)}.setup-task-chip .task-check{font-size:.85rem;flex-shrink:0}.setup-checklist.collapsed .setup-tasks-grid,.setup-checklist.collapsed .setup-progress-bar,.setup-checklist.collapsed .setup-progress-text{display:none}.setup-toggle-btn{background:none;border:none;color:var(--primary-600, #2563eb);cursor:pointer;font-size:.8rem;font-weight:500;padding:.25rem .5rem;border-radius:4px;transition:background .15s}.setup-toggle-btn:hover{background:#2563eb14}.setup-wizard-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1100;padding:1rem;animation:modal-overlay-fade-in .2s ease-out}.setup-wizard{background:var(--modal-bg, white);border-radius:16px;box-shadow:0 20px 60px #0000004d;width:100%;max-width:1180px;max-height:90vh;display:flex;flex-direction:column;animation:modal-slide-in .2s ease-out}.setup-wizard-header{padding:1.5rem 1.5rem 1rem;border-bottom:1px solid var(--border-color, #e2e8f0)}.setup-wizard-header h2{margin:0 0 .25rem;font-size:1.25rem;font-weight:700;color:var(--text-primary, #1e293b)}.setup-wizard-header p{margin:0;font-size:.875rem;color:var(--text-secondary, #64748b)}.wizard-steps-indicator{display:flex;align-items:flex-start;justify-content:space-between;margin-top:1rem;gap:.2rem}.wizard-step-item{min-width:74px;display:flex;flex-direction:column;align-items:center;gap:.4rem;text-align:center;flex:1 1 0}.wizard-step-number{width:2rem;height:2rem;border-radius:999px;border:2px solid var(--border-color, #cbd5e1);background:var(--modal-bg, white);color:var(--text-secondary, #64748b);font-size:.85rem;font-weight:700;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.wizard-step-label{font-size:.68rem;line-height:1.2;color:var(--text-secondary, #64748b);max-width:100%;word-break:break-word}.wizard-step-item.active .wizard-step-number{border-color:var(--primary-500, #3b82f6);background:var(--primary-500, #3b82f6);color:#fff}.wizard-step-item.active .wizard-step-label{color:var(--text-primary, #1e293b);font-weight:600}.wizard-step-item.completed .wizard-step-number{border-color:var(--success-500, #22c55e);background:var(--success-500, #22c55e);color:#fff}.wizard-step-item.completed .wizard-step-label{color:var(--text-primary, #1e293b)}.wizard-step-connector{display:flex;align-items:center;justify-content:center;gap:.2rem;min-width:1.5rem;padding-top:.65rem;flex:0 0 auto}.wizard-step-line{width:.8rem;height:2px;background:var(--border-color, #cbd5e1);border-radius:999px}.wizard-step-arrow{font-size:.75rem;color:var(--text-secondary, #64748b)}.setup-wizard-body{flex:1;overflow-y:auto;padding:1.5rem}.setup-wizard-body-inner{width:100%;max-width:980px;margin:0 auto}.setup-wizard-footer{padding:1rem 1.5rem;border-top:1px solid var(--border-color, #e2e8f0);display:flex;align-items:center;justify-content:space-between}.wizard-footer-left{display:flex;align-items:center;gap:.5rem}.wizard-footer-right{display:flex;align-items:center;gap:.75rem}.wizard-skip-btn{background:none;border:none;color:var(--text-secondary, #64748b);cursor:pointer;font-size:.875rem;padding:.5rem 1rem;border-radius:6px;transition:background .15s}.wizard-skip-btn:hover{background:#0000000d}.wizard-step-content{min-height:200px}.wizard-step-content h3{margin:0 0 .5rem;font-size:1.1rem;font-weight:600;color:var(--text-primary, #1e293b)}.wizard-step-content>p{margin:0 0 1.25rem;font-size:.875rem;color:var(--text-secondary, #64748b);line-height:1.5}.wizard-welcome{text-align:center;padding:1rem 0}.wizard-welcome .welcome-icon{font-size:3rem;margin-bottom:1rem}.wizard-welcome h3{font-size:1.5rem;margin-bottom:.75rem}.wizard-welcome p{max-width:480px;margin:0 auto 1.5rem;line-height:1.6}.wizard-task-preview{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem;text-align:left;max-width:500px;margin:0 auto}.wizard-task-preview-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--bg-secondary, #f8fafc);border-radius:8px;font-size:.8rem;color:var(--text-primary, #1e293b)}.wizard-task-preview-item .preview-icon{font-size:1rem;flex-shrink:0}.wizard-completion{text-align:center;padding:1.5rem 0}.wizard-completion .completion-icon{font-size:3.5rem;margin-bottom:1rem}.wizard-completion h3{font-size:1.5rem;margin-bottom:.75rem;color:var(--success-color)}.wizard-completion p{max-width:480px;margin:0 auto 1rem;line-height:1.6}.wizard-completion-stats{display:flex;justify-content:center;gap:2rem;margin-top:1.5rem}.wizard-completion-steps{max-width:420px;margin:1.5rem auto 0;text-align:left;display:grid;gap:.75rem}.wizard-completion-step{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border:1px solid var(--border-color, #e2e8f0);border-radius:10px;background:var(--surface-hover);color:var(--text-primary, #1e293b)}.wizard-completion-step.completed{background:var(--chip-orange-bg);border-color:var(--chip-orange-border)}.wizard-completion-step-icon{width:1.25rem;flex-shrink:0;text-align:center;font-weight:700;color:var(--primary-600, #2563eb)}.wizard-completion-step.completed .wizard-completion-step-icon{color:var(--success-700, #15803d)}.wizard-completion-step-label{line-height:1.4}.wizard-completion-step.completed .wizard-completion-step-label{text-decoration:line-through;color:var(--text-secondary, #64748b)}.completion-stat{text-align:center}.completion-stat-value{font-size:1.5rem;font-weight:700;color:var(--accent-orange)}.completion-stat-label{font-size:.75rem;color:var(--text-secondary, #64748b);margin-top:.25rem}.wizard-embedded-component .modal-overlay{position:static;background:none;padding:0;animation:none;z-index:auto}.wizard-embedded-component .modal-overlay>.modal,.wizard-embedded-component .modal-overlay>.modal-content{box-shadow:none;border-radius:0;max-height:none;animation:none}.wizard-embedded-component .client-invite-modal-overlay{position:static;background:none;padding:0;animation:none;z-index:auto}.wizard-embedded-component .card{box-shadow:none;border:none}.wizard-embedded-component .card-header{padding-left:0;padding-right:0;padding-top:0}.wizard-embedded-component .card-content{padding-left:0;padding-right:0;padding-bottom:0}.wizard-embedded-component .billing-settings{max-width:100%;overflow:hidden}.wizard-embedded-component .billing-settings-header{display:none}.wizard-embedded-component .settings-four-column-grid{grid-template-columns:1fr 1fr}.wizard-embedded-component .branding-settings .card{background:transparent;border:none;box-shadow:none;padding-bottom:0;margin-top:0}.wizard-embedded-component .branding-settings .card-header h3{display:block}.wizard-embedded-component .card-header{flex-direction:column;align-items:flex-start}.wizard-quick-form{display:flex;flex-direction:column;gap:1rem;background:var(--card-background);padding:1.5rem;border-radius:16px}.wizard-add-animal{background:var(--card-background);border-radius:16px;padding:1.5rem}.wizard-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.wizard-form-group{display:flex;flex-direction:column;gap:.375rem}.wizard-form-group label{font-size:.8rem;font-weight:600;color:var(--text-primary, #1e293b)}.wizard-form-group input,.wizard-form-group select{padding:.5rem .75rem;border:1px solid var(--border-color, #e2e8f0);border-radius:6px;font-size:.875rem;transition:border-color .15s;background:var(--input-bg)}.wizard-form-group input:focus,.wizard-form-group select:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.wizard-form-hint{font-size:.75rem;color:var(--text-secondary, #64748b);margin-top:.25rem}.wizard-info-box{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;background:var(--card-bg);border:1px solid var(--accent-orange);border-radius:8px;font-size:.8rem;color:var(--text-primary);line-height:1.5;margin-top:1rem}.wizard-info-box .info-icon{font-size:1rem;flex-shrink:0;margin-top:.1rem}@media(max-width:640px){.setup-tasks-grid{flex-direction:column}.wizard-step-item{min-width:68px}.wizard-step-label{font-size:.64rem}.wizard-step-connector{min-width:1.2rem}.wizard-step-line{width:.55rem}.wizard-form-row,.wizard-task-preview{grid-template-columns:1fr}.wizard-completion-stats{flex-direction:column;gap:1rem}}.dashboard{display:flex;flex-direction:column;gap:24px;max-width:1400px;margin:0 auto}@keyframes dashboard-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.dashboard .skeleton-block{border-radius:4px;background:linear-gradient(90deg,var(--surface-hover) 25%,rgba(255,255,255,.15) 50%,var(--surface-hover) 75%);background-size:200% 100%;animation:dashboard-skeleton-shimmer 1.4s ease-in-out infinite}.dashboard .skeleton-block:nth-child(2){animation-delay:.15s}.dashboard .skeleton-block:nth-child(3){animation-delay:.3s}.dashboard-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.dashboard-welcome h1{font-size:28px;font-weight:700;color:var(--text-primary, #1f2937);margin:0 0 8px}.dashboard-subtitle{font-size:16px;color:var(--text-secondary, #6b7280);margin:0;line-height:1.5}.tenant-badge{background-color:var(--chip-orange-bg, #fff3ed);color:var(--accent-orange, #FE6B34);padding:6px 12px;border-radius:20px;font-size:14px;font-weight:500}.dashboard-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:8px}.dashboard-content{display:grid;grid-template-columns:1fr 320px;gap:24px;padding-bottom:2rem}.dashboard-main{display:flex;flex-direction:column;gap:24px}.dashboard-sidebar{display:flex;flex-direction:column;gap:20px}.dashboard-card,.dashboard-card.stat-card,.today-appointments-card{background:var(--card-background);border:1px solid transparent;box-shadow:0 1px 3px #0000004d;border-radius:12px;padding:24px}.card-title{font-size:18px;font-weight:600;color:var(--text-primary, #1f2937);margin:0 0 16px}.stat-card{background-color:var(--card-background);border:1px solid transparent;border-radius:16px;padding:1rem 2rem}.stat-card-clickable{cursor:pointer;transition:all .2s ease}.stat-card-clickable:hover{border-color:var(--accent-orange-hover, #f4a261)}.stat-card-clickable:focus{border-color:transparent;outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px}.stat-content{display:flex;flex-direction:column;gap:8px;height:100%}.stat-header{display:flex;align-items:center;gap:12px}.stat-title{font-size:14px;font-weight:500;color:var(--text-secondary);margin:0}.stat-icon{width:32px;height:32px;border-radius:6px;display:flex;align-items:center;justify-content:center;color:var(--text-inverse, #ffffff);flex-shrink:0}.stat-icon-blue{background-color:#3b82f6}.stat-icon-green{background-color:#10b981}.stat-icon-orange{background-color:var(--accent-orange)}.stat-icon-purple{background-color:#8b5cf6}.stat-icon-red{background-color:#ef4444}.stat-value{font-size:36px;font-weight:700;color:var(--text-primary);line-height:1;margin:4px 0}.stat-value.stat-value-text{font-size:1rem;line-height:1.4}.stat-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto}.stat-trend{font-size:13px;color:var(--text-secondary)}.stat-view-all{padding:0;border:none;background:none;color:var(--accent-orange);font-size:13px;font-weight:500;cursor:pointer;transition:color .2s;white-space:nowrap}.stat-view-all:hover{color:var(--accent-orange-hover)}.dashboard-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.dashboard-loading .loading-spinner{margin-bottom:16px}.dashboard-loading p{color:var(--text-secondary, #6b7280);font-size:16px;margin:0}.dashboard-error{text-align:center;padding:60px 20px}.dashboard-error h2{color:var(--error-color, #dc2626);margin-bottom:12px}.dashboard-error p{color:var(--text-secondary, #6b7280);line-height:1.5}.activity-list{display:flex;flex-direction:column;gap:12px}.activity-item{display:flex;justify-content:space-between;align-items:center;padding:16px;border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;background-color:var(--surface-secondary, #f9fafb);transition:background-color .2s}.activity-item:hover{background-color:var(--hover-bg, #f3f4f6)}.activity-content{flex:1}.activity-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.activity-client{font-size:16px;font-weight:600;color:var(--text-primary, #1f2937);margin:0}.activity-date{font-size:14px;color:var(--text-secondary, #6b7280)}.activity-details{display:flex;gap:12px;align-items:center}.activity-type{font-size:14px;color:var(--text-secondary, #4b5563)}.activity-status{padding:4px 8px;border-radius:12px;font-size:12px;font-weight:500;text-transform:capitalize}.status-green{background-color:var(--success-bg, #d1fae5);color:var(--success-text, #065f46)}.status-blue{background-color:var(--info-bg, #dbeafe);color:var(--info-text, #1e40af)}.status-orange{background-color:var(--warning-bg, #fed7aa);color:var(--warning-text, #9a3412)}.status-red{background-color:var(--error-bg, #fecaca);color:var(--error-text, #991b1b)}.status-gray{background-color:var(--surface-secondary, #f3f4f6);color:var(--text-primary, #374151)}.activity-actions{display:flex;gap:8px}.activity-action{padding:8px;border:none;background-color:transparent;color:var(--text-secondary, #6b7280);border-radius:6px;cursor:pointer;transition:all .2s}.activity-action:hover{background-color:var(--hover-bg, #e5e7eb);color:var(--text-primary, #374151)}.activity-empty{text-align:center;padding:40px 20px;color:var(--text-secondary, #6b7280)}.activity-footer{margin-top:16px;padding-top:16px;border-top:1px solid var(--border-primary, #e5e7eb)}.activity-view-all{display:flex;align-items:center;gap:8px;width:100%;padding:12px;border:none;background-color:var(--surface-secondary, #f9fafb);color:var(--text-primary, #374151);border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s}.activity-view-all:hover{background-color:var(--hover-bg, #f3f4f6)}.today-appointments-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.today-appointments-header .card-title{margin:0}.today-date{font-size:14px;color:var(--text-secondary);font-weight:500}.appointments-list{display:flex;flex-direction:column;gap:0}.appointment-item{display:flex;align-items:flex-start;gap:16px;padding:16px 0;border-bottom:1px solid var(--border-primary);text-decoration:none;transition:all .2s;position:relative}.appointment-item:last-child{border-bottom:none}.appointment-item:hover{background:var(--surface-hover);margin:0 -24px;padding:16px 24px;border-radius:8px}.appointment-time-block{display:flex;flex-direction:column;align-items:flex-start;min-width:60px}.appointment-time{font-size:16px;font-weight:600;color:var(--text-primary);line-height:1.2}.appointment-duration{font-size:12px;color:var(--text-secondary);margin-top:2px}.appointment-dot{width:8px;height:8px;border-radius:50%;background:var(--accent-orange);margin-top:6px;flex-shrink:0}.appointment-dot-confirmed{background:var(--success-color)}.appointment-dot-scheduled{background:#3b82f6}.appointment-dot-completed{background:var(--success-color)}.appointment-dot-pending{background:var(--accent-orange)}.appointment-dot-no-show{background:var(--warning-color)}.appointment-dot-cancelled{background:var(--error-color, #ef4444)}.appointment-details{flex:1;display:flex;flex-direction:column;gap:4px}.appointment-title{font-size:15px;font-weight:600;color:var(--text-primary);line-height:1.3}.appointment-client{font-size:13px;color:var(--text-secondary);line-height:1.3}.appointment-status{text-transform:capitalize;margin-top:4px;width:fit-content;display:inline-flex;gap:6px;padding:4px 10px;border-radius:100px;font-size:12px;font-weight:500}.appointment-status.status-confirmed{background:var(--success-bg);color:var(--success-color)}.appointment-status.status-scheduled{background:#3b82f61a;color:#3b82f6}.appointment-status.status-completed{background:var(--success-bg);color:var(--success-color)}.appointment-status.status-no-show{background:var(--warning-bg);color:var(--warning-text)}.appointment-status.status-cancelled{background:var(--error-hover);color:var(--error-text)}.schedule-list{display:flex;flex-direction:column;gap:12px}.schedule-item{display:flex;gap:16px;padding:16px;border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;background-color:var(--surface-secondary, #f9fafb)}.schedule-time{font-size:14px;font-weight:600;color:var(--accent-orange, #FE6B34);min-width:80px}.schedule-details{flex:1}.schedule-client{font-size:16px;font-weight:600;color:var(--text-primary, #1f2937);margin-bottom:4px}.schedule-type{font-size:14px;color:var(--text-secondary, #6b7280)}.schedule-status{margin-top:4px;padding:2px 6px;border-radius:8px;font-size:11px;font-weight:500;text-transform:capitalize}.schedule-empty{text-align:center;padding:32px 16px;color:var(--text-secondary, #6b7280)}.quick-stats{display:flex;flex-direction:column;gap:16px}.quick-stat{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--border-primary, #f3f4f6)}.quick-stat:last-child{border-bottom:none}.quick-stat-label{font-size:14px;color:var(--text-secondary, #6b7280)}.quick-stat-value{font-size:16px;font-weight:600;color:var(--text-primary, #1f2937)}.quick-actions{display:flex;flex-direction:column;gap:8px}.dashboard .task-list{display:flex;flex-direction:column;gap:12px}.dashboard .task-item{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px;border:1px solid var(--chip-orange-border);border-radius:8px;background-color:var(--card-background);transition:all .2s ease}.dashboard .task-item:hover{border-color:var(--accent-orange-hover, #f4a261);background-color:var(--surface-hover, #f3f4f6)}.dashboard .task-content{flex:1;min-width:0}.dashboard .task-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.dashboard .task-title{font-size:15px;font-weight:600;color:var(--text-primary, #1f2937);margin:0}.dashboard .task-priority{padding:2px 8px;border-radius:12px;font-size:12px;font-weight:500;text-transform:capitalize}.dashboard .task-priority.priority-red{background-color:var(--error-bg, #fecaca);color:var(--error-text, #991b1b)}.dashboard .task-priority.priority-orange{background-color:var(--warning-bg, #fed7aa);color:var(--warning-text, #9a3412)}.dashboard .task-priority.priority-green{background-color:var(--success-bg, #d1fae5);color:var(--success-text, #065f46)}.dashboard .task-priority.priority-gray{background-color:var(--surface-secondary, #f3f4f6);color:var(--text-secondary, #6b7280)}.dashboard .task-description{font-size:13px;color:var(--text-secondary, #6b7280);margin:0 0 6px;line-height:1.4}.dashboard .task-meta{display:flex;align-items:center;gap:12px}.dashboard .task-due{font-size:12px;color:var(--text-tertiary, #9ca3af)}.dashboard .task-actions{display:flex;gap:8px;flex-shrink:0}.dashboard .task-button{padding:6px 14px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.dashboard .task-button.start{background-color:var(--accent-orange, #FE6B34);color:var(--text-inverse, #ffffff)}.dashboard .task-button.start:hover{background-color:var(--accent-orange-hover, #f4a261)}.dashboard .task-button.upload-media{background-color:var(--surface-secondary, #f3f4f6);color:var(--text-primary, #374151);border:1px solid var(--border-primary, #e5e7eb)}.dashboard .task-button.upload-media:hover{background-color:var(--surface-hover, #e5e7eb);border-color:var(--accent-orange-hover, #f4a261)}.dashboard-sessions-row{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.sessions-pending-card{min-height:280px}.session-item{display:flex;align-items:center;gap:16px;padding:14px 16px;border:1px solid transparent;border-radius:8px;background-color:var(--card-background);transition:all .2s}.session-item-clickable{text-decoration:none;cursor:pointer}.session-item-clickable:hover{background-color:var(--surface-hover);border-color:var(--chip-orange-bg)}.session-info{display:flex;flex-direction:column;gap:3px;min-width:120px}.session-client{font-size:15px;font-weight:500;color:var(--text-primary)}.session-date{font-size:13px;color:var(--text-secondary)}.session-meta{display:flex;flex-direction:column;align-items:flex-start;gap:2px;flex:1;overflow:hidden}.session-pet{font-size:14px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-type{font-size:14px;color:var(--text-secondary);white-space:nowrap}.session-action-hint{font-size:13px;color:var(--accent-orange);font-weight:500;flex-shrink:0}.session-meta-separator{color:var(--text-tertiary)}.sessions-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;color:var(--text-tertiary, #9ca3af)}.sessions-empty svg{margin-bottom:12px;color:var(--success-color, #10b981)}.sessions-empty p{margin:0;font-size:14px;color:var(--text-secondary, #6b7280)}@media(max-width:1024px){.dashboard-sessions-row{grid-template-columns:1fr}}.action-button{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;border:none;background-color:var(--body-background);color:var(--text-primary, #374151);border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s;text-align:left}.action-button:hover{background-color:var(--accent-orange);color:var(--text-primary, #1f2937)}.action-button:active{background-color:var(--hover-bg, #f3f4f6)}.monthly-calendar{background-color:var(--card-background);border:1px solid var(--border-primary, #e5e7eb);border-radius:12px;overflow:hidden;width:100%;min-width:0}.calendar-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:var(--card-background);border-bottom:1px solid var(--border-primary, #e5e7eb)}.calendar-title{font-size:18px;font-weight:600;color:var(--text-primary, #1f2937);margin:0}.calendar-nav{display:flex;gap:8px}.calendar-nav-btn{padding:8px;border:none;background-color:transparent;color:var(--text-secondary, #6b7280);border-radius:6px;cursor:pointer;transition:all .2s}.calendar-nav-btn:hover{background-color:var(--hover-bg, #e5e7eb);color:var(--text-primary, #374151)}.monthly-calendar .calendar-grid{display:grid!important;grid-template-columns:repeat(7,1fr);grid-template-rows:auto repeat(6,1fr)}.calendar-day-header{padding:12px 8px;text-align:center;font-size:12px;font-weight:600;color:var(--text-secondary, #6b7280);background-color:var(--surface-secondary, #f9fafb);border-bottom:1px solid var(--border-primary, #e5e7eb)}.calendar-day{min-height:120px;padding:8px;border-right:1px solid var(--border-primary, #e5e7eb);border-bottom:1px solid var(--border-primary, #e5e7eb);background-color:var(--card-background)}.calendar-day:nth-child(7n){border-right:none}.calendar-day-number{font-size:14px;font-weight:600;color:var(--text-primary, #1f2937);margin-bottom:8px}.calendar-day.other-month .calendar-day-number{color:var(--text-tertiary, #d1d5db)}.calendar-day.today{background-color:var(--chip-orange-bg)}.calendar-day.today .calendar-day-number{color:var(--accent-orange, #FE6B34)}.calendar-day.non-working{background-color:var(--surface-secondary, #f3f4f6);opacity:.6;color:var(--text-tertiary, #9ca3af)}.calendar-day.non-working .calendar-day-number{color:var(--text-tertiary, #9ca3af)}.calendar-day.non-working .calendar-events{opacity:.5}.calendar-events{display:flex;flex-direction:column;gap:4px}.calendar-event{padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;transition:opacity .2s}.calendar-event:hover{opacity:.8}.calendar-event.session{background-color:var(--info-bg, #dbeafe);color:var(--info-text, #1e40af)}.calendar-event.task{background-color:var(--warning-bg, #fed7aa);color:var(--warning-text, #9a3412)}.calendar-event.meeting{background-color:var(--success-bg, #d1fae5);color:var(--success-text, #065f46)}.calendar-event.appointment{background-color:var(--info-bg, #e0e7ff);border-left:3px solid var(--info-color, #4f46e5);color:var(--info-text, #3730a3)}.calendar-event.timeblock{background-color:var(--error-bg, #fee2e2);border-left:3px solid var(--error-color, #dc2626);color:var(--error-text, #991b1b)}.calendar-event.timeblock.busy{background-color:var(--warning-bg, #fef3c7);border-left-color:var(--warning-color, #f59e0b);color:var(--warning-text, #92400e)}.calendar-event.timeblock.unavailable{background-color:var(--error-bg, #fee2e2);border-left-color:var(--error-color, #dc2626);color:var(--error-text, #991b1b)}.event-time{font-size:11px;font-weight:600}.event-title{font-size:12px;margin-top:2px}.event-subtitle{font-size:12px;opacity:.8;font-style:italic;margin-top:2px}@media(max-width:1024px){.dashboard-content{grid-template-columns:1fr}.dashboard-sidebar{order:-1}}@media(max-width:768px){.dashboard-stats{grid-template-columns:repeat(2,1fr)}.dashboard-header{flex-direction:column;align-items:flex-start;gap:16px}.monthly-calendar .calendar-grid{grid-template-columns:repeat(7,minmax(50px,1fr));overflow-x:auto}.calendar-day{min-height:80px;padding:4px}}@media(max-width:480px){.dashboard-stats{grid-template-columns:1fr}.monthly-calendar .calendar-grid{grid-template-columns:repeat(7,minmax(45px,1fr));overflow-x:auto}.calendar-day{min-height:70px;padding:2px}.calendar-day-number{font-size:12px}.calendar-event{font-size:12px;padding:2px 4px}}.upload-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.upload-modal{background:var(--card-background);border-radius:12px;width:90%;max-width:560px;max-height:80vh;overflow-y:auto;box-shadow:0 8px 32px #0000004d}.upload-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.upload-modal-header h3{margin:0;color:var(--text-primary, #1f2937);font-size:18px}.upload-modal-close{background:none;border:none;font-size:24px;color:var(--text-secondary, #6b7280);cursor:pointer;padding:0 4px;line-height:1;transition:color .2s ease}.upload-modal-close:hover{color:var(--text-primary, #1f2937)}.upload-modal-body{padding:24px}.session-media-uploader{width:100%}.media-upload-dropzone{padding:32px;text-align:center;cursor:pointer;transition:all .2s ease;background:var(--input-bg);border:2px dashed var(--text-tertiary);border-radius:10px}.media-upload-dropzone:hover:not(.disabled){background:#f4a26114;border-color:var(--accent-orange-hover)}.media-upload-dropzone.drag-over{background:#f4a2611f;border-color:var(--accent-orange-hover);transform:scale(1.02)}.media-upload-dropzone.disabled{opacity:.5;cursor:not-allowed;background:#1e1730;border-color:var(--card-border)}.media-upload-input{display:none}.media-upload-content{display:flex;flex-direction:column;align-items:center;gap:16px}.media-upload-icon{color:#4a5568}.media-upload-text{display:flex;flex-direction:column;gap:4px}.media-upload-primary{font-size:16px;font-weight:500;color:#2d3748;margin:0}.media-upload-secondary{font-size:14px;color:#718096;margin:0}.media-upload-limit{font-size:13px;color:#a0aec0;margin:4px 0 0;font-weight:500}.media-upload-progress{margin-top:16px;display:flex;flex-direction:column;gap:8px}.upload-item{display:flex;align-items:center;gap:12px;padding:12px;background-color:#fff;border:1px solid #e2e8f0;border-radius:6px}.upload-info{flex:1;min-width:0}.upload-name{font-size:14px;font-weight:500;color:#2d3748;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.upload-size{font-size:13px;color:#718096;margin-top:2px}.upload-status{flex-shrink:0;width:100px}.upload-progress-bar{width:100%;height:4px;background-color:#e2e8f0;border-radius:2px;overflow:hidden}.upload-progress-fill{height:100%;background-color:#4299e1;transition:width .3s ease}.upload-success{color:#48bb78;display:flex;justify-content:center}.upload-error{color:#f56565;display:flex;justify-content:center}.upload-remove{flex-shrink:0;background:none;border:none;padding:4px;cursor:pointer;color:#a0aec0;transition:color .2s ease;display:flex;align-items:center;justify-content:center}.upload-remove:hover{color:#f56565}.session-media-gallery{width:100%}.media-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px;margin-top:16px}.media-gallery-item{position:relative;aspect-ratio:1;border-radius:8px;overflow:hidden;background-color:#f7fafc;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;border:1px solid #e2e8f0}.media-gallery-item.loading{cursor:default}.media-gallery-item.loading:hover{transform:none;box-shadow:none}.media-gallery-skeleton{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-color:#f7fafc}.skeleton-loader{width:100%;height:100%;background:linear-gradient(90deg,#f0f0f0,#e0e0e0 20%,#f0f0f0 40% 100%);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.media-gallery-item:hover{transform:scale(1.05);box-shadow:0 4px 12px #00000026}.media-gallery-thumbnail{width:100%;height:100%;object-fit:cover}.media-gallery-video-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;position:relative}.media-gallery-video-icon{color:#ffffff4d;position:absolute}.media-gallery-video-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:48px;height:48px;background-color:#0009;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;pointer-events:none}.media-gallery-controls{position:absolute;top:8px;right:8px;display:flex;gap:4px;opacity:0;transition:opacity .2s ease}.media-gallery-item:hover .media-gallery-controls{opacity:1}.media-control-btn{width:32px;height:32px;border-radius:4px;border:none;background-color:#ffffffe6;color:#2d3748;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;box-shadow:0 2px 4px #0000001a}.media-control-btn:hover{background-color:#fff;transform:scale(1.1)}.media-control-btn.delete:hover{background-color:#fed7d7;color:#c53030}.media-gallery-empty{text-align:center;padding:48px 24px;color:#a0aec0}.media-gallery-empty-icon{margin-bottom:16px;color:#cbd5e0}.media-gallery-empty p{margin:0;font-size:14px}.media-lightbox-modal{position:fixed;inset:0;background-color:#000000e6;z-index:9999;display:flex;align-items:center;justify-content:center;padding:24px;animation:fadeIn .2s ease}.media-lightbox-content{max-width:90vw;max-height:90vh;display:flex;flex-direction:column;gap:16px}.media-lightbox-header{display:flex;justify-content:space-between;align-items:center;color:#fff}.media-lightbox-title{font-size:18px;font-weight:500;margin:0}.media-lightbox-close{background:none;border:none;color:#fff;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;transition:opacity .2s ease}.media-lightbox-close:hover{opacity:.7}.media-lightbox-body{display:flex;align-items:center;justify-content:center;max-height:calc(90vh - 100px)}.media-lightbox-image{max-width:100%;max-height:100%;object-fit:contain;border-radius:4px}.media-lightbox-video{max-width:100%;max-height:100%;border-radius:4px}.media-lightbox-footer{display:flex;justify-content:space-between;align-items:center;color:#fff;font-size:14px}.media-lightbox-info{display:flex;gap:12px;align-items:center}.media-lightbox-actions{display:flex;gap:8px}.media-lightbox-btn{padding:8px 16px;border-radius:4px;border:1px solid rgba(255,255,255,.3);background-color:#ffffff1a;color:#fff;cursor:pointer;font-size:14px;transition:all .2s ease;display:flex;align-items:center;gap:8px}.media-lightbox-btn:hover{background-color:#fff3}.media-lightbox-btn.delete{border-color:#f5656580;background-color:#f565651a}.media-lightbox-btn.delete:hover{background-color:#f5656533}.delete-confirmation-overlay{position:fixed;inset:0;background-color:#00000080;z-index:10000;display:flex;align-items:center;justify-content:center;padding:24px}.delete-confirmation-dialog{background-color:#fff;border-radius:8px;padding:24px;max-width:min(100%,400px);width:100%;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.delete-confirmation-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.delete-confirmation-icon{color:#f56565}.delete-confirmation-title{font-size:18px;font-weight:600;color:#2d3748;margin:0}.delete-confirmation-message{color:#4a5568;font-size:14px;margin-bottom:24px;line-height:1.5}.delete-confirmation-actions{display:flex;gap:12px;justify-content:flex-end}.delete-confirmation-btn{padding:8px 16px;border-radius:6px;border:1px solid #e2e8f0;background-color:#fff;color:#2d3748;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease}.delete-confirmation-btn:hover{background-color:#f7fafc}.delete-confirmation-btn.confirm{background-color:#f56565;color:#fff;border-color:#f56565}.delete-confirmation-btn.confirm:hover{background-color:#e53e3e}@media(max-width:768px){.media-gallery-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px}.media-upload-dropzone{padding:24px}.media-lightbox-content{max-width:95vw;max-height:95vh}.media-lightbox-footer{flex-direction:column;gap:12px;align-items:flex-start}}.branding-settings .card-description{color:var(--text-secondary);font-size:14px;margin-top:4px}.branding-section{margin-bottom:20px;background:var(--card-background);padding:1.5rem;border-radius:16px}.branding-section h4{font-size:14px;font-weight:600;margin-bottom:12px;color:var(--text-primary);margin-top:0}.section-description{display:none}.logo-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}.radio-option{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;cursor:pointer;transition:all .2s}.radio-option:has(input:checked){border-color:var(--accent-orange);background-color:var(--chip-orange-bg, rgba(244, 162, 97, .06))}.radio-option:hover{border-color:var(--accent-orange);background-color:var(--hover-bg)}.radio-option input[type=radio]{width:16px;height:16px;flex-shrink:0;accent-color:var(--accent-orange)}.radio-option input[type=radio]:checked+.radio-label{color:var(--accent-orange)}.radio-label{display:flex;flex-direction:column;gap:1px}.radio-title{font-weight:500;font-size:.9rem;color:var(--text-primary)}.radio-description{font-size:.78rem;color:var(--text-secondary)}.text-logo-preview,.image-logo-section{margin-top:16px}.form-label{display:block;font-size:14px;font-weight:500;color:var(--text-primary);margin-bottom:8px}.form-input{width:100%;padding:10px 12px;font-size:14px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;background-color:var(--input-bg);color:var(--text-primary);transition:border-color .2s,box-shadow .2s}.form-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-color-alpha, rgba(254, 107, 52, .15))}.form-input::placeholder{color:var(--text-tertiary)}.branding-settings .preview-box{background-color:var(--surface-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;padding:16px 24px;display:flex;align-items:center;min-height:64px}.logo-text-preview{font-size:20px;font-weight:700;color:var(--text-primary)}.help-text{font-size:13px;color:var(--text-secondary);margin-top:8px}.logo-preview-container{display:flex;flex-direction:column;gap:12px}.logo-preview-image{max-height:48px;width:auto;object-fit:contain}.logo-actions{display:flex;gap:8px}.logo-upload-area{display:flex;flex-direction:column;align-items:center;padding:32px;border:2px dashed var(--border-primary, #e5e7eb);border-radius:8px;transition:all .2s}.logo-upload-area:hover{border-color:var(--accent-orange);background-color:var(--hover-bg)}.logo-upload-area .upload-button{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 24px;border:none;background:none;color:var(--accent-orange);cursor:pointer;font-size:14px;font-weight:500}.logo-upload-area .upload-button:hover{color:var(--accent-orange-hover)}.logo-upload-area .upload-button:disabled{opacity:.5;cursor:not-allowed}.upload-hint{font-size:13px;color:var(--text-secondary);text-align:center;margin-top:8px;line-height:1.5}.branding-preview{margin-top:20px;padding-top:16px;border-top:1px solid var(--border-primary, #e5e7eb)}.branding-preview h4{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px}.header-preview{border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;overflow:hidden}.preview-header{padding:16px 24px;display:flex;align-items:center;min-height:64px}.preview-logo-image{max-height:32px;width:auto;object-fit:contain}.preview-logo-text{font-size:20px;font-weight:700;color:var(--text-primary)}.form-actions{margin-top:20px;padding-top:16px;border-top:1px solid var(--border-primary, #e5e7eb);display:flex;justify-content:flex-end}.alert{padding:12px 16px;border-radius:8px;margin-bottom:16px;font-size:14px}.alert-error{background-color:var(--error-bg, #fef2f2);color:var(--error-color, #dc2626);border:1px solid var(--error-border, #fecaca)}.alert-success{background-color:var(--success-bg, #f0fdf4);color:var(--success-color, #16a34a);border:1px solid var(--success-border, #bbf7d0)}.loading-spinner{width:20px;height:20px;border:2px solid var(--border-primary, #e5e7eb);border-top-color:var(--accent-orange);border-radius:50%;animation:spin 1s linear infinite}.btn-outline-danger{background:none;border:1px solid var(--error-color, #dc2626);color:var(--error-color, #dc2626);padding:8px 16px;border-radius:6px;font-size:14px;cursor:pointer;transition:all .2s}.btn-outline-danger:hover{background-color:var(--error-color, #dc2626);color:var(--text-inverse)}.btn-outline-danger:disabled{opacity:.5;cursor:not-allowed}.quota-status{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 4px #0000001a;margin-bottom:24px}.quota-status.loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:48px;color:#6c757d}.quota-status.error{padding:24px}.quota-status-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e9ecef}.quota-status-header h3{margin:0;color:#212529}.subscription-tier{background:#007bff;color:#fff;padding:4px 12px;border-radius:16px;font-size:.875rem;font-weight:500}.quota-warnings{margin-bottom:24px}.pending-downgrade-notice{background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;padding:16px;margin-bottom:24px}.pending-downgrade-notice .notice-header h5{margin:0 0 8px;color:#856404;font-size:1rem}.pending-downgrade-notice .notice-content p{margin:0 0 8px;color:#856404}.pending-downgrade-notice .notice-subtext{font-size:.875rem;color:#6c757d}.quota-warning{display:flex;align-items:flex-start;gap:12px;padding:16px;border-radius:6px;margin-bottom:12px}.quota-warning.warning{background:#fff3cd;border:1px solid #ffeaa7;color:#856404}.quota-warning.critical{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.warning-icon{font-size:1.25rem;flex-shrink:0}.warning-content{flex:1}.warning-message{margin-bottom:8px}.quota-items{display:flex;flex-direction:column;gap:20px}.quota-item{padding:16px;border:1px solid #e9ecef;border-radius:6px;background:#f8f9fa}.quota-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.quota-title{font-weight:600;color:#495057}.quota-values{font-size:.875rem;color:#6c757d}.quota-progress{width:100%;height:8px;background:#e9ecef;border-radius:4px;overflow:hidden;margin-bottom:4px}.quota-progress-bar{height:100%;transition:width .3s ease;border-radius:4px}.quota-percentage{font-size:.75rem;color:#6c757d;text-align:right}.quota-footer{display:flex;justify-content:space-between;align-items:center;margin-top:20px;padding-top:16px;border-top:1px solid #e9ecef}.subscription-manager{border-radius:8px;padding:24px;width:100%;max-width:100%;box-sizing:border-box}.subscription-manager.loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:48px;color:var(--text-secondary);min-height:300px}.subscription-manager.error{padding:24px}.current-subscription{margin-bottom:24px}.subscription-info{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;padding:20px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:8px;border:1px solid #e9ecef}.tier-info h4{margin:0 0 8px;color:#212529;font-size:1.25rem}.price{font-size:1.75rem;font-weight:700;color:#007bff}.status-info{display:flex;flex-direction:column;gap:8px;align-items:flex-end}.billing-info{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}.billing-item{display:flex;justify-content:space-between;padding:16px;background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px}.billing-item .label{color:#6c757d;font-size:.875rem}.billing-item .value{font-weight:600;color:#212529}.subscription-features{padding:20px;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.subscription-features h5{margin:0 0 16px;color:#495057;font-size:1rem}.subscription-features ul{margin:0;padding-left:20px;color:#495057}.subscription-features li{margin-bottom:8px;line-height:1.5}.subscription-features li::marker{color:#28a745}.badge{padding:6px 12px;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.badge-success{background:#d4edda;color:#155724}.badge-info{background:#d1ecf1;color:#0c5460}.badge-danger{background:#f8d7da;color:#721c24}.badge-secondary{background:#e2e3e5;color:#383d41}.badge-sm{padding:3px 8px;font-size:.65rem;border-radius:12px}.badge-detail{font-weight:400;margin-left:4px;opacity:.9}.subscription-actions{padding-top:24px;border-radius:12px;box-shadow:0 1px 3px #0000004d}.subscription-actions h5,.subscription-actions h6{color:#495057;margin-bottom:16px}.tier-options{margin-bottom:32px}.tier-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-top:16px}.tier-card{border:1px solid #e9ecef;border-radius:6px;padding:20px;background:#fff;transition:all .2s ease}.tier-card:hover{border-color:#007bff;box-shadow:0 2px 8px #007bff1a}.tier-card.current{border-color:#28a745;background:#f8fff9}.tier-header{margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e9ecef}.tier-header h6{margin:0 0 8px;color:#212529}.tier-price{font-size:1.25rem;font-weight:600;color:#007bff}.tier-features ul{margin:0;padding-left:16px;color:#6c757d;font-size:.875rem}.tier-features li{margin-bottom:4px}.tier-actions{margin-top:16px;text-align:center}.current-plan{color:#28a745;font-weight:500;font-size:.875rem}.danger-zone{padding:20px;background:var(--card-background);border-radius:6px;margin-bottom:24px}.danger-zone h4{margin:0 0 1rem;font-size:1.1rem}.danger-zone p{margin-bottom:16px;font-size:.875rem}.reactivate-section{padding:20px;background:#f0fff4;border:1px solid #9ae6b4;border-radius:6px}.reactivate-section h6{color:#22543d;margin-bottom:8px}.reactivate-section p{color:#276749;margin-bottom:16px;font-size:.875rem}.no-subscription{text-align:center;padding:48px 24px;color:#6c757d}.no-subscription h3{color:#495057;margin-bottom:16px}.error-message{display:flex;align-items:center;justify-content:space-between;padding:16px;background:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#721c24}.btn-link{background:transparent;border-color:transparent;color:var(--accent-orange, #f4a261);text-decoration:underline}.btn-link:hover:not(:disabled){color:var(--accent-orange-hover, #e79552)}.btn-sm{padding:4px 8px;font-size:.75rem}.billing-dashboard{max-width:900px;margin:0 auto;padding:0}.billing-header{margin-bottom:24px}.billing-header h2{margin:0;color:#212529}.billing-tabs{display:flex;border-bottom:1px solid var(--border-primary, #e5e7eb);margin-bottom:24px}.tab-button{background:none;border:none;padding:12px 24px;cursor:pointer;font-size:.875rem;font-weight:500;color:var(--text-secondary);border-bottom:2px solid transparent;transition:all .2s ease}.tab-button:hover{color:var(--accent-orange)}.tab-button.active{color:var(--accent-orange);border-bottom-color:var(--accent-orange)}.billing-content{min-height:400px;width:100%;max-width:100%}.billing-content>*{width:100%;max-width:100%;box-sizing:border-box}.billing-overview{display:flex;flex-direction:column;gap:24px;width:100%;max-width:100%;box-sizing:border-box}.overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}.overview-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;min-height:280px}.overview-section{width:100%}.recent-events{padding:24px}.recent-events h4{margin:0 0 20px;color:#495057}.event-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #f8f9fa}.event-item:last-child{border-bottom:none}.event-info{display:flex;flex-direction:column;gap:4px}.event-type{font-weight:500;color:#495057;font-size:.875rem}.event-date{font-size:.75rem;color:#6c757d}.event-details{display:flex;align-items:center;gap:8px}.event-amount{font-weight:600;color:#28a745;font-size:.875rem}.no-events{text-align:center;color:#6c757d;font-style:italic;padding:24px 0}.billing-history{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 4px #0000001a}.history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e9ecef}.history-header h3{margin:0;color:#212529}.events-list{display:flex;flex-direction:column;gap:16px}.event-card{border:1px solid #e9ecef;border-radius:6px;padding:20px;background:#f8f9fa}.event-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.event-title{display:flex;flex-direction:column;gap:4px}.event-title h5{margin:0;color:#495057}.event-id{font-size:.75rem;color:#6c757d;font-family:monospace}.event-meta{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.event-amount-large{font-size:1.25rem;font-weight:600;color:#28a745;margin-bottom:16px}.event-metadata{border-top:1px solid #e9ecef;padding-top:16px}.event-metadata h6{margin:0 0 12px;color:#495057;font-size:.875rem}.metadata-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}.metadata-item{display:flex;gap:8px;font-size:.875rem}.metadata-key{color:#6c757d;font-weight:500}.metadata-value{color:#495057;word-break:break-word}.no-events-large{text-align:center;padding:48px 24px;color:#6c757d}.no-events-large h4{color:#495057;margin-bottom:8px}@media(max-width:768px){.billing-dashboard{padding:16px}.billing-tabs{overflow-x:auto;white-space:nowrap}.tab-button{flex-shrink:0;padding:12px 16px}.overview-grid{grid-template-columns:1fr}.quota-status,.subscription-manager{padding:16px}.subscription-info{flex-direction:column;gap:16px}.status-info{align-items:flex-start}.billing-info,.tier-grid{grid-template-columns:1fr}.quota-header{flex-direction:column;align-items:flex-start;gap:8px}.event-header{flex-direction:column;gap:12px}.event-meta{align-items:flex-start}.metadata-grid{grid-template-columns:1fr}}.subscription-summary-card{padding:24px}.subscription-summary-card h4{margin:0 0 20px;color:#495057}.subscription-details{display:flex;flex-direction:column;gap:12px}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #f8f9fa}.detail-row .label{color:#6c757d;font-size:.875rem}.detail-row .value{font-weight:500;color:#212529}.detail-row .value.amount{color:#007bff;font-size:1.125rem}.usage-metrics-card{padding:24px}.usage-metrics-card h4{margin:0 0 20px;color:var(--text-primary, #1f2937)}.usage-metrics-card .metrics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.usage-metrics-card .metric-item{padding:12px;background:var(--surface-secondary, #f9fafb);border-radius:6px}.usage-metrics-card .metric-label{font-size:.75rem;color:var(--text-secondary, #6b7280);text-transform:uppercase;font-weight:600;margin-bottom:4px}.usage-metrics-card .metric-value{font-size:1rem;font-weight:600;color:var(--text-primary, #1f2937);margin-bottom:8px;white-space:nowrap}.usage-metrics-card .metric-bar{width:100%;height:6px;background:var(--surface-secondary, #f9fafb);border-radius:3px;overflow:hidden}.usage-metrics-card .metric-bar-fill{height:100%;background:var(--accent-orange, #f97316);transition:width .3s ease}@media(max-width:768px){.usage-metrics-card .metrics-grid{grid-template-columns:1fr}}.invoices-section,.invoices-full{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 4px #0000001a;width:100%;max-width:100%;box-sizing:border-box}.invoices-section.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:200px}.invoices-section h3,.invoices-full h3{margin:0 0 20px;color:#495057}.no-invoices{text-align:center;color:#6c757d;padding:24px 0}.tier-proration{margin-top:12px;padding:12px;background:#f8f9fa;border-radius:4px;border:1px solid #e9ecef}.proration-info{margin-bottom:8px}.proration-info small{color:#6c757d;font-size:.75rem}.cancel-confirm{margin-top:16px;padding:16px;background:#fff;border:1px solid #e9ecef;border-radius:6px}.warning-text{color:#856404;margin-bottom:16px;font-size:.875rem}.cancel-actions{display:flex;gap:12px}.payment-method-manager{max-width:1200px;margin:0 auto}.payment-methods-section{background:var(--card-background, #ffffff);border:1px solid transparent;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000004d;margin-bottom:24px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.section-header h3{margin:0;color:var(--text-primary, #1f2937)}.no-payment-methods{text-align:center;padding:48px 24px;color:var(--text-secondary, #6b7280)}.no-payment-methods p{margin:8px 0}.payment-methods-list{display:flex;flex-direction:column;gap:12px}.payment-method-card{display:flex;justify-content:space-between;align-items:center;padding:20px;border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;background:var(--surface-secondary, #f9fafb);transition:all .2s ease}.payment-method-card:hover{border-color:var(--accent-orange-hover, #e55a2b)}.payment-method-card.default{border-color:var(--success-border, #bbf7d0);background:var(--success-bg, #f0fdf4)}.method-info{display:flex;align-items:center;gap:16px}.method-icon{font-size:2rem}.method-details{display:flex;flex-direction:column;gap:4px}.method-type{font-weight:600;color:var(--text-primary, #1f2937)}.method-expiry{font-size:.875rem;color:var(--text-secondary, #6b7280)}.method-actions{display:flex;gap:12px}.text-danger{color:var(--error-color, #dc3545)!important}.add-payment-modal{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--card-background, #ffffff);border-radius:12px;width:90%;max-width:500px;box-shadow:0 4px 16px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.modal-header h4{margin:0;color:var(--text-primary, #1f2937)}.close-button{background:none;border:none;font-size:1.5rem;color:var(--text-secondary, #6b7280);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s ease}.close-button:hover:not(:disabled){background:var(--surface-hover, #f3f4f6);color:var(--text-primary, #1f2937)}.modal-body{padding:24px}.stripe-placeholder{margin-top:16px}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:8px;color:var(--text-secondary, #6b7280);font-weight:500;font-size:.875rem}.form-control{width:100%;padding:10px 12px;border:1px solid var(--input-border, #D4CDE0);border-radius:4px;font-size:.875rem;background:var(--input-bg, white);color:var(--text-primary, #46375B);transition:border-color .2s ease}.form-control:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.form-control:disabled{background:var(--input-disabled-bg, #F8F6FA);cursor:not-allowed;color:var(--text-secondary, #5A4A72)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid var(--border-primary, #e5e7eb)}.payment-history-section{background:var(--card-background, #ffffff);border:1px solid transparent;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000004d}.payment-history-section h3{margin:0 0 20px;color:var(--text-primary, #1f2937)}.no-history{text-align:center;color:var(--text-secondary, #6b7280);padding:24px 0}.payment-history-list{overflow-x:auto}.payment-history-table{width:100%;border-collapse:collapse}.payment-history-table thead{background:var(--surface-secondary, #f9fafb)}.payment-history-table th{padding:12px;text-align:left;font-weight:600;color:var(--text-primary, #1f2937);font-size:.875rem;border-bottom:2px solid var(--border-primary, #e5e7eb)}.payment-history-table td{padding:12px;border-bottom:1px solid var(--border-primary, #e5e7eb);color:var(--text-secondary, #6b7280);font-size:.875rem}.payment-history-table tbody tr:hover{background:var(--table-row-hover)}@media(max-width:768px){.overview-section{margin-top:24px}.payment-method-card{flex-direction:column;gap:16px;align-items:flex-start}.method-actions{width:100%;justify-content:flex-start}.modal-content{width:95%;margin:16px}.form-row{grid-template-columns:1fr}.payment-history-table{font-size:.75rem}.payment-history-table th,.payment-history-table td{padding:8px}.cancel-actions{flex-direction:column}.cancel-actions .btn{width:100%}}.subscription-modal{max-width:800px;width:95%}.subscription-modal .modal-body{max-height:70vh;overflow-y:auto}.plan-selection h3,.additional-trainers h3,.addons-section h3,.subscription-summary h3{margin:0 0 16px;color:#212529;font-size:1.1rem;font-weight:600}.plans-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.plan-card{border:2px solid #e9ecef;border-radius:8px;padding:16px;cursor:pointer;transition:all .2s ease;position:relative}.plan-card:hover{border-color:#007bff}.plan-card.selected{border-color:#007bff;background-color:#f8f9ff}.plan-card.current{border-color:#28a745}.plan-card h4{margin:0 0 8px;color:#212529}.plan-price{font-size:1.5rem;font-weight:700;color:#007bff;margin-bottom:12px}.current-badge{position:absolute;top:8px;right:8px;background:#28a745;color:#fff;padding:4px 8px;border-radius:4px;font-size:.75rem;font-weight:500}.plan-features{list-style:none;padding:0;margin:0}.plan-features li{padding:4px 0;color:#6c757d;font-size:.9rem}.plan-features li:before{content:"✓ ";color:#28a745;font-weight:700}.additional-trainers{margin-bottom:24px}.additional-trainers p{margin:0 0 12px;color:#6c757d}.additional-trainers input{width:100px;padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:1rem}.addons-section{margin-bottom:24px}.addon-option{display:flex;align-items:center;padding:12px;border:1px solid #e9ecef;border-radius:4px;margin-bottom:8px;cursor:pointer;transition:all .2s ease}.addon-option:hover{background-color:#f8f9fa}.addon-option input[type=checkbox]{margin-right:12px}.addon-info{flex:1}.addon-name{font-weight:500;color:#212529;display:block}.addon-description{color:#6c757d;font-size:.9rem}.addon-price{font-weight:600;color:#007bff}.subscription-summary{background:#f8f9fa;padding:16px;border-radius:4px;margin-bottom:16px}.summary-line{display:flex;justify-content:space-between;margin-bottom:8px}.summary-total{display:flex;justify-content:space-between;font-weight:700;font-size:1.1rem;border-top:1px solid #dee2e6;padding-top:8px;margin-top:8px}.cancel-warning{margin-bottom:16px}.delete-data-option{margin:16px 0;padding:12px;background:#fff3cd;border:1px solid #ffeaa7;border-radius:4px}.delete-warning{color:#856404;font-weight:500;margin-left:8px}.warning-text{color:#dc3545;font-weight:500;margin:8px 0 0 24px;font-size:.9rem}.modal-footer{gap:12px}.modal-footer .btn-primary{background-color:#007bff;color:#fff;border:1px solid #007bff}.subscription-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.subscription-header h4{margin:0}.subscription-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.subscription-modal-container{background:#fff;border-radius:12px;width:100%;max-width:700px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 60px #0003}.subscription-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e9ecef;background:#f8f9fa}.subscription-modal-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#212529}.subscription-modal-body{padding:24px;overflow-y:auto;flex:1}.modal-section{margin-bottom:28px}.modal-section:last-child{margin-bottom:0}.modal-section h4{margin:0 0 12px;font-size:1rem;font-weight:600;color:#212529}.section-description{margin:0 0 16px;font-size:.875rem;color:#6c757d}.plan-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.plan-card-option{border:2px solid #e9ecef;border-radius:12px;padding:20px;cursor:pointer;transition:all .2s;position:relative;background:#fff}.plan-card-option:hover{border-color:#007bff;box-shadow:0 4px 12px #007bff1a}.plan-card-option.selected{border-color:#007bff;background:#f8f9ff}.plan-card-option.current{border-color:#28a745}.plan-card-option.current.selected{border-color:#007bff}.current-plan-badge{position:absolute;top:-10px;right:12px;background:#28a745;color:#fff;padding:4px 10px;border-radius:12px;font-size:.7rem;font-weight:600;text-transform:uppercase}.plan-card-option h5{margin:0 0 8px;font-size:1rem;font-weight:600;color:#212529}.plan-card-price{font-size:1.5rem;font-weight:700;color:#007bff;margin-bottom:12px}.plan-card-price span{font-size:.875rem;font-weight:400;color:#6c757d}.plan-card-features{list-style:none;padding:0;margin:0}.plan-card-features li{padding:4px 0;font-size:.8rem;color:#495057}.plan-card-features li:before{content:"✓ ";color:#28a745;font-weight:700}.slider-control{display:flex;align-items:center;gap:20px}.slider{flex:1;-webkit-appearance:none;appearance:none;height:8px;background:#e9ecef;border-radius:4px;outline:none}.slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:24px;height:24px;background:#007bff;border-radius:50%;cursor:pointer;box-shadow:0 2px 6px #007bff4d;transition:transform .2s}.slider::-webkit-slider-thumb:hover{transform:scale(1.1)}.slider::-moz-range-thumb{width:24px;height:24px;background:#007bff;border-radius:50%;cursor:pointer;border:none;box-shadow:0 2px 6px #007bff4d}.slider-value{min-width:140px;text-align:right}.slider-value .value-number{font-size:1.25rem;font-weight:700;color:#212529}.slider-value .value-label{display:block;font-size:.75rem;color:#6c757d}.slider-cost{margin-top:8px;font-size:.875rem;font-weight:600;color:#007bff;text-align:right}.summary-section{background:#f8f9fa;border-radius:12px;padding:20px 20px 24px;margin-left:-24px;margin-right:-24px;margin-bottom:-24px}.summary-rows{display:flex;flex-direction:column;gap:8px}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;font-size:.9rem;color:#495057}.summary-row.total{border-top:2px solid #dee2e6;margin-top:8px;padding-top:16px;font-size:1.1rem;font-weight:700;color:#212529}.summary-row.total span:last-child{color:#007bff}.subscription-modal-footer{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-top:1px solid #e9ecef;background:#fff}.footer-actions{display:flex;gap:12px}.btn-text-danger{background:none;border:none;color:#dc3545;font-size:.875rem;cursor:pointer;padding:8px 12px;border-radius:6px;transition:all .2s}.btn-text-danger:hover:not(:disabled){background:#fff5f5}.btn-text-danger:disabled{opacity:.5;cursor:not-allowed}.btn-primary:disabled,.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.cancel-warning-box{display:flex;gap:16px;padding:20px;background:#fff3cd;border:1px solid #ffeaa7;border-radius:12px;margin-bottom:20px}.cancel-warning-box .warning-icon{font-size:2rem}.cancel-warning-box .warning-title{margin:0 0 8px;font-weight:600;color:#856404}.cancel-warning-box .warning-text{margin:0;color:#856404;font-size:.9rem}.delete-data-section{padding:16px;background:#f8f9fa;border-radius:8px}.delete-checkbox{display:flex;align-items:center;gap:12px;cursor:pointer;font-size:.9rem;color:#495057}.delete-checkbox input{width:18px;height:18px;cursor:pointer}.delete-warning-alert{margin-top:12px;padding:12px;background:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;color:#721c24;font-size:.85rem}.modal-error{margin-top:16px;padding:12px;background:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;color:#721c24;font-size:.875rem}@media(max-width:768px){.subscription-modal-container{max-height:95vh}.plan-cards{grid-template-columns:1fr}.slider-control{flex-direction:column;align-items:stretch}.slider-value{text-align:center;margin-top:12px}.subscription-modal-footer{flex-direction:column;gap:12px}.footer-actions{width:100%}.footer-actions button{flex:1}.btn-text-danger{order:1}}.feature-checkboxes{display:flex;flex-direction:column;gap:12px}.feature-checkbox-label{display:flex;align-items:flex-start;gap:12px;padding:16px;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;transition:all .2s;background:#fff}.feature-checkbox-label:hover{border-color:#007bff;background:#f8f9ff}.feature-checkbox-label input[type=checkbox]{width:20px;height:20px;margin-top:2px;cursor:pointer;flex-shrink:0}.feature-checkbox-label input[type=checkbox]:checked{accent-color:#007bff}.feature-info{flex:1}.feature-name{font-weight:600;color:#212529;margin-bottom:4px;font-size:.95rem}.feature-description{color:#6c757d;font-size:.85rem;margin-bottom:6px;line-height:1.4}.feature-price{font-weight:600;color:#007bff;font-size:.9rem}@media(max-width:768px){.feature-checkbox-label{padding:12px}.feature-name{font-size:.9rem}.feature-description{font-size:.8rem}.feature-price{font-size:.85rem}}.subscription-extras{margin-top:20px;padding:20px;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.subscription-extras h5{margin:0 0 16px;color:#495057;font-size:1rem}.extras-list{display:flex;flex-direction:column;gap:12px}.extra-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#fff;border-radius:6px;border:1px solid #e9ecef}.extra-info{display:flex;flex-direction:column;gap:4px}.extra-name{font-weight:500;color:#212529}.extra-quantity{font-size:.85rem;color:#6c757d}.extra-price{font-weight:600;color:#007bff}.extras-total{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding-top:16px;border-top:2px solid #dee2e6;font-weight:600;color:#212529}.extras-total span:last-child{color:#007bff;font-size:1.1rem}@media(max-width:768px){.extra-item{flex-direction:column;align-items:flex-start;gap:8px}.extra-price{align-self:flex-end}}.invoice-payment-modal{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.invoice-payment-modal .modal-content{background:#fff;border-radius:12px;width:100%;max-width:480px;box-shadow:0 20px 60px #0003}.invoice-payment-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e9ecef}.invoice-payment-modal .modal-header h4{margin:0;font-size:1.25rem;font-weight:600;color:#212529}.invoice-payment-modal .modal-body{padding:24px}.invoice-summary{background:#f8f9fa;border-radius:8px;padding:16px;margin-bottom:24px}.invoice-summary .summary-row{display:flex;justify-content:space-between;padding:8px 0;font-size:.9rem;color:#495057}.invoice-summary .summary-row.total{border-top:2px solid #dee2e6;margin-top:8px;padding-top:12px;font-size:1.1rem;font-weight:700;color:#212529}.invoice-summary .summary-row.total span:last-child{color:#007bff}.payment-form .form-group{margin-bottom:20px}.payment-form .form-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--text-secondary, #6b7280);font-size:.9rem}.card-element-wrapper{padding:12px 16px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;background:var(--input-bg, #ffffff);transition:border-color .2s ease}.card-element-wrapper:focus-within{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.checkbox-group{margin-bottom:20px}.checkbox-label{display:flex;align-items:flex-start;gap:10px;cursor:pointer;font-size:.9rem;color:#495057}.checkbox-label input[type=checkbox]{width:18px;height:18px;margin-top:2px;cursor:pointer;accent-color:var(--accent-orange, #f4a261)}.form-error{display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--error-bg, #fee2e2);border:1px solid var(--error-border, #fecaca);border-radius:8px;color:var(--error-text, #991b1b);margin-bottom:20px;font-size:.9rem}.form-error .error-icon{flex-shrink:0}.form-actions{display:flex;gap:12px;justify-content:flex-end}.form-security{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:20px;padding-top:16px;border-top:1px solid var(--border-primary, #E5E0EC);color:var(--text-secondary, #5A4A72);font-size:.85rem}.form-security .security-icon{font-size:1rem}.success-message{display:flex;align-items:center;gap:12px;padding:16px 20px;background:var(--success-bg, #f0fdf4);border:1px solid var(--success-border, #bbf7d0);border-radius:8px;color:var(--success-text, #166534);margin-bottom:20px;font-weight:500}.success-message .success-icon{width:24px;height:24px;background:#28a745;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0}@media(max-width:768px){.invoice-payment-modal .modal-content{max-width:100%;margin:16px}.form-actions{flex-direction:column}.form-actions .btn{width:100%}}.subscription-card-footer{margin-top:20px;padding-top:16px;border-top:1px solid var(--border-primary, #e5e7eb)}.subscription-card-footer .btn{width:100%}.download-btn{display:inline-flex;align-items:center;gap:6px}.download-btn svg{flex-shrink:0}.subscription-manager .subscription-actions>h5:first-child{display:none}.subscription-summary-card .subscription-header{display:block;margin-bottom:16px}.subscription-summary-card .subscription-header h4{margin:0}.stripe-connect-status{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 4px #0000001a;margin-bottom:24px}.stripe-connect-status.loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:48px;color:#6c757d;min-height:200px}.connect-status-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e9ecef}.connect-status-header h3{margin:0;color:#212529;font-size:1.25rem;font-weight:600}.connect-status-content{text-align:center;padding:24px 0}.connect-status-content .status-icon.success{color:#28a745;background:#d4edda;width:64px;height:64px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:2rem}.connect-status-content .status-icon.warning{color:#856404}.connect-status-content h4{margin:0 0 12px;color:#212529;font-size:1.25rem;font-weight:600}.connect-status-content p{color:#6c757d;max-width:500px;margin:0 auto 24px;line-height:1.6}.connect-status-content.not-connected{background:#f8f9fa;border-radius:8px;padding:32px}.connect-status-content.pending{background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;padding:32px}.connect-status-content.active{background:#d4edda;border:1px solid #c3e6cb;border-radius:8px;padding:32px}.connect-status-content.warning{background:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;padding:32px}.connect-capabilities{display:flex;justify-content:center;gap:32px;margin:24px 0;padding:16px;background:#ffffffb3;border-radius:8px}.capability-indicator{width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:700}.capability-label{font-size:.875rem;font-weight:500;color:#495057}.connect-requirements{text-align:left;margin:24px 0;padding:16px;background:#ffffffe6;border-radius:8px}.requirements-section{margin-bottom:16px}.requirements-section h5{margin:0 0 8px;font-size:.9rem;font-weight:600}.requirements-description{font-size:.8rem;color:#6c757d;margin:0 0 12px}.requirements-list li{font-size:.875rem;color:#495057;margin-bottom:4px;line-height:1.5}.connect-actions{display:flex;justify-content:center;gap:12px;margin-top:24px}.connect-actions .btn{min-width:160px}@media(max-width:768px){.stripe-connect-status{padding:16px}.connect-status-header{flex-direction:column;align-items:flex-start;gap:12px}.connect-status-content{padding:16px}.connect-capabilities{flex-direction:column;gap:12px}.connect-actions{flex-direction:column}.connect-actions .btn{width:100%}}.stripe-onboarding .onboarding-error{margin-bottom:20px}.stripe-onboarding .error-message{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;color:#721c24}.stripe-onboarding .error-icon{font-size:1.25rem;flex-shrink:0}.stripe-onboarding .error-text{flex:1}.stripe-onboarding .onboarding-info h4{margin:0 0 12px;color:#212529;font-size:1.5rem}.stripe-onboarding .onboarding-info p{color:#6c757d;margin-bottom:20px;line-height:1.6}.stripe-onboarding .onboarding-benefits li{padding:8px 0;color:#495057;font-size:.95rem}.stripe-onboarding .onboarding-benefits li:before{color:#28a745;font-weight:700}.stripe-onboarding .onboarding-actions{display:flex;flex-direction:column;gap:12px;align-items:center;margin-bottom:24px}.stripe-onboarding .btn-lg{padding:14px 32px;font-size:1rem;font-weight:600}.stripe-onboarding .btn-primary:hover:not(:disabled){background:#5046e5;border-color:#5046e5}.stripe-onboarding .btn-primary:disabled{background:#a5a1ff;border-color:#a5a1ff}.stripe-onboarding .onboarding-footer{padding-top:20px;border-top:1px solid #e9ecef;width:100%;max-width:500px}.stripe-onboarding .security-note{display:flex;align-items:center;justify-content:center;gap:8px;color:#6c757d;font-size:.875rem;margin:0}.stripe-onboarding .lock-icon{font-size:1rem}.connect-status-content{text-align:center;padding:20px 0}.connect-status-content .status-icon{font-size:3rem;margin-bottom:16px}.connect-status-content h4{margin:0 0 12px;color:#212529}.connect-status-content p{color:#6c757d;margin-bottom:20px;max-width:500px;margin-left:auto;margin-right:auto}.connect-capabilities{display:flex;justify-content:center;gap:24px;margin:20px 0}.capability-indicator{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:700}.capability-label{color:#495057;font-size:.875rem}.connect-requirements{text-align:left;max-width:500px;margin:20px auto}.requirements-section h5{margin:0 0 8px;font-size:.95rem}.requirements-past-due h5{color:#721c24}.requirements-currently-due h5{color:#856404}.requirements-description{font-size:.875rem;margin-bottom:12px}.requirements-list{margin:0;padding-left:20px}.requirements-list li{margin-bottom:4px;font-size:.875rem}.connect-actions{display:flex;justify-content:center;gap:12px;margin-top:20px}@media(max-width:768px){.stripe-onboarding,.stripe-connect-status{padding:16px}.stripe-onboarding .onboarding-info h4{font-size:1.25rem}.stripe-onboarding .btn-lg{padding:12px 24px;font-size:.95rem;width:100%}.stripe-onboarding .btn-secondary{width:100%}.connect-capabilities{flex-direction:column;gap:12px}.connect-actions{flex-direction:column}.connect-actions .btn{width:100%}.connect-status-header{flex-direction:column;gap:12px;align-items:flex-start}}.stripe-onboarding{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 4px #0000001a}.stripe-onboarding .onboarding-error{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;margin-bottom:20px}.stripe-onboarding .error-content{display:flex;align-items:center;gap:10px}.stripe-onboarding .error-icon{font-size:1.25rem}.stripe-onboarding .error-text{color:#721c24;font-size:.875rem}.stripe-onboarding .onboarding-content{display:flex;flex-direction:column;align-items:center;text-align:center}.stripe-onboarding .onboarding-info{max-width:500px;margin-bottom:24px}.stripe-onboarding .onboarding-icon{font-size:3rem;margin-bottom:16px}.stripe-onboarding .onboarding-info h4{margin:0 0 12px;color:#212529;font-size:1.25rem}.stripe-onboarding .onboarding-info p{color:#6c757d;margin:0 0 20px;line-height:1.6}.stripe-onboarding .onboarding-benefits{list-style:none;padding:0;margin:0;text-align:left;display:inline-block}.stripe-onboarding .onboarding-benefits li{padding:6px 0;color:#495057;font-size:.9rem}.stripe-onboarding .onboarding-benefits li:before{content:none}.stripe-onboarding .onboarding-actions{display:flex;flex-direction:column;align-items:center;gap:12px;margin-bottom:20px}.stripe-onboarding .btn-lg{padding:12px 32px;font-size:1rem;font-weight:600}.stripe-onboarding .btn-primary{background:#635bff;border-color:#635bff;color:#fff}.stripe-onboarding .btn-primary:hover:not(:disabled){background:#5147e5;border-color:#5147e5}.stripe-onboarding .btn-primary:disabled{opacity:.7;cursor:not-allowed}.stripe-onboarding .btn-link{color:#6c757d;font-size:.875rem;text-decoration:none}.stripe-onboarding .btn-link:hover:not(:disabled){color:#495057;text-decoration:underline}.stripe-onboarding .onboarding-security-note{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#f8f9fa;border-radius:6px;font-size:.8rem;color:#6c757d;max-width:500px}.stripe-onboarding .security-icon{font-size:1rem;flex-shrink:0}.stripe-connect-status{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 4px #0000001a}.stripe-connect-status.loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:48px;color:#6c757d}.stripe-connect-status.error{padding:24px}.connect-status-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #e9ecef}.connect-status-header h3{margin:0;color:#212529}.connect-status-content{padding:20px 0}.connect-status-content .status-icon{font-size:3rem;margin-bottom:16px;text-align:center}.connect-status-content .status-icon.success{color:#28a745}.connect-status-content .status-icon.warning{color:#ffc107}.connect-status-content h4{margin:0 0 12px;color:#212529;text-align:center}.connect-status-content p{color:#6c757d;margin:0 0 20px;text-align:center;line-height:1.6}.connect-status-content.not-connected,.connect-status-content.pending,.connect-status-content.active,.connect-status-content.warning{display:flex;flex-direction:column;align-items:center}.connect-capabilities{display:flex;gap:24px;margin-bottom:20px;padding:16px;background:#f8f9fa;border-radius:6px}.capability-item{display:flex;align-items:center;gap:8px}.capability-indicator{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700}.capability-indicator.enabled{background:#d4edda;color:#155724}.capability-indicator.disabled{background:#f8d7da;color:#721c24}.capability-label{font-size:.875rem;color:#495057}.connect-requirements{width:100%;max-width:500px;margin-bottom:20px}.requirements-section{padding:16px;border-radius:6px;margin-bottom:12px}.requirements-section:last-child{margin-bottom:0}.requirements-past-due{background:#f8d7da;border:1px solid #f5c6cb}.requirements-past-due h5{color:#721c24;margin:0 0 8px;font-size:.9rem}.requirements-currently-due{background:#fff3cd;border:1px solid #ffeaa7}.requirements-currently-due h5{color:#856404;margin:0 0 8px;font-size:.9rem}.requirements-description{font-size:.8rem;margin:0 0 12px}.requirements-list{margin:0;padding-left:20px;font-size:.8rem}.requirements-list li{margin-bottom:4px}.connect-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}@media(max-width:768px){.stripe-onboarding,.stripe-connect-status{padding:16px}.stripe-onboarding .onboarding-info{max-width:100%}.stripe-onboarding .onboarding-security-note{max-width:100%;flex-direction:column;text-align:center}.connect-capabilities{flex-direction:column;gap:12px}.connect-actions{flex-direction:column;width:100%}.connect-actions .btn{width:100%}}.rate-settings{background:var(--card-background);border-radius:8px;box-shadow:0 2px 4px #0000001a;width:100%;max-width:100%;box-sizing:border-box}.rate-settings.loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:48px;color:#6c757d;min-height:200px}.rate-settings-header{margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e9ecef}.rate-settings-header h3{margin:0 0 8px;color:#212529;font-size:1.25rem}.rate-settings-description{margin:0;color:#6c757d;font-size:.875rem}.rate-settings-success{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#d4edda;border:1px solid #c3e6cb;border-radius:6px;color:#155724;margin-bottom:20px;font-size:.875rem}.rate-settings-success .success-icon{font-weight:700}.rate-settings-error{display:flex;align-items:center;gap:.5rem;padding:12px 16px;background:var(--error-bg, #fef2f2);border:1px solid var(--error-border, #fecaca);border-radius:6px;color:var(--error-text, #991b1b);font-size:.875rem;font-weight:500;margin-bottom:20px}.rate-settings-error .error-icon{flex-shrink:0}.rate-settings-error .dismiss-error{margin-left:auto;background:none;border:none;color:var(--error-text, #991b1b);font-size:1.25rem;cursor:pointer;padding:0;line-height:1}.rate-settings-error .dismiss-error:hover{color:var(--error-color, #dc2626)}.rate-sections-container{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:16px}.rate-section{padding:20px;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef;display:flex;flex-direction:column}.rate-section:last-of-type{margin-bottom:0}.rate-section-header{margin-bottom:16px}.rate-section-header h4{margin:0 0 4px;color:#495057;font-size:1rem;font-weight:600}.rate-section-description{margin:0;color:#6c757d;font-size:.8125rem}.rate-display{display:flex;align-items:center;justify-content:space-between;padding:16px;background:#fff;border-radius:6px;border:1px solid #e9ecef}.rate-value{display:flex;align-items:baseline;gap:4px}.rate-amount{font-size:1.5rem;font-weight:700;color:var(--accent-orange)}.rate-period{font-size:.875rem;color:#6c757d}.rate-not-configured{display:flex;align-items:center;gap:8px;color:#856404;font-size:.875rem}.rate-not-configured .not-configured-icon{font-size:1rem}.rate-edit-form{padding:16px;background:#fff;border-radius:6px;border:1px solid #e9ecef}.rate-edit-form.inline{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.rate-edit-form.add-form{margin-top:16px}.rate-input-group{margin-bottom:16px}.rate-edit-form.inline .rate-input-group{margin-bottom:0}.rate-input-group label{display:block;margin-bottom:6px;color:#495057;font-size:.875rem;font-weight:500}.rate-input-wrapper{display:flex;align-items:center;border:1px solid var(--border-color);border-radius:6px;background:var(--input-bg, var(--surface-hover));overflow:hidden}.rate-input-wrapper:focus-within{outline:none;border-color:var(--accent-orange);box-shadow:0 0 0 3px #f4a26126}.currency-prefix{padding:8px 12px;background:var(--surface-hover);color:var(--text-secondary);font-weight:500;border-right:1px solid var(--border-color)}.rate-input{flex:1;padding:8px 12px;border:none;font-size:.875rem;min-width:80px;background:transparent;color:var(--text-primary)}.rate-suffix{padding:8px 12px;color:var(--text-secondary);font-size:.875rem}.currency-select,.trainer-select{width:100%;padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:.875rem;background:#fff;cursor:pointer}.currency-select:focus,.trainer-select:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.rate-form-actions{display:flex;gap:8px;margin-top:16px}.rate-edit-form.inline .rate-form-actions{margin-top:0;margin-left:auto}.trainer-rates-list{display:flex;flex-direction:column;gap:12px}.trainer-rate-item{display:flex;align-items:center;justify-content:space-between;padding:16px;background:#fff;border-radius:6px;border:1px solid #e9ecef;gap:16px}.trainer-info{flex:1;min-width:0}.trainer-name{font-weight:500;color:#212529;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trainer-rate-value{display:flex;align-items:baseline;gap:4px;flex-shrink:0}.trainer-rate-value .rate-amount{font-size:1.125rem}.no-trainer-rates{padding:24px;text-align:center;background:#fff;border-radius:6px;border:1px dashed #dee2e6}.no-trainer-rates p{margin:0;color:#6c757d;font-size:.875rem}.add-trainer-rate{margin-top:16px}.add-trainer-btn{width:100%;padding:12px;border-style:dashed}.all-trainers-configured{margin:8px 0 0;color:#6c757d;font-size:.8125rem;text-align:center}.rate-settings-note{display:flex;align-items:flex-start;gap:8px;padding:12px 16px;background:#e7f3ff;border:1px solid #b6d4fe;border-radius:6px;color:#084298;font-size:.8125rem}.rate-settings-note .note-icon{flex-shrink:0;font-size:1rem}.rate-settings-note p{margin:0}@media(max-width:768px){.rate-settings{padding:16px}.rate-sections-container{grid-template-columns:1fr;gap:16px}.rate-section{padding:16px}.rate-display{flex-direction:column;align-items:flex-start;gap:12px}.rate-display .btn{width:100%}.rate-edit-form.inline{flex-direction:column;align-items:stretch}.rate-edit-form.inline .trainer-name,.rate-edit-form.inline .rate-input-group{margin-bottom:12px}.rate-edit-form.inline .rate-form-actions{margin-left:0;width:100%}.rate-edit-form.inline .rate-form-actions .btn{flex:1}.trainer-rate-item{flex-direction:column;align-items:stretch;gap:12px}.trainer-rate-item .btn{width:100%}.rate-form-actions{flex-direction:column}.rate-form-actions .btn{width:100%}}.rate-input-wrapper.has-error{border-color:var(--error-color, #dc3545)}.rate-input-wrapper.has-error:focus-within{border-color:var(--error-color, #dc3545);box-shadow:0 0 0 3px #dc354526}.rate-input.input-error{color:var(--error-color, #dc3545)}.field-error{display:block;margin-top:6px;font-size:.8rem;color:#dc3545;font-weight:500}.rate-input-wrapper.has-success{border-color:#28a745}.rate-input-wrapper.has-success:focus-within{border-color:#28a745;box-shadow:0 0 0 3px #28a74526}.rate-input:focus{outline:none}.rate-input-wrapper:focus-within{border-color:var(--accent-orange);box-shadow:0 0 0 3px #f4a26126}.rate-edit-form.inline .field-error{position:absolute;bottom:-20px;left:0;white-space:nowrap}.rate-edit-form.inline .rate-input-group{position:relative}.rate-edit-form.inline{padding-bottom:24px}.invoice-summary-badges{display:flex;gap:12px;flex-wrap:wrap}.summary-badge{padding:4px 12px;border-radius:16px;font-size:.75rem;font-weight:600}.summary-badge.pending{background:#fff3cd;color:#856404}.summary-badge.paid{background:#d4edda;color:#155724}.summary-badge.overdue{background:#f8d7da;color:#721c24}.invoices-section .search-filter-results{margin-top:0;margin-bottom:1rem;padding-top:0;border-top:none}@media(max-width:768px){.invoice-summary-badges{width:100%;justify-content:flex-start}.section-header{flex-direction:column;align-items:flex-start;gap:12px}}.invoice-detail{background:var(--card-background, #fff);border-radius:12px;padding:24px;box-shadow:0 1px 3px #00000014;max-width:900px;margin:0 auto}.invoice-detail.loading,.invoice-detail.error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;min-height:300px;color:var(--text-secondary, #6b7280)}.invoice-detail-header{margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.invoice-detail-header .back-btn{padding:0;margin-bottom:16px;font-size:.875rem;color:var(--accent-orange)}.header-top-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.header-top-row .header-left{display:flex;align-items:center;gap:12px}.header-top-row .header-left h2{margin:0;font-size:1.5rem;color:var(--text-primary, #1f2937)}.header-top-row .header-amount{font-size:1.75rem;font-weight:700;color:var(--accent-orange)}.header-meta-strip{display:flex;flex-wrap:wrap;gap:6px 16px;margin-bottom:16px}.header-meta-strip .meta-item{display:flex;align-items:center;gap:6px;font-size:13px}.header-meta-strip .meta-label{color:var(--text-tertiary, #9ca3af);font-weight:500}.header-meta-strip .meta-value{color:var(--text-primary, #1f2937);font-weight:600}.header-meta-strip .meta-value.overdue{color:var(--error-color)}.header-actions{display:flex;flex-wrap:wrap;gap:8px}.invoice-secondary-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}.invoice-secondary-col{display:flex;flex-direction:column;gap:16px}@media(max-width:768px){.invoice-secondary-grid{grid-template-columns:1fr}}.invoice-section{margin-bottom:24px;padding:20px;background:var(--surface-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:12px}.invoice-section h3{margin:0 0 16px;font-size:1rem;font-weight:600;color:var(--text-primary, #1f2937)}.line-items-table{background:var(--card-background, #fff);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;overflow:hidden}.line-items-header{display:grid;grid-template-columns:1fr 80px 120px 120px;gap:16px;padding:12px 16px;background:var(--surface-secondary, #f9fafb);font-weight:600;font-size:.75rem;text-transform:uppercase;color:var(--text-secondary, #6b7280);letter-spacing:.5px}.line-item-row{display:grid;grid-template-columns:1fr 80px 120px 120px;gap:16px;padding:12px 16px;border-bottom:1px solid var(--border-primary, #e5e7eb);font-size:.875rem;color:var(--text-primary, #1f2937)}.line-item-row:last-child{border-bottom:none}.line-item-row.discount{background:var(--success-bg, #f0fdf4)}.line-item-row.late_fee{background:var(--error-bg, #fef2f2)}.line-item-row .col-description{display:flex;align-items:center;gap:8px}.line-item-row .col-quantity,.line-item-row .col-unit-price,.line-item-row .col-amount{text-align:right}.line-item-row .col-amount.discount{color:var(--success-color)}.item-tag{font-size:.625rem;padding:2px 6px;border-radius:12px;font-weight:600;text-transform:uppercase}.item-tag.late-fee{background:var(--error-bg, #fef2f2);color:var(--error-text, #991b1b)}.item-tag.discount{background:var(--success-bg, #f0fdf4);color:var(--success-text, #166534)}.invoice-totals{margin-top:16px;padding-top:16px;border-top:1px solid var(--border-primary, #e5e7eb)}.invoice-totals .total-row{display:flex;justify-content:flex-end;gap:24px;padding:6px 16px;font-size:.875rem}.invoice-totals .total-row .label{color:var(--text-secondary, #6b7280);min-width:150px;text-align:right}.invoice-totals .total-row .value{min-width:100px;text-align:right;font-weight:500;color:var(--text-primary, #1f2937)}.invoice-totals .total-row.discount .value{color:var(--success-color)}.invoice-totals .total-row.late-fee .value{color:var(--error-color)}.invoice-totals .total-row.grand-total{font-size:1rem;font-weight:700;padding-top:12px;margin-top:8px;border-top:2px solid var(--border-primary, #e5e7eb)}.invoice-totals .total-row.grand-total .value{color:var(--accent-orange)}.invoice-totals .total-row.refunded .value{color:var(--text-secondary, #6b7280)}.payment-date-row{font-size:.875rem;color:var(--text-primary, #1f2937);font-weight:500;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.payment-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.payment-grid-cell{display:flex;flex-direction:column;gap:2px}.payment-grid-cell.highlight{background:var(--info-bg, #eff6ff);padding:8px 10px;border-radius:8px}.payment-grid-label{font-size:.75rem;font-weight:600;color:var(--text-tertiary, #9ca3af);text-transform:uppercase;letter-spacing:.3px}.payment-grid-value{font-size:.875rem;font-weight:600;color:var(--text-primary, #1f2937)}.payment-grid-value.mono{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.75rem;color:var(--text-tertiary, #9ca3af);word-break:break-all}.payment-grid-cell.highlight .payment-grid-value{color:var(--accent-orange);font-weight:700}.payment-transaction{display:flex;flex-direction:column;gap:2px;padding-top:12px;border-top:1px solid var(--border-primary, #e5e7eb)}.payment-info,.void-info,.dispute-info{display:flex;flex-direction:column;gap:8px}.payment-info .info-row,.void-info .info-row,.dispute-info .info-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--border-primary, #e5e7eb);font-size:.875rem}.payment-info .info-row:last-child,.void-info .info-row:last-child,.dispute-info .info-row:last-child{border-bottom:none}.payment-info .info-row .label,.void-info .info-row .label,.dispute-info .info-row .label{color:var(--text-secondary, #6b7280)}.payment-info .info-row .value,.void-info .info-row .value,.dispute-info .info-row .value{color:var(--text-primary, #1f2937);font-weight:500}.payment-info .info-row .value.mono,.void-info .info-row .value.mono,.dispute-info .info-row .value.mono{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.75rem;color:var(--text-tertiary, #9ca3af)}.payment-info .info-row.highlight{background:var(--info-bg, #eff6ff);margin:8px -16px -8px;padding:12px 16px;border-radius:0 0 8px 8px}.payment-info .info-row.highlight .value{color:var(--accent-orange);font-weight:700}.refund-list{display:flex;flex-direction:column;gap:12px}.refund-item{background:var(--card-background, #fff);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;padding:16px}.refund-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.refund-amount{font-size:1.125rem;font-weight:600;color:var(--error-color)}.refund-date{font-size:.875rem;color:var(--text-secondary, #6b7280)}.refund-details .info-row{display:flex;gap:12px;padding:4px 0;font-size:.875rem}.refund-details .info-row .label{color:var(--text-secondary, #6b7280);min-width:100px}.refund-details .info-row .value{color:var(--text-primary, #1f2937)}.refund-details .info-row .value.mono{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.75rem;color:var(--text-tertiary, #9ca3af)}.dispute-section{background:var(--error-bg, #fef2f2);border-color:var(--error-border, #fecaca)}.dispute-status{margin-bottom:12px}.attempt-list{display:flex;flex-direction:column;gap:12px}.attempt-item{background:var(--card-background, #fff);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;padding:16px}.attempt-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.attempt-number{font-weight:600;color:var(--text-primary, #1f2937)}.attempt-details .info-row{display:flex;gap:12px;padding:4px 0;font-size:.875rem}.attempt-details .info-row .label{color:var(--text-secondary, #6b7280);min-width:120px}.attempt-details .info-row .value{color:var(--text-primary, #1f2937)}.attempt-details .info-row .value.mono{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.75rem;color:var(--text-tertiary, #9ca3af);word-break:break-all}.no-attempts{text-align:center;padding:24px;color:var(--text-secondary, #6b7280);font-style:italic}.no-attempts p{margin:0}.void-section{background:var(--surface-secondary, #f9fafb);border-color:var(--border-primary, #e5e7eb)}.invoice-notes{background:var(--card-background, #fff);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;padding:16px}.invoice-notes p{margin:0;color:var(--text-primary, #1f2937);font-size:.875rem;line-height:1.6;white-space:pre-wrap}@media(max-width:768px){.invoice-detail{padding:16px}.header-top-row{flex-direction:column;align-items:flex-start;gap:8px}.header-top-row .header-amount{font-size:1.5rem}.line-items-header,.line-item-row{grid-template-columns:1fr 60px 80px 80px;gap:8px;font-size:.75rem}.invoice-totals .total-row{gap:12px}.invoice-totals .total-row .label{min-width:100px}.invoice-totals .total-row .value{min-width:80px}.refund-header,.attempt-header{flex-direction:column;align-items:flex-start;gap:8px}.refund-details .info-row,.attempt-details .info-row{flex-direction:column;gap:4px}.refund-details .info-row .label,.attempt-details .info-row .label{min-width:auto}}@media(max-width:480px){.line-items-header,.line-item-row{grid-template-columns:1fr 50px 70px}.line-items-header .col-quantity,.line-item-row .col-quantity{display:none}}.modal .searchable-select{position:relative}.modal .searchable-select input{width:100%;padding:10px 12px;border:1px solid var(--border-primary, #ced4da);border-radius:6px;font-size:.875rem;background:var(--input-bg, white);color:var(--text-primary, #374151);transition:border-color .2s ease,box-shadow .2s ease}.modal .searchable-select input:focus{outline:none;border-color:var(--primary, #007bff);box-shadow:0 0 0 3px #007bff1a}.modal .searchable-select input.error{border-color:#dc3545}.modal .searchable-select input:disabled{background:var(--surface-disabled, #e9ecef);cursor:not-allowed}.modal .searchable-select-dropdown{position:absolute;top:100%;left:0;right:0;max-height:200px;overflow-y:auto;background:var(--modal-bg, white);border:1px solid var(--border-primary, #e9ecef);border-radius:6px;box-shadow:0 4px 12px #00000026;z-index:100;margin-top:4px}.modal .searchable-select-option{display:flex;flex-direction:column;padding:10px 12px;cursor:pointer;transition:background-color .15s ease}.modal .searchable-select-option:hover{background:var(--hover-bg, #f3f4f6)}.modal .searchable-select-option.selected{background:var(--primary-light, #eff6ff)}.modal .searchable-select-option .client-name{font-weight:500;color:var(--text-primary, #374151)}.modal .searchable-select-option .client-email{font-size:.75rem;color:var(--text-secondary, #6b7280);margin-top:2px}.modal .searchable-select-empty{padding:12px;text-align:center;color:var(--text-secondary, #6b7280);font-style:italic}.modal .loading-clients{padding:12px;color:var(--text-secondary, #6b7280);font-style:italic}.line-items-container{display:flex;flex-direction:column;gap:12px}.line-items-container .line-item-row{display:flex;gap:12px;align-items:flex-start}.line-items-container .line-item-description{flex:1;min-width:0}.line-items-container .line-item-description input{width:100%;padding:10px 12px;border:1px solid var(--border-primary, #ced4da);border-radius:6px;font-size:.875rem;background:var(--input-bg, white);color:var(--text-primary, #374151);transition:border-color .2s ease}.line-items-container .line-item-description input:focus{outline:none;border-color:var(--primary, #007bff);box-shadow:0 0 0 3px #007bff1a}.line-items-container .line-item-description input.error{border-color:#dc3545}.line-items-container .line-item-amount{width:140px;flex-shrink:0}.line-items-container .amount-input-wrapper{position:relative;display:flex;align-items:center}.line-items-container .amount-input-wrapper .currency-symbol{position:absolute;left:12px;color:var(--text-secondary, #6b7280);font-size:.875rem;pointer-events:none}.line-items-container .amount-input-wrapper input{width:100%;padding:10px 12px 10px 28px;border:1px solid var(--border-primary, #ced4da);border-radius:6px;font-size:.875rem;background:var(--input-bg, white);color:var(--text-primary, #374151);text-align:right;transition:border-color .2s ease}.line-items-container .amount-input-wrapper input:focus{outline:none;border-color:var(--primary, #007bff);box-shadow:0 0 0 3px #007bff1a}.line-items-container .amount-input-wrapper input.error{border-color:#dc3545}.line-items-container .line-item-remove{width:32px;height:38px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border-primary, #e9ecef);border-radius:6px;color:var(--text-secondary, #6b7280);font-size:1.25rem;cursor:pointer;transition:all .15s ease;flex-shrink:0}.line-items-container .line-item-remove:hover{background:#fff5f5;border-color:#dc3545;color:#dc3545}.line-items-container .line-item-remove:disabled{opacity:.5;cursor:not-allowed}.add-line-item-btn{align-self:flex-start;margin-top:4px}.invoice-total-display{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:16px;background:var(--surface-secondary, #f8f9fa);border-radius:8px;margin-bottom:16px}.invoice-total-display .total-label{font-weight:500;color:var(--text-secondary, #6b7280)}.invoice-total-display .total-amount{font-size:1.5rem;font-weight:700;color:var(--primary, #007bff)}.modal .form-group{margin-bottom:20px}.modal .form-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--text-primary, #374151);font-size:.875rem}.modal .form-group input[type=date],.modal .form-group textarea{width:100%;padding:10px 12px;border:1px solid var(--border-primary, #ced4da);border-radius:6px;font-size:.875rem;background:var(--input-bg, white);color:var(--text-primary, #374151);transition:border-color .2s ease}.modal .form-group input[type=date]:focus,.modal .form-group textarea:focus{outline:none;border-color:var(--primary, #007bff);box-shadow:0 0 0 3px #007bff1a}.modal .form-group input.error,.modal .form-group textarea.error{border-color:#dc3545}.modal .form-group textarea{resize:vertical;min-height:80px}.modal .error-text{display:block;margin-top:4px;font-size:.75rem;color:#dc3545}[data-theme=dark] .modal .searchable-select-dropdown{background:var(--modal-bg, #2a2240);border-color:var(--border-primary, #3d3355)}[data-theme=dark] .modal .searchable-select-option:hover{background:var(--hover-bg, #3d3355)}[data-theme=dark] .modal .searchable-select-option.selected{background:var(--primary-dark, #1e3a5f)}[data-theme=dark] .modal .searchable-select-option .client-name{color:var(--text-primary, #f5f3f7)}[data-theme=dark] .modal .searchable-select-option .client-email{color:var(--text-secondary, #a89bb8)}[data-theme=dark] .line-items-container .line-item-description input,[data-theme=dark] .line-items-container .amount-input-wrapper input{background:var(--input-bg, #1e1a2e);border-color:var(--border-primary, #3d3355);color:var(--text-primary, #f5f3f7)}[data-theme=dark] .line-items-container .amount-input-wrapper .currency-symbol{color:var(--text-secondary, #a89bb8)}[data-theme=dark] .line-items-container .line-item-remove{border-color:var(--border-primary, #3d3355);color:var(--text-secondary, #a89bb8)}[data-theme=dark] .line-items-container .line-item-remove:hover{background:#dc35451a;border-color:#dc3545;color:#dc3545}[data-theme=dark] .invoice-total-display{background:var(--surface-secondary, #1e1a2e)}[data-theme=dark] .modal .form-group input[type=date],[data-theme=dark] .modal .form-group textarea{background:var(--input-bg, #1e1a2e);border-color:transparent;color:var(--text-primary, #f5f3f7)}@media(max-width:768px){.line-items-container .line-item-row{flex-wrap:wrap}.line-items-container .line-item-description{flex:1 1 100%}.line-items-container .line-item-amount{flex:1;width:auto;min-width:100px}.line-items-container .line-item-remove{width:38px}.invoice-total-display{flex-direction:column;gap:4px;text-align:center}}.void-invoice-details{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:16px;margin-bottom:16px}.void-invoice-details.confirmation{background:#fff;border:2px solid #e9ecef}.void-invoice-details .detail-row{display:flex;justify-content:space-between;align-items:flex-start;padding:8px 0;border-bottom:1px solid #e9ecef}.void-invoice-details .label{color:#6c757d;font-size:.875rem;font-weight:500}.void-invoice-details .value{color:#212529;font-weight:500;text-align:right;max-width:60%}.void-invoice-details .value.reason{font-style:italic;color:#495057;word-break:break-word}.void-warning-message{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;margin-bottom:16px}.void-warning-message .warning-icon{font-size:1.5rem;flex-shrink:0}.confirmation-summary .confirmation-text{margin:0 0 16px;color:#495057;font-size:.9375rem}.form-group textarea.error{border-color:#dc3545}.form-group textarea.error:focus{border-color:#dc3545;box-shadow:0 0 0 3px #dc35451a}.refund-invoice-details.confirmation{background:#fff;border:2px solid #007bff}.refund-invoice-details .detail-row.highlight{background:#e7f3ff;margin:8px -16px;padding:12px 16px;border-radius:4px;border-bottom:none}.refund-invoice-details .value.refunded{color:#dc3545;font-weight:600}.refund-invoice-details .value.refund-amount{color:#28a745;font-size:1.25rem}.refund-invoice-details .value.reason{max-width:60%;text-align:right;word-wrap:break-word}.quick-action-buttons .btn-outline{background:#fff;border:1px solid #ced4da;color:#495057;padding:8px 16px;font-size:.875rem;border-radius:6px;transition:all .2s ease}.quick-action-buttons .btn-outline:hover:not(:disabled){border-color:#007bff;color:#007bff;background:#f8f9ff}.quick-action-buttons .btn-outline.active{border-color:#007bff;background:#007bff;color:#fff}.currency-symbol{position:absolute;left:12px;color:#6c757d;font-size:1rem;font-weight:500;z-index:1}.currency-input{padding-left:28px!important;font-size:1.125rem;font-weight:500}.currency-input::-webkit-inner-spin-button,.currency-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.currency-input[type=number]{-moz-appearance:textfield}.input-hint{display:block;margin-top:4px;font-size:.75rem;color:#6c757d}.refund-info-message{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#e7f3ff;border:1px solid #b8daff;border-radius:6px;margin-bottom:16px}.refund-warning-message{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;margin-top:16px}.void-invoice-details.confirmation{background:#fff;border:2px solid #dc3545}.void-invoice-details .value.reason{max-width:60%;text-align:right;word-wrap:break-word}.void-warning-message{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;margin-bottom:16px}.confirmation-summary{margin-bottom:16px}.modal.modal-sm{max-width:450px}.modal.modal-md{max-width:550px}.modal.modal-lg{max-width:700px}.form-control.error,textarea.error{border-color:var(--error-color, #ef4444)}.form-control.error:focus,textarea.error:focus{border-color:var(--error-color, #ef4444);box-shadow:0 0 0 3px var(--error-bg, rgba(254, 107, 52, .1))}.btn-primary{background:var(--primary-color, #FE6B34);border-color:var(--primary-color, #FE6B34);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover, #E55A2B);border-color:var(--primary-hover, #E55A2B)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.send-reminder-wrapper{display:inline-flex;flex-direction:column;align-items:flex-start;gap:4px}.send-reminder-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:.875rem;font-weight:500;border-radius:4px;transition:all .2s ease;white-space:nowrap}.send-reminder-btn:disabled{opacity:.6;cursor:not-allowed}.send-reminder-btn.btn-success{background:#28a745;border-color:#28a745;color:#fff}.send-reminder-btn.btn-success:hover:not(:disabled){background:#1e7e34;border-color:#1e7e34}.reminder-spinner{display:inline-flex;align-items:center;justify-content:center}.reminder-spinner .spinner-icon{animation:reminder-spin 1s linear infinite}@keyframes reminder-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.reminder-error-message{display:flex;align-items:center;gap:6px;padding:6px 10px;background:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#721c24;font-size:.75rem;margin-top:4px}.reminder-error-message svg{flex-shrink:0}.reminder-error-message .error-dismiss{background:none;border:none;color:#721c24;font-size:1rem;line-height:1;padding:0 2px;margin-left:auto;cursor:pointer;opacity:.7;transition:opacity .2s}.reminder-error-message .error-dismiss:hover{opacity:1}.reminder-disabled-hint{font-size:.7rem;color:#6c757d;font-style:italic}.send-reminder-icon-wrapper{position:relative;display:inline-flex}.send-reminder-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;color:#6c757d;cursor:pointer;transition:all .2s ease}.send-reminder-icon-btn:hover:not(:disabled){background:#e9ecef;color:#495057;border-color:#dee2e6}.send-reminder-icon-btn:disabled{opacity:.5;cursor:not-allowed}.send-reminder-icon-btn.success{background:#d4edda;border-color:#c3e6cb;color:#28a745}.send-reminder-icon-btn.error{background:#f8d7da;border-color:#f5c6cb;color:#dc3545}.reminder-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:8px;padding:6px 10px;background:#212529;color:#fff;font-size:.75rem;border-radius:4px;white-space:nowrap;z-index:1000;pointer-events:none}.reminder-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#212529}.reminder-tooltip.success{background:#28a745}.reminder-tooltip.success:after{border-top-color:#28a745}.reminder-tooltip.error{background:#dc3545}.reminder-tooltip.error:after{border-top-color:#dc3545}@media(max-width:768px){.send-reminder-btn{padding:8px 12px;font-size:.8rem}.send-reminder-icon-btn{width:36px;height:36px}}.promo-invoice-details{background:#f8f9fa;border-radius:8px;padding:16px;margin-bottom:20px;border:1px solid #e9ecef}.promo-invoice-details.confirmation{background:#f0f7ff;border-color:#b8daff}.promo-invoice-details .detail-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #e9ecef}.promo-invoice-details .detail-row:last-child{border-bottom:none}.promo-invoice-details .detail-row.highlight{background:#e9ecef;margin:8px -16px -16px;padding:12px 16px;border-radius:0 0 8px 8px;border-bottom:none}.promo-invoice-details.confirmation .detail-row.highlight{background:#cce5ff}.promo-invoice-details .label{color:#6c757d;font-size:.875rem}.promo-invoice-details .value{font-weight:500;color:#212529}.promo-invoice-details .value.amount{color:#007bff;font-size:1.125rem;font-weight:600}.promo-invoice-details .value.promo-code{font-family:monospace;background:#e9ecef;padding:4px 8px;border-radius:4px;font-weight:600;color:#495057}.promo-invoice-details .value.discount-amount{color:#28a745;font-weight:600}.promo-invoice-details .value.new-total{color:#007bff;font-size:1.125rem;font-weight:700}.promo-invoice-details .discount-detail{font-size:.75rem;color:#6c757d;margin-left:8px;font-weight:400}.promo-code-input-wrapper{display:flex;gap:12px;align-items:stretch}.promo-code-input{flex:1;text-transform:uppercase;font-family:monospace;font-size:1rem;letter-spacing:1px}.promo-code-input::placeholder{text-transform:none;font-family:inherit;letter-spacing:normal}.validate-btn{white-space:nowrap;min-width:100px}.promo-validation-result{border-radius:8px;padding:16px;margin-bottom:20px}.promo-validation-result.success{background:#d4edda;border:1px solid #c3e6cb}.validation-header{display:flex;align-items:center;gap:8px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #c3e6cb}.validation-header .success-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:#28a745;color:#fff;border-radius:50%;font-size:.875rem;font-weight:700}.validation-header .validation-title{font-weight:600;color:#155724;font-size:1rem}.discount-preview{display:flex;flex-direction:column;gap:8px}.discount-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0}.discount-row .label{color:#155724;font-size:.875rem}.discount-row .value{font-weight:500;color:#155724}.discount-row .value.discount-value{font-weight:600;color:#28a745}.discount-row .value.discount-amount{color:#28a745;font-weight:600}.discount-row.total{border-top:1px solid #c3e6cb;margin-top:8px;padding-top:12px}.discount-row.total .label{font-weight:600}.discount-row.total .value.new-total{font-size:1.125rem;font-weight:700;color:#155724}.promo-info-message{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#e7f3ff;border:1px solid #b8daff;border-radius:8px;margin-top:16px}.promo-info-message .info-icon{font-size:1.25rem;flex-shrink:0}.promo-info-message .info-content p{margin:0;color:#004085;font-size:.875rem;line-height:1.5}.refund-invoice-details{background:#f8f9fa;border-radius:8px;padding:16px;margin-bottom:20px;border:1px solid #e9ecef}.refund-invoice-details.confirmation{background:#fff3cd;border-color:#ffeaa7}.refund-invoice-details .detail-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #e9ecef}.refund-invoice-details .detail-row:last-child{border-bottom:none}.refund-invoice-details .detail-row.highlight{background:#e9ecef;margin:8px -16px -16px;padding:12px 16px;border-radius:0 0 8px 8px;border-bottom:none}.refund-invoice-details.confirmation .detail-row.highlight{background:#ffeaa7}.refund-invoice-details .label{color:#6c757d;font-size:.875rem}.refund-invoice-details .value{font-weight:500;color:#212529}.refund-invoice-details .value.amount{color:#007bff;font-size:1.125rem;font-weight:600}.refund-invoice-details .value.refunded{color:#dc3545}.refund-invoice-details .value.refund-amount{color:#dc3545;font-size:1.25rem;font-weight:700}.refund-invoice-details .value.reason{max-width:200px;text-align:right;word-wrap:break-word}.refund-quick-actions{margin-bottom:20px}.refund-quick-actions label{display:block;margin-bottom:8px;color:#495057;font-weight:500;font-size:.875rem}.quick-action-buttons{display:flex;gap:8px;flex-wrap:wrap}.quick-action-buttons .btn{flex:1;min-width:80px}.quick-action-buttons .btn.active{background:#007bff;border-color:#007bff;color:#fff}.currency-input-wrapper{position:relative;display:flex;align-items:center}.currency-symbol{position:absolute;left:12px;color:#6c757d;font-weight:500;z-index:1}.currency-input{padding-left:28px!important}.refund-info-message{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#e7f3ff;border:1px solid #b8daff;border-radius:8px;margin-top:16px}.refund-info-message .info-icon{font-size:1.25rem;flex-shrink:0}.refund-info-message .info-content p{margin:0;color:#004085;font-size:.875rem;line-height:1.5}.refund-warning-message{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;margin-top:16px}.refund-warning-message .warning-icon{font-size:1.25rem;flex-shrink:0}.refund-warning-message .warning-content{flex:1}.refund-warning-message .warning-content strong{display:block;color:#856404;margin-bottom:4px}.refund-warning-message .warning-content p{margin:0;color:#856404;font-size:.875rem;line-height:1.5}.void-invoice-details{background:#f8f9fa;border-radius:8px;padding:16px;margin-bottom:20px;border:1px solid #e9ecef}.void-invoice-details.confirmation{background:#f8d7da;border-color:#f5c6cb}.void-invoice-details .detail-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #e9ecef}.void-invoice-details .detail-row:last-child{border-bottom:none}.void-invoice-details .label{color:#6c757d;font-size:.875rem}.void-invoice-details .value{font-weight:500;color:#212529}.void-invoice-details .value.amount{color:#007bff;font-size:1.125rem;font-weight:600}.void-invoice-details .value.reason{max-width:200px;text-align:right;word-wrap:break-word}.void-warning-message{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;margin-bottom:20px}.void-warning-message.critical{background:#f8d7da;border-color:#f5c6cb}.void-warning-message .warning-icon{font-size:1.25rem;flex-shrink:0}.void-warning-message .warning-content{flex:1}.void-warning-message .warning-content strong{display:block;color:#856404;margin-bottom:4px}.void-warning-message.critical .warning-content strong{color:#721c24}.void-warning-message .warning-content p{margin:0;color:#856404;font-size:.875rem;line-height:1.5}.void-warning-message.critical .warning-content p{color:#721c24}.confirmation-summary{text-align:left}.confirmation-text{margin:0 0 16px;color:#495057;font-size:.9375rem}.input-hint{display:block;margin-top:6px;font-size:.75rem;color:#6c757d}.form-control.error{border-color:#dc3545}.form-control.error:focus{border-color:#dc3545;box-shadow:0 0 0 3px #dc35451a}.error-text{display:block;margin-top:6px;font-size:.75rem;color:#dc3545}@media(max-width:576px){.promo-code-input-wrapper{flex-direction:column}.validate-btn{width:100%}.discount-row{flex-direction:column;align-items:flex-start;gap:4px}.discount-row .value{font-size:1rem}}.client-balances-section{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 4px #0000001a;width:100%;max-width:100%;box-sizing:border-box}.client-balances-section.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:300px;color:#6c757d}.client-balances-section.error{padding:24px}.client-balances-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.client-balances-summary .summary-card{background:#f8f9fa;border-radius:8px;padding:20px;border:1px solid #e9ecef;text-align:center}.client-balances-summary .summary-card.total-outstanding{background:linear-gradient(135deg,#fff5f5,#fed7d7);border-color:#feb2b2}.client-balances-summary .summary-card.total-clients{background:linear-gradient(135deg,#f0fff4,#c6f6d5);border-color:#9ae6b4}.client-balances-summary .summary-card.active-packages{background:linear-gradient(135deg,#ebf8ff,#bee3f8);border-color:#90cdf4}.client-balances-summary .summary-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#6c757d;margin-bottom:8px}.client-balances-summary .summary-value{font-size:1.75rem;font-weight:700;color:#212529;margin-bottom:4px}.client-balances-summary .summary-card.total-outstanding .summary-value{color:#c53030}.client-balances-summary .summary-card.total-clients .summary-value{color:#276749}.client-balances-summary .summary-card.active-packages .summary-value{color:#2b6cb0}.client-balances-summary .summary-subtext{font-size:.75rem;color:#6c757d}.client-balances-filters{margin-bottom:16px}.client-balances-filters .checkbox-group{display:flex;align-items:center}.client-balances-filters .checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.875rem;color:#495057}.client-balances-filters .checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer}.client-balances-table-container{overflow-x:auto;margin-top:16px}.client-balances-table{width:100%;border-collapse:collapse;font-size:.875rem}.client-balances-table thead{background:#f8f9fa}.client-balances-table th{padding:12px 16px;text-align:left;font-weight:600;color:#495057;border-bottom:2px solid #e9ecef;white-space:nowrap}.client-balances-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s ease}.client-balances-table th.sortable:hover{background:#e9ecef}.client-balances-table th.numeric{text-align:right}.client-balances-table th.actions-column{text-align:center;width:140px}.client-balances-table td{padding:12px 16px;border-bottom:1px solid #f8f9fa;color:#495057;vertical-align:middle}.client-balances-table td.numeric{text-align:right;font-family:SF Mono,Monaco,Inconsolata,Fira Mono,Droid Sans Mono,monospace}.client-balances-table td.actions-column{text-align:center}.client-balances-table tbody tr{transition:background-color .15s ease}.client-balances-table tbody tr:hover{background:var(--table-row-hover)}.client-balances-table tbody tr.has-balance{background:#fffaf0}.client-balances-table tbody tr.has-balance:hover{background:#fef3c7}.client-balances-table .client-info{min-width:200px}.client-balances-table .client-name{font-weight:600;color:#212529;margin-bottom:2px}.client-balances-table .client-email{font-size:.75rem;color:#6c757d}.client-balances-table .balance-outstanding{color:#c53030;font-weight:600}.client-balances-table .balance-zero{color:#28a745}.sort-indicator{margin-left:4px;font-size:.75rem;color:#adb5bd;display:inline-block;width:16px;text-align:center}.sort-indicator.active{color:#007bff;font-weight:700}.text-muted{color:#adb5bd}.no-clients{text-align:center;padding:48px 24px;color:#6c757d}.no-clients p{margin-bottom:12px}@media(max-width:992px){.client-balances-summary{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.client-balances-section{padding:16px}.client-balances-summary{grid-template-columns:1fr}.client-balances-summary .summary-card{padding:16px}.client-balances-summary .summary-value{font-size:1.5rem}.client-balances-filters .search-filter-row{flex-direction:column;gap:12px}.client-balances-filters .search-filter-controls{flex-direction:column;align-items:flex-start;gap:12px}.client-balances-table th,.client-balances-table td{padding:10px 12px}.client-balances-table .client-info{min-width:150px}.client-balances-table th:nth-child(4),.client-balances-table td:nth-child(4),.client-balances-table th:nth-child(5),.client-balances-table td:nth-child(5){display:none}}@media(max-width:576px){.client-balances-table{font-size:.8rem}.client-balances-table th,.client-balances-table td{padding:8px 10px}.client-balances-table th:nth-child(3),.client-balances-table td:nth-child(3){display:none}.client-balances-table .btn-sm{padding:4px 8px;font-size:.7rem}}.promo-code-manager{width:100%}.promo-code-manager.loading,.promo-code-manager.error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px;color:#6c757d;min-height:300px}.promo-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.promo-stats .stat-card{background:#fff;border-radius:8px;padding:20px;text-align:center;box-shadow:0 2px 4px #0000001a;border:1px solid #e9ecef}.promo-stats .stat-card.highlight{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff}.promo-stats .stat-value{display:block;font-size:2rem;font-weight:700;line-height:1.2}.promo-stats .stat-label{display:block;font-size:.875rem;color:#6c757d;margin-top:4px}.promo-stats .stat-card.highlight .stat-label{color:#ffffffd9}.promo-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.promo-header .header-title{display:flex;align-items:center;gap:12px}.promo-header h3{margin:0;font-size:1.25rem;color:var(--text-primary)}.promo-header .count-badge{background:var(--chip-orange-bg);color:var(--text-secondary);padding:4px 10px;border-radius:12px;font-size:.75rem;font-weight:500}.promo-filters{margin-bottom:20px}.promo-codes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.promo-code-card{background:var(--card-background);border-radius:12px;padding:20px;box-shadow:0 1px 3px #0000004d;border:1px solid transparent;transition:all .2s ease}.promo-code-card:hover{border-color:var(--accent-orange-hover);box-shadow:var(--shadow-md)}.promo-code-card.inactive{opacity:.7;background:var(--surface-secondary)}.promo-code-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border-primary)}.promo-code-header .code-info{display:flex;flex-direction:column;gap:8px}.promo-code-header .code-value{margin:0;font-size:1.25rem;font-weight:700;font-family:SF Mono,Monaco,Inconsolata,Fira Mono,monospace;color:var(--text-primary);letter-spacing:1px}.promo-code-header .discount-badge{background:var(--success-bg);color:var(--success-text);padding:6px 12px;border-radius:20px;font-size:.875rem;font-weight:600;white-space:nowrap}.promo-code-details{margin-bottom:16px}.promo-code-details .detail-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid var(--border-primary)}.promo-code-details .detail-row:last-child{border-bottom:none}.promo-code-details .detail-label{color:var(--text-secondary);font-size:.875rem}.promo-code-details .detail-value{font-weight:500;color:var(--text-primary);font-size:.875rem}.promo-code-details .detail-value.expired-date{color:var(--error-color)}.promo-code-details .usage-bar-container{padding:8px 0}.promo-code-details .usage-bar{width:100%;height:6px;background:var(--surface-secondary);border-radius:3px;overflow:hidden}.promo-code-details .usage-fill{height:100%;background:var(--accent-orange);border-radius:3px;transition:width .3s ease}.promo-code-actions{display:flex;gap:8px;padding-top:12px;border-top:1px solid var(--border-primary)}.promo-code-modal{max-width:500px}.discount-type-selector{display:flex;gap:8px}.discount-type-selector .type-btn{flex:1;padding:10px 16px;border:2px solid var(--border-primary);background:var(--card-background);border-radius:6px;font-size:.875rem;font-weight:500;color:var(--text-primary);cursor:pointer;transition:all .2s ease}.discount-type-selector .type-btn:hover{border-color:var(--accent-orange);color:var(--accent-orange)}.discount-type-selector .type-btn.active{border-color:var(--accent-orange);background:var(--accent-orange);color:var(--text-inverse)}.promo-code-modal .form-hint{display:block;font-size:.75rem;color:var(--text-tertiary);margin-top:4px}.promo-code-modal .error-text{display:block;font-size:.75rem;color:var(--error-color);margin-top:4px}.promo-code-modal .form-control.error{border-color:var(--error-color)}.promo-code-manager .empty-state{text-align:center;padding:48px 24px;background:var(--card-background);border-radius:8px;color:var(--text-secondary)}.promo-code-manager .empty-state p{margin-bottom:16px}@media(max-width:992px){.promo-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.promo-header{flex-direction:column;gap:16px;align-items:stretch}.promo-header .header-title{justify-content:space-between}.promo-codes-grid{grid-template-columns:1fr}.promo-code-modal{width:95%;margin:16px}}@media(max-width:576px){.promo-stats{grid-template-columns:1fr 1fr;gap:12px}.promo-stats .stat-card{padding:16px}.promo-stats .stat-value{font-size:1.5rem}.discount-type-selector{flex-direction:column}.promo-code-header{flex-direction:column;gap:12px}.promo-code-header .discount-badge{align-self:flex-start}}.billing-settings{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 4px #0000001a}.billing-settings.loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:48px;color:#6c757d;min-height:300px}.billing-settings-header{margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e9ecef}.billing-settings-header h3{margin:0 0 8px;color:#212529;font-size:1.25rem}.billing-settings-description{margin:0;color:#6c757d;font-size:.875rem}.billing-settings-success{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#d4edda;border:1px solid #c3e6cb;border-radius:6px;color:#155724;margin-bottom:20px}.billing-settings-success .success-icon{font-size:1.1rem}.billing-settings-error{display:flex;align-items:center;gap:.5rem;padding:12px 16px;background:var(--error-bg, #fef2f2);border:1px solid var(--error-border, #fecaca);border-radius:6px;color:var(--error-text, #991b1b);font-size:.875rem;font-weight:500;margin-bottom:20px}.billing-settings-error .error-icon{font-size:1.1rem;flex-shrink:0}.billing-settings-error .dismiss-error{margin-left:auto;background:none;border:none;color:var(--error-text, #991b1b);font-size:1.25rem;cursor:pointer;padding:0;line-height:1}.billing-settings-error .dismiss-error:hover{color:var(--error-color, #dc2626)}.settings-section{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid #e9ecef}.settings-section:last-of-type{border-bottom:none;margin-bottom:24px}.settings-section-header{margin-bottom:16px}.settings-section-header h4{margin:0 0 8px;color:#212529;font-size:1rem;font-weight:600}.settings-section-description{margin:0;color:#6c757d;font-size:.875rem;line-height:1.5}.settings-subsection{margin-top:16px;padding:16px;border-top:1px solid var(--text-tertiary)}.settings-toggle-group{margin-bottom:12px}.settings-toggle{display:flex;align-items:center;gap:12px;cursor:pointer;-webkit-user-select:none;user-select:none;position:relative}.settings-toggle input[type=checkbox]{position:absolute;opacity:0;width:0;height:0;pointer-events:none;margin:0}.toggle-slider{position:relative;display:inline-block;width:44px;min-width:44px;height:22px;background:var(--border-color, #ced4da);border-radius:22px;transition:all .25s ease;flex-shrink:0}.toggle-slider:before{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;background:#fff;border-radius:50%;transition:all .3s ease;box-shadow:0 1px 3px #0003}.settings-toggle input[type=checkbox]:checked+.toggle-slider{background:var(--accent-orange)}.settings-toggle input[type=checkbox]:checked+.toggle-slider:before{transform:translate(22px)}.settings-toggle input[type=checkbox]:disabled+.toggle-slider{opacity:.5;cursor:not-allowed}.toggle-label{font-weight:500;color:#212529;font-size:.9rem}.toggle-description{margin:8px 0 0 60px;color:#6c757d;font-size:.8rem;line-height:1.5}.learn-more-link{display:inline-block;margin-left:8px;color:#007bff;text-decoration:none}.learn-more-link:hover{text-decoration:underline}.settings-form-group{margin-bottom:16px}.settings-form-group:last-child{margin-bottom:0}.settings-form-group label{display:block;margin-bottom:6px;color:#495057;font-weight:500;font-size:.875rem}.field-description{margin:0 0 8px;color:#6c757d;font-size:.8rem}.settings-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.settings-input{width:100%;padding:10px 12px;border:1px solid #ced4da;border-radius:4px;font-size:.875rem;transition:border-color .2s ease,box-shadow .2s ease}.settings-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.settings-input:disabled{background:#e9ecef;cursor:not-allowed}.settings-input::placeholder{color:var(--text-tertiary)}.settings-input-narrow{width:120px}.settings-input-wrapper{display:flex;align-items:center;position:relative}.settings-input-wrapper .input-prefix{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#6c757d;font-size:.875rem;line-height:1;pointer-events:none}.settings-input-wrapper .input-suffix{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:#6c757d;font-size:.875rem;line-height:1;pointer-events:none}.settings-input-wrapper .settings-input{padding-left:20px!important}.settings-input-wrapper .settings-input:has(+.input-suffix){padding-right:32px}.settings-select{width:100%;padding:10px 12px;border:1px solid #ced4da;border-radius:4px;font-size:.875rem;background:#fff;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease}.settings-select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.settings-select:disabled{background:#e9ecef;cursor:not-allowed}.reminder-days-list{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.reminder-day-tag{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:10px;border:1px solid var(--text-tertiary);background-color:var(--card-background);font-size:.8rem;color:var(--text-primary)}.remove-tag-btn{background:none;border:none;color:#6c757d;font-size:1rem;cursor:pointer;padding:0;line-height:1;display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;transition:all .2s ease}.remove-tag-btn:hover{background:#dc3545;color:#fff}.remove-tag-btn:disabled{opacity:.5;cursor:not-allowed}.add-reminder-day{display:flex;gap:8px;align-items:center}.add-reminder-day .settings-input{width:100px}.tax-manual-notice{display:flex;align-items:flex-start;gap:10px;padding:12px;background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;margin-top:12px}.tax-manual-notice .notice-icon{color:#856404;font-size:1rem;flex-shrink:0}.tax-manual-notice p{margin:0;color:#856404;font-size:.8rem;line-height:1.5}.settings-section .field-error{display:flex;align-items:center;gap:6px;margin-top:8px;padding:8px 12px;background:#f8d7da;border-radius:4px;color:#721c24;font-size:.8rem}.settings-section .field-error .error-icon{font-size:.9rem}.settings-three-column-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:32px}.settings-four-column-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:32px}.settings-three-column-grid .settings-section,.settings-four-column-grid .settings-section{margin-bottom:0;padding-bottom:0;border-bottom:none}.settings-three-column-grid .settings-column,.settings-four-column-grid .settings-column{background:var(--card-background);border-radius:10px;padding:16px;border:1px solid var(--border-color);position:relative}.settings-three-column-grid .settings-section-header,.settings-four-column-grid .settings-section-header{margin-bottom:4px}.settings-three-column-grid .settings-section-header h4,.settings-four-column-grid .settings-section-header h4{font-size:.9rem;margin-bottom:0;color:var(--text-primary)}.settings-four-column-grid .settings-column{position:relative}.settings-four-column-grid .settings-column{display:flex;flex-direction:column}.settings-four-column-grid .settings-section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:8px}.settings-four-column-grid .settings-section-header h4{font-size:.9rem;padding-right:0;display:flex;align-items:center;gap:5px;flex:1;min-width:0}.settings-header-toggle{flex-shrink:0;display:flex;align-items:center;cursor:pointer;position:relative;margin-top:1px}.settings-header-toggle input[type=checkbox]{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.settings-four-column-grid .settings-form-group label{font-size:.78rem}.settings-three-column-grid .settings-subsection,.settings-four-column-grid .settings-subsection{margin-top:10px;padding:10px;position:relative}.settings-three-column-grid .settings-form-group,.settings-four-column-grid .settings-form-group{margin-bottom:10px}.settings-three-column-grid .settings-form-group label,.settings-four-column-grid .settings-form-group label{font-size:.72rem}.settings-three-column-grid .settings-input,.settings-three-column-grid .settings-select,.settings-four-column-grid .settings-input,.settings-four-column-grid .settings-select{padding:6px 8px;font-size:.75rem}.settings-three-column-grid .settings-input-wrapper .input-prefix,.settings-four-column-grid .settings-input-wrapper .input-prefix{left:8px;font-size:.75rem}.settings-three-column-grid .settings-input-wrapper .input-suffix,.settings-four-column-grid .settings-input-wrapper .input-suffix{right:8px;font-size:.75rem}.settings-three-column-grid .settings-input-wrapper .settings-input,.settings-four-column-grid .settings-input-wrapper .settings-input{padding-left:20px}.settings-three-column-grid .settings-input-wrapper .settings-input:has(+.input-suffix),.settings-four-column-grid .settings-input-wrapper .settings-input:has(+.input-suffix){padding-right:20px}.reminder-days-list.compact{margin-bottom:8px}.reminder-days-list.compact .reminder-day-tag{padding:4px 8px;font-size:.75rem}.add-reminder-day.compact{flex-direction:column;gap:6px}.add-reminder-day.compact .settings-input{width:100%}.tax-manual-notice.compact{padding:8px;margin-top:8px}.tax-manual-notice.compact p{font-size:.75rem}.info-tooltip{display:inline-flex;align-items:center;justify-content:center;margin-left:5px;width:14px;height:14px;border-radius:50%;background:var(--border-color);color:var(--text-secondary);font-size:.65rem;font-style:normal;cursor:default;position:relative;vertical-align:middle;line-height:1}.info-tooltip .tooltip-text{display:none;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--card-background);border:1px solid var(--border-color);color:var(--text-primary);font-size:.75rem;font-weight:400;padding:6px 10px;border-radius:6px;white-space:normal;width:200px;line-height:1.4;box-shadow:0 4px 12px #0003;z-index:100;pointer-events:none}.info-tooltip:hover .tooltip-text{display:block}.settings-actions{display:flex;gap:12px;padding-top:16px;border-top:1px solid #e9ecef;margin-top:8px}.settings-footer{margin-top:16px;padding-top:12px;border-top:1px solid #e9ecef}.last-updated{color:#6c757d;font-size:.75rem}@media(max-width:1024px){.settings-three-column-grid{grid-template-columns:repeat(2,1fr)}.settings-three-column-grid .settings-column:last-child{grid-column:span 2}}@media(max-width:768px){.billing-settings{padding:16px}.settings-three-column-grid{grid-template-columns:1fr}.settings-three-column-grid .settings-column:last-child{grid-column:span 1}.settings-form-row{grid-template-columns:1fr}.settings-input-narrow{width:100%}.toggle-description{margin-left:0;margin-top:12px}.settings-actions{flex-direction:column}.settings-actions .btn{width:100%}}.package-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.package-stats .stat-card{background:var(--card-background, #fffdf9);border-radius:12px;padding:20px;text-align:center;box-shadow:0 1px 3px #00000014;border:1px solid transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:all .2s ease}.package-stats .stat-card:hover{border-color:var(--accent-orange-hover)}.package-stats .stat-card.highlight{background:linear-gradient(135deg,var(--accent-orange) 0%,var(--accent-orange-hover) 100%);color:var(--text-inverse, #fff);border-color:var(--accent-orange-hover)}.package-stats .stat-card.highlight:hover{box-shadow:0 4px 16px #f4a2614d}.package-stats .stat-value{display:block;font-size:2rem;font-weight:700;line-height:1.2;margin-bottom:8px}.package-stats .stat-label{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);font-weight:600}.package-stats .stat-card.highlight .stat-label{color:#ffffffd9}@media(max-width:1200px){.package-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.package-stats{grid-template-columns:1fr}.package-stats .stat-card{padding:16px}.package-stats .stat-value{font-size:1.75rem}}.package-view-tabs{display:flex;gap:8px;border-bottom:2px solid var(--border-primary);margin-bottom:24px;padding-bottom:0}.package-view-tabs .view-tab{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;background:none;border:none;border-bottom:3px solid transparent;color:var(--text-secondary);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;margin-bottom:-2px;position:relative;white-space:nowrap}.package-view-tabs .view-tab:hover{color:var(--text-primary)}.package-view-tabs .view-tab.active{color:var(--accent-orange);border-bottom-color:var(--accent-orange)}.package-view-tabs .view-tab .tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;background:var(--bg-tertiary);color:var(--text-secondary);border-radius:10px;font-size:.75rem;font-weight:600}.package-view-tabs .view-tab.active .tab-count{background:var(--accent-orange);color:var(--text-inverse, #fff)}@media(max-width:768px){.package-view-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.package-view-tabs .view-tab{padding:12px 16px;flex-shrink:0}}.modal-container{background:var(--modal-bg, white);border-radius:8px;width:90%;max-width:500px;box-shadow:var(--shadow-xl, 0 20px 25px -5px rgba(0, 0, 0, .1));padding:0;display:flex;flex-direction:column;max-height:90vh;overflow:hidden}.package-template-modal{max-width:550px}.package-template-form{display:flex;flex:1;flex-direction:column;min-height:0}.package-template-modal .modal-body{min-height:0;-webkit-overflow-scrolling:touch}.confirm-modal{max-width:450px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border-primary, #e5e7eb);flex-shrink:0}.modal-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary, #111827)}.modal-close-btn{background:none;border:none;color:var(--text-secondary, #6b7280);font-size:1.5rem;line-height:1;cursor:pointer;padding:4px 8px;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:4px;transition:all .2s ease;flex-shrink:0}.modal-close-btn:hover{background:var(--hover-bg, #f3f4f6);color:var(--text-primary, #111827)}.modal-close-btn:active{background:var(--bg-tertiary, #e5e7eb)}.modal-body{padding:24px;overflow-y:auto;flex:1}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid var(--border-primary, #e5e7eb);background:var(--surface-secondary, #f9fafb);flex-shrink:0}.modal-body .form-group{margin-bottom:18px}.modal-body .form-group label{display:block;margin-bottom:6px;font-size:.875rem;font-weight:500;color:var(--text-primary, #111827)}.modal-body .form-control{width:100%;padding:10px 12px;border:1px solid var(--input-border, #d1d5db);border-radius:6px;font-size:.875rem;background:var(--input-bg, #ffffff);color:var(--text-primary, #111827);transition:all .2s ease;font-family:inherit}.modal-body .form-control:focus{outline:none;border-color:var(--accent-orange, #FE6B34);box-shadow:0 0 0 3px var(--border-focus, rgba(254, 107, 52, .1))}.modal-body .form-control:disabled{background:var(--bg-tertiary, #f3f4f6);color:var(--text-secondary, #6b7280);cursor:not-allowed}.modal-body textarea.form-control{resize:vertical;min-height:80px}.modal-body .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.modal-body .form-control.error{border-color:var(--error-border, #fecaca);background:var(--error-bg, #fee2e2)}.modal-body .form-control.error:focus{border-color:var(--error-color, #ef4444);box-shadow:0 0 0 3px var(--error-border, rgba(239, 68, 68, .2))}.modal-body .error-text{display:block;margin-top:4px;font-size:.75rem;color:var(--error-color, #ef4444);font-weight:500}.modal-body .form-hint{display:block;margin-top:4px;font-size:.75rem;color:var(--text-secondary, #6b7280);font-style:italic}.price-per-session-info{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--surface-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;margin-top:16px;margin-bottom:4px}.price-per-session-info .info-label{font-size:.875rem;font-weight:500;color:var(--text-secondary, #6b7280)}.price-per-session-info .info-value{font-size:1rem;font-weight:600;color:var(--accent-orange, #FE6B34)}.price-per-session-info .info-value.warning-value{color:var(--warning-color, #d97706)}.price-warning-notice{padding:10px 14px;background:var(--warning-bg, #fffbeb);border:1px solid var(--warning-border, #fcd34d);border-radius:6px;margin-top:8px}.price-warning-notice .warning-text{font-size:.8125rem;color:var(--warning-text, #92400e);line-height:1.4}@media(max-width:640px){.modal-container{width:95%;max-width:none;max-height:95vh}.package-template-modal{margin:0}.modal-body .form-row{grid-template-columns:1fr}.modal-footer{flex-direction:column-reverse}.modal-footer .btn{width:100%}}.packages-table-container{width:100%;overflow-x:auto;border-radius:8px;border:1px solid var(--border-primary, #E5E0EC);background:var(--card-background, #fffdf9)}.packages-table{width:100%;border-collapse:collapse;font-size:.875rem}.packages-table thead{background:var(--table-header-bg, #F8F6FA);border-bottom:2px solid var(--border-primary, #E5E0EC)}.packages-table thead th{padding:14px 16px;text-align:left;font-weight:600;color:var(--text-primary, #46375B);font-size:.8125rem;text-transform:uppercase;letter-spacing:.5px}.packages-table thead th.numeric{text-align:right}.packages-table tbody tr{border-bottom:1px solid var(--border-primary, #E5E0EC);transition:background-color .2s ease}.packages-table tbody tr:hover{background:var(--table-row-hover)}.packages-table tbody tr.expiring-soon{background:#f59e0b0d}.packages-table tbody tr.expiring-soon:hover{background:#f59e0b1a}.packages-table tbody td{padding:14px 16px;color:var(--text-primary, #46375B);vertical-align:middle}.packages-table tbody td.numeric{text-align:right;font-weight:500}.packages-table .client-cell{font-weight:500}.packages-table .client-name{display:block;color:var(--accent-orange, #f4a261);font-weight:600}.sessions-display{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.sessions-count{font-weight:600;color:var(--text-primary, #46375B);font-size:.95rem}.usage-bar{width:120px;height:6px;background:var(--bg-tertiary, #F0EDF4);border-radius:3px;overflow:hidden}.usage-fill{display:block;height:100%;background:linear-gradient(90deg,var(--accent-orange, #f4a261),var(--accent-orange-hover, #e79552));border-radius:3px;transition:width .3s ease}.packages-table .expiring-warning{color:var(--warning-color, #f59e0b);font-weight:500}.packages-table .days-left{display:block;font-size:.75rem;color:var(--warning-color, #f59e0b);margin-top:2px}.packages-table .badge{display:inline-block;padding:4px 10px;border-radius:4px;font-size:.75rem;font-weight:600;white-space:nowrap}.packages-table .badge-success{background:var(--success-bg, #d1fae5);color:var(--success-text, #065f46);border:1px solid var(--success-border, #a7f3d0)}.packages-table .badge-info{background:var(--info-bg, #FFEEE7);color:var(--info-text, #D14A1C);border:1px solid var(--info-border, #FFB89E)}.packages-table .badge-secondary{background:var(--bg-tertiary, #F0EDF4);color:var(--text-secondary, #5A4A72);border:1px solid var(--border-primary, #E5E0EC)}.empty-state{padding:48px 24px;text-align:center;background:var(--surface-secondary, #F8F6FA);border-radius:8px;border:2px dashed var(--border-primary, #E5E0EC)}.empty-state p{margin:0 0 16px;color:var(--text-secondary, #5A4A72);font-size:.95rem}.empty-state .btn{margin-top:8px}.templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-top:24px}.template-card{padding:20px;background:var(--card-background, #fffdf9);border:1px solid transparent;border-radius:12px;box-shadow:0 1px 3px #00000014;transition:all .2s ease}.template-card:hover{border-color:var(--accent-orange-hover);box-shadow:0 4px 12px #0000001a}.template-card.inactive{opacity:.7;background:var(--surface-secondary, #F8F6FA)}.template-card .template-header{display:flex;justify-content:space-between;align-items:start;gap:12px;margin-bottom:12px}.template-card .template-header h4{margin:0;color:var(--text-primary, #46375B);font-size:1.1rem;flex:1}.template-card .template-description{margin:0 0 16px;color:var(--text-secondary, #5A4A72);font-size:.875rem;line-height:1.5}.template-details{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:12px 0;border-top:1px solid var(--border-primary, #E5E0EC);border-bottom:1px solid var(--border-primary, #E5E0EC);margin-bottom:16px}.detail-item{display:flex;flex-direction:column;gap:2px}.detail-label{font-size:.75rem;font-weight:600;color:var(--text-secondary, #5A4A72);text-transform:uppercase;letter-spacing:.5px}.detail-value{font-size:1rem;font-weight:600;color:var(--text-primary, #46375B)}.template-actions{display:flex;gap:8px;flex-wrap:wrap}.template-actions .btn-sm{flex:1;min-width:100px;font-size:.8rem;padding:6px 12px}.view-header{margin-bottom:24px}.view-title{display:flex;align-items:center;gap:12px;margin-bottom:16px}.view-title h3{margin:0;color:var(--text-primary, #46375B);font-size:1.25rem}.count-badge{display:inline-block;padding:4px 12px;background:var(--bg-tertiary, #F0EDF4);color:var(--text-secondary, #5A4A72);border-radius:20px;font-size:.8rem;font-weight:600;white-space:nowrap}.count-badge.sessions{background:var(--primary-light, #FFEEE7);color:var(--primary-dark, #D14A1C)}@media(max-width:1024px){.packages-table{font-size:.8125rem}.packages-table thead th,.packages-table tbody td{padding:10px 12px}.usage-bar{width:100px}}@media(max-width:768px){.templates-grid{grid-template-columns:1fr}.packages-table-container{border-radius:0;margin:0 -1rem;width:calc(100% + 2rem)}.usage-bar{width:80px}.template-details{grid-template-columns:1fr}}@media(max-width:640px){.packages-table{font-size:.75rem}.packages-table thead th{padding:8px 10px;font-size:.7rem}.packages-table tbody td{padding:8px 10px}.sessions-display{align-items:flex-start}.usage-bar{width:60px}.view-title{flex-wrap:wrap;gap:8px}.count-badge{padding:2px 8px;font-size:.7rem}}.template-creator{padding:20px;max-width:600px;background:var(--card-background);border-radius:16px;margin:0 auto}.template-creator-title{margin:0 0 24px;font-size:24px;font-weight:600;color:#111827}.template-creator-error{display:flex;align-items:center;gap:.5rem;padding:12px 16px;background:var(--error-bg, #fef2f2);border:1px solid var(--error-border, #fecaca);border-radius:6px;color:var(--error-text, #991b1b);font-size:.875rem;font-weight:500;margin-bottom:16px}.template-form-group{margin-bottom:16px}.template-form-row{display:flex;gap:16px;margin-bottom:16px}.template-form-row .template-form-group{flex:1;margin-bottom:0}.template-form-label{display:block;margin-bottom:6px;font-weight:600;font-size:14px;color:#374151}.template-form-input,.template-form-select{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;background-color:#fff;color:#111827;transition:border-color .2s,box-shadow .2s}.template-form-input:focus,.template-form-select:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.template-form-input::placeholder{color:#9ca3af}.template-form-textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;background-color:#fff;color:#111827;min-height:80px;resize:vertical;font-family:inherit}.template-form-textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.template-form-textarea::placeholder{color:#9ca3af}.template-variables-info{display:flex;align-items:flex-start;gap:10px;margin-bottom:16px;padding:12px 16px;background-color:var(--surface-hover);border:1px solid var(--border-color);border-radius:8px}[data-theme=dark] .template-variables-info{background-color:var(--surface-hover);border-color:var(--border-color)}.template-variables-title{margin:0 0 8px;font-weight:600;font-size:13px;color:var(--text-primary)}[data-theme=dark] .template-variables-title{color:var(--text-primary)}.template-variables-chips{display:flex;flex-wrap:wrap;gap:6px}.template-var-chip{display:inline-block;padding:3px 8px;border-radius:4px;font-size:11px;font-family:Courier New,monospace;font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none;transition:opacity .15s,transform .1s}.template-var-chip:hover{opacity:.8;transform:translateY(-1px)}.template-var-chip:active{transform:translateY(0)}.template-var-chip-1{background:#3b82f626;color:#60a5fa;border:1px solid rgba(59,130,246,.3)}.template-var-chip-2{background:#8b5cf626;color:#a78bfa;border:1px solid rgba(139,92,246,.3)}.template-var-chip-3{background:#10b98126;color:#34d399;border:1px solid rgba(16,185,129,.3)}.template-var-chip-4{background:#ec489926;color:#f472b6;border:1px solid rgba(236,72,153,.3)}.template-var-chip-5{background:#f59e0b26;color:#fbbf24;border:1px solid rgba(245,158,11,.3)}.template-var-chip-6{background:#3b82f626;color:#60a5fa;border:1px solid rgba(59,130,246,.3)}.template-section-title{margin:0 0 12px;font-size:15px;font-weight:600;color:#374151}.template-optional-label{font-weight:400;font-size:13px;color:var(--text-tertiary, #6b7280)}.template-sms-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:16px}.template-char-count{font-size:12px;color:#6b7280;margin-top:4px}.template-form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.template-submit-button{padding:10px 20px;background-color:#2563eb;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s}.template-submit-button:hover:not(:disabled){background-color:#1d4ed8}.template-submit-button:disabled{opacity:.6;cursor:not-allowed}.template-cancel-button{padding:10px 20px;background-color:#6b7280;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s}.template-cancel-button:hover{background-color:#4b5563}@media(max-width:640px){.template-sms-grid{grid-template-columns:1fr}}.template-editor-placeholder{height:300px;display:flex;align-items:center;justify-content:center;background:var(--input-bg, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;color:var(--text-tertiary, #6b7280);font-size:14px}.template-form-group .tox-tinymce{margin-bottom:4px;border:1px solid var(--input-border)}.template-form-group .tox .tox-statusbar{display:none}.template-form-input.input-error,.template-form-select.input-error{border-color:#dc2626}.template-field-error{display:block;margin-top:4px;font-size:12px;color:#dc2626}.template-roles-section{margin-bottom:16px}.template-role-checkboxes{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px}.template-role-checkbox{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:var(--text-primary, #374151);cursor:pointer}.template-role-checkbox input[type=checkbox]{accent-color:var(--accent-orange, #FE6B34);width:16px;height:16px;cursor:pointer}.questionnaire-builder{margin-top:8px}.questionnaire-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.questionnaire-tab{border:1px solid #d1d5db;background:#f9fafb;color:#374151;padding:8px 10px;border-radius:8px;font-size:13px;cursor:pointer}.questionnaire-builder-panel{margin-top:12px;padding:16px;border:1px solid var(--text-quaternary);border-radius:8px}.questionnaire-builder-question{border:1px solid #ddd;border-radius:8px;padding:10px;margin-top:10px}.questionnaire-builder-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.questionnaire-builder-field{margin-bottom:12px}.questionnaire-builder-label{display:block;margin-bottom:4px;font-weight:600}.questionnaire-builder-input{width:100%;padding:8px;border:1px solid #ccc;border-radius:4px;background:#fff;color:#333}.questionnaire-builder-required{margin-bottom:12px}.questionnaire-builder-check-label{display:flex;align-items:center;gap:8px}.questionnaire-builder-bottom-add{border-top:1px solid #e5e7eb;margin-top:12px;padding-top:10px}.questionnaire-builder-answer{margin-top:10px;padding:10px;border:1px solid #e5e7eb;border-radius:6px;background:#f9fafb}.questionnaire-builder-answer-value{margin-top:4px}.questionnaire-builder-answer-attachments{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.questionnaire-builder-answer-attachments a{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;border:1px solid #bfdbfe;background:#eff6ff;font-size:13px;color:#1e40af;text-decoration:none;font-weight:600}.questionnaire-builder-answer-attachments a:hover{background:#dbeafe;border-color:#93c5fd;color:#1e3a8a}.questionnaire-builder-answer-attachments a:visited{color:#1e40af}.questionnaire-readonly-section-description{margin-bottom:10px;color:#4b5563}.questionnaire-readonly-item{padding:12px 0;border-top:1px solid #e5e7eb}.questionnaire-readonly-item:first-of-type{border-top:0;padding-top:0}.questionnaire-readonly-question{font-weight:600;margin-bottom:6px}.questionnaire-readonly-answer{color:#111827;white-space:pre-wrap}.questionnaire-readonly-empty{color:#6b7280;padding:8px 0}[data-theme=dark] .questionnaire-builder-question{border-color:#4b5563}[data-theme=dark] .questionnaire-tab{background:#1f2937;border-color:#4b5563;color:#d1d5db}[data-theme=dark] .questionnaire-builder-label,[data-theme=dark] .questionnaire-builder-check-label{color:#f9fafb}[data-theme=dark] .questionnaire-builder-bottom-add{border-color:#4b5563}[data-theme=dark] .questionnaire-builder-answer{background:#1f2937;border-color:#4b5563}[data-theme=dark] .questionnaire-readonly-section-description{color:#9ca3af}[data-theme=dark] .questionnaire-readonly-item{border-color:#4b5563}[data-theme=dark] .questionnaire-readonly-answer{color:#f9fafb}[data-theme=dark] .questionnaire-readonly-empty{color:#9ca3af}[data-theme=dark] .questionnaire-builder-answer-attachments a{border-color:#334155;background:#1f2937;color:#e2e8f0}[data-theme=dark] .questionnaire-builder-answer-attachments a:hover{background:#334155;border-color:#475569;color:#f8fafc}[data-theme=dark] .questionnaire-builder-answer-attachments a:visited{color:#e2e8f0}.consent-form-creator-embedded{width:100%}.consent-form-creator-embedded .error-message{margin-bottom:1rem}.consent-form-embedded-actions{display:flex;justify-content:flex-end;padding-top:.75rem}.create-draft-banner{display:flex;align-items:center;background:var(--warning-bg, #fef9ec);border:1px solid var(--warning-border, #f5d87a);border-radius:8px;padding:.5rem .75rem;font-size:.83rem;color:var(--warning-text, #7a5c00);margin-bottom:1rem}.create-discard-draft{color:var(--text-secondary, #5b6570)!important;font-size:.82rem}.error-text{display:block;margin-top:4px;font-size:.75rem;color:var(--error-color, #ef4444)}.questionnaire-tabs{display:flex;gap:8px;margin-top:12px;overflow-x:auto;padding-bottom:6px}.questionnaire-tab{border:1px solid var(--border-primary, #d1d5db);background:var(--surface-secondary, #f8f9fa);color:var(--text-primary, #1f2937);border-radius:8px;padding:8px 12px;white-space:nowrap;cursor:pointer}.questionnaire-tab.active{background:var(--accent-orange, #FE6B34);color:var(--text-inverse, #fff);border-color:var(--accent-orange, #FE6B34)}.resource-library{padding:20px;max-width:1200px;margin:0 auto}.resource-library-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.resource-library-header h2{margin:0;color:var(--text-primary, #1f2937)}.upload-resource-button{background:var(--accent-orange);color:var(--text-inverse, #fff);border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-weight:500;transition:background-color .2s ease}.upload-resource-button:hover{background:var(--accent-orange-hover)}.resource-filters{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:20px;padding:15px;background:var(--surface-secondary, #f9fafb);border-radius:8px}.filter-section{display:flex;flex-direction:column;gap:5px}.filter-section label{font-weight:500;color:var(--text-primary, #1f2937);font-size:14px}.category-filter,.filter-section select{padding:8px 12px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;background:var(--input-bg, #fff);color:var(--text-primary, #1f2937);min-width:150px}.type-filters{display:flex;gap:8px;flex-wrap:wrap}.type-filter{background:var(--surface-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);padding:6px 12px;border-radius:12px;cursor:pointer;transition:all .2s ease;font-size:12px;color:var(--text-secondary, #6b7280)}.type-filter:hover{background:var(--surface-hover, #f3f4f6)}.type-filter.active{background:var(--chip-orange-bg);color:var(--accent-orange);border-color:var(--accent-orange)}.resource-filters .search-input{padding:.5rem .75rem;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;font-size:.875rem;min-width:200px;background:var(--input-bg, #fff);color:var(--text-primary, #1f2937)}.resource-filters .search-input::placeholder{color:var(--text-tertiary, #9ca3af)}.resource-filters .search-input:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.resource-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.empty-state{grid-column:1 / -1;text-align:center;padding:40px;color:var(--text-tertiary, #9ca3af)}.upload-first-resource-button{background:var(--accent-orange);color:var(--text-inverse, #fff);border:none;padding:12px 24px;border-radius:6px;cursor:pointer;font-weight:500;margin-top:10px;transition:background-color .2s ease}.upload-first-resource-button:hover{background:var(--accent-orange-hover)}.resource-card{background:var(--card-background, #fff);border:1px solid transparent;border-radius:12px;padding:20px;box-shadow:0 1px 3px #0000004d;transition:border-color .2s ease,box-shadow .2s ease;position:relative}.resource-card:hover{border-color:var(--accent-orange-hover)}.resource-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px}.resource-type-indicator{display:flex;align-items:center;gap:8px}.type-icon{font-size:20px;color:var(--text-primary, #1f2937)}.type-label{color:var(--text-inverse, #fff);padding:2px 8px;border-radius:12px;font-size:12px;font-weight:600;text-transform:capitalize}.type-label.pdf{background-color:var(--accent-orange)}.type-label.video{background-color:var(--info-color, #6366f1)}.type-label.link{background-color:var(--success-color, #22c55e)}.resource-actions{display:flex;gap:8px}.select-button,.open-button,.delete-button{padding:6px 12px;border-radius:6px;cursor:pointer;font-size:12px;font-weight:500;border:none;transition:background-color .2s ease}.select-button{background:var(--accent-orange);color:var(--text-inverse, #fff)}.select-button:hover{background:var(--accent-orange-hover)}.open-button{background:var(--success-color, #22c55e);color:var(--text-inverse, #fff)}.open-button:hover{background:var(--success-border, #16a34a)}.delete-button{background:var(--error-color, #ef4444);color:var(--text-inverse, #fff)}.delete-button:hover{background:var(--error-border, #dc2626)}.resource-content{flex:1}.resource-title{margin:0 0 10px;color:var(--text-primary, #1f2937);font-size:18px;line-height:1.3;overflow-wrap:anywhere;word-break:break-word}.resource-description{color:var(--text-secondary, #6b7280);margin-bottom:15px;line-height:1.5}.resource-metadata{display:flex;flex-direction:column;gap:5px;margin-bottom:15px}.metadata-item{font-size:12px;color:var(--text-tertiary, #9ca3af)}.metadata-item strong{color:var(--text-primary, #1f2937)}.resource-tags{display:flex;flex-wrap:wrap;gap:6px}.tag{background:var(--chip-orange-bg, #fff3ed);color:var(--accent-orange);padding:2px 8px;border-radius:12px;font-size:11px;font-weight:500}.delete-confirm-overlay{position:fixed;inset:0;background:var(--modal-overlay, rgba(0, 0, 0, .6));display:flex;align-items:center;justify-content:center;z-index:1000}.delete-confirm-dialog{background:var(--card-background, #fff);padding:24px;border-radius:12px;max-width:400px;width:90%;box-shadow:0 20px 60px #0000004d}.delete-confirm-dialog h4{margin:0 0 10px;color:var(--text-primary, #1f2937)}.delete-confirm-dialog p{margin:0 0 20px;color:var(--text-secondary, #6b7280)}.confirm-actions{display:flex;justify-content:flex-end;gap:10px}.cancel-button{padding:8px 16px;border-radius:6px;cursor:pointer;background:var(--surface-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);color:var(--text-primary, #1f2937);font-weight:500;transition:background-color .2s ease}.cancel-button:hover{background:var(--surface-hover, #f3f4f6)}.confirm-delete-button{background:var(--error-color, #ef4444);color:var(--text-inverse, #fff);border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-weight:500;transition:background-color .2s ease}.confirm-delete-button:hover{background:var(--error-border, #dc2626)}.confirm-delete-button:disabled{opacity:.5;cursor:not-allowed}.resource-upload .resource-form{display:flex;flex-direction:column;min-height:0}.file-upload-alternative{margin-top:10px;padding-top:10px;border-top:1px solid var(--border-primary, #e5e7eb)}.file-upload-alternative p{margin:0 0 8px;font-size:14px;color:var(--text-tertiary, #9ca3af)}.file-upload-alternative input{width:100%;padding:8px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;background:var(--input-bg, #fff);color:var(--text-primary, #1f2937)}.resource-form-embedded{display:flex;flex-direction:column;gap:.5rem}.resource-form-embedded .error-message{padding:12px 16px;font-weight:500;margin-bottom:1rem}.resource-form-actions{display:flex;justify-content:flex-end;padding-top:.75rem}.resource-selector-overlay{position:fixed;inset:0;background:var(--modal-overlay, rgba(0, 0, 0, .6));display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.resource-selector{background:var(--card-background, #fff);border-radius:12px;width:90%;max-width:800px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.resource-selector-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.resource-selector-header h3{margin:0;color:var(--text-primary, #1f2937)}.resource-selector-filters{display:flex;flex-wrap:wrap;gap:15px;padding:15px 20px;background:var(--surface-secondary, #f9fafb);border-bottom:1px solid var(--border-primary, #e5e7eb)}.selection-actions{display:flex;align-items:center;gap:15px;padding:15px 20px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.select-all-button,.deselect-all-button{background:var(--surface-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);padding:6px 12px;border-radius:6px;cursor:pointer;font-size:12px;color:var(--text-secondary, #6b7280);transition:background-color .2s ease}.select-all-button:hover,.deselect-all-button:hover{background:var(--surface-hover, #f3f4f6)}.selection-count{font-size:14px;color:var(--text-tertiary, #9ca3af);margin-left:auto}.resource-selector-list{flex:1;overflow-y:auto;padding:20px}.resource-selector-item{display:flex;align-items:flex-start;gap:15px;padding:15px;border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;margin-bottom:10px;cursor:pointer;transition:all .2s ease}.resource-selector-item:hover{background:var(--surface-hover, #f3f4f6)}.resource-selector-item.selected{background:var(--chip-orange-bg, #fff3ed);border-color:var(--accent-orange)}.resource-checkbox{margin-top:2px}.resource-info{flex:1}.resource-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.resource-icon{font-size:16px}.resource-selector .resource-title{font-weight:500;color:var(--text-primary, #1f2937);flex:1}.resource-type{color:var(--text-inverse, #fff);padding:2px 6px;border-radius:12px;font-size:12px;font-weight:600}.resource-type.pdf{background:var(--accent-orange)}.resource-type.video{background:var(--info-color, #6366f1)}.resource-type.link{background:var(--success-color, #22c55e)}.resource-selector .resource-description{color:var(--text-secondary, #6b7280);font-size:14px;margin-bottom:8px;line-height:1.4}.resource-meta{display:flex;gap:15px;font-size:12px;color:var(--text-tertiary, #9ca3af)}.resource-category{font-weight:500}.resource-tags{font-style:italic}.resource-selector-actions{display:flex;justify-content:flex-end;gap:10px;padding:20px;border-top:1px solid var(--border-primary, #e5e7eb)}.confirm-button{background:var(--accent-orange);color:var(--text-inverse, #fff);border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-weight:500;transition:background-color .2s ease}.confirm-button:hover{background:var(--accent-orange-hover)}.confirm-button:disabled{opacity:.5;cursor:not-allowed}.resource-card.opening{pointer-events:none;opacity:.7}.resource-opening-overlay{position:absolute;inset:0;background:var(--card-background, #fff);opacity:.9;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;border-radius:12px;z-index:10;color:var(--text-primary, #1f2937);font-weight:500}.opening-spinner{width:24px;height:24px;border:3px solid var(--border-primary, #e5e7eb);border-top-color:var(--accent-orange);border-radius:50%;animation:spin .8s linear infinite}@media(max-width:768px){.resource-grid{grid-template-columns:1fr}.resource-filters{flex-direction:column;gap:15px}.filter-section{width:100%}.category-filter,.search-input{min-width:auto;width:100%}.type-filters{justify-content:center}.resource-card-header{flex-direction:column;gap:10px}.resource-actions{align-self:flex-end}.resource-selector{width:95%;max-height:90vh}.resource-selector-filters{flex-direction:column;gap:10px}.selection-actions{flex-wrap:wrap}.resource-selector-item{flex-direction:column;gap:10px}.resource-checkbox{align-self:flex-start}}.client-invite-modal .modal-subtitle{margin-top:.25rem;font-size:.875rem;color:var(--text-secondary, #6b7280)}.client-invite-modal .invite-form,.client-invite-form .channel-selector{margin-bottom:1.5rem}.client-invite-form .channel-label{display:block;font-weight:600;color:var(--text-primary, #1f2937);margin-bottom:.75rem;font-size:.95rem}.client-invite-form .channel-options{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.client-invite-form .channel-option{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;border:2px solid var(--border-primary, #e5e7eb);border-radius:8px;background:var(--input-bg, #ffffff);cursor:pointer;transition:all .2s ease;font-size:.95rem;font-weight:500;color:var(--text-primary, #1f2937)}.client-invite-form .channel-option:hover{border-color:var(--accent-orange-hover, #e55a2b);background:var(--surface-hover, #f3f4f6)}.client-invite-form .channel-option.active{border-color:var(--accent-orange, #FE6B34);background:var(--warm-tint-bg, #fff7ed);color:var(--accent-orange, #FE6B34)}.client-invite-form .channel-icon{font-size:1.5rem}.client-invite-form .form-field{margin-bottom:1rem}.client-invite-form .form-field input,.client-invite-form .form-field textarea{width:100%;padding:.75rem;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;font-size:1rem;font-family:inherit;transition:border-color .2s ease;background:var(--input-bg, #ffffff);color:var(--text-primary, #1f2937)}.client-invite-form .form-field input:focus,.client-invite-form .form-field textarea:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.client-invite-form .form-field input:disabled,.client-invite-form .form-field textarea:disabled{background:var(--surface-secondary, #f9fafb);color:var(--text-tertiary, #9ca3af);cursor:not-allowed}.client-invite-form .form-field textarea{resize:vertical;min-height:80px}.client-invite-form .assign-trainer-select{width:100%;padding:.75rem;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;font-size:1rem;font-family:inherit;background-color:var(--input-bg, #ffffff);color:var(--text-primary, #1f2937);transition:border-color .2s ease;cursor:pointer}.client-invite-form .assign-trainer-select:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.client-invite-form .assign-trainer-select:disabled{background:var(--surface-secondary, #f9fafb);color:var(--text-tertiary, #9ca3af);cursor:not-allowed}.client-invite-form .error-message{display:flex;align-items:center;gap:.5rem;padding:12px 16px;background:var(--error-bg, #fef2f2);border:1px solid var(--error-border, #fecaca);border-radius:6px;color:var(--error-text, #991b1b);font-size:.875rem;font-weight:500;margin-bottom:1rem}.client-invite-form .success-message{background:var(--success-bg, #f0fdf4);color:var(--success-text, #166534);padding:.75rem 1rem;border-radius:6px;margin-bottom:1rem;border:1px solid var(--success-border, #bbf7d0);display:flex;align-items:center;gap:.5rem;animation:slideIn .3s ease-out;font-size:.9rem}.client-invite-form .success-icon{font-weight:700;font-size:1.1rem}.client-invite-form .sms-coming-soon-overlay{position:absolute;inset:0;z-index:10;display:flex;align-items:center;justify-content:center;background:var(--card-background, #ffffff);opacity:.92;border-radius:8px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.client-invite-form .sms-coming-soon-text{margin:0;font-size:15px;font-weight:600;color:var(--text-secondary, #6b7280);text-align:center}.client-invite-form-actions{display:flex;justify-content:flex-end;gap:.75rem;padding-top:.75rem}@media(max-width:480px){.client-invite-form .channel-options{grid-template-columns:1fr}}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.client-invite-modal .invitation-history-section{background:var(--surface-secondary, #f9fafb);border-radius:8px;overflow:hidden;border:1px solid var(--border-primary, #e5e7eb)}.client-invite-modal .history-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;padding:1rem;border:none;background:transparent;cursor:pointer;font-size:.95rem;font-weight:600;color:var(--text-primary, #1f2937);transition:background .2s ease}.client-invite-modal .history-toggle:hover{background:var(--surface-hover, #f3f4f6)}.client-invite-modal .toggle-icon{color:var(--text-secondary, #6b7280);font-size:.75rem}.client-invite-modal .invitation-history{border-top:1px solid var(--border-primary, #e5e7eb);padding:1rem;max-height:200px;overflow-y:auto}.client-invite-modal .history-list{display:flex;flex-direction:column;gap:.75rem}.client-invite-modal .history-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:var(--card-background, #ffffff);border-radius:6px;border:1px solid var(--border-primary, #e5e7eb);gap:.75rem}.client-invite-modal .history-info{flex:1;min-width:0}.client-invite-modal .history-contact{font-weight:500;color:var(--text-primary, #1f2937);margin-bottom:.25rem;font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-invite-modal .history-meta{display:flex;flex-wrap:wrap;gap:.5rem;font-size:.75rem;color:var(--text-secondary, #6b7280)}.client-invite-modal .history-channel{display:flex;align-items:center;gap:.25rem}.client-invite-modal .history-expiration{color:var(--warning-text, #92400e);font-weight:500}.client-invite-modal .history-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.client-invite-modal .status-expired{background:var(--error-bg, #fef2f2);color:var(--error-text, #991b1b)}.client-invite-modal .btn-resend{padding:.35rem .6rem;background:var(--success-color, #28a745);color:var(--text-inverse, #ffffff);border:none;border-radius:4px;cursor:pointer;font-size:.75rem;font-weight:500;transition:background .2s ease;display:flex;align-items:center;gap:.25rem;white-space:nowrap}.client-invite-modal .btn-resend:hover{background:var(--success-hover, #218838)}.client-invite-modal .btn-delete{padding:.35rem .5rem;background:var(--error-color, #dc3545);color:var(--text-inverse, #ffffff);border:none;border-radius:4px;cursor:pointer;font-size:.85rem;font-weight:700;transition:background .2s ease;min-width:28px;height:28px;display:flex;align-items:center;justify-content:center}.client-invite-modal .btn-delete:hover{background:var(--error-hover, #c82333)}.client-invite-modal .empty-state{text-align:center;padding:1rem;color:var(--text-secondary, #6b7280);font-size:.9rem}@media(max-width:480px){.client-invite-modal .history-item{flex-direction:column;align-items:flex-start}.client-invite-modal .history-actions{width:100%;justify-content:flex-start;margin-top:.5rem}}.client-invite-modal .btn-resend:disabled{opacity:.7;cursor:not-allowed}.client-invite-modal .btn-resend-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:btn-spin .6s linear infinite;vertical-align:middle}.add-animal-form{display:flex;flex-direction:column;gap:.75rem;background:var(--card-background);border:none;padding:1.5rem;border-radius:16px;min-width:0;box-sizing:border-box;width:100%}.aaf-layout{display:grid;grid-template-columns:120px 1fr;min-width:0;gap:1.25rem;align-items:start}.aaf-photo-col{display:flex;flex-direction:column;align-items:center;gap:.5rem}.aaf-photo-upload{width:120px;height:120px;border-radius:50%;border:2px dashed var(--border-primary, #d1d5db);background:var(--surface-hover, #f9fafb);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer;color:var(--text-secondary, #6b7280);font-size:.75rem;text-align:center;transition:border-color .2s,background .2s}.aaf-photo-upload:hover{border-color:var(--accent-orange);color:var(--accent-orange);background:var(--hover-bg, #f3f4f6)}.aaf-photo-preview{width:100%;height:100%;object-fit:cover;border-radius:50%}.aaf-photo-hint{font-size:.6rem;font-weight:600;letter-spacing:.03em;color:var(--text-tertiary, #9ca3af);text-transform:uppercase;text-align:center;margin:0}.aaf-fields{display:flex;flex-direction:column;gap:.625rem;min-width:0}.aaf-field{display:flex;flex-direction:column;gap:.25rem;min-width:0}.aaf-field label{font-size:.75rem;font-weight:600;color:var(--text-primary, #1e293b)}.aaf-field input,.aaf-field select{padding:.4rem .75rem;border:1px solid var(--border-primary, #d1d5db);border-radius:6px;font-size:.875rem;background:var(--input-bg, white);color:var(--text-primary, #374151);transition:border-color .15s,box-shadow .15s;width:100%;box-sizing:border-box;min-width:0}.aaf-field select.placeholder{color:var(--text-tertiary, #9ca3af)}.aaf-field select option{color:var(--text-primary, #374151)}.aaf-field input:focus,.aaf-field select:focus{outline:none;border-color:var(--accent-orange, #f4a261);box-shadow:0 0 0 3px #f4a26126}.aaf-field input.error,.aaf-field select.error{border-color:var(--error-color, #ef4444)}.aaf-row{display:grid;grid-template-columns:1fr 1fr;gap:.625rem;min-width:0}.aaf-input-with-unit{display:flex;border:1px solid var(--border-primary, #d1d5db);border-radius:6px;overflow:hidden;background:var(--input-bg, white)}.aaf-input-with-unit input{flex:1;border:none!important;background:transparent;padding:.4rem .75rem;font-size:.875rem;color:var(--text-primary, #374151);outline:none;box-shadow:none!important}.aaf-input-with-unit input.error{border:none!important}.aaf-input-with-unit:has(input.error){border-color:var(--error-color, #ef4444)}.aaf-unit-select{border:none!important;border-left:1px solid var(--border-primary, #d1d5db)!important;background:var(--surface-hover, #f9fafb)!important;color:var(--text-secondary, #6b7280)!important;padding:0 1.5rem 0 .75rem!important;font-size:.8rem!important;cursor:pointer;border-radius:0!important;width:auto!important}.aaf-input-with-unit:focus-within{border-color:var(--accent-orange, #f4a261);box-shadow:0 0 0 3px #f4a26126}.aaf-searchable-select{position:relative}.aaf-select-dropdown{position:absolute;top:100%;left:0;right:0;max-height:200px;overflow-y:auto;background:var(--input-bg, white);border:1px solid var(--border-primary, #d1d5db);border-top:none;border-radius:0 0 6px 6px;box-shadow:0 4px 6px #0000001a;z-index:100}.aaf-select-option{display:flex;flex-direction:column;gap:2px;padding:.625rem .75rem;cursor:pointer;transition:background-color .15s}.aaf-select-option:hover{background:var(--hover-bg, #f3f4f6)}.aaf-select-option.selected{background:var(--chip-orange-bg, #fff7ed)}.aaf-client-name{font-weight:500;color:var(--text-primary, #374151)}.aaf-client-email{font-size:.75rem;color:var(--text-secondary, #6b7280)}.aaf-select-empty{padding:.75rem;text-align:center;color:var(--text-secondary, #6b7280);font-size:.875rem}.aaf-loading-text{padding:.5rem;color:var(--text-secondary, #6b7280);font-size:.875rem}.aaf-error{display:block;font-size:.75rem;color:var(--error-color, #ef4444)}.aaf-submit-error{display:flex;align-items:center;gap:.5rem;padding:12px 16px;background:var(--error-bg, #fef2f2);border:1px solid var(--error-border, #fecaca);border-radius:6px;color:var(--error-text, #991b1b);font-size:.875rem;font-weight:500;margin-bottom:16px}.aaf-success{padding:.75rem;background:var(--success-bg, #f0fdf4);border:1px solid var(--success-border, #bbf7d0);border-radius:6px;color:var(--success-text, #166534);font-size:.875rem}.aaf-tag-input{display:flex;gap:.5rem}.aaf-tag-input input{flex:1}.aaf-tags-list{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.aaf-tag{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;background:var(--chip-orange-bg, #fff7ed);color:var(--accent-orange, #f4a261);border-radius:4px;font-size:.8125rem}.aaf-tag-remove{display:flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:none;background:transparent;color:var(--accent-orange, #f4a261);cursor:pointer;font-size:1rem;line-height:1;opacity:.7;transition:opacity .15s}.aaf-tag-remove:hover{opacity:1}.aaf-actions{display:flex;justify-content:flex-end;gap:.75rem}@media(max-width:600px){.aaf-layout{grid-template-columns:1fr}.aaf-photo-col{flex-direction:row;align-items:center;gap:1rem}.aaf-photo-upload{width:72px;height:72px;font-size:.65rem}.aaf-photo-upload svg{width:24px;height:24px}.aaf-row{grid-template-columns:1fr}}.user-menu{position:absolute;top:100%;right:0;margin-top:8px;width:256px;background-color:var(--bg-primary);border:1px solid var(--border-primary);border-radius:8px;box-shadow:var(--shadow-lg);z-index:50}.user-menu-header{padding:16px}.user-menu-info{display:flex;flex-direction:column}.user-menu-name{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:2px}.user-menu-email{font-size:12px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.user-menu-divider{height:1px;background-color:var(--border-primary);margin:0 8px}.user-menu-items{padding:8px}.user-menu-item{display:flex;align-items:center;gap:12px;width:100%;padding:8px 12px;border:none;background:none;text-align:left;font-size:14px;color:var(--text-primary);border-radius:6px;cursor:pointer;transition:background-color .2s}.user-menu-item:hover{background-color:var(--hover-bg)}.user-menu-item-danger{color:var(--error-color)}.user-menu-item-danger:hover{background-color:var(--error-bg)}.user-menu-icon{flex-shrink:0;color:var(--text-secondary)}.user-menu-item-danger .user-menu-icon{color:var(--error-color)}.user-avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background-color:#1d4ed8;color:#fff;font-weight:700;overflow:hidden;flex-shrink:0}.avatar-small{width:24px;height:24px;font-size:10px;font-weight:700}.notification-item{display:flex;align-items:flex-start;gap:12px;padding:16px 20px;border-bottom:1px solid var(--card-border);cursor:pointer;transition:background-color .2s ease;position:relative}.notification-item:hover{background-color:var(--surface-hover)}.notification-item:last-child{border-bottom:none}.notification-item.unread{background-color:var(--primary-light)}.notification-item.unread:hover{background-color:var(--surface-hover)}.notification-item-icon{flex-shrink:0;margin-top:2px}.notification-icon{display:block}.notification-icon.success{color:var(--success-color, #10b981)}.notification-icon.info{color:var(--primary-color)}.notification-icon.warning{color:var(--warning-color, #f59e0b)}.notification-icon.error{color:var(--error-color, #ef4444)}.notification-item-content{flex:1;min-width:0}.notification-item-message{margin:0 0 4px;font-size:14px;line-height:1.5;color:var(--text-primary);word-wrap:break-word}.notification-item.unread .notification-item-message{font-weight:500}.notification-item-time{font-size:12px;color:var(--text-tertiary)}.notification-item-unread-dot{position:absolute;top:20px;right:20px;width:8px;height:8px;background-color:var(--primary-color);border-radius:50%;flex-shrink:0}.notification-item:focus{outline:2px solid var(--primary-color);outline-offset:-2px}.notification-item:focus:not(:focus-visible){outline:none}.notification-list-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:400px;max-height:600px;background:var(--card-background);border:1px solid var(--card-border);border-radius:12px;box-shadow:0 10px 40px #00000026;display:flex;flex-direction:column;z-index:1000;overflow:hidden}.notification-list-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--card-border)}.notification-list-header h3{margin:0;font-size:18px;font-weight:600;color:var(--text-primary)}.mark-all-read-button{display:flex;align-items:center;gap:6px;background:none;border:none;color:var(--primary-color);font-size:14px;font-weight:500;cursor:pointer;padding:6px 12px;border-radius:6px;transition:all .2s ease}.mark-all-read-button:hover:not(:disabled){background-color:var(--primary-light)}.mark-all-read-button:disabled{opacity:.5;cursor:not-allowed}.notification-list-content{flex:1;overflow-y:auto;min-height:350px;max-height:500px;display:flex;flex-direction:column}.notification-list-loading,.notification-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;padding:20px 20px 80px;text-align:center;color:var(--text-tertiary)}.notification-list-loading p,.notification-list-empty p{margin:12px 0 4px;font-size:16px;font-weight:500;color:var(--text-secondary)}.notification-list-empty span{font-size:14px;color:var(--text-tertiary)}.load-more-button{width:100%;padding:12px;background:none;border:none;border-top:1px solid var(--card-border);color:var(--primary-color);font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:background-color .2s ease}.load-more-button:hover:not(:disabled){background-color:var(--surface-hover)}.load-more-button:disabled{opacity:.5;cursor:not-allowed}.notification-list-dropdown .icon-spin{animation:spin 1s linear infinite}.notification-list-content::-webkit-scrollbar{width:6px}.notification-list-content::-webkit-scrollbar-track{background:var(--bg-secondary)}.notification-list-content::-webkit-scrollbar-thumb{background:var(--text-tertiary);border-radius:3px}.notification-list-content::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.notification-bell-container{position:relative}.notification-bell-button{position:relative;background:none;border:none;cursor:pointer;padding:8px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:all .2s ease}.notification-bell-button:hover{background-color:var(--surface-hover);color:var(--text-primary)}.notification-bell-button:active{transform:scale(.95)}.notification-badge{position:absolute;top:4px;right:4px;background-color:#ef4444;color:#fff;font-size:12px;font-weight:600;padding:2px 5px;border-radius:10px;min-width:18px;height:18px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px #0000001a}@keyframes bell-ring{0%,to{transform:rotate(0)}10%,30%{transform:rotate(-10deg)}20%,40%{transform:rotate(10deg)}}.notification-bell-button.has-new{animation:bell-ring .5s ease-in-out}.theme-toggle{display:flex;align-items:center;justify-content:center;gap:8px;width:40px;height:40px;border:none;border-radius:8px;background-color:transparent;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.theme-toggle:hover{background-color:var(--hover-bg);color:var(--text-primary)}.theme-toggle:focus{outline:2px solid var(--primary-color);outline-offset:2px}.theme-toggle-icon{transition:transform .3s ease}.theme-toggle:hover .theme-toggle-icon{transform:rotate(15deg)}.theme-toggle-label{font-size:14px;font-weight:500}.theme-toggle:has(.theme-toggle-label){width:auto;padding:8px 12px}.brand-logo{display:flex;align-items:center}.brand-logo-image{max-height:32px;width:auto;object-fit:contain}.brand-logo-text{font-size:1.25rem;font-weight:700;color:var(--text-primary);letter-spacing:-.01em}.header{background-color:var(--body-background);height:64px;display:flex;align-items:center;position:sticky;top:0;z-index:40}.header-content{display:flex;justify-content:space-between;align-items:center;width:100%;padding:0 24px}.header-left{display:flex;align-items:center;gap:.75rem}.mobile-menu-toggle{display:none;border:0;border-radius:8px;background:transparent;width:40px;height:40px;padding:8px;cursor:pointer}.mobile-menu-toggle span{display:block;width:100%;height:2px;margin:4px 0;background-color:var(--text-primary)}.header-logo{display:flex;align-items:center}.logo-image{display:block;height:40px;width:auto}.logo-text{font-size:20px;font-weight:700;color:var(--text-primary)}.header-right{display:flex;align-items:center;gap:16px}.user-section{position:relative}.user-button{display:flex;align-items:center;gap:12px;padding:8px 12px;border:none;background:none;border-radius:8px;cursor:pointer;transition:background-color .2s}.user-button:hover{background-color:var(--hover-bg)}.user-avatar{width:32px;height:32px;border-radius:50%;background-color:var(--primary-color);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600}.user-info{display:flex;flex-direction:column;align-items:flex-start;text-align:left}.user-name{font-size:14px;font-weight:500;color:var(--text-primary);line-height:1.2}.user-role{font-size:12px;color:var(--text-secondary);line-height:1.2}.chevron{transition:transform .2s;color:var(--text-secondary)}.chevron-up{transform:rotate(180deg)}.chevron-down{transform:rotate(0)}@media(max-width:768px){.header-content{padding:0 16px}.mobile-menu-toggle{display:inline-flex;flex-direction:column;justify-content:center}.mobile-menu-toggle:hover{background-color:var(--hover-bg)}.user-info{display:none}.user-button{padding:8px}}.sidebar{width:256px;background-color:var(--card-background);display:flex;flex-direction:column;overflow-y:auto}.sidebar-nav{flex:1;padding:10px 0 16px}.sidebar-list{list-style:none;margin:0;padding:0}.sidebar-section{padding-top:8px}.sidebar-section+.sidebar-section{margin-top:8px;border-top:1px solid var(--border-primary);padding-top:12px}.sidebar-section-title{margin:0;padding:0 24px 6px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary)}.sidebar-link{display:flex;align-items:center;gap:12px;padding:12px 24px;color:var(--text-secondary);text-decoration:none;font-size:14px;font-weight:500;transition:all .2s;border-right:3px solid transparent}.sidebar-action{width:100%;border:0;background:transparent;cursor:pointer;text-align:left;font:inherit}.sidebar-link:hover{background-color:var(--hover-bg);color:var(--text-primary)}.sidebar-link-active{background-color:var(--primary-light);color:var(--primary-color);border-right-color:var(--primary-color)}.sidebar-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center}.sidebar-text{flex:1}.sidebar-alert-dot{width:8px;height:8px;border-radius:50%;background-color:var(--error-color, #ef4444);flex-shrink:0;margin-left:4px}@media(max-width:1024px){.sidebar{width:200px}}@media(max-width:768px){.sidebar{position:fixed;left:-256px;top:64px;height:calc(100dvh - 64px);min-height:calc(100vh - 64px);z-index:30;transition:left .3s;width:min(84vw,320px);box-shadow:var(--shadow-card)}.sidebar.sidebar-open{left:0}.sidebar-link{min-height:44px}.sidebar-section-title{font-size:12px}}.bug-report-modal-overlay{position:fixed;inset:0;background:#0000006b;z-index:1300;display:flex;align-items:center;justify-content:center;padding:16px}.bug-report-modal{width:min(460px,100%);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;box-shadow:0 18px 36px #00000040;padding:14px}.bug-report-header{display:flex;justify-content:space-between;align-items:center}.bug-report-header h4{margin:0}.bug-report-close{border:none;background:transparent;color:var(--text-secondary);font-size:16px;cursor:pointer}.bug-report-note{margin:8px 0;font-size:12px;color:var(--text-secondary)}.bug-report-textarea{width:100%;min-height:96px;resize:vertical;border:1px solid var(--border-color);border-radius:8px;padding:8px;font-family:inherit;font-size:13px}.bug-report-meta{margin:8px 0 0;font-size:11px;color:var(--text-secondary)}.bug-report-actions{margin-top:10px;display:flex;justify-content:flex-end;gap:8px}.bug-report-cancel,.bug-report-submit{border:none;border-radius:8px;padding:8px 12px;font-size:12px;font-weight:700;cursor:pointer}.bug-report-cancel{background:var(--bg-secondary);color:var(--text-primary)}.bug-report-submit{background:#d14f2f;color:#fff}.bug-report-submit:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.bug-report-modal-overlay{align-items:flex-end;padding:0}.bug-report-modal{width:100%;border-radius:14px 14px 0 0;border-left:none;border-right:none;border-bottom:none}}.client-scheduler-modal{width:min(95vw,960px);max-width:min(95vw,960px)}.client-scheduler-modal .modal-body{padding:1rem 1.25rem}.client-scheduler-modal .session-scheduler{padding:0;background:transparent;box-shadow:none;border-radius:0}.client-scheduler-modal .session-scheduler.calendly-style{max-width:100%}.client-scheduler-modal .scheduler-container{display:grid;grid-template-columns:300px minmax(0,1fr);gap:1.25rem;min-height:0}.client-scheduler-modal .scheduler-sidebar{min-width:0;max-height:100%;overflow:auto;background:var(--body-background);padding:1.25rem;border-radius:8px;border:1px solid transparent}.client-scheduler-modal .scheduler-main{min-width:0;overflow:auto;display:flex;flex-direction:column;gap:1rem}.client-scheduler-modal .calendar-container{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1rem 1.25rem;max-width:520px}.client-scheduler-modal .calendar-grid{width:100%;display:block}.client-scheduler-modal .calendar-weekdays,.client-scheduler-modal .calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.client-scheduler-modal .calendar-weekday{padding:.25rem;text-align:center;font-size:.6875rem;font-weight:600;color:#6b7280;background:#f9fafb;border:1px solid #e5e7eb;border-bottom:0}.client-scheduler-modal .calendar-day-cell{width:100%;height:0;padding-bottom:100%;position:relative;border:1px solid #e5e7eb}.client-scheduler-modal .calendar-day{position:absolute;top:0;left:0;width:100%;height:100%;border:0;background:var(--cal-day-background);color:#1f2937;font-size:.875rem;padding:4px;display:flex;align-items:flex-start;justify-content:center;font-weight:500;cursor:pointer;transition:all .2s;min-height:64px}.client-scheduler-modal .blocked-reason{font-size:9px;padding:1px 2px;bottom:1px;left:1px;right:1px}.client-scheduler-modal .calendar-day.unavailable{color:#d1d5db}.client-scheduler-modal .calendar-day.available:hover{background:var(--warm-tint-bg);color:#1f2937}.client-scheduler-modal .calendar-day.selected,.client-scheduler-modal .calendar-day.selected:hover{background:var(--accent-orange);color:#fff}.client-scheduler-modal .time-slots-container{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1rem}.client-scheduler-modal .time-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:.5rem}.client-scheduler-modal .time-slot{border:1px solid transparent;background:var(--card-background);color:var(--text-secondary)}.client-scheduler-modal .time-slot:hover{border-color:var(--chip-orange-border);background:var(--card-background);color:var(--text-primary)}.client-scheduler-modal .time-slot.selected{background:var(--accent-orange);color:#fff}.client-scheduler-modal .booking-form{border-top:1px solid #e5e7eb}[data-theme=dark] .client-scheduler-modal .modal-title,[data-theme=dark] .client-scheduler-modal .calendar-header h3,[data-theme=dark] .client-scheduler-modal .time-slots-container h4{color:#f5f3f7}[data-theme=dark] .client-scheduler-modal .calendar-container,[data-theme=dark] .client-scheduler-modal .time-slots-container{background:var(--body-background);border:none}[data-theme=dark] .client-scheduler-modal .calendar-nav{color:var(--text-tertiary)}[data-theme=dark] .client-scheduler-modal .calendar-nav:hover{background:var(--input-bg);color:#f5f3f7}[data-theme=dark] .client-scheduler-modal .calendar-weekday{background:var(--input-bg);border:none;color:var(--text-tertiary)}[data-theme=dark] .client-scheduler-modal .calendar-day-cell{border:none}[data-theme=dark] .client-scheduler-modal .calendar-day.available{color:#f5f3f7}[data-theme=dark] .client-scheduler-modal .calendar-day.available:hover{background:var(--accent-orange)}[data-theme=dark] .client-scheduler-modal .calendar-day.unavailable{color:#4d4365}[data-theme=dark] .client-scheduler-modal .booking-form{border-top-color:#362d4a}@media(max-width:1200px){.client-scheduler-modal .scheduler-container{grid-template-columns:1fr}}@media(max-width:768px){.client-scheduler-modal .scheduler-container{grid-template-columns:1fr}.client-scheduler-modal .scheduler-sidebar{min-width:100%}}.skip-link{position:absolute;top:-100%;left:6px;background:var(--text-primary, #1f2937);color:var(--text-inverse, #ffffff);padding:8px 16px;text-decoration:none;z-index:10000;border-radius:4px;font-size:14px;font-weight:500;transition:top .15s ease}.skip-link:focus{top:6px;outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px}.announcement-banners{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.announcement-banner{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;border-radius:8px;border:1px solid transparent;transition:all .2s ease}.announcement-info{background-color:var(--info-bg, #FFEEE7);border-color:var(--info-border, #FFB89E);color:var(--info-text, #D14A1C)}.announcement-warning{background-color:var(--warning-bg, #fef3c7);border-color:var(--warning-border, #fcd34d);color:var(--warning-text, #92400e)}.announcement-critical{background-color:var(--error-bg, #fee2e2);border-color:var(--error-border, #fecaca);color:var(--error-text, #991b1b)}.announcement-icon{flex-shrink:0;margin-top:1px}.announcement-body{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.announcement-title{font-size:14px;font-weight:600;line-height:1.4}.announcement-content{font-size:13px;font-weight:400;line-height:1.5;opacity:.9}.announcement-dismiss{flex-shrink:0;background:none;border:none;cursor:pointer;padding:4px;border-radius:4px;opacity:.6;transition:opacity .2s ease;color:inherit}.announcement-dismiss:hover{opacity:1}@media(max-width:640px){.announcement-banner{padding:10px 12px}.announcement-content{font-size:12px}}.layout{display:flex;flex-direction:column;height:100dvh;min-height:100vh}@keyframes layout-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.layout .skeleton-block{border-radius:4px;background:linear-gradient(90deg,var(--surface-hover) 25%,rgba(255,255,255,.15) 50%,var(--surface-hover) 75%);background-size:200% 100%;animation:layout-skeleton-shimmer 1.4s ease-in-out infinite}.layout-body{display:flex;flex:1;overflow:hidden}.layout-main{flex:1;display:flex;flex-direction:column;overflow:hidden}.layout-content{flex:1;padding:clamp(.875rem,2vw,1.5rem);overflow-y:auto;background-color:var(--body-background);margin:clamp(.5rem,1.25vw,1rem);border-radius:8px;padding-bottom:0;margin-bottom:0;outline:none}.layout-sidebar-backdrop{display:none}body.sidebar-open-lock{overflow:hidden}@media(max-width:768px){.layout-body{position:relative}.layout-sidebar-backdrop{display:block;position:fixed;inset:64px 0 0;z-index:25;border:0;background:#0f172a73}.layout-content{margin:8px;padding:16px}}.invite-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--body-background, #f8f6fa);padding:2rem 1rem}.invite-wrapper{width:100%;max-width:480px;display:flex;flex-direction:column;align-items:center;gap:1rem}.invite-logo img{height:120px;width:auto}.invite-card{width:100%;background:var(--card-background, #ffffff);border:1px solid transparent;border-radius:12px;box-shadow:0 1px 3px #00000014;padding:28px}.invite-card-header{text-align:center;margin-bottom:24px}.invite-title{font-size:1.5rem;font-weight:700;color:var(--text-primary, #2c3e45);margin:0 0 6px}.invite-subtitle{font-size:.9375rem;color:var(--text-secondary, #7a8a8f);margin:0;line-height:1.5}.invite-form{display:flex;flex-direction:column;gap:1.25rem}.invite-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.invite-field{display:flex;flex-direction:column;gap:.375rem}.invite-label{font-size:.9375rem;font-weight:600;color:var(--text-primary, #2c3e45)}.invite-required{color:var(--error-color, #dc2626)}.invite-optional{font-weight:400;color:var(--text-tertiary, #9ea9ad)}.invite-input{width:100%;padding:.875rem 1.25rem;background:var(--input-bg, #f9fafb);border:1px solid var(--border-primary, #c8c1d2);border-radius:12px;font-size:1rem;color:var(--text-primary, #2c3e45);transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box}.invite-input::placeholder{color:var(--text-tertiary, #9ea9ad)}.invite-input:focus{outline:none;border-color:var(--accent-orange, #fe6b34);box-shadow:0 0 0 3px #f4a26126}.invite-input:disabled{opacity:.6;cursor:not-allowed}.invite-input-error{border-color:var(--error-color, #dc2626)!important}.invite-input-error:focus{box-shadow:0 0 0 3px #dc26261f}.invite-hint{font-size:.8125rem;color:var(--text-tertiary, #9ea9ad);margin-top:-.5rem}.invite-field-error{font-size:.8125rem;color:var(--error-color, #dc2626)}.invite-error{padding:.75rem 1rem;background:var(--error-bg, rgba(239, 68, 68, .1));border:1px solid var(--error-border, rgba(239, 68, 68, .3));border-radius:10px;color:var(--error-color, #ef4444);font-size:.875rem}.invite-btn-wrapper{position:relative}.invite-btn{width:100%;padding:1rem;background:var(--accent-orange, #fe6b34);color:#1a1a1a;border:none;border-radius:999px;font-size:1.0625rem;font-weight:700;cursor:pointer;transition:background .2s ease,transform .1s ease}.invite-btn:hover:not(:disabled){background:var(--accent-orange-hover, #e55a2b);transform:translateY(-1px)}.invite-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.invite-btn-tooltip{display:none;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:var(--text-primary, #2c3e45);color:var(--text-inverse, #ffffff);font-size:.8125rem;padding:6px 12px;border-radius:6px;white-space:nowrap;pointer-events:none}.invite-btn-wrapper:hover .invite-btn-tooltip{display:block}.invite-success{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1.5rem 0;text-align:center;color:var(--success-color, #22c55e)}.invite-success h2{font-size:1.25rem;font-weight:700;color:var(--text-primary, #2c3e45);margin:0}.invite-success p{color:var(--text-secondary, #7a8a8f);font-size:.9375rem;line-height:1.6;margin:0}.invite-footer{font-size:.9rem;color:var(--text-tertiary, #9ea9ad);margin:0}.invite-footer-link{color:var(--text-primary, #2c3e45);font-weight:600;text-decoration:none}.invite-footer-link:hover{color:var(--accent-orange, #fe6b34)}@media(max-width:480px){.invite-page{padding:1rem}.invite-card{padding:20px}.invite-form-row{grid-template-columns:1fr}}.invite-validating{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem 0;color:var(--text-secondary, #7a8a8f);font-size:.9375rem}.invite-validating-spinner{width:32px;height:32px;border:3px solid var(--border-primary, #c8c1d2);border-top-color:var(--accent-orange, #fe6b34);border-radius:50%;animation:invite-spin .8s linear infinite}@keyframes invite-spin{to{transform:rotate(360deg)}}.invite-invalid-icon{display:flex;justify-content:center;margin-bottom:.75rem;color:var(--error-color, #ef4444)}.task-list{padding:20px;max-width:1200px;margin:0 auto}.task-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.task-list-header h2{margin:0;color:var(--text-primary, #1f2937)}.create-task-button{background:var(--accent-orange);color:var(--text-inverse, #ffffff);border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-weight:500;transition:background-color .2s ease}.create-task-button:hover{background:var(--accent-orange-hover)}.task-filters{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}.filter-button{background:var(--bg-tertiary, #f3f4f6);border:1px solid var(--border-primary, #e5e7eb);padding:8px 16px;border-radius:20px;cursor:pointer;transition:all .2s ease;font-size:14px;color:var(--text-primary, #1f2937)}.filter-button:hover{background:var(--surface-hover, #e5e7eb)}.filter-button.active{background:var(--accent-orange);color:var(--text-inverse, #ffffff);border-color:var(--accent-orange)}.task-grid{display:flex;flex-direction:column;gap:20px;align-items:stretch}.task-grid>.task-card{height:100%}.empty-state{grid-column:1 / -1;text-align:center;padding:40px;color:var(--text-secondary, #6b7280)}.create-first-task-button{background:var(--accent-orange);color:var(--body-background);border:none;padding:12px 24px;border-radius:6px;cursor:pointer;font-weight:500;margin-top:10px}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px;min-height:200px;color:var(--text-secondary, #6b7280)}.error-message{background:var(--error-bg, #fef2f2);color:var(--error-text, #991b1b);border:1px solid var(--error-border, #fecaca);padding:15px;border-radius:6px;margin-bottom:20px}.retry-button{background:var(--card-background);color:var(--error-color, #e74c3c);border:1px solid var(--error-border, #fecaca);padding:8px 16px;border-radius:4px;cursor:pointer;margin-top:10px}.task-card{background:var(--card-background);border:1px solid var(--card-border);border-radius:12px;overflow:hidden;transition:border-color .2s,box-shadow .2s;cursor:pointer}.task-card:hover{border-color:var(--accent-orange);box-shadow:0 2px 12px #0000001f}.task-card.overdue{border-color:var(--error-color)}.tc-row{display:flex;align-items:center;gap:2rem;padding:1.1rem 1.5rem}.tc-title-col{display:flex;flex-direction:column;flex:1;min-width:0}.tc-col-label{font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:5px}.tc-title{font-size:.9rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tc-col{display:flex;flex-direction:column;min-width:110px;flex-shrink:0}.tc-due-value{font-size:.875rem;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:6px}.tc-overdue-text{color:var(--error-color)}.tc-overdue-badge{display:inline-block;padding:2px 6px;border-radius:4px;font-size:.6rem;font-weight:700;letter-spacing:.06em;background:var(--error-bg);color:var(--error-color)}.tc-status-badge{display:inline-block;padding:3px 10px;border-radius:6px;font-size:.65rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;width:fit-content}.tc-status-assigned{background:var(--warm-tint-bg);border:1px solid var(--warm-tint-border);color:var(--accent-orange)}.tc-status-in-progress{background:var(--info-bg, rgba(59, 130, 246, .12));color:var(--info-color, #3b82f6)}.tc-status-completed{background:var(--success-bg);color:var(--success-color)}.tc-desc-col{flex:1;min-width:0;font-size:.875rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:1rem}.tc-actions-col{display:flex;align-items:center;gap:.75rem;flex-shrink:0;margin-left:auto}.tc-action-btn{padding:4px 14px;border-radius:6px;font-size:.75rem;font-weight:600;border:none;cursor:pointer;transition:opacity .15s}.tc-action-btn:disabled{opacity:.5;cursor:not-allowed}.tc-btn-start{background:var(--warm-tint-bg);border:1px solid var(--warm-tint-border);color:var(--accent-orange)}.tc-btn-start:hover:not(:disabled){opacity:.8}.tc-btn-complete{background:var(--success-bg);color:var(--success-color)}.tc-btn-complete:hover:not(:disabled){opacity:.8}.tc-expand{display:flex;align-items:center;color:var(--text-secondary)}.tc-expand-chevron{font-size:1rem;line-height:1;transition:transform .2s}.task-card.expanded .tc-expand-chevron{transform:rotate(-90deg)}.tc-details{padding:1rem 1.5rem 1.25rem;border-top:1px solid var(--card-border);display:flex;flex-direction:column;gap:1rem;animation:tcSlideDown .2s ease-out}@keyframes tcSlideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.tc-detail-section{display:flex;flex-direction:column;gap:6px}.tc-detail-label{font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary)}.tc-detail-section p{margin:0;font-size:.875rem;color:var(--text-primary);line-height:1.6}.tc-meta{display:flex;gap:1.5rem;font-size:.75rem;color:var(--text-tertiary);padding-top:.5rem;border-top:1px solid var(--card-border)}.task-resources{margin-bottom:15px}.task-resources h4{margin:0 0 8px;font-size:14px;color:var(--text-primary)}.resource-list{display:flex;flex-wrap:wrap;gap:8px}.resource-link{display:inline-flex;align-items:center;padding:4px 8px;border-radius:4px;text-decoration:none;font-size:12px;font-weight:500;transition:opacity .2s}.resource-link:hover{opacity:.8}.resource-link.pdf{background:var(--error-color, #e74c3c);color:var(--text-inverse, #ffffff)}.resource-link.video{background:var(--purple-text, #8b79b3);color:var(--text-inverse, #ffffff)}.resource-link.link{background:var(--info-color, #3b82f6);color:var(--text-inverse, #ffffff)}.task-form{display:flex;flex-direction:column;gap:12px}.task-form .form-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.task-form .form-row .form-group{min-width:0}.form-group label{margin-bottom:5px;font-weight:500;color:var(--text-primary, #1f2937)}.form-group input,.form-group textarea,.form-group select{padding:10px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;font-size:14px;background:var(--input-bg);color:var(--text-primary, #1f2937)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--border-focus, #f4a261);box-shadow:0 0 0 2px var(--accent-orange-btn-background, rgba(242, 153, 83, .1))}.resources-section{margin-top:4px}.selected-resources{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.selected-resource{display:flex;align-items:center;background:var(--bg-tertiary, #f3f4f6);padding:6px 10px;border-radius:20px;font-size:12px;gap:8px}.resource-type{background:var(--accent-orange);color:var(--text-inverse, #ffffff);padding:2px 6px;border-radius:10px;font-size:12px;font-weight:700}.resource-title{color:var(--text-primary, #1f2937)}.remove-resource{background:none;border:none;color:var(--error-color, #e74c3c);cursor:pointer;font-size:16px;padding:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center}.add-resources-button{background:var(--bg-tertiary, #f3f4f6);border:1px dashed var(--border-primary, #e5e7eb);padding:10px 16px;border-radius:6px;cursor:pointer;color:var(--text-secondary, #6b7280);font-size:14px}.add-resources-button:hover{background:var(--surface-hover, #e5e7eb)}.task-progress{margin:20px 0}.task-progress h4{margin:0 0 15px;color:var(--text-primary, #1f2937)}.progress-bar-container{display:flex;align-items:center;gap:10px;margin-bottom:15px}.progress-bar{flex:1;height:8px;background:var(--bg-tertiary, #e5e7eb);border-radius:4px;overflow:hidden}.progress-fill{height:100%;transition:width .3s ease}.progress-percentage{font-size:12px;font-weight:500;color:var(--text-secondary, #6b7280);min-width:35px}.progress-notes-section{margin-bottom:15px}.progress-notes-section label{display:block;margin-bottom:5px;font-weight:500;color:var(--text-primary, #1f2937)}.progress-notes-section textarea{width:100%;padding:10px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;resize:vertical;font-family:inherit;background:var(--input-bg);color:var(--text-primary, #1f2937)}.update-notes-button{background:var(--accent-orange);color:var(--text-inverse, #ffffff);border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:12px;margin-top:8px;transition:all .2s ease}.update-notes-button:hover{background:var(--accent-orange-hover)}.update-notes-button:disabled{opacity:.5;cursor:not-allowed}.completion-info{background:var(--success-bg);padding:10px;border-radius:6px;margin-bottom:10px}.completion-info p{margin:0;color:var(--success-color);font-size:12px}.progress-metadata{font-size:12px;color:var(--text-secondary, #6b7280)}.progress-metadata p{margin:4px 0}.progress-loading,.progress-error{padding:15px;text-align:center;color:var(--text-secondary, #6b7280);font-size:14px}.progress-error{color:var(--error-color, #e74c3c)}@media(max-width:768px){.task-grid,.task-form .form-row{grid-template-columns:1fr}.task-filters{flex-direction:column;align-items:stretch}.filter-button{text-align:center}.task-actions{flex-direction:column;gap:10px}.status-actions{justify-content:center}}.status-tracker{display:flex;align-items:center;justify-content:space-between;max-width:400px;margin:20px 0}.status-step span{font-size:12px;color:var(--text-secondary, #6b7280);text-align:center;font-weight:500}.tc-media-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.tc-upload-toggle{padding:6px 14px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;background-color:var(--surface-secondary, #f9fafb);color:var(--text-primary, #374151);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.tc-upload-toggle:hover{background-color:var(--surface-hover, #f3f4f6);border-color:var(--accent-orange-hover, #f4a261)}.tc-upload-error{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;margin-bottom:12px;border-radius:8px;background-color:var(--error-bg, #fef2f2);color:var(--error-text, #991b1b);font-size:13px}.tc-upload-error p{margin:0}.tc-upload-error button{padding:4px 10px;border:none;border-radius:4px;background:transparent;color:var(--error-text, #991b1b);font-size:12px;cursor:pointer;font-weight:500}.tc-upload-error button:hover{background-color:var(--error-border, #fecaca)}.media-viewer{width:100%}.media-viewer.empty{display:flex;align-items:center;justify-content:center;min-height:200px}.media-empty{text-align:center;color:#6b7280}.media-empty-icon{margin-bottom:12px;opacity:.5}.media-empty p{margin:0;font-size:14px}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.media-item{background-color:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;transition:all .2s;position:relative}.media-item:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transform:translateY(-2px)}.media-preview{aspect-ratio:16/9;background-color:#f3f4f6;cursor:pointer;overflow:hidden;position:relative;display:flex;align-items:center;justify-content:center}.media-image{width:100%;height:100%;object-fit:cover;transition:transform .2s}.media-item:hover .media-image{transform:scale(1.05)}.media-video-preview{width:100%;height:100%;position:relative;display:flex;align-items:center;justify-content:center}.media-video{width:100%;height:100%;object-fit:cover}.media-play-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background-color:#000000b3;color:#fff;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;transition:all .2s}.media-item:hover .media-play-overlay{background-color:#000c;transform:translate(-50%,-50%) scale(1.1)}.media-file-preview{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#6b7280}.media-file-icon{color:#9ca3af}.media-file-type{font-size:12px;font-weight:600;color:#374151}.media-loading{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:#6b7280;font-size:14px;background-color:#f3f4f6}.media-info{padding:12px}.media-name{font-size:14px;font-weight:500;color:#1f2937;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.media-meta{display:flex;justify-content:space-between;font-size:12px;color:#6b7280}.media-controls{position:absolute;top:8px;right:8px;display:flex;gap:4px;opacity:0;transition:opacity .2s}.media-item:hover .media-controls{opacity:1}.media-control-btn{width:28px;height:28px;border:none;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.media-control-btn.download{background-color:#3b82f6e6;color:#fff}.media-control-btn.download:hover{background-color:#2563ebe6}.media-control-btn.delete{background-color:#ef4444e6;color:#fff}.media-control-btn.delete:hover{background-color:#dc2626e6}.media-modal{position:fixed;inset:0;background-color:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.media-modal-content{background-color:#fff;border-radius:12px;max-width:90vw;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.media-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e5e7eb}.media-modal-title{font-size:18px;font-weight:600;color:#1f2937;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:400px}.media-modal-close{padding:4px;background:none;border:none;color:#6b7280;cursor:pointer;border-radius:4px;transition:all .2s}.media-modal-close:hover{color:#374151;background-color:#f3f4f6}.media-modal-body{flex:1;display:flex;align-items:center;justify-content:center;padding:20px;overflow:hidden}.media-modal-image{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px}.media-modal-video{max-width:100%;max-height:100%;border-radius:8px}.media-modal-pdf{width:100%;height:70vh;border:none;border-radius:8px}.media-modal-file{text-align:center;color:#6b7280}.media-modal-file-icon{margin-bottom:16px;color:#9ca3af}.media-modal-file p{margin:0 0 20px;font-size:16px}.media-modal-download{padding:12px 24px;background-color:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.media-modal-download:hover{background-color:#2563eb}.media-modal-footer{padding:16px 20px;border-top:1px solid #e5e7eb;background-color:#f9fafb}.media-modal-info{display:flex;gap:8px;font-size:14px;color:#6b7280;justify-content:center}.media-modal-nav{position:absolute;top:50%;transform:translateY(-50%);background-color:#00000080;color:#fff;border:none;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;z-index:10}.media-modal-nav:hover{background-color:#000000b3;transform:translateY(-50%) scale(1.1)}.media-modal-nav-prev{left:20px}.media-modal-nav-next{right:20px}[data-theme=dark] .media-item{background-color:#362d4a;border:none}[data-theme=dark] .media-preview,[data-theme=dark] .media-loading{background-color:#1f1a30;color:var(--text-tertiary)}[data-theme=dark] .media-info{background-color:#362d4a}[data-theme=dark] .media-name{color:#f5f3f7}[data-theme=dark] .media-meta,[data-theme=dark] .media-file-preview{color:var(--text-tertiary)}[data-theme=dark] .media-file-icon{color:#8f83a2}[data-theme=dark] .media-file-type{color:#d4cde0}[data-theme=dark] .media-modal-content{background-color:#2a2240}[data-theme=dark] .media-modal-header{border-bottom-color:#4d4365}[data-theme=dark] .media-modal-title{color:#f5f3f7}[data-theme=dark] .media-modal-close{color:var(--text-tertiary)}[data-theme=dark] .media-modal-close:hover{color:#f5f3f7;background-color:#4d4365}[data-theme=dark] .media-modal-footer{border-top-color:#4d4365;background-color:#241d38}[data-theme=dark] .media-modal-info{color:var(--text-tertiary)}@media(max-width:768px){.media-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.media-modal{padding:10px}.media-modal-content{max-width:95vw;max-height:95vh}.media-modal-header{padding:12px 16px}.media-modal-title{font-size:16px;max-width:250px}.media-modal-body{padding:16px}.media-modal-pdf{height:60vh}}@media(max-width:480px){.media-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}.media-item{border-radius:8px}.media-info{padding:8px}.media-name,.media-meta{font-size:12px}.media-controls{top:4px;right:4px}.media-control-btn{width:24px;height:24px}.media-control-btn svg{width:12px;height:12px}}.animal-avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background-color:#e9ecef;color:#495057;font-weight:600;overflow:hidden;flex-shrink:0}.avatar-small{width:24px;height:24px;font-size:12px}.avatar-medium{width:40px;height:40px;font-size:14px}.avatar-large{width:60px;height:60px;font-size:18px}.avatar-image{width:100%;height:100%;object-fit:cover;border-radius:50%}.avatar-initials{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.loading-spinner-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;gap:16px;flex:1;min-height:200px}.loading-spinner-fullscreen{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background-color:#ffffffe6;z-index:9998}.loading-spinner-content{display:flex;flex-direction:column;align-items:center;gap:16px}.spinner{border-radius:50%;border-style:solid;border-color:#e5e7eb;border-top-color:#3b82f6;animation:spin 1s linear infinite}.spinner-small{width:16px;height:16px;border-width:2px}.spinner-medium{width:32px;height:32px;border-width:3px}.spinner-large{width:48px;height:48px;border-width:4px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner-message{font-size:14px;color:#6b7280;text-align:center;margin:0}.loading-button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:all .2s}.loading-button.loading{cursor:not-allowed;opacity:.7}.button-spinner{display:inline-flex;align-items:center}.button-text-loading{opacity:.7}.loading-overlay-wrapper{position:relative}.loading-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background-color:#fffc;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:10;border-radius:inherit}.loading-overlay-content{display:flex;flex-direction:column;align-items:center;gap:16px;padding:24px;background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #0000001a}.progress-container{width:100%;max-width:400px;margin:16px 0}.progress-bar{width:100%;height:8px;background-color:#e5e7eb;border-radius:4px;overflow:hidden}.progress-bar-fill{height:100%;background-color:#3b82f6;transition:width .3s ease;border-radius:4px}.progress-text{font-size:12px;color:#6b7280;text-align:center;margin-top:8px}.not-found-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px;background-color:#f9fafb}.not-found-content{text-align:center;max-width:400px}.not-found-icon{color:#6b7280;margin-bottom:24px;display:flex;justify-content:center}.not-found-title{font-size:24px;font-weight:700;color:#1f2937;margin-bottom:12px}.not-found-description{font-size:16px;color:#6b7280;margin-bottom:32px;line-height:1.5}.not-found-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.not-found-button{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:500;text-decoration:none;border:none;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center}.not-found-button.primary{background-color:#3b82f6;color:#fff}.not-found-button.primary:hover{background-color:#2563eb}.not-found-button.secondary{background-color:#f3f4f6;color:#374151;border:1px solid #d1d5db}.not-found-button.secondary:hover{background-color:#e5e7eb}.error-boundary-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px;background-color:#fef2f2}.error-boundary-content{text-align:center;max-width:500px}.error-boundary-icon{color:#dc2626;margin-bottom:24px;display:flex;justify-content:center}.error-boundary-title{font-size:24px;font-weight:700;color:#1f2937;margin-bottom:12px}.error-boundary-description{font-size:16px;color:#6b7280;margin-bottom:24px;line-height:1.5}.error-boundary-details{text-align:left;margin-bottom:24px;padding:16px;background-color:#fff;border:1px solid #e5e7eb;border-radius:8px}.error-boundary-details summary{cursor:pointer;font-weight:500;color:#374151;margin-bottom:12px}.error-boundary-stack{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:12px;color:#dc2626;background-color:#fef2f2;padding:12px;border-radius:4px;overflow-x:auto;white-space:pre-wrap;word-break:break-all}.error-boundary-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.error-boundary-button{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:500;border:none;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center}.error-boundary-button.primary{background-color:#dc2626;color:#fff}.error-boundary-button.primary:hover{background-color:#b91c1c}.error-boundary-button.secondary{background-color:#f3f4f6;color:#374151;border:1px solid #d1d5db}.error-boundary-button.secondary:hover{background-color:#e5e7eb}.permission-denied{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center;background-color:#fefce8;border:1px solid #fde047;border-radius:8px;margin:24px}.permission-denied-icon{font-size:48px;margin-bottom:16px;opacity:.8}.permission-denied h3{font-size:20px;font-weight:600;color:#1f2937;margin-bottom:8px}.permission-denied p{font-size:14px;color:#6b7280;margin-bottom:8px;line-height:1.5}.permission-denied-hint{font-size:13px;color:#9ca3af;font-style:italic}.add-animal-modal .form-group{margin-bottom:1rem}.add-animal-modal .form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary, #374151)}.add-animal-modal .form-group input,.add-animal-modal .form-group select{width:100%;padding:.625rem .75rem;border:1px solid var(--border-primary, #d1d5db);border-radius:6px;font-size:.875rem;background:var(--input-bg, white);color:var(--text-primary, #374151);transition:border-color .15s ease,box-shadow .15s ease}.add-animal-modal .form-group select.placeholder{color:var(--text-tertiary, #9ca3af)}.add-animal-modal .form-group select option{color:var(--text-primary, #374151)}.add-animal-modal .form-group input:focus,.add-animal-modal .form-group select:focus{outline:none;border-color:var(--primary-color, #3b82f6);box-shadow:0 0 0 3px #fe6b3426}.add-animal-modal .form-group input.error,.add-animal-modal .form-group select.error{border-color:var(--error-color, #ef4444)}.add-animal-modal .form-group .error-text{display:block;margin-top:.25rem;font-size:.75rem;color:var(--error-color, #ef4444)}.add-animal-modal .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.add-animal-modal .input-with-unit{display:flex;gap:.5rem}.add-animal-modal .input-with-unit input{flex:1;min-width:0}.add-animal-modal .input-with-unit select{width:auto;min-width:60px}.add-animal-modal .inline-fields{display:flex;gap:.75rem}.add-animal-modal .inline-fields>*{flex:1}.add-animal-modal .inline-fields .input-with-unit{flex:1}.add-animal-modal .inline-fields select{width:100%}.add-animal-modal .tag-input-group{display:flex;gap:.5rem}.add-animal-modal .tag-input-group input{flex:1}.add-animal-modal .tags-list{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.add-animal-modal .tag{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;background:var(--primary-light, #eff6ff);color:var(--primary-color, #3b82f6);border-radius:4px;font-size:.8125rem}.add-animal-modal .tag-remove{display:flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:none;background:transparent;color:var(--primary-color, #3b82f6);cursor:pointer;font-size:1rem;line-height:1;opacity:.7;transition:opacity .15s ease}.add-animal-modal .tag-remove:hover{opacity:1}.add-animal-modal .loading-clients{padding:.625rem .75rem;color:var(--text-secondary, #6b7280);font-size:.875rem}.add-animal-modal .searchable-select{position:relative}.add-animal-modal .searchable-select-dropdown{position:absolute;top:100%;left:0;right:0;max-height:200px;overflow-y:auto;background:var(--input-bg, white);border:1px solid var(--border-primary, #d1d5db);border-top:none;border-radius:0 0 6px 6px;box-shadow:0 4px 6px #0000001a;z-index:100}.add-animal-modal .searchable-select-option{display:flex;flex-direction:column;gap:2px;padding:.625rem .75rem;cursor:pointer;transition:background-color .15s ease}.add-animal-modal .searchable-select-option:hover{background:var(--hover-bg, #f3f4f6)}.add-animal-modal .searchable-select-option.selected{background:var(--primary-light, #eff6ff)}.add-animal-modal .searchable-select-option .client-name{font-weight:500;color:var(--text-primary, #374151)}.add-animal-modal .searchable-select-option .client-email{font-size:.75rem;color:var(--text-secondary, #6b7280)}.add-animal-modal .searchable-select-empty{padding:.75rem;text-align:center;color:var(--text-secondary, #6b7280);font-size:.875rem}.add-animal-modal .error-message{padding:.75rem;background:var(--error-bg, #fef2f2);border:1px solid var(--error-border, #fecaca);border-radius:6px;color:var(--error-color, #dc2626);font-size:.875rem;margin-top:1rem}[data-theme=dark] .add-animal-modal .form-group label{color:var(--text-primary, #f5f3f7)}[data-theme=dark] .add-animal-modal .form-group input,[data-theme=dark] .add-animal-modal .form-group select{background:var(--input-bg, #1e1a2e);border-color:var(--border-primary, #3d3355);color:var(--text-primary, #f5f3f7)}[data-theme=dark] .add-animal-modal .form-group select.placeholder{color:var(--text-tertiary, #6b7280)}[data-theme=dark] .add-animal-modal .form-group select option{color:var(--text-primary, #f5f3f7)}[data-theme=dark] .add-animal-modal .searchable-select-dropdown{background:var(--input-bg, #1e1a2e);border-color:var(--border-primary, #3d3355)}[data-theme=dark] .add-animal-modal .searchable-select-option:hover{background:var(--hover-bg, #2a2240)}[data-theme=dark] .add-animal-modal .searchable-select-option.selected{background:var(--primary-dark, #1e3a5f)}[data-theme=dark] .add-animal-modal .searchable-select-option .client-name{color:var(--text-primary, #f5f3f7)}[data-theme=dark] .add-animal-modal .searchable-select-option .client-email{color:var(--text-secondary, #a89bb8)}[data-theme=dark] .add-animal-modal .tag{background:var(--primary-dark, #1e3a5f);color:var(--primary-light, #93c5fd)}[data-theme=dark] .add-animal-modal .tag-remove{color:var(--primary-light, #93c5fd)}[data-theme=dark] .add-animal-modal .error-message{background:var(--error-bg, #450a0a);border-color:var(--error-border, #7f1d1d)}@media(max-width:480px){.add-animal-modal .form-row{grid-template-columns:1fr}}.add-animal-modal .modal-body{padding:1.5rem}@media(max-width:700px){.add-animal-modal .aaf-layout{grid-template-columns:1fr}.add-animal-modal .aaf-photo-col{flex-direction:row;align-items:center;gap:1rem}.add-animal-modal .aaf-photo-upload{width:72px;height:72px;font-size:.65rem}.add-animal-modal .aaf-photo-upload svg{width:24px;height:24px}.add-animal-modal .aaf-photo-hint{font-size:.55rem}.add-animal-modal .aaf-row{grid-template-columns:1fr}}.client-profile{border-radius:8px;box-shadow:0 2px 8px #0000001a}.client-profile-loading,.client-profile-error{text-align:center;padding:3rem}.profile-header{color:var(--text-primary, #1a1a1a);padding:1.25rem 1.5rem;position:relative;border-bottom:1px solid var(--border-primary, #e9ecef)}.profile-header.compact-header{padding:1rem 1.25rem}.profile-header-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.profile-header-content{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.profile-name{margin:0;font-size:1.125rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.name-input-inline{background:#fff3;border:1px solid rgba(255,255,255,.3);border-radius:4px;padding:.375rem .5rem;color:#fff;font-size:1rem;font-weight:600;width:200px;max-width:100%}.name-input-inline::placeholder{color:#ffffffb3}.name-input-inline:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34);background:#ffffff40}.profile-title{display:flex;align-items:center;gap:.75rem}.profile-title h2{margin:0;font-size:1.75rem;font-weight:600;color:var(--text-primary, #1a1a1a)}.profile-header .status-badge{font-size:.7rem;padding:.2rem .625rem}.profile-email,.profile-phone{margin:0;opacity:.9;font-size:.8rem}.profile-actions{display:flex;gap:.5rem;flex-shrink:0;margin-right:1rem}.profile-actions .btn-sm{padding:.25rem .625rem;font-size:.8125rem}.profile-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;padding:1rem 1.5rem;background:transparent;border-bottom:1px solid var(--border-primary, #e9ecef)}.stat-card{text-align:center;padding:.75rem .5rem;border-radius:8px;border:1px solid var(--border-primary, #e9ecef);background:transparent}.stat-value{font-size:1.5rem;font-weight:700;color:var(--text-primary, #1a1a1a);margin-bottom:.25rem;line-height:1.2}.stat-value.negative{color:#dc3545}.stat-label{font-size:.6875rem;color:var(--text-secondary, #666);text-transform:uppercase;letter-spacing:.5px}.profile-tabs{display:flex;border-bottom:1px solid var(--text-quaternary, #e9ecef);overflow-x:auto;padding:0 1rem;gap:.25rem}.tab{padding:.75rem 1rem;border:none;background:none;cursor:pointer;font-size:.875rem;font-weight:500;color:var(--text-secondary, #666);border-bottom:2px solid transparent;transition:all .2s;white-space:nowrap;position:relative}.tab:hover{color:var(--text-primary, #1a1a1a)}.tab.active{color:var(--accent-orange, #f4a261);border-bottom-color:var(--accent-orange, #f4a261)}.profile-content{padding:1.25rem 1.5rem}.info-section{margin-bottom:.75rem}.info-section.compact-section{margin-bottom:.5rem}.info-section h3{margin:0 0 .375rem;font-size:.9rem;color:var(--text-primary, #1a1a1a)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}@media(max-width:600px){.form-row{grid-template-columns:1fr}}.client-edit-modal .form-group{margin-bottom:.5rem}.client-edit-modal .form-group label{margin-bottom:.25rem;font-size:.8125rem}.client-edit-modal .form-group input,.client-edit-modal .form-group select,.client-edit-modal .form-group textarea{padding:.375rem .5rem;font-size:.875rem}.client-edit-modal .form-group textarea{min-height:60px}.client-edit-modal .field-hint{font-size:.75rem;margin-top:.25rem}.client-edit-modal .trainer-selection{margin-top:.25rem}.client-edit-modal .trainer-checkboxes{display:flex;flex-wrap:wrap;gap:.5rem}.client-edit-modal .checkbox-label{font-size:.8125rem;padding:.25rem .5rem}.client-edit-modal .solo-subscription-notice{padding:.625rem .75rem;margin-top:.25rem}.client-edit-modal .solo-subscription-notice .notice-text{font-size:.8125rem;margin-bottom:.25rem}.client-edit-modal .solo-subscription-notice .notice-hint{font-size:.75rem}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.info-item{display:flex;flex-direction:column;gap:.25rem}.info-item.full-width{grid-column:1 / -1}.info-item label{font-weight:600;color:#666;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px}.info-item p{margin:0;color:var(--text-primary, #1a1a1a);font-size:.95rem}.preferences-list{display:flex;flex-direction:column;gap:.75rem}.preference-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:var(--bg-secondary, #f8f9fa);border-radius:6px}.preference-item .enabled{color:var(--accent-orange);font-weight:500}.preference-item .disabled{color:#6c757d}.consent-list{display:flex;flex-direction:column;gap:.75rem}.consent-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--bg-secondary, #f8f9fa);border-radius:6px}.consent-date{margin:.25rem 0 0;font-size:.875rem;color:#666}.consent-given{color:#28a745;font-weight:500}.consent-denied{color:#dc3545;font-weight:500}.tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.tab-header h3{margin:0}.pets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.animal-card{border:1px solid #e9ecef;border-radius:8px;overflow:hidden;transition:box-shadow .2s}.animal-photo{width:100%;height:200px;object-fit:cover}.animal-info h4{margin:0 0 .5rem;font-size:1.25rem;color:var(--text-primary, #1a1a1a)}.animal-goals,.animal-notes{margin-top:1rem}.animal-goals strong,.animal-notes strong{display:block;margin-bottom:.5rem;color:var(--text-primary, #1a1a1a);font-size:.875rem}.animal-goals ul{margin:0;padding-left:1.5rem}.animal-goals li{margin-bottom:.25rem;color:#666}.animal-notes p{margin:0;color:#666;font-size:.95rem}.billing-summary{display:flex;gap:1rem;background:var(--bg-secondary, #f8f9fa);padding:1rem 1.5rem;border-radius:8px;margin-bottom:1.5rem;flex-wrap:wrap}.billing-stat{text-align:center;flex:1;min-width:80px}.billing-stat label{display:block;font-weight:600;color:var(--text-secondary, #666);font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.25rem}.billing-stat p{margin:0;font-size:1.25rem;font-weight:700;color:var(--text-primary, #1f2937)}.billing-stat .positive{color:var(--success-color, #28a745)}.billing-stat .negative{color:var(--error-color, #dc3545)}.empty-state{text-align:center;padding:3rem;color:var(--text-secondary, #666);background:var(--bg-secondary, #f8f9fa);border-radius:8px}.client-invoices-list{display:flex;flex-direction:column;gap:8px}.client-invoice-item{background:var(--card-background, #fff);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;padding:12px 16px;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease}.client-invoice-item:hover{border-color:var(--accent-orange-hover, #f97316);box-shadow:0 1px 3px #0000001a}.client-invoice-item.overdue{border-left:3px solid var(--error-color, #dc3545)}.client-invoice-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.client-invoice-number{font-weight:600;font-size:.875rem;color:var(--text-primary, #1f2937)}.client-invoice-description{font-size:.8rem;color:var(--text-secondary, #6b7280);margin-bottom:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-invoice-bottom{display:flex;align-items:center;gap:12px;font-size:.8rem}.client-invoice-amount{font-weight:700;color:var(--text-primary, #1f2937)}.client-invoice-date{color:var(--text-tertiary, #9ca3af)}.client-invoice-due{color:var(--warning-color, #f59e0b);font-weight:500}.client-invoice-item.overdue .client-invoice-due{color:var(--error-color, #dc3545)}.client-profile-modal{max-width:min(100%,700px);width:95vw}.client-profile-modal .client-view-close{position:absolute;top:.75rem;right:.75rem;width:28px;height:28px;border-radius:50%;border:none;background:transparent;color:var(--text-secondary, #999);font-size:1.25rem;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:100;transition:all .2s ease;line-height:1;padding:0}.client-profile-modal .client-view-close:hover{color:var(--text-primary, #333);transform:scale(1.1)}.client-profile-modal .client-profile{box-shadow:none;border-radius:0}.client-profile-modal .profile-header{padding:1.25rem 1.5rem;display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:1rem;border-bottom:none}.client-profile-modal .profile-header-content{flex:1;min-width:0}.client-profile-modal .profile-title{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.client-profile-modal .profile-title h2{font-size:1.75rem;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-profile-modal .profile-actions{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}.client-profile-modal .profile-actions .btn{padding:.4rem .875rem;font-size:.8125rem;white-space:nowrap;border-radius:6px}.client-profile-modal .profile-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;padding:.75rem 1.5rem;background:var(--card-bg, white);border-bottom:none}.client-profile-modal .stat-card{text-align:center;flex:1;min-width:0;padding:.625rem .5rem;border:none;background:var(--body-background)}.client-profile-modal .stat-value{font-size:1.5rem;font-weight:700;line-height:1.2;margin-bottom:.25rem}.client-profile-modal .stat-label{font-size:.625rem;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary, #666);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-profile-modal .profile-tabs{display:flex;gap:0;padding:0 1rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.client-profile-modal .profile-tabs::-webkit-scrollbar{display:none}.client-profile-modal .tab{padding:.75rem 1rem;font-size:.875rem;white-space:nowrap;flex-shrink:0}.client-profile-modal .profile-content{padding:1.25rem 1.5rem}@media(max-width:1200px){.client-profile-modal{max-width:98vw}}@media(max-width:768px){.profile-header{flex-direction:column}.profile-actions{width:100%}.profile-actions button{flex:1}.profile-stats{grid-template-columns:repeat(2,1fr);gap:.75rem;padding:1rem}.profile-content{padding:1rem}.info-grid,.pets-grid{grid-template-columns:1fr}.profile-tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch}.profile-tabs .tab{white-space:nowrap;padding:.75rem 1rem;font-size:.875rem}}.client-edit-modal-container .client-edit-modal{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch}.client-edit-modal .modal-close-btn,.modal-content>.modal-close-btn{color:var(--text-secondary, #666)}.client-edit-modal .modal-close-btn:hover,.modal-content>.modal-close-btn:hover{color:var(--text-primary, #333)}.clientprofile-modal-content{background:#fff;border-radius:8px;padding:0;max-width:min(100%,1200px);width:90%;max-height:80vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #eee}.modal-header h3{margin:0}.modal-body{padding:20px}.forms-list{display:flex;flex-direction:column;gap:12px;margin-top:16px}.form-option{display:flex;justify-content:space-between;align-items:center;padding:12px;border:1px solid #ddd;border-radius:6px}.form-option p{margin:4px 0 0;color:#666;font-size:14px}.consent-tab{padding:20px 0}.consent-forms-list{display:flex;flex-direction:column;gap:12px}.consent-form-item{display:flex;justify-content:space-between;align-items:center;padding:16px;border:1px solid #e1e5e9;border-radius:8px;background:#fff}.form-info h4{margin:0 0 4px;font-size:14px;font-weight:600;color:var(--text-primary, #1a1a1a)}.form-status{font-size:13px;padding:4px 8px;border-radius:4px;font-weight:500}.form-status.assigned{background:#e8f5e8;color:#2d7d32}.form-status.not-assigned{background:#fff3e0;color:#f57c00}.form-actions .btn{padding:6px 12px;font-size:13px;border-radius:4px;border:none;cursor:pointer;font-weight:500;flex-grow:0}.animal-avatar-section{display:flex;justify-content:center;margin-bottom:8px}.notification-delays-tab{padding:24px}.delays-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e9ecef}.delays-header h3{margin:0 0 8px;font-size:1.25rem;font-weight:600;color:#212529}.delays-description{margin:0;font-size:.875rem;color:#6c757d;line-height:1.5;max-width:min(100%,600px)}.overrides-badge{background:#007bff;color:#fff;padding:6px 12px;border-radius:20px;font-size:.875rem;font-weight:500;white-space:nowrap}.delays-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:24px}.delay-card{background:#fff;border:2px solid #dee2e6;border-radius:8px;padding:16px;transition:all .2s ease}.delay-card:hover{border-color:#007bff;box-shadow:0 2px 8px #007bff1a}.delay-card.overridden{border-color:#007bff;background:#f8f9ff}.delay-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #e9ecef}.delay-info h4{margin:0 0 4px;font-size:1rem;font-weight:600;color:#212529}.delay-info p{margin:0;font-size:.8rem;color:#6c757d;line-height:1.4}.override-indicator{background:#007bff;color:#fff;padding:4px 10px;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase}.delay-card-body{display:flex;flex-direction:column;gap:8px}.delay-setting{display:flex;flex-direction:column;gap:6px}.delay-setting label{font-size:.85rem;font-weight:600;color:#495057}.delay-select{padding:8px 12px;border:1px solid #ced4da;border-radius:4px;font-size:.875rem;color:#495057;background:#fff;cursor:pointer;transition:all .2s ease}.delay-select:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.delay-card.overridden .delay-select{border-color:#007bff;font-weight:500}.default-notice{font-size:.8rem;color:#6c757d;padding:8px;background:#f8f9fa;border-radius:4px;text-align:center}.default-notice strong{color:#495057}.delays-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid #e9ecef}@media(max-width:768px){.delays-header{flex-direction:column;gap:12px}.delays-grid{grid-template-columns:1fr}.delays-actions{flex-direction:column-reverse}.delays-actions button{width:100%}}.solo-subscription-notice{background:linear-gradient(135deg,#f0f4ff,#e8f0fe);border:1px solid #c2d4f8;border-radius:8px;padding:1rem 1.25rem;margin-top:.5rem}.solo-subscription-notice .notice-text{margin:0 0 .5rem;color:#1a365d;font-size:.95rem}.solo-subscription-notice .notice-hint{margin:0;color:#4a5568;font-size:.85rem}.overview-tab{display:flex;flex-direction:column;gap:1.5rem}.overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.overview-column{display:flex;flex-direction:column;gap:1.25rem}.info-section.compact{padding:0;background:transparent;border-radius:0;border:none}.info-section.compact h3{margin:0 0 1rem;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:var(--text-tertiary, #999);padding-bottom:0;border-bottom:none}.info-list{display:flex;flex-direction:column;gap:.875rem}.profile-content .info-row{display:flex;flex-direction:column;align-items:flex-start;padding:0;gap:.125rem}.info-row:last-child{border-bottom:none}.info-label{font-size:.75rem;color:var(--text-tertiary, #999);flex-shrink:0}.info-value{font-size:.9375rem;color:var(--text-primary, #1a1a1a);font-weight:600;text-align:left;word-break:break-word;min-width:0}.section-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:0;border-bottom:none}.section-header-row h3{margin:0;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:var(--text-tertiary, #999)}.btn-xs{padding:.25rem .75rem;font-size:.75rem;line-height:unset;min-height:30px;height:30px;border-radius:6px}.preferences-list.compact{display:flex;flex-direction:row;gap:1.5rem}.preferences-list.compact .preference-item{display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:0;background:transparent;border-radius:0;gap:.125rem}.preferences-list.compact .preference-item span:first-child{font-size:.75rem;color:var(--text-tertiary, #999)}.preferences-list.compact .preference-item .enabled,.preferences-list.compact .preference-item .disabled{font-size:.875rem;font-weight:600}.custom-periods-summary{font-size:.8125rem}.periods-config-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-primary, #e9ecef)}.periods-config-label{font-size:.875rem;font-weight:600;color:var(--text-primary, #1a1a1a)}.muted-text{color:var(--text-secondary, #666);margin:0;font-size:.8125rem}.periods-list{display:flex;flex-direction:column;gap:.25rem}.period-item{display:flex;justify-content:space-between;padding:.25rem .5rem;background:var(--card-bg, white);border-radius:4px;font-size:.75rem}.period-value{color:var(--primary, #007bff);font-weight:500}.custom-periods-form{display:flex;flex-direction:column;gap:.5rem}.period-select-row{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.period-select-row label{font-size:.75rem;color:var(--text-primary, #1a1a1a)}.period-select-row select{padding:.25rem .375rem;font-size:.75rem;border-radius:4px;border:1px solid var(--border-primary, #ddd);min-width:120px}.period-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.375rem}.overview-tab>.info-section{padding:0;background:transparent;border-radius:0;border:none}.overview-tab>.info-section h3{margin:0;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:var(--text-tertiary, #999)}.consent-forms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:.5rem}.consent-form-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:var(--card-bg, white);border:1px solid var(--border-primary, #e9ecef);border-radius:6px}.consent-form-item.signed{background:var(--success-bg, #d4edda);border-color:var(--success-border, #c3e6cb)}.consent-form-info{display:flex;align-items:center;gap:.375rem;min-width:0}.consent-form-info strong{font-size:.8125rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.required-badge{background:#dc3545;color:#fff;padding:.0625rem .3125rem;border-radius:8px;font-size:.5625rem;font-weight:700;text-transform:uppercase;flex-shrink:0}.consent-form-status{font-size:.75rem;flex-shrink:0}.status-signed{color:#155724}.status-not-assigned{color:#6c757d;font-size:.6875rem}@media(max-width:600px){.overview-grid{grid-template-columns:1fr}.preferences-list.compact{flex-direction:column;gap:.75rem}.consent-forms-grid{grid-template-columns:1fr}}.sessions-tab{padding:4px 0}.sessions-list{display:flex;flex-direction:column;gap:8px}.session-card{background:var(--card-background, #ffffff);border:1px solid var(--border-primary, #e5e7eb);border-radius:10px;padding:14px 16px;transition:border-color .2s ease}.session-card-clickable{cursor:pointer}.session-card:hover{border-color:var(--accent-orange-hover)}.session-card-row-top{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.session-card-col{display:flex;flex-direction:column;gap:4px}.session-card-col-value{display:flex;align-items:center;gap:8px}.session-card-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary, #9ca3af)}.session-card-title{font-size:14px;font-weight:600;color:var(--text-primary, #1f2937);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-card-row-details{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.session-date-text{font-size:13px;font-weight:500;color:var(--text-primary, #1f2937)}.session-detail-text{font-size:13px;color:var(--text-secondary, #4b5563)}.session-detail-sep{font-size:13px;color:var(--text-tertiary, #9ca3af)}.session-status{padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600;text-transform:capitalize;letter-spacing:.3px;margin-left:auto}.session-status.status-completed{background:var(--success-bg, #d1fae5);color:var(--success-text, #065f46)}.session-status.status-scheduled{background:var(--chip-orange-bg, #fff3e6);color:var(--accent-orange, #f97316)}.session-status.status-cancelled{background:var(--error-bg, #fee2e2);color:var(--error-text, #991b1b)}.session-status.status-in-progress{background:var(--warning-bg, #fef3c7);color:var(--warning-text, #92400e)}.session-card-row-bottom{margin-top:10px;padding-top:10px;border-top:1px solid var(--border-primary, #e5e7eb)}.session-notes-text{font-size:12px;color:var(--text-tertiary, #9ca3af);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.loading-state,.error-state{text-align:center;padding:2rem;color:var(--text-secondary, #6b7280)}.error-state{color:var(--error-color, #dc3545)}.error-state button{margin-top:1rem}[data-theme=dark] .client-profile-modal{background:var(--card-background);border:1px solid var(--card-border)}[data-theme=dark] .client-profile-modal .client-view-close{background:transparent;color:var(--text-secondary)}[data-theme=dark] .client-profile-modal .client-view-close:hover{color:var(--text-primary)}[data-theme=dark] .profile-title h2,[data-theme=dark] .stat-value{color:#f5f3f7}[data-theme=dark] .stat-label,[data-theme=dark] .tab{color:var(--text-tertiary)}[data-theme=dark] .tab:hover{color:#f5f3f7;background:transparent}[data-theme=dark] .tab.active{color:var(--accent-orange);border-bottom-color:var(--accent-orange)}[data-theme=dark] .info-section.compact{background:transparent;border:none}[data-theme=dark] .info-section.compact h3{color:var(--text-tertiary);border:none}[data-theme=dark] .info-label{color:var(--text-tertiary)}[data-theme=dark] .info-value{color:#f5f3f7}[data-theme=dark] .preferences-list.compact .preference-item{background:transparent}[data-theme=dark] .preferences-list.compact .preference-item span:first-child,[data-theme=dark] .preferences-list.compact .preference-item .disabled{color:var(--text-tertiary)}[data-theme=dark] .section-header-row h3{color:var(--text-tertiary);border:none}[data-theme=dark] .period-item{background:var(--card-background)}[data-theme=dark] .period-item span:first-child{color:#d4cde0}[data-theme=dark] .consent-form-item{background:var(--card-background);border:none}[data-theme=dark] .consent-form-item.signed{background:#064e3b;border-color:#065f46}[data-theme=dark] .consent-form-info strong{color:#f5f3f7}[data-theme=dark] .status-signed{color:#4ade80}[data-theme=dark] .overview-tab>.info-section{background:transparent;border:none}[data-theme=dark] .overview-tab>.info-section h3{color:var(--text-tertiary)}[data-theme=dark] .muted-text{color:var(--text-tertiary)}[data-theme=dark] .periods-config-label{color:#f5f3f7}[data-theme=dark] .periods-config-row{border-bottom-color:var(--card-border)}[data-theme=dark] .profile-actions .btn-secondary{background:transparent;border:1px solid var(--text-secondary);color:var(--text-primary)}[data-theme=dark] .profile-actions .btn-secondary:hover{background:#ffffff0d;border-color:var(--text-primary)}.client-profile-modal>.modal-close{color:var(--text-secondary, #999);background:transparent}.client-profile-modal>.modal-close:hover{color:var(--text-primary, #333);background:transparent}[data-theme=dark] .client-profile-modal>.modal-close{color:var(--text-secondary)}[data-theme=dark] .client-profile-modal>.modal-close:hover{color:#f5f3f7}.consent-form-details-overlay{position:fixed;inset:0;background-color:#00000080;z-index:1000;display:flex;align-items:center;justify-content:center}[data-theme=dark] .consent-form-details-overlay{background-color:#000000b3}.consent-form-details-modal{background-color:#fff;border-radius:8px;width:90%;max-width:min(100%,800px);height:80vh;display:flex;flex-direction:column;overflow:hidden}[data-theme=dark] .consent-form-details-modal{background-color:#1f2937;border:1px solid #374151}.consent-form-details-header{padding:20px;border-bottom:1px solid #eee;display:flex;justify-content:space-between;align-items:center}[data-theme=dark] .consent-form-details-header{border-color:#374151}.consent-form-details-header-left{display:flex;align-items:center;gap:12px}.consent-form-details-header h2{margin:0;color:var(--text-primary, #1a1a1a)}[data-theme=dark] .consent-form-details-header h2{color:#f9fafb}.consent-form-details-version-badge{background-color:#e3f2fd;color:#1976d2;padding:4px 12px;border-radius:16px;font-size:14px;font-weight:700}[data-theme=dark] .consent-form-details-version-badge{background-color:#1e3a5f;color:#93c5fd}.consent-form-details-close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:#666}[data-theme=dark] .consent-form-details-close-btn{color:#9ca3af}[data-theme=dark] .consent-form-details-close-btn:hover{color:#f9fafb}.consent-form-details-tabs{display:flex;border-bottom:1px solid #eee}[data-theme=dark] .consent-form-details-tabs{border-color:#374151}.consent-form-details-tab{padding:12px 24px;border:none;background-color:transparent;border-bottom:2px solid transparent;cursor:pointer;text-transform:capitalize;color:#666}[data-theme=dark] .consent-form-details-tab{color:#9ca3af}.consent-form-details-tab:hover{background-color:#f8f9fa}[data-theme=dark] .consent-form-details-tab:hover{background-color:#374151}.consent-form-details-tab.active{background-color:#f8f9fa;border-bottom-color:#007bff;color:#007bff}[data-theme=dark] .consent-form-details-tab.active{background-color:#1f2937;border-bottom-color:#60a5fa;color:#60a5fa}.consent-form-details-content{flex:1;overflow:auto;padding:20px}[data-theme=dark] .consent-form-details-content{background-color:#1f2937}.consent-form-details-field{margin-bottom:16px;color:var(--text-primary, #333)}[data-theme=dark] .consent-form-details-field{color:#d1d5db}.consent-form-details-field strong{color:var(--text-primary, #1a1a1a)}[data-theme=dark] .consent-form-details-field strong{color:#f9fafb}.consent-form-details-content-box{border:1px solid #ddd;padding:16px;border-radius:4px;background-color:#f8f9fa}[data-theme=dark] .consent-form-details-content-box{background-color:#374151;border-color:#4b5563;color:#d1d5db}.consent-form-details-version-warning{background-color:#fff3cd;border:1px solid #ffeaa7;border-radius:4px;padding:12px;margin-bottom:16px;display:flex;justify-content:space-between;align-items:center;color:#856404}[data-theme=dark] .consent-form-details-version-warning{background-color:#78350f;border-color:#92400e;color:#fde68a}.consent-form-details-version-warning button{background-color:#007bff;color:#fff;border:none;border-radius:4px;padding:4px 8px;font-size:13px;cursor:pointer}.consent-form-details-edit-group{margin-bottom:16px}.consent-form-details-edit-label{display:block;margin-bottom:4px;font-weight:700;color:var(--text-primary, #1a1a1a)}[data-theme=dark] .consent-form-details-edit-label{color:#f9fafb}.consent-form-details-edit-input{width:100%;padding:8px;border:1px solid #ccc;border-radius:4px;background:#fff;color:#333}[data-theme=dark] .consent-form-details-edit-input{background:#374151;border-color:#4b5563;color:#f9fafb}.consent-form-details-toolbar{border:1px solid #ccc;border-bottom:none;padding:8px;background-color:#f8f9fa;display:flex;gap:4px}[data-theme=dark] .consent-form-details-toolbar{background-color:#374151;border-color:#4b5563}.consent-form-details-toolbar-btn{padding:4px 8px;border:1px solid #ccc;background:#fff;cursor:pointer;color:#333}[data-theme=dark] .consent-form-details-toolbar-btn{background:#1f2937;border-color:#4b5563;color:#d1d5db}.consent-form-details-editor{border:1px solid #ccc;border-top:none;min-height:200px;padding:8px;background-color:#fff;color:#333}[data-theme=dark] .consent-form-details-editor{background-color:#1f2937;border-color:#4b5563;color:#d1d5db}.consent-form-details-checkbox-row{display:flex;gap:16px;margin-bottom:16px}.consent-form-details-checkbox-label{display:flex;align-items:center;gap:8px;color:var(--text-primary, #333);cursor:pointer}[data-theme=dark] .consent-form-details-checkbox-label{color:#d1d5db}.consent-form-details-save-actions{display:flex;gap:.75rem;margin-top:1rem}.consent-form-details-save-btn{background-color:var(--accent-orange, #FE6B34);color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-weight:500;font-size:.875rem}.consent-form-details-save-btn:hover{background-color:var(--accent-orange-hover, #e55a2b)}.consent-form-details-save-draft{background-color:var(--surface-secondary, #f3f4f6);color:var(--text-primary, #1f2937);border:1px solid var(--border-primary, #d1d5db)}.consent-form-details-save-draft:hover{background-color:var(--surface-hover, #e5e7eb)}.consent-form-details-audit h3{color:var(--text-primary, #1a1a1a);margin-top:0}[data-theme=dark] .consent-form-details-audit h3{color:#f9fafb}.consent-form-details-audit-empty{text-align:center;padding:40px;color:#666;background-color:#f8f9fa;border-radius:4px;border:1px solid #dee2e6}[data-theme=dark] .consent-form-details-audit-empty{background-color:#374151;border-color:#4b5563;color:#9ca3af}.consent-form-details-signed-banner{background-color:#e7f3ff;border:1px solid #b3d9ff;border-radius:4px;padding:8px;margin-bottom:16px;font-size:14px;color:#0056b3}[data-theme=dark] .consent-form-details-signed-banner{background-color:#1e3a5f;border-color:#1e40af;color:#93c5fd}.consent-form-details-version-card{border:1px solid #ddd;border-radius:4px;padding:16px;margin-bottom:16px;background-color:#fff}[data-theme=dark] .consent-form-details-version-card{background-color:#1f2937;border-color:#374151}.consent-form-details-version-card.signed{border:2px solid #007bff;background-color:#f8f9ff}[data-theme=dark] .consent-form-details-version-card.signed{border-color:#60a5fa;background-color:#1e3a5f}.consent-form-details-version-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.consent-form-details-version-title{display:flex;align-items:center;gap:8px}.consent-form-details-version-title strong{color:var(--text-primary, #1a1a1a)}[data-theme=dark] .consent-form-details-version-title strong{color:#f9fafb}.consent-form-details-signed-badge{background-color:#007bff;color:#fff;padding:2px 6px;border-radius:12px;font-size:13px;font-weight:700}.consent-form-details-version-meta{display:flex;align-items:center;gap:8px}.consent-form-details-version-date{font-size:14px;color:#666}[data-theme=dark] .consent-form-details-version-date{color:#9ca3af}.consent-form-details-view-version-btn{background-color:#f8f9fa;border:1px solid #ddd;border-radius:4px;padding:4px 8px;font-size:13px;cursor:pointer;color:#333}[data-theme=dark] .consent-form-details-view-version-btn{background-color:#374151;border-color:#4b5563;color:#d1d5db}[data-theme=dark] .consent-form-details-view-version-btn:hover{background-color:#4b5563}.consent-form-details-changes{margin-bottom:8px;color:var(--text-primary, #333)}[data-theme=dark] .consent-form-details-changes{color:#d1d5db}.consent-form-details-changes strong{color:var(--text-primary, #1a1a1a)}[data-theme=dark] .consent-form-details-changes strong{color:#f9fafb}.consent-form-details-changes ul{margin:4px 0;padding-left:20px}.consent-form-details-version-content-preview{border:1px solid #eee;padding:8px;border-radius:4px;background-color:#f9f9f9;margin-top:4px;font-size:14px}[data-theme=dark] .consent-form-details-version-content-preview{background-color:#374151;border-color:#4b5563;color:#d1d5db}.consent-form-details-loading{padding:20px;color:var(--text-primary, #333)}[data-theme=dark] .consent-form-details-loading{color:#9ca3af}.notification-settings{max-width:min(100%,1200px);margin:0 auto;padding:24px;background:var(--card-background, #ffffff);border-radius:12px;box-shadow:0 1px 3px #0000001a}.settings-header{margin-bottom:32px;padding:24px;background:var(--surface-secondary, #f9fafb);border-radius:8px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.settings-header h2{margin:0 0 8px;font-size:1.75rem;font-weight:600;color:var(--text-primary, #1f2937)}.settings-description{margin:0;color:var(--text-secondary, #6b7280);font-size:.875rem;line-height:1.5}.error-message{background:var(--error-bg, #fef2f2);border:1px solid var(--error-border, #fecaca);color:var(--error-text, #991b1b);padding:12px 16px;border-radius:6px;font-size:.875rem;margin-bottom:24px}.success-message{background:var(--success-bg, #f0fdf4);border:1px solid var(--success-border, #bbf7d0);color:var(--success-text, #166534);padding:12px 16px;border-radius:6px;font-size:.875rem;margin-bottom:24px}.loading-state{display:flex;flex-direction:column;align-items:center;gap:16px;padding:60px 20px;color:var(--text-secondary, #6b7280)}.notification-categories{display:flex;flex-direction:column;gap:16px;margin-bottom:32px}.notification-category{background:var(--card-background, #ffffff);border:1px solid var(--card-border, #e5e7eb);border-radius:12px;overflow:visible}.category-header{width:100%;display:flex;align-items:center;gap:12px;padding:16px 20px;background:#f8f9fa;border:none;cursor:pointer;transition:background .2s ease;text-align:left}.category-header:hover{background:#e9ecef}.category-icon{color:#6c757d;font-size:.875rem;width:16px;display:flex;align-items:center;justify-content:center}.category-header h3{margin:0;font-size:1.125rem;font-weight:600;color:#212529;flex:1}.category-count{font-size:.875rem;color:#6c757d;background:#fff;padding:4px 12px;border-radius:12px;border:1px solid #dee2e6}.category-events{padding:16px;display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.event-config{background:#fff;border:1px solid #dee2e6;border-radius:8px;padding:16px;transition:all .2s ease;box-shadow:0 1px 3px #0000000d}.event-config:hover{box-shadow:0 2px 8px #0000001a;border-color:#007bff}.event-config.disabled{opacity:.6;background:#f8f9fa}.event-header{margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #e9ecef}.event-info{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.event-info h4{margin:0;font-size:.95rem;font-weight:600;color:#212529}.event-info p{margin:0;font-size:.8rem;color:#6c757d;line-height:1.4}.event-title{display:flex;align-items:center;gap:8px}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;margin:0}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.checkbox-label strong{font-size:1rem;color:#212529}.event-description{margin:0;font-size:.875rem;color:#6c757d;line-height:1.5}.event-type-badge{display:inline-block;font-size:.75rem;color:#6c757d;background:#fff;padding:4px 8px;border-radius:4px;border:1px solid #dee2e6;font-family:Courier New,monospace}.event-settings{display:flex;flex-direction:column;gap:12px}.setting-row{display:grid;grid-template-columns:1fr 2fr;gap:12px;align-items:start}.setting-group{display:flex;flex-direction:column;gap:6px}.setting-group-inline{flex:1}.setting-group-inline select{width:100%;min-width:0}.setting-label,.setting-group label{font-size:.8rem;font-weight:600;color:#495057;margin:0}.setting-help{font-size:.75rem;color:#6c757d;margin:0}.channel-toggles{display:flex;gap:12px;flex-wrap:wrap}.channel-toggle{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#fff;border:2px solid #dee2e6;border-radius:6px;cursor:pointer;transition:all .2s ease;font-size:.875rem;color:#495057}.channel-toggle input[type=checkbox]{width:16px;height:16px;cursor:pointer}.channel-toggle input[type=checkbox]:checked+.channel-icon{filter:brightness(1.2)}.role-toggles{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.role-toggle{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#fff;border:1px solid #dee2e6;border-radius:4px;cursor:pointer;transition:all .2s ease;font-size:.875rem;color:#495057}.role-toggle:hover{border-color:#007bff;background:#e7f3ff}.role-toggle input[type=checkbox]{width:16px;height:16px;cursor:pointer}.form-control{width:100%;padding:6px 10px;border:1px solid var(--border-color);border-radius:4px;font-size:.85rem;color:var(--text-primary);background:var(--input-bg, var(--surface-hover));transition:all .2s ease}.form-control::placeholder{color:var(--text-tertiary)}.form-control:focus{outline:none;border-color:var(--accent-orange);box-shadow:0 0 0 2px #f4a26126}.form-control:disabled{opacity:.5;cursor:not-allowed}.setting-group select{padding:6px 10px;border:1px solid var(--border-color);border-radius:4px;font-size:.85rem;color:var(--text-primary);background:var(--input-bg, var(--surface-hover));transition:all .2s ease;cursor:pointer}.setting-group select:focus{outline:none;border-color:var(--accent-orange);box-shadow:0 0 0 2px #f4a26126}.placeholders{display:flex;flex-wrap:wrap;gap:8px}.placeholder-badge{display:inline-block;font-size:.75rem;color:#155724;background:#d4edda;padding:4px 8px;border-radius:4px;border:1px solid #c3e6cb;font-family:Courier New,monospace}.settings-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:24px;border-top:1px solid var(--border-primary, #e5e7eb)}@media(max-width:768px){.notification-settings{padding:16px}.settings-header h2{font-size:1.5rem}.category-header{padding:12px 16px}.category-header h3{font-size:1rem}.category-events,.event-config{padding:12px}.channel-toggles{flex-direction:column}.channel-toggle{width:100%}.role-toggles{grid-template-columns:1fr}.settings-actions{flex-direction:column-reverse}.settings-actions button{width:100%}}.category-header-static{padding:16px 20px;background:var(--surface-secondary, #f9fafb);border-bottom:1px solid var(--border-primary, #e5e7eb)}.category-header-static h3{margin:0 0 8px;font-size:1.125rem;font-weight:600;color:var(--text-primary, #1f2937)}.category-header-static .category-description{margin:0;font-size:.875rem;color:var(--text-secondary, #6b7280)}.channel-toggle{display:flex;align-items:flex-start;gap:12px;padding:16px;border:2px solid #dee2e6;border-radius:8px;cursor:pointer;transition:all .2s ease;background:#fff;margin-bottom:12px}.channel-toggle:hover{border-color:#007bff;background:#e7f3ff}.channel-toggle input[type=checkbox]{margin-top:4px;width:18px;height:18px;cursor:pointer}.channel-info strong{display:block;margin-bottom:4px;color:#212529;font-size:1rem}.channel-info p{margin:0;font-size:.875rem;color:#6c757d;line-height:1.5}.notification-types{display:flex;flex-direction:column;gap:12px}.notification-type-toggle{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;border:1px solid #dee2e6;border-radius:6px;cursor:pointer;transition:all .2s ease;background:#fff}.notification-type-toggle:hover{border-color:#007bff;background:#e7f3ff}.notification-type-toggle input[type=checkbox]{margin-top:4px;width:16px;height:16px;cursor:pointer}.type-info{flex:1}.type-info strong{display:block;margin-bottom:4px;color:#212529;font-size:.9375rem}.type-info p{margin:0;font-size:.8125rem;color:#6c757d;line-height:1.4}.preferences-preview{padding:20px;background:#f8f9fa;border-radius:8px;border:1px solid #dee2e6}.preview-section{margin-bottom:20px}.preview-section:last-child{margin-bottom:0}.preview-section h4{margin:0 0 12px;font-size:1rem;font-weight:600;color:#212529}.preview-items{display:flex;flex-wrap:wrap;gap:8px}.preview-badge{display:inline-block;padding:6px 12px;background:#007bff;color:#fff;border-radius:20px;font-size:.875rem;font-weight:500}.preview-warning{display:inline-block;padding:6px 12px;background:#fff3cd;color:#856404;border:1px solid #ffeaa7;border-radius:20px;font-size:.875rem;font-weight:500}.notification-toggle{display:flex;align-items:center;gap:1rem;padding:1rem;border:2px solid #dee2e6;border-radius:8px;cursor:pointer;transition:all .2s ease}.notification-toggle:hover{border-color:#007bff;background-color:#f8f9fa}.notification-toggle input[type=checkbox]{width:20px;height:20px;cursor:pointer}.toggle-icon{font-size:1.5rem}.toggle-info{flex:1}.toggle-info strong{display:block;color:#212529;margin-bottom:.25rem}.toggle-info p{margin:0;color:#6c757d;font-size:.9rem}.channel-options{display:flex;flex-direction:column;gap:.75rem}.channel-option{display:flex;align-items:center;gap:1rem;padding:1rem;border:2px solid #dee2e6;border-radius:8px;cursor:pointer;transition:all .2s ease}.channel-option input[type=radio]{width:20px;height:20px;cursor:pointer}.channel-option input[type=radio]:checked+.channel-icon{transform:scale(1.1)}.channel-icon{font-size:1.5rem;transition:transform .2s ease}.channel-info{flex:1}.channel-info strong{display:block;color:#212529;margin-bottom:.25rem}.channel-info p{margin:0;color:#6c757d;font-size:.9rem}.quiet-hours-settings{display:flex;gap:2rem;margin-bottom:1rem}.time-input-group{display:flex;flex-direction:column;gap:.5rem}.time-input-group label{font-weight:600;color:#212529}.time-input-group input[type=time]{padding:.75rem;border:2px solid #dee2e6;border-radius:6px;font-size:1rem;transition:border-color .2s ease}.time-input-group input[type=time]:focus{outline:none;border-color:#007bff}.quiet-hours-preview{background-color:#f8f9fa;padding:1rem;border-radius:6px;border-left:4px solid #007bff}.quiet-hours-preview p{margin:0 0 .5rem;color:#212529}.quiet-hours-note{font-size:.9rem;color:#6c757d!important}.spam-protection-info{display:flex;flex-direction:column;gap:1rem}.protection-feature{display:flex;align-items:center;gap:1rem;padding:1rem;background-color:#f8f9fa;border-radius:8px;border-left:4px solid #28a745}.feature-icon{font-size:1.5rem}.feature-info strong{display:block;color:#212529;margin-bottom:.25rem}.feature-info p{margin:0;color:#6c757d;font-size:.9rem}.preview-badge.success{background-color:#28a745}.preview-badge.warning{background-color:#ffc107}@media(max-width:768px){.quiet-hours-settings{flex-direction:column;gap:1rem}.channel-options{gap:.5rem}.channel-option{padding:.75rem}}.event-config{border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;margin-bottom:1rem;overflow:visible;background:var(--card-background, #ffffff)}.event-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;background-color:var(--surface-secondary, #f9fafb);border-bottom:1px solid var(--border-primary, #e5e7eb)}.event-info h4{margin:0 0 .25rem;color:var(--text-primary, #1f2937);font-size:1rem;font-weight:600}.event-info p{margin:0;color:var(--text-secondary, #6b7280);font-size:.9rem}.event-toggle{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-weight:500;color:var(--text-primary, #1f2937)}.event-toggle input[type=checkbox]{width:18px;height:18px;cursor:pointer}.event-settings{padding:1rem;display:flex;flex-direction:column;gap:1rem}.setting-group{display:flex;flex-direction:column;gap:.5rem}.setting-group label{font-weight:600;color:var(--text-primary, #1f2937);font-size:.9rem}.setting-group select{padding:.5rem;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;font-size:.9rem;background-color:var(--input-bg, #ffffff);color:var(--text-primary, #1f2937);cursor:pointer;transition:border-color .2s ease}.setting-group select:focus{outline:none;border-color:var(--border-focus, #f97316)}.setting-group textarea{padding:.75rem;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;font-size:.9rem;font-family:inherit;resize:vertical;min-height:60px;background-color:var(--input-bg, #ffffff);color:var(--text-primary, #1f2937);transition:border-color .2s ease}.setting-group textarea:focus{outline:none;border-color:var(--border-focus, #f97316)}.setting-group textarea::placeholder{color:var(--text-tertiary, #9ca3af)}.recipient-checkboxes{display:flex;flex-wrap:wrap;gap:8px}.recipient-checkbox{display:flex;align-items:center;gap:6px;cursor:pointer;padding:6px 10px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;background-color:var(--input-bg, #ffffff);transition:all .2s ease;font-size:.85rem}.recipient-checkbox:hover{border-color:var(--accent-orange-hover, #ea580c);background-color:var(--surface-hover, #f9fafb)}.recipient-checkbox input[type=checkbox]{width:14px;height:14px;cursor:pointer;margin:0}.recipient-checkbox span{font-size:.85rem;color:var(--text-primary, #1f2937);text-transform:capitalize}@media(max-width:768px){.category-events{grid-template-columns:1fr}.event-header{flex-direction:column;align-items:flex-start;gap:.75rem}.setting-row{grid-template-columns:1fr;gap:12px}.recipient-checkboxes{flex-direction:column;gap:.5rem}.event-settings{padding:.75rem}}.admin-tabs{margin-top:2rem}.admin-tabs .tabs-list{display:flex;border-bottom:2px solid #dee2e6;margin-bottom:2rem}.admin-tabs .tab{padding:1rem 2rem;background:none;border:none;cursor:pointer;font-size:1rem;color:#6c757d;border-bottom:3px solid transparent;transition:all .3s ease}.admin-tabs .tab:hover{color:#495057;background-color:#f8f9fa}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.metric-card{background:#fff;border:1px solid #dee2e6;border-radius:8px;padding:1.5rem;text-align:center;box-shadow:0 2px 4px #0000001a}.metric-card h3{margin:0 0 1rem;font-size:1rem;color:#6c757d;font-weight:500}.metric-value{font-size:2.5rem;font-weight:700;color:#007bff;margin-bottom:.5rem}.metric-value.error{color:#dc3545}.metric-card p{margin:0;font-size:.9rem;color:#6c757d}.system-events{background:#fff;border:1px solid #dee2e6;border-radius:8px;padding:1.5rem;margin-bottom:2rem}.system-events h3{margin:0 0 1rem;color:#212529}.events-list{max-height:300px;overflow-y:auto}.event-item{display:flex;justify-content:space-between;align-items:flex-start;padding:1rem;border-left:4px solid #007bff;background:#f8f9fa;margin-bottom:.5rem;border-radius:4px}.event-item.warning{border-left-color:#ffc107}.event-item.error{border-left-color:#dc3545}.event-info strong{display:block;margin-bottom:.25rem;font-size:.9rem}.event-info p{margin:0;font-size:.85rem;color:#6c757d}.event-time{font-size:.8rem;color:#6c757d;white-space:nowrap;margin-left:1rem}.delivery-channels{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem}.delivery-channels h3{margin:0 0 1rem;color:#333}.channel-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.channel-stat{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#f8f9fa;border-radius:4px;border:1px solid #e9ecef}.channel-count{font-weight:700;color:#007bff}.cost-summary{margin-bottom:2rem}.tenant-costs{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem}.tenant-costs h3{margin:0 0 1rem;color:#333}.costs-table{display:grid;gap:.5rem}.table-header{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:1rem;padding:.75rem;background:#f8f9fa;border-radius:4px;font-weight:600;color:#333}.table-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:1rem;padding:.75rem;border-bottom:1px solid #e9ecef;align-items:center}.table-row:hover{background:var(--table-row-hover)}.operation-section{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem;margin-bottom:2rem}.operation-section h3{margin:0 0 .5rem;color:#333}.operation-section p{margin:0 0 1.5rem;color:#666}.bulk-cancel-form{max-width:min(100%,400px)}.bulk-cancel-form .form-group{margin-bottom:1rem}.bulk-cancel-form label{display:block;margin-bottom:.5rem;font-weight:500;color:#333}.bulk-cancel-form input{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem}.emergency-controls{display:flex;gap:1rem}@media(max-width:768px){.metrics-grid{grid-template-columns:1fr}.table-header,.table-row{grid-template-columns:1fr;gap:.5rem}.table-header span,.table-row span{padding:.25rem 0}.table-header span:first-child,.table-row span:first-child{font-weight:700}.event-item{flex-direction:column;align-items:flex-start}.event-time{margin-left:0;margin-top:.5rem}}.analytics-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1rem;background:#f8f9fa;border-radius:8px}.time-range-selector{display:flex;align-items:center;gap:.5rem}.time-range-selector label{font-weight:500;color:#333}.time-range-selector select{padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:.9rem}.analytics-tabs{margin-top:2rem}.analytics-section{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem;margin-bottom:2rem}.analytics-section h3{margin:0 0 1rem;color:#333;font-size:1.1rem}.channel-breakdown{display:grid;gap:1rem}.channel-item{display:grid;grid-template-columns:1fr auto 2fr;align-items:center;gap:1rem;padding:.75rem;background:#f8f9fa;border-radius:4px}.channel-name{font-weight:500;text-transform:capitalize}.channel-count{font-weight:700;color:#007bff;min-width:3rem;text-align:right}.channel-bar{height:8px;background:#e9ecef;border-radius:4px;overflow:hidden}.channel-fill{height:100%;background:linear-gradient(90deg,#007bff,#0056b3);transition:width .3s ease}.type-breakdown{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.type-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#f8f9fa;border-radius:4px;border-left:4px solid #007bff}.type-name{font-weight:500}.type-count{font-weight:700;color:#007bff}.effectiveness-list{display:grid;gap:1rem}.effectiveness-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-radius:4px;border-left:4px solid #28a745}.effectiveness-item.positive{background:#d4edda;border-left-color:#28a745}.effectiveness-item.negative{background:#f8d7da;border-left-color:#dc3545}.effectiveness-info strong{display:block;margin-bottom:.25rem}.effectiveness-info p{margin:0;font-size:.9rem;color:#666}.effectiveness-cost{font-weight:700;color:#333}.effectiveness-table{display:grid;gap:.5rem}.effectiveness-table .table-header{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:1rem;padding:.75rem;background:#f8f9fa;border-radius:4px;font-weight:600;color:#333}.effectiveness-table .table-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:1rem;padding:.75rem;border-bottom:1px solid #e9ecef;align-items:center}.effectiveness-table .table-row:hover{background:var(--table-row-hover)}.trend-chart{display:flex;align-items:end;gap:4px;height:200px;padding:1rem;background:#f8f9fa;border-radius:4px;margin-bottom:1rem}.trend-day{display:flex;flex-direction:column;align-items:center;flex:1;min-width:30px}.trend-bars{display:flex;flex-direction:column;align-items:center;height:150px;justify-content:end;gap:1px}.trend-bar{width:20px;min-height:2px;border-radius:2px}.trend-bar.delivered{background:#28a745}.trend-bar.failed{background:#dc3545}.trend-date{font-size:.7rem;color:#666;margin-top:.5rem;text-align:center}.trend-legend{display:flex;justify-content:center;gap:2rem}.legend-item{display:flex;align-items:center;gap:.5rem}.legend-color{width:16px;height:16px;border-radius:2px}.legend-color.delivered{background:#28a745}.legend-color.failed{background:#dc3545}@media(max-width:768px){.analytics-controls{flex-direction:column;align-items:stretch;gap:1rem}.channel-item{grid-template-columns:1fr;gap:.5rem}.type-breakdown{grid-template-columns:1fr}.effectiveness-table .table-header,.effectiveness-table .table-row{grid-template-columns:1fr;gap:.5rem}.trend-chart{height:150px}.trend-bars{height:100px}}.notification-settings-page .sub-tabs{display:flex;gap:1rem;margin-bottom:2rem;border-bottom:1px solid #e0e0e0}.notification-settings-page .sub-tab{padding:.75rem 1.5rem;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;font-size:1rem;color:#666;transition:all .2s ease}.notification-settings-page .sub-tab:hover{color:#333;background-color:#f5f5f5}.notification-settings-page .sub-tab.active{color:#007bff;border-bottom-color:#007bff;font-weight:500}.notification-settings-page .sub-tab-content{margin-top:1rem}.preference-sections{display:flex;flex-direction:column;gap:2rem}.preference-section{padding:1.5rem;border:1px solid #e0e0e0;border-radius:8px;background:#fff}.preference-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.preference-header h4{margin:0;font-size:1.1rem;color:#333}.preference-description{margin:0;color:#666;font-size:.9rem}.toggle-switch{position:relative;display:inline-block;width:60px;height:32px;cursor:pointer}.toggle-switch input[type=checkbox]{opacity:0;width:0;height:0}.toggle-slider{position:absolute;inset:0;background:linear-gradient(135deg,#e0e0e0,#f0f0f0);border:2px solid #ddd;border-radius:32px;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:inset 0 2px 4px #0000001a}.toggle-slider:before{content:"";position:absolute;height:24px;width:24px;left:2px;top:2px;background:linear-gradient(135deg,#fff,#f8f9fa);border-radius:50%;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #00000026,0 1px 3px #0000001a}.toggle-switch input[type=checkbox]:checked+.toggle-slider{background:linear-gradient(135deg,#007bff,#0056b3);border-color:#0056b3;box-shadow:inset 0 2px 4px #0000001a,0 0 0 3px #007bff1a}.toggle-switch input[type=checkbox]:checked+.toggle-slider:before{transform:translate(28px);background:linear-gradient(135deg,#fff,#f8f9fa);box-shadow:0 2px 12px #0003,0 1px 4px #00000026}.toggle-switch:hover .toggle-slider{box-shadow:inset 0 2px 4px #0000001a,0 0 0 8px #007bff0d}.toggle-switch input[type=checkbox]:focus+.toggle-slider{outline:2px solid #007bff;outline-offset:2px}.toggle-switch input[type=checkbox]:checked+.toggle-slider:after{content:"ON";position:absolute;left:6px;top:50%;transform:translateY(-50%);color:#fff;font-size:13px;font-weight:700;opacity:1;transition:opacity .2s ease}.toggle-label{font-size:.9rem;color:#666}.channel-options{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.channel-option{display:flex;align-items:center;gap:1rem;padding:1rem;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;transition:all .2s ease}.channel-option:hover{border-color:#007bff;background-color:#f8f9fa}.channel-option input[type=radio]{margin:0}.channel-option input[type=radio]:checked+.channel-info{color:#007bff}.channel-info{display:flex;flex-direction:column;gap:.25rem}.channel-info strong{font-size:1rem}.channel-info span{font-size:.85rem;color:#666}.quiet-hours-config{margin-top:1rem;padding-top:1rem;border-top:1px solid #e0e0e0}.time-inputs{display:flex;gap:1rem;align-items:end}.time-input{display:flex;flex-direction:column;gap:.5rem}.time-input label{font-size:.9rem;color:#666}.time-input input[type=time]{padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:1rem}@media(max-width:768px){.preference-header{flex-direction:column;align-items:flex-start;gap:1rem}.time-inputs{flex-direction:column;gap:1rem}}.notification-preferences{max-width:min(100%,600px);margin:0 auto}.preferences-header{margin-bottom:2rem}.preferences-header h3{margin:0 0 .5rem;font-size:1.5rem;color:#333}.preferences-header p{margin:0;color:#666;font-size:.95rem}.preferences-form{display:flex;flex-direction:column;gap:1.5rem}.preferences-form .form-group{padding:1.25rem;border:1px solid var(--card-border);border-radius:8px;background:var(--card-background)}.form-row{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.form-label{flex:1;display:flex;flex-direction:column;gap:.25rem}.label-text{font-weight:500;color:#333;font-size:1rem;display:block}.label-description{font-size:.85rem;color:#666;display:block;margin-top:.25rem}.channel-select select,.timezone-select select{padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:.95rem;min-width:180px}.quiet-hours-inputs{display:flex;align-items:center;gap:.5rem}.quiet-hours-inputs input[type=time]{padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:.9rem}.time-separator{color:#666;font-size:.9rem}.info-box{display:flex;flex-direction:column;gap:.75rem;padding:1rem;background:#f8f9fa;border-radius:6px;border-left:3px solid #007bff}.info-item{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#555}.info-icon{font-size:1rem}.form-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:1rem;border-top:1px solid #e0e0e0;margin-top:1rem}.form-group.disabled{opacity:.5;pointer-events:none}.form-group.disabled .label-text,.form-group.disabled .label-description{color:#999}.info-box.disabled{opacity:.5}@media(max-width:768px){.form-row{flex-direction:column;align-items:stretch;gap:.75rem}.channel-select select,.timezone-select select{min-width:auto;width:100%}.quiet-hours-inputs{justify-content:space-between}.form-actions{flex-direction:column}}.channel-templates{display:flex;flex-direction:column;gap:15px}.channel-template h6{margin:0 0 5px;font-size:13px;font-weight:600;color:#555;text-transform:uppercase}.sms-limit-info{font-size:13px;color:#e67e22;background:#fef9e7;padding:4px 6px;border-radius:3px;border-left:3px solid #e67e22}.template-variables-info{font-size:13px;color:#888;background:#f8f9fa;padding:6px 8px;border-radius:3px}.template-group{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:10px}.template-section h5{margin:0 0 8px;font-size:14px;font-weight:600;color:#333}.template-selector{position:relative;flex:1}.template-selector .searchable-dropdown{padding:6px 10px;font-size:.85rem;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;background:var(--input-bg, #ffffff);color:var(--text-primary, #1f2937);cursor:pointer;transition:all .2s ease}.template-selector .searchable-dropdown:hover{border-color:var(--accent-orange-hover, #ea580c)}.template-search{padding:8px 12px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;font-size:14px;background:var(--input-bg, #ffffff);color:var(--text-primary, #1f2937)}.template-search:focus{outline:none;border-color:var(--border-focus, #f97316);box-shadow:0 0 0 2px #f973161a}.template-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--card-background, #ffffff);border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;max-height:200px;overflow-y:auto;z-index:9999;box-shadow:0 4px 12px #00000026;margin-top:2px}.template-dropdown-item{padding:8px 12px;border-bottom:1px solid var(--border-primary, #e5e7eb);cursor:pointer;font-size:.85rem;color:var(--text-primary, #1f2937);transition:background .15s ease}.template-dropdown-item:hover{background-color:var(--surface-hover, #f9fafb)}.template-dropdown-item:last-child{border-bottom:none}.selected-template-info{font-size:13px;color:#666;font-style:italic}.followup-settings{max-width:min(100%,1000px);margin:0 auto}.settings-section{margin-bottom:2rem}.settings-section h4{margin:0 0 .5rem;font-size:1.125rem;font-weight:600;color:#212529}.section-description{margin:0 0 1rem;font-size:.875rem;color:#6c757d;line-height:1.5}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.input-with-preview{display:flex;flex-direction:column;gap:.5rem}.input-hint{font-size:.8125rem;color:#6c757d;font-style:italic}.preview-box{padding:1rem;background:#f8f9fa;border-left:4px solid #007bff;border-radius:4px;margin-top:1rem}.preview-box strong{display:block;margin-bottom:.5rem;color:#212529}.preview-box p{margin:0;font-size:.875rem;color:#495057;line-height:1.5}.override-form{padding:1rem;background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;margin-bottom:1rem}.form-row{display:grid;grid-template-columns:2fr 2fr 1fr;gap:1rem;align-items:end}.overrides-list{margin-top:1rem}.overrides-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid #dee2e6;border-radius:6px;overflow:hidden}.overrides-table thead{background:#f8f9fa}.overrides-table th{padding:.75rem 1rem;text-align:left;font-weight:600;color:#495057;font-size:.875rem;border-bottom:2px solid #dee2e6}.overrides-table td{padding:.75rem 1rem;border-bottom:1px solid #dee2e6;font-size:.875rem;color:#212529}.overrides-table tbody tr:last-child td{border-bottom:none}.overrides-table tbody tr:hover{background:var(--table-row-hover)}.badge{display:inline-block;padding:.25rem .5rem;font-size:.75rem;font-weight:600;border-radius:4px}.badge-warning{background:var(--chip-orange-bg);color:var(--accent-orange);border:1px solid #ffeaa7}.text-muted{color:#6c757d}.notification-events-tab{max-width:min(100%,1200px);margin:0 auto}.events-header{margin-bottom:1.5rem}.events-header h3{margin:0 0 .5rem;font-size:1.5rem;font-weight:600;color:#212529}.events-filters{padding:1.25rem;background:var(--surface-secondary, #f8f9fa);border:1px solid var(--border-primary, #dee2e6);border-radius:8px;margin-bottom:1.5rem}.filter-row{display:flex;gap:.75rem;align-items:end;margin-bottom:.75rem}.filter-row .form-group{display:flex;flex-direction:column;gap:.25rem;margin:0;padding-left:0;padding-right:0}.filter-row .form-group label{font-size:.8125rem;font-weight:500;color:var(--text-secondary, #495057)}.filter-row .form-group .form-control,.filter-row .form-group select,.filter-row .form-group input[type=date]{width:100%;padding:.5rem .75rem;font-size:.875rem;border:1px solid var(--border-primary, #dee2e6);border-radius:6px;background:var(--input-bg, #fff);color:var(--text-primary, #212529);height:38px;box-sizing:border-box}.filter-actions{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.events-table-container{overflow-x:auto;border:1px solid #dee2e6;border-radius:6px;margin-bottom:1rem}.events-table{width:100%;border-collapse:collapse;background:#fff}.events-table thead{background:#f8f9fa;position:sticky;top:0;z-index:1}.events-table th{padding:.75rem 1rem;text-align:left;font-weight:600;color:#495057;font-size:.875rem;border-bottom:2px solid #dee2e6;white-space:nowrap}.events-table td{padding:.75rem 1rem;border-bottom:1px solid #dee2e6;font-size:.875rem;color:#212529}.events-table tbody tr:last-child td{border-bottom:none}.events-table tbody tr:hover{background:var(--table-row-hover)}.timestamp-cell,.type-cell{white-space:nowrap}.status-cell{display:flex;align-items:center;gap:.5rem}.badge-success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.badge-info{background:#d1ecf1;color:#0c5460;border:1px solid #bee5eb}.badge-danger{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.error-tooltip{cursor:help;font-size:1rem}.channel-cell{display:flex;align-items:center;gap:.5rem}.channel-icon{font-size:1.125rem}.message-cell{max-width:min(100%,400px)}.message-preview{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pagination-info{font-size:.875rem;color:#6c757d}.empty-state{padding:3rem 1rem;text-align:center;color:#6c757d;background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px}.empty-state p{margin:0;font-size:1rem}@media(max-width:768px){.form-row,.filter-row{grid-template-columns:1fr}.events-table{font-size:.8125rem}.events-table th,.events-table td{padding:.5rem}.message-cell{max-width:200px}.pagination{flex-direction:column;gap:.5rem}}.event-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;width:100%}.event-title-text{display:flex;flex-direction:column;gap:4px;flex:1}.event-name{font-size:1rem;font-weight:600;color:var(--text-primary, #212529);display:block}.event-config .event-description{font-size:.8125rem;color:var(--text-secondary, #6c757d);line-height:1.4;margin:0;display:block}.toggle-switch{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.toggle-switch.small{width:36px;height:20px}.toggle-switch input[type=checkbox]{opacity:0;width:0;height:0;position:absolute}.toggle-switch .toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:var(--toggle-off-bg, #d1d5db);transition:all .2s ease;border-radius:24px}.toggle-switch .toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:all .2s ease;border-radius:50%;box-shadow:0 1px 3px #0003}.toggle-switch.small .toggle-slider:before{height:14px;width:14px}.toggle-switch input:checked+.toggle-slider{background-color:var(--primary-color, #3b82f6)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px)}.toggle-switch.small input:checked+.toggle-slider:before{transform:translate(16px)}.toggle-switch input:focus+.toggle-slider{box-shadow:0 0 0 2px var(--focus-ring, rgba(254, 107, 52, .3))}.toggle-switch .toggle-slider:after{display:none}.channel-toggles{display:flex;gap:16px;flex-wrap:wrap}.channel-toggle-item{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-secondary, #f8f9fa);border:1px solid var(--border-color, #e5e7eb);border-radius:6px;cursor:pointer;transition:all .2s ease}.channel-toggle-item:hover{border-color:var(--primary-color, #3b82f6);background:var(--hover-bg, #f0f7ff)}.channel-toggle-item .channel-icon{font-size:1rem}.channel-toggle-item .channel-name{font-size:.875rem;color:var(--text-primary, #374151);font-weight:500}.template-group{display:flex;flex-direction:column;gap:6px}.template-label-row{display:flex;justify-content:space-between;align-items:center}.edit-templates-link{background:none;border:none;color:var(--primary-color, #3b82f6);font-size:.75rem;cursor:pointer;padding:0;text-decoration:underline}.edit-templates-link:hover{color:var(--primary-hover, #2563eb)}.template-select-wrapper{position:relative}.template-select{width:100%;padding:8px 32px 8px 10px;border:1px solid var(--border-color, #ced4da);border-radius:4px;font-size:.85rem;color:var(--text-primary, #495057);background-color:var(--bg-primary, white);cursor:pointer;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M2.5 4.5L6 8l3.5-3.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:12px}.template-select:focus{outline:none;border-color:var(--primary-color, #3b82f6);box-shadow:0 0 0 2px var(--focus-ring, rgba(254, 107, 52, .15))}[data-theme=dark] .template-select{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='%239ca3af' d='M2.5 4.5L6 8l3.5-3.5'/%3E%3C/svg%3E")}@media(max-width:768px){.event-title-row{flex-direction:column;gap:12px}.channel-toggles{flex-direction:column;gap:8px}.channel-toggle-item{width:100%;justify-content:space-between}}.template-section .tox-tinymce,.template-group .tox-tinymce{margin-bottom:4px}.template-section .tox .tox-statusbar,.template-group .tox .tox-statusbar{display:none}.invitation-history-page{margin-top:2rem;background:var(--card-background, #fff);border:1px solid var(--border-color, #e0e0e0);border-radius:8px;overflow:hidden}.invitation-history-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color, #e0e0e0)}.invitation-history-header h3{margin:0 0 .2rem;font-size:1rem;font-weight:600;color:var(--text-primary, #1f2937)}.invitation-history-header p{margin:0;font-size:.8rem;color:var(--text-secondary, #6b7280)}.inv-history-success,.inv-history-error{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.875rem}.inv-history-success{background:var(--success-bg, #f0fdf4);color:var(--success-text, #166534);border-bottom:1px solid var(--success-border, #bbf7d0)}.inv-history-error{background:var(--error-bg, #fef2f2);color:var(--error-text, #991b1b);border-bottom:1px solid var(--error-border, #fecaca)}.inv-history-empty{padding:2rem 1.5rem;text-align:center;color:var(--text-secondary, #6b7280);font-size:.9rem}.inv-history-skeleton{display:flex;flex-direction:column;gap:0}.inv-history-skeleton-row{display:flex;gap:1.5rem;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--border-color, #e9ecef);pointer-events:none}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-block{border-radius:4px;background:linear-gradient(90deg,var(--surface-hover, #f3f4f6) 25%,rgba(255,255,255,.15) 50%,var(--surface-hover, #f3f4f6) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.4s ease-in-out infinite}.inv-history-skeleton-row:nth-child(2) .skeleton-block{animation-delay:.15s}.inv-history-skeleton-row:nth-child(3) .skeleton-block{animation-delay:.3s}.inv-history-table-wrap{overflow-x:auto}.inv-history-table{width:100%;border-collapse:collapse}.inv-history-table thead{border-bottom:1px solid var(--border-color, #e9ecef)}.inv-history-table th{padding:.65rem 1rem;text-align:left;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary, #6b7280);background:var(--card-border)}.inv-history-table td{padding:.85rem 1rem;border-bottom:1px solid var(--border-color, #e9ecef);font-size:.875rem;color:var(--text-primary, #1f2937);vertical-align:middle}.inv-history-table tbody tr:last-child td{border-bottom:none}.inv-history-table tbody tr:hover{background:var(--surface-hover, #f9fafb)}.inv-contact{font-weight:500}.inv-channel{display:inline-flex;align-items:center;gap:.25rem;font-size:.8rem;color:var(--text-secondary, #6b7280);text-transform:capitalize}.inv-date{color:var(--text-secondary, #6b7280);white-space:nowrap}.inv-expiry{font-size:.8rem;color:var(--warning-text, #92400e);white-space:nowrap}.inv-actions{display:flex;align-items:center;gap:.4rem;white-space:nowrap}.btn-resend{display:inline-flex;align-items:center;gap:.25rem;padding:.3rem .6rem;background:var(--success-color, #28a745);color:#fff;border:none;border-radius:4px;font-size:.75rem;font-weight:500;cursor:pointer;transition:background .2s;white-space:nowrap}.btn-resend:hover:not(:disabled){background:var(--success-hover, #218838)}.btn-resend-spinner{display:inline-block;width:12px;height:12px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:inv-spin .6s linear infinite}@keyframes inv-spin{to{transform:rotate(360deg)}}.btn-delete-inv{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;background:var(--error-color, #dc3545);color:#fff;border:none;border-radius:4px;font-size:.75rem;font-weight:700;cursor:pointer;transition:background .2s}.btn-delete-inv:hover{background:var(--error-hover, #c82333)}@media(max-width:640px){.invitation-history-header{flex-direction:column;align-items:flex-start;gap:.75rem}.inv-history-table th:nth-child(3),.inv-history-table td:nth-child(3){display:none}}.client-list{max-width:min(100%,1400px);margin:0 auto}.client-list-controls{background:var(--surface-secondary, #f8f9fa);padding:1.5rem;border-radius:8px;margin-bottom:2rem}.search-box{margin-bottom:1rem}.search-input:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.filter-controls{display:flex;gap:1.5rem;flex-wrap:wrap}.client-list .filter-group{display:flex;align-items:center;gap:.5rem}.client-list .filter-group label{font-weight:500;color:var(--text-primary, #333)}.filter-select{padding:.5rem 1rem;border:1px solid var(--input-border, #ddd);border-radius:6px;background:var(--input-bg, white);font-size:.95rem;cursor:pointer;color:var(--text-primary, #333)}.filter-select:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.client-table-container{background:var(--card-background, white);border-radius:8px;overflow-x:auto;margin-bottom:1.5rem;border:1px solid var(--border-color, #e0e0e0)}.client-table{width:100%;border-collapse:collapse}.client-table thead{border-bottom:1px solid var(--border-color, #e9ecef)}.client-table th{padding:.75rem 1rem;text-align:left;font-weight:600;color:var(--text-secondary, #495057);font-size:.7rem;text-transform:uppercase;letter-spacing:.05em}.client-table td{padding:.85rem 1rem;border-bottom:1px solid var(--border-color, #e9ecef);color:var(--text-primary, #333);font-size:.9rem}.client-row:hover{background:var(--surface-hover);cursor:pointer}.client-name-cell{display:flex;align-items:center;gap:.6rem}.client-avatar{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:700;color:#fff;flex-shrink:0}.client-name{font-weight:500;color:var(--text-primary, #1a1a1a)}.client-email-cell{display:flex;align-items:center;gap:.4rem;color:var(--text-secondary, #888);font-size:.85rem}.client-email-cell .email-icon{font-size:.75rem;opacity:.6}.action-buttons{display:flex;gap:.25rem}.action-buttons .btn-icon{background:none;border:none;color:var(--text-secondary, #888);cursor:pointer;padding:.3rem;border-radius:4px;font-size:1rem;line-height:1;transition:color .15s,background .15s}.action-buttons .btn-icon:hover{color:var(--text-primary, #fff);background:var(--surface-hover)}.client-list .status-active{background:var(--success-bg);color:var(--success-text)}.client-list .status-inactive{background:#f8d7da;color:#721c24}.client-list .status-invited{background:#fff3cd;color:#856404}.balance-negative{color:#dc3545;font-weight:500}.client-list .loading-state .spinner,.client-list .loading-state .loading-spinner{margin:0 auto 1rem}@media(max-width:768px){.filter-controls{flex-direction:column;gap:1rem}.client-list .filter-group{width:100%}.filter-select{flex:1}.client-table-container{overflow-x:scroll}.client-table{min-width:min(100%,800px)}}.checkbox-column{width:48px;text-align:center;padding:.75rem .5rem!important}.checkbox-column input[type=checkbox]{cursor:pointer;width:18px;height:18px;accent-color:var(--primary-color, #4a90e2);border-radius:4px;transition:transform .15s ease,box-shadow .15s ease}.checkbox-column input[type=checkbox]:hover{transform:scale(1.1)}.checkbox-column input[type=checkbox]:focus{outline:none;box-shadow:0 0 0 3px var(--focus-ring, rgba(254, 107, 52, .3))}.checkbox-column input[type=checkbox]:checked{animation:checkPop .2s ease}@keyframes checkPop{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.client-table thead .checkbox-column input[type=checkbox]{width:18px;height:18px}.client-row.selected{background:var(--surface-hover);box-shadow:inset 3px 0 0 var(--accent-orange)}.client-row.selected:hover{background:var(--surface-hover)}@supports (-webkit-appearance: none) or (-moz-appearance: none){.checkbox-column input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border:2px solid var(--input-border, #d1d5db);border-radius:4px;background:var(--input-bg, white);position:relative;transition:all .15s ease}.checkbox-column input[type=checkbox]:hover{border-color:var(--primary-color, #4a90e2);background:var(--surface-secondary, #f8f9fa)}.checkbox-column input[type=checkbox]:checked{background:var(--accent-orange, #f4a261);border-color:var(--accent-orange, #f4a261)}.checkbox-column input[type=checkbox]:checked:after{content:"";position:absolute;left:5px;top:2px;width:5px;height:9px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.checkbox-column input[type=checkbox]:indeterminate{background:var(--accent-orange, #f4a261);border-color:var(--accent-orange, #f4a261)}.checkbox-column input[type=checkbox]:indeterminate:after{content:"";position:absolute;left:3px;top:6px;width:8px;height:2px;background:#fff;border-radius:1px}.checkbox-column input[type=checkbox]:focus{box-shadow:0 0 0 3px var(--focus-ring, rgba(254, 107, 52, .3))}.checkbox-column input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed}}.bulk-actions-bar{display:flex;justify-content:space-between;align-items:center;background:var(--card-background);color:#fff;padding:1rem 1.5rem 1rem 1.75rem;margin-bottom:1rem}.bulk-actions-info{display:flex;align-items:center;gap:.75rem}.selected-count-chip{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 6px;border-radius:6px;background:var(--chip-orange-bg);color:var(--accent-orange);font-weight:700;font-size:.85rem}.selected-label{font-weight:500;font-size:.9rem;color:var(--text-primary, #fff)}.bulk-separator{width:1px;height:18px;background:var(--border-color)}.bulk-clear-btn{background:none;border:none;color:var(--text-secondary, #999);font-size:.85rem;cursor:pointer;padding:0;display:flex;align-items:center;gap:4px}.bulk-clear-btn:hover{color:var(--text-primary, #fff)}.bulk-actions-bar .btn-link{color:#fff}.bulk-actions-buttons{display:flex;gap:.75rem}.bulk-actions-buttons .bulk-assign-btn{background:var(--accent-orange-btn-background);color:var(--accent-orange);border:1px solid var(--accent-orange)}.bulk-actions-buttons .bulk-assign-btn:hover:not(:disabled){background:var(--accent-orange-btn-hover)}.bulk-action-progress{background:var(--warning-bg, #fff3cd);border:1px solid var(--warning-color, #ffc107);border-radius:8px;padding:1rem;margin-bottom:1rem}.progress-info{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.9rem;color:var(--warning-text, #856404)}@media(max-width:768px){.bulk-actions-bar{flex-direction:column;gap:1rem;align-items:stretch}.bulk-actions-info{flex-direction:column;align-items:flex-start;gap:.5rem}.bulk-actions-buttons{flex-direction:column}.bulk-actions-buttons .btn{width:100%}}.client-view-close{top:.5rem;right:.5rem;color:var(--text-secondary, #666);background:#fff;border-radius:50%;box-shadow:0 2px 4px #0000001a}.client-view-close:hover{color:var(--text-primary, #333);background:#f0f0f0}.load-more-container{display:flex;justify-content:center;padding:1.5rem;margin-top:1rem}.load-more-container .btn{display:inline-flex;align-items:center;gap:.5rem;min-width:200px;justify-content:center}.load-more-container .spinner-small{width:16px;height:16px;border-width:2px}.client-invitation{max-width:min(100%,700px);margin:0 auto;padding:2rem}.invitation-header{margin-bottom:2rem}.invitation-header h2{margin:0 0 .5rem;font-size:2rem;color:#1a1a1a}.invitation-header p{margin:0;color:#666;font-size:1rem}.invitation-form{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem}.channel-selector{margin-bottom:1.5rem}.channel-label{display:block;font-weight:600;color:#333;margin-bottom:.75rem;font-size:.95rem}.channel-options{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.channel-option{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.5rem;border:2px solid #e9ecef;border-radius:8px;background:#fff;cursor:pointer;transition:all .2s;font-size:1rem;font-weight:500}.channel-option:hover{border-color:#4a90e2;background:#f8f9fa}.channel-option.active{border-color:#4a90e2;background:#e7f3ff;color:#4a90e2}.channel-icon{font-size:2rem}.form-field{margin-bottom:1.5rem}.form-field input,.form-field textarea{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:6px;font-size:1rem;font-family:inherit;transition:border-color .2s}.form-field input:focus,.form-field textarea:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.form-field input:disabled,.form-field textarea:disabled{background:#f8f9fa;cursor:not-allowed}.form-field textarea{resize:vertical;min-height:100px}.error-message{background:#f8d7da;color:#721c24;padding:1rem;border-radius:6px;margin-bottom:1rem;border:1px solid #f5c6cb;display:flex;align-items:center;gap:.75rem}.success-message{background:#d4edda;color:#155724;padding:1rem;border-radius:6px;margin-bottom:1.5rem;border:1px solid #c3e6cb;display:flex;align-items:center;gap:.75rem;animation:slideIn .3s ease-out}.success-icon{font-weight:700;font-size:1.2rem}.form-actions{display:flex;gap:1rem;margin-top:2rem}.form-actions button{flex:1}.invitation-history-section{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.history-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border:none;background:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;color:#1a1a1a;transition:background .2s}.history-toggle:hover{background:#f8f9fa}.toggle-icon{color:#666;font-size:.875rem}.invitation-history{border-top:1px solid #e9ecef;padding:1.5rem}.history-list{display:flex;flex-direction:column;gap:1rem}.history-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#f8f9fa;border-radius:6px;border:1px solid #e9ecef;gap:1rem}.history-actions{display:flex;align-items:center;gap:.75rem}.history-info{flex:1}.history-contact{font-weight:500;color:#1a1a1a;margin-bottom:.5rem}.history-meta{display:flex;gap:1rem;font-size:.875rem;color:#666}.history-channel{display:flex;align-items:center;gap:.25rem}.history-expiration{display:flex;align-items:center;gap:.25rem;color:#d9534f;font-weight:500}.status-accepted{background:#d4edda;color:#155724}.status-expired{background:#f8d7da;color:#721c24}.btn-resend{padding:.5rem 1rem;background:#28a745;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.875rem;font-weight:500;transition:background .2s;display:flex;align-items:center;gap:.5rem;white-space:nowrap}.btn-resend:hover{background:#218838}.btn-resend:active{background:#1e7e34}.btn-delete{padding:.5rem .75rem;background:#dc3545;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:1rem;font-weight:700;transition:background .2s;min-width:36px;height:36px;display:flex;align-items:center;justify-content:center}.btn-delete:hover{background:#c82333}.btn-delete:active{background:#bd2130}.empty-state{text-align:center;padding:2rem;color:#666}@media(max-width:768px){.client-invitation{padding:1rem}.invitation-form{padding:1.5rem}.channel-options{grid-template-columns:1fr}.form-actions{flex-direction:column}.history-item{flex-direction:column;align-items:flex-start;gap:1rem}.history-meta{flex-direction:column;gap:.5rem}}.btn-resend:disabled{opacity:.7;cursor:not-allowed}.btn-resend-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:btn-spin .6s linear infinite;vertical-align:middle}.chart-container{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:8px;padding:12px;box-sizing:border-box}.chart-loading,.chart-empty{color:#6b7280;font-size:13px;text-align:center}.chart-loading{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.recharts-wrapper{outline:none}.recharts-surface{overflow:visible}.recharts-cartesian-axis-tick{font-size:13px}.recharts-legend-wrapper{padding-top:12px!important}.recharts-legend-item{margin-right:16px}.recharts-legend-item-text{font-size:13px;color:#374151}.recharts-tooltip-wrapper{outline:none}.recharts-default-tooltip{background:#fff;border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 4px 6px #0000001a}.recharts-tooltip-label{color:#1f2937;font-weight:500;margin-bottom:4px}.recharts-tooltip-item{color:#374151;font-size:13px}@media(max-width:768px){.chart-container{padding:12px}.recharts-cartesian-axis-tick,.recharts-legend-item-text{font-size:13px}}.role-editor-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1001;padding:16px}.role-editor-modal{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;width:100%;max-width:min(100%,550px);display:flex;flex-direction:column;overflow:hidden}.editor-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e5e7eb}.editor-header h2{margin:0;font-size:18px;font-weight:600;color:#1f2937}.editor-content{flex:1;padding:16px;overflow-y:auto}.roles-grid{display:grid;grid-template-columns:1fr;gap:10px;margin-bottom:12px}.role-card{display:flex;align-items:flex-start;gap:12px;padding:12px;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s;background:#fff}.role-card:hover{border-color:#d1d5db;background:#f9fafb}.role-card.selected{border-color:#2563eb;background:#eff6ff}.role-radio{flex-shrink:0;padding-top:2px}.role-radio input[type=radio]{width:20px;height:20px;cursor:pointer;accent-color:#2563eb}.role-info{flex:1}.role-label{margin:0 0 2px;font-size:14px;font-weight:600;color:#1f2937}.role-description{margin:0;font-size:13px;color:#6b7280}.change-notice{background:#fef3c7;border:1px solid #fcd34d;border-radius:6px;padding:10px;margin-bottom:12px}.change-notice p{margin:0;font-size:13px;color:#92400e}.error-message{background:#fee2e2;border:1px solid #fecaca;border-radius:6px;padding:10px;margin-bottom:12px;color:#991b1b;font-size:13px}.editor-footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid #e5e7eb;background:#f9fafb}@media(max-width:640px){.role-editor-modal{max-width:100%}.editor-header,.editor-content{padding:16px}.editor-footer{padding:12px 16px}}.client-manager-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1001;padding:16px}.client-manager-modal{background:var(--modal-bg, white);border-radius:12px;box-shadow:0 20px 60px #0000004d;width:100%;max-width:min(100%,650px);max-height:80vh;display:flex;flex-direction:column;overflow:hidden}[data-theme=dark] .client-manager-modal{background:#1f2937;border:1px solid #374151}.manager-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border-color, #e5e7eb)}.manager-header h2{margin:0;font-size:18px;font-weight:600;color:var(--text-primary, #1f2937)}[data-theme=dark] .manager-header{border-color:#374151}[data-theme=dark] .manager-header h2{color:#f9fafb}.close-btn{background:none;border:none;font-size:28px;cursor:pointer;color:var(--text-secondary, #6b7280);padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}[data-theme=dark] .client-manager-modal .close-btn{color:#9ca3af}[data-theme=dark] .client-manager-modal .close-btn:hover{background:#374151;color:#f9fafb}.manager-content{flex:1;padding:16px;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.search-box{display:flex}.search-box input{flex:1;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;outline:none;transition:all .2s}.search-box input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.search-box input:disabled{background:#f3f4f6;cursor:not-allowed}[data-theme=dark] .client-manager-modal .search-box input{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .client-manager-modal .search-box input::placeholder{color:#6b7280}[data-theme=dark] .client-manager-modal .search-box input:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa33}[data-theme=dark] .client-manager-modal .search-box input:disabled{background:#1f2937}.clients-list{display:flex;flex-direction:column;gap:6px;flex:1;min-height:150px;max-height:400px;overflow-y:auto}.loading-more{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;color:#6b7280;font-size:13px}.spinner-small{width:16px;height:16px;border:2px solid #e5e7eb;border-top-color:#2563eb;border-radius:50%;animation:spin .8s linear infinite}[data-theme=dark] .client-manager-modal .loading-more{color:#9ca3af}[data-theme=dark] .client-manager-modal .spinner-small{border-color:#374151;border-top-color:#60a5fa}.client-row{align-items:center;gap:10px;padding:10px;border:1px solid transparent;transition:all .2s;cursor:pointer;background:var(--card-background);border-radius:0 6px 6px 0/0px 6px 6px 0px}[data-theme=dark] .client-manager-modal .client-row{background:#1f2937;border-color:#374151}[data-theme=dark] .client-manager-modal .client-row:hover{background:#374151;border-color:#4b5563}.client-checkbox{flex-shrink:0}.client-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#2563eb}.client-checkbox input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}.client-label{flex:1;cursor:pointer;display:flex;flex-direction:column;gap:2px}.client-name{font-weight:500;color:#1f2937;font-size:13px}[data-theme=dark] .client-manager-modal .client-name{color:#f9fafb}[data-theme=dark] .client-manager-modal .client-email{color:#9ca3af}.status-badge{padding:3px 8px;border-radius:12px;font-size:13px;font-weight:500;text-transform:capitalize;flex-shrink:0}.loading{display:flex;align-items:center;justify-content:center;min-height:150px;color:#6b7280}.empty-state{display:flex;align-items:center;justify-content:center;min-height:150px;color:#6b7280;text-align:center}[data-theme=dark] .client-manager-modal .loading,[data-theme=dark] .client-manager-modal .empty-state,[data-theme=dark] .client-manager-modal .loading-state{color:#9ca3af}.selection-summary{padding:10px 16px;background:#f3f4f6;text-align:center;font-size:13px;color:#6b7280;border-top:1px solid #e5e7eb;flex-shrink:0}.selection-summary p{margin:0}[data-theme=dark] .client-manager-modal .selection-summary{background:#374151;color:#9ca3af;border-color:#4b5563}.error-message{background:#fee2e2;border:1px solid #fecaca;border-radius:6px;padding:10px;color:#991b1b;font-size:13px}[data-theme=dark] .client-manager-modal .error-message{background:#7f1d1d;border-color:#991b1b;color:#fecaca}.manager-footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid #e5e7eb;background:#f9fafb}[data-theme=dark] .client-manager-modal .manager-footer{background:#374151;border-color:#4b5563}@media(max-width:640px){.client-manager-modal{max-width:100%;max-height:90vh}.manager-header,.manager-content{padding:16px}.manager-footer{padding:12px 16px}}.team-member-profile-container{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.team-member-profile-container *,.team-member-profile-container *:before,.team-member-profile-container *:after{box-sizing:border-box}.profile-modal{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;width:100%;max-width:min(100%,900px);max-height:85vh;display:flex;flex-direction:column;overflow:hidden}.profile-form{display:flex;flex-direction:column;gap:16px;flex:1;min-height:0}.form-group{display:flex;flex-direction:column;gap:4px}.form-group label{font-weight:500;color:#374151;font-size:14px}.form-group input{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.form-group input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #fe6b3426}.form-actions{display:flex;gap:8px;margin-top:8px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e5e7eb;gap:16px}.header-left{flex-shrink:0;align-self:center}.close-btn{background:none;border:none;font-size:28px;cursor:pointer;color:#6b7280;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.close-btn:hover{background:#f3f4f6;color:#1f2937}.header-center{flex:1;min-width:0}.member-name{margin:0;font-size:20px;font-weight:600;color:#1f2937}.member-email{margin:2px 0 4px;font-size:13px;color:#6b7280}.status-badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:13px;font-weight:500;text-transform:capitalize}.status-badge.active{background:#d1fae5;color:#065f46}.status-badge.inactive{background:#fee2e2;color:#991b1b}.status-badge.unknown{background:#f3f4f6;color:#6b7280}.header-right{flex-shrink:0}.quick-stats{display:flex;gap:24px}.stat{text-align:center}.stat-value{display:block;font-size:16px;font-weight:600;color:#1f2937}.stat-label{display:block;font-size:13px;color:#6b7280;margin-top:2px}.modal-tabs{display:flex;border-bottom:1px solid #e5e7eb;background:#f9fafb}.tab{flex:1;padding:12px 16px;background:none;border:none;cursor:pointer;font-size:13px;font-weight:500;color:#6b7280;border-bottom:3px solid transparent;transition:all .2s}.tab:hover{color:#1f2937;background:#f3f4f6}.team-member-profile-container .modal-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:16px;min-height:0;max-width:none;width:100%}.tab-content{display:flex;flex-direction:column;gap:16px;width:100%}.content-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;width:100%}@media(max-width:1024px){.content-row{grid-template-columns:1fr}}.content-section{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:16px;width:100%;box-sizing:border-box}.content-section.full-width{grid-column:1 / -1}.content-section h3{margin:0 0 12px;font-size:15px;font-weight:600;color:#1f2937}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.section-header h3{margin:0;font-size:15px}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.info-item{display:flex;flex-direction:column;gap:4px}.info-item label{font-size:13px;font-weight:600;color:#6b7280;text-transform:uppercase;margin-bottom:0}.info-item p{margin:0;font-size:14px;color:#1f2937}.member-info-compact{padding:12px 16px}.info-inline{display:flex;flex-direction:column;gap:8px}.info-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px;text-align:center}.info-label{font-size:13px;font-weight:600;color:#6b7280}.info-value{font-size:14px;color:#1f2937}.info-separator{color:#d1d5db;margin:0 4px}.metrics-summary-inline{display:flex;gap:16px;flex-wrap:wrap}.metrics-summary-inline .metric-box{flex:1;min-width:100px;max-width:150px}.metrics-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.metric-box{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:12px;text-align:center}.metric-number{font-size:24px;font-weight:700;color:#2563eb;margin-bottom:2px}.metric-name{font-size:13px;color:#6b7280;font-weight:500}.role-badge{display:inline-block;background:#dbeafe;color:#1e40af;padding:6px 12px;border-radius:6px;font-weight:500;font-size:13px;margin-bottom:12px}.permissions-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}.permission-item{display:flex;align-items:center;gap:6px;padding:6px 10px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:13px;color:#374151}.permission-icon{color:#10b981;font-weight:700}.clients-list{display:flex;flex-direction:column;gap:8px}.client-item{display:flex;justify-content:space-between;align-items:center;padding:10px;background:#fff;border:1px solid #e5e7eb;border-radius:6px}.client-info{flex:1}.client-name{font-weight:500;color:#1f2937;margin-bottom:1px;font-size:13px}.client-email{font-size:13px;color:#6b7280}.client-actions{display:flex;align-items:center;gap:8px}.analytics-header{margin-bottom:12px}.analytics-header h3{margin:0;font-size:16px;font-weight:600;color:#1f2937}.analytics-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}@media(max-width:768px){.analytics-summary{grid-template-columns:repeat(2,1fr)}}.analytics-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:16px;border-radius:8px;text-align:center}.analytics-card:nth-child(2){background:linear-gradient(135deg,#f093fb,#f5576c)}.analytics-card:nth-child(3){background:linear-gradient(135deg,#4facfe,#00f2fe)}.analytics-card:nth-child(4){background:linear-gradient(135deg,#ff9a9e,#fecfef)}.analytics-card:nth-child(5){background:linear-gradient(135deg,#a8edea,#fed6e3)}.analytics-card:nth-child(6){background:linear-gradient(135deg,#ffecd2,#fcb69f)}.card-value{display:block;font-size:28px;font-weight:700;margin-bottom:4px}.card-label{display:block;font-size:13px;opacity:.9}.chart-section{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:12px;margin-bottom:12px}.chart-section h4{margin:0 0 12px;font-size:13px;font-weight:600;color:#1f2937}.analytics-table{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:12px;width:100%;box-sizing:border-box}.analytics-table h4{margin:0 0 12px;font-size:13px;font-weight:600;color:#1f2937}.analytics-table table{width:100%;border-collapse:collapse;table-layout:fixed}.analytics-table th{background:#f3f4f6;padding:8px 10px;text-align:left;font-weight:600;font-size:13px;color:#6b7280;border-bottom:1px solid #e5e7eb}.analytics-table td{padding:8px 10px;border-bottom:1px solid #e5e7eb;font-size:13px;color:#374151}.analytics-table tr:hover{background:var(--table-row-hover)}.compensation-header{margin-bottom:12px}.compensation-header h3{margin:0;font-size:16px;font-weight:600;color:#1f2937}.compensation-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}.comp-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px}.comp-card.highlight{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none}.comp-card.highlight .card-label,.comp-card.highlight .card-detail{color:#ffffffe6}.card-detail{font-size:13px;color:#6b7280;margin-top:4px}.compensation-settings{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:16px}.settings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.settings-header h4{margin:0;font-size:14px;font-weight:600;color:#1f2937}.settings-form{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.form-group{display:flex;flex-direction:column}.form-group label{font-size:13px;font-weight:600;color:#374151;margin-bottom:4px}.input-group{display:flex;align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:6px;overflow:hidden}.currency,.unit{padding:6px 10px;background:#f3f4f6;color:#6b7280;font-size:13px;font-weight:500}.input-group input{flex:1;border:none;padding:6px 10px;font-size:13px;outline:none}.form-group select{padding:6px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;background:#fff;cursor:pointer}.form-actions{grid-column:1 / -1;display:flex;gap:8px;margin-top:8px}.settings-display{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.setting-item{display:flex;justify-content:space-between;align-items:center;padding:10px;background:#fff;border:1px solid #e5e7eb;border-radius:6px}.setting-label{font-weight:500;color:#374151;font-size:13px}.setting-value{font-weight:600;color:#1f2937;font-size:13px}.modal-footer{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;border-top:1px solid #e5e7eb;background:#f9fafb}.footer-actions{display:flex;gap:8px}.btn-secondary:hover{background:#d1d5db}.empty-state{text-align:center;padding:20px 16px;color:#6b7280}.empty-state p{margin:0;font-size:13px}.loading{display:flex;align-items:center;justify-content:center;min-height:400px;color:#6b7280}.error{background:#fee2e2;color:#991b1b;padding:16px;border-radius:6px;margin-bottom:16px}@media(max-width:768px){.team-member-profile-container{padding:10px}.profile-modal{max-width:100%;max-height:95vh;border-radius:8px}.modal-header{flex-direction:column;text-align:center;gap:12px;padding:12px 16px}.header-right{width:100%}.quick-stats{justify-content:center}.content-row,.metrics-summary,.compensation-cards{grid-template-columns:1fr}.modal-footer{flex-direction:column;gap:12px}.footer-actions{width:100%;justify-content:center}.team-member-profile-container .modal-content{padding:12px}}.collapsible-section .section-header.clickable{cursor:pointer;-webkit-user-select:none;user-select:none}.collapsible-section .section-header.clickable:hover{background:#00000005;margin:-12px;padding:12px;border-radius:6px}.section-title-row{display:flex;align-items:center;gap:8px}.collapse-icon{font-size:13px;color:#6b7280;transition:transform .2s ease;display:inline-block}.collapse-icon.expanded{transform:rotate(90deg)}.role-badge-inline{display:inline-block;background:#dbeafe;color:#1e40af;padding:2px 8px;border-radius:4px;font-size:13px;font-weight:500}.collapsible-content{margin-top:12px;padding-top:12px;border-top:1px solid #e5e7eb;animation:slideDown .2s ease}.billing-rate-section{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #bae6fd}.billing-rate-section h3{color:#0369a1}.billing-rate-loading{display:flex;align-items:center;gap:8px;color:#6b7280;font-size:14px;padding:12px 0}.loading-spinner-small{width:16px;height:16px;border:2px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}.billing-rate-display{display:flex;flex-direction:column;gap:12px}.rate-value-display{display:flex;align-items:baseline;gap:4px}.rate-amount{font-size:32px;font-weight:700;line-height:1}.rate-period{font-size:16px;color:#64748b;font-weight:500}.rate-info-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:20px;font-size:13px;font-weight:500;width:fit-content}.rate-info-badge.specific-rate{background:#dcfce7;color:#166534}.rate-info-badge.specific-rate .badge-icon{color:#22c55e}.rate-info-badge.default-rate{background:#fef3c7;color:#92400e}.rate-info-badge.default-rate .badge-icon{color:#f59e0b}.billing-rate-not-configured{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;font-size:14px}.not-configured-icon{font-size:16px}.rate-note{margin:12px 0 0;font-size:13px;color:#64748b;font-style:italic}.view-all-badge{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;color:#166534;font-size:14px}@media(max-width:768px){.rate-amount{font-size:28px}.rate-period{font-size:14px}}.team-management{padding:0;max-width:min(100%,1400px);margin:0 auto}.team-management .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.team-management .page-header h2{margin:0;font-size:1.75rem;color:#1a1a1a}.team-management .page-header p{margin:.5rem 0 0;color:#666}.team-management .header-actions{display:flex;gap:1rem}.team-management .filters{background:#f8f9fa;padding:1.5rem;border-radius:8px;margin-bottom:2rem}.team-management .filters-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:1rem;align-items:end}.team-management .filter-group{display:flex;flex-direction:column}.team-management .filter-group.invite-button-group{justify-content:flex-end;align-items:flex-end}.team-management .filter-group.invite-button-group .btn{white-space:nowrap}.team-management .filter-group label{font-size:.875rem;font-weight:500;color:#333;margin-bottom:.5rem}.team-management .filter-group input,.team-management .filter-group select{padding:.625rem;border:1px solid #ddd;border-radius:4px;font-size:.875rem}.team-management .filter-group input:focus,.team-management .filter-group select:focus{outline:none;border-color:#4a90e2;box-shadow:0 0 0 3px #fe6b3426}.team-management .team-list{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.team-management .team-table{width:100%;border-collapse:collapse}.team-management .team-table thead{background:#f8f9fa;border-bottom:2px solid #e9ecef}.team-management .team-table th{padding:1rem;text-align:left;font-size:.875rem;font-weight:600;color:#495057;text-transform:uppercase;letter-spacing:.5px}.team-management .team-table td{padding:1rem;border-bottom:1px solid #e9ecef;font-size:.875rem}.team-management .team-table tbody tr{transition:background-color .2s;cursor:pointer}.team-management .team-table tbody tr:hover{background-color:var(--table-row-hover)}.team-management .member-info{display:flex;flex-direction:column}.team-management .member-name{font-weight:500;color:#1a1a1a;margin-bottom:.25rem}.team-management .member-email{color:#666;font-size:.8125rem}.team-management .status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:500;text-transform:capitalize}.team-management .status-badge.active{background-color:#d4edda;color:#155724}.team-management .status-badge.inactive{background-color:#f8d7da;color:#721c24}.team-management .status-badge.invited{background-color:#fff3cd;color:#856404}.team-management .role-badge{display:inline-block;padding:.25rem .75rem;border-radius:4px;font-size:.75rem;font-weight:500;background-color:#e7f3ff;color:#06c}.team-management .metrics{display:flex;gap:1rem;font-size:.8125rem;color:#666}.team-management .metric{display:flex;flex-direction:column}.team-management .metric-value{font-weight:600;color:#1a1a1a}.team-management .metric-label{font-size:.75rem;color:#999}.team-management .empty-state{text-align:center;padding:4rem 2rem;color:#666}.team-management .empty-state-icon{font-size:3rem;margin-bottom:1rem;opacity:.3}.team-management .empty-state h3{margin:0 0 .5rem;color:#333}.team-management .empty-state p{margin:0 0 1.5rem}.team-management .loading{text-align:center;padding:3rem;color:#666}.team-management .error{background-color:#f8d7da;color:#721c24;padding:1rem;border-radius:4px;margin-bottom:1rem}.team-management .btn{padding:.625rem 1.25rem;border:none;border-radius:4px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.team-management .btn-primary{background-color:#4a90e2;color:#fff}.team-management .btn-primary:hover{background-color:#357abd}.team-management .btn-primary:disabled{background-color:#ccc;cursor:not-allowed}.team-management .pending-invitations-section{background:var(--warm-tint-bg, #fff7ed);border:1px solid var(--warm-tint-border, #fed7aa);border-radius:12px;padding:20px;margin-bottom:24px}.team-management .pending-invitations-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.team-management .pending-invitations-header h3{color:var(--accent-orange, #fe6b34);margin:0;font-size:16px;font-weight:600;display:flex;align-items:center;gap:8px}.team-management .pending-invitations-header h3:before{content:"✉";font-size:18px}.team-management .pending-invitations-header p{display:none}.team-management .pending-invitations-grid{display:flex;flex-direction:column;gap:12px}.team-management .pending-invitation-card{background:var(--card-background, #ffffff);border:none;border-radius:8px;padding:14px 16px;display:flex;align-items:center;gap:16px}.team-management .pending-invitation-info{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.team-management .pending-invitation-email{font-weight:500;font-size:15px;color:var(--text-primary, #1f2937)}.team-management .pending-invitation-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.team-management .pending-invitation-role{font-size:13px;font-weight:500;color:var(--accent-orange, #fe6b34)}.team-management .pending-invitation-separator{color:var(--text-tertiary, #9ca3af);font-size:12px}.team-management .pending-invitation-date,.team-management .pending-invitation-expires{font-size:13px;color:var(--text-secondary, #6b7280)}.team-management .pending-invitation-actions .btn-sm{padding:6px 14px;font-size:13px;border-radius:6px;border:none;cursor:pointer;font-weight:500;transition:all .2s ease}.team-management .pending-invitation-actions .btn-danger{background:var(--error-bg, #fef2f2);color:var(--error-text, #991b1b)}.team-management .pending-invitation-actions .btn-danger:hover{background:var(--error-color, #ef4444);color:var(--text-inverse, #ffffff)}.modal-content{background:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;max-width:min(100%,600px);width:90%;max-height:90vh;overflow-y:auto;position:relative}@media(max-width:768px){.team-management{padding:1rem}.team-management .page-header{flex-direction:column;align-items:flex-start;gap:1rem}.team-management .filters-row{grid-template-columns:1fr}.team-management .team-table{font-size:.8125rem}.team-management .team-table th,.team-management .team-table td{padding:.75rem .5rem}.team-management .metrics{flex-direction:column;gap:.5rem}.modal-content{width:95%;max-height:95vh}}.team-invitation-modal{width:100%;max-width:min(100%,500px)}.team-invitation-form .form-group textarea{min-height:80px}.team-page{display:flex;flex-direction:column;gap:24px}.team-page-header{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:24px;border-bottom:1px solid #e5e7eb}.team-page-title h1{font-size:28px;font-weight:700;color:#1f2937;margin:0 0 8px}.team-page-title p{font-size:16px;color:#6b7280;margin:0}.team-page-actions{display:flex;gap:12px}.btn-disabled{background-color:#d1d5db;color:#9ca3af;cursor:not-allowed}.btn-disabled:hover{background-color:#d1d5db}@media(max-width:768px){.team-page-header{flex-direction:column;gap:16px;align-items:stretch}.team-page-actions{justify-content:flex-start}}.role-manager{padding:2rem;max-width:min(100%,1400px);margin:0 auto}.role-manager .header-actions{display:flex;gap:1rem}.role-manager-content{display:grid;grid-template-columns:1fr 400px;gap:2rem}.roles-list{min-height:400px}.role-section{margin-bottom:2rem}.role-section h3{font-size:1.25rem;margin:0 0 1rem;color:#333}.role-cards{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.role-card{background:#fff;border:2px solid #e0e0e0;border-radius:8px;padding:1.5rem;cursor:pointer;transition:all .2s ease;word-wrap:break-word;overflow-wrap:break-word;display:flex;flex-direction:column;gap:1rem}.role-card:hover{border-color:#4a90e2;box-shadow:0 2px 8px #0000001a}.role-card.selected{border-color:#4a90e2;background:#f0f7ff}.role-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:0}.role-name{font-size:1.125rem;font-weight:600;color:#1a1a1a;word-wrap:break-word;overflow-wrap:break-word;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.role-badge{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:500;text-transform:uppercase}.role-badge.default{background:#e3f2fd;color:#1976d2}.role-actions{display:flex;gap:.5rem}.btn-icon{background:none;border:none;cursor:pointer;padding:.25rem;font-size:1rem;opacity:.7;transition:opacity .2s}.btn-icon:hover:not(:disabled){opacity:1}.btn-icon:disabled{opacity:.3;cursor:not-allowed}.role-description{color:#666;font-size:.875rem;margin-bottom:0;line-height:1.5;word-wrap:break-word;overflow-wrap:break-word;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.role-inheritance{font-size:.875rem;color:#4a90e2;margin-bottom:0;font-style:italic}.role-stats{display:flex;gap:1.5rem;padding-top:1rem;border-top:1px solid #e0e0e0;margin-top:auto}.role-stat{display:flex;flex-direction:column;align-items:center}.stat-value{font-size:1.25rem;font-weight:600;color:#1a1a1a}.stat-label{font-size:.75rem;color:#666;text-transform:uppercase;margin-top:.25rem}.role-meta{margin-top:1rem;font-size:.75rem;color:#999}.role-details{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem;position:sticky;top:2rem;max-height:calc(100vh - 4rem);overflow-y:auto;word-wrap:break-word;overflow-wrap:break-word}.details-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #e0e0e0}.details-header h3{margin:0;font-size:1.5rem;color:#1a1a1a}.details-section{margin-bottom:1.5rem}.details-section h4{margin:0 0 .75rem;font-size:1rem;color:#333;font-weight:600}.details-section p{margin:0;color:#666;line-height:1.6}.permissions-grouped{display:flex;flex-direction:column;gap:1rem}.permission-category-title{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary, #6b7280);margin:0 0 .375rem;padding-bottom:.25rem;border-bottom:1px solid var(--border-primary, #e5e7eb)}.permissions-list{display:flex;flex-direction:column;gap:.25rem}.permission-item{display:flex;align-items:center;gap:.5rem;padding:.375rem .5rem;background:var(--surface-secondary, #f5f5f5);border-radius:6px;font-size:.8125rem}.permission-icon{color:var(--success-color, #4caf50);font-weight:700;font-size:.75rem}.permission-name{color:var(--text-primary, #333);word-wrap:break-word;overflow-wrap:break-word;flex:1}.detail-row{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid #f0f0f0}.detail-row:last-child{border-bottom:none}.detail-label{font-weight:500;color:#666}.empty-state{text-align:center;padding:3rem 2rem;background:#fff;border:2px dashed #e0e0e0;border-radius:8px}.empty-state-icon{font-size:3rem;margin-bottom:1rem}.empty-state h3{margin:0 0 .5rem;color:#333}.empty-state p{margin:0 0 1.5rem;color:#666}.error{background:#ffebee;color:#c62828;padding:1rem;border-radius:4px;margin-bottom:1rem}.loading{text-align:center;padding:3rem;color:#666}@media(max-width:1024px){.role-manager-content{grid-template-columns:1fr}.role-details{position:static;max-height:none}}@media(max-width:768px){.role-manager{padding:1rem}.role-manager .page-header{flex-direction:column;gap:1rem}.role-cards{grid-template-columns:1fr}.role-stats{gap:1rem}}.assigned-members-list{display:flex;flex-direction:column;gap:4px}.assigned-member-item{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;cursor:pointer;transition:background .2s ease}.assigned-member-item:hover{background:var(--surface-hover, #f3f4f6)}.assigned-member-name{font-size:14px;font-weight:500;color:var(--text-primary, #1f2937)}.assigned-member-item:hover .assigned-member-name{color:var(--accent-orange, #f97316)}.assigned-member-email{font-size:12px;color:var(--text-tertiary, #9ca3af)}.no-members-text{color:var(--text-tertiary, #9ca3af);font-size:14px}.role-form{max-width:min(100%,1100px);margin:0 auto;padding:2rem;background:var(--card-background, #fff);border-radius:12px}.form-header{margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid var(--border-primary, #e5e7eb)}.form-header h2{margin:0 0 .5rem;font-size:1.75rem;color:var(--text-primary, #1f2937)}.form-header p{margin:0;color:var(--text-secondary, #6b7280)}.form-section{margin-bottom:1.5rem}.form-section h3{margin:0 0 1rem;font-size:1.25rem;color:var(--text-primary, #1f2937)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.section-header h3{margin:0}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary, #1f2937)}.form-group input[type=text],.form-group textarea,.form-group select{width:100%;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;font-size:1rem;font-family:inherit;background:var(--input-bg, #fff);color:var(--text-primary, #1f2937);transition:border-color .2s ease}.form-group input[type=text]:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--border-focus, #f97316)}.form-group textarea{resize:vertical}.form-group small{display:block;margin-top:.5rem;color:var(--text-tertiary, #9ca3af);font-size:.875rem}.template-buttons{display:flex;flex-wrap:wrap;gap:.75rem}.btn-small{padding:.5rem 1rem;font-size:.875rem}.permissions-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.permission-category{border:1px solid var(--border-primary, #e5e7eb);border-radius:10px;background:var(--surface-secondary, #f9fafb);overflow:hidden}.category-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s ease}.category-header:hover{background:var(--surface-hover, #f3f4f6)}.category-title{display:flex;align-items:center;gap:8px}.category-chevron{display:flex;align-items:center;color:var(--text-tertiary, #9ca3af);transition:transform .2s ease}.category-chevron.expanded{transform:rotate(90deg)}.category-title h4{margin:0;font-size:14px;font-weight:600;color:var(--text-primary, #1f2937)}.category-count{font-size:12px;font-weight:500;color:var(--text-tertiary, #9ca3af);background:var(--card-background, #fff);padding:2px 8px;border-radius:10px;border:1px solid var(--border-primary, #e5e7eb)}.category-count.has-selected{color:var(--accent-orange, #f97316);border-color:var(--accent-orange, #f97316);background:var(--chip-orange-bg, #fff7ed)}.category-actions{display:flex;align-items:center}.permission-list{display:grid;grid-template-columns:1fr;gap:0;padding:0 8px 8px}.permission-checkbox{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:6px;cursor:pointer;transition:background .15s ease}.permission-checkbox:hover{background:var(--surface-hover, #f3f4f6)}.permission-checkbox input[type=checkbox]{cursor:pointer;width:16px;height:16px;flex-shrink:0;accent-color:var(--accent-orange, #f97316)}.permission-info{flex:1;min-width:0}.permission-name{font-size:13px;font-weight:500;color:var(--text-primary, #1f2937)}.permission-description{font-size:12px;color:var(--text-tertiary, #9ca3af);line-height:1.4}.permission-note{margin-top:2px;font-size:11px;color:var(--warning-color, #f59e0b);font-style:italic}.form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:2rem;border-top:2px solid var(--border-primary, #e5e7eb)}.btn-link{background:none;color:var(--accent-orange, #f97316);padding:.5rem 1rem;text-decoration:none}.btn-link:hover:not(:disabled){text-decoration:underline}.error{background:var(--error-bg, #fef2f2);color:var(--error-text, #991b1b);padding:1rem;border-radius:8px;margin-bottom:1rem;border:1px solid var(--error-border, #fecaca)}@media(max-width:768px){.role-form{padding:1rem}.permissions-grid{grid-template-columns:1fr}.form-header h2{font-size:1.5rem}.section-header{flex-direction:column;align-items:flex-start;gap:.5rem}.template-buttons{flex-direction:column}.template-buttons .btn{width:100%}.form-actions{flex-direction:column-reverse}.form-actions .btn{width:100%}}.role-manager-page{width:100%;height:100%}.usage-subscription{max-width:800px}.usage-subscription.loading,.usage-subscription.error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:1rem}.usage-subscription .loading-spinner{width:32px;height:32px;border:3px solid var(--border-primary, #e5e7eb);border-top-color:var(--accent-orange, #f97316);border-radius:50%;animation:spin 1s linear infinite}.success-banner,.error-banner{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;font-size:.9rem}.success-banner{background:var(--success-bg, #d4edda);color:var(--success-text, #155724);border:1px solid var(--success-border, #c3e6cb)}.error-banner{background:var(--error-bg, #f8d7da);color:var(--error-text, #721c24);border:1px solid var(--error-border, #f5c6cb)}.error-banner button{background:none;border:none;font-size:1.2rem;cursor:pointer;color:inherit;padding:0;line-height:1}.trial-activation-banner{background:var(--warning-bg, #fef3c7);border:1px solid var(--warning-border, #fcd34d);border-radius:12px;padding:20px 24px;margin-bottom:16px}.trial-banner-content{display:flex;align-items:center;justify-content:space-between;gap:20px}.trial-banner-text h4{margin:0 0 4px;font-size:1rem;font-weight:600;color:var(--warning-text, #92400e)}.trial-banner-text p{margin:0;font-size:.875rem;color:var(--warning-text, #92400e);line-height:1.4}.activate-btn{white-space:nowrap;flex-shrink:0;padding:10px 24px;font-weight:600}@media(max-width:600px){.trial-banner-content{flex-direction:column;align-items:stretch}.activate-btn{text-align:center}}.plan-summary{background:var(--card-background);color:#fff;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.plan-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.plan-title{display:flex;align-items:center;gap:.75rem}.plan-title h3{margin:0;font-size:1.25rem;color:var(--text-inverse, #ffffff)}.status-badge{padding:2px 8px;border-radius:12px;font-size:12px;font-weight:600;text-transform:capitalize}.status-badge.active{background:#fff3;color:var(--text-inverse, #ffffff)}.status-badge.trialing{background:var(--warning-bg, #fef3c7);color:var(--warning-text, #92400e)}.status-badge.past_due{background:var(--error-bg, #fee2e2);color:var(--error-text, #991b1b)}.status-badge.suspended{background:var(--chip-orange-bg, #fdf2e9);color:var(--accent-orange, #f4a261);font-weight:700;letter-spacing:.03em}.suspended-warning{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;border-radius:10px;margin-bottom:1.5rem;background:var(--chip-orange-bg, #fdf2e9);border:1px solid var(--accent-orange, #f4a261);color:var(--text-primary, #1a1a1a)}.suspended-warning-icon{font-size:1.5rem;flex-shrink:0}.suspended-warning-content{display:flex;flex-direction:column;gap:.15rem}.suspended-warning-title{font-weight:700;font-size:.95rem;color:var(--accent-orange-hover, #e79552)}.suspended-warning-text{font-size:.85rem;color:var(--text-secondary, #666)}.plan-price{text-align:right}.price-amount{font-size:2rem;font-weight:700}.price-period{font-size:.9rem;opacity:.9}.plan-details{display:flex;gap:2rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.2)}.detail-item{display:flex;flex-direction:column;gap:.25rem}.detail-label{font-size:.8rem;opacity:.8}.detail-value{font-weight:600}.resource-calculator{background:var(--card-background, #ffffff);border:1px solid var(--card-border, #e5e7eb);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 1px 3px #0000004d}.calculator-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.calculator-header h4{margin:0;font-size:1.1rem;color:var(--text-primary, #1f2937)}.resource-row{display:grid;grid-template-columns:1fr auto auto;gap:1rem;align-items:center;padding:1rem 0;border-bottom:1px solid var(--border-primary, #e5e7eb)}.resource-row.resource-row-header{padding:0 0 .5rem;border-bottom:2px solid var(--border-color, #e0e0e0)}.resource-header-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary, #666)}.resource-row:last-of-type{border-bottom:none}.resource-info{display:flex;align-items:center;gap:1rem}.resource-icon{font-size:1.5rem;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--surface-secondary, #f9fafb);border-radius:8px}.resource-details{display:flex;flex-direction:column;gap:.25rem}.resource-name{font-weight:600;font-size:.95rem;color:var(--text-primary, #1f2937)}.resource-description{font-size:.8rem;color:var(--text-secondary, #6b7280)}.resource-control{min-width:120px;text-align:center}.resource-value{font-weight:600;font-size:1.1rem;color:var(--text-primary, #1f2937)}.resource-price{min-width:80px;text-align:right;font-weight:600;color:var(--text-secondary, #6b7280)}.quantity-control{display:flex;align-items:center;gap:.5rem;background:var(--surface-secondary, #f9fafb);border-radius:8px;padding:.25rem}.qty-btn{width:32px;height:32px;border:none;background:var(--card-background, #ffffff);color:var(--text-primary, #1f2937);border-radius:6px;font-size:1.2rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.qty-btn:hover:not(:disabled){background:var(--accent-orange, #f97316);color:var(--text-inverse, #ffffff)}.qty-btn:disabled{opacity:.5;cursor:not-allowed}.qty-value{min-width:40px;text-align:center;font-weight:600;color:var(--text-primary, #1f2937)}.included-resources{display:flex;gap:2rem;padding:.75rem 1rem;background:var(--warm-tint-bg, #fff7ed);border:1px solid var(--warm-tint-border, #fed7aa);border-radius:8px;margin:.5rem 0 1rem}.included-item{display:flex;gap:.5rem;font-size:.85rem}.included-label{color:var(--text-secondary, #6b7280)}.included-value{font-weight:600;color:var(--accent-orange, #f97316)}.calculator-total{margin-top:1.5rem;padding-top:1rem;border-top:2px solid var(--border-primary, #e5e7eb)}.total-row{display:flex;justify-content:space-between;align-items:center}.total-label{font-size:1.1rem;font-weight:600;color:var(--text-primary, #1f2937)}.total-value{font-size:1.5rem;font-weight:700;color:var(--accent-orange, #f97316)}.price-change{text-align:right;margin-top:.5rem}.price-change .increase{color:var(--error-color, #dc2626)}.price-change .decrease{color:var(--success-color, #16a34a)}.calculator-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border-primary, #e5e7eb)}.current-usage{background:var(--card-background, #ffffff);border:1px solid var(--card-border, #e5e7eb);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 1px 3px #0000004d}.current-usage h4{margin:0 0 1rem;font-size:1.1rem;color:var(--text-primary, #1f2937)}.usage-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.usage-item{display:flex;flex-direction:column;gap:.5rem}.usage-header{display:flex;justify-content:space-between;font-size:.9rem}.usage-label{color:var(--text-secondary, #6b7280)}.usage-value{font-weight:600;color:var(--text-primary, #1f2937)}.usage-bar{height:8px;background:var(--surface-secondary, #f9fafb);border-radius:4px;overflow:hidden}.usage-fill{height:100%;background:var(--accent-orange, #f97316);border-radius:4px;transition:width .3s ease}.features-included{background:var(--card-background, #ffffff);border:1px solid var(--card-border, #e5e7eb);border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000004d}.features-included h4{margin:0 0 1rem;font-size:1.1rem;color:var(--text-primary, #1f2937)}.features-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.feature-item{font-size:.9rem;color:var(--text-secondary, #6b7280)}.feature-item:before{color:var(--success-color, #16a34a)}.no-subscription{text-align:center;padding:3rem}.no-subscription h3{margin-bottom:.5rem;color:var(--text-primary, #1f2937)}.no-subscription p{color:var(--text-secondary, #6b7280)}@media(max-width:768px){.plan-header{flex-direction:column;gap:1rem}.plan-price{text-align:left}.resource-row{grid-template-columns:1fr;gap:.75rem}.resource-control,.resource-price{text-align:left}.included-resources{flex-direction:column;gap:.5rem}.usage-grid,.features-grid{grid-template-columns:1fr}}.subscription-usage{padding:16px}.subscription-usage h3{margin:0 0 4px;font-size:16px;font-weight:600;color:var(--text-primary, #1f2937)}.usage-description{margin:0 0 16px;color:var(--text-secondary, #6b7280);font-size:12px}.usage-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@media(max-width:768px){.usage-metrics{grid-template-columns:1fr}}.usage-metric{display:flex;flex-direction:column;gap:6px;padding:12px;background:var(--surface-secondary, #f9fafb);border-radius:6px}.metric-header{display:flex;justify-content:space-between;align-items:center}.metric-label{font-weight:500;color:var(--text-primary, #1f2937);font-size:13px}.metric-value{font-weight:600;color:var(--text-secondary, #6b7280);font-size:12px;white-space:nowrap}.progress-bar{width:100%;height:6px;background-color:var(--surface-secondary, #f9fafb);border-radius:3px;overflow:hidden}.progress-fill{height:100%;transition:width .3s ease,background-color .3s ease;border-radius:3px}.metric-percentage{font-size:11px;color:var(--text-tertiary, #9ca3af);text-align:right}.usage-warning{margin-top:16px;padding:12px;background-color:var(--warning-bg, #fef3c7);border:1px solid var(--warning-border, #fcd34d);border-radius:6px}.usage-warning strong{display:block;margin-bottom:4px;color:var(--warning-text, #92400e);font-size:13px}.usage-warning p{margin:0;color:var(--warning-text, #92400e);font-size:12px}.loading,.error{padding:16px;text-align:center;color:var(--text-secondary, #6b7280);font-size:13px}.subscription-usage .loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 16px;gap:12px}.error{color:var(--error-color, #dc2626)}.support-center{max-width:1200px;margin:0 auto;padding:2rem}.support-nav{margin-bottom:2rem}.back-btn{display:flex;align-items:center;gap:.5rem;background:none;border:none;color:#3b82f6;font-size:1rem;cursor:pointer;padding:.5rem 0}.back-btn:hover{color:#2563eb}.support-overview{display:flex;flex-direction:column;gap:2rem}.support-header{text-align:center;margin-bottom:2rem}.support-header h1{font-size:2.5rem;color:#1f2937;margin-bottom:.5rem}.support-header p{font-size:1.1rem;color:#6b7280}.success-banner{display:flex;align-items:flex-start;gap:1rem;background:var(--success-bg);border:1px solid var(--success-border);border-radius:.5rem;padding:1rem;margin-bottom:2rem}.success-icon{font-size:1.5rem}.success-banner strong{color:var(--success-color)}.success-banner p{color:var(--success-color);margin:.25rem 0 0}.close-btn{background:none;border:none;font-size:1.5rem;color:#6b7280;cursor:pointer;margin-left:auto}.support-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-bottom:3rem}.support-card{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:2rem;cursor:pointer;transition:all .2s;text-align:center}.support-card:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626;transform:translateY(-2px)}.card-icon{font-size:3rem;margin-bottom:1rem}.support-card h3{font-size:1.25rem;color:#1f2937;margin-bottom:.5rem}.support-card p{color:#6b7280;margin-bottom:1rem}.card-action{color:#3b82f6;font-weight:500}.quick-help{background:#f9fafb;border-radius:.75rem;padding:2rem}.quick-help h3{color:#1f2937;margin-bottom:1.5rem;text-align:center}.quick-help-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.help-item{background:#fff;border-radius:.5rem;padding:1.5rem}.help-item h4{color:#1f2937;margin-bottom:.5rem}.help-item p{color:#6b7280;font-size:.9rem}.support-form-container{max-width:600px;margin:0 auto}.support-form-header{text-align:center;margin-bottom:2rem}.support-form-header h2{color:#1f2937;margin-bottom:.5rem}.support-form-header p{color:#6b7280}.support-form{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:2rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group label{display:block;font-weight:500;color:#374151;margin-bottom:.5rem}.form-control{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:1rem;transition:border-color .2s}.form-control.error{border-color:#ef4444}.error-message{color:#ef4444;font-size:.875rem;margin-top:.25rem;display:block}.character-count{color:#6b7280;font-size:.875rem;margin-top:.25rem;display:block}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.knowledge-base{display:flex;flex-direction:column;gap:2rem}.knowledge-base-header{text-align:center}.knowledge-base-header h2{color:#1f2937;margin-bottom:.5rem}.knowledge-base-header p{color:#6b7280}.search-section{max-width:500px;margin:0 auto}.search-form{display:flex}.search-input-group{display:flex;width:100%;border:1px solid #d1d5db;border-radius:.5rem;overflow:hidden}.search-input{flex:1;padding:.75rem 1rem;border:none;font-size:1rem}.search-input:focus{outline:none}.search-btn{background:#3b82f6;color:#fff;border:none;padding:.75rem 1rem;cursor:pointer}.search-btn:hover{background:#2563eb}.knowledge-content{display:grid;grid-template-columns:250px 1fr;gap:2rem}.categories-sidebar{background:#f9fafb;border-radius:.75rem;padding:1.5rem;height:fit-content}.categories-sidebar h3{color:#1f2937;margin-bottom:1rem}.category-list{display:flex;flex-direction:column;gap:.5rem}.category-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:none;border:none;border-radius:.375rem;cursor:pointer;text-align:left;transition:background-color .2s;width:100%}.category-item:hover{background:#e5e7eb}.category-item.active{background:#3b82f6;color:#fff}.category-icon{font-size:1.2rem}.clear-filters-btn{margin-top:1rem;padding:.5rem 1rem;background:#ef4444;color:#fff;border:none;border-radius:.375rem;cursor:pointer;width:100%}.clear-filters-btn:hover{background:#dc2626}.articles-main{min-height:400px}.loading-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;text-align:center}.support-container .spinner{margin-bottom:1rem}.empty-state h3{color:#1f2937;margin-bottom:.5rem}.empty-state p{color:#6b7280}.articles-grid{display:grid;gap:1.5rem}.article-card{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem;cursor:pointer;transition:all .2s}.article-card:hover{border-color:#3b82f6;box-shadow:0 2px 8px #3b82f626}.article-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.article-title{color:#1f2937;margin:0;flex:1}.article-category{background:#f3f4f6;color:#6b7280;padding:.25rem .75rem;border-radius:1rem;font-size:.875rem;margin-left:1rem}.article-summary{color:#6b7280;margin-bottom:1rem;line-height:1.5}.article-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.tag{background:#dbeafe;color:#1e40af;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem}.article-meta{display:flex;gap:1rem;font-size:.875rem;color:#6b7280}.meta-item{display:flex;align-items:center;gap:.25rem}.support-tickets{max-width:800px;margin:0 auto}.tickets-header{text-align:center;margin-bottom:2rem}.tickets-header h2{color:#1f2937;margin-bottom:.5rem}.tickets-header p{color:#6b7280}.empty-state .empty-icon{font-size:4rem;margin-bottom:1rem}.tickets-list{display:flex;flex-direction:column;gap:1rem}.ticket-card{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem;cursor:pointer;transition:all .2s}.ticket-card:hover{border-color:#3b82f6;box-shadow:0 2px 8px #3b82f626}.ticket-card.selected{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626}.ticket-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.ticket-title{display:flex;align-items:center;gap:1rem}.ticket-title h3{color:#1f2937;margin:0}.ticket-id{background:#f3f4f6;color:#6b7280;padding:.25rem .5rem;border-radius:.25rem;font-size:.875rem;font-family:monospace}.ticket-badges{display:flex;gap:.5rem}.status-badge,.priority-badge{padding:.25rem .75rem;border-radius:1rem;font-size:.75rem;font-weight:500;text-transform:capitalize}.ticket-meta{display:flex;gap:1rem;font-size:.875rem;color:#6b7280;text-transform:capitalize}.ticket-details{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.ticket-description h4{color:#1f2937;margin-bottom:.5rem}.ticket-description p{color:#6b7280;line-height:1.6;margin-bottom:1.5rem}.ticket-actions{display:flex;gap:1rem}@media(max-width:768px){.support-center{padding:1rem}.support-options,.quick-help-grid,.form-row,.knowledge-content{grid-template-columns:1fr}.categories-sidebar{order:2}.category-list{flex-direction:row;flex-wrap:wrap}.ticket-header{flex-direction:column;gap:1rem}.ticket-badges{align-self:flex-start}}.snackbar{display:flex;align-items:center;min-width:344px;max-width:672px;padding:12px 16px;border-radius:8px;box-shadow:0 4px 12px #00000026;background-color:#323232;color:#fff;font-size:14px;line-height:1.5;transition:all .3s cubic-bezier(.4,0,.2,1)}.snackbar-visible{opacity:1;transform:translateY(0)}.snackbar-hidden{opacity:0;transform:translateY(20px);pointer-events:none}.snackbar-info{background-color:#2196f3}.snackbar-success{background-color:#4caf50}.snackbar-warning{background-color:#ff9800}.snackbar-error{background-color:#f44336}.snackbar-content{display:flex;align-items:center;gap:12px;width:100%}.snackbar-icon-container{flex-shrink:0;display:flex;align-items:center;justify-content:center}.snackbar-icon{width:24px;height:24px;color:#fff}.snackbar-message{flex:1;word-wrap:break-word}.snackbar-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.snackbar-action-button{padding:6px 12px;background-color:#ffffff1a;border:1px solid rgba(255,255,255,.3);border-radius:4px;color:#fff;font-size:13px;font-weight:500;cursor:pointer;transition:background-color .2s}.snackbar-action-button:hover{background-color:#fff3}.snackbar-action-button:focus{outline:2px solid rgba(255,255,255,.5);outline-offset:2px}.snackbar-close-button{padding:4px;background:none;border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.snackbar-close-button:hover{background-color:#ffffff1a}.snackbar-close-button:focus{outline:2px solid rgba(255,255,255,.5);outline-offset:2px}.snackbar-close-button svg{width:20px;height:20px}@keyframes wiggle{0%,to{transform:rotate(0)}20%{transform:rotate(-12deg)}40%{transform:rotate(10deg)}60%{transform:rotate(-8deg)}80%{transform:rotate(6deg)}}.snackbar-close-button:hover svg,.snackbar-close-button:focus svg{animation:wiggle .5s ease-in-out}@media(prefers-contrast:high){.snackbar{border:2px solid #ffffff}}@media(prefers-reduced-motion:reduce){.snackbar{transition:none}.snackbar-close-button:hover svg,.snackbar-close-button:focus svg{animation:none}}@media(max-width:768px){.snackbar{min-width:unset;max-width:unset;width:calc(100vw - 32px);font-size:13px}.snackbar-action-button{font-size:12px;padding:4px 8px}.snackbar-icon{width:20px;height:20px}}@media(min-width:769px)and (max-width:1024px){.snackbar{min-width:300px;max-width:500px}}.snackbar-container{position:fixed;bottom:24px;left:24px;z-index:9999;pointer-events:none}.snackbar-container>*{pointer-events:auto}@media(max-width:768px){.snackbar-container{bottom:16px;left:16px;right:16px}}.messenger-widget-button{position:fixed;bottom:0;right:24px;height:44px;padding:0 20px;border-radius:12px 12px 0 0;background:var(--brand-atomic-tangerine, #FE6B34);border:none;color:#1a1a1a;cursor:pointer;box-shadow:0 -2px 12px #00000026;display:flex;align-items:center;justify-content:center;gap:8px;transition:transform .2s ease,box-shadow .2s ease;z-index:9998}.messenger-widget-button:hover{background:var(--primary-hover, #E55A2B);transform:translateY(-2px);box-shadow:0 -4px 16px #0003}.messenger-widget-button:active{transform:translateY(0)}.messenger-widget-label{font-size:14px;font-weight:700;white-space:nowrap}.messenger-widget-badge{background:#ef4444;color:#fff;border-radius:10px;padding:2px 6px;font-size:11px;font-weight:600;min-width:18px;text-align:center;box-shadow:0 2px 4px #0003}.messenger-connection-indicator{width:8px;height:8px;border-radius:50%;margin-left:4px}.messenger-connection-indicator.messenger-disconnected{background:#ef4444}.messenger-connection-indicator.messenger-connecting{background:#f59e0b;animation:pulse 1.5s ease-in-out infinite}.messenger-widget{width:380px;height:600px;background:#fff;border-radius:12px;box-shadow:0 8px 32px #00000026;display:flex;flex-direction:column;overflow:hidden;z-index:9999;transition:box-shadow .2s ease}.messenger-widget.dragging{box-shadow:0 12px 48px #00000040;cursor:grabbing}.messenger-widget-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:16px;display:flex;justify-content:space-between;align-items:center;-webkit-user-select:none;user-select:none}.messenger-widget-header h3{margin:0;font-size:18px;font-weight:600}.messenger-widget-controls{display:flex;gap:8px}.messenger-control-button{background:#fff3;border:none;color:#fff;width:32px;height:32px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease}.messenger-control-button:hover{background:#ffffff4d}.messenger-control-button:active{background:#fff6}.messenger-widget-content{flex:1;overflow:hidden;display:flex;flex-direction:column}@media(max-width:768px){.messenger-widget{width:100vw;height:100vh;border-radius:0;right:0!important;bottom:0!important}.messenger-widget-button{right:16px;height:40px;padding:0 16px}.messenger-widget-label{font-size:13px}}.messenger-widget:focus-within{outline:2px solid #667eea;outline-offset:2px}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.messenger-widget{animation:slideUp .3s ease-out}@media(prefers-contrast:high){.messenger-widget{border:2px solid currentColor}.messenger-widget-button{border:2px solid white}}@media(prefers-reduced-motion:reduce){.messenger-widget,.messenger-widget-button{animation:none;transition:none}}.contact-list-container{display:flex;flex-direction:column;height:100%;background:#f9fafb}.contact-list-search{padding:12px 16px;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;gap:8px;position:relative}.search-icon{color:#9ca3af;flex-shrink:0}.contact-search-input{flex:1;border:none;outline:none;font-size:14px;color:#111827;background:transparent}.contact-search-input::placeholder{color:#9ca3af}.search-clear-button{background:none;border:none;color:#9ca3af;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s ease}.search-clear-button:hover{background:#f3f4f6;color:#6b7280}.contact-list-content{flex:1;overflow-y:auto;overflow-x:hidden}.contact-section{margin-bottom:8px}.contact-section-title{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;padding:12px 16px 8px;margin:0}.contact-list{display:flex;flex-direction:column}.contact-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fff;border:none;border-bottom:1px solid #f3f4f6;cursor:pointer;text-align:left;transition:background .2s ease;width:100%}.contact-item:hover{background:#f9fafb}.contact-item:active{background:#f3f4f6}.contact-avatar{position:relative;width:48px;height:48px;flex-shrink:0}.contact-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}.contact-avatar-placeholder{width:100%;height:100%;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:600}.contact-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.contact-header{display:flex;justify-content:space-between;align-items:center;gap:8px}.contact-name{font-size:15px;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contact-time{font-size:12px;color:#9ca3af;flex-shrink:0}.contact-preview{font-size:13px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contact-unread-badge{background:#667eea;color:#fff;border-radius:12px;padding:2px 8px;font-size:12px;font-weight:600;min-width:20px;text-align:center;flex-shrink:0}.contact-list-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:16px;color:#6b7280}.contact-list-container .loading-spinner{border-top-color:#667eea}.contact-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:12px;padding:32px;text-align:center;color:#6b7280}.contact-list-empty svg{color:#d1d5db}.contact-list-empty p{font-size:16px;font-weight:600;color:#374151;margin:0}.contact-list-empty span{font-size:14px;color:#9ca3af}.contact-list-content::-webkit-scrollbar{width:6px}.contact-list-content::-webkit-scrollbar-track{background:transparent}.contact-list-content::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.contact-list-content::-webkit-scrollbar-thumb:hover{background:#9ca3af}.contact-item-unread .contact-name{font-weight:700;color:#000}.contact-item-unread .contact-preview{font-weight:600;color:#111827}.contact-item-unread .contact-time{font-weight:600;color:#667eea}.contact-item:focus{outline:2px solid #667eea;outline-offset:-2px}@media(prefers-reduced-motion:reduce){.loading-spinner{animation:none}.contact-item{transition:none}}.new-message-button-container{padding:8px 12px;background:#fff;border-bottom:1px solid #e5e7eb}.new-message-button{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:8px 12px;background:#667eea;color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:background .2s ease}.new-message-button:hover{background:#5a6fd6}.new-message-button:focus{outline:2px solid #667eea;outline-offset:2px}.new-message-picker{display:flex;flex-direction:column;flex:1;overflow:hidden;background:#f9fafb}.new-message-picker-header{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#fff;border-bottom:1px solid #e5e7eb}.new-message-back-button{display:flex;align-items:center;justify-content:center;background:none;border:none;color:#667eea;cursor:pointer;padding:4px;border-radius:4px}.new-message-back-button:hover{background:#f3f4f6}.new-message-picker-title{font-size:14px;font-weight:600;color:#111827}.new-message-picker-search{padding:8px 12px;background:#fff;border-bottom:1px solid #e5e7eb}.new-message-picker-list{flex:1;overflow-y:auto}.new-message-picker-empty{display:flex;align-items:center;justify-content:center;padding:32px;color:#9ca3af;font-size:14px}.new-message-picker-empty p{margin:0}.message-thread-container{display:flex;flex-direction:column;height:100%;background:var(--card-bg, white)}.message-thread-header{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border-color, #e5e7eb);background:var(--card-bg, white)}.back-button{background:none;border:none;color:var(--text-secondary, #6b7280);cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background .2s ease}.back-button:hover{background:var(--hover-bg, #f3f4f6);color:var(--text-primary, #374151)}.back-button:hover{background:#f3f4f6;color:#374151}.thread-info{flex:1;min-width:0}.thread-info h3{margin:0;font-size:16px;font-weight:600;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-thread-messages{flex:1;overflow-y:auto;overflow-x:hidden;padding:16px;display:flex;flex-direction:column;gap:4px;background:var(--bg-secondary, #f9fafb)}.loading-more{display:flex;justify-content:center;padding:12px}.message-thread-container .loading-spinner-small,.message-thread-container .loading-spinner{border-top-color:#667eea}.message-date-group{display:flex;flex-direction:column;gap:4px}.message-date-divider{display:flex;align-items:center;justify-content:center;margin:16px 0 8px}.message-date-divider span{background:#e5e7eb;color:#6b7280;font-size:12px;font-weight:500;padding:4px 12px;border-radius:12px}.message{display:flex;flex-direction:column;max-width:75%;margin-bottom:8px}.message-sent{align-self:flex-end;align-items:flex-end}.message-received{align-self:flex-start;align-items:flex-start}.message-consecutive{margin-top:-4px}.message-sender{font-size:12px;font-weight:600;color:#6b7280;margin-bottom:4px;padding:0 12px}.message-bubble{padding:10px 14px;border-radius:16px;word-wrap:break-word;position:relative}.message-sent .message-bubble{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-bottom-right-radius:4px}.message-received .message-bubble{background:var(--card-bg, white);color:var(--text-primary, #111827);border:1px solid var(--border-color, #e5e7eb);border-bottom-left-radius:4px}.message-content{font-size:14px;line-height:1.5;white-space:pre-wrap}.message-edited{font-size:11px;opacity:.7;font-style:italic;margin-left:4px}.message-meta{display:flex;align-items:center;gap:4px;margin-top:4px;padding:0 12px}.message-time{font-size:11px;color:#9ca3af}.message-status{font-size:12px;display:flex;align-items:center}.message-status-sending,.message-status-sent{color:#9ca3af}.message-status-delivered{color:#10b981}.message-status-read{color:#667eea}.message-status-failed{color:#ef4444}.typing-indicator{display:flex;align-items:center;gap:8px;padding:8px 12px;margin-top:8px}.typing-dots{display:flex;gap:4px;padding:8px 12px;background:var(--card-bg, white);border:1px solid var(--border-color, #e5e7eb);border-radius:16px}.typing-dots span{width:6px;height:6px;background:#9ca3af;border-radius:50%;animation:typing 1.4s infinite}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.7}30%{transform:translateY(-8px);opacity:1}}.typing-text{font-size:12px;color:#6b7280;font-style:italic}.message-thread-loading{flex:1;display:flex;align-items:center;justify-content:center}.message-thread-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:32px;text-align:center;color:#6b7280}.message-thread-empty svg{color:#d1d5db}.message-thread-empty p{font-size:16px;font-weight:600;color:#374151;margin:0}.message-thread-empty span{font-size:14px;color:#9ca3af}.message-thread-messages::-webkit-scrollbar{width:6px}.message-thread-messages::-webkit-scrollbar-track{background:transparent}.message-thread-messages::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.message-thread-messages::-webkit-scrollbar-thumb:hover{background:#9ca3af}.back-button:focus{outline:2px solid #667eea;outline-offset:2px}@media(prefers-reduced-motion:reduce){.loading-spinner,.loading-spinner-small,.typing-dots span{animation:none}}.message-composer{border-top:1px solid #e5e7eb;background:#fff;display:flex;flex-direction:column}.message-attachments{padding:12px 16px;display:flex;flex-wrap:wrap;gap:8px;border-bottom:1px solid #f3f4f6}.attachment-preview{display:flex;align-items:center;gap:8px;padding:6px 12px;background:#f3f4f6;border-radius:8px;font-size:13px;color:#374151}.attachment-name{max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.attachment-remove{background:none;border:none;color:#6b7280;cursor:pointer;padding:2px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s ease}.attachment-remove:hover{background:#e5e7eb;color:#374151}.emoji-picker{border-bottom:1px solid #e5e7eb;background:#fff;padding:12px}.emoji-picker-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.emoji-picker-header span{font-size:13px;font-weight:600;color:#374151}.emoji-picker-close{background:none;border:none;color:#6b7280;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s ease}.emoji-picker-close:hover{background:#f3f4f6;color:#374151}.emoji-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.emoji-button{background:none;border:none;font-size:24px;cursor:pointer;padding:8px;border-radius:8px;transition:background .2s ease;display:flex;align-items:center;justify-content:center}.emoji-button:hover{background:#f3f4f6}.emoji-button:active{background:#e5e7eb}.message-composer-input{display:flex;align-items:flex-end;gap:8px;padding:12px 16px}.composer-action-button{background:none;border:none;color:#6b7280;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background .2s ease,color .2s ease;flex-shrink:0}.composer-action-button:hover{background:#f3f4f6;color:#374151}.composer-action-button:active{background:#e5e7eb}.file-input-hidden{display:none}.message-input{flex:1;border:1px solid #e5e7eb;border-radius:20px;padding:10px 16px;font-size:14px;font-family:inherit;color:#111827;resize:none;outline:none;transition:border-color .2s ease;min-height:40px;max-height:120px;overflow-y:auto}.message-input:focus{border-color:#667eea}.message-input::placeholder{color:#9ca3af}.message-input-error{border-color:#ef4444}.message-input-error:focus{border-color:#ef4444}.send-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff;cursor:pointer;padding:10px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:transform .2s ease,opacity .2s ease;flex-shrink:0;width:40px;height:40px}.send-button:hover:not(:disabled){transform:scale(1.05)}.send-button:active:not(:disabled){transform:scale(.95)}.send-button:disabled{opacity:.5;cursor:not-allowed}.character-count{padding:8px 16px;display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#6b7280;border-top:1px solid #f3f4f6}.character-count-error{color:#ef4444;font-weight:600}.character-count-warning{color:#ef4444;font-size:11px}.message-input::-webkit-scrollbar{width:4px}.message-input::-webkit-scrollbar-track{background:transparent}.message-input::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:2px}.message-input::-webkit-scrollbar-thumb:hover{background:#9ca3af}.composer-action-button:focus,.send-button:focus,.emoji-button:focus{outline:2px solid #667eea;outline-offset:2px}.message-input:focus{outline:none;box-shadow:0 0 0 3px #667eea1a}@media(max-width:768px){.emoji-grid{grid-template-columns:repeat(5,1fr)}.emoji-button{font-size:20px;padding:6px}}@media(prefers-reduced-motion:reduce){.send-button,.composer-action-button,.emoji-button{transition:none}}@media(prefers-contrast:high){.message-input{border-width:2px}.send-button{border:2px solid white}}.calendar-filters{background:var(--card-bg, white);border-radius:8px;padding:20px;box-shadow:var(--shadow-card, 0 2px 4px rgba(0, 0, 0, .1));margin-bottom:24px;border:1px solid var(--card-border, transparent)}.filters-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.filters-header h3{margin:0;font-size:18px;font-weight:600;color:var(--text-primary, #111827)}.clear-filters-button{padding:6px 12px;border:1px solid var(--border-primary, #e5e7eb);background:var(--card-bg, white);color:var(--error-color, #dc2626);border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.clear-filters-button:hover{background:var(--error-bg, #fef2f2);border-color:var(--error-border, #fecaca)}.filters-controls{display:flex;gap:12px;flex-wrap:wrap}.filter-dropdown-container{position:relative}.filter-button{display:flex;align-items:center;gap:8px;padding:8px 16px;border:1px solid var(--border-primary, #e5e7eb);background:var(--card-bg, white);border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s;min-width:140px;color:var(--text-primary, #333)}.filter-button:hover{background:var(--surface-secondary, #f9fafb);border-color:var(--border-secondary, #d1d5db)}.filter-button.active{background:var(--primary-light, #eff6ff);border-color:var(--primary-color, #3b82f6);color:var(--info-text, #1e40af)}.filter-label{flex:1;text-align:left}.filter-count{background:var(--primary-color, #3b82f6);color:#fff;border-radius:10px;padding:2px 8px;font-size:13px;font-weight:600;min-width:20px;text-align:center}.dropdown-arrow{font-size:13px;color:var(--text-secondary, #6b7280);transition:transform .2s}.filter-button:hover .dropdown-arrow{color:var(--text-primary, #111827)}.filter-dropdown{position:absolute;top:calc(100% + 4px);left:0;background:var(--card-bg, white);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;box-shadow:var(--shadow-lg, 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05));min-width:240px;max-height:320px;overflow-y:auto;z-index:100;animation:dropdownSlideIn .15s ease-out}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.dropdown-loading,.dropdown-empty{padding:16px;text-align:center;color:var(--text-secondary, #6b7280);font-size:14px}.dropdown-search{padding:8px;border-bottom:1px solid var(--border-primary, #e5e7eb);position:sticky;top:0;background:var(--card-bg, white);z-index:1}.dropdown-search input{width:100%;padding:8px 12px;border:1px solid var(--input-border, #e5e7eb);border-radius:6px;font-size:14px;outline:none;transition:all .2s;background:var(--input-bg, white);color:var(--text-primary, #333)}.dropdown-search input:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.dropdown-search input::placeholder{color:var(--input-placeholder, #9ca3af)}.dropdown-options{padding:8px}.dropdown-option{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:6px;cursor:pointer;transition:background .2s;font-size:14px}.dropdown-option:hover{background:var(--hover-bg, #f9fafb)}.dropdown-option input[type=checkbox]{cursor:pointer;width:16px;height:16px;accent-color:var(--primary-color, #3b82f6)}.dropdown-option span{flex:1;color:var(--text-primary, #111827)}.active-filters{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid var(--border-primary, #e5e7eb)}.filter-badge{display:flex;align-items:center;gap:8px;padding:6px 12px;background:var(--primary-light, #eff6ff);border:1px solid var(--info-border, #bfdbfe);border-radius:16px;font-size:13px;color:var(--info-text, #1e40af);font-weight:500}.filter-badge span{line-height:1}.remove-badge{background:none;border:none;color:var(--info-text, #1e40af);cursor:pointer;font-size:18px;line-height:1;padding:0;width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.remove-badge:hover{background:var(--info-bg, #dbeafe)}.filter-dropdown::-webkit-scrollbar{width:8px}.filter-dropdown::-webkit-scrollbar-track{background:#f3f4f6;border-radius:4px}.filter-dropdown::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.filter-dropdown::-webkit-scrollbar-thumb:hover{background:#9ca3af}@media(max-width:768px){.calendar-filters{padding:16px}.filters-header{flex-direction:column;align-items:flex-start;gap:12px}.filters-header h3{font-size:16px}.clear-filters-button,.filters-controls{width:100%}.filter-button{flex:1;min-width:0}.filter-dropdown{left:0;right:0;min-width:auto}.active-filters{margin-top:12px;padding-top:12px}.filter-badge{font-size:13px;padding:4px 10px}}.tenant-block-times{padding:20px}.block-times-header{margin-bottom:30px}.block-times-header h2{margin:0 0 10px;color:var(--text-primary, #1f2937)}.block-times-header p{color:var(--text-secondary, #6b7280);margin:0 0 20px}.block-time-form{background:var(--card-background, #ffffff);border:1px solid var(--card-border, #e5e7eb);padding:20px;border-radius:8px;margin-bottom:30px}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:5px;font-weight:500;color:var(--text-primary, #1f2937)}.form-group input{width:100%;padding:8px 12px;border:1px solid var(--border-primary, #d1d5db);border-radius:4px;font-size:14px;background:var(--input-bg, #ffffff);color:var(--text-primary, #1f2937)}.form-group input[aria-invalid=true]{border-color:var(--error-border, #fecaca)}.block-time-wysiwyg-toolbar{display:flex;gap:6px;padding:8px;border:1px solid var(--border-primary, #d1d5db);border-bottom:none;border-radius:4px 4px 0 0;background:var(--surface-secondary, #f9fafb)}.block-time-wysiwyg-button{padding:4px 10px;border:1px solid var(--border-primary, #d1d5db);border-radius:4px;background:var(--surface-primary, #ffffff);color:var(--text-primary, #1f2937);cursor:pointer;font-size:13px;transition:background .2s ease,border-color .2s ease,color .2s ease}.block-time-wysiwyg-button:hover{background:var(--surface-hover, #f3f4f6);border-color:var(--border-focus, #fb923c)}.block-time-reason-editor{min-height:120px;padding:10px 12px;border:1px solid var(--border-primary, #d1d5db);border-radius:0 0 4px 4px;background:var(--input-bg, #ffffff);color:var(--text-primary, #1f2937);font-size:14px;line-height:1.5;white-space:normal;overflow-wrap:anywhere}.block-time-reason-editor:empty:before{content:attr(data-placeholder);color:var(--text-tertiary, #9ca3af)}.block-time-reason-editor[aria-invalid=true]{border-color:var(--error-border, #fecaca)}.form-error{margin:6px 0 0;color:var(--error-text, #991b1b);font-size:13px}.block-times-list{display:flex;flex-direction:column;gap:15px}.block-time-card{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:15px;border:1px solid transparent;border-radius:8px;background:var(--card-background, #ffffff);box-shadow:0 1px 3px #0000004d;transition:border-color .2s ease}.block-time-card:hover{border-color:var(--accent-orange-hover, #e79552)}.block-time-info{min-width:0;flex:1}.block-time-reason-display{margin:0 0 8px;font-size:16px;font-weight:500;line-height:1.5;color:var(--text-primary, #1f2937);white-space:normal;overflow-wrap:anywhere;word-break:break-word}.block-time-reason-display p,.block-time-reason-display ul,.block-time-reason-display ol{margin:0 0 8px}.block-time-reason-display p:last-child,.block-time-reason-display ul:last-child,.block-time-reason-display ol:last-child{margin-bottom:0}.block-time-reason-display ul,.block-time-reason-display ol{padding-left:20px}.block-time-show-more{background:none;border:none;color:var(--accent-orange, #e8772e);cursor:pointer;font-size:13px;font-weight:500;padding:0;margin-top:4px;display:inline}.block-time-show-more:hover{color:var(--accent-orange-hover, #e79552);text-decoration:underline}.block-time-delete-modal{background:var(--card-background, #ffffff);border:1px solid var(--card-border, #e5e7eb);border-radius:12px;box-shadow:0 1px 3px #0000004d}.block-time-delete-modal-body{display:flex;flex-direction:column;gap:12px;color:var(--text-primary, #1f2937)}.block-time-delete-modal-body p{margin:0}.block-time-delete-preview{padding:12px 14px;background:var(--surface-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;color:var(--text-primary, #1f2937);line-height:1.5;overflow-wrap:anywhere;word-break:break-word}.block-time-delete-preview p,.block-time-delete-preview ul,.block-time-delete-preview ol{margin:0 0 8px}.block-time-delete-preview p:last-child,.block-time-delete-preview ul:last-child,.block-time-delete-preview ol:last-child{margin-bottom:0}.block-time-delete-dates{color:var(--text-secondary, #6b7280);font-size:14px}.block-time-delete-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px}.block-time-info p{margin:0;color:var(--text-secondary, #6b7280);font-size:14px}.loading{text-align:center;padding:20px;color:var(--text-secondary, #6b7280)}.no-data{text-align:center;padding:40px;color:var(--text-tertiary, #9ca3af)}@media(max-width:640px){.block-time-card{flex-direction:column}.block-time-delete-actions{flex-direction:column-reverse}.block-time-delete-actions .btn{width:100%}}.calendar-page{max-width:min(100%,1400px);margin:0 auto;padding:24px}.calendar-page .page-header{margin-bottom:24px}.calendar-page .page-header h1{margin:0 0 8px;font-size:32px;font-weight:700;color:var(--text-primary, #111827)}.page-description{margin:0;font-size:16px;color:var(--text-secondary, #6b7280)}@media(max-width:768px){.calendar-page{padding:16px}.calendar-page .page-header h1{font-size:24px}.calendar-page .page-description{font-size:14px}}.trainer-earnings-report{padding:20px;max-width:1400px;margin:0 auto}.trainer-earnings-report .report-header{margin-bottom:30px}.trainer-earnings-report .report-header h2{margin:0 0 8px;font-size:24px;font-weight:600;color:var(--text-primary, #1f2937)}.trainer-earnings-report .report-description{margin:0;color:var(--text-secondary, #6b7280);font-size:14px}.trainer-earnings-report .summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:30px}.trainer-earnings-report .summary-card{background:var(--card-background, #fffdf9);border:1px solid transparent;border-radius:12px;padding:20px;text-align:center;box-shadow:0 1px 3px #00000014}.trainer-earnings-report .summary-card.revenue{border-left:4px solid var(--success-color, #10b981)}.trainer-earnings-report .summary-card.paid{border-left:4px solid var(--warning-color, #f59e0b)}.trainer-earnings-report .summary-card.profit{border-left:4px solid var(--accent-orange, #f4a261)}.trainer-earnings-report .summary-card.margin{border-left:4px solid var(--info-color, #FE6B34)}.summary-label{font-size:12px;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-weight:500}.summary-value{font-size:28px;font-weight:700;color:var(--text-primary, #1f2937)}.trainers-table-container{background:var(--card-background, #fffdf9);border:1px solid var(--card-border, #e5e7eb);border-radius:12px;overflow:hidden;margin-bottom:20px}.trainers-table{width:100%;border-collapse:collapse}.trainers-table thead{background:var(--table-header-bg, #f9fafb)}.trainers-table th{padding:16px;text-align:left;font-size:12px;font-weight:600;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--border-primary, #e5e7eb)}.trainers-table th.text-center{text-align:center}.trainers-table th.text-right{text-align:right}.trainers-table tbody tr{border-bottom:1px solid var(--border-primary, #e5e7eb);transition:background-color .2s ease}.trainers-table tbody tr:hover{background-color:var(--table-row-hover, #f3f4f6)}.trainers-table tbody tr:last-child{border-bottom:none}.trainers-table td{padding:16px;font-size:14px;color:var(--text-primary, #1f2937)}.trainers-table td.text-center{text-align:center}.trainers-table td.text-right{text-align:right}.trainer-info{display:flex;flex-direction:column;gap:4px}.trainer-name{font-weight:600;color:var(--text-primary, #1f2937)}.trainer-email{font-size:12px;color:var(--text-secondary, #6b7280)}.rate-type{font-size:11px;color:var(--text-tertiary, #9ca3af);margin-left:2px}.revenue-cell{color:var(--success-color, #10b981);font-weight:600}.paid-cell{color:var(--warning-color, #f59e0b);font-weight:600}.profit-cell .positive{color:var(--accent-orange, #f4a261);font-weight:600}.profit-cell .negative{color:var(--error-color, #ef4444);font-weight:600}.margin-cell .positive{color:var(--info-color, #FE6B34);font-weight:600}.margin-cell .negative{color:var(--error-color, #ef4444);font-weight:600}.trainer-earnings-report .report-footer{display:flex;justify-content:flex-end;gap:12px;margin-top:20px}.trainer-earnings-report .report-footer .refresh-button{padding:12px 24px;background:var(--accent-orange, #f4a261);color:var(--text-inverse, #ffffff);border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s ease;white-space:nowrap;min-width:140px;width:auto;height:auto}.trainer-earnings-report .report-footer .refresh-button:hover{background:var(--accent-orange-hover, #e79552)}.trainer-earnings-report .loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-secondary, #6b7280)}.trainer-earnings-report .error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px}.trainer-earnings-report .error-message{color:var(--error-color, #ef4444);margin-bottom:16px;font-size:14px}.trainer-earnings-report .retry-button{padding:10px 20px;background:var(--error-color, #ef4444);color:var(--text-inverse, #ffffff);border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:opacity .2s ease}.trainer-earnings-report .retry-button:hover{opacity:.9}.trainer-earnings-report .empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-secondary, #6b7280);text-align:center}.trainer-earnings-report .empty-hint{font-size:14px;color:var(--text-tertiary, #9ca3af);margin-top:8px}@media(max-width:1200px){.trainers-table-container{overflow-x:auto}.trainers-table{min-width:1000px}}@media(max-width:768px){.trainer-earnings-report .summary-cards{grid-template-columns:repeat(2,1fr)}.summary-value{font-size:24px}.trainers-table th,.trainers-table td{padding:12px 8px;font-size:13px}}@media(max-width:480px){.trainer-earnings-report .summary-cards{grid-template-columns:1fr}}.chart-container-inner{width:100%;height:100%}.chart-title{font-size:1rem;font-weight:600;color:var(--text-primary, #1f2937);margin-bottom:1rem;text-align:center}.chart-wrapper{position:relative;width:100%;min-height:300px}.chart-empty{display:flex;align-items:center;justify-content:center;min-height:300px;color:var(--text-tertiary, #9ca3af);font-style:italic}.chart-bars{display:flex;align-items:flex-end;justify-content:space-around;height:300px;padding:2rem 1rem 3rem;gap:.5rem}.bar-container{display:flex;flex-direction:column;align-items:center;height:100%;position:relative}.bar-value{font-size:.85rem;font-weight:600;color:var(--text-primary, #1f2937);margin-bottom:.5rem;min-height:1.5rem}.bar{width:100%;max-width:80px;min-width:40px;background-color:var(--accent-orange, #f4a261);border-radius:4px 4px 0 0;transition:all .3s ease;position:relative;margin-top:auto}.bar:hover{opacity:.8;transform:translateY(-2px)}.bar-label{font-size:.75rem;color:var(--text-secondary, #6b7280);text-align:center;margin-top:.5rem;word-wrap:break-word;max-width:100%}.line-chart{width:100%;height:300px;margin-bottom:1rem}.line-chart line{stroke:var(--border-primary, #e5e7eb)}.line-chart-labels{display:flex;justify-content:space-between;padding:0 1rem;margin-top:.5rem}.line-label{font-size:.75rem;color:var(--text-secondary, #6b7280);text-align:center;flex:1}.pie-chart-wrapper{display:flex;flex-direction:column;align-items:center;gap:1.5rem}.pie-chart{width:100%;max-width:300px;height:auto;cursor:pointer}.pie-chart path{transition:opacity .2s ease}.pie-chart path:hover{opacity:.8}.pie-legend{display:flex;flex-direction:column;gap:.5rem;width:100%}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.85rem}.legend-color{width:16px;height:16px;border-radius:2px;flex-shrink:0}.legend-label{color:var(--text-secondary, #6b7280)}.axis-label{font-size:.85rem;color:var(--text-secondary, #6b7280);font-weight:500;text-align:center;margin-top:.5rem}.axis-label.y-axis{position:absolute;left:-2rem;top:50%;transform:rotate(-90deg) translate(-50%);transform-origin:left center;white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media(max-width:768px){.chart-bars{padding:1rem .5rem 2rem}.bar{max-width:60px;min-width:30px}.bar-value{font-size:.75rem}.bar-label,.line-label{font-size:.65rem}.pie-chart{max-width:250px}.legend-item{font-size:.75rem}.legend-color{width:12px;height:12px}}@media(max-width:480px){.chart-wrapper{min-height:250px}.chart-bars,.line-chart{height:250px}.bar-value{font-size:.7rem}.bar-label{font-size:.6rem}.pie-chart{max-width:200px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.bar,.line-chart path,.pie-chart path{animation:fadeIn .5s ease-out}.business-metrics-report{padding:20px;max-width:1400px;margin:0 auto}.business-metrics-report .report-header{margin-bottom:30px}.business-metrics-report .report-header h2{margin:0 0 16px;font-size:24px;font-weight:600;color:var(--text-primary, #1f2937)}.report-controls{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.date-range-selector{display:flex;align-items:center;gap:8px}.date-range-selector label{font-size:14px;font-weight:500;color:var(--text-secondary, #6b7280)}.date-range-selector input[type=date]{padding:8px 12px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;font-size:14px;background:var(--input-bg, #ffffff);color:var(--text-primary, #1f2937)}.date-range-selector input[type=date]:focus{border-color:var(--border-focus, #f4a261);outline:none}.export-controls{display:flex;gap:8px;align-items:center}.export-controls select{padding:8px 12px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;font-size:14px;background:var(--input-bg, #ffffff);color:var(--text-primary, #1f2937)}.export-button{padding:8px 16px;background:var(--accent-orange, #f4a261);color:var(--text-inverse, #ffffff);border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s ease}.export-button:hover:not(:disabled){background:var(--accent-orange-hover, #e79552)}.export-button:disabled{opacity:.6;cursor:not-allowed}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:30px}.metric-card{background:var(--card-background, #fffdf9);border:1px solid transparent;border-radius:12px;padding:24px;box-shadow:0 1px 3px #00000014}.metric-card h3{margin:0 0 12px;font-size:14px;font-weight:500;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.5px}.metric-value{font-size:32px;font-weight:700;color:var(--text-primary, #1f2937);margin-bottom:8px}.metric-description{margin:0;font-size:13px;color:var(--text-tertiary, #9ca3af)}.charts-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:20px;margin-bottom:30px}.chart-container{background:var(--card-background, #fffdf9);border:1px solid transparent;border-radius:12px;padding:24px;box-shadow:0 1px 3px #00000014}.chart-container h3{margin:0 0 20px;font-size:16px;font-weight:600;color:var(--text-primary, #1f2937)}.insights-section{background:var(--card-background, #fffdf9);border:1px solid transparent;border-radius:12px;padding:24px;box-shadow:0 1px 3px #00000014}.insights-section h3{margin:0 0 16px;font-size:18px;font-weight:600;color:var(--text-primary, #1f2937)}.insights-list{list-style:none;padding:0;margin:0}.insights-list li{padding:12px 16px;margin-bottom:8px;border-radius:6px;font-size:14px}.insight-positive{background:var(--success-bg, #d1fae5);color:var(--success-text, #065f46);border-left:4px solid var(--success-color, #10b981)}.insight-warning{background:var(--warning-bg, #fef3c7);color:var(--warning-text, #92400e);border-left:4px solid var(--warning-color, #f59e0b)}.business-metrics-report .loading-state,.business-metrics-report .error-state,.business-metrics-report .empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:var(--text-secondary, #6b7280)}.business-metrics-report .error-message{color:var(--error-color, #ef4444);margin-bottom:16px}.business-metrics-report .retry-button{padding:10px 20px;background:var(--error-color, #ef4444);color:var(--text-inverse, #ffffff);border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:opacity .2s ease}.business-metrics-report .retry-button:hover{opacity:.9}@media(max-width:768px){.report-controls{flex-direction:column;align-items:stretch}.charts-section{grid-template-columns:1fr}}.team-performance-report{padding:20px;max-width:1400px;margin:0 auto}.team-performance-report .report-header{margin-bottom:30px}.team-performance-report .report-header h2{margin:0 0 8px;font-size:24px;font-weight:600;color:var(--text-primary, #1f2937)}.team-performance-report .report-description{margin:0;color:var(--text-secondary, #6b7280);font-size:14px}.performance-table-container{background:var(--card-background, #fffdf9);border:1px solid var(--card-border, #e5e7eb);border-radius:12px;overflow:hidden}.performance-table{width:100%;border-collapse:collapse}.performance-table thead{background:var(--table-header-bg, #f9fafb)}.performance-table th{padding:16px;text-align:left;font-size:12px;font-weight:600;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--border-primary, #e5e7eb);background:inherit}.performance-table th.text-center{text-align:center}.performance-table tbody tr{border-bottom:1px solid var(--border-primary, #e5e7eb);transition:background-color .2s ease}.performance-table tbody tr:hover{background-color:var(--table-row-hover, #f3f4f6)}.performance-table tbody tr:last-child{border-bottom:none}.performance-table td{padding:16px;font-size:14px;color:var(--text-primary, #1f2937)}.performance-table td.text-center{text-align:center}.member-name{font-weight:600;color:var(--text-primary, #1f2937)}.team-performance-report .loading-state,.team-performance-report .error-state,.team-performance-report .empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:var(--text-secondary, #6b7280)}.team-performance-report .error-message{color:var(--error-color, #ef4444);margin-bottom:16px}.team-performance-report .retry-button{padding:10px 20px;background:var(--error-color, #ef4444);color:var(--text-inverse, #ffffff);border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:opacity .2s ease}.team-performance-report .retry-button:hover{opacity:.9}@media(max-width:768px){.performance-table-container{overflow-x:auto}.performance-table{min-width:600px}}.inactive-clients-report{padding:20px}.inactive-clients-report .report-header{margin-bottom:24px}.inactive-clients-report .report-header h2{margin:0 0 8px;font-size:24px;color:var(--text-primary, #1f2937)}.inactive-clients-report .report-subtitle{margin:0;color:var(--text-secondary, #6b7280);font-size:14px}.inactive-clients-report .report-generated{margin:8px 0 0;color:var(--text-tertiary, #9ca3af);font-size:12px}.inactive-clients-report .summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-bottom:24px}.inactive-clients-report .summary-card{background:var(--card-background, #fffdf9);border-radius:12px;padding:20px;text-align:center;border:1px solid transparent;box-shadow:0 1px 3px #00000014}.inactive-clients-report .summary-card.warning{background:var(--warning-bg, #fef3c7);border-color:var(--warning-border, #fcd34d)}.inactive-clients-report .card-value{font-size:32px;font-weight:700;color:var(--text-primary, #1f2937);margin-bottom:4px}.inactive-clients-report .summary-card.warning .card-value{color:var(--warning-color, #f59e0b)}.inactive-clients-report .card-label{font-size:14px;color:var(--text-secondary, #6b7280)}.inactive-clients-report .clients-table-container{background:var(--card-background, #fffdf9);border-radius:12px;padding:20px;border:1px solid var(--card-border, #e5e7eb);margin-bottom:20px}.inactive-clients-report .clients-table-container h3{margin:0 0 16px;font-size:16px;color:var(--text-primary, #1f2937)}.inactive-clients-report .clients-table{width:100%;border-collapse:collapse}.inactive-clients-report .clients-table th,.inactive-clients-report .clients-table td{padding:12px;text-align:left;border-bottom:1px solid var(--border-primary, #e5e7eb)}.inactive-clients-report .clients-table th{font-weight:600;color:var(--text-secondary, #6b7280);font-size:12px;text-transform:uppercase;letter-spacing:.5px}.inactive-clients-report .clients-table td{color:var(--text-primary, #1f2937);font-size:14px}.inactive-clients-report .clients-table tbody tr:hover{background:var(--surface-hover, #fef1e6)}.inactive-clients-report .client-name{font-weight:500}.inactive-clients-report .client-email{color:var(--text-secondary, #6b7280)}.inactive-clients-report .days-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500}.inactive-clients-report .days-badge.status-moderate{background:var(--warning-bg, #fef3c7);color:var(--warning-text, #92400e)}.inactive-clients-report .days-badge.status-warning{background:var(--warning-bg, #fef3c7);color:var(--warning-color, #f59e0b)}.inactive-clients-report .days-badge.status-critical{background:var(--error-bg, #fee2e2);color:var(--error-text, #dc2626)}.inactive-clients-report .status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500;text-transform:capitalize}.inactive-clients-report .status-badge.status-active{background:var(--success-bg, #d1fae5);color:var(--success-text, #065f46)}.inactive-clients-report .status-badge.status-inactive{background:var(--surface-secondary, #f9fafb);color:var(--text-tertiary, #9ca3af)}.inactive-clients-report .status-badge.status-invited{background:var(--chip-orange-bg, #fef1e6);color:var(--accent-orange, #f4a261)}.inactive-clients-report .no-inactive-clients{text-align:center;padding:40px 20px;background:var(--success-bg, #d1fae5);border-radius:12px;border:1px solid var(--success-border, #a7f3d0)}.inactive-clients-report .success-icon{font-size:48px;margin-bottom:16px}.inactive-clients-report .no-inactive-clients h3{margin:0 0 8px;color:var(--success-color, #10b981)}.inactive-clients-report .no-inactive-clients p{margin:0;color:var(--text-secondary, #6b7280)}.inactive-clients-report .report-message{text-align:center;padding:40px 20px;background:var(--card-background, #fffdf9);border-radius:12px;border:1px solid var(--card-border, #e5e7eb)}.inactive-clients-report .message-icon{font-size:48px;margin-bottom:16px}.inactive-clients-report .report-message p{margin:0 0 8px;color:var(--text-primary, #1f2937)}.inactive-clients-report .message-hint{color:var(--text-secondary, #6b7280)!important;font-size:14px}.inactive-clients-report .retry-button{margin-top:16px;padding:10px 20px;background:var(--accent-orange, #f4a261);color:var(--text-inverse, #ffffff);border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s ease}.inactive-clients-report .retry-button:hover{background:var(--accent-orange-hover, #e79552)}.inactive-clients-report .report-loading{text-align:center;padding:60px 20px}.inactive-clients-report .report-footer{display:flex;justify-content:flex-end;margin-top:20px}.inactive-clients-report .refresh-button{padding:10px 20px;background:var(--card-background, #fffdf9);color:var(--text-primary, #1f2937);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;cursor:pointer;font-size:14px;display:flex;align-items:center;gap:8px;transition:all .2s ease}.inactive-clients-report .refresh-button:hover{background:var(--surface-hover, #fef1e6);border-color:var(--accent-orange, #f4a261)}@media(max-width:768px){.inactive-clients-report .clients-table-container{overflow-x:auto}.inactive-clients-report .clients-table{min-width:600px}}.reports-dashboard{padding:2rem;max-width:1400px;margin:0 auto}.dashboard-header{margin-bottom:2rem}.header-content h1{margin:0 0 8px;font-size:2rem;color:var(--text-primary, #1f2937);font-weight:600}.header-subtitle{margin:0;font-size:1rem;color:var(--text-secondary, #6b7280)}.report-breadcrumb{margin-bottom:24px}.back-button{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:var(--card-background, #fffdf9);border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;font-size:14px;font-weight:500;color:var(--text-secondary, #6b7280);cursor:pointer;transition:all .2s ease}.back-button:hover{background:var(--surface-hover, #fef1e6);border-color:var(--accent-orange, #f4a261);color:var(--accent-orange, #f4a261)}.category-filter{display:flex;gap:12px;margin-bottom:32px;flex-wrap:wrap}.filter-button{padding:10px 20px;background:var(--card-background, #fffdf9);border:2px solid var(--border-primary, #e5e7eb);border-radius:8px;font-size:14px;font-weight:500;color:var(--text-secondary, #6b7280);cursor:pointer;transition:all .2s ease}.filter-button:hover{border-color:var(--accent-orange, #f4a261);color:var(--accent-orange, #f4a261)}.filter-button.active{background:var(--accent-orange, #f4a261);border-color:var(--accent-orange, #f4a261);color:var(--text-inverse, #ffffff)}.reports-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;margin-bottom:32px}.report-card{display:flex;align-items:center;gap:16px;padding:24px;background:var(--card-background, #fffdf9);border:1px solid transparent;border-radius:12px;box-shadow:0 1px 3px #00000014;cursor:pointer;transition:all .2s ease}.report-card:hover{border-color:var(--accent-orange-hover, #e79552);box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.report-icon{font-size:48px;flex-shrink:0}.report-content{flex:1}.report-title{margin:0 0 8px;font-size:18px;font-weight:600;color:var(--text-primary, #1f2937)}.report-description{margin:0;font-size:14px;color:var(--text-secondary, #6b7280);line-height:1.5}.report-arrow{font-size:24px;color:var(--accent-orange, #f4a261);flex-shrink:0;transition:transform .2s ease}.report-card:hover .report-arrow{transform:translate(4px)}.no-reports{text-align:center;padding:60px 20px;color:var(--text-tertiary, #9ca3af)}.report-placeholder{padding:60px 20px;text-align:center;background:var(--card-background, #fffdf9);border:1px solid var(--border-primary, #e5e7eb);border-radius:12px}.report-placeholder h3{margin:0 0 12px;font-size:24px;color:var(--text-primary, #1f2937)}.report-placeholder p{margin:0;color:var(--text-secondary, #6b7280);font-size:16px}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-secondary, #6b7280)}.loading-spinner p{margin:8px 0}.error-message{padding:20px;background:var(--error-bg, #fee2e2);border:1px solid var(--error-border, #fecaca);border-radius:8px;color:var(--error-text, #dc2626)}.error-message button{margin-top:12px;padding:8px 16px;background:var(--error-color, #ef4444);color:var(--text-inverse, #ffffff);border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.error-message button:hover{opacity:.9}.no-data{text-align:center;padding:60px 20px;color:var(--text-secondary, #6b7280)}.no-data button{margin-top:16px;padding:10px 20px;background:var(--accent-orange, #f4a261);color:var(--text-inverse, #ffffff);border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.no-data button:hover{background:var(--accent-orange-hover, #e79552)}@media(max-width:768px){.reports-dashboard{padding:1rem}.header-content h1{font-size:1.5rem}.reports-grid{grid-template-columns:1fr}.category-filter{flex-direction:column}.filter-button{width:100%;text-align:center}.report-card{padding:20px}.report-icon{font-size:36px}.report-title{font-size:16px}.report-description{font-size:13px}}@media(max-width:480px){.report-card{flex-direction:column;text-align:center}.report-arrow{transform:rotate(90deg)}.report-card:hover .report-arrow{transform:rotate(90deg) translate(4px)}}.template-manager{padding:24px;max-width:1400px;margin:0 auto}.template-manager.loading,.template-manager.error{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:400px;gap:1rem}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:16px;color:var(--text-secondary, #6b7280)}.error-message{text-align:center}.error-message p{color:var(--error-text, #dc2626);margin-bottom:16px}.retry-button{padding:8px 16px;background-color:var(--accent-orange, #FE6B34);color:var(--text-inverse, white);border:none;border-radius:6px;cursor:pointer;font-size:14px}.retry-button:hover{background-color:var(--accent-orange-hover, #E55A2B)}.template-manager-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.template-manager-header h2{font-size:24px;font-weight:600;color:var(--text-primary, #111827);margin:0}.create-template-button{padding:10px 20px;background-color:var(--accent-orange, #FE6B34);color:var(--text-inverse, white);border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s ease}.create-template-button:hover{background-color:var(--accent-orange-hover, #E55A2B)}.template-filters{display:flex;gap:16px;margin-bottom:24px;flex-wrap:wrap;align-items:flex-end}.search-filter-group{flex:1;min-width:250px}.search-filter-group .search-input{width:100%}.search-input{padding:10px 16px;border:1px solid var(--border-primary, #d1d5db);border-radius:6px;font-size:14px;background:var(--input-bg, white);color:var(--text-primary, #1f2937);transition:border-color .2s ease}.search-input:focus{outline:none;border-color:var(--border-focus, #2563eb);box-shadow:0 0 0 3px #2563eb1a}.filter-group{display:flex;flex-direction:column;gap:6px}.filter-group label{font-size:13px;font-weight:500;color:var(--text-secondary, #374151)}.filter-select{padding:10px 12px;border:1px solid var(--border-primary, #d1d5db);border-radius:6px;font-size:14px;background-color:var(--input-bg, white);color:var(--text-primary, #1f2937);cursor:pointer;min-width:150px}.filter-select:focus{outline:none;border-color:var(--border-focus, #2563eb);box-shadow:0 0 0 3px #2563eb1a}.no-templates{text-align:center;padding:60px 20px;background-color:var(--surface-secondary, #f9fafb);border-radius:8px;border:2px dashed var(--border-primary, #d1d5db)}.no-templates p{font-size:16px;color:var(--text-secondary, #6b7280);margin-bottom:16px}.clear-filters-button,.create-first-template-button{padding:10px 20px;background-color:var(--accent-orange, #FE6B34);color:var(--text-inverse, white);border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s ease}.clear-filters-button:hover,.create-first-template-button:hover{background-color:var(--accent-orange-hover, #E55A2B)}.templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.template-card{background:var(--card-background, white);border:1px solid transparent;border-radius:12px;box-shadow:0 1px 3px #0000004d;padding:20px;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;gap:12px}.template-card:hover{border-color:var(--accent-orange-hover, #E55A2B)}.template-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.template-title-row{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.channel-icon{font-size:20px;flex-shrink:0;cursor:help}.template-name{font-size:16px;font-weight:600;color:var(--text-primary, #111827);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.category-badge{padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500;text-transform:capitalize;white-space:nowrap;flex-shrink:0}.category-badge-welcome{background-color:var(--info-bg, #dbeafe);color:var(--info-text, #1e40af)}.category-badge-reminder{background-color:var(--warning-bg, #fef3c7);color:var(--warning-text, #92400e)}.category-badge-followup{background-color:var(--success-bg, #d1fae5);color:var(--success-text, #065f46)}.category-badge-custom{background-color:var(--surface-secondary, #e5e7eb);color:var(--text-secondary, #374151)}.template-subject{font-size:13px;color:var(--text-secondary, #6b7280);padding:8px 12px;background-color:var(--surface-secondary, #f9fafb);border-radius:6px}.template-subject strong{color:var(--text-primary, #374151)}.template-body-preview{font-size:14px;color:var(--text-secondary, #4b5563);line-height:1.5;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.template-meta{display:flex;gap:16px;padding-top:8px;border-top:1px solid var(--border-primary, #e5e7eb);font-size:13px}.template-placeholders,.template-roles{display:flex;align-items:center;gap:6px}.placeholder-count,.role-count{color:var(--text-primary, #111827);font-weight:600}.template-performance{display:flex;gap:12px;padding:10px 12px;background-color:var(--surface-secondary, #f9fafb);border-radius:6px;font-size:13px}.performance-metric{display:flex;flex-direction:column;gap:2px}.metric-label{color:var(--text-tertiary, #6b7280);font-size:11px;text-transform:uppercase;letter-spacing:.5px}.metric-value{color:var(--text-primary, #111827);font-weight:600;font-size:14px}.template-updated{font-size:12px;color:var(--text-tertiary, #9ca3af)}.template-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid var(--border-primary, #e5e7eb);margin-top:auto}.view-details-button{padding:6px 12px;background-color:transparent;color:var(--accent-orange, #FE6B34);border:1px solid var(--accent-orange, #FE6B34);border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.view-details-button:hover{background-color:var(--accent-orange, #FE6B34);color:var(--text-inverse, white)}.template-detail{padding:24px;max-width:900px;margin:0 auto}.template-detail-header{margin-bottom:32px}.back-button{padding:8px 16px;background-color:transparent;color:var(--accent-orange, #FE6B34);border:1px solid var(--accent-orange, #FE6B34);border-radius:6px;cursor:pointer;font-size:14px;margin-bottom:16px;transition:all .2s ease}.back-button:hover{background-color:var(--warm-tint-bg, #fff7ed)}.header-actions{display:flex;justify-content:space-between;align-items:center}.header-actions h1{font-size:28px;font-weight:600;color:var(--text-primary, #111827);margin:0}.edit-button{padding:10px 20px;background-color:var(--accent-orange, #FE6B34);color:var(--text-inverse, white);border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s ease}.edit-button:hover{background-color:var(--accent-orange-hover, #E55A2B)}.template-detail-content{display:flex;flex-direction:column;gap:24px}.template-meta-info{display:flex;gap:24px;padding:16px;background-color:var(--surface-secondary, #f9fafb);border-radius:8px;flex-wrap:wrap}.meta-item{font-size:14px;color:var(--text-secondary, #4b5563)}.meta-item strong{color:var(--text-primary, #111827);margin-right:6px}.template-body-section,.template-placeholders-section{background:var(--card-background, white);border:1px solid var(--card-border, #e5e7eb);border-radius:8px;padding:20px}.template-body-section h3,.template-placeholders-section h3{font-size:16px;font-weight:600;color:var(--text-primary, #111827);margin:0 0 16px}.template-body-display{font-size:14px;line-height:1.6;color:var(--text-primary, #374151);white-space:pre-wrap;padding:16px;background-color:var(--surface-secondary, #f9fafb);border-radius:6px}.placeholders-list{display:flex;flex-wrap:wrap;gap:8px}.placeholder-badge{padding:6px 12px;background-color:var(--chip-orange-bg, #fff7ed);color:var(--accent-orange, #FE6B34);border-radius:6px;font-size:13px;font-family:Courier New,monospace;font-weight:500}.template-editor{padding:24px;max-width:900px;margin:0 auto}.template-editor.template-editor-compact{padding:16px;max-width:1100px;overflow:visible}.template-editor-compact .template-editor-form{overflow:visible}.template-editor-compact .template-editor-header{margin-bottom:12px}.template-editor-compact .template-editor-header h2{font-size:18px}.template-editor-compact .form-section-compact{margin-bottom:12px;overflow:visible}.template-editor-compact .form-row-inline{display:flex;gap:12px;align-items:flex-end}.template-editor-compact .form-row-inline .form-group{margin-bottom:0}.template-editor-compact .form-row-inline .flex-1{flex:1}.template-editor-compact .form-row-inline .flex-2{flex:2}.template-editor-compact .form-group label{font-size:12px;margin-bottom:4px;display:block;font-weight:500;color:var(--text-secondary, #374151)}.template-editor-compact .form-input,.template-editor-compact .form-select,.template-editor-compact .form-textarea{padding:8px 10px;font-size:13px;box-sizing:border-box}.template-editor-compact .form-input,.template-editor-compact .form-select{height:36px}.template-variables-info-compact{display:flex;align-items:center;gap:8px;padding:8px 12px;background-color:var(--surface-secondary, #f9fafb);border-radius:6px;margin-bottom:12px;font-size:12px}.template-variables-label{font-weight:600;color:var(--text-secondary, #6b7280);white-space:nowrap}.template-variables-list{color:var(--accent-orange, #FE6B34);font-size:11px;background:transparent;padding:0}.template-editor-compact .email-editors-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;overflow:visible}.template-editor-compact .email-editors-row .form-group{margin-bottom:0;min-width:0;overflow:visible}.template-editor-compact .tox-tinymce{overflow:visible;border-radius:4px}.template-editor-compact .tox .tox-statusbar{border-radius:0 0 4px 4px}.template-editor-compact .form-section-compact{overflow:visible}.template-editor-compact .sms-editors-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.template-editor-compact .sms-editors-row .form-group{margin-bottom:0}.template-editor-compact .char-count{font-weight:400;color:var(--text-tertiary, #9ca3af);font-size:11px}.template-editor-compact .permissions-row{display:flex;align-items:center;gap:16px;padding:12px 0;border-top:1px solid var(--border-primary, #e5e7eb)}.template-editor-compact .permissions-row>label{font-size:13px;font-weight:600;margin-bottom:0;white-space:nowrap}.template-editor-compact .role-checkboxes-inline{display:flex;gap:16px;flex-wrap:wrap}.template-editor-compact .role-checkboxes-inline .checkbox-label{display:flex;align-items:center;gap:6px;font-size:13px;cursor:pointer}.template-editor-compact .role-checkboxes-inline .checkbox-label input{margin:0}.template-editor-compact .template-editor-actions{margin-top:12px;padding-top:12px;display:flex;justify-content:space-between;align-items:center;gap:12px}.template-editor-compact .template-editor-actions-right{display:flex;gap:8px;align-items:center}@media(max-width:768px){.template-editor-compact .form-row-inline{flex-direction:column;gap:8px}.template-editor-compact .email-editors-row,.template-editor-compact .sms-editors-row{grid-template-columns:1fr}.template-editor-compact .permissions-row{flex-direction:column;align-items:flex-start;gap:8px}}.template-editor-form{display:flex;flex-direction:column;gap:12px}.template-editor-form .form-row-inline{display:flex;gap:12px;align-items:flex-end}.template-editor-form .form-group{margin-bottom:0}.template-editor-form .form-group.flex-1{flex:1}.template-editor-form .form-group.flex-2{flex:2}.template-editor-form .form-group label{font-size:12px;margin-bottom:4px;display:block;font-weight:500;color:var(--text-secondary, #374151)}.template-editor-form .form-input,.template-editor-form .form-select{padding:8px 10px;font-size:13px;height:36px;box-sizing:border-box;width:100%;border:1px solid var(--border-primary, #d1d5db);border-radius:6px}.template-editor-form .form-textarea{padding:8px 10px;font-size:13px;width:100%;border:1px solid var(--border-primary, #d1d5db);border-radius:6px;resize:vertical}.template-editor-form .email-editors-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.template-editor-form .email-editors-row .tox-tinymce{min-height:200px!important}.template-editor-form .sms-editors-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.template-editor-form .char-count{font-weight:400;color:var(--text-tertiary, #9ca3af);font-size:11px}.template-editor-form .permissions-row{display:flex;align-items:center;gap:16px;padding:12px 0;border-top:1px solid var(--border-primary, #e5e7eb)}.template-editor-form .permissions-row>label{font-size:13px;font-weight:600;margin-bottom:0;white-space:nowrap}.template-editor-form .role-checkboxes-inline{display:flex;gap:16px;flex-wrap:wrap}.template-editor-form .role-checkboxes-inline .checkbox-label{display:flex;align-items:center;gap:8px;font-size:13px;cursor:pointer;padding:8px 14px;border-radius:6px;border:1px solid var(--border-primary, #d1d5db);background:var(--card-background, white);color:var(--text-primary, #374151);transition:all .2s ease;font-weight:500}.template-editor-form .role-checkboxes-inline .checkbox-label:hover{border-color:var(--accent-orange-hover, #e55a2b);background:var(--warm-tint-bg, #fff7ed)}.template-editor-form .role-checkboxes-inline .checkbox-label:has(input:checked){border-color:var(--accent-orange, #FE6B34);background:var(--accent-orange, #FE6B34);color:var(--text-inverse, white)}.template-editor-form .role-checkboxes-inline .checkbox-label input[type=checkbox]{width:16px;height:16px;margin:0;accent-color:var(--accent-orange, #FE6B34);cursor:pointer}.template-editor-form .role-checkboxes-inline .checkbox-label:has(input:checked) input[type=checkbox]{accent-color:var(--text-inverse, white)}.template-view-meta{display:flex;flex-wrap:wrap;gap:16px;padding:10px 14px;background-color:var(--surface-secondary, #f9fafb);border-radius:6px;font-size:13px}.template-view-meta-item{color:var(--text-secondary, #6b7280)}.template-view-meta-item strong{color:var(--text-primary, #111827);margin-right:4px}.template-view-sections{display:flex;flex-direction:column;gap:12px;align-items:center}.template-view-section{background:var(--surface-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;padding:12px;width:100%;max-width:600px}.template-view-section h4{font-size:12px;font-weight:600;color:var(--text-secondary, #6b7280);margin:0 0 8px;text-transform:uppercase;letter-spacing:.5px}.template-view-body{font-size:13px;line-height:1.5;color:var(--text-primary, #374151);text-align:left}.template-view-body p{margin:0 0 8px}.template-view-body p:last-child{margin-bottom:0}.template-view-body-text{font-size:13px;line-height:1.5;color:var(--text-primary, #374151);white-space:pre-wrap;text-align:left}.template-editor-modal{overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.capitalize{text-transform:capitalize}@media(max-width:768px){.template-editor-modal{max-height:calc(100dvh - 1rem)}.template-editor-modal .modal-body{overflow:visible}.template-editor-form .form-row-inline{flex-direction:column;gap:8px}.template-editor-form .email-editors-row,.template-editor-form .sms-editors-row{grid-template-columns:1fr}.template-editor-form .permissions-row{flex-direction:column;align-items:flex-start;gap:8px}}.template-list{display:flex;flex-direction:column;gap:10px}.template-item{padding:15px;border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;cursor:pointer;transition:all .2s ease}.template-item:hover{background-color:var(--surface-hover, #f5f5f5);border-color:var(--accent-orange-hover, #e55a2b)}.notification-center{padding:20px}.message-composer{padding:15px;border:1px solid var(--border-primary, #e5e7eb);border-radius:8px}.message-composer textarea{width:100%;min-height:100px;padding:10px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;font-family:inherit;resize:vertical;background:var(--input-bg, white);color:var(--text-primary, #374151)}.message-composer button{margin-top:10px}.template-editor-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:24px;padding-top:24px;border-top:1px solid var(--border-primary, #e5e7eb)}.template-editor-actions-right{display:flex;gap:12px}.cancel-button{padding:8px 16px;background-color:transparent;color:var(--text-secondary, #6b7280);border:1px solid var(--border-primary, #d1d5db);border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease}.cancel-button:hover:not(:disabled){background-color:var(--surface-hover, #f3f4f6);border-color:var(--text-tertiary, #9ca3af)}.cancel-button:disabled{opacity:.6;cursor:not-allowed}.preview-button{padding:8px 16px;background-color:transparent;color:var(--accent-orange, #FE6B34);border:1px solid var(--accent-orange, #FE6B34);border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease}.preview-button:hover:not(:disabled){background-color:var(--warm-tint-bg, #fff7ed)}.preview-button:disabled{opacity:.6;cursor:not-allowed}.save-button{padding:8px 16px;background-color:var(--accent-orange, #FE6B34);color:var(--text-inverse, white);border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s ease}.save-button:hover:not(:disabled){background-color:var(--accent-orange-hover, #E55A2B)}.template-variables-info{display:flex;align-items:flex-start;gap:10px;margin-bottom:20px;padding:12px 16px;background-color:var(--surface-hover);border-color:var(--border-color);border-radius:6px}.template-variables-icon{font-size:16px;flex-shrink:0}.template-variables-content{flex:1}.template-variables-info .template-variables-title{margin:0 0 4px;font-weight:600;font-size:13px;color:var(--text-primary, #1f2937)}.template-variables-info .template-variables-text{margin:0;font-size:12px;color:var(--accent-orange, #FE6B34);font-family:Courier New,monospace}.template-editor-form .input-error{border-color:var(--error-color, #dc2626)}.template-editor-form .field-error{display:block;font-size:11px;color:var(--error-text, #dc2626);margin-top:4px}.template-editor-error{color:var(--error-text, #dc2626);margin-bottom:16px;padding:12px;background-color:var(--error-bg, #fef2f2);border:1px solid var(--error-border, #fecaca);border-radius:6px}.tox-tinymce{margin-bottom:4px}.tox .tox-statusbar{display:none}.template-editor-placeholder{height:220px;display:flex;align-items:center;justify-content:center;background:var(--input-bg, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;color:var(--text-tertiary, #6b7280);font-size:14px}.modal-overlay{position:fixed;inset:0;background:var(--modal-overlay, rgba(0, 0, 0, .6));display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:modal-overlay-fade-in .2s ease-out}@keyframes modal-overlay-fade-in{0%{opacity:0}to{opacity:1}}.modal,.modal-content{background:var(--modal-bg, white);border-radius:12px;box-shadow:0 20px 60px #0000004d;position:relative;display:flex;flex-direction:column;max-height:90vh;min-height:0;overflow:hidden;animation:modal-slide-in .2s ease-out}@keyframes modal-slide-in{0%{opacity:0;transform:translateY(-20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-xs,.modal-content.modal-xs{width:100%;max-width:400px}.modal-sm,.modal-content.modal-sm{width:100%;max-width:500px}.modal-md,.modal-content.modal-md{width:100%;max-width:650px}.modal-lg,.modal-content.modal-lg{width:100%;max-width:900px}.modal-xl,.modal-content.modal-xl{width:100%;max-width:1200px}.modal-full,.modal-content.modal-full{width:95vw;max-width:95vw}.modal-close,.modal-close-x,.modal-close-btn{position:absolute;top:1rem;right:1rem;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background-color:transparent;border:none;border-radius:50%;cursor:pointer;color:var(--text-secondary, #6b7280);font-size:1.5rem;font-weight:300;line-height:1;padding:0;z-index:10;transition:all .15s ease}.modal-close:hover,.modal-close-x:hover,.modal-close-btn:hover{color:var(--text-primary, #374151)}.modal-close:focus,.modal-close-x:focus,.modal-close-btn:focus{outline:none;box-shadow:0 0 0 2px var(--focus-ring, rgba(254, 107, 52, .4))}.modal-close:active,.modal-close-x:active,.modal-close-btn:active{transform:scale(.95)}.modal-close svg,.modal-close-x svg,.modal-close-btn svg{width:18px;height:18px;flex-shrink:0}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 3.5rem 1.25rem 1.5rem;border-bottom:1px solid var(--border-primary, #e5e7eb);background:transparent;border-radius:12px 12px 0 0;flex-shrink:0}.modal-title,.modal-header h2,.modal-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary, #1f2937);line-height:1.4}.modal-subtitle{margin:.25rem 0 0;font-size:.875rem;color:var(--text-secondary, #6b7280);font-weight:400}.modal>form,.modal-content>form{display:flex;flex-direction:column;overflow:hidden;min-height:0;flex:1}.modal-body{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:1.5rem;color:var(--text-primary, #374151);background:var(--modal-bg, white)}.modal-body:first-child{padding-top:3rem;border-radius:12px 12px 0 0}.modal-body:last-child{border-radius:0 0 12px 12px}.modal-body:only-child{border-radius:12px;padding-top:3rem}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--border-primary, #e5e7eb);background:var(--modal-bg, white);border-radius:0 0 12px 12px;flex-shrink:0}.modal-footer-left{margin-right:auto;display:flex;align-items:center;gap:.5rem}.modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;margin-top:1.5rem}[data-theme=dark] .modal,[data-theme=dark] .modal-content{box-shadow:0 20px 60px #00000080}[data-theme=dark] .modal-body{background:var(--modal-bg, #2A2240)}[data-theme=dark] .modal-footer{background:var(--modal-bg, #2A2240);border-top-color:var(--border-primary, #3D3355)}[data-theme=dark] .modal-close,[data-theme=dark] .modal-close-x,[data-theme=dark] .modal-close-btn{color:var(--text-secondary, #A89BB8)}[data-theme=dark] .modal-close:hover,[data-theme=dark] .modal-close-x:hover,[data-theme=dark] .modal-close-btn:hover{color:var(--text-primary, #F5F3F7)}@media(max-width:1280px){.modal-xl,.modal-content.modal-xl{max-width:95%}}@media(max-width:768px){.modal-overlay{align-items:flex-start;overflow-y:auto;padding:.5rem}.modal,.modal-content{max-height:95vh;margin:auto 0}.modal-xs,.modal-sm,.modal-md,.modal-lg,.modal-xl,.modal-full,.modal-content.modal-xs,.modal-content.modal-sm,.modal-content.modal-md,.modal-content.modal-lg,.modal-content.modal-xl,.modal-content.modal-full{width:100%;max-width:100%}.modal-header{padding:1rem 3rem 1rem 1rem}.modal-body{padding:1rem}.modal-footer{padding:1rem;flex-wrap:wrap}.modal-close,.modal-close-x,.modal-close-btn{top:.75rem;right:.75rem}}@media(max-width:480px){.modal-footer{flex-direction:column-reverse}.modal-footer .btn{width:100%}.modal-footer-left{margin-right:0;width:100%;justify-content:center}}@media(prefers-reduced-motion:reduce){.modal-overlay,.modal,.modal-content{animation:none}.modal-close,.modal-close-x,.modal-close-btn{transition:none}}.modal-body-flush{padding:0}.modal-body-scroll{max-height:60vh;overflow-y:auto}.modal-body-centered{display:flex;flex-direction:column;align-items:center;text-align:center}.modal-loading{position:absolute;inset:0;background:var(--modal-bg, white);opacity:.9;display:flex;align-items:center;justify-content:center;border-radius:12px;z-index:20}.consent-form-manager{padding:2rem;max-width:min(100%,1400px);margin:0 auto}.forms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem;margin-top:1.5rem}.form-card{background:var(--card-background);border:1px solid transparent;border-radius:12px;box-shadow:0 1px 3px #0000004d;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease}.form-card:hover{border-color:var(--accent-orange-hover)}.form-card-header{padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-primary, #e9ecef);display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.form-title-section{flex:1}.form-card-header h3{margin:0 0 .5rem;font-size:1.1rem;font-weight:600;color:var(--text-primary, #1a1a1a)}.consent-form-editor{background:var(--input-bg);color:var(--text-primary, #333);border:1px solid var(--border-primary, #ccc);border-top:none;min-height:200px;padding:12px;font-size:14px;line-height:1.5;border-bottom-left-radius:8px;border-bottom-right-radius:8px}.consent-form-editor.error{border-color:var(--error-color, #ef4444)}.wysiwyg-toolbar{background:var(--surface-secondary, #f8f9fa);border:1px solid var(--border-primary, #ccc);padding:8px 12px;display:flex;gap:6px;align-items:center;flex-wrap:wrap;border-top-left-radius:8px;border-top-right-radius:8px}.wysiwyg-button{background:transparent;color:var(--text-primary, #333);border:none;padding:4px 8px;cursor:pointer;border-radius:4px;font-size:14px;transition:background-color .15s}.wysiwyg-button:hover{background:var(--surface-hover, rgba(0, 0, 0, .05))}.type-badge{display:inline-block;padding:.2rem .6rem;border-radius:12px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.type-photo-video{background:var(--chip-teal-bg, rgba(14, 116, 144, .12));color:var(--chip-teal-text, #0e7490)}.type-liability{background:var(--warning-bg, #fffbeb);color:var(--warning-text, #92400e)}.type-custom{background:var(--chip-purple-bg, #eee9f5);color:var(--text-secondary, #6b7280)}.form-status{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem;flex-shrink:0}.toggle-switch{position:relative;display:inline-block;width:48px;height:24px}.toggle-switch input{opacity:0;width:0;height:0;position:absolute;pointer-events:none}.toggle-switch input:focus{outline:none}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:var(--border-primary, #ccc);transition:.3s;border-radius:24px;outline:none;border:none!important;box-shadow:none}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:var(--text-inverse, #fff);transition:.3s;border-radius:50%}.toggle-switch input:checked+.toggle-slider{background-color:var(--accent-orange, #FE6B34)}.toggle-switch input:focus-visible+.toggle-slider{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px}.status-label{font-size:.8rem;font-weight:500;color:var(--text-secondary, #6b7280)}.status-label.active{color:var(--success-color, #16a34a)}.form-card-content{padding:1.25rem 1.5rem}.form-preview{color:var(--text-secondary, #6b7280);line-height:1.6;margin-bottom:1rem;font-size:.9rem;background:transparent!important}.form-preview *{background:transparent!important;background-color:transparent!important}.form-meta{display:flex;flex-direction:column;gap:.375rem;padding-top:.75rem;border-top:1px solid var(--border-primary, #e9ecef);background:transparent!important}.form-meta *{background:transparent!important;background-color:transparent!important}.meta-item{display:flex;justify-content:space-between;align-items:center;font-size:.8rem;background:transparent!important}.meta-label{color:var(--text-secondary, #6b7280);font-weight:500}.meta-value{color:var(--text-primary, #1a1a1a)}.usage-count{font-weight:600;color:var(--accent-orange, #FE6B34)}.form-card-actions{padding:.875rem 1.5rem;background:var(--surface-secondary, #f8f9fa);display:flex;gap:.75rem;justify-content:flex-end;border-top:1px solid var(--border-primary, #e9ecef)}.form-card-draft{border:1px dashed var(--border-primary, #d1d5db);cursor:pointer}.form-card-draft:hover{border-color:var(--accent-orange, #FE6B34);border-style:dashed}.status-chip-draft{color:var(--warning-text, #92400e);background:var(--warning-bg, #fffbeb);border:1px solid var(--warning-border, #fde68a);border-radius:999px;padding:.1rem .45rem;font-size:.72rem;font-weight:600;text-transform:uppercase}.consent-draft-date{font-size:.85rem;font-style:italic;color:var(--text-secondary, #6b7280);margin:0}.consent-section{margin-top:2rem}.consent-section-heading,.consent-drafts-heading{font-size:.8rem;font-weight:600;color:var(--text-tertiary, #9ca3af);text-transform:uppercase;letter-spacing:.6px;margin:0 0 .75rem}.consent-version-badge{background:var(--surface-secondary, #f3f4f6);color:var(--text-secondary, #6b7280);border:1px solid var(--border-primary, #e5e7eb);padding:1px 7px;border-radius:12px;font-size:.72rem;font-weight:600}.form-card-inactive{opacity:.75}@media(max-width:768px){.consent-form-manager{padding:1rem}.forms-grid{grid-template-columns:1fr}.form-card-header{flex-direction:column;align-items:flex-start}.form-status{flex-direction:row;align-items:center;width:100%;justify-content:space-between}.form-card-actions{flex-direction:column}.form-card-actions .btn{width:100%}}.consent-records{padding:2rem;max-width:min(100%,1200px);margin:0 auto}.consent-records-loading{text-align:center;padding:3rem;color:#666}.records-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.records-header h3{margin:0 0 .5rem;font-size:1.75rem;color:#1a1a1a}.records-header p{margin:0;color:#666}.records-list{display:flex;flex-direction:column;gap:1.5rem}.consent-group{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.consent-group-header{padding:1.5rem;background:#f8f9fa;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;align-items:center}.group-title{display:flex;align-items:center;gap:1rem}.group-title h4{margin:0;font-size:1.25rem;color:#1a1a1a}.consent-status{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:500}.consent-status.granted{background:#d4edda;color:#155724}.consent-status.denied{background:#f8d7da;color:#721c24}.version-count{font-size:.875rem;color:#666;background:#e9ecef;padding:.25rem .75rem;border-radius:12px}.consent-records-table{overflow-x:auto}.consent-records-table table{width:100%;border-collapse:collapse}.consent-records-table thead{background:#f8f9fa}.consent-records-table th{padding:1rem;text-align:left;font-weight:600;color:#495057;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e9ecef}.consent-records-table td{padding:1rem;border-bottom:1px solid #e9ecef}.consent-records-table tbody tr:hover{background:var(--table-row-hover)}.date-cell{display:flex;flex-direction:column;gap:.25rem}.date-cell .date{font-weight:500;color:#1a1a1a}.date-cell .time{font-size:.875rem;color:#666}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:500}.status-badge.granted{background:#d4edda;color:#155724}.status-badge.denied{background:#f8d7da;color:#721c24}.ip-address{font-family:Courier New,monospace;font-size:.875rem;background:#f8f9fa;padding:.25rem .5rem;border-radius:4px;color:#495057}.no-signature{color:#999;font-style:italic;font-size:.875rem}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;border-radius:8px;max-width:min(100%,600px);width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px #0000004d}.modal-header{padding:1.5rem 0;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;align-items:center}.modal-header h3{margin:0;font-size:1.5rem;color:#1a1a1a}.modal-body{padding:1.5rem}.signature-details{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#f8f9fa;border-radius:6px}.detail-label{font-weight:600;color:#495057}.detail-value{color:#1a1a1a}.detail-value.granted{color:#28a745;font-weight:500}.detail-value.denied{color:#dc3545;font-weight:500}.signature-display{border:2px solid #4a90e2;border-radius:6px;padding:1rem;background:#fff;display:flex;justify-content:center;align-items:center}.signature-image{max-width:100%;height:auto;display:block}.modal-footer{padding:1.5rem;border-top:1px solid #e9ecef;display:flex;justify-content:flex-end;gap:.75rem}@media(max-width:768px){.consent-records{padding:1rem}.records-header{flex-direction:column;align-items:flex-start;gap:1rem}.records-header .btn{width:100%}.consent-group-header{flex-direction:column;align-items:flex-start;gap:.75rem}.group-title{flex-direction:column;align-items:flex-start;gap:.5rem}.consent-records-table{overflow-x:scroll}.consent-records-table table{min-width:min(100%,600px)}.modal-content{margin:1rem;max-height:calc(100vh - 2rem)}.detail-row{flex-direction:column;align-items:flex-start;gap:.5rem}}@media print{.records-header .btn,.consent-records-table .btn{display:none}.consent-group{box-shadow:none;border:1px solid #ddd;page-break-inside:avoid}.modal-overlay{display:none}}.consent-forms-page{padding:20px}.consent-forms-header{margin-bottom:24px}.consent-forms-header h2{margin:0 0 8px;color:var(--text-primary)}.consent-forms-header p{margin:0;color:var(--text-secondary)}.consent-forms-empty{text-align:center;padding:40px;background-color:var(--bg-secondary);border-radius:8px}.consent-forms-empty h3{margin:0 0 8px;color:var(--text-primary)}.consent-forms-empty p{margin:0;color:var(--text-secondary)}.consent-forms-grid{display:grid;gap:16px}.consent-form-card{border:1px solid var(--border-primary);border-radius:8px;padding:20px;background-color:var(--bg-primary);display:flex;flex-direction:column}.consent-form-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.consent-form-card-info h3{margin:0 0 8px;color:var(--text-primary)}.consent-form-card-meta{display:flex;gap:16px;font-size:14px;color:var(--text-secondary)}.consent-form-card-actions{display:flex;align-items:center;gap:12px}.consent-status-badge{padding:4px 12px;border-radius:16px;font-size:13px;font-weight:700}.consent-status-badge.completed{background-color:#d4edda;color:#155724}.consent-status-badge.declined{background-color:#f8d7da;color:#721c24}.consent-status-badge.pending{background-color:#fff3cd;color:#856404}[data-theme=dark] .consent-status-badge.completed{background-color:#064e3b;color:#a7f3d0}[data-theme=dark] .consent-status-badge.declined{background-color:#7f1d1d;color:#fecaca}[data-theme=dark] .consent-status-badge.pending{background-color:#78350f;color:#fde68a}.consent-sign-button{background-color:var(--primary-color, #007bff);color:#fff;border:none;padding:12px 16px;border-radius:4px;cursor:pointer;font-size:14px;width:100%;margin-top:auto}.consent-sign-button:hover{background-color:var(--primary-hover, #0056b3)}.consent-form-preview{background-color:var(--bg-secondary);padding:12px;border-radius:4px;font-size:14px;line-height:1.5}.consent-form-preview strong{color:var(--text-primary)}.consent-form-preview-content{margin:8px 0 0;color:var(--text-secondary)}.consent-modal-content{background-color:var(--bg-secondary);padding:16px;border-radius:4px;margin-bottom:20px;overflow:auto;font-size:14px;line-height:1.5;color:var(--text-secondary)}.consent-signature-group{margin-top:1rem}.consent-signature-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--text-primary)}.consent-signature-input{width:100%;padding:.5rem .75rem;border:1px solid var(--input-border, #d1d5db);border-radius:.375rem;font-size:1rem;background-color:var(--input-bg, white);color:var(--text-primary);box-sizing:border-box}.consent-signature-input::placeholder{color:var(--text-secondary)}.consent-signature-input:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}[data-theme=dark] .consent-signature-input{background-color:var(--input-bg, #374151);border-color:var(--input-border, #4b5563);color:var(--text-primary, #f9fafb)}.consent-forms-loading{padding:20px}.consent-forms-loading h2{color:var(--text-primary)}.consent-forms-loading p{color:var(--text-secondary)}.consent-forms-error{padding:20px}.consent-forms-error h2{color:var(--text-primary)}.consent-forms-error-message{color:var(--error-color, #dc3545);margin-top:16px}[data-theme=dark] .consent-forms-error-message{color:#f87171}.consent-forms-page .modal.modal-lg{width:min(96vw,980px)}.consent-forms-page .modal.modal-lg .modal-body{max-height:72vh;overflow-y:auto;padding:20px}.consent-forms-page .modal.modal-lg .modal-header{padding-bottom:14px}.consent-forms-page .modal.modal-lg .modal-footer{padding-top:14px}.consent-forms-page .questionnaire-builder{margin-top:0}.questionnaire-locked-notice{margin-bottom:14px;padding:10px 12px;border:1px solid #f5c2c7;background:#fff5f5;color:#9f1239;border-radius:8px;font-size:14px;line-height:1.4}[data-theme=dark] .questionnaire-locked-notice{border-color:#7f1d1d;background:#3f0f13;color:#fecaca}.questionnaire-progress-meta{font-size:14px;color:var(--text-secondary);margin-bottom:8px}.questionnaire-progress-bar{margin-bottom:16px}.questionnaire-question-card{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:10px;padding:16px}.questionnaire-section-title{font-size:14px;font-weight:600;color:var(--text-secondary);margin-bottom:10px}.questionnaire-question-label{display:block;margin-bottom:8px;font-size:16px;font-weight:600;color:var(--text-primary)}.questionnaire-question-card input[type=text],.questionnaire-question-card input[type=number],.questionnaire-question-card input[type=date],.questionnaire-question-card textarea{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid var(--border-primary);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:14px}.questionnaire-question-card textarea{min-height:120px;resize:vertical}.questionnaire-question-card label{color:var(--text-primary)}.questionnaire-question-card input[type=radio],.questionnaire-question-card input[type=checkbox]{margin-right:8px}.questionnaire-question-card>div>label{display:inline-flex;align-items:center;margin-right:16px;margin-bottom:8px}.questionnaire-attachment-row{margin-top:12px}.questionnaire-attachment-label{font-size:13px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.questionnaire-attachment-help{font-size:13px;color:var(--text-secondary);margin-bottom:8px}.questionnaire-file-input{width:100%;color:var(--text-secondary);font-size:13px}.questionnaire-file-input::file-selector-button{margin-right:10px;padding:8px 12px;border:1px solid var(--border-primary);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:13px;font-weight:600;cursor:pointer}.questionnaire-file-input::-webkit-file-upload-button{margin-right:10px;padding:8px 12px;border:1px solid var(--border-primary);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);font-size:13px;font-weight:600;cursor:pointer}.questionnaire-file-input:hover::file-selector-button,.questionnaire-file-input:focus::file-selector-button{background:var(--bg-secondary)}.questionnaire-file-input:hover::-webkit-file-upload-button,.questionnaire-file-input:focus::-webkit-file-upload-button{background:var(--bg-secondary)}.questionnaire-attachments-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.questionnaire-attachments-list a{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;border:1px solid #bfdbfe;background:#eff6ff;font-size:13px;color:#1e40af;text-decoration:none;font-weight:600}.questionnaire-attachments-list a:hover{background:#dbeafe;border-color:#93c5fd;color:#1e3a8a}.questionnaire-attachments-list a:visited{color:#1e40af}[data-theme=dark] .questionnaire-attachments-list a{border-color:#334155;background:#1f2937;color:#e2e8f0}[data-theme=dark] .questionnaire-attachments-list a:hover{background:#334155;border-color:#475569;color:#f8fafc}[data-theme=dark] .questionnaire-attachments-list a:visited{color:#e2e8f0}.questionnaire-unsynced-note{margin-top:10px;color:#c2410c;font-size:13px}.questionnaire-footer-left{display:flex;align-items:center;gap:8px}.training-resources-page{padding:2rem;max-width:min(100%,1200px);margin:0 auto}.training-resources-page .page-header{margin-bottom:2rem}.training-resources-page .page-header h1{color:var(--text-primary, #1f2937);margin-bottom:.5rem}.training-resources-page .page-header p{color:var(--text-secondary, #6b7280);font-size:1.1rem}.training-resources-page .category-filter{display:flex;gap:.5rem;margin-bottom:2rem;flex-wrap:wrap}.training-resources-page .category-filter button{padding:.5rem 1rem;border:1px solid var(--border-primary, #e5e7eb);background:var(--surface-secondary, #f9fafb);border-radius:12px;cursor:pointer;transition:all .2s ease;font-weight:500;color:var(--text-secondary, #6b7280)}.training-resources-page .category-filter button:hover{border-color:var(--accent-orange-hover);background:var(--surface-hover, #f3f4f6);color:var(--text-primary, #1f2937)}.training-resources-page .category-filter button.active{background:var(--accent-orange);color:var(--text-inverse, #fff);border-color:var(--accent-orange)}.training-resources-page .resources-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.training-resources-page .resource-card{background:var(--card-background, #fff);border:1px solid transparent;border-radius:12px;padding:1.5rem;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease;box-shadow:0 1px 3px #0000004d;position:relative}.training-resources-page .resource-card:hover{border-color:var(--accent-orange-hover)}.training-resources-page .resource-icon{font-size:2rem;margin-bottom:1rem}.training-resources-page .resource-content h3{color:var(--text-primary, #1f2937);margin-bottom:.5rem;font-size:1.2rem}.training-resources-page .resource-description{color:var(--text-secondary, #6b7280);margin-bottom:1rem;line-height:1.5}.training-resources-page .resource-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.training-resources-page .resource-category{background:var(--chip-orange-bg, #fff3ed);color:var(--accent-orange);padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500}.training-resources-page .resource-type{background:var(--surface-secondary, #f9fafb);color:var(--text-secondary, #6b7280);padding:.25rem .5rem;border-radius:6px;font-size:.75rem;font-weight:600}.training-resources-page .resource-tags{display:flex;flex-wrap:wrap;gap:.5rem}.training-resources-page .tag{background:var(--chip-orange-bg, #fff3ed);color:var(--accent-orange);padding:.25rem .5rem;border-radius:12px;font-size:.8rem;font-weight:500}.training-resources-page .no-resources{grid-column:1 / -1;text-align:center;padding:3rem;color:var(--text-tertiary, #9ca3af)}.training-resources-page .no-resources h3{color:var(--text-secondary, #6b7280);margin-bottom:1rem}.training-resources-page .loading,.training-resources-page .error{text-align:center;padding:3rem;font-size:1.1rem}.training-resources-page .error{color:var(--error-color, #ef4444)}.training-resources-page .loading{color:var(--text-tertiary, #9ca3af)}.training-resources-page .resource-card.opening{pointer-events:none;opacity:.7}.training-resources-page .resource-opening-overlay{position:absolute;inset:0;background:var(--card-background, #fff);opacity:.9;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;border-radius:12px;z-index:10;color:var(--text-primary, #1f2937);font-weight:500}.training-resources-page .opening-spinner{width:24px;height:24px;border:3px solid var(--border-primary, #e5e7eb);border-top-color:var(--accent-orange);border-radius:50%;animation:resource-spin .8s linear infinite}@keyframes resource-spin{to{transform:rotate(360deg)}}@media(max-width:768px){.training-resources-page{padding:1rem}.training-resources-page .resources-grid{grid-template-columns:1fr}.training-resources-page .category-filter{justify-content:center}}.animal-list{width:100%}.animal-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.animal-list-header h3{margin:0;font-size:1.5rem;color:#1a1a1a}.animals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.animal-card{border:1px solid #e9ecef;border-radius:8px;overflow:hidden;cursor:pointer;transition:all .2s;background:#fff}.animal-card:hover{box-shadow:0 4px 12px #0000001a}.animal-card:focus{outline:2px solid #4a90e2;outline-offset:2px}.animal-photo,.animal-photo-placeholder{width:100%;height:200px;object-fit:cover}.animal-photo-placeholder{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2)}.animal-icon{font-size:4rem;opacity:.8}.animal-card-content{padding:1rem}.animal-card-content h4{margin:0 0 .5rem;font-size:1.25rem;color:#1a1a1a}.animal-details{margin:0 0 1rem;color:#666;font-size:.95rem}.animal-goals-preview{margin-bottom:1rem;padding:.75rem;background:#f8f9fa;border-radius:6px;font-size:.875rem;color:#666}.animal-goals-preview strong{color:#1a1a1a}.animal-edit-btn{width:100%}.empty-state{text-align:center;padding:3rem;color:#666;background:#f8f9fa;border-radius:8px}.empty-state p{margin:0 0 1rem}@media(max-width:768px){.animals-grid{grid-template-columns:1fr}}.animal-profile{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden;max-width:800px;margin:0 auto}.animal-profile-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:2rem;display:flex;align-items:center;gap:2rem;flex-wrap:wrap}.animal-profile-photo,.animal-profile-photo-placeholder{width:150px;height:150px;border-radius:50%;object-fit:cover;border:4px solid white;box-shadow:0 4px 12px #0003}.animal-profile-photo-placeholder{display:flex;align-items:center;justify-content:center;background:#fff3}.animal-icon-large{font-size:4rem}.animal-profile-title{flex:1;min-width:200px}.animal-profile-title h2{margin:0 0 .5rem;font-size:2rem}.animal-profile-subtitle{margin:0;opacity:.9;font-size:1.1rem}.animal-profile-actions{display:flex;gap:.75rem;flex-wrap:wrap}.animal-profile-content{padding:2rem}.animal-info-section{margin-bottom:2rem}.animal-info-section:last-child{margin-bottom:0}.animal-info-section h3{margin:0 0 1rem;font-size:1.25rem;color:#1a1a1a;padding-bottom:.5rem;border-bottom:2px solid #e9ecef}.animal-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.animal-info-item{display:flex;flex-direction:column;gap:.5rem}.animal-info-item label{font-weight:600;color:#666;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.animal-info-item p{margin:0;color:#1a1a1a;font-size:1rem}.training-goals-list{list-style:none;padding:0;margin:0}.training-goal-item{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;background:#f8f9fa;border-radius:6px;margin-bottom:.5rem;color:#1a1a1a}.goal-bullet{color:#28a745;font-weight:700;font-size:1.25rem}.behavioral-notes{padding:1rem;background:#f8f9fa;border-radius:6px;border-left:4px solid #4a90e2}.behavioral-notes p{margin:0;color:#1a1a1a;line-height:1.6}.animal-profile .btn{padding:.5rem 1rem;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.animal-profile .btn-primary{background:#fff;color:#667eea}.animal-profile .btn-primary:hover{background:#ffffffe6}@media(max-width:768px){.animal-profile-header{flex-direction:column;text-align:center}.animal-profile-photo,.animal-profile-photo-placeholder{width:120px;height:120px}.animal-profile-actions{width:100%}.animal-profile-actions button{flex:1}.animal-profile-content{padding:1rem}.animal-info-grid{grid-template-columns:1fr}}.payment-history{padding:2rem;max-width:min(100%,1400px);margin:0 auto}.payment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.payment-header h2{margin:0 0 .5rem;font-size:2rem;color:#1a1a1a}.payment-header p{margin:0;color:#666}.account-balance-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:2rem;border-radius:8px;margin-bottom:2rem;box-shadow:0 4px 12px #0000001a}.balance-info{text-align:center}.balance-info label{display:block;font-size:1rem;opacity:.9;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:1px}.balance-amount{font-size:3rem;font-weight:700;margin-bottom:.5rem}.balance-amount.negative{color:#ffebee}.balance-amount.positive{color:#c8e6c9}.balance-note{margin:0;font-size:.95rem;opacity:.9}.payment-filters{background:#f8f9fa;padding:1.5rem;border-radius:8px;margin-bottom:2rem}.filter-row{display:flex;gap:1rem;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:.5rem;min-width:150px}.filter-group label{font-weight:500;color:#333;font-size:.875rem}.filter-input,.filter-select{padding:.5rem;border:1px solid #ddd;border-radius:6px;background:#fff;font-size:.95rem}.filter-input:focus,.filter-select:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.payment-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.summary-item{background:#fff;padding:1.5rem;border-radius:8px;box-shadow:0 1px 3px #0000001a;text-align:center}.summary-item label{display:block;font-size:.875rem;color:#666;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem}.summary-value{font-size:1.5rem;font-weight:700}.summary-value.paid{color:#28a745}.summary-value.pending{color:#ffc107}.summary-value.failed{color:#dc3545}.summary-value.refunded{color:#6c757d}.payment-table-container{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow-x:auto;margin-bottom:1.5rem}.payment-table{width:100%;border-collapse:collapse}.payment-table thead{background:#f8f9fa;border-bottom:2px solid #e9ecef}.payment-table th{padding:1rem;text-align:left;font-weight:600;color:#495057;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.payment-table td{padding:1rem;border-bottom:1px solid #e9ecef}.payment-row:hover{background:var(--table-row-hover)}.transaction-description{color:#1a1a1a;font-weight:500}.transaction-amount{font-weight:600;color:#1a1a1a}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:500;text-transform:capitalize}.status-paid{background:#d4edda;color:#155724}.status-failed{background:#f8d7da;color:#721c24}.status-refunded{background:#e2e3e5;color:#383d41}.pagination{display:flex;justify-content:center;align-items:center;gap:1rem;padding:1rem}.pagination-info{color:#666;font-size:.95rem}.loading-state,.empty-state{text-align:center;padding:3rem;color:#666;background:#fff;border-radius:8px}.empty-state-hint{font-size:.9rem;margin-top:.5rem}.error-message{background:#f8d7da;color:#721c24;padding:1rem;border-radius:6px;margin-bottom:1rem;border:1px solid #f5c6cb}@media(max-width:768px){.payment-history{padding:1rem}.payment-header{flex-direction:column;align-items:flex-start;gap:1rem}.account-balance-card{padding:1.5rem}.balance-amount{font-size:2rem}.filter-row{flex-direction:column}.filter-group{width:100%}.payment-summary{grid-template-columns:repeat(2,1fr)}.payment-table-container{overflow-x:scroll}.payment-table{min-width:min(100%,700px)}}.client-assignment{padding:2rem;max-width:min(100%,900px);margin:0 auto}.client-assignment .assignment-header{margin-bottom:2rem}.client-assignment .assignment-header h2{font-size:1.5rem;font-weight:600;color:#1a1a1a;margin:0 0 .5rem}.client-assignment .assignment-header p{color:#666;margin:0}.client-assignment .member-info{background:#f8f9fa;padding:1rem;border-radius:4px;margin-bottom:2rem;display:flex;align-items:center;gap:1rem}.client-assignment .member-info strong{color:#1a1a1a}.client-assignment .search-section{margin-bottom:1.5rem}.client-assignment .search-input{width:100%;padding:.625rem 1rem;border:1px solid var(--input-border, #ddd);border-radius:.375rem;font-size:.875rem;background:var(--input-bg, white);color:var(--text-primary, #333)}.client-assignment .search-input::placeholder{color:var(--text-secondary, #6b7280)}.client-assignment .search-input:focus{outline:none;border-color:var(--primary-color, #4a90e2);box-shadow:0 0 0 3px var(--focus-ring, rgba(254, 107, 52, .15))}.client-assignment .assignment-content{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.client-assignment .clients-panel{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.client-assignment .panel-header{background:#f8f9fa;padding:1rem 1.5rem;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;align-items:center}.client-assignment .panel-title{font-size:1rem;font-weight:600;color:#1a1a1a;margin:0}.client-assignment .panel-count{font-size:.875rem;color:#666;background:#fff;padding:.25rem .75rem;border-radius:12px}.client-assignment .clients-list{max-height:500px;overflow-y:auto}.client-assignment .client-item{padding:1rem 1.5rem;border-bottom:1px solid #f0f0f0;display:flex;align-items:center;gap:1rem;cursor:pointer;transition:background-color .2s}.client-assignment .client-item:hover{background-color:#f8f9fa}.client-assignment .client-item:last-child{border-bottom:none}.client-assignment .client-checkbox{width:18px;height:18px;cursor:pointer}.client-assignment .client-info{flex:1}.client-assignment .client-name{font-weight:500;color:#1a1a1a;margin-bottom:.25rem}.client-assignment .client-email{font-size:.8125rem;color:#666}.client-assignment .client-status{font-size:.75rem;padding:.25rem .5rem;border-radius:12px;text-transform:capitalize}.client-assignment .client-status.active{background-color:#d4edda;color:#155724}.client-assignment .client-status.inactive{background-color:#f8d7da;color:#721c24}.client-assignment .client-status.invited{background-color:#fff3cd;color:#856404}.client-assignment .bulk-actions{padding:1rem 1.5rem;background:#f8f9fa;border-top:1px solid #e9ecef;display:flex;gap:.75rem}.client-assignment .bulk-actions button{flex:1;padding:.5rem;border:none;border-radius:4px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.client-assignment .btn-select-all{background-color:#e7f3ff;color:#06c}.client-assignment .btn-select-all:hover{background-color:#d0e7ff}.client-assignment .btn-clear{background-color:#fff3cd;color:#856404}.client-assignment .btn-clear:hover{background-color:#ffe8a1}.client-assignment .empty-state{text-align:center;padding:3rem 2rem;color:#666}.client-assignment .empty-state-icon{font-size:2.5rem;margin-bottom:1rem;opacity:.3}.client-assignment .empty-state p{margin:0}.client-assignment .actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:2rem;border-top:1px solid #e9ecef}.client-assignment .btn{padding:.75rem 1.5rem;border:none;border-radius:4px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.client-assignment .btn-primary{background-color:#4a90e2;color:#fff}.client-assignment .btn-primary:hover{background-color:#357abd}.client-assignment .btn:disabled{background-color:#ccc;cursor:not-allowed;opacity:.6}.client-assignment .loading{text-align:center;padding:3rem;color:#666}.client-assignment .error{background-color:#f8d7da;color:#721c24;padding:1rem;border-radius:4px;margin-bottom:1rem}.client-assignment .success{background-color:#d4edda;color:#155724;padding:1rem;border-radius:4px;margin-bottom:1rem}@media(max-width:768px){.client-assignment{padding:1rem}.client-assignment .assignment-content{grid-template-columns:1fr}.client-assignment .clients-list{max-height:300px}.client-assignment .actions{flex-direction:column}.client-assignment .actions .btn{width:100%}}.time-block-manager{margin-top:24px}.time-block-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.time-block-header h4{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary, #1f2937)}.add-time-block-form{background:var(--surface-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;padding:16px;margin-bottom:16px}.time-block-manager .form-row{display:flex;gap:16px;margin-bottom:16px}.time-block-manager .form-group{flex:1}.time-block-manager .form-group label{display:block;margin-bottom:4px;font-weight:500;color:var(--text-secondary, #4b5563);font-size:14px}.time-block-manager .form-group input,.time-block-manager .form-group select{width:100%;padding:8px 12px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;font-size:14px;background:var(--input-bg, #ffffff);color:var(--text-primary, #1f2937);transition:border-color .2s ease}.time-block-manager .form-group input:focus,.time-block-manager .form-group select:focus{outline:none;border-color:var(--border-focus, #f97316)}.time-blocks-list{display:flex;flex-direction:column;gap:8px}.time-block-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;background:var(--card-background, #ffffff)}.block-info{flex:1}.block-title{font-weight:600;color:var(--text-primary, #1f2937);margin-bottom:4px}.block-details{font-size:14px;color:var(--text-secondary, #4b5563);margin-bottom:4px}.no-blocks{text-align:center;color:var(--text-tertiary, #9ca3af);font-style:italic;padding:24px}.btn-sm{padding:6px 12px;font-size:12px}@media(max-width:768px){.time-block-manager .form-row{flex-direction:column;gap:12px}.time-block-item{flex-direction:column;align-items:flex-start;gap:12px}}.working-schedule-settings{max-width:800px;margin:0 auto}.timezone-section{margin-bottom:24px;padding:16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.timezone-section label{display:block;font-weight:500;color:#374151;margin-bottom:8px}.timezone-select{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;background:#fff}.timezone-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #fe6b3426}.schedule-day{display:flex;align-items:center;padding:16px;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:12px;gap:16px}.day-label{min-width:120px}.day-label label{font-weight:500;color:#374151}.day-toggle input[type=checkbox]{width:20px;height:20px;cursor:pointer}.time-inputs{display:flex;align-items:center;gap:12px}.time-inputs input[type=time]{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;width:140px}.time-inputs span{color:#6b7280;font-size:14px}.save-button{width:100%;margin-top:24px;padding:12px 24px;font-size:16px;font-weight:600}.loading,.error{text-align:center;padding:40px;color:#6b7280}.error{color:#dc2626}@media(max-width:768px){.schedule-day{flex-direction:column;align-items:flex-start;gap:12px}.time-inputs{width:100%;justify-content:space-between}.time-inputs input[type=time]{flex:1;max-width:120px}}.timezone-display{font-size:.85rem;color:#666;font-style:italic}.profile-settings-page{max-width:min(100%,900px);margin:0 auto;padding:24px}.settings-header{margin-bottom:32px}.settings-header h1{font-size:2rem;font-weight:700;color:#1a202c;margin:0 0 8px}.settings-header p{color:#6b7280;font-size:1rem;margin:0}.settings-tabs{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.tabs-list{display:flex;border-bottom:1px solid #e2e8f0;background:#f8fafc}.tab{padding:16px 24px;border:none;background:none;cursor:pointer;font-size:14px;font-weight:500;color:#6b7280;transition:all .2s;border-bottom:2px solid transparent}.tab:hover{color:#374151;background:#f1f5f9}} .settings-tabs .tab-content{padding:24px;display:block;width:100%}.card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 3px #0000001a}.card-header{padding:24px 24px 0;border-bottom:1px solid #e2e8f0;margin-bottom:24px}.card-header h3{margin:0 0 16px;font-size:1.5rem;font-weight:600;color:#1a202c}.card-content{padding:0 24px 24px}.card-content p{color:#6b7280;margin:0}@media(max-width:768px){.profile-settings-page{padding:16px}.tabs-list{flex-direction:column}.tab{text-align:left;border-bottom:1px solid #e2e8f0;border-right:none}.settings-tabs .tab-content{padding:16px}}.photo-upload-section{display:flex;gap:24px;align-items:flex-start;padding:16px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0;overflow:hidden}.photo-upload-controls{display:flex;flex-direction:column;gap:12px;flex:1;min-width:0}.photo-upload-buttons{display:flex;gap:8px;flex-wrap:wrap}.photo-upload-controls .form-help{margin:0;font-size:.875rem;color:#6b7280}.localization-settings{max-width:min(100%,800px)}.localization-settings .card{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.localization-settings .card-header{padding:1.5rem;border-bottom:1px solid #e5e7eb}.localization-settings .card-header h3{margin:0 0 .5rem;color:#1f2937;font-size:1.25rem;font-weight:600}.localization-settings .card-header p{margin:0;color:#6b7280;font-size:.875rem}.localization-settings .card-content{padding:1.5rem}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:1.5rem}.form-field{display:flex;flex-direction:column;gap:.5rem}.form-label{font-weight:500;color:#374151;font-size:.875rem}.form-control{padding:.625rem .75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;transition:border-color .2s,box-shadow .2s;background:#fff}.form-control:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #fe6b3426}.form-help-text{font-size:.75rem;color:#6b7280}.settings-preview{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;padding:1rem;margin-bottom:1.5rem}.settings-preview h4{margin:0 0 .75rem;color:#1f2937;font-size:.875rem;font-weight:600}.preview-content{display:flex;flex-direction:column;gap:.5rem}.preview-item{display:flex;justify-content:space-between;align-items:center;gap:1rem}.preview-label{font-size:.875rem;color:#6b7280}.preview-value{color:#1f2937;font-family:monospace;background:#fff;padding:.25rem .5rem;border-radius:.25rem;font-size:.875rem;border:1px solid #e5e7eb}.form-actions{display:flex;gap:.75rem;justify-content:flex-end;padding-top:1rem;border-top:1px solid #e5e7eb}.btn:disabled{opacity:.5;cursor:not-allowed}.save-message{margin-top:1rem;padding:.75rem;border-radius:.375rem;font-size:.875rem;text-align:center}.save-message.success{background:#d1fae5;color:#065f46;border:1px solid #6ee7b7}.save-message.error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}@media(max-width:768px){.settings-grid{grid-template-columns:1fr;gap:1rem}.form-actions{flex-direction:column-reverse}.btn{width:100%}.preview-item{flex-direction:column;align-items:flex-start;gap:.25rem}}.snackbar-preferences{max-width:min(100%,800px);margin:0 auto;padding:24px}.preferences-header{margin-bottom:32px}.preferences-header h2{font-size:24px;font-weight:600;color:#1a1a1a;margin-bottom:8px}.preferences-description{font-size:14px;color:#666;margin:0}.preference-section{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:20px;margin-bottom:16px}.preference-item{display:flex;justify-content:space-between;align-items:center;gap:16px}.preference-label{flex:1}.preference-label h3{font-size:16px;font-weight:500;color:#1a1a1a;margin:0 0 4px}.preference-label p{font-size:14px;color:#666;margin:0}.section-title{font-size:16px;font-weight:500;color:#1a1a1a;margin:0 0 8px}.section-description{font-size:14px;color:#666;margin:0 0 16px}.toggle-switch{position:relative;display:inline-block;width:48px;height:24px;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:relative;cursor:pointer;inset:0;background:#3c4c5f;transition:.3s;border-radius:24px}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}.toggle-switch input:checked+.toggle-slider{background-color:#2196f3}.toggle-switch input:checked+.toggle-slider:before{transform:translate(24px)}.toggle-switch input:disabled+.toggle-slider{opacity:.5;cursor:not-allowed}.toggle-switch input:focus+.toggle-slider{box-shadow:0 0 0 2px #2196f34d}.notification-types-list{display:flex;flex-direction:column;gap:12px}.notification-type-item{display:flex;justify-content:space-between;align-items:center;padding:12px;background:#f9f9f9;border-radius:6px}.type-info{display:flex;align-items:center;gap:12px}.severity-badge{padding:4px 8px;border-radius:4px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.severity-info{background-color:#e3f2fd;color:#1976d2}.severity-success{background-color:#e8f5e9;color:#388e3c}.severity-warning{background-color:#fff3e0;color:#f57c00}.severity-error{background-color:#ffebee;color:#d32f2f}.type-label{font-size:14px;color:#1a1a1a}.quiet-hours-config{margin-top:16px;padding-top:16px;border-top:1px solid #e0e0e0}.time-picker{display:flex;gap:16px;margin-bottom:12px}.time-picker label{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:500;color:#1a1a1a}.time-picker select{padding:8px 12px;border:1px solid #ccc;border-radius:4px;font-size:14px;background-color:#fff;cursor:pointer}.time-picker select:disabled{opacity:.5;cursor:not-allowed}.time-picker select:focus{outline:none;border-color:#2196f3;box-shadow:0 0 0 2px #2196f333}.quiet-hours-note{font-size:13px;color:#666;margin:0;font-style:italic}.preferences-actions{display:flex;align-items:center;gap:16px;margin-top:24px}.save-button{padding:12px 24px;background-color:#2196f3;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.save-button:hover:not(:disabled){background-color:#1976d2}.save-button:disabled{opacity:.6;cursor:not-allowed}.save-button:focus{outline:none;box-shadow:0 0 0 3px #2196f34d}.save-message{padding:8px 16px;border-radius:4px;font-size:14px;font-weight:500}.save-message.success{background-color:#e8f5e9;color:#388e3c}.save-message.error{background-color:#ffebee;color:#d32f2f}@media(max-width:768px){.snackbar-preferences{padding:16px}.preferences-header h2{font-size:20px}.preference-item{flex-direction:column;align-items:flex-start}.time-picker{flex-direction:column}.notification-type-item{flex-direction:column;align-items:flex-start;gap:12px}.type-info{width:100%}.toggle-switch{align-self:flex-end}}.help-page{max-width:min(100%,1200px);margin:0 auto;padding:24px}.help-page .page-header{margin-bottom:24px}.help-page .page-header h1{font-size:1.75rem;font-weight:700;color:var(--text-primary, #1f2937);margin:0 0 6px}.help-page .page-header p{color:var(--text-secondary, #6b7280);font-size:.95rem;margin:0}.help-layout{display:grid;grid-template-columns:260px 1fr;gap:24px;align-items:start}.help-sidebar{background:var(--card-background, #ffffff);border:1px solid var(--card-border, transparent);border-radius:12px;padding:16px;position:sticky;top:24px;box-shadow:0 1px 3px #00000014;max-height:calc(100vh - 120px);overflow-y:auto}.help-nav-section{margin-bottom:16px}.help-nav-section:last-child{margin-bottom:0}.help-nav-section-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary, #9ca3af);padding:0 12px;margin:0 0 6px}.help-nav-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 12px;border:none;border-radius:8px;background:none;cursor:pointer;color:var(--text-secondary, #6b7280);font-size:13.5px;font-weight:500;text-align:left;transition:all .2s ease;line-height:1.3}.help-nav-item:hover{background:var(--surface-hover, #f3f4f6);color:var(--text-primary, #1f2937)}.help-nav-item.active{background:var(--chip-orange-bg, #fff7ed);color:var(--accent-orange, #f97316);font-weight:600}.help-nav-item svg{flex-shrink:0;opacity:.7}.help-nav-item.active svg{opacity:1}.help-nav-divider{height:1px;background:var(--border-primary, #e5e7eb);margin:12px 0}.help-nav-support-link{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:1px solid var(--accent-orange, #f97316);border-radius:8px;background:var(--warm-tint-bg, #fffbeb);cursor:pointer;color:var(--accent-orange, #f97316);font-size:13.5px;font-weight:600;text-align:left;text-decoration:none;transition:all .2s ease}.help-nav-support-link:hover{background:var(--accent-orange, #f97316);color:var(--text-inverse, #ffffff)}.help-content{background:var(--card-background, #ffffff);border:1px solid var(--card-border, transparent);border-radius:12px;padding:32px;box-shadow:0 1px 3px #00000014;min-height:400px}.help-content h2{font-size:1.5rem;font-weight:700;color:var(--text-primary, #1f2937);margin:0 0 8px}.help-content .help-topic-subtitle{color:var(--text-secondary, #6b7280);font-size:.95rem;margin:0 0 24px}.help-content h3{font-size:1.1rem;font-weight:600;color:var(--text-primary, #1f2937);margin:28px 0 12px}.help-content h3:first-of-type{margin-top:0}.help-content p{color:var(--text-secondary, #4b5563);line-height:1.7;margin:0 0 14px;font-size:.925rem}.help-content ul,.help-content ol{color:var(--text-secondary, #4b5563);line-height:1.7;margin:0 0 14px;padding-left:24px;font-size:.925rem}.help-content li{margin-bottom:6px}.help-content strong{color:var(--text-primary, #1f2937);font-weight:600}.help-info-box{background:var(--warm-tint-bg, #fffbeb);border:1px solid var(--warm-tint-border, #fde68a);border-radius:8px;padding:14px 16px;margin:16px 0;font-size:.9rem;line-height:1.6;color:var(--text-secondary, #4b5563)}.help-info-box strong{color:var(--text-primary, #1f2937)}.help-steps{display:flex;flex-direction:column;gap:12px;margin:16px 0}.help-step{display:flex;gap:14px;align-items:flex-start;padding:14px 16px;background:var(--surface-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px}.help-step-number{flex-shrink:0;width:28px;height:28px;border-radius:50%;background:var(--accent-orange, #f97316);color:var(--text-inverse, #ffffff);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700}.help-step-content{flex:1;min-width:0}.help-step-content strong{display:block;margin-bottom:4px;color:var(--text-primary, #1f2937)}.help-step-content p{margin:0;font-size:.875rem}@media(max-width:900px){.help-layout{grid-template-columns:1fr}.help-sidebar{position:static;max-height:none;display:flex;flex-wrap:wrap;gap:4px;padding:12px}.help-nav-section{width:100%;margin-bottom:8px}.help-nav-section-title{margin-bottom:4px}.help-nav-item{display:inline-flex;width:auto;padding:6px 12px;font-size:13px}.help-nav-item svg{display:none}.help-nav-divider{width:100%;margin:4px 0}.help-nav-support-link{width:auto;display:inline-flex}}@media(max-width:768px){.help-page{padding:16px}.help-content{padding:20px}}.team-session-analytics{max-width:1200px;margin:0 auto;padding:24px}.analytics-header{margin-bottom:32px;text-align:center}.analytics-header h2{margin:0 0 8px;font-size:1.75rem;font-weight:600;color:#212529}.analytics-header p{margin:0;color:#6c757d;font-size:1rem}.analytics-controls{display:flex;gap:24px;margin-bottom:32px;padding:20px;background:#f8f9fa;border-radius:8px;border:1px solid #dee2e6}.control-group{display:flex;flex-direction:column;gap:8px;min-width:200px}.control-group label{font-size:.875rem;font-weight:600;color:#495057}.control-group select{padding:8px 12px;border:1px solid #ced4da;border-radius:6px;font-size:.875rem;background:#fff;cursor:pointer}.control-group select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.error-message{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24;padding:12px 16px;border-radius:6px;margin-bottom:24px}.loading-state{text-align:center;padding:40px;color:#6c757d}.analytics-content{display:flex;flex-direction:column;gap:32px}.member-info h3{margin:0;font-size:1.25rem;font-weight:600;color:#212529}.metrics-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:20px}.metric-card{background:#fff;border:1px solid #dee2e6;border-radius:8px;padding:20px;box-shadow:0 1px 3px #0000001a}.metric-card.scheduled{border-left:4px solid #007bff}.metric-card.completed{border-left:4px solid #28a745}.metric-card.cancelled{border-left:4px solid #dc3545}.metric-card.no-show{border-left:4px solid #ffc107}.metric-header{display:flex;align-items:center;gap:8px;margin-bottom:16px}.metric-icon{font-size:1.25rem}.metric-header h4{margin:0;font-size:1rem;font-weight:600;color:#495057}.metric-value{font-size:2rem;font-weight:700;color:#212529;margin-bottom:12px}.metric-subtitle{font-size:.875rem;color:#6c757d}.metric-breakdown{display:flex;flex-direction:column;gap:8px}.breakdown-item{display:flex;justify-content:space-between;align-items:center;font-size:.875rem}.breakdown-item span:first-child{color:#6c757d}.breakdown-item span:last-child{font-weight:600;color:#212529}.next-session{display:flex;flex-direction:column;gap:4px;margin-top:12px;padding-top:12px;border-top:1px solid #dee2e6}.next-label{font-size:.75rem;color:#6c757d;font-weight:600}.next-session span:last-child{font-size:.875rem;font-weight:600;color:#007bff}.summary-stats{display:flex;gap:32px;padding:20px;background:#f8f9fa;border-radius:8px;border:1px solid #dee2e6}.stat-item{display:flex;flex-direction:column;gap:4px}.stat-label{font-size:.875rem;color:#6c757d;font-weight:500}.stat-value{font-size:2.25rem;font-weight:700;color:#212529}.placeholder-content{text-align:center;padding:60px 20px;color:#6c757d;background:#f8f9fa;border-radius:8px;border:1px solid #dee2e6}@media(max-width:768px){.team-session-analytics{padding:16px}.analytics-controls{flex-direction:column;gap:16px}.metrics-grid{grid-template-columns:1fr;gap:16px}.summary-stats{flex-direction:column;gap:16px}.control-group{min-width:auto}}.animals-page{padding:20px;max-width:min(100%,1200px);margin:0 auto}.animals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.animal-card{background:var(--card-bg);border-radius:8px;box-shadow:var(--shadow-card);padding:20px;transition:transform .2s,box-shadow .2s;border:1px solid var(--card-border)}.animal-card:hover{box-shadow:var(--shadow-md)}.animal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.animal-header h3{margin:0;color:var(--text-primary);font-size:18px;font-weight:600}.loading,.error{text-align:center;padding:40px;font-size:16px;color:var(--text-secondary, #666)}.retry-btn{margin-top:10px;padding:8px 16px;background-color:var(--primary-color, #007bff);color:#fff;border:none;border-radius:4px;cursor:pointer}.dashboard-grid{display:grid;gap:30px}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:20px}.summary-card{background:var(--card-bg, white);padding:20px;border-radius:8px;box-shadow:var(--shadow-card, 0 2px 4px rgba(0,0,0,.1));text-align:center;border:1px solid var(--card-border, transparent)}.summary-card.attention{border-left:4px solid var(--error-color, #dc3545)}.summary-card h3{margin:0 0 10px;font-size:14px;color:var(--text-secondary, #666);text-transform:uppercase}.summary-card .metric{font-size:32px;font-weight:700;color:var(--text-primary, #333)}.dashboard-section{background:var(--card-bg, white);padding:20px;border-radius:8px;box-shadow:var(--shadow-card, 0 2px 4px rgba(0,0,0,.1));border:1px solid var(--card-border, transparent)}.dashboard-section h2{margin:0 0 20px;color:var(--text-primary, #333);font-size:18px}.attention-list{display:flex;flex-direction:column;gap:15px}.attention-item{display:flex;align-items:center;gap:15px;padding:15px;background:var(--error-bg, #fff5f5);border-radius:6px;border-left:4px solid var(--error-color, #dc3545)}.animal-info h4{margin:0;color:var(--text-primary, #333)}.species{font-size:13px;color:var(--text-secondary, #666);text-transform:capitalize}.reason{flex:1;color:var(--error-color, #dc3545);font-weight:500}.last-session{font-size:13px;color:var(--text-secondary, #666)}.sessions-list{display:flex;flex-direction:column;gap:15px;margin-bottom:15px}.session-item{display:flex;align-items:center;gap:10px;padding:15px;border-radius:6px}.session-info h4{margin:0;color:var(--text-primary, #333)}.session-type{font-size:13px;color:var(--primary-color, #007bff);text-transform:capitalize;font-weight:500}.session-details{flex:1;display:flex;gap:15px;align-items:center}.date{font-size:14px;color:var(--text-secondary, #666)}.duration{font-size:13px;color:var(--text-secondary, #666)}.status{padding:2px 8px;border-radius:12px;font-size:12px;font-weight:500}.status.completed{background-color:var(--success-bg);color:var(--success-color)}.status.pending{background-color:#fff3cd;color:#856404}.view-all-link{color:var(--primary-color, #007bff);text-decoration:none;font-size:14px}.view-all-link:hover{text-decoration:underline}.species-chart{display:flex;flex-direction:column;gap:10px}.species-item{display:flex;align-items:center;gap:10px}.species-name{min-width:80px;font-size:14px;text-transform:capitalize;color:var(--text-primary, #333)}.species-bar{flex:1;height:20px;background-color:var(--secondary-light, #e9ecef);border-radius:10px;overflow:hidden}.species-fill{height:100%;background-color:var(--primary-color, #007bff);transition:width .3s ease}.species-count{min-width:30px;text-align:right;font-size:14px;font-weight:500;color:var(--text-primary, #333)}.behaviors-list{display:flex;flex-direction:column;gap:10px}.behavior-item{display:flex;align-items:center;gap:15px;padding:10px;background:var(--surface-secondary, #f8f9fa);border-radius:6px}.rank{font-weight:700;color:var(--primary-color, #007bff);min-width:30px}.behavior-name{flex:1;text-transform:capitalize;color:var(--text-primary, #333)}.behavior-count{font-size:13px;color:var(--text-secondary, #666)}@media(max-width:768px){.animals-page{padding:10px}.page-header{flex-direction:column;gap:15px;align-items:stretch}.header-actions{justify-content:center}.summary-cards{grid-template-columns:repeat(2,1fr)}.attention-item,.session-item{flex-direction:column;align-items:stretch;gap:10px}.session-details{justify-content:space-between}}.animal-info{display:flex;align-items:center;gap:12px;overflow:hidden;word-wrap:break-word;overflow-wrap:break-word}.animal-details{display:flex;flex-direction:column;gap:8px;margin-bottom:12px;overflow:hidden;min-width:0;flex:1}.animal-details p{margin:0;font-size:14px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;word-wrap:break-word}.animal-details .detail-row{display:flex;flex-wrap:wrap;gap:16px;overflow:hidden}.animal-details .detail-row span{font-size:14px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis}.animal-details .detail-row strong{color:var(--text-secondary);font-weight:500}.animal-actions{display:flex;gap:8px;margin-top:16px}.animal-actions .btn{flex:1}.behavior-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.session-info{display:flex;align-items:center;gap:8px}.session-details-text{display:flex;flex-direction:column;gap:2px}.session-details-text h4{margin:0;font-size:14px;color:var(--text-primary, #333)}.session-details-text span{font-size:13px;color:var(--text-secondary, #6b7280)}.pet-avatar-container{display:flex;justify-content:center;margin-bottom:12px}.pet-profile-avatar{display:flex;justify-content:center;margin-bottom:16px}.animal-quick-view-modal{max-width:600px}.quick-view-header{display:flex;align-items:center;gap:1rem;padding:1.5rem;border-bottom:1px solid var(--border-primary, #e5e7eb);flex-shrink:0}.quick-view-title{flex:1}.quick-view-title h2{margin:0 0 .25rem;font-size:1.5rem;color:var(--text-primary, #333)}.quick-view-subtitle{margin:0 0 .5rem;color:var(--text-secondary, #666);font-size:.9rem}.quick-view-header .status{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500}.quick-view-header .status.inactive{background-color:#f0edf4;color:#5a4a72}.quick-view-content{padding:1.5rem}.quick-view-section{margin-bottom:1.5rem}.quick-view-section:last-child{margin-bottom:0}.quick-view-section h3{font-size:.875rem;font-weight:600;color:var(--text-secondary, #666);text-transform:uppercase;letter-spacing:.05em;margin:0 0 .75rem}.quick-view-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.quick-view-item label{display:block;font-size:.75rem;color:var(--text-tertiary, #999);margin-bottom:.25rem}.quick-view-item p{margin:0;font-size:.9rem;color:var(--text-primary, #333);font-weight:500}.quick-view-tags{display:flex;flex-wrap:wrap;gap:.5rem}.quick-view-tags.medical .medical-tag{background-color:#fef3c7;color:#92400e;padding:4px 10px;border-radius:12px;font-size:12px}.quick-view-goals{margin:0;padding-left:1.25rem;list-style:disc}.quick-view-goals li{font-size:.9rem;color:var(--text-primary, #333);margin-bottom:.5rem}.quick-view-goals li:last-child{margin-bottom:0}.quick-view-goals .more-goals{color:var(--text-secondary, #666);font-style:italic;list-style:none;margin-left:-1.25rem}.quick-view-actions{display:flex;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--border-primary, #e5e7eb);border-radius:0 0 12px 12px}.quick-view-actions .btn{flex:1;padding:.625rem 1rem;border-radius:6px;font-size:.875rem;font-weight:500;text-align:center;text-decoration:none;transition:all .2s}[data-theme=dark] .quick-view-title h2{color:#f5f3f7}[data-theme=dark] .quick-view-subtitle{color:var(--text-tertiary)}[data-theme=dark] .quick-view-header .status.inactive{background-color:#362d4a;color:var(--text-tertiary)}[data-theme=dark] .quick-view-section h3{color:var(--text-tertiary)}[data-theme=dark] .quick-view-item p{color:#f5f3f7}[data-theme=dark] .quick-view-tags.medical .medical-tag{background-color:#3d3020;color:#fde68a}[data-theme=dark] .quick-view-goals li{color:#d4cde0}[data-theme=dark] .quick-view-goals .more-goals{color:var(--text-tertiary)}@media(max-width:600px){.animal-quick-view-modal{max-height:95vh;margin:.5rem}.quick-view-header{flex-direction:column;text-align:center}.quick-view-grid{grid-template-columns:1fr}.quick-view-actions{flex-direction:column}}.animals-list-page{padding:20px;max-width:min(100%,1200px);margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid var(--border-primary, #e0e0e0)}.page-header h1{margin:0;color:var(--text-primary, #333)}.header-actions{display:flex;gap:10px}.filters-section{background:var(--card-bg, white);padding:20px;border-radius:8px;box-shadow:var(--shadow-card, 0 2px 4px rgba(0,0,0,.1));margin-bottom:30px}.filters{display:grid;grid-template-columns:2fr 1fr 1fr;gap:20px;margin-bottom:15px}.filter-group{display:flex;flex-direction:column;gap:5px}.filter-group label{font-size:14px;font-weight:500;color:var(--text-primary, #333)}.search-input{width:100%;padding:.625rem 1rem;border:1px solid var(--input-border, #ddd);border-radius:.375rem;font-size:.875rem;background:var(--input-bg, white);color:var(--text-primary, #333)}.search-input::placeholder{color:var(--text-secondary, #6b7280)}.search-input:focus{outline:none;border-color:var(--primary-color, #4a90e2);box-shadow:0 0 0 3px var(--focus-ring, rgba(254, 107, 52, .15))}.filter-select{padding:.5rem 1rem;border:1px solid var(--input-border, #ddd);border-radius:6px;font-size:.95rem;background:var(--input-bg, white);color:var(--text-primary, #333);cursor:pointer}.filter-select:focus{outline:none;border-color:var(--primary-color, #4a90e2)}.results-count{font-size:14px;color:var(--text-secondary, #666);text-align:right}.animals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.animal-card{background:var(--card-background);border-radius:16px;border:1px solid var(--card-border);padding:1.25rem;transition:border-color .2s,box-shadow .2s;cursor:pointer;display:flex;flex-direction:column;gap:1rem}.animal-card:hover{border-color:var(--accent-orange);box-shadow:0 4px 16px #00000026}.animal-card:focus{outline:none;border-color:var(--accent-orange);box-shadow:0 0 0 3px #f4a26133}.animal-card-header{display:flex;align-items:flex-start;gap:.875rem;margin-bottom:0}.animal-card-avatar{flex-shrink:0}.animal-header-text{flex:1;display:flex;flex-direction:column;gap:.375rem}.animal-header-text h3{margin:0;color:var(--text-primary);font-size:1.125rem;font-weight:700}.status{display:inline-block;padding:.2rem .6rem;border-radius:6px;font-weight:700;width:fit-content}.status.active{background:var(--success-bg);color:var(--success-color);align-self:flex-end}.status.inactive{background:var(--chip-purple-bg);color:var(--purple-text)}.animal-info{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem .75rem;margin-bottom:0}.info-row{display:flex;flex-direction:column;gap:.2rem;margin-bottom:0}.info-row .label{font-size:.6875rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary)}.info-row .value{font-size:14px;font-weight:700;color:var(--text-primary);text-transform:capitalize}.behavior-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:0}.more-tags{color:var(--text-tertiary);font-size:.8125rem;font-style:italic;align-self:center}.animal-actions{display:flex;gap:.5rem;margin-bottom:0}.animal-actions .btn{flex:1;text-align:center}.animal-actions .btn-primary{background:var(--accent-orange);color:#1a1a1a;border:none}.animal-actions .btn-primary:hover{background:var(--accent-orange-hover)}.animal-actions .btn-secondary{background:transparent;color:var(--text-primary);border:1.5px solid var(--card-border)}.animal-actions .btn-secondary:hover{background:var(--surface-hover);border-color:var(--text-secondary)}.animal-actions .btn-success{background:transparent;color:var(--success-color);border:1.5px solid var(--success-color)}.animal-actions .btn-success:hover{background:var(--success-bg)}.animal-meta{border-top:1px solid var(--card-border);padding-top:.625rem;margin-top:0}.animal-meta small{color:var(--text-tertiary);font-size:.8rem}.empty-state{text-align:center;padding:60px 20px;background:var(--card-bg, white);border-radius:8px}.empty-state h3{margin:0 0 10px;color:var(--text-primary, #333)}.empty-state p{margin:0 0 20px;color:var(--text-secondary, #666)}.page-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-secondary, #666)}.page-loading .spinner{margin-bottom:16px}.page-loading p{margin:0}.error{color:var(--error-color, #dc3545)}.retry-btn{margin-top:10px;padding:8px 16px;background-color:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer}@media(max-width:768px){.animals-list-page{padding:10px}.page-header{flex-direction:column;gap:15px;align-items:stretch}.header-actions{justify-content:center}.filters{grid-template-columns:1fr;gap:15px}.animals-grid{grid-template-columns:1fr}.animal-actions{flex-direction:column}}.load-more-trigger{padding:40px 20px;text-align:center}.loading-more{color:var(--text-secondary, #666);font-size:16px;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-secondary, #666)}.loading-state .spinner{margin-bottom:16px}.client-selector{position:relative;width:100%}.input-container{position:relative;display:flex;align-items:center}.client-input{width:100%;padding:12px 40px 12px 16px;border:2px solid var(--input-border, #d1d5db);border-radius:8px;font-size:16px;background:var(--input-bg, white);color:var(--text-primary, #111827);transition:border-color .2s ease;cursor:text}.client-input::placeholder{color:var(--text-secondary, #6b7280)}.client-input:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.client-input.has-selection{border-color:var(--success-color, #10b981)}.dropdown-arrow{position:absolute;right:12px;cursor:pointer;color:var(--text-secondary, #6b7280);display:flex;align-items:center;justify-content:center;width:20px;height:20px;transition:color .2s ease}.dropdown-arrow:hover{color:var(--text-primary, #374151)}.dropdown-menu{position:absolute;top:100%;left:0;right:0;background:var(--card-bg, white);border:2px solid var(--input-border, #d1d5db);border-top:none;border-radius:0 0 8px 8px;max-height:200px;overflow-y:auto;z-index:1000;box-shadow:0 4px 6px -1px #0000001a}.dropdown-item{padding:12px 16px;cursor:pointer;border-bottom:1px solid var(--border-primary, #f3f4f6);transition:background-color .2s ease}.dropdown-item:last-child{border-bottom:none}.dropdown-item:hover{background-color:var(--hover-bg, #f9fafb)}.dropdown-item.selected{background-color:var(--primary-light, #eff6ff);border-left:3px solid var(--primary-color, #3b82f6)}.dropdown-item.loading,.dropdown-item.no-results{color:var(--text-secondary, #6b7280);cursor:default;text-align:center;font-style:italic}.dropdown-item.loading:hover,.dropdown-item.no-results:hover{background-color:transparent}.client-info{display:flex;flex-direction:column;gap:2px}.client-name{font-weight:500;color:var(--text-primary, #111827);font-size:14px}.client-email{font-size:12px;color:var(--text-secondary, #6b7280)}.client-pets{font-size:11px;color:var(--text-tertiary, #9ca3af);margin-top:2px}@media(max-width:768px){.client-input{font-size:16px}.dropdown-menu{max-height:150px}.dropdown-item{padding:10px 12px}}.animal-form-page{padding:20px;max-width:min(100%,800px);margin:0 auto}.breadcrumb{margin-bottom:20px}.breadcrumb-link{background:none;border:none;color:var(--text-secondary);font-size:16px;font-weight:500;cursor:pointer;padding:8px 0;display:inline-flex;align-items:center;gap:8px;transition:color .2s;text-decoration:none}.breadcrumb-link:before{content:"‹";font-size:24px;font-weight:400;line-height:1}.breadcrumb-link:hover{color:var(--accent-orange)}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border-primary)}.page-header h1{margin:0;color:var(--text-primary)}.error-message{background-color:var(--error-bg);color:var(--error-text);padding:12px;border-radius:4px;margin-bottom:20px;border:1px solid var(--error-border)}.animal-form{display:flex;flex-direction:column;gap:12px}.form-section{padding:20px;background:var(--card-background);border-radius:16px;box-shadow:var(--shadow-md)}.form-section:last-child{border-bottom:none}.form-section h2,.form-section h3{margin:.5rem 0 0;color:var(--text-primary);font-size:18px;font-weight:600;border-bottom:1px solid var(--text-tertiary);padding-bottom:1rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;align-items:start}.form-row:last-child{margin-bottom:0}.form-group{display:flex;flex-direction:column;gap:4px;min-width:0}.form-group label{font-size:14px;font-weight:500;color:var(--text-primary)}.form-group input,.form-group select,.form-group textarea{border:1px solid var(--input-border);border-radius:4px;font-size:14px;background-color:var(--input-bg);color:var(--text-primary);transition:border-color .2s,box-shadow .2s;width:100%;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--input-focus-border);box-shadow:0 0 0 3px var(--focus-ring)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--input-placeholder)}.input-group,.input-with-unit{display:flex;gap:10px;align-items:stretch;width:100%}.input-group input,.input-with-unit input{flex:2;min-width:0}.input-group select,.input-with-unit select{flex:1;min-width:70px;max-width:100px}.input-with-unit.compact{display:flex;flex-direction:row;gap:8px;align-items:center;width:100%}.input-with-unit.compact input{flex:0 0 80px;width:80px;min-width:60px;max-width:100px;text-align:center}.input-with-unit.compact select{flex:1;min-width:70px;max-width:none}.behavior-tags-section{display:flex;flex-direction:column;gap:16px;margin-top:1rem}.add-tag-input{display:flex;gap:10px;align-items:center}.add-tag-input input{flex:1;padding:10px 12px;border:1px solid var(--input-border);border-radius:6px;font-size:14px;background-color:var(--input-bg);color:var(--text-primary);transition:border-color .2s,box-shadow .2s}.add-tag-input input:focus{outline:none;border-color:var(--input-focus-border);box-shadow:0 0 0 3px var(--focus-ring)}.add-tag-input input::placeholder{color:var(--input-placeholder)}.tags-input{display:flex;flex-direction:column;gap:15px}.add-tag{display:flex;gap:10px;align-items:end}.add-tag input{flex:1;padding:8px 12px;border:1px solid var(--input-border);border-radius:4px;font-size:14px;background-color:var(--input-bg);color:var(--text-primary)}.tags-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.remove-tag{background:none;border:none;color:var(--primary-color);cursor:pointer;font-size:16px;font-weight:700;line-height:1;padding:0;width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s,color .2s}.remove-tag:hover{background-color:var(--error-color);color:#fff}.form-actions{padding:24px 20px;background-color:transparent;display:flex;gap:12px;justify-content:flex-end;border-top:none}.btn-primary{background-color:var(--accent-orange);color:var(--body-background);border-color:var(--accent-orange)}.btn-primary:hover:not(:disabled){background-color:var(--accent-orange-hover);border-color:var(--accent-orange-hover)}.btn-outline-danger{background-color:transparent;border:1px solid var(--error-color, #ef4444);color:var(--error-color, #ef4444)}.btn-outline-danger:hover:not(:disabled){background-color:var(--error-bg, #fef2f2)}.btn-sm{padding:6px 12px;font-size:13px}.loading{text-align:center;padding:40px;font-size:16px;color:var(--text-secondary)}@media(max-width:768px){.animal-form-page{padding:10px}.page-header{flex-direction:column;gap:15px;align-items:stretch}.form-section{padding:20px}.form-row{grid-template-columns:1fr;gap:15px}.form-actions{padding:20px;flex-direction:column}.add-tag,.add-tag-input{flex-direction:column;align-items:stretch}.add-tag-input input{width:100%}}.photo-upload-section{display:flex;gap:24px;align-items:flex-start;padding:16px;background:var(--surface-secondary, #f8fafc);border-radius:8px;border:1px solid var(--border-primary, #e2e8f0)}.photo-preview{flex-shrink:0}.photo-upload-controls{display:flex;flex-direction:column;gap:12px;flex:1}.photo-upload-controls .btn{width:fit-content}.photo-upload-controls label.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1rem;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;background-color:var(--primary-color, #3b82f6);color:#fff;border:none}.photo-upload-controls label.btn-primary:hover{background-color:var(--primary-hover, #2563eb)}.photo-upload-controls .form-help{margin:0;font-size:.875rem;color:var(--text-secondary, #6b7280)}@media(max-width:640px){.photo-upload-section{flex-direction:column;align-items:center;text-align:center}.photo-upload-controls{align-items:center}}.animal-assessment-display{border:1px solid #e0e0e0;border-radius:8px;padding:20px;margin-bottom:20px}.assessment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid #f0f0f0}.assessment-header h3{margin:0;font-size:1.25rem;color:#333}.assessment-actions{display:flex;gap:12px;align-items:center}.assessment-actions .btn{display:flex;align-items:center;gap:6px}.icon-refresh{font-size:1.2rem;display:inline-block}.share-toggle{display:flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.share-toggle input[type=checkbox]{width:18px;height:18px;cursor:pointer}.toggle-label{font-size:.9rem;color:#555}.assessment-error{background:#fee;border:1px solid #fcc;border-radius:4px;padding:12px;margin-bottom:16px;display:flex;align-items:center;gap:8px;color:#c33}.error-icon{font-size:1.2rem}.assessment-notice{background:#e3f2fd;border:1px solid #90caf9;border-radius:4px;padding:12px;margin-bottom:16px;display:flex;align-items:center;gap:8px;color:#1976d2}.notice-icon{font-size:1.2rem}.assessment-content{margin-bottom:16px}.assessment-text{line-height:1.6;color:var(--text-primary, #333)}.assessment-text p{margin:0 0 12px}.assessment-text p:last-child{margin-bottom:0}.assessment-text h1,.assessment-text h2,.assessment-text h3,.assessment-text h4{margin:16px 0 8px;color:var(--text-primary, #1f2937);font-weight:600}.assessment-text h3{font-size:1rem}.assessment-text h4{font-size:.95rem}.assessment-text ul,.assessment-text ol{margin:0 0 12px;padding-left:24px}.assessment-text li{margin-bottom:4px}.assessment-text strong{font-weight:600;color:var(--text-primary, #1f2937)}.assessment-text hr{border:none;border-top:1px solid var(--border-primary, #e5e7eb);margin:16px 0}.streaming-cursor{display:inline-block;color:#1976d2;animation:blink 1s step-end infinite;margin-left:2px}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.assessment-empty{text-align:center;padding:40px 20px;color:var(--text-secondary)}.assessment-empty p{margin:0 0 8px}.empty-hint{font-size:.9rem;color:var(--text-tertiary)}.assessment-metadata{border-top:1px solid #e0e0e0;padding-top:12px;font-size:.85rem;color:#666}.metadata-row{display:flex;gap:24px;margin-bottom:8px}.metadata-row:last-child{margin-bottom:0}.metadata-item{display:flex;gap:8px}.metadata-label{font-weight:600;color:#555}.metadata-value{color:#777}@media(max-width:768px){.assessment-header{flex-direction:column;align-items:flex-start;gap:12px}.assessment-actions{width:100%;flex-direction:column;align-items:stretch}.assessment-actions .btn{width:100%;justify-content:center}.share-toggle{justify-content:center}.metadata-row{flex-direction:column;gap:8px}}.animal-detail-page{max-width:min(100%,1200px);margin:0 auto}.back-link{display:inline-flex;align-items:center;gap:4px;background:none;border:none;color:var(--text-secondary, #666);font-size:14px;cursor:pointer;padding:0;margin-bottom:16px;transition:color .2s}.back-link:hover{color:var(--primary-color, #007bff)}.header-info{flex:1}.header-with-avatar{display:flex;align-items:center;gap:20px}.detail-page-avatar{flex-shrink:0}.header-text h1,.header-info h1{margin:0 0 10px;color:var(--text-primary, #333);font-size:1.75rem}.animal-meta{display:flex;gap:15px;align-items:center}.species,.breed{font-size:16px;color:var(--text-secondary, #666);text-transform:capitalize}.status{padding:4px 12px;border-radius:12px;font-size:13px;font-weight:500}.status.inactive{background-color:#f0edf4;color:#5a4a72}.header-actions{display:flex;gap:10px;flex-wrap:wrap}.btn-secondary:hover{background-color:#545b62}.tabs{display:flex;border-bottom:1px solid var(--text-quaternary);margin-bottom:30px}.tab{padding:12px 24px;border:none;background:none;cursor:pointer;font-size:14px;color:#666;border-bottom:2px solid transparent;transition:all .2s}.tab:hover{color:#333}.tab.active{color:var(--accent-orange);background-color:var(--card-background);border-bottom:2px solid var(--accent-orange)}.tab-content{min-height:400px;padding-bottom:2rem}.overview-tab{border-radius:8px}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;padding-bottom:2rem}.info-section{display:flex;flex-direction:column;gap:15px;background:var(--card-background);border-radius:16px;padding:2rem}.info-section.full-width,.info-section.basic-info-compact{grid-column:1 / -1}.info-section h2{margin:0;color:var(--text-primary, #333);font-size:18px;font-weight:600;padding-bottom:10px}.info-chips{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-evenly}.info-chip{display:flex;flex-direction:column;background:var(--body-background);border-radius:8px;padding:1rem 2rem;min-width:100px}.info-chip .chip-label{font-size:13px;font-weight:500;color:var(--text-secondary, #999);text-transform:uppercase;letter-spacing:.03em;margin-bottom:2px}.info-chip .chip-value{font-size:14px;font-weight:600;color:var(--text-primary, #333)}.info-list{display:flex;flex-direction:column;gap:10px}.info-item{margin-bottom:8px!important}.info-item span{display:inline!important;color:var(--text-primary, #333)!important}.info-item strong{font-weight:500!important;color:var(--text-secondary, #666)!important}.behavior-tags{display:flex;flex-wrap:wrap;gap:8px}.behavior-tags-inline{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border-primary, #e5e7eb)}.behavior-tags-inline .behavior-label{font-size:13px;font-weight:500;color:var(--text-tertiary, #999);text-transform:uppercase;letter-spacing:.03em}.medical-notes{background-color:var(--info-bg, #f8f9fa);padding:15px;border-radius:6px;border-left:4px solid var(--primary-color, #007bff);line-height:1.5;color:var(--text-primary, #333)}.sessions-tab,.notes-tab{padding:0}.sessions-count{font-size:13px;color:var(--text-secondary);margin:0 0 16px}.animal-detail-page .sessions-list{display:flex;padding-bottom:2rem}.animal-detail-page .session-card{flex-direction:row}.sessions-list,.notes-list{display:flex;flex-direction:column;gap:12px}.session-card{display:flex;align-items:center;gap:2rem;padding:1.1rem 1.5rem;background:var(--card-background);border:1px solid var(--card-border);border-radius:12px;text-decoration:none;color:inherit;transition:border-color .2s,box-shadow .2s;cursor:pointer}.sc-date-time{display:flex;flex-direction:column;min-width:120px;flex-shrink:0}.sc-date{font-weight:700;font-size:.9rem;color:var(--text-primary)}.sc-time{font-size:.8rem;color:var(--text-secondary);margin-top:3px}.sc-col{display:flex;flex-direction:column;min-width:100px;flex-shrink:0}.sc-label{font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:5px}.sc-value{font-size:.9rem;font-weight:600;color:var(--text-primary);text-transform:capitalize}.sc-status-badge{display:inline-block;padding:3px 10px;border-radius:6px;font-size:.65rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;width:fit-content}.sc-status-completed{background:var(--success-bg);color:var(--success-color)}.sc-status-scheduled{background:var(--warm-tint-bg);border:1px solid var(--warm-tint-border);color:var(--accent-orange)}.sc-status-cancelled{background:var(--error-bg);color:var(--error-color)}.sc-notes-preview{flex:1;min-width:0;font-size:.875rem;color:var(--text-secondary);font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:1rem}.sc-view-link{display:flex;flex-direction:row;align-items:center;flex-shrink:0;gap:.4rem;margin-left:auto;color:var(--text-primary)}.sc-view-text{display:flex;flex-direction:column;font-size:.8rem;font-weight:600;line-height:1.3}.sc-chevron{font-size:1rem;color:var(--text-secondary);line-height:1}@media(max-width:640px){.session-card{flex-wrap:wrap;gap:.75rem;padding:1rem}.sc-notes-preview{display:none}}.note-meta{display:flex;gap:10px;align-items:center}.category,.priority{padding:2px 8px;border-radius:12px;font-size:13px;font-weight:500;text-transform:uppercase}.category.behavior{background-color:#fff3cd;color:#856404}.category.medical{background-color:#f8d7da;color:#721c24}.category.training{background-color:#d4edda;color:#155724}.category.social{background-color:#cce5ff;color:#004085}.category.general{background-color:#e2e3e5;color:#383d41}.priority.low{background-color:#d4edda;color:#155724}.priority.medium{background-color:#fff3cd;color:#856404}.priority.high{background-color:#ffeaa7;color:#b8860b}.priority.urgent{background-color:#f8d7da;color:#721c24}.note-tags{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:15px}.note-tag{background-color:#e9ecef;color:#495057;padding:2px 8px;border-radius:12px;font-size:13px}.note-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border-color, #e9ecef);padding-top:15px}.note-date{font-size:13px;color:var(--text-secondary, #666)}.loading,.error{text-align:center;padding:40px;font-size:16px}.error{color:#dc3545}@media(max-width:768px){.header-with-avatar{flex-direction:column;align-items:center;text-align:center}.header-text h1{font-size:1.5rem}.header-actions{justify-content:center;flex-wrap:wrap}.animal-meta{justify-content:center}.tabs{overflow-x:auto}.tab{white-space:nowrap}.overview-tab,.sessions-tab,.notes-tab{padding:20px}.info-grid{grid-template-columns:1fr;gap:20px}.tab-header{flex-direction:column;gap:15px;align-items:stretch}.session-actions,.note-actions{flex-direction:column}}.session-notes-section{margin:12px 0;padding:12px;background:var(--card-bg, #f8fafc);border:1px solid var(--border-color, #e2e8f0);border-radius:6px}.notes-item{margin-bottom:12px}.notes-item:last-child{margin-bottom:0}.notes-item strong{display:block;margin-bottom:4px;color:var(--text-primary, #374151);font-size:13px;font-weight:600}.notes-item p{margin:0;color:var(--text-primary, #4b5563);font-size:14px;line-height:1.4;background:var(--card-secondary-bg, white);padding:8px 12px;border:1px solid var(--border-color, #e5e7eb);border-radius:4px}.session-notes{margin-top:12px}.session-notes strong{display:block;margin-bottom:4px;color:var(--text-primary, #374151);font-size:13px;font-weight:600}.session-notes p{margin:0;color:var(--text-primary, #4b5563);font-size:14px;line-height:1.4}.client-sessions-page{padding:20px;max-width:min(100%,1200px);margin:0 auto}.client-sessions-page .page-header{margin-bottom:30px}.header-content{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.header-text{flex:1}.client-sessions-page .page-header h1{color:#333;margin-bottom:10px}.client-sessions-page .page-header p{color:#666;font-size:16px}.schedule-btn-wrapper{display:inline-block;position:relative}.schedule-btn-wrapper.has-tooltip:hover .custom-tooltip{opacity:1;visibility:visible}.custom-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:#1f2937;color:#fff;padding:.5rem .75rem;border-radius:4px;font-size:.875rem;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:10}.filters-section{display:flex;align-items:center;gap:2rem;margin-bottom:2rem;padding:1rem;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.filter-group{display:flex;align-items:center;gap:.5rem}.filter-group label{font-weight:500;color:#495057;white-space:nowrap}.filter-select{padding:.5rem;border:1px solid #ced4da;border-radius:4px;background:#fff;font-size:.875rem;min-width:150px}.results-info{margin-left:auto;color:#6c757d;font-size:.875rem}.load-more-btn{padding:.75rem 1.5rem;font-size:.875rem;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;margin-bottom:.5rem;z-index:1000}.custom-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#1f2937}.schedule-btn{display:flex;align-items:center;gap:.5rem;white-space:nowrap;padding:.75rem 1.5rem;font-size:.875rem;font-weight:500}.loading,.error{text-align:center;padding:40px;color:#666}.error button{margin-top:10px;padding:8px 16px;background:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer}.no-sessions{text-align:center;padding:60px 20px;color:#666}.no-sessions p{margin-bottom:10px;font-size:16px}.sessions-list{display:grid;gap:24px;margin-top:24px}.session-card{background:#fff;border-radius:12px;border:1px solid #e5e7eb;overflow:hidden;transition:all .2s ease;box-shadow:0 1px 3px #0000001a;display:flex;flex-direction:column}.session-card.expanded{background:#fff}.session-header{display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;padding:24px 20px;cursor:pointer;transition:background-color .2s ease;gap:16px;border-bottom:1px solid #e5e7eb}.session-header:hover{background:#f9fafb}.session-info{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.session-info h3{margin:0;color:#111827;font-size:18px;font-weight:600;line-height:1.3}.session-date{margin:0;font-size:18px;color:#111827;font-weight:600;line-height:1.4}.session-time{margin:0;font-size:14px;color:#6b7280;font-weight:400;line-height:1.4}.session-animal{margin:4px 0 0;font-size:16px;color:#3b82f6;font-weight:500;line-height:1.4}.session-trainer{margin:0;color:#6b7280;font-size:14px;line-height:1.4}.session-status{align-self:flex-start;padding:6px 12px;border-radius:16px;color:#fff;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;height:fit-content}.session-details{display:flex;flex-direction:column;gap:20px;padding-top:20px;align-items:stretch}.session-basic-info{display:flex;flex-direction:column;gap:16px;margin-bottom:16px}.session-basic-details{background:#f8f9fa;padding:16px;border-radius:6px}.session-basic-details p{margin:0 0 12px;line-height:1.5;font-size:14px;text-align:left}.session-basic-details p:last-child{margin-bottom:0}.animal-info{border-radius:6px;margin:0;overflow:hidden;word-wrap:break-word}.animal-info p{margin:0 0 8px;line-height:1.5;font-size:14px;text-align:left;display:block;color:var(--text-primary);overflow:hidden;word-wrap:break-word}.animal-info p:last-child{margin-bottom:0}.pet-info{background:#f8f9fa;padding:16px;border-radius:6px;margin:0}.pet-info p{margin:0 0 8px;line-height:1.5;font-size:14px;text-align:left;display:block}.session-details p{margin:0;color:#374151;line-height:1.6;font-size:14px}.session-details strong{color:#111827;font-weight:600}.pet-info{background:#f8f9fa;padding:20px;border-radius:6px;border-left:4px solid #007bff;margin:8px 0}.pet-info p{margin:0 0 10px;line-height:1.6;font-size:15px}.pet-info p:last-child{margin-bottom:0}.trainer-notes{background:#fff3cd;padding:20px;border-radius:6px;border-left:4px solid #ffc107;margin:8px 0}.trainer-notes h4{margin:0 0 16px;color:#856404;font-size:15px;font-weight:600;line-height:1.4}.trainer-notes p{margin:0;color:#856404;line-height:1.7;font-size:15px}.session-media{background:#f0f9ff;padding:20px;border-radius:6px;border-left:4px solid #3b82f6;margin:8px 0}.session-media h4{margin:0 0 16px;color:#1e40af;font-size:15px;font-weight:600}.client-notes-section{background:#e7f3ff;padding:16px;border-radius:6px;margin:8px 0}.client-notes-section h4{margin:0 0 16px;color:#0056b3;font-size:15px;font-weight:600}.notes-editor textarea{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-family:inherit;font-size:14px;line-height:1.5;resize:vertical;margin-bottom:10px}.notes-actions{display:flex;gap:10px}.save-btn{padding:8px 16px;background:#28a745;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px}.save-btn:hover{background:#218838}.cancel-btn{padding:8px 16px;background:#6c757d;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px}.cancel-btn:hover{background:#5a6268}.notes-display p{margin:0 0 12px;color:#0056b3;line-height:1.6;font-size:15px}.no-notes{color:#6c757d!important;font-style:italic}.edit-notes-btn{padding:6px 12px;background:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:13px}.edit-notes-btn:hover{background:#0056b3}@media(max-width:768px){.client-sessions-page{padding:15px}.sessions-list{grid-template-columns:1fr;gap:16px}.session-header,.session-content{padding:16px}.header-content{flex-direction:column;align-items:stretch;gap:1rem}.schedule-btn{align-self:flex-start}.filters-section{flex-direction:column;gap:1rem}.filter-group,.filter-group select{width:100%}}.filters-section{display:flex;gap:1rem;margin-bottom:2rem;padding:1rem;background:#f8f9fa;border-radius:8px;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-group label{font-weight:500;color:#495057;font-size:.9rem}.filter-group select{padding:.5rem;border:1px solid #ced4da;border-radius:4px;background:#fff;font-size:.9rem;min-width:150px}.filter-group select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.pagination-section{display:flex;justify-content:center;margin-top:2rem;padding:1rem}.load-more-btn{padding:.75rem 1.5rem;background:#6c757d;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;transition:background-color .2s}.load-more-btn:hover:not(:disabled){background:#5a6268}.load-more-btn:disabled{opacity:.6;cursor:not-allowed}.decline-reason{background:#fef2f2;border:1px solid #fecaca;border-radius:6px;padding:1rem;margin-top:1rem}.decline-reason h4{color:#dc2626;margin:0 0 .5rem;font-size:1rem}.decline-reason p{color:#7f1d1d;margin:0;font-size:.9rem}.reschedule-request{background:#f3f4f6;border:1px solid #8b5cf6;border-radius:6px;padding:1rem;margin-top:1rem}.reschedule-request h4{color:#7c3aed;margin:0 0 .5rem;font-size:1rem}.reschedule-request p{color:#374151;margin:0 0 .5rem;font-size:.9rem}.reschedule-actions{display:flex;gap:.75rem;margin-top:1rem}.reschedule-actions .btn{font-size:.875rem;padding:.5rem 1rem}.client-schedule-page{max-width:min(100%,1200px);margin:0 auto;padding:2rem}.client-schedule-page .loading-state,.session-scheduler .loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;color:#6b7280}.client-schedule-page .loading-state .spinner,.session-scheduler .loading-state .spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(360deg)}}.page-content{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:2rem}.consent-warning{text-align:center;padding:2rem;background:var(--warning-bg, #fef3c7);border:1px solid var(--warning-border, #f59e0b);border-radius:8px}.consent-warning h3{color:var(--warning-text, #92400e);margin-bottom:1rem}.consent-warning p{color:var(--warning-text, #78350f);margin-bottom:1.5rem}.session-scheduler.calendly-style{max-width:none}.scheduler-container{display:grid;grid-template-columns:300px 1fr;gap:2rem;min-height:600px}.scheduler-sidebar{background:#f9fafb;padding:1.5rem;border-radius:8px;border:1px solid #e5e7eb}.scheduler-main{display:flex;flex-direction:column;gap:2rem;min-width:0;overflow:hidden}.calendar-container{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem;width:100%;max-width:100%;box-sizing:border-box;overflow:hidden}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:-1rem}.calendar-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#1f2937}.calendar-nav{background:none;border:none;font-size:1.5rem;color:#6b7280;cursor:pointer;padding:.5rem;border-radius:4px;transition:background-color .2s}.calendar-nav:hover{background:#f3f4f6}.client-schedule-page .calendar-grid{width:100%;display:block;box-sizing:border-box}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:0;box-sizing:border-box}.calendar-weekday{padding:.75rem .25rem;text-align:center;font-size:.875rem;font-weight:600;color:#6b7280;background:#f9fafb;border:1px solid #e5e7eb;border-bottom:none;box-sizing:border-box}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);width:95%;box-sizing:border-box;margin:1rem auto}.calendar-day-cell{aspect-ratio:1;border:1px solid #e5e7eb;border-top:none;box-sizing:border-box;background:var(--cal-day-background)}.calendar-day-cell:has(.unavailable){opacity:.45;background-color:var(--cal-day-background)}.calendar-day{width:100%;height:100%;border:none;background:var(--cal-day-background);cursor:pointer;font-size:.875rem;transition:all .2s;display:flex;align-items:center;justify-content:flex-start;padding-top:1.7rem}.calendar-day.available{color:#1f2937}.calendar-day.available:hover{background:#dbeafe;color:#1d4ed8}.calendar-day.selected{background:#3b82f6;color:#fff}.calendar-day.unavailable{color:#d1d5db;cursor:not-allowed}.time-slots-container{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem;box-sizing:border-box;overflow:hidden}.time-slots-container h4{margin:0 0 1rem;font-size:1.125rem;font-weight:600;color:#1f2937}.time-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:.75rem}.time-slot{padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:6px;background:#fff;cursor:pointer;font-size:.875rem;font-weight:500;color:#374151;transition:all .2s;text-align:center}.time-slot:hover{border-color:#3b82f6;background:#dbeafe;color:#1d4ed8}.no-slots{color:#6b7280;font-style:italic;text-align:center;padding:2rem}.booking-form{margin-top:2rem;padding-top:2rem;border-top:1px solid #e5e7eb}.booking-form .form-group{margin-bottom:1.5rem}.booking-form .form-label{display:block;font-size:.875rem;font-weight:500;color:var(--text-primary);margin-bottom:.5rem}.booking-form input[type=text],.booking-form textarea{width:100%;padding:.75rem;font-size:.875rem;border:1px solid var(--border-primary);border-radius:6px;background:var(--input-bg);color:var(--text-primary);transition:border-color .2s;box-sizing:border-box}.booking-form input[type=text]::placeholder,.booking-form textarea::placeholder{color:var(--input-placeholder);font-size:.875rem}.booking-form input[type=text]:focus,.booking-form textarea:focus{outline:none;border-color:var(--accent-orange)}.booking-form textarea{min-height:100px;resize:vertical}.btn-block{width:100%}@media(max-width:768px){.client-schedule-page,.page-content{padding:1rem}.scheduler-container{grid-template-columns:1fr;gap:1rem}.time-slots{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}}.client-tasks-page{padding:20px;max-width:min(100%,1200px);margin:0 auto}.client-tasks-header{margin-bottom:30px}.client-tasks-header h1{color:var(--text-primary, #1f2937);margin-bottom:5px}.client-tasks-header p{color:var(--text-secondary, #6b7280);margin:0}.client-tasks-loading,.client-tasks-error,.client-tasks-empty{text-align:center;padding:40px;color:var(--text-secondary, #6b7280)}.client-tasks-error button{margin-top:10px;padding:8px 16px;background:var(--accent-orange);color:var(--text-inverse, #ffffff);border:none;border-radius:6px;cursor:pointer}.client-tasks-list{display:flex;flex-direction:column;gap:20px}.client-task-card{background-color:var(--card-background);border:1px solid var(--chip-orange-border);border-radius:12px;box-shadow:0 1px 3px #0000004d;overflow:hidden}.client-task-card:hover{border-color:var(--accent-orange-hover)}.client-task-header{padding:20px;cursor:pointer;border-bottom:1px solid var(--border-primary, #e5e7eb)}.client-task-header:hover{background:var(--surface-hover)}.client-task-title{display:flex;align-items:center;gap:15px;margin-bottom:10px}.client-task-title h3{margin:0;color:var(--text-primary, #1f2937);flex:1}.client-task-status{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:capitalize;color:var(--text-inverse, #ffffff)}.client-task-status.status-assigned{background:var(--warm-tint-bg);border:1px solid var(--warm-tint-border);color:var(--accent-orange)}.client-task-status.status-in-progress{background:var(--info-bg, rgba(59, 130, 246, .12));color:var(--info-color, #3b82f6)}.client-task-status.status-completed{background:var(--success-bg);color:var(--success-color)}.client-task-meta{display:flex;gap:20px;color:var(--text-secondary, #6b7280);font-size:14px}.client-task-details{padding:20px;background:var(--card-background)}.client-task-details h4{color:var(--text-primary, #1f2937);margin:0 0 10px;font-size:16px}.client-task-description,.client-task-instructions,.client-task-progress-section,.client-task-notes{margin-bottom:25px}.client-task-description p,.client-task-instructions p{margin:0;line-height:1.5;color:var(--text-primary, #1f2937)}.status-tracker{display:flex;align-items:center;justify-content:space-between;max-width:min(100%,400px);margin:20px 0}.status-step{display:flex;flex-direction:column;align-items:center;flex:1;position:relative}.step-circle{width:40px;height:40px;border-radius:50%;background:var(--bg-tertiary, #e5e7eb);color:var(--text-secondary, #6b7280);display:flex;align-items:center;justify-content:center;font-weight:700;margin-bottom:8px;transition:all .3s ease}.status-step.active .step-circle{background:var(--success-color);color:var(--text-inverse, #ffffff)}.status-step span{font-size:13px;color:var(--text-secondary, #6b7280);text-align:center;font-weight:500}.status-step.active span{color:var(--success-color);font-weight:600}.step-connector{flex:1;height:2px;background:var(--bg-tertiary, #e5e7eb);margin:0 10px 30px}.step-connector.active{background:var(--success-color)}.notes-list{margin-bottom:15px}.note-item{background:var(--card-background);padding:12px;border-radius:6px;margin-bottom:10px;border-left:3px solid var(--accent-orange)}.note-item p{margin:0 0 5px;color:var(--text-primary, #1f2937)}.note-meta{display:flex;justify-content:space-between;align-items:center}.note-meta small{color:var(--text-tertiary);font-size:13px}.note-actions{display:flex;gap:8px}.edit-btn,.delete-btn{padding:4px 8px;border:none;border-radius:6px;font-size:13px;cursor:pointer;transition:opacity .2s ease}.edit-btn{background:var(--warning-bg);color:var(--warning-text)}.edit-btn:hover{opacity:.8}.delete-btn{background:var(--error-bg);color:var(--error-text)}.delete-btn:hover{opacity:.8}.edit-note textarea{width:100%;padding:8px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;resize:vertical;font-family:inherit;margin-bottom:8px;background:var(--input-bg);color:var(--text-primary)}.edit-actions{display:flex;gap:8px}.edit-actions button{padding:6px 12px;border:none;border-radius:6px;cursor:pointer;font-size:13px;transition:opacity .2s ease}.edit-actions button:first-child{background:var(--success-bg);color:var(--success-text)}.edit-actions button:first-child:hover{opacity:.8}.edit-actions button:last-child{background:var(--surface-secondary);color:var(--text-secondary)}.edit-actions button:last-child:hover{opacity:.8}.no-notes{color:var(--text-tertiary);font-style:italic;margin-bottom:15px}.add-note{display:flex;flex-direction:column;gap:10px}.add-note textarea{padding:10px;border-radius:6px;resize:vertical;font-family:inherit;background:var(--body-background);border:none;color:var(--text-primary)}.add-note button{align-self:flex-start;padding:8px 16px;background:var(--input-bg, #374151);border:1px solid var(--border-secondary, #4b5563);color:var(--text-secondary, #9ca3af);border-radius:6px;cursor:pointer;font-size:14px}.add-note button:hover:not(:disabled){background:var(--accent-orange);color:var(--body-background)}.add-note button:disabled{opacity:.5;cursor:not-allowed}.status-actions{margin-top:20px;display:flex;gap:10px;flex-wrap:wrap}.status-btn{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.status-btn:disabled{opacity:.5;cursor:not-allowed}.start-btn{background:var(--accent-orange);color:var(--text-inverse, #ffffff)}.start-btn:hover:not(:disabled){background:var(--accent-orange-hover)}.complete-btn{background:var(--success-color);color:var(--text-inverse, #ffffff)}.complete-btn:hover:not(:disabled){opacity:.85}.reopen-btn{background:var(--warning-bg);color:var(--warning-text)}.reopen-btn:hover:not(:disabled){opacity:.85}.status-btn-group{display:flex;gap:10px;flex-wrap:wrap}@media(max-width:768px){.client-tasks-page{padding:15px}.client-task-meta{flex-direction:column;gap:5px}.progress-controls{flex-direction:column;align-items:stretch;gap:10px}.status-actions{flex-direction:column}.status-btn{width:100%}}.client-task-media{margin-top:20px;padding-top:16px;border-top:1px solid var(--border-primary, #e5e7eb)}.media-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.media-section-header h4{margin:0;color:var(--text-primary, #1f2937)}.upload-error-banner{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;margin-bottom:12px;border-radius:8px;background-color:var(--error-bg, #fef2f2);color:var(--error-text, #991b1b);font-size:13px}.upload-error-banner p{margin:0}.upload-error-banner button{padding:4px 10px;border:none;border-radius:4px;background:transparent;color:var(--error-text, #991b1b);font-size:12px;cursor:pointer;font-weight:500}.upload-error-banner button:hover{background-color:var(--error-border, #fecaca)}.animal-session-history{padding:20px;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.session-history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #e0e0e0}.session-history-header h3{margin:0;font-size:1.5rem;color:#333}.session-count{font-size:.9rem;color:#666;font-weight:500}.session-filters{display:flex;gap:15px;flex-wrap:wrap;margin-bottom:20px;padding:15px;background:#f8f9fa;border-radius:6px}.filter-group{display:flex;flex-direction:column;gap:5px;min-width:150px}.filter-group label{font-size:.85rem;font-weight:600;color:#555}.filter-group select,.filter-group input[type=date]{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:.9rem;background:#fff;cursor:pointer}.filter-group select:focus,.filter-group input[type=date]:focus{outline:none;border-color:#4caf50;box-shadow:0 0 0 2px #4caf501a}.clear-filters-button{align-self:flex-end;padding:8px 16px;background:#f44336;color:#fff;border:none;border-radius:4px;font-size:.9rem;cursor:pointer;transition:background .2s}.clear-filters-button:hover{background:#d32f2f}.session-list{display:flex;flex-direction:column;gap:10px}.session-card{background:var(--card-background);border:1px solid var(--card-border);border-radius:12px;transition:border-color .2s,box-shadow .2s;overflow:hidden}.session-card:hover{border-color:var(--accent-orange);box-shadow:0 2px 12px #0000001f}.session-card.expanded{border-color:var(--card-border);box-shadow:none}.session-card-header{display:flex;align-items:center;gap:2rem;padding:1.1rem 1.5rem;cursor:pointer;-webkit-user-select:none;user-select:none}.session-date-time{display:flex;flex-direction:column;min-width:120px;flex-shrink:0}.session-date{font-weight:700;color:var(--text-primary);font-size:.9rem}.session-time{font-size:.8rem;color:var(--text-secondary);margin-top:3px}.session-type-col{display:flex;flex-direction:column;min-width:100px;flex-shrink:0}.session-status-col{display:flex;flex-direction:column;min-width:120px;flex-shrink:0}.session-col-label{font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:5px}.session-col-value{font-size:.9rem;font-weight:600;color:var(--text-primary);text-transform:capitalize}.session-notes-preview-col{flex:1;min-width:0;font-size:.875rem;color:var(--text-secondary);font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:1rem}.session-view-link{display:flex;flex-direction:row;align-items:center;flex-shrink:0;gap:.4rem;margin-left:auto;color:var(--text-primary);text-decoration:none}.session-view-link-text{display:flex;flex-direction:column;align-items:flex-start;font-size:.8rem;font-weight:600;line-height:1.3}.session-view-chevron{color:var(--text-secondary);font-size:1rem;line-height:1}.status-badge{display:inline-block;padding:3px 10px;border-radius:6px;font-size:.65rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;width:fit-content}.status-completed{background:var(--success-bg);color:var(--success-color)}.status-scheduled{background:var(--warm-tint-bg);border:1px solid var(--warm-tint-border);color:var(--accent-orange)}.status-cancelled{background:var(--error-bg);color:var(--error-color)}.session-card-body{padding:0 1.25rem 1.25rem;border-top:1px solid var(--card-border);animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.session-card-body h4{margin:1rem 0 .5rem;font-size:.875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.session-notes p{line-height:1.6;white-space:pre-wrap;color:var(--text-primary);font-size:.875rem}.media-thumbnails{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:10px;margin-top:10px}.media-thumbnail{aspect-ratio:1;border-radius:4px;overflow:hidden;border:1px solid #e0e0e0}.media-thumbnail img{width:100%;height:100%;object-fit:cover;cursor:pointer;transition:transform .2s}.media-thumbnail img:hover{transform:scale(1.05)}.session-tasks ul{list-style:none;padding:0;margin:10px 0 0}.task-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;margin-bottom:6px;background:#f8f9fa;border-radius:4px;border-left:3px solid #ddd}.task-item.task-completed{border-left-color:#4caf50;background:#e8f5e9}.task-item.task-pending{border-left-color:#ff9800;background:#fff3e0}.task-title{font-weight:500;color:#333}.task-status{font-size:.8rem;color:#666;text-transform:capitalize}.session-assessment{padding:15px;background:#f0f7ff;border-left:4px solid #2196F3;border-radius:4px;margin-top:15px}.session-assessment p{color:#555;line-height:1.6;margin:10px 0 0}.session-trainer-contact{margin-top:15px}.session-trainer-contact a{color:#2196f3;text-decoration:none}.session-trainer-contact a:hover{text-decoration:underline}.session-duration{margin-top:10px;font-size:.9rem}.pagination-controls{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:30px;padding-top:20px;border-top:1px solid #e0e0e0}.pagination-button{padding:8px 20px;background:#4caf50;color:#fff;border:none;border-radius:4px;font-size:.9rem;cursor:pointer;transition:background .2s}.pagination-button:hover:not(:disabled){background:#45a049}.pagination-button:disabled{background:#ccc;cursor:not-allowed}.pagination-info{font-size:.9rem;color:#666;font-weight:500}.loading-state,.error-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.animal-session-history .spinner{margin-bottom:15px;border-top-color:#4caf50}.loading-state p,.error-state p,.empty-state p{color:#666;font-size:1rem;margin:0}.error-message{color:#f44336;font-weight:500}.retry-button,.clear-filters-link{margin-top:15px;padding:8px 20px;background:#4caf50;color:#fff;border:none;border-radius:4px;font-size:.9rem;cursor:pointer;transition:background .2s}.retry-button:hover,.clear-filters-link:hover{background:#45a049}.clear-filters-link{background:transparent;color:#2196f3;text-decoration:underline}.clear-filters-link:hover{background:transparent;color:#1976d2}@media(max-width:768px){.session-filters{flex-direction:column}.filter-group{width:100%}.session-card-header{flex-wrap:wrap;gap:10px}.session-date-time{min-width:auto}.media-thumbnails{grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}.pagination-controls{flex-direction:column;gap:10px}}.media-lightbox-modal{position:fixed;inset:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.media-lightbox-content{background:#fff;border-radius:8px;max-width:90vw;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;animation:scaleIn .2s ease-out}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.media-lightbox-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid #e0e0e0;background:#f8f9fa}.media-lightbox-title{margin:0;font-size:1.1rem;color:#333;font-weight:600}.media-lightbox-close{background:none;border:none;cursor:pointer;padding:5px;display:flex;align-items:center;justify-content:center;color:#666;transition:color .2s}.media-lightbox-close:hover{color:#333}.media-lightbox-body{flex:1;display:flex;align-items:center;justify-content:center;padding:20px;overflow:auto;background:#000}.media-lightbox-image{max-width:100%;max-height:70vh;object-fit:contain}.media-lightbox-video{max-width:100%;max-height:70vh}.media-lightbox-footer{padding:15px 20px;border-top:1px solid #e0e0e0;background:#f8f9fa;display:flex;justify-content:space-between;align-items:center}.media-lightbox-info{display:flex;gap:10px;font-size:.9rem;color:#666}.media-lightbox-actions{display:flex;gap:10px}.video-thumbnail{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#1a1a1a}.video-thumbnail img{width:100%;height:100%;object-fit:cover;opacity:.7}.video-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.video-placeholder svg{opacity:.8}.play-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:2rem;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.5);pointer-events:none;z-index:1}@media(max-width:768px){.media-lightbox-content{max-width:95vw;max-height:95vh}.media-lightbox-image,.media-lightbox-video{max-height:60vh}.media-lightbox-footer{flex-direction:column;gap:10px;align-items:flex-start}}.session-detail-page{max-width:min(100%,1200px);margin:0 auto;padding:20px}.session-detail-page .page-header{padding-bottom:20px}.session-detail-page .header-content h1{margin:0 0 10px;font-size:28px;font-weight:600;color:#1a1a1a}.session-detail-page .session-meta{display:flex;flex-wrap:wrap;gap:15px;margin-top:10px;align-items:center}.session-detail-page .meta-item{display:inline-flex;align-items:center;padding:6px 12px;background-color:#f5f5f5;border-radius:6px;font-size:14px;color:#666}.session-detail-page .status-badge{padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase}.session-detail-page .status-cancelled{background-color:#fee2e2;color:#991b1b}.session-detail-page .status-completed{background-color:#d1fae5;color:#065f46}.session-detail-page .session-actions{display:flex;gap:.75rem;margin-top:1rem}.session-detail-page .session-actions .btn{display:inline-flex;align-items:center;gap:.5rem}.session-detail-page .session-content{padding-bottom:0}.session-detail-page .loading-container,.session-detail-page .error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center}.session-detail-page .loading-spinner{margin-bottom:20px}.session-detail-page .error-container h2{color:#dc2626;margin-bottom:10px}.session-detail-page .error-container p{color:#666;margin-bottom:20px}@media(max-width:768px){.session-detail-page{padding:15px}.session-detail-page .header-content h1{font-size:24px}.session-detail-page .session-meta{flex-direction:column;gap:8px}.session-detail-page .session-content{padding:16px}}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:.5rem;padding:2rem;max-width:min(100%,500px);width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-content h3{font-size:1.25rem;font-weight:600;color:#111827;margin:0 0 .5rem}.modal-content p{color:#6b7280;margin:0 0 1.5rem}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-size:.875rem;font-weight:500;color:#374151;margin-bottom:.5rem}.form-input,.form-textarea{width:100%;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;transition:border-color .2s,box-shadow .2s}.form-input:focus,.form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #fe6b3426}.form-textarea{resize:vertical;font-family:inherit}@media(max-width:768px){.session-actions{flex-direction:column}.session-actions .btn{width:100%;justify-content:center}}.session-info-banner{display:flex;align-items:center;gap:0;background:var(--card-background);border:1px solid var(--card-border);border-radius:12px;padding:1.25rem 1.5rem;margin-bottom:1.25rem;flex-wrap:wrap;gap:1.25rem;justify-content:space-between}.sib-client{display:flex;align-items:center;gap:.875rem;flex-shrink:0}.sib-client-details{display:flex;flex-direction:column;gap:.25rem}.sib-client-name{font-size:1.0625rem;font-weight:700;color:var(--text-primary)}.sib-pet{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;color:var(--text-secondary)}.sib-divider{width:1px;height:48px;background:var(--card-border);flex-shrink:0;align-self:center}.sib-field{display:flex;flex-direction:column;gap:.3rem;flex-shrink:0}.sib-label{font-size:.6875rem;font-weight:600;letter-spacing:.06em;color:var(--text-tertiary)}.sib-value{display:flex;align-items:flex-start;gap:.25rem;font-size:.9375rem;font-weight:600;color:var(--text-primary);line-height:1.35}.sib-status-badge{display:inline-block;padding:.3rem .875rem;border-radius:20px;font-size:.75rem;font-weight:700;letter-spacing:.05em;white-space:nowrap}@media(max-width:640px){.session-info-banner{flex-direction:column;align-items:flex-start}.sib-divider{width:100%;height:1px}}.session-detail-page{display:flex;flex-direction:column;min-height:100%}.session-detail-page-body{flex:1}.session-editor-sticky-footer{position:sticky;bottom:0;z-index:100;display:flex;align-items:center;gap:.75rem;padding:1rem 15.5rem;background:var(--body-background);border-top:1px solid var(--card-border);margin:0 -20px}.session-editor-form{padding-bottom:1rem}.session-footer-btn{flex:1;height:30px;min-height:0;padding:0 .625rem!important;font-size:.8125rem;font-weight:600;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:.35rem;cursor:pointer;transition:background .15s,opacity .15s;white-space:nowrap;line-height:1;box-sizing:border-box}.session-footer-btn:disabled{opacity:.5;cursor:not-allowed}.session-footer-complete{background:transparent;border:1.5px solid var(--success-color, #22c55e);color:var(--success-color, #22c55e)}.session-footer-complete:hover:not(:disabled){background:#22c55e14}.session-footer-reschedule{background:transparent;border:1.5px solid var(--card-border);color:var(--text-primary)}.session-footer-reschedule:hover:not(:disabled){background:var(--surface-hover)}.session-footer-cancel{background:transparent;border:1.5px solid var(--error-color, #ef4444);color:var(--error-color, #ef4444)}.session-footer-cancel:hover:not(:disabled){background:#ef444414}.session-footer-update{flex:1.5;background:var(--accent-orange);border:none;color:#fff}.session-footer-update:hover:not(:disabled){background:var(--accent-orange-hover)}.invoice-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@media(max-width:1024px){.invoice-card-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.invoice-card-grid{grid-template-columns:1fr}}.invoice-card{background:var(--card-background, #fff);border:1px solid transparent;border-radius:12px;padding:20px;cursor:pointer;display:flex;flex-direction:column;gap:8px;transition:all .2s ease;box-shadow:0 1px 3px #0000001a;border-top:3px solid var(--accent-orange)}.invoice-card:hover{border-color:var(--accent-orange-hover);border-top-color:var(--accent-orange-hover);box-shadow:0 4px 12px #0000001f}.invoice-card--overdue{border-top-color:var(--error-color, #ef4444)}.invoice-card--overdue:hover{border-color:var(--error-color, #ef4444);border-top-color:var(--error-color, #ef4444)}.invoice-card--pending{border-top-color:var(--accent-orange)}.invoice-card--paid{border-top-color:var(--success-color, #22c55e);opacity:.85}.invoice-card--paid:hover{opacity:1}.invoice-card--processing{border-top-color:var(--info-color, #3b82f6)}.invoice-card-top{display:flex;justify-content:space-between;align-items:center}.invoice-card__amount{font-size:22px;font-weight:700;color:var(--text-primary, #1f2937)}.invoice-card__number{font-size:13px;font-weight:600;color:var(--text-secondary, #6b7280)}.invoice-card__client{font-size:14px;font-weight:500;color:var(--text-primary, #1f2937)}.invoice-card__description{font-size:13px;color:var(--text-secondary, #6b7280);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invoice-card__dates{display:flex;flex-direction:column;gap:2px;margin-top:auto}.invoice-card__date{font-size:12px;color:var(--text-tertiary, #9ca3af)}.invoice-card__date--due{color:var(--warning-color, #f59e0b);font-weight:600}.invoice-card__date--overdue{color:var(--error-color, #ef4444);font-weight:600}.invoice-card__date--paid{color:var(--success-color, #22c55e)}.invoice-card__actions{padding-top:10px;border-top:1px solid var(--border-primary, #e5e7eb);margin-top:4px}.invoice-card__actions .btn{width:100%}.invoice-card-list-empty{text-align:center;padding:32px 16px;color:var(--text-secondary, #6b7280)}.search-filter-container{padding:1.25rem;border-radius:8px;margin-bottom:1rem}.search-filter-row{display:flex;gap:1rem;align-items:flex-end;flex-wrap:wrap}.search-filter-search{flex:1;min-width:250px}.search-filter-search label{display:block;font-size:.875rem;font-weight:500;color:var(--text-primary, #374151);margin-bottom:.375rem}.search-filter-input{width:100%;padding:.625rem 1rem;border:1px solid var(--input-border, #d1d5db);border-radius:.375rem;font-size:.875rem;background:var(--input-bg, white);color:var(--text-primary, #333);transition:border-color .2s,box-shadow .2s}.search-filter-input::placeholder{color:var(--text-secondary, #6b7280)}.search-filter-input:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.search-filter-controls{display:flex;gap:1rem;flex-wrap:wrap;align-items:flex-end}.search-filter-group{display:flex;flex-direction:column;gap:.375rem;min-width:150px}.search-filter-group label{font-size:.875rem;font-weight:500;color:var(--text-primary, #374151)}.search-filter-select{padding:.625rem 1rem;border:1px solid var(--input-border, #d1d5db);border-radius:.375rem;background:var(--input-bg, white);font-size:.875rem;cursor:pointer;color:var(--text-primary, #333);transition:border-color .2s,box-shadow .2s;min-width:150px}.search-filter-select:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.search-filter-date{padding:.625rem .75rem;border:1px solid var(--input-border, #d1d5db);border-radius:.375rem;background:var(--input-bg, white);font-size:.875rem;color:var(--text-primary, #333);transition:border-color .2s,box-shadow .2s}.search-filter-date:focus{outline:none;border-color:var(--primary-color, #3b82f6);box-shadow:0 0 0 3px var(--focus-ring, rgba(254, 107, 52, .15))}.search-filter-actions{display:flex;gap:.5rem;align-items:flex-end}.search-filter-clear{padding:.625rem 1rem;background:transparent;border:1px solid var(--border-secondary, #d1d5db);border-radius:.375rem;font-size:.875rem;color:var(--text-secondary, #6b7280);cursor:pointer;transition:all .2s;white-space:nowrap}.search-filter-clear:hover{background:var(--hover-bg, #f3f4f6);border-color:var(--border-secondary, #9ca3af);color:var(--text-primary, #374151)}.search-filter-results{font-size:.875rem;color:var(--text-secondary, #6b7280);margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-primary, #e5e7eb)}.background-loading-indicator{color:var(--primary-color, #3b82f6);font-style:italic}.search-filter-toggles{display:flex;gap:.5rem;flex-wrap:wrap}.search-filter-toggle{padding:.5rem 1rem;background:var(--input-bg, white);border:1px solid var(--border-secondary, #d1d5db);border-radius:.375rem;font-size:.875rem;color:var(--text-secondary, #6b7280);cursor:pointer;transition:all .2s;white-space:nowrap}.search-filter-toggle:hover{background:var(--hover-bg, #f3f4f6);border-color:var(--border-secondary, #9ca3af)}.search-filter-toggle.active{background:var(--primary-color, #3b82f6);border-color:var(--primary-color, #3b82f6);color:#fff}.search-filter-toggle .count{margin-left:.25rem;opacity:.8}.search-filter-type-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.search-filter-type-btn{padding:.5rem .875rem;background:var(--input-bg, white);border:1px solid var(--border-secondary, #d1d5db);border-radius:.375rem;font-size:.8125rem;color:var(--text-secondary, #6b7280);cursor:pointer;transition:all .2s;white-space:nowrap}.search-filter-type-btn:hover{background:var(--hover-bg, #f3f4f6);border-color:var(--border-secondary, #9ca3af)}.search-filter-type-btn.active{background:var(--primary-light, #eff6ff);border-color:var(--primary-color, #3b82f6);color:var(--primary-color, #3b82f6)}.search-filter-divider{width:100%;height:1px;background:var(--border-primary, #e5e7eb);margin:1rem 0}.search-filter-container.compact{padding:1rem}.search-filter-container.compact .search-filter-row{gap:.75rem}.search-filter-container.compact .search-filter-group{min-width:120px}.search-filter-container.inline .search-filter-row{flex-wrap:nowrap}.search-filter-container.inline .search-filter-search{flex:0 1 300px;min-width:200px}@media(max-width:768px){.search-filter-container{padding:1rem}.search-filter-row{flex-direction:column;gap:.75rem}.search-filter-search{min-width:100%}.search-filter-controls{width:100%}.search-filter-group{width:100%;min-width:100%}.search-filter-select,.search-filter-date,.search-filter-toggles{width:100%}.search-filter-toggle{flex:1;text-align:center;min-width:calc(50% - .25rem)}.search-filter-type-buttons{width:100%}.search-filter-type-btn{flex:1;text-align:center}.search-filter-actions{width:100%;justify-content:flex-end}.search-filter-clear{width:100%}}@media(prefers-color-scheme:dark){.search-filter-input,.search-filter-select,.search-filter-date{background:var(--input-bg, #374151);border-color:var(--input-border, #4b5563);color:var(--text-primary, #f9fafb)}.search-filter-input::placeholder{color:var(--text-secondary, #9ca3af)}.search-filter-toggle{background:var(--input-bg, #374151);border-color:var(--border-secondary, #4b5563);color:var(--text-secondary, #9ca3af)}.search-filter-toggle:hover{background:var(--hover-bg, #4b5563)}.search-filter-type-btn{background:var(--input-bg, #374151);border-color:var(--border-secondary, #4b5563);color:var(--text-secondary, #9ca3af)}.search-filter-type-btn:hover{background:var(--hover-bg, #4b5563)}.search-filter-type-btn.active{background:var(--primary-dark, #1e40af);border-color:var(--primary-color, #3b82f6);color:#fff}}.search-filter-container.collapsible{padding:0}.search-filter-toggle-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.75rem 1rem;background:transparent;border:none;cursor:pointer;font-size:.875rem;font-weight:500;color:var(--text-primary, #374151);transition:background-color .15s ease}.search-filter-toggle-header:hover{background:var(--hover-bg, rgba(0, 0, 0, .03))}.filter-toggle-label{display:flex;align-items:center;gap:.5rem}.filter-toggle-label svg{color:var(--text-secondary, #6b7280)}.filter-active-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:var(--primary-color, #3b82f6);color:#fff;border-radius:10px;font-size:.75rem;font-weight:600}.filter-toggle-chevron{color:var(--text-secondary, #6b7280);transition:transform .2s ease}.filter-toggle-chevron.expanded{transform:rotate(180deg)}.search-filter-container.collapsible .search-filter-row{padding:.75rem 1rem 1rem;border-top:1px solid var(--border-primary, #e5e7eb)}[data-theme=dark] .search-filter-toggle-header{color:var(--text-primary, #f5f3f7)}[data-theme=dark] .search-filter-toggle-header:hover{background:var(--hover-bg, rgba(255, 255, 255, .05))}[data-theme=dark] .filter-toggle-label svg,[data-theme=dark] .filter-toggle-chevron{color:var(--text-secondary, #a89bb8)}.billing-page{padding:24px;max-width:min(100%,1400px);margin:0 auto}.billing-page .page-header{margin-bottom:24px}.billing-page .page-header h1{font-size:28px;font-weight:600;color:var(--text-primary);margin:0 0 8px}.billing-page .page-header p{color:var(--text-secondary);margin:0}.billing-tabs{display:flex;gap:8px;border-bottom:1px solid var(--border-primary, #e5e7eb);margin-bottom:24px;padding-bottom:0}.billing-tabs .tab-btn{padding:12px 20px;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;margin-bottom:-1px}.billing-tabs .tab-btn:hover{color:var(--text-primary)}.billing-tabs .tab-btn.active{color:var(--accent-orange);border-bottom-color:var(--accent-orange)}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.metric-card{background:var(--card-background, #fffdf9);border:1px solid var(--border-primary, #e5e7eb);border-radius:12px;padding:20px;display:flex;align-items:center;gap:16px}.metric-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:24px}.metric-icon.outstanding{background:var(--chip-orange-bg, rgba(254, 107, 52, .15))}.metric-icon.collected{background:var(--success-bg, rgba(34, 197, 94, .1))}.metric-icon.overdue{background:var(--error-bg, rgba(239, 68, 68, .1))}.metric-icon.rate{background:var(--info-bg, rgba(168, 85, 247, .1))}.metric-content{display:flex;flex-direction:column;gap:4px}.metric-label{font-size:13px;color:var(--text-secondary)}.metric-value{font-size:24px;font-weight:600;color:var(--text-primary)}.metric-value.danger{color:var(--error-color, #dc2626)}.overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}@media(max-width:900px){.overview-grid{grid-template-columns:1fr}}.overview-section{background:var(--card-background, #fffdf9);border:1px solid var(--border-primary, #e5e7eb);border-radius:12px;padding:20px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-header h3{font-size:16px;font-weight:600;color:var(--text-primary);margin:0}.section-header .btn-link{color:var(--accent-orange);font-size:14px}.invoice-list-compact{display:flex;flex-direction:column;gap:12px}.invoice-item-compact{display:flex;justify-content:space-between;align-items:center;padding:12px;background:var(--bg-secondary);border-radius:8px;cursor:pointer;transition:background .2s ease}.invoice-item-compact:hover{background:var(--surface-hover, #f3f4f6)}.invoice-info{display:flex;flex-direction:column;gap:4px}.invoice-number{font-weight:500;color:var(--text-primary);font-size:14px}.invoice-client{font-size:13px;color:var(--text-secondary)}.invoice-meta{display:flex;align-items:center;gap:12px}.invoice-amount{font-weight:600;color:var(--text-primary)}.activity-feed{display:flex;flex-direction:column;gap:12px}.activity-item{display:flex;align-items:flex-start;gap:12px;padding:12px;background:var(--bg-secondary);border-radius:8px}.activity-icon{font-size:20px;flex-shrink:0}.activity-content{flex:1;display:flex;flex-direction:column;gap:4px}.activity-description{font-size:14px;color:var(--text-primary)}.activity-time{font-size:13px;color:var(--text-secondary)}.activity-amount{font-weight:600;color:var(--text-primary);font-size:14px}.empty-state{text-align:center;padding:24px;color:var(--text-secondary);font-size:14px}.error-state{color:var(--error-color, #dc2626)}.access-denied{text-align:center;padding:48px}.access-denied h2{color:var(--text-primary);margin-bottom:8px}.access-denied p{color:var(--text-secondary)}.badge-success{background:var(--success-bg, #f0fdf4);color:var(--success-text, #166534)}.badge-warning{background:var(--chip-orange-bg);color:var(--accent-orange)}.badge-danger{background:var(--error-bg, #fee2e2);color:var(--error-text, #991b1b)}.badge-secondary{background:var(--surface-secondary, #f9fafb);color:var(--text-secondary, #6b7280)}.badge-info{background:var(--info-bg, rgba(254, 107, 52, .15));color:var(--info-text, #2563eb)}.invoices-tab,.packages-tab,.promo-codes-tab,.settings-tab{padding:24px;text-align:center;color:var(--text-secondary)}.client-billing-page{padding:24px;max-width:min(100%,1200px);margin:0 auto}.client-billing-page .page-header{margin-bottom:24px}.client-billing-page .page-header h1{font-size:28px;font-weight:600;color:var(--text-primary);margin:0 0 8px}.client-billing-page .page-header p{color:var(--text-secondary);margin:0}.client-billing-page .billing-tabs{display:flex;gap:8px;border-bottom:1px solid var(--border-primary);margin-bottom:24px}.client-billing-page .tab-btn{padding:12px 20px;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;margin-bottom:-1px;display:flex;align-items:center;gap:8px}.client-billing-page .tab-btn:hover{color:var(--text-primary)}.client-billing-page .tab-btn.active{color:var(--accent-orange);border-bottom-color:var(--accent-orange)}.tab-badge{background:var(--error-color);color:var(--text-inverse);font-size:13px;font-weight:600;padding:2px 6px;border-radius:10px;min-width:18px;text-align:center}.outstanding-summary{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,var(--error-bg) 0%,rgba(239,68,68,.05) 100%);border:1px solid var(--error-border);border-radius:12px;padding:28px;margin-bottom:24px;box-shadow:0 1px 3px #0000004d}.summary-content{display:flex;flex-direction:column;gap:6px}.summary-label{font-size:13px;color:var(--error-text);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.summary-amount{font-size:28px;font-weight:700;color:var(--error-color)}.badge.badge-pill{border-radius:20px;padding:3px 10px;font-size:12px;font-weight:600;border:1px solid currentColor;background:transparent}.badge.badge-pill.badge-warning{background:transparent;color:var(--accent-orange);border-color:var(--accent-orange)}.badge.badge-pill.badge-success{background:transparent;color:var(--success-color);border-color:var(--success-color)}.badge.badge-pill.badge-danger{background:transparent;color:var(--error-color);border-color:var(--error-color)}.badge.badge-pill.badge-secondary{background:transparent;color:var(--text-secondary);border-color:var(--text-secondary)}.package-list{display:flex;flex-direction:column;gap:10px}.package-card{background:var(--card-background);border:1px solid transparent;border-radius:10px;padding:12px;transition:all .2s ease;box-shadow:0 1px 3px #0000004d;display:flex;flex-direction:column;gap:6px}.package-card:hover{border-color:var(--accent-orange-hover)}.package-card.expired{opacity:.6;background:var(--bg-tertiary)}.package-header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.package-name{font-weight:600;font-size:14px;color:var(--text-primary);flex:1}.package-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.package-stat{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:6px;padding:6px 8px;min-width:0}.package-stat-label{display:block;font-size:13px;text-transform:uppercase;letter-spacing:.4px;color:var(--text-secondary);font-weight:600;margin-bottom:2px}.package-stat-value{display:block;font-size:13px;color:var(--text-primary);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.history-list{display:flex;flex-direction:column;gap:12px}.history-item{display:flex;justify-content:space-between;align-items:center;background:var(--card-background);border:1px solid transparent;border-radius:12px;padding:18px 20px;transition:all .2s ease;box-shadow:0 1px 3px #0000004d}.history-item:hover{border-color:var(--accent-orange-hover);box-shadow:var(--shadow-md)}.history-info{display:flex;flex-direction:column;gap:6px;flex:1}.history-invoice{font-weight:600;color:var(--text-primary);font-size:15px}.history-date,.history-meta{font-size:13px;color:var(--text-secondary)}.history-amount{display:flex;align-items:center;gap:16px;margin-left:16px}.history-amount .amount{font-weight:700;color:var(--text-primary);font-size:16px}.empty-state{text-align:center;padding:60px 24px;color:var(--text-secondary);background:var(--card-background);border:none}.empty-state p{margin:0 0 8px;font-size:16px}.empty-hint{font-size:14px;opacity:.8;margin-top:8px}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:12px;font-size:13px;font-weight:500;text-transform:capitalize}.badge-success{background:var(--success-bg);color:var(--success-text)}.badge-warning{background:var(--chip-orange-bg);color:var(--accent-orange);border-color:var(--accent-orange)}.badge-danger{background:var(--error-bg);color:var(--error-text)}.badge-secondary{background:var(--surface-secondary, #f9fafb);color:var(--text-secondary)}@media(max-width:600px){.client-billing-page{padding:16px}.outstanding-summary{flex-direction:column;gap:16px;text-align:center}.package-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.available-packages-section{margin-bottom:32px}.available-packages-section h3,.my-packages-section h3{font-size:20px;font-weight:700;color:var(--text-primary);margin:0 0 8px;letter-spacing:-.3px}.section-description{color:var(--text-secondary);font-size:14px;margin:0 0 20px;line-height:1.5}.available-package-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.available-package-card{background:var(--card-background);border:1px solid transparent;border-radius:12px;padding:14px;display:flex;flex-direction:column;transition:all .2s ease;box-shadow:0 1px 3px #0000004d}.available-package-card:hover{border-color:var(--accent-orange-hover)}.available-package-card .package-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;gap:8px}.available-package-card .package-name{font-weight:600;font-size:15px;color:var(--text-primary);flex:1;line-height:1.2}.available-package-card .package-price{font-size:18px;font-weight:700;color:var(--accent-orange);white-space:nowrap}.available-package-card .package-description{color:var(--text-secondary);font-size:13px;margin:0 0 10px;line-height:1.4}.available-package-card .package-details{display:grid;grid-template-columns:1fr 1fr;gap:6px 10px;margin-bottom:10px;flex:1;padding:8px 0;border-top:1px solid var(--border-primary)}.available-package-card .detail-item{display:flex;justify-content:space-between;align-items:center;font-size:13px;gap:8px}.available-package-card .detail-label{color:var(--text-secondary);font-weight:500}.available-package-card .detail-value{color:var(--text-primary);font-weight:600}.available-package-card .detail-value.savings{color:var(--success-color);font-weight:700}.available-package-card .purchase-btn{width:100%;padding:9px 12px;font-size:13px;font-weight:600;margin-top:auto}.available-package-card .purchase-btn:disabled{opacity:.6;cursor:not-allowed}.board-train-animal-picker{margin:2px 0 10px}.board-train-animal-picker .detail-label{display:block;margin-bottom:6px;font-size:13px}.my-packages-section{margin-top:32px;padding-top:32px;border-top:1px solid var(--border-primary)}.my-packages-section h3{margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid var(--accent-orange);display:inline-block}.client-packages{display:flex;flex-direction:column;gap:24px}@media(max-width:600px){.available-package-list{grid-template-columns:1fr}.available-package-card{padding:16px}.available-package-card .package-header{flex-direction:column;gap:8px;align-items:flex-start}.available-package-card .package-price{font-size:20px}.package-card{padding:16px}.package-header{flex-direction:column;align-items:flex-start}.package-name{font-size:16px}.progress-bar{height:10px}.package-expiry{width:100%}.available-package-card .detail-item{justify-content:space-between}}.btn-spinner{display:inline-block;width:12px;height:12px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:btn-spin .6s linear infinite;vertical-align:middle;margin-right:.375rem}@keyframes btn-spin{to{transform:rotate(360deg)}}.payment-result-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--bg-secondary)}.result-card{background:var(--card-bg);border-radius:16px;padding:48px;text-align:center;max-width:min(100%,480px);width:100%;box-shadow:0 4px 24px #0000001a}.result-icon{width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 24px}.result-icon svg{width:48px;height:48px}.result-icon.success{background:#22c55e1a}.result-icon.success svg{stroke:#16a34a}.result-icon.cancelled{background:#ef44441a}.result-icon.cancelled svg{stroke:#dc2626}.result-card h1{font-size:28px;font-weight:600;color:var(--text-primary);margin:0 0 16px}.result-message{font-size:16px;color:var(--text-secondary);margin:0 0 24px;line-height:1.5}.session-id{font-size:14px;color:var(--text-secondary);background:var(--bg-secondary);padding:8px 16px;border-radius:8px;display:inline-block;margin-bottom:24px;font-family:monospace}.result-actions{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.result-actions .btn{padding:14px 24px;font-size:16px;border-radius:8px;cursor:pointer;transition:all .2s ease}.result-actions .btn-primary{background:var(--primary-color);color:#fff;border:none}.result-actions .btn-primary:hover{background:var(--primary-hover)}.result-actions .btn-secondary{background:transparent;color:var(--text-primary);border:1px solid var(--border-color)}.result-actions .btn-secondary:hover{background:var(--bg-secondary)}.redirect-notice,.help-text{font-size:14px;color:var(--text-secondary);margin:0}.help-text a{color:var(--primary-color);text-decoration:none}.help-text a:hover{text-decoration:underline}@media(max-width:480px){.result-card{padding:32px 24px}.result-card h1{font-size:24px}}.board-train-page{display:flex;flex-direction:column;gap:1rem}.board-train-header h1{margin:0}.board-train-header p{margin:.25rem 0 0;color:var(--text-secondary, #5b6570)}.board-train-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.8rem}.board-train-error{background:#fdecec;color:#8b1f1f;border:1px solid #f2c7c7;border-radius:10px;padding:.75rem 1rem}.board-train-create{background:transparent;border:0;padding:0;overflow:initial!important}.create-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:1.25rem}.create-field{display:flex;flex-direction:column;gap:.35rem}.create-field-label{display:flex;flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:0 .15rem;font-size:.85rem;font-weight:600;color:var(--text-primary)}.create-field-label textarea,.create-field-label input.create-input{flex-basis:100%;margin-top:.35rem}.create-required{color:#e05252;margin-left:1px}.create-input{border:1px solid var(--border-color, #d7dfe8);border-radius:8px;padding:.6rem .75rem;font-size:.92rem;background:var(--input-background, #fff);color:var(--text-primary);width:100%;box-sizing:border-box}.create-section{margin-bottom:.25rem}.create-section-title{font-size:1rem;font-weight:700;color:var(--text-primary);margin:0 0 .85rem;padding:.85rem 0 .6rem;border-top:1px solid var(--border-color, #e1e6eb)}.create-intake-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-bottom:.5rem}.create-intake-grid label{display:flex;flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:0 .15rem;font-size:.85rem;font-weight:600;color:var(--text-primary)}.create-intake-grid label textarea{flex-basis:100%;margin-top:.35rem}.create-intake-grid textarea{border:1px solid var(--border-color, #d7dfe8);border-radius:8px;padding:.6rem .75rem;font-size:.9rem;resize:vertical;min-height:80px;background:var(--input-background, #fff);color:var(--text-primary);font-family:inherit}.day-log-form input,.day-log-form textarea{border:1px solid var(--card-border, #d7dfe8);border-radius:8px;padding:.7rem .85rem;font-size:.92rem;width:100%;box-sizing:border-box;background:var(--input-bg, #fff);color:var(--text-primary)}.day-log-form textarea{min-height:130px;resize:vertical;font-family:inherit}.board-train-create-modal .modal-content,.board-train-edit-modal .modal-content,.board-train-request-modal .modal-content,.board-train-change-details-modal .modal-content{max-height:92vh;overflow-y:auto}.board-train-create-actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:.8rem;padding-bottom:1rem}.create-discard-draft{margin-right:auto;color:var(--text-secondary, #5b6570);font-size:.82rem;background:none;border:none;cursor:pointer;padding:.3rem .5rem}.create-discard-draft:hover{text-decoration:underline}.create-draft-banner{display:flex;align-items:center;background:#fef9ec;border:1px solid #f5d87a;border-radius:8px;padding:.5rem .75rem;font-size:.83rem;color:#7a5c00;margin-bottom:1rem}.create-package-error{display:flex;align-items:center;background:#fef2f2;border:1px solid #fca5a5;border-radius:8px;padding:.5rem .75rem;font-size:.83rem;color:#991b1b;margin-bottom:1rem}.btn-draft-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#f59e0b;margin-left:6px;vertical-align:middle;flex-shrink:0}.board-train-layout{display:grid;grid-template-columns:minmax(320px,360px) minmax(0,1fr);gap:1rem}.program-list,.program-detail{background:transparent;border:none;border-radius:12px;padding:1.25rem}.program-detail-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-secondary, #6b7280);gap:12px}.program-detail-loading p{margin:0;font-size:14px}.program-item{width:100%;text-align:left;border:1px solid #d9e1ea;border-radius:10px;background:#fbfdff;padding:.8rem .85rem;margin-bottom:.6rem;cursor:pointer;display:flex;flex-direction:column;gap:.55rem}.program-item.active{border:1px solid var(--accent-orange);border-left:5px solid var(--accent-orange);background:var(--card-background)}.program-item-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.program-identity-with-avatar{display:flex;align-items:flex-start;justify-content:flex-start;gap:.55rem;min-width:0;text-align:left}.program-animal-avatar{width:32px;height:32px;font-size:.72rem;align-self:flex-start}.program-identifiers{display:flex;flex-direction:column;align-items:flex-start;min-width:0;text-align:left}.program-client-name{font-size:.95rem;line-height:1.2;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.program-animal-name{margin-top:.1rem;font-size:.82rem;color:#5b6570;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-chip{font-size:.75rem;text-transform:uppercase;color:#415160;white-space:nowrap;line-height:1.1;margin-top:.1rem}.status-chip.pending{color:#92400e}.status-chip.approved{color:#166534}.status-chip.rejected{color:#991b1b}.status-chip-draft{color:#6b4f00;background:#fef3c7;border-radius:999px;padding:.1rem .45rem;font-size:.72rem;font-weight:600;text-transform:uppercase}.program-item-draft{border-style:dashed;opacity:.9}.program-draft-avatar{background:#e5e7eb;color:#6b7280;display:flex;align-items:center;justify-content:center;border-radius:50%;width:32px;height:32px;font-size:.85rem;flex-shrink:0}.program-draft-date{font-style:italic}.program-counters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem}.program-counters span{font-size:.74rem;border-radius:8px;padding:1rem;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--body-background)!important;border:none;color:var(--text-primary)}.program-counters span small{display:block;font-size:.65rem;font-weight:500;opacity:.65;text-transform:uppercase;letter-spacing:.03em;line-height:1.2}.program-summary-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem;margin-bottom:.5rem}.summary-card{border:1px solid #dfe6ee;border-radius:10px;padding:.75rem .7rem;display:flex;flex-direction:column;align-items:center;text-align:center;gap:.3rem}.summary-card span{font-size:.78rem;color:#5b6570}.summary-card strong{font-size:1.35rem;font-weight:700}.program-reference-row{display:flex;flex-wrap:wrap;gap:.8rem;margin:.15rem 0 .8rem;font-size:.78rem;color:#5b6570}.program-intake{border:none;background-color:var(--card-background);border-radius:12px;margin-top:1rem;padding:1rem 1.1rem}.program-intake-header{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-bottom:.6rem;border-bottom:1px solid var(--text-quaternary);padding-bottom:1rem}.program-intake-header h3{margin:0}.program-intake-actions{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.program-intake-collapsed-message{margin:0;font-size:.82rem}.program-intake-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.program-intake-card{border:1px solid #dfe6ee;border-radius:10px;padding:.6rem .7rem;background:#f8fbff}.program-intake-card strong{display:block;font-size:.82rem;color:#1f2937;margin-bottom:.3rem}.program-intake-card p{margin:0;font-size:.82rem;color:#4b5a69;white-space:pre-wrap}.program-intake-card ul{margin:0;padding-left:1rem}.program-intake-card li{font-size:.82rem;color:#4b5a69}.program-intake-card .intake-text,.program-intake-card .intake-list{line-height:1.35;transition:max-height .18s ease}.program-intake-card .intake-text.collapsed,.program-intake-card .intake-list.collapsed{max-height:calc(1.35em * 3);overflow:hidden}.program-intake-card .intake-text.expanded,.program-intake-card .intake-list.expanded{max-height:none}.program-intake-card .intake-expand-btn{margin-top:.35rem;border:none;background:transparent;color:#0b5fff;font-size:.78rem;font-weight:600;padding:0;cursor:pointer}.program-intake-card .intake-expand-btn:hover{text-decoration:underline}.change-request-panel{border:none;border-radius:12px;margin-top:1rem;padding:1rem 1.1rem}.change-request-panel-toggle{width:100%;border:1px solid #dfe6ee;border-radius:10px;background:#f8fbff;display:flex;align-items:center;justify-content:space-between;padding:.55rem .7rem;cursor:pointer;font-weight:600;font-size:.9rem;color:#1f2937;margin-bottom:.55rem}.change-request-panel-toggle-icon{font-size:1.1rem;line-height:1;color:#4b5a69}.board-train-pending-approval-section{background:var(--warm-tint-bg);border:1px solid var(--warm-tint-border);border-radius:10px;padding:1rem}.board-train-pending-approval-header{margin-bottom:.75rem}.board-train-pending-approval-header h3{color:#92400e;margin:0 0 .25rem;font-size:1rem}.board-train-pending-approval-header p{color:#78350f;margin:0;font-size:.88rem}.board-train-pending-approval-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:.65rem}.board-train-pending-approval-card{background:#fff;border:1px solid var(--warm-tint-border);border-radius:8px;padding:.6rem .7rem}.board-train-pending-approval-card-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.change-request-panel h4{margin:0 0 .55rem}.change-request-item{border:1px solid #dfe6ee;border-radius:10px;padding:.55rem .7rem;background:#f8fbff;margin-bottom:.5rem}.change-request-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.change-request-note{margin:.5rem 0;white-space:pre-wrap}.change-request-context{margin:.45rem 0 .1rem;display:flex;flex-wrap:wrap;gap:.5rem .8rem;font-size:.8rem;color:#4b5a69}.change-request-context span{white-space:nowrap}.change-request-summary{margin:.45rem 0 .1rem;font-size:.82rem;color:#4b5a69}.change-request-diff-list{display:flex;flex-direction:column;gap:.4rem}.change-request-diff-item{border:1px solid #e5ebf2;border-radius:8px;background:#fff;padding:.45rem .55rem}.change-request-diff-item strong{display:block;margin-bottom:.25rem;font-size:.8rem}.change-request-diff-item p{margin:0;font-size:.78rem;color:#4b5a69}.change-request-diff-item p span{font-weight:600}.change-request-modal-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin-bottom:.7rem}.change-request-modal-meta p{margin:0;font-size:.82rem}.change-request-modal-note{border:1px solid #dfe6ee;border-radius:8px;padding:.55rem .6rem;margin-bottom:.7rem;background:#f8fbff}.change-request-modal-note strong{display:block;margin-bottom:.25rem;font-size:.8rem}.change-request-modal-note p{margin:0;font-size:.82rem;color:#4b5a69;white-space:pre-wrap}.change-request-modal-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.8rem}.change-request-actions{display:flex;gap:.45rem;margin-top:.45rem}.request-change-note{display:flex;flex-direction:column;gap:.28rem;font-size:.82rem;color:#4b5a69;margin-top:.2rem}.request-change-note textarea{border:1px solid #d7dfe8;border-radius:8px;padding:.55rem .7rem;font-size:.9rem;resize:vertical}.day-log-form,.day-log-list,.ai-summary-panel{border:none;background-color:var(--card-background);border-radius:12px;padding:1.25rem;margin-top:1rem}.day-log-form{display:flex;flex-direction:column;gap:.75rem}.day-log-form h3{margin:0 0 .25rem}.day-log-list h3{margin:0 0 .75rem;padding-bottom:.75rem;border-bottom:1px solid var(--card-border, #e1e6eb)}.ai-summary-panel h3{margin:0}.day-log-editing-banner{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:.83rem;color:#1f5f93;background:#eef6ff;border:1px solid #cfe3f8;border-radius:8px;padding:.45rem .55rem}[data-theme=dark] .day-log-editing-banner{color:#bfdbfe;background:#253750;border-color:#36506f}.day-log-media-section{display:flex;flex-direction:column;gap:.55rem;margin-top:.25rem}.day-log-field-label{display:inline-flex;align-items:center;gap:.4rem;font-size:.84rem;font-weight:600;color:#4b5a69;margin-top:.25rem}.day-log-tooltip-icon{display:inline-flex;align-items:center;justify-content:center;width:1rem;height:1rem;margin-left:6px;border-radius:999px;border:1px solid var(--text-secondary);color:var(--text-secondary);font-size:.68rem;font-weight:700;cursor:help}[data-theme=dark] .day-log-field-label{color:var(--text-tertiary)}.day-log-item{border:1px solid var(--border-primary, #e3e9ef);border-radius:10px;padding:.65rem .75rem;margin-bottom:.5rem}.day-log-item--clickable{cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease}.day-log-item--clickable:hover{border-color:var(--accent-orange-hover);box-shadow:0 2px 8px #00000014}.day-log-read-more{font-size:13px;font-weight:600;color:var(--accent-orange);cursor:pointer}.day-log-detail-content{display:flex;flex-direction:column;gap:12px}.day-log-detail-meta{font-size:13px;color:var(--text-tertiary, #9ca3af)}.day-log-detail-notes p{white-space:pre-wrap;color:var(--text-primary, #1f2937);line-height:1.6}.day-log-form-fields{display:flex;flex-direction:column;gap:16px}.day-log-head{display:flex;justify-content:space-between;align-items:center;gap:.5rem;font-size:.8rem;color:#5b6570}.day-log-head-left{display:inline-flex;align-items:center;gap:.5rem}.tag-row{display:flex;flex-wrap:wrap;gap:.4rem}.tag{background:#eaf3ff;border:1px solid #cadeff;color:#18426b;border-radius:999px;font-size:.72rem;padding:.18rem .5rem}.tag.warning{background:#fff1df;border-color:#ffd7a3;color:#7d4f00}.day-log-links{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.55rem}.ai-summary-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:.75rem;margin-bottom:.75rem;border-bottom:1px solid var(--card-border, #e1e6eb)}.ai-summary-header h3{margin:0}.ai-actions{display:flex;gap:.5rem}.summary-content ul{margin:.35rem 0 .75rem;padding-left:1.1rem}.muted{color:#617080}.create-timezone-note{margin:0 0 .75rem;font-size:.85rem;color:#5b6570}@media(max-width:1024px){.board-train-layout{grid-template-columns:1fr}.create-grid,.create-intake-grid,.program-summary-cards,.program-intake-grid{grid-template-columns:1fr 1fr}}@media(max-width:640px){.create-grid,.create-intake-grid,.program-summary-cards,.program-intake-grid{grid-template-columns:1fr}}.program-counters span small{display:block;font-size:.68rem;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;margin-bottom:.2rem}.program-counters span{font-size:1rem;font-weight:700}.animal-note-form-page{padding:20px;max-width:min(100%,800px);margin:0 auto}.animal-note-form-page .breadcrumb{margin-bottom:20px}.animal-note-form-page .breadcrumb-link{background:none;border:none;color:var(--text-secondary, #6b7280);font-size:16px;font-weight:500;cursor:pointer;padding:8px 0;display:inline-flex;align-items:center;gap:8px;transition:color .2s ease;text-decoration:none}.animal-note-form-page .breadcrumb-link:before{content:"‹";font-size:24px;font-weight:400;line-height:1}.animal-note-form-page .breadcrumb-link:hover{color:var(--accent-orange)}.animal-note-form-page .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.animal-note-form-page .page-header h1{margin:0;color:var(--text-primary, #1f2937)}.note-form{display:flex;flex-direction:column;gap:20px}.note-form .form-group{display:flex;flex-direction:column;gap:6px}.note-form label{font-weight:500;color:var(--text-primary, #1f2937);font-size:14px}.note-form input[type=text],.note-form textarea,.note-form select{padding:10px 12px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;font-size:14px;color:var(--text-primary, #1f2937);background:var(--input-bg, #fff);transition:border-color .2s ease}.note-form input[type=text]:focus,.note-form textarea:focus,.note-form select:focus{outline:none;border-color:var(--border-focus, var(--accent-orange))}.note-form textarea{resize:vertical;min-height:120px}.note-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.tag-input-row{display:flex;gap:8px}.tag-input-row input{flex:1}.tags-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.tag-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:var(--chip-orange-bg, #fff7ed);color:var(--accent-orange, #f97316);border-radius:12px;font-size:13px;font-weight:500}.tag-chip button{background:none;border:none;color:inherit;cursor:pointer;font-size:16px;line-height:1;padding:0 2px}.checkbox-group label{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:400}.checkbox-group input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent-orange)}.form-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid var(--border-primary, #e5e7eb)}@media(max-width:600px){.note-form .form-row{grid-template-columns:1fr}}.swp-root{display:flex;flex-direction:column;height:100vh;background:var(--body-background, #0d1b22);color:var(--text-primary);overflow:hidden}.swp-topbar{display:flex;align-items:center;justify-content:space-between;padding:0 1.5rem;height:56px;border-bottom:1px solid var(--border-color);flex-shrink:0}.swp-topbar-brand{display:flex;align-items:center;gap:.5rem}.swp-brand-icon{font-size:1.4rem;background:var(--accent-orange);border-radius:8px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:1rem}.swp-brand-name{font-weight:700;font-size:1.1rem}.swp-topbar-right{display:flex;align-items:center;gap:1rem}.swp-step-counter{font-size:.85rem;color:var(--text-secondary)}.swp-exit-btn{background:var(--surface-hover);border:none;color:var(--text-secondary);width:32px;height:32px;border-radius:50%;cursor:pointer;font-size:.9rem;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.swp-exit-btn:hover{background:var(--border-color);color:var(--text-primary)}.swp-body{display:flex;flex:1;overflow:hidden}.swp-sidebar{width:220px;flex-shrink:0;border-right:1px solid var(--border-color);overflow-y:auto;padding:1.5rem 0 1rem}.swp-sidebar-label{font-size:.65rem;font-weight:700;letter-spacing:.08em;color:var(--text-secondary);padding:0 1.25rem;margin:0 0 .75rem}.swp-step-list{list-style:none;margin:0;padding:0}.swp-step-list li{position:relative}.swp-step-list li:not(:last-child):after{content:"";position:absolute;left:calc(1.25rem + 16px);top:calc(.6rem + 26px);bottom:-1rem;width:2px;background:var(--border-color)}.swp-step-btn{width:100%;display:flex;align-items:center;gap:.75rem;padding:.6rem 1.25rem;background:none;border:none;cursor:pointer;text-align:left;transition:background .15s;border-left:3px solid transparent;position:relative;z-index:1;justify-content:flex-start}.swp-step-btn:hover{background:var(--surface-hover)}.swp-step-btn.active{background:var(--surface-hover);border-left-color:var(--accent-orange)}.swp-step-num{width:26px;height:26px;border-radius:50%;border:2px solid var(--border-color);display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;color:var(--text-secondary);flex-shrink:0;transition:all .2s;background:var(--card-background)}.swp-step-btn.active .swp-step-num{border-color:var(--accent-orange);background:var(--accent-orange);color:#fff}.swp-step-btn.done .swp-step-num{border-color:var(--accent-orange);background:var(--card-background);color:var(--accent-orange)}.swp-step-info{display:flex;flex-direction:column;gap:.1rem;min-width:0}.swp-step-title{font-size:.85rem;font-weight:500;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.swp-step-btn.active .swp-step-title{color:var(--text-primary);font-weight:600}.swp-step-btn.done .swp-step-title{color:var(--text-secondary)}.swp-step-sub{font-size:.72rem;color:var(--text-tertiary, var(--text-secondary));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.swp-step-btn.active .swp-step-sub{color:var(--accent-orange)}.swp-content{flex:1;display:flex;flex-direction:column;overflow-y:auto}.swp-content-inner{flex:1;padding:2.5rem 0rem;max-width:780px;width:100%;margin:0 auto}.swp-footer{display:flex;align-items:center;justify-content:space-between;padding:1rem 3rem;padding-bottom:calc(1rem + 44px);border-top:1px solid var(--border-color);flex-shrink:0}.swp-footer-left,.swp-footer-right{display:flex;align-items:center;gap:.75rem}.swp-cta-btn{padding:.6rem 1.75rem;font-weight:600;border-radius:8px}.swp-welcome{text-align:center;padding:1rem 0}.swp-welcome-icon{font-size:3rem;display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;background:var(--surface-hover);border-radius:16px;margin-bottom:1.5rem}.swp-welcome h1{font-size:2rem;font-weight:700;margin:0 0 .75rem}.swp-welcome>p{font-size:.95rem;color:var(--text-secondary);max-width:480px;margin:0 auto 2rem;line-height:1.6}.swp-checklist-box{background:var(--card-background);border:1px solid var(--border-color);border-radius:12px;padding:1.25rem 1.5rem;max-width:520px;margin:0 auto;text-align:left}.swp-checklist-title{font-size:.9rem;font-weight:600;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem;color:var(--text-primary)}.swp-checklist-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.swp-checklist-item{display:flex;align-items:center;gap:.6rem;padding:.5rem .75rem;background:var(--surface-hover);border-radius:8px;font-size:.82rem;color:var(--text-secondary);border:1px solid var(--border-color)}.swp-checklist-item.done{color:var(--text-primary);font-weight:600;border-color:var(--accent-orange);background:var(--chip-orange-bg, rgba(244, 162, 97, .08))}.swp-checklist-dot{width:18px;height:18px;border-radius:50%;border:2px solid var(--border-color);flex-shrink:0}.swp-checklist-item.done .swp-checklist-dot{border:none;border-radius:5px;background:var(--accent-orange);display:flex;align-items:center;justify-content:center;position:relative}.swp-checklist-item.done .swp-checklist-dot:after{content:"";display:block;width:10px;height:10px;background:#fff;clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0%,43% 62%)}.swp-loading{display:flex;align-items:center;justify-content:center;height:100vh}@media(max-width:768px){.swp-sidebar{display:none}.swp-content-inner{padding:1.5rem 1.25rem}.swp-footer{padding:1rem 1.25rem}.swp-checklist-grid{grid-template-columns:1fr}}.swp-content input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:22px;height:22px;min-width:22px;border-radius:6px;border:2px solid var(--border-color);background:var(--surface-hover);cursor:pointer;position:relative;transition:background .2s,border-color .2s;flex-shrink:0}.swp-content input[type=checkbox]:checked{background:var(--accent-orange);border-color:var(--accent-orange)}.swp-content input[type=checkbox]:checked:after{content:"";position:absolute;inset:0;margin:auto;width:12px;height:12px;background:#fff;clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0%,43% 62%)}.swp-content input[type=checkbox]:focus{outline:none;box-shadow:0 0 0 3px #f4a26140}.wizard-file-upload-area{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px;border:2px dashed var(--border-color);border-radius:8px;background:var(--surface-hover);cursor:pointer;transition:border-color .2s,background .2s;color:var(--accent-orange);font-size:.875rem;font-weight:500;text-align:center;width:100%;box-sizing:border-box}.wizard-file-upload-area:hover{border-color:var(--accent-orange);background:var(--hover-bg)}.wizard-file-selected{display:flex;align-items:center;gap:6px;color:var(--text-primary);font-size:.85rem;font-weight:500}.wizard-add-animal .wizard-animal-layout{display:grid;grid-template-columns:180px 1fr;gap:1.5rem;align-items:start}.wizard-animal-photo-col{display:flex;flex-direction:column;align-items:center;gap:.5rem}.wizard-animal-photo-upload{width:140px;height:140px;border-radius:50%;border:2px dashed var(--border-color);background:var(--surface-hover);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer;color:var(--text-secondary);font-size:.75rem;text-align:center;transition:border-color .2s,background .2s}.wizard-animal-photo-upload:hover{border-color:var(--accent-orange);color:var(--accent-orange);background:var(--hover-bg)}.wizard-animal-photo-hint{font-size:.65rem;font-weight:600;letter-spacing:.05em;color:var(--text-tertiary);text-transform:uppercase;text-align:center;margin:0}.wizard-animal-fields{display:flex;flex-direction:column;gap:.75rem}.wizard-animal-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.wizard-input-with-unit{display:flex;border:1px solid var(--border-color);border-radius:6px;overflow:hidden;background:var(--input-bg, var(--surface-hover))}.wizard-input-with-unit input{flex:1;border:none!important;background:transparent;padding:.5rem .75rem;font-size:.875rem;color:var(--text-primary);outline:none}.wizard-unit-select{border:none!important;border-left:1px solid var(--border-color)!important;background:var(--surface-hover)!important;color:var(--text-secondary)!important;padding:0 .5rem!important;font-size:.8rem!important;cursor:pointer;border-radius:0!important;width:auto!important}.wizard-input-with-unit .wizard-unit-select{padding-right:1.5rem!important}.wizard-input-with-unit:focus-within{border-color:var(--accent-orange);box-shadow:0 0 0 2px #f4a26126}.swp-page-header{margin-bottom:1.5rem}.swp-page-header h1{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin:0 0 .35rem;line-height:1.2}.swp-page-header p{font-size:.9rem;color:var(--text-secondary);margin:0;line-height:1.5}.wizard-coming-soon-btn{position:relative;opacity:.55;cursor:not-allowed!important}.wizard-coming-soon-badge{position:absolute;top:-8px;right:-4px;background:var(--accent-orange);color:#fff;font-size:.6rem;font-weight:700;letter-spacing:.03em;padding:2px 5px;border-radius:4px;text-transform:uppercase;pointer-events:none;white-space:nowrap}.wizard-client-invite{display:flex;flex-direction:column;gap:.75rem;background:var(--card-background);padding:1.5rem;border-radius:16px}.wizard-client-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.wizard-divider{border:none;border-top:1px solid var(--border-color);margin:.25rem 0}.wizard-channel-cards{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-top:.5rem}.wizard-channel-card{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;border:1px solid var(--border-color);border-radius:10px;cursor:pointer;background:var(--surface-hover);transition:border-color .15s}.wizard-channel-card.selected{border-color:var(--accent-orange);background:var(--chip-orange-bg, rgba(244, 162, 97, .06))}.wizard-channel-card-disabled{opacity:.5;cursor:not-allowed}.wizard-channel-radio{width:16px;height:16px;min-width:16px;border-radius:50%;border:2px solid var(--border-color);margin-top:2px;flex-shrink:0;position:relative}.wizard-channel-card.selected .wizard-channel-radio{border-color:var(--accent-orange)}.wizard-channel-card.selected .wizard-channel-radio:after{content:"";position:absolute;inset:2px;border-radius:50%;background:var(--accent-orange)}.wizard-channel-icon{font-size:1.1rem;flex-shrink:0;margin-top:1px}.wizard-channel-text{display:flex;flex-direction:column;gap:3px;font-size:.85rem}.wizard-channel-text strong{color:var(--text-primary);font-weight:600;display:flex;align-items:center;flex-wrap:wrap;gap:4px}.wizard-channel-text span{color:var(--text-secondary);font-size:.78rem;line-height:1.4}.wizard-client-note{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem 1rem;background:var(--surface-hover);border-radius:8px;border:1px solid var(--border-color);font-size:.8rem;color:var(--text-secondary);line-height:1.4}.wizard-client-note svg{flex-shrink:0;margin-top:1px;color:var(--text-tertiary)}.swp-content .wizard-quick-form .btn-primary,.swp-content .wizard-step-content .btn-primary{margin-left:auto}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media(prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin infinite 20s linear}}.App-header{background-color:var(--bg-secondary);padding:20px;color:var(--text-primary)}.App-link{color:var(--primary-color)}@keyframes App-logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.container{max-width:1200px;margin:0 auto;padding:20px}.card{border-radius:8px;box-shadow:var(--shadow-card);padding:20px;margin:20px 0;border:1px solid rgba(255,255,255,.04);background:var(--card-background)}.button{background-color:var(--primary-color);color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-size:16px}.button:hover{background-color:var(--primary-hover)}.button:disabled{background-color:var(--secondary-color);cursor:not-allowed}.form-group{margin-bottom:20px}.form-label{display:block;margin-bottom:5px;font-weight:700;color:var(--text-primary)}.form-input{width:100%;padding:10px;border:1px solid var(--input-border)!important;border-radius:4px;font-size:16px;background-color:var(--input-bg);color:var(--text-primary)}.error-message{color:var(--error-color);margin-top:5px}.success-message{color:var(--success-color);margin-top:5px}.contact-bubbles{width:300px;padding:20px;border-right:1px solid var(--border-primary);background-color:var(--bg-secondary)}.contact-bubbles h3{margin:0 0 20px;font-size:18px;font-weight:600;color:var(--text-primary)}.bubbles-container{display:flex;flex-direction:column;gap:12px}.contact-bubble{display:flex;flex-direction:column;align-items:center;padding:16px;border:2px solid var(--border-primary);border-radius:12px;background-color:var(--bg-primary);cursor:pointer;transition:all .2s ease;text-align:center}.contact-bubble:hover,.contact-bubble.selected{border-color:var(--primary-color);background-color:var(--primary-light)}.bubble-name{font-weight:600;color:var(--text-primary);margin-bottom:4px}.bubble-role{font-size:12px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}
