@charset "UTF-8";:root,[data-theme=light]{--brand-atomic-tangerine: #FE6B34;--brand-vintage-grape: #46375B;--brand-white: #FEFFFF;--bg-primary: #FEFFFF;--bg-secondary: #F8F6FA;--bg-tertiary: #F0EDF4;--bg-elevated: #FEFFFF;--bg-overlay: rgba(70, 55, 91, .5);--surface-primary: #FEFFFF;--surface-secondary: #F8F6FA;--surface-hover: #fef1e6;--text-primary: #2c3e45;--text-secondary: #7a8a8f;--text-tertiary: #9ea9ad;--text-quaternary: #2c383d;--text-inverse: #FEFFFF;--text-muted: #7A6B8F;--border-primary: #c8c1d2;--border-secondary: #D4CDE0;--border-focus: #FE6B34;--primary-color: #FE6B34;--primary-hover: #E55A2B;--primary-light: #FFEEE7;--primary-dark: #D14A1C;--secondary-color: #46375B;--secondary-hover: #362A47;--secondary-light: #F0EDF4;--success-color: #10b981;--success-bg: #d1fae5;--success-text: #065f46;--success-border: #a7f3d0;--alert-success-bg: var(--success-bg);--alert-warning-bg: var(--warning-bg);--alert-error-bg: var(--error-bg);--alert-error-border: var(--error-border);--alert-error-text: var(--error-text);--alert-info-text: var(--info-text);--chip-teal-text: #0e7490;--chip-teal-bg: rgba(14, 116, 144, .12);--warning-color: #f59e0b;--warning-bg: #fef3c7;--warning-text: #92400e;--warning-border: #fcd34d;--error-color: #ef4444;--error-bg: #fee2e2;--error-text: #FF2C2C;--error-border: #fecaca;--info-color: #FE6B34;--info-bg: #FFEEE7;--info-text: #D14A1C;--info-border: #FFB89E;--hover-bg: #fef1e6;--active-bg: #E5E0EC;--focus-ring: rgba(254, 107, 52, .4);--shadow-sm: 0 1px 2px 0 rgba(70, 55, 91, .05);--shadow-md: 0 4px 6px -1px rgba(70, 55, 91, .1), 0 2px 4px -1px rgba(70, 55, 91, .06);--shadow-lg: 0 10px 15px -3px rgba(70, 55, 91, .1), 0 4px 6px -2px rgba(70, 55, 91, .05);--shadow-xl: 0 20px 25px -5px rgba(70, 55, 91, .1), 0 10px 10px -5px rgba(70, 55, 91, .04);--shadow-card: 0 4px 12px rgba(74, 64, 58, .08);--card-bg: #FEFFFF;--card-border: #E5E0EC;--input-bg: #FFFFFF;--input-border: #D4CDE0;--input-focus-border: #FE6B34;--input-placeholder: #7A6B8F;--input-disabled-bg: #F8F6FA;--table-header-bg: #F8F6FA;--table-row-hover: #F0EDF4;--table-border: #E5E0EC;--sidebar-bg: #46375B;--sidebar-text: #D4CDE0;--sidebar-text-active: #FEFFFF;--sidebar-hover: rgba(255, 255, 255, .1);--sidebar-active: rgba(254, 107, 52, .2);--header-bg: #FEFFFF;--header-border: #E5E0EC;--modal-bg: #FEFFFF;--modal-overlay: rgba(70, 55, 91, .5);--spinner-track: #E5E0EC;--spinner-fill: #FE6B34;--scrollbar-track: #f5f0eb;--scrollbar-thumb: #ede8e2;--scrollbar-thumb-hover: #ede8e2;--body-background: #f5f0e8;--card-background: #fffdf9;--accent-orange: #f4a261;--accent-orange-hover: #e79552;--accent-orange-btn-background: rgb(242 153 83 / .1);--accent-orange-btn-hover: rgb(242 153 83 / .2);--accent-coral: #e87152;--chip-orange-bg: #fef1e6;--chip-purple-bg: #eee9f5;--purple-text: #8b79b3;--cal-day-background: rgba(74, 64, 58, .03);--cal-day-cell-bg: #fffdf9;--cal-header-bg: #fffdf9;--cal-muted-bg: #F8F6FA;--cal-nav-hover-bg: #fef1e6;--cal-other-month-text: #9ea9ad;--cal-border: #c8c1d2;--warm-tint-bg: rgba(180, 83, 9, .08);--warm-tint-border: rgba(180, 83, 9, .25);--card-divider: var(--border-primary);--elevated-panel-bg: transparent;--text-on-panel: var(--text-secondary);--header-description-color: var(--text-secondary);--session-subtle-bg: #f9fafb;--session-pre-notes-bg: #fef3c7;--session-pre-notes-text: #78350f;--session-pre-notes-strong: #92400e;--session-post-notes-bg: #dcfce7;--session-post-notes-text: #14532d;--session-post-notes-strong: #166534;--session-client-pre-notes-bg: #f0f9ff;--session-client-pre-notes-strong: #0369a1;--session-client-pre-notes-p-bg: #ffffff;--session-client-pre-notes-p-text: #0c4a6e;--session-client-pre-notes-border: #0ea5e9;--session-visibility-bg: #f1f5f9;--session-visibility-border: #cbd5e1;--session-visibility-text: #475569;--neutral-text-primary: #1f2937;--neutral-text-secondary: #6b7280;--neutral-text-soft: #4b5563;--neutral-text-muted: #9ca3af;--neutral-text-strong: #111827;--neutral-text-on-dark: #f9fafb;--neutral-surface: #ffffff;--neutral-surface-alt: #f8f9fa;--neutral-surface-strong: #f3f4f6;--neutral-surface-hover: #e5e7eb;--neutral-border: #e5e7eb;--neutral-border-strong: #d1d5db;--neutral-border-soft: #eeeeee;--info-blue-bg: #eff6ff;--info-blue-bg-strong: #dbeafe;--info-blue-text: #1e40af;--info-blue-text-strong: #1e3a8a;--info-blue-border: #bfdbfe;--info-blue-border-strong: #93c5fd;--info-blue-accent: #2563eb;--info-blue-accent-soft: #3b82f6;--info-blue-ring: rgba(37, 99, 235, .1);--info-blue-chip-bg: #e3f2fd;--info-blue-chip-text: #1976d2;--attachment-chip-bg: #eff6ff;--attachment-chip-bg-hover: #dbeafe;--attachment-chip-text: #1e40af;--attachment-chip-text-hover: #1e3a8a;--attachment-chip-border: #bfdbfe;--attachment-chip-border-hover: #93c5fd;--status-signed-bg: #d1fae5;--status-signed-bg-strong: #d4edda;--status-signed-text: #065f46;--status-signed-text-bootstrap: #155724;--status-signed-text-strong: #4ade80;--status-signed-border: #c3e6cb;--status-flagged-bg: #fee2e2;--status-flagged-bg-strong: #f8d7da;--status-flagged-text: #991b1b;--status-flagged-text-strong: #721c24;--status-flagged-border: #fecaca;--status-locked-bg: #fff5f5;--status-locked-text: #9f1239;--status-locked-border: #f5c2c7;--status-warning-deep-bg: #fff3cd;--status-warning-deep-text: #856404;--status-warning-deep-border: #ffeaa7;--accent-lavender-text: #7A6B8F;--btn-danger-color: #dc3545;--surface-blocked-bg: #f5f5f5;--text-blocked: #9ca3af;--surface-blocked-overlay: rgba(128, 128, 128, .08);--neutral-focus-ring: rgba(37, 99, 235, .1);--slate-row-bg: var(--card-background);--slate-row-bg-hover: var(--surface-secondary, #f8f9fa);--slate-row-border: var(--card-border, #e5e7eb);--modal-elevated-bg: transparent;--modal-elevated-border: transparent;--session-card-hover-border: #3b82f6;--session-card-hover-bg: #f8fafc;--editing-banner-bg: #eef6ff;--editing-banner-border: #cfe3f8;--editing-banner-text: #1f5f93;--field-label-slate: #4b5a69;--cal-action-btn-bg: var(--surface-secondary, #f9fafb);--cal-action-btn-text: var(--text-primary, #111827);--cal-action-btn-border: transparent;--cal-action-btn-hover-bg: var(--primary-light, #eff6ff);--cal-action-btn-hover-border: var(--primary-color, #3b82f6);--cal-drop-target-bg: var(--chip-orange-bg, #fff1e6);--btn-danger-hover-bg: #fff5f5;--form-input-border-on-dark: var(--border-primary, #e5e7eb);--soft-pill-bg: var(--surface-secondary);--chevron-svg-url: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M2.5 4.5L6 8l3.5-3.5'/%3E%3C/svg%3E");--available-hover-bg: var(--warm-tint-bg);--modal-shadow: 0 20px 60px rgba(0, 0, 0, .3);--ccfp-card-filter: none;--ccfp-card-shadow: 0 12px 32px rgba(0, 0, 0, .1);--ccfp-card-tile-shadow: none;--calendar-session-bg: rgba(134, 239, 172, .4);--calendar-session-text: #166534;--calendar-session-pending-text: #b45309}[data-theme=dark]{--brand-atomic-tangerine: #FE6B34;--brand-vintage-grape: #46375B;--brand-white: #FEFFFF;--bg-primary: #1E1730;--bg-secondary: #1a2f3a;--bg-tertiary: #362D4A;--bg-elevated: #2A2240;--bg-overlay: rgba(0, 0, 0, .7);--surface-primary: #2A2240;--surface-secondary: #16303d;--surface-hover: rgba(255, 255, 255, .05);--text-primary: #F8F9FA;--text-secondary: #A9B7BC;--text-tertiary: #5D7A85;--text-quaternary: #2c383d;--text-inverse: #1E1730;--text-muted: #7A6B8F;--border-primary: #9ea9ad;--border-secondary: #f4a261;--border-focus: #FF7A47;--primary-color: #f4a261;--primary-hover: #e79552;--primary-light: #3D2A35;--primary-dark: #FF9B70;--secondary-color: var(--text-tertiary);--secondary-hover: #bb8a61;--secondary-light: #362D4A;--success-color: #34d399;--sage-green: #6aab8e;--success-bg: rgba(34, 197, 94, .15);--success-text: #a7f3d0;--success-border: #065f46;--alert-success-bg: #064e3b;--alert-warning-bg: #78350f;--alert-error-bg: #7f1d1d;--alert-error-border: #991b1b;--alert-error-text: #fecaca;--alert-info-text: #FFD4C4;--chip-teal-text: #57b9db;--chip-teal-bg: rgba(74, 158, 187, .15);--warning-color: #fbbf24;--warning-bg: #3D3020;--warning-text: #fde68a;--warning-border: #92400e;--error-color: #f87171;--error-bg: #3D2020;--error-text: #f87171;--error-border: rgba(239, 68, 68, .2);--error-hover: rgb(240 99 113 / 21%);--info-color: #FF7A47;--info-bg: #3D2A35;--info-text: #FFB89E;--info-border: #D14A1C;--hover-bg: rgba(255, 255, 255, .05);--active-bg: #4D4365;--focus-ring: rgba(255, 122, 71, .4);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4), 0 2px 4px -1px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .4), 0 4px 6px -2px rgba(0, 0, 0, .3);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .4), 0 10px 10px -5px rgba(0, 0, 0, .3);--shadow-card: 0 4px 12px rgba(74, 64, 58, .08);--card-bg: #0f2530;--card-border: #2a4450;--input-bg: #1a2f3a;--input-border: #2a4450;--input-focus-border: #f4a261;--input-placeholder: #5D7A85;--input-disabled-bg: #142934;--table-header-bg: #081c27;--table-row-hover: rgba(255,255,255,.05);--table-border: transparent;--sidebar-bg: #150F22;--sidebar-text: #A89BB8;--sidebar-text-active: #F5F3F7;--sidebar-hover: rgba(255, 255, 255, .05);--sidebar-active: rgba(255, 122, 71, .2);--header-bg: #2A2240;--header-border: #3D3355;--modal-bg: #0f2530;--modal-overlay: rgba(0, 0, 0, .7);--spinner-track: #3D3355;--spinner-fill: #FF7A47;--scrollbar-track: #091820;--scrollbar-thumb: #0f2530;--scrollbar-thumb-hover: #0f2530;--body-background: #091820;--card-background: #0f2530;--cal-day-background: #142934;--cal-day-cell-bg: #142934;--cal-header-bg: #362D4A;--cal-muted-bg: #362D4A;--cal-nav-hover-bg: #4D4365;--cal-other-month-text: #7A6B8F;--cal-border: transparent;--accent-orange: #f4a261;--accent-orange-hover: #e79552;--accent-orange-btn-background: rgb(242 153 83 / .1);--accent-orange-btn-hover: rgb(242 153 83 / .2);--accent-coral: #e87152;--chip-orange-bg: #3d3b36;--chip-orange-border: #544b3f;--chip-purple-bg: #2d2a3d;--purple-text: #b19fd9;--warm-tint-bg: rgba(156, 87, 23, .2);--warm-tint-border: rgba(244, 162, 97, .3);--card-divider: transparent;--elevated-panel-bg: var(--input-bg);--text-on-panel: #D4CDE0;--header-description-color: var(--text-tertiary);--session-subtle-bg: #1E1730;--session-pre-notes-bg: #422006;--session-pre-notes-text: #fde68a;--session-pre-notes-strong: #fbbf24;--session-post-notes-bg: #064e3b;--session-post-notes-text: #d1fae5;--session-post-notes-strong: #86efac;--session-client-pre-notes-bg: #1e3a8a;--session-client-pre-notes-strong: #FFB89E;--session-client-pre-notes-p-bg: #1e293b;--session-client-pre-notes-p-text: #FFD4C4;--session-client-pre-notes-border: #FE6B34;--session-visibility-bg: #1e293b;--session-visibility-border: #475569;--session-visibility-text: #94a3b8;--neutral-text-primary: #f9fafb;--neutral-text-secondary: #9ca3af;--neutral-text-soft: #d1d5db;--neutral-text-muted: #6b7280;--neutral-text-strong: #F5F3F7;--neutral-text-on-dark: #f9fafb;--neutral-surface: #1f2937;--neutral-surface-alt: #1f2937;--neutral-surface-strong: #374151;--neutral-surface-hover: #4b5563;--neutral-border: #374151;--neutral-border-strong: #4b5563;--neutral-border-soft: #374151;--info-blue-bg: #1e3a5f;--info-blue-bg-strong: #1e40af;--info-blue-text: #93c5fd;--info-blue-text-strong: #bfdbfe;--info-blue-border: #1e40af;--info-blue-border-strong: #93c5fd;--info-blue-accent: #60a5fa;--info-blue-accent-soft: #60a5fa;--info-blue-ring: rgba(96, 165, 250, .2);--info-blue-chip-bg: #1e3a5f;--info-blue-chip-text: #93c5fd;--attachment-chip-bg: #1f2937;--attachment-chip-bg-hover: #334155;--attachment-chip-text: #e2e8f0;--attachment-chip-text-hover: #f8fafc;--attachment-chip-border: #334155;--attachment-chip-border-hover: #475569;--status-signed-bg: #064e3b;--status-signed-bg-strong: #064e3b;--status-signed-text: #a7f3d0;--status-signed-text-bootstrap: #a7f3d0;--status-signed-text-strong: #4ade80;--status-signed-border: #065f46;--status-flagged-bg: #7f1d1d;--status-flagged-bg-strong: #7f1d1d;--status-flagged-text: #fecaca;--status-flagged-text-strong: #fecaca;--status-flagged-border: #991b1b;--status-locked-bg: #3f0f13;--status-locked-text: #fecaca;--status-locked-border: #7f1d1d;--status-warning-deep-bg: #78350f;--status-warning-deep-text: #fde68a;--status-warning-deep-border: #92400e;--accent-lavender-text: #D4CDE0;--btn-danger-color: #dc3545;--surface-blocked-bg: #1a2533;--text-blocked: #4a5e73;--surface-blocked-overlay: rgba(148, 163, 184, .07);--neutral-focus-ring: rgba(96, 165, 250, .2);--slate-row-bg: #172b3d;--slate-row-bg-hover: #1c3348;--slate-row-border: #23394d;--modal-elevated-bg: var(--card-background);--modal-elevated-border: var(--card-border);--session-card-hover-border: var(--accent-orange);--session-card-hover-bg: var(--input-bg);--editing-banner-bg: #253750;--editing-banner-border: #36506f;--editing-banner-text: #bfdbfe;--field-label-slate: var(--text-tertiary);--cal-action-btn-bg: transparent;--cal-action-btn-text: #F5F3F7;--cal-action-btn-border: transparent;--cal-action-btn-hover-bg: var(--accent-orange-hover);--cal-action-btn-hover-border: #7A6B8F;--cal-drop-target-bg: rgba(254, 107, 52, .15);--btn-danger-hover-bg: rgba(220, 53, 69, .1);--form-input-border-on-dark: transparent;--soft-pill-bg: transparent;--chevron-svg-url: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%239ca3af' d='M2.5 4.5L6 8l3.5-3.5'/%3E%3C/svg%3E");--available-hover-bg: var(--accent-orange);--modal-shadow: 0 20px 60px rgba(0, 0, 0, .5);--ccfp-card-filter: brightness(.94) saturate(.95);--ccfp-card-shadow: 0 12px 32px rgba(0, 0, 0, .45);--ccfp-card-tile-shadow: 0 12px 32px rgba(0, 0, 0, .45);--calendar-session-bg: rgba(34, 197, 94, .18);--calendar-session-text: #86efac;--calendar-session-pending-text: #fbbf24}html{transition:background-color .3s ease,color .3s ease}body,.layout,.layout-content,.header,.sidebar,.card,.modal-content,.table,input,select,textarea,button{transition:background-color .3s ease,border-color .3s ease,color .3s ease}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 2rem;color:var(--text-tertiary);gap:1rem;background:transparent}.empty-state-icon{font-size:3rem;opacity:.5;margin-bottom:.5rem}.empty-state-title{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.empty-state-message{font-size:.95rem;color:var(--text-tertiary);max-width:400px;line-height:1.5}.empty-state-action{margin-top:1rem}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 2rem;color:var(--text-tertiary);gap:1rem}.loading-spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--accent-orange);border-radius:50%;animation:spin .8s linear infinite}.loading-message{font-size:.95rem;color:var(--text-tertiary)}.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 2rem;color:var(--error-color, #ef4444);gap:1rem}.error-state-icon{font-size:3rem;opacity:.7}.error-state-title{font-size:1.25rem;font-weight:600;color:var(--error-color, #ef4444)}.error-state-message{font-size:.95rem;color:var(--text-secondary);max-width:400px;line-height:1.5}.error-state-action{margin-top:1rem}.form-group{display:flex;flex-direction:column;margin-bottom:1.25rem;gap:.5rem;background:var(--card-background);padding:1rem 2rem;border-radius:16px}.form-group label{font-size:.875rem;font-weight:500;color:var(--text-on-panel, var(--text-primary));margin-bottom:.25rem}.form-group input,.form-group textarea,.form-group select{border:1px solid var(--border-color);border-radius:8px;font-size:.95rem;background:var(--input-bg);color:var(--text-primary);transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.form-group input:disabled,.form-group textarea:disabled,.form-group select:disabled{opacity:.6;cursor:not-allowed;background:var(--surface-secondary)}.form-group .error-message{font-size:.8rem;color:var(--error-color, #ef4444);margin-top:.25rem}.form-group .help-text{font-size:.8rem;color:var(--text-tertiary);margin-top:.25rem}.btn{border:none;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:3px 10px;font-size:12px;border-radius:6px;line-height:1.4;height:30px;min-height:unset;align-self:center}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--accent-orange);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-orange-hover)}.btn-outline{background:transparent;border:1px solid var(--border-color);color:var(--text-on-panel, var(--text-primary))}.btn-outline:hover:not(:disabled){background:var(--surface-secondary);border-color:var(--accent-orange)}.card{background:var(--card-background);border-radius:12px;padding:1.5rem;transition:all .2s}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--card-divider, var(--border-color))}.card-title{font-size:1.25rem;font-weight:600;color:var(--text-primary)}.card-body{color:var(--text-on-panel, var(--text-secondary))}.card-footer{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--card-divider, var(--border-color));background:var(--elevated-panel-bg, transparent);display:flex;align-items:center;justify-content:flex-end;gap:.75rem}.card-hover:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000001a}.badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:500}.badge-orange{background:var(--chip-orange-bg);color:var(--accent-orange)}.badge-purple{background:var(--chip-purple-bg);color:var(--purple-text)}.badge-success{background:#22c55e1a;color:#22c55e}.badge-error{background:#ef44441a;color:#ef4444}.badge-info{background:#fe6b3426;color:#26b2c9}.modal-content{background:var(--card-background);border-radius:12px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid var(--card-divider, var(--border-color))}.modal-title{font-size:1.5rem;font-weight:600;color:var(--text-primary)}.modal-close{background:transparent;border:none;font-size:1.5rem;color:var(--text-tertiary);cursor:pointer;padding:.25rem;line-height:1;transition:color .2s}.modal-close:hover{color:var(--text-primary)}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding:1.5rem;border-top:1px solid var(--card-divider, var(--border-color))}.table-container{overflow-x:auto;border-radius:12px;background:var(--card-background)}.table thead{background:var(--surface-secondary)}.table th{padding:1rem;text-align:left;font-size:.875rem;font-weight:600;color:var(--text-on-panel, var(--text-secondary));text-transform:uppercase;letter-spacing:.05em}.table td{padding:1rem;border-top:1px solid var(--table-border, var(--border-color));color:var(--text-on-panel, var(--text-primary))}.table tbody tr:hover{background:var(--surface-secondary)}.list{list-style:none;padding:0;margin:0}.list-item{padding:1rem;border-bottom:1px solid var(--border-color);display:flex;align-items:center;gap:1rem;transition:background .2s}.list-item:last-child{border-bottom:none}.list-item:hover{background:var(--surface-secondary)}.list-item-content{flex:1}.list-item-title{font-weight:500;color:var(--text-primary);margin-bottom:.25rem}.list-item-subtitle{font-size:.875rem;color:var(--text-tertiary)}.divider{height:1px;background:var(--border-color);margin:1.5rem 0}.divider-vertical{width:1px;background:var(--border-color);margin:0 1rem}.flex-column{flex-direction:column}.gap-sm{gap:.5rem}.gap-md{gap:1rem}.gap-lg{gap:1.5rem}.mt-sm{margin-top:.5rem}.mt-md{margin-top:1rem}.mt-lg{margin-top:1.5rem}.mt-xl{margin-top:2rem}.mb-sm{margin-bottom:.5rem}.mb-md{margin-bottom:1rem}.mb-lg{margin-bottom:1.5rem}.mb-xl{margin-bottom:2rem}.p-sm{padding:.5rem}.p-md{padding:1rem}.p-lg{padding:1.5rem}.p-xl{padding:2rem}.spinner,.loading-spinner{border-radius:50%;border-style:solid;border-color:var(--spinner-track, #e5e7eb);border-top-color:var(--spinner-fill, #3b82f6);animation:spin 1s linear infinite}.spinner-xs,.loading-spinner-xs{width:12px;height:12px;border-width:2px}.spinner-small,.loading-spinner-small{width:16px;height:16px;border-width:2px}.spinner-sm,.loading-spinner-sm{width:24px;height:24px;border-width:2px}.spinner,.loading-spinner,.spinner-medium,.loading-spinner-medium{width:32px;height:32px;border-width:3px}.spinner-lg,.loading-spinner-lg{width:40px;height:40px;border-width:4px}.spinner-large,.loading-spinner-large,.spinner-xl,.loading-spinner-xl{width:48px;height:48px;border-width:4px}.spinner-primary,.loading-spinner-primary{border-color:var(--spinner-track, #e5e7eb);border-top-color:var(--primary-color, #3b82f6)}.spinner-secondary,.loading-spinner-secondary{border-color:var(--spinner-track, #e5e7eb);border-top-color:var(--secondary-color, #6b7280)}.spinner-success,.loading-spinner-success{border-color:var(--success-bg, #d1fae5);border-top-color:var(--success-color, #10b981)}.spinner-warning,.loading-spinner-warning{border-color:var(--warning-bg, #fef3c7);border-top-color:var(--warning-color, #f59e0b)}.spinner-danger,.loading-spinner-danger{border-color:var(--error-bg, #fee2e2);border-top-color:var(--error-color, #ef4444)}.spinner-white,.loading-spinner-white{border-color:#ffffff4d;border-top-color:#fff}.spinner-brand,.loading-spinner-brand{border-color:var(--spinner-track, #e5e7eb);border-top-color:#667eea}.loading-spinner-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;gap:16px}.loading-spinner-fullscreen{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background-color:var(--bg-overlay, rgba(255, 255, 255, .9));z-index:9998}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem;min-height:200px;color:var(--text-secondary, #6b7280)}.loading-state .spinner,.loading-state .loading-spinner{margin:0 auto 1rem}.page-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;padding:3rem;background:transparent}.page-loading .spinner{margin-bottom:1rem}.page-loading p{color:var(--text-secondary, #6b7280);font-size:16px;margin:0}.loading-centered{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;min-height:200px;gap:1rem;color:var(--text-secondary, #6b7280)}.loading-centered .loading-spinner{margin:0}.spinner-message,.loading-message{font-size:14px;color:var(--text-secondary, #6b7280);text-align:center;margin:0}.spinner-inline{display:inline-block;width:14px;height:14px;border-width:2px;vertical-align:middle;margin-right:6px}.loading-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background-color:var(--bg-overlay, rgba(255, 255, 255, .8));-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:10;border-radius:inherit}.loading-overlay-content{display:flex;flex-direction:column;align-items:center;gap:16px;padding:24px;background-color:var(--bg-primary, white);border-radius:8px;box-shadow:var(--shadow-lg, 0 4px 12px rgba(0, 0, 0, .1))}.progress-bar{width:100%;height:8px;background-color:var(--border-primary, #e5e7eb);border-radius:4px;overflow:hidden}.progress-bar-fill{height:100%;background-color:var(--primary-color, #3b82f6);transition:width .3s ease;border-radius:4px}.progress-text{font-size:12px;color:var(--text-secondary, #6b7280);text-align:center;margin-top:8px}@media(prefers-reduced-motion:reduce){.spinner,.loading-spinner,.spinner-small,.loading-spinner-small,.spinner-xs,.spinner-sm,.spinner-lg,.spinner-xl,.spinner-large,.spinner-medium,.loading-spinner-xs,.loading-spinner-sm,.loading-spinner-lg,.loading-spinner-xl,.loading-spinner-large,.loading-spinner-medium,.spinner-inline{animation:none}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:3px 10px;border:none;border-radius:6px;font-size:12px;font-weight:500;line-height:1.4;height:30px;min-height:unset;align-self:center;cursor:pointer;transition:all .2s ease;text-decoration:none;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px}.btn-xs{padding:.25rem .5rem;font-size:.75rem}.btn-sm{padding:.375rem .75rem;font-size:.8125rem}.btn-lg{padding:.75rem 1.5rem;font-size:1rem}.btn-xl{padding:1rem 2rem;font-size:1.125rem}.btn-icon{display:inline-flex;align-items:center;justify-content:center;line-height:0}.btn-primary{background-color:var(--primary-color, #FE6B34);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--primary-hover, #E55A2B)}.btn-secondary{background-color:var(--body-background);color:var(--text-secondary);border:1px solid var(--border-primary)!important}.btn-secondary:hover:not(:disabled){background-color:var(--hover-bg)}.btn-text{background-color:transparent;color:var(--text-primary);border:1px solid var(--border-primary)!important}.btn-text:hover:not(:disabled){background-color:var(--hover-bg);border-color:var(--text-secondary)!important}.btn-success{background-color:var(--success-bg);border:1px solid var(--success-color)!important;color:var(--success-color)}.btn-success:hover:not(:disabled){background-color:#2dff7a26}.btn-warning{background-color:var(--warning-color, #f59e0b);color:#fff}.btn-warning:hover:not(:disabled){background-color:#d97706}.btn-danger{color:var(--error-text);border:1px solid var(--error-text)!important;background:var(--card-background);padding:5px 10px;font-size:12px}.btn-danger:hover:not(:disabled){background-color:var(--error-hover)}.btn-outline{background-color:transparent;border:1px solid var(--border-secondary, #d1d5db);color:var(--text-on-panel, 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-on-panel, var(--text-primary, #374151))}.btn-ghost:hover:not(:disabled){background-color:var(--hover-bg, #f3f4f6)}.btn-link{background:none;border:none;color:var(--primary-color, #FE6B34);text-decoration:underline;padding:0}.btn-link:hover:not(:disabled){color:var(--primary-hover, #E55A2B)}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:500;text-transform:capitalize}.status-active,.status-completed,.status-success{background-color:var(--success-bg, #d1fae5);color:var(--success-text, #065f46)}.status-inactive,.status-disabled{background-color:var(--secondary-light, #f3f4f6);color:var(--text-secondary, #4b5563)}.status-pending,.status-scheduled,.status-invited{background:var(--chip-orange-bg);color:var(--accent-orange)}.status-warning,.status-trial{background-color:var(--warning-bg, #fef3c7);color:var(--warning-text, #92400e)}.status-error,.status-failed,.status-cancelled,.status-suspended{background-color:var(--error-bg, #fee2e2);color:var(--error-text, #991b1b)}.status-info{background-color:var(--info-bg, #e0e7ff);color:var(--info-text, #3730a3)}.error-message,.alert-error{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background-color:var(--alert-error-bg, var(--error-bg, #fef2f2));border:1px solid var(--alert-error-border, var(--error-border, #fecaca));border-radius:.375rem;color:var(--alert-error-text, var(--error-text, #991b1b));font-size:.875rem}.success-message,.alert-success{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background-color:var(--alert-success-bg, 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(--alert-warning-bg, 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(--alert-info-text, var(--info-text, #1e40af));font-size:.875rem}.modal-overlay{position:fixed;inset:0;background-color:var(--modal-overlay, rgba(0, 0, 0, .5));display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:var(--modal-bg, white);border-radius:.5rem;padding:1.5rem;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl, 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04));position:relative}.modal-content.modal-sm{max-width:400px}.modal-content.modal-lg{max-width:800px}.modal-content.modal-xl{max-width:1200px}.modal-content.modal-full{max-width:95vw;max-height:95vh}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--card-divider, var(--border-primary, #e5e7eb))}.modal-header h2,.modal-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary, #111827)}.modal-close{position:absolute;top:.75rem;right:.75rem;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;border-radius:50%;cursor:pointer;color:var(--text-secondary, #6b7280);font-size:1.25rem;font-weight:300;line-height:1;padding:0;z-index:100;transition:all .2s ease}.modal-close:hover{color:var(--text-primary, #374151);transform:scale(1.05)}.modal-close:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px}.modal-close svg{width:18px;height:18px;flex-shrink:0}.modal-body{margin-bottom:1.5rem;color:var(--text-primary)}.modal-footer,.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;padding-top:1rem;border-top:1px solid var(--card-divider, 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-elevated, var(--bg-primary, white));border:1px solid var(--card-divider, var(--border-secondary, #d1d5db));border-radius:.375rem;font-size:.875rem;font-weight:500;color:var(--text-on-panel, var(--text-primary, #374151));cursor:pointer;transition:all .2s}.pagination-button:hover:not(:disabled){background-color:var(--hover-bg, #f9fafb);border-color:var(--card-divider, var(--border-secondary, #9ca3af))}.pagination-button:disabled{opacity:.5;cursor:not-allowed}.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-tertiary, 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(--header-description-color, #6b7280);font-size:.875rem}.page-header-actions{display:flex;gap:.75rem;flex-shrink:0}.card{background:var(--card-bg, white);border:1px solid var(--card-border, #e5e7eb);border-radius:.5rem;padding:1.5rem;box-shadow:var(--shadow-card, 0 1px 3px rgba(0, 0, 0, .1))}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--card-divider, 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-on-panel, var(--text-primary, #374151))}.card-footer{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--card-divider, var(--border-primary, #e5e7eb));background:var(--elevated-panel-bg, transparent)}.form-group{margin-bottom:1rem}.name-fields{display:flex;gap:.75rem}.name-fields .name-field{flex:1}.name-fields .name-field input{width:100%}.sub-label{display:block;font-size:.8rem;font-weight:500;color:#6b7280;margin-bottom:.25rem}.date-time-fields{display:flex;gap:.75rem}.date-time-fields .date-time-field{flex:1}.date-time-fields .date-time-field select{width:100%}.form-label{display:block;margin-bottom:.5rem;font-size:.875rem;font-weight:500;color:var(--text-on-panel, var(--text-primary, #374151))}.form-label.required:after{content:" *";color:var(--error-color, #ef4444)}.form-input,.form-select,.form-textarea{width:100%;padding:.5rem .75rem;border:1px solid var(--input-border, #d1d5db);border-radius:.375rem;font-size:.875rem;color:var(--text-primary, #111827);background-color:var(--input-bg, white);transition:border-color .2s,box-shadow .2s}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.form-input:disabled,.form-select:disabled,.form-textarea:disabled{background-color:var(--input-disabled-bg, #f9fafb);cursor:not-allowed}.form-input.error,.form-select.error,.form-textarea.error{border-color:var(--error-color, #ef4444)}.form-input.error:focus,.form-select.error:focus,.form-textarea.error:focus{outline:2px solid var(--error-color, #ef4444);outline-offset:2px}.form-textarea{min-height:100px;resize:vertical}.form-help{margin-top:.25rem;font-size:.75rem;color:var(--text-tertiary, #6b7280)}.form-error,.form-error-message{margin-top:.5rem;font-size:.75rem;color:var(--error-text, #991b1b);background:var(--error-bg, #fef2f2);border:1px solid var(--error-border, #fecaca);border-radius:6px;padding:.5rem .75rem}.form-warning{margin-top:.5rem;font-size:.75rem;color:var(--warning-text, #92400e);background:var(--warning-bg, #fffbeb);border:1px solid var(--warning-border, #fde68a);border-radius:6px;padding:.5rem .75rem;display:flex;align-items:center;gap:.5rem}.search-input-global{width:100%;padding:.625rem 1rem;border:1px solid var(--input-border, #d1d5db);border-radius:.375rem;font-size:.875rem;color:var(--text-primary, #111827);background-color:var(--input-bg, white);transition:border-color .2s,box-shadow .2s}.search-input-global::placeholder{color:var(--text-secondary, #6b7280)}.search-input-global:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.table-container{background:var(--card-background, var(--bg-primary, white));border:1px solid var(--card-divider, 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-on-panel, var(--text-secondary, #6b7280))}.table td{padding:.75rem 1rem;font-size:.875rem;color:var(--text-on-panel, var(--text-primary, #374151));border-bottom:1px solid var(--table-border, #e5e7eb)}.table tbody tr:hover{background-color:var(--table-row-hover, #f9fafb)}.table tbody tr:last-child td{border-bottom:none}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.hidden{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:768px){.page-header{flex-direction:column;align-items:stretch}.page-header-actions{flex-direction:column}.modal-content{margin:.5rem;max-height:calc(100vh - 1rem)}.pagination{flex-wrap:wrap}.hide-mobile{display:none}}@media(min-width:769px){.hide-desktop{display:none}}.billing-section-divider{margin-top:32px;padding-top:24px;border-top:1px solid #e9ecef}.billing-section-title{margin-bottom:8px;font-size:1.125rem;font-weight:600;color:#1f2937}.billing-section-description{color:#6c757d;font-size:.875rem;margin-bottom:16px}.accent-left-border{position:relative;border:1px solid var(--accent-orange);border-radius:8px;overflow:hidden}.accent-left-border:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--accent-orange);border-radius:0 3px 3px 0}.tab.active{color:var(--accent-orange);border-bottom-color:var(--accent-orange)}[data-theme=dark] .filter-group label,[data-theme=dark] .channel-label{color:var(--text-on-panel)}[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,[data-theme=dark] select,[data-theme=dark] textarea{color-scheme:dark}[data-theme=dark] select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23D4CDE0' d='M2.22 4.47a.75.75 0 0 1 1.06 0L6 7.19l2.72-2.72a.75.75 0 1 1 1.06 1.06L6.53 8.78a.75.75 0 0 1-1.06 0L2.22 5.53a.75.75 0 0 1 0-1.06z'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 10px center!important}[data-theme=dark] .activity-item,[data-theme=dark] .schedule-item{background:var(--input-bg)}[data-theme=dark] .channel-option:hover{border-color:#ff7a47;background:#4d4365}[data-theme=dark] .channel-option.active{border-color:#ff7a47;background:#3d2a35;color:#ff7a47}[data-theme=dark] .invitation-header h2{color:#f5f3f7}[data-theme=dark] .invitation-header p{color:var(--text-tertiary)}[data-theme=dark] .channel-label{color:#d4cde0}[data-theme=dark] .tenant-calendar-view .calendar-day{background-color:var(--cal-day-background)}[data-theme=dark] .tenant-calendar-view .calendar-day.other-month{opacity:.35}[data-theme=dark] .tenant-calendar-view .calendar-day.today{background:#212f34;border:1px solid var(--chip-orange-border)}[data-theme=dark] .clear-filters-button:hover{background:#7f1d1d}[data-theme=dark] .filter-badge{background:#3d2a35;border-color:#d14a1c;color:#ffb89e}[data-theme=dark] .remove-badge{color:#ffb89e}[data-theme=dark] .remove-badge:hover{background:#d14a1c}[data-theme=dark] .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] .preview-warning{background:#78350f;border-color:#92400e;color:#fde68a}[data-theme=dark] .subscription-info{background:linear-gradient(135deg,#362d4a,#2a2240);border:none}[data-theme=dark] .tier-card.current{background:#064e3b}[data-theme=dark] .invoice-item{background:var(--input-bg);border:none}[data-theme=dark] .invoice-item.invoice-due{background:var(--input-bg);border:none;border-left:3px solid #A78BFA}[data-theme=dark] .invoice-item.invoice-due:hover{background:#3d3455;border-color:#5d5375}[data-theme=dark] .invoice-item .invoice-number{color:#f5f3f7}[data-theme=dark] .invoice-item .invoice-client{color:#d4cde0}[data-theme=dark] .invoice-item .invoice-description{color:var(--text-tertiary)}[data-theme=dark] .invoice-item .invoice-due-date{color:#a78bfa}[data-theme=dark] .invoice-date{color:var(--text-tertiary)}[data-theme=dark] .invoice-amount{color:#f5f3f7}[data-theme=dark] .quota-progress{background:#4d4365}[data-theme=dark] .plan-card-option.selected{background:#3d2a35}[data-theme=dark] .btn-text-danger:hover:not(:disabled){background:#7f1d1d}[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] .behavior-tag-item,[data-theme=dark] .tag-item{background:#3d2a35;color:#ffb89e;border-color:#d14a1c}[data-theme=dark] .behavior-tag-item .remove-tag,[data-theme=dark] .tag-item .remove-tag{color:#ffb89e}[data-theme=dark] .medical-condition-item{background:#78350f;color:#fde68a;border-color:#92400e}[data-theme=dark] .variable-tag,[data-theme=dark] .variable-badge,[data-theme=dark] .template-variable{background:#3d2a35;color:#ffb89e;border-color:#d14a1c}[data-theme=dark] .variable-tag:hover,[data-theme=dark] .variable-badge:hover,[data-theme=dark] .template-variable:hover{background:#d14a1c;color:#ffd4c4}[data-theme=dark] .variable-item code{background:#3d2a35;color:#ffb89e}[data-theme=dark] .template-preview{background:var(--input-bg);border:none}[data-theme=dark] .template-preview h4{color:#f5f3f7}[data-theme=dark] .template-preview-content{background:var(--card-background);border:none;color:#d4cde0}[data-theme=dark] .session-list.empty .empty-icon{color:#4d4365}[data-theme=dark] .template-creator-error{background-color:#7f1d1d;border-color:#991b1b;color:#fecaca}[data-theme=dark] .template-variables-box{background-color:#362d4a;border:none}[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] .bulk-action-progress{background:#78350f;border-color:#92400e}[data-theme=dark] .progress-info{color:#fde68a}[data-theme=dark] .client-profile .consent-list .consent-item,[data-theme=dark] .client-profile [style*="border: 1px solid #ddd"]{background:var(--input-bg)!important;border-color:#4d4365!important}[data-theme=dark] .client-profile [style*="backgroundColor: #f8f9fa"]{background-color:#362d4a!important}[data-theme=dark] .client-profile [style*="color: #666"]{color:#a89bb8!important}[data-theme=dark] .client-profile [style*="color: #1a1a1a"],[data-theme=dark] .client-profile [style*="color: #212529"]{color:#f5f3f7!important}[data-theme=dark] .client-profile select[style*="border: 1px solid #ddd"]{background:var(--input-bg)!important;border-color:#4d4365!important;color:#f5f3f7!important}[data-theme=dark] .solo-subscription-notice{background:linear-gradient(135deg,#3d2a35,#d14a1c);border-color:#fe6b34}[data-theme=dark] .solo-subscription-notice .notice-text{color:#ffd4c4}[data-theme=dark] .solo-subscription-notice .notice-hint{color:#ffb89e}[data-theme=dark] .form-status.assigned{background:#064e3b;color:#a7f3d0}[data-theme=dark] .form-status.not-assigned{background:#78350f;color:#fde68a}[data-theme=dark] .client-profile .session-status.status-completed{background:#064e3b;color:#a7f3d0}[data-theme=dark] .client-profile .session-status.status-scheduled{background:#3d2a35;color:#ffb89e}[data-theme=dark] .client-profile .session-status.status-cancelled{background:#7f1d1d;color:#fecaca}[data-theme=dark] .client-profile .session-status.status-in-progress{background:#78350f;color:#fde68a}[data-theme=dark] .placeholder-badge{background:#064e3b;border-color:#065f46;color:#a7f3d0}[data-theme=dark] .client-sessions-page .session-animal{color:#ff7a47}[data-theme=dark] .client-sessions-page .pet-info{background:var(--card-background);border-left-color:#ff7a47}[data-theme=dark] .client-sessions-page .trainer-notes{background:#78350f;border-left-color:#f59e0b}[data-theme=dark] .client-sessions-page .trainer-notes h4{color:#fde68a}[data-theme=dark] .client-sessions-page .trainer-notes p{color:#fef3c7}[data-theme=dark] .client-sessions-page .session-media{background:#3d2a35;border-left-color:#ff7a47}[data-theme=dark] .client-sessions-page .session-media h4{color:#ffb89e}[data-theme=dark] .client-sessions-page .client-notes-section{background:#3d2a35}[data-theme=dark] .client-sessions-page .client-notes-section h4{color:#ffb89e}[data-theme=dark] .client-sessions-page .notes-display p{color:#ffd4c4}[data-theme=dark] .client-sessions-page .decline-reason{background:#7f1d1d;border-color:#991b1b}[data-theme=dark] .client-sessions-page .decline-reason h4{color:#fecaca}[data-theme=dark] .client-sessions-page .decline-reason p{color:#fca5a5}[data-theme=dark] .client-sessions-page .reschedule-request{background:var(--input-bg);border-color:#8b5cf6}[data-theme=dark] .client-sessions-page .reschedule-request h4{color:#c4b5fd}[data-theme=dark] .client-schedule-page .calendar-day{background-color:var(--cal-day-background)}[data-theme=dark] .client-schedule-page .calendar-day.available:hover{background:#3d2a35;color:#ff7a47}[data-theme=dark] .client-schedule-page .calendar-day.unavailable{background:#1e1730;color:#4d4365}[data-theme=dark] .client-schedule-page .time-slot:hover{background:#3d2a35;border-color:#ff7a47;color:#ff7a47}[data-theme=dark] .layout-main{background-color:var(--body-background)}[data-theme=dark] .info-section.compact,[data-theme=dark] .consent-form-item{background:var(--input-bg);border:none}[data-theme=dark] .consent-form-item.signed{background:#064e3b;border-color:#065f46}[data-theme=dark] .consent-form-info strong{color:#f5f3f7}[data-theme=dark] .status-signed{color:#a7f3d0}[data-theme=dark] .status-not-assigned{color:var(--text-tertiary)}[data-theme=dark] .preferences-list.compact .preference-item,[data-theme=dark] .session-close-dropdown,[data-theme=dark] .close-dropdown-header,[data-theme=dark] .close-dropdown-option.cancel{border:none}[data-theme=dark] .calendar-day-header{background:#1e1730;color:#f5f3f7}[data-theme=dark] .calendar-time-slot{background:#1e1730;color:var(--text-tertiary)}[data-theme=dark] .calendar-cell.other-month{background:#1e1730}.calendar-cell{position:relative;padding-top:32px}.calendar-date{position:absolute;top:8px;left:8px;right:8px;display:flex;justify-content:space-between;align-items:center}.calendar-sessions{margin-top:0}.calendar-session-more{font-size:.75rem;color:#7a6b8f;padding:4px 6px;text-align:center;font-weight:500}[data-theme=dark] .calendar-session-more{color:var(--text-tertiary)}[data-theme=dark] .role-manager .empty-state{background:var(--card-background)}[data-theme=dark] .permission-note{color:#fb923c}[data-theme=dark] .modal-header h2{color:#f5f3f7}[data-theme=dark] .close-button{color:var(--text-tertiary)}[data-theme=dark] .close-button:hover{background:var(--input-bg);color:#f5f3f7}[data-theme=dark] .notes-item p{margin:0;color:#d4cde0;background:var(--input-bg);font-size:14px;line-height:1.4;padding:8px 12px;border:1px solid #4D4365;border-radius:4px}[data-theme=dark] .notes-text{color:#d4cde0}[data-theme=dark] .form-label{color:#f5f3f7}[data-theme=dark] .form-textarea,[data-theme=dark] .form-input,[data-theme=dark] .form-select{background:var(--input-bg);border:none;color:#f5f3f7}[data-theme=dark] .form-textarea:focus,[data-theme=dark] .form-input:focus,[data-theme=dark] .form-select:focus{border-color:#ff7a47}[data-theme=dark] .form-textarea:disabled,[data-theme=dark] .form-input:disabled,[data-theme=dark] .form-select:disabled{background:var(--card-background);color:#7a6b8f}[data-theme=dark] .form-help{color:var(--text-tertiary)}[data-theme=dark] .form-error{background:#450a0a;border-color:#dc2626;color:#fecaca}[data-theme=dark] .session-completed-banner{background-color:#0d3320;border-color:#166534;color:#a7f3d0}[data-theme=dark] .session-completed-banner svg{color:#34d399}[data-theme=dark] .session-completed-banner strong{color:#6ee7b7}[data-theme=dark] .ai-summary-display{background:#064e3b;border-color:#059669;color:#d1fae5}[data-theme=dark] .session-ai-summary{background:#064e3b;border-color:#065f46}[data-theme=dark] .session-ai-summary h4{color:#6ee7b7}[data-theme=dark] .session-ai-content{color:#d1fae5}[data-theme=dark] .metric-number{color:#ff7a47}[data-theme=dark] .role-badge,[data-theme=dark] .client-assignment .btn-select-all{background:#1e3a8a;color:#ffb89e}[data-theme=dark] .client-assignment .btn-select-all:hover{background:#d14a1c}[data-theme=dark] .client-assignment .btn-clear{background:#422006;color:#fde68a}[data-theme=dark] .client-assignment .btn-clear:hover{background:#78350f}[data-theme=dark] .role-editor-modal .role-card.selected{background:#1e3a8a}[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] .team-management .role-badge,[data-theme=dark] .role-badge-inline{background:#1e3a8a;color:#ffb89e}[data-theme=dark] .session-creator,[data-theme=dark] .session-filters,[data-theme=dark] .session-creator-header,[data-theme=dark] .session-editor-header,[data-theme=dark] .session-scheduler-header,[data-theme=dark] .session-creator-actions,[data-theme=dark] .session-editor-actions,[data-theme=dark] .session-notes-editor,[data-theme=dark] .session-close-options,[data-theme=dark] .pet-information,[data-theme=dark] .session-details,[data-theme=dark] .medical-notes-text,[data-theme=dark] .version-history,[data-theme=dark] .version-item,[data-theme=dark] .upload-item,[data-theme=dark] .media-gallery-item,[data-theme=dark] .calendar-view,[data-theme=dark] .calendar-header,[data-theme=dark] .calendar-nav-btn,[data-theme=dark] .calendar-view-toggle,[data-theme=dark] .calendar-filter select,[data-theme=dark] .calendar-day-header,[data-theme=dark] .calendar-time-slot,[data-theme=dark] .pagination-button,[data-theme=dark] .delete-confirmation-btn,[data-theme=dark] .modal-footer,[data-theme=dark] .animal-session-scheduler .scheduler-header{border:none}[data-theme=dark] .session-creator{background:var(--card-background)}[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{border:none}[data-theme=dark] .session-media-badge,[data-theme=dark] .session-version-badge{background:var(--input-bg);color:var(--text-on-panel)}[data-theme=dark] .calendar-nav-btn:hover:not(:disabled),[data-theme=dark] .calendar-view-btn:hover:not(.active),[data-theme=dark] .delete-confirmation-btn:hover{background:#4d4365}[data-theme=dark] .pagination-button:hover:not(:disabled){background:#4d4365;border-color:#7a6b8f}[data-theme=dark] .calendar-view-btn.active{background:#fe6b34;color:#fff}[data-theme=dark] .calendar-cell.today{background:#3d2a35}[data-theme=dark] .upload-progress-bar{background-color:#4d4365}[data-theme=dark] .skeleton-loader{background:linear-gradient(90deg,#362d4a,#4d4365 20%,#362d4a 40% 100%);background-size:200% 100%}[data-theme=dark] .media-upload-limit{color:var(--accent-orange)}[data-theme=dark] .media-control-btn{background:#1f2937e6;color:#f5f3f7}[data-theme=dark] .media-control-btn:hover{background:var(--input-bg)}[data-theme=dark] .media-control-btn.delete:hover{background:#7f1d1d;color:#fca5a5}[data-theme=dark] .media-gallery-empty-icon{color:#4d4365}[data-theme=dark] .delete-confirmation-dialog{border:1px solid #362D4A}[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] .session-scheduler .form-group label,[data-theme=dark] .notes-form .form-group label,[data-theme=dark] .pre-session-notes p,[data-theme=dark] .post-session-notes p{color:#d4cde0}[data-theme=dark] .session-notes-display h4{color:#f5f3f7}[data-theme=dark] .modal-body::-webkit-scrollbar-track{background:#1e1730}[data-theme=dark] .modal-body::-webkit-scrollbar-thumb{background:#4d4365}[data-theme=dark] .modal-body::-webkit-scrollbar-thumb:hover{background:#7a6b8f}[data-theme=dark] .calendar-session{background:#1e3a8a;border-left-color:#fe6b34;color:#ffb89e}[data-theme=dark] .calendar-session:hover{background:#d14a1c}[data-theme=dark] .calendar-session.completed{background:#064e3b;border-left-color:#10b981;color:#6ee7b7}[data-theme=dark] .calendar-session.cancelled{background:#7f1d1d;border-left-color:#dc2626;color:#fca5a5}[data-theme=dark] .meta-badge{background:var(--input-bg);color:#d4cde0;border:none}[data-theme=dark] .meta-badge.animal-badge{background:#1e3a8a;color:#ffb89e;border-color:#fe6b34}[data-theme=dark] .meta-badge.date-badge{background:var(--input-bg);color:#d4cde0;border:none}[data-theme=dark] .session-ai-badge-small{background:#064e3b;color:#6ee7b7}[data-theme=dark] .session-card-notes{color:#d4cde0}[data-theme=dark] .medical-condition{background:#78350f;color:#fde68a}[data-theme=dark] .client-visibility-info{background:#3d2a35;border-color:#d14a1c}[data-theme=dark] .client-visibility-info small{color:#ffb89e}[data-theme=dark] .client-pre-session-notes{background:#3d2a35;border-color:#0ea5e9}[data-theme=dark] .client-pre-session-notes strong{color:#7dd3fc}[data-theme=dark] .client-pre-session-notes p{background:#0c4a6e;border-left-color:#0ea5e9;color:#bae6fd}[data-theme=dark] .pending-approval-header h3{color:#fde68a}[data-theme=dark] .pending-approval-header p{color:#fef3c7}[data-theme=dark] .session-card.past-session{border-left-color:#7a6b8f}[data-theme=dark] .new-message-back-button,[data-theme=dark] .contact-item-unread .contact-time{color:#667eea}[data-theme=dark] .message-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea33}[data-theme=dark] .messenger-widget{background:#1e1730;box-shadow:0 8px 32px #0006}[data-theme=dark] .session-media{background:var(--card-background);border:none}[data-theme=dark] .status.inactive{background-color:#362d4a;color:var(--text-tertiary)}[data-theme=dark] .tax-manual-notice{background:#78350f;border-color:#92400e}[data-theme=dark] .tax-manual-notice .notice-icon,[data-theme=dark] .tax-manual-notice p{color:#fde68a}[data-theme=dark] .settings-section .field-error{background:#7f1d1d;color:#fecaca}[data-theme=dark] .settings-four-column-grid .tax-manual-notice,[data-theme=dark] .rate-settings-note{background:#3d2a35;border-color:#d14a1c;color:#ffd4c4}[data-theme=dark] .package-price{color:#ff7a47}[data-theme=dark] .payment-method-option.selected{background:#3d2a35}[data-theme=dark] .connect-status-content.pending{background:#3d2a35;border-color:#78350f}[data-theme=dark] .connect-status-content.active{background:#1e3a2f;border-color:#065f46}[data-theme=dark] .connect-status-content.warning{background:#3d2a35;border-color:#991b1b}[data-theme=dark] .requirements-past-due{background:#3d2a35;border-color:#5c3d4a}[data-theme=dark] .requirements-past-due h5{color:#f87171}[data-theme=dark] .requirements-past-due .requirements-description,[data-theme=dark] .requirements-past-due .requirements-list li{color:#e4dcf0}[data-theme=dark] .requirements-currently-due{background:#3d3a2a;border-color:#5c5a3d}[data-theme=dark] .requirements-currently-due h5{color:#fbbf24}[data-theme=dark] .requirements-currently-due .requirements-description,[data-theme=dark] .requirements-currently-due .requirements-list li{color:#e4dcf0}[data-theme=dark] .stripe-onboarding .onboarding-error{background:#3d2a35;border-color:#991b1b}[data-theme=dark] .stripe-onboarding .error-text{color:#fecaca}[data-theme=dark] .setup-task-chip.completed{background:#22c55e1a;color:#86efac;border-color:#22c55e4d}[data-theme=dark] .setup-progress-bar{background:#ffffff1a}[data-theme=dark] .board-train-error{background:#3d2a35;color:#fecaca;border-color:#7f1d1d}[data-theme=dark] .status-chip.pending{color:#fbbf24}[data-theme=dark] .status-chip.approved{color:#86efac}[data-theme=dark] .status-chip.rejected{color:#fca5a5}[data-theme=dark] .board-train-pending-approval-section{background:#4a3420;border-color:#a16207}[data-theme=dark] .board-train-pending-approval-header h3{color:#fde68a}[data-theme=dark] .board-train-pending-approval-header p{color:#fcd34d}[data-theme=dark] .board-train-pending-approval-card{border-color:#a16207}[data-theme=dark] .create-draft-banner{background:#3a2e10;border-color:#7a5c00;color:#fde68a}[data-theme=dark] .create-package-error{background:#3d1515;border-color:#7f1d1d;color:#fca5a5}[data-theme=dark] .status-chip-draft{background:#3a2e10;color:#fde68a}[data-theme=dark] .program-animal-avatar{background-color:#4d4365;color:#f5f3f7}[data-theme=dark] .program-draft-avatar{background:#3a3550;color:#d4cde0}[data-theme=dark] .tag.warning{background:#f59e0b29;border-color:#f59e0b66;color:#fcd34d}[data-theme=dark] .day-log-links a{color:#bfdbfe;background:#253750;border-color:#36506f}[data-theme=dark] .day-log-links a:hover{background:#2d4362}:root{--font-size-multiplier: 1;--base-font-size: 16px}html{font-size:calc(var(--base-font-size) * var(--font-size-multiplier))}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.skip-link{position:absolute;top:-40px;left:6px;background:#000;color:#fff;padding:8px 16px;text-decoration:none;z-index:1000;border-radius:4px;font-weight:500;transition:top .2s ease-in-out}.skip-link:focus{top:6px}.keyboard-user *:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px}.keyboard-user button:focus,.keyboard-user a:focus,.keyboard-user input:focus,.keyboard-user select:focus,.keyboard-user textarea:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px}.high-contrast{--text-color: #000;--background-color: #fff;--border-color: #000;--link-color: #0000ff;--button-bg: #000;--button-text: #fff}.high-contrast *{color:var(--text-color)!important;background-color:var(--background-color)!important;border-color:var(--border-color)!important}.high-contrast a{color:var(--link-color)!important;text-decoration:underline!important}.high-contrast button{background-color:var(--button-bg)!important;color:var(--button-text)!important;border:2px solid var(--border-color)!important}.high-contrast input,.high-contrast select,.high-contrast textarea{border:2px solid var(--border-color)!important}.reduce-motion *,.reduce-motion *:before,.reduce-motion *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}button,a,input[type=button],input[type=submit],input[type=reset],.btn,.clickable{display:inline-flex;align-items:center;justify-content:center}.form-field{margin-bottom:1rem}.form-label{display:block;margin-bottom:.5rem;font-weight:500}.required-indicator{color:#dc2626;margin-left:.25rem}.form-error{color:#dc2626;font-size:.875rem;margin-top:.25rem;display:flex;align-items:center;gap:.25rem}.form-help{color:#6b7280;font-size:.875rem;margin-top:.25rem}input[required]:user-invalid,select[required]:user-invalid,textarea[required]:user-invalid{border-color:#dc2626}@supports not selector(:user-invalid){input[required]:invalid:not(:placeholder-shown):not(:focus),select[required]:invalid:not(:focus),textarea[required]:invalid:not(:placeholder-shown):not(:focus){border-color:#dc2626}}input[type=date]:invalid:not(.touched),input[type=time]:invalid:not(.touched),input[type=datetime-local]:invalid:not(.touched){border-color:var(--input-border, #d1d5db)}input[required]:valid:not(:placeholder-shown):not(:focus),select[required]:valid:not(:focus),textarea[required]:valid:not(:placeholder-shown):not(:focus){border-color:var(--input-border, #d1d5db)}input.is-invalid,select.is-invalid,textarea.is-invalid{border-color:#dc2626!important}input.is-valid,select.is-valid,textarea.is-valid{border-color:#10b981!important}[aria-live]{position:relative}[aria-live=assertive]{font-weight:500}.modal{background:#fff;border-radius:8px;padding:1.5rem;max-width:90vw;max-height:90vh;overflow-y:auto;position:relative}.modal:focus{outline:none}table{border-collapse:collapse;width:100%}th{text-align:left;font-weight:600;background-color:var(--table-header-bg)}th,td{padding:.75rem;border:1px solid var(--table-border, var(--border-primary))}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))}input,select,textarea{font-size:max(16px,1rem)}}@media print{.skip-link,.sr-only,button,.btn{display:none!important}*{background:#fff!important;color:#000!important}a{text-decoration:underline!important}}@media(prefers-color-scheme:dark){:root{--text-color: #f9fafb;--background-color: #111827;--border-color: #374151}}@supports selector(:focus-visible){.keyboard-user *:focus:not(:focus-visible){outline:none;box-shadow:none}.keyboard-user *:focus-visible{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;box-shadow:0 0 0 3px #fe6b344d}}:root{--mobile-font-min: .75rem;--mobile-content-padding: clamp(.75rem, 2.5vw, 1rem)}body{font-size:clamp(.9375rem,.95rem,1rem)}html,body{max-width:100%;overflow-x:clip}.mobile-safe-vh{min-height:100vh;min-height:100dvh}.mobile-content{padding:var(--mobile-content-padding)}.responsive-table-wrapper{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.responsive-table-wrapper table{min-width:640px}@media(max-width:768px){p,li,label,a,button,input,select,textarea,th,td{font-size:.875rem}.responsive-table-wrapper.stack-mobile table,.responsive-table-wrapper.stack-mobile thead,.responsive-table-wrapper.stack-mobile tbody,.responsive-table-wrapper.stack-mobile tr,.responsive-table-wrapper.stack-mobile th,.responsive-table-wrapper.stack-mobile td{display:block;width:100%}.responsive-table-wrapper.stack-mobile thead{display:none}.responsive-table-wrapper.stack-mobile tr{border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;margin-bottom:.75rem;padding:.5rem;background:var(--bg-primary, #fff)}.responsive-table-wrapper.stack-mobile td{border:0;padding:.5rem}.responsive-table-wrapper.stack-mobile td:before{content:attr(data-label);display:block;font-weight:600;margin-bottom:.25rem;color:var(--text-secondary, #475569)}}@media(max-width:768px){.team-page,.role-manager,.sessions-page,.calendar-page,.client-list,.client-profile,.settings-page,.reports-page,.billing-page,.tasks-page,.resource-library,.dashboard,.animals-page,.support-center,.upload-page,.profile-settings-page{padding:.75rem}.team-page [class*=table],.sessions-page [class*=table],.calendar-page [class*=table],.client-list [class*=table],.settings-page [class*=table],.reports-page [class*=table],.billing-page [class*=table]{overflow-x:auto}.team-page [class*=grid],.sessions-page [class*=grid],.calendar-page [class*=grid],.client-list [class*=grid],.settings-page [class*=grid],.reports-page [class*=grid],.billing-page [class*=grid],.tasks-page [class*=grid]{grid-template-columns:1fr!important}.team-page button,.sessions-page button,.calendar-page button,.client-list button,.settings-page button,.reports-page button,.billing-page button,.tasks-page button,.resource-library button,.dashboard button{min-height:44px}}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--body-background);color:var(--text-primary)}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box}select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M2.22 4.47a.75.75 0 0 1 1.06 0L6 7.19l2.72-2.72a.75.75 0 1 1 1.06 1.06L6.53 8.78a.75.75 0 0 1-1.06 0L2.22 5.53a.75.75 0 0 1 0-1.06z'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 10px center!important;padding-right:30px}.input-error{border-color:var(--error-color, #dc2626)!important}.field-error{color:var(--error-color, #dc2626);font-size:13px;margin-top:4px;display:block}.auth-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px;background:var(--body-background)}.auth-card{background-color:var(--card-background);border:1px solid var(--text-quaternary);border-radius:12px;box-shadow:var(--shadow-xl);padding:32px;width:100%;max-width:420px}.auth-header{text-align:center;margin-bottom:32px}.auth-title{font-size:28px;font-weight:700;color:var(--text-primary);margin-bottom:8px}.auth-subtitle{font-size:16px;color:var(--text-secondary);line-height:1.5}.auth-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:6px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-label{font-size:14px;font-weight:500;color:var(--text-primary)}.form-input,.form-select{padding:12px 16px;border:1px solid var(--input-border);border-radius:8px;font-size:16px;transition:border-color .2s,box-shadow .2s,background-color .2s;background-color:var(--input-bg);color:var(--text-primary)}.form-input:focus,.form-select:focus{outline:none;border-color:var(--input-focus-border);box-shadow:0 0 0 3px var(--focus-ring)}.form-input:disabled,.form-select:disabled{background-color:var(--input-disabled-bg);color:var(--text-secondary);cursor:not-allowed}.form-input::placeholder{color:var(--input-placeholder)}.auth-button{padding:12px 24px;background-color:var(--primary-color);color:var(--text-inverse);border:none;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:background-color .2s,transform .1s;display:flex;align-items:center;justify-content:center;gap:8px}.auth-button:hover:not(:disabled){background-color:var(--primary-hover);transform:translateY(-1px)}.auth-button:active:not(:disabled){transform:translateY(0)}.auth-button:disabled{background-color:var(--text-tertiary);cursor:not-allowed;transform:none}.auth-footer{text-align:center;margin-top:24px;padding-top:24px;border-top:1px solid var(--border-primary)}.auth-footer p{font-size:14px;color:var(--text-secondary);margin:0}.auth-link{color:var(--primary-color);text-decoration:none;font-weight:500;transition:color .2s}.auth-link:hover{color:var(--primary-hover);text-decoration:underline}.error-message{padding:12px 16px;background-color:var(--error-bg);border:1px solid var(--error-border);border-radius:8px;color:var(--error-text);font-size:14px;display:flex;align-items:center;gap:8px}.success-message{padding:24px;background-color:var(--success-bg);border:1px solid var(--success-border);border-radius:8px;text-align:center;margin-top:16px}.success-icon{color:var(--success-color);margin-bottom:12px;display:flex;justify-content:center}.success-message p{color:var(--success-text);font-size:14px;line-height:1.5;margin:0}.auth-button:disabled{position:relative}.auth-button.loading:after{content:"";position:absolute;width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}@media(max-width:480px){.auth-container{padding:16px}.auth-card{padding:24px}.auth-title{font-size:24px}.form-row{grid-template-columns:1fr}.auth-card .form-group input,.auth-card .form-group select,.auth-card .form-group textarea{width:100%;box-sizing:border-box}.auth-card .auth-button,.auth-card .btn-primary,.auth-card button[type=submit]{width:100%;min-height:44px}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--body-background);padding:2rem 1rem}.login-wrapper{width:100%;max-width:480px;display:flex;flex-direction:column;align-items:center;gap:1rem}.login-logo img{height:120px;width:auto}.login-card{border-radius:8px;box-shadow:var(--shadow-card);padding:20px;margin:0 0 20px;border:1px solid rgba(255,255,255,.04);background:var(--card-background)}.login-form{display:flex;flex-direction:column;gap:1.25rem}.login-field{display:flex;flex-direction:column;gap:.5rem}.login-turnstile{align-items:center}.login-label{font-size:.9375rem;font-weight:600;color:var(--text-primary)}.login-input{width:100%;padding:.875rem 1.25rem;background:var(--input-bg);border:1px solid var(--input-border);border-radius:12px;font-size:1rem;color:var(--text-primary);transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.login-input::placeholder{color:var(--text-tertiary)}.login-input:focus{outline:none;border-color:var(--accent-orange);box-shadow:0 0 0 3px #f4a26126}.login-input:disabled{opacity:.6;cursor:not-allowed}.login-hint{font-size:.8125rem;color:var(--text-tertiary);line-height:1.5}.login-btn{width:100%;padding:1rem;background:var(--accent-orange);color:#1a1a1a;border:none;border-radius:999px;font-size:1.0625rem;font-weight:700;cursor:pointer;transition:background .2s,transform .1s;margin-top:.25rem}.login-btn:hover:not(:disabled){background:var(--accent-orange-hover);transform:translateY(-1px)}.login-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.login-error{padding:.75rem 1rem;background:var(--error-bg, rgba(239, 68, 68, .1));border:1px solid var(--error-border, rgba(239, 68, 68, .3));border-radius:10px;color:var(--error-color, #ef4444);font-size:.875rem}.login-success{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:1rem 0;text-align:center;color:var(--success-color, #22c55e)}.login-success p{color:var(--text-secondary);font-size:.9375rem;line-height:1.6;margin:0}.login-footer{font-size:.9rem;color:var(--text-tertiary);margin:0}.login-footer-link{color:var(--text-primary);font-weight:600;text-decoration:none}.login-footer-link:hover{color:var(--accent-orange)}.login-verify{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.75rem;padding:.5rem 0}.login-verify__icon{color:var(--accent-orange)}.login-verify--success .login-verify__icon{color:var(--success-color)}.login-verify--error .login-verify__icon{color:var(--error-color)}.login-verify__title{margin:0;font-size:1.125rem;font-weight:700;color:var(--text-primary);letter-spacing:-.01em}.login-verify__message{margin:0;font-size:.9375rem;line-height:1.5;color:var(--text-secondary);max-width:32ch}.login-btn--inline{display:inline-flex;align-items:center;justify-content:center;margin-top:.5rem;text-decoration:none;width:auto;padding:.75rem 1.25rem}.login-tenant-logo{height:64px;max-width:200px;object-fit:contain;display:block;margin:0 auto}.login-tenant-name{font-size:1.125rem;font-weight:600;color:var(--text-primary);text-align:center;margin-top:.5rem}.tenant-picker{display:flex;flex-direction:column;gap:.75rem}.tenant-picker-label{font-size:.9375rem;color:var(--text-secondary);margin:0 0 .25rem;text-align:center}.tenant-picker-list{display:flex;flex-direction:column;gap:.5rem}.tenant-picker-card{display:flex;align-items:center;gap:.875rem;width:100%;padding:.875rem 1rem;background:var(--card-background);border:1px solid transparent;border-radius:12px;cursor:pointer;text-align:left;transition:border-color .2s,box-shadow .2s;box-shadow:0 1px 3px #00000014}.tenant-picker-card:hover{border-color:var(--accent-orange-hover);box-shadow:0 2px 8px #0000001f}.tenant-picker-logo{height:40px;width:40px;object-fit:contain;border-radius:8px;flex-shrink:0}.tenant-picker-initials{height:40px;width:40px;border-radius:8px;background:var(--chip-orange-bg);color:var(--accent-orange);display:flex;align-items:center;justify-content:center;font-size:1.125rem;font-weight:700;flex-shrink:0}.tenant-picker-name{font-size:.9375rem;font-weight:600;color:var(--text-primary)}.tenant-picker-loading{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem 0;color:var(--text-secondary);font-size:.9375rem}.tenant-picker-empty{padding:1rem 0;text-align:center;color:var(--text-secondary);font-size:.9375rem}.tenant-picker-empty strong{color:var(--text-primary)}.register-card{max-width:520px}.register-header{text-align:center;margin-bottom:1.5rem}.register-title{font-size:1.5rem;font-weight:700;color:var(--text-primary, #1f2937);margin:0 0 .5rem}.register-subtitle{font-size:.9375rem;color:var(--text-secondary, #6b7280);margin:0;line-height:1.5}.register-optional-label{font-weight:400;color:var(--text-tertiary, #9ca3af)}.register-subdomain-input{display:flex;align-items:stretch;border:1px solid var(--input-border, #d1d5db);border-radius:12px;overflow:hidden;background:var(--input-bg, #ffffff);transition:border-color .2s,box-shadow .2s}.register-subdomain-input:focus-within{border-color:var(--accent-orange, #f4a261);box-shadow:0 0 0 3px #f4a26126}.register-subdomain-input input{border:none;outline:none;padding:.875rem 1.25rem;font-size:1rem;flex:1;background:transparent;color:var(--text-primary, #1f2937);min-width:0}.register-subdomain-input input::placeholder{color:var(--text-tertiary, #9ca3af)}.register-subdomain-input input:disabled{opacity:.6;cursor:not-allowed}.register-subdomain-suffix{padding:0 1rem;font-size:.875rem;color:var(--text-tertiary, #9ca3af);white-space:nowrap;border-left:1px solid var(--input-border, #d1d5db);background:var(--surface-secondary, #f9fafb);display:flex;align-items:center}.register-portal-preview{color:var(--text-primary, #1f2937)}.register-portal-url{font-size:.8125rem;color:var(--text-secondary, #6b7280);margin-top:.75rem}.register-portal-url strong{color:var(--accent-orange, #f4a261)}.tenant-calendar-view{background:var(--card-background);border-radius:12px;padding:0;box-shadow:var(--shadow-card);border:none}.calendar-header{margin-bottom:24px;border-radius:12px;position:relative;display:flex;flex-direction:row;justify-content:space-between}.calendar-date-nav{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:1rem;margin-left:2rem}.calendar-date-nav .current-month{margin:0;flex:0 1 auto;text-align:center}.calendar-mobile-kebab{position:absolute;right:8px;top:50%;transform:translateY(-50%);z-index:1100}.calendar-mobile-kebab-button{width:34px;height:34px;border-radius:8px;border:1px solid var(--border-primary);background:var(--card-background);color:var(--text-secondary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:border-color .15s ease,color .15s ease,background-color .15s ease;padding:0}.calendar-mobile-kebab-button:hover,.calendar-mobile-kebab-button:focus-visible{outline:none;border-color:var(--accent-orange);color:var(--accent-orange)}.calendar-mobile-kebab-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:180px;background:var(--card-background);border:1px solid var(--border-primary);border-radius:8px;box-shadow:0 12px 28px #00000047;padding:4px;z-index:50;display:flex;flex-direction:column;gap:2px}.calendar-mobile-kebab-item{all:unset;display:block;padding:8px 12px;font-size:13px;font-weight:500;color:var(--text-primary);border-radius:6px;cursor:pointer;text-align:left}.calendar-mobile-kebab-item:hover,.calendar-mobile-kebab-item:focus-visible{outline:none;background:var(--surface-hover);color:var(--accent-orange)}.view-toggle{display:inline-flex;background:var(--body-background);border-radius:24px;padding:4px;gap:4px;position:relative}.view-toggle:before{content:"";position:absolute;top:4px;left:4px;height:calc(100% - 8px);background:var(--accent-orange);border-radius:20px;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:0}.view-toggle[data-active=personal]:before{width:calc(50% - 6px);transform:translate(0)}.view-toggle[data-active=tenant]:before{width:calc(50% - 6px);transform:translate(calc(100% + 4px))}.view-toggle button{padding:8px 20px;border:none;background:transparent;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:color .2s ease;border-radius:20px;white-space:nowrap;position:relative;z-index:1}.view-toggle button:hover,.view-toggle button.active{color:var(--text-primary)}.calendar-layout-toggle button.active{background:var(--accent-orange)}.calendar-controls{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:16px;margin-right:2rem;margin-top:1rem}.month-navigation{display:flex;align-items:center;gap:12px;margin-left:auto}.current-month{margin:0;font-size:24px;font-weight:700;min-width:auto;text-align:left;color:var(--text-primary);letter-spacing:-.5px;order:-1}.current-month.clickable{cursor:pointer;transition:color .2s,background-color .2s;padding:4px 12px;border-radius:6px}.current-month.clickable:hover{color:var(--primary-color, #2563eb);background-color:var(--primary-light, #eff6ff)}.month-year-picker-popover{position:absolute;z-index:1000;margin-top:8px;background:var(--card-background);border:1px solid var(--card-border, var(--border-primary));border-radius:12px;box-shadow:0 4px 12px #00000026;padding:12px;min-width:260px}.month-year-picker-year-row{display:flex;align-items:center;gap:8px;margin-bottom:12px}.month-year-picker-year-nav{width:28px;height:28px;border:none;background:transparent;color:var(--text-secondary);border-radius:6px;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease,color .2s ease}.month-year-picker-year-nav:hover{background:var(--surface-hover, var(--hover-bg));color:var(--text-primary)}.month-year-picker-year-select{flex:1;padding:6px 10px;background:var(--input-bg, var(--card-background));color:var(--text-primary);border:1px solid var(--border-primary);border-radius:6px;font-size:14px;font-weight:600;cursor:pointer}.month-year-picker-year-select:focus{outline:none;border-color:var(--accent-orange)}.month-year-picker-months{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.month-year-picker-month-btn{padding:8px 12px;border:1px solid transparent;background:transparent;color:var(--text-primary);border-radius:8px;cursor:pointer;font-size:13px;font-weight:500;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.month-year-picker-month-btn:hover{background:var(--chip-orange-bg);color:var(--accent-orange)}.month-year-picker-month-btn.active{background:var(--accent-orange);color:var(--text-inverse, #ffffff)}.nav-button{width:40px;height:40px;padding:0;border:none;background:var(--card-background);border-radius:50%;cursor:pointer;font-weight:500;font-size:18px;transition:all .2s;color:var(--text-secondary);display:flex;align-items:center;justify-content:center}.nav-button:hover{background:var(--card-background);color:var(--text-primary);opacity:.8}.calendar-error{text-align:center;padding:48px 24px;color:var(--error-color, #dc2626)}.calendar-error button{margin-top:16px;padding:8px 16px;border:1px solid var(--error-color, #dc2626);background:var(--card-bg, white);color:var(--error-color, #dc2626);border-radius:6px;cursor:pointer;font-weight:500}.calendar-error button:hover{background:var(--error-bg, #fef2f2)}.calendar-grid{border:none;border-radius:12px;background:transparent}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);background:transparent;border-bottom:none;margin-bottom:8px;border-bottom:1px solid var(--text-tertiary);margin-bottom:1rem;width:95%;margin:0 auto}.weekday{padding:12px 8px;text-align:center;font-weight:600;font-size:14px;color:var(--text-secondary);text-transform:capitalize;letter-spacing:0}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.calendar-week-view{width:100%}.calendar-week-scroll{--calendar-week-time-column: 64px;--calendar-week-day-column-min: 92px;--calendar-week-scrollbar-gutter: 8px;width:100%;border:1px solid var(--card-border, var(--border-primary));border-radius:12px;background:var(--card-background);overflow:auto;max-height:560px}.calendar-week-header,.calendar-week-body{min-width:760px}.calendar-week-header{display:grid;grid-template-columns:var(--calendar-week-time-column) repeat(7,minmax(var(--calendar-week-day-column-min),1fr));border-bottom:1px solid var(--card-border, var(--border-primary));position:sticky;top:0;z-index:4;background:var(--card-background)}.calendar-week-header:after{content:"";background:var(--card-background)}.calendar-week-time-heading{border-right:1px solid var(--card-border, var(--border-primary));position:sticky;left:0;z-index:5;background:var(--card-background)}.calendar-week-day-heading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14px 6px 12px;gap:4px;border-right:1px solid var(--card-border, var(--border-primary));min-height:56px}.calendar-week-day-heading:last-child{border-right:none}.calendar-week-day-heading.today{background:#fe6b340d}.calendar-week-day-name{color:var(--text-tertiary);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;line-height:1.4}.calendar-week-day-number{color:var(--text-primary);font-size:16px;font-weight:700;line-height:1.2}.calendar-week-day-heading.today .calendar-week-day-name,.calendar-week-day-heading.today .calendar-week-day-number{color:var(--accent-orange)}.calendar-week-body{display:grid;grid-template-columns:var(--calendar-week-time-column) repeat(7,minmax(var(--calendar-week-day-column-min),1fr));position:relative}.calendar-week-scroll{scrollbar-width:thin}.calendar-week-scroll::-webkit-scrollbar{width:8px;height:8px}.calendar-week-scroll::-webkit-scrollbar-track{background:transparent}.calendar-week-body::-webkit-scrollbar-thumb{background:var(--card-border, var(--border-primary));border-radius:4px}.calendar-week-body::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.calendar-week-times{display:flex;flex-direction:column;border-right:1px solid var(--card-border, var(--border-primary));position:sticky;left:0;z-index:2;background:var(--card-background)}.calendar-week-time-slot{position:relative;color:var(--text-tertiary);font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.calendar-week-time-label{position:absolute;top:-6px;right:8px;background:var(--card-background);padding:0 4px}.calendar-week-day-column{position:relative;background:var(--card-background);border-right:1px solid var(--card-border, var(--border-primary));cursor:pointer;transition:background .15s ease}.calendar-week-day-column:last-child{border-right:none}.calendar-week-day-column.today{background:#fe6b340d}.calendar-week-day-column.other-month{opacity:.6}.calendar-week-day-column.drop-target{outline:2px solid var(--accent-orange);outline-offset:-2px}.calendar-week-hour-line{border-bottom:1px solid var(--card-border, var(--border-primary));opacity:.6}.calendar-week-hour-line:last-child{border-bottom:none}.calendar-week-slot-indicator{position:absolute;left:4px;right:4px;background:#fe6b3429;border:1px dashed var(--accent-orange);border-radius:6px;pointer-events:none;z-index:1;display:flex;align-items:center;padding:0 8px}.calendar-week-slot-indicator-label{font-size:11px;font-weight:700;color:var(--accent-orange);letter-spacing:.02em}.calendar-week-session{position:absolute;padding:6px 8px;border-radius:6px;background:var(--calendar-session-bg);color:var(--calendar-session-text);border-left:3px solid #22c55e;overflow:hidden;display:flex;flex-direction:column;gap:2px;z-index:2;cursor:pointer}.calendar-week-session.session-chip-pending{background:#fe6b342e;color:var(--calendar-session-pending-text);border-left-color:var(--accent-orange)}.calendar-week-session.session-chip-cancelled{background:var(--surface-secondary);color:var(--text-tertiary);border-left-color:var(--text-tertiary);text-decoration:line-through;opacity:.7}.calendar-week-session-title{font-size:12px;font-weight:700;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-week-session-client{font-size:11px;font-weight:500;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:.85}.calendar-week-session-animal{font-size:10px;font-weight:500;line-height:1.1;opacity:.75;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-week-blocked-label{position:absolute;top:6px;right:6px;left:6px;z-index:1;padding:4px 6px;border-radius:6px;background:#ef444424;color:var(--error-color, #dc2626);font-size:10px;font-weight:700;line-height:1.2}.calendar-week-now-indicator{position:absolute;left:0;right:0;height:0;display:flex;align-items:center;pointer-events:none;z-index:3}.calendar-week-now-dot{width:10px;height:10px;border-radius:50%;background:var(--accent-orange);margin-left:59px;flex-shrink:0;box-shadow:0 0 0 2px var(--card-background)}.calendar-week-now-line{flex:1;height:1.5px;background:var(--accent-orange)}.calendar-day{min-height:100px;padding:8px;border:none;border-radius:6px;transition:all .2s;position:relative;display:flex;flex-direction:column}.calendar-day.other-month{background:transparent;color:var(--text-tertiary)}.calendar-day.other-month .day-number{color:var(--text-tertiary);opacity:.4}.calendar-day.today{background:var(--card-background);border:1px solid rgba(244,162,97,.3)}.calendar-day.today .day-number{background:transparent;color:var(--text-primary);border-radius:0;width:auto;height:auto;display:block;font-weight:600}.calendar-day.has-sessions{cursor:pointer}.calendar-day.has-sessions:hover,.calendar-day.has-actions:hover{background:#4a403a0d}.calendar-day.has-actions{cursor:pointer}.day-number{font-size:14px;font-weight:500;color:var(--text-secondary);align-self:flex-start;position:absolute;top:.6rem}.session-chips{display:flex;flex-direction:column;gap:4px;margin-top:8px;width:100%}.session-chip{font-size:11px;font-weight:500;padding:4px 8px;border-radius:4px;white-space:nowrap;overflow:visible;text-overflow:clip;max-width:100%;background:var(--chip-orange-bg);color:var(--accent-orange)}.session-chip-confirmed{background:var(--success-bg);color:var(--success-color)}.session-chip-pending{background:var(--chip-orange-bg);color:var(--accent-orange)}.session-chip-cancelled{background:var(--surface-hover);color:var(--text-tertiary);text-decoration:line-through;opacity:.7}.session-chip[data-tooltip]{position:relative}.session-chip-text{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.session-chip[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--card-background);color:var(--text-primary);font-size:11px;font-weight:500;white-space:nowrap;padding:5px 8px;border-radius:6px;box-shadow:0 4px 12px #0003;pointer-events:none;opacity:0;transition:opacity .15s ease;z-index:100}.session-chip[data-tooltip]:hover:after{opacity:1}.session-chip-more{background:var(--accent-orange-hover);color:var(--body-background);font-size:10px}.session-chip-group-class{background:var(--accent-coral, #f08c7d);color:var(--text-inverse, #ffffff);cursor:pointer}.session-chip-group-class.session-chip-more{color:var(--text-inverse, #ffffff)}.calendar-week-session-group-class{background:var(--accent-coral, #f08c7d);color:var(--text-inverse, #ffffff);cursor:pointer}@media(max-width:768px){.tenant-calendar-view{padding:4px 0 16px!important;border-radius:0!important;width:100%;box-sizing:border-box}.tenant-calendar-view .calendar-header{padding-left:12px!important;padding-right:12px!important}.tenant-calendar-view .mobile-month-view{width:100%}.tenant-calendar-view .mobile-month-legend,.tenant-calendar-view .mobile-month-detail{padding-left:12px!important;padding-right:12px!important}.tenant-calendar-view .mobile-month-grid{padding-left:4px!important;padding-right:4px!important;width:100%;box-sizing:border-box}.tenant-calendar-view .mobile-month-cells{width:100%}.calendar-week-header,.calendar-week-body{min-width:0}.calendar-header{flex-direction:column;align-items:stretch}.calendar-date-nav{gap:6px;margin-left:0;margin-bottom:10px;margin-top:0;justify-content:center;position:relative;padding-right:44px;padding-left:44px}.calendar-controls{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:center;gap:8px;margin-right:0;margin-top:0}.view-toggle{width:auto;border-radius:18px;padding:3px}.view-toggle button{flex:0 0 auto;padding:5px 12px;font-size:12px;border-radius:14px}.calendar-week-scroll{--calendar-week-time-column: 44px}.calendar-week-time-slot{font-size:9px}.calendar-week-time-label{right:4px;padding:0 2px}.current-month{font-size:16px;min-width:auto}.nav-button{padding:4px 10px;font-size:13px}.calendar-day{min-height:80px;padding:4px}.day-number{font-size:13px}.session-count{font-size:13px;padding:2px 4px}.weekday{padding:8px 4px;font-size:13px}}.calendar-day.blocked,.calendar-day.blocked.today{background:repeating-linear-gradient(-45deg,transparent,transparent 5px,var(--surface-blocked-overlay) 5px,var(--surface-blocked-overlay) 10px),var(--surface-blocked-bg);cursor:not-allowed}.blocked-label{position:absolute;top:50%;left:8px;right:8px;transform:translateY(-50%);max-width:calc(100% - 16px);font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-blocked, #9ca3af);background:none;padding:0;border-radius:0;white-space:normal;line-height:1.25;text-align:center;pointer-events:none}.blocked-label.blocked-label-button,.calendar-week-blocked-label.blocked-label-button{all:unset;position:absolute;top:50%;left:8px;right:8px;transform:translateY(-50%);max-width:calc(100% - 16px);font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-blocked, #9ca3af);cursor:pointer;white-space:normal;line-height:1.25;text-align:center;box-sizing:border-box}.calendar-week-blocked-label.blocked-label-button{position:absolute;inset:6px 6px auto;transform:none;max-width:calc(100% - 12px);padding:4px 6px;border-radius:6px;background:#ef444424;color:var(--error-color, #dc2626);text-transform:none;letter-spacing:0;font-weight:700;line-height:1.2}.blocked-label-button:hover,.blocked-label-button:focus-visible{outline:none;color:var(--accent-orange);text-decoration:underline}.calendar-week-blocked-label.blocked-label-button:hover,.calendar-week-blocked-label.blocked-label-button:focus-visible{outline:1px solid var(--accent-orange);outline-offset:0;text-decoration:none}.block-reason-modal-body{padding:1.25rem 1.5rem 1rem;color:var(--text-primary)}.block-reason-modal-dates{margin:0 0 .75rem;font-size:.8125rem;font-weight:600;color:var(--text-secondary)}.block-reason-modal-text{font-size:.9375rem;line-height:1.55;color:var(--text-primary);white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;max-height:50vh;overflow-y:auto}.calendar-day-action-menu{background:var(--body-background);border:none;box-shadow:0 10px 24px #00000073;border-radius:8px;padding:.35rem;display:flex;flex-direction:column;gap:.3rem;width:180px}.calendar-day-action-btn{width:100%;border:1px solid var(--cal-action-btn-border, transparent);border-radius:6px;background:var(--cal-action-btn-bg, var(--surface-secondary, #f9fafb));color:var(--cal-action-btn-text, var(--text-primary, #111827));padding:.4rem .5rem;font-size:.78rem;text-align:left;cursor:pointer;justify-content:flex-start}.calendar-day-action-btn:hover{background:var(--cal-action-btn-hover-bg, var(--primary-light, #eff6ff));border-color:var(--cal-action-btn-hover-border, var(--primary-color, #3b82f6))}@media(max-width:768px){.blocked-label{font-size:9px;bottom:4px;left:6px}}.session-chip-draggable{cursor:grab}.session-chip-draggable:active{cursor:grabbing}.session-chip-dragging{opacity:.4}.calendar-day.drop-eligible{outline:1px dashed var(--accent-orange-hover, #FF7A47);outline-offset:-4px}.calendar-day.drop-target{background:var(--cal-drop-target-bg);outline:2px solid var(--accent-orange, #FE6B34);outline-offset:-4px}.reschedule-conflict-backdrop{position:fixed;inset:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.reschedule-conflict-modal{background:var(--card-background, #ffffff);color:var(--text-primary, #111827);border-radius:12px;box-shadow:0 20px 25px -5px #0000002e,0 10px 10px -5px #0000000f;max-width:min(100%,520px);width:100%;padding:24px;position:relative;animation:modalSlideIn .18s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.reschedule-conflict-close{position:absolute;top:8px;right:12px;background:transparent;border:none;font-size:24px;line-height:1;color:var(--text-secondary, #6b7280);cursor:pointer;padding:4px 8px;border-radius:4px}.reschedule-conflict-close:hover{background:var(--surface-hover, #f3f4f6);color:var(--text-primary, #111827)}.reschedule-conflict-banner{display:flex;gap:12px;padding:12px;margin-bottom:16px;background-color:var(--warning-bg, #fef3c7);border:1px solid var(--warning-border, #fbbf24);border-radius:6px;align-items:flex-start;margin-top:1.5em}.reschedule-conflict-banner-icon{flex-shrink:0;color:var(--warning-color, #d97706);display:inline-flex;align-items:center}.reschedule-conflict-banner-content{flex:1;min-width:0}.reschedule-conflict-banner-title{font-size:14px;font-weight:600;color:var(--warning-text, #92400e);margin-bottom:4px}.reschedule-conflict-banner-reason{font-size:13px;color:var(--warning-text, #78350f);line-height:1.5}.reschedule-conflict-title{font-size:18px;font-weight:600;margin:0 0 4px;color:var(--text-primary, #111827)}.reschedule-conflict-subtitle{font-size:13px;color:var(--text-secondary, #6b7280);margin:0 0 16px;line-height:1.4}.reschedule-conflict-modal .form-group{margin-bottom:20px}.reschedule-conflict-modal .form-group label{display:block;font-size:13px;font-weight:600;color:var(--text-secondary, #374151);margin-bottom:6px}.reschedule-conflict-modal .form-input{width:100%;padding:8px 12px;border:1px solid var(--border-primary, #d1d5db);border-radius:6px;font-size:14px;background:var(--input-bg, #ffffff);color:var(--text-primary, #111827)}.reschedule-conflict-modal .form-input:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:0;border-color:var(--accent-orange, #FE6B34)}.reschedule-conflict-modal .modal-actions{display:flex;gap:8px;justify-content:flex-end}.reschedule-conflict-modal .btn{padding:8px 16px;font-size:14px;font-weight:500;border-radius:6px;border:1px solid transparent;cursor:pointer;transition:all .2s}.reschedule-conflict-modal .btn:disabled{opacity:.5;cursor:not-allowed}.reschedule-conflict-modal .btn-secondary{background:var(--surface-secondary, #f3f4f6);color:var(--text-primary, #111827);border-color:var(--border-primary, #e5e7eb)}.reschedule-conflict-modal .btn-secondary:hover:not(:disabled){background:var(--surface-hover, #e5e7eb)}.reschedule-conflict-modal .btn-primary{background:var(--accent-orange, #FE6B34);color:var(--text-inverse, #ffffff)}.reschedule-conflict-modal .btn-primary:hover:not(:disabled){background:var(--accent-orange-hover, #FF7A47)}.reschedule-conflict-modal .reschedule-conflict-save-btn{display:inline-flex;align-items:center;gap:6px}.reschedule-conflict-reserved{margin:-8px 0 12px;padding:10px 12px;background:var(--surface-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:6px}.reschedule-conflict-reserved-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:var(--text-secondary, #6b7280);margin-bottom:8px}.reschedule-conflict-reserved-empty{font-size:13px;color:var(--text-tertiary, #9ca3af);font-style:italic}.reschedule-conflict-reserved-list{display:flex;flex-wrap:wrap;gap:6px}.reschedule-conflict-reserved-chip{display:inline-flex;align-items:baseline;gap:6px;padding:4px 10px;border-radius:999px;background:var(--card-background, #ffffff);border:1px solid var(--border-primary, #e5e7eb);font-size:12px;color:var(--text-primary, #111827);max-width:100%}.reschedule-conflict-reserved-time{font-weight:600;font-variant-numeric:tabular-nums;color:var(--text-secondary, #4b5563)}.reschedule-conflict-reserved-client{color:var(--text-primary, #111827);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:14ch}.reschedule-conflict-reserved-chip.clash{background:var(--error-bg, #fee2e2);border-color:var(--error-border, #f87171);color:var(--error-text, #991b1b)}.reschedule-conflict-reserved-chip.clash .reschedule-conflict-reserved-time,.reschedule-conflict-reserved-chip.clash .reschedule-conflict-reserved-client{color:var(--error-text, #991b1b)}.calendar-undo-toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:10001;display:flex;align-items:center;gap:12px;padding:10px 12px 10px 16px;background:var(--text-primary, #111827);color:var(--text-inverse, #ffffff);border-radius:8px;box-shadow:0 12px 28px #00000047,0 4px 10px #0000002e;max-width:min(92vw,540px);font-size:14px;animation:calendar-undo-slide-up .18s ease-out}@keyframes calendar-undo-slide-up{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}.calendar-undo-toast-message{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-undo-toast-action{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:transparent;color:var(--accent-orange, #FE6B34);border:1px solid transparent;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:background-color .15s ease}.calendar-undo-toast-action:hover:not(:disabled){background:#fe6b3426}.calendar-undo-toast-action:disabled{opacity:.7;cursor:not-allowed}.calendar-undo-toast-close{background:transparent;border:none;color:var(--text-inverse, #ffffff);font-size:20px;line-height:1;cursor:pointer;padding:4px 8px;border-radius:4px;opacity:.7}.calendar-undo-toast-close:hover:not(:disabled){opacity:1;background:#ffffff14}.calendar-undo-toast-close:disabled{opacity:.4;cursor:not-allowed}.calendar-undo-toast .icon-spin{animation:tcv-spin 1s linear infinite}.reschedule-conflict-inline-warn{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--error-text, #991b1b);background:var(--error-bg, #fee2e2);border:1px solid var(--error-border, #f87171);border-radius:6px;padding:6px 10px;margin:0 0 12px}.reschedule-conflict-loading{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary, #6b7280);margin:-4px 0 12px}.reschedule-conflict-modal .icon-spin{animation:tcv-spin 1s linear infinite}@keyframes tcv-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.skeleton-day{pointer-events:none}.skeleton-day-number,.skeleton-chip{border-radius:4px;background:linear-gradient(90deg,var(--surface-hover) 25%,rgba(255,255,255,.15) 50%,var(--surface-hover) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.4s ease-in-out infinite}.skeleton-day-number{width:20px;height:14px;margin-bottom:8px}.skeleton-chip{height:18px;width:90%;margin-bottom:4px}.skeleton-chip-short{width:60%;animation-delay:.15s}.skeleton-week-chip{position:absolute;left:6px;right:6px;width:auto;height:32px;margin-bottom:0}.mobile-month-view{--mm-one-color: #3a8efb;--mm-grp-color: var(--accent-orange, #FE6B34);--mm-one-bg: rgba(58, 142, 251, .16);--mm-grp-bg: var(--chip-orange-bg, rgba(254, 107, 52, .16));display:flex;flex-direction:column;gap:8px;width:100%}.mobile-month-grid{padding:0;flex-shrink:0}.mobile-month-weekrow{display:grid;grid-template-columns:repeat(7,1fr);font-size:10px;color:var(--text-tertiary);font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:6px 0;border-bottom:1px solid var(--border-primary)}.mobile-month-weekrow span{text-align:center}.mobile-month-cells{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-top:4px;flex-shrink:0}.mobile-month-cell{all:unset;aspect-ratio:1 / 1.05;min-height:56px;border-radius:9px;padding:6px 4px 5px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;background:transparent;cursor:pointer;border:1px solid transparent;transition:background .12s ease,border-color .12s ease;position:relative;box-sizing:border-box}.mobile-month-cell:not(.out):hover{background:var(--surface-secondary)}.mobile-month-cell.out{color:var(--text-tertiary);opacity:.35;cursor:default}.mobile-month-num{font-size:13px;font-weight:600;color:var(--text-primary);line-height:1;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:999px}.mobile-month-cell.out .mobile-month-num{color:var(--text-tertiary);font-weight:500}.mobile-month-cell.today .mobile-month-num{background:var(--accent-orange);color:var(--text-inverse, #ffffff);font-size:12px}.mobile-month-cell.selected{background:var(--card-background);border-color:var(--accent-orange)}.mobile-month-cell.selected:not(.today) .mobile-month-num{background:var(--chip-orange-bg);color:var(--accent-orange)}.mobile-month-dots{display:flex;gap:3px;min-height:7px;flex-wrap:wrap;justify-content:center;max-width:100%;line-height:1}.mobile-month-dots i{width:5px;height:5px;border-radius:999px;display:inline-block}.mobile-month-dots i.one{background:var(--mm-one-color)}.mobile-month-dots i.grp{background:var(--mm-grp-color)}.mobile-month-more{font-size:8.5px;color:var(--text-tertiary);font-weight:700;margin-left:2px}.mobile-month-legend{display:flex;gap:16px;align-items:center;font-size:10.5px;color:var(--text-secondary);padding:10px 4px 4px}.mobile-month-legend span{display:inline-flex;align-items:center;gap:6px}.mobile-month-legend i{width:7px;height:7px;border-radius:999px;display:inline-block}.mobile-month-legend i.one{background:var(--mm-one-color)}.mobile-month-legend i.grp{background:var(--mm-grp-color)}.mobile-month-legend .hint{margin-left:auto;color:var(--text-tertiary)}.mobile-month-detail{margin-top:8px;border-top:1px solid var(--border-primary);padding-top:14px}.mobile-month-detail-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:10px;gap:8px}.mobile-month-detail-head .day-label{font-size:14px;font-weight:700;color:var(--text-primary)}.mobile-month-detail-head .day-meta{font-size:10.5px;color:var(--text-secondary);letter-spacing:.02em}.mobile-month-day-list{display:flex;flex-direction:column;gap:8px;padding-bottom:16px}.mobile-month-sess{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:10px;padding:10px 12px;background:var(--card-background);border:1px solid var(--border-primary);border-radius:10px;border-left:3px solid var(--mm-one-color);cursor:pointer;transition:background .15s ease,border-color .15s ease}.mobile-month-sess.grp{border-left-color:var(--mm-grp-color)}.mobile-month-sess:hover{background:var(--surface-hover)}.mobile-month-sess .time{text-align:right;padding-right:8px;border-right:1px solid var(--border-primary)}.mobile-month-sess .time .h{font-size:12.5px;font-weight:700;line-height:1;color:var(--text-primary)}.mobile-month-sess .time .ap{font-size:9.5px;color:var(--text-tertiary);margin-top:3px;font-weight:600;letter-spacing:.02em}.mobile-month-sess .info{min-width:0}.mobile-month-sess .info .name-row{display:flex;align-items:center;gap:6px;min-width:0}.mobile-month-sess .info .name{font-size:12.5px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-month-sess .info .kind-tag{font-size:9px;padding:1px 6px;border-radius:999px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;flex:0 0 auto}.mobile-month-sess .info .kind-tag.one{background:var(--mm-one-bg);color:var(--mm-one-color)}.mobile-month-sess .info .kind-tag.grp{background:var(--mm-grp-bg);color:var(--mm-grp-color)}.mobile-month-sess .info .sub{font-size:10.5px;color:var(--text-secondary);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-month-sess .av{width:28px;height:28px;border-radius:999px;background:var(--mm-one-color);color:var(--text-inverse, #ffffff);font-size:10px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.mobile-month-sess .av.grp{background:var(--mm-grp-color)}.mobile-month-empty-day{padding:32px 16px;text-align:center;background:var(--card-background);border:1px dashed var(--border-primary);border-radius:10px}.mobile-month-empty-day .ttl{font-size:13px;font-weight:600;color:var(--text-secondary)}.mobile-month-empty-day .sub{font-size:11.5px;color:var(--text-tertiary);margin-top:4px}.mobile-month-empty-cta{margin-top:12px;padding:8px 16px;border-radius:999px;border:1px solid var(--accent-orange);background:transparent;color:var(--accent-orange);font-size:12px;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease}.mobile-month-empty-cta:hover{background:var(--accent-orange);color:var(--text-inverse, #ffffff)}.mobile-month-view{--mm-block-color: rgba(154, 170, 188, .65);--mm-block-soft: rgba(154, 170, 188, .18)}.mobile-month-bar{position:absolute;left:3px;right:3px;bottom:3px;height:4px;border-radius:2px;background:var(--mm-block-color);z-index:1;pointer-events:none}.mobile-month-cell.range-mid .mobile-month-bar{left:0;right:0;border-radius:0}.mobile-month-cell.range-start .mobile-month-bar{right:0;border-radius:2px 0 0 2px}.mobile-month-cell.range-end .mobile-month-bar{left:0;border-radius:0 2px 2px 0}.mobile-month-cell.blocked .mobile-month-dots{padding-bottom:4px}.mobile-month-legend .bar-swatch{width:16px;height:4px;border-radius:2px;background:var(--mm-block-color);display:inline-block;vertical-align:middle}.mobile-month-block-card{display:grid;grid-template-columns:36px 1fr auto;gap:10px;align-items:center;padding:11px 12px;border-radius:10px;border:1px dashed var(--mm-block-color);background-color:var(--card-background);background-image:repeating-linear-gradient(135deg,var(--mm-block-soft) 0 2px,transparent 2px 6px)}.mobile-month-block-card .ico{width:32px;height:32px;border-radius:8px;background:var(--mm-block-soft);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center}.mobile-month-block-card .info{min-width:0}.mobile-month-block-card .info .title{font-size:12.5px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-month-block-card .info .sub{font-size:10.5px;color:var(--text-secondary);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-month-block-card .when{font-size:10px;color:var(--text-secondary);letter-spacing:.04em;text-align:right;font-weight:700}.mobile-month-block-card-button{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;transition:border-color .15s ease,background-color .15s ease}.mobile-month-block-card-button:hover,.mobile-month-block-card-button:focus-visible{outline:none;border-color:var(--accent-orange)}.mobile-month-block-card-button:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-orange) 18%,transparent)}.mobile-month-cell-skeleton{cursor:default;pointer-events:none}.mobile-month-cell-skeleton .mobile-month-num{background:var(--surface-hover);width:22px;height:14px;border-radius:4px}.mobile-month-cell-skeleton .mobile-month-dots i{width:5px;height:5px;border-radius:999px;background:var(--surface-hover)}.skeleton-block{background:linear-gradient(90deg,var(--surface-hover) 25%,rgba(255,255,255,.15) 50%,var(--surface-hover) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.4s ease-in-out infinite;border-radius:4px;display:inline-block}.mobile-month-detail .day-label.skeleton-block,.mobile-month-detail .day-meta.skeleton-block{color:transparent}.mobile-month-sess-skeleton{pointer-events:none;border-left-color:var(--surface-hover)}.mobile-month-sess-skeleton .time.skeleton-block{width:40px;height:28px;padding:0;border:none}.mobile-month-sess-skeleton .av.skeleton-block{width:28px;height:28px;border-radius:999px;background:var(--surface-hover)}.csm-backdrop{position:fixed;inset:0;background:#05080d9e;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:32px}.csm-modal{background:var(--card-background);border:1px solid var(--border-primary);border-radius:16px;width:min(1100px,100%);max-height:calc(100vh - 64px);box-shadow:0 30px 80px #00000073,0 0 0 1px #0000000a;display:flex;flex-direction:column;overflow:hidden;animation:csm-modal-in .18s ease-out}@keyframes csm-modal-in{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.csm-head{padding:22px 28px 18px;border-bottom:1px solid var(--border-primary);display:flex;align-items:flex-start;gap:16px;background:var(--card-background)}.csm-head-left{flex:1;min-width:0}.csm-crumb{font-size:11px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.1em;font-weight:700;margin-bottom:6px}.csm-day{font-size:22px;font-weight:700;letter-spacing:-.012em;color:var(--text-primary);display:flex;align-items:baseline;gap:12px}.csm-today-pill{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-orange);background:var(--chip-orange-bg);padding:3px 9px;border-radius:999px;align-self:center}.csm-summary{font-size:13px;color:var(--text-secondary);margin-top:8px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}.csm-stat{display:inline-flex;align-items:center;gap:6px}.csm-dot{width:8px;height:8px;border-radius:999px;display:inline-block}.csm-dot.one{background:#3a8efb}.csm-dot.cancelled{background:var(--text-tertiary)}.csm-sep{width:3px;height:3px;border-radius:50%;background:var(--text-tertiary)}.csm-toolbar{display:flex;gap:8px;align-items:center}.csm-iconbtn{width:34px;height:34px;border-radius:8px;border:1px solid var(--border-primary);background:var(--card-background);color:var(--text-secondary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:border-color .15s ease,color .15s ease}.csm-iconbtn:hover,.csm-iconbtn:focus-visible{outline:none;border-color:var(--accent-orange);color:var(--text-primary)}.csm-body{flex:1;min-height:0;display:grid;grid-template-columns:340px 1fr}.csm-list-pane{border-right:1px solid var(--border-primary);background:var(--card-background);display:flex;flex-direction:column;min-height:0}.csm-list-scroll{flex:1;overflow:auto}.csm-list-scroll::-webkit-scrollbar{width:8px}.csm-list-scroll::-webkit-scrollbar-thumb{background:var(--border-primary);border-radius:4px}.csm-timegroup{padding:12px 18px 6px;font-size:10.5px;font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid var(--border-primary);background:color-mix(in srgb,var(--info-blue-accent) 6%,var(--card-background));position:sticky;top:0;z-index:1}.csm-lrow{all:unset;display:grid;grid-template-columns:4px 64px 1fr 14px;align-items:center;gap:12px;padding:12px 16px 12px 0;border-bottom:1px solid var(--border-primary);cursor:pointer;position:relative;box-sizing:border-box;width:100%;transition:background-color .15s ease}.csm-lrow:hover,.csm-lrow.active{background:var(--surface-hover)}.csm-lrow.active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--info-blue-chip-text)}.csm-lrow:focus-visible{outline:2px solid var(--accent-orange);outline-offset:-2px}.csm-kbar{width:3px;height:32px;border-radius:2px;margin-left:12px;background:#3a8efb}.csm-lrow.cancelled .csm-kbar{background:var(--text-tertiary)}.csm-lrow.pending .csm-kbar{background:var(--accent-orange)}.csm-tcol{text-align:right;font-feature-settings:"tnum"}.csm-tcol .csm-t{font-size:13.5px;font-weight:700;line-height:1;color:var(--text-primary)}.csm-tcol .csm-ap{font-size:10px;color:var(--text-tertiary);margin-top:4px;letter-spacing:.04em;font-weight:600}.csm-info{min-width:0}.csm-nm-row{display:flex;align-items:center;gap:8px}.csm-nm{font-size:13.5px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.csm-lrow.cancelled .csm-nm{color:var(--text-tertiary);text-decoration:line-through}.csm-kind{font-size:9.5px;padding:1px 7px;border-radius:999px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;flex:0 0 auto}.csm-kind.one{background:#3a8efb29;color:#3a8efb}.csm-kind.grp{background:var(--chip-orange-bg);color:var(--accent-orange)}.csm-sb{font-size:11.5px;color:var(--text-secondary);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.csm-chev{color:var(--text-tertiary);flex:0 0 auto}.csm-empty-list{padding:32px 24px;font-size:13px;color:var(--text-secondary);text-align:center}.csm-list-foot{padding:12px 18px;border-top:1px solid var(--border-primary);display:flex;align-items:center;justify-content:space-between;background:color-mix(in srgb,var(--info-blue-accent) 6%,var(--card-background))}.csm-hint{font-size:11.5px;color:var(--text-tertiary)}.csm-detail{display:flex;flex-direction:column;min-height:0;background:var(--card-background)}.csm-detail-empty{flex:1;display:flex;align-items:center;justify-content:center;padding:32px;color:var(--text-secondary);font-size:13px}.csm-detail-top{padding:22px 28px 18px;border-bottom:1px solid var(--border-primary)}.csm-badge-row{display:flex;align-items:center;gap:8px;margin-bottom:14px;flex-wrap:wrap}.csm-badge{font-size:10.5px;padding:3px 9px;border-radius:999px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;display:inline-flex;align-items:center;gap:4px}.csm-badge.one{background:#3a8efb29;color:#3a8efb}.csm-badge.grp{background:var(--chip-orange-bg);color:var(--accent-orange)}.csm-badge.csm-status-scheduled,.csm-badge.csm-status-confirmed,.csm-badge.csm-status-pending,.csm-badge.csm-status-pending_reschedule,.csm-badge.csm-status-default{background:var(--info-blue-chip-bg);color:var(--info-blue-chip-text)}.csm-badge.csm-status-completed{background:var(--success-bg);color:var(--success-color)}.csm-badge.csm-status-cancelled,.csm-badge.csm-status-no-show{background:var(--surface-hover);color:var(--text-tertiary)}.csm-when{font-size:13px;color:var(--text-secondary);margin-left:auto;font-feature-settings:"tnum";display:inline-flex;align-items:center;gap:6px}.csm-who{display:flex;align-items:center;gap:16px}.csm-av{width:52px;height:52px;border-radius:999px;background:#3a8efb;color:#fff;font-size:16px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.csm-name{font-size:22px;font-weight:700;letter-spacing:-.012em;line-height:1.15;color:var(--text-primary)}.csm-sub{font-size:13px;color:var(--text-secondary);margin-top:4px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.csm-sub .csm-dot{width:3px;height:3px;border-radius:50%;background:var(--text-tertiary)}.csm-detail-body{flex:1;min-height:0;overflow:auto;padding:22px 28px 18px}.csm-detail-body::-webkit-scrollbar{width:8px}.csm-detail-body::-webkit-scrollbar-thumb{background:var(--border-primary);border-radius:4px}.csm-banner{display:flex;flex-direction:column;gap:4px;padding:12px 14px;margin-bottom:18px;border-radius:8px;font-size:12.5px;line-height:1.5}.csm-banner-title{font-weight:700;font-size:13px}.csm-banner-reason{color:inherit;opacity:.85}.csm-banner-reschedule{background:var(--warning-bg);color:var(--warning-text);border:1px solid var(--warning-border)}.csm-banner-cancelled{background:var(--error-bg);color:var(--error-text);border:1px solid var(--error-border)}.csm-meta-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px 24px;padding-bottom:22px;margin-bottom:22px;border-bottom:1px solid var(--border-primary)}.csm-field{min-width:0}.csm-field .csm-k{font-size:10.5px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.1em;font-weight:700;margin-bottom:6px}.csm-field .csm-v{font-size:13.5px;color:var(--text-primary);line-height:1.4;display:flex;align-items:center;gap:8px}.csm-sec{margin-bottom:22px}.csm-sec-h{font-size:12.5px;font-weight:700;color:var(--text-primary);margin-bottom:10px;display:flex;align-items:center;gap:8px}.csm-quote{padding:14px 18px;border-left:3px solid var(--info-blue-chip-text);background:var(--info-blue-chip-bg);border-radius:0 8px 8px 0;font-size:13px;line-height:1.55;color:var(--text-primary);white-space:pre-wrap;overflow-wrap:anywhere}.csm-quote-muted{color:var(--text-tertiary);font-style:italic}.csm-detail-foot{padding:16px 28px;border-top:1px solid var(--border-primary);display:flex;align-items:center;gap:10px;background:color-mix(in srgb,var(--info-blue-accent) 6%,var(--card-background))}.csm-spacer{flex:1}.csm-btn{font-family:inherit;font-size:13px;font-weight:600;border-radius:8px;padding:8px 14px;border:1px solid var(--border-primary);background:var(--card-background);color:var(--text-primary);cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:border-color .15s ease,background-color .15s ease}.csm-btn:hover,.csm-btn:focus-visible{outline:none;border-color:var(--accent-orange)}.csm-btn-primary{background:var(--info-blue-accent);color:#fff;border-color:transparent}.csm-btn-primary:hover,.csm-btn-primary:focus-visible{background:color-mix(in srgb,var(--info-blue-accent) 88%,#000);border-color:transparent}.csm-btn-danger{color:var(--error-color);border-color:color-mix(in srgb,var(--error-color) 40%,transparent)}.csm-btn-danger:hover,.csm-btn-danger:focus-visible{border-color:var(--error-color);background:color-mix(in srgb,var(--error-color) 8%,transparent)}@media(max-width:880px){.csm-backdrop{padding:12px}.csm-modal{max-height:calc(100vh - 24px)}.csm-body{grid-template-columns:1fr;grid-template-rows:minmax(180px,38%) 1fr}.csm-list-pane{border-right:none;border-bottom:1px solid var(--border-primary)}.csm-meta-grid{grid-template-columns:repeat(2,1fr)}.csm-detail-top{padding:16px 18px 14px}.csm-detail-body{padding:16px 18px}.csm-detail-foot{padding:12px 18px;flex-wrap:wrap}.csm-head{padding:16px 18px}}@media(max-width:560px){.csm-meta-grid{grid-template-columns:1fr}.csm-name,.csm-day{font-size:18px}.csm-detail-foot .csm-btn{flex:1;justify-content:center}}.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:var(--card-background, white);border-radius:.5rem;padding:2rem;max-width:min(100%,500px);width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.reschedule-modal-content h3{font-size:1.25rem;font-weight:600;color:var(--text-primary, #111827);margin:0 0 .5rem}.reschedule-modal-content p{color:var(--text-tertiary, #6b7280);margin:0 0 1.5rem}.form-group label{display:block;font-size:.875rem;font-weight:500;color:var(--text-primary, #374151);margin-bottom:.5rem}.form-input,.form-textarea{width:100%;padding:.5rem .75rem;border:1px solid var(--border-primary, #d1d5db);border-radius:.375rem;font-size:.875rem;background:var(--input-bg, var(--card-background));color:var(--text-primary);transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.form-input:focus,.form-textarea:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.searchable-select{position:relative;width:100%}.searchable-select.disabled{opacity:.6;cursor:not-allowed}.select-trigger{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--input-bg, white);border:1px solid var(--input-border);border-radius:6px;cursor:pointer;transition:all .2s;min-height:38px}.select-trigger:hover:not(.disabled){border-color:var(--border-secondary, #9ca3af)}.select-trigger:focus-visible{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.select-trigger.open{border-color:var(--border-secondary)}.select-value{flex:1;color:var(--text-primary, #111827);font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select-arrow{margin-left:8px;color:var(--text-secondary, #6b7280);display:flex;align-items:center;transition:transform .2s}.select-trigger.open .select-arrow{transform:rotate(180deg)}.select-dropdown{background:var(--card-bg, white);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;max-height:320px;display:flex;flex-direction:column;animation:dropdownSlideIn .15s ease-out}.select-search{padding:8px;border-bottom:1px solid var(--border-primary, #e5e7eb);position:sticky;top:0;background:var(--card-bg, white);z-index:1}.select-search input{width:100%;padding:8px 12px;border:1px solid var(--input-border, #e5e7eb);border-radius:6px;font-size:14px;outline:none;transition:all .2s;background:var(--input-bg, white);color:var(--text-primary, #111827)}.select-search input:focus{border-color:var(--primary-color, #3b82f6);box-shadow:0 0 0 3px var(--focus-ring, rgba(254, 107, 52, .15))}.select-search input::placeholder{color:var(--text-secondary, #9ca3af)}.select-options{overflow-y:auto;padding:4px}.select-option{padding:10px 12px;cursor:pointer;border-radius:6px;font-size:14px;color:var(--text-primary, #111827);transition:background .15s;overflow-wrap:anywhere;word-break:break-word}.select-option:hover:not(.empty),.select-option.highlighted:not(.empty){background:var(--hover-bg, #f3f4f6)}.select-option.selected{background:var(--primary-light, #eff6ff);color:var(--primary-color, #1e40af);font-weight:500}.select-option.empty{color:var(--text-secondary, #6b7280);cursor:default;text-align:center;padding:16px 12px}.select-options::-webkit-scrollbar{width:8px}.select-options::-webkit-scrollbar-track{background:var(--surface-secondary, #f3f4f6);border-radius:4px}.select-options::-webkit-scrollbar-thumb{background:var(--border-secondary, #d1d5db);border-radius:4px}.select-options::-webkit-scrollbar-thumb:hover{background:var(--text-secondary, #9ca3af)}@media(max-width:768px){.select-search input{font-size:16px}}.sessions-page{display:flex;flex-direction:column;gap:24px;box-sizing:border-box}.sessions-page--mobile{padding:12px var(--mtd-page-padding-x, 18px) calc(88px + env(safe-area-inset-bottom,0px));gap:12px}.sessions-page--mobile .page-header{flex-direction:column;align-items:stretch;gap:8px;margin-bottom:4px}.sessions-page--mobile .page-header h2{font-size:22px}.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:var(--text-primary, #111827);flex:1}.sessions-header .btn{flex-shrink:0;white-space:nowrap;min-width:fit-content}.sessions-scheduler-container{animation:slideIn .3s ease}.completed-sessions-toggle{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding:12px 16px;background:var(--surface-secondary, #f8fafc);border-radius:8px;border:1px solid var(--border-primary, #e2e8f0)}.completed-toggle-btn{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:500;padding:10px 16px;border-radius:6px;cursor:pointer;transition:all .2s ease}.completed-toggle-btn svg{flex-shrink:0}.completed-toggle-btn.btn-outline{background:var(--card-background, white);border:2px solid var(--accent-orange, #FE6B34);color:var(--accent-orange, #FE6B34);box-shadow:0 1px 3px #fe6b3426}.completed-toggle-btn.btn-outline:hover{background:var(--surface-hover, #fef1e6);border-color:var(--accent-orange-hover, #f4a261);color:var(--accent-orange-hover, #f4a261);box-shadow:0 2px 6px #fe6b3433}.completed-toggle-hint{font-size:13px;color:var(--text-secondary, #64748b);font-style:italic}.spinner-small{width:14px;height:14px;border:2px solid #e2e8f0;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}.loading-all-sessions-message{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:32px;background:var(--info-bg, #f0f9ff);border:1px solid var(--info-border, #bae6fd);border-radius:8px;grid-column:1 / -1}.loading-all-sessions-message p{margin:0;color:var(--info-text, #0369a1);font-size:14px}.client-pre-session-notes{background:var(--session-client-pre-notes-bg, #f0f9ff);border:1px solid var(--session-client-pre-notes-border, #0ea5e9);border-radius:8px;padding:16px;margin-bottom:16px}.client-pre-session-notes strong{color:var(--session-client-pre-notes-strong, #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:var(--session-client-pre-notes-p-text, #0c4a6e);font-style:italic;line-height:1.6;background:var(--session-client-pre-notes-p-bg, white);padding:12px;border-radius:4px;border-left:3px solid var(--session-client-pre-notes-border, #0ea5e9)}.session-notes-display{background:var(--session-subtle-bg, #f8fafc);border-radius:8px;padding:20px;border:1px solid var(--border-primary, #e2e8f0)}.session-notes-display h4{margin:0 0 16px;color:var(--text-primary, #1e293b);font-size:16px;font-weight:600;border-bottom:2px solid var(--border-primary, #e2e8f0);padding-bottom:8px}.pre-session-notes{background:var(--session-pre-notes-bg, #fef3c7);border-left:4px solid var(--warning-color, #f59e0b);padding:16px;margin-bottom:16px;border-radius:6px}.pre-session-notes strong{color:var(--session-pre-notes-strong, #92400e);display:block;margin-bottom:8px;font-weight:600}.pre-session-notes p{margin:0;color:var(--session-pre-notes-text, #78350f);line-height:1.6}.post-session-notes{background:var(--session-post-notes-bg, #dcfce7);border-left:4px solid var(--success-color, #22c55e);padding:16px;margin-bottom:16px;border-radius:6px}.post-session-notes strong{color:var(--session-post-notes-strong, #166534);display:block;margin-bottom:8px;font-weight:600}.post-session-notes p{margin:0;color:var(--session-post-notes-text, #14532d);line-height:1.6}.client-visibility-info{background:var(--session-visibility-bg, #f1f5f9);border:1px solid var(--session-visibility-border, #cbd5e1);border-radius:6px;padding:12px;margin-top:12px}.client-visibility-info small{color:var(--session-visibility-text, #475569);font-weight:500;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.animal-session-scheduler{display:flex;flex-direction:column;gap:24px;width:100%}.animal-session-scheduler .scheduler-header{background:var(--session-subtle-bg, #f8fafc);border:1px solid var(--border-primary, #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:var(--text-primary, #1e293b)}.animal-session-scheduler .animal-info{margin:0;color:var(--text-secondary, #64748b);font-size:.875rem;font-weight:500}.session-creator,.session-editor{background:transparent;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px}.session-creator-header,.session-editor-header{margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.session-creator-header h3,.session-editor-header h3{margin:0 0 4px;font-size:1.25rem;font-weight:600;color:var(--text-primary, #111827)}.session-creator-client,.session-editor-client{margin:0;color:var(--text-secondary, #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:var(--text-secondary, #6b7280);font-size:.875rem}.session-editor-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.meta-badge{padding:6px 12px;border-radius:6px;font-size:.75rem;font-weight:600;white-space:nowrap}.meta-badge.animal-badge{background:#dbeafe;color:#1e40af;border:1px solid #93c5fd}.meta-badge.date-badge{background:#f3f4f6;color:#374151;border:1px solid #d1d5db}.meta-badge.status-badge{text-transform:uppercase;letter-spacing:.5px}.meta-badge.status-completed{background:#d1fae5;color:#065f46;border:1px solid #6ee7b7}.meta-badge.status-cancelled{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.meta-badge.status-no-show{background:#f3f4f6;color:#374151;border:1px solid #d1d5db}.session-creator-form,.session-editor-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-label{font-weight:500;color:#374151;font-size:.875rem;display:flex;align-items:center;gap:6px}.form-textarea{padding:12px;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;line-height:1.5;resize:vertical;min-height:120px;font-family:inherit}.form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #fe6b3426}.form-textarea:disabled{background-color:#f9fafb;color:#6b7280}.form-help{font-size:.75rem;color:#6b7280;line-height:1.4}.form-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:12px;border-radius:6px;font-size:.875rem}.session-completed-banner{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;background-color:var(--success-bg, #ecfdf5);border:1px solid var(--success-border, #a7f3d0);border-radius:8px;margin-bottom:20px;color:var(--success-text, #065f46);font-size:.9rem;line-height:1.5}.session-completed-banner svg{flex-shrink:0;color:var(--success-color, #059669);margin-top:1px}.session-completed-banner strong{color:var(--success-text, #047857)}.session-creator-actions,.session-editor-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid var(--border-primary, #e5e7eb)}.session-list{overflow:hidden}.session-list-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--text-tertiary);background:transparent}.session-list-title h3{margin:0;font-size:1.125rem;font-weight:600;color:var(--text-primary, #111827)}.session-list-actions{display:flex;gap:8px}.session-filters{padding:20px 24px;background:var(--session-subtle-bg, #f9fafb);border-bottom:1px solid var(--border-primary, #e5e7eb)}.filter-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:16px}.filter-row:last-child{margin-bottom:0}.filter-group label{font-size:.875rem;font-weight:500;color:#374151}.session-status-badge{display:inline-block;padding:2px 8px;border-radius:12px;font-size:.75rem;font-weight:600;color:#fff}.session-duration,.session-location{display:flex;align-items:center;gap:4px;color:#6b7280;font-size:.75rem}.session-action-buttons{display:flex;gap:8px}.sessions{display:flex;flex-direction:column}.session-card{border-bottom:1px solid #e5e7eb;transition:all .2s ease}.session-card.expanded{background:var(--session-subtle-bg, #f9fafb)}.session-header{display:flex;align-items:center;padding:16px 24px;cursor:pointer;transition:background-color .2s ease}.session-header:hover{background:var(--session-subtle-bg, #f9fafb)}.session-card.expanded .session-header{background:transparent}.session-date{flex-shrink:0;margin-right:16px}.session-date-primary{font-weight:600;color:var(--text-primary, #111827);font-size:.875rem}.session-date-secondary{color:var(--text-tertiary, #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:var(--text-on-panel, #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:var(--text-tertiary, #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:var(--text-tertiary, #6b7280);transition:transform .2s ease}.session-expand-icon svg.rotated{transform:rotate(180deg)}.session-full-date{color:var(--text-tertiary, #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:var(--text-primary, #111827);display:flex;align-items:center;gap:6px}.session-notes-content,.session-ai-content{color:var(--text-on-panel, #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:var(--success-bg, #f0fdf4);border:1px solid var(--success-border, #bbf7d0);border-radius:6px;padding:16px}.session-ai-summary h4{color:var(--success-color, #059669)}.session-actions{display:flex;justify-content:space-between;align-items:center;padding-top:16px}.session-metadata{color:var(--text-tertiary, #6b7280);font-size:.75rem}.session-media-preview,.session-media-viewer,.session-file-upload{margin-top:8px}.version-history{background:var(--session-subtle-bg, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;padding:16px;margin-bottom:20px}.version-history h4{margin:0 0 12px;font-size:.875rem;font-weight:600;color:var(--text-primary, #374151)}.version-list{display:flex;flex-direction:column;gap:12px}.version-item{background:var(--card-background, white);border:1px solid var(--border-primary, #e5e7eb);border-radius:4px;padding:12px}.version-header{display:flex;align-items:center;gap:12px;margin-bottom:8px;font-size:.75rem}.version-number{background:var(--input-bg, #e5e7eb);color:var(--text-on-panel, #374151);padding:2px 6px;border-radius:3px;font-weight:500}.version-date,.version-author{color:var(--text-tertiary, #6b7280)}.version-notes-preview{color:var(--text-on-panel, #374151);font-size:.875rem;line-height:1.4}.ai-summary-display{background:var(--success-bg, #f0fdf4);border:1px solid var(--success-border, #bbf7d0);border-radius:6px;padding:12px;color:var(--text-on-panel, #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;background:var(--card-background, #ffffff);color:var(--text-tertiary, #9ca3af)}.session-list.empty h3{color:var(--text-primary, #111827)}.session-list.empty p{color:var(--text-tertiary, #9ca3af)}.empty-icon{color:#d1d5db}.empty-icon svg{width:48px;height:48px}.empty-state h3{margin:0;color:var(--text-primary, #374151);font-size:1.125rem;font-weight:600}.empty-state p{margin:0;max-width:min(100%,400px);line-height:1.5}.btn-link{background:transparent;color:#3b82f6;border:none;padding:4px 8px}.btn-link:hover:not(:disabled){color:#2563eb;text-decoration:underline}.session-scheduler{background:var(--card-background, white);border-radius:8px;padding:16px;box-shadow:0 1px 3px #0000001a}.session-scheduler h2,.session-scheduler h3{color:var(--text-primary, #111827)}.session-scheduler.compact{padding:12px}.session-scheduler-header{margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.session-scheduler-header h3{margin:0 0 4px;font-size:1.125rem;font-weight:600;color:var(--text-primary, #111827)}.session-scheduler-description{margin:0;color:var(--text-secondary, #6b7280);font-size:.8125rem}.session-scheduler .form-group label{color:#374151}.session-scheduler .form-control,.session-scheduler input,.session-scheduler select,.session-scheduler textarea{background:var(--input-bg, white);color:var(--text-primary, #374151)}.session-scheduler .form-control:focus,.session-scheduler input:focus,.session-scheduler select:focus{border-color:var(--input-focus-border, #FF7A47);box-shadow:0 0 0 3px #ff7a4733}.scheduler-sidebar{background:var(--input-bg, transparent)}.scheduler-sidebar h4{color:var(--text-primary, #111827)}.session-scheduler-form{display:flex;flex-direction:column;gap:12px}.loading-indicator{font-size:.7rem;color:#6b7280;font-weight:400;font-style:italic}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.form-row-3{grid-template-columns:repeat(3,1fr)}.form-row-2{grid-template-columns:repeat(2,1fr)}.form-group{display:flex;flex-direction:column;gap:4px}.form-label{font-size:.8125rem;font-weight:500;color:#374151}.form-select,.form-input{padding:8px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:.8125rem;font-family:inherit;background:#fff;width:100%;color-scheme:light;box-sizing:border-box;height:35px}.form-select{cursor:pointer}.session-scheduler-form .form-input[type=date],.session-scheduler-form .form-input[type=time]{color:var(--text-primary, #374151)}.session-scheduler-form .form-input[type=date]::-webkit-calendar-picker-indicator,.session-scheduler-form .form-input[type=time]::-webkit-calendar-picker-indicator{cursor:pointer}.form-select:focus,.form-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #fe6b3426}.form-select:disabled,.form-input:disabled{background-color:#f9fafb;color:#6b7280;cursor:not-allowed}.form-control-static{padding:8px 10px;font-size:.8125rem;color:var(--text-primary, #374151);background:var(--surface-secondary, #f9fafb);border-radius:6px;border:1px solid var(--border-primary, #e5e7eb)}.required{color:var(--error-color, #dc2626)}.session-scheduler-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:12px;border-top:1px solid #e5e7eb}@media(max-width:640px){.form-row,.form-row-2,.form-row-3{grid-template-columns:1fr}}.spinner-sm{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}.calendar-view{background:var(--card-background, white);border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.calendar-title{display:flex;align-items:center;gap:12px}.calendar-title h3{margin:0;font-size:1.125rem;font-weight:600;color:var(--text-primary, #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 var(--input-border, #d1d5db);border-radius:6px;background:var(--input-bg, white);color:var(--text-on-panel, #374151);cursor:pointer;transition:all .2s ease}.calendar-nav-btn:hover:not(:disabled){background:var(--surface-hover, #f9fafb);border-color:var(--text-tertiary, #9ca3af)}.calendar-nav-btn:disabled{opacity:.5;cursor:not-allowed}.calendar-view-toggle{display:flex;border:1px solid var(--input-border, #d1d5db);border-radius:6px;overflow:hidden}.calendar-view-btn{padding:6px 12px;border:none;background:var(--input-bg, white);color:var(--text-on-panel, #374151);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;border-right:1px solid var(--input-border, #d1d5db)}.calendar-view-btn:last-child{border-right:none}.calendar-view-btn:hover:not(.active){background:var(--surface-hover, #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:var(--text-tertiary, #6b7280);font-weight:500}.calendar-filter select{padding:6px 10px;border:1px solid var(--input-border, #d1d5db);border-radius:6px;font-size:.875rem;background:var(--input-bg, white);color:var(--text-primary)}.calendar-body{padding:24px}.calendar-grid{display:grid;gap:1px;background:var(--card-background);border:none;border-radius:6px;overflow:hidden}.calendar-grid.day-view{grid-template-columns:80px 1fr}.calendar-grid.week-view{grid-template-columns:80px repeat(7,1fr)}.calendar-grid.month-view{grid-template-columns:repeat(7,1fr)}.calendar-day-header{background:var(--session-subtle-bg, #f9fafb);padding:12px;font-size:.875rem;font-weight:600;color:var(--text-on-panel, #374151);text-align:center;border-bottom:2px solid var(--border-primary, #e5e7eb)}.calendar-time-slot{background:var(--session-subtle-bg, #f9fafb);padding:8px;font-size:.75rem;color:var(--text-tertiary, #6b7280);text-align:right;border-right:2px solid var(--border-primary, #e5e7eb)}.calendar-cell{background:var(--card-background, white);min-height:80px;padding:32px 8px 8px;position:relative}.calendar-cell.today{background:#eff6ff}.calendar-cell.other-month{background:var(--session-subtle-bg, #f9fafb);opacity:.5}.calendar-date{position:absolute;top:8px;left:8px;right:8px;font-size:.875rem;font-weight:600;color:var(--text-primary, #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:var(--text-tertiary, #6b7280);padding:4px 6px;text-align:center;font-weight:500}@media(max-width:768px){.session-creator,.session-list,.session-scheduler,.calendar-view{margin:0 -16px;border-radius:0}.session-header{padding:12px 16px}.session-content{padding:0 16px 16px}.session-creator-header,.session-editor-header,.session-scheduler-header{padding:16px;margin-bottom:16px}.session-creator-form,.session-editor-form,.session-scheduler-form{padding:0 16px 16px}.session-date{width:60px;margin-right:12px}.session-creator-actions,.session-editor-actions,.session-scheduler-actions{flex-direction:column-reverse;gap:8px}.btn{width:100%;justify-content:center}.session-list-header{flex-direction:column;align-items:flex-start;gap:12px}.session-list-actions{width:100%}.session-filters{padding:16px}.filter-row{grid-template-columns:1fr}.session-action-buttons{flex-direction:column;width:100%}.session-action-buttons .btn,.calendar-view-toggle{width:100%}.calendar-view-btn{flex:1}.calendar-filter{width:100%}.calendar-filter select{flex:1}.calendar-grid.week-view,.calendar-grid.day-view{font-size:.75rem}.calendar-session{font-size:.65rem}}.pet-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.behavior-tag{background:var(--chip-teal-bg);color:var(--chip-teal-text);border:1px solid var(--chip-teal-text);padding:3px 10px;font-size:.75rem;font-weight:500;border-radius:20px}.pet-medical-conditions{margin-bottom:16px}.pet-medical-conditions h4{margin:0 0 8px;font-size:.875rem;font-weight:600;color:#dc2626}.medical-conditions-list{display:flex;flex-wrap:wrap;gap:6px}.medical-condition{background:var(--error-bg, #fef2f2);color:var(--error-text, #dc2626);padding:4px 8px;border-radius:4px;font-size:.75rem;font-weight:500;border:1px solid var(--error-border, #fecaca)}.session-notes-editor{margin-bottom:16px;padding:16px;background:var(--session-subtle-bg, #f8fafc);border-radius:8px;border:1px solid var(--border-primary, #e2e8f0)}.session-notes-editor h4{margin:0 0 16px;font-size:1rem;font-weight:600;color:var(--text-primary, #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 var(--input-border, #d1d5db);border-radius:6px;font-size:.875rem;resize:vertical;min-height:80px;background:var(--input-bg);color:var(--text-primary)}.notes-form .form-textarea:focus{outline:none;border-color:var(--input-focus-border, #3b82f6);box-shadow:0 0 0 3px #fe6b3426}.radio-group{display:flex;flex-direction:column;gap:8px}.radio-option{display:flex;align-items:center;gap:8px;font-size:.875rem;cursor:pointer;color:var(--text-on-panel, inherit)}.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:var(--text-secondary, #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 var(--text-tertiary, #9ca3af)}.session-card.past-session .session-header{opacity:.8}.session-card.past-session .session-date-primary{color:var(--text-tertiary, #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:var(--session-subtle-bg, #f8fafc);border-radius:8px;border:1px solid var(--border-primary, #e2e8f0)}.session-close-options h4{margin:0 0 8px;font-size:1rem;font-weight:600;color:var(--text-primary, #374151)}.session-close-options p{margin:0 0 16px;font-size:.875rem;color:var(--text-tertiary, #6b7280)}.close-options-buttons{display:flex;gap:8px;flex-wrap:wrap}.btn-warning{background-color:#d97706;color:#fff;border:1px solid #d97706}.btn-warning:hover{background-color:#b45309;border-color:#b45309}.session-trainer{font-size:.8125rem;color:var(--text-tertiary, #6b7280);margin-top:2px;font-weight:500}.session-expand-icon{display:flex;align-items:center;gap:8px}.session-quick-actions{display:flex;gap:4px;opacity:0;transition:opacity .2s ease}.btn-xs{padding:4px 6px;font-size:.75rem;border-radius:4px;border:1px solid transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.pet-information{background:var(--session-subtle-bg, #f8fafc);border:1px solid var(--border-primary, #e2e8f0);border-radius:8px;padding:16px;margin-bottom:16px}.pet-information h4{margin:0 0 12px;color:var(--text-primary, #374151);font-size:14px;font-weight:600}.pet-details{margin-bottom:12px;color:var(--text-on-panel, #4b5563);font-size:14px}.pet-details strong{color:var(--text-primary, #111827)}.behavior-tags,.medical-conditions{margin-top:12px}.behavior-tags strong,.medical-conditions strong{display:block;margin-bottom:6px;color:var(--text-on-panel, #374151);font-size:13px}.tags-list,.conditions-list{display:flex;flex-wrap:wrap;gap:6px}.medical-condition{background:var(--warning-bg, #fef3c7);color:var(--warning-text, #92400e);padding:4px 8px;border-radius:12px;font-size:13px;font-weight:500}.medical-notes-text{background:var(--card-background, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;padding:8px 12px;margin-top:4px;font-size:13px;color:var(--text-on-panel, #374151);line-height:1.4}.tags-label{font-size:13px;font-weight:600;color:var(--text-on-panel, #374151);margin-right:6px}.session-details{background:var(--session-subtle-bg, #f8fafc);border:1px solid var(--border-primary, #e2e8f0);border-radius:8px;padding:16px;margin-bottom:16px}.session-details strong{display:block;margin-bottom:6px;color:var(--text-primary, #374151);font-size:14px;font-weight:600}.session-details-text{color:var(--text-on-panel, #4b5563);font-size:14px;line-height:1.4}.pending-approval-section{background:var(--warm-tint-bg);border:1px solid var(--warm-tint-border);border-radius:12px;padding:20px;margin-bottom:24px}.pending-approval-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.pending-approval-header h3{color:var(--accent-orange);margin:0;font-size:16px;font-weight:600;display:flex;align-items:center;gap:8px}.pending-approval-header h3:before{content:"⚠";font-size:18px}.pending-count-badge{background:var(--accent-orange);color:#fff;padding:4px 12px;border-radius:12px;font-size:13px;font-weight:600}.pending-approval-header p{display:none}.pending-sessions-grid{display:flex;flex-direction:column;gap:12px}.pending-session-card{background:var(--card-background);border:none;border-radius:8px;padding:14px 16px;display:flex;align-items:center;gap:16px}.pending-session-header{display:flex;align-items:center;justify-content:space-evenly;flex:1;margin-bottom:0;min-width:0}.pending-session-info{display:flex;flex-direction:column;gap:3px;min-width:140px;flex:1}.pending-session-info h4{margin:0;color:var(--text-primary);font-size:15px;font-weight:500}.pending-session-status{display:flex;align-items:center;justify-content:flex-start;flex:0 0 auto}.pending-session-date{color:var(--text-secondary);font-size:12px;margin:0}.pending-session-meta{display:flex;align-items:center;gap:10px;color:var(--text-secondary);font-size:14px;flex:1;text-align:center}.pending-session-meta-separator{color:var(--text-tertiary)}.pending-session-duration,.pending-session-location,.pending-session-pet{color:var(--text-secondary);font-size:14px;margin:0}.pending-session-trainer,.trainer-info-with-avatar{display:none}.pending-session-actions{display:flex;gap:8px;margin:0;padding:0;border:none;align-items:center;align-self:center;flex-shrink:0}.pending-session-actions .btn{padding:3px 10px;font-size:12px;border-radius:6px;font-weight:500;line-height:1.4;height:30px;min-height:unset;align-self:center}.pending-session-actions .btn svg{width:12px;height:12px;flex-shrink:0}.pending-session-details,.pending-session-notes{display:none}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:8px;padding:2rem;max-width:min(100%,500px);width:90%;max-height:90vh;overflow-y:auto}.modal-content h3{margin:0 0 1rem;color:#1f2937}.modal-content p{margin:0 0 1rem;color:#6b7280}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1rem}.pet-info-with-avatar{display:inline-flex;align-items:center;gap:8px}.pet-name-with-avatar{display:flex;align-items:center;gap:12px}.pet-name-with-avatar .pet-info{display:flex;flex-direction:column;gap:2px}.pet-name-with-avatar .pet-info strong{font-size:16px;color:#1f2937}.pet-name-with-avatar .pet-info span{font-size:14px;color:#6b7280}.sessions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px}.no-results-message{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:var(--text-secondary, #6b7280)}.no-results-message h4{margin:16px 0 8px;font-size:18px;font-weight:600;color:var(--text-primary, #374151)}.no-results-message p{margin:0;font-size:14px}.no-results-message .btn-link{background:none;border:none;color:var(--primary-color, #3b82f6);cursor:pointer;font-size:inherit;padding:0;text-decoration:underline}.no-results-message .btn-link:hover{color:var(--primary-dark, #2563eb)}.session-card-compact{overflow:hidden;transition:box-shadow .2s ease,transform .2s ease;display:flex;flex-direction:column;background:var(--card-background);border:1px solid transparent;border-radius:14px}.session-card-compact.clickable-card{cursor:pointer}.session-card-compact.clickable-card:focus{outline:2px solid var(--primary-color);outline-offset:2px}.session-card-compact.clickable-card:hover{border-color:var(--accent-orange)}.session-card-header{display:flex;justify-content:space-between;align-items:flex-start;background:transparent;border-bottom:none}.session-card-date{display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--body-background);color:var(--text-primary);border-radius:8px;padding:8px 14px;min-width:58px}.session-date-day{font-size:26px;font-weight:700;line-height:1}.session-date-month{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-top:3px;color:var(--text-secondary)}.session-card-status{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.session-card-compact .session-status-badge{border-radius:20px;font-size:12px;padding:4px 12px}.session-card-meta{display:flex;gap:8px;align-items:center}.session-media-badge,.session-version-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:var(--surface-hover);border-radius:4px;font-size:13px;color:var(--text-secondary);font-weight:500}.session-card-body{padding:4px 16px 12px;flex:1;display:flex;flex-direction:column;gap:12px}.session-card-time{font-size:13px;color:var(--text-secondary);font-weight:500}.session-card-participants{display:flex;flex-direction:column;gap:12px}.participant-info{display:flex;align-items:center;gap:10px}.participant-details{flex:1;min-width:0}.participant-name{font-weight:700;color:var(--text-primary);font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.participant-pet,.participant-role{font-size:12px;color:var(--text-secondary);display:flex;align-items:center;gap:4px;margin-top:2px;text-transform:uppercase;letter-spacing:.04em}.session-card-location{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary);padding:9px 12px;background:var(--input-bg);border-radius:8px;border:1px solid var(--input-border)}.session-card-tags{display:flex;flex-wrap:wrap;gap:6px}.behavior-tag-small{display:inline-flex;align-items:center;padding:3px 10px;background:var(--chip-teal-bg);color:var(--chip-teal-text);border:1px solid var(--chip-teal-text);border-radius:20px;font-size:12px;font-weight:500;white-space:nowrap}.session-card-notes{font-size:13px;color:var(--text-secondary);line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.session-ai-badge-small{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:var(--success-bg);color:var(--success-text);border-radius:4px;font-size:13px;font-weight:500}.session-card-footer{padding:0;border-top:1px solid var(--card-border);background:transparent;position:relative;display:flex;flex-direction:column}.session-card-quick-actions{display:flex}.session-card-quick-actions .btn{flex:1;justify-content:center;background:transparent;border:none;border-radius:0;padding:11px 8px;font-size:13px;font-weight:500;color:var(--text-secondary);gap:6px;transition:background .15s,color .15s;border-bottom:none!important}.session-card-quick-actions .btn:first-child{border-right:1px solid var(--card-border)}.session-card-quick-actions .btn:hover{background:var(--surface-hover);color:var(--text-primary)}.btn-block{width:100%;justify-content:center;background:var(--accent-orange)!important;border:none!important;border-radius:0!important;padding:13px 16px!important;font-size:14px!important;font-weight:600!important;color:#fff!important;gap:8px;transition:background .15s!important}.btn-block:hover{background:var(--accent-orange-hover)!important}.session-close-dropdown{position:absolute;bottom:100%;left:0;right:0;background:var(--card-background);border:1px solid var(--card-border);border-radius:10px 10px 0 0;box-shadow:var(--shadow-lg);padding:8px;margin-bottom:0;z-index:10}.close-dropdown-header{font-size:11px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;padding:6px 8px 8px;border-bottom:1px solid var(--card-border);margin-bottom:4px}.close-dropdown-option{width:100%;display:flex;align-items:center;gap:8px;padding:10px 12px;background:none;border:none;border-radius:6px;font-size:14px;color:var(--text-primary);cursor:pointer;transition:background .15s ease;text-align:left}.close-dropdown-option:hover{background:var(--surface-hover)}.close-dropdown-option.cancel{color:var(--text-secondary);border-top:1px solid var(--card-border);margin-top:4px;padding-top:12px}@media(max-width:768px){.sessions-grid{grid-template-columns:1fr;gap:8px}.session-card-compact{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"date status" "date body" "date footer";column-gap:12px;row-gap:6px;padding:10px 12px;border-radius:12px}.session-card-compact .session-card-header{display:contents}.session-card-date{grid-area:date;align-self:stretch;padding:8px 10px;min-width:52px;border-radius:8px}.session-card-date .session-date-day,.session-card-date .session-date-number{font-size:22px}.session-card-status{grid-area:status;justify-self:end}.session-card-status .session-status-badge{padding:2px 8px;font-size:11px}.session-card-body{grid-area:body;padding:0;gap:8px}.session-card-footer{grid-area:footer}.session-card-time{font-size:12px}.session-card-participants{flex-direction:row;gap:10px;align-items:flex-start}.participant-info{flex:1 1 0;min-width:0;gap:8px}.participant-name{font-size:13px}.participant-pet,.participant-role{font-size:11px}.session-card-location{padding:6px 10px;font-size:12px}.session-card-notes{display:none}.session-card-tags{gap:4px}.behavior-tag-small{padding:2px 8px;font-size:11px}.session-card-quick-actions .btn{padding:9px 6px;font-size:12px}}.calendar-day-cell.blocked-cell{position:relative}.calendar-day.blocked{background:repeating-linear-gradient(-45deg,transparent,transparent 5px,rgba(128,128,128,.08) 5px,rgba(128,128,128,.08) 10px),var(--surface-secondary, #f5f5f5)!important;color:var(--text-tertiary, #9ca3af)!important;cursor:not-allowed}.blocked-reason{position:absolute;bottom:6px;left:8px;font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-tertiary, #9ca3af);background:none;padding:0;border-radius:0;pointer-events:none}@media(max-width:768px){.blocked-reason{font-size:9px;bottom:4px;left:6px}}.load-more-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;margin-top:16px}.load-more-spinner{display:flex;align-items:center;gap:12px;color:#6b7280;font-size:14px}.load-more-spinner .spinner{width:24px;height:24px;border-width:2px}.load-more-btn{padding:12px 24px;font-size:14px}.load-more-end{color:#9ca3af;font-size:13px;padding:8px 16px}.session-search-filter{margin-bottom:.75rem}.session-filter-panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s ease,margin-bottom .28s ease;margin-bottom:0}.session-filter-panel.expanded{grid-template-rows:1fr;margin-bottom:.625rem}.session-filter-panel-inner{overflow:hidden}.session-filter-panel-content{padding:1rem 1.125rem;background:var(--card-background);border:1px solid var(--text-tertiary);border-radius:10px}.sfp-row{display:flex;gap:1rem;flex-wrap:wrap}.sfp-row+.sfp-row{margin-top:.875rem}.sfp-row-bottom{align-items:flex-end}.sfp-field{display:flex;flex-direction:column;gap:.375rem;flex:1 1 160px}.sfp-field label{font-size:.6875rem;font-weight:600;letter-spacing:.06em;color:var(--text-tertiary)}.sfp-select{padding:.55rem .875rem;border:1px solid var(--input-border);border-radius:6px;background:var(--input-bg);font-size:.875rem;color:var(--text-primary);cursor:pointer;transition:border-color .15s;width:100%}.sfp-select:focus{outline:none;border-color:var(--input-focus-border);box-shadow:0 0 0 2px var(--focus-ring)}.sfp-field-date-range{flex:2 1 320px}.sfp-date-range{display:flex;align-items:center;gap:.5rem}.sfp-date{flex:1;padding:.55rem .75rem;border:1px solid var(--input-border);border-radius:6px;background:var(--input-bg);font-size:.875rem;color:var(--text-primary);transition:border-color .15s}.sfp-date:focus{outline:none;border-color:var(--input-focus-border);box-shadow:0 0 0 2px var(--focus-ring)}.sfp-date-to{font-size:.8125rem;color:var(--text-tertiary);flex-shrink:0}.sfp-actions{display:flex;gap:.5rem;align-items:flex-end;flex-shrink:0;margin-left:auto}.sfp-clear-btn{padding:.55rem 1rem;background:transparent;border:1px solid var(--border-primary);border-radius:6px;font-size:.875rem;color:var(--text-secondary);cursor:pointer;transition:all .15s;white-space:nowrap}.sfp-clear-btn:hover{border-color:var(--text-secondary);color:var(--text-primary)}.sfp-apply-btn{padding:.55rem 1.25rem;background:var(--accent-orange);border:none;border-radius:6px;font-size:.875rem;font-weight:600;color:#fff;cursor:pointer;transition:background .15s;white-space:nowrap}.sfp-apply-btn:hover{background:var(--accent-orange-hover)}.session-search-bar{display:flex;align-items:center;gap:.5rem}.session-search-input-wrap{position:relative;flex:1}.session-search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--text-tertiary);pointer-events:none}.session-search-input{width:100%;padding:.6rem 1rem .6rem 2.25rem;border:1px solid var(--input-border);border-radius:6px;font-size:.875rem;background:var(--input-bg);color:var(--text-primary);transition:border-color .15s}.session-search-input::placeholder{color:var(--input-placeholder)}.session-search-input:focus{outline:none;border-color:var(--input-focus-border);box-shadow:0 0 0 2px var(--focus-ring)}.session-filter-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.6rem 1rem;background:transparent;border:1px solid var(--input-border);border-radius:6px;font-size:.875rem;font-weight:500;color:var(--text-secondary);cursor:pointer;white-space:nowrap;transition:all .15s;flex-shrink:0;line-height:1.25;height:36px;min-height:unset}.session-filter-btn:hover,.session-filter-btn.active{border-color:var(--primary-color);color:var(--primary-color)}.session-completed-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.6rem 1rem;background:transparent;border:1px solid var(--input-border);border-radius:6px;font-size:.875rem;font-weight:500;color:var(--text-secondary);cursor:pointer;white-space:nowrap;transition:all .15s;flex-shrink:0;line-height:1.25;height:36px;min-height:unset}.session-completed-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.session-completed-btn.active{border-color:var(--primary-color);color:var(--primary-color);background:var(--primary-light)}.session-completed-btn:disabled{opacity:.6;cursor:not-allowed}@media(max-width:640px){.session-search-bar{flex-wrap:wrap}.session-search-input-wrap{width:100%}.sfp-field,.sfp-field-date-range{flex:1 1 100%}.sfp-actions{width:100%;margin-left:0}.sfp-apply-btn,.sfp-clear-btn{flex:1;text-align:center;justify-content:center}}.visibility-media-row{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;align-items:start}.visibility-media-row .form-group{margin-bottom:0}.session-media-group{border:2px dashed var(--card-border)!important;border-radius:12px;padding:1.25rem}@media(max-width:640px){.visibility-media-row{grid-template-columns:1fr}}.time-slots-more{margin-top:10px;width:100%;padding:9px 14px;border-radius:8px;border:1px dashed var(--chip-orange-border, var(--accent-orange));background:transparent;color:var(--accent-orange);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:background .2s ease,border-color .2s ease}.time-slots-more:hover{background:var(--chip-orange-bg);border-style:solid;border-color:var(--accent-orange)}.session-scheduler.mobile-stepper{display:flex;flex-direction:column;gap:.75rem}.session-scheduler.mobile-stepper .mobile-step-header{display:flex;align-items:center;gap:10px;padding:0 2px}.session-scheduler.mobile-stepper .mobile-step-pill{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;background:var(--chip-orange-bg);color:var(--accent-orange);font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.session-scheduler.mobile-stepper .mobile-step-label{font-size:13px;font-weight:600;color:var(--text-primary)}.session-scheduler.mobile-stepper .mobile-step-body{padding:0}.session-scheduler.mobile-stepper .mobile-step-nav{display:flex}.session-scheduler.mobile-stepper .mobile-step-next,.session-scheduler.mobile-stepper .mobile-step-back{font-family:inherit;font-size:14px;font-weight:600;border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:opacity .2s ease,background .2s ease}.session-scheduler.mobile-stepper .mobile-step-next{flex:1;padding:12px 16px;background:var(--accent-orange);color:var(--text-inverse, #fff);border:none}.session-scheduler.mobile-stepper .mobile-step-next:disabled{opacity:.5;cursor:not-allowed}.session-scheduler.mobile-stepper .mobile-step-next:not(:disabled):hover{background:var(--accent-orange-hover)}.session-scheduler.mobile-stepper .mobile-step-back{align-self:flex-start;background:transparent;border:none;color:var(--accent-orange);padding:6px 8px;margin-left:-8px}.session-scheduler.mobile-stepper .mobile-step-back:hover{text-decoration:underline}@media(max-width:768px){.session-scheduler.mobile-stepper .calendar-container{max-width:100%;padding:.75rem}.session-scheduler.mobile-stepper .calendar-day{min-height:0;font-size:.95rem;padding:0;align-items:center}.session-scheduler.mobile-stepper .calendar-weekday{font-size:.625rem;padding:.2rem 0}.session-scheduler.mobile-stepper .blocked-reason{display:none}.form-select,.form-input,.form-textarea{font-size:16px}}.pending-approval-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px}.pending-banner-info{display:flex;align-items:center;gap:8px;min-width:0}.pending-banner-icon{color:var(--accent-orange);font-size:16px;flex-shrink:0}.pending-banner-text{color:var(--text-primary);font-size:13px;font-weight:600;line-height:1.3}.pending-banner-cta{flex-shrink:0;background:var(--accent-orange);color:var(--text-inverse, #1f1300);border:none;padding:8px 16px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer}.pending-banner-cta:hover,.pending-banner-cta:focus-visible{background:var(--accent-orange-hover);outline:none}.pending-approval-modal-body{padding:1rem}.pending-approval-empty{margin:0;color:var(--text-secondary);text-align:center;padding:1rem 0}.pending-sessions-list-mobile{display:flex;flex-direction:column;gap:12px}.pending-session-card-mobile{display:flex;flex-direction:column;gap:10px;padding:12px 14px;background:var(--card-background);border:1px solid var(--card-border, var(--border-primary));border-radius:10px}.pending-session-card-mobile-info h4{margin:0 0 2px;font-size:15px;font-weight:600;color:var(--text-primary)}.pending-session-card-mobile-info .pending-session-date{font-size:13px;color:var(--text-secondary);margin:0 0 4px}.pending-session-meta-mobile{margin:0;font-size:12px;color:var(--text-tertiary);line-height:1.4}.pending-session-card-mobile-actions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}.pending-session-card-mobile-actions .btn{width:100%;padding:8px 6px;font-size:12px}.sfp-row-search-mobile{display:none}@media(max-width:768px){.session-search-bar .session-search-input-wrap{display:none}.sfp-row-search-mobile{display:block}.sfp-search-input{width:100%;padding:10px 12px;border-radius:8px;border:1px solid var(--input-border, var(--border-primary));background:var(--input-bg);color:var(--text-primary);font-family:inherit;font-size:16px;box-sizing:border-box}.sfp-search-input:focus{outline:none;border-color:var(--accent-orange);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-orange) 18%,transparent)}}.session-card-actions-mobile{position:relative}.session-card-actions-toggle{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 12px;background:transparent;border:none;border-top:1px solid var(--card-border);color:var(--accent-orange);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer}.session-card-actions-toggle:hover,.session-card-actions-toggle:focus-visible{background:var(--surface-hover);outline:none}.session-card-actions-backdrop{position:fixed;inset:0;background:transparent;z-index:9}.session-card-actions-menu{position:absolute;bottom:calc(100% + 4px);right:12px;min-width:180px;background:var(--card-background);border:1px solid var(--card-border, var(--border-primary));border-radius:10px;box-shadow:var(--shadow-lg, 0 10px 25px rgba(0, 0, 0, .25));z-index:10;overflow:hidden;display:flex;flex-direction:column}.session-card-actions-menu-item{padding:12px 14px;background:transparent;border:none;border-bottom:1px solid var(--card-border, var(--border-primary));color:var(--text-primary);font-family:inherit;font-size:14px;text-align:left;cursor:pointer}.session-card-actions-menu-item:last-child{border-bottom:none}.session-card-actions-menu-item:hover,.session-card-actions-menu-item:focus-visible{background:var(--surface-hover);outline:none}.session-list--agenda,.session-list--agenda *,.session-list--agenda *:before,.session-list--agenda *:after{box-sizing:border-box}.session-list--agenda{position:relative;display:flex;flex-direction:column;gap:18px;padding-bottom:24px;width:100%;max-width:100%;min-width:0}.agenda-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:6px 4px 18px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.agenda-header-titles h1{font-size:26px;font-weight:700;margin:0;color:var(--text-primary, #1f2937)}.agenda-header-titles{min-width:0;max-width:100%}.agenda-header-titles p{margin:4px 0 0;font-size:13px;color:var(--text-secondary, #6b7280)}.agenda-header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.agenda-header--mobile{padding:4px 0 14px}.agenda-header--mobile .agenda-header-titles h1{font-size:22px}.agenda-header--mobile .agenda-header-titles p{font-size:11.5px;margin-top:2px}.agenda-search{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;border:1px solid var(--border-primary, #e5e7eb);background:var(--card-background, #fff);color:var(--text-secondary, #6b7280);min-width:240px}.agenda-search input{border:none;outline:none;background:transparent;color:var(--text-primary, #1f2937);font-size:13px;flex:1;min-width:0}.agenda-search input::placeholder{color:var(--text-tertiary, #9ca3af)}.agenda-icon-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;border:1px solid var(--border-primary, #e5e7eb);background:var(--card-background, #fff);color:var(--text-primary, #1f2937);font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:border-color .2s ease,color .2s ease}.agenda-icon-btn:hover,.agenda-icon-btn--active{border-color:var(--accent-orange, #f4a261);color:var(--accent-orange, #f4a261)}.agenda-icon-btn--with-label{padding:8px 14px}.agenda-header--mobile .agenda-icon-btn:not(.agenda-icon-btn--with-label),.session-list--mobile .agenda-icon-btn:not(.agenda-icon-btn--with-label){width:36px;height:36px;padding:0;justify-content:center}.agenda-filter-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--accent-orange, #f4a261);color:#fff;font-size:11px;font-weight:600}.agenda-primary-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:999px;border:1px solid transparent;background:var(--accent-orange, #f4a261);color:#fff;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:background .2s ease}.agenda-primary-btn:hover{background:var(--accent-orange-hover, #e79552)}.agenda-primary-btn--sm{padding:6px 12px;font-size:12.5px}.agenda-link-btn{background:none;border:none;color:var(--text-secondary, #6b7280);font-family:inherit;font-size:13px;font-weight:500;cursor:pointer;padding:6px 10px;border-radius:8px}.agenda-link-btn:hover{color:var(--accent-orange, #f4a261)}.agenda-filter-panel{background:var(--card-background, #fff);border:1px solid var(--border-primary, #e5e7eb);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:14px;box-shadow:0 1px 3px #0000000d}.agenda-filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.agenda-filter-field{display:flex;flex-direction:column;gap:6px;min-width:0}.agenda-filter-field label{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--text-tertiary, #9ca3af)}.agenda-filter-field--full{grid-column:1 / -1}.agenda-filter-field--range{grid-column:span 2;min-width:0}.agenda-filter-range{display:flex;align-items:center;gap:6px}.agenda-filter-range input,.agenda-filter-field--full input,.agenda-filter-select{padding:8px 12px;border-radius:8px;border:1px solid var(--border-primary, #e5e7eb);background:var(--input-bg, #fff);color:var(--text-primary, #1f2937);font-family:inherit;font-size:13px;width:100%;min-width:0}.agenda-filter-range span{font-size:12px;color:var(--text-tertiary, #9ca3af)}.agenda-filter-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding-top:6px;border-top:1px solid var(--border-primary, #e5e7eb)}.agenda-filter-actions{display:flex;align-items:center;gap:6px;margin-left:auto}.agenda-toggle-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid var(--border-primary, #e5e7eb);background:var(--card-background, #fff);color:var(--text-secondary, #6b7280);font-family:inherit;font-size:12.5px;font-weight:500;cursor:pointer}.agenda-toggle-btn--active{border-color:var(--accent-orange, #f4a261);color:var(--accent-orange, #f4a261);background:var(--chip-orange-bg, #fff1e6)}.agenda-needs-action{background:var(--warm-tint-bg, rgba(180, 83, 9, .08));border:1px solid var(--accent-orange, #f4a261);border-radius:14px;padding:14px 18px;display:flex;flex-direction:column;gap:0}.agenda-needs-action-header{display:flex;align-items:center;gap:10px;margin-bottom:12px;color:var(--accent-orange, #f4a261)}.agenda-needs-action-title{font-weight:700;font-size:13px}.agenda-needs-action-summary{font-size:12px;color:var(--text-secondary, #6b7280)}.agenda-needs-action-list{display:flex;flex-direction:column}.agenda-approval-row{display:grid;grid-template-columns:160px 1fr auto auto;align-items:center;gap:16px;padding:12px 0;border-top:1px solid var(--accent-orange, #f4a261)}.agenda-approval-row:first-child{border-top:none}.agenda-approval-when-label{font-weight:600;font-size:12px;color:var(--text-primary, #1f2937)}.agenda-approval-when-time{font-size:11px;color:var(--text-secondary, #6b7280);font-family:ui-monospace,SF Mono,Menlo,monospace}.agenda-approval-client{display:flex;align-items:center;gap:10px;min-width:0}.agenda-approval-client-name{font-weight:600;font-size:13.5px;color:var(--text-primary, #1f2937)}.agenda-approval-client-pet{font-size:11.5px;color:var(--text-secondary, #6b7280);display:inline-flex;align-items:center;gap:4px}.agenda-approval-tags{display:flex;gap:6px;flex-wrap:wrap}.agenda-chip{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;background:var(--surface-secondary, #f9fafb);color:var(--text-secondary, #6b7280);font-size:11px;font-weight:500;border:1px solid var(--border-primary, #e5e7eb)}.agenda-approval-actions{display:flex;gap:6px}.agenda-approval-btn{display:inline-flex;align-items:center;gap:4px;padding:6px 10px;border-radius:999px;border:1px solid var(--border-primary, #e5e7eb);background:var(--card-background, #fff);color:var(--text-primary, #1f2937);font-family:inherit;font-size:12px;font-weight:600;cursor:pointer}.agenda-approval-btn:hover{border-color:var(--accent-orange, #f4a261)}.agenda-approval-btn--approve{color:var(--success-color, #10b981);border-color:var(--success-color, #10b981)}.agenda-approval-btn--approve:hover{background:var(--success-bg, #d1fae5)}.agenda-approval-btn--decline{color:var(--error-color, #ef4444);border-color:var(--error-color, #ef4444)}.agenda-approval-btn--decline:hover{background:var(--error-bg, #fee2e2)}.agenda-needs-action-mobile-list{display:flex;flex-direction:column;gap:10px}.agenda-approval-card-mobile{background:var(--card-background, #fff);border:1px solid var(--border-primary, #e5e7eb);border-radius:12px;padding:12px 14px}.agenda-approval-mobile-head{display:flex;align-items:center;gap:10px}.agenda-approval-mobile-info{flex:1;min-width:0}.agenda-approval-mobile-name{font-weight:600;font-size:13.5px;color:var(--text-primary, #1f2937);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agenda-approval-mobile-meta{font-size:11.5px;color:var(--text-secondary, #6b7280);display:inline-flex;align-items:center;gap:4px}.agenda-approval-mobile-when{font-size:10.5px;color:var(--text-tertiary, #9ca3af);font-family:ui-monospace,SF Mono,Menlo,monospace;text-transform:uppercase;white-space:nowrap}.agenda-approval-mobile-actions{display:flex;gap:6px;margin-top:10px}.agenda-approval-mobile-actions .agenda-approval-btn{flex:1;justify-content:center}.agenda-approval-mobile-actions .agenda-approval-btn--decline{flex:0 0 auto;width:36px;padding:6px 0}.agenda-needs-action-mobile-more{margin-top:8px;display:inline-flex;align-items:center;justify-content:center;gap:4px;background:none;border:none;color:var(--accent-orange, #f4a261);font-family:inherit;font-size:12.5px;font-weight:600;cursor:pointer}.agenda-pending-notes-row{margin-top:12px;display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;border-radius:12px;background:var(--card-background, #fff);border:1px solid var(--border-primary, #e5e7eb);color:var(--text-primary, #1f2937);font-family:inherit;font-size:13px;cursor:pointer;text-align:left}.agenda-pending-notes-row:hover{border-color:var(--accent-orange, #f4a261)}.agenda-pending-notes-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;background:var(--chip-orange-bg, #fff1e6);color:var(--accent-orange, #f4a261);flex:0 0 auto}.agenda-pending-notes-text{flex:1;font-size:12.5px;color:var(--text-secondary, #6b7280)}.agenda-pending-notes-text strong{color:var(--text-primary, #1f2937)}.agenda-pending-notes-row--expanded{border-color:var(--accent-orange, #f4a261)}.agenda-pending-notes-chev{transition:transform .2s ease}.agenda-pending-notes-chev--open{transform:rotate(90deg);color:var(--accent-orange, #f4a261)}.agenda-pending-notes-list{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.agenda-pending-notes-item{display:grid;grid-template-columns:140px minmax(0,1fr) auto;align-items:center;gap:14px;width:100%;padding:10px 14px;border-radius:10px;border:1px solid var(--border-primary, #e5e7eb);background:var(--card-background, #fff);color:var(--text-primary, #1f2937);font-family:inherit;font-size:13px;text-align:left;cursor:pointer;transition:border-color .2s ease,background .2s ease}.agenda-pending-notes-item:hover,.agenda-pending-notes-item:focus-visible{border-color:var(--accent-orange, #f4a261);background:var(--chip-orange-bg, #fff1e6);outline:none}.agenda-pending-notes-item-when{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:11.5px;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.02em;white-space:nowrap}.agenda-pending-notes-item-body{display:flex;flex-direction:column;gap:2px;min-width:0}.agenda-pending-notes-item-name{font-weight:600;color:var(--text-primary, #1f2937);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agenda-pending-notes-item-meta{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;color:var(--text-secondary, #6b7280)}@media(max-width:600px){.agenda-pending-notes-item{grid-template-columns:minmax(0,1fr) auto;row-gap:4px}.agenda-pending-notes-item-when{grid-column:1 / -1;font-size:11px}}.agenda-list{display:flex;flex-direction:column;gap:22px;position:relative}.agenda-day{display:flex;flex-direction:column;gap:10px}.agenda-day-header{display:flex;align-items:baseline;gap:12px;padding:4px 4px 8px;position:sticky;top:0;z-index:1;background:linear-gradient(var(--body-background, #f5f0e8) 75%,transparent)}.agenda-day-label{font-size:17px;font-weight:700;color:var(--text-primary, #1f2937)}.agenda-day-date{font-size:12px;color:var(--text-tertiary, #9ca3af);font-family:ui-monospace,SF Mono,Menlo,monospace;text-transform:uppercase}.agenda-day-count{font-size:12px;color:var(--text-secondary, #6b7280);margin-left:auto}.agenda-day-rows{display:flex;flex-direction:column;gap:8px}.agenda-row{display:grid;grid-template-columns:80px minmax(0,1.4fr) minmax(0,1fr) auto auto;align-items:center;gap:18px;padding:14px 16px 14px 14px;border-radius:12px;background:var(--card-background, #fff);border:1px solid transparent;border-left:3px solid var(--border-primary, #e5e7eb);box-shadow:0 1px 3px #0000000d;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease}.agenda-row:hover{border-color:var(--accent-orange-hover, #e79552);border-left-color:var(--accent-orange, #f4a261)}.agenda-row:focus-visible{outline:2px solid var(--accent-orange, #f4a261);outline-offset:2px}.agenda-row--scheduled{border-left-color:var(--info-color, #3a8efb)}.agenda-row--pending{border-left-color:var(--accent-orange, #f4a261)}.agenda-row--pending_reschedule{border-left-color:#9d6cff}.agenda-row--pending_notes{border-left-color:var(--accent-orange, #f4a261)}.agenda-row--completed{border-left-color:var(--success-color, #10b981)}.agenda-row--cancelled{border-left-color:var(--text-tertiary, #9ca3af);opacity:.75}.agenda-row--no-show{border-left-color:var(--error-color, #ef4444);opacity:.75}.agenda-row-time{display:flex;flex-direction:column;gap:2px}.agenda-row-time-hh{font-size:14px;font-weight:700;color:var(--text-primary, #1f2937)}.agenda-row-time-meta{font-size:11px;color:var(--text-tertiary, #9ca3af)}.agenda-row-client{display:flex;align-items:center;gap:10px;min-width:0}.agenda-row-client--desktop{gap:12px}.agenda-row-client-details{min-width:0;display:flex;flex-direction:column;gap:4px}.agenda-row-client-name{font-size:13.5px;font-weight:600;color:var(--text-primary, #1f2937);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agenda-row-client-pet{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--text-secondary, #6b7280)}.agenda-row-trainer{display:flex;flex-direction:column;gap:4px;min-width:0}.agenda-row-trainer-line{display:inline-flex;align-items:center;gap:6px;min-width:0}.agenda-row-trainer-name{font-size:12.5px;color:var(--text-secondary, #6b7280);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agenda-row-trainer-location{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;color:var(--text-tertiary, #9ca3af)}.agenda-row-status{display:flex;justify-content:flex-end}.agenda-row-actions{display:flex;gap:6px;position:relative}.agenda-row-action{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid var(--border-primary, #e5e7eb);background:transparent;color:var(--text-secondary, #6b7280);cursor:pointer;transition:color .2s ease,border-color .2s ease,background .2s ease}.agenda-row-action:hover{color:var(--accent-orange, #f4a261);border-color:var(--accent-orange, #f4a261)}.agenda-row-action--primary{background:var(--chip-orange-bg, #fff1e6);color:var(--accent-orange, #f4a261);border-color:transparent}.agenda-row-action--primary:hover{background:var(--accent-orange-btn-hover, rgba(242, 153, 83, .2));border-color:var(--accent-orange, #f4a261)}.agenda-row--mobile{grid-template-columns:60px minmax(0,1fr) auto;gap:12px;padding:12px 14px;border-radius:12px}.agenda-row-time--mobile{text-align:left;padding-right:10px;border-right:1px solid var(--border-primary, #e5e7eb)}.agenda-row-time--mobile .agenda-row-time-hh{font-size:15px;line-height:1}.agenda-row-time--mobile .agenda-row-time-meta{margin-top:4px;font-size:10px;text-transform:uppercase;font-family:ui-monospace,SF Mono,Menlo,monospace}.agenda-row-body{min-width:0;display:flex;flex-direction:column;gap:4px}.agenda-row-meta{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;color:var(--text-secondary, #6b7280)}.agenda-row-meta--mobile{flex-wrap:wrap}.agenda-row-meta-item{display:inline-flex;align-items:center;gap:4px}.agenda-row-meta-dot{display:inline-block;width:3px;height:3px;border-radius:50%;background:var(--text-tertiary, #9ca3af)}.agenda-row-type-mobile{font-size:11px;color:var(--text-tertiary, #9ca3af);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agenda-row-actions-mobile{position:relative}.agenda-row-more{width:36px;height:36px;border-radius:10px;border:none;background:var(--chip-orange-bg, #fff1e6);color:var(--accent-orange, #f4a261);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.agenda-actions-backdrop{position:fixed;inset:0;z-index:40;background:transparent}.agenda-actions-menu{position:absolute;right:0;top:100%;margin-top:6px;min-width:160px;z-index:41;background:var(--card-background, #fff);border:1px solid var(--border-primary, #e5e7eb);border-radius:10px;box-shadow:0 8px 24px #00000026;overflow:hidden}.agenda-actions-menu-item{display:block;width:100%;padding:10px 14px;background:none;border:none;text-align:left;font-family:inherit;font-size:13px;color:var(--text-primary, #1f2937);cursor:pointer}.agenda-actions-menu-item:hover,.agenda-actions-menu-item:focus-visible{background:var(--surface-hover, #fef1e6);outline:none}.agenda-close-dropdown{position:absolute;right:0;top:calc(100% + 4px);z-index:42;min-width:170px;background:var(--card-background, #fff);border:1px solid var(--border-primary, #e5e7eb);border-radius:10px;box-shadow:0 8px 24px #00000026;padding:6px}.agenda-close-dropdown-header{padding:6px 10px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary, #9ca3af)}.agenda-close-dropdown-option{display:inline-flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:none;background:none;border-radius:6px;text-align:left;font-family:inherit;font-size:13px;color:var(--text-primary, #1f2937);cursor:pointer}.agenda-close-dropdown-option:hover{background:var(--surface-hover, #fef1e6)}.agenda-close-dropdown-option.cancel{color:var(--text-secondary, #6b7280);border-top:1px solid var(--border-primary, #e5e7eb);margin-top:4px;border-radius:0}.agenda-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.02em}.agenda-pill-dot{width:5px;height:5px;border-radius:999px;background:currentColor}.agenda-pill--scheduled{background:#3a8efb1f;color:var(--info-color, #3a8efb)}.agenda-pill--pending,.agenda-pill--pending_notes{background:var(--chip-orange-bg, #fff1e6);color:var(--accent-orange, #f4a261)}.agenda-pill--pending_reschedule{background:#9d6cff24;color:#9d6cff}.agenda-pill--completed{background:var(--success-bg, #d1fae5);color:var(--success-color, #10b981)}.agenda-pill--cancelled{background:var(--surface-secondary, #f9fafb);color:var(--text-tertiary, #9ca3af)}.agenda-pill--no-show{background:var(--error-bg, #fee2e2);color:var(--error-color, #ef4444)}.agenda-fab{position:fixed;right:18px;bottom:90px;z-index:45;width:56px;height:56px;border-radius:999px;border:none;background:var(--accent-orange, #f4a261);color:#fff;box-shadow:0 8px 24px #f4a26173;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.agenda-fab:hover{background:var(--accent-orange-hover, #e79552)}.agenda-inline-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:24px;color:var(--text-secondary, #6b7280);font-size:13px}.agenda-empty-results{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:32px 16px;color:var(--text-secondary, #6b7280)}.agenda-empty-results h4{margin:4px 0 0;font-size:15px;color:var(--text-primary, #1f2937)}.agenda-empty-results p{margin:0;font-size:13px}.agenda-load-more{display:flex;align-items:center;justify-content:center;padding:16px 0;min-height:24px}.agenda-load-more-spinner{display:inline-flex;align-items:center;gap:8px;color:var(--text-secondary, #6b7280);font-size:12.5px}.agenda-load-more-end{font-size:11.5px;color:var(--text-tertiary, #9ca3af);text-transform:uppercase;letter-spacing:.04em}.agenda-approval-modal-list{display:flex;flex-direction:column;gap:12px}.agenda-approval-modal-item{display:flex;flex-direction:column;gap:8px;padding:12px;border:1px solid var(--border-primary, #e5e7eb);border-radius:10px;background:var(--surface-secondary, #f9fafb)}.agenda-approval-modal-info h4{margin:0;font-size:14px;font-weight:600;color:var(--text-primary, #1f2937)}.agenda-approval-modal-info p{margin:2px 0 0;font-size:12px;color:var(--text-secondary, #6b7280)}.agenda-approval-modal-meta{font-size:11.5px}.agenda-approval-modal-actions{display:flex;flex-wrap:wrap;gap:6px}@media(max-width:900px){.agenda-row{grid-template-columns:70px minmax(0,1fr) auto;row-gap:6px}.agenda-row-trainer,.agenda-row-status{display:none}.agenda-row-actions{grid-column:3}.agenda-approval-row{grid-template-columns:1fr;gap:8px}.agenda-approval-actions{flex-wrap:wrap}}@media(max-width:600px){.agenda-header{flex-direction:row;align-items:center;justify-content:space-between;gap:12px}.agenda-header-titles{flex:1;min-width:0}.agenda-header-actions{width:auto;flex-shrink:0;justify-content:flex-end}.agenda-search{display:none}.agenda-needs-action{padding:12px}.agenda-approval-card-mobile,.agenda-pending-notes-row{padding:10px 12px}.agenda-pending-notes-item{padding:10px 12px;gap:10px}.agenda-row--mobile{padding:12px;gap:10px;grid-template-columns:56px minmax(0,1fr) auto}.agenda-row-time--mobile{padding-right:8px}.agenda-day-header{padding:4px 2px 6px;gap:8px}.agenda-day-label{font-size:16px}.agenda-day-count{font-size:11.5px}.agenda-list{gap:18px}.agenda-header-titles p{font-size:11.5px}}.session-scheduler-modal{width:100%;max-width:min(100%,900px)}.session-scheduler-modal .session-scheduler{padding:0;max-width:100%;box-shadow:none;background:transparent;margin:0}.session-scheduler-modal .session-scheduler .form-group{background:transparent;border:none;padding:0;border-radius:0;margin-bottom:0}.session-scheduler-modal .scheduler-header{display:none}.session-scheduler-modal .session-scheduler .form-row{display:grid;gap:12px}.session-scheduler-modal .session-scheduler .form-row.form-row-3{grid-template-columns:repeat(3,1fr)}.session-scheduler-modal .session-scheduler .form-row.form-row-2{grid-template-columns:repeat(2,1fr)}.session-scheduler-modal input[type=date]:invalid,.session-scheduler-modal input[type=time]:invalid{border-color:var(--input-border, #d1d5db)}.session-scheduler-modal input[type=date]:invalid:focus,.session-scheduler-modal input[type=time]:invalid:focus{border-color:var(--input-border, #d1d5db);box-shadow:0 0 0 2px #fe6b3426}@media(max-width:600px){.session-scheduler-modal .session-scheduler .form-row.form-row-3,.session-scheduler-modal .session-scheduler .form-row.form-row-2{grid-template-columns:1fr}}.setup-checklist{background:var(--warm-tint-bg, var(--card-background));border:1px solid var(--warm-tint-border, var(--card-border));border-radius:12px;padding:1.25rem 1.5rem;margin-bottom:1.5rem;position:relative}.setup-checklist-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.setup-checklist-title{display:flex;align-items:center;gap:.5rem}.setup-checklist-title h3{margin:0;font-size:1rem;font-weight:600;color:var(--info-text, var(--text-primary))}.setup-checklist-title .setup-icon{font-size:1.25rem}.setup-checklist-actions{display:flex;align-items:center;gap:.75rem}.setup-checklist-dismiss{background:none;border:none;color:var(--text-secondary, #64748b);cursor:pointer;font-size:.8rem;padding:.25rem .5rem;border-radius:4px;transition:background .15s}.setup-checklist-dismiss:hover{background:var(--surface-hover)}.setup-progress-bar{width:100%;height:6px;background:var(--surface-secondary);border-radius:3px;margin-bottom:1rem;overflow:hidden}.setup-progress-fill{height:100%;background:var(--accent-orange);border-radius:3px;transition:width .4s ease}.setup-progress-text{font-size:.8rem;color:var(--text-secondary, #64748b);margin-bottom:.75rem}.setup-tasks-grid{display:flex;flex-wrap:wrap;gap:.5rem}.setup-task-chip{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border-radius:20px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .15s;border:1px solid transparent;text-decoration:none}.setup-task-chip.completed{background:var(--success-bg);color:var(--success-text);border-color:var(--success-border)}.setup-task-chip.completed .task-check{color:var(--success-color)}.setup-task-chip.pending{background:var(--card-background);color:var(--text-primary);border-color:var(--border-primary)}.setup-task-chip.pending:hover{border-color:var(--accent-orange-hover);background:var(--surface-hover)}.setup-task-chip .task-check{font-size:.85rem;flex-shrink:0}.setup-checklist.collapsed .setup-tasks-grid,.setup-checklist.collapsed .setup-progress-bar,.setup-checklist.collapsed .setup-progress-text{display:none}.setup-toggle-btn{background:none;border:none;color:var(--accent-orange);cursor:pointer;font-size:.8rem;font-weight:500;padding:.25rem .5rem;border-radius:4px;transition:background .15s}.setup-toggle-btn:hover{background:var(--surface-hover)}.setup-wizard-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1100;padding:1rem;animation:modal-overlay-fade-in .2s ease-out}.setup-wizard{background:var(--modal-bg, white);border-radius:16px;box-shadow:0 20px 60px #0000004d;width:100%;max-width:1180px;max-height:90vh;display:flex;flex-direction:column;animation:modal-slide-in .2s ease-out}.setup-wizard-header{padding:1.5rem 1.5rem 1rem;border-bottom:1px solid var(--border-color, #e2e8f0)}.setup-wizard-header h2{margin:0 0 .25rem;font-size:1.25rem;font-weight:700;color:var(--text-primary, #1e293b)}.setup-wizard-header p{margin:0;font-size:.875rem;color:var(--text-secondary, #64748b)}.wizard-steps-indicator{display:flex;align-items:flex-start;justify-content:space-between;margin-top:1rem;gap:.2rem}.wizard-step-item{min-width:74px;display:flex;flex-direction:column;align-items:center;gap:.4rem;text-align:center;flex:1 1 0}.wizard-step-number{width:2rem;height:2rem;border-radius:999px;border:2px solid var(--border-color, #cbd5e1);background:var(--modal-bg, white);color:var(--text-secondary, #64748b);font-size:.85rem;font-weight:700;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.wizard-step-label{font-size:.68rem;line-height:1.2;color:var(--text-secondary, #64748b);max-width:100%;word-break:break-word}.wizard-step-item.active .wizard-step-number{border-color:var(--primary-500, #3b82f6);background:var(--primary-500, #3b82f6);color:#fff}.wizard-step-item.active .wizard-step-label{color:var(--text-primary, #1e293b);font-weight:600}.wizard-step-item.completed .wizard-step-number{border-color:var(--success-500, #22c55e);background:var(--success-500, #22c55e);color:#fff}.wizard-step-item.completed .wizard-step-label{color:var(--text-primary, #1e293b)}.wizard-step-connector{display:flex;align-items:center;justify-content:center;gap:.2rem;min-width:1.5rem;padding-top:.65rem;flex:0 0 auto}.wizard-step-line{width:.8rem;height:2px;background:var(--border-color, #cbd5e1);border-radius:999px}.wizard-step-arrow{font-size:.75rem;color:var(--text-secondary, #64748b)}.setup-wizard-body{flex:1;overflow-y:auto;padding:1.5rem}.setup-wizard-body-inner{width:100%;max-width:980px;margin:0 auto}.setup-wizard-footer{padding:1rem 1.5rem;border-top:1px solid var(--border-color, #e2e8f0);display:flex;align-items:center;justify-content:space-between}.wizard-footer-left{display:flex;align-items:center;gap:.5rem}.wizard-footer-right{display:flex;align-items:center;gap:.75rem}.wizard-skip-btn{background:none;border:none;color:var(--text-secondary, #64748b);cursor:pointer;font-size:.875rem;padding:.5rem 1rem;border-radius:6px;transition:background .15s}.wizard-skip-btn:hover{background:#0000000d}.wizard-step-content{min-height:200px}.wizard-step-content h3{margin:0 0 .5rem;font-size:1.1rem;font-weight:600;color:var(--text-primary, #1e293b)}.wizard-step-content>p{margin:0 0 1.25rem;font-size:.875rem;color:var(--text-secondary, #64748b);line-height:1.5}.wizard-welcome{text-align:center;padding:1rem 0}.wizard-welcome .welcome-icon{font-size:3rem;margin-bottom:1rem}.wizard-welcome h3{font-size:1.5rem;margin-bottom:.75rem}.wizard-welcome p{max-width:480px;margin:0 auto 1.5rem;line-height:1.6}.wizard-task-preview{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem;text-align:left;max-width:500px;margin:0 auto}.wizard-task-preview-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--bg-secondary, #f8fafc);border-radius:8px;font-size:.8rem;color:var(--text-primary, #1e293b)}.wizard-task-preview-item .preview-icon{font-size:1rem;flex-shrink:0}.wizard-completion{text-align:center;padding:1.5rem 0}.wizard-completion .completion-icon{font-size:3.5rem;margin-bottom:1rem}.wizard-completion h3{font-size:1.5rem;margin-bottom:.75rem;color:var(--success-color)}.wizard-completion p{max-width:480px;margin:0 auto 1rem;line-height:1.6}.wizard-completion-stats{display:flex;justify-content:center;gap:2rem;margin-top:1.5rem}.wizard-completion-steps{max-width:420px;margin:1.5rem auto 0;text-align:left;display:grid;gap:.75rem}.wizard-completion-step{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border:1px solid var(--border-color, #e2e8f0);border-radius:10px;background:var(--surface-hover);color:var(--text-primary, #1e293b)}.wizard-completion-step.completed{background:var(--chip-orange-bg);border-color:var(--chip-orange-border)}.wizard-completion-step-icon{width:1.25rem;flex-shrink:0;text-align:center;font-weight:700;color:var(--primary-600, #2563eb)}.wizard-completion-step.completed .wizard-completion-step-icon{color:var(--success-700, #15803d)}.wizard-completion-step-label{line-height:1.4}.wizard-completion-step.completed .wizard-completion-step-label{text-decoration:line-through;color:var(--text-secondary, #64748b)}.completion-stat{text-align:center}.completion-stat-value{font-size:1.5rem;font-weight:700;color:var(--accent-orange)}.completion-stat-label{font-size:.75rem;color:var(--text-secondary, #64748b);margin-top:.25rem}.wizard-embedded-component .modal-overlay{position:static;background:none;padding:0;animation:none;z-index:auto}.wizard-embedded-component .modal-overlay>.modal,.wizard-embedded-component .modal-overlay>.modal-content{box-shadow:none;border-radius:0;max-height:none;animation:none}.wizard-embedded-component .client-invite-modal-overlay{position:static;background:none;padding:0;animation:none;z-index:auto}.wizard-embedded-component .card{box-shadow:none;border:none}.wizard-embedded-component .card-header{padding-left:0;padding-right:0;padding-top:0}.wizard-embedded-component .card-content{padding-left:0;padding-right:0;padding-bottom:0}.wizard-embedded-component .billing-settings{max-width:100%;overflow:hidden}.wizard-embedded-component .billing-settings-header{display:none}.wizard-embedded-component .settings-four-column-grid{grid-template-columns:1fr 1fr}.wizard-embedded-component .branding-settings .card{background:transparent;border:none;box-shadow:none;padding-bottom:0;margin-top:0}.wizard-embedded-component .branding-settings .card-header h3{display:block}.wizard-embedded-component .card-header{flex-direction:column;align-items:flex-start}.wizard-quick-form{display:flex;flex-direction:column;gap:1rem;background:var(--card-background);padding:1.5rem;border-radius:16px}.wizard-add-animal{background:var(--card-background);border-radius:16px;padding:1.5rem}.wizard-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.wizard-form-group{display:flex;flex-direction:column;gap:.375rem}.wizard-form-group label{font-size:.8rem;font-weight:600;color:var(--text-primary, #1e293b)}.wizard-form-group input,.wizard-form-group select{padding:.5rem .75rem;border:1px solid var(--border-color, #e2e8f0);border-radius:6px;font-size:.875rem;transition:border-color .15s;background:var(--input-bg)}.wizard-form-group input:focus,.wizard-form-group select:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.wizard-form-hint{font-size:.75rem;color:var(--text-secondary, #64748b);margin-top:.25rem}.wizard-info-box{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;background:var(--card-bg);border:1px solid var(--accent-orange);border-radius:8px;font-size:.8rem;color:var(--text-primary);line-height:1.5;margin-top:1rem}.wizard-info-box .info-icon{font-size:1rem;flex-shrink:0;margin-top:.1rem}@media(max-width:640px){.setup-tasks-grid{flex-direction:column}.wizard-step-item{min-width:68px}.wizard-step-label{font-size:.64rem}.wizard-step-connector{min-width:1.2rem}.wizard-step-line{width:.55rem}.wizard-form-row,.wizard-task-preview{grid-template-columns:1fr}.wizard-completion-stats{flex-direction:column;gap:1rem}}.notification-item{display:flex;align-items:flex-start;gap:12px;padding:16px 20px;border-bottom:1px solid var(--card-border);cursor:pointer;transition:background-color .2s ease;position:relative}.notification-item:hover{background-color:var(--surface-hover)}.notification-item:last-child{border-bottom:none}.notification-item.unread{background-color:var(--primary-light)}.notification-item.unread:hover{background-color:var(--surface-hover)}.notification-item-icon{flex-shrink:0;margin-top:2px}.notification-icon{display:block}.notification-icon.success{color:var(--success-color, #10b981)}.notification-icon.info{color:var(--primary-color)}.notification-icon.warning{color:var(--warning-color, #f59e0b)}.notification-icon.error{color:var(--error-color, #ef4444)}.notification-item-content{flex:1;min-width:0}.notification-item-message{margin:0 0 4px;font-size:14px;line-height:1.5;color:var(--text-primary);word-wrap:break-word}.notification-item.unread .notification-item-message{font-weight:500}.notification-item-time{font-size:12px;color:var(--text-tertiary)}.notification-item-unread-dot{position:absolute;top:20px;right:20px;width:8px;height:8px;background-color:var(--primary-color);border-radius:50%;flex-shrink:0}.notification-item:focus{outline:2px solid var(--primary-color);outline-offset:-2px}.notification-item:focus:not(:focus-visible){outline:none}.notification-list-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:400px;max-height:600px;background:var(--card-background);border:1px solid var(--card-border);border-radius:12px;box-shadow:0 10px 40px #00000026;display:flex;flex-direction:column;z-index:1000;overflow:hidden}.notification-list-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--card-border)}.notification-list-header h3{margin:0;font-size:18px;font-weight:600;color:var(--text-primary)}.mark-all-read-button{display:flex;align-items:center;gap:6px;background:none;border:none;color:var(--primary-color);font-size:14px;font-weight:500;cursor:pointer;padding:6px 12px;border-radius:6px;transition:all .2s ease}.mark-all-read-button:hover:not(:disabled){background-color:var(--primary-light)}.mark-all-read-button:disabled{opacity:.5;cursor:not-allowed}.notification-list-content{flex:1;overflow-y:auto;min-height:350px;max-height:500px;display:flex;flex-direction:column}.notification-list-loading,.notification-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;padding:20px 20px 80px;text-align:center;color:var(--text-tertiary)}.notification-list-loading p,.notification-list-empty p{margin:12px 0 4px;font-size:16px;font-weight:500;color:var(--text-secondary)}.notification-list-empty span{font-size:14px;color:var(--text-tertiary)}.load-more-button{width:100%;padding:12px;background:none;border:none;border-top:1px solid var(--card-border);color:var(--primary-color);font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:background-color .2s ease}.load-more-button:hover:not(:disabled){background-color:var(--surface-hover)}.load-more-button:disabled{opacity:.5;cursor:not-allowed}.notification-list-dropdown .icon-spin{animation:spin 1s linear infinite}.notification-list-content::-webkit-scrollbar{width:6px}.notification-list-content::-webkit-scrollbar-track{background:var(--bg-secondary)}.notification-list-content::-webkit-scrollbar-thumb{background:var(--text-tertiary);border-radius:3px}.notification-list-content::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.user-menu{position:absolute;top:100%;right:0;margin-top:8px;width:256px;background-color:var(--card-background);border:1px solid var(--border-primary);border-radius:8px;box-shadow:var(--shadow-lg);z-index:50}.user-menu-header{padding:16px}.user-menu-info{display:flex;flex-direction:column}.user-menu-name{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:2px}.user-menu-email{font-size:12px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.user-menu-divider{height:1px;background-color:var(--border-primary);margin:0 8px}.user-menu-items{padding:8px}.user-menu-item{display:flex;align-items:center;gap:12px;width:100%;padding:8px 12px;border:none;background:none;text-align:left;font-size:14px;color:var(--text-primary);border-radius:6px;cursor:pointer;transition:background-color .2s}.user-menu-item:hover{background-color:var(--hover-bg)}.user-menu-item-danger{color:var(--error-color)}.user-menu-item-danger:hover{background-color:var(--error-bg)}.user-menu-icon{flex-shrink:0;color:var(--text-secondary)}.user-menu-item-danger .user-menu-icon{color:var(--error-color)}.mtd-header{display:flex;align-items:center;gap:10px;padding:calc(12px + env(safe-area-inset-top,0px)) 14px 10px;border-bottom:1px solid var(--card-border);background:var(--body-background);position:sticky;top:0;z-index:5}.mtd-header__icon-btn{width:34px;height:34px;border-radius:9px;border:1px solid var(--card-border);background:var(--card-background);color:var(--text-primary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;position:relative;font-family:inherit;padding:0;transition:border-color .2s ease,background .2s ease}.mtd-header__icon-btn:hover{border-color:var(--accent-orange)}.mtd-header__bell{color:var(--text-secondary)}.mtd-header__bell-dot{position:absolute;top:6px;right:7px;width:6px;height:6px;border-radius:999px;background:var(--accent-orange)}.mtd-header__title{flex:1;min-width:0}.mtd-header__greeting{font-size:15px;font-weight:700;color:var(--text-primary);line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mtd-header__subtitle{font-size:11px;color:var(--text-secondary);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mtd-header__user-section{position:relative;flex:0 0 auto}.mtd-header__user-section .user-menu{right:0;margin-top:6px;z-index:60}.mtd-header__avatar{width:32px;height:32px;border-radius:999px;border:none;background:var(--accent-orange);color:#0e1525;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:11px;cursor:pointer;font-family:inherit}.mtd-tabbar{display:flex;border-top:1px solid var(--card-border);background:var(--card-background);padding:6px 4px calc(8px + env(safe-area-inset-bottom,0px));flex:0 0 auto}.mtd-tabbar__btn{flex:1;background:transparent;border:none;padding:6px 4px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:3px;color:var(--text-tertiary);font-family:inherit;transition:color .15s ease}.mtd-tabbar__btn:hover{color:var(--text-secondary)}.mtd-tabbar__btn--active{color:var(--accent-orange)}.mtd-tabbar__btn--active:hover{color:var(--accent-orange-hover)}.mtd-tabbar__label{font-size:10px;font-weight:500}.mtd-tabbar__btn--active .mtd-tabbar__label{font-weight:700}.mtd-tabbar__icon-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center}.mtd-tabbar__badge{position:absolute;top:-6px;right:-10px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:var(--accent-orange, #FE6B34);color:var(--text-inverse, #ffffff);font-size:9px;font-weight:700;line-height:1;display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--card-background)}.mtd-shell{--mtd-font-mono: ui-monospace, "SF Mono", "JetBrains Mono", Menlo, monospace;--mtd-radius-card: 14px;--mtd-radius-pill: 999px;--mtd-radius-sm: 9px;--mtd-radius-md: 11px;--mtd-section-gap: 18px;--mtd-page-padding-x: 18px;--mtd-fab-bottom: calc(78px + env(safe-area-inset-bottom, 0px)) ;--mtd-success-tint-strong: color-mix(in srgb, var(--success-color) 22%, transparent);--mtd-success-tint-soft: color-mix(in srgb, var(--success-color) 18%, transparent);--mtd-success-tint-faint: color-mix(in srgb, var(--success-color) 6%, transparent);--mtd-success-tint-fade: color-mix(in srgb, var(--success-color) 4%, transparent);--mtd-accent-tint-strong: color-mix(in srgb, var(--accent-orange) 22%, transparent);--mtd-accent-tint-soft: color-mix(in srgb, var(--accent-orange) 18%, transparent);--mtd-accent-tint-fade: color-mix(in srgb, var(--accent-orange) 4%, transparent);--mtd-error-tint-soft: color-mix(in srgb, var(--error-color) 16%, transparent);--mtd-error-tint-border: color-mix(in srgb, var(--error-color) 40%, transparent);position:fixed;inset:0;display:flex;flex-direction:column;background:var(--body-background);color:var(--text-primary);z-index:50;overflow:hidden}.mtd-shell__main{flex:1 1 auto;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column}.mtd-header-wrap{position:relative;z-index:65}.mtd-notifications-dropdown{position:absolute;top:100%;left:8px;right:8px;margin-top:4px;z-index:70}.mtd-notifications-dropdown .notification-list-dropdown{position:static;top:auto;right:auto;width:100%;max-width:100%;max-height:calc(100dvh - 90px);margin:0;box-shadow:0 12px 32px #00000052}body.mtd-shell-active{overflow:hidden}body.mtd-shell-active .header,body.mtd-shell-active .sidebar,body.mtd-shell-active .layout-sidebar-backdrop,body.mtd-shell-active .consent-banner,body.mtd-shell-active .announcement-banner,body.mtd-shell-active .messenger-widget-button{display:none}body.mtd-shell-active .messenger-widget{bottom:var(--mtd-fab-bottom, calc(78px + env(safe-area-inset-bottom, 0px)) )}body.mtd-shell-active.sidebar-open-lock .sidebar{display:block;top:0;height:100dvh;z-index:60}body.mtd-shell-active.sidebar-open-lock .layout-sidebar-backdrop{display:block;inset:0;z-index:55}body.mtd-shell-active .layout-body{padding:0}body.mtd-shell-active .layout-main{padding:0;height:100vh;margin:0}body.mtd-shell-active .layout-content{padding:0;height:100vh;overflow:hidden}.mtd-pet-color-1{background:#e85a82}.mtd-pet-color-2{background:#7c5cff}.mtd-pet-color-3{background:#22b07a}.mtd-pet-color-4{background:var(--accent-orange)}.mtd-pet-color-5{background:#3a8efb}.mtd-pet-color-6{background:#f4a261}.mtd-slide-panel{position:fixed;inset:0;z-index:100;display:flex;flex-direction:column;background:var(--body-background);color:var(--text-primary);transform:translate(100%);transition:transform .28s cubic-bezier(.4,0,.2,1);pointer-events:none;visibility:hidden;overflow:hidden}.mtd-slide-panel--open{transform:translate(0);pointer-events:auto;visibility:visible}.mtd-slide-panel__header{display:flex;align-items:center;gap:10px;padding:calc(12px + env(safe-area-inset-top,0px)) 14px 10px;border-bottom:1px solid var(--card-border);background:var(--card-background);position:sticky;top:0;z-index:1;flex:0 0 auto}.mtd-slide-panel__back{width:36px;height:36px;border-radius:9px;border:1px solid var(--card-border);background:var(--card-background);color:var(--text-primary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-family:inherit;padding:0;flex:0 0 auto;transition:border-color .2s ease,background .2s ease}.mtd-slide-panel__back:hover{border-color:var(--accent-orange)}.mtd-slide-panel__back:active{background:var(--surface-hover, var(--card-background))}.mtd-slide-panel__title{flex:1;min-width:0;font-size:16px;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mtd-slide-panel__body{flex:1 1 auto;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:env(safe-area-inset-bottom,0px)}.mtd-slide-panel__body .amd-detail-panel{position:static;height:auto;max-height:none;margin:0;padding:16px 14px;border:none;background:transparent;box-shadow:none}.mtd-hero{border-radius:var(--mtd-radius-card);padding:14px 14px 12px;position:relative;flex:none;cursor:pointer;border:1px solid var(--card-border);background:var(--card-background);transition:border-color .2s ease}.mtd-hero:hover{border-color:var(--accent-orange-hover)}.mtd-hero--upcoming{background:linear-gradient(160deg,var(--mtd-accent-tint-soft),var(--mtd-accent-tint-fade) 60%,transparent),var(--card-background);border-color:var(--mtd-accent-tint-strong)}.mtd-hero--live{background:linear-gradient(160deg,var(--mtd-success-tint-soft),var(--mtd-success-tint-fade) 60%,transparent),var(--card-background);border-color:var(--mtd-success-tint-strong)}.mtd-hero__eyebrow{display:flex;align-items:center;gap:8px;margin-bottom:10px}.mtd-hero__pill{display:inline-flex;align-items:center;gap:6px;padding:4px 9px;border-radius:var(--mtd-radius-pill);font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:var(--mtd-accent-tint-strong);color:var(--accent-orange);flex:0 0 auto}.mtd-hero--live .mtd-hero__pill{background:var(--mtd-success-tint-strong);color:var(--success-color)}.mtd-hero__pulse-dot{width:6px;height:6px;border-radius:999px;background:var(--success-color);animation:mtd-fld-pulse 1.6s ease-out infinite}@keyframes mtd-fld-pulse{0%{box-shadow:0 0 color-mix(in srgb,var(--success-color) 70%,transparent)}to{box-shadow:0 0 0 8px color-mix(in srgb,var(--success-color) 0%,transparent)}}.mtd-hero__time{font-size:11px;color:var(--text-secondary);font-family:var(--mtd-font-mono);margin-left:auto}.mtd-hero__headline{display:flex;align-items:center;gap:11px}.mtd-hero__avatar{width:46px;height:46px;border-radius:999px;background:var(--accent-orange);color:#0e1525;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:17px;flex:0 0 auto}.mtd-hero--live .mtd-hero__avatar{background:var(--success-color)}.mtd-hero__title-block{flex:1;min-width:0}.mtd-hero__title{font-size:17px;font-weight:700;color:var(--text-primary);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mtd-hero__client{font-weight:500;color:var(--text-secondary);font-size:13.5px}.mtd-hero__subline{font-size:11.5px;color:var(--text-secondary);margin-top:2px;display:flex;align-items:center;gap:6px}.mtd-hero__quick-actions{display:flex;gap:6px;margin-top:12px}.mtd-hero__quick-btn{flex:1;padding:10px 8px;border-radius:var(--mtd-radius-sm);background:color-mix(in srgb,var(--text-primary) 8%,transparent);border:1px solid var(--card-border);color:var(--text-primary);font-size:11.5px;font-weight:600;font-family:inherit;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:border-color .2s ease,background .2s ease}.mtd-hero__quick-btn:hover{border-color:var(--accent-orange)}.mtd-hero__quick-btn--media{flex:2}.mtd-hero__quick-icon{color:var(--accent-orange)}.mtd-hero__primary-actions{display:flex;gap:8px;margin-top:10px}.mtd-hero__late-btn{padding:11px 14px;border-radius:10px;background:var(--mtd-error-tint-soft);border:1px solid var(--mtd-error-tint-border);color:var(--error-color);font-size:12.5px;font-weight:700;font-family:inherit;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;flex:0 0 auto}.mtd-hero__cta{flex:1;padding:11px 14px;border-radius:10px;background:var(--accent-orange);color:#0e1525;border:none;font-size:13px;font-weight:700;font-family:inherit;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:background .2s ease}.mtd-hero__cta:hover{background:var(--accent-orange-hover)}.mtd-hero__cta--end{background:var(--success-color)}.mtd-hero__cta--end:hover{background:color-mix(in srgb,var(--success-color) 88%,black)}.mtd-hero--empty{flex-direction:column;align-items:center;text-align:center;padding:24px 16px 20px;cursor:default;display:flex;gap:6px;background:var(--card-background);border:1px solid var(--card-border)}.mtd-hero--empty:hover{border-color:var(--card-border)}.mtd-hero__empty-icon{width:44px;height:44px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:var(--mtd-accent-tint-soft);color:var(--accent-orange);margin-bottom:4px}.mtd-hero__empty-title{margin:0;font-size:16px;font-weight:700;color:var(--text-primary)}.mtd-hero__empty-subtitle{margin:0 0 12px;font-size:13px;color:var(--text-secondary);max-width:28ch}.mtd-hero--empty .mtd-hero__cta{flex:0 0 auto}.mtd-section-title{margin:0;font-size:11px;font-weight:700;letter-spacing:.06em;color:var(--text-secondary);text-transform:uppercase}.mtd-inbox{display:flex;flex-direction:column;gap:10px}.mtd-inbox__header{display:flex;align-items:baseline;justify-content:space-between;padding:0 2px}.mtd-inbox__list{margin:0;padding:0;list-style:none;background:var(--card-background);border:1px solid var(--card-border);border-radius:12px;overflow:hidden}.mtd-inbox__list li+li .mtd-inbox__row{border-top:1px solid var(--card-border)}.mtd-inbox__row{display:flex;align-items:center;gap:11px;width:100%;padding:12px 14px;background:transparent;border:none;cursor:pointer;text-align:left;font-family:inherit;color:var(--text-primary);transition:background .15s ease}.mtd-inbox__row:hover{background:color-mix(in srgb,var(--accent-orange) 6%,transparent)}.mtd-inbox__icon{width:32px;height:32px;border-radius:9px;background:var(--mtd-accent-tint-soft);color:var(--accent-orange);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.mtd-inbox__text{display:flex;flex-direction:column;flex:1;min-width:0}.mtd-inbox__label{font-size:13px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mtd-inbox__helper{font-size:11px;color:var(--text-secondary);margin-top:1px}.mtd-inbox__count{font-family:var(--mtd-font-mono);font-size:13px;font-weight:700;color:var(--accent-orange);background:var(--mtd-accent-tint-soft);padding:2px 9px;border-radius:var(--mtd-radius-pill);min-width:26px;text-align:center}.mtd-inbox__chevron{color:var(--text-tertiary);flex:0 0 auto}.mtd-inbox--empty .mtd-inbox__empty{margin:0;padding:14px 16px;font-size:13px;color:var(--text-secondary);background:var(--card-background);border:1px solid var(--card-border);border-radius:12px}.mtd-recent{display:flex;flex-direction:column;gap:10px}.mtd-recent__header{display:flex;align-items:baseline;justify-content:space-between;padding:0 2px}.mtd-recent__all{background:transparent;border:none;color:var(--text-tertiary);font-size:11px;font-family:inherit;cursor:pointer;display:inline-flex;align-items:center;gap:4px;padding:0}.mtd-recent__all:hover{color:var(--accent-orange)}.mtd-recent__scroller{display:flex;gap:10px;overflow-x:auto;scrollbar-width:none;margin:0 calc(-1 * var(--mtd-page-padding-x));padding:0 var(--mtd-page-padding-x) 4px}.mtd-recent__scroller::-webkit-scrollbar{display:none}.mtd-recent__card{flex:0 0 auto;width:96px;padding:12px 10px;border-radius:var(--mtd-radius-md);background:var(--card-background);border:1px solid var(--card-border);cursor:pointer;font-family:inherit;display:flex;flex-direction:column;align-items:center;gap:6px;position:relative;transition:border-color .2s ease}.mtd-recent__card:hover{border-color:var(--accent-orange-hover)}.mtd-recent__card--active{border-color:var(--accent-orange)}.mtd-recent__active-dot{position:absolute;top:6px;right:6px;width:6px;height:6px;border-radius:999px;background:var(--success-color)}.mtd-recent__avatar{width:42px;height:42px;border-radius:999px;color:#0e1525;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:15px}.mtd-recent__name{font-size:12px;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.mtd-recent__last{font-size:9.5px;color:var(--text-tertiary);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.mtd-schedule{display:flex;flex-direction:column;gap:10px}.mtd-schedule__header{display:flex;align-items:baseline;justify-content:space-between;padding:0 2px}.mtd-schedule__count{font-size:11px;color:var(--text-tertiary)}.mtd-schedule__list{margin:0;padding:0;list-style:none;background:var(--card-background);border:1px solid var(--card-border);border-radius:12px;overflow:hidden}.mtd-schedule__list li+li .mtd-schedule__row{border-top:1px solid var(--card-border)}.mtd-schedule__row{display:flex;align-items:center;gap:11px;width:100%;padding:11px 12px;background:transparent;border:none;cursor:pointer;font-family:inherit;text-align:left;color:var(--text-primary);transition:background .15s ease}.mtd-schedule__row:hover{background:color-mix(in srgb,var(--accent-orange) 6%,transparent)}.mtd-schedule__row--live{background:var(--mtd-success-tint-faint)}.mtd-schedule__time{width:64px;flex:0 0 auto;font-size:12.5px;font-weight:700;font-family:var(--mtd-font-mono);color:var(--text-primary)}.mtd-schedule__row--live .mtd-schedule__time{color:var(--success-color)}.mtd-schedule__rail{width:3px;height:30px;border-radius:2px;flex:0 0 auto;background:var(--accent-orange)}.mtd-schedule__rail--live{background:var(--success-color)}.mtd-schedule__rail--done{background:var(--success-color);opacity:.5}.mtd-schedule__text{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.mtd-schedule__client{font-size:12.5px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mtd-schedule__row--done .mtd-schedule__client{text-decoration:line-through;opacity:.6}.mtd-schedule__sub{font-size:10.5px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mtd-schedule__done-badge{width:18px;height:18px;border-radius:999px;background:var(--success-color);color:#fff;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.mtd-schedule__live-badge{font-size:9.5px;font-weight:700;letter-spacing:.06em;color:var(--success-color);text-transform:uppercase}.mtd-week{display:flex;flex-direction:column;gap:10px}.mtd-week__header{padding:0 2px}.mtd-week__row{display:flex;align-items:stretch;gap:0;background:var(--card-background);border:1px solid var(--card-border);border-radius:12px;padding:14px 16px}.mtd-week__stat{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:2px}.mtd-week__value{font-size:22px;font-weight:700;color:var(--text-primary);font-family:var(--mtd-font-mono);line-height:1.1}.mtd-week__label{font-size:11px;color:var(--text-secondary);letter-spacing:.04em;text-transform:uppercase}.mtd-week__divider{width:1px;background:var(--card-border);margin:4px 12px}.mtd-fab{position:absolute;right:14px;bottom:var(--mtd-fab-bottom);padding:12px 16px 12px 14px;border-radius:var(--mtd-radius-pill);background:var(--accent-orange);color:#0e1525;border:none;cursor:pointer;font-family:inherit;font-size:13px;font-weight:700;display:inline-flex;align-items:center;gap:7px;box-shadow:0 12px 28px color-mix(in srgb,var(--accent-orange) 45%,transparent),0 4px 10px #0000004d;z-index:20;transition:background .2s ease,transform .1s ease}.mtd-fab:hover{background:var(--accent-orange-hover)}.mtd-fab:active{transform:scale(.97)}.mtd-fab__badge{width:22px;height:22px;border-radius:999px;background:#0000002e;color:#0e1525;display:inline-flex;align-items:center;justify-content:center}.mtd-sheet-root{position:fixed;inset:0;z-index:1100;pointer-events:none}.mtd-sheet-root--open{pointer-events:auto}.mtd-sheet-scrim{position:absolute;inset:0;width:100%;height:100%;border:none;padding:0;background:#0000008c;opacity:0;cursor:pointer;transition:opacity .2s ease}.mtd-sheet-root--open .mtd-sheet-scrim{opacity:1}.mtd-sheet{position:absolute;left:0;right:0;bottom:0;max-height:90vh;overflow:auto;background:var(--card-background);color:var(--text-primary);border-top-left-radius:18px;border-top-right-radius:18px;border:1px solid var(--card-border);border-bottom:none;padding:10px 16px calc(18px + env(safe-area-inset-bottom,0px));box-shadow:0 -16px 40px #00000059;transform:translateY(110%);transition:transform .26s cubic-bezier(.4,0,.2,1)}.mtd-sheet-root--open .mtd-sheet{transform:translateY(0)}.mtd-sheet__handle{width:36px;height:4px;border-radius:999px;background:var(--card-border);margin:2px auto 12px}.mtd-sheet__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.mtd-sheet__title{margin:0;font-size:15px;font-weight:700;color:var(--text-primary)}.mtd-sheet__close{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;display:inline-flex;align-items:center;justify-content:center}.mtd-sheet__close:hover{color:var(--text-primary)}.mtd-capture__context{padding:11px 12px;border-radius:10px;background:var(--card-background);border:1px solid var(--card-border);display:flex;align-items:center;gap:10px;margin-bottom:12px}.mtd-capture__pill{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:var(--mtd-radius-pill);background:color-mix(in srgb,var(--text-secondary) 12%,transparent);color:var(--text-secondary);font-size:9.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;flex:0 0 auto}.mtd-capture__pill--live{background:var(--mtd-success-tint-strong);color:var(--success-color)}.mtd-capture__pill-dot{width:5px;height:5px;border-radius:999px;background:var(--success-color)}.mtd-capture__context-text{flex:1;min-width:0}.mtd-capture__context-title{font-size:12.5px;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mtd-capture__context-sub{font-size:10.5px;color:var(--text-secondary);margin-top:1px}.mtd-capture__change{background:transparent;border:none;font-size:11px;color:var(--accent-orange);font-weight:700;cursor:pointer;font-family:inherit}.mtd-capture__picker{list-style:none;margin:0 0 12px;padding:0;background:var(--card-background);border:1px solid var(--card-border);border-radius:10px;overflow:hidden;max-height:35vh;overflow-y:auto}.mtd-capture__picker li+li .mtd-capture__picker-item{border-top:1px solid var(--card-border)}.mtd-capture__picker-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;background:transparent;border:none;text-align:left;cursor:pointer;font-family:inherit;font-size:12.5px;color:var(--text-primary)}.mtd-capture__picker-item:hover{background:color-mix(in srgb,var(--accent-orange) 8%,transparent)}.mtd-capture__picker-item--active{background:var(--mtd-accent-tint-soft);color:var(--accent-orange);font-weight:600}.mtd-capture__picker-time{font-family:var(--mtd-font-mono);font-size:12px;color:var(--text-secondary);width:64px;flex:0 0 auto}.mtd-capture__tags{display:flex;gap:6px;margin-bottom:10px;flex-wrap:wrap}.mtd-capture__chip{padding:5px 11px;border-radius:var(--mtd-radius-pill);border:1px solid var(--card-border);background:transparent;color:var(--text-secondary);font-size:11px;font-weight:700;font-family:inherit;cursor:pointer;text-transform:capitalize;transition:border-color .15s ease,background .15s ease,color .15s ease}.mtd-capture__chip:hover{border-color:var(--accent-orange)}.mtd-capture__chip--active{border-color:var(--accent-orange);background:var(--mtd-accent-tint-soft);color:var(--accent-orange)}.mtd-capture__textarea{width:100%;min-height:96px;resize:vertical;padding:11px 12px;border-radius:10px;background:var(--card-background);border:1px solid var(--card-border);color:var(--text-primary);font-size:13px;font-family:inherit;line-height:1.5;outline:none;box-sizing:border-box}.mtd-capture__textarea:focus{border-color:var(--accent-orange)}.mtd-sheet__footer{display:flex;gap:8px;margin-top:14px}.mtd-sheet__btn{padding:11px 16px;border-radius:10px;font-size:13px;font-weight:700;font-family:inherit;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:background .15s ease,opacity .15s ease}.mtd-sheet__btn:disabled{opacity:.5;cursor:not-allowed}.mtd-sheet__btn--ghost{flex:0 0 auto;background:transparent;border:1px solid var(--card-border);color:var(--text-primary)}.mtd-sheet__btn--ghost:hover:not(:disabled){border-color:var(--accent-orange)}.mtd-sheet__btn--primary{flex:1;background:var(--accent-orange);color:#0e1525;border:none}.mtd-sheet__btn--primary:hover:not(:disabled){background:var(--accent-orange-hover)}.mtd-sheet__btn--danger{flex:1;background:var(--error-color);color:#fff;border:none}.mtd-sheet__btn--danger:hover:not(:disabled){background:color-mix(in srgb,var(--error-color) 88%,black)}.mtd-late__head{display:flex;align-items:center;gap:10px;margin-bottom:14px}.mtd-late__icon{width:34px;height:34px;border-radius:9px;background:var(--mtd-error-tint-soft);color:var(--error-color);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.mtd-late__head-text{flex:1;min-width:0}.mtd-late__title{margin:0;font-size:15px;font-weight:700;color:var(--text-primary)}.mtd-late__sub{margin:2px 0 0;font-size:11.5px;color:var(--text-secondary)}.mtd-late__upnext{padding:11px 12px;border-radius:10px;background:var(--card-background);border:1px solid var(--card-border);margin-bottom:12px}.mtd-late__upnext-label{font-size:11px;color:var(--text-secondary);margin-bottom:4px;text-transform:uppercase;letter-spacing:.04em}.mtd-late__upnext-name{font-size:13px;font-weight:700;color:var(--text-primary)}.mtd-late__upnext-time{font-size:11px;color:var(--text-secondary);margin-top:1px;font-family:var(--mtd-font-mono)}.mtd-late__how-late-label{font-size:11px;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.mtd-late__delays{display:flex;gap:6px;margin-bottom:14px}.mtd-late__delay{flex:1;padding:10px 0;border-radius:var(--mtd-radius-sm);border:1px solid var(--card-border);background:transparent;color:var(--text-primary);font-size:13px;font-weight:700;font-family:inherit;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.mtd-late__delay:hover{border-color:var(--accent-orange)}.mtd-late__delay--active{border-color:var(--accent-orange);background:var(--mtd-accent-tint-soft);color:var(--accent-orange)}.mtd-late__preview{padding:11px 12px;border-radius:10px;background:color-mix(in srgb,var(--text-primary) 4%,transparent);border:1px solid var(--card-border);font-size:12.5px;color:var(--text-primary);line-height:1.5;margin-bottom:14px}.session-media-uploader{width:100%}.media-upload-dropzone{padding:32px;text-align:center;cursor:pointer;transition:all .2s ease;background:var(--input-bg);border:2px dashed var(--text-tertiary);border-radius:10px}.media-upload-dropzone:hover:not(.disabled){background:#f4a26114;border-color:var(--accent-orange-hover)}.media-upload-dropzone.drag-over{background:#f4a2611f;border-color:var(--accent-orange-hover);transform:scale(1.02)}.media-upload-dropzone.disabled{opacity:.5;cursor:not-allowed;background:#1e1730;border-color:var(--card-border)}.media-upload-input{display:none}.media-upload-content{display:flex;flex-direction:column;align-items:center;gap:16px}.media-upload-icon{color:var(--text-secondary, #4a5568)}.media-upload-text{display:flex;flex-direction:column;gap:4px}.media-upload-primary{font-size:16px;font-weight:500;color:var(--text-primary, #2d3748);margin:0}.media-upload-secondary{font-size:14px;color:var(--text-tertiary, #718096);margin:0}.media-upload-limit{font-size:13px;color:#a0aec0;margin:4px 0 0;font-weight:500}.media-upload-progress{margin-top:16px;display:flex;flex-direction:column;gap:8px}.upload-item{display:flex;align-items:center;gap:12px;padding:12px;background-color:var(--input-bg, #fff);border:1px solid var(--border-primary, #e2e8f0);border-radius:6px}.upload-info{flex:1;min-width:0}.upload-name{font-size:14px;font-weight:500;color:var(--text-primary, #2d3748);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.upload-size{font-size:13px;color:var(--text-tertiary, #718096);margin-top:2px}.upload-status{flex-shrink:0;width:100px}.upload-progress-bar{width:100%;height:4px;background-color:var(--border-primary, #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:var(--text-tertiary, #a0aec0);transition:color .2s ease;display:flex;align-items:center;justify-content:center}.upload-remove:hover{color:var(--error-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:var(--input-bg, #f7fafc);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;border:1px solid var(--border-primary, #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:var(--input-bg, #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:var(--text-tertiary, #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:var(--card-background, white);border-radius:8px;padding:24px;max-width:min(100%,400px);width:100%;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.delete-confirmation-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.delete-confirmation-icon{color:var(--error-color, #f56565)}.delete-confirmation-title{font-size:18px;font-weight:600;color:var(--text-primary, #2d3748);margin:0}.delete-confirmation-message{color:var(--text-on-panel, #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 var(--border-primary, #e2e8f0);background-color:var(--input-bg, white);color:var(--text-on-panel, #2d3748);cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease}.delete-confirmation-btn:hover{background-color:var(--surface-hover, #f7fafc)}.delete-confirmation-btn.confirm{background-color:var(--error-color, #f56565);color:#fff;border-color:var(--error-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}}.mtd-media__uploader{padding:6px 0 12px}.mtd-media__empty{margin:0 0 14px;padding:18px 14px;font-size:13px;color:var(--text-secondary);background:var(--card-background);border:1px solid var(--card-border);border-radius:10px;text-align:center}.mtd-dashboard__body{flex:1 0 auto;padding:14px var(--mtd-page-padding-x) calc(110px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:var(--mtd-section-gap)}.dashboard{display:flex;flex-direction:column;gap:24px;max-width:1400px;margin:0 auto}@keyframes dashboard-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.dashboard .skeleton-block{border-radius:4px;background:linear-gradient(90deg,var(--surface-hover) 25%,rgba(255,255,255,.15) 50%,var(--surface-hover) 75%);background-size:200% 100%;animation:dashboard-skeleton-shimmer 1.4s ease-in-out infinite}.dashboard .skeleton-block:nth-child(2){animation-delay:.15s}.dashboard .skeleton-block:nth-child(3){animation-delay:.3s}.dashboard-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px}.dashboard-welcome h1{font-size:28px;font-weight:700;color:var(--text-primary, #1f2937);margin:0 0 8px}.dashboard-subtitle{font-size:16px;color:var(--text-secondary, #6b7280);margin:0;line-height:1.5}.tenant-badge{background-color:var(--chip-orange-bg, #fff3ed);color:var(--accent-orange, #FE6B34);padding:6px 12px;border-radius:20px;font-size:14px;font-weight:500}.dashboard-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:8px}.dashboard-content{display:grid;grid-template-columns:1fr 320px;gap:24px;padding-bottom:2rem}.dashboard-main{display:flex;flex-direction:column;gap:24px}.dashboard-sidebar{display:flex;flex-direction:column;gap:20px}.dashboard-card,.dashboard-card.stat-card,.today-appointments-card{background:var(--card-background);border:1px solid transparent;box-shadow:0 1px 3px #0000004d;border-radius:12px;padding:24px}.card-title{font-size:18px;font-weight:600;color:var(--text-primary, #1f2937);margin:0 0 16px}.stat-card{background-color:var(--card-background);border:1px solid transparent;border-radius:16px;padding:1rem 2rem}.stat-card-clickable{cursor:pointer;transition:all .2s ease}.stat-card-clickable:hover{border-color:var(--accent-orange-hover, #f4a261)}.stat-card-clickable:focus{border-color:transparent;outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px}.stat-content{display:flex;flex-direction:column;gap:8px;height:100%}.stat-header{display:flex;align-items:center;gap:12px}.stat-title{font-size:14px;font-weight:500;color:var(--text-secondary);margin:0}.stat-icon{width:32px;height:32px;border-radius:6px;display:flex;align-items:center;justify-content:center;color:var(--text-inverse, #ffffff);flex-shrink:0}.stat-icon-blue{background-color:#3b82f6}.stat-icon-green{background-color:#10b981}.stat-icon-orange{background-color:var(--accent-orange)}.stat-icon-purple{background-color:#8b5cf6}.stat-icon-red{background-color:#ef4444}.stat-value{font-size:36px;font-weight:700;color:var(--text-primary);line-height:1;margin:4px 0}.stat-value.stat-value-text{font-size:1rem;line-height:1.4}.stat-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto}.stat-trend{font-size:13px;color:var(--text-secondary)}.stat-view-all{padding:0;border:none;background:none;color:var(--accent-orange);font-size:13px;font-weight:500;cursor:pointer;transition:color .2s;white-space:nowrap}.stat-view-all:hover{color:var(--accent-orange-hover)}.dashboard-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.dashboard-loading .loading-spinner{margin-bottom:16px}.dashboard-loading p{color:var(--text-secondary, #6b7280);font-size:16px;margin:0}.dashboard-error{text-align:center;padding:60px 20px}.dashboard-error h2{color:var(--error-color, #dc2626);margin-bottom:12px}.dashboard-error p{color:var(--text-secondary, #6b7280);line-height:1.5}.activity-list{display:flex;flex-direction:column;gap:12px}.activity-item{display:flex;justify-content:space-between;align-items:center;padding:16px;border:1px solid var(--card-divider, var(--border-primary, #e5e7eb));border-radius:8px;background-color:var(--surface-secondary, #f9fafb);transition:background-color .2s}.activity-item:hover{background-color:var(--hover-bg, #f3f4f6)}.activity-content{flex:1}.activity-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.activity-client{font-size:16px;font-weight:600;color:var(--text-primary, #1f2937);margin:0}.activity-date{font-size:14px;color:var(--text-secondary, #6b7280)}.activity-details{display:flex;gap:12px;align-items:center}.activity-type{font-size:14px;color:var(--text-secondary, #4b5563)}.activity-status{padding:4px 8px;border-radius:12px;font-size:12px;font-weight:500;text-transform:capitalize}.status-green{background-color:var(--success-bg, #d1fae5);color:var(--success-text, #065f46)}.status-blue{background-color:var(--info-bg, #dbeafe);color:var(--info-text, #1e40af)}.status-orange{background-color:var(--warning-bg, #fed7aa);color:var(--warning-text, #9a3412)}.status-red{background-color:var(--error-bg, #fecaca);color:var(--error-text, #991b1b)}.status-gray{background-color:var(--surface-secondary, #f3f4f6);color:var(--text-primary, #374151)}.activity-actions{display:flex;gap:8px}.activity-action{padding:8px;border:none;background-color:transparent;color:var(--text-secondary, #6b7280);border-radius:6px;cursor:pointer;transition:all .2s}.activity-action:hover{background-color:var(--hover-bg, #e5e7eb);color:var(--text-primary, #374151)}.activity-empty{text-align:center;padding:40px 20px;color:var(--text-secondary, #6b7280)}.activity-footer{margin-top:16px;padding-top:16px;border-top:1px solid var(--border-primary, #e5e7eb)}.activity-view-all{display:flex;align-items:center;gap:8px;width:100%;padding:12px;border:none;background-color:var(--surface-secondary, #f9fafb);color:var(--text-primary, #374151);border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s}.activity-view-all:hover{background-color:var(--hover-bg, #f3f4f6)}.today-appointments-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.today-appointments-header .card-title{margin:0}.today-date{font-size:14px;color:var(--text-secondary);font-weight:500}.appointments-list{display:flex;flex-direction:column;gap:0}.appointment-item{display:flex;align-items:flex-start;gap:16px;padding:16px 0;border-bottom:1px solid var(--border-primary);text-decoration:none;transition:all .2s;position:relative}.appointment-item:last-child{border-bottom:none}.appointment-item:hover{background:var(--surface-hover);margin:0 -24px;padding:16px 24px;border-radius:8px}.appointment-time-block{display:flex;flex-direction:column;align-items:flex-start;min-width:60px}.appointment-time{font-size:16px;font-weight:600;color:var(--text-primary);line-height:1.2}.appointment-duration{font-size:12px;color:var(--text-secondary);margin-top:2px}.appointment-dot{width:8px;height:8px;border-radius:50%;background:var(--accent-orange);margin-top:6px;flex-shrink:0}.appointment-dot-confirmed{background:var(--success-color)}.appointment-dot-scheduled{background:#3b82f6}.appointment-dot-completed{background:var(--success-color)}.appointment-dot-pending{background:var(--accent-orange)}.appointment-dot-no-show{background:var(--warning-color)}.appointment-dot-cancelled{background:var(--error-color, #ef4444)}.appointment-details{flex:1;display:flex;flex-direction:column;gap:4px}.appointment-title{font-size:15px;font-weight:600;color:var(--text-primary);line-height:1.3}.appointment-client{font-size:13px;color:var(--text-secondary);line-height:1.3}.appointment-status{text-transform:capitalize;margin-top:4px;width:fit-content;display:inline-flex;gap:6px;padding:4px 10px;border-radius:100px;font-size:12px;font-weight:500}.appointment-status.status-confirmed{background:var(--success-bg);color:var(--success-color)}.appointment-status.status-scheduled{background:#3b82f61a;color:#3b82f6}.appointment-status.status-completed{background:var(--success-bg);color:var(--success-color)}.appointment-status.status-no-show{background:var(--warning-bg);color:var(--warning-text)}.appointment-status.status-cancelled{background:var(--error-hover);color:var(--error-text)}.schedule-list{display:flex;flex-direction:column;gap:12px}.schedule-item{display:flex;gap:16px;padding:16px;border:1px solid var(--card-divider, var(--border-primary, #e5e7eb));border-radius:8px;background-color:var(--surface-secondary, #f9fafb)}.schedule-time{font-size:14px;font-weight:600;color:var(--accent-orange, #FE6B34);min-width:80px}.schedule-details{flex:1}.schedule-client{font-size:16px;font-weight:600;color:var(--text-primary, #1f2937);margin-bottom:4px}.schedule-type{font-size:14px;color:var(--text-secondary, #6b7280)}.schedule-status{margin-top:4px;padding:2px 6px;border-radius:8px;font-size:11px;font-weight:500;text-transform:capitalize}.schedule-empty{text-align:center;padding:32px 16px;color:var(--text-secondary, #6b7280)}.quick-stats{display:flex;flex-direction:column;gap:16px}.quick-stat{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--border-primary, #f3f4f6)}.quick-stat:last-child{border-bottom:none}.quick-stat-label{font-size:14px;color:var(--text-secondary, #6b7280)}.quick-stat-value{font-size:16px;font-weight:600;color:var(--text-primary, #1f2937)}.quick-actions{display:flex;flex-direction:column;gap:8px}.dashboard .task-list{display:flex;flex-direction:column;gap:12px}.dashboard .task-item{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px;border:1px solid var(--chip-orange-border);border-radius:8px;background-color:var(--card-background);transition:all .2s ease}.dashboard .task-item:hover{border-color:var(--accent-orange-hover, #f4a261);background-color:var(--surface-hover, #f3f4f6)}.dashboard .task-content{flex:1;min-width:0}.dashboard .task-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.dashboard .task-title{font-size:15px;font-weight:600;color:var(--text-primary, #1f2937);margin:0}.dashboard .task-priority{padding:2px 8px;border-radius:12px;font-size:12px;font-weight:500;text-transform:capitalize}.dashboard .task-priority.priority-red{background-color:var(--error-bg, #fecaca);color:var(--error-text, #991b1b)}.dashboard .task-priority.priority-orange{background-color:var(--warning-bg, #fed7aa);color:var(--warning-text, #9a3412)}.dashboard .task-priority.priority-green{background-color:var(--success-bg, #d1fae5);color:var(--success-text, #065f46)}.dashboard .task-priority.priority-gray{background-color:var(--surface-secondary, #f3f4f6);color:var(--text-secondary, #6b7280)}.dashboard .task-description{font-size:13px;color:var(--text-secondary, #6b7280);margin:0 0 6px;line-height:1.4}.dashboard .task-meta{display:flex;align-items:center;gap:12px}.dashboard .task-due{font-size:12px;color:var(--text-tertiary, #9ca3af)}.dashboard .task-actions{display:flex;gap:8px;flex-shrink:0}.dashboard .task-button{padding:6px 14px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.dashboard .task-button.start{background-color:var(--accent-orange, #FE6B34);color:var(--text-inverse, #ffffff)}.dashboard .task-button.start:hover{background-color:var(--accent-orange-hover, #f4a261)}.dashboard .task-button.upload-media{background-color:var(--surface-secondary, #f3f4f6);color:var(--text-primary, #374151);border:1px solid var(--border-primary, #e5e7eb)}.dashboard .task-button.upload-media:hover{background-color:var(--surface-hover, #e5e7eb);border-color:var(--accent-orange-hover, #f4a261)}.dashboard-sessions-row{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.sessions-pending-card{min-height:280px}.sessions-list{display:flex;flex-direction:column;gap:8px}.session-item{display:flex;align-items:center;gap:16px;padding:14px 16px;border:1px solid transparent;border-radius:8px;background-color:var(--card-background);transition:all .2s}.session-item-clickable{text-decoration:none;cursor:pointer}.session-item-clickable:hover{background-color:var(--surface-hover);border-color:var(--chip-orange-bg)}.session-info{display:flex;flex-direction:column;gap:3px;min-width:120px}.session-client{font-size:15px;font-weight:500;color:var(--text-primary)}.session-date{font-size:13px;color:var(--text-secondary)}.session-meta{display:flex;flex-direction:column;align-items:flex-start;gap:2px;flex:1;overflow:hidden}.session-pet{font-size:14px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-type{font-size:14px;color:var(--text-secondary);white-space:nowrap}.session-action-hint{font-size:13px;color:var(--accent-orange);font-weight:500;flex-shrink:0}.session-meta-separator{color:var(--text-tertiary)}.sessions-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;color:var(--text-tertiary, #9ca3af)}.sessions-empty svg{margin-bottom:12px;color:var(--success-color, #10b981)}.sessions-empty h3{color:var(--text-primary, #111827)}.sessions-empty p{margin:0;font-size:14px;color:var(--text-secondary, #6b7280)}@media(max-width:1024px){.dashboard-sessions-row{grid-template-columns:1fr}}.action-button{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;border:none;background-color:var(--body-background);color:var(--text-primary, #374151);border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s;text-align:left}.action-button:hover{background-color:var(--accent-orange);color:var(--text-primary, #1f2937)}.action-button:active{background-color:var(--hover-bg, #f3f4f6)}.monthly-calendar{background-color:var(--surface-primary);border:1px solid var(--cal-border, #e5e7eb);border-radius:12px;overflow:hidden;width:100%;min-width:0}.monthly-calendar .calendar-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:var(--card-background);border-bottom:none}.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(--cal-nav-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(--cal-muted-bg, #f9fafb);border-bottom:1px solid var(--cal-border, #e5e7eb)}.calendar-day{min-height:120px;padding:8px;border-right:1px solid var(--cal-border, #e5e7eb);border-bottom:1px solid var(--cal-border, #e5e7eb);background-color:var(--cal-day-cell-bg)}.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{background-color:var(--bg-primary)}.calendar-day.other-month .calendar-day-number{color:var(--cal-other-month-text, #d1d5db)}.calendar-day.today{background-color:var(--primary-light)}.calendar-day.today .calendar-day-number{color:var(--accent-orange, #FE6B34)}.calendar-day.non-working{background-color:var(--cal-muted-bg, #f3f4f6);opacity:.6;color:var(--text-tertiary, #9ca3af)}.calendar-day.non-working .calendar-day-number{color:var(--text-tertiary, #9ca3af)}.calendar-day.non-working .calendar-events{opacity:.5}.calendar-events{display:flex;flex-direction:column;gap:4px}.calendar-event{padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;transition:opacity .2s}.calendar-event:hover{opacity:.8}.calendar-event.session{background-color:var(--info-bg, #dbeafe);color:var(--info-text, #1e40af)}.calendar-event.task{background-color:var(--warning-bg, #fed7aa);color:var(--warning-text, #9a3412)}.calendar-event.meeting{background-color:var(--success-bg, #d1fae5);color:var(--success-text, #065f46)}.calendar-event.appointment{background-color:var(--info-bg, #e0e7ff);border-left:3px solid var(--info-color, #4f46e5);color:var(--info-text, #3730a3)}.calendar-event.timeblock{background-color:var(--error-bg, #fee2e2);border-left:3px solid var(--error-color, #dc2626);color:var(--error-text, #991b1b)}.calendar-event.timeblock.busy{background-color:var(--warning-bg, #fef3c7);border-left-color:var(--warning-color, #f59e0b);color:var(--warning-text, #92400e)}.calendar-event.timeblock.unavailable{background-color:var(--error-bg, #fee2e2);border-left-color:var(--error-color, #dc2626);color:var(--error-text, #991b1b)}.event-time{font-size:11px;font-weight:600}.event-title{font-size:12px;margin-top:2px}.event-subtitle{font-size:12px;opacity:.8;font-style:italic;margin-top:2px}@media(max-width:1024px){.dashboard-content{grid-template-columns:1fr}.dashboard-sidebar{order:-1}}@media(max-width:768px){.dashboard-stats{grid-template-columns:repeat(2,1fr)}.dashboard-header{flex-direction:column;align-items:flex-start;gap:16px}.monthly-calendar .calendar-grid{grid-template-columns:repeat(7,minmax(50px,1fr));overflow-x:auto}.calendar-day{min-height:80px;padding:4px}}@media(max-width:480px){.dashboard-stats{grid-template-columns:1fr}.monthly-calendar .calendar-grid{grid-template-columns:repeat(7,minmax(45px,1fr));overflow-x:auto}.calendar-day{min-height:70px;padding:2px}.calendar-day-number{font-size:12px}.calendar-event{font-size:12px;padding:2px 4px}}.upload-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.upload-modal{background:var(--card-background);border-radius:12px;width:90%;max-width:560px;max-height:80vh;overflow-y:auto;box-shadow:0 8px 32px #0000004d}.upload-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.upload-modal-header h3{margin:0;color:var(--text-primary, #1f2937);font-size:18px}.upload-modal-close{background:none;border:none;font-size:24px;color:var(--text-secondary, #6b7280);cursor:pointer;padding:0 4px;line-height:1;transition:color .2s ease}.upload-modal-close:hover{color:var(--text-primary, #1f2937)}.upload-modal-body{padding:24px}.cmd-body{display:flex;flex-direction:column;gap:var(--mtd-section-gap, 16px);padding:12px 12px 16px}.cmd-hero{background:var(--card-background);border:1px solid var(--card-border);border-radius:var(--mtd-radius-card, 16px);padding:16px 18px;text-align:left;width:100%;display:flex;flex-direction:column;gap:8px;cursor:pointer;font-family:inherit;color:var(--text-primary);box-shadow:0 1px 3px #00000014;transition:border-color .2s ease,transform .05s ease}.cmd-hero:hover{border-color:var(--accent-orange-hover)}.cmd-hero:active{transform:scale(.995)}.cmd-hero__eyebrow{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px}.cmd-hero__pill{background:var(--chip-orange-bg);color:var(--accent-orange);font-weight:600;padding:2px 10px;border-radius:999px;text-transform:uppercase;letter-spacing:.04em;font-size:11px}.cmd-hero__time{color:var(--text-secondary);font-weight:500}.cmd-hero__title{font-size:18px;font-weight:700;line-height:1.25;margin:0;color:var(--text-primary)}.cmd-hero__meta{font-size:13px;color:var(--text-secondary);margin:0}.cmd-hero__cta{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--accent-orange);margin-top:4px}.cmd-hero__cta--solid{align-self:flex-start;background:var(--accent-orange);color:var(--text-inverse);padding:10px 14px;border-radius:999px;border:none;font-family:inherit;cursor:pointer;margin-top:8px}.cmd-hero__cta--solid:hover{background:var(--accent-orange-hover)}.cmd-hero--empty{align-items:center;text-align:center;cursor:default;gap:6px}.cmd-hero--empty:hover{border-color:var(--card-border)}.cmd-hero__empty-icon{width:44px;height:44px;border-radius:999px;background:var(--surface-secondary);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;margin-bottom:4px}.cmd-hero__empty-title{font-size:16px;font-weight:700;margin:0;color:var(--text-primary)}.cmd-hero__empty-subtitle{font-size:13px;color:var(--text-secondary);margin:0}.cmd-chips{display:flex;flex-direction:column;gap:8px}.cmd-chip{display:flex;align-items:center;gap:10px;padding:12px 14px;background:var(--card-background);border:1px solid var(--card-border);border-radius:12px;color:var(--text-primary);font-family:inherit;font-size:14px;font-weight:500;cursor:pointer;transition:border-color .2s ease;min-height:48px}.cmd-chip:hover{border-color:var(--accent-orange-hover)}.cmd-chip__label{flex:1;text-align:left}.cmd-chip__arrow{color:var(--text-tertiary)}.cmd-chip--warning{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}.cmd-chip--warning .cmd-chip__arrow{color:var(--warning-text)}.cmd-actions{display:flex;flex-direction:column;gap:8px}.cmd-actions__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.cmd-action{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:14px 8px;background:var(--card-background);border:1px solid var(--card-border);border-radius:12px;color:var(--text-primary);font-family:inherit;font-size:12px;font-weight:600;cursor:pointer;transition:border-color .2s ease;min-height:72px}.cmd-action:hover{border-color:var(--accent-orange-hover);color:var(--accent-orange)}.cmd-action svg{color:var(--accent-orange)}.branding-settings .card-description{color:var(--text-secondary);font-size:14px;margin-top:4px}.branding-section{margin-bottom:20px;background:var(--card-background);padding:1.5rem;border-radius:16px}.branding-section h4{font-size:14px;font-weight:600;margin-bottom:12px;color:var(--text-primary);margin-top:0}.section-description{display:none}.logo-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}.radio-option{display:flex;align-items:center;gap:10px;padding:12px 14px;border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;cursor:pointer;transition:all .2s}.radio-option:has(input:checked){border-color:var(--accent-orange);background-color:color-mix(in srgb,var(--accent-orange) 12%,transparent)}.radio-option:hover{border-color:var(--accent-orange);background-color:var(--hover-bg)}.radio-option input[type=radio]{width:16px;height:16px;flex-shrink:0;accent-color:var(--accent-orange)}.radio-option input[type=radio]:checked+.radio-label{color:var(--accent-orange)}.radio-label{display:flex;flex-direction:column;gap:1px}.radio-title{font-weight:500;font-size:.9rem;color:var(--text-primary)}.radio-description{font-size:.78rem;color:var(--text-secondary)}.text-logo-preview,.image-logo-section{margin-top:16px}.form-label{display:block;font-size:14px;font-weight:500;color:var(--text-primary);margin-bottom:8px}.form-input{width:100%;padding:10px 12px;font-size:14px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;background-color:var(--input-bg);color:var(--text-primary);transition:border-color .2s,box-shadow .2s}.form-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-color-alpha, rgba(254, 107, 52, .15))}.form-input::placeholder{color:var(--text-tertiary)}.branding-settings .preview-box{background-color:var(--bg-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;padding:16px 24px;display:flex;align-items:center;min-height:64px}.logo-text-preview{font-size:20px;font-weight:700;color:var(--text-primary)}.help-text{font-size:13px;color:var(--text-secondary);margin-top:8px}.logo-preview-container{display:flex;flex-direction:column;gap:12px}.logo-preview-image{max-height:96px;max-width:100%;width:auto;object-fit:contain}.logo-actions{display:flex;gap:8px}.logo-upload-area{display:flex;flex-direction:column;align-items:center;padding:32px;border:2px dashed var(--border-primary, #e5e7eb);border-radius:8px;transition:all .2s}.logo-upload-area:hover{border-color:var(--accent-orange);background-color:var(--hover-bg)}.logo-upload-area .upload-button{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 24px;border:none;background:none;color:var(--accent-orange);cursor:pointer;font-size:14px;font-weight:500}.logo-upload-area .upload-button:hover{color:var(--accent-orange-hover)}.logo-upload-area .upload-button:disabled{opacity:.5;cursor:not-allowed}.upload-hint{font-size:13px;color:var(--text-secondary);text-align:center;margin-top:8px;line-height:1.5}.branding-preview{margin-top:20px;padding-top:16px;border-top:1px solid var(--border-primary, #e5e7eb)}.branding-preview h4{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px}.header-preview{border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;overflow:hidden}.preview-header{padding:16px 24px;display:flex;align-items:center;min-height:64px}.preview-logo-image{max-height:32px;width:auto;object-fit:contain}.preview-logo-text{font-size:20px;font-weight:700;color:var(--text-primary)}.form-actions{margin-top:20px;padding-top:16px;border-top:1px solid var(--border-primary, #e5e7eb);display:flex;justify-content:flex-end}.alert{padding:12px 16px;border-radius:8px;margin-bottom:16px;font-size:14px}.alert-error{background-color:var(--error-bg, #fef2f2);color:var(--error-color, #dc2626);border:1px solid var(--error-border, #fecaca)}.alert-success{background-color:var(--success-bg, #f0fdf4);color:var(--success-color, #16a34a);border:1px solid var(--success-border, #bbf7d0)}.loading-spinner{width:20px;height:20px;border:2px solid var(--border-primary, #e5e7eb);border-top-color:var(--accent-orange);border-radius:50%;animation:spin 1s linear infinite}.btn-outline-danger{background:none;border:1px solid var(--error-color, #dc2626);color:var(--error-color, #dc2626);padding:8px 16px;border-radius:6px;font-size:14px;cursor:pointer;transition:all .2s}.btn-outline-danger:hover{background-color:var(--error-color, #dc2626);color:var(--text-inverse)}.btn-outline-danger:disabled{opacity:.5;cursor:not-allowed}.quota-status{background:var(--card-background, white);border-radius:8px;padding:24px;box-shadow:0 2px 4px #0000001a;margin-bottom:24px}.package-manager{color:var(--text-primary)}.packages-shell-card{background:var(--card-background);border:1px solid var(--card-border, transparent);border-radius:8px;box-shadow:0 1px 3px #00000014;overflow:hidden}.packages-subtab-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 20px;min-height:64px;border-bottom:1px solid var(--border-primary, rgba(148, 163, 184, .18))}.packages-subtabs{display:flex;align-items:stretch;gap:0;align-self:stretch}.packages-subtab{background:transparent;border:0;border-bottom:2px solid transparent;color:var(--text-secondary);cursor:pointer;font-size:13px;font-weight:500;padding:0 16px}.packages-subtab:hover{color:var(--text-primary)}.packages-subtab.active{border-bottom-color:var(--accent-orange, #f97316);color:var(--accent-orange, #f97316);font-weight:700}.package-create-template-btn,.package-btn{border-radius:7px;cursor:pointer;font-size:12px;font-weight:700;min-height:32px;padding:7px 14px}.package-create-template-btn,.package-btn-accent{background:var(--accent-orange, #f97316);border:1px solid var(--accent-orange, #f97316);color:#fff}.package-btn-ghost{background:transparent;border:1px solid var(--card-border, rgba(148, 163, 184, .22));color:var(--text-secondary)}.package-btn-ghost:hover{color:var(--text-primary);border-color:var(--accent-orange, #f97316)}.packages-panel-content{padding:20px}.packages-panel-content .package-filter-row{display:grid;grid-template-columns:1fr 144px;gap:12px;margin-bottom:20px}.packages-panel-content .package-filter-row.mobile-filter-region--collapsed{display:none}.package-search-control{position:relative;display:flex;align-items:center}.package-search-control svg{position:absolute;left:12px;color:var(--text-tertiary, var(--text-secondary));pointer-events:none}.package-search-control input,.package-type-filter{width:100%;min-height:36px;border:1px solid var(--input-border, #d1d5db);border-radius:7px;background:var(--input-bg, #fff);color:var(--text-primary);font-size:13px}.package-search-control input{padding:8px 12px 8px 34px}.package-type-filter{cursor:pointer;padding:8px 10px}.package-search-control input:focus,.package-type-filter:focus{outline:none;border-color:var(--input-focus-border, var(--accent-orange));box-shadow:0 0 0 3px #f9731624}.package-template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.package-template-card{display:flex;flex-direction:column;min-height:198px;background:var(--cal-day-background, var(--card-background));border:1px solid var(--card-border, rgba(148, 163, 184, .18));border-top:3px solid #3b82f6;border-radius:8px;overflow:hidden}.package-template-card.inactive{opacity:.72}.package-template-main{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:16px 16px 0}.package-template-copy{min-width:0}.package-template-copy h4{color:var(--text-primary);font-size:13px;font-weight:800;margin:0 0 8px}.package-type-badge{display:inline-flex;align-items:center;border-radius:999px;font-size:10px;font-weight:800;line-height:1;padding:4px 8px;text-transform:uppercase;white-space:nowrap}.package-type-badge.session_pack{background:#3b82f621;color:#60a5fa}.package-type-badge.board_train_pack{background:#f9731624;color:#fb923c}.package-template-price{display:flex;align-items:flex-end;flex-direction:column;flex-shrink:0}.package-template-price strong{font-size:20px;font-weight:800;line-height:1}.package-template-price span{color:var(--text-secondary);font-size:10px;margin-top:4px}.package-template-description{color:var(--text-secondary);font-size:11px;line-height:1.45;margin:12px 16px 0;min-height:32px}.package-template-meta{display:flex;flex-wrap:wrap;gap:6px;margin:14px 16px 18px}.package-template-meta span{background:var(--input-bg);border:1px solid var(--accent-orange);border-radius:6px;color:var(--text-secondary);font-size:11px;padding:4px 8px}.package-template-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding:12px 16px;border-top:1px solid var(--border-primary, rgba(148, 163, 184, .18))}.package-template-footer>span{color:var(--text-secondary);font-size:12px}.package-template-actions{display:flex;align-items:center;gap:6px}.package-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.package-table-v2{width:100%;border-collapse:separate;border-spacing:0;min-width:860px;border:1px solid var(--input-border)}.billing-page--mobile .billing-content .package-table-v2{display:table;overflow-x:visible;white-space:normal;max-width:none}.package-table-v2 thead{background:var(--table-header-bg, #F8F6FA)}.package-table-v2 th{background-color:var(--table-header-bg, #F8F6FA);color:var(--text-tertiary);font-size:11px;font-weight:700;padding:12px 14px;text-align:left;text-transform:uppercase;border-bottom:1px solid var(--input-border, rgba(148, 163, 184, .16))}.package-table-v2 td{background-color:var(--card-background);border-bottom:1px solid var(--input-border, rgba(148, 163, 184, .16));color:var(--text-primary);font-size:13px;padding:14px;vertical-align:middle}.package-table-v2 tbody tr:last-child td{border-bottom:none}.package-table-client{font-weight:700}.package-table-v2 th:first-child,.package-table-v2 td:first-child{position:-webkit-sticky;position:sticky;left:0;z-index:2;background-color:var(--card-background);box-shadow:1px 0 0 var(--input-border, rgba(148, 163, 184, .16))}.package-table-v2 thead th:first-child{z-index:3;background-color:var(--table-header-bg, #F8F6FA)}.package-progress-cell{display:flex;flex-direction:column;gap:4px;min-width:180px}.package-progress-top{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px}.package-progress-track{height:6px;overflow:hidden;border-radius:999px;background:var(--surface-secondary, rgba(148, 163, 184, .18))}.package-progress-fill{display:block;height:100%;border-radius:inherit}.package-progress-top span{color:var(--text-secondary);font-size:12px;font-weight:700}.package-progress-remaining{color:var(--text-tertiary, var(--text-secondary));font-size:11px}.package-progress-exhausted{color:#ef4444;font-size:11px;font-weight:700}.packages-empty-state{display:grid;place-items:center;color:var(--text-secondary);min-height:180px;text-align:center}.packages-empty-state.large{min-height:320px}.packages-empty-state svg{color:#22c55e;margin-bottom:10px}.packages-empty-state h3{color:var(--text-primary);font-size:16px;margin:0 0 6px}.packages-empty-state p{color:var(--text-secondary);font-size:13px;margin:0}.package-template-form-v2 .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.package-checkbox{display:inline-flex;align-items:center;gap:7px;color:var(--text-secondary);cursor:pointer;font-size:12px;margin-top:8px}.price-input-wrap{position:relative}.price-input-wrap span{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--text-secondary);font-size:13px;pointer-events:none}.price-input-wrap input{padding-left:24px}.package-preview-card{display:grid;gap:8px;border:1px solid var(--card-border, rgba(148, 163, 184, .2));border-top:3px solid #3b82f6;border-radius:8px;padding:14px;background:var(--cal-day-background, var(--card-background))}.package-preview-card>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.package-preview-card strong{color:var(--text-primary);font-size:13px}.package-preview-price{font-size:18px;font-weight:800}.package-preview-card p{color:var(--text-secondary);font-size:12px;margin:0}@media(max-width:1100px){.package-template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.packages-subtab-bar{align-items:stretch;flex-direction:column;padding:12px}.packages-subtabs{min-height:42px}.package-create-template-btn{width:100%}.packages-panel-content .package-filter-row,.package-template-grid,.package-template-form-v2 .form-row{grid-template-columns:1fr}}.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 var(--card-divider, #e9ecef)}.quota-status-header h3{margin:0;color:var(--text-primary, #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 var(--card-divider, #e9ecef);border-radius:6px;background:var(--surface-secondary, #f8f9fa)}.quota-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.quota-title{font-weight:600;color:var(--text-primary, #495057)}.quota-values{font-size:.875rem;color:var(--text-tertiary, #6c757d)}.quota-progress{width:100%;height:8px;background:var(--surface-secondary, #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:var(--text-tertiary, #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 var(--card-divider, #e9ecef)}.subscription-manager{border-radius:8px;padding:24px;width:100%;max-width:100%;box-sizing:border-box}.subscription-manager.loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:48px;color:var(--text-secondary);min-height:300px}.subscription-manager.error{padding:24px}.current-subscription{margin-bottom:24px}.subscription-info{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;padding:20px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:8px;border:1px solid #e9ecef}.tier-info h4{margin:0 0 8px;color:var(--text-primary, #212529);font-size:1.25rem}.price{font-size:1.75rem;font-weight:700;color:var(--accent-orange, #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:var(--surface-secondary, #f8f9fa);border:1px solid var(--card-divider, #e9ecef);border-radius:8px}.billing-item .label{color:var(--text-tertiary, #6c757d);font-size:.875rem}.billing-item .value{font-weight:600;color:var(--text-primary, #212529)}.subscription-features{padding:20px;background:var(--surface-secondary, #f8f9fa);border-radius:8px;border:1px solid var(--card-divider, #e9ecef)}.subscription-features h5{margin:0 0 16px;color:var(--text-primary, #495057);font-size:1rem}.subscription-features ul{margin:0;padding-left:20px;color:var(--text-on-panel, #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:#26b2c9}.badge-warning{background:var(--chip-orange-bg);color:var(--accent-orange)}.badge-danger{background:#f8d7da;color:#721c24}.badge-secondary{background:#e2e3e5;color:#383d41}.badge-sm{padding:3px 8px;font-size:.65rem;border-radius:12px}.badge-detail{font-weight:400;margin-left:4px;opacity:.9}.subscription-actions{padding-top:24px;border-radius:12px;box-shadow:0 1px 3px #0000004d}.subscription-actions h5,.subscription-actions h6{color:var(--text-primary, #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 var(--card-divider, #e9ecef);border-radius:6px;padding:20px;background:var(--card-background, white);transition:all .2s ease}.tier-card:hover{border-color:var(--accent-orange, #007bff);box-shadow:0 2px 8px #007bff1a}.tier-card.current{border-color:var(--success-color, #28a745);background:#f8fff9}.tier-header{margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--card-divider, #e9ecef)}.tier-header h6{margin:0 0 8px;color:var(--text-primary, #212529)}.tier-price{font-size:1.25rem;font-weight:600;color:var(--accent-orange, #007bff)}.tier-features ul{margin:0;padding-left:16px;color:var(--text-tertiary, #6c757d);font-size:.875rem}.tier-features li{margin-bottom:4px}.tier-actions{margin-top:16px;text-align:center}.current-plan{color:#28a745;font-weight:500;font-size:.875rem}.danger-zone{padding:20px;background:var(--card-background);border-radius:6px;margin-bottom:24px}.danger-zone h4{margin:0 0 1rem;font-size:1.1rem}.danger-zone p{margin-bottom:16px;font-size:.875rem}.reactivate-section{padding:20px;background:#f0fff4;border:1px solid #9ae6b4;border-radius:6px}.reactivate-section h6{color:#22543d;margin-bottom:8px}.reactivate-section p{color:#276749;margin-bottom:16px;font-size:.875rem}.no-subscription{text-align:center;padding:48px 24px;color:var(--text-tertiary, #6c757d)}.no-subscription h3{color:var(--text-primary, #495057);margin-bottom:16px}.error-message{display:flex;align-items:center;justify-content:space-between;padding:16px;background:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#721c24}.btn-link{background:transparent;border-color:transparent;color:var(--accent-orange, #f4a261);text-decoration:underline}.btn-link:hover:not(:disabled){color:var(--accent-orange-hover, #e79552)}.btn-sm{padding:4px 8px;font-size:.75rem}.billing-dashboard{max-width:900px;margin:0 auto;padding:0}.billing-header{margin-bottom:24px}.billing-header h2{margin:0;color:var(--text-primary, #212529)}.billing-tabs{display:flex;border-bottom:1px solid var(--border-primary, #e5e7eb);margin-bottom:24px}.tab-button{background:none;border:none;padding:12px 24px;cursor:pointer;font-size:.875rem;font-weight:500;color:var(--text-secondary);border-bottom:2px solid transparent;transition:all .2s ease}.tab-button:hover{color:var(--accent-orange)}.tab-button.active{color:var(--accent-orange);border-bottom-color:var(--accent-orange)}.billing-content{min-height:400px;width:100%;max-width:100%}.billing-content>*{width:100%;max-width:100%;box-sizing:border-box}.billing-overview{display:flex;flex-direction:column;gap:24px;width:100%;max-width:100%;box-sizing:border-box}.overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}.overview-card{background:var(--card-background, white);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:var(--text-primary, #495057)}.event-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--card-divider, #f8f9fa)}.event-item:last-child{border-bottom:none}.event-info{display:flex;flex-direction:column;gap:4px}.event-type{font-weight:500;color:var(--text-on-panel, #495057);font-size:.875rem}.event-date{font-size:.75rem;color:var(--text-tertiary, #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:var(--text-tertiary, #6c757d);font-style:italic;padding:24px 0}.billing-history{background:var(--card-background, white);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 var(--card-divider, #e9ecef)}.history-header h3{margin:0;color:var(--text-primary, #212529)}.events-list{display:flex;flex-direction:column;gap:16px}.event-card{border:1px solid var(--card-divider, #e9ecef);border-radius:6px;padding:20px;background:var(--surface-secondary, #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:var(--text-primary, #495057)}.event-id{font-size:.75rem;color:var(--text-tertiary, #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:var(--success-color, #28a745);margin-bottom:16px}.event-metadata{border-top:1px solid var(--card-divider, #e9ecef);padding-top:16px}.event-metadata h6{margin:0 0 12px;color:var(--text-primary, #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:var(--text-tertiary, #6c757d);font-weight:500}.metadata-value{color:var(--text-on-panel, #495057);word-break:break-word}.no-events-large{text-align:center;padding:48px 24px;color:var(--text-tertiary, #6c757d)}.no-events-large h4{color:var(--text-primary, #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:var(--text-primary, #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 var(--card-divider, #f8f9fa)}.detail-row .label{color:var(--text-tertiary, #6c757d);font-size:.875rem}.detail-row .value{font-weight:500;color:var(--text-primary, #212529)}.detail-row .value.amount{color:var(--accent-orange, #007bff);font-size:1.125rem}.usage-metrics-card{padding:24px}.usage-metrics-card h4{margin:0 0 20px;color:var(--text-primary, #1f2937)}.usage-metrics-card .metrics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.usage-metrics-card .metric-item{padding:12px;background:var(--bg-secondary, #f9fafb);border-radius:6px}.usage-metrics-card .metric-label{font-size:.75rem;color:var(--text-secondary, #6b7280);text-transform:uppercase;font-weight:600;margin-bottom:4px}.usage-metrics-card .metric-value{font-size:1rem;font-weight:600;color:var(--text-primary, #1f2937);margin-bottom:8px;white-space:nowrap}.usage-metrics-card .metric-bar{width:100%;height:6px;background:var(--surface-secondary, #f9fafb);border-radius:3px;overflow:hidden}.usage-metrics-card .metric-bar-fill{height:100%;background:var(--accent-orange, #f97316);transition:width .3s ease}@media(max-width:768px){.usage-metrics-card .metrics-grid{grid-template-columns:1fr}}.invoices-section,.invoices-full{background:var(--card-background, white);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:var(--text-primary, #495057)}.no-invoices{text-align:center;color:var(--text-tertiary, #6c757d);padding:24px 0}.tier-proration{margin-top:12px;padding:12px;background:#f8f9fa;border-radius:4px;border:1px solid #e9ecef}.proration-info{margin-bottom:8px}.proration-info small{color:#6c757d;font-size:.75rem}.cancel-confirm{margin-top:16px;padding:16px;background:#fff;border:1px solid #e9ecef;border-radius:6px}.warning-text{color:#856404;margin-bottom:16px;font-size:.875rem}.cancel-actions{display:flex;gap:12px}.payment-method-manager{max-width:1200px;margin:0 auto}.payment-methods-section{background:var(--card-background, #ffffff);border:1px solid transparent;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000004d;margin-bottom:24px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.section-header h3{margin:0;color:var(--text-primary, #1f2937)}.no-payment-methods{text-align:center;padding:48px 24px;color:var(--text-secondary, #6b7280)}.no-payment-methods p{margin:8px 0}.payment-methods-list{display:flex;flex-direction:column;gap:12px}.payment-method-card{display:flex;justify-content:space-between;align-items:center;padding:20px;border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;background:var(--bg-secondary, #f9fafb);transition:all .2s ease}.payment-method-card:hover{border-color:var(--accent-orange-hover, #e55a2b)}.payment-method-card.default{border-color:var(--accent-orange)}.method-info{display:flex;align-items:center;gap:16px}.method-icon{font-size:2rem}.method-details{display:flex;flex-direction:column;gap:4px}.method-type{font-weight:600;color:var(--text-primary, #1f2937)}.method-expiry{font-size:.875rem;color:var(--text-secondary, #6b7280)}.method-actions{display:flex;gap:12px}.text-danger{color:var(--error-color, #dc3545)!important}.add-payment-modal{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--card-background, #ffffff);border-radius:12px;width:90%;max-width:500px;box-shadow:0 4px 16px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.modal-header h4{margin:0;color:var(--text-primary, #1f2937)}.close-button{background:none;border:none;font-size:1.5rem;color:var(--text-secondary, #6b7280);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s ease}.close-button:hover:not(:disabled){background:var(--surface-hover, #f3f4f6);color:var(--text-primary, #1f2937)}.modal-body{padding:24px}.stripe-placeholder{margin-top:16px}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:8px;color:var(--text-secondary, #6b7280);font-weight:500;font-size:.875rem}.form-control{width:100%;padding:10px 12px;border:1px solid var(--input-border, #D4CDE0);border-radius:4px;font-size:.875rem;background:var(--input-bg, white);color:var(--text-primary, #46375B);transition:border-color .2s ease}.form-control:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.form-control:disabled{background:var(--input-disabled-bg, #F8F6FA);cursor:not-allowed;color:var(--text-secondary, #5A4A72)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid var(--border-primary, #e5e7eb)}.payment-history-section{background:var(--card-background, #ffffff);border:1px solid transparent;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000004d}.payment-history-section h3{margin:0 0 20px;color:var(--text-primary, #1f2937)}.no-history{text-align:center;color:var(--text-secondary, #6b7280);padding:24px 0}.payment-history-list{overflow-x:auto}.payment-history-table{width:100%;border-collapse:collapse}.payment-history-table thead{background:var(--surface-secondary, #f9fafb)}.payment-history-table th{padding:12px;text-align:left;font-weight:600;color:var(--text-primary, #1f2937);font-size:.875rem;border-bottom:2px solid var(--border-primary, #e5e7eb)}.payment-history-table td{padding:12px;border-bottom:1px solid var(--border-primary, #e5e7eb);color:var(--text-secondary, #6b7280);font-size:.875rem}.payment-history-table tbody tr:hover{background:var(--table-row-hover)}@media(max-width:768px){.overview-section{margin-top:24px}.payment-method-card{flex-direction:column;gap:16px;align-items:flex-start}.method-actions{width:100%;justify-content:flex-start}.modal-content{width:95%;margin:16px}.form-row{grid-template-columns:1fr}.payment-history-table{font-size:.75rem}.payment-history-table th,.payment-history-table td{padding:8px}.cancel-actions{flex-direction:column}.cancel-actions .btn{width:100%}}.subscription-modal{max-width:800px;width:95%}.subscription-modal .modal-body{max-height:70vh;overflow-y:auto}.plan-selection h3,.additional-trainers h3,.addons-section h3,.subscription-summary h3{margin:0 0 16px;color:var(--text-primary, #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-card .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:var(--surface-secondary, #f8f9fa);padding:16px;border-radius:4px;margin-bottom:16px}.summary-line{display:flex;justify-content:space-between;margin-bottom:8px;color:var(--text-on-panel, inherit)}.summary-total{display:flex;justify-content:space-between;font-weight:700;font-size:1.1rem;border-top:1px solid var(--card-divider, #dee2e6);padding-top:8px;margin-top:8px;color:var(--text-primary, inherit)}.cancel-warning{margin-bottom:16px}.delete-data-option{margin:16px 0;padding:12px;background:#fff3cd;border:1px solid #ffeaa7;border-radius:4px}.delete-warning{color:#856404;font-weight:500;margin-left:8px}.warning-text{color:#dc3545;font-weight:500;margin:8px 0 0 24px;font-size:.9rem}.modal-footer{gap:12px}.modal-footer .btn-primary{background-color:var(--accent-orange);color:#fff;border:1px solid var(--accent-orange)}.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:var(--card-background, white);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 var(--card-divider, #e9ecef);background:var(--surface-secondary, #f8f9fa)}.subscription-modal-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary, #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:var(--text-primary, #212529)}.section-description{margin:0 0 16px;font-size:.875rem;color:var(--text-tertiary, #6c757d)}.plan-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.plan-card-option{border:2px solid var(--card-divider, #e9ecef);border-radius:12px;padding:20px;cursor:pointer;transition:all .2s;position:relative;background:var(--card-background, white)}.plan-card-option:hover{border-color:var(--accent-orange, #007bff);box-shadow:0 4px 12px #007bff1a}.plan-card-option.selected{border-color:var(--accent-orange, #007bff);background:#f8f9ff}.plan-card-option.current{border-color:var(--success-color, #28a745)}.plan-card-option.current.selected{border-color:var(--accent-orange, #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:var(--text-primary, #212529)}.plan-card-price{font-size:1.5rem;font-weight:700;color:var(--accent-orange, #007bff);margin-bottom:12px}.plan-card-price span{font-size:.875rem;font-weight:400;color:var(--text-tertiary, #6c757d)}.plan-card-features{list-style:none;padding:0;margin:0}.plan-card-features li{padding:4px 0;font-size:.8rem;color:var(--text-on-panel, #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:var(--surface-secondary, #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:var(--text-primary, #212529)}.slider-value .value-label{display:block;font-size:.75rem;color:var(--text-tertiary, #6c757d)}.slider-cost{margin-top:8px;font-size:.875rem;font-weight:600;color:var(--accent-orange, #007bff);text-align:right}.summary-section{background:var(--surface-secondary, #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:var(--text-on-panel, #495057)}.summary-row.total{border-top:2px solid var(--card-divider, #dee2e6);margin-top:8px;padding-top:16px;font-size:1.1rem;font-weight:700;color:var(--text-primary, #212529)}.summary-row.total span:last-child{color:var(--accent-orange, #007bff)}.subscription-modal-footer{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-top:1px solid var(--card-divider, #e9ecef);background:var(--card-background, white)}.footer-actions{display:flex;gap:12px}.btn-text-danger{background:none;border:none;color:#dc3545;font-size:.875rem;cursor:pointer;padding:8px 12px;border-radius:6px;transition:all .2s}.btn-text-danger:hover:not(:disabled){background:#fff5f5}.btn-text-danger:disabled{opacity:.5;cursor:not-allowed}.btn-primary:disabled,.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.cancel-warning-box{display:flex;gap:16px;padding:20px;background:#fff3cd;border:1px solid #ffeaa7;border-radius:12px;margin-bottom:20px}.cancel-warning-box .warning-icon{font-size:2rem}.cancel-warning-box .warning-title{margin:0 0 8px;font-weight:600;color:#856404}.cancel-warning-box .warning-text{margin:0;color:#856404;font-size:.9rem}.delete-data-section{padding:16px;background:#f8f9fa;border-radius:8px}.delete-checkbox{display:flex;align-items:center;gap:12px;cursor:pointer;font-size:.9rem;color:#495057}.delete-checkbox input{width:18px;height:18px;cursor:pointer}.delete-warning-alert{margin-top:12px;padding:12px;background:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;color:#721c24;font-size:.85rem}.modal-error{margin-top:16px;padding:12px;background:#f8d7da;border:1px solid #f5c6cb;border-radius:8px;color:#721c24;font-size:.875rem}@media(max-width:768px){.subscription-modal-container{max-height:95vh}.plan-cards{grid-template-columns:1fr}.slider-control{flex-direction:column;align-items:stretch}.slider-value{text-align:center;margin-top:12px}.subscription-modal-footer{flex-direction:column;gap:12px}.footer-actions{width:100%}.footer-actions button{flex:1}.btn-text-danger{order:1}}.feature-checkboxes{display:flex;flex-direction:column;gap:12px}.feature-checkbox-label{display:flex;align-items:flex-start;gap:12px;padding:16px;border:2px solid #e9ecef;border-radius:8px;cursor:pointer;transition:all .2s;background:#fff}.feature-checkbox-label:hover{border-color:#007bff;background:#f8f9ff}.feature-checkbox-label input[type=checkbox]{width:20px;height:20px;margin-top:2px;cursor:pointer;flex-shrink:0}.feature-checkbox-label input[type=checkbox]:checked{accent-color:#007bff}.feature-info{flex:1}.feature-name{font-weight:600;color:#212529;margin-bottom:4px;font-size:.95rem}.feature-description{color:#6c757d;font-size:.85rem;margin-bottom:6px;line-height:1.4}.feature-price{font-weight:600;color:#007bff;font-size:.9rem}@media(max-width:768px){.feature-checkbox-label{padding:12px}.feature-name{font-size:.9rem}.feature-description{font-size:.8rem}.feature-price{font-size:.85rem}}.subscription-extras{margin-top:20px;padding:20px;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.subscription-extras h5{margin:0 0 16px;color:#495057;font-size:1rem}.extras-list{display:flex;flex-direction:column;gap:12px}.extra-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#fff;border-radius:6px;border:1px solid #e9ecef}.extra-info{display:flex;flex-direction:column;gap:4px}.extra-name{font-weight:500;color:#212529}.extra-quantity{font-size:.85rem;color:#6c757d}.extra-price{font-weight:600;color:#007bff}.extras-total{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding-top:16px;border-top:2px solid #dee2e6;font-weight:600;color:#212529}.extras-total span:last-child{color:#007bff;font-size:1.1rem}@media(max-width:768px){.extra-item{flex-direction:column;align-items:flex-start;gap:8px}.extra-price{align-self:flex-end}}.invoice-payment-modal{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.invoice-payment-modal .modal-content{background:var(--card-background, white);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 var(--card-divider, #e9ecef)}.invoice-payment-modal .modal-header h4{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary, #212529)}.invoice-payment-modal .modal-body{padding:24px}.invoice-summary{background:var(--surface-secondary, #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:var(--text-on-panel, #495057)}.invoice-summary .summary-row.total{border-top:2px solid var(--card-divider, #dee2e6);margin-top:8px;padding-top:12px;font-size:1.1rem;font-weight:700;color:var(--text-primary, #212529)}.invoice-summary .summary-row.total span:last-child{color:var(--accent-orange, #007bff)}.payment-form .form-group{margin-bottom:20px}.payment-form .form-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--text-secondary, #6b7280);font-size:.9rem}.card-element-wrapper{padding:12px 16px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;background:var(--input-bg, #ffffff);transition:border-color .2s ease}.card-element-wrapper:focus-within{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.checkbox-group{margin-bottom:20px}.checkbox-label{display:flex;align-items:flex-start;gap:10px;cursor:pointer;font-size:.9rem;color:var(--text-on-panel, #495057)}.checkbox-label input[type=checkbox]{width:18px;height:18px;margin-top:2px;cursor:pointer;accent-color:var(--accent-orange, #f4a261)}.form-error{display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--error-bg, #fee2e2);border:1px solid var(--error-border, #fecaca);border-radius:8px;color:var(--error-text, #991b1b);margin-bottom:20px;font-size:.9rem}.form-error .error-icon{flex-shrink:0}.form-actions{display:flex;gap:12px;justify-content:flex-end}.form-security{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:20px;padding-top:16px;border-top:1px solid var(--border-primary, #E5E0EC);color:var(--text-secondary, #5A4A72);font-size:.85rem}.form-security .security-icon{font-size:1rem}.success-message{display:flex;align-items:center;gap:12px;padding:16px 20px;background:var(--success-bg, #f0fdf4);border:1px solid var(--success-border, #bbf7d0);border-radius:8px;color:var(--success-text, #166534);margin-bottom:20px;font-weight:500}.success-message .success-icon{width:24px;height:24px;background:#28a745;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0}@media(max-width:768px){.invoice-payment-modal .modal-content{max-width:100%;margin:16px}.form-actions{flex-direction:column}.form-actions .btn{width:100%}}.subscription-card-footer{margin-top:20px;padding-top:16px;border-top:1px solid var(--border-primary, #e5e7eb)}.subscription-card-footer .btn{width:100%}.download-btn{display:inline-flex;align-items:center;gap:6px}.download-btn svg{flex-shrink:0}.subscription-manager .subscription-actions>h5:first-child{display:none}.subscription-summary-card .subscription-header{display:block;margin-bottom:16px}.subscription-summary-card .subscription-header h4{margin:0}.stripe-connect-status{background:var(--card-background, white);border-radius:8px;padding:24px;box-shadow:0 2px 4px #0000001a;margin-bottom:24px}.scs{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.scs-card{background:var(--card-background);border:1px solid var(--card-border);border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:16px}.scs-card--loading,.scs-card--error{flex-direction:row;align-items:center;gap:10px;color:var(--text-secondary);font-size:14px}.scs-card--error{color:var(--error-text);background:var(--error-bg);border-color:var(--error-border)}.scs-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.scs-title{margin:0;font-size:16px;font-weight:700;color:var(--text-primary)}.scs-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;border:1px solid transparent}.scs-badge--success{background:var(--success-bg);color:var(--success-color);border-color:var(--success-border)}.scs-badge--warning{background:var(--warning-bg);color:var(--warning-color);border-color:var(--warning-border)}.scs-badge--danger{background:var(--error-bg);color:var(--error-color);border-color:var(--error-border)}.scs-badge--neutral{background:var(--bg-secondary);color:var(--text-secondary);border-color:var(--card-border)}.scs-headline{display:flex;align-items:flex-start;gap:12px;min-width:0}.scs-headline-icon{flex:0 0 auto;margin-top:2px}.scs-headline-icon--success{color:var(--success-color)}.scs-headline-icon--warning{color:var(--warning-color)}.scs-headline-icon--danger{color:var(--error-color)}.scs-headline-icon--neutral{color:var(--accent-orange)}.scs-headline-text{flex:1;min-width:0}.scs-headline-text h4{margin:0 0 4px;font-size:15px;font-weight:600;color:var(--text-primary)}.scs-headline-text p{margin:0;font-size:13px;line-height:1.5;color:var(--text-secondary)}.scs-capabilities{display:flex;flex-wrap:wrap;gap:8px}.scs-cap{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;font-size:12px;font-weight:500;border:1px solid transparent}.scs-cap--on{background:color-mix(in srgb,var(--success-color) 12%,transparent);color:var(--success-color);border-color:var(--success-border)}.scs-cap--off{background:color-mix(in srgb,var(--error-color) 12%,transparent);color:var(--error-color);border-color:var(--error-border)}.scs-requirements{display:flex;flex-direction:column;gap:12px;padding:12px 14px;background:var(--bg-secondary);border:1px solid var(--card-border);border-radius:8px}.scs-requirements-block h5{margin:0 0 6px;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--text-tertiary)}.scs-requirements-block--past-due h5{color:var(--error-color)}.scs-requirements-block ul{margin:0;padding-left:18px;font-size:13px;line-height:1.6;color:var(--text-primary)}.scs-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}@media(max-width:768px){.scs-card{padding:16px;gap:14px}.scs-actions{flex-direction:column-reverse}.scs-actions>*{width:100%}.scs-headline-text h4{font-size:14px}}.stripe-connect-status.loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:48px;color:var(--text-tertiary, #6c757d);min-height:200px}.stripe-connect-status.error{padding:24px}.connect-status-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--card-divider, #e9ecef)}.connect-status-header h3{margin:0;color:var(--text-primary, #212529);font-size:1.25rem;font-weight:600}.connect-status-content{text-align:center;padding:24px 0}.connect-status-content .status-icon{font-size:3rem;margin-bottom:16px}.connect-status-content .status-icon.success{color:var(--success-color, #28a745);background:var(--success-bg, #d4edda);width:64px;height:64px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:2rem;border:1px solid var(--success-border)}.connect-status-content .status-icon.warning{color:#856404}.connect-status-content h4{margin:0 0 12px;color:var(--text-primary, #212529);font-size:1.25rem;font-weight:600}.connect-status-content p{color:var(--text-tertiary, #6c757d);max-width:500px;margin:0 auto 24px;line-height:1.6}.connect-status-content.not-connected{background:var(--bg-secondary, #f8f9fa);border:1px solid var(--card-border);border-radius:8px;padding:32px}.connect-status-content.pending{background:var(--warning-bg, #fff3cd);border:1px solid var(--warning-border, #ffeaa7);border-radius:8px;padding:32px}.connect-status-content.active{background:var(--card-background);border:1px solid var(--success-border, #c3e6cb);border-radius:8px;padding:32px}.connect-status-content.warning{background:var(--error-bg, #f8d7da);border:1px solid var(--error-border, #f5c6cb);border-radius:8px;padding:32px}.connect-capabilities{display:flex;justify-content:center;gap:32px;margin:24px 0;padding:16px;background:var(--bg-secondary);border:1px solid var(--card-border);border-radius:8px}.capability-item{display:flex;align-items:center;gap:8px}.capability-indicator{width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:700}.capability-indicator.enabled{background:var(--success-bg, #d4edda);color:var(--success-color, #155724);border:1px solid var(--success-border)}.capability-indicator.disabled{background:var(--error-bg, #f8d7da);color:var(--error-color, #721c24);border:1px solid var(--error-border)}.capability-label{font-size:.875rem;font-weight:500;color:var(--text-primary, #495057)}.connect-requirements{text-align:left;margin:24px 0;padding:16px;background:var(--card-background, rgba(255, 255, 255, .9));border-radius:8px}.requirements-section{margin-bottom:16px}.requirements-section:last-child{margin-bottom:0}.requirements-section h5{margin:0 0 8px;font-size:.9rem;font-weight:600}.requirements-past-due h5{color:#721c24}.requirements-currently-due h5{color:#856404}.requirements-description{font-size:.8rem;color:var(--text-tertiary, #6c757d);margin:0 0 12px}.requirements-list{margin:0;padding-left:20px}.requirements-list li{font-size:.875rem;color:var(--text-on-panel, #495057);margin-bottom:4px;line-height:1.5}.connect-actions{display:flex;justify-content:center;gap:12px;margin-top:24px}.connect-actions .btn{min-width:160px}.stripe-onboarding{background:var(--card-background, white);border-radius:8px;padding:24px;box-shadow:0 2px 4px #0000001a}.stripe-onboarding .onboarding-error{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--error-bg, #f8d7da);border:1px solid var(--error-border, #f5c6cb);border-radius:6px;margin-bottom:20px}.stripe-onboarding .error-content{display:flex;align-items:center;gap:10px}.stripe-onboarding .error-icon{font-size:1.25rem;flex-shrink:0}.stripe-onboarding .error-text{flex:1;color:var(--error-text, #721c24);font-size:.875rem}.stripe-onboarding .onboarding-content{display:flex;flex-direction:column;align-items:center;text-align:center}.stripe-onboarding .onboarding-info{max-width:500px;margin-bottom:24px}.stripe-onboarding .onboarding-icon{font-size:3rem;margin-bottom:16px}.stripe-onboarding .onboarding-info h4{margin:0 0 12px;color:var(--text-primary, #212529);font-size:1.25rem}.stripe-onboarding .onboarding-info p{color:var(--text-secondary, #6c757d);margin:0 0 20px;line-height:1.6}.stripe-onboarding .onboarding-benefits{list-style:none;padding:0;margin:0;text-align:left;display:inline-block}.stripe-onboarding .onboarding-benefits li{padding:6px 0;color:var(--text-on-panel, #495057);font-size:.9rem}.stripe-onboarding .onboarding-benefits li:before{content:none}.stripe-onboarding .onboarding-actions{display:flex;flex-direction:column;align-items:center;gap:12px;margin-bottom:20px}.stripe-onboarding .btn-lg{padding:12px 32px;font-size:1rem;font-weight:600}.stripe-onboarding .btn-primary{background:#635bff;border-color:#635bff;color:#fff}.stripe-onboarding .btn-primary:hover:not(:disabled){background:#5147e5;border-color:#5147e5}.stripe-onboarding .btn-primary:disabled{opacity:.7;cursor:not-allowed}.stripe-onboarding .btn-link{color:var(--text-tertiary, #6c757d);font-size:.875rem;text-decoration:none}.stripe-onboarding .btn-link:hover:not(:disabled){color:var(--text-on-panel, #495057);text-decoration:underline}.stripe-onboarding .onboarding-security-note{display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--surface-secondary, #f8f9fa);border-radius:6px;font-size:.8rem;color:var(--text-tertiary, #6c757d);max-width:500px}.stripe-onboarding .security-icon{font-size:1rem;flex-shrink:0}@media(max-width:768px){.stripe-onboarding,.stripe-connect-status{padding:16px}.stripe-onboarding .onboarding-info{max-width:100%}.stripe-onboarding .onboarding-info h4{font-size:1.25rem}.stripe-onboarding .btn-lg{padding:12px 24px;font-size:.95rem;width:100%}.stripe-onboarding .btn-secondary{width:100%}.stripe-onboarding .onboarding-security-note{max-width:100%;flex-direction:column;text-align:center}.connect-status-header{flex-direction:column;align-items:flex-start;gap:12px}.connect-status-content{padding:16px}.connect-capabilities{flex-direction:column;gap:12px}.connect-actions{flex-direction:column}.connect-actions .btn{width:100%}}.rate-settings{background:var(--card-background);border-radius:8px;box-shadow:0 2px 4px #0000001a;width:100%;max-width:100%;box-sizing:border-box}.rate-settings.loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:48px;color:var(--text-tertiary, #6c757d);min-height:200px}.rate-settings-header{margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--card-divider, #e9ecef)}.rate-settings-header h3{margin:0 0 8px;color:var(--text-primary, #212529);font-size:1.25rem}.rate-settings-description{margin:0;color:var(--text-tertiary, #6c757d);font-size:.875rem}.rate-settings-success{display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--alert-success-bg, #d4edda);border:1px solid var(--success-border, #c3e6cb);border-radius:6px;color:var(--success-text, #155724);margin-bottom:20px;font-size:.875rem}.rate-settings-success .success-icon{font-weight:700}.rate-settings-error{display:flex;align-items:center;gap:.5rem;padding:12px 16px;background:var(--error-bg, #fef2f2);border:1px solid var(--error-border, #fecaca);border-radius:6px;color:var(--error-text, #991b1b);font-size:.875rem;font-weight:500;margin-bottom:20px}.rate-settings-error .error-icon{flex-shrink:0}.rate-settings-error .dismiss-error{margin-left:auto;background:none;border:none;color:var(--error-text, #991b1b);font-size:1.25rem;cursor:pointer;padding:0;line-height:1}.rate-settings-error .dismiss-error:hover{color:var(--error-color, #dc2626)}.rate-sections-container{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:16px;min-width:0}.rate-section{padding:20px;background:var(--card-background);border-radius:8px;border:1px solid var(--card-border);display:flex;flex-direction:column;color:var(--text-primary);min-width:0;box-sizing:border-box;overflow:hidden}.rate-section:last-of-type{margin-bottom:0}.rate-section-header{margin-bottom:16px}.rate-section-header h4{margin:0 0 4px;color:var(--text-primary, #495057);font-size:1rem;font-weight:600}.rate-section-description{margin:0;color:var(--text-tertiary, #6c757d);font-size:.8125rem}.rate-display{display:flex;align-items:center;justify-content:space-between;padding:16px;background:var(--body-background);border-radius:6px;border:1px solid var(--card-border)}.rate-value{display:flex;align-items:baseline;gap:4px}.rate-amount{font-size:1.5rem;font-weight:700;color:var(--accent-orange)}.rate-period{font-size:.875rem;color:var(--text-tertiary, #6c757d)}.rate-not-configured{display:flex;align-items:center;gap:8px;color:var(--warning-text, #856404);font-size:.875rem}.rate-not-configured .not-configured-icon{font-size:1rem}.rate-edit-form{padding:16px;background:var(--body-background);border-radius:6px;border:1px solid var(--card-border)}.rate-edit-form.inline{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.rate-edit-form.add-form{margin-top:16px}.rate-input-group{margin-bottom:16px}.rate-edit-form.inline .rate-input-group{margin-bottom:0}.rate-input-group label{display:block;margin-bottom:6px;color:var(--text-on-panel, #495057);font-size:.875rem;font-weight:500}.rate-input-wrapper{display:flex;align-items:center;border:1px solid var(--border-color);border-radius:6px;background:var(--input-bg, var(--surface-hover));overflow:hidden}.rate-input-wrapper:focus-within{outline:none;border-color:var(--accent-orange);box-shadow:0 0 0 3px #f4a26126}.currency-prefix{padding:8px 12px;background:var(--surface-hover);color:var(--text-secondary);font-weight:500;border-right:1px solid var(--border-color)}.rate-input{flex:1;padding:8px 12px;border:none;font-size:.875rem;min-width:80px;background:transparent;color:var(--text-primary)}.rate-suffix{padding:8px 12px;color:var(--text-secondary);font-size:.875rem}.currency-select,.trainer-select{width:100%;padding:8px 32px 8px 12px;border:1px solid var(--input-border, #ced4da);border-radius:4px;font-size:.875rem;background-color:var(--input-bg, white);color:var(--text-primary, #212529);cursor:pointer;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6' fill='none'%3e%3cpath d='M1 1L5 5L9 1' stroke='%239ca3af' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 12px center}.currency-select:focus,.trainer-select:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.rate-form-actions{display:flex;gap:8px;margin-top:16px}.rate-edit-form.inline .rate-form-actions{margin-top:0;margin-left:auto}.trainer-rates-list{display:flex;flex-direction:column;gap:12px}.trainer-rate-item{display:flex;align-items:center;justify-content:space-between;padding:16px;background:var(--body-background);border-radius:6px;border:1px solid var(--card-border);gap:16px}.trainer-info{flex:1;min-width:0}.trainer-name{font-weight:500;color:var(--text-primary, #212529);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trainer-rate-value{display:flex;align-items:baseline;gap:4px;flex-shrink:0}.trainer-rate-value .rate-amount{font-size:1.125rem}.no-trainer-rates{padding:24px;text-align:center;background:var(--card-background, white);border-radius:6px;border:1px dashed var(--card-divider, #dee2e6)}.no-trainer-rates p{margin:0;color:var(--text-tertiary, #6c757d);font-size:.875rem}.add-trainer-rate{margin-top:16px}.add-trainer-btn{width:100%;padding:12px;border-style:dashed}.all-trainers-configured{margin:8px 0 0;color:var(--text-tertiary, #6c757d);font-size:.8125rem;text-align:center}.rate-settings-note{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--info-bg);border:1px solid var(--info-border);border-radius:6px;color:var(--info-text);font-size:.8125rem}.rate-settings-note .note-icon{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;font-size:.875rem;line-height:1}.rate-settings-note p{margin:0;line-height:1.45}@media(max-width:768px){.rate-settings{padding:16px}.rate-sections-container{grid-template-columns:1fr;gap:16px}.rate-section{padding:16px}.rate-display{flex-direction:column;align-items:flex-start;gap:12px}.rate-display .btn{width:100%}.rate-edit-form.inline{flex-direction:column;align-items:stretch}.rate-edit-form.inline .trainer-name,.rate-edit-form.inline .rate-input-group{margin-bottom:12px}.rate-edit-form.inline .rate-form-actions{margin-left:0;width:100%}.rate-edit-form.inline .rate-form-actions .btn{flex:1}.trainer-rate-item{flex-direction:column;align-items:stretch;gap:12px}.trainer-rate-item .btn{width:100%}.rate-form-actions{flex-direction:column}.rate-form-actions .btn{width:100%}}.rate-input-wrapper.has-error{border-color:var(--error-color, #dc3545)}.rate-input-wrapper.has-error:focus-within{border-color:var(--error-color, #dc3545);box-shadow:0 0 0 3px #dc354526}.rate-input.input-error{color:var(--error-color, #dc3545)}.field-error{display:block;margin-top:6px;font-size:.8rem;color:#dc3545;font-weight:500}.rate-input-wrapper.has-success{border-color:#28a745}.rate-input-wrapper.has-success:focus-within{border-color:#28a745;box-shadow:0 0 0 3px #28a74526}.rate-input:focus{outline:none}.rate-input-wrapper:focus-within{border-color:var(--accent-orange);box-shadow:0 0 0 3px #f4a26126}.rate-edit-form.inline .field-error{position:absolute;bottom:-20px;left:0;white-space:nowrap}.rate-edit-form.inline .rate-input-group{position:relative}.rate-edit-form.inline{padding-bottom:24px}.invoice-summary-badges{display:flex;gap:12px;flex-wrap:wrap}.summary-badge{padding:4px 12px;border-radius:16px;font-size:.75rem;font-weight:600}.summary-badge.pending{background:#fff3cd;color:#856404}.summary-badge.paid{background:#d4edda;color:#155724}.summary-badge.overdue{background:#f8d7da;color:#721c24}.invoices-section .search-filter-results{margin-top:0;margin-bottom:1rem;padding-top:0;border-top:none}@media(max-width:768px){.invoice-summary-badges{width:100%;justify-content:flex-start}.section-header{flex-direction:column;align-items:flex-start;gap:12px}}.invoice-detail{background:var(--card-background, #fff);border-radius:12px;padding:24px;box-shadow:0 1px 3px #00000014;max-width:900px;margin:0 auto}.invoice-detail.loading,.invoice-detail.error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;min-height:300px;color:var(--text-secondary, #6b7280)}.invoice-detail-header{margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.invoice-detail-header .back-btn{padding:0;margin-bottom:16px;font-size:.875rem;color:var(--accent-orange)}.header-top-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.header-top-row .header-left{display:flex;align-items:center;gap:12px}.header-top-row .header-left h2{margin:0;font-size:1.5rem;color:var(--text-primary, #1f2937)}.header-top-row .header-amount{font-size:1.75rem;font-weight:700;color:var(--accent-orange)}.header-meta-strip{display:flex;flex-wrap:wrap;gap:6px 16px;margin-bottom:16px}.header-meta-strip .meta-item{display:flex;align-items:center;gap:6px;font-size:13px}.header-meta-strip .meta-label{color:var(--text-tertiary, #9ca3af);font-weight:500}.header-meta-strip .meta-value{color:var(--text-primary, #1f2937);font-weight:600}.header-meta-strip .meta-value.overdue{color:var(--error-color)}.header-actions{display:flex;flex-wrap:wrap;gap:8px}.invoice-secondary-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}.invoice-secondary-col{display:flex;flex-direction:column;gap:16px}@media(max-width:768px){.invoice-secondary-grid{grid-template-columns:1fr}}.invoice-section{margin-bottom:24px;padding:20px;background:var(--surface-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:12px}.invoice-section h3{margin:0 0 16px;font-size:1rem;font-weight:600;color:var(--text-primary, #1f2937)}.line-items-table{background:var(--card-background, #fff);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;overflow:hidden}.line-items-header{display:grid;grid-template-columns:1fr 80px 120px 120px;gap:16px;padding:12px 16px;background:var(--surface-secondary, #f9fafb);font-weight:600;font-size:.75rem;text-transform:uppercase;color:var(--text-secondary, #6b7280);letter-spacing:.5px}.line-item-row{display:grid;grid-template-columns:1fr 80px 120px 120px;gap:16px;padding:12px 16px;border-bottom:1px solid var(--border-primary, #e5e7eb);font-size:.875rem;color:var(--text-primary, #1f2937)}.line-item-row:last-child{border-bottom:none}.line-item-row.discount{background:var(--success-bg, #f0fdf4)}.line-item-row.late_fee{background:var(--error-bg, #fef2f2)}.line-item-row .col-description{display:flex;align-items:center;gap:8px}.line-item-row .col-quantity,.line-item-row .col-unit-price,.line-item-row .col-amount{text-align:right}.line-item-row .col-amount.discount{color:var(--success-color)}.item-tag{font-size:.625rem;padding:2px 6px;border-radius:12px;font-weight:600;text-transform:uppercase}.item-tag.late-fee{background:var(--error-bg, #fef2f2);color:var(--error-text, #991b1b)}.item-tag.discount{background:var(--success-bg, #f0fdf4);color:var(--success-text, #166534)}.invoice-totals{margin-top:16px;padding-top:16px;border-top:1px solid var(--border-primary, #e5e7eb)}.invoice-totals .total-row{display:flex;justify-content:flex-end;gap:24px;padding:6px 16px;font-size:.875rem}.invoice-totals .total-row .label{color:var(--text-secondary, #6b7280);min-width:150px;text-align:right}.invoice-totals .total-row .value{min-width:100px;text-align:right;font-weight:500;color:var(--text-primary, #1f2937)}.invoice-totals .total-row.discount .value{color:var(--success-color)}.invoice-totals .total-row.late-fee .value{color:var(--error-color)}.invoice-totals .total-row.grand-total{font-size:1rem;font-weight:700;padding-top:12px;margin-top:8px;border-top:2px solid var(--border-primary, #e5e7eb)}.invoice-totals .total-row.grand-total .value{color:var(--accent-orange)}.invoice-totals .total-row.refunded .value{color:var(--text-secondary, #6b7280)}.payment-date-row{font-size:.875rem;color:var(--text-primary, #1f2937);font-weight:500;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.payment-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.payment-grid-cell{display:flex;flex-direction:column;gap:2px}.payment-grid-cell.highlight{background:var(--info-bg, #eff6ff);padding:8px 10px;border-radius:8px}.payment-grid-label{font-size:.75rem;font-weight:600;color:var(--text-tertiary, #9ca3af);text-transform:uppercase;letter-spacing:.3px}.payment-grid-value{font-size:.875rem;font-weight:600;color:var(--text-primary, #1f2937)}.payment-grid-value.mono{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.75rem;color:var(--text-tertiary, #9ca3af);word-break:break-all}.payment-grid-cell.highlight .payment-grid-value{color:var(--accent-orange);font-weight:700}.payment-transaction{display:flex;flex-direction:column;gap:2px;padding-top:12px;border-top:1px solid var(--border-primary, #e5e7eb)}.payment-info,.void-info,.dispute-info{display:flex;flex-direction:column;gap:8px}.payment-info .info-row,.void-info .info-row,.dispute-info .info-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--border-primary, #e5e7eb);font-size:.875rem}.payment-info .info-row:last-child,.void-info .info-row:last-child,.dispute-info .info-row:last-child{border-bottom:none}.payment-info .info-row .label,.void-info .info-row .label,.dispute-info .info-row .label{color:var(--text-secondary, #6b7280)}.payment-info .info-row .value,.void-info .info-row .value,.dispute-info .info-row .value{color:var(--text-primary, #1f2937);font-weight:500}.payment-info .info-row .value.mono,.void-info .info-row .value.mono,.dispute-info .info-row .value.mono{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.75rem;color:var(--text-tertiary, #9ca3af)}.payment-info .info-row.highlight{background:var(--info-bg, #eff6ff);margin:8px -16px -8px;padding:12px 16px;border-radius:0 0 8px 8px}.payment-info .info-row.highlight .value{color:var(--accent-orange);font-weight:700}.refund-list{display:flex;flex-direction:column;gap:12px}.refund-item{background:var(--card-background, #fff);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;padding:16px}.refund-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.refund-amount{font-size:1.125rem;font-weight:600;color:var(--error-color)}.refund-date{font-size:.875rem;color:var(--text-secondary, #6b7280)}.refund-details .info-row{display:flex;gap:12px;padding:4px 0;font-size:.875rem}.refund-details .info-row .label{color:var(--text-secondary, #6b7280);min-width:100px}.refund-details .info-row .value{color:var(--text-primary, #1f2937)}.refund-details .info-row .value.mono{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.75rem;color:var(--text-tertiary, #9ca3af)}.dispute-section{background:var(--error-bg, #fef2f2);border-color:var(--error-border, #fecaca)}.dispute-status{margin-bottom:12px}.attempt-list{display:flex;flex-direction:column;gap:12px}.attempt-item{background:var(--card-background, #fff);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;padding:16px}.attempt-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.attempt-number{font-weight:600;color:var(--text-primary, #1f2937)}.attempt-details .info-row{display:flex;gap:12px;padding:4px 0;font-size:.875rem}.attempt-details .info-row .label{color:var(--text-secondary, #6b7280);min-width:120px}.attempt-details .info-row .value{color:var(--text-primary, #1f2937)}.attempt-details .info-row .value.mono{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.75rem;color:var(--text-tertiary, #9ca3af);word-break:break-all}.attempt-details .info-row.attempt-failure .value{color:var(--error-text, #b91c1c);font-weight:500}.attempt-details .info-row.attempt-failure .attempt-failure__code{color:var(--text-tertiary, #9ca3af);font-weight:400;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.75rem}.attempt-failure-history{margin-top:8px;font-size:.75rem}.attempt-failure-history summary{cursor:pointer;color:var(--text-secondary, #6b7280)}.attempt-failure-history ul{margin:8px 0 0;padding-left:16px;color:var(--text-secondary, #6b7280)}.no-attempts{text-align:center;padding:24px;color:var(--text-secondary, #6b7280);font-style:italic}.no-attempts p{margin:0}.void-section{background:var(--surface-secondary, #f9fafb);border-color:var(--border-primary, #e5e7eb)}.invoice-notes{background:var(--card-background, #fff);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;padding:16px}.invoice-notes p{margin:0;color:var(--text-primary, #1f2937);font-size:.875rem;line-height:1.6;white-space:pre-wrap}@media(max-width:768px){.invoice-detail{padding:16px}.header-top-row{flex-direction:column;align-items:flex-start;gap:8px}.header-top-row .header-amount{font-size:1.5rem}.line-items-header,.line-item-row{grid-template-columns:1fr 60px 80px 80px;gap:8px;font-size:.75rem}.invoice-totals .total-row{gap:12px}.invoice-totals .total-row .label{min-width:100px}.invoice-totals .total-row .value{min-width:80px}.refund-header,.attempt-header{flex-direction:column;align-items:flex-start;gap:8px}.refund-details .info-row,.attempt-details .info-row{flex-direction:column;gap:4px}.refund-details .info-row .label,.attempt-details .info-row .label{min-width:auto}}@media(max-width:480px){.line-items-header,.line-item-row{grid-template-columns:1fr 50px 70px}.line-items-header .col-quantity,.line-item-row .col-quantity{display:none}}.modal .searchable-select{position:relative}.modal .searchable-select input{width:100%;padding:10px 12px;border:1px solid var(--border-primary, #ced4da);border-radius:6px;font-size:.875rem;background:var(--input-bg, white);color:var(--text-primary, #374151);transition:border-color .2s ease,box-shadow .2s ease}.modal .searchable-select input:focus{outline:none;border-color:var(--primary, #007bff);box-shadow:0 0 0 3px #007bff1a}.modal .searchable-select input.error{border-color:#dc3545}.modal .searchable-select input:disabled{background:var(--surface-disabled, #e9ecef);cursor:not-allowed}.modal .searchable-select-dropdown{position:absolute;top:100%;left:0;right:0;max-height:200px;overflow-y:auto;background:var(--modal-bg, white);border:1px solid var(--border-primary, #e9ecef);border-radius:6px;box-shadow:0 4px 12px #00000026;z-index:100;margin-top:4px}.modal .searchable-select-option{display:flex;flex-direction:column;padding:10px 12px;cursor:pointer;transition:background-color .15s ease}.modal .searchable-select-option:hover{background:var(--hover-bg, #f3f4f6)}.modal .searchable-select-option.selected{background:var(--primary-light, #eff6ff)}.modal .searchable-select-option .client-name{font-weight:500;color:var(--text-primary, #374151)}.modal .searchable-select-option .client-pending-badge{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:10px;font-size:11px;font-weight:500;background:var(--warning-bg, #fffbeb);color:var(--warning-text, #92400e)}.modal .searchable-select-option .client-email{font-size:.75rem;color:var(--text-secondary, #6b7280);margin-top:2px}.modal .searchable-select-empty{padding:12px;text-align:center;color:var(--text-secondary, #6b7280);font-style:italic}.modal .loading-clients{padding:12px;color:var(--text-secondary, #6b7280);font-style:italic}.line-items-container{display:flex;flex-direction:column;gap:12px}.line-items-container .line-item-row{display:flex;gap:12px;align-items:flex-start}.line-items-container .line-item-description{flex:1;min-width:0}.line-items-container .line-item-description input{width:100%;padding:10px 12px;border:1px solid var(--border-primary, #ced4da);border-radius:6px;font-size:.875rem;background:var(--input-bg, white);color:var(--text-primary, #374151);transition:border-color .2s ease}.line-items-container .line-item-description input:focus{outline:none;border-color:var(--primary, #007bff);box-shadow:0 0 0 3px #007bff1a}.line-items-container .line-item-description input.error{border-color:#dc3545}.line-items-container .line-item-amount{width:140px;flex-shrink:0}.line-items-container .amount-input-wrapper{position:relative;display:flex;align-items:center}.line-items-container .amount-input-wrapper .currency-symbol{position:absolute;left:12px;color:var(--text-secondary, #6b7280);font-size:.875rem;pointer-events:none}.line-items-container .amount-input-wrapper input{width:100%;padding:10px 12px 10px 28px;border:1px solid var(--border-primary, #ced4da);border-radius:6px;font-size:.875rem;background:var(--input-bg, white);color:var(--text-primary, #374151);text-align:right;transition:border-color .2s ease}.line-items-container .amount-input-wrapper input:focus{outline:none;border-color:var(--primary, #007bff);box-shadow:0 0 0 3px #007bff1a}.line-items-container .amount-input-wrapper input.error{border-color:#dc3545}.line-items-container .line-item-remove{width:32px;height:38px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border-primary, #e9ecef);border-radius:6px;color:var(--text-secondary, #6b7280);font-size:1.25rem;cursor:pointer;transition:all .15s ease;flex-shrink:0}.line-items-container .line-item-remove:hover{background:var(--btn-danger-hover-bg);border-color:var(--btn-danger-color);color:var(--btn-danger-color)}.line-items-container .line-item-remove:disabled{opacity:.5;cursor:not-allowed}.add-line-item-btn{align-self:flex-start;margin-top:4px}.invoice-total-display{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:16px;background:var(--surface-secondary, #f8f9fa);border-radius:8px;margin-bottom:16px}.invoice-total-display .total-label{font-weight:500;color:var(--text-secondary, #6b7280)}.invoice-total-display .total-amount{font-size:1.5rem;font-weight:700;color:var(--primary, #007bff)}.modal .form-group{margin-bottom:20px}.modal .form-group label{display:block;margin-bottom:8px;font-weight:500;color:var(--text-primary, #374151);font-size:.875rem}.modal .form-group input[type=date],.modal .form-group textarea{width:100%;padding:10px 12px;border:1px solid var(--border-primary, #ced4da);border-radius:6px;font-size:.875rem;background:var(--input-bg, white);color:var(--text-primary, #374151);transition:border-color .2s ease}.modal .form-group input[type=date]:focus,.modal .form-group textarea:focus{outline:none;border-color:var(--primary, #007bff);box-shadow:0 0 0 3px #007bff1a}.modal .form-group input.error,.modal .form-group textarea.error{border-color:#dc3545}.modal .form-group textarea{resize:vertical;min-height:80px}.modal .error-text{display:block;margin-top:4px;font-size:.75rem;color:#dc3545}.modal .form-group input[type=date],.modal .form-group textarea{border-color:var(--form-input-border-on-dark)}@media(max-width:768px){.line-items-container .line-item-row{flex-wrap:wrap}.line-items-container .line-item-description{flex:1 1 100%}.line-items-container .line-item-amount{flex:1;width:auto;min-width:100px}.line-items-container .line-item-remove{width:38px}.invoice-total-display{flex-direction:column;gap:4px;text-align:center}}.void-invoice-details{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:16px;margin-bottom:16px}.void-invoice-details.confirmation{background:#fff;border:2px solid #e9ecef}.void-invoice-details .detail-row{display:flex;justify-content:space-between;align-items:flex-start;padding:8px 0;border-bottom:1px solid #e9ecef}.void-invoice-details .label{color:#6c757d;font-size:.875rem;font-weight:500}.void-invoice-details .value{color:#212529;font-weight:500;text-align:right;max-width:60%}.void-invoice-details .value.reason{font-style:italic;color:#495057;word-break:break-word}.void-warning-message{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;margin-bottom:16px}.void-warning-message .warning-icon{font-size:1.5rem;flex-shrink:0}.confirmation-summary .confirmation-text{margin:0 0 16px;color:#495057;font-size:.9375rem}.form-group textarea.error{border-color:#dc3545}.form-group textarea.error:focus{border-color:#dc3545;box-shadow:0 0 0 3px #dc35451a}.refund-invoice-details.confirmation{background:#fff;border:2px solid #007bff}.refund-invoice-details .detail-row.highlight{background:#e7f3ff;margin:8px -16px;padding:12px 16px;border-radius:4px;border-bottom:none}.refund-invoice-details .value.refunded{color:#dc3545;font-weight:600}.refund-invoice-details .value.refund-amount{color:#28a745;font-size:1.25rem}.refund-invoice-details .value.reason{max-width:60%;text-align:right;word-wrap:break-word}.quick-action-buttons .btn-outline{background:var(--card-background, white);border:1px solid var(--input-border, #ced4da);color:var(--text-on-panel, #495057);padding:8px 16px;font-size:.875rem;border-radius:6px;transition:all .2s ease}.quick-action-buttons .btn-outline:hover:not(:disabled){border-color:var(--accent-orange, #007bff);color:var(--accent-orange, #007bff);background:var(--surface-hover, #f8f9ff)}.quick-action-buttons .btn-outline.active{border-color:var(--accent-orange, #007bff);background:var(--accent-orange, #007bff);color:var(--text-inverse, white)}.currency-symbol{position:absolute;left:12px;color:#6c757d;font-size:1rem;font-weight:500;z-index:1}.currency-input{padding-left:28px!important;font-size:1.125rem;font-weight:500}.currency-input::-webkit-inner-spin-button,.currency-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.currency-input[type=number]{-moz-appearance:textfield}.input-hint{display:block;margin-top:4px;font-size:.75rem;color:#6c757d}.refund-info-message{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#e7f3ff;border:1px solid #b8daff;border-radius:6px;margin-bottom:16px}.refund-warning-message{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;margin-top:16px}.void-invoice-details.confirmation{background:#fff;border:2px solid #dc3545}.void-invoice-details .value.reason{max-width:60%;text-align:right;word-wrap:break-word}.void-warning-message{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;margin-bottom:16px}.confirmation-summary{margin-bottom:16px}.modal.modal-sm{max-width:450px}.modal.modal-md{max-width:550px}.modal.modal-lg{max-width:700px}.form-control.error,textarea.error{border-color:var(--error-color, #ef4444)}.form-control.error:focus,textarea.error:focus{border-color:var(--error-color, #ef4444);box-shadow:0 0 0 3px var(--error-bg, rgba(254, 107, 52, .1))}.btn-primary{background:var(--primary-color, #FE6B34);border-color:var(--primary-color, #FE6B34);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover, #E55A2B);border-color:var(--primary-hover, #E55A2B)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.send-reminder-wrapper{display:inline-flex;flex-direction:column;align-items:flex-start;gap:4px}.send-reminder-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:.875rem;font-weight:500;border-radius:4px;transition:all .2s ease;white-space:nowrap}.send-reminder-btn:disabled{opacity:.6;cursor:not-allowed}.send-reminder-btn.btn-success{background:#28a745;border-color:#28a745;color:#fff}.send-reminder-btn.btn-success:hover:not(:disabled){background:#1e7e34;border-color:#1e7e34}.reminder-spinner{display:inline-flex;align-items:center;justify-content:center}.reminder-spinner .spinner-icon{animation:reminder-spin 1s linear infinite}@keyframes reminder-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.reminder-error-message{display:flex;align-items:center;gap:6px;padding:6px 10px;background:#f8d7da;border:1px solid #f5c6cb;border-radius:4px;color:#721c24;font-size:.75rem;margin-top:4px}.reminder-error-message svg{flex-shrink:0}.reminder-error-message .error-dismiss{background:none;border:none;color:#721c24;font-size:1rem;line-height:1;padding:0 2px;margin-left:auto;cursor:pointer;opacity:.7;transition:opacity .2s}.reminder-error-message .error-dismiss:hover{opacity:1}.reminder-disabled-hint{font-size:.7rem;color:#6c757d;font-style:italic}.send-reminder-icon-wrapper{position:relative;display:inline-flex}.send-reminder-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;color:#6c757d;cursor:pointer;transition:all .2s ease}.send-reminder-icon-btn:hover:not(:disabled){background:#e9ecef;color:#495057;border-color:#dee2e6}.send-reminder-icon-btn:disabled{opacity:.5;cursor:not-allowed}.send-reminder-icon-btn.success{background:#d4edda;border-color:#c3e6cb;color:#28a745}.send-reminder-icon-btn.error{background:#f8d7da;border-color:#f5c6cb;color:#dc3545}.reminder-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:8px;padding:6px 10px;background:#212529;color:#fff;font-size:.75rem;border-radius:4px;white-space:nowrap;z-index:1000;pointer-events:none}.reminder-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#212529}.reminder-tooltip.success{background:#28a745}.reminder-tooltip.success:after{border-top-color:#28a745}.reminder-tooltip.error{background:#dc3545}.reminder-tooltip.error:after{border-top-color:#dc3545}@media(max-width:768px){.send-reminder-btn{padding:8px 12px;font-size:.8rem}.send-reminder-icon-btn{width:36px;height:36px}}.promo-invoice-details{background:#f8f9fa;border-radius:8px;padding:16px;margin-bottom:20px;border:1px solid #e9ecef}.promo-invoice-details.confirmation{background:#f0f7ff;border-color:#b8daff}.promo-invoice-details .detail-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #e9ecef}.promo-invoice-details .detail-row:last-child{border-bottom:none}.promo-invoice-details .detail-row.highlight{background:#e9ecef;margin:8px -16px -16px;padding:12px 16px;border-radius:0 0 8px 8px;border-bottom:none}.promo-invoice-details.confirmation .detail-row.highlight{background:#cce5ff}.promo-invoice-details .label{color:#6c757d;font-size:.875rem}.promo-invoice-details .value{font-weight:500;color:#212529}.promo-invoice-details .value.amount{color:#007bff;font-size:1.125rem;font-weight:600}.promo-invoice-details .value.promo-code{font-family:monospace;background:#e9ecef;padding:4px 8px;border-radius:4px;font-weight:600;color:#495057}.promo-invoice-details .value.discount-amount{color:#28a745;font-weight:600}.promo-invoice-details .value.new-total{color:#007bff;font-size:1.125rem;font-weight:700}.promo-invoice-details .discount-detail{font-size:.75rem;color:#6c757d;margin-left:8px;font-weight:400}.promo-code-input-wrapper{display:flex;gap:12px;align-items:stretch}.promo-code-input{flex:1;text-transform:uppercase;font-family:monospace;font-size:1rem;letter-spacing:1px}.promo-code-input::placeholder{text-transform:none;font-family:inherit;letter-spacing:normal}.validate-btn{white-space:nowrap;min-width:100px}.promo-validation-result{border-radius:8px;padding:16px;margin-bottom:20px}.promo-validation-result.success{background:#d4edda;border:1px solid #c3e6cb}.validation-header{display:flex;align-items:center;gap:8px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #c3e6cb}.validation-header .success-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:#28a745;color:#fff;border-radius:50%;font-size:.875rem;font-weight:700}.validation-header .validation-title{font-weight:600;color:#155724;font-size:1rem}.discount-preview{display:flex;flex-direction:column;gap:8px}.discount-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0}.discount-row .label{color:#155724;font-size:.875rem}.discount-row .value{font-weight:500;color:#155724}.discount-row .value.discount-value{font-weight:600;color:#28a745}.discount-row .value.discount-amount{color:#28a745;font-weight:600}.discount-row.total{border-top:1px solid #c3e6cb;margin-top:8px;padding-top:12px}.discount-row.total .label{font-weight:600}.discount-row.total .value.new-total{font-size:1.125rem;font-weight:700;color:#155724}.promo-info-message{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#e7f3ff;border:1px solid #b8daff;border-radius:8px;margin-top:16px}.promo-info-message .info-icon{font-size:1.25rem;flex-shrink:0}.promo-info-message .info-content p{margin:0;color:#004085;font-size:.875rem;line-height:1.5}.refund-invoice-details{background:#f8f9fa;border-radius:8px;padding:16px;margin-bottom:20px;border:1px solid #e9ecef}.refund-invoice-details.confirmation{background:#fff3cd;border-color:#ffeaa7}.refund-invoice-details .detail-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #e9ecef}.refund-invoice-details .detail-row:last-child{border-bottom:none}.refund-invoice-details .detail-row.highlight{background:#e9ecef;margin:8px -16px -16px;padding:12px 16px;border-radius:0 0 8px 8px;border-bottom:none}.refund-invoice-details.confirmation .detail-row.highlight{background:#ffeaa7}.refund-invoice-details .label{color:#6c757d;font-size:.875rem}.refund-invoice-details .value{font-weight:500;color:#212529}.refund-invoice-details .value.amount{color:#007bff;font-size:1.125rem;font-weight:600}.refund-invoice-details .value.refunded{color:#dc3545}.refund-invoice-details .value.refund-amount{color:#dc3545;font-size:1.25rem;font-weight:700}.refund-invoice-details .value.reason{max-width:200px;text-align:right;word-wrap:break-word}.refund-quick-actions{margin-bottom:20px}.refund-quick-actions label{display:block;margin-bottom:8px;color:#495057;font-weight:500;font-size:.875rem}.quick-action-buttons{display:flex;gap:8px;flex-wrap:wrap}.quick-action-buttons .btn{flex:1;min-width:80px}.quick-action-buttons .btn.active{background:#007bff;border-color:#007bff;color:#fff}.currency-input-wrapper{position:relative;display:flex;align-items:center}.currency-symbol{position:absolute;left:12px;color:#6c757d;font-weight:500;z-index:1}.currency-input{padding-left:28px!important}.refund-info-message{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#e7f3ff;border:1px solid #b8daff;border-radius:8px;margin-top:16px}.refund-info-message .info-icon{font-size:1.25rem;flex-shrink:0}.refund-info-message .info-content p{margin:0;color:#004085;font-size:.875rem;line-height:1.5}.refund-warning-message{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;margin-top:16px}.refund-warning-message .warning-icon{font-size:1.25rem;flex-shrink:0}.refund-warning-message .warning-content{flex:1}.refund-warning-message .warning-content strong{display:block;color:#856404;margin-bottom:4px}.refund-warning-message .warning-content p{margin:0;color:#856404;font-size:.875rem;line-height:1.5}.void-invoice-details{background:#f8f9fa;border-radius:8px;padding:16px;margin-bottom:20px;border:1px solid #e9ecef}.void-invoice-details.confirmation{background:#f8d7da;border-color:#f5c6cb}.void-invoice-details .detail-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #e9ecef}.void-invoice-details .detail-row:last-child{border-bottom:none}.void-invoice-details .label{color:#6c757d;font-size:.875rem}.void-invoice-details .value{font-weight:500;color:#212529}.void-invoice-details .value.amount{color:#007bff;font-size:1.125rem;font-weight:600}.void-invoice-details .value.reason{max-width:200px;text-align:right;word-wrap:break-word}.void-warning-message{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#fff3cd;border:1px solid #ffeaa7;border-radius:8px;margin-bottom:20px}.void-warning-message.critical{background:#f8d7da;border-color:#f5c6cb}.void-warning-message .warning-icon{font-size:1.25rem;flex-shrink:0}.void-warning-message .warning-content{flex:1}.void-warning-message .warning-content strong{display:block;color:#856404;margin-bottom:4px}.void-warning-message.critical .warning-content strong{color:#721c24}.void-warning-message .warning-content p{margin:0;color:#856404;font-size:.875rem;line-height:1.5}.void-warning-message.critical .warning-content p{color:#721c24}.confirmation-summary{text-align:left}.confirmation-text{margin:0 0 16px;color:#495057;font-size:.9375rem}.input-hint{display:block;margin-top:6px;font-size:.75rem;color:#6c757d}.form-control.error{border-color:#dc3545}.form-control.error:focus{border-color:#dc3545;box-shadow:0 0 0 3px #dc35451a}.error-text{display:block;margin-top:6px;font-size:.75rem;color:#dc3545}@media(max-width:576px){.promo-code-input-wrapper{flex-direction:column}.validate-btn{width:100%}.discount-row{flex-direction:column;align-items:flex-start;gap:4px}.discount-row .value{font-size:1rem}}.client-balances-section{background:#fff;border-radius:8px;padding:24px;box-shadow:0 2px 4px #0000001a;width:100%;max-width:100%;box-sizing:border-box}.client-balances-section.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:300px;color:#6c757d}.client-balances-section.error{padding:24px}.client-balances-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.client-balances-summary .summary-card{background:#f8f9fa;border-radius:8px;padding:20px;border:1px solid #e9ecef;text-align:center}.client-balances-summary .summary-card.total-outstanding{background:linear-gradient(135deg,#fff5f5,#fed7d7);border-color:#feb2b2}.client-balances-summary .summary-card.total-clients{background:linear-gradient(135deg,#f0fff4,#c6f6d5);border-color:#9ae6b4}.client-balances-summary .summary-card.active-packages{background:linear-gradient(135deg,#ebf8ff,#bee3f8);border-color:#90cdf4}.client-balances-summary .summary-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#6c757d;margin-bottom:8px}.client-balances-summary .summary-value{font-size:1.75rem;font-weight:700;color:#212529;margin-bottom:4px}.client-balances-summary .summary-card.total-outstanding .summary-value{color:#c53030}.client-balances-summary .summary-card.total-clients .summary-value{color:#276749}.client-balances-summary .summary-card.active-packages .summary-value{color:#2b6cb0}.client-balances-summary .summary-subtext{font-size:.75rem;color:#6c757d}.client-balances-filters{margin-bottom:16px}.client-balances-filters .checkbox-group{display:flex;align-items:center}.client-balances-filters .checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.875rem;color:#495057}.client-balances-filters .checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer}.client-balances-table-container{overflow-x:auto;margin-top:16px}.client-balances-table{width:100%;border-collapse:collapse;font-size:.875rem}.client-balances-table thead{background:#f8f9fa}.client-balances-table th{padding:12px 16px;text-align:left;font-weight:600;color:#495057;border-bottom:2px solid #e9ecef;white-space:nowrap}.client-balances-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s ease}.client-balances-table th.sortable:hover{background:#e9ecef}.client-balances-table th.numeric{text-align:right}.client-balances-table th.actions-column{text-align:center;width:140px}.client-balances-table td{padding:12px 16px;border-bottom:1px solid #f8f9fa;color:#495057;vertical-align:middle}.client-balances-table td.numeric{text-align:right;font-family:SF Mono,Monaco,Inconsolata,Fira Mono,Droid Sans Mono,monospace}.client-balances-table td.actions-column{text-align:center}.client-balances-table tbody tr{transition:background-color .15s ease}.client-balances-table tbody tr:hover{background:var(--table-row-hover)}.client-balances-table tbody tr.has-balance{background:#fffaf0}.client-balances-table tbody tr.has-balance:hover{background:#fef3c7}.client-balances-table .client-info{min-width:200px}.client-balances-table .client-name{font-weight:600;color:#212529;margin-bottom:2px}.client-balances-table .client-email{font-size:.75rem;color:#6c757d}.client-balances-table .balance-outstanding{color:#c53030;font-weight:600}.client-balances-table .balance-zero{color:#28a745}.sort-indicator{margin-left:4px;font-size:.75rem;color:#adb5bd;display:inline-block;width:16px;text-align:center}.sort-indicator.active{color:#007bff;font-weight:700}.text-muted{color:#adb5bd}.no-clients{text-align:center;padding:48px 24px;color:#6c757d}.no-clients p{margin-bottom:12px}@media(max-width:992px){.client-balances-summary{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.client-balances-section{padding:16px}.client-balances-summary{grid-template-columns:1fr}.client-balances-summary .summary-card{padding:16px}.client-balances-summary .summary-value{font-size:1.5rem}.client-balances-filters .search-filter-row{flex-direction:column;gap:12px}.client-balances-filters .search-filter-controls{flex-direction:column;align-items:flex-start;gap:12px}.client-balances-table th,.client-balances-table td{padding:10px 12px}.client-balances-table .client-info{min-width:150px}.client-balances-table th:nth-child(4),.client-balances-table td:nth-child(4),.client-balances-table th:nth-child(5),.client-balances-table td:nth-child(5){display:none}}@media(max-width:576px){.client-balances-table{font-size:.8rem}.client-balances-table th,.client-balances-table td{padding:8px 10px}.client-balances-table th:nth-child(3),.client-balances-table td:nth-child(3){display:none}.client-balances-table .btn-sm{padding:4px 8px;font-size:.7rem}}.promo-code-manager{width:100%}.promo-code-manager.loading,.promo-code-manager.error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px;color:#6c757d;min-height:300px}.promo-codes-shell-card{background:var(--card-background);border:1px solid var(--card-border);border-radius:12px;box-shadow:0 1px 3px #0000004d;overflow:hidden;padding:20px 20px 8px}.promo-codes-header{display:flex;align-items:center;justify-content:flex-end;gap:16px;padding:0 20px}.promo-codes-header h3{color:var(--text-primary);font-size:15px;font-weight:800;margin:0}.promo-create-btn{background:var(--accent-orange);border:1px solid var(--accent-orange);border-radius:6px;color:var(--text-inverse, #fff);cursor:pointer;font-size:13px;min-height:32px;padding:7px 14px}.promo-create-btn:hover{background:var(--accent-orange-hover);border-color:var(--accent-orange-hover)}.promo-code-toolbar{display:grid;grid-template-columns:1fr minmax(220px,280px);align-items:end;gap:16px;padding:12px 20px;margin-bottom:1rem}.promo-status-tabs{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.promo-status-tab{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:5px 10px;border:1px solid var(--card-border);border-radius:999px;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:12px;font-weight:500;transition:.2s ease}.promo-status-tab:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.promo-status-tab.status-all:before{display:none}.promo-status-tab.status-active:before{background:var(--success-color)}.promo-status-tab.status-paused:before{background:#f59e0b}.promo-status-tab.status-exhausted:before{background:var(--error-color)}.promo-status-tab.status-expired:before{background:#fb7185}.promo-status-tab.selected{border-color:transparent;color:var(--text-inverse)}.promo-status-tab.selected:not(.status-all){border-color:transparent;color:var(--text-inverse)}.promo-status-tab.selected:before{background:var(--text-inverse);opacity:.85}.promo-status-tab.status-all.selected{background:var(--accent-orange)}.promo-status-tab.status-active.selected{background:var(--success-color)}.promo-status-tab.status-paused.selected{background:#f59e0b}.promo-status-tab.status-exhausted.selected{background:var(--error-color)}.promo-status-tab.status-expired.selected{background:#fb7185}.promo-status-tab strong{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#94a3b824;color:inherit;font-size:10px}.promo-status-tab.selected strong{background:#ffffff40;color:var(--text-inverse)}.promo-search-control{position:relative}.promo-search-control svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--text-secondary);pointer-events:none}.promo-search-control input{width:100%;min-height:28px;padding:6px 10px 6px 32px;border:1px solid var(--input-border);border-radius:6px;background:var(--input-bg);color:var(--text-primary);font-size:13px}.promo-table-wrap{overflow-x:auto}.promo-code-table{width:100%;min-width:980px;border-collapse:collapse;border-spacing:0;border-bottom:1px solid var(--input-border);border-right:1px solid var(--input-border);border-left:1px solid var(--input-border)}.promo-code-table thead,.promo-code-table th{background:var(--table-header-bg)}.promo-code-table th{color:var(--text-tertiary);font-size:11px;font-weight:700;letter-spacing:.05em;padding:10px 12px;text-align:left;text-transform:uppercase;border-top:1px solid var(--input-border);border-bottom:1px solid var(--input-border);white-space:nowrap}.promo-code-table th:first-child{padding-left:16px;border-left:1px solid var(--input-border);border-top-left-radius:6px;border-bottom-left-radius:6px}.promo-code-table th:last-child{border-right:1px solid var(--input-border);border-top-right-radius:6px;border-bottom-right-radius:6px}.promo-code-table td{background:var(--card-background);border-bottom:1px solid var(--input-border);color:var(--text-primary);font-size:14px;padding:14px 12px;text-align:left;vertical-align:middle}.promo-code-table tbody tr{background:var(--card-background)}.promo-code-table tbody tr:last-child td{border-bottom:none}.promo-code-table tbody tr:hover td{background:var(--surface-hover)}.promo-table-code{display:grid;gap:5px}.promo-table-code>div{display:flex;align-items:center;gap:8px}.promo-table-code span{color:var(--accent-orange);font-family:SF Mono,Monaco,Inconsolata,Fira Mono,monospace;font-size:12px;font-weight:800;letter-spacing:.08em}.promo-table-code small{color:var(--text-tertiary, var(--text-secondary));font-size:12px}.promo-copy-btn{display:inline-grid;place-items:center;width:22px;height:22px;padding:0;border:1px solid var(--border-primary);border-radius:5px;background:var(--surface-secondary);color:var(--text-secondary);cursor:pointer}.promo-table-discount{color:var(--text-primary)!important;font-weight:800}.promo-date-danger{color:#ef4444!important;font-weight:700}.promo-usage-cell{display:grid;gap:6px;min-width:64px}.promo-usage-cell span{color:var(--text-secondary);font-size:12px}.promo-usage-cell strong{color:var(--text-primary)}.promo-usage-track{width:60px;height:3px;overflow:hidden;border-radius:999px;background:var(--surface-secondary)}.promo-usage-fill{display:block;height:100%;border-radius:inherit;background:#64748b}.promo-usage-fill.active{background:var(--accent-orange)}.promo-usage-fill.danger{background:#ef4444}.promo-status-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 9px;border-radius:999px;font-size:11px;font-weight:800;line-height:1;text-transform:uppercase}.promo-status-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.promo-status-badge.active{background:#22c55e24;color:#22c55e}.promo-status-badge.paused{background:#f59e0b29;color:#f59e0b}.promo-status-badge.exhausted{background:#ef444429;color:#ef4444}.promo-status-badge.expired{background:#fb718529;color:#fb7185}.promo-table-actions{display:flex;align-items:center;gap:6px}.promo-action-btn{min-height:32px;padding:6px 12px;border:1px solid var(--border-primary);border-radius:6px;background:transparent;color:var(--text-secondary);cursor:pointer;font-size:12px;font-weight:800}.promo-action-btn.pause:hover{border-color:#f59e0b;color:#f59e0b}.promo-action-btn.resume{border-color:#22c55e5c;color:#22c55e}.promo-action-btn.delete{border-color:#ef444457;color:#ef4444}.promo-empty-state{display:grid;place-items:center;min-height:180px;color:var(--text-secondary);text-align:center}.promo-table-footer{padding:10px 20px;color:var(--text-secondary);font-size:12px}.promo-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.promo-stats .stat-card{background:#fff;border-radius:8px;padding:20px;text-align:center;box-shadow:0 2px 4px #0000001a;border:1px solid #e9ecef}.promo-stats .stat-card.highlight{background:linear-gradient(135deg,#007bff,#0056b3);color:#fff}.promo-stats .stat-value{display:block;font-size:2rem;font-weight:700;line-height:1.2}.promo-stats .stat-label{display:block;font-size:.875rem;color:#6c757d;margin-top:4px}.promo-stats .stat-card.highlight .stat-label{color:#ffffffd9}.promo-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.promo-header .header-title{display:flex;align-items:center;gap:12px}.promo-header h3{margin:0;font-size:1.25rem;color:var(--text-primary)}.promo-header .count-badge{background:var(--chip-orange-bg);color:var(--text-secondary);padding:4px 10px;border-radius:12px;font-size:.75rem;font-weight:500}.promo-filters{margin-bottom:20px}.promo-codes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.promo-code-card{background:var(--card-background);border-radius:12px;padding:20px;box-shadow:0 1px 3px #0000004d;border:1px solid transparent;transition:all .2s ease}.promo-code-card:hover{border-color:var(--accent-orange-hover);box-shadow:var(--shadow-md)}.promo-code-card.inactive{opacity:.7;background:var(--surface-secondary)}.promo-code-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border-primary)}.promo-code-header .code-info{display:flex;flex-direction:column;gap:8px}.promo-code-header .code-value{margin:0;font-size:1.25rem;font-weight:700;font-family:SF Mono,Monaco,Inconsolata,Fira Mono,monospace;color:var(--text-primary);letter-spacing:1px}.promo-code-header .discount-badge{background:var(--success-bg);color:var(--success-text);padding:6px 12px;border-radius:20px;font-size:.875rem;font-weight:600;white-space:nowrap}.promo-code-details{margin-bottom:16px}.promo-code-details .detail-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-bottom:1px solid var(--border-primary)}.promo-code-details .detail-row:last-child{border-bottom:none}.promo-code-details .detail-label{color:var(--text-secondary);font-size:.875rem}.promo-code-details .detail-value{font-weight:500;color:var(--text-primary);font-size:.875rem}.promo-code-details .detail-value.expired-date{color:var(--error-color)}.promo-code-details .usage-bar-container{padding:8px 0}.promo-code-details .usage-bar{width:100%;height:6px;background:var(--surface-secondary);border-radius:3px;overflow:hidden}.promo-code-details .usage-fill{height:100%;background:var(--accent-orange);border-radius:3px;transition:width .3s ease}.promo-code-actions{display:flex;gap:8px;padding-top:12px;border-top:1px solid var(--border-primary)}.promo-code-modal{max-width:620px;background:var(--card-background, #fffdf9);overflow:hidden}.promo-code-modal .modal-close{top:16px;right:16px;width:28px;height:28px;border:1px solid var(--border-primary, #E5E0EC);border-radius:50%;color:var(--text-secondary, #5A4A72)}.promo-code-modal .modal-header{align-items:flex-start;border-bottom:0;padding:14px 16px 2px}.promo-code-modal .modal-title{color:var(--text-primary, #46375B);line-height:1.2;margin:0}.promo-code-modal .modal-description{border-bottom:1px solid var(--border-primary, #E5E0EC);color:var(--text-secondary, #5A4A72);font-size:12px;line-height:1.35;padding:0 48px 18px 16px}.promo-code-modal .modal-body{background:transparent;padding:18px 16px 20px}.promo-code-modal .modal-body .form-group{background:transparent;border:0;box-shadow:none;margin-bottom:16px;padding:0}.promo-code-modal .modal-body .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.promo-code-modal .modal-body .form-group label{color:var(--text-primary);display:block;letter-spacing:.08em;line-height:1.2;margin-bottom:7px}.promo-code-modal .modal-body .form-group label span{text-transform:none;font-weight:500;color:var(--text-secondary);letter-spacing:0}.promo-code-modal .modal-body .form-control{background:var(--input-bg, #ffffff);border:1px solid var(--input-border, #D4CDE0);border-radius:6px;color:var(--text-primary, #46375B);font-size:13px;min-height:34px;padding:8px 10px}.promo-code-modal .modal-body textarea.form-control{min-height:56px;resize:vertical}.promo-code-modal .price-input-wrap{position:relative}.promo-code-modal .price-input-wrap span{color:var(--text-secondary, #5A4A72);position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:13px;pointer-events:none}.promo-code-modal .price-input-wrap input{padding-left:25px!important}.promo-code-modal .modal-footer{background:var(--surface-secondary, #F8F6FA);border-top:1px solid var(--border-primary, #E5E0EC);gap:8px;padding:14px 16px}.promo-code-modal .modal-footer .btn{border-radius:6px;min-height:36px;padding:8px 16px}.promo-code-modal .modal-footer .btn-primary:disabled{opacity:.65}.discount-type-selector{display:flex;gap:8px}.discount-type-selector .type-btn{flex:1;padding:10px 16px;border:2px solid var(--border-primary);background:var(--card-background);border-radius:6px;font-size:.875rem;font-weight:500;color:var(--text-primary);cursor:pointer;transition:all .2s ease}.discount-type-selector .type-btn:hover{border-color:var(--accent-orange);color:var(--accent-orange)}.discount-type-selector .type-btn.active{border-color:var(--accent-orange);background:var(--accent-orange);color:var(--text-inverse)}.promo-code-modal .form-hint{display:block;font-size:.75rem;color:var(--text-tertiary);margin-top:4px}.promo-code-modal .error-text{display:block;font-size:.75rem;color:var(--error-color);margin-top:4px}.promo-code-modal .form-control.error{border-color:var(--error-color)}.promo-code-manager .empty-state{text-align:center;padding:48px 24px;background:var(--card-background);border-radius:8px;color:var(--text-secondary)}.promo-code-manager .empty-state p{margin-bottom:16px}@media(max-width:992px){.promo-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.promo-codes-header,.promo-code-toolbar{grid-template-columns:1fr}.promo-codes-header{align-items:stretch;flex-direction:column;margin-bottom:8px}.promo-create-btn{width:100%}.promo-header{flex-direction:column;gap:16px;align-items:stretch}.promo-header .header-title{justify-content:space-between}.promo-codes-grid{grid-template-columns:1fr}.promo-code-modal{width:95%;margin:16px}.promo-table-wrap{overflow-x:visible;border:none}.promo-code-table{min-width:0;border:none;background:transparent}.promo-code-table thead{display:none}.promo-code-table,.promo-code-table tbody,.promo-code-table tr,.promo-code-table td{display:block;width:100%}.promo-code-table tbody tr{background:var(--card-background);border:1px solid var(--card-border);border-radius:10px;padding:12px 14px;margin-bottom:10px;box-shadow:0 1px 2px #00000026}.promo-code-table tbody tr:hover td{background:transparent}.promo-code-table tbody tr:last-child td{border-bottom:none}.promo-code-table td{padding:4px 0;border:none;font-size:13px}.promo-code-table td:nth-child(2):before,.promo-code-table td:nth-child(3):before,.promo-code-table td:nth-child(4):before,.promo-code-table td:nth-child(5):before,.promo-code-table td:nth-child(6):before,.promo-code-table td:nth-child(7):before{display:inline-block;min-width:88px;color:var(--text-tertiary);font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;margin-right:8px;vertical-align:middle}.promo-code-table td:nth-child(2):before{content:"Discount"}.promo-code-table td:nth-child(3):before{content:"Start Date"}.promo-code-table td:nth-child(4):before{content:"Expires"}.promo-code-table td:nth-child(5):before{content:"Min. Amount"}.promo-code-table td:nth-child(6):before{content:"Uses"}.promo-code-table td:nth-child(7):before{content:"Status"}.promo-code-table td:first-child{padding-bottom:8px;margin-bottom:6px;border-bottom:1px solid var(--card-border)}.promo-table-actions{justify-content:flex-end;margin-top:8px;padding-top:8px;border-top:1px solid var(--card-border)}}@media(max-width:576px){.promo-stats{grid-template-columns:1fr 1fr;gap:12px}.promo-stats .stat-card{padding:16px}.promo-stats .stat-value{font-size:1.5rem}.discount-type-selector{flex-direction:column}.promo-code-modal .modal-body .form-row{grid-template-columns:1fr}.promo-code-header{flex-direction:column;gap:12px}.promo-code-header .discount-badge{align-self:flex-start}}.billing-settings{background:var(--card-background, white);border-radius:8px;padding:24px;box-shadow:0 2px 4px #0000001a}.billing-settings.loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:48px;color:var(--text-tertiary, #6c757d);min-height:300px}.billing-settings-header{margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--card-divider, #e9ecef)}.billing-settings-header h3{margin:0 0 8px;color:var(--text-primary, #212529);font-size:1.25rem}.billing-settings-description{margin:0;color:var(--text-tertiary, #6c757d);font-size:.875rem}.billing-settings-success{display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--alert-success-bg, #d4edda);border:1px solid var(--success-border, #c3e6cb);border-radius:6px;color:var(--success-text, #155724);margin-bottom:20px}.billing-settings-success .success-icon{font-size:1.1rem}.billing-settings-error{display:flex;align-items:center;gap:.5rem;padding:12px 16px;background:var(--error-bg, #fef2f2);border:1px solid var(--error-border, #fecaca);border-radius:6px;color:var(--error-text, #991b1b);font-size:.875rem;font-weight:500;margin-bottom:20px}.billing-settings-error .error-icon{font-size:1.1rem;flex-shrink:0}.billing-settings-error .dismiss-error{margin-left:auto;background:none;border:none;color:var(--error-text, #991b1b);font-size:1.25rem;cursor:pointer;padding:0;line-height:1}.billing-settings-error .dismiss-error:hover{color:var(--error-color, #dc2626)}.settings-section{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid var(--card-divider, #e9ecef)}.settings-section:last-of-type{border-bottom:none;margin-bottom:24px}.settings-section-header{margin-bottom:16px}.settings-section-header h4{margin:0 0 8px;color:var(--text-primary, #212529);font-size:1rem;font-weight:600}.settings-section-description{margin:0;color:var(--text-tertiary, #6c757d);font-size:.875rem;line-height:1.5}.settings-subsection{margin-top:16px;padding:16px;border-top:1px solid var(--text-tertiary)}.settings-toggle-group{margin-bottom:12px}.settings-toggle{display:flex;align-items:center;gap:12px;cursor:pointer;-webkit-user-select:none;user-select:none;position:relative}.settings-toggle input[type=checkbox]{position:absolute;opacity:0;width:0;height:0;pointer-events:none;margin:0}.settings-toggle .toggle-slider{position:relative;display:inline-block;width:44px;min-width:44px;height:22px;background:var(--border-color, #ced4da);border:none;border-radius:22px;transition:all .25s ease;flex-shrink:0;inset:auto;box-shadow:none}.settings-toggle .toggle-slider:before{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;background:#fff;border-radius:50%;transition:all .3s ease;box-shadow:0 1px 3px #0003}.settings-toggle input[type=checkbox]:checked+.toggle-slider{background:var(--accent-orange)}.settings-toggle input[type=checkbox]:checked+.toggle-slider:before{transform:translate(22px)}.settings-toggle input[type=checkbox]:disabled+.toggle-slider{opacity:.5;cursor:not-allowed}.toggle-label{font-weight:500;color:var(--text-primary, #212529);font-size:.9rem}.toggle-description{margin:8px 0 0 60px;color:var(--text-tertiary, #6c757d);font-size:.8rem;line-height:1.5}.learn-more-link{display:inline-block;margin-left:8px;color:var(--accent-orange, #007bff);text-decoration:none}.learn-more-link:hover{text-decoration:underline}.settings-form-group{margin-bottom:16px}.settings-form-group:last-child{margin-bottom:0}.settings-form-group label{display:block;margin-bottom:6px;color:var(--text-on-panel, #495057);font-weight:500;font-size:.875rem}.field-description{margin:0 0 8px;color:var(--text-tertiary, #6c757d);font-size:.8rem}.settings-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.settings-input{width:100%;padding:10px 12px;background:var(--input-bg, #ffffff);color:var(--text-primary, #212529);border:1px solid var(--input-border, #ced4da);border-radius:4px;font-size:.875rem;transition:border-color .2s ease,box-shadow .2s ease}.settings-input:focus{outline:none;border-color:var(--input-focus-border, #007bff);box-shadow:0 0 0 3px #007bff1a}.settings-input:disabled{background:var(--input-disabled-bg, #e9ecef);cursor:not-allowed}.settings-input::placeholder{color:var(--text-tertiary)}.settings-input-narrow{width:120px}.settings-input-wrapper{display:flex;align-items:center;position:relative}.settings-input-wrapper .input-prefix{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-tertiary, #6c757d);font-size:.875rem;line-height:1;pointer-events:none}.settings-input-wrapper .input-suffix{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--text-tertiary, #6c757d);font-size:.875rem;line-height:1;pointer-events:none}.settings-input-wrapper .settings-input{padding-left:20px!important}.settings-input-wrapper .settings-input:has(+.input-suffix){padding-right:32px}.settings-select{width:100%;padding:10px 12px;border:1px solid var(--input-border, #ced4da);border-radius:4px;font-size:.875rem;background:var(--input-bg, white);color:var(--text-primary, #212529);cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease}.settings-select:focus{outline:none;border-color:var(--input-focus-border, #007bff);box-shadow:0 0 0 3px #007bff1a}.settings-select:disabled{background:var(--input-disabled-bg, #e9ecef);cursor:not-allowed}.reminder-days-list{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.reminder-day-tag{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:10px;border:1px solid var(--text-tertiary);background-color:var(--card-background);font-size:.8rem;color:var(--text-primary)}.remove-tag-btn{background:none;border:none;color:var(--text-tertiary, #6c757d);font-size:1rem;cursor:pointer;padding:0;line-height:1;display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;transition:all .2s ease}.remove-tag-btn:hover{background:var(--error-color, #dc3545);color:var(--text-inverse, white)}.remove-tag-btn:disabled{opacity:.5;cursor:not-allowed}.add-reminder-day{display:flex;gap:8px;align-items:center}.add-reminder-day .settings-input{width:100px}.tax-manual-notice{display:flex;align-items:flex-start;gap:10px;padding:12px;background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px;margin-top:12px}.tax-manual-notice .notice-icon{color:#856404;font-size:1rem;flex-shrink:0}.tax-manual-notice p{margin:0;color:#856404;font-size:.8rem;line-height:1.5}.settings-section .field-error{display:flex;align-items:center;gap:6px;margin-top:8px;padding:8px 12px;background:#f8d7da;border-radius:4px;color:#721c24;font-size:.8rem}.settings-section .field-error .error-icon{font-size:.9rem}.settings-three-column-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:32px}.settings-four-column-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:32px}.settings-three-column-grid .settings-section,.settings-four-column-grid .settings-section{margin-bottom:0;padding-bottom:0;border-bottom:none}.settings-three-column-grid .settings-column,.settings-four-column-grid .settings-column{background:var(--card-background);border-radius:10px;padding:16px;border:1px solid var(--border-color);position:relative;overflow:hidden;box-sizing:border-box;min-width:0}.settings-three-column-grid .settings-section-header,.settings-four-column-grid .settings-section-header{margin-bottom:4px}.settings-three-column-grid .settings-section-header h4,.settings-four-column-grid .settings-section-header h4{font-size:.9rem;margin-bottom:0;color:var(--text-primary)}.settings-four-column-grid .settings-column{position:relative}.settings-four-column-grid .settings-column{display:flex;flex-direction:column}.settings-four-column-grid .settings-section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:8px}.settings-four-column-grid .settings-section-header h4{font-size:.9rem;display:flex;align-items:center;gap:5px;flex:1;min-width:0}.settings-header-toggle{flex-shrink:0;display:flex;align-items:center;justify-content:flex-end;cursor:pointer;margin:0;padding:0;gap:0;width:44px;min-width:44px;max-width:44px;box-sizing:border-box}.settings-header-toggle input[type=checkbox]{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.settings-four-column-grid .settings-form-group label{font-size:.78rem}.settings-three-column-grid .settings-subsection,.settings-four-column-grid .settings-subsection{margin-top:10px;padding:10px;position:relative}.settings-three-column-grid .settings-form-group,.settings-four-column-grid .settings-form-group{margin-bottom:10px}.settings-three-column-grid .settings-form-group label,.settings-four-column-grid .settings-form-group label{font-size:.72rem}.settings-three-column-grid .settings-input,.settings-three-column-grid .settings-select,.settings-four-column-grid .settings-input,.settings-four-column-grid .settings-select{padding:6px 8px;font-size:.75rem}.settings-three-column-grid .settings-input-wrapper .input-prefix,.settings-four-column-grid .settings-input-wrapper .input-prefix{left:8px;font-size:.75rem}.settings-three-column-grid .settings-input-wrapper .input-suffix,.settings-four-column-grid .settings-input-wrapper .input-suffix{right:8px;font-size:.75rem}.settings-three-column-grid .settings-input-wrapper .settings-input,.settings-four-column-grid .settings-input-wrapper .settings-input{padding-left:20px}.settings-three-column-grid .settings-input-wrapper .settings-input:has(+.input-suffix),.settings-four-column-grid .settings-input-wrapper .settings-input:has(+.input-suffix){padding-right:20px}.settings-column-unavailable .settings-section-header h4{color:var(--text-tertiary);text-decoration:line-through;text-decoration-thickness:1px}.settings-column-unavailable .settings-header-toggle{opacity:.5;cursor:not-allowed}.settings-column-unavailable .settings-header-toggle .toggle-slider{pointer-events:none}.settings-unavailable-note{margin-top:8px;padding:10px 12px;background:var(--surface-secondary);border:1px solid var(--border-primary);border-radius:6px;font-size:.75rem;color:var(--text-secondary);line-height:1.4}.settings-unavailable-note p{margin:0 0 6px}.settings-unavailable-link{display:inline-flex;align-items:center;gap:4px;color:var(--accent-orange);text-decoration:none;font-weight:500}.settings-unavailable-link:hover{color:var(--accent-orange-hover);text-decoration:underline}.reminder-days-list.compact{margin-bottom:8px}.reminder-days-list.compact .reminder-day-tag{padding:4px 8px;font-size:.75rem}.add-reminder-day.compact{flex-direction:column;gap:6px}.add-reminder-day.compact .settings-input{width:100%}.tax-manual-notice.compact{padding:8px;margin-top:8px}.tax-manual-notice.compact p{font-size:.75rem}.info-tooltip{display:inline-flex;align-items:center;justify-content:center;margin-left:5px;width:14px;height:14px;border-radius:50%;background:var(--border-color);color:var(--text-secondary);font-size:.65rem;font-style:normal;cursor:default;position:relative;vertical-align:middle;line-height:1}.info-tooltip .tooltip-text{display:none;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--card-background);border:1px solid var(--border-color);color:var(--text-primary);font-size:.75rem;font-weight:400;padding:6px 10px;border-radius:6px;white-space:normal;width:200px;line-height:1.4;box-shadow:0 4px 12px #0003;z-index:100;pointer-events:none}.info-tooltip:hover .tooltip-text{display:block}.settings-actions{display:flex;gap:12px;padding-top:16px;border-top:1px solid #e9ecef;margin-top:8px}.settings-footer{margin-top:16px;padding-top:12px;border-top:1px solid #e9ecef}.last-updated{color:#6c757d;font-size:.75rem}@media(max-width:1024px){.settings-three-column-grid{grid-template-columns:repeat(2,1fr)}.settings-three-column-grid .settings-column:last-child{grid-column:span 2}.settings-four-column-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.billing-settings{padding:16px}.settings-three-column-grid{grid-template-columns:1fr}.settings-three-column-grid .settings-column:last-child{grid-column:span 1}.settings-four-column-grid,.settings-form-row{grid-template-columns:1fr}.settings-input-narrow{width:100%}.toggle-description{margin-left:0;margin-top:12px}.settings-actions{flex-direction:column}.settings-actions .btn{width:100%}}.package-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.package-stats .stat-card{background:var(--card-background, #fffdf9);border-radius:12px;padding:20px;text-align:center;box-shadow:0 1px 3px #00000014;border:1px solid transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:all .2s ease}.package-stats .stat-card:hover{border-color:var(--accent-orange-hover)}.package-stats .stat-card.highlight{background:linear-gradient(135deg,var(--accent-orange) 0%,var(--accent-orange-hover) 100%);color:var(--text-inverse, #fff);border-color:var(--accent-orange-hover)}.package-stats .stat-card.highlight:hover{box-shadow:0 4px 16px #f4a2614d}.package-stats .stat-value{display:block;font-size:2rem;font-weight:700;line-height:1.2;margin-bottom:8px}.package-stats .stat-label{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);font-weight:600}.package-stats .stat-card.highlight .stat-label{color:#ffffffd9}@media(max-width:1200px){.package-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.package-stats{grid-template-columns:1fr}.package-stats .stat-card{padding:16px}.package-stats .stat-value{font-size:1.75rem}}.package-view-tabs{display:flex;gap:8px;border-bottom:2px solid var(--border-primary);margin-bottom:24px;padding-bottom:0}.package-view-tabs .view-tab{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;background:none;border:none;border-bottom:3px solid transparent;color:var(--text-secondary);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;margin-bottom:-2px;position:relative;white-space:nowrap}.package-view-tabs .view-tab:hover{color:var(--text-primary)}.package-view-tabs .view-tab.active{color:var(--accent-orange);border-bottom-color:var(--accent-orange)}.package-view-tabs .view-tab .tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;background:var(--bg-tertiary);color:var(--text-secondary);border-radius:10px;font-size:.75rem;font-weight:600}.package-view-tabs .view-tab.active .tab-count{background:var(--accent-orange);color:var(--text-inverse, #fff)}@media(max-width:768px){.package-view-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.package-view-tabs .view-tab{padding:12px 16px;flex-shrink:0}}.modal-container{background:var(--modal-bg, white);border-radius:8px;width:90%;max-width:500px;box-shadow:var(--shadow-xl, 0 20px 25px -5px rgba(0, 0, 0, .1));padding:0;display:flex;flex-direction:column;max-height:90vh;overflow:hidden}.package-template-form{display:flex;flex:1;flex-direction:column;min-height:0}.package-template-modal .modal-body{min-height:0;-webkit-overflow-scrolling:touch}.confirm-modal{max-width:450px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border-primary, #e5e7eb);flex-shrink:0}.modal-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary, #111827)}.modal-close-btn{background:none;border:none;color:var(--text-secondary, #6b7280);font-size:1.5rem;line-height:1;cursor:pointer;padding:4px 8px;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:4px;transition:all .2s ease;flex-shrink:0}.modal-close-btn:hover{background:var(--hover-bg, #f3f4f6);color:var(--text-primary, #111827)}.modal-close-btn:active{background:var(--bg-tertiary, #e5e7eb)}.modal-body{padding:24px;overflow-y:auto;flex:1}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid var(--border-primary, #e5e7eb);background:var(--surface-secondary, #f9fafb);flex-shrink:0}.modal-body .form-group{margin-bottom:18px}.modal-body .form-group label{display:block;margin-bottom:6px;font-size:.875rem;font-weight:500;color:var(--text-primary, #111827)}.modal-body .form-control{width:100%;padding:10px 12px;border:1px solid var(--input-border, #d1d5db);border-radius:6px;font-size:.875rem;background:var(--input-bg, #ffffff);color:var(--text-primary, #111827);transition:all .2s ease;font-family:inherit}.modal-body .form-control:focus{outline:none;border-color:var(--accent-orange, #FE6B34);box-shadow:0 0 0 3px var(--border-focus, rgba(254, 107, 52, .1))}.modal-body .form-control:disabled{background:var(--bg-tertiary, #f3f4f6);color:var(--text-secondary, #6b7280);cursor:not-allowed}.modal-body textarea.form-control{resize:vertical;min-height:80px}.modal-body .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.modal-body .form-control.error{border-color:var(--error-border, #fecaca);background:var(--error-bg, #fee2e2)}.modal-body .form-control.error:focus{border-color:var(--error-color, #ef4444);box-shadow:0 0 0 3px var(--error-border, rgba(239, 68, 68, .2))}.modal-body .error-text{display:block;margin-top:4px;font-size:.75rem;color:var(--error-color, #ef4444);font-weight:500}.modal-body .form-hint{display:block;margin-top:4px;font-size:.75rem;color:var(--text-secondary, #6b7280);font-style:italic}.price-per-session-info{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--surface-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;margin-top:16px;margin-bottom:4px}.price-per-session-info .info-label{font-size:.875rem;font-weight:500;color:var(--text-secondary, #6b7280)}.price-per-session-info .info-value{font-size:1rem;font-weight:600;color:var(--accent-orange, #FE6B34)}.price-per-session-info .info-value.warning-value{color:var(--warning-color, #d97706)}.price-warning-notice{padding:10px 14px;background:var(--warning-bg, #fffbeb);border:1px solid var(--warning-border, #fcd34d);border-radius:6px;margin-top:8px}.price-warning-notice .warning-text{font-size:.8125rem;color:var(--warning-text, #92400e);line-height:1.4}@media(max-width:640px){.modal-container{width:95%;max-width:none;max-height:95vh}.package-template-modal{margin:0}.modal-body .form-row{grid-template-columns:1fr}.modal-footer{flex-direction:column-reverse}.modal-footer .btn{width:100%}}.packages-table-container{width:100%;overflow-x:auto;border-radius:8px;border:1px solid var(--border-primary, #E5E0EC);background:var(--card-background, #fffdf9)}.packages-table{width:100%;border-collapse:collapse;font-size:.875rem}.packages-table thead{background:var(--table-header-bg, #F8F6FA);border-bottom:2px solid var(--border-primary, #E5E0EC)}.packages-table thead th{padding:14px 16px;text-align:left;font-weight:600;color:var(--text-primary, #46375B);font-size:.8125rem;text-transform:uppercase;letter-spacing:.5px}.packages-table thead th.numeric{text-align:right}.packages-table tbody tr{border-bottom:1px solid var(--border-primary, #E5E0EC);transition:background-color .2s ease}.packages-table tbody tr:hover{background:var(--table-row-hover)}.packages-table tbody tr.expiring-soon{background:#f59e0b0d}.packages-table tbody tr.expiring-soon:hover{background:#f59e0b1a}.packages-table tbody td{padding:14px 16px;color:var(--text-primary, #46375B);vertical-align:middle}.packages-table tbody td.numeric{text-align:right;font-weight:500}.packages-table .client-cell{font-weight:500}.packages-table .client-name{display:block;color:var(--accent-orange, #f4a261);font-weight:600}.sessions-display{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.sessions-count{font-weight:600;color:var(--text-primary, #46375B);font-size:.95rem}.usage-bar{width:120px;height:6px;background:var(--bg-tertiary, #F0EDF4);border-radius:3px;overflow:hidden}.usage-fill{display:block;height:100%;background:linear-gradient(90deg,var(--accent-orange, #f4a261),var(--accent-orange-hover, #e79552));border-radius:3px;transition:width .3s ease}.packages-table .expiring-warning{color:var(--warning-color, #f59e0b);font-weight:500}.packages-table .days-left{display:block;font-size:.75rem;color:var(--warning-color, #f59e0b);margin-top:2px}.packages-table .badge{display:inline-block;padding:4px 10px;border-radius:4px;font-size:.75rem;font-weight:600;white-space:nowrap}.packages-table .badge-success{background:var(--success-bg, #d1fae5);color:var(--success-text, #065f46);border:1px solid var(--success-border, #a7f3d0)}.packages-table .badge-info{background:var(--info-bg, #FFEEE7);color:var(--info-text, #D14A1C);border:1px solid var(--info-border, #FFB89E)}.packages-table .badge-secondary{background:var(--bg-tertiary, #F0EDF4);color:var(--text-secondary, #5A4A72);border:1px solid var(--border-primary, #E5E0EC)}.empty-state p{margin:0 0 16px;color:var(--text-secondary, #5A4A72);font-size:.95rem}.empty-state .btn{margin-top:8px}.templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-top:24px}.template-card{padding:20px;background:var(--card-background, #fffdf9);border:1px solid transparent;border-radius:12px;box-shadow:0 1px 3px #00000014;transition:all .2s ease}.template-card:hover{border-color:var(--accent-orange-hover);box-shadow:0 4px 12px #0000001a}.template-card.inactive{opacity:.7;background:var(--surface-secondary, #F8F6FA)}.template-card .template-header{display:flex;justify-content:space-between;align-items:start;gap:12px;margin-bottom:12px}.template-card .template-header h4{margin:0;color:var(--text-primary, #46375B);font-size:1.1rem;flex:1}.template-card .template-description{margin:0 0 16px;color:var(--text-secondary, #5A4A72);font-size:.875rem;line-height:1.5}.template-details{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:12px 0;border-top:1px solid var(--border-primary, #E5E0EC);border-bottom:1px solid var(--border-primary, #E5E0EC);margin-bottom:16px}.detail-item{display:flex;flex-direction:column;gap:2px}.detail-label{font-size:.75rem;font-weight:600;color:var(--text-secondary, #5A4A72);text-transform:uppercase;letter-spacing:.5px}.detail-value{font-size:1rem;font-weight:600;color:var(--text-primary, #46375B)}.template-actions{display:flex;gap:8px;flex-wrap:wrap}.template-actions .btn-sm{flex:1;min-width:100px;font-size:.8rem;padding:6px 12px}.view-header{margin-bottom:24px}.view-title{display:flex;align-items:center;gap:12px;margin-bottom:16px}.view-title h3{margin:0;color:var(--text-primary, #46375B);font-size:1.25rem}.count-badge{display:inline-block;padding:4px 12px;background:var(--bg-tertiary, #F0EDF4);color:var(--text-secondary, #5A4A72);border-radius:20px;font-size:.8rem;font-weight:600;white-space:nowrap}.count-badge.sessions{background:var(--primary-light, #FFEEE7);color:var(--primary-dark, #D14A1C)}@media(max-width:1024px){.packages-table{font-size:.8125rem}.packages-table thead th,.packages-table tbody td{padding:10px 12px}.usage-bar{width:100px}}@media(max-width:768px){.templates-grid{grid-template-columns:1fr}.packages-table-container{border-radius:0;margin:0 -1rem;width:calc(100% + 2rem)}.usage-bar{width:80px}.template-details{grid-template-columns:1fr}}@media(max-width:640px){.packages-table{font-size:.75rem}.packages-table thead th{padding:8px 10px;font-size:.7rem}.packages-table tbody td{padding:8px 10px}.sessions-display{align-items:flex-start}.usage-bar{width:60px}.view-title{flex-wrap:wrap;gap:8px}.count-badge{padding:2px 8px;font-size:.7rem}}.package-template-modal{max-width:760px;background:var(--card-background, #fffdf9);overflow:hidden}.package-template-modal .modal-close{top:16px;right:16px;width:28px;height:28px;border:1px solid var(--border-primary, #E5E0EC);border-radius:50%;color:var(--text-secondary, #5A4A72)}.package-template-modal .modal-header{align-items:flex-start;border-bottom:0;padding:14px 16px 2px}.package-template-modal .modal-title{color:var(--text-primary, #46375B);font-size:16px;font-weight:800;line-height:1.2;margin:0}.package-template-modal .modal-description{border-bottom:1px solid var(--border-primary, #E5E0EC);color:var(--text-secondary, #5A4A72);font-size:12px;line-height:1.35;padding:0 48px 18px 16px}.package-template-modal .modal-body{background:transparent;padding:18px 16px 20px}.package-template-modal .modal-body .form-group{background:transparent;border:0;box-shadow:none;margin-bottom:16px;padding:0}.package-template-modal .modal-body .form-row{gap:16px}.package-template-modal .modal-body .form-group label:not(.package-checkbox){color:var(--text-primary);display:block;letter-spacing:.08em;line-height:1.2;margin-bottom:7px}.package-template-modal .modal-body .form-group label span{text-transform:none}.package-template-modal .modal-body .form-control{background:var(--input-bg, #ffffff);border:1px solid var(--input-border, #D4CDE0);border-radius:6px;color:var(--text-primary, #46375B);font-size:13px;min-height:34px;padding:8px 10px}.package-template-modal .modal-body textarea.form-control{min-height:56px;resize:vertical}.package-template-modal .price-input-wrap span{color:var(--text-secondary, #5A4A72);left:12px;width:12px}.package-template-modal .price-input-wrap input{padding-left:25px!important}.package-template-modal .package-checkbox{cursor:pointer;font-size:12px;line-height:1.2;display:flex!important;flex-direction:row;justify-content:center}.package-template-modal .package-checkbox input{flex:0 0 auto;margin:0;order:0;width:auto}.package-template-modal .package-checkbox span{display:inline;order:1}.package-template-modal .modal-body .form-hint{color:var(--accent-blue, #7ba7d9);font-size:11px;font-style:normal;margin-top:6px}.package-template-modal .modal-footer{background:var(--bg-secondary, #F8F6FA);border-top:1px solid var(--border-primary, #E5E0EC);gap:8px;padding:14px 16px}.package-template-modal .modal-footer .btn{border-radius:6px;min-height:36px;padding:8px 16px}.package-template-modal .modal-footer .btn-primary:disabled{opacity:.65}@media(max-width:640px){.package-template-modal{max-width:none;width:calc(100vw - 24px)}.package-template-modal .modal-body .form-row{grid-template-columns:1fr}}.invoice-detail-modal-v2 .modal-header,.invoice-detail-modal-v2 .modal-description{display:none}.invoice-detail-modal-v2 .modal-body{padding:24px}.invoice-modal-view{display:flex;flex-direction:column;gap:20px}.invoice-modal-header{display:flex;align-items:flex-start;gap:14px;padding-right:32px}.invoice-modal-header-icon{width:40px;height:40px;border-radius:10px;background:var(--chip-orange-bg, rgba(254, 107, 52, .12));color:var(--accent-orange, #FE6B34);display:flex;align-items:center;justify-content:center;flex-shrink:0}.invoice-modal-header-text{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.invoice-modal-header-title-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.invoice-modal-number{margin:0;font-size:18px;font-weight:700;color:var(--text-primary);line-height:1.2}.invoice-modal-status{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.06em}.invoice-modal-status-pending{background:var(--chip-orange-bg, rgba(254, 107, 52, .15));color:var(--accent-orange, #FE6B34)}.invoice-modal-status-overdue{background:var(--error-bg);color:var(--error-text)}.invoice-modal-status-paid{background:var(--success-bg);color:var(--success-text)}.invoice-modal-status-processing,.invoice-modal-status-payment_in_progress,.invoice-modal-status-refunded,.invoice-modal-status-partially_refunded{background:var(--info-bg);color:var(--info-text)}.invoice-modal-status-declined{background:var(--error-bg);color:var(--error-text)}.invoice-modal-decline-reason{margin:6px 0 0;font-size:13px;color:var(--error-text, #b91c1c)}.invoice-modal-decline-code{color:var(--text-tertiary, #9ca3af);font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:12px}.invoice-modal-status-voided{background:var(--surface-secondary);color:var(--text-secondary)}.invoice-modal-status-disputed,.invoice-modal-status-chargeback_lost{background:var(--error-bg);color:var(--error-text)}.invoice-modal-subtitle{margin:0;font-size:13px;color:var(--text-secondary)}.invoice-modal-summary-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.invoice-summary-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;gap:4px;min-width:0}.invoice-summary-amount{justify-content:space-between}.invoice-summary-label{font-size:12px;color:var(--text-secondary);font-weight:500}.invoice-summary-amount-value{font-size:26px;font-weight:800;color:var(--text-primary);line-height:1.1;margin:2px 0}.invoice-summary-sublabel{font-size:10px;color:var(--text-tertiary);font-weight:600;letter-spacing:.08em}.invoice-summary-party{flex-direction:row;align-items:center;gap:12px}.invoice-party-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex-shrink:0}.invoice-party-avatar-client{background:#60a5fa2e;color:#60a5fa}.invoice-party-avatar-trainer{background:#a78bfa2e;color:#a78bfa}.invoice-party-info{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}.invoice-party-label{font-size:10px;color:var(--text-tertiary);font-weight:600;letter-spacing:.08em}.invoice-party-name{font-size:14px;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.invoice-party-detail{font-size:12px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.invoice-modal-meta-strip{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;background:var(--card-bg);border:1px solid var(--card-border);border-radius:10px;padding:14px 16px}.invoice-meta-cell{display:flex;align-items:flex-start;gap:10px;color:var(--text-secondary)}.invoice-meta-cell>svg{margin-top:2px;flex-shrink:0}.invoice-meta-content{display:flex;flex-direction:column;gap:2px;min-width:0}.invoice-meta-label{font-size:10px;color:var(--text-tertiary);font-weight:600;letter-spacing:.08em}.invoice-meta-value{font-size:13px;font-weight:600;color:var(--text-primary)}.invoice-meta-value.invoice-meta-due{color:var(--accent-orange)}.invoice-meta-value.invoice-meta-overdue{color:var(--error-color)}.invoice-modal-section{display:flex;flex-direction:column;gap:12px}.invoice-modal-section-title{margin:0;display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:var(--text-primary)}.invoice-modal-section-title>svg{color:var(--accent-orange)}.invoice-modal-items{border:1px solid var(--card-border);border-radius:10px;overflow:hidden}.invoice-modal-items-head,.invoice-modal-items-row{display:grid;grid-template-columns:2.5fr .6fr 1fr 1fr;align-items:center;gap:12px;padding:12px 16px}.invoice-modal-items-head{background:var(--card-bg);font-size:11px;font-weight:600;letter-spacing:.08em;color:var(--text-tertiary);text-transform:uppercase}.invoice-modal-items-head span:nth-child(2){text-align:center}.invoice-modal-items-head span:nth-child(3),.invoice-modal-items-head span:nth-child(4){text-align:right}.invoice-modal-items-row{border-top:1px solid var(--card-border)}.invoice-modal-item-desc{display:flex;flex-direction:column;gap:2px;min-width:0}.invoice-modal-item-name{font-size:14px;font-weight:700;color:var(--text-primary)}.invoice-modal-item-sub{font-size:12px;color:var(--text-secondary)}.invoice-modal-item-qty{text-align:center;font-size:14px;color:var(--text-primary)}.invoice-modal-item-unit{text-align:right;font-size:14px;color:var(--text-primary)}.invoice-modal-item-amount{text-align:right;font-size:14px;font-weight:700;color:var(--text-primary)}.invoice-modal-item-amount.discount{color:var(--success-color)}.invoice-modal-totals{display:flex;flex-direction:column;gap:6px;align-self:flex-end;width:min(320px,100%);padding-top:8px}.invoice-modal-total-line{display:flex;justify-content:space-between;font-size:14px;color:var(--text-secondary)}.invoice-modal-total-line>span:last-child{color:var(--text-primary);font-weight:600}.invoice-modal-total-grand{margin-top:6px;padding-top:12px;border-top:1px solid var(--card-border)}.invoice-modal-total-grand>span:first-child{color:var(--text-primary);font-size:16px;font-weight:700}.invoice-modal-total-grand>span:last-child{color:var(--accent-orange);font-size:22px;font-weight:800}.invoice-detail-modal-v2 .invoice-modal-footer{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-top:1px solid var(--card-border);gap:12px}.invoice-modal-footer-left{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.invoice-modal-action{display:inline-flex;align-items:center;gap:6px}.invoice-modal-void{display:inline-flex;align-items:center;gap:6px;background:transparent;border:none;color:var(--error-color);font-size:13px;font-weight:600;padding:8px 4px;cursor:pointer;border-radius:6px;transition:background .15s ease}.invoice-modal-void:hover:not(:disabled){background:var(--error-bg)}.invoice-modal-void:disabled{opacity:.6;cursor:not-allowed}@media(max-width:720px){.invoice-modal-summary-row,.invoice-modal-meta-strip{grid-template-columns:1fr}.invoice-modal-items-head,.invoice-modal-items-row{grid-template-columns:2fr .5fr 1fr 1fr;padding:10px 12px}.invoice-modal-totals{width:100%}.invoice-detail-modal-v2 .invoice-modal-footer{flex-direction:column-reverse;align-items:stretch}.invoice-modal-footer-left{flex-direction:column;align-items:stretch}.invoice-modal-action,.invoice-modal-void{justify-content:center}}@media(max-width:640px){.invoice-detail-modal-v2 .modal-body{padding:16px 0}.invoice-detail-modal-v2 .invoice-modal-header{padding-left:16px;padding-right:48px}.invoice-detail-modal-v2 .invoice-modal-section-title,.invoice-detail-modal-v2 .invoice-modal-footer{padding-left:16px;padding-right:16px}.invoice-detail-modal-v2 .invoice-summary-card,.invoice-detail-modal-v2 .invoice-modal-meta-strip,.invoice-detail-modal-v2 .invoice-modal-items{border-radius:0;border-left:none;border-right:none}}.template-creator{padding:20px;max-width:600px;background:var(--card-background);border-radius:16px;margin:0 auto}.template-creator-title{margin:0 0 24px;font-size:24px;font-weight:600;color:var(--text-primary, #111827)}.template-creator-error{display:flex;align-items:center;gap:.5rem;padding:12px 16px;background:var(--error-bg, #fef2f2);border:1px solid var(--error-border, #fecaca);border-radius:6px;color:var(--error-text, #991b1b);font-size:.875rem;font-weight:500;margin-bottom:16px}.template-form-group{margin-bottom:16px}.template-form-row{display:flex;gap:16px;margin-bottom:16px}.template-form-row .template-form-group{flex:1;margin-bottom:0}.template-form-label{display:block;margin-bottom:6px;font-weight:600;font-size:14px;color:var(--text-on-panel, #374151)}.template-form-input,.template-form-select{width:100%;padding:10px 12px;border:1px solid var(--input-border, #d1d5db);border-radius:6px;font-size:14px;background-color:var(--input-bg, #ffffff);color:var(--text-primary, #111827);transition:border-color .2s,box-shadow .2s}.template-form-input:focus,.template-form-select:focus{outline:none;border-color:var(--input-focus-border, #2563eb);box-shadow:0 0 0 3px #2563eb1a}.template-form-input::placeholder{color:var(--input-placeholder, #9ca3af)}.template-form-textarea{width:100%;padding:10px 12px;border:1px solid var(--input-border, #d1d5db);border-radius:6px;font-size:14px;background-color:var(--input-bg, #ffffff);color:var(--text-primary, #111827);min-height:80px;resize:vertical;font-family:inherit}.template-form-textarea:focus{outline:none;border-color:var(--input-focus-border, #2563eb);box-shadow:0 0 0 3px #2563eb1a}.template-form-textarea::placeholder{color:var(--input-placeholder, #9ca3af)}.template-variables-info{display:flex;align-items:flex-start;gap:10px;margin-bottom:16px;padding:12px 16px;background-color:var(--bg-secondary);border:1px solid var(--card-border, var(--border-primary));border-radius:8px}.template-variables-title{margin:0 0 8px;font-weight:600;font-size:13px;color:var(--text-primary)}.template-variables-chips{display:flex;flex-wrap:wrap;gap:6px}.template-var-chip{display:inline-block;padding:3px 8px;border-radius:4px;font-size:11px;font-family:Courier New,monospace;font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none;transition:opacity .15s,transform .1s}.template-var-chip:hover{opacity:.8;transform:translateY(-1px)}.template-var-chip:active{transform:translateY(0)}.template-var-chip-1{background:#3b82f626;color:#60a5fa;border:1px solid rgba(59,130,246,.3)}.template-var-chip-2{background:#8b5cf626;color:#a78bfa;border:1px solid rgba(139,92,246,.3)}.template-var-chip-3{background:#10b98126;color:#34d399;border:1px solid rgba(16,185,129,.3)}.template-var-chip-4{background:#ec489926;color:#f472b6;border:1px solid rgba(236,72,153,.3)}.template-var-chip-5{background:#f59e0b26;color:#fbbf24;border:1px solid rgba(245,158,11,.3)}.template-var-chip-6{background:#3b82f626;color:#60a5fa;border:1px solid rgba(59,130,246,.3)}.template-section-title{margin:0 0 12px;font-size:15px;font-weight:600;color:var(--text-on-panel, #374151)}.template-optional-label{font-weight:400;font-size:13px;color:var(--text-tertiary, #6b7280)}.template-sms-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:16px}.template-char-count{font-size:12px;color:var(--text-tertiary, #6b7280);margin-top:4px}.template-form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.template-submit-button{padding:10px 20px;background-color:#2563eb;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s}.template-submit-button:hover:not(:disabled){background-color:#1d4ed8}.template-submit-button:disabled{opacity:.6;cursor:not-allowed}.template-cancel-button{padding:10px 20px;background-color:var(--text-tertiary, #6b7280);color:var(--text-inverse, white);border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s}.template-cancel-button:hover{background-color:var(--text-secondary, #4b5563)}@media(max-width:640px){.template-sms-grid{grid-template-columns:1fr}}.template-editor-placeholder{height:300px;display:flex;align-items:center;justify-content:center;background:var(--input-bg, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;color:var(--text-tertiary, #6b7280);font-size:14px}.template-form-group .tox-tinymce{margin-bottom:4px;border:1px solid var(--input-border)}.template-form-group .tox .tox-statusbar{display:none}.template-form-input.input-error,.template-form-select.input-error{border-color:#dc2626}.template-field-error{display:block;margin-top:4px;font-size:12px;color:#dc2626}.template-roles-section{margin-bottom:16px}.template-role-checkboxes{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px}.template-role-checkbox{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:var(--text-primary, #374151);cursor:pointer}.template-role-checkbox input[type=checkbox]{accent-color:var(--accent-orange, #FE6B34);width:16px;height:16px;cursor:pointer}[data-theme=dark] .tox .tox-toolbar-overlord{background-color:#2a2240!important}[data-theme=dark] .tox .tox-tbtn{color:#d4cde0!important;background-color:transparent!important}[data-theme=dark] .tox .tox-tbtn:hover{background-color:#362d4a!important}[data-theme=dark] .tox .tox-tbtn--enabled,[data-theme=dark] .tox .tox-tbtn--enabled:hover{background-color:#4d4365!important}[data-theme=dark] .tox .tox-tbtn svg{fill:#d4cde0!important}[data-theme=dark] .tox .tox-tbtn__select-label{color:#d4cde0!important}[data-theme=dark] .tox .tox-tbtn__select-chevron svg{fill:#d4cde0!important}[data-theme=dark] .tox .tox-split-button{background-color:transparent!important}[data-theme=dark] .tox .tox-split-button:hover{background-color:#362d4a!important}[data-theme=dark] .tox .tox-split-button__chevron svg{fill:#d4cde0!important}[data-theme=dark] .tox .tox-statusbar{background-color:#2a2240!important;border-color:#362d4a!important;color:#a89bb8!important}[data-theme=dark] .tox .tox-statusbar__text-container,[data-theme=dark] .tox .tox-statusbar__path-item,[data-theme=dark] .tox .tox-statusbar__wordcount{color:#a89bb8!important}[data-theme=dark] .tox .tox-menu{background-color:#2a2240!important;border-color:#362d4a!important}[data-theme=dark] .tox .tox-collection__item{color:#d4cde0!important}[data-theme=dark] .tox .tox-collection__item--active{background-color:#362d4a!important}[data-theme=dark] .tox .tox-collection__item-label{color:#d4cde0!important}[data-theme=dark] .tox .tox-dialog,[data-theme=dark] .tox .tox-dialog__header{background-color:#2a2240!important;border-color:#362d4a!important}[data-theme=dark] .tox .tox-dialog__title{color:#f0edf4!important}[data-theme=dark] .tox .tox-dialog__body{background-color:#2a2240!important;color:#d4cde0!important}[data-theme=dark] .tox .tox-dialog__footer{background-color:#2a2240!important;border-color:#362d4a!important}[data-theme=dark] .tox .tox-label{color:#d4cde0!important}[data-theme=dark] .tox .tox-textfield,[data-theme=dark] .tox .tox-textarea{background-color:#362d4a!important;border-color:#4d4365!important;color:#f0edf4!important}[data-theme=dark] .tox .tox-button--secondary{background-color:#362d4a!important;border-color:#4d4365!important;color:#d4cde0!important}[data-theme=dark] .tox .tox-button--secondary:hover{background-color:#4d4365!important}[data-theme=dark] .ql-toolbar{background-color:#2a2240!important;border-color:#362d4a!important}[data-theme=dark] .ql-toolbar .ql-stroke{stroke:#d4cde0!important}[data-theme=dark] .ql-toolbar .ql-fill{fill:#d4cde0!important}[data-theme=dark] .ql-toolbar .ql-picker{color:#d4cde0!important}[data-theme=dark] .ql-toolbar .ql-picker-options{background-color:#2a2240!important;border-color:#362d4a!important}[data-theme=dark] .ql-toolbar .ql-picker-item{color:#d4cde0!important}[data-theme=dark] .ql-toolbar .ql-picker-item:hover{background-color:#362d4a!important}[data-theme=dark] .ql-container{border-color:#362d4a!important}[data-theme=dark] .ql-editor{background-color:#362d4a!important;color:#f5f3f7!important}[data-theme=dark] .ql-editor.ql-blank:before{color:var(--text-tertiary)!important}.questionnaire-builder{margin-top:8px}.questionnaire-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.questionnaire-tab{border:1px solid var(--border-primary, #d1d5db);background:var(--surface-secondary, #f9fafb);color:var(--text-primary, #374151);padding:8px 10px;border-radius:8px;font-size:13px;cursor:pointer}.questionnaire-builder-panel{margin-top:12px;padding:16px;border:1px solid var(--text-quaternary);border-radius:8px}.questionnaire-builder-question{border:1px solid var(--border-primary, #ddd);border-radius:8px;padding:10px;margin-top:10px}.questionnaire-builder-row{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.questionnaire-builder-field{margin-bottom:12px}.questionnaire-builder-label{display:block;margin-bottom:4px;font-weight:600;color:var(--text-primary)}.questionnaire-builder-input{width:100%;padding:8px;border:1px solid var(--input-border, #ccc);border-radius:4px;background:var(--input-bg, white);color:var(--text-primary, #333)}.questionnaire-builder-required{margin-bottom:12px}.questionnaire-builder-check-label{display:flex;align-items:center;gap:8px;color:var(--text-primary)}.questionnaire-builder-bottom-add{border-top:1px solid var(--border-primary, #e5e7eb);margin-top:12px;padding-top:10px}.questionnaire-builder-answer{margin-top:10px;padding:10px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;background:var(--surface-secondary, #f9fafb)}.questionnaire-builder-answer-value{margin-top:4px}.questionnaire-builder-answer-attachments{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.questionnaire-builder-answer-attachments a{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;border:1px solid var(--attachment-chip-border);background:var(--attachment-chip-bg);font-size:13px;color:var(--attachment-chip-text);text-decoration:none;font-weight:600}.questionnaire-builder-answer-attachments a:hover{background:var(--attachment-chip-bg-hover);border-color:var(--attachment-chip-border-hover);color:var(--attachment-chip-text-hover)}.questionnaire-builder-answer-attachments a:visited{color:var(--attachment-chip-text)}.questionnaire-readonly-section-description{margin-bottom:10px;color:var(--text-secondary, #4b5563)}.questionnaire-readonly-item{padding:12px 0;border-top:1px solid var(--border-primary, #e5e7eb)}.questionnaire-readonly-item:first-of-type{border-top:0;padding-top:0}.questionnaire-readonly-question{font-weight:600;margin-bottom:6px}.questionnaire-readonly-answer{color:var(--text-primary, #111827);white-space:pre-wrap}.questionnaire-readonly-empty{color:var(--text-secondary, #6b7280);padding:8px 0}.consent-form-creator-modal .modal-body{padding:1.5rem}.consent-form-creator-form{display:flex;flex-direction:column;gap:.75rem;background:var(--card-background);border:none;padding:1.5rem;border-radius:16px;min-width:0;box-sizing:border-box;width:100%}.consent-form-creator-embedded{width:100%}.consent-form-creator-embedded .error-message{margin-bottom:1rem}.consent-form-embedded-actions{display:flex;justify-content:flex-end;padding-top:.75rem}.create-draft-banner{display:flex;align-items:center;background:var(--warning-bg, #fef9ec);border:1px solid var(--warning-border, #f5d87a);border-radius:8px;padding:.5rem .75rem;font-size:.83rem;color:var(--warning-text, #7a5c00);margin-bottom:1rem}.create-discard-draft{color:var(--text-secondary, #5b6570)!important;font-size:.82rem}.consent-form-actions{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-top:1.25rem}.consent-form-actions-end{display:flex;gap:.75rem;margin-left:auto;flex-wrap:wrap}@media(max-width:600px){.consent-form-actions{flex-direction:column;align-items:stretch}.consent-form-actions-end{flex-direction:column;margin-left:0;width:100%}.consent-form-actions-end .btn{width:100%}.consent-form-actions .create-discard-draft{order:99}}.error-text{display:block;margin-top:4px;font-size:.75rem;color:var(--error-color, #ef4444)}.questionnaire-tabs{display:flex;gap:8px;margin-top:12px;overflow-x:auto;padding-bottom:6px}.questionnaire-tab{border:1px solid var(--border-primary, #d1d5db);background:var(--surface-secondary, #f8f9fa);color:var(--text-primary, #1f2937);border-radius:8px;padding:8px 12px;white-space:nowrap;cursor:pointer}.questionnaire-tab.active{background:var(--accent-orange, #FE6B34);color:var(--text-inverse, #fff);border-color:var(--accent-orange, #FE6B34)}.cfc-builder{position:fixed;inset:0;z-index:1000;display:flex;flex-direction:column;background:var(--body-background, #f9fafb);color:var(--text-primary, #1f2937);overflow:hidden}.cfc-chrome{flex:0 0 auto;display:flex;align-items:center;gap:14px;padding:12px 22px;background:var(--card-background, #ffffff);border-bottom:1px solid var(--border-primary, #e5e7eb);z-index:2}.cfc-back-btn{display:inline-flex;align-items:center;padding:6px 10px;border-radius:7px;border:1px solid var(--border-primary, #e5e7eb);background:transparent;color:var(--text-primary, #1f2937);font:inherit;font-size:12.5px;font-weight:600;cursor:pointer;transition:background .2s ease,border-color .2s ease}.cfc-back-btn:hover{background:var(--surface-hover, rgba(0, 0, 0, .04));border-color:var(--accent-orange, #FE6B34)}.cfc-chrome-divider{width:1px;height:22px;background:var(--border-primary, #e5e7eb)}.cfc-type-picker-wrap{position:relative}.cfc-type-chip{display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border-radius:999px;border:1px solid transparent;font:inherit;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;background:var(--chip-orange-bg, rgba(254, 107, 52, .14));color:var(--accent-orange, #FE6B34)}.cfc-type-chip.cfc-type-liability{background:#ec5a6a24;color:#ec5a6a}.cfc-type-chip.cfc-type-questionnaire{background:#9d6cff24;color:#9d6cff}.cfc-type-chip.cfc-type-media{background:#3a8efb24;color:#3a8efb}.cfc-type-chip.cfc-type-custom{background:var(--chip-orange-bg, rgba(254, 107, 52, .14));color:var(--accent-orange, #FE6B34)}.cfc-type-chip:hover{border-color:currentColor}.cfc-type-menu{position:absolute;top:calc(100% + 6px);left:0;list-style:none;margin:0;padding:6px;background:var(--card-background, #ffffff);border:1px solid var(--card-border, var(--border-primary, #e5e7eb));border-radius:10px;box-shadow:0 12px 32px #0000001f;z-index:10;min-width:220px}.cfc-type-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border-radius:7px;border:none;background:transparent;color:var(--text-primary, #1f2937);font:inherit;font-size:12.5px;cursor:pointer;text-align:left}.cfc-type-menu-item:hover{background:var(--surface-hover, rgba(0, 0, 0, .04))}.cfc-type-menu-item.is-selected{background:var(--chip-orange-bg, rgba(254, 107, 52, .14));color:var(--accent-orange, #FE6B34)}.cfc-type-menu-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;background:var(--chip-orange-bg, rgba(254, 107, 52, .14));color:var(--accent-orange, #FE6B34)}.cfc-type-menu-item.cfc-type-liability .cfc-type-menu-icon{background:#ec5a6a24;color:#ec5a6a}.cfc-type-menu-item.cfc-type-questionnaire .cfc-type-menu-icon{background:#9d6cff24;color:#9d6cff}.cfc-type-menu-item.cfc-type-media .cfc-type-menu-icon{background:#3a8efb24;color:#3a8efb}.cfc-title-wrap{background:var(--card-background);border:1px solid var(--card-border, var(--border-primary));border-radius:12px;padding:18px 20px;margin-bottom:14px}.cfc-title-wrap.has-error{border-color:var(--error-color, #ef4444)}.cfc-title-input{width:100%;box-sizing:border-box;padding:9px 12px;font:inherit;font-size:15px;font-weight:600;background:var(--input-bg);border:1px solid var(--input-border, var(--border-primary));border-radius:7px;color:var(--text-primary);outline:none;transition:border-color .15s ease,box-shadow .15s ease}.cfc-title-input::placeholder{color:var(--text-tertiary);font-weight:400}.cfc-title-input:hover{border-color:var(--input-focus-border, var(--accent-orange))}.cfc-title-input:focus{border-color:var(--input-focus-border, var(--accent-orange));box-shadow:0 0 0 3px var(--focus-ring, rgba(254, 107, 52, .15))}.cfc-title-input.has-error{border-color:var(--error-color, #ef4444)}.cfc-chrome-title{flex:1;min-width:0;padding:6px 8px;font-size:15px;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cfc-chrome-spacer{flex:1}.cfc-autosaved{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--text-tertiary, #9ca3af);white-space:nowrap}.cfc-autosaved-dot{width:6px;height:6px;border-radius:999px;background:var(--success-color, #22b07a)}.cfc-mobile-preview-toggle{display:none}.cfc-body{flex:1;display:grid;grid-template-columns:260px minmax(0,1fr) 460px;min-height:0;overflow:hidden}.cfc-left-pane{border-right:1px solid var(--border-primary, #e5e7eb);background:var(--card-background, #ffffff);overflow:auto;display:flex;flex-direction:column}.cfc-left-section{padding:16px 18px;border-bottom:1px solid var(--border-primary, #e5e7eb);display:flex;flex-direction:column;gap:10px}.cfc-left-section:last-child{border-bottom:none}.cfc-left-eyebrow{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary, #9ca3af)}.cfc-toggle-row{display:flex;align-items:center;gap:12px;padding:8px 0;cursor:pointer}.cfc-toggle-text{flex:1;display:flex;flex-direction:column;gap:2px}.cfc-toggle-label{font-size:12.5px;font-weight:600;color:var(--text-primary, #1f2937)}.cfc-toggle-sub{font-size:10.5px;color:var(--text-tertiary, #9ca3af);line-height:1.4}.cfc-toggle-switch{position:relative;width:36px;height:20px;border-radius:999px;background:var(--border-primary, #e5e7eb);flex:0 0 auto;transition:background .2s ease}.cfc-toggle-switch input{position:absolute;inset:0;opacity:0;cursor:pointer}.cfc-toggle-thumb{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:999px;background:#fff;box-shadow:0 1px 2px #0003;transition:left .2s ease}.cfc-toggle-switch.is-on{background:var(--accent-orange, #FE6B34)}.cfc-toggle-switch.is-on .cfc-toggle-thumb{left:18px}.cfc-outline-meta{font-size:11px;color:var(--text-tertiary, #9ca3af)}.cfc-outline-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.cfc-outline-item{display:flex;align-items:center;gap:9px;padding:8px 10px;border-radius:7px;background:var(--surface-secondary, #f9fafb)}.cfc-outline-num{width:20px;height:20px;border-radius:5px;background:var(--card-background, #ffffff);border:1px solid var(--border-primary, #e5e7eb);display:inline-flex;align-items:center;justify-content:center;font-size:10.5px;font-weight:700;color:var(--text-secondary, #6b7280);flex:0 0 auto}.cfc-outline-text{display:flex;flex-direction:column;gap:1px;min-width:0}.cfc-outline-title{font-size:12.5px;font-weight:600;color:var(--text-primary, #1f2937);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cfc-outline-sub{font-size:10.5px;color:var(--text-tertiary, #9ca3af)}.cfc-left-meta{margin-top:auto}.cfc-version-info{font-size:11px;color:var(--text-secondary, #6b7280)}.cfc-draft-banner{background:var(--warning-bg, #fef9ec);border:1px solid var(--warning-border, #f5d87a);border-radius:8px;padding:8px 10px;font-size:11.5px;color:var(--warning-text, #7a5c00)}.cfc-middle-pane{overflow:auto;background:var(--body-background, #f9fafb)}.cfc-editor-form{max-width:720px;margin:0 auto;padding:22px 28px 80px}.cfc-banner-error{max-width:720px;margin:16px auto 0;padding:12px 16px;background:var(--error-bg, #fee2e2);border:1px solid var(--error-border, #fecaca);border-radius:8px;color:var(--error-text, #991b1b);font-size:13px}.cfc-banner-success{max-width:720px;margin:16px auto 0;padding:12px 16px;background:var(--success-bg, #dcfce7);border:1px solid var(--success-border, #bbf7d0);border-radius:8px;color:var(--success-text, #166534);font-size:13px}.cfc-content-wrap,.cfc-questionnaire-wrap{background:var(--card-background, #ffffff);border:1px solid var(--card-border, var(--border-primary, #e5e7eb));border-radius:12px;padding:18px 20px}.cfc-content-label{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:10px;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary, #9ca3af)}.cfc-content-label small{font-size:11px;font-weight:500;letter-spacing:0;text-transform:none}.cfc-right-pane{border-left:1px solid var(--border-primary, #e5e7eb);background:var(--surface-secondary, #f9fafb);display:flex;flex-direction:column;overflow:hidden}.cfc-preview-head{display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--card-background, #ffffff);border-bottom:1px solid var(--border-primary, #e5e7eb)}.cfc-preview-eyebrow{font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary, #6b7280)}.cfc-preview-sub{font-size:11px;color:var(--text-tertiary, #9ca3af)}.cfc-preview-sub:before{content:"· ";margin-right:2px}.cfc-preview-close{margin-left:auto;display:none;background:transparent;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;padding:4px 10px;font:inherit;font-size:11.5px;cursor:pointer;color:var(--text-primary, #1f2937)}.cfc-preview-body{flex:1;overflow:auto;padding:20px}.cfc-preview-card{background:var(--card-background);color:var(--text-primary);border-radius:12px;overflow:hidden;box-shadow:var(--shadow-card, 0 8px 24px rgba(0, 0, 0, .1));font-family:-apple-system,BlinkMacSystemFont,Inter,system-ui,sans-serif}.cfc-preview-card-header{padding:22px 22px 18px;background:linear-gradient(135deg,var(--chip-orange-bg) 0%,var(--card-background) 60%);border-bottom:1px solid var(--card-divider, var(--border-primary))}.cfc-preview-brand{display:flex;align-items:center;gap:9px;margin-bottom:12px}.cfc-preview-brand-mark{width:26px;height:26px;border-radius:7px;background:var(--accent-orange);color:var(--text-inverse);display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:12px}.cfc-preview-brand-name{font-size:12px;font-weight:700;color:var(--text-primary)}.cfc-preview-eyebrow-tag{font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-orange)}.cfc-preview-title{margin:4px 0 6px;font-size:20px;font-weight:700;letter-spacing:-.01em;color:var(--text-primary)}.cfc-preview-desc{margin:0;font-size:12.5px;color:var(--text-secondary);line-height:1.5}.cfc-preview-progress{display:flex;align-items:center;gap:6px;margin-top:16px}.cfc-preview-progress-bar{flex:1;height:4px;border-radius:2px;background:var(--border-primary)}.cfc-preview-progress-bar.is-current{background:var(--accent-orange)}.cfc-preview-progress-text{font-size:10.5px;color:var(--text-tertiary);font-weight:600;margin-left:6px}.cfc-preview-body-content{padding:20px 22px 22px}.cfc-preview-section-eyebrow{font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:4px}.cfc-preview-section-title{font-size:16px;font-weight:700;color:var(--text-primary);margin-bottom:12px}.cfc-preview-section-desc{margin:-6px 0 12px;font-size:12.5px;color:var(--text-secondary)}.cfc-preview-questions{display:flex;flex-direction:column;gap:14px}.cfc-preview-question{display:flex;flex-direction:column;gap:6px}.cfc-preview-question-label{font-size:12.5px;font-weight:600;color:var(--text-primary)}.cfc-preview-required-mark{color:var(--accent-orange);margin-left:3px}.cfc-preview-input,.cfc-preview-textarea{width:100%;padding:9px 12px;border-radius:7px;background:var(--input-bg);border:1px solid var(--input-border, var(--border-primary));color:var(--text-primary);font-size:13px;font-family:inherit;box-sizing:border-box}.cfc-preview-textarea{min-height:70px;resize:vertical}.cfc-preview-options{display:flex;flex-direction:column;gap:6px}.cfc-preview-option{display:flex;align-items:center;gap:9px;padding:8px 12px;border:1px solid var(--border-primary);border-radius:8px;font-size:12.5px;background:var(--surface-primary, var(--card-background));color:var(--text-primary)}.cfc-preview-option-mark{width:14px;height:14px;border-radius:4px;border:1.5px solid var(--border-primary);background:transparent}.cfc-preview-option-mark.is-radio{border-radius:999px}.cfc-preview-cta-row{display:flex;gap:8px;margin-top:22px}.cfc-preview-back-btn{display:inline-flex;align-items:center;gap:4px;padding:10px 16px;border-radius:7px;background:transparent;border:1px solid var(--border-primary);color:var(--text-secondary);font-weight:600;font-size:13px;font-family:inherit;cursor:pointer;transition:border-color .15s ease,color .15s ease}.cfc-preview-back-btn:hover:not(:disabled){border-color:var(--accent-orange);color:var(--accent-orange)}.cfc-preview-back-btn:disabled{cursor:not-allowed;opacity:.5}.cfc-preview-continue-btn{flex:1;padding:10px 16px;border-radius:7px;background:var(--accent-orange);color:var(--text-inverse);border:none;font-weight:700;font-size:13px;font-family:inherit;display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;transition:background .15s ease}.cfc-preview-continue-btn:hover:not(:disabled):not([aria-disabled=true]){background:var(--accent-orange-hover, var(--accent-orange))}.cfc-preview-continue-btn:disabled{cursor:not-allowed;opacity:.5}.cfc-preview-continue-btn[aria-disabled=true]{cursor:not-allowed}.cfc-preview-continue-btn--full{flex:1}.cfc-preview-rich{font-size:13px;color:var(--text-primary);line-height:1.6}.cfc-preview-rich *{background:transparent!important}.cfc-preview-signature{margin-top:18px;padding:14px;border:1px dashed var(--warm-tint-border, var(--border-primary));border-radius:10px;background:var(--warm-tint-bg)}.cfc-preview-signature-label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:8px}.cfc-preview-signature-pad{height:88px;border-radius:8px;background:repeating-linear-gradient(135deg,var(--surface-hover) 0,var(--surface-hover) 8px,transparent 8px,transparent 16px),var(--input-bg);border:1px dashed var(--border-primary);cursor:not-allowed;position:relative;display:flex;align-items:center;justify-content:center}.cfc-preview-signature-watermark{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary)}.cfc-preview-signature-badge{display:inline-block;margin-left:8px;padding:2px 6px;border-radius:999px;background:var(--chip-orange-bg);color:var(--accent-orange);font-size:9.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.cfc-preview-signature-hint{font-size:11px;color:var(--text-tertiary);margin-top:6px}.cfc-preview-placeholder{font-size:12.5px;color:var(--text-tertiary);font-style:italic;margin:0}.cfc-preview-placeholder-inline{margin:0;font-style:normal;padding:4px 0}.cfc-mobile-sheet{display:none;position:fixed;bottom:0;left:0;right:0;z-index:6;padding:14px 16px 22px;background:var(--card-background, #ffffff);border-top:1px solid var(--border-primary, #e5e7eb);border-radius:16px 16px 0 0;box-shadow:0 -10px 30px #0000002e}.cfc-mobile-sheet-grip{width:36px;height:3px;border-radius:3px;background:var(--border-primary, #e5e7eb);margin:0 auto 12px}.cfc-mobile-sheet-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:8px}.cfc-mobile-sheet-eyebrow{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary, #6b7280)}.cfc-mobile-sheet-preview{background:transparent;border:none;color:var(--accent-orange, #FE6B34);font:inherit;font-size:11.5px;font-weight:600;cursor:pointer}.cfc-mobile-sheet-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.cfc-mobile-sheet-tile{display:flex;flex-direction:column;align-items:center;gap:3px;padding:9px 4px;border-radius:8px;background:var(--surface-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);color:var(--text-primary, #1f2937);font:inherit;font-size:10px;font-weight:600;cursor:pointer;transition:border-color .2s ease,background .2s ease}.cfc-mobile-sheet-tile:hover,.cfc-mobile-sheet-tile:active{border-color:var(--accent-orange, #FE6B34);background:var(--chip-orange-bg, rgba(254, 107, 52, .1))}.cfc-mobile-sheet-glyph{font-size:16px;color:var(--text-secondary, #6b7280);font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;line-height:1}@media(max-width:1100px){.cfc-body{grid-template-columns:240px minmax(0,1fr)}.cfc-right-pane{display:none}.cfc-mobile-preview-toggle{display:inline-flex}.cfc-right-pane.is-mobile-open{display:flex;position:fixed;inset:56px 0 0;z-index:5;background:var(--surface-secondary, #f9fafb)}.cfc-right-pane.is-mobile-open .cfc-preview-close{display:inline-flex}}@media(max-width:768px){.cfc-chrome{padding:10px 14px;flex-wrap:wrap;gap:8px}.cfc-back-btn{padding:5px 8px}.cfc-chrome-divider{display:none}.cfc-title-input{font-size:14px}.cfc-chrome-title{flex:1;font-size:13px}.cfc-autosaved{font-size:10px}.cfc-body{grid-template-columns:1fr}.cfc-left-pane{border-right:none;border-bottom:1px solid var(--border-primary, #e5e7eb);max-height:220px;overflow:auto}.cfc-editor-form{padding:16px 16px 220px}.cfc-mobile-sheet{display:block}}.rl-page{--rl-bg: var(--body-background);--rl-surface: var(--card-background);--rl-surface-2: var(--bg-secondary, var(--surface-secondary));--rl-border: var(--card-border, var(--border-primary));--rl-text: var(--text-primary);--rl-text-muted: var(--text-secondary);--rl-text-dim: var(--text-tertiary);--rl-accent: var(--accent-orange);--rl-accent-soft: var(--chip-orange-bg);--rl-accent-strong: var(--accent-orange-hover);max-width:1280px;margin:0 auto;padding:22px 32px 32px;color:var(--rl-text);display:flex;flex-direction:column;min-height:0}@keyframes rl-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.rl-skeleton{border-radius:4px;background:linear-gradient(90deg,var(--surface-hover) 25%,rgba(255,255,255,.12) 50%,var(--surface-hover) 75%);background-size:200% 100%;animation:rl-skeleton-shimmer 1.4s ease-in-out infinite}.rl-page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding-bottom:16px;border-bottom:1px solid var(--rl-border);margin-bottom:16px}.rl-page-header h1{margin:0;font-size:22px;font-weight:700;letter-spacing:-.01em;color:var(--rl-text)}.rl-page-header__titles p{margin:4px 0 0;font-size:13px;color:var(--rl-text-muted)}.rl-page-actions{display:flex;gap:8px;flex:0 0 auto}.rl-body{display:flex;gap:0;min-height:0;background:var(--rl-surface);border:1px solid var(--rl-border);border-radius:12px;overflow:hidden}.rl-sidebar{width:220px;flex:0 0 220px;border-right:1px solid var(--rl-border);padding:16px 10px;display:flex;flex-direction:column;gap:2px;background:var(--rl-bg);overflow:auto}.rl-sidebar__label{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--rl-text-dim);padding:0 8px 8px}.rl-pane{flex:1;display:flex;flex-direction:column;min-width:0;background:var(--rl-surface)}.rl-toolbar{padding:12px 16px;border-bottom:1px solid var(--rl-border);display:flex;align-items:center;gap:12px;flex-wrap:wrap}.rl-toolbar__search{flex:1 1 280px;max-width:360px}.rl-col-header{display:flex;align-items:center;gap:14px;padding:10px 18px;font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--rl-text-dim);border-bottom:1px solid var(--rl-border);background:var(--rl-bg)}.rl-col--icon{width:36px;flex:0 0 36px}.rl-col--main{flex:1;min-width:0}.rl-col--size{width:80px;flex:0 0 80px;text-align:right;font-variant-numeric:tabular-nums}.rl-col--cat{width:130px;flex:0 0 130px}.rl-col--added{width:110px;flex:0 0 110px;color:var(--rl-text-dim)}.rl-col--more{width:32px;flex:0 0 32px}.rl-list{flex:1 1 auto;overflow:auto}.rl-row{display:flex;align-items:center;gap:14px;padding:12px 18px;border-bottom:1px solid var(--rl-border);cursor:pointer;background:transparent;outline:none;transition:background .12s ease;position:relative}.rl-row:hover{background:var(--rl-surface-2)}.rl-row:focus-visible{box-shadow:inset 0 0 0 2px var(--rl-accent)}.rl-row__body{flex:1;min-width:0}.rl-row__title-line{display:flex;align-items:center;gap:8px;margin-bottom:2px;min-width:0}.rl-row__title{font-size:13.5px;font-weight:600;color:var(--rl-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rl-row__desc{font-size:11.5px;color:var(--rl-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rl-row .rl-col--size,.rl-row .rl-col--cat,.rl-row .rl-col--added{font-size:11.5px;color:var(--rl-text-muted)}.rl-row .rl-col--size{text-align:right}.rl-cat-pill{display:inline-block;padding:2px 9px;border-radius:999px;background:var(--rl-surface-2);border:1px solid var(--rl-border);color:var(--rl-text-muted);font-size:11px;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.rl-row--mobile{padding:10px 14px;gap:11px}.rl-row--mobile .rl-row__title{font-size:13.5px}.rl-row__meta{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--rl-text-muted);margin-top:2px}.rl-row__sep{color:var(--rl-text-dim)}.rl-row__meta-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rl-row__more{position:relative;width:32px;flex:0 0 32px;display:flex;align-items:center;justify-content:center}.rl-row__more-btn{width:28px;height:28px;border-radius:6px;border:none;background:transparent;color:var(--rl-text-muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .12s ease,color .12s ease}.rl-row:hover .rl-row__more-btn,.rl-row__more-btn:focus-visible,.rl-row__more-btn[aria-expanded=true]{background:var(--rl-surface-2);color:var(--rl-text)}.rl-row__menu{position:absolute;top:calc(100% + 4px);right:0;min-width:140px;z-index:30;background:var(--rl-surface);border:1px solid var(--rl-border);border-radius:8px;box-shadow:0 14px 32px #0000002e;padding:4px;display:flex;flex-direction:column;gap:1px}.rl-row__menu-item{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:6px;border:none;background:transparent;color:var(--rl-text);font-size:12.5px;font-weight:500;font-family:inherit;cursor:pointer;text-align:left}.rl-row__menu-item:hover{background:var(--rl-surface-2)}.rl-row__menu-item--danger{color:var(--error-color, #ef4444)}.rl-row__menu-item--danger:hover{background:color-mix(in srgb,var(--error-color, #ef4444) 12%,transparent)}.rl-group-header{position:sticky;top:0;z-index:4;display:flex;align-items:center;gap:10px;padding:10px 18px;background:var(--rl-bg);border-bottom:1px solid var(--rl-border)}.rl-group-header__title{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--rl-text)}.rl-group-header__count{font-size:11px;color:var(--rl-text-dim)}.rl-group-header__link{background:transparent;border:none;cursor:pointer;color:var(--rl-text-muted);font-size:11px;font-family:inherit;padding:2px 6px;border-radius:4px}.rl-group-header__link:hover{color:var(--rl-accent);background:var(--rl-accent-soft)}.rl-empty{padding:48px 20px;text-align:center;color:var(--rl-text-muted);font-size:13px}.rl-state{padding:32px;display:flex;flex-direction:column;gap:12px;align-items:center;justify-content:center;color:var(--rl-text-muted)}.rl-state--error{color:var(--error-color, #ef4444)}.rl-mobile-filters{display:flex;flex-direction:column;gap:10px;padding:12px;background:var(--rl-surface);border:1px solid var(--rl-border);border-radius:12px;margin-bottom:12px}.rl-mobile-filters--collapsed{display:none}.rl-fab{position:fixed;right:18px;bottom:var(--mtd-fab-bottom, calc(78px + env(safe-area-inset-bottom, 0px)) );width:54px;height:54px;border-radius:999px;background:var(--accent-orange);color:#fff;border:none;cursor:pointer;box-shadow:0 12px 28px #ef8a4a73;display:inline-flex;align-items:center;justify-content:center;z-index:60;transition:transform .12s ease,background .15s ease}.rl-fab:hover{background:var(--accent-orange-hover);transform:translateY(-1px)}.rl-fab:active{transform:translateY(0)}.rl-page--mobile{padding:12px 14px 96px;max-width:none}.rl-page--mobile .rl-page-header{flex-direction:column;align-items:stretch;border-bottom:none;padding-bottom:6px;margin-bottom:12px}.rl-page--mobile .rl-page-header h1{font-size:22px}.rl-page--mobile .rl-body{display:block;border:none;background:transparent;border-radius:0;overflow:visible}.rl-page--mobile .rl-list{background:var(--rl-surface);border:1px solid var(--rl-border);border-radius:12px;overflow:hidden}@media(max-width:900px){.rl-page{padding:18px 16px}.rl-body{flex-direction:column}.rl-sidebar{width:100%;flex:0 0 auto;border-right:none;border-bottom:1px solid var(--rl-border);flex-direction:row;overflow-x:auto;padding:10px;gap:4px;scrollbar-width:none}.rl-sidebar::-webkit-scrollbar{display:none}.rl-sidebar .rl-sidebar__label{display:none}.rl-sidebar .rp-cat{width:auto;flex:0 0 auto;padding:5px 10px;border-radius:999px;border:1px solid var(--rl-border)}.rl-sidebar .rp-cat--active{border-color:transparent}.rl-col-header,.rl-col--size,.rl-col--cat,.rl-col--added{display:none}.rl-row{padding:10px 14px;gap:11px}}.delete-confirm-overlay{position:fixed;inset:0;background:var(--modal-overlay, rgba(0, 0, 0, .6));display:flex;align-items:center;justify-content:center;z-index:1000}.delete-confirm-dialog{background:var(--card-background, #fff);padding:24px;border-radius:12px;max-width:400px;width:90%;box-shadow:0 20px 60px #0000004d}.delete-confirm-dialog h4{margin:0 0 10px;color:var(--text-primary, #1f2937)}.delete-confirm-dialog p{margin:0 0 20px;color:var(--text-secondary, #6b7280)}.confirm-actions{display:flex;justify-content:flex-end;gap:10px}.cancel-button{padding:8px 16px;border-radius:6px;cursor:pointer;background:var(--surface-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);color:var(--text-primary, #1f2937);font-weight:500;transition:background-color .2s ease}.cancel-button:hover{background:var(--surface-hover, #f3f4f6)}.confirm-delete-button{background:var(--error-color, #ef4444);color:var(--text-inverse, #fff);border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-weight:500;transition:background-color .2s ease}.confirm-delete-button:hover{background:var(--error-border, #dc2626)}.confirm-delete-button:disabled{opacity:.5;cursor:not-allowed}.resource-upload .resource-form{display:flex;flex-direction:column;min-height:0}.resource-upload .modal-body{display:flex;flex-direction:column;gap:.625rem}.resource-upload .form-group{display:flex;flex-direction:column;gap:.25rem;padding:0;margin:0;background:transparent;border-radius:0;min-width:0}.resource-upload .form-group label{font-size:.75rem;font-weight:600;color:var(--text-primary, #1e293b);margin:0}.resource-upload .form-group input,.resource-upload .form-group select,.resource-upload .form-group textarea{padding:.4rem .75rem;border:1px solid var(--border-primary, #d1d5db);border-radius:6px;font-size:.875rem;font-family:inherit;background:var(--input-bg, white);color:var(--text-primary, #374151);transition:border-color .15s,box-shadow .15s;width:100%;box-sizing:border-box;min-width:0}.resource-upload .form-group textarea{line-height:1.5;resize:vertical;min-height:64px}.resource-upload .form-group input:focus,.resource-upload .form-group select:focus,.resource-upload .form-group textarea:focus{outline:none;border-color:var(--accent-orange);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-orange) 18%,transparent)}.resource-upload .form-group input.error,.resource-upload .form-group select.error,.resource-upload .form-group textarea.error{border-color:var(--error-color, #ef4444)}.resource-upload .form-group input::placeholder,.resource-upload .form-group textarea::placeholder{font-size:.875rem;font-family:inherit;color:var(--text-tertiary, #9ca3af);opacity:1}.resource-upload .form-group small{font-size:.75rem;color:var(--text-tertiary, #9ca3af);margin:0}.resource-upload .form-row{display:grid;grid-template-columns:1fr 1fr;gap:.625rem;min-width:0}@media(max-width:480px){.resource-upload .form-row{grid-template-columns:1fr}}.file-upload-alternative{margin-top:10px;padding-top:10px;border-top:1px solid var(--border-primary, #e5e7eb)}.file-upload-alternative p{margin:0 0 8px;font-size:14px;color:var(--text-tertiary, #9ca3af)}.file-upload-alternative input{width:100%;padding:8px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;background:var(--input-bg, #fff);color:var(--text-primary, #1f2937)}.resource-form-embedded{display:flex;flex-direction:column;gap:.5rem}.resource-form-embedded .error-message{padding:12px 16px;font-weight:500;margin-bottom:1rem}.resource-form-actions{display:flex;justify-content:flex-end;padding-top:.75rem}.rp-overlay{--rp-bg: var(--body-background);--rp-elevated: var(--card-background);--rp-surface: var(--card-background);--rp-surface-2: var(--bg-secondary);--rp-border: var(--card-border, var(--border-primary));--rp-border-soft: var(--card-border, var(--border-primary));--rp-text: var(--text-primary);--rp-text-muted: var(--text-secondary);--rp-text-dim: var(--text-tertiary);--rp-accent: var(--accent-orange);--rp-accent-soft: var(--chip-orange-bg);--rp-accent-strong: var(--accent-orange-hover);position:fixed;inset:0;background:#080c148c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:1100;display:flex;align-items:center;justify-content:center;padding:16px;font-family:var(--font-sans, -apple-system, BlinkMacSystemFont, "Inter", system-ui, sans-serif)}.rp-modal{width:min(760px,100%);height:min(720px,calc(100% - 32px));background:var(--rp-elevated);border:1px solid var(--rp-border);border-radius:16px;box-shadow:0 30px 80px #0000008c;display:flex;flex-direction:column;overflow:hidden;color:var(--rp-text)}.rp-modal--mobile{width:100%;height:100%;max-height:100%;border-radius:0;border:none;align-self:stretch}.rp-overlay:has(.rp-modal--mobile){padding:0}.rp-header{flex:0 0 auto;padding:14px 18px 12px;border-bottom:1px solid var(--rp-border-soft);display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--rp-elevated)}.rp-header__title{margin:0;font-size:16px;font-weight:700;color:var(--rp-text);letter-spacing:-.005em}.rp-header__subtitle{margin:2px 0 0;font-size:11.5px;color:var(--rp-text-muted)}.rp-header__actions{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto}.rp-filter-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid var(--rp-border);background:transparent;color:var(--rp-text-muted);font-size:12px;font-weight:600;cursor:pointer;font-family:inherit;transition:all .15s ease}.rp-filter-btn:hover{border-color:var(--rp-accent);color:var(--rp-accent)}.rp-filter-btn--open{background:var(--rp-accent-soft);border-color:var(--rp-accent);color:var(--rp-accent)}.rp-filter-btn__count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--rp-accent);color:#fff;font-size:10.5px;font-weight:700}.rp-close{width:28px;height:28px;border-radius:999px;border:1px solid var(--rp-border);background:transparent;color:var(--rp-text-muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;transition:all .15s ease}.rp-close:hover{color:var(--rp-accent);border-color:var(--rp-accent)}.rp-body{flex:1 1 auto;display:flex;min-height:0}.rp-body--mobile{flex-direction:column}.rp-state{flex:1 1 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:32px;color:var(--rp-text-muted)}.rp-state--error{color:var(--error-color, #ef4444)}.rp-sidebar{width:200px;flex:0 0 200px;border-right:1px solid var(--rp-border-soft);background:var(--rp-bg);display:flex;flex-direction:column;overflow:auto}.rp-sidebar__section{padding:14px 14px 12px}.rp-sidebar__section+.rp-sidebar__section{border-top:1px solid var(--rp-border-soft)}.rp-sidebar__label{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--rp-text-dim);margin-bottom:8px}.rp-cat{appearance:none;width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 10px;border-radius:6px;border:none;background:transparent;color:var(--rp-text);font-size:12.5px;font-weight:500;font-family:inherit;cursor:pointer;margin-bottom:2px;text-align:left;transition:background .15s ease,color .15s ease}.rp-cat:hover{background:var(--rp-surface-2)}.rp-cat--active{background:var(--rp-accent-soft);color:var(--rp-accent);font-weight:600}.rp-cat__count{font-size:11px;color:var(--rp-text-dim)}.rp-cat--active .rp-cat__count{color:var(--rp-accent)}.rp-pills{display:flex;flex-wrap:wrap;gap:4px}.rp-pill{appearance:none;padding:4px 11px;border-radius:999px;font-size:12px;font-weight:600;font-family:inherit;border:1px solid var(--rp-border);background:transparent;color:var(--rp-text-muted);cursor:pointer;white-space:nowrap;transition:all .15s ease}.rp-pill:hover{border-color:var(--rp-accent);color:var(--rp-accent)}.rp-pill--active{background:var(--rp-accent);color:#fff;border-color:transparent}.rp-pill--active:hover{background:var(--rp-accent-strong);color:#fff;border-color:transparent}.rp-pill--sm{padding:5px 11px;font-size:11.5px}.rp-pane{flex:1;display:flex;flex-direction:column;min-width:0}.rp-search-bar{padding:10px 16px;border-bottom:1px solid var(--rp-border-soft);background:var(--rp-bg)}.rp-search{position:relative;display:flex;align-items:center}.rp-search__icon{position:absolute;left:12px;color:var(--rp-text-muted);pointer-events:none}.rp-search input{width:100%;padding:8px 12px 8px 34px;border-radius:8px;border:1px solid var(--rp-border);background:var(--rp-bg);color:var(--rp-text);font-size:13px;font-family:inherit;outline:none;box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease}.rp-search input:focus{border-color:var(--rp-accent);box-shadow:0 0 0 3px var(--rp-accent-soft)}.rp-list{flex:1;overflow:auto}.rp-list--grouped{padding-bottom:6px}.rp-empty{padding:48px 20px;text-align:center;color:var(--rp-text-muted);font-size:13px}.rp-row{display:flex;align-items:center;gap:12px;padding:10px 16px;cursor:pointer;background:transparent;border-bottom:1px solid var(--rp-border-soft);outline:none;transition:background .12s ease}.rp-row:hover{background:var(--rp-surface-2)}.rp-row:focus-visible{box-shadow:inset 0 0 0 2px var(--rp-accent)}.rp-row--checked,.rp-row--checked:hover{background:var(--rp-accent-soft)}.rp-row--indent{padding-left:28px}.rp-row__body{flex:1;min-width:0}.rp-row__title{font-size:13px;font-weight:600;color:var(--rp-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rp-row__desc{font-size:11.5px;color:var(--rp-text-muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rp-check{width:18px;height:18px;border-radius:5px;border:1.5px solid var(--rp-border);background:transparent;display:inline-flex;align-items:center;justify-content:center;color:#fff;flex:0 0 auto;transition:all .12s ease}.rp-check--on{background:var(--rp-accent);border-color:var(--rp-accent)}.rp-icon{width:30px;height:30px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.rp-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px 2px 6px;border-radius:999px;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;flex:0 0 auto}.rp-type--video{background:color-mix(in srgb,#3a8efb 16%,transparent);color:#3a8efb}.rp-type--pdf{background:color-mix(in srgb,var(--accent-orange) 16%,transparent);color:var(--accent-orange)}.rp-type--link{background:color-mix(in srgb,#22b07a 16%,transparent);color:#22b07a}.rp-mobile-filters{padding:10px 16px;border-bottom:1px solid var(--rp-border-soft);background:var(--rp-bg);display:flex;flex-direction:column;gap:8px}.rp-chip-row{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.rp-chip-row::-webkit-scrollbar{display:none}.rp-chip-row--wrap{flex-wrap:wrap;overflow:visible}.rp-group{background:transparent}.rp-group__header{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:8px;width:100%;padding:10px 18px;background:var(--rp-elevated);border-bottom:1px solid var(--rp-border-soft);border-top:none;border-left:none;border-right:none;cursor:pointer;text-align:left;color:inherit;font-family:inherit}.rp-group__chev{color:var(--rp-text-muted);transform:rotate(0);transition:transform .12s ease;flex:0 0 auto}.rp-group__header--open .rp-group__chev{transform:rotate(90deg)}.rp-group__title{font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--rp-text)}.rp-group__count{font-size:11px;color:var(--rp-text-dim)}.rp-group__picked{font-size:10px;font-weight:700;padding:1px 7px;border-radius:999px;background:var(--rp-accent-soft);color:var(--rp-accent);margin-left:auto}.rp-footer{flex:0 0 auto;padding:10px 16px;border-top:1px solid var(--rp-border-soft);background:var(--rp-bg);display:flex;align-items:center;justify-content:space-between;gap:10px}.rp-count{font-size:12px;color:var(--rp-text-muted)}.rp-count strong{color:var(--rp-text);font-weight:700}.rp-count__num--active{color:var(--rp-accent)!important}.rp-actions{display:flex;gap:8px}.rp-btn{font-family:inherit;font-size:12.5px;font-weight:600;border-radius:999px;padding:7px 14px;border:1px solid var(--rp-border);background:var(--rp-elevated);color:var(--rp-text);cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all .15s ease}.rp-btn:hover:not(:disabled){border-color:var(--rp-accent);color:var(--rp-accent)}.rp-btn:disabled{opacity:.55;cursor:not-allowed}.rp-btn--primary{background:var(--rp-accent);color:#fff;border-color:transparent}.rp-btn--primary:hover:not(:disabled){background:var(--rp-accent-strong);color:#fff;border-color:transparent}.rp-btn--primary:disabled{background:var(--rp-accent);color:#fff}.rp-btn--full{width:100%;justify-content:center;padding:11px 14px;font-size:13.5px}.rp-filter-sheet{position:fixed;inset:0;background:#0006;display:flex;align-items:flex-end;z-index:1200}.rp-filter-sheet__panel{width:100%;background:var(--rp-elevated);border-top-left-radius:16px;border-top-right-radius:16px;padding:14px 16px 22px;display:flex;flex-direction:column;gap:12px;animation:rp-sheet-up .18s ease-out}.rp-filter-sheet__grip{width:36px;height:4px;border-radius:999px;background:var(--rp-border);margin:0 auto 4px}@keyframes rp-sheet-up{0%{transform:translateY(40px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:768px){.resource-upload-form .form-group{margin-bottom:12px}.resource-upload-form .form-actions{margin-top:12px}}.client-invite-modal .modal-subtitle{margin-top:.25rem;font-size:.875rem;color:var(--text-secondary, #6b7280)}.client-invite-modal .invite-form,.client-invite-form .channel-selector{margin-bottom:1.5rem}.client-invite-form .channel-label{display:block;font-weight:600;color:var(--text-primary, #1f2937);margin-bottom:.75rem;font-size:.95rem}.client-invite-form .channel-options{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.client-invite-form .channel-option{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;border:2px solid var(--border-primary, #e5e7eb);border-radius:8px;background:var(--input-bg, #ffffff);cursor:pointer;transition:all .2s ease;font-size:.95rem;font-weight:500;color:var(--text-primary, #1f2937)}.client-invite-form .channel-option:hover{border-color:var(--accent-orange-hover, #e55a2b);background:var(--surface-hover, #f3f4f6)}.client-invite-form .channel-option.active{border-color:var(--accent-orange, #FE6B34);background:var(--warm-tint-bg, #fff7ed);color:var(--accent-orange, #FE6B34)}.client-invite-form .channel-icon{font-size:1.5rem}.client-invite-form .form-field{margin-bottom:1rem}.client-invite-form .form-field input,.client-invite-form .form-field textarea{width:100%;padding:.75rem;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;font-size:1rem;font-family:inherit;transition:border-color .2s ease;background:var(--input-bg, #ffffff);color:var(--text-primary, #1f2937)}.client-invite-form .form-field input:focus,.client-invite-form .form-field textarea:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.client-invite-form .form-field input:disabled,.client-invite-form .form-field textarea:disabled{background:var(--surface-secondary, #f9fafb);color:var(--text-tertiary, #9ca3af);cursor:not-allowed}.client-invite-form .form-field textarea{resize:vertical;min-height:80px}.client-invite-form .assign-trainer-select{width:100%;padding:.75rem;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;font-size:1rem;font-family:inherit;background-color:var(--input-bg, #ffffff);color:var(--text-primary, #1f2937);transition:border-color .2s ease;cursor:pointer}.client-invite-form .assign-trainer-select:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.client-invite-form .assign-trainer-select:disabled{background:var(--surface-secondary, #f9fafb);color:var(--text-tertiary, #9ca3af);cursor:not-allowed}.client-invite-form .error-message{display:flex;align-items:center;gap:.5rem;padding:12px 16px;background:var(--error-bg, #fef2f2);border:1px solid var(--error-border, #fecaca);border-radius:6px;color:var(--error-text, #991b1b);font-size:.875rem;font-weight:500;margin-bottom:1rem}.client-invite-form .success-message{background:var(--success-bg, #f0fdf4);color:var(--success-text, #166534);padding:.75rem 1rem;border-radius:6px;margin-bottom:1rem;border:1px solid var(--success-border, #bbf7d0);display:flex;align-items:center;gap:.5rem;animation:slideIn .3s ease-out;font-size:.9rem}.client-invite-form .success-icon{font-weight:700;font-size:1.1rem}.client-invite-form .sms-coming-soon-overlay{position:absolute;inset:0;z-index:10;display:flex;align-items:center;justify-content:center;background:var(--card-background, #ffffff);opacity:.92;border-radius:8px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.client-invite-form .sms-coming-soon-text{margin:0;font-size:15px;font-weight:600;color:var(--text-secondary, #6b7280);text-align:center}.client-invite-form-actions{display:flex;justify-content:flex-end;gap:.75rem;padding-top:.75rem}@media(max-width:480px){.client-invite-form .channel-options{grid-template-columns:1fr}}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.client-invite-modal .invitation-history-section{background:var(--surface-secondary, #f9fafb);border-radius:8px;overflow:hidden;border:1px solid var(--border-primary, #e5e7eb)}.client-invite-modal .history-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;padding:1rem;border:none;background:transparent;cursor:pointer;font-size:.95rem;font-weight:600;color:var(--text-primary, #1f2937);transition:background .2s ease}.client-invite-modal .history-toggle:hover{background:var(--surface-hover, #f3f4f6)}.client-invite-modal .toggle-icon{color:var(--text-secondary, #6b7280);font-size:.75rem}.client-invite-modal .invitation-history{border-top:1px solid var(--border-primary, #e5e7eb);padding:1rem;max-height:200px;overflow-y:auto}.client-invite-modal .history-list{display:flex;flex-direction:column;gap:.75rem}.client-invite-modal .history-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:var(--card-background, #ffffff);border-radius:6px;border:1px solid var(--border-primary, #e5e7eb);gap:.75rem}.client-invite-modal .history-info{flex:1;min-width:0}.client-invite-modal .history-contact{font-weight:500;color:var(--text-primary, #1f2937);margin-bottom:.25rem;font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-invite-modal .history-meta{display:flex;flex-wrap:wrap;gap:.5rem;font-size:.75rem;color:var(--text-secondary, #6b7280)}.client-invite-modal .history-channel{display:flex;align-items:center;gap:.25rem}.client-invite-modal .history-expiration{color:var(--warning-text, #92400e);font-weight:500}.client-invite-modal .history-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.client-invite-modal .status-expired{background:var(--error-bg, #fef2f2);color:var(--error-text, #991b1b)}.client-invite-modal .btn-resend{padding:.35rem .6rem;background:var(--success-color, #28a745);color:var(--text-inverse, #ffffff);border:none;border-radius:4px;cursor:pointer;font-size:.75rem;font-weight:500;transition:background .2s ease;display:flex;align-items:center;gap:.25rem;white-space:nowrap}.client-invite-modal .btn-resend:hover{background:var(--success-hover, #218838)}.client-invite-modal .btn-delete{padding:.35rem .5rem;background:var(--error-color, #dc3545);color:var(--text-inverse, #ffffff);border:none;border-radius:4px;cursor:pointer;font-size:.85rem;font-weight:700;transition:background .2s ease;min-width:28px;height:28px;display:flex;align-items:center;justify-content:center}.client-invite-modal .btn-delete:hover{background:var(--error-hover, #c82333)}.client-invite-modal .empty-state{text-align:center;padding:1rem;color:var(--text-secondary, #6b7280);font-size:.9rem}@media(max-width:480px){.client-invite-modal .history-item{flex-direction:column;align-items:flex-start}.client-invite-modal .history-actions{width:100%;justify-content:flex-start;margin-top:.5rem}}.client-invite-modal .btn-resend:disabled{opacity:.7;cursor:not-allowed}.client-invite-modal .btn-resend-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:btn-spin .6s linear infinite;vertical-align:middle}.add-animal-form{display:flex;flex-direction:column;gap:.75rem;background:var(--card-background);border:none;padding:1.5rem;border-radius:16px;min-width:0;box-sizing:border-box;width:100%}.aaf-layout{display:grid;grid-template-columns:120px 1fr;min-width:0;gap:1.25rem;align-items:start}.aaf-photo-col{display:flex;flex-direction:column;align-items:center;gap:.5rem}.aaf-photo-wrap{position:relative;width:120px;height:120px}.aaf-photo-clear{position:absolute;top:-2px;right:-2px;width:26px;height:26px;padding:0;border-radius:50%;border:1px solid var(--card-border, var(--border-primary));background:var(--card-background, #fff);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 1px 3px #0000002e;transition:border-color .15s ease,color .15s ease,background .15s ease;z-index:1}.aaf-photo-clear:hover:not(:disabled),.aaf-photo-clear:focus-visible{outline:none;border-color:var(--error-color);color:var(--error-color);background:var(--error-bg)}.aaf-photo-clear:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--error-color) 22%,transparent)}.aaf-photo-clear:disabled{opacity:.5;cursor:not-allowed}.aaf-photo-upload{width:120px;height:120px;border-radius:50%;border:2px dashed var(--border-primary, #d1d5db);background:var(--surface-hover, #f9fafb);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer;color:var(--text-secondary, #6b7280);font-size:.75rem;text-align:center;transition:border-color .2s,background .2s}.aaf-photo-upload:hover{border-color:var(--accent-orange);color:var(--accent-orange);background:var(--hover-bg, #f3f4f6)}.aaf-photo-preview{width:100%;height:100%;object-fit:cover;border-radius:50%}.aaf-photo-hint{font-size:.6rem;font-weight:600;letter-spacing:.03em;color:var(--text-tertiary, #9ca3af);text-transform:uppercase;text-align:center;margin:0}.aaf-fields{display:flex;flex-direction:column;gap:.625rem;min-width:0}.aaf-field{display:flex;flex-direction:column;gap:.25rem;min-width:0}.aaf-field label{font-size:.75rem;font-weight:600;color:var(--text-primary, #1e293b)}.aaf-field input,.aaf-field select{padding:.4rem .75rem;border:1px solid var(--border-primary, #d1d5db);border-radius:6px;font-size:.875rem;background:var(--input-bg, white);color:var(--text-primary, #374151);transition:border-color .15s,box-shadow .15s;width:100%;box-sizing:border-box;min-width:0}.aaf-field select.placeholder{color:var(--text-tertiary, #9ca3af)}.aaf-field select option{color:var(--text-primary, #374151)}.aaf-field input:focus,.aaf-field select:focus{outline:none;border-color:var(--accent-orange, #f4a261);box-shadow:0 0 0 3px #f4a26126}.aaf-field input.error,.aaf-field select.error{border-color:var(--error-color, #ef4444)}.aaf-row{display:grid;grid-template-columns:1fr 1fr;gap:.625rem;min-width:0}.aaf-input-with-unit{display:flex;border:1px solid var(--border-primary, #d1d5db);border-radius:6px;overflow:hidden;background:var(--input-bg, white)}.aaf-input-with-unit input{flex:1;border:none!important;background:transparent;padding:.4rem .75rem;font-size:.875rem;color:var(--text-primary, #374151);outline:none;box-shadow:none!important}.aaf-input-with-unit input.error{border:none!important}.aaf-input-with-unit:has(input.error){border-color:var(--error-color, #ef4444)}.aaf-unit-select{border:none!important;border-left:1px solid var(--border-primary, #d1d5db)!important;background:var(--surface-hover, #f9fafb)!important;color:var(--text-secondary, #6b7280)!important;padding:0 1.5rem 0 .75rem!important;font-size:.8rem!important;cursor:pointer;border-radius:0!important;width:auto!important}.aaf-input-with-unit:focus-within{border-color:var(--accent-orange, #f4a261);box-shadow:0 0 0 3px #f4a26126}.aaf-searchable-select{position:relative}.aaf-select-dropdown{position:absolute;top:100%;left:0;right:0;max-height:200px;overflow-y:auto;background:var(--input-bg, white);border:1px solid var(--border-primary, #d1d5db);border-top:none;border-radius:0 0 6px 6px;box-shadow:0 4px 6px #0000001a;z-index:100}.aaf-select-option{display:flex;flex-direction:column;gap:2px;padding:.625rem .75rem;cursor:pointer;transition:background-color .15s}.aaf-select-option:hover{background:var(--hover-bg, #f3f4f6)}.aaf-select-option.selected{background:var(--chip-orange-bg, #fff7ed)}.aaf-client-name{font-weight:500;color:var(--text-primary, #374151)}.aaf-client-email{font-size:.75rem;color:var(--text-secondary, #6b7280)}.aaf-select-empty{padding:.75rem;text-align:center;color:var(--text-secondary, #6b7280);font-size:.875rem}.aaf-loading-text{padding:.5rem;color:var(--text-secondary, #6b7280);font-size:.875rem}.aaf-error{display:block;font-size:.75rem;color:var(--error-color, #ef4444)}.aaf-submit-error{display:flex;align-items:center;gap:.5rem;padding:12px 16px;background:var(--error-bg, #fef2f2);border:1px solid var(--error-border, #fecaca);border-radius:6px;color:var(--error-text, #991b1b);font-size:.875rem;font-weight:500;margin-bottom:16px}.aaf-success{padding:.75rem;background:var(--success-bg, #f0fdf4);border:1px solid var(--success-border, #bbf7d0);border-radius:6px;color:var(--success-text, #166534);font-size:.875rem}.aaf-tag-input{display:flex;gap:.5rem;align-items:stretch}.aaf-tag-input input{flex:1 1 0;min-width:0;height:40px;font-size:16px}.aaf-tag-input .btn{flex:0 0 auto;height:40px;padding:0 1rem;align-self:stretch;min-width:80px}.aaf-tags-list{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.aaf-tag{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;background:var(--chip-orange-bg, #fff7ed);color:var(--accent-orange, #f4a261);border-radius:4px;font-size:.8125rem}.aaf-tag-remove{display:flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:none;background:transparent;color:var(--accent-orange, #f4a261);cursor:pointer;font-size:1rem;line-height:1;opacity:.7;transition:opacity .15s}.aaf-tag-remove:hover{opacity:1}.aaf-actions{display:flex;justify-content:flex-end;gap:.75rem}@media(max-width:600px){.aaf-layout{grid-template-columns:1fr}.aaf-photo-col{flex-direction:row;align-items:center;gap:1rem}.aaf-photo-upload{width:72px;height:72px;font-size:.65rem}.aaf-photo-upload svg{width:24px;height:24px}.aaf-row{grid-template-columns:1fr}}.user-avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background-color:#1d4ed8;color:#fff;font-weight:700;overflow:hidden;flex-shrink:0}.avatar-small{width:24px;height:24px;font-size:10px;font-weight:700}.notification-bell-container{position:relative}.notification-bell-button{position:relative;background:none;border:none;cursor:pointer;padding:8px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:all .2s ease}.notification-bell-button:hover{background-color:var(--surface-hover);color:var(--text-primary)}.notification-bell-button:active{transform:scale(.95)}.notification-badge{position:absolute;top:4px;right:4px;background-color:#ef4444;color:#fff;font-size:12px;font-weight:600;padding:2px 5px;border-radius:10px;min-width:18px;height:18px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px #0000001a}@keyframes bell-ring{0%,to{transform:rotate(0)}10%,30%{transform:rotate(-10deg)}20%,40%{transform:rotate(10deg)}}.notification-bell-button.has-new{animation:bell-ring .5s ease-in-out}.theme-toggle{display:flex;align-items:center;justify-content:center;gap:8px;width:40px;height:40px;border:none;border-radius:8px;background-color:transparent;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.theme-toggle:hover{background-color:var(--hover-bg);color:var(--text-primary)}.theme-toggle:focus{outline:2px solid var(--primary-color);outline-offset:2px}.theme-toggle-icon{transition:transform .3s ease}.theme-toggle:hover .theme-toggle-icon{transform:rotate(15deg)}.theme-toggle-label{font-size:14px;font-weight:500}.theme-toggle:has(.theme-toggle-label){width:auto;padding:8px 12px}.brand-logo{display:flex;align-items:center}.brand-logo-image{max-height:32px;width:auto;object-fit:contain}.brand-logo-text{font-size:1.25rem;font-weight:700;color:var(--text-primary);letter-spacing:-.01em}.header{background-color:var(--body-background);height:64px;display:flex;align-items:center;position:sticky;top:0;z-index:40}.header-content{display:flex;justify-content:space-between;align-items:center;width:100%;padding:0 24px}.header-left{display:flex;align-items:center;gap:.75rem;min-width:0}.mobile-menu-toggle{display:none;align-items:center;justify-content:center;border:1px solid var(--card-border);border-radius:8px;background:var(--card-background);color:var(--text-primary);width:40px;height:40px;padding:0;cursor:pointer;flex:0 0 auto}.header-logo{display:flex;align-items:center;min-width:0;flex:0 1 auto}.header-logo .brand-logo-image{max-height:36px}.logo-image{display:block;height:40px;width:auto}.logo-text{font-size:20px;font-weight:700;color:var(--text-primary)}.header-right{display:flex;align-items:center;gap:16px}.user-section{position:relative}.user-button{display:flex;align-items:center;gap:12px;padding:8px 12px;border:none;background:none;border-radius:8px;cursor:pointer;transition:background-color .2s}.user-button:hover{background-color:var(--hover-bg)}.user-avatar{width:32px;height:32px;border-radius:50%;background-color:var(--primary-color);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600}.user-info{display:flex;flex-direction:column;align-items:flex-start;text-align:left}.user-name{font-size:14px;font-weight:500;color:var(--text-primary);line-height:1.2}.user-role{font-size:12px;color:var(--text-secondary);line-height:1.2}.chevron{transition:transform .2s;color:var(--text-secondary)}.chevron-up{transform:rotate(180deg)}.chevron-down{transform:rotate(0)}@media(max-width:900px){.header-content{padding:0 16px}.mobile-menu-toggle{display:inline-flex}.mobile-menu-toggle:hover{border-color:var(--accent-orange-hover);color:var(--accent-orange)}.user-info{display:none}.user-button{padding:8px}.header-theme-toggle{display:none}}.sidebar{width:256px;background-color:var(--card-background);display:flex;flex-direction:column;overflow-y:auto}.sidebar-nav{flex:1;padding:10px 0 16px}.sidebar-list{list-style:none;margin:0;padding:0}.sidebar-section{padding-top:8px}.sidebar-section+.sidebar-section{margin-top:8px;border-top:1px solid var(--border-primary);padding-top:12px}.sidebar-section-title{margin:0;padding:0 24px 6px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary)}.sidebar-link{display:flex;align-items:center;gap:12px;padding:12px 24px;color:var(--text-secondary);text-decoration:none;font-size:14px;font-weight:500;transition:all .2s;border-right:3px solid transparent}.sidebar-action{width:100%;margin:0;border:none;border-right:3px solid transparent;background:transparent;cursor:pointer;text-align:left;font-family:inherit;box-sizing:border-box}.sidebar-link:hover{background-color:var(--hover-bg);color:var(--text-primary)}.sidebar-link-active{background-color:var(--primary-light);color:var(--primary-color);border-right-color:var(--primary-color)}.sidebar-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center}.sidebar-text{flex:1}.sidebar-alert-dot{width:8px;height:8px;border-radius:50%;background-color:var(--error-color, #ef4444);flex-shrink:0;margin-left:4px}@media(max-width:1100px)and (min-width:901px){.sidebar{width:200px}}@media(max-width:900px){.sidebar{position:fixed;left:-320px;top:64px;height:calc(100dvh - 64px);min-height:calc(100vh - 64px);z-index:30;transition:left .3s;width:min(84vw,320px);box-shadow:var(--shadow-card)}.sidebar.sidebar-open{left:0}.sidebar-link{min-height:44px}.sidebar-section-title{font-size:12px}}.bug-report-modal-overlay{position:fixed;inset:0;background:#0000006b;z-index:1300;display:flex;align-items:center;justify-content:center;padding:16px}.bug-report-modal{width:min(460px,100%);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px;box-shadow:0 18px 36px #00000040;padding:14px}.bug-report-header{display:flex;justify-content:space-between;align-items:center}.bug-report-header h4{margin:0}.bug-report-close{border:none;background:transparent;color:var(--text-secondary);font-size:16px;cursor:pointer}.bug-report-note{margin:8px 0;font-size:12px;color:var(--text-secondary)}.bug-report-textarea{width:100%;min-height:96px;resize:vertical;border:1px solid var(--border-color);border-radius:8px;padding:8px;font-family:inherit;font-size:13px}.bug-report-meta{margin:8px 0 0;font-size:11px;color:var(--text-secondary)}.bug-report-actions{margin-top:10px;display:flex;justify-content:flex-end;gap:8px}.bug-report-cancel,.bug-report-submit{border:none;border-radius:8px;padding:8px 12px;font-size:12px;font-weight:700;cursor:pointer}.bug-report-cancel{background:var(--bg-secondary);color:var(--text-primary)}.bug-report-submit{background:#d14f2f;color:#fff}.bug-report-submit:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.bug-report-modal-overlay{align-items:flex-end;padding:0}.bug-report-modal{width:100%;border-radius:14px 14px 0 0;border-left:none;border-right:none;border-bottom:none}}.client-scheduler-modal{width:min(95vw,960px);max-width:min(95vw,960px)}.client-scheduler-modal .modal-body{padding:1rem 1.25rem}.client-scheduler-modal .session-scheduler{padding:0;background:transparent;box-shadow:none;border-radius:0}.client-scheduler-modal .session-scheduler.calendly-style{max-width:100%}.client-scheduler-modal .scheduler-container{display:grid;grid-template-columns:300px minmax(0,1fr);gap:1.25rem;min-height:0}.client-scheduler-modal .scheduler-sidebar{min-width:0;max-height:100%;overflow:auto;background:var(--body-background);padding:1.25rem;border-radius:8px;border:1px solid transparent}.client-scheduler-modal .scheduler-main{min-width:0;overflow:auto;display:flex;flex-direction:column;gap:1rem}.client-scheduler-modal .calendar-container{background:var(--card-background, white);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;padding:1rem 1.25rem;max-width:520px}.client-scheduler-modal .calendar-grid{width:100%;display:block}.client-scheduler-modal .calendar-weekdays,.client-scheduler-modal .calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.client-scheduler-modal .calendar-weekday{padding:.25rem;text-align:center;font-size:.6875rem;font-weight:600;color:var(--text-secondary, #6b7280);background:var(--surface-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-bottom:0}.client-scheduler-modal .calendar-day-cell{width:100%;height:0;padding-bottom:100%;position:relative;border:1px solid var(--border-primary, #e5e7eb)}.client-scheduler-modal .calendar-day{position:absolute;top:0;left:0;width:100%;height:100%;border:0;background:var(--cal-day-background);color:var(--text-primary, #1f2937);font-size:.875rem;padding:4px;display:flex;align-items:flex-start;justify-content:center;font-weight:500;cursor:pointer;transition:all .2s;min-height:64px}.client-scheduler-modal .blocked-reason{font-size:9px;padding:1px 2px;bottom:1px;left:1px;right:1px}.client-scheduler-modal .calendar-day.unavailable{color:var(--text-tertiary, #d1d5db)}.client-scheduler-modal .calendar-day.available:hover{background:var(--available-hover-bg);color:var(--text-primary, #1f2937)}.client-scheduler-modal .calendar-day.selected,.client-scheduler-modal .calendar-day.selected:hover{background:var(--accent-orange);color:#fff}.client-scheduler-modal .time-slots-container{background:var(--card-background, white);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;padding:1rem}.client-scheduler-modal .time-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:.5rem}.client-scheduler-modal .time-slot{border:1px solid transparent;background:var(--card-background);color:var(--text-secondary)}.client-scheduler-modal .time-slot:hover{border-color:var(--chip-orange-border);background:var(--card-background);color:var(--text-primary)}.client-scheduler-modal .time-slot.selected{background:var(--accent-orange);color:#fff}.client-scheduler-modal .booking-form{border-top:1px solid var(--border-primary, #e5e7eb)}@media(max-width:1200px){.client-scheduler-modal .scheduler-container{grid-template-columns:1fr}}@media(max-width:768px){.client-scheduler-modal .modal-body{padding:.75rem .875rem 1rem}.client-scheduler-modal .scheduler-container{grid-template-columns:1fr}.client-scheduler-modal .scheduler-sidebar{min-width:100%}}.client-scheduler-modal .session-scheduler.mobile-stepper .scheduler-sidebar{padding:0;background:transparent;border:none}.skip-link{position:absolute;top:-100%;left:6px;background:var(--text-primary, #1f2937);color:var(--text-inverse, #ffffff);padding:8px 16px;text-decoration:none;z-index:10000;border-radius:4px;font-size:14px;font-weight:500;transition:top .15s ease}.skip-link:focus{top:6px;outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px}.announcement-banners{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.announcement-banner{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;border-radius:8px;border:1px solid transparent;transition:all .2s ease}.announcement-info{background-color:var(--info-bg, #FFEEE7);border-color:var(--info-border, #FFB89E);color:var(--info-text, #D14A1C)}.announcement-warning{background-color:var(--warning-bg, #fef3c7);border-color:var(--warning-border, #fcd34d);color:var(--warning-text, #92400e)}.announcement-critical{background-color:var(--error-bg, #fee2e2);border-color:var(--error-border, #fecaca);color:var(--error-text, #991b1b)}.announcement-icon{flex-shrink:0;margin-top:1px}.announcement-body{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.announcement-title{font-size:14px;font-weight:600;line-height:1.4}.announcement-content{font-size:13px;font-weight:400;line-height:1.5;opacity:.9}.announcement-dismiss{flex-shrink:0;background:none;border:none;cursor:pointer;padding:4px;border-radius:4px;opacity:.6;transition:opacity .2s ease;color:inherit}.announcement-dismiss:hover{opacity:1}@media(max-width:640px){.announcement-banner{padding:10px 12px}.announcement-content{font-size:12px}}.layout{display:flex;flex-direction:column;height:100dvh;min-height:100vh}@keyframes layout-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.layout .skeleton-block{border-radius:4px;background:linear-gradient(90deg,var(--surface-hover) 25%,rgba(255,255,255,.15) 50%,var(--surface-hover) 75%);background-size:200% 100%;animation:layout-skeleton-shimmer 1.4s ease-in-out infinite}.layout-body{display:flex;flex:1;overflow:hidden}.layout-main{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}.layout-content{flex:1;min-width:0;padding:clamp(.875rem,2vw,1.5rem);overflow-y:auto;overflow-x:hidden;background-color:var(--body-background);margin:clamp(.5rem,1.25vw,1rem);border-radius:8px;padding-bottom:0;margin-bottom:0;outline:none}.layout-sidebar-backdrop{display:none}body.sidebar-open-lock{overflow:hidden}@media(max-width:900px){.layout-body{position:relative}.layout-sidebar-backdrop{display:block;position:fixed;inset:64px 0 0;z-index:25;border:0;background:#0f172a73}.layout-content{margin:8px;padding:16px}}.invite-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--body-background, #f8f6fa);padding:2rem 1rem}.invite-wrapper{width:100%;max-width:480px;display:flex;flex-direction:column;align-items:center;gap:1rem}.invite-logo img{height:120px;width:auto}.invite-card{width:100%;background:var(--card-background, #ffffff);border:1px solid transparent;border-radius:12px;box-shadow:0 1px 3px #00000014;padding:28px}.invite-card-header{text-align:center;margin-bottom:24px}.invite-title{font-size:1.5rem;font-weight:700;color:var(--text-primary, #2c3e45);margin:0 0 6px}.invite-subtitle{font-size:.9375rem;color:var(--text-secondary, #7a8a8f);margin:0;line-height:1.5}.invite-form{display:flex;flex-direction:column;gap:1.25rem}.invite-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.invite-field{display:flex;flex-direction:column;gap:.375rem}.invite-label{font-size:.9375rem;font-weight:600;color:var(--text-primary, #2c3e45)}.invite-required{color:var(--error-color, #dc2626)}.invite-optional{font-weight:400;color:var(--text-tertiary, #9ea9ad)}.invite-input{width:100%;padding:.875rem 1.25rem;background:var(--input-bg, #f9fafb);border:1px solid var(--border-primary, #c8c1d2);border-radius:12px;font-size:1rem;color:var(--text-primary, #2c3e45);transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box}.invite-input::placeholder{color:var(--text-tertiary, #9ea9ad)}.invite-input:focus{outline:none;border-color:var(--accent-orange, #fe6b34);box-shadow:0 0 0 3px #f4a26126}.invite-input:disabled{opacity:.6;cursor:not-allowed}.invite-input-error{border-color:var(--error-color, #dc2626)!important}.invite-input-error:focus{box-shadow:0 0 0 3px #dc26261f}.invite-hint{font-size:.8125rem;color:var(--text-tertiary, #9ea9ad);margin-top:-.5rem}.invite-field-error{font-size:.8125rem;color:var(--error-color, #dc2626)}.invite-error{padding:.75rem 1rem;background:var(--error-bg, rgba(239, 68, 68, .1));border:1px solid var(--error-border, rgba(239, 68, 68, .3));border-radius:10px;color:var(--error-color, #ef4444);font-size:.875rem}.invite-btn-wrapper{position:relative}.invite-btn{width:100%;padding:1rem;background:var(--accent-orange, #fe6b34);color:#1a1a1a;border:none;border-radius:999px;font-size:1.0625rem;font-weight:700;cursor:pointer;transition:background .2s ease,transform .1s ease}.invite-btn:hover:not(:disabled){background:var(--accent-orange-hover, #e55a2b);transform:translateY(-1px)}.invite-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.invite-btn-tooltip{display:none;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:var(--text-primary, #2c3e45);color:var(--text-inverse, #ffffff);font-size:.8125rem;padding:6px 12px;border-radius:6px;white-space:nowrap;pointer-events:none}.invite-btn-wrapper:hover .invite-btn-tooltip{display:block}.invite-success{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1.5rem 0;text-align:center;color:var(--success-color, #22c55e)}.invite-success h2{font-size:1.25rem;font-weight:700;color:var(--text-primary, #2c3e45);margin:0}.invite-success p{color:var(--text-secondary, #7a8a8f);font-size:.9375rem;line-height:1.6;margin:0}.invite-footer{font-size:.9rem;color:var(--text-tertiary, #9ea9ad);margin:0}.invite-footer-link{color:var(--text-primary, #2c3e45);font-weight:600;text-decoration:none}.invite-footer-link:hover{color:var(--accent-orange, #fe6b34)}@media(max-width:480px){.invite-page{padding:1rem}.invite-card{padding:20px}.invite-form-row{grid-template-columns:1fr}}.invite-validating{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem 0;color:var(--text-secondary, #7a8a8f);font-size:.9375rem}.invite-validating-spinner{width:32px;height:32px;border:3px solid var(--border-primary, #c8c1d2);border-top-color:var(--accent-orange, #fe6b34);border-radius:50%;animation:invite-spin .8s linear infinite}@keyframes invite-spin{to{transform:rotate(360deg)}}.invite-invalid-icon{display:flex;justify-content:center;margin-bottom:.75rem;color:var(--error-color, #ef4444)}.task-list{padding:20px;max-width:1200px;margin:0 auto}.task-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.task-list-header h2{margin:0;color:var(--text-primary, #1f2937)}@media(min-width:769px){.task-list .search-filter-container{background:var(--bg-secondary);border:1px solid var(--card-border, var(--border-primary));border-radius:10px;padding:1rem 1.125rem;margin-bottom:2rem}.task-list .task-grid{margin-top:1rem}}.create-task-button{background:var(--accent-orange);color:var(--text-inverse, #ffffff);border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-weight:500;transition:background-color .2s ease}.create-task-button:hover{background:var(--accent-orange-hover)}.task-filters{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}.filter-button{background:var(--bg-tertiary, #f3f4f6);border:1px solid var(--border-primary, #e5e7eb);padding:8px 16px;border-radius:20px;cursor:pointer;transition:all .2s ease;font-size:14px;color:var(--text-primary, #1f2937)}.filter-button:hover{background:var(--surface-hover, #e5e7eb)}.filter-button.active{background:var(--accent-orange);color:var(--text-inverse, #ffffff);border-color:var(--accent-orange)}.task-grid{display:flex;flex-direction:column;gap:20px;align-items:stretch}.task-grid>.task-card{height:100%}.create-first-task-button{background:var(--accent-orange);color:var(--body-background);border:none;padding:12px 24px;border-radius:6px;cursor:pointer;font-weight:500;margin-top:10px}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px;min-height:200px;color:var(--text-secondary, #6b7280)}.error-message{background:var(--error-bg, #fef2f2);color:var(--error-text, #991b1b);border:1px solid var(--error-border, #fecaca);padding:15px;border-radius:6px;margin-bottom:20px}.retry-button{background:var(--card-background);color:var(--error-color, #e74c3c);border:1px solid var(--error-border, #fecaca);padding:8px 16px;border-radius:4px;cursor:pointer;margin-top:10px}.task-card{background:var(--card-background);border:1px solid var(--card-border);border-radius:12px;overflow:hidden;transition:border-color .2s,box-shadow .2s;cursor:pointer}.task-card:hover{border-color:var(--accent-orange);box-shadow:0 2px 12px #0000001f}.task-card.overdue{border-color:var(--error-color)}.tc-row{display:flex;align-items:center;gap:2rem;padding:1.1rem 1.5rem}.tc-title-col{display:flex;flex-direction:column;flex:1;min-width:0}.tc-col-label{font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:5px}.tc-title{font-size:.9rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tc-subtitle{display:inline-flex;align-items:center;gap:5px;margin-top:3px;font-size:.75rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tc-subtitle svg{flex:0 0 auto;color:var(--text-tertiary)}.tc-col{display:flex;flex-direction:column;min-width:110px;flex-shrink:0}.tc-due-value{font-size:.875rem;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:6px}.tc-for-col{min-width:140px;max-width:200px}.tc-for-value{display:flex;flex-direction:column;gap:1px;min-width:0}.tc-for-client{font-size:.875rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tc-for-animal{font-size:.75rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tc-overdue-text{color:var(--error-color)}.tc-overdue-badge{display:inline-block;padding:2px 6px;border-radius:4px;font-size:.6rem;font-weight:700;letter-spacing:.06em;background:var(--error-bg);color:var(--error-color)}.tc-status-badge{display:inline-block;padding:3px 10px;border-radius:6px;font-size:.65rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;width:fit-content}.tc-status-assigned{background:var(--warm-tint-bg);border:1px solid var(--warm-tint-border);color:var(--accent-orange)}.tc-status-in-progress{background:var(--info-bg, rgba(59, 130, 246, .12));color:var(--info-color, #3b82f6)}.tc-status-completed{background:var(--success-bg);color:var(--success-color)}.tc-desc-col{flex:1;min-width:0;font-size:.875rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:1rem}.tc-actions-col{display:flex;align-items:center;gap:.75rem;flex-shrink:0;margin-left:auto}.tc-action-btn{padding:4px 14px;border-radius:6px;font-size:.75rem;font-weight:600;border:none;cursor:pointer;transition:opacity .15s}.tc-action-btn:disabled{opacity:.5;cursor:not-allowed}.tc-btn-start{background:var(--warm-tint-bg);border:1px solid var(--warm-tint-border);color:var(--accent-orange)}.tc-btn-start:hover:not(:disabled){opacity:.8}.tc-btn-complete{background:var(--success-bg);color:var(--success-color)}.tc-btn-complete:hover:not(:disabled){opacity:.8}.tc-expand{display:flex;align-items:center;color:var(--text-secondary)}.tc-expand-chevron{font-size:1rem;line-height:1;transition:transform .2s}.task-card.expanded .tc-expand-chevron{transform:rotate(-90deg)}.tc-details{padding:1rem 1.5rem 1.25rem;border-top:1px solid var(--card-border);display:flex;flex-direction:column;gap:1rem;animation:tcSlideDown .2s ease-out}@keyframes tcSlideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.tc-detail-section{display:flex;flex-direction:column;gap:6px}.tc-detail-label{font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary)}.tc-detail-section p{margin:0;font-size:.875rem;color:var(--text-primary);line-height:1.6}.tc-assignee-row{display:flex;flex-wrap:wrap;gap:14px 24px}.tc-assignee{display:flex;align-items:center;gap:10px;min-width:0}.tc-avatar{width:36px;height:36px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex:0 0 auto;color:#fff}.tc-avatar--client{background:var(--accent-orange, #e86a47)}.tc-avatar--animal{background:color-mix(in srgb,var(--accent-orange, #e86a47) 16%,transparent);color:var(--accent-orange, #e86a47)}.tc-avatar--photo{object-fit:cover;background:var(--surface-secondary)}.tc-assignee__text{display:flex;flex-direction:column;min-width:0}.tc-assignee__name{font-size:.875rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tc-assignee__role{display:inline-flex;align-items:center;gap:4px;font-size:.75rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tc-assignee__role svg{color:var(--text-tertiary)}.tc-meta{display:flex;gap:1.5rem;font-size:.75rem;color:var(--text-tertiary);padding-top:.5rem;border-top:1px solid var(--card-border)}.tc-session-link{margin-left:auto;background:none;border:none;padding:0;font-size:.75rem;color:var(--accent-orange);cursor:pointer;text-decoration:underline}.tc-session-link:hover{color:var(--accent-orange-hover)}.task-resources{margin-bottom:15px}.task-resources h4{margin:0 0 8px;font-size:14px;color:var(--text-primary)}.resource-list{display:flex;flex-wrap:wrap;gap:8px}.resource-link{display:inline-flex;align-items:center;padding:4px 8px;border-radius:4px;text-decoration:none;font-size:12px;font-weight:500;transition:opacity .2s}.resource-link:hover{opacity:.8}.resource-link.pdf{background:var(--error-color, #e74c3c);color:var(--text-inverse, #ffffff)}.resource-link.video{background:var(--purple-text, #8b79b3);color:var(--text-inverse, #ffffff)}.resource-link.link{background:var(--info-color, #3b82f6);color:var(--text-inverse, #ffffff)}.tcf-form{display:flex;flex-direction:column;gap:.75rem;width:100%;min-width:0}.tcf-row{display:grid;grid-template-columns:1fr 1fr;gap:.625rem;min-width:0}.tcf-field{display:flex;flex-direction:column;gap:.3125rem;min-width:0}.tcf-field label{font-size:.75rem;font-weight:600;color:var(--text-primary)}.tcf-field input,.tcf-field select,.tcf-field textarea{width:100%;box-sizing:border-box;min-width:0;padding:.5rem .75rem;font-family:inherit;font-size:.875rem;color:var(--text-primary);background:var(--input-bg);border:1px solid var(--input-border, var(--border-primary));border-radius:6px;transition:border-color .15s ease,box-shadow .15s ease}.tcf-field textarea{line-height:1.5;min-height:64px;resize:vertical}.tcf-field input::placeholder,.tcf-field textarea::placeholder{color:var(--text-tertiary)}.tcf-field input:focus,.tcf-field select:focus,.tcf-field textarea:focus{outline:none;border-color:var(--accent-orange);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-orange) 18%,transparent)}.tcf-field input:disabled,.tcf-field select:disabled,.tcf-field textarea:disabled{background:var(--input-disabled-bg, var(--surface-secondary));color:var(--text-tertiary);cursor:not-allowed}.tcf-error{display:flex;align-items:center;gap:.5rem;padding:.625rem .875rem;margin-bottom:.625rem;background:var(--error-bg);border:1px solid var(--error-border);border-radius:6px;color:var(--error-text);font-size:.875rem;font-weight:500}.tcf-resources{display:flex;flex-direction:column;gap:.4375rem}.tcf-resources-list{display:flex;flex-direction:column;gap:.375rem}.tcf-resource-row{display:flex;align-items:center;gap:.5rem;padding:.4375rem .625rem;background:var(--surface-secondary);border:1px solid var(--card-border, var(--border-primary));border-radius:8px;font-size:.8125rem}.tcf-resource-type{flex-shrink:0;min-width:50px;padding:.125rem .5rem;background:var(--accent-orange);color:var(--text-inverse, #fff);border-radius:999px;font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;text-align:center}.tcf-resource-title{flex:1;min-width:0;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tcf-resource-remove{flex-shrink:0;width:22px;height:22px;padding:0;border:none;border-radius:6px;background:transparent;color:var(--text-tertiary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease}.tcf-resource-remove:hover{background:var(--error-bg);color:var(--error-color)}.tcf-resources-add{display:inline-flex;align-items:center;justify-content:center;gap:.4375rem;align-self:flex-start;padding:.5rem .875rem;border:1px dashed var(--border-primary);border-radius:8px;background:transparent;color:var(--text-secondary);font-family:inherit;font-size:.8125rem;font-weight:500;cursor:pointer;transition:border-color .15s ease,color .15s ease,background .15s ease}.tcf-resources-add:hover,.tcf-resources-add:focus-visible{outline:none;border-color:var(--accent-orange);color:var(--accent-orange);background:var(--surface-hover)}.tcf-resources-add:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-orange) 18%,transparent)}@media(max-width:600px){.tcf-row{grid-template-columns:1fr}.tcf-resources-add{align-self:stretch}}.task-progress{margin:20px 0}.task-progress h4{margin:0 0 15px;color:var(--text-primary, #1f2937)}.progress-bar-container{display:flex;align-items:center;gap:10px;margin-bottom:15px}.progress-bar{flex:1;height:8px;background:var(--bg-tertiary, #e5e7eb);border-radius:4px;overflow:hidden}.progress-fill{height:100%;transition:width .3s ease}.progress-percentage{font-size:12px;font-weight:500;color:var(--text-secondary, #6b7280);min-width:35px}.progress-notes-section{margin-bottom:15px}.progress-notes-section label{display:block;margin-bottom:5px;font-weight:500;color:var(--text-primary, #1f2937)}.progress-notes-section textarea{width:100%;padding:10px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;resize:vertical;font-family:inherit;background:var(--input-bg);color:var(--text-primary, #1f2937)}.update-notes-button{background:var(--accent-orange);color:var(--text-inverse, #ffffff);border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:12px;margin-top:8px;transition:all .2s ease}.update-notes-button:hover{background:var(--accent-orange-hover)}.update-notes-button:disabled{opacity:.5;cursor:not-allowed}.completion-info{background:var(--success-bg);padding:10px;border-radius:6px;margin-bottom:10px}.completion-info p{margin:0;color:var(--success-color);font-size:12px}.progress-metadata{font-size:12px;color:var(--text-secondary, #6b7280)}.progress-metadata p{margin:4px 0}.progress-loading,.progress-error{padding:15px;text-align:center;color:var(--text-secondary, #6b7280);font-size:14px}.progress-error{color:var(--error-color, #e74c3c)}@media(max-width:768px){.task-grid,.task-form .form-row{grid-template-columns:1fr}.task-filters{flex-direction:column;align-items:stretch}.filter-button{text-align:center}.task-actions{flex-direction:column;gap:10px}.status-actions{justify-content:center}}.status-tracker{display:flex;align-items:center;justify-content:space-between;max-width:400px;margin:20px 0}.status-step{display:flex;flex-direction:column;align-items:center;flex:1;position:relative}.step-circle{width:40px;height:40px;border-radius:50%;background:var(--bg-tertiary, #e5e7eb);color:var(--text-secondary, #6b7280);display:flex;align-items:center;justify-content:center;font-weight:700;margin-bottom:8px;transition:all .3s ease}.status-step.active .step-circle{background:var(--success-color);color:var(--text-inverse, #ffffff)}.status-step span{font-size:12px;color:var(--text-secondary, #6b7280);text-align:center;font-weight:500}.status-step.active span{color:var(--success-color);font-weight:600}.step-connector{flex:1;height:2px;background:var(--bg-tertiary, #e5e7eb);margin:0 10px 30px}.step-connector.active{background:var(--success-color)}.tc-media-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.tc-upload-toggle{padding:6px 14px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;background-color:var(--surface-secondary, #f9fafb);color:var(--text-primary, #374151);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.tc-upload-toggle:hover{background-color:var(--surface-hover, #f3f4f6);border-color:var(--accent-orange-hover, #f4a261)}.tc-upload-error{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;margin-bottom:12px;border-radius:8px;background-color:var(--error-bg, #fef2f2);color:var(--error-text, #991b1b);font-size:13px}.tc-upload-error p{margin:0}.tc-upload-error button{padding:4px 10px;border:none;border-radius:4px;background:transparent;color:var(--error-text, #991b1b);font-size:12px;cursor:pointer;font-weight:500}.tc-upload-error button:hover{background-color:var(--error-border, #fecaca)}.task-list--mobile{padding:12px 14px 88px;margin:0;max-width:100%}.task-list--mobile .task-list-header{margin-bottom:12px}.task-list--mobile .task-list-header h2{font-size:22px}.task-list--mobile .create-task-button{padding:8px 14px;font-size:13px}.task-list--mobile .search-filter-container{margin-bottom:12px}.task-list--mobile .task-card{padding:0}.task-list--mobile .tc-row{display:flex;flex-wrap:wrap;align-items:center;row-gap:4px;column-gap:10px;padding:10px 12px}.task-list--mobile .tc-title-col{flex:1 1 0;min-width:0;order:1}.task-list--mobile .tc-title{font-size:14px;font-weight:600;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-list--mobile .tc-col-label,.task-list--mobile .tc-desc-col{display:none}.task-list--mobile .tc-row>.tc-col{flex:0 0 auto;min-width:0;font-size:12px}.task-list--mobile .tc-status-col{order:2;margin-left:auto}.task-list--mobile .tc-due-col{order:4}.task-list--mobile .tc-for-col{order:6;flex-basis:100%;margin-top:2px}.task-list--mobile .tc-for-value{flex-direction:row;flex-wrap:wrap;gap:4px 6px;font-size:12px;color:var(--text-secondary)}.task-list--mobile .tc-for-animal{display:inline-flex;align-items:center;gap:4px;color:var(--text-tertiary)}.task-list--mobile .tc-subtitle{font-size:12px}.task-list--mobile .tc-due-value{color:var(--text-tertiary);white-space:nowrap}.task-list--mobile .tc-overdue-badge{margin-left:6px;font-size:10px}.task-list--mobile .tc-row:after{content:"";flex-basis:100%;order:3;height:0}.task-list--mobile .tc-actions-col{flex:0 0 auto;order:5;margin-left:auto;gap:6px}.task-list--mobile .task-card--collapsed .tc-actions-col>:not(.tc-expand){display:none}.task-list--mobile .tc-expand{color:var(--text-tertiary)}.task-list__panel-body{padding:14px}.task-list__panel-body .task-card{border:none;padding:0;background:transparent}.task-list__panel-body .task-card .tc-title-col{display:none}.task-list__panel-body .tc-row{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:center;margin-bottom:12px}.task-list__panel-body .tc-col-label{display:block;font-size:10px;letter-spacing:.05em;color:var(--text-tertiary)}.task-list__panel-body .tc-desc-col{flex-basis:100%;font-size:13px;color:var(--text-secondary)}.task-list__panel-body .tc-actions-col{flex-basis:100%;flex-wrap:wrap;gap:8px}.progress-notes-section h5{margin:0 0 12px;font-size:14px;font-weight:600;color:var(--text-primary, #1f2937)}.notes-list{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.note-item{padding:12px 14px;background:var(--bg-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px}.note-item p{margin:0 0 8px;color:var(--text-primary, #1f2937);font-size:14px;line-height:1.5;white-space:pre-wrap;word-break:break-word}.note-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.note-meta small{font-size:12px;color:var(--text-secondary, #6b7280)}.note-actions{display:inline-flex;gap:6px}.note-actions .edit-btn,.note-actions .delete-btn,.edit-actions button{padding:4px 12px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;background:var(--surface-secondary, #f9fafb);color:var(--text-primary, #374151);font-size:12px;font-weight:500;font-family:inherit;cursor:pointer;transition:all .2s ease}.note-actions .edit-btn:hover,.edit-actions button:hover{background:var(--surface-hover, #f3f4f6);border-color:var(--accent-orange-hover);color:var(--accent-orange)}.note-actions .delete-btn:hover{background:var(--error-bg, #fef2f2);border-color:var(--error-border, #fecaca);color:var(--error-text, #991b1b)}.no-notes{margin:0 0 16px;color:var(--text-secondary, #6b7280);font-size:13px;font-style:italic}.add-note{display:flex;flex-direction:column;gap:8px}.add-note textarea{width:100%;padding:10px 12px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;background:var(--input-bg);color:var(--text-primary, #1f2937);font-family:inherit;font-size:14px;resize:vertical}.add-note-button{align-self:flex-start;padding:8px 18px;background:var(--accent-orange);color:var(--text-inverse, #ffffff);border:none;border-radius:6px;font-size:13px;font-weight:500;font-family:inherit;cursor:pointer;transition:background-color .2s ease}.add-note-button:hover:not(:disabled){background:var(--accent-orange-hover)}.add-note-button:disabled{opacity:.5;cursor:not-allowed}.edit-note{display:flex;flex-direction:column;gap:8px}.edit-note textarea{width:100%;padding:8px 10px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;background:var(--input-bg);color:var(--text-primary, #1f2937);font-family:inherit;font-size:13px;resize:vertical}.edit-actions{display:flex;gap:6px;justify-content:flex-end}.tt-view-segment{display:flex;width:100%;box-sizing:border-box;gap:4px;padding:4px;border-radius:10px;background:var(--bg-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);margin-bottom:16px}.tt-view-segment__btn{flex:1}.tt-view-segment__btn{appearance:none;border:none;background:transparent;padding:8px 16px;border-radius:8px;font-size:14px;font-weight:600;color:var(--text-secondary, #6b7280);cursor:pointer;transition:background .2s ease,color .2s ease;min-height:36px}.tt-view-segment__btn:hover{color:var(--text-primary, #1f2937)}.tt-view-segment__btn--active{background:var(--card-background, #ffffff);color:var(--accent-orange, #e86a47);box-shadow:0 1px 2px #0000000f}.task-list--mobile .tt-view-segment__btn{flex:1;min-height:44px}.tt-resource-picker-portal{position:relative;z-index:1100}.tt-resource-picker-portal .resource-selector-overlay{z-index:1100}.task-list--mobile .task-template-list{display:block;width:100%;box-sizing:border-box;margin:0;padding:0}.task-list--mobile .task-template-list .empty-state{padding:32px 12px;margin:0;width:100%;box-sizing:border-box}.task-list--mobile .task-template-list .task-template-grid{grid-template-columns:1fr;width:100%}.task-list--mobile .task-template-list .create-first-task-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px}.task-template-list{display:flex;flex-direction:column;gap:16px}.task-template-grid{display:grid;grid-template-columns:1fr;gap:12px}@media(min-width:768px){.task-template-grid{grid-template-columns:repeat(2,1fr)}}.task-template-card{appearance:none;text-align:left;display:flex;align-items:center;gap:16px;padding:16px 20px;background:var(--card-background, #ffffff);border:1px solid var(--card-border, var(--border-primary, #e5e7eb));border-radius:12px;box-shadow:0 1px 3px #0000000f;cursor:pointer;transition:border-color .2s ease,transform .1s ease;color:inherit;width:100%}.task-template-card:hover{border-color:var(--accent-orange-hover, #f1855c)}.task-template-card:focus-visible{outline:2px solid var(--border-focus, #e86a47);outline-offset:2px}.task-template-card__main{flex:1;min-width:0}.task-template-card__title{font-size:16px;font-weight:600;color:var(--text-primary, #1f2937);margin-bottom:4px}.task-template-card__description{font-size:13px;color:var(--text-secondary, #6b7280);margin-bottom:8px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.task-template-card__meta{display:flex;gap:12px;flex-wrap:wrap;font-size:12px;color:var(--text-tertiary, #9ca3af)}.task-template-card__count{background:var(--chip-orange-bg, #fff3ed);color:var(--accent-orange, #e86a47);padding:2px 8px;border-radius:12px;font-weight:600}.task-template-card__updated{align-self:center}.task-template-card__actions{display:flex;align-items:center;gap:4px}.task-template-card__action{appearance:none;border:none;background:transparent;padding:8px;border-radius:6px;color:var(--text-secondary, #6b7280);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .2s ease,color .2s ease;min-width:32px;min-height:32px}.task-template-card__action:hover{background:var(--surface-hover, #f3f4f6);color:var(--text-primary, #1f2937)}.task-template-card__action:disabled{opacity:.5;cursor:not-allowed}.task-template-card__action--danger:hover{background:var(--error-bg, #fef2f2);color:var(--error-color, #dc2626)}.task-template-card__chevron{color:var(--text-tertiary, #9ca3af)}.tt-modal-root,.ttm-overlay{--ttx-bg: var(--body-background);--ttx-elevated: var(--card-background);--ttx-surface: var(--card-background);--ttx-surface-2: var(--bg-secondary);--ttx-border: var(--card-border, var(--border-primary));--ttx-border-soft: var(--card-border, var(--border-primary));--ttx-text: var(--text-primary);--ttx-text-muted: var(--text-secondary);--ttx-text-dim: var(--text-tertiary);--ttx-accent: var(--accent-orange);--ttx-accent-soft: var(--chip-orange-bg);--ttx-accent-strong: var(--accent-orange-hover);--ttx-danger: var(--error-color)}.modal.tt-modal-desktop{padding:0;overflow:hidden;max-height:90vh}.modal.tt-modal-desktop .modal-header,.modal.tt-modal-desktop .modal-description{display:none}.modal.tt-modal-desktop .modal-close{top:14px;right:14px;z-index:2}.tt-modal-root{display:flex;flex-direction:column;height:min(820px,92vh);min-height:min(580px,90vh);max-height:92vh;background:var(--ttx-elevated);color:var(--ttx-text);font-family:var(--font-sans, -apple-system, BlinkMacSystemFont, "Inter", system-ui, sans-serif)}.tt-modal-head{flex:0 0 auto;padding:18px 22px 14px;border-bottom:1px solid var(--ttx-border-soft)}.tt-modal-eyebrow{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ttx-text-muted);margin-bottom:4px}.tt-modal-title{margin:0;font-size:18px;font-weight:700;letter-spacing:-.005em;color:var(--ttx-text)}.tt-modal-subtitle{margin:4px 0 0;font-size:12px;color:var(--ttx-text-muted)}.tt-modal-meta{display:grid;grid-template-columns:1fr 1.8fr;gap:10px 18px;padding:10px 22px 12px;background:var(--ttx-bg);border-bottom:1px solid var(--ttx-border-soft)}.tt-modal-meta>.tt-field-label{grid-column:span 1;align-self:end}.tt-modal-meta>input.tt-input{grid-column:span 1;align-self:start}.tt-modal-body{flex:1 1 auto;display:flex;min-height:0}.tt-rail{width:280px;flex:0 0 280px;border-right:1px solid var(--ttx-border-soft);background:var(--ttx-bg);display:flex;flex-direction:column;min-height:0}.tt-rail__head{padding:14px 14px 8px;display:flex;align-items:center;justify-content:space-between}.tt-rail__title{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ttx-text-muted)}.tt-rail__list{flex:1 1 auto;overflow:auto;padding:0 8px 14px}.tt-rail__item{display:flex;align-items:center;gap:10px;padding:10px;border-radius:8px;border-left:3px solid transparent;background:transparent;cursor:pointer;margin-bottom:4px;transition:background .15s ease;outline:none}.tt-rail__item:hover{background:var(--ttx-surface-2)}.tt-rail__item--active{background:var(--ttx-accent-soft);border-left-color:var(--ttx-accent)}.tt-rail__item:focus-visible{box-shadow:0 0 0 2px var(--border-focus, var(--ttx-accent))}.tt-rail__num{width:22px;height:22px;border-radius:999px;background:var(--ttx-surface-2);color:var(--ttx-text-muted);font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;transition:background .15s ease,color .15s ease}.tt-rail__item--active .tt-rail__num{background:var(--ttx-accent);color:#fff}.tt-rail__body{flex:1;min-width:0}.tt-rail__name{font-size:12.5px;font-weight:600;color:var(--ttx-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tt-rail__name--empty{color:var(--ttx-text-dim);font-style:italic;font-weight:500}.tt-rail__meta{font-size:11px;color:var(--ttx-text-muted);margin-top:2px;display:flex;align-items:center;gap:6px}.tt-rail__dot{color:var(--ttx-text-dim)}.tt-rail__resources{display:inline-flex;align-items:center;gap:3px}.tt-rail__delete{appearance:none;border:none;background:transparent;color:var(--ttx-text-dim);cursor:pointer;width:24px;height:24px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;opacity:.6;transition:opacity .15s ease,color .15s ease,background .15s ease}.tt-rail__item--active .tt-rail__delete{opacity:1}.tt-rail__delete:hover{color:var(--ttx-danger);background:var(--ttx-surface-2)}.tt-rail__add{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 12px;margin-top:4px;border-radius:8px;border:1px dashed var(--ttx-border);background:transparent;color:var(--ttx-text-muted);font-size:12.5px;font-weight:600;cursor:pointer}.tt-rail__add:hover{border-color:var(--ttx-accent);color:var(--ttx-accent)}.tt-pane{flex:1;overflow:auto;padding:14px 22px 18px;background:var(--ttx-elevated)}.tt-pane__empty{height:100%;display:flex;align-items:center;justify-content:center;color:var(--ttx-text-muted);font-size:13px}.tt-editor{padding:4px 4px 16px}.tt-editor__head{display:flex;align-items:center;gap:10px;margin-bottom:14px}.tt-editor__chip{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ttx-accent);padding:3px 9px;border-radius:999px;background:var(--ttx-accent-soft)}.tt-editor__rule{flex:1;height:1px;background:var(--ttx-border-soft)}.tt-editor__field{margin-bottom:14px}.tt-editor__field--last{margin-bottom:0}.tt-input{width:100%;background:var(--ttx-bg);border:1px solid var(--ttx-border);border-radius:8px;padding:9px 11px;font-size:13px;color:var(--ttx-text);font-family:inherit;outline:none;box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease}.tt-input:focus{border-color:var(--ttx-accent);box-shadow:0 0 0 3px var(--ttx-accent-soft)}.tt-textarea{resize:vertical;line-height:1.5;min-height:84px}.tt-field-label{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:6px}.tt-field-label label,.tt-field-label>span:first-child{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ttx-text-muted)}.tt-field-label__req{color:var(--ttx-accent)}.tt-field-label__hint{font-size:11px;color:var(--ttx-text-dim);text-transform:none;letter-spacing:0;font-weight:500}.tt-due-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.tt-due-num{display:inline-flex;align-items:center;gap:8px;padding:6px 10px 6px 8px;border-radius:8px;border:1px solid var(--ttx-border);background:var(--ttx-bg);color:var(--ttx-text-muted)}.tt-due-num input{width:54px;background:transparent;border:none;outline:none;color:var(--ttx-text);font-size:13px;font-family:inherit;text-align:center;-moz-appearance:textfield;appearance:textfield}.tt-due-num input::-webkit-outer-spin-button,.tt-due-num input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.tt-due-num__suffix,.tt-due-num__prefix{font-size:11px;color:var(--ttx-text-dim)}.tt-due-num--mobile{margin-top:8px}.tt-chips{display:flex;gap:6px;flex-wrap:wrap}.tt-chip-btn{appearance:none;padding:5px 12px;border-radius:999px;font-size:12px;font-weight:600;cursor:pointer;border:1px solid var(--ttx-border);background:transparent;color:var(--ttx-text-muted);font-family:inherit;transition:all .15s ease}.tt-chip-btn:hover{border-color:var(--ttx-accent);color:var(--ttx-text)}.tt-chip-btn--active{background:var(--ttx-accent);color:#fff;border-color:transparent}.tt-chip-btn--active:hover{background:var(--ttx-accent-strong);color:#fff}.tt-resources{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.tt-chip{display:inline-flex;align-items:center;gap:7px;padding:4px 4px 4px 10px;border-radius:8px;background:var(--ttx-surface-2);color:var(--ttx-text);border:1px solid var(--ttx-border-soft);font-size:12px;font-weight:500;max-width:100%}.tt-chip__label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.tt-chip__remove{width:18px;height:18px;border-radius:999px;border:none;background:transparent;color:var(--ttx-text-muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0}.tt-chip__remove:hover{background:var(--ttx-bg);color:var(--ttx-danger)}.tt-attach-btn{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:8px;border:1px dashed var(--ttx-border);background:transparent;color:var(--ttx-text-muted);font-size:12px;font-weight:600;cursor:pointer;font-family:inherit}.tt-attach-btn:hover{border-color:var(--ttx-accent);color:var(--ttx-accent)}.tt-modal-foot{flex:0 0 auto;padding:12px 18px;border-top:1px solid var(--ttx-border-soft);background:var(--ttx-bg);display:flex;align-items:center;justify-content:space-between;gap:10px}.tt-modal-foot__hint{font-size:11.5px;color:var(--ttx-text-dim)}.tt-modal-foot__actions{display:flex;gap:8px}.tt-btn{font-family:inherit;font-size:13px;font-weight:600;border-radius:999px;padding:8px 16px;border:1px solid var(--ttx-border);background:var(--ttx-surface);color:var(--ttx-text);cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all .15s ease}.tt-btn:hover{border-color:var(--ttx-accent);color:var(--ttx-accent)}.tt-btn:disabled{opacity:.5;cursor:not-allowed}.tt-btn--primary{background:var(--ttx-accent);color:#fff;border-color:transparent}.tt-btn--primary:hover{background:var(--ttx-accent-strong);color:#fff}.tt-btn--primary:disabled{background:var(--ttx-accent);color:#fff}.tt-btn--ghost{background:transparent}.tt-btn--sm{padding:5px 12px;font-size:12px}.tt-btn--full{width:100%;justify-content:center;padding:11px 14px;font-size:13.5px}.ttm-overlay{position:fixed;inset:0;z-index:1000;background:var(--ttx-bg);color:var(--ttx-text);display:flex;flex-direction:column;font-family:var(--font-sans, -apple-system, BlinkMacSystemFont, "Inter", system-ui, sans-serif);overflow:hidden}.ttm-screen{flex:1;display:flex;flex-direction:column;min-height:0}.ttm-head{flex:0 0 auto;padding:12px 14px;border-bottom:1px solid var(--ttx-border-soft);background:var(--ttx-elevated);display:flex;align-items:center;justify-content:space-between;gap:8px}.ttm-head__title{font-size:14px;font-weight:700;color:var(--ttx-text)}.ttm-head__btn{appearance:none;background:transparent;border:none;padding:4px 0;font-size:14px;font-weight:500;color:var(--ttx-text-muted);cursor:pointer;font-family:inherit;display:inline-flex;align-items:center;gap:4px;min-width:56px}.ttm-head__btn--accent{color:var(--ttx-accent);font-weight:600}.ttm-head__btn--primary{color:var(--ttx-accent);font-weight:700;justify-content:flex-end}.ttm-head__btn--primary:disabled{color:var(--ttx-text-dim)}.ttm-head__btn--danger{color:var(--ttx-danger);font-weight:500;justify-content:flex-end}.ttm-head__btn-icon-flip{transform:rotate(180deg)}.ttm-body{flex:1;overflow:auto;padding:16px 14px 32px}.ttm-outline-head{display:flex;align-items:baseline;justify-content:space-between;margin:18px 0 10px}.ttm-outline-head__title{font-size:13.5px;font-weight:700;color:var(--ttx-text)}.ttm-outline-head__sub{font-size:11px;color:var(--ttx-text-muted)}.ttm-outline-head__count{font-size:11px;color:var(--ttx-text-dim)}.ttm-row{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;background:var(--ttx-surface);border:1px solid var(--ttx-border);border-radius:12px;margin-bottom:8px;cursor:pointer;text-align:left;font-family:inherit;color:inherit;transition:border-color .15s ease}.ttm-row:hover{border-color:var(--ttx-accent)}.ttm-row__num{width:32px;height:32px;border-radius:999px;background:var(--ttx-accent-soft);color:var(--ttx-accent);font-size:13px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.ttm-row__body{flex:1;min-width:0}.ttm-row__title{font-size:14px;font-weight:600;color:var(--ttx-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ttm-row__title--empty{color:var(--ttx-text-dim);font-style:italic;font-weight:500}.ttm-row__chips{display:flex;gap:6px;margin-top:4px;flex-wrap:wrap}.ttm-row__chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;background:var(--ttx-surface-2);font-size:11px;color:var(--ttx-text-muted)}.ttm-row__chev{color:var(--ttx-text-dim);flex:0 0 auto}.ttm-add{width:100%;padding:12px;border-radius:12px;border:1px dashed var(--ttx-border);background:transparent;color:var(--ttx-accent);font-size:13.5px;font-weight:700;cursor:pointer;font-family:inherit;display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-top:6px}.ttm-add:hover{background:var(--ttx-accent-soft)}.ttm-editor{position:absolute;inset:0;background:var(--ttx-bg);display:flex;flex-direction:column;animation:ttm-slide-in .18s ease-out;z-index:2}@keyframes ttm-slide-in{0%{transform:translate(20px);opacity:0}to{transform:translate(0);opacity:1}}.ttm-editor__foot{flex:0 0 auto;padding:12px 14px;border-top:1px solid var(--ttx-border-soft);background:var(--ttx-elevated)}.at-overlay{--at-bg: var(--body-background);--at-elevated: var(--card-background);--at-surface: var(--card-background);--at-surface-2: var(--bg-secondary, var(--surface-secondary));--at-border: var(--card-border, var(--border-primary));--at-border-soft: var(--card-border, var(--border-primary));--at-text: var(--text-primary);--at-text-muted: var(--text-secondary);--at-text-dim: var(--text-tertiary);--at-accent: var(--accent-orange);--at-accent-soft: var(--chip-orange-bg);--at-accent-strong: var(--accent-orange-hover);position:fixed;inset:0;background:#080c148c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:1100;display:flex;align-items:center;justify-content:center;padding:24px;font-family:var(--font-sans, -apple-system, BlinkMacSystemFont, "Inter", system-ui, sans-serif)}.at-modal{width:min(720px,100%);max-height:calc(100% - 32px);background:var(--at-elevated);border:1px solid var(--at-border);border-radius:16px;box-shadow:0 30px 80px #00000073;display:flex;flex-direction:column;overflow:hidden;color:var(--at-text);position:relative}@media(max-width:640px){.at-overlay{padding:0;align-items:stretch}.at-modal{width:100%;max-height:100%;height:100%;border-radius:0;border:none}}.at-header{flex:0 0 auto;padding:18px 22px 14px;border-bottom:1px solid var(--at-border-soft);display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.at-header__titles{min-width:0}.at-eyebrow{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--at-text-muted);margin-bottom:4px}.at-title{margin:0;font-size:19px;font-weight:700;color:var(--at-text);letter-spacing:-.005em}.at-subtitle{margin:4px 0 0;font-size:12px;color:var(--at-text-muted)}.at-close{width:30px;height:30px;border-radius:999px;border:1px solid var(--at-border);background:transparent;color:var(--at-text-muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;transition:color .12s ease,border-color .12s ease}.at-close:hover{color:var(--at-accent);border-color:var(--at-accent)}.at-mode-row{padding:14px 22px;display:flex;flex-direction:column;gap:12px;border-bottom:1px solid var(--at-border-soft);background:var(--at-bg)}.at-segmented{display:inline-flex;padding:3px;gap:2px;background:var(--at-elevated);border:1px solid var(--at-border);border-radius:10px;align-self:flex-start}.at-segmented__btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:7px;background:transparent;color:var(--at-text-muted);border:1px solid transparent;font-size:12.5px;font-weight:600;cursor:pointer;font-family:inherit}.at-segmented__btn:hover{color:var(--at-text)}.at-segmented__btn--active{background:var(--at-surface-2);color:var(--at-text);border-color:var(--at-border)}.at-context{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 14px;background:var(--at-elevated);border:1px solid var(--at-border-soft);border-radius:10px}.at-context__avatar{width:28px;height:28px;border-radius:999px;background:var(--at-accent);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex:0 0 auto}.at-context__who{flex:1 1 auto;min-width:0}.at-context__name{font-size:13px;font-weight:600;color:var(--at-text)}.at-context__animal{font-size:11.5px;color:var(--at-text-muted);display:inline-flex;align-items:center;gap:5px;margin-top:2px}.at-context__anchor{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:8px;background:var(--at-surface);border:1px solid var(--at-border);font-size:11.5px;color:var(--at-text-muted);font-weight:600;cursor:pointer}.at-context__anchor input[type=date]{background:transparent;border:none;outline:none;color:var(--at-text);font-size:12px;font-weight:700;font-family:inherit}.at-body{flex:1 1 auto;overflow:auto;padding:18px 22px 22px}.at-field{display:flex;flex-direction:column;gap:6px}.at-field+.at-field{margin-top:14px}.at-field-label-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.at-field-label{font-size:12px;font-weight:700;color:var(--at-text);letter-spacing:0;display:inline-flex;align-items:center;gap:5px}.at-field-hint{font-size:11px;color:var(--at-text-muted)}.at-required{color:var(--at-accent)}.at-input{width:100%;padding:8px 12px;border-radius:8px;border:1px solid var(--at-border);background:var(--at-bg);color:var(--at-text);font-size:13px;font-family:inherit;outline:none;box-sizing:border-box;transition:border-color .12s ease,box-shadow .12s ease}.at-input:focus{border-color:var(--at-accent);box-shadow:0 0 0 3px var(--at-accent-soft)}.at-textarea{resize:vertical;line-height:1.45;min-height:64px}.at-section-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:14px 0 8px}.at-section-eyebrow{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--at-text-muted)}.at-section-eyebrow__count{font-weight:600;color:var(--at-text-dim);letter-spacing:0;text-transform:none;margin-left:2px}.at-link-row{display:inline-flex;align-items:center;gap:8px;font-size:11.5px}.at-link{background:transparent;border:none;padding:0;font-family:inherit;font-size:11.5px;font-weight:600;color:var(--at-accent);cursor:pointer}.at-link:hover{color:var(--at-accent-strong)}.at-link--muted{color:var(--at-text-muted)}.at-link--muted:hover{color:var(--at-text)}.at-link--standalone{margin-top:10px}.at-link-sep{color:var(--at-text-dim)}.at-tpl-picker{position:relative}.at-tpl-picker__btn{width:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;background:var(--at-bg);border:1px solid var(--at-border);color:var(--at-text);cursor:pointer;font-family:inherit;text-align:left}.at-tpl-picker__btn:hover{border-color:var(--at-accent)}.at-tpl-picker__icon{color:var(--at-accent)}.at-tpl-picker__label{flex:1;min-width:0}.at-tpl-picker__placeholder{font-size:13px;color:var(--at-text-muted)}.at-tpl-picker__name{font-size:13px;font-weight:600;color:var(--at-text)}.at-tpl-picker__desc{font-size:11px;color:var(--at-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.at-tpl-picker__chev{color:var(--at-text-muted)}.at-tpl-picker__menu{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:10;background:var(--at-elevated);border:1px solid var(--at-border);border-radius:10px;padding:8px;box-shadow:0 16px 36px #0000002e}.at-tpl-picker__search{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:7px;background:var(--at-bg);border:1px solid var(--at-border);margin-bottom:6px;color:var(--at-text-muted)}.at-tpl-picker__search input{flex:1;background:transparent;border:none;outline:none;color:var(--at-text);font-size:12.5px;font-family:inherit}.at-tpl-picker__list{max-height:260px;overflow:auto;display:flex;flex-direction:column;gap:2px}.at-tpl-picker__empty{padding:18px 8px;font-size:12px;color:var(--at-text-dim);text-align:center}.at-tpl-picker__item{display:block;text-align:left;width:100%;padding:8px 10px;border-radius:7px;background:transparent;border:1px solid transparent;color:var(--at-text);cursor:pointer;font-family:inherit}.at-tpl-picker__item:hover{background:var(--at-surface-2)}.at-tpl-picker__item--active{background:var(--at-accent-soft)}.at-tpl-picker__item-head{display:flex;align-items:center;gap:8px}.at-tpl-picker__item-name{font-size:12.5px;font-weight:600}.at-tpl-picker__item-count{font-size:10px;font-weight:700;padding:1px 7px;border-radius:999px;background:var(--at-surface-2);color:var(--at-text-muted)}.at-tpl-picker__item-desc{font-size:11px;color:var(--at-text-muted);margin-top:3px}.at-task-list{display:flex;flex-direction:column;gap:6px}.at-task-row{display:grid;grid-template-columns:18px 1fr auto;gap:12px;align-items:center;padding:10px 12px;border-radius:10px;background:var(--at-elevated);border:1px solid var(--at-border);cursor:pointer;-webkit-user-select:none;user-select:none;position:relative}.at-task-row:hover{background:var(--at-surface-2)}.at-task-row--off{background:transparent;opacity:.62}.at-task-row__body{min-width:0}.at-task-row__title{font-size:13px;font-weight:600;color:var(--at-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.at-task-row__resources{display:flex;gap:5px;margin-top:5px;flex-wrap:wrap}.at-check{width:18px;height:18px;border-radius:5px;border:1.5px solid var(--at-border);background:transparent;display:inline-flex;align-items:center;justify-content:center;color:#fff;flex:0 0 auto;transition:all .12s ease}.at-check--on{background:var(--at-accent);border-color:var(--at-accent)}.at-resource-mini{display:inline-flex;align-items:center;gap:4px;padding:2px 7px 2px 6px;border-radius:6px;background:var(--at-surface-2);color:var(--at-text-muted);border:1px solid var(--at-border-soft);font-size:10.5px;font-weight:500;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.at-resource-mini__label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.at-due-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:var(--at-surface-2);color:var(--at-text-muted);border:1px solid var(--at-border-soft);font-size:11px;font-weight:700;font-family:inherit;cursor:pointer;white-space:nowrap}.at-due-pill:hover{color:var(--at-text);border-color:var(--at-border)}.at-due-pill--overridden{background:var(--at-accent-soft);color:var(--at-accent);border-color:var(--at-accent)}.at-due-pill__edit{opacity:.65}.at-override-popover{position:absolute;top:calc(100% + 6px);right:12px;z-index:12;min-width:220px;background:var(--at-elevated);border:1px solid var(--at-border);border-radius:10px;box-shadow:0 16px 36px #0000002e;padding:10px;display:flex;flex-direction:column;gap:8px}.at-override-popover__label{font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--at-text-muted)}.at-override-popover__chips{display:flex;flex-wrap:wrap;gap:4px}.at-override-popover__actions{display:flex;align-items:center;gap:8px}.at-override-popover__actions input{flex:1;padding:5px 8px;border-radius:6px;border:1px solid var(--at-border);background:var(--at-bg);color:var(--at-text);font-size:12px;font-family:inherit;outline:none}.at-override-popover__actions input:focus{border-color:var(--at-accent)}.at-chip-row{display:flex;gap:6px;flex-wrap:wrap}.at-chip{padding:5px 11px;border-radius:999px;font-size:12px;font-weight:600;border:1px solid var(--at-border);background:transparent;color:var(--at-text-muted);cursor:pointer;font-family:inherit}.at-chip:hover{border-color:var(--at-accent);color:var(--at-accent)}.at-chip--active{background:var(--at-accent);color:#fff;border-color:transparent}.at-chip--active:hover{background:var(--at-accent-strong);color:#fff;border-color:transparent}.at-due-picker{display:flex;flex-direction:column;gap:10px}.at-due-picker__input{display:inline-flex;align-items:center;gap:10px;padding:8px 12px;border-radius:8px;border:1px solid var(--at-border);background:var(--at-bg);color:var(--at-text-muted);align-self:flex-start}.at-due-picker__input input[type=date]{background:transparent;border:none;outline:none;color:var(--at-text);font-size:13px;font-family:inherit;min-width:130px}.at-due-picker__offset{font-size:11px;color:var(--at-text-dim)}.at-resource-row{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.at-resource-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 5px 4px 9px;border-radius:8px;background:var(--at-surface-2);border:1px solid var(--at-border-soft);color:var(--at-text);font-size:12px;font-weight:500}.at-resource-chip__label{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.at-resource-chip__x{width:18px;height:18px;border:none;background:transparent;color:var(--at-text-muted);cursor:pointer;border-radius:999px;display:inline-flex;align-items:center;justify-content:center}.at-resource-chip__x:hover{background:var(--at-border);color:var(--at-text)}.at-attach-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;border:1px dashed var(--at-border);background:transparent;color:var(--at-text-muted);font-size:12px;font-weight:600;cursor:pointer;font-family:inherit}.at-attach-btn:hover{color:var(--at-accent);border-color:var(--at-accent)}.at-state{padding:32px 16px;text-align:center;color:var(--at-text-muted);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.at-state__hint{font-size:12px;color:var(--at-text-dim)}.at-footer{flex:0 0 auto;padding:12px 18px;border-top:1px solid var(--at-border-soft);background:var(--at-bg);display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.at-footer__actions{display:flex;align-items:center;gap:8px}.at-footer__count{font-size:11.5px;color:var(--at-text-dim)}.at-notify{display:inline-flex;align-items:center;gap:9px;background:transparent;border:none;cursor:pointer;color:var(--at-text-muted);padding:0;font-family:inherit}.at-notify__label{font-size:11.5px;font-weight:600}.at-switch{width:30px;height:18px;border-radius:999px;background:var(--at-surface-2);border:1px solid var(--at-border);position:relative;flex:0 0 auto;transition:background .12s ease,border-color .12s ease}.at-switch--on{background:var(--at-accent);border-color:var(--at-accent)}.at-switch__knob{position:absolute;top:1px;left:1px;width:14px;height:14px;border-radius:999px;background:#fff;transition:left .12s ease}.at-switch--on .at-switch__knob{left:13px}.at-btn{font-family:inherit;font-size:12.5px;font-weight:600;border-radius:8px;padding:8px 14px;border:1px solid var(--at-border);background:var(--at-elevated);color:var(--at-text);cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all .12s ease}.at-btn:hover:not(:disabled){border-color:var(--at-accent);color:var(--at-accent)}.at-btn:disabled{opacity:.55;cursor:not-allowed}.at-btn--primary{background:var(--at-accent);color:#fff;border-color:transparent}.at-btn--primary:hover:not(:disabled){background:var(--at-accent-strong);color:#fff;border-color:transparent}.at-btn--primary:disabled{background:var(--at-accent);color:#fff}@media(max-width:640px){.at-footer{flex-direction:column;align-items:stretch}.at-footer__actions{width:100%;justify-content:flex-end}.at-context{flex-wrap:wrap}.at-context__anchor{flex:1 1 100%;justify-content:flex-start}}.stc-mode-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px}@media(max-width:600px){.stc-mode-row{grid-template-columns:1fr}}.stc-mode-card{appearance:none;border:2px solid var(--border-primary, #e5e7eb);background:var(--bg-secondary, #ffffff);padding:14px 16px;border-radius:10px;cursor:pointer;text-align:left;transition:all .2s ease}.stc-mode-card:hover{border-color:var(--accent-orange-hover, #f1855c)}.stc-mode-card--active{border-color:var(--accent-orange, #e86a47);background:var(--chip-orange-bg, #fff3ed)}.stc-mode-card__title{font-weight:700;color:var(--text-primary, #1f2937);margin-bottom:4px}.stc-mode-card__desc{font-size:13px;color:var(--text-secondary, #6b7280)}.stc-loading{display:flex;align-items:center;gap:8px;color:var(--text-secondary, #6b7280);padding:24px;justify-content:center}.stc-empty{padding:32px 16px;text-align:center;color:var(--text-secondary, #6b7280)}.stc-template-desc{margin:-8px 0 16px;font-size:13px;color:var(--text-secondary, #6b7280)}.stc-warning{margin:12px 0;padding:10px 14px;border-radius:8px;background:var(--warning-bg, #fffbeb);border:1px solid var(--warning-border, #fde68a);color:var(--warning-text, #92400e);font-size:13px}.stc-task-list{display:flex;flex-direction:column;gap:6px;margin-top:12px}.stc-task-row{display:grid;grid-template-columns:auto 60px 1fr auto;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;background:var(--bg-secondary, #ffffff);cursor:pointer;transition:background .2s ease}.stc-task-row:hover{background:var(--surface-hover, #f3f4f6)}.stc-task-row--skipped{opacity:.5}.stc-task-row--skipped .stc-task-title{text-decoration:line-through}.stc-task-offset{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--accent-orange, #e86a47);background:var(--chip-orange-bg, #fff3ed);padding:2px 8px;border-radius:10px;text-align:center}.stc-task-title{font-size:14px;color:var(--text-primary, #1f2937);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stc-task-due{font-size:12px;color:var(--text-secondary, #6b7280);white-space:nowrap}@media(max-width:600px){.stc-task-row{grid-template-columns:auto 1fr;grid-template-areas:"check title" "offset due";gap:6px 10px}.stc-task-row input[type=checkbox]{grid-area:check}.stc-task-title{grid-area:title;white-space:normal}.stc-task-offset{grid-area:offset;justify-self:start}.stc-task-due{grid-area:due;justify-self:end}}.media-viewer{width:100%}.media-viewer.empty{display:flex;align-items:center;justify-content:center;min-height:200px}.media-empty{text-align:center;color:var(--text-secondary, #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:var(--card-background, #ffffff);border:1px solid var(--card-border, #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:var(--bg-secondary, #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:var(--text-secondary, #6b7280)}.media-file-icon{color:var(--text-tertiary, #9ca3af)}.media-file-type{font-size:12px;font-weight:600;color:var(--text-primary, #374151)}.media-loading{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:var(--text-secondary, #6b7280);font-size:14px;background-color:var(--bg-secondary, #f3f4f6)}.media-info{padding:12px}.media-name{font-size:14px;font-weight:500;color:var(--text-primary, #1f2937);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.media-meta{display:flex;justify-content:space-between;font-size:12px;color:var(--text-secondary, #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:var(--modal-bg, #ffffff);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 var(--border-primary, #e5e7eb)}.media-modal-title{font-size:18px;font-weight:600;color:var(--text-primary, #1f2937);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:400px}.media-modal-close{padding:4px;background:none;border:none;color:var(--text-secondary, #6b7280);cursor:pointer;border-radius:4px;transition:all .2s}.media-modal-close:hover{color:var(--text-primary, #374151);background-color:var(--surface-hover, #f3f4f6)}.media-modal-body{flex:1;display:flex;align-items:center;justify-content:center;padding:20px;overflow:hidden;position:relative}.media-modal-image-loading{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-secondary, #6b7280);font-size:14px;background-color:var(--modal-bg, var(--card-background, #ffffff));z-index:2}.media-modal-image-loading .icon-spin{animation:media-modal-spin 1s linear infinite;color:var(--accent-orange, #fe6b34)}@keyframes media-modal-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.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:var(--text-secondary, #6b7280)}.media-modal-file-icon{margin-bottom:16px;color:var(--text-tertiary, #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 var(--border-primary, #e5e7eb);background-color:var(--surface-secondary, #f9fafb)}.media-modal-info{display:flex;gap:8px;font-size:14px;color:var(--text-secondary, #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,.media-meta{font-size:12px}.media-controls{top:4px;right:4px}.media-control-btn{width:24px;height:24px}.media-control-btn svg{width:12px;height:12px}}.mobile-filter-toggle{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;margin-bottom:12px;border-radius:9px;border:1px solid var(--card-border);background:var(--card-background);color:var(--text-primary);font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;transition:border-color .2s ease,background .2s ease}.mobile-filter-toggle:hover{border-color:var(--accent-orange)}.mobile-filter-toggle__label{flex:0 0 auto}.mobile-filter-toggle__badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--accent-orange);color:#0e1525;font-size:11px;font-weight:700;font-family:var(--mtd-font-mono, ui-monospace, "SF Mono", Menlo, monospace)}.mobile-filter-toggle__chevron{margin-left:auto;color:var(--text-secondary);transition:transform .2s ease}.mobile-filter-toggle__chevron.open{transform:rotate(180deg)}.mobile-filter-region{display:contents}.mobile-filter-region--collapsed{display:none}.animal-avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background-color:#e9ecef;color:#495057;font-weight:600;overflow:hidden;flex-shrink:0}.avatar-small{width:24px;height:24px;font-size:12px}.avatar-medium{width:40px;height:40px;font-size:14px}.avatar-large{width:60px;height:60px;font-size:18px}.avatar-image{width:100%;height:100%;object-fit:cover;border-radius:50%}.avatar-initials{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.reschedule-form{display:flex;flex-direction:column;gap:.75rem}.reschedule-form .form-group{margin-bottom:0}.loading-spinner-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;gap:16px;flex:1;min-height:200px}.loading-spinner-fullscreen{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background-color:#ffffffe6;z-index:9998}.loading-spinner-content{display:flex;flex-direction:column;align-items:center;gap:16px}.spinner{border-radius:50%;border-style:solid;border-color:#e5e7eb;border-top-color:#3b82f6;animation:spin 1s linear infinite}.spinner-small{width:16px;height:16px;border-width:2px}.spinner-medium{width:32px;height:32px;border-width:3px}.spinner-large{width:48px;height:48px;border-width:4px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinner-message{font-size:14px;color:#6b7280;text-align:center;margin:0}.loading-button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:all .2s}.loading-button.loading{cursor:not-allowed;opacity:.7}.button-spinner{display:inline-flex;align-items:center}.button-text-loading{opacity:.7}.loading-overlay-wrapper{position:relative}.loading-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background-color:#fffc;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:10;border-radius:inherit}.loading-overlay-content{display:flex;flex-direction:column;align-items:center;gap:16px;padding:24px;background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #0000001a}.progress-container{width:100%;max-width:400px;margin:16px 0}.progress-bar{width:100%;height:8px;background-color:#e5e7eb;border-radius:4px;overflow:hidden}.progress-bar-fill{height:100%;background-color:#3b82f6;transition:width .3s ease;border-radius:4px}.progress-text{font-size:12px;color:#6b7280;text-align:center;margin-top:8px}.not-found-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px;background-color:#f9fafb}.not-found-content{text-align:center;max-width:400px}.not-found-icon{color:#6b7280;margin-bottom:24px;display:flex;justify-content:center}.not-found-title{font-size:24px;font-weight:700;color:#1f2937;margin-bottom:12px}.not-found-description{font-size:16px;color:#6b7280;margin-bottom:32px;line-height:1.5}.not-found-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.not-found-button{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:500;text-decoration:none;border:none;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center}.not-found-button.primary{background-color:#3b82f6;color:#fff}.not-found-button.primary:hover{background-color:#2563eb}.not-found-button.secondary{background-color:#f3f4f6;color:#374151;border:1px solid #d1d5db}.not-found-button.secondary:hover{background-color:#e5e7eb}.error-boundary-container{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:24px;background-color:#fef2f2}.error-boundary-content{text-align:center;max-width:500px}.error-boundary-icon{color:#dc2626;margin-bottom:24px;display:flex;justify-content:center}.error-boundary-title{font-size:24px;font-weight:700;color:#1f2937;margin-bottom:12px}.error-boundary-description{font-size:16px;color:#6b7280;margin-bottom:24px;line-height:1.5}.error-boundary-details{text-align:left;margin-bottom:24px;padding:16px;background-color:#fff;border:1px solid #e5e7eb;border-radius:8px}.error-boundary-details summary{cursor:pointer;font-weight:500;color:#374151;margin-bottom:12px}.error-boundary-stack{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:12px;color:#dc2626;background-color:#fef2f2;padding:12px;border-radius:4px;overflow-x:auto;white-space:pre-wrap;word-break:break-all}.error-boundary-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.error-boundary-button{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:500;border:none;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center}.error-boundary-button.primary{background-color:#dc2626;color:#fff}.error-boundary-button.primary:hover{background-color:#b91c1c}.error-boundary-button.secondary{background-color:#f3f4f6;color:#374151;border:1px solid #d1d5db}.error-boundary-button.secondary:hover{background-color:#e5e7eb}.permission-denied{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center;background-color:#fefce8;border:1px solid #fde047;border-radius:8px;margin:24px}.permission-denied-icon{font-size:48px;margin-bottom:16px;opacity:.8}.permission-denied h3{font-size:20px;font-weight:600;color:#1f2937;margin-bottom:8px}.permission-denied p{font-size:14px;color:#6b7280;margin-bottom:8px;line-height:1.5}.permission-denied-hint{font-size:13px;color:#9ca3af;font-style:italic}.add-animal-modal .form-group{margin-bottom:1rem}.add-animal-modal .form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary, #374151)}.add-animal-modal .form-group input,.add-animal-modal .form-group select{width:100%;padding:.625rem .75rem;border:1px solid var(--border-primary, #d1d5db);border-radius:6px;font-size:.875rem;background:var(--input-bg, white);color:var(--text-primary, #374151);transition:border-color .15s ease,box-shadow .15s ease}.add-animal-modal .form-group select.placeholder{color:var(--text-tertiary, #9ca3af)}.add-animal-modal .form-group select option{color:var(--text-primary, #374151)}.add-animal-modal .form-group input:focus,.add-animal-modal .form-group select:focus{outline:none;border-color:var(--primary-color, #3b82f6);box-shadow:0 0 0 3px #fe6b3426}.add-animal-modal .form-group input.error,.add-animal-modal .form-group select.error{border-color:var(--error-color, #ef4444)}.add-animal-modal .form-group .error-text{display:block;margin-top:.25rem;font-size:.75rem;color:var(--error-color, #ef4444)}.add-animal-modal .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.add-animal-modal .input-with-unit{display:flex;gap:.5rem}.add-animal-modal .input-with-unit input{flex:1;min-width:0}.add-animal-modal .input-with-unit select{width:auto;min-width:60px}.add-animal-modal .inline-fields{display:flex;gap:.75rem}.add-animal-modal .inline-fields>*{flex:1}.add-animal-modal .inline-fields .input-with-unit{flex:1}.add-animal-modal .inline-fields select{width:100%}.add-animal-modal .tag-input-group{display:flex;gap:.5rem}.add-animal-modal .tag-input-group input{flex:1}.add-animal-modal .tags-list{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.add-animal-modal .tag{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;background:var(--primary-light, #eff6ff);color:var(--primary-color, #3b82f6);border-radius:4px;font-size:.8125rem}.add-animal-modal .tag-remove{display:flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:none;background:transparent;color:var(--primary-color, #3b82f6);cursor:pointer;font-size:1rem;line-height:1;opacity:.7;transition:opacity .15s ease}.add-animal-modal .tag-remove:hover{opacity:1}.add-animal-modal .loading-clients{padding:.625rem .75rem;color:var(--text-secondary, #6b7280);font-size:.875rem}.add-animal-modal .searchable-select{position:relative}.add-animal-modal .searchable-select-dropdown{position:absolute;top:100%;left:0;right:0;max-height:200px;overflow-y:auto;background:var(--input-bg, white);border:1px solid var(--border-primary, #d1d5db);border-top:none;border-radius:0 0 6px 6px;box-shadow:0 4px 6px #0000001a;z-index:100}.add-animal-modal .searchable-select-option{display:flex;flex-direction:column;gap:2px;padding:.625rem .75rem;cursor:pointer;transition:background-color .15s ease}.add-animal-modal .searchable-select-option:hover{background:var(--hover-bg, #f3f4f6)}.add-animal-modal .searchable-select-option.selected{background:var(--primary-light, #eff6ff)}.add-animal-modal .searchable-select-option .client-name{font-weight:500;color:var(--text-primary, #374151)}.add-animal-modal .searchable-select-option .client-email{font-size:.75rem;color:var(--text-secondary, #6b7280)}.add-animal-modal .searchable-select-empty{padding:.75rem;text-align:center;color:var(--text-secondary, #6b7280);font-size:.875rem}.add-animal-modal .error-message{padding:.75rem;background:var(--error-bg, #fef2f2);border:1px solid var(--error-border, #fecaca);border-radius:6px;color:var(--error-color, #dc2626);font-size:.875rem;margin-top:1rem}@media(max-width:480px){.add-animal-modal .form-row{grid-template-columns:1fr}}.add-animal-modal .modal-body{padding:1.5rem}@media(max-width:700px){.add-animal-modal .aaf-layout{grid-template-columns:1fr}.add-animal-modal .aaf-photo-col{flex-direction:row;align-items:center;gap:1rem}.add-animal-modal .aaf-photo-upload{width:72px;height:72px;font-size:.65rem}.add-animal-modal .aaf-photo-upload svg{width:24px;height:24px}.add-animal-modal .aaf-photo-hint{font-size:.55rem}.add-animal-modal .aaf-row{grid-template-columns:1fr}}.cem-modal{background:var(--card-background, var(--modal-bg, #fff))}.cem-body{display:flex;flex-direction:column;gap:1.25rem;padding:1.25rem 1.5rem;overflow-x:hidden;min-width:0}.cem-identity{display:flex;align-items:center;gap:.875rem}.cem-avatar{flex:0 0 auto;width:44px;height:44px;border-radius:999px;background:var(--accent-orange, #fe6b34);color:var(--text-inverse, #fff);display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:.9375rem;letter-spacing:.02em;text-transform:uppercase}.cem-identity-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:.375rem}.cem-name-input-row{display:flex;gap:.75rem;flex-wrap:wrap;width:100%}.cem-name-field{flex:1 1 140px;min-width:0;display:flex;flex-direction:column;gap:.25rem}.cem-name-field>label{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary)}.cem-name-field-input{width:100%;font-size:1rem;font-weight:600;color:var(--text-primary);background:var(--input-bg);border:1px solid var(--border-primary);border-radius:6px;padding:.5rem .625rem;transition:border-color .15s ease,box-shadow .15s ease}.cem-name-field-input:focus{outline:none;border-color:var(--accent-orange);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-orange) 18%,transparent)}.cem-name-field-input::placeholder{color:var(--text-tertiary);font-weight:400}.cem-name-input{width:100%;font-size:1.0625rem;font-weight:700;color:var(--text-primary);background:transparent;border:1px solid transparent;border-radius:6px;padding:.25rem .5rem;margin-left:-.5rem;letter-spacing:-.01em;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}.cem-name-input:hover:not(:focus){background:var(--surface-hover, var(--hover-bg))}.cem-name-input:focus{outline:none;background:var(--input-bg);border-color:var(--accent-orange);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-orange) 18%,transparent)}.cem-name-input::placeholder{color:var(--text-tertiary);font-weight:500}.cem-identity-meta{display:flex;align-items:center;gap:.625rem;flex-wrap:wrap;font-size:.75rem;color:var(--text-secondary)}.cem-meta-item{display:inline-flex;align-items:center;gap:.3125rem;min-width:0;max-width:22ch;overflow:hidden}.cem-meta-item-text{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cem-status{display:inline-flex;align-items:center;gap:.375rem;padding:.1875rem .5rem .1875rem .4375rem;border-radius:999px;font-size:.6875rem;font-weight:600;text-transform:capitalize;letter-spacing:.01em;border:1px solid transparent;line-height:1}.cem-status-dot{width:6px;height:6px;border-radius:999px;background:currentColor;flex-shrink:0}.cem-status--active{color:var(--success-text, #065f46);background:var(--success-bg, #d1fae5);border-color:var(--success-border, #a7f3d0)}.cem-status--inactive{color:var(--text-secondary);background:var(--surface-secondary);border-color:var(--border-primary)}.cem-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.625rem}.cem-stat{display:flex;flex-direction:column;gap:.25rem;padding:.6875rem .875rem;border-radius:10px;border:1px solid var(--card-border, var(--border-primary));background:transparent;min-width:0}.cem-stat-value{font-size:1.25rem;font-weight:700;color:var(--text-primary);line-height:1.1;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cem-stat-label{font-size:.6875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cem-stat--negative .cem-stat-value{color:var(--error-color)}.cem-tabs{display:flex;gap:1.25rem;position:relative;border-bottom:1px solid var(--border-primary);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:0 -.25rem;padding:0 .25rem}.cem-tabs::-webkit-scrollbar{display:none}.cem-tab{flex:0 0 auto;display:inline-flex;align-items:center;gap:.375rem;padding:.625rem .125rem;margin-bottom:-1px;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;font-family:inherit;font-size:.8125rem;font-weight:600;color:var(--text-secondary);white-space:nowrap;transition:color .15s ease,border-color .15s ease}.cem-tab:hover{color:var(--text-primary)}.cem-tab--active{color:var(--accent-orange);border-bottom-color:var(--accent-orange)}.cem-tab-count{font-size:.6875rem;font-weight:600;color:var(--text-tertiary);background:var(--surface-secondary);padding:.0625rem .4375rem;border-radius:999px;line-height:1.4}.cem-tab--active .cem-tab-count{color:var(--accent-orange);background:var(--chip-orange-bg, color-mix(in srgb, var(--accent-orange) 15%, transparent))}.cem-content{display:flex;flex-direction:column;gap:1.25rem}.cem-section{display:flex;flex-direction:column;gap:.625rem}.cem-section-title{display:inline-flex;align-items:center;gap:.4375rem;margin:0;font-size:.75rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em}.cem-section-title svg{color:var(--text-tertiary)}.cem-form-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.cem-field{display:flex;flex-direction:column;gap:.3125rem;min-width:0}.cem-field>label{display:inline-flex;align-items:center;gap:.375rem;font-size:.75rem;font-weight:600;color:var(--text-secondary)}.cem-field>label svg{color:var(--text-tertiary)}.cem-field input,.cem-field select,.cem-field textarea{font-family:inherit;font-size:.875rem;color:var(--text-primary);background:var(--input-bg);border:1px solid var(--input-border);border-radius:6px;padding:.5rem .625rem;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.cem-field input::placeholder,.cem-field textarea::placeholder{color:var(--text-tertiary)}.cem-field input:focus,.cem-field select:focus,.cem-field textarea:focus{outline:none;border-color:var(--accent-orange);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-orange) 18%,transparent)}.cem-field input:disabled,.cem-field select:disabled,.cem-field textarea:disabled{background:var(--input-disabled-bg, var(--surface-secondary));color:var(--text-tertiary);cursor:not-allowed}.cem-field textarea{min-height:72px;resize:vertical;line-height:1.5}.cem-field-hint{margin:0;font-size:.75rem;color:var(--text-tertiary);line-height:1.4}.cem-trainer-grid{display:flex;flex-wrap:wrap;gap:.5rem}.cem-trainer-chip{display:inline-flex;align-items:center;gap:.4375rem;padding:.4375rem .75rem .4375rem .625rem;border:1px solid var(--card-border, var(--border-primary));border-radius:999px;background:transparent;font-size:.8125rem;color:var(--text-primary);cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease;-webkit-user-select:none;user-select:none}.cem-trainer-chip:hover{border-color:var(--accent-orange-hover, var(--accent-orange));background:var(--surface-hover, var(--hover-bg))}.cem-trainer-chip input[type=checkbox]{position:absolute;width:1px;height:1px;margin:-1px;border:0;padding:0;clip:rect(0 0 0 0);overflow:hidden}.cem-trainer-chip-tick{width:14px;height:14px;border-radius:999px;border:1.5px solid var(--border-primary);display:inline-flex;align-items:center;justify-content:center;background:transparent;flex-shrink:0;transition:border-color .15s ease,background .15s ease}.cem-trainer-chip-tick svg{opacity:0;color:var(--text-inverse, #fff);transition:opacity .15s ease}.cem-trainer-chip--checked{border-color:var(--accent-orange);background:var(--chip-orange-bg, color-mix(in srgb, var(--accent-orange) 12%, transparent));color:var(--text-primary)}.cem-trainer-chip--checked .cem-trainer-chip-tick{background:var(--accent-orange);border-color:var(--accent-orange)}.cem-trainer-chip--checked .cem-trainer-chip-tick svg{opacity:1}.cem-trainer-chip:focus-within{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-orange) 18%,transparent)}.cem-notice{display:flex;align-items:flex-start;gap:.625rem;padding:.75rem .875rem;border-radius:8px;border:1px solid var(--info-border, var(--border-primary));background:var(--info-bg, var(--surface-secondary));color:var(--info-text, var(--text-primary));font-size:.8125rem;line-height:1.5}.cem-notice svg{flex-shrink:0;margin-top:.0625rem;color:var(--accent-orange)}.cem-notice strong{font-weight:700}.cem-notice-hint{display:block;margin-top:.25rem;font-size:.75rem;color:var(--text-secondary)}.cem-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.875rem 1.25rem}.cem-info-item{display:flex;flex-direction:column;gap:.1875rem;min-width:0}.cem-info-item label{font-size:.6875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em}.cem-info-item p{margin:0;font-size:.875rem;color:var(--text-primary);word-break:break-word}.cem-animals-list{display:flex;flex-direction:column;gap:.375rem}.cem-animal-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;padding:.625rem .875rem;border-radius:8px;border:1px solid var(--card-border, var(--border-primary));background:transparent;text-align:left;font:inherit;color:inherit;width:100%;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}.cem-animal-row:hover{border-color:var(--accent-orange-hover, var(--accent-orange));background:var(--surface-hover, var(--hover-bg));transform:translateY(-1px)}.cem-animal-row:focus-visible{outline:none;border-color:var(--accent-orange);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-orange) 18%,transparent)}.cem-animal-info{min-width:0}.cem-animal-name{font-size:.875rem;font-weight:700;color:var(--text-primary);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cem-animal-meta{margin-top:.125rem;font-size:.75rem;color:var(--text-secondary);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cem-animal-chev{color:var(--text-tertiary);flex-shrink:0}.cem-consent-list{display:flex;flex-direction:column;gap:.5rem}.cem-consent-item{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem .875rem;border-radius:8px;border:1px solid var(--card-border, var(--border-primary));background:transparent}.cem-consent-info{display:flex;flex-direction:column;gap:.25rem;min-width:0}.cem-consent-title{margin:0;font-size:.875rem;font-weight:600;color:var(--text-primary)}.cem-consent-status{display:inline-flex;align-items:center;gap:.3125rem;padding:.125rem .5rem;border-radius:999px;font-size:.6875rem;font-weight:600;width:fit-content}.cem-consent-status--assigned{color:var(--success-text);background:var(--success-bg)}.cem-consent-status--unassigned{color:var(--text-secondary);background:var(--surface-secondary)}.cem-empty,.cem-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.625rem;padding:2rem 1rem;text-align:center;color:var(--text-tertiary);font-size:.875rem;border-radius:10px;border:1px dashed var(--border-primary);background:transparent}.cem-empty svg,.cem-loading svg{color:var(--text-tertiary)}.cem-billing-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.625rem;padding:.875rem 1rem;border-radius:10px;border:1px solid var(--card-border, var(--border-primary));background:transparent}.cem-billing-stat-label{font-size:.6875rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em}.cem-billing-stat-value{margin-top:.25rem;font-size:1.125rem;font-weight:700;color:var(--text-primary)}.cem-billing-stat-value--negative{color:var(--error-color)}.cem-billing-stat-value--positive{color:var(--success-color)}.cem-footer{display:flex;align-items:center;justify-content:space-between;gap:.625rem;flex-wrap:wrap}.cem-footer-left{display:flex;align-items:center;gap:.375rem;margin-right:auto}.cem-footer-actions{display:flex;align-items:center;gap:.5rem}.cem-footer .cem-status-toggle{display:inline-flex;align-items:center;gap:.4375rem;padding:.4375rem .75rem;background:transparent;border:1px solid transparent;border-radius:6px;font-family:inherit;font-size:.8125rem;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.cem-footer .cem-status-toggle--deactivate{color:var(--error-color)}.cem-footer .cem-status-toggle--activate{color:var(--success-color)}.cem-footer .cem-status-toggle:hover:not(:disabled){background:var(--surface-hover, var(--hover-bg));border-color:var(--border-primary)}.cem-footer .cem-status-toggle:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.cem-body{padding:1rem;gap:1rem}.cem-identity{gap:.75rem}.cem-avatar{width:40px;height:40px;font-size:.875rem}.cem-name-input{font-size:1rem}.cem-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.cem-form-row,.cem-info-grid{grid-template-columns:1fr}.cem-tabs{gap:1rem}.cem-footer{padding:.875rem 1rem}}@media(max-width:480px){.cem-footer{flex-direction:column-reverse;align-items:stretch}.cem-footer-actions{width:100%}.cem-footer-actions .btn{flex:1}.cem-footer-left{width:100%;justify-content:center;margin-right:0}.cem-footer .cem-status-toggle{width:100%;justify-content:center}}.invitation-history-page{margin-top:2rem;background:var(--card-background, #fff);border:1px solid var(--border-color, #e0e0e0);border-radius:8px;overflow:hidden}.invitation-history-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color, #e0e0e0)}.invitation-history-header h3{margin:0 0 .2rem;font-size:1rem;font-weight:600;color:var(--text-primary, #1f2937)}.invitation-history-header p{margin:0;font-size:.8rem;color:var(--text-secondary, #6b7280)}.inv-history-success,.inv-history-error{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.875rem}.inv-history-success{background:var(--success-bg, #f0fdf4);color:var(--success-text, #166534);border-bottom:1px solid var(--success-border, #bbf7d0)}.inv-history-error{background:var(--error-bg, #fef2f2);color:var(--error-text, #991b1b);border-bottom:1px solid var(--error-border, #fecaca)}.inv-history-empty{padding:2rem 1.5rem;text-align:center;color:var(--text-secondary, #6b7280);font-size:.9rem}.inv-history-skeleton{display:flex;flex-direction:column;gap:0}.inv-history-skeleton-row{display:flex;gap:1.5rem;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--border-color, #e9ecef);pointer-events:none}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-block{border-radius:4px;background:linear-gradient(90deg,var(--surface-hover, #f3f4f6) 25%,rgba(255,255,255,.15) 50%,var(--surface-hover, #f3f4f6) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.4s ease-in-out infinite}.inv-history-skeleton-row:nth-child(2) .skeleton-block{animation-delay:.15s}.inv-history-skeleton-row:nth-child(3) .skeleton-block{animation-delay:.3s}.inv-history-table-wrap{overflow-x:auto}.inv-history-table{width:100%;border-collapse:collapse}.inv-history-table thead{border-bottom:1px solid var(--border-color, #e9ecef)}.inv-history-table th{padding:.65rem 1rem;text-align:left;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary, #6b7280);background:var(--card-border)}.inv-history-table td{padding:.85rem 1rem;border-bottom:1px solid var(--border-color, #e9ecef);font-size:.875rem;color:var(--text-primary, #1f2937);vertical-align:middle}.inv-history-table tbody tr:last-child td{border-bottom:none}.inv-history-table tbody tr:hover{background:var(--surface-hover, #f9fafb)}.inv-contact{font-weight:500}.inv-channel{display:inline-flex;align-items:center;gap:.25rem;font-size:.8rem;color:var(--text-secondary, #6b7280);text-transform:capitalize}.inv-date{color:var(--text-secondary, #6b7280);white-space:nowrap}.inv-expiry{font-size:.8rem;color:var(--warning-text, #92400e);white-space:nowrap}.inv-actions{display:flex;align-items:center;gap:.4rem;white-space:nowrap}.inv-actions .btn{width:28px;height:28px;min-height:28px;max-height:28px;padding:0;flex-shrink:0;align-self:center;justify-content:center}.btn-resend{display:inline-flex;align-items:center;gap:.25rem;padding:.3rem .6rem;background:var(--success-color, #28a745);color:#fff;border:none;border-radius:4px;font-size:.75rem;font-weight:500;cursor:pointer;transition:background .2s;white-space:nowrap}.btn-resend:hover:not(:disabled){background:var(--success-hover, #218838)}.btn-resend-spinner{display:inline-block;width:12px;height:12px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:inv-spin .6s linear infinite}@keyframes inv-spin{to{transform:rotate(360deg)}}.btn-delete-inv{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;background:var(--error-color, #dc3545);color:#fff;border:none;border-radius:4px;font-size:.75rem;font-weight:700;cursor:pointer;transition:background .2s}.btn-delete-inv:hover{background:var(--error-hover, #c82333)}.inv-delete-modal.modal-content{max-width:360px}.inv-delete-modal .modal-header{padding:.75rem 2.5rem .75rem 1rem;border-bottom:none}.inv-delete-modal .modal-header h2,.inv-delete-modal .modal-header h3,.inv-delete-modal .modal-title{font-size:1rem}.inv-delete-modal .modal-body{padding:.25rem 1rem .75rem;font-size:.875rem}.inv-delete-modal .modal-body p{margin:0;line-height:1.45}.inv-delete-modal .modal-footer{padding:.5rem 1rem .75rem;border-top:none;gap:.5rem;flex-direction:row;justify-content:flex-end;flex-wrap:nowrap}.inv-delete-modal .modal-footer .btn{width:auto}.inv-delete-modal .modal-close,.inv-delete-modal .modal-close-x,.inv-delete-modal .modal-close-btn{top:.5rem;right:.5rem}@media(max-width:640px){.invitation-history-header{flex-direction:column;align-items:flex-start;gap:.75rem}.inv-history-table th:nth-child(4),.inv-history-table td:nth-child(4){display:none}}.consent-form-details-overlay{position:fixed;inset:0;background-color:#00000080;z-index:1000;display:flex;align-items:center;justify-content:center}.consent-form-details-modal{background-color:var(--neutral-surface);border:1px solid var(--neutral-border);border-radius:8px;width:90%;max-width:min(100%,800px);height:80vh;display:flex;flex-direction:column;overflow:hidden}.consent-form-details-header{padding:20px;border-bottom:1px solid var(--neutral-border-soft);display:flex;justify-content:space-between;align-items:center}.consent-form-details-header-left{display:flex;align-items:center;gap:12px}.consent-form-details-header h2{margin:0;color:var(--text-primary, #1a1a1a)}.consent-form-details-version-badge{background-color:var(--info-blue-chip-bg);color:var(--info-blue-chip-text);padding:4px 12px;border-radius:16px;font-size:14px;font-weight:700}.consent-form-details-header-actions{display:flex;align-items:center;gap:8px}.consent-form-details-edit-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:7px;border:1px solid var(--border-primary);background:var(--card-background);color:var(--text-primary);font:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.consent-form-details-edit-btn:hover{border-color:var(--accent-orange);color:var(--accent-orange);background:var(--chip-orange-bg)}.consent-form-details-close-btn{background:none;border:none;font-size:24px;line-height:1;cursor:pointer;color:var(--neutral-text-secondary, var(--text-secondary));padding:0 4px}.consent-form-details-close-btn:hover{color:var(--neutral-text-strong, var(--text-primary))}.consent-form-details-tabs{display:flex;border-bottom:1px solid var(--neutral-border-soft)}.consent-form-details-tab{padding:12px 24px;border:none;background-color:transparent;border-bottom:2px solid transparent;cursor:pointer;text-transform:capitalize;color:var(--neutral-text-secondary)}.consent-form-details-tab:hover{background-color:var(--neutral-surface-strong)}.consent-form-details-tab.active{background-color:var(--neutral-surface-alt);border-bottom-color:var(--info-blue-accent);color:var(--info-blue-accent)}.consent-form-details-content{flex:1;overflow:auto;padding:20px;background-color:var(--neutral-surface)}.consent-form-details-field{margin-bottom:16px;color:var(--neutral-text-soft)}.consent-form-details-field strong{color:var(--text-primary, #1a1a1a)}.consent-form-details-content-box{border:1px solid var(--neutral-border-strong);padding:16px;border-radius:4px;background-color:var(--neutral-surface-strong);color:var(--neutral-text-soft)}.consent-form-details-version-warning{background-color:var(--status-warning-deep-bg);border:1px solid var(--status-warning-deep-border);border-radius:4px;padding:12px;margin-bottom:16px;display:flex;justify-content:space-between;align-items:center;color:var(--status-warning-deep-text)}.consent-form-details-version-warning button{background-color:var(--info-blue-accent);color:#fff;border:none;border-radius:4px;padding:4px 8px;font-size:13px;cursor:pointer}.consent-form-details-edit-group{margin-bottom:16px}.consent-form-details-edit-label{display:block;margin-bottom:4px;font-weight:700;color:var(--text-primary, #1a1a1a)}.consent-form-details-edit-input{width:100%;padding:8px;border:1px solid var(--neutral-border-strong);border-radius:4px;background:var(--neutral-surface);color:var(--neutral-text-primary)}.consent-form-details-toolbar{border:1px solid var(--neutral-border-strong);border-bottom:none;padding:8px;background-color:var(--neutral-surface-strong);display:flex;gap:4px}.consent-form-details-toolbar-btn{padding:4px 8px;border:1px solid var(--neutral-border-strong);background:var(--neutral-surface);cursor:pointer;color:var(--neutral-text-soft)}.consent-form-details-editor{border:1px solid var(--neutral-border-strong);border-top:none;min-height:200px;padding:8px;background-color:var(--neutral-surface);color:var(--neutral-text-soft)}.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(--neutral-text-soft);cursor:pointer}.consent-form-details-save-actions{display:flex;gap:.75rem;margin-top:1rem}.consent-form-details-save-btn{background-color:var(--accent-orange, #FE6B34);color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;font-weight:500;font-size:.875rem}.consent-form-details-save-btn:hover{background-color:var(--accent-orange-hover, #e55a2b)}.consent-form-details-save-draft{background-color:var(--surface-secondary, #f3f4f6);color:var(--text-primary, #1f2937);border:1px solid var(--border-primary, #d1d5db)}.consent-form-details-save-draft:hover{background-color:var(--surface-hover, #e5e7eb)}.consent-form-details-audit h3{color:var(--text-primary, #1a1a1a);margin-top:0}.consent-form-details-audit-empty{text-align:center;padding:40px;color:var(--neutral-text-muted);background-color:var(--neutral-surface-strong);border-radius:4px;border:1px solid var(--neutral-border-strong)}.consent-form-details-signed-banner{background-color:var(--info-blue-bg);border:1px solid var(--info-blue-border);border-radius:4px;padding:8px;margin-bottom:16px;font-size:14px;color:var(--info-blue-text)}.consent-form-details-version-card{border:1px solid var(--neutral-border-soft);border-radius:4px;padding:16px;margin-bottom:16px;background-color:var(--neutral-surface)}.consent-form-details-version-card.signed{border:2px solid var(--info-blue-accent);background-color:var(--info-blue-bg)}.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)}.consent-form-details-signed-badge{background-color:var(--info-blue-accent);color:#fff;padding:2px 6px;border-radius:12px;font-size:13px;font-weight:700}.consent-form-details-version-meta{display:flex;align-items:center;gap:8px}.consent-form-details-version-date{font-size:14px;color:var(--neutral-text-secondary)}.consent-form-details-view-version-btn{background-color:var(--neutral-surface-strong);border:1px solid var(--neutral-border-strong);border-radius:4px;padding:4px 8px;font-size:13px;cursor:pointer;color:var(--neutral-text-soft)}.consent-form-details-view-version-btn:hover{background-color:var(--neutral-surface-hover)}.consent-form-details-changes{margin-bottom:8px;color:var(--neutral-text-soft)}.consent-form-details-changes strong{color:var(--text-primary, #1a1a1a)}.consent-form-details-changes ul{margin:4px 0;padding-left:20px}.consent-form-details-version-content-preview{border:1px solid var(--neutral-border-strong);padding:8px;border-radius:4px;background-color:var(--neutral-surface-strong);margin-top:4px;font-size:14px;color:var(--neutral-text-soft)}.consent-form-details-loading{padding:20px;color:var(--neutral-text-muted)}.client-profile{border-radius:0;box-shadow:none;background:transparent;max-width:1280px;margin:0 auto}.client-profile-loading,.client-profile-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;text-align:center;padding:3rem 1rem}.profile-page-header{padding:1.5rem 0 .75rem}.profile-page-title{margin:0;font-size:1.5rem;font-weight:700;letter-spacing:-.01em;color:var(--text-primary, #1f2937)}.profile-page-subtitle{margin:.25rem 0 0;font-size:.8125rem;color:var(--text-secondary, #6b7280)}.profile-identity-row{display:flex;align-items:center;gap:.875rem;flex-wrap:wrap;padding:.5rem 0 1rem}.profile-identity-avatar{flex:0 0 auto;width:48px;height:48px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:1rem;background:var(--accent-orange, #fe6b34);color:var(--text-inverse, #fff);letter-spacing:.02em}.profile-identity-main{flex:1;min-width:200px}.profile-identity-name-row{display:flex;align-items:center;gap:.625rem;flex-wrap:wrap}.profile-identity-name{font-size:1rem;font-weight:700;color:var(--text-primary, #1f2937)}.profile-identity-meta{margin-top:.25rem;display:flex;flex-wrap:wrap;gap:2px .875rem;font-size:.75rem;color:var(--text-secondary, #6b7280)}.profile-identity-meta-item{white-space:nowrap}.client-profile .profile-identity-row .profile-actions{display:flex;gap:.5rem;flex:0 0 auto;flex-wrap:wrap;justify-content:flex-end;margin-right:0}.client-profile .profile-identity-row .profile-actions .btn{padding:.45rem .85rem;font-size:.8125rem;white-space:nowrap;border-radius:6px}.profile-identity-mobile-actions,.profile-mobile-bottom-actions{display:none}.profile-header{color:var(--text-primary, #1a1a1a);padding:1.25rem 1.5rem;position:relative;border-bottom:1px solid var(--border-primary, #e9ecef)}.profile-header.compact-header{padding:1rem 1.25rem}.profile-header-row{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.profile-header-content{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.profile-name{margin:0;font-size:1.125rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.name-input-inline{background:var(--input-bg);border:1px solid var(--card-border);border-radius:6px;padding:.375rem .5rem;color:var(--text-primary);font-size:1rem;font-weight:600;width:240px;max-width:100%}.name-input-inline::placeholder{color:var(--text-tertiary)}.name-input-inline:focus{outline:none;border-color:var(--accent-orange);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-orange) 18%,transparent)}.profile-title{display:flex;align-items:center;gap:.75rem}.profile-title h2{margin:0;font-size:1.75rem;font-weight:600;color:var(--text-primary, #1a1a1a)}.profile-header .status-badge{font-size:.7rem;padding:.2rem .625rem}.profile-email,.profile-phone{margin:0;opacity:.9;font-size:.8rem}.profile-actions{display:flex;gap:.5rem;flex-shrink:0;margin-right:1rem}.profile-actions .btn-sm{padding:.25rem .625rem;font-size:.8125rem}.profile-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:.875rem;padding:1.25rem 0 .5rem;background:transparent;border-bottom:none}.stat-card{position:relative;text-align:left;padding:0;border-radius:10px;border:1px solid var(--card-border, var(--border-primary, #e9ecef));background:var(--card-background, #ffffff);overflow:hidden;display:flex;flex-direction:column}.stat-card-body{padding:.75rem .875rem .875rem}.stat-card--accent-orange{--stat-accent: var(--accent-orange, #fe6b34)}.stat-card--accent-blue{--stat-accent: var(--info-color, #3b82f6)}.stat-card--accent-green{--stat-accent: var(--success-color, #16a34a)}.stat-card--accent-red{--stat-accent: var(--error-color, #dc2626)}.stat-card--accent-muted{--stat-accent: var(--border-primary, #d1d5db)}.stat-label{font-size:.6875rem;font-weight:700;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.08em}.stat-value{margin-top:.5rem;font-size:1.375rem;font-weight:700;color:var(--stat-accent, var(--text-primary, #1f2937));line-height:1;letter-spacing:-.01em}.stat-card--accent-muted .stat-value{color:var(--text-primary, #1f2937)}.stat-value.negative{color:var(--error-color, #dc2626)}.stat-sub{margin-top:.4rem;font-size:.75rem;color:var(--text-tertiary, #9ca3af)}.profile-tabs{display:flex;position:relative;border-bottom:none;overflow-x:auto;overflow-y:hidden;padding:0;gap:1.5rem;margin-top:.25rem}.profile-tabs:after{content:"";position:absolute;right:0;bottom:0;left:0;height:1px;background:var(--border-primary, #e5e7eb);pointer-events:none;z-index:0}.profile-tabs .tab{flex:0 0 auto;padding:.625rem .125rem;border:none;background:none;cursor:pointer;font-size:.8125rem;font-weight:600;color:var(--text-secondary, #6b7280);border-bottom:2px solid transparent;transition:color .2s ease,border-color .2s ease;white-space:nowrap;position:relative;z-index:1;margin-bottom:-1px;font-family:inherit;text-align:left}.profile-tabs .tab:hover{color:var(--text-primary, #1f2937)}.profile-tabs .tab.active{color:var(--accent-orange, #fe6b34);border-bottom-color:var(--accent-orange, #fe6b34)}.profile-tabs .tab .tab-count{margin-left:.25rem;color:var(--text-tertiary, #9ca3af);font-weight:500}.profile-tabs .tab.active .tab-count{color:var(--accent-orange-hover, var(--accent-orange, #fe6b34))}.profile-content{padding:1.25rem 0 3rem}.overview-tab{display:flex;flex-direction:column;gap:1.25rem}.overview-section-label{letter-spacing:.08em;color:var(--text-secondary, #6b7280);margin:0 0 .625rem}.overview-kv-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.kv-table{border-bottom:1px solid var(--input-border, #e5e7eb)}.kv-row{display:grid;grid-template-columns:120px 1fr;gap:.75rem;align-items:baseline;padding:.45rem 0;border-top:1px solid var(--input-border, #e5e7eb);font-size:.8125rem}.kv-label{color:var(--text-secondary, #6b7280)}.kv-value{color:var(--text-primary, #1f2937);font-weight:600}.overview-comm-section{display:flex;flex-direction:column}.overview-comm-card{background:var(--card-background, #ffffff);border:1px solid var(--card-border, #e5e7eb);border-radius:10px;overflow:hidden}.overview-comm-row{display:grid;grid-template-columns:150px 1fr auto;gap:.875rem;align-items:center;padding:.7rem .875rem}.overview-comm-row+.overview-comm-row{border-top:1px solid var(--input-border, #e5e7eb)}.overview-comm-label{font-size:.75rem;color:var(--text-secondary, #6b7280)}.overview-comm-value{font-size:.8125rem;color:var(--text-primary, #1f2937);font-weight:500}.overview-comm-muted{color:var(--text-tertiary, #9ca3af);font-weight:400}.overview-comm-form-list{display:inline}.overview-comm-form-link{background:none;border:none;padding:0;margin:0;font-family:inherit;font-size:inherit;font-weight:500;color:var(--text-primary, #1f2937);cursor:pointer;text-decoration:underline;text-decoration-color:var(--border-primary, #d1d5db);text-underline-offset:2px}.overview-comm-form-link:hover{color:var(--accent-orange, #fe6b34);text-decoration-color:currentColor}.overview-comm-action{background:transparent;border:none;color:var(--accent-orange, #fe6b34);cursor:pointer;font-size:.75rem;font-weight:600;font-family:inherit;padding:.25rem .5rem;border-radius:6px}.overview-comm-action:hover{background:var(--surface-hover, rgba(254, 107, 52, .08))}.signature-detail-form-title{font-size:.9375rem;font-weight:700;color:var(--text-primary, #1f2937);margin-bottom:.875rem}.signature-detail-list{margin:0;padding:0;display:flex;flex-direction:column}.signature-detail-row{display:grid;grid-template-columns:110px 1fr;gap:.875rem;padding:.625rem 0;border-top:1px solid var(--border-primary, #e5e7eb);align-items:baseline}.signature-detail-row:first-child{border-top:none}.signature-detail-row dt{margin:0;font-size:.75rem;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.signature-detail-row dd{margin:0;font-size:.875rem;color:var(--text-primary, #1f2937);font-weight:600}.signature-detail-row dd.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:500;font-size:.8125rem}@media(max-width:768px){.overview-kv-grid{grid-template-columns:1fr;gap:1rem}.overview-comm-row{grid-template-columns:1fr auto;grid-template-areas:"label action" "value value";row-gap:.25rem}.overview-comm-label{grid-area:label}.overview-comm-value{grid-area:value}.overview-comm-action{grid-area:action}}.animals-list{display:flex;flex-direction:column;gap:.375rem}.animals-add-button.btn{min-height:0;padding:.45rem .875rem;border-radius:999px;display:inline-flex;align-items:center;gap:.375rem;font-size:.75rem;font-weight:700;line-height:1}.animal-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.75rem;min-height:3.375rem;padding:.5rem .875rem;background:var(--animal-row-background, var(--card-background, #ffffff));border:1px solid var(--animal-row-border, var(--card-border, #e5e7eb));border-radius:8px;text-align:left;font-family:inherit;cursor:pointer;width:100%;transition:background .15s ease,border-color .15s ease,transform .15s ease}.animal-row:hover{border-color:var(--accent-orange-hover, var(--accent-orange, #fe6b34));background:var(--animal-row-hover-background, var(--surface-secondary, #f8f9fa));transform:translateY(-1px)}.animal-row-avatar{display:inline-flex;flex-shrink:0}.animal-row-photo.avatar-small{width:28px;height:28px;font-size:.75rem}.animal-row:nth-child(5n+1) .animal-row-photo{background:#5b8cff;color:#fff}.animal-row:nth-child(5n+2) .animal-row-photo{background:#f3b75f;color:#1f2937}.animal-row:nth-child(5n+3) .animal-row-photo{background:#b9c7d5;color:#1f2937}.animal-row:nth-child(5n+4) .animal-row-photo{background:#9aaaba;color:#1f2937}.animal-row:nth-child(5n+5) .animal-row-photo{background:#3d4148;color:#111827}.animal-row-info{display:flex;flex-direction:column;min-width:0}.animal-row-name{font-size:.8125rem;font-weight:700;color:var(--text-primary, #1f2937);line-height:1.2}.animal-row-meta{margin-top:.125rem;font-size:.6875rem;font-weight:600;color:var(--text-secondary, #6b7280);line-height:1.25}.animal-row-chevron{font-size:1.125rem;line-height:1;color:var(--text-tertiary, #9ca3af);padding:0 .25rem}.animals-tab{--animal-row-background: var(--slate-row-bg);--animal-row-hover-background: var(--slate-row-bg-hover);--animal-row-border: var(--slate-row-border)}.info-section{margin-bottom:.75rem}.info-section.compact-section{margin-bottom:.5rem}.info-section h3{margin:0 0 .375rem;font-size:.9rem;color:var(--text-primary, #1a1a1a)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}@media(max-width:600px){.form-row{grid-template-columns:1fr}}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.info-item{display:flex;flex-direction:column;gap:.25rem}.info-item.full-width{grid-column:1 / -1}.info-item label{font-weight:600;color:#666;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px}.info-item p{margin:0;color:var(--text-primary, #1a1a1a);font-size:.95rem}.preferences-list{display:flex;flex-direction:column;gap:.75rem}.preference-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:var(--bg-secondary, #f8f9fa);border-radius:6px}.preference-item .enabled{color:var(--accent-orange);font-weight:500}.preference-item .disabled{color:#6c757d}.consent-list{display:flex;flex-direction:column;gap:.75rem}.consent-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--bg-secondary, #f8f9fa);border-radius:6px}.consent-date{margin:.25rem 0 0;font-size:.875rem;color:#666}.consent-given{color:#28a745;font-weight:500}.consent-denied{color:#dc3545;font-weight:500}.tab-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}.tab-header h3{margin:0;font-size:.9375rem;font-weight:700;color:var(--text-primary, #1f2937)}.pets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.animal-card{border:1px solid #e9ecef;border-radius:8px;overflow:hidden;transition:box-shadow .2s}.animal-photo{width:100%;height:200px;object-fit:cover}.animal-info h4{margin:0 0 .5rem;font-size:1.25rem;color:var(--text-primary, #1a1a1a)}.animal-goals,.animal-notes{margin-top:1rem}.animal-goals strong,.animal-notes strong{display:block;margin-bottom:.5rem;color:var(--text-primary, #1a1a1a);font-size:.875rem}.animal-goals ul{margin:0;padding-left:1.5rem}.animal-goals li{margin-bottom:.25rem;color:#666}.animal-notes p{margin:0;color:#666;font-size:.95rem}.billing-summary{display:flex;gap:1rem;background:var(--bg-secondary, #f8f9fa);padding:1rem 1.5rem;border-radius:8px;margin-bottom:1.5rem;flex-wrap:wrap}.billing-stat{text-align:center;flex:1;min-width:80px}.billing-stat label{display:block;font-weight:600;color:var(--text-secondary, #666);font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.25rem}.billing-stat p{margin:0;font-size:1.25rem;font-weight:700;color:var(--text-primary, #1f2937)}.billing-stat .positive{color:var(--success-color, #28a745)}.billing-stat .negative{color:var(--error-color, #dc3545)}.client-invoices-list{display:flex;flex-direction:column;gap:8px}.client-invoice-item{background:var(--card-background, #fff);border:1px solid var(--input-border, #e5e7eb);border-radius:8px;padding:12px 16px;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease}.client-invoice-item:hover{border-color:var(--accent-orange-hover, #f97316);box-shadow:0 1px 3px #0000001a}.client-invoice-item.overdue{border-left:3px solid var(--error-color, #dc3545)}.client-invoice-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.client-invoice-number{font-weight:600;font-size:.875rem;color:var(--text-primary, #1f2937)}.client-invoice-description{font-size:.8rem;color:var(--text-secondary, #6b7280);margin-bottom:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-invoice-bottom{display:flex;align-items:center;gap:12px;font-size:.8rem}.client-invoice-amount{font-weight:700;color:var(--text-primary, #1f2937)}.client-invoice-date{color:var(--text-tertiary, #9ca3af)}.client-invoice-due{color:var(--warning-color, #f59e0b);font-weight:500}.client-invoice-item.overdue .client-invoice-due{color:var(--error-color, #dc3545)}.client-profile-modal{max-width:min(100%,700px);width:95vw}.client-profile-modal .client-view-close{position:absolute;top:.75rem;right:.75rem;width:28px;height:28px;border-radius:50%;border:none;background:transparent;color:var(--text-secondary, #999);font-size:1.25rem;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:100;transition:all .2s ease;line-height:1;padding:0}.client-profile-modal .client-view-close:hover{color:var(--text-primary, #333);transform:scale(1.1)}.client-profile-modal .client-profile{box-shadow:none;border-radius:0}.client-profile-modal .profile-header{padding:1.25rem 1.5rem;display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:1rem;border-bottom:none}.client-profile-modal .profile-header-content{flex:1;min-width:0}.client-profile-modal .profile-title{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.client-profile-modal .profile-title h2{font-size:1.75rem;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-profile-modal .profile-actions{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:flex-end}.client-profile-modal .profile-actions .btn{padding:.4rem .875rem;font-size:.8125rem;white-space:nowrap;border-radius:6px}.client-profile-modal .profile-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;padding:.75rem 1.5rem;background:var(--card-bg, white);border-bottom:none}.client-profile-modal .stat-card{text-align:center;flex:1;min-width:0;padding:.625rem .5rem;border:none;background:var(--body-background)}.client-profile-modal .stat-value{font-size:1.5rem;font-weight:700;line-height:1.2;margin-bottom:.25rem}.client-profile-modal .stat-label{font-size:.625rem;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary, #666);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-profile-modal .profile-tabs{display:flex;gap:0;padding:0 1rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.client-profile-modal .profile-tabs::-webkit-scrollbar{display:none}.client-profile-modal .tab{padding:.75rem 1rem;font-size:.875rem;white-space:nowrap;flex-shrink:0}.client-profile-modal .profile-content{padding:1.25rem 1.5rem}@media(max-width:1200px){.client-profile-modal{max-width:98vw}}@media(max-width:768px){.client-profile{max-width:100%}.profile-page-header,.profile-identity-row,.profile-stats,.profile-tabs,.profile-content{padding-left:0;padding-right:0}.client-profile .profile-page-header{display:none}.profile-identity-row{flex-direction:row;flex-wrap:wrap;align-items:center;gap:.625rem;padding:.875rem 0 .5rem}.profile-identity-avatar{width:40px;height:40px;font-size:.875rem}.profile-identity-main{flex:1 1 0;min-width:0}.profile-identity-name-row{gap:.5rem}.profile-identity-name{font-size:.9375rem}.profile-identity-meta{margin-top:.125rem;font-size:.6875rem;gap:2px .625rem}.profile-identity-meta-item{overflow:hidden;text-overflow:ellipsis;max-width:100%}.profile-identity-mobile-actions{display:inline-flex;align-items:center;gap:.375rem;flex:0 0 auto;margin-left:auto}.profile-identity-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border-radius:9px;border:1px solid var(--card-border, var(--border-primary));background:var(--card-background);color:var(--text-secondary);cursor:pointer;transition:border-color .15s ease,color .15s ease,background .15s ease}.profile-identity-icon-btn:hover,.profile-identity-icon-btn:focus-visible{outline:none;border-color:var(--accent-orange);color:var(--accent-orange)}.profile-identity-icon-btn:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-orange) 18%,transparent)}.profile-identity-icon-btn--primary{background:var(--accent-orange);border-color:var(--accent-orange);color:var(--text-inverse, #fff)}.profile-identity-icon-btn--primary:hover,.profile-identity-icon-btn--primary:focus-visible{background:var(--accent-orange-hover, var(--accent-orange));border-color:var(--accent-orange-hover, var(--accent-orange));color:var(--text-inverse, #fff)}.client-profile .profile-identity-row .profile-actions{display:none}.profile-mobile-bottom-actions{display:block;margin:1.5rem 0 .5rem;padding-top:1rem;border-top:1px solid var(--border-primary)}.profile-mobile-bottom-actions .btn{width:100%;min-height:44px;padding:.625rem 1rem;font-size:.875rem;font-weight:600;border-radius:10px}.profile-mobile-bottom-actions .btn-danger{background:var(--error-color);color:var(--text-inverse, #fff);border:1px solid var(--error-color)!important}.profile-mobile-bottom-actions .btn-danger:hover:not(:disabled){background:var(--error-text);border-color:var(--error-text)!important}.profile-mobile-bottom-actions .btn-success{background:var(--success-color);color:var(--text-inverse, #fff);border:1px solid var(--success-color)!important}.profile-mobile-bottom-actions .btn-success:hover:not(:disabled){background:var(--success-text);border-color:var(--success-text)!important}.profile-stats{grid-template-columns:repeat(2,1fr);gap:.5rem;padding:.875rem 0 .25rem}.stat-card-body{padding:.625rem .75rem .6875rem}.stat-label{font-size:.625rem}.stat-value{font-size:1.125rem;margin-top:.375rem}.stat-sub{font-size:.6875rem;margin-top:.25rem}.profile-tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;gap:1.125rem;scrollbar-width:none;margin-top:.5rem}.profile-tabs::-webkit-scrollbar{display:none}.profile-tabs .tab{padding:.6875rem .25rem;font-size:.8125rem;min-height:40px}.profile-content{padding:1rem 0 1.5rem}.overview-tab{gap:1rem}.overview-kv-grid{grid-template-columns:1fr;gap:.875rem}.kv-row{grid-template-columns:100px 1fr;gap:.5rem;padding:.4rem 0}.info-grid,.pets-grid{grid-template-columns:1fr}.notification-history-row{grid-template-columns:1fr auto;grid-template-areas:"kind   status" "via    engagement" "date   date";column-gap:.625rem;row-gap:.25rem;padding:.625rem .75rem}.notification-history-date{grid-area:date;font-size:.6875rem}.notification-history-kind{grid-area:kind}.notification-history-via{grid-area:via}.notification-history-status{grid-area:status;justify-self:end}.notification-history-engagement{grid-area:engagement;justify-self:end;font-size:.6875rem}.billing-summary{flex-direction:column;gap:.5rem;padding:.875rem 1rem;margin-bottom:1rem}.billing-stat{text-align:left;min-width:0}.billing-stat label{margin-bottom:.125rem}.billing-stat p{font-size:1.125rem}.client-invoice-item{padding:10px 12px}.client-invoice-number{font-size:.8125rem}.client-invoice-description{font-size:.75rem}.animals-list .animal-row{padding:.5rem .75rem;min-height:3rem}}@media(max-width:380px){.profile-stats{grid-template-columns:repeat(2,1fr);gap:.4375rem}.stat-value{font-size:1.0625rem}.profile-tabs{gap:.875rem}.profile-tabs .tab{font-size:.78125rem}}.clientprofile-modal-content{background:#fff;border-radius:8px;padding:0;max-width:min(100%,1200px);width:90%;max-height:80vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #eee}.modal-header h3{margin:0}.modal-body{padding:20px}.forms-list{display:flex;flex-direction:column;gap:12px;margin-top:16px}.form-option{display:flex;justify-content:space-between;align-items:center;padding:12px;border:1px solid #ddd;border-radius:6px}.form-option p{margin:4px 0 0;color:#666;font-size:14px}.consent-tab{padding:20px 0}.consent-forms-list{display:flex;flex-direction:column;gap:12px}.consent-form-item{display:flex;justify-content:space-between;align-items:center;padding:16px;border:1px solid #e1e5e9;border-radius:8px;background:#fff}.form-info h4{margin:0 0 4px;font-size:14px;font-weight:600;color:var(--text-primary, #1a1a1a)}.form-status{font-size:13px;padding:4px 8px;border-radius:4px;font-weight:500}.form-status.assigned{background:#e8f5e8;color:#2d7d32}.form-status.not-assigned{background:#fff3e0;color:#f57c00}.form-actions .btn{padding:6px 12px;font-size:13px;border-radius:4px;border:none;cursor:pointer;font-weight:500;flex-grow:0}.animal-avatar-section{display:flex;justify-content:center;margin-bottom:8px}.notification-delays-tab{padding:0}.delays-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.875rem;padding-bottom:0;border-bottom:none}.delays-header h3{margin:0;font-size:.9375rem;font-weight:700;color:var(--text-primary, #1f2937)}.delays-description{margin:4px 0 0;font-size:.8125rem;color:var(--text-secondary, #6b7280);line-height:1.5;max-width:540px}.overrides-badge{background:var(--chip-orange-bg, rgba(254, 107, 52, .12));color:var(--accent-orange, #fe6b34);padding:3px 10px;border-radius:999px;font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;flex-shrink:0}.delays-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:18px}.delay-card{position:relative;background:var(--card-background, #ffffff);border:1px solid var(--card-border, #e5e7eb);border-radius:10px;padding:12px 14px;transition:border-color .15s ease}.delay-card:hover{border-color:var(--accent-orange-hover, var(--accent-orange, #fe6b34))}.delay-card.overridden{border-color:var(--accent-orange, #fe6b34);background:var(--card-background, #ffffff)}.delay-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;padding-bottom:0;border-bottom:none;gap:.5rem}.delay-info{min-width:0}.delay-info h4{margin:0;font-size:.8125rem;font-weight:700;color:var(--text-primary, #1f2937)}.delay-info p{margin:0;font-size:.75rem;color:var(--text-tertiary, #9ca3af);line-height:1.4}.override-indicator{display:inline-flex;align-items:center;background:var(--chip-orange-bg, rgba(254, 107, 52, .12));color:var(--accent-orange, #fe6b34);padding:2px 8px;border-radius:999px;font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;flex-shrink:0}.delay-card-body{display:flex;flex-direction:column;gap:4px;margin-top:10px}.delay-setting{display:flex;flex-direction:column;gap:4px}.delay-setting label{font-size:.6625rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary, #6b7280)}.delay-select{padding:8px 10px;border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;font-size:.8125rem;font-weight:600;color:var(--text-primary, #1f2937);background:var(--body-background, #ffffff);cursor:pointer;transition:border-color .15s ease;font-family:inherit}.delay-select:hover{border-color:var(--accent-orange-hover, var(--accent-orange, #fe6b34))}.delay-select:focus{outline:none;border-color:var(--accent-orange, #fe6b34);box-shadow:0 0 0 3px var(--chip-orange-bg, rgba(254, 107, 52, .18))}.delay-card.overridden .delay-select{border-color:var(--accent-orange, #fe6b34)}.default-notice{margin-top:6px;font-size:.6875rem;color:var(--text-tertiary, #9ca3af);padding:0;background:transparent;border-radius:0;text-align:left}.default-notice strong{color:var(--text-secondary, #6b7280);font-weight:600}.delays-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:0;border-top:none}.delay-card.coming-soon{opacity:.55;border-style:dashed;background:var(--card-background, #ffffff)}.delay-card.coming-soon:hover{border-color:var(--card-border, #e5e7eb);cursor:not-allowed}.coming-soon-pill{display:inline-flex;align-items:center;background:var(--surface-secondary, #f3f4f6);color:var(--text-secondary, #6b7280);padding:2px 8px;border-radius:999px;font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--border-primary, #e5e7eb);flex-shrink:0}.notification-history-section{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--border-primary, #e5e7eb)}.notification-history-list{background:var(--card-background, #ffffff);border:1px solid var(--card-border, #e5e7eb);border-radius:10px;overflow:hidden}.notification-history-row{display:grid;grid-template-columns:200px 1fr auto auto auto;gap:.75rem;align-items:center;padding:.625rem .875rem;font-size:.8125rem}.notification-history-engagement{font-size:.75rem;font-weight:600;white-space:nowrap}.notification-history-engagement .engagement-opened{color:var(--success-color, #16a34a)}.notification-history-engagement .engagement-bounced{color:var(--error-color, #dc2626)}.notification-history-engagement .engagement-pending{color:var(--text-tertiary, #9ca3af);font-weight:500}.notification-history-engagement .engagement-na{color:var(--text-tertiary, #9ca3af)}.notification-history-row+.notification-history-row{border-top:1px solid var(--border-primary, #e5e7eb)}.notification-history-date{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--text-secondary, #6b7280);font-size:.75rem}.notification-history-kind{color:var(--text-primary, #1f2937);font-weight:600}.notification-history-via{color:var(--text-secondary, #6b7280);font-size:.75rem}.notification-history-status{padding:2px 8px;border-radius:999px;font-size:.6875rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:var(--surface-secondary, #f3f4f6);color:var(--text-secondary, #6b7280)}.notification-history-status.status-sent,.notification-history-status.status-delivered{background:var(--info-bg, rgba(59, 130, 246, .12));color:var(--info-color, #3b82f6)}.notification-history-status.status-opened{background:var(--success-bg, rgba(34, 197, 94, .12));color:var(--success-color, #16a34a)}.notification-history-status.status-failed{background:var(--error-bg, rgba(220, 38, 38, .12));color:var(--error-color, #dc2626)}.notification-history-status.status-pending{background:var(--chip-orange-bg, rgba(254, 107, 52, .12));color:var(--accent-orange, #fe6b34)}.notification-history-empty{font-size:.8125rem;color:var(--text-tertiary, #9ca3af);padding:.75rem 0}.notification-history-row--clickable{width:100%;border:none;background:transparent;font-family:inherit;cursor:pointer;text-align:left;transition:background-color .15s ease}.notification-history-row--clickable:hover{background:var(--surface-hover, rgba(254, 107, 52, .05))}.notification-history-row--clickable:focus-visible{outline:2px solid var(--accent-orange, #fe6b34);outline-offset:-2px;border-radius:4px}.notification-detail-header{margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-primary, #e5e7eb)}.notification-detail-summary{font-size:.9375rem;font-weight:700;color:var(--text-primary, #1f2937)}.notification-detail-meta{margin-top:.25rem;font-size:.75rem;color:var(--text-secondary, #6b7280)}.notification-detail-status{text-transform:uppercase;letter-spacing:.04em;font-weight:700}.notification-detail-section{margin-top:1rem}.notification-detail-section-label{font-size:.6875rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary, #6b7280);margin-bottom:.5rem}.notification-detail-list{margin:0;padding:0;display:flex;flex-direction:column}.notification-detail-row{display:grid;grid-template-columns:130px 1fr;gap:.875rem;padding:.5rem 0;border-top:1px solid var(--border-primary, #e5e7eb);align-items:baseline}.notification-detail-row:first-child{border-top:none}.notification-detail-row dt{margin:0;font-size:.75rem;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.notification-detail-row dd{margin:0;font-size:.8125rem;color:var(--text-primary, #1f2937);font-weight:500;word-break:break-word}.notification-detail-row dd .muted{color:var(--text-tertiary, #9ca3af);font-weight:400}.notification-detail-row dd .status-success{color:var(--success-color, #16a34a);font-weight:600}.notification-detail-row dd.status-error,.notification-detail-row dd .status-error{color:var(--error-color, #dc2626);font-weight:600}.notification-detail-clicked-link{margin-top:.25rem;font-size:.75rem;color:var(--text-secondary, #6b7280)}.notification-detail-clicked-link code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;background:var(--surface-secondary, #f3f4f6);padding:1px 6px;border-radius:4px;word-break:break-all}.notification-detail-tracking-note{margin-top:.625rem;padding:.5rem .625rem;font-size:.6875rem;line-height:1.4;color:var(--text-tertiary, #9ca3af);background:var(--surface-secondary, #f9fafb);border-radius:6px}.notification-detail-email-iframe{width:100%;height:360px;margin-top:.75rem;border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;background:#fff}.notification-detail-email-text{margin:.75rem 0 0;padding:.75rem;background:var(--surface-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;color:var(--text-primary, #1f2937);white-space:pre-wrap;word-break:break-word;max-height:320px;overflow:auto}.notification-detail-inapp-card{background:var(--card-background, #ffffff);border:1px solid var(--card-border, #e5e7eb);border-radius:8px;padding:.75rem .875rem;margin-bottom:.5rem}.notification-detail-inapp-message{font-size:.8125rem;color:var(--text-primary, #1f2937);font-weight:500}.notification-detail-inapp-link{margin-top:.5rem;font-size:.75rem;color:var(--text-secondary, #6b7280)}.notification-detail-inapp-link code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem;background:var(--surface-secondary, #f3f4f6);padding:1px 6px;border-radius:4px}.notification-detail-empty{padding:1rem;background:var(--surface-secondary, #f9fafb);border:1px dashed var(--border-primary, #e5e7eb);border-radius:8px;font-size:.8125rem;color:var(--text-tertiary, #9ca3af)}@media(max-width:768px){.delays-header{flex-direction:column;gap:12px}.delays-grid{grid-template-columns:1fr}.delays-actions{flex-direction:column-reverse}.delays-actions button{width:100%}}.solo-subscription-notice{background:linear-gradient(135deg,#f0f4ff,#e8f0fe);border:1px solid #c2d4f8;border-radius:8px;padding:1rem 1.25rem;margin-top:.5rem}.solo-subscription-notice .notice-text{margin:0 0 .5rem;color:#1a365d;font-size:.95rem}.solo-subscription-notice .notice-hint{margin:0;color:#4a5568;font-size:.85rem}.overview-tab{display:flex;flex-direction:column;gap:1.5rem}.overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.overview-column{display:flex;flex-direction:column;gap:1.25rem}.info-section.compact{padding:0;background:transparent;border-radius:0;border:none}.info-section.compact h3{margin:0 0 1rem;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:var(--text-tertiary, #999);padding-bottom:0;border-bottom:none}.info-list{display:flex;flex-direction:column;gap:.875rem}.profile-content .info-row{display:flex;flex-direction:column;align-items:flex-start;padding:0;gap:.125rem}.info-row:last-child{border-bottom:none}.info-label{font-size:.75rem;color:var(--text-tertiary, #999);flex-shrink:0}.info-value{font-size:.9375rem;color:var(--text-primary, #1a1a1a);font-weight:600;text-align:left;word-break:break-word;min-width:0}.section-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:0;border-bottom:none}.section-header-row h3{margin:0;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:var(--text-tertiary, #999)}.btn-xs{padding:.25rem .75rem;font-size:.75rem;line-height:unset;min-height:30px;height:30px;border-radius:6px}.preferences-list.compact{display:flex;flex-direction:row;gap:1.5rem}.preferences-list.compact .preference-item{display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:0;background:transparent;border-radius:0;gap:.125rem}.preferences-list.compact .preference-item span:first-child{font-size:.75rem;color:var(--text-tertiary, #999)}.preferences-list.compact .preference-item .enabled,.preferences-list.compact .preference-item .disabled{font-size:.875rem;font-weight:600}.custom-periods-summary{font-size:.8125rem}.periods-config-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;padding-bottom:.5rem;border-bottom:1px solid var(--card-border, #e9ecef)}.periods-config-label{font-size:.875rem;font-weight:600;color:var(--text-primary, #1a1a1a)}.muted-text{color:var(--text-secondary, #666);margin:0;font-size:.8125rem}.periods-list{display:flex;flex-direction:column;gap:.25rem}.period-item{display:flex;justify-content:space-between;padding:.25rem .5rem;background:var(--card-background, white);border-radius:4px;font-size:.75rem}.period-value{color:var(--primary, #007bff);font-weight:500}.custom-periods-form{display:flex;flex-direction:column;gap:.5rem}.period-select-row{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.period-select-row label{font-size:.75rem;color:var(--text-primary, #1a1a1a)}.period-select-row select{padding:.25rem .375rem;font-size:.75rem;border-radius:4px;border:1px solid var(--border-primary, #ddd);min-width:120px}.period-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.375rem}.overview-tab>.info-section{padding:0;background:transparent;border-radius:0;border:none}.overview-tab>.info-section h3{margin:0;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:var(--text-tertiary, #999)}.consent-forms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:.5rem}.consent-form-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:var(--card-bg, white);border:1px solid var(--border-primary, #e9ecef);border-radius:6px}.consent-form-item.signed{background:var(--status-signed-bg);border-color:var(--status-signed-border)}.consent-form-info{display:flex;align-items:center;gap:.375rem;min-width:0}.consent-form-info strong{font-size:.8125rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-primary, #1a1a1a)}.required-badge{background:#dc3545;color:#fff;padding:.0625rem .3125rem;border-radius:8px;font-size:.5625rem;font-weight:700;text-transform:uppercase;flex-shrink:0}.consent-form-status{font-size:.75rem;flex-shrink:0}.status-signed{color:var(--status-signed-text-bootstrap)}.status-not-assigned{color:#6c757d;font-size:.6875rem}@media(max-width:600px){.overview-grid{grid-template-columns:1fr}.preferences-list.compact{flex-direction:column;gap:.75rem}.consent-forms-grid{grid-template-columns:1fr}}.sessions-tab{padding:0}.client-profile .sessions-tab .sessions-list{display:flex;flex-direction:column;gap:.5rem;width:100%}.client-profile .sessions-tab .cp-session-row{display:grid;grid-template-columns:56px 28px minmax(0,1fr) auto;align-items:center;gap:.875rem;width:100%;padding:.6875rem .875rem;border-radius:10px;border:1px solid var(--card-border, var(--border-primary));background:transparent;text-align:left;font:inherit;color:inherit;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}.client-profile .sessions-tab .cp-session-row:hover{border-color:var(--accent-orange-hover, var(--accent-orange));background:var(--surface-hover, var(--hover-bg));transform:translateY(-1px)}.client-profile .sessions-tab .cp-session-row:focus-visible{outline:none;border-color:var(--accent-orange);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-orange) 18%,transparent)}.client-profile .sessions-tab .cp-session-when{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.0625rem;padding:.3125rem 0;border-radius:8px;border:1px solid var(--card-border, var(--border-primary));background:var(--surface-secondary);font-variant-numeric:tabular-nums;line-height:1}.client-profile .sessions-tab .cp-session-when-month{font-size:.625rem;font-weight:700;color:var(--accent-orange);letter-spacing:.08em}.client-profile .sessions-tab .cp-session-when-day{font-size:1.0625rem;font-weight:800;color:var(--text-primary);letter-spacing:-.02em}.client-profile .sessions-tab .cp-session-avatar.avatar-small{width:28px;height:28px;font-size:.6875rem;flex-shrink:0}.client-profile .sessions-tab .cp-session-main{display:flex;flex-direction:column;gap:.1875rem;min-width:0}.client-profile .sessions-tab .cp-session-line1{display:flex;align-items:baseline;gap:.5rem;min-width:0}.client-profile .sessions-tab .cp-session-animal{font-size:.875rem;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0;max-width:18ch}.client-profile .sessions-tab .cp-session-with{font-size:.8125rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.client-profile .sessions-tab .cp-session-with-label{color:var(--text-tertiary);margin-right:.1875rem}.client-profile .sessions-tab .cp-session-line2{display:flex;align-items:center;gap:.375rem;font-size:.75rem;color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-variant-numeric:tabular-nums}.client-profile .sessions-tab .cp-session-time{color:var(--text-secondary);font-weight:600}.client-profile .sessions-tab .cp-session-sep{color:var(--text-tertiary);opacity:.55}.client-profile .sessions-tab .cp-session-mobile-date{display:none}.client-profile .sessions-tab .cp-session-status{display:inline-flex;align-items:center;gap:.375rem;padding:.1875rem .625rem .1875rem .5rem;border-radius:999px;border:1px solid transparent;font-size:.6875rem;font-weight:600;letter-spacing:.01em;line-height:1;white-space:nowrap;text-transform:capitalize;flex-shrink:0}.client-profile .sessions-tab .cp-session-status-dot{width:6px;height:6px;border-radius:999px;background:currentColor;flex-shrink:0}.client-profile .sessions-tab .cp-session-status--completed{color:var(--success-text);background:var(--success-bg);border-color:var(--success-border)}.client-profile .sessions-tab .cp-session-status--scheduled{color:var(--info-text);background:var(--info-bg);border-color:var(--info-border)}.client-profile .sessions-tab .cp-session-status--cancelled{color:var(--error-text);background:var(--error-bg);border-color:var(--error-border)}.client-profile .sessions-tab .cp-session-status--in-progress{color:var(--warning-text);background:var(--warning-bg);border-color:var(--warning-border)}.client-profile .sessions-tab .cp-session-notes{grid-column:2 / -1;margin-top:.4375rem;padding-top:.4375rem;border-top:1px dashed var(--border-primary);font-size:.75rem;color:var(--text-tertiary);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}@media(max-width:640px){.client-profile .sessions-tab .cp-session-row{grid-template-columns:28px minmax(0,1fr) auto;gap:.625rem;padding:.625rem .75rem}.client-profile .sessions-tab .cp-session-when{display:none}.client-profile .sessions-tab .cp-session-mobile-date{display:inline}.client-profile .sessions-tab .cp-session-line1{gap:.375rem}.client-profile .sessions-tab .cp-session-with{display:none}.client-profile .sessions-tab .cp-session-notes{grid-column:1 / -1}}.error-state{text-align:center;padding:2rem;color:var(--error-color, #dc3545)}.error-state button{margin-top:1rem}.client-profile-modal{background:var(--modal-elevated-bg);border:1px solid var(--modal-elevated-border)}.client-profile-modal>.modal-close{color:var(--text-secondary, #999);background:transparent}.client-profile-modal>.modal-close:hover{color:var(--text-primary, #333);background:transparent}.bulk-message-compose-modal .bmc-body{display:flex;flex-direction:column;gap:16px;padding:4px 0 8px}.bulk-message-compose-modal .bmc-summary{display:flex;align-items:center;justify-content:space-between;background:var(--surface-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;padding:10px 14px}.bulk-message-compose-modal .bmc-summary__label{color:var(--text-secondary);font-size:13px}.bulk-message-compose-modal .bmc-summary__value{color:var(--text-primary);font-weight:600;font-size:14px}.bulk-message-compose-modal .bmc-channel{border:none;margin:0;padding:0;display:flex;align-items:center;gap:16px}.bulk-message-compose-modal .bmc-channel__legend{font-size:13px;color:var(--text-secondary);margin-right:8px;padding:0}.bulk-message-compose-modal .bmc-channel__option{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:var(--text-primary);cursor:pointer}.bulk-message-compose-modal .bmc-channel__option input[type=radio]{accent-color:var(--accent-orange)}.bulk-message-compose-modal .bmc-field{display:flex;flex-direction:column;gap:6px}.bulk-message-compose-modal .bmc-field__label{display:flex;align-items:baseline;justify-content:space-between;font-size:13px;color:var(--text-secondary);font-weight:500}.bulk-message-compose-modal .bmc-field__counter{font-size:12px;color:var(--text-tertiary);font-variant-numeric:tabular-nums}.bulk-message-compose-modal .bmc-field__input,.bulk-message-compose-modal .bmc-field__textarea{width:100%;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;padding:8px 12px;background:var(--input-bg, #ffffff);color:var(--text-primary);font-size:14px;font-family:inherit;transition:border-color .2s ease}.bulk-message-compose-modal .bmc-field__input:focus,.bulk-message-compose-modal .bmc-field__textarea:focus{outline:none;border-color:var(--border-focus, var(--accent-orange))}.bulk-message-compose-modal .bmc-field__textarea{resize:vertical;min-height:96px;line-height:1.5}.bulk-message-compose-modal .bmc-field__hint{font-size:12px;color:var(--text-tertiary)}.bulk-message-compose-modal .bmc-error-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;max-height:320px;overflow-y:auto}.bulk-message-compose-modal .bmc-error-item{display:flex;flex-direction:column;gap:2px;padding:10px 12px;background:var(--error-bg, #fef2f2);border:1px solid var(--error-border, #fecaca);border-radius:6px}.bulk-message-compose-modal .bmc-error-item__name{font-size:13px;font-weight:600;color:var(--text-primary)}.bulk-message-compose-modal .bmc-error-item__reason{font-size:12px;color:var(--error-text, #b91c1c);line-height:1.4}.bulk-message-compose-modal .bmc-footer{display:flex;justify-content:flex-end;gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid var(--border-primary, #e5e7eb)}.client-list{max-width:min(100%,1400px);margin:0 auto}.client-list-controls{background:var(--surface-secondary, #f8f9fa);padding:1.5rem;border-radius:8px;margin-bottom:2rem}.search-box{margin-bottom:1rem}.search-input{width:100%;padding:.625rem 1rem;border:1px solid var(--input-border, #ddd);border-radius:.375rem;font-size:.875rem;background:var(--input-bg, white);color:var(--text-primary, #333)}.search-input::placeholder{color:var(--text-secondary, #6b7280)}.search-input:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.filter-controls{display:flex;gap:1.5rem;flex-wrap:wrap}.client-list .filter-group{display:flex;align-items:center;gap:.5rem}.client-list .filter-group label{font-weight:500;color:var(--text-primary, #333)}.filter-select{padding:.5rem 1rem;border:1px solid var(--input-border, #ddd);border-radius:6px;background:var(--input-bg, white);font-size:.95rem;cursor:pointer;color:var(--text-primary, #333)}.filter-select:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.client-table-container{background:var(--card-background, white);border-radius:8px;overflow-x:auto;margin-bottom:1.5rem;border:1px solid var(--border-color, #e0e0e0)}.client-table{width:100%;border-collapse:collapse}.client-table thead{border-bottom:1px solid var(--border-color, #e9ecef)}.client-table th{padding:.75rem 1rem;text-align:left;font-weight:600;color:var(--text-secondary, #495057);font-size:.7rem;text-transform:uppercase;letter-spacing:.05em}.client-table td{padding:.85rem 1rem;border-bottom:1px solid var(--border-color, #e9ecef);color:var(--text-primary, #333);font-size:.9rem}.client-row:hover{background:var(--surface-hover);cursor:pointer}.client-row--pending,.client-row--pending:hover{cursor:not-allowed;background:inherit}.client-row--pending .client-name,.client-row--pending .client-email-cell{opacity:.7}.client-name-cell{display:flex;align-items:center;gap:.6rem}.client-avatar{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:700;color:#fff;flex-shrink:0}.client-name{font-weight:500;color:var(--text-primary, #1a1a1a)}.client-email-cell{display:flex;align-items:center;gap:.4rem;color:var(--text-secondary, #888);font-size:.85rem}.client-email-cell .email-icon{font-size:.75rem;opacity:.6}.action-buttons{display:flex;gap:.5rem}.action-buttons .btn-icon{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid var(--border-primary, #e5e7eb);background:transparent;color:var(--text-secondary, #6b7280);cursor:pointer;transition:color .2s ease,border-color .2s ease,background .2s ease}.action-buttons .btn-icon:hover:not(:disabled){color:var(--accent-orange, #f4a261);border-color:var(--accent-orange, #f4a261)}.action-buttons .btn-icon:disabled{opacity:.5;cursor:not-allowed}.client-list .status-active{background:var(--success-bg);color:var(--success-text)}.client-list .status-inactive{background:#f8d7da;color:#721c24}.client-list .status-invited{background:#fff3cd;color:#856404}.balance-negative{color:#dc3545;font-weight:500}.client-list .loading-state .spinner,.client-list .loading-state .loading-spinner{margin:0 auto 1rem}@media(max-width:768px){.filter-controls{flex-direction:column;gap:1rem}.client-list .filter-group{width:100%}.filter-select{flex:1}.client-table-container{overflow-x:scroll}.client-table{min-width:min(100%,800px)}}.checkbox-column{width:48px;text-align:center;padding:.75rem .5rem!important}.checkbox-column input[type=checkbox]{cursor:pointer;width:18px;height:18px;accent-color:var(--primary-color, #4a90e2);border-radius:4px;transition:transform .15s ease,box-shadow .15s ease}.checkbox-column input[type=checkbox]:hover{transform:scale(1.1)}.checkbox-column input[type=checkbox]:focus{outline:none;box-shadow:0 0 0 3px var(--focus-ring, rgba(254, 107, 52, .3))}.checkbox-column input[type=checkbox]:checked{animation:checkPop .2s ease}@keyframes checkPop{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.client-table thead .checkbox-column input[type=checkbox]{width:18px;height:18px}.client-row.selected{background:var(--surface-hover);box-shadow:inset 3px 0 0 var(--accent-orange)}.client-row.selected:hover{background:var(--surface-hover)}@supports (-webkit-appearance: none) or (-moz-appearance: none){.checkbox-column input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border:2px solid var(--input-border, #d1d5db);border-radius:4px;background:var(--input-bg, white);position:relative;transition:all .15s ease}.checkbox-column input[type=checkbox]:hover{border-color:var(--primary-color, #4a90e2);background:var(--surface-secondary, #f8f9fa)}.checkbox-column input[type=checkbox]:checked{background:var(--accent-orange, #f4a261);border-color:var(--accent-orange, #f4a261)}.checkbox-column input[type=checkbox]:checked:after{content:"";position:absolute;left:5px;top:2px;width:5px;height:9px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.checkbox-column input[type=checkbox]:indeterminate{background:var(--accent-orange, #f4a261);border-color:var(--accent-orange, #f4a261)}.checkbox-column input[type=checkbox]:indeterminate:after{content:"";position:absolute;left:3px;top:6px;width:8px;height:2px;background:#fff;border-radius:1px}.checkbox-column input[type=checkbox]:focus{box-shadow:0 0 0 3px var(--focus-ring, rgba(254, 107, 52, .3))}.checkbox-column input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed}}.bulk-actions-bar{display:flex;justify-content:space-between;align-items:center;background:var(--card-background);color:#fff;padding:.5rem .75rem;margin-bottom:.5rem;gap:.75rem;flex-wrap:wrap}.bulk-actions-info{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.selected-count-chip{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;border-radius:5px;background:var(--chip-orange-bg);color:var(--accent-orange);font-weight:700;font-size:.75rem}.selected-label{font-weight:500;font-size:.8rem;color:var(--text-primary, #fff)}.bulk-separator{width:1px;height:18px;background:var(--border-color)}.bulk-clear-btn{background:none;border:none;color:var(--text-secondary, #999);font-size:.75rem;cursor:pointer;padding:0;display:flex;align-items:center;gap:3px}.bulk-clear-btn:hover{color:var(--text-primary, #fff)}.bulk-actions-bar .btn-link{color:#fff}.bulk-actions-buttons{display:flex;gap:.5rem;flex-wrap:nowrap}.bulk-actions-buttons .bulk-assign-btn{background:var(--accent-orange-btn-background);color:var(--accent-orange);border:1px solid var(--accent-orange)}.bulk-actions-buttons .bulk-assign-btn:hover:not(:disabled){background:var(--accent-orange-btn-hover)}.bulk-action-progress{background:var(--warning-bg, #fff3cd);border:1px solid var(--warning-color, #ffc107);border-radius:8px;padding:1rem;margin-bottom:1rem}.progress-info{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.9rem;color:var(--warning-text, #856404)}@media(max-width:768px){.bulk-actions-bar{flex-direction:column;gap:.5rem;align-items:stretch}.bulk-actions-info{flex-direction:row;align-items:center;gap:.5rem}.bulk-actions-buttons{flex-direction:row;gap:.5rem}.bulk-actions-buttons .btn{flex:1;width:auto}}.client-view-close{top:.5rem;right:.5rem;color:var(--text-secondary, #666);background:#fff;border-radius:50%;box-shadow:0 2px 4px #0000001a}.client-view-close:hover{color:var(--text-primary, #333);background:#f0f0f0}.load-more-container{display:flex;justify-content:center;padding:1.5rem;margin-top:1rem}.load-more-container .btn{display:inline-flex;align-items:center;gap:.5rem;min-width:200px;justify-content:center}.load-more-container .spinner-small{width:16px;height:16px;border-width:2px}.client-invitation{max-width:min(100%,700px);margin:0 auto;padding:2rem}.invitation-header{margin-bottom:2rem}.invitation-header h2{margin:0 0 .5rem;font-size:2rem;color:#1a1a1a}.invitation-header p{margin:0;color:#666;font-size:1rem}.invitation-form{background:var(--card-background, white);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 var(--card-divider, #e9ecef);border-radius:8px;background:var(--input-bg, white);cursor:pointer;transition:all .2s;font-size:1rem;font-weight:500;color:var(--text-on-panel)}.channel-option:hover{border-color:#4a90e2;background:#f8f9fa}.channel-option.active{border-color:#4a90e2;background:#e7f3ff;color:#4a90e2}.channel-icon{font-size:2rem}.form-field{margin-bottom:1.5rem}.form-field input,.form-field textarea{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:6px;font-size:1rem;font-family:inherit;transition:border-color .2s}.form-field input:focus,.form-field textarea:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.form-field input:disabled,.form-field textarea:disabled{background:#f8f9fa;cursor:not-allowed}.form-field textarea{resize:vertical;min-height:100px}.error-message{background:#f8d7da;color:#721c24;padding:1rem;border-radius:6px;margin-bottom:1rem;border:1px solid #f5c6cb;display:flex;align-items:center;gap:.75rem}.success-message{background:#d4edda;color:#155724;padding:1rem;border-radius:6px;margin-bottom:1.5rem;border:1px solid #c3e6cb;display:flex;align-items:center;gap:.75rem;animation:slideIn .3s ease-out}.success-icon{font-weight:700;font-size:1.2rem}.form-actions{display:flex;gap:1rem;margin-top:2rem}.form-actions button{flex:1}.invitation-history-section{background:var(--card-background, white);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:var(--card-background, white);cursor:pointer;font-size:1.1rem;font-weight:600;color:var(--text-primary, #1a1a1a);transition:background .2s}.history-toggle:hover{background:var(--input-bg, #f8f9fa)}.toggle-icon{color:var(--text-tertiary, #666);font-size:.875rem}.invitation-history{border-top:1px solid var(--card-divider, #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:var(--text-primary, #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}.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}@media(max-width:768px){.client-invitation{padding:1rem}.invitation-form{padding:1.5rem}.channel-options{grid-template-columns:1fr}.form-actions{flex-direction:column}.history-item{flex-direction:column;align-items:flex-start;gap:1rem}.history-meta{flex-direction:column;gap:.5rem}}.btn-resend:disabled{opacity:.7;cursor:not-allowed}.btn-resend-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:btn-spin .6s linear infinite;vertical-align:middle}.chart-container{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:8px;padding:12px;box-sizing:border-box}.chart-loading,.chart-empty{color:#6b7280;font-size:13px;text-align:center}.chart-loading{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.recharts-wrapper{outline:none}.recharts-surface{overflow:visible}.recharts-cartesian-axis-tick{font-size:13px}.recharts-legend-wrapper{padding-top:12px!important}.recharts-legend-item{margin-right:16px}.recharts-legend-item-text{font-size:13px;color:#374151}.recharts-tooltip-wrapper{outline:none}.recharts-default-tooltip{background:#fff;border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 4px 6px #0000001a}.recharts-tooltip-label{color:#1f2937;font-weight:500;margin-bottom:4px}.recharts-tooltip-item{color:#374151;font-size:13px}@media(max-width:768px){.chart-container{padding:12px}.recharts-cartesian-axis-tick,.recharts-legend-item-text{font-size:13px}}.role-editor-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1001;padding:16px}.role-editor-modal{background:var(--card-background, white);border-radius:12px;box-shadow:0 20px 60px #0000004d;width:100%;max-width:min(100%,550px);display:flex;flex-direction:column;overflow:hidden}.editor-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--card-divider, #e5e7eb)}.editor-header h2{margin:0;font-size:18px;font-weight:600;color:var(--text-primary, #1f2937)}.close-btn{background:none;border:none;font-size:28px;cursor:pointer;color:var(--text-tertiary, #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:var(--surface-hover, #f3f4f6);color:var(--text-primary, #1f2937)}.editor-content{flex:1;padding:16px;overflow-y:auto}.roles-grid{display:grid;grid-template-columns:1fr;gap:10px;margin-bottom:12px}.role-editor-modal .role-card{display:flex;align-items:flex-start;gap:12px;padding:12px;border:2px solid var(--card-divider, #e5e7eb);border-radius:8px;cursor:pointer;transition:all .2s;background:var(--card-background, white)}.role-editor-modal .role-card:hover{border-color:var(--card-border, #d1d5db);background:var(--surface-secondary, #f9fafb)}.role-editor-modal .role-card.selected{border-color:var(--accent-orange, #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-editor-modal .role-label{margin:0 0 2px;font-size:14px;font-weight:600;color:var(--text-primary, #1f2937)}.role-editor-modal .role-description{margin:0;font-size:13px;color:var(--text-tertiary, #6b7280)}.change-notice{background:#fef3c7;border:1px solid #fcd34d;border-radius:6px;padding:10px;margin-bottom:12px}.change-notice p{margin:0;font-size:13px;color:#92400e}.error-message{background:#fee2e2;border:1px solid #fecaca;border-radius:6px;padding:10px;margin-bottom:12px;color:#991b1b;font-size:13px}.editor-footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid var(--card-divider, #e5e7eb);background:var(--surface-secondary, #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(--neutral-surface);border:1px solid var(--neutral-border);border-radius:12px;box-shadow:0 20px 60px #0000004d;width:100%;max-width:min(100%,650px);max-height:80vh;display:flex;flex-direction:column;overflow:hidden}.manager-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--neutral-border)}.manager-header h2{margin:0;font-size:18px;font-weight:600;color:var(--text-primary, #1f2937)}.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}.close-btn:hover{background:var(--neutral-surface-strong);color:var(--neutral-text-primary)}.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 var(--neutral-border-strong);border-radius:6px;font-size:13px;outline:none;transition:all .2s;background:var(--neutral-surface);color:var(--neutral-text-primary)}.search-box input::placeholder{color:var(--neutral-text-secondary)}.search-box input:focus{border-color:var(--info-blue-accent);box-shadow:0 0 0 3px var(--info-blue-ring)}.search-box input:disabled{background:var(--neutral-surface-strong);cursor:not-allowed}.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:var(--neutral-text-secondary);font-size:13px}.spinner-small{width:16px;height:16px;border:2px solid var(--neutral-border);border-top-color:var(--info-blue-accent);border-radius:50%;animation:spin .8s linear infinite}.client-row{align-items:center;gap:10px;padding:10px;border:1px solid transparent;transition:all .2s;cursor:pointer;background:var(--neutral-surface);border-radius:0 6px 6px 0/0px 6px 6px 0px}.client-manager-modal .client-row{border-color:var(--neutral-border)}.client-manager-modal .client-row:hover{background:var(--neutral-surface-strong);border-color:var(--neutral-border-strong)}.client-checkbox{flex-shrink:0}.client-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--info-blue-accent)}.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:var(--neutral-text-primary);font-size:13px}.client-email{font-size:13px;color:var(--neutral-text-secondary)}.status-badge{padding:3px 8px;border-radius:12px;font-size:13px;font-weight:500;text-transform:capitalize;flex-shrink:0}.status-badge.active{background:#d1fae5;color:#065f46}.status-badge.inactive{background:#fee2e2;color:#991b1b}.loading{display:flex;align-items:center;justify-content:center;min-height:150px;color:var(--neutral-text-secondary)}.client-manager-modal .empty-state,.client-manager-modal .loading-state{color:var(--neutral-text-secondary)}.selection-summary{padding:10px 16px;background:var(--neutral-surface-strong);text-align:center;font-size:13px;color:var(--neutral-text-secondary);border-top:1px solid var(--neutral-border);flex-shrink:0}.selection-summary p{margin:0}.error-message{background:var(--error-bg, #fee2e2);border:1px solid var(--error-border, #fecaca);border-radius:6px;padding:10px;color:var(--status-flagged-text);font-size:13px}.manager-footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid var(--neutral-border);background:var(--neutral-surface-strong)}@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{position:relative;background:var(--card-background);border:1px solid var(--card-border);border-radius:14px;box-shadow:0 20px 60px #0000004d;width:100%;max-width:min(100%,960px);max-height:88vh;display:flex;flex-direction:column;overflow:hidden}.profile-modal .profile-modal__close{position:absolute;top:14px;right:14px;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:8px;color:var(--text-secondary);cursor:pointer;transition:background .15s ease,color .15s ease;z-index:2}.profile-modal .profile-modal__close:hover{background:var(--surface-hover);color:var(--text-primary)}.profile-modal .profile-identity-row{display:flex;align-items:center;gap:.875rem;padding:1.25rem 3.5rem 1rem 1.5rem;border-bottom:1px solid var(--card-border);flex-shrink:0}.profile-modal .profile-identity-avatar{flex:0 0 auto;width:48px;height:48px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:1rem;background:var(--accent-orange);color:var(--text-inverse, #fff);letter-spacing:.02em}.profile-modal .profile-identity-main{flex:1;min-width:0}.profile-modal .profile-identity-name-row{display:flex;align-items:center;gap:.625rem;flex-wrap:wrap}.profile-modal .profile-identity-name{font-size:1rem;font-weight:700;color:var(--text-primary)}.profile-modal .profile-identity-meta{margin-top:.25rem;display:flex;flex-wrap:wrap;gap:2px .875rem;font-size:.75rem;color:var(--text-secondary)}.profile-modal .profile-identity-meta-item{white-space:nowrap}.profile-modal .status-badge{display:inline-block;padding:2px 10px;border-radius:12px;font-size:.6875rem;font-weight:600;text-transform:capitalize;letter-spacing:.02em}.profile-modal .status-badge.active{background:var(--success-bg);color:var(--success-text)}.profile-modal .status-badge.inactive{background:var(--error-bg);color:var(--error-text)}.profile-modal .status-badge.invited,.profile-modal .status-badge.unknown{background:var(--surface-hover);color:var(--text-secondary)}.profile-modal .profile-tabs{display:flex;position:relative;gap:1.5rem;padding:0 1.5rem;border-bottom:1px solid var(--card-border);background:transparent;overflow-x:auto;overflow-y:hidden;flex-shrink:0}.profile-modal .profile-tabs .tab{flex:0 0 auto;padding:.75rem .125rem;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;font-size:.8125rem;font-weight:600;color:var(--text-secondary);transition:color .2s ease,border-color .2s ease;white-space:nowrap;margin-bottom:-1px;font-family:inherit}.profile-modal .profile-tabs .tab:hover{color:var(--text-primary)}.profile-modal .profile-tabs .tab.active{color:var(--accent-orange);border-bottom-color:var(--accent-orange)}.profile-modal .profile-modal__body{flex:1;overflow-y:auto;overflow-x:hidden;padding:1.25rem 1.5rem;min-height:0;width:100%;background:transparent}.profile-modal .tab-content{display:flex;flex-direction:column;gap:1rem;width:100%;min-height:0}.profile-modal .content-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;width:100%}@media(max-width:1024px){.profile-modal .content-row{grid-template-columns:1fr}}.profile-modal .content-section{background:var(--card-background);border:1px solid var(--card-border);border-radius:12px;padding:1rem 1.125rem;width:100%;box-sizing:border-box;box-shadow:0 1px 3px #0000004d}.profile-modal .content-section.full-width{grid-column:1 / -1}.profile-modal .content-section h3,.profile-modal .section-header h3{margin:0;font-size:.9375rem;font-weight:700;color:var(--text-primary)}.profile-modal .content-section>h3{margin:0 0 .75rem}.profile-modal .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;gap:.5rem}.profile-modal .member-info-compact{padding:1rem 1.125rem}.profile-modal .member-info-compact .info-inline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1.5rem;border-top:1px solid var(--card-border)}.profile-modal .member-info-compact .info-row{display:contents}.profile-modal .member-info-compact .info-row>.info-label,.profile-modal .member-info-compact .info-row>.info-value{padding:.5rem 0;font-size:.8125rem;border-bottom:1px solid var(--card-border);display:flex;align-items:baseline;margin:0}.profile-modal .member-info-compact .info-label{color:var(--text-secondary);font-weight:500;padding-right:.75rem}.profile-modal .member-info-compact .info-value{color:var(--text-primary);font-weight:600;word-break:break-word}.profile-modal .member-info-compact .info-row:last-child>.info-label,.profile-modal .member-info-compact .info-row:last-child>.info-value{border-bottom:none}.profile-modal .profile-form{display:flex;flex-direction:column;gap:.75rem}.profile-modal .form-group{display:flex;flex-direction:column;gap:.25rem}.profile-modal .form-group label{font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.profile-modal .form-group input,.profile-modal .form-group select{padding:.5rem .625rem;background:var(--input-bg);color:var(--text-primary);border:1px solid var(--input-border);border-radius:6px;font-size:.875rem;font-family:inherit}.profile-modal .form-group input:focus,.profile-modal .form-group select:focus{outline:none;border-color:var(--accent-orange);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-orange) 18%,transparent)}.profile-modal .form-actions{display:flex;gap:.5rem;margin-top:.5rem}.profile-modal .metrics-summary-inline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.profile-modal .metric-box{background:var(--card-background);border:1px solid var(--card-border);border-radius:10px;padding:.875rem 1rem;text-align:center}.profile-modal .metric-number{font-size:1.5rem;font-weight:700;color:var(--accent-orange);line-height:1.1;margin-bottom:2px}.profile-modal .metric-name{font-size:.6875rem;color:var(--text-secondary);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.profile-modal .billing-rate-section{background:var(--card-background)}.profile-modal .billing-rate-section h3{color:var(--text-primary)}.profile-modal .billing-rate-display{display:flex;flex-direction:column;gap:.625rem}.profile-modal .rate-value-display{display:flex;align-items:baseline;gap:4px}.profile-modal .rate-amount{font-size:1.75rem;font-weight:700;line-height:1;color:var(--accent-orange)}.profile-modal .rate-period{font-size:.875rem;color:var(--text-secondary);font-weight:500}.profile-modal .rate-info-badge{display:inline-flex;align-items:center;gap:.375rem;padding:4px 10px;border-radius:12px;font-size:.75rem;font-weight:600;width:fit-content}.profile-modal .rate-info-badge.specific-rate{background:var(--success-bg);color:var(--success-text)}.profile-modal .rate-info-badge.default-rate{background:var(--warning-bg);color:var(--warning-text)}.profile-modal .rate-info-badge .badge-icon{font-weight:700}.profile-modal .billing-rate-loading{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:.8125rem;padding:.5rem 0}.profile-modal .loading-spinner-small{width:16px;height:16px;border:2px solid var(--card-border);border-top-color:var(--accent-orange);border-radius:50%;animation:tm-spin .8s linear infinite}@keyframes tm-spin{to{transform:rotate(360deg)}}.profile-modal .billing-rate-not-configured{display:flex;align-items:center;gap:8px;padding:.625rem .875rem;background:var(--error-bg);border:1px solid var(--error-border);border-radius:8px;color:var(--error-text);font-size:.8125rem}.profile-modal .not-configured-icon{font-size:1rem}.profile-modal .rate-note{margin:.625rem 0 0;font-size:.75rem;color:var(--text-tertiary);font-style:italic}.profile-modal .clients-list{display:flex;flex-direction:column;gap:.5rem}.profile-modal .client-item{display:flex;justify-content:space-between;align-items:center;padding:.625rem .75rem;background:var(--card-background);border:1px solid var(--card-border);border-radius:8px;gap:.75rem}.profile-modal .client-info{flex:1;min-width:0}.profile-modal .client-name{font-weight:600;color:var(--text-primary);margin-bottom:1px;font-size:.8125rem}.profile-modal .client-email{font-size:.75rem;color:var(--text-secondary);word-break:break-word}.profile-modal .client-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.profile-modal .view-all-badge{display:flex;align-items:center;gap:8px;padding:.625rem .875rem;background:var(--success-bg);border:1px solid var(--success-border);border-radius:8px;color:var(--success-text);font-size:.8125rem;font-weight:500}.profile-modal .collapsible-section .section-header.clickable{cursor:pointer;-webkit-user-select:none;user-select:none;margin-bottom:0}.profile-modal .collapsible-section.content-section{padding-bottom:.75rem}.profile-modal .section-title-row{display:flex;align-items:center;gap:.5rem}.profile-modal .collapse-icon{font-size:.75rem;color:var(--text-tertiary);transition:transform .2s ease;display:inline-block}.profile-modal .collapse-icon.expanded{transform:rotate(90deg)}.profile-modal .role-badge-inline{display:inline-block;background:var(--chip-orange-bg, color-mix(in srgb, var(--accent-orange) 14%, transparent));color:var(--accent-orange);padding:2px 10px;border-radius:12px;font-size:.6875rem;font-weight:600;letter-spacing:.02em}.profile-modal .collapsible-content{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--card-border);animation:tm-slide-down .18s ease}@keyframes tm-slide-down{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.profile-modal .permissions-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.5rem}.profile-modal .permission-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--card-background);border:1px solid var(--card-border);border-radius:8px;font-size:.8125rem;color:var(--text-primary)}.profile-modal .permission-icon{color:var(--success-color);font-weight:700}.profile-modal .analytics-header,.profile-modal .compensation-header{margin-bottom:.5rem}.profile-modal .analytics-header h3,.profile-modal .compensation-header h3{margin:0;font-size:1rem;font-weight:700;color:var(--text-primary)}.profile-modal .analytics-summary{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.625rem;margin-bottom:1rem}@media(max-width:900px){.profile-modal .analytics-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:540px){.profile-modal .analytics-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}.profile-modal .analytics-card{background:var(--card-background);border:1px solid var(--card-border);color:var(--text-primary);padding:.75rem .875rem;border-radius:10px;text-align:center}.profile-modal .analytics-card .card-value{display:block;font-size:1.5rem;font-weight:700;margin-bottom:2px;color:var(--accent-orange);line-height:1.1}.profile-modal .analytics-card .card-label{display:block;font-size:.6875rem;color:var(--text-secondary);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.profile-modal .chart-section,.profile-modal .analytics-table{background:var(--card-background);border:1px solid var(--card-border);border-radius:12px;padding:1rem;margin-bottom:1rem;width:100%;box-sizing:border-box;box-shadow:0 1px 3px #0000004d}.profile-modal .chart-section h4,.profile-modal .analytics-table h4{margin:0 0 .75rem;font-size:.875rem;font-weight:700;color:var(--text-primary)}.profile-modal .analytics-table table{width:100%;border-collapse:collapse;table-layout:fixed}.profile-modal .analytics-table th{background:var(--surface-secondary);padding:.5rem .625rem;text-align:left;font-weight:600;font-size:.6875rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--card-border)}.profile-modal .analytics-table td{padding:.5rem .625rem;border-bottom:1px solid var(--card-border);font-size:.8125rem;color:var(--text-primary)}.profile-modal .analytics-table tbody tr:hover{background:var(--table-row-hover, var(--surface-hover))}.profile-modal .compensation-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-bottom:1rem}@media(max-width:768px){.profile-modal .compensation-cards{grid-template-columns:1fr}}.profile-modal .comp-card{background:var(--card-background);border:1px solid var(--card-border);border-radius:10px;padding:.875rem 1rem;box-shadow:0 1px 3px #0000004d}.profile-modal .comp-card.highlight{background:var(--card-background);border:1px solid var(--accent-orange);color:var(--text-primary)}.profile-modal .comp-card .card-label{display:block;font-size:.6875rem;color:var(--text-secondary);font-weight:600;text-transform:uppercase;letter-spacing:.04em;margin-bottom:.375rem}.profile-modal .comp-card .card-value{display:block;font-size:1.5rem;font-weight:700;color:var(--text-primary);line-height:1.1}.profile-modal .comp-card.highlight .card-value{color:var(--accent-orange)}.profile-modal .card-detail{font-size:.75rem;color:var(--text-tertiary);margin-top:.25rem}.profile-modal .compensation-settings{background:var(--card-background);border:1px solid var(--card-border);border-radius:12px;padding:1rem 1.125rem;box-shadow:0 1px 3px #0000004d}.profile-modal .settings-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.profile-modal .settings-header h4{margin:0;font-size:.9375rem;font-weight:700;color:var(--text-primary)}.profile-modal .settings-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}@media(max-width:768px){.profile-modal .settings-form{grid-template-columns:1fr}}.profile-modal .input-group{display:flex;align-items:center;background:var(--input-bg);border:1px solid var(--input-border);border-radius:6px;overflow:hidden}.profile-modal .input-group:focus-within{border-color:var(--accent-orange);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-orange) 18%,transparent)}.profile-modal .currency,.profile-modal .unit{padding:.4rem .625rem;background:var(--surface-secondary);color:var(--text-secondary);font-size:.8125rem;font-weight:500}.profile-modal .input-group input{flex:1;border:none;background:transparent;color:var(--text-primary);padding:.4rem .625rem;font-size:.8125rem;outline:none;min-width:0}.profile-modal .settings-display{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.625rem}@media(max-width:768px){.profile-modal .settings-display{grid-template-columns:1fr}}.profile-modal .setting-item{display:flex;flex-direction:column;gap:4px;padding:.625rem .75rem;background:var(--surface-secondary);border:1px solid var(--card-border);border-radius:8px}.profile-modal .setting-label{font-size:.6875rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);font-weight:600}.profile-modal .setting-value{font-weight:700;color:var(--text-primary);font-size:.9375rem}.profile-modal .profile-modal__footer{display:flex;justify-content:space-between;align-items:center;padding:.875rem 1.5rem;border-top:1px solid var(--card-border);background:transparent;flex-shrink:0;gap:.75rem}.profile-modal .footer-actions{display:flex;gap:.5rem}.team-member-profile .loading-state,.team-member-profile .error{text-align:center;padding:3rem 1.5rem}.team-member-profile .error{background:var(--error-bg);color:var(--error-text);border-radius:8px;margin:1rem}.profile-modal .empty-state p{margin:0;font-size:.8125rem;color:var(--text-secondary)}.profile-modal .capitalize{text-transform:capitalize}@media(max-width:768px){.team-member-profile-container{padding:10px}.profile-modal{max-width:100%;max-height:95vh;border-radius:10px}.profile-modal .profile-identity-row{padding:1rem 3rem .875rem 1rem}.profile-modal .profile-tabs{padding:0 1rem;gap:1rem}.profile-modal .profile-modal__body{padding:1rem}.profile-modal .content-row,.profile-modal .member-info-compact .info-inline{grid-template-columns:1fr}.profile-modal .profile-modal__footer{flex-direction:column;align-items:stretch;gap:.5rem;padding:.75rem 1rem}.profile-modal .footer-actions{width:100%}}.team-member-profile-embedded{display:block;background:transparent;padding:0}.profile-modal--embedded{background:transparent;border:none;border-radius:0;box-shadow:none;width:100%;max-width:100%;max-height:none;overflow:visible}.profile-modal--embedded .profile-modal__footer>.btn-secondary,.profile-modal--embedded .profile-modal__footer>[class*=-secondary]{display:none}.profile-modal--embedded .profile-identity-row{flex-wrap:wrap;padding:.75rem 1rem .625rem;border-bottom:1px solid var(--card-border)}.profile-modal--embedded .profile-identity-name{font-size:1rem}.profile-modal--embedded .profile-identity-meta{font-size:.75rem}.profile-modal--embedded .profile-tabs{padding:0 1rem;gap:1.25rem}.profile-modal--embedded .profile-tabs .tab{flex:1;text-align:center;padding:.625rem .25rem;font-size:.8125rem}.profile-modal--embedded .profile-modal__body{background:transparent;padding:.875rem;overflow:visible}.profile-modal--embedded .content-section{padding:.875rem}.profile-modal--embedded .content-section h3,.profile-modal--embedded .section-header h3{font-size:.875rem}.profile-modal--embedded .member-info-compact .info-inline{grid-template-columns:1fr}.profile-modal--embedded .metrics-summary-inline{gap:.5rem}.profile-modal--embedded .metric-box{padding:.625rem .5rem}.profile-modal--embedded .metric-number{font-size:1.25rem}.profile-modal--embedded .profile-modal__footer{border-top:1px solid var(--card-border);padding:.875rem 1rem;background:transparent;flex-direction:column;gap:.5rem}.profile-modal--embedded .profile-modal__footer .footer-actions,.profile-modal--embedded .profile-modal__footer .footer-actions .btn{width:100%}.team-management{padding:0;max-width:min(100%,1400px);margin:0 auto}.team-management .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.team-management .page-header h2{margin:0;font-size:1.75rem;color:var(--text-primary, #1a1a1a)}.team-management .page-header p{margin:.5rem 0 0;color:var(--header-description-color, #666)}.team-management .header-actions{display:flex;gap:1rem}.team-management .filters{background:var(--card-background, #f8f9fa);padding:1.5rem;border-radius:8px;margin-bottom:2rem}.team-management .filters-row{display:grid;grid-template-columns:2fr 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:var(--text-primary, #333);margin-bottom:.5rem}.team-management .filter-group input,.team-management .filter-group select{padding:.625rem;background:var(--input-bg, #ffffff);border:1px solid var(--input-border, #ddd);border-radius:4px;font-size:.875rem;color:var(--text-primary, #1a1a1a)}.team-management .filter-group input:focus,.team-management .filter-group select:focus{outline:none;border-color:var(--input-focus-border, #4a90e2);box-shadow:0 0 0 3px #fe6b3426}.team-management .team-list{background:var(--card-background, white);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:var(--table-header-bg, #f8f9fa);border-bottom:2px solid var(--table-border, #e9ecef)}.team-management .team-table th{padding:1rem;text-align:left;font-size:.875rem;font-weight:600;background:var(--table-header-bg, #f8f9fa);color:var(--text-tertiary, #495057);text-transform:uppercase;letter-spacing:.5px}.team-management .team-table td{padding:1rem;border-bottom:1px solid var(--table-border, #e9ecef);font-size:.875rem;color:var(--text-on-panel, #333)}.team-management .team-table tbody tr{background:var(--card-background, transparent);transition:background-color .2s;cursor:pointer}.team-management .team-table tbody tr:hover{background-color:var(--table-row-hover)}.team-management .member-info{display:flex;flex-direction:column}.team-management .member-name{font-weight:500;color:var(--text-primary, #1a1a1a);margin-bottom:.25rem}.team-management .member-email{color:var(--text-tertiary, #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:var(--success-bg, #d4edda);color:var(--success-text, #155724)}.team-management .status-badge.inactive{background-color:var(--error-bg, #f8d7da);color:var(--error-text, #721c24)}.team-management .status-badge.invited{background-color:var(--warning-bg, #fff3cd);color:var(--warning-text, #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:var(--text-primary, #1a1a1a)}.team-management .metric-label{font-size:.75rem;color:#999}.team-management .empty-state{text-align:center;padding:4rem 2rem;color:var(--text-tertiary, #666)}.team-management .empty-state-icon{font-size:3rem;margin-bottom:1rem;opacity:.3}.team-management .empty-state h3{margin:0 0 .5rem;color:var(--text-primary, #333)}.team-management .empty-state p{margin:0 0 1.5rem}.team-management .loading{text-align:center;padding:3rem;color:var(--text-tertiary, #666)}.team-management .error{background-color:var(--error-bg, #f8d7da);color:var(--error-text, #721c24);padding:1rem;border-radius:4px;margin-bottom:1rem}.team-management .pending-invitations-section{background:var(--warm-tint-bg, #fff7ed);border:1px solid var(--warm-tint-border, #fed7aa);border-radius:12px;padding:20px;margin-bottom:24px}.team-management .pending-invitations-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.team-management .pending-invitations-header h3{color:var(--accent-orange, #fe6b34);margin:0;font-size:16px;font-weight:600;display:flex;align-items:center;gap:8px}.team-management .pending-invitations-header h3:before{content:"✉";font-size:18px}.team-management .pending-invitations-header p{display:none}.team-management .pending-invitations-grid{display:flex;flex-direction:column;gap:12px}.team-management .pending-invitation-card{background:var(--card-background, #ffffff);border:none;border-radius:8px;padding:14px 16px;display:flex;align-items:center;gap:16px}.team-management .pending-invitation-info{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.team-management .pending-invitation-email{font-weight:500;font-size:15px;color:var(--text-primary, #1f2937)}.team-management .pending-invitation-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.team-management .pending-invitation-role{font-size:13px;font-weight:500;color:var(--accent-orange, #fe6b34)}.team-management .pending-invitation-separator{color:var(--text-tertiary, #9ca3af);font-size:12px}.team-management .pending-invitation-date,.team-management .pending-invitation-expires{font-size:13px;color:var(--text-secondary, #6b7280)}.team-management .pending-invitation-actions .btn-sm{padding:6px 14px;font-size:13px;border-radius:6px;border:none;cursor:pointer;font-weight:500;transition:all .2s ease}.team-management .pending-invitation-actions .btn-danger{background:var(--error-bg, #fef2f2);color:var(--error-text, #991b1b)}.team-management .pending-invitation-actions .btn-danger:hover{background:var(--error-color, #ef4444);color:var(--text-inverse, #ffffff)}.modal-content{background:var(--modal-bg, white);border-radius:8px;box-shadow:0 4px 6px #0000001a;max-width:min(100%,600px);width:90%;max-height:90vh;overflow-y:auto;position:relative}@media(max-width:768px){.team-management{padding:1rem}.team-management .page-header{flex-direction:column;align-items:flex-start;gap:1rem}.team-management .filters-row{grid-template-columns:1fr}.team-management .team-table{font-size:.8125rem}.team-management .team-table th,.team-management .team-table td{padding:.75rem .5rem}.team-management .metrics{flex-direction:column;gap:.5rem}.modal-content{width:95%;max-height:95vh}}.team-mobile-list{display:flex;flex-direction:column;gap:8px}.team-mobile-card{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;background:var(--card-background);border:1px solid var(--card-border);border-radius:12px;cursor:pointer;text-align:left;font-family:inherit;color:inherit;transition:background .15s ease,border-color .15s ease}.team-mobile-card:hover,.team-mobile-card:active{border-color:var(--accent-orange-hover);background:var(--surface-hover)}.team-mobile-card__avatar{flex:0 0 auto;width:40px;height:40px;border-radius:999px;background:var(--accent-orange);color:var(--text-inverse, #fff);display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:14px}.team-mobile-card__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.team-mobile-card__name-row{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.team-mobile-card__name{font-size:14px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.team-mobile-card__email{font-size:12px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.team-mobile-card__meta{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-tertiary);flex-wrap:wrap}.team-mobile-card__meta .role-badge{font-size:11px;padding:2px 8px}.team-mobile-card__dot{color:var(--text-tertiary)}.team-mobile-card__chevron{color:var(--text-tertiary);flex:0 0 auto}.team-invitation-modal{width:100%;max-width:min(100%,500px)}.team-invitation-modal .invite-form{margin-bottom:.5rem}.team-invitation-form .form-field{margin-bottom:1rem}.team-invitation-form .form-field input,.team-invitation-form .form-field textarea,.team-invitation-form .form-field select{width:100%;padding:.75rem;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;font-size:1rem;font-family:inherit;background:var(--input-bg, #ffffff);color:var(--text-primary, #1f2937);transition:border-color .2s ease}.team-invitation-form .form-field select{cursor:pointer}.team-invitation-form .form-field input:focus,.team-invitation-form .form-field textarea:focus,.team-invitation-form .form-field select:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.team-invitation-form .form-field input:disabled,.team-invitation-form .form-field textarea:disabled,.team-invitation-form .form-field select:disabled{background:var(--surface-secondary, #f9fafb);color:var(--text-tertiary, #9ca3af);cursor:not-allowed}.team-invitation-form .form-field textarea{resize:vertical;min-height:80px}.team-invitation-form .error-message{display:flex;align-items:center;gap:.5rem;padding:12px 16px;background:var(--error-bg, #fef2f2);border:1px solid var(--error-border, #fecaca);border-radius:6px;color:var(--error-text, #991b1b);font-size:.875rem;font-weight:500;margin-bottom:1rem}.team-page{display:flex;flex-direction:column;gap:24px}.btn-disabled{background-color:#d1d5db;color:#9ca3af;cursor:not-allowed}.btn-disabled:hover{background-color:#d1d5db}.team-page--mobile{padding:12px 14px 88px;gap:14px}.team-page--mobile .team-management .page-header{margin-bottom:0}.team-page--mobile .team-management .page-header h2{font-size:22px}.team-page--mobile .team-management .page-header p{font-size:13px}.role-manager{padding:2rem;max-width:min(100%,1400px);margin:0 auto}.role-manager .header-actions{display:flex;gap:1rem}.role-manager-content{display:grid;grid-template-columns:1fr;gap:2rem}.role-manager-content:has(.role-details){grid-template-columns:1fr 400px}.roles-list{min-height:400px}.role-section{margin-bottom:2rem}.role-section h3{font-size:1.25rem;margin:0 0 1rem;color:var(--text-primary, #333)}.role-cards{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.role-card{background:var(--card-background, white);border:2px solid var(--card-border, #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:var(--accent-orange, #4a90e2);box-shadow:0 2px 8px #0000001a}.role-card.selected{border-color:var(--accent-orange);background:var(--chip-orange-bg)}.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:var(--text-primary, #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:var(--text-tertiary, #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:var(--accent-orange, #4a90e2);margin-bottom:0;font-style:italic}.role-stats{display:flex;gap:1.5rem;padding-top:1rem;border-top:1px solid var(--card-divider, #e0e0e0);margin-top:auto}.role-stat{display:flex;flex-direction:column;align-items:center}.stat-value{font-size:1.25rem;font-weight:600;color:var(--text-primary, #1a1a1a)}.stat-label{font-size:.75rem;color:var(--text-tertiary, #666);text-transform:uppercase;margin-top:.25rem}.role-meta{margin-top:1rem;font-size:.75rem;color:var(--text-muted, #999)}.role-details{background:var(--card-background, white);border:1px solid var(--card-border, #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 var(--card-divider, #e0e0e0)}.details-header h3{margin:0;font-size:1.5rem;color:var(--text-primary, #1a1a1a)}.details-section{margin-bottom:1.5rem}.details-section h4{margin:0 0 .75rem;font-size:1rem;color:var(--text-primary, #333);font-weight:600}.details-section p{margin:0;color:var(--text-tertiary, #666);line-height:1.6}.permissions-grouped{display:flex;flex-direction:column;gap:1rem}.permission-category-title{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary, #6b7280);margin:0 0 .375rem;padding-bottom:.25rem;border-bottom:1px solid var(--border-primary, #e5e7eb)}.permissions-list{display:flex;flex-direction:column;gap:.25rem}.permission-item{display:flex;align-items:center;gap:.5rem;padding:.375rem .5rem;background:var(--bg-secondary, #f5f5f5);border-radius:6px;font-size:.8125rem}.permission-icon{color:var(--success-color, #4caf50);font-weight:700;font-size:.75rem}.permission-name{color:var(--text-primary, #333);word-wrap:break-word;overflow-wrap:break-word;flex:1}.detail-row{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid var(--card-divider, #f0f0f0)}.detail-row:last-child{border-bottom:none}.detail-label{font-weight:500;color:var(--text-secondary, #666)}.empty-state h3{margin:0 0 .5rem;color:var(--text-primary, #333)}.empty-state p{margin:0 0 1.5rem;color:var(--text-tertiary, #666)}.error{background:#ffebee;color:#c62828;padding:1rem;border-radius:4px;margin-bottom:1rem}.loading{text-align:center;padding:3rem;color:#666}@media(max-width:1024px){.role-manager-content{grid-template-columns:1fr}.role-details{position:static;max-height:none}}@media(max-width:768px){.role-manager{padding:1rem}.role-manager .page-header{flex-direction:column;gap:1rem}.role-cards{grid-template-columns:1fr}.role-stats{gap:1rem}}.assigned-members-list{display:flex;flex-direction:column;gap:4px}.assigned-member-item{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;cursor:pointer;transition:background .2s ease}.assigned-member-item:hover{background:var(--surface-hover, #f3f4f6)}.assigned-member-name{font-size:14px;font-weight:500;color:var(--text-primary, #1f2937)}.assigned-member-item:hover .assigned-member-name{color:var(--accent-orange, #f97316)}.assigned-member-email{font-size:12px;color:var(--text-tertiary, #9ca3af)}.no-members-text{color:var(--text-tertiary, #9ca3af);font-size:14px}.role-form{max-width:min(100%,1100px);margin:0 auto;padding:2rem;background:var(--card-background, #fff);border-radius:12px}.form-header{margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid var(--border-primary, #e5e7eb)}.form-header h2{margin:0 0 .5rem;font-size:1.75rem;color:var(--text-primary, #1f2937)}.form-header p{margin:0;color:var(--header-description-color, #6b7280)}.form-section{margin-bottom:2rem;padding-top:.5rem}.form-section h3{margin:0 0 1.25rem;font-size:1.25rem;color:var(--text-primary, #1f2937)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.section-header h3{margin:0}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary, #1f2937)}.form-group input[type=text],.form-group textarea,.form-group select{width:100%;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;font-size:1rem;font-family:inherit;background:var(--input-bg, #fff);color:var(--text-primary, #1f2937);transition:border-color .2s ease}.form-group input[type=text]:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--border-focus, #f97316)}.form-group textarea{resize:vertical}.form-group small{display:block;margin-top:.5rem;color:var(--text-tertiary, #9ca3af);font-size:.875rem}.template-buttons{display:flex;flex-wrap:wrap;gap:.75rem}.btn-small{padding:.5rem 1rem;font-size:.875rem}.permissions-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.permission-category{border:1px solid var(--card-border, var(--border-primary, #e5e7eb));border-radius:10px;background:var(--bg-secondary, #f9fafb);overflow:hidden}.category-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s ease}.category-header:hover{background:var(--surface-hover, #f3f4f6)}.category-title{display:flex;align-items:center;gap:8px}.category-chevron{display:flex;align-items:center;color:var(--text-tertiary, #9ca3af);transition:transform .2s ease}.category-chevron.expanded{transform:rotate(90deg)}.category-title h4{margin:0;font-size:14px;font-weight:600;color:var(--text-primary, #1f2937)}.category-count{font-size:12px;font-weight:500;color:var(--text-tertiary, #9ca3af);background:var(--card-background, #fff);padding:2px 8px;border-radius:10px;border:1px solid var(--border-primary, #e5e7eb)}.category-count.has-selected{color:var(--accent-orange, #f97316);border-color:var(--accent-orange, #f97316);background:var(--chip-orange-bg, #fff7ed)}.category-actions{display:flex;align-items:center}.permission-list{display:grid;grid-template-columns:1fr;gap:0;padding:0 8px 8px}.permission-checkbox{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:6px;cursor:pointer;transition:background .15s ease}.permission-checkbox:hover{background:var(--surface-hover, #f3f4f6)}.permission-checkbox input[type=checkbox]{cursor:pointer;width:16px;height:16px;flex-shrink:0;accent-color:var(--accent-orange, #f97316)}.permission-info{flex:1;min-width:0}.permission-name{font-size:13px;font-weight:500;color:var(--text-primary, #1f2937)}.permission-description{font-size:12px;color:var(--text-tertiary, #9ca3af);line-height:1.4}.permission-note{margin-top:2px;font-size:11px;color:var(--warning-color, #f59e0b);font-style:italic}.form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2rem;padding-top:2rem;border-top:2px solid var(--border-primary, #e5e7eb)}.btn-link{background:none;color:var(--accent-orange, #f97316);padding:.5rem 1rem;text-decoration:none}.btn-link:hover:not(:disabled){text-decoration:underline}.error{background:var(--error-bg, #fef2f2);color:var(--error-text, #991b1b);padding:1rem;border-radius:8px;margin-bottom:1rem;border:1px solid var(--error-border, #fecaca)}@media(max-width:768px){.role-form{padding:1rem}.permissions-grid{grid-template-columns:1fr}.form-header h2{font-size:1.5rem}.section-header{flex-direction:column;align-items:flex-start;gap:.5rem}.template-buttons{flex-direction:column}.template-buttons .btn{width:100%}.form-actions{flex-direction:column-reverse}.form-actions .btn{width:100%}}.role-form-header{display:flex;align-items:flex-start;gap:.5rem}.role-form-back-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;margin-top:2px;padding:0;background:transparent;border:1px solid var(--card-border, var(--border-primary));border-radius:8px;color:var(--text-primary);cursor:pointer;flex-shrink:0;transition:border-color .15s ease,background .15s ease}.role-form-back-btn:hover,.role-form-back-btn:focus-visible{outline:none;border-color:var(--accent-orange);color:var(--accent-orange);background:var(--surface-hover)}.role-form-header-text{flex:1;min-width:0}.role-manager-page{width:100%;height:100%}.role-manager-page--mobile{padding:12px 12px 88px}.usage-subscription{max-width:800px}.usage-subscription.error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:1rem}.usage-subscription .loading-spinner{width:32px;height:32px;border:3px solid var(--border-primary, #e5e7eb);border-top-color:var(--accent-orange, #f97316);border-radius:50%;animation:spin 1s linear infinite}@keyframes usage-subscription-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.usage-subscription .skeleton-block{border-radius:4px;background:linear-gradient(90deg,var(--surface-hover) 25%,rgba(255,255,255,.15) 50%,var(--surface-hover) 75%);background-size:200% 100%;animation:usage-subscription-skeleton-shimmer 1.4s ease-in-out infinite}.success-banner,.error-banner{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;font-size:.9rem}.success-banner{background:var(--success-bg, #d4edda);color:var(--success-text, #155724);border:1px solid var(--success-border, #c3e6cb)}.error-banner{background:var(--error-bg, #f8d7da);color:var(--error-text, #721c24);border:1px solid var(--error-border, #f5c6cb)}.error-banner button{background:none;border:none;font-size:1.2rem;cursor:pointer;color:inherit;padding:0;line-height:1}.trial-activation-banner{background:var(--warning-bg, #fef3c7);border:1px solid var(--warning-border, #fcd34d);border-radius:12px;padding:20px 24px;margin-bottom:16px}.beta-activation-banner{background:var(--info-bg, #fff7ed);border:1px solid var(--info-border, #fed7aa);border-radius:12px;padding:20px 24px;margin-bottom:16px}.beta-activation-banner .trial-banner-text h4,.beta-activation-banner .trial-banner-text p{color:var(--info-text, #9a3412)}.trial-banner-content{display:flex;align-items:center;justify-content:space-between;gap:20px}.trial-banner-text h4{margin:0 0 4px;font-size:1rem;font-weight:600;color:var(--warning-text, #92400e)}.trial-banner-text p{margin:0;font-size:.875rem;color:var(--warning-text, #92400e);line-height:1.4}.activate-btn{white-space:nowrap;flex-shrink:0;padding:10px 24px;font-weight:600}@media(max-width:600px){.trial-banner-content{flex-direction:column;align-items:stretch}.activate-btn{text-align:center}}.plan-summary{background:var(--card-background);color:var(--text-primary);border:1px solid var(--card-border);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.plan-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.plan-title{display:flex;align-items:center;gap:.75rem}.plan-title h3{margin:0;font-size:1.25rem;color:var(--text-primary)}.status-badge{padding:2px 8px;border-radius:12px;font-size:12px;font-weight:600;text-transform:capitalize}.status-badge.active{background:var(--success-bg);color:var(--success-text)}.status-badge.trialing{background:var(--warning-bg, #fef3c7);color:var(--warning-text, #92400e)}.status-badge.beta{background:var(--info-bg, #fff7ed);color:var(--info-text, #9a3412);font-weight:700;letter-spacing:.03em}.status-badge.past_due{background:var(--error-bg, #fee2e2);color:var(--error-text, #991b1b)}.status-badge.suspended{background:var(--chip-orange-bg, #fdf2e9);color:var(--accent-orange, #f4a261);font-weight:700;letter-spacing:.03em}.suspended-warning{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;border-radius:10px;margin-bottom:1.5rem;background:var(--chip-orange-bg, #fdf2e9);border:1px solid var(--accent-orange, #f4a261);color:var(--text-primary, #1a1a1a)}.suspended-warning-icon{font-size:1.5rem;flex-shrink:0}.suspended-warning-content{display:flex;flex-direction:column;gap:.15rem}.suspended-warning-title{font-weight:700;font-size:.95rem;color:var(--accent-orange-hover, #e79552)}.suspended-warning-text{font-size:.85rem;color:var(--text-secondary, #666)}.plan-price{text-align:right}.plan-summary .plan-price{color:inherit;margin-bottom:0}.price-amount{font-size:2rem;font-weight:700;color:var(--accent-orange)}.price-period{font-size:.9rem;color:var(--text-secondary)}.plan-details{display:flex;gap:2rem;padding-top:1rem;border-top:1px solid var(--card-border)}.detail-item{display:flex;flex-direction:column;gap:.25rem}.plan-summary .detail-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-tertiary)}.plan-summary .detail-value{font-weight:600;color:var(--text-primary)}.resource-calculator{background:var(--card-background, #ffffff);border:1px solid var(--card-border, #e5e7eb);border-radius:14px;padding:1.25rem;margin-bottom:1.5rem;box-shadow:0 1px 3px #0000004d}.calculator-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem}.calculator-header h4{margin:0;font-size:1rem;font-weight:600;color:var(--text-primary, #1f2937)}.resource-row.resource-row-header{display:none}.resource-header-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary, #666)}.resource-row{display:grid;grid-template-columns:1fr auto;grid-template-areas:"info  info" "qty   price";gap:.875rem .75rem;padding:.875rem 1rem;margin-bottom:.625rem;background:var(--bg-secondary);border:1px solid var(--card-border, var(--border-primary));border-radius:12px}.resource-row:last-of-type{margin-bottom:0}.resource-info{grid-area:info;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.875rem;min-width:0}.resource-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--accent-orange) 14%,transparent);border-radius:10px;font-size:1.25rem;flex-shrink:0}.resource-details{display:flex;flex-direction:column;gap:.125rem;min-width:0}.resource-name{font-weight:700;font-size:.9375rem;color:var(--text-primary)}.resource-description{font-size:.8125rem;color:var(--text-tertiary);line-height:1.4}.resource-control{grid-area:qty;display:flex;flex-direction:column;gap:2px;min-width:0;text-align:left}.resource-control:before{content:"Qty";font-size:.625rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary)}.resource-price{grid-area:price;display:flex;flex-direction:column;align-items:flex-end;gap:2px;min-width:0;text-align:right;font-weight:700;color:var(--text-primary)}.resource-price:before{content:"Cost";font-size:.625rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary)}.resource-value{font-weight:700;font-size:1rem;color:var(--text-primary, #1f2937)}.quantity-control{display:flex;align-items:center;gap:.5rem;background:var(--bg-secondary, #f9fafb);border-radius:8px;padding:.25rem}.qty-btn{width:32px;height:32px;border:none;background:var(--card-background, #ffffff);color:var(--text-primary, #1f2937);border-radius:6px;font-size:1.2rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.qty-btn:hover:not(:disabled){background:var(--accent-orange, #f97316);color:var(--text-inverse, #ffffff)}.qty-btn:disabled{opacity:.5;cursor:not-allowed}.qty-value{min-width:40px;text-align:center;font-weight:600;color:var(--text-primary, #1f2937)}.included-resources{display:flex;flex-wrap:wrap;gap:.5rem 1rem;padding:.625rem .875rem;margin:.25rem 0 .625rem;background:transparent;border:1px dashed var(--card-border, var(--border-primary));border-radius:10px;font-size:.8125rem;color:var(--text-secondary)}.included-item{display:flex;gap:.375rem;align-items:baseline}.included-label{color:var(--text-tertiary);font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.included-value{font-weight:600;color:var(--text-primary)}.calculator-total{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--card-border, var(--border-primary))}.total-row{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}.total-label{font-size:.9375rem;font-weight:600;color:var(--text-secondary)}.total-value{font-size:1.625rem;font-weight:700;color:var(--accent-orange, #f97316);white-space:nowrap}.price-change{text-align:right;margin-top:.5rem}.price-change .increase{color:var(--error-color, #dc2626)}.price-change .decrease{color:var(--success-color, #16a34a)}.calculator-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border-primary, #e5e7eb)}.current-usage{background:var(--card-background, #ffffff);border:1px solid var(--card-border, #e5e7eb);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 1px 3px #0000004d}.current-usage h4{margin:0 0 1rem;font-size:1.1rem;color:var(--text-primary, #1f2937)}.usage-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.usage-item{display:flex;flex-direction:column;gap:.5rem}.usage-header{display:flex;justify-content:space-between;font-size:.9rem}.usage-label{color:var(--text-secondary, #6b7280)}.usage-value{font-weight:600;color:var(--text-primary, #1f2937)}.usage-bar{height:8px;background:var(--bg-secondary, #f9fafb);border-radius:4px;overflow:hidden}.usage-fill{height:100%;background:var(--accent-orange, #f97316);border-radius:4px;transition:width .3s ease}.features-included{background:var(--card-background, #ffffff);border:1px solid var(--card-border, #e5e7eb);border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000004d}.features-included h4{margin:0 0 1rem;font-size:1.1rem;color:var(--text-primary, #1f2937)}.features-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.feature-item{font-size:.9rem;color:var(--text-secondary, #6b7280)}.feature-item:before{color:var(--success-color, #16a34a)}.no-subscription{text-align:center;padding:3rem}.no-subscription h3{margin-bottom:.5rem;color:var(--text-primary, #1f2937)}.no-subscription p{color:var(--text-secondary, #6b7280)}@media(max-width:768px){.plan-header{flex-direction:column;gap:1rem}.plan-price{text-align:left}.resource-calculator{padding:1rem}.calculator-header{flex-direction:column;align-items:stretch;gap:.5rem}.calculator-header .btn{width:100%}.resource-row{padding:.75rem .875rem;gap:.625rem}.resource-icon{width:36px;height:36px;font-size:1.125rem;border-radius:8px}.resource-name{font-size:.875rem}.resource-description{font-size:.75rem}.total-value{font-size:1.375rem}.included-resources{flex-direction:column;gap:.375rem}.usage-grid,.features-grid{grid-template-columns:1fr}}.subscription-usage{background:var(--card-background);border:1px solid var(--card-border);border-radius:12px;padding:1.25rem;box-shadow:0 1px 3px #0000004d}.usage-header{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin-bottom:1rem}.subscription-usage h3{margin:0;font-size:1rem;font-weight:600;color:var(--text-primary, #1f2937)}.usage-description{color:var(--text-tertiary, #9ca3af);font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.usage-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media(max-width:768px){.subscription-usage{padding:.875rem}.usage-metrics{grid-template-columns:1fr 1fr 1fr;gap:8px}.usage-metric{padding:.625rem;gap:.25rem;align-items:flex-start;min-width:0}.metric-top{gap:.375rem;width:100%;min-width:0}.metric-icon{width:22px;height:22px;flex-shrink:0}.metric-icon svg{width:14px;height:14px}.metric-label{font-size:.625rem;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.metric-value-row{flex-direction:column;align-items:flex-start;gap:0;width:100%}.metric-used{font-size:1.125rem;line-height:1.1}.metric-limit{font-size:.6875rem;line-height:1.2}.metric-progress{gap:.375rem;width:100%}.progress-bar{height:4px}.metric-percentage{font-size:.625rem;min-width:24px}}@media(max-width:380px){.usage-metrics{gap:6px}.usage-metric{padding:.5rem}.metric-used{font-size:1rem}}.usage-metric{display:flex;flex-direction:column;gap:.5rem;padding:.875rem 1rem;background:var(--bg-secondary);border:1px solid var(--card-border, var(--border-primary));border-radius:10px;min-width:0}.metric-top{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary)}.metric-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;background:color-mix(in srgb,var(--accent-orange) 14%,transparent);color:var(--accent-orange)}.metric-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary)}.metric-value-row{display:flex;align-items:baseline;gap:.375rem;min-width:0}.metric-used{font-size:1.5rem;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.metric-limit{font-size:.875rem;color:var(--text-tertiary);font-weight:500;white-space:nowrap}.metric-progress{display:flex;align-items:center;gap:.625rem}.progress-bar{flex:1;height:6px;background-color:color-mix(in srgb,var(--text-primary) 8%,transparent);border-radius:999px;overflow:hidden}.progress-fill{height:100%;transition:width .3s ease,background-color .3s ease;border-radius:999px}.metric-percentage{font-size:.75rem;font-weight:600;min-width:32px;text-align:right}.usage-warning{margin-top:16px;padding:12px;background-color:var(--warning-bg, #fef3c7);border:1px solid var(--warning-border, #fcd34d);border-radius:6px}.usage-warning strong{display:block;margin-bottom:4px;color:var(--warning-text, #92400e);font-size:13px}.usage-warning p{margin:0;color:var(--warning-text, #92400e);font-size:12px}.subscription-usage .loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 16px;gap:12px}.subscription-usage .error{padding:16px;text-align:center;color:var(--error-color, #dc2626);font-size:13px}.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:var(--accent-orange, #f97316);font-size:1rem;cursor:pointer;padding:.5rem 0}.back-btn:hover{color:var(--accent-orange-hover, #ea580c)}.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:var(--text-primary, #1f2937);margin-bottom:.5rem}.support-header p{font-size:1.1rem;color:var(--text-secondary, #6b7280)}.success-banner{display:flex;align-items:flex-start;gap:1rem;background:var(--success-bg);border:1px solid var(--success-border);border-radius:.5rem;padding:1rem;margin-bottom:2rem}.success-icon{font-size:1.5rem}.success-banner strong{color:var(--success-color)}.success-banner p{color:var(--success-color);margin:.25rem 0 0}.close-btn{background:none;border:none;font-size:1.5rem;color:var(--text-secondary, #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:var(--card-background, #ffffff);border:1px solid transparent;border-radius:12px;padding:2rem;cursor:pointer;transition:all .2s ease;text-align:center;box-shadow:0 1px 3px #0000004d}.support-card:hover{border-color:var(--accent-orange-hover, #ea580c);transform:translateY(-2px)}.card-icon{font-size:3rem;margin-bottom:1rem}.support-card h3{font-size:1.25rem;color:var(--text-primary, #1f2937);margin-bottom:.5rem}.support-card p{color:var(--text-secondary, #6b7280);margin-bottom:1rem}.card-action{color:var(--accent-orange, #f97316);font-weight:500}.quick-help{background:var(--surface-secondary, #f9fafb);border-radius:.75rem;padding:2rem}.quick-help h3{color:var(--text-primary, #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:var(--card-background, #ffffff);border:1px solid transparent;border-radius:8px;padding:1.5rem;cursor:pointer;transition:all .2s ease;text-decoration:none;display:block}.help-item:hover{border-color:var(--chip-orange-bg, #fff7ed);box-shadow:0 2px 8px #00000014}.help-item h4{color:var(--text-primary, #1f2937);margin-bottom:.5rem}.help-item p{color:var(--text-secondary, #6b7280);font-size:.9rem;margin:0}.support-form-container{max-width:600px;margin:0 auto}.support-form-header{text-align:center;margin-bottom:2rem}.support-form-header h2{color:var(--text-primary, #1f2937);margin-bottom:.5rem}.support-form-header p{color:var(--header-description-color, #6b7280)}.support-form{background:var(--card-background, #ffffff);border:1px solid var(--card-border, transparent);border-radius:12px;padding:2rem;box-shadow:0 1px 3px #0000004d}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group label{display:block;font-weight:500;color:var(--text-primary, #374151);margin-bottom:.5rem}.form-control{width:100%;padding:.75rem;border:1px solid var(--border-primary, #d1d5db);border-radius:6px;font-size:1rem;transition:border-color .2s ease;background:var(--input-bg, #ffffff);color:var(--text-primary, #1f2937)}.form-control:focus{outline:none;border-color:var(--border-focus, #f97316);box-shadow:0 0 0 3px #fe6b3426}.form-control.error{border-color:var(--error-color, #ef4444)}.error-message{color:var(--error-color, #ef4444);font-size:.875rem;margin-top:.25rem;display:block}.character-count{color:var(--text-secondary, #6b7280);font-size:.875rem;margin-top:.25rem;display:block}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.support-form-container .btn-primary{background-color:var(--accent-orange, #f4a261);border-color:var(--accent-orange, #f4a261)}.support-form-container .btn-primary:hover:not(:disabled){background-color:var(--accent-orange-hover, #e79552);border-color:var(--accent-orange-hover, #e79552)}.knowledge-base{display:flex;flex-direction:column;gap:2rem}.knowledge-base-header{text-align:center}.knowledge-base-header h2{color:var(--text-primary, #1f2937);margin-bottom:.5rem}.knowledge-base-header p{color:var(--text-secondary, #6b7280)}.search-section{max-width:500px;margin:0 auto}.search-form{display:flex}.search-input-group{display:flex;width:100%;border:1px solid var(--border-primary, #d1d5db);border-radius:8px;overflow:hidden}.search-input{flex:1;padding:.75rem 1rem;border:none;font-size:1rem;background:var(--input-bg, #ffffff);color:var(--text-primary, #1f2937)}.search-input:focus{outline:none}.search-btn{background:var(--accent-orange, #f97316);color:var(--text-inverse, #ffffff);border:none;padding:.75rem 1rem;cursor:pointer;transition:background .2s ease}.search-btn:hover{background:var(--accent-orange-hover, #ea580c)}.knowledge-content{display:grid;grid-template-columns:250px 1fr;gap:2rem}.categories-sidebar{background:var(--surface-secondary, #f9fafb);border-radius:12px;padding:1.5rem;height:fit-content}.categories-sidebar h3{color:var(--text-primary, #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:6px;cursor:pointer;text-align:left;transition:background-color .2s ease;width:100%;color:var(--text-secondary, #6b7280)}.category-item:hover{background:var(--surface-hover, #f3f4f6);color:var(--text-primary, #1f2937)}.category-item.active{background:var(--accent-orange, #f97316);color:var(--text-inverse, #ffffff)}.category-icon{font-size:1.2rem}.clear-filters-btn{margin-top:1rem;padding:.5rem 1rem;background:var(--error-color, #ef4444);color:var(--text-inverse, #ffffff);border:none;border-radius:6px;cursor:pointer;width:100%;transition:background .2s ease}.clear-filters-btn:hover{background:var(--error-bg, #dc2626)}.articles-main{min-height:400px}.support-container .spinner{margin-bottom:1rem}.empty-state h3{color:var(--text-primary, #1f2937);margin-bottom:.5rem}.empty-state p{color:var(--text-secondary, #6b7280)}.articles-grid{display:grid;gap:1.5rem}.article-card{background:var(--card-background, #ffffff);border:1px solid transparent;border-radius:12px;padding:1.5rem;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 3px #0000004d}.article-card:hover{border-color:var(--accent-orange-hover, #ea580c)}.article-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.article-title{color:var(--text-primary, #1f2937);margin:0;flex:1}.article-category{background:var(--surface-secondary, #f3f4f6);color:var(--text-secondary, #6b7280);padding:.25rem .75rem;border-radius:12px;font-size:.875rem;margin-left:1rem}.article-summary{color:var(--text-secondary, #6b7280);margin-bottom:1rem;line-height:1.5}.article-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.tag{background:var(--chip-orange-bg, #fff7ed);color:var(--accent-orange, #f97316);padding:.25rem .5rem;border-radius:4px;font-size:.75rem}.article-meta{display:flex;gap:1rem;font-size:.875rem;color:var(--text-secondary, #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:var(--text-primary, #1f2937);margin-bottom:.5rem}.tickets-header p{color:var(--text-secondary, #6b7280)}.empty-state .empty-icon{font-size:4rem;margin-bottom:1rem}.tickets-list{display:flex;flex-direction:column;gap:1rem}.ticket-card{background:var(--card-background, #ffffff);border:1px solid transparent;border-radius:12px;padding:1.5rem;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 3px #0000004d}.ticket-card:hover{border-color:var(--accent-orange-hover, #ea580c)}.ticket-card.selected{border-color:var(--accent-orange, #f97316)}.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:var(--text-primary, #1f2937);margin:0}.ticket-id{background:var(--surface-secondary, #f3f4f6);color:var(--text-secondary, #6b7280);padding:.25rem .5rem;border-radius:4px;font-size:.875rem;font-family:monospace}.ticket-badges{display:flex;gap:.5rem}.status-badge,.priority-badge{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:500;text-transform:capitalize}.ticket-meta{display:flex;gap:1rem;font-size:.875rem;color:var(--text-secondary, #6b7280);text-transform:capitalize}.ticket-details{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-primary, #e5e7eb)}.ticket-description h4{color:var(--text-primary, #1f2937);margin-bottom:.5rem}.ticket-description p{color:var(--text-secondary, #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}}.confirm-dialog__message,.prompt-dialog__message{color:var(--text-primary, #1f2937);font-size:14px;line-height:1.5;margin-bottom:16px}.confirm-dialog__actions,.prompt-dialog__actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.prompt-dialog__label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:500;color:var(--text-secondary, #4b5563);margin-bottom:16px}.prompt-dialog__input{width:100%;padding:8px 12px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;background:var(--input-bg, var(--surface-primary, #ffffff));color:var(--text-primary, #1f2937);font-size:14px;font-family:inherit;box-sizing:border-box;transition:border-color .2s ease}.prompt-dialog__input:focus{outline:none;border-color:var(--border-focus, var(--accent-orange, #e86a47));box-shadow:0 0 0 3px var(--chip-orange-bg, rgba(232, 106, 71, .15))}textarea.prompt-dialog__input{resize:vertical;min-height:80px}.snackbar{display:flex;align-items:center;min-width:344px;max-width:672px;padding:12px 16px;border-radius:8px;box-shadow:0 4px 12px #00000026;background-color:#323232;color:#fff;font-size:14px;line-height:1.5;transition:all .3s cubic-bezier(.4,0,.2,1)}.snackbar-visible{opacity:1;transform:translateY(0)}.snackbar-hidden{opacity:0;transform:translateY(20px);pointer-events:none}.snackbar-info{background-color:#2196f3}.snackbar-success{background-color:#4caf50}.snackbar-warning{background-color:#ff9800}.snackbar-error{background-color:#f44336}.snackbar-content{display:flex;align-items:center;gap:12px;width:100%}.snackbar-icon-container{flex-shrink:0;display:flex;align-items:center;justify-content:center}.snackbar-icon{width:24px;height:24px;color:#fff}.snackbar-message{flex:1;word-wrap:break-word}.snackbar-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.snackbar-action-button{padding:6px 12px;background-color:#ffffff1a;border:1px solid rgba(255,255,255,.3);border-radius:4px;color:#fff;font-size:13px;font-weight:500;cursor:pointer;transition:background-color .2s}.snackbar-action-button:hover{background-color:#fff3}.snackbar-action-button:focus{outline:2px solid rgba(255,255,255,.5);outline-offset:2px}.snackbar-close-button{padding:4px;background:none;border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.snackbar-close-button:hover{background-color:#ffffff1a}.snackbar-close-button:focus{outline:2px solid rgba(255,255,255,.5);outline-offset:2px}.snackbar-close-button svg{width:20px;height:20px}@keyframes wiggle{0%,to{transform:rotate(0)}20%{transform:rotate(-12deg)}40%{transform:rotate(10deg)}60%{transform:rotate(-8deg)}80%{transform:rotate(6deg)}}.snackbar-close-button:hover svg,.snackbar-close-button:focus svg{animation:wiggle .5s ease-in-out}@media(prefers-contrast:high){.snackbar{border:2px solid #ffffff}}@media(prefers-reduced-motion:reduce){.snackbar{transition:none}.snackbar-close-button:hover svg,.snackbar-close-button:focus svg{animation:none}}@media(max-width:768px){.snackbar{min-width:unset;max-width:unset;width:calc(100vw - 32px);font-size:13px}.snackbar-action-button{font-size:12px;padding:4px 8px}.snackbar-icon{width:20px;height:20px}}@media(min-width:769px)and (max-width:1024px){.snackbar{min-width:300px;max-width:500px}}.snackbar-container{position:fixed;bottom:24px;left:24px;z-index:9999;pointer-events:none}.snackbar-container>*{pointer-events:auto}@media(max-width:768px){.snackbar-container{bottom:16px;left:16px;right:16px}}.messenger-widget-button{position:fixed;bottom:24px;right:24px;height:52px;padding:8px 16px 8px 14px;border-radius:999px;background:var(--card-background);border:1px solid var(--card-border);color:var(--text-primary);cursor:pointer;box-shadow:0 8px 24px #00000047,0 2px 6px #0003;display:inline-flex;align-items:center;gap:12px;transition:transform .15s ease,box-shadow .15s ease,background .15s ease;z-index:90}.messenger-widget-button:hover{transform:translateY(-1px);box-shadow:0 12px 28px #00000052,0 4px 8px #00000038}.messenger-widget-button:active{transform:translateY(0)}.messenger-widget-button:focus-visible{outline:2px solid var(--accent-orange);outline-offset:2px}.messenger-widget-icon-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0}.messenger-widget-icon-wrap>svg{color:var(--text-primary)}.messenger-widget-label{font-size:15px;font-weight:600;white-space:nowrap;color:var(--text-primary);line-height:1}.messenger-widget-badge{position:absolute;top:-2px;right:-4px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--accent-orange, #FE6B34);color:var(--text-inverse, #ffffff);font-size:10px;font-weight:700;line-height:1;display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--card-background);box-shadow:0 1px 3px #00000040}.messenger-widget-divider{width:1px;height:24px;background:var(--border-primary);flex-shrink:0}.messenger-widget-chevron{color:var(--text-secondary);flex-shrink:0}.messenger-connection-indicator{width:8px;height:8px;border-radius:50%;margin-left:4px}.messenger-connection-indicator.messenger-disconnected{background:#ef4444}.messenger-connection-indicator.messenger-connecting{background:#f59e0b;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.messenger-widget{width:400px;height:620px;max-height:calc(100vh - 48px);background:var(--card-background);border:1px solid var(--card-border);border-radius:16px;box-shadow:0 16px 48px #0006,0 4px 12px #00000040;display:flex;flex-direction:column;overflow:hidden;z-index:91;transition:box-shadow .2s ease}.messenger-widget.dragging{box-shadow:0 24px 64px #00000080,0 6px 16px #0000004d;cursor:grabbing}.messenger-widget-content{flex:1;overflow:hidden;display:flex;flex-direction:column;min-height:0}@media(max-width:768px){.messenger-widget{width:100vw;height:100vh;border-radius:0;right:0!important;bottom:0!important}.messenger-widget-button{right:16px;bottom:16px;height:48px;padding:6px 14px 6px 12px;gap:10px}.messenger-widget-icon-wrap{width:32px;height:32px}.messenger-widget-label{font-size:14px}.messenger-widget-divider{height:22px}}.messenger-widget:focus-within{outline:2px solid var(--accent-orange);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:var(--body-background);min-height:0}.contact-list-header{display:flex;align-items:center;gap:8px;padding:14px;border-bottom:1px solid var(--card-border);background:var(--card-background);cursor:grab;-webkit-user-select:none;user-select:none;flex-shrink:0}.contact-list-header:active{cursor:grabbing}.contact-list-title{margin:0;font-size:17px;font-weight:700;color:var(--text-primary);flex:1;letter-spacing:-.01em}.contact-list-header-actions{display:inline-flex;align-items:center;gap:2px}.contact-list-action-btn{background:none;border:none;color:var(--text-secondary);width:32px;height:32px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s ease,color .15s ease}.contact-list-action-btn:hover{background:var(--surface-hover, var(--surface-secondary));color:var(--text-primary)}.contact-list-action-btn:focus-visible{outline:2px solid var(--accent-orange);outline-offset:1px}.contact-list-search{padding:10px 14px;display:flex;align-items:center;gap:8px;position:relative;background:var(--body-background);flex-shrink:0}.contact-list-search>.search-icon,.contact-list-search .search-icon{position:absolute;left:24px;color:var(--text-tertiary);pointer-events:none}.contact-search-input{flex:1;border:1px solid var(--card-border);outline:none;font-size:13px;color:var(--text-primary);background:var(--surface-secondary);padding:8px 30px 8px 32px;border-radius:999px;width:100%;transition:border-color .15s ease,box-shadow .15s ease}.contact-search-input:focus{border-color:var(--accent-orange);box-shadow:0 0 0 2px #fe6b3426}.contact-search-input::placeholder{color:var(--text-tertiary)}.search-clear-button{position:absolute;right:22px;background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:4px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;transition:background .15s ease,color .15s ease}.search-clear-button:hover{background:var(--card-border);color:var(--text-primary)}.contact-list-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:4px 0 12px}.contact-section{margin-bottom:4px}.contact-section-title{font-size:11px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.08em;padding:12px 16px 6px;margin:0}.contact-list{display:flex;flex-direction:column}.contact-item{display:flex;align-items:center;gap:12px;padding:10px 14px;background:transparent;border:none;cursor:pointer;text-align:left;transition:background .15s ease;width:100%;border-radius:10px;margin:1px 6px;width:calc(100% - 12px)}.contact-item:hover{background:var(--surface-hover, var(--surface-secondary))}.contact-item:active{background:var(--card-border)}.contact-avatar{position:relative;width:44px;height:44px;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:var(--surface-secondary);color:var(--text-primary);display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700}.contact-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.contact-header{display:flex;justify-content:space-between;align-items:center;gap:8px}.contact-name{font-size:14px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contact-time{font-size:11px;color:var(--text-tertiary);flex-shrink:0}.contact-preview{font-size:12.5px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contact-unread-badge{background:var(--accent-orange);color:var(--text-inverse, #ffffff);border-radius:999px;padding:2px 7px;font-size:11px;font-weight:700;min-width:18px;text-align:center;flex-shrink:0;line-height:1.3}.contact-item-unread .contact-name{font-weight:700;color:var(--text-primary)}.contact-item-unread .contact-preview{font-weight:600;color:var(--text-primary)}.contact-item-unread .contact-time{font-weight:600;color:var(--accent-orange)}.contact-list-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:16px;color:var(--text-secondary)}.contact-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:12px;padding:32px;text-align:center;color:var(--text-secondary)}.contact-list-empty svg{color:var(--text-tertiary);opacity:.5}.contact-list-empty p{font-size:15px;font-weight:600;color:var(--text-primary);margin:0}.contact-list-empty span{font-size:13px;color:var(--text-tertiary)}.contact-list-content::-webkit-scrollbar{width:6px}.contact-list-content::-webkit-scrollbar-track{background:transparent}.contact-list-content::-webkit-scrollbar-thumb{background:var(--card-border);border-radius:3px}.contact-list-content::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.contact-item:focus-visible{outline:2px solid var(--accent-orange);outline-offset:-2px}@media(prefers-reduced-motion:reduce){.contact-item{transition:none}}.new-message-picker{display:flex;flex-direction:column;flex:1;overflow:hidden;background:var(--body-background)}.new-message-picker-header{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--card-border)}.new-message-back-button{display:inline-flex;align-items:center;justify-content:center;background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:6px;border-radius:6px;transition:background .15s ease,color .15s ease}.new-message-back-button:hover{background:var(--surface-secondary);color:var(--text-primary)}.new-message-picker-title{font-size:15px;font-weight:700;color:var(--text-primary)}.new-message-picker-search{padding:10px 14px}.new-message-picker-list{flex:1;overflow-y:auto;padding:4px 0 12px}.new-message-picker-empty{display:flex;align-items:center;justify-content:center;padding:32px;color:var(--text-tertiary);font-size:13px}.new-message-picker-empty p{margin:0}.message-thread-container{display:flex;flex-direction:column;height:100%;background:var(--card-background);min-height:0}.message-thread-header{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--card-background);border-bottom:1px solid var(--card-border);-webkit-user-select:none;user-select:none;cursor:grab;flex-shrink:0}.message-thread-header:active{cursor:grabbing}.message-thread-back-button{height:32px;padding:0 10px;border:1px solid var(--card-border);border-radius:8px;background:var(--card-bg);color:var(--text-primary);display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:13px;font-weight:600;line-height:1;white-space:nowrap;cursor:pointer;flex-shrink:0;transition:background .15s ease,border-color .15s ease,color .15s ease}.message-thread-back-button:hover{background:var(--surface-hover, var(--card-background));border-color:var(--accent-orange);color:var(--accent-orange)}.message-thread-back-button:focus-visible{outline:2px solid var(--accent-orange);outline-offset:1px}.message-thread-avatar{position:relative;width:38px;height:38px;border-radius:50%;background:var(--surface-secondary);color:var(--text-primary);display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex-shrink:0;letter-spacing:.02em}.message-thread-identity{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0}.message-thread-name{margin:0;font-size:15px;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.message-thread-actions{display:inline-flex;align-items:center;gap:2px;margin-left:auto}.message-thread-action-btn{background:none;border:none;color:var(--text-secondary);width:32px;height:32px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s ease,color .15s ease}.message-thread-action-btn:hover{background:var(--surface-hover, var(--surface-secondary));color:var(--text-primary)}.message-thread-action-btn:focus-visible{outline:2px solid var(--accent-orange);outline-offset:1px}@media(max-width:420px){.message-thread-header{gap:8px;padding:10px 12px}.message-thread-back-button{width:32px;padding:0}.message-thread-back-button span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}}.message-thread-messages{flex:1;overflow-y:auto;overflow-x:hidden;padding:16px 14px 12px;display:flex;flex-direction:column;gap:4px;background:var(--body-background);min-height:0}.loading-more{display:flex;justify-content:center;padding:12px}.message-date-group{display:flex;flex-direction:column;gap:4px}.message-date-divider{display:flex;align-items:center;justify-content:center;margin:12px 0 10px}.message-date-divider span{background:transparent;color:var(--text-tertiary);font-size:11px;font-weight:600;padding:0;letter-spacing:.12em;text-transform:uppercase}.message{display:flex;flex-direction:column;max-width:78%;margin-bottom:4px}.message-sent{align-self:flex-end;align-items:flex-end}.message-received{align-self:flex-start;align-items:flex-start}.message-bubble{padding:10px 14px;border-radius:18px;word-wrap:break-word;position:relative}.message-sent .message-bubble{background:var(--accent-orange);color:var(--text-inverse, #ffffff);border-bottom-right-radius:6px}.message-received .message-bubble{background:var(--surface-secondary);color:var(--text-primary);border-bottom-left-radius:6px}.message-content{font-size:14px;line-height:1.45;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:6px;margin-top:6px;margin-bottom:6px;padding:0 6px}.message-time{font-size:11px;color:var(--text-tertiary);font-weight:500}.message-status{font-size:11px;color:var(--text-tertiary)}.message-status-failed{color:var(--error-color, #ef4444)}.typing-indicator{display:flex;align-items:center;gap:8px;padding:4px 0;margin-top:4px;align-self:flex-start}.typing-dots{display:flex;gap:4px;padding:10px 14px;background:var(--surface-secondary);border-radius:18px 18px 18px 6px}.typing-dots span{width:6px;height:6px;background:var(--text-tertiary);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:.5}30%{transform:translateY(-6px);opacity:1}}.typing-text{font-size:12px;color:var(--text-secondary);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:var(--text-secondary)}.message-thread-empty svg{color:var(--text-tertiary);opacity:.5}.message-thread-empty p{font-size:15px;font-weight:600;color:var(--text-primary);margin:0}.message-thread-empty span{font-size:13px;color:var(--text-tertiary)}.message-thread-messages::-webkit-scrollbar{width:6px}.message-thread-messages::-webkit-scrollbar-track{background:transparent}.message-thread-messages::-webkit-scrollbar-thumb{background:var(--card-border);border-radius:3px}.message-thread-messages::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}@media(prefers-reduced-motion:reduce){.typing-dots span{animation:none}}.message-composer{background:var(--card-background);border-top:1px solid var(--card-border);display:flex;flex-direction:column;flex-shrink:0}.message-attachments{padding:10px 14px 0;display:flex;flex-wrap:wrap;gap:6px}.attachment-preview{display:inline-flex;align-items:center;gap:6px;padding:4px 8px 4px 10px;background:var(--surface-secondary);border:1px solid var(--card-border);border-radius:999px;font-size:12px;color:var(--text-primary);max-width:100%}.attachment-name{max-width:160px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.attachment-remove{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:2px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;transition:background .15s ease,color .15s ease}.attachment-remove:hover{background:var(--card-border);color:var(--text-primary)}.emoji-picker{background:var(--card-background);border-top:1px solid var(--card-border);padding:12px 14px}.emoji-picker-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.emoji-picker-header span{font-size:12px;font-weight:600;color:var(--text-secondary);letter-spacing:.04em;text-transform:uppercase}.emoji-picker-close{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px}.emoji-picker-close:hover{background:var(--surface-secondary);color:var(--text-primary)}.emoji-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.emoji-button{background:none;border:none;font-size:22px;cursor:pointer;padding:6px;border-radius:8px;transition:background .15s ease;display:flex;align-items:center;justify-content:center}.emoji-button:hover{background:var(--surface-secondary)}.message-composer-input{display:flex;align-items:flex-end;gap:4px}.composer-action-button{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:0;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;transition:background .15s ease,color .15s ease;flex-shrink:0;align-self:flex-end;margin-bottom:2px}.composer-action-button:hover{color:var(--text-primary);background:var(--card-border)}.composer-action-button:focus-visible{outline:2px solid var(--accent-orange);outline-offset:1px}.file-input-hidden{display:none}.message-input{flex:1;border:none;background:transparent;padding:8px 6px;font-size:14px;font-family:inherit;color:var(--text-primary);resize:none;outline:none;min-height:32px;max-height:100px;line-height:1.4;overflow-y:auto}.message-input::placeholder{color:var(--text-tertiary)}.message-input-error{color:var(--error-color, #ef4444)}.send-button{background:var(--accent-orange);border:none;color:var(--text-inverse, #ffffff);cursor:pointer;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;transition:background .15s ease,opacity .15s ease,transform .1s ease;flex-shrink:0;width:32px;height:32px;align-self:flex-end;margin-bottom:2px}.send-button:hover:not(:disabled){background:var(--accent-orange-hover, #E55A2B)}.send-button:active:not(:disabled){transform:scale(.94)}.send-button:disabled{background:var(--card-border);color:var(--text-tertiary);cursor:not-allowed}.send-button:focus-visible{outline:2px solid var(--accent-orange);outline-offset:2px}.character-count{padding:0 16px 8px;display:flex;justify-content:flex-end;align-items:center;gap:8px;font-size:11px;color:var(--text-tertiary)}.character-count-error{color:var(--error-color, #ef4444);font-weight:600}.character-count-warning{color:var(--error-color, #ef4444);font-size:11px}.message-input::-webkit-scrollbar{width:4px}.message-input::-webkit-scrollbar-track{background:transparent}.message-input::-webkit-scrollbar-thumb{background:var(--card-border);border-radius:2px}.message-input::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}@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}}.calendar-filters{margin-bottom:16px}.calendar-filters .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}.calendar-filters .clear-filters-button:hover{background:var(--error-bg, #fef2f2);border-color:var(--error-border, #fecaca)}.calendar-filters .filters-controls{display:flex;gap:12px;flex-wrap:wrap}.calendar-filters .filters-controls.mobile-filter-region--collapsed{display:none}.calendar-filters .filter-dropdown-container{position:relative}.calendar-filters .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)}.calendar-filters .filter-button:hover{background:var(--surface-secondary, #f9fafb);border-color:var(--border-secondary, #d1d5db)}.calendar-filters .filter-button.active{background:var(--primary-light, #eff6ff);border-color:var(--primary-color, #3b82f6);color:var(--info-text, #1e40af)}.calendar-filters .filter-label{flex:1;text-align:left}.calendar-filters .filter-count{background:var(--primary-color, #3b82f6);color:#fff;border-radius:10px;padding:2px 8px;font-size:13px;font-weight:600;min-width:20px;text-align:center}.calendar-filters .dropdown-arrow{position:static;width:16px;height:16px;color:currentColor;opacity:.85;transition:opacity .2s,transform .2s;flex-shrink:0}.calendar-filters .filter-button:hover .dropdown-arrow{opacity:1}.calendar-filters .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)}}.calendar-filters .dropdown-loading,.calendar-filters .dropdown-empty{padding:16px;text-align:center;color:var(--text-secondary, #6b7280);font-size:14px}.calendar-filters .dropdown-search{padding:8px;border-bottom:1px solid var(--border-primary, #e5e7eb);position:sticky;top:0;background:var(--card-bg, white);z-index:1}.calendar-filters .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)}.calendar-filters .dropdown-search input:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.calendar-filters .dropdown-search input::placeholder{color:var(--input-placeholder, #9ca3af)}.calendar-filters .dropdown-options{padding:8px}.calendar-filters .dropdown-option{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:6px;cursor:pointer;transition:background .2s;font-size:14px}.calendar-filters .dropdown-option:hover{background:var(--hover-bg, #f9fafb)}.calendar-filters .dropdown-option input[type=checkbox]{cursor:pointer;width:16px;height:16px;accent-color:var(--primary-color, #3b82f6)}.calendar-filters .dropdown-option span{flex:1;color:var(--text-primary, #111827)}.calendar-filters .active-filters{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid var(--border-primary, #e5e7eb)}.calendar-filters .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}.calendar-filters .filter-badge span{line-height:1}.calendar-filters .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}.calendar-filters .remove-badge:hover{background:var(--info-bg, #dbeafe)}.calendar-filters .filter-dropdown::-webkit-scrollbar{width:8px}.calendar-filters .filter-dropdown::-webkit-scrollbar-track{background:#f3f4f6;border-radius:4px}.calendar-filters .filter-dropdown::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.calendar-filters .filter-dropdown::-webkit-scrollbar-thumb:hover{background:#9ca3af}@media(max-width:768px){.calendar-filters .clear-filters-button{width:100%}.calendar-filters .filters-controls{width:100%;position:relative}.calendar-filters .filter-dropdown-container{flex:1;min-width:0;position:static}.calendar-filters .filter-button{width:100%;min-width:0;justify-content:space-between}.calendar-filters .filter-dropdown{left:0;right:0;width:auto;min-width:0}.calendar-filters .active-filters{margin-top:12px;padding-top:12px}.calendar-filters .filter-badge{font-size:13px;padding:4px 10px}}.btf-body{display:flex;flex-direction:column;gap:1rem;min-width:0}.btf-intro{font-size:.8125rem;color:var(--text-secondary);line-height:1.5;margin:0}.btf-section{display:flex;flex-direction:column;gap:.625rem}.btf-section-head{display:flex;align-items:center;justify-content:space-between;gap:.625rem}.btf-section-title{font-size:.75rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;margin:0}.btf-add-toggle{display:inline-flex;align-items:center;gap:.375rem;padding:.4375rem .75rem;border:1px solid var(--card-border, var(--border-primary));border-radius:8px;background:transparent;color:var(--text-secondary);font-family:inherit;font-size:.8125rem;font-weight:600;cursor:pointer;transition:border-color .15s ease,color .15s ease,background .15s ease}.btf-add-toggle:hover,.btf-add-toggle:focus-visible{outline:none;border-color:var(--accent-orange);color:var(--accent-orange);background:var(--surface-hover)}.btf-add-toggle:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-orange) 18%,transparent)}.btf-add-toggle--active{border-style:dashed}.btf-form{display:flex;flex-direction:column;gap:.75rem;padding:.875rem;border:1px solid var(--card-border, var(--border-primary));border-radius:10px;background:var(--bg-secondary)}.btf-row{display:grid;grid-template-columns:1fr 1fr;gap:.625rem}.btf-field{display:flex;flex-direction:column;gap:.3125rem;min-width:0}.btf-field label{font-size:.75rem;font-weight:600;color:var(--text-primary)}.btf-field input{width:100%;box-sizing:border-box;padding:.5rem .75rem;font-family:inherit;font-size:.875rem;color:var(--text-primary);background:var(--input-bg);border:1px solid var(--input-border, var(--border-primary));border-radius:6px;transition:border-color .15s ease,box-shadow .15s ease}.btf-field input:focus{outline:none;border-color:var(--accent-orange);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-orange) 18%,transparent)}.btf-field input[aria-invalid=true]{border-color:var(--error-color)}.btf-field-error{font-size:.75rem;color:var(--error-color);margin:0}.btf-editor-wrap{display:flex;flex-direction:column;gap:.3125rem}.btf-toolbar{display:flex;gap:.25rem;padding:.25rem;background:var(--input-bg);border:1px solid var(--input-border, var(--border-primary));border-bottom:none;border-radius:6px 6px 0 0}.btf-toolbar-button{width:30px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:4px;background:transparent;color:var(--text-secondary);font-family:inherit;font-size:.8125rem;cursor:pointer;padding:0;transition:background .15s ease,color .15s ease}.btf-toolbar-button:hover{background:var(--surface-hover);color:var(--accent-orange)}.btf-editor{min-height:110px;padding:.5rem .75rem;font-family:inherit;font-size:.875rem;line-height:1.5;color:var(--text-primary);background:var(--input-bg);border:1px solid var(--input-border, var(--border-primary));border-radius:0 0 6px 6px;outline:none;transition:border-color .15s ease,box-shadow .15s ease;white-space:normal;overflow-wrap:anywhere}.btf-editor:focus{border-color:var(--accent-orange);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-orange) 18%,transparent)}.btf-editor[aria-invalid=true]{border-color:var(--error-color)}.btf-editor:empty:before{content:attr(data-placeholder);color:var(--text-tertiary);pointer-events:none}.btf-editor p,.btf-editor ul,.btf-editor ol{margin:0 0 .5rem}.btf-editor p:last-child,.btf-editor ul:last-child,.btf-editor ol:last-child{margin-bottom:0}.btf-submit-error{display:flex;align-items:center;gap:.5rem;padding:.625rem .875rem;background:var(--error-bg);border:1px solid var(--error-border);border-radius:6px;color:var(--error-text);font-size:.8125rem;font-weight:500}.btf-form-actions{display:flex;justify-content:flex-end;gap:.5rem}.btf-list{display:flex;flex-direction:column;gap:.5rem}.btf-card{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem .875rem;border:1px solid var(--card-border, var(--border-primary));border-radius:10px;background:transparent}.btf-card-info{flex:1;min-width:0}.btf-card-reason{margin:0 0 .25rem;font-size:.875rem;font-weight:500;line-height:1.4;color:var(--text-primary);word-break:break-word}.btf-card-dates{display:inline-flex;align-items:center;gap:.375rem;font-size:.75rem;color:var(--text-tertiary)}.btf-show-more{background:none;border:none;color:var(--accent-orange);cursor:pointer;font-size:.75rem;font-weight:600;padding:0;margin-left:.25rem}.btf-show-more:hover{color:var(--accent-orange-hover);text-decoration:underline}.btf-card-delete{flex-shrink:0;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--card-border, var(--border-primary));border-radius:8px;background:transparent;color:var(--text-tertiary);cursor:pointer;transition:border-color .15s ease,color .15s ease,background .15s ease}.btf-card-delete:hover:not(:disabled),.btf-card-delete:focus-visible{outline:none;border-color:var(--error-color);color:var(--error-color);background:var(--error-bg)}.btf-card-delete:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--error-color) 22%,transparent)}.btf-card-delete:disabled{opacity:.5;cursor:not-allowed}.btf-empty{text-align:center;padding:1.5rem 1rem;border:1px dashed var(--border-primary);border-radius:10px;color:var(--text-tertiary);font-size:.875rem}.btf-loading{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem;color:var(--text-tertiary);font-size:.875rem}.btf-delete-body{display:flex;flex-direction:column;gap:.75rem;padding:0 1.5rem 1rem;color:var(--text-primary);font-size:.875rem}.btf-delete-body p{margin:0}.btf-delete-preview{padding:.625rem .875rem;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:8px;color:var(--text-primary);line-height:1.5;overflow-wrap:anywhere;word-break:break-word}.btf-delete-preview p,.btf-delete-preview ul,.btf-delete-preview ol{margin:0 0 .5rem}.btf-delete-preview p:last-child,.btf-delete-preview ul:last-child,.btf-delete-preview ol:last-child{margin-bottom:0}.btf-delete-dates{color:var(--text-secondary);font-size:.8125rem}@media(max-width:600px){.btf-row{grid-template-columns:1fr}.btf-section-head{flex-direction:column;align-items:stretch}.btf-add-toggle{justify-content:center}.btf-form{padding:1.25rem 1rem;gap:1.125rem;margin-left:-1rem;margin-right:-1rem;border-left:none;border-right:none;border-radius:0}.btf-field{gap:.5rem}.btf-field label{font-size:.875rem}.btf-field input,.btf-editor{font-size:16px}.btf-field input{padding:.75rem .875rem}.btf-toolbar{padding:.375rem}.btf-toolbar-button{width:36px;height:32px}.btf-editor{min-height:140px;padding:.75rem .875rem}.btf-form-actions{flex-direction:column-reverse;gap:.75rem;margin-top:.25rem}.btf-form-actions .btn{width:100%;padding:.75rem 1rem;font-size:.9375rem}}.calendar-page{max-width:min(100%,1400px);margin:0 auto;padding:24px}.calendar-page .page-header{margin-bottom:24px}.calendar-page .calendar-header-actions{display:flex;gap:8px;flex-wrap:wrap}.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(--header-description-color, #6b7280)}@media(max-width:768px){.calendar-page{padding:16px}.calendar-page .page-header h1{font-size:24px}.calendar-page .page-description{font-size:14px}}.calendar-page--mobile{padding:12px 0 88px!important;width:100%;box-sizing:border-box;max-width:100%}.calendar-page--mobile .page-header{margin-bottom:12px;padding-left:14px;padding-right:14px}.calendar-page--mobile .page-header h1{font-size:22px;margin-bottom:4px}.calendar-page--mobile .page-description{font-size:13px;flex-basis:100%}.calendar-page--mobile .page-header{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px}.calendar-page--mobile .page-header h1{flex:1 1 auto;margin:0;order:0}.calendar-page--mobile .page-header .btn{flex:0 0 auto;align-self:center;font-size:12px;padding:6px 12px;min-width:auto;width:auto;order:1}.calendar-page--mobile .page-description{order:2}.trainer-earnings-report{padding:20px;max-width:1400px;margin:0 auto}.trainer-earnings-report .report-header{margin-bottom:30px}.trainer-earnings-report .report-header h2{margin:0 0 8px;font-size:24px;font-weight:600;color:var(--text-primary, #1f2937)}.trainer-earnings-report .report-description{margin:0;color:var(--text-secondary, #6b7280);font-size:14px}.trainer-earnings-report .summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:30px}.trainer-earnings-report .summary-card{background:var(--card-background, #fffdf9);border:1px solid transparent;border-radius:12px;padding:20px;text-align:center;box-shadow:0 1px 3px #00000014}.trainer-earnings-report .summary-card.revenue{border-left:4px solid var(--success-color, #10b981)}.trainer-earnings-report .summary-card.paid{border-left:4px solid var(--warning-color, #f59e0b)}.trainer-earnings-report .summary-card.profit{border-left:4px solid var(--accent-orange, #f4a261)}.trainer-earnings-report .summary-card.margin{border-left:4px solid var(--info-color, #FE6B34)}.summary-label{font-size:12px;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-weight:500}.summary-value{font-size:28px;font-weight:700;color:var(--text-primary, #1f2937)}.trainers-table-container{background:var(--card-background, #fffdf9);border:1px solid var(--card-border, #e5e7eb);border-radius:12px;overflow:hidden;margin-bottom:20px}.trainers-table{width:100%;border-collapse:collapse}.trainers-table thead{background:var(--table-header-bg, #f9fafb)}.trainers-table th{padding:16px;text-align:left;font-size:12px;font-weight:600;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--border-primary, #e5e7eb)}.trainers-table th.text-center{text-align:center}.trainers-table th.text-right{text-align:right}.trainers-table tbody tr{border-bottom:1px solid var(--border-primary, #e5e7eb);transition:background-color .2s ease}.trainers-table tbody tr:hover{background-color:var(--table-row-hover, #f3f4f6)}.trainers-table tbody tr:last-child{border-bottom:none}.trainers-table td{padding:16px;font-size:14px;color:var(--text-primary, #1f2937)}.trainers-table td.text-center{text-align:center}.trainers-table td.text-right{text-align:right}.trainer-info{display:flex;flex-direction:column;gap:4px}.trainer-name{font-weight:600;color:var(--text-primary, #1f2937)}.trainer-email{font-size:12px;color:var(--text-secondary, #6b7280)}.rate-type{font-size:11px;color:var(--text-tertiary, #9ca3af);margin-left:2px}.rate-empty{color:var(--text-tertiary, #9ca3af);font-style:italic;font-size:13px}.revenue-cell{color:var(--success-color, #10b981);font-weight:600}.paid-cell{color:var(--warning-color, #f59e0b);font-weight:600}.profit-cell .positive{color:var(--accent-orange, #f4a261);font-weight:600}.profit-cell .negative{color:var(--error-color, #ef4444);font-weight:600}.margin-cell .positive{color:var(--info-color, #FE6B34);font-weight:600}.margin-cell .negative{color:var(--error-color, #ef4444);font-weight:600}.trainer-earnings-report .report-footer{display:flex;justify-content:flex-end;gap:12px;margin-top:20px}.trainer-earnings-report .report-footer .refresh-button{padding:12px 24px;background:var(--accent-orange, #f4a261);color:var(--text-inverse, #ffffff);border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s ease;white-space:nowrap;min-width:140px;width:auto;height:auto}.trainer-earnings-report .report-footer .refresh-button:hover{background:var(--accent-orange-hover, #e79552)}.trainer-earnings-report .loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-secondary, #6b7280)}.trainer-earnings-report .error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px}.trainer-earnings-report .error-message{color:var(--error-color, #ef4444);margin-bottom:16px;font-size:14px}.trainer-earnings-report .retry-button{padding:10px 20px;background:var(--error-color, #ef4444);color:var(--text-inverse, #ffffff);border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:opacity .2s ease}.trainer-earnings-report .retry-button:hover{opacity:.9}.trainer-earnings-report .empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-secondary, #6b7280);text-align:center}.trainer-earnings-report .empty-hint{font-size:14px;color:var(--text-tertiary, #9ca3af);margin-top:8px}@media(max-width:1200px){.trainers-table-container{overflow-x:auto}.trainers-table{min-width:1000px}}@media(max-width:768px){.trainer-earnings-report .summary-cards{grid-template-columns:repeat(2,1fr)}.summary-value{font-size:24px}.trainers-table th,.trainers-table td{padding:12px 8px;font-size:13px}}@media(max-width:480px){.trainer-earnings-report .summary-cards{grid-template-columns:1fr}}.chart-container-inner{width:100%;height:100%}.chart-title{font-size:1rem;font-weight:600;color:var(--text-primary, #1f2937);margin-bottom:1rem;text-align:center}.chart-wrapper{position:relative;width:100%;min-height:300px}.chart-empty{display:flex;align-items:center;justify-content:center;min-height:300px;color:var(--text-tertiary, #9ca3af);font-style:italic}.chart-bars{display:flex;align-items:flex-end;justify-content:space-around;height:300px;padding:2rem 1rem 3rem;gap:.5rem}.bar-container{display:flex;flex-direction:column;align-items:center;height:100%;position:relative}.bar-value{font-size:.85rem;font-weight:600;color:var(--text-primary, #1f2937);margin-bottom:.5rem;min-height:1.5rem}.bar{width:100%;max-width:80px;min-width:40px;background-color:var(--accent-orange, #f4a261);border-radius:4px 4px 0 0;transition:all .3s ease;position:relative;margin-top:auto}.bar:hover{opacity:.8;transform:translateY(-2px)}.bar-label{font-size:.75rem;color:var(--text-secondary, #6b7280);text-align:center;margin-top:.5rem;word-wrap:break-word;max-width:100%}.line-chart{width:100%;height:300px;margin-bottom:1rem}.line-chart line{stroke:var(--border-primary, #e5e7eb)}.line-chart-labels{display:flex;justify-content:space-between;padding:0 1rem;margin-top:.5rem}.line-label{font-size:.75rem;color:var(--text-secondary, #6b7280);text-align:center;flex:1}.pie-chart-wrapper{display:flex;flex-direction:column;align-items:center;gap:1.5rem}.pie-chart{width:100%;max-width:300px;height:auto;cursor:pointer}.pie-chart path{transition:opacity .2s ease}.pie-chart path:hover{opacity:.8}.pie-legend{display:flex;flex-direction:column;gap:.5rem;width:100%}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.85rem}.legend-color{width:16px;height:16px;border-radius:2px;flex-shrink:0}.legend-label{color:var(--text-secondary, #6b7280)}.axis-label{font-size:.85rem;color:var(--text-secondary, #6b7280);font-weight:500;text-align:center;margin-top:.5rem}.axis-label.y-axis{position:absolute;left:-2rem;top:50%;transform:rotate(-90deg) translate(-50%);transform-origin:left center;white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media(max-width:768px){.chart-bars{padding:1rem .5rem 2rem}.bar{max-width:60px;min-width:30px}.bar-value{font-size:.75rem}.bar-label,.line-label{font-size:.65rem}.pie-chart{max-width:250px}.legend-item{font-size:.75rem}.legend-color{width:12px;height:12px}}@media(max-width:480px){.chart-wrapper{min-height:250px}.chart-bars,.line-chart{height:250px}.bar-value{font-size:.7rem}.bar-label{font-size:.6rem}.pie-chart{max-width:200px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.bar,.line-chart path,.pie-chart path{animation:fadeIn .5s ease-out}.business-metrics-report{padding:20px;max-width:1400px;margin:0 auto}.business-metrics-report .report-header{margin-bottom:30px}.business-metrics-report .report-header h2{margin:0 0 16px;font-size:24px;font-weight:600;color:var(--text-primary, #1f2937)}.report-controls{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.date-range-selector{display:flex;align-items:center;gap:8px}.date-range-selector label{font-size:14px;font-weight:500;color:var(--text-secondary, #6b7280)}.date-range-selector input[type=date]{padding:8px 12px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;font-size:14px;background:var(--input-bg, #ffffff);color:var(--text-primary, #1f2937)}.date-range-selector input[type=date]:focus{border-color:var(--border-focus, #f4a261);outline:none}.export-controls{display:flex;gap:8px;align-items:center}.export-controls select{padding:8px 12px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;font-size:14px;background:var(--input-bg, #ffffff);color:var(--text-primary, #1f2937)}.export-button{padding:8px 16px;background:var(--accent-orange, #f4a261);color:var(--text-inverse, #ffffff);border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s ease}.export-button:hover:not(:disabled){background:var(--accent-orange-hover, #e79552)}.export-button:disabled{opacity:.6;cursor:not-allowed}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:30px}.metric-card{background:var(--card-background, #fffdf9);border:1px solid transparent;border-radius:12px;padding:24px;box-shadow:0 1px 3px #00000014}.metric-card h3{margin:0 0 12px;font-size:14px;font-weight:500;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.5px}.metric-value{font-size:32px;font-weight:700;color:var(--text-primary, #1f2937);margin-bottom:8px}.metric-description{margin:0;font-size:13px;color:var(--text-tertiary, #9ca3af)}.charts-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:20px;margin-bottom:30px}.chart-container{background:var(--card-background, #fffdf9);border:1px solid transparent;border-radius:12px;padding:24px;box-shadow:0 1px 3px #00000014}.chart-container h3{margin:0 0 20px;font-size:16px;font-weight:600;color:var(--text-primary, #1f2937)}.insights-section{background:var(--card-background, #fffdf9);border:1px solid transparent;border-radius:12px;padding:24px;box-shadow:0 1px 3px #00000014}.insights-section h3{margin:0 0 16px;font-size:18px;font-weight:600;color:var(--text-primary, #1f2937)}.insights-list{list-style:none;padding:0;margin:0}.insights-list li{padding:12px 16px;margin-bottom:8px;border-radius:6px;font-size:14px}.insight-positive{background:var(--success-bg, #d1fae5);color:var(--success-text, #065f46);border-left:4px solid var(--success-color, #10b981)}.insight-warning{background:var(--warning-bg, #fef3c7);color:var(--warning-text, #92400e);border-left:4px solid var(--warning-color, #f59e0b)}.business-metrics-report .loading-state,.business-metrics-report .error-state,.business-metrics-report .empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:var(--text-secondary, #6b7280)}.business-metrics-report .error-message{color:var(--error-color, #ef4444);margin-bottom:16px}.business-metrics-report .retry-button{padding:10px 20px;background:var(--error-color, #ef4444);color:var(--text-inverse, #ffffff);border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:opacity .2s ease}.business-metrics-report .retry-button:hover{opacity:.9}@media(max-width:768px){.report-controls{flex-direction:column;align-items:stretch}.charts-section{grid-template-columns:1fr}}.team-performance-report{padding:20px;max-width:1400px;margin:0 auto}.team-performance-report .report-header{margin-bottom:30px}.team-performance-report .report-header h2{margin:0 0 8px;font-size:24px;font-weight:600;color:var(--text-primary, #1f2937)}.team-performance-report .report-description{margin:0;color:var(--text-secondary, #6b7280);font-size:14px}.performance-table-container{background:var(--card-background, #fffdf9);border:1px solid var(--card-border, #e5e7eb);border-radius:12px;overflow:hidden}.performance-table{width:100%;border-collapse:collapse}.performance-table thead{background:var(--table-header-bg, #f9fafb)}.performance-table th{padding:16px;text-align:left;font-size:12px;font-weight:600;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--border-primary, #e5e7eb);background:inherit}.performance-table th.text-center{text-align:center}.performance-table tbody tr{border-bottom:1px solid var(--border-primary, #e5e7eb);transition:background-color .2s ease}.performance-table tbody tr:hover{background-color:var(--table-row-hover, #f3f4f6)}.performance-table tbody tr:last-child{border-bottom:none}.performance-table td{padding:16px;font-size:14px;color:var(--text-primary, #1f2937)}.performance-table td.text-center{text-align:center}.member-name{font-weight:600;color:var(--text-primary, #1f2937)}.team-performance-report .loading-state,.team-performance-report .error-state,.team-performance-report .empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:var(--text-secondary, #6b7280)}.team-performance-report .error-message{color:var(--error-color, #ef4444);margin-bottom:16px}.team-performance-report .retry-button{padding:10px 20px;background:var(--error-color, #ef4444);color:var(--text-inverse, #ffffff);border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:opacity .2s ease}.team-performance-report .retry-button:hover{opacity:.9}@media(max-width:768px){.performance-table-container{overflow-x:auto}.performance-table{min-width:600px}}.inactive-clients-report{padding:20px}.inactive-clients-report .report-header{margin-bottom:24px}.inactive-clients-report .report-header h2{margin:0 0 8px;font-size:24px;color:var(--text-primary, #1f2937)}.inactive-clients-report .report-subtitle{margin:0;color:var(--text-secondary, #6b7280);font-size:14px}.inactive-clients-report .report-generated{margin:8px 0 0;color:var(--text-tertiary, #9ca3af);font-size:12px}.inactive-clients-report .summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-bottom:24px}.inactive-clients-report .summary-card{background:var(--card-background, #fffdf9);border-radius:12px;padding:20px;text-align:center;border:1px solid transparent;box-shadow:0 1px 3px #00000014}.inactive-clients-report .summary-card.warning{background:var(--warning-bg, #fef3c7);border-color:var(--warning-border, #fcd34d)}.inactive-clients-report .card-value{font-size:32px;font-weight:700;color:var(--text-primary, #1f2937);margin-bottom:4px}.inactive-clients-report .summary-card.warning .card-value{color:var(--warning-color, #f59e0b)}.inactive-clients-report .card-label{font-size:14px;color:var(--text-secondary, #6b7280)}.inactive-clients-report .clients-table-container{background:var(--card-background, #fffdf9);border-radius:12px;padding:20px;border:1px solid var(--card-border, #e5e7eb);margin-bottom:20px}.inactive-clients-report .clients-table-container h3{margin:0 0 16px;font-size:16px;color:var(--text-primary, #1f2937)}.inactive-clients-report .clients-table{width:100%;border-collapse:collapse}.inactive-clients-report .clients-table th,.inactive-clients-report .clients-table td{padding:12px;text-align:left;border-bottom:1px solid var(--border-primary, #e5e7eb)}.inactive-clients-report .clients-table th{font-weight:600;color:var(--text-secondary, #6b7280);font-size:12px;text-transform:uppercase;letter-spacing:.5px}.inactive-clients-report .clients-table td{color:var(--text-primary, #1f2937);font-size:14px}.inactive-clients-report .clients-table tbody tr:hover{background:var(--surface-hover, #fef1e6)}.inactive-clients-report .client-name{font-weight:500}.inactive-clients-report .client-email{color:var(--text-secondary, #6b7280)}.inactive-clients-report .days-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500}.inactive-clients-report .days-badge.status-moderate{background:var(--warning-bg, #fef3c7);color:var(--warning-text, #92400e)}.inactive-clients-report .days-badge.status-warning{background:var(--warning-bg, #fef3c7);color:var(--warning-color, #f59e0b)}.inactive-clients-report .days-badge.status-critical{background:var(--error-bg, #fee2e2);color:var(--error-text, #dc2626)}.inactive-clients-report .status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500;text-transform:capitalize}.inactive-clients-report .status-badge.status-active{background:var(--success-bg, #d1fae5);color:var(--success-text, #065f46)}.inactive-clients-report .status-badge.status-inactive{background:var(--surface-secondary, #f9fafb);color:var(--text-tertiary, #9ca3af)}.inactive-clients-report .status-badge.status-invited{background:var(--chip-orange-bg, #fef1e6);color:var(--accent-orange, #f4a261)}.inactive-clients-report .no-inactive-clients{text-align:center;padding:40px 20px;background:var(--success-bg, #d1fae5);border-radius:12px;border:1px solid var(--success-border, #a7f3d0)}.inactive-clients-report .success-icon{font-size:48px;margin-bottom:16px}.inactive-clients-report .no-inactive-clients h3{margin:0 0 8px;color:var(--success-color, #10b981)}.inactive-clients-report .no-inactive-clients p{margin:0;color:var(--text-secondary, #6b7280)}.inactive-clients-report .report-message{text-align:center;padding:40px 20px;background:var(--card-background, #fffdf9);border-radius:12px;border:1px solid var(--card-border, #e5e7eb)}.inactive-clients-report .message-icon{font-size:48px;margin-bottom:16px}.inactive-clients-report .report-message p{margin:0 0 8px;color:var(--text-primary, #1f2937)}.inactive-clients-report .message-hint{color:var(--text-secondary, #6b7280)!important;font-size:14px}.inactive-clients-report .retry-button{margin-top:16px;padding:10px 20px;background:var(--accent-orange, #f4a261);color:var(--text-inverse, #ffffff);border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s ease}.inactive-clients-report .retry-button:hover{background:var(--accent-orange-hover, #e79552)}.inactive-clients-report .report-loading{text-align:center;padding:60px 20px}.inactive-clients-report .report-footer{display:flex;justify-content:flex-end;margin-top:20px}.inactive-clients-report .refresh-button{padding:10px 20px;background:var(--card-background, #fffdf9);color:var(--text-primary, #1f2937);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;cursor:pointer;font-size:14px;display:flex;align-items:center;gap:8px;transition:all .2s ease}.inactive-clients-report .refresh-button:hover{background:var(--surface-hover, #fef1e6);border-color:var(--accent-orange, #f4a261)}@media(max-width:768px){.inactive-clients-report .clients-table-container{overflow-x:auto}.inactive-clients-report .clients-table{min-width:600px}}.reports-dashboard{padding:2rem;max-width:1400px;margin:0 auto}.dashboard-header{margin-bottom:2rem}.header-content h1{margin:0 0 8px;font-size:2rem;color:var(--text-primary, #1f2937);font-weight:600}.header-subtitle{margin:0;font-size:1rem;color:var(--text-secondary, #6b7280)}.report-breadcrumb{margin-bottom:24px}.back-button{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:var(--card-background, #fffdf9);border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;font-size:14px;font-weight:500;color:var(--text-secondary, #6b7280);cursor:pointer;transition:all .2s ease}.back-button:hover{background:var(--surface-hover, #fef1e6);border-color:var(--accent-orange, #f4a261);color:var(--accent-orange, #f4a261)}.category-filter{display:flex;gap:12px;margin-bottom:32px;flex-wrap:wrap}.filter-button{padding:10px 20px;background:var(--card-background, #fffdf9);border:2px solid var(--border-primary, #e5e7eb);border-radius:8px;font-size:14px;font-weight:500;color:var(--text-secondary, #6b7280);cursor:pointer;transition:all .2s ease}.filter-button:hover{border-color:var(--accent-orange, #f4a261);color:var(--accent-orange, #f4a261)}.filter-button.active{background:var(--accent-orange, #f4a261);border-color:var(--accent-orange, #f4a261);color:var(--text-inverse, #ffffff)}.reports-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;margin-bottom:32px}.report-card{display:flex;align-items:center;gap:16px;padding:24px;background:var(--card-background, #fffdf9);border:1px solid transparent;border-radius:12px;box-shadow:0 1px 3px #00000014;cursor:pointer;transition:all .2s ease}.report-card:hover{border-color:var(--accent-orange-hover, #e79552);box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.report-icon{font-size:48px;flex-shrink:0}.report-content{flex:1}.report-title{margin:0 0 8px;font-size:18px;font-weight:600;color:var(--text-primary, #1f2937)}.report-description{margin:0;font-size:14px;color:var(--text-secondary, #6b7280);line-height:1.5}.report-arrow{font-size:24px;color:var(--accent-orange, #f4a261);flex-shrink:0;transition:transform .2s ease}.report-card:hover .report-arrow{transform:translate(4px)}.no-reports{text-align:center;padding:60px 20px;color:var(--text-tertiary, #9ca3af)}.report-placeholder{padding:60px 20px;text-align:center;background:var(--card-background, #fffdf9);border:1px solid var(--border-primary, #e5e7eb);border-radius:12px}.report-placeholder h3{margin:0 0 12px;font-size:24px;color:var(--text-primary, #1f2937)}.report-placeholder p{margin:0;color:var(--text-secondary, #6b7280);font-size:16px}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-secondary, #6b7280)}.loading-spinner p{margin:8px 0}.error-message{padding:20px;background:var(--error-bg, #fee2e2);border:1px solid var(--error-border, #fecaca);border-radius:8px;color:var(--error-text, #dc2626)}.error-message button{margin-top:12px;padding:8px 16px;background:var(--error-color, #ef4444);color:var(--text-inverse, #ffffff);border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.error-message button:hover{opacity:.9}.no-data{text-align:center;padding:60px 20px;color:var(--text-secondary, #6b7280)}.no-data button{margin-top:16px;padding:10px 20px;background:var(--accent-orange, #f4a261);color:var(--text-inverse, #ffffff);border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.no-data button:hover{background:var(--accent-orange-hover, #e79552)}@media(max-width:768px){.reports-dashboard{padding:1rem}.header-content h1{font-size:1.5rem}.reports-grid{grid-template-columns:1fr}.category-filter{flex-direction:column}.filter-button{width:100%;text-align:center}.report-card{padding:20px}.report-icon{font-size:36px}.report-title{font-size:16px}.report-description{font-size:13px}}@media(max-width:480px){.report-card{flex-direction:column;text-align:center}.report-arrow{transform:rotate(90deg)}.report-card:hover .report-arrow{transform:rotate(90deg) translate(4px)}}.template-manager{padding:24px;max-width:1400px;margin:0 auto}.template-manager.loading,.template-manager.error{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:400px;gap:1rem}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:16px;color:var(--text-secondary, #6b7280)}.error-message{text-align:center}.error-message p{color:var(--error-text, #dc2626);margin-bottom:16px}.retry-button{padding:8px 16px;background-color:var(--accent-orange, #FE6B34);color:var(--text-inverse, white);border:none;border-radius:6px;cursor:pointer;font-size:14px}.retry-button:hover{background-color:var(--accent-orange-hover, #E55A2B)}.template-manager-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.template-manager-header h2{font-size:24px;font-weight:600;color:var(--text-primary, #111827);margin:0}.create-template-button{padding:10px 20px;background-color:var(--accent-orange, #FE6B34);color:var(--text-inverse, white);border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s ease}.create-template-button:hover{background-color:var(--accent-orange-hover, #E55A2B)}.template-filters{display:flex;gap:16px;margin-bottom:24px;flex-wrap:wrap;align-items:flex-end}.search-filter-group{flex:1;min-width:250px}.search-filter-group .search-input{width:100%}.search-input{padding:10px 16px;border:1px solid var(--border-primary, #d1d5db);border-radius:6px;font-size:14px;background:var(--input-bg, white);color:var(--text-primary, #1f2937);transition:border-color .2s ease}.search-input:focus{outline:none;border-color:var(--border-focus, #2563eb);box-shadow:0 0 0 3px #2563eb1a}.filter-group{display:flex;flex-direction:column;gap:6px}.filter-group label{font-size:13px;font-weight:500;color:var(--text-secondary, #374151)}.filter-select{padding:10px 12px;border:1px solid var(--border-primary, #d1d5db);border-radius:6px;font-size:14px;background-color:var(--input-bg, white);color:var(--text-primary, #1f2937);cursor:pointer;min-width:150px}.filter-select:focus{outline:none;border-color:var(--border-focus, #2563eb);box-shadow:0 0 0 3px #2563eb1a}.no-templates{text-align:center;padding:60px 20px;background-color:var(--bg-secondary, #f9fafb);border-radius:8px;border:2px dashed var(--border-primary, #d1d5db)}.no-templates p{font-size:16px;color:var(--text-secondary, #6b7280);margin-bottom:16px}.clear-filters-button,.create-first-template-button{padding:10px 20px;background-color:var(--accent-orange, #FE6B34);color:var(--text-inverse, white);border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s ease}.clear-filters-button:hover,.create-first-template-button:hover{background-color:var(--accent-orange-hover, #E55A2B)}.templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.template-card{background:var(--card-background, white);border:1px solid transparent;border-radius:12px;box-shadow:0 1px 3px #0000004d;padding:20px;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;gap:12px}.template-card:hover{border-color:var(--accent-orange-hover, #E55A2B)}.template-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.template-title-row{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.channel-icon{font-size:20px;flex-shrink:0;cursor:help}.template-name{font-size:16px;font-weight:600;color:var(--text-primary, #111827);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.category-badge{padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500;text-transform:capitalize;white-space:nowrap;flex-shrink:0}.category-badge-welcome{background-color:var(--info-bg, #dbeafe);color:var(--info-text, #1e40af)}.category-badge-reminder{background-color:var(--warning-bg, #fef3c7);color:var(--warning-text, #92400e)}.category-badge-followup{background-color:var(--success-bg, #d1fae5);color:var(--success-text, #065f46)}.category-badge-custom{background-color:var(--bg-secondary, #e5e7eb);color:var(--text-secondary, #374151)}.template-subject{font-size:13px;color:var(--text-secondary, #6b7280);padding:8px 12px;background-color:var(--bg-secondary, #f9fafb);border-radius:6px}.template-subject strong{color:var(--text-primary, #374151)}.template-body-preview{font-size:14px;color:var(--text-secondary, #4b5563);line-height:1.5;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.template-meta{display:flex;gap:16px;padding-top:8px;border-top:1px solid var(--border-primary, #e5e7eb);font-size:13px}.template-placeholders,.template-roles{display:flex;align-items:center;gap:6px}.meta-label{color:var(--text-secondary, #6b7280);font-weight:500}.placeholder-count,.role-count{color:var(--text-primary, #111827);font-weight:600}.template-performance{display:flex;gap:12px;padding:10px 12px;background-color:var(--bg-secondary, #f9fafb);border-radius:6px;font-size:13px}.performance-metric{display:flex;flex-direction:column;gap:2px}.metric-label{color:var(--text-tertiary, #6b7280);font-size:11px;text-transform:uppercase;letter-spacing:.5px}.metric-value{color:var(--text-primary, #111827);font-weight:600;font-size:14px}.template-updated{font-size:12px;color:var(--text-tertiary, #9ca3af)}.template-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid var(--border-primary, #e5e7eb);margin-top:auto}.view-details-button{padding:6px 12px;background-color:transparent;color:var(--accent-orange, #FE6B34);border:1px solid var(--accent-orange, #FE6B34);border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.view-details-button:hover{background-color:var(--accent-orange, #FE6B34);color:var(--text-inverse, white)}.template-detail{padding:24px;max-width:900px;margin:0 auto}.template-detail-header{margin-bottom:32px}.back-button{padding:8px 16px;background-color:transparent;color:var(--accent-orange, #FE6B34);border:1px solid var(--accent-orange, #FE6B34);border-radius:6px;cursor:pointer;font-size:14px;margin-bottom:16px;transition:all .2s ease}.back-button:hover{background-color:var(--warm-tint-bg, #fff7ed)}.header-actions{display:flex;justify-content:space-between;align-items:center}.header-actions h1{font-size:28px;font-weight:600;color:var(--text-primary, #111827);margin:0}.edit-button{padding:10px 20px;background-color:var(--accent-orange, #FE6B34);color:var(--text-inverse, white);border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s ease}.edit-button:hover{background-color:var(--accent-orange-hover, #E55A2B)}.template-detail-content{display:flex;flex-direction:column;gap:24px}.template-meta-info{display:flex;gap:24px;padding:16px;background-color:var(--bg-secondary, #f9fafb);border-radius:8px;flex-wrap:wrap}.meta-item{font-size:14px;color:var(--text-secondary, #4b5563)}.meta-item strong{color:var(--text-primary, #111827);margin-right:6px}.template-body-section,.template-placeholders-section{background:var(--card-background, white);border:1px solid var(--card-border, #e5e7eb);border-radius:8px;padding:20px}.template-body-section h3,.template-placeholders-section h3{font-size:16px;font-weight:600;color:var(--text-primary, #111827);margin:0 0 16px}.template-body-display{font-size:14px;line-height:1.6;color:var(--text-primary, #374151);white-space:pre-wrap;padding:16px;background-color:var(--bg-secondary, #f9fafb);border-radius:6px}.placeholders-list{display:flex;flex-wrap:wrap;gap:8px}.placeholder-badge{padding:6px 12px;background-color:var(--chip-orange-bg, #fff7ed);color:var(--accent-orange, #FE6B34);border-radius:6px;font-size:13px;font-family:Courier New,monospace;font-weight:500}.template-editor{padding:24px;max-width:900px;margin:0 auto}.template-editor.template-editor-compact{padding:16px;max-width:1100px;overflow:visible}.template-editor-compact .template-editor-form{overflow:visible}.template-editor-compact .template-editor-header{margin-bottom:12px}.template-editor-compact .template-editor-header h2{font-size:18px}.template-editor-compact .form-section-compact{margin-bottom:12px;overflow:visible}.template-editor-compact .form-row-inline{display:flex;gap:12px;align-items:flex-end}.template-editor-compact .form-row-inline .form-group{margin-bottom:0}.template-editor-compact .form-row-inline .flex-1{flex:1}.template-editor-compact .form-row-inline .flex-2{flex:2}.template-editor-compact .form-group label{font-size:12px;margin-bottom:4px;display:block;font-weight:500;color:var(--text-secondary, #374151)}.template-editor-compact .form-input,.template-editor-compact .form-select,.template-editor-compact .form-textarea{padding:8px 10px;font-size:13px;box-sizing:border-box}.template-editor-compact .form-input,.template-editor-compact .form-select{height:36px}.template-variables-info-compact{display:flex;align-items:center;gap:8px;padding:8px 12px;background-color:var(--bg-secondary, #f9fafb);border-radius:6px;margin-bottom:12px;font-size:12px}.template-variables-label{font-weight:600;color:var(--text-secondary, #6b7280);white-space:nowrap}.template-variables-list{color:var(--accent-orange, #FE6B34);font-size:11px;background:transparent;padding:0}.template-editor-compact .email-editors-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;overflow:visible}.template-editor-compact .email-editors-row .form-group{margin-bottom:0;min-width:0;overflow:visible}.template-editor-compact .tox-tinymce{overflow:visible;border-radius:4px}.template-editor-compact .tox .tox-statusbar{border-radius:0 0 4px 4px}.template-editor-compact .form-section-compact{overflow:visible}.template-editor-compact .sms-editors-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.template-editor-compact .sms-editors-row .form-group{margin-bottom:0}.template-editor-compact .char-count{font-weight:400;color:var(--text-tertiary, #9ca3af);font-size:11px}.template-editor-compact .permissions-row{display:flex;align-items:center;gap:16px;padding:12px 0;border-top:1px solid var(--border-primary, #e5e7eb)}.template-editor-compact .permissions-row>label{font-size:13px;font-weight:600;margin-bottom:0;white-space:nowrap}.template-editor-compact .role-checkboxes-inline{display:flex;gap:16px;flex-wrap:wrap}.template-editor-compact .role-checkboxes-inline .checkbox-label{display:flex;align-items:center;gap:6px;font-size:13px;cursor:pointer}.template-editor-compact .role-checkboxes-inline .checkbox-label input{margin:0}.template-editor-compact .template-editor-actions{margin-top:12px;padding-top:12px;display:flex;justify-content:space-between;align-items:center;gap:12px}.template-editor-compact .template-editor-actions-right{display:flex;gap:8px;align-items:center}@media(max-width:768px){.template-editor-compact .form-row-inline{flex-direction:column;gap:8px}.template-editor-compact .email-editors-row,.template-editor-compact .sms-editors-row{grid-template-columns:1fr}.template-editor-compact .permissions-row{flex-direction:column;align-items:flex-start;gap:8px}}.template-editor-form{display:flex;flex-direction:column;gap:12px}.template-editor-form .form-row-inline{display:flex;gap:12px;align-items:flex-end}.template-editor-form .form-group{margin-bottom:0}.template-editor-form .form-group.flex-1{flex:1}.template-editor-form .form-group.flex-2{flex:2}.template-editor-form .form-group label{font-size:12px;margin-bottom:4px;display:block;font-weight:500;color:var(--text-secondary, #374151)}.template-editor-form .form-input,.template-editor-form .form-select{padding:8px 10px;font-size:13px;height:36px;box-sizing:border-box;width:100%;border:1px solid var(--border-primary, #d1d5db);border-radius:6px}.template-editor-form .form-textarea{padding:8px 10px;font-size:13px;width:100%;border:1px solid var(--border-primary, #d1d5db);border-radius:6px;resize:vertical}.template-editor-form .email-editors-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.template-editor-form .email-editors-row .tox-tinymce{min-height:200px!important}.template-editor-form .sms-editors-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.template-editor-form .char-count{font-weight:400;color:var(--text-tertiary, #9ca3af);font-size:11px}.template-editor-form .permissions-row{display:flex;align-items:center;gap:16px;padding:12px 0;border-top:1px solid var(--border-primary, #e5e7eb)}.template-editor-form .permissions-row>label{font-size:13px;font-weight:600;margin-bottom:0;white-space:nowrap}.template-editor-form .role-checkboxes-inline{display:flex;gap:16px;flex-wrap:wrap}.template-editor-form .role-checkboxes-inline .checkbox-label{display:flex;align-items:center;gap:8px;font-size:13px;cursor:pointer;padding:8px 14px;border-radius:6px;border:1px solid var(--border-primary, #d1d5db);background:var(--card-background, white);color:var(--text-primary, #374151);transition:all .2s ease;font-weight:500}.template-editor-form .role-checkboxes-inline .checkbox-label:hover{border-color:var(--accent-orange-hover, #e55a2b);background:var(--warm-tint-bg, #fff7ed)}.template-editor-form .role-checkboxes-inline .checkbox-label:has(input:checked){border-color:var(--accent-orange, #FE6B34);background:var(--accent-orange, #FE6B34);color:var(--text-inverse, white)}.template-editor-form .role-checkboxes-inline .checkbox-label input[type=checkbox]{width:16px;height:16px;margin:0;accent-color:var(--accent-orange, #FE6B34);cursor:pointer}.template-editor-form .role-checkboxes-inline .checkbox-label:has(input:checked) input[type=checkbox]{accent-color:var(--text-inverse, white)}.template-view-meta{display:flex;flex-wrap:wrap;gap:16px;padding:10px 14px;background-color:var(--bg-secondary, #f9fafb);border-radius:6px;font-size:13px}.template-view-meta-item{color:var(--text-secondary, #6b7280)}.template-view-meta-item strong{color:var(--text-primary, #111827);margin-right:4px}.template-view-sections{display:flex;flex-direction:column;gap:12px;align-items:center}.template-view-section{background:var(--bg-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;padding:12px;width:100%;max-width:600px}.template-view-section h4{font-size:12px;font-weight:600;color:var(--text-secondary, #6b7280);margin:0 0 8px;text-transform:uppercase;letter-spacing:.5px}.template-view-body{font-size:13px;line-height:1.5;color:var(--text-primary, #374151);text-align:left}.template-view-body p{margin:0 0 8px}.template-view-body p:last-child{margin-bottom:0}.template-view-body-text{font-size:13px;line-height:1.5;color:var(--text-primary, #374151);white-space:pre-wrap;text-align:left}.template-editor-modal{overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.capitalize{text-transform:capitalize}@media(max-width:768px){.template-editor-modal{max-height:calc(100dvh - 1rem)}.template-editor-modal .modal-body{overflow:visible}.template-editor-form .form-row-inline{flex-direction:column;gap:8px}.template-editor-form .email-editors-row,.template-editor-form .sms-editors-row{grid-template-columns:1fr}.template-editor-form .permissions-row{flex-direction:column;align-items:flex-start;gap:8px}}.template-list{display:flex;flex-direction:column;gap:10px}.template-item{padding:15px;border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;cursor:pointer;transition:all .2s ease}.template-item:hover{background-color:var(--surface-hover, #f5f5f5);border-color:var(--accent-orange-hover, #e55a2b)}.notification-center{padding:20px}.message-composer{padding:15px;border:1px solid var(--border-primary, #e5e7eb);border-radius:8px}.message-composer textarea{width:100%;min-height:50px;padding:10px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;font-family:inherit;background:var(--input-bg, white);color:var(--text-primary, #374151)}.message-composer button{margin-top:10px}.template-editor-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:24px;padding-top:24px;border-top:1px solid var(--border-primary, #e5e7eb)}.template-editor-actions-right{display:flex;gap:12px}.cancel-button{padding:8px 16px;background-color:transparent;color:var(--text-secondary, #6b7280);border:1px solid var(--border-primary, #d1d5db);border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease}.cancel-button:hover:not(:disabled){background-color:var(--surface-hover, #f3f4f6);border-color:var(--text-tertiary, #9ca3af)}.cancel-button:disabled{opacity:.6;cursor:not-allowed}.preview-button{padding:8px 16px;background-color:transparent;color:var(--accent-orange, #FE6B34);border:1px solid var(--accent-orange, #FE6B34);border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease}.preview-button:hover:not(:disabled){background-color:var(--warm-tint-bg, #fff7ed)}.preview-button:disabled{opacity:.6;cursor:not-allowed}.save-button{padding:8px 16px;background-color:var(--accent-orange, #FE6B34);color:var(--text-inverse, white);border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:background-color .2s ease}.save-button:hover:not(:disabled){background-color:var(--accent-orange-hover, #E55A2B)}.save-button:disabled{opacity:.6;cursor:not-allowed}.template-variables-info{display:flex;align-items:flex-start;gap:10px;margin-bottom:20px;padding:12px 16px;background-color:var(--bg-secondary);border:1px solid var(--card-border, var(--border-primary));border-radius:6px}.template-variables-icon{font-size:16px;flex-shrink:0}.template-variables-content{flex:1}.template-variables-info .template-variables-title{margin:0 0 4px;font-weight:600;font-size:13px;color:var(--text-primary, #1f2937)}.template-variables-info .template-variables-text{margin:0;font-size:12px;color:var(--accent-orange, #FE6B34);font-family:Courier New,monospace}.template-editor-form .input-error{border-color:var(--error-color, #dc2626)}.template-editor-form .field-error{display:block;font-size:11px;color:var(--error-text, #dc2626);margin-top:4px}.template-editor-error{color:var(--error-text, #dc2626);margin-bottom:16px;padding:12px;background-color:var(--error-bg, #fef2f2);border:1px solid var(--error-border, #fecaca);border-radius:6px}.tox-tinymce{margin-bottom:4px}.tox .tox-statusbar{display:none}.template-editor-placeholder{height:220px;display:flex;align-items:center;justify-content:center;background:var(--input-bg, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;color:var(--text-tertiary, #6b7280);font-size:14px}.template-mobile-panel{padding:14px}@media(max-width:768px){body.mtd-shell-active .template-manager{padding:12px 14px 88px}body.mtd-shell-active .template-manager .template-manager-header{flex-direction:column;align-items:stretch;gap:10px}body.mtd-shell-active .template-manager .template-manager-header h1{font-size:22px}body.mtd-shell-active .template-manager .templates-grid{grid-template-columns:1fr;gap:10px}body.mtd-shell-active .template-manager .template-card{padding:14px}}.modal-overlay{position:fixed;inset:0;background:var(--modal-overlay, rgba(0, 0, 0, .6));display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:modal-overlay-fade-in .2s ease-out}@keyframes modal-overlay-fade-in{0%{opacity:0}to{opacity:1}}.modal,.modal-content{background:var(--modal-bg, white);border-radius:12px;box-shadow:var(--modal-shadow);position:relative;display:flex;flex-direction:column;max-height:90vh;min-height:0;overflow:hidden;animation:modal-slide-in .2s ease-out}@keyframes modal-slide-in{0%{opacity:0;transform:translateY(-20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-xs,.modal-content.modal-xs{width:100%;max-width:400px}.modal-sm,.modal-content.modal-sm{width:100%;max-width:500px}.modal-md,.modal-content.modal-md{width:100%;max-width:650px}.modal-lg,.modal-content.modal-lg{width:100%;max-width:900px}.modal-xl,.modal-content.modal-xl{width:100%;max-width:1200px}.modal-full,.modal-content.modal-full{width:95vw;max-width:95vw}.modal-close,.modal-close-x,.modal-close-btn{position:absolute;top:1rem;right:1rem;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background-color:transparent;border:none;border-radius:50%;cursor:pointer;color:var(--text-secondary, #6b7280);font-size:1.5rem;font-weight:300;line-height:1;padding:0;z-index:10;transition:all .15s ease}.modal-close:hover,.modal-close-x:hover,.modal-close-btn:hover{color:var(--text-primary, #374151)}.modal-close:focus,.modal-close-x:focus,.modal-close-btn:focus{outline:none;box-shadow:0 0 0 2px var(--focus-ring, rgba(254, 107, 52, .4))}.modal-close:active,.modal-close-x:active,.modal-close-btn:active{transform:scale(.95)}.modal-close svg,.modal-close-x svg,.modal-close-btn svg{width:18px;height:18px;flex-shrink:0}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 3.5rem 1.25rem 1.5rem;border-bottom:1px solid var(--card-divider, var(--border-primary, #e5e7eb));background:transparent;border-radius:12px 12px 0 0;flex-shrink:0}.modal-title,.modal-header h2,.modal-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary, #1f2937);line-height:1.4}.modal-subtitle{margin:.25rem 0 0;font-size:.875rem;color:var(--text-secondary, #6b7280);font-weight:400}.modal>form,.modal-content>form{display:flex;flex-direction:column;overflow:hidden;min-height:0;flex:1}.modal-body{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:1.5rem;color:var(--text-on-panel, var(--text-primary, #374151));background:var(--modal-bg, white)}.modal-body:first-child{padding-top:3rem;border-radius:12px 12px 0 0}.modal-body:last-child{border-radius:0 0 12px 12px}.modal-body:only-child{border-radius:12px;padding-top:3rem}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--card-divider, var(--border-primary, #e5e7eb));background:var(--modal-bg, white);border-radius:0 0 12px 12px;flex-shrink:0}.modal-footer-left{margin-right:auto;display:flex;align-items:center;gap:.5rem}.modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;margin-top:1.5rem}@media(max-width:1280px){.modal-xl,.modal-content.modal-xl{max-width:95%}}@media(max-width:768px){.modal-overlay{align-items:flex-start;overflow-y:auto;padding:.5rem}.modal,.modal-content{max-height:95vh;margin:auto 0}.modal-xs,.modal-sm,.modal-md,.modal-lg,.modal-xl,.modal-full,.modal-content.modal-xs,.modal-content.modal-sm,.modal-content.modal-md,.modal-content.modal-lg,.modal-content.modal-xl,.modal-content.modal-full{width:100%;max-width:100%}.modal-header{padding:1rem 3rem 1rem 1rem}.modal-body{padding:1rem}.modal-footer{padding:1rem;flex-wrap:wrap}.modal-close,.modal-close-x,.modal-close-btn{top:.75rem;right:.75rem}}@media(max-width:480px){.modal-footer{flex-direction:column-reverse}.modal-footer .btn{width:100%}.modal-footer-left{margin-right:0;width:100%;justify-content:center}}@media(prefers-reduced-motion:reduce){.modal-overlay,.modal,.modal-content{animation:none}.modal-close,.modal-close-x,.modal-close-btn{transition:none}}.modal-body-flush{padding:0}.modal-body-scroll{max-height:60vh;overflow-y:auto}.modal-body-centered{display:flex;flex-direction:column;align-items:center;text-align:center}.modal-loading{position:absolute;inset:0;background:var(--modal-bg, white);opacity:.9;display:flex;align-items:center;justify-content:center;border-radius:12px;z-index:20}.cfm-root{padding:32px 36px 40px;max-width:1320px;margin:0 auto;color:var(--text-primary, #1f2937)}.cfm-loading{display:flex;align-items:center;gap:12px;padding:60px 0;justify-content:center;color:var(--text-secondary, #6b7280)}.cfm-error{background:var(--error-bg, #fee2e2);color:var(--error-text, #991b1b);border:1px solid var(--error-border, #fecaca);border-radius:8px;padding:12px 16px;margin:20px 0;font-size:14px}.cfm-hero{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:28px;margin-bottom:28px}.cfm-eyebrow{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-orange, #FE6B34);margin-bottom:8px}.cfm-hero-title{margin:0;font-size:38px;font-weight:700;letter-spacing:-.02em;line-height:1.1;color:var(--text-primary, #1f2937)}.cfm-hero-title-muted{color:var(--text-secondary, #6b7280)}.cfm-hero-subtitle{margin:14px 0 22px;font-size:14px;color:var(--text-secondary, #6b7280);max-width:520px;line-height:1.55}.cfm-hero-actions{display:flex;gap:10px}.cfm-completion-panel{background:var(--card-background, #ffffff);border:1px solid var(--card-border, var(--border-primary, #e5e7eb));border-radius:14px;padding:22px;box-shadow:0 1px 3px #0000000f}.cfm-completion-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.cfm-completion-eyebrow{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary, #6b7280)}.cfm-completion-period{font-size:11px;color:var(--text-tertiary, #9ca3af)}.cfm-completion-stat{display:flex;align-items:flex-end;gap:14px;margin-bottom:16px}.cfm-completion-number{font-size:46px;font-weight:700;letter-spacing:-.02em;line-height:1;color:var(--text-primary, #1f2937)}.cfm-completion-unit{font-size:22px;color:var(--text-secondary, #6b7280);margin-left:2px}.cfm-completion-meta{font-size:12px;color:var(--text-secondary, #6b7280);padding-bottom:6px}.cfm-completion-delta{color:var(--success-color, #22b07a);font-weight:600}.cfm-completion-chart{display:flex;align-items:flex-end;gap:4px;height:42px;margin-bottom:8px}.cfm-chart-bar{flex:1;border-radius:2px;background:var(--chip-orange-bg, rgba(254, 107, 52, .18));min-height:3px;transition:background .2s ease}.cfm-chart-bar-current{background:var(--accent-orange, #FE6B34)}.cfm-completion-axis{display:flex;justify-content:space-between;font-size:10px;color:var(--text-tertiary, #9ca3af);margin-top:4px}.cfm-quick-create{display:none;margin:4px 0 18px}.cfm-quick-create-eyebrow{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary, #6b7280);margin:0 4px 10px}.cfm-quick-create-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.cfm-quick-tile{display:flex;flex-direction:column;align-items:center;gap:6px;padding:11px 6px;border-radius:11px;background:var(--card-background, #ffffff);border:1px solid var(--card-border, var(--border-primary, #e5e7eb));color:var(--text-primary, #1f2937);font:inherit;font-size:10.5px;font-weight:600;cursor:pointer;transition:border-color .2s ease}.cfm-quick-tile:hover{border-color:var(--accent-orange-hover, var(--accent-orange, #FE6B34))}.cfm-quick-tile-icon{width:32px;height:32px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;background:var(--chip-orange-bg, rgba(254, 107, 52, .14));color:var(--accent-orange, #FE6B34)}.cfm-quick-tile.cfm-type-liability .cfm-quick-tile-icon{background:#ec5a6a24;color:#ec5a6a}.cfm-quick-tile.cfm-type-questionnaire .cfm-quick-tile-icon{background:#9d6cff24;color:#9d6cff}.cfm-quick-tile.cfm-type-media .cfm-quick-tile-icon{background:#3a8efb24;color:#3a8efb}.cfm-quick-tile-label{text-align:center;line-height:1.15;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.cfm-needs-panel{background:var(--warm-tint-bg, #fff7ed);border:1px solid var(--warm-tint-border, #fed7aa);border-radius:14px;padding:18px 20px;margin-bottom:28px;display:grid;grid-template-columns:minmax(0,1.5fr) auto;gap:18px;align-items:center}.cfm-needs-eyebrow{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-orange, #FE6B34);margin-bottom:4px}.cfm-needs-headline{display:flex;align-items:baseline;gap:10px;margin-bottom:10px}.cfm-needs-count{font-size:32px;font-weight:700;letter-spacing:-.02em;line-height:1;color:var(--text-primary, #1f2937)}.cfm-needs-text{font-size:14px;color:var(--text-secondary, #6b7280)}.cfm-needs-avatars{display:flex;align-items:center;gap:0}.cfm-needs-avatar{width:30px;height:30px;border-radius:999px;background:var(--accent-orange, #FE6B34);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;border:2px solid var(--card-background, #ffffff);margin-left:-6px}.cfm-needs-avatar:first-child{margin-left:0}.cfm-needs-overflow{margin-left:10px;font-size:12px;color:var(--text-secondary, #6b7280)}.cfm-needs-actions{display:flex;align-items:center;justify-content:flex-end}.cfm-needs-list{grid-column:1 / -1;list-style:none;padding:0;margin:14px 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:10px}.cfm-needs-list-item{display:flex;align-items:center;gap:12px;padding:10px 12px;background:var(--card-background, #ffffff);border:1px solid var(--card-border, var(--border-primary, #e5e7eb));border-radius:10px}.cfm-needs-list-avatar{width:28px;height:28px;border-radius:999px;background:var(--accent-orange, #FE6B34);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;flex:0 0 auto}.cfm-needs-list-meta{flex:1;min-width:0;display:flex;flex-direction:column}.cfm-needs-list-name{font-size:13px;font-weight:600;color:var(--text-primary, #1f2937);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cfm-needs-list-forms{font-size:11px;color:var(--text-tertiary, #9ca3af);margin-top:1px}.cfm-section{margin-top:28px}.cfm-section-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:14px}.cfm-section-title{margin:0;font-size:16px;font-weight:700;color:var(--text-primary, #1f2937)}.cfm-section-sub{margin:3px 0 0;font-size:12px;color:var(--text-tertiary, #9ca3af)}.cfm-empty{background:var(--card-background, #ffffff);border:1px dashed var(--border-primary, #e5e7eb);border-radius:12px;padding:32px;text-align:center;color:var(--text-secondary, #6b7280);display:flex;flex-direction:column;align-items:center;gap:12px}.cfm-active-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.cfm-active-card{position:relative;background:var(--card-background, #ffffff);border:1px solid var(--card-border, var(--border-primary, #e5e7eb));border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:12px;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease}.cfm-active-card:hover{border-color:var(--accent-orange-hover, var(--accent-orange, #FE6B34));box-shadow:0 4px 12px #0000000f}.cfm-active-card-hairline{position:absolute;top:0;left:0;right:0;height:2px;background:var(--accent-orange, #FE6B34)}.cfm-active-card.cfm-type-liability .cfm-active-card-hairline{background:#ec5a6a}.cfm-active-card.cfm-type-questionnaire .cfm-active-card-hairline{background:#9d6cff}.cfm-active-card.cfm-type-media .cfm-active-card-hairline{background:#3a8efb}.cfm-active-card.cfm-type-custom .cfm-active-card-hairline{background:var(--accent-orange, #FE6B34)}.cfm-active-card-head{display:flex;align-items:flex-start;gap:12px}.cfm-type-icon{width:42px;height:42px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;background:var(--chip-orange-bg, rgba(254, 107, 52, .14));color:var(--accent-orange, #FE6B34)}.cfm-type-liability .cfm-type-icon{background:#ec5a6a24;color:#ec5a6a}.cfm-type-questionnaire .cfm-type-icon{background:#9d6cff24;color:#9d6cff}.cfm-type-media .cfm-type-icon{background:#3a8efb24;color:#3a8efb}.cfm-active-card-titles{min-width:0;flex:1}.cfm-type-eyebrow{font-size:9.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:2px;color:var(--accent-orange, #FE6B34)}.cfm-type-liability .cfm-type-eyebrow{color:#ec5a6a}.cfm-type-questionnaire .cfm-type-eyebrow{color:#9d6cff}.cfm-type-media .cfm-type-eyebrow{color:#3a8efb}.cfm-active-card-title{margin:0;font-size:14px;font-weight:700;line-height:1.3;color:var(--text-primary, #1f2937);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.cfm-active-card-chips{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.cfm-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font-size:10.5px;font-weight:600;letter-spacing:.02em}.cfm-chip-required{background:#fe6b341a;border:1px solid rgba(254,107,52,.28);color:var(--accent-orange, #FE6B34)}.cfm-chip-signature{background:var(--surface-secondary, #f3f4f6);color:var(--text-secondary, #6b7280)}.cfm-chip-pending{background:var(--warning-bg, #fef9ec);border:1px solid var(--warning-border, #f5d87a);color:var(--warning-text, #7a5c00)}.cfm-active-card-progress{padding-top:8px;border-top:1px solid var(--border-primary, #e5e7eb)}.cfm-progress-header{display:flex;justify-content:space-between;font-size:11px;color:var(--text-secondary, #6b7280);margin-bottom:5px}.cfm-progress-counts{font-weight:700;color:var(--text-primary, #1f2937)}.cfm-progress-track{height:5px;border-radius:3px;background:var(--surface-secondary, #f3f4f6);overflow:hidden}.cfm-progress-fill{height:100%;background:var(--accent-orange, #FE6B34);border-radius:3px;transition:width .4s ease}.cfm-type-liability .cfm-progress-fill{background:#ec5a6a}.cfm-type-questionnaire .cfm-progress-fill{background:#9d6cff}.cfm-type-media .cfm-progress-fill{background:#3a8efb}.cfm-progress-footer{display:flex;justify-content:space-between;font-size:10.5px;color:var(--text-tertiary, #9ca3af);margin-top:6px}.cfm-active-card-actions{display:flex;gap:6px;flex-wrap:wrap}.cfm-bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:32px;align-items:start}.cfm-side-panel{background:var(--card-background);border:1px solid var(--card-border, var(--border-primary));border-radius:12px;padding:16px;display:flex;flex-direction:column;min-height:0;max-height:min(640px,max(360px,calc(100dvh - 280px)))}.cfm-drafts-panel{border-style:dashed}.cfm-side-panel-head{display:flex;align-items:baseline;gap:10px;margin-bottom:12px}.cfm-side-panel-title{margin:0;font-size:14px;font-weight:700;color:var(--text-primary, #1f2937)}.cfm-side-panel-count{font-size:11px;color:var(--text-tertiary, #9ca3af);font-weight:600}.cfm-side-panel-note{margin-left:auto;font-size:11px;color:var(--text-tertiary, #9ca3af)}.cfm-side-panel-subhead{display:flex;align-items:baseline;gap:8px;padding:6px 2px 2px;border-top:1px solid var(--border-primary, #e5e7eb);margin-top:4px}.cfm-side-panel-subhead:first-child{border-top:none;margin-top:0;padding-top:0}.cfm-side-panel-subhead-label{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary, #6b7280)}.cfm-side-panel-subhead-note{font-size:10.5px;color:var(--text-tertiary, #9ca3af)}.cfm-side-panel-body{display:flex;flex-direction:column;gap:8px;overflow-y:auto;min-height:0;flex:1 1 auto;padding-right:2px}.cfm-draft-row,.cfm-archive-row{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:9px;background:var(--surface-secondary, #f9fafb);border:1px solid transparent;flex-wrap:wrap}.cfm-draft-row-inactive{opacity:.85}.cfm-draft-icon{width:32px;height:32px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;background:var(--chip-orange-bg, rgba(254, 107, 52, .14));color:var(--accent-orange, #FE6B34)}.cfm-draft-icon.cfm-type-liability{background:#ec5a6a24;color:#ec5a6a}.cfm-draft-icon.cfm-type-questionnaire{background:#9d6cff24;color:#9d6cff}.cfm-draft-icon.cfm-type-media{background:#3a8efb24;color:#3a8efb}.cfm-draft-meta{flex:1;min-width:0;display:flex;flex-direction:column}.cfm-draft-title{font-size:13px;font-weight:600;color:var(--text-primary, #1f2937);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cfm-draft-version{font-size:10px;color:var(--text-tertiary, #9ca3af);font-weight:500;margin-left:4px}.cfm-draft-sub{font-size:11px;color:var(--text-tertiary, #9ca3af);margin-top:2px}.cfm-icon-btn{width:30px;height:30px;border-radius:7px;border:1px solid var(--border-primary, #e5e7eb);background:transparent;color:var(--text-secondary, #6b7280);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .2s ease,color .2s ease}.cfm-icon-btn:hover{background:var(--surface-hover, rgba(0, 0, 0, .05));color:var(--error-color, #ef4444)}.cfm-add-draft{padding:11px 12px;border-radius:9px;background:transparent;border:1px dashed var(--border-primary, #e5e7eb);color:var(--text-secondary, #6b7280);font-size:12.5px;font-family:inherit;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:border-color .2s ease,color .2s ease}.cfm-add-draft:hover:not(:disabled){border-color:var(--accent-orange, #FE6B34);color:var(--accent-orange, #FE6B34)}.cfm-add-draft:disabled{cursor:default;opacity:.6}.cfm-archive-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:18px 8px;color:var(--text-tertiary, #9ca3af);font-size:12.5px;text-align:center}@media(max-width:960px){.cfm-hero,.cfm-bottom-grid{grid-template-columns:1fr}.cfm-side-panel{max-height:none}.cfm-side-panel-body{overflow-y:visible}}@media(max-width:768px){.cfm-root{padding:16px 16px 96px}.cfm-quick-create{display:block}.cfm-hero-actions{display:none}.cfm-hero-title{font-size:28px}.cfm-needs-panel{grid-template-columns:1fr;gap:12px}.cfm-needs-actions{justify-content:flex-start}.cfm-active-grid{grid-template-columns:1fr}.cfm-active-card-actions{display:grid;grid-template-columns:1fr 1fr}.cfm-draft-meta{flex:1 1 100%;min-width:0}.cfm-draft-row .btn,.cfm-archive-row .btn{flex:1 1 auto}body.mtd-shell-active .cfm-root{padding-bottom:96px}}.consent-form-editor{background:var(--input-bg);color:var(--text-primary, #333);border:1px solid var(--border-primary, #ccc);border-top:none;min-height:200px;padding:12px;font-size:14px;line-height:1.5;text-align:left;border-bottom-left-radius:8px;border-bottom-right-radius:8px;position:relative;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.consent-form-editor:focus,.consent-form-editor:focus-visible{outline:none;border-color:var(--input-focus-border, var(--accent-orange));box-shadow:0 0 0 3px var(--focus-ring, rgba(254, 107, 52, .15))}.consent-form-editor:empty:before{content:attr(data-placeholder);color:var(--text-tertiary, #9ca3af);pointer-events:none;position:absolute;top:12px;left:12px;-webkit-user-select:none;user-select:none}.consent-form-editor.error{border-color:var(--error-color, #ef4444)}.wysiwyg-toolbar{background:var(--surface-secondary, #f8f9fa);border:1px solid var(--border-primary, #ccc);padding:8px 12px;display:flex;gap:6px;align-items:center;flex-wrap:wrap;border-top-left-radius:8px;border-top-right-radius:8px}.wysiwyg-button{background:transparent;color:var(--text-primary, #333);border:1px solid transparent;padding:4px 8px;cursor:pointer;border-radius:4px;font-size:14px;min-width:28px;transition:background-color .15s,border-color .15s,color .15s}.wysiwyg-button:hover{background:var(--surface-hover, rgba(0, 0, 0, .05))}.wysiwyg-button.is-active{background:var(--chip-orange-bg, rgba(254, 107, 52, .14));border-color:var(--accent-orange, #FE6B34);color:var(--accent-orange, #FE6B34)}.type-badge{display:inline-block;padding:.2rem .6rem;border-radius:12px;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.type-photo-video{background:var(--chip-teal-bg, rgba(14, 116, 144, .12));color:var(--chip-teal-text, #0e7490)}.type-liability{background:var(--warning-bg, #fffbeb);color:var(--warning-text, #92400e)}.type-custom{background:var(--chip-purple-bg, #eee9f5);color:var(--text-secondary, #6b7280)}.consent-records{padding:2rem;max-width:min(100%,1200px);margin:0 auto}.consent-records-loading{text-align:center;padding:3rem;color:#666}.records-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.records-header h3{margin:0 0 .5rem;font-size:1.75rem;color:#1a1a1a}.records-header p{margin:0;color:#666}.records-list{display:flex;flex-direction:column;gap:1.5rem}.consent-group{background:var(--card-background, white);border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.consent-group-header{padding:1.5rem;background:var(--input-bg, #f8f9fa);border-bottom:1px solid var(--card-divider, #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:var(--text-primary, #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:var(--text-on-panel, #666);background:var(--surface-secondary, #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:var(--surface-secondary, #f8f9fa)}.consent-records-table th{padding:1rem;text-align:left;font-weight:600;color:var(--text-on-panel, #495057);font-size:.875rem;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e9ecef}.consent-records-table td{padding:1rem;border-bottom:1px solid #e9ecef}.consent-records-table tbody tr:hover{background:var(--table-row-hover)}.date-cell{display:flex;flex-direction:column;gap:.25rem}.date-cell .date{font-weight:500;color:var(--text-primary, #1a1a1a)}.date-cell .time{font-size:.875rem;color:var(--text-tertiary, #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:var(--input-bg, #f8f9fa);padding:.25rem .5rem;border-radius:4px;color:var(--text-on-panel, #495057)}.no-signature{color:var(--text-tertiary, #999);font-style:italic;font-size:.875rem}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;border-radius:8px;max-width:min(100%,600px);width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px #0000004d}.modal-header{padding:1.5rem 0;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;align-items:center}.modal-header h3{margin:0;font-size:1.5rem;color:#1a1a1a}.modal-body{padding:1.5rem}.signature-details{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:var(--input-bg, #f8f9fa);border-radius:6px}.detail-label{font-weight:600;color:var(--text-on-panel, #495057)}.detail-value{color:var(--text-primary, #1a1a1a)}.detail-value.granted{color:#28a745;font-weight:500}.detail-value.denied{color:#dc3545;font-weight:500}.signature-display{border:2px solid #4a90e2;border-radius:6px;padding:1rem;background:#fff;display:flex;justify-content:center;align-items:center}.signature-image{max-width:100%;height:auto;display:block}.modal-footer{padding:1.5rem;border-top:1px solid #e9ecef;display:flex;justify-content:flex-end;gap:.75rem}@media(max-width:768px){.consent-records{padding:1rem}.records-header{flex-direction:column;align-items:flex-start;gap:1rem}.records-header .btn{width:100%}.consent-group-header{flex-direction:column;align-items:flex-start;gap:.75rem}.group-title{flex-direction:column;align-items:flex-start;gap:.5rem}.consent-records-table{overflow-x:scroll}.consent-records-table table{min-width:min(100%,600px)}.modal-content{margin:1rem;max-height:calc(100vh - 2rem)}.detail-row{flex-direction:column;align-items:flex-start;gap:.5rem}}@media print{.records-header .btn,.consent-records-table .btn{display:none}.consent-group{box-shadow:none;border:1px solid #ddd;page-break-inside:avoid}.modal-overlay{display:none}}.ccfp-root{padding:24px 28px 80px;max-width:980px;margin:0 auto;color:var(--text-primary, #1f2937)}.ccfp-root--mobile{padding:16px 16px 96px}body.mtd-shell-active .ccfp-root{padding-bottom:96px}.ccfp-loading{display:flex;align-items:center;gap:12px;justify-content:center;padding:60px 20px;color:var(--text-secondary, #6b7280)}.ccfp-error{margin-bottom:16px;padding:12px 16px;background:var(--error-bg, #fee2e2);color:var(--error-text, #991b1b);border:1px solid var(--error-border, #fecaca);border-radius:8px;font-size:14px}.ccfp-hero{margin-bottom:24px}.ccfp-eyebrow{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-orange, #FE6B34);margin-bottom:6px}.ccfp-title{margin:0;font-size:28px;font-weight:700;letter-spacing:-.02em;line-height:1.15;color:var(--text-primary, #1f2937)}.ccfp-subtitle{margin:8px 0 0;font-size:14px;color:var(--text-secondary, #6b7280);max-width:540px;line-height:1.55}.ccfp-section{margin-top:24px}.ccfp-section-eyebrow{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary, #9ca3af);margin:0 0 10px}.ccfp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px}.ccfp-empty{background:var(--card-background, #ffffff);border:1px dashed var(--border-primary, #e5e7eb);border-radius:12px;padding:32px;text-align:center;color:var(--text-secondary, #6b7280)}.ccfp-card-tile{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px 18px;background:var(--card-background, #ffffff);border:1px solid var(--card-border, var(--border-primary, #e5e7eb));border-radius:14px;overflow:hidden;box-shadow:var(--ccfp-card-tile-shadow);transition:border-color .2s ease,box-shadow .2s ease}.ccfp-card-tile:hover{border-color:var(--accent-orange-hover, var(--accent-orange, #FE6B34));box-shadow:0 4px 12px #0000000f}.ccfp-card-tile.is-completed{opacity:.85}.ccfp-card-hairline{position:absolute;top:0;left:0;bottom:0;width:3px;background:var(--accent-orange, #FE6B34)}.ccfp-card-tile.ccfp-type-liability .ccfp-card-hairline{background:#ec5a6a}.ccfp-card-tile.ccfp-type-questionnaire .ccfp-card-hairline{background:#9d6cff}.ccfp-card-tile.ccfp-type-media .ccfp-card-hairline{background:#3a8efb}.ccfp-card-tile-icon{width:42px;height:42px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;background:var(--chip-orange-bg, rgba(254, 107, 52, .14));color:var(--accent-orange, #FE6B34)}.ccfp-card-tile.ccfp-type-liability .ccfp-card-tile-icon{background:#ec5a6a24;color:#ec5a6a}.ccfp-card-tile.ccfp-type-questionnaire .ccfp-card-tile-icon{background:#9d6cff24;color:#9d6cff}.ccfp-card-tile.ccfp-type-media .ccfp-card-tile-icon{background:#3a8efb24;color:#3a8efb}.ccfp-card-tile-body{min-width:0;display:flex;flex-direction:column;gap:2px}.ccfp-card-tile-eyebrow{font-size:9.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-orange, #FE6B34)}.ccfp-card-tile.ccfp-type-liability .ccfp-card-tile-eyebrow{color:#ec5a6a}.ccfp-card-tile.ccfp-type-questionnaire .ccfp-card-tile-eyebrow{color:#9d6cff}.ccfp-card-tile.ccfp-type-media .ccfp-card-tile-eyebrow{color:#3a8efb}.ccfp-card-tile-title{margin:0;font-size:14.5px;font-weight:700;color:var(--text-primary, #1f2937);line-height:1.25;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.ccfp-card-tile-meta{margin-top:4px;display:flex;gap:8px}.ccfp-card-tile-status{display:inline-flex;align-items:center;gap:4px;font-size:11.5px;color:var(--text-secondary, #6b7280)}.ccfp-card-tile-status--done{color:var(--success-color, #22b07a);font-weight:600}.ccfp-card-tile-action{display:inline-flex;align-items:center;gap:4px;padding:9px 14px;border-radius:8px;background:var(--accent-orange, #FE6B34);color:#fff;border:none;font:inherit;font-size:12.5px;font-weight:700;cursor:pointer;flex:0 0 auto;transition:background .2s ease}.ccfp-card-tile-action:hover{background:var(--accent-orange-hover, #ef5b25)}.is-completed .ccfp-card-tile-action{background:transparent;color:var(--accent-orange, #FE6B34);border:1px solid var(--accent-orange, #FE6B34)}.ccfp-modal .modal-body{padding:0}.ccfp-card{background:#fff;color:#1a2233;border-radius:14px;overflow:hidden;box-shadow:var(--ccfp-card-shadow);filter:var(--ccfp-card-filter);font-family:-apple-system,BlinkMacSystemFont,Inter,system-ui,sans-serif}.ccfp-card-header{padding:24px 26px 18px;background:linear-gradient(135deg,#fff8f0,#fff 60%);border-bottom:1px solid #f0eadd}.ccfp-brand{display:flex;align-items:center;gap:9px;margin-bottom:12px}.ccfp-brand-mark{width:28px;height:28px;border-radius:7px;background:#ef8a4a;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:13px}.ccfp-brand-name{font-size:12px;font-weight:700;color:#1a2233}.ccfp-type-tag{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:999px;font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:#ef8a4a24;color:#ef8a4a}.ccfp-type-tag.ccfp-type-liability{background:#ec5a6a24;color:#ec5a6a}.ccfp-type-tag.ccfp-type-questionnaire{background:#9d6cff24;color:#9d6cff}.ccfp-type-tag.ccfp-type-media{background:#3a8efb24;color:#3a8efb}.ccfp-card-title{margin:8px 0 0;font-size:22px;font-weight:700;letter-spacing:-.01em;color:#1a2233;line-height:1.2}.ccfp-card-progress{display:flex;align-items:center;gap:6px;margin-top:18px}.ccfp-card-progress-bar{flex:1;height:4px;border-radius:2px;background:#ece6da}.ccfp-card-progress-bar.is-done{background:#ef8a4a;opacity:.55}.ccfp-card-progress-bar.is-current{background:#ef8a4a}.ccfp-card-progress-text{font-size:10.5px;color:#98a1b1;font-weight:600;margin-left:6px}.ccfp-card-body{padding:22px 26px 24px}.ccfp-rich-content{font-size:14px;color:#1a2233;line-height:1.65}.ccfp-rich-content *{background:transparent!important}.ccfp-signature-group{margin-top:22px;padding:16px;border:1px dashed #e6dfd2;border-radius:10px;background:#fffaf3}.ccfp-signature-label{display:block;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#98a1b1;margin-bottom:8px}.ccfp-signature-input{width:100%;padding:10px 12px;border-radius:8px;background:#fff;border:1px solid #e6dfd2;color:#1a2233;font:inherit;font-size:14px;box-sizing:border-box}.ccfp-signature-input:focus{outline:none;border-color:#ef8a4a}.ccfp-signature-hint{margin:8px 0 0;font-size:11.5px;color:#98a1b1}.ccfp-empty-inline{margin:0;padding:20px 0;text-align:center;color:#98a1b1;font-size:13px}.ccfp-locked-notice{padding:12px 14px;border-radius:10px;background:#fff8e6;border:1px solid #fde68a;color:#7a5c00;font-size:13px;margin-bottom:16px}.ccfp-section-eyebrow--card{font-size:11.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#98a1b1;margin-bottom:4px}.ccfp-section-title{font-size:17px;font-weight:700;color:#1a2233;margin-bottom:4px}.ccfp-section-desc{margin:0 0 14px;font-size:13px;color:#6b7689}.ccfp-progress-track{height:4px;border-radius:2px;background:#ece6da;overflow:hidden;margin:12px 0 18px}.ccfp-progress-fill{height:100%;background:#ef8a4a;border-radius:2px;transition:width .4s ease}.ccfp-question{display:flex;flex-direction:column;gap:6px}.ccfp-question-label{font-size:13.5px;font-weight:700;color:#1a2233}.ccfp-required-mark{color:#ef8a4a;margin-left:4px}.ccfp-question-help{margin:0;font-size:12px;color:#6b7689}.ccfp-question-control input[type=text],.ccfp-question-control input[type=number],.ccfp-question-control input[type=date],.ccfp-question-control textarea{width:100%;padding:10px 12px;border-radius:8px;background:#fff;border:1px solid #e6dfd2;color:#1a2233;font:inherit;font-size:14px;box-sizing:border-box}.ccfp-question-control textarea{min-height:90px;resize:vertical}.ccfp-question-control input:focus,.ccfp-question-control textarea:focus{outline:none;border-color:#ef8a4a}.ccfp-question-control label{display:flex;align-items:center;gap:9px;padding:9px 12px;border:1px solid #e6dfd2;border-radius:8px;font-size:13px;background:#fff;color:#1a2233;cursor:pointer;margin-bottom:6px}.ccfp-question-control label:hover{border-color:#ef8a4a;background:#fffaf3}.ccfp-question-control input[type=radio],.ccfp-question-control input[type=checkbox]{accent-color:#ef8a4a}.ccfp-attachment-row{margin-top:16px;padding:14px;border-radius:10px;background:#fffaf3;border:1px solid #f3e9d6}.ccfp-attachment-label{font-size:12.5px;font-weight:700;color:#1a2233;margin-bottom:4px}.ccfp-attachment-optional{font-weight:500;color:#98a1b1}.ccfp-attachment-help{margin:0 0 10px;font-size:12px;color:#6b7689}.ccfp-file-input{font-size:12px;color:#1a2233}.ccfp-attachments-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.ccfp-attachment-chip{padding:4px 9px;border-radius:999px;background:#fff;border:1px solid #e6dfd2;font-size:11.5px;color:#1a2233;text-decoration:none}.ccfp-attachment-chip:hover{border-color:#ef8a4a;color:#ef8a4a}.ccfp-unsynced{margin:6px 0 0;font-size:11.5px;color:#98a1b1;font-style:italic}.ccfp-card-cta-row{display:flex;gap:8px;margin-top:22px}.ccfp-card-back-btn{display:inline-flex;align-items:center;gap:4px;padding:10px 16px;border-radius:7px;background:#fff;border:1px solid #e6dfd2;color:#6b7689;font:inherit;font-weight:600;font-size:13px;cursor:pointer}.ccfp-card-back-btn:disabled{opacity:.5;cursor:not-allowed}.ccfp-card-continue-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 16px;border-radius:7px;background:#ef8a4a;color:#fff;border:none;font:inherit;font-weight:700;font-size:13px;cursor:pointer}.ccfp-card-continue-btn:hover{background:#e1772f}.ccfp-save-later-link{display:block;width:100%;margin-top:12px;padding:8px;background:transparent;border:none;color:#6b7689;font:inherit;font-size:12.5px;cursor:pointer;text-decoration:underline}@media(max-width:600px){.ccfp-title{font-size:22px}.ccfp-card-tile{grid-template-columns:40px minmax(0,1fr);grid-template-rows:auto auto;gap:10px 12px}.ccfp-card-tile-action{grid-column:1 / -1;width:100%;justify-content:center}.ccfp-card-body{padding:18px 18px 22px}.ccfp-card-header{padding:20px 20px 16px}.ccfp-card-title{font-size:18px}}.training-resources-page{padding:2rem;max-width:min(100%,1200px);margin:0 auto}.training-resources-page .page-header{margin-bottom:2rem}.training-resources-page .page-header h1{color:var(--text-primary, #1f2937);margin-bottom:.5rem}.training-resources-page .page-header p{color:var(--header-description-color, #6b7280);font-size:1.1rem}.training-resources-page .category-filter{display:flex;gap:.5rem;margin-bottom:2rem;flex-wrap:wrap}.training-resources-page .category-filter.mobile-filter-region--collapsed{display:none}.training-resources-page .category-filter button{padding:.5rem 1rem;border:1px solid var(--border-primary, #e5e7eb);background:var(--surface-secondary, #f9fafb);border-radius:12px;cursor:pointer;transition:all .2s ease;font-weight:500;color:var(--text-secondary, #6b7280)}.training-resources-page .category-filter button:hover{border-color:var(--accent-orange-hover);background:var(--surface-hover, #f3f4f6);color:var(--text-primary, #1f2937)}.training-resources-page .category-filter button.active{background:var(--accent-orange);color:var(--text-inverse, #fff);border-color:var(--accent-orange)}.training-resources-page .resources-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem}.training-resources-page .resource-card{background:var(--card-background, #fff);border:1px solid transparent;border-radius:10px;padding:.85rem 1rem;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease;box-shadow:0 1px 3px #0000004d;position:relative;display:flex;flex-direction:column;gap:.45rem}.training-resources-page .resource-card:hover{border-color:var(--accent-orange-hover)}.training-resources-page .resource-card-header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:.75rem;min-width:0}.training-resources-page .resource-card-identity{display:flex;align-items:center;gap:.55rem;min-width:0;flex:1}.training-resources-page .resource-icon{color:var(--accent-orange);display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:7px;background:var(--chip-orange-bg, #fff3ed);flex:0 0 auto}.training-resources-page .resource-title{color:var(--text-primary, #1f2937);margin:0;font-size:.95rem;font-weight:600;line-height:1.25;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.training-resources-page .resource-description{color:var(--text-secondary, #6b7280);margin:0;line-height:1.4;font-size:.82rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.training-resources-page .resource-meta{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.training-resources-page .resource-category{background:var(--chip-orange-bg, #fff3ed);color:var(--accent-orange);padding:2px 9px;border-radius:999px;font-size:11px;font-weight:600}.training-resources-page .resource-type{background:var(--surface-secondary, #f9fafb);color:var(--text-secondary, #6b7280);padding:2px 8px;border-radius:6px;font-size:10px;font-weight:700;letter-spacing:.04em;flex:0 0 auto}.training-resources-page .resource-tags{display:flex;flex-wrap:wrap;gap:4px}.training-resources-page .tag{background:var(--chip-orange-bg, #fff3ed);color:var(--accent-orange);padding:1px 8px;border-radius:999px;font-size:11px;font-weight:500}.training-resources-page .no-resources{grid-column:1 / -1;text-align:center;padding:3rem;color:var(--text-tertiary, #9ca3af)}.training-resources-page .no-resources h3{color:var(--text-secondary, #6b7280);margin-bottom:1rem}.training-resources-page .loading,.training-resources-page .error{text-align:center;padding:3rem;font-size:1.1rem}.training-resources-page .error{color:var(--error-color, #ef4444)}.training-resources-page .loading{color:var(--text-tertiary, #9ca3af)}.training-resources-page .resource-card.opening{pointer-events:none;opacity:.7}.training-resources-page .resource-opening-overlay{position:absolute;inset:0;background:var(--card-background, #fff);opacity:.9;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;border-radius:12px;z-index:10;color:var(--text-primary, #1f2937);font-weight:500}.training-resources-page .opening-spinner{width:24px;height:24px;border:3px solid var(--border-primary, #e5e7eb);border-top-color:var(--accent-orange);border-radius:50%;animation:resource-spin .8s linear infinite}@keyframes resource-spin{to{transform:rotate(360deg)}}@media(max-width:768px){.training-resources-page{padding:1rem}.training-resources-page .resources-grid{grid-template-columns:1fr}.training-resources-page .category-filter{justify-content:center}}.training-resources-page--mobile{padding:12px 14px 88px}.training-resources-page--mobile .page-header{margin-bottom:12px}.training-resources-page--mobile .page-header h1{font-size:22px}.training-resources-page--mobile .page-header p{font-size:13px}.training-resources-page--mobile .category-filter{flex-wrap:wrap;gap:6px;margin-bottom:12px}.training-resources-page--mobile .resources-grid{grid-template-columns:1fr;gap:10px}.animal-list{width:100%}.animal-list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.animal-list-header h3{margin:0;font-size:1.5rem;color:#1a1a1a}.animals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.animal-card{border:1px solid #e9ecef;border-radius:8px;overflow:hidden;cursor:pointer;transition:all .2s;background:#fff}.animal-card:hover{box-shadow:0 4px 12px #0000001a}.animal-card:focus{outline:2px solid #4a90e2;outline-offset:2px}.animal-photo,.animal-photo-placeholder{width:100%;height:200px;object-fit:cover}.animal-photo-placeholder{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2)}.animal-icon{font-size:4rem;opacity:.8}.animal-card-content{padding:1rem}.animal-card-content h4{margin:0 0 .5rem;font-size:1.25rem;color:#1a1a1a}.animal-details{margin:0 0 1rem;color:#666;font-size:.95rem}.animal-goals-preview{margin-bottom:1rem;padding:.75rem;background:#f8f9fa;border-radius:6px;font-size:.875rem;color:#666}.animal-goals-preview strong{color:#1a1a1a}.animal-edit-btn{width:100%}.empty-state p{margin:0 0 1rem}@media(max-width:768px){.animals-grid{grid-template-columns:1fr}}.animal-profile{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden;max-width:800px;margin:0 auto}.animal-profile-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:2rem;display:flex;align-items:center;gap:2rem;flex-wrap:wrap}.animal-profile-photo,.animal-profile-photo-placeholder{width:150px;height:150px;border-radius:50%;object-fit:cover;border:4px solid white;box-shadow:0 4px 12px #0003}.animal-profile-photo-placeholder{display:flex;align-items:center;justify-content:center;background:#fff3}.animal-icon-large{font-size:4rem}.animal-profile-title{flex:1;min-width:200px}.animal-profile-title h2{margin:0 0 .5rem;font-size:2rem}.animal-profile-subtitle{margin:0;opacity:.9;font-size:1.1rem}.animal-profile-actions{display:flex;gap:.75rem;flex-wrap:wrap}.animal-profile-content{padding:2rem}.animal-info-section{margin-bottom:2rem}.animal-info-section:last-child{margin-bottom:0}.animal-info-section h3{margin:0 0 1rem;font-size:1.25rem;color:#1a1a1a;padding-bottom:.5rem;border-bottom:2px solid #e9ecef}.animal-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.animal-info-item{display:flex;flex-direction:column;gap:.5rem}.animal-info-item label{font-weight:600;color:#666;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.animal-info-item p{margin:0;color:#1a1a1a;font-size:1rem}.training-goals-list{list-style:none;padding:0;margin:0}.training-goal-item{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;background:#f8f9fa;border-radius:6px;margin-bottom:.5rem;color:#1a1a1a}.goal-bullet{color:#28a745;font-weight:700;font-size:1.25rem}.behavioral-notes{padding:1rem;background:#f8f9fa;border-radius:6px;border-left:4px solid #4a90e2}.behavioral-notes p{margin:0;color:#1a1a1a;line-height:1.6}.animal-profile .btn{padding:.5rem 1rem;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.animal-profile .btn-primary{background:#fff;color:#667eea}.animal-profile .btn-primary:hover{background:#ffffffe6}@media(max-width:768px){.animal-profile-header{flex-direction:column;text-align:center}.animal-profile-photo,.animal-profile-photo-placeholder{width:120px;height:120px}.animal-profile-actions{width:100%}.animal-profile-actions button{flex:1}.animal-profile-content{padding:1rem}.animal-info-grid{grid-template-columns:1fr}}.payment-history{padding:2rem;max-width:min(100%,1400px);margin:0 auto}.payment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.payment-header h2{margin:0 0 .5rem;font-size:2rem;color:#1a1a1a}.payment-header p{margin:0;color:#666}.account-balance-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:2rem;border-radius:8px;margin-bottom:2rem;box-shadow:0 4px 12px #0000001a}.balance-info{text-align:center}.balance-info label{display:block;font-size:1rem;opacity:.9;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:1px}.balance-amount{font-size:3rem;font-weight:700;margin-bottom:.5rem}.balance-amount.negative{color:#ffebee}.balance-amount.positive{color:#c8e6c9}.balance-note{margin:0;font-size:.95rem;opacity:.9}.payment-filters{background:#f8f9fa;padding:1.5rem;border-radius:8px;margin-bottom:2rem}.filter-row{display:flex;gap:1rem;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:.5rem;min-width:150px}.filter-group label{font-weight:500;color:#333;font-size:.875rem}.filter-input,.filter-select{padding:.5rem;border:1px solid #ddd;border-radius:6px;background:#fff;font-size:.95rem}.filter-input:focus,.filter-select:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.payment-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.summary-item{background:#fff;padding:1.5rem;border-radius:8px;box-shadow:0 1px 3px #0000001a;text-align:center}.summary-item label{display:block;font-size:.875rem;color:#666;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem}.summary-value{font-size:1.5rem;font-weight:700}.summary-value.paid{color:#28a745}.summary-value.pending{color:#ffc107}.summary-value.failed{color:#dc3545}.summary-value.refunded{color:#6c757d}.payment-table-container{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow-x:auto;margin-bottom:1.5rem}.payment-table{width:100%;border-collapse:collapse}.payment-table thead{background:#f8f9fa;border-bottom:2px solid #e9ecef}.payment-table th{padding:1rem;text-align:left;font-weight:600;color:#495057;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.payment-table td{padding:1rem;border-bottom:1px solid #e9ecef}.payment-row:hover{background:var(--table-row-hover)}.transaction-description{color:#1a1a1a;font-weight:500}.transaction-amount{font-weight:600;color:#1a1a1a}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:500;text-transform:capitalize}.status-paid{background:#d4edda;color:#155724}.status-failed{background:#f8d7da;color:#721c24}.status-refunded{background:#e2e3e5;color:#383d41}.pagination{display:flex;justify-content:center;align-items:center;gap:1rem;padding:1rem}.pagination-info{color:#666;font-size:.95rem}.empty-state-hint{font-size:.9rem;margin-top:.5rem}.error-message{background:#f8d7da;color:#721c24;padding:1rem;border-radius:6px;margin-bottom:1rem;border:1px solid #f5c6cb}@media(max-width:768px){.payment-history{padding:1rem}.payment-header{flex-direction:column;align-items:flex-start;gap:1rem}.account-balance-card{padding:1.5rem}.balance-amount{font-size:2rem}.filter-row{flex-direction:column}.filter-group{width:100%}.payment-summary{grid-template-columns:repeat(2,1fr)}.payment-table-container{overflow-x:scroll}.payment-table{min-width:min(100%,700px)}}.client-assignment{padding:2rem;max-width:min(100%,900px);margin:0 auto}.client-assignment .assignment-header{margin-bottom:2rem}.client-assignment .assignment-header h2{font-size:1.5rem;font-weight:600;color:var(--text-primary, #1a1a1a);margin:0 0 .5rem}.client-assignment .assignment-header p{color:var(--header-description-color, #666);margin:0}.client-assignment .member-info{background:var(--surface-secondary, #f8f9fa);padding:1rem;border-radius:4px;margin-bottom:2rem;display:flex;align-items:center;gap:1rem}.client-assignment .member-info strong{color:var(--text-primary, #1a1a1a)}.client-assignment .search-section{margin-bottom:1.5rem}.client-assignment .search-input{width:100%;padding:.625rem 1rem;border:1px solid var(--input-border, #ddd);border-radius:.375rem;font-size:.875rem;background:var(--input-bg, white);color:var(--text-primary, #333)}.client-assignment .search-input::placeholder{color:var(--text-secondary, #6b7280)}.client-assignment .search-input:focus{outline:none;border-color:var(--primary-color, #4a90e2);box-shadow:0 0 0 3px var(--focus-ring, rgba(254, 107, 52, .15))}.client-assignment .assignment-content{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.client-assignment .clients-panel{background:var(--card-background, white);border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.client-assignment .panel-header{background:var(--surface-secondary, #f8f9fa);padding:1rem 1.5rem;border-bottom:1px solid var(--card-divider, #e9ecef);display:flex;justify-content:space-between;align-items:center}.client-assignment .panel-title{font-size:1rem;font-weight:600;color:var(--text-primary, #1a1a1a);margin:0}.client-assignment .panel-count{font-size:.875rem;color:var(--text-on-panel, #666);background:var(--card-background, white);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 var(--card-divider, #f0f0f0);display:flex;align-items:center;gap:1rem;cursor:pointer;transition:background-color .2s}.client-assignment .client-item:hover{background-color:var(--surface-hover, #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:var(--text-primary, #1a1a1a);margin-bottom:.25rem}.client-assignment .client-email{font-size:.8125rem;color:var(--text-tertiary, #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:var(--surface-secondary, #f8f9fa);border-top:1px solid var(--card-divider, #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:var(--text-tertiary, #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 var(--card-divider, #e9ecef)}.client-assignment .btn{padding:.75rem 1.5rem;border:none;border-radius:4px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.client-assignment .btn-primary{background-color:#4a90e2;color:#fff}.client-assignment .btn-primary:hover{background-color:#357abd}.client-assignment .btn:disabled{background-color:#ccc;cursor:not-allowed;opacity:.6}.client-assignment .loading{text-align:center;padding:3rem;color:#666}.client-assignment .error{background-color:#f8d7da;color:#721c24;padding:1rem;border-radius:4px;margin-bottom:1rem}.client-assignment .success{background-color:#d4edda;color:#155724;padding:1rem;border-radius:4px;margin-bottom:1rem}@media(max-width:768px){.client-assignment{padding:1rem}.client-assignment .assignment-content{grid-template-columns:1fr}.client-assignment .clients-list{max-height:300px}.client-assignment .actions{flex-direction:column}.client-assignment .actions .btn{width:100%}}.time-block-manager{margin-top:24px}.time-block-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.time-block-header h4{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary, #1f2937)}.add-time-block-form{background:var(--surface-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;padding:16px;margin-bottom:16px}.time-block-manager .form-row{display:flex;gap:16px;margin-bottom:16px}.time-block-manager .form-group{flex:1}.time-block-manager .form-group label{display:block;margin-bottom:4px;font-weight:500;color:var(--text-secondary, #4b5563);font-size:14px}.time-block-manager .form-group input,.time-block-manager .form-group select{width:100%;padding:8px 12px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;font-size:14px;background:var(--input-bg, #ffffff);color:var(--text-primary, #1f2937);transition:border-color .2s ease}.time-block-manager .form-group input:focus,.time-block-manager .form-group select:focus{outline:none;border-color:var(--border-focus, #f97316)}.time-blocks-list{display:flex;flex-direction:column;gap:8px}.time-block-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;background:var(--card-background, #ffffff)}.block-info{flex:1}.block-title{font-weight:600;color:var(--text-primary, #1f2937);margin-bottom:4px}.block-details{font-size:14px;color:var(--text-secondary, #4b5563);margin-bottom:4px}.no-blocks{text-align:center;color:var(--text-tertiary, #9ca3af);font-style:italic;padding:24px}.btn-sm{padding:6px 12px;font-size:12px}@media(max-width:768px){.time-block-manager .form-row{flex-direction:column;gap:12px}.time-block-item{flex-direction:column;align-items:flex-start;gap:12px}}.working-schedule-settings{max-width:800px;margin:0 auto}.card-header{padding:24px 24px 16px;border-bottom:1px solid var(--card-divider, #e2e8f0);margin-bottom:24px;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 16px}.card-header h3{margin:0;font-size:1.5rem;font-weight:600;color:var(--text-primary, #1a202c)}.timezone-section{margin-bottom:24px;padding:16px;background:var(--input-bg, #f8fafc);border:1px solid var(--card-divider, #e2e8f0);border-radius:8px}.timezone-section label{display:block;font-weight:500;color:var(--text-on-panel, #374151);margin-bottom:8px}.timezone-select{width:100%;padding:8px 12px;border:1px solid var(--input-border, #d1d5db);border-radius:6px;font-size:14px;background:var(--card-background, white);color:var(--text-primary)}.timezone-select:focus{outline:none;border-color:var(--input-focus-border, #3b82f6);box-shadow:0 0 0 3px #fe6b3426}.schedule-day{display:flex;align-items:center;padding:16px;border:1px solid var(--card-border, #e2e8f0);border-radius:8px;margin-bottom:12px;gap:16px}.day-label{min-width:120px}.day-label label{font-weight:500;color:var(--text-on-panel, #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:var(--text-tertiary, #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}.timezone-display{font-size:.85rem;color:var(--text-tertiary, #666);font-style:italic}@media(max-width:768px){.working-schedule-settings .card{border-radius:12px}.working-schedule-settings .card-header{padding:16px 16px 12px;margin-bottom:16px;gap:4px}.working-schedule-settings .card-header h3{font-size:1.125rem;flex-basis:100%}.working-schedule-settings .timezone-display{flex-basis:100%}.working-schedule-settings .card-content{padding:0 16px 16px}.working-schedule-settings .schedule-day{display:grid;grid-template-columns:1fr auto;grid-template-areas:"label toggle" "times times";align-items:center;padding:12px 14px;gap:10px 12px;margin-bottom:8px}.working-schedule-settings .day-label{grid-area:label;min-width:0}.working-schedule-settings .day-toggle{grid-area:toggle;justify-self:end}.working-schedule-settings .day-toggle input[type=checkbox]{width:22px;height:22px}.working-schedule-settings .time-inputs{grid-area:times;width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px}.working-schedule-settings .time-inputs input[type=time]{width:100%;max-width:none;min-width:0;padding:10px 12px;font-size:14px;background:var(--input-bg);color:var(--text-primary);border:1px solid var(--card-border);border-radius:8px}.working-schedule-settings .time-inputs span{text-align:center;color:var(--text-secondary);font-size:13px}.working-schedule-settings .save-button{margin-top:16px;padding:11px 20px;font-size:14px}}.gen-profile{display:flex;flex-direction:column;gap:16px}.gen-profile__loading{display:inline-flex;align-items:center;gap:10px;padding:32px 0;color:var(--text-secondary);font-size:14px}.gen-profile__alert{padding:12px 14px;border-radius:10px;font-size:14px}.gen-profile__alert--error{background:var(--error-bg);border:1px solid var(--error-border);color:var(--error-text)}.gen-profile__alert--success{background:var(--success-bg);border:1px solid var(--success-border);color:var(--success-text)}.gen-profile__card{background:var(--card-background);border:1px solid var(--card-border);border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:16px}.gen-profile__card-header h3{margin:0 0 4px;font-size:16px;font-weight:700;color:var(--text-primary)}.gen-profile__card-header p{margin:0;color:var(--text-secondary);font-size:13px}.gen-profile__identity{flex-direction:row;align-items:flex-start;gap:20px}.gen-profile__avatar-wrap{position:relative;flex:0 0 auto}.gen-profile__avatar{width:88px;height:88px;font-size:28px}.gen-profile__avatar-wrap .user-avatar{width:88px;height:88px}.gen-profile__avatar-action{position:absolute;right:-2px;bottom:-2px;width:28px;height:28px;border-radius:999px;border:2px solid var(--card-background);background:var(--accent-orange);color:var(--text-inverse, #fff);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s ease,transform .15s ease}.gen-profile__avatar-action:hover:not(:disabled){background:var(--accent-orange-hover);transform:scale(1.05)}.gen-profile__avatar-action:disabled{opacity:.7;cursor:not-allowed}.gen-profile__identity-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}.gen-profile__name-row{display:flex;align-items:center;gap:8px;min-width:0}.gen-profile__name{margin:0;font-size:18px;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.gen-profile__email{font-size:13px;color:var(--text-secondary);word-break:break-all}.gen-profile__icon-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--card-border);background:transparent;color:var(--text-secondary);border-radius:8px;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease}.gen-profile__icon-btn:hover{background:var(--surface-hover);color:var(--accent-orange);border-color:var(--accent-orange)}.gen-profile__name-edit{display:flex;flex-direction:column;gap:10px}.gen-profile__name-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px}.gen-profile__name-actions{display:flex;gap:8px}.gen-profile__remove-photo{align-self:flex-start;display:inline-flex;align-items:center;gap:6px;padding:4px 0;border:none;background:transparent;color:var(--text-tertiary);font-size:12px;cursor:pointer;transition:color .15s ease}.gen-profile__remove-photo:hover:not(:disabled){color:var(--error-color)}.gen-profile__remove-photo:disabled{cursor:not-allowed;opacity:.6}.gen-profile__field{display:flex;flex-direction:column;gap:6px;min-width:0}.gen-profile__field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.gen-profile__label{font-size:13px;font-weight:600;color:var(--text-secondary)}.gen-profile__input,.gen-profile__select{width:100%;padding:10px 12px;border:1px solid var(--card-border);border-radius:8px;background:var(--input-bg);color:var(--text-primary);font-size:14px;transition:border-color .15s ease,box-shadow .15s ease}.gen-profile__input:focus,.gen-profile__select:focus{outline:none;border-color:var(--border-focus, var(--accent-orange));box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-orange) 18%,transparent)}.gen-profile__actions{display:flex;justify-content:flex-end}.gen-profile__sms-optin{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--text-primary);cursor:pointer;-webkit-user-select:none;user-select:none}.gen-profile__sms-optin input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent-orange);cursor:pointer}.gen-profile__sms-optin input[type=checkbox]:disabled{cursor:not-allowed}.gen-profile__hint{margin:4px 0 0;font-size:12px;color:var(--text-tertiary)}.gen-profile__theme-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.gen-profile__theme-option{appearance:none;font-family:inherit;display:flex;align-items:center;gap:12px;text-align:left;padding:14px;border-radius:10px;border:1px solid var(--card-border);background:var(--bg-secondary, var(--surface-secondary, transparent));color:var(--text-primary);cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease;min-width:0}.gen-profile__theme-option:hover{border-color:var(--accent-orange-hover, var(--accent-orange))}.gen-profile__theme-option--active{border-color:var(--accent-orange);background:var(--chip-orange-bg, color-mix(in srgb, var(--accent-orange) 12%, transparent));box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-orange) 14%,transparent)}.gen-profile__theme-icon{width:36px;height:36px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--accent-orange) 14%,transparent);color:var(--accent-orange);flex:0 0 auto}.gen-profile__theme-label{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.gen-profile__theme-title{font-size:14px;font-weight:600;color:var(--text-primary)}.gen-profile__theme-desc{font-size:12px;color:var(--text-secondary)}.gen-profile__theme-check{color:var(--accent-orange);flex:0 0 auto}@media(max-width:768px){.gen-profile__card{padding:16px}.gen-profile__identity{flex-direction:column;align-items:center;text-align:center;gap:14px}.gen-profile__identity-body{align-items:center;width:100%}.gen-profile__name-row{justify-content:center}.gen-profile__name-fields{grid-template-columns:1fr}.gen-profile__name-actions{justify-content:center;width:100%}.gen-profile__remove-photo{align-self:center}.gen-profile__field-grid{grid-template-columns:1fr;gap:10px}.gen-profile__theme-row{grid-template-columns:1fr}.gen-profile{gap:12px}.gen-profile__card{gap:12px;padding:14px}.gen-profile__input,.gen-profile__select{padding:9px 12px;font-size:16px}.gen-profile__actions{justify-content:stretch}.gen-profile__actions>*{width:100%}}.notif-prefs{display:flex;flex-direction:column;gap:24px}.notif-prefs__loading{display:inline-flex;align-items:center;gap:10px;padding:32px 0;color:var(--text-secondary);font-size:14px}.notif-prefs__header h3{margin:0 0 4px;font-size:18px;font-weight:700;color:var(--text-primary)}.notif-prefs__header p{margin:0;color:var(--text-secondary);font-size:14px}.notif-prefs__alert{padding:12px 14px;border-radius:10px;font-size:14px}.notif-prefs__alert--error{background:var(--error-bg);border:1px solid var(--error-border);color:var(--error-text)}.notif-prefs__alert--success{background:var(--success-bg);border:1px solid var(--success-border);color:var(--success-text)}.notif-prefs__section{display:flex;flex-direction:column;gap:4px;background:var(--card-background);border:1px solid var(--card-border);border-radius:12px;padding:8px}.notif-prefs__row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px;border-radius:8px}.notif-prefs__row+.notif-prefs__row{border-top:1px solid var(--card-border)}.notif-prefs__row-label{display:flex;align-items:flex-start;gap:12px;flex:1;min-width:0}.notif-prefs__row-icon{color:var(--accent-orange);margin-top:2px;flex:0 0 auto}.notif-prefs__row-title{font-size:14px;font-weight:600;color:var(--text-primary)}.notif-prefs__row-sub{font-size:12px;color:var(--text-secondary);margin-top:2px}.notif-prefs__row--disabled{opacity:.55}.notif-prefs__quiet{display:inline-flex;align-items:center;gap:8px}.notif-prefs__quiet input[type=time]{padding:6px 10px;border:1px solid var(--card-border);border-radius:8px;background:var(--input-bg);color:var(--text-primary);font-size:14px}.notif-prefs__quiet-sep{color:var(--text-tertiary);font-size:13px}.notif-prefs__matrix-header{padding:0 4px 8px}.notif-prefs__matrix-header h4{margin:0 0 4px;font-size:15px;font-weight:700;color:var(--text-primary)}.notif-prefs__matrix-header p{margin:0;color:var(--text-secondary);font-size:13px}.notif-prefs__matrix{background:var(--card-background);border:1px solid var(--card-border);border-radius:12px;overflow:hidden}.notif-prefs__matrix-row{display:grid;grid-template-columns:minmax(0,1fr) 88px 88px 88px;align-items:center;gap:8px;padding:12px 14px;border-top:1px solid var(--card-border)}.notif-prefs__matrix-row:first-child{border-top:none}.notif-prefs__matrix-row--head{background:var(--surface-secondary, var(--card-background));font-size:12px;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;padding-top:10px;padding-bottom:10px}.notif-prefs__matrix-cell{display:flex;align-items:center;justify-content:center;min-width:0}.notif-prefs__matrix-cell--type{justify-content:flex-start;flex-direction:column;align-items:flex-start;gap:2px}.notif-prefs__matrix-cell--sms{flex-direction:column;gap:2px}.notif-prefs__matrix-row--head .notif-prefs__matrix-cell--sms{flex-direction:row;gap:4px}.notif-prefs__channel-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--accent-orange)}.notif-prefs__channel-btn{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border:none;background:transparent;color:var(--text-secondary);font:inherit;font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;border-radius:8px;transition:background .15s ease,color .15s ease}.notif-prefs__channel-btn:hover:not(:disabled){background:color-mix(in srgb,var(--accent-orange) 12%,transparent);color:var(--text-primary)}.notif-prefs__channel-btn:disabled{opacity:.55;cursor:not-allowed}.notif-prefs__soon{display:inline-flex;align-items:center;padding:1px 6px;border-radius:999px;background:color-mix(in srgb,var(--accent-orange) 18%,transparent);color:var(--accent-orange);font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.notif-prefs__type-label{font-size:14px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.notif-prefs__type-sub{font-size:12px;color:var(--text-secondary)}.toggle-switch--small{transform:scale(.85);transform-origin:center}.notif-prefs__actions{display:flex;justify-content:flex-end;gap:8px}@media(max-width:768px){.notif-prefs__row{flex-direction:column;align-items:stretch;gap:10px}.notif-prefs__row-label{flex:1 1 auto}.notif-prefs__quiet{align-self:flex-start}.notif-prefs__matrix-row{grid-template-columns:minmax(0,1fr) 56px 56px 56px;padding:10px 12px;gap:4px}.notif-prefs__type-sub{display:none}.notif-prefs__type-label{font-size:13px}.notif-prefs__matrix-row--head{font-size:10px}.notif-prefs__channel-btn{padding:4px 6px;font-size:11px;gap:4px}.notif-prefs__matrix-row--head .notif-prefs__matrix-cell--sms{flex-direction:column;gap:2px}.notif-prefs__soon{font-size:8px;padding:0 4px}}.profile-settings-page{max-width:min(100%,900px);margin:0 auto;padding:24px}.settings-header{margin-bottom:32px}.settings-header h1{font-size:2rem;font-weight:700;color:var(--text-primary, #1a202c);margin:0 0 8px}.settings-header p{color:var(--header-description-color, #6b7280);font-size:1rem;margin:0}.settings-tabs{background:var(--card-background, white);border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.tabs-list{display:flex;border-bottom:1px solid var(--card-divider, #e2e8f0);background:var(--input-bg, #f8fafc)}.tab{padding:16px 24px;border:none;background:none;cursor:pointer;font-size:14px;font-weight:500;color:var(--text-tertiary, #6b7280);transition:all .2s;border-bottom:2px solid transparent}.tab:hover{color:var(--text-primary, #374151)}.settings-tabs .tab-content{padding:24px;display:block;width:100%}.card{background:var(--card-background, white);border:1px solid var(--card-border, #e2e8f0);border-radius:8px;box-shadow:0 1px 3px #0000001a}.card-header{padding:24px 24px 0;border-bottom:1px solid var(--card-divider, #e2e8f0);margin-bottom:24px}.card-header h3{margin:0 0 16px;font-size:1.5rem;font-weight:600;color:var(--text-primary, #1a202c)}.card-content{padding:0 24px 24px}.card-content p{color:var(--text-tertiary, #6b7280);margin:0}@media(max-width:768px){.profile-settings-page{padding:16px}.tabs-list{flex-direction:column}.tab{text-align:left;border-bottom:1px solid #e2e8f0;border-right:none}.settings-tabs .tab-content{padding:16px}}.photo-upload-section{display:flex;gap:24px;align-items:flex-start;padding:16px;background:var(--input-bg, #f8fafc);border-radius:8px;border:1px solid var(--card-divider, #e2e8f0);overflow:hidden}.photo-upload-controls{display:flex;flex-direction:column;gap:12px;flex:1;min-width:0}.photo-upload-buttons{display:flex;gap:8px;flex-wrap:wrap}.photo-upload-controls label.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1rem;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;background-color:var(--primary-color, #3b82f6);color:#fff;border:none}.photo-upload-controls label.btn-primary:hover{background-color:var(--primary-hover, #2563eb)}.photo-upload-controls .form-help{margin:0;font-size:.875rem;color:var(--text-tertiary, #6b7280)}.profile-settings-page--mobile{padding:12px 14px 88px}.profile-settings-page--mobile .page-header{margin-bottom:14px}.profile-settings-page--mobile .page-header h1{font-size:22px;margin-bottom:4px}.profile-settings-page--mobile .page-header p{font-size:13px}.profile-settings-page--mobile .settings-tabs{background:transparent;box-shadow:none;border-radius:0;overflow:visible}.profile-settings-page--mobile .tabs-list{flex-direction:row;flex-wrap:nowrap;white-space:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;margin:0 -14px 12px;padding:0 14px;background:transparent;border-bottom:1px solid var(--card-border);gap:6px}.profile-settings-page--mobile .tabs-list::-webkit-scrollbar{display:none}.profile-settings-page--mobile .tab{flex:0 0 auto;padding:10px 14px;border:none;border-bottom:2px solid transparent;background:none;text-align:center;font-size:13px}.profile-settings-page--mobile .tab.active{color:var(--accent-orange);border-bottom-color:var(--accent-orange)}.profile-settings-page--mobile{padding:8px 12px 16px}.profile-settings-page--mobile .settings-tabs .tab-content{padding:0}.profile-settings-page--mobile .settings-tabs .tab-content>*{margin-bottom:14px}.profile-settings-page--mobile .settings-tabs .tab-content [class*=grid],.profile-settings-page--mobile .settings-tabs .tab-content [class*=row]{max-width:100%}.loc-settings{display:flex;flex-direction:column;gap:16px}.loc-settings__card{background:var(--card-background);border:1px solid var(--card-border);border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:16px}.loc-settings__card-header h3{margin:0 0 4px;font-size:16px;font-weight:700;color:var(--text-primary)}.loc-settings__card-header p{margin:0;color:var(--text-secondary);font-size:13px}.loc-settings__field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.loc-settings__field{display:flex;flex-direction:column;gap:6px;min-width:0}.loc-settings__label{font-size:13px;font-weight:600;color:var(--text-secondary)}.loc-settings__select{width:100%;padding:10px 12px;border:1px solid var(--card-border);border-radius:8px;background:var(--input-bg);color:var(--text-primary);font-size:14px;transition:border-color .15s ease,box-shadow .15s ease}.loc-settings__select:focus{outline:none;border-color:var(--border-focus, var(--accent-orange));box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-orange) 18%,transparent)}.loc-settings__help{font-size:12px;color:var(--text-tertiary)}.loc-settings__preview{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:var(--bg-secondary);border:1px solid var(--card-border);border-radius:10px}.loc-settings__preview-label{font-size:13px;font-weight:600;color:var(--text-secondary)}.loc-settings__preview-value{font-family:Courier New,monospace;font-size:13px;color:var(--text-primary);background:var(--card-background);border:1px solid var(--card-border);border-radius:6px;padding:4px 10px}.loc-settings__actions{display:flex;gap:8px;justify-content:flex-end}.loc-settings__alert{padding:10px 12px;border-radius:8px;font-size:13px}.loc-settings__alert--success{background:var(--success-bg);border:1px solid var(--success-border);color:var(--success-text)}.loc-settings__alert--error{background:var(--error-bg);border:1px solid var(--error-border);color:var(--error-text)}@media(max-width:768px){.loc-settings__card{padding:14px;gap:12px}.loc-settings__field-grid{grid-template-columns:1fr;gap:10px}.loc-settings__select{padding:9px 12px;font-size:16px}.loc-settings__preview{flex-direction:column;align-items:flex-start;gap:6px}.loc-settings__actions{flex-direction:column-reverse}.loc-settings__actions>*{width:100%}}.help-page{max-width:min(100%,1200px);margin:0 auto;padding:24px}.help-page .page-header{margin-bottom:24px}.help-page .page-header h1{font-size:1.75rem;font-weight:700;color:var(--text-primary, #1f2937);margin:0 0 6px}.help-page .page-header p{color:var(--header-description-color, #6b7280);font-size:.95rem;margin:0}.help-layout{display:grid;grid-template-columns:260px 1fr;gap:24px;align-items:start}.help-sidebar{background:var(--card-background, #ffffff);border:1px solid var(--card-border, transparent);border-radius:12px;padding:16px;position:sticky;top:24px;box-shadow:0 1px 3px #00000014;max-height:calc(100vh - 120px);overflow-y:auto}.help-nav-section{margin-bottom:16px}.help-nav-section:last-child{margin-bottom:0}.help-nav-section-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary, #9ca3af);padding:0 12px;margin:0 0 6px}.help-nav-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 12px;border:none;border-radius:8px;background:none;cursor:pointer;color:var(--text-secondary, #6b7280);font-size:13.5px;font-weight:500;text-align:left;transition:all .2s ease;line-height:1.3}.help-nav-item:hover{background:var(--surface-hover, #f3f4f6);color:var(--text-primary, #1f2937)}.help-nav-item.active{background:var(--chip-orange-bg, #fff7ed);color:var(--accent-orange, #f97316);font-weight:600}.help-nav-item svg{flex-shrink:0;opacity:.7}.help-nav-item.active svg{opacity:1}.help-nav-divider{height:1px;background:var(--border-primary, #e5e7eb);margin:12px 0}.help-nav-support-link{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:1px solid var(--accent-orange, #f97316);border-radius:8px;background:var(--warm-tint-bg, #fffbeb);cursor:pointer;color:var(--accent-orange, #f97316);font-size:13.5px;font-weight:600;text-align:left;text-decoration:none;transition:all .2s ease}.help-nav-support-link:hover{background:var(--accent-orange, #f97316);color:var(--text-inverse, #ffffff)}.help-content{background:var(--card-background, #ffffff);border:1px solid var(--card-border, transparent);border-radius:12px;padding:32px;box-shadow:0 1px 3px #00000014;min-height:400px}.help-content h2{font-size:1.5rem;font-weight:700;color:var(--text-primary, #1f2937);margin:0 0 8px}.help-content .help-topic-subtitle{color:var(--text-secondary, #6b7280);font-size:.95rem;margin:0 0 24px}.help-content h3{font-size:1.1rem;font-weight:600;color:var(--text-primary, #1f2937);margin:28px 0 12px}.help-content h3:first-of-type{margin-top:0}.help-content p{color:var(--text-secondary, #4b5563);line-height:1.7;margin:0 0 14px;font-size:.925rem}.help-content ul,.help-content ol{color:var(--text-secondary, #4b5563);line-height:1.7;margin:0 0 14px;padding-left:24px;font-size:.925rem}.help-content li{margin-bottom:6px}.help-content strong{color:var(--text-primary, #1f2937);font-weight:600}.help-info-box{background:var(--warm-tint-bg, #fffbeb);border:1px solid var(--warm-tint-border, #fde68a);border-radius:8px;padding:14px 16px;margin:16px 0;font-size:.9rem;line-height:1.6;color:var(--text-secondary, #4b5563)}.help-info-box strong{color:var(--text-primary, #1f2937)}.help-steps{display:flex;flex-direction:column;gap:12px;margin:16px 0}.help-step{display:flex;gap:14px;align-items:flex-start;padding:14px 16px;background:var(--surface-secondary, #f9fafb);border:1px solid var(--border-primary, #e5e7eb);border-radius:8px}.help-step-number{flex-shrink:0;width:28px;height:28px;border-radius:50%;background:var(--accent-orange, #f97316);color:var(--text-inverse, #ffffff);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700}.help-step-content{flex:1;min-width:0}.help-step-content>strong{display:block;margin-bottom:4px;color:var(--text-primary, #1f2937)}.help-step-content p{margin:0;font-size:.875rem}@media(max-width:900px){.help-layout{grid-template-columns:1fr}.help-sidebar{position:static;max-height:none;display:flex;flex-wrap:wrap;gap:4px;padding:12px}.help-nav-section{width:100%;margin-bottom:8px}.help-nav-section-title{margin-bottom:4px}.help-nav-item{display:inline-flex;width:auto;padding:6px 12px;font-size:13px}.help-nav-item svg{display:none}.help-nav-divider{width:100%;margin:4px 0}.help-nav-support-link{width:auto;display:inline-flex}}@media(max-width:768px){.help-page{padding:16px}.help-content{padding:20px}}.help-page--mobile{padding:12px 14px 88px;max-width:100%}.help-mobile__intro{margin-bottom:14px}.help-mobile__intro h1{margin:0 0 4px;font-size:22px;font-weight:700;color:var(--text-primary)}.help-mobile__intro p{margin:0;color:var(--text-secondary);font-size:13px}.help-mobile__section{margin-bottom:18px}.help-mobile__section-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);margin:0 0 6px;padding:0 4px}.help-mobile__topic-list{background:var(--card-background);border:1px solid var(--card-border);border-radius:12px;overflow:hidden}.help-mobile__topic{display:flex;align-items:center;gap:12px;width:100%;padding:14px;border:none;border-top:1px solid var(--card-border);background:transparent;color:var(--text-primary);font-size:14px;font-weight:500;text-align:left;cursor:pointer;font-family:inherit;transition:background .15s ease}.help-mobile__topic:first-child{border-top:none}.help-mobile__topic:hover,.help-mobile__topic:active{background:var(--surface-hover)}.help-mobile__topic-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;background:var(--chip-orange-bg);color:var(--accent-orange);flex:0 0 auto}.help-mobile__topic-icon svg{width:16px;height:16px}.help-mobile__topic-label{flex:1;min-width:0}.help-mobile__topic-chevron{color:var(--text-tertiary);flex:0 0 auto}.help-mobile__support-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px 14px;border:1px solid var(--accent-orange);border-radius:10px;background:var(--warm-tint-bg);color:var(--accent-orange);font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .15s ease,color .15s ease;margin-top:4px}.help-mobile__support-cta:hover{background:var(--accent-orange);color:var(--text-inverse, #fff)}.help-mobile__article{padding:16px 14px 32px;color:var(--text-secondary)}.help-mobile__article h2{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin:0 0 8px}.help-mobile__article .help-topic-subtitle{color:var(--text-secondary);font-size:.9rem;margin:0 0 18px}.help-mobile__article h3{font-size:1rem;font-weight:600;color:var(--text-primary);margin:22px 0 10px}.help-mobile__article p,.help-mobile__article ul,.help-mobile__article ol{font-size:.9rem;line-height:1.65;color:var(--text-secondary)}.help-mobile__article ul,.help-mobile__article ol{padding-left:20px}.help-mobile__article strong{color:var(--text-primary)}.help-mobile__article .help-info-box{background:var(--warm-tint-bg);border:1px solid var(--warm-tint-border);border-radius:8px;padding:12px 14px;margin:14px 0;font-size:.875rem}.help-mobile__article .help-step{padding:12px 14px}.help-mobile__article .help-step-number{width:26px;height:26px;font-size:12px}.help-mobile__article .help-step-content strong{font-size:.9rem}.help-mobile__article .help-step-content p{font-size:.85rem}.animals-page{padding:20px;max-width:min(100%,1200px);margin:0 auto}.animals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.animal-card{background:var(--card-bg);border-radius:8px;box-shadow:var(--shadow-card);padding:20px;transition:transform .2s,box-shadow .2s;border:1px solid var(--card-border)}.animal-card:hover{box-shadow:var(--shadow-md)}.animal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.animal-header h3{margin:0;color:var(--text-primary);font-size:18px;font-weight:600}.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}.btn-secondary:hover{background-color:#545b62}.loading,.error{text-align:center;padding:40px;font-size:16px;color:var(--text-secondary, #666)}.error{color:var(--error-color, #dc3545)}.retry-btn{margin-top:10px;padding:8px 16px;background-color:var(--primary-color, #007bff);color:#fff;border:none;border-radius:4px;cursor:pointer}.dashboard-grid{display:grid;gap:30px}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:20px}.summary-card{background:var(--card-bg, white);padding:20px;border-radius:8px;box-shadow:var(--shadow-card, 0 2px 4px rgba(0,0,0,.1));text-align:center;border:1px solid var(--card-border, transparent)}.summary-card.attention{border-left:4px solid var(--error-color, #dc3545)}.summary-card h3{margin:0 0 10px;font-size:14px;color:var(--text-secondary, #666);text-transform:uppercase}.summary-card .metric{font-size:32px;font-weight:700;color:var(--text-primary, #333)}.dashboard-section{background:var(--card-bg, white);padding:20px;border-radius:8px;box-shadow:var(--shadow-card, 0 2px 4px rgba(0,0,0,.1));border:1px solid var(--card-border, transparent)}.dashboard-section h2{margin:0 0 20px;color:var(--text-primary, #333);font-size:18px}.attention-list{display:flex;flex-direction:column;gap:15px}.attention-item{display:flex;align-items:center;gap:15px;padding:15px;background:var(--error-bg, #fff5f5);border-radius:6px;border-left:4px solid var(--error-color, #dc3545)}.animal-info h4{margin:0;color:var(--text-primary, #333)}.species{font-size:13px;color:var(--text-secondary, #666);text-transform:capitalize}.reason{flex:1;color:var(--error-color, #dc3545);font-weight:500}.last-session{font-size:13px;color:var(--text-secondary, #666)}.sessions-list{display:flex;flex-direction:column;gap:15px;margin-bottom:15px}.session-item{display:flex;align-items:center;gap:10px;padding:15px;border-radius:6px}.session-info h4{margin:0;color:var(--text-primary, #333)}.session-type{font-size:13px;color:var(--primary-color, #007bff);text-transform:capitalize;font-weight:500}.session-details{flex:1;display:flex;gap:15px;align-items:center}.date{font-size:14px;color:var(--text-secondary, #666)}.duration{font-size:13px;color:var(--text-secondary, #666)}.status{padding:2px 8px;border-radius:12px;font-size:12px;font-weight:500}.status.completed{background-color:var(--success-bg);color:var(--success-color)}.status.pending{background-color:#fff3cd;color:#856404}.view-all-link{color:var(--primary-color, #007bff);text-decoration:none;font-size:14px}.view-all-link:hover{text-decoration:underline}.species-chart{display:flex;flex-direction:column;gap:10px}.species-item{display:flex;align-items:center;gap:10px}.species-name{min-width:80px;font-size:14px;text-transform:capitalize;color:var(--text-primary, #333)}.species-bar{flex:1;height:20px;background-color:var(--secondary-light, #e9ecef);border-radius:10px;overflow:hidden}.species-fill{height:100%;background-color:var(--primary-color, #007bff);transition:width .3s ease}.species-count{min-width:30px;text-align:right;font-size:14px;font-weight:500;color:var(--text-primary, #333)}.behaviors-list{display:flex;flex-direction:column;gap:10px}.behavior-item{display:flex;align-items:center;gap:15px;padding:10px;background:var(--surface-secondary, #f8f9fa);border-radius:6px}.rank{font-weight:700;color:var(--primary-color, #007bff);min-width:30px}.behavior-name{flex:1;text-transform:capitalize;color:var(--text-primary, #333)}.behavior-count{font-size:13px;color:var(--text-secondary, #666)}@media(max-width:768px){.animals-page{padding:10px}.page-header{flex-direction:column;gap:15px;align-items:stretch}.header-actions{justify-content:center}.summary-cards{grid-template-columns:repeat(2,1fr)}.attention-item,.session-item{flex-direction:column;align-items:stretch;gap:10px}.session-details{justify-content:space-between}}.animal-info{display:flex;align-items:center;gap:12px;overflow:hidden;word-wrap:break-word;overflow-wrap:break-word}.animal-details{display:flex;flex-direction:column;gap:8px;margin-bottom:12px;overflow:hidden;min-width:0;flex:1}.animal-details p{margin:0;font-size:14px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;word-wrap:break-word}.animal-details .detail-row{display:flex;flex-wrap:wrap;gap:16px;overflow:hidden}.animal-details .detail-row span{font-size:14px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis}.animal-details .detail-row strong{color:var(--text-secondary);font-weight:500}.animal-actions{display:flex;gap:8px;margin-top:16px}.animal-actions .btn{flex:1}.behavior-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.session-info{display:flex;align-items:center;gap:8px}.session-details-text{display:flex;flex-direction:column;gap:2px}.session-details-text h4{margin:0;font-size:14px;color:var(--text-primary, #333)}.session-details-text span{font-size:13px;color:var(--text-secondary, #6b7280)}.pet-avatar-container{display:flex;justify-content:center;margin-bottom:12px}.pet-profile-avatar{display:flex;justify-content:center;margin-bottom:16px}.animals-page--mobile{max-width:none;margin:0;padding:12px 12px 88px}.animals-page--mobile .page-header h1{font-size:22px}.animals-page--mobile .header-actions{display:flex;flex-direction:column;gap:8px}.animals-page--mobile .header-actions .btn{width:100%}.amd-page{padding:0;background:var(--body-background);min-height:100vh}.amd-shell{width:75%;max-width:1600px;margin:0 auto}@media(max-width:1200px){.amd-shell{width:92%}}@media(max-width:768px){.amd-shell{width:100%;padding:0 14px}}.amd-page-header{padding:24px 0 4px}.amd-page-header h1{margin:0;font-size:22px;font-weight:700;letter-spacing:-.01em;color:var(--text-primary)}.amd-page-header .subtitle{margin:4px 0 0;font-size:13px;color:var(--text-secondary)}.amd-toolbar-wrap{padding:14px 0 18px}.amd-toolbar-top{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:0}.amd-toolbar-top .mobile-filter-toggle{margin-bottom:0}.amd-toolbar-top .amd-btn{margin-left:auto}.amd-toolbar{display:flex;align-items:center;gap:10px}.amd-toolbar-wrap .amd-toolbar:not(.mobile-filter-region--collapsed){padding-top:12px}.amd-toolbar-wrap .amd-toolbar.mobile-filter-region--collapsed{display:none}.amd-toolbar-wrap>.amd-toolbar:only-child{padding-top:0}.amd-search{flex:1;min-width:240px;position:relative}.amd-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-tertiary);display:inline-flex;pointer-events:none}.amd-search input{width:100%;padding:9px 12px 9px 34px;border-radius:8px;border:1px solid var(--border-primary);background:var(--input-bg, var(--card-background));color:var(--text-primary);font-size:13px;font-family:inherit;outline:none;box-sizing:border-box}.amd-search input:focus{border-color:var(--accent-orange)}.amd-toolbar-select{padding:10px 14px;border-radius:8px;border:1px solid var(--card-border);background:var(--input-bg, var(--card-background));color:var(--text-primary);font-size:14px;font-family:inherit;outline:none;cursor:pointer;min-width:140px}.amd-toolbar-select:focus{border-color:var(--accent-orange)}.amd-btn{font-family:inherit;font-size:13px;font-weight:600;border-radius:999px;padding:8px 14px;border:1px solid var(--card-border);background:var(--card-background);color:var(--text-primary);cursor:pointer;display:inline-flex;align-items:center;gap:6px;text-decoration:none;transition:border-color .2s ease,background .2s ease,color .2s ease}.amd-btn:hover,.amd-btn:focus,.amd-btn:active{text-decoration:none}.amd-btn:hover:not(:disabled){border-color:var(--accent-orange-hover)}.amd-btn:disabled{opacity:.5;cursor:not-allowed}.amd-btn-primary{background:var(--accent-orange);color:var(--text-inverse);border-color:transparent}.amd-btn-primary:hover:not(:disabled){background:var(--accent-orange-hover)}.amd-btn-sm{padding:6px 10px;font-size:12px}.amd-btn-danger{color:var(--error-color)}.amd-btn-danger:hover:not(:disabled){border-color:var(--error-color)}.amd-icon-btn{width:30px;height:30px;border-radius:999px;border:1px solid var(--card-border);background:transparent;color:var(--text-secondary);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.amd-icon-btn:hover{border-color:var(--accent-orange-hover);color:var(--text-primary)}.amd-filter-count{margin-left:4px;padding:1px 6px;border-radius:999px;background:var(--chip-orange-bg);color:var(--accent-orange);font-size:10px;font-weight:700}.amd-grid{padding:0 0 32px;display:grid;grid-template-columns:minmax(420px,460px) minmax(0,1fr);gap:24px;align-items:flex-start}@media(max-width:1100px){.amd-grid{grid-template-columns:1fr}}.amd-grid--mobile{grid-template-columns:1fr}.amd-list-panel{background:var(--card-background, #fffdf9);border:1px solid transparent;border-radius:12px;box-shadow:0 1px 3px #0000004d;transition:all .2s ease;overflow:hidden;position:sticky;top:20px}.amd-list-header{padding:10px 14px;border-bottom:1px solid var(--border-primary);background:transparent;display:flex;justify-content:space-between;align-items:center;position:relative}.amd-list-count{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary)}.amd-sort-button{background:transparent;border:none;cursor:pointer;font-size:11px;color:var(--text-secondary);font-family:inherit;display:inline-flex;align-items:center;gap:4px;padding:0}.amd-sort-button strong{color:var(--text-primary);font-weight:600}.amd-sort-menu{position:absolute;top:100%;right:10px;margin-top:4px;z-index:5;background:var(--card-background);border:1px solid var(--card-border);border-radius:8px;padding:4px;box-shadow:0 8px 24px #0000002e;min-width:190px}.amd-sort-option{display:block;width:100%;text-align:left;border:none;cursor:pointer;background:transparent;color:var(--text-primary);padding:7px 10px;border-radius:5px;font-size:12px;font-weight:500;font-family:inherit}.amd-sort-option:hover{background:var(--surface-hover)}.amd-sort-option.active{background:var(--chip-orange-bg);color:var(--accent-orange);font-weight:600}.amd-list-scroll{max-height:760px;overflow-y:auto}.amd-list-empty{padding:40px 20px;text-align:center;font-size:12.5px;color:var(--text-tertiary)}.amd-list-row{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center;padding:16px 20px;border-left:4px solid transparent;background:transparent;cursor:pointer;border-bottom:1px solid var(--border-primary);transition:background .15s ease,border-left-color .15s ease}.amd-list-row:hover{background:var(--surface-hover)}.amd-list-row.active{border-left-color:var(--accent-orange);background:var(--chip-orange-bg)}.amd-list-row .animal-avatar.avatar-small{width:44px;height:44px;font-size:15px}.amd-row-name{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.amd-list-row.active .amd-row-name{color:var(--accent-orange)}.amd-row-meta{font-size:12.5px;color:var(--text-secondary);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.amd-species-glyph{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:999px;background:var(--surface-secondary);color:var(--text-tertiary);flex:0 0 auto}.amd-detail-panel{background:transparent;min-height:600px;min-width:0;display:flex;flex-direction:column;gap:0;overflow:hidden}.amd-detail-empty{flex:1;display:flex;align-items:center;justify-content:center;color:var(--text-tertiary);font-size:13px;padding:40px;text-align:center}.amd-detail-header{padding:22px 24px 18px;background:var(--card-background, #fffdf9);border:1px solid transparent;border-radius:12px;box-shadow:0 1px 3px #0000004d;margin-bottom:14px;display:flex;align-items:flex-start;gap:14px;transition:all .2s ease}.amd-detail-header .header-content{flex:1;min-width:0;padding:0;gap:1.25rem}.amd-detail-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.amd-detail-title{margin:0;font-size:20px;font-weight:700;color:var(--text-primary);letter-spacing:-.01em}.amd-detail-subtitle{margin-top:5px;font-size:12.5px;color:var(--text-secondary)}.amd-detail-meta-grid{margin-top:10px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 18px}.amd-detail-meta-grid.single{grid-template-columns:minmax(0,1fr)}.amd-detail-actions{display:flex;flex-direction:column;gap:6px;flex:0 0 auto}@media(max-width:640px){.amd-detail-header{flex-wrap:wrap}.amd-detail-actions{flex:1 0 100%;flex-direction:row;gap:8px;margin-top:4px}.amd-detail-actions .amd-btn{flex:1;justify-content:center}}.amd-meta{display:flex;align-items:center;gap:8px;min-width:0}.amd-meta-avatar.user-avatar{width:28px;height:28px;flex:0 0 auto}.amd-meta-avatar.user-avatar .avatar-initials{font-size:10px;font-weight:700}.amd-meta-text{min-width:0;line-height:1.2}.amd-meta-label{font-size:9.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary)}.amd-meta-value{font-size:12px;color:var(--text-primary);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.amd-meta-value .dim{color:var(--text-tertiary);font-weight:500}.amd-meta-link{color:inherit;text-decoration:none;border-bottom:1px dotted transparent;transition:color .15s ease,border-color .15s ease}.amd-meta-link:hover,.amd-meta-link:focus{color:var(--accent-orange);border-bottom-color:var(--accent-orange)}.amd-status-pill{display:inline-flex;align-items:center;gap:6px;padding:2px 9px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.amd-status-pill.active{border:1px solid var(--success-color);color:var(--success-color)}.amd-status-pill.inactive{border:1px solid var(--text-tertiary);color:var(--text-tertiary)}.amd-status-pill .dot{width:5px;height:5px;border-radius:999px;background:currentColor}.amd-tabs{padding:0 4px;border-bottom:1px solid var(--border-primary);display:flex;gap:24px;margin-bottom:14px}.amd-tab{background:transparent;border:none;padding:12px 2px;color:var(--text-secondary);font-size:13px;font-weight:600;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;font-family:inherit}.amd-tab.active{color:var(--accent-orange);border-bottom-color:var(--accent-orange)}.amd-tab .count{margin-left:6px;color:var(--text-tertiary);font-weight:500}.amd-tab-body{padding:0 0 22px;display:flex;flex-direction:column;gap:14px}.amd-kpi-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.amd-kpi{background:var(--card-background, #fffdf9);border:none;border-radius:12px;box-shadow:0 1px 3px #0000004d;transition:box-shadow .2s ease;padding:14px 16px}.amd-kpi-label{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary);margin-bottom:4px}.amd-kpi-value{font-size:18px;font-weight:700;color:var(--text-primary);letter-spacing:-.01em}.amd-kpi-sub{font-size:11px;color:var(--text-tertiary);margin-top:2px}.amd-card{background:var(--card-background, #fffdf9);border:1px solid transparent;border-radius:12px;box-shadow:0 1px 3px #0000004d;transition:all .2s ease;padding:20px}.amd-card.flush{padding:0;overflow:hidden}.amd-card.hoverable:hover{border-color:var(--accent-orange-hover)}.amd-section-label{display:flex;align-items:center;justify-content:space-between;font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary);margin:4px 0 10px}.amd-basic-info{display:grid;grid-template-columns:repeat(3,1fr);row-gap:6px;padding:14px 16px;background:var(--card-background, #fffdf9);border:1px solid transparent;border-radius:12px;box-shadow:0 1px 3px #0000004d;transition:all .2s ease}.amd-info-chip{display:flex;align-items:baseline;gap:6px;padding:2px 14px;min-width:0;border-right:1px solid var(--border-primary)}.amd-info-chip:nth-child(3n),.amd-info-chip:last-child{border-right:none}.amd-info-chip-label{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary)}.amd-info-chip-value{font-size:12.5px;font-weight:600;color:var(--text-primary)}.amd-tag{display:inline-flex;align-items:center;padding:2px 10px;border-radius:999px;background:var(--chip-orange-bg);color:var(--accent-orange);font-size:11px;font-weight:500;border:1px solid transparent}.amd-tag-row{display:flex;flex-wrap:wrap;gap:6px}.amd-empty-text{font-size:12px;color:var(--text-tertiary)}.amd-assessment{background:var(--card-background, #fffdf9);border:1px solid transparent;border-radius:12px;box-shadow:0 1px 3px #0000004d;transition:all .2s ease;overflow:hidden}.amd-assessment-header{padding:14px 16px;border-bottom:1px solid var(--border-primary);display:flex;align-items:center;justify-content:space-between;gap:10px}.amd-assessment-header .left{min-width:0}.amd-assessment-eyebrow{font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary)}.amd-assessment-title{font-size:12.5px;font-weight:700;color:var(--text-primary);margin-top:2px}.amd-assessment-body{padding:18px 20px;font-size:13.5px;color:var(--text-secondary);line-height:1.6}.amd-assessment-body-label{font-size:11px;font-weight:700;color:var(--text-primary);margin-bottom:6px}.amd-assessment-header-actions{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto}.amd-assessment-footer{padding:12px 16px;border-top:1px solid var(--border-primary);background:transparent;display:flex;align-items:center;justify-content:space-between;gap:10px}.amd-assessment-meta{font-size:11px;color:var(--text-tertiary)}.amd-assessment-actions{display:flex;gap:6px}.amd-share-toggle{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;padding:4px 9px 4px 7px;border-radius:999px;background:transparent;border:1px solid var(--card-border);color:var(--text-secondary);font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;font-family:inherit;transition:color .15s ease,border-color .15s ease,background .15s ease}.amd-share-toggle.shared{background:var(--info-bg);border-color:var(--info-color);color:var(--info-color)}.amd-share-checkbox{width:13px;height:13px;border-radius:3px;border:1.5px solid currentColor;background:transparent;display:inline-flex;align-items:center;justify-content:center}.amd-share-toggle.shared .amd-share-checkbox{background:var(--info-color);color:var(--text-inverse)}.amd-filter-chips{display:flex;gap:6px;flex-wrap:wrap}.amd-filter-chip{padding:5px 12px;border-radius:999px;background:transparent;color:var(--text-secondary);border:1px solid var(--card-border);font-size:11.5px;font-weight:700;cursor:pointer;font-family:inherit;display:inline-flex;align-items:center;gap:6px;transition:background .15s ease,color .15s ease,border-color .15s ease}.amd-filter-chip:hover:not(.active){border-color:var(--accent-orange-hover)}.amd-filter-chip.active{background:var(--accent-orange);color:var(--text-inverse);border-color:var(--accent-orange)}.amd-filter-chip-count{font-size:10px;font-weight:700;padding:1px 6px;border-radius:999px;background:var(--surface-secondary);color:var(--text-tertiary)}.amd-filter-chip.active .amd-filter-chip-count{background:#0000002e;color:var(--text-inverse)}.amd-filter-summary{font-size:11.5px;color:var(--text-secondary)}.amd-empty{border:1px dashed var(--card-border);border-radius:10px;padding:40px 20px;text-align:center;color:var(--text-tertiary);font-size:12.5px}.amd-empty .amd-btn{margin-top:12px}.amd-session-list{display:flex;flex-direction:column;gap:8px}.amd-session-row{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:16px 18px;background:var(--card-background, #fffdf9);border:1px solid transparent;border-radius:12px;box-shadow:0 1px 3px #0000004d;text-decoration:none;color:inherit;transition:all .2s ease}.amd-session-row:hover{border-color:var(--accent-orange-hover)}.amd-session-date{min-width:80px}.amd-session-date .date{font-size:12.5px;font-weight:700;color:var(--text-primary)}.amd-session-date .time{font-size:11px;color:var(--text-secondary);margin-top:2px;font-family:ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.amd-session-mid{min-width:0}.amd-session-mid-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:4px}.amd-session-mid-row:last-child{margin-bottom:0}.amd-session-trainer{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:var(--text-secondary)}.amd-session-trainer .av{width:18px;height:18px;border-radius:999px;background:var(--accent-orange);color:var(--text-inverse);font-size:8.5px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.amd-session-type{font-size:11px;color:var(--text-tertiary)}.amd-session-note{font-size:12px;color:var(--text-secondary);line-height:1.45;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden;font-style:italic}.amd-session-status{display:inline-flex;align-items:center;gap:6px;padding:2px 9px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.amd-session-status .dot{width:5px;height:5px;border-radius:999px;background:currentColor}.amd-session-status.scheduled{border:1px solid var(--info-color);color:var(--info-color)}.amd-session-status.completed{border:1px solid var(--success-color);color:var(--success-color)}.amd-session-status.cancelled{border:1px solid var(--text-tertiary);color:var(--text-tertiary)}.amd-note-composer{background:var(--card-background, #fffdf9);border:1px solid transparent;border-radius:12px;box-shadow:0 1px 3px #0000004d;transition:all .2s ease;overflow:hidden}.amd-note-composer-body{padding:16px 18px;display:flex;flex-direction:column;gap:12px}.amd-note-input,.amd-note-textarea,.amd-note-tags-input{width:100%;box-sizing:border-box;background:transparent;border:1px solid var(--card-border);border-radius:8px;outline:none;color:var(--text-primary);font-size:14px;font-family:inherit;padding:10px 12px;transition:border-color .15s ease}.amd-note-input{font-weight:600}.amd-note-textarea{resize:vertical;min-height:96px;line-height:1.5;font-weight:400}.amd-note-input:focus,.amd-note-textarea:focus,.amd-note-tags-input:focus{border-color:var(--border-focus)}.amd-note-input::placeholder,.amd-note-textarea::placeholder,.amd-note-tags-input::placeholder{color:var(--text-tertiary);font-weight:400}.amd-note-controls{display:flex;gap:10px;flex-wrap:wrap}.amd-note-controls .amd-toolbar-select{padding:10px 14px;font-size:14px;border-radius:8px;min-width:140px}.amd-note-composer-footer{padding:10px 16px;border-top:1px solid var(--border-primary);background:transparent;display:flex;align-items:center;justify-content:space-between;gap:10px}.amd-note-list{display:flex;flex-direction:column;gap:10px}.amd-note-card{background:var(--card-background, #fffdf9);border:1px solid transparent;border-radius:12px;box-shadow:0 1px 3px #0000004d;transition:all .2s ease;padding:18px 20px}.amd-note-card-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.amd-note-card-author{width:22px;height:22px;border-radius:999px;background:var(--accent-orange);color:var(--text-inverse);font-size:9.5px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.amd-note-card-name{font-size:12px;font-weight:600;color:var(--text-primary)}.amd-note-card-date{font-size:11px;color:var(--text-tertiary);margin-left:auto}.amd-note-category{display:inline-flex;align-items:center;padding:1px 8px;border-radius:999px;background:var(--chip-orange-bg);color:var(--accent-orange);font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.amd-note-priority{width:8px;height:8px;border-radius:999px;flex:0 0 auto}.amd-note-priority.low{background:var(--text-tertiary)}.amd-note-priority.medium{background:var(--info-color)}.amd-note-priority.high{background:var(--warning-color)}.amd-note-priority.urgent{background:var(--error-color)}.amd-note-card-title{font-size:13.5px;font-weight:700;color:var(--text-primary);margin-bottom:4px}.amd-note-card-body{font-size:12.5px;color:var(--text-secondary);line-height:1.5;white-space:pre-wrap}.amd-medical-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px 24px;margin-top:4px}.amd-medical-row{display:flex;flex-direction:column;gap:2px;min-width:0}.amd-medical-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary)}.amd-medical-value{font-size:13px;color:var(--text-primary);word-break:break-word}.amd-medical-notes{margin-top:12px;padding-top:12px;border-top:1px solid var(--border-primary);display:flex;flex-direction:column;gap:4px}.amd-note-card-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.amd-note-card-tag{font-size:10.5px;color:var(--text-tertiary);padding:1px 8px;border-radius:999px;background:var(--surface-secondary);border:1px solid var(--border-primary)}.amd-note-shared-badge{display:inline-flex;align-items:center;padding:1px 8px;border-radius:999px;background:var(--info-bg);color:var(--info-color);border:1px solid var(--info-color);font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.amd-note-actions{position:relative;margin-left:6px}.amd-note-actions-btn{width:26px;height:26px}.amd-note-actions-menu{position:absolute;top:calc(100% + 4px);right:0;z-index:10;background:var(--card-background, #fffdf9);border:1px solid var(--card-border);border-radius:8px;box-shadow:0 8px 24px #0000002e;padding:4px;min-width:180px;display:flex;flex-direction:column}.amd-note-actions-item{display:inline-flex;align-items:center;gap:8px;padding:8px 10px;border:none;background:transparent;color:var(--text-primary);font-size:12.5px;font-family:inherit;font-weight:500;cursor:pointer;border-radius:5px;text-align:left;width:100%}.amd-note-actions-item:hover{background:var(--surface-hover)}.amd-note-actions-item.danger{color:var(--error-color)}.amd-note-actions-item.danger:hover{background:var(--error-bg)}.amd-note-actions-checkbox{flex:0 0 auto;border-color:var(--text-tertiary)}.amd-note-actions-item .amd-share-checkbox{width:13px;height:13px;border-width:1.5px}.amd-checkmark{width:7px;height:7px;background:var(--info-color);border-radius:1px;display:inline-block}@keyframes amd-skel-pulse{0%,to{opacity:1}50%{opacity:.55}}.amd-detail-skeleton{display:flex;flex-direction:column;gap:0;animation:amd-skel-pulse 1.4s ease-in-out infinite}.amd-skel-bar{display:inline-block;background:linear-gradient(90deg,var(--surface-secondary) 0%,var(--card-border) 50%,var(--surface-secondary) 100%);background-size:200% 100%;animation:amd-skel-shimmer 1.6s linear infinite}.amd-skel-circle{border-radius:999px}@keyframes amd-skel-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.amd-skel-card{pointer-events:none}.amd-loading{padding:60px 20px;text-align:center;color:var(--text-tertiary);font-size:13px}.amd-loading .icon-spin{display:inline-block;vertical-align:middle;margin-right:8px}.amd-assessment-modal-eyebrow{font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary);margin-bottom:4px}.amd-assessment-modal-actions{display:flex;gap:8px;align-items:center}.amd-assessment-modal-info{padding:10px 14px;background:var(--info-bg);border:1px solid var(--info-border);border-radius:8px;font-size:12px;color:var(--info-text);margin-bottom:18px;display:flex;align-items:center;gap:8px}.amd-assessment-modal-footer{display:flex;justify-content:space-between;align-items:center;gap:14px;font-size:11px;color:var(--text-tertiary);padding:12px 22px;border-top:1px solid var(--border-primary);background:var(--surface-secondary)}.amd-assessment-modal-footer .mono{font-family:ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace}.amd-md p{margin:0 0 10px}.amd-md p:last-child{margin-bottom:0}.amd-md h1,.amd-md h2,.amd-md h3{margin:16px 0 8px;color:var(--text-primary);letter-spacing:-.005em}.amd-md h1{font-size:17px;font-weight:700}.amd-md h2{font-size:14.5px;font-weight:700}.amd-md h3{font-size:13px;font-weight:700}.amd-md ul,.amd-md ol{margin:0 0 10px;padding-left:22px}.amd-md li{margin-bottom:4px}.amd-md strong{color:var(--text-primary)}.amd-md code{font-family:ui-monospace,SF Mono,JetBrains Mono,Menlo,monospace;font-size:12px;padding:1px 5px;border-radius:4px;background:var(--surface-secondary)}.amd-md a{color:var(--accent-orange)}.eam-photo-strip{display:flex;align-items:center;gap:14px;margin-bottom:24px}.eam-photo-strip-text{flex:1;min-width:0}.eam-photo-strip-info{font-size:11.5px;color:var(--text-secondary);margin-bottom:6px}.eam-photo-strip-actions{display:flex;gap:8px}.eam-section-header{display:flex;align-items:baseline;justify-content:space-between;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-primary);margin:4px 0 14px;padding-bottom:8px;border-bottom:1px solid var(--border-primary)}.eam-section-header .hint{text-transform:none;letter-spacing:0;font-weight:500;color:var(--text-tertiary);font-size:11px}.eam-field-label{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);margin-bottom:6px}.eam-field-label .required{color:var(--accent-orange);margin-left:4px}.eam-input,.eam-select,.eam-textarea{width:100%;background:var(--input-bg);border:1px solid var(--input-border);border-radius:8px;padding:9px 11px;font-size:13px;color:var(--text-primary);font-family:inherit;outline:none;box-sizing:border-box}.eam-input:focus,.eam-select:focus,.eam-textarea:focus{border-color:var(--input-focus-border)}.eam-input.error,.eam-select.error,.eam-textarea.error{border-color:var(--error-color)}.eam-input::placeholder,.eam-textarea::placeholder{color:var(--input-placeholder)}.eam-textarea{resize:vertical;line-height:1.5}.eam-error{color:var(--error-color);font-size:11px;margin-top:4px}.eam-row{display:grid;gap:14px;margin-bottom:22px}.eam-row.r-3-1-2{grid-template-columns:2fr 1fr 1.3fr}.eam-row.r-4{grid-template-columns:1fr 1fr 1fr 1fr}.eam-row.r-2{grid-template-columns:1fr 1fr;margin-bottom:14px}.eam-row.r-3{grid-template-columns:1.3fr 1fr 1fr}@media(max-width:700px){.eam-row.r-3-1-2,.eam-row.r-4,.eam-row.r-2,.eam-row.r-3{grid-template-columns:1fr}}.eam-input-with-unit{display:flex;gap:6px}.eam-input-with-unit .eam-input{flex:1 1 0;min-width:0}.eam-input-with-unit .eam-select{flex:0 0 72px}.eam-tag-input-row{display:flex;align-items:center;gap:8px;background:var(--input-bg);border:1px solid var(--input-border);border-radius:8px;padding:6px 6px 6px 12px;margin-bottom:10px}.eam-tag-input-row input{flex:1;background:transparent;border:none;outline:none;color:var(--text-primary);font-size:13px;font-family:inherit;padding:4px 0}.eam-tag-input-row input::placeholder{color:var(--input-placeholder)}.eam-tag-pills{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.eam-tag-pill{display:inline-flex;align-items:center;gap:6px;background:var(--chip-orange-bg);color:var(--accent-orange);border:1px solid var(--accent-orange);border-radius:999px;padding:4px 4px 4px 10px;font-size:11.5px;font-weight:600}.eam-tag-pill button{width:16px;height:16px;border-radius:999px;border:none;background:transparent;color:var(--accent-orange);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0}.eam-suggested-label{font-size:11px;color:var(--text-tertiary);margin-bottom:6px}.eam-suggested-row{display:flex;flex-wrap:wrap;gap:6px}.eam-suggested-chip{padding:3px 10px;border-radius:999px;background:transparent;border:1px dashed var(--card-border);color:var(--text-secondary);font-size:11.5px;font-weight:500;cursor:pointer;font-family:inherit}.eam-suggested-chip:hover{border-color:var(--accent-orange-hover);border-style:solid;color:var(--accent-orange)}.eam-footer{padding:12px 18px;border-top:1px solid var(--border-primary);background:var(--surface-secondary);display:flex;align-items:center;justify-content:space-between;gap:10px}.eam-footer-right{display:flex;gap:8px}.amd-assessment-modal .modal-content,.amd-assessment-modal{max-width:880px}.client-selector{position:relative;width:100%}.input-container{position:relative;display:flex;align-items:center}.client-input{width:100%;padding:12px 40px 12px 16px;border:2px solid var(--input-border, #d1d5db);border-radius:8px;font-size:16px;background:var(--input-bg, white);color:var(--text-primary, #111827);transition:border-color .2s ease;cursor:text}.client-input::placeholder{color:var(--text-secondary, #6b7280)}.client-input:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.client-input.has-selection{border-color:var(--success-color, #10b981)}.dropdown-arrow{position:absolute;right:12px;cursor:pointer;color:var(--text-secondary, #6b7280);display:flex;align-items:center;justify-content:center;width:20px;height:20px;transition:color .2s ease}.dropdown-arrow:hover{color:var(--text-primary, #374151)}.dropdown-menu{position:absolute;top:100%;left:0;right:0;background:var(--card-bg, white);border:2px solid var(--input-border, #d1d5db);border-top:none;border-radius:0 0 8px 8px;max-height:200px;overflow-y:auto;z-index:1000;box-shadow:0 4px 6px -1px #0000001a}.dropdown-item{padding:12px 16px;cursor:pointer;border-bottom:1px solid var(--border-primary, #f3f4f6);transition:background-color .2s ease}.dropdown-item:last-child{border-bottom:none}.dropdown-item:hover{background-color:var(--hover-bg, #f9fafb)}.dropdown-item.selected{background-color:var(--primary-light, #eff6ff);border-left:3px solid var(--primary-color, #3b82f6)}.dropdown-item.loading,.dropdown-item.no-results{color:var(--text-secondary, #6b7280);cursor:default;text-align:center;font-style:italic}.dropdown-item.loading:hover,.dropdown-item.no-results:hover{background-color:transparent}.client-info{display:flex;flex-direction:column;gap:2px}.client-name{font-weight:500;color:var(--text-primary, #111827);font-size:14px}.client-email{font-size:12px;color:var(--text-secondary, #6b7280)}.client-pets{font-size:11px;color:var(--text-tertiary, #9ca3af);margin-top:2px}.client-pending-badge{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:10px;font-size:11px;font-weight:500;background:var(--warning-bg, #fffbeb);color:var(--warning-text, #92400e)}@media(max-width:768px){.client-input{font-size:16px}.dropdown-menu{max-height:150px}.dropdown-item{padding:10px 12px}}.animal-form-page{padding:20px;max-width:min(100%,800px);margin:0 auto}.breadcrumb{margin-bottom:20px}.breadcrumb-link{background:none;border:none;color:var(--text-secondary);font-size:16px;font-weight:500;cursor:pointer;padding:8px 0;display:inline-flex;align-items:center;gap:8px;transition:color .2s;text-decoration:none}.breadcrumb-link:before{content:"‹";font-size:24px;font-weight:400;line-height:1}.breadcrumb-link:hover{color:var(--accent-orange)}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border-primary)}.page-header h1{margin:0;color:var(--text-primary)}.error-message{background-color:var(--error-bg);color:var(--error-text);padding:12px;border-radius:4px;margin-bottom:20px;border:1px solid var(--error-border)}.animal-form{display:flex;flex-direction:column;gap:12px}.form-section{padding:20px;background:var(--card-background);border-radius:16px;box-shadow:var(--shadow-md)}.form-section:last-child{border-bottom:none}.form-section h2,.form-section h3{margin:.5rem 0 0;color:var(--text-primary);font-size:18px;font-weight:600;border-bottom:1px solid var(--text-tertiary);padding-bottom:1rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;align-items:start}.form-row:last-child{margin-bottom:0}.form-group{display:flex;flex-direction:column;gap:4px;min-width:0}.form-group label{font-size:14px;font-weight:500;color:var(--text-primary)}.form-group input,.form-group select,.form-group textarea{border:1px solid var(--input-border);border-radius:4px;font-size:14px;background-color:var(--input-bg);color:var(--text-primary);transition:border-color .2s,box-shadow .2s;width:100%;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--input-focus-border);box-shadow:0 0 0 3px var(--focus-ring)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--input-placeholder)}.input-group,.input-with-unit{display:flex;gap:10px;align-items:stretch;width:100%}.input-group input,.input-with-unit input{flex:2;min-width:0}.input-group select,.input-with-unit select{flex:1;min-width:70px;max-width:100px}.input-with-unit.compact{display:flex;flex-direction:row;gap:8px;align-items:center;width:100%}.input-with-unit.compact input{flex:0 0 80px;width:80px;min-width:60px;max-width:100px;text-align:center}.input-with-unit.compact select{flex:1;min-width:70px;max-width:none}.behavior-tags-section{display:flex;flex-direction:column;gap:16px;margin-top:1rem}.add-tag-input{display:flex;gap:10px;align-items:center}.add-tag-input input{flex:1;padding:10px 12px;border:1px solid var(--input-border);border-radius:6px;font-size:14px;background-color:var(--input-bg);color:var(--text-primary);transition:border-color .2s,box-shadow .2s}.add-tag-input input:focus{outline:none;border-color:var(--input-focus-border);box-shadow:0 0 0 3px var(--focus-ring)}.add-tag-input input::placeholder{color:var(--input-placeholder)}.tags-input{display:flex;flex-direction:column;gap:15px}.add-tag{display:flex;gap:10px;align-items:end}.add-tag input{flex:1;padding:8px 12px;border:1px solid var(--input-border);border-radius:4px;font-size:14px;background-color:var(--input-bg);color:var(--text-primary)}.tags-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.remove-tag{background:none;border:none;color:var(--primary-color);cursor:pointer;font-size:16px;font-weight:700;line-height:1;padding:0;width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s,color .2s}.remove-tag:hover{background-color:var(--error-color);color:#fff}.form-actions{padding:24px 20px;background-color:transparent;display:flex;gap:12px;justify-content:flex-end;border-top:none}.btn-primary{background-color:var(--accent-orange);color:var(--body-background);border-color:var(--accent-orange)}.btn-primary:hover:not(:disabled){background-color:var(--accent-orange-hover);border-color:var(--accent-orange-hover)}.btn-outline-danger{background-color:var(--error-bg);border:1px solid var(--error-border);color:var(--error-text)}.btn-outline-danger:hover:not(:disabled){background-color:var(--error-border);color:var(--error-text)}.btn-sm{padding:6px 12px;font-size:13px}.loading{text-align:center;padding:40px;font-size:16px;color:var(--text-secondary)}@media(max-width:768px){.animal-form-page{padding:10px}.page-header{flex-direction:column;gap:15px;align-items:stretch}.form-section{padding:20px}.form-row{grid-template-columns:1fr;gap:15px}.form-actions{padding:20px;flex-direction:column}.add-tag,.add-tag-input{flex-direction:column;align-items:stretch}.add-tag-input input{width:100%}}.photo-upload-section{display:flex;gap:24px;align-items:flex-start;padding:16px;background:var(--surface-hover);border-radius:8px;border:1px solid var(--card-border)}.photo-preview{flex-shrink:0}.photo-upload-controls{display:flex;flex-direction:column;gap:12px;flex:1}.photo-upload-controls .btn{width:fit-content}.photo-upload-controls label.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1rem;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;background-color:var(--accent-orange);color:var(--body-background);border:1px solid var(--accent-orange)}.photo-upload-controls label.btn-primary:hover{background-color:var(--accent-orange-hover);border-color:var(--accent-orange-hover)}.photo-upload-controls .form-help{margin:0;font-size:.875rem;color:var(--text-secondary, #6b7280)}@media(max-width:640px){.photo-upload-section{flex-direction:column;align-items:center;text-align:center}.photo-upload-controls{align-items:center}}.animal-form-page--mobile{max-width:none;margin:0;padding:12px 12px 88px}.animal-form-page--mobile .breadcrumb{padding-top:4px}.animal-form-page--mobile .page-header h1{font-size:22px}.amd-list-row.session-row .amd-row-name{display:flex;align-items:center;gap:8px;justify-content:space-between}.amd-list-row.session-row .session-row-date{flex:1;min-width:0;font-size:14px;font-weight:700;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.amd-list-row.session-row .session-row-time{font-weight:500;color:var(--text-secondary)}.amd-list-row.session-row.active .session-row-date{color:var(--accent-orange)}.session-load-more{width:100%;padding:12px;border:none;border-top:1px solid var(--border-primary);background:transparent;color:var(--accent-orange);font-family:inherit;font-size:12.5px;font-weight:600;cursor:pointer;transition:background .2s ease}.session-load-more:hover:not(:disabled){background:var(--surface-hover)}.session-load-more:disabled{opacity:.6;cursor:not-allowed}.session-status-badge{display:inline-flex;align-items:center;padding:2px 9px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;flex:0 0 auto}.session-status-badge.session-status-pending{background:var(--warm-tint-bg);color:var(--accent-orange);border:1px solid var(--warm-tint-border)}.session-status-badge.session-status-pending_reschedule{background:#8b5cf61f;color:#8b5cf6;border:1px solid rgba(139,92,246,.3)}.session-status-badge.session-status-scheduled{background:var(--info-bg, rgba(59, 130, 246, .12));color:var(--info-color, #3b82f6);border:1px solid var(--info-border, rgba(59, 130, 246, .3))}.session-status-badge.session-status-completed{background:var(--success-bg);color:var(--success-color);border:1px solid var(--success-border)}.session-status-badge.session-status-cancelled{background:var(--error-bg);color:var(--error-color);border:1px solid var(--error-border)}.session-status-badge.session-status-no-show{background:var(--warning-bg);color:var(--warning-text);border:1px solid var(--warning-border)}.session-detail-header .amd-detail-subtitle{display:inline-flex;align-items:center;gap:5px}.session-detail-stack{display:flex;flex-direction:column;gap:14px;padding-bottom:22px}.session-section-card .amd-section-label{margin-bottom:12px;flex-wrap:wrap;gap:10px}.session-section-card .session-section-body{margin:0 0 8px;line-height:1.55;color:var(--text-primary);font-size:13.5px;white-space:pre-wrap}.session-section-card .session-section-body:last-child{margin-bottom:0}.session-section--trainer{border-left:3px solid var(--accent-orange)}.session-section--alert{border-left:3px solid var(--error-color)}.session-section--reschedule{border-left:3px solid #8b5cf6}.session-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px 18px}.session-info-grid>div{display:flex;flex-direction:column;gap:3px;min-width:0}.session-info-label{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary)}.session-info-value{font-size:13.5px;color:var(--text-primary);font-weight:500;overflow:hidden;text-overflow:ellipsis}.session-notes-textarea{width:100%;padding:10px 12px;border:1px solid var(--border-primary);border-radius:8px;resize:vertical;font-family:inherit;font-size:13.5px;background:var(--input-bg, var(--card-background));color:var(--text-primary);margin-bottom:10px;box-sizing:border-box}.session-notes-textarea:focus{border-color:var(--accent-orange);outline:none}.session-notes-actions{display:flex;gap:8px}.session-notes-empty{margin:0;color:var(--text-tertiary);font-style:italic;font-size:13px}.session-reschedule-actions{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}.client-sessions-md-page .amd-loading .icon-spin{animation:client-sessions-spin 1s linear infinite}@keyframes client-sessions-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.client-sessions-md-page .schedule-btn-wrapper{display:inline-block;position:relative;margin-left:auto}.client-sessions-md-page .schedule-btn-wrapper.has-tooltip:hover .custom-tooltip{opacity:1;visibility:visible}.client-sessions-md-page .custom-tooltip{position:absolute;bottom:calc(100% + 6px);right:0;background:var(--surface-primary);color:var(--text-primary);padding:6px 10px;border:1px solid var(--card-border);border-radius:6px;font-size:12px;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:10;pointer-events:none;box-shadow:0 4px 12px #0000002e}@media(max-width:768px){.client-sessions-md-page .amd-page-header{padding:16px 0 4px}.client-sessions-md-page .amd-page-header h1{font-size:20px}.client-sessions-md-page .amd-toolbar:not(.mobile-filter-region--collapsed){flex-direction:column;align-items:stretch}.client-sessions-md-page .amd-toolbar .amd-search,.client-sessions-md-page .amd-toolbar .amd-toolbar-select{width:100%}}.client-schedule-page{max-width:min(100%,1200px);margin:0 auto;padding:2rem}.client-schedule-page .loading-state,.session-scheduler .loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;color:var(--text-secondary)}.client-schedule-page .loading-state .spinner,.session-scheduler .loading-state .spinner{width:40px;height:40px;border:3px solid var(--border-primary);border-top-color:var(--accent-orange);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(360deg)}}.page-content{background:var(--card-background);border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:2rem}.consent-warning{text-align:center;padding:2rem;background:var(--warning-bg);border:1px solid var(--warning-border);border-radius:8px}.consent-warning h3{color:var(--warning-text);margin-bottom:1rem}.consent-warning p{color:var(--warning-text);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:var(--surface-secondary);padding:1.5rem;border-radius:8px;border:1px solid var(--border-primary)}.scheduler-main{display:flex;flex-direction:column;gap:2rem;min-width:0;overflow:hidden}.calendar-container{background:var(--card-background);border:1px solid var(--border-primary);border-radius:8px;padding:1.5rem;width:100%;max-width:100%;box-sizing:border-box;overflow:hidden}.calendar-container .calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:-1rem}.calendar-container .calendar-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.calendar-nav{background:none;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer;padding:.5rem;border-radius:4px;transition:background-color .2s}.calendar-nav:hover{background:var(--surface-hover)}.client-schedule-page .calendar-grid{width:100%;display:block;box-sizing:border-box}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:0;box-sizing:border-box}.calendar-weekday{padding:.75rem .25rem;text-align:center;font-size:.875rem;font-weight:600;color:var(--text-secondary);background:var(--surface-secondary);border:1px solid var(--border-primary);border-bottom:none;box-sizing:border-box}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);width:95%;box-sizing:border-box;margin:1rem auto}.calendar-day-cell{aspect-ratio:1;border:1px solid var(--border-primary);border-top:none;box-sizing:border-box;background:var(--cal-day-background)}.calendar-day-cell:has(.unavailable){opacity:.45;background-color:var(--cal-day-background)}.calendar-day{width:100%;height:100%;border:none;background:var(--cal-day-background);cursor:pointer;font-size:.875rem;transition:all .2s;display:flex;align-items:center;justify-content:flex-start;padding-top:1.7rem}.calendar-day.available{color:var(--text-primary)}.calendar-day.available:hover{background:var(--chip-orange-bg);color:var(--accent-orange)}.calendar-day.selected{background:var(--accent-orange);color:var(--text-inverse)}.calendar-day.unavailable{color:var(--text-tertiary);cursor:not-allowed}.time-slots-container{background:var(--card-background);border:1px solid var(--border-primary);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:var(--text-primary)}.time-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:.75rem}.time-slot{padding:.75rem 1rem;border:1px solid var(--border-primary);border-radius:6px;background:var(--card-background);cursor:pointer;font-size:.875rem;font-weight:500;color:var(--text-primary);transition:all .2s;text-align:center;min-height:44px}.time-slot:hover{border-color:var(--accent-orange);background:var(--chip-orange-bg);color:var(--accent-orange)}.no-slots{color:var(--text-secondary);font-style:italic;text-align:center;padding:2rem}.booking-form{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border-primary)}.booking-form .form-group{margin-bottom:1.5rem}.booking-form .form-label{display:block;font-size:.875rem;font-weight:500;color:var(--text-primary);margin-bottom:.5rem}.booking-form input[type=text],.booking-form textarea{width:100%;padding:.75rem;font-size:.875rem;border:1px solid var(--border-primary);border-radius:6px;background:var(--input-bg);color:var(--text-primary);transition:border-color .2s;box-sizing:border-box}.booking-form input[type=text]::placeholder,.booking-form textarea::placeholder{color:var(--input-placeholder);font-size:.875rem}.booking-form input[type=text]:focus,.booking-form textarea:focus{outline:none;border-color:var(--accent-orange)}.booking-form textarea{min-height:100px;resize:vertical}.btn-block{width:100%}@media(max-width:768px){.client-schedule-page,.page-content{padding:1rem}.scheduler-container{grid-template-columns:1fr;gap:1rem;min-height:0}.calendar-container,.time-slots-container{padding:1rem}.time-slots{grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:.5rem}.time-slot{padding:.6rem .5rem}}.client-schedule-page--mobile{max-width:none;padding:.75rem .75rem 88px;margin:0}.client-schedule-page--mobile .page-content{padding:1rem;box-shadow:none;border:1px solid var(--card-border)}.amd-list-row.task-row{grid-template-columns:1fr;align-items:flex-start}.amd-list-row.task-row .amd-row-name{display:flex;align-items:center;gap:8px;justify-content:space-between}.amd-list-row.task-row .amd-row-name>span:first-child{flex:1;min-width:0}.task-status-badge{display:inline-flex;align-items:center;padding:2px 9px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;flex:0 0 auto}.task-status-badge.task-status-assigned{background:var(--warm-tint-bg);color:var(--accent-orange);border:1px solid var(--warm-tint-border)}.task-status-badge.task-status-in-progress{background:var(--info-bg, rgba(59, 130, 246, .12));color:var(--info-color, #3b82f6);border:1px solid var(--info-border, rgba(59, 130, 246, .3))}.task-status-badge.task-status-completed{background:var(--success-bg);color:var(--success-color);border:1px solid var(--success-border)}.task-detail-header .amd-detail-subtitle{display:inline-flex;align-items:center;gap:5px}.task-detail-stack{display:flex;flex-direction:column;gap:14px;padding-bottom:22px}.task-section-card .task-section-body{margin:0;line-height:1.55;color:var(--text-primary);font-size:13.5px;white-space:pre-wrap}.task-notes-list{display:flex;flex-direction:column;gap:10px;margin-bottom:14px}.task-note-item{background:var(--surface-primary);padding:12px 14px;border-radius:8px;border-left:3px solid var(--accent-orange)}.task-note-text{margin:0 0 6px;color:var(--text-primary);font-size:13.5px;line-height:1.5;white-space:pre-wrap}.task-note-meta{display:flex;align-items:center;justify-content:space-between;gap:8px}.task-note-meta small{color:var(--text-tertiary);font-size:12px}.task-note-actions{display:flex;gap:6px}.task-note-btn{padding:3px 9px;border:none;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:opacity .2s ease;font-family:inherit}.task-note-btn:hover{opacity:.85}.task-note-btn-edit{background:var(--warning-bg);color:var(--warning-text)}.task-note-btn-delete{background:var(--error-bg);color:var(--error-text)}.task-note-edit textarea{width:100%;padding:8px 10px;border:1px solid var(--border-primary);border-radius:6px;resize:vertical;font-family:inherit;font-size:13px;background:var(--input-bg, var(--card-background));color:var(--text-primary);margin-bottom:8px;box-sizing:border-box}.task-note-edit-actions{display:flex;gap:8px}.task-notes-empty{margin:0 0 14px;color:var(--text-tertiary);font-style:italic;font-size:13px}.task-add-note{display:flex;flex-direction:column;gap:10px}.task-add-note textarea{padding:10px 12px;border-radius:8px;resize:vertical;font-family:inherit;font-size:13.5px;background:var(--input-bg, var(--card-background));border:1px solid var(--border-primary);color:var(--text-primary);box-sizing:border-box}.task-add-note textarea:focus{border-color:var(--accent-orange);outline:none}.task-add-note .amd-btn{align-self:flex-start}.task-section-card .amd-section-label{margin-bottom:12px;flex-wrap:wrap;gap:10px}.task-upload-error{display:flex;justify-content:space-between;align-items:center;padding:9px 12px;margin-bottom:12px;border-radius:8px;background-color:var(--error-bg);color:var(--error-text);font-size:13px}.task-upload-error p{margin:0}.task-upload-error button{padding:4px 10px;border:none;border-radius:4px;background:transparent;color:var(--error-text);font-size:12px;cursor:pointer;font-weight:500}.task-upload-error button:hover{background-color:var(--error-border)}.client-tasks-md-page .amd-loading .icon-spin{animation:client-tasks-spin 1s linear infinite}@keyframes client-tasks-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.task-resource-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.task-resource-link{display:inline-flex;align-items:center;padding:4px 10px;border-radius:4px;text-decoration:none;font-size:12px;font-weight:500;transition:opacity .2s ease;color:var(--text-inverse, #ffffff)}.task-resource-link:hover{opacity:.85}.task-resource-link--pdf{background:var(--error-color, #e74c3c)}.task-resource-link--video{background:var(--purple-text, #8b79b3)}.task-resource-link--link{background:var(--info-color, #3b82f6)}@media(max-width:768px){.client-tasks-md-page .amd-page-header{padding:16px 0 4px}.client-tasks-md-page .amd-page-header h1{font-size:20px}}.sts-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}.sts-add-btn{display:flex;align-items:center;gap:4px;background:none;border:1px solid var(--accent-orange);color:var(--accent-orange);border-radius:6px;padding:3px 10px;font-size:.8rem;font-weight:500;cursor:pointer;transition:background .2s ease,color .2s ease}.sts-add-btn:hover{background:var(--accent-orange);color:var(--text-inverse)}.sts-empty{margin:.5rem 0 0;font-size:.85rem;color:var(--text-tertiary)}.sts-table{margin-top:.75rem;border:1px solid var(--card-border);border-radius:8px;overflow:hidden}.sts-table-head{display:grid;grid-template-columns:1fr 110px 120px 32px;padding:6px 12px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);background:var(--surface-secondary);border-bottom:1px solid var(--card-border)}.sts-row{display:grid;grid-template-columns:1fr 110px 120px 32px;align-items:center;padding:8px 12px;font-size:.85rem;border-bottom:1px solid var(--card-border);background:var(--card-background)}.sts-row:last-child{border-bottom:none}.sts-row--clickable{cursor:pointer;transition:background .15s ease}.sts-row--clickable:hover{background:var(--surface-hover)}.sts-row--clickable:focus-visible{outline:2px solid var(--accent-orange);outline-offset:-2px}.sts-row-chevron{color:var(--text-tertiary);justify-self:end}.sts-row--clickable:hover .sts-row-chevron{color:var(--accent-orange)}.sts-title{color:var(--text-primary);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sts-due{color:var(--text-secondary);font-size:.8rem}.sts-overdue{color:var(--error-color);font-weight:500}.sts-status-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:12px;font-size:.75rem;font-weight:500;width:fit-content}.sts-assigned{background:var(--warm-tint-bg);color:var(--accent-orange)}.sts-in-progress{background:var(--warning-bg);color:var(--warning-text)}.sts-completed{background:var(--success-bg);color:var(--success-text)}.sts-view-btn{background:none;border:none;padding:4px;color:var(--text-tertiary);cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:color .2s ease}.sts-view-btn:hover{color:var(--accent-orange)}@media(max-width:768px){.sts-table-head,.sts-row{grid-template-columns:minmax(0,1.4fr) minmax(0,.9fr) minmax(0,1fr) 18px;padding:8px 10px;gap:6px}.sts-due{font-size:.72rem}.sts-status-badge{font-size:.7rem;padding:2px 6px}.sts-row-chevron{width:14px;height:14px}}.session-detail-page{max-width:min(100%,1200px);margin:0 auto;padding:20px}.session-detail-page .page-header{padding-bottom:20px}.session-detail-page .header-content h1{margin:0 0 10px;font-size:28px;font-weight:600;color:var(--text-primary, #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:var(--input-bg, #f5f5f5);border-radius:6px;font-size:14px;color:var(--text-on-panel, #666)}.session-detail-page .status-badge{padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase}.session-detail-page .status-cancelled{background-color:#fee2e2;color:#991b1b}.session-detail-page .status-completed{background-color:#d1fae5;color:#065f46}.session-detail-page .session-actions{display:flex;gap:.75rem;margin-top:1rem}.session-detail-page .session-actions .btn{display:inline-flex;align-items:center;gap:.5rem}.session-detail-page .session-content{padding-bottom:0}.session-detail-page .loading-container,.session-detail-page .error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center}.session-detail-page .loading-spinner{margin-bottom:20px}.session-detail-page .error-container h2{color:var(--error-color, #dc2626);margin-bottom:10px}.session-detail-page .error-container p{color:var(--text-tertiary, #666);margin-bottom:20px}@media(max-width:768px){.session-detail-page{padding:15px 0}.session-detail-page .page-header{padding-left:12px;padding-right:12px}.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:0}.session-detail-page--mobile .form-group{padding-left:16px;padding-right:16px}}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:.5rem;padding:2rem;max-width:min(100%,500px);width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-content h3{font-size:1.25rem;font-weight:600;color:#111827;margin:0 0 .5rem}.modal-content p{color:#6b7280;margin:0 0 1.5rem}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-size:.875rem;font-weight:500;color:#374151;margin-bottom:.5rem}.form-input,.form-textarea{width:100%;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;transition:border-color .2s,box-shadow .2s}.form-input:focus,.form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #fe6b3426}.form-textarea{resize:vertical;font-family:inherit}@media(max-width:768px){.session-actions{flex-direction:column}.session-actions .btn{width:100%;justify-content:center}}.session-info-banner{background:var(--card-background);border:1px solid var(--card-border);border-radius:12px;margin-bottom:1.25rem}.sib-row{display:flex;align-items:center;gap:0;padding:12px 16px}.sib-row+.sib-row{border-top:1px solid var(--card-border)}.sib-person{flex:1 1 0;min-width:0;display:flex;align-items:center;gap:10px}.sib-person-name{font-size:.9375rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.sib-person-name--muted{color:var(--text-tertiary);font-weight:500}.sib-row-divider{width:1px;height:28px;background:var(--card-border);margin:0 12px;flex-shrink:0}.sib-field{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:.25rem}.sib-label{font-size:.6875rem;font-weight:600;letter-spacing:.06em;color:var(--text-tertiary)}.sib-value{display:flex;align-items:flex-start;gap:.25rem;font-size:.875rem;font-weight:600;color:var(--text-primary);line-height:1.35;min-width:0}.sib-value--muted{color:var(--text-tertiary);font-weight:500}.sib-row--status{justify-content:center}.sib-status-badge{display:inline-block;padding:.3rem .875rem;border-radius:20px;font-size:.75rem;font-weight:700;letter-spacing:.05em;white-space:nowrap}.sib-person .user-avatar,.sib-person .animal-avatar{width:32px;height:32px;flex-shrink:0}.session-detail-page{display:flex;flex-direction:column;min-height:100%}.session-detail-page-body{flex:1}.session-editor-sticky-footer{position:sticky;bottom:0;z-index:100;display:flex;align-items:center;gap:.75rem;padding:1rem 15.5rem;background:var(--body-background);border-top:1px solid var(--card-border);margin:0 -20px}.session-editor-form{padding-bottom:1rem}.session-footer-btn{flex:1;height:30px;min-height:0;padding:0 .625rem!important;font-size:.8125rem;font-weight:600;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;gap:.35rem;cursor:pointer;transition:background .15s,opacity .15s;white-space:nowrap;line-height:1;box-sizing:border-box}.session-footer-btn:disabled{opacity:.5;cursor:not-allowed}.session-footer-complete{background:transparent;border:1.5px solid var(--success-color, #22c55e);color:var(--success-color, #22c55e)}.session-footer-complete:hover:not(:disabled){background:#22c55e14}.session-footer-reschedule{background:transparent;border:1.5px solid var(--card-border);color:var(--text-primary)}.session-footer-reschedule:hover:not(:disabled){background:var(--surface-hover)}.session-footer-cancel{background:transparent;border:1.5px solid var(--error-color, #ef4444);color:var(--error-color, #ef4444)}.session-footer-cancel:hover:not(:disabled){background:#ef444414}.session-footer-update{flex:1.5;background:var(--accent-orange);border:none;color:#fff}.session-footer-update:hover:not(:disabled){background:var(--accent-orange-hover)}.session-detail-page--mobile{max-width:none;margin:0;padding:12px 12px 88px}@media(max-width:768px){.session-editor-sticky-footer{padding:.75rem 12px;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 -12px}.session-footer-btn{flex:none;min-width:0;height:38px;font-size:12px;padding:0 8px!important}.session-footer-update{flex:none;grid-column:1 / -1}}.session-detail-page--mobile .page-header{padding-bottom:12px}.session-detail-page--mobile .header-content h1{font-size:22px}.create-invoice-form .form-group{margin-bottom:18px;background:transparent;padding:0}.create-invoice-form .form-label{display:block;margin-bottom:8px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary)}.create-invoice-form .form-label__hint{margin-left:6px;font-weight:500;text-transform:none;letter-spacing:0;color:var(--text-tertiary)}.create-invoice-form .form-label__required{color:var(--accent-orange)}.create-invoice-form input[type=text],.create-invoice-form input[type=number],.create-invoice-form input[type=date],.create-invoice-form textarea{width:100%;background:transparent;border:1px solid var(--card-border);border-radius:8px;padding:10px 12px;font-size:14px;color:var(--text-primary);transition:.15s ease;color-scheme:light dark}.create-invoice-form input:focus,.create-invoice-form textarea:focus{outline:none;border-color:var(--border-focus)}.create-invoice-form input.error,.create-invoice-form textarea.error{border-color:var(--error-color)}.create-invoice-form .error-text{display:block;margin-top:6px;font-size:12px;color:var(--error-color)}.line-items-table-wrapper{border:1px solid var(--card-border);border-radius:8px;overflow:hidden}.line-items-grid-header,.line-items-grid-row{display:grid;grid-template-columns:2fr 56px 130px 100px 32px;align-items:center;gap:12px;padding:10px 14px}.line-items-grid-header{background:var(--input-bg);border-bottom:1px solid var(--card-border);font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-tertiary)}.line-items-grid-header__total,.line-items-grid-row__total{text-align:right}.line-items-grid-header__qty,.line-items-grid-header__unit-price,.line-items-grid-row__qty,.line-items-grid-row__unit-price{text-align:center}.line-items-grid-row:last-of-type{border-bottom:none}.line-items-grid-row input[type=text],.line-items-grid-row input[type=number]{background:transparent;border:1px solid var(--card-border);border-radius:6px;padding:8px 10px;font-size:13px;color:var(--text-primary)}.line-items-grid-row input[type=number]{text-align:center;font-variant-numeric:tabular-nums}.line-items-grid-row__qty input,.line-items-grid-row__unit-price input{width:100%}.line-items-grid-row__unit-price{position:relative;display:flex;align-items:center}.line-items-grid-row__unit-price-symbol{position:absolute;left:10px;font-size:13px;color:var(--text-tertiary);pointer-events:none}.line-items-grid-row__unit-price input{padding-left:22px;text-align:right}.line-items-grid-row__total{font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums}.line-items-grid-row__remove{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--text-tertiary);cursor:pointer;transition:.15s ease;justify-self:center}.line-items-grid-row__remove:hover{background:var(--error-bg);color:var(--error-color)}.line-items-grid-row__remove:disabled{opacity:.3;cursor:not-allowed}.line-items-add{display:flex;justify-content:center;padding:12px;border-top:1px dashed var(--card-border);background:var(--card-background)}.line-items-add button{display:inline-flex;align-items:center;gap:6px;background:none;border:none;color:var(--accent-orange);font-size:14px;font-weight:600;cursor:pointer;padding:4px 8px;border-radius:6px;transition:.15s ease}.line-items-add button:hover{background:var(--chip-orange-bg)}.invoice-totals-row{display:flex;flex-direction:column;align-items:flex-end;gap:6px;margin-top:12px;margin-bottom:12px;padding-right:14px}.invoice-totals-row__line{display:flex;align-items:baseline;gap:24px;font-size:14px}.invoice-totals-row__label{color:var(--text-secondary)}.invoice-totals-row__value{font-variant-numeric:tabular-nums;color:var(--text-primary);min-width:72px;text-align:right}.invoice-totals-row__line--total{font-size:16px}.invoice-totals-row__line--total .invoice-totals-row__label{font-weight:700;color:var(--text-primary)}.invoice-totals-row__line--total .invoice-totals-row__value{font-weight:700;color:var(--accent-orange)}.create-invoice-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:16px;border-top:1px solid var(--card-border);margin-top:16px}.create-invoice-footer__hint{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--accent-orange)}.create-invoice-footer__actions{display:flex;gap:8px;margin-left:auto}.create-invoice-form .searchable-select{position:relative}.create-invoice-form .searchable-select-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;max-height:240px;overflow-y:auto;background:var(--card-background);border:1px solid var(--card-border);border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:10}.create-invoice-form .searchable-select-option{display:flex;flex-direction:column;padding:10px 12px;cursor:pointer;border-bottom:1px solid var(--card-border);transition:.15s ease}.create-invoice-form .searchable-select-option:last-child{border-bottom:none}.create-invoice-form .searchable-select-option:hover,.create-invoice-form .searchable-select-option.selected{background:var(--surface-hover)}.create-invoice-form .searchable-select-option .client-name{font-size:14px;font-weight:600;color:var(--text-primary)}.create-invoice-form .searchable-select-option .client-email{font-size:12px;color:var(--text-secondary)}.create-invoice-form .searchable-select-empty{padding:14px;text-align:center;color:var(--text-tertiary);font-size:13px}@media(max-width:640px){.line-items-grid-header{display:none}.line-items-grid-row{grid-template-columns:1fr 1fr 1fr auto;grid-template-areas:"description description description remove" "qty unit-price total total";row-gap:10px;column-gap:8px;padding:12px;border-bottom:1px solid var(--card-border)}.line-items-grid-row>div:first-child{grid-area:description}.line-items-grid-row>.line-items-grid-row__qty{grid-area:qty}.line-items-grid-row>.line-items-grid-row__unit-price{grid-area:unit-price}.line-items-grid-row>.line-items-grid-row__total{grid-area:total;align-self:end;text-align:right}.line-items-grid-row__remove{grid-area:remove;align-self:start}.line-items-grid-row__qty:before{content:"Qty"}.line-items-grid-row__unit-price:before{content:"Unit Price"}.line-items-grid-row__total:before{content:"Total"}.line-items-grid-row__qty:before,.line-items-grid-row__unit-price:before,.line-items-grid-row__total:before{display:block;font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-tertiary);margin-bottom:4px;text-align:left}.line-items-grid-row input{font-size:16px}}.invoices-section{background:var(--card-background);border:1px solid var(--card-border);border-radius:12px;padding:20px 20px 8px;box-shadow:0 1px 3px #0000004d}.invoices-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:16px}.invoices-title{display:flex;align-items:baseline;gap:10px}.invoices-title h3{margin:0;font-size:16px;font-weight:700;color:var(--text-primary)}.invoices-count{font-size:13px;color:var(--text-secondary)}.invoices-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.invoices-summary{display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;background:var(--soft-pill-bg);border:1px solid var(--card-border);font-size:13px;font-weight:500;color:var(--text-secondary)}.invoices-summary strong{margin-left:6px;font-weight:700}.invoices-summary--outstanding strong{color:var(--accent-orange)}.invoices-summary--paid strong{color:var(--success-color)}.invoices-filters-toggle{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;margin-bottom:12px;border-radius:9px;border:1px solid var(--card-border);background:var(--card-background);color:var(--text-primary);font-size:13px;font-weight:600;font-family:inherit;cursor:pointer;transition:border-color .2s ease,background .2s ease}.invoices-filters-toggle:hover{border-color:var(--accent-orange)}.invoices-filters-toggle__label{flex:0 0 auto}.invoices-filters-toggle__badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--accent-orange);color:#0e1525;font-size:11px;font-weight:700;font-family:var(--mtd-font-mono, ui-monospace, "SF Mono", Menlo, monospace)}.invoices-filters-toggle__chevron{margin-left:auto;color:var(--text-secondary);transition:transform .2s ease}.invoices-filters-toggle__chevron.open{transform:rotate(180deg)}.invoices-filters-region{display:contents}.invoices-filters-region--collapsed{display:none}.invoices-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.invoice-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;border:1px solid var(--card-border);background:var(--soft-pill-bg);color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:.2s ease}.invoice-chip:hover{border-color:var(--accent-orange-hover);color:var(--text-primary)}.invoice-chip__dot{width:8px;height:8px;border-radius:50%;background:currentColor;flex-shrink:0}.invoice-chip__count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;padding:0 6px;height:18px;border-radius:999px;background:var(--surface-hover);color:var(--text-secondary);font-size:11px;font-weight:700}.invoice-chip.active{color:var(--text-inverse);border-color:transparent}.invoice-chip.active .invoice-chip__count{background:#ffffff40;color:var(--text-inverse)}.invoice-chip.invoice-chip--all.active,.invoice-chip.invoice-chip--pending.active{background:var(--accent-orange)}.invoice-chip.invoice-chip--overdue.active{background:var(--error-color)}.invoice-chip.invoice-chip--paid.active{background:var(--success-color)}.invoice-chip.invoice-chip--refunded.active{background:var(--purple-text)}.invoice-chip.invoice-chip--voided.active{background:var(--text-tertiary)}.invoice-chip--all .invoice-chip__dot,.invoice-chip--pending .invoice-chip__dot{background:var(--accent-orange)}.invoice-chip--overdue .invoice-chip__dot{background:var(--error-color)}.invoice-chip--paid .invoice-chip__dot{background:var(--success-color)}.invoice-chip--refunded .invoice-chip__dot{background:var(--purple-text)}.invoice-chip--voided .invoice-chip__dot{background:var(--text-tertiary)}.invoice-chip.active .invoice-chip__dot{background:var(--text-inverse);opacity:.85}.invoices-filter-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}.invoices-date-range{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.invoices-date-range__label{font-size:11px;font-weight:700;letter-spacing:.05em;color:var(--text-tertiary)}.invoices-date-range input[type=date]{background:var(--input-bg);border:1px solid var(--card-border);border-radius:6px;padding:6px 10px;font-size:13px;color:var(--text-primary);color-scheme:light dark}.invoices-date-range__sep{color:var(--text-tertiary)}.invoices-date-range__clear{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;border-radius:50%;background:var(--surface-hover);color:var(--text-secondary);cursor:pointer;transition:.15s ease}.invoices-date-range__clear:hover{background:var(--error-bg);color:var(--error-color)}.invoices-search{position:relative;min-width:260px}.invoices-search input{width:100%;background:var(--input-bg);border:1px solid var(--card-border);border-radius:999px;padding:8px 14px 8px 32px;font-size:13px;color:var(--text-primary)}.invoices-search input::placeholder{color:var(--text-tertiary)}.invoices-search input:focus{outline:none;border-color:var(--border-focus)}.invoices-search__icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--text-tertiary);font-size:13px;pointer-events:none}.invoices-table{width:100%;border-collapse:collapse;border-spacing:0;border-bottom:1px solid var(--input-border);border-right:1px solid var(--input-border)}.invoices-table thead th{text-align:left;padding:10px 12px;font-size:11px;font-weight:700;letter-spacing:.05em;color:var(--text-tertiary);background:var(--table-header-bg);border-top:1px solid var(--input-border);border-bottom:1px solid var(--input-border);white-space:nowrap}.invoices-table thead th:first-child{padding-left:16px;border-left:1px solid var(--input-border);border-top-left-radius:6px;border-bottom-left-radius:6px}.invoices-table thead th:last-child{border-right:1px solid var(--input-border);border-top-right-radius:6px;border-bottom-right-radius:6px}.invoices-table thead th.invoices-th--sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.invoices-table thead th.invoices-th--sortable:hover{color:var(--text-secondary)}.invoices-th__sort{display:inline-block;margin-left:4px;font-size:11px;opacity:.5}.invoices-th__sort.active{opacity:1;color:var(--accent-orange)}.invoices-table th.invoices-th--amount,.invoices-table td.invoices-td--amount{text-align:right}.invoices-table tbody tr{background:var(--card-background);cursor:pointer;transition:.15s ease}.invoices-table tbody tr td{padding:14px 12px;font-size:14px;color:var(--text-primary);border-bottom:1px solid var(--input-border);background:var(--card-background);text-align:left}.invoices-td--status-bar,.invoices-th--status-bar{width:4px;padding:0!important;border-right:none}.invoices-status-bar{width:3px;min-height:46px;height:100%;border-radius:0 2px 2px 0;background:var(--row-status-color, #f59e0b)}.invoices-table tbody tr:last-child td{border-bottom:none}.invoices-table tbody tr:hover td{background:var(--surface-hover)}.invoices-row--pending{--row-status-color: #f59e0b}.invoices-row--overdue{--row-status-color: #ef4444}.invoices-row--paid{--row-status-color: #22c55e}.invoices-row--refunded{--row-status-color: #8b5cf6}.invoices-row--processing{--row-status-color: #3b82f6}.invoices-row--voided{--row-status-color: #64748b}.invoices-td--number{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;color:var(--text-secondary);letter-spacing:.02em}.invoices-td--client{font-weight:600;color:var(--text-primary)}.invoices-td--description{color:var(--accent-orange);max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invoices-td--amount{font-weight:600;font-variant-numeric:tabular-nums}.invoices-td--date{white-space:nowrap;color:var(--text-secondary)}.invoices-td--date.invoices-td--date-overdue{color:var(--error-color);font-weight:600}.invoices-status{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.invoices-status__dot{width:6px;height:6px;border-radius:50%;background:currentColor}.invoices-status--pending{background:var(--chip-orange-bg);color:var(--accent-orange)}.invoices-status--overdue{background:var(--error-bg);color:var(--error-color)}.invoices-status--paid{background:var(--success-bg);color:var(--success-color)}.invoices-status--refunded{background:var(--chip-purple-bg);color:var(--purple-text)}.invoices-status--processing{background:var(--info-bg);color:var(--info-color)}.invoices-status--voided{background:var(--surface-secondary);color:var(--text-tertiary)}.invoices-footer{padding:12px 4px;font-size:12px;color:var(--text-tertiary)}.invoices-empty{padding:32px 16px;text-align:center;color:var(--text-secondary)}.invoices-empty .btn-link{margin-top:8px;background:none;border:none;color:var(--accent-orange);cursor:pointer;font-size:13px}@media(max-width:720px){.invoices-table thead{display:none}.invoices-table tbody tr{display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;padding:12px 14px;border:1px solid var(--card-border);border-left:4px solid var(--row-status-color, #f59e0b);border-radius:8px;margin-bottom:8px}.invoices-table tbody tr td{border:none!important;padding:0!important;background:transparent!important}.invoices-table tbody tr td.invoices-td--status-bar{display:none}.invoices-td--description,.invoices-td--client{grid-column:1 / -1}}.search-filter-container{padding:1.25rem;border-radius:8px;margin-bottom:1rem}.search-filter-row{display:flex;gap:1rem;align-items:flex-end;flex-wrap:wrap;margin-bottom:1rem}.search-filter-search{flex:1;min-width:250px}.search-filter-search label{display:block;font-size:.875rem;font-weight:500;color:var(--text-primary, #374151);margin-bottom:.375rem}.search-filter-input{width:100%;padding:.625rem 1rem;border:1px solid var(--input-border, #d1d5db);border-radius:.375rem;font-size:.875rem;background:var(--input-bg, white);color:var(--text-primary, #333);transition:border-color .2s,box-shadow .2s}.search-filter-input::placeholder{color:var(--text-secondary, #6b7280)}.search-filter-input:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.search-filter-controls{display:flex;gap:1rem;flex-wrap:wrap;align-items:flex-end}.search-filter-group{display:flex;flex-direction:column;gap:.375rem;min-width:150px}.search-filter-group label{font-size:.875rem;font-weight:500;color:var(--text-primary, #374151)}.search-filter-select{padding:.625rem 1rem;border:1px solid var(--input-border, #d1d5db);border-radius:.375rem;background:var(--input-bg, white);font-size:.875rem;cursor:pointer;color:var(--text-primary, #333);transition:border-color .2s,box-shadow .2s;min-width:150px}.search-filter-select:focus{outline:2px solid var(--accent-orange, #FE6B34);outline-offset:2px;border-color:var(--accent-orange, #FE6B34)}.search-filter-date{padding:.625rem .75rem;border:1px solid var(--input-border, #d1d5db);border-radius:.375rem;background:var(--input-bg, white);font-size:.875rem;color:var(--text-primary, #333);transition:border-color .2s,box-shadow .2s}.search-filter-date:focus{outline:none;border-color:var(--primary-color, #3b82f6);box-shadow:0 0 0 3px var(--focus-ring, rgba(254, 107, 52, .15))}.search-filter-actions{display:flex;gap:.5rem;align-items:flex-end}.search-filter-clear{padding:.625rem 1rem;background:transparent;border:1px solid var(--border-secondary, #d1d5db);border-radius:.375rem;font-size:.875rem;color:var(--text-secondary, #6b7280);cursor:pointer;transition:all .2s;white-space:nowrap}.search-filter-clear:hover{background:var(--hover-bg, #f3f4f6);border-color:var(--border-secondary, #9ca3af);color:var(--text-primary, #374151)}.search-filter-results{font-size:.875rem;color:var(--text-secondary, #6b7280);margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-primary, #e5e7eb)}.background-loading-indicator{color:var(--primary-color, #3b82f6);font-style:italic}.search-filter-toggles{display:flex;gap:.5rem;flex-wrap:wrap}.search-filter-toggle{padding:.5rem 1rem;background:var(--input-bg);border:1px solid var(--card-border);border-radius:.375rem;font-size:.875rem;color:var(--text-secondary);cursor:pointer;transition:background .2s,border-color .2s,color .2s;white-space:nowrap}.search-filter-toggle:hover{background:color-mix(in srgb,var(--accent-orange) 12%,var(--input-bg));border-color:var(--accent-orange);color:var(--text-primary)}.search-filter-toggle.active{background:var(--accent-orange);border-color:var(--accent-orange);color:var(--body-background)}.search-filter-toggle.active:hover{background:var(--accent-orange-hover);border-color:var(--accent-orange-hover);color:var(--body-background)}.search-filter-toggle .count{margin-left:.25rem;opacity:.8}.search-filter-type-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.search-filter-type-btn{padding:.5rem .875rem;background:var(--input-bg);border:1px solid var(--card-border);border-radius:.375rem;font-size:.8125rem;color:var(--text-secondary);cursor:pointer;transition:background .2s,border-color .2s,color .2s;white-space:nowrap}.search-filter-type-btn:hover{background:color-mix(in srgb,var(--accent-orange) 12%,var(--input-bg));border-color:var(--accent-orange);color:var(--text-primary)}.search-filter-type-btn.active{background:var(--chip-orange-bg);border-color:var(--accent-orange);color:var(--accent-orange)}.search-filter-type-btn.active:hover{background:color-mix(in srgb,var(--accent-orange) 22%,var(--input-bg));border-color:var(--accent-orange-hover);color:var(--accent-orange-hover)}.search-filter-divider{width:100%;height:1px;background:var(--border-primary, #e5e7eb);margin:1rem 0}.search-filter-container.compact{padding:1rem}.search-filter-container.compact .search-filter-row{gap:.75rem}.search-filter-container.compact .search-filter-group{min-width:120px}.search-filter-container.inline .search-filter-row{flex-wrap:nowrap}.search-filter-container.inline .search-filter-search{flex:0 1 300px;min-width:200px}@media(max-width:768px){.search-filter-container{padding:.75rem;background:var(--bg-secondary);border:1px solid var(--card-border, var(--border-primary));border-radius:10px}.search-filter-row{flex-direction:column;gap:.75rem}.search-filter-search{min-width:100%}.search-filter-controls{width:100%}.search-filter-group{width:100%;min-width:100%}.search-filter-select,.search-filter-date{width:100%}.search-filter-toggles{width:100%;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:2px}.search-filter-toggles::-webkit-scrollbar{display:none}.search-filter-toggle{flex:0 0 auto;min-width:0;text-align:center;padding:6px 14px;font-size:13px;border-radius:999px}.search-filter-type-buttons{width:100%}.search-filter-type-btn{flex:1;text-align:center}.search-filter-actions{width:100%;justify-content:flex-end}.search-filter-clear{width:100%}}.search-filter-container.collapsible{padding:0}.search-filter-toggle-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.75rem 1rem;background:transparent;border:none;cursor:pointer;font-size:.875rem;font-weight:500;color:var(--text-primary, #374151);transition:background-color .15s ease}.search-filter-toggle-header:hover{background:var(--hover-bg, rgba(0, 0, 0, .03))}.filter-toggle-label{display:flex;align-items:center;gap:.5rem}.filter-toggle-label svg{color:var(--text-secondary, #6b7280)}.filter-active-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:var(--primary-color, #3b82f6);color:#fff;border-radius:10px;font-size:.75rem;font-weight:600}.filter-toggle-chevron{color:var(--text-secondary, #6b7280);transition:transform .2s ease}.filter-toggle-chevron.expanded{transform:rotate(180deg)}.search-filter-container.collapsible .search-filter-row{padding:.75rem 1rem 1rem;border-top:1px solid var(--border-primary, #e5e7eb)}.billing-page{padding:24px;max-width:min(100%,1400px);margin:0 auto}.billing-page .page-header{margin-bottom:24px}.billing-page .page-header h1{font-size:28px;font-weight:600;color:var(--text-primary);margin:0 0 8px}.billing-page .page-header p{color:var(--header-description-color);margin:0}.billing-tabs{display:flex;gap:8px;border-bottom:1px solid var(--border-primary, #e5e7eb);margin-bottom:24px;padding-bottom:0}.billing-tabs .tab-btn{padding:12px 20px;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;margin-bottom:-1px}.billing-tabs .tab-btn:hover{color:var(--text-primary)}.billing-tabs .tab-btn.active{color:var(--accent-orange);border-bottom-color:var(--accent-orange)}.billing-overview{display:flex;flex-direction:column;gap:20px}.overview-stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}@media(max-width:1100px){.overview-stat-row{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.overview-stat-row{grid-template-columns:1fr}}.overview-stat-card{background:var(--card-background);border:1px solid var(--card-border, transparent);border-top:3px solid var(--accent-orange);border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:6px;box-shadow:0 1px 3px #00000014;transition:transform .2s ease,box-shadow .2s ease}.overview-stat-label{font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em}.overview-stat-value{font-size:28px;font-weight:800;line-height:1.1;color:var(--text-primary)}.overview-stat-sub{font-size:12px;color:var(--text-tertiary, var(--text-secondary));margin-top:2px}.overview-breakdown-card{background:var(--card-background);border:1px solid var(--card-border, transparent);border-radius:12px;padding:20px 24px;box-shadow:0 1px 3px #00000014}.overview-breakdown-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px}.overview-breakdown-title{font-size:15px;font-weight:600;color:var(--text-primary);margin:0 0 4px}.overview-breakdown-subtitle{font-size:12px;color:var(--text-secondary)}.overview-breakdown-total{font-size:22px;font-weight:700;color:var(--text-primary)}.overview-breakdown-actions{display:flex;flex-direction:column;align-items:flex-end;gap:8px;min-width:0}.overview-breakdown-filters{display:flex;justify-content:flex-end;align-items:center;gap:12px;flex-wrap:wrap}.overview-breakdown-secondary-filter{display:flex;justify-content:flex-end}.overview-breakdown-select,.overview-breakdown-input{min-height:34px;border:1px solid var(--input-border, #d1d5db);border-radius:8px;background:var(--input-bg, #fff);color:var(--text-primary);font-size:13px;padding:6px 10px}.overview-breakdown-select{min-width:104px;cursor:pointer}.overview-breakdown-input{width:142px}.overview-breakdown-input.month{width:170px}.overview-breakdown-select:focus,.overview-breakdown-input:focus{outline:none;border-color:var(--input-focus-border, var(--accent-orange));box-shadow:0 0 0 3px #f4a26129}.overview-breakdown-date-range{display:inline-flex;align-items:center;gap:6px}.overview-breakdown-date-sep{color:var(--text-tertiary, var(--text-secondary));font-size:12px}@media(max-width:760px){.overview-breakdown-header{flex-direction:column}.overview-breakdown-actions,.overview-breakdown-filters{width:100%}.overview-breakdown-actions{align-items:stretch}.overview-breakdown-filters{justify-content:space-between;align-items:center}.overview-breakdown-secondary-filter{justify-content:stretch}.overview-breakdown-input,.overview-breakdown-input.month{width:100%}.overview-breakdown-date-range{display:grid;grid-template-columns:1fr auto 1fr;width:100%}}@media(max-width:480px){.overview-breakdown-date-range{grid-template-columns:1fr}.overview-breakdown-date-sep{display:none}}.overview-breakdown-bar{display:flex;width:100%;height:10px;border-radius:999px;overflow:hidden;background:var(--surface-secondary, #f3f4f6);margin-bottom:14px}.overview-breakdown-segment{height:100%}.overview-breakdown-empty{width:100%;height:100%;background:var(--surface-secondary, #f3f4f6)}.overview-breakdown-legend{display:flex;flex-wrap:wrap;gap:18px}.overview-legend-item{display:inline-flex;align-items:center;gap:6px;font-size:13px}.overview-legend-swatch{width:10px;height:10px;border-radius:2px;display:inline-block}.overview-legend-label{color:var(--text-secondary)}.overview-legend-value{color:var(--text-primary);font-weight:600}.overview-legend-pct{color:var(--text-tertiary, var(--text-secondary));font-size:12px}.overview-bottom-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:20px;align-items:start}@media(max-width:1000px){.overview-bottom-grid{grid-template-columns:1fr}}.overview-right-stack{display:flex;flex-direction:column;gap:20px}.overview-card{background:var(--card-background);border:1px solid var(--card-border, transparent);border-radius:12px;padding:20px;box-shadow:0 1px 3px #00000014}.overview-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.overview-card-header h3{font-size:15px;font-weight:600;color:var(--text-primary);margin:0}.overview-link-btn{background:none;border:none;color:var(--accent-orange);font-size:13px;font-weight:500;cursor:pointer;padding:4px 6px;border-radius:6px;transition:background .2s ease}.overview-link-btn:hover{background:var(--surface-hover, rgba(244, 162, 97, .1))}.overview-empty{text-align:center;padding:24px 12px;color:var(--text-secondary);font-size:14px}.overview-recent-invoices{display:flex;flex-direction:column}.overview-invoice-list{display:flex;flex-direction:column;gap:8px}.overview-invoice-row{position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:12px 14px 12px 18px;background:var(--cal-day-background);border:1px solid transparent;border-radius:8px;cursor:pointer;text-align:left;transition:background .2s ease,border-color .2s ease;width:100%;font:inherit;color:inherit}.overview-invoice-row:hover{background:var(--surface-hover, rgba(0, 0, 0, .03));border-color:var(--card-border, transparent)}.overview-invoice-bar{position:absolute;left:0;top:0;bottom:0;width:3px;border-radius:2px}.overview-invoice-info{min-width:0}.overview-invoice-client{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overview-invoice-meta{font-size:12px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overview-invoice-right{display:flex;align-items:center;gap:10px;flex-shrink:0;justify-self:flex-end}.overview-invoice-amount{font-size:14px;font-weight:700;color:var(--text-primary)}.overview-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.overview-pill:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.overview-pill.paid{background:#22c55e26;color:#16a34a}.overview-pill.pending{background:#f59e0b26;color:#d97706}.overview-pill.overdue{background:#ef444426;color:#dc2626}.overview-pill.refunded{background:#a855f726;color:#9333ea}.overview-pill.voided{background:#9ca3af26;color:#6b7280}.overview-create-btn{margin-top:12px;width:100%;padding:12px;border:1px dashed var(--border-primary, #e5e7eb);border-radius:8px;background:transparent;color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.overview-create-btn:hover{border-color:var(--accent-orange);color:var(--accent-orange);background:var(--accent-orange-btn-background, rgba(244, 162, 97, .08))}.overview-aging-row{display:flex;flex-direction:column;gap:6px;padding:8px 0}.overview-aging-row+.overview-aging-row{border-top:1px solid var(--border-primary, #e5e7eb);padding-top:12px;margin-top:4px}.overview-aging-row-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.overview-aging-label{font-size:13px;color:var(--text-secondary);font-weight:500}.overview-aging-value{font-size:13px;color:var(--text-primary);font-weight:600}.overview-aging-track{width:100%;height:6px;border-radius:999px;background:var(--surface-secondary, #f3f4f6);overflow:hidden}.overview-aging-fill{height:100%;border-radius:999px;transition:width .3s ease}.overview-aging-clear{display:flex;align-items:center;gap:8px;padding:16px 4px;font-size:14px;color:var(--text-secondary)}.overview-activity-list{display:flex;flex-direction:column}.overview-activity-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:10px 4px;background:transparent;border:none;cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit;transition:background .2s ease}.overview-activity-row+.overview-activity-row{border-top:1px solid var(--input-border, #e5e7eb)}.overview-activity-row:hover{background:var(--surface-hover, rgba(0, 0, 0, .03))}.overview-activity-icon{width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.overview-activity-info{min-width:0}.overview-activity-title{font-size:13px;color:var(--text-primary);margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overview-activity-action{font-weight:600}.overview-activity-sep{color:var(--text-tertiary, var(--text-secondary))}.overview-activity-client{color:var(--accent-orange)}.overview-activity-time{font-size:12px;color:var(--text-tertiary, var(--text-secondary))}.overview-activity-amount{font-size:13px;font-weight:600;color:var(--text-primary);flex-shrink:0}.error-state{color:var(--error-color, #dc2626)}.access-denied{text-align:center;padding:48px}.access-denied h2{color:var(--text-primary);margin-bottom:8px}.access-denied p{color:var(--text-secondary)}.invoices-tab,.packages-tab,.promo-codes-tab,.settings-tab{padding:0}.billing-page--mobile{padding:12px 14px 88px;max-width:100%}.billing-page--mobile .page-header{margin-bottom:14px}.billing-page--mobile .page-header h1{font-size:22px;margin-bottom:4px}.billing-page--mobile .page-header p{font-size:13px}.billing-page--mobile .billing-tabs{margin:0 -14px 16px;padding:0 14px;gap:6px;overflow-x:auto;scrollbar-width:none;white-space:nowrap;flex-wrap:nowrap;-webkit-overflow-scrolling:touch}.billing-page--mobile .billing-tabs::-webkit-scrollbar{display:none}.billing-page--mobile .billing-tabs .tab-btn{padding:10px 14px;font-size:13px;flex:0 0 auto}.billing-page--mobile .overview-stat-row{grid-template-columns:repeat(2,1fr);gap:8px}.billing-page--mobile .overview-stat-card{padding:10px 12px;gap:2px;border-top-width:2px;border-radius:10px;min-width:0}.billing-page--mobile .overview-stat-label{font-size:10px;letter-spacing:.05em}.billing-page--mobile .overview-stat-value{font-size:18px;font-weight:700;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.billing-page--mobile .overview-stat-sub{font-size:11px;margin-top:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.billing-page--mobile .billing-content{max-width:100%}.billing-page--mobile .billing-content table{display:block;overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch;max-width:100%}.invoice-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@media(max-width:1024px){.invoice-card-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.invoice-card-grid{grid-template-columns:1fr}}.invoice-card{background:var(--card-background, #fff);border:1px solid transparent;border-radius:12px;padding:20px;cursor:pointer;display:flex;flex-direction:column;gap:8px;transition:all .2s ease;box-shadow:0 1px 3px #0000001a;border-top:3px solid var(--accent-orange)}.invoice-card:hover{border-color:var(--accent-orange-hover);border-top-color:var(--accent-orange-hover);box-shadow:0 4px 12px #0000001f}.invoice-card--overdue{border-top-color:var(--error-color, #ef4444)}.invoice-card--overdue:hover{border-color:var(--error-color, #ef4444);border-top-color:var(--error-color, #ef4444)}.invoice-card--pending{border-top-color:var(--accent-orange)}.invoice-card--paid{border-top-color:var(--success-color, #22c55e);opacity:.85}.invoice-card--paid:hover{opacity:1}.invoice-card--processing{border-top-color:var(--info-color, #3b82f6)}.invoice-card--declined{border-top-color:var(--error-color, #ef4444)}.invoice-card--declined:hover{border-color:var(--error-color, #ef4444);border-top-color:var(--error-color, #ef4444)}.invoice-card-top{display:flex;justify-content:space-between;align-items:center}.invoice-card__amount{font-size:22px;font-weight:700;color:var(--text-primary, #1f2937)}.invoice-card__number{font-size:13px;font-weight:600;color:var(--text-secondary, #6b7280)}.invoice-card__client{font-size:14px;font-weight:500;color:var(--text-primary, #1f2937)}.invoice-card__description{font-size:13px;color:var(--text-secondary, #6b7280);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invoice-card__dates{display:flex;flex-direction:column;gap:2px;margin-top:auto}.invoice-card__date{font-size:12px;color:var(--text-tertiary, #9ca3af)}.invoice-card__date--due{color:var(--warning-color, #f59e0b);font-weight:600}.invoice-card__date--overdue{color:var(--error-color, #ef4444);font-weight:600}.invoice-card__date--paid{color:var(--success-color, #22c55e)}.invoice-card__date--declined{color:var(--error-color, #ef4444);font-weight:600;text-transform:capitalize}.invoice-card__actions{padding-top:10px;border-top:1px solid var(--border-primary, #e5e7eb);margin-top:4px}.invoice-card__actions .btn{width:100%}.invoice-card-list-empty{text-align:center;padding:32px 16px;color:var(--text-secondary, #6b7280)}.client-billing-page{padding:24px;max-width:min(100%,1200px);margin:0 auto}.client-billing-page .page-header{margin-bottom:24px}.client-billing-page .page-header h1{font-size:28px;font-weight:600;color:var(--text-primary);margin:0 0 8px}.client-billing-page .page-header p{color:var(--header-description-color);margin:0}.client-billing-page .billing-tabs{display:flex;gap:8px;border-bottom:1px solid var(--border-primary);margin-bottom:24px}.client-billing-page .tab-btn{padding:12px 20px;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;margin-bottom:-1px;display:flex;align-items:center;gap:8px}.client-billing-page .tab-btn:hover{color:var(--text-primary)}.client-billing-page .tab-btn.active{color:var(--accent-orange);border-bottom-color:var(--accent-orange)}.tab-badge{background:var(--error-color);color:var(--text-inverse);font-size:13px;font-weight:600;padding:2px 6px;border-radius:10px;min-width:18px;text-align:center}.outstanding-summary{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,var(--error-bg) 0%,rgba(239,68,68,.05) 100%);border:1px solid var(--error-border);border-radius:12px;padding:28px;margin-bottom:24px;box-shadow:0 1px 3px #0000004d}.summary-content{display:flex;flex-direction:column;gap:6px}.summary-label{font-size:13px;color:var(--error-text);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.summary-amount{font-size:28px;font-weight:700;color:var(--error-color)}.badge.badge-pill{border-radius:20px;padding:3px 10px;font-size:12px;font-weight:600;border:1px solid currentColor;background:transparent}.badge.badge-pill.badge-warning{background:transparent;color:var(--accent-orange);border-color:var(--accent-orange)}.badge.badge-pill.badge-success{background:transparent;color:var(--success-color);border-color:var(--success-color)}.badge.badge-pill.badge-danger{background:transparent;color:var(--error-color);border-color:var(--error-color)}.badge.badge-pill.badge-secondary{background:transparent;color:var(--text-secondary);border-color:var(--text-secondary)}.package-list{display:flex;flex-direction:column;gap:10px}.package-card{background:var(--card-background);border:1px solid transparent;border-radius:10px;padding:12px;transition:all .2s ease;box-shadow:0 1px 3px #0000004d;display:flex;flex-direction:column;gap:6px}.package-card:hover{border-color:var(--accent-orange-hover)}.package-card.expired{opacity:.6;background:var(--bg-tertiary)}.package-header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.package-name{font-weight:600;font-size:14px;color:var(--text-primary);flex:1}.package-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:6px}.package-stat{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:6px;padding:6px 8px;min-width:0}.package-stat-label{display:block;font-size:13px;text-transform:uppercase;letter-spacing:.4px;color:var(--text-secondary);font-weight:600;margin-bottom:2px}.package-stat-value{display:block;font-size:13px;color:var(--text-primary);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.history-list{display:flex;flex-direction:column;gap:12px}.history-item{display:flex;justify-content:space-between;align-items:center;background:var(--card-background);border:1px solid transparent;border-radius:12px;padding:18px 20px;transition:all .2s ease;box-shadow:0 1px 3px #0000004d}.history-item:hover{border-color:var(--accent-orange-hover);box-shadow:var(--shadow-md)}.history-info{display:flex;flex-direction:column;gap:6px;flex:1}.history-invoice{font-weight:600;color:var(--text-primary);font-size:15px}.history-date,.history-meta{font-size:13px;color:var(--text-secondary)}.history-amount{display:flex;align-items:center;gap:16px;margin-left:16px}.history-amount .amount{font-weight:700;color:var(--text-primary);font-size:16px}.empty-state p{margin:0 0 8px;font-size:16px}.empty-hint{font-size:14px;opacity:.8;margin-top:8px}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:12px;font-size:13px;font-weight:500;text-transform:capitalize}.badge-success{background:var(--success-bg);color:var(--success-text)}.badge-warning{background:var(--chip-orange-bg);color:var(--accent-orange);border-color:var(--accent-orange)}.badge-danger{background:var(--error-bg);color:var(--error-text)}.badge-secondary{background:var(--surface-secondary, #f9fafb);color:var(--text-secondary)}@media(max-width:600px){.client-billing-page{padding:16px}.outstanding-summary{flex-direction:column;gap:16px;text-align:center}.package-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.available-packages-section{margin-bottom:32px}.available-packages-section h3,.my-packages-section h3{font-size:20px;font-weight:700;color:var(--text-primary);margin:0 0 8px;letter-spacing:-.3px}.section-description{color:var(--text-secondary);font-size:14px;margin:0 0 20px;line-height:1.5}.available-package-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.available-package-card{background:var(--card-background);border:1px solid transparent;border-radius:12px;padding:14px;display:flex;flex-direction:column;transition:all .2s ease;box-shadow:0 1px 3px #0000004d}.available-package-card:hover{border-color:var(--accent-orange-hover)}.available-package-card .package-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;gap:8px}.available-package-card .package-name{font-weight:600;font-size:15px;color:var(--text-primary);flex:1;line-height:1.2}.available-package-card .package-price{font-size:18px;font-weight:700;color:var(--accent-orange);white-space:nowrap}.available-package-card .package-description{color:var(--text-secondary);font-size:13px;margin:0 0 10px;line-height:1.4}.available-package-card .package-details{display:grid;grid-template-columns:1fr 1fr;gap:6px 10px;margin-bottom:10px;flex:1;padding:8px 0;border-top:1px solid var(--border-primary)}.available-package-card .detail-item{display:flex;justify-content:space-between;align-items:center;font-size:13px;gap:8px}.available-package-card .detail-label{color:var(--text-secondary);font-weight:500}.available-package-card .detail-value{color:var(--text-primary);font-weight:600}.available-package-card .detail-value.savings{color:var(--success-color);font-weight:700}.available-package-card .purchase-btn{width:100%;padding:9px 12px;font-size:13px;font-weight:600;margin-top:auto}.available-package-card .purchase-btn:disabled{opacity:.6;cursor:not-allowed}.board-train-animal-picker{margin:2px 0 10px}.board-train-animal-picker .detail-label{display:block;margin-bottom:6px;font-size:13px}.my-packages-section{margin-top:32px;padding-top:32px;border-top:1px solid var(--border-primary)}.my-packages-section h3{margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid var(--accent-orange);display:inline-block}.client-packages{display:flex;flex-direction:column;gap:24px}@media(max-width:600px){.available-package-list{grid-template-columns:1fr}.available-package-card{padding:16px}.available-package-card .package-header{flex-direction:column;gap:8px;align-items:flex-start}.available-package-card .package-price{font-size:20px}.package-card{padding:16px}.package-header{flex-direction:column;align-items:flex-start}.package-name{font-size:16px}.progress-bar{height:10px}.package-expiry{width:100%}.available-package-card .detail-item{justify-content:space-between}}.btn-spinner{display:inline-block;width:12px;height:12px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:btn-spin .6s linear infinite;vertical-align:middle;margin-right:.375rem}.invoice-pay-actions{display:flex;flex-direction:column;gap:8px;width:100%}.invoice-promo-applied{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--success-text);background:var(--success-bg);border:1px solid var(--success-border);border-radius:12px;padding:4px 10px;align-self:flex-start}.invoice-pay-row{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.invoice-promo-toggle{display:inline-flex;align-items:center;gap:4px;background:transparent;border:none;padding:0;font-size:12px;color:var(--accent-orange);cursor:pointer;transition:color .2s ease}.invoice-promo-toggle:hover{color:var(--accent-orange-hover);text-decoration:underline}.invoice-promo-form{display:flex;flex-wrap:nowrap;align-items:center;gap:6px;width:100%}.invoice-promo-input{flex:1 1 auto;min-width:0;font-size:13px;padding:8px 10px;border-radius:6px;border:1px solid var(--input-border, var(--border-primary));background:var(--surface-secondary);color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px}.invoice-promo-input::placeholder{color:var(--input-placeholder, var(--text-tertiary));text-transform:none;letter-spacing:0}.invoice-promo-input:focus{outline:none;border-color:var(--input-focus-border, var(--border-focus));box-shadow:0 0 0 2px #fe6b3426}.invoice-promo-form .btn.btn-primary{flex:0 0 30%;white-space:nowrap}.invoice-promo-cancel{flex:0 0 auto;padding:6px;display:inline-flex;align-items:center;justify-content:center;background:var(--error-color);color:var(--text-inverse, #ffffff);border:1px solid var(--error-color);border-radius:6px}.invoice-promo-cancel:hover{background:var(--error-color);color:var(--text-inverse, #ffffff);filter:brightness(1.1)}@keyframes btn-spin{to{transform:rotate(360deg)}}.client-billing-page--mobile{max-width:none;margin:0;padding:12px 12px 88px}.client-billing-page--mobile .page-header{margin-bottom:16px}.client-billing-page--mobile .page-header h1{font-size:22px}@media(max-width:768px){.client-billing-page .billing-tabs{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:1px}.client-billing-page .billing-tabs::-webkit-scrollbar{display:none}.client-billing-page .tab-btn{flex:0 0 auto;padding:12px 14px;white-space:nowrap}}.payment-result-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--bg-secondary)}.result-card{background:var(--card-bg);border-radius:16px;padding:48px;text-align:center;max-width:min(100%,480px);width:100%;box-shadow:0 4px 24px #0000001a}.result-icon{width:80px;height:80px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 24px}.result-icon svg{width:48px;height:48px}.result-icon.success{background:#22c55e1a}.result-icon.success svg{stroke:#16a34a}.result-icon.cancelled{background:#ef44441a}.result-icon.cancelled svg{stroke:#dc2626}.result-card h1{font-size:28px;font-weight:600;color:var(--text-primary);margin:0 0 16px}.result-message{font-size:16px;color:var(--text-secondary);margin:0 0 24px;line-height:1.5}.session-id{font-size:14px;color:var(--text-secondary);background:var(--bg-secondary);padding:8px 16px;border-radius:8px;display:inline-block;margin-bottom:24px;font-family:monospace}.result-actions{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.result-actions .btn{padding:14px 24px;font-size:16px;border-radius:8px;cursor:pointer;transition:all .2s ease}.result-actions .btn-primary{background:var(--primary-color);color:#fff;border:none}.result-actions .btn-primary:hover{background:var(--primary-hover)}.result-actions .btn-secondary{background:transparent;color:var(--text-primary);border:1px solid var(--border-color)}.result-actions .btn-secondary:hover{background:var(--bg-secondary)}.redirect-notice,.help-text{font-size:14px;color:var(--text-secondary);margin:0}.help-text a{color:var(--primary-color);text-decoration:none}.help-text a:hover{text-decoration:underline}@media(max-width:480px){.result-card{padding:32px 24px}.result-card h1{font-size:24px}}.board-train-page{display:flex;flex-direction:column;gap:1rem;width:75%;max-width:1600px;margin:0 auto}@media(max-width:1200px){.board-train-page{width:92%}}.board-train-mobile-list-toggle{display:none;width:40px;height:40px;border-radius:8px;border:1px solid var(--card-border);background:var(--card-background);color:var(--text-primary);cursor:pointer;align-items:center;justify-content:center;align-self:flex-start;margin-bottom:.5rem}.board-train-mobile-list-toggle:hover{border-color:var(--accent-orange-hover)}.board-train-list-backdrop{display:none;position:fixed;inset:64px 0 0;z-index:25;border:none;padding:0;background:#0f172a73;cursor:pointer}.board-train-header h1{margin:0}.board-train-header p{margin:.25rem 0 0;color:var(--text-secondary, #5b6570)}.board-train-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.8rem;flex-wrap:wrap}.board-train-error{background:var(--error-bg);color:var(--error-text);border:1px solid var(--error-border);border-radius:10px;padding:.75rem 1rem}.board-train-create{background:transparent;border:0;padding:0;overflow:initial!important}.create-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-bottom:1.25rem}.create-field{display:flex;flex-direction:column;gap:.35rem}.create-field-label{display:flex;flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:0 .15rem;font-size:.85rem;font-weight:600;color:var(--text-primary)}.create-field-label textarea,.create-field-label input.create-input{flex-basis:100%;margin-top:.35rem}.create-required{color:#e05252;margin-left:1px}.create-input{border:1px solid var(--border-primary);border-radius:8px;padding:.6rem .75rem;font-size:.92rem;background:var(--input-bg, var(--card-background));color:var(--text-primary);width:100%;box-sizing:border-box}.create-input:focus,.create-intake-grid textarea:focus{outline:none;border-color:var(--accent-orange)}.create-section{margin-bottom:.25rem}.create-section-title{font-size:1rem;font-weight:700;color:var(--text-primary);margin:0 0 .85rem;padding:.85rem 0 .6rem;border-top:1px solid var(--border-color, #e1e6eb)}.create-intake-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-bottom:.5rem}.create-intake-grid label{display:flex;flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:0 .15rem;font-size:.85rem;font-weight:600;color:var(--text-primary)}.create-intake-grid label textarea{flex-basis:100%;margin-top:.35rem}.create-intake-grid textarea{border:1px solid var(--border-primary);border-radius:8px;padding:.6rem .75rem;font-size:.9rem;resize:vertical;min-height:80px;background:var(--input-bg, var(--card-background));color:var(--text-primary);font-family:inherit;box-sizing:border-box}.day-log-form input,.day-log-form textarea{border:1px solid var(--card-border);border-radius:8px;padding:.7rem .85rem;font-size:.92rem;width:100%;box-sizing:border-box;background:var(--input-bg, var(--card-background));color:var(--text-primary)}.day-log-form textarea{min-height:130px;resize:vertical;font-family:inherit}.board-train-create-modal .modal-content,.board-train-edit-modal .modal-content{max-height:92vh;overflow-y:auto}.board-train-request-modal>form.board-train-create,.board-train-edit-modal>form.board-train-create,.board-train-create-modal>form.board-train-create{overflow-y:auto!important;-webkit-overflow-scrolling:touch;padding:0 1.5rem 1.5rem;min-height:0}.board-train-change-details-modal .modal-content{max-height:92vh;overflow-y:auto}.board-train-create-actions{display:flex;justify-content:flex-end;gap:.6rem;margin-top:.8rem;padding-bottom:1rem}.create-discard-draft{margin-right:auto;color:var(--text-secondary, #5b6570);font-size:.82rem;background:none;border:none;cursor:pointer;padding:.3rem .5rem}.create-discard-draft:hover{text-decoration:underline}.create-draft-banner{display:flex;align-items:center;background:var(--warning-bg);border:1px solid var(--warning-border);border-radius:8px;padding:.5rem .75rem;font-size:.83rem;color:var(--warning-text);margin-bottom:1rem}.create-package-error{display:flex;align-items:center;background:var(--error-bg);border:1px solid var(--error-border);border-radius:8px;padding:.5rem .75rem;font-size:.83rem;color:var(--error-text);margin-bottom:1rem}.btn-draft-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#f59e0b;margin-left:6px;vertical-align:middle;flex-shrink:0}.board-train-layout{display:grid;grid-template-columns:minmax(320px,360px) minmax(0,1fr);gap:1rem}.program-list,.program-detail{background:transparent;border:none;border-radius:12px;padding:1.25rem}.program-detail-animal-header{display:flex;align-items:center;gap:14px;padding:14px 16px;margin-bottom:14px;background:var(--card-background);border:1px solid transparent;border-radius:12px;box-shadow:0 1px 3px #0000004d}.program-detail-animal-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.program-detail-animal-name{margin:0;font-size:1.125rem;font-weight:700;letter-spacing:-.01em;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.program-detail-animal-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12.5px;color:var(--text-secondary)}.program-detail-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-secondary, #6b7280);gap:12px}.program-detail-loading p{margin:0;font-size:14px}.program-item{width:100%;text-align:left;border:1px solid var(--card-border);border-radius:10px;background:var(--card-background);padding:.8rem .85rem;margin-bottom:.6rem;cursor:pointer;display:flex;flex-direction:column;gap:.55rem;color:var(--text-primary)}.program-item.active{border:1px solid var(--accent-orange);border-left:5px solid var(--accent-orange);background:var(--card-background)}.program-item-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.program-identity-with-avatar{display:flex;align-items:flex-start;justify-content:flex-start;gap:.55rem;min-width:0;text-align:left}.program-animal-avatar{width:32px;height:32px;font-size:.72rem;align-self:flex-start}.program-identifiers{display:flex;flex-direction:column;align-items:flex-start;min-width:0;text-align:left}.program-client-name{font-size:.95rem;line-height:1.2;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.program-animal-name{margin-top:.1rem;font-size:.82rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status-chip{font-size:.75rem;text-transform:uppercase;color:var(--text-secondary);white-space:nowrap;line-height:1.1;margin-top:.1rem}.status-chip.pending{color:var(--warning-text)}.status-chip.approved{color:var(--success-text)}.status-chip.rejected{color:var(--error-text)}.status-chip-draft{color:var(--warning-text);background:var(--warning-bg);border-radius:999px;padding:.1rem .45rem;font-size:.72rem;font-weight:600;text-transform:uppercase}.program-item-draft{border-style:dashed;opacity:.9}.program-draft-avatar{background:var(--surface-hover);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;border-radius:50%;width:32px;height:32px;font-size:.85rem;flex-shrink:0}.program-draft-date{font-style:italic}.program-counters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem}.program-counters span{font-size:.74rem;border-radius:8px;padding:1rem;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--body-background)!important;border:none;color:var(--text-primary)}.program-counters span small{display:block;font-size:.65rem;font-weight:500;opacity:.65;text-transform:uppercase;letter-spacing:.03em;line-height:1.2}.program-summary-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem;margin-bottom:.5rem}.summary-card{border:1px solid var(--card-border);border-radius:10px;padding:.75rem .7rem;display:flex;flex-direction:column;align-items:center;text-align:center;gap:.3rem;color:var(--text-primary)}.summary-card span{font-size:.78rem;color:var(--text-secondary)}.summary-card strong{font-size:1.35rem;font-weight:700}.program-reference-row{display:flex;flex-wrap:wrap;gap:.8rem;margin:.15rem 0 .8rem;font-size:.78rem;color:var(--text-secondary)}.program-intake{border:none;background-color:var(--card-background);border-radius:12px;margin-top:1rem;padding:1rem 1.1rem}.program-intake-header{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-bottom:.6rem;border-bottom:1px solid var(--text-quaternary);padding-bottom:1rem}.program-intake-header h3{margin:0}.program-intake-actions{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.program-intake-collapsed-message{margin:0;font-size:.82rem}.program-intake-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.program-intake-card{border:1px solid var(--card-border);border-radius:10px;padding:.6rem .7rem;background:var(--surface-hover)}.program-intake-card strong{display:block;font-size:.82rem;color:var(--text-primary);margin-bottom:.3rem}.program-intake-card p{margin:0;font-size:.82rem;color:var(--text-secondary);white-space:pre-wrap}.program-intake-card ul{margin:0;padding-left:1rem}.program-intake-card li{font-size:.82rem;color:var(--text-secondary)}.program-intake-card .intake-text,.program-intake-card .intake-list{line-height:1.35;transition:max-height .18s ease}.program-intake-card .intake-text.collapsed,.program-intake-card .intake-list.collapsed{max-height:calc(1.35em * 3);overflow:hidden}.program-intake-card .intake-text.expanded,.program-intake-card .intake-list.expanded{max-height:none}.program-intake-card .intake-expand-btn{margin-top:.35rem;border:none;background:transparent;color:var(--accent-orange);font-size:.78rem;font-weight:600;padding:0;cursor:pointer}.program-intake-card .intake-expand-btn:hover{text-decoration:underline}.change-request-panel{border:none;border-radius:12px;margin-top:1rem;padding:1rem 1.1rem}.change-request-panel-toggle{width:100%;border:1px solid var(--card-border);border-radius:10px;background:var(--surface-hover);display:flex;align-items:center;justify-content:space-between;padding:.55rem .7rem;cursor:pointer;font-weight:600;font-size:.9rem;color:var(--text-primary);margin-bottom:.55rem}.change-request-panel-toggle-icon{font-size:1.1rem;line-height:1;color:var(--text-secondary)}.board-train-pending-approval-section{background:var(--warm-tint-bg);border:1px solid var(--warm-tint-border);border-radius:10px;padding:1rem}.board-train-pending-approval-header{margin-bottom:.75rem}.board-train-pending-approval-header h3{color:var(--warning-text);margin:0 0 .25rem;font-size:1rem}.board-train-pending-approval-header p{color:var(--warning-text);margin:0;font-size:.88rem;opacity:.9}.board-train-pending-approval-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr));gap:.65rem}.board-train-pending-approval-card{background:var(--card-background);border:1px solid var(--card-border);border-radius:8px;padding:.6rem .7rem;color:var(--text-primary)}.board-train-pending-approval-card-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.change-request-panel h4{margin:0 0 .55rem}.change-request-item{border:1px solid var(--card-border);border-radius:10px;padding:.55rem .7rem;background:var(--surface-hover);margin-bottom:.5rem;color:var(--text-primary)}.change-request-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.change-request-note{margin:.5rem 0;white-space:pre-wrap}.change-request-context{margin:.45rem 0 .1rem;display:flex;flex-wrap:wrap;gap:.5rem .8rem;font-size:.8rem;color:var(--text-secondary)}.change-request-context span{white-space:nowrap}.change-request-summary{margin:.45rem 0 .1rem;font-size:.82rem;color:var(--text-secondary)}.change-request-diff-list{display:flex;flex-direction:column;gap:.4rem}.change-request-diff-item{border:1px solid var(--card-border);border-radius:8px;background:var(--card-background);padding:.45rem .55rem;color:var(--text-primary)}.change-request-diff-item strong{display:block;margin-bottom:.25rem;font-size:.8rem}.change-request-diff-item p{margin:0;font-size:.78rem;color:var(--text-secondary)}.change-request-diff-item p span{font-weight:600}.change-request-modal-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin-bottom:.7rem}.change-request-modal-meta p{margin:0;font-size:.82rem}.change-request-modal-note{border:1px solid var(--card-border);border-radius:8px;padding:.55rem .6rem;margin-bottom:.7rem;background:var(--surface-hover);color:var(--text-primary)}.change-request-modal-note strong{display:block;margin-bottom:.25rem;font-size:.8rem}.change-request-modal-note p{margin:0;font-size:.82rem;color:var(--text-secondary);white-space:pre-wrap}.change-request-modal-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.8rem}.change-request-actions{display:flex;gap:.45rem;margin-top:.45rem}.request-change-note{display:flex;flex-direction:column;gap:.28rem;font-size:.82rem;color:var(--text-secondary);margin-top:.2rem}.request-change-note textarea{border:1px solid var(--border-primary);border-radius:8px;padding:.55rem .7rem;font-size:.9rem;resize:vertical;background:var(--input-bg, var(--card-background));color:var(--text-primary);font-family:inherit;box-sizing:border-box}.request-change-note textarea:focus{outline:none;border-color:var(--accent-orange)}.day-log-form,.day-log-list,.ai-summary-panel{border:none;background-color:var(--card-background);border-radius:12px;padding:1.25rem;margin-top:1rem}.day-log-form{display:flex;flex-direction:column;gap:.75rem}.day-log-form h3{margin:0 0 .25rem}.day-log-list-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin:0 0 .75rem;padding-bottom:.75rem;border-bottom:1px solid var(--card-border, #e1e6eb)}.day-log-list-header h3{margin:0}.day-log-list h3{margin:0 0 .75rem}.ai-summary-panel h3{margin:0}.day-log-editing-banner{display:flex;align-items:center;justify-content:space-between;gap:.5rem;font-size:.83rem;color:var(--editing-banner-text);background:var(--editing-banner-bg);border:1px solid var(--editing-banner-border);border-radius:8px;padding:.45rem .55rem}.day-log-media-section{display:flex;flex-direction:column;gap:.55rem;margin-top:.25rem}.day-log-field-label{display:inline-flex;align-items:center;gap:.4rem;font-size:.84rem;font-weight:600;color:var(--field-label-slate);margin-top:.25rem}.day-log-tooltip-icon{display:inline-flex;align-items:center;justify-content:center;width:1rem;height:1rem;margin-left:6px;border-radius:999px;border:1px solid var(--text-secondary);color:var(--text-secondary);font-size:.68rem;font-weight:700;cursor:help}.day-log-item{border:1px solid var(--border-primary, #e3e9ef);border-radius:10px;padding:.65rem .75rem;margin-bottom:.5rem}.day-log-item--clickable{cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease}.day-log-item--clickable:hover{border-color:var(--accent-orange-hover);box-shadow:0 2px 8px #00000014}.day-log-read-more{font-size:13px;font-weight:600;color:var(--accent-orange);cursor:pointer}.day-log-detail-content{display:flex;flex-direction:column;gap:12px}.day-log-detail-meta{font-size:13px;color:var(--text-tertiary, #9ca3af)}.day-log-detail-notes p{white-space:pre-wrap;color:var(--text-primary, #1f2937);line-height:1.6}.day-log-form-fields{display:flex;flex-direction:column;gap:16px}.day-log-head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem;font-size:.8rem;color:var(--text-secondary)}.day-log-head-left{display:inline-flex;align-items:center;flex-wrap:wrap;gap:.5rem}.tag-row{display:flex;flex-wrap:wrap;gap:.4rem}.tag{background:var(--info-bg);border:1px solid var(--info-border);color:var(--info-text);border-radius:999px;font-size:.72rem;padding:.18rem .5rem}.tag.warning{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}.day-log-links{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.55rem}.ai-summary-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem;padding-bottom:.75rem;margin-bottom:.75rem;border-bottom:1px solid var(--card-border, #e1e6eb)}.ai-summary-header h3{margin:0}.ai-actions{display:flex;gap:.5rem;flex-wrap:wrap}.summary-content ul{margin:.35rem 0 .75rem;padding-left:1.1rem}.muted{color:var(--text-tertiary)}.create-timezone-note{margin:0 0 .75rem;font-size:.85rem;color:var(--text-secondary)}@media(max-width:1024px){.board-train-layout{grid-template-columns:1fr}.create-grid,.create-intake-grid,.program-summary-cards,.program-intake-grid,.change-request-modal-meta{grid-template-columns:1fr 1fr}}@media(max-width:900px){.program-counters{grid-template-columns:1fr 1fr}.board-train-mobile-list-toggle{display:inline-flex}.program-list{position:fixed;top:64px;left:-100%;height:calc(100dvh - 64px);min-height:calc(100vh - 64px);width:min(85vw,360px);background:var(--card-background);box-shadow:var(--shadow-card);z-index:30;transition:left .25s ease;overflow-y:auto;padding:1.25rem;border-radius:0}.program-list.mobile-open{left:0}.board-train-list-backdrop{display:block}}@media(max-width:640px){.board-train-page{width:100%;padding:0;box-sizing:border-box}.program-list,.program-detail{padding:0}.create-grid,.create-intake-grid,.program-summary-cards,.program-intake-grid,.program-counters,.change-request-modal-meta{grid-template-columns:1fr}.summary-card strong{font-size:1.15rem}.program-counters span{padding:.6rem .75rem}.board-train-create-actions,.change-request-actions{flex-wrap:wrap}}.program-counters span small{display:block;font-size:.68rem;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;margin-bottom:.2rem}.program-counters span{font-size:1rem;font-weight:700}.board-train-page--mobile{padding:12px 14px 88px}.board-train-page--mobile .board-train-header{flex-direction:column;align-items:stretch;gap:12px;margin-bottom:12px}.board-train-page--mobile .board-train-header h1{font-size:22px;margin:0 0 4px}.board-train-page--mobile .board-train-header p{font-size:13px}.board-train-page--mobile .board-train-layout{display:block;grid-template-columns:1fr;gap:0}.board-train-page--mobile .program-list{position:static;left:auto;width:100%;height:auto;background:transparent;box-shadow:none;transition:none;overflow-y:visible;padding:0;border-radius:0}.board-train-page--mobile .program-item{padding:10px 12px;gap:8px}.board-train-page--mobile .program-counters{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.board-train-page--mobile .program-counters span{padding:6px 8px;font-size:14px;font-weight:700;flex-direction:row;align-items:baseline;justify-content:center;gap:4px}.board-train-page--mobile .program-counters span small{font-size:9px;opacity:.7}.board-train-page--mobile .program-animal-avatar,.board-train-page--mobile .program-item-top .user-avatar{width:28px;height:28px;font-size:12px}body.board-train-detail-active .mtd-header{display:none}.board-train-page--mobile .program-detail{position:fixed;inset:0;z-index:60;background:var(--body-background);transform:translate(100%);transition:transform .28s cubic-bezier(.4,0,.2,1);pointer-events:none;visibility:hidden;overflow-y:auto;padding:calc(12px + env(safe-area-inset-top,0px)) 14px 88px;border-radius:0}.board-train-page--mobile .board-train-layout--has-selected .program-detail{transform:translate(0);pointer-events:auto;visibility:visible}.board-train-mobile-back{align-self:flex-start;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;padding:0;margin:0 0 12px;border:1px solid var(--card-border);border-radius:9px;background:var(--card-background);color:var(--text-primary);font-family:inherit;cursor:pointer;flex:0 0 auto;transition:border-color .2s ease,background .2s ease}.board-train-mobile-back:hover{border-color:var(--accent-orange)}.board-train-mobile-back:active{background:var(--surface-hover, var(--card-background))}.board-train-mobile-back:hover{background:var(--surface-hover)}.board-train-page--mobile .program-summary-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:8px}.board-train-page--mobile .summary-card{padding:8px 6px;border-radius:8px;gap:2px}.board-train-page--mobile .summary-card span{font-size:10px;text-transform:uppercase;letter-spacing:.04em}.board-train-page--mobile .summary-card strong{font-size:1.1rem}.board-train-page--mobile .summary-card:last-child{grid-column:1 / -1}.board-train-page--mobile .summary-card:last-child strong{font-size:.95rem}.board-train-page--mobile .board-train-mobile-list-toggle,.board-train-page--mobile .board-train-list-backdrop{display:none}.animal-note-form-page{padding:20px;max-width:min(100%,800px);margin:0 auto}.animal-note-form-page .breadcrumb{margin-bottom:20px}.animal-note-form-page .breadcrumb-link{background:none;border:none;color:var(--text-secondary, #6b7280);font-size:16px;font-weight:500;cursor:pointer;padding:8px 0;display:inline-flex;align-items:center;gap:8px;transition:color .2s ease;text-decoration:none}.animal-note-form-page .breadcrumb-link:before{content:"‹";font-size:24px;font-weight:400;line-height:1}.animal-note-form-page .breadcrumb-link:hover{color:var(--accent-orange)}.animal-note-form-page .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.animal-note-form-page .page-header h1{margin:0;color:var(--text-primary, #1f2937)}.note-form{display:flex;flex-direction:column;gap:20px}.note-form .form-group{display:flex;flex-direction:column;gap:6px}.note-form label{font-weight:500;color:var(--text-primary, #1f2937);font-size:14px}.note-form input[type=text],.note-form textarea,.note-form select{padding:10px 12px;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;font-size:14px;color:var(--text-primary, #1f2937);background:var(--input-bg, #fff);transition:border-color .2s ease}.note-form input[type=text]:focus,.note-form textarea:focus,.note-form select:focus{outline:none;border-color:var(--border-focus, var(--accent-orange))}.note-form textarea{resize:vertical;min-height:120px}.note-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.tag-input-row{display:flex;gap:8px}.tag-input-row input{flex:1}.tags-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.tag-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:var(--chip-orange-bg, #fff7ed);color:var(--accent-orange, #f97316);border-radius:12px;font-size:13px;font-weight:500}.tag-chip button{background:none;border:none;color:inherit;cursor:pointer;font-size:16px;line-height:1;padding:0 2px}.checkbox-group label{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:400}.checkbox-group input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent-orange)}.form-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid var(--border-primary, #e5e7eb)}@media(max-width:600px){.note-form .form-row{grid-template-columns:1fr}}.animal-note-form-page--mobile{max-width:none;margin:0;padding:12px 12px 88px}.animal-note-form-page--mobile .page-header h1{font-size:22px}.swp-root{display:flex;flex-direction:column;height:100vh;background:var(--body-background, #0d1b22);color:var(--text-primary);overflow:hidden}.swp-topbar{display:flex;align-items:center;justify-content:space-between;padding:0 1.5rem;height:56px;border-bottom:1px solid var(--border-color);flex-shrink:0}.swp-topbar-brand{display:flex;align-items:center;gap:.5rem}.swp-brand-icon{font-size:1.4rem;background:var(--accent-orange);border-radius:8px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:1rem}.swp-brand-name{font-weight:700;font-size:1.1rem}.swp-topbar-right{display:flex;align-items:center;gap:1rem}.swp-step-counter{font-size:.85rem;color:var(--text-secondary)}.swp-exit-btn{background:var(--surface-hover);border:none;color:var(--text-secondary);width:32px;height:32px;border-radius:50%;cursor:pointer;font-size:.9rem;display:flex;align-items:center;justify-content:center;transition:background .15s,color .15s}.swp-exit-btn:hover{background:var(--border-color);color:var(--text-primary)}.swp-body{display:flex;flex:1;overflow:hidden}.swp-sidebar{width:220px;flex-shrink:0;border-right:1px solid var(--border-color);overflow-y:auto;padding:1.5rem 0 1rem}.swp-sidebar-label{font-size:.65rem;font-weight:700;letter-spacing:.08em;color:var(--text-secondary);padding:0 1.25rem;margin:0 0 .75rem}.swp-step-list{list-style:none;margin:0;padding:0}.swp-step-list li{position:relative}.swp-step-list li:not(:last-child):after{content:"";position:absolute;left:calc(1.25rem + 16px);top:calc(.6rem + 26px);bottom:-1rem;width:2px;background:var(--border-color)}.swp-step-btn{width:100%;display:flex;align-items:center;gap:.75rem;padding:.6rem 1.25rem;background:none;border:none;cursor:pointer;text-align:left;transition:background .15s;border-left:3px solid transparent;position:relative;z-index:1;justify-content:flex-start}.swp-step-btn:hover{background:var(--surface-hover)}.swp-step-btn.active{background:var(--surface-hover);border-left-color:var(--accent-orange)}.swp-step-num{width:26px;height:26px;border-radius:50%;border:2px solid var(--border-color);display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;color:var(--text-secondary);flex-shrink:0;transition:all .2s;background:var(--card-background)}.swp-step-btn.active .swp-step-num{border-color:var(--accent-orange);background:var(--accent-orange);color:#fff}.swp-step-btn.done .swp-step-num{border-color:var(--accent-orange);background:var(--card-background);color:var(--accent-orange)}.swp-step-info{display:flex;flex-direction:column;gap:.1rem;min-width:0}.swp-step-title{font-size:.85rem;font-weight:500;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.swp-step-btn.active .swp-step-title{color:var(--text-primary);font-weight:600}.swp-step-btn.done .swp-step-title{color:var(--text-secondary)}.swp-step-sub{font-size:.72rem;color:var(--text-tertiary, var(--text-secondary));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.swp-step-btn.active .swp-step-sub{color:var(--accent-orange)}.swp-content{flex:1;display:flex;flex-direction:column;overflow-y:auto}.swp-content-inner{flex:1;padding:2.5rem 0rem;max-width:780px;width:100%;margin:0 auto}.swp-footer{display:flex;align-items:center;justify-content:space-between;padding:1rem 3rem;border-top:1px solid var(--border-color);flex-shrink:0}.swp-footer-left,.swp-footer-right{display:flex;align-items:center;gap:.75rem}.swp-cta-btn{padding:.6rem 1.75rem;font-weight:600;border-radius:8px}.swp-welcome{text-align:center;padding:1rem 0}.swp-welcome-icon{font-size:3rem;display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;background:var(--surface-hover);border-radius:16px;margin-bottom:1.5rem}.swp-welcome h1{font-size:2rem;font-weight:700;margin:0 0 .75rem}.swp-welcome>p{font-size:.95rem;color:var(--text-secondary);max-width:480px;margin:0 auto 2rem;line-height:1.6}.swp-checklist-box{background:var(--card-background);border:1px solid var(--border-color);border-radius:12px;padding:1.25rem 1.5rem;max-width:520px;margin:0 auto;text-align:left}.swp-checklist-title{font-size:.9rem;font-weight:600;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem;color:var(--text-primary)}.swp-checklist-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.swp-checklist-item{display:flex;align-items:center;gap:.6rem;padding:.5rem .75rem;background:var(--surface-hover);border-radius:8px;font-size:.82rem;color:var(--text-secondary);border:1px solid var(--border-color)}.swp-checklist-item.done{color:var(--text-primary);font-weight:600;border-color:var(--accent-orange);background:var(--chip-orange-bg, rgba(244, 162, 97, .08))}.swp-checklist-dot{width:18px;height:18px;border-radius:50%;border:2px solid var(--border-color);flex-shrink:0}.swp-checklist-item.done .swp-checklist-dot{border:none;border-radius:5px;background:var(--accent-orange);display:flex;align-items:center;justify-content:center;position:relative}.swp-checklist-item.done .swp-checklist-dot:after{content:"";display:block;width:10px;height:10px;background:#fff;clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0%,43% 62%)}.swp-loading{display:flex;align-items:center;justify-content:center;height:100vh}@media(max-width:768px){.swp-sidebar{display:none}.swp-content-inner{padding:1.5rem 1.25rem}.swp-footer{padding:1rem 1.25rem}.swp-checklist-grid,.wizard-animal-row,.wizard-client-row,.wizard-channel-cards,.wizard-add-animal .wizard-animal-layout{grid-template-columns:1fr}.swp-topbar{padding:.75rem 1rem}.swp-step-counter{font-size:.75rem}}.swp-content input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:22px;height:22px;min-width:22px;border-radius:6px;border:2px solid var(--border-color);background:var(--surface-hover);cursor:pointer;position:relative;transition:background .2s,border-color .2s;flex-shrink:0}.swp-content input[type=checkbox]:checked{background:var(--accent-orange);border-color:var(--accent-orange)}.swp-content input[type=checkbox]:checked:after{content:"";position:absolute;inset:0;margin:auto;width:12px;height:12px;background:#fff;clip-path:polygon(14% 44%,0 65%,50% 100%,100% 16%,80% 0%,43% 62%)}.swp-content input[type=checkbox]:focus{outline:none;box-shadow:0 0 0 3px #f4a26140}.wizard-file-upload-area{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px;border:2px dashed var(--border-color);border-radius:8px;background:var(--surface-hover);cursor:pointer;transition:border-color .2s,background .2s;color:var(--accent-orange);font-size:.875rem;font-weight:500;text-align:center;width:100%;box-sizing:border-box}.wizard-file-upload-area:hover{border-color:var(--accent-orange);background:var(--hover-bg)}.wizard-file-selected{display:flex;align-items:center;gap:6px;color:var(--text-primary);font-size:.85rem;font-weight:500}.wizard-add-animal .wizard-animal-layout{display:grid;grid-template-columns:180px 1fr;gap:1.5rem;align-items:start}.wizard-animal-photo-col{display:flex;flex-direction:column;align-items:center;gap:.5rem}.wizard-animal-photo-upload{width:140px;height:140px;border-radius:50%;border:2px dashed var(--border-color);background:var(--surface-hover);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer;color:var(--text-secondary);font-size:.75rem;text-align:center;transition:border-color .2s,background .2s}.wizard-animal-photo-upload:hover{border-color:var(--accent-orange);color:var(--accent-orange);background:var(--hover-bg)}.wizard-animal-photo-hint{font-size:.65rem;font-weight:600;letter-spacing:.05em;color:var(--text-tertiary);text-transform:uppercase;text-align:center;margin:0}.wizard-animal-fields{display:flex;flex-direction:column;gap:.75rem}.wizard-animal-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.wizard-input-with-unit{display:flex;border:1px solid var(--border-color);border-radius:6px;overflow:hidden;background:var(--input-bg, var(--surface-hover))}.wizard-input-with-unit input{flex:1;border:none!important;background:transparent;padding:.5rem .75rem;font-size:.875rem;color:var(--text-primary);outline:none}.wizard-unit-select{border:none!important;border-left:1px solid var(--border-color)!important;background:var(--surface-hover)!important;color:var(--text-secondary)!important;padding:0 .5rem!important;font-size:.8rem!important;cursor:pointer;border-radius:0!important;width:auto!important}.wizard-input-with-unit .wizard-unit-select{padding-right:1.5rem!important}.wizard-input-with-unit:focus-within{border-color:var(--accent-orange);box-shadow:0 0 0 2px #f4a26126}.swp-page-header{margin-bottom:1.5rem}.swp-page-header h1{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin:0 0 .35rem;line-height:1.2}.swp-page-header p{font-size:.9rem;color:var(--text-secondary);margin:0;line-height:1.5}.wizard-coming-soon-btn{position:relative;opacity:.55;cursor:not-allowed!important}.wizard-coming-soon-badge{position:absolute;top:-8px;right:-4px;background:var(--accent-orange);color:#fff;font-size:.6rem;font-weight:700;letter-spacing:.03em;padding:2px 5px;border-radius:4px;text-transform:uppercase;pointer-events:none;white-space:nowrap}.wizard-client-invite{display:flex;flex-direction:column;gap:.75rem;background:var(--card-background);padding:1.5rem;border-radius:16px}.wizard-client-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.wizard-divider{border:none;border-top:1px solid var(--border-color);margin:.25rem 0}.wizard-channel-cards{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-top:.5rem}.wizard-channel-card{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;border:1px solid var(--border-color);border-radius:10px;cursor:pointer;background:var(--surface-hover);transition:border-color .15s}.wizard-channel-card.selected{border-color:var(--accent-orange);background:var(--chip-orange-bg, rgba(244, 162, 97, .06))}.wizard-channel-card-disabled{opacity:.5;cursor:not-allowed}.wizard-channel-radio{width:16px;height:16px;min-width:16px;border-radius:50%;border:2px solid var(--border-color);margin-top:2px;flex-shrink:0;position:relative}.wizard-channel-card.selected .wizard-channel-radio{border-color:var(--accent-orange)}.wizard-channel-card.selected .wizard-channel-radio:after{content:"";position:absolute;inset:2px;border-radius:50%;background:var(--accent-orange)}.wizard-channel-icon{font-size:1.1rem;flex-shrink:0;margin-top:1px}.wizard-channel-text{display:flex;flex-direction:column;gap:3px;font-size:.85rem}.wizard-channel-text strong{color:var(--text-primary);font-weight:600;display:flex;align-items:center;flex-wrap:wrap;gap:4px}.wizard-channel-text span{color:var(--text-secondary);font-size:.78rem;line-height:1.4}.wizard-client-note{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem 1rem;background:var(--surface-hover);border-radius:8px;border:1px solid var(--border-color);font-size:.8rem;color:var(--text-secondary);line-height:1.4}.wizard-client-note svg{flex-shrink:0;margin-top:1px;color:var(--text-tertiary)}.swp-content .wizard-quick-form .btn-primary,.swp-content .wizard-step-content .btn-primary{margin-left:auto}.programs-page{display:flex;flex-direction:column;gap:24px;padding:24px}.programs-page__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.programs-page__header h1{margin:0;font-size:24px;color:var(--text-primary, #1f2937)}.programs-page__header p{margin:4px 0 0;color:var(--text-secondary, #6b7280);font-size:14px}.programs-page__cta{display:inline-flex;align-items:center;gap:6px;background:var(--accent-orange, #e86a47);color:var(--text-inverse, #ffffff);padding:8px 14px;border-radius:8px;font-size:14px;font-weight:600;text-decoration:none;transition:background-color .2s ease}.programs-page__cta:hover{background:var(--accent-orange-hover, #d65f3f)}.programs-shell{background:var(--card-background, #ffffff);border:1px solid var(--card-border, var(--border-primary, #e5e7eb));border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:20px}.programs-toolbar{display:flex;flex-direction:column;gap:14px;padding-bottom:16px;border-bottom:1px solid var(--input-border, #1f2937)}.programs-toolbar__tabs{display:flex;flex-wrap:wrap;gap:6px}.programs-pill{appearance:none;background:transparent;border:1px solid transparent;padding:6px 12px;border-radius:999px;font-size:13px;font-weight:600;color:var(--text-secondary, #6b7280);cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.programs-pill:hover{color:var(--text-primary, #1f2937)}.programs-pill.is-active{background:var(--chip-orange-bg, rgba(232, 106, 71, .18));border-color:var(--accent-orange, #e86a47);color:var(--accent-orange, #e86a47)}.programs-pill__count{font-size:12px;font-weight:700;color:var(--text-tertiary, #9ca3af)}.programs-pill.is-active .programs-pill__count{color:var(--accent-orange, #e86a47)}.programs-pill__dot{width:6px;height:6px;border-radius:50%;display:inline-block;background:currentColor}.programs-pill--active .programs-pill__dot{color:var(--success-color, #22c55e)}.programs-pill--draft .programs-pill__dot,.programs-pill--archived .programs-pill__dot{color:var(--text-tertiary, #9ca3af)}.programs-pill--cancelled .programs-pill__dot{color:var(--error-color, #ef4444)}.programs-pill--active .programs-pill__dot,.programs-pill--draft .programs-pill__dot,.programs-pill--archived .programs-pill__dot,.programs-pill--cancelled .programs-pill__dot{background:currentColor}.programs-toolbar__row{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}.programs-toolbar__types{display:inline-flex;flex-wrap:wrap;align-items:center;gap:4px}.programs-toolbar__label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary, #9ca3af);margin-right:6px}.programs-type-btn{appearance:none;background:transparent;border:1px solid transparent;padding:4px 12px;border-radius:6px;font-size:13px;font-weight:500;color:var(--text-secondary, #6b7280);cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.programs-type-btn:hover{color:var(--text-primary, #1f2937)}.programs-type-btn.is-active{border-color:var(--accent-orange, #e86a47);color:var(--accent-orange, #e86a47)}.programs-toolbar__right{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px}.programs-public-toggle{appearance:none;background:transparent;border:1px solid var(--border-primary, #e5e7eb);border-radius:999px;padding:5px 12px;font-size:12px;font-weight:600;color:var(--text-secondary, #6b7280);cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.programs-public-toggle:hover{border-color:var(--accent-orange-hover, #d65f3f);color:var(--text-primary, #1f2937)}.programs-public-toggle.is-active{background:var(--chip-orange-bg, rgba(232, 106, 71, .18));border-color:var(--accent-orange, #e86a47);color:var(--accent-orange, #e86a47)}.programs-search{display:inline-flex;align-items:center;gap:6px;background:var(--input-bg, var(--surface-secondary, #f9fafb));border:1px solid var(--border-primary, #e5e7eb);border-radius:8px;padding:6px 10px;color:var(--text-tertiary, #9ca3af);min-width:220px}.programs-search:focus-within{border-color:var(--border-focus, var(--accent-orange, #e86a47))}.programs-search input{appearance:none;background:transparent;border:none;outline:none;flex:1;font-size:13px;color:var(--text-primary, #1f2937);padding:0;min-width:0}.programs-search input::placeholder{color:var(--text-tertiary, #9ca3af)}.programs-empty{background:var(--card-background, #ffffff);border:1px dashed var(--border-primary, #e5e7eb);border-radius:12px;padding:40px;text-align:center;color:var(--text-secondary, #6b7280);display:inline-flex;align-items:center;gap:8px;justify-content:center}.programs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:20px;align-items:stretch}.program-card{text-align:left;appearance:none;background:var(--card-background, #ffffff);border:1px solid var(--card-border, transparent);border-radius:14px;box-shadow:0 1px 3px #00000026;padding:20px;cursor:pointer;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease;display:flex;flex-direction:column;gap:14px;min-width:0}.program-card:hover,.program-card:focus-visible{border-color:var(--accent-orange-hover, #d65f3f);box-shadow:0 4px 12px #0000002e;outline:none}.program-card__chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.program-card__chip{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border-radius:999px;white-space:nowrap}.program-card__chip--type-course{background:#3b82f62e;color:#60a5fa}.program-card__chip--type-workshop{background:#a855f72e;color:#c084fc}.program-card__chip--type-drop_in{background:var(--chip-teal-bg, rgba(20, 184, 166, .18));color:var(--chip-teal-text, #2dd4bf)}.program-card__chip--status{background:transparent;padding-left:2px}.program-card__chip-dot{width:6px;height:6px;border-radius:50%;display:inline-block;background:currentColor}.program-card__chip--status-active{color:var(--success-color, #22c55e)}.program-card__chip--status-upcoming{color:var(--warning-color, #f59e0b)}.program-card__chip--status-full{color:var(--error-color, #ef4444)}.program-card__chip--status-draft{color:var(--text-tertiary, #9ca3af)}.program-card__chip--status-completed{color:var(--success-color, #22c55e)}.program-card__chip--status-cancelled{color:var(--error-color, #ef4444)}.program-card__chip--status-archived{color:var(--text-tertiary, #9ca3af)}.program-card__chip--public{background:var(--chip-orange-bg, rgba(232, 106, 71, .18));color:var(--accent-orange, #e86a47)}.program-card__heading{display:flex;flex-direction:column;gap:2px;min-width:0}.program-card__title{margin:0;font-size:18px;font-weight:700;color:var(--text-primary, #1f2937);line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.program-card__code{font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--text-tertiary, #9ca3af)}.program-card__desc{margin:0;font-size:13px;color:var(--text-secondary, #6b7280);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.program-card__info{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}.program-card__info-cell{display:flex;flex-direction:column;gap:4px;min-width:0}.program-card__info-label{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary, #9ca3af)}.program-card__info-value{font-size:13px;font-weight:500;color:var(--text-primary, #1f2937);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.program-card__info-value--accent{color:var(--accent-orange, #e86a47);font-weight:600}.program-card__enrollment{display:flex;flex-direction:column;gap:6px}.program-card__enrollment-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.program-card__enrollment-count{font-size:13px;font-weight:600;color:var(--text-primary, #1f2937)}.program-card__progress{width:100%;height:6px;border-radius:999px;background:var(--surface-secondary, #1f2937);overflow:hidden}.program-card__progress-bar{height:100%;border-radius:999px;transition:width .3s ease}.program-card__progress-bar--normal{background:var(--success-color, #22c55e)}.program-card__progress-bar--high{background:var(--warning-color, #f59e0b)}.program-card__progress-bar--full{background:var(--error-color, #ef4444)}.program-card__footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:4px}.program-card__price{display:inline-flex;align-items:baseline;gap:2px;min-width:0}.program-card__price-amount{font-size:20px;font-weight:700;color:var(--accent-orange, #e86a47)}.program-card__price-unit{font-size:12px;color:var(--text-tertiary, #9ca3af)}.program-card__actions{display:inline-flex;gap:8px;flex-shrink:0}.program-card__button{appearance:none;border:1px solid var(--border-primary, #374151);background:transparent;color:var(--text-primary, #1f2937);padding:6px 14px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:border-color .2s ease,background-color .2s ease,color .2s ease}.program-card__button:hover{border-color:var(--accent-orange-hover, #d65f3f);color:var(--accent-orange, #e86a47)}.program-card__button--primary{background:var(--accent-orange, #e86a47);border-color:var(--accent-orange, #e86a47);color:var(--text-inverse, #ffffff)}.program-card__button--primary:hover{background:var(--accent-orange-hover, #d65f3f);border-color:var(--accent-orange-hover, #d65f3f);color:var(--text-inverse, #ffffff)}.program-editor{display:flex;flex-direction:column;gap:24px;padding:24px;max-width:920px}.program-editor__section{background:var(--card-background, #ffffff);border:1px solid var(--border-primary, #e5e7eb);border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:16px}.program-editor__section h2{margin:0;font-size:16px;color:var(--text-primary, #1f2937)}.program-editor__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.program-editor__field{display:flex;flex-direction:column;gap:6px}.program-editor__field--wide{grid-column:1 / -1}.program-editor__field label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary, #6b7280)}.program-editor__field input,.program-editor__field select,.program-editor__field textarea{padding:8px 10px;border:1px solid var(--border-primary, #e5e7eb);background:var(--input-bg, #ffffff);color:var(--text-primary, #1f2937);border-radius:6px;font-size:14px;font-family:inherit}.program-editor__field textarea{min-height:120px;resize:vertical}.program-editor__field input:focus,.program-editor__field select:focus,.program-editor__field textarea:focus{outline:none;border-color:var(--border-focus, #e86a47)}.program-editor__checkbox{display:flex;align-items:center;gap:8px;font-size:14px;color:var(--text-primary, #1f2937)}.program-editor__actions{display:flex;justify-content:flex-end;gap:12px}.program-editor__button-primary,.program-editor__button-secondary{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;border:1px solid transparent;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.program-editor__button-primary{background:var(--accent-orange, #e86a47);color:var(--text-inverse, #ffffff)}.program-editor__button-primary:hover{background:var(--accent-orange-hover, #d65f3f)}.program-editor__button-primary:disabled{opacity:.6;cursor:not-allowed}.program-editor__button-secondary{background:transparent;border-color:var(--border-primary, #e5e7eb);color:var(--text-primary, #1f2937)}.program-editor__button-secondary:hover{border-color:var(--accent-orange-hover, #d65f3f)}.program-detail{padding:24px;display:flex;flex-direction:column;gap:16px}.program-detail__header{display:flex;flex-direction:column;gap:6px}.program-detail__header h1{margin:0;font-size:22px;color:var(--text-primary, #1f2937)}.program-detail__tabs{display:flex;gap:8px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.program-detail__tab{background:transparent;border:none;padding:10px 16px;font-size:14px;font-weight:500;color:var(--text-secondary, #6b7280);cursor:pointer;border-bottom:2px solid transparent;transition:color .2s ease,border-color .2s ease}.program-detail__tab.is-active{color:var(--accent-orange, #e86a47);border-bottom-color:var(--accent-orange, #e86a47)}.program-detail__stat-row{display:flex;gap:24px;flex-wrap:wrap}.program-detail__stat{background:var(--surface-secondary, #f9fafb);border-radius:8px;padding:12px 16px;min-width:110px}.program-detail__stat-label{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary, #6b7280)}.program-detail__stat-value{font-size:18px;font-weight:700;color:var(--text-primary, #1f2937)}.program-detail__breakdown{background:var(--card-background);border:1px solid var(--card-border, var(--border-primary, #1f2937));border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:14px}.program-detail__breakdown-header{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}.program-detail__breakdown-title{margin:0;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary, #9ca3af)}.program-detail__breakdown-total{font-size:14px;font-weight:600;color:var(--text-primary, #f9fafb)}.program-detail__breakdown-total strong{color:var(--text-primary, #f9fafb)}.program-detail__breakdown-total span{color:var(--text-tertiary, #9ca3af);font-weight:500}.program-detail__breakdown-bar{display:flex;width:100%;height:10px;border-radius:999px;overflow:hidden;background:var(--surface-secondary, #1f2937)}.program-detail__breakdown-segment{height:100%;transition:width .3s ease}.program-detail__breakdown-legend{display:flex;flex-wrap:wrap;gap:18px 24px}.program-detail__breakdown-legend-item{display:inline-flex;align-items:center;gap:8px;font-size:13px}.program-detail__breakdown-legend-swatch{width:10px;height:10px;border-radius:2px;display:inline-block;flex-shrink:0}.program-detail__breakdown-legend-label{color:var(--text-tertiary, #9ca3af)}.program-detail__breakdown-legend-value{color:var(--text-primary, #f9fafb);font-weight:600}.program-detail__breakdown-legend-pct{color:var(--text-tertiary, #9ca3af);font-size:12px}.program-sessions-list{display:flex;flex-direction:column;gap:8px}.program-session-row{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:var(--surface-secondary, #f9fafb);border-radius:8px;font-size:14px}.program-session-row__date{font-weight:600;color:var(--text-primary, #1f2937)}.program-session-row__title{font-weight:600;color:var(--text-primary, #1f2937);font-size:14px}.program-session-row__date--sub{font-weight:500;font-size:12px;color:var(--text-secondary, #6b7280);margin-top:2px}.program-session-row__meta{color:var(--text-secondary, #6b7280);font-size:12px}.program-session-row--cancelled .program-session-row__date{text-decoration:line-through;color:var(--text-tertiary, #9ca3af)}.program-session-row__actions{display:flex;gap:8px}.program-session-row__button{background:transparent;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;padding:4px 10px;font-size:12px;font-weight:600;cursor:pointer;color:var(--text-primary, #1f2937)}.program-session-row__button:hover{border-color:var(--accent-orange-hover, #d65f3f)}.program-session-row__button--danger{color:var(--error-text, #991b1b);border-color:var(--error-border, #fecaca)}.program-session-row__button--danger:hover{background:var(--error-bg, #fee2e2)}.roster-section{display:flex;flex-direction:column;gap:8px}.roster-section h3{margin:0;font-size:14px;font-weight:600;color:var(--text-primary, #1f2937);display:flex;align-items:center;gap:8px}.roster-section__count{font-size:12px;color:var(--text-secondary, #6b7280);font-weight:500}.roster-row{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:var(--surface-secondary, #f9fafb);border-radius:8px;font-size:14px}.roster-row__main{display:flex;flex-direction:column;gap:2px}.roster-row__name{font-weight:600;color:var(--text-primary, #1f2937)}.roster-row__meta{font-size:12px;color:var(--text-secondary, #6b7280)}.roster-row__actions{display:flex;gap:6px}.roster-row__button{background:transparent;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;padding:4px 10px;font-size:12px;font-weight:600;cursor:pointer;color:var(--text-primary, #1f2937)}.roster-row__button:hover{border-color:var(--accent-orange-hover, #d65f3f)}.roster-row__button--primary{background:var(--accent-orange, #e86a47);border-color:var(--accent-orange, #e86a47);color:var(--text-inverse, #ffffff)}.roster-row__button--primary:hover{background:var(--accent-orange-hover, #d65f3f);border-color:var(--accent-orange-hover, #d65f3f)}.roster-export{display:inline-flex;align-items:center;gap:6px;background:transparent;border:1px solid var(--border-primary, #e5e7eb);border-radius:6px;padding:6px 12px;font-size:13px;font-weight:600;cursor:pointer;color:var(--text-primary, #1f2937);align-self:flex-start}.roster-export:hover{border-color:var(--accent-orange-hover, #d65f3f)}.enroll-banner{background:var(--warm-tint-bg, #fff7ed);border:1px solid var(--warm-tint-border, #fed7aa);border-radius:8px;padding:12px 16px;font-size:13px;color:var(--text-primary, #1f2937)}@keyframes programs-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.programs-skeleton{border-radius:6px;background:linear-gradient(90deg,var(--surface-hover) 25%,rgba(255,255,255,.12) 50%,var(--surface-hover) 75%);background-size:200% 100%;animation:programs-skeleton-shimmer 1.4s ease-in-out infinite}.programs-toolbar--skeleton{pointer-events:none}.programs-toolbar--skeleton .programs-skeleton-pill{height:28px;border-radius:999px;width:92px}.programs-toolbar--skeleton .programs-skeleton-pill:nth-child(2){width:80px}.programs-toolbar--skeleton .programs-skeleton-pill:nth-child(3){width:104px}.programs-toolbar--skeleton .programs-skeleton-pill:nth-child(4){width:70px}.programs-toolbar--skeleton .programs-skeleton-pill:nth-child(5){width:88px}.programs-toolbar--skeleton .programs-skeleton-pill:nth-child(6){width:108px}.programs-skeleton-typebtn{height:24px;width:72px;border-radius:6px}.programs-skeleton-search{height:32px;width:220px;border-radius:8px}.programs-skeleton-toggle{height:28px;width:110px;border-radius:999px}.program-card--skeleton{cursor:default;pointer-events:none}.program-card--skeleton:hover,.program-card--skeleton:focus-visible{border-color:var(--card-border, transparent);box-shadow:0 1px 3px #00000026}.program-card--skeleton .programs-skeleton-chip{height:18px;width:64px;border-radius:999px}.program-card--skeleton .programs-skeleton-chip:nth-child(2){width:78px}.program-card--skeleton .programs-skeleton-chip:nth-child(3){width:52px}.program-card--skeleton .programs-skeleton-title{height:20px;width:70%;border-radius:6px}.program-card--skeleton .programs-skeleton-code{height:12px;width:80px;border-radius:4px;margin-top:6px}.program-card--skeleton .programs-skeleton-line{height:12px;width:100%;border-radius:4px}.program-card--skeleton .programs-skeleton-line--short{width:60%}.program-card--skeleton .programs-skeleton-info-label{height:10px;width:60px;border-radius:4px}.program-card--skeleton .programs-skeleton-info-value{height:14px;width:90%;border-radius:4px;margin-top:6px}.program-card--skeleton .programs-skeleton-progress{height:8px;width:100%;border-radius:999px}.program-card--skeleton .programs-skeleton-price{height:18px;width:90px;border-radius:4px}.program-card--skeleton .programs-skeleton-button{height:28px;width:72px;border-radius:6px}.programs-skeleton-heading{height:28px;width:280px;border-radius:6px;max-width:100%}.programs-skeleton-subheading{height:14px;width:360px;border-radius:4px;max-width:100%}.programs-skeleton-tab{height:26px;width:96px;border-radius:6px}.programs-skeleton-stat-label{height:10px;width:70px;border-radius:4px}.programs-skeleton-stat-value{height:24px;width:56px;border-radius:6px;margin-top:6px}.programs-skeleton-paragraph{height:12px;width:100%;border-radius:4px}.programs-skeleton-paragraph--short{width:60%}.programs-skeleton-paragraph--medium{width:80%}.programs-skeleton-banner{height:60px;width:100%;border-radius:8px}.programs-skeleton-field-label{height:12px;width:120px;border-radius:4px}.programs-skeleton-field-input{height:36px;width:100%;border-radius:6px;margin-top:6px}.programs-skeleton-field-textarea{height:88px;width:100%;border-radius:6px;margin-top:6px}.programs-skeleton-row{height:56px;width:100%;border-radius:8px}.programs-skeleton-section-title{height:16px;width:160px;border-radius:4px}.programs-skeleton-cta{height:36px;width:160px;border-radius:8px}.program-editor-v2{display:flex;flex-direction:column;max-width:1440px;margin:0 auto;padding:0}.program-editor-v2__topbar{position:sticky;top:-2rem;z-index:5;display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:20px 32px 16px;background:var(--body-background);border-bottom:1px solid var(--border-primary, #1f2937)}.program-editor-v2__breadcrumb{font-size:13px;color:var(--text-tertiary, #9ca3af);margin:0 0 4px}.program-editor-v2__breadcrumb a{color:var(--text-tertiary, #9ca3af);text-decoration:none}.program-editor-v2__breadcrumb a:hover{color:var(--text-secondary, #6b7280)}.program-editor-v2__breadcrumb-current{color:var(--text-secondary, #d1d5db)}.program-editor-v2__title{font-size:28px;font-weight:700;color:var(--text-primary, #f9fafb);margin:0}.program-editor-v2__topbar-actions{display:inline-flex;align-items:center;gap:10px}.program-editor-v2__btn{appearance:none;border:1px solid transparent;padding:10px 18px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease,opacity .2s ease}.program-editor-v2__btn--ghost{background:transparent;color:var(--text-secondary, #9ca3af);border-color:transparent}.program-editor-v2__btn--ghost:hover{color:var(--text-primary, #f9fafb)}.program-editor-v2__btn--secondary{background:var(--card-background);color:var(--text-primary, #f9fafb);border-color:var(--border-primary, #374151)}.program-editor-v2__btn--secondary:hover{border-color:var(--accent-orange-hover, #d65f3f)}.program-editor-v2__btn--primary{background:var(--accent-orange, #e86a47);color:var(--text-inverse, #ffffff)}.program-editor-v2__btn--primary:hover{background:var(--accent-orange-hover, #d65f3f)}.program-editor-v2__btn--primary:disabled{opacity:.4;cursor:not-allowed;background:var(--accent-orange, #e86a47)}.program-editor-v2__body{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:28px;padding:24px 32px 64px;align-items:start}@media(max-width:1100px){.program-editor-v2__body{grid-template-columns:1fr}}.program-editor-v2__form{display:flex;flex-direction:column;gap:20px;min-width:0}.program-editor-v2__preview-col{position:sticky;top:96px}@media(max-width:1100px){.program-editor-v2__preview-col{position:static}}.pe-card{background:var(--card-background);border:1px solid var(--card-border, var(--border-primary, #1f2937));border-radius:14px;padding:24px;display:flex;flex-direction:column;gap:18px}.pe-card__header{display:flex;flex-direction:column;gap:4px}.pe-card__title{margin:0;font-size:17px;font-weight:700;color:var(--text-primary, #f9fafb)}.pe-card__subtitle{margin:0;font-size:13px;color:var(--text-tertiary, #9ca3af)}.pe-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}.pe-field{display:flex;flex-direction:column;gap:6px;min-width:0}.pe-field--full{grid-column:span 12}.pe-field--half{grid-column:span 6}.pe-field--third{grid-column:span 4}.pe-field--quarter{grid-column:span 3}@media(max-width:640px){.pe-field--half,.pe-field--third,.pe-field--quarter{grid-column:span 12}}.pe-field__label-row{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.pe-field__label{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary, #9ca3af)}.pe-field__hint{font-size:11px;color:var(--text-tertiary, #9ca3af)}.pe-field__required{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--error-text, #ef4444)}.pe-field input,.pe-field select,.pe-field textarea{appearance:none;width:100%;background:var(--input-bg, var(--surface-secondary, #111827));border:1px solid var(--border-primary, #374151);border-radius:8px;padding:10px 12px;font-size:14px;color:var(--text-primary, #f9fafb);font-family:inherit;transition:border-color .15s ease}.pe-field input:focus,.pe-field select:focus,.pe-field textarea:focus{outline:none;border-color:var(--accent-orange, #e86a47)}.pe-field input::placeholder,.pe-field textarea::placeholder{color:var(--text-tertiary, #6b7280)}.pe-field textarea{min-height:96px;resize:vertical}.pe-field__input-suffix{position:relative}.pe-field__input-suffix input{padding-right:44px}.pe-field__suffix-text{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:12px;color:var(--text-tertiary, #9ca3af);pointer-events:none;text-transform:lowercase}.pe-field__input-prefix{position:relative}.pe-field__input-prefix input{padding-left:28px}.pe-field__prefix-text{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:14px;color:var(--text-tertiary, #9ca3af);pointer-events:none}.pe-pill-group{display:inline-flex;background:var(--surface-secondary, #111827);border:1px solid var(--border-primary, #374151);border-radius:999px;padding:4px;gap:4px;align-self:flex-start}.pe-pill-group__option{appearance:none;background:transparent;border:none;padding:7px 18px;border-radius:999px;font-size:13px;font-weight:600;color:var(--text-secondary, #9ca3af);cursor:pointer;transition:background-color .2s ease,color .2s ease}.pe-pill-group__option:hover{color:var(--text-primary, #f9fafb)}.pe-pill-group__option.is-active{background:var(--accent-orange, #e86a47);color:var(--text-inverse, #ffffff)}.pe-day-pills{display:inline-flex;flex-wrap:wrap;gap:8px}.pe-day-pill{appearance:none;background:var(--surface-secondary, #111827);border:1px solid var(--border-primary, #374151);color:var(--text-secondary, #d1d5db);border-radius:8px;padding:8px 14px;font-size:13px;font-weight:600;min-width:52px;cursor:pointer;transition:border-color .15s ease,background-color .15s ease,color .15s ease}.pe-day-pill:hover{border-color:var(--accent-orange-hover, #d65f3f)}.pe-day-pill.is-active{background:var(--accent-orange, #e86a47);border-color:var(--accent-orange, #e86a47);color:var(--text-inverse, #ffffff)}.pe-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;max-width:420px}.pe-month-cell{appearance:none;background:var(--surface-secondary, #111827);border:1px solid var(--border-primary, #374151);color:var(--text-secondary, #d1d5db);border-radius:6px;padding:8px 0;font-size:13px;cursor:pointer}.pe-month-cell:hover{border-color:var(--accent-orange-hover, #d65f3f)}.pe-month-cell.is-active{background:var(--accent-orange, #e86a47);border-color:var(--accent-orange, #e86a47);color:var(--text-inverse, #ffffff)}.pe-month-cell--last{grid-column:span 2;font-weight:600}.pe-skip-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.pe-skip-row input[type=date]{max-width:200px}.pe-add-btn{appearance:none;background:transparent;border:1px dashed var(--border-primary, #374151);color:var(--text-secondary, #9ca3af);border-radius:8px;padding:9px 14px;font-size:13px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.pe-add-btn:hover{border-color:var(--accent-orange-hover, #d65f3f);color:var(--text-primary, #f9fafb)}.pe-add-btn:disabled{opacity:.4;cursor:not-allowed}.pe-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.pe-chip{display:inline-flex;align-items:center;gap:6px;background:var(--chip-orange-bg, rgba(232, 106, 71, .18));color:var(--accent-orange, #e86a47);padding:5px 10px;border-radius:999px;font-size:12px;font-weight:600}.pe-chip button{appearance:none;background:transparent;border:none;cursor:pointer;color:currentColor;display:inline-flex;align-items:center;padding:0;opacity:.7}.pe-chip button:hover{opacity:1}.pe-trainer-chip{display:inline-flex;align-items:center;gap:10px;background:var(--surface-secondary, #111827);border:1px solid var(--border-primary, #374151);border-radius:10px;padding:8px 14px 8px 8px;font-size:14px;color:var(--text-primary, #f9fafb);align-self:flex-start}.pe-avatar{width:28px;height:28px;border-radius:50%;background:var(--accent-orange, #e86a47);color:var(--text-inverse, #ffffff);display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;letter-spacing:.05em}.pe-trainer-chip__meta{color:var(--text-tertiary, #9ca3af);font-size:12px;margin-left:2px}.pe-cotrainer-input{background:var(--input-bg, var(--surface-secondary, #111827));border:1px solid var(--border-primary, #374151);border-radius:8px;padding:10px 12px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.pe-cotrainer-input input{appearance:none;background:transparent;border:none;outline:none;flex:1;min-width:160px;color:var(--text-primary, #f9fafb);font-size:14px;padding:0}.pe-cotrainer-input input::placeholder{color:var(--text-tertiary, #6b7280)}.pe-toggle-row{display:flex;align-items:flex-start;gap:14px;background:var(--input-bg, #111827);border:1px solid var(--border-primary, #374151);border-radius:10px;padding:14px 16px;transition:background-color .2s ease,border-color .2s ease}.pe-toggle-row.is-active{background:var(--warm-tint-bg, rgba(232, 106, 71, .08));border-color:var(--accent-orange, rgba(232, 106, 71, .4))}.pe-toggle-row__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.pe-toggle-row__title{font-size:14px;font-weight:600;color:var(--text-primary, #f9fafb)}.pe-toggle-row__desc{font-size:12px;line-height:1.5;color:var(--text-tertiary, #9ca3af)}.pe-toggle-row__desc strong{color:var(--text-secondary, #d1d5db)}.pe-switch{appearance:none;width:40px;height:22px;border-radius:999px;background:var(--surface-hover, #374151);border:none;position:relative;cursor:pointer;flex-shrink:0;margin-top:1px;transition:background-color .2s ease}.pe-switch:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;background:#fff;border-radius:50%;transition:transform .2s ease}.pe-switch[aria-checked=true]{background:var(--accent-orange, #e86a47)}.pe-switch[aria-checked=true]:after{transform:translate(18px)}.pe-preview{background:var(--card-background);border:1px solid var(--card-border, var(--border-primary, #1f2937));border-radius:14px;padding:18px 20px 20px;display:flex;flex-direction:column;gap:16px}.pe-preview__header{display:flex;justify-content:space-between;align-items:baseline}.pe-preview__header-title{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary, #9ca3af)}.pe-preview__header-hint{font-size:11px;color:var(--text-tertiary, #6b7280)}.pe-preview__divider{height:2px;border-radius:2px;background:linear-gradient(90deg,#3b82f6,#e86a47);margin-top:-8px}.pe-preview__type{display:inline-block;align-self:flex-start;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:#3b82f62e;color:#93c5fd}.pe-preview__type--workshop{background:#a855f72e;color:#c4b5fd}.pe-preview__type--drop_in{background:#14b8a62e;color:#5eead4}.pe-preview__title{margin:0;font-size:18px;font-weight:700;color:var(--text-primary, #f9fafb);word-break:break-word}.pe-preview__title--placeholder{color:var(--text-tertiary, #6b7280);font-weight:600}.pe-preview__desc{margin:4px 0 0;font-size:13px;color:var(--text-tertiary, #9ca3af);font-style:italic}.pe-preview__location{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:var(--text-secondary, #d1d5db)}.pe-preview__stats{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px}.pe-preview__stat-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-tertiary, #9ca3af);margin-bottom:4px}.pe-preview__stat-value{font-size:20px;font-weight:700;color:var(--text-primary, #f9fafb);line-height:1.1}.pe-preview__stat-sub{margin-top:2px;font-size:11px;color:var(--text-tertiary, #9ca3af)}.pe-preview__sessions-title{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary, #9ca3af);margin-top:4px}.pe-preview__sessions{display:flex;flex-direction:column;gap:8px;max-height:360px;overflow-y:auto}.pe-session{display:flex;align-items:center;gap:10px;padding:8px 10px 8px 8px;background:var(--surface-secondary, #111827);border:1px solid var(--border-primary, #1f2937);border-radius:10px}.pe-session__date{width:40px;flex-shrink:0;text-align:center;background:var(--chip-orange-bg, rgba(232, 106, 71, .18));color:var(--accent-orange, #e86a47);border-radius:6px;padding:4px 0 5px;line-height:1}.pe-session__date-month{font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.pe-session__date-day{font-size:16px;font-weight:700;margin-top:2px}.pe-session__body{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.2}.pe-session__weekday{font-size:13px;font-weight:600;color:var(--text-primary, #f9fafb)}.pe-session__time{font-size:12px;color:var(--text-tertiary, #9ca3af)}.pe-session__index{font-size:12px;font-weight:600;color:var(--text-tertiary, #6b7280);flex-shrink:0}.pe-preview__empty{font-size:12px;color:var(--text-tertiary, #6b7280);font-style:italic;padding:12px 0;text-align:center}.po-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:20px;align-items:start}@media(max-width:1000px){.po-grid{grid-template-columns:1fr}}.po-col{display:flex;flex-direction:column;gap:20px;min-width:0}.po-card{background:var(--card-background);border:1px solid var(--card-border, var(--border-primary, #1f2937));border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:14px}.po-card__header{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.po-card__title{margin:0;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary, #9ca3af)}.po-card__link{font-size:13px;font-weight:600;color:var(--accent-orange, #e86a47);text-decoration:none;background:transparent;border:none;cursor:pointer;padding:0}.po-card__link:hover{color:var(--accent-orange-hover, #d65f3f)}.po-card__body{font-size:14px;color:var(--text-primary, #f9fafb);line-height:1.5;white-space:pre-wrap}.po-card__empty{font-size:13px;color:var(--text-tertiary, #9ca3af);font-style:italic}.po-session{display:flex;align-items:center;gap:14px;padding:12px 14px;background:var(--surface-secondary, #111827);border:1px solid var(--border-primary, #1f2937);border-radius:10px}.po-session__date{width:44px;flex-shrink:0;text-align:center;background:var(--chip-orange-bg, rgba(232, 106, 71, .18));color:var(--accent-orange, #e86a47);border-radius:6px;padding:5px 0 6px;line-height:1}.po-session__date-month{font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.po-session__date-day{font-size:17px;font-weight:700;margin-top:2px}.po-session__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.po-session__title{font-size:14px;font-weight:600;color:var(--text-primary, #f9fafb)}.po-session__sub{font-size:12px;color:var(--text-tertiary, #9ca3af)}.po-status{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;flex-shrink:0}.po-status--ready{background:#22c55e2e;color:var(--success-color, #4ade80)}.po-status--scheduled{background:var(--surface-hover, #1f2937);color:var(--text-tertiary, #9ca3af)}.po-status--cancelled{background:#ef44442e;color:var(--error-text, #f87171)}.po-status--pending{background:#eab3082e;color:#fbbf24}.po-status--waitlisted{background:var(--surface-hover, #1f2937);color:var(--text-tertiary, #9ca3af)}.po-session__menu{appearance:none;background:transparent;border:none;color:var(--text-tertiary, #9ca3af);cursor:pointer;padding:4px;border-radius:4px;display:inline-flex;align-items:center}.po-session__menu:hover{color:var(--text-primary, #f9fafb)}.po-session__menu-wrap{position:relative;display:inline-flex}.po-session__menu-dropdown{position:absolute;top:calc(100% + 4px);right:0;z-index:30;min-width:180px;background:var(--card-background, #1f2937);border:1px solid var(--card-border, #374151);border-radius:8px;box-shadow:0 8px 20px #00000059;padding:4px;display:flex;flex-direction:column}.po-session__menu-item{appearance:none;background:transparent;border:none;color:var(--text-primary, #f9fafb);text-align:left;font-size:13px;padding:8px 10px;border-radius:6px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:background .2s ease}.po-session__menu-item:hover{background:var(--surface-hover, #374151)}.po-session__menu-item--danger{color:var(--error-color, #ef4444)}.po-session__menu-item--danger:hover{background:var(--error-bg, rgba(239, 68, 68, .1))}.po-quick-actions{display:flex;flex-direction:column;gap:10px}.po-action-btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 14px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;border:1px solid transparent;transition:background-color .2s ease,border-color .2s ease,color .2s ease;text-decoration:none}.po-action-btn--primary{background:var(--accent-orange, #e86a47);color:var(--text-inverse, #ffffff)}.po-action-btn--primary:hover{background:var(--accent-orange-hover, #d65f3f)}.po-action-btn--secondary{background:var(--card-background, #111827);color:var(--text-primary, #f9fafb);border-color:var(--border-primary, #374151)}.po-action-btn--secondary:hover{border-color:var(--accent-orange-hover, #d65f3f)}.po-action-btn:disabled{opacity:.5;cursor:not-allowed}.po-setting-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:6px 0;font-size:13px}.po-setting-row+.po-setting-row{border-top:1px solid var(--border-primary, #1f2937)}.po-setting-label{color:var(--text-tertiary, #9ca3af)}.po-setting-value{font-weight:600;color:var(--text-primary, #f9fafb);display:inline-flex;align-items:center;gap:6px}.po-setting-value--success{color:var(--success-color, #4ade80)}.po-setting-value--accent{color:var(--accent-orange, #e86a47)}.po-setting-value--muted{color:var(--text-tertiary, #9ca3af)}.po-setting-dot{width:7px;height:7px;border-radius:50%;background:currentColor;display:inline-block}.po-participants{display:flex;flex-direction:column;gap:16px;margin-top:8px}.po-participants__header{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.po-participants__title{margin:0;font-size:22px;font-weight:700;color:var(--text-primary, #f9fafb)}.po-participants__controls{display:inline-flex;align-items:center;gap:12px;flex-wrap:wrap}.po-participants__search{display:inline-flex;align-items:center;gap:6px;background:var(--surface-secondary, #111827);border:1px solid var(--border-primary, #374151);border-radius:8px;padding:6px 12px;min-width:220px;color:var(--text-tertiary, #9ca3af)}.po-participants__search input{appearance:none;background:transparent;border:none;outline:none;flex:1;min-width:0;color:var(--text-primary, #f9fafb);font-size:13px;padding:0}.po-participants__search input::placeholder{color:var(--text-tertiary, #6b7280)}.po-subtabs{display:inline-flex;background:var(--surface-secondary, #111827);border:1px solid var(--border-primary, #374151);border-radius:8px;padding:3px;gap:2px}.po-subtab{appearance:none;background:transparent;border:none;padding:6px 14px;border-radius:6px;font-size:13px;font-weight:600;color:var(--text-tertiary, #9ca3af);cursor:pointer}.po-subtab:hover{color:var(--text-primary, #f9fafb)}.po-subtab.is-active{background:var(--card-background);color:var(--text-primary, #f9fafb)}.po-empty-state{background:var(--card-background);border:1px solid var(--card-border, var(--border-primary, #1f2937));border-radius:14px;padding:56px 32px;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.po-empty-state__icon{width:56px;height:56px;border-radius:50%;background:var(--surface-secondary, #111827);display:inline-flex;align-items:center;justify-content:center;color:var(--text-tertiary, #6b7280);margin-bottom:4px}.po-empty-state__title{font-size:18px;font-weight:700;color:var(--text-primary, #f9fafb);margin:0}.po-empty-state__desc{font-size:13px;color:var(--text-tertiary, #9ca3af);margin:0;max-width:380px;line-height:1.5}.po-empty-state__cta{margin-top:8px}.po-table-section{display:flex;flex-direction:column;gap:10px;margin-top:8px}.po-table-section__title{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary, #9ca3af);margin:0}.po-table-section__empty{background:var(--card-background);border:1px solid var(--card-border, var(--border-primary, #1f2937));border-radius:12px;padding:32px 20px;font-size:13px;color:var(--text-tertiary, #9ca3af);text-align:center}.po-table{width:100%;border-collapse:collapse;background:var(--card-background);border:1px solid var(--card-border, var(--border-primary, #1f2937));border-radius:12px;overflow:hidden}.po-table thead th{text-align:left;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary, #9ca3af);padding:14px 18px;border-bottom:1px solid var(--border-primary, #1f2937);background:transparent}.po-table tbody td{padding:14px 18px;border-bottom:1px solid var(--border-primary, #1f2937);font-size:13px;color:var(--text-primary, #f9fafb);vertical-align:middle}.po-table tbody tr:last-child td{border-bottom:none}.po-table__client{display:flex;align-items:center;gap:12px}.po-table__avatar{width:32px;height:32px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;letter-spacing:.05em;color:var(--text-inverse, #ffffff);flex-shrink:0}.po-table__client-name{font-weight:600;color:var(--text-primary, #f9fafb)}.po-table__client-sub{font-size:12px;color:var(--text-tertiary, #9ca3af)}.po-table__time{color:var(--text-tertiary, #9ca3af)}.po-table__actions{display:flex;gap:6px;justify-content:flex-end}.po-pill-btn{appearance:none;border:1px solid transparent;padding:6px 14px;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer}.po-pill-btn--approve{background:#22c55e33;color:var(--success-color, #4ade80)}.po-pill-btn--approve:hover{background:#22c55e4d}.po-pill-btn--decline{background:var(--surface-secondary, #111827);color:var(--text-primary, #f9fafb);border-color:var(--border-primary, #374151)}.po-pill-btn--decline:hover{border-color:var(--accent-orange-hover, #d65f3f)}.po-pill-btn:disabled{opacity:.5;cursor:not-allowed}.po-config{display:flex;flex-direction:column;gap:14px;margin-top:8px}.po-config__heading{margin:0 0 4px;font-size:22px;font-weight:700;color:var(--text-primary, #f9fafb)}.po-config__card{background:var(--card-background);border:1px solid var(--card-border, var(--border-primary, #1f2937));border-radius:14px;padding:24px;display:flex;flex-direction:column;gap:20px}.po-config__row{display:flex;justify-content:space-between;align-items:center;gap:16px}.po-config__row-title{font-size:16px;font-weight:700;color:var(--text-primary, #f9fafb)}.po-config__row-sub{margin-top:4px;font-size:13px;color:var(--text-tertiary, #9ca3af)}.po-config__row-trailing{display:inline-flex;align-items:center;gap:12px}.po-config__state{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.po-config__state.is-on{color:var(--success-color, #4ade80)}.po-config__state.is-off{color:var(--text-tertiary, #9ca3af)}.po-config__divider{height:1px;background:var(--border-primary, #1f2937);margin:0 -24px}.po-config__link-label{font-size:15px;font-weight:700;color:var(--text-primary, #f9fafb);margin-bottom:10px}.po-config__link-controls{display:flex;gap:8px;align-items:stretch}.po-config__link-input{appearance:none;flex:1;min-width:0;background:var(--surface-secondary, #111827);border:1px solid var(--border-primary, #374151);border-radius:8px;padding:10px 12px;font-size:13px;color:var(--text-primary, #f9fafb);font-family:var(--mtd-font-mono, ui-monospace, monospace)}.po-config__link-input:focus{outline:none;border-color:var(--accent-orange, #e86a47)}.po-config__link-btn{white-space:nowrap;text-decoration:none}.po-config__link-btn.is-disabled{opacity:.5;pointer-events:none}.po-config__toggle-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 32px}@media(max-width:640px){.po-config__toggle-grid{grid-template-columns:1fr}}.po-config__toggle-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.po-config__toggle-label{font-size:14px;font-weight:600;color:var(--text-primary, #f9fafb)}.po-config__footer{background:var(--card-background);border:1px solid var(--card-border, var(--border-primary, #1f2937));border-radius:14px;padding:14px 20px;display:flex;justify-content:flex-end;align-items:center;gap:12px}.po-config__reset{appearance:none;background:transparent;border:none;color:var(--text-tertiary, #9ca3af);font-size:13px;font-weight:600;cursor:pointer;padding:8px 12px}.po-config__reset:hover{color:var(--text-primary, #f9fafb)}.po-config__reset:disabled{opacity:.5;cursor:not-allowed}.cgc-page{padding:30px 36px 60px;max-width:1280px;margin:0 auto;width:100%;box-sizing:border-box;color:var(--text-primary, #1f2937)}.cgc-page--narrow{max-width:1180px}.cgc-list__header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px;flex-wrap:wrap}.cgc-list__title{margin:0;font-size:30px;font-weight:800;letter-spacing:-.02em;color:var(--text-primary, #1f2937)}.cgc-list__subtitle{font-size:13px;color:var(--text-secondary, #6b7280);margin-top:6px}.cgc-list__subtitle strong{color:var(--accent-orange, #e86a47);font-weight:700}.cgc-list__actions{display:flex;align-items:center;gap:8px}.cgc-list__divider{width:1px;height:24px;background:var(--border-primary, #e5e7eb);margin:0 4px}.cgc-seg{appearance:none;padding:8px 14px;border-radius:8px;font-size:12px;font-weight:700;background:transparent;color:var(--text-secondary, #6b7280);border:1px solid transparent;cursor:pointer;font-family:inherit;transition:background .2s ease,color .2s ease,border-color .2s ease}.cgc-seg:hover{color:var(--text-primary, #1f2937)}.cgc-seg.is-active{background:var(--card-background, #ffffff);color:var(--text-primary, #1f2937);border-color:var(--border-primary, #e5e7eb)}.cgc-btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 15px;border-radius:10px;font-size:12.5px;font-weight:700;cursor:pointer;font-family:inherit;border:1px solid transparent;transition:background .2s ease,border-color .2s ease,color .2s ease;text-decoration:none;line-height:1.2}.cgc-btn--sm{padding:6px 11px;font-size:11.5px;gap:6px}.cgc-btn--lg{padding:12px 20px;font-size:14px;gap:8px}.cgc-btn--primary{background:var(--accent-orange, #e86a47);color:#fff;border-color:transparent}.cgc-btn--primary:hover{background:var(--accent-orange-hover, #d65f3f)}.cgc-btn--ghost{background:transparent;color:var(--text-primary, #1f2937);border-color:var(--border-primary, #e5e7eb)}.cgc-btn--ghost:hover{background:var(--surface-hover, var(--surface-secondary, #f9fafb))}.cgc-btn--full{width:100%}.cgc-btn:disabled{opacity:.6;cursor:not-allowed}.cgc-cards{display:flex;flex-direction:column;gap:18px}.cgc-card{display:grid;grid-template-columns:260px 1fr;border-radius:18px;overflow:hidden;background:var(--card-background, #ffffff);border:1px solid var(--card-border, var(--border-primary, #e5e7eb));cursor:pointer;text-decoration:none;color:inherit;min-height:188px;transition:border-color .2s ease,transform .2s ease;position:relative}.cgc-card:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,color-mix(in srgb,var(--cgc-accent, #e86a47) 18%,transparent) 0%,color-mix(in srgb,var(--cgc-accent, #e86a47) 4%,transparent) 40%,transparent 100%);pointer-events:none;z-index:0}.cgc-card:hover{border-color:color-mix(in srgb,var(--cgc-accent, #e86a47) 60%,var(--border-primary, #e5e7eb))}.cgc-card__poster{position:relative;overflow:hidden;display:flex;align-items:flex-end;padding:18px;z-index:1;background:radial-gradient(circle at 30% 40%,color-mix(in srgb,var(--cgc-accent, #e86a47) 45%,transparent),transparent 60%),radial-gradient(circle at 80% 80%,color-mix(in srgb,var(--cgc-accent, #e86a47) 25%,transparent),transparent 60%),var(--surface-secondary, #f9fafb)}.cgc-card__glyph{position:absolute;top:50%;left:50%;transform:translate(-50%,-55%);width:110px;height:110px;border-radius:999px;background:color-mix(in srgb,var(--cgc-accent, #e86a47) 18%,transparent);display:flex;align-items:center;justify-content:center;color:var(--cgc-accent, #e86a47)}.cgc-card__tag{position:relative;z-index:1;display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;background:#0f172a9e;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-size:11px;font-weight:700;letter-spacing:.04em;color:#fff}.cgc-card__tag-dot{width:6px;height:6px;border-radius:999px;background:var(--cgc-accent, #e86a47)}.cgc-card__body{padding:20px 24px 18px;display:flex;flex-direction:column;justify-content:space-between;position:relative;z-index:1;min-width:0}.cgc-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.cgc-card__head-main{flex:1;min-width:0}.cgc-card__title{margin:0;font-size:22px;font-weight:800;letter-spacing:-.01em;color:var(--text-primary, #1f2937);line-height:1.2}.cgc-card__desc{font-size:12.5px;color:var(--text-secondary, #6b7280);margin-top:6px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cgc-card__next{text-align:right;flex:0 0 auto}.cgc-card__next-label{font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-secondary, #6b7280)}.cgc-card__next-date{font-size:17px;font-weight:800;letter-spacing:-.01em;margin-top:2px;color:var(--text-primary, #1f2937)}.cgc-card__next-sub{font-size:11px;color:var(--text-tertiary, #9ca3af);margin-top:2px}.cgc-card__meta-row{display:flex;align-items:center;gap:18px;margin-top:14px;flex-wrap:wrap;font-size:12px;color:var(--text-secondary, #6b7280)}.cgc-card__meta-row>span{display:inline-flex;align-items:center;gap:6px}.cgc-card__progress{margin-top:16px;display:flex;align-items:center;gap:6px}.cgc-card__progress-cell{flex:1;display:flex;flex-direction:column;align-items:center;gap:5px}.cgc-card__progress-bar{width:100%;height:6px;border-radius:999px;background:var(--surface-secondary, #f3f4f6)}.cgc-card__progress-bar--done{background:var(--cgc-accent, #e86a47)}.cgc-card__progress-bar--next{background:var(--cgc-accent, #e86a47);opacity:.55;box-shadow:0 0 0 2px color-mix(in srgb,var(--cgc-accent, #e86a47) 40%,transparent)}.cgc-card__progress-label{font-size:10px;font-weight:700;color:var(--text-tertiary, #9ca3af);letter-spacing:.04em}.cgc-card__progress-label--done{color:var(--text-secondary, #6b7280)}.cgc-card__progress-label--next{color:var(--cgc-accent, #e86a47)}.cgc-card__progress-summary{margin-left:14px;padding-left:14px;border-left:1px solid var(--border-primary, #e5e7eb);font-size:11.5px;flex:0 0 auto}.cgc-card__progress-summary-label{color:var(--text-tertiary, #9ca3af)}.cgc-card__progress-summary-value{color:var(--text-primary, #1f2937);font-weight:700}.cgc-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:var(--surface-secondary, #f3f4f6);color:var(--text-secondary, #6b7280);border:1px solid var(--border-primary, #e5e7eb);font-size:11.5px;font-weight:600;letter-spacing:.01em;line-height:1.2}.cgc-chip--accent{background:var(--chip-orange-bg, rgba(232, 106, 71, .18));color:var(--accent-orange, #e86a47);border-color:color-mix(in srgb,var(--accent-orange, #e86a47) 30%,transparent)}.cgc-chip--blue{background:#3a8efb1f;color:#3a8efb;border-color:#3a8efb4d}.cgc-chip--green{background:#22b07a1f;color:#22b07a;border-color:#22b07a4d}.cgc-chip--purple{background:#9d6cff1f;color:#9d6cff;border-color:#9d6cff4d}.cgc-empty{padding:36px 24px;border-radius:14px;background:var(--card-background, #ffffff);border:1px dashed var(--border-primary, #e5e7eb);color:var(--text-secondary, #6b7280);text-align:center;font-size:13.5px;line-height:1.55}.cgc-empty a{color:var(--accent-orange, #e86a47);font-weight:700;text-decoration:none}.cgc-empty a:hover{text-decoration:underline}.cgc-loading{padding:36px 24px;text-align:center;color:var(--text-secondary, #6b7280);font-size:13px}.cgc-browse__search{display:flex;align-items:center;gap:8px;padding:9px 14px;border-radius:10px;background:var(--card-background, #ffffff);border:1px solid var(--border-primary, #e5e7eb);min-width:240px;flex:1;max-width:360px}.cgc-browse__search input{border:none;outline:none;background:transparent;flex:1;font-size:13px;color:var(--text-primary, #1f2937);font-family:inherit}.cgc-browse__filter-row{display:flex;align-items:center;gap:10px;margin-bottom:18px;flex-wrap:wrap}.cgc-browse__price{display:inline-flex;flex-direction:column;align-items:flex-end;gap:2px}.cgc-browse__price-amount{font-size:17px;font-weight:800;color:var(--text-primary, #1f2937);letter-spacing:-.01em}.cgc-browse__price-unit{font-size:11px;color:var(--text-tertiary, #9ca3af)}.cgc-detail__hero{background:linear-gradient(135deg,color-mix(in srgb,var(--cgc-accent, #e86a47) 22%,transparent) 0%,color-mix(in srgb,var(--cgc-accent, #e86a47) 5%,transparent) 60%,transparent 100%),var(--body-background, #f9fafb);border-bottom:1px solid var(--border-primary, #e5e7eb);padding:24px 40px 32px}.cgc-detail__hero-inner{max-width:1180px;margin:0 auto}.cgc-detail__back{display:inline-flex;align-items:center;gap:6px;color:var(--text-secondary, #6b7280);font-size:12px;font-weight:600;text-decoration:none;margin-bottom:18px;cursor:pointer;background:none;border:none;padding:0;font-family:inherit}.cgc-detail__back:hover{color:var(--text-primary, #1f2937)}.cgc-detail__hero-headline{max-width:760px}.cgc-detail__hero-chips{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}.cgc-detail__title{margin:0;font-size:42px;font-weight:800;letter-spacing:-.025em;line-height:1.05;color:var(--text-primary, #1f2937)}.cgc-detail__lede{margin:14px 0 0;font-size:14.5px;color:var(--text-secondary, #6b7280);line-height:1.6;white-space:pre-wrap}.cgc-detail__hero-meta{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:18px;font-size:12.5px;color:var(--text-secondary, #6b7280)}.cgc-detail__hero-meta>span{display:inline-flex;align-items:center;gap:7px}.cgc-detail__body{padding:28px 40px 60px;max-width:1180px;margin:0 auto}.cgc-detail__grid{display:grid;grid-template-columns:1fr 340px;gap:28px;align-items:flex-start}.cgc-detail__grid--enrolled{grid-template-columns:1fr 320px}.cgc-meta-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:28px}.cgc-meta-tile{padding:12px 14px;border-radius:12px;background:var(--card-background, #ffffff);border:1px solid var(--border-primary, #e5e7eb)}.cgc-meta-tile__label{display:flex;align-items:center;gap:6px;font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-secondary, #6b7280)}.cgc-meta-tile__label svg{color:var(--text-tertiary, #9ca3af)}.cgc-meta-tile__value{font-size:13.5px;font-weight:700;margin-top:6px;color:var(--text-primary, #1f2937)}.cgc-section-label{display:flex;align-items:center;gap:8px;margin-bottom:12px}.cgc-section-label__text{flex:1;display:flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-secondary, #6b7280)}.cgc-section-label--small .cgc-section-label__text{font-size:10.5px}.cgc-section-label__right{font-size:11px;color:var(--text-tertiary, #9ca3af)}.cgc-timeline{position:relative;padding-left:30px}.cgc-timeline__rail{position:absolute;left:11px;top:8px;bottom:8px;width:2px;background:var(--border-primary, #e5e7eb)}.cgc-timeline__row{position:relative;padding-bottom:14px}.cgc-timeline__row:last-child{padding-bottom:0}.cgc-timeline__dot{position:absolute;left:-30px;top:6px;width:24px;height:24px;border-radius:999px;background:var(--body-background, #ffffff);border:2px solid var(--border-primary, #e5e7eb);display:inline-flex;align-items:center;justify-content:center;color:var(--text-secondary, #6b7280);font-size:11px;font-weight:700;box-sizing:border-box}.cgc-timeline__dot--done{background:var(--surface-secondary, #f3f4f6);color:var(--text-secondary, #6b7280)}.cgc-timeline__dot--next{background:var(--accent-orange, #e86a47);border-color:var(--accent-orange, #e86a47);color:#fff}.cgc-timeline__card{padding:12px 16px;border-radius:10px;border:1px solid var(--border-primary, #e5e7eb);display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px}.cgc-timeline__card--browse{display:block}.cgc-timeline__card--next{background:color-mix(in srgb,var(--accent-orange, #e86a47) 8%,transparent);border-color:color-mix(in srgb,var(--accent-orange, #e86a47) 35%,transparent)}.cgc-timeline__card-title{font-size:13.5px;font-weight:700;color:var(--text-primary, #1f2937);line-height:1.3}.cgc-timeline__card-title--done{color:var(--text-secondary, #6b7280);text-decoration:line-through;text-decoration-color:var(--border-primary, #e5e7eb)}.cgc-timeline__card-sub{font-size:11.5px;color:var(--text-tertiary, #9ca3af);margin-top:3px}.cgc-timeline__status{font-size:11px;font-weight:600;color:var(--text-tertiary, #9ca3af)}.cgc-progress-strip{padding:18px 22px;border-radius:14px;background:var(--card-background, #ffffff);border:1px solid var(--border-primary, #e5e7eb);display:grid;grid-template-columns:1fr auto;align-items:center;gap:18px;margin-bottom:28px}.cgc-progress-strip__head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:8px}.cgc-progress-strip__label{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary, #6b7280)}.cgc-progress-strip__value{font-size:12px;font-weight:700;color:var(--text-primary, #1f2937)}.cgc-progress-bar{width:100%;height:8px;background:var(--surface-secondary, #f3f4f6);border-radius:999px;overflow:hidden}.cgc-progress-bar__fill{height:100%;background:var(--accent-orange, #e86a47);border-radius:999px;transition:width .3s ease}.cgc-progress-strip__next{padding-left:22px;border-left:1px solid var(--border-primary, #e5e7eb)}.cgc-progress-strip__next-label{font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-orange, #e86a47);margin-bottom:4px}.cgc-progress-strip__next-value{font-size:13px;font-weight:700;color:var(--text-primary, #1f2937)}.cgc-side{display:flex;flex-direction:column;gap:16px;position:sticky;top:30px}.cgc-panel{padding:18px;border-radius:14px;background:var(--card-background, #ffffff);border:1px solid var(--border-primary, #e5e7eb)}.cgc-panel--dashed{background:transparent;border-style:dashed;padding:14px 18px}.cgc-panel__strong{font-size:13.5px;font-weight:700;margin-top:4px;color:var(--text-primary, #1f2937)}.cgc-panel__sub{font-size:12px;color:var(--text-secondary, #6b7280);margin-top:2px;line-height:1.5}.cgc-panel a{color:var(--accent-orange, #e86a47);font-weight:700;text-decoration:none}.cgc-panel a:hover{text-decoration:underline}.cgc-trainer-row{display:flex;align-items:center;gap:12px;margin-top:8px}.cgc-avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--accent-orange, #e86a47);color:#fff;font-weight:800;flex:0 0 auto}.cgc-bring-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.cgc-bring-grid__item{display:flex;align-items:center;gap:9px;padding:10px 14px;border-radius:10px;background:var(--card-background, #ffffff);border:1px solid var(--border-primary, #e5e7eb);font-size:12.5px;color:var(--text-primary, #1f2937)}.cgc-bring-grid__item svg{color:var(--accent-orange, #e86a47);flex:0 0 auto}.cgc-refund{padding:14px 18px;border-radius:12px;background:var(--warm-tint-bg, rgba(232, 106, 71, .08));border:1px solid var(--warm-tint-border, rgba(232, 106, 71, .2));display:flex;gap:12px}.cgc-refund svg{color:var(--accent-orange, #e86a47);flex:0 0 auto;margin-top:1px}.cgc-refund__text{font-size:12.5px;color:var(--text-secondary, #6b7280);line-height:1.55}.cgc-refund__text strong{color:var(--text-primary, #1f2937)}.cgc-enroll{border-radius:16px;background:var(--card-background, #ffffff);border:1px solid var(--border-primary, #e5e7eb);overflow:hidden}.cgc-enroll__head{padding:20px 22px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.cgc-enroll__head-label{font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text-secondary, #6b7280)}.cgc-enroll__price-row{display:flex;align-items:baseline;gap:8px;margin-top:6px}.cgc-enroll__price{font-size:34px;font-weight:800;letter-spacing:-.02em;color:var(--text-primary, #1f2937)}.cgc-enroll__price-sub{font-size:12px;color:var(--text-tertiary, #9ca3af)}.cgc-enroll__body{padding:18px 22px;display:flex;flex-direction:column;gap:14px}.cgc-enroll__capacity{display:flex;justify-content:space-between;margin-bottom:6px;font-size:11.5px}.cgc-enroll__capacity-left{color:var(--text-secondary, #6b7280)}.cgc-enroll__capacity-right{color:var(--text-primary, #1f2937);font-weight:600}.cgc-enroll__capacity-bar{width:100%;height:6px;background:var(--surface-secondary, #f3f4f6);border-radius:999px;overflow:hidden}.cgc-enroll__waitlist{font-size:11px;color:var(--text-tertiary, #9ca3af);margin-top:6px}.cgc-enroll__field-label{display:block;font-size:11px;font-weight:700;color:var(--text-secondary, #6b7280);letter-spacing:.06em;text-transform:uppercase;margin-bottom:6px}.cgc-enroll__field-label-aside{color:var(--text-tertiary, #9ca3af);font-weight:500;text-transform:none;letter-spacing:0}.cgc-enroll__promo{display:flex;gap:6px}.cgc-enroll__promo input{flex:1;padding:10px 12px;border-radius:9px;background:var(--input-bg, #ffffff);border:1px solid var(--border-primary, #e5e7eb);color:var(--text-primary, #1f2937);font-size:13px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;outline:none;text-transform:uppercase}.cgc-enroll__promo input::placeholder{text-transform:none;font-family:inherit;color:var(--text-tertiary, #9ca3af)}.cgc-enroll__fine{font-size:11px;color:var(--text-tertiary, #9ca3af);text-align:center}.cgc-enroll__trainer{padding:14px 22px;border-top:1px solid var(--border-primary, #e5e7eb);background:var(--body-background, #fafafa)}.cgc-enroll__trainer-label{font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary, #6b7280);margin-bottom:8px}.cgc-enroll__banner{padding:12px 14px;border-radius:10px;background:var(--chip-orange-bg, rgba(232, 106, 71, .12));border:1px solid color-mix(in srgb,var(--accent-orange, #e86a47) 30%,transparent);font-size:12.5px;color:var(--text-primary, #1f2937);line-height:1.5}.cgc-picker{display:flex;flex-direction:column;gap:6px}.cgc-picker__row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:10px;background:var(--card-background, #ffffff);border:1px solid var(--border-primary, #e5e7eb);cursor:pointer;font-family:inherit;text-align:left;color:inherit}.cgc-picker__row:hover{border-color:var(--accent-orange, #e86a47)}.cgc-picker__row-meta{font-size:11.5px;color:var(--text-tertiary, #9ca3af);margin-top:2px}.cgc-picker__row-cta{font-size:12px;color:var(--accent-orange, #e86a47);font-weight:700}.cgc-confirm{padding:16px;border-radius:12px;background:var(--surface-secondary, #f3f4f6);border:1px solid var(--border-primary, #e5e7eb)}.cgc-confirm__title{margin:0 0 8px;font-size:14px;font-weight:700;color:var(--text-primary, #1f2937)}.cgc-confirm__body{font-size:13px;color:var(--text-secondary, #6b7280);line-height:1.55;margin:0 0 12px}.cgc-confirm__body strong{color:var(--text-primary, #1f2937)}.cgc-confirm__actions{display:flex;justify-content:flex-end;gap:8px}.cgc-about{margin-bottom:28px}.cgc-about__body{margin:0;font-size:14px;line-height:1.6;color:var(--text-primary, #1f2937);white-space:pre-wrap}.cgc-skel{position:relative;overflow:hidden;background:var(--surface-secondary, #f3f4f6);border-radius:8px}.cgc-skel:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--card-background, #ffffff) 70%,transparent),transparent);animation:cgcShimmer 1.4s ease-in-out infinite}@keyframes cgcShimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.cgc-skel--card{height:188px;border-radius:18px}@media(max-width:900px){.cgc-page{padding:20px 18px 80px}.cgc-list__header{align-items:flex-start}.cgc-list__title{font-size:24px}.cgc-card{grid-template-columns:1fr;min-height:0}.cgc-card__poster{height:92px;padding:12px 16px;align-items:center;justify-content:space-between}.cgc-card__glyph{position:relative;top:auto;left:auto;transform:none;width:60px;height:60px}.cgc-card__body{padding:14px 16px 16px}.cgc-card__title{font-size:17px}.cgc-card__next-date{font-size:14px}.cgc-card__meta-row{gap:12px;font-size:11.5px}.cgc-detail__hero{padding:16px 18px 22px}.cgc-detail__title{font-size:26px;line-height:1.1}.cgc-detail__lede{font-size:13px}.cgc-detail__hero-meta{gap:12px;font-size:11.5px}.cgc-detail__body{padding:18px 18px 100px}.cgc-detail__grid,.cgc-detail__grid--enrolled{grid-template-columns:1fr;gap:18px}.cgc-side{position:static}.cgc-meta-strip{grid-template-columns:repeat(2,1fr)}.cgc-bring-grid{grid-template-columns:1fr}.cgc-progress-strip{grid-template-columns:1fr;gap:12px}.cgc-progress-strip__next{padding-left:0;border-left:none;padding-top:12px;border-top:1px solid var(--border-primary, #e5e7eb)}}.cgc-mobile-enroll-bar{display:none}@media(max-width:900px){.cgc-mobile-enroll-bar{display:block;position:fixed;left:0;right:0;bottom:calc(56px + env(safe-area-inset-bottom,0px));padding:12px 16px 14px;background:var(--card-background, #ffffff);border-top:1px solid var(--border-primary, #e5e7eb);box-shadow:0 -8px 24px #0000001f;z-index:60}.cgc-mobile-enroll-bar__row{display:flex;gap:8px;align-items:center;margin-top:10px}.cgc-mobile-enroll-bar__row input{flex:1;padding:10px 12px;border-radius:10px;background:var(--input-bg, #ffffff);border:1px solid var(--border-primary, #e5e7eb);color:var(--text-primary, #1f2937);font-size:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;outline:none;text-transform:uppercase}.cgc-mobile-enroll-bar__row input::placeholder{text-transform:none;font-family:inherit;color:var(--text-tertiary, #9ca3af)}.cgc-mobile-enroll-bar__price{font-size:19px;font-weight:800;letter-spacing:-.01em;color:var(--text-primary, #1f2937)}.cgc-enroll--hide-on-mobile{display:none}}.pgc-root{min-height:100vh;background:var(--body-background, #f5f0e8);color:var(--text-primary, #1f2937);display:flex;flex-direction:column}.pgc-nav{display:flex;align-items:center;gap:18px;padding:14px 32px;border-bottom:1px solid var(--border-primary, #e5e7eb);background:var(--body-background, #f5f0e8);position:sticky;top:0;z-index:10}.pgc-nav__brand{display:flex;align-items:center;gap:10px}.pgc-nav__logo{width:34px;height:34px;border-radius:9px;background:var(--accent-orange, #e86a47);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;letter-spacing:-.01em;flex:0 0 auto}.pgc-nav__brand-name{font-size:14px;font-weight:800;letter-spacing:-.005em;color:var(--text-primary, #1f2937);line-height:1.15}.pgc-nav__brand-sub{font-size:10.5px;color:var(--text-tertiary, #9ca3af);margin-top:1px;line-height:1.15}.pgc-nav__center{flex:1;display:flex;justify-content:center;gap:4px}.pgc-nav__link{padding:8px 14px;border-radius:8px;font-size:12.5px;font-weight:700;color:var(--text-primary, #1f2937);background:var(--card-background, #ffffff);border:1px solid var(--border-primary, #e5e7eb);text-decoration:none;cursor:default}.pgc-nav__signin{font-size:12.5px;font-weight:700;color:var(--accent-orange, #e86a47);text-decoration:none;padding:8px 12px;border-radius:8px;border:1px solid transparent}.pgc-nav__signin:hover{background:var(--chip-orange-bg, rgba(232, 106, 71, .12))}.pgc-main{flex:1}.pgc-page{padding:34px 40px 56px;max-width:1280px;margin:0 auto;width:100%;box-sizing:border-box}.pgc-page--narrow{max-width:1180px}.pgc-eyebrow{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-orange, #e86a47);margin-bottom:8px}.pgc-h1{margin:0;font-size:38px;font-weight:800;letter-spacing:-.025em;line-height:1.05;color:var(--text-primary, #1f2937)}.pgc-tagline{margin:10px 0 0;font-size:14px;color:var(--text-secondary, #6b7280);max-width:620px;line-height:1.55}.pgc-catalog__header{margin-bottom:22px}.pgc-filter-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 16px;border-radius:12px;background:var(--card-background, #ffffff);border:1px solid var(--border-primary, #e5e7eb);margin-bottom:22px}.pgc-filter-bar__label{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-tertiary, #9ca3af);margin-right:4px}.pgc-filter-bar__count{font-size:11.5px;color:var(--text-tertiary, #9ca3af);margin-left:auto}.pgc-chip-btn{appearance:none;padding:6px 12px;border-radius:999px;background:transparent;color:var(--text-secondary, #6b7280);border:1px solid var(--border-primary, #e5e7eb);font-size:11.5px;font-weight:700;cursor:pointer;font-family:inherit;display:inline-flex;align-items:center;gap:5px;transition:background .2s ease,color .2s ease,border-color .2s ease}.pgc-chip-btn:hover{color:var(--text-primary, #1f2937)}.pgc-chip-btn.is-active{background:var(--chip-orange-bg, rgba(232, 106, 71, .18));color:var(--accent-orange, #e86a47);border-color:transparent}.pgc-filter-bar__divider{width:1px;height:18px;background:var(--border-primary, #e5e7eb);margin:0 4px}.pgc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.pgc-card{border-radius:16px;overflow:hidden;background:var(--card-background, #ffffff);border:1px solid color-mix(in srgb,var(--pgc-accent, var(--accent-orange, #e86a47)) 28%,var(--border-primary, #e5e7eb));text-decoration:none;color:inherit;display:flex;flex-direction:column;transition:transform .2s ease,border-color .2s ease;position:relative}.pgc-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,color-mix(in srgb,var(--pgc-accent, var(--accent-orange, #e86a47)) 14%,transparent) 0%,color-mix(in srgb,var(--pgc-accent, var(--accent-orange, #e86a47)) 3%,transparent) 60%,transparent 100%);pointer-events:none;z-index:0}.pgc-card:hover{border-color:var(--pgc-accent, var(--accent-orange, #e86a47));transform:translateY(-1px)}.pgc-card__poster{height:124px;position:relative;overflow:hidden;background:radial-gradient(circle at 30% 40%,color-mix(in srgb,var(--pgc-accent, var(--accent-orange, #e86a47)) 45%,transparent),transparent 60%),radial-gradient(circle at 80% 80%,color-mix(in srgb,var(--pgc-accent, var(--accent-orange, #e86a47)) 22%,transparent),transparent 60%),var(--surface-secondary, #f9fafb);display:flex;align-items:flex-start;justify-content:space-between;padding:14px;z-index:1}.pgc-card__type-pill{padding:5px 10px;border-radius:999px;background:#0f172a9e;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-size:10.5px;font-weight:700;letter-spacing:.04em;color:#fff;display:inline-flex;align-items:center;gap:6px}.pgc-card__type-dot{width:6px;height:6px;border-radius:999px;background:var(--pgc-accent, var(--accent-orange, #e86a47))}.pgc-card__poster-date{text-align:right}.pgc-card__poster-date-label{font-size:9.5px;font-weight:700;letter-spacing:.14em;color:var(--text-secondary, #6b7280);text-transform:uppercase}.pgc-card__poster-date-value{font-size:16px;font-weight:800;margin-top:2px;letter-spacing:-.01em;color:var(--text-primary, #1f2937)}.pgc-card__glyph{position:absolute;left:50%;top:50%;transform:translate(-50%,-45%);width:64px;height:64px;border-radius:999px;background:color-mix(in srgb,var(--pgc-accent, var(--accent-orange, #e86a47)) 20%,transparent);color:var(--pgc-accent, var(--accent-orange, #e86a47));display:inline-flex;align-items:center;justify-content:center}.pgc-card__body{padding:14px 16px 16px;position:relative;z-index:1;display:flex;flex-direction:column;flex:1}.pgc-card__title{margin:0;font-size:16px;font-weight:800;letter-spacing:-.01em;color:var(--text-primary, #1f2937);line-height:1.25}.pgc-card__desc{font-size:11.5px;color:var(--text-secondary, #6b7280);margin-top:4px;line-height:1.45;min-height:32px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pgc-card__meta{display:flex;align-items:center;gap:12px;margin-top:12px;font-size:11px;color:var(--text-tertiary, #9ca3af);flex-wrap:wrap}.pgc-card__meta>span{display:inline-flex;align-items:center;gap:5px}.pgc-card__footer{display:flex;align-items:center;justify-content:space-between;margin-top:14px;padding-top:12px;border-top:1px solid var(--border-primary, #e5e7eb)}.pgc-card__price{font-size:11.5px;color:var(--text-primary, #1f2937);margin-top:6px;font-weight:700}.pgc-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:var(--surface-secondary, #f3f4f6);color:var(--text-secondary, #6b7280);border:1px solid var(--border-primary, #e5e7eb);font-size:11.5px;font-weight:600;letter-spacing:.01em;line-height:1.2}.pgc-chip--accent{background:var(--chip-orange-bg, rgba(232, 106, 71, .18));color:var(--accent-orange, #e86a47);border-color:color-mix(in srgb,var(--accent-orange, #e86a47) 30%,transparent)}.pgc-chip--blue{background:#3a8efb1f;color:#3a8efb;border-color:#3a8efb4d}.pgc-btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:8px 14px;border-radius:10px;font-size:12.5px;font-weight:700;cursor:pointer;font-family:inherit;border:1px solid transparent;transition:background .2s ease,border-color .2s ease,color .2s ease;text-decoration:none;line-height:1.2}.pgc-btn--sm{padding:6px 11px;font-size:11.5px}.pgc-btn--lg{padding:12px 20px;font-size:14px;gap:8px}.pgc-btn--primary{background:var(--accent-orange, #e86a47);color:#fff}.pgc-btn--primary:hover{background:var(--accent-orange-hover, #d65f3f)}.pgc-btn--outline{background:transparent;color:var(--accent-orange, #e86a47);border-color:var(--accent-orange, #e86a47)}.pgc-btn--ghost{background:transparent;color:var(--text-primary, #1f2937);border-color:var(--border-primary, #e5e7eb)}.pgc-btn:disabled{opacity:.6;cursor:not-allowed}.pgc-btn--full{width:100%}.pgc-empty{padding:36px 24px;border-radius:14px;background:var(--card-background, #ffffff);border:1px dashed var(--border-primary, #e5e7eb);color:var(--text-secondary, #6b7280);text-align:center;font-size:13.5px;line-height:1.55}.pgc-empty--error{border-color:color-mix(in srgb,var(--error-color, #ef4444) 50%,transparent);background:color-mix(in srgb,var(--error-color, #ef4444) 8%,var(--card-background, #ffffff));color:var(--error-color, #ef4444)}.pgc-skel{position:relative;overflow:hidden;background:var(--surface-secondary, #f3f4f6);border-radius:8px}.pgc-skel:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--card-background, #ffffff) 70%,transparent),transparent);animation:pgcShimmer 1.4s ease-in-out infinite}@keyframes pgcShimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.pgc-skel--card{height:286px;border-radius:16px}.pgc-detail__hero{background:linear-gradient(135deg,color-mix(in srgb,var(--pgc-accent, var(--accent-orange, #e86a47)) 22%,transparent) 0%,color-mix(in srgb,var(--pgc-accent, var(--accent-orange, #e86a47)) 5%,transparent) 60%,transparent 100%),var(--body-background, #f5f0e8);border-bottom:1px solid var(--border-primary, #e5e7eb);padding:24px 40px 32px}.pgc-detail__hero-inner{max-width:1180px;margin:0 auto}.pgc-detail__back{display:inline-flex;align-items:center;gap:6px;background:none;border:none;padding:0;margin:0 0 18px;color:var(--text-secondary, #6b7280);font-size:12px;font-weight:600;text-decoration:none;cursor:pointer;font-family:inherit}.pgc-detail__back:hover{color:var(--text-primary, #1f2937)}.pgc-detail__hero-headline{max-width:760px}.pgc-detail__chips{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}.pgc-detail__title{margin:0;font-size:42px;font-weight:800;letter-spacing:-.025em;line-height:1.05;color:var(--text-primary, #1f2937)}.pgc-detail__lede{margin:14px 0 0;font-size:14.5px;color:var(--text-secondary, #6b7280);line-height:1.6;white-space:pre-wrap}.pgc-detail__hero-meta{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:18px;font-size:12.5px;color:var(--text-secondary, #6b7280)}.pgc-detail__hero-meta>span{display:inline-flex;align-items:center;gap:7px}.pgc-detail__body{padding:28px 40px 60px;max-width:1180px;margin:0 auto}.pgc-detail__grid{display:grid;grid-template-columns:1fr 360px;gap:28px;align-items:flex-start}.pgc-meta-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:28px}.pgc-meta-tile{padding:12px 14px;border-radius:12px;background:var(--card-background, #ffffff);border:1px solid var(--border-primary, #e5e7eb)}.pgc-meta-tile__label{display:flex;align-items:center;gap:6px;font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-secondary, #6b7280)}.pgc-meta-tile__label svg{color:var(--text-tertiary, #9ca3af)}.pgc-meta-tile__value{font-size:13.5px;font-weight:700;margin-top:6px;color:var(--text-primary, #1f2937)}.pgc-section-label{display:flex;align-items:center;gap:8px;margin-bottom:12px}.pgc-section-label__text{flex:1;font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-secondary, #6b7280)}.pgc-section-label__right{font-size:11px;color:var(--text-tertiary, #9ca3af)}.pgc-timeline{position:relative;padding-left:30px;margin-bottom:28px}.pgc-timeline__rail{position:absolute;left:11px;top:8px;bottom:8px;width:2px;background:var(--border-primary, #e5e7eb)}.pgc-timeline__row{position:relative;padding-bottom:14px}.pgc-timeline__row:last-child{padding-bottom:0}.pgc-timeline__dot{position:absolute;left:-30px;top:6px;width:24px;height:24px;border-radius:999px;background:var(--body-background, #ffffff);border:2px solid var(--border-primary, #e5e7eb);display:inline-flex;align-items:center;justify-content:center;color:var(--text-secondary, #6b7280);font-size:11px;font-weight:700;box-sizing:border-box}.pgc-timeline__card{padding:10px 14px;border-radius:10px;border:1px solid var(--border-primary, #e5e7eb)}.pgc-timeline__card-title{font-size:13px;font-weight:700;color:var(--text-primary, #1f2937)}.pgc-timeline__card-sub{font-size:11.5px;color:var(--text-tertiary, #9ca3af);margin-top:2px}.pgc-refund{padding:14px 18px;border-radius:12px;background:var(--warm-tint-bg, rgba(232, 106, 71, .08));border:1px solid var(--warm-tint-border, rgba(232, 106, 71, .2));display:flex;gap:12px}.pgc-refund svg{color:var(--accent-orange, #e86a47);flex:0 0 auto;margin-top:1px}.pgc-refund__text{font-size:12.5px;color:var(--text-secondary, #6b7280);line-height:1.55}.pgc-refund__text strong{color:var(--text-primary, #1f2937)}.pgc-request{border-radius:16px;background:var(--card-background, #ffffff);border:1px solid var(--border-primary, #e5e7eb);overflow:hidden;position:sticky;top:88px}.pgc-request__head{padding:20px 22px;border-bottom:1px solid var(--border-primary, #e5e7eb)}.pgc-request__head-label{font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-orange, #e86a47)}.pgc-request__price-row{display:flex;align-items:baseline;gap:8px;margin-top:6px}.pgc-request__price{font-size:28px;font-weight:800;letter-spacing:-.02em;color:var(--text-primary, #1f2937)}.pgc-request__price-sub{font-size:12px;color:var(--text-tertiary, #9ca3af)}.pgc-request__blurb{font-size:12px;color:var(--text-secondary, #6b7280);margin-top:10px;line-height:1.5}.pgc-request__body{padding:18px 22px;display:flex;flex-direction:column;gap:14px}.pgc-field__label{display:block;font-size:10.5px;font-weight:700;color:var(--text-secondary, #6b7280);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px}.pgc-field__optional{color:var(--text-tertiary, #9ca3af);margin-left:6px;font-weight:500;text-transform:none;letter-spacing:0}.pgc-field__required{color:var(--accent-orange, #e86a47);margin-left:4px}.pgc-field__input,.pgc-field__textarea{width:100%;padding:10px 12px;border-radius:9px;background:var(--input-bg, var(--card-background, #ffffff));border:1px solid var(--border-primary, #e5e7eb);color:var(--text-primary, #1f2937);font-size:13px;font-family:inherit;outline:none;box-sizing:border-box}.pgc-field__textarea{resize:vertical;line-height:1.5;min-height:84px}.pgc-field__input:focus,.pgc-field__textarea:focus{border-color:var(--accent-orange, #e86a47);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-orange, #e86a47) 15%,transparent)}.pgc-field__row{display:grid;grid-template-columns:1.4fr 1fr;gap:10px}.pgc-request__error{color:var(--error-color, #ef4444);font-size:12.5px;background:color-mix(in srgb,var(--error-color, #ef4444) 10%,transparent);border:1px solid color-mix(in srgb,var(--error-color, #ef4444) 30%,transparent);border-radius:8px;padding:8px 12px}.pgc-request__fine{font-size:11px;color:var(--text-tertiary, #9ca3af);text-align:center}.pgc-request__fine a{color:var(--accent-orange, #e86a47);font-weight:600;text-decoration:none}.pgc-request__fine a:hover{text-decoration:underline}.pgc-request__success{padding:18px 22px;display:flex;flex-direction:column;gap:10px;background:color-mix(in srgb,var(--success-color, #10b981) 6%,var(--card-background, #ffffff))}.pgc-request__success-title{font-size:14px;font-weight:800;color:var(--text-primary, #1f2937)}.pgc-request__success-body{font-size:13px;color:var(--text-secondary, #6b7280);line-height:1.55}.pgc-footer{border-top:1px solid var(--border-primary, #e5e7eb);padding:24px 40px 28px;background:var(--body-background, #f5f0e8);font-size:11.5px;color:var(--text-secondary, #6b7280)}.pgc-footer__inner{max-width:1180px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.pgc-footer__brand{display:flex;align-items:center;gap:9px}.pgc-footer__brand-name{font-size:12.5px;font-weight:700;color:var(--text-primary, #1f2937)}@media(max-width:1024px){.pgc-grid,.pgc-meta-strip{grid-template-columns:repeat(2,1fr)}.pgc-detail__grid{grid-template-columns:1fr}.pgc-request{position:static}}@media(max-width:640px){.pgc-nav{padding:12px 16px}.pgc-page{padding:22px 16px 40px}.pgc-detail__hero{padding:16px 18px 22px}.pgc-detail__title{font-size:26px;line-height:1.1}.pgc-detail__lede{font-size:13px}.pgc-detail__hero-meta{gap:12px;font-size:11.5px}.pgc-detail__body{padding:18px 18px 40px}.pgc-h1{font-size:26px}.pgc-grid{grid-template-columns:1fr}.pgc-filter-bar{overflow-x:auto;flex-wrap:nowrap;padding:10px 12px}.pgc-filter-bar__count{display:none}.pgc-footer{padding:20px 18px}.pgc-footer__inner{flex-direction:column;align-items:flex-start;gap:8px}.pgc-request__head{padding:16px 18px}.pgc-request__body{padding:14px 18px}.pgc-field__row{grid-template-columns:1fr}}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media(prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin infinite 20s linear}}.App-header{background-color:var(--bg-secondary);padding:20px;color:var(--text-primary)}.App-link{color:var(--primary-color)}@keyframes App-logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.container{max-width:1200px;margin:0 auto;padding:20px}.card{border-radius:8px;box-shadow:var(--shadow-card);padding:20px;margin:20px 0;border:1px solid rgba(255,255,255,.04);background:var(--card-background)}.button{background-color:var(--primary-color);color:#fff;border:none;padding:10px 20px;border-radius:4px;cursor:pointer;font-size:16px}.button:hover{background-color:var(--primary-hover)}.button:disabled{background-color:var(--secondary-color);cursor:not-allowed}.form-group{margin-bottom:20px}.form-label{display:block;margin-bottom:5px;font-weight:700;color:var(--text-primary)}.form-input{width:100%;padding:10px;border:1px solid var(--input-border)!important;border-radius:4px;font-size:16px;background-color:var(--input-bg);color:var(--text-primary)}.error-message{color:var(--error-color);margin-top:5px}.success-message{color:var(--success-color);margin-top:5px}.contact-bubbles{width:300px;padding:20px;border-right:1px solid var(--border-primary);background-color:var(--bg-secondary)}.contact-bubbles h3{margin:0 0 20px;font-size:18px;font-weight:600;color:var(--text-primary)}.bubbles-container{display:flex;flex-direction:column;gap:12px}.contact-bubble{display:flex;flex-direction:column;align-items:center;padding:16px;border:2px solid var(--border-primary);border-radius:12px;background-color:var(--bg-primary);cursor:pointer;transition:all .2s ease;text-align:center}.contact-bubble:hover,.contact-bubble.selected{border-color:var(--primary-color);background-color:var(--primary-light)}.bubble-name{font-weight:600;color:var(--text-primary);margin-bottom:4px}.bubble-role{font-size:12px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}
