:root,[data-theme=light]{--bg-primary: #ffffff;--bg-secondary: #f8fafc;--bg-tertiary: #f1f5f9;--bg-elevated: #ffffff;--bg-overlay: rgba(0, 0, 0, .5);--surface-primary: #ffffff;--surface-secondary: #f9fafb;--surface-hover: #f3f4f6;--text-primary: #111827;--text-secondary: #6b7280;--text-tertiary: #9ca3af;--text-inverse: #ffffff;--text-muted: #9ca3af;--border-primary: #e5e7eb;--border-secondary: #d1d5db;--border-focus: #3b82f6;--primary-color: #3b82f6;--primary-hover: #2563eb;--primary-light: #dbeafe;--primary-dark: #1d4ed8;--secondary-color: #6b7280;--secondary-hover: #4b5563;--secondary-light: #f3f4f6;--success-color: #10b981;--success-bg: #d1fae5;--success-text: #065f46;--success-border: #a7f3d0;--warning-color: #f59e0b;--warning-bg: #fef3c7;--warning-text: #92400e;--warning-border: #fcd34d;--error-color: #ef4444;--error-bg: #fee2e2;--error-text: #991b1b;--error-border: #fecaca;--info-color: #3b82f6;--info-bg: #dbeafe;--info-text: #1e40af;--info-border: #93c5fd;--hover-bg: #f3f4f6;--active-bg: #e5e7eb;--focus-ring: rgba(59, 130, 246, .5);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--card-bg: #ffffff;--card-border: #e5e7eb;--card-shadow: 0 1px 3px rgba(0, 0, 0, .1);--input-bg: #ffffff;--input-border: #d1d5db;--input-focus-border: #3b82f6;--input-placeholder: #9ca3af;--input-disabled-bg: #f9fafb;--table-header-bg: #f9fafb;--table-row-hover: #f9fafb;--table-border: #e5e7eb;--sidebar-bg: #1f2937;--sidebar-text: #d1d5db;--sidebar-text-active: #ffffff;--sidebar-hover: rgba(255, 255, 255, .1);--sidebar-active: rgba(59, 130, 246, .2);--header-bg: #ffffff;--header-border: #e5e7eb;--modal-bg: #ffffff;--modal-overlay: rgba(0, 0, 0, .5);--spinner-track: #e5e7eb;--spinner-fill: #3b82f6;--scrollbar-track: #f1f5f9;--scrollbar-thumb: #cbd5e1;--scrollbar-thumb-hover: #94a3b8}[data-theme=dark]{--bg-primary: #111827;--bg-secondary: #1f2937;--bg-tertiary: #374151;--bg-elevated: #1f2937;--bg-overlay: rgba(0, 0, 0, .7);--surface-primary: #1f2937;--surface-secondary: #374151;--surface-hover: #374151;--text-primary: #f9fafb;--text-secondary: #d1d5db;--text-tertiary: #9ca3af;--text-inverse: #111827;--text-muted: #6b7280;--border-primary: #374151;--border-secondary: #4b5563;--border-focus: #60a5fa;--primary-color: #60a5fa;--primary-hover: #3b82f6;--primary-light: #1e3a5f;--primary-dark: #93c5fd;--secondary-color: #9ca3af;--secondary-hover: #d1d5db;--secondary-light: #374151;--success-color: #34d399;--success-bg: #064e3b;--success-text: #a7f3d0;--success-border: #065f46;--warning-color: #fbbf24;--warning-bg: #78350f;--warning-text: #fde68a;--warning-border: #92400e;--error-color: #f87171;--error-bg: #7f1d1d;--error-text: #fecaca;--error-border: #991b1b;--info-color: #60a5fa;--info-bg: #1e3a5f;--info-text: #bfdbfe;--info-border: #1e40af;--hover-bg: #374151;--active-bg: #4b5563;--focus-ring: rgba(96, 165, 250, .5);--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);--card-bg: #1f2937;--card-border: #374151;--card-shadow: 0 1px 3px rgba(0, 0, 0, .3);--input-bg: #374151;--input-border: #4b5563;--input-focus-border: #60a5fa;--input-placeholder: #6b7280;--input-disabled-bg: #1f2937;--table-header-bg: #374151;--table-row-hover: #374151;--table-border: #4b5563;--sidebar-bg: #0f172a;--sidebar-text: #94a3b8;--sidebar-text-active: #f8fafc;--sidebar-hover: rgba(255, 255, 255, .05);--sidebar-active: rgba(96, 165, 250, .2);--header-bg: #1f2937;--header-border: #374151;--modal-bg: #1f2937;--modal-overlay: rgba(0, 0, 0, .7);--spinner-track: #374151;--spinner-fill: #60a5fa;--scrollbar-track: #1f2937;--scrollbar-thumb: #4b5563;--scrollbar-thumb-hover: #6b7280}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)}.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-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}.empty-state{text-align:center;padding:3rem;color:var(--text-secondary, #6b7280)}.empty-state-icon{color:var(--text-tertiary, #d1d5db);margin-bottom:1rem}.empty-state-title{font-size:1.125rem;font-weight:600;color:var(--text-primary, #374151);margin:0 0 .5rem}.empty-state-description{font-size:.875rem;color:var(--text-tertiary, #9ca3af);margin:0}.empty-state-hint{font-size:.875rem;margin-top:.5rem}@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:.5rem 1rem;border:none;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-decoration:none;white-space:nowrap}.btn:focus{outline:2px solid var(--primary-color, #3b82f6);outline-offset:2px}.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, #3b82f6);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--primary-hover, #2563eb)}.btn-secondary{background-color:var(--secondary-color, #6b7280);color:#fff}.btn-secondary:hover:not(:disabled){background-color:var(--secondary-hover, #4b5563)}.btn-success{background-color:var(--success-color, #10b981);color:#fff}.btn-success:hover:not(:disabled){background-color:#059669}.btn-warning{background-color:var(--warning-color, #f59e0b);color:#fff}.btn-warning:hover:not(:disabled){background-color:#d97706}.btn-danger{background-color:var(--error-color, #ef4444);color:#fff}.btn-danger:hover:not(:disabled){background-color:#dc2626}.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-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-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, #3b82f6);text-decoration:underline;padding:0}.btn-link:hover:not(:disabled){color:var(--primary-hover, #2563eb)}.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-color:var(--info-bg, #dbeafe);color:var(--info-text, #1e40af)}.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))}.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{background:none;border:none;font-size:1.5rem;color:var(--text-secondary, #6b7280);cursor:pointer;padding:.25rem;line-height:1;border-radius:.25rem;transition:color .2s,background-color .2s}.modal-close:hover{color:var(--text-primary, #374151);background-color:var(--hover-bg, #f3f4f6)}.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(--card-shadow, 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}.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:none;border-color:var(--input-focus-border, #3b82f6);box-shadow:0 0 0 3px var(--focus-ring, rgba(59, 130, 246, .1))}.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{box-shadow:0 0 0 3px #ef44441a}.form-textarea{min-height:100px;resize:vertical}.form-help{margin-top:.25rem;font-size:.75rem;color:var(--text-secondary, #6b7280)}.form-error{margin-top:.25rem;font-size:.75rem;color:var(--error-color, #ef4444)}.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}}[data-theme=dark] .page-header{border-color:#374151}[data-theme=dark] .card,[data-theme=dark] .dashboard-card,[data-theme=dark] .stat-card,[data-theme=dark] .summary-card,[data-theme=dark] .report-card,[data-theme=dark] .form-card,[data-theme=dark] .animal-card,[data-theme=dark] .task-card,[data-theme=dark] .session-card,[data-theme=dark] .session-card-compact,[data-theme=dark] .resource-card{background:#1f2937;border-color:#374151;box-shadow:0 1px 3px #0000004d}[data-theme=dark] .card-header,[data-theme=dark] .form-card-header{border-color:#374151}[data-theme=dark] .card-header h3,[data-theme=dark] .card-header h4,[data-theme=dark] .card-title{color:#f9fafb}[data-theme=dark] .card-body{color:#d1d5db}[data-theme=dark] .card-footer,[data-theme=dark] .form-card-actions{border-color:#374151;background:#374151}[data-theme=dark] .form-group label,[data-theme=dark] .form-label,[data-theme=dark] .filter-group label,[data-theme=dark] .channel-label{color:#d1d5db}[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:#374151;border-color:#4b5563;color:#f9fafb}[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:#6b7280}[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:#60a5fa;box-shadow:0 0 0 3px #60a5fa33}[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:#1f2937;color:#6b7280}[data-theme=dark] .form-error,[data-theme=dark] .required{color:#f87171}[data-theme=dark] .modal-overlay{background:#000000b3}[data-theme=dark] .modal-content{background:#1f2937;border:1px solid #374151}[data-theme=dark] .modal-header h2,[data-theme=dark] .modal-header h3{color:#f9fafb}[data-theme=dark] .modal-close{color:#9ca3af}[data-theme=dark] .modal-close:hover{color:#f9fafb;background-color:#374151}[data-theme=dark] .modal-body p{color:#9ca3af}[data-theme=dark] .modal-footer,[data-theme=dark] .modal-actions{border-color:#374151}[data-theme=dark] .table-container{background:#1f2937;border-color:#374151}[data-theme=dark] .table thead,[data-theme=dark] thead,[data-theme=dark] .trainers-table thead,[data-theme=dark] .business-metrics-report thead{background-color:#374151}[data-theme=dark] .table th,[data-theme=dark] th,[data-theme=dark] .trainers-table th,[data-theme=dark] .business-metrics-report th{color:#d1d5db;border-color:#4b5563}[data-theme=dark] .table td,[data-theme=dark] td{color:#d1d5db;border-color:#374151}[data-theme=dark] .table tbody tr:hover,[data-theme=dark] tbody tr:hover{background-color:#374151}[data-theme=dark] .btn-secondary{background-color:#4b5563;color:#f9fafb}[data-theme=dark] .btn-secondary:hover:not(:disabled){background-color:#6b7280}[data-theme=dark] .btn-outline{background-color:transparent;border-color:#4b5563;color:#d1d5db}[data-theme=dark] .btn-outline:hover:not(:disabled){background-color:#374151;border-color:#6b7280}[data-theme=dark] .btn-ghost{color:#d1d5db}[data-theme=dark] .btn-ghost:hover:not(:disabled){background-color:#374151}[data-theme=dark] .cancel-button,[data-theme=dark] .details-button{background:#374151;border-color:#4b5563;color:#9ca3af}[data-theme=dark] .cancel-button:hover,[data-theme=dark] .details-button:hover{background:#4b5563}[data-theme=dark] .filter-button{background:#374151;border-color:#4b5563;color:#d1d5db}[data-theme=dark] .filter-button:hover{background:#4b5563;border-color:#60a5fa;color:#60a5fa}[data-theme=dark] .filter-button.active{background:#3b82f6;border-color:#3b82f6;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:#1e3a5f;border-color:#1e40af;color:#bfdbfe}[data-theme=dark] .empty-state{color:#9ca3af}[data-theme=dark] .empty-state h3,[data-theme=dark] .empty-state-title{color:#f9fafb}[data-theme=dark] .empty-state p,[data-theme=dark] .empty-state-description{color:#9ca3af}[data-theme=dark] .empty-icon,[data-theme=dark] .empty-state-icon{color:#4b5563}[data-theme=dark] .loading,[data-theme=dark] .loading-state,[data-theme=dark] .loading-spinner{color:#9ca3af}[data-theme=dark] .loading-overlay{background-color:#111827cc}[data-theme=dark] .loading-overlay-content{background-color:#1f2937}[data-theme=dark] .spinner-message,[data-theme=dark] .loading-message{color:#9ca3af}[data-theme=dark] .pagination-button{background-color:#1f2937;border-color:#374151;color:#d1d5db}[data-theme=dark] .pagination-button:hover:not(:disabled){background-color:#374151;border-color:#4b5563}[data-theme=dark] .tag,[data-theme=dark] .behavior-tag{background-color:#374151;color:#d1d5db}[data-theme=dark] .behavior-tag-small{background:#1e3a5f;color:#93c5fd}[data-theme=dark] .type-badge.type-photo-video{background:#1e3a5f;color:#93c5fd}[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] .history-item,[data-theme=dark] .activity-item,[data-theme=dark] .session-item,[data-theme=dark] .schedule-item{background:#374151;border-color:#4b5563}[data-theme=dark] .history-contact,[data-theme=dark] .activity-client,[data-theme=dark] .session-client,[data-theme=dark] .schedule-client{color:#f9fafb}[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:#9ca3af}[data-theme=dark] .filters-section,[data-theme=dark] .consent-form-controls,[data-theme=dark] .scheduler-sidebar{background:#374151;border-color:#4b5563}[data-theme=dark] .dashboard-section,[data-theme=dark] .page-content{background:#1f2937;border-color:#374151}[data-theme=dark] .results-count{color:#9ca3af}[data-theme=dark] .invitation-form,[data-theme=dark] .invitation-history-section{background:#1f2937;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .channel-option{background:#374151;border-color:#4b5563;color:#d1d5db}[data-theme=dark] .channel-option:hover{border-color:#60a5fa;background:#4b5563}[data-theme=dark] .channel-option.active{border-color:#60a5fa;background:#1e3a5f;color:#60a5fa}[data-theme=dark] .history-toggle{background:#1f2937;color:#f9fafb}[data-theme=dark] .history-toggle:hover{background:#374151}[data-theme=dark] .toggle-icon{color:#9ca3af}[data-theme=dark] .invitation-history{border-color:#374151}[data-theme=dark] .consent-form-container{background:#1f2937;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .form-type{background:#1e3a5f;color:#93c5fd}[data-theme=dark] .form-text{background:#374151;color:#d1d5db}[data-theme=dark] .consent-checkbox{background:#78350f;border-color:#92400e}[data-theme=dark] .consent-checkbox label{color:#fde68a}[data-theme=dark] .signature-section{border-color:#374151}[data-theme=dark] .signature-section h4{color:#f9fafb}[data-theme=dark] .signature-instruction{color:#9ca3af}[data-theme=dark] .signature-canvas-container,[data-theme=dark] .signature-display{background:#f9fafb}[data-theme=dark] .privacy-notice{color:#9ca3af}[data-theme=dark] .consent-group{background:#1f2937}[data-theme=dark] .consent-group-header{background:#374151;border-color:#4b5563}[data-theme=dark] .group-title h4{color:#f9fafb}[data-theme=dark] .version-count{background:#4b5563;color:#d1d5db}[data-theme=dark] .date-cell .date{color:#f9fafb}[data-theme=dark] .date-cell .time{color:#9ca3af}[data-theme=dark] .ip-address{background:#374151;color:#d1d5db}[data-theme=dark] .no-signature{color:#6b7280}[data-theme=dark] .detail-row{background:#374151}[data-theme=dark] .detail-label{color:#d1d5db}[data-theme=dark] .detail-value,[data-theme=dark] .header-content h1{color:#f9fafb}[data-theme=dark] .header-subtitle{color:#9ca3af}[data-theme=dark] .back-button{background:#1f2937;border-color:#374151;color:#9ca3af}[data-theme=dark] .back-button:hover{background:#374151;border-color:#60a5fa;color:#60a5fa}[data-theme=dark] .settings-modal .modal-footer{background:#374151}[data-theme=dark] .ai-consent-info h3{color:#f9fafb}[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:#d1d5db}[data-theme=dark] .ai-consent-privacy{background:#374151;border-color:#4b5563}[data-theme=dark] .ai-consent-privacy h4{color:#f9fafb}[data-theme=dark] .ai-consent-privacy ul{color:#d1d5db}[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:#f9fafb}[data-theme=dark] .task-due-date{color:#9ca3af}[data-theme=dark] .task-description{color:#d1d5db}[data-theme=dark] .task-resources h4{color:#f9fafb}[data-theme=dark] .task-details{border-color:#374151}[data-theme=dark] .task-instructions h4{color:#f9fafb}[data-theme=dark] .task-instructions p{color:#d1d5db}[data-theme=dark] .task-metadata{color:#9ca3af}[data-theme=dark] .task-creator{background:#1f2937;border-color:#374151}[data-theme=dark] .task-creator-header h3{color:#f9fafb}[data-theme=dark] .close-button{color:#9ca3af}[data-theme=dark] .close-button:hover{color:#f87171}[data-theme=dark] .selected-resource{background:#374151}[data-theme=dark] .resource-title{color:#f9fafb}[data-theme=dark] .add-resources-button{background:#374151;border-color:#4b5563;color:#9ca3af}[data-theme=dark] .add-resources-button:hover{background:#4b5563}[data-theme=dark] .task-progress h4{color:#f9fafb}[data-theme=dark] .progress-bar{background:#374151}[data-theme=dark] .progress-percentage{color:#9ca3af}[data-theme=dark] .progress-notes-section label{color:#f9fafb}[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:#9ca3af}[data-theme=dark] .status-tracker .step-circle{background:#374151;color:#9ca3af}[data-theme=dark] .status-tracker .status-step span{color:#9ca3af}[data-theme=dark] .status-tracker .step-connector{background:#374151}[data-theme=dark] .meta-item{background-color:#374151;color:#d1d5db}[data-theme=dark] .animal-meta{border-color:#374151}[data-theme=dark] .animal-meta small,[data-theme=dark] .info-row .label{color:#9ca3af}[data-theme=dark] .info-row .value{color:#f9fafb}[data-theme=dark] .more-tags{color:#9ca3af}[data-theme=dark] .monthly-calendar{background-color:#1f2937;border-color:#374151}[data-theme=dark] .monthly-calendar .calendar-header{background-color:#374151;border-color:#4b5563}[data-theme=dark] .monthly-calendar .calendar-title{color:#f9fafb}[data-theme=dark] .monthly-calendar .calendar-nav-btn{color:#9ca3af}[data-theme=dark] .monthly-calendar .calendar-nav-btn:hover{background-color:#4b5563;color:#f9fafb}[data-theme=dark] .monthly-calendar .calendar-day-header{background-color:#374151;border-color:#4b5563;color:#9ca3af}[data-theme=dark] .monthly-calendar .calendar-day{background-color:#1f2937;border-color:#374151}[data-theme=dark] .monthly-calendar .calendar-day.today{background-color:#1e3a5f}[data-theme=dark] .monthly-calendar .calendar-day.non-working{background-color:#374151}[data-theme=dark] .monthly-calendar .calendar-day.other-month{background-color:#111827}[data-theme=dark] .monthly-calendar .calendar-day-number{color:#f9fafb}[data-theme=dark] .monthly-calendar .calendar-day.other-month .calendar-day-number{color:#6b7280}[data-theme=dark] .tenant-calendar-view{background:#1f2937;border-color:#374151}[data-theme=dark] .tenant-calendar-view .view-toggle{background:#374151}[data-theme=dark] .tenant-calendar-view .view-toggle button{color:#d1d5db}[data-theme=dark] .tenant-calendar-view .view-toggle button:hover{background:#4b5563}[data-theme=dark] .tenant-calendar-view .view-toggle button.active{background:#1f2937;color:#60a5fa}[data-theme=dark] .tenant-calendar-view .current-month{color:#f9fafb}[data-theme=dark] .tenant-calendar-view .nav-button{background:#1f2937;border-color:#374151;color:#d1d5db}[data-theme=dark] .tenant-calendar-view .nav-button:hover{background:#374151;border-color:#4b5563}[data-theme=dark] .tenant-calendar-view .calendar-grid{border-color:#374151}[data-theme=dark] .tenant-calendar-view .calendar-weekdays{background:#374151;border-color:#4b5563}[data-theme=dark] .tenant-calendar-view .weekday{color:#9ca3af}[data-theme=dark] .tenant-calendar-view .calendar-day{background:#1f2937;border-color:#374151}[data-theme=dark] .tenant-calendar-view .calendar-day.other-month{background:#111827}[data-theme=dark] .tenant-calendar-view .calendar-day.today{background:#1e3a5f}[data-theme=dark] .tenant-calendar-view .day-number{color:#f9fafb}[data-theme=dark] .calendar-loading,[data-theme=dark] .calendar-error{color:#9ca3af}[data-theme=dark] .calendar-filters{background:#1f2937;border-color:#374151}[data-theme=dark] .filters-header h3{color:#f9fafb}[data-theme=dark] .clear-filters-button{background:#1f2937;border-color:#374151}[data-theme=dark] .clear-filters-button:hover{background:#7f1d1d}[data-theme=dark] .filter-dropdown,[data-theme=dark] .dropdown-search{background:#1f2937;border-color:#374151}[data-theme=dark] .dropdown-search input{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .dropdown-option:hover{background:#374151}[data-theme=dark] .dropdown-option span{color:#f9fafb}[data-theme=dark] .dropdown-loading,[data-theme=dark] .dropdown-empty{color:#9ca3af}[data-theme=dark] .active-filters{border-color:#374151}[data-theme=dark] .filter-badge{background:#1e3a5f;border-color:#1e40af;color:#93c5fd}[data-theme=dark] .remove-badge{color:#93c5fd}[data-theme=dark] .remove-badge:hover{background:#1e40af}[data-theme=dark] .sessions-pending-card{background:#1f2937;border-color:#374151}[data-theme=dark] .block-time-form{background:#1f2937;border:1px solid #374151}[data-theme=dark] .block-times-header h2{color:#f9fafb}[data-theme=dark] .block-times-header p{color:#9ca3af}[data-theme=dark] .block-time-card{background:#1f2937;border-color:#374151}[data-theme=dark] .block-time-info h3{color:#f9fafb}[data-theme=dark] .block-time-info p,[data-theme=dark] .block-times-list .no-data,[data-theme=dark] .block-times-list .loading{color:#9ca3af}[data-theme=dark] .calendar-page .page-header h1{color:#f9fafb}[data-theme=dark] .calendar-page .page-description{color:#9ca3af}[data-theme=dark] .calendar-controls{background:transparent}[data-theme=dark] .view-toggle{background:#374151}[data-theme=dark] .view-toggle button{color:#d1d5db}[data-theme=dark] .view-toggle button:hover{background:#4b5563}[data-theme=dark] .view-toggle button.active{background:#1f2937;color:#60a5fa}[data-theme=dark] .month-navigation .current-month{color:#f9fafb}[data-theme=dark] .nav-button{background:#1f2937;border-color:#374151;color:#d1d5db}[data-theme=dark] .nav-button:hover{background:#374151;border-color:#4b5563}[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:#f9fafb}[data-theme=dark] .profile-settings-page .settings-header p,[data-theme=dark] .settings-header p{color:#9ca3af}[data-theme=dark] .settings-tabs{background:#1f2937;box-shadow:0 1px 3px #0000004d;border:1px solid #374151}[data-theme=dark] .tabs-list{background:#374151;border-color:#4b5563}[data-theme=dark] .tab{color:#9ca3af;background:transparent}[data-theme=dark] .tab:hover{color:#f9fafb;background:#4b5563}[data-theme=dark] .tab.active{color:#60a5fa;background:#1f2937;border-bottom-color:#60a5fa}[data-theme=dark] .settings-tabs .tab-content,[data-theme=dark] .tab-content{background:#1f2937}[data-theme=dark] .settings-tabs .card,[data-theme=dark] .profile-settings-page .card{background:#1f2937;border-color:#374151;box-shadow:0 1px 3px #0000004d}[data-theme=dark] .settings-tabs .card-header,[data-theme=dark] .profile-settings-page .card-header{border-color:#374151;background:#1f2937}[data-theme=dark] .settings-tabs .card-header h3,[data-theme=dark] .profile-settings-page .card-header h3{color:#f9fafb}[data-theme=dark] .settings-tabs .card-content,[data-theme=dark] .profile-settings-page .card-content{background:#1f2937}[data-theme=dark] .settings-tabs .card-content p,[data-theme=dark] .profile-settings-page .card-content p{color:#9ca3af}[data-theme=dark] .settings-tabs .card-content h4,[data-theme=dark] .profile-settings-page .card-content h4{color:#f9fafb}[data-theme=dark] .photo-upload-section{background:#374151;border-color:#4b5563}[data-theme=dark] .photo-upload-controls .form-help{color:#9ca3af}[data-theme=dark] .localization-settings{background:transparent}[data-theme=dark] .localization-settings .card{background:#1f2937;border-color:#374151;box-shadow:0 1px 3px #0000004d}[data-theme=dark] .localization-settings .card-header{background:#1f2937;border-color:#374151}[data-theme=dark] .localization-settings .card-header h3{color:#f9fafb}[data-theme=dark] .localization-settings .card-header p{color:#9ca3af}[data-theme=dark] .localization-settings .card-content{background:#1f2937}[data-theme=dark] .localization-settings .form-label{color:#d1d5db}[data-theme=dark] .localization-settings .form-control{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .localization-settings .form-control:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa33}[data-theme=dark] .localization-settings .form-help-text{color:#9ca3af}[data-theme=dark] .localization-settings .settings-preview,[data-theme=dark] .settings-preview{background:#374151;border-color:#4b5563}[data-theme=dark] .localization-settings .settings-preview h4,[data-theme=dark] .settings-preview h4{color:#f9fafb}[data-theme=dark] .localization-settings .preview-label,[data-theme=dark] .preview-label{color:#9ca3af}[data-theme=dark] .localization-settings .preview-value,[data-theme=dark] .preview-value{background:#1f2937;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .localization-settings .form-actions,[data-theme=dark] .form-actions{border-color:#374151}[data-theme=dark] .localization-settings .btn-secondary{background:#374151;border-color:#4b5563;color:#d1d5db}[data-theme=dark] .localization-settings .btn-secondary:hover:not(:disabled){background:#4b5563;border-color:#6b7280}[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:#1f2937;border-color:#4b5563;color:#d1d5db}[data-theme=dark] .category-header-static{background:#374151;border-color:#4b5563}[data-theme=dark] .category-header-static h3{color:#f9fafb}[data-theme=dark] .category-header-static .category-description{color:#9ca3af}[data-theme=dark] .event-config:hover{border-color:#60a5fa;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .event-header{border-color:#374151}[data-theme=dark] .channel-toggle{background:#1f2937;border-color:#374151;color:#d1d5db}[data-theme=dark] .channel-toggle:hover{border-color:#60a5fa;background:#1e3a5f}[data-theme=dark] .channel-info p{color:#9ca3af}[data-theme=dark] .role-toggle{background:#1f2937;border-color:#374151;color:#d1d5db}[data-theme=dark] .role-toggle:hover{border-color:#60a5fa;background:#1e3a5f}[data-theme=dark] .setting-group label,[data-theme=dark] .setting-label{color:#d1d5db}[data-theme=dark] .setting-help{color:#9ca3af}[data-theme=dark] .recipient-checkbox{background:#1f2937;border-color:#374151}[data-theme=dark] .notification-settings-page .sub-tabs{border-color:#374151}[data-theme=dark] .notification-settings-page .sub-tab{color:#9ca3af}[data-theme=dark] .notification-settings-page .sub-tab:hover{color:#f9fafb;background:#374151}[data-theme=dark] .notification-settings-page .sub-tab.active{color:#60a5fa;border-bottom-color:#60a5fa}[data-theme=dark] .toggle-slider:before{background:linear-gradient(135deg,#f9fafb,#e5e7eb)}[data-theme=dark] .toggle-switch input[type=checkbox]:checked+.toggle-slider{background:linear-gradient(135deg,#3b82f6,#2563eb);border-color:#2563eb}[data-theme=dark] .channel-option{background:#1f2937;border-color:#374151}[data-theme=dark] .quiet-hours-preview{background:#374151;border-left-color:#60a5fa}[data-theme=dark] .form-group{background:#1f2937;border-color:#374151}[data-theme=dark] .label-text{color:#f9fafb}[data-theme=dark] .label-description{color:#9ca3af}[data-theme=dark] .preferences-preview{background:#374151;border-color:#4b5563}[data-theme=dark] .preview-section h4{color:#f9fafb}[data-theme=dark] .preview-badge{background:#3b82f6;color:#fff}[data-theme=dark] .preview-warning{background:#78350f;border-color:#92400e;color:#fde68a}[data-theme=dark] .notification-type-toggle{background:#1f2937;border-color:#374151}[data-theme=dark] .notification-type-toggle:hover{border-color:#60a5fa;background:#1e3a5f}[data-theme=dark] .type-info strong{color:#f9fafb}[data-theme=dark] .type-info p{color:#9ca3af}[data-theme=dark] .notification-toggle{border-color:#374151}[data-theme=dark] .notification-toggle:hover{border-color:#60a5fa;background:#374151}[data-theme=dark] .toggle-info strong{color:#f9fafb}[data-theme=dark] .toggle-info p{color:#9ca3af}[data-theme=dark] .protection-feature{background:#374151;border-left-color:#10b981}[data-theme=dark] .feature-info strong{color:#f9fafb}[data-theme=dark] .feature-info p{color:#9ca3af}[data-theme=dark] .followup-settings{background:#1f2937}[data-theme=dark] .followup-settings .card{background:#1f2937;border-color:#374151}[data-theme=dark] .followup-settings .card-header{background:#374151;border-color:#4b5563}[data-theme=dark] .followup-settings .card-header h3{color:#f9fafb}[data-theme=dark] .followup-settings .card-content{background:#1f2937}[data-theme=dark] .snackbar-preferences{background:transparent}[data-theme=dark] .snackbar-preferences .preferences-header h2{color:#f9fafb}[data-theme=dark] .snackbar-preferences .preferences-description{color:#9ca3af}[data-theme=dark] .snackbar-preferences .preference-section{background:#1f2937;border-color:#374151}[data-theme=dark] .snackbar-preferences .preference-label h3{color:#f9fafb}[data-theme=dark] .snackbar-preferences .preference-label p{color:#9ca3af}[data-theme=dark] .snackbar-preferences .section-title{color:#f9fafb}[data-theme=dark] .snackbar-preferences .section-description{color:#9ca3af}[data-theme=dark] .snackbar-preferences .notification-type-item{background:#374151}[data-theme=dark] .snackbar-preferences .type-label{color:#f9fafb}[data-theme=dark] .snackbar-preferences .severity-info{background-color:#1e3a5f;color:#93c5fd}[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:#4b5563}[data-theme=dark] .snackbar-preferences .toggle-switch input:checked+.toggle-slider{background-color:#3b82f6}[data-theme=dark] .snackbar-preferences .quiet-hours-config{border-color:#374151}[data-theme=dark] .snackbar-preferences .time-picker label{color:#f9fafb}[data-theme=dark] .snackbar-preferences .time-picker select{background-color:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .snackbar-preferences .time-picker select:focus{border-color:#60a5fa;box-shadow:0 0 0 2px #60a5fa33}[data-theme=dark] .snackbar-preferences .quiet-hours-note{color:#9ca3af}[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{background:#1f2937;box-shadow:0 2px 4px #0000004d}[data-theme=dark] .subscription-manager.loading{color:#9ca3af}[data-theme=dark] .subscription-info{background:linear-gradient(135deg,#374151,#1f2937);border-color:#4b5563}[data-theme=dark] .tier-info h4{color:#f9fafb}[data-theme=dark] .price{color:#60a5fa}[data-theme=dark] .billing-item{background:#374151;border-color:#4b5563}[data-theme=dark] .billing-item .label{color:#9ca3af}[data-theme=dark] .billing-item .value{color:#f9fafb}[data-theme=dark] .subscription-features{background:#374151;border-color:#4b5563}[data-theme=dark] .subscription-features h5{color:#f9fafb}[data-theme=dark] .subscription-features ul{color:#d1d5db}[data-theme=dark] .subscription-actions{border-color:#374151}[data-theme=dark] .subscription-actions h5,[data-theme=dark] .subscription-actions h6{color:#f9fafb}[data-theme=dark] .tier-card{background:#1f2937;border-color:#374151}[data-theme=dark] .tier-card:hover{border-color:#60a5fa;box-shadow:0 2px 8px #60a5fa1a}[data-theme=dark] .tier-card.current{border-color:#10b981;background:#064e3b}[data-theme=dark] .tier-header{border-color:#374151}[data-theme=dark] .tier-header h6{color:#f9fafb}[data-theme=dark] .tier-price{color:#60a5fa}[data-theme=dark] .tier-features ul{color:#9ca3af}[data-theme=dark] .overview-card{background:#1f2937;box-shadow:0 2px 4px #0000004d}[data-theme=dark] .subscription-summary-card{background:#1f2937}[data-theme=dark] .subscription-summary-card h4{color:#f9fafb}[data-theme=dark] .detail-row .label{color:#9ca3af}[data-theme=dark] .detail-row .value{color:#f9fafb}[data-theme=dark] .detail-row .value.amount{color:#60a5fa}[data-theme=dark] .usage-metrics-card{background:#1f2937}[data-theme=dark] .usage-metrics-card h4{color:#f9fafb}[data-theme=dark] .usage-metrics-card .metric-item{background:#374151}[data-theme=dark] .usage-metrics-card .metric-label{color:#9ca3af}[data-theme=dark] .usage-metrics-card .metric-value{color:#f9fafb}[data-theme=dark] .usage-metrics-card .metric-bar{background:#4b5563}[data-theme=dark] .invoices-section,[data-theme=dark] .invoices-full{background:#1f2937;box-shadow:0 2px 4px #0000004d}[data-theme=dark] .invoices-section h3,[data-theme=dark] .invoices-full h3{color:#f9fafb}[data-theme=dark] .no-invoices{color:#9ca3af}[data-theme=dark] .invoice-item{background:#374151;border-color:#4b5563}[data-theme=dark] .invoice-date{color:#9ca3af}[data-theme=dark] .invoice-amount{color:#f9fafb}[data-theme=dark] .event-card{background:#374151;border-color:#4b5563}[data-theme=dark] .event-header{border-color:#4b5563}[data-theme=dark] .event-title h5{color:#f9fafb}[data-theme=dark] .event-id{color:#9ca3af}[data-theme=dark] .event-type{color:#d1d5db}[data-theme=dark] .event-date{color:#9ca3af}[data-theme=dark] .event-amount-large{color:#10b981}[data-theme=dark] .event-metadata{border-color:#4b5563}[data-theme=dark] .event-metadata h6{color:#f9fafb}[data-theme=dark] .metadata-key{color:#9ca3af}[data-theme=dark] .metadata-value{color:#d1d5db}[data-theme=dark] .recent-events{background:#1f2937}[data-theme=dark] .recent-events h4{color:#f9fafb}[data-theme=dark] .event-item{border-color:#374151}[data-theme=dark] .no-events{color:#9ca3af}[data-theme=dark] .billing-history{background:#1f2937;box-shadow:0 2px 4px #0000004d}[data-theme=dark] .history-header{border-color:#374151}[data-theme=dark] .history-header h3{color:#f9fafb}[data-theme=dark] .quota-status{background:#1f2937;box-shadow:0 2px 4px #0000004d}[data-theme=dark] .quota-status-header{border-color:#374151}[data-theme=dark] .quota-status-header h3{color:#f9fafb}[data-theme=dark] .quota-item{background:#374151;border-color:#4b5563}[data-theme=dark] .quota-title{color:#f9fafb}[data-theme=dark] .quota-values{color:#9ca3af}[data-theme=dark] .quota-progress{background:#4b5563}[data-theme=dark] .quota-percentage{color:#9ca3af}[data-theme=dark] .quota-footer,[data-theme=dark] .form-actions{border-color:#374151}[data-theme=dark] .subscription-modal-container{background:#1f2937}[data-theme=dark] .subscription-modal-header{background:#374151;border-color:#4b5563}[data-theme=dark] .subscription-modal-header h3{color:#f9fafb}[data-theme=dark] .modal-close-btn{color:#9ca3af}[data-theme=dark] .modal-close-btn:hover{background:#4b5563;color:#f9fafb}[data-theme=dark] .subscription-modal-body{background:#1f2937}[data-theme=dark] .modal-section h4{color:#f9fafb}[data-theme=dark] .section-description{color:#9ca3af}[data-theme=dark] .plan-card-option{background:#1f2937;border-color:#374151}[data-theme=dark] .plan-card-option:hover{border-color:#60a5fa;box-shadow:0 4px 12px #60a5fa1a}[data-theme=dark] .plan-card-option.selected{border-color:#60a5fa;background:#1e3a5f}[data-theme=dark] .plan-card-option.current{border-color:#10b981}[data-theme=dark] .plan-card-option h5{color:#f9fafb}[data-theme=dark] .plan-card-price{color:#60a5fa}[data-theme=dark] .plan-card-price span{color:#9ca3af}[data-theme=dark] .plan-card-features li{color:#d1d5db}[data-theme=dark] .slider{background:#4b5563}[data-theme=dark] .slider-value .value-number{color:#f9fafb}[data-theme=dark] .slider-value .value-label{color:#9ca3af}[data-theme=dark] .slider-cost{color:#60a5fa}[data-theme=dark] .summary-section{background:#374151}[data-theme=dark] .summary-row{color:#d1d5db}[data-theme=dark] .summary-row.total{border-color:#4b5563;color:#f9fafb}[data-theme=dark] .summary-row.total span:last-child{color:#60a5fa}[data-theme=dark] .subscription-modal-footer{background:#1f2937;border-color:#374151}[data-theme=dark] .btn-text-danger:hover:not(:disabled){background:#7f1d1d}[data-theme=dark] .payment-methods-section{background:#1f2937;box-shadow:0 2px 4px #0000004d}[data-theme=dark] .section-header{border-color:#374151}[data-theme=dark] .section-header h3{color:#f9fafb}[data-theme=dark] .payment-method-card{background:#374151;border-color:#4b5563}[data-theme=dark] .payment-method-card:hover{border-color:#60a5fa;box-shadow:0 2px 8px #60a5fa1a}[data-theme=dark] .payment-method-card.default{border-color:#10b981;background:#064e3b}[data-theme=dark] .method-type{color:#f9fafb}[data-theme=dark] .method-expiry,[data-theme=dark] .no-payment-methods{color:#9ca3af}[data-theme=dark] .payment-history-section{background:#1f2937;box-shadow:0 2px 4px #0000004d}[data-theme=dark] .payment-history-section h3{color:#f9fafb}[data-theme=dark] .payment-history-table thead{background:#374151}[data-theme=dark] .payment-history-table th{color:#d1d5db;border-color:#4b5563}[data-theme=dark] .payment-history-table td{color:#9ca3af;border-color:#374151}[data-theme=dark] .payment-history-table tbody tr:hover,[data-theme=dark] .subscription-summary{background:#374151}[data-theme=dark] .subscription-summary h3{color:#f9fafb}[data-theme=dark] .summary-line{color:#d1d5db}[data-theme=dark] .summary-total{border-color:#4b5563;color:#f9fafb}[data-theme=dark] .danger-zone{background:#7f1d1d;border-color:#991b1b}[data-theme=dark] .danger-zone h6{color:#fecaca}[data-theme=dark] .danger-zone p{color:#fca5a5}[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] .no-subscription{color:#9ca3af}[data-theme=dark] .no-subscription h3{color:#f9fafb}[data-theme=dark] .no-templates{background:#1f2937;border-color:#374151;color:#9ca3af}[data-theme=dark] .no-templates h3{color:#f9fafb}[data-theme=dark] .consent-form-editor,[data-theme=dark] .form-editor,[data-theme=dark] .consent-form-content{background:#1f2937;border-color:#374151}[data-theme=dark] .consent-form-editor h3,[data-theme=dark] .form-editor h3{color:#f9fafb}[data-theme=dark] .consent-form-editor .form-group label,[data-theme=dark] .form-editor .form-group label{color:#d1d5db}[data-theme=dark] .consent-form-editor .form-control,[data-theme=dark] .form-editor .form-control{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .consent-form-editor .form-control:focus,[data-theme=dark] .form-editor .form-control:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa33}[data-theme=dark] .category-filter{background:#1f2937;border-color:#374151}[data-theme=dark] .category-filter label{color:#d1d5db}[data-theme=dark] .category-filter select{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .category-filter select:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa33}[data-theme=dark] .resource-filters{background:#1f2937;border-color:#374151}[data-theme=dark] .resource-filters label{color:#d1d5db}[data-theme=dark] .resource-filters select,[data-theme=dark] .resource-filters input{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .resource-filters select:focus,[data-theme=dark] .resource-filters input:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa33}[data-theme=dark] .resource-upload,[data-theme=dark] .upload-resource-form,[data-theme=dark] .resource-form{background:#1f2937;border-color:#374151}[data-theme=dark] .resource-upload h2,[data-theme=dark] .resource-upload h3,[data-theme=dark] .upload-resource-form h2,[data-theme=dark] .upload-resource-form h3{color:#f9fafb}[data-theme=dark] .resource-upload .form-group label,[data-theme=dark] .upload-resource-form .form-group label,[data-theme=dark] .resource-form .form-group label{color:#d1d5db}[data-theme=dark] .resource-upload .form-control,[data-theme=dark] .upload-resource-form .form-control,[data-theme=dark] .resource-form .form-control,[data-theme=dark] .resource-upload input,[data-theme=dark] .resource-upload select,[data-theme=dark] .resource-upload textarea,[data-theme=dark] .upload-resource-form input,[data-theme=dark] .upload-resource-form select,[data-theme=dark] .upload-resource-form textarea{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .resource-upload .form-control:focus,[data-theme=dark] .upload-resource-form .form-control:focus,[data-theme=dark] .resource-form .form-control:focus,[data-theme=dark] .resource-upload input:focus,[data-theme=dark] .resource-upload select:focus,[data-theme=dark] .resource-upload textarea:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa33}[data-theme=dark] .resource-upload .form-help,[data-theme=dark] .upload-resource-form .form-help{color:#9ca3af}[data-theme=dark] .file-upload-area,[data-theme=dark] .upload-dropzone,[data-theme=dark] .dropzone{background:#374151;border-color:#4b5563;color:#9ca3af}[data-theme=dark] .file-upload-area:hover,[data-theme=dark] .upload-dropzone:hover,[data-theme=dark] .dropzone:hover{border-color:#60a5fa;background:#1e3a5f}[data-theme=dark] .file-upload-area p,[data-theme=dark] .upload-dropzone p{color:#9ca3af}[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-color:#374151}[data-theme=dark] .task-form,[data-theme=dark] .add-task-form,[data-theme=dark] .training-task-form{background:#1f2937;border-color:#374151}[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:#f9fafb}[data-theme=dark] .task-form .form-group label,[data-theme=dark] .add-task-form .form-group label{color:#d1d5db}[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:#374151;border-color:#4b5563;color:#f9fafb}[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:#60a5fa;box-shadow:0 0 0 3px #60a5fa33}[data-theme=dark] .form-group{background:transparent}[data-theme=dark] .form-group label{color:#d1d5db}[data-theme=dark] .form-group .form-help,[data-theme=dark] .form-group .help-text{color:#9ca3af}[data-theme=dark] .form-container,[data-theme=dark] .form-wrapper,[data-theme=dark] .form-panel{background:#1f2937;border-color:#374151}[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:#f9fafb}[data-theme=dark] .form-section{background:#1f2937;border-color:#374151}[data-theme=dark] .form-section h4,[data-theme=dark] .form-section-title{color:#f9fafb}[data-theme=dark] .upload-area,[data-theme=dark] .file-input-wrapper{background:#374151;border-color:#4b5563}[data-theme=dark] .upload-area:hover{border-color:#60a5fa;background:#1e3a5f}[data-theme=dark] .upload-area .upload-text,[data-theme=dark] .upload-area p{color:#9ca3af}[data-theme=dark] .upload-area .upload-icon{color:#6b7280}[data-theme=dark] .calendar-header{background:#1f2937;border-color:#374151}[data-theme=dark] .calendar-header h2,[data-theme=dark] .calendar-header h3,[data-theme=dark] .calendar-header .calendar-title{color:#f9fafb}[data-theme=dark] .session-list-empty,[data-theme=dark] .sessions-empty,[data-theme=dark] .no-sessions{background:#1f2937;border-color:#374151;color:#9ca3af}[data-theme=dark] .session-list-empty h3,[data-theme=dark] .sessions-empty h3,[data-theme=dark] .no-sessions h3{color:#f9fafb}[data-theme=dark] .session-list-empty p,[data-theme=dark] .sessions-empty p,[data-theme=dark] .no-sessions p{color:#9ca3af}[data-theme=dark] .session-scheduler h2,[data-theme=dark] .session-scheduler h3{color:#f9fafb}[data-theme=dark] .session-scheduler .form-group label{color:#d1d5db}[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:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .session-scheduler .form-control:focus,[data-theme=dark] .session-scheduler input:focus,[data-theme=dark] .session-scheduler select:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa33}[data-theme=dark] .scheduler-sidebar{background:#374151;border-color:#4b5563}[data-theme=dark] .scheduler-sidebar h4{color:#f9fafb}[data-theme=dark] .animal-form,[data-theme=dark] .add-animal-form,[data-theme=dark] .animal-form-page{background:#1f2937;border-color:#374151}[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:#f9fafb}[data-theme=dark] .animal-form .form-group label,[data-theme=dark] .add-animal-form .form-group label{color:#d1d5db}[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:#374151;border-color:#4b5563;color:#f9fafb}[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:#60a5fa;box-shadow:0 0 0 3px #60a5fa33}[data-theme=dark] .animal-form .form-help,[data-theme=dark] .add-animal-form .form-help{color:#9ca3af}[data-theme=dark] .animal-form .form-actions,[data-theme=dark] .add-animal-form .form-actions{border-color:#374151}[data-theme=dark] .animal-form-section,[data-theme=dark] .form-section-card{background:#1f2937;border-color:#374151}[data-theme=dark] .animal-form-section h4,[data-theme=dark] .form-section-card h4{color:#f9fafb}[data-theme=dark] .behavior-tags-input,[data-theme=dark] .tags-input{background:#374151;border-color:#4b5563}[data-theme=dark] .behavior-tags-input input,[data-theme=dark] .tags-input input{background:transparent;color:#f9fafb}[data-theme=dark] .behavior-tag-item,[data-theme=dark] .tag-item{background:#1e3a5f;color:#93c5fd;border-color:#1e40af}[data-theme=dark] .behavior-tag-item .remove-tag,[data-theme=dark] .tag-item .remove-tag{color:#93c5fd}[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:#374151;border-color:#4b5563}[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:#374151;border-color:#4b5563}[data-theme=dark] .animal-photo-upload:hover,[data-theme=dark] .photo-upload-container:hover{border-color:#60a5fa;background:#1e3a5f}[data-theme=dark] .animal-photo-upload p,[data-theme=dark] .photo-upload-container p{color:#9ca3af}[data-theme=dark] .invitation-header{background:#1f2937;border-color:#374151}[data-theme=dark] .invitation-header h1,[data-theme=dark] .invitation-header h2{color:#f9fafb}[data-theme=dark] .invitation-header p{color:#9ca3af}[data-theme=dark] .invite-client-form .form-actions,[data-theme=dark] .invitation-form .form-actions{border-color:#374151;background:transparent}[data-theme=dark] .invite-client-form,[data-theme=dark] .client-invitation-form{background:#1f2937;border-color:#374151}[data-theme=dark] .invite-client-form h3,[data-theme=dark] .client-invitation-form h3{color:#f9fafb}[data-theme=dark] .invite-client-form .form-group label,[data-theme=dark] .client-invitation-form .form-group label{color:#d1d5db}[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:#374151;border-color:#4b5563;color:#f9fafb}[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:#60a5fa;box-shadow:0 0 0 3px #60a5fa33}[data-theme=dark] .invite-client-form .form-help,[data-theme=dark] .client-invitation-form .form-help{color:#9ca3af}[data-theme=dark] .preference-item{background:#1f2937;border-color:#374151}[data-theme=dark] .preference-item .preference-label h3{color:#f9fafb}[data-theme=dark] .preference-item .preference-label p{color:#9ca3af}[data-theme=dark] .preference-section h3,[data-theme=dark] .preference-section .section-title{color:#f9fafb}[data-theme=dark] .preference-section p,[data-theme=dark] .preference-section .section-description{color:#9ca3af}[data-theme=dark] .template-form,[data-theme=dark] .message-template-form,[data-theme=dark] .template-editor{background:#1f2937;border-color:#374151}[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:#f9fafb}[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:#d1d5db}[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:#374151;border-color:#4b5563;color:#f9fafb}[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:#60a5fa;box-shadow:0 0 0 3px #60a5fa33}[data-theme=dark] .variable-names,[data-theme=dark] .template-variables,[data-theme=dark] .variables-section,[data-theme=dark] .available-variables{background:#374151;border-color:#4b5563}[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:#f9fafb}[data-theme=dark] .variable-names p,[data-theme=dark] .template-variables p,[data-theme=dark] .variables-section p{color:#9ca3af}[data-theme=dark] .variable-tag,[data-theme=dark] .variable-badge,[data-theme=dark] .template-variable{background:#1e3a5f;color:#93c5fd;border-color:#1e40af}[data-theme=dark] .variable-tag:hover,[data-theme=dark] .variable-badge:hover,[data-theme=dark] .template-variable:hover{background:#1e40af;color:#bfdbfe}[data-theme=dark] .variable-list{background:#374151;border-color:#4b5563}[data-theme=dark] .variable-item{background:#1f2937;border-color:#374151;color:#d1d5db}[data-theme=dark] .variable-item code{background:#1e3a5f;color:#93c5fd}[data-theme=dark] .tox-tinymce{border-color:#4b5563!important}[data-theme=dark] .tox .tox-edit-area__iframe{background-color:#374151!important}[data-theme=dark] .tox .tox-toolbar,[data-theme=dark] .tox .tox-toolbar__overflow,[data-theme=dark] .tox .tox-toolbar__primary{background-color:#1f2937!important;border-color:#374151!important}[data-theme=dark] .tox .tox-toolbar-overlord{background-color:#1f2937!important}[data-theme=dark] .tox .tox-tbtn{color:#d1d5db!important}[data-theme=dark] .tox .tox-tbtn:hover{background-color:#374151!important}[data-theme=dark] .tox .tox-tbtn--enabled,[data-theme=dark] .tox .tox-tbtn--enabled:hover{background-color:#4b5563!important}[data-theme=dark] .tox .tox-tbtn svg{fill:#d1d5db!important}[data-theme=dark] .tox .tox-statusbar{background-color:#1f2937!important;border-color:#374151!important;color:#9ca3af!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:#9ca3af!important}[data-theme=dark] .tox .tox-menu{background-color:#1f2937!important;border-color:#374151!important}[data-theme=dark] .tox .tox-collection__item{color:#d1d5db!important}[data-theme=dark] .tox .tox-collection__item--active{background-color:#374151!important}[data-theme=dark] .tox .tox-collection__item-label{color:#d1d5db!important}[data-theme=dark] .ql-toolbar{background-color:#1f2937!important;border-color:#374151!important}[data-theme=dark] .ql-toolbar .ql-stroke{stroke:#d1d5db!important}[data-theme=dark] .ql-toolbar .ql-fill{fill:#d1d5db!important}[data-theme=dark] .ql-toolbar .ql-picker{color:#d1d5db!important}[data-theme=dark] .ql-toolbar .ql-picker-options{background-color:#1f2937!important;border-color:#374151!important}[data-theme=dark] .ql-toolbar .ql-picker-item{color:#d1d5db!important}[data-theme=dark] .ql-toolbar .ql-picker-item:hover{background-color:#374151!important}[data-theme=dark] .ql-container{border-color:#374151!important}[data-theme=dark] .ql-editor{background-color:#374151!important;color:#f9fafb!important}[data-theme=dark] .ql-editor.ql-blank:before{color:#6b7280!important}[data-theme=dark] .template-preview{background:#374151;border-color:#4b5563}[data-theme=dark] .template-preview h4{color:#f9fafb}[data-theme=dark] .template-preview-content{background:#1f2937;border-color:#374151;color:#d1d5db}[data-theme=dark] .session-list.empty{background:#1f2937;border-color:#374151;color:#9ca3af}[data-theme=dark] .session-list.empty h3{color:#f9fafb}[data-theme=dark] .session-list.empty p{color:#9ca3af}[data-theme=dark] .session-list.empty .empty-icon{color:#4b5563}[data-theme=dark] .event-header h4,[data-theme=dark] .event-header h5{color:#f9fafb}[data-theme=dark] .event-header p{color:#9ca3af}[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-color:#374151}[data-theme=dark] .searchable-dropdown{background:#1f2937;border-color:#374151}[data-theme=dark] .searchable-dropdown .dropdown-header,[data-theme=dark] .searchable-dropdown .dropdown-trigger{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .searchable-dropdown .dropdown-header:hover,[data-theme=dark] .searchable-dropdown .dropdown-trigger:hover{border-color:#60a5fa}[data-theme=dark] .searchable-dropdown .dropdown-menu,[data-theme=dark] .searchable-dropdown .dropdown-options{background:#1f2937;border-color:#374151;box-shadow:0 4px 12px #0000004d}[data-theme=dark] .searchable-dropdown .dropdown-search input{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .searchable-dropdown .dropdown-search input::placeholder{color:#6b7280}[data-theme=dark] .searchable-dropdown .dropdown-item,[data-theme=dark] .searchable-dropdown .dropdown-option{color:#d1d5db}[data-theme=dark] .searchable-dropdown .dropdown-item:hover,[data-theme=dark] .searchable-dropdown .dropdown-option:hover{background:#374151;color:#f9fafb}[data-theme=dark] .searchable-dropdown .dropdown-item.selected,[data-theme=dark] .searchable-dropdown .dropdown-option.selected{background:#1e3a5f;color:#60a5fa}[data-theme=dark] .searchable-dropdown .no-results,[data-theme=dark] .searchable-dropdown .dropdown-arrow{color:#9ca3af}.searchable-dropdown.dropdown-trigger{border:1px solid #ddd;border-radius:4px;padding:8px;cursor:pointer;background-color:#fff}.searchable-dropdown.dropdown-menu{position:absolute;top:100%;left:0;right:0;background-color:#fff;border:1px solid #ddd;border-radius:4px;box-shadow:0 2px 8px #0000001a;z-index:9999;max-height:200px;overflow:auto}.searchable-dropdown .dropdown-arrow{float:right}.searchable-dropdown .dropdown-search-input{width:100%;padding:8px;border:none;border-bottom:1px solid #eee;outline:none;background:#fff}.searchable-dropdown .dropdown-item{padding:8px;cursor:pointer;border-bottom:1px solid #eee;background-color:#fff}.searchable-dropdown .dropdown-item:hover{background-color:#f8f9fa}.searchable-dropdown .dropdown-item.selected{background-color:#f0f0f0}.searchable-dropdown .dropdown-no-results{padding:8px;color:#666;font-style:italic}[data-theme=dark] .searchable-dropdown.dropdown-trigger{background-color:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .searchable-dropdown.dropdown-menu{background-color:#1f2937;border-color:#374151;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .searchable-dropdown .dropdown-arrow{color:#9ca3af}[data-theme=dark] .searchable-dropdown .dropdown-search-input{background-color:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .searchable-dropdown .dropdown-search-input::placeholder{color:#6b7280}[data-theme=dark] .searchable-dropdown .dropdown-item{background-color:#1f2937;border-color:#374151;color:#d1d5db}[data-theme=dark] .searchable-dropdown .dropdown-item:hover{background-color:#374151;color:#f9fafb}[data-theme=dark] .searchable-dropdown .dropdown-item.selected{background-color:#1e3a5f;color:#60a5fa}[data-theme=dark] .searchable-dropdown .dropdown-no-results{color:#9ca3af}[data-theme=dark] .page-header{background:transparent}[data-theme=dark] .page-header h1,[data-theme=dark] .page-header h2{color:#f9fafb}[data-theme=dark] .page-header p{color:#9ca3af}[data-theme=dark] .settings-header{background:transparent}[data-theme=dark] .settings-header h1{color:#f9fafb}[data-theme=dark] .settings-header p{color:#9ca3af}[data-theme=dark] .sessions-header{background:transparent}[data-theme=dark] .client-tasks-header{background:transparent}[data-theme=dark] .client-tasks-header h1{color:#f9fafb}[data-theme=dark] .client-tasks-header p{color:#9ca3af}[data-theme=dark] .billing-header{background:transparent}[data-theme=dark] .billing-header h2{color:#f9fafb}[data-theme=dark] .dashboard-header{background:transparent}[data-theme=dark] .dashboard-header h1,[data-theme=dark] .dashboard-header h2{color:#f9fafb}[data-theme=dark] .dashboard-header p{color:#9ca3af}[data-theme=dark] .header-content h1,[data-theme=dark] .header-content h2{color:#f9fafb}[data-theme=dark] .header-content p{color:#9ca3af}[data-theme=dark] .header-text h1,[data-theme=dark] .header-text h2{color:#f9fafb}[data-theme=dark] .header-text p{color:#9ca3af}[data-theme=dark] .form-header h3{color:#f9fafb}[data-theme=dark] .section-header h3,[data-theme=dark] .section-header h4{color:#f9fafb}[data-theme=dark] .section-header p{color:#9ca3af}[data-theme=dark] .list-header h1,[data-theme=dark] .list-header h2{color:#f9fafb}[data-theme=dark] .list-header p{color:#9ca3af}[data-theme=dark] .manager-header p,[data-theme=dark] .manager-header .description{color:#9ca3af}[data-theme=dark] .detail-header h1,[data-theme=dark] .detail-header h2{color:#f9fafb}[data-theme=dark] .detail-header p{color:#9ca3af}[data-theme=dark] .preferences-header h2,[data-theme=dark] .preferences-header h3{color:#f9fafb}[data-theme=dark] .preferences-header p,[data-theme=dark] .preferences-description{color:#9ca3af}[data-theme=dark] .consent-form-manager .page-header h2{color:#f9fafb}[data-theme=dark] .consent-form-manager .page-header p{color:#9ca3af}[data-theme=dark] .template-creator{background:transparent}[data-theme=dark] .template-creator-title{color:#f9fafb}[data-theme=dark] .template-creator-error{background-color:#7f1d1d;border-color:#991b1b;color:#fecaca}[data-theme=dark] .template-form-label{color:#d1d5db}[data-theme=dark] .template-form-input,[data-theme=dark] .template-form-select,[data-theme=dark] .template-form-textarea{background-color:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .template-form-input:focus,[data-theme=dark] .template-form-select:focus,[data-theme=dark] .template-form-textarea:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa33}[data-theme=dark] .template-form-input::placeholder,[data-theme=dark] .template-form-textarea::placeholder{color:#6b7280}[data-theme=dark] .template-variables-box{background-color:#374151;border-color:#4b5563}[data-theme=dark] .template-variables-title{color:#f9fafb}[data-theme=dark] .template-variables-text{color:#9ca3af}[data-theme=dark] .template-section-title{color:#f9fafb}[data-theme=dark] .template-char-count{color:#9ca3af}[data-theme=dark] .template-cancel-button{background-color:#4b5563}[data-theme=dark] .template-cancel-button:hover{background-color:#6b7280}[data-theme=dark] .template-manager-header h2{color:#f9fafb}[data-theme=dark] .template-card{background:#1f2937;border-color:#374151}[data-theme=dark] .template-card:hover{border-color:#60a5fa;box-shadow:0 4px 12px #0000004d}[data-theme=dark] .template-name{color:#f9fafb}[data-theme=dark] .template-subject{background-color:#374151;color:#d1d5db}[data-theme=dark] .template-subject strong{color:#f9fafb}[data-theme=dark] .template-body-preview{color:#d1d5db}[data-theme=dark] .template-meta{border-color:#374151}[data-theme=dark] .placeholder-count,[data-theme=dark] .role-count{color:#f9fafb}[data-theme=dark] .template-performance{background-color:#374151}[data-theme=dark] .metric-label{color:#9ca3af}[data-theme=dark] .template-updated{color:#6b7280}[data-theme=dark] .no-templates{background-color:#1f2937;border-color:#374151}[data-theme=dark] .no-templates p{color:#9ca3af}[data-theme=dark] .template-detail-header .back-button{background-color:transparent;border-color:#60a5fa;color:#60a5fa}[data-theme=dark] .template-detail-header .back-button:hover{background-color:#1e3a5f}[data-theme=dark] .header-actions h1{color:#f9fafb}[data-theme=dark] .template-meta-info{background-color:#374151}[data-theme=dark] .meta-item strong{color:#f9fafb}[data-theme=dark] .template-body-section,[data-theme=dark] .template-placeholders-section{background:#1f2937;border-color:#374151}[data-theme=dark] .template-body-section h3,[data-theme=dark] .template-placeholders-section h3{color:#f9fafb}[data-theme=dark] .template-body-display{background-color:#374151;color:#d1d5db}[data-theme=dark] .placeholder-badge{background-color:#1e3a5f;color:#93c5fd}[data-theme=dark] .filter-group label{color:#d1d5db}[data-theme=dark] .filter-select,[data-theme=dark] .search-input{background-color:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .search-input::placeholder{color:#6b7280}[data-theme=dark] .client-list{background:transparent;color:#d1d5db}[data-theme=dark] .client-list .page-header{background:transparent}[data-theme=dark] .client-list .page-header h2{color:#f9fafb}[data-theme=dark] .client-list .page-header p{color:#9ca3af}[data-theme=dark] .client-list-controls{background:#374151;border:1px solid #4b5563}[data-theme=dark] .client-list .search-input{background-color:#1f2937;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .client-list .search-input::placeholder{color:#6b7280}[data-theme=dark] .client-list .filter-group label{color:#d1d5db}[data-theme=dark] .client-list .filter-select{background-color:#1f2937;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .client-table-container{background:#1f2937;border-color:#374151}[data-theme=dark] .client-table{background:#1f2937}[data-theme=dark] .client-table thead{background:#374151;border-color:#4b5563}[data-theme=dark] .client-table th{color:#d1d5db;border-color:#4b5563;background:#374151}[data-theme=dark] .client-table td{color:#d1d5db;border-color:#374151;background:#1f2937}[data-theme=dark] .client-table tbody tr{background:#1f2937}[data-theme=dark] .client-row:hover,[data-theme=dark] .client-row:hover td{background:#374151}[data-theme=dark] .client-row.selected,[data-theme=dark] .client-row.selected td{background:#1e3a5f}[data-theme=dark] .client-list .balance-negative{color:#f87171}[data-theme=dark] .client-list .checkbox-column input[type=checkbox]{accent-color:#3b82f6}[data-theme=dark] .bulk-actions-bar{background:#3b82f6}[data-theme=dark] .bulk-actions-buttons .btn{background:#1f2937;color:#f9fafb;border-color:#374151}[data-theme=dark] .bulk-actions-buttons .btn:hover:not(:disabled){background:#374151}[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:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .client-list .load-more-container .btn:hover:not(:disabled){background:#4b5563}[data-theme=dark] .client-list .empty-state{color:#9ca3af;background:transparent}[data-theme=dark] .client-list .empty-state p{color:#9ca3af}[data-theme=dark] .client-list .empty-state-hint{color:#6b7280}[data-theme=dark] .client-list .action-buttons .btn{background:#374151;border-color:#4b5563;color:#d1d5db}[data-theme=dark] .client-list .action-buttons .btn:hover:not(:disabled){background:#4b5563;color:#f9fafb}[data-theme=dark] .client-list .status-active{background:#064e3b;color:#a7f3d0}[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:#1f2937;border-color:#374151}[data-theme=dark] .client-list .modal-content h3{color:#f9fafb}[data-theme=dark] .client-list .modal-content p{color:#d1d5db}[data-theme=dark] .client-profile{background:#1f2937;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .client-profile-loading,[data-theme=dark] .client-profile-error{color:#9ca3af}[data-theme=dark] .profile-header{background:linear-gradient(135deg,#4338ca,#6d28d9)}[data-theme=dark] .profile-title h2{color:#f9fafb}[data-theme=dark] .stat-card{background:transparent}[data-theme=dark] .stat-value.negative{color:#f87171}[data-theme=dark] .profile-tabs .tab{color:#9ca3af;background:transparent}[data-theme=dark] .profile-tabs .tab.active{color:#60a5fa;border-bottom-color:#60a5fa}[data-theme=dark] .info-item p{color:#d1d5db}[data-theme=dark] .preferences-list .preference-item{background:#374151}[data-theme=dark] .preference-item span:first-child{color:#d1d5db}[data-theme=dark] .preference-item .enabled{color:#34d399}[data-theme=dark] .preference-item .disabled{color:#6b7280}[data-theme=dark] .client-profile .consent-list .consent-item,[data-theme=dark] .client-profile [style*="border: 1px solid #ddd"]{background:#374151!important;border-color:#4b5563!important}[data-theme=dark] .client-profile [style*="backgroundColor: #f8f9fa"]{background-color:#374151!important}[data-theme=dark] .client-profile [style*="color: #666"]{color:#9ca3af!important}[data-theme=dark] .client-profile [style*="color: #1a1a1a"],[data-theme=dark] .client-profile [style*="color: #212529"]{color:#f9fafb!important}[data-theme=dark] .client-profile select[style*="border: 1px solid #ddd"]{background:#374151!important;border-color:#4b5563!important;color:#f9fafb!important}[data-theme=dark] .pets-grid .animal-card{background:#1f2937;border-color:#374151}[data-theme=dark] .animal-info{background:#1f2937;border-color:#60a5fa}[data-theme=dark] .animal-info h4{color:#f9fafb}[data-theme=dark] .animal-info p{color:#d1d5db}[data-theme=dark] .animal-details{color:#9ca3af}[data-theme=dark] .animal-details p,[data-theme=dark] .animal-details .detail-row span{color:#d1d5db}[data-theme=dark] .animal-details .detail-row strong{color:#9ca3af}[data-theme=dark] .animal-goals strong,[data-theme=dark] .animal-notes strong{color:#f9fafb}[data-theme=dark] .animal-goals li,[data-theme=dark] .animal-notes p{color:#d1d5db}[data-theme=dark] .billing-summary{background:#374151}[data-theme=dark] .billing-stat label{color:#9ca3af}[data-theme=dark] .billing-stat p{color:#f9fafb}[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-color:#374151}[data-theme=dark] .delays-header h3{color:#f9fafb}[data-theme=dark] .delays-description{color:#9ca3af}[data-theme=dark] .overrides-badge{background:#3b82f6}[data-theme=dark] .delay-card{background:#1f2937;border-color:#4b5563}[data-theme=dark] .delay-card:hover{border-color:#60a5fa;box-shadow:0 2px 8px #60a5fa1a}[data-theme=dark] .delay-card.overridden{border-color:#3b82f6;background:#1e3a5f}[data-theme=dark] .delay-card-header{border-color:#374151}[data-theme=dark] .delay-info h4{color:#f9fafb}[data-theme=dark] .delay-info p{color:#9ca3af}[data-theme=dark] .delay-setting label{color:#d1d5db}[data-theme=dark] .delay-select{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .delay-select:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa33}[data-theme=dark] .delay-card.overridden .delay-select{border-color:#60a5fa}[data-theme=dark] .default-notice{background:#374151;color:#9ca3af}[data-theme=dark] .default-notice strong{color:#d1d5db}[data-theme=dark] .delays-actions{border-color:#374151}[data-theme=dark] .solo-subscription-notice{background:linear-gradient(135deg,#1e3a5f,#1e40af);border-color:#3b82f6}[data-theme=dark] .solo-subscription-notice .notice-text{color:#bfdbfe}[data-theme=dark] .solo-subscription-notice .notice-hint{color:#93c5fd}[data-theme=dark] .clientprofile-modal-content{background:#1f2937;border:1px solid #374151}[data-theme=dark] .clientprofile-modal-content .modal-header{border-color:#374151}[data-theme=dark] .clientprofile-modal-content .modal-header h3{color:#f9fafb}[data-theme=dark] .clientprofile-modal-content .modal-close{color:#9ca3af}[data-theme=dark] .clientprofile-modal-content .modal-close:hover{color:#f9fafb}[data-theme=dark] .clientprofile-modal-content .modal-body{color:#d1d5db}[data-theme=dark] .forms-list .form-option{background:#374151;border-color:#4b5563}[data-theme=dark] .forms-list .form-option p{color:#9ca3af}[data-theme=dark] .consent-forms-list .consent-form-item{background:#1f2937;border-color:#374151}[data-theme=dark] .form-info h4{color:#f9fafb}[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:#1f2937;border:1px solid #374151}[data-theme=dark] .client-edit-modal .modal-header{border-color:#374151}[data-theme=dark] .client-edit-modal .modal-header h2{color:#f9fafb}[data-theme=dark] .client-edit-modal .modal-body{background:#1f2937}[data-theme=dark] .client-edit-modal .form-section h3{color:#f9fafb}[data-theme=dark] .client-edit-modal .modal-footer{background:#374151;border-color:#374151}[data-theme=dark] .client-profile .overview-tab{background:#1f2937}[data-theme=dark] .client-profile .overview-tab .info-section{background:transparent}[data-theme=dark] .client-profile .animals-tab{background:#1f2937}[data-theme=dark] .client-profile .animals-tab .tab-header h3{color:#f9fafb}[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:#374151;border-color:#4b5563}[data-theme=dark] .client-profile .sessions-tab{background:#1f2937}[data-theme=dark] .client-profile .sessions-tab h3{color:#f9fafb}[data-theme=dark] .client-profile .sessions-list .session-card{background:#374151;border-color:#4b5563}[data-theme=dark] .client-profile .session-header{border-color:#4b5563}[data-theme=dark] .client-profile .session-animal .animal-name{color:#f9fafb}[data-theme=dark] .client-profile .session-status.status-completed{background:#064e3b;color:#a7f3d0}[data-theme=dark] .client-profile .session-status.status-scheduled{background:#1e3a5f;color:#93c5fd}[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:#9ca3af}[data-theme=dark] .client-profile .session-value{color:#f9fafb}[data-theme=dark] .client-profile .session-notes{border-color:#4b5563}[data-theme=dark] .client-profile .session-notes p,[data-theme=dark] .client-profile .loading-state,[data-theme=dark] .client-profile .error-state{color:#9ca3af}[data-theme=dark] .client-profile .error-state{color:#f87171}[data-theme=dark] .client-profile .notifications-tab{background:#1f2937}[data-theme=dark] .client-profile .notifications-tab h3{color:#f9fafb}[data-theme=dark] .client-profile .billing-tab{background:#1f2937}[data-theme=dark] .client-profile .billing-tab h3{color:#f9fafb}[data-theme=dark] .client-profile .permission-denied{background:#374151;border-radius:8px;padding:2rem;text-align:center}[data-theme=dark] .client-profile .permission-denied h3{color:#f9fafb}[data-theme=dark] .client-profile .permission-denied p{color:#9ca3af}[data-theme=dark] .notification-settings{background:#1f2937;box-shadow:0 1px 3px #0000004d}[data-theme=dark] .notification-settings .settings-header{background:#374151;border-color:#4b5563}[data-theme=dark] .notification-settings .settings-header h2{color:#f9fafb}[data-theme=dark] .notification-settings .settings-description{color:#9ca3af}[data-theme=dark] .notification-category{background:#1f2937;border-color:#374151}[data-theme=dark] .category-header{background:#374151}[data-theme=dark] .category-header:hover{background:#4b5563}[data-theme=dark] .category-header h3{color:#f9fafb}[data-theme=dark] .category-icon{color:#9ca3af}[data-theme=dark] .category-count{background:#1f2937;border-color:#4b5563;color:#9ca3af}[data-theme=dark] .category-events{background:#1f2937}[data-theme=dark] .event-config{background:#1f2937;border-color:#374151;box-shadow:0 1px 3px #0003}[data-theme=dark] .event-config:hover{border-color:#60a5fa;box-shadow:0 2px 8px #60a5fa1a}[data-theme=dark] .event-config.disabled{background:#374151}[data-theme=dark] .event-header{background:#374151;border-color:#4b5563}[data-theme=dark] .event-info h4{color:#f9fafb}[data-theme=dark] .event-info p{color:#9ca3af}[data-theme=dark] .event-type-badge{background:#374151;border-color:#4b5563;color:#9ca3af}[data-theme=dark] .event-toggle{color:#f9fafb}[data-theme=dark] .event-settings{background:#1f2937}[data-theme=dark] .setting-label,[data-theme=dark] .setting-group label{color:#d1d5db}[data-theme=dark] .setting-help{color:#6b7280}[data-theme=dark] .channel-toggle{background:#1f2937;border-color:#4b5563;color:#d1d5db}[data-theme=dark] .channel-toggle:hover{border-color:#60a5fa;background:#374151}[data-theme=dark] .role-toggle{background:#1f2937;border-color:#4b5563;color:#d1d5db}[data-theme=dark] .role-toggle:hover{border-color:#60a5fa;background:#374151}[data-theme=dark] .form-control{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .form-control:focus{border-color:#60a5fa;box-shadow:0 0 0 2px #60a5fa33}[data-theme=dark] .form-control:disabled{background:#1f2937;color:#6b7280}[data-theme=dark] .setting-group select{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .setting-group select:focus{border-color:#60a5fa;box-shadow:0 0 0 2px #60a5fa33}[data-theme=dark] .setting-group textarea{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .setting-group textarea:focus{border-color:#60a5fa}[data-theme=dark] .setting-group textarea::placeholder{color:#6b7280}[data-theme=dark] .recipient-checkbox{background:#1f2937;border-color:#4b5563}[data-theme=dark] .recipient-checkbox:hover{border-color:#60a5fa;background:#374151}[data-theme=dark] .recipient-checkbox span{color:#d1d5db}[data-theme=dark] .placeholder-badge{background:#064e3b;border-color:#065f46;color:#a7f3d0}[data-theme=dark] .settings-actions{border-color:#374151}[data-theme=dark] .notification-preferences{background:transparent}[data-theme=dark] .preferences-header h3{color:#f9fafb}[data-theme=dark] .preferences-header p{color:#9ca3af}[data-theme=dark] .preference-section{background:#1f2937;border-color:#374151}[data-theme=dark] .preference-header h4{color:#f9fafb}[data-theme=dark] .preference-description{color:#9ca3af}[data-theme=dark] .channel-option{background:#1f2937;border-color:#4b5563}[data-theme=dark] .channel-option:hover{border-color:#60a5fa;background:#374151}[data-theme=dark] .channel-info strong{color:#f9fafb}[data-theme=dark] .channel-info span,[data-theme=dark] .channel-info p{color:#9ca3af}[data-theme=dark] .quiet-hours-config{border-color:#374151}[data-theme=dark] .time-input label{color:#9ca3af}[data-theme=dark] .time-input input[type=time]{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .quiet-hours-preview{background:#374151;border-color:#60a5fa}[data-theme=dark] .quiet-hours-preview p{color:#f9fafb}[data-theme=dark] .quiet-hours-note{color:#9ca3af!important}[data-theme=dark] .toggle-slider{background:linear-gradient(135deg,#374151,#4b5563);border-color:#4b5563}[data-theme=dark] .toggle-slider:before{background:linear-gradient(135deg,#d1d5db,#e5e7eb)}[data-theme=dark] .toggle-slider:after{color:#6b7280}[data-theme=dark] .toggle-label{color:#9ca3af}[data-theme=dark] .metric-card{background:#1f2937;border-color:#374151;box-shadow:0 2px 4px #0003}[data-theme=dark] .metric-value{color:#60a5fa}[data-theme=dark] .metric-value.error{color:#f87171}[data-theme=dark] .metric-card p{color:#9ca3af}[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:#1f2937;border-color:#374151}[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:#f9fafb}[data-theme=dark] .operation-section p{color:#9ca3af}[data-theme=dark] .event-item{background:#374151}[data-theme=dark] .event-item .event-info strong{color:#f9fafb}[data-theme=dark] .event-item .event-info p{color:#9ca3af}[data-theme=dark] .event-time{color:#6b7280}[data-theme=dark] .channel-stat{background:#374151;border-color:#4b5563}[data-theme=dark] .channel-name{color:#d1d5db}[data-theme=dark] .channel-count{color:#60a5fa}[data-theme=dark] .table-header{background:#374151;color:#f9fafb}[data-theme=dark] .table-row{border-color:#374151;color:#d1d5db}[data-theme=dark] .table-row:hover,[data-theme=dark] .analytics-controls{background:#374151}[data-theme=dark] .time-range-selector label{color:#d1d5db}[data-theme=dark] .time-range-selector select{background:#1f2937;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .channel-item{background:#374151}[data-theme=dark] .channel-bar{background:#4b5563}[data-theme=dark] .type-item{background:#374151}[data-theme=dark] .type-name{color:#d1d5db}[data-theme=dark] .type-count{color:#60a5fa}[data-theme=dark] .trend-chart{background:#374151}[data-theme=dark] .trend-date{color:#9ca3af}[data-theme=dark] .notification-settings .form-group{background:#1f2937;border-color:#374151}[data-theme=dark] .notification-settings .label-text{color:#f9fafb}[data-theme=dark] .notification-settings .label-description{color:#9ca3af}[data-theme=dark] .client-sessions-page .page-header h1{color:#f9fafb}[data-theme=dark] .client-sessions-page .page-header p{color:#9ca3af}[data-theme=dark] .client-sessions-page .session-card{background:#1f2937;border-color:#374151}[data-theme=dark] .client-sessions-page .session-card:hover{box-shadow:0 4px 12px #0000004d}[data-theme=dark] .client-sessions-page .session-card.expanded{background:#1f2937}[data-theme=dark] .client-sessions-page .session-header{border-color:#374151}[data-theme=dark] .client-sessions-page .session-header:hover{background:#374151}[data-theme=dark] .client-sessions-page .session-date{color:#f9fafb}[data-theme=dark] .client-sessions-page .session-time{color:#9ca3af}[data-theme=dark] .client-sessions-page .session-animal{color:#60a5fa}[data-theme=dark] .client-sessions-page .session-trainer{color:#9ca3af}[data-theme=dark] .client-sessions-page .session-content{background:#374151}[data-theme=dark] .client-sessions-page .session-basic-details{background:#1f2937}[data-theme=dark] .client-sessions-page .session-basic-details p{color:#d1d5db}[data-theme=dark] .client-sessions-page .animal-info{background:#1f2937;border-left-color:#60a5fa}[data-theme=dark] .client-sessions-page .animal-info p{color:#d1d5db}[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:#1e3a5f;border-left-color:#60a5fa}[data-theme=dark] .client-sessions-page .session-media h4{color:#93c5fd}[data-theme=dark] .client-sessions-page .client-notes-section{background:#1e3a5f}[data-theme=dark] .client-sessions-page .client-notes-section h4{color:#93c5fd}[data-theme=dark] .client-sessions-page .notes-display p{color:#bfdbfe}[data-theme=dark] .client-sessions-page .no-notes{color:#6b7280!important}[data-theme=dark] .client-sessions-page .notes-editor textarea{background:#374151;border-color:#4b5563;color:#f9fafb}[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:#374151;border-color:#8b5cf6}[data-theme=dark] .client-sessions-page .reschedule-request h4{color:#c4b5fd}[data-theme=dark] .client-sessions-page .reschedule-request p{color:#d1d5db}[data-theme=dark] .client-sessions-page .no-sessions{color:#9ca3af}[data-theme=dark] .client-sessions-page .loading-state{background:transparent}[data-theme=dark] .client-sessions-page .loading-state p{color:#9ca3af}[data-theme=dark] .client-sessions-page .filters-section{background:#374151;border-color:#4b5563}[data-theme=dark] .client-sessions-page .filter-group label{color:#d1d5db}[data-theme=dark] .client-sessions-page .filter-group select{background:#1f2937;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .client-sessions-page .filter-group select:focus{border-color:#60a5fa;box-shadow:0 0 0 2px #60a5fa33}[data-theme=dark] .client-sessions-page .session-details{background:transparent}[data-theme=dark] .client-sessions-page .session-details p{color:#d1d5db}[data-theme=dark] .client-sessions-page .session-details strong{color:#f9fafb}[data-theme=dark] .client-sessions-page .pet-info{background:#1f2937;border-left-color:#60a5fa}[data-theme=dark] .client-sessions-page .pet-info p{color:#d1d5db}[data-theme=dark] .client-schedule-page .page-header h1{color:#f9fafb}[data-theme=dark] .client-schedule-page .page-header p{color:#9ca3af}[data-theme=dark] .client-schedule-page .page-content{background:#1f2937;border-color:#374151;box-shadow:0 1px 3px #0000004d}[data-theme=dark] .client-schedule-page .calendar-container{background:#1f2937;border-color:#374151}[data-theme=dark] .client-schedule-page .calendar-header h3{color:#f9fafb}[data-theme=dark] .client-schedule-page .calendar-nav{color:#9ca3af}[data-theme=dark] .client-schedule-page .calendar-nav:hover{background:#374151;color:#f9fafb}[data-theme=dark] .client-schedule-page .calendar-weekday{background:#374151;border-color:#4b5563;color:#9ca3af}[data-theme=dark] .client-schedule-page .calendar-day-cell{border-color:#374151}[data-theme=dark] .client-schedule-page .calendar-day{background:#1f2937;color:#d1d5db}[data-theme=dark] .client-schedule-page .calendar-day.available{color:#f9fafb}[data-theme=dark] .client-schedule-page .calendar-day.available:hover{background:#1e3a5f;color:#60a5fa}[data-theme=dark] .client-schedule-page .calendar-day.selected{background:#3b82f6;color:#fff}[data-theme=dark] .client-schedule-page .calendar-day.unavailable{background:#111827;color:#4b5563}[data-theme=dark] .client-schedule-page .time-slots-container{background:#1f2937;border-color:#374151}[data-theme=dark] .client-schedule-page .time-slots-container h4{color:#f9fafb}[data-theme=dark] .client-schedule-page .time-slot{background:#1f2937;border-color:#4b5563;color:#d1d5db}[data-theme=dark] .client-schedule-page .time-slot:hover{background:#1e3a5f;border-color:#60a5fa;color:#60a5fa}[data-theme=dark] .client-schedule-page .time-slot.selected{background:#3b82f6;border-color:#3b82f6;color:#fff}[data-theme=dark] .client-schedule-page .no-slots{color:#6b7280}[data-theme=dark] .client-schedule-page .scheduler-sidebar{background:#374151;border-color:#4b5563}[data-theme=dark] .client-schedule-page .booking-form{border-color:#374151}[data-theme=dark] .client-schedule-page .consent-warning{background:#78350f;border-color:#92400e}[data-theme=dark] .client-schedule-page .consent-warning h3{color:#fde68a}[data-theme=dark] .client-schedule-page .consent-warning p{color:#fef3c7}[data-theme=dark] .animals-page .loading-state{background:transparent}[data-theme=dark] .animals-page .loading-state p{color:#9ca3af}[data-theme=dark] .layout-content{background-color:#1f2937;box-shadow:0 1px 3px #0000004d}[data-theme=dark] .layout-main,[data-theme=dark] .layout-body{background-color:#111827}[data-theme=dark] .training-resources-page .loading-state{background:transparent}[data-theme=dark] .training-resources-page .loading-state p{color:#9ca3af}[data-theme=dark] .training-resources-page .page-header h1{color:#f9fafb}[data-theme=dark] .training-resources-page .page-header p{color:#9ca3af}[data-theme=dark] .training-resources-page .category-filter button{background:#374151;border-color:#4b5563;color:#d1d5db}[data-theme=dark] .training-resources-page .category-filter button:hover{background:#4b5563;border-color:#60a5fa;color:#60a5fa}[data-theme=dark] .training-resources-page .category-filter button.active{background:#3b82f6;border-color:#3b82f6;color:#fff}[data-theme=dark] .training-resources-page .resource-card{background:#1f2937;border-color:#374151}[data-theme=dark] .training-resources-page .resource-card:hover{border-color:#60a5fa;box-shadow:0 4px 12px #0000004d}[data-theme=dark] .training-resources-page .resource-card h3{color:#f9fafb}[data-theme=dark] .training-resources-page .resource-description{color:#9ca3af}[data-theme=dark] .training-resources-page .resource-category{background:#1e3a5f;color:#93c5fd}[data-theme=dark] .training-resources-page .resource-type,[data-theme=dark] .training-resources-page .resource-tags .tag{background:#374151;color:#d1d5db}[data-theme=dark] .training-resources-page .no-resources{color:#9ca3af}[data-theme=dark] .training-resources-page .no-resources h3{color:#f9fafb}[data-theme=dark] .training-resources-page .error{background:#7f1d1d;color:#fecaca}[data-theme=dark] .session-scheduler .loading-state{background:transparent}[data-theme=dark] .session-scheduler .loading-state p{color:#9ca3af}[data-theme=dark] .client-tasks-page .loading-state{background:transparent}[data-theme=dark] .client-tasks-page .page-header h1{color:#f9fafb}[data-theme=dark] .client-tasks-page .page-header p{color:#9ca3af}[data-theme=dark] .client-task-card{background:#1f2937;border-color:#374151}[data-theme=dark] .client-task-header{border-color:#374151}[data-theme=dark] .client-task-title h3{color:#f9fafb}[data-theme=dark] .client-task-meta{color:#9ca3af}[data-theme=dark] .client-task-details{background:#374151;border-color:#4b5563}[data-theme=dark] .client-task-description h4,[data-theme=dark] .client-task-instructions h4,[data-theme=dark] .client-task-progress-section h4,[data-theme=dark] .client-task-notes h4{color:#f9fafb}[data-theme=dark] .client-task-description p,[data-theme=dark] .client-task-instructions p{color:#d1d5db}[data-theme=dark] .client-tasks-empty,[data-theme=dark] .client-tasks-error{color:#9ca3af}[data-theme=dark] .note-item{background:#1f2937;border-color:#4b5563}[data-theme=dark] .note-item p{color:#d1d5db}[data-theme=dark] .note-meta{color:#9ca3af}[data-theme=dark] .add-note textarea{background:#1f2937;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .no-notes{color:#6b7280}[data-theme=dark] .consent-forms-page .loading-state,[data-theme=dark] .consent-forms-page{background:transparent}[data-theme=dark] .consent-forms-header h2{color:#f9fafb}[data-theme=dark] .consent-forms-header p{color:#9ca3af}[data-theme=dark] .consent-forms-empty{background:#1f2937;border-color:#374151}[data-theme=dark] .consent-forms-empty h3{color:#f9fafb}[data-theme=dark] .consent-forms-empty p{color:#9ca3af}[data-theme=dark] .consent-form-card,[data-theme=dark] .form-card{background:#1f2937;border-color:#374151}[data-theme=dark] .form-preview{background:#374151;border-color:#4b5563}[data-theme=dark] .meta-item{color:#d1d5db}[data-theme=dark] .meta-value,[data-theme=dark] .consent-form-card-info h3{color:#f9fafb}[data-theme=dark] .consent-form-card-meta{color:#9ca3af}[data-theme=dark] .consent-form-preview{background:#374151}[data-theme=dark] .consent-form-preview strong{color:#f9fafb}[data-theme=dark] .consent-form-preview-content{color:#d1d5db}[data-theme=dark] .consent-modal{background:#1f2937;border-color:#374151}[data-theme=dark] .consent-modal-header{border-color:#374151}[data-theme=dark] .consent-modal-header h3{color:#f9fafb}[data-theme=dark] .consent-modal-close{color:#9ca3af}[data-theme=dark] .consent-modal-close:hover,[data-theme=dark] .consent-modal-body h4{color:#f9fafb}[data-theme=dark] .consent-modal-content{background:#374151;color:#d1d5db}[data-theme=dark] .consent-signature-group label{color:#f9fafb}[data-theme=dark] .consent-modal-footer{border-color:#374151}[data-theme=dark] .dashboard-loading{background:transparent}[data-theme=dark] .dashboard-loading p{color:#9ca3af}[data-theme=dark] .dashboard-loading .loading-spinner{border-color:#374151;border-top-color:#60a5fa}[data-theme=dark] .dashboard,[data-theme=dark] .dashboard .loading-state{background:transparent}[data-theme=dark] .dashboard .loading-state p{color:#9ca3af}[data-theme=dark] .page-loading{background:transparent}[data-theme=dark] .page-loading p{color:#9ca3af}[data-theme=dark] .loading-state{background:transparent}[data-theme=dark] .loading-state p{color:#9ca3af}[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:#f9fafb}[data-theme=dark] .notification-events-tab .events-filters{background:#374151;border-color:#4b5563}[data-theme=dark] .notification-events-tab .events-table-container{border-color:#4b5563}[data-theme=dark] .notification-events-tab .events-table{background:#1f2937}[data-theme=dark] .notification-events-tab .events-table thead{background:#374151}[data-theme=dark] .notification-events-tab .events-table th{color:#d1d5db;border-color:#4b5563}[data-theme=dark] .notification-events-tab .events-table td{color:#d1d5db;border-color:#374151}[data-theme=dark] .notification-events-tab .events-table tbody tr:hover{background:#374151}[data-theme=dark] .notification-events-tab .badge-success{background:#064e3b;color:#a7f3d0;border-color:#065f46}[data-theme=dark] .notification-events-tab .badge-info{background:#1e3a5f;color:#93c5fd;border-color:#1e40af}[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] .client-profile-modal{background:#1f2937;border:1px solid #374151}[data-theme=dark] .client-profile{background:#1f2937}[data-theme=dark] .profile-stats{background:#374151;border-color:#4b5563}[data-theme=dark] .profile-tabs{background:#1f2937;border-color:#374151}[data-theme=dark] .profile-tabs .tab{color:#9ca3af}[data-theme=dark] .profile-tabs .tab:hover{color:#f9fafb;background:#374151}[data-theme=dark] .profile-tabs .tab.active{color:#60a5fa;border-color:#60a5fa}[data-theme=dark] .profile-content{background:#1f2937}[data-theme=dark] .info-section h3{color:#f9fafb}[data-theme=dark] .info-item .label{color:#9ca3af}[data-theme=dark] .info-item .value{color:#f9fafb}[data-theme=dark] .info-section.compact{background:#374151;border-color:#4b5563}[data-theme=dark] .info-section.compact h3{color:#9ca3af}[data-theme=dark] .info-row{border-color:#4b5563}[data-theme=dark] .muted-text{color:#9ca3af}[data-theme=dark] .period-item{background:#1f2937}[data-theme=dark] .period-value{color:#60a5fa}[data-theme=dark] .period-select-row label{color:#f9fafb}[data-theme=dark] .period-select-row select{background:#1f2937;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .consent-form-item{background:#374151;border-color:#4b5563}[data-theme=dark] .consent-form-item.signed{background:#064e3b;border-color:#065f46}[data-theme=dark] .consent-form-info strong{color:#f9fafb}[data-theme=dark] .status-signed{color:#a7f3d0}[data-theme=dark] .status-pending{background:#78350f;color:#fde68a}[data-theme=dark] .status-not-assigned{color:#9ca3af}[data-theme=dark] .preferences-list.compact .preference-item{border-color:#4b5563}[data-theme=dark] .session-card{border-color:#374151}[data-theme=dark] .session-card.expanded,[data-theme=dark] .session-header:hover{background:#111827}[data-theme=dark] .session-card-location{background:#111827}[data-theme=dark] .session-creator,[data-theme=dark] .session-editor,[data-theme=dark] .session-scheduler{background:#1f2937;border-color:#374151}[data-theme=dark] .session-creator-header,[data-theme=dark] .session-editor-header,[data-theme=dark] .session-scheduler-header{border-color:#374151}[data-theme=dark] .animal-session-scheduler .scheduler-header,[data-theme=dark] .session-notes-display,[data-theme=dark] .session-notes-editor{background:#111827;border-color:#374151}[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:#3b82f6}[data-theme=dark] .client-pre-session-notes strong{color:#93c5fd}[data-theme=dark] .client-pre-session-notes p{background:#1e293b;border-left-color:#3b82f6;color:#bfdbfe}[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:#111827;border-color:#374151}[data-theme=dark] .pet-information h4,[data-theme=dark] .session-details strong{color:#f9fafb}[data-theme=dark] .pet-details,[data-theme=dark] .session-details-text{color:#d1d5db}[data-theme=dark] .medical-notes-text{background:#1f2937;border-color:#374151;color:#d1d5db}[data-theme=dark] .session-media-badge,[data-theme=dark] .session-version-badge{background:#374151;color:#d1d5db}[data-theme=dark] .session-close-dropdown{background:#1f2937;border-color:#374151}[data-theme=dark] .close-dropdown-header{border-color:#374151;color:#9ca3af}[data-theme=dark] .close-dropdown-option.cancel{border-color:#374151;color:#9ca3af}[data-theme=dark] .pending-approval-section{background:#422006;border-color:#f59e0b}[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-color:#374151}[data-theme=dark] .calendar-day-header{background:#111827;border-color:#374151;color:#f9fafb}[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}[data-theme=dark] .team-management .filters{background:#1f2937;border-color:#374151}[data-theme=dark] .team-management .filter-group label{color:#f9fafb}[data-theme=dark] .team-management .filter-group input,[data-theme=dark] .team-management .filter-group select{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .team-management .filter-group input:focus,[data-theme=dark] .team-management .filter-group select:focus{border-color:#60a5fa}[data-theme=dark] .team-management .team-list{background:#1f2937;border-color:#374151}[data-theme=dark] .team-management .team-table thead{background:#374151;border-color:#4b5563}[data-theme=dark] .team-management .team-table th{background:#374151;color:#9ca3af;border-color:#4b5563}[data-theme=dark] .team-management .team-table td{border-color:#374151;color:#d1d5db}[data-theme=dark] .team-management .team-table tbody tr{background:#1f2937}[data-theme=dark] .team-management .team-table tbody tr:hover{background:#111827}[data-theme=dark] .team-management .member-name{color:#f9fafb}[data-theme=dark] .team-management .member-email{color:#9ca3af}[data-theme=dark] .team-management .metric-value{color:#f9fafb}[data-theme=dark] .role-card{background:#1f2937;border-color:#374151}[data-theme=dark] .role-card:hover{border-color:#60a5fa}[data-theme=dark] .role-name{color:#f9fafb}[data-theme=dark] .role-inheritance{color:#60a5fa}[data-theme=dark] .role-stats{border-color:#374151}[data-theme=dark] .role-meta{color:#6b7280}[data-theme=dark] .role-details{background:#1f2937;border-color:#374151}[data-theme=dark] .details-header{border-color:#374151}[data-theme=dark] .details-header h3,[data-theme=dark] .details-section h4{color:#f9fafb}[data-theme=dark] .details-section p{color:#9ca3af}[data-theme=dark] .permission-item{background:#374151}[data-theme=dark] .permission-name{color:#d1d5db}[data-theme=dark] .detail-row{border-color:#374151}[data-theme=dark] .role-manager .empty-state{background:#1f2937;border-color:#374151}[data-theme=dark] .role-manager .empty-state h3{color:#f9fafb}[data-theme=dark] .role-manager .empty-state p{color:#9ca3af}[data-theme=dark] .role-form{background:#1f2937}[data-theme=dark] .form-header{border-color:#374151}[data-theme=dark] .form-header h2{color:#f9fafb}[data-theme=dark] .form-header p{color:#9ca3af}[data-theme=dark] .form-section h3,[data-theme=dark] .form-group label{color:#f9fafb}[data-theme=dark] .form-group input[type=text],[data-theme=dark] .form-group textarea,[data-theme=dark] .form-group select{background:#374151;border-color:#4b5563;color:#f9fafb}[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:#60a5fa}[data-theme=dark] .form-group small{color:#9ca3af}[data-theme=dark] .permission-category{background:#111827;border-color:#374151}[data-theme=dark] .category-header{border-color:#374151}[data-theme=dark] .category-title h4{color:#f9fafb}[data-theme=dark] .category-count{background:#374151;color:#d1d5db}[data-theme=dark] .permission-checkbox{background:#1f2937;border-color:#374151}[data-theme=dark] .permission-checkbox:hover{border-color:#60a5fa}[data-theme=dark] .permission-name{color:#f9fafb}[data-theme=dark] .permission-description{color:#9ca3af}[data-theme=dark] .permission-note{color:#fb923c}[data-theme=dark] .form-actions{border-color:#374151}[data-theme=dark] .btn-secondary{background:#374151;color:#f9fafb;border-color:#4b5563}[data-theme=dark] .btn-secondary:hover:not(:disabled){background:#4b5563}[data-theme=dark] .calendar-modal{background:#1f2937}[data-theme=dark] .modal-header h2{color:#f9fafb}[data-theme=dark] .session-count-text,[data-theme=dark] .close-button{color:#9ca3af}[data-theme=dark] .close-button:hover{background:#374151;color:#f9fafb}[data-theme=dark] .no-sessions{color:#9ca3af}[data-theme=dark] .session-card{background:#111827;border-color:#374151}[data-theme=dark] .session-card:hover{border-color:#4b5563}[data-theme=dark] .session-header{border-color:#374151}[data-theme=dark] .session-time{color:#f9fafb}[data-theme=dark] .detail-label{color:#9ca3af}[data-theme=dark] .detail-value{color:#f9fafb}[data-theme=dark] .session-notes{border-color:#374151}[data-theme=dark] .notes-text{color:#d1d5db}[data-theme=dark] .pagination-button{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .pagination-button:hover:not(:disabled){background:#4b5563;border-color:#6b7280}[data-theme=dark] .pagination-info{color:#9ca3af}[data-theme=dark] .modal-body::-webkit-scrollbar-track{background:#111827}[data-theme=dark] .modal-body::-webkit-scrollbar-thumb{background:#4b5563}[data-theme=dark] .modal-body::-webkit-scrollbar-thumb:hover{background:#6b7280}[data-theme=dark] .reschedule-modal-content{background:#1f2937}[data-theme=dark] .reschedule-modal-content h3{color:#f9fafb}[data-theme=dark] .reschedule-modal-content p{color:#9ca3af}[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:#1f2937}[data-theme=dark] .team-management .modal-close{color:#9ca3af}[data-theme=dark] .team-management .modal-close:hover{color:#f9fafb}[data-theme=dark] .session-editor-form,[data-theme=dark] .session-creator-form{background:#1f2937}[data-theme=dark] .session-editor-header h3,[data-theme=dark] .session-creator-header h3{color:#f9fafb}[data-theme=dark] .session-editor-client,[data-theme=dark] .session-creator-client,[data-theme=dark] .session-editor-date{color:#9ca3af}[data-theme=dark] .form-label{color:#f9fafb}[data-theme=dark] .form-textarea,[data-theme=dark] .form-input,[data-theme=dark] .form-select{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .form-textarea:focus,[data-theme=dark] .form-input:focus,[data-theme=dark] .form-select:focus{border-color:#60a5fa}[data-theme=dark] .form-textarea:disabled,[data-theme=dark] .form-input:disabled,[data-theme=dark] .form-select:disabled{background:#1f2937;color:#6b7280}[data-theme=dark] .form-help{color:#9ca3af}[data-theme=dark] .form-error{background:#450a0a;border-color:#dc2626;color:#fecaca}[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-color:#374151}[data-theme=dark] .team-page-title h1{color:#f9fafb}[data-theme=dark] .team-page-title p{color:#9ca3af}[data-theme=dark] .profile-modal{background:#1f2937}[data-theme=dark] .close-btn{color:#9ca3af}[data-theme=dark] .close-btn:hover{background:#374151;color:#f9fafb}[data-theme=dark] .member-name{color:#f9fafb}[data-theme=dark] .member-email{color:#9ca3af}[data-theme=dark] .stat-value{color:#f9fafb}[data-theme=dark] .stat-label{color:#9ca3af}[data-theme=dark] .modal-tabs{background:#111827;border-color:#374151}[data-theme=dark] .tab{color:#9ca3af}[data-theme=dark] .tab:hover{color:#f9fafb;background:#1f2937}[data-theme=dark] .tab.active{color:#60a5fa;border-bottom-color:#60a5fa;background:#1f2937}[data-theme=dark] .team-member-profile-container .modal-content{background:#1f2937}[data-theme=dark] .content-section{background:#111827;border-color:#374151}[data-theme=dark] .content-section h3{color:#f9fafb}[data-theme=dark] .info-item label{color:#9ca3af}[data-theme=dark] .info-item p{color:#f9fafb}[data-theme=dark] .metric-box{background:#1f2937;border-color:#374151}[data-theme=dark] .metric-number{color:#60a5fa}[data-theme=dark] .metric-name{color:#9ca3af}[data-theme=dark] .role-badge{background:#1e3a8a;color:#93c5fd}[data-theme=dark] .permission-item{background:#1f2937;border-color:#374151;color:#d1d5db}[data-theme=dark] .client-item{background:#1f2937;border-color:#374151}[data-theme=dark] .client-name{color:#f9fafb}[data-theme=dark] .client-email{color:#9ca3af}[data-theme=dark] .chart-section{background:#1f2937;border-color:#374151}[data-theme=dark] .chart-section h4{color:#f9fafb}[data-theme=dark] .analytics-table{background:#1f2937;border-color:#374151}[data-theme=dark] .analytics-table h4{color:#f9fafb}[data-theme=dark] .analytics-table th{background:#111827;color:#9ca3af;border-color:#374151}[data-theme=dark] .analytics-table td{color:#d1d5db;border-color:#374151}[data-theme=dark] .analytics-table tr:hover{background:#111827}[data-theme=dark] .comp-card{background:#1f2937;border-color:#374151}[data-theme=dark] .card-value{color:#f9fafb}[data-theme=dark] .card-label{color:#9ca3af}[data-theme=dark] .card-detail{color:#6b7280}[data-theme=dark] .compensation-settings{background:#111827;border-color:#374151}[data-theme=dark] .settings-header h4{color:#f9fafb}[data-theme=dark] .setting-item{background:#1f2937;border-color:#374151}[data-theme=dark] .setting-label{color:#d1d5db}[data-theme=dark] .setting-value{color:#f9fafb}[data-theme=dark] .input-group{background:#374151;border-color:#4b5563}[data-theme=dark] .currency,[data-theme=dark] .unit{background:#1f2937;color:#9ca3af}[data-theme=dark] .input-group input{background:#374151;color:#f9fafb}[data-theme=dark] .modal-footer{background:#111827;border-color:#374151}[data-theme=dark] .team-invitation-modal .modal-content{background:#1f2937}[data-theme=dark] .team-invitation-form .form-group label{color:#f9fafb}[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:#374151;border-color:#4b5563;color:#f9fafb}[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:#60a5fa}[data-theme=dark] .client-assignment .assignment-header h2{color:#f9fafb}[data-theme=dark] .client-assignment .assignment-header p{color:#9ca3af}[data-theme=dark] .client-assignment .member-info{background:#111827}[data-theme=dark] .client-assignment .member-info strong{color:#f9fafb}[data-theme=dark] .client-assignment .search-input{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .client-assignment .search-input:focus{border-color:#60a5fa}[data-theme=dark] .client-assignment .clients-panel{background:#1f2937}[data-theme=dark] .client-assignment .panel-header{background:#111827;border-color:#374151}[data-theme=dark] .client-assignment .panel-title{color:#f9fafb}[data-theme=dark] .client-assignment .panel-count{background:#374151;color:#d1d5db}[data-theme=dark] .client-assignment .client-item{border-color:#374151}[data-theme=dark] .client-assignment .client-item:hover{background:#111827}[data-theme=dark] .client-assignment .client-name{color:#f9fafb}[data-theme=dark] .client-assignment .client-email{color:#9ca3af}[data-theme=dark] .client-assignment .bulk-actions{background:#111827;border-color:#374151}[data-theme=dark] .client-assignment .btn-select-all{background:#1e3a8a;color:#93c5fd}[data-theme=dark] .client-assignment .btn-select-all:hover{background:#1e40af}[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-color:#374151}[data-theme=dark] .client-assignment .empty-state{color:#9ca3af}[data-theme=dark] .role-editor-modal{background:#1f2937}[data-theme=dark] .editor-header{border-color:#374151}[data-theme=dark] .editor-header h2{color:#f9fafb}[data-theme=dark] .editor-content{background:#1f2937}[data-theme=dark] .role-card{background:#111827;border-color:#374151}[data-theme=dark] .role-card:hover{border-color:#4b5563;background:#1f2937}[data-theme=dark] .role-card.selected{border-color:#60a5fa;background:#1e3a8a}[data-theme=dark] .role-label{color:#f9fafb}[data-theme=dark] .role-description{color:#9ca3af}[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:#111827;border-color:#374151}[data-theme=dark] .team-management .page-header h2{color:#f9fafb}[data-theme=dark] .team-management .page-header p{color:#9ca3af}[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:#93c5fd}[data-theme=dark] .team-management .empty-state{color:#9ca3af}[data-theme=dark] .team-management .empty-state h3{color:#f9fafb}[data-theme=dark] .team-management .loading{color:#9ca3af}[data-theme=dark] .team-management .error{background:#450a0a;color:#fecaca}[data-theme=dark] .modal-content{background:#1f2937}[data-theme=dark] .modal-content h2,[data-theme=dark] .modal-content h3{color:#f9fafb}[data-theme=dark] .modal-content p{color:#d1d5db}[data-theme=dark] .modal-header{border-color:#374151}[data-theme=dark] .modal-footer{border-color:#374151;background:#111827}[data-theme=dark] .modal-body{color:#d1d5db}[data-theme=dark] .info-label{color:#9ca3af}[data-theme=dark] .info-value{color:#f9fafb}[data-theme=dark] .info-separator{color:#4b5563}[data-theme=dark] .collapsible-section .section-header.clickable:hover{background:#ffffff0d}[data-theme=dark] .collapse-icon{color:#9ca3af}[data-theme=dark] .role-badge-inline{background:#1e3a8a;color:#93c5fd}[data-theme=dark] .collapsible-content{border-color:#374151}[data-theme=dark] .sessions-page{background:transparent}[data-theme=dark] .sessions-header h2{color:#f9fafb}[data-theme=dark] .session-list{background:#1f2937;border-color:#374151}[data-theme=dark] .session-list-header{background:#111827;border-color:#374151}[data-theme=dark] .session-list-title h3{color:#f9fafb}[data-theme=dark] .session-filters{background:#111827;border-color:#374151}[data-theme=dark] .session-filters .filter-group label{color:#d1d5db}[data-theme=dark] .session-filters .filter-group select,[data-theme=dark] .session-filters .filter-group input{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .session-card{background:#1f2937;border-color:#374151}[data-theme=dark] .session-card:hover,[data-theme=dark] .session-card.expanded{background:#1f2937}[data-theme=dark] .session-header{background:transparent}[data-theme=dark] .session-header:hover{background:#374151}[data-theme=dark] .session-date-primary{color:#f9fafb}[data-theme=dark] .session-date-secondary{color:#9ca3af}[data-theme=dark] .session-notes-preview{color:#d1d5db}[data-theme=dark] .session-meta,[data-theme=dark] .session-media-count,[data-theme=dark] .session-expand-icon{color:#9ca3af}[data-theme=dark] .session-content{background:#1f2937;border-color:#374151}[data-theme=dark] .session-full-date{color:#9ca3af}[data-theme=dark] .session-notes h4,[data-theme=dark] .session-ai-summary h4,[data-theme=dark] .session-media h4{color:#f9fafb}[data-theme=dark] .session-notes-content,[data-theme=dark] .session-ai-content{color:#d1d5db}[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:#9ca3af}[data-theme=dark] .session-card-compact{background:#1f2937;border-color:#374151}[data-theme=dark] .session-card-compact:hover{box-shadow:0 4px 12px #0006}[data-theme=dark] .session-card-header{background:#111827;border-color:#374151}[data-theme=dark] .session-card-body{background:#1f2937}[data-theme=dark] .session-card-time{color:#9ca3af}[data-theme=dark] .participant-name{color:#f9fafb}[data-theme=dark] .participant-pet,[data-theme=dark] .participant-role{color:#9ca3af}[data-theme=dark] .session-card-location{background:#111827;color:#9ca3af}[data-theme=dark] .session-card-notes{color:#d1d5db}[data-theme=dark] .session-card-footer{background:#111827;border-color:#374151}[data-theme=dark] .session-media-badge,[data-theme=dark] .session-version-badge{background:#374151;color:#9ca3af}[data-theme=dark] .session-ai-badge-small{background:#064e3b;color:#6ee7b7}[data-theme=dark] .session-close-dropdown{background:#1f2937;border-color:#374151;box-shadow:0 -4px 12px #0006}[data-theme=dark] .close-dropdown-header{color:#9ca3af;border-color:#374151}[data-theme=dark] .close-dropdown-option{color:#d1d5db}[data-theme=dark] .close-dropdown-option:hover{background:#374151}[data-theme=dark] .close-dropdown-option.cancel{color:#9ca3af;border-color:#374151}[data-theme=dark] .session-creator,[data-theme=dark] .session-editor{background:#1f2937;border-color:#374151}[data-theme=dark] .session-creator-header,[data-theme=dark] .session-editor-header{border-color:#374151}[data-theme=dark] .session-creator-header h3,[data-theme=dark] .session-editor-header h3{color:#f9fafb}[data-theme=dark] .session-creator-client,[data-theme=dark] .session-editor-client,[data-theme=dark] .session-editor-date{color:#9ca3af}[data-theme=dark] .session-creator-actions,[data-theme=dark] .session-editor-actions{border-color:#374151}[data-theme=dark] .session-scheduler{background:#1f2937;border-color:#374151}[data-theme=dark] .session-scheduler-header{border-color:#374151}[data-theme=dark] .session-scheduler-header h3{color:#f9fafb}[data-theme=dark] .session-scheduler-description{color:#9ca3af}[data-theme=dark] .session-scheduler-actions{border-color:#374151}[data-theme=dark] .pet-information{background:#111827;border-color:#374151}[data-theme=dark] .pet-information h4{color:#f9fafb}[data-theme=dark] .pet-details{color:#d1d5db}[data-theme=dark] .pet-details strong{color:#f9fafb}[data-theme=dark] .behavior-tags strong,[data-theme=dark] .medical-conditions strong{color:#d1d5db}[data-theme=dark] .behavior-tag,[data-theme=dark] .behavior-tag-small{background:#1e3a8a;color:#93c5fd}[data-theme=dark] .medical-condition{background:#78350f;color:#fde68a}[data-theme=dark] .medical-notes-text{background:#374151;border-color:#4b5563;color:#d1d5db}[data-theme=dark] .session-details{background:#111827;border-color:#374151}[data-theme=dark] .session-details strong{color:#f9fafb}[data-theme=dark] .session-details-text{color:#d1d5db}[data-theme=dark] .session-notes-editor{background:#111827;border-color:#374151}[data-theme=dark] .session-notes-editor h4{color:#f9fafb}[data-theme=dark] .notes-form .form-group label{color:#d1d5db}[data-theme=dark] .notes-form .form-textarea{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .radio-option{color:#d1d5db}[data-theme=dark] .session-notes-display{background:#111827;border-color:#374151}[data-theme=dark] .session-notes-display h4{color:#f9fafb;border-color:#374151}[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:#1e3a5f;border-color:#1e40af}[data-theme=dark] .client-visibility-info small{color:#93c5fd}[data-theme=dark] .client-pre-session-notes{background:#1e3a5f;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:#111827;border-color:#374151}[data-theme=dark] .version-history h4{color:#f9fafb}[data-theme=dark] .version-item{background:#1f2937;border-color:#374151}[data-theme=dark] .version-number{background:#374151;color:#d1d5db}[data-theme=dark] .version-date,[data-theme=dark] .version-author{color:#9ca3af}[data-theme=dark] .version-notes-preview{color:#d1d5db}[data-theme=dark] .ai-summary-display{background:#064e3b;border-color:#065f46;color:#a7f3d0}[data-theme=dark] .pending-approval-section{background:#78350f;border-color:#f59e0b}[data-theme=dark] .pending-approval-header h3{color:#fde68a}[data-theme=dark] .pending-approval-header p{color:#fef3c7}[data-theme=dark] .pending-session-card{background:#1f2937;border-color:#f59e0b}[data-theme=dark] .pending-session-info h4{color:#f9fafb}[data-theme=dark] .pending-session-date,[data-theme=dark] .pending-session-trainer{color:#9ca3af}[data-theme=dark] .pending-session-pet{color:#d1d5db}[data-theme=dark] .pending-session-actions,[data-theme=dark] .pending-session-details{border-color:#374151}[data-theme=dark] .pending-session-duration,[data-theme=dark] .pending-session-location{color:#9ca3af}[data-theme=dark] .pending-session-notes{color:#d1d5db}[data-theme=dark] .pending-session-notes strong{color:#f9fafb}[data-theme=dark] .session-close-options{background:#111827;border-color:#374151}[data-theme=dark] .session-close-options h4{color:#f9fafb}[data-theme=dark] .session-close-options p{color:#9ca3af}[data-theme=dark] .session-detail-page .header-content h1{color:#f9fafb}[data-theme=dark] .session-detail-page .meta-item{background:#374151;color:#d1d5db}[data-theme=dark] .session-detail-page .session-content{background:#1f2937;border-color:#374151}[data-theme=dark] .session-detail-page .loading-container,[data-theme=dark] .session-detail-page .error-container{color:#9ca3af}[data-theme=dark] .session-detail-page .error-container h2{color:#f87171}[data-theme=dark] .session-detail-page .error-container p{color:#9ca3af}[data-theme=dark] .calendar-view{background:#1f2937;border-color:#374151}[data-theme=dark] .calendar-header{background:#111827;border-color:#374151}[data-theme=dark] .calendar-title h3{color:#f9fafb}[data-theme=dark] .calendar-nav-btn{background:#374151;border-color:#4b5563;color:#d1d5db}[data-theme=dark] .calendar-nav-btn:hover:not(:disabled){background:#4b5563}[data-theme=dark] .calendar-view-toggle{border-color:#4b5563}[data-theme=dark] .calendar-view-btn{background:#374151;color:#d1d5db;border-color:#4b5563}[data-theme=dark] .calendar-view-btn:hover:not(.active){background:#4b5563}[data-theme=dark] .calendar-view-btn.active{background:#3b82f6;color:#fff}[data-theme=dark] .calendar-filter label{color:#9ca3af}[data-theme=dark] .calendar-filter select{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .calendar-grid{background:#374151;border-color:#374151}[data-theme=dark] .calendar-day-header{background:#111827;border-color:#374151;color:#d1d5db}[data-theme=dark] .calendar-time-slot{background:#111827;border-color:#374151;color:#9ca3af}[data-theme=dark] .calendar-cell{background:#1f2937}[data-theme=dark] .calendar-cell.today{background:#1e3a5f}[data-theme=dark] .calendar-cell.other-month{background:#111827}[data-theme=dark] .calendar-date{color:#f9fafb}[data-theme=dark] .calendar-session{background:#1e3a8a;border-left-color:#3b82f6;color:#93c5fd}[data-theme=dark] .calendar-session:hover{background:#1e40af}[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:#9ca3af}[data-theme=dark] .animal-session-scheduler .scheduler-header{background:#111827;border-color:#374151}[data-theme=dark] .animal-session-scheduler .scheduler-header h2{color:#f9fafb}[data-theme=dark] .animal-session-scheduler .animal-info{color:#9ca3af}[data-theme=dark] .meta-badge{background:#374151;color:#d1d5db;border-color:#4b5563}[data-theme=dark] .meta-badge.animal-badge{background:#1e3a8a;color:#93c5fd;border-color:#3b82f6}[data-theme=dark] .meta-badge.date-badge{background:#374151;color:#d1d5db;border-color:#4b5563}[data-theme=dark] .session-trainer{color:#9ca3af}[data-theme=dark] .tags-label{color:#d1d5db}[data-theme=dark] .session-card.past-session{border-left-color:#6b7280}[data-theme=dark] .session-card.past-session .session-date-primary{color:#9ca3af}[data-theme=dark] .messenger-widget{background:#1f2937;box-shadow:0 8px 32px #0006}[data-theme=dark] .contact-list-container{background:#111827}[data-theme=dark] .contact-list-search{background:#1f2937;border-color:#374151}[data-theme=dark] .search-icon{color:#6b7280}[data-theme=dark] .contact-search-input{color:#f9fafb;background:transparent}[data-theme=dark] .contact-search-input::placeholder{color:#6b7280}[data-theme=dark] .search-clear-button{color:#6b7280}[data-theme=dark] .search-clear-button:hover{background:#374151;color:#9ca3af}[data-theme=dark] .contact-section-title{color:#9ca3af}[data-theme=dark] .contact-item{background:#1f2937;border-color:#374151}[data-theme=dark] .contact-item:hover{background:#374151}[data-theme=dark] .contact-item:active{background:#4b5563}[data-theme=dark] .contact-name{color:#f9fafb}[data-theme=dark] .contact-time{color:#6b7280}[data-theme=dark] .contact-preview{color:#9ca3af}[data-theme=dark] .contact-online-indicator{border-color:#1f2937}[data-theme=dark] .contact-list-loading,[data-theme=dark] .contact-list-empty{color:#9ca3af}[data-theme=dark] .contact-list-empty svg{color:#4b5563}[data-theme=dark] .contact-list-empty p{color:#d1d5db}[data-theme=dark] .contact-list-empty span{color:#6b7280}[data-theme=dark] .contact-list-content::-webkit-scrollbar-thumb{background:#4b5563}[data-theme=dark] .contact-list-content::-webkit-scrollbar-thumb:hover{background:#6b7280}[data-theme=dark] .message-thread-container{background:#1f2937}[data-theme=dark] .message-thread-header{background:#1f2937;border-color:#374151}[data-theme=dark] .back-button{color:#9ca3af}[data-theme=dark] .back-button:hover{background:#374151;color:#f9fafb}[data-theme=dark] .thread-info h3{color:#f9fafb}[data-theme=dark] .message-thread-messages{background:#111827}[data-theme=dark] .message-date-divider span{background:#374151;color:#9ca3af}[data-theme=dark] .message-sender{color:#9ca3af}[data-theme=dark] .message-received .message-bubble{background:#374151;color:#f9fafb;border-color:#4b5563}[data-theme=dark] .message-time{color:#6b7280}[data-theme=dark] .typing-dots{background:#374151;border-color:#4b5563}[data-theme=dark] .typing-dots span{background:#6b7280}[data-theme=dark] .typing-text,[data-theme=dark] .message-thread-empty{color:#9ca3af}[data-theme=dark] .message-thread-empty svg{color:#4b5563}[data-theme=dark] .message-thread-empty p{color:#d1d5db}[data-theme=dark] .message-thread-empty span{color:#6b7280}[data-theme=dark] .message-thread-messages::-webkit-scrollbar-thumb{background:#4b5563}[data-theme=dark] .message-thread-messages::-webkit-scrollbar-thumb:hover{background:#6b7280}[data-theme=dark] .message-composer{background:#1f2937;border-color:#374151}[data-theme=dark] .message-attachments{border-color:#374151}[data-theme=dark] .attachment-preview{background:#374151;color:#d1d5db}[data-theme=dark] .attachment-remove{color:#9ca3af}[data-theme=dark] .attachment-remove:hover{background:#4b5563;color:#f9fafb}[data-theme=dark] .emoji-picker{background:#1f2937;border-color:#374151}[data-theme=dark] .emoji-picker-header span{color:#d1d5db}[data-theme=dark] .emoji-picker-close{color:#9ca3af}[data-theme=dark] .emoji-picker-close:hover{background:#374151;color:#f9fafb}[data-theme=dark] .emoji-button:hover{background:#374151}[data-theme=dark] .emoji-button:active{background:#4b5563}[data-theme=dark] .composer-action-button{color:#9ca3af}[data-theme=dark] .composer-action-button:hover{background:#374151;color:#f9fafb}[data-theme=dark] .composer-action-button:active{background:#4b5563}[data-theme=dark] .message-input{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .message-input::placeholder{color:#6b7280}[data-theme=dark] .message-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea33}[data-theme=dark] .character-count{color:#9ca3af;border-color:#374151}[data-theme=dark] .message-input::-webkit-scrollbar-thumb{background:#4b5563}[data-theme=dark] .message-input::-webkit-scrollbar-thumb:hover{background:#6b7280}[data-theme=dark] .session-media{background:#1f2937;border-color:#374151}[data-theme=dark] .session-media-uploader{background:transparent}[data-theme=dark] .media-upload-dropzone{background:#1f2937;border-color:#4b5563}[data-theme=dark] .media-upload-dropzone:hover:not(.disabled){background:#374151;border-color:#60a5fa}[data-theme=dark] .media-upload-dropzone.drag-over{background:#1e3a5f;border-color:#60a5fa}[data-theme=dark] .media-upload-dropzone.disabled{background:#111827}[data-theme=dark] .media-upload-icon{color:#9ca3af}[data-theme=dark] .media-upload-primary{color:#f9fafb}[data-theme=dark] .media-upload-secondary{color:#9ca3af}[data-theme=dark] .media-upload-limit{color:#6b7280}[data-theme=dark] .upload-item{background:#374151;border-color:#4b5563}[data-theme=dark] .upload-name{color:#f9fafb}[data-theme=dark] .upload-size{color:#9ca3af}[data-theme=dark] .upload-progress-bar{background:#4b5563}[data-theme=dark] .upload-remove{color:#6b7280}[data-theme=dark] .upload-remove:hover{color:#f87171}[data-theme=dark] .session-media-gallery{background:transparent}[data-theme=dark] .media-gallery-item{background:#374151;border-color:#4b5563}[data-theme=dark] .media-gallery-skeleton{background:#374151}[data-theme=dark] .skeleton-loader{background:linear-gradient(90deg,#374151,#4b5563 20%,#374151 40% 100%);background-size:200% 100%}[data-theme=dark] .media-gallery-empty{color:#6b7280}[data-theme=dark] .media-gallery-empty-icon{color:#4b5563}[data-theme=dark] .media-control-btn{background:#1f2937e6;color:#f9fafb}[data-theme=dark] .media-control-btn:hover{background:#374151}[data-theme=dark] .media-control-btn.delete:hover{background:#7f1d1d;color:#fca5a5}[data-theme=dark] .delete-confirmation-dialog{background:#1f2937;border:1px solid #374151}[data-theme=dark] .delete-confirmation-title{color:#f9fafb}[data-theme=dark] .delete-confirmation-message{color:#d1d5db}[data-theme=dark] .delete-confirmation-btn{background:#374151;border-color:#4b5563;color:#d1d5db}[data-theme=dark] .delete-confirmation-btn:hover{background:#4b5563}[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] .trainer-earnings-report{background:transparent}[data-theme=dark] .trainer-earnings-report .report-header h2{color:#f9fafb}[data-theme=dark] .trainer-earnings-report .report-description{color:#9ca3af}[data-theme=dark] .trainers-table thead{background:#374151!important}[data-theme=dark] .trainers-table th{color:#d1d5db!important;border-color:#4b5563;background:#374151}[data-theme=dark] .trainers-table td{color:#d1d5db;border-color:#374151}[data-theme=dark] .trainer-info .trainer-name{color:#f9fafb}[data-theme=dark] .trainer-info .trainer-email{color:#9ca3af}[data-theme=dark] .trainers-table .rate-type{color:#6b7280}[data-theme=dark] .trainers-table .revenue-cell{color:#4ade80}[data-theme=dark] .trainers-table .paid-cell{color:#fbbf24}[data-theme=dark] .trainers-table .profit-cell .positive{color:#60a5fa}[data-theme=dark] .trainers-table .profit-cell .negative{color:#f87171}[data-theme=dark] .trainers-table .margin-cell .positive{color:#c084fc}[data-theme=dark] .trainers-table .margin-cell .negative{color:#f87171}[data-theme=dark] .business-metrics-report{background:transparent}[data-theme=dark] .business-metrics-report .report-header h2{color:#f9fafb}[data-theme=dark] .business-metrics-report .date-range-selector label{color:#d1d5db}[data-theme=dark] .business-metrics-report .date-range-selector input[type=date],[data-theme=dark] .business-metrics-report .export-controls select{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .metric-card{background:#1f2937;border-color:#374151}[data-theme=dark] .metric-card h3{color:#9ca3af}[data-theme=dark] .metric-value{color:#f9fafb}[data-theme=dark] .metric-description{color:#6b7280}[data-theme=dark] .chart-container{background:#1f2937;border-color:#374151}[data-theme=dark] .chart-container h3{color:#f9fafb}[data-theme=dark] .insights-section{background:#1f2937;border-color:#374151}[data-theme=dark] .insights-section h3{color:#f9fafb}[data-theme=dark] .insight-positive{background:#064e3b;color:#a7f3d0;border-left-color:#10b981}[data-theme=dark] .insight-warning{background:#78350f;color:#fde68a;border-left-color:#f59e0b}[data-theme=dark] .reports-dashboard{background:transparent}[data-theme=dark] .reports-dashboard .header-content h1{color:#f9fafb}[data-theme=dark] .reports-dashboard .header-subtitle{color:#9ca3af}[data-theme=dark] .report-card{background:#1f2937;border-color:#374151}[data-theme=dark] .report-card:hover{border-color:#60a5fa;box-shadow:0 4px 12px #60a5fa26}[data-theme=dark] .report-title{color:#f9fafb}[data-theme=dark] .report-description{color:#9ca3af}[data-theme=dark] .report-placeholder{background:#1f2937;border-color:#374151}[data-theme=dark] .report-placeholder h3{color:#f9fafb}[data-theme=dark] .report-placeholder p{color:#9ca3af}[data-theme=dark] .no-reports,[data-theme=dark] .no-data{color:#6b7280}: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 #3b82f6;outline-offset:2px}.keyboard-user button:focus,.keyboard-user a:focus,.keyboard-user input:focus,.keyboard-user select:focus,.keyboard-user textarea:focus{box-shadow:0 0 0 3px #3b82f64d}.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{min-height:44px;min-width:44px;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-error:before{content:"⚠️"}.form-help{color:#6b7280;font-size:.875rem;margin-top:.25rem}input:invalid,select:invalid,textarea:invalid{border-color:#dc2626}input:valid,select:valid,textarea:valid{border-color:#10b981}[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 #3b82f6;outline-offset:2px;box-shadow:0 0 0 3px #3b82f64d}}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(--bg-secondary);color:var(--text-primary)}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box}.tenant-calendar-view{background:var(--card-bg, white);border-radius:8px;padding:24px;box-shadow:var(--card-shadow, 0 2px 4px rgba(0, 0, 0, .1));border:1px solid var(--card-border, transparent)}.calendar-header{margin-bottom:24px}.calendar-controls{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.view-toggle{display:flex;gap:8px;background:var(--surface-secondary, #f5f5f5);padding:4px;border-radius:8px}.view-toggle button{padding:8px 16px;border:none;background:transparent;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s;color:var(--text-primary, #333)}.view-toggle button:hover{background:var(--hover-bg, rgba(0, 0, 0, .05))}.view-toggle button.active{background:var(--card-bg, white);box-shadow:var(--shadow-sm, 0 1px 3px rgba(0, 0, 0, .1));color:var(--primary-color, #2563eb)}.month-navigation{display:flex;align-items:center;gap:16px}.current-month{margin:0;font-size:20px;font-weight:600;min-width:200px;text-align:center;color:var(--text-primary, #333)}.nav-button{padding:8px 16px;border:1px solid var(--border-primary, #e5e7eb);background:var(--card-bg, white);border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s;color:var(--text-primary, #333)}.nav-button:hover{background:var(--surface-secondary, #f9fafb);border-color:var(--border-secondary, #d1d5db)}.calendar-loading,.calendar-error{text-align:center;padding:48px 24px;color:var(--text-secondary, #666)}.calendar-loading .spinner{margin:0 auto 16px}.calendar-error{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:1px solid var(--border-primary, #e5e7eb);border-radius:8px;overflow:hidden}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);background:var(--surface-secondary, #f9fafb);border-bottom:1px solid var(--border-primary, #e5e7eb)}.weekday{padding:12px;text-align:center;font-weight:600;font-size:14px;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.5px}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-day{min-height:100px;padding:8px;border-right:1px solid var(--border-primary, #e5e7eb);border-bottom:1px solid var(--border-primary, #e5e7eb);background:var(--card-bg, white);transition:all .2s;position:relative}.calendar-day.other-month{background:var(--surface-secondary, #f9fafb);color:var(--text-tertiary, #9ca3af)}.calendar-day.today{background:var(--primary-light, #eff6ff)}.calendar-day.today .day-number{background:var(--primary-color, #2563eb);color:#fff;border-radius:50%;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;font-weight:600}.calendar-day.has-sessions{cursor:pointer}.calendar-day.has-sessions:hover{background:var(--primary-light, #f0f9ff);box-shadow:inset 0 0 0 2px var(--primary-color, #3b82f6)}.day-number{font-size:14px;font-weight:500;margin-bottom:4px;color:var(--text-primary, #333)}.session-count{font-size:12px;padding:4px 8px;border-radius:4px;text-align:center;margin-top:4px;font-weight:500}.session-count-light{background:#dbeafe;color:#1e40af}.session-count-medium{background:#bfdbfe;color:#1e3a8a}.session-count-bold{background:#3b82f6;color:#fff;font-weight:600}@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:12px}.session-count{font-size:10px;padding:2px 4px}.weekday{padding:8px 4px;font-size:12px}}.calendar-day.blocked,.calendar-day.blocked.today{background:var(--error-bg, #fef2f2)}.blocked-label{position:absolute;bottom:4px;left:4px;right:4px;font-size:10px;padding:3px 6px;border-radius:4px;background:var(--error-color, #dc2626);color:#fff;font-weight:500;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:768px){.blocked-label{font-size:8px;padding:2px 4px}}.toast-container{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:12px;max-width:400px;pointer-events:none}.toast{display:flex;align-items:center;gap:12px;padding:16px;border-radius:8px;box-shadow:0 4px 12px #00000026;background-color:#fff;border-left:4px solid;pointer-events:auto;animation:slideIn .3s ease-out;min-width:300px;max-width:400px}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-success{border-left-color:#10b981}.toast-success .toast-icon{color:#10b981}.toast-error{border-left-color:#ef4444}.toast-error .toast-icon{color:#ef4444}.toast-warning{border-left-color:#f59e0b}.toast-warning .toast-icon{color:#f59e0b}.toast-info{border-left-color:#3b82f6}.toast-info .toast-icon{color:#3b82f6}.toast-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center}.toast-message{flex:1;font-size:14px;line-height:1.5;color:#1f2937;word-break:break-word}.toast-close{flex-shrink:0;background:none;border:none;padding:4px;cursor:pointer;color:#6b7280;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.toast-close:hover{background-color:#f3f4f6;color:#374151}.toast-close:focus{outline:2px solid #3b82f6;outline-offset:2px}@media(max-width:640px){.toast-container{top:10px;right:10px;left:10px;max-width:none}.toast{min-width:auto;max-width:none}}.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:800px;width:100%;max-height:90vh;display:flex;flex-direction:column;animation:modalSlideIn .2s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:24px;border-bottom:1px solid #e5e7eb}.modal-header h2{margin:0 0 4px;font-size:24px;font-weight:600;color:#111827}.session-count-text{margin:0;font-size:14px;color:#6b7280}.close-button{background:none;border:none;font-size:32px;line-height:1;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.close-button:hover{background:#f3f4f6;color:#111827}.modal-body{flex:1;overflow-y:auto;padding:24px}.no-sessions{text-align:center;padding:48px 24px;color:#6b7280}.sessions-list{display:flex;flex-direction:column;gap:16px}.session-card{border:1px solid #e5e7eb;border-radius:8px;padding:16px;background:#fff;transition:all .2s}.session-card:hover{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;border-color:#d1d5db}.session-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #f3f4f6}.session-time{font-size:18px;font-weight:600;color:#111827}.session-status{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-completed{background:#d1fae5;color:#065f46}.status-scheduled{background:#dbeafe;color:#1e40af}.status-pending{background:#fef3c7;color:#92400e}.status-cancelled{background:#fee2e2;color:#991b1b}.status-default{background:#f3f4f6;color:#374151}.session-details{display:flex;flex-direction:column;gap:8px}.detail-row{display:flex;gap:8px;font-size:14px}.detail-label{font-weight:600;color:#6b7280;min-width:120px}.detail-value{color:#111827}.session-notes{margin-top:8px;padding-top:12px;border-top:1px solid var(--border-color, #f3f4f6);background:var(--card-bg, transparent)}.session-notes .detail-label{display:block;margin-bottom:4px;color:var(--text-secondary, #6b7280)}.notes-text{margin:0;font-size:14px;color:var(--text-primary, #4b5563);line-height:1.6;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:12px}.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-secondary{background-color:#6b7280;color:#fff}.session-actions .btn-secondary:hover:not(:disabled){background-color:#4b5563}.session-actions .btn-danger{background-color:#dc2626;color:#fff}.session-actions .btn-danger:hover:not(:disabled){background-color:#b91c1c}.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: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}.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-secondary{background-color:#e5e7eb;color:#374151}.modal-actions .btn-secondary:hover:not(:disabled){background-color:#d1d5db}.modal-actions .btn-primary{background-color:#2563eb;color:#fff}.modal-actions .btn-primary:hover:not(:disabled){background-color:#1d4ed8}.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{font-size:13px}.reschedule-banner-reason{font-size:12px}}.dashboard{display:flex;flex-direction:column;gap:24px;max-width:1400px;margin:0 auto}.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(--primary-light, #eff6ff);color:var(--primary-color, #2563eb);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}.dashboard-main{display:flex;flex-direction:column;gap:24px}.dashboard-sidebar{display:flex;flex-direction:column;gap:20px}.dashboard-card{background-color:var(--card-bg, #ffffff);border:1px solid var(--card-border, #e5e7eb);border-radius:12px;padding:24px;box-shadow:var(--card-shadow, 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06))}.card-title{font-size:18px;font-weight:600;color:var(--text-primary, #1f2937);margin:0 0 16px}.stat-card{padding:20px;background-color:var(--card-bg, #ffffff);border:1px solid var(--card-border, #e5e7eb);border-radius:12px}.stat-content{display:flex;flex-direction:column;gap:12px}.stat-header{display:flex;justify-content:space-between;align-items:center}.stat-title{font-size:14px;font-weight:500;color:var(--text-secondary, #6b7280);margin:0}.stat-icon{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff}.stat-icon-blue{background-color:#3b82f6}.stat-icon-green{background-color:#10b981}.stat-icon-orange{background-color:#f59e0b}.stat-icon-purple{background-color:#8b5cf6}.stat-icon-red{background-color:#ef4444}.stat-value{font-size:32px;font-weight:700;color:var(--text-primary, #1f2937);line-height:1}.stat-trend{font-size:14px;color:var(--text-secondary, #6b7280)}.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:#6b7280;font-size:16px;margin:0}.dashboard-error{text-align:center;padding:60px 20px}.dashboard-error h2{color:#dc2626;margin-bottom:12px}.dashboard-error p{color:#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:#d1fae5;color:#065f46}.status-blue{background-color:#dbeafe;color:#1e40af}.status-orange{background-color:#fed7aa;color:#9a3412}.status-red{background-color:#fecaca;color:#991b1b}.status-gray{background-color:#f3f4f6;color:#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)}.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(--primary-color, #3b82f6);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-sessions-row{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.sessions-pending-card{min-height:280px}.sessions-list{display:flex;flex-direction:column;gap:8px}.session-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;background-color:var(--surface-secondary, #f9fafb);transition:all .2s}.session-item-clickable{text-decoration:none;cursor:pointer}.session-item-clickable:hover{background-color:var(--hover-bg, #f3f4f6);border-color:var(--border-secondary, #d1d5db);transform:translate(2px)}.session-info{display:flex;flex-direction:column;gap:2px}.session-client{font-size:15px;font-weight:600;color:var(--text-primary, #1f2937)}.session-pet,.session-type{font-size:13px;color:var(--text-secondary, #6b7280)}.session-meta{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.session-date{font-size:13px;color:var(--text-secondary, #6b7280)}.session-action-hint{font-size:12px;color:var(--primary-color, #3b82f6);font-weight:500}.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:1px solid var(--border-primary, #e5e7eb);background-color:var(--card-bg, #ffffff);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(--surface-secondary, #f9fafb);border-color:var(--border-secondary, #d1d5db);color:var(--text-primary, #1f2937)}.action-button:active{background-color:var(--hover-bg, #f3f4f6)}.monthly-calendar{background-color:var(--card-bg, #ffffff);border:1px solid var(--card-border, #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-color:var(--surface-secondary, #f9fafb);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-bg, #ffffff)}.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(--primary-light, #eff6ff)}.calendar-day.today .calendar-day-number{color:var(--primary-color, #2563eb)}.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:#dbeafe;color:#1e40af}.calendar-event.task{background-color:#fed7aa;color:#9a3412}.calendar-event.meeting{background-color:#d1fae5;color:#065f46}.calendar-event.appointment{background-color:#e0e7ff;border-left:3px solid #4f46e5;color:#3730a3}.calendar-event.timeblock{background-color:#fee2e2;border-left:3px solid #dc2626;color:#991b1b}.calendar-event.timeblock.busy{background-color:#fef3c7;border-left-color:#f59e0b;color:#92400e}.calendar-event.timeblock.unavailable{background-color:#fee2e2;border-left-color:#dc2626;color:#991b1b}.event-time{font-size:11px;font-weight:600}.event-title{font-size:12px;margin-top:2px}.event-subtitle{font-size:10px;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:10px;padding:2px 4px}}.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)}.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:#3b82f6;color:#fff;font-weight:600;overflow:hidden;flex-shrink:0}.notification-item{display:flex;align-items:flex-start;gap:12px;padding:16px 20px;border-bottom:1px solid #f1f5f9;cursor:pointer;transition:background-color .2s ease;position:relative}.notification-item:hover{background-color:#f8fafc}.notification-item:last-child{border-bottom:none}.notification-item.unread{background-color:#eff6ff}.notification-item.unread:hover{background-color:#dbeafe}.notification-item-icon{flex-shrink:0;margin-top:2px}.notification-icon{display:block}.notification-icon.success{color:#10b981}.notification-icon.info{color:#3b82f6}.notification-icon.warning{color:#f59e0b}.notification-icon.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:#1e293b;word-wrap:break-word}.notification-item.unread .notification-item-message{font-weight:500}.notification-item-time{font-size:12px;color:#64748b}.notification-item-unread-dot{position:absolute;top:20px;right:20px;width:8px;height:8px;background-color:#3b82f6;border-radius:50%;flex-shrink:0}.notification-item:focus{outline:2px solid #3b82f6;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:#fff;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 #e2e8f0}.notification-list-header h3{margin:0;font-size:18px;font-weight:600;color:#1e293b}.mark-all-read-button{display:flex;align-items:center;gap:6px;background:none;border:none;color:#3b82f6;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:#eff6ff}.mark-all-read-button:disabled{opacity:.5;cursor:not-allowed}.notification-list-content{flex:1;overflow-y:auto;max-height:500px}.notification-list-loading,.notification-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:#64748b}.notification-list-loading p,.notification-list-empty p{margin:12px 0 4px;font-size:16px;font-weight:500;color:#334155}.notification-list-empty span{font-size:14px;color:#94a3b8}.load-more-button{width:100%;padding:12px;background:none;border:none;border-top:1px solid #e2e8f0;color:#3b82f6;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:#f8fafc}.load-more-button:disabled{opacity:.5;cursor:not-allowed}.notification-list-content::-webkit-scrollbar{width:6px}.notification-list-content::-webkit-scrollbar-track{background:#f1f5f9}.notification-list-content::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.notification-list-content::-webkit-scrollbar-thumb:hover{background:#94a3b8}.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:#64748b;transition:all .2s ease}.notification-bell-button:hover{background-color:#f1f5f9;color:#334155}.notification-bell-button:active{transform:scale(.95)}.notification-badge{position:absolute;top:4px;right:4px;background-color:#ef4444;color:#fff;font-size:10px;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}.header{background-color:var(--header-bg);border-bottom:1px solid var(--header-border);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,.header-logo{display:flex;align-items:center}.logo-image{height:32px;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}.user-info{display:none}.user-button{padding:8px}}.refresh-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:8px;background-color:transparent;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.refresh-button:hover{background-color:var(--hover-bg);color:var(--text-primary)}.refresh-button:disabled{opacity:.5;cursor:not-allowed}.refresh-icon{transition:transform .2s ease}.refresh-icon.spinning{animation:spin 1s linear infinite}.sidebar{width:256px;background-color:var(--bg-primary);border-right:1px solid var(--border-primary);display:flex;flex-direction:column;overflow-y:auto}.sidebar-nav{flex:1;padding:16px 0}.sidebar-list{list-style:none;margin:0;padding:0}.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-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}@media(max-width:1024px){.sidebar{width:200px}}@media(max-width:768px){.sidebar{position:fixed;left:-256px;top:64px;height:calc(100vh - 64px);z-index:30;transition:left .3s}.sidebar.sidebar-open{left:0}}.layout{display:flex;flex-direction:column;height:100vh;background-color:var(--bg-secondary)}.layout-body{display:flex;flex:1;overflow:hidden}.layout-main{flex:1;display:flex;flex-direction:column;overflow:hidden}.layout-content{flex:1;padding:24px;overflow-y:auto;background-color:var(--bg-primary);margin:16px;border-radius:8px;box-shadow:var(--card-shadow)}@media(max-width:768px){.layout-content{margin:8px;padding:16px}}.auth-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px;background:linear-gradient(135deg,var(--primary-color) 0%,#764ba2 100%)}[data-theme=dark] .auth-container{background:linear-gradient(135deg,#1e3a5f,#312e81)}.auth-card{background-color:var(--card-bg);border:1px solid var(--card-border);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}}.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:#2c3e50}.create-task-button{background:#3498db;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-weight:500;transition:background-color .2s}.create-task-button:hover{background:#2980b9}.task-filters{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}.filter-button{background:#ecf0f1;border:1px solid #bdc3c7;padding:8px 16px;border-radius:20px;cursor:pointer;transition:all .2s;font-size:14px}.filter-button:hover{background:#d5dbdb}.filter-button.active{background:#3498db;color:#fff;border-color:#3498db}.task-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.create-first-task-button{background:#27ae60;color:#fff;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:#7f8c8d}.error-message{background:#e74c3c;color:#fff;padding:15px;border-radius:6px;margin-bottom:20px}.retry-button{background:#fff;color:#e74c3c;border:1px solid white;padding:8px 16px;border-radius:4px;cursor:pointer;margin-top:10px}.task-card{background:#fff;border:1px solid #e1e8ed;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a;transition:box-shadow .2s}.task-card:hover{box-shadow:0 4px 8px #00000026}.task-card.overdue{border-left:4px solid #e74c3c}.task-card-header{margin-bottom:15px}.task-title-section{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.task-title{margin:0 10px 0 0;color:#2c3e50;font-size:18px;flex:1}.task-status{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500;text-transform:uppercase;white-space:nowrap}.task-due-date{font-size:14px;color:#7f8c8d;display:flex;align-items:center;gap:10px}.overdue-indicator{background:#e74c3c;color:#fff;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:700}.task-description{color:#34495e;margin-bottom:15px;line-height:1.5}.task-resources{margin-bottom:15px}.task-resources h4{margin:0 0 8px;font-size:14px;color:#2c3e50}.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:#e74c3c;color:#fff}.resource-link.video{background:#9b59b6;color:#fff}.resource-link.link{background:#3498db;color:#fff}.task-actions{display:flex;justify-content:space-between;align-items:center;margin-top:15px}.details-button{background:none;border:1px solid #bdc3c7;padding:6px 12px;border-radius:4px;cursor:pointer;color:#7f8c8d;font-size:12px}.details-button:hover{background:#ecf0f1}.status-actions{display:flex;gap:8px}.start-button{background:#f39c12;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:12px;font-weight:500}.start-button:hover{background:#e67e22}.complete-button{background:#27ae60;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:12px;font-weight:500}.complete-button:hover{background:#229954}.task-details{margin-top:20px;padding-top:20px;border-top:1px solid #ecf0f1}.task-instructions{margin-bottom:20px}.task-instructions h4{margin:0 0 8px;color:#2c3e50}.task-instructions p{color:#34495e;line-height:1.6;margin:0}.task-metadata{margin-top:15px;font-size:12px;color:#7f8c8d}.task-metadata p{margin:4px 0}.task-creator{background:#fff;border:1px solid #e1e8ed;border-radius:8px;padding:20px;margin-bottom:20px;box-shadow:0 2px 8px #0000001a}.task-creator-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.task-creator-header h3{margin:0;color:#2c3e50}.close-button{background:none;border:none;font-size:24px;cursor:pointer;color:#7f8c8d;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.close-button:hover{color:#e74c3c}.task-form{display:flex;flex-direction:column;gap:20px}.form-group label{margin-bottom:5px;font-weight:500;color:#2c3e50}.form-group input,.form-group textarea,.form-group select{padding:10px;border:1px solid #bdc3c7;border-radius:4px;font-size:14px}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#3498db;box-shadow:0 0 0 2px #3498db33}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.resources-section{margin-top:10px}.selected-resources{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.selected-resource{display:flex;align-items:center;background:#ecf0f1;padding:6px 10px;border-radius:20px;font-size:12px;gap:8px}.resource-title{color:#2c3e50}.remove-resource{background:none;border:none;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:#ecf0f1;border:1px dashed #bdc3c7;padding:10px 16px;border-radius:4px;cursor:pointer;color:#7f8c8d;font-size:14px}.add-resources-button:hover{background:#d5dbdb}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.cancel-button{background:#ecf0f1;border:1px solid #bdc3c7;padding:10px 20px;border-radius:4px;cursor:pointer;color:#7f8c8d}.cancel-button:hover{background:#d5dbdb}.create-button{background:#3498db;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-weight:500}.create-button:hover{background:#2980b9}.create-button:disabled{background:#bdc3c7;cursor:not-allowed}.task-progress{margin:20px 0}.task-progress h4{margin:0 0 15px;color:#2c3e50}.progress-bar-container{display:flex;align-items:center;gap:10px;margin-bottom:15px}.progress-bar{flex:1;height:8px;background:#ecf0f1;border-radius:4px;overflow:hidden}.progress-fill{height:100%;transition:width .3s ease}.progress-percentage{font-size:12px;font-weight:500;color:#7f8c8d;min-width:35px}.progress-notes-section{margin-bottom:15px}.progress-notes-section label{display:block;margin-bottom:5px;font-weight:500;color:#2c3e50}.progress-notes-section textarea{width:100%;padding:10px;border:1px solid #bdc3c7;border-radius:4px;resize:vertical;font-family:inherit}.update-notes-button{background:#3498db;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:12px;margin-top:8px}.update-notes-button:hover{background:#2980b9}.update-notes-button:disabled{background:#bdc3c7;cursor:not-allowed}.completion-info{background:#d5f4e6;padding:10px;border-radius:4px;margin-bottom:10px}.completion-info p{margin:0;color:#27ae60;font-size:12px}.progress-metadata{font-size:12px;color:#7f8c8d}.progress-metadata p{margin:4px 0}.progress-loading,.progress-error{padding:15px;text-align:center;color:#7f8c8d;font-size:14px}.progress-error{color:#e74c3c}@media(max-width:768px){.task-grid,.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}}.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:#2c3e50}.upload-resource-button{background:#27ae60;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-weight:500;transition:background-color .2s}.upload-resource-button:hover{background:#229954}.resource-filters{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:20px;padding:15px;background:#f8f9fa;border-radius:8px}.filter-section{display:flex;flex-direction:column;gap:5px}.filter-section label{font-weight:500;color:#2c3e50;font-size:14px}.category-filter,.filter-section select{padding:8px 12px;border:1px solid #bdc3c7;border-radius:4px;background:#fff;min-width:150px}.type-filters{display:flex;gap:8px;flex-wrap:wrap}.type-filter{background:#ecf0f1;border:1px solid #bdc3c7;padding:6px 12px;border-radius:20px;cursor:pointer;transition:all .2s;font-size:12px}.type-filter:hover{background:#d5dbdb}.type-filter.active{background:#3498db;color:#fff;border-color:#3498db}.search-input{padding:8px 12px;border:1px solid #bdc3c7;border-radius:4px;min-width:200px}.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:#7f8c8d}.upload-first-resource-button{background:#27ae60;color:#fff;border:none;padding:12px 24px;border-radius:6px;cursor:pointer;font-weight:500;margin-top:10px}.resource-card{background:var(--card-bg, white);border:1px solid var(--border-color, #e1e8ed);border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a;transition:box-shadow .2s;position:relative}.resource-card:hover{box-shadow:0 4px 8px #00000026}.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, #333)}.type-label{color:#fff;padding:4px 8px;border-radius:12px;font-size:10px;font-weight:700}.resource-actions{display:flex;gap:8px}.select-button,.open-button,.delete-button{padding:6px 12px;border-radius:4px;cursor:pointer;font-size:12px;font-weight:500;border:none;transition:background-color .2s}.select-button{background:#3498db;color:#fff}.select-button:hover{background:#2980b9}.open-button{background:#27ae60;color:#fff}.open-button:hover{background:#229954}.delete-button{background:#e74c3c;color:#fff}.delete-button:hover{background:#c0392b}.resource-content{flex:1}.resource-title{margin:0 0 10px;color:#2c3e50;font-size:18px;line-height:1.3}.resource-description{color:#34495e;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:#7f8c8d}.metadata-item strong{color:#2c3e50}.resource-tags{display:flex;flex-wrap:wrap;gap:6px}.tag{background:#ecf0f1;color:#7f8c8d;padding:2px 8px;border-radius:12px;font-size:11px}.delete-confirm-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.delete-confirm-dialog{background:#fff;padding:20px;border-radius:8px;max-width:400px;width:90%}.delete-confirm-dialog h4{margin:0 0 10px;color:#2c3e50}.delete-confirm-dialog p{margin:0 0 20px;color:#34495e}.confirm-actions{display:flex;justify-content:flex-end;gap:10px}.confirm-delete-button{background:#e74c3c;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer}.confirm-delete-button:hover{background:#c0392b}.confirm-delete-button:disabled{background:#bdc3c7;cursor:not-allowed}.resource-upload{background:#fff;border:1px solid #e1e8ed;border-radius:8px;padding:20px;margin-bottom:20px;box-shadow:0 2px 8px #0000001a}.resource-upload-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.resource-upload-header h3{margin:0;color:#2c3e50}.resource-form{display:flex;flex-direction:column;gap:20px}.file-upload-alternative{margin-top:10px;padding-top:10px;border-top:1px solid #ecf0f1}.file-upload-alternative p{margin:0 0 8px;font-size:14px;color:#7f8c8d}.file-upload-alternative input{width:100%;padding:8px;border:1px solid #bdc3c7;border-radius:4px}.upload-button{background:#27ae60;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-weight:500}.upload-button:hover{background:#229954}.upload-button:disabled{background:#bdc3c7;cursor:not-allowed}.resource-selector-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.resource-selector{background:#fff;border-radius:8px;width:90%;max-width:800px;max-height:80vh;display:flex;flex-direction:column}.resource-selector-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e1e8ed}.resource-selector-header h3{margin:0;color:#2c3e50}.resource-selector-filters{display:flex;flex-wrap:wrap;gap:15px;padding:15px 20px;background:#f8f9fa;border-bottom:1px solid #e1e8ed}.selection-actions{display:flex;align-items:center;gap:15px;padding:15px 20px;border-bottom:1px solid #e1e8ed}.select-all-button,.deselect-all-button{background:#ecf0f1;border:1px solid #bdc3c7;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:12px}.select-all-button:hover,.deselect-all-button:hover{background:#d5dbdb}.selection-count{font-size:14px;color:#7f8c8d;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 #e1e8ed;border-radius:6px;margin-bottom:10px;cursor:pointer;transition:all .2s}.resource-selector-item:hover{background:#f8f9fa}.resource-selector-item.selected{background:#e3f2fd;border-color:#3498db}.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-title{font-weight:500;color:#2c3e50;flex:1}.resource-type{background:#3498db;color:#fff;padding:2px 6px;border-radius:10px;font-size:10px;font-weight:700}.resource-description{color:#34495e;font-size:14px;margin-bottom:8px;line-height:1.4}.resource-meta{display:flex;gap:15px;font-size:12px;color:#7f8c8d}.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 #e1e8ed}.confirm-button{background:#3498db;color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-weight:500}.confirm-button:hover{background:#2980b9}.confirm-button:disabled{background:#bdc3c7;cursor:not-allowed}@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}}.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:10px}.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%}.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:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;transition:all .2s;min-height:38px}.select-trigger:hover:not(.disabled){border-color:#9ca3af}.select-trigger.open{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.select-value{flex:1;color:#111827;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select-arrow{margin-left:8px;color:#6b7280;font-size:10px;transition:transform .2s}.select-trigger.open .select-arrow{transform:rotate(180deg)}.select-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;z-index:1000;max-height:320px;display:flex;flex-direction:column;animation:dropdownSlideIn .15s ease-out}.select-search{padding:8px;border-bottom:1px solid #e5e7eb;position:sticky;top:0;background:#fff;z-index:1}.select-search input{width:100%;padding:8px 12px;border:1px solid #e5e7eb;border-radius:6px;font-size:14px;outline:none;transition:all .2s}.select-search input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.select-search input::placeholder{color:#9ca3af}.select-options{overflow-y:auto;padding:4px}.select-option{padding:10px 12px;cursor:pointer;border-radius:6px;font-size:14px;color:#111827;transition:background .15s}.select-option:hover:not(.empty){background:#f3f4f6}.select-option.selected{background:#eff6ff;color:#1e40af;font-weight:500}.select-option.empty{color:#6b7280;cursor:default;text-align:center;padding:16px 12px}.select-options::-webkit-scrollbar{width:8px}.select-options::-webkit-scrollbar-track{background:#f3f4f6;border-radius:4px}.select-options::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.select-options::-webkit-scrollbar-thumb:hover{background:#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}.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:12px;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}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.session-creator,.session-editor{background:#fff;border-radius:8px;padding:24px;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-scheduled{background:#dbeafe;color:#1e40af;border:1px solid #93c5fd}.meta-badge.status-pending{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.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 #3b82f61a}.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-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 #e5e7eb;background:#f9fafb}.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:last-child{border-bottom:none}.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-content{padding:0 24px 24px;border-top:1px solid #e5e7eb;background:#fff}.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:400px;line-height:1.5}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:1px solid transparent;border-radius:6px;font-size:.875rem;font-weight:500;text-decoration:none;cursor:pointer;transition:all .2s ease;position:relative;z-index:10}.btn-primary{background:#3b82f6;color:#fff;display:inline-flex;visibility:visible}.btn-link{background:transparent;color:#3b82f6;border:none;padding:4px 8px}.btn-link:hover:not(:disabled){color:#2563eb;text-decoration:underline}.btn-sm{padding:6px 12px;font-size:.75rem}.session-scheduler{background:#fff;border-radius:8px;padding:24px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px}.session-scheduler-header{margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e5e7eb}.session-scheduler-header h3{margin:0 0 4px;font-size:1.25rem;font-weight:600;color:#111827}.session-scheduler-description{margin:0;color:#6b7280;font-size:.875rem}.session-scheduler-form{display:flex;flex-direction:column;gap:20px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.form-select,.form-input{padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;font-family:inherit;background:#fff;width:100%}.form-select:focus,.form-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-select:disabled,.form-input:disabled{background-color:#f9fafb;color:#6b7280;cursor:not-allowed}.required{color:#dc2626}.session-scheduler-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid #e5e7eb}.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;background:#f9fafb}.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:#e5e7eb;border:1px solid #e5e7eb;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-editor,.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:#dbeafe;color:#1e40af;padding:2px 6px;border-radius:4px;font-size:.75rem;font-weight:500}.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 #3b82f61a}.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-success{background-color:#059669;color:#fff;border:1px solid #059669}.btn-success:hover{background-color:#047857;border-color:#047857}.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}.session-card:hover .session-quick-actions{opacity:1}.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}.btn-xs:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.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}.behavior-tag{background:#dbeafe;color:#1e40af;padding:4px 8px;border-radius:12px;font-size:12px;font-weight:500}.medical-condition{background:#fef3c7;color:#92400e;padding:4px 8px;border-radius:12px;font-size:12px;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:12px;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:#fef3c7;border:1px solid #f59e0b;border-radius:8px;padding:1.5rem;margin-bottom:2rem}.pending-approval-header{margin-bottom:1rem}.pending-approval-header h3{color:#92400e;margin:0 0 .5rem;font-size:1.25rem}.pending-approval-header p{color:#78350f;margin:0;font-size:.9rem}.pending-sessions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1rem}.pending-session-card{background:#fff;border:1px solid #f59e0b;border-radius:6px;padding:1rem;display:flex;flex-direction:column}.pending-session-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.pending-session-info h4{margin:0 0 .25rem;color:#1f2937;font-size:1rem}.pending-session-date{color:#6b7280;font-size:.875rem;margin:0 0 .25rem}.pending-session-trainer{color:#374151;font-size:.875rem;margin:0 0 .25rem}.trainer-info-with-avatar{display:inline-flex;align-items:center;gap:8px}.pending-session-pet{color:#374151;font-size:.875rem;margin:0}.pending-session-actions{display:flex;gap:.5rem;justify-content:center;margin-top:1rem;padding-top:1rem;border-top:1px solid #f3f4f6}.pending-session-details{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;padding-top:.75rem;border-top:1px solid #f3f4f6}.pending-session-duration,.pending-session-location{font-size:.875rem;color:#6b7280}.pending-session-notes{width:100%;font-size:.875rem;color:#374151;margin-top:.5rem}.pending-session-notes strong{color:#1f2937}.modal-content{background:#fff;border-radius:8px;padding:2rem;max-width: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}.btn-danger{background-color:#dc2626;color:#fff;border:1px solid #dc2626}.btn-danger:hover:not(:disabled){background-color:#b91c1c;border-color:#b91c1c}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.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(320px,1fr));gap:20px;margin-top:20px}.session-card-compact{overflow:hidden;transition:all .2s ease;display:flex;flex-direction:column}.session-card-compact:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.session-card-compact.past-session{opacity:.85}.session-card-header{display:flex;justify-content:space-between;align-items:flex-start;padding:16px;border-bottom:1px solid #f3f4f6;background:#f9fafb}.session-card-date{display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:8px;padding:8px 12px;min-width:60px}.session-date-day{font-size:24px;font-weight:700;line-height:1}.session-date-month{font-size:12px;font-weight:500;text-transform:uppercase;margin-top:2px}.session-card-status{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.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:#f3f4f6;border-radius:4px;font-size:12px;color:#6b7280;font-weight:500}.session-card-body{padding:16px;flex:1;display:flex;flex-direction:column;gap:12px}.session-card-time{font-size:14px;color:#6b7280;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:600;color:#111827;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.participant-pet,.participant-role{font-size:12px;color:#6b7280;display:flex;align-items:center;gap:4px;margin-top:2px}.session-card-location{display:flex;align-items:center;gap:6px;font-size:13px;color:#6b7280;padding:8px;background:#f9fafb;border-radius:6px}.session-card-tags{display:flex;flex-wrap:wrap;gap:6px}.behavior-tag-small{display:inline-block;padding:4px 8px;background:#dbeafe;color:#1e40af;border-radius:4px;font-size:11px;font-weight:500}.session-card-notes{font-size:14px;color:#4b5563;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:#f0fdf4;color:#166534;border-radius:4px;font-size:11px;font-weight:500}.session-card-footer{padding:12px 16px;border-top:1px solid #f3f4f6;background:#fafafa;position:relative}.btn-block{width:100%;justify-content:center}.session-card-quick-actions{display:flex;gap:6px;margin-top:8px;justify-content:flex-end}.session-close-dropdown{position:absolute;bottom:100%;left:16px;right:16px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 -4px 12px #00000026;padding:8px;margin-bottom:8px;z-index:10}.close-dropdown-header{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;padding:8px;border-bottom:1px solid #f3f4f6;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:#374151;cursor:pointer;transition:background .15s ease;text-align:left}.close-dropdown-option:hover{background:#f3f4f6}.close-dropdown-option.cancel{color:#6b7280;border-top:1px solid #f3f4f6;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:var(--error-bg, #fef2f2)!important;color:var(--error-color, #dc2626)!important;cursor:not-allowed}.blocked-reason{position:absolute;bottom:2px;left:2px;right:2px;font-size:8px;padding:2px 4px;border-radius:3px;background:var(--error-color, #dc2626);color:#fff;font-weight:500;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}@media(max-width:768px){.blocked-reason{font-size:6px;padding:1px 2px}}.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:#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{max-width:500px;max-height:90vh;display:flex;flex-direction:column}.add-animal-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #e5e7eb}.add-animal-modal .modal-header h2{margin:0;font-size:20px;font-weight:600;color:#1f2937}.add-animal-modal .modal-close-btn{background:none;border:none;font-size:28px;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s,color .2s}.add-animal-modal .modal-close-btn:hover{background-color:#f3f4f6;color:#1f2937}.add-animal-modal .modal-body{flex:1;overflow-y:auto;padding:24px}.add-animal-modal .form-group{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.add-animal-modal .form-group label{font-size:14px;font-weight:500;color:#374151}.add-animal-modal .form-group input,.add-animal-modal .form-group textarea,.add-animal-modal .form-group select{padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;transition:border-color .2s,box-shadow .2s}.add-animal-modal .form-group input:focus,.add-animal-modal .form-group textarea:focus,.add-animal-modal .form-group select:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.add-animal-modal .form-group input:disabled,.add-animal-modal .form-group textarea:disabled,.add-animal-modal .form-group select:disabled{background-color:#f9fafb;color:#9ca3af;cursor:not-allowed}.add-animal-modal .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.add-animal-modal .form-row .form-group{margin-bottom:0}.add-animal-modal textarea{resize:vertical;min-height:80px}.goal-input-group{display:flex;gap:8px}.goal-input-group input{flex:1;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.goal-input-group input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.goal-input-group .btn{min-width:80px}.goals-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.goal-item{display:flex;align-items:center;gap:8px;padding:6px 12px;background-color:#dbeafe;border-radius:6px;font-size:13px;color:#1e40af}.goal-item .remove-btn{background:none;border:none;color:#1e40af;cursor:pointer;font-size:18px;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:3px;transition:background-color .2s}.goal-item .remove-btn:hover:not(:disabled){background-color:#1e40af1a}.goal-item .remove-btn:disabled{opacity:.5;cursor:not-allowed}.add-animal-modal .modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:24px;border-top:1px solid #e5e7eb;background-color:#f9fafb}.add-animal-modal .modal-footer .btn{min-width:100px}@media(max-width:640px){.add-animal-modal{max-width:100%;max-height:100vh;border-radius:0}.add-animal-modal .modal-header,.add-animal-modal .modal-body{padding:16px}.add-animal-modal .modal-footer{padding:16px;flex-direction:column-reverse}.add-animal-modal .modal-footer .btn{width:100%}.add-animal-modal .form-row{grid-template-columns:1fr}}.photo-input{margin-bottom:10px}.photo-preview{display:flex;align-items:center;gap:10px;margin-top:10px;padding:10px;border:1px solid #ddd;border-radius:4px;background-color:#f9f9f9}.preview-image{width:60px;height:60px;object-fit:cover;border-radius:4px;border:1px solid #ddd}.remove-photo-btn{padding:4px 8px;background-color:#dc3545;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:12px}.remove-photo-btn:hover{background-color:#c82333}.remove-photo-btn:disabled{background-color:#6c757d;cursor:not-allowed}.client-profile{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.client-profile-loading,.client-profile-error{text-align:center;padding:3rem}.profile-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1.5rem;display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:1rem;position:relative}.profile-header-content{flex:1;min-width:250px}.profile-title{display:flex;align-items:center;gap:.75rem;margin-bottom:.25rem}.profile-title h2{margin:0;font-size:1.5rem}.profile-email,.profile-phone{margin:.1rem 0;opacity:.9;font-size:.95rem}.profile-actions{display:flex;gap:.5rem;flex-wrap:wrap}.profile-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;padding:1rem 1.5rem;background:#f8f9fa;border-bottom:1px solid #e9ecef}.stat-card{text-align:center}.stat-value{font-size:1.5rem;font-weight:700;color:#1a1a1a;margin-bottom:.25rem}.stat-value.negative{color:#dc3545}.stat-label{font-size:.75rem;color:#666;text-transform:uppercase;letter-spacing:.5px}.profile-tabs{display:flex;border-bottom:2px solid #e9ecef;background:#fff;overflow-x:auto}.tab{padding:1rem 1.5rem;border:none;background:none;cursor:pointer;font-size:1rem;font-weight:500;color:#666;border-bottom:3px solid transparent;transition:all .2s;white-space:nowrap}.tab:hover{color:#4a90e2;background:#f8f9fa}.tab.active{color:#4a90e2;border-bottom-color:#4a90e2}.profile-content{padding:1.5rem}.info-section{margin-bottom:1.5rem}.info-section h3{margin:0 0 .75rem;font-size:1.1rem;color:#1a1a1a}.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:#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:#f8f9fa;border-radius:6px}.preference-item .enabled{color:#28a745;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:#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-card:hover{box-shadow:0 4px 12px #0000001a}.animal-photo{width:100%;height:200px;object-fit:cover}.animal-info{padding:1rem}.animal-info h4{margin:0 0 .5rem;font-size:1.25rem;color:#1a1a1a}.animal-goals,.animal-notes{margin-top:1rem}.animal-goals strong,.animal-notes strong{display:block;margin-bottom:.5rem;color:#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{background:#f8f9fa;padding:1.5rem;border-radius:8px;margin-bottom:2rem}.billing-stat{text-align:center}.billing-stat label{display:block;font-weight:600;color:#666;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem}.billing-stat p{margin:0;font-size:2rem;font-weight:700}.billing-stat .positive{color:#28a745}.billing-stat .negative{color:#dc3545}.client-profile-modal{max-width:50vw;width:50vw;max-height:90vh;overflow-y:auto}.client-profile-modal .client-profile{box-shadow:none;border-radius:0}@media(max-width:1200px){.client-profile-modal{max-width:98vw}}@media(max-width:768px){.client-profile-modal{width:100vw;max-width:100vw;max-height:100vh;border-radius:0;padding:.5rem}.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}}.modal-close-btn{position:absolute;top:.75rem;right:.75rem;background:none;border:none;font-size:1.75rem;cursor:pointer;color:#fff;z-index:10;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.modal-close-btn:hover{color:#f0f0f0}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.clientprofile-modal-content{background:#fff;border-radius:8px;padding:0;max-width: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-close{background:none;border:none;font-size:24px;cursor:pointer;color:#666}.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:#1a1a1a}.form-status{font-size:12px;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:12px;border-radius:4px;border:none;cursor:pointer;font-weight:500}.form-actions .btn-primary{background:#007bff;color:#fff}.form-actions .btn-secondary{background:#6c757d;color:#fff}.form-actions .btn:hover{opacity:.9}.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: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:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.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-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem}.overview-column{display:flex;flex-direction:column;gap:1rem}.info-section.compact{padding:1rem;background:var(--bg-secondary, #f8f9fa);border-radius:8px;border:1px solid var(--border-primary, #e9ecef)}.info-section.compact h3{margin:0 0 .75rem;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary, #666)}.info-list{display:flex;flex-direction:column;gap:.5rem}.info-row{display:flex;justify-content:space-between;align-items:center;padding:.375rem 0;border-bottom:1px solid var(--border-primary, #e9ecef)}.info-row:last-child{border-bottom:none}.info-label{font-size:.875rem;color:var(--text-secondary, #666)}.info-value{font-size:.875rem;color:var(--text-primary, #1a1a1a);font-weight:500;text-align:right;max-width:60%;word-break:break-word}.section-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.section-header-row h3{margin:0}.btn-xs{padding:.25rem .5rem;font-size:.75rem}.preferences-list.compact{display:flex;flex-direction:column;gap:.375rem}.preferences-list.compact .preference-item{padding:.375rem 0;border-bottom:1px solid var(--border-primary, #e9ecef)}.preferences-list.compact .preference-item:last-child{border-bottom:none}.custom-periods-summary{font-size:.875rem}.muted-text{color:var(--text-secondary, #666);margin:0}.periods-list{display:flex;flex-direction:column;gap:.375rem}.period-item{display:flex;justify-content:space-between;padding:.375rem .5rem;background:var(--bg-primary, white);border-radius:4px;font-size:.8125rem}.period-value{color:var(--primary, #007bff);font-weight:500}.custom-periods-form{display:flex;flex-direction:column;gap:.75rem}.period-select-row{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.period-select-row label{font-size:.8125rem;color:var(--text-primary, #1a1a1a)}.period-select-row select{padding:.375rem .5rem;font-size:.8125rem;border-radius:4px;border:1px solid var(--border-primary, #ddd);min-width:140px}.period-actions{display:flex;justify-content:flex-end;margin-top:.5rem}.consent-forms-grid{display:flex;flex-direction:column;gap:.5rem}.consent-form-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--bg-secondary, #f8f9fa);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:.5rem}.consent-form-info strong{font-size:.875rem}.required-badge{background:#dc3545;color:#fff;padding:.125rem .375rem;border-radius:10px;font-size:.625rem;font-weight:700;text-transform:uppercase}.consent-form-status{font-size:.8125rem}.status-signed{color:#155724}.status-pending{color:#856404;background:#fff3cd;padding:.25rem .5rem;border-radius:4px;font-weight:500}.status-not-assigned{color:#6c757d}@media(max-width:900px){.overview-grid{grid-template-columns:1fr}}@media(max-width:768px){.info-row{flex-direction:column;align-items:flex-start;gap:.25rem}.info-value{text-align:left;max-width:100%}.period-select-row{flex-direction:column;align-items:flex-start}.period-select-row select{width:100%}.consent-form-item{flex-direction:column;align-items:flex-start;gap:.5rem}}.sessions-list{display:flex;flex-direction:column;gap:1rem}.session-card{background:var(--card-bg, white);border:1px solid var(--card-border, #e5e7eb);border-radius:8px;padding:1rem;box-shadow:var(--shadow-sm, 0 1px 2px rgba(0, 0, 0, .05))}.session-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-primary, #e5e7eb)}.session-animal{display:flex;align-items:center;gap:.5rem}.session-animal .animal-name{font-weight:600;color:var(--text-primary, #111827)}.session-status{padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500;text-transform:capitalize}.session-status.status-completed{background:#d1fae5;color:#065f46}.session-status.status-scheduled{background:#dbeafe;color:#1e40af}.session-status.status-cancelled{background:#fee2e2;color:#991b1b}.session-status.status-in-progress{background:#fef3c7;color:#92400e}.session-details{display:flex;flex-direction:column;gap:.5rem}.session-info-row{display:flex;gap:.5rem}.session-label{font-weight:500;color:var(--text-secondary, #6b7280);min-width:80px}.session-value{color:var(--text-primary, #111827)}.session-notes{margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--border-primary, #e5e7eb)}.session-notes p{margin:.25rem 0 0;color:var(--text-secondary, #6b7280);font-size:.875rem}.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}.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: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:12px;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-btn{background-color:#007bff;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer}.consent-form-details-save-btn:hover{background-color:#0056b3}.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:10px;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:12px;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:1200px;margin:0 auto;padding:24px;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.settings-header{margin-bottom:32px;padding:24px;background:#f8f9fa;border-radius:8px;border-bottom:1px solid #e9ecef}.settings-header h2{margin:0 0 8px;font-size:1.75rem;font-weight:600;color:#212529}.settings-description{margin:0;color:#6c757d;font-size:.875rem;line-height:1.5}.error-message{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24;padding:12px 16px;border-radius:6px;font-size:.875rem;margin-bottom:24px}.success-message{background:#d4edda;border:1px solid #c3e6cb;color:#155724;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:#6c757d}.notification-categories{display:flex;flex-direction:column;gap:16px;margin-bottom:32px}.notification-category{background:#fff;border:1px solid #dee2e6;border-radius:8px;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 #ced4da;border-radius:4px;font-size:.85rem;color:#495057;background:#fff;transition:all .2s ease}.form-control:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff1a}.form-control:disabled{background:#e9ecef;color:#6c757d;cursor:not-allowed}.setting-group select{padding:6px 10px;border:1px solid #ced4da;border-radius:4px;font-size:.85rem;color:#495057;background:#fff;transition:all .2s ease;cursor:pointer}.setting-group select:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff1a}.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 #dee2e6}@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:#f8f9fa;border-bottom:1px solid #dee2e6}.category-header-static h3{margin:0 0 8px;font-size:1.125rem;font-weight:600;color:#212529}.category-header-static .category-description{margin:0;font-size:.875rem;color:#6c757d}.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 #dee2e6;border-radius:8px;margin-bottom:1rem;overflow:visible}.event-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;background-color:#f8f9fa;border-bottom:1px solid #dee2e6}.event-info h4{margin:0 0 .25rem;color:#212529;font-size:1rem;font-weight:600}.event-info p{margin:0;color:#6c757d;font-size:.9rem}.event-toggle{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-weight:500;color:#212529}.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:#212529;font-size:.9rem}.setting-group select{padding:.5rem;border:2px solid #dee2e6;border-radius:6px;font-size:.9rem;background-color:#fff;cursor:pointer;transition:border-color .2s ease}.setting-group select:focus{outline:none;border-color:#007bff}.setting-group textarea{padding:.75rem;border:2px solid #dee2e6;border-radius:6px;font-size:.9rem;font-family:inherit;resize:vertical;min-height:60px;transition:border-color .2s ease}.setting-group textarea:focus{outline:none;border-color:#007bff}.setting-group textarea::placeholder{color:#6c757d}.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 #dee2e6;border-radius:4px;background-color:#fff;transition:all .2s ease;font-size:.85rem}.recipient-checkbox:hover{border-color:#007bff;background-color:#f8f9fa}.recipient-checkbox input[type=checkbox]{width:14px;height:14px;cursor:pointer;margin:0}.recipient-checkbox span{font-size:.85rem;color:#212529;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}.admin-tabs .tab.active{color:#007bff;border-bottom-color:#007bff;font-weight:600}.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:#f8f9fa}.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: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:#f8f9fa}.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:10px;font-weight:700;opacity:1;transition:opacity .2s ease}.toggle-slider:after{content:"OFF";position:absolute;right:4px;top:50%;transform:translateY(-50%);color:#999;font-size:9px;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: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}.form-group{padding:1.25rem;border:1px solid #e0e0e0;border-radius:8px;background:#fff}.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:12px;font-weight:600;color:#555;text-transform:uppercase}.sms-limit-info{font-size:11px;color:#e67e22;background:#fef9e7;padding:4px 6px;border-radius:3px;border-left:3px solid #e67e22}.template-variables-info{font-size:11px;color:#888;background:#f8f9fa;padding:6px 8px;border-radius:3px;border-left:3px solid #007bff}.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 #ced4da;border-radius:4px;background:#fff;cursor:pointer;transition:all .2s ease}.template-selector .searchable-dropdown:hover{border-color:#007bff}.template-search{padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.template-search:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.template-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #ddd;border-radius:4px;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 #eee;cursor:pointer;font-size:.85rem;color:#212529;transition:background .15s ease}.template-dropdown-item:hover{background-color:#f8f9fa}.template-dropdown-item:last-child{border-bottom:none}.selected-template-info{font-size:12px;color:#666;font-style:italic}.followup-settings{max-width: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:#f8f9fa}.badge{display:inline-block;padding:.25rem .5rem;font-size:.75rem;font-weight:600;border-radius:4px}.badge-warning{background:#fff3cd;color:#856404;border:1px solid #ffeaa7}.text-muted{color:#6c757d}.notification-events-tab{max-width: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:1rem;background:#f8f9fa;border:1px solid #dee2e6;border-radius:6px;margin-bottom:1.5rem}.filter-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1rem}.filter-actions{display:flex;justify-content:flex-end;gap:.5rem}.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:#f8f9fa}.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: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}}.client-list{max-width: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{width:100%;padding:.75rem 1rem;border:1px solid var(--input-border, #ddd);border-radius:6px;font-size:1rem;background:var(--input-bg, white);color:var(--text-primary, #333)}.search-input:focus{outline:none;border-color:var(--primary-color, #4a90e2);box-shadow:0 0 0 3px var(--focus-ring, rgba(74, 144, 226, .1))}.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:none;border-color:var(--primary-color, #4a90e2)}.client-table-container{background:var(--card-bg, white);border-radius:8px;box-shadow:var(--card-shadow, 0 1px 3px rgba(0, 0, 0, .1));overflow-x:auto;margin-bottom:1.5rem;border:1px solid var(--card-border, transparent)}.client-table{width:100%;border-collapse:collapse}.client-table thead{background:var(--table-header-bg, #f8f9fa);border-bottom:2px solid var(--table-border, #e9ecef)}.client-table th{padding:1rem;text-align:left;font-weight:600;color:var(--text-secondary, #495057);font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.client-table td{padding:1rem;border-bottom:1px solid var(--table-border, #e9ecef);color:var(--text-primary, #333)}.client-row:hover{background:var(--table-row-hover, #f8f9fa)}.client-name{font-weight:500;color:var(--text-primary, #1a1a1a)}.action-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.client-list .status-active{background:#d4edda;color:#155724}.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}.client-list .btn-primary{background:#4a90e2}.client-list .btn-primary:hover:not(:disabled){background:#357abd}@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:800px}}.checkbox-column{width:40px;text-align:center}.checkbox-column input[type=checkbox]{cursor:pointer;width:18px;height:18px}.client-row.selected{background:var(--primary-light, #e7f3ff)}.bulk-actions-bar{display:flex;justify-content:space-between;align-items:center;background:var(--primary-color, #4a90e2);color:#fff;padding:1rem 1.5rem;border-radius:8px;margin-bottom:1rem;box-shadow:var(--shadow-md, 0 2px 4px rgba(0, 0, 0, .1))}.bulk-actions-info{display:flex;align-items:center;gap:1rem}.selected-count{font-weight:600;font-size:1rem}.bulk-actions-bar .btn-link{color:#fff}.bulk-actions-buttons{display:flex;gap:.75rem}.bulk-actions-buttons .btn{background:#fff;color:var(--primary-color, #4a90e2);border:1px solid white}.bulk-actions-buttons .btn:hover:not(:disabled){background:var(--surface-secondary, #f8f9fa)}.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%}}.modal-close-btn{position:absolute;right:1rem;background:none;border:none;font-size:2rem;cursor:pointer;color:var(--text-secondary, #666);z-index:10}.modal-close-btn:hover{color:var(--text-primary, #1a1a1a)}.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: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:none;border-color:#4a90e2;box-shadow:0 0 0 3px #4a90e21a}.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}.btn{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.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}}.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:12px}.recharts-legend-wrapper{padding-top:12px!important}.recharts-legend-item{margin-right:16px}.recharts-legend-item-text{font-size:12px;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:12px}@media(max-width:768px){.chart-container{padding:12px}.recharts-cartesian-axis-tick{font-size:11px}.recharts-legend-item-text{font-size:12px}}.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: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:12px;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:12px;color:#92400e}.error-message{background:#fee2e2;border:1px solid #fecaca;border-radius:6px;padding:10px;margin-bottom:12px;color:#991b1b;font-size:12px}.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: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:12px}.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 #e5e7eb;border-radius:6px;transition:all .2s;cursor:pointer;background:#fff}.client-row:hover{background:#f9fafb;border-color:#d1d5db}[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}.client-email{font-size:11px;color:#6b7280}[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:10px;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:12px;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:12px}[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}.btn{padding:6px 12px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary:hover:not(:disabled){background:#1d4ed8}.btn-secondary:hover:not(:disabled){background:#d1d5db}[data-theme=dark] .client-manager-modal .btn-secondary{background:#4b5563;color:#f9fafb}[data-theme=dark] .client-manager-modal .btn-secondary:hover:not(:disabled){background:#6b7280}@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: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 #3b82f61a}.form-actions{display:flex;gap:8px;margin-top:8px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.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}.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:12px;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:11px;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}.tab.active{color:#2563eb;border-bottom-color:#2563eb;background:#fff}.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:11px;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}.info-label{font-size:12px;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}.capitalize{text-transform:capitalize}.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:11px;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:12px;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-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:12px;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:#f9fafb}.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:11px;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:12px;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:12px;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{padding:6px 12px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:4px}.btn-primary{background:#2563eb;color:#fff}.btn-primary:hover{background:#1d4ed8}.btn-secondary{background:#e5e7eb;color:#374151}.btn-secondary:hover{background:#d1d5db}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover{background:#dc2626}.btn-sm{padding:5px 10px;font-size:12px}.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:10px;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:12px;font-weight:500}.collapsible-content{margin-top:12px;padding-top:12px;border-top:1px solid #e5e7eb;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.team-management{padding:0;max-width: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 #4a90e21a}.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:#f8f9fa}.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}.modal-content{background:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;position:relative}.modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.5rem;cursor:pointer;color:#666;z-index:10}.modal-close:hover{color:#333}@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:500px}.team-invitation-modal .modal-content{border-radius:12px}.team-invitation-modal .modal-header{padding:24px 24px 0;margin-bottom:24px}.team-invitation-form{padding:0 24px 24px}.team-invitation-form .form-group{margin-bottom:20px}.team-invitation-form .form-group label{font-size:14px;color:#374151;margin-bottom:6px}.team-invitation-form .form-group input,.team-invitation-form .form-group select,.team-invitation-form .form-group textarea{padding:10px 12px;border-radius:6px;font-size:14px}.team-invitation-form .form-group input:focus,.team-invitation-form .form-group select:focus,.team-invitation-form .form-group textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.team-invitation-form .form-group textarea{min-height:80px}.team-invitation-form .modal-actions{margin-top:24px;padding-top:20px}.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{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border:none;border-radius:8px;font-size:14px;cursor:pointer;transition:all .2s ease;text-decoration:none}.btn-primary{background-color:#2563eb;color:#fff}.btn-primary:hover:not(.btn-disabled){background-color:#1d4ed8}.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: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-list{display:flex;flex-direction:column;gap:.5rem}.permission-item{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:#f5f5f5;border-radius:4px;font-size:.875rem}.permission-icon{color:#4caf50;font-weight:700}.permission-name{color:#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-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}.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}}.role-form{max-width:900px;margin:0 auto;padding:2rem;background:#fff;border-radius:8px}.form-header{margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid #e0e0e0}.form-header h2{margin:0 0 .5rem;font-size:1.75rem;color:#1a1a1a}.form-header p{margin:0;color:#666}.form-section{margin-bottom:2rem}.form-section h3{margin:0 0 1rem;font-size:1.25rem;color:#333}.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:#333}.form-group input[type=text],.form-group textarea,.form-group select{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;font-family:inherit;transition:border-color .2s}.form-group input[type=text]:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#4a90e2}.form-group textarea{resize:vertical}.form-group small{display:block;margin-top:.5rem;color:#666;font-size:.875rem}.template-buttons{display:flex;flex-wrap:wrap;gap:.75rem}.btn-small{padding:.5rem 1rem;font-size:.875rem}.permissions-grid{display:grid;gap:1.5rem}.permission-category{border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem;background:#fafafa}.category-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #e0e0e0}.category-title{display:flex;align-items:center;gap:.75rem}.category-title h4{margin:0;font-size:1.125rem;color:#1a1a1a}.category-count{font-size:.875rem;color:#666;background:#fff;padding:.25rem .75rem;border-radius:12px}.permission-list{display:flex;flex-direction:column;gap:1rem}.permission-checkbox{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background:#fff;border:1px solid #e0e0e0;border-radius:4px;cursor:pointer;transition:all .2s}.permission-checkbox:hover{border-color:#4a90e2;box-shadow:0 2px 4px #0000000d}.permission-checkbox input[type=checkbox]{margin-top:.25rem;cursor:pointer;width:18px;height:18px;flex-shrink:0}.permission-info{flex:1}.permission-name{font-weight:500;color:#1a1a1a;margin-bottom:.25rem}.permission-description{font-size:.875rem;color:#666;line-height:1.5}.permission-note{margin-top:.5rem;font-size:.75rem;color:#f57c00;font-style:italic}.form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:2rem;border-top:2px solid #e0e0e0}.btn{padding:.75rem 1.5rem;border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary{background:#f5f5f5;color:#333;border:1px solid #ddd}.btn-secondary:hover:not(:disabled){background:#e0e0e0}.btn-link{background:none;color:#4a90e2;padding:.5rem 1rem;text-decoration:none}.btn-link:hover:not(:disabled){text-decoration:underline}.error{background:#ffebee;color:#c62828;padding:1rem;border-radius:4px;margin-bottom:1rem}@media(max-width:768px){.role-form{padding:1rem}.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%}.category-header{flex-direction:column;align-items:flex-start;gap:.5rem}.form-actions{flex-direction:column-reverse}.form-actions .btn{width:100%}}.role-manager-page{width:100%;height:100%}.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{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 4px #0000001a;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:#6c757d;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-warning{background:#fff3cd;color:#856404}.badge-danger{background:#f8d7da;color:#721c24}.badge-secondary{background:#e2e3e5;color:#383d41}.subscription-actions{border-top:1px solid #e9ecef;padding-top:24px}.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:#fff5f5;border:1px solid #fed7d7;border-radius:6px;margin-bottom:24px}.danger-zone h6{color:#c53030;margin-bottom:8px}.danger-zone p{color:#744210;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}.billing-container .loading-spinner{width:20px;height:20px;border-top-color:#007bff}.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{display:inline-block;padding:8px 16px;border:1px solid transparent;border-radius:4px;font-size:.875rem;font-weight:500;text-align:center;text-decoration:none;cursor:pointer;transition:all .2s ease}.btn-primary{background:#007bff;border-color:#007bff;color:#fff}.btn-primary:hover:not(:disabled){background:#0056b3;border-color:#0056b3}.btn-secondary{background:#6c757d;border-color:#6c757d;color:#fff}.btn-secondary:hover:not(:disabled){background:#545b62;border-color:#545b62}.btn-success{background:#28a745;border-color:#28a745;color:#fff}.btn-success:hover:not(:disabled){background:#1e7e34;border-color:#1e7e34}.btn-danger{background:#dc3545;border-color:#dc3545;color:#fff}.btn-danger:hover:not(:disabled){background:#c82333;border-color:#c82333}.btn-link{background:transparent;border-color:transparent;color:#007bff;text-decoration:underline}.btn-link:hover:not(:disabled){color:#0056b3}.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 #e9ecef;margin-bottom:24px}.tab-button{background:none;border:none;padding:12px 24px;cursor:pointer;font-size:.875rem;font-weight:500;color:#6c757d;border-bottom:2px solid transparent;transition:all .2s ease}.tab-button:hover{color:#495057}.tab-button.active{color:#007bff;border-bottom-color:#007bff}.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}.loading-state,.error-state{display:flex;align-items:center;justify-content:center;gap:12px;padding:48px;color:#6c757d}.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:last-child{border-bottom:none}.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:#495057}.usage-metrics-card .metrics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.usage-metrics-card .metric-item{padding:12px;background:#f8f9fa;border-radius:6px}.usage-metrics-card .metric-label{font-size:.75rem;color:#6c757d;text-transform:uppercase;font-weight:600;margin-bottom:4px}.usage-metrics-card .metric-value{font-size:1rem;font-weight:600;color:#495057;margin-bottom:8px;white-space:nowrap}.usage-metrics-card .metric-bar{width:100%;height:6px;background:#e9ecef;border-radius:3px;overflow:hidden}.usage-metrics-card .metric-bar-fill{height:100%;background:#007bff;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}.invoices-list{display:flex;flex-direction:column;gap:12px}.invoice-item{display:flex;justify-content:space-between;align-items:center;padding:16px;border:1px solid #e9ecef;border-radius:6px;background:#f8f9fa}.invoice-info{display:flex;gap:24px;align-items:center}.invoice-date{color:#6c757d;font-size:.875rem}.invoice-amount{font-weight:600;color:#495057;font-size:1rem}.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:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 4px #0000001a;margin-bottom:24px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e9ecef}.section-header h3{margin:0;color:#212529}.no-payment-methods{text-align:center;padding:48px 24px;color:#6c757d}.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 #e9ecef;border-radius:6px;background:#f8f9fa;transition:all .2s ease}.payment-method-card:hover{border-color:#007bff;box-shadow:0 2px 8px #007bff1a}.payment-method-card.default{border-color:#28a745;background:#f8fff9}.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:#495057}.method-expiry{font-size:.875rem;color:#6c757d}.method-actions{display:flex;gap:12px}.text-danger{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:#fff;border-radius:8px;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 #e9ecef}.modal-header h4{margin:0;color:#212529}.close-button{background:none;border:none;font-size:1.5rem;color:#6c757d;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.close-button:hover:not(:disabled){background:#f8f9fa;color:#495057}.modal-body{padding:24px}.stripe-placeholder{margin-top:16px}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:8px;color:#495057;font-weight:500;font-size:.875rem}.form-control{width:100%;padding:10px 12px;border:1px solid #ced4da;border-radius:4px;font-size:.875rem;transition:border-color .2s ease}.form-control:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.form-control:disabled{background:#e9ecef;cursor:not-allowed}.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 #e9ecef}.payment-history-section{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 4px #0000001a}.payment-history-section h3{margin:0 0 20px;color:#212529}.no-history{text-align:center;color:#6c757d;padding:24px 0}.payment-history-list{overflow-x:auto}.payment-history-table{width:100%;border-collapse:collapse}.payment-history-table thead{background:#f8f9fa}.payment-history-table th{padding:12px;text-align:left;font-weight:600;color:#495057;font-size:.875rem;border-bottom:2px solid #e9ecef}.payment-history-table td{padding:12px;border-bottom:1px solid #f8f9fa;color:#6c757d;font-size:.875rem}.payment-history-table tbody tr:hover{background:#f8f9fa}@media(max-width:768px){.overview-section{margin-top:24px}.invoice-item{flex-direction:column;gap:12px;align-items:flex-start}.invoice-actions{width:100%;justify-content:space-between}.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-danger{background-color:#dc3545;color:#fff;border:1px solid #dc3545}.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}.modal-close-btn{background:none;border:none;font-size:1.5rem;color:#6c757d;cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s}.modal-close-btn:hover{background:#e9ecef;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-secondary{background:#f8f9fa;border:1px solid #dee2e6;color:#495057;padding:10px 20px;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary:hover:not(:disabled){background:#e9ecef}.btn-primary{background:#007bff;border:none;color:#fff;padding:10px 20px;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary:hover:not(:disabled){background:#0056b3}.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:#495057;font-size:.9rem}.card-element-wrapper{padding:12px 16px;border:1px solid #ced4da;border-radius:8px;background:#fff;transition:border-color .2s,box-shadow .2s}.card-element-wrapper:focus-within{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.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:#007bff}.form-error{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;color:#721c24;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 #e9ecef;color:#6c757d;font-size:.85rem}.form-security .security-icon{font-size:1rem}.success-message{display:flex;align-items:center;gap:12px;padding:16px 20px;background:#d4edda;border:1px solid #c3e6cb;border-radius:8px;color:#155724;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}.invoice-item{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border:1px solid #e9ecef;border-radius:8px;background:#fff;margin-bottom:12px;transition:border-color .2s,box-shadow .2s}.invoice-item:hover{border-color:#007bff;box-shadow:0 2px 8px #007bff1a}.invoice-info{display:flex;align-items:center;gap:24px}.invoice-details{display:flex;flex-direction:column;gap:4px}.invoice-number{font-weight:600;color:#212529}.invoice-date{font-size:.85rem;color:#6c757d}.invoice-amount{font-weight:700;font-size:1.1rem;color:#212529}.invoice-actions{display:flex;align-items:center;gap:12px}@media(max-width:768px){.invoice-payment-modal .modal-content{max-width:100%;margin:16px}.invoice-item{flex-direction:column;align-items:flex-start;gap:16px}.invoice-info{width:100%;justify-content:space-between}.invoice-actions{width:100%;flex-wrap:wrap}.invoice-actions .btn{flex:1;min-width:100px}.form-actions{flex-direction:column}.form-actions .btn{width:100%}}.invoice-item.invoice-due{border-color:#ffc107;background:#fffbf0}.invoice-item.invoice-due:hover{border-color:#e0a800}.invoice-due-date{color:#856404;font-weight:500}.localization-settings{max-width: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-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{display:inline-flex;align-items:center;justify-content:center;padding:.625rem 1.25rem;border-radius:.375rem;font-weight:500;font-size:.875rem;cursor:pointer;transition:all .2s;border:1px solid transparent;text-decoration:none}.btn:focus{outline:none;box-shadow:0 0 0 3px #3b82f64d}.btn-primary{background:#3b82f6;color:#fff;border-color:#3b82f6}.btn-primary:hover:not(:disabled){background:#2563eb;border-color:#2563eb}.btn-secondary{background:#fff;color:#374151;border-color:#d1d5db}.btn-secondary:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.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: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:checked+.toggle-slider{background-color:#2196f3}.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:11px;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}}.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:#f0fdf4;border:1px solid #bbf7d0;border-radius:.5rem;padding:1rem;margin-bottom:2rem}.success-icon{font-size:1.5rem}.success-banner strong{color:#166534}.success-banner p{color:#15803d;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:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.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}.btn{padding:.75rem 1.5rem;border-radius:.375rem;font-weight:500;cursor:pointer;transition:all .2s;border:none}.btn-primary:hover:not(:disabled){background:#2563eb}.btn-secondary{background:#f3f4f6;color:#374151;border:1px solid #d1d5db}.btn-secondary:hover:not(:disabled){background:#e5e7eb}.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{color:#fff;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}@media(prefers-contrast:high){.snackbar{border:2px solid #ffffff}}@media(prefers-reduced-motion:reduce){.snackbar{transition: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:50%;transform:translate(-50%);z-index:9999;pointer-events:none}.snackbar-container>*{pointer-events:auto}@media(max-width:768px){.snackbar-container{bottom:16px;left:16px;right:16px;transform:none}}.messenger-widget-button{position:fixed;bottom:20px;right:20px;width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);border:none;color:#fff;cursor:pointer;box-shadow:0 4px 12px #00000026;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,box-shadow .2s ease;z-index:9998}.messenger-widget-button:hover{transform:scale(1.05);box-shadow:0 6px 16px #0003}.messenger-widget-button:active{transform:scale(.95)}.messenger-widget-badge{position:absolute;top:-4px;right:-4px;background:#ef4444;color:#fff;border-radius:12px;padding:2px 6px;font-size:11px;font-weight:600;min-width:20px;text-align:center;box-shadow:0 2px 4px #0003}.messenger-connection-indicator{position:absolute;bottom:4px;left:4px;width:12px;height:12px;border-radius:50%;border:2px solid white;box-shadow:0 2px 4px #0003}.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{bottom:16px;right:16px;width:56px;height:56px}}.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-online-indicator{position:absolute;bottom:2px;right:2px;width:12px;height:12px;background:#10b981;border:2px solid white;border-radius:50%}.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:focus{outline:2px solid #667eea;outline-offset:-2px}@media(prefers-reduced-motion:reduce){.loading-spinner{animation:none}.contact-item{transition:none}}.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}.thread-status{font-size:12px;color:#10b981;display:flex;align-items:center;gap:4px}.thread-status:before{content:"";width:6px;height:6px;background:currentColor;border-radius:50%}.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(--card-shadow, 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:12px;font-weight:600;min-width:20px;text-align:center}.dropdown-arrow{font-size:10px;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{border-color:var(--primary-color, #3b82f6);box-shadow:0 0 0 3px var(--focus-ring, rgba(59, 130, 246, .1))}.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:12px;padding:4px 10px}}.tenant-block-times{padding:20px}.block-times-header{margin-bottom:30px}.block-times-header h2{margin:0 0 10px}.block-times-header p{color:#666;margin:0 0 20px}.block-time-form{background:#f5f5f5;padding:20px;border-radius:8px;margin-bottom:30px}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:5px;font-weight:500}.form-group input{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.block-times-list{display:flex;flex-direction:column;gap:15px}.block-time-card{display:flex;justify-content:space-between;align-items:center;padding:15px;border:1px solid #ddd;border-radius:8px;background:#fff}.block-time-info h3{margin:0 0 5px;font-size:16px}.block-time-info p{margin:0;color:#666;font-size:14px}.btn{padding:8px 16px;border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500}.btn-primary{background:#007bff;color:#fff}.btn-primary:hover{background:#0056b3}.btn-danger{background:#dc3545;color:#fff}.btn-danger:hover{background:#c82333}.loading{text-align:center;padding:20px;color:#666}.no-data{text-align:center;padding:40px;color:#999}.calendar-page{max-width: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}.report-header h2{margin:0 0 8px;font-size:24px;font-weight:600;color:var(--text-primary, #1a1a1a)}.report-description{margin:0;color:var(--text-secondary, #666);font-size:14px}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:30px}.summary-card{background:var(--card-bg, white);border:1px solid var(--border-color, #e0e0e0);border-radius:8px;padding:20px;text-align:center}.summary-card.revenue{border-left:4px solid #4caf50}.summary-card.paid{border-left:4px solid #ff9800}.summary-card.profit{border-left:4px solid #2196f3}.summary-card.margin{border-left:4px solid #9c27b0}.summary-label{font-size:12px;color:var(--text-secondary, #666);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-weight:500}.summary-value{font-size:28px;font-weight:700;color:var(--text-primary, #1a1a1a)}.trainers-table-container{background:var(--card-bg, white);border:1px solid var(--border-color, #e0e0e0);border-radius:8px;overflow:hidden;margin-bottom:20px}[data-theme=dark] .trainers-table-container{background:#1f2937;border-color:#374151}.trainers-table{width:100%;border-collapse:collapse}.trainers-table thead{background:var(--table-header-bg, #f5f5f5)}[data-theme=dark] .trainers-table thead{background:#374151}.trainers-table th{padding:16px;text-align:left;font-size:12px;font-weight:600;color:var(--text-secondary, #666);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--border-color, #e0e0e0)}[data-theme=dark] .trainers-table th{color:#d1d5db;border-color:#4b5563}.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-color, #f0f0f0);transition:background-color .2s}[data-theme=dark] .trainers-table tbody tr{border-color:#374151}.trainers-table tbody tr:hover{background-color:var(--hover-bg, #fafafa)}[data-theme=dark] .trainers-table tbody tr:hover{background-color:#374151}.trainers-table tbody tr:last-child{border-bottom:none}.trainers-table td{padding:16px;font-size:14px;color:var(--text-primary, #333)}[data-theme=dark] .trainers-table td{color:#d1d5db}.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, #1a1a1a)}[data-theme=dark] .trainer-name{color:#f9fafb}.trainer-email{font-size:12px;color:var(--text-secondary, #666)}[data-theme=dark] .trainer-email{color:#9ca3af}.rate-type{font-size:11px;color:#999;margin-left:2px}.revenue-cell{color:#4caf50;font-weight:600}.paid-cell{color:#ff9800;font-weight:600}.profit-cell .positive{color:#2196f3;font-weight:600}.profit-cell .negative{color:#f44336;font-weight:600}.margin-cell .positive{color:#9c27b0;font-weight:600}.margin-cell .negative{color:#f44336;font-weight:600}.report-footer{display:flex;justify-content:flex-end;gap:12px;margin-top:20px}.refresh-button{padding:12px 24px;background:#2196f3;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s;white-space:nowrap;min-width:140px}.refresh-button:hover{background:#1976d2}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#666}.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px}.error-message{color:#f44336;margin-bottom:16px;font-size:14px}.retry-button{padding:10px 20px;background:#f44336;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#666;text-align:center}.empty-hint{font-size:14px;color:#999;margin-top:8px}@media(max-width:1200px){.trainers-table-container{overflow-x:auto}.trainers-table{min-width:1000px}}@media(max-width:768px){.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){.summary-cards{grid-template-columns:1fr}}.chart-container-inner{width:100%;height:100%}.chart-title{font-size:1rem;font-weight:600;color:#333;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:#999;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:#333;margin-bottom:.5rem;min-height:1.5rem}.bar{width:100%;max-width:80px;min-width:40px;background-color:#2196f3;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:#666;text-align:center;margin-top:.5rem;word-wrap:break-word;max-width:100%}.line-chart{width:100%;height:300px;margin-bottom:1rem}.line-chart-labels{display:flex;justify-content:space-between;padding:0 1rem;margin-top:.5rem}.line-label{font-size:.75rem;color:#666;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}.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:#666}.axis-label{font-size:.85rem;color:#666;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}.report-header h2{margin:0 0 16px;font-size:24px;font-weight:600;color:var(--text-primary, #1a1a1a)}.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, #666)}.date-range-selector input[type=date]{padding:8px 12px;border:1px solid var(--border-color, #e0e0e0);border-radius:6px;font-size:14px;background:var(--input-bg, white);color:var(--text-primary, #333)}.export-controls{display:flex;gap:8px;align-items:center}.export-controls select{padding:8px 12px;border:1px solid var(--border-color, #e0e0e0);border-radius:6px;font-size:14px;background:var(--input-bg, white);color:var(--text-primary, #333)}.export-button{padding:8px 16px;background:#2196f3;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.export-button:hover:not(:disabled){background:#1976d2}.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-bg, white);border:1px solid var(--border-color, #e0e0e0);border-radius:8px;padding:24px}.metric-card h3{margin:0 0 12px;font-size:14px;font-weight:500;color:var(--text-secondary, #666);text-transform:uppercase;letter-spacing:.5px}.metric-value{font-size:32px;font-weight:700;color:#1a1a1a;margin-bottom:8px}.metric-description{margin:0;font-size:13px;color:#999}.charts-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:20px;margin-bottom:30px}.chart-container{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:24px}.chart-container h3{margin:0 0 20px;font-size:16px;font-weight:600;color:#1a1a1a}.insights-section{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:24px}.insights-section h3{margin:0 0 16px;font-size:18px;font-weight:600;color:#1a1a1a}.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:#e8f5e9;color:#2e7d32;border-left:4px solid #4caf50}.insight-warning{background:#fff3e0;color:#e65100;border-left:4px solid #ff9800}@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}.report-header{margin-bottom:30px}.report-header h2{margin:0 0 8px;font-size:24px;font-weight:600;color:#1a1a1a}.report-description{margin:0;color:#666;font-size:14px}.performance-table-container{background:#fff;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden}.performance-table{width:100%;border-collapse:collapse}.performance-table thead{background:#f5f5f5}.performance-table th{padding:16px;text-align:left;font-size:12px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e0e0e0}.performance-table th.text-center{text-align:center}.performance-table tbody tr{border-bottom:1px solid #f0f0f0;transition:background-color .2s}.performance-table tbody tr:hover{background-color:#fafafa}.performance-table tbody tr:last-child{border-bottom:none}.performance-table td{padding:16px;font-size:14px;color:#333}.performance-table td.text-center{text-align:center}.member-name{font-weight:600;color:#1a1a1a}.error-message{color:#f44336;margin-bottom:16px}.retry-button{padding:10px 20px;background:#f44336;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer}.retry-button:hover{background:#d32f2f}@media(max-width:768px){.performance-table-container{overflow-x:auto}.performance-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:#1a1a1a;font-weight:600}.header-subtitle{margin:0;font-size:1rem;color:#666}.report-breadcrumb{margin-bottom:24px}.back-button{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:#fff;border:1px solid #e0e0e0;border-radius:6px;font-size:14px;font-weight:500;color:#666;cursor:pointer;transition:all .2s}.back-button:hover{background:#f5f5f5;border-color:#2196f3;color:#2196f3}.category-filter{display:flex;gap:12px;margin-bottom:32px;flex-wrap:wrap}.filter-button{padding:10px 20px;background:#fff;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;font-weight:500;color:#666;cursor:pointer;transition:all .2s}.filter-button:hover{border-color:#2196f3;color:#2196f3}.filter-button.active{background:#2196f3;border-color:#2196f3;color:#fff}.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:#fff;border:2px solid #e0e0e0;border-radius:12px;cursor:pointer;transition:all .2s}.report-card:hover{border-color:#2196f3;box-shadow:0 4px 12px #2196f326;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:#1a1a1a}.report-description{margin:0;font-size:14px;color:#666;line-height:1.5}.report-arrow{font-size:24px;color:#2196f3;flex-shrink:0;transition:transform .2s}.report-card:hover .report-arrow{transform:translate(4px)}.no-reports{text-align:center;padding:60px 20px;color:#999}.report-placeholder{padding:60px 20px;text-align:center;background:#fff;border:1px solid #e0e0e0;border-radius:8px}.report-placeholder h3{margin:0 0 12px;font-size:24px;color:#1a1a1a}.report-placeholder p{margin:0;color:#666;font-size:16px}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#666}.loading-spinner p{margin:8px 0}.error-message{padding:20px;background:#ffebee;border:1px solid #ef5350;border-radius:8px;color:#c62828}.error-message button{margin-top:12px;padding:8px 16px;background:#f44336;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.error-message button:hover{background:#d32f2f}.no-data{text-align:center;padding:60px 20px;color:#666}.no-data button{margin-top:16px;padding:10px 20px;background:#2196f3;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.no-data button:hover{background:#1976d2}@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:#666}.error-message{text-align:center}.error-message p{color:#dc2626;margin-bottom:16px}.retry-button{padding:8px 16px;background-color:#2563eb;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px}.retry-button:hover{background-color:#1d4ed8}.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:#111827;margin:0}.create-template-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}.create-template-button:hover{background-color:#1d4ed8}.template-filters{display:flex;gap:16px;margin-bottom:24px;flex-wrap:wrap;align-items:flex-end}.search-box{flex:1;min-width:250px}.search-input{width:100%;padding:10px 16px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s}.search-input:focus{outline:none;border-color:#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:#374151}.filter-select{padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;background-color:#fff;cursor:pointer;min-width:150px}.filter-select:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.no-templates{text-align:center;padding:60px 20px;background-color:#f9fafb;border-radius:8px;border:2px dashed #d1d5db}.no-templates p{font-size:16px;color:#6b7280;margin-bottom:16px}.clear-filters-button,.create-first-template-button{padding:10px 20px;background-color:#2563eb;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.clear-filters-button:hover,.create-first-template-button:hover{background-color:#1d4ed8}.templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.template-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;gap:12px}.template-card:hover{border-color:#2563eb;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.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}.template-name{font-size:16px;font-weight:600;color:#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:#dbeafe;color:#1e40af}.category-badge-reminder{background-color:#fef3c7;color:#92400e}.category-badge-followup{background-color:#d1fae5;color:#065f46}.category-badge-custom{background-color:#e5e7eb;color:#374151}.template-subject{font-size:13px;color:#6b7280;padding:8px 12px;background-color:#f9fafb;border-radius:4px}.template-subject strong{color:#374151}.template-body-preview{font-size:14px;color:#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 #e5e7eb;font-size:13px}.template-placeholders,.template-roles{display:flex;align-items:center;gap:6px}.meta-label{color:#6b7280;font-weight:500}.placeholder-count,.role-count{color:#111827;font-weight:600}.template-performance{display:flex;gap:12px;padding:10px 12px;background-color:#f9fafb;border-radius:4px;font-size:13px}.performance-metric{display:flex;flex-direction:column;gap:2px}.metric-label{color:#6b7280;font-size:11px;text-transform:uppercase;letter-spacing:.5px}.metric-value{color:#111827;font-weight:600;font-size:14px}.template-updated{font-size:12px;color:#9ca3af;text-align:right}.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:#2563eb;border:1px solid #2563eb;border-radius:6px;cursor:pointer;font-size:14px;margin-bottom:16px;transition:all .2s}.back-button:hover{background-color:#eff6ff}.header-actions{display:flex;justify-content:space-between;align-items:center}.header-actions h1{font-size:28px;font-weight:600;color:#111827;margin:0}.edit-button{padding:10px 20px;background-color:#2563eb;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.edit-button:hover{background-color:#1d4ed8}.template-detail-content{display:flex;flex-direction:column;gap:24px}.template-meta-info{display:flex;gap:24px;padding:16px;background-color:#f9fafb;border-radius:8px;flex-wrap:wrap}.meta-item{font-size:14px;color:#4b5563}.meta-item strong{color:#111827;margin-right:6px}.template-body-section,.template-placeholders-section{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px}.template-body-section h3,.template-placeholders-section h3{font-size:16px;font-weight:600;color:#111827;margin:0 0 16px}.template-body-display{font-size:14px;line-height:1.6;color:#374151;white-space:pre-wrap;padding:16px;background-color:#f9fafb;border-radius:6px}.placeholders-list{display:flex;flex-wrap:wrap;gap:8px}.placeholder-badge{padding:6px 12px;background-color:#eff6ff;color:#1e40af;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-list{display:flex;flex-direction:column;gap:10px}.template-item{padding:15px;border:1px solid #e0e0e0;border-radius:8px;cursor:pointer;transition:all .2s}.template-item:hover{background-color:#f5f5f5;border-color:#2563eb}.notification-center{padding:20px}.message-composer{padding:15px;border:1px solid #e0e0e0;border-radius:8px}.message-composer textarea{width:100%;min-height:100px;padding:10px;border:1px solid #e0e0e0;border-radius:4px;font-family:inherit;resize:vertical}.message-composer button{margin-top:10px}.template-creator{padding:20px;max-width:600px}.template-creator-title{margin:0 0 24px;font-size:24px;font-weight:600;color:#111827}.template-creator-error{color:#dc2626;margin-bottom:16px;padding:12px;background-color:#fef2f2;border:1px solid #fecaca;border-radius:6px}.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-box{margin-bottom:16px;padding:12px 16px;background-color:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px}.template-variables-title{margin:0 0 6px;font-weight:600;font-size:14px;color:#374151}.template-variables-text{margin:0;font-size:12px;color:#6b7280;font-family:Courier New,monospace}.template-section-title{margin:0 0 12px;font-size:15px;font-weight:600;color:#374151}.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;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}}.consent-form-manager{padding:2rem;max-width:1400px;margin:0 auto}.consent-form-controls{background:var(--card-bg, #f8f9fa);padding:1.5rem;border-radius:8px;margin-bottom:2rem}[data-theme=dark] .consent-form-controls{background:#1f2937;border:1px solid #374151}.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-bg, white);border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden;transition:box-shadow .2s}[data-theme=dark] .form-card{background:#1f2937;border:1px solid #374151;box-shadow:0 1px 3px #0000004d}.form-card:hover{box-shadow:0 4px 12px #00000026}[data-theme=dark] .form-card:hover{box-shadow:0 4px 12px #0006}.form-card-header{padding:1.5rem;border-bottom:1px solid var(--border-color, #e9ecef);display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}[data-theme=dark] .form-card-header{border-color:#374151}.form-title-section{flex:1}.form-card-header h3{margin:0 0 .5rem;font-size:1.25rem;color:var(--text-primary, #1a1a1a)}[data-theme=dark] .form-card-header h3{color:#f9fafb}.consent-form-editor{background:var(--input-bg, white);color:var(--text-primary, #333);border:1px solid var(--border-color, #ccc);border-top:none;min-height:200px;padding:8px;font-size:14px;line-height:1.5}.wysiwyg-toolbar{background:var(--card-secondary-bg, #f8f9fa);border:1px solid var(--border-color, #ccc);border-bottom:none;padding:8px;display:flex;gap:4px;flex-wrap:wrap}.wysiwyg-button{background:var(--input-bg, white);color:var(--text-primary, #333);border:1px solid var(--border-color, #ccc);padding:4px 8px;cursor:pointer}[data-theme=dark] .wysiwyg-toolbar{background:#374151;border-color:#4b5563}[data-theme=dark] .wysiwyg-button,[data-theme=dark] .consent-form-editor{background:#1f2937;color:#d1d5db;border-color:#4b5563}.type-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.type-photo-video{background:#e3f2fd;color:#1565c0}[data-theme=dark] .type-photo-video{background:#1e3a5f;color:#93c5fd}.type-liability{background:#fff3e0;color:#e65100}[data-theme=dark] .type-liability{background:#78350f;color:#fde68a}.type-custom{background:#f3e5f5;color:#6a1b9a}[data-theme=dark] .type-custom{background:#581c87;color:#e9d5ff}.form-status{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem}.toggle-switch{position:relative;display:inline-block;width:48px;height:24px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:#ccc;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:#4a90e2}.toggle-switch input:checked+.toggle-slider:before{transform:translate(24px)}.toggle-switch input:focus+.toggle-slider{box-shadow:0 0 0 3px #4a90e233}.status-label{font-size:.875rem;font-weight:500}.status-label.active{color:#28a745}.status-label.inactive{color:#6c757d}.form-card-content{padding:1.5rem}[data-theme=dark] .form-card-content{background:#1f2937}.form-preview{color:#666;line-height:1.6;margin-bottom:1rem;font-size:.95rem}[data-theme=dark] .form-preview{color:#9ca3af}.form-meta{display:flex;flex-direction:column;gap:.5rem;padding-top:1rem;border-top:1px solid #e9ecef}[data-theme=dark] .form-meta{border-color:#374151}.meta-item{display:flex;justify-content:space-between;align-items:center;font-size:.875rem}.meta-label{color:#666;font-weight:500}[data-theme=dark] .meta-label{color:#9ca3af}.meta-value{color:#1a1a1a}[data-theme=dark] .meta-value{color:#f9fafb}.usage-count{font-weight:600;color:#4a90e2}.form-card-actions{padding:1rem 1.5rem;background:#f8f9fa;display:flex;gap:.75rem;justify-content:flex-end}[data-theme=dark] .form-card-actions{background:#374151}@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-form-creator{padding:20px;max-width:600px}.consent-form-creator h2{margin:0 0 20px;color:var(--text-primary, #1a1a1a)}[data-theme=dark] .consent-form-creator h2{color:#f9fafb}.consent-form-creator .error-banner{color:#991b1b;margin-bottom:16px;padding:8px;background-color:#fee2e2;border:1px solid #fecaca;border-radius:4px}[data-theme=dark] .consent-form-creator .error-banner{background-color:#7f1d1d;border-color:#991b1b;color:#fecaca}.consent-form-creator .form-group{margin-bottom:16px}.consent-form-creator .form-label{display:block;margin-bottom:4px;font-weight:700;color:var(--text-primary, #1a1a1a)}[data-theme=dark] .consent-form-creator .form-label{color:#f9fafb}.consent-form-creator .form-input,.consent-form-creator .form-select{width:100%;padding:8px;border:1px solid #ccc;border-radius:4px;background:#fff;color:#333}[data-theme=dark] .consent-form-creator .form-input,[data-theme=dark] .consent-form-creator .form-select{background:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .consent-form-creator .form-input::placeholder{color:#6b7280}.consent-form-creator .checkbox-group{margin-bottom:20px}.consent-form-creator .checkbox-label{display:flex;align-items:center;gap:8px;color:var(--text-primary, #333);cursor:pointer}[data-theme=dark] .consent-form-creator .checkbox-label{color:#d1d5db}.consent-form-creator .form-actions{display:flex;gap:12px}.consent-form-creator .btn-submit{padding:10px 20px;background-color:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer}.consent-form-creator .btn-submit:disabled{cursor:not-allowed;opacity:.6}.consent-form-creator .btn-submit:hover:not(:disabled){background-color:#0056b3}.consent-form-creator .btn-cancel{padding:10px 20px;background-color:#6c757d;color:#fff;border:none;border-radius:4px;cursor:pointer}.consent-form-creator .btn-cancel:hover{background-color:#5a6268}[data-theme=dark] .consent-form-creator .btn-cancel{background-color:#4b5563}[data-theme=dark] .consent-form-creator .btn-cancel:hover{background-color:#6b7280}.consent-records{padding:2rem;max-width: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:#f8f9fa}.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:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px #0000004d}.modal-header{padding:1.5rem;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-close{background:none;border:none;font-size:2rem;color:#666;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s}.modal-close:hover{background:#f8f9fa}.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: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)}.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:12px;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:#007bff;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;font-size:14px}.consent-sign-button:hover{background-color:#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-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}[data-theme=dark] .consent-modal-overlay{background-color:#000000b3}.consent-modal{background-color:var(--bg-primary);border-radius:8px;padding:0;max-width:600px;width:90%;max-height:80vh;overflow:hidden;display:flex;flex-direction:column;border:1px solid var(--border-primary)}.consent-modal-header{padding:20px;border-bottom:1px solid var(--border-primary);display:flex;justify-content:space-between;align-items:center}.consent-modal-header h3{margin:0;color:var(--text-primary)}.consent-modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:var(--text-secondary);padding:0;line-height:1}.consent-modal-close:hover{color:var(--text-primary)}.consent-modal-body{padding:20px;flex:1;overflow:auto}.consent-modal-body h4{margin:0 0 16px;color:var(--text-primary)}.consent-modal-content{background-color:var(--bg-secondary);padding:16px;border-radius:4px;margin-bottom:20px;max-height:200px;overflow:auto;font-size:14px;line-height:1.5;color:var(--text-secondary)}.consent-signature-group{margin-bottom:20px}.consent-signature-group label{display:block;margin-bottom:8px;font-weight:700;color:var(--text-primary)}.consent-signature-input{width:100%;padding:8px 12px;border:1px solid var(--border-primary);border-radius:4px;font-size:16px;background-color:var(--bg-primary);color:var(--text-primary);box-sizing:border-box}.consent-signature-input::placeholder{color:var(--text-secondary)}.consent-signature-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}[data-theme=dark] .consent-signature-input{background-color:#374151;border-color:#4b5563;color:#f9fafb}[data-theme=dark] .consent-signature-input::placeholder{color:#6b7280}[data-theme=dark] .consent-signature-input:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa33}.consent-modal-footer{padding:20px;border-top:1px solid var(--border-primary);display:flex;gap:12px;justify-content:flex-end}.consent-modal-cancel{padding:8px 16px;border:1px solid var(--border-primary);border-radius:4px;background-color:var(--bg-primary);color:var(--text-primary);cursor:pointer;font-size:14px}.consent-modal-cancel:hover:not(:disabled){background-color:var(--bg-secondary)}.consent-modal-cancel:disabled{opacity:.6;cursor:not-allowed}[data-theme=dark] .consent-modal-cancel{background-color:#374151;border-color:#4b5563;color:#d1d5db}[data-theme=dark] .consent-modal-cancel:hover:not(:disabled){background-color:#4b5563}.consent-modal-submit{padding:8px 16px;border:none;border-radius:4px;background-color:#007bff;color:#fff;cursor:pointer;font-size:14px}.consent-modal-submit:hover:not(:disabled){background-color:#0056b3}.consent-modal-submit:disabled{opacity:.6;cursor:not-allowed}.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:#dc3545;margin-top:16px}[data-theme=dark] .consent-forms-error-message{color:#f87171}.training-resources-page{padding:2rem;max-width:1200px;margin:0 auto}.training-resources-page .page-header{margin-bottom:2rem}.training-resources-page .page-header h1{color:#2c3e50;margin-bottom:.5rem}.training-resources-page .page-header p{color:#7f8c8d;font-size:1.1rem}.category-filter{display:flex;gap:.5rem;margin-bottom:2rem;flex-wrap:wrap}.category-filter button{padding:.5rem 1rem;border:2px solid #e9ecef;background:#fff;border-radius:20px;cursor:pointer;transition:all .2s ease;font-weight:500}.category-filter button:hover{border-color:#3498db;background:#f8f9fa}.category-filter button.active{background:#3498db;color:#fff;border-color:#3498db}.resources-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.resource-card{background:#fff;border:1px solid #e9ecef;border-radius:12px;padding:1.5rem;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #0000001a}.resource-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026;border-color:#3498db}.resource-icon{font-size:2rem;margin-bottom:1rem}.resource-content h3{color:#2c3e50;margin-bottom:.5rem;font-size:1.2rem}.resource-description{color:#7f8c8d;margin-bottom:1rem;line-height:1.5}.resource-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.resource-category{background:#e8f4f8;color:#2980b9;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500}.resource-type{background:#f8f9fa;color:#6c757d;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600}.resource-tags{display:flex;flex-wrap:wrap;gap:.5rem}.tag{background:#f1f3f4;color:#5f6368;padding:.25rem .5rem;border-radius:8px;font-size:.8rem}.no-resources{grid-column:1 / -1;text-align:center;padding:3rem;color:#7f8c8d}.no-resources h3{color:#95a5a6;margin-bottom:1rem}.loading,.error{text-align:center;padding:3rem;font-size:1.1rem}.error{color:#e74c3c}.loading{color:#7f8c8d}@media(max-width:768px){.training-resources-page{padding:1rem}.resources-grid{grid-template-columns:1fr}.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;transform:translateY(-2px)}.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}.btn-primary{background:#fff;color:#667eea}.btn-primary:hover{background:#ffffffe6}.btn-secondary{background:#fff3;color:#fff}.btn-secondary:hover{background:#ffffff4d}@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: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:none;border-color:#4a90e2}.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:#f8f9fa}.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-pending{background:#fff3cd;color:#856404}.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}.btn{padding:.5rem 1rem;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:#4a90e2;color:#fff}.btn-primary:hover:not(:disabled){background:#357abd}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover:not(:disabled){background:#5a6268}.btn-sm{padding:.375rem .75rem;font-size:.875rem}@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:700px}}.client-assignment{padding:2rem;max-width: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:.75rem;border:1px solid #ddd;border-radius:4px;font-size:.875rem}.client-assignment .search-input:focus{outline:none;border-color:#4a90e2;box-shadow:0 0 0 3px #4a90e21a}.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-secondary{background-color:#6c757d;color:#fff}.client-assignment .btn-secondary:hover{background-color:#5a6268}.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:#1a202c}.add-time-block-form{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px;margin-bottom:16px}.form-row{display:flex;gap:16px;margin-bottom:16px}.form-group{flex:1}.form-group label{display:block;margin-bottom:4px;font-weight:500;color:#374151;font-size:14px}.form-group input,.form-group select{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.time-blocks-list{space-y:8px}.time-block-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:8px}.time-block-item.unavailable{border-left:4px solid #dc2626;background:#fef2f2}.time-block-item.busy{border-left:4px solid #f59e0b;background:#fffbeb}.block-info{flex:1}.block-title{font-weight:600;color:#1a202c;margin-bottom:4px}.block-details{font-size:14px;color:#6b7280;margin-bottom:4px}.block-type{font-size:12px;text-transform:uppercase;font-weight:500;color:#9ca3af}.no-blocks{text-align:center;color:#6b7280;font-style:italic;padding:24px}@media(max-width:768px){.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 #3b82f61a}.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: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}.tab.active{color:#3b82f6;border-bottom-color:#3b82f6;background:#fff}.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}.tab.active{border-bottom:1px solid #e2e8f0;border-left:3px solid #3b82f6}.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}.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 .form-help{margin:0;font-size:.875rem;color:#6b7280}@media(max-width:640px){.photo-upload-section{flex-direction:column;align-items:center;text-align:center}.photo-upload-controls{align-items:center}}.branding-settings{max-width:800px}.branding-settings .card-description{color:var(--text-secondary);font-size:14px;margin-top:4px}.branding-section{margin-bottom:32px}.branding-section h4{font-size:16px;font-weight:600;margin-bottom:4px;color:var(--text-primary)}.section-description{color:var(--text-secondary);font-size:14px;margin-bottom:16px}.logo-options{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.radio-option{display:flex;align-items:flex-start;gap:12px;padding:16px;border:1px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .2s}.radio-option:hover{border-color:var(--primary-color);background-color:var(--hover-bg)}.radio-option input[type=radio]{margin-top:2px;width:18px;height:18px;accent-color:var(--primary-color)}.radio-option input[type=radio]:checked+.radio-label{color:var(--primary-color)}.radio-label{display:flex;flex-direction:column;gap:2px}.radio-title{font-weight:500;color:var(--text-primary)}.radio-description{font-size:13px;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}.preview-box{background-color:var(--header-bg);border:1px solid var(--border-color);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-color);border-radius:8px;background-color:var(--bg-secondary);transition:all .2s}.logo-upload-area:hover{border-color:var(--primary-color);background-color:var(--hover-bg)}.upload-button{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 24px;border:none;background:none;color:var(--primary-color);cursor:pointer;font-size:14px;font-weight:500}.upload-button:hover{color:var(--primary-hover)}.upload-button:disabled{opacity:.5;cursor:not-allowed}.upload-hint{font-size:12px;color:var(--text-secondary);text-align:center;margin-top:8px;line-height:1.5}.branding-preview{margin-top:32px;padding-top:24px;border-top:1px solid var(--border-color)}.branding-preview h4{font-size:14px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px}.header-preview{border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.preview-header{background-color:var(--header-bg);padding:16px 24px;display:flex;align-items:center;min-height:64px;border-bottom:1px solid var(--header-border)}.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:24px;padding-top:24px;border-top:1px solid var(--border-color);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-color);border-top-color:var(--primary-color);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:#fff}.btn-outline-danger:disabled{opacity:.5;cursor:not-allowed}.subscription-usage{padding:16px}.subscription-usage h3{margin:0 0 4px;font-size:16px;font-weight:600;color:#333}.usage-description{margin:0 0 16px;color:#666;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:#f8f9fa;border-radius:6px}.metric-header{display:flex;justify-content:space-between;align-items:center}.metric-label{font-weight:500;color:#333;font-size:13px}.metric-value{font-weight:600;color:#555;font-size:12px;white-space:nowrap}.progress-bar{width:100%;height:6px;background-color:#e9ecef;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:#888;text-align:right}.usage-warning{margin-top:16px;padding:12px;background-color:#fff3cd;border:1px solid #ffc107;border-radius:6px}.usage-warning strong{display:block;margin-bottom:4px;color:#856404;font-size:13px}.usage-warning p{margin:0;color:#856404;font-size:12px}.loading,.error{padding:16px;text-align:center;color:#666;font-size:13px}.subscription-usage .loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 16px;gap:12px}.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:1.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: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(--card-shadow);padding:20px;transition:transform .2s,box-shadow .2s;border:1px solid var(--card-border)}.animal-card:hover{transform:translateY(-2px);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}.btn{padding:8px 16px;border:none;border-radius:4px;text-decoration:none;font-size:14px;cursor:pointer;transition:background-color .2s}.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(--card-shadow, 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(--card-shadow, 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:12px;color:var(--text-secondary, #666);text-transform:capitalize}.reason{flex:1;color:var(--error-color, #dc3545);font-weight:500}.last-session{font-size:12px;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:15px;padding:15px;background:var(--surface-secondary, #f8f9fa);border-radius:6px}.session-info h4{margin:0;color:var(--text-primary, #333)}.session-type{font-size:12px;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:12px;color:var(--text-secondary, #666)}.status{padding:2px 8px;border-radius:12px;font-size:12px;font-weight:500}.status.completed{background-color:#d4edda;color:#155724}.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:12px;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}.behavior-tag{display:inline-flex;align-items:center;background-color:var(--primary-light);color:var(--primary-color);padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500;border:1px solid var(--primary-color)}.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:12px;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}.animals-list-page{padding:20px;max-width: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(--card-shadow, 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,.filter-select{padding:8px 12px;border:1px solid var(--input-border, #ddd);border-radius:4px;font-size:14px;background-color:var(--input-bg, white);color:var(--text-primary, #333)}.search-input:focus,.filter-select:focus{outline:none;border-color:var(--primary-color, #007bff)}.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-bg, white);border-radius:8px;box-shadow:var(--card-shadow, 0 2px 4px rgba(0,0,0,.1));padding:20px;transition:transform .2s,box-shadow .2s;border:1px solid var(--card-border, transparent)}.animal-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md, 0 4px 8px rgba(0,0,0,.15))}.animal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.animal-header h3{margin:0;color:var(--text-primary, #333);font-size:18px}.animal-card-header{display:flex;align-items:center;gap:12px;margin-bottom:15px}.animal-card-avatar{flex-shrink:0}.animal-header-text{flex:1;display:flex;flex-direction:column;gap:4px}.animal-header-text h3{margin:0;color:var(--text-primary, #333);font-size:18px}.status{padding:4px 8px;border-radius:12px;font-size:12px;font-weight:500}.animal-info{margin-bottom:15px}.info-row{display:flex;justify-content:space-between;margin-bottom:5px}.info-row .label{font-size:14px;color:var(--text-secondary, #666)}.info-row .value{font-size:14px;color:var(--text-primary, #333);font-weight:500;text-transform:capitalize}.behavior-tags{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:15px}.behavior-tag{background-color:var(--secondary-light, #e9ecef);color:var(--text-secondary, #495057);padding:2px 8px;border-radius:12px;font-size:12px}.more-tags{color:var(--text-secondary, #666);font-size:12px;font-style:italic}.animal-actions{display:flex;gap:8px;margin-bottom:10px}.btn{padding:6px 12px;border:none;border-radius:4px;text-decoration:none;font-size:12px;cursor:pointer;transition:background-color .2s;text-align:center}.btn-sm{padding:4px 8px;font-size:11px}.animal-meta{border-top:1px solid var(--border-primary, #e9ecef);padding-top:10px}.animal-meta small{color:var(--text-secondary, #666);font-size:12px}.empty-state{text-align:center;padding:60px 20px;background:var(--card-bg, white);border-radius:8px;box-shadow:var(--card-shadow, 0 2px 4px rgba(0,0,0,.1))}.empty-state h3{margin:0 0 10px;color:var(--text-primary, #333)}.empty-state p{margin:0 0 20px;color:var(--text-secondary, #666)}.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 #e1e5e9;border-radius:8px;font-size:16px;background:#fff;transition:border-color .2s ease}.client-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.client-input.has-selection{border-color:#10b981}.dropdown-arrow{position:absolute;right:12px;cursor:pointer;color:#6b7280;display:flex;align-items:center;justify-content:center;width:20px;height:20px;transition:color .2s ease}.dropdown-arrow:hover{color:#374151}.dropdown-menu{position:absolute;top:100%;left:0;right:0;background:#fff;border:2px solid #e1e5e9;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 #f3f4f6;transition:background-color .2s ease}.dropdown-item:last-child{border-bottom:none}.dropdown-item:hover{background-color:#f9fafb}.dropdown-item.selected{background-color:#eff6ff;border-left:3px solid #3b82f6}.dropdown-item.loading,.dropdown-item.no-results{color:#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:#111827;font-size:14px}.client-email{font-size:12px;color:#6b7280}.client-pets{font-size:11px;color:#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:800px;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)}.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{background:var(--card-bg);border-radius:8px;box-shadow:var(--shadow-md);border:1px solid var(--card-border);overflow:hidden}.form-section{padding:30px;border-bottom:1px solid var(--border-primary)}.form-section:last-child{border-bottom:none}.form-section h2,.form-section h3{margin:0 0 20px;color:var(--text-primary);font-size:18px;font-weight:600}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px;align-items:start}.form-row:last-child{margin-bottom:0}.form-group{display:flex;flex-direction:column;gap:6px;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{padding:10px 12px;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}.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}.tag,.behavior-tag{display:inline-flex;align-items:center;gap:6px;background-color:var(--primary-light);color:var(--primary-color);padding:6px 12px;border-radius:16px;font-size:13px;font-weight:500;border:1px solid var(--primary-color);transition:background-color .2s,transform .1s}.tag:hover,.behavior-tag:hover{background-color:var(--info-bg)}.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:30px;background-color:var(--bg-secondary);display:flex;gap:15px;justify-content:flex-end;border-top:1px solid var(--border-primary)}.btn{padding:10px 20px;border:none;border-radius:4px;font-size:14px;cursor:pointer;transition:background-color .2s,transform .1s;text-decoration:none;display:inline-block;text-align:center}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:var(--primary-color);color:var(--text-inverse)}.btn-primary:hover:not(:disabled){background-color:var(--primary-hover)}.btn-secondary{background-color:var(--secondary-color);color:var(--text-inverse)}.btn-secondary:hover:not(:disabled){background-color:var(--secondary-hover)}.btn-sm{padding:6px 12px;font-size:12px}.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;flex-direction:column;gap:12px;align-items:flex-start}.photo-preview{display:flex;justify-content:center;padding:12px;border:1px solid var(--border-primary);border-radius:8px;background-color:var(--bg-secondary)}.photo-input{padding:8px;border:1px solid var(--input-border);border-radius:4px;background-color:var(--input-bg);color:var(--text-primary)}.remove-photo-btn{padding:6px 12px;background-color:var(--error-color);color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;transition:background-color .2s}.remove-photo-btn:hover{opacity:.9}.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:#333}.assessment-text p{margin:0 0 12px}.assessment-text p:last-child{margin-bottom: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:#666}.assessment-empty p{margin:0 0 8px}.empty-hint{font-size:.9rem;color:#999}.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:1200px;margin:0 auto}.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:#666;text-transform:capitalize}.status{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500}.status.active{background-color:#d4edda;color:#155724}.status.inactive{background-color:#f8d7da;color:#721c24}.header-actions{display:flex;gap:10px;flex-wrap:wrap}.btn{padding:8px 16px;border:none;border-radius:4px;text-decoration:none;font-size:14px;cursor:pointer;transition:background-color .2s;display:inline-block;text-align:center}.btn-primary{background-color:#007bff;color:#fff}.btn-primary:hover{background-color:#0056b3}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover{background-color:#545b62}.btn-success{background-color:#28a745;color:#fff}.btn-success:hover{background-color:#1e7e34}.btn-danger{background-color:#dc3545;color:#fff}.btn-danger:hover{background-color:#c82333}.btn-sm{padding:4px 8px;font-size:12px}.tabs{display:flex;border-bottom:1px solid #e0e0e0;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:#007bff;border-bottom-color:#007bff}.tab-content{min-height:400px}.overview-tab{background:var(--card-bg, white);border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:30px}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px}.info-section{display:flex;flex-direction:column;gap:15px}.info-section.full-width{grid-column:1 / -1}.info-section h2{margin:0;color:var(--text-primary, #333);font-size:18px;font-weight:600;border-bottom:1px solid var(--border-color, #e9ecef);padding-bottom:10px}.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-tag{background-color:var(--tag-bg, #e9ecef);color:var(--tag-text, #495057);padding:4px 12px;border-radius:12px;font-size:12px}.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{background:var(--card-bg, white);border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:30px}.tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:1px solid var(--border-color, #e9ecef)}.tab-header h2{margin:0;color:var(--text-primary, #333);font-size:20px}.empty-state{text-align:center;padding:60px 20px;color:#666}.empty-state p{margin:0 0 20px;font-size:16px}.sessions-list,.notes-list{display:flex;flex-direction:column;gap:20px}.session-card,.note-card{background:var(--card-secondary-bg, #f8f9fa);border-radius:8px;padding:20px;border-left:4px solid var(--primary-color, #007bff)}.session-header,.note-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.session-header h3,.note-header h3{margin:0;color:var(--text-primary, #333);font-size:16px;text-transform:capitalize}.session-info{margin-bottom:15px;color:var(--text-secondary, #666);font-size:14px}.session-date,.session-duration,.session-location{margin-bottom:5px;color:var(--text-secondary, #666)}.session-notes,.note-content{background:var(--card-bg, white);padding:15px;border-radius:6px;margin-bottom:15px;line-height:1.5;color:var(--text-primary, #333)}.session-actions,.note-actions{display:flex;gap:10px}.note-meta{display:flex;gap:10px;align-items:center}.category,.priority{padding:2px 8px;border-radius:12px;font-size:11px;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:11px}.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:12px;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}.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}@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{font-size:12px}.media-meta{font-size:10px}.media-controls{top:4px;right:4px}.media-control-btn{width:24px;height:24px}.media-control-btn svg{width:12px;height:12px}}.client-sessions-page{padding:20px;max-width: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}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}.btn{border:none;border-radius:6px;cursor:pointer;font-family:inherit;text-decoration:none;transition:all .2s}.btn-primary{background:#3b82f6;color:#fff}.btn-primary:hover{background:#2563eb}.btn:disabled,.btn.disabled{opacity:.5;cursor:not-allowed}.btn:disabled:hover,.btn.disabled:hover{background:#3b82f6}.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;grid-template-columns:repeat(2,1fr);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:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.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-content{padding:20px;background:#f9fafb;flex:1}.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:11px;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{background:var(--surface-secondary, #f8f9fa);padding:16px;border-radius:6px;border-left:4px solid var(--primary-color, #007bff);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:12px}.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: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:#fef3c7;border:1px solid #f59e0b;border-radius:8px}.consent-warning h3{color:#92400e;margin-bottom:1rem}.consent-warning p{color:#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;width:100%;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:100%;box-sizing:border-box}.calendar-day-cell{aspect-ratio:1;border:1px solid #e5e7eb;border-top:none;box-sizing:border-box}.calendar-day{width:100%;height:100%;border:none;background:#fff;cursor:pointer;font-size:.875rem;transition:all .2s;display:flex;align-items:center;justify-content:center}.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;background:#f9fafb}.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}.time-slot.selected{background:#3b82f6;border-color:#3b82f6;color:#fff}.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}.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:1200px;margin:0 auto}.client-tasks-header{margin-bottom:30px}.client-tasks-header h1{color:#2c3e50;margin-bottom:5px}.client-tasks-header p{color:#6c757d;margin:0}.client-tasks-loading,.client-tasks-error,.client-tasks-empty{text-align:center;padding:40px;color:#6c757d}.client-tasks-error button{margin-top:10px;padding:8px 16px;background:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer}.client-tasks-list{display:flex;flex-direction:column;gap:20px}.client-task-card{background:#fff;border:1px solid #e9ecef;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.client-task-header{padding:20px;cursor:pointer;border-bottom:1px solid #e9ecef}.client-task-header:hover{background:#f8f9fa}.client-task-title{display:flex;align-items:center;gap:15px;margin-bottom:10px}.client-task-title h3{margin:0;color:#2c3e50;flex:1}.client-task-status{padding:4px 12px;border-radius:20px;color:#fff;font-size:12px;font-weight:500;text-transform:uppercase}.client-task-meta{display:flex;gap:20px;color:#6c757d;font-size:14px}.client-task-details{padding:20px;background:#f8f9fa}.client-task-details h4{color:#2c3e50;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:#495057}.status-tracker{display:flex;align-items:center;justify-content:space-between;max-width: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:#e9ecef;color:#6c757d;display:flex;align-items:center;justify-content:center;font-weight:700;margin-bottom:8px;transition:all .3s ease}.status-step.active .step-circle{background:#28a745!important;color:#fff!important}.status-step span{font-size:12px;color:#6c757d;text-align:center;font-weight:500}.status-step.active span{color:#28a745!important;font-weight:600}.step-connector{flex:1;height:2px;background:#e9ecef;margin:0 10px 30px}.step-connector.active{background:#28a745!important}.notes-list{margin-bottom:15px}.note-item{background:#fff;padding:12px;border-radius:6px;margin-bottom:10px;border-left:3px solid #007bff}.note-item p{margin:0 0 5px;color:#495057}.note-meta{display:flex;justify-content:space-between;align-items:center}.note-meta small{color:#6c757d;font-size:12px}.note-actions{display:flex;gap:8px}.edit-btn,.delete-btn{padding:4px 8px;border:none;border-radius:3px;font-size:12px;cursor:pointer}.edit-btn{background:#ffc107;color:#212529}.edit-btn:hover{background:#e0a800}.delete-btn{background:#dc3545;color:#fff}.delete-btn:hover{background:#c82333}.edit-note textarea{width:100%;padding:8px;border:1px solid #ced4da;border-radius:4px;resize:vertical;font-family:inherit;margin-bottom:8px}.edit-actions{display:flex;gap:8px}.edit-actions button{padding:6px 12px;border:none;border-radius:4px;cursor:pointer;font-size:12px}.edit-actions button:first-child{background:#28a745;color:#fff}.edit-actions button:first-child:hover{background:#218838}.edit-actions button:last-child{background:#6c757d;color:#fff}.edit-actions button:last-child:hover{background:#5a6268}.no-notes{color:#6c757d;font-style:italic;margin-bottom:15px}.add-note{display:flex;flex-direction:column;gap:10px}.add-note textarea{padding:10px;border:1px solid #ced4da;border-radius:4px;resize:vertical;font-family:inherit}.add-note button{align-self:flex-start;padding:8px 16px;background:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px}.add-note button:hover:not(:disabled){background:#0056b3}.add-note button:disabled{background:#6c757d;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:.6;cursor:not-allowed}.start-btn{background:#007bff;color:#fff}.start-btn:hover:not(:disabled){background:#0056b3}.complete-btn{background:#28a745;color:#fff}.complete-btn:hover:not(:disabled){background:#218838}.reopen-btn{background:#ffc107;color:#212529}.reopen-btn:hover:not(:disabled){background:#e0a800}.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%}}.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:12px}.session-card{border:1px solid #e0e0e0;border-radius:6px;background:#fff;transition:all .2s}.session-card:hover{box-shadow:0 2px 8px #0000001a}.session-card.expanded{border-color:#4caf50;box-shadow:0 2px 8px #4caf5033}.session-card-header{display:flex;align-items:center;gap:15px;padding:15px;cursor:pointer;-webkit-user-select:none;user-select:none}.session-date-time{display:flex;flex-direction:column;min-width:120px}.session-date{font-weight:600;color:#333;font-size:.95rem}.session-time{font-size:.85rem;color:#666}.session-trainer{flex:1}.trainer-name{font-weight:500;color:#333}.status-badge{padding:4px 12px;border-radius:12px;font-size:.8rem;font-weight:600;text-transform:uppercase}.status-completed{background:#e8f5e9;color:#2e7d32}.status-scheduled{background:#e3f2fd;color:#1565c0}.status-cancelled{background:#ffebee;color:#c62828}.expand-icon{color:#666;font-size:.8rem;transition:transform .2s}.session-card.expanded .expand-icon{transform:rotate(0)}.session-card-body{padding:0 15px 15px;border-top:1px solid #f0f0f0;animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.session-card-body h4{margin:15px 0 10px;font-size:1rem;color:#333}.session-notes p{color:#555;line-height:1.6;white-space:pre-wrap}.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;color:#666;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}.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-media-uploader{width:100%}.media-upload-dropzone{border:2px dashed #cbd5e0;border-radius:8px;padding:32px;text-align:center;cursor:pointer;transition:all .2s ease;background-color:#f7fafc}.media-upload-dropzone:hover:not(.disabled){border-color:#4299e1;background-color:#ebf8ff}.media-upload-dropzone.drag-over{border-color:#4299e1;background-color:#ebf8ff;transform:scale(1.02)}.media-upload-dropzone.disabled{opacity:.5;cursor:not-allowed;background-color:#edf2f7}.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:12px;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:12px;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}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.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: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}}.session-detail-page{max-width:1200px;margin:0 auto;padding:20px}.session-detail-page .page-header{margin-bottom:30px;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-scheduled{background-color:#dbeafe;color:#1e40af}.session-detail-page .status-pending{background-color:#fef3c7;color:#92400e}.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 .btn-danger{background-color:#dc2626;color:#fff;border:none;padding:.5rem 1.25rem;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .2s;white-space:nowrap;min-width:140px}.session-detail-page .btn-danger:hover:not(:disabled){background-color:#b91c1c}.session-detail-page .btn-danger:disabled{opacity:.5;cursor:not-allowed}.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: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 #3b82f61a}.form-textarea{resize:vertical;font-family:inherit}@media(max-width:768px){.session-actions{flex-direction:column}.session-actions .btn{width:100%;justify-content:center}}.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{background:var(--card-bg);border-radius:8px;box-shadow:var(--card-shadow);padding:20px;margin:20px 0}.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);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}.modal-overlay{position:fixed;inset:0;background:var(--modal-overlay, rgba(0, 0, 0, .5));display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--modal-bg, white);border-radius:8px;box-shadow:var(--shadow-lg, 0 4px 6px rgba(0, 0, 0, .1));position:relative;padding:2rem}.modal-sm{max-width:500px;width:90%}.modal-md{max-width:800px;width:90%}.modal-lg{max-width:1200px;width:90%;max-height:90vh;overflow-y:auto}.modal-xl{max-width:1400px;width:90%;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid var(--border-primary, #e9ecef)}.modal-header h3{margin:0;color:var(--text-primary, #1a1a1a)}.modal-close-btn{position:absolute;top:1rem;right:1rem;background:none;border:none;font-size:1.75rem;cursor:pointer;color:var(--text-secondary, #666);z-index:10;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;line-height:1}.modal-close-btn:hover{color:var(--text-primary, #333)}.modal-body{padding:1rem 0;color:var(--text-primary)}.modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding-top:1rem;margin-top:1rem;border-top:1px solid var(--border-primary, #e9ecef)}@media(max-width:1280px){.modal-lg,.modal-xl{max-width:95%}}@media(max-width:768px){.modal-content{padding:1rem}.modal-sm,.modal-md,.modal-lg,.modal-xl{width:95%;max-width:100%;max-height:95vh}.modal-close-btn{top:.5rem;right:.5rem}}
