:root{color-scheme:light;--ink:#233d35;--green:#24483e;--cream:#f5f3ec;--line:#d9dfd6;--muted:#596c62;--gold:#a67939;font-family:Georgia,'Times New Roman',serif;background:var(--cream);color:var(--ink)}
*{box-sizing:border-box}body{margin:0}header,footer{padding:24px 5vw;display:flex;justify-content:space-between;align-items:center}header{border-bottom:1px solid var(--line)}.brand{color:var(--green);font-size:25px;text-decoration:none;font-weight:600;letter-spacing:-.6px}.brand span{display:block;font:12px/1.8 system-ui,sans-serif;letter-spacing:1.6px;color:var(--muted);font-weight:400}main{max-width:1240px;margin:auto;padding:0 28px 32px}h1{font-weight:400;font-size:clamp(32px,4vw,48px);margin:8px 0 16px}h2{font-size:29px;font-weight:400;margin:8px 0 16px}h3{font-size:21px;font-weight:400;margin:0 0 16px}p{line-height:1.7}.eyebrow{font:11px system-ui,sans-serif;text-transform:uppercase;letter-spacing:2.1px;color:var(--muted);margin:0 0 14px}.muted,footer{color:var(--muted);font:13px/1.7 system-ui,sans-serif}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.spread{justify-content:space-between}.centered{justify-content:center}button,input,select,textarea,summary,nav{font-family:system-ui,sans-serif;font-size:14px}button{border:1px solid var(--green);background:var(--green);color:#fff;border-radius:8px;min-height:46px;padding:11px 19px;cursor:pointer}button:hover{filter:brightness(1.1)}button:disabled{opacity:.5;cursor:wait}button.secondary{background:#e9eee5;color:var(--green);border-color:var(--line)}button.quiet{background:transparent;color:var(--green);border-color:transparent}button.danger{color:#9b4033}a{color:var(--green)}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}label{display:flex;flex-direction:column;gap:9px;font:13px/1.4 system-ui,sans-serif;margin-bottom:18px}input,select,textarea{width:100%;border:1px solid #bac7bb;background:#fffdf8;color:var(--ink);border-radius:7px;padding:11px;min-height:44px}textarea{resize:vertical}label.check{display:flex;flex-direction:row;align-items:flex-start;font-size:13px;line-height:1.6}input[type=checkbox]{width:19px;min-height:19px;flex:0 0 19px}input[type=range]{padding:0;min-height:25px}form>button{margin-top:4px}.panel{background:#fffdf8;border:1px solid var(--line);border-radius:16px;padding:28px;margin-bottom:22px;box-shadow:0 6px 25px #1d453207}.login{max-width:530px;margin:8vh auto;padding:40px}.login>p{color:var(--muted)}.login form{margin-top:28px}.workspace-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:32px 0 16px}.patient-picker{margin:0;min-width:180px}.workspace-heading .eyebrow{margin-bottom:10px}nav{display:flex;gap:5px;flex-wrap:wrap;border-bottom:1px solid var(--line);margin-bottom:25px;padding-bottom:13px}nav button{background:transparent;color:var(--muted);border-color:transparent;min-height:40px;padding:8px 15px}nav button[aria-current]{background:#e5ebe1;color:var(--green)}.visit-layout{display:grid;grid-template-columns:1.7fr 1fr;gap:22px}.companion{text-align:center;padding:40px 28px}.orb{width:170px;height:170px;border-radius:50%;margin:25px auto 32px;background:radial-gradient(circle at 33% 28%,#b7c9aa,#5c8066 58%,#315746);box-shadow:0 0 0 13px #eef1e8,0 0 0 28px #f6f5ee;display:grid;place-items:center;transition:filter .8s}.orb span{color:#fff9e8;font-size:44px;letter-spacing:-3px;font-weight:400}.orb.live{animation:breathe 5s ease-in-out infinite}.orb.speaking{filter:brightness(1.18)}@keyframes breathe{50%{box-shadow:0 0 0 18px #e7eddf,0 0 0 32px #f4f4eb}}.companion h2{margin-top:40px}.companion p{color:var(--muted)}#voice-status{min-height:30px}#session-setup label{min-width:145px;margin:0;text-align:left}.timer{font:14px system-ui,sans-serif;min-height:20px}.small-controls{margin-top:15px}.small-controls label{width:120px;margin:0;text-align:left}aside p{color:var(--muted);font-size:17px}aside label{margin-top:20px}details{margin-top:20px}summary{cursor:pointer;color:var(--green);padding:5px 0}details form{margin-top:18px}.two-columns{display:grid;grid-template-columns:1fr 1.2fr;gap:26px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.wide{grid-column:1/-1}.entry{background:#fffdf8;border:1px solid var(--line);border-radius:12px;padding:21px;margin:16px 0}.entry p{white-space:pre-wrap;overflow-wrap:anywhere}.entry .source{font:12px/1.7 system-ui,sans-serif;color:var(--muted);overflow-wrap:anywhere}.badge{font:11px system-ui,sans-serif;letter-spacing:.5px;padding:5px 9px;background:#f0e8d9;color:#765526;border-radius:4px}.badge.approved{background:#e4eee3;color:#315d39}.entry .row{margin-top:14px}.entry button{min-height:38px;padding:7px 12px;font-size:12px}#notice:empty{display:none}#notice{font:14px/1.6 system-ui,sans-serif;background:#efe7d8;color:#79542b;border-radius:8px;padding:14px 18px;margin:18px 0}#notice.error{background:#f3e3dd;color:#843f32}#captions{max-height:300px;overflow:auto;margin-top:16px}.caption{padding:12px 0;border-bottom:1px solid var(--line);line-height:1.7}.caption small{display:block;color:var(--muted);font:11px system-ui,sans-serif;text-transform:uppercase;letter-spacing:1px}audio{max-width:100%;width:100%}iframe{width:100%;border:0;border-radius:12px}#voice-audio{display:none}dialog{max-width:480px;width:calc(100% - 32px);padding:30px;border:1px solid var(--line);border-radius:16px;background:#fffdf8;color:var(--ink)}dialog::backdrop{background:#17382c80}footer{border-top:1px solid var(--line);font-size:12px}hr{border:0;border-top:1px solid var(--line);margin:26px 0}[hidden]{display:none!important}.simple header,.simple nav,.simple .workspace-heading,.simple aside,.simple details,.simple #logout{display:none}.simple .visit-layout{display:block;max-width:800px;margin:25px auto}.simple .companion{min-height:65vh}.simple #exit-simple{display:block}.simple footer{justify-content:center;gap:30px}.simple #notice{max-width:800px;margin:20px auto}@media(max-width:700px){main{padding:0 16px 24px}header,footer{padding:20px}.workspace-heading{display:block;padding-top:25px}.workspace-heading>.row{margin-top:22px}.patient-picker{flex:1}nav{gap:0}nav button{font-size:12px;padding:8px 10px}.visit-layout,.two-columns,.form-grid{grid-template-columns:1fr}.panel{padding:23px}.companion{padding:30px 16px}.orb{width:140px;height:140px}.companion h2{font-size:27px}.row.centered>button{flex:1}#session-setup label{flex:1}.login{padding:28px;margin:35px auto}.wide{grid-column:auto}}@media(prefers-reduced-motion:reduce){.orb.live{animation:none}.orb{transition:none}}
.password-row{display:flex;gap:8px;align-items:center;margin-bottom:18px}.password-row input{min-width:0;flex:1}.password-row button{flex:0 0 auto}
@media(max-width:700px){header{flex-wrap:wrap;gap:12px}#caregiver-account{width:100%;justify-content:space-between;gap:4px}#caregiver-account .muted{font-size:12px}nav button{min-height:44px}.password-row{flex-wrap:wrap}.password-row input{flex:1 1 120px}.password-row button{flex:0 1 auto}}
.simple #live-controls,.simple #session-setup,.simple #discard-practice,.simple #practice-status{display:none!important}.simple #captions-panel{display:block}.simple.text-first .visit-aside{display:block}.simple.text-first .visit-aside>*{display:none}.simple.text-first .visit-aside #typing-panel{display:block}
