.auth-layout{display:flex;min-height:100vh;background:#fff}.auth-hero{display:none;background:linear-gradient(135deg,#1e40af,#1e3a8a);color:#fff;padding:var(--space-10);position:relative;overflow:hidden}.auth-hero:before{content:"";position:absolute;top:-50%;right:-20%;width:80%;height:80%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);border-radius:50%}.auth-hero-content{position:relative;z-index:1;max-width:500px;margin:0 auto;display:flex;flex-direction:column;justify-content:center;height:100%}.auth-hero-logo{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-8);font-size:var(--text-xl);font-weight:var(--font-bold)}.auth-hero-logo-icon{width:48px;height:48px;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center}.auth-hero-logo-icon svg{width:28px;height:28px}.auth-hero-title{font-size:var(--text-4xl);font-weight:var(--font-bold);line-height:1.2;margin:0 0 var(--space-4) 0}.auth-hero-subtitle{font-size:var(--text-lg);line-height:var(--leading-relaxed);margin:0 0 var(--space-10) 0;opacity:.9}.auth-features{display:flex;flex-direction:column;gap:var(--space-6)}.auth-feature{display:flex;align-items:flex-start;gap:var(--space-4)}.auth-feature-icon{width:40px;height:40px;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}.auth-feature-icon svg{width:20px;height:20px}.auth-feature-title{font-weight:var(--font-semibold);margin-bottom:var(--space-1)}.auth-feature-desc{font-size:var(--text-sm);opacity:.8}@media (min-width: 1024px){.auth-hero{display:flex;flex:1}}.auth-panel{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--space-6);background:var(--bg-page)}.auth-panel-content{width:100%;max-width:440px}.auth-panel-header{margin-bottom:var(--space-8)}.auth-panel-title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--text-primary);margin:0 0 var(--space-2) 0}.auth-panel-subtitle{font-size:var(--text-base);color:var(--text-secondary);margin:0}.auth-form{display:flex;flex-direction:column;gap:var(--space-5)}.form-input-group{position:relative;display:flex;align-items:center}.form-input-icon{position:absolute;left:var(--space-3);color:var(--text-muted);pointer-events:none;display:flex;align-items:center;justify-content:center}.form-input-with-icon{padding-left:44px}.form-input-action{position:absolute;right:var(--space-3);background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:var(--space-1);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.form-input-action:hover{color:var(--text-secondary);background:var(--bg-hover)}.form-input-with-icon[type=password]{padding-right:44px}.auth-panel-footer{margin-top:var(--space-6);padding-top:var(--space-6);border-top:1px solid var(--border-color);text-align:center}.auth-footer-text{font-size:var(--text-sm);color:var(--text-secondary);margin:0 0 var(--space-4) 0}.auth-link{color:var(--text-link);text-decoration:none;font-size:var(--text-sm);font-weight:var(--font-medium);transition:color var(--transition-fast)}.auth-link:hover{color:var(--text-link-hover);text-decoration:underline}.auth-link-primary{color:var(--brand-primary);text-decoration:none;font-weight:var(--font-semibold);transition:color var(--transition-fast)}.auth-link-primary:hover{color:var(--brand-primary-dark);text-decoration:underline}.auth-security{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--text-muted);padding:var(--space-2) var(--space-3);background:var(--bg-subtle);border-radius:var(--radius-full)}.auth-security svg{width:14px;height:14px}@media (max-width: 640px){.auth-panel{padding:var(--space-4)}.auth-panel-title{font-size:var(--text-2xl)}.btn-lg{padding:var(--space-3) var(--space-4);font-size:var(--text-base)}}@media (min-width: 1024px){.auth-panel{flex:0 0 50%;max-width:600px}}@media (min-width: 1440px){.auth-hero-content{max-width:600px}.auth-panel{padding:var(--space-10)}}.signup-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:16px;background:linear-gradient(135deg,#f0f4ff,#faf5ff,#f0fdf4)}.signup-container{width:100%;max-width:480px;display:flex;flex-direction:column;gap:16px}.signup-card{background:#fff;border-radius:16px;box-shadow:0 4px 24px #00000014,0 1px 2px #0000000a;padding:32px 24px;animation:slideUp .4s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.signup-header{text-align:center;margin-bottom:24px}.org-logo{margin-bottom:16px}.signup-header h1{font-size:22px;font-weight:700;color:#111827;margin:0 0 4px;letter-spacing:-.3px}.signup-header p{font-size:14px;color:#6b7280;margin:8px 0 0;line-height:1.5}.signup-header .subtitle{font-size:14px;color:#6b7280;margin:0}.welcome-message{display:flex;align-items:flex-start;gap:12px;padding:16px;background:linear-gradient(135deg,#eff6ff,#f5f3ff);border-radius:12px;margin-bottom:24px}.welcome-message .wave{font-size:24px;line-height:1}.welcome-message p{margin:0;font-size:15px;color:#374151;line-height:1.5}.welcome-message strong{color:#4f46e5}.success-message{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#d1fae5;border-radius:10px;margin-bottom:24px}.success-message .check-icon{width:24px;height:24px;background:#059669;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700}.success-message p{margin:0;font-size:14px;color:#065f46;font-weight:500}.progress-steps{display:flex;align-items:center;justify-content:center;gap:0;margin-bottom:28px;padding:0 8px}.step{display:flex;flex-direction:column;align-items:center;gap:6px}.step-num{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;background:#e5e7eb;color:#6b7280;transition:all .3s ease}.step.active .step-num{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;box-shadow:0 4px 12px #6366f159}.step.completed .step-num{background:#059669;color:#fff}.step-label{font-size:11px;color:#9ca3af;font-weight:500;white-space:nowrap}.step.active .step-label,.step.completed .step-label{color:#374151}.step-line{width:40px;height:2px;background:#e5e7eb;margin:0 4px 20px;transition:background .3s ease}.step-line.completed{background:#059669}.signup-form{display:flex;flex-direction:column;gap:20px}.form-group label{font-size:14px;font-weight:600;color:#374151}.form-group.optional label{display:flex;align-items:center;gap:8px}.optional-tag{font-size:11px;font-weight:500;color:#9ca3af;background:#f3f4f6;padding:2px 8px;border-radius:4px}.form-group input{width:100%;padding:14px 16px;font-size:16px;border:1.5px solid #e5e7eb;border-radius:10px;background:#fafafa;color:#111827;transition:all .2s ease}.form-group input:focus{outline:none;border-color:#6366f1;background:#fff;box-shadow:0 0 0 3px #6366f126}.form-group input::placeholder{color:#9ca3af}.form-group input:disabled{opacity:.6;cursor:not-allowed}.dob-inputs{display:flex;align-items:center;gap:8px}.dob-field{text-align:center;flex:1}.dob-field.dob-year{flex:1.5}.dob-separator{color:#9ca3af;font-size:18px;font-weight:300}.ssn-input{max-width:140px;letter-spacing:4px;font-family:monospace}.field-hint{font-size:12px;color:#9ca3af;margin:4px 0 0}.field-error{font-size:12px;color:#dc2626;margin:4px 0 0}.field-success{font-size:12px;color:#059669;margin:4px 0 0}.password-input-wrapper{position:relative}.password-input-wrapper input{padding-right:50px}.toggle-password{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:18px;cursor:pointer;padding:4px;opacity:.6;transition:opacity .2s}.toggle-password:hover{opacity:1}.password-strength{display:flex;align-items:center;gap:12px;margin-top:8px}.strength-bars{display:flex;gap:4px;flex:1}.strength-bar{height:4px;flex:1;background:#e5e7eb;border-radius:2px;transition:background .3s ease}.strength-label{font-size:12px;font-weight:500;white-space:nowrap}.password-requirements{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:4px}.password-requirements li{font-size:12px;color:#9ca3af;display:flex;align-items:center;gap:6px}.password-requirements li:before{content:"○";font-size:10px}.password-requirements li.met{color:#059669}.password-requirements li.met:before{content:"●"}.form-error{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:10px}.form-error .error-icon{font-size:18px;line-height:1}.form-error p{margin:0;font-size:14px;color:#991b1b}.form-error .attempts-warning{margin-top:4px;font-size:12px;color:#b91c1c;font-weight:500}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 24px;font-size:15px;font-weight:600;color:#fff;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:10px;cursor:pointer;transition:all .2s ease}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px #6366f159}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{opacity:.7;cursor:not-allowed}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 24px;font-size:15px;font-weight:600;color:#374151;background:#f3f4f6;border:none;border-radius:10px;cursor:pointer;transition:all .2s ease}.btn-secondary:hover:not(:disabled){background:#e5e7eb}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.btn-full{width:100%}.btn-large{padding:16px 28px;font-size:16px}.form-actions{display:flex;gap:12px;margin-top:8px}.form-actions .btn-secondary{flex:0 0 auto}.form-actions .btn-primary{flex:1}.spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.spinner-large{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#6366f1;border-radius:50%;animation:spin .8s linear infinite}.signup-loading{display:flex;flex-direction:column;align-items:center;gap:16px;padding:60px 20px}.signup-loading p{font-size:15px;color:#6b7280;margin:0}.signup-error-state{text-align:center;padding:20px 0}.signup-error-state .error-icon{font-size:48px;margin-bottom:16px}.signup-error-state h2{font-size:20px;font-weight:700;color:#111827;margin:0 0 8px}.signup-error-state p{font-size:14px;color:#6b7280;margin:0 0 8px;line-height:1.5}.signup-error-state .help-text{font-size:13px;color:#9ca3af;margin-bottom:24px}.signup-help{margin-top:24px;padding-top:20px;border-top:1px solid #f3f4f6;text-align:center}.signup-help p{font-size:13px;color:#9ca3af;margin:0}.terms-notice{font-size:12px;color:#9ca3af;text-align:center;margin-top:20px;line-height:1.5}.terms-notice a{color:#6366f1;text-decoration:none}.terms-notice a:hover{text-decoration:underline}.security-badge{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;font-size:12px;color:#6b7280;background:#ffffffb3;border-radius:8px}.security-badge svg{color:#059669}.success-card{text-align:center}.success-animation{margin-bottom:24px}.success-circle{width:80px;height:80px;margin:0 auto}.checkmark{width:80px;height:80px;border-radius:50%}.checkmark-circle{stroke-dasharray:166;stroke-dashoffset:166;stroke-width:2;stroke-miterlimit:10;stroke:#059669;fill:#d1fae5;animation:stroke .6s cubic-bezier(.65,0,.45,1) forwards}.checkmark-check{transform-origin:50% 50%;stroke-dasharray:48;stroke-dashoffset:48;stroke-width:3;stroke:#059669;animation:stroke .3s cubic-bezier(.65,0,.45,1) .5s forwards}@keyframes stroke{to{stroke-dashoffset:0}}.success-header h1{font-size:24px;font-weight:700;color:#111827;margin:0 0 8px}.success-header .subtitle{font-size:15px;color:#6b7280}.whats-next{text-align:left;margin:28px 0;padding:20px;background:#f9fafb;border-radius:12px}.whats-next h3{font-size:14px;font-weight:600;color:#374151;margin:0 0 16px}.features-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.features-list li{display:flex;align-items:center;gap:12px;font-size:14px;color:#4b5563}.feature-icon{font-size:18px;width:24px;text-align:center}.app-suggestion{margin-top:20px;padding:12px 16px;background:#eff6ff;border-radius:8px}.app-suggestion p{margin:0;font-size:13px;color:#1e40af}@media (min-width: 640px){.signup-page{padding:32px}.signup-container{max-width:520px}.signup-card{padding:40px 36px;border-radius:20px}.signup-header h1{font-size:26px}.progress-steps{gap:4px}.step-num{width:36px;height:36px;font-size:14px}.step-label{font-size:12px}.step-line{width:60px}}@media (min-width: 1024px){.signup-page{padding:48px}.signup-container{max-width:560px}.signup-card{padding:48px 44px}.signup-header h1{font-size:28px}.org-logo svg{width:64px;height:64px}.welcome-message,.success-message{padding:18px 20px}.form-group input{padding:16px 18px}.btn-primary,.btn-secondary{padding:16px 28px;font-size:16px}.whats-next{padding:24px}.features-list{gap:14px}}@media (min-width: 1280px){.signup-page{background:linear-gradient(135deg,#eef2ff,#faf5ff)}.signup-container{max-width:600px}}@media (prefers-reduced-motion: reduce){.signup-card{animation:none}.checkmark-circle,.checkmark-check{animation:none;stroke-dashoffset:0}.spinner,.spinner-large{animation:none}}.code-entry-form{display:flex;flex-direction:column;gap:20px}.code-input{width:100%;padding:16px 20px;font-size:24px;font-family:SF Mono,Monaco,Consolas,monospace;font-weight:600;letter-spacing:4px;text-align:center;text-transform:uppercase;border:2px solid #e5e7eb;border-radius:12px;background:#f9fafb;color:#111827;transition:all .2s ease}.code-input:focus{outline:none;border-color:#6366f1;background:#fff;box-shadow:0 0 0 4px #6366f11a}.code-input::placeholder{font-size:16px;letter-spacing:0;color:#9ca3af;font-weight:400}.signup-footer{text-align:center;margin-top:24px;padding-top:20px;border-top:1px solid #e5e7eb}.signup-footer p{margin:0;font-size:14px;color:#6b7280}.link-btn{background:none;border:none;color:#6366f1;font-weight:600;cursor:pointer;padding:0;font-size:inherit}.link-btn:hover{text-decoration:underline}.error-actions{display:flex;gap:12px;flex-direction:column;width:100%}@media (min-width: 400px){.error-actions{flex-direction:row;justify-content:center}}.sms-consent-box{background:#f0f4ff;border:1px solid #c7d2fe;border-radius:10px;padding:14px 16px;margin-bottom:4px}.sms-consent-label{display:flex;align-items:flex-start;gap:12px;cursor:pointer}.sms-consent-checkbox{flex-shrink:0;width:18px;height:18px;margin-top:2px;accent-color:#6366f1;cursor:pointer}.sms-consent-text{font-size:13px;line-height:1.6;color:#374151}.sms-consent-text strong{color:#1f2937}.sms-consent-text a{color:#6366f1;text-decoration:none}.sms-consent-text a:hover{text-decoration:underline}.sms-consent-note{font-size:11.5px;color:#6b7280;margin:8px 0 0 30px;line-height:1.5}.intake-shell{min-height:100vh;background:var(--bg-page);display:flex;flex-direction:column;font-family:var(--font-sans);color:var(--text-primary)}.intake-topbar{background:var(--gray-900);color:#fff;padding:0 var(--space-6);height:60px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;position:sticky;top:0;z-index:100;box-shadow:0 2px 8px #0000002e}.intake-topbar-logo{display:flex;align-items:center;gap:var(--space-3)}.intake-topbar-logo img{height:30px;width:auto;object-fit:contain}.intake-topbar-orgname{font-size:var(--text-base);font-weight:var(--font-semibold);color:#fff;letter-spacing:-.01em}.intake-topbar-secure{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:#fff9}.intake-topbar-secure svg{width:14px;height:14px;color:#34d399}.intake-body{flex:1;display:flex;flex-direction:column;align-items:center;padding:var(--space-6) var(--space-4) var(--space-12)}.intake-card{background:var(--bg-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);width:100%;max-width:680px;overflow:hidden}.intake-progress-bar-wrap{width:100%;max-width:680px;margin-bottom:var(--space-4)}.intake-progress-label{display:flex;justify-content:space-between;align-items:center;font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-2)}.intake-progress-track{height:6px;background:var(--bg-muted);border-radius:var(--radius-full);overflow:hidden}.intake-progress-fill{height:100%;background:linear-gradient(90deg,var(--brand-primary) 0%,var(--brand-secondary) 100%);border-radius:var(--radius-full);transition:width .4s ease}.intake-card-header{background:linear-gradient(135deg,var(--gray-900) 0%,#1e3a6e 100%);padding:var(--space-8) var(--space-8);color:#fff}.intake-card-header-tag{display:inline-flex;align-items:center;gap:var(--space-2);background:#ffffff1f;color:#ffffffd9;font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:var(--radius-full);margin-bottom:var(--space-4)}.intake-card-header h1{font-size:var(--text-2xl);font-weight:var(--font-bold);line-height:var(--leading-tight);margin:0 0 var(--space-2);color:#fff}.intake-card-header p{font-size:var(--text-base);color:#ffffffbf;margin:0;line-height:var(--leading-relaxed)}.intake-card-body{padding:var(--space-8)}@media (max-width: 480px){.intake-card-header,.intake-card-body{padding:var(--space-6) var(--space-5)}}.intake-gate-patient-pill{display:flex;align-items:center;gap:var(--space-4);background:var(--bg-subtle);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);margin-bottom:var(--space-6)}.intake-gate-avatar{width:48px;height:48px;border-radius:50%;background:var(--brand-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:var(--text-xl);font-weight:var(--font-bold);flex-shrink:0}.intake-gate-patient-info strong{display:block;font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary)}.intake-gate-patient-info span{font-size:var(--text-sm);color:var(--text-secondary)}.intake-form-list{list-style:none;padding:0;margin:0 0 var(--space-6);display:flex;flex-direction:column;gap:var(--space-2)}.intake-form-list li{display:flex;align-items:flex-start;gap:var(--space-3);font-size:var(--text-base);color:var(--text-secondary);padding:var(--space-3) var(--space-4);background:var(--bg-subtle);border-radius:var(--radius-md)}.intake-form-list li svg{width:16px;height:16px;color:var(--brand-primary);flex-shrink:0;margin-top:2px}.intake-form-list li.done{color:var(--success)}.intake-form-list li.done svg{color:var(--success)}.intake-portal-offer-icon{width:64px;height:64px;border-radius:50%;background:var(--info-light);color:var(--info-dark);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-4)}.intake-portal-offer-icon svg{width:32px;height:32px}.intake-portal-benefits{list-style:none;padding:0;margin:var(--space-4) 0 var(--space-6);display:flex;flex-direction:column;gap:var(--space-2)}.intake-portal-benefits li{display:flex;align-items:flex-start;gap:var(--space-3);font-size:var(--text-sm);color:var(--text-secondary)}.intake-portal-benefits li svg{width:16px;height:16px;color:var(--success);flex-shrink:0;margin-top:1px}.intake-form-step-header{display:flex;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-6)}.intake-form-step-counter{background:var(--brand-primary);color:#fff;font-size:var(--text-sm);font-weight:var(--font-bold);border-radius:var(--radius-full);width:32px;height:32px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}.intake-form-step-titles h2{font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--text-primary);margin:0 0 var(--space-1)}.intake-form-step-titles p{font-size:var(--text-sm);color:var(--text-secondary);margin:0}.intake-section{margin-bottom:var(--space-6);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.intake-section:last-child{margin-bottom:0}.intake-section-header{background:var(--bg-subtle);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-color)}.intake-section-header h3{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-primary);margin:0 0 var(--space-1)}.intake-section-header p{font-size:var(--text-sm);color:var(--text-secondary);margin:0}.intake-section-body{padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}.intake-readonly-text{font-size:var(--text-sm);color:var(--text-secondary);line-height:var(--leading-relaxed);white-space:pre-wrap;word-break:break-word}.intake-readonly-text.heading{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary)}.intake-readonly-text.bold{font-weight:var(--font-semibold);color:var(--text-primary)}.intake-field-label-text{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-2);display:block}.intake-readonly-text+.intake-readonly-text{margin-top:var(--space-1)}.intake-field{display:flex;flex-direction:column;gap:var(--space-2)}.intake-field label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary)}.intake-field label .required-mark{color:var(--danger);margin-left:2px}.intake-input,.intake-select,.intake-textarea{width:100%;padding:10px 14px;border:1.5px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--text-base);font-family:var(--font-sans);color:var(--text-primary);background:var(--bg-card);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);box-sizing:border-box;-webkit-appearance:none}.intake-input:focus,.intake-select:focus,.intake-textarea:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 3px #3b82f61f}.intake-textarea{resize:vertical;min-height:90px}.intake-radio-group,.intake-checkbox-group{display:flex;flex-direction:column;gap:var(--space-2)}.intake-option{display:flex;align-items:flex-start;gap:var(--space-3);cursor:pointer;padding:var(--space-3) var(--space-4);border:1.5px solid var(--border-color);border-radius:var(--radius-md);transition:border-color var(--transition-fast),background var(--transition-fast)}.intake-option:hover{border-color:var(--brand-primary-light);background:var(--bg-active)}.intake-option input{margin-top:2px;accent-color:var(--brand-primary);flex-shrink:0;width:16px;height:16px;cursor:pointer}.intake-option.selected{border-color:var(--brand-primary);background:var(--bg-active)}.intake-option-label{font-size:var(--text-sm);color:var(--text-secondary);line-height:var(--leading-relaxed);cursor:pointer}.intake-signature-pad{border:1.5px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.intake-signature-tabs{display:flex;border-bottom:1px solid var(--border-color)}.intake-signature-tab{flex:1;padding:var(--space-3) var(--space-4);border:none;background:var(--bg-subtle);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;gap:var(--space-2)}.intake-signature-tab svg{width:15px;height:15px}.intake-signature-tab.active{background:var(--bg-card);color:var(--brand-primary);font-weight:var(--font-semibold);border-bottom:2px solid var(--brand-primary)}.intake-signature-canvas-wrap{position:relative;background:#fff}.intake-signature-canvas{display:block;width:100%;height:200px;cursor:crosshair;touch-action:none}.intake-signature-canvas-placeholder{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.intake-signature-canvas-placeholder span{font-size:var(--text-sm);color:var(--text-muted);-webkit-user-select:none;user-select:none;font-style:italic}.intake-signature-canvas-line{position:absolute;bottom:48px;left:var(--space-6);right:var(--space-6);height:1px;background:var(--border-medium);pointer-events:none}.intake-signature-type-wrap{padding:var(--space-5);background:#fff}.intake-signature-type-input{width:100%;font-family:Georgia,Times New Roman,serif;font-size:28px;font-style:italic;color:var(--gray-800);border:none;border-bottom:2px solid var(--border-medium);border-radius:0;padding:var(--space-3) 0 var(--space-2);background:transparent;box-sizing:border-box;text-align:center}.intake-signature-type-input:focus{outline:none;border-bottom-color:var(--brand-primary)}.intake-signature-type-input::placeholder{color:var(--text-muted);font-style:italic;font-size:var(--text-lg)}.intake-signature-actions{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-color);background:var(--bg-subtle);font-size:var(--text-xs);color:var(--text-muted)}.intake-signature-clear-btn{background:none;border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:4px 10px;font-size:var(--text-xs);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.intake-signature-clear-btn:hover{background:var(--bg-hover);border-color:var(--border-medium)}.intake-signature-note{font-size:var(--text-xs);color:var(--text-muted);margin-top:var(--space-2);line-height:var(--leading-relaxed);padding:var(--space-3) var(--space-4);background:var(--bg-subtle);border-radius:var(--radius-md);border-left:3px solid var(--brand-primary)}.intake-attestation{background:var(--info-light);border:1px solid rgba(2,132,199,.2);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5);font-size:var(--text-sm);color:var(--info-dark);line-height:var(--leading-relaxed);margin-bottom:var(--space-4)}.intake-actions{display:flex;gap:var(--space-3);margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--border-color)}.intake-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:12px var(--space-6);border-radius:var(--radius-md);font-size:var(--text-base);font-weight:var(--font-semibold);cursor:pointer;border:none;transition:all var(--transition-fast);white-space:nowrap}.intake-btn svg{width:16px;height:16px}.intake-btn-primary{background:var(--brand-primary);color:#fff;flex:1}.intake-btn-primary:hover:not(:disabled){background:var(--brand-primary-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.intake-btn-primary:disabled{opacity:.55;cursor:not-allowed}.intake-btn-secondary{background:var(--bg-subtle);color:var(--text-secondary);border:1.5px solid var(--border-color)}.intake-btn-secondary:hover{background:var(--bg-muted);color:var(--text-primary)}.intake-btn-ghost{background:transparent;color:var(--text-secondary);text-decoration:underline}.intake-btn-ghost:hover{color:var(--text-primary)}.intake-btn-success{background:var(--success);color:#fff;flex:1}.intake-btn-success:hover:not(:disabled){background:var(--success-dark)}.intake-state-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-16) var(--space-6);text-align:center;min-height:calc(100vh - 60px)}.intake-state-icon{width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-5)}.intake-state-icon svg{width:36px;height:36px}.intake-state-icon.loading{background:var(--info-light);color:var(--info-dark)}.intake-state-icon.invalid{background:var(--danger-light);color:var(--danger)}.intake-state-icon.expired{background:var(--warning-light);color:var(--warning-dark)}.intake-state-icon.done{background:var(--success-light);color:var(--success-dark)}.intake-state-screen h2{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--text-primary);margin:0 0 var(--space-3)}.intake-state-screen p{font-size:var(--text-base);color:var(--text-secondary);margin:0;max-width:400px;line-height:var(--leading-relaxed)}.intake-spinner{width:36px;height:36px;border:3px solid rgba(30,64,175,.2);border-top-color:var(--brand-primary);border-radius:50%;animation:intake-spin .7s linear infinite;margin:var(--space-2) auto}@keyframes intake-spin{to{transform:rotate(360deg)}}.intake-field-error{font-size:var(--text-xs);color:var(--danger);display:flex;align-items:center;gap:var(--space-1)}.intake-input.has-error,.intake-textarea.has-error,.intake-select.has-error{border-color:var(--danger)}.intake-portal-form{display:flex;flex-direction:column;gap:var(--space-4);margin-top:var(--space-4)}.intake-portal-form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}@media (max-width: 480px){.intake-portal-form-row{grid-template-columns:1fr}}.intake-done-summary{margin:var(--space-5) auto 0;max-width:400px;background:var(--success-light);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);font-size:var(--text-sm);color:var(--success-dark);text-align:center}.intake-form-type-tag{display:inline-flex;align-items:center;gap:3px;margin-left:6px;padding:1px 6px;border-radius:var(--radius-full, 999px);font-size:10px;font-weight:600;letter-spacing:.02em;vertical-align:middle;line-height:16px}.intake-form-type-demographics{background:#dbeafe;color:#1e40af}.intake-form-type-consent{background:#d1fae5;color:#065f46}.intake-form-type-scored{background:#ede9fe;color:#4c1d95}.intake-form-type-questionnaire{background:#fef3c7;color:#92400e}.intake-change-pending-badge{display:inline-flex;align-items:center;gap:3px;margin-left:6px;padding:1px 6px;border-radius:var(--radius-full, 999px);background:#fee2e2;color:#991b1b;font-size:10px;font-weight:600;vertical-align:middle;line-height:16px}.intake-prefill-notice{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af;font-size:var(--text-sm);margin-bottom:var(--space-4);line-height:1.5}.intake-prefill-notice svg{color:#3b82f6;margin-top:2px}.intake-field-change-warning{display:flex;align-items:center;gap:4px;margin-top:4px;padding:3px 8px;border-radius:var(--radius-sm);background:#fff7ed;border:1px solid #fed7aa;color:#c2410c;font-size:11px;font-weight:500}.intake-field-change-warning svg{flex-shrink:0;color:#ea580c}.legal-page{min-height:100vh;background:#f8f9fb;display:flex;justify-content:center;padding:24px 16px 48px}.legal-container{width:100%;max-width:740px;display:flex;flex-direction:column;gap:0}.legal-header{display:flex;align-items:center;gap:16px;padding-bottom:24px}.legal-back-btn{display:flex;align-items:center;gap:6px;background:none;border:1px solid #e5e7eb;border-radius:8px;padding:8px 14px;font-size:14px;color:#374151;cursor:pointer;transition:background .15s,border-color .15s}.legal-back-btn:hover{background:#f3f4f6;border-color:#d1d5db}.legal-logo{margin-left:auto}.legal-content{background:#fff;border-radius:16px;border:1px solid #e5e7eb;padding:40px 48px;box-shadow:0 1px 4px #0000000f}.legal-content h1{font-size:28px;font-weight:700;color:#111827;margin:0 0 6px}.legal-effective{font-size:14px;color:#6b7280;margin:0 0 28px;padding-bottom:24px;border-bottom:1px solid #f3f4f6}.legal-content h2{font-size:17px;font-weight:650;color:#1f2937;margin:32px 0 10px}.legal-content p{font-size:15px;line-height:1.7;color:#374151;margin:0 0 12px}.legal-content ul{margin:8px 0 14px 20px;padding:0}.legal-content ul li{font-size:15px;line-height:1.7;color:#374151;margin-bottom:4px}.legal-content a{color:#6366f1;text-decoration:none}.legal-content a:hover{text-decoration:underline}.legal-contact{background:#f8f9fb;border:1px solid #e5e7eb;border-radius:10px;padding:16px 20px;margin-top:8px}.legal-contact p{margin:0 0 4px}.legal-contact p:last-child{margin:0}.legal-footer{text-align:center;padding:24px 0 0;font-size:13px;color:#9ca3af;display:flex;flex-direction:column;gap:6px}.legal-footer-links{display:flex;justify-content:center;gap:10px;align-items:center}.legal-footer-links a{color:#9ca3af;text-decoration:none;transition:color .15s}.legal-footer-links a:hover{color:#6366f1}@media (max-width: 600px){.legal-content{padding:28px 20px}.legal-content h1{font-size:22px}}.home-page{background:var(--bg-page)}.home-header{display:flex;align-items:center;justify-content:space-between;padding:0;border-radius:0;background:transparent;color:var(--text-primary);box-shadow:none;margin:var(--space-2) 0 var(--space-5)}.home-greeting{display:flex;align-items:center;gap:var(--space-4)}.home-header-right{display:flex;align-items:center;gap:var(--space-3);position:relative}.client-switcher{position:relative}.client-avatar-btn{display:flex;align-items:center;gap:var(--space-1);background:none;border:none;cursor:pointer;padding:0}.client-avatar{width:44px;height:44px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--brand-primary) 0%,var(--brand-accent, var(--brand-primary)) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:var(--font-bold);font-size:var(--text-sm);box-shadow:var(--shadow-sm);flex-shrink:0;transition:box-shadow var(--transition-fast)}.client-avatar-btn:hover .client-avatar{box-shadow:var(--shadow-md)}.client-chevron{color:var(--text-secondary);transition:transform var(--transition-fast);display:flex;align-items:center}.client-chevron.open{transform:rotate(180deg)}.client-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:220px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);z-index:200;overflow:hidden;animation:dropdownIn .12s ease}@keyframes dropdownIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.client-dropdown-label{font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;padding:var(--space-3) var(--space-4) var(--space-2);margin:0}.client-dropdown-item{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);background:transparent;border:none;cursor:pointer;text-align:left;transition:background var(--transition-fast)}.client-dropdown-item:hover{background:var(--bg-hover)}.client-dropdown-item.active{background:var(--bg-active)}.client-dropdown-avatar{width:34px;height:34px;border-radius:var(--radius-full);background:var(--brand-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:var(--text-xs);font-weight:var(--font-semibold);flex-shrink:0}.client-dropdown-info{flex:1;display:flex;flex-direction:column}.client-dropdown-name{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary)}.client-dropdown-rel{font-size:var(--text-xs);color:var(--text-tertiary)}.client-dropdown-footer{border-top:1px solid var(--border-color);padding:var(--space-2) var(--space-3)}.client-add-btn{width:100%;padding:var(--space-2) var(--space-3);border:none;background:transparent;color:var(--text-link);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;text-align:left;border-radius:var(--radius-md);transition:background var(--transition-fast)}.client-add-btn:hover{background:var(--bg-hover)}.greeting-text h1{margin:0;font-size:var(--text-2xl);font-weight:var(--font-semibold);color:var(--text-primary)}.greeting-text p{margin:var(--space-1) 0 0 0;font-size:var(--text-sm);color:var(--text-secondary)}.notification-btn{position:relative;width:44px;height:44px;border-radius:var(--radius-lg);border:1px solid var(--border-color);background:#fff;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition-fast)}.notification-btn:hover{background:var(--bg-hover)}.notification-badge{position:absolute;top:6px;right:6px;min-width:18px;height:18px;padding:0 4px;border-radius:var(--radius-full);background:var(--danger);color:#fff;font-size:var(--text-xs);font-weight:var(--font-semibold);display:flex;align-items:center;justify-content:center;border:2px solid rgba(255,255,255,.7)}.home-section{margin-bottom:var(--space-6)}.home-section h2{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin:0}.home-section>h2{margin-bottom:var(--space-3)}.view-all-link{color:var(--text-link);font-size:var(--text-sm);font-weight:var(--font-medium)}.view-all-link:hover{color:var(--text-link-hover)}.appointments-list{display:flex;flex-direction:column;gap:var(--space-4)}.appointment-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;padding:var(--space-4);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-fast),transform var(--transition-fast)}.appointment-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.appointment-content{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4)}.doctor-info{display:flex;align-items:center;gap:var(--space-3);flex:1}.doctor-avatar{width:52px;height:52px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--bg-subtle) 0%,var(--bg-muted) 100%);color:var(--brand-primary);display:flex;align-items:center;justify-content:center;font-weight:var(--font-semibold);font-size:var(--text-sm);flex-shrink:0}.doctor-details h3{margin:0;font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-primary)}.specialty{margin:var(--space-1) 0;font-size:var(--text-sm);color:var(--text-secondary)}.appointment-meta{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.appointment-time,.appointment-type{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-sm);color:var(--text-secondary)}.appointment-time svg,.appointment-type svg{width:16px;height:16px}.chevron-btn{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:var(--space-1);display:flex;align-items:center;justify-content:center}.chevron-btn:hover{color:var(--brand-primary)}.appointment-actions{display:flex;gap:var(--space-3)}.btn-secondary,.btn-primary{flex:1;padding:9px 14px;border-radius:14px;font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-fast);border:none}.btn-secondary{background:#fff;color:var(--brand-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--bg-active)}.btn-primary{background:linear-gradient(135deg,var(--brand-primary) 0%,var(--brand-accent) 100%);color:#fff;box-shadow:var(--shadow-sm)}.btn-primary:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.empty-card{background:var(--bg-card);border:1px dashed var(--border-medium);border-radius:var(--radius-xl);padding:var(--space-6);text-align:center;color:var(--text-tertiary)}.quick-actions{display:flex;gap:var(--space-3);overflow-x:auto;padding-bottom:var(--space-2)}.action-pill{display:inline-flex;align-items:center;gap:var(--space-2);padding:8px 14px;border-radius:8px;border:1px solid var(--border-color);background:#fff;color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--font-medium);text-decoration:none;box-shadow:none;white-space:nowrap}.action-pill:hover{color:var(--text-primary);border-color:var(--border-medium)}.action-pill-icon{width:30px;height:30px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:var(--bg-subtle)}.action-pill-icon.upload{background:#d1fae5;color:var(--success-dark)}.action-pill-icon.chat{background:#dbeafe;color:var(--info-dark)}.action-pill-icon.reminder{background:#fef3c7;color:var(--warning-dark)}.action-pill-icon svg{width:18px;height:18px}.action-pill-text{font-size:var(--text-sm)}.records-list{display:flex;flex-direction:column;gap:var(--space-3)}.record-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:16px;padding:var(--space-4);display:flex;align-items:center;gap:var(--space-3);box-shadow:var(--shadow-xs);transition:box-shadow var(--transition-fast),transform var(--transition-fast)}.record-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.record-icon{width:44px;height:44px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.record-icon.lab{background:#fde2f3;color:#db2777}.record-icon.medication{background:#e0e7ff;color:#4338ca}.record-content{flex:1}.record-content h3{margin:0;font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary)}.record-subtitle{margin:var(--space-1) 0 0 0;font-size:var(--text-xs);color:var(--text-tertiary)}.record-provider{margin:var(--space-1) 0 0 0;font-size:var(--text-xs);color:var(--text-secondary)}.download-btn{width:36px;height:36px;border-radius:var(--radius-md);border:none;background:var(--bg-subtle);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.download-btn:hover{background:var(--bg-active);color:var(--brand-primary)}@media (max-width: 767px){.home-header{display:none}}@media (max-width: 768px){.home-header{padding:0}.greeting-text h1{font-size:var(--text-xl)}.appointment-actions{flex-direction:column}}@media (max-width: 480px){.user-avatar{width:48px;height:48px}.appointment-content{flex-direction:column;align-items:flex-start}.chevron-btn{align-self:flex-end}}.section-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin:0}.org-banner{background:linear-gradient(135deg,rgba(var(--brand-primary-rgb, 99, 102, 241),.08),rgba(var(--brand-primary-rgb, 99, 102, 241),.04));border:1px solid rgba(var(--brand-primary-rgb, 99, 102, 241),.15);border-left:4px solid var(--org-accent, var(--brand-primary));border-radius:var(--radius-xl);padding:var(--space-4) var(--space-5);margin-bottom:var(--space-6)}.org-banner-inner{display:flex;gap:var(--space-4);align-items:flex-start}.org-banner-icon{width:40px;height:40px;border-radius:var(--radius-lg);background:#ffffffb3;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:var(--shadow-xs)}.org-banner-content{flex:1}.org-banner-name{margin:0 0 2px;font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--text-tertiary)}.org-banner-tagline{margin:0 0 var(--space-2);font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-primary);line-height:1.4}.org-banner-body{margin:0;font-size:var(--text-sm);color:var(--text-secondary);line-height:1.6}.quick-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-3)}.quick-tile{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-4) var(--space-2);border-radius:var(--radius-xl);text-decoration:none;border:1px solid transparent;transition:transform var(--transition-fast),box-shadow var(--transition-fast);min-height:88px;text-align:center}.quick-tile:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.quick-tile-icon{width:44px;height:44px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;background:#ffffff2e}.quick-tile-label{font-size:11px;font-weight:var(--font-semibold);line-height:1.3;color:inherit}.quick-tile-badge{position:absolute;top:6px;right:6px;min-width:18px;height:18px;background:#ef4444;color:#fff;border-radius:9px;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 4px}.quick-tile--blue{background:#1e40af;color:#fff;border-color:#1e3a8a}.quick-tile--teal{background:#0f766e;color:#fff;border-color:#0d6460}.quick-tile--purple{background:#6d28d9;color:#fff;border-color:#5b21b6}.quick-tile--pink{background:#be185d;color:#fff;border-color:#9d174d}.quick-tile--orange{background:#c2410c;color:#fff;border-color:#9a3412}.quick-tile--green{background:#15803d;color:#fff;border-color:#166534}.quick-tile--blue:hover{background:#1e3a8a}.quick-tile--teal:hover{background:#0d6460}.quick-tile--purple:hover{background:#5b21b6}.quick-tile--pink:hover{background:#9d174d}.quick-tile--orange:hover{background:#9a3412}.quick-tile--green:hover{background:#166534}.activity-timeline{display:flex;flex-direction:column;gap:0}.timeline-item{display:flex;gap:var(--space-3)}.timeline-connector{display:flex;flex-direction:column;align-items:center;width:36px;flex-shrink:0}.timeline-dot{width:36px;height:36px;border-radius:var(--radius-full);background:var(--bg-subtle);border:2px solid var(--border-color);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:border-color var(--transition-fast)}.timeline-dot.tl-blue{background:#eff6ff;border-color:#93c5fd}.timeline-dot.tl-teal{background:#f0fdfa;border-color:#5eead4}.timeline-dot.tl-pink{background:#fdf2f8;border-color:#f9a8d4}.timeline-dot.tl-green{background:#f0fdf4;border-color:#86efac}.timeline-dot.tl-orange{background:#fff7ed;border-color:#fca5a5}.timeline-emoji{font-size:16px;line-height:1}.timeline-line{width:2px;flex:1;background:var(--border-color);min-height:16px;margin:4px 0}.timeline-body{flex:1;padding-bottom:var(--space-4);display:flex;flex-direction:column;gap:var(--space-1)}.timeline-date{font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;padding-top:8px}.timeline-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4)}.timeline-title{margin:0;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary)}.timeline-meta{margin:var(--space-1) 0 0;font-size:var(--text-xs);color:var(--text-tertiary)}.page-header h1{margin:0 0 var(--space-1);font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--text-primary)}.page-subtitle{margin:0;font-size:var(--text-sm);color:var(--text-secondary)}.filter-bar{display:flex;gap:var(--space-2);overflow-x:auto;padding-bottom:var(--space-2);margin-bottom:var(--space-4)}.filter-chip{padding:6px 14px;border-radius:var(--radius-full);border:1px solid var(--border-color);background:#fff;color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;white-space:nowrap;transition:all var(--transition-fast)}.filter-chip:hover{border-color:var(--brand-primary);color:var(--brand-primary)}.filter-chip.active{background:var(--brand-primary);color:#fff;border-color:var(--brand-primary)}.empty-state{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-10) var(--space-6);color:var(--text-tertiary);text-align:center}.empty-state p{margin:0;font-size:var(--text-sm)}.btn-outline{display:inline-flex;align-items:center;gap:var(--space-2);padding:8px 16px;border-radius:var(--radius-lg);border:1px solid var(--border-color);background:#fff;color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-fast)}.btn-outline:hover{border-color:var(--brand-primary);color:var(--brand-primary)}.results-list{display:flex;flex-direction:column;gap:var(--space-3)}.result-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-xs);transition:box-shadow var(--transition-fast)}.result-card:hover{box-shadow:var(--shadow-md)}.result-card--attention{border-left:3px solid #ef4444}.result-card-header{width:100%;display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);background:transparent;border:none;cursor:pointer;text-align:left}.result-card-left{display:flex;gap:var(--space-3);align-items:flex-start;flex:1}.result-status-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-semibold);white-space:nowrap;flex-shrink:0}.status-normal{background:#d1fae5;color:#065f46}.status-high{background:#fee2e2;color:#991b1b}.status-low{background:#fef3c7;color:#92400e}.status-pending{background:#f3f4f6;color:#6b7280}.result-card-info h3{margin:0 0 var(--space-1);font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary)}.result-meta,.result-dates{margin:0;font-size:var(--text-xs);color:var(--text-tertiary)}.result-chevron{color:var(--text-muted);transition:transform var(--transition-fast)}.result-chevron.open{transform:rotate(180deg)}.result-details{border-top:1px solid var(--border-color);padding:var(--space-4)}.result-table-header,.result-table-row{display:grid;grid-template-columns:2fr 1.5fr 1.5fr .5fr;gap:var(--space-2);padding:var(--space-2) 0;font-size:var(--text-xs)}.result-table-header{font-weight:var(--font-semibold);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-color)}.result-table-row.row--flagged{background:#fff5f5;border-radius:var(--radius-md)}.result-value{font-weight:var(--font-medium);color:var(--text-primary)}.result-unit{font-size:10px;color:var(--text-tertiary)}.result-range{color:var(--text-secondary)}.result-flag{font-weight:var(--font-bold);text-align:center}.flag-high{color:#dc2626}.flag-low{color:#d97706}.flag-normal{color:#16a34a}.result-actions{display:flex;gap:var(--space-3);margin-top:var(--space-3);flex-wrap:wrap}.result-pending-msg p{margin:0;font-size:var(--text-sm);color:var(--text-secondary);font-style:italic}.insurance-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);padding:var(--space-5);box-shadow:var(--shadow-sm)}.insurance-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.insurance-badge{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-secondary)}.ins-status-pill{display:inline-flex;align-items:center;gap:4px;padding:3px 12px;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-semibold)}.ins-status-pill.active{background:#d1fae5;color:#065f46}.ins-status-pill.inactive{background:#f3f4f6;color:#6b7280}.insurance-plan-name{margin:0 0 var(--space-1);font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--text-primary)}.insurance-insurer{margin:0 0 var(--space-4);font-size:var(--text-sm);color:var(--text-secondary)}.insurance-id-row{display:flex;gap:var(--space-4);flex-wrap:wrap;padding:var(--space-4);background:var(--bg-subtle);border-radius:var(--radius-lg);margin-bottom:var(--space-4)}.id-field{display:flex;flex-direction:column;gap:2px}.id-label{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);font-weight:var(--font-semibold)}.id-value{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary);font-family:monospace}.ins-tabs{display:flex;gap:0;border-bottom:1px solid var(--border-color);margin-bottom:var(--space-4)}.ins-tab{padding:var(--space-2) var(--space-4);border:none;background:transparent;color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;border-bottom:2px solid transparent;transition:all var(--transition-fast)}.ins-tab:hover{color:var(--brand-primary)}.ins-tab.active{color:var(--brand-primary);border-bottom-color:var(--brand-primary)}.ins-tab-content{padding:var(--space-2) 0}.coverage-stat{margin-bottom:var(--space-4)}.coverage-stat-header{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2)}.coverage-stat-label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary)}.coverage-stat-value{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--text-primary)}.coverage-stat-sub{font-size:var(--text-sm);font-weight:var(--font-normal);color:var(--text-secondary)}.deductible-progress{height:8px;background:var(--bg-subtle);border-radius:4px;overflow:hidden;margin-bottom:var(--space-2)}.deductible-fill{height:100%;background:linear-gradient(90deg,var(--brand-primary),var(--brand-accent, var(--brand-primary)));border-radius:4px;transition:width .4s ease}.deductible-labels{display:flex;justify-content:space-between;font-size:var(--text-xs);color:var(--text-secondary)}.benefits-list{display:flex;flex-direction:column;gap:var(--space-1)}.benefit-row{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) 0;border-bottom:1px solid var(--border-color)}.benefit-row:last-child{border-bottom:none}.benefit-label{font-size:var(--text-sm);color:var(--text-primary)}.benefit-value{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--brand-primary)}.empty-state-sm{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-8) var(--space-4);text-align:center;color:var(--text-tertiary)}.empty-state-sm p{margin:0;font-size:var(--text-sm)}.text-muted-sm{color:var(--text-tertiary)!important;font-size:var(--text-xs)!important}.insurance-card-footer{display:flex;gap:var(--space-3);margin-top:var(--space-5);flex-wrap:wrap}.billing-summary-card{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);background:linear-gradient(135deg,var(--brand-primary) 0%,var(--brand-accent, var(--brand-primary)) 100%);border-radius:var(--radius-xl);padding:var(--space-5);margin-bottom:var(--space-5);color:#fff}.billing-summary-card--clear{background:#f0fdf4;color:#15803d;justify-content:flex-start;gap:var(--space-3);border:1px solid #bbf7d0;font-size:var(--text-sm);font-weight:var(--font-medium)}.billing-summary-label{margin:0;font-size:var(--text-sm);opacity:.85}.billing-summary-amount{margin:var(--space-1) 0 0;font-size:var(--text-3xl);font-weight:var(--font-bold)}.btn-pay{padding:10px 22px;background:#fff;color:var(--brand-primary);border:none;border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:var(--font-bold);cursor:pointer;white-space:nowrap;transition:all var(--transition-fast)}.btn-pay:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-pay-sm{padding:8px 16px;border-radius:var(--radius-lg);border:none;background:var(--brand-primary);color:#fff;font-size:var(--text-sm);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-fast)}.btn-pay-sm:hover{background:var(--brand-primary-dark, var(--brand-primary));box-shadow:var(--shadow-sm)}.billing-list{display:flex;flex-direction:column;gap:var(--space-3)}.bill-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);padding:var(--space-4);box-shadow:var(--shadow-xs)}.bill-card--overdue{border-left:3px solid #ef4444}.bill-card-top{display:flex;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.bill-info h3{margin:0 0 var(--space-1);font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary)}.bill-meta,.bill-due-date,.bill-paid-date{margin:0;font-size:var(--text-xs);color:var(--text-tertiary)}.bill-due-date{color:#d97706}.bill-status-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-semibold);white-space:nowrap;flex-shrink:0}.status-due{background:#fef3c7;color:#92400e}.status-paid{background:#d1fae5;color:#065f46}.status-overdue{background:#fee2e2;color:#991b1b}.status-active{background:#d1fae5;color:#065f46}.status-stopped{background:#f1f5f9;color:#64748b}.bill-breakdown{background:var(--bg-subtle);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-3)}.bill-line{display:flex;justify-content:space-between;font-size:var(--text-sm);color:var(--text-secondary);padding:3px 0}.bill-line--credit{color:#16a34a}.bill-line--total{font-weight:var(--font-bold);color:var(--text-primary);padding-top:var(--space-2);border-top:1px solid var(--border-color);margin-top:var(--space-2)}.bill-actions{display:flex;gap:var(--space-3);flex-wrap:wrap}@media (max-width: 480px){.quick-tiles{grid-template-columns:repeat(2,1fr)}.result-table-header,.result-table-row{grid-template-columns:2fr 1fr .8fr .4fr;font-size:10px}.insurance-id-row{flex-direction:column;gap:var(--space-3)}.bill-card-top{flex-direction:column}}.community-section{margin-top:var(--space-2)}.community-header{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,#1e1b4b,#3730a3,#6366f1);border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding:16px 18px;color:#fff}.community-header-left{display:flex;align-items:center;gap:12px}.community-fire{font-size:26px;line-height:1}.community-title{font-size:16px;font-weight:700;line-height:1.2;color:#fff}.community-subtitle{font-size:11px;color:#ffffffb3;margin-top:2px}.community-ask-btn{background:#ffffff2e;border:1px solid rgba(255,255,255,.3);color:#fff;font-size:13px;font-weight:600;padding:7px 18px;border-radius:100px;cursor:pointer;transition:background .15s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.community-ask-btn:hover{background:#ffffff47}.community-composer{display:flex;align-items:center;gap:10px;background:var(--bg-card);border:1px solid var(--border-color);border-top:none;padding:12px 16px}.community-composer-avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--brand-primary) 0%,var(--brand-accent, var(--brand-primary)) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}.community-composer-input{flex:1;background:var(--bg-page, #f8fafc);border:1px solid var(--border-color);border-radius:100px;padding:8px 16px;font-size:13px;color:var(--text-tertiary);cursor:text;transition:border-color .15s ease}.community-composer-input:hover{border-color:var(--brand-primary)}.community-topics{display:flex;gap:6px;overflow-x:auto;padding:10px 16px;background:var(--bg-card);border:1px solid var(--border-color);border-top:none;scrollbar-width:none}.community-topics::-webkit-scrollbar{display:none}.community-topic-chip{flex-shrink:0;padding:4px 12px;border-radius:100px;font-size:12px;font-weight:500;background:var(--bg-page, #f1f5f9);color:var(--text-secondary);border:1px solid var(--border-color);cursor:pointer;transition:all .15s ease}.community-topic-chip:first-child{background:var(--brand-primary);color:#fff;border-color:var(--brand-primary)}.community-topic-chip:hover{border-color:var(--brand-primary);color:var(--brand-primary)}.community-feed{display:flex;flex-direction:column;gap:0}.community-post{background:var(--bg-card);border:1px solid var(--border-color);border-top:none;padding:14px 16px;transition:background .15s ease}.community-post:last-child{border-radius:0 0 var(--radius-xl) var(--radius-xl)}.community-post:hover{background:var(--bg-hover, #f8fafc)}.community-post--pinned{background:linear-gradient(180deg,rgba(99,102,241,.04) 0%,transparent 100%)}.community-post-pin{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:600;color:#6366f1;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}.community-post-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.community-post-author{display:flex;align-items:center;gap:9px}.community-author-avatar{width:32px;height:32px;border-radius:50%;color:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0}.community-author-info{display:flex;flex-direction:column;gap:1px}.community-author-name{font-size:13px;font-weight:600;color:var(--text-primary)}.community-author-time{font-size:11px;color:var(--text-tertiary)}.community-post-tag{font-size:11px;font-weight:600;padding:3px 9px;border-radius:100px;white-space:nowrap}.community-post-title{font-size:14px;font-weight:700;color:var(--text-primary);margin:0 0 5px;line-height:1.35}.community-post-body{font-size:13px;color:var(--text-secondary);line-height:1.5;margin:0 0 10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.community-post-actions{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.community-action-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:100px;border:none;background:transparent;font-size:12px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.community-action-btn:hover{background:var(--bg-page, #f1f5f9);color:var(--text-primary)}.community-action-btn--active{color:#e11d48}.community-action-btn--helpful{color:var(--text-secondary)}.community-action-btn--helpful:hover{color:#059669;background:#d1fae5}.community-action-btn--active-helpful{color:#059669!important;background:#d1fae5!important}.community-action-btn--reply{margin-left:auto;color:var(--brand-primary);font-weight:600}.community-action-btn--reply:hover{background:#6366f114}.community-view-more{display:block;width:100%;margin-top:10px;padding:11px;border-radius:var(--radius-xl);border:1px dashed var(--border-color);background:transparent;font-size:13px;font-weight:600;color:var(--brand-primary);cursor:pointer;transition:all .15s ease;text-align:center}.community-view-more:hover{background:#6366f10d;border-color:var(--brand-primary)}.messages-page{display:grid;grid-template-columns:360px 1fr;height:100%;min-height:100%;background:var(--bg-page);gap:0;margin-top:0;padding-top:0}.messages-sidebar{background:#fff;border-right:1px solid var(--border-color);display:flex;flex-direction:column;overflow:hidden}.messages-sidebar-header{padding:var(--space-5);border-bottom:1px solid var(--border-color);display:flex;flex-direction:column;gap:var(--space-4)}.threads-list{flex:1;overflow-y:auto}.thread-item{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border-light);cursor:pointer;transition:background var(--transition-fast);position:relative}.thread-item:hover{background:var(--bg-hover)}.thread-item.active{background:var(--bg-active);border-left:3px solid var(--brand-primary)}.thread-item.unread{background:var(--info-light)}.thread-avatar{width:40px;height:40px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--brand-primary) 0%,var(--brand-accent) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:var(--font-semibold);font-size:var(--text-sm);flex-shrink:0}.thread-content{flex:1;min-width:0}.thread-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-1)}.thread-meta{display:flex;align-items:center;gap:var(--space-2)}.thread-name{font-weight:var(--font-semibold);color:var(--text-primary);font-size:var(--text-sm)}.thread-time{font-size:var(--text-xs);color:var(--text-muted)}.thread-count-pill{font-size:.6875rem;font-weight:600;color:#fff;background:#4f46e5;border-radius:20px;padding:1px 7px;line-height:1.6;letter-spacing:.01em}.thread-subject{font-weight:var(--font-medium);color:var(--text-primary);font-size:var(--text-sm);margin-bottom:var(--space-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.thread-preview{font-size:var(--text-sm);color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.thread-unread-dot{position:absolute;top:var(--space-4);right:var(--space-4);width:10px;height:10px;background:var(--brand-primary);border-radius:var(--radius-full)}.messages-main{display:flex;flex-direction:column;background:#f8fafc;overflow:hidden;height:100%}.message-header{padding:1rem 1.5rem;background:#fff;border-bottom:1px solid var(--border-color);display:flex;flex-direction:column;gap:2px}.message-thread-title{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0}.message-thread-subtitle{font-size:.8125rem;color:var(--text-secondary);margin:0}.messages-container{flex:1;overflow-y:auto;padding:1.5rem 1.5rem 1rem;display:flex;flex-direction:column;gap:1rem;background:#f8fafc}.message-group{display:flex;gap:var(--space-3);align-items:flex-start}.message-group.sent{flex-direction:row-reverse}.message-group.sent .message-bubble-wrapper{align-items:flex-end}.message-avatar{width:36px;height:36px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--brand-primary) 0%,var(--brand-accent) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:var(--font-semibold);font-size:var(--text-xs);flex-shrink:0}.message-bubble-wrapper{display:flex;flex-direction:column;gap:var(--space-1);max-width:65%}.message-sender{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-secondary);padding:0 var(--space-3)}.message-bubble{background:#fff;border:1px solid #e2e8f0;border-radius:0 12px 12px;padding:.625rem .875rem;box-shadow:0 1px 2px #0000000f}.message-group.sent .message-bubble{background:linear-gradient(135deg,#4f46e5,#3730a3);color:#fff;border-color:transparent;border-radius:12px 0 12px 12px}.message-bubble p{margin:0;line-height:1.5;font-size:.9375rem}.message-time{font-size:var(--text-xs);color:var(--text-muted);padding:0 var(--space-3)}.message-attachments{margin-top:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.attachment-preview{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2);background:var(--bg-subtle);border-radius:var(--radius-md)}.message-group.sent .attachment-preview{background:#fff3}.attachment-preview svg{width:20px;height:20px;color:var(--text-secondary);flex-shrink:0}.message-group.sent .attachment-preview svg{color:#fff}.attachment-info{flex:1;min-width:0}.attachment-name{font-size:var(--text-sm);font-weight:var(--font-medium);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.attachment-size{font-size:var(--text-xs);color:var(--text-muted)}.message-group.sent .attachment-size{color:#fffc}.attachment-download{padding:var(--space-1);background:transparent;border:none;color:var(--brand-primary);cursor:pointer;border-radius:var(--radius-sm);transition:background var(--transition-fast)}.attachment-download:hover{background:#0000000d}.message-group.sent .attachment-download{color:#fff}.message-group.sent .attachment-download:hover{background:#fff3}.message-compose{background:#fff;border-top:1px solid #e2e8f0;padding:.875rem 1.25rem 1rem;display:flex;flex-direction:column;gap:.5rem}.message-input{width:100%;padding:.75rem 1rem;background:#f8fafc;color:#0f172a;border:1.5px solid #e2e8f0;border-radius:10px;font-family:inherit;font-size:.9375rem;resize:none;transition:border-color .15s,box-shadow .15s;box-sizing:border-box}.message-input::placeholder{color:#94a3b8}.message-input:focus{outline:none;background:#fff;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.message-compose-actions{n display: flex;n align-items: center;n justify-content: space-between;n gap: .5rem;n}nn.compose-attachments{n display: flex;n flex-wrap: wrap;n gap: .375rem;n padding: .25rem 0;n}nn.compose-attachment{n display: flex;n align-items: center;n gap: .375rem;n padding: .25rem .625rem;n background: #f1f5f9;n border-radius: 6px;n font-size: .8125rem;n color: #475569;n}nn.compose-attachment svg{n width: 14px;n height: 14px;n color: #64748b;n}@media (max-width: 1024px){.messages-page{grid-template-columns:1fr}.messages-sidebar{display:none}.messages-sidebar.mobile-show,.messages-main{display:flex}.message-bubble-wrapper{max-width:80%}}@media (max-width: 640px){.messages-container{padding:var(--space-4)}.message-bubble-wrapper{max-width:85%}.message-compose{padding:var(--space-3)}}.messages-compose-fab{display:none}@media (max-width: 1024px){.messages-compose-fab{display:flex;align-items:center;gap:8px;position:fixed;bottom:24px;right:20px;z-index:120;background:var(--brand-primary, #4f46e5);color:#fff;border:none;border-radius:28px;padding:14px 20px;font-size:15px;font-weight:600;box-shadow:0 4px 16px #4f46e566;cursor:pointer;transition:transform .15s,box-shadow .15s}.messages-compose-fab:hover{transform:translateY(-1px);box-shadow:0 6px 20px #4f46e580}.messages-compose-fab:active{transform:translateY(0)}}.direct-provider-tag{display:flex;align-items:center;gap:var(--space-2);padding:10px var(--space-4);background:#eff6ff;border:1px solid #bfdbfe;border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:var(--font-semibold);color:#1e40af}.messages-back-btn{display:none;align-items:center;gap:var(--space-2);background:none;border:none;color:var(--brand-primary);font-size:var(--text-sm);font-weight:var(--font-medium);padding:0 0 var(--space-3) 0;cursor:pointer}.messages-back-btn:hover{color:var(--brand-accent)}.form-hint{font-size:var(--text-xs);color:var(--text-muted);margin-top:var(--space-1)}@media (max-width: 768px){.messages-page{grid-template-columns:1fr;height:calc(100vh - 60px)}.messages-back-btn,.messages-page.mobile-list-view .messages-sidebar{display:flex}.messages-page.mobile-list-view .messages-main,.messages-page.mobile-thread-view .messages-sidebar{display:none}.messages-page.mobile-thread-view .messages-main,.messages-compose-fab{display:flex}}.appt-form{display:flex;flex-direction:column;gap:1.125rem}.appt-field{display:flex;flex-direction:column;gap:.375rem}.appt-label{font-size:.875rem;font-weight:500;color:var(--text-primary)}.appt-required{color:var(--danger);margin-left:2px}.appt-optional{color:var(--text-tertiary);font-weight:400;font-size:.8125rem;margin-left:4px}.appt-select,.appt-input,.appt-textarea{width:100%;padding:.5625rem .75rem;font-size:.9375rem;font-family:inherit;color:var(--text-primary);background:var(--bg-card);border:1.5px solid var(--border-medium);border-radius:var(--radius-md);outline:none;transition:border-color .15s,box-shadow .15s;box-sizing:border-box}.appt-select:focus,.appt-input:focus,.appt-textarea:focus{border-color:var(--border-focus);box-shadow:0 0 0 3px #3b82f61f}.appt-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2.5rem}.appt-textarea{resize:vertical;min-height:90px;line-height:1.5}.appt-row{display:grid;grid-template-columns:1fr 1fr;gap:.875rem}@media (max-width: 480px){.appt-row{grid-template-columns:1fr}}.appt-time-grid{display:flex;gap:.5rem;flex-wrap:wrap}.appt-time-chip{padding:.375rem 1rem;border-radius:var(--radius-full);border:1.5px solid var(--border-medium);background:var(--bg-card);color:var(--text-secondary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s}.appt-time-chip:hover{border-color:var(--brand-primary);color:var(--brand-primary);background:var(--bg-active)}.appt-time-chip.selected{border-color:var(--brand-primary);background:var(--brand-primary);color:#fff}.appt-error{background:var(--danger-light, #fee2e2);color:var(--danger);border:1px solid var(--danger, #dc2626);border-radius:var(--radius-md);padding:.625rem .875rem;font-size:.875rem}.appt-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.5625rem 1.25rem;border-radius:var(--radius-md);font-size:.9375rem;font-weight:500;cursor:pointer;border:1.5px solid transparent;transition:all .15s;line-height:1}.appt-btn:disabled{opacity:.6;cursor:not-allowed}.appt-btn--primary{background:var(--brand-primary);color:#fff;border-color:var(--brand-primary)}.appt-btn--primary:hover:not(:disabled){background:var(--brand-primary-dark);border-color:var(--brand-primary-dark)}.appt-btn--outline{background:transparent;color:var(--text-secondary);border-color:var(--border-medium)}.appt-btn--outline:hover:not(:disabled){background:var(--bg-subtle);color:var(--text-primary);border-color:var(--border-dark)}.appt-success{padding:2.5rem 1.5rem 2rem;display:flex;flex-direction:column;align-items:center;text-align:center;gap:.625rem}.appt-success-icon{width:72px;height:72px;border-radius:50%;background:var(--success-light, #d1fae5);color:var(--success);display:flex;align-items:center;justify-content:center;margin-bottom:.25rem}.appt-success h3{margin:0;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.appt-success p{margin:0 0 .75rem;font-size:.9375rem;color:var(--text-secondary);max-width:380px;line-height:1.5}.appointments-page{padding:0}.appointments-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-6)}.appointments-actions{display:flex;gap:var(--space-3)}.appointments-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4);margin-bottom:var(--space-6)}.message-encounters-panel{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-6)}.message-encounters-header h2{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-primary);margin:0 0 var(--space-3)}.message-encounters-empty{margin:0;color:var(--text-secondary);font-size:var(--text-sm)}.message-encounters-list{display:flex;flex-direction:column;gap:var(--space-2)}.message-encounter-item{border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-3);display:flex;justify-content:space-between;align-items:center;text-decoration:none;transition:border-color var(--transition-fast),background var(--transition-fast)}.message-encounter-item:hover{border-color:var(--brand-primary);background:var(--surface-muted)}.message-encounter-main{min-width:0}.message-encounter-subject{color:var(--text-primary);font-size:var(--text-sm);font-weight:var(--font-medium);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-encounter-meta{margin-top:2px;color:var(--text-secondary);font-size:var(--text-xs)}.message-encounter-count{color:var(--text-secondary);font-size:var(--text-xs);border:1px solid var(--border-color);border-radius:var(--radius-full);padding:2px 10px;margin-left:var(--space-3);flex-shrink:0}.stat-card{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-4);display:flex;align-items:center;gap:var(--space-3)}.stat-card-icon{width:48px;height:48px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-card-icon.primary{background:var(--primary-light);color:var(--brand-primary)}.stat-card-icon.success{background:var(--success-light);color:var(--success)}.stat-card-icon.info{background:var(--info-light);color:var(--info)}.stat-card-icon svg{width:24px;height:24px}.stat-card-content{flex:1}.stat-card-value{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--text-primary);line-height:1;margin-bottom:var(--space-1)}.stat-card-label{font-size:var(--text-sm);color:var(--text-secondary)}.appointments-tabs{display:flex;gap:var(--space-2);margin-bottom:var(--space-6);border-bottom:2px solid var(--border-color)}.appointments-tab{padding:var(--space-3) var(--space-4);background:transparent;border:none;font-weight:var(--font-medium);color:var(--text-secondary);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all var(--transition-fast)}.appointments-tab:hover{color:var(--text-primary)}.appointments-tab.active{color:var(--brand-primary);border-bottom-color:var(--brand-primary)}.appointment-card{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-5);margin-bottom:var(--space-4);transition:all var(--transition-base)}.appointment-card:hover{box-shadow:var(--shadow-md);border-color:var(--border-hover)}.appointment-card.past{opacity:.8}.appointment-card-header{display:flex;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-4)}.appointment-avatar{width:48px;height:48px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--brand-primary) 0%,var(--brand-accent) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:var(--font-semibold);font-size:var(--text-base);flex-shrink:0}.appointment-info{flex:1}.appointment-type{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-1)}.appointment-provider{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-2)}.appointment-datetime{display:flex;align-items:center;gap:var(--space-4);font-size:var(--text-sm);color:var(--text-primary);margin-bottom:var(--space-2)}.appointment-datetime svg{width:16px;height:16px;color:var(--text-secondary)}.appointment-location{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-secondary)}.appointment-location svg{width:14px;height:14px}.appointment-status-badge{align-self:flex-start}.appointment-details{padding-top:var(--space-4);border-top:1px solid var(--border-light)}.appointment-notes{margin-bottom:var(--space-4)}.appointment-notes-label{font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin-bottom:var(--space-2)}.appointment-notes-content{font-size:var(--text-sm);color:var(--text-primary);line-height:var(--leading-relaxed)}.appointment-actions{display:flex;gap:var(--space-3);flex-wrap:wrap}.appointment-badge-group{display:flex;gap:var(--space-2);align-items:center}.video-badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);background:var(--info-light);color:var(--info);border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:var(--font-medium)}.video-badge svg{width:14px;height:14px}.appointments-empty{text-align:center;padding:var(--space-12) var(--space-6)}.appointments-empty-icon{width:64px;height:64px;margin:0 auto var(--space-4);color:var(--text-muted)}.appointments-empty-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-2)}.appointments-empty-description{font-size:var(--text-base);color:var(--text-secondary);margin-bottom:var(--space-6);max-width:400px;margin-left:auto;margin-right:auto}@media (max-width: 768px){.appointments-header{flex-direction:column;align-items:flex-start;gap:var(--space-4)}.appointments-actions{width:100%}.appointments-actions .btn{flex:1}.appointments-stats{grid-template-columns:1fr}.appointment-card-header{flex-direction:column}.appointment-datetime{flex-direction:column;align-items:flex-start;gap:var(--space-2)}.appointment-actions{flex-direction:column}.appointment-actions .btn{width:100%;justify-content:center}}@media (max-width: 640px){.appointment-card{padding:var(--space-4)}.stat-card{padding:var(--space-3)}.stat-card-icon{width:40px;height:40px}.stat-card-icon svg{width:20px;height:20px}.stat-card-value{font-size:var(--text-xl)}}.forms-page{padding:0}.forms-header{margin-bottom:var(--space-6)}.forms-guarantor-info{margin-top:var(--space-2);padding:var(--space-3);background:var(--info-light);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-secondary)}.forms-guarantor-name{font-weight:var(--font-semibold);color:var(--info)}.forms-tabs{display:flex;gap:var(--space-2);margin-bottom:var(--space-6);border-bottom:2px solid var(--border-color)}.forms-tab{padding:var(--space-3) var(--space-4);background:transparent;border:none;font-weight:var(--font-medium);color:var(--text-secondary);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all var(--transition-fast)}.forms-tab:hover{color:var(--text-primary)}.forms-tab.active{color:var(--brand-primary);border-bottom-color:var(--brand-primary)}.forms-list{display:flex;flex-direction:column;gap:var(--space-4)}.form-card{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-5);transition:all var(--transition-base)}.form-card.clickable{cursor:pointer}.form-card.clickable:hover{box-shadow:var(--shadow-md);border-color:var(--brand-primary)}.form-card.pending{border-left:4px solid var(--brand-primary)}.form-card.completed{border-left:4px solid var(--success);opacity:.9}.form-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-3)}.form-card-icon{width:48px;height:48px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;margin-right:var(--space-3);flex-shrink:0}.form-card-icon.pending{background:var(--primary-light);color:var(--brand-primary)}.form-card-icon.completed{background:var(--success-light);color:var(--success)}.form-card-icon svg{width:24px;height:24px}.form-card-body{display:flex;align-items:flex-start;gap:var(--space-3);flex:1}.form-card-content{flex:1}.form-card-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-1)}.form-card-type{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-2)}.form-card-meta{display:flex;align-items:center;gap:var(--space-4);font-size:var(--text-sm);color:var(--text-secondary)}.form-card-meta svg{width:14px;height:14px}.form-due-date{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);background:var(--warning-light);color:var(--warning);border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--font-medium)}.form-signing-view{max-width:800px;margin:0 auto}.form-back-button{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--brand-primary);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-fast);margin-bottom:var(--space-4)}.form-back-button:hover{background:var(--bg-hover);border-color:var(--brand-primary)}.form-back-button svg{width:16px;height:16px}.attestation-box{padding:var(--space-5);background:var(--bg-subtle);border:1px solid var(--border-color);border-radius:var(--radius-lg);margin-bottom:var(--space-5)}.attestation-box p{margin:0;line-height:var(--leading-relaxed);color:var(--text-primary)}.confirmations-section{margin-bottom:var(--space-6)}.confirmations-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-4)}.confirmation-item{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3);background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:var(--space-3);transition:all var(--transition-fast)}.confirmation-item:hover{background:var(--bg-hover)}.confirmation-item input[type=checkbox]{width:20px;height:20px;margin-top:2px;cursor:pointer;accent-color:var(--brand-primary)}.confirmation-item label{flex:1;font-size:var(--text-sm);line-height:var(--leading-relaxed);color:var(--text-primary);cursor:pointer}.signature-section{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-5);margin-bottom:var(--space-5)}.signature-section-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-4)}.signer-role-tabs{display:flex;gap:var(--space-2);margin-bottom:var(--space-4);padding:var(--space-1);background:var(--bg-subtle);border-radius:var(--radius-md)}.signer-role-tab{flex:1;padding:var(--space-2) var(--space-4);background:transparent;border:none;border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.signer-role-tab.active{background:#fff;color:var(--brand-primary);box-shadow:var(--shadow-sm)}.signature-method-tabs{display:flex;gap:var(--space-2);margin-bottom:var(--space-4)}.signature-method-tab{flex:1;padding:var(--space-3);background:var(--bg-subtle);border:2px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.signature-method-tab:hover{border-color:var(--brand-primary)}.signature-method-tab.active{background:var(--primary-light);border-color:var(--brand-primary);color:var(--brand-primary)}.signature-input{width:100%;padding:var(--space-4);border:2px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--text-lg);font-family:Brush Script MT,cursive;color:var(--text-primary);transition:border-color var(--transition-fast)}.signature-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 3px #1e40af1a}.signature-preview{padding:var(--space-5);background:#fff;border:2px dashed var(--border-color);border-radius:var(--radius-md);text-align:center;margin-top:var(--space-4)}.signature-preview-text{font-size:var(--text-3xl);font-family:Brush Script MT,cursive;color:var(--text-primary)}.signature-canvas-wrapper{position:relative;margin-bottom:var(--space-3)}.signature-canvas{width:100%;height:200px;border:2px solid var(--border-color);border-radius:var(--radius-md);cursor:crosshair;background:#fff;touch-action:none}.signature-canvas.active{border-color:var(--brand-primary)}.signature-clear-button{position:absolute;top:var(--space-2);right:var(--space-2);padding:var(--space-2) var(--space-3);background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--text-secondary);cursor:pointer;box-shadow:var(--shadow-sm);transition:all var(--transition-fast)}.signature-clear-button:hover{background:var(--bg-hover);color:var(--text-primary)}.caregiver-info-section{margin-top:var(--space-4);padding:var(--space-4);background:var(--info-light);border-radius:var(--radius-md)}.caregiver-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3)}.caregiver-info-field{display:flex;flex-direction:column;gap:var(--space-2)}.caregiver-info-label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary)}.form-submit-section{text-align:center;padding-top:var(--space-6);border-top:1px solid var(--border-color)}.form-submit-notice{font-size:var(--text-sm);color:var(--text-muted);margin-top:var(--space-3);line-height:var(--leading-relaxed)}.forms-empty{text-align:center;padding:var(--space-12) var(--space-6)}.forms-empty-icon{width:64px;height:64px;margin:0 auto var(--space-4);color:var(--text-muted)}.forms-empty-icon svg{width:100%;height:100%}.forms-empty-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-2)}.forms-empty-description{font-size:var(--text-base);color:var(--text-secondary);max-width:400px;margin:0 auto}@media (max-width: 768px){.form-card-header{flex-direction:column;gap:var(--space-3)}.form-card-meta{flex-direction:column;align-items:flex-start;gap:var(--space-2)}.caregiver-info-grid{grid-template-columns:1fr}.signature-method-tabs{flex-direction:column}}@media (max-width: 640px){.form-signing-view{padding:0}.signature-section{padding:var(--space-4)}.signature-canvas{height:150px}.signature-preview-text{font-size:var(--text-2xl)}}.account-page{padding:0}.account-header{margin-bottom:var(--space-6)}.account-sections{display:flex;flex-direction:column;gap:var(--space-6)}.profile-avatar-section{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-5);background:var(--bg-subtle);border-radius:var(--radius-lg);margin-bottom:var(--space-5)}.profile-avatar-large{width:80px;height:80px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--brand-primary) 0%,var(--brand-accent) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:var(--font-bold);font-size:var(--text-2xl);flex-shrink:0}.profile-avatar-info{flex:1}.profile-avatar-name{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-1)}.profile-avatar-meta{font-size:var(--text-sm);color:var(--text-secondary)}.account-section{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.account-section-header{padding:var(--space-5);border-bottom:1px solid var(--border-color);display:flex;align-items:center;gap:var(--space-3)}.account-section-icon{width:40px;height:40px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.account-section-icon.primary{background:var(--primary-light);color:var(--brand-primary)}.account-section-icon.info{background:var(--info-light);color:var(--info)}.account-section-icon.warning{background:var(--warning-light);color:var(--warning)}.account-section-icon.success{background:var(--success-light);color:var(--success)}.account-section-icon svg{width:20px;height:20px}.account-section-title-group{flex:1}.account-section-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-1)}.account-section-subtitle{font-size:var(--text-sm);color:var(--text-secondary)}.account-section-body{padding:var(--space-5)}.account-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4);margin-bottom:var(--space-5)}.account-form-grid.full{grid-template-columns:1fr}.account-form-group{display:flex;flex-direction:column;gap:var(--space-2)}.account-form-group.full-width{grid-column:1 / -1}.account-form-label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary)}.account-form-label.required:after{content:" *";color:var(--danger)}.account-form-input,.account-form-select,.account-form-textarea{padding:var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-base);color:var(--text-primary);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.account-form-input:focus,.account-form-select:focus,.account-form-textarea:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 3px #1e40af1a}.account-form-input:disabled,.account-form-select:disabled,.account-form-textarea:disabled{background:var(--bg-disabled);color:var(--text-muted);cursor:not-allowed}.account-form-textarea{resize:vertical;min-height:100px}.account-form-help{font-size:var(--text-xs);color:var(--text-muted);margin-top:var(--space-1)}.account-form-error{font-size:var(--text-xs);color:var(--danger);margin-top:var(--space-1)}.account-form-checkbox{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.account-form-checkbox input[type=checkbox],.account-form-checkbox input[type=radio]{width:18px;height:18px;cursor:pointer}.account-form-checkbox label{font-size:var(--text-sm);color:var(--text-primary);cursor:pointer}.account-section-footer{padding:var(--space-5);background:var(--bg-subtle);border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:var(--space-3)}.account-info-banner{padding:var(--space-4);background:var(--info-light);border:1px solid var(--info);border-radius:var(--radius-md);display:flex;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-5)}.account-info-banner svg{width:20px;height:20px;color:var(--info);flex-shrink:0;margin-top:2px}.account-info-banner-content{flex:1}.account-info-banner-title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-1)}.account-info-banner-text{font-size:var(--text-sm);color:var(--text-secondary);line-height:var(--leading-relaxed)}.account-readonly-field{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3);background:var(--bg-subtle);border-radius:var(--radius-md);margin-bottom:var(--space-3)}.account-readonly-label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-secondary)}.account-readonly-value{font-size:var(--text-base);color:var(--text-primary);font-weight:var(--font-medium)}@media (max-width: 768px){.account-form-grid{grid-template-columns:1fr}.account-section-footer{flex-direction:column}.account-section-footer .btn{width:100%;justify-content:center}.profile-avatar-section{flex-direction:column;text-align:center}}@media (max-width: 640px){.account-section-header,.account-section-body,.account-section-footer{padding:var(--space-4)}.profile-avatar-large{width:64px;height:64px;font-size:var(--text-xl)}}.care-team-list{display:flex;flex-direction:column;gap:var(--space-3)}.provider-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs, var(--shadow-sm));display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);transition:box-shadow var(--transition-fast)}.provider-card:hover{box-shadow:var(--shadow-md)}.provider-avatar{width:52px;height:52px;border-radius:var(--radius-lg);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:var(--font-bold);color:#fff;letter-spacing:.5px}.provider-avatar--blue{background:linear-gradient(135deg,#1e40af,#3b82f6)}.provider-avatar--indigo{background:linear-gradient(135deg,#4338ca,#6366f1)}.provider-avatar--purple{background:linear-gradient(135deg,#6d28d9,#a855f7)}.provider-avatar--teal{background:linear-gradient(135deg,#0f766e,#14b8a6)}.provider-avatar--rose{background:linear-gradient(135deg,#be185d,#f43f5e)}.provider-avatar--amber{background:linear-gradient(135deg,#b45309,#f59e0b)}.provider-avatar--emerald{background:linear-gradient(135deg,#15803d,#22c55e)}.provider-identity{flex:1;min-width:0}.provider-name{font-size:var(--text-sm);font-weight:var(--font-bold);color:var(--text-primary);margin:0 0 1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.provider-role{font-size:var(--text-xs);color:var(--text-secondary);margin:0 0 var(--space-2)}.provider-meta-row{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-3)}.provider-specialty-badge{display:inline-block;font-size:10px;font-weight:var(--font-semibold);color:var(--brand-primary);background:#eff6ff;border:1px solid #bfdbfe;border-radius:20px;padding:1px 8px}.provider-phone{display:flex;align-items:center;gap:4px;font-size:var(--text-xs);color:var(--text-tertiary)}.provider-actions{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.provider-availability{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:var(--font-semibold);color:#16a34a;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:20px;padding:3px 10px;white-space:nowrap}.provider-availability-dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.btn-primary-sm{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;background:var(--brand-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:var(--font-semibold);cursor:pointer;text-decoration:none;transition:background var(--transition-fast);white-space:nowrap}.btn-primary-sm:hover{background:#1e3a8a}.btn-outline-sm{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;background:transparent;color:var(--brand-primary);border:1px solid var(--brand-primary);border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:var(--font-semibold);cursor:pointer;text-decoration:none;transition:background var(--transition-fast);white-space:nowrap}.btn-outline-sm:hover{background:#eff6ff}.care-team-empty{text-align:center;padding:var(--space-12) var(--space-4);color:var(--text-muted);background:var(--bg-card);border:1px dashed var(--border-color);border-radius:var(--radius-xl)}.care-team-empty h3{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-secondary);margin:var(--space-3) 0 var(--space-2)}.care-team-empty p{font-size:var(--text-sm);margin:0}@media (max-width: 600px){.provider-card{flex-wrap:wrap}.provider-actions{width:100%;justify-content:flex-start;padding-left:calc(52px + var(--space-4))}}.care-team-loading,.care-team-error,.care-team-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-10) var(--space-4);text-align:center;color:var(--text-secondary);font-size:var(--text-sm)}.care-team-error{color:var(--color-error, #dc2626)}.ps-root{display:flex;flex-direction:column;gap:var(--space-6);padding:var(--space-6) var(--space-4) var(--space-12);max-width:780px;margin:0 auto;width:100%}.ps-card{width:100%;max-width:100%}.ps-card-header{padding:var(--space-7) var(--space-8)}.ps-card-header h1{font-size:var(--text-xl);margin-bottom:var(--space-1)}.ps-card-header--subtle{background:linear-gradient(135deg,#1e3a5f,#1e3a6e)}.ps-status-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.ps-status-info{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.ps-status-label{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-secondary)}.ps-status-id{font-size:var(--text-xs);color:var(--text-muted);font-family:var(--font-mono, monospace)}.ps-status-features{display:flex;gap:var(--space-2);flex-wrap:wrap}.ps-feature-chip{font-size:var(--text-xs);font-weight:var(--font-semibold);padding:3px 10px;border-radius:var(--radius-full);background:var(--bg-muted);color:var(--text-muted);border:1px solid var(--border-color);transition:background .2s,color .2s}.ps-feature-chip.on{background:var(--success-light, #d1fae5);color:var(--success-dark, #065f46);border-color:var(--success, #10b981)}.ps-badge{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-xs);font-weight:var(--font-semibold);padding:4px 10px;border-radius:var(--radius-full);letter-spacing:.03em}.ps-badge--muted{background:var(--bg-muted);color:var(--text-muted)}.ps-badge--warning{background:#fef3c7;color:#92400e}.ps-badge--success{background:#d1fae5;color:#065f46}.ps-badge--danger{background:#fee2e2;color:#991b1b}.ps-info-banner{display:flex;align-items:flex-start;gap:var(--space-3);margin-top:var(--space-4);padding:var(--space-4);background:#eff6ff;border:1px solid #bfdbfe;border-radius:var(--radius-lg);font-size:var(--text-sm);color:#1e40af;line-height:var(--leading-relaxed)}.ps-info-banner svg{flex-shrink:0;margin-top:1px;color:#3b82f6}.ps-info-banner--success{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}.ps-info-banner--success svg{color:#10b981}.ps-fee-explainer{margin-bottom:var(--space-6)}.ps-fee-row{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-4)}.ps-fee-item{display:flex;align-items:flex-start;gap:var(--space-4);padding:var(--space-4) var(--space-5);background:var(--bg-subtle);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.ps-fee-item--yours{border-color:#a5b4fc;background:#eef2ff}.ps-fee-item--org{border-color:#a7f3d0;background:#ecfdf5}.ps-fee-item>div{display:flex;flex-direction:column;gap:var(--space-1)}.ps-fee-item strong{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary)}.ps-fee-item span{font-size:var(--text-sm);color:var(--text-secondary);line-height:var(--leading-relaxed)}.ps-fee-icon{width:40px;height:40px;border-radius:var(--radius-md);background:#e0e7ff;color:#4f46e5;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ps-fee-icon--stripe{background:#f0f4ff;color:#635bff}.ps-fee-icon--org{background:#d1fae5;color:#059669}.ps-fee-example{padding:var(--space-4);background:var(--bg-card);border:1px dashed var(--border-color);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-secondary);line-height:var(--leading-relaxed)}.ps-fee-example strong{color:var(--text-primary)}.ps-fee-type-row{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.ps-input-prefix-wrap{position:relative;display:flex;align-items:center}.ps-input-prefix{position:absolute;left:14px;font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-secondary);pointer-events:none;z-index:1}.ps-input-prefixed{padding-left:32px!important}.ps-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.ps-field-full{grid-column:1 / -1}@media (max-width: 560px){.ps-field-grid{grid-template-columns:1fr}.ps-field-full{grid-column:1}}.ps-field-hint{font-size:var(--text-xs);color:var(--text-muted);line-height:var(--leading-relaxed)}.ps-field-error{font-size:var(--text-xs);color:var(--danger)}.ps-bank-security-note{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-secondary);padding:var(--space-3) var(--space-4);background:var(--bg-subtle);border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:var(--space-4)}.ps-bank-security-note svg{flex-shrink:0;color:var(--success)}.ps-reveal-wrap{display:flex;gap:var(--space-2)}.ps-reveal-wrap .intake-input{flex:1}.ps-reveal-btn{padding:0 var(--space-4);background:var(--bg-subtle);border:1.5px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-secondary);cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s}.ps-reveal-btn:hover{background:var(--bg-muted);border-color:var(--border-focus)}.ps-input-error{border-color:var(--danger)!important;box-shadow:0 0 0 3px #ef44441a!important}.ps-check-diagram{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);margin-top:var(--space-2);padding:var(--space-4);background:var(--bg-subtle);border-radius:var(--radius-lg);border:1px dashed var(--border-color)}.ps-check-diagram img{max-width:100%;border-radius:var(--radius-md);opacity:.85}.ps-check-caption{font-size:var(--text-xs);color:var(--text-muted);text-align:center}.ps-toggle-option{padding:var(--space-4) var(--space-5)}.ps-toggle-option>div{display:flex;flex-direction:column;gap:var(--space-1)}.ps-toggle-option strong{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary)}.ps-toggle-option span{font-size:var(--text-sm);color:var(--text-secondary);line-height:var(--leading-relaxed)}.intake-option--selected{border-color:var(--brand-primary);background:#eff6ff}.ps-reader-info{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-2);padding:var(--space-4);background:var(--bg-subtle);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.ps-reader-device{display:flex;align-items:center;gap:var(--space-4)}.ps-reader-device-icon{width:40px;height:40px;background:var(--bg-muted);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.ps-reader-device>div{display:flex;flex-direction:column;gap:2px}.ps-reader-device strong{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary)}.ps-reader-device span{font-size:var(--text-xs);color:var(--text-secondary)}.ps-submit-row{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap;padding-top:var(--space-2)}.ps-submit-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:12px 28px;background:var(--brand-primary, #1d4ed8);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--text-base);font-weight:var(--font-semibold);cursor:pointer;transition:background .15s,opacity .15s}.ps-submit-btn:hover:not(.ps-submit-btn--disabled){background:#1e40af}.ps-submit-btn--disabled{opacity:.5;cursor:not-allowed}.ps-submit-btn--secondary{background:var(--bg-subtle);color:var(--text-primary);border:1.5px solid var(--border-color)}.ps-submit-btn--secondary:hover{background:var(--bg-muted)!important}.ps-saved-msg{font-size:var(--text-sm);color:var(--success-dark, #065f46);font-weight:var(--font-medium)}.ps-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:ps-spin .7s linear infinite}@keyframes ps-spin{to{transform:rotate(360deg)}}.ps-link{color:var(--brand-primary, #1d4ed8);text-decoration:underline}.ps-link:hover{text-decoration:none}.vvp-page{display:flex;flex-direction:column;height:100dvh;background:var(--bg-page);color:var(--text-primary);font-family:var(--font-sans);overflow:hidden}.vvp-page--centered{align-items:center;justify-content:center;gap:var(--space-4);padding:var(--space-6);text-align:center;background:var(--bg-page)}.vvp-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);background:var(--bg-card);border-bottom:1px solid var(--border-color);box-shadow:var(--shadow-xs);flex-shrink:0;flex-wrap:wrap}.vvp-header-icon{width:20px;height:20px;color:var(--brand-primary);flex-shrink:0}.vvp-header-icon svg{display:block;width:100%;height:100%}.vvp-header-title{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-primary)}.vvp-status-badge{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);font-weight:var(--font-medium);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);margin-left:auto;background:var(--warning-light);color:var(--warning-dark)}.vvp-status-badge.vvp-status--connected{background:var(--success-light);color:var(--success-dark)}.vvp-status-badge.vvp-status--connected .vvp-status-dot{background:var(--success);animation:none}.vvp-status-dot{width:7px;height:7px;border-radius:50%;background:var(--warning);flex-shrink:0;animation:vvp-pulse 1.6s ease-in-out infinite}@keyframes vvp-pulse{0%,to{opacity:1}50%{opacity:.25}}.vvp-video-area{position:relative;flex:1;background:#04060b;overflow:hidden;min-height:0}.vvp-remote-container{width:100%;height:100%;position:relative;display:flex;align-items:center;justify-content:center}.vvp-remote-video{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.vvp-remote-video video{width:100%;height:100%;object-fit:cover;display:block}.vvp-waiting-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-5);background:#04060be6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:var(--space-6);text-align:center;z-index:5;color:#e8ecf0}.vvp-waiting-anim{position:relative;width:80px;height:80px;display:flex;align-items:center;justify-content:center}.vvp-waiting-inner{position:absolute;width:28px;height:28px;border-radius:50%;background:var(--brand-primary-light)}.vvp-waiting-ring{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:2px solid var(--brand-primary-light);opacity:.6;animation:vvp-expand 2s ease-out infinite;&--2{animation-delay:1s}}@keyframes vvp-expand{0%{transform:scale(.6);opacity:.6}to{transform:scale(1.4);opacity:0}}.vvp-waiting-title{font-size:var(--text-xl);font-weight:var(--font-semibold);margin:0;color:#e8ecf0}.vvp-waiting-sub{font-size:var(--text-sm);color:#8b96a8;max-width:320px;margin:0;line-height:var(--leading-relaxed)}.vvp-local-pip{position:absolute;bottom:var(--space-4);right:var(--space-4);width:140px;height:88px;background:#141921;border:2px solid rgba(255,255,255,.12);border-radius:var(--radius-md);overflow:hidden;z-index:10;box-shadow:var(--shadow-lg)}.vvp-local-pip.vvp-local-pip--off{display:flex;align-items:center;justify-content:center;background:#0a0d14}.vvp-local-video{width:100%;height:100%}.vvp-local-video video{width:100%;height:100%;object-fit:cover;display:block}.vvp-camera-off-text{font-size:var(--text-xs);color:#6b7280}.vvp-controls{display:flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);background:var(--bg-card);border-top:1px solid var(--border-color);box-shadow:var(--shadow-xs);flex-shrink:0}.vvp-ctrl{display:flex;flex-direction:column;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);background:var(--bg-subtle);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;font-size:var(--text-xs);font-weight:var(--font-medium);transition:all var(--transition-fast);min-width:68px}.vvp-ctrl:hover{background:var(--bg-active);color:var(--brand-primary);border-color:var(--brand-primary)}.vvp-ctrl.vvp-ctrl--active{background:var(--danger-light);border-color:var(--danger);color:var(--danger-dark)}.vvp-ctrl.vvp-ctrl--end{background:var(--danger);border-color:var(--danger);color:#fff}.vvp-ctrl.vvp-ctrl--end:hover{background:var(--danger-dark);border-color:var(--danger-dark);color:#fff}.vvp-ctrl-icon{width:20px;height:20px}.vvp-ctrl-icon svg{display:block;width:100%;height:100%}.vvp-ctrl-label{line-height:1}.vvp-spinner{width:44px;height:44px;border:4px solid var(--border-color);border-top-color:var(--brand-primary);border-radius:50%;animation:vvp-spin .75s linear infinite}@keyframes vvp-spin{to{transform:rotate(360deg)}}.vvp-connecting-text{font-size:var(--text-base);color:var(--text-secondary);margin:0}.vvp-state-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);padding:var(--space-10) var(--space-8);display:flex;flex-direction:column;align-items:center;gap:var(--space-4);text-align:center;max-width:420px;width:100%}.vvp-error-icon{width:52px;height:52px;border-radius:50%;background:var(--danger-light);color:var(--danger);font-size:26px;font-weight:var(--font-bold);display:flex;align-items:center;justify-content:center}.vvp-error-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary);margin:0}.vvp-error-body{font-size:var(--text-sm);color:var(--text-secondary);max-width:360px;margin:0;line-height:var(--leading-normal)}.vvp-ended-icon{width:56px;height:56px;border-radius:50%;background:var(--info-light);color:var(--brand-primary);display:flex;align-items:center;justify-content:center}.vvp-ended-icon svg{width:26px;height:26px}.vvp-ended-title{font-size:var(--text-2xl);font-weight:var(--font-semibold);color:var(--text-primary);margin:0}.vvp-ended-body{font-size:var(--text-sm);color:var(--text-secondary);margin:0}.vvp-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-5);border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--font-medium);cursor:pointer;border:1px solid transparent;transition:all var(--transition-fast)}.vvp-btn.vvp-btn--primary{background:linear-gradient(135deg,var(--brand-primary) 0%,var(--brand-primary-dark) 100%);color:#fff;border-color:var(--brand-primary)}.vvp-btn.vvp-btn--primary:hover{background:linear-gradient(135deg,var(--brand-primary-dark) 0%,var(--brand-primary) 100%);box-shadow:var(--shadow-md);transform:translateY(-1px)}.vvp-btn.vvp-btn--ghost{background:transparent;color:var(--text-secondary);border-color:var(--border-color)}.vvp-btn.vvp-btn--ghost:hover{background:var(--bg-hover);color:var(--text-primary)}@media (max-width: 480px){.vvp-local-pip{width:100px;height:64px;bottom:var(--space-2);right:var(--space-2)}.vvp-ctrl{padding:var(--space-2) var(--space-3);min-width:52px}}:root{--brand-primary: #1e40af;--brand-primary-light: #3b82f6;--brand-primary-dark: #1e3a8a;--brand-secondary: #0ea5e9;--brand-accent: #6366f1;--primary-light: #dbeafe;--success: #059669;--success-light: #d1fae5;--success-dark: #047857;--warning: #d97706;--warning-light: #fef3c7;--warning-dark: #b45309;--danger: #dc2626;--danger-light: #fee2e2;--danger-dark: #991b1b;--info: #0284c7;--info-light: #e0f2fe;--info-dark: #075985;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--bg-page: #f8fafc;--bg-card: #ffffff;--bg-elevated: #ffffff;--bg-subtle: #f1f5f9;--bg-muted: #e2e8f0;--bg-hover: #f8fafc;--bg-active: #eff6ff;--text-primary: #0f172a;--text-secondary: #475569;--text-tertiary: #64748b;--text-muted: #94a3b8;--text-disabled: #cbd5e1;--text-inverse: #ffffff;--text-link: #1e40af;--text-link-hover: #1e3a8a;--border-color: #e2e8f0;--border-light: #f1f5f9;--border-medium: #cbd5e1;--border-dark: #94a3b8;--border-focus: #3b82f6;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .06), 0 2px 4px -1px rgba(0, 0, 0, .04);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .08), 0 4px 6px -2px rgba(0, 0, 0, .04);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.25rem;--radius-full: 9999px;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "SF Mono", "Monaco", "Inconsolata", "Fira Code", "Droid Sans Mono", "Source Code Pro", monospace;--text-xs: .6875rem;--text-sm: .8125rem;--text-base: .875rem;--text-lg: 1rem;--text-xl: 1.125rem;--text-2xl: 1.375rem;--text-3xl: 1.75rem;--text-4xl: 2.25rem;--leading-tight: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.625;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .2s cubic-bezier(.4, 0, .2, 1);--transition-slow: .3s cubic-bezier(.4, 0, .2, 1);--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--modal-overlay-bg: rgba(0, 0, 0, .45);--modal-overlay-blur: 6px;--modal-surface: var(--bg-card);--modal-border: var(--border-color);--modal-title-color: var(--text-primary);--modal-body-color: var(--text-secondary);--modal-footer-bg: var(--bg-subtle);--modal-shadow: 0 20px 60px rgba(0, 0, 0, .18);--modal-radius: var(--radius-xl);--modal-notice-bg: #f0f9ff;--modal-notice-border: #bae6fd;--modal-notice-color: #0369a1}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--text-primary);background:var(--bg-page);min-height:100vh}h1,h2,h3,h4,h5,h6{font-weight:var(--font-semibold);line-height:var(--leading-tight);color:var(--text-primary)}h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}h4{font-size:var(--text-lg)}h5{font-size:var(--text-base)}h6{font-size:var(--text-sm)}p{margin-bottom:1em}a{color:var(--text-link);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--text-link-hover)}strong,b{font-weight:var(--font-semibold)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-family:var(--font-sans);font-size:var(--text-base);font-weight:var(--font-medium);line-height:1.5;border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;-webkit-user-select:none;user-select:none;text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,#1e40af,#1e3a8a);color:#fff;border-color:#1e40af}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#1e3a8a,#1e40af);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-secondary{background:#fff;color:var(--brand-primary);border-color:var(--brand-primary)}.btn-secondary:hover:not(:disabled){background:var(--bg-active)}.btn-outline{background:transparent;color:var(--text-primary);border-color:var(--border-medium)}.btn-outline:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-dark)}.btn-ghost{background:transparent;color:var(--text-secondary);border-color:transparent}.btn-ghost:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.btn-danger{background:var(--danger);color:#fff;border-color:var(--danger)}.btn-danger:hover:not(:disabled){background:var(--danger-dark)}.btn-success{background:var(--success);color:#fff;border-color:var(--success)}.btn-success:hover:not(:disabled){background:var(--success-dark)}.btn-sm{padding:var(--space-1) var(--space-3);font-size:var(--text-sm)}.btn-lg{padding:var(--space-3) var(--space-6);font-size:var(--text-lg)}.btn-icon{padding:var(--space-2);width:36px;height:36px}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;transition:box-shadow var(--transition-fast)}.card:hover{box-shadow:var(--shadow-md)}.card-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border-color);background:var(--bg-subtle)}.card-body{padding:var(--space-4)}.card-footer{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4);border-top:1px solid var(--border-color);background:var(--bg-subtle)}.card-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin:0}.card-subtitle{font-size:var(--text-sm);color:var(--text-secondary);margin:var(--space-1) 0 0}.form-group{margin-bottom:var(--space-4)}.form-label{display:block;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary);margin-bottom:var(--space-2)}.form-label-required:after{content:"*";color:var(--danger);margin-left:var(--space-1)}.form-input,.form-select,.form-textarea{width:100%;padding:var(--space-2) var(--space-3);font-family:var(--font-sans);font-size:var(--text-base);color:var(--text-primary);background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-md);transition:all var(--transition-fast)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 3px #3b82f61a}.form-input:disabled,.form-select:disabled,.form-textarea:disabled{background:var(--bg-muted);color:var(--text-muted);cursor:not-allowed}.form-input::placeholder{color:var(--text-muted)}.form-textarea{min-height:100px;resize:vertical}.form-hint{display:block;font-size:var(--text-sm);color:var(--text-tertiary);margin-top:var(--space-1)}.form-error{display:block;font-size:var(--text-sm);color:var(--danger);margin-top:var(--space-1)}.form-input-error{border-color:var(--danger)}.form-input-error:focus{box-shadow:0 0 0 3px #dc26261a}.form-checkbox,.form-radio{width:18px;height:18px;accent-color:var(--brand-primary);cursor:pointer}.form-check-label{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-base);color:var(--text-primary);cursor:pointer}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);font-size:var(--text-xs);font-weight:var(--font-medium);border-radius:var(--radius-full);white-space:nowrap}.badge-primary{background:var(--info-light);color:var(--info-dark)}.badge-success{background:var(--success-light);color:var(--success-dark)}.badge-warning{background:var(--warning-light);color:var(--warning-dark)}.badge-danger{background:var(--danger-light);color:var(--danger-dark)}.badge-neutral{background:var(--gray-100);color:var(--gray-700)}.alert{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);border:1px solid transparent;margin-bottom:var(--space-4)}.alert-icon{flex-shrink:0;width:20px;height:20px}.alert-content{flex:1}.alert-title{font-weight:var(--font-semibold);margin-bottom:var(--space-1)}.alert-success{background:var(--success-light);border-color:var(--success);color:var(--success-dark)}.alert-warning{background:var(--warning-light);border-color:var(--warning);color:var(--warning-dark)}.alert-danger{background:var(--danger-light);border-color:var(--danger);color:var(--danger-dark)}.alert-info{background:var(--info-light);border-color:var(--info);color:var(--info-dark)}.m-0{margin:0}.m-1{margin:var(--space-1)}.m-2{margin:var(--space-2)}.m-3{margin:var(--space-3)}.m-4{margin:var(--space-4)}.m-5{margin:var(--space-5)}.m-6{margin:var(--space-6)}.mt-1{margin-top:var(--space-1)}.mt-5{margin-top:var(--space-5)}.mt-6{margin-top:var(--space-6)}.mb-1{margin-bottom:var(--space-1)}.mb-5{margin-bottom:var(--space-5)}.mb-6{margin-bottom:var(--space-6)}.p-0{padding:0}.p-1{padding:var(--space-1)}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-5{padding:var(--space-5)}.p-6{padding:var(--space-6)}.d-none{display:none}.d-flex{display:flex}.d-grid{display:grid}.d-block{display:block}.d-inline{display:inline}.d-inline-block{display:inline-block}.flex-column{flex-direction:column}.flex-row{flex-direction:row}.align-center{align-items:center}.align-start{align-items:flex-start}.align-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.flex-1{flex:1}.flex-wrap{flex-wrap:wrap}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.text-left{text-align:left}.text-right{text-align:right}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.text-muted{color:var(--text-muted)}.text-success{color:var(--success)}.text-warning{color:var(--warning)}.text-danger{color:var(--danger)}.text-sm{font-size:var(--text-sm)}.text-base{font-size:var(--text-base)}.text-lg{font-size:var(--text-lg)}.text-xl{font-size:var(--text-xl)}.font-medium{font-weight:var(--font-medium)}.font-semibold{font-weight:var(--font-semibold)}.font-bold{font-weight:var(--font-bold)}.w-full{width:100%}.w-auto{width:auto}.cursor-pointer{cursor:pointer}.cursor-not-allowed{cursor:not-allowed}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}@media (min-width: 768px){.md\:flex{display:flex}.md\:hidden{display:none}.md\:grid-cols-2{grid-template-columns:repeat(2,1fr)}.md\:grid-cols-3{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1024px){.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:grid-cols-3{grid-template-columns:repeat(3,1fr)}.lg\:grid-cols-4{grid-template-columns:repeat(4,1fr)}}:root{--nov1-primary: #4f46e5;--nov1-primary-light: #6366f1;--nov1-primary-dark: #4338ca;--nov1-secondary: #0ea5e9;--nov1-accent: #8b5cf6;--success: #059669;--success-light: #d1fae5;--warning: #d97706;--warning-light: #fef3c7;--danger: #dc2626;--danger-light: #fee2e2;--info: #0284c7;--info-light: #e0f2fe;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--bg-primary: #f8fafc;--bg-secondary: #ffffff;--surface-elevated: #ffffff;--text-primary: #111827;--text-secondary: #4b5563;--text-muted: #9ca3af;--text-inverse: #ffffff;--border-light: #e5e7eb;--border-medium: #d1d5db;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .06), 0 2px 4px -1px rgba(0, 0, 0, .04);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .06), 0 4px 6px -2px rgba(0, 0, 0, .03);--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px}*{box-sizing:border-box}html,body,#root{height:100%;min-height:100%;margin:0;padding:0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:linear-gradient(180deg,#f7f4ff,#faf9ff);color:var(--text-primary);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}.app--platform{max-width:none}.app--platform .app-content{padding:0}.platform-container{display:grid;grid-template-columns:280px 1fr;min-height:calc(100vh - 60px)}.platform-sidebar{background:#0f172a;color:#e2e8f0;padding:16px;border-right:1px solid rgba(255,255,255,.08)}.platform-org{margin-bottom:12px}.platform-org-name{font-weight:600}.platform-org-sub{color:#94a3b8;font-size:12px}.platform-nav{display:flex;flex-direction:column;gap:6px}.platform-nav-item{display:grid;grid-template-columns:1fr auto;gap:4px;text-align:left;padding:10px 12px;background:transparent;color:inherit;border:1px solid rgba(255,255,255,.08);border-radius:8px;cursor:pointer}.platform-nav-item .label{font-weight:500}.platform-nav-item .desc{font-size:11px;color:#94a3b8}.platform-nav-item:hover{background:#ffffff0a}.platform-nav-item.active{border-color:#4f46e5;background:#4f46e51f}.platform-main{padding:20px}.platform-panel{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:12px;box-shadow:var(--shadow-sm);margin-bottom:16px}.platform-panel-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border-light)}.platform-panel-header h2{margin:0;font-size:16px}.platform-panel-body{padding:16px}.placeholder{color:var(--text-muted)}.grid.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}.card{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:12px;padding:16px}.plain{list-style:none;padding:0;margin:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid label{display:flex;flex-direction:column;gap:6px}.form-grid input{padding:8px 10px;border:1px solid var(--border-light);border-radius:8px}.toggle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.toggle{display:flex;align-items:center;gap:8px;padding:8px;border:1px solid var(--border-light);border-radius:8px}.btn{background:transparent;border:1px solid var(--border-light);border-radius:8px;padding:8px 10px;cursor:pointer}.btn-primary{background:var(--nov1-primary);color:#fff;border-color:var(--nov1-primary)}.platform-restricted{max-width:640px;margin:40px auto;text-align:center}.app-header .logo{display:flex;align-items:center;gap:10px}.app-header .logo img{height:24px}.app-header .logo span{font-weight:400;color:var(--text-secondary)}.header-actions{display:flex;align-items:center;gap:var(--space-3)}.logout-btn{background:transparent;border:none;padding:var(--space-2);cursor:pointer;color:var(--text-muted);border-radius:var(--radius-md);transition:all .15s ease}.logout-btn:hover{background:var(--gray-100);color:var(--text-secondary)}.avatar{width:36px;height:36px;border-radius:50%;background:var(--nov1-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:500;font-size:13px;border:none;cursor:pointer}.avatar-wrapper{position:relative}.account-menu{position:absolute;right:0;top:calc(100% + 8px);background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-md);min-width:180px;overflow:hidden;z-index:1000}.account-menu .menu-item{width:100%;text-align:left;padding:10px 12px;background:transparent;border:none;font-size:13px;color:var(--text-primary);cursor:pointer}.account-menu .menu-item:hover{background:var(--gray-50)}.page{animation:fadeIn .15s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.page-header{margin-bottom:var(--space-5)}.page-header .greeting{font-size:14px;color:var(--text-secondary);margin-bottom:6px}.page-header h1{font-size:32px;font-weight:700;margin:0;color:var(--text-primary)}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.section-title{font-size:14px;font-weight:600;color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px}.metric-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3)}.metric-card{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:var(--space-4);transition:box-shadow .15s ease}.metric-card:hover{box-shadow:var(--shadow-sm)}.metric-card .metric-header{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2)}.metric-card .metric-icon{width:32px;height:32px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:14px}.metric-card .metric-icon.blue{background:#dbeafe;color:#2563eb}.metric-card .metric-icon.green{background:#d1fae5;color:#059669}.metric-card .metric-icon.purple{background:#ede9fe;color:#7c3aed}.metric-card .metric-icon.orange{background:#ffedd5;color:#ea580c}.metric-card .metric-icon.red{background:#fee2e2;color:#dc2626}.metric-card .metric-label{font-size:12px;color:var(--text-muted)}.metric-card .metric-value{font-size:28px;font-weight:600;color:var(--text-primary);line-height:1.2}.metric-card .metric-unit{font-size:12px;color:var(--text-secondary);margin-top:2px}.metric-card .metric-status{display:flex;align-items:center;gap:6px;margin-top:var(--space-2);font-size:12px}.metric-card .status-dot{width:6px;height:6px;border-radius:50%}.metric-card .status-dot.success{background:var(--success)}.metric-card .status-dot.warning{background:var(--warning)}.metric-card .status-dot.danger{background:var(--danger)}.action-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3)}.action-card{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-4);background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);text-decoration:none;color:var(--text-primary);transition:all .15s ease}.action-card:hover{border-color:var(--nov1-primary);box-shadow:var(--shadow-sm)}.action-card .action-icon{width:44px;height:44px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;background:var(--gray-100);color:var(--text-secondary)}.action-card .action-icon svg{width:22px;height:22px}.action-card .action-icon.primary{background:#eef2ff;color:var(--nov1-primary)}.action-card .action-icon.success{background:#d1fae5;color:var(--success)}.action-card .action-icon.warning{background:#fef3c7;color:var(--warning)}.action-card .action-icon.info{background:#e0f2fe;color:var(--info)}.action-card .action-label{font-size:13px;font-weight:500}.list-card{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);overflow:hidden}.hero-card{display:block;border-radius:18px;padding:20px;background:linear-gradient(135deg,#edeaff,#f7f3ff);border:1px solid rgba(99,102,241,.15);text-decoration:none;box-shadow:0 8px 24px #4f46e514}.hero-title{font-size:24px;font-weight:700;color:var(--text-primary)}.hero-subtitle{margin-top:8px;font-size:12px;color:var(--text-secondary)}.grid-two{display:grid;grid-template-columns:1fr;gap:var(--space-3)}@media (min-width: 768px){.grid-two{grid-template-columns:1fr 1fr}}.bill-card{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-lg);background:#fff;border:1px solid rgba(17,24,39,.06);text-decoration:none;color:var(--text-primary);box-shadow:var(--shadow-md)}.bill-left .bill-amount{font-size:20px;font-weight:600}.bill-left .bill-meta{font-size:12px;color:var(--text-secondary)}.bill-right{display:flex;align-items:center;gap:8px}.bill-status{font-size:12px;color:#b91c1c;background:#fee2e2;padding:4px 8px;border-radius:999px}.notifications{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm)}.notif-title{font-size:14px;font-weight:600;margin-bottom:var(--space-3)}.notifications-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.notif-item{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:10px}.notif-icon{width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:var(--gray-100);color:var(--text-secondary)}.notif-label{font-size:13px;font-weight:500}.notif-desc{font-size:12px;color:var(--text-secondary)}.notif-meta{font-size:12px;color:var(--text-muted)}.chip-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-3)}@media (min-width: 768px){.chip-grid{grid-template-columns:repeat(4,1fr)}}.chip{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:999px;background:#f7f7fb;border:1px solid var(--border-light);text-decoration:none;color:var(--text-primary)}.chip svg{width:18px;height:18px}.chip span{font-size:13px;font-weight:500}.chip:nth-child(1){background:#f3e8ff;border-color:#a855f740}.chip:nth-child(2){background:#fee2e2;border-color:#ef444440}.chip:nth-child(3){background:#e0f2fe;border-color:#0ea5e940}.chip:nth-child(4){background:#fef3c7;border-color:#eab30840}.chip:nth-child(5){background:#eef2ff;border-color:#6366f140}.list-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-light);text-decoration:none;color:inherit;transition:background .1s ease}.list-item:last-child{border-bottom:none}.list-item:hover{background:var(--gray-50)}.list-item .item-icon{width:40px;height:40px;border-radius:var(--radius-md);background:var(--gray-100);display:flex;align-items:center;justify-content:center;flex-shrink:0}.list-item .item-icon svg{width:20px;height:20px;color:var(--text-secondary)}.list-item .item-content{flex:1;min-width:0}.list-item .item-title{font-weight:500;font-size:14px;color:var(--text-primary)}.list-item .item-subtitle{font-size:13px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list-item .item-meta{text-align:right;flex-shrink:0}.list-item .item-date{font-size:12px;color:var(--text-muted)}.list-item .item-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:var(--nov1-primary);color:#fff;border-radius:10px;font-size:11px;font-weight:500;margin-top:4px}.status-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.3px}.status-badge.pending{background:var(--warning-light);color:var(--warning)}.status-badge.completed{background:var(--success-light);color:var(--success)}.status-badge.new{background:var(--info-light);color:var(--info)}.status-badge.urgent{background:var(--danger-light);color:var(--danger)}.info-card{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-3)}.info-card .card-header{display:flex;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-3)}.info-card .card-icon{width:40px;height:40px;border-radius:var(--radius-md);background:var(--gray-100);display:flex;align-items:center;justify-content:center;flex-shrink:0}.info-card .card-icon svg{width:20px;height:20px;color:var(--text-secondary)}.info-card .card-icon.primary{background:#eef2ff;color:var(--nov1-primary)}.info-card .card-icon.success{background:#d1fae5;color:var(--success)}.info-card.highlight{background:linear-gradient(135deg,var(--nov1-primary) 0%,var(--nov1-accent) 100%);border:none}.info-card.highlight .card-icon{background:#fff3;color:#fff}.info-card.highlight .card-title{color:#fff}.info-card.highlight .card-subtitle{color:#fffc}.info-card.highlight .card-body{color:#ffffffe6}.info-card .card-title{font-size:15px;font-weight:600;color:var(--text-primary);margin-bottom:2px}.info-card .card-subtitle{font-size:13px;color:var(--text-secondary)}.info-card .card-body{font-size:14px;color:var(--text-secondary);line-height:1.5}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.form-field{display:flex;flex-direction:column;gap:6px}.form-field label{font-size:12px;color:var(--text-secondary)}.form-field input,.form-field select,.form-field textarea{padding:10px 12px;border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-secondary);font-size:13px}@media (max-width: 640px){.form-grid{grid-template-columns:1fr}}.goal-item{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-3)}.goal-item .goal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2)}.goal-item .goal-title{font-weight:500;font-size:14px}.goal-item .goal-percent{font-size:13px;color:var(--nov1-primary);font-weight:600}.goal-item .goal-bar{height:6px;background:var(--gray-200);border-radius:3px;overflow:hidden}.goal-item .goal-fill{height:100%;background:var(--nov1-primary);border-radius:3px;transition:width .3s ease}.goal-item .goal-detail{font-size:12px;color:var(--text-muted);margin-top:var(--space-2)}.team-member{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);margin-bottom:var(--space-3)}.team-member .member-avatar{width:44px;height:44px;border-radius:50%;background:var(--nov1-primary);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:500;font-size:14px;flex-shrink:0}.team-member .member-info{flex:1}.team-member .member-name{font-weight:500;font-size:14px}.team-member .member-role{font-size:13px;color:var(--text-secondary)}.team-member .member-action{padding:8px 14px;background:var(--nov1-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:13px;font-weight:500;cursor:pointer;transition:background .15s ease}.team-member .member-action:hover{background:var(--nov1-primary-dark)}.tab-group{display:flex;gap:4px;background:var(--gray-100);padding:4px;border-radius:var(--radius-md);margin-bottom:var(--space-4)}.tab-btn{flex:1;padding:8px 12px;background:transparent;border:none;border-radius:var(--radius-sm);font-size:13px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.tab-btn.active{background:var(--bg-secondary);color:var(--text-primary);box-shadow:var(--shadow-xs)}.btn-primary{width:100%;padding:14px;background:var(--nov1-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:14px;font-weight:500;cursor:pointer;transition:background .15s ease}.btn-primary:hover{background:var(--nov1-primary-dark)}.btn-secondary-small{padding:6px 12px;background:transparent;color:var(--nov1-primary);border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease;flex-shrink:0}.btn-secondary-small:hover{background:var(--gray-50);border-color:var(--nov1-primary)}.member-avatar{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;flex-shrink:0;color:var(--nov1-primary)}.bottom-nav{position:fixed;bottom:16px;left:50%;transform:translate(-50%);width:calc(100% - 32px);max-width:680px;background:#ffffffe6;-webkit-backdrop-filter:saturate(180%) blur(12px);backdrop-filter:saturate(180%) blur(12px);border:1px solid var(--border-light);border-radius:16px;display:flex;justify-content:space-around;padding:12px 8px;z-index:100;box-shadow:var(--shadow-md)}.nav-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px 12px;color:var(--text-muted);text-decoration:none;font-size:11px;font-weight:500;transition:color .15s ease}.nav-item.active{color:var(--nov1-primary)}.nav-item .nav-icon svg{width:22px;height:22px;stroke-width:1.75}@media (min-width: 768px){.metric-cards,.action-cards{grid-template-columns:repeat(4,1fr)}.app-header .logo img{height:28px}}.form-list{display:flex;flex-direction:column;gap:var(--space-3)}.form-card{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:var(--space-4);cursor:pointer;transition:all .15s ease}.form-card:hover{border-color:var(--nov1-primary);box-shadow:var(--shadow-sm)}.form-card .form-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--space-2)}.form-card .form-title{font-weight:500;font-size:15px;color:var(--text-primary)}.form-card .form-type{font-size:12px;color:var(--text-muted);margin-top:2px}.form-card .form-meta{display:flex;align-items:center;gap:var(--space-3);font-size:12px;color:var(--text-secondary)}.signature-section{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border-light)}.signature-section h3{font-size:14px;font-weight:600;margin-bottom:var(--space-3)}.signature-tabs{display:flex;gap:var(--space-2);margin-bottom:var(--space-3)}.signature-tab{flex:1;padding:10px;background:var(--gray-100);border:1px solid transparent;border-radius:var(--radius-md);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.signature-tab.active{background:var(--bg-secondary);border-color:var(--nov1-primary);color:var(--nov1-primary)}.signature-canvas{width:100%;height:150px;border:2px dashed var(--border-medium);border-radius:var(--radius-md);background:var(--gray-50);cursor:crosshair}.signature-input{width:100%;padding:16px;border:1px solid var(--border-light);border-radius:var(--radius-md);font-size:24px;font-family:Brush Script MT,Dancing Script,cursive;text-align:center}.signature-preview{padding:var(--space-4);background:var(--gray-50);border-radius:var(--radius-md);text-align:center;font-family:Brush Script MT,Dancing Script,cursive;font-size:28px;color:var(--text-primary);min-height:80px;display:flex;align-items:center;justify-content:center}.attestation-box{background:var(--gray-50);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4)}.attestation-box p{font-size:13px;color:var(--text-secondary);line-height:1.6;margin:0}.checkbox-group{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-4)}.checkbox-item{display:flex;align-items:flex-start;gap:var(--space-3)}.checkbox-item input[type=checkbox]{width:18px;height:18px;margin-top:2px;accent-color:var(--nov1-primary)}.checkbox-item label{font-size:13px;color:var(--text-secondary);line-height:1.4}.login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);padding:var(--space-5)}.login-container{width:100%;max-width:380px;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:var(--shadow-lg)}.login-header{text-align:center;margin-bottom:var(--space-6)}.login-logo{margin-bottom:var(--space-4)}.login-logo svg{width:56px;height:56px}.login-header h1{font-size:22px;font-weight:600;color:var(--text-primary);margin:0 0 var(--space-2) 0}.login-form{display:flex;flex-direction:column;gap:var(--space-4)}.login-error{background:var(--danger-light);border:1px solid #fecaca;color:var(--danger);padding:var(--space-3);border-radius:var(--radius-md);font-size:13px;text-align:center}.form-group label{font-size:13px;font-weight:500;color:var(--text-primary)}.form-group input{padding:12px 14px;border:1px solid var(--border-light);border-radius:var(--radius-md);font-size:14px;transition:border-color .15s ease,box-shadow .15s ease;outline:none}.form-group input:focus{border-color:var(--nov1-primary);box-shadow:0 0 0 3px #4f46e51a}.login-button{padding:14px;background:var(--nov1-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:14px;font-weight:500;cursor:pointer;transition:background .15s ease;display:flex;align-items:center;justify-content:center;min-height:48px}.login-button:hover:not(:disabled){background:var(--nov1-primary-dark)}.login-button:disabled{opacity:.6;cursor:not-allowed}.spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.forgot-link{text-align:center;color:var(--nov1-primary);font-size:13px;text-decoration:none}.login-footer{margin-top:var(--space-6);text-align:center}.login-footer p{font-size:13px;color:var(--text-secondary);margin:0 0 var(--space-4) 0}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}@media (min-width: 768px){.app{max-width:100%;display:grid;grid-template-columns:240px 1fr;grid-template-rows:auto 1fr;grid-template-areas:"sidebar header" "sidebar content";height:100vh}.app-header{grid-area:header;padding:var(--space-4) var(--space-6)}.app-content{grid-area:content;padding:var(--space-6);padding-bottom:var(--space-6)}.bottom-nav{grid-area:sidebar;position:static;transform:none;width:100%;max-width:none;flex-direction:column;justify-content:flex-start;padding:var(--space-5) var(--space-3);border-top:none;border-right:1px solid var(--border-light);gap:4px;background:var(--bg-secondary)}.nav-item{flex-direction:row;justify-content:flex-start;gap:var(--space-3);padding:10px 14px;border-radius:var(--radius-md);font-size:14px}.nav-item:hover{background:var(--gray-100)}.nav-item.active{background:#eef2ff}.page{max-width:900px}.metric-cards{grid-template-columns:repeat(2,1fr);gap:var(--space-4)}.action-cards{grid-template-columns:repeat(2,1fr);max-width:400px}}@media (min-width: 1024px){.app{grid-template-columns:260px 1fr}.app-content{padding:var(--space-8)}.metric-cards{grid-template-columns:repeat(4,1fr)}.metric-card .metric-value{font-size:32px}}@media (min-width: 1440px){.app{grid-template-columns:280px 1fr}.page{max-width:1100px}}@media (max-width: 767px){.metric-card .metric-value{font-size:24px}.metric-cards,.action-cards{grid-template-columns:1fr}}@media (max-width: 374px){.app-content,.metric-card{padding:var(--space-3)}.login-container{padding:var(--space-5)}.login-header h1{font-size:22px}.login-logo img{max-width:100%;height:48px}}.text-center{text-align:center}.mt-2{margin-top:8px}.mt-4{margin-top:16px}.mb-2{margin-bottom:8px}.mb-4{margin-bottom:16px}.login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:20px}.login-container{width:100%;max-width:400px;background:#fff;border-radius:var(--radius-xl);padding:40px 32px;box-shadow:0 25px 50px -12px #00000040}.login-header{text-align:center;margin-bottom:32px}.login-logo{margin-bottom:16px}.login-header h1{font-size:28px;font-weight:700;color:var(--text-primary);margin:0 0 8px}.login-header p{color:var(--text-secondary);font-size:14px;margin:0}.login-form{display:flex;flex-direction:column;gap:20px}.login-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:12px;border-radius:var(--radius-md);font-size:14px;text-align:center}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:14px;font-weight:500;color:var(--text-primary)}.form-group input{padding:14px 16px;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:16px;transition:border-color .2s,box-shadow .2s;outline:none}.form-group input:focus{border-color:var(--nov1-primary);box-shadow:0 0 0 3px #6366f11a}.form-group input::placeholder{color:var(--text-muted)}.login-button{padding:16px;background:linear-gradient(135deg,var(--nov1-primary) 0%,var(--nov1-secondary) 100%);color:#fff;border:none;border-radius:var(--radius-md);font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s;display:flex;align-items:center;justify-content:center;min-height:52px}.login-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #6366f166}.login-button:disabled{opacity:.7;cursor:not-allowed}.spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.forgot-link{text-align:center;color:var(--nov1-primary);font-size:14px;text-decoration:none}.forgot-link:hover{text-decoration:underline}.login-footer{margin-top:32px;text-align:center}.login-footer p{font-size:14px;color:var(--text-secondary);margin:0 0 16px}.login-footer a{color:var(--nov1-primary);text-decoration:none}.login-footer a:hover{text-decoration:underline}.login-security{display:flex;align-items:center;justify-content:center;gap:6px;color:var(--text-muted);font-size:12px}.header-actions{display:flex;align-items:center;gap:12px}.logout-btn{background:#ffffff26;border:none;border-radius:8px;padding:8px;cursor:pointer;color:#fff;display:flex;align-items:center;justify-content:center;transition:background .2s}.logout-btn:hover{background:#ffffff40}.nav-item .nav-icon{display:flex;align-items:center;justify-content:center}.nav-item .nav-icon svg{width:22px;height:22px;stroke:currentColor}.nav-item.active .nav-icon svg{stroke:var(--nov1-primary)}@media (min-width: 768px){.app{max-width:100%;display:grid;grid-template-columns:240px 1fr;grid-template-rows:auto 1fr;grid-template-areas:"sidebar header" "sidebar content";height:100vh}.app-header{grid-area:header}.app-content{grid-area:content;padding:32px 40px;overflow-y:auto}.bottom-nav{grid-area:sidebar;position:static;transform:none;width:100%;max-width:none;flex-direction:column;justify-content:flex-start;padding:24px 16px;border-top:none;border-right:1px solid var(--border-color);box-shadow:none;gap:4px;background:#fff}.nav-item{flex-direction:row;justify-content:flex-start;gap:12px;padding:12px 16px;border-radius:var(--radius-md);font-size:14px;font-weight:500}.nav-item:hover{background:var(--bg-light)}.nav-item.active{background:#6366f11a}.nav-item .nav-icon{font-size:20px}.page{max-width:900px}.health-cards{grid-template-columns:repeat(2,1fr);gap:16px}.health-card{min-height:140px;padding:20px}.action-cards{grid-template-columns:repeat(2,1fr);gap:16px}.message-list{max-width:600px}.login-container{padding:48px 40px}}@media (min-width: 1024px){.app{grid-template-columns:260px 1fr}.app-content{padding:40px 60px}.page{max-width:1000px}.page.home{max-width:1100px}.hero-card{padding:28px}.hero-title{font-size:28px}.grid-two{grid-template-columns:1.2fr 1fr}.chip-grid{gap:16px}.health-cards{grid-template-columns:repeat(4,1fr);gap:16px}.health-card{min-height:150px}.health-card .card-value{font-size:36px}.action-cards{grid-template-columns:repeat(2,1fr);max-width:400px}.tcm-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.tcm-card{margin-bottom:0}}@media (min-width: 1440px){.app{grid-template-columns:280px 1fr}.app-content{padding:48px 80px}.page{max-width:1200px}.page.home{max-width:1280px}.hero-title{font-size:32px}.grid-two{grid-template-columns:1.3fr 1fr}.health-cards,.action-cards{gap:20px}}@media (max-width: 767px) and (orientation: landscape){.app-content{padding-bottom:80px}.health-cards{grid-template-columns:repeat(4,1fr)}.health-card{min-height:100px;padding:12px}.health-card .card-value{font-size:24px}}@media (max-width: 374px){.app-content{padding:16px}.health-card{padding:12px;min-height:100px}.health-card .card-value{font-size:24px}.action-card{padding:16px 12px}.login-container{padding:32px 24px}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--modal-overlay-bg);backdrop-filter:blur(var(--modal-overlay-blur));-webkit-backdrop-filter:blur(var(--modal-overlay-blur));z-index:var(--z-modal-backdrop);display:flex;align-items:center;justify-content:center;padding:var(--space-4);animation:modal-overlay-in .18s ease both}@keyframes modal-overlay-in{0%{opacity:0}to{opacity:1}}.modal-panel{position:relative;background:var(--modal-surface);border:1px solid var(--modal-border);border-radius:var(--modal-radius);box-shadow:var(--modal-shadow);width:100%;max-width:480px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;z-index:var(--z-modal);animation:modal-panel-in .22s cubic-bezier(.22,1,.36,1) both}@keyframes modal-panel-in{0%{opacity:0;transform:scale(.97) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-panel--sm{max-width:400px}.modal-panel--md{max-width:560px}.modal-panel--lg{max-width:800px}.modal-panel--xl{max-width:960px}.modal-overlay.modal-overlay--sheet{align-items:flex-end;justify-content:center;padding:0}.modal-panel--sheet{max-width:100%;border-radius:var(--modal-radius) var(--modal-radius) 0 0;max-height:80vh;animation:modal-sheet-in .26s cubic-bezier(.22,1,.36,1) both}@media (min-width: 600px){.modal-panel--sheet{max-width:520px;border-radius:var(--modal-radius);margin-bottom:var(--space-4)}.modal-overlay.modal-overlay--sheet{align-items:flex-end;padding-bottom:var(--space-4)}}@keyframes modal-sheet-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-panel--dark{background:#0f172ae0;backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);border-color:#ffffff1f;box-shadow:0 24px 80px #0000008c,0 0 0 1px #ffffff0d;color:#f1f5f9}.modal-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-5) var(--space-5) var(--space-4);border-bottom:1px solid var(--modal-border);flex-shrink:0}.modal-panel--dark .modal-header{border-bottom-color:#ffffff1a}.modal-header-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-lg);background:var(--primary-light);color:var(--primary);flex-shrink:0}.modal-panel--dark .modal-header-icon{background:#6366f133;color:#a5b4fc}.modal-header-text{flex:1;min-width:0}.modal-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--modal-title-color);margin:0 0 var(--space-1);line-height:var(--leading-tight)}.modal-panel--dark .modal-title{color:#f1f5f9}.modal-header-text p{margin:0;font-size:var(--text-sm);color:var(--text-secondary);line-height:var(--leading-normal)}.modal-panel--dark .modal-header-text p{color:#94a3b8}.modal-close-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-tertiary);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast);flex-shrink:0;margin-left:auto}.modal-close-btn:hover{background:var(--bg-subtle);color:var(--text-primary)}.modal-panel--dark .modal-close-btn{color:#94a3b8}.modal-panel--dark .modal-close-btn:hover{background:#ffffff14;color:#f1f5f9}.modal-body{padding:var(--space-5);overflow-y:auto;flex:1;color:var(--modal-body-color)}.modal-body p{margin:0 0 var(--space-4);font-size:var(--text-sm);line-height:var(--leading-normal)}.modal-body p:last-child{margin-bottom:0}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-top:1px solid var(--modal-border);background:var(--modal-footer-bg);flex-shrink:0}.modal-panel--dark .modal-footer{border-top-color:#ffffff1a;background:#0003}.modal-notice{display:flex;gap:var(--space-3);align-items:flex-start;background:var(--modal-notice-bg);border:1px solid var(--modal-notice-border);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-5);color:var(--modal-notice-color);font-size:var(--text-sm);line-height:var(--leading-normal)}.modal-notice p{margin:0;color:var(--modal-notice-color)}@media (max-width: 479px){.modal-overlay{padding:var(--space-3);align-items:flex-end}.modal-panel:not(.modal-panel--sheet){border-radius:var(--modal-radius) var(--modal-radius) 0 0;max-height:92vh;animation:modal-sheet-in .22s cubic-bezier(.22,1,.36,1) both}}.app{display:flex;flex-direction:column;height:100vh;min-height:100vh;background:var(--bg-page);overflow:hidden}.app-content{flex:1;min-height:0;padding-top:56px;padding-bottom:90px;overflow-y:auto}@media (min-width: 768px){.app{flex-direction:row}.app-content{flex:1;min-width:0;min-height:0;height:100vh;padding-top:0;padding-bottom:0;overflow-y:auto}}.app-sidebar{display:none}@media (min-width: 768px){.app-sidebar{display:flex;flex-direction:column;width:240px;min-width:240px;height:100vh;position:sticky;top:0;background:#fff;border-right:1px solid var(--border-color);padding:var(--space-6) var(--space-4);box-sizing:border-box;overflow-y:auto}.sidebar-nav{display:flex;flex-direction:column;gap:var(--space-1)}.sidebar-nav-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);color:var(--text-secondary);text-decoration:none;font-weight:var(--font-medium);transition:all var(--transition-fast)}.sidebar-nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar-nav-item.active{background:var(--bg-active);color:var(--brand-primary)}.sidebar-nav-icon{width:20px;height:20px;flex-shrink:0}.sidebar-nav-label{flex:1}.sidebar-nav-badge{font-size:var(--text-xs);font-weight:var(--font-semibold);padding:2px 6px;background:var(--danger);color:#fff;border-radius:var(--radius-full)}.sidebar-user-footer{margin-top:auto;padding-top:var(--space-4);border-top:1px solid var(--border-color);position:relative}.sidebar-user-btn{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-2);border:none;border-radius:var(--radius-md);background:transparent;cursor:pointer;color:var(--text-primary);transition:background var(--transition-fast);text-align:left}.sidebar-user-btn:hover{background:var(--bg-hover)}.sidebar-user-avatar{width:32px;height:32px;border-radius:50%;background:var(--brand-primary, #4f46e5);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}.sidebar-user-info{flex:1;min-width:0}.sidebar-user-name{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-role{font-size:var(--text-xs);color:var(--text-secondary)}.sidebar-user-menu{position:absolute;bottom:calc(100% + 8px);left:0;right:0;background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:0 8px 24px #0000001f;z-index:200;overflow:hidden}.sidebar-user-menu-header{padding:var(--space-3) var(--space-4);background:var(--bg-subtle, #f8fafc)}.sidebar-user-menu-name{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary)}.sidebar-user-menu-email{font-size:var(--text-xs);color:var(--text-muted, #94a3b8);margin-top:2px}.sidebar-user-menu-divider{height:1px;background:var(--border-color)}.sidebar-user-menu-item{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);border:none;background:transparent;cursor:pointer;color:var(--text-secondary);font-size:var(--text-sm);transition:background var(--transition-fast),color var(--transition-fast);text-align:left}.sidebar-user-menu-item:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar-user-menu-item--danger{color:var(--danger, #dc2626)}.sidebar-user-menu-item--danger:hover{background:#fef2f2;color:var(--danger, #dc2626)}}.bottom-nav{position:fixed;bottom:10px;left:12px;right:12px;background:transparent;z-index:var(--z-fixed);padding:0}.bottom-nav-container{display:flex;align-items:center;justify-content:space-evenly;background:#fff;border-radius:22px;padding:10px 12px;box-shadow:0 8px 24px #0f172a29;border:1px solid var(--border-color)}.nav-item,.bottom-nav-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px;color:var(--text-tertiary);text-decoration:none;font-size:11px;font-weight:var(--font-medium);transition:color var(--transition-fast);position:relative}.nav-item:hover,.bottom-nav-item:hover{color:var(--text-secondary)}.nav-item.active,.bottom-nav-item.active{color:var(--brand-primary)}.nav-icon,.bottom-nav-icon{width:22px;height:22px;display:flex;align-items:center;justify-content:center}.bottom-nav-badge{position:absolute;top:2px;right:6px;min-width:16px;height:16px;padding:0 4px;background:var(--danger);color:#fff;font-size:9px;font-weight:var(--font-bold);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center}@media (min-width: 768px){.bottom-nav,.bottom-nav-container{display:none!important}}.page{padding:var(--space-4);min-height:100%;box-sizing:border-box}.page-header{margin-bottom:var(--space-6)}.page-title{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--text-primary);margin:0 0 var(--space-2) 0}.page-subtitle{font-size:var(--text-base);color:var(--text-secondary);margin:0}.page-actions{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-4)}.section{margin-bottom:var(--space-6)}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.section-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary);margin:0}.section-action{font-size:var(--text-sm);color:var(--text-link);text-decoration:none;font-weight:var(--font-medium)}.section-action:hover{color:var(--text-link-hover)}.info-card{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-4);box-shadow:var(--shadow-sm);transition:all var(--transition-fast)}.info-card:hover{box-shadow:var(--shadow-md)}.info-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--border-color)}.info-card-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin:0}.info-card-body{color:var(--text-secondary);line-height:var(--leading-relaxed)}.list-group{display:flex;flex-direction:column;gap:var(--space-2)}.list-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);text-decoration:none;color:inherit}.list-item:hover{background:var(--bg-hover);border-color:var(--border-medium);box-shadow:var(--shadow-sm)}.list-item-icon{width:40px;height:40px;border-radius:var(--radius-md);background:var(--bg-subtle);display:flex;align-items:center;justify-content:center;color:var(--text-secondary);flex-shrink:0}.list-item-content{flex:1;min-width:0}.list-item-title{font-weight:var(--font-medium);color:var(--text-primary);margin:0 0 var(--space-1) 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.list-item-subtitle{font-size:var(--text-sm);color:var(--text-tertiary);margin:0}.list-item-meta{font-size:var(--text-sm);color:var(--text-muted);white-space:nowrap}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-4);margin-bottom:var(--space-6)}.stat-card{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-sm)}.stat-label{font-size:var(--text-sm);color:var(--text-tertiary);margin-bottom:var(--space-1)}.stat-value{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--text-primary)}.stat-trend{display:flex;align-items:center;gap:var(--space-1);font-size:var(--text-sm);margin-top:var(--space-2)}.stat-trend-up{color:var(--success)}.stat-trend-down{color:var(--danger)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-10);text-align:center}.empty-state-icon{width:64px;height:64px;color:var(--text-muted);margin-bottom:var(--space-4)}.empty-state-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary);margin:0 0 var(--space-2) 0}.empty-state-description{font-size:var(--text-base);color:var(--text-secondary);max-width:400px;margin:0 0 var(--space-4) 0}.loading-spinner{display:inline-block;width:40px;height:40px;border:4px solid var(--bg-muted);border-top-color:var(--brand-primary);border-radius:var(--radius-full);animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-10);gap:var(--space-4)}.loading-text{color:var(--text-secondary);font-size:var(--text-base)}.skeleton{background:linear-gradient(90deg,var(--bg-muted) 25%,var(--bg-subtle) 50%,var(--bg-muted) 75%);background-size:200% 100%;animation:loading 1.5s ease-in-out infinite;border-radius:var(--radius-md)}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-text{height:16px;margin-bottom:var(--space-2)}.skeleton-title{height:24px;width:60%;margin-bottom:var(--space-3)}.skeleton-card{height:120px}.tabs{border-bottom:2px solid var(--border-color);margin-bottom:var(--space-4)}.tabs-list{display:flex;gap:var(--space-2);overflow-x:auto}.tab-button{padding:var(--space-3) var(--space-4);background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-secondary);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;margin-bottom:-2px}.tab-button:hover{color:var(--text-primary)}.tab-button.active{color:var(--brand-primary);border-bottom-color:var(--brand-primary)}.file-upload{border:2px dashed var(--border-medium);border-radius:var(--radius-lg);padding:var(--space-6);text-align:center;cursor:pointer;transition:all var(--transition-fast)}.file-upload:hover{border-color:var(--brand-primary);background:var(--bg-hover)}.file-upload.dragover{border-color:var(--brand-primary);background:var(--bg-active)}.file-upload-icon{width:48px;height:48px;color:var(--text-muted);margin:0 auto var(--space-3)}.file-upload-text{font-size:var(--text-base);color:var(--text-secondary);margin-bottom:var(--space-1)}.file-upload-hint{font-size:var(--text-sm);color:var(--text-muted)}.file-list{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-4)}.file-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);background:var(--bg-subtle);border-radius:var(--radius-md)}.file-item-icon{width:32px;height:32px;color:var(--brand-primary);flex-shrink:0}.file-item-info{flex:1;min-width:0}.file-item-name{font-weight:var(--font-medium);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-item-size{font-size:var(--text-sm);color:var(--text-muted)}.file-item-remove{padding:var(--space-1);background:transparent;border:none;color:var(--text-muted);cursor:pointer;transition:color var(--transition-fast)}.file-item-remove:hover{color:var(--danger)}@media (min-width: 768px){.page{padding:var(--space-6)}.page-header{display:flex;align-items:center;justify-content:space-between}.page-actions{margin-top:0}}@media (min-width: 1024px){.page{padding:var(--space-8)}}.mobile-top-bar{display:flex;align-items:center;gap:12px;position:fixed;top:0;left:0;right:0;z-index:150;background:#fff;border-bottom:1px solid var(--border-color, #e5e7eb);box-shadow:0 1px 6px #0000000f;height:56px;padding:0 16px;flex-shrink:0}.mobile-top-bar-hamburger{display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;border:none;background:transparent;color:var(--text-primary, #111827);cursor:pointer;border-radius:8px;padding:0;transition:background .15s}.mobile-top-bar-hamburger:hover{background:var(--bg-hover, #f3f4f6)}.mobile-top-bar-greeting{flex:1;font-size:15px;font-weight:600;color:var(--text-primary, #111827);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-top-bar-avatar{width:34px;height:34px;border-radius:50%;background:var(--brand-primary, #4f46e5);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex-shrink:0;border:none;cursor:pointer;padding:0}@media (min-width: 768px){.mobile-top-bar{display:none}}.mobile-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000;z-index:200;pointer-events:none;transition:background .25s ease}.mobile-drawer-backdrop.open{background:#00000073;pointer-events:all}.mobile-drawer{position:fixed;top:0;left:0;height:100dvh;width:288px;background:#fff;z-index:201;transform:translate(-100%);transition:transform .27s cubic-bezier(.4,0,.2,1);box-shadow:4px 0 24px #0000001f;display:flex;flex-direction:column;overflow:hidden}.mobile-drawer.open{transform:translate(0)}@media (min-width: 768px){.mobile-drawer,.mobile-drawer-backdrop{display:none}}.mobile-drawer-user{display:flex;align-items:center;gap:12px;padding:20px 16px 16px;border-bottom:1px solid var(--border-color, #e5e7eb);background:var(--bg-subtle, #f9fafb)}.mobile-drawer-avatar{width:40px;height:40px;border-radius:50%;background:var(--brand-primary, #4f46e5);color:#fff;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;flex-shrink:0}.mobile-drawer-user-info{flex:1;min-width:0}.mobile-drawer-user-name{font-size:14px;font-weight:600;color:var(--text-primary, #111827);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-drawer-user-email{font-size:12px;color:var(--text-muted, #6b7280);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-drawer-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text-muted, #6b7280);cursor:pointer;border-radius:6px;flex-shrink:0}.mobile-drawer-close:hover{background:var(--bg-hover, #f3f4f6);color:var(--text-primary, #111827)}.mobile-drawer-nav{flex:1;overflow-y:auto;padding:8px 0}.mobile-drawer-item{display:flex;align-items:center;gap:12px;width:100%;padding:11px 20px;color:var(--text-secondary, #374151);font-size:15px;font-weight:500;text-decoration:none;border:none;background:transparent;cursor:pointer;transition:background .12s,color .12s;text-align:left}.mobile-drawer-item:hover{background:var(--bg-hover, #f3f4f6);color:var(--text-primary, #111827)}.mobile-drawer-item.active{background:var(--bg-active, #eff6ff);color:var(--brand-primary, #4f46e5);font-weight:600}.mobile-drawer-item.danger{color:var(--error, #dc2626)}.mobile-drawer-item.danger:hover{background:#fef2f2;color:var(--error, #dc2626)}.mobile-drawer-item-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.mobile-drawer-item-icon svg{width:20px;height:20px}.mobile-drawer-footer{border-top:1px solid var(--border-color, #e5e7eb);padding:8px 0}.info-banner{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:8px;margin-bottom:16px;font-size:.9rem}.info-banner--pending{background:#fef9c3;border:1px solid #fde047;color:#713f12}.info-banner--success{background:#dcfce7;border:1px solid #86efac;color:#14532d}.info-banner svg{flex-shrink:0}.info-banner-close{margin-left:auto;background:none;border:none;cursor:pointer;padding:2px;opacity:.6;line-height:1}.info-banner-close:hover{opacity:1}.ins-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:500;padding:16px}.ins-modal{background:#fff;border-radius:12px;width:100%;max-width:520px;padding:24px;box-shadow:0 20px 60px #0003;max-height:90vh;overflow-y:auto}.ins-modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.ins-modal-header h3{font-size:1.1rem;font-weight:600;margin:0}.ins-modal-close{background:none;border:none;cursor:pointer;padding:4px;border-radius:6px;opacity:.6;line-height:1}.ins-modal-close:hover{opacity:1;background:#f3f4f6}.ins-modal-desc{font-size:.875rem;color:#6b7280;margin:0 0 20px}.ins-change-form{display:flex;flex-direction:column;gap:16px}.ins-form-group{display:flex;flex-direction:column;gap:6px}.ins-form-group label{font-size:.8rem;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.04em}.ins-form-group input,.ins-form-group textarea{padding:10px 12px;border:1.5px solid #e5e7eb;border-radius:8px;font-size:.95rem;outline:none;transition:border-color .15s;font-family:inherit;resize:vertical}.ins-form-group input:focus,.ins-form-group textarea:focus{border-color:var(--color-brand, #7c3aed)}.ins-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ins-upload-area{display:flex;flex-direction:column;align-items:center;gap:6px;padding:20px;border:2px dashed #d1d5db;border-radius:8px;cursor:pointer;font-size:.875rem;color:#6b7280;text-align:center;transition:border-color .15s,background .15s}.ins-upload-area:hover{border-color:var(--color-brand, #7c3aed);background:#faf5ff}.ins-upload-filename{font-weight:500;color:#111827;word-break:break-all}.ins-upload-hint{font-size:.78rem;color:#9ca3af}.ins-file-input-hidden{display:none}.ins-form-actions{display:flex;gap:10px;justify-content:flex-end;padding-top:4px}.ins-form-actions .btn-primary{background:var(--color-brand, #7c3aed);color:#fff;border:none;padding:10px 20px;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:opacity .15s}.ins-form-actions .btn-primary:disabled{opacity:.5;cursor:not-allowed}.ins-form-actions .btn-outline{background:none;border:1.5px solid #e5e7eb;padding:10px 20px;border-radius:8px;font-size:.9rem;cursor:pointer;transition:border-color .15s}.ins-form-actions .btn-outline:hover{border-color:#9ca3af}@media (max-width: 480px){.ins-modal{padding:16px}.ins-form-row{grid-template-columns:1fr}}.insurance-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.ins-header-left{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.ins-logo-wrap{width:44px;height:44px;border-radius:10px;border:1px solid #e5e7eb;background:#f9fafb;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.ins-logo-wrap--sm{width:36px;height:36px;border-radius:8px}.ins-insurer-logo{width:36px;height:36px;object-fit:contain}.ins-logo-wrap--sm .ins-insurer-logo{width:28px;height:28px}.ins-header-titles{flex:1;min-width:0}.ins-header-titles .insurance-plan-name{margin:0 0 2px;font-size:1rem;font-weight:700;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ins-header-titles .insurance-insurer{margin:0;font-size:.8rem;color:#6b7280}.ins-header-badges{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex-shrink:0}.ins-type-badge{display:inline-block;padding:2px 8px;border-radius:20px;font-size:.72rem;font-weight:700;letter-spacing:.04em;border:1px solid transparent;white-space:nowrap}.ins-btn-terminate{color:#dc2626!important;border-color:#fca5a5!important}.ins-btn-terminate:hover:not(:disabled){background:#fef2f2!important;border-color:#f87171!important}.ins-btn-terminate:disabled{opacity:.5}.info-banner--warning{background:#fffbeb;border:1px solid #fde68a;color:#92400e}.info-banner--danger{background:#fef2f2;border:1px solid #fca5a5;color:#991b1b}.ins-modal--danger .ins-modal-header h3{color:#dc2626}.btn-danger{background:#dc2626;color:#fff;border:none;padding:10px 20px;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .15s}.btn-danger:hover:not(:disabled){background:#b91c1c}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.ins-terminate-plan-info{display:flex;align-items:center;gap:12px;padding:12px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:14px}.ins-terminate-plan-name{font-weight:600;font-size:.95rem;color:#111827}.ins-terminate-plan-meta{display:flex;align-items:center;gap:8px;margin-top:4px}.ins-terminate-memberid{font-size:.8rem;color:#6b7280}.ins-terminate-warning{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;font-size:.85rem;color:#9a3412}.ins-terminate-warning svg{flex-shrink:0;margin-top:1px}.ins-form-group select{padding:10px 12px;border:1.5px solid #e5e7eb;border-radius:8px;font-size:.95rem;outline:none;transition:border-color .15s;font-family:inherit;background:#fff;cursor:pointer}.ins-form-group select:focus{border-color:var(--color-brand, #7c3aed)}.insurance-badge{display:none}.notification-dropdown,.user-dropdown{position:relative}.dropdown-menu{position:absolute;top:calc(100% + var(--space-2));right:0;background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);min-width:320px;max-width:400px;z-index:var(--z-dropdown);animation:dropdownSlide .2s ease-out}@keyframes dropdownSlide{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.dropdown-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4);border-bottom:1px solid var(--border-color)}.dropdown-header h3{margin:0;font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-primary)}.dropdown-body{max-height:400px;overflow-y:auto}.dropdown-footer{padding:var(--space-3);border-top:1px solid var(--border-color);text-align:center}.dropdown-link{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--brand-primary);text-decoration:none;transition:color var(--transition-fast)}.dropdown-link:hover{color:var(--brand-primary-dark)}.dropdown-divider{height:1px;background:var(--border-color);margin:var(--space-2) 0}.dropdown-item{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);background:transparent;border:none;color:var(--text-primary);font-size:var(--text-sm);font-weight:var(--font-medium);text-align:left;cursor:pointer;transition:background var(--transition-fast)}.dropdown-item:hover{background:var(--bg-hover)}.dropdown-item.danger{color:var(--danger)}.dropdown-item.danger:hover{background:var(--danger-light)}.dropdown-item svg{width:16px;height:16px;flex-shrink:0}.user-info-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4)}.user-info-name{font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-1)}.user-info-email{font-size:var(--text-sm);color:var(--text-tertiary)}.header-user-avatar.large{width:48px;height:48px;font-size:var(--text-lg)}.notification-menu{min-width:360px}.notification-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-light);cursor:pointer;transition:background var(--transition-fast)}.notification-item:hover{background:var(--bg-hover)}.notification-item:last-child{border-bottom:none}.notification-item.unread{background:var(--info-light)}.notification-item.unread:hover{background:#cce7f9}.notification-content{flex:1}.notification-title{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary);margin-bottom:var(--space-1)}.notification-time{font-size:var(--text-xs);color:var(--text-muted)}.notification-dot{width:8px;height:8px;background:var(--brand-primary);border-radius:var(--radius-full);flex-shrink:0}@media (max-width: 640px){.dropdown-menu{min-width:calc(100vw - 32px);max-width:calc(100vw - 32px);right:-8px}.notification-menu{min-width:calc(100vw - 32px)}}.notif-anchor{position:relative}.notif-bell-btn{position:relative;display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;border:none;border-radius:var(--radius-md);color:var(--text-tertiary);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.notif-bell-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.notif-bell-btn.has-unread{color:var(--brand-primary)}.notif-bell-badge{position:absolute;top:2px;right:2px;min-width:16px;height:16px;padding:0 4px;background:var(--danger);color:#fff;font-size:9px;font-weight:var(--font-bold);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;line-height:1;pointer-events:none}
