@layer portal.tokens, portal.shell, portal.sections, portal.overview, portal.care, portal.visits,
  portal.documents, portal.preview, portal.responsive;@layer portal.tokens{:root{--portal-accent:#0d5c54;--portal-accent-deep:#123f35;--portal-accent-ink:#173c32;--portal-citrus:#dff080;--portal-mist:#e5f0ec;--portal-violet:#675c82;--portal-canvas:#fbfbfa;--portal-surface:#fff;--portal-surface-solid:#fff;--portal-surface-sunken:#f6f6f4;--portal-surface-muted:#f1f1ee;--portal-surface-accent:#e9f0ee;--portal-surface-inverse:#123f35;--portal-violet-surface:#ece9f2;--portal-text:#142c26;--portal-text-body:#4c625b;--portal-text-muted:#60706a;--portal-text-soft:#6a7a74;--portal-text-on-accent:#fff;--portal-text-on-dark:rgb(255 255 255/.68);--portal-text-on-dark-soft:rgb(255 255 255/.55);--portal-line:rgb(20 44 38/.1);--portal-line-soft:rgb(20 44 38/.08);--portal-line-strong:rgb(20 44 38/.14);--portal-line-accent:rgb(13 92 84/.14);--portal-line-accent-strong:rgb(13 92 84/.22);--portal-line-accent-hover:rgb(13 92 84/.32);--portal-line-danger:rgb(162 72 60/.25);--portal-line-on-dark:rgb(255 255 255/.14);--portal-rule:#dfe5e2;--portal-rule-strong:#d5dfda;--portal-focus-ring:rgb(13 92 84/.3);--portal-danger:#a2483c;--portal-danger-bright:#ef7e72;--portal-danger-surface:#fff0ed;--portal-success:#166143;--portal-success-surface:#e4f3eb;--portal-warning:#715e33;--portal-warning-surface:#fff8df;--portal-warning-line:#d6ae51;--portal-radius-lg:12px;--portal-radius-md:12px;--portal-radius-sm:8px;--portal-radius-hero:12px;--portal-radius-pill:99px;--portal-shadow-card:none;--portal-shadow-raised:none;--portal-shadow-hero:none;--portal-shadow-bar:none;--portal-type-xs:.75rem;--portal-type-sm:.8125rem;--portal-type-body:.875rem;--portal-type-lg:1rem;--portal-type-title:1.125rem;--portal-type-display:1.5rem;--portal-ease:cubic-bezier(.23,1,.32,1);--portal-fast:150ms;--portal-slow:200ms}@media (prefers-reduced-motion:reduce){:root{--portal-fast:.01ms;--portal-slow:.01ms}}}@layer portal.shell{.portal-app-shell{min-height:100vh;background:var(--portal-canvas);color:var(--portal-text)}.portal-topbar{position:sticky;z-index:30;top:0;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;min-height:70px;border-bottom:1px solid var(--portal-line);padding:0 2rem;background:var(--portal-surface);box-shadow:var(--portal-shadow-bar);backdrop-filter:blur(16px)}.portal-brand-lockup{display:flex;align-items:center;gap:.75rem;width:fit-content;color:var(--portal-text);text-decoration:none}.portal-brand-logo{display:block;width:112px;height:auto;object-fit:contain}.portal-brand-lockup small{border-left:1px solid var(--portal-line-accent-strong);padding-left:.75rem;color:var(--portal-text-muted);font-size:.58rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.portal-primary-nav{justify-self:center;display:flex;align-items:center;gap:.25rem;max-width:100%;overflow-x:auto;border:1px solid var(--portal-line);border-radius:var(--portal-radius-pill);padding:.25rem;background:var(--portal-surface-solid);scrollbar-width:none}.portal-primary-nav::-webkit-scrollbar{display:none}.portal-primary-nav a{flex:0 0 auto;border-radius:var(--portal-radius-pill);padding:.48rem .8rem;color:var(--portal-text-body);font-size:.69rem;font-weight:700;text-decoration:none;transition:background-color var(--portal-fast) ease,color var(--portal-fast) ease}.portal-primary-nav a.active,.portal-primary-nav a:hover{background:var(--portal-mist);color:var(--portal-accent)}.portal-account-actions{display:flex;align-items:center;justify-content:flex-end;gap:.85rem;min-width:0}.portal-account-actions span{overflow:hidden;max-width:220px;color:var(--portal-text-muted);font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}.portal-account-actions button{border:1px solid var(--portal-line-strong);border-radius:8px;padding:.5rem .72rem;background:var(--portal-surface-solid);color:var(--portal-accent);font-size:.68rem;font-weight:750}.portal-mobile-nav{display:none}.portal-main{width:min(1320px,100%);margin:0 auto;padding:1.4rem clamp(1rem,3vw,2.4rem) 4rem}.portal-data-loading{margin:0;padding:4rem clamp(1rem,3vw,2.4rem);color:var(--portal-text-muted);font-size:.8rem;text-align:center}.portal-data-error{display:grid;justify-items:center;gap:.75rem;width:min(520px,calc(100% - 2rem));margin:3rem auto;border:1px solid var(--portal-line-danger);border-radius:var(--portal-radius-lg);padding:1.5rem;background:var(--portal-surface-solid);box-shadow:var(--portal-shadow-card);text-align:center}.portal-data-error p{margin:0;color:var(--portal-danger);font-size:.78rem;line-height:1.55}.portal-data-error button,.portal-sync-banner button{border:0;border-radius:9px;padding:.55rem .9rem;background:var(--portal-accent);color:var(--portal-text-on-accent);font-size:.7rem;font-weight:850;cursor:pointer}.portal-sync-banner{display:flex;align-items:center;justify-content:center;gap:.8rem;flex-wrap:wrap;border-bottom:1px solid var(--portal-warning-line);padding:.6rem 1rem;background:var(--portal-warning-surface);color:var(--portal-warning);font-size:.7rem}.portal-sync-banner button{padding:.4rem .7rem;font-size:.64rem}}@layer portal.responsive{@media (max-width:760px){.portal-topbar{grid-template-columns:1fr auto;min-height:62px;padding:0 1rem}.portal-account-actions span,.portal-primary-nav{display:none}.portal-mobile-nav{position:fixed;z-index:45;right:.65rem;bottom:calc(.65rem + env(safe-area-inset-bottom));left:.65rem;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);border:1px solid var(--portal-line-strong);border-radius:15px;padding:.35rem;background:var(--portal-surface);box-shadow:0 16px 50px rgb(20 44 38/.18);backdrop-filter:blur(14px)}.portal-mobile-nav a{border-radius:9px;padding:.55rem .15rem;color:var(--portal-text-muted);font-size:.52rem;font-weight:800;text-align:center;text-decoration:none}.portal-mobile-nav a.active,.portal-mobile-nav a:active{background:var(--portal-mist);color:var(--portal-accent)}.portal-main{padding:.8rem .75rem calc(6rem + env(safe-area-inset-bottom))}}}@layer portal.sections{.portal-workspace-section{overflow:hidden;min-width:0;border:1px solid var(--portal-line);border-radius:var(--portal-radius-lg);background:var(--portal-surface);box-shadow:var(--portal-shadow-card);scroll-margin-top:90px}.portal-workspace-section.wide{grid-column:1/-1}.portal-workspace-section>header{display:flex;align-items:center;gap:.75rem;border-bottom:1px solid var(--portal-line-soft);padding:1.05rem 1.2rem}.portal-workspace-section>header>span{display:grid;width:34px;height:34px;place-items:center;border-radius:11px 11px 11px 3px;background:var(--portal-surface-accent);color:var(--portal-accent)}.portal-workspace-section>header p{margin:0 0 .25rem;color:var(--portal-accent);font-size:.58rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.portal-workspace-section>header h2{margin:0;color:var(--portal-text);font-size:1.05rem;font-weight:700;letter-spacing:-.025em}.portal-section-lede{margin:0;padding:1rem 1.2rem 0;color:var(--portal-text-muted);font-size:.76rem;line-height:1.6}.portal-section-cta{display:inline-flex;align-items:center;gap:.35rem;margin:0 1rem 1rem;border-radius:9px;padding:.6rem .85rem;background:var(--portal-accent);color:var(--portal-text-on-accent);font-size:.7rem;font-weight:850;text-decoration:none}.portal-empty-copy{margin:0;padding:1rem;color:var(--portal-text-soft);font-size:.65rem;line-height:1.55}.portal-clinical-note{margin:0;border-top:1px solid var(--portal-line-soft);padding:.8rem 1rem;color:var(--portal-text-muted);font-size:.59rem;line-height:1.55}.portal-action-error,.portal-action-success{margin:.5rem 1rem;border-radius:8px;padding:.65rem;font-size:.68rem;line-height:1.5}.portal-action-error{background:var(--portal-danger-surface);color:var(--portal-danger)}.portal-action-success{background:var(--portal-success-surface);color:var(--portal-success)}.portal-action-success a{color:inherit;font-weight:850}.portal-link-notice{display:flex;align-items:center;gap:1rem;border:1px solid var(--portal-warning-line);border-radius:var(--portal-radius-md);padding:1rem 1.15rem;background:var(--portal-warning-surface)}.portal-link-notice strong{flex:0 0 auto;font-size:.78rem}.portal-link-notice span{color:var(--portal-warning);font-size:.72rem;line-height:1.55}.portal-passport-layout{display:grid;grid-template-columns:188px minmax(0,1fr);align-items:start;gap:1.1rem;margin-top:.1rem}.portal-care-rail{position:sticky;top:88px;overflow:hidden;border:1px solid var(--portal-line);border-radius:19px 19px 19px 6px;background:var(--portal-surface);box-shadow:0 14px 34px rgb(20 44 38/.055)}.portal-care-rail>span{display:block;border-bottom:1px solid var(--portal-line-soft);padding:.9rem 1rem;color:var(--portal-text-soft);font-size:.57rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.portal-tab-strip{display:grid;padding:.45rem}.portal-tab-strip :is(a,button){display:flex;align-items:center;gap:.65rem;border:0;border-radius:var(--portal-radius-sm);padding:.72rem .65rem;background:none;color:var(--portal-text-body);font:inherit;font-size:.68rem;font-weight:700;text-align:left;text-decoration:none;cursor:pointer;transition:background-color var(--portal-fast) ease,color var(--portal-fast) ease,transform var(--portal-fast) ease}.portal-tab-strip :is(a,button):hover{background:var(--portal-mist);color:var(--portal-accent);transform:translateX(2px)}.portal-tab-strip [aria-current=page]{background:var(--portal-mist);color:var(--portal-accent);font-weight:800}.portal-care-rail>p{display:flex;gap:.45rem;margin:0;border-top:1px solid var(--portal-line-soft);padding:.85rem;color:var(--portal-text-soft);font-size:.58rem;line-height:1.55}.portal-care-rail>p svg{flex:0 0 auto;color:var(--portal-accent)}.portal-care-stream{display:grid;gap:1rem;min-width:0;align-content:start}}@layer portal.responsive{@media (max-width:1000px){.portal-passport-layout{grid-template-columns:1fr}.portal-care-rail{position:static}.portal-care-rail>p,.portal-care-rail>span{display:none}.portal-tab-strip{display:flex;overflow-x:auto;scrollbar-width:none}.portal-tab-strip::-webkit-scrollbar{display:none}.portal-tab-strip :is(a,button){flex:0 0 auto}.portal-tab-strip :is(a,button):hover{transform:none}}@media (max-width:760px){.portal-link-notice{align-items:flex-start;flex-direction:column;gap:.35rem}}}@layer portal.overview{.portal-basic-dashboard,.portal-care-dashboard{display:grid;gap:1rem;align-items:start}.portal-basic-dashboard{max-width:1120px;margin:0 auto}.portal-care-overview{max-width:1180px;margin:0 auto}.portal-basic-hero,.portal-care-hero{position:relative;overflow:hidden;display:grid;gap:1.5rem;border-radius:var(--portal-radius-hero);color:var(--portal-text-on-accent);box-shadow:var(--portal-shadow-hero)}.portal-care-hero{grid-template-columns:minmax(0,1fr) 260px;min-height:220px;padding:clamp(1.4rem,3vw,2.2rem)}.portal-basic-hero,.portal-care-hero{background:var(--portal-surface-inverse)}.portal-basic-hero{grid-template-columns:minmax(0,1fr) minmax(220px,280px);gap:2rem;min-height:280px;padding:clamp(1.6rem,5vw,3.4rem)}.portal-basic-hero:after,.portal-care-hero:after{position:absolute;right:-100px;bottom:-190px;width:420px;height:420px;border:1px solid rgb(223 240 128/.25);border-radius:50%;box-shadow:0 0 0 44px rgb(223 240 128/.035),0 0 0 88px rgb(223 240 128/.02);content:"";pointer-events:none}.portal-basic-hero>aside,.portal-basic-hero>div,.portal-care-hero aside,.portal-care-hero>div{position:relative;z-index:1}.portal-basic-hero>div,.portal-care-hero>div:first-child{align-self:center;max-width:650px}.portal-basic-hero>div>p,.portal-care-kicker{margin:0 0 1rem;color:var(--portal-citrus);font-size:.65rem;font-weight:850;letter-spacing:.16em;text-transform:uppercase}.portal-basic-hero h1,.portal-care-hero h1{margin:0;font-weight:700;line-height:.98;letter-spacing:-.045em}.portal-care-hero h1{max-width:620px;font-size:clamp(2.25rem,4.5vw,3.7rem)}.portal-basic-hero h1{font-size:clamp(2.6rem,6vw,4.6rem)}.portal-basic-hero>div>span,.portal-care-hero>div>span{display:block;max-width:650px;margin-top:.9rem;color:var(--portal-text-on-dark);font-size:.84rem;line-height:1.6}.portal-basic-hero>aside,.portal-care-hero aside{align-self:stretch;display:flex;min-width:0;flex-direction:column;justify-content:flex-end;border-left:1px solid var(--portal-line-on-dark);padding-left:1.5rem}.portal-basic-hero>aside>svg{margin-bottom:auto;color:var(--portal-citrus)}.portal-basic-hero>aside>small,.portal-care-hero aside small{color:var(--portal-citrus);font-size:.58rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.portal-care-hero aside>strong{margin-top:.55rem;font-size:1.2rem}.portal-basic-hero>aside>strong{overflow:hidden;margin-top:.45rem;color:var(--portal-text-on-accent);font-size:.8rem;text-overflow:ellipsis;white-space:nowrap}.portal-care-hero aside>span{margin-top:.2rem;color:var(--portal-text-on-dark-soft);font-size:.7rem}.portal-live-state{display:flex;align-items:center;gap:.45rem;width:fit-content;margin-top:1.3rem;border:1px solid var(--portal-line-on-dark);border-radius:var(--portal-radius-pill);padding:.4rem .65rem;color:var(--portal-text-on-dark);font-size:.61rem;font-style:normal}.portal-live-state b{width:7px;height:7px;border-radius:50%;background:var(--portal-citrus);box-shadow:0 0 0 4px rgb(223 240 128/.1)}.portal-live-state.offline b{background:var(--portal-danger-bright)}.portal-hero-next{position:relative;z-index:2;grid-column:1/-1;display:grid;grid-template-columns:170px minmax(0,1fr) auto;align-items:center;gap:1rem;margin:.25rem -.5rem -.5rem;border:1px solid var(--portal-line-on-dark);border-radius:var(--portal-radius-md);padding:.72rem .9rem;background:rgb(255 255 255/.08);backdrop-filter:blur(8px)}.portal-hero-next>span{color:var(--portal-citrus);font-size:.62rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.portal-hero-next>strong{font-size:.85rem}.portal-hero-next>small{color:var(--portal-text-on-dark-soft);font-size:.68rem;text-align:right}.portal-quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.75rem}.portal-quick-action{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.9rem;min-height:84px;border:1px solid var(--portal-line);border-radius:var(--portal-radius-lg);padding:1rem 1.15rem;background:var(--portal-surface);box-shadow:var(--portal-shadow-card);color:var(--portal-text);text-decoration:none;transition:border-color var(--portal-slow) ease,box-shadow var(--portal-slow) ease,transform var(--portal-slow) var(--portal-ease)}.portal-quick-action:hover{border-color:var(--portal-line-accent-hover);box-shadow:var(--portal-shadow-raised);transform:translateY(-2px)}.portal-quick-action[aria-disabled=true]{cursor:default}.portal-quick-action[aria-disabled=true]:hover{border-color:var(--portal-line);box-shadow:var(--portal-shadow-card);transform:none}.portal-quick-action-icon{display:grid;width:42px;height:42px;place-items:center;border-radius:var(--portal-radius-md);background:var(--portal-surface-accent);color:var(--portal-accent)}.portal-quick-action-text{display:grid;min-width:0;gap:.18rem}.portal-quick-action-text strong{font-size:.85rem;letter-spacing:-.01em}.portal-quick-action-text small{color:var(--portal-text-muted);font-size:.65rem;line-height:1.45}.portal-quick-action>svg{color:var(--portal-accent)}.portal-care-tasks{display:grid;gap:.5rem;border:1px solid var(--portal-line-accent);border-radius:var(--portal-radius-lg);padding:1rem 1.15rem;background:var(--portal-surface);box-shadow:var(--portal-shadow-card)}.portal-care-tasks>p{margin:0;color:var(--portal-accent);font-size:.58rem;font-weight:850;letter-spacing:.16em;text-transform:uppercase}.portal-care-tasks a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.7rem;border-radius:var(--portal-radius-sm);padding:.6rem .5rem;color:var(--portal-text);text-decoration:none;transition:background-color var(--portal-fast) ease}.portal-care-tasks a:hover{background:var(--portal-surface-sunken)}.portal-care-tasks a>svg:first-child{color:var(--portal-violet)}.portal-care-tasks a>span{display:grid;min-width:0;gap:.1rem}.portal-care-tasks strong{font-size:.76rem}.portal-care-tasks small{color:var(--portal-text-soft);font-size:.62rem}.portal-today-board{overflow:hidden;min-width:0;border:1px solid var(--portal-line);border-radius:var(--portal-radius-lg);background:var(--portal-surface);box-shadow:var(--portal-shadow-card)}.portal-today-board>header{display:flex;align-items:end;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--portal-line-soft);padding:1.2rem 1.35rem 1rem}.portal-today-board>header p{margin:0 0 .25rem;color:var(--portal-accent);font-size:.58rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.portal-today-board>header h2{margin:0;color:var(--portal-text);font-size:1.35rem;font-weight:700;letter-spacing:-.025em}.portal-today-board>header>span{color:var(--portal-text-muted);font-size:.67rem}.portal-today-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.portal-today-grid article{display:grid;min-height:190px;align-content:start;border-right:1px solid var(--portal-line-soft);padding:1.15rem}.portal-today-grid article:last-child{border-right:0}.portal-today-grid article>svg{margin-bottom:1.4rem;color:var(--portal-violet)}.portal-today-grid article>span{color:var(--portal-text-soft);font-size:.6rem;font-weight:750;text-transform:uppercase}.portal-today-grid article>strong{overflow:hidden;margin-top:.42rem;color:var(--portal-text);font-size:.88rem;line-height:1.35;text-overflow:ellipsis}.portal-today-grid article>small{margin-top:.32rem;color:var(--portal-text-soft);font-size:.62rem;line-height:1.5}.portal-today-grid article>:is(a,span[aria-disabled]){display:flex;align-items:center;gap:.3rem;width:fit-content;margin-top:auto;color:var(--portal-accent);font-size:.62rem;font-weight:800;text-decoration:none}.portal-basic-status{display:grid;gap:.5rem;border:1px solid var(--portal-line);border-radius:var(--portal-radius-md);padding:.9rem 1.1rem;background:var(--portal-surface)}.portal-basic-status p{display:flex;align-items:center;gap:.55rem;margin:0;color:var(--portal-text-muted);font-size:.72rem;line-height:1.5}.portal-basic-status svg{flex:0 0 auto;color:var(--portal-accent)}.portal-basic-status strong{color:var(--portal-text)}.portal-basic-care-note{display:flex;align-items:flex-start;gap:.75rem;border:1px solid var(--portal-line-accent);border-radius:var(--portal-radius-md);padding:1rem 1.1rem;background:var(--portal-surface-accent);color:var(--portal-accent-ink)}.portal-basic-care-note>svg{flex:0 0 auto;margin-top:.1rem;color:var(--portal-accent)}.portal-basic-care-note p,.portal-basic-care-note strong{display:block;margin:0}.portal-basic-care-note strong{font-size:.75rem}.portal-basic-care-note p{margin-top:.25rem;color:var(--portal-text-muted);font-size:.65rem;line-height:1.55}.portal-care-pending{display:grid;justify-items:start;gap:.5rem;max-width:620px;border:1px solid var(--portal-line-accent);border-radius:var(--portal-radius-lg);padding:clamp(1.4rem,4vw,2.2rem);background:var(--portal-surface);box-shadow:var(--portal-shadow-card)}.portal-care-pending>svg{color:var(--portal-accent)}.portal-care-pending h1{margin:.3rem 0 0;font-size:1.5rem;letter-spacing:-.03em}.portal-care-pending p{margin:0;color:var(--portal-text-muted);font-size:.76rem;line-height:1.6}.portal-care-pending a{display:inline-flex;align-items:center;gap:.35rem;margin-top:.7rem;border-radius:9px;padding:.65rem .9rem;background:var(--portal-accent);color:var(--portal-text-on-accent);font-size:.72rem;font-weight:850;text-decoration:none}.portal-chat-entry{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.8rem;min-width:0;border:1px solid var(--portal-line-accent);border-radius:var(--portal-radius-lg);padding:1.2rem;background:linear-gradient(145deg,var(--portal-surface-sunken),var(--portal-surface-solid));color:var(--portal-text);text-decoration:none;box-shadow:var(--portal-shadow-card);transition:border-color var(--portal-slow) ease,box-shadow var(--portal-slow) ease,transform var(--portal-slow) var(--portal-ease)}.portal-chat-entry:hover{border-color:var(--portal-line-accent-hover);box-shadow:var(--portal-shadow-raised);transform:translateY(-2px)}.portal-chat-entry>span{display:grid;width:42px;height:42px;place-items:center;border-radius:var(--portal-radius-md);background:var(--portal-accent);color:var(--portal-text-on-accent)}.portal-chat-entry p,.portal-chat-entry small,.portal-chat-entry strong{display:block;margin:0}.portal-chat-entry small{color:var(--portal-accent);font-size:.58rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.portal-chat-entry strong{margin-top:.2rem;font-size:.9rem}.portal-chat-entry p{margin-top:.3rem;color:var(--portal-text-muted);font-size:.66rem;line-height:1.5}.portal-care-card{min-width:0;border:1px solid var(--portal-line);border-radius:18px 18px 18px 6px;padding:1.25rem;background:var(--portal-surface);box-shadow:0 14px 36px rgb(20 44 38/.055)}.portal-care-card>h2{margin-bottom:.9rem;color:var(--portal-accent);font-size:.66rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}}@layer portal.responsive{@media (max-width:1000px){.portal-today-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-today-grid article:nth-child(2){border-right:0}.portal-today-grid article:nth-child(n+3){border-top:1px solid var(--portal-line-soft)}}@media (max-width:760px){.portal-basic-hero,.portal-care-hero{grid-template-columns:1fr;min-height:0;border-radius:23px 23px 23px 7px;padding:1.4rem}.portal-care-hero h1{font-size:clamp(2.45rem,13vw,4rem)}.portal-basic-hero h1{font-size:clamp(2.5rem,13vw,3.8rem)}.portal-basic-hero>aside,.portal-care-hero aside{border-top:1px solid var(--portal-line-on-dark);border-left:0;padding-top:1rem;padding-left:0}.portal-basic-hero>aside>svg{margin-bottom:.9rem}.portal-hero-next{grid-template-columns:1fr;gap:.35rem;margin:.7rem 0 0}.portal-hero-next>small{text-align:left}.portal-today-board>header{align-items:flex-start;flex-direction:column}.portal-today-grid article{min-height:170px}}@media (max-width:460px){.portal-today-grid{grid-template-columns:1fr}.portal-today-grid article{min-height:145px;border-right:0;border-bottom:1px solid var(--portal-line-soft)}.portal-today-grid article>svg{margin-bottom:.8rem}}}@layer portal.care{.portal-treatment-grid{display:grid;grid-template-columns:1.25fr repeat(3,minmax(0,1fr))}.portal-treatment-grid>article{min-height:165px;border-right:1px solid var(--portal-line-soft);padding:1.1rem}.portal-treatment-grid>article:last-child{border-right:0}.portal-treatment-grid article>span{display:flex;align-items:center;gap:.4rem;color:var(--portal-violet);font-size:.59rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.portal-treatment-stage>strong{display:block;margin-top:1.1rem;font-size:1rem}.portal-treatment-stage>p{margin:.2rem 0 .7rem;color:var(--portal-accent);font-size:.68rem}.portal-treatment-stage>div{overflow:hidden;height:7px;border-radius:9px;background:var(--portal-surface-accent)}.portal-treatment-stage>div i{display:block;height:100%;border-radius:inherit;background:var(--portal-citrus)}.portal-treatment-stage>small{display:block;margin-top:.4rem;color:var(--portal-text-soft);font-size:.58rem}.portal-funnel{display:grid;grid-template-columns:repeat(2,1fr);gap:.45rem;margin-top:1rem}.portal-funnel div{border-radius:var(--portal-radius-sm);padding:.55rem;background:var(--portal-surface-muted)}.portal-funnel small,.portal-funnel strong{display:block}.portal-funnel strong{color:var(--portal-accent);font-size:1rem}.portal-funnel small{color:var(--portal-text-soft);font-size:.55rem}.portal-treatment-grid article>p{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin:.8rem 0 0}.portal-treatment-grid article>p strong{font-size:.68rem;text-transform:capitalize}.portal-treatment-grid article>p small{color:var(--portal-text-soft);font-size:.58rem;text-align:right}.portal-treatment-grid article>p small.attention{color:var(--portal-danger);font-weight:800}.portal-stage-caveat{margin:0;border-bottom:1px solid var(--portal-line-soft);padding:.85rem 1rem;color:var(--portal-text-muted);font-size:.6rem;line-height:1.5}.portal-stage-timeline{margin:0;padding:1rem 1rem .25rem;list-style:none}.portal-stage-timeline li{position:relative;display:grid;grid-template-columns:11px minmax(0,1fr);gap:.7rem;padding:0 0 .95rem}.portal-stage-timeline li>i{position:relative;z-index:1;width:11px;height:11px;margin-top:.2rem;border:1.5px solid var(--portal-rule-strong);border-radius:50%;background:var(--portal-surface-solid)}.portal-stage-timeline li[data-state=done]>i{border-color:var(--portal-accent);background:var(--portal-accent)}.portal-stage-timeline li[data-state=active]>i{border-color:var(--portal-accent);background:var(--portal-citrus);box-shadow:0 0 0 4px var(--portal-surface-accent)}.portal-stage-timeline li[data-state=skipped]>i{border-style:dashed}.portal-stage-timeline li:not(:last-child):after{position:absolute;top:15px;bottom:2px;left:5px;width:1px;background:var(--portal-rule);content:""}.portal-stage-timeline header{display:flex;align-items:baseline;flex-wrap:wrap;gap:.4rem .55rem}.portal-stage-timeline header strong{font-size:.68rem}.portal-stage-timeline .portal-stage-timing{border-radius:var(--portal-radius-pill);padding:.12rem .45rem;background:var(--portal-surface-accent);color:var(--portal-accent);font-size:.53rem;font-weight:800;letter-spacing:.02em;white-space:nowrap}.portal-stage-timeline li>div>p{margin:.18rem 0 0;color:var(--portal-text-muted);font-size:.58rem;line-height:1.45}.portal-stage-timeline li>div>small{display:block;margin-top:.22rem;color:var(--portal-text-soft);font-size:.53rem}.portal-stage-timeline li[data-state=active] header strong{color:var(--portal-accent)}.portal-stage-timeline li[data-state=active]>div>small{color:var(--portal-accent);font-weight:800}.portal-stage-timeline li[data-state=pending]>div,.portal-stage-timeline li[data-state=skipped]>div{opacity:.72}.portal-stage-timeline li[data-state=skipped] header strong{text-decoration:line-through}.portal-journey-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.portal-journey-overview{align-items:start}.portal-journey-list{margin:0;padding:1rem;list-style:none}.portal-journey-list li{position:relative;display:grid;grid-template-columns:9px minmax(0,1fr);gap:.65rem;padding:0 0 1rem}.portal-journey-list li>i{width:8px;height:8px;margin-top:.25rem;border-radius:50%;background:var(--portal-violet);box-shadow:0 0 0 4px #ece9f2}.portal-journey-list li:not(:last-child):after{position:absolute;top:13px;bottom:2px;left:3px;width:1px;background:var(--portal-rule);content:""}.portal-journey-list small,.portal-journey-list span,.portal-journey-list strong{display:block}.portal-journey-list small{color:var(--portal-text-soft);font-size:.53rem}.portal-journey-list strong{margin-top:.1rem;font-size:.66rem}.portal-journey-list span{margin-top:.12rem;color:var(--portal-text-muted);font-size:.58rem;line-height:1.45}.portal-medication-list{display:grid;gap:.75rem;padding:1rem}.portal-medication-list>article{border:1px solid var(--portal-line);border-radius:var(--portal-radius-md);padding:1rem;background:var(--portal-surface-sunken)}.portal-medication-list article>header{display:flex;align-items:start;justify-content:space-between;gap:1rem}.portal-medication-list article>header span,.portal-medication-list article>header strong{display:block}.portal-medication-list article>header strong{font-size:.83rem}.portal-medication-list article>header span{margin-top:.15rem;color:var(--portal-text-muted);font-size:.62rem}.portal-medication-list article>header>i{border-radius:var(--portal-radius-pill);padding:.28rem .5rem;background:var(--portal-surface-accent);color:var(--portal-accent);font-size:.53rem;font-style:normal;font-weight:800;text-transform:uppercase}.portal-medication-list article>p{margin:.75rem 0 0;color:var(--portal-text-body);font-size:.67rem;line-height:1.55}.portal-medication-list article>small{display:block;margin-top:.35rem;color:var(--portal-text-soft);font-size:.57rem}.portal-dose-list{display:grid;gap:.35rem;margin-top:.8rem}.portal-dose-list>div{display:flex;align-items:center;gap:.6rem;border-radius:10px;padding:.55rem .65rem;background:var(--portal-surface-muted);color:var(--portal-violet)}.portal-dose-list>div>span{flex:1}.portal-dose-list>div>span small,.portal-dose-list>div>span strong{display:block}.portal-dose-list>div>span strong{color:var(--portal-text);font-size:.62rem}.portal-dose-list>div>span small{color:var(--portal-text-soft);font-size:.56rem}.portal-dose-list>div>button{border:0;border-radius:7px;padding:.42rem .65rem;background:var(--portal-accent);color:var(--portal-text-on-accent);font-size:.58rem;font-weight:800;cursor:pointer}.portal-dose-list>div>i{display:flex;align-items:center;gap:.2rem;color:var(--portal-text-soft);font-size:.56rem;font-style:normal;text-transform:capitalize}.portal-dose-list>div.taken{background:var(--portal-surface-accent)}.portal-dose-list>div.taken>i{color:var(--portal-accent);font-weight:800}.portal-report-hub{overflow:hidden;min-width:0;border:1px solid var(--portal-line);border-radius:var(--portal-radius-lg);background:var(--portal-surface-solid);box-shadow:var(--portal-shadow-card);color:var(--portal-text);scroll-margin-top:90px}.portal-report-hub>header{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--portal-line);padding:1.05rem 1.2rem}.portal-report-hub>header p{margin:0 0 .3rem;color:var(--portal-accent);font-size:.58rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.portal-report-hub>header h2{margin:0;color:var(--portal-text);font-size:1.2rem;line-height:1.1}.portal-report-hub>header span{display:block;margin-top:.3rem;color:var(--portal-text-muted);font-size:.68rem}.portal-report-hub>header>strong{display:grid;width:2.1rem;height:2.1rem;place-items:center;border:1px solid var(--portal-line-accent);border-radius:50%;background:var(--portal-surface-accent);color:var(--portal-accent);font-size:.75rem}.portal-report-grid{display:grid;gap:.5rem;padding:.75rem 1rem 1rem}.portal-report-grid>:is(button,article){display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.8rem;width:100%;border:1px solid var(--portal-line);border-radius:.9rem;padding:.85rem;background:var(--portal-surface-sunken);color:var(--portal-text);text-align:left;transition:background-color var(--portal-slow) ease,border-color var(--portal-slow) ease,transform var(--portal-slow) ease}.portal-report-grid>button{cursor:pointer}.portal-report-grid>button:hover{border-color:var(--portal-line-accent-hover);background:var(--portal-surface-accent);transform:translateY(-1px)}.portal-report-mark{display:grid;width:2.25rem;height:2.25rem;place-items:center;border-radius:.7rem;background:var(--portal-citrus);color:var(--portal-accent-ink);font-family:Georgia,serif;font-size:1.05rem;font-weight:900}.portal-report-document .portal-report-mark{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.58rem;letter-spacing:.02em}.portal-report-grid>:is(button,article)>span:nth-child(2){display:grid;min-width:0;gap:.13rem}.portal-report-grid small{color:var(--portal-text-muted);font-size:.64rem}.portal-report-grid b{overflow:hidden;font-size:.85rem;text-overflow:ellipsis;white-space:nowrap}.portal-report-grid i{color:var(--portal-text-body);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.62rem;font-style:normal}.portal-report-grid em{color:var(--portal-accent);font-size:.68rem;font-style:normal;font-weight:800}.portal-report-file-action button{border:1px solid #b9d7cc;border-radius:.55rem;padding:.48rem .68rem;background:var(--portal-accent);color:var(--portal-text-on-accent);font:inherit;font-size:.66rem;font-weight:850;cursor:pointer}.portal-report-file-action button:focus-visible{outline:3px solid var(--portal-focus-ring);outline-offset:2px}.portal-report-file-action>span{display:block;margin-top:.25rem;color:var(--portal-danger);font-size:.58rem}.portal-report-empty{display:grid;gap:.25rem;margin:.25rem 1rem 1rem;border:1px dashed var(--portal-line-strong);border-radius:.9rem;padding:1.2rem;color:var(--portal-text-muted);font-size:.76rem;text-align:center}.portal-report-empty strong{color:var(--portal-text);font-size:.85rem}.portal-report-privacy{margin:0;border-top:1px solid var(--portal-line-soft);padding:.75rem 1.2rem;color:var(--portal-text-muted);font-size:.64rem;line-height:1.5}.portal-calculator-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;padding:1rem}.portal-calculator-grid article{overflow:hidden;border:1px solid var(--portal-line-accent);border-radius:18px 18px 18px 5px;padding:1.05rem;background:linear-gradient(145deg,var(--portal-surface-accent),var(--portal-surface-solid))}.portal-calculator-grid article>div,.portal-calculator-grid article>footer{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.portal-calculator-grid article>div span{color:var(--portal-accent);font-size:.58rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.portal-calculator-grid article>div small{color:var(--portal-text-soft);font-size:.58rem}.portal-calculator-grid article>strong{display:block;margin-top:.8rem;color:var(--portal-accent);font-size:2.6rem;line-height:1}.portal-calculator-grid article>p{margin:.35rem 0 1rem;color:var(--portal-text-body);font-size:.68rem}.portal-calculator-grid article>footer{border-top:1px solid var(--portal-line-accent);padding-top:.75rem;color:var(--portal-text-body);font-size:.6rem}.portal-calculator-grid article>footer em{border-radius:var(--portal-radius-pill);padding:.25rem .5rem;background:var(--portal-citrus);color:var(--portal-accent-ink);font-style:normal;font-weight:800}.portal-calculator-note{margin:0;border-top:1px solid var(--portal-line-soft);padding:.8rem 1.1rem;color:var(--portal-text-soft);font-size:.6rem}.portal-file-list{display:grid;gap:.4rem;padding:0 1rem 1rem}.portal-file-list article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.7rem;border:1px solid var(--portal-line-soft);border-radius:10px;padding:.7rem}.portal-file-list article>span{display:grid;width:33px;height:33px;place-items:center;border-radius:9px;background:var(--portal-surface-accent);color:var(--portal-accent)}.portal-file-list small,.portal-file-list strong{display:block}.portal-file-list strong{font-size:.66rem;text-transform:capitalize}.portal-file-list small{margin-top:.15rem;color:var(--portal-text-soft);font-size:.55rem}.portal-money-summary{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--portal-line-soft)}.portal-money-summary>div{display:grid;gap:.25rem;border-right:1px solid var(--portal-line-soft);padding:1rem 1.2rem}.portal-money-summary>div:last-child{border-right:0}.portal-money-summary span{color:var(--portal-text-soft);font-size:.56rem;font-weight:800;text-transform:uppercase}.portal-money-summary strong{font-size:1.35rem}.portal-money-summary small{color:var(--portal-text-soft);font-size:.56rem}.portal-payment-callout{display:flex;align-items:center;gap:.7rem;margin:1rem;border-radius:13px 13px 13px 4px;padding:.8rem;background:var(--portal-surface-inverse);color:var(--portal-text-on-accent)}.portal-payment-callout>svg{color:var(--portal-citrus)}.portal-payment-callout>div{flex:1}.portal-payment-callout span,.portal-payment-callout strong{display:block}.portal-payment-callout strong{font-size:.7rem}.portal-payment-callout span{margin-top:.15rem;color:var(--portal-text-on-dark-soft);font-size:.57rem}.portal-payment-callout a{display:flex;align-items:center;gap:.3rem;border-radius:8px;padding:.55rem .7rem;background:var(--portal-citrus);color:var(--portal-accent-ink);font-size:.59rem;font-weight:800;text-decoration:none}.portal-invoice-list{display:grid;gap:.4rem;padding:0 1rem 1rem}.portal-invoice-list>button{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.7rem;width:100%;border:1px solid var(--portal-line-soft);border-radius:11px 11px 11px 4px;padding:.7rem;background:var(--portal-surface-solid);color:var(--portal-text);text-align:left;cursor:pointer}.portal-invoice-list>button>span{display:grid;width:34px;height:34px;place-items:center;border-radius:9px;background:var(--portal-violet-surface);color:var(--portal-violet)}.portal-invoice-list small,.portal-invoice-list strong{display:block}.portal-invoice-list strong{font-size:.68rem}.portal-invoice-list small{margin-top:.12rem;color:var(--portal-text-soft);font-size:.55rem}.portal-invoice-list>button>p{font-size:.68rem;font-weight:800;text-align:right}.portal-order-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.portal-order-grid>article{min-height:150px;border-right:1px solid var(--portal-line-soft);padding:1rem}.portal-order-grid>article:last-child{border-right:0}.portal-order-grid article>header{display:flex;align-items:center;gap:.45rem;margin-bottom:.7rem;color:var(--portal-violet)}.portal-order-grid article>header strong{flex:1;color:var(--portal-text);font-size:.68rem}.portal-order-grid article>header span{display:grid;width:25px;height:25px;place-items:center;border-radius:50%;background:var(--portal-surface-accent);color:var(--portal-accent);font-size:.58rem;font-weight:800}.portal-order-grid article>div{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.65rem;border-top:1px solid var(--portal-line-soft);padding:.65rem 0}.portal-order-grid article>div small,.portal-order-grid article>div strong{display:block}.portal-order-grid article>div strong{font-size:.65rem}.portal-order-grid article>div small{overflow:hidden;max-width:270px;margin-top:.12rem;color:var(--portal-text-soft);font-size:.54rem;text-overflow:ellipsis;white-space:nowrap}.portal-order-grid article>div>p{font-size:.62rem;font-weight:800;text-align:right}.portal-order-grid article>div>p small{color:var(--portal-accent);text-transform:capitalize}.portal-order-grid article>div>a{color:var(--portal-accent);font-size:.56rem;font-weight:800}.portal-message-guidance{margin:.8rem 1rem 0;color:var(--portal-text-muted);font-size:.72rem;line-height:1.55}.portal-message-earlier{justify-self:center;margin:1rem auto 0;border:1px solid var(--portal-line-strong);border-radius:var(--portal-radius-pill);padding:.55rem .8rem;background:var(--portal-surface-solid);color:var(--portal-accent);font-size:.7rem;font-weight:800;cursor:pointer}.portal-message-earlier:focus-visible{outline:3px solid var(--portal-focus-ring);outline-offset:2px}.portal-message-earlier:disabled{cursor:wait;opacity:.55}.portal-message-list{display:grid;gap:.55rem;max-height:620px;overflow-y:auto;padding:1rem;scrollbar-gutter:stable}.portal-message-list article{display:grid;justify-self:start;width:min(84%,440px);border:1px solid var(--portal-line);border-radius:15px 15px 15px 5px;padding:.8rem .9rem;background:var(--portal-surface-sunken)}.portal-message-list article.is-patient{justify-self:end;border-color:var(--portal-line-accent);border-radius:15px 15px 5px 15px;background:var(--portal-surface-accent)}.portal-message-list article>div{min-width:0}.portal-message-list strong{color:var(--portal-text);font-size:.76rem}.portal-message-list article span{margin-left:.4rem;color:var(--portal-text-muted);font-size:.64rem;font-weight:750}.portal-message-list p{margin:.32rem 0;overflow-wrap:anywhere;color:var(--portal-text-body);font-size:.76rem;line-height:1.55;white-space:pre-wrap}.portal-message-list small{display:block;color:var(--portal-text-soft);font-size:.62rem;line-height:1.4}.portal-message-composer{display:grid;gap:.75rem;margin:1rem 1rem 0;border:1px solid var(--portal-line-accent);border-radius:var(--portal-radius-md);padding:1rem;background:var(--portal-surface-sunken)}.portal-message-composer>p{margin:0;color:var(--portal-text-body);font-size:.72rem;line-height:1.5}.portal-message-composer>div{display:grid;grid-template-columns:140px minmax(0,1fr);gap:.75rem}.portal-message-composer label{display:grid;align-content:start;gap:.4rem;color:var(--portal-text-body);font-size:.7rem;font-weight:800}.portal-message-field{min-width:0}.portal-message-composer select,.portal-message-composer textarea{width:100%;border:1px solid var(--portal-line-strong);border-radius:10px;padding:.7rem;background:var(--portal-surface-solid);color:var(--portal-text);font:inherit;font-size:.76rem}.portal-message-composer select:focus-visible,.portal-message-composer textarea:focus-visible{border-color:var(--portal-accent);outline:3px solid var(--portal-focus-ring);outline-offset:2px}.portal-message-composer textarea{min-height:100px;resize:vertical;line-height:1.5}.portal-message-character-count{justify-self:end;margin:-.35rem 0 0;color:var(--portal-text-muted);font-size:.64rem;line-height:1.4}.portal-message-composer>button{justify-self:start;min-height:40px;border:0;border-radius:9px;padding:.65rem .9rem;background:var(--portal-accent);color:var(--portal-text-on-accent);font-size:.72rem;font-weight:850;cursor:pointer}.portal-message-composer>button:focus-visible{outline:3px solid var(--portal-focus-ring);outline-offset:2px}.portal-message-composer>button:disabled{cursor:not-allowed;opacity:.5}.portal-message-composer .portal-action-error,.portal-message-composer .portal-action-success{margin:0;font-size:.7rem;line-height:1.45}.portal-chat-page{display:grid;gap:1rem;max-width:980px;margin:0 auto}.portal-chat-page>header{display:flex;align-items:center;gap:.85rem;border:1px solid var(--portal-line);border-radius:18px 18px 18px 6px;padding:1.1rem 1.2rem;background:var(--portal-surface);box-shadow:0 14px 36px rgb(20 44 38/.055)}.portal-chat-page>header>span{display:grid;width:43px;height:43px;flex:0 0 auto;place-items:center;border-radius:13px 13px 13px 4px;background:var(--portal-accent);color:var(--portal-text-on-accent)}.portal-chat-page header h1,.portal-chat-page header p,.portal-chat-page header small{margin:0}.portal-chat-page header p{color:var(--portal-accent);font-size:.59rem;font-weight:850;letter-spacing:.14em;text-transform:uppercase}.portal-chat-page header h1{margin-top:.15rem;font-size:1.45rem;letter-spacing:-.03em}.portal-chat-page header small{display:block;margin-top:.2rem;color:var(--portal-text-muted);font-size:.68rem;line-height:1.5}.portal-lead-chat>section{display:grid;gap:1rem;border:1px solid var(--portal-line);border-radius:var(--portal-radius-lg);padding:1.35rem;background:var(--portal-surface-solid)}.portal-lead-chat>section>div{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.65rem;border-radius:var(--portal-radius-md);padding:1rem;background:var(--portal-surface-sunken);color:var(--portal-accent-ink)}.portal-lead-chat>section>div>svg{grid-row:1/span 2;color:var(--portal-accent)}.portal-lead-chat>section p{margin:.25rem 0 0;color:var(--portal-text-muted);font-size:.72rem;line-height:1.6}.portal-lead-chat nav{display:flex;flex-wrap:wrap;gap:.55rem}.portal-chat-back,.portal-lead-chat nav a{border:1px solid var(--portal-line-accent-strong);border-radius:9px;padding:.65rem .8rem;color:var(--portal-accent);font-size:.69rem;font-weight:850;text-decoration:none}.portal-lead-chat nav a:first-child{border-color:var(--portal-accent);background:var(--portal-accent);color:var(--portal-text-on-accent)}.portal-chat-back{justify-self:start}}@layer portal.responsive{@media (max-width:1000px){.portal-treatment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-treatment-grid>article:nth-child(2){border-right:0}.portal-treatment-grid>article:nth-child(n+3){border-top:1px solid var(--portal-line-soft)}}@media (max-width:760px){.portal-journey-grid,.portal-order-grid{grid-template-columns:1fr}.portal-order-grid>article{border-right:0;border-bottom:1px solid var(--portal-line-soft)}.portal-treatment-grid{grid-template-columns:1fr}.portal-treatment-grid>article{min-height:0;border-right:0;border-bottom:1px solid var(--portal-line-soft)}.portal-treatment-grid>article:nth-child(n+2){border-top:0}.portal-money-summary{grid-template-columns:1fr}.portal-money-summary>div{border-right:0;border-bottom:1px solid var(--portal-line-soft)}.portal-payment-callout{align-items:flex-start;flex-wrap:wrap}.portal-payment-callout a{width:100%;justify-content:center}.portal-invoice-list>button{grid-template-columns:auto minmax(0,1fr) auto}.portal-invoice-list>button>p{grid-column:2;text-align:left}}@media (max-width:640px){.portal-report-grid>:is(button,article){grid-template-columns:auto minmax(0,1fr)}.portal-report-file-action,.portal-report-grid em{grid-column:2;justify-self:start}.portal-calculator-grid{grid-template-columns:1fr}}@media (max-width:560px){.portal-message-composer>div{grid-template-columns:1fr}.portal-message-character-count{justify-self:start}.portal-message-composer>button,.portal-message-list article{width:100%}}@media (max-width:520px){.portal-lead-chat nav,.portal-lead-chat nav a{width:100%}.portal-lead-chat nav a{text-align:center}}}@layer portal.visits{.portal-appointment-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;padding:1rem 1rem 0}.portal-appointment-list article{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:.65rem;border:1px solid var(--portal-line-soft);border-radius:12px 12px 12px 4px;padding:.65rem}.portal-appointment-list article>span{display:grid;min-height:42px;place-items:center;border-radius:9px;background:var(--portal-violet);color:var(--portal-text-on-accent);font-size:.58rem;font-weight:800;text-align:center}.portal-appointment-list small,.portal-appointment-list strong{display:block}.portal-appointment-list strong{font-size:.7rem}.portal-appointment-list small{margin-top:.2rem;color:var(--portal-text-soft);font-size:.58rem}.portal-appointment-list i{font-size:.55rem;text-transform:capitalize}.portal-appointment-join,.portal-appointment-list i{color:var(--portal-accent);font-style:normal;font-weight:800}.portal-appointment-join{display:inline-flex;align-items:center;gap:.3rem;margin-top:.45rem;border:1px solid var(--portal-accent);border-radius:999px;padding:.3rem .6rem;font-size:.58rem}.portal-appointment-join:is(button){background:none;font-family:inherit;cursor:pointer}.portal-appointment-join:hover{background:var(--portal-accent);color:var(--portal-text-on-accent)}.portal-appointment-join.is-early,.portal-appointment-join.is-preview{border-color:var(--portal-line-soft);color:var(--portal-text-soft);font-weight:600}.portal-appointment-join.is-early:hover,.portal-appointment-join.is-preview:hover{background:none;color:var(--portal-text-soft)}.portal-appointment-join.is-live,.portal-appointment-join.is-live:hover{background:var(--portal-accent);color:var(--portal-text-on-accent)}.portal-appointment-dial{display:block;margin-top:.3rem;color:var(--portal-text-soft);font-size:.55rem}.portal-video-call{display:grid;gap:.5rem;margin:.75rem 1rem 0;border:1px solid var(--portal-line-soft);border-radius:14px;padding:.75rem;background:var(--portal-surface-muted)}.portal-video-call header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem}.portal-video-call header strong{display:inline-flex;align-items:center;gap:.35rem;color:var(--portal-accent);font-size:.62rem;font-weight:800}.portal-video-call header button{border:1px solid var(--portal-line-soft);border-radius:999px;padding:.3rem .6rem;background:none;color:var(--portal-text-soft);font-family:inherit;font-size:.58rem;font-weight:800;cursor:pointer}.portal-video-call header button:hover{border-color:var(--portal-accent);color:var(--portal-accent)}.portal-video-call iframe{display:block;width:100%;min-height:320px;aspect-ratio:16/10;border:0;border-radius:10px;background:var(--portal-surface-inverse)}.portal-appointment-list.is-past{padding-bottom:1rem}.portal-appointment-list.is-past article>span{background:var(--portal-surface-muted);color:var(--portal-text-soft)}.portal-appointment-list.is-past i{color:var(--portal-text-soft)}.portal-booking-existing{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;margin:1rem 1.2rem 0;border:1px solid var(--portal-line-accent);border-radius:var(--portal-radius-md);padding:.85rem 1rem;background:var(--portal-surface-accent)}.portal-booking-existing>svg{color:var(--portal-accent)}.portal-booking-existing span,.portal-booking-existing strong{display:block}.portal-booking-existing strong{font-size:.74rem}.portal-booking-existing span{margin-top:.12rem;color:var(--portal-accent-ink);font-size:.64rem}.portal-booking-existing a{display:inline-flex;align-items:center;gap:.25rem;color:var(--portal-accent);font-size:.65rem;font-weight:850;text-decoration:none;white-space:nowrap}.portal-booking-window{display:flex;align-items:center;gap:.4rem;margin:0;border-top:1px solid var(--portal-line-soft);padding:.8rem 1.2rem;color:var(--portal-text-soft);font-size:.62rem}.portal-booking-window svg{flex:0 0 auto;color:var(--portal-accent)}.portal-booking-requests{display:flex;flex-wrap:wrap;align-items:flex-start;gap:0 .6rem;padding:0 1.2rem 1rem}.portal-booking-requests>div,.portal-booking-requests>p{flex:1 1 100%}}@layer portal.responsive{@media (max-width:760px){.portal-appointment-list{grid-template-columns:1fr}.portal-booking-existing{grid-template-columns:auto minmax(0,1fr)}.portal-booking-existing a{grid-column:2}}}@layer portal.documents{.portal-overlay{isolation:isolate;backdrop-filter:blur(5px)}.portal-overlay,.portal-report-modal{overscroll-behavior:contain}.portal-report-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.portal-report-toolbar p{margin:0 0 .18rem;color:var(--portal-text-muted);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase}.portal-report-toolbar strong{color:var(--portal-accent-ink);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem}.portal-report-toolbar>div:last-child{display:flex;gap:.45rem}.portal-report-toolbar button{border:1px solid var(--portal-line-strong);border-radius:.65rem;padding:.55rem .8rem;background:var(--portal-surface-solid);color:var(--portal-accent-ink);font-size:.72rem;font-weight:750}.portal-report-toolbar button:first-child{border-color:var(--portal-accent);background:var(--portal-accent);color:var(--portal-text-on-accent)}.portal-report-error{margin:0 0 .75rem;border-radius:.6rem;padding:.65rem .8rem;background:var(--portal-danger-surface);color:var(--portal-danger);font-size:.72rem}.portal-invoice-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.portal-invoice-toolbar span,.portal-invoice-toolbar strong{display:block}.portal-invoice-toolbar span{color:var(--portal-text-soft);font-size:.56rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.portal-invoice-toolbar strong{margin-top:.15rem;font-size:.78rem}.portal-invoice-toolbar>div:last-child{display:flex;gap:.4rem}.portal-invoice-toolbar a,.portal-invoice-toolbar button{display:flex;align-items:center;gap:.35rem;border:1px solid var(--portal-line-strong);border-radius:8px;padding:.55rem .7rem;background:var(--portal-surface-solid);color:var(--portal-accent-ink);font-size:.6rem;font-weight:800;text-decoration:none}.portal-invoice-toolbar a{border-color:var(--portal-accent);background:var(--portal-accent);color:var(--portal-text-on-accent)}.portal-document-switch{display:flex;gap:.2rem;border:1px solid var(--portal-line-strong);border-radius:9px;padding:.18rem;background:var(--portal-surface-accent)}.portal-invoice-toolbar .portal-document-switch button{border:0;padding:.38rem .55rem;background:transparent}.portal-invoice-toolbar .portal-document-switch button.active{background:var(--portal-accent);color:var(--portal-text-on-accent)}.portal-invoice-paper{width:100%;max-width:210mm;min-height:275mm;margin:0 auto;border-top:5px solid var(--portal-accent);padding:12mm;background:var(--portal-surface-solid);box-shadow:0 18px 48px rgb(20 44 38/.12);color:var(--portal-text)}.portal-invoice-paper>header{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem;border-bottom:1px solid var(--portal-rule);padding-bottom:1rem}.portal-invoice-brand{display:flex;align-items:flex-start;gap:1rem;max-width:65%}.portal-invoice-brand img{width:112px;height:auto;object-fit:contain}.portal-invoice-brand span,.portal-invoice-brand strong{display:block}.portal-invoice-brand strong{font-size:.65rem}.portal-invoice-brand span{margin-top:.25rem;color:var(--portal-text-muted);font-size:.52rem;line-height:1.5}.portal-invoice-title{text-align:right}.portal-invoice-title span{display:block;color:var(--portal-accent);font-size:.55rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.portal-invoice-title strong{display:block;margin-top:.3rem;font-family:ui-monospace,monospace;font-size:.8rem}.portal-invoice-title small{display:block;margin-top:.25rem;color:var(--portal-text-soft);font-size:.5rem}.portal-invoice-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));margin-top:1rem;border:1px solid var(--portal-rule-strong)}.portal-invoice-facts>div{display:grid;gap:.25rem;border-right:1px solid var(--portal-rule-strong);padding:.55rem}.portal-invoice-facts>div:last-child{border-right:0}.portal-invoice-bill-to>span,.portal-invoice-facts span,.portal-invoice-summary span{color:var(--portal-text-soft);font-size:.48rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.portal-invoice-facts strong{font-size:.58rem;text-transform:capitalize}.portal-invoice-bill-to{margin-top:1rem;padding:.7rem;background:var(--portal-surface-accent)}.portal-invoice-bill-to strong{display:block;margin-top:.25rem;font-size:.68rem}.portal-invoice-bill-to p{margin:.18rem 0 0;color:var(--portal-text-muted);font-size:.52rem;line-height:1.45}.portal-invoice-pay-to{margin-top:.7rem;border-left:3px solid var(--portal-accent);padding:.65rem .75rem;background:var(--portal-surface-sunken)}.portal-invoice-pay-to span{display:block;color:var(--portal-text-soft);font-size:.48rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.portal-invoice-pay-to p{margin:.18rem 0 0;color:var(--portal-text-body);font-size:.52rem;line-height:1.45}.portal-invoice-paper table{width:100%;margin-top:1rem;border-collapse:collapse;font-size:.55rem}.portal-invoice-paper th{padding:.55rem;background:var(--portal-accent-deep);color:var(--portal-text-on-accent);font-size:.47rem;letter-spacing:.07em;text-align:left;text-transform:uppercase}.portal-invoice-paper td:not(:first-child),.portal-invoice-paper th:not(:first-child){text-align:right}.portal-invoice-paper td{border-bottom:1px solid var(--portal-rule);padding:.65rem .55rem}.portal-invoice-paper td small,.portal-invoice-paper td strong{display:block}.portal-invoice-paper td small{margin-top:.15rem;color:var(--portal-text-soft);font-size:.47rem;text-transform:capitalize}.portal-invoice-summary{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:2rem;margin-top:1rem}.portal-invoice-summary>div p{margin:.25rem 0 .65rem;color:var(--portal-text-muted);font-size:.5rem;line-height:1.5}.portal-invoice-summary dl{margin:0}.portal-invoice-summary dl div{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--portal-rule);padding:.38rem .15rem;font-size:.55rem}.portal-invoice-summary dd{margin:0;font-weight:700}.portal-invoice-summary .total{border-top:2px solid var(--portal-accent-deep);color:var(--portal-accent-deep);font-size:.65rem;font-weight:900}.portal-invoice-summary .balance{color:var(--portal-accent);font-weight:900}.portal-invoice-paper>footer{display:flex;justify-content:space-between;gap:1rem;margin-top:2rem;border-top:1px solid var(--portal-rule);padding-top:.75rem;color:var(--portal-text-soft);font-size:.45rem}.portal-invoice-paper>footer strong{color:var(--portal-accent-deep)}}@layer portal.responsive{@media (max-width:760px){.portal-invoice-paper{min-height:0;padding:16px}.portal-invoice-paper>header{flex-direction:column}.portal-invoice-brand{max-width:100%}.portal-invoice-title{text-align:left}.portal-invoice-facts{grid-template-columns:repeat(2,1fr)}.portal-invoice-facts>div:nth-child(2){border-right:0}.portal-invoice-facts>div:nth-child(n+3){border-top:1px solid var(--portal-rule-strong)}.portal-invoice-summary{grid-template-columns:1fr}.portal-invoice-toolbar{align-items:flex-start;flex-direction:column}.portal-invoice-toolbar>div:last-child{flex-wrap:wrap}}@media (max-width:460px){.portal-invoice-paper table{display:block;overflow-x:auto}}}