:root{--forest:#2d4a3e;--dark:#0e2418;--clay:#c4714e;--sage:#deeee6;--paper:#f7f6f2;--ink:#24352c;--line:#c5d6cc;--quiet:#4a6258}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.55 Calibri,"Segoe UI",Arial,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;font-size:16px;cursor:pointer;border:1px solid var(--line);border-radius:9px;background:white;color:var(--forest);padding:10px 16px}button:hover{background:var(--sage)}button:disabled{opacity:.45;cursor:default}button:focus-visible,a:focus-visible{outline:3px solid var(--clay);outline-offset:4px}h1,h2,h3{font-family:Georgia,"Noto Serif SC",serif;line-height:1.2;margin:0}h1{font-size:clamp(30px,4vw,48px)}h2{font-size:26px}h3{font-size:21px}p{margin:.5rem 0}.topbar{display:flex;justify-content:space-between;align-items:center;padding:18px max(24px,calc((100vw - 1360px)/2));background:white;border-bottom:1px solid var(--line);gap:16px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--forest);font-family:Georgia,serif;font-size:21px}.brand strong{font-weight:normal}.brand img{object-fit:contain}.header-actions{display:flex;gap:8px}main{max-width:1360px;margin:auto;padding:30px 28px}.intro{max-width:1000px;margin-bottom:22px}.eyebrow{font-size:15px;letter-spacing:.06em;text-transform:uppercase;color:var(--quiet);font-weight:bold}.disclaimer{font-size:15px;color:var(--quiet)}.setting-tabs{display:flex;gap:10px;margin:20px 0 14px}.setting-tabs button{font-size:19px;font-weight:bold;min-width:165px}.setting-tabs [aria-pressed=true]{background:var(--forest);color:white;border-color:var(--forest)}.chapters{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:26px}.chapters button{font-size:15px;padding:7px 10px}.chapters [aria-current=step]{border-color:var(--clay);background:#e8c4b0;color:var(--dark)}.stage-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px}.stage-badge{border:1px solid var(--forest);background:var(--sage);padding:8px 12px;border-radius:8px;font-size:15px;max-width:310px}.stage-badge.practice{border-style:dashed}.stage-badge.workplace{background:#f4e3d9;border-color:var(--clay)}.experience{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(310px,1fr);gap:22px;align-items:start}.story-panel,.memory-panel{border:1px solid var(--line);border-radius:16px;background:white;overflow:hidden}.scene{height:295px;position:relative;background:linear-gradient(#edf4ef 0 72%,#d4dfd5 72%);overflow:hidden}.scene.home{background:linear-gradient(#f6eee2 0 72%,#ddd3c4 72%)}.scene.practice{background:linear-gradient(#eaf0ee 0 72%,#cfdad5 72%)}.scene-title{position:absolute;top:14px;left:18px;max-width:85%;font-size:15px;background:#ffffffdd;padding:5px 9px;border-radius:5px;z-index:2}.room-window{position:absolute;top:50px;left:7%;width:100px;height:105px;border:7px solid #c6d1ca;border-radius:7px;background:linear-gradient(130deg,#b9d4d4,#e7f4ec)}.room-window:after{content:'';position:absolute;left:43%;height:100%;width:5px;background:#c6d1ca}.room-plant{position:absolute;right:5%;bottom:22%;width:35px;height:50px;background:#c4714e;border-radius:3px 3px 12px 12px}.room-plant:before{content:'✦';position:absolute;top:-54px;left:-8px;font-size:70px;color:#608467}.scene-people{position:absolute;inset:65px 14px 20px;display:flex;align-items:flex-end;justify-content:center;gap:clamp(8px,2vw,24px)}.person{width:100px;max-width:22%;position:relative;text-align:center;flex-shrink:0}.avatar{height:145px;position:relative;width:70px;margin:auto}.head{position:absolute;top:10px;left:19px;width:34px;height:39px;background:#d4a17d;border-radius:45% 45% 43% 43%;border-top:8px solid #33352e;z-index:3}.hair{position:absolute;top:8px;left:13px;width:42px;height:55px;background:#33352e;border-radius:45%;z-index:1}.torso{position:absolute;top:48px;left:12px;width:46px;height:60px;background:var(--forest);border-radius:16px 16px 7px 7px;z-index:2}.arm{position:absolute;top:53px;width:11px;height:52px;background:#d4a17d;border-radius:8px;z-index:1;transform-origin:top}.arm.left{left:6px;transform:rotate(8deg)}.arm.right{right:6px;transform:rotate(-8deg)}.leg{position:absolute;top:103px;width:16px;height:38px;background:#30423a;border-radius:0 0 5px 5px}.leg.left{left:17px}.leg.right{right:17px}.person.nurse .torso{background:#548398}.person.coordinator .torso{background:#a97753}.person.manager .torso{background:#63706a}.person.recipient .head{border-color:#b8b6ae}.person.recipient .hair{background:#b8b6ae}.person.recipient .torso{background:#8c7792}.person.supporter .torso{background:#a97663}.person-name{font-size:14px;font-weight:bold;line-height:1.2;margin-top:3px;overflow-wrap:anywhere}.person-role{font-size:11px;line-height:1.2;color:var(--quiet)}.remote{position:relative;border:2px dashed #a4b8ac;border-radius:10px;padding-top:4px}.remote .avatar{transform:scale(.78);transform-origin:bottom;height:135px}.remote:before{content:'↗';position:absolute;top:2px;right:5px;color:var(--quiet)}.voice-wave{position:absolute;right:20px;top:52px;padding:8px;background:white;border-radius:20px;border:1px solid var(--line);display:flex;gap:3px;align-items:center;height:34px}.voice-wave i{width:3px;background:var(--clay);height:12px;border-radius:2px;animation:pulse 1.3s infinite alternate}.voice-wave i:nth-child(even){height:20px;animation-delay:.3s}.caption-panel{padding:20px 24px}.speaker{color:var(--clay);font-size:17px;font-weight:bold}.caption{font-size:23px;line-height:1.45;margin:8px 0 14px}.physical-action{font-size:17px;color:var(--quiet)}.briefing{margin:0 22px 22px;background:var(--sage);border-left:4px solid var(--forest);padding:14px 18px}.transition-card{margin:0 22px 22px;padding:20px;background:#f4e3d9;border:1px solid var(--clay);border-radius:10px}.memory-head{display:flex;gap:12px;align-items:center;background:var(--forest);color:white;padding:18px}.memory-head p{font-size:14px;margin:3px 0 0}.memory-mark{font-size:32px}.memory-panel #memoryBody{padding:17px}.empty-memory{padding:12px 6px;color:var(--quiet)}.task-card{border:1px solid var(--line);border-left:4px solid var(--forest);padding:12px;border-radius:7px;margin-bottom:13px}.task-card.pending{border-left-color:var(--clay)}.task-card h4{margin:0 0 8px;font-size:18px}.task-card p{font-size:16px;overflow-wrap:anywhere}.task-state{display:inline-block;background:var(--sage);padding:3px 8px;border-radius:5px;font-size:14px;font-weight:bold}.pending .task-state{background:#f4e3d9}.source-line{font-size:14px!important;color:var(--quiet)}.record{padding:9px;border:1px dashed var(--line);border-radius:5px;margin-top:10px}.record p{font-size:15px}.event-list{padding-left:18px;font-size:14px;color:var(--quiet)}.event-list li{margin:8px 0}.player{margin:22px 0;padding:18px 22px;background:white;border:1px solid var(--line);border-radius:13px}.progress-row{display:flex;align-items:center;gap:18px;font-size:16px}progress{flex:1;width:100%;height:9px;accent-color:var(--clay)}.controls{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}.primary{background:var(--forest);color:white;border-color:var(--forest)}.primary:hover{background:#4a6258}.hint{font-size:14px;color:var(--quiet);margin:10px 0 0}.service-map{margin:38px 0 20px}.service-map h2{font-size:24px;margin-bottom:15px}#mapContent{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.map-card{padding:18px;background:var(--sage);border-radius:9px}.map-card h3{font-size:20px}.map-card p{font-size:16px}footer{padding:24px;text-align:center;font-size:14px;border-top:1px solid var(--line);color:var(--quiet)}dialog{max-width:800px;width:calc(100% - 30px);border:1px solid var(--line);border-radius:14px;padding:26px;color:var(--ink);max-height:85vh}dialog::backdrop{background:#0e241888}.dialog-head{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:20px}dialog h3{margin:22px 0 10px}dialog p,dialog li{font-size:17px}dialog a{color:var(--forest);text-decoration-thickness:2px}.source-item{padding:12px 0;border-bottom:1px solid var(--line)}[hidden]{display:none!important}@keyframes pulse{to{transform:scaleY(.55)}}
@media(max-width:900px){.experience{grid-template-columns:1fr}.memory-panel{width:100%}.scene{height:280px}.stage-heading{align-items:flex-start}.stage-badge{font-size:13px}#mapContent{grid-template-columns:1fr}.intro{margin-bottom:16px}.topbar{padding:13px 18px}}
@media(max-width:500px){main{padding:22px 14px}.brand{font-size:17px;gap:7px}.brand img{width:33px;height:33px}.header-actions{gap:4px}.header-actions button{padding:7px 9px;font-size:13px}.stage-heading{display:block}.stage-badge{display:inline-block;margin-top:10px;max-width:none}.caption-panel{padding:17px}.caption{font-size:22px}.scene{height:270px}.person{width:80px}.person-role{font-size:10px}.person-name{font-size:12px}.avatar{transform:scale(.85);transform-origin:bottom}.scene-people{gap:5px;left:5px;right:5px}.setting-tabs button{min-width:0;flex:1;font-size:17px}.controls button{padding:9px 11px}.player{padding:16px}.chapters button{font-size:14px}.room-window{width:75px}.intro .eyebrow{font-size:12px}}
.narrator-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.narrator-row .speaker{margin:0}.narrator-row #read{min-height:44px;padding:8px 13px;border-color:var(--forest)}.narrator-row #read[aria-pressed=true]{background:var(--forest);color:white}.caption-panel #voiceStatus{margin:7px 0 13px}
.support-moment{margin:0 22px 22px;padding:18px;border:1px solid var(--line);border-left:5px solid var(--clay);border-radius:8px;background:#f5faf7}.support-question{font-weight:bold}.support-answer{font-size:20px}.source-detail{margin-top:12px;font-size:15px}.source-detail summary{cursor:pointer;min-height:44px}.record-reuse{font-size:16px;border-left:3px solid var(--forest);padding-left:10px}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important}}
.capture-flow{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}.capture-step{padding:12px;border:1px solid var(--line);border-radius:8px;background:white;animation:arrive .45s ease both}.capture-step:nth-child(2){animation-delay:.3s}.capture-step:nth-child(3){animation-delay:.6s}.capture-step:nth-child(4){animation-delay:.9s}.capture-step p{font-size:16px;overflow-wrap:anywhere}.waiting-context{padding:12px;background:#f4e3d9;border-radius:8px;margin:10px 0}.team-update,.practice-flow{padding:12px;background:var(--sage);border-radius:7px;font-size:16px}@keyframes arrive{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media(max-width:500px){.capture-flow{grid-template-columns:1fr}}
.open-ear-headset{position:absolute;top:29px;left:12px;width:50px;height:25px;z-index:5;pointer-events:none}.headset-band{position:absolute;left:0;top:0;width:48px;height:18px;border:3px solid #26342e;border-top:0;border-radius:0 0 14px 14px}.headset-pad{position:absolute;right:0;top:4px;width:8px;height:10px;border-radius:4px;background:var(--clay)}.headset-mic{position:absolute;right:-8px;top:12px;width:19px;border-bottom:3px solid #26342e;transform:rotate(12deg)}.scene-voice-input{position:absolute;left:14px;right:14px;bottom:10px;background:#ffffffed;border:1px solid var(--clay);border-radius:9px;padding:9px 12px;z-index:7;max-height:105px;overflow:auto;font-size:14px}.scene-voice-input p{margin:3px 0;font-size:15px}.voice-capture-scene{height:395px}.voice-capture-scene .scene-people{bottom:118px}.remote-support-route{position:absolute;bottom:4px;left:8px;right:8px;font-size:13px;text-align:center;background:#ffffffed;border-radius:4px;color:var(--forest)}@media(max-width:500px){.voice-capture-scene{height:390px}.scene-voice-input{font-size:13px}.scene-voice-input p{font-size:14px}.remote-support-route{font-size:11px}}
.scene.with-phone{height:540px;padding-right:226px}.with-phone .scene-people{right:226px;gap:8px;bottom:35px;top:85px;flex-wrap:wrap;align-content:center}.with-phone .person{max-width:44%;width:90px}.with-phone .room-plant{right:235px}.with-phone .voice-wave{right:235px}.with-phone .scene-title{right:225px;max-width:none}.with-phone.voice-capture-scene{height:640px}.with-phone.voice-capture-scene .scene-people{bottom:135px}.with-phone .scene-voice-input,.with-phone .remote-support-route{right:225px}.scene-phone{position:absolute;right:12px;top:18px;width:202px;max-height:calc(100% - 36px);overflow:auto;border:5px solid #34423c;border-radius:22px;background:#fafcfb;padding:10px 11px;box-shadow:0 6px 18px #122b1820;z-index:4}.phone-speaker{height:4px;width:38px;border-radius:4px;background:#34423c;margin:0 auto 10px}.phone-context,.phone-mode,.phone-reference,.phone-handsfree{font-size:12px;line-height:1.35;color:var(--quiet)}.phone-owner{font-size:16px}.phone-heading{font-family:Calibri,"Segoe UI",sans-serif;font-size:17px;margin-top:10px}.phone-state{font-size:13px;font-weight:bold;padding:5px 7px;background:var(--sage);border-radius:5px}.scene-phone[data-phase=pending] .phone-state,.scene-phone[data-phase=draft] .phone-state{background:#f4e3d9}.phone-text{font-size:14px;line-height:1.45}.phone-target{font-size:13px}.phone-handsfree{padding-top:8px;border-top:1px solid var(--line)}.voice-active .headset-pad{box-shadow:0 0 0 3px #fff,0 0 0 5px var(--clay);animation:headset-signal 1.6s ease-in-out infinite}.voice-active .arm{animation:none}@keyframes headset-signal{50%{box-shadow:0 0 0 3px #fff,0 0 0 8px #c4714e55}}
@media(min-width:1100px){.scene.with-phone{height:475px}.scene.with-phone.voice-capture-scene{height:555px}}
@media(min-width:651px){.scene.with-phone{height:650px}.scene.with-phone.voice-capture-scene{height:690px}.scene-phone{max-height:calc(100% - 36px)}}
@media(max-width:650px){.scene.with-phone{height:auto;min-height:320px;padding:0 0 12px}.with-phone .scene-people{position:relative;inset:auto;height:245px;padding:70px 8px 10px;flex-wrap:nowrap;align-content:normal;align-items:flex-end}.with-phone .person{max-width:23%;width:82px}.with-phone .scene-title{right:12px}.with-phone .room-plant{right:14px;top:150px;bottom:auto}.with-phone .voice-wave{right:18px}.with-phone .scene-voice-input,.with-phone .remote-support-route{position:relative;inset:auto;margin:8px 12px;max-height:none}.scene-phone{position:relative;inset:auto;width:calc(100% - 28px);max-width:340px;max-height:none;margin:16px auto 0;border-width:4px;padding:12px 16px}.phone-text{font-size:16px}.phone-context,.phone-mode,.phone-reference,.phone-handsfree{font-size:13px}.phone-heading{font-size:19px}.phone-state{font-size:15px}}
@media(max-width:650px){.with-phone.voice-capture-scene .scene-people{inset:auto}}
.phone-related{border-top:1px solid var(--line);padding-top:8px;font-size:13px;font-weight:bold}
#individualPracticeLink{display:inline-block;min-height:44px;padding:10px 0;color:var(--forest);font-weight:bold;text-underline-offset:3px}
/* One scene and one work card. Evidence stays behind explicit disclosure. */
main{max-width:1120px;padding:20px 24px 130px}.topbar{padding:12px max(20px,calc((100vw - 1120px)/2))}.intro{margin-bottom:12px}h1{font-size:clamp(28px,3.2vw,40px)}.intro p{margin:6px 0}.intro .eyebrow{font-size:12px}.setting-tabs{margin:12px 0 8px}.setting-tabs button{font-size:16px;min-width:140px;min-height:44px}.module-tabs{display:flex;gap:8px;flex-wrap:wrap}.module-tabs button{min-height:44px;font-weight:bold}.module-tabs [aria-pressed=true]{background:var(--forest);color:white}.practice-link{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:6px 0}.practice-link .hint{margin:0}.chapters{margin:12px 0;gap:6px}.chapters button{min-height:44px}.stage-heading{margin:10px 0}.stage-heading .eyebrow{display:none}.stage-heading h2{font-size:23px}.stage-badge{font-size:12px;padding:5px 8px}.experience{display:block}.story-panel{border-radius:12px}.scene,.scene.with-phone,.scene.with-phone.voice-capture-scene{height:auto;min-height:0;padding:0;display:flex;flex-direction:column;overflow:visible}.scene-title,.room-window,.room-plant,.voice-wave,.scene-voice-input,.remote-support-route{display:none}.scene .scene-people,.scene.with-phone .scene-people,.scene.with-phone.voice-capture-scene .scene-people{position:relative;inset:auto;min-height:200px;height:auto;flex-wrap:nowrap;align-items:flex-end;align-content:normal;gap:20px;padding:18px 12px 12px}.scene .person,.scene.with-phone .person{width:110px;max-width:23%;}.person-name{font-size:16px}.person-role{font-size:12px}.scene-phone{position:relative;inset:auto;width:auto;max-width:none;max-height:none;overflow:visible;border:0;border-top:1px solid var(--line);border-radius:0;background:white;box-shadow:none;padding:12px 20px;margin:0;display:grid;grid-template-columns:auto 1fr;gap:4px 14px;align-items:start}.phone-heading{margin:0;font-size:17px;grid-column:2;grid-row:1}.phone-owner{font-size:17px}.phone-state{grid-column:1;font-size:13px;margin:0}.phone-text,.phone-target,.phone-related{grid-column:2;font-size:17px;line-height:1.4;margin:0}.phone-reference{display:none}.phone-related{font-size:14px;margin-top:4px}.caption-panel{padding:14px 20px;border-top:1px solid var(--line)}.caption{font-size:22px;margin:5px 0;line-height:1.4}.speaker{font-size:13px}.physical-action,#voiceStatus{display:none}.scene-details summary,.memory-panel>summary,.service-map>summary{cursor:pointer;padding:12px 16px;min-height:44px;font-size:15px;color:var(--forest);font-weight:bold}.scene-details{border-top:1px solid var(--line)}#fullCaption{padding:0 20px;font-size:17px}.memory-panel{margin-top:10px;border-radius:10px}.scene-details[open],.memory-panel[open]{background:#fafcfb}.scene-details .physical-action{display:block;padding:0 20px}.player{position:fixed;bottom:0;left:0;right:0;z-index:20;max-width:1120px;margin:0 auto;padding:10px 20px;border-radius:12px 12px 0 0;box-shadow:0 -3px 16px #122b1817;background:#fffffffa}.player .controls{margin-top:8px;flex-wrap:nowrap}.player button{min-height:44px}.player #play{flex:1}.player .hint{display:none}#audioControls{display:flex}.player #read{font-size:14px;padding:8px}.progress-row{gap:12px;font-size:13px}.service-map{margin:12px 0}.service-map #mapContent{padding-top:12px}footer{padding-bottom:140px}
@media(max-width:650px){main{padding:14px 14px 135px}.topbar{padding:10px 14px}.intro #tagline{display:none}.intro #introText{font-size:16px;line-height:1.4}.disclaimer{font-size:12px}.setting-tabs button{font-size:15px;flex:1;min-width:0;padding:8px}.module-tabs{flex-wrap:nowrap}.module-tabs button{flex:1;font-size:14px;padding:8px}.practice-link{gap:0;margin:4px 0}.practice-link .hint{font-size:12px}.chapters{display:none}.stage-heading{display:block}.stage-heading h2{font-size:21px}.stage-badge{margin-top:6px}.scene .scene-people,.scene.with-phone .scene-people{min-height:170px;padding:8px;gap:6px}.scene .person,.scene.with-phone .person{width:80px;max-width:24%}.avatar{transform:scale(.85);height:132px}.person-name{font-size:13px}.person-role{font-size:10px}.scene-phone{padding:12px 14px;grid-template-columns:1fr;gap:5px}.phone-heading,.phone-state,.phone-text,.phone-target,.phone-related{grid-column:1;grid-row:auto}.phone-owner{font-size:14px}.phone-heading{font-size:16px}.phone-text{font-size:16px}.caption-panel{padding:12px 14px}.caption{font-size:22px}.player{padding:8px 10px}.player .controls{gap:5px}.player button{font-size:14px;padding:8px}.player #previous,.player #next{font-size:13px}.player #read{font-size:12px}.stage-heading .stage-badge{max-width:100%}#mapContent{grid-template-columns:1fr}}
/* Keep the short explanation before the scene, and remove duplicate navigation. */
body[data-route=support] .chapters,body[data-route=prepare] .chapters{display:none}.topbar .brand{white-space:nowrap}.header-actions button{white-space:nowrap}.caption-panel{border-top:0;border-bottom:1px solid var(--line)}main{padding-bottom:20px}footer{padding:16px 20px 125px}.scene .scene-people{min-height:170px}.head:after{content:'· ·';position:absolute;top:3px;left:7px;font:bold 17px/1 Arial;color:#24352c}.head:before{content:'';position:absolute;bottom:6px;left:11px;width:12px;height:5px;border-bottom:2px solid #7b4a37;border-radius:50%;z-index:4}.player #play{font-size:16px}.player .controls{align-items:stretch}.player #storageNotice:not([hidden]){display:block;font-size:12px;margin:4px 0}
@media(max-width:650px){.topbar .brand{font-size:15px}.brand img{width:24px;height:24px}.header-actions button{font-size:12px;padding:8px}.player #play{font-size:14px}footer{padding-bottom:125px}.scene .scene-people{min-height:160px}.intro h1{font-size:28px}.caption{font-size:22px}}
body[data-route=full] .chapters{display:flex}.player #play{white-space:nowrap}.player #storageNotice{max-height:45px;overflow:auto}
.full-route{font-size:13px;padding:8px 10px;margin-top:7px;min-height:44px}.full-route[aria-pressed=true]{background:var(--sage);border-color:var(--forest)}#audioControls{position:relative}#voiceStatus{display:block;position:absolute;right:0;bottom:48px;white-space:nowrap;font-size:11px;background:white;padding:2px 6px;margin:0;border-radius:4px}.phone-reviewer{grid-column:2;font-size:14px;margin:3px 0}html{scroll-padding-bottom:130px}summary,button,a{scroll-margin-bottom:140px}.player{background:white}
@media(max-width:650px){body[data-route=full] .chapters{display:flex;flex-wrap:nowrap;overflow-x:auto}.chapters button{flex-shrink:0}.phone-reviewer{grid-column:1}.player .controls{margin-top:12px}.full-route{font-size:12px;margin-top:4px}}
#audioControls{position:static}#voiceStatus{position:static;white-space:normal;font-size:13px;grid-column:1/-1;text-align:right;padding:0;margin:0}.player .controls{display:grid;grid-template-columns:auto 1fr auto auto}.player #audioControls{display:contents}.player #read{grid-column:4;grid-row:1}.player #voiceStatus{grid-row:2}.player{padding-bottom:max(10px,env(safe-area-inset-bottom))}.phone-reviewer{color:var(--quiet)}
