.toast-region{right:var(--space-lg);bottom:var(--space-lg);z-index:1100;width:min(380px, calc(100vw - var(--space-lg) * 2));pointer-events:none;flex-direction:column;display:flex;position:fixed}.toast-stack{flex-direction:column;display:flex}.toast{pointer-events:auto;margin-top:var(--space-xs);align-items:flex-start;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);box-shadow:var(--shadow-lift);animation:toast-in var(--dur-fast) var(--ease-out);font-size:15px;line-height:140%;display:flex}.toast--success{background:var(--teal-tint);color:var(--teal-ink)}.toast--error{background:var(--rose-tint);color:var(--rose-ink)}.toast-message{overflow-wrap:anywhere;flex:1;min-width:0;margin:0}.toast-dismiss{width:24px;height:24px;color:inherit;opacity:.7;cursor:pointer;border-radius:var(--radius-sm);transition:opacity var(--dur-fast) var(--ease-out);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.toast-dismiss:hover{opacity:1}.toast-dismiss:focus-visible{outline-offset:1px;opacity:1;outline:2px solid}@keyframes toast-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (width<=640px){.toast-region{right:var(--space-sm);left:var(--space-sm);bottom:var(--space-sm);width:auto}}.nav{z-index:100;justify-content:space-between;align-items:center;gap:var(--space-lg);padding:var(--space-md) var(--space-xl);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--border-soft);background:#ffffffe6;display:flex;position:sticky;top:0}@media (width<=720px){.nav{padding:var(--space-sm) var(--space-md)}}.nav-brand{align-items:center;gap:var(--space-md);min-width:0;display:flex}.nav-logo{align-items:center;text-decoration:none;display:flex}.nav-logo img{width:auto;height:28px;display:block}.nav-tag{padding:var(--space-2xs) var(--space-sm);background:var(--plum-tint);color:var(--plum-ink);letter-spacing:.3px;font-size:12px;line-height:1.4;position:relative}.nav-tag:before{content:"";left:calc(var(--space-xs) * -1);background:var(--border);width:1px;height:18px;position:absolute;top:50%;transform:translateY(-50%)}@media (width<=480px){.nav-tag{display:none}}.nav-actions{align-items:center;gap:var(--space-sm);display:flex}.nav-actions .btn{padding:var(--space-xs) var(--space-lg);font-size:15px}.footer{background:var(--plum);color:#ffffffb8;padding:var(--space-xl) var(--space-xl) var(--space-lg);margin-top:auto}.footer-inner{gap:var(--space-lg);flex-direction:column;max-width:1080px;margin:0 auto;display:flex}.footer-logo{aspect-ratio:1892/425;width:140px;-webkit-mask-image:var(--footer-logo-src);-webkit-mask-image:var(--footer-logo-src);mask-image:var(--footer-logo-src);background-color:#fff;-webkit-mask-position:0;mask-position:0;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.footer-bottom{align-items:center;gap:var(--space-xs);padding-top:var(--space-lg);color:#ffffff80;border-top:1px solid #ffffff24;font-size:13px;display:flex}.footer-spark{color:var(--yellow);flex:none}.auth-page{justify-content:center;align-items:center;gap:var(--space-xl);padding:var(--space-2xl) var(--space-lg);background:radial-gradient(60% 55% at 8% 0%, color-mix(in srgb, var(--teal-tint) 70%, transparent), transparent 70%), radial-gradient(55% 50% at 95% 100%, color-mix(in srgb, var(--yellow-tint) 65%, transparent), transparent 70%), var(--bg-subtle);flex-direction:column;flex:1;display:flex}.auth-brand{text-align:center;align-items:center;gap:var(--space-xs);flex-direction:column;max-width:34ch;display:flex}.auth-brand-chip{border-radius:var(--radius-pill);background:var(--yellow-tint);width:44px;height:44px;color:var(--plum);box-shadow:var(--shadow-soft);margin-bottom:var(--space-2xs);justify-content:center;align-items:center;display:inline-flex}.auth-brand h1{letter-spacing:-.4px;margin:0;font-size:26px;line-height:1.2}.auth-brand p{color:var(--text-muted);font-size:15px}.empty-state{text-align:center;align-items:center;gap:var(--space-xs);padding:var(--space-xl) var(--space-lg);flex-direction:column;display:flex}.empty-state-chip{width:48px;height:48px;margin-bottom:var(--space-2xs);border-radius:var(--radius-pill);background:var(--yellow-tint);color:var(--plum);justify-content:center;align-items:center;display:flex}.empty-state-chip svg{width:22px;height:22px}.empty-state-title{color:var(--text-h);font-size:16px;font-weight:600}.empty-state-hint{max-width:42ch;color:var(--text-muted);font-size:14px;line-height:150%}.empty-state-action{margin-top:var(--space-xs)}.notfound-page{padding:var(--space-2xl) var(--space-lg);background:linear-gradient(180deg, var(--bg-subtle), var(--bg) 70%);flex:1;justify-content:center;align-items:center;display:flex}.portal-rail{box-sizing:border-box;gap:var(--space-lg);height:100svh;padding:var(--space-lg) var(--space-md);border-right:1px solid var(--border-soft);background:var(--bg);flex-direction:column;display:flex;position:sticky;top:0}.portal-rail-brand{gap:var(--space-xs);padding:0 var(--space-2xs);flex-direction:column;min-width:0;display:flex}.portal-rail-logo{align-items:center;text-decoration:none;display:flex}.portal-rail-logo img{width:auto;height:26px;display:block}.portal-rail-mark{color:var(--plum);justify-content:center;align-items:center;display:none}.portal-rail-tag{padding:2px var(--space-xs);border-radius:var(--radius-pill);background:var(--plum-tint);color:var(--plum-ink);letter-spacing:.3px;white-space:nowrap;align-self:flex-start;font-size:11px;font-weight:600;line-height:1.5}.portal-rail-nav{min-width:0}.portal-rail-list{gap:var(--space-2xs);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.portal-rail-link{align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-md);color:var(--text);white-space:nowrap;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);font-size:15px;font-weight:500;text-decoration:none;display:flex}@media (hover:hover){.portal-rail-link:hover{background:var(--plum-tint);color:var(--plum-ink)}}.portal-rail-link.is-active{background:var(--plum-tint);color:var(--plum-ink);font-weight:600}.portal-rail-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.portal-rail-icon{width:20px;height:20px;color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;display:flex}.portal-rail-link.is-active .portal-rail-icon{color:inherit}@media (hover:hover){.portal-rail-link:hover .portal-rail-icon{color:inherit}}.portal-rail-icon svg{width:20px;height:20px}.portal-rail-label{text-overflow:ellipsis;min-width:0;overflow:hidden}.portal-rail-badge{box-sizing:border-box;border-radius:var(--radius-pill);background:var(--plum);color:#fff;text-align:center;font-variant-numeric:tabular-nums;flex-shrink:0;min-width:18px;margin-left:auto;padding:0 6px;font-size:11px;font-weight:600;line-height:17px}.portal-rail-account{padding-top:var(--space-md);border-top:1px solid var(--border-soft);min-width:0;margin-top:auto}.portal-rail-account .cl-userButtonTrigger{justify-content:flex-start;gap:var(--space-sm);width:100%;padding:var(--space-xs);border-radius:var(--radius-md)}@media (hover:hover){.portal-rail-account .cl-userButtonTrigger:hover{background:var(--plum-tint)}}.portal-rail-account .cl-userButtonOuterIdentifier{color:var(--text);text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}@media (width>=901px) and (width<=1024px){.portal-rail{padding:var(--space-lg) var(--space-sm);align-items:center}.portal-rail-brand{align-items:center;padding:0}.portal-rail-wordmark,.portal-rail-tag{display:none}.portal-rail-mark{display:flex}.portal-rail-link{padding:var(--space-sm);justify-content:center}.portal-rail-account .cl-userButtonTrigger{justify-content:center}.portal-rail-account .cl-userButtonOuterIdentifier{display:none}}@media (width<=900px){.portal-rail{align-items:center;gap:var(--space-md);height:auto;padding:var(--space-sm) var(--space-md);border-right:none;border-bottom:1px solid var(--border-soft);flex-direction:row;position:static}.portal-rail-tag{display:none}.portal-rail-nav{flex:1;min-width:0;overflow-x:auto}.portal-rail-list{gap:var(--space-xs);flex-direction:row}.portal-rail-link{padding:var(--space-xs) var(--space-md)}@media (pointer:coarse){.portal-rail-link{min-height:44px}}.portal-rail-badge{margin-left:var(--space-2xs)}.portal-rail-account{border-top:none;flex-shrink:0;margin-top:0;padding-top:0}.portal-rail-account .cl-userButtonOuterIdentifier{display:none}}@media (width<=520px){.portal-rail-link{padding:var(--space-xs)}}@media (width>=901px) and (width<=1024px),(width<=520px){.portal-rail-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.portal-rail-link{position:relative}.portal-rail-badge{width:8px;min-width:0;height:8px;margin:0;padding:0;font-size:0;line-height:0;position:absolute;top:2px;right:2px;overflow:hidden}}.portal{background:var(--bg-subtle);flex:1;grid-template-columns:232px minmax(0,1fr);align-items:start;min-height:100svh;display:grid}.portal-content{box-sizing:border-box;width:100%;max-width:1080px;padding:var(--space-xl) 40px 72px;gap:var(--space-lg);flex-direction:column;min-width:0;margin-inline:auto;display:flex}@media (width>=901px) and (width<=1024px){.portal{grid-template-columns:72px minmax(0,1fr)}}@media (width<=900px){.portal{grid-template-columns:minmax(0,1fr)}}.dashboard-header{gap:var(--space-2xs);flex-direction:column;display:flex}.dashboard-greeting{align-items:center;gap:var(--space-sm);display:flex}.dashboard-spark{border-radius:var(--radius-pill);background:var(--yellow-tint);width:36px;height:36px;color:var(--plum);flex-shrink:0;justify-content:center;align-items:center;display:flex}.dashboard-header h1{letter-spacing:-.8px;margin:0;font-size:36px;line-height:115%}@media (width<=1024px){.dashboard-header h1{font-size:28px}}.dashboard-subtitle{color:var(--text-muted);font-size:15px}.stat-row{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.stat-tile{align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);display:flex}.stat-chip{border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.stat-chip svg{width:20px;height:20px}.stat-tile--plum .stat-chip{background:var(--plum-tint);color:var(--plum-ink)}.stat-tile--teal .stat-chip{background:var(--teal-tint);color:var(--teal-ink)}.stat-tile--yellow .stat-chip{background:var(--yellow-tint);color:var(--yellow-ink)}.stat-text{flex-direction:column;gap:2px;min-width:0;display:flex}.stat-value{color:var(--text-h);font-variant-numeric:tabular-nums;font-size:28px;font-weight:600;line-height:1.1}.stat-value .stat-value-skeleton{vertical-align:middle;border-radius:var(--radius-sm);width:40px;height:28px;display:inline-block}.stat-label{color:var(--text-muted);font-size:14px}.card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);flex-direction:column;min-width:0;display:flex;overflow:hidden}.card-header{justify-content:space-between;align-items:baseline;gap:var(--space-md);padding:var(--space-lg) var(--space-lg) var(--space-md);display:flex}.card-header h2{letter-spacing:-.3px;margin:0;font-size:19px;font-weight:600;line-height:130%}.card-count{color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:14px}.card-count-group{align-items:baseline;gap:var(--space-xs);min-width:0;display:inline-flex}.card-count-note{color:var(--text-muted);white-space:nowrap;font-size:13px}.portal-tabs{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.portal-tab{align-items:baseline;gap:var(--space-xs);padding:var(--space-xs) var(--space-md);border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--bg);color:var(--text);white-space:nowrap;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);font-size:15px;font-weight:500;text-decoration:none;display:inline-flex}@media (hover:hover){.portal-tab:hover{border-color:var(--teal);color:var(--teal-ink)}}.portal-tab.is-active{background:var(--teal-tint);border-color:var(--teal);color:var(--teal-ink);font-weight:600}.portal-tab:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.portal-tab-count{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:14px}.portal-tab.is-active .portal-tab-count{color:inherit}.portal-tab-note{color:var(--text-muted);font-size:13px}.section-error{align-items:center;gap:var(--space-sm);padding:var(--space-xl) var(--space-lg);text-align:center;color:var(--rose-ink);flex-direction:column;font-size:15px;display:flex}@media (width<=1024px){.portal-content{padding:var(--space-lg) var(--space-xl) 64px}}@media (width<=720px){.portal-content{padding:var(--gutter-narrow) var(--gutter-narrow) 56px;gap:var(--gutter-narrow)}.card-header{padding:var(--gutter-narrow) var(--gutter-narrow) var(--space-md)}}.modal-backdrop{z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal-panel{background:var(--bg);box-shadow:var(--shadow);border-radius:12px;flex-direction:column;width:100%;max-width:600px;max-height:80svh;display:flex;overflow:hidden}.modal-panel:focus{outline:none}.modal-panel--wide{max-width:880px;max-height:86svh}.modal-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:24px 28px;display:flex}.modal-title{color:var(--text-h);margin:0;font-size:24px;font-weight:600}.modal-close{width:32px;height:32px;color:var(--sage);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:0;font-size:20px;transition:background .15s,color .15s;display:flex}.modal-close:hover{background:var(--bg-subtle);color:var(--text)}.modal-close:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.modal-body{color:var(--text);flex:1;padding:24px 28px;font-size:15px;line-height:1.6;overflow-y:auto}.modal-body--flush{min-height:0;padding:0;display:flex;overflow:hidden}.modal-body h3{color:var(--text-h);margin-top:20px;margin-bottom:8px;font-size:18px}.modal-body p{margin-bottom:12px}.modal-body ul,.modal-body ol{margin:12px 0;padding-left:20px}.modal-body li{margin-bottom:8px}@media (width<=640px){.modal-backdrop{padding:12px}.modal-panel{max-height:90svh}.modal-header{padding:16px 20px}.modal-title{font-size:20px}.modal-body{padding:16px 20px;font-size:14px}}.patient-form{gap:var(--space-md);flex-direction:column;display:flex}.patient-form-grid{gap:var(--space-md);grid-template-columns:1fr 1fr;display:grid}@media (width<=520px){.patient-form-grid{grid-template-columns:1fr}}.patient-field{flex-direction:column;gap:6px;min-width:0;display:flex}.patient-field>span{color:var(--text-h);font-size:13px;font-weight:600}.patient-field-error{color:var(--rose-ink);font-size:12px;line-height:145%}.patient-form-links{padding:var(--space-md);border:1px solid var(--border-soft);border-radius:var(--radius-md);gap:var(--space-sm);flex-direction:column;margin:0;display:flex}.patient-form-links legend{padding:0 var(--space-2xs);color:var(--text-muted);font-size:13px;font-weight:600}.patient-form-actions{justify-content:flex-end;gap:var(--space-xs);bottom:calc(var(--space-lg) * -1);margin:0 -28px calc(var(--space-lg) * -1);padding:var(--space-sm) 28px var(--space-lg);background:var(--bg);border-top:1px solid var(--border-soft);display:flex;position:sticky}@media (width<=640px){.patient-form-actions{bottom:calc(var(--space-md) * -1);margin:0 -20px calc(var(--space-md) * -1);padding:var(--space-sm) 20px var(--space-md)}}.patient-form-confirm{justify-content:space-between;align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);background:var(--rose-tint);flex-wrap:wrap;display:flex}.patient-form-confirm-text{min-width:0;color:var(--rose-ink);flex:1;margin:0;font-size:13px;line-height:145%}.patient-form-confirm-actions{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.patient-created{gap:var(--space-md);flex-direction:column;display:flex}.patient-created-lede{color:var(--text);margin:0;font-size:15px;line-height:150%}.patient-created-warning{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);background:var(--rose-tint);color:var(--rose-ink);margin:0;font-size:13px;line-height:145%}.avatar{border-radius:var(--radius-pill);letter-spacing:.3px;-webkit-user-select:none;user-select:none;flex-shrink:0;justify-content:center;align-items:center;font-weight:600;line-height:1;display:inline-flex}.avatar--sm{width:36px;height:36px;font-size:14px}.avatar--lg{width:52px;height:52px;font-size:19px}.avatar--plum{background:var(--plum-tint);color:var(--plum-ink)}.avatar--teal{background:var(--teal-tint);color:var(--teal-ink)}.avatar--sage{background:var(--sage-tint);color:var(--sage-ink)}.avatar--rose{background:var(--rose-tint);color:var(--rose-ink)}.stage-progress--full{gap:var(--space-xs);flex-direction:column;display:flex}.stage-progress-track{padding:var(--space-2xs);align-items:center;margin:0;list-style:none;display:flex}.stage-progress-step{align-items:center;display:flex}.stage-progress-step:not(:first-child){flex:1}.stage-progress-link{height:2px;min-width:var(--space-xs);background:var(--border);border-radius:var(--radius-pill);flex:1}.stage-progress-link.is-done{background:var(--teal)}.stage-progress-dot{border-radius:var(--radius-pill);background:var(--bg);border:2px solid var(--border);box-sizing:border-box;flex-shrink:0;width:10px;height:10px}.stage-progress-dot.is-done{background:var(--teal);border-color:var(--teal)}.stage-progress-dot.is-current{background:var(--teal);border-color:var(--teal);width:14px;height:14px;box-shadow:0 0 0 3px var(--yellow)}.stage-progress-caption{color:var(--text-muted);font-size:13px;line-height:140%}.stage-progress--mini{flex-shrink:0;align-items:center;gap:2px;width:72px;display:flex}.stage-progress-seg{border-radius:var(--radius-pill);background:var(--border);flex:1;height:4px}.stage-progress-seg.is-done,.stage-progress-seg.is-current{background:var(--teal)}.stage-badge{padding:3px var(--space-xs);letter-spacing:.1px;align-items:center;font-size:12px;line-height:150%;display:inline-flex}.stage-badge--plum{background:var(--plum-tint);color:var(--plum-ink)}.stage-badge--teal{background:var(--teal-tint);color:var(--teal-ink)}.stage-badge--sage{background:var(--sage-tint);color:var(--sage-ink)}.directory-controls{align-items:center;gap:var(--space-sm);padding:0 var(--space-lg) var(--space-md);border-bottom:1px solid var(--border-soft);flex-wrap:wrap;display:flex}.search-field{flex:240px;min-width:0}.sort-field{align-items:center;gap:var(--space-2xs);flex-shrink:0;display:inline-flex}.sort-field-label{color:var(--text-muted);white-space:nowrap;font-size:13px;font-weight:600}.directory-add{flex-shrink:0;align-items:center;gap:6px;display:inline-flex}.search-field input,.sort-field select{padding:11px var(--space-md);border-radius:var(--radius-pill)}.sort-field select{cursor:pointer;width:auto}.patient-list{margin:0;padding:0;list-style:none}.patient-row+.patient-row{border-top:1px solid var(--border-soft)}.patient-row-header{align-items:center;gap:var(--space-md);width:100%;padding:var(--space-md) var(--space-lg);text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease-out);background:0 0;border:0;grid-template-columns:auto minmax(0,1fr) auto auto;text-decoration:none;display:grid}@media (hover:hover){.patient-row-header:hover{background:var(--bg-subtle)}}.patient-row-header:focus-visible{outline:2px solid var(--teal);outline-offset:-3px;border-radius:0}.patient-identity{flex-direction:column;gap:2px;min-width:0;display:flex}.patient-name{color:var(--text-h);letter-spacing:-.2px;text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:600;overflow:hidden}.patient-email{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.patient-stage{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:6px;display:flex}.chevron{border-right:2px solid var(--text-muted);border-bottom:2px solid var(--text-muted);width:9px;height:9px;transition:transform var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);flex-shrink:0;transform:rotate(-45deg)}@media (hover:hover){.patient-row-header:hover .chevron{border-color:var(--plum);transform:rotate(-45deg)translate(2px,2px)}}.skeleton-row{align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.skeleton-stage{flex-shrink:0;width:72px;height:10px}@media (width<=640px){.patient-stage .stage-progress--mini{display:none}}@media (width<=720px){.directory-controls{padding:0 20px var(--space-md)}.patient-row-header,.skeleton-row{padding-left:20px;padding-right:20px}}.links-list{gap:var(--space-xs);flex-direction:column;margin:0;display:flex}.links-row{gap:var(--space-sm);grid-template-columns:140px 1fr;align-items:baseline;display:grid}.links-row dt{color:var(--text-muted);font-size:14px;font-weight:600}.links-row dd{overflow-wrap:anywhere;min-width:0;margin:0;font-size:14px}.links-row dd a{text-overflow:ellipsis;white-space:nowrap;max-width:100%;color:var(--teal-ink);display:block;overflow:hidden}.links-empty{color:var(--text-muted)}@media (width<=640px){.links-row{gap:var(--space-2xs);grid-template-columns:1fr}}.links-edit{gap:var(--space-sm);flex-direction:column;display:flex}.links-edit-field{flex-direction:column;gap:6px;min-width:0;display:flex}.links-edit-field>span{color:var(--text-h);font-size:13px;font-weight:600}.links-edit-field input{padding:9px var(--space-md);font-size:14px}.links-edit-error{color:var(--rose-ink);font-size:12px;line-height:145%}.assessment-links-error{align-items:flex-start;gap:var(--space-xs);flex-direction:column;display:flex}.assessment-links-skeleton{gap:var(--space-xs);flex-direction:column;display:flex}.assessment-links-skeleton .skeleton:first-child{width:70%}.assessment-links-skeleton .skeleton:last-child{width:50%}.doc-preview-body{gap:var(--space-md);flex-direction:column;min-height:0;display:flex;overflow:hidden}.doc-preview-frame{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-subtle);flex:1;width:100%;min-height:240px}.doc-preview-loading{flex:1;min-height:240px;display:flex}.doc-preview-loading-frame{border-radius:var(--radius-md);flex:1;min-height:240px}.doc-preview-error{align-items:center;gap:var(--space-sm);padding:var(--space-md);border:1px solid var(--rose);border-radius:var(--radius-md);background:var(--rose-tint);flex-wrap:wrap;display:flex}.doc-preview-error-icon{color:var(--rose-ink);flex-shrink:0;display:flex}.doc-preview-error-text{min-width:0;color:var(--rose-ink);flex:1;margin:0;font-size:14px;line-height:150%}.doc-preview-fallback{align-items:flex-start;gap:var(--space-sm);padding:var(--space-md);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-subtle);flex-direction:column;display:flex}.doc-preview-fallback-text{color:var(--text);margin:0;font-size:14px;line-height:150%}.doc-preview-actions{justify-content:flex-end;align-items:center;gap:var(--space-xs);flex-wrap:wrap;flex-shrink:0;display:flex}.docs-body{gap:var(--space-md);flex-direction:column;display:flex}.docs-error{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.docs-skeleton{gap:var(--space-xs);padding:var(--space-2xs) 0;flex-direction:column;display:flex}.docs-tabs{gap:var(--space-2xs);overscroll-behavior-x:contain;scrollbar-width:none;padding:var(--space-2xs);border-radius:var(--radius-pill);background:var(--bg-subtle);flex-wrap:nowrap;display:flex;overflow-x:auto}.docs-tabs::-webkit-scrollbar{display:none}.docs-tab{align-items:center;gap:var(--space-2xs);padding:6px var(--space-sm);border-radius:var(--radius-pill);font:inherit;color:var(--text-muted);white-space:nowrap;cursor:pointer;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background:0 0;border:0;flex-shrink:0;font-size:13px;font-weight:600;line-height:150%;display:inline-flex}@media (hover:hover){.docs-tab:hover{color:var(--text);background:var(--bg)}}.docs-tab[aria-selected=true]{background:var(--bg);color:var(--plum);box-shadow:var(--shadow-soft)}.docs-tab:focus-visible{outline:2px solid var(--teal);outline-offset:2px}@media (pointer:coarse){.docs-tab{min-height:44px}}.docs-tab-count{border-radius:var(--radius-pill);background:var(--border-soft);color:var(--text-muted);font-variant-numeric:tabular-nums;padding:0 6px;font-size:11px;font-weight:600}.docs-tab[aria-selected=true] .docs-tab-count{background:var(--plum-tint);color:var(--plum-ink)}.docs-tab-dot{border-radius:var(--radius-pill);background:var(--teal);width:6px;height:6px}.docs-panel{gap:var(--space-sm);flex-direction:column;display:flex}.docs-panel-note{color:var(--text-muted);margin:0;font-size:13px;line-height:150%}.docs-groups{gap:var(--space-md);flex-direction:column;display:flex}.docs-group{gap:var(--space-xs);flex-direction:column;display:flex}.docs-group-header{align-items:baseline;gap:var(--space-xs);display:flex}.docs-group-label{color:var(--text);font-size:13px;font-weight:600}.docs-empty{color:var(--text-muted);margin:0;font-size:13px}.docs-visible-badge{padding:3px var(--space-xs);border-radius:var(--radius-pill);background:var(--plum-tint);color:var(--plum-ink);white-space:nowrap;flex-shrink:0;font-size:12px;font-weight:600;line-height:150%}.upload-list{gap:var(--space-xs);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.upload-row{gap:var(--space-xs);padding:var(--space-sm);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-subtle);transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);flex-direction:column;display:flex}@media (hover:hover){.upload-row:hover{border-color:var(--teal);box-shadow:var(--shadow-soft)}}.upload-row.is-confirming{border-color:var(--rose)}.upload-row-main{align-items:center;gap:var(--space-sm);min-width:0;display:flex}.upload-chip{border-radius:var(--radius-sm);background:var(--teal-tint);width:32px;height:32px;color:var(--teal-ink);flex-shrink:0;justify-content:center;align-items:center;display:flex}.upload-row-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.upload-filename{font:inherit;color:var(--teal-ink);text-align:left;cursor:pointer;overflow-wrap:anywhere;transition:color var(--dur-fast) var(--ease-out);background:0 0;border:0;padding:0;font-size:15px;font-weight:600;line-height:140%}@media (hover:hover){.upload-filename:hover{text-decoration:underline}}.upload-filename:focus-visible{outline:2px solid var(--teal);outline-offset:2px;border-radius:var(--radius-sm)}.upload-filename:disabled{opacity:.55;cursor:default;text-decoration:none}.upload-meta{color:var(--text-muted);font-size:13px;line-height:145%}.upload-row-actions{align-items:center;gap:var(--space-2xs);flex-shrink:0;margin-left:auto;display:flex}@media (pointer:coarse){.upload-row-actions{gap:var(--space-xs)}}.upload-confirm{justify-content:space-between;align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);background:var(--rose-tint);flex-wrap:wrap;display:flex}.upload-confirm-text{min-width:0;color:var(--rose-ink);overflow-wrap:anywhere;flex:1;margin:0;font-size:13px;line-height:145%}.upload-confirm-actions{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.upload-dropzone{align-items:center;gap:var(--space-2xs);padding:var(--space-md);border:1px dashed var(--border);border-radius:var(--radius-md);background:var(--bg);text-align:center;cursor:pointer;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);flex-direction:column;display:flex}@media (hover:hover){.upload-dropzone:hover{border-color:var(--teal);background:var(--teal-tint)}}.upload-dropzone:focus-within{outline:2px solid var(--teal);outline-offset:2px}.upload-dropzone.is-uploading{cursor:default;opacity:.7}.upload-dropzone.is-drop-active{border-style:solid;border-color:var(--teal);background:var(--teal-tint);box-shadow:var(--shadow-soft)}.upload-dropzone.is-drop-active .upload-dropzone-icon{background:var(--bg)}.upload-dropzone-icon{border-radius:var(--radius-pill);background:var(--teal-tint);width:32px;height:32px;color:var(--teal-ink);justify-content:center;align-items:center;display:flex}@media (hover:hover){.upload-dropzone:hover .upload-dropzone-icon{background:var(--bg)}}.upload-dropzone-text{color:var(--teal-ink);font-size:14px;font-weight:600}.upload-dropzone-hint{color:var(--text-muted);font-size:13px}.upload-input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.upload-dropzone.upload-dropzone--compact{justify-content:flex-start;gap:var(--space-xs);padding:var(--space-2xs) var(--space-sm);text-align:left;flex-direction:row}.upload-dropzone--compact .upload-dropzone-text{font-size:13px}.upload-dropzone--compact .upload-dropzone-hint{font-size:12px}.upload-progress{align-items:center;gap:var(--space-sm);margin-top:var(--space-xs);display:flex}.upload-progress-track{border-radius:var(--radius-pill);background:var(--border-soft);flex:1;min-width:0;height:6px;overflow:hidden}.upload-progress-bar{border-radius:var(--radius-pill);background:var(--teal);height:100%;transition:width var(--dur-fast) var(--ease-out);display:block}.upload-progress-label{text-align:right;min-width:92px;color:var(--text-muted);font-variant-numeric:tabular-nums;flex-shrink:0;margin:0;font-size:13px;line-height:145%}.upload-queue{gap:var(--space-2xs);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.upload-queue-item{padding:var(--space-xs) var(--space-sm);border:1px solid var(--border-soft);border-radius:var(--radius-sm);background:var(--bg-subtle)}.upload-queue-item.is-failed{border-color:var(--rose);background:var(--rose-tint)}.upload-queue-head{align-items:baseline;gap:var(--space-xs);min-width:0;display:flex}.upload-queue-name{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;font-weight:600;overflow:hidden}.upload-queue-size{color:var(--text-muted);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:12px}.upload-queue-note{margin:var(--space-2xs) 0 0;color:var(--text-muted);font-size:12px}.upload-queue-item .upload-progress{margin-top:var(--space-2xs)}.upload-queue-problem{align-items:center;gap:var(--space-xs);margin-top:var(--space-2xs);flex-wrap:wrap;display:flex}.upload-queue-problem-icon{color:var(--rose-ink);flex-shrink:0;display:flex}.upload-queue-problem-text{min-width:0;color:var(--rose-ink);flex:1;margin:0;font-size:12px;line-height:145%}.upload-queue-problem-actions{align-items:center;gap:var(--space-xs);flex-shrink:0;display:flex}.upload-queue-dismiss{font:inherit;color:var(--rose-ink);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;font-weight:600;text-decoration:underline}.upload-queue-dismiss:focus-visible{outline:2px solid var(--teal);outline-offset:2px}@media (pointer:coarse){.upload-queue-dismiss{min-height:44px;padding-inline:var(--space-xs)}}.docs-replace[aria-disabled=true]{cursor:not-allowed;opacity:.55}.docs-replace:focus-within{outline:2px solid var(--teal);outline-offset:2px}@media (width<=480px){.upload-row-main{flex-wrap:wrap}.upload-row-actions{justify-content:flex-end;width:100%}.upload-dropzone--compact .upload-dropzone-hint{display:none}}.patient-page{gap:var(--space-lg);flex-direction:column;align-items:flex-start;display:flex}.patient-back{align-items:center;gap:var(--space-xs);color:var(--text-muted);transition:color var(--dur-fast) var(--ease-out);font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}@media (hover:hover){.patient-back:hover{color:var(--plum)}}.patient-back-arrow{width:7px;height:7px;transition:transform var(--dur-fast) var(--ease-out);border-bottom:2px solid;border-left:2px solid;transform:rotate(45deg)}@media (hover:hover){.patient-back:hover .patient-back-arrow{transform:rotate(45deg)translate(2px,2px)}}.patient-card{--detail-gutter:var(--space-lg);width:100%}.detail-hero{gap:var(--space-sm);padding:var(--detail-gutter) var(--detail-gutter) var(--space-md);background:var(--bg);border-bottom:1px solid var(--border-soft);flex-direction:column;display:flex}.detail-hero-identity{align-items:flex-start;gap:var(--space-sm);min-width:0;display:flex}.detail-hero-text{align-items:flex-start;gap:var(--space-2xs);flex-direction:column;min-width:0;display:flex}.detail-hero-name{letter-spacing:-.4px;color:var(--text-h);overflow-wrap:anywhere;margin:0;font-size:22px;font-weight:600;line-height:125%}.detail-hero-email{color:var(--teal-ink);overflow-wrap:anywhere;font-size:14px;line-height:140%}.detail-section{gap:var(--space-sm);padding:var(--space-md) var(--detail-gutter);border-top:1px solid var(--border-soft);flex-direction:column;display:flex}.detail-band-heading{padding:var(--space-md) var(--detail-gutter) var(--space-2xs);letter-spacing:.8px;text-transform:uppercase;color:var(--text-muted);margin:0;font-size:12px;font-weight:600;line-height:140%}.detail-hero+.detail-section,.detail-band-heading+.detail-section{border-top:0}.detail-section-header{align-items:center;gap:var(--space-xs);display:flex}.detail-section-icon{border-radius:var(--radius-sm);background:var(--plum-tint);width:28px;height:28px;color:var(--plum-ink);flex-shrink:0;justify-content:center;align-items:center;display:flex}.detail-section-title{letter-spacing:-.1px;min-width:0;color:var(--text-h);flex:1;margin:0;font-size:15px;font-weight:600;line-height:140%}.detail-fields{gap:var(--space-xs);flex-direction:column;margin:0;display:flex}.detail-field{gap:var(--space-sm);grid-template-columns:110px 1fr;align-items:baseline;display:grid}.detail-field dt{color:var(--text-muted);font-size:14px;font-weight:600}.detail-field dd{color:var(--text);overflow-wrap:anywhere;min-width:0;margin:0;font-size:15px}.detail-field dd a{color:var(--teal-ink)}.detail-action{gap:var(--space-xs);flex-direction:column;display:flex}.detail-action-row{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.detail-action-row--split{justify-content:space-between}.detail-action-note{color:var(--text-muted);margin:0;font-size:13px;line-height:145%}.detail-action-error{color:var(--rose-ink);margin:0;font-size:13px;line-height:145%}.status-badge{padding:var(--space-2xs) var(--space-sm);font-size:12px}.status-badge.is-approved{background:var(--teal-tint);color:var(--teal-ink)}.status-badge.is-pending{background:var(--sage-tint);color:var(--sage-ink)}.detail-skeleton{gap:var(--space-lg);width:100%}.detail-skeleton-hero{align-items:center;gap:var(--space-sm);padding:var(--detail-gutter) var(--detail-gutter) var(--space-md);border-bottom:1px solid var(--border-soft);display:flex}.detail-skeleton-identity{gap:var(--space-xs);flex-direction:column;display:flex}.detail-skeleton .detail-skeleton-badge{width:96px;height:18px}.detail-skeleton-progress-row{padding:var(--space-md) var(--detail-gutter) 0}.detail-skeleton .detail-skeleton-progress{width:100%;height:10px}.detail-skeleton .detail-skeleton-eyebrow{width:120px;height:10px;margin:var(--space-md) var(--detail-gutter) var(--space-2xs)}.detail-skeleton-section{gap:var(--space-sm);padding:var(--space-md) var(--detail-gutter);border-top:1px solid var(--border-soft);flex-direction:column;display:flex}.detail-skeleton-eyebrow+.detail-skeleton-section{border-top:0}.detail-skeleton-head{align-items:center;gap:var(--space-xs);display:flex}.detail-skeleton .detail-skeleton-chip{border-radius:var(--radius-sm);flex-shrink:0;width:28px;height:28px}.detail-skeleton .detail-skeleton-heading{width:140px;height:14px}.detail-skeleton-body{border-radius:var(--radius-sm);width:100%}.detail-skeleton-danger{width:100%;padding:var(--space-2xs) var(--space-sm)}.detail-skeleton .detail-skeleton-danger-row{width:180px;height:16px}.detail-danger-zone{gap:var(--space-xs);flex-direction:column;width:100%;display:flex}.detail-danger-heading{letter-spacing:0;margin:0;font-size:14px;line-height:140%}.detail-danger-toggle{align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-pill);font:inherit;color:var(--rose-ink);cursor:pointer;text-align:left;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);background:0 0;border:1px solid #0000;font-size:14px;font-weight:600;display:flex}@media (hover:hover){.detail-danger-toggle:hover{background:var(--rose-tint);border-color:var(--rose)}}.detail-danger-glyph{flex-shrink:0;align-items:center;display:flex}.detail-danger-caret{width:6px;height:6px;margin-left:var(--space-2xs);transition:transform var(--dur-fast) var(--ease-out);border-bottom:2px solid;border-right:2px solid;transform:translateY(-2px)rotate(45deg)}.detail-danger-zone.is-open .detail-danger-caret{transform:translateY(1px)rotate(-135deg)}.detail-danger-panel{padding:var(--space-sm) var(--space-md) var(--space-xs);border-left:2px solid var(--rose-tint);margin-left:var(--space-sm)}@media (pointer:coarse){.detail-danger-toggle{min-height:44px}}.detail-danger-lede{margin:0 0 var(--space-sm);overflow-wrap:anywhere;font-size:14px;line-height:150%}.detail-danger-list{margin:0 0 var(--space-sm);gap:var(--space-2xs);color:var(--text-muted);flex-direction:column;padding-left:1.15rem;font-size:14px;line-height:145%;display:flex}.detail-danger-warning{margin:0 0 var(--space-md);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);background:var(--rose-tint);color:var(--rose-ink);font-size:13px;font-weight:600}.detail-danger-actions{justify-content:flex-end;align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.detail-danger-field{gap:var(--space-2xs);margin:0 0 var(--space-md);color:var(--text-muted);flex-direction:column;font-size:13px;display:flex}.detail-danger-field strong{color:var(--text-h)}.detail-danger-field input{box-sizing:border-box;width:100%;font:inherit;padding:9px var(--space-sm);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-subtle);color:var(--text);font-size:15px}.detail-danger-field input:focus-visible{outline:2px solid var(--teal);outline-offset:1px;border-color:var(--teal);background:var(--bg)}.detail-confirm{justify-content:space-between;align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);background:var(--rose-tint);flex-wrap:wrap;display:flex}.detail-confirm-text{min-width:0;color:var(--rose-ink);overflow-wrap:anywhere;flex:1;margin:0;font-size:13px;line-height:145%}.detail-confirm-actions{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}@media (width<=720px){.patient-card{--detail-gutter:20px}}@media (width<=640px){.detail-field{gap:var(--space-2xs);grid-template-columns:1fr}}.meeting-list{margin:0;padding:0;list-style:none}.meeting-entry{gap:var(--space-2xs);flex-direction:column;display:flex}.meeting-entry+.meeting-entry{border-top:1px solid var(--border-soft)}.meeting-entry.has-icon{align-items:center;gap:var(--space-md);border-radius:var(--radius-md);border:1px solid var(--border-soft);margin:var(--space-sm) 20px;padding:var(--space-md) 20px;transition:border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);flex-direction:row}.meeting-entry.has-icon+.meeting-entry.has-icon{border-top:none}.meeting-open{align-items:center;gap:var(--space-md);border-radius:var(--radius-sm);min-width:0;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;margin:0;padding:0;text-decoration:none;display:flex}.meeting-open.is-stacked{align-items:flex-start;gap:var(--space-2xs);width:100%;padding:var(--space-md) var(--space-lg);transition:background var(--dur-fast) var(--ease-out);border-radius:0;flex-direction:column}@media (hover:hover){.meeting-open.is-stacked:hover{background:var(--bg-subtle)}}.meeting-open:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.meeting-open.is-stacked:focus-visible{outline-offset:-3px}@media (hover:hover){.meeting-entry.has-icon:has(.meeting-open:hover){border-color:var(--border);background:var(--bg-subtle)}}.meeting-entry.is-skeleton{gap:var(--space-xs);padding:20px var(--space-lg)}.meeting-top{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.meeting-patient{color:var(--text-h);letter-spacing:-.2px;font-size:16px;font-weight:600}.meeting-icon{border-radius:var(--radius-md);background:var(--teal-tint);width:52px;height:52px;color:var(--teal-ink);flex-shrink:0;justify-content:center;align-items:center;display:flex}.meeting-icon svg{width:26px;height:26px}.meeting-divider{background:var(--teal);opacity:.35;border-radius:var(--radius-pill);flex-shrink:0;align-self:stretch;width:2px}.meeting-content{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.meeting-row{align-items:center;gap:var(--space-xs);display:flex}.meeting-row-icon{width:16px;height:16px;color:var(--text-muted);flex-shrink:0}.meeting-tag{padding:3px var(--space-xs);background:var(--rose-tint);color:var(--rose-ink);font-size:12px;line-height:150%}.meeting-type-tag{background:var(--teal-tint);color:var(--teal-ink)}.meeting-when{color:var(--text);font-size:14px}.meeting-when-muted{color:var(--text-muted)}.meeting-email{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.join-btn{border-radius:var(--radius-pill);background:var(--teal-tint);color:var(--teal-ink);white-space:nowrap;transition:background-color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);flex-shrink:0;align-items:center;gap:6px;padding:10px 18px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}@media (hover:hover){.join-btn:hover{background:color-mix(in srgb, var(--teal-tint) 70%, var(--teal) 30%);box-shadow:var(--shadow-soft);transform:translateY(-1px)}}.join-btn svg{width:16px;height:16px}.meeting-entry.is-core-assessment .meeting-icon,.meeting-entry.is-core-assessment .meeting-type-tag{background:var(--plum-tint);color:var(--plum-ink)}.meeting-entry.is-core-assessment .meeting-divider{background:var(--plum)}.meeting-entry.is-core-assessment .join-btn{background:var(--plum-tint);color:var(--plum-ink)}@media (hover:hover){.meeting-entry.is-core-assessment .join-btn:hover{background:color-mix(in srgb, var(--plum-tint) 70%, var(--plum) 30%)}}.meeting-entry.is-cancelled .meeting-when,.meeting-entry.is-cancelled .meeting-patient{text-decoration:line-through;-webkit-text-decoration-color:color-mix(in srgb, currentColor 40%, transparent);text-decoration-color:color-mix(in srgb, currentColor 40%, transparent)}@media (width<=720px){.meeting-open.is-stacked,.meeting-entry.is-skeleton{padding-left:var(--gutter-narrow);padding-right:var(--gutter-narrow)}}@media (width<=640px){.meeting-entry.has-icon{flex-wrap:wrap}.meeting-open{flex-basis:100%}.join-btn{box-sizing:border-box;justify-content:center;width:100%}}.appointments,.msg-inbox{gap:var(--space-md);flex-direction:column;min-width:0;display:flex}.msg-inbox-list{margin:0;padding:0;list-style:none}.msg-row+.msg-row{border-top:1px solid var(--border-soft)}.msg-row--unanswered{border-left:3px solid var(--teal)}.msg-row-link{align-items:center;gap:var(--space-md);box-sizing:border-box;width:100%;padding:var(--space-md) var(--space-lg);color:inherit;transition:background var(--dur-fast) var(--ease-out);grid-template-columns:auto minmax(0,1fr) auto auto;text-decoration:none;display:grid}@media (hover:hover){.msg-row-link:hover{background:var(--bg-subtle)}}.msg-row-link:focus-visible{outline:2px solid var(--teal);outline-offset:-3px;border-radius:0}.msg-identity{flex-direction:column;gap:3px;min-width:0;display:flex}.msg-row-top{align-items:center;gap:var(--space-xs);min-width:0;display:flex}.msg-name{color:var(--text-h);letter-spacing:-.2px;text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:600;overflow:hidden}.msg-row.is-unread .msg-name{font-weight:700}.msg-pill{padding:2px var(--space-xs);background:var(--teal-tint);color:var(--teal-ink);flex-shrink:0;font-size:11px;line-height:1.5}.msg-preview{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.msg-row:not(.msg-row--unanswered) .msg-preview,.msg-preview--empty{color:var(--text-muted)}.msg-meta{justify-content:flex-end;align-items:center;gap:var(--space-xs);flex-shrink:0;display:flex}.msg-when{color:var(--text-muted);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:13px}.msg-unread-dot{border-radius:var(--radius-pill);background:var(--plum);flex-shrink:0;width:8px;height:8px}.msg-row-skeleton{align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-lg);display:flex}.msg-paused{justify-content:space-between;align-items:center;gap:var(--space-xs);border:1px solid var(--border-soft);border-radius:var(--radius-md);background:var(--bg-subtle);color:var(--text-muted);flex-wrap:wrap;padding:8px 12px;font-size:13px;display:flex}.msg-thread-paused{padding:var(--space-sm) var(--space-lg) 0;background:var(--bg);flex-shrink:0}.msg-thread-page{gap:var(--space-md);flex-direction:column;align-items:flex-start;width:100%;min-width:0;display:flex}.msg-thread-card{width:100%;max-height:min(100svh - 146px,720px)}.msg-thread-header{align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);border-bottom:1px solid var(--border-soft);flex-shrink:0;display:flex}.msg-thread-identity{flex-direction:column;gap:1px;min-width:0;display:flex}.msg-thread-name{letter-spacing:-.3px;color:var(--text-h);overflow-wrap:anywhere;margin:0;font-size:18px;font-weight:600;line-height:130%}.msg-thread-email{color:var(--teal-ink);overflow-wrap:anywhere;font-size:13px}.msg-thread-link{color:var(--text-muted);white-space:nowrap;transition:color var(--dur-fast) var(--ease-out);flex-shrink:0;margin-left:auto;font-size:13px;font-weight:600;text-decoration:none}@media (hover:hover){.msg-thread-link:hover{color:var(--plum)}}.msg-log-wrap{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.msg-log{overscroll-behavior:contain;gap:var(--space-md);min-height:0;padding:var(--space-md) var(--space-lg);background:var(--bg-subtle);flex-direction:column;flex:1;display:flex;overflow-y:auto}.msg-new-pill{left:50%;bottom:var(--space-sm);border-radius:var(--radius-pill);background:var(--plum);color:var(--accent-contrast);font:inherit;cursor:pointer;box-shadow:var(--shadow-lift);border:0;align-items:center;gap:6px;padding:7px 16px;font-size:13px;font-weight:600;display:inline-flex;position:absolute;transform:translate(-50%)}.msg-new-pill:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.msg-day-group{gap:var(--space-xs);flex-direction:column;display:flex}.msg-day{margin-bottom:var(--space-2xs);justify-content:center;display:flex}.msg-day span{padding:2px var(--space-sm);border-radius:var(--radius-pill);background:var(--bg);border:1px solid var(--border-soft);color:var(--text-muted);font-size:12px;font-weight:600}.msg-line{flex-direction:column;align-items:flex-start;gap:2px;max-width:78%;display:flex}.msg-line--team{align-self:flex-end;align-items:flex-end}.msg-author{color:var(--text-muted);padding:0 var(--space-2xs);font-size:12px;font-weight:600}.msg-bubble{padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-md);background:var(--bg);border:1px solid var(--border-soft);flex-direction:column;gap:2px;min-width:0;display:flex}.msg-line--team .msg-bubble{background:var(--plum-tint);color:var(--plum-ink);border-color:#0000}.msg-body{white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:145%}.msg-time{color:var(--text-muted);font-variant-numeric:tabular-nums;align-self:flex-end;font-size:12px}.msg-line--team .msg-time{color:var(--plum-ink);opacity:.7}.msg-composer{gap:var(--space-2xs);padding:var(--space-sm) var(--space-lg) var(--space-md);border-top:1px solid var(--border-soft);background:var(--bg);flex-direction:column;flex-shrink:0;display:flex}.msg-composer-row{align-items:flex-end;gap:var(--space-xs);display:flex}.msg-composer-field{flex:1;min-width:0}.msg-composer-field textarea{box-sizing:border-box;width:100%;font:inherit;resize:none;min-height:44px;max-height:200px;padding:10px var(--space-sm);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-subtle);color:var(--text);transition:border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);font-size:15px;line-height:145%;overflow-y:auto}.msg-composer-field textarea::placeholder{color:var(--text-muted)}.msg-composer-field textarea:focus-visible{outline:2px solid var(--teal);outline-offset:1px;border-color:var(--teal);background:var(--bg)}.msg-send{border-radius:var(--radius-pill);flex-shrink:0;width:44px;height:44px;padding:0}.msg-send svg{width:18px;height:18px}.msg-composer-count{color:var(--text-muted);font-variant-numeric:tabular-nums;align-self:flex-end;font-size:12px}.msg-composer-error{color:var(--rose-ink);font-size:13px;line-height:145%}.msg-log-skeleton{gap:var(--space-sm);padding:var(--space-lg);background:var(--bg-subtle);flex-direction:column;display:flex}.msg-bubble-skeleton{border-radius:var(--radius-md);width:55%;height:38px}.msg-bubble-skeleton.is-team{align-self:flex-end;width:45%}@media (width<=900px){.msg-thread-card{max-height:min(100svh - 196px,720px)}}@media (width<=720px){.msg-row-link,.msg-row-skeleton,.msg-thread-header,.msg-log,.msg-thread-paused,.msg-composer{padding-left:var(--gutter-narrow);padding-right:var(--gutter-narrow)}.msg-line{max-width:88%}}@media (width<=520px){.msg-row-link{grid-template-columns:auto minmax(0,1fr) auto}.msg-row-link .chevron{display:none}.msg-thread-header{flex-wrap:wrap}.msg-thread-link{flex-basis:100%;margin-left:0}}@font-face{font-family:Outfit Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/outfit-latin-ext-wght-normal-DdQaqQDo.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/outfit-latin-wght-normal-Bc-8i84L.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--plum:#564256;--teal:#68b0ab;--yellow:#ffee93;--sage:#76877d;--rose:#cc8b86;--text:#4a4351;--text-h:var(--plum);--text-muted:#7a7280;--bg:#fff;--bg-subtle:#faf9fb;--border:#e5e2e6;--border-soft:#efedf0;--accent:var(--teal);--accent-contrast:#fff;--shadow:#56425614 0 10px 24px -8px, #5642560f 0 4px 8px -2px;--shadow-soft:#5642560d 0 2px 6px -1px, #5642560a 0 1px 2px;--shadow-lift:#5642561f 0 16px 32px -10px, #56425614 0 6px 12px -4px;--teal-tint:#eef6f5;--teal-ink:#2f5b57;--rose-tint:#fbefee;--rose-ink:#8a4a45;--sage-tint:#f0f3f1;--sage-ink:#46534b;--plum-tint:#f3eff3;--plum-ink:var(--plum);--yellow-tint:#fff9dc;--yellow-ink:#6b5e1e;--space-2xs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--gutter-narrow:20px;--fs-3xl:36px;--fs-2xl:28px;--fs-xl:22px;--fs-lg:19px;--fs-md:16px;--fs-base:15px;--fs-sm:14px;--fs-xs:13px;--fs-2xs:12px;--fs-3xs:11px;--lh-tight:1.15;--lh-snug:1.3;--lh-normal:1.45;--lh-loose:1.6;--ls-tight:-.4px;--ls-snug:-.2px;--ls-wide:.8px;--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-pill:999px;--ease-out:cubic-bezier(.32, .72, 0, 1);--dur-fast:.15s;--sans:"Outfit Variable", system-ui, "Segoe UI", Roboto, sans-serif;--heading:var(--sans);font:18px/145% var(--sans);letter-spacing:.1px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}body{margin:0}#root{flex-direction:column;min-height:100svh;display:flex}main{flex-direction:column;flex:1 0 auto;display:flex}main:focus{outline:none}h1,h2,h3{font-family:var(--heading);color:var(--text-h);font-weight:600}h1{font-size:var(--fs-3xl);line-height:var(--lh-tight);letter-spacing:var(--ls-tight);margin:0 0 var(--space-md)}h2{font-size:var(--fs-xl);line-height:var(--lh-snug);letter-spacing:var(--ls-snug);margin:0 0 var(--space-sm)}h3{font-size:var(--fs-lg);letter-spacing:var(--ls-snug);margin:0 0 var(--space-xs)}p{margin:0}a{color:inherit}button{font:inherit}a:focus-visible,button:focus-visible{outline:2px solid var(--teal);outline-offset:2px;border-radius:var(--radius-xs)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.visually-hidden.skip-link:focus{clip:auto;background:var(--plum);width:auto;height:auto;color:var(--accent-contrast);border-radius:var(--radius-sm);z-index:1000;margin:0;padding:10px 16px;position:fixed;top:12px;left:12px;overflow:visible}.btn{border-radius:var(--radius-pill);cursor:pointer;transition:transform var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);border:2px solid #0000;justify-content:center;align-items:center;gap:8px;padding:14px 28px;font-size:16px;font-weight:600;text-decoration:none;display:inline-flex}@media (hover:hover){.btn:hover{transform:translateY(-1px)}}.btn-primary{background:var(--plum);color:var(--accent-contrast)}@media (hover:hover){.btn-primary:hover{box-shadow:var(--shadow-lift)}}.btn-secondary{color:var(--plum);border-color:var(--border);background:0 0}@media (hover:hover){.btn-secondary:hover{border-color:var(--plum)}}.btn-sm{padding:9px 18px;font-size:15px}.btn-xs{padding:var(--space-2xs) var(--space-sm);font-size:var(--fs-xs)}.btn-danger{background:var(--bg);border-color:var(--border);color:var(--rose-ink)}.btn-danger.is-solid{background:var(--rose-ink);border-color:var(--rose-ink);color:var(--accent-contrast)}@media (hover:hover){.btn-danger:not(.is-solid):hover{background:var(--rose-tint);border-color:var(--rose)}.btn-danger.is-solid:hover{box-shadow:var(--shadow-lift)}}@media (pointer:coarse){.btn-xs,.btn-sm{min-height:44px}}.icon-btn{border-radius:var(--radius-sm);width:36px;height:36px;color:var(--text-muted);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background:0 0;border:1px solid #0000;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.icon-btn:focus-visible{outline:2px solid var(--teal);outline-offset:2px;border-radius:var(--radius-sm)}@media (hover:hover){.icon-btn:hover{background:var(--bg-subtle);border-color:var(--border);color:var(--text)}.icon-btn--plum:hover{color:var(--plum)}.icon-btn--rose:hover{background:var(--rose-tint);border-color:var(--rose);color:var(--rose-ink)}}@media (pointer:coarse){.icon-btn{width:44px;height:44px}}.icon-btn:disabled{opacity:.45;cursor:default;color:var(--text-muted);background:0 0;border-color:#0000}.btn:disabled,.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed}@media (hover:hover){.btn:disabled:hover,.btn[aria-disabled=true]:hover{box-shadow:none;transform:none}}.field-input{box-sizing:border-box;width:100%;font:inherit;padding:10px var(--space-md);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-subtle);color:var(--text);transition:border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);font-size:15px}@media (hover:hover){.field-input:hover{border-color:var(--text-muted)}}.field-input::placeholder{color:var(--text-muted)}.field-input:focus-visible{outline:2px solid var(--teal);outline-offset:1px;border-color:var(--teal);background:var(--bg)}.field-input[aria-invalid=true]{border-color:var(--rose-ink)}.badge{border-radius:var(--radius-pill);white-space:nowrap;font-weight:600}.modal-close{color:var(--text-muted)}@media (pointer:coarse){.modal-close{width:44px;height:44px}.toast-dismiss{width:40px;height:40px}}.skeleton{border-radius:var(--radius-pill);background:linear-gradient(90deg, var(--border-soft) 25%, var(--bg-subtle) 50%, var(--border-soft) 75%);background-size:200% 100%;height:12px;animation:1.4s ease-in-out infinite skeleton-shimmer;display:block}.skeleton-region{flex-direction:column;min-width:0;display:flex}.skeleton-lines{gap:var(--space-xs);flex-direction:column;min-width:0;display:flex}.skeleton-name{width:180px;max-width:100%;height:14px}.skeleton-email{width:240px;max-width:100%}.skeleton-avatar{border-radius:var(--radius-pill);flex-shrink:0}.skeleton-avatar--sm{width:36px;height:36px}.skeleton-avatar--lg{width:52px;height:52px}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
