.two-factor-modal{max-height:90vh;max-width:600px;overflow-y:auto}.two-factor-modal .modal-header{margin-bottom:var(--ethos-spacing-lg);text-align:center}.two-factor-modal .modal-header h2{color:var(--text-primary,#1f2937);font-size:24px;font-weight:600;margin:0 0 8px}.two-factor-modal .modal-subtitle{color:var(--text-muted,#6b7280);font-size:14px;margin:0}.two-factor-modal .modal-body{min-height:200px;padding:0}.two-factor-modal .modal-footer{border-top:1px solid var(--border-light,#e5e7eb);display:flex;gap:var(--ethos-panel-padding-md);justify-content:center;padding-top:var(--ethos-spacing-lg)}.two-factor-content{display:flex;flex-direction:column;gap:var(--ethos-spacing-md)}.info-box{background:var(--bg-secondary,#f9fafb);border:1px solid var(--border-light,#e5e7eb)}.info-box h3,.info-box h4{color:var(--text-primary,#1f2937);font-size:16px;font-weight:600;margin:0 0 8px}.info-box p{color:var(--text-secondary,#4b5563);font-size:14px;line-height:1.6}.info-box ul{margin:8px 0 0;padding-left:var(--ethos-spacing-md)}.info-box li{color:var(--text-secondary,#4b5563);font-size:14px;line-height:1.6;margin-bottom:var(--ethos-spacing-xs)}.setup-steps{background:var(--bg-primary,#fff);border:1px solid var(--border-light,#e5e7eb);border-radius:var(--ethos-panel-radius);padding:var(--ethos-spacing-md)}.setup-steps h3{color:var(--text-primary,#1f2937);font-size:16px;font-weight:600;margin:0 0 12px}.setup-steps ol{margin:0;padding-left:var(--ethos-spacing-md)}.setup-steps li{color:var(--text-secondary,#4b5563);font-size:14px;line-height:1.6;margin-bottom:var(--ethos-spacing-sm)}.qr-code-section{text-align:center}.qr-code-section h3{color:var(--text-primary,#1f2937);font-size:16px;font-weight:600;margin:0 0 16px}.qr-code-container{align-items:center;background:var(--bg-primary,#fff);border:2px solid var(--border-light,#e5e7eb);border-radius:var(--ethos-panel-radius);display:flex;justify-content:center;margin-bottom:var(--ethos-spacing-md);padding:var(--ethos-spacing-md)}.qr-code-image{display:block;height:auto;max-width:256px;width:100%}.manual-entry-section{background:var(--bg-secondary,#f9fafb);border:1px solid var(--border-light,#e5e7eb);border-radius:var(--ethos-panel-radius);padding:var(--ethos-spacing-md)}.manual-entry-label{color:var(--text-muted,#6b7280);font-size:13px;margin:0 0 8px}.manual-entry-key{align-items:center;display:flex;gap:var(--ethos-spacing-sm);justify-content:center}.manual-entry-key code{background:var(--bg-primary,#fff);border:1px solid var(--border-light,#e5e7eb);border-radius:var(--ethos-panel-radius-sm);color:var(--text-primary,#1f2937);font-family:Courier New,monospace;font-size:14px;font-weight:600;letter-spacing:2px;padding:8px 12px}.btn-copy{background:var(--ethos-primary,#2563eb);border:none;border-radius:var(--ethos-panel-radius-sm);color:#fff;cursor:pointer;font-size:13px;font-weight:500;padding:6px 12px;transition:all .2s ease}.btn-copy:hover{background:var(--ethos-primary-700,#1d4ed8)}.verification-section{border-top:1px solid var(--border-light,#e5e7eb);padding-top:var(--ethos-spacing-md);text-align:center}.verification-section h3{color:var(--text-primary,#1f2937);font-size:16px;font-weight:600;margin:0 0 8px}.verification-section p{color:var(--text-secondary,#4b5563);font-size:14px;margin:0 0 16px}.verification-input-group{display:flex;justify-content:center;margin-bottom:var(--ethos-spacing-md)}.verification-input{border:2px solid var(--border-medium,#d1d5db);border-radius:var(--ethos-panel-radius);font-family:Courier New,monospace;font-size:24px;font-weight:600;letter-spacing:8px;padding:12px 16px;text-align:center;transition:all .2s ease;width:180px}.verification-input:focus{border-color:var(--ethos-primary,#2563eb);box-shadow:0 0 0 3px rgba(37,99,235,.1);outline:none}.success-section{padding:var(--ethos-spacing-md);text-align:center}.success-icon{font-size:64px;margin-bottom:var(--ethos-spacing-md)}.success-section h2{color:var(--text-primary,#1f2937);font-size:20px;font-weight:600;margin:0 0 12px}.success-section p{color:var(--text-secondary,#4b5563);font-size:14px;line-height:1.6;margin:0 0 20px}.error-section{padding:var(--ethos-spacing-md);text-align:center}.error-icon{font-size:64px;margin-bottom:var(--ethos-spacing-md)}.error-section h2{color:var(--color-error,#dc2626);font-size:20px;font-weight:600;margin:0 0 12px}.error-section p{color:var(--text-secondary,#4b5563);font-size:14px;line-height:1.6;margin:0}.error-message{background:#fee2e2;border:1px solid #fca5a5;color:#991b1b;text-align:center}.loading-spinner{align-items:center;display:flex;justify-content:center;min-height:200px}.fastprax-logo-loader{animation:fadeInOut 2s ease-in-out infinite;font-size:64px;opacity:.3}.webauthn-setup-section{text-align:center}.webauthn-setup-section h3{color:var(--text-primary,#1f2937);font-size:18px;font-weight:600;margin:0 0 12px}.webauthn-setup-section p{color:var(--text-secondary,#4b5563);font-size:14px;line-height:1.6;margin:0 0 16px}.webauthn-benefits{background:var(--bg-secondary,#f9fafb);border:1px solid var(--border-light,#e5e7eb);border-radius:var(--ethos-panel-radius);margin-bottom:var(--ethos-spacing-md);padding:var(--ethos-spacing-md)}.webauthn-benefits ul{list-style:none;margin:0;padding-left:var(--ethos-spacing-md)}.webauthn-benefits li{color:var(--text-secondary,#4b5563);font-size:14px;line-height:1.6;margin-bottom:var(--ethos-spacing-sm)}.success-message{background:#d4edda;border:1px solid #28a745;border-radius:var(--ethos-panel-radius-sm);color:#155724;font-size:14px;padding:12px 16px;text-align:center}.spinner-small{animation:spin .8s linear infinite;border:2px solid hsla(0,0%,100%,.3);border-radius:50%;border-top-color:#fff;display:inline-block;height:14px;margin-right:var(--ethos-spacing-sm);width:14px}@media(max-width:640px){.two-factor-modal{max-width:95vw}.qr-code-image{max-width:200px}.verification-input{font-size:20px;letter-spacing:6px;width:160px}.two-factor-modal .modal-footer{flex-direction:column}.two-factor-modal .modal-footer button{width:100%}}.payer-directory-page{margin:0 auto;max-width:1400px;padding:24px}.payer-header{margin-bottom:32px}.payer-header h1{color:var(--text-primary,#1a202c);font-size:32px;font-weight:600;margin:0 0 8px}.payer-header p{color:var(--text-muted,#718096);font-size:16px;margin:0}.payer-filters{align-items:center;display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px}.search-container{flex:1;min-width:300px;position:relative}.search-icon{color:var(--color-disabled-text,#a0aec0);font-size:20px;left:12px;position:absolute;top:50%;transform:translateY(-50%)}.search-input{border:1px solid var(--border-light,#e2e8f0);border-radius:8px;font-size:14px;padding:12px 12px 12px 44px;transition:border-color .2s;width:100%}.search-input:focus{border-color:var(--color-ocean-blue-500,#4299e1);outline:none}.filter-buttons{display:flex;gap:8px}.filter-buttons button{background:var(--bg-primary,#fff);border:1px solid var(--border-light,#e2e8f0);border-radius:8px;color:var(--text-secondary,#4a5568);cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.filter-buttons button:hover{background:var(--bg-secondary,#f7fafc);border-color:var(--border-medium,#cbd5e0)}.filter-buttons button.active{border-color:var(--color-ocean-blue-500,#4299e1)}.add-payer-btn,.filter-buttons button.active{background:var(--color-ocean-blue-500,#4299e1);color:var(--bg-primary,#fff)}.add-payer-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 24px;transition:background-color .2s}.add-payer-btn:hover{background:var(--color-ocean-blue-600,#3182ce)}.payer-list{margin-top:24px}.payer-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.payer-card{background:var(--bg-primary,#fff);border:1px solid var(--border-light,#e2e8f0);border-radius:12px;padding:20px;transition:all .2s}.payer-card:hover{border-color:var(--border-medium,#cbd5e0);box-shadow:0 4px 12px rgba(0,0,0,.1)}.payer-card-header{align-items:flex-start;border-bottom:1px solid var(--border-light,#e2e8f0);display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:16px}.payer-name-section h3{color:var(--text-primary,#1a202c);font-size:18px;font-weight:600;margin:0 0 4px}.payer-id{color:var(--text-muted,#718096);font-family:monospace;font-size:12px}.payer-status .status-icon{font-size:24px}.payer-status .status-icon.active{color:var(--color-success,#48bb78)}.payer-status .status-icon.inactive{color:var(--color-error,#f56565)}.payer-details{margin-bottom:16px}.payer-detail-row{align-items:center;display:flex;font-size:14px;gap:8px;margin-bottom:12px}.payer-detail-row .detail-label{color:var(--text-secondary,#4a5568);font-weight:500;min-width:120px}.payer-detail-row .detail-value{color:var(--text-primary,#1a202c);flex:1}.payer-detail-row .detail-icon{color:var(--text-muted,#718096);font-size:18px}.method-badge{background:var(--bg-tertiary,#edf2f7);border-radius:6px;color:#2d3748;display:inline-block;font-size:12px;font-weight:600;padding:4px 12px}.payer-card-actions{border-top:1px solid var(--border-light,#e2e8f0);display:flex;gap:8px;padding-top:16px}.action-btn{align-items:center;background:var(--bg-primary,#fff);border:1px solid var(--border-light,#e2e8f0);border-radius:6px;color:var(--text-secondary,#4a5568);cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s}.action-btn:hover{background:var(--bg-secondary,#f7fafc);border-color:var(--border-medium,#cbd5e0)}.action-btn.edit:hover{background:#ebf8ff;border-color:var(--color-ocean-blue-500,#4299e1);color:var(--color-ocean-blue-500,#4299e1)}.action-btn.delete:hover{background:#fed7d7;border-color:var(--color-error,#f56565);color:var(--color-error,#f56565)}.empty-state{padding:60px 20px;text-align:center}.empty-state .empty-icon{color:var(--border-medium,#cbd5e0);font-size:64px;margin-bottom:16px}.empty-state h3{color:var(--text-primary,#1a202c);font-size:20px;font-weight:600;margin:0 0 8px}.empty-state p{color:var(--text-muted,#718096);font-size:14px;margin:0 0 24px}.loading-state{flex-direction:column}.loading-spinner{margin-bottom:16px}.fastprax-icon-loader{animation:pulse 2s ease-in-out infinite}.loading-text{color:var(--text-muted,#718096);font-size:16px}@media(max-width:768px){.payer-directory-page{padding:16px}.payer-grid{grid-template-columns:1fr}.payer-filters{align-items:stretch;flex-direction:column}.search-container{min-width:100%}}.payer-edit-page{margin:0 auto;max-width:1200px;padding:24px}.payer-edit-header{gap:16px;margin-bottom:32px}.back-btn,.payer-edit-header{align-items:center;display:flex}.back-btn{background:var(--bg-primary,#fff);border:1px solid var(--border-light,#e2e8f0);border-radius:8px;color:var(--text-secondary,#4a5568);cursor:pointer;font-size:14px;font-weight:500;gap:8px;padding:10px 16px;transition:all .2s}.back-btn:hover{background:var(--bg-secondary,#f7fafc);border-color:var(--border-medium,#cbd5e0)}.payer-edit-header h1{color:var(--text-primary,#1a202c);font-size:28px;font-weight:600;margin:0}.payer-edit-form{background:var(--bg-primary,#fff);border:1px solid var(--border-light,#e2e8f0);border-radius:12px;padding:32px}.form-section{border-bottom:1px solid var(--border-light,#e2e8f0);margin-bottom:40px;padding-bottom:32px}.form-section:last-of-type{border-bottom:none}.form-section h2{color:var(--text-primary,#1a202c);font-size:20px;font-weight:600;margin:0 0 16px}.section-description{color:var(--text-muted,#718096);font-size:14px;margin:0 0 20px}.form-grid{gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.form-group.checkbox-group{align-items:center;flex-direction:row}.form-group.checkbox-group label{align-items:center;color:var(--text-secondary,#4a5568);cursor:pointer;display:flex;font-size:14px;gap:8px}.form-group.checkbox-group input[type=checkbox]{cursor:pointer;height:18px;width:18px}.form-actions{border-top:1px solid var(--border-light,#e2e8f0);gap:12px;justify-content:flex-end}.btn-secondary{background:var(--bg-primary,#fff);border:1px solid var(--border-light,#e2e8f0);border-radius:8px;color:var(--text-secondary,#4a5568);font-weight:500;transition:all .2s}.btn-secondary:hover{background:var(--bg-secondary,#f7fafc);border-color:var(--border-medium,#cbd5e0)}.btn-primary{align-items:center;background:var(--color-ocean-blue-500,#4299e1);border-radius:8px;color:var(--bg-primary,#fff);display:flex;gap:8px;transition:background-color .2s}.btn-primary:hover:not(:disabled){background:var(--color-ocean-blue-600,#3182ce)}.btn-primary:disabled{opacity:.6}.loading-state{align-items:center;color:var(--text-muted,#718096);display:flex;font-size:16px;justify-content:center;padding:60px 20px}@media(max-width:768px){.payer-edit-page{padding:16px}.payer-edit-form{padding:20px}.form-grid{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.btn-primary,.btn-secondary{width:100%}}.onboarding-page{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:var(--ethos-spacing-xl,40px) var(--ethos-spacing-md,20px)}.onboarding-container{background:var(--ethos-bg-primary,var(--ethos-panel-bg-white));border-radius:var(--ethos-panel-radius-lg,16px);box-shadow:var(--ethos-shadow-xl,0 20px 60px rgba(0,0,0,.3));max-width:800px;overflow:hidden;width:100%}.onboarding-header{background:linear-gradient(135deg,var(--ethos-primary-500,#667eea) 0,var(--ethos-primary-700,#764ba2) 100%);color:var(--ethos-text-inverse,#fff);padding:var(--ethos-spacing-xl,40px);text-align:left}.onboarding-header .logo{align-items:center;display:flex;gap:var(--ethos-spacing-sm,12px);justify-content:flex-start;margin-bottom:var(--ethos-spacing-lg,24px)}.onboarding-header .logo .material-icons{align-items:center;background:var(--ethos-primary,var(--ethos-primary-600));border-radius:var(--ethos-panel-radius-sm,6px);color:var(--ethos-text-inverse,#fff);display:flex;flex-shrink:0;font-size:var(--ethos-font-size-xl,32px);height:40px;justify-content:center;width:40px}.onboarding-header .logo h1{color:var(--ethos-text-inverse,#fff);font-size:var(--ethos-font-size-2xl,28px);font-weight:var(--ethos-font-weight-bold,700);margin:0}.onboarding-header h2{color:var(--ethos-text-inverse,#fff);font-size:var(--ethos-font-size-xl,24px);font-weight:var(--ethos-font-weight-semibold,600);margin:0 0 var(--ethos-spacing-md,20px) 0}.onboarding-header .invitation-info{align-items:center;color:hsla(0,0%,100%,.95);display:flex;font-size:var(--ethos-font-size-base,15px);gap:var(--ethos-spacing-sm,8px);justify-content:flex-start;margin-bottom:var(--ethos-spacing-md,16px)}.onboarding-header .invitation-info .material-icons{font-size:var(--ethos-font-size-lg,18px);opacity:.9}.onboarding-header .invitation-info strong{color:var(--ethos-text-inverse,#fff);font-weight:var(--ethos-font-weight-semibold,600)}.onboarding-header .invitation-message{backdrop-filter:blur(10px);background:hsla(0,0%,100%,.15);border:1px solid hsla(0,0%,100%,.2);border-radius:var(--ethos-panel-radius-lg,12px);box-sizing:border-box;margin-top:var(--ethos-spacing-md,20px);padding:var(--ethos-spacing-md,20px) var(--ethos-spacing-lg,24px);width:100%}.onboarding-header .invitation-message p{color:hsla(0,0%,100%,.95);font-size:var(--ethos-font-size-base,15px);font-style:italic;line-height:var(--ethos-line-height-normal,1.5);margin:0}.progress-steps{background:var(--ethos-bg-secondary);border:var(--ethos-panel-border-width,1px) solid var(--ethos-border-light);display:flex;justify-content:space-between;padding:var(--ethos-spacing-xl,32px) var(--ethos-spacing-xl,40px)}.progress-steps .step{align-items:center;display:flex;flex:1;flex-direction:column;gap:var(--ethos-spacing-sm,8px);position:relative}.progress-steps .step:not(:last-child):after{background:var(--ethos-border-light);content:"";height:2px;left:calc(50% + 30px);position:absolute;right:calc(-50% + 30px);top:20px}.progress-steps .step.completed:not(:last-child):after{background:var(--ethos-success)}.progress-steps .step-number{align-items:center;background:var(--ethos-border-light);border-radius:50%;color:var(--ethos-text-muted);display:flex;font-size:var(--ethos-font-size-base,16px);font-weight:var(--ethos-font-weight-semibold,600);height:40px;justify-content:center;transition:var(--ethos-transition-normal,all .3s);width:40px;z-index:1}.progress-steps .step.active .step-number{background:var(--ethos-primary);box-shadow:0 0 0 4px rgba(59,130,246,.2);color:var(--ethos-text-inverse,#fff)}.progress-steps .step.completed .step-number{background:var(--ethos-success);color:var(--ethos-text-inverse,#fff)}.progress-steps .step-label{color:var(--ethos-text-muted);font-size:var(--ethos-font-size-sm,13px);font-weight:var(--ethos-font-weight-medium,500);text-align:center}.progress-steps .step.active .step-label{color:var(--ethos-text-primary);font-weight:var(--ethos-font-weight-semibold,600)}.onboarding-step{padding:var(--ethos-spacing-xl,40px)}.onboarding-step h3{color:var(--ethos-text-primary);font-size:var(--ethos-font-size-xl,24px);font-weight:var(--ethos-font-weight-bold,700);margin:0 0 var(--ethos-spacing-sm,8px) 0}.onboarding-step .step-description{color:var(--ethos-text-muted);margin-bottom:var(--ethos-spacing-xl,32px)}.form-field{margin-bottom:var(--ethos-spacing-lg,24px)}.form-field label{color:var(--ethos-text-secondary);display:block;font-size:var(--ethos-font-size-sm,14px);font-weight:var(--ethos-font-weight-semibold,600);margin-bottom:var(--ethos-spacing-sm,8px)}.form-field input,.form-field select,.form-field textarea{background:var(--ethos-bg-primary)!important;border:var(--ethos-panel-border-width,1px) solid var(--ethos-border-medium);border-radius:var(--ethos-panel-radius,8px);box-sizing:border-box;color:var(--ethos-text-primary);font-family:var(--ethos-font-family-base);font-size:var(--ethos-font-size-base,15px);padding:var(--ethos-spacing-sm,12px) var(--ethos-spacing-md,16px);transition:var(--ethos-transition-normal,all .2s);width:100%}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--ethos-primary);box-shadow:0 0 0 3px var(--ethos-primary-light);outline:none}.form-field input:disabled{background:var(--ethos-neutral-100)!important;cursor:not-allowed}.form-grid-2{grid-template-columns:repeat(2,1fr)}.form-grid-2,.form-grid-3{gap:var(--ethos-spacing-md,20px)}.form-grid-3{grid-template-columns:repeat(3,1fr)}.form-field-checkbox{margin:var(--ethos-spacing-lg,24px) 0}.form-field-checkbox label{gap:var(--ethos-spacing-sm,12px)}.form-field-checkbox input[type=checkbox]{cursor:pointer;height:20px;width:20px}.form-field-checkbox span{color:var(--ethos-text-secondary);font-size:var(--ethos-font-size-base,15px)}.consent-section{background:var(--ethos-bg-secondary);border:var(--ethos-panel-border-width,1px) solid var(--ethos-border-light);border-radius:var(--ethos-panel-radius-lg,12px);margin-bottom:var(--ethos-spacing-xl,32px);padding:var(--ethos-spacing-lg,24px)}.consent-section h4{color:var(--ethos-text-primary);font-size:var(--ethos-font-size-lg,18px);font-weight:var(--ethos-font-weight-semibold,600);margin:0 0 var(--ethos-spacing-md,16px) 0}.consent-text{background:var(--ethos-bg-primary);border:var(--ethos-panel-border-width,1px) solid var(--ethos-border-medium);border-radius:var(--ethos-panel-radius,8px);margin-bottom:var(--ethos-spacing-md,20px);max-height:200px;overflow-y:auto;padding:var(--ethos-spacing-md,20px)}.consent-text p{color:var(--ethos-text-secondary);font-size:var(--ethos-font-size-sm,14px);line-height:var(--ethos-line-height-normal,1.6);margin:0 0 var(--ethos-spacing-sm,12px) 0}.consent-text p:last-child{margin-bottom:0}.signature-section{border:var(--ethos-panel-border-width,1px) solid var(--ethos-border-light);margin-top:var(--ethos-spacing-lg,24px);padding-top:var(--ethos-spacing-lg,24px)}.signature-instructions{color:var(--ethos-text-secondary);font-size:var(--ethos-font-size-base,15px);margin-bottom:var(--ethos-spacing-md,16px)}.signature-date{color:var(--ethos-text-muted);font-size:var(--ethos-font-size-sm,14px);font-style:italic;margin-top:var(--ethos-spacing-sm,12px)}.step-actions{border:var(--ethos-panel-border-width,1px) solid var(--ethos-border-light);display:flex;gap:var(--ethos-spacing-sm,12px);justify-content:flex-end;margin-top:var(--ethos-spacing-xl,32px);padding-top:var(--ethos-spacing-lg,24px)}.btn-primary,.btn-secondary{border-radius:var(--ethos-panel-radius,8px);font-family:var(--ethos-font-family-base);font-size:var(--ethos-font-size-base,15px);font-weight:var(--ethos-font-weight-semibold,600);padding:var(--ethos-spacing-sm,12px) var(--ethos-spacing-xl,32px);transition:var(--ethos-transition-normal,all .2s)}.btn-primary{background:var(--ethos-primary);box-shadow:var(--ethos-shadow-sm,0 2px 4px rgba(59,130,246,.3));color:var(--ethos-text-inverse,#fff)}.btn-primary:hover:not(:disabled){background:var(--ethos-primary-dark);box-shadow:var(--ethos-shadow-md,0 4px 8px rgba(59,130,246,.4));transform:translateY(-1px)}.btn-primary:disabled{transform:none}.btn-secondary{background:var(--ethos-bg-primary);border:var(--ethos-panel-border-width,1px) solid var(--ethos-border-medium);color:var(--ethos-text-secondary)}.btn-secondary:hover:not(:disabled){background:var(--ethos-neutral-100)}.error-state,.loading-state{flex-direction:column;padding:var(--ethos-spacing-2xl,80px) var(--ethos-spacing-xl,40px);text-align:center}.error-state,.loading-state,.loading-state .spinner{align-items:center;display:flex;justify-content:center}.loading-state .spinner{animation:fadeInOut 2s ease-in-out infinite;height:48px;margin-bottom:var(--ethos-spacing-md,20px);width:48px}.loading-state p{color:var(--ethos-text-muted);font-size:var(--ethos-font-size-base,16px)}.error-state .material-icons{color:var(--ethos-error);font-size:64px;margin-bottom:var(--ethos-spacing-md,16px)}.error-state h2{color:var(--ethos-text-primary);font-size:var(--ethos-font-size-xl,24px);font-weight:var(--ethos-font-weight-semibold,600);margin:0 0 var(--ethos-spacing-sm,8px) 0}.error-state p{color:var(--ethos-text-muted);font-size:var(--ethos-font-size-base,16px);margin:0 0 var(--ethos-spacing-lg,24px) 0}@media(max-width:768px){.onboarding-page{padding:var(--ethos-spacing-md,20px)}.onboarding-header{padding:var(--ethos-spacing-lg,30px) var(--ethos-spacing-md,20px)}.progress-steps{padding:var(--ethos-spacing-lg,24px) var(--ethos-spacing-md,20px)}.progress-steps .step-label{font-size:var(--ethos-font-size-xs,11px)}.onboarding-step{padding:var(--ethos-spacing-lg,30px) var(--ethos-spacing-md,20px)}.form-grid-2,.form-grid-3{gap:var(--ethos-spacing-md,16px);grid-template-columns:1fr}}@media(prefers-color-scheme:dark){.form-field input,.form-field select,.form-field textarea{background:var(--ethos-bg-primary)!important;color:var(--ethos-text-primary)!important;color-scheme:light!important}.form-field input::-moz-placeholder{color:var(--ethos-text-muted)!important}.form-field input::placeholder{color:var(--ethos-text-muted)!important}}.nppes-lookup-container{background:#f0f9ff;border:1px solid var(--border-light,#bae6fd);border-radius:var(--ethos-panel-radius-sm);margin-bottom:var(--ethos-spacing-md);padding:10px 12px}.nppes-lookup-header{align-items:center;display:flex;gap:var(--ethos-spacing-xs);margin-bottom:var(--ethos-spacing-sm)}.nppes-lookup-title{color:var(--text-primary,#0c4a6e);font-size:12px;font-weight:600}.nppes-lookup-header-inline{align-items:center;display:flex;gap:var(--ethos-panel-padding-md);margin-bottom:var(--ethos-panel-padding-md)}.nppes-lookup-title-inline{color:var(--text-primary,#0c4a6e);font-size:14px;font-weight:600}.nppes-lookup-form{align-items:start;display:grid;gap:var(--ethos-spacing-sm);grid-template-columns:1fr 1fr auto}.nppes-lookup-field{min-width:0}.nppes-lookup-label{color:var(--text-secondary,#374151);display:block;font-size:11px;font-weight:500;margin-bottom:3px}.nppes-lookup-input{background:var(--bg-primary,#fff);border:1px solid var(--border-medium,#d1d5db);border-radius:var(--ethos-panel-radius-sm);box-sizing:border-box;color:var(--text-primary,#1f2937);font-family:inherit;font-size:14px;padding:6px 10px;width:100%}.nppes-lookup-button{background:#0284c7;border:none;border-radius:var(--ethos-panel-radius-sm);box-sizing:border-box;color:var(--white,#fff);cursor:pointer;font-size:13px;font-weight:500;min-height:60px;padding:12px 16px;white-space:nowrap}.nppes-lookup-button:disabled{background:#9ca3af;cursor:not-allowed}.nppes-lookup-error{background:#fee2e2;border:1px solid var(--border-light,#ef4444);border-radius:var(--ethos-panel-radius-sm);color:var(--color-error,#dc2626);font-size:11px;font-weight:500;margin-top:var(--ethos-spacing-sm);padding:6px 8px}.nppes-lookup-results{background:var(--bg-primary,#fff);border:1px solid var(--border-medium,#d1d5db);border-radius:var(--ethos-panel-radius-sm);margin-top:var(--ethos-spacing-sm);max-height:200px;overflow-y:auto}.nppes-lookup-result-item{cursor:pointer;padding:8px 10px;transition:background .15s}.nppes-lookup-result-item:not(:last-child){border-bottom:1px solid #e5e7eb}.nppes-lookup-result-item:hover{background:var(--bg-secondary,#f9fafb)}.nppes-lookup-result-name{color:var(--text-primary,#1f2937);font-size:12px;font-weight:600;margin-bottom:2px}.nppes-lookup-result-details{color:var(--text-muted,#6b7280);font-size:11px}.nppes-lookup-result-address{color:var(--text-primary,#9ca3af);font-size:11px}@media(max-width:768px){.nppes-lookup-form{gap:var(--ethos-spacing-sm);grid-template-columns:1fr}.nppes-lookup-button{font-size:14px;height:44px;padding:10px 14px;width:100%}.nppes-lookup-input{font-size:16px;height:44px}.nppes-lookup-label{font-size:12px}.nppes-lookup-container{padding:var(--ethos-panel-padding-md)}.nppes-lookup-title{font-size:13px}}.toast{align-items:flex-start;animation:slideInRight .3s ease-out;background:#fff;border-left:4px solid;border-radius:var(--ethos-panel-radius-lg);box-shadow:0 4px 16px rgba(0,0,0,.12),0 2px 6px rgba(0,0,0,.08);display:flex;gap:var(--ethos-panel-padding-md);max-width:420px;min-width:320px;padding:var(--ethos-spacing-md);position:relative}@keyframes slideInRight{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.toast-content{align-items:flex-start;display:flex;flex:1;gap:var(--ethos-panel-padding-md)}.toast-icon{flex-shrink:0;font-size:24px;margin-top:2px}.toast-text{flex:1;min-width:0}.toast-title{color:var(--ethos-neutral-800);font-size:15px;font-weight:600;margin-bottom:var(--ethos-spacing-xs)}.toast-message{color:var(--ethos-neutral-500);font-size:14px;line-height:1.5;word-wrap:break-word}.toast-close{background:none;border:none;color:#9ca3af;cursor:pointer;flex-shrink:0;padding:var(--ethos-spacing-xs);transition:color .2s}.toast-close:hover{color:#4b5563}.toast-close .material-icons{font-size:20px}.toast-success{border-left-color:var(--ethos-success)}.toast-success .toast-icon{color:var(--ethos-success)}.toast-error{border-left-color:var(--ethos-error)}.toast-error .toast-icon{color:var(--ethos-error)}.toast-warning{border-left-color:var(--ethos-warning-500)}.toast-warning .toast-icon{color:var(--ethos-warning-500)}.toast-info{border-left-color:var(--ethos-primary-500)}.toast-info .toast-icon{color:var(--ethos-primary-500)}.toast-container{display:flex;flex-direction:column;gap:var(--ethos-panel-padding-md);pointer-events:none;position:fixed;right:var(--ethos-spacing-lg);top:var(--ethos-spacing-lg);z-index:9999}.toast-container>*{pointer-events:auto}@media(max-width:768px){.toast-container{left:var(--ethos-spacing-md);max-width:calc(100vw - 32px);right:var(--ethos-spacing-md);top:var(--ethos-spacing-md)}.toast-container .toast{max-width:100%;min-width:unset}}.multi-booking-modal-content{display:flex;flex-direction:column;gap:var(--ethos-spacing-lg)}.appointments-list-section{margin-bottom:var(--ethos-spacing-lg)}.appointments-list{display:flex;flex-direction:column;gap:var(--ethos-panel-padding-md);max-height:300px;overflow-y:auto}.appointment-slot{background:#f8f9fa;border:1px solid #e5e7eb;border-radius:var(--ethos-panel-radius);gap:var(--ethos-spacing-md);padding:var(--ethos-spacing-md)}.appointment-slot,.slot-number{align-items:center;display:flex}.slot-number{background:#007aff;border-radius:50%;color:#fff;flex-shrink:0;font-weight:600;height:32px;justify-content:center;width:32px}.slot-details{flex:1}.slot-patient{font-size:16px;font-weight:600}.slot-info,.slot-patient{margin-bottom:var(--ethos-spacing-xs)}.slot-info{color:#666;font-size:14px}.slot-service{color:#333;font-size:14px}.slot-actions{display:flex;gap:var(--ethos-spacing-sm)}.edit-btn,.remove-btn{background:transparent;border:none;border-radius:var(--ethos-panel-radius-sm);cursor:pointer;font-size:16px;padding:8px 12px;transition:background .2s}.edit-btn:hover{background:#e3f2fd}.remove-btn:hover{background:#ffebee}.add-appointment-section{border-top:1px solid #e5e7eb;padding-top:var(--ethos-spacing-lg)}.form-grid{display:grid;gap:var(--ethos-spacing-md);grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:var(--ethos-spacing-md)}.form-group{display:flex;flex-direction:column;gap:var(--ethos-spacing-sm)}.form-group label{color:#333;font-size:14px;font-weight:500}.form-input{border:1px solid #d1d5db;border-radius:var(--ethos-panel-radius-sm);font-size:14px;padding:10px 12px;transition:border-color .2s}.form-input:focus{border-color:#007aff;box-shadow:0 0 0 3px rgba(0,122,255,.1);outline:none}.typeahead-container{position:relative}.typeahead-dropdown{background:#fff;border:1px solid #d1d5db;border-radius:var(--ethos-panel-radius-sm);box-shadow:0 4px 6px rgba(0,0,0,.1);left:0;margin-top:var(--ethos-spacing-xs);max-height:200px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.typeahead-item{border-bottom:1px solid #f3f4f6;cursor:pointer;padding:var(--ethos-panel-padding-md);transition:background .2s}.typeahead-item:last-child{border-bottom:none}.typeahead-item:hover{background:#f3f4f6}.typeahead-item .specialty{color:#666;font-size:12px}.btn-primary{background:#007aff;border:none;border-radius:var(--ethos-panel-radius-sm);cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:background .2s}.btn-primary:hover{background:#0056b3}.btn-primary:disabled{background:#ccc}.btn-secondary{background:#f3f4f6;border:1px solid #d1d5db;border-radius:var(--ethos-panel-radius-sm);color:#333;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:background .2s}.btn-secondary:hover{background:#e5e7eb}@media(max-width:768px){.form-grid{grid-template-columns:1fr}.appointment-slot{align-items:flex-start;flex-direction:column}.slot-actions{justify-content:flex-end;width:100%}}.marketing-page{background:#fff;color:var(--text-primary,#1f2937);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif}.marketing-header{backdrop-filter:blur(10px);background:hsla(0,0%,100%,.98);border-bottom:1px solid var(--border-light,#e5e7eb);padding:1rem 0;position:sticky;top:0;z-index:100}.marketing-container{margin:0 auto;max-width:1200px;padding:0 2rem}.marketing-header-content{align-items:center;display:flex;justify-content:space-between}.marketing-nav{align-items:center;display:flex;gap:1.5rem}.marketing-nav-link{background:none;border:none;color:var(--text-secondary,#4b5563);cursor:pointer;font-size:1rem;font-weight:500;text-decoration:none;transition:color .2s}.marketing-nav-link:hover{color:var(--color-ocean-blue-600,#2563eb)}.marketing-btn-primary{background:linear-gradient(135deg,var(--color-ocean-blue-600,#2563eb) 0,var(--color-ocean-blue-700,#1d4ed8) 100%);border:none;border-radius:8px;color:var(--bg-primary,#fff);cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:all .2s}.marketing-btn-primary:hover{box-shadow:0 10px 20px rgba(37,99,235,.3);transform:translateY(-2px)}.marketing-btn-secondary{align-items:center;background:var(--bg-primary,#fff);border:2px solid var(--color-ocean-blue-600,#2563eb);border-radius:8px;color:var(--color-ocean-blue-600,#2563eb);cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s}.marketing-btn-secondary:hover{background:#eff6ff;transform:translateY(-2px)}.marketing-btn-outline{background:transparent;border:2px solid var(--color-ocean-blue-600,#2563eb);border-radius:8px;color:var(--color-ocean-blue-600,#2563eb);cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:all .2s}.marketing-btn-outline:hover{background:#eff6ff}.marketing-btn-large{font-size:1.125rem;padding:1rem 2rem}.marketing-btn-full{justify-content:center;width:100%}.marketing-hero{background:linear-gradient(135deg,#eff6ff,#dbeafe);padding:5rem 0;text-align:center}.marketing-hero-content{margin:0 auto;max-width:900px}.marketing-hero-title{color:var(--text-primary,#111827);font-size:3.5rem;font-weight:800;line-height:1.2;margin-bottom:1.5rem}.marketing-hero-subtitle{color:var(--text-secondary,#4b5563);font-size:1.5rem;line-height:1.6;margin-bottom:2.5rem}.marketing-hero-values{display:flex;flex-direction:column;gap:1rem;margin:2.5rem auto;max-width:700px;text-align:left}.marketing-value-item{align-items:center;display:flex;font-size:1.125rem;font-weight:500;gap:.75rem}.marketing-check-icon{color:#10b981;flex-shrink:0}.marketing-hero-cta{display:flex;gap:1rem;justify-content:center;margin:2.5rem 0}.marketing-trust-text{color:#6b7280;font-style:italic;margin-top:2rem}.marketing-section{padding:5rem 0}.marketing-section-title{color:var(--text-primary,#111827);font-size:2.5rem;font-weight:800;margin-bottom:1rem;text-align:center}.marketing-section-subtitle{color:#6b7280;font-size:1.25rem;margin-bottom:3rem;text-align:center}.marketing-problem-section{background:var(--bg-secondary,#f9fafb)}.marketing-problem-grid{display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:3rem}.marketing-problem-card{background:var(--bg-primary,#fff);border-radius:12px;box-shadow:0 4px 6px rgba(0,0,0,.05);padding:2rem}.marketing-problem-icon{font-size:3rem;margin-bottom:1rem}.marketing-problem-card h3{color:var(--text-primary,#111827);font-size:1.5rem;font-weight:700;margin-bottom:1rem}.marketing-problem-list{list-style:none;padding:0}.marketing-problem-list li{color:var(--text-secondary,#4b5563);padding:.5rem 0 .5rem 1.5rem;position:relative}.marketing-problem-list li:before{color:#ef4444;content:"•";font-weight:700;left:0;position:absolute}.marketing-cost-highlight{background:var(--bg-primary,#fff);border:2px solid #fbbf24;border-radius:12px;padding:2rem;text-align:center}.marketing-cost-highlight h4{color:var(--text-primary,#111827);font-size:1.5rem;margin-bottom:1rem}.marketing-cost-items{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.marketing-cost-items span{background:#fef3c7;border-radius:8px;color:#92400e;font-weight:600;padding:.5rem 1rem}.marketing-steps{display:flex;flex-direction:column;gap:4rem}.marketing-step{background:var(--bg-primary,#fff);border:2px solid var(--border-light,#e5e7eb);border-radius:12px;box-shadow:0 4px 6px rgba(0,0,0,.05);padding:3rem}.marketing-step-badge{background:var(--color-ocean-blue-600,#2563eb);border-radius:20px;color:var(--bg-primary,#fff);display:inline-block;font-size:.875rem;font-weight:700;margin-bottom:1rem;padding:.5rem 1rem}.marketing-step-icon{font-size:3rem;margin-bottom:1rem}.marketing-step h3{color:var(--text-primary,#111827);font-size:2rem;font-weight:700;margin-bottom:1.5rem}.marketing-step-intro{color:var(--text-secondary,#4b5563);font-size:1.125rem;margin-bottom:1.5rem}.marketing-step-features{display:flex;flex-direction:column;gap:1.5rem;margin:2rem 0}.marketing-feature-group{background:var(--bg-secondary,#f9fafb);border-radius:8px;padding:1.5rem}.marketing-feature-group h4{color:var(--text-primary,#111827);font-size:1.125rem;font-weight:700;margin-bottom:1rem}.marketing-feature-item{align-items:flex-start;display:flex;gap:.75rem;padding:.5rem 0}.marketing-feature-item svg{color:#10b981;flex-shrink:0;margin-top:.25rem}.marketing-dictation-example{align-items:flex-start;background:#eff6ff;border-left:4px solid var(--color-ocean-blue-600,#2563eb);border-radius:8px;display:flex;gap:1rem;margin:1.5rem 0;padding:1.5rem}.marketing-dictation-example svg{color:var(--color-ocean-blue-600,#2563eb);flex-shrink:0}.marketing-dictation-example p{color:var(--color-ocean-blue-700,#1e40af);font-style:italic;margin:0}.marketing-before-after{background:var(--bg-secondary,#f3f4f6);border-radius:8px;margin-top:2rem;padding:1.5rem}.marketing-ba-item{border-bottom:1px solid var(--border-medium,#d1d5db);padding:.75rem 0}.marketing-ba-item:last-of-type{border-bottom:none}.marketing-ba-result{background:#dcfce7;border-radius:6px;color:#166534;font-weight:600;margin-top:1rem;padding:1rem}.marketing-features-section{background:var(--bg-secondary,#f9fafb)}.marketing-features-grid{display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.marketing-feature-card{background:var(--bg-primary,#fff);border-radius:12px;box-shadow:0 2px 4px rgba(0,0,0,.05);padding:2rem;transition:transform .2s,box-shadow .2s}.marketing-feature-card:hover{box-shadow:0 8px 16px rgba(0,0,0,.1);transform:translateY(-4px)}.marketing-feature-icon{font-size:2.5rem;margin-bottom:1rem}.marketing-feature-card h3{color:var(--text-primary,#111827);font-size:1.25rem;font-weight:700;margin-bottom:.75rem}.marketing-feature-card p{color:#6b7280;line-height:1.6}.marketing-pricing-grid{display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin:3rem 0}.marketing-pricing-card{background:var(--bg-primary,#fff);border:2px solid var(--border-light,#e5e7eb);border-radius:16px;padding:2rem;position:relative;transition:transform .2s,box-shadow .2s}.marketing-pricing-card:hover{box-shadow:0 12px 24px rgba(0,0,0,.1);transform:translateY(-4px)}.marketing-pricing-card-featured{border-color:var(--color-ocean-blue-600,#2563eb);box-shadow:0 8px 16px rgba(37,99,235,.2)}.marketing-pricing-badge{background:linear-gradient(135deg,#fbbf24,#f59e0b);border-radius:20px;color:var(--bg-primary,#fff);font-size:.875rem;font-weight:700;left:50%;padding:.5rem 1rem;position:absolute;top:-12px;transform:translateX(-50%);white-space:nowrap}.marketing-pricing-header{border-bottom:1px solid var(--border-light,#e5e7eb);margin-bottom:2rem;padding-bottom:2rem;text-align:center}.marketing-pricing-header h3{color:var(--text-primary,#111827);font-size:1.5rem;font-weight:700;margin-bottom:.5rem}.marketing-pricing-price{margin:1rem 0}.marketing-pricing-amount{color:var(--color-ocean-blue-600,#2563eb);font-size:3rem;font-weight:800}.marketing-pricing-period{color:#6b7280;font-size:1.125rem}.marketing-pricing-desc{color:#6b7280;font-size:.875rem}.marketing-pricing-features{display:flex;flex-direction:column;gap:.75rem;margin-bottom:2rem}.marketing-pricing-feature{align-items:flex-start;display:flex;font-size:.875rem;gap:.75rem}.marketing-pricing-feature svg{color:#10b981;flex-shrink:0;margin-top:.125rem}.marketing-pricing-feature-excluded svg{color:var(--border-medium,#d1d5db)}.marketing-pricing-feature-excluded{color:var(--color-disabled-text,#9ca3af)}.marketing-pricing-examples{border-top:1px solid var(--border-light,#e5e7eb);color:#6b7280;font-size:.875rem;margin-top:1.5rem;padding-top:1.5rem}.marketing-pricing-examples p{margin:.5rem 0}.marketing-guarantee{background:#dcfce7;border:2px solid #10b981;border-radius:12px;margin-top:3rem;padding:2rem;text-align:center}.marketing-guarantee h4{color:#166534;font-size:1.5rem;margin-bottom:.75rem}.marketing-guarantee p{color:#166534;font-size:1.125rem}.marketing-faq-list{margin:0 auto;max-width:800px}.marketing-faq-item{background:var(--bg-primary,#fff);border:1px solid var(--border-light,#e5e7eb);border-radius:8px;margin-bottom:1rem;overflow:hidden}.marketing-faq-question{align-items:center;background:none;border:none;color:var(--text-primary,#111827);cursor:pointer;display:flex;font-size:1.125rem;font-weight:600;justify-content:space-between;padding:1.5rem;text-align:left;transition:background .2s;width:100%}.marketing-faq-question:hover{background:var(--bg-secondary,#f9fafb)}.marketing-faq-answer{color:var(--text-secondary,#4b5563);line-height:1.6;padding:0 1.5rem 1.5rem}.marketing-cta-section{background:linear-gradient(135deg,var(--color-ocean-blue-700,#1e40af) 0,#1e3a8a 100%);color:var(--bg-primary,#fff);text-align:center}.marketing-cta-title{color:var(--bg-primary,#fff);font-size:3rem;font-weight:800;margin-bottom:1rem}.marketing-cta-subtitle{color:#dbeafe;font-size:1.5rem;margin-bottom:2.5rem}.marketing-cta-values{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin:3rem auto;max-width:900px}.marketing-cta-value{align-items:center;display:flex;font-size:1.125rem;font-weight:500;gap:.75rem}.marketing-cta-value svg{color:#10b981;flex-shrink:0}.marketing-cta-buttons{gap:1rem}.marketing-cta-buttons,.marketing-cta-trust{display:flex;justify-content:center;margin:2.5rem 0}.marketing-cta-trust{color:#dbeafe;flex-wrap:wrap;gap:2rem}.marketing-cta-encouragement{color:#dbeafe;font-size:1.125rem;font-style:italic;margin:2rem auto 0;max-width:700px}.marketing-footer{background:var(--text-primary,#111827);color:var(--border-medium,#d1d5db);padding:3rem 0 2rem}.marketing-footer-grid{display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:3rem}.marketing-footer-column h4{color:var(--bg-primary,#fff);font-weight:700;margin-bottom:1rem}.marketing-footer-column a{color:var(--color-disabled-text,#9ca3af);display:block;padding:.5rem 0;text-decoration:none;transition:color .2s}.marketing-footer-column a:hover{color:var(--color-ocean-blue-600,#2563eb)}.marketing-footer-bottom{border-top:1px solid var(--text-secondary,#374151);color:var(--color-disabled-text,#9ca3af);font-size:.875rem;padding-top:2rem;text-align:center}.marketing-footer-bottom p{margin:.5rem 0}@media(max-width:768px){.marketing-hero-title{font-size:2.5rem}.marketing-hero-subtitle{font-size:1.125rem}.marketing-hero-cta{flex-direction:column}.marketing-cta-title,.marketing-section-title{font-size:2rem}.marketing-cta-buttons{flex-direction:column}.marketing-nav{display:none}.marketing-features-grid,.marketing-pricing-grid,.marketing-problem-grid{grid-template-columns:1fr}}.ai-insights-panel{background:var(--bg-primary,#fff);border-radius:12px;box-shadow:var(--shadow-sm,0 1px 3px rgba(0,0,0,.1));margin-bottom:24px;padding:24px}.ai-insights-panel .panel-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.ai-insights-panel .panel-header .header-left{align-items:center;display:flex}.ai-insights-panel .panel-header h2{color:var(--ethos-primary,var(--ethos-primary-600,#2563eb));font-size:var(--ethos-font-size-sm,14px);font-weight:var(--ethos-font-weight-semibold,600);letter-spacing:var(--ethos-letter-spacing-wider,1px);line-height:1;margin:0;text-transform:uppercase}.empty-insights{color:var(--ethos-text-secondary,#6b7280);padding:48px 24px;text-align:center}.empty-insights p{color:var(--ethos-text-primary,#1f2937);font-size:1.125rem;font-weight:600;margin:0 0 8px}.empty-insights span{color:var(--ethos-text-tertiary,#9ca3af);font-size:.875rem}.insights-stack{display:flex;flex-direction:column;gap:16px;margin-bottom:20px}.insight-card{background:#fff;border:1px solid var(--ethos-panel-border-color,rgba(0,0,0,.08));border-radius:12px;box-shadow:0 1px 3px rgba(0,0,0,.05);overflow:hidden;padding:20px;position:relative;transition:all .2s ease}.insight-card:before{background:var(--impact-color,#6b7280);bottom:0;content:"";left:0;opacity:1;position:absolute;top:0;transition:all .2s ease;width:4px}.insight-card:hover{border-color:rgba(37,99,235,.2);box-shadow:0 4px 12px rgba(37,99,235,.12);transform:translateX(2px)}.insight-card[data-impact=high]:before{background:#ef4444}.insight-card[data-impact=medium]:before{background:#f59e0b}.insight-card[data-impact=low]:before{background:#10b981}.insight-content{align-items:flex-start;display:flex;gap:16px}.insight-icon-wrapper{border-radius:12px;flex-shrink:0;height:48px;width:48px}.insight-icon,.insight-icon-wrapper{align-items:center;display:flex;justify-content:center}.insight-body{flex:1;min-width:0}.insight-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:8px}.insight-title{color:var(--ethos-text-primary,#1f2937);font-size:1rem;font-weight:600;line-height:1.4;margin:0}.confidence-badge{background:var(--ethos-primary-50,#eff6ff);border-radius:6px;color:var(--ethos-primary-600,#2563eb);display:inline-block;font-size:.6875rem;font-weight:600;letter-spacing:.5px;padding:4px 10px}.insight-description{color:var(--ethos-text-secondary,#6b7280);font-size:.875rem;line-height:1.6;margin:0 0 12px}.insight-footer{flex-wrap:wrap;gap:12px;justify-content:space-between}.insight-footer,.insight-value{align-items:center;display:flex}.insight-value{gap:8px}.value-text{font-size:1.125rem;font-weight:700;line-height:1}.ai-footer{border-top:1px solid var(--ethos-panel-border-color,rgba(0,0,0,.08));justify-content:space-between;margin-top:8px;padding-top:16px}.ai-footer,.ai-status{align-items:center;display:flex}.ai-status{color:var(--ethos-text-tertiary,#9ca3af);font-size:.75rem;gap:8px}.status-indicator{background:#6b7280;border-radius:50%;height:8px;width:8px}.status-indicator.active{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite;background:#10b981;box-shadow:0 0 0 3px rgba(16,185,129,.1)}.ai-updated{color:var(--ethos-text-tertiary,#9ca3af);font-size:.75rem}@media(max-width:768px){.ai-insights-panel{border-radius:8px;padding:16px}.insights-stack{gap:12px}.insight-card{padding:16px}.insight-content{gap:12px}.insight-icon-wrapper{height:40px;width:40px}.insight-title{font-size:.9375rem}.ai-footer{align-items:flex-start;flex-direction:column;gap:8px}}@media(max-width:480px){.ai-insights-panel{margin-bottom:16px;padding:12px}.insight-card{border-radius:8px;padding:12px}.insight-content{flex-direction:column;gap:12px}.insight-icon-wrapper{height:48px;width:48px}.insight-header{align-items:flex-start;flex-direction:column;gap:8px}.insight-title{font-size:.875rem}.insight-description{font-size:.8125rem}.value-text{font-size:1rem}.insight-footer{align-items:flex-start;flex-direction:column;gap:8px}}.send-claim-email-modal{background:#fff;border-radius:var(--ethos-panel-radius-lg);box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);max-height:90vh;max-width:500px;overflow-y:auto;position:relative;width:90%}.modal-overlay{background:rgba(0,0,0,.5);bottom:0;justify-content:center;left:0;padding:var(--ethos-spacing-md);position:fixed;right:0;top:0;z-index:1000}.modal-header,.modal-overlay{align-items:center;display:flex}.modal-header{border-bottom:1px solid var(--border-light,#e5e7eb);justify-content:space-between;padding:24px 24px 20px}.modal-header h2{color:var(--text-primary,#1f2937);font-size:20px;font-weight:600;margin:0}.modal-close-button{align-items:center;background:none;border:none;border-radius:var(--ethos-panel-radius-sm);color:var(--text-secondary,#6b7280);cursor:pointer;display:flex;justify-content:center;padding:var(--ethos-spacing-xs);transition:all .2s ease}.modal-close-button:hover{background:var(--bg-secondary,#f3f4f6);color:var(--text-primary,#1f2937)}.modal-close-button:disabled{cursor:not-allowed;opacity:.5}.send-claim-email-modal form{display:flex;flex-direction:column;gap:var(--ethos-spacing-md);padding:var(--ethos-spacing-lg)}.form-field{display:flex;flex-direction:column;gap:var(--ethos-spacing-sm)}.form-field label{color:var(--text-secondary,#374151);font-size:14px;font-weight:500}.form-field input,.form-field textarea{border:1px solid var(--border-medium,#d1d5db);border-radius:var(--ethos-panel-radius-sm);font-family:inherit;font-size:14px;padding:10px 12px;transition:all .2s ease;width:100%}.form-field input:focus,.form-field textarea:focus{border-color:var(--ethos-primary,#2563eb);box-shadow:0 0 0 3px rgba(37,99,235,.1);outline:none}.form-field input:disabled,.form-field textarea:disabled{background-color:var(--bg-secondary,#f3f4f6);cursor:not-allowed;opacity:.6}.form-field textarea{min-height:80px;resize:vertical}.info-box{background:#eff6ff;border:1px solid #bfdbfe;border-radius:var(--ethos-panel-radius);display:flex;gap:var(--ethos-panel-padding-md);padding:var(--ethos-spacing-md)}.info-box .material-icons{color:var(--ethos-primary-600);flex-shrink:0;font-size:20px}.info-box div{flex:1}.info-box strong{color:var(--ethos-primary-800);display:block;font-size:14px;margin-bottom:var(--ethos-spacing-xs)}.info-box p{color:var(--ethos-primary-900);font-size:13px;line-height:1.5;margin:0}.modal-actions{display:flex;gap:var(--ethos-panel-padding-md);justify-content:flex-end;margin-top:var(--ethos-spacing-sm)}.btn-primary,.btn-secondary{border:none;border-radius:var(--ethos-panel-radius-sm);cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s ease}.btn-primary{background:var(--ethos-primary,#2563eb);color:#fff}.btn-primary:hover:not(:disabled){background:var(--ethos-primary-700)}.btn-primary:disabled{cursor:not-allowed;opacity:.5}.btn-secondary{background:#fff;border:1px solid var(--border-medium,#d1d5db);color:var(--text-secondary,#374151)}.btn-secondary:hover:not(:disabled){background:var(--bg-secondary,#f3f4f6)}.btn-secondary:disabled{cursor:not-allowed;opacity:.5}.error-message{background-color:#fef2f2;border-radius:var(--ethos-panel-radius-sm);color:var(--ethos-error-600);font-size:14px;padding:var(--ethos-panel-padding-md)}.voice-recorder{background:var(--bg-primary,#fff);border:1px solid var(--border-light,#e1e5e9);border-radius:var(--ethos-panel-radius-lg);box-shadow:0 2px 8px rgba(0,0,0,.1);margin:0 auto;max-width:600px;padding:var(--ethos-spacing-lg)}.voice-recorder-header{align-items:center;border:1px solid var(--border-light,#e1e5e9);display:flex;justify-content:space-between;margin-bottom:var(--ethos-spacing-lg);padding-bottom:var(--ethos-spacing-md)}.voice-recorder-header h3{color:var(--text-primary,#2c3e50);font-size:1.25rem;font-weight:600;margin:0}.recording-status{align-items:center;display:flex;gap:var(--ethos-spacing-md)}.recording-indicator{align-items:center;color:var(--text-primary,#e74c3c);display:flex;font-weight:500;gap:var(--ethos-spacing-sm)}.pulse-dot{animation:pulse 1.5s infinite;background:#e74c3c;border-radius:50%;height:12px;width:12px}@keyframes pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.paused-indicator{color:var(--text-primary,#f39c12)}.duration-display,.paused-indicator{align-items:center;display:flex;font-weight:500;gap:var(--ethos-spacing-sm)}.duration-display{color:var(--text-primary,#7f8c8d);font-family:Courier New,monospace}.voice-recorder-controls{display:flex;flex-wrap:wrap;gap:var(--ethos-panel-padding-md);justify-content:center;margin-bottom:var(--ethos-spacing-lg)}.voice-recorder-controls button{align-items:center;border:none;border-radius:var(--ethos-panel-radius);cursor:pointer;display:flex;font-weight:500;gap:var(--ethos-spacing-sm);justify-content:center;min-width:140px;padding:12px 20px;transition:all .2s ease}.btn-record{background:#e74c3c;color:var(--white,#fff)}.btn-record:hover:not(:disabled){background:#c0392b;box-shadow:0 4px 12px rgba(231,76,60,.3);transform:translateY(-1px)}.btn-pause{background:#f39c12;color:var(--white,#fff)}.btn-pause:hover{background:#e67e22;box-shadow:0 4px 12px rgba(243,156,18,.3);transform:translateY(-1px)}.btn-resume{background:#27ae60;color:var(--white,#fff)}.btn-resume:hover{background:#229954;box-shadow:0 4px 12px rgba(39,174,96,.3);transform:translateY(-1px)}.btn-stop{background:#95a5a6;color:var(--white,#fff)}.btn-stop:hover{background:#7f8c8d;box-shadow:0 4px 12px hsla(184,9%,62%,.3);transform:translateY(-1px)}.btn-process{background:#3498db;color:var(--white,#fff)}.btn-process:hover{background:#2980b9;box-shadow:0 4px 12px rgba(52,152,219,.3);transform:translateY(-1px)}.voice-recorder-controls button:disabled{cursor:not-allowed;opacity:.6;transform:none}.transcript-preview{background:#f8f9fa;border:1px solid var(--border-light,#e1e5e9);border-radius:var(--ethos-panel-radius);margin-bottom:var(--ethos-spacing-lg);padding:var(--ethos-spacing-md)}.transcript-preview h4{color:var(--text-primary,#2c3e50);font-size:1rem;font-weight:600;margin:0 0 12px}.transcript-content{background:var(--bg-primary,#fff);border:1px solid var(--border-light,#e1e5e9);border-radius:var(--ethos-panel-radius-sm);color:var(--text-primary,#2c3e50);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.5;max-height:200px;overflow-y:auto;padding:var(--ethos-panel-padding-md)}.error-message{align-items:center;background:#fdf2f2;border:1px solid var(--border-light,#fecaca);border-radius:var(--ethos-panel-radius);color:var(--color-error,#dc2626);display:flex;font-weight:500;gap:var(--ethos-spacing-sm);margin-bottom:var(--ethos-spacing-lg);padding:12px 16px}.voice-recorder-info{background:#f8f9fa;border:1px solid var(--border-light,#e1e5e9);border-radius:var(--ethos-panel-radius);padding:var(--ethos-spacing-md)}.voice-recorder-info p{color:var(--text-primary,#6c757d);font-size:.9rem;line-height:1.4;margin:0 0 8px}.voice-recorder-info p:last-child{margin-bottom:0}.voice-recorder-info strong{color:var(--text-primary,#495057);font-weight:600}@media(max-width:768px){.voice-recorder{margin:0 8px;padding:var(--ethos-spacing-md)}.voice-recorder-header{gap:var(--ethos-panel-padding-md)}.recording-status,.voice-recorder-header{align-items:flex-start;flex-direction:column}.recording-status{gap:var(--ethos-spacing-sm)}.voice-recorder-controls{align-items:stretch;flex-direction:column}.voice-recorder-controls button{min-width:auto;width:100%}.transcript-content{max-height:150px}}.voice-recorder-controls button:focus{outline:2px solid #3498db;outline-offset:2px}.voice-recorder-controls button:focus:not(:focus-visible){outline:none}@media(prefers-contrast:high){.voice-recorder,.voice-recorder-controls button{border:2px solid #000}}@media(prefers-reduced-motion:reduce){.pulse-dot{animation:none}.voice-recorder-controls button{transition:none}}.goal-management-panel{background:var(--bg-primary,#fff);border-radius:16px;box-shadow:0 2px 16px rgba(0,0,0,.08);margin-bottom:var(--ethos-spacing-lg);padding:var(--ethos-spacing-lg)}.goal-panel-header{align-items:center;border-bottom:1px solid var(--border-light,#e5e5e7);display:flex;justify-content:space-between;margin-bottom:var(--ethos-spacing-lg);padding-bottom:var(--ethos-spacing-md)}.goal-panel-header h3{align-items:center;color:var(--text-primary,#1c1c1e);display:flex;font-size:20px;font-weight:600;gap:var(--ethos-spacing-sm);margin:0}.goal-header-actions{align-items:center;display:flex;gap:var(--ethos-panel-padding-md)}.goal-tabs{background:#f2f2f7;border-radius:var(--ethos-panel-radius-lg);margin-bottom:var(--ethos-spacing-md);padding:var(--ethos-spacing-xs)}.goal-tab,.goal-tabs{display:flex;gap:var(--ethos-spacing-xs)}.goal-tab{align-items:center;background:transparent;border:none;border-radius:var(--ethos-panel-radius);color:#6e6e73;cursor:pointer;flex:1;font-size:14px;font-weight:500;justify-content:center;padding:10px 16px;transition:all .2s ease-out}.goal-tab:hover{background:hsla(0,0%,100%,.5);color:#1c1c1e}.goal-tab.active{background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.1);color:#007aff}.goal-tab-count{background:#e5e5e7;border-radius:10px;color:#6e6e73;font-size:11px;font-weight:600;min-width:20px;padding:2px 6px;text-align:center}.goal-tab.active .goal-tab-count{background:#007aff;color:#fff}.goal-summary-cards{display:grid;gap:var(--ethos-spacing-md);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:var(--ethos-spacing-lg)}.goal-summary-card{background:linear-gradient(135deg,#f8f9fa 0,var(--ethos-neutral-200) 100%);border:1px solid var(--border-light,#e5e5e7);border-radius:var(--ethos-panel-radius-lg);padding:var(--ethos-spacing-md);text-align:center}.goal-summary-card.active{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border-color:#90caf9}.goal-summary-card.achieved{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border-color:#a5d6a7}.goal-summary-card.on-hold{background:linear-gradient(135deg,#fff3e0,#ffe0b2);border-color:#ffcc80}.summary-card-value{color:#1c1c1e;font-size:28px;font-weight:700;margin-bottom:var(--ethos-spacing-xs)}.summary-card-label{color:#6e6e73;font-size:12px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.goals-list{display:flex;flex-direction:column;gap:var(--ethos-spacing-md)}.goal-card{background:var(--ethos-canvas-fill-01);border:1px solid var(--border-light,#e5e5e7);border-radius:var(--ethos-panel-radius-lg);padding:var(--ethos-spacing-md);position:relative;transition:all .2s ease-out}.goal-card:hover{box-shadow:0 4px 12px rgba(0,0,0,.1);transform:translateY(-2px)}.goal-card.long-term{border-left:4px solid #007aff}.goal-card.short-term{border-left:4px solid #34c759}.goal-card.achieved{border-left-color:#8e8e93;opacity:.7}.goal-card.discontinued{border-left-color:#ff3b30;opacity:.5}.goal-card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:var(--ethos-panel-padding-md)}.goal-type-badge{align-items:center;border-radius:var(--ethos-panel-radius-sm);display:inline-flex;font-size:11px;font-weight:600;gap:var(--ethos-spacing-xs);letter-spacing:.5px;padding:4px 10px;text-transform:uppercase}.goal-type-badge.long-term{background:#e3f2fd;color:#1565c0}.goal-type-badge.short-term{background:#e8f5e9;color:#2e7d32}.goal-status-badge{align-items:center;border-radius:var(--ethos-panel-radius-sm);display:inline-flex;font-size:11px;font-weight:600;gap:var(--ethos-spacing-xs);padding:4px 10px;text-transform:uppercase}.goal-status-badge.active{background:#e3f2fd;color:#1565c0}.goal-status-badge.achieved{background:#e8f5e9;color:#2e7d32}.goal-status-badge.discontinued{background:#ffebee;color:#c62828}.goal-status-badge.on_hold{background:#fff3e0;color:#e65100}.goal-card-content{margin-bottom:var(--ethos-spacing-md)}.goal-text{color:#1c1c1e;font-size:15px;line-height:1.5;margin:0 0 12px}.goal-meta{color:#6e6e73;display:flex;flex-wrap:wrap;font-size:13px;gap:var(--ethos-spacing-md)}.goal-meta-item{align-items:center;display:flex;gap:var(--ethos-spacing-xs)}.goal-meta-item svg{font-size:16px}.goal-progress-section{margin-bottom:var(--ethos-spacing-md)}.goal-progress-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--ethos-spacing-sm)}.goal-progress-label{color:#1c1c1e;font-size:13px;font-weight:500}.goal-progress-value{color:#007aff;font-size:13px;font-weight:600}.goal-progress-bar{background:#e5e5e7;height:8px;overflow:hidden;width:100%}.goal-progress-bar,.goal-progress-fill{border-radius:var(--ethos-panel-radius-sm)}.goal-progress-fill{background:linear-gradient(90deg,#007aff,#5ac8fa);height:100%;transition:width .6s ease-out}.goal-progress-fill.achieved{background:linear-gradient(90deg,#34c759,#30d158)}.goal-progress-fill.warning{background:linear-gradient(90deg,#ff9500,#fc0)}.goal-progress-fill.critical{background:linear-gradient(90deg,#ff3b30,#ff6b6b)}.goal-stats{background:#fff;border:1px solid var(--border-light,#e5e5e7);border-radius:var(--ethos-panel-radius);display:grid;gap:var(--ethos-panel-padding-md);grid-template-columns:repeat(3,1fr);margin-bottom:var(--ethos-spacing-md);padding:var(--ethos-panel-padding-md)}.goal-stat{text-align:center}.goal-stat-value{color:#1c1c1e;font-size:18px;font-weight:700}.goal-stat-label{color:#6e6e73;font-size:10px;letter-spacing:.5px;margin-top:2px;text-transform:uppercase}.goal-card-actions{border-top:1px solid #e5e5e7;display:flex;gap:var(--ethos-spacing-sm);justify-content:flex-end;padding-top:var(--ethos-panel-padding-md)}.goal-action-btn{align-items:center;border:none;border-radius:var(--ethos-panel-radius);cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:var(--ethos-spacing-xs);padding:8px 16px;transition:all .2s ease-out}.goal-action-btn.primary{background:#007aff;color:#fff}.goal-action-btn.primary:hover{background:#0056cc}.goal-action-btn.secondary{background:#f2f2f7;color:#6e6e73}.goal-action-btn.secondary:hover{background:#e5e5e7;color:#1c1c1e}.goal-action-btn.success{background:#34c759;color:#fff}.goal-action-btn.success:hover{background:#28a745}.goal-action-btn.danger{background:transparent;border:1px solid #ff3b30;color:#ff3b30}.goal-action-btn.danger:hover{background:#ff3b30;color:#fff}.goals-empty-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.goals-empty-icon{color:#e5e5e7;font-size:64px;margin-bottom:var(--ethos-spacing-md)}.goals-empty-title{color:#1c1c1e;font-size:18px;font-weight:600;margin:0 0 8px}.goals-empty-message{color:#6e6e73;font-size:14px;margin:0 0 24px;max-width:400px}.goal-form-modal{max-width:700px}.goal-form{display:flex;flex-direction:column;gap:var(--ethos-spacing-md)}.goal-form-section{background:var(--ethos-canvas-fill-01);border:1px solid var(--border-light,#e5e5e7);border-radius:var(--ethos-panel-radius-lg);padding:var(--ethos-spacing-md)}.goal-form-section-title{align-items:center;color:#1c1c1e;display:flex;font-size:14px;font-weight:600;gap:var(--ethos-spacing-sm);margin:0 0 16px}.goal-form-row{display:grid;gap:var(--ethos-spacing-md);grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.goal-form-group{display:flex;flex-direction:column;gap:var(--ethos-spacing-xs)}.goal-form-label{color:#6e6e73;font-size:12px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.goal-form-input,.goal-form-select,.goal-form-textarea{background:#fff;border:1px solid #e5e5e7;border-radius:var(--ethos-panel-radius);color:#1c1c1e;font-size:14px;padding:12px 14px;transition:all .2s ease-out}.goal-form-input:focus,.goal-form-select:focus,.goal-form-textarea:focus{border-color:#007aff;box-shadow:0 0 0 3px rgba(0,122,255,.1);outline:none}.goal-form-textarea{min-height:100px;resize:vertical}.goal-form-input::-moz-placeholder,.goal-form-textarea::-moz-placeholder{color:#c7c7cc}.goal-form-input::placeholder,.goal-form-textarea::placeholder{color:#c7c7cc}.template-selector{margin-bottom:var(--ethos-spacing-md)}.template-grid{display:grid;gap:var(--ethos-panel-padding-md);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));max-height:300px;overflow-y:auto;padding:var(--ethos-spacing-xs)}.template-card{background:#fff;border:2px solid #e5e5e7;border-radius:10px;cursor:pointer;padding:var(--ethos-spacing-md);transition:all .2s ease-out}.template-card:hover{border-color:#007aff;box-shadow:0 2px 8px rgba(0,122,255,.15)}.template-card.selected{background:#f0f7ff;border-color:#007aff}.template-card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:var(--ethos-spacing-sm)}.template-name{color:#1c1c1e;font-size:14px;font-weight:600}.template-discipline{background:#e8e8ed;border-radius:var(--ethos-panel-radius-sm);color:#6e6e73;font-size:10px;font-weight:600;padding:3px 8px;text-transform:uppercase}.template-text{color:#6e6e73;display:-webkit-box;font-size:12px;-webkit-line-clamp:2;line-height:1.4;-webkit-box-orient:vertical;overflow:hidden}.discipline-filter{display:flex;flex-wrap:wrap;gap:var(--ethos-spacing-sm);margin-bottom:var(--ethos-spacing-md)}.discipline-chip{background:#fff;border:1px solid #e5e5e7;border-radius:20px;color:#6e6e73;cursor:pointer;font-size:13px;font-weight:500;padding:6px 14px;transition:all .2s ease-out}.discipline-chip:hover{border-color:#007aff;color:#007aff}.discipline-chip.active{background:#007aff;border-color:#007aff;color:#fff}.goal-form-actions{border-top:1px solid #e5e5e7;display:flex;gap:var(--ethos-panel-padding-md);justify-content:flex-end;padding-top:var(--ethos-spacing-md)}.goals-loading{align-items:center;color:#6e6e73;display:flex;flex-direction:column;padding:40px 20px}.goals-loading .spinner{animation:spin 1s linear infinite;border:3px solid #e5e5e7;border-radius:50%;border-top-color:#007aff;height:32px;margin-bottom:var(--ethos-spacing-md);width:32px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.goals-error{align-items:center;color:#ff3b30;display:flex;flex-direction:column;padding:40px 20px;text-align:center}@media(prefers-color-scheme:dark){.goal-management-panel{background:#1c1c1e}.goal-panel-header{border-bottom-color:#38383a}.goal-panel-header h3{color:#fff}.goal-tabs{background:#2c2c2e}.goal-tab{color:#8e8e93}.goal-tab:hover{background:hsla(0,0%,100%,.1);color:#fff}.goal-tab.active{background:#38383a;color:#007aff}.goal-tab-count{background:#38383a;color:#8e8e93}.goal-card{background:#2c2c2e;border-color:#38383a}.goal-progress-label,.goal-stat-value,.goal-text,.summary-card-value{color:#fff}.goal-meta,.goal-stat-label,.summary-card-label{color:#8e8e93}.goal-stats{background:#1c1c1e;border-color:#38383a}.goal-card-actions{border-top-color:#38383a}.goal-action-btn.secondary{background:#38383a;color:#8e8e93}.goal-action-btn.secondary:hover{background:#48484a;color:#fff}.goal-form-section{background:#2c2c2e;border-color:#38383a}.goal-form-section-title{color:#fff}.goal-form-input,.goal-form-select,.goal-form-textarea{background:#1c1c1e;border-color:#38383a;color:#fff}.template-card{background:#2c2c2e;border-color:#38383a}.template-card:hover{border-color:#007aff}.template-card.selected{background:rgba(0,122,255,.1)}.template-name{color:#fff}.template-discipline{background:#38383a;color:#8e8e93}.discipline-chip{background:#2c2c2e;border-color:#38383a;color:#8e8e93}.discipline-chip.active{background:#007aff;border-color:#007aff;color:#fff}.goal-summary-card{background:linear-gradient(135deg,#2c2c2e,#1c1c1e);border-color:#38383a}.goal-summary-card.active{background:linear-gradient(135deg,rgba(0,122,255,.2),rgba(0,122,255,.1));border-color:rgba(0,122,255,.3)}.goal-summary-card.achieved{background:linear-gradient(135deg,rgba(52,199,89,.2),rgba(52,199,89,.1));border-color:rgba(52,199,89,.3)}}@media(max-width:768px){.goal-management-panel{margin-bottom:var(--ethos-spacing-md);padding:var(--ethos-spacing-md)}.goal-panel-header{align-items:flex-start;flex-direction:column;gap:var(--ethos-panel-padding-md)}.goal-header-actions{justify-content:flex-end;width:100%}.goal-tabs{flex-wrap:wrap}.goal-tab{flex:1 1 auto;font-size:12px;min-width:80px;padding:8px 12px}.goal-summary-cards{grid-template-columns:repeat(2,1fr)}.goal-card{padding:var(--ethos-spacing-md)}.goal-card-header{flex-direction:column;gap:var(--ethos-spacing-sm)}.goal-stats{gap:var(--ethos-spacing-sm);grid-template-columns:repeat(3,1fr);padding:var(--ethos-spacing-sm)}.goal-stat-value{font-size:16px}.goal-card-actions{flex-wrap:wrap;justify-content:center}.goal-action-btn{flex:1;justify-content:center}.goal-form-row,.template-grid{grid-template-columns:1fr}.discipline-filter{justify-content:center}.goal-form-actions{flex-direction:column}.goal-form-actions button{width:100%}}.patient-edit-modal-content{max-height:calc(90vh - 120px);overflow-y:auto;padding:0}.patient-edit-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:300px;padding:60px 20px}.patient-edit-loading .loading-spinner{animation:fadeInOut 2s ease-in-out infinite;margin-bottom:16px;opacity:.6}.patient-edit-loading .loading-text{color:var(--text-muted,#6b7280);font-size:14px}.tab-navigation{background:#fff;border:1px solid var(--border-light,#e2e8f0);border-radius:12px;display:flex;gap:8px;margin-bottom:24px;overflow-x:auto;padding:8px}.tab-button{align-items:center;background:var(--bg-secondary,#f8fafc);border:1px solid var(--border-light,#e2e8f0);border-radius:10px;color:var(--text-secondary,#6b7280);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 14px;transition:all .2s ease;white-space:nowrap}.tab-button:hover{background:#fff;border-color:#cbd5e1;color:var(--text-primary,#111827)}.tab-button.active{background:rgba(37,99,235,.08);border-color:rgba(37,99,235,.32);color:var(--ethos-primary,#2563eb);font-weight:600}.tab-button svg{font-size:18px}.form-section{margin-bottom:32px}.section-header{margin-bottom:20px}.form-grid-2,.form-grid-3{display:grid;gap:16px}.field-helper-text{color:var(--text-muted,#64748b);font-size:12px;margin-top:6px}.subscriber-section{border-top:1px solid var(--border-light,#e5e7eb);margin-top:24px;padding-top:24px}.subscriber-section h3{color:var(--text-primary,#111827);font-size:16px;font-weight:600;margin:0 0 16px}.form-actions{margin-top:32px;padding-top:24px}.actions-left,.actions-right{gap:12px}.btn-cancel,.btn-delete,.btn-save{border-radius:8px}@media(max-width:768px){.form-grid-2,.form-grid-3{grid-template-columns:1fr}.tab-navigation{overflow-x:auto;-webkit-overflow-scrolling:touch}.form-actions{flex-direction:column;gap:12px}.actions-left,.actions-right{width:100%}.actions-left button,.actions-right button{flex:1}}.provider-edit-modal-content{max-height:calc(90vh - 120px);overflow-y:auto;padding:0}.provider-edit-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:300px;padding:60px 20px}.provider-edit-loading .loading-spinner{animation:fadeInOut 2s ease-in-out infinite;margin-bottom:var(--ethos-spacing-md);opacity:.6}.provider-edit-loading .loading-text{color:var(--text-muted,#6b7280);font-size:14px}@keyframes fadeInOut{0%,to{opacity:.4}50%{opacity:.8}}.form-container{padding:0}.form-section{margin-bottom:var(--ethos-spacing-xl)}.section-header{align-items:center;display:flex;gap:var(--ethos-spacing-sm);margin-bottom:var(--ethos-spacing-md)}.section-header h2{color:var(--text-primary,#111827);font-size:18px;font-weight:600;margin:0}.form-grid-2{grid-template-columns:1fr 1fr}.form-grid-2,.form-grid-3{display:grid;gap:var(--ethos-spacing-md)}.form-grid-3{grid-template-columns:1fr 1fr 1fr}.form-field-checkbox{margin-bottom:var(--ethos-spacing-md)}.form-field-checkbox label{align-items:center;cursor:pointer;display:flex;gap:var(--ethos-spacing-sm)}.field-error{border-color:#dc2626!important;box-shadow:0 0 0 1px #dc2626!important}.field-error-message{color:#dc2626;font-size:12px;font-weight:500;margin-top:6px}.form-actions{align-items:center;border-top:1px solid var(--border-light,#e5e7eb);display:flex;justify-content:space-between;margin-top:var(--ethos-spacing-xl);padding-top:var(--ethos-spacing-lg)}.actions-left,.actions-right{display:flex;gap:var(--ethos-panel-padding-md)}.btn-cancel{background:#fff;border:1px solid var(--border-medium,#d1d5db);border-radius:var(--ethos-panel-radius);color:var(--text-secondary,#6b7280);cursor:pointer;font-size:14px;font-weight:500;padding:10px 24px;transition:all .2s ease}.btn-cancel:hover{background:var(--bg-secondary,#f9fafb);border-color:var(--border-dark,#9ca3af)}.btn-save{background:var(--ethos-primary,#2563eb);border:none;border-radius:var(--ethos-panel-radius);color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 24px;transition:all .2s ease}.btn-save:hover:not(:disabled){background:var(--ethos-primary-700,#1d4ed8)}.btn-save:disabled{background:var(--border-medium,#d1d5db);cursor:not-allowed}.btn-delete{background:#fff;border:1px solid var(--color-error,#dc2626);border-radius:var(--ethos-panel-radius);color:var(--color-error,#dc2626);cursor:pointer;font-size:14px;font-weight:500;padding:10px 24px;transition:all .2s ease}.btn-delete:hover{background:var(--color-error,#dc2626);color:#fff}@media(max-width:768px){.form-grid-2,.form-grid-3{grid-template-columns:1fr}.form-actions{flex-direction:column;gap:var(--ethos-panel-padding-md)}.actions-left,.actions-right{width:100%}.actions-left button,.actions-right button{flex:1}}