@font-face{font-family:Metropolis;src:url(/fonts/metropolis-regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Metropolis;src:url(/fonts/metropolis-medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Metropolis;src:url(/fonts/metropolis-semibold.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Metropolis;src:url(/fonts/metropolis-bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Metropolis Fallback;src:local("Helvetica Neue"),local("Arial");size-adjust:96%;ascent-override:92%;descent-override:22%}:root{--avola-teal: #2E7D90;--avola-teal-dark: #245F6E;--avola-teal-light: #E6F2F5;--avola-teal-muted: #C5E0E7;--avola-orange: #F99058;--avola-orange-dark: #E07840;--avola-orange-light: #FEF0E8;--avola-orange-muted: #FCD5BF;--patient-hha-accent: #F99058;--patient-hha-tint: #FEF1E6;--patient-hha-on-tint: #A14813;--patient-hha-border: #F9C59A;--patient-ddd-accent: #2E7D90;--patient-ddd-tint: #E3F2F5;--patient-ddd-on-tint: #1F5A69;--patient-ddd-border: #A6D4DE;--patient-esa-accent: #7C3AED;--patient-esa-tint: #F1EBFB;--patient-esa-on-tint: #5B2EA4;--patient-esa-border: #D0BDF2;--patient-school-accent: #C05050;--patient-school-tint: #FBEAEA;--patient-school-on-tint: #8D3A3A;--patient-school-border: #EABFBF;--patient-standard-accent: #6366F1;--patient-standard-tint: #EEF0FF;--patient-standard-on-tint: #3F40A0;--patient-standard-border: #C7CCF5;--paper: #FAF9F6;--paper-2: #F4F2EC;--paper-3: #EDEAE1;--ink-2: #40525A;--ink-3: #64747C;--ink-4: #9AA7AE;--hairline: #E3DED2;--hairline-2: #D6CFBE;--white: #FFFFFF;--fg-primary: #1F2A2E;--fg-secondary: var(--ink-2);--fg-tertiary: var(--ink-3);--fg-muted: var(--ink-4);--fg-placeholder: #C4CFD3;--fg-on-teal: #FFFFFF;--fg-on-orange: #2A1A0E;--bg-canvas: var(--paper);--bg-surface: var(--white);--bg-sunken: var(--paper-2);--bg-tint-teal: var(--avola-teal-light);--bg-tint-warm: var(--avola-orange-light);--border-default: var(--hairline);--border-strong: var(--hairline-2);--border-teal: var(--avola-teal-muted);--border-warm: var(--avola-orange-muted);--accent-primary: var(--avola-teal);--accent-warm: var(--avola-orange);--bar-ot: #EF4444;--bar-pt: #3B82F6;--bar-slp: #7C3AED;--status-info: var(--avola-teal);--status-warn: var(--avola-orange);--status-danger: #C2523A;--status-success: #4F7A5C;--status-attention: #8A5A0A;--status-danger-bg: #FAEDE9;--status-danger-border: #E8C5BC;--status-success-bg: #ECF2EE;--status-success-border: #C9DBCF;--status-warn-bg: var(--avola-orange-light);--status-warn-border: var(--avola-orange-muted);--status-info-bg: var(--avola-teal-light);--status-info-border: var(--avola-teal-muted);--demo-banner-bg: #FFC107;--demo-banner-fg: #4A2E00;--demo-banner-border: #B45309;--font-sans: "Metropolis", "Metropolis Fallback", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--fs-mkt-display: 56px;--lh-mkt-display: 1.05;--ls-mkt-display: -.022em;--fs-mkt-h1: 40px;--lh-mkt-h1: 1.12;--ls-mkt-h1: -.018em;--fs-display: 40px;--lh-display: 1.12;--ls-display: -.02em;--fs-h1: 28px;--lh-h1: 1.2;--ls-h1: -.015em;--fs-h2: 24px;--lh-h2: 1.25;--ls-h2: -.01em;--fs-h3: 20px;--lh-h3: 1.3;--ls-h3: -.005em;--fs-h4: 18px;--lh-h4: 1.3;--ls-h4: 0;--fs-h5: 16px;--lh-h5: 1.35;--ls-h5: 0;--fs-body: 17px;--lh-body: 1.5;--ls-body: 0;--fs-small: 15px;--lh-small: 1.45;--ls-small: 0;--fs-caption: 12px;--lh-caption: 1.45;--ls-caption: .01em;--fs-label: 13px;--lh-label: 1.3;--ls-label: .02em;--fw-regular: 400;--fw-medium: 500;--fw-semibold:600;--fw-bold: 700;--s-0: 0;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 20px;--s-6: 24px;--s-8: 32px;--s-10: 40px;--s-12: 48px;--s-14: 56px;--s-16: 64px;--s-20: 80px;--s-24: 96px;--s-32: 128px;--touch-min: 44px;--touch-comfort: 48px;--row-min: 56px;--icon-btn: 44px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--tab-bar-h: 56px;--tab-bar-total: calc(var(--tab-bar-h) + var(--safe-bottom));--r-sm: 4px;--r-md: 8px;--r-lg: 12px;--r-xl: 16px;--r-pill: 999px;--elev-rest: none;--elev-tab-bar: 0 -1px 0 var(--hairline);--elev-sheet: 0 -6px 16px rgba(31,42,46,.1);--elev-popover: 0 4px 14px rgba(31,42,46,.1);--elev-pressed: inset 0 0 0 99px rgba(46,125,144,.06);--elev-focus: 0 0 0 3px rgba(46,125,144,.25);--elev-focus-warm: 0 0 0 3px rgba(249,144,88,.28);--ease-standard: cubic-bezier(.2, 0, 0, 1);--ease-emphasize: cubic-bezier(.2, 0, .05, 1);--dur-press: .1s;--dur-fast: .16s;--dur-base: .24s;--dur-sheet-in: .28s;--dur-sheet-out: .22s;--dur-slow: .32s}:root{--paper-dim: #1A1D1F;--paper-dim-2: #232729;--ink-on-dim: #ECEFF1;--ink-on-dim-2: #B8C0C4;--hairline-dim: #2B3033;--teal-on-dim: #58B6CC}.t-display{font-size:var(--fs-display);line-height:var(--lh-display);letter-spacing:var(--ls-display);font-weight:var(--fw-semibold);color:var(--fg-primary);margin:0}.t-h1{font-size:var(--fs-h1);line-height:var(--lh-h1);letter-spacing:var(--ls-h1);font-weight:var(--fw-semibold);color:var(--fg-primary);margin:0}.t-h2{font-size:var(--fs-h2);line-height:var(--lh-h2);letter-spacing:var(--ls-h2);font-weight:var(--fw-semibold);color:var(--fg-primary);margin:0}.t-h3{font-size:var(--fs-h3);line-height:var(--lh-h3);letter-spacing:var(--ls-h3);font-weight:var(--fw-semibold);color:var(--fg-primary);margin:0}.t-h4{font-size:var(--fs-h4);line-height:var(--lh-h4);letter-spacing:var(--ls-h4);font-weight:var(--fw-semibold);color:var(--fg-primary);margin:0}h5,.avola-h5{font-size:var(--fs-h5);line-height:var(--lh-h5);letter-spacing:var(--ls-h5);font-weight:var(--fw-semibold);color:var(--fg-primary);margin:0 0 var(--s-2)}.avola-mkt-display{font-size:var(--fs-mkt-display);line-height:var(--lh-mkt-display);letter-spacing:var(--ls-mkt-display);font-weight:var(--fw-semibold);color:var(--fg-primary)}.avola-mkt-h1{font-size:var(--fs-mkt-h1);line-height:var(--lh-mkt-h1);letter-spacing:var(--ls-mkt-h1);font-weight:var(--fw-semibold);color:var(--fg-primary)}.t-body{font-size:var(--fs-body);line-height:var(--lh-body);letter-spacing:var(--ls-body);font-weight:var(--fw-regular);color:var(--fg-primary)}.t-small{font-size:var(--fs-small);line-height:var(--lh-small);letter-spacing:var(--ls-small);font-weight:var(--fw-regular);color:var(--fg-secondary)}.t-caption{font-size:var(--fs-caption);line-height:var(--lh-caption);letter-spacing:var(--ls-caption);font-weight:var(--fw-regular);color:var(--fg-tertiary)}.t-label{font-size:var(--fs-label);line-height:var(--lh-label);letter-spacing:var(--ls-label);font-weight:var(--fw-medium);text-transform:none;color:var(--fg-secondary)}.t-eyebrow{font-size:var(--fs-caption);line-height:1.2;letter-spacing:.08em;text-transform:uppercase;font-weight:var(--fw-semibold);color:var(--fg-tertiary)}.t-field-value{font-size:16px;line-height:1.4;font-weight:var(--fw-medium);color:var(--fg-primary)}.t-field-small{font-size:13px;line-height:1.45;font-weight:var(--fw-regular);color:var(--fg-secondary)}.mono-nums{font-variant-numeric:tabular-nums}.nowrap{white-space:nowrap}.wiki-browse-screen{padding:var(--s-4) var(--s-6);min-height:calc(100vh - 140px)}.tabs{display:grid;gap:var(--s-3)}.tabs__list{display:flex;gap:4px;border-bottom:1px solid var(--hairline);flex-wrap:wrap}.tabs__trigger{position:relative;background:transparent;border:0;padding:12px 4px;margin:0 12px 0 0;font:inherit;font-size:var(--fs-small);font-weight:var(--fw-medium);color:var(--fg-tertiary);cursor:pointer;display:inline-flex;align-items:center;gap:var(--s-2);transition:color var(--dur-fast) var(--ease-standard)}.tabs__trigger:hover:not(:disabled):not([aria-selected=true]){color:var(--fg-primary);background:transparent}.tabs__trigger:focus-visible{outline:none;box-shadow:var(--elev-focus);border-radius:4px}.tabs__trigger[aria-selected=true]{color:var(--fg-primary);font-weight:var(--fw-semibold);background:transparent}.tabs__trigger[aria-selected=true]:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--avola-teal);border-radius:2px 2px 0 0}.tabs__trigger[aria-disabled=true],.tabs__trigger:disabled{color:var(--ink-4);cursor:not-allowed}.tabs__trigger-hint{font-size:var(--fs-caption);font-weight:var(--fw-semibold);color:var(--fg-tertiary);background:var(--paper-2);padding:1px 7px;border-radius:var(--r-pill);font-variant-numeric:tabular-nums;letter-spacing:0}.tabs__trigger[aria-selected=true] .tabs__trigger-hint{background:var(--avola-teal-light);color:var(--avola-teal-dark)}.app-page-title{margin:0;font-size:var(--fs-h1);line-height:1.1;letter-spacing:0;font-weight:var(--fw-bold);color:var(--fg-primary)}.app-page-subtitle{margin:4px 0 0;font-size:var(--fs-small);line-height:1.4;color:var(--fg-tertiary)}input::placeholder,textarea::placeholder{color:var(--fg-placeholder)}html,body{font-family:var(--font-sans);font-size:var(--fs-body)}@media(max-width:767px){input,select,textarea{font-size:max(16px,1rem)}}@media(max-width:767px){button,a,[role=button]{-webkit-tap-highlight-color:transparent;touch-action:manipulation}}@media(prefers-reduced-motion:reduce){.tabs__trigger{transition-duration:.01ms}}.btn-primary-action,.today-screen .today-btn.today-btn--primary,.daily-view__session-btn,.visit-card__session-btn{background:var(--avola-teal);color:var(--white);border:1px solid var(--avola-teal);border-radius:var(--r-md)}.btn-primary-action:hover,.today-screen .today-btn.today-btn--primary:hover,.daily-view__session-btn:hover,.visit-card__session-btn:hover{background:var(--avola-teal-dark);border-color:var(--avola-teal-dark)}.btn-primary-action:focus-visible,.daily-view__session-btn:focus-visible,.visit-card__session-btn:focus-visible{outline:none;box-shadow:var(--elev-focus)}.btn-primary-action:disabled,.today-screen .today-btn.today-btn--primary:disabled,.daily-view__session-btn:disabled,.visit-card__session-btn:disabled{background:var(--bg-tint-teal);color:var(--fg-muted);border-color:var(--border-default);cursor:not-allowed}.btn-primary-action:disabled:hover,.today-screen .today-btn.today-btn--primary:disabled:hover,.daily-view__session-btn:disabled:hover,.visit-card__session-btn:disabled:hover{background:var(--bg-tint-teal);border-color:var(--border-default)}.btn-primary-action{cursor:pointer;font-family:inherit;font-weight:var(--fw-semibold);white-space:nowrap}.flat-list-row{display:grid;align-items:center;padding:10px var(--s-4);background:var(--bg-surface);border:0;border-top:1px solid var(--border-default);cursor:pointer;text-align:left;font:inherit;transition:background var(--dur-fast) var(--ease-standard)}.flat-list-row:first-child{border-top:0}.flat-list-row:hover,.flat-list-row:active{background:var(--bg-sunken)}.flat-list-row:focus-visible{outline:none;box-shadow:var(--elev-focus)}.flat-list-rows{display:grid;gap:0}.flat-list-row--stacked{align-items:start;padding-top:12px;padding-bottom:12px}@media(prefers-reduced-motion:reduce){.flat-list-row{transition-duration:.01ms}}.portal-access-card{display:grid;gap:var(--s-4)}.portal-access-card .portal-empty{padding:var(--s-4);border:1px dashed var(--border-default);border-radius:var(--r-md);color:var(--fg-tertiary);font-size:var(--fs-small);text-align:center}.portal-access-card .portal-link-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--s-3)}.portal-access-card .portal-link-row,.portal-access-card .portal-invite-row{border:1px solid var(--border-default);border-radius:var(--r-lg);padding:var(--s-4);background:var(--bg-surface);display:grid;gap:var(--s-2)}.portal-link-row__head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s-3)}.portal-link-row__title{font-weight:var(--fw-semibold);font-size:var(--fs-body);color:var(--fg-primary)}.portal-link-row__email{font-size:var(--fs-small);color:var(--fg-tertiary)}.portal-link-row__meta{font-size:var(--fs-small);color:var(--fg-secondary)}.portal-link-row__dates{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--s-2)}.portal-link-row__dates>div{display:grid;gap:2px}.portal-link-row__actions{display:flex;gap:var(--s-2);flex-wrap:wrap;margin-top:var(--s-1)}.portal-status-pill{font-size:var(--fs-caption);font-weight:var(--fw-semibold);padding:2px 10px;border-radius:var(--r-pill);white-space:nowrap;background:var(--paper-2);color:var(--fg-secondary);border:1px solid var(--border-default)}.portal-status-pill--active{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.portal-status-pill--pending_review{background:#fff7ed;color:#9a3412;border-color:#fdba74}.portal-status-pill--expired,.portal-status-pill--revoked{background:#fef2f2;color:#991b1b;border-color:#fecaca}.portal-status-pill--invite{background:var(--avola-teal-light);color:var(--avola-teal-dark);border-color:var(--avola-teal-muted)}.portal-permission-chips{display:flex;flex-wrap:wrap;gap:6px}.portal-permission-chip{font-size:var(--fs-caption);font-weight:var(--fw-medium);padding:2px 10px;border-radius:var(--r-sm);background:var(--paper-2);color:var(--fg-secondary);border:1px solid var(--border-default)}.portal-date-value{font-size:var(--fs-small);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums}.portal-date-value--ok{color:var(--status-success)}.portal-date-value--warn{color:var(--status-warn)}.portal-date-value--danger{color:var(--status-danger)}.portal-subhead{font-size:var(--fs-h4);font-weight:var(--fw-semibold);color:var(--fg-primary);margin:var(--s-3) 0 var(--s-2) 0}.portal-cta-row{display:flex;justify-content:flex-start;margin-top:var(--s-2)}.portal-modal-scrim{position:fixed;inset:0;background:#1f2a2e73;display:flex;align-items:center;justify-content:center;z-index:50;padding:var(--s-4)}.portal-modal-card{background:var(--bg-surface);border-radius:var(--r-xl);box-shadow:var(--elev-popover);max-width:600px;width:100%;max-height:92vh;overflow:hidden;display:grid;grid-template-rows:auto 1fr auto}.portal-modal-header{padding:var(--s-4) var(--s-5);border-bottom:1px solid var(--border-default);display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s-3)}.portal-modal-title{font-size:var(--fs-h3);font-weight:var(--fw-semibold);color:var(--fg-primary);display:block}.portal-modal-subtitle{display:block;font-size:var(--fs-small);color:var(--fg-tertiary);margin-top:2px}.portal-modal-close{background:none;border:none;font-size:22px;line-height:1;color:var(--fg-tertiary);cursor:pointer;padding:4px 8px}.portal-modal-close:hover{color:var(--fg-primary)}.portal-modal-body{padding:var(--s-5);overflow-y:auto;display:grid;gap:var(--s-3)}.portal-modal-footer{padding:var(--s-3) var(--s-5);border-top:1px solid var(--border-default);background:var(--bg-sunken);display:flex;justify-content:flex-end;gap:var(--s-2)}.refund-dialog-scrim{z-index:1000;padding:var(--s-6);background:color-mix(in srgb,var(--fg-primary) 55%,transparent)}.refund-dialog-card{max-width:480px}.refund-dialog-header{padding:var(--s-5) var(--s-6) var(--s-3)}.refund-dialog-content{min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto}.refund-dialog-title{font-size:1.1rem}.refund-dialog-subtitle{display:block;color:var(--fg-secondary);font-size:.85rem;margin-top:2px}.refund-dialog-mono,.refund-dialog-input--mono{font-family:var(--font-mono)}.refund-dialog-close:disabled,.refund-dialog-btn:disabled{cursor:not-allowed;opacity:.7}.refund-dialog-body{padding:var(--s-4) var(--s-6);gap:14px}.refund-dialog-label-muted,.refund-dialog-warning{font-weight:var(--fw-regular)}.refund-dialog-label-muted,.refund-dialog-char-count{color:var(--fg-tertiary)}.refund-dialog-warning{color:var(--avola-orange-dark)}.refund-dialog-input{font-size:.95rem}.refund-dialog-char-count{font-size:var(--fs-caption)}.refund-dialog-error{margin:0;background:var(--status-danger-bg);color:var(--status-danger);border:1px solid var(--status-danger-border);border-radius:var(--r-md);padding:var(--s-2) 10px;font-size:.9rem}.refund-dialog-footer{padding:var(--s-3) var(--s-6) var(--s-5)}.refund-dialog-btn{padding:var(--s-2) 14px;border-radius:6px;cursor:pointer;font:inherit}.refund-dialog-btn--secondary{background:var(--bg-surface);border:1px solid var(--border-strong);color:var(--fg-primary);font-weight:var(--fw-medium)}.refund-dialog-btn--secondary:hover:not(:disabled){background:var(--paper-2)}.refund-dialog-btn--danger{background:var(--status-danger);border:1px solid var(--status-danger);color:var(--white);font-weight:var(--fw-semibold)}.refund-dialog-btn--danger:hover:not(:disabled){filter:brightness(.96)}.refund-dialog-btn:focus-visible{outline:none;box-shadow:var(--elev-focus)}.portal-field{display:grid;gap:6px}.portal-field--inline{display:flex;align-items:center;gap:var(--s-2)}.portal-field-label{font-size:var(--fs-small);font-weight:var(--fw-semibold);color:var(--fg-primary)}.portal-input{width:100%;border-radius:var(--r-md);border:1px solid var(--border-default);padding:10px var(--s-3);font:inherit;font-size:var(--fs-body);color:var(--fg-primary);background:var(--bg-surface);box-sizing:border-box}.portal-input--textarea{resize:vertical;min-height:60px;font-family:inherit}.portal-input:focus-visible{outline:none;border-color:var(--avola-teal);box-shadow:var(--elev-focus)}.portal-helper{font-size:var(--fs-caption);color:var(--fg-tertiary);margin:0;background:var(--bg-tint-teal);border:1px solid var(--border-teal);border-radius:var(--r-md);padding:var(--s-2) var(--s-3)}.portal-grid-two{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-3)}@media(max-width:520px){.portal-grid-two{grid-template-columns:1fr}}.portal-fieldset{border:1px solid var(--border-default);border-radius:var(--r-md);padding:var(--s-3) var(--s-4)}.portal-fieldset legend{padding:0 var(--s-2)}.portal-permission-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--s-2);margin-top:var(--s-2)}.portal-permission-row{display:flex;align-items:center;gap:var(--s-2);font-size:var(--fs-small);color:var(--fg-primary)}.portal-warning-text{margin:0;font-size:var(--fs-small);line-height:var(--lh-small);background:#fffbeb;border:1px solid #FDE68A;color:#92400e;padding:var(--s-3) var(--s-4);border-radius:var(--r-md)}.portal-confirm-body{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--fg-primary)}.portal-admin-screen{display:grid;gap:var(--s-5)}.portal-admin-screen .portal-section{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--r-lg);padding:var(--s-5)}.portal-admin-screen .portal-section h2{font-size:var(--fs-h3);font-weight:var(--fw-semibold);color:var(--fg-primary);margin:0 0 var(--s-2) 0}.portal-admin-screen .portal-section .portal-section-meta{font-size:var(--fs-small);color:var(--fg-tertiary);margin-bottom:var(--s-3)}.portal-rr-table{width:100%;border-collapse:collapse;font-size:var(--fs-small)}.portal-rr-table th,.portal-rr-table td{padding:10px var(--s-3);border-bottom:1px solid var(--border-default);text-align:left;vertical-align:top}.portal-rr-table th{font-weight:var(--fw-semibold);color:var(--fg-secondary);background:var(--bg-sunken)}.portal-rr-row{cursor:pointer}.portal-rr-row:hover{background:var(--paper-2)}.portal-rr-row[data-deadline-soon=true] td{background:#fef2f2}.portal-rr-filters{display:flex;gap:var(--s-3);margin-bottom:var(--s-3);flex-wrap:wrap}.portal-release-toggle{display:inline-flex;align-items:center;gap:var(--s-2);padding:6px 12px;border-radius:var(--r-md);background:var(--bg-tint-teal);border:1px solid var(--border-teal);font-size:var(--fs-small);color:var(--avola-teal-dark)}.portal-release-toggle__caption{font-size:var(--fs-caption);color:var(--fg-tertiary);margin-left:var(--s-2)}.address-autocomplete{position:relative}.address-autocomplete__list{position:absolute;z-index:20;top:calc(100% + 2px);left:0;right:0;margin:0;padding:4px;list-style:none;background:var(--white);border:1px solid var(--border-default);border-radius:var(--r-md);box-shadow:var(--elev-popover);max-height:240px;overflow-y:auto}.address-autocomplete__option{padding:8px 10px;border-radius:var(--r-sm);font-size:var(--fs-small);color:var(--fg-primary);cursor:pointer}.address-autocomplete__option--active,.address-autocomplete__option:hover{background:var(--avola-teal);color:var(--white)}.address-autocomplete__status{margin-top:6px;font-size:var(--fs-label);line-height:1.4}.address-autocomplete__status--checking{color:var(--fg-muted)}.address-autocomplete__status--located{color:var(--status-success);font-weight:600}.address-autocomplete__status--not-found{color:var(--status-danger);font-weight:600}.login-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80vh;text-align:center;padding:var(--s-8)}.login-screen__brand{display:flex;align-items:center;justify-content:center;gap:14px;color:var(--brand);margin-bottom:var(--s-2);width:100%}.login-screen__brand-divider{color:var(--line);font-weight:200;font-size:2.25rem;line-height:1}.login-screen__tagline{font-size:11px;font-weight:var(--fw-semibold);letter-spacing:.28em;text-transform:uppercase;color:var(--fg-tertiary);margin-bottom:52px;width:100%;text-align:center}.login-screen__env-pill{margin-bottom:var(--s-5);padding:10px 14px;border-radius:var(--r-lg);background:var(--demo-banner-bg);border:1px solid var(--demo-banner-border);color:var(--demo-banner-fg);font-size:var(--fs-small);font-weight:var(--fw-bold);max-width:420px}.login-screen__error{margin-bottom:var(--s-5);padding:var(--s-3) var(--s-4);border-radius:var(--r-lg);background:#fef2f2;border:1px solid #FECACA;color:#991b1b;font-size:var(--fs-small);max-width:420px}.login-screen__demo-picker{display:grid;gap:6px;width:min(100%,360px);margin-bottom:var(--s-4);text-align:left}.login-screen__demo-picker-label{font-size:var(--fs-small);font-weight:var(--fw-semibold);color:var(--fg-tertiary)}.login-screen__demo-select{padding:11px 12px;border-radius:10px;border:1px solid var(--line);background:var(--surface);font-family:inherit;font-size:var(--fs-body);color:var(--ink)}.login-screen__demo-select:focus-visible{outline:none;border-color:var(--avola-teal);box-shadow:var(--elev-focus)}.login-screen__signin-btn{display:inline-flex;align-items:center;gap:var(--s-3);padding:var(--s-3) var(--s-8);background:var(--surface);border:1px solid var(--line);border-radius:6px;font-family:inherit;font-size:15px;font-weight:var(--fw-medium);color:var(--ink);cursor:pointer;transition:background var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard)}.login-screen__signin-btn:hover:not(:disabled){border-color:var(--avola-teal)}.login-screen__signin-btn:focus-visible{outline:none;border-color:var(--avola-teal);box-shadow:var(--elev-focus)}.login-screen__signin-btn:disabled{cursor:wait;opacity:.7}.login-screen__footer{margin-top:var(--s-10);font-size:var(--fs-caption);color:var(--fg-tertiary)}.login-screen__hint{margin-top:10px;font-size:11.5px;color:var(--fg-tertiary)}.patient-list-screen{overflow-x:clip;max-width:100%;touch-action:pan-y}.patient-list-screen__header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:var(--s-4);gap:var(--s-3)}.patient-list-screen__title-block{min-width:0}.patient-list-screen__heading{margin:0}.patient-list-screen__subhead{margin:4px 0 0}.patient-list-screen__new-btn{border:1px solid var(--avola-teal);border-radius:10px;background:var(--avola-teal);color:var(--white);padding:10px 18px;font-family:inherit;font-weight:var(--fw-semibold);font-size:var(--fs-small);cursor:pointer;flex-shrink:0;transition:background var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard)}.patient-list-screen__new-btn:hover{background:var(--avola-teal-dark);border-color:var(--avola-teal-dark)}.patient-list-screen__new-btn:focus-visible{outline:none;box-shadow:var(--elev-focus)}.patient-list-screen__filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:var(--s-3);align-items:center;min-width:0}.patient-list-screen__search{flex:1 1 200px;min-width:0;border-radius:10px;border:1px solid var(--line);padding:10px 14px;font:inherit;background:var(--white);color:var(--fg-primary)}.patient-list-screen__search:focus-visible{outline:none;border-color:var(--avola-teal);box-shadow:var(--elev-focus)}.patient-list-screen__status-select{min-width:0;border-radius:10px;border:1px solid var(--line);padding:10px 12px;font:inherit;background:var(--white);color:var(--fg-primary)}.patient-list-screen__status-select:focus-visible{outline:none;border-color:var(--avola-teal);box-shadow:var(--elev-focus)}.patient-list-screen__nav-pills{position:sticky;top:0;z-index:5;display:flex;flex-wrap:wrap;gap:6px;padding:var(--s-2) 0 var(--s-3);margin-bottom:var(--s-1);background:linear-gradient(to bottom,var(--canvas, var(--paper)) 80%,rgba(247,244,237,0));min-width:0}.patient-list-screen__nav-pill{display:inline-flex;align-items:center;gap:6px;border:1px solid color-mix(in srgb,var(--cat-color) 33%,transparent);background:color-mix(in srgb,var(--cat-color) 7%,transparent);color:var(--cat-color);padding:4px 10px;border-radius:var(--r-pill);font-family:inherit;font-size:12.5px;font-weight:var(--fw-bold);cursor:pointer;min-width:0}.patient-list-screen__nav-pill:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--cat-color) 28%,transparent)}.patient-list-screen__nav-pill-count{background:var(--cat-color);color:var(--white);border-radius:var(--r-pill);padding:0 7px;font-size:11px;font-weight:var(--fw-bold);min-width:18px;text-align:center;font-variant-numeric:tabular-nums}.patient-list-screen__empty{color:var(--fg-tertiary);padding:var(--s-10) var(--s-6);text-align:center}.patient-list-screen__group{margin-bottom:var(--s-5);scroll-margin-top:60px}.patient-list-screen__group-header{width:100%;display:flex;align-items:center;gap:10px;padding:var(--s-2) var(--s-3);margin-bottom:10px;border:none;border-left:3px solid var(--cat-color);background:transparent;cursor:pointer;text-align:left;font:inherit;min-width:0}.patient-list-screen__group-header:focus-visible{outline:none;box-shadow:var(--elev-focus)}.patient-list-screen__group-header-chevron{display:inline-block;width:10px;transition:transform var(--dur-fast) var(--ease-standard);color:var(--fg-tertiary);font-size:12px}.patient-list-screen__group-header-chevron--collapsed{transform:rotate(-90deg)}.patient-list-screen__group-header-label{font-size:12.5px;font-weight:var(--fw-bold);color:var(--cat-color);letter-spacing:.04em;text-transform:uppercase;min-width:0}.patient-list-screen__group-header-count{font-size:12.5px;color:var(--fg-tertiary);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums}.patient-list-screen__group-header-rule{flex:1;min-width:12px;height:1px;background:var(--line);margin-left:var(--s-1)}.patient-list-screen__cards{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));min-width:0}@media(max-width:760px){.patient-list-screen__cards{grid-template-columns:minmax(0,1fr)}.patient-list-screen__header{align-items:flex-start}.patient-list-screen__filters{display:block}.patient-list-screen__search{width:100%;min-width:0}}.patient-list-screen__card{background:var(--bg-surface);border:1px solid var(--line);border-left:4px solid var(--cat-color);border-radius:var(--r-lg);padding:var(--s-3) 14px;cursor:pointer;min-width:0;transition:border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard)}.patient-list-screen__card:focus-visible{outline:none;box-shadow:var(--elev-focus)}.patient-list-screen__card-row{display:flex;gap:10px;align-items:center;min-width:0}.patient-list-screen__card-avatar{width:38px;height:38px;border-radius:50%;background:var(--cat-color);color:var(--white);display:flex;align-items:center;justify-content:center;font-weight:var(--fw-bold);font-size:13px;flex-shrink:0;letter-spacing:.02em}.patient-list-screen__card-body{flex:1;min-width:0}.patient-list-screen__card-name-row{display:flex;justify-content:space-between;align-items:center;gap:var(--s-2)}.patient-list-screen__card-name-block{display:flex;align-items:center;gap:6px;min-width:0}.patient-list-screen__card-name{font-size:14.5px;font-weight:var(--fw-semibold);color:var(--fg-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.patient-list-screen__card-badges{display:inline-flex;gap:3px;flex-shrink:0}.patient-list-screen__card-unassigned{display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;border-radius:var(--r-pill);background:var(--status-danger);color:var(--white);font-size:11px;font-weight:var(--fw-bold);line-height:1;flex-shrink:0}.patient-list-screen__card-chip{background:color-mix(in srgb,var(--cat-color) 10%,transparent);color:var(--cat-color);border-radius:var(--r-pill);padding:2px 9px;font-size:11.5px;font-weight:var(--fw-bold);flex-shrink:0}.patient-list-screen__card-meta{color:var(--fg-tertiary);font-size:12.5px;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.patient-list-screen__card-meta-sep{margin:0 6px;opacity:.5}@media(prefers-reduced-motion:reduce){.login-screen__signin-btn,.patient-list-screen__new-btn,.patient-list-screen__group-header-chevron,.patient-list-screen__card{transition-duration:.01ms}}.sidebar{--rail-w-expanded: 232px;--rail-w-collapsed: 64px;width:var(--rail-w-expanded);min-width:var(--rail-w-expanded);background:var(--paper);border-right:1px solid var(--hairline);display:flex;flex-direction:column;transition:width var(--dur-base) var(--ease-standard),min-width var(--dur-base) var(--ease-standard);overflow:visible}.sidebar[data-collapsed=true]{width:var(--rail-w-collapsed);min-width:var(--rail-w-collapsed)}.sidebar__header{position:relative;display:flex;align-items:center;height:44px;padding:0 30px 0 12px;border-bottom:1px solid var(--hairline)}.sidebar[data-collapsed=true] .sidebar__header{justify-content:center;padding:0}.sidebar__brand{display:inline-flex;align-items:center;gap:6px;color:var(--avola-teal);min-width:0}.sidebar__brand svg{display:block}.sidebar__brand-sep{color:var(--hairline);font-size:1.4em;font-weight:300;line-height:1;-webkit-user-select:none;user-select:none}.sidebar__toggle,.sidebar__icon-button{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:var(--r-md);background:transparent;color:var(--ink-3);cursor:pointer;transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.sidebar__toggle:hover,.sidebar__icon-button:hover{background:var(--paper-2);color:var(--fg-primary)}.sidebar__toggle:focus-visible,.sidebar__icon-button:focus-visible{outline:none;box-shadow:var(--elev-focus)}.sidebar__toggle{position:absolute;top:50%;right:6px;transform:translateY(-50%);width:24px;height:24px}.sidebar[data-collapsed=true] .sidebar__toggle{position:static;transform:none;width:28px;height:28px}.sidebar__search{padding:12px}.sidebar__search-field{display:flex;align-items:center;gap:8px;width:100%;height:32px;padding:0 8px 0 10px;background:var(--white);border:1px solid var(--hairline);border-radius:var(--r-pill);color:var(--ink-3)}.sidebar__search-field:focus-within{border-color:var(--border-teal);box-shadow:var(--elev-focus)}.sidebar__search-input{flex:1;border:none;outline:none;background:transparent;font:inherit;font-size:13px;color:var(--fg-primary);min-width:0}.sidebar__search-input::placeholder{color:var(--fg-placeholder)}.sidebar__search-kbd{display:inline-flex;align-items:center;padding:1px 6px;font-family:var(--font-mono);font-size:10.5px;font-weight:600;color:var(--ink-3);background:var(--paper-2);border:1px solid var(--hairline);border-radius:4px;flex-shrink:0}.sidebar__search-clear{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border:none;border-radius:50%;background:transparent;color:var(--ink-3);cursor:pointer;font-size:13px;line-height:1}.sidebar__search-clear:hover{background:var(--paper-2);color:var(--fg-primary)}.sidebar__nav{flex:1;min-height:0;overflow-y:auto;overflow-x:visible;padding:4px 8px;display:flex;flex-direction:column;gap:2px}.sidebar[data-collapsed=true] .sidebar__nav{padding:4px 0;align-items:center}.sidebar__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;width:100%}.sidebar__separator{height:1px;background:var(--hairline);border:none;margin:8px 4px}.sidebar[data-collapsed=true] .sidebar__separator{margin:8px 12px}.sidebar__section-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 10px 4px;border:none;background:transparent;cursor:pointer;font-size:10.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}.sidebar__section-header:hover{color:var(--fg-primary)}.sidebar__section-header:focus-visible{outline:none;box-shadow:var(--elev-focus);border-radius:var(--r-sm)}.sidebar__section-chevron{display:inline-flex;align-items:center;transition:transform var(--dur-fast) var(--ease-standard)}.sidebar__section-chevron[data-open=false]{transform:rotate(-90deg)}.sidebar[data-collapsed=true] .sidebar__section-dot{display:flex;align-items:center;justify-content:center;width:100%;padding:6px 0;font-size:14px;color:var(--ink-3)}.nv-link{position:relative;display:flex;align-items:center;gap:10px;width:100%;padding:7px 10px;border:none;border-radius:var(--r-md);background:transparent;color:var(--ink-2);font:inherit;font-size:13.5px;font-weight:500;cursor:pointer;text-align:left;transition:background var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard)}.nv-link:hover{background:var(--paper-2);color:var(--fg-primary)}.nv-link:focus-visible{outline:none;box-shadow:var(--elev-focus)}.nv-link[data-active=true]{background:var(--white);color:var(--avola-teal-dark);font-weight:600;box-shadow:0 0 0 1px var(--border-teal)}.nv-link[data-active=true]:before{content:"";position:absolute;left:-8px;top:8px;bottom:8px;width:3px;background:var(--avola-teal);border-radius:0 3px 3px 0}.nv-link[data-active=true] .nv-icon{color:var(--avola-teal)}.sidebar[data-collapsed=true] .nv-link{width:40px;height:40px;padding:0;justify-content:center}.sidebar[data-collapsed=true] .nv-link[data-active=true]:before{left:0;top:6px;bottom:6px}.nv-icon{flex-shrink:0;color:var(--ink-3);transition:color var(--dur-fast) var(--ease-standard)}.nv-link:hover .nv-icon{color:var(--fg-primary)}.nv-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:opacity var(--dur-fast) var(--ease-standard)}.sidebar[data-collapsed=true] .nv-label{opacity:0;width:0;margin:0;pointer-events:none}.nv-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 6px;border-radius:var(--r-pill);font-size:10.5px;font-weight:700;color:var(--white);flex-shrink:0}.nv-badge[data-tone=info]{background:var(--avola-teal)}.nv-badge[data-tone=warn]{background:var(--avola-orange)}.nv-dot{position:absolute;top:4px;right:4px;width:7px;height:7px;border-radius:50%;border:2px solid var(--paper);background:var(--avola-orange)}.nv-dot[data-tone=info]{background:var(--avola-teal)}.sidebar__footer{position:relative;border-top:1px solid var(--hairline);padding:10px;flex-shrink:0}.sidebar[data-collapsed=true] .sidebar__footer{padding:10px 0;display:flex;justify-content:center}.sidebar__user{display:flex;align-items:center;gap:10px;width:100%;padding:6px 8px;border:none;border-radius:var(--r-md);background:transparent;color:var(--fg-primary);font:inherit;cursor:pointer;text-align:left;transition:background var(--dur-fast) var(--ease-standard)}.sidebar__user:hover{background:var(--paper-2)}.sidebar__user:focus-visible{outline:none;box-shadow:var(--elev-focus)}.sidebar[data-collapsed=true] .sidebar__user{width:44px;height:44px;padding:0;justify-content:center;border-radius:50%}.sidebar__avatar{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--avola-teal);color:var(--white);font-size:12px;font-weight:700;flex-shrink:0}.sidebar[data-collapsed=true] .sidebar__avatar{width:32px;height:32px}.sidebar__user-text{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.2;transition:opacity var(--dur-fast) var(--ease-standard)}.sidebar[data-collapsed=true] .sidebar__user-text,.sidebar[data-collapsed=true] .sidebar__user-chevron{display:none}.sidebar__user-name{font-size:13px;font-weight:600;color:var(--fg-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar__user-meta{font-size:11px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar__user-chevron{flex-shrink:0;color:var(--ink-3)}.sidebar__popover{position:absolute;bottom:calc(100% + 4px);left:10px;right:10px;background:var(--white);border:1px solid var(--hairline);border-radius:var(--r-md);box-shadow:var(--elev-popover);padding:4px;z-index:200;display:flex;flex-direction:column;gap:2px}.sidebar[data-collapsed=true] .sidebar__popover{left:100%;right:auto;bottom:0;margin-left:8px;width:200px}.sidebar__popover-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:none;border-radius:var(--r-sm);background:transparent;color:var(--fg-primary);font:inherit;font-size:13px;text-align:left;cursor:pointer}.sidebar__popover-item:hover:not(:disabled){background:var(--paper-2)}.sidebar__popover-item:focus-visible{outline:none;box-shadow:var(--elev-focus)}.sidebar__popover-item:disabled{color:var(--ink-4);cursor:not-allowed}.sidebar__popover-item--danger{color:var(--status-danger)}.sidebar__popover-divider{height:1px;background:var(--hairline);margin:4px 0}@media(prefers-reduced-motion:reduce){.sidebar,.sidebar__toggle,.sidebar__icon-button,.sidebar__section-chevron,.nv-link,.nv-icon,.nv-label,.sidebar__user,.sidebar__user-text{transition-duration:.01ms}}.today-screen{background:var(--paper);color:var(--fg-primary);font-family:var(--font-sans)}.today-screen .today-up-next{border:1px solid transparent;border-radius:var(--r-xl);padding:14px 16px;margin-bottom:var(--s-5);display:flex;flex-direction:column;gap:0}.today-screen .today-up-next--hha{background:var(--patient-hha-tint);border-color:var(--patient-hha-accent)}.today-screen .today-up-next--ddd{background:var(--patient-ddd-tint);border-color:var(--patient-ddd-accent)}.today-screen .today-up-next--esa{background:var(--patient-esa-tint);border-color:var(--patient-esa-accent)}.today-screen .today-up-next--school{background:var(--patient-school-tint);border-color:var(--patient-school-accent)}.today-screen .today-up-next--standard{background:var(--patient-standard-tint);border-color:var(--patient-standard-accent)}.today-screen .today-up-next--default,.today-screen .today-up-next--home{background:var(--bg-tint-teal);border-color:var(--avola-teal)}.today-screen .today-up-next__eyebrow{font-size:11px;line-height:1.2;letter-spacing:.08em;text-transform:uppercase;font-weight:var(--fw-bold);color:var(--fg-tertiary)}.today-screen .today-up-next__main{display:block;background:transparent;border:none;padding:0;margin-top:4px;text-align:left;width:100%;cursor:pointer;font-family:inherit;color:inherit}.today-screen .today-up-next__main:disabled{cursor:default}.today-screen .today-up-next__main--link{text-decoration:none}.today-screen .today-up-next__main--link:focus-visible{outline:2px solid var(--accent-primary);outline-offset:3px;border-radius:var(--r-sm)}.today-screen .today-up-next__body{min-width:0}.today-screen .today-up-next__name{display:flex;align-items:baseline;min-width:0;font-size:var(--fs-h3);line-height:1.2;letter-spacing:-.01em;font-weight:var(--fw-bold);color:var(--fg-primary)}.today-screen .today-up-next__name-text{flex-shrink:0;white-space:nowrap}.today-screen .today-up-next__affiliation{min-width:0;font-size:.72em;font-weight:var(--fw-medium, 500);color:var(--fg-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.today-screen .today-up-next__name-sep{color:var(--fg-tertiary, var(--fg-secondary))}.today-screen .today-up-next__meta{display:flex;align-items:center;gap:10px;margin-top:6px;flex-wrap:wrap}.today-screen .today-up-next__pre-notes{margin-top:6px;padding:4px 0 0;color:var(--fg-secondary);font-size:var(--fs-small);line-height:var(--lh-small);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-top:1px solid var(--hairline)}.today-screen .today-up-next__time{font-size:15px;font-weight:var(--fw-semibold);color:var(--fg-primary);font-variant-numeric:tabular-nums}.today-screen .today-up-next__duration{font-size:var(--fs-small);color:var(--fg-tertiary);font-variant-numeric:tabular-nums}.today-screen .today-up-next__address{margin-top:6px;font-size:var(--fs-small);line-height:var(--lh-small);color:var(--fg-tertiary)}.today-screen .today-up-next__address-link{color:var(--avola-teal);text-decoration:none;display:inline-block;padding:2px 0}.today-screen .today-up-next__address-link:hover{color:var(--avola-teal-dark)}.today-screen .today-up-next__phone{font-size:var(--fs-small);line-height:var(--lh-small);display:flex;align-items:center;justify-content:space-between;gap:12px}.today-screen .today-up-next__phone-link{appearance:none;background:none;border:0;padding:4px 0;font:inherit;color:var(--avola-teal);text-decoration:none;cursor:pointer}.today-screen .today-up-next__phone-link:hover{color:var(--avola-teal-dark)}.today-screen .today-up-next__eta-chip{display:inline-flex;align-items:center;gap:6px;padding:2px 8px;border:0;border-radius:999px;background:transparent;font-size:var(--fs-small);line-height:var(--lh-small);color:var(--fg-tertiary);font-variant-numeric:tabular-nums;white-space:nowrap;cursor:pointer;appearance:none;-webkit-appearance:none}.today-screen .today-up-next__eta-chip:disabled{cursor:default}.today-screen .today-up-next__eta-chip:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.today-screen .today-up-next__eta-dot{width:8px;height:8px;border-radius:50%;background:var(--fg-tertiary);flex-shrink:0}.today-screen .today-up-next__eta-chip--loading .today-up-next__eta-dot{background:var(--fg-tertiary);animation:today-up-next-eta-pulse 1.2s ease-in-out infinite}.today-screen .today-up-next__eta-chip--ready .today-up-next__eta-dot{background:var(--status-success)}.today-screen .today-up-next__eta-chip--needs-permission .today-up-next__eta-dot{background:var(--status-warn)}.today-screen .today-up-next__eta-chip--server-error .today-up-next__eta-dot{background:var(--status-danger)}@keyframes today-up-next-eta-pulse{0%,to{opacity:.4}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.today-screen .today-up-next__eta-chip--loading .today-up-next__eta-dot{animation:none;opacity:.7}}.today-screen .today-visits{border:1px solid var(--border-default);border-radius:var(--r-lg);background:var(--bg-surface);overflow:hidden}.today-screen .today-visits__header{padding:12px 16px;border-bottom:1px solid var(--border-default);font-size:15px;font-weight:var(--fw-bold);letter-spacing:-.005em;color:var(--fg-primary)}.today-screen .today-visits__empty{padding:24px 16px;font-size:var(--fs-small);color:var(--fg-tertiary)}.today-screen .today-visits__list{list-style:none;padding:0;margin:0}.today-screen .today-visits__row{border-bottom:1px solid var(--border-default);display:flex;align-items:stretch}@media(max-width:760px){.today-screen .today-visits__row{flex-direction:row;align-items:stretch}}.today-screen .today-visits__divider{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--bg-tint-teal, #f0fafa);border-bottom:1px solid var(--border-default)}.today-screen .today-visits__divider-line{flex:1;height:1px;background:var(--avola-teal);opacity:.35}.today-screen .today-visits__divider-label{font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:var(--fw-bold);color:var(--avola-teal-dark);font-variant-numeric:tabular-nums;white-space:nowrap}.today-screen .today-visits__row:last-child{border-bottom:0}.today-screen .today-visits__row--accent-amber{box-shadow:inset 3px 0 0 var(--avola-orange)}.today-screen .today-visits__row--accent-gray{box-shadow:inset 3px 0 0 var(--border-strong)}.today-screen .today-visits__row--tint-amber-soft{background:color-mix(in srgb,var(--avola-orange) 6%,var(--white))}.today-screen .today-visits__row--opacity-0_7{opacity:.7}.today-screen .today-visits__row--opacity-0_5{opacity:.5}.today-screen .today-visits__row--strikethrough-name .today-visits__row-name{text-decoration:line-through;text-decoration-thickness:1.5px;text-decoration-color:currentColor}.today-screen .today-visits__row--terminal{opacity:.55}.today-screen .today-visits__row--terminal:focus-within,.today-screen .today-visits__row--terminal:hover{opacity:.85}.today-screen .today-visits__row-status{font-size:12px;font-weight:var(--fw-semibold);color:var(--fg-muted);text-transform:uppercase;letter-spacing:.04em}.today-screen .today-visits__row-main{flex:1;min-width:0;padding:14px 12px 14px 16px;display:flex;align-items:flex-start;gap:16px;text-align:left;outline-offset:-2px}.today-screen .today-visits__row-main--clickable{cursor:pointer}.today-screen .today-visits__row-main--disabled{cursor:default}.today-screen .today-visits__row-main:focus-visible{outline:2px solid var(--avola-teal)}.today-screen .today-visits__row-spacer{width:36px;flex-shrink:0}.today-screen .today-visits__row-time{min-width:60px;padding-top:2px;font-family:var(--font-mono);font-size:14px;font-weight:var(--fw-medium);color:var(--fg-tertiary);flex-shrink:0;white-space:nowrap;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.today-screen .today-visits__row-body{flex:1;min-width:0}.today-screen .today-visits__row-name{font-size:15px;font-weight:var(--fw-semibold);line-height:1.3;letter-spacing:-.005em;color:var(--fg-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.today-screen .today-visits__row-affiliation{font-size:.82em;font-weight:var(--fw-regular, 400);color:var(--fg-secondary)}.today-screen .today-visits__row-name-sep{color:var(--fg-tertiary, var(--fg-secondary))}.today-screen .today-visits__row-details{display:flex;flex-wrap:wrap;align-items:center;column-gap:8px;row-gap:2px;margin-top:3px;font-size:13px;line-height:1.4;color:var(--fg-tertiary)}.today-screen .today-visits__row-details>*:not(:first-child):before{content:"·";margin-right:8px;color:var(--fg-muted)}.today-screen .today-visits__row-phone{background:none;border:0;padding:0;margin:0;font:inherit;cursor:pointer;color:var(--fg-tertiary);text-decoration:underline;text-decoration-style:dotted;font-variant-numeric:tabular-nums}.today-screen .today-visits__row-phone:hover{color:var(--fg-secondary)}.today-screen .today-visits__row-zip{background:none;border:0;padding:0;margin:0;font:inherit;cursor:pointer;color:var(--fg-tertiary);text-decoration:underline;text-decoration-style:dotted;font-variant-numeric:tabular-nums}.today-screen .today-visits__row-zip:hover,.today-screen .today-visits__row-zip[aria-expanded=true]{color:var(--fg-secondary)}.today-screen .today-visits__row-address{margin-top:4px;font-size:13px;line-height:1.3;color:var(--fg-tertiary)}.today-screen .today-visits__row-address-link{color:var(--avola-teal);text-decoration:underline}.today-screen .today-visits__row-address-link:hover{color:var(--avola-teal-dark, var(--avola-teal))}.today-screen .today-visits__row-typeline{display:flex;flex-wrap:wrap;align-items:center;column-gap:8px;row-gap:2px;margin-top:4px;font-size:13px;line-height:1.4;color:var(--fg-tertiary)}.today-screen .today-visits__row-typeline>*:not(:first-child):before{content:"·";margin-right:8px;color:var(--fg-muted)}.portal-modal-card.contact-action-sheet .contact-action-sheet__body{display:flex;flex-direction:column;gap:10px;padding:16px}.portal-modal-card.contact-action-sheet .contact-action-sheet__action{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-height:56px;padding:12px 16px;border:1px solid var(--border-default, #d4d4d8);border-radius:10px;background:var(--bg-surface, #fff);cursor:pointer;font:inherit;color:inherit;text-align:left;transition:background .12s ease,border-color .12s ease}.portal-modal-card.contact-action-sheet .contact-action-sheet__action:hover,.portal-modal-card.contact-action-sheet .contact-action-sheet__action:focus-visible{background:var(--bg-tint-teal, #ecfdf5);border-color:var(--avola-teal, #0f766e);outline:none}.portal-modal-card.contact-action-sheet .contact-action-sheet__action-label{font-weight:600;font-size:16px}.portal-modal-card.contact-action-sheet .contact-action-sheet__action-number{font-size:14px;color:var(--fg-secondary, #475569);font-variant-numeric:tabular-nums}.portal-modal-card.session-action-sheet .session-action-sheet__body{display:flex;flex-direction:column;gap:8px;padding:16px}.portal-modal-card.session-action-sheet .session-action-sheet__action{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-height:56px;padding:12px 16px;border:1px solid var(--border-default, #d4d4d8);border-radius:10px;background:var(--bg-surface, #fff);cursor:pointer;font:inherit;color:inherit;text-align:left;transition:background .12s ease,border-color .12s ease}.portal-modal-card.session-action-sheet .session-action-sheet__action:hover,.portal-modal-card.session-action-sheet .session-action-sheet__action:focus-visible{background:var(--bg-tint-teal, #ecfdf5);border-color:var(--avola-teal, #0f766e);outline:none}.portal-modal-card.session-action-sheet .session-action-sheet__action--destructive:hover,.portal-modal-card.session-action-sheet .session-action-sheet__action--destructive:focus-visible{background:#fef2f2;border-color:#dc2626}.portal-modal-card.session-action-sheet .session-action-sheet__action-label{font-weight:600;font-size:16px}.portal-modal-card.session-action-sheet .session-action-sheet__action-desc{font-size:13px;color:var(--fg-secondary, #475569);line-height:1.35}.portal-modal-card.session-action-sheet .session-action-sheet__divider{height:1px;background:var(--border-subtle, #e5e7eb);margin:4px}.missed-visit-dialog__legend{font-weight:600;margin-bottom:8px;font-size:14px}.missed-visit-dialog__reasons{border:0;padding:0;margin:0 0 16px;display:flex;flex-direction:column;gap:6px}.missed-visit-dialog__reason-row{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:6px;cursor:pointer;font-size:14px}.missed-visit-dialog__reason-row:hover{background:var(--bg-tint-teal, #ecfdf5)}.missed-visit-dialog__note-label{display:flex;flex-direction:column;gap:6px;margin-bottom:12px;font-size:14px;font-weight:600}.missed-visit-dialog__required{color:#dc2626;font-weight:500;font-size:13px}.missed-visit-dialog__note{font:inherit;resize:vertical;min-height:72px}.external-completion-dialog__field{display:flex;flex-direction:column;gap:6px;margin-top:12px;font-size:14px;font-weight:600}.reschedule-dialog__mode-tabs{display:flex;gap:8px;margin-bottom:14px}.reschedule-dialog__mode-tab{flex:1;padding:10px 12px;border:1px solid var(--border-default, #d4d4d8);border-radius:8px;background:var(--bg-surface, #fff);cursor:pointer;font:inherit;text-align:center;font-weight:600}.reschedule-dialog__mode-tab--active{background:var(--bg-tint-teal, #ecfdf5);border-color:var(--avola-teal, #0f766e);color:var(--avola-teal, #0f766e)}.reschedule-dialog__field-label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600;margin-bottom:12px}.today-screen .today-visits__row-actions{align-self:center;margin-right:12px;display:flex;flex-direction:column;gap:6px;flex-shrink:0}@media(max-width:760px){.today-screen .today-visits__row-actions{align-self:center;flex-direction:column;justify-content:center;margin-right:12px;gap:6px}}.today-screen .today-btn{font-family:inherit;font-size:13px;font-weight:var(--fw-semibold);border-radius:var(--r-md);padding:8px 14px;cursor:pointer;white-space:nowrap;border:1px solid transparent;transition:background var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard)}.today-screen .today-btn:focus-visible{outline:none;box-shadow:var(--elev-focus)}.today-screen .today-btn--secondary{background:var(--bg-surface);color:var(--avola-teal);border-color:var(--avola-teal)}.today-screen .today-btn--secondary:hover{background:var(--avola-teal-light)}.today-screen .today-stat-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-3);margin-top:var(--s-5)}.today-screen .today-stat-card{padding:14px 16px;border:1px solid var(--border-default);border-radius:var(--r-lg);background:var(--bg-surface)}.today-screen .today-stat-card__eyebrow{font-size:12px;line-height:1.2;letter-spacing:.08em;text-transform:uppercase;font-weight:var(--fw-bold);color:var(--fg-tertiary);margin-bottom:var(--s-2)}.today-screen .today-stat-card__row{display:flex;justify-content:space-between;gap:var(--s-3)}.today-screen .today-stat-card__stat{display:flex;flex-direction:column;align-items:center;flex:1}.today-screen .today-stat-card__stat-value{font-size:22px;font-weight:var(--fw-bold);color:var(--fg-primary);font-variant-numeric:tabular-nums}.today-screen .today-stat-card__stat-label{margin-top:2px;font-size:12px;color:var(--fg-tertiary)}@media(max-width:760px){.today-screen .today-visits__header{padding:12px 14px;font-size:15px}.today-screen .today-visits__row-main{padding:12px 12px 10px 14px;gap:12px}.today-screen .today-visits__row-time{min-width:52px;font-size:14px}.today-screen .today-visits__row-name{font-size:16px}.today-screen .today-visits__row-details{font-size:13px}.today-screen .today-btn{padding:10px 12px}.today-screen .today-stat-card-grid{grid-template-columns:1fr}}@keyframes today-skeleton-pulse{0%,to{opacity:.55}50%{opacity:.85}}.today-screen .today-skeleton__line,.today-screen .today-skeleton__avatar{background:var(--hairline-2, #e5e1d7);border-radius:6px;animation:today-skeleton-pulse 1.6s ease-in-out infinite}.today-screen .today-skeleton__row{display:flex;gap:12px;align-items:flex-start}.today-screen .today-skeleton__stack{display:flex;flex-direction:column;gap:6px;flex:1 1 auto;min-width:0}.today-screen .today-skeleton__stack--flex{width:100%}.today-screen .today-skeleton__avatar{width:48px;height:48px;border-radius:50%;flex-shrink:0}.today-screen .today-skeleton__line--eyebrow{width:80px;height:10px;margin-bottom:12px}.today-screen .today-skeleton__line--title{width:60%;height:18px}.today-screen .today-skeleton__line--sub{width:40%;height:12px}.today-screen .today-skeleton__line--meta{width:50%;height:12px}.today-screen .today-skeleton__visit-row{display:flex;gap:12px;align-items:center;width:100%}.today-screen .today-skeleton__line--time{width:48px;height:14px;flex-shrink:0}.today-screen .today-skeleton__line--name{width:55%;height:14px}.today-screen .today-skeleton__line--detail{width:35%;height:11px}@media(prefers-reduced-motion:reduce){.portal-modal-card.contact-action-sheet .contact-action-sheet__action,.portal-modal-card.session-action-sheet .session-action-sheet__action,.today-screen .today-btn{transition-duration:.01ms}.today-screen .today-skeleton__line,.today-screen .today-skeleton__avatar{animation:none;opacity:.75}}
