:root{color-scheme:light;--ink:#302b33;--muted:#746d77;--brand:#65446b;--brand-dark:#4b3855;--paper:#fffcf7;--bg:#f3eee7;--line:#e5dcd8;--rose:#b46d60;--green:#25675c;--danger:#a12f47;font:16px/1.55 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:var(--bg);color:var(--ink)}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{touch-action:manipulation}button{border:0;border-radius:10px;padding:11px 17px;min-height:44px;cursor:pointer;font-weight:650}button:disabled{opacity:.5;cursor:wait}a{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #b084bb;outline-offset:4px}input,select,textarea{display:block;width:100%;border:1px solid #cfc3cc;border-radius:9px;background:#fff;padding:11px;color:var(--ink);min-height:46px}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid #96759d;outline-offset:1px}input[readonly]{background:#f2edf2;color:#65566b}label{display:grid;gap:6px;font-size:.88rem;font-weight:650}form{display:grid;gap:16px}.primary{background:var(--brand);color:#fff}.primary:hover{background:var(--brand-dark)}.secondary{background:#ece2ee;color:var(--brand-dark)}.quiet{background:transparent;color:var(--brand)}.text-button{background:transparent;color:var(--brand);padding-inline:0;text-decoration:underline;text-underline-offset:4px}.muted{color:var(--muted)}.small{font-size:.8rem}.error{color:var(--danger)}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.15}h1{font:500 clamp(2rem,5vw,3.3rem)/1.1 Georgia,serif;letter-spacing:-.04em;margin-bottom:14px}h2{font:500 1.7rem/1.15 Georgia,serif;margin-bottom:16px}h3{font-size:1rem}.eyebrow{display:block;font-size:.67rem;letter-spacing:.16em;font-weight:750;color:var(--rose);margin-bottom:12px}.card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:26px;box-shadow:0 5px 24px #3b273405}.topbar{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px max(24px,calc((100vw - 1200px)/2));border-bottom:1px solid var(--line);background:var(--paper)}.brand{text-decoration:none;font:500 1.65rem Georgia,serif;letter-spacing:-.04em;color:var(--brand)}.brand span{font-style:italic}.brand small{display:block;font:700 .55rem system-ui;letter-spacing:.24em;margin-top:3px;color:var(--muted)}#account{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:.8rem;justify-content:flex-end}.login-wrap{min-height:calc(100dvh - 90px);display:grid;place-items:center;padding:35px 18px;background:radial-gradient(ellipse at 10% 20%,#e8dedf70,transparent 65%),radial-gradient(ellipse at 95% 85%,#d5e0d470,transparent 70%)}.login-card{width:min(100%,480px);padding:36px}.login-card h1{font-size:2.7rem}.login-card>p{margin-bottom:28px}.login-foot{border-top:1px solid var(--line);font-size:.72rem;color:var(--muted);padding-top:18px;margin-top:28px;margin-bottom:0!important}#loginMessage{font-size:.87rem;margin:18px 0 0;overflow-wrap:anywhere}#mfaView h2{margin-top:28px}#mfaView form{margin-top:18px}#mfaQr{display:block;max-width:100%;height:auto;margin:20px auto;background:white;padding:10px}#mfaSecret{display:block;overflow-wrap:anywhere;padding:12px;font-size:.85rem}.workspace{max-width:1200px;margin:38px auto 80px;padding:0 24px}.page-heading,.detail-heading,.section-heading,.directory-meta{display:flex;align-items:center;justify-content:space-between;gap:18px}.page-heading{margin-bottom:28px}.page-heading p{margin-bottom:0}.directory{margin-bottom:34px}#searchForm{display:flex;gap:18px;align-items:end}#searchForm>label:first-child{flex:1}.check{display:flex;gap:10px;align-items:flex-start;font-weight:500}.check input{width:20px;height:20px;min-height:0;flex:0 0 auto;margin-top:2px}#searchForm .check{min-height:44px;align-items:center;font-size:.85rem}.directory-meta{font-size:.8rem;margin-top:20px}.directory-meta p{margin-bottom:0}.patient-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.patient-row{padding:16px;display:flex;justify-content:space-between;align-items:center;gap:12px;text-align:left;background:#f3edf1;border:1px solid transparent;min-width:0}.patient-row span{min-width:0}.patient-row strong,.patient-row small{display:block;overflow-wrap:anywhere}.patient-row small{color:var(--muted);font-size:.75rem;font-weight:450;margin-top:4px}.patient-row[aria-current=true]{border-color:var(--brand);background:#e8dfea}.patient-row i{font-style:normal;font-size:1.3rem;color:var(--brand)}.empty{padding:20px 0;color:var(--muted);grid-column:1/-1;font-size:.9rem}.detail-heading{margin-bottom:20px}.detail-heading h2{font-size:2rem;margin-bottom:5px}.detail-heading p{margin-bottom:0}.actions{display:flex;gap:10px;flex-wrap:wrap}#detail>.card{margin-bottom:22px}summary{cursor:pointer;font-weight:650;min-height:36px}.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:20px}.profile-grid div{min-width:0}.profile-grid dt{font-size:.75rem;font-weight:700;color:var(--muted);margin-bottom:5px}.profile-grid dd{margin:0;font-size:.9rem;white-space:pre-wrap;overflow-wrap:anywhere}.clinical-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:22px;margin-bottom:22px;align-items:start}.fields,.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-grid .wide{grid-column:1/-1}.note-editor .section-heading{margin-bottom:20px}.section-heading h2{margin-bottom:0}.section-heading .eyebrow{margin-bottom:7px}.notice{font-size:.85rem;padding:13px;border-radius:9px;background:#faf0d8;color:#795a22}.tasks form{border-bottom:1px solid var(--line);padding-bottom:23px;margin-top:20px}.task{padding:17px 0;border-bottom:1px solid var(--line);font-size:.9rem}.task span{white-space:pre-wrap;overflow-wrap:anywhere}.task.done span{text-decoration:line-through;color:var(--muted)}.task small{display:block;font-size:.73rem;color:var(--muted);margin:6px 0 0 30px}.note{border-top:1px solid var(--line);padding:22px 0}.note:first-child{margin-top:18px}.note:last-child{padding-bottom:0}.note-head{display:flex;justify-content:space-between;align-items:center;gap:15px}.note-head h3{margin-bottom:5px}.badge{padding:4px 9px;font-size:.68rem;border-radius:50px;background:#f2e3ba;color:#68531b;font-weight:700}.badge.signed{background:#e1eee7;color:var(--green)}.note-body{font-size:.9rem;white-space:pre-wrap;overflow-wrap:anywhere}.note-body dt{font-size:.75rem;font-weight:700;color:var(--muted);margin-top:15px}.note-body dd{margin:4px 0 0}.note-footer{margin-top:16px;display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.note-footer small{font-size:.7rem;color:var(--muted)}dialog{width:min(820px,calc(100% - 28px));max-height:90dvh;border:1px solid var(--line);border-radius:18px;padding:28px;color:var(--ink);background:var(--paper)}dialog::backdrop{background:#30233485;backdrop-filter:blur(4px)}dialog .section-heading{margin-bottom:8px}.audit-section{margin-top:20px}.audit-row{font-size:.8rem;padding:12px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}#toast{position:fixed;bottom:max(20px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:min(560px,calc(100% - 30px));padding:15px 20px;border-radius:12px;color:#fff;background:var(--brand-dark);box-shadow:0 8px 30px #1b142535;z-index:20;font-size:.9rem}
@media(max-width:760px){.workspace{padding:0 16px;margin-top:26px}.topbar{padding:15px 18px;align-items:flex-start;min-height:84px}.brand{font-size:1.4rem}#account{gap:2px;max-width:55%}#accountEmail{overflow-wrap:anywhere;font-size:.65rem}#logout{font-size:.72rem;min-height:36px;padding:6px}.page-heading,.detail-heading{align-items:flex-start;flex-direction:column}.page-heading>.primary{width:100%}.card{padding:21px;border-radius:14px}.clinical-grid{grid-template-columns:1fr}.patient-list{grid-template-columns:1fr}#searchForm{display:grid;grid-template-columns:1fr auto;gap:12px}#searchForm>label:first-child{grid-column:1/-1}.fields,.form-grid,.profile-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.login-card{padding:28px}.login-card h1{font-size:2.35rem}.section-heading{align-items:flex-start}dialog{padding:20px}.note-head{align-items:flex-start}.directory-meta{gap:8px}.directory-meta button{padding:7px;font-size:.75rem}.actions>button{flex:1}.note-editor .actions{display:grid;grid-template-columns:1fr}.note-editor .actions>button{width:100%}}
@media(prefers-reduced-motion:no-preference){button{transition:background .15s,border-color .15s}dialog{animation:appear .15s ease-out}@keyframes appear{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}}
#taskList{max-height:26rem;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
