.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}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.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{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.form-group{display:flex;flex-direction:column}.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);display:flex;gap:12px;justify-content:flex-end;margin-top:32px;padding-top:24px}.btn-secondary{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:12px 24px;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:none;border-radius:8px;color:var(--bg-primary,#fff);cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 24px;transition:background-color .2s}.btn-primary:hover:not(:disabled){background:var(--color-ocean-blue-600,#3182ce)}.btn-primary:disabled{cursor:not-allowed;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%}}.seat-usage-bar{border-bottom:1px solid rgba(0,0,0,.06);padding:20px 24px}.seat-usage-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.seat-usage-label{color:var(--text-primary,#1d1d1f);font-size:15px;font-weight:600}.seat-usage-count{color:var(--text-muted,#86868b);font-size:14px;font-variant-numeric:tabular-nums}.seat-progress-bg{background:#e8e8ed;border-radius:4px;height:8px;overflow:hidden}.seat-progress-fill{background:linear-gradient(90deg,#34c759,#30d158);border-radius:4px;height:100%;transition:width .3s ease}.seat-progress-fill.at-limit{background:linear-gradient(90deg,#ff9500,#ff3b30)}.seat-limit-warning{color:#ff9500;font-size:13px;margin:12px 0 0}.link-btn{background:none;border:none;color:var(--color-ocean-blue-600,#007aff);cursor:pointer;font-size:inherit;font-weight:600;padding:0}.link-btn:hover{text-decoration:underline}.btn-add-provider.btn-upgrade{background:#ff9500;box-shadow:0 1px 3px rgba(255,149,0,.3)}.btn-add-provider.btn-upgrade:hover{background:#e8890c}.pricing-tiers{border-top:1px solid rgba(0,0,0,.06);padding:16px 24px 20px}.pricing-tiers-label{color:var(--text-muted,#86868b);font-size:12px;font-weight:600;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.tier-chips{display:flex;flex-wrap:wrap;gap:8px}.tier-chip{background:var(--bg-secondary,#f5f5f7);border:1px solid transparent;border-radius:100px;color:var(--text-muted,#86868b);display:inline-block;font-size:12px;font-weight:500;padding:6px 12px}.tier-chip.current{background:#e8f4fd;border-color:#bfdbfe;color:var(--color-ocean-blue-600,#007aff);font-weight:600}.total-value{color:var(--color-ocean-blue-600,#007aff)!important}@media(prefers-color-scheme:dark){.provider-management-page{background:#000}.page-header h1{color:var(--bg-secondary,#f5f5f7)}.section-card{background:#1c1c1e;box-shadow:0 1px 3px rgba(0,0,0,.2)}.billing-row,.section-header{border-bottom-color:hsla(0,0%,100%,.1)}.billing-row.total{background:linear-gradient(135deg,#2c2c2e,#1c1c1e)}.billing-label,.billing-value,.empty-state-title,.provider-name{color:var(--bg-secondary,#f5f5f7)}.empty-state-icon{background:linear-gradient(135deg,#2c2c2e,#3a3a3c)}.modal-content{background:#1c1c1e}.modal-header h2{color:var(--bg-secondary,#f5f5f7)}.form-group input,.form-group textarea{background:#2c2c2e;border-color:#3a3a3c;color:var(--bg-secondary,#f5f5f7)}.form-group input:focus,.form-group textarea:focus{background:#3a3a3c}}.onboarding-page.patient-onboarding-page{align-items:flex-start;background:radial-gradient(circle at top left,var(--fp-brand-soft-strong,rgba(28,58,126,.14)),transparent 32%),linear-gradient(180deg,color-mix(in srgb,var(--fp-brand,#1c3a7e) 4%,#fff),#f5f7fb 100%);display:flex;justify-content:center;min-height:100vh;padding:var(--fp-space-xl,32px) var(--fp-space-base,16px)}.onboarding-container.patient-onboarding{background:var(--fp-surface,#fff);border:1px solid var(--fp-border,rgba(15,23,42,.08));border-radius:24px;box-shadow:var(--fp-shadow-card,0 12px 30px rgba(15,23,42,.08));max-width:960px;overflow:hidden;width:100%}.onboarding-header.patient-onboarding__header{background:linear-gradient(180deg,color-mix(in srgb,var(--fp-brand,#1c3a7e) 10%,#fff),hsla(0,0%,100%,.98)),var(--fp-surface,#fff);border-bottom:1px solid var(--fp-border,rgba(15,23,42,.08));display:flex;flex-direction:column;gap:var(--fp-space-lg,24px);padding:var(--fp-space-xl,32px)}.patient-onboarding__brand-row{align-items:flex-start;display:flex;gap:var(--fp-space-base,16px);justify-content:space-between}.patient-onboarding__brand{align-items:center;display:flex;gap:var(--fp-space-md,12px)}.patient-onboarding__brand-copy{display:flex;flex-direction:column;gap:2px}.patient-onboarding__brand-copy h1{color:var(--fp-text-primary,#0d1b2e);font-size:18px;font-weight:600;line-height:1.25;margin:0}.patient-onboarding__step-chip{background:var(--fp-info-soft,rgba(28,58,126,.08));border-radius:999px;color:var(--fp-brand,#1c3a7e);font-size:var(--fp-small-size,12px);font-weight:600;line-height:1.4;margin:0;padding:6px 12px;white-space:nowrap}.patient-onboarding__invitation-banner{margin:0}.progress-steps.patient-onboarding__stepper{background:color-mix(in srgb,var(--fp-brand,#1c3a7e) 2.5%,#fff);border-bottom:1px solid var(--fp-border,rgba(15,23,42,.08));padding:var(--fp-space-lg,24px) var(--fp-space-xl,32px)}.patient-onboarding__step-summary{align-items:center;display:flex;flex-direction:column;gap:2px}.patient-onboarding__badge-icon,.patient-onboarding__step-icon{font-size:16px}.patient-onboarding__content{margin:0 auto;max-width:640px;padding:var(--fp-space-xl,32px);width:100%}.onboarding-step.patient-onboarding__step-shell{animation:patient-onboarding-step-enter .22s ease;display:flex;flex-direction:column;gap:var(--fp-section-gap,32px)}.patient-onboarding__step-shell--centered{align-items:center;text-align:center}.patient-onboarding__step-intro{display:flex;flex-direction:column;gap:var(--fp-space-sm,8px)}.patient-onboarding__step-intro--center{align-items:center;text-align:center}.patient-onboarding__title-with-icon{align-items:flex-start;display:flex;gap:var(--fp-space-md,12px)}.patient-onboarding__submit-area{margin-top:var(--fp-section-gap,32px)}.patient-onboarding__primary-action{width:100%}.patient-onboarding__contextual-hint{margin-top:calc(var(--fp-space-sm, 8px)*-1)}.patient-onboarding__processing-card,.patient-onboarding__success-card{align-items:center;display:flex;flex-direction:column;gap:var(--fp-space-base,16px);max-width:560px;text-align:center;width:100%}.patient-onboarding__processing-list{display:flex;flex-direction:column;gap:var(--fp-space-md,12px);text-align:left;width:100%}.patient-onboarding__processing-step{align-items:center;display:flex;gap:var(--fp-space-md,12px);padding:var(--fp-space-sm,8px) 0}.patient-onboarding__processing-icon{color:var(--fp-success,#16a34a);font-size:20px}.patient-onboarding__processing-placeholder{border:1.5px solid var(--ethos-border-medium,#d1d5db);border-radius:50%;flex-shrink:0;height:20px;width:20px}.patient-onboarding__processing-text{color:var(--fp-text-secondary,#4b5563);font-size:var(--fp-body-size,14px);line-height:1.45}.patient-onboarding__processing-step.is-complete .patient-onboarding__processing-text{color:var(--fp-text-primary,#0d1b2e)}.patient-onboarding__section-grid{display:flex;flex-direction:column;gap:var(--fp-section-gap,32px)}.patient-onboarding__data-section{display:flex;flex-direction:column;gap:var(--fp-space-base,16px)}.patient-onboarding__data-list{display:flex;flex-direction:column;gap:var(--fp-space-md,12px)}.patient-onboarding__data-row{align-items:flex-start;border-bottom:1px solid color-mix(in srgb,var(--fp-text-primary,#0d1b2e) 7%,#fff);display:flex;gap:var(--fp-space-base,16px);justify-content:space-between;padding-bottom:var(--fp-space-md,12px)}.patient-onboarding__data-row:last-child{border-bottom:none;padding-bottom:0}.patient-onboarding__data-row--small{padding-bottom:var(--fp-space-sm,8px)}.patient-onboarding__data-label{color:var(--fp-text-tertiary,#6b7280);flex:0 0 160px;font-size:var(--fp-small-size,12px);font-weight:500;line-height:1.45}.patient-onboarding__data-value-wrap{align-items:flex-end;display:flex;flex-direction:column;gap:6px;text-align:right}.patient-onboarding__data-value{color:var(--fp-text-primary,#0d1b2e);font-size:var(--fp-body-size,14px);font-weight:500;line-height:1.45}.patient-onboarding__status-indicator,.patient-onboarding__verified{align-items:center;display:inline-flex;font-size:var(--fp-small-size,12px);font-weight:500;gap:6px;line-height:1.45}.patient-onboarding__status-indicator--success,.patient-onboarding__verified{color:var(--fp-success,#16a34a)}.patient-onboarding__status-indicator--warning{color:var(--fp-warning,#d97706)}.patient-onboarding__nested-panel{background:color-mix(in srgb,var(--fp-brand,#1c3a7e) 3%,#fff);border-radius:var(--fp-radius-md,12px);display:flex;flex-direction:column;gap:var(--fp-space-sm,8px);padding:var(--fp-space-base,16px)}.patient-onboarding__editable-card{background:color-mix(in srgb,var(--fp-warning,#d97706) 6%,#fff);border:1px solid var(--fp-warning-border,rgba(217,119,6,.22));border-radius:var(--fp-radius-md,12px);display:flex;flex-direction:column;gap:var(--fp-space-base,16px);padding:var(--fp-space-base,16px)}.patient-onboarding__editable-header{align-items:flex-start;color:var(--fp-warning,#d97706);display:flex;gap:var(--fp-space-sm,8px)}.patient-onboarding__editable-header .material-icons{font-size:20px}.patient-onboarding__editable-title{font-size:var(--fp-body-size,14px);font-weight:500;line-height:1.4;margin:0 0 2px}.patient-onboarding__consent-list{display:flex;flex-direction:column;gap:var(--fp-space-sm,8px)}.patient-onboarding__consent-checkbox{align-items:flex-start;background:var(--fp-surface,#fff);border:1px solid var(--fp-border,rgba(15,23,42,.08));border-radius:var(--fp-radius-md,12px);color:var(--fp-text-primary,#0d1b2e);cursor:pointer;display:flex;gap:var(--fp-space-md,12px);padding:var(--fp-space-base,16px);transition:border-color var(--fp-transition-normal,.2s ease),background-color var(--fp-transition-normal,.2s ease)}.patient-onboarding__consent-checkbox input{accent-color:var(--fp-brand,#1c3a7e);height:20px;margin:0;width:20px}.patient-onboarding__consent-checkbox.is-checked{background:var(--fp-info-soft,rgba(28,58,126,.08));border-color:var(--fp-brand-border,rgba(28,58,126,.22))}.patient-onboarding__signature-card{display:flex;flex-direction:column;gap:var(--fp-space-base,16px)}.patient-onboarding__signature-header{display:flex;flex-direction:column;gap:var(--fp-space-sm,8px)}.patient-onboarding__agreement{align-items:flex-start;background:var(--fp-surface-subtle,#f9fafb);border:1px solid var(--fp-border,rgba(15,23,42,.08));border-radius:var(--fp-radius-md,12px);color:var(--fp-text-primary,#0d1b2e);cursor:pointer;display:flex;gap:var(--fp-space-md,12px);padding:var(--fp-space-base,16px)}.patient-onboarding__agreement input{accent-color:var(--fp-brand,#1c3a7e);height:20px;margin-top:2px;width:20px}.patient-onboarding__agreement.is-error{background:var(--fp-error-soft,rgba(220,38,38,.1));border-color:var(--fp-error-border,rgba(220,38,38,.18))}.patient-onboarding__portal-callout{margin-bottom:calc(var(--fp-space-base, 16px)*-1)}.patient-onboarding__portal-email-value{color:var(--fp-text-primary,#0d1b2e);font-size:var(--fp-body-size,14px);font-weight:600;line-height:1.45;margin:0;word-break:break-word}.patient-onboarding__password-panel{display:flex;flex-direction:column;gap:var(--fp-section-gap,32px)}.patient-onboarding__hero-icon,.patient-onboarding__state-icon{align-items:center;border-radius:50%;display:inline-flex;font-size:28px;height:56px;justify-content:center;width:56px}.patient-onboarding__hero-icon{background:var(--fp-info-soft,rgba(28,58,126,.08));color:var(--fp-brand,#1c3a7e)}.patient-onboarding__state-icon--success{background:var(--fp-success-soft,rgba(22,163,74,.1));color:var(--fp-success,#16a34a)}.patient-onboarding__state-icon--error{background:var(--fp-error-soft,rgba(220,38,38,.1));color:var(--fp-error,#dc2626)}.patient-onboarding__state-card{align-items:center;display:flex;flex-direction:column;gap:var(--fp-space-lg,24px);padding:var(--fp-space-2xl,48px);text-align:center}.patient-onboarding__state-copy{display:flex;flex-direction:column;gap:var(--fp-space-sm,8px)}.patient-onboarding__spinner{animation:patient-onboarding-spin .9s linear infinite;border:2px solid color-mix(in srgb,var(--fp-brand,#1c3a7e) 15%,#fff);border-radius:50%;border-top-color:var(--fp-brand,#1c3a7e);display:inline-flex;flex-shrink:0;height:20px;width:20px}.patient-onboarding__spinner--hero{border-width:3px;height:44px;width:44px}.patient-onboarding__spinner--button{border-color:#fff hsla(0,0%,100%,.28) hsla(0,0%,100%,.28);border-width:2px;height:16px;width:16px}.patient-onboarding__status-line--success{color:var(--fp-success,#16a34a)}.error-state,.loading-state{justify-content:center;min-height:480px}@keyframes patient-onboarding-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes patient-onboarding-step-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:767px){.onboarding-page.patient-onboarding-page{padding:var(--fp-space-base,16px)}.onboarding-header.patient-onboarding__header,.patient-onboarding__content,.progress-steps.patient-onboarding__stepper{padding-left:var(--fp-space-base,16px);padding-right:var(--fp-space-base,16px)}.onboarding-header.patient-onboarding__header{padding-bottom:var(--fp-space-lg,24px);padding-top:var(--fp-space-lg,24px)}.patient-onboarding__brand-row{align-items:flex-start;flex-direction:column}.patient-onboarding__step-chip{white-space:normal}.patient-onboarding__data-row,.patient-onboarding__title-with-icon{align-items:flex-start;flex-direction:column}.patient-onboarding__data-label,.patient-onboarding__data-value-wrap{align-items:flex-start;flex:1 1 auto;text-align:left}}@media(max-width:479px){.onboarding-container.patient-onboarding{border-radius:18px}.patient-onboarding__state-card{padding:var(--fp-space-xl,32px) var(--fp-space-base,16px)}}.prior-auth-dashboard{padding:24px}.auth-table-row.warning{background-color:#fff3e0}.auth-table-row.error{background-color:#ffebee}