:root{--healis-paper:#fbf7f0;--healis-surface:#ffffff;--healis-surface-subtle:#f5efe7;--healis-ink:#253a33;--healis-copy:#4f625a;--healis-muted:#626d67;--healis-border:#d6cec3;--healis-border-strong:#a99d90;--healis-green:#008624;--healis-green-hover:#006b1d;--healis-green-soft:#e8f5ec;--healis-amber:#854f0b;--healis-amber-soft:#fff4e5;--healis-danger:#a32d2d;--healis-danger-soft:#fcebeb;--healis-info:#075985;--healis-info-soft:#e0f2fe;--healis-font-body:"General Sans",system-ui,sans-serif;--healis-font-display:"Gopher","General Sans",system-ui,sans-serif;--healis-space-1:4px;--healis-space-2:8px;--healis-space-3:12px;--healis-space-4:16px;--healis-space-5:20px;--healis-space-6:24px;--healis-space-8:32px;--healis-space-10:40px;--healis-space-12:48px;--healis-space-16:64px;--healis-radius-sm:8px;--healis-radius-md:12px;--healis-radius-lg:16px;--healis-radius-pill:999px;--healis-shadow-sm:0 2px 10px rgba(37,58,51,0.07);--healis-shadow-md:0 12px 28px rgba(37,58,51,0.12);--healis-z-sticky:20;--healis-z-floating:40;--healis-z-modal:80}.ds-showcase{display:grid;gap:var(--healis-space-8);padding-bottom:var(--healis-space-12)}.ds-showcase-section{display:grid;gap:var(--healis-space-4)}.ds-showcase-section>h2,.ds-showcase-section>h3,.ds-showcase-section>p{margin:0}.ds-showcase-section>h2{color:var(--healis-ink);font:500 24px/1.33 var(--healis-font-display)}.ds-showcase-section>h3{color:var(--healis-ink);font-size:18px}.ds-showcase-section>p{max-width:72ch;color:var(--healis-copy);line-height:1.6}.ds-overview-template,.ds-showcase-grid{display:grid;gap:var(--healis-space-4)}.ds-showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ds-showcase-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}.ds-card{min-width:0;padding:var(--healis-space-6);border:1px solid var(--healis-border);border-radius:var(--healis-radius-lg);background:var(--healis-surface);box-shadow:var(--healis-shadow-sm)}.ds-card-interactive{transition:box-shadow .16s ease,transform .16s ease,border-color .16s ease}.ds-card-interactive:hover{border-color:var(--healis-green);box-shadow:var(--healis-shadow-md);transform:translateY(-2px)}.ds-card-interactive:focus-within{border-color:var(--healis-green);box-shadow:0 0 0 3px var(--healis-green-soft)}.ds-swatch-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--healis-space-3)}.ds-swatch{display:grid;gap:var(--healis-space-2);min-width:0}.ds-swatch-color{min-height:56px;border:1px solid var(--healis-border);border-radius:var(--healis-radius-md)}.ds-swatch span,.ds-swatch strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ds-swatch strong{color:var(--healis-ink);font-size:13px}.ds-swatch span{color:var(--healis-muted);font:12px var(--healis-font-body)}.ds-type-scale{display:grid;gap:var(--healis-space-2)}.ds-type-scale>div{display:flex;align-items:baseline;justify-content:space-between;gap:var(--healis-space-3);border-bottom:1px solid var(--healis-border);padding-bottom:var(--healis-space-2)}.ds-type-scale small{flex-shrink:0;color:var(--healis-muted);font:12px var(--healis-font-body)}.ds-type-12{font-size:12px;line-height:1.5}.ds-type-14{font-size:14px;line-height:1.5}.ds-type-16{font-size:16px;line-height:1.6}.ds-type-18{font-size:18px;line-height:1.6}.ds-type-24{font:500 24px/1.33 var(--healis-font-display)}.ds-type-32{font:500 32px/1.25 var(--healis-font-display)}.ds-badge-row,.ds-button-row,.ds-control-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--healis-space-2)}.ds-button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:var(--healis-space-2);border:1px solid transparent;border-radius:var(--healis-radius-sm);padding:0 var(--healis-space-4);color:var(--healis-ink);font:600 14px var(--healis-font-body);text-decoration:none;cursor:pointer;transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease}.ds-button:focus-visible,.ds-dialog-close:focus-visible,.ds-dropdown-trigger:focus-visible,.ds-field:focus-visible,.ds-tab:focus-visible{outline:3px solid var(--healis-green);outline-offset:2px}.ds-button:hover:not(:disabled):not([aria-disabled=true]){transform:translateY(-1px)}.ds-button:active:not(:disabled):not([aria-disabled=true]){transform:translateY(0)}.ds-button:disabled,.ds-button[aria-disabled=true]{cursor:not-allowed;opacity:.52}.ds-button-primary{background:var(--healis-green);color:#fff}.ds-button-primary:hover:not(:disabled):not([aria-disabled=true]){background:var(--healis-green-hover)}.ds-button-secondary{border-color:var(--healis-green);background:var(--healis-surface);color:var(--healis-green-hover)}.ds-button-secondary:hover:not(:disabled):not([aria-disabled=true]){background:var(--healis-green-soft)}.ds-button-ghost{background:transparent;color:var(--healis-green-hover)}.ds-button-ghost:hover:not(:disabled):not([aria-disabled=true]){background:var(--healis-green-soft)}.ds-button-danger{background:var(--healis-danger);color:#fff}.ds-button-danger:hover:not(:disabled):not([aria-disabled=true]){background:#822323}.ds-button-sm{min-height:40px;padding-inline:var(--healis-space-3);font-size:13px}.ds-button-lg{min-height:48px;padding-inline:var(--healis-space-6)}.ds-spinner{width:16px;height:16px;border:2px solid;border-right:2px solid transparent;border-radius:50%;animation:ds-spin .7s linear infinite}@keyframes ds-spin{to{transform:rotate(1turn)}}.ds-field-wrap{display:grid;gap:var(--healis-space-2);min-width:0;flex:1 1 220px}.ds-field-label{color:var(--healis-ink);font-size:13px;font-weight:600}.ds-field-error,.ds-field-hint{margin:0;color:var(--healis-muted);font-size:12px;line-height:1.5}.ds-field-error{color:var(--healis-danger)}.ds-field{width:100%;min-height:44px;border:1px solid var(--healis-border-strong);border-radius:var(--healis-radius-sm);padding:0 var(--healis-space-3);background:var(--healis-surface);color:var(--healis-ink);font:16px var(--healis-font-body)}.ds-field:hover:not(:disabled){border-color:var(--healis-green)}.ds-field[aria-invalid=true]{border-color:var(--healis-danger)}.ds-field:disabled{background:var(--healis-surface-subtle);cursor:not-allowed;opacity:.7}.ds-dropdown{position:relative}.ds-dropdown-trigger{min-width:180px;justify-content:space-between;border-color:var(--healis-border-strong);background:var(--healis-surface)}.ds-dropdown-menu{position:absolute;z-index:var(--healis-z-floating);top:calc(100% + var(--healis-space-2));right:0;min-width:220px;padding:var(--healis-space-2);border:1px solid var(--healis-border);border-radius:var(--healis-radius-md);background:var(--healis-surface);box-shadow:var(--healis-shadow-md)}.ds-dropdown-item{display:block;width:100%;border:0;border-radius:var(--healis-radius-sm);padding:var(--healis-space-3);background:transparent;color:var(--healis-ink);text-align:left;font:14px var(--healis-font-body);cursor:pointer}.ds-dropdown-item:hover{background:var(--healis-green-soft)}.ds-dropdown-item:focus-visible{background:var(--healis-green-soft);outline:3px solid var(--healis-green);outline-offset:2px}.ds-table-wrap{overflow-x:auto;border:1px solid var(--healis-border);border-radius:var(--healis-radius-md)}.ds-table{width:100%;min-width:480px;border-collapse:collapse;color:var(--healis-ink);font-size:14px}.ds-table td,.ds-table th{padding:var(--healis-space-3) var(--healis-space-4);border-bottom:1px solid var(--healis-border);text-align:left;vertical-align:top}.ds-table th{position:sticky;top:0;z-index:1;color:var(--healis-copy);font-size:12px;letter-spacing:.04em;text-transform:uppercase}.ds-table tbody tr:hover,.ds-table th{background:var(--healis-surface-subtle)}.ds-table tbody tr:last-child td{border-bottom:0}.ds-table-compact td,.ds-table-compact th{padding-block:var(--healis-space-2)}.ds-table-number{text-align:right!important;font-variant-numeric:tabular-nums}.ds-tabs{display:grid}.ds-tab-list,.ds-tabs{gap:var(--healis-space-4)}.ds-tab-list{display:flex;overflow-x:auto;border-bottom:1px solid var(--healis-border)}.ds-tab{min-height:44px;flex-shrink:0;border:0;border-bottom:3px solid transparent;padding:0 var(--healis-space-2);background:transparent;color:var(--healis-muted);font:600 14px var(--healis-font-body);cursor:pointer}.ds-tab:hover{color:var(--healis-ink)}.ds-tab[aria-selected=true]{border-bottom-color:var(--healis-green);color:var(--healis-green-hover)}.ds-skeleton{display:block;min-height:16px;border-radius:var(--healis-radius-sm);background:linear-gradient(90deg,var(--healis-surface-subtle),#fff,var(--healis-surface-subtle));background-size:200% 100%;animation:ds-shimmer 1.2s ease-in-out infinite}@keyframes ds-shimmer{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.ds-skeleton,.ds-spinner{animation:none}.ds-button,.ds-card-interactive{transition:none}}.ds-skeleton-line{width:70%}.ds-empty{display:grid;justify-items:center;gap:var(--healis-space-3);padding:var(--healis-space-8);border:1px dashed var(--healis-border-strong);border-radius:var(--healis-radius-md);text-align:center}.ds-empty h3,.ds-empty p{margin:0}.ds-empty h3{color:var(--healis-ink);font:500 20px/1.4 var(--healis-font-display)}.ds-empty p{max-width:48ch;color:var(--healis-copy);line-height:1.6}.ds-toast{display:flex;align-items:flex-start;gap:var(--healis-space-3);padding:var(--healis-space-3) var(--healis-space-4);border:1px solid var(--healis-green);border-radius:var(--healis-radius-md);background:var(--healis-green-soft);color:var(--healis-ink);box-shadow:var(--healis-shadow-sm)}.ds-toast strong{display:block}.ds-toast p{margin:var(--healis-space-1) 0 0;color:var(--healis-copy);font-size:13px}.ds-toast-close{flex-shrink:0;width:44px;min-height:44px;margin:-10px -8px -10px auto;border:0;background:transparent;color:var(--healis-ink);cursor:pointer;font-size:20px;line-height:1}.ds-backdrop{position:fixed;z-index:var(--healis-z-modal);inset:0;display:grid;place-items:center;padding:var(--healis-space-4);background:rgba(37,58,51,.42)}.ds-dialog{width:min(100%,560px);max-height:calc(100vh - var(--healis-space-8));overflow:auto;border:0;border-radius:var(--healis-radius-lg);padding:0;background:var(--healis-surface);box-shadow:var(--healis-shadow-md)}.ds-dialog-body,.ds-dialog-foot,.ds-dialog-head{padding:var(--healis-space-4) var(--healis-space-6)}.ds-dialog-head{display:flex;align-items:flex-start;gap:var(--healis-space-3);border-bottom:1px solid var(--healis-border)}.ds-dialog-head h2{flex:1;margin:0;color:var(--healis-ink);font:500 20px/1.4 var(--healis-font-display)}.ds-dialog-close{min-width:44px;min-height:44px;border:0;background:transparent;color:var(--healis-copy);font-size:24px;cursor:pointer}.ds-dialog-body{color:var(--healis-copy);line-height:1.6}.ds-dialog-foot{display:flex;justify-content:flex-end;gap:var(--healis-space-2);border-top:1px solid var(--healis-border)}.ds-drawer-backdrop{place-items:stretch end}.ds-drawer{width:min(100%,440px);height:100%;overflow:auto;border:0;border-radius:var(--healis-radius-lg) 0 0 var(--healis-radius-lg);background:var(--healis-surface);box-shadow:var(--healis-shadow-md)}@media (max-width:900px){.ds-showcase-grid-three,.ds-swatch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.ds-showcase-grid,.ds-showcase-grid-three,.ds-swatch-grid{grid-template-columns:1fr}.ds-card{padding:var(--healis-space-4)}.ds-dialog-body,.ds-dialog-foot,.ds-dialog-head{padding-inline:var(--healis-space-4)}}.ds-breadcrumb{flex-wrap:wrap;margin:0 0 var(--healis-space-2);padding:0;list-style:none;font:500 13px var(--healis-font-body)}.ds-breadcrumb,.ds-breadcrumb__item{display:flex;align-items:center;gap:var(--healis-space-1)}.ds-breadcrumb__item{min-width:0}.ds-breadcrumb__sep{color:var(--healis-copy)}.ds-breadcrumb__link{color:var(--healis-green-hover);text-decoration:underline;text-underline-offset:3px}.ds-breadcrumb__current,.ds-breadcrumb__link{display:inline-flex;min-height:44px;align-items:center}.ds-breadcrumb__current{color:var(--healis-ink);font-weight:600}