.btn{font:inherit;letter-spacing:-.01em;border-radius:var(--radius-md);cursor:pointer;border:1.5px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.85rem;font-weight:600;transition:background .15s,border-color .15s,color .15s,opacity .15s;display:inline-flex}.btn--sm{border-radius:var(--radius-sm);padding:.35rem .75rem;font-size:.8rem}.btn--primary{background:var(--color-primary);color:var(--color-white)}.btn--primary:hover:not(:disabled){background:var(--color-primary-dark)}.btn--secondary{background:var(--color-white);color:var(--color-text-secondary);border-color:var(--color-border)}.btn--secondary:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.btn:disabled{cursor:not-allowed;opacity:.5}.audit-timeline{flex-direction:column;gap:1rem;display:flex}.audit-timeline>h2{letter-spacing:-.02em;margin:0;font-size:1.25rem;font-weight:700}.audit-timeline-actor{color:var(--color-text-secondary);margin:0;font-size:.95rem}.audit-timeline-actor strong{color:var(--color-text);font-weight:700}.audit-filter{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-white);flex-wrap:wrap;gap:.75rem 1rem;margin:0;padding:.85rem 1rem;display:flex}.audit-filter>label{letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary);flex-direction:column;flex:9rem;gap:.3rem;min-width:0;font-size:.7rem;font-weight:700;display:flex}.audit-filter select,.audit-filter input[type=date]{font:inherit;color:var(--color-text);background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-md);text-transform:none;letter-spacing:normal;outline:none;padding:.4rem .6rem;font-size:.875rem;font-weight:400;transition:border-color .15s,box-shadow .15s}.audit-filter select:focus,.audit-filter input[type=date]:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.audit-filter select:disabled,.audit-filter input[type=date]:disabled{background:var(--color-border-light);color:var(--color-text-tertiary);cursor:not-allowed}.audit-event-list{flex-direction:column;gap:.5rem;margin:0 0 1rem;padding:0;list-style:none;display:flex}.patients h1{margin-top:0}.patient-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.admin-landing{flex-direction:column;gap:1.5rem;display:flex}.admin-landing-header h1{letter-spacing:-.02em;margin:0 0 .25rem;font-size:1.5rem}.admin-landing-lede{color:var(--color-text-secondary);margin:0;font-size:.95rem}.admin-landing-cards{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:1rem;display:grid}.admin-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-xl);flex-direction:column;gap:.6rem;padding:1.25rem;display:flex}.admin-card>header{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.admin-card h2{letter-spacing:-.01em;margin:0;font-size:1rem;font-weight:700}.admin-card-tag{font-family:var(--font-family-mono);color:var(--color-text-tertiary);background:var(--color-bg);border:1px solid var(--color-border-light);border-radius:var(--radius-pill);padding:.1rem .4rem;font-size:.7rem}.admin-card p{color:var(--color-text-secondary);margin:0;font-size:.9rem;line-height:1.4}.admin-card-pending{background:var(--color-bg);border-style:dashed}.admin-card-status{color:var(--color-text-tertiary);font-size:.85rem;font-style:italic}.admin-card-cta{color:var(--color-primary);align-items:center;gap:.25rem;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-flex}.admin-card-cta:hover{text-decoration:underline}.admin-landing-footer{border-top:1px solid var(--color-border-light);margin-top:.5rem;padding-top:1rem}.admin-landing-hint{color:var(--color-text-tertiary);font-size:.85rem}.admin-landing-hint code{font-family:var(--font-family-mono);background:var(--color-bg);border-radius:var(--radius-sm);padding:.05rem .3rem;font-size:.8rem}.patient-layout{flex-direction:column;gap:1rem;display:flex}.patient-subnav-row{border-bottom:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-bottom:.5rem;display:flex}.patient-subnav{flex-wrap:wrap;gap:.5rem;display:flex}.patient-subnav a{border-radius:var(--radius-md);color:var(--color-text-secondary);padding:.4rem .85rem;font-size:.9rem;font-weight:500;text-decoration:none}.patient-subnav a.is-active{background:var(--color-primary-light);color:var(--color-primary);font-weight:700}.patient-summary{flex-direction:column;gap:1.5rem;display:flex}.patient-details-expander{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:.75rem 1.25rem}.patient-details-expander>summary{cursor:pointer;color:var(--color-text-secondary);font-weight:600}.patient-admin-tools{margin-top:.5rem}.audit-timeline-link{color:var(--color-primary);text-decoration:none}.audit-timeline-link:hover{text-decoration:underline}.patient-demographics{grid-template-columns:max-content 1fr;gap:.5rem 1.5rem;margin-top:1rem;display:grid}.patient-demographics dt{color:var(--color-text-secondary);font-weight:600}.patient-demographics dd{margin:0}.form-read{flex-direction:column;gap:1rem;max-width:46rem;display:flex}.form-read>header{flex-direction:column;align-items:flex-start;gap:.5rem;margin:0 0 .5rem;display:flex}.form-read>header>h2{letter-spacing:-.02em;margin:0;font-size:1.25rem;font-weight:700}.form-read-parent-link{color:var(--color-text-secondary);align-items:center;gap:.3rem;font-size:.85rem;font-weight:500;text-decoration:none;display:inline-flex}.form-read-parent-link:before{content:"↑ ";color:var(--color-text-tertiary)}.form-read-parent-link:hover{color:var(--color-primary)}.form-read-successor-link{color:var(--color-amber);align-items:center;gap:.3rem;font-size:.85rem;font-weight:600;text-decoration:none;display:inline-flex}.form-read-successor-link:hover{text-decoration:underline}.form-read-chain{flex-direction:column;gap:.25rem;display:flex}.form-read-actions{flex-wrap:wrap;gap:.5rem;margin-top:.15rem;display:flex}.field-provenance-chip{border-radius:var(--radius-pill);background:var(--color-border-light);color:var(--color-text-tertiary);letter-spacing:.02em;text-transform:uppercase;vertical-align:middle;margin-left:.4rem;padding:.05rem .4rem;font-size:.7rem;font-weight:600;display:inline-block}.field-provenance-chip--modified{background:var(--color-amber-light);color:var(--color-amber)}.form-read-continue,.form-read-amend{border:1.5px solid var(--color-primary);border-radius:var(--radius-md);background:var(--color-white);color:var(--color-primary);font:inherit;letter-spacing:-.01em;cursor:pointer;align-items:center;gap:.35rem;padding:.4rem .85rem;font-size:.85rem;font-weight:600;text-decoration:none;transition:background .15s,color .15s,box-shadow .15s;display:inline-flex}.form-read-continue:hover,.form-read-amend:hover:not(:disabled){background:var(--color-primary);color:var(--color-white);box-shadow:var(--shadow-hover-primary)}.form-read-amend:disabled{opacity:.5;cursor:not-allowed}.form-read-section{flex-direction:column;gap:.25rem;margin-bottom:.75rem;display:flex}.form-read-section-title{color:var(--color-text-secondary);text-transform:capitalize;margin:0;font-size:.95rem;font-weight:600}.admin-access{max-width:720px}.admin-access-header{margin-bottom:1.5rem}.admin-access-lede{color:var(--color-text-secondary);margin-top:.25rem}.admin-access-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.admin-access-row{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.admin-access-row-id{align-items:center;gap:.5rem;min-width:0;display:flex}.admin-access-row-email{color:var(--color-text);overflow-wrap:anywhere;font-weight:500}.admin-access-row-self{text-transform:uppercase;letter-spacing:.04em;border-radius:var(--radius-pill);background:var(--color-primary-light);color:var(--color-primary);padding:.1rem .4rem;font-size:.7rem}.admin-access-row-control{align-items:center;gap:.5rem;display:flex}.admin-access-role-select{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-white);color:var(--color-text);font:inherit;padding:.35rem .5rem}.admin-access-row-saving{color:var(--color-text-tertiary);font-size:.8rem}.admin-access-row-fixed{align-items:center;gap:.5rem;display:flex}.admin-access-role-badge{border-radius:var(--radius-pill);background:var(--color-bg);color:var(--color-text-secondary);border:1px solid var(--color-border);padding:.2rem .6rem;font-size:.8rem}.admin-access-row-note{color:var(--color-text-tertiary);font-size:.75rem}.patient-timeline{flex-direction:column;gap:1rem;display:flex}.timeline-filter{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-white);flex-wrap:wrap;gap:.5rem 1rem;padding:.5rem .75rem;display:flex}.timeline-filter label{color:var(--color-text-secondary);align-items:center;gap:.35rem;font-size:.9rem;display:inline-flex}.timeline-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.timeline-item{display:block}.timeline-item-kind{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary);padding:0 .5rem .25rem;font-size:.75rem;font-weight:600;display:inline-block}.form-fill{flex-direction:column;gap:1rem;max-width:46rem;display:flex}.form-fill-fields{flex-direction:column;gap:.25rem;display:flex}.form-fill-submit-meta{border-top:1px solid var(--color-border);margin:.5rem 0;padding-top:.75rem}.form-fill-section{border:0;margin:0 0 .75rem;padding:0}.form-fill-section-title{color:var(--color-text-secondary);text-transform:capitalize;margin:0 0 .35rem;padding:0;font-size:.95rem;font-weight:600}.forms-header{border-bottom:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;margin:0 0 1rem;padding:0 0 .5rem;display:flex}.forms-header h2{letter-spacing:-.02em;color:var(--color-text);margin:0;font-size:1.25rem;font-weight:700}.documents{flex-direction:column;gap:1rem;display:flex}.documents-header{border-bottom:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;margin:0 0 1rem;padding:0 0 .5rem;display:flex}.documents-header h2{letter-spacing:-.02em;color:var(--color-text);margin:0;font-size:1.25rem;font-weight:700}.documents-new-link{border:1.5px solid var(--color-primary);border-radius:var(--radius-md);background:var(--color-white);color:var(--color-primary);letter-spacing:-.01em;white-space:nowrap;align-items:center;gap:.35rem;padding:.4rem .85rem;font-size:.85rem;font-weight:600;text-decoration:none;transition:background .15s,color .15s,box-shadow .15s;display:inline-flex}.documents-new-link:hover{background:var(--color-primary);color:var(--color-white);box-shadow:var(--shadow-hover-primary)}.document-list{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.document-list>li{border:1px solid var(--color-border-light);border-radius:var(--radius-md);transition:border-color .15s,box-shadow .15s}.document-list>li:hover{border-color:var(--color-border);box-shadow:var(--shadow-hover)}.document-link{color:inherit;padding:.6rem .9rem;text-decoration:none;display:block}.admin-templates{flex-direction:column;gap:1.25rem;display:flex}.admin-templates-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.admin-templates-header h1{letter-spacing:-.02em;margin:0 0 .25rem;font-size:1.5rem}.admin-templates-lede{color:var(--color-text-secondary);max-width:40rem;margin:0;font-size:.9rem}.admin-templates-toolbar{align-items:center;gap:1rem;display:flex}.toolbar-toggle{color:var(--color-text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.4rem;font-size:.9rem;display:inline-flex}.admin-template-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.admin-template-row{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color .15s,box-shadow .15s}.admin-template-row:hover{border-color:var(--color-primary);box-shadow:var(--shadow-hover-primary)}.admin-template-row-link{color:inherit;flex-direction:column;gap:.3rem;padding:.85rem 1rem;text-decoration:none;display:flex}.admin-template-row-head{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.admin-template-row-name{color:var(--color-text);font-size:.95rem;font-weight:600}.admin-template-row-kind{letter-spacing:.04em;text-transform:uppercase;border-radius:var(--radius-pill);padding:.1rem .5rem;font-size:.7rem;font-weight:700}.admin-template-row-kind.kind-note{background:var(--color-purple-light);color:var(--color-purple)}.admin-template-row-kind.kind-form{background:var(--color-primary-light);color:var(--color-primary)}.admin-template-row-inactive{letter-spacing:.04em;text-transform:uppercase;border-radius:var(--radius-pill);background:var(--color-amber-light);color:var(--color-amber);padding:.1rem .5rem;font-size:.7rem;font-weight:700}.admin-template-row-fork{letter-spacing:.02em;border-radius:var(--radius-pill);background:var(--color-bg);color:var(--color-text-secondary);border:1px solid var(--color-border);padding:.1rem .5rem;font-size:.7rem;font-weight:600}.admin-template-row-meta{color:var(--color-text-tertiary);flex-wrap:wrap;align-items:center;gap:.4rem;font-size:.8rem;display:flex}.admin-template-row-desc{color:var(--color-text-secondary);font-size:.9rem;line-height:1.4}.measurement-detail-list{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.measurement-detail-row{grid-template-columns:auto 1fr auto auto;align-items:baseline;gap:.4rem 1rem;display:grid}.measurement-detail-key{color:var(--color-text-secondary);font-size:.9rem}.measurement-detail-value{font-variant-numeric:tabular-nums;color:var(--color-text)}.measurement-detail-range{color:var(--color-text-tertiary);font-size:.85rem}.encounter-fields{grid-template-columns:max-content 1fr;gap:.5rem 1.5rem;margin-top:1rem;display:grid}.encounter-fields dt{color:var(--color-text-secondary);font-weight:600}.encounter-fields dd{margin:0}.encounter-notes{white-space:pre-wrap}.document-create{flex-direction:column;gap:1rem;max-width:36rem;display:flex}.document-create h2{margin:0 0 .25rem;font-size:1.25rem}.document-create form fieldset{border:1px solid var(--color-border-light);border-radius:var(--radius-md);grid-template-columns:max-content 1fr;gap:.5rem 1rem;margin:0;padding:.75rem 1rem;display:grid}.document-create form legend{color:var(--color-text-secondary);padding:0 .4rem;font-size:.85rem}.document-create form label{color:var(--color-text-secondary);align-self:center;font-size:.9rem}.document-create form input,.document-create form select,.document-create form textarea{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;font:inherit;padding:.35rem .5rem}.document-create form textarea{resize:vertical}.document-create .field-error{color:var(--color-red);grid-column:2/-1;margin:0;font-size:.85rem}.document-detail{flex-direction:column;gap:1rem;display:flex}.document-detail header h2{margin:0;font-size:1.25rem}.document-detail-when{color:var(--color-text-secondary);text-transform:lowercase;margin:.25rem 0 0;font-size:.9rem}.document-fields{grid-template-columns:max-content 1fr;gap:.35rem 1rem;margin:0;display:grid}.document-fields dt{color:var(--color-text-secondary);font-size:.85rem}.document-fields dd{color:var(--color-text);margin:0}.document-detail-notes{white-space:pre-wrap}.document-download{margin:.5rem 0}.document-download-link{border:1.5px solid var(--color-primary);border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-white);align-items:center;gap:.35rem;padding:.4rem .85rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:box-shadow .15s;display:inline-flex}.document-download-link:hover{box-shadow:var(--shadow-hover-primary)}.admin-template-form{flex-direction:column;gap:1.25rem;display:flex}.admin-template-form>header h1{letter-spacing:-.02em;margin:0 0 .25rem;font-size:1.5rem}.admin-template-form-lede{color:var(--color-text-secondary);max-width:40rem;margin:0;font-size:.9rem}.template-form{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-xl);flex-direction:column;gap:1.25rem;padding:1.25rem;display:flex}.form-grid{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:.85rem;display:grid}.form-grid label{color:var(--color-text-secondary);flex-direction:column;gap:.3rem;font-size:.85rem;font-weight:600;display:flex}.form-grid input[type=text],.form-grid textarea,.form-grid select{font:inherit;color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-white);padding:.4rem .55rem;font-size:.9rem;font-weight:400}.form-grid input[type=text]:focus,.form-grid textarea:focus,.form-grid select:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring);outline:none}.form-grid-wide{grid-column:1/-1}.form-grid-toggle{grid-column:1/-1;align-items:center;color:var(--color-text)!important;flex-direction:row!important;gap:.5rem!important;font-weight:500!important}.template-form-section-h{letter-spacing:-.01em;border-top:1px solid var(--color-border-light);margin:0;padding-top:1rem;font-size:1.05rem;font-weight:700}.template-form-actions{border-top:1px solid var(--color-border-light);justify-content:flex-end;align-items:center;gap:.85rem;padding-top:1rem;display:flex}.template-form-blocking{color:var(--color-amber);font-size:.85rem;font-style:italic}.template-form-actions button[type=submit]{background:var(--color-primary);color:var(--color-white);border:1px solid var(--color-primary);border-radius:var(--radius-md);font:inherit;cursor:pointer;padding:.55rem 1.2rem;font-size:.9rem;font-weight:600}.template-form-actions button[type=submit]:hover:not(:disabled){background:var(--color-primary-dark);box-shadow:var(--shadow-hover-primary)}.template-form-actions button[type=submit]:disabled{opacity:.5;cursor:not-allowed}.admin-template-detail{flex-direction:column;gap:1rem;display:flex}.admin-template-detail-head{flex-wrap:wrap;justify-content:space-between;gap:1rem;display:flex}.admin-template-detail-head h1{letter-spacing:-.02em;flex-wrap:wrap;align-items:center;gap:.6rem;margin:0 0 .4rem;font-size:1.5rem;display:inline-flex}.admin-template-rename-btn{font:inherit;border:1px solid var(--color-border);background:var(--color-white);color:var(--color-text-secondary);border-radius:var(--radius-pill);cursor:pointer;padding:.25rem .6rem;font-size:.75rem;font-weight:600}.admin-template-rename-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.admin-template-rename{flex-wrap:wrap;align-items:center;gap:.4rem;display:inline-flex}.admin-template-rename input{font:inherit;border:1px solid var(--color-border);border-radius:var(--radius-md);min-width:18rem;padding:.4rem .55rem;font-size:1rem;font-weight:600}.admin-template-rename input:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring);outline:none}.admin-template-rename button{font:inherit;border:1px solid var(--color-border);background:var(--color-white);color:var(--color-text-secondary);border-radius:var(--radius-md);cursor:pointer;padding:.4rem .85rem;font-size:.85rem;font-weight:600}.admin-template-rename button[type=submit]{background:var(--color-primary);color:var(--color-white);border-color:var(--color-primary)}.admin-template-detail-meta{color:var(--color-text-tertiary);flex-wrap:wrap;align-items:center;gap:.4rem;font-size:.85rem;display:flex}.admin-template-detail-desc{color:var(--color-text-secondary);max-width:40rem;margin:.5rem 0 0;font-size:.95rem}.admin-template-detail-actions{flex-wrap:wrap;align-items:flex-start;gap:.5rem;display:flex}.admin-template-detail-actions button{font:inherit;border:1px solid var(--color-border);background:var(--color-white);color:var(--color-text-secondary);border-radius:var(--radius-md);cursor:pointer;padding:.45rem .9rem;font-size:.85rem;font-weight:600;transition:border-color .15s,color .15s,background .15s}.admin-template-detail-actions button:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.admin-template-detail-actions button:disabled{opacity:.5;cursor:not-allowed}.admin-template-clone-btn{background:var(--color-primary-light)!important;color:var(--color-primary)!important;border-color:var(--color-primary-light)!important}.admin-template-clone-btn:hover:not(:disabled){background:var(--color-primary)!important;color:var(--color-white)!important;border-color:var(--color-primary)!important}.admin-template-banner-inactive{background:var(--color-amber-light);border:1px solid var(--color-amber);border-radius:var(--radius-md);color:var(--color-text);padding:.75rem 1rem;font-size:.9rem;line-height:1.4}.admin-template-fields-h{letter-spacing:-.01em;margin:.5rem 0 0;font-size:1.05rem;font-weight:700}.admin-template-fields-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.admin-template-field-row{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-md);flex-direction:column;gap:.3rem;padding:.75rem 1rem;display:flex}.admin-template-field-row-head{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.admin-template-field-row-head strong{font-size:.95rem;font-weight:600}.admin-template-field-row-head code{font-family:var(--font-family-mono);color:var(--color-text-secondary);background:var(--color-bg);border-radius:var(--radius-sm);padding:.1rem .4rem;font-size:.8rem}.admin-template-field-required{letter-spacing:.04em;text-transform:uppercase;border-radius:var(--radius-pill);background:var(--color-red-light);color:var(--color-red);padding:.1rem .5rem;font-size:.7rem;font-weight:700}.admin-template-field-row-meta{color:var(--color-text-tertiary);flex-wrap:wrap;align-items:center;gap:.4rem;font-size:.85rem;display:flex}.admin-template-field-row-meta code{font-family:var(--font-family-mono);color:var(--color-text-secondary);font-size:.8rem}.admin-template-field-options{background:var(--color-bg);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);font-family:var(--font-family-mono);color:var(--color-text-secondary);margin:.4rem 0 0;padding:.4rem .6rem;font-size:.8rem;overflow-x:auto}:root{--color-bg:#f8f9fb;--color-white:#fff;--color-primary:#1a6b8a;--color-primary-light:#e8f4f8;--color-primary-dark:#134e63;--color-text:#1c2b33;--color-text-secondary:#5a6f7a;--color-text-tertiary:#8fa0aa;--color-border:#e2e8ed;--color-border-light:#f0f3f5;--color-green:#1a8a5c;--color-green-light:#e8f8f0;--color-amber:#b87a1a;--color-amber-light:#fff8e8;--color-red:#c43d3d;--color-red-light:#fff0f0;--color-purple:#6b4fa0;--color-purple-light:#f3f0fa;--radius-sm:6px;--radius-md:8px;--radius-lg:10px;--radius-xl:12px;--radius-pill:999px;--shadow-sm:0 2px 8px #0000000a;--shadow-md:0 4px 16px #0000000f;--shadow-lg:0 8px 24px #00000014;--shadow-modal:0 12px 32px #0f172a2e;--shadow-hover-primary:0 4px 16px #1a6b8a1a;--focus-ring:0 0 0 3px #1a6b8a2e;--font-family:"DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-family-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}body{font-family:var(--font-family);color:var(--color-text);background:var(--color-bg);letter-spacing:-.005em;font-size:15px;line-height:1.5}.app-shell{flex-direction:column;min-height:100%;display:flex}.app-header{background:var(--color-white);border-bottom:1px solid var(--color-border);align-items:center;gap:1.5rem;min-height:56px;padding:0 1.75rem;display:flex}.app-header-brand{align-items:baseline;gap:.5rem;display:flex}.brand-link{letter-spacing:-.03em;color:var(--color-primary);font-size:1.1rem;font-weight:800;text-decoration:none}.brand-tag{color:var(--color-text-tertiary);font-size:.8rem}.app-header-nav{flex:1;gap:.5rem;display:flex}.app-header-nav a{color:var(--color-text-secondary);border-radius:var(--radius-md);padding:.4rem .85rem;font-size:.9rem;font-weight:500;text-decoration:none}.app-header-nav a.is-active{background:var(--color-primary-light);color:var(--color-primary);font-weight:700}.app-header-user{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-white);color:var(--color-text-secondary);align-items:center;gap:.5rem;padding:.35rem .75rem;font-size:.8rem;line-height:1.2;display:inline-flex}.user-info{color:var(--color-text);letter-spacing:-.005em;font-weight:600}.user-info em{color:var(--color-text-tertiary);text-transform:lowercase;margin-left:.3rem;font-size:.75rem;font-style:normal;font-weight:500}.user-loading{color:var(--color-text-tertiary)}.user-dev-override{border-radius:var(--radius-pill);background:var(--color-amber-light);color:var(--color-amber);letter-spacing:.02em;text-transform:uppercase;padding:.1rem .45rem;font-size:.7rem;font-weight:700}.app-main{width:100%;max-width:960px;margin:0 auto;padding:1.5rem}.load-more{border:1px solid var(--color-border);background:var(--color-white);color:var(--color-text-secondary);border-radius:var(--radius-md);cursor:pointer;font:inherit;margin-top:1rem;padding:.5rem 1rem;font-weight:500}.load-more:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.load-more:disabled{cursor:not-allowed;color:var(--color-text-tertiary);background:var(--color-border-light)}.back-link{color:var(--color-primary);margin-bottom:.5rem;text-decoration:none;display:inline-block}.back-link:hover{text-decoration:underline}.empty-state,.loading-state{text-align:center;color:var(--color-text-tertiary);padding:2rem}.error-banner{background:var(--color-red-light);border:1px solid var(--color-red);color:var(--color-red);border-radius:var(--radius-md);padding:1rem 1.25rem}.error-banner p{margin:.5rem 0 0;font-size:.9rem}.encounter-detail-when{color:var(--color-text-tertiary);margin:0}.form-status-chip{border-radius:var(--radius-pill);background:var(--color-border-light);color:var(--color-text-secondary);text-transform:lowercase;vertical-align:middle;padding:.1rem .5rem;font-size:.8rem;display:inline-block}.form-status-chip.status-draft,.form-status-chip.status-patient_draft{background:var(--color-amber-light);color:var(--color-amber)}.form-status-chip.status-patient_submitted,.form-status-chip.status-in_review{background:var(--color-primary-light);color:var(--color-primary-dark)}.form-status-chip.status-completed{background:var(--color-green-light);color:var(--color-green)}.form-status-chip.status-amended{background:var(--color-purple-light);color:var(--color-purple)}.drill-down-filter{border:0;border-bottom:1px solid var(--color-border);flex-wrap:wrap;align-items:center;gap:1rem;margin:.5rem 0 1rem;padding:.5rem 0;display:flex}.drill-down-filter label{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-white);color:var(--color-text-secondary);cursor:pointer;align-items:center;gap:.35rem;padding:.25rem .6rem;font-size:.8rem;font-weight:500;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.drill-down-filter label:hover{border-color:var(--color-primary);color:var(--color-primary)}.drill-down-filter label:has(input[type=checkbox]:checked){background:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary-dark);font-weight:600}.form-status-filter-separator{color:var(--color-text-tertiary);-webkit-user-select:none;user-select:none}.problem-list-banner{margin:0 0 1rem}.problem-list-banner a{color:var(--color-primary);text-decoration:none}.problem-list-banner a:hover{text-decoration:underline}.condition-fields{grid-template-columns:max-content 1fr;gap:.5rem 1.5rem;margin-top:1rem;display:grid}.condition-fields dt{color:var(--color-text-secondary);font-weight:600}.condition-fields dd{margin:0}.condition-notes{white-space:pre-wrap}.form-open{flex-direction:column;gap:1rem;max-width:46rem;display:flex}.form-open>.btn{align-self:flex-start}.form-open-section{flex-direction:column;gap:.25rem;margin-bottom:.75rem;display:flex}.form-open-section-title{color:var(--color-text-secondary);text-transform:capitalize;margin:0 0 .35rem;font-size:.95rem;font-weight:600}.open-form-cta{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-top:1.5rem;padding:1rem}.open-form-cta h3{margin:0 0 .5rem}.open-form-cta form{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.open-form-cta input[type=text]{border:1px solid var(--color-border);border-radius:var(--radius-sm);min-width:20rem;font:inherit;font-family:var(--font-family-mono);flex:1;padding:.4rem .6rem}.open-form-cta-error{color:var(--color-red);font-size:.9rem}.entity-actions{flex-wrap:wrap;gap:.5rem;margin-top:1.5rem;display:flex}.section-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden}.section-card-header{border-bottom:1px solid var(--color-border-light);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem 1.25rem;display:flex}.section-card-header h2,.section-card-header h3{color:var(--color-text);margin:0;font-size:.95rem;font-weight:700}.section-card-body{padding:1rem 1.25rem}.section-card-action{color:var(--color-primary);align-items:center;gap:.25rem;font-size:.85rem;font-weight:500;text-decoration:none;display:inline-flex}.section-card-action:hover{text-decoration:underline}.section-card-actions{flex-wrap:wrap;align-items:center;gap:1rem;display:inline-flex}.home-today,.worklist-zones{flex-direction:column;gap:1.25rem;display:flex}.worklist-subsection-header{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.worklist-subsection-header h3{letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-secondary);margin:0;font-size:.8rem;font-weight:700}.entity-modal-backdrop{z-index:50;background:#0f172a73;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.entity-modal{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-xl);width:min(28rem,100%);box-shadow:var(--shadow-modal);flex-direction:column;gap:.5rem;padding:1.25rem;display:flex}.entity-modal h3{margin:0}.entity-modal label{font-size:.95rem;font-weight:500}.entity-modal-help{color:var(--color-text-secondary);margin:0;font-size:.9rem}.entity-modal textarea,.entity-modal input[type=text],.entity-modal select{border:1px solid var(--color-border);border-radius:var(--radius-sm);font:inherit;padding:.4rem .6rem}.entity-modal-buttons{justify-content:flex-end;gap:.5rem;margin-top:.5rem;display:flex}.patient-create,.patient-walk-in,.encounter-create,.condition-create,.prescription-create,.allergy-create,.result-create{flex-direction:column;gap:1rem;max-width:44rem;display:flex}.patient-create>h2,.patient-walk-in>h2,.encounter-create>h2,.condition-create>h2,.prescription-create>h2,.allergy-create>h2,.result-create>h2{letter-spacing:-.01em;color:var(--color-text);margin:0;font-size:1.25rem;font-weight:700}.patient-walk-in-helper{color:var(--color-text-secondary);margin:0;font-size:.9rem;line-height:1.5}.patient-create form,.patient-walk-in form,.encounter-create form,.condition-create form,.prescription-create form,.allergy-create form,.result-create form,.confirm-identity-modal form,.add-to-record-form-slot form{flex-direction:column;gap:1rem;display:flex}.patient-create fieldset,.patient-walk-in fieldset,.encounter-create fieldset,.condition-create fieldset,.prescription-create fieldset,.allergy-create fieldset,.result-create fieldset,.confirm-identity-modal fieldset,.add-to-record-form-slot fieldset{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-white);flex-direction:column;gap:.75rem;margin:0;padding:1rem 1.25rem 1.1rem;display:flex}.patient-create legend,.patient-walk-in legend,.encounter-create legend,.condition-create legend,.prescription-create legend,.allergy-create legend,.result-create legend,.confirm-identity-modal legend,.add-to-record-form-slot legend{letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary);padding:0 .4rem;font-size:.7rem;font-weight:700}.patient-create label,.patient-walk-in>form>label,.encounter-create label,.condition-create label,.prescription-create label,.allergy-create label,.result-create label,.confirm-identity-modal label,.add-to-record-form-slot label{color:var(--color-text-secondary);margin-bottom:-.4rem;font-size:.8rem;font-weight:600;display:block}.patient-create input[type=text],.patient-create input[type=email],.patient-create input[type=tel],.patient-create input[type=date],.patient-create select,.patient-walk-in input[type=text],.encounter-create input[type=text],.encounter-create input[type=date],.encounter-create input[type=datetime-local],.encounter-create input[type=number],.encounter-create select,.encounter-create textarea,.condition-create input[type=text],.condition-create input[type=date],.condition-create select,.condition-create textarea,.prescription-create input[type=text],.prescription-create input[type=date],.prescription-create select,.prescription-create textarea,.allergy-create input[type=text],.allergy-create input[type=date],.allergy-create select,.allergy-create textarea,.result-create input[type=text],.result-create input[type=datetime-local],.result-create select,.result-create textarea,.confirm-identity-modal input[type=text],.confirm-identity-modal input[type=email],.confirm-identity-modal input[type=tel],.confirm-identity-modal input[type=date],.confirm-identity-modal select,.add-to-record-form-slot input[type=text],.add-to-record-form-slot input[type=date],.add-to-record-form-slot select,.add-to-record-form-slot textarea{width:100%;font:inherit;color:var(--color-text);background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-md);outline:none;padding:.55rem .7rem;font-size:.875rem;transition:border-color .15s,box-shadow .15s}.patient-create textarea,.encounter-create textarea,.condition-create textarea,.prescription-create textarea,.allergy-create textarea,.result-create textarea,.confirm-identity-modal textarea,.add-to-record-form-slot textarea{resize:vertical;min-height:5rem;line-height:1.5;font-family:var(--font-family)}.patient-create input:focus,.patient-create select:focus,.patient-walk-in input:focus,.encounter-create input:focus,.encounter-create select:focus,.encounter-create textarea:focus,.condition-create input:focus,.condition-create select:focus,.condition-create textarea:focus,.prescription-create input:focus,.prescription-create select:focus,.prescription-create textarea:focus,.allergy-create input:focus,.allergy-create select:focus,.allergy-create textarea:focus,.result-create input:focus,.result-create select:focus,.result-create textarea:focus,.confirm-identity-modal input:focus,.confirm-identity-modal select:focus,.confirm-identity-modal textarea:focus,.add-to-record-form-slot input:focus,.add-to-record-form-slot select:focus,.add-to-record-form-slot textarea:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.patient-create form>.btn,.patient-walk-in form>.btn,.encounter-create form>.btn,.condition-create form>.btn,.prescription-create form>.btn,.allergy-create form>.btn,.result-create form>.btn,.add-to-record-form-slot form>.btn{align-self:flex-end;margin-top:.25rem}.field-error{color:var(--color-red);margin:-.4rem 0 0;font-size:.8rem;line-height:1.35}.patients-header,.encounters-header,.conditions-header,.allergies-header,.prescriptions-header,.results-header{border-bottom:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;margin:0 0 1rem;padding:0 0 .5rem;display:flex}.conditions-resolved-header{margin-top:2rem}.patients-header h1,.encounters-header h1,.conditions-header h1,.allergies-header h1,.prescriptions-header h1{letter-spacing:-.02em;color:var(--color-text);margin:0;font-size:1.25rem;font-weight:700}.patients-new-link,.encounters-new-link,.conditions-new-link,.allergies-new-link,.prescriptions-new-link,.results-new-link{border:1.5px solid var(--color-primary);border-radius:var(--radius-md);background:var(--color-white);color:var(--color-primary);letter-spacing:-.01em;white-space:nowrap;align-items:center;gap:.35rem;padding:.4rem .85rem;font-size:.85rem;font-weight:600;text-decoration:none;transition:background .15s,color .15s,box-shadow .15s;display:inline-flex}.patients-new-link:hover,.encounters-new-link:hover,.conditions-new-link:hover,.allergies-new-link:hover,.prescriptions-new-link:hover,.results-new-link:hover{background:var(--color-primary);color:var(--color-white);box-shadow:var(--shadow-hover-primary)}.patients-empty-cta{text-align:center;margin:.5rem 0 0}.patients-empty-cta a{border:1.5px solid var(--color-primary);border-radius:var(--radius-md);background:var(--color-white);color:var(--color-primary);align-items:center;gap:.35rem;padding:.4rem .85rem;font-size:.85rem;font-weight:600;text-decoration:none;transition:background .15s,color .15s,box-shadow .15s;display:inline-flex}.patients-empty-cta a:hover{background:var(--color-primary);color:var(--color-white);box-shadow:var(--shadow-hover-primary)}.patient-search{width:100%;font:inherit;color:var(--color-text);background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-md);outline:none;margin:.5rem 0 1rem;padding:.65rem .9rem;font-size:.95rem;transition:border-color .15s,box-shadow .15s}.patient-search::placeholder{color:var(--color-text-tertiary)}.patient-search:focus{border-color:var(--color-primary);box-shadow:var(--focus-ring)}.visually-hidden,.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.primary-cta{background:var(--color-primary);color:var(--color-white);border:1px solid var(--color-primary);border-radius:var(--radius-md);align-items:center;gap:.3rem;padding:.5rem 1rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:background .15s,box-shadow .15s;display:inline-flex}.primary-cta:hover{background:var(--color-primary-dark);box-shadow:var(--shadow-hover-primary)}.field-type-chip{letter-spacing:.04em;text-transform:uppercase;border-radius:var(--radius-pill);background:var(--color-bg);color:var(--color-text-secondary);padding:.1rem .5rem;font-size:.7rem;font-weight:700}.field-type-chip.field-type-bound{background:var(--color-purple-light);color:var(--color-purple)}.field-type-chip.field-type-number,.field-type-chip.field-type-scale{background:var(--color-green-light);color:var(--color-green)}
