:root{--portal-danger:var(--color-error,#b91c1c);--portal-danger-strong:var(--color-error-dark,#991b1b);--portal-info-surface:var(--color-info-light,#eff6ff);--portal-info-surface-soft:var(--color-info-soft,#f7fbff);--portal-indigo:var(--color-indigo,#4338ca);--portal-brand:#7da890;--portal-brand-strong:#5f8a72;--portal-header-green:#1f4d3b;--portal-header-green-strong:#143528;--portal-primary:#2f4753;--portal-primary-strong:#26333c;--portal-accent:#3d5a67;--portal-accent-soft:#e9edef;--portal-accent-bd:#d3dde1;--portal-accent-ink:#2e4652;--portal-sidebar-width:264px;--portal-topbar-height:74px;--portal-sky:var(--color-sky,#5f8a72);--portal-slate:var(--text-secondary,#475569);--portal-surface-page:var(--bg-secondary,#f9fafb);--portal-surface-primary:var(--bg-primary,#fff);--portal-surface-secondary:var(--bg-secondary,#f8fafc);--portal-surface-top:var(--bg-top,#f5f9ff);--portal-surface-tertiary:var(--bg-tertiary,#eef4ff);--portal-success:var(--color-success,#15803d);--portal-success-strong:var(--color-success-dark,#166534);--portal-teal:var(--portal-brand,#7da890);--portal-text-disabled:var(--color-disabled-text,#9ca3af);--portal-text-primary:var(--text-primary,#0f172a);--portal-text-secondary:#3d4757;--portal-text-tertiary:var(--text-secondary,#334155);--portal-text-ui:var(--text-secondary,#374151);--portal-text-ui-muted:#454f5f;--portal-border-light:var(--border-light,#e5e7eb)}.patient-portal-page-shell,.patient-portal-tabs-desktop,.patient-portal-tabs-mobile,.patient-portal-topbar{font-family:Inter,system-ui,-apple-system,Segoe UI,Helvetica Neue,Arial,sans-serif}.patient-portal-page-shell button,.patient-portal-page-shell input,.patient-portal-page-shell select,.patient-portal-page-shell textarea,.patient-portal-tabs-desktop button,.patient-portal-tabs-desktop input,.patient-portal-tabs-desktop select,.patient-portal-tabs-mobile button,.patient-portal-topbar button,.patient-portal-topbar input,.patient-portal-topbar select{font-family:inherit}.patient-portal-page-shell{min-height:100vh;--color-ocean-blue-500:#3d5a67;--color-ocean-blue-600:#2f4753;--color-ocean-blue-700:#26333c;--text-secondary:#504a43;--ethos-text-secondary:#504a43;--ethos-neutral-600:#504a43;--ethos-neutral-500:#504a43;--text-muted:#5b544c;--ethos-text-muted:#5b544c;--ethos-neutral-400:#5b544c;--color-success:#044a34;--portal-slate:#504a43;--portal-text-tertiary:#3d4757;--portal-text-ui:#3d4757;--portal-success:#044a34;--color-error-dark:#7f1d1d;--color-warning-dark:#7a2e0e;--color-success-dark:#044a34;--portal-indigo:#312e81;--color-indigo:#312e81;--portal-success-strong:#044a34;--portal-danger-strong:#7f1d1d;--portal-danger:#7f1d1d;background:#fff;padding-inline-start:var(--portal-sidebar-width,264px);padding-top:var(--portal-topbar-height,60px)}.patient-portal-topbar{align-items:center;background:var(--portal-header-green);border-bottom:1px solid hsla(0,0%,100%,.14);color:#f8f5f1;display:flex;gap:16px;height:var(--portal-topbar-height,60px);position:fixed;top:0;inset-inline:0;justify-content:space-between;padding:0 24px 0 22px;z-index:70}.patient-portal-topbar-context{display:flex;flex:1 1 auto;flex-direction:column;gap:3px;min-width:0;padding-inline-end:16px}.patient-portal-topbar-greeting{color:#f8f5f1;font-size:19px;font-weight:700;letter-spacing:-.01em;line-height:1.15}.patient-portal-topbar-subtitle{color:hsla(34,33%,96%,.82);font-size:13px;font-weight:500;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.patient-portal-topbar-right{align-items:center;display:flex;gap:14px;min-width:0}.patient-portal-topbar-date{color:hsla(34,33%,96%,.82);font-size:13px;font-weight:500;white-space:nowrap}.patient-portal-topbar-name{color:#fff;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.patient-portal-topbar-action .patient-portal-action-button,.patient-portal-topbar-action .patient-portal-primary-button,.patient-portal-topbar-action button{background:#f8f5f1;border:none;border-radius:8px;box-shadow:none;color:var(--portal-primary);font-size:14px;font-weight:600;padding:9px 16px;white-space:nowrap;width:auto}.patient-portal-topbar-action .patient-portal-action-button:hover,.patient-portal-topbar-action .patient-portal-primary-button:hover,.patient-portal-topbar-action button:hover{background:#fff;transform:none}.patient-portal-page-content{margin:0 auto;max-width:1120px;padding:28px 24px 32px}.patient-portal-page-header{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);background:hsla(0,0%,100%,.82);border-bottom:1px solid rgba(148,163,184,.18);box-shadow:0 18px 40px -36px rgba(15,23,42,.45);position:relative;z-index:2}.patient-portal-page-header-inner{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin:0 auto;max-width:1120px;padding:18px 24px 16px}.patient-portal-header-copy{display:flex;flex-direction:column;gap:6px}.patient-portal-header-eyebrow{color:var(--portal-primary);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.patient-portal-header-title{color:var(--portal-text-primary);font-size:30px;font-weight:700;line-height:1.1;margin:0}.patient-portal-header-subtitle{color:var(--portal-text-secondary);font-size:15px;line-height:1.5;margin:0;max-width:620px}.patient-portal-header-actions{align-items:center;display:flex;gap:12px}.patient-portal-action-button{align-items:center;background:hsla(0,0%,100%,.92);border:1px solid rgba(148,163,184,.22);border-radius:8px;box-shadow:0 20px 45px -34px rgba(15,23,42,.35);color:var(--portal-text-primary);cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:12px 18px;transition:transform .15s ease,box-shadow .15s ease,background-color .15s ease,color .15s ease}.patient-portal-action-button:hover{box-shadow:0 24px 48px -34px rgba(15,23,42,.42);transform:translateY(-1px)}.patient-portal-action-button:active{transform:scale(.98)}.patient-portal-action-button-primary{background:linear-gradient(135deg,var(--portal-accent) 0,var(--portal-primary-strong) 100%);border-color:transparent;color:var(--portal-surface-primary)}.patient-portal-action-button-secondary{background:rgba(240,244,246,.9);color:var(--portal-primary-strong)}.patient-portal-tabs-desktop{background:#fff;border-right:1px solid rgba(61,90,103,.1);bottom:0;display:flex;flex-direction:column;gap:2px;inset-inline-start:0;margin:0;overflow-x:hidden;overflow-y:auto;padding:14px 0 12px;position:fixed;top:var(--portal-topbar-height,60px);width:var(--portal-sidebar-width,264px);z-index:60}.patient-portal-sidebar-brand{border-bottom:1px solid rgba(61,90,103,.08);display:flex;flex-direction:column;gap:2px;margin-bottom:6px;padding:8px 22px 16px}.patient-portal-sidebar-wordmark{color:var(--portal-header-green);font-size:22px;font-weight:700;letter-spacing:-.01em;line-height:1.1}.patient-portal-sidebar-sublabel{color:var(--portal-text-secondary);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.patient-portal-sidebar-nav{display:flex;flex:1 1 auto;flex-direction:column;gap:2px;min-height:0;overflow-y:auto}.patient-portal-sidebar-footer{border-top:1px solid rgba(61,90,103,.08);display:flex;flex-direction:column;gap:16px;margin-top:auto;padding:16px 0 12px}.patient-portal-tab-button{align-items:center;background:transparent;border:1px solid transparent;border-radius:8px;box-sizing:border-box;color:var(--portal-text-secondary);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:12px;justify-content:flex-start;line-height:1.1;margin:2px 12px;padding:11px 14px;text-align:start;transition:background-color .16s ease,color .16s ease,border-color .16s ease;white-space:nowrap;width:calc(100% - 24px)}.patient-portal-tab-button:hover{background:color-mix(in srgb,var(--portal-accent) 8%,#fff);color:var(--portal-primary)}.patient-portal-tab-button.active{background:var(--portal-accent-soft);border-color:color-mix(in srgb,var(--portal-accent) 30%,transparent);color:var(--portal-accent-ink);font-weight:600}.patient-portal-sidebar-logout{align-items:center;background:transparent;border:1px solid transparent;border-radius:8px;color:var(--portal-text-secondary);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:12px;line-height:1.1;margin:0 16px;padding:11px 14px;text-align:start;transition:background-color .16s ease,color .16s ease;width:calc(100% - 24px)}.patient-portal-sidebar-logout:hover{background:color-mix(in srgb,var(--portal-danger) 8%,#fff);color:var(--portal-danger)}.patient-portal-tab-icon-wrapper{align-items:center;display:inline-flex;justify-content:center;position:relative}.patient-portal-header-logout,.patient-portal-page-header,.patient-portal-tabs-mobile{display:none}.patient-portal-pull-indicator{align-items:center;color:var(--portal-text-secondary);display:flex;font-size:13px;font-weight:500;gap:8px;justify-content:center;overflow:hidden}.patient-portal-inline-error{background:hsla(0,86%,97%,.95);border:1px solid hsla(0,94%,82%,.45);border-radius:12px;color:var(--portal-danger);font-size:14px;margin-bottom:20px;padding:14px 16px}.patient-portal-loading-state{padding:48px;text-align:center}.patient-portal-loading-state-icon{animation:spin 1s linear infinite;color:var(--color-disabled-text,#9ca3af);font-size:48px}.patient-portal-loading-state-copy{color:var(--portal-text-ui-muted);font-size:14px;margin-top:16px}.patient-portal-stat-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:24px}.patient-portal-stat-card{align-items:center;background:linear-gradient(180deg,hsla(0,0%,100%,.96),rgba(248,250,252,.98));border:1px solid rgba(226,232,240,.95);border-radius:16px;box-shadow:0 24px 60px -42px rgba(15,23,42,.3);display:flex;flex-direction:column;gap:10px;justify-content:center;min-height:132px;padding:20px 18px;text-align:center}.patient-portal-stat-icon{align-items:center;background:rgba(240,244,246,.9);border-radius:10px;display:inline-flex;height:48px;justify-content:center;width:48px}.patient-portal-stat-value{color:var(--portal-text-primary);font-size:28px;font-weight:700;line-height:1.1}.patient-portal-stat-label{color:var(--portal-text-secondary);font-size:12px;font-weight:600;line-height:1.3}.patient-portal-surface{background:hsla(0,0%,100%,.92);border:1px solid rgba(226,232,240,.95);border-radius:16px;box-shadow:0 32px 70px -48px rgba(15,23,42,.34);padding:24px}.patient-portal-surface+.patient-portal-surface{margin-top:20px}.patient-portal-goals-surface{overflow:hidden}.patient-portal-goals-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:20px}.patient-portal-goals-eyebrow{align-items:center;color:var(--portal-primary);display:inline-flex;font-size:11px;font-weight:700;gap:6px;letter-spacing:.12em;margin-bottom:8px;text-transform:uppercase}.patient-portal-goals-title{margin-bottom:8px}.patient-portal-goals-subtitle{color:var(--portal-text-secondary);font-size:14px;line-height:1.6;margin:0;max-width:620px}.patient-portal-goals-summary{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.patient-portal-goals-summary-pill{align-items:center;background:rgba(232,237,239,.88);border-radius:999px;color:var(--portal-primary-strong);display:inline-flex;font-size:13px;font-weight:700;gap:6px;padding:10px 14px}.patient-portal-goals-summary-pill-success{background:rgba(220,252,231,.94);color:var(--portal-success)}.patient-portal-goals-chart-shell{background:#fff;border:1px solid rgba(211,221,225,.92);border-radius:16px;margin-bottom:18px;padding:18px 18px 12px}.patient-portal-goals-list{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}.patient-portal-goal-card{background:rgba(248,250,252,.9);border:1px solid rgba(226,232,240,.95);border-radius:12px;padding:18px}.patient-portal-goal-card-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:14px}.patient-portal-goal-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.patient-portal-goal-badge{align-items:center;background:rgba(232,237,239,.92);border-radius:999px;color:var(--portal-primary-strong);display:inline-flex;font-size:11px;font-weight:700;letter-spacing:.02em;padding:6px 10px}.patient-portal-goal-badge-muted{background:rgba(226,232,240,.9);color:var(--portal-slate)}.patient-portal-goal-card-title{color:var(--portal-text-primary);font-size:15px;line-height:1.5;margin:0}.patient-portal-goal-score{background:color-mix(in srgb,var(--goal-accent,#2f4753) 14%,#fff);border-radius:12px;color:var(--portal-primary);min-width:78px;padding:12px 10px;text-align:center}.patient-portal-goal-score span{display:block;font-size:24px;font-weight:700;line-height:1}.patient-portal-goal-score small{display:block;font-size:10px;font-weight:700;letter-spacing:.08em;margin-top:4px;text-transform:uppercase}.patient-portal-goal-metrics{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:14px}.patient-portal-goal-metric{background:hsla(0,0%,100%,.92);border:1px solid rgba(226,232,240,.94);border-radius:10px;display:flex;flex-direction:column;padding:12px}.patient-portal-goal-metric strong{margin-top:auto}.patient-portal-health-card,.patient-portal-health-embedded{display:flex;flex-direction:column;gap:16px}.patient-portal-health-embedded{border-top:1px solid rgba(211,221,225,.7);margin-top:20px;padding-top:20px}.patient-portal-health-embedded-header{align-items:center;display:flex;gap:8px}.patient-portal-health-embedded-icon{align-items:center;color:#d64457;display:inline-flex;font-size:16px}.patient-portal-health-embedded-label{color:var(--portal-text-secondary);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.patient-portal-next-appointment{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}.patient-portal-next-appointment-row{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.patient-portal-next-appointment-info{display:flex;flex-direction:column;gap:3px;min-width:0}.patient-portal-next-appointment-when{color:var(--portal-primary);font-size:13px;font-weight:600}.patient-portal-next-appointment-provider{color:var(--portal-text-primary);font-size:18px;font-weight:700;line-height:1.2}.patient-portal-next-appointment-type{color:var(--portal-text-secondary);font-size:14px}.patient-portal-health-header{align-items:center;display:flex;gap:12px}.patient-portal-health-icon{align-items:center;background:rgba(233,84,100,.12);border-radius:10px;color:#d64457;display:inline-flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.patient-portal-health-title{color:var(--portal-text-primary);font-size:18px;font-weight:700;line-height:1.2;margin:0}.patient-portal-health-muted{color:var(--portal-text-secondary);font-size:14px;line-height:1.5;margin:0}.patient-portal-health-section{display:flex;flex-direction:column;gap:10px}.patient-portal-health-section-label{color:var(--portal-text-secondary);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.patient-portal-health-goals{display:flex;flex-direction:column;gap:12px}.patient-portal-health-goal-row{align-items:baseline;display:flex;gap:12px;justify-content:space-between;margin-bottom:6px}.patient-portal-health-goal-name{color:var(--portal-text-primary);font-size:14px;font-weight:600}.patient-portal-health-goal-pct{color:var(--portal-primary);font-size:14px;font-variant-numeric:tabular-nums;font-weight:700}.patient-portal-health-goal-track{background:rgba(100,116,139,.14);border-radius:999px;height:8px;overflow:hidden}.patient-portal-health-goal-fill{background:var(--portal-accent);border-radius:999px;height:100%;transition:width .24s ease}.patient-portal-health-recent{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.patient-portal-health-recent-item{background:rgba(240,244,246,.7);border:1px solid rgba(211,221,225,.7);border-radius:10px;display:flex;flex-direction:column;gap:2px;padding:10px 12px}.patient-portal-health-recent-name{color:var(--portal-text-secondary);font-size:12px}.patient-portal-health-recent-value{color:var(--portal-text-primary);font-size:16px;font-variant-numeric:tabular-nums;font-weight:700}.patient-portal-health-revoke-link{align-self:flex-start;background:transparent;border:none;color:var(--portal-text-secondary);cursor:pointer;font-size:13px;font-weight:600;padding:4px 0;text-decoration:underline}.patient-portal-health-revoke-link:hover{color:var(--portal-danger)}.patient-portal-health-revoke-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding-top:4px}.patient-portal-health-revoke-actions{display:flex;gap:8px}.patient-portal-health-revoke-confirm{align-items:center;background:var(--portal-danger);border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;justify-content:center;padding:11px 16px}.patient-portal-health-revoke-confirm:disabled{cursor:not-allowed;opacity:.6}@media(max-width:767px){.patient-portal-health-recent{grid-template-columns:1fr}}.patient-portal-goal-metric-label{color:var(--portal-text-secondary);display:block;font-size:11px;font-weight:700;letter-spacing:.04em;margin-bottom:6px;text-transform:uppercase}.patient-portal-goal-metric strong{color:var(--portal-text-primary);font-size:18px;line-height:1.2}.patient-portal-goal-progress-track{background:rgba(226,232,240,.9);border-radius:999px;height:10px;margin-bottom:12px;overflow:hidden;width:100%}.patient-portal-goal-progress-fill{border-radius:999px;height:100%;transition:width .22s ease}.patient-portal-goal-supporting{color:var(--portal-text-secondary);display:flex;font-size:12px;gap:12px;justify-content:space-between;line-height:1.5}.patient-portal-goal-input{border-top:1px solid var(--portal-border,rgba(148,163,184,.28));display:flex;flex-direction:column;gap:10px;margin-top:16px;padding-top:16px}.patient-portal-goal-input-label{color:var(--portal-text-secondary);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.patient-portal-goal-ack-toggle{align-items:center;align-self:flex-start;background:transparent;border:1px solid var(--portal-border,rgba(148,163,184,.4));border-radius:999px;color:var(--portal-text-secondary);cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:8px;padding:8px 14px;transition:background .15s ease,border-color .15s ease,color .15s ease}.patient-portal-goal-ack-toggle:hover:not(:disabled){border-color:var(--color-success,#16a34a);color:var(--color-success,#16a34a)}.patient-portal-goal-ack-toggle.is-acknowledged{background:color-mix(in srgb,var(--portal-success) 10%,#fff);border-color:var(--portal-success);color:var(--portal-primary)}.patient-portal-page-shell .workspace-tabs__tab:not([aria-selected=true]){color:var(--portal-text-secondary)}.patient-portal-goal-ack-toggle:disabled{cursor:default;opacity:.6}.patient-portal-goal-note{font-family:Inter,system-ui,sans-serif;resize:vertical;width:100%}.patient-portal-goal-input-actions{align-items:center;display:flex;gap:12px}.patient-portal-comm-prefs{display:flex;flex-direction:column;gap:16px;margin-top:20px}.patient-portal-comm-prefs-body{display:flex;flex-direction:column;gap:14px}.patient-portal-comm-prefs-group{border:0;display:flex;flex-direction:column;gap:12px;margin:0;padding:0 0 0 4px}.patient-portal-comm-prefs-group:disabled{opacity:.5}.patient-portal-comm-prefs-help{color:var(--portal-text-secondary);display:block;font-size:12px;font-weight:400;margin-top:2px}.patient-portal-comm-prefs-actions{align-items:center;display:flex;gap:12px;margin-top:4px}.patient-portal-attachment-list{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:10px 0 0;padding:0}.patient-portal-attachment-chip{align-items:center;background:var(--portal-surface-muted,rgba(148,163,184,.08));border:1px solid var(--portal-border,rgba(148,163,184,.4));border-radius:10px;display:inline-flex;font-size:13px;gap:8px;max-width:100%;padding:6px 10px}.patient-portal-attachment-name{color:var(--portal-text-primary);max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.patient-portal-attachment-link{color:var(--color-ocean-blue-600,#2f4753);text-decoration:none}.patient-portal-attachment-link:hover{text-decoration:underline}.patient-portal-attachment-remove{background:transparent;border:0;color:var(--portal-text-secondary);cursor:pointer;font-size:18px;line-height:1;padding:0 2px}.patient-portal-signature-card{display:flex;flex-direction:column;gap:16px;margin-top:20px}.patient-portal-signature-card.has-request{border:1px solid var(--color-warning,#d97706);box-shadow:0 0 0 1px var(--color-warning,#d97706)}.patient-portal-signature-editor{display:flex;flex-direction:column;gap:12px}.patient-portal-signature-actions{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.patient-portal-section-heading{color:var(--portal-text-primary);font-size:20px;font-weight:700;line-height:1.2;margin:0 0 18px}.patient-portal-list{display:flex;flex-direction:column;gap:14px}.patient-portal-list-card{background:rgba(248,250,252,.88);border:1px solid rgba(226,232,240,.95);border-radius:16px;padding:18px;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease,background-color .15s ease}.patient-portal-list-card:hover{box-shadow:0 24px 50px -40px rgba(15,23,42,.3);transform:translateY(-1px)}.patient-portal-list-card.unread{background:rgba(240,244,246,.92);border-color:rgba(176,195,205,.95)}.patient-portal-list-card-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.patient-portal-list-card-header-spaced{margin-bottom:12px}.patient-portal-flex-1{flex:1;min-width:0}.patient-portal-card-title{color:var(--portal-text-primary);font-size:18px;font-weight:600;line-height:1.4}.patient-portal-card-title+.patient-portal-card-title{margin-top:6px}.patient-portal-card-subtitle{color:var(--portal-text-ui-muted);font-size:14px;line-height:1.5}.patient-portal-card-caption{color:var(--portal-text-secondary);font-size:12px;line-height:1.5}.patient-portal-card-snippet{color:var(--text-secondary,#374151);font-size:14px;line-height:1.6}.patient-portal-status-dot{background:var(--color-ocean-blue-600,#2f4753);border-radius:50%;display:inline-block;height:8px;margin-inline-end:8px;width:8px}.patient-portal-status-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:12px;font-weight:700;justify-content:center;line-height:1.3;padding:6px 12px;white-space:nowrap}.patient-portal-note-block{background:var(--bg-secondary,#f9fafb);border-radius:12px;color:var(--text-secondary,#374151);font-family:Inter,system-ui,sans-serif;font-size:14px;line-height:1.6;margin-top:12px;padding:12px;white-space:pre-wrap}.patient-portal-modal-stack{display:flex;flex-direction:column;gap:16px}.patient-portal-modal-panel{background:var(--portal-surface-primary);border:1px solid var(--border-light,#e5e7eb);border-radius:10px;color:var(--text-secondary,#374151);font-size:14px;line-height:1.6;padding:16px;white-space:pre-wrap}.patient-portal-modal-action-button{background:transparent;border:none;color:var(--color-ocean-blue-600,#2f4753);cursor:pointer;font-size:15px;font-weight:600;padding:6px 8px}.patient-portal-modal-action-button:disabled{color:var(--portal-text-disabled);cursor:not-allowed}.patient-portal-primary-button-inline{padding-inline:24px;width:auto}.patient-portal-action-cluster{display:flex;flex-wrap:wrap;gap:12px}.patient-portal-empty-state{background:hsla(0,0%,100%,.94);border:1px solid rgba(226,232,240,.95);border-radius:12px;box-shadow:0 24px 50px -42px rgba(15,23,42,.25);padding:42px 24px;text-align:center}.patient-portal-empty-state-icon{align-items:center;background:rgba(240,244,246,.92);border-radius:12px;color:var(--portal-primary);display:inline-flex;height:72px;justify-content:center;margin:0 auto 16px;width:72px}.patient-portal-empty-state-title{color:var(--portal-text-primary);font-size:20px;font-weight:700;line-height:1.2;margin:0 0 8px}.patient-portal-empty-state-body{color:var(--portal-text-secondary);font-size:14px;line-height:1.5;margin:0}.patient-portal-form-stack{display:flex;flex-direction:column;gap:16px}.patient-portal-form-grid{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.patient-portal-field-label{color:var(--portal-text-tertiary);display:block;font-size:14px;font-weight:600;margin-bottom:8px}.patient-portal-input,.patient-portal-select,.patient-portal-textarea{background:rgba(248,250,252,.96);border:1px solid rgba(203,213,225,.9);border-radius:10px;box-sizing:border-box;color:var(--portal-text-primary);font-family:inherit;font-size:14px;padding:12px 14px;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease;width:100%}.patient-portal-input:focus,.patient-portal-select:focus,.patient-portal-textarea:focus{background:var(--portal-surface-primary);border-color:rgba(61,90,103,.45);box-shadow:0 0 0 4px rgba(61,90,103,.12);outline:none}.patient-portal-upload-meta{color:var(--portal-text-secondary);font-size:14px;margin-top:8px}.patient-portal-primary-button{background:var(--portal-accent);border:none;border-radius:8px;color:var(--portal-surface-primary);cursor:pointer;font-size:15px;font-weight:600;padding:13px 16px;transition:transform .15s ease,background-color .15s ease,opacity .15s ease;width:100%}.patient-portal-primary-button:hover{background:var(--portal-primary-strong)}.patient-portal-primary-button:hover:not(:disabled){transform:translateY(-1px)}.patient-portal-primary-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.58}.patient-portal-tonal-panel{background:rgba(240,244,246,.9);border:1px solid rgba(211,221,225,.95);border-radius:12px;padding:16px}.patient-portal-link-button{color:var(--portal-primary);font-size:14px;font-weight:600;text-decoration:none}.patient-portal-secondary-button{align-items:center;background:rgba(240,244,246,.95);border:1px solid rgba(211,221,225,.95);border-radius:8px;color:var(--portal-primary-strong);cursor:pointer;display:inline-flex;font-size:14px;font-weight:700;gap:8px;justify-content:center;padding:11px 16px;transition:transform .15s ease,box-shadow .15s ease,opacity .15s ease}.patient-portal-secondary-button:hover:not(:disabled){box-shadow:0 20px 40px -32px rgba(47,71,83,.4);transform:translateY(-1px)}.patient-portal-secondary-button:disabled{cursor:not-allowed;opacity:.56}.patient-portal-split-heading{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:18px}.patient-portal-section-subtitle{color:var(--portal-text-secondary);font-size:14px;line-height:1.6;margin:0}.patient-portal-inline-pill{align-items:center;background:rgba(226,232,240,.95);border-radius:999px;color:var(--portal-text-tertiary);display:inline-flex;font-size:12px;font-weight:700;justify-content:center;min-height:36px;padding:8px 12px}.patient-portal-document-card{align-items:center;display:flex;gap:14px;justify-content:space-between}.patient-portal-document-card-main{align-items:flex-start;display:flex;flex:1;gap:14px}.patient-portal-document-card-icon{align-items:center;background:rgba(232,237,239,.95);border-radius:10px;color:var(--portal-primary-strong);display:inline-flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.patient-portal-document-card-icon-muted{background:rgba(241,245,249,.95);color:var(--portal-slate)}.patient-portal-document-card-topline{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:4px}.patient-portal-document-card-title{color:var(--portal-text-primary);font-size:16px;font-weight:700;line-height:1.4}.patient-portal-document-card-meta{color:var(--portal-slate);font-size:14px;line-height:1.5}.patient-portal-document-card-submeta{color:var(--portal-text-secondary);font-size:12px;line-height:1.5;margin-top:4px}.patient-portal-document-badge{align-items:center;background:rgba(241,245,249,.95);border-radius:999px;color:var(--portal-slate);display:inline-flex;font-size:11px;font-weight:700;padding:6px 10px}.patient-portal-document-badge-shared{background:rgba(232,237,239,.95);color:var(--portal-primary-strong)}.patient-portal-ios-tab-shell{margin-bottom:18px}.patient-portal-ios-appointment-card{align-items:center;background:var(--portal-surface-primary);border:1px solid rgba(226,232,240,.95);border-radius:12px;cursor:pointer;display:flex;gap:14px;padding:16px 18px;text-align:start;transition:transform .15s ease,box-shadow .15s ease;width:100%}.patient-portal-ios-appointment-card:hover{box-shadow:0 24px 48px -40px rgba(15,23,42,.3);transform:translateY(-1px)}.patient-portal-ios-appointment-time{display:flex;flex-direction:column;gap:2px;min-width:96px}.patient-portal-ios-appointment-date{color:var(--portal-text-secondary);font-size:12px;font-weight:600;line-height:1.3}.patient-portal-ios-appointment-time strong{color:var(--portal-text-primary);font-size:15px;line-height:1.3}.patient-portal-ios-appointment-accent{align-self:stretch;background:linear-gradient(180deg,var(--portal-primary-strong) 0,var(--portal-sky) 100%);border-radius:999px;width:3px}.patient-portal-ios-appointment-body{flex:1;min-width:0}.patient-portal-ios-appointment-title{color:var(--portal-text-primary);font-size:18px;font-weight:700;line-height:1.3;margin-bottom:4px}.patient-portal-ios-appointment-meta{color:var(--portal-slate);font-size:14px;line-height:1.5}.patient-portal-appointment-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.patient-portal-appointment-badge{align-items:center;background:rgba(226,232,240,.95);border-radius:999px;color:var(--portal-text-tertiary);display:inline-flex;font-size:11px;font-weight:800;justify-content:center;letter-spacing:.02em;min-height:32px;padding:6px 10px}.patient-portal-appointment-badge-telehealth{background:rgba(224,231,255,.98);color:var(--portal-indigo)}.patient-portal-empty-state-compact{padding-block:28px}.patient-portal-claim-card{gap:16px}.patient-portal-claim-card-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:14px}.patient-portal-status-pill{align-items:center;border-radius:999px;display:inline-flex;font-size:11px;font-weight:700;justify-content:center;padding:6px 10px;white-space:nowrap}.patient-portal-status-pill.success{background:rgba(220,252,231,.96);color:var(--portal-success-strong)}.patient-portal-status-pill.info{background:rgba(232,237,239,.96);color:var(--portal-primary-strong)}.patient-portal-status-pill.danger{background:hsla(0,93%,94%,.96);color:var(--portal-danger-strong)}.patient-portal-status-pill.neutral{background:rgba(241,245,249,.96);color:var(--portal-slate)}.patient-portal-financial-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:14px}.patient-portal-financial-cell{background:hsla(0,0%,100%,.95);border:1px solid rgba(226,232,240,.96);border-radius:12px;padding:14px}.patient-portal-financial-label{color:var(--portal-text-secondary);display:block;font-size:11px;font-weight:700;letter-spacing:.04em;line-height:1.4;margin-bottom:6px;text-transform:uppercase}.patient-portal-financial-cell strong{color:var(--portal-text-primary);font-size:17px;line-height:1.3}.patient-portal-tonal-panel-compact{margin-bottom:12px;padding:14px 16px}.patient-portal-claim-documents{display:flex;flex-wrap:wrap;gap:10px}.patient-portal-inline-action{align-items:center;background:rgba(232,237,239,.95);border:none;border-radius:999px;color:var(--portal-primary-strong);cursor:pointer;display:inline-flex;font-size:13px;font-weight:700;gap:6px;padding:10px 14px}.patient-portal-inline-action:disabled{cursor:not-allowed;opacity:.56}.patient-portal-login-shell{align-items:center;background:radial-gradient(circle at top left,rgba(61,90,103,.14),transparent 34%),linear-gradient(180deg,var(--portal-info-surface) 0,var(--portal-surface-secondary) 58%,var(--portal-surface-tertiary) 100%);display:flex;justify-content:center;min-height:100vh;padding:24px}.patient-portal-login-card{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:hsla(0,0%,100%,.9);border:1px solid rgba(226,232,240,.95);border-radius:28px;box-shadow:0 40px 80px -56px rgba(15,23,42,.38);max-width:430px;padding:32px;width:100%}.patient-portal-login-header{margin-bottom:28px;text-align:center}.patient-portal-login-icon{align-items:center;background:rgba(240,244,246,.9);border-radius:12px;color:var(--portal-primary);display:inline-flex;height:72px;justify-content:center;margin:0 auto 16px;width:72px}.patient-portal-login-title{color:var(--portal-text-primary);font-size:30px;font-weight:700;line-height:1.1;margin:0 0 8px}.patient-portal-login-subtitle{color:var(--portal-text-secondary);font-size:14px;line-height:1.5;margin:0}@media(max-width:767px){.patient-portal-page-shell{padding-bottom:calc(88px + env(safe-area-inset-bottom, 0px));padding-inline-start:0;padding-top:0}.patient-portal-topbar{display:none}.patient-portal-header-logout{display:inline-flex}.patient-portal-page-header{display:block}.patient-portal-page-content{padding:18px 16px 24px}.patient-portal-page-header-inner{align-items:stretch;flex-direction:column;padding:18px 16px 14px}.patient-portal-header-title{font-size:28px}.patient-portal-header-actions{justify-content:flex-end;width:100%}.patient-portal-action-button-toolbar{border-radius:10px;height:48px;min-width:48px;padding:0;width:48px}.patient-portal-action-button-toolbar .patient-portal-action-label,.patient-portal-tabs-desktop{display:none}.patient-portal-tabs-mobile{align-items:flex-start;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);background:hsla(0,0%,100%,.88);border:1px solid rgba(226,232,240,.95);border-radius:12px;inset-inline:12px;bottom:calc(10px + env(safe-area-inset-bottom, 0px));box-shadow:0 24px 55px -38px rgba(15,23,42,.38);display:flex;gap:6px;justify-content:space-around;padding:10px 10px 12px;position:fixed;z-index:100}.patient-portal-mobile-tab{align-items:center;background:transparent;border:none;border-radius:10px;color:var(--portal-text-secondary);cursor:pointer;display:flex;flex:1;flex-direction:column;gap:5px;justify-content:center;min-height:54px;padding:8px 4px;transition:background-color .15s ease,color .15s ease,transform .15s ease}.patient-portal-mobile-tab:active{background:rgba(241,245,249,.95);transform:scale(.96)}.patient-portal-mobile-tab.active{background:rgba(61,90,103,.1);color:var(--portal-primary)}.patient-portal-mobile-label{font-size:10px;font-weight:700;line-height:1.1}.patient-portal-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.patient-portal-surface{border-radius:12px;padding:20px 18px}.patient-portal-goals-header{flex-direction:column}.patient-portal-goals-summary{justify-content:flex-start}.patient-portal-goals-chart-shell{border-radius:12px;padding:14px 12px 10px}.patient-portal-goals-list{grid-template-columns:1fr}.patient-portal-goal-card{border-radius:12px;padding:16px}.patient-portal-goal-card-header{flex-direction:column}.patient-portal-goal-score{width:100%}.patient-portal-goal-metrics{grid-template-columns:1fr}.patient-portal-goal-supporting{flex-direction:column}.patient-portal-list-card{border-radius:12px;padding:16px}.patient-portal-claim-card-header,.patient-portal-document-card,.patient-portal-document-card-topline,.patient-portal-split-heading{flex-direction:column}.patient-portal-secondary-button{width:100%}.patient-portal-ios-appointment-card{align-items:flex-start;flex-direction:column}.patient-portal-ios-appointment-time{min-width:0}.patient-portal-ios-appointment-accent{height:3px;width:100%}.patient-portal-appointment-actions,.patient-portal-appointment-actions .patient-portal-secondary-button{width:100%}.patient-portal-financial-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.patient-portal-form-grid{grid-template-columns:1fr}.patient-portal-login-shell{align-items:stretch;padding:16px}.patient-portal-login-card{border-radius:12px;margin:auto 0;max-width:none;padding:24px 20px}}.patient-portal-accessibility-toggle-shell{margin:0 16px;width:auto}.patient-portal-accessibility-toggle{align-items:center;background:#fff;border:1px solid rgba(61,90,103,.16);border-radius:8px;box-shadow:none;color:var(--portal-text-primary);cursor:pointer;display:flex;gap:10px;padding:8px 10px;text-align:start;transition:border-color .15s ease,background-color .15s ease;width:100%}.patient-portal-accessibility-toggle:hover{background:color-mix(in srgb,var(--portal-brand) 8%,#fff)}.patient-portal-accessibility-toggle:focus-visible{border-color:rgba(61,90,103,.64);box-shadow:0 0 0 3px rgba(61,90,103,.16);outline:none}.patient-portal-accessibility-toggle.active{background:color-mix(in srgb,var(--portal-brand) 12%,#fff);border-color:rgba(61,90,103,.4)}.patient-portal-accessibility-toggle-icon{align-items:center;background:rgba(232,237,239,.92);border-radius:8px;color:var(--portal-primary-strong);display:inline-flex;flex-shrink:0;height:28px;justify-content:center;width:28px}.patient-portal-accessibility-toggle-copy{display:flex;flex:1;flex-direction:column;min-width:0}.patient-portal-accessibility-toggle-title{font-size:13px;font-weight:600;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.patient-portal-accessibility-toggle-subtitle{color:var(--portal-text-muted,#6b7280);display:block;font-size:11px;font-weight:400;line-height:1.3;margin-top:2px;overflow-wrap:anywhere;white-space:normal}.patient-portal-accessibility-toggle-state{align-items:center;background:rgba(100,116,139,.16);border-radius:999px;color:var(--portal-text-secondary);display:inline-flex;flex-shrink:0;font-size:11px;justify-content:center;min-height:22px;min-width:40px;padding:0 10px;text-transform:uppercase;transition:background-color .15s ease,color .15s ease}.patient-portal-accessibility-toggle.active .patient-portal-accessibility-toggle-state{background:var(--portal-primary);color:#fff}.patient-portal-visually-hidden{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border:0;white-space:nowrap}body.patient-portal-accessibility-enabled .patient-portal-page-content{padding:36px 28px 120px}body.patient-portal-accessibility-enabled .patient-portal-page-header-inner{gap:20px;padding:24px 28px 20px}body.patient-portal-accessibility-enabled .patient-portal-header-title,body.patient-portal-accessibility-enabled .patient-portal-login-title{font-size:38px;line-height:1.08}body.patient-portal-accessibility-enabled .patient-portal-card-snippet,body.patient-portal-accessibility-enabled .patient-portal-card-subtitle,body.patient-portal-accessibility-enabled .patient-portal-document-card-meta,body.patient-portal-accessibility-enabled .patient-portal-document-card-submeta,body.patient-portal-accessibility-enabled .patient-portal-empty-state-body,body.patient-portal-accessibility-enabled .patient-portal-goals-subtitle,body.patient-portal-accessibility-enabled .patient-portal-header-subtitle,body.patient-portal-accessibility-enabled .patient-portal-loading-state-copy,body.patient-portal-accessibility-enabled .patient-portal-login-subtitle,body.patient-portal-accessibility-enabled .patient-portal-modal-panel,body.patient-portal-accessibility-enabled .patient-portal-note-block,body.patient-portal-accessibility-enabled .patient-portal-section-subtitle,body.patient-portal-accessibility-enabled .patient-portal-upload-meta{color:var(--portal-text-tertiary);font-size:18px;line-height:1.7}body.patient-portal-accessibility-enabled .patient-portal-document-badge,body.patient-portal-accessibility-enabled .patient-portal-goal-badge,body.patient-portal-accessibility-enabled .patient-portal-goals-eyebrow,body.patient-portal-accessibility-enabled .patient-portal-header-eyebrow,body.patient-portal-accessibility-enabled .patient-portal-inline-pill{font-size:13px;letter-spacing:.06em}body.patient-portal-accessibility-enabled .patient-portal-empty-state,body.patient-portal-accessibility-enabled .patient-portal-goal-card,body.patient-portal-accessibility-enabled .patient-portal-goals-chart-shell,body.patient-portal-accessibility-enabled .patient-portal-list-card,body.patient-portal-accessibility-enabled .patient-portal-login-card,body.patient-portal-accessibility-enabled .patient-portal-stat-card,body.patient-portal-accessibility-enabled .patient-portal-surface{border-width:2px}body.patient-portal-accessibility-enabled .patient-portal-empty-state,body.patient-portal-accessibility-enabled .patient-portal-list-card,body.patient-portal-accessibility-enabled .patient-portal-login-card,body.patient-portal-accessibility-enabled .patient-portal-surface{padding:28px}body.patient-portal-accessibility-enabled .patient-portal-form-stack,body.patient-portal-accessibility-enabled .patient-portal-list,body.patient-portal-accessibility-enabled .patient-portal-stat-grid{gap:20px}body.patient-portal-accessibility-enabled .patient-portal-stat-value{font-size:34px}body.patient-portal-accessibility-enabled .patient-portal-goal-metric-label,body.patient-portal-accessibility-enabled .patient-portal-goal-score small,body.patient-portal-accessibility-enabled .patient-portal-stat-label{font-size:14px}body.patient-portal-accessibility-enabled .patient-portal-card-title,body.patient-portal-accessibility-enabled .patient-portal-document-card-title,body.patient-portal-accessibility-enabled .patient-portal-empty-state-title,body.patient-portal-accessibility-enabled .patient-portal-goal-card-title,body.patient-portal-accessibility-enabled .patient-portal-section-heading{font-size:26px;line-height:1.3}body.patient-portal-accessibility-enabled .patient-portal-card-caption,body.patient-portal-accessibility-enabled .patient-portal-status-badge,body.patient-portal-accessibility-enabled .patient-portal-status-pill{font-size:14px;line-height:1.5}body.patient-portal-accessibility-enabled .patient-portal-goal-score{min-width:96px}body.patient-portal-accessibility-enabled .patient-portal-goal-score span{font-size:30px}body.patient-portal-accessibility-enabled .patient-portal-action-button,body.patient-portal-accessibility-enabled .patient-portal-inline-action,body.patient-portal-accessibility-enabled .patient-portal-link-button,body.patient-portal-accessibility-enabled .patient-portal-mobile-tab,body.patient-portal-accessibility-enabled .patient-portal-primary-button,body.patient-portal-accessibility-enabled .patient-portal-secondary-button,body.patient-portal-accessibility-enabled .patient-portal-tab-button{font-size:18px;font-weight:700;min-height:58px;padding:16px 20px}body.patient-portal-accessibility-enabled .patient-portal-mobile-tab,body.patient-portal-accessibility-enabled .patient-portal-tab-button{border-width:2px}body.patient-portal-accessibility-enabled .patient-portal-mobile-tab svg,body.patient-portal-accessibility-enabled .patient-portal-tab-icon-wrapper svg{font-size:1.45rem}body.patient-portal-accessibility-enabled .patient-portal-input,body.patient-portal-accessibility-enabled .patient-portal-select,body.patient-portal-accessibility-enabled .patient-portal-textarea{border-width:2px;font-size:18px;min-height:60px;padding:16px 18px}body.patient-portal-accessibility-enabled .patient-portal-field-label{font-size:17px;margin-bottom:10px}body.patient-portal-accessibility-enabled .patient-portal-inline-error{border-width:2px;font-size:17px;padding:18px}body.patient-portal-accessibility-enabled .patient-portal-loading-state{padding:64px 32px}body.patient-portal-accessibility-enabled .patient-portal-empty-state-icon .material-icons,body.patient-portal-accessibility-enabled .patient-portal-empty-state-icon svg,body.patient-portal-accessibility-enabled .patient-portal-loading-state-icon,body.patient-portal-accessibility-enabled .patient-portal-pull-indicator .material-icons,body.patient-portal-accessibility-enabled .patient-portal-stat-icon svg{font-size:2rem!important}body.patient-portal-accessibility-enabled .patient-portal-status-dot{height:12px;margin-inline-end:10px;width:12px}body.patient-portal-accessibility-enabled .patient-portal-status-badge,body.patient-portal-accessibility-enabled .patient-portal-status-pill{padding:10px 14px}body.patient-portal-accessibility-enabled .patient-portal-modal-panel,body.patient-portal-accessibility-enabled .patient-portal-note-block{border-width:2px;padding:18px}body.patient-portal-accessibility-enabled .patient-portal-modal-action-button{font-size:18px;min-height:58px;padding:8px 12px}body.patient-portal-accessibility-enabled .patient-portal-primary-button-inline{padding-inline:28px}body.patient-portal-accessibility-enabled .patient-portal-action-cluster{gap:14px}body.patient-portal-accessibility-enabled .patient-portal-document-card-icon,body.patient-portal-accessibility-enabled .patient-portal-empty-state-icon,body.patient-portal-accessibility-enabled .patient-portal-login-icon{border-radius:26px;height:84px;width:84px}body.patient-portal-accessibility-enabled .patient-portal-document-card,body.patient-portal-accessibility-enabled .patient-portal-document-card-main{gap:18px}body.patient-portal-accessibility-enabled .patient-portal-login-shell{padding:32px 24px 120px}@media(max-width:767px){.patient-portal-accessibility-toggle-shell{top:auto;inset-inline:16px;bottom:calc(96px + env(safe-area-inset-bottom, 0px));width:auto}.patient-portal-accessibility-toggle{border-radius:12px;padding:14px 16px}.patient-portal-accessibility-toggle-title{font-size:16px}body.patient-portal-accessibility-enabled .patient-portal-page-content{padding:24px 18px 140px}body.patient-portal-accessibility-enabled .patient-portal-page-header-inner{padding:20px 18px 16px}body.patient-portal-accessibility-enabled .patient-portal-header-title,body.patient-portal-accessibility-enabled .patient-portal-login-title{font-size:32px}body.patient-portal-accessibility-enabled .patient-portal-action-button-toolbar{min-width:100%;width:auto}body.patient-portal-accessibility-enabled .patient-portal-action-button-toolbar .patient-portal-action-label{display:inline}body.patient-portal-accessibility-enabled .patient-portal-document-card,body.patient-portal-accessibility-enabled .patient-portal-document-card-topline,body.patient-portal-accessibility-enabled .patient-portal-list-card-header,body.patient-portal-accessibility-enabled .patient-portal-split-heading{align-items:stretch;flex-direction:column}}.patient-portal-tab-badge{background:var(--portal-danger);border-radius:999px;box-sizing:border-box;color:#fff;font-size:10px;font-weight:800;height:16px;inset-inline-end:-11px;line-height:16px;min-width:16px;padding:0 4px;pointer-events:none;position:absolute;text-align:center;top:-7px}.patient-portal-tab-badge-dot{height:9px;inset-inline-end:-6px;min-width:9px;padding:0;top:-4px;width:9px}.patient-portal-mobile-more{display:flex;flex:1;position:relative}.patient-portal-mobile-more .patient-portal-mobile-tab{width:100%}.patient-portal-mobile-more-sheet{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);background:hsla(0,0%,100%,.97);border:1px solid rgba(226,232,240,.95);border-radius:12px;bottom:calc(100% + 12px);box-shadow:0 24px 55px -30px rgba(15,23,42,.45);display:flex;flex-direction:column;gap:4px;inset-inline-end:0;min-width:210px;padding:10px;position:absolute}.patient-portal-mobile-more-item{align-items:center;background:transparent;border:none;border-radius:14px;color:var(--portal-text-tertiary);cursor:pointer;display:flex;font-size:14px;font-weight:700;gap:12px;min-height:48px;padding:12px 14px;text-align:start;transition:background-color .15s ease,color .15s ease}.patient-portal-mobile-more-item:active{background:rgba(241,245,249,.95)}.patient-portal-mobile-more-item.active{background:rgba(61,90,103,.1);color:var(--portal-primary)}.patient-portal-home-program-actions{margin-top:16px}.patient-portal-home-program-done-button{align-items:center;display:flex;font-size:18px;gap:10px;justify-content:center;min-height:60px}.patient-portal-home-program-done-button.is-done{background:linear-gradient(135deg,var(--portal-success) 0,var(--portal-success-strong) 100%);box-shadow:none;color:#fff;cursor:default;opacity:1}.patient-portal-week-strip{align-items:flex-end;background:hsla(0,0%,100%,.92);border:1px solid rgba(226,232,240,.95);border-radius:12px;display:flex;gap:10px;margin-top:16px;padding:12px 14px}.patient-portal-week-strip-label{align-self:center;color:var(--portal-text-secondary);font-size:11px;font-weight:700;letter-spacing:.06em;margin-inline-end:4px;text-transform:uppercase}.patient-portal-week-day{align-items:center;display:flex;flex-direction:column;gap:5px;min-width:26px}.patient-portal-week-day-initial{color:var(--portal-text-secondary);font-size:11px;font-weight:700;text-transform:uppercase}.patient-portal-week-dot{align-items:center;background:rgba(226,232,240,.95);border:2px solid rgba(203,213,225,.9);border-radius:50%;box-sizing:border-box;color:#fff;display:inline-flex;height:16px;justify-content:center;width:16px}.patient-portal-week-dot.completed{background:var(--portal-success);border-color:var(--portal-success)}.patient-portal-week-day.is-today .patient-portal-week-day-initial{color:var(--portal-primary)}.patient-portal-week-day.is-today .patient-portal-week-dot{border-color:var(--portal-primary)}.patient-portal-week-day.is-today .patient-portal-week-dot.completed{background:var(--portal-success);border-color:var(--portal-success)}.patient-portal-celebration{align-items:center;background:linear-gradient(135deg,rgba(220,252,231,.96),rgba(187,247,208,.9));border:1px solid rgba(134,239,172,.9);border-radius:12px;box-shadow:0 24px 50px -42px rgba(21,128,61,.5);display:flex;gap:16px;margin-bottom:20px;padding:20px 22px}.patient-portal-celebration-icon{align-items:center;background:hsla(0,0%,100%,.85);border-radius:12px;color:var(--portal-success);display:inline-flex;flex-shrink:0;font-size:28px;height:56px;justify-content:center;width:56px}.patient-portal-celebration-title{color:var(--portal-success-strong);font-size:20px;font-weight:800;line-height:1.2;margin:0 0 4px}.patient-portal-celebration-body{color:var(--portal-success-strong);font-size:14px;line-height:1.5;margin:0}.patient-portal-question-block+.patient-portal-question-block{margin-top:18px}.patient-portal-question-required-mark{color:var(--portal-danger);margin-inline-start:3px}.patient-portal-question-error{color:var(--portal-danger);font-size:13px;font-weight:600;margin-top:6px}.patient-portal-question-checkbox-row{align-items:flex-start;background:rgba(248,250,252,.96);border:1px solid rgba(203,213,225,.9);border-radius:10px;cursor:pointer;display:flex;gap:12px;padding:12px 14px}.patient-portal-question-checkbox-row input[type=checkbox]{accent-color:var(--portal-primary);cursor:pointer;flex-shrink:0;height:20px;margin-top:1px;width:20px}.patient-portal-question-checkbox-label{color:var(--portal-text-primary);font-size:14px;font-weight:600;line-height:1.5}.patient-portal-form-success{padding:28px 16px;text-align:center}.patient-portal-form-success-icon{align-items:center;background:rgba(220,252,231,.95);border-radius:12px;color:var(--portal-success);display:inline-flex;height:72px;justify-content:center;margin:0 auto 16px;width:72px}.patient-portal-readonly-answer{background:rgba(248,250,252,.96);border:1px solid rgba(226,232,240,.95);border-radius:14px;color:var(--portal-text-primary);font-size:14px;line-height:1.6;margin-top:6px;padding:12px 14px;white-space:pre-wrap}.patient-portal-readonly-answer.unanswered{color:var(--portal-text-secondary);font-style:italic}body.patient-portal-accessibility-enabled .patient-portal-week-dot{height:22px;width:22px}body.patient-portal-accessibility-enabled .patient-portal-week-day-initial,body.patient-portal-accessibility-enabled .patient-portal-week-strip-label{font-size:14px}body.patient-portal-accessibility-enabled .patient-portal-home-program-done-button{font-size:20px;min-height:68px}body.patient-portal-accessibility-enabled .patient-portal-question-checkbox-label,body.patient-portal-accessibility-enabled .patient-portal-readonly-answer{font-size:18px;line-height:1.7}body.patient-portal-accessibility-enabled .patient-portal-question-checkbox-row input[type=checkbox]{height:26px;width:26px}.patient-portal-language-picker{align-items:stretch;display:flex;flex-direction:column;gap:6px;margin:0 16px}.patient-portal-language-picker-label{color:var(--portal-text-secondary);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.patient-portal-language-picker select{background:#fff;border:1px solid #cdd6d0;border-radius:8px;cursor:pointer;font-size:13px;padding:8px 10px;width:100%}.patient-portal-topbar-greeting{font-family:Inter,system-ui,sans-serif;font-size:20px;font-weight:600;letter-spacing:0}.patient-portal-topbar-subtitle{color:hsla(34,33%,96%,.72)}.patient-portal-topbar-date{color:hsla(34,33%,96%,.8)}.patient-portal-tabs-desktop{padding-bottom:40px}.patient-portal-sidebar-footer{border-top:none;gap:6px;padding-top:14px}.patient-portal-accessibility-toggle{background:#f1ece4;border:none;border-radius:10px;padding:10px 12px}.patient-portal-accessibility-toggle-icon{display:none}.patient-portal-accessibility-toggle-state{background:#fff;border:1px solid rgba(46,42,38,.11);border-radius:20px;color:#8a837b;font-size:10.5px;font-weight:700;letter-spacing:.04em;min-height:0;min-width:0;padding:2px 8px}.patient-portal-language-picker{margin-top:10px}.patient-portal-sidebar-logout{border-top:1px solid rgba(46,42,38,.11);margin-block-start:22px;padding-top:16px}@media(max-width:767px){.patient-portal-topbar{align-items:flex-start;display:flex;height:auto;inset-inline:auto;padding:16px 18px;position:static;top:auto}.patient-portal-topbar-greeting{font-size:18px}.patient-portal-topbar-subtitle{white-space:normal}.patient-portal-page-header,.patient-portal-topbar-date{display:none}.patient-portal-tabs-mobile{backdrop-filter:none;-webkit-backdrop-filter:none;background:#fff;border:none;border-radius:0;border-top:1px solid rgba(46,42,38,.11);inset-inline:0;bottom:0;box-shadow:none;gap:0;padding:9px 4px calc(14px + env(safe-area-inset-bottom, 0px))}.patient-portal-more-account{margin-top:8px;padding-top:4px}.patient-portal-more-account-label{color:#8a837b;font-size:10.5px;font-weight:600;letter-spacing:.06em;margin:12px 0 4px 6px;text-transform:uppercase}.patient-portal-mobile-more-sheet .patient-portal-accessibility-toggle-shell,.patient-portal-mobile-more-sheet .patient-portal-language-picker{margin:4px 6px;width:auto}.patient-portal-mobile-more-sheet .patient-portal-sidebar-logout{border-top:none;margin:4px 6px 0;padding-top:6px}}.pp-lc-toolbar{display:flex;justify-content:flex-start;margin-bottom:16px}.pp-lc-btn{align-items:center;border:none;border-radius:7px;cursor:pointer;display:inline-flex;font:600 13.5px Inter,sans-serif;gap:8px;padding:10px 16px}.pp-lc-btn.primary{background:#3d5a67;color:#fff}.pp-lc-btn.primary:hover:not(:disabled){background:#2f4753}.pp-lc-btn.ghost{background:#fff;border:1px solid rgba(46,42,38,.11);color:#2e2a26}.pp-lc-btn:disabled{cursor:default;opacity:.6}.pp-lc-btn svg{fill:none;flex:0 0 auto;height:15px;stroke:currentColor;stroke-width:1.9;width:15px}.pp-lc-list{display:flex;flex-direction:column;gap:12px}.pp-lc-card{background:#fff;border:1px solid rgba(46,42,38,.11);border-radius:10px;padding:16px 18px}.pp-lc-top{align-items:center;display:flex;gap:12px;justify-content:space-between}.pp-lc-prov{font-size:15px;font-weight:600}.pp-lc-meta{color:#8a837b;font-size:13.5px;margin-top:4px}.pp-lc-badge{border-radius:20px;font:600 11px Inter,sans-serif;padding:4px 10px;white-space:nowrap}.pp-lc-badge.sched{background:rgba(125,168,144,.16);color:#1f4d3b}.pp-lc-badge.cancel{background:rgba(180,85,47,.13);color:#b4552f}.pp-lc-badge.accent{background:#e9edef;color:#2e4652}.pp-lc-badge.neutral{background:rgba(46,42,38,.06);color:#8a837b}.pp-lc-preview{color:#8a837b;display:-webkit-box;font-size:13.5px;-webkit-line-clamp:1;margin-top:6px;-webkit-box-orient:vertical;overflow:hidden}.pp-lc-actionrow{align-items:center;display:flex;gap:10px;margin-top:12px}.pp-lc-btn.sm{font-size:13px;padding:8px 13px}.pp-lc-overdue{background:rgba(180,85,47,.13);border-radius:20px;color:#b4552f;font:600 11px Inter,sans-serif;padding:4px 10px;white-space:nowrap}.pp-lc-note{margin-top:12px}.pp-lc-note .l{color:#8a837b;display:block;font-size:10.5px;letter-spacing:.04em;margin-bottom:2px;text-transform:uppercase}.pp-lc-note span:not(.l){color:#2e2a26;font-family:Inter,system-ui,sans-serif;font-size:13.5px;line-height:1.5}.pp-lc-telerow{align-items:center;display:flex;gap:10px;margin-top:12px}.pp-lc-tele{background:#e9edef;border-radius:20px;color:#2e4652;font-size:11px;font-weight:600;padding:3px 10px;white-space:nowrap}@media(max-width:767px){.pp-lc-toolbar .pp-lc-btn{justify-content:center;width:100%}.pp-lc-actionrow,.pp-lc-telerow{flex-wrap:wrap}.pp-lc-actionrow .pp-lc-btn,.pp-lc-telerow .pp-lc-btn{justify-content:center;width:100%}}body.patient-portal-accessibility-enabled .pp-lc-prov{font-size:17.5px}body.patient-portal-accessibility-enabled .pp-lc-meta,body.patient-portal-accessibility-enabled .pp-lc-preview{font-size:15.5px}body.patient-portal-accessibility-enabled .pp-lc-badge{font-size:12.5px}body.patient-portal-accessibility-enabled .pp-lc-btn{font-size:15px}body.patient-portal-accessibility-enabled .pp-lc-note .l{font-size:12px}body.patient-portal-accessibility-enabled .pp-lc-note span:not(.l){font-size:15.5px}body.patient-portal-accessibility-enabled .pp-lc-overdue,body.patient-portal-accessibility-enabled .pp-lc-tele{font-size:12.5px}.pp-docs{--cream:#f8f5f1;--cream2:#f1ece4;--ink:#2e2a26;--muted:#8a837b;--line:rgba(46,42,38,.11);--green:#1f4d3b;--sage:#7da890;--accent:#3d5a67;--accentDeep:#2f4753;--accentSoft:#e9edef;--accentBd:#d3dde1;--accentInk:#2e4652;--serif:"Inter",system-ui,sans-serif;color:var(--ink);font-family:Inter,system-ui,sans-serif}.ppdoc-toolbar{display:flex;margin-bottom:16px}.ppdoc-btn{align-items:center;border:none;border-radius:7px;cursor:pointer;display:inline-flex;font:600 13.5px Inter,sans-serif;gap:8px;padding:10px 16px}.ppdoc-btn.primary{background:var(--accent);color:#fff}.ppdoc-btn.primary:hover:not(:disabled){background:var(--accentDeep)}.ppdoc-btn.ghost{background:#fff;border:1px solid var(--line);color:var(--ink)}.ppdoc-btn.sm{font-size:13px;padding:8px 13px}.ppdoc-btn:disabled{cursor:default;opacity:.55}.ppdoc-btn .material-icons,.ppdoc-btn svg{fill:none;font-size:16px;height:15px;stroke:currentColor;stroke-width:1.9;width:15px}.ppdoc-card{background:#fff;border:1px solid var(--line);border-radius:10px;margin-bottom:16px;padding:20px}.ppdoc-card.last{margin-bottom:0}.ppdoc-sectitle{font-family:var(--serif);font-size:17px;font-weight:600}.ppdoc-secsub{color:var(--muted);font-size:13.5px;margin-top:2px}.ppdoc-count{background:var(--accentSoft);border-radius:20px;color:var(--accentInk);font-size:12px;font-weight:600;padding:4px 11px;white-space:nowrap}.ppdoc-split{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.ppdoc-field,.ppdoc-split{margin-bottom:14px}.ppdoc-flabel{color:var(--ink);display:block;font-size:12.5px;font-weight:600;margin-bottom:5px}.ppdoc-input{background:#fff;border:1px solid var(--line);border-radius:8px;color:var(--ink);font-size:13.5px;padding:10px 12px;width:100%}.ppdoc-fileinput{background:var(--cream);border:1px dashed var(--accentBd);border-radius:8px;color:var(--ink);font-size:13px;padding:12px;width:100%}.ppdoc-uploadmeta{color:var(--muted);font-size:12.5px;margin-top:8px}.ppdoc-list{display:flex;flex-direction:column;gap:12px}.ppdoc-doccard{align-items:flex-start;background:var(--cream);border:1px solid var(--line);border-radius:10px;display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between;padding:14px 16px}.ppdoc-docmain{display:flex;flex:1;gap:13px;min-width:240px}.ppdoc-docicon{align-items:center;background:var(--accentSoft);border-radius:9px;color:var(--accentInk);display:flex;flex:0 0 auto;height:40px;justify-content:center;width:40px}.ppdoc-docicon.muted{background:rgba(46,42,38,.06);color:var(--muted)}.ppdoc-docicon .material-icons{font-size:20px}.ppdoc-doctop{align-items:center;display:flex;flex-wrap:wrap;gap:9px}.ppdoc-docname{font-size:14px;font-weight:600;word-break:break-word}.ppdoc-docmeta{color:var(--muted);font-size:12.5px;margin-top:3px}.ppdoc-docsub{color:var(--muted);font-size:12px;margin-top:2px}.ppdoc-acts{align-items:center;display:flex;flex-wrap:wrap;gap:9px}.ppdoc-badge{border-radius:20px;font:600 11px Inter,sans-serif;padding:4px 10px;white-space:nowrap}.ppdoc-badge.b-accent{background:var(--accentSoft);color:var(--accentInk)}.ppdoc-badge.b-neutral{background:rgba(46,42,38,.06);color:var(--muted)}@media(max-width:767px){.ppdoc-acts{width:100%}.ppdoc-acts .ppdoc-btn{flex:1;justify-content:center}}.pp-billing{--cream:#f8f5f1;--cream2:#f1ece4;--ink:#2e2a26;--muted:#8a837b;--line:rgba(46,42,38,.11);--green:#1f4d3b;--sage:#7da890;--accent:#3d5a67;--accentDeep:#2f4753;--accentSoft:#e9edef;--accentBd:#d3dde1;--accentInk:#2e4652;--serif:"Inter",system-ui,sans-serif;color:var(--ink);font-family:Inter,system-ui,sans-serif}.patient-portal-page-shell.pp-billing-shell{background:#f1ece4}.patient-portal-page-content.pp-billing{margin-inline:0 auto;max-width:960px;padding:26px 30px 48px}@media(max-width:767px){.patient-portal-page-content.pp-billing{padding:16px 14px 90px}}.ppb-card{background:#fff;border:1px solid var(--line);border-radius:10px;margin-bottom:16px;padding:18px 20px}.ppb-btn{align-items:center;border:none;border-radius:7px;cursor:pointer;display:inline-flex;font:600 13.5px Inter,sans-serif;gap:8px;padding:10px 16px}.ppb-btn.primary{background:var(--accent);color:#fff}.ppb-btn.primary:hover:not(:disabled){background:var(--accentDeep)}.ppb-btn.ghost{background:#fff;border:1px solid var(--line);color:var(--ink)}.ppb-btn:disabled{cursor:default;opacity:.6}.ppb-btn .material-icons{font-size:16px}.ppb-stats4{display:grid;gap:16px;grid-template-columns:repeat(4,1fr);margin-bottom:16px}.ppb-stat{background:#fff;border:1px solid var(--line);border-radius:10px;padding:20px 16px;text-align:center}.ppb-stat b{display:block;font-family:var(--serif);font-size:30px;font-weight:500;line-height:1}.ppb-stat span{color:var(--muted);display:block;font-size:12px;margin-top:6px}.ppb-sechead{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:4px}.ppb-sectitle{font-family:var(--serif);font-size:17px;font-weight:600}.ppb-secsub{color:var(--muted);font-size:14px;margin-bottom:18px}.ppb-count{background:var(--accentSoft);border-radius:20px;color:var(--accentInk);font-size:12px;font-weight:600;padding:4px 11px;white-space:nowrap}.ppb-claim{background:var(--cream);border:1px solid var(--line);border-radius:10px;padding:18px 20px}.ppb-claim+.ppb-claim{margin-top:14px}.ppb-claimtop{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.ppb-claimtop .cid{font-size:16px;font-weight:600}.ppb-claimtop .meta{color:var(--muted);font-size:13px;margin-top:3px}.ppb-badge{border-radius:20px;font:600 11px Inter,sans-serif;padding:4px 10px;white-space:nowrap}.ppb-badge.queue{background:var(--accentSoft);color:var(--accentInk)}.ppb-badge.success{background:rgba(125,168,144,.18);color:var(--green)}.ppb-badge.danger{background:rgba(180,85,47,.13);color:#8a3417}.ppb-grid2{display:grid;gap:12px;grid-template-columns:1fr 1fr;margin:16px 0}.ppb-cell{background:#fff;border:1px solid var(--line);border-radius:8px;padding:12px 14px}.ppb-cell .l{color:var(--muted);font-size:10.5px;letter-spacing:.04em;text-transform:uppercase}.ppb-cell .v{font-family:var(--serif);font-size:22px;font-weight:500;margin-top:3px}.ppb-pay{width:auto}.ppb-ins{background:#fff;border:1px solid var(--line);border-radius:8px;font-size:14px;margin-top:4px;padding:12px 14px}.ppb-ins b{font-weight:600}.ppb-efiled{background:rgba(61,90,103,.1);border:1px solid rgba(61,90,103,.28);border-radius:8px;color:var(--accentInk);font-size:13px;line-height:1.45;margin-top:8px;padding:10px 12px}.ppb-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}@media(max-width:767px){.ppb-stats4{gap:10px;grid-template-columns:1fr 1fr}.ppb-actions{flex-direction:column}.ppb-actions .ppb-btn,.ppb-pay{justify-content:center;width:100%}}body.patient-portal-accessibility-enabled .ppb-stat b{font-size:34px}body.patient-portal-accessibility-enabled .ppb-stat span{font-size:14px}body.patient-portal-accessibility-enabled .ppb-sectitle{font-size:19px}body.patient-portal-accessibility-enabled .ppb-secsub{font-size:16px}body.patient-portal-accessibility-enabled .ppb-count{font-size:14px}body.patient-portal-accessibility-enabled .ppb-claimtop .cid{font-size:18px}body.patient-portal-accessibility-enabled .ppb-claimtop .meta{font-size:15px}body.patient-portal-accessibility-enabled .ppb-badge{font-size:12.5px}body.patient-portal-accessibility-enabled .ppb-cell .l{font-size:12px}body.patient-portal-accessibility-enabled .ppb-cell .v{font-size:25px}body.patient-portal-accessibility-enabled .ppb-ins{font-size:16px}body.patient-portal-accessibility-enabled .ppb-btn,body.patient-portal-accessibility-enabled .ppb-efiled{font-size:15px}.pp-v2-shell{background:#f1ece4}.patient-portal-page-content.pp-v2-content{color:#2e2a26;font-family:Inter,system-ui,sans-serif;margin-inline:0 auto;max-width:820px;padding:26px 30px 48px}@media(max-width:767px){.patient-portal-page-content.pp-v2-content{padding:14px 14px 90px}}.pp-programs{--cream:#f8f5f1;--cream2:#f1ece4;--ink:#2e2a26;--muted:#8a837b;--line:rgba(46,42,38,.11);--green:#1f4d3b;--sage:#7da890;--accent:#3d5a67;--accentDeep:#2f4753;--accentSoft:#e9edef;--accentBd:#d3dde1;--accentInk:#2e4652;color:var(--ink);font-family:Inter,system-ui,sans-serif}.pphp-prog{background:#fff;border:1px solid var(--line);border-radius:10px;margin-bottom:14px;padding:18px 20px}.pphp-progtop{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.pphp-progtitle{font-size:16px;font-weight:600}.pphp-progfreq{color:var(--muted);font-size:13px;margin-top:2px}.pphp-badge{border-radius:20px;font:600 11px Inter,sans-serif;padding:4px 10px;white-space:nowrap}.pphp-badge.b-sched{background:rgba(125,168,144,.16);color:var(--green)}.pphp-note{background:var(--cream);border:1px solid var(--line);border-radius:8px;color:var(--ink);font-family:Inter,system-ui,sans-serif;padding:11px 13px}.pphp-note,.pphp-vlink{font-size:13px;margin-top:12px}.pphp-vlink{align-items:center;color:var(--accent);display:inline-flex;font-weight:600;gap:7px;text-decoration:none}.pphp-vlink .material-icons{font-size:15px}.pphp-week{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.pphp-wl{color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.05em;margin-inline-end:2px;text-transform:uppercase}.pphp-day{align-items:center;display:flex;flex-direction:column;gap:5px;width:30px}.pphp-di{color:var(--muted);font-size:11px;font-weight:600}.pphp-dot{background:#fff;border:1.5px solid var(--accentBd);border-radius:50%;height:16px;width:16px}.pphp-dot.done{background:var(--accent);border-color:var(--accent)}.pphp-day.today .pphp-di{color:var(--accentInk)}.pphp-day.today .pphp-dot{box-shadow:0 0 0 2px #fff,0 0 0 3.5px var(--accentSoft)}.pphp-markrow{margin-top:16px}.pphp-btn{align-items:center;border:none;border-radius:7px;cursor:pointer;display:inline-flex;font:600 13.5px Inter,sans-serif;gap:8px;justify-content:center;padding:12px;width:100%}.pphp-btn.primary{background:var(--accent);color:#fff}.pphp-btn.primary:hover:not(:disabled){background:var(--accentDeep)}.pphp-btn.done{background:rgba(125,168,144,.16);color:var(--green)}.pphp-btn:disabled{cursor:default}.pphp-btn .material-icons{font-size:18px}.pphp-celebrate{align-items:center;background:rgba(125,168,144,.14);border:1px solid rgba(125,168,144,.35);border-radius:10px;display:flex;gap:13px;margin-bottom:16px;padding:16px 18px}.pphp-celebrate .ci{align-items:center;background:var(--sage);border-radius:9px;color:#fff;display:flex;flex:0 0 auto;font-size:20px;height:38px;justify-content:center;width:38px}.pphp-celebrate .ci .material-icons{font-size:20px}.pphp-celebrate .ct{color:var(--green);font-size:15px;font-weight:600}.pphp-celebrate .cb{color:var(--ink);font-size:13px;margin-top:1px}.pphp-empty{background:#fff;border:1px solid var(--line);border-radius:10px;padding:48px 24px;text-align:center}.pphp-empty .ei{align-items:center;background:var(--cream2);border-radius:12px;color:var(--muted);display:flex;height:52px;justify-content:center;margin:0 auto 14px;width:52px}.pphp-empty .ei .material-icons{font-size:26px}.pphp-empty .et{font-size:16px;font-weight:600}.pphp-empty .eb{color:var(--muted);font-size:13.5px;margin-top:4px}@media(max-width:767px){.pphp-week{gap:5px}.pphp-wl{flex-basis:100%;margin:0 0 4px}.pphp-day{flex:1;width:auto}}.pp-programs-careplan{margin-top:28px}.pphp-section-heading{color:#2e2a26;font-family:Inter,system-ui,sans-serif;font-size:17px;font-weight:600;margin:24px 0 14px}body.patient-portal-accessibility-enabled .pphp-section-heading{font-size:19px}body.patient-portal-accessibility-enabled .pphp-progtitle{font-size:18px}body.patient-portal-accessibility-enabled .pphp-note,body.patient-portal-accessibility-enabled .pphp-progfreq{font-size:15.5px}.pp-dashboard{--cream:#f8f5f1;--cream2:#f1ece4;--ink:#2e2a26;--muted:#8a837b;--line:rgba(46,42,38,.11);--green:#1f4d3b;--sage:#7da890;--accent:#3d5a67;--accentDeep:#2f4753;--accentSoft:#e9edef;--accentBd:#d3dde1;--accentInk:#2e4652;--warn:#b4552f;--serif:"Inter",system-ui,sans-serif;color:var(--ink);font-family:Inter,system-ui,sans-serif}.patient-portal-page-shell.pp-dashboard-shell{background:#f1ece4}.patient-portal-page-content.pp-dashboard{margin-inline:0 auto;max-width:940px;padding:26px 30px 48px}@media(max-width:767px){.patient-portal-page-content.pp-dashboard{padding:16px 14px 90px}}.ppd-card{background:#fff;border:1px solid var(--line);border-radius:10px;margin-bottom:16px;padding:18px 20px}.ppd-eye{color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.06em;margin-bottom:12px;text-transform:uppercase}.ppd-btn{align-items:center;border:none;border-radius:7px;cursor:pointer;display:inline-flex;font:600 13.5px Inter,sans-serif;gap:6px;padding:10px 16px}.ppd-btn.primary{background:var(--accent);color:#fff}.ppd-btn.primary:hover:not(:disabled){background:var(--accentDeep)}.ppd-btn.ghost{background:#fff;border:1px solid var(--line);color:var(--ink)}.ppd-btn:disabled{cursor:default;opacity:.6}.ppd-appt{gap:16px}.ppd-appt,.ppd-cal{align-items:center;display:flex}.ppd-cal{background:var(--accentSoft);border:1px solid var(--accentBd);border-radius:8px;color:var(--accentInk);flex:0 0 auto;flex-direction:column;height:56px;justify-content:center;width:52px}.ppd-cal b{font-size:19px;font-weight:700;line-height:1}.ppd-cal span{font-size:9.5px;letter-spacing:.05em;margin-top:2px;text-transform:uppercase}.ppd-appt .ppd-info{flex:1;min-width:0}.ppd-appt .ppd-info .p{font-size:16px;font-weight:600}.ppd-appt .ppd-info .m{color:var(--muted);font-size:13.5px;margin-top:2px}.ppd-stats{display:grid;gap:16px;grid-template-columns:1fr 1fr;margin-bottom:16px}.ppd-stat{background:#fff;border:1px solid var(--line);border-radius:10px;padding:20px;text-align:center}.ppd-stat b{display:block;font-family:var(--serif);font-size:30px;font-weight:500;line-height:1}.ppd-stat span{color:var(--muted);display:block;font-size:12.5px;margin-top:6px}.ppd-sectitle{font-family:var(--serif);font-size:17px;font-weight:600;margin:2px 0}.ppd-secsub{color:var(--muted);font-size:14px;margin-bottom:16px}.ppd-goalcard{background:var(--cream);border:1px solid var(--line);border-radius:10px;padding:18px}.ppd-goalcard+.ppd-goalcard{margin-top:14px}.ppd-chips{display:flex;gap:8px;margin-bottom:10px}.ppd-chip{background:var(--accentSoft);border-radius:20px;color:var(--accentInk);font-size:11px;font-weight:600;padding:4px 10px}.ppd-chip.sage{background:rgba(125,168,144,.16);color:var(--green)}.ppd-chip.neutral{background:rgba(46,42,38,.06);color:var(--muted)}.ppd-chip.warn{background:rgba(180,85,47,.13);color:var(--warn)}.ppd-poc-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.ppd-poc-line{color:var(--ink);font-size:14px;margin-top:6px}.ppd-poc-sub{color:var(--muted);font-size:13px;margin-top:4px}.ppd-poc-goals{margin-top:14px}.ppd-poc-goals .l{color:var(--muted);font-size:10.5px;letter-spacing:.04em;margin-bottom:4px;text-transform:uppercase}.ppd-poc-goals .v{color:var(--ink);font-family:Inter,system-ui,sans-serif;font-size:14px;line-height:1.5;white-space:pre-wrap}.ppd-goaltop{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.ppd-goaltop .g{font-size:15px;font-weight:600;max-width:60ch}.ppd-pct{flex:0 0 auto;text-align:center}.ppd-pct b{display:block;font-family:var(--serif);font-size:28px;font-weight:500;line-height:1}.ppd-pct span{color:var(--muted);font-size:9.5px;letter-spacing:.05em;text-transform:uppercase}.ppd-mini{display:grid;gap:10px;grid-template-columns:repeat(3,1fr);margin:14px 0}.ppd-mini>div{background:#fff;border:1px solid var(--line);border-radius:8px;padding:10px 12px}.ppd-mini .l{color:var(--muted);font-size:10.5px;letter-spacing:.04em;text-transform:uppercase}.ppd-mini .v{font-family:var(--serif);font-size:20px;font-weight:500;margin-top:2px}.ppd-bar{background:var(--cream2);border-radius:20px;height:8px;overflow:hidden}.ppd-bar i{background:var(--accent);display:block;height:100%;width:0}.ppd-metarow{color:var(--muted);display:flex;font-size:12px;justify-content:space-between;margin-top:8px}.ppd-input{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}.ppd-ack{align-items:center;background:rgba(125,168,144,.15);border:none;border-radius:6px;color:var(--green);cursor:pointer;display:inline-flex;font-size:12.5px;font-weight:600;gap:7px;margin-bottom:10px;padding:6px 11px}.ppd-ack.off{background:var(--cream2);color:var(--muted)}.ppd-ta{border:1px solid var(--line);border-radius:8px;box-sizing:border-box;color:var(--ink);font-family:Inter,sans-serif;font-size:13.5px;min-height:44px;padding:10px 12px;width:100%}.ppd-optrow{background:#fff;border:1px solid var(--line);border-radius:9px;cursor:pointer;font-size:14px;font-weight:500;gap:12px;margin-bottom:8px;padding:12px 14px;text-align:start;width:100%}.ppd-optrow,.ppd-optrow .cb{align-items:center;display:flex}.ppd-optrow .cb{border:1.5px solid var(--accentBd);border-radius:5px;flex:0 0 auto;height:20px;justify-content:center;width:20px}.ppd-optrow.on .cb{background:var(--accent);border-color:var(--accent)}.ppd-optrow.on .cb svg{fill:none;height:12px;stroke:#fff;stroke-width:2.4;width:12px}.ppd-optrow .d{color:var(--muted);font-size:12px;font-weight:400;margin-top:2px}.ppd-optrow:disabled,.ppd-optrow[aria-disabled=true]{cursor:default;opacity:.55}.ppd-signature-body{color:#4a453f;font-size:14px;margin-bottom:14px}.ppd-save-note{align-self:center;color:var(--green);font-size:12.5px;margin-inline-start:12px}.ppd-error{color:var(--warn);font-size:13px;margin-top:8px}.ppd-cards{display:flex;flex-direction:column;gap:16px}.ppd-sec{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 1px 2px rgba(46,42,38,.04),0 6px 16px rgba(46,42,38,.035);padding:18px 20px 20px;transition:box-shadow .18s ease}.ppd-sec:hover{box-shadow:0 2px 4px rgba(46,42,38,.06),0 12px 26px rgba(46,42,38,.06)}.ppd-sec--warn{background:linear-gradient(0deg,rgba(180,85,47,.035),rgba(180,85,47,.035)),#fff;border-color:rgba(180,85,47,.28)}.ppd-sec-head{align-items:center;display:flex;gap:10px;margin-bottom:14px}.ppd-sec-icon{align-items:center;background:var(--accentSoft);border-radius:9px;display:inline-flex;flex:0 0 auto;height:30px;justify-content:center;width:30px}.ppd-sec-icon svg{fill:none;height:17px;stroke:var(--accentInk);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8;width:17px}.ppd-sec--warn .ppd-sec-icon{background:rgba(180,85,47,.12)}.ppd-sec--warn .ppd-sec-icon svg{stroke:var(--warn)}.ppd-sec-head .ppd-eye{margin-bottom:0}.ppd-viewall{align-items:center;background:none;border:none;color:var(--accent);cursor:pointer;display:inline-flex;flex:0 0 auto;font:600 12.5px Inter,sans-serif;gap:3px;margin-inline-start:auto;padding:4px 2px 4px 8px}.ppd-viewall svg{fill:none;height:15px;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2;transition:transform .16s ease;width:15px}.ppd-viewall:hover{color:var(--accentDeep)}.ppd-viewall:hover svg{transform:translateX(2px)}[dir=rtl] .ppd-viewall svg{transform:rotate(180deg)}[dir=rtl] .ppd-viewall:hover svg{transform:rotate(180deg) translateX(2px)}.ppd-card-empty,.ppd-msg-summary{color:var(--muted);font-size:14.5px}.ppd-tele-pill{background:var(--accentSoft);border-radius:20px;color:var(--accentInk);flex:0 0 auto;font-size:11px;font-weight:600;margin-inline-start:auto;padding:4px 10px;white-space:nowrap}.ppd-goals-mini{display:flex;flex-direction:column;gap:16px}.ppd-goalrow-top{align-items:baseline;display:flex;gap:12px;justify-content:space-between;margin-bottom:7px}.ppd-goalrow-top .t{color:var(--ink);font-size:14px}.ppd-goalrow-top .p{color:var(--accentInk);flex:0 0 auto;font-size:13px;font-weight:600}.ppd-poc-list{display:flex;flex-direction:column;gap:0}.ppd-poc-block+.ppd-poc-block{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}body.patient-portal-accessibility-enabled .ppd-sec{padding:22px 24px 24px}body.patient-portal-accessibility-enabled .ppd-card-empty,body.patient-portal-accessibility-enabled .ppd-goalrow-top .p,body.patient-portal-accessibility-enabled .ppd-goalrow-top .t,body.patient-portal-accessibility-enabled .ppd-msg-summary{font-size:16px}body.patient-portal-accessibility-enabled .ppd-viewall{font-size:14px}body.patient-portal-accessibility-enabled .ppd-sec-icon{height:34px;width:34px}body.patient-portal-accessibility-enabled .ppd-eye{font-size:13px}body.patient-portal-accessibility-enabled .ppd-sectitle{font-size:19px}body.patient-portal-accessibility-enabled .ppd-poc-goals .v,body.patient-portal-accessibility-enabled .ppd-poc-line{font-size:16px}body.patient-portal-accessibility-enabled .ppd-poc-sub{font-size:14.5px}body.patient-portal-accessibility-enabled .ppd-appt .ppd-info .p{font-size:18px}body.patient-portal-accessibility-enabled .ppd-appt .ppd-info .m{font-size:15px}body.patient-portal-accessibility-enabled .ppd-signature-body{font-size:16px}body.patient-portal-accessibility-enabled .ppd-btn{font-size:15px;padding:12px 18px}body.patient-portal-accessibility-enabled .ppd-optrow{font-size:16px}.pp-settings-row{border-bottom:1px solid var(--line);display:flex;gap:16px;justify-content:space-between;padding:9px 0}.pp-settings-row:last-child{border-bottom:none}.pp-settings-row .l{color:var(--muted);font-size:13px}.pp-settings-row .v{color:var(--ink);font-size:14px;font-weight:500;text-align:end}.pp-settings-form{display:flex;flex-direction:column;max-width:420px}.pp-settings-flabel{color:var(--ink);font-size:12.5px;font-weight:600;margin:12px 0 6px}.pp-settings-input{background:#fff;border:1px solid var(--line);border-radius:8px;box-sizing:border-box;color:var(--ink);font-family:Inter,sans-serif;font-size:14px;padding:10px 12px;width:100%}.pp-settings-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accentSoft);outline:none}.pp-settings-errlist{margin:6px 0 0;padding-inline-start:18px}.pp-settings-success{color:var(--green);font-size:13px;font-weight:600;margin-top:10px}.pp-settings-actions{margin-top:16px}body.patient-portal-accessibility-enabled .pp-settings-input,body.patient-portal-accessibility-enabled .pp-settings-row .v{font-size:16px}body.patient-portal-accessibility-enabled .pp-settings-flabel{font-size:14px}@media(max-width:767px){.pp-dashboard{max-width:none}.ppd-stats{gap:10px}.ppd-mini{grid-template-columns:1fr 1fr}.ppd-goaltop{flex-direction:column}.ppd-appt{flex-wrap:wrap}.ppd-appt .ppd-btn{justify-content:center;width:100%}}.patient-portal-signature-preview{background:#fff;border:1px solid rgba(46,42,38,.14);border-radius:8px;display:block;height:auto;margin-top:10px;max-width:min(320px,100%);padding:8px}