:root{font-family:Segoe UI,sans-serif;color:#262a27;background:#e9e5da;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:0;min-height:100vh}html,body{touch-action:manipulation}button{font:inherit}.title-screen{min-height:100vh;display:grid;place-items:center;padding:3rem;background:radial-gradient(ellipse at 50% 42%,#f3efe5 0,#e9e5da 68%,#d9d5cb)}.title-card{width:min(560px,100%);padding:3.5rem 4rem 2.5rem;background:#f5f1e8;border:2px solid #303530;border-radius:18px;box-shadow:10px 10px #303530;text-align:center}.eyebrow{margin:0 0 1.4rem;font-size:.72rem;font-weight:700;letter-spacing:.16em;color:#69766a}h1{margin:0;font:700 clamp(3.5rem,10vw,5.5rem)/1 "Segoe UI",sans-serif;letter-spacing:-.07em}.tagline{margin:1.2rem 0 2.4rem;color:#596159}.title-actions{display:grid;gap:1rem;justify-items:center}.primary-button{min-width:220px;padding:1rem 2rem;border:2px solid #303530;border-radius:9px;background:#97a994;box-shadow:4px 4px #303530;color:#1e241f;font:700 1rem Segoe UI,sans-serif;letter-spacing:.12em;cursor:pointer}.primary-button:hover{transform:translate(-1px,-1px);box-shadow:5px 5px #303530}.text-button{padding:.5rem 1rem;border:0;background:transparent;color:#39433b;cursor:pointer}.save-status{margin:1.8rem 0 0;color:#72786f;font-size:.78rem}.game-canvas{display:block;width:100vw;height:100vh;touch-action:none}.ward-hud{position:fixed;inset:0;z-index:2;pointer-events:none;color:#303630}.shift-clock{position:absolute;top:22px;left:24px;display:grid;gap:2px;min-width:116px;padding:10px 14px;background:#f3f0e7;border:2px solid #343a34;border-radius:8px;box-shadow:4px 4px #343a34}.resource-card{position:absolute;left:24px;bottom:22px;display:grid;gap:7px;width:185px;padding:10px 12px;border:2px solid #343a34;border-radius:8px;background:#f3f0e7;box-shadow:4px 4px #343a34}.meter-row{display:grid;grid-template-columns:62px 1fr;align-items:center;gap:8px;font-size:.62rem;font-weight:700;letter-spacing:.08em}.meter-track{height:9px;overflow:hidden;border:1px solid #596158;border-radius:5px;background:#d8d8ce}.meter-track i{display:block;width:var(--meter-value, 100%);height:100%;border-radius:inherit;background:#8fa28e;transition:width .12s linear}.meter-row[data-meter-row=morale] .meter-track i{background:#9faea3}.meter-row[data-meter-row=stamina] .meter-track i{background:#c3ad78}.meter-row.meter-muted{display:none}.task-toggle{position:absolute;right:24px;bottom:23px;display:flex;align-items:center;gap:10px;padding:9px 12px;border:2px solid #343a34;border-radius:7px;background:#f3f0e7;box-shadow:4px 4px #343a34;font-size:.68rem;font-weight:700;letter-spacing:.08em;pointer-events:auto;cursor:pointer}.shift-clock span,.map-title,.eyebrow{font-size:.66rem;font-weight:700;letter-spacing:.13em}.shift-clock strong{font:700 1.45rem Segoe UI,sans-serif;letter-spacing:.03em}.minimap-card{position:absolute;top:22px;right:24px;width:190px;padding:8px 9px 7px;border:2px solid #343a34;border-radius:8px;background:#f3f0e7;box-shadow:4px 4px #343a34;text-align:left;pointer-events:auto;cursor:pointer}.map-title{display:flex;align-items:center;justify-content:space-between}kbd{min-width:1.45em;padding:.12em .34em;border:1px solid #6f786e;border-radius:4px;background:#e6e3d9;font:600 .7rem Segoe UI,sans-serif;text-align:center}.mini-map{display:block;width:100%;height:205px;margin-top:3px}.directory-map{display:block;width:min(390px,75vw);height:min(65vh,535px);margin:0 auto}.map-corridor{fill:none;stroke:#c5cbc1;stroke-width:8;stroke-linecap:square}.map-cubicle rect{fill:#e3e2d7;stroke:#575e55;stroke-width:1.4}.map-cubicle text{fill:#303630;font:700 8px Segoe UI,sans-serif;text-anchor:middle}.map-landmark circle{fill:#788d7c;stroke:#333a34;stroke-width:1}.map-landmark text,.map-north{fill:#343a34;font:600 5px Segoe UI,sans-serif}.map-north{font-size:7px;font-weight:700;text-anchor:middle}.map-player{fill:#374339;stroke:#f3f0e7;stroke-width:1}.control-hint{position:absolute;bottom:14px;left:50%;transform:translate(-50%);padding:7px 12px;border:1px solid #596158;border-radius:6px;background:#f3f0e7eb;color:#485149;font-size:.72rem;white-space:nowrap}.control-hint span{padding:0 .35rem;color:#98a094}.interaction-prompt,.world-notice{position:absolute;left:50%;transform:translate(-50%);display:flex;gap:10px;align-items:center;padding:10px 16px;border:2px solid #353a35;border-radius:8px;background:#f3f0e7;box-shadow:4px 4px #353a35;font-weight:600}.interaction-prompt{bottom:66px}.interaction-prompt kbd{background:#c9d5c7}.world-notice{top:50%;margin-top:54px;min-width:210px;justify-content:center}.directory-overlay,.pause-overlay,.task-overlay,.microgame-overlay{position:absolute;inset:0;display:grid;place-items:center;padding:24px;background:#242a2566;pointer-events:auto}.run-end-overlay{position:absolute;inset:0;display:grid;place-items:center;padding:24px;background:#242a258f;pointer-events:auto}.run-end-card{width:min(440px,100%);padding:30px;border:2px solid #343a34;border-radius:12px;background:#f3f0e7;box-shadow:8px 8px #343a34;text-align:center}.run-end-card h2{margin:0 0 10px;font-size:1.6rem}.run-end-card p:not(.eyebrow){margin-bottom:22px;color:#626b61}.directory-sheet,.pause-card{width:min(580px,100%);padding:22px 28px;border:2px solid #343a34;border-radius:12px;background:#f3f0e7;box-shadow:8px 8px #343a34}.task-sheet{width:min(650px,100%);max-height:min(80vh,720px);overflow:auto;padding:22px 28px;border:2px solid #343a34;border-radius:12px;background:#f3f0e7;box-shadow:8px 8px #343a34}.task-sheet header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.task-sheet header .eyebrow{margin:0 0 5px}.task-sheet h2,.microgame-card h2{margin:0;font-size:1.45rem}.task-sheet header button{width:36px;height:36px;border:1.5px solid #343a34;border-radius:7px;background:#e8e5da;font-size:1.4rem;cursor:pointer}.task-row{display:grid;grid-template-columns:76px 1fr auto;align-items:center;gap:12px;padding:11px 3px;border-top:1px solid #c7cbc1}.task-copy{display:grid;gap:3px}.task-copy strong{font-size:.9rem}.task-copy small{color:#626b61}.task-actions{display:flex;gap:4px}.task-actions button{width:30px;height:30px;border:1px solid #8c9489;border-radius:5px;background:#e9e6dc;cursor:pointer}.task-actions button:disabled{opacity:.4;cursor:default}.urgency{font-size:.62rem;font-weight:800;letter-spacing:.06em}.urgency-urgent{color:#854c43}.urgency-soon{color:#827344}.urgency-routine{color:#626b61}.task-waiting{opacity:.65}.empty-tasks{padding:18px 0;text-align:center;color:#626b61}.pinned-task{position:absolute;right:24px;bottom:68px;max-width:240px;padding:9px 12px;border:2px solid #343a34;border-radius:7px;background:#f3f0e7;box-shadow:4px 4px #343a34;font-size:.76rem;font-weight:700}.microgame-card{width:min(520px,100%);padding:28px;border:2px solid #343a34;border-radius:12px;background:#f3f0e7;box-shadow:8px 8px #343a34;text-align:center}.microgame-card h2{margin:8px 0 28px;font-size:1.1rem}.timing-track{position:relative;height:18px;margin:0 0 20px;border:2px solid #343a34;border-radius:9px;background:#d7d8cd}.timing-track i{position:absolute;left:40%;top:-3px;width:21%;height:20px;border:1px dashed #617563;background:#a8b7a3}.timing-track span{position:absolute;z-index:1;top:-5px;left:0;width:6px;height:24px;border-radius:3px;background:#353a35}.microgame-card p:not(.eyebrow){color:#626b61}.directory-sheet header{display:flex;align-items:center;justify-content:space-between}.directory-sheet header .eyebrow,.pause-card .eyebrow{margin:0 0 5px;color:#69766a}.directory-sheet h2,.pause-card h2{margin:0;font:700 1.5rem Segoe UI,sans-serif}.directory-sheet header button{width:36px;height:36px;border:1.5px solid #343a34;border-radius:7px;background:#e8e5da;font-size:1.4rem;cursor:pointer}.directory-note,.pause-card p:not(.eyebrow){color:#626b61;font-size:.9rem;text-align:center}.pause-card{width:min(390px,100%);text-align:center}.pause-card .primary-button{margin-top:1rem}[hidden]{display:none!important}@media(max-width:900px){.control-hint{max-width:calc(100vw - 24px);overflow:hidden;font-size:.62rem}.minimap-card{width:156px;right:13px;top:13px}.shift-clock{left:13px;top:13px}.mini-map{height:175px}.resource-card{left:13px;bottom:14px;width:165px}.task-toggle{right:13px;bottom:14px}.pinned-task{right:13px;bottom:58px}}.task-notices{z-index:6;pointer-events:none;position:absolute;left:18px;top:95px;display:grid;gap:10px;width:min(290px,30vw)}@keyframes deadline-pulse{to{box-shadow:0 0 20px #e94141,5px 5px #382529;transform:scale(1.025)}}.task-notice{display:grid;gap:6px;padding:12px 14px;border:2px solid #353a35;border-radius:8px;background:#f3f0e7;box-shadow:4px 4px #353a35;animation:task-arrival .18s ease-out}.task-notice .urgency{justify-self:start}.task-notice strong{font-size:13px}.task-notice>span:last-child{font-size:12px}@keyframes task-arrival{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@media(prefers-reduced-motion:reduce){.task-notice{animation:none}}.microgame-sequence{display:flex;justify-content:center;gap:12px;margin:24px 0}.sequence-key{min-width:48px;min-height:48px;font-size:24px;border:2px solid #353a35;border-radius:6px;background:#eee9de}.sequence-key.current{box-shadow:0 0 0 3px #b3a184}.sequence-key.done{background:#b7c5b9}.microgame-overlay{z-index:4}.pause-overlay{z-index:7}.run-end-overlay{z-index:8}.microgame-overlay{position:fixed;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.microgame-card{width:min(520px,100%);max-height:calc(100dvh - 32px);overflow-y:auto;padding:clamp(16px,4vw,28px)}.microgame-card .eyebrow{margin-bottom:12px}.microgame-card h2{font-size:clamp(1rem,4vw,1.2rem);line-height:1.4;margin-bottom:20px}.microgame-card .primary-button{width:100%;min-width:0;min-height:64px;padding:16px 12px;font-size:1rem;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.microgame-card .primary-button:hover{transform:none}.microgame-card .primary-button:active{background:#b7c5b9}.microgame-sequence{gap:8px;margin:16px 0}.sequence-key{display:grid;place-items:center;min-width:44px;min-height:44px}.microgame-pad{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:20px auto;max-width:320px}.sequence-pad-button{min-height:76px;border:2px solid #353a35;border-radius:12px;background:#e6e3d9;box-shadow:3px 3px #353a35;font-size:32px;touch-action:manipulation;user-select:none;-webkit-user-select:none}.sequence-pad-button:active{background:#b7c5b9}.microgame-card .timing-track{height:32px;margin-top:26px}.microgame-card .timing-track i{height:34px}.microgame-card .timing-track span{height:38px;width:8px}@media(max-width:600px){.task-notices{width:170px;top:90px;left:10px}.task-notice{padding:8px;gap:4px}.ward-hud:has(.microgame-overlay:not([hidden])) .task-notices{top:max(8px,env(safe-area-inset-top));width:calc(100% - 24px)}.microgame-card{margin-top:90px;max-height:calc(100dvh - 122px)}}@media(max-height:500px)and (orientation:landscape){.microgame-card{width:min(680px,100%);padding:12px 20px}.microgame-pad{grid-template-columns:repeat(4,minmax(0,1fr));max-width:420px;margin:12px auto}.sequence-pad-button{min-height:56px}.microgame-card h2{margin-bottom:10px}.microgame-card .primary-button{min-height:52px}}.task-notices{left:50%;top:max(92px,env(safe-area-inset-top));transform:translate(-50%);width:min(560px,calc(100vw - 32px));gap:12px}.task-notice{padding:12px 18px;border-width:3px;border-left-width:8px;box-shadow:6px 6px #353a35;transform-origin:50% 20%;animation:staff-call-fidget .65s ease-out,staff-call-fade .24s ease-in 2s forwards}.task-callout-header{display:flex;align-items:center;gap:12px}.task-callout-header strong{display:inline-block;padding:5px 10px;border-radius:5px;background:#353a35;color:#f3f0e7;font-size:clamp(22px,5vw,30px);font-weight:900;line-height:1.1;text-transform:uppercase;letter-spacing:.04em}.task-callout-header .urgency{font-size:11px}.task-callout-dismiss{margin-left:auto;min-width:44px;min-height:44px;border:1px solid #6f786e;border-radius:6px;background:#e6e3d9;font-size:24px;pointer-events:auto;touch-action:manipulation;cursor:pointer}.task-callout-line{margin:0;font-size:clamp(18px,3vw,24px);font-weight:800;line-height:1.25}.task-notice .task-callout-details{font-size:12px;font-weight:600}@keyframes staff-call-fidget{0%{opacity:0;transform:translateY(-16px) scale(.94) rotate(-2deg)}18%{opacity:1;transform:translate(5px) rotate(2deg)}36%{transform:translate(-5px) rotate(-1.6deg)}54%{transform:translate(4px) rotate(1.2deg)}72%{transform:translate(-2px) rotate(-.6deg)}to{opacity:1;transform:translate(0) rotate(0)}}@keyframes staff-call-fade{0%{opacity:1}to{opacity:0}}@media(max-width:600px){.task-notices{top:90px;width:calc(100vw - 24px)}.task-notice{padding:8px 12px}.ward-hud:has(.microgame-overlay:not([hidden])) .task-notices{top:max(8px,env(safe-area-inset-top));width:calc(100vw - 24px)}.microgame-card{margin-top:160px;max-height:calc(100dvh - 192px)}}@media(max-height:500px)and (orientation:landscape){.task-notices{top:8px;width:min(440px,calc(100vw - 32px))}.task-callout-line{font-size:16px}.task-notice{padding:6px 12px}.microgame-card{margin-top:120px;max-height:calc(100dvh - 152px)}}@media(prefers-reduced-motion:reduce){.task-notice{animation:staff-call-fade .24s ease-in 2s forwards}}.microgame-sequence{flex-wrap:wrap}.microgame-tap-progress{font-size:2rem;font-weight:800;margin:24px 0}.versus-fight{width:min(680px,100%);display:grid;gap:10px}.fight-hud{display:grid;gap:4px}.fight-arena{position:relative;display:grid;grid-template-columns:1fr 36px 1fr;align-items:end;min-height:230px;overflow:hidden;padding:12px 16px 8px;border:3px solid #28241f;border-radius:12px;background:linear-gradient(#b7d2dc 0 55%,#d1ad78 55% 70%,#655748 70%);box-shadow:inset 0 -7px #40372d,0 4px #28241f}.fight-arena:before{position:absolute;inset:0 0 30%;content:"";opacity:.45;background:repeating-linear-gradient(90deg,transparent 0 17%,#f2ead8 17.2% 17.7%,transparent 18% 34%)}.fight-corner{z-index:1;display:grid;justify-items:center;align-content:end;gap:3px;min-width:0}.fight-corner-opponent{justify-self:start}.fight-corner-player{justify-self:end}.fight-chat{position:absolute;top:8px;left:12px;width:min(72%,370px);min-height:48px;display:flex;align-items:center;padding:8px 12px;border:2px solid #29251f;border-radius:14px 14px 14px 3px;background:#fff8e8;box-shadow:3px 3px #29251f;font-size:14px;font-weight:850}.fight-center-line{z-index:1;align-self:end;padding-bottom:76px;text-align:center;color:#fff0b5;font-size:24px;text-shadow:2px 2px #514638}.fight-fighter{position:relative;width:86px;height:128px;transform-origin:50% 100%;filter:drop-shadow(4px 5px 0 #483c30)}.fight-fighter-opponent{transform:scaleX(-1)}.fighter-head{position:absolute;top:0;left:29px;width:36px;height:39px;border:3px solid #29251f;border-radius:45% 45% 42% 42%;background:#d8a77d}.fighter-coat{position:absolute;top:36px;left:19px;width:57px;height:62px;border:3px solid #29251f;border-radius:13px 13px 6px 6px;background:#f4f0e7}.fighter-coat:after{position:absolute;top:4px;left:25px;width:3px;height:48px;content:"";background:#7b908b}.fighter-arm{position:absolute;top:48px;left:2px;width:31px;height:17px;border:3px solid #29251f;border-radius:12px;background:#df8c63;transform:rotate(-18deg)}.fighter-legs{position:absolute;bottom:0;left:28px;width:32px;height:35px;border-left:7px solid #343a40;border-right:7px solid #343a40}.fight-name{max-width:150px;min-height:22px;color:#fffdf5;font-size:11px;text-align:center;text-shadow:1px 2px #29251f}.fight-status{margin:0;min-height:25px;color:#443d34;text-align:center;font-weight:850}.fight-counter-button{min-height:56px;border:3px solid #29251f;border-radius:12px;background:#d9c36e;box-shadow:0 4px #29251f;color:#29251f;font:inherit;font-size:21px;font-weight:950;letter-spacing:.08em;touch-action:manipulation;-webkit-user-select:none;user-select:none}.fight-counter-button:active{transform:translateY(3px);box-shadow:0 1px #29251f}.fight-counter-button.fight-counter-ready{background:#8bd26e;animation:counter-pulse .42s ease-in-out infinite alternate}.fight-help{margin:-3px 0 0;color:#665d50;font-size:12px;text-align:center}.fight-hit{animation:fight-hit .26s linear 2}@keyframes fight-hit{25%{translate:-8px 0;filter:brightness(1.4) drop-shadow(4px 5px 0 #483c30)}75%{translate:8px 0}}@keyframes counter-pulse{to{filter:brightness(1.22);transform:scale(1.015)}}.tug-labels{display:flex;justify-content:space-between;gap:8px;color:#f6ede0;font-size:clamp(10px,1.5vw,15px);letter-spacing:.05em;text-transform:uppercase}.tug-labels strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tug-bar{position:relative;display:flex;height:clamp(26px,5vh,40px);overflow:hidden;border:3px solid #f3e8d6;border-radius:4px;background:#1a171a;box-shadow:0 0 12px #000}.tug-fill{display:block;height:100%;transition:width 90ms linear}.tug-fill-opponent{background:linear-gradient(180deg,#fd9859,#cc322b)}.tug-fill-player{background:linear-gradient(180deg,#d6e87c,#4fae52)}.tug-bar:after{position:absolute;top:0;bottom:0;left:50%;width:2px;content:"";background:#fff5}.tug-knot{z-index:1;position:absolute;top:-3px;bottom:-3px;width:12px;margin-left:-6px;border:2px solid #171014;border-radius:3px;background:#fff0bf;box-shadow:0 0 10px #ffe685;transition:left 90ms linear}.fight-tap-pulse{animation:tap-pulse .11s ease-out}@keyframes tap-pulse{0%{transform:translateY(3px) scale(.985);filter:brightness(1.3)}to{transform:none;filter:none}}.microgame-overlay-battle{touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.microgame-overlay-battle .fight-fighter{translate:calc((var(--push, .5) - .5) * -90px) 0;transition:translate 90ms linear}.microgame-overlay-battle .fight-arena-winning{box-shadow:inset 0 0 70px #110d12,0 0 0 3px #9be46d,0 0 30px #9be46d80}.microgame-overlay-battle .fight-arena-losing{box-shadow:inset 0 0 70px #110d12,0 0 0 3px #ff7668,0 0 30px #ff766880}.microgame-overlay-battle .fight-arena-losing .fight-fighter-player{animation:fight-hit .13s linear infinite}.microgame-overlay-battle{z-index:20;padding:0;overflow:hidden;background:#100e13}.ward-hud:has(.microgame-overlay-battle:not([hidden])) .pause-overlay{z-index:21}.ward-hud:has(.microgame-overlay-battle:not([hidden])) .run-end-overlay{z-index:22}.microgame-overlay-battle .microgame-card{width:100%;height:100dvh;max-height:none;display:flex;flex-direction:column;justify-content:center;gap:clamp(7px,1.5vh,16px);overflow:hidden;padding:max(18px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));border:0;border-radius:0;background:radial-gradient(ellipse at 50% 63%,#514138 0,#262127 42%,#100e13 82%);box-shadow:none;color:#f5e9d7;text-align:left}.microgame-overlay-battle .microgame-task-title{margin:0;color:#fff4df;font-size:clamp(24px,4vh,42px);letter-spacing:.045em;text-transform:uppercase;text-shadow:0 3px #8a302c,3px 5px #090809}.microgame-overlay-battle .microgame-instruction{max-width:900px;margin:0;color:#d0c3b5;font-size:clamp(13px,1.8vh,17px)}.microgame-overlay-battle [data-microgame-body]{flex:1;align-self:stretch;width:100%;min-height:0;display:flex}.microgame-overlay-battle [data-microgame-status]{margin:0;color:#f5e9d7;text-align:center}.microgame-overlay-battle .versus-fight{width:min(1440px,100%);flex:1;min-height:0;align-self:center;grid-template-rows:auto minmax(0,1fr) auto auto auto;gap:clamp(8px,1.5vh,16px)}.microgame-overlay-battle .fight-hud{gap:6px}.microgame-overlay-battle .fight-arena{min-height:0;height:100%;grid-template-columns:1fr minmax(44px,12vw) 1fr;padding:14px clamp(18px,6vw,90px) 16px;border:3px solid #d5c3a7;border-radius:4px;background:linear-gradient(#6a6266 0 42%,#343139 42% 65%,#9b7556 65% 70%,#3d3331 70%);box-shadow:inset 0 0 70px #110d12,0 0 0 3px #160f10,0 0 35px #9d362d77}.microgame-overlay-battle .fight-arena:before{opacity:.33;background:repeating-linear-gradient(90deg,transparent 0 11%,#e6cba8 11.2% 11.5%,transparent 11.8% 22%)}.microgame-overlay-battle .fight-arena:after{position:absolute;inset:0;content:"";pointer-events:none;background:linear-gradient(90deg,#100d1280,transparent 25% 75%,#100d1280),linear-gradient(0deg,#0a090d80,transparent 30% 80%,#0a090d80)}.microgame-overlay-battle .fight-arena-opening{box-shadow:inset 0 0 70px #110d12,0 0 0 3px #ddc66b,0 0 38px #e9de728f}.microgame-overlay-battle .fight-impact{position:absolute;z-index:4;top:42%;left:50%;pointer-events:none;opacity:0;color:#ffe685;font-size:clamp(40px,8vw,100px);font-weight:1000;font-style:italic;letter-spacing:-.05em;text-align:center;white-space:nowrap;text-shadow:4px 4px #ac3027,8px 8px #100d12;transform:translate(-50%,-50%) rotate(-8deg)}.microgame-overlay-battle .fight-impact-counter{animation:fight-impact-pop .65s ease-out forwards}.microgame-overlay-battle .fight-impact-hit{color:#ff7668;text-shadow:4px 4px #6e1724,8px 8px #100d12;animation:fight-impact-pop .65s ease-out forwards}.microgame-overlay-battle .fight-arena-counter{animation:fight-arena-shock .36s ease-out}.microgame-overlay-battle .fight-arena-hit{animation:fight-arena-shock .42s ease-out reverse}.microgame-overlay-battle .fight-fighter{width:clamp(104px,16vw,190px);height:clamp(168px,29vh,285px);filter:drop-shadow(9px 9px 0 #201813) drop-shadow(0 0 18px #edc99944)}.microgame-overlay-battle .fight-fighter-opponent{transform:scaleX(-1) scale(1.08)}.microgame-overlay-battle .fight-fighter-player{transform:scale(1.08)}.microgame-overlay-battle .fighter-head{top:0;left:32%;width:38%;height:30%;border-width:4px;box-shadow:inset -7px -4px #a86d59,0 0 0 3px #201b1a}.microgame-overlay-battle .fighter-coat{top:27%;left:17%;width:66%;height:48%;border-width:4px;border-radius:18px 18px 5px 5px;background:linear-gradient(90deg,#d0d5d0,#fffaf0 48%,#d7ddd7);box-shadow:0 0 0 2px #292326}.microgame-overlay-battle .fighter-arm{top:38%;left:1%;width:40%;height:13%;border-width:4px;background:#c66b50;box-shadow:0 0 0 2px #251c1b}.microgame-overlay-battle .fighter-legs{left:32%;width:38%;height:29%;border-left-width:11px;border-right-width:11px}.microgame-overlay-battle .fight-name{max-width:40vw;min-height:0;padding:3px 8px;color:#fff1d8;font-size:clamp(11px,1.6vw,16px);letter-spacing:.07em}.microgame-overlay-battle .fight-chat{top:clamp(12px,3vh,32px);left:50%;width:min(56%,650px);min-height:clamp(70px,12vh,128px);padding:clamp(12px,2vw,24px);border:3px solid #10090c;border-radius:2px 14px 3px 12px;background:repeating-linear-gradient(135deg,#571d25,#571d25 9px,#642128 9px 18px);box-shadow:5px 6px #070609,0 0 24px #e9443b7a;color:#fff1e8;font-size:clamp(15px,2.25vw,26px);font-weight:950;line-height:1.12;text-shadow:2px 2px #28090d;transform:translate(-50%) rotate(-1deg)}.microgame-overlay-battle .fight-chat:after{position:absolute;bottom:-19px;left:18%;width:25px;height:25px;margin-left:-13px;content:"";border-right:3px solid #10090c;border-bottom:3px solid #10090c;background:#571d25;transform:skewY(25deg) rotate(22deg)}.microgame-overlay-battle .fight-chat-hit{animation:hostile-bubble .42s steps(2,end)}.microgame-overlay-battle .fight-status{min-height:1.4em;color:#ffe3ac;font-size:clamp(15px,2.4vh,24px);font-weight:950;letter-spacing:.08em;text-transform:uppercase;text-shadow:0 2px #791e20}.microgame-overlay-battle .fight-status-impact{animation:status-impact .28s ease-out}.microgame-overlay-battle .fight-counter-button{width:min(560px,100%);min-height:clamp(56px,9vh,82px);justify-self:center;border:3px solid #171014;border-radius:3px;background:linear-gradient(#bd4a3d,#772520);box-shadow:0 6px #1d1113,0 0 18px #dd49376b;color:#fff0d4;font-size:clamp(22px,4vh,34px);text-shadow:0 2px #401516}.microgame-overlay-battle .fight-counter-button.fight-counter-ready{border-color:#fff0bf;background:linear-gradient(#9be46d,#438e42);box-shadow:0 6px #172115,0 0 34px #b9ff7e;color:#142213;text-shadow:none}.microgame-overlay-battle .fight-help{margin:0;color:#c8b7aa;font-size:12px}.microgame-overlay-battle .fight-hit{animation:fight-hit .13s linear 3}.microgame-overlay-battle .fight-winding-up{animation:enemy-feint .9s ease-in-out infinite alternate}@keyframes hostile-bubble{0%,to{transform:translate(-50%) rotate(-1deg);filter:none}20%{transform:translate(calc(-50% + 7px)) rotate(2deg);filter:brightness(1.5)}40%{transform:translate(calc(-50% - 4px)) rotate(-2deg)}60%{transform:translate(calc(-50% + 3px)) rotate(1deg);filter:contrast(1.4)}}@keyframes status-impact{0%{scale:1.25;color:#fff}to{scale:1}}@keyframes enemy-feint{to{translate:-8px 0;rotate:-2deg}}@keyframes fight-impact-pop{0%{opacity:0;transform:translate(-50%,-50%) scale(.3) rotate(-14deg)}24%{opacity:1;transform:translate(-50%,-50%) scale(1.2) rotate(-6deg)}62%{opacity:1}to{opacity:0;transform:translate(-50%,-50%) scale(1.35) rotate(-4deg)}}@keyframes fight-arena-shock{0%,to{transform:translate(0);filter:brightness(1)}18%{transform:translate(-7px);filter:brightness(1.6)}36%{transform:translate(6px)}54%{transform:translate(-4px)}72%{transform:translate(2px)}}@media(prefers-reduced-motion:reduce){.microgame-overlay-battle *,.microgame-overlay-battle *:before,.microgame-overlay-battle *:after{animation-duration:1ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}.sample-timers{position:absolute;left:340px;top:100px;display:grid;gap:8px;width:200px;max-height:calc(100dvh - 240px);overflow-y:auto}.sample-timer{display:grid;grid-template-columns:1fr auto;gap:4px 8px;padding:9px 10px;border:2px solid #353a35;border-radius:7px;background:#f3f0e7;box-shadow:3px 3px #353a35}.sample-timer span{font-size:12px;font-weight:700}.sample-timer strong{font-size:20px;font-variant-numeric:tabular-nums}.sample-timer small{grid-column:1 / -1;font-size:10px}.sample-timer-urgent{border-color:#854c43;color:#854c43}.task-notice-mo{border-color:#854c43;background:#f2e2d7;animation:mo-alert-shake .6s ease-in-out 5,staff-call-fade .24s ease-in 3s forwards}.task-notice-mo .task-callout-header strong{background:#854c43}@keyframes mo-alert-shake{0%,to{transform:translate(0) rotate(0)}20%{transform:translate(-7px) rotate(-1.5deg)}40%{transform:translate(7px) rotate(1.5deg)}60%{transform:translate(-5px) rotate(-1deg)}80%{transform:translate(5px) rotate(1deg)}}@media(prefers-reduced-motion:reduce){.task-notice-mo{animation:staff-call-fade .24s ease-in 3s forwards}}.task-copy{min-width:0;overflow-wrap:anywhere}@media(max-width:600px){.sample-timers{top:88px;left:8px;width:150px}.ward-hud:has(.microgame-overlay:not([hidden])) .sample-timers{top:auto;bottom:8px;max-height:82px}.task-sheet{width:100%;padding:16px 12px}.task-row{grid-template-columns:50px minmax(0,1fr) auto;gap:6px}.task-copy strong{font-size:.8rem}.task-copy small{font-size:.72rem}}.patient-overlay{position:absolute;inset:0;z-index:3;display:grid;place-items:center;padding:16px;background:#242a2566;pointer-events:auto}.patient-sheet{width:min(620px,100%);max-height:calc(100dvh - 40px);overflow-y:auto;padding:24px;border:2px solid #353a35;border-radius:12px;background:#f3f0e7;box-shadow:6px 6px #353a35}.patient-sheet header{display:flex;align-items:center;justify-content:space-between;gap:12px}.patient-sheet .eyebrow{margin:0 0 6px}.patient-sheet h2{margin:0;font-size:clamp(22px,5vw,30px)}.patient-sheet>p{color:#626b61;line-height:1.4}.patient-close{flex-shrink:0;min-width:48px;min-height:48px;border:2px solid #353a35;border-radius:8px;background:#e6e3d9;font-size:28px;cursor:pointer;touch-action:manipulation}[data-patient-tasks]{display:grid;gap:12px}.patient-task-card{display:grid;gap:7px;width:100%;min-height:92px;padding:16px;border:2px solid #353a35;border-radius:9px;background:#e9eee4;color:#303630;text-align:left;cursor:pointer;touch-action:manipulation}.patient-task-card strong{font-size:20px;line-height:1.2}.patient-task-card small{font-size:14px}.patient-task-card:disabled{cursor:default;background:#e6e3d9;border-color:#8c9489}.patient-task-card:disabled .patient-task-action{color:#626b61}.patient-task-card:not(:disabled):active{background:#b7c5b9}.patient-task-action{font-size:12px;font-weight:800;color:#435943}.microgame-card .microgame-task-title{margin:0 0 16px;font-size:clamp(26px,6vw,36px);font-weight:900;line-height:1.15;color:#303630}.microgame-card .microgame-instruction{margin:0 0 20px;font-size:17px;line-height:1.4}@media(max-width:600px){.patient-sheet{padding:16px;margin-top:130px;max-height:calc(100dvh - 166px)}.patient-task-card{padding:12px}}@media(max-height:500px)and (orientation:landscape){.patient-sheet{margin-top:110px;max-height:calc(100dvh - 146px)}}.map-ward-outline{fill:#eee9de;stroke:#575e55;stroke-width:2}.map-room rect{fill:#d6ddd5;stroke:#788478;stroke-width:1}.map-room text{fill:#303630;font:700 6px Segoe UI,sans-serif;text-anchor:middle}.map-cubicle text{font-size:8px}.minimap-card{inset:100px auto auto 20px;width:300px;padding:10px;border:1px solid #697c79;border-radius:18px;background:#182524ef;color:#e6eee9;box-shadow:0 5px 20px #0005}.minimap-card .map-title{color:#c6d6cf;font-size:10px;letter-spacing:1.4px}.map-open{display:block;width:100%;padding:0;border:0;color:inherit;background:transparent;text-align:left;cursor:pointer}.map-zoom{width:100%;min-height:36px;margin-top:9px;border:1px solid #789286;border-radius:6px;background:#324e45;color:#edf0df;font-size:11px;font-weight:800;cursor:pointer}.radar-frame{display:block;position:relative;margin-top:7px;overflow:hidden;border-radius:14px;border:3px solid #526c65;box-shadow:0 0 0 1px #a4b8ad,inset 0 0 18px #0008;background:#243532}.mini-map{display:block;width:100%;height:auto;aspect-ratio:1;background:#243532}.radar-north{position:absolute;left:calc(50% - 9px);top:4px;width:18px;color:#fff;font-size:11px;font-weight:900;text-shadow:0 1px 3px #000}.radar-caption{display:block;margin-top:8px;font-size:10px;font-weight:700;color:#e4d096;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mini-map .map-ward-outline{fill:#668178;stroke:#9ab5a8;stroke-width:1.5}.mini-map .map-corridor{stroke:#668178;stroke-width:19}.mini-map .map-cubicle rect,.mini-map .map-room rect{fill:#314640;stroke:#a4b6ad;stroke-width:1.3}.mini-map .map-room text,.mini-map .map-cubicle text,.mini-map .map-landmark text{fill:#e1ebe3;font-size:7px;paint-order:stroke;stroke:#314640;stroke-width:2px}.mini-map .map-cubicle text{font-size:8px}.map-bed{fill:#abc3b7;opacity:.7}.directory-map .map-bed{fill:#708b7b}.mini-map .map-player{fill:#fff;stroke:#172820;stroke-width:1.5}.map-destination{fill:#f1cd68;stroke:#473d23;stroke-width:1.5}.map-destination-edge{fill:#ffe6a2}@media(max-width:700px){.minimap-card{inset:90px auto auto 12px;width:148px;padding:8px}.mini-map{height:auto}.radar-caption{font-size:9px}}@media(max-height:500px){.minimap-card{width:clamp(170px,calc(100dvh - 180px),220px);top:80px;bottom:auto}.radar-caption{display:none}}.consultant-entrance{position:absolute;left:50%;bottom:110px;transform:translate(-50%) rotate(-1deg);width:min(570px,calc(100vw - 36px));padding:18px 24px 14px;text-align:center;color:#f7efd9;background:#2c3d3df2;border:3px solid #d3bb79;border-radius:8px;box-shadow:7px 7px #242d2bd9;pointer-events:none;animation:entrance-arrival .4s ease-out,entrance-rumble 1.2s .4s ease-in-out infinite}.consultant-entrance[hidden]{display:none}.entrance-kicker{display:block;font-size:12px;letter-spacing:.25em;font-weight:900;color:#e4ca80}.consultant-entrance>strong{display:block;margin:5px 0;font-size:clamp(28px,5vw,48px);line-height:1;font-weight:950;letter-spacing:-.03em;text-shadow:3px 3px 0 #111b1a}.entrance-subtitle{font-size:10px;font-weight:800;letter-spacing:.07em}.consultant-entrance p{margin:12px 0;font-size:clamp(14px,2.4vw,18px);font-weight:800}.entrance-progress{display:block;height:4px;background:#52615a;border-radius:3px;overflow:hidden}.entrance-progress i{display:block;height:100%;background:#e6c878}.entrance-paused{animation-play-state:paused}.ward-hud:has(.microgame-overlay:not([hidden])) .consultant-entrance{bottom:auto;top:70px;padding:8px 14px}.ward-hud:has(.microgame-overlay:not([hidden])) .consultant-entrance>strong{font-size:24px}.ward-hud:has(.microgame-overlay:not([hidden])) .entrance-subtitle{display:none}@keyframes entrance-arrival{0%{opacity:0;transform:translate(-50%) translateY(24px) scale(.9)}to{opacity:1;transform:translate(-50%) rotate(-1deg)}}@keyframes entrance-rumble{0%,to{transform:translate(-50%) rotate(-1deg)}50%{transform:translate(-50%) rotate(.6deg)}}@media(prefers-reduced-motion:reduce){.consultant-entrance{animation:none;transform:translate(-50%)}}@media(max-width:700px){.consultant-entrance{bottom:190px;padding:12px}}.sound-toggle{position:absolute;right:24px;top:72px;padding:9px 12px;border:1px solid #697c79;border-radius:8px;color:#e6eee9;background:#253a35ed;font-size:11px;font-weight:800;cursor:pointer}.sound-toggle[aria-pressed=true]{color:#c4c6bf;background:#414a45ed}@media(max-width:700px){.sound-toggle{right:13px;top:60px;min-height:40px;padding:8px;font-size:10px}}.incoming-call{position:absolute;right:20px;top:125px;width:220px;padding:16px;color:#f0f4eb;background:#29433f;border:2px solid #aec5b5;border-radius:12px;box-shadow:4px 4px #26342ecc}.incoming-call>span{font-size:11px;font-weight:800;letter-spacing:.1em}.incoming-call>strong{display:block;margin:9px 0 16px;font-size:23px}.incoming-call>div{display:flex;gap:8px}.incoming-call button{min-height:44px;flex:1;border:1px solid #b9cabc;border-radius:6px;background:#d8e5d5;color:#25352c;font-weight:800;cursor:pointer}.incoming-call [data-call-decline]{background:#4d5d54;color:#f0f4eb}.ward-hud:has(.microgame-overlay:not([hidden])) .incoming-call{display:none}@media(max-width:700px){.incoming-call{right:12px;top:112px;width:190px;padding:12px}}.microgame-card{max-height:calc(100dvh - 32px);overflow-y:auto}[data-microgame-body][data-challenge]{margin:16px 0}.challenge-reference{margin:8px 0 12px;font-size:14px;color:#526057}.challenge-cards,.record-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.record-card,.record-slot,.review-observation,.discharge-folder,.challenge-confirm{border:2px solid #788c7c;border-radius:9px;color:#293b30;background:#eeeadd;cursor:pointer;font:inherit}.record-card{min-height:58px;padding:10px;font-size:15px;font-weight:800;touch-action:none;-webkit-user-select:none;user-select:none}.record-card.selected,.review-observation.selected{border-color:#2d6c54;background:#c6dfcc;box-shadow:inset 0 0 0 1px #2d6c54}.record-sections{margin-top:14px}.record-slot{min-height:76px;padding:10px;background:#dbe2d4;border-style:dashed;text-align:left}.record-slot strong,.record-slot span{display:block}.record-slot strong{font-size:15px}.record-slot span{margin-top:6px;font-size:12px}.record-slot.complete{border-style:solid;border-color:#517b5c;background:#cee0c9;opacity:1}.challenge-confirm{display:block;width:100%;min-height:52px;margin-top:14px;padding:12px;background:#375d48;color:#f5f1df;font-weight:900;touch-action:manipulation}.challenge-confirm:disabled{opacity:.45;cursor:default}.discharge-folder{display:block;width:100%;min-height:116px;margin-top:14px;padding:16px;background:#dfcfa8;border-style:dashed}.discharge-folder strong,.discharge-folder span,.discharge-folder small{display:block}.discharge-folder span{margin:8px 0;font-weight:700}.discharge-folder small{line-height:1.4}.microgame-drag-ghost{position:fixed;z-index:100;max-width:210px;padding:12px 16px;transform:translate(-50%);border:2px solid #37664c;border-radius:9px;background:#d9e7cf;color:#263d2d;box-shadow:3px 5px 12px #0004;font-size:15px;font-weight:800;pointer-events:none}.microgame-drag-ghost[hidden]{display:none}.review-heading,.review-observation{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:8px;align-items:center;width:100%;text-align:center}.review-heading{padding:8px;font-size:11px;font-weight:800}.review-observation{min-height:60px;margin-bottom:8px;padding:10px;font-size:16px;touch-action:manipulation}.review-observation strong{font-size:14px;text-align:left}.needle-track{position:relative;height:100px;margin:18px 0;overflow:hidden;border:2px solid #657d69;border-radius:12px;background:#dee1d6;touch-action:none;-webkit-user-select:none;user-select:none}.needle-zone{position:absolute;top:12px;bottom:12px;left:50%;width:34%;transform:translate(-50%);border-radius:9px;background:#91bd93;border:2px solid #527c55;pointer-events:none}.needle-cursor{position:absolute;left:50%;top:22px;transform:translate(-50%);color:#263e31;font-size:38px;pointer-events:none}.sample-fill{height:18px;overflow:hidden;border:2px solid #867169;border-radius:10px;background:#e5dcd1}.sample-fill i{display:block;height:100%;width:0;background:#a96557}@media(max-width:700px){.microgame-card{padding:18px}.record-card{min-height:60px;font-size:14px}.record-slot{min-height:72px}.review-observation{font-size:15px}}.game-canvas{touch-action:none}.sound-toggle,.incoming-call,.pause-toggle{pointer-events:auto}.pause-toggle{position:absolute;left:50%;top:22px;transform:translate(-50%);min-height:44px;padding:9px 12px;border:1px solid #697c79;border-radius:8px;background:#253a35ed;color:#e6eee9;font-size:11px;font-weight:800;cursor:pointer}.touch-controls{display:none;position:absolute;inset:0;pointer-events:none}.touch-controls[hidden]{display:none}.touch-stick{position:absolute;left:max(16px,env(safe-area-inset-left));bottom:max(20px,env(safe-area-inset-bottom));width:128px;height:128px;border:2px solid #a5bbae;border-radius:50%;background:#263f3599;box-shadow:inset 0 0 18px #132b2840;pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none}.touch-stick-knob{position:absolute;width:52px;height:52px;left:calc(50% - 26px);top:calc(50% - 26px);border:2px solid #c7d9cb;border-radius:50%;background:#9dbca6cc;pointer-events:none}.touch-stick-label{position:absolute;top:10px;width:100%;text-align:center;color:#e4eee5;font-size:10px;font-weight:800;pointer-events:none}.touch-sprint,.touch-interact{position:absolute;right:max(16px,env(safe-area-inset-right));border:2px solid #a5bbae;border-radius:50%;color:#e7efe4;background:#29473ee8;font-size:11px;font-weight:900;pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none}.touch-interact{bottom:max(22px,env(safe-area-inset-bottom));width:92px;height:92px;background:#537b53ed}.touch-interact:disabled{background:#35453ee0;opacity:.55}.touch-sprint{bottom:126px;width:70px;height:70px}.touch-sprint.pressed{background:#ad9660;color:#23382b}@media(any-pointer:coarse),(max-width:700px){.touch-controls:not([hidden]){display:block}.control-hint{display:none}.task-toggle{top:14px;bottom:auto;right:12px;min-height:44px}.task-toggle kbd,.map-title kbd,.interaction-prompt kbd{display:none}.sound-toggle{top:65px;right:12px;min-height:44px}.pause-toggle{top:14px}.resource-card{inset:120px 12px auto auto;width:min(138px,calc(100vw - 224px));padding:8px;box-shadow:2px 2px #343a34}.meter-row{grid-template-columns:50px 1fr;gap:4px;font-size:9px}.minimap-card{width:clamp(174px,48vw,204px);left:max(12px,env(safe-area-inset-left));top:max(90px,calc(env(safe-area-inset-top) + 76px));bottom:auto;padding:7px}.radar-caption,.map-title{font-size:8px}.pinned-task{right:12px;bottom:220px;max-width:185px;font-size:11px}.interaction-prompt{bottom:175px;max-width:calc(100vw - 170px);padding:8px 10px;font-size:13px;text-align:center}.sample-timers{top:178px;left:auto;right:12px;max-height:max(80px,calc(100dvh - 510px));width:min(138px,calc(100vw - 224px))}.shift-clock{left:12px;top:14px;min-width:96px;padding:8px 10px}}@media(max-width:380px){.pause-toggle{left:47%;padding:8px;font-size:10px}.touch-stick{width:112px;height:112px}}@media(max-height:500px)and (any-pointer:coarse),(max-height:500px)and (max-width:700px){.touch-stick{width:104px;height:104px;bottom:12px}.touch-interact{bottom:12px;width:82px;height:82px}.touch-sprint{bottom:18px;right:106px;width:68px;height:68px}.minimap-card{top:max(14px,env(safe-area-inset-top));left:154px;bottom:auto;width:170px}.resource-card{left:12px;right:auto;top:96px;width:138px}.pause-toggle{left:auto;right:140px;transform:none}.sample-timers{left:12px;right:auto;width:138px}.pinned-task{bottom:110px}.interaction-prompt{bottom:112px;max-width:45vw}}.pause-toggle{z-index:5}.map-open,.map-zoom{pointer-events:auto}.mini-map .map-cubicle text{font-size:11px}.mini-map .map-room text,.mini-map .map-landmark text{font-size:9px}.map-bed-number{fill:#e1ebe3;font:700 8px Segoe UI,sans-serif;text-anchor:middle;paint-order:stroke;stroke:#314640;stroke-width:1.5px}.directory-map .map-bed-number{fill:#303630;stroke:#eee9de}.mini-map[data-zoom=ward] .map-cubicle text{font-size:13px}.mini-map[data-zoom=ward] .map-room text{font-size:11px}.mini-map[data-zoom=ward] .map-bed-number{font-size:10px}.radar-north{transform:translate(-50%,-50%);background:#243532dc;border-radius:4px;text-align:center}.resource-card{inset:22px 24px auto auto;width:280px;padding:16px;gap:12px}.meter-row{grid-template-columns:1fr auto;gap:6px;font-size:13px;font-weight:800}.meter-row>span{grid-column:1;grid-row:1}.meter-row>output{grid-column:2;grid-row:1;font-size:15px;font-weight:900}.meter-track{grid-column:1 / -1;grid-row:2;height:18px;border-radius:7px}.sound-toggle{top:220px}.incoming-call{top:280px}@media(any-pointer:coarse),(max-width:700px){.resource-card{inset:120px 12px auto auto;width:calc(50vw - 18px);max-width:210px;padding:10px;gap:9px}.meter-row{grid-template-columns:1fr auto;gap:5px;font-size:11px}.meter-row>output{font-size:13px}.meter-track{height:16px}.minimap-card{width:calc(50vw - 18px);max-width:204px}.sound-toggle{top:65px}.sample-timers{top:290px;width:calc(50vw - 18px);max-width:210px}.incoming-call{top:120px}}@media(max-height:500px)and (any-pointer:coarse),(max-height:500px)and (max-width:700px){.resource-card{top:14px;right:12px;left:auto;width:210px}.minimap-card{width:170px}.pause-toggle{left:12px;right:auto;top:96px;transform:none}.task-toggle{top:180px}.sound-toggle{top:232px}.sample-timers{top:178px;left:12px;right:auto;width:138px}}.resource-hud{position:absolute;top:22px;right:24px;width:280px;display:grid;gap:12px}.resource-hud .resource-card{position:static;width:100%;max-width:none}.resource-hud .task-toggle{position:static;width:100%;min-height:58px;justify-content:center;padding:12px 16px;font-size:.884rem;gap:13px;touch-action:manipulation}.resource-hud .recover-toggle{position:static;display:grid;grid-template-columns:auto 1fr;align-items:center;column-gap:8px;width:100%;min-height:50px;padding:7px 12px;border:2px solid #343a34;border-radius:7px;background:#ffe98a;color:#2b2340;box-shadow:4px 4px #343a34;font:inherit;font-size:.8rem;font-weight:800;letter-spacing:.06em;text-align:left;pointer-events:auto;cursor:pointer;touch-action:manipulation}.resource-hud .recover-toggle span{grid-row:1 / 3;font-size:1.4rem}.resource-hud .recover-toggle small{font-size:.62rem;font-weight:700;letter-spacing:.02em;color:#5a4f74}.resource-hud .recover-toggle:active{transform:translate(2px,2px);box-shadow:2px 2px #343a34}.resource-hud .recover-toggle.recover-on{background:#8fe3a8}.chat-cloud{position:absolute;z-index:9;top:96px;left:50%;transform:translate(-50%);max-width:min(86vw,420px);padding:10px 18px 12px;border:4px solid #2b2340;border-radius:26px;background:#fff;color:#2b2340;box-shadow:0 5px #2b2340;text-align:center;pointer-events:none;animation:cloud-pop .22s ease-out}.chat-cloud strong{display:block;color:#e0457b;font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.chat-cloud span{display:block;font-size:1.15rem;font-weight:900;line-height:1.2}.chat-cloud:after{content:"";position:absolute;left:50%;bottom:-16px;width:22px;height:22px;margin-left:-11px;border:solid #2b2340;border-width:0 4px 4px 0;background:#fff;transform:rotate(45deg) skew(10deg,10deg)}@keyframes cloud-pop{0%{opacity:0;transform:translate(-50%) scale(.8)}}.sound-toggle{top:298px}.incoming-call{top:354px}@media(any-pointer:coarse),(max-width:700px){.resource-hud{top:120px;right:12px;width:calc(50vw - 18px);max-width:210px}.sound-toggle{top:65px}.sample-timers{left:12px;right:auto;top:calc(206px + min(50vw - 18px,204px));width:calc(50vw - 18px);max-width:204px;max-height:max(36px,calc(100dvh - min(50vw - 18px,204px) - 376px))}.incoming-call{top:120px}}@media(max-height:500px)and (any-pointer:coarse),(max-height:500px)and (max-width:700px){.resource-hud{top:14px;width:210px}.sound-toggle{top:244px}.sample-timers{top:178px;left:12px;width:138px;max-height:80px}}.touch-stick.sprinting{border-color:#efd588;background:#806830aa;box-shadow:0 0 16px #e7c45b66}.touch-interact{right:max(24px,calc(env(safe-area-inset-right) + 24px));bottom:max(28px,env(safe-area-inset-bottom));width:76px;height:76px}@media(max-height:500px){.touch-interact{right:max(20px,calc(env(safe-area-inset-right) + 20px));width:70px;height:70px;bottom:max(20px,env(safe-area-inset-bottom))}}.task-count{display:inline-grid;place-items:center;min-width:26px;height:26px;padding:0 6px;border-radius:13px;background:#354c40;color:#f3f0e7;font-size:14px;font-weight:900;letter-spacing:0;line-height:1}.task-panel-title{display:flex;align-items:center;gap:9px}.task-overlay{justify-items:end;align-items:start;padding-top:110px;background:transparent;pointer-events:none;z-index:3}.task-sheet{width:min(340px,calc(100vw - 48px));max-height:min(55dvh,440px);padding:10px 12px;border-width:1px;box-shadow:3px 3px #343a34;pointer-events:auto;overscroll-behavior:contain}.task-sheet header{position:sticky;top:-10px;z-index:1;margin:-10px -12px 6px;padding:8px 12px;background:#f3f0e7;border-bottom:1px solid #c7cbc1}.task-sheet header .eyebrow{font-size:9px}.task-sheet h2{font-size:19px}.task-sheet header button{width:44px;height:44px;flex-shrink:0}.task-sheet .task-row{grid-template-columns:58px minmax(0,1fr);gap:5px 8px;padding:8px 0}.task-sheet .task-copy strong{font-size:14px;overflow-wrap:anywhere}.task-sheet .task-copy small{font-size:11px}.task-sheet .task-actions{grid-column:2;justify-content:flex-end;gap:6px}.task-sheet .task-actions button{width:44px;height:44px;font-size:19px}.task-sheet .directory-note{margin:8px 0 0;font-size:11px}.task-sheet .task-row{grid-template-columns:52px minmax(0,1fr) auto;gap:4px 6px;padding:5px 0}.task-sheet .task-copy{gap:2px}.task-sheet .task-copy strong{font-size:12px;line-height:1.2}.task-sheet .task-copy small{font-size:10px;line-height:1.2}.task-sheet .task-actions{grid-column:3;gap:2px}.task-sheet .task-actions button{width:28px;height:32px;font-size:16px}.task-sheet .urgency{font-size:8px;letter-spacing:0}.task-sheet header{padding-top:5px;padding-bottom:5px}.task-sheet .directory-note{font-size:10px;margin-top:5px}.resource-hud .sample-timers{position:static;width:100%;max-width:none;max-height:130px;gap:5px;overflow-y:auto;pointer-events:none}.resource-hud .sample-timer{grid-template-columns:1fr auto;gap:2px 8px;padding:6px 8px;border-width:1px;border-left-width:4px;background:#f3f0e7dc;box-shadow:1px 1px #353a35}.resource-hud .sample-timer .sample-bed{font-size:11px;font-weight:900;letter-spacing:.04em}.resource-hud .sample-timer strong{font-size:19px;line-height:1}.resource-hud .sample-timer .sample-kind{font-size:10px;line-height:1.15;overflow-wrap:anywhere}.resource-hud .sample-timer small{grid-column:2;font-size:9px;text-align:right;align-self:end}.resource-hud .sample-timer-urgent{background:#f5dfd9ef;border-left-color:#a34637}@media(min-width:1000px)and (pointer:fine){.ward-hud:has(.sample-timers:not([hidden])) .sound-toggle{top:auto;bottom:24px}}.review-checkin{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.review-step{display:grid;align-content:center;justify-items:center;gap:7px;min-height:116px;padding:12px 8px;border:2px solid #788c7c;border-radius:10px;background:#eeeadd;color:#293b30;touch-action:manipulation;font:inherit}.review-step>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#d2dacb;font-weight:900}.review-step strong{font-size:17px}.review-step small{font-size:12px;line-height:1.2}.review-step.current{border-color:#37664c;background:#d5e5ca;box-shadow:inset 0 0 0 1px #37664c}.review-step.complete{border-color:#789c78;background:#dbe6d7;opacity:.7}.incoming-call[data-kind=personal]{border-color:#d9b1a1;background:#554440}.incoming-call[data-kind=personal]>span{color:#f2cbbb}.incoming-call[data-kind=unknown]{border-color:#a8a3c9;background:#3d3a4f}.incoming-call[data-kind=unknown]>span{color:#d2cdf2}.minimap-card{width:360px}@media(max-width:700px){.minimap-card{width:178px}}@media(max-height:500px){.minimap-card{width:clamp(204px,calc((100dvh - 180px)*1.2),264px)}}@media(min-width:701px)and (pointer:fine){.task-sheet{width:min(442px,calc(100vw - 48px));max-height:min(71.5dvh,572px)}}.dialogue-panel{position:absolute;left:50%;bottom:96px;transform:translate(-50%);width:min(520px,calc(100vw - 32px));padding:12px 16px;border:2px solid #353a35;border-radius:8px;background:#f3f0e7;box-shadow:4px 4px #353a35;z-index:4;pointer-events:auto}.dialogue-speaker{margin:0 0 2px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.dialogue-text{margin:0 0 8px;font-size:15px;line-height:1.35}.dialogue-choices{display:grid;gap:6px}.dialogue-choices button{text-align:left;padding:7px 10px;border:2px solid #353a35;border-radius:6px;background:#e1e8dd;font:inherit;cursor:pointer}.dialogue-choices button:hover,.dialogue-choices button:focus-visible{background:#c9d5c7}.dialogue-choices kbd{background:#c9d5c7;margin-right:6px}.dialogue-leave{background:transparent!important}.notes-toggle{position:absolute;top:22px;left:calc(50% + 74px);z-index:3;padding:8px 12px;border:2px solid #353a35;border-radius:8px;background:#f3f0e7;box-shadow:3px 3px #353a35;font:inherit;font-weight:700;font-size:12px;cursor:pointer;pointer-events:auto}.notes-toggle kbd{background:#c9d5c7;margin-left:4px}.notes-overlay{position:absolute;inset:0;z-index:5;display:grid;place-items:center;background:#1f2a2366;pointer-events:auto}.notes-overlay[hidden]{display:none}.notes-sheet{width:min(640px,calc(100vw - 32px));max-height:calc(100dvh - 48px);overflow:auto;padding:14px 16px;border:2px solid #353a35;border-radius:10px;background:#f3f0e7;box-shadow:5px 5px #353a35}.notes-sheet>header{display:flex;justify-content:space-between;align-items:start;gap:8px}.notes-sheet h2{margin:0;font-size:20px}.notes-sheet .eyebrow{margin:0 0 2px}.notes-sheet>header button{font-size:22px;line-height:1;padding:4px 10px;border:2px solid #353a35;border-radius:6px;background:#e1e8dd;cursor:pointer}.notes-chips{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.notes-chip{padding:5px 10px;border:2px solid #353a35;border-radius:999px;background:#e1e8dd;font:inherit;font-size:13px;cursor:pointer}.notes-chip[aria-pressed=true]{background:#353a35;color:#f3f0e7}.notes-chip small{opacity:.7}.notes-entry{padding:8px 0;border-top:1px solid #b9b39f}.notes-entry header{display:flex;justify-content:space-between;gap:8px;font-size:12px}.notes-entry header span{color:#5a6359}.notes-entry p{margin:4px 0 0;font-size:14px;line-height:1.4}.accusation-overlay{position:absolute;inset:0;z-index:50;display:grid;place-items:center;background:#1f2a23aa;pointer-events:auto}.accusation-card{width:min(620px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:18px 20px;border:2px solid #353a35;border-radius:10px;background:#f3f0e7;box-shadow:5px 5px #353a35}.accusation-line{font-size:16px;line-height:1.45;margin:0 0 12px}.accusation-faces{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin-top:8px}.accusation-face{display:grid;gap:6px}.accusation-suspect{min-height:64px;border:2px solid #353a35;border-radius:8px;background:#e1e8dd;font:inherit;font-weight:700;cursor:pointer}.accusation-alternate{border:1px dashed #353a35;border-radius:6px;background:transparent;font:inherit;font-size:12px;padding:6px;cursor:pointer}.accusation-actions{display:flex;gap:12px;align-items:center}.ending-screen{min-height:100dvh;display:grid;place-items:center;background:#e9e5da;padding:16px}.ending-card{width:min(640px,100%);padding:22px 24px;border:2px solid #353a35;border-radius:10px;background:#f6f3ea;box-shadow:5px 5px #353a35}.ending-card h1{margin:4px 0 14px;font-size:26px}.ending-card p{line-height:1.55}.reconstruction-caption{position:absolute;left:50%;bottom:40px;transform:translate(-50%);width:min(640px,calc(100vw - 32px));padding:10px 16px;border-radius:8px;background:#1f2a23d9;color:#f3f0e7;font-size:16px;text-align:center;z-index:6}.reconstruction-caption[hidden]{display:none}.ward-hud.reconstruction-mode>*:not(.reconstruction-caption){display:none!important}.task-row[data-guide-task]{cursor:pointer;-webkit-tap-highlight-color:transparent}.task-row[data-guide-task]:active{background:#e6eadf}.task-row.task-guided{background:#f6efc9;box-shadow:inset 4px 0 #d9a82f}.microgame-overlay-battle .versus-fight .fight-arena{position:relative;display:block;min-height:0;padding:0;overflow:hidden;border:0;border-top:3px solid #e2b64a;border-bottom:3px solid #e2b64a;border-radius:0;background:radial-gradient(ellipse at 50% 42%,#7a5f24 0,#2a2010 48%,#0a0806),radial-gradient(#ffe7a022 1px,transparent 1.6px) 0 0 / 11px 11px;background-blend-mode:normal;box-shadow:inset 0 0 90px #000}.microgame-overlay-battle .versus-fight .fight-arena:before{position:absolute;inset:0;opacity:1;content:"";background:linear-gradient(90deg,#8a1e1e66,transparent 38% 62%,#1f6a7a66)}.microgame-overlay-battle .versus-fight .fight-arena:after{position:absolute;inset:0;content:"";pointer-events:none;background:linear-gradient(0deg,#000000b0,transparent 40%)}.microgame-overlay-battle .versus-fight .fight-corner{position:absolute;bottom:0;z-index:1;display:block;height:100%;width:46%;translate:none}.microgame-overlay-battle .versus-fight .fight-corner-opponent{left:-2%}.microgame-overlay-battle .versus-fight .fight-corner-player{right:-2%}.microgame-overlay-battle .versus-fight .fight-fighter{position:absolute;bottom:-6%;height:96%;width:auto;aspect-ratio:86 / 128;max-width:100%;translate:calc((var(--push, .5) - .5) * -70px) 0;transition:translate 90ms linear;filter:drop-shadow(0 0 24px #ffd98055) drop-shadow(8px 8px 0 #0008)}.microgame-overlay-battle .versus-fight .fight-fighter-opponent{left:8%;transform:scaleX(-1) scale(1.12);transform-origin:50% 100%}.microgame-overlay-battle .versus-fight .fight-fighter-player{right:8%;transform:scale(1.12);transform-origin:50% 100%}.microgame-overlay-battle .versus-fight .fight-vs-title{position:absolute;z-index:2;top:46%;left:50%;transform:translate(-50%,-50%) skew(-6deg);font-size:clamp(64px,30vh,190px);font-weight:1000;font-style:italic;line-height:.8;letter-spacing:-.04em;color:transparent;background:radial-gradient(#fff9 1px,transparent 1.4px) 0 0 / 5px 5px,linear-gradient(#fff6b8,#f0b52a 48%,#8d5a10);-webkit-background-clip:text;background-clip:text;-webkit-text-stroke:3px #2a1a05;paint-order:stroke fill;filter:drop-shadow(0 5px 0 #000) drop-shadow(0 0 22px #ffcc4acc);pointer-events:none}.microgame-overlay-battle .versus-fight .fight-vs-pulse{animation:vs-pulse .12s ease-out}@keyframes vs-pulse{0%{transform:translate(-50%,-50%) skew(-6deg) scale(1.16)}to{transform:translate(-50%,-50%) skew(-6deg) scale(1)}}.microgame-overlay-battle .versus-fight .fight-plate{position:absolute;z-index:3;bottom:8px;display:grid;gap:2px;width:min(38%,330px)}.microgame-overlay-battle .versus-fight .fight-plate-opponent{left:10px;text-align:left}.microgame-overlay-battle .versus-fight .fight-plate-player{right:10px;text-align:right}.microgame-overlay-battle .versus-fight .fight-plate .fight-name{max-width:none;margin:0 0 2px;padding:0;color:#fff;font-size:clamp(20px,7vh,46px);font-weight:1000;font-style:italic;line-height:.95;letter-spacing:.02em;text-transform:uppercase;text-shadow:0 3px #000,0 0 14px #000;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:static;background:none}.microgame-overlay-battle .versus-fight .fight-plate span{display:flex;justify-content:space-between;gap:8px;padding:2px 8px;border:1px solid #e2b64a99;background:#000000b8;color:#f2e3bd;font-size:clamp(9px,2.6vh,13px);letter-spacing:.06em}.microgame-overlay-battle .versus-fight .fight-plate em{font-style:normal;color:#cfae62}.microgame-overlay-battle .versus-fight .fight-plate b{color:#fff;font-weight:900}.microgame-overlay-battle .versus-fight .fight-pips{color:#ff8a58;letter-spacing:.1em}.microgame-overlay-battle .versus-fight .fight-chat{z-index:4;top:8px;left:28%;width:max-content;max-width:34%;min-height:0;padding:5px 12px;font-size:clamp(11px,3.2vh,17px);line-height:1.15}.microgame-overlay-battle .versus-fight .fight-chat:after{display:none}.microgame-overlay-battle .versus-fight .fight-hud{gap:0}.microgame-overlay-battle .versus-fight .tug-bar{height:clamp(18px,5vh,30px);border:2px solid #e2b64a;border-radius:0;background:#0b0908;clip-path:polygon(14px 0,100% 0,calc(100% - 14px) 100%,0 100%);box-shadow:none}.microgame-overlay-battle .versus-fight .fight-status{text-align:center}.microgame-overlay-battle .versus-fight{align-self:stretch}.microgame-overlay-battle .versus-fight .fight-arena{height:100%;min-height:120px}.microgame-overlay-battle .versus-fight .fight-timer{position:absolute;z-index:4;top:8px;right:12px;min-width:52px;padding:3px 10px;border:2px solid #e2b64a;background:#000000c0;color:#fff3c6;font-size:clamp(14px,4.4vh,24px);font-weight:1000;font-variant-numeric:tabular-nums;letter-spacing:.06em;text-align:center}.microgame-overlay-battle .versus-fight .fight-timer[hidden]{display:none}.microgame-overlay-battle .versus-fight .fight-timer-urgent{border-color:#ff6a58;color:#ff9a8a;animation:timer-urgent .5s ease-in-out infinite alternate}@keyframes timer-urgent{to{background:#5a1713}}.microgame-overlay-battle .versus-fight .fight-chat{top:8px;left:10px;right:84px;width:auto;max-width:none;transform:none;display:flex;align-items:center;justify-content:center;min-height:clamp(44px,16vh,84px);padding:6px 18px;border:3px solid #1a1208;border-radius:6px;background:#fff3c6;box-shadow:0 4px #000,0 0 26px #ffd45a99;color:#1d1208;text-align:center;text-shadow:none;font-size:clamp(17px,6vh,32px);font-weight:1000;line-height:1.1;letter-spacing:.01em}.microgame-overlay-battle .versus-fight .fight-chat:after{display:block;left:12%;bottom:-13px;width:20px;height:20px;margin:0;border-right:3px solid #1a1208;border-bottom:3px solid #1a1208;background:#fff3c6;transform:rotate(45deg)}.microgame-overlay-battle .versus-fight .fight-chat-hit{animation:chat-pop .26s ease-out}@keyframes chat-pop{0%{transform:scale(.92);filter:brightness(1.3)}60%{transform:scale(1.04)}to{transform:none;filter:none}}.microgame-overlay-battle .versus-fight .fight-vs-title{top:56%}.microgame-overlay-battle{background:#bfe9ff}.microgame-overlay-battle .microgame-card{background:radial-gradient(circle at 12% 18%,#ffffff 0 3px,transparent 4px) 0 0 / 46px 46px,radial-gradient(circle at 70% 60%,#ffd84d88 0 4px,transparent 5px) 0 0 / 64px 64px,radial-gradient(circle at 40% 80%,#ff8fab77 0 4px,transparent 5px) 0 0 / 58px 58px,linear-gradient(#bfe9ff,#fff4cf)}.microgame-overlay-battle .microgame-task-title{color:#2b2340;text-shadow:0 2px 0 #ffffff,0 0 10px #ffffffaa;letter-spacing:.03em}.microgame-overlay-battle .microgame-instruction,.microgame-overlay-battle .fight-help{color:#4a4070}.microgame-overlay-battle .versus-fight .fight-arena{border:4px solid #2b2340;border-radius:22px;box-shadow:0 6px #2b2340;background:radial-gradient(ellipse 22% 14% at 18% 22%,#ffffff 0 60%,transparent 62%),radial-gradient(ellipse 16% 10% at 74% 16%,#ffffff 0 60%,transparent 62%),linear-gradient(#9fdcff 0 58%,#8fd98f 58% 61%,#b8efb0 61%)}.microgame-overlay-battle .versus-fight .fight-arena:before{inset:0 0 auto;height:14px;opacity:1;background:repeating-linear-gradient(90deg,#ff6b9a 0 28px,#ffd84d 28px 56px,#4cc9f0 56px 84px,#7ed957 84px 112px,#b28dff 112px 140px);border-bottom:3px solid #2b2340}.microgame-overlay-battle .versus-fight .fight-arena:after{background:none}.microgame-overlay-battle .versus-fight .fight-fighter-model{filter:drop-shadow(0 6px 0 #2b234033);transform:none;aspect-ratio:360 / 440}.microgame-overlay-battle .versus-fight .fight-fighter-model:after{position:absolute;z-index:-1;left:10%;right:10%;bottom:3%;height:12%;border:3px solid #2b2340;border-radius:50%;content:""}.microgame-overlay-battle .versus-fight .fight-fighter-opponent.fight-fighter-model:after{background:#ff8a7a}.microgame-overlay-battle .versus-fight .fight-fighter-player.fight-fighter-model:after{background:#5fd39a}.microgame-overlay-battle .fight-portrait{position:relative;display:block;width:100%;height:100%;object-fit:contain;object-position:50% 100%}.microgame-overlay-battle .versus-fight .fight-vs-title{color:#fff;background:none;-webkit-background-clip:border-box;background-clip:border-box;-webkit-text-stroke:5px #2b2340;paint-order:stroke fill;filter:drop-shadow(0 6px 0 #ff6b9a) drop-shadow(0 10px 0 #2b2340);font-style:normal;letter-spacing:.02em}.microgame-overlay-battle .versus-fight .fight-plate span{border:0;border-radius:0;background:transparent;color:#4a4070;padding:1px 2px}.microgame-overlay-battle .versus-fight .fight-plate{gap:0;padding:0 10px 6px;border:3px solid #2b2340;border-radius:14px;background:#fffe;box-shadow:0 4px #2b2340}.microgame-overlay-battle .versus-fight .fight-plate .fight-name{margin:0 -10px 4px;padding:3px 10px;border-radius:10px 10px 0 0;color:#fff;font-style:normal;text-shadow:0 2px 0 #2b2340;-webkit-text-stroke:1px #2b2340}.microgame-overlay-battle .versus-fight .fight-plate-opponent .fight-name{background:#ff8a7a}.microgame-overlay-battle .versus-fight .fight-plate-player .fight-name{background:#5fd39a}.microgame-overlay-battle .versus-fight .fight-plate em{color:#8a7fb0}.microgame-overlay-battle .versus-fight .fight-plate b{color:#2b2340}.microgame-overlay-battle .versus-fight .fight-pips{color:#ffb703;letter-spacing:.05em}.microgame-overlay-battle .versus-fight .tug-bar{border:4px solid #2b2340;border-radius:999px;background:#fff;clip-path:none;box-shadow:0 4px #2b2340}.microgame-overlay-battle .versus-fight .tug-fill-opponent{background:repeating-linear-gradient(135deg,#ff8a7a 0 14px,#ff9f8f 14px 28px)}.microgame-overlay-battle .versus-fight .tug-fill-player{background:repeating-linear-gradient(135deg,#5fd39a 0 14px,#77dfab 14px 28px)}.microgame-overlay-battle .versus-fight .tug-bar:after{background:#2b234055}.microgame-overlay-battle .versus-fight .tug-knot{top:50%;width:26px;height:26px;margin:-13px 0 0 -13px;border:3px solid #2b2340;border-radius:50%;background:#ffd84d;box-shadow:none}.microgame-overlay-battle .versus-fight .fight-timer{border:3px solid #2b2340;border-radius:999px;background:#ffd84d;color:#2b2340;box-shadow:0 3px #2b2340}.microgame-overlay-battle .versus-fight .fight-timer-urgent{border-color:#2b2340;background:#ff8a7a;color:#fff;animation:timer-pop .5s ease-in-out infinite alternate}@keyframes timer-pop{to{transform:scale(1.12)}}.microgame-overlay-battle .versus-fight .fight-chat{border:4px solid #2b2340;border-radius:22px;background:#fff;color:#2b2340;box-shadow:0 5px #2b2340}.microgame-overlay-battle .versus-fight .fight-chat:after{border-color:#2b2340;background:#fff}.microgame-overlay-battle .fight-status{border:3px solid #2b2340;border-radius:16px;background:#fff;color:#2b2340;text-shadow:none;box-shadow:0 4px #2b2340}.microgame-overlay-battle .fight-counter-button{border:4px solid #2b2340;border-radius:22px;background:#ffd84d;color:#2b2340;text-shadow:0 2px 0 #ffffff;box-shadow:0 7px #2b2340}.microgame-overlay-battle .fight-counter-button:active{transform:translateY(5px);box-shadow:0 2px #2b2340}.microgame-overlay-battle .versus-fight .fight-arena-winning{box-shadow:0 6px #2b2340,0 0 0 6px #5fd39a}.microgame-overlay-battle .versus-fight .fight-arena-losing{box-shadow:0 6px #2b2340,0 0 0 6px #ff8a7a}.title-screen{position:relative;overflow:hidden;display:block;height:100vh;min-height:0;padding:0;background:#7cc4ff}.start-stage{position:absolute;left:0;top:0;width:max(100vw,calc(100vh * 1853 / 849));aspect-ratio:1853 / 849;container-type:inline-size}.start-art{display:block;width:100%;height:100%;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.start-title{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.start-menu{position:absolute;left:11.4%;top:40%;width:20.5%;display:flex;flex-direction:column;align-items:center}.start-play{position:relative;display:flex;align-items:center;justify-content:center;gap:1.6cqw;width:100%;height:9cqw;padding:0;border:0;background:#f0467c;color:#fff;font:900 4.6cqw/1 ui-rounded,Nunito,Arial Rounded MT Bold,Segoe UI,sans-serif;letter-spacing:.02em;cursor:pointer;clip-path:polygon(0 24%,6% 0,100% 5%,98% 94%,7% 100%);box-shadow:inset 0 -.5cqw #c92f63;text-shadow:0 .25cqw 0 #8f1f47;-webkit-text-stroke:.25cqw #8f1f47;paint-order:stroke fill;transform:rotate(-2.2deg);transition:filter .12s,transform .12s}.start-play b{font-weight:900}.start-ticks{color:#ffd4e2;font-size:.5em;letter-spacing:-.1em}.start-arrow{font-size:.5em}.start-play:hover{filter:brightness(1.08);transform:rotate(-2.2deg) scale(1.03)}.start-play:active{transform:rotate(-2.2deg) translateY(.3cqw)}.start-item{margin-top:.6cqw;padding:.2cqw .8cqw;border:0;background:none;color:#fff;font:900 2.7cqw/1.1 ui-rounded,Nunito,Arial Rounded MT Bold,Segoe UI,sans-serif;letter-spacing:.03em;text-shadow:0 .2cqw 0 #0e1330;-webkit-text-stroke:.1cqw #0e1330;cursor:pointer;transform:rotate(-3deg);transition:color .12s,transform .12s}.start-menu .start-play+.start-item{margin-top:3cqw}.start-item:nth-of-type(2n){transform:rotate(-2deg) translate(-.4cqw)}.start-item:hover{color:#ffd84d;transform:rotate(-3deg) scale(1.08)}.start-item i{color:#ffd84d;font-size:.7em;-webkit-text-stroke:0;text-shadow:none}.start-continue{color:#7ff0c0}.start-stage .save-status{position:absolute;left:10.2%;top:91%;width:18%;margin:0;padding:0;border:0;background:none;color:#b7c0e8;font-size:.95cqw;font-weight:700;line-height:1.25;text-align:center;transform:rotate(-2deg)}@media(max-aspect-ratio:1/1){.start-stage{left:0}}.microgame-overlay:not(.microgame-overlay-battle){display:grid;place-items:center;background:#2b234066}.microgame-overlay:not(.microgame-overlay-battle) .microgame-card{margin:0!important;width:min(560px,100%);max-height:calc(100dvh - 24px)!important;overflow-y:auto;padding:0 0 20px;border:4px solid #2b2340;border-radius:26px;background:#fffdf5;box-shadow:0 8px #2b2340,0 0 0 6px #fffa;text-align:center}.microgame-overlay:not(.microgame-overlay-battle) .microgame-task-title{margin:0 0 14px;padding:12px 18px;border-bottom:4px solid #2b2340;background:linear-gradient(#ffe98a,#ffd84d);color:#2b2340;font-size:clamp(1.05rem,3.4vw,1.5rem);font-weight:900;line-height:1.15}.microgame-overlay:not(.microgame-overlay-battle) .microgame-instruction{margin:0 20px 12px;color:#4a4070;font-size:1rem;font-weight:700;line-height:1.3}.microgame-overlay:not(.microgame-overlay-battle) [data-microgame-body]{margin:0 20px}.microgame-overlay:not(.microgame-overlay-battle) [data-microgame-status]{margin:12px 20px 0;padding:6px 12px;border:3px solid #2b2340;border-radius:14px;background:#fff;color:#2b2340;font-size:.85rem;font-weight:800}.microgame-overlay:not(.microgame-overlay-battle) .primary-button{width:calc(100% - 40px);margin:14px 20px 0;border:4px solid #2b2340;border-radius:20px;background:#ffd84d;box-shadow:0 6px #2b2340;color:#2b2340;font-weight:900;letter-spacing:.08em;text-shadow:0 2px 0 #ffffffaa}.microgame-overlay:not(.microgame-overlay-battle) .primary-button:active{transform:translateY(4px);box-shadow:0 2px #2b2340;background:#ffd84d}.ward-hud:has(.microgame-overlay:not([hidden]):not(.microgame-overlay-battle)) :is(.task-notices,.incoming-call,.world-notice,.consultant-entrance,.pinned-task,.interaction-prompt){visibility:hidden}.number-game{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:6px 0 0}.number-tile{min-height:104px;border:4px solid #2b2340;border-radius:24px;box-shadow:0 7px #2b2340;color:#2b2340;font:900 clamp(2.4rem,9vw,3.6rem)/1 ui-rounded,"Nunito","Segoe UI",sans-serif;text-shadow:0 3px 0 #ffffffaa;touch-action:manipulation;user-select:none;-webkit-user-select:none;cursor:pointer}.number-tile:nth-child(4n+1){background:#ff8fb4}.number-tile:nth-child(4n+2){background:#7fd3ff}.number-tile:nth-child(4n+3){background:#ffd84d}.number-tile:nth-child(4n+4){background:#8fe3a8}.number-tile:active:not(:disabled){transform:translateY(5px);box-shadow:0 2px #2b2340}.number-tile.done{background:#e4e0f0!important;color:#8a7fb0;box-shadow:0 2px #2b2340;transform:translateY(5px);text-shadow:none}.number-tile.shake{animation:tile-shake .3s linear;background:#ff7668!important}@keyframes tile-shake{20%{translate:-8px 0}40%{translate:8px 0}60%{translate:-5px 0}80%{translate:5px 0}}.mg-progress{height:42px;margin:8px 0 0;overflow:hidden;border:4px solid #2b2340;border-radius:999px;background:#fff;box-shadow:0 5px #2b2340}.mg-progress i{display:block;width:0;height:100%;border-radius:999px;background:repeating-linear-gradient(135deg,#5fd39a 0 14px,#77dfab 14px 28px);transition:width .12s ease-out}.microgame-overlay:not(.microgame-overlay-battle) .microgame-tap-progress{margin:16px 0 6px;color:#2b2340;font:900 clamp(2.4rem,9vw,3.4rem)/1 ui-rounded,"Nunito","Segoe UI",sans-serif}.mg-tap-hint{margin:0 0 4px;color:#8a7fb0!important;font-size:.85rem;font-weight:800}.microgame-overlay:not(.microgame-overlay-battle) [data-microgame-body][data-kind=tap]{min-height:150px;cursor:pointer;touch-action:manipulation;user-select:none;-webkit-user-select:none}.microgame-overlay:not(.microgame-overlay-battle) :is(.needle-track,.timing-track,.review-step,.record-card,.discharge-folder,.challenge-confirm){border-color:#2b2340}.microgame-overlay:not(.microgame-overlay-battle) :is(.timing-track,.needle-track){border-width:4px;border-radius:16px}.run-end-overlay .run-end-card{width:min(560px,100%);max-height:calc(100dvh - 24px);overflow-y:auto;padding:22px 22px 20px;border:4px solid #2b2340;border-radius:26px;background:#fffdf5;box-shadow:0 8px #2b2340,0 0 0 6px #fffa}.run-end-overlay .run-end-card h2{margin:0 0 6px;color:#2b2340;font-size:1.9rem;font-weight:900}.run-end-overlay .run-end-card p:not(.eyebrow){margin-bottom:12px;color:#4a4070;font-weight:700}.run-end-overlay .eyebrow{color:#e0457b}.shift-report{margin:0 0 14px;text-align:left}.shift-report[hidden]{display:none}.shift-report ul{margin:0;padding:0;list-style:none;display:grid;gap:6px}.shift-row{display:flex;justify-content:space-between;gap:12px;padding:7px 12px;border:3px solid #2b2340;border-radius:14px;background:#fff;color:#2b2340;font-size:.9rem;font-weight:800}.shift-row strong{text-align:right;font-weight:900}.shift-row-good{background:#dff8e8}.shift-row-bad{background:#ffe0dc}.shift-report-banner{margin:0 0 10px!important;padding:10px 14px;border:4px solid #2b2340;border-radius:18px;background:#fff;font-size:1.05rem;font-weight:900;text-align:center;box-shadow:0 5px #2b2340}.shift-report-good{background:#ffe98a;color:#2b2340!important}.shift-report-bad{background:#ff8a7a;color:#fff!important;text-shadow:0 2px 0 #2b2340}.run-end-overlay .primary-button{border:4px solid #2b2340;border-radius:20px;background:#ffd84d;box-shadow:0 6px #2b2340;color:#2b2340;font-weight:900}@media(max-height:520px){.run-end-overlay .run-end-card{display:grid;grid-template-columns:minmax(0,1fr);width:min(640px,100%);padding:10px 14px 12px}.run-end-overlay .run-end-card h2{font-size:1.3rem;margin-bottom:2px}.shift-report ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}.shift-row{flex-direction:column;align-items:flex-start;gap:0;padding:2px 8px;font-size:.64rem;border-width:2px;border-radius:10px}.shift-row strong{text-align:left;font-size:.8rem}.shift-report-banner{padding:5px 10px;font-size:.85rem;margin-bottom:6px!important}.run-end-overlay .run-end-card p:not(.eyebrow){margin-bottom:4px;font-size:.8rem}.run-end-overlay .eyebrow{margin-bottom:2px}}.task-notice-guide{pointer-events:auto;cursor:pointer}.task-notice-guide:after{content:"Tap to show the way ▸";color:#6b6f6b;font-size:10px;font-weight:800;letter-spacing:.04em}.incoming-call{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 12px;width:310px;padding:14px 16px;border:4px solid #2b2340;border-radius:24px;background:#fffdf5;color:#2b2340;box-shadow:0 6px #2b2340}.incoming-call[hidden]{display:none}.incoming-call>span{grid-column:1;white-space:nowrap;color:#1f9d55;font-size:10px;font-weight:900;letter-spacing:.12em}.incoming-call>strong{grid-column:1;margin:0;font-size:17px;line-height:1.15;overflow-wrap:anywhere}.incoming-call .call-actions{grid-column:2;grid-row:1 / 3;display:flex;gap:10px}.incoming-call .call-btn{display:grid;place-items:center;flex:none;width:52px;height:52px;min-height:0;padding:0;border:3px solid #2b2340;border-radius:50%;color:#fff;box-shadow:0 4px #2b2340;cursor:pointer;touch-action:manipulation}.incoming-call .call-btn svg{width:26px;height:26px;fill:currentColor}.incoming-call .call-answer{background:#2fc35f;animation:call-ring .7s ease-in-out infinite}.incoming-call .call-decline{background:#ff4b4b}.incoming-call .call-decline svg{transform:rotate(135deg)}.incoming-call .call-btn:active{transform:translateY(3px);box-shadow:0 1px #2b2340}@keyframes call-ring{0%,to{transform:rotate(0)}20%{transform:rotate(-12deg)}40%{transform:rotate(10deg)}60%{transform:rotate(-6deg)}80%{transform:rotate(4deg)}}@media(prefers-reduced-motion:reduce){.incoming-call .call-answer{animation:none}}.incoming-call[data-kind=personal]{border-color:#2b2340;background:#ffe3ee}.incoming-call[data-kind=personal]>span{color:#d6336c}.incoming-call[data-kind=unknown]{border-color:#2b2340;background:#ece6ff}.incoming-call[data-kind=unknown]>span{color:#6b4fd6}.recovery-timer{position:absolute;z-index:7;left:50%;bottom:120px;transform:translate(-50%);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:4px 12px;width:min(380px,calc(100vw - 32px));padding:12px 16px;border:4px solid #2b2340;border-radius:22px;background:#fffdf5;color:#2b2340;box-shadow:0 6px #2b2340;pointer-events:none}.recovery-timer .recovery-icon{font-size:1.9rem}.recovery-timer strong{font-size:1.05rem;font-weight:900}.recovery-timer b{font-size:1.9rem;font-weight:900;font-variant-numeric:tabular-nums}.recovery-timer .recovery-bar{grid-column:1 / -1;display:block;height:18px;overflow:hidden;border:3px solid #2b2340;border-radius:999px;background:#fff}.recovery-timer .recovery-bar>i{display:block;width:0;height:100%;background:repeating-linear-gradient(135deg,#5fd39a 0 12px,#77dfab 12px 24px)}.story-intro{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:20px;background:linear-gradient(#1b2248d9,#1b2248f2),#1b2248 url(../start-art.jpg) left top / cover no-repeat;cursor:pointer}.story-card{display:grid;gap:14px;width:min(620px,100%);padding:26px 28px 22px;border:4px solid #2b2340;border-radius:28px;background:#fffdf5;color:#2b2340;box-shadow:0 8px #2b2340,0 0 0 6px #fff5;text-align:center;cursor:default}.story-card .eyebrow{margin:0;color:#e0457b;font-weight:900;letter-spacing:.12em}.story-text{display:grid;gap:10px;min-height:9.5em;align-content:start}.story-text p{margin:0;min-height:1.3em;font-size:clamp(1.15rem,3.2vw,1.6rem);font-weight:800;line-height:1.3}.story-text p:last-child{color:#e0457b}.story-go{justify-self:center;padding:12px 30px;border:4px solid #2b2340;border-radius:20px;background:#ffd84d;color:#2b2340;box-shadow:0 6px #2b2340;font:900 1.2rem/1 ui-rounded,Nunito,Segoe UI,sans-serif;letter-spacing:.06em;cursor:pointer}.story-go:disabled{opacity:.35;cursor:default;box-shadow:0 3px #2b2340}.story-go:not(:disabled):active{transform:translateY(4px);box-shadow:0 2px #2b2340}.story-skip{color:#8a7fb0;font-weight:700}@media(max-height:520px){.story-card{gap:6px;padding:12px 18px}.story-text{min-height:0;gap:4px}.story-text p{font-size:1rem}.story-go{padding:8px 22px;font-size:1rem}}:root{--ink: #2b2340;--clip-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 56'%3E%3Crect x='6' y='8' width='36' height='44' rx='6' fill='%23fff' stroke='%232b2340' stroke-width='4'/%3E%3Crect x='15' y='3' width='18' height='10' rx='4' fill='%234aa3ff' stroke='%232b2340' stroke-width='3'/%3E%3Crect x='21' y='22' width='6' height='18' rx='2' fill='%23ff5d8f'/%3E%3Crect x='15' y='28' width='18' height='6' rx='2' fill='%23ff5d8f'/%3E%3C/svg%3E")}:is(.task-sheet,.patient-sheet,.directory-sheet,.pause-card){border:4px solid var(--ink);border-radius:26px;background:#fffdf5;box-shadow:0 7px 0 var(--ink),0 0 0 5px #fff8;color:var(--ink)}:is(.task-sheet,.patient-sheet,.directory-sheet)>header{position:relative;display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 10px;padding:6px 8px 6px 54px;border:3px solid var(--ink);border-radius:16px;background:linear-gradient(#ffe98a,#ffd84d);box-shadow:0 3px 0 var(--ink);transform:rotate(-1deg)}:is(.task-sheet,.patient-sheet,.directory-sheet)>header:before{content:"";position:absolute;left:6px;top:50%;width:38px;height:44px;transform:translateY(-52%) rotate(-8deg);background:var(--clip-icon) center / contain no-repeat}:is(.task-sheet,.patient-sheet,.directory-sheet)>header .eyebrow{display:none}:is(.task-sheet,.patient-sheet,.directory-sheet)>header h2{margin:0;color:var(--ink);font:900 clamp(1.05rem,2.6vw,1.35rem)/1.1 ui-rounded,"Nunito","Segoe UI",sans-serif;letter-spacing:.01em}:is(.task-sheet,.patient-sheet,.directory-sheet)>header button{flex:none;display:grid;place-items:center;width:34px;height:34px;min-width:0;min-height:0;padding:0;border:3px solid var(--ink);border-radius:50%;background:#fff;color:var(--ink);font-size:1.15rem;font-weight:900;line-height:1;box-shadow:0 2px 0 var(--ink);cursor:pointer}.task-sheet .task-count{display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border:3px solid var(--ink);border-radius:999px;background:#fff;font-size:.8rem}.sheet-pill,.task-sheet .directory-note,.patient-sheet .directory-note{display:block;width:fit-content;margin:10px auto 0;padding:5px 16px;border-radius:999px;background:var(--ink);color:#fff;font-size:.72rem;font-weight:800;letter-spacing:.02em;text-align:center}.task-sheet{width:min(360px,calc(100vw - 32px));max-height:min(62dvh,480px);padding:10px 12px 12px}.task-sheet [data-task-list]{display:grid;gap:7px}.task-sheet .task-row{display:grid;grid-template-columns:30px minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:6px 8px;border:3px solid #9bb7e6;border-radius:16px;background:#e5eefc;box-shadow:none}.task-sheet .task-row[data-urgency=urgent]{border-color:#e58a8a;background:#ffe6e6}.task-sheet .task-row[data-urgency=soon]{border-color:#e2c25a;background:#fff4c9}.task-sheet .task-row.task-guided{border-color:#0f7a4f;background:#d9f6e3;box-shadow:none}.task-sheet .task-row.task-waiting{opacity:.72}.task-sheet .task-row:active{filter:brightness(.96);background-color:inherit}.task-num{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--ink);color:#fff;font-size:.85rem;font-weight:900}.task-sheet .task-row.task-guided .task-num{background:#0f7a4f}.task-sheet .task-copy{gap:1px;min-width:0}.task-sheet .task-copy strong{font-size:.84rem;font-weight:900;line-height:1.15;text-transform:none;overflow-wrap:anywhere}.task-sheet .task-copy small{color:#5a4f74;font-size:.68rem;font-weight:700;line-height:1.2}.task-sheet .urgency{align-self:start;padding:2px 6px;border-radius:999px;background:#fff;color:var(--ink);font-size:.55rem;font-weight:900;letter-spacing:.06em}.task-sheet .task-actions{grid-column:auto;gap:3px}.task-sheet .task-actions button{width:26px;height:26px;border:2px solid var(--ink);border-radius:8px;background:#fff;color:var(--ink);font-size:.8rem;font-weight:900}.task-sheet .empty-tasks{padding:14px 0;font-weight:800;color:#5a4f74}.patient-sheet{width:min(440px,100%);padding:12px 14px 14px}.patient-sheet>p:not(.directory-note){margin:2px 0 10px;color:var(--ink);font-size:.88rem;font-weight:700;line-height:1.3;text-align:center}.patient-sheet [data-patient-tasks]{counter-reset:step;gap:8px}.patient-task-card{counter-increment:step;position:relative;display:grid;grid-template-columns:38px minmax(0,1fr);grid-template-areas:"num title" "num sub" "num act";align-items:center;gap:0 12px;min-height:0;padding:9px 12px;border:3px solid #0f7a4f;border-radius:20px;background:#d9f6e3;color:var(--ink);text-align:left}.patient-task-card:before{content:counter(step);grid-area:num;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#0f7a4f;color:#fff;font-size:1.05rem;font-weight:900}.patient-task-card strong{grid-area:title;font-size:1rem;font-weight:900;line-height:1.15}.patient-task-card small{grid-area:sub;font-size:.76rem;font-weight:700;color:#3b5a4a}.patient-task-card .patient-task-action{grid-area:act;color:#0f7a4f;font-size:.66rem;font-weight:900;letter-spacing:.06em}.patient-task-card .urgency{position:absolute;top:8px;right:12px;padding:1px 7px;border-radius:999px;background:#fff;color:var(--ink);font-size:.55rem}.patient-task-card:disabled{border-color:#b3a8de;background:#ece8fb;color:#5a4f74}.patient-task-card:disabled:before{background:#6a58b8}.patient-task-card:disabled small,.patient-task-card:disabled .patient-task-action{color:#6a58b8}.patient-task-card:not(:disabled):active{transform:translateY(2px);background:#c5efd3}.patient-sheet .empty-tasks{padding:10px 0;font-weight:800}.directory-sheet{padding:12px 16px 14px}.pause-card{padding:20px 24px}.pause-card .eyebrow{color:#e0457b;font-weight:900;letter-spacing:.12em}.pause-card h2{font:900 1.6rem/1.1 ui-rounded,Nunito,Segoe UI,sans-serif}.pause-overlay .primary-button,.rotate-phone .primary-button{border:4px solid var(--ink);border-radius:20px;background:#ffd84d;box-shadow:0 6px 0 var(--ink);color:var(--ink);font-weight:900}.microgame-overlay:not(.microgame-overlay-battle) .microgame-task-title{position:relative;padding-left:62px;text-align:left}.microgame-overlay:not(.microgame-overlay-battle) .microgame-task-title:before{content:"";position:absolute;left:14px;top:50%;width:34px;height:40px;transform:translateY(-50%) rotate(-8deg);background:var(--clip-icon) center / contain no-repeat}.task-sheet .task-count{color:var(--ink)}.task-sheet{width:min(400px,calc(100vw - 32px))}.task-sheet .task-copy small{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.task-sheet .task-copy strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.task-notices{width:min(460px,calc(100vw - 32px));gap:9px}.task-notice{gap:4px;padding:8px 14px 10px;border:4px solid var(--ink);border-left-width:4px;border-radius:22px;background:#fffdf5;color:var(--ink);box-shadow:0 5px 0 var(--ink)}.task-notice-guide{animation:staff-call-fidget .65s ease-out,staff-call-fade .24s ease-in 4.2s forwards}.task-callout-header{gap:8px}.task-callout-header strong{padding:3px 12px;border:3px solid var(--ink);border-radius:12px;background:linear-gradient(#ffe98a,#ffd84d);color:var(--ink);font-size:clamp(14px,2.4vw,18px);letter-spacing:.02em;text-transform:none;transform:rotate(-1.5deg)}.task-callout-header .urgency{padding:2px 8px;border-radius:999px;background:var(--ink);color:#fff;font-size:10px;letter-spacing:.06em}.task-callout-dismiss{min-width:30px;min-height:30px;width:30px;height:30px;padding:0;border:3px solid var(--ink);border-radius:50%;background:#fff;color:var(--ink);font-size:16px;font-weight:900;line-height:1}.task-callout-line{font-size:clamp(14px,2.2vw,18px);line-height:1.25}.task-notice .task-callout-details{color:#5a4f74;font-size:11px;font-weight:700}.task-notice-guide:after{color:#0f7a4f;font-weight:900}.task-notice-mo{border-color:var(--ink);background:#ffe3de}.task-notice-mo .task-callout-header strong{border-color:var(--ink);background:#ff8a7a;color:#fff;text-shadow:0 2px 0 var(--ink)}@media(max-height:520px){:is(.task-sheet,.patient-sheet,.directory-sheet)>header{margin-bottom:6px;padding:3px 6px 3px 46px;border-width:2px;border-radius:12px}:is(.task-sheet,.patient-sheet,.directory-sheet)>header:before{left:4px;width:30px;height:36px}:is(.task-sheet,.patient-sheet,.directory-sheet)>header h2{font-size:1rem}:is(.task-sheet,.patient-sheet,.directory-sheet)>header button{width:28px;height:28px;border-width:2px}.task-sheet,.patient-sheet{padding:6px 8px 8px;border-width:3px;border-radius:20px}.task-sheet .task-row{gap:6px;padding:3px 6px;border-width:2px;border-radius:12px}.task-num{width:24px;height:24px;font-size:.75rem}.task-sheet .task-copy strong{font-size:.74rem}.task-sheet .task-copy small{font-size:.6rem}.task-sheet .task-actions button{width:24px;height:24px}.patient-task-card{grid-template-columns:30px minmax(0,1fr);padding:5px 9px;border-width:2px;border-radius:14px}.patient-task-card:before{width:30px;height:30px;font-size:.9rem}.patient-task-card strong{font-size:.85rem}.patient-task-card small{font-size:.68rem}.sheet-pill,.task-sheet .directory-note,.patient-sheet .directory-note{margin-top:5px;padding:2px 12px;font-size:.62rem}}:root{--navy: #27204f;--clip-art: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 124 132'%3E%0A%3Cg transform='rotate(14 70 70)'%3E%3Crect x='38' y='22' width='62' height='84' rx='12' fill='%23ffb347' stroke='%2327204f' stroke-width='5'/%3E%3C/g%3E%0A%3Cg transform='rotate(-10 56 70)'%3E%3Crect x='18' y='24' width='62' height='84' rx='12' fill='%23ff8fb4' stroke='%2327204f' stroke-width='5'/%3E%3C/g%3E%0A%3Crect x='26' y='22' width='66' height='92' rx='14' fill='%23ffffff' stroke='%2327204f' stroke-width='5'/%3E%0A%3Crect x='45' y='9' width='28' height='20' rx='7' fill='%234aa3ff' stroke='%2327204f' stroke-width='4'/%3E%0A%3Crect x='52' y='14' width='14' height='6' rx='3' fill='%23bfe0ff'/%3E%0A%3Ccircle cx='59' cy='60' r='19' fill='%23ff5d7a' stroke='%2327204f' stroke-width='4'/%3E%0A%3Crect x='55' y='48' width='8' height='24' rx='2' fill='%23fff'/%3E%3Crect x='47' y='56' width='24' height='8' rx='2' fill='%23fff'/%3E%0A%3Crect x='38' y='88' width='42' height='5' rx='2.5' fill='%23cfe0ff'/%3E%3Crect x='38' y='99' width='28' height='5' rx='2.5' fill='%23cfe0ff'/%3E%0A%3Cpath d='M96 16l8-10M104 28l12-4M98 4l2-4' stroke='%2327204f' stroke-width='4' stroke-linecap='round' fill='none'/%3E%0A%3C/svg%3E");--check-art: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 56 56'%3E%3Ccircle cx='28' cy='28' r='26' fill='%23176b4a' stroke='%230f4d36' stroke-width='3'/%3E%3Cpath d='M15 29l9 9 17-19' stroke='%23fff' stroke-width='6' stroke-linecap='round' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E");--tube-art: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 72 56'%3E%3Ccircle cx='28' cy='28' r='26' fill='%23a9b6ea'/%3E%3Cg transform='rotate(35 28 28)'%3E%3Crect x='21' y='8' width='14' height='40' rx='6' fill='%23fff' stroke='%2327204f' stroke-width='3'/%3E%3Crect x='19' y='5' width='18' height='8' rx='3' fill='%234aa3ff' stroke='%2327204f' stroke-width='3'/%3E%3Crect x='23' y='28' width='10' height='17' rx='4' fill='%23ff4d6d'/%3E%3C/g%3E%3Cpath d='M68 8v40' stroke='%238fa6d8' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E");--info-art: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 72 56'%3E%3Ccircle cx='28' cy='28' r='26' fill='%23a9b6ea'/%3E%3Cpath d='M28 10l5 12 12 2-9 9 3 13-11-7-11 7 3-13-9-9 12-2z' fill='%23fff' stroke='%2327204f' stroke-width='3' stroke-linejoin='round'/%3E%3Cpath d='M68 8v40' stroke='%238fa6d8' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E");--plus-art: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 2h6v7h7v6h-7v7H9v-7H2V9h7z' fill='%23e6ebf7'/%3E%3C/svg%3E");--done-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 56 56'%3E%3Cpath d='M15 29l9 9 17-19' stroke='%23fff' stroke-width='7' stroke-linecap='round' stroke-linejoin='round' fill='none'/%3E%3C/svg%3E");--spark-white: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 56'%3E%3Cpath d='M8 10l14 6M4 28h20M8 46l14-6' stroke='%2523ffffff' stroke-width='5' stroke-linecap='round' fill='none'/%3E%3C/svg%3E");--spark-green: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 56'%3E%3Cpath d='M8 10l14 6M4 28h20M8 46l14-6' stroke='%25231d8a5f' stroke-width='5' stroke-linecap='round' fill='none'/%3E%3C/svg%3E");--spark-navy: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 56'%3E%3Cpath d='M8 10l14 6M4 28h20M8 46l14-6' stroke='%252327204f' stroke-width='5' stroke-linecap='round' fill='none'/%3E%3C/svg%3E")}:is(.task-sheet,.patient-sheet,.directory-sheet)>header,.microgame-overlay:not(.microgame-overlay-battle) .microgame-task-title{border:5px solid var(--navy);border-radius:22px;background:linear-gradient(#ffe978,#ffd23f 55%,#f7a824);box-shadow:0 4px 0 var(--navy);transform:rotate(-2deg)}:is(.task-sheet,.patient-sheet,.directory-sheet)>header h2,.microgame-overlay:not(.microgame-overlay-battle) .microgame-task-title{color:#fff;font:900 clamp(1.15rem,3.4vw,1.7rem)/1.05 ui-rounded,"Nunito","Arial Rounded MT Bold","Segoe UI",sans-serif;letter-spacing:-.01em;-webkit-text-stroke:6px var(--navy);paint-order:stroke fill;text-shadow:0 3px 0 var(--navy)}:is(.task-sheet,.patient-sheet,.directory-sheet)>header:before{left:-8px;top:50%;width:52px;height:56px;transform:translateY(-54%) rotate(-4deg);background:var(--clip-art) center / contain no-repeat}:is(.task-sheet,.patient-sheet,.directory-sheet)>header{padding-left:52px}:is(.task-sheet,.patient-sheet,.directory-sheet)>header button{border-color:var(--navy);color:var(--navy)}:is(.task-sheet,.patient-sheet,.directory-sheet,.pause-card){border-color:var(--navy);box-shadow:0 7px 0 var(--navy),0 0 0 5px #fff8;background:var(--plus-art) 12px 64px / 18px no-repeat,var(--plus-art) calc(100% - 12px) 64px / 18px no-repeat,var(--plus-art) 12px calc(100% - 12px) / 18px no-repeat,var(--plus-art) calc(100% - 12px) calc(100% - 12px) / 18px no-repeat,#fff9ee}.microgame-overlay:not(.microgame-overlay-battle) .microgame-card{position:relative;overflow:visible;width:min(500px,100%);margin:44px 0 0!important;padding:26px 22px 20px;border:5px solid var(--navy);border-radius:36px;box-shadow:0 7px 0 var(--navy),0 0 0 5px #fff7;background:var(--plus-art) 14px 64px / 20px no-repeat,var(--plus-art) calc(100% - 14px) 64px / 20px no-repeat,var(--plus-art) 14px calc(100% - 14px) / 20px no-repeat,var(--plus-art) calc(100% - 14px) calc(100% - 14px) / 20px no-repeat,#fff9ee;text-align:center}.microgame-overlay:not(.microgame-overlay-battle) .microgame-task-title{position:relative;z-index:2;margin:-56px -6px 16px 34px;padding:9px 22px 9px 54px;text-align:left}.microgame-overlay:not(.microgame-overlay-battle) .microgame-task-title:before{content:"";position:absolute;left:-62px;top:50%;width:104px;height:112px;transform:translateY(-52%) rotate(-3deg);background:var(--clip-art) center / contain no-repeat}.microgame-overlay:not(.microgame-overlay-battle) .microgame-task-title:after{content:"";position:absolute;right:-20px;top:2px;width:26px;height:38px;background:var(--spark-navy) center / contain no-repeat;transform:scaleX(-1)}.microgame-overlay:not(.microgame-overlay-battle) .microgame-instruction{margin:0 0 12px;color:var(--navy);font-size:1.02rem;font-weight:800;line-height:1.3}.microgame-overlay:not(.microgame-overlay-battle) [data-microgame-body]{margin:0}.microgame-overlay:not(.microgame-overlay-battle) [data-microgame-status]{display:flex;align-items:center;gap:4px;margin:12px 0 0;padding:8px 18px 8px 8px;border:4px solid #9db9ea;border-radius:26px;background:#e3edfd;color:var(--navy);font-size:.98rem;font-weight:800;line-height:1.25;text-align:left}.microgame-overlay:not(.microgame-overlay-battle) [data-microgame-status]:before{content:"";flex:none;width:72px;height:56px;background:var(--info-art) center / contain no-repeat}.microgame-card:has([data-challenge=steady]) [data-microgame-status]:before{background-image:var(--tube-art)}.microgame-overlay:not(.microgame-overlay-battle) [data-microgame-status]:empty{display:none}.microgame-overlay:not(.microgame-overlay-battle) :is(.primary-button,.challenge-confirm){position:relative;display:flex;align-items:center;justify-content:center;width:100%;min-height:66px;margin:12px 0 0;padding:8px 54px 8px 76px;border:5px solid #17744f;border-radius:999px;background:linear-gradient(#85e0ad,#4cc58a);box-shadow:0 6px #0f5439;color:#fff;font:900 clamp(1.15rem,3.6vw,1.6rem)/1.05 ui-rounded,"Nunito","Arial Rounded MT Bold","Segoe UI",sans-serif;letter-spacing:.01em;-webkit-text-stroke:5px #0f5439;paint-order:stroke fill;text-shadow:0 3px 0 #0f5439;cursor:pointer}.microgame-overlay:not(.microgame-overlay-battle) :is(.primary-button,.challenge-confirm):before{content:"";position:absolute;left:12px;top:50%;width:46px;height:46px;transform:translateY(-50%);background:var(--check-art) center / contain no-repeat}.microgame-overlay:not(.microgame-overlay-battle) :is(.primary-button,.challenge-confirm):after{content:"";position:absolute;right:14px;top:50%;width:30px;height:42px;transform:translateY(-50%);background:var(--spark-white) center / contain no-repeat}.microgame-overlay:not(.microgame-overlay-battle) :is(.primary-button,.challenge-confirm):active:not(:disabled){transform:translateY(4px);box-shadow:0 2px #0f5439;background:linear-gradient(#85e0ad,#4cc58a)}.microgame-overlay:not(.microgame-overlay-battle) :is(.primary-button,.challenge-confirm):disabled{opacity:1;filter:grayscale(.85) brightness(1.08);cursor:default}.microgame-overlay:not(.microgame-overlay-battle) .needle-track{height:70px;margin:4px 0 12px;border:5px solid var(--navy);border-radius:20px;background:#b3b7c9}.microgame-overlay:not(.microgame-overlay-battle) .needle-zone{top:14px;bottom:14px;border:3px solid #2f9e62;border-radius:12px;background:linear-gradient(#a6f0c0,#6fd89a)}.microgame-overlay:not(.microgame-overlay-battle) .needle-cursor{top:14px;color:var(--navy);font-size:32px;line-height:1}.microgame-overlay:not(.microgame-overlay-battle) .sample-fill{height:22px;border:4px solid var(--navy);border-radius:999px;background:#ffd0d0}.microgame-overlay:not(.microgame-overlay-battle) .sample-fill i{border-radius:999px;background:linear-gradient(#ff8585,#ff4d4d)}.microgame-overlay:not(.microgame-overlay-battle) .review-checkin{display:grid;grid-template-columns:1fr;gap:10px}.microgame-overlay:not(.microgame-overlay-battle) .review-step{position:relative;display:grid;grid-template-columns:56px minmax(0,1fr);grid-template-areas:"n t" "n d";align-items:center;justify-items:start;gap:0 16px;min-height:0;padding:9px 16px;border:4px solid #b9aee4;border-radius:28px;background:#ece8fb;color:var(--navy);text-align:left;opacity:1;box-shadow:none}.microgame-overlay:not(.microgame-overlay-battle) .review-step>span{grid-area:n;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#3f2a85;color:#fff;font-size:1.6rem;font-weight:900}.microgame-overlay:not(.microgame-overlay-battle) .review-step strong{grid-area:t;font-size:1.35rem;font-weight:900;letter-spacing:.01em;line-height:1.1}.microgame-overlay:not(.microgame-overlay-battle) .review-step small{grid-area:d;color:#5b4a9a;font-size:1.02rem;font-weight:700;line-height:1.15}.microgame-overlay:not(.microgame-overlay-battle) .review-step.current{border-color:#0c7a52;background:#d3f2d9}.microgame-overlay:not(.microgame-overlay-battle) .review-step.current>span{background:#1d5a43}.microgame-overlay:not(.microgame-overlay-battle) .review-step.current small{color:#2f6a52}.microgame-overlay:not(.microgame-overlay-battle) .review-step.current:after{content:"";position:absolute;right:14px;top:50%;width:28px;height:44px;transform:translateY(-50%);background:var(--spark-green) center / contain no-repeat}.microgame-overlay:not(.microgame-overlay-battle) .review-step.complete{border-color:#9db9e6;background:#e1ecfd}.microgame-overlay:not(.microgame-overlay-battle) .review-step.complete>span{background:#7f9fd6 var(--done-check) center / 70% no-repeat;font-size:0}.microgame-overlay:not(.microgame-overlay-battle) .review-step.complete small{color:#5f7fb0}.microgame-overlay:not(.microgame-overlay-battle) .review-step:not(:disabled):active{transform:translateY(2px)}.steps-pill{display:flex;align-items:center;width:min(86%,380px);height:40px;margin:12px auto 0;padding:4px;border-radius:999px;background:var(--navy);color:#fff;font-size:1rem;font-weight:900}.steps-pill i{flex:0 0 calc(var(--p) * 42%);align-self:stretch;border-radius:999px;background:#fff}.steps-pill span{flex:1;text-align:center;white-space:nowrap}.steps-pill i[style],.steps-pill{transition:none}.microgame-overlay:not(.microgame-overlay-battle) :is(.timing-track,.mg-progress){border:5px solid var(--navy);border-radius:20px}.microgame-overlay:not(.microgame-overlay-battle) :is(.record-card,.discharge-folder){border:4px solid #b9aee4;border-radius:24px;background:#ece8fb;color:var(--navy);font-weight:900}.microgame-overlay:not(.microgame-overlay-battle) .record-card.selected{border-color:#0c7a52;background:#d3f2d9;box-shadow:none}@media(max-height:560px){.microgame-overlay:not(.microgame-overlay-battle) .microgame-card{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr);grid-template-rows:auto auto auto 1fr;align-items:start;gap:6px 16px;width:min(780px,100%);margin-top:58px!important;padding:34px 16px 14px;text-align:left}.microgame-overlay:not(.microgame-overlay-battle) .microgame-task-title{grid-column:1 / -1;grid-row:1;justify-self:start;width:fit-content;max-width:78%;margin:-56px 0 10px 34px;padding:5px 18px 5px 44px;border-width:4px;font-size:1.15rem;-webkit-text-stroke-width:5px}.microgame-overlay:not(.microgame-overlay-battle) .microgame-task-title:before{left:-50px;width:78px;height:84px}.microgame-overlay:not(.microgame-overlay-battle) .microgame-instruction{grid-column:1;grid-row:2;margin:0;font-size:.9rem;text-align:left}.microgame-overlay:not(.microgame-overlay-battle) [data-microgame-status]{grid-column:1;grid-row:3;margin:0;padding:4px 10px 4px 4px;border-width:3px;border-radius:20px;font-size:.78rem}.microgame-overlay:not(.microgame-overlay-battle) [data-microgame-status]:before{width:50px;height:40px}.microgame-overlay:not(.microgame-overlay-battle) [data-microgame-body]{grid-column:2;grid-row:2 / 5;min-width:0}.microgame-overlay:not(.microgame-overlay-battle) .microgame-card>.primary-button{grid-column:1;grid-row:4;align-self:end;margin:0;min-height:50px;padding:4px 40px 4px 58px;border-width:4px;font-size:1rem;-webkit-text-stroke-width:4px}.microgame-overlay:not(.microgame-overlay-battle) :is(.primary-button,.challenge-confirm):before{left:8px;width:34px;height:34px}.microgame-overlay:not(.microgame-overlay-battle) :is(.primary-button,.challenge-confirm):after{right:8px;width:22px;height:30px}.microgame-overlay:not(.microgame-overlay-battle) .challenge-confirm{min-height:50px;padding:4px 40px 4px 58px;border-width:4px;font-size:1rem;-webkit-text-stroke-width:4px}.microgame-overlay:not(.microgame-overlay-battle) [data-microgame-body][data-completed=true]{display:none}.microgame-overlay:not(.microgame-overlay-battle) .needle-track{height:54px;margin-bottom:8px;border-width:4px}.microgame-overlay:not(.microgame-overlay-battle) .needle-zone{top:9px;bottom:9px}.microgame-overlay:not(.microgame-overlay-battle) .needle-cursor{top:8px;font-size:26px}.microgame-overlay:not(.microgame-overlay-battle) .sample-fill{height:16px;border-width:3px}.microgame-overlay:not(.microgame-overlay-battle) .review-checkin{gap:6px}.microgame-overlay:not(.microgame-overlay-battle) .review-step{grid-template-columns:40px minmax(0,1fr);gap:0 10px;padding:5px 12px;border-width:3px;border-radius:20px}.microgame-overlay:not(.microgame-overlay-battle) .review-step>span{width:36px;height:36px;font-size:1.1rem}.microgame-overlay:not(.microgame-overlay-battle) .review-step strong{font-size:1rem}.microgame-overlay:not(.microgame-overlay-battle) .review-step small{font-size:.78rem}.microgame-overlay:not(.microgame-overlay-battle) .review-step.current:after{width:20px;height:32px;right:10px}.steps-pill{height:28px;margin-top:6px;font-size:.78rem}}.ward-hud:has(.microgame-overlay:not([hidden]):not(.microgame-overlay-battle)) :is(.pause-toggle,.sound-toggle){visibility:hidden}.microgame-card:has([data-challenge=steady]) .microgame-instruction{display:none}.microgame-card:has([data-challenge=steady]) [data-microgame-body]{margin-bottom:0}@media(max-height:560px){.microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-challenge=steady]){grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;width:min(560px,100%)}.microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-challenge=steady]) [data-microgame-body]{grid-column:1;grid-row:2}.microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-challenge=steady]) [data-microgame-status]{grid-column:1;grid-row:3}}@media(max-height:560px){.microgame-overlay:not(.microgame-overlay-battle) .microgame-card{gap:4px 12px;margin-top:46px!important;padding:24px 12px 9px;border-width:4px;border-radius:24px;box-shadow:0 5px 0 var(--navy),0 0 0 4px #fff6;background-size:14px}.microgame-overlay:not(.microgame-overlay-battle) .microgame-card .microgame-task-title{margin:-40px 0 6px 28px;padding:2px 14px 2px 36px;border-width:3px;border-radius:14px;box-shadow:0 3px 0 var(--navy);font-size:14px;-webkit-text-stroke-width:4px;text-shadow:0 2px 0 var(--navy)}.microgame-overlay:not(.microgame-overlay-battle) .microgame-card .microgame-task-title:before{left:-40px;width:58px;height:64px}.microgame-overlay:not(.microgame-overlay-battle) .microgame-card .microgame-task-title:after{width:18px;height:26px;right:-14px;top:0}.microgame-overlay:not(.microgame-overlay-battle) .microgame-card .microgame-instruction{font-size:12px;line-height:1.2}.microgame-overlay:not(.microgame-overlay-battle) .microgame-card [data-microgame-status]{gap:2px;padding:2px 10px 2px 2px;border-width:3px;border-radius:16px;font-size:11px;line-height:1.15}.microgame-overlay:not(.microgame-overlay-battle) .microgame-card [data-microgame-status]:before{width:40px;height:32px}.microgame-overlay:not(.microgame-overlay-battle) .microgame-card>.primary-button,.microgame-overlay:not(.microgame-overlay-battle) .microgame-card .challenge-confirm{min-height:40px;padding:2px 32px 2px 46px;border-width:3px;box-shadow:0 4px #0f5439;font-size:13px;-webkit-text-stroke-width:3px;text-shadow:0 2px 0 #0f5439}.microgame-overlay:not(.microgame-overlay-battle) .microgame-card :is(.primary-button,.challenge-confirm):before{left:6px;width:26px;height:26px}.microgame-overlay:not(.microgame-overlay-battle) .microgame-card :is(.primary-button,.challenge-confirm):after{right:6px;width:16px;height:24px}.microgame-overlay:not(.microgame-overlay-battle) .needle-track{height:38px;margin:0 0 6px;border-width:3px;border-radius:14px}.microgame-overlay:not(.microgame-overlay-battle) .needle-zone{top:6px;bottom:6px;border-width:2px;border-radius:9px}.microgame-overlay:not(.microgame-overlay-battle) .needle-cursor{top:5px;font-size:20px}.microgame-overlay:not(.microgame-overlay-battle) .sample-fill{height:12px;border-width:3px}.microgame-overlay:not(.microgame-overlay-battle) .review-checkin{gap:4px}.microgame-overlay:not(.microgame-overlay-battle) .review-step{grid-template-columns:30px minmax(0,1fr);gap:0 8px;padding:3px 10px;border-width:3px;border-radius:16px}.microgame-overlay:not(.microgame-overlay-battle) .review-step>span{width:28px;height:28px;font-size:.95rem}.microgame-overlay:not(.microgame-overlay-battle) .review-step strong{font-size:.9rem}.microgame-overlay:not(.microgame-overlay-battle) .review-step small{font-size:.7rem}.microgame-overlay:not(.microgame-overlay-battle) .review-step.current:after{width:14px;height:24px;right:8px}.steps-pill{height:22px;margin-top:4px;padding:3px;font-size:.7rem}.microgame-overlay:not(.microgame-overlay-battle) :is(.timing-track,.mg-progress){border-width:3px;border-radius:14px}}@media(max-height:560px){.microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-challenge=checkin],[data-challenge=notes],[data-challenge=letter]){grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;width:min(620px,100%)}.microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-challenge=checkin],[data-challenge=notes],[data-challenge=letter]) .microgame-instruction{grid-column:1;grid-row:2;text-align:center}.microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-challenge=checkin],[data-challenge=notes],[data-challenge=letter]) [data-microgame-body]{grid-column:1;grid-row:3}.microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-challenge=checkin],[data-challenge=notes],[data-challenge=letter]) .review-checkin{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-challenge=checkin],[data-challenge=notes],[data-challenge=letter]) .review-step{grid-template-columns:30px minmax(0,1fr);grid-template-areas:"n t" "n d";padding:4px 8px;gap:0 6px}.microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-challenge=checkin],[data-challenge=notes],[data-challenge=letter]) .review-step strong{font-size:.85rem}.microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-challenge=checkin],[data-challenge=notes],[data-challenge=letter]) .review-step small{font-size:.62rem;line-height:1.1}.microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-challenge=checkin],[data-challenge=notes],[data-challenge=letter]) .review-step.current:after{display:none}}.microgame-overlay:not(.microgame-overlay-battle) [data-microgame-body][data-kind=tap]{display:flex;align-items:center;gap:12px;min-height:0}.microgame-overlay:not(.microgame-overlay-battle) [data-microgame-body][data-kind=tap] .mg-progress{flex:1;height:30px;margin:0}.microgame-overlay:not(.microgame-overlay-battle) [data-microgame-body][data-kind=tap] .microgame-tap-progress{flex:none;margin:0;font-size:1.6rem}.microgame-overlay:not(.microgame-overlay-battle) [data-microgame-body][data-kind=tap] .mg-tap-hint{display:none}.microgame-overlay:not(.microgame-overlay-battle) .microgame-task-title{margin-bottom:18px}.microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-challenge=steady]){width:min(440px,100%)}.microgame-overlay:not(.microgame-overlay-battle) .needle-track,.microgame-overlay:not(.microgame-overlay-battle) .sample-fill{max-width:340px;margin-left:auto;margin-right:auto}@media(max-height:560px){.microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-challenge=steady]){width:min(400px,100%)}.microgame-overlay:not(.microgame-overlay-battle) .needle-track,.microgame-overlay:not(.microgame-overlay-battle) .sample-fill{max-width:300px}.microgame-overlay:not(.microgame-overlay-battle) [data-microgame-body][data-kind=tap] .mg-progress{height:20px}.microgame-overlay:not(.microgame-overlay-battle) [data-microgame-body][data-kind=tap] .microgame-tap-progress{font-size:1.15rem}.microgame-overlay:not(.microgame-overlay-battle) .microgame-card .microgame-task-title{margin-bottom:18px}}@media(max-height:560px){.microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-kind=tap],[data-kind=timing],[data-kind=hold]){grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto auto auto;width:min(460px,100%)}.microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-kind=tap],[data-kind=timing],[data-kind=hold]) .microgame-instruction{grid-column:1;grid-row:2;text-align:center;margin:0}.microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-kind=tap],[data-kind=timing],[data-kind=hold]) [data-microgame-body]{grid-column:1;grid-row:3}.microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-kind=tap],[data-kind=timing],[data-kind=hold]) [data-microgame-status]{grid-column:1;grid-row:4}.microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-kind=tap],[data-kind=timing],[data-kind=hold])>.primary-button{grid-column:1;grid-row:5;align-self:stretch;width:100%}}.ward-hud{--hud-font: ui-rounded, "Nunito", "Arial Rounded MT Bold", "Segoe UI", sans-serif}:is(.shift-clock,.resource-card,.minimap-card,.sample-timer,.pinned-task,.interaction-prompt,.world-notice,.control-hint,.task-toggle){border:4px solid var(--navy);border-radius:20px;background:#fffdf5;color:var(--navy);box-shadow:0 5px 0 var(--navy);font-family:var(--hud-font)}.shift-clock{gap:0;padding:6px 14px 8px;border-radius:18px}.shift-clock span{color:#e0457b;font-size:.62rem;font-weight:900;letter-spacing:.14em}.shift-clock strong{font:900 1.6rem/1.05 var(--hud-font);letter-spacing:.02em;font-variant-numeric:tabular-nums}.resource-card{gap:6px;padding:9px 12px}.meter-row{font-family:var(--hud-font);font-size:.68rem;font-weight:900;letter-spacing:.06em;color:var(--navy)}.meter-track{height:14px;border:3px solid var(--navy);border-radius:999px;background:#fff}.meter-track i{border-radius:999px;background:repeating-linear-gradient(135deg,#5fd39a 0 8px,#77dfab 8px 16px)}.meter-row[data-meter-row=morale] .meter-track i{background:repeating-linear-gradient(135deg,#ff7fa8 0 8px,#ff9bbb 8px 16px)}.meter-row[data-meter-row=stamina] .meter-track i{background:repeating-linear-gradient(135deg,#ffc93c 0 8px,#ffd95f 8px 16px)}.task-toggle{color:var(--navy);font-size:.8rem;font-weight:900;letter-spacing:.06em;transition:transform 80ms}.task-toggle:active,.recover-toggle:active{transform:translateY(3px);box-shadow:0 2px 0 var(--navy)}.task-count{min-width:26px;height:26px;border:3px solid var(--navy);background:#fff;color:var(--navy);font-weight:900}.task-toggle kbd{border:3px solid var(--navy);border-radius:8px;background:#fff;color:var(--navy);font:900 .66rem var(--hud-font)}.resource-hud .recover-toggle{border:4px solid var(--navy);border-radius:20px;box-shadow:0 5px 0 var(--navy);background:linear-gradient(#ffe98a,#ffd84d);font-family:var(--hud-font);font-weight:900}.resource-hud .recover-toggle.recover-on{background:linear-gradient(#a6f0c0,#6fd89a)}.pause-toggle,.sound-toggle{border:3px solid var(--navy);border-radius:14px;background:var(--navy);color:#fff;box-shadow:0 4px #0f0b2a;font-family:var(--hud-font);font-weight:900;letter-spacing:.04em}.sound-toggle[aria-pressed=true]{background:#6f6a8f;color:#e8e6f5}.pause-toggle:active,.sound-toggle:active{transform:translateY(2px);box-shadow:0 2px #0f0b2a}.minimap-card{padding:8px 10px 9px;border-radius:22px}.minimap-card .map-title{color:#e0457b;font:900 .66rem var(--hud-font);letter-spacing:.14em}.minimap-card .map-title kbd{border:3px solid var(--navy);border-radius:8px;background:#fff;color:var(--navy)}.radar-frame{border:4px solid var(--navy);border-radius:16px;box-shadow:none}.radar-caption{color:var(--navy);font:900 .66rem var(--hud-font);letter-spacing:.02em}.map-zoom{border:3px solid var(--navy);border-radius:14px;background:#ece8fb;color:var(--navy);font:900 .66rem var(--hud-font);letter-spacing:.06em;box-shadow:0 3px 0 var(--navy)}.sample-timer{border-radius:16px;border-left-width:4px;box-shadow:0 4px 0 var(--navy)}.sample-timer .sample-bed{color:#e0457b;font-weight:900}.sample-timer-urgent,.resource-hud .sample-timer-urgent{border-color:var(--navy);border-left-color:var(--navy);background:#ffe3de;color:var(--navy)}.pinned-task{border-radius:16px;font-size:.78rem;font-weight:800}.interaction-prompt,.world-notice{border-radius:999px;padding:8px 18px;font-weight:900}.interaction-prompt kbd{border:3px solid var(--navy);border-radius:8px;background:#ffd84d;color:var(--navy);font:900 .78rem var(--hud-font)}.world-notice{box-shadow:0 5px 0 var(--navy)}.control-hint{border-width:3px;border-radius:999px;box-shadow:0 3px 0 var(--navy);font-weight:800;color:#5a4f74}.touch-stick{border:4px solid var(--navy);background:#fffdf5b8;box-shadow:0 5px 0 var(--navy)}.touch-stick-label,.touch-stick span:not(.touch-stick-knob){color:var(--navy);font-family:var(--hud-font, inherit);font-weight:900;text-shadow:none}.touch-stick-knob{border:4px solid var(--navy);background:#ffd84d}.touch-interact{border:4px solid var(--navy);background:linear-gradient(#a6f0c0,#6fd89a);color:var(--navy);box-shadow:0 5px 0 var(--navy);font-family:var(--hud-font, inherit);font-weight:900;letter-spacing:.04em}.touch-interact:disabled,.touch-interact[aria-disabled=true]{background:#e3e0ee;color:#8a7fb0}.touch-interact:active{transform:translateY(3px);box-shadow:0 2px 0 var(--navy)}.end-screen{position:absolute;inset:0;z-index:8;display:block;padding:0;overflow:hidden;background:#7cc4ff}.end-stage{position:absolute;left:0;top:0;width:max(100vw,calc(100vh * 1853 / 849));aspect-ratio:1853 / 849}.end-art{display:block;width:100%;height:100%;-webkit-user-select:none;user-select:none;transition:filter .3s}.end-fx{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.end-screen[data-outcome=survived] .fx-burnout,.end-screen[data-outcome=burnout] .fx-happy{display:none}.end-screen[data-outcome=burnout] .end-art{filter:grayscale(.6) brightness(.66) contrast(1.05)}.end-screen[data-outcome=burnout]:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 45%,transparent 30%,#1b224866 100%);pointer-events:none}.fx-star{transform-box:fill-box;transform-origin:center;animation:fx-twinkle 1.4s ease-in-out infinite alternate}.fx-star-2{animation-delay:.35s}.fx-star-3{animation-delay:.7s}@keyframes fx-twinkle{0%{transform:scale(.75) rotate(-8deg)}to{transform:scale(1.1) rotate(8deg)}}@media(prefers-reduced-motion:reduce){.fx-star{animation:none}}.end-panel{position:absolute;z-index:2;left:0;top:0;bottom:0;width:min(54vw,640px);min-width:330px;display:flex;flex-direction:column;justify-content:center;gap:10px;padding:26px 56px 22px 26px;color:#fff;background:radial-gradient(circle at 20% 30%,#ffffff10 0 2px,transparent 3px) 0 0 / 38px 38px,linear-gradient(#222b57,#1b2248);clip-path:polygon(0 0,100% 0,93% 100%,0 100%);box-shadow:8px 0 #0e1330;font-family:var(--hud-font, inherit)}.end-ribbon{align-self:flex-start;margin:0 0 2px;padding:8px 26px 8px 22px;border:5px solid var(--navy);border-radius:22px;background:linear-gradient(#ffe978,#ffd23f 55%,#f7a824);box-shadow:0 0 0 3px #fffdf5,0 6px 0 3px #0e1330;transform:rotate(-2deg);color:#fff;font:900 clamp(1.6rem,4.4vw,2.5rem)/1.05 var(--hud-font, inherit);-webkit-text-stroke:7px var(--navy);paint-order:stroke fill;text-shadow:0 3px 0 var(--navy)}.end-screen[data-outcome=burnout] .end-ribbon{background:linear-gradient(#ffb0a3,#ff7668 60%,#e5483f)}.end-message{margin:0;color:#cdd3f5;font-size:.95rem;font-weight:800}.end-panel .shift-report{margin:0}.end-panel .shift-report ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 8px;margin:0;padding:0;list-style:none}.end-panel .shift-row{display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:4px 10px 5px;border:0;border-left:7px solid #9db9ea;border-radius:14px;background:#fffdf5;color:var(--navy);box-shadow:0 3px #0e1330;font-size:.66rem;font-weight:900;letter-spacing:.02em}.end-panel .shift-row strong{font-size:1rem;font-weight:900;text-align:left;line-height:1.1}.end-panel .shift-row-good{border-left-color:#2fc35f;background:#fffdf5}.end-panel .shift-row-bad{border-left-color:#ff5a5a;background:#ffe9e5}.end-panel .shift-report-banner{margin:0 0 6px!important;padding:6px 12px;border:0;border-radius:999px;box-shadow:0 3px #0e1330;font-size:.82rem;font-weight:900;text-align:center}.end-panel .shift-report-good{background:#ffe98a;color:var(--navy)!important;text-shadow:none}.end-panel .shift-report-bad{background:#ff8a7a;color:#fff!important;text-shadow:0 2px 0 var(--navy)}.end-panel .shift-report-neutral{background:#ece8fb;color:var(--navy)}.end-go{position:relative;align-self:flex-start;width:min(100%,340px);min-height:56px;margin-top:4px;padding:6px 48px 6px 66px;border:5px solid #17744f;border-radius:999px;background:linear-gradient(#85e0ad,#4cc58a);box-shadow:0 6px #0f5439;color:#fff;font:900 1.3rem/1.05 var(--hud-font, inherit);-webkit-text-stroke:5px #0f5439;paint-order:stroke fill;text-shadow:0 3px 0 #0f5439;cursor:pointer}.end-go:before{content:"";position:absolute;left:10px;top:50%;width:38px;height:38px;transform:translateY(-50%);background:var(--check-art) center / contain no-repeat}.end-go:after{content:"";position:absolute;right:12px;top:50%;width:24px;height:34px;transform:translateY(-50%);background:var(--spark-white) center / contain no-repeat}.end-go:active{transform:translateY(4px);box-shadow:0 2px #0f5439}@media(max-height:560px){.end-panel{gap:5px;padding:12px 44px 10px 14px;width:min(56vw,520px)}.end-ribbon{padding:4px 16px 4px 14px;border-width:4px;font-size:1.35rem;-webkit-text-stroke-width:5px}.end-message{font-size:.72rem}.end-panel .shift-report ul{gap:4px 6px}.end-panel .shift-row{padding:2px 8px 3px;border-left-width:6px;border-radius:11px;font-size:.56rem}.end-panel .shift-row strong{font-size:.82rem}.end-panel .shift-report-banner{padding:3px 10px;font-size:.68rem;margin-bottom:3px!important}.end-go{min-height:42px;padding:3px 38px 3px 52px;border-width:4px;font-size:1rem;-webkit-text-stroke-width:4px;width:min(100%,280px)}.end-go:before{width:28px;height:28px;left:8px}.end-go:after{width:18px;height:26px;right:8px}}.end-screen[data-outcome=burnout] .fx-skin{filter:grayscale(.6) brightness(.66) contrast(1.05)}.start-install{position:absolute;z-index:6;right:max(12px,env(safe-area-inset-right));bottom:max(10px,env(safe-area-inset-bottom));display:flex;align-items:center;gap:7px;padding:8px 16px 9px 12px;border:3px solid var(--navy);border-radius:999px;background:linear-gradient(#ffe978,#ffd23f);color:var(--navy);box-shadow:0 4px 0 var(--navy);font:900 clamp(11px,1.7vw,17px)/1 ui-rounded,"Nunito","Segoe UI",sans-serif;letter-spacing:.03em;cursor:pointer;touch-action:manipulation}.start-install[hidden],.install-steps[hidden]{display:none}.start-install:active{transform:translateY(3px);box-shadow:0 1px 0 var(--navy)}.install-steps{position:absolute;z-index:7;left:50%;top:50%;transform:translate(-50%,-50%);width:min(520px,calc(100vw - 32px));padding:12px 16px 14px;border:4px solid var(--navy);border-radius:22px;background:#fffdf5;color:var(--navy);box-shadow:0 5px 0 var(--navy);font-family:ui-rounded,Nunito,Segoe UI,sans-serif}.install-title{margin:0 0 6px;color:#e0457b;font-size:1rem;font-weight:900}.install-steps ol{margin:0 0 10px;padding-left:22px;font-size:.9rem;font-weight:800;line-height:1.3}.install-steps li+li{margin-top:4px}.install-close{display:block;margin:0 auto;padding:6px 26px;border:3px solid #17744f;border-radius:999px;background:linear-gradient(#85e0ad,#4cc58a);color:#fff;box-shadow:0 3px #0f5439;font:900 .95rem/1 ui-rounded,Nunito,Segoe UI,sans-serif;cursor:pointer}.story-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.story-tour{padding:12px 22px;border:4px solid #2b2340;border-radius:20px;background:linear-gradient(#bfe0ff,#8fc3ff);color:#2b2340;box-shadow:0 6px #2b2340;font:900 1.05rem/1 ui-rounded,Nunito,Segoe UI,sans-serif;letter-spacing:.04em;cursor:pointer}.story-tour:disabled{opacity:.35;cursor:default;box-shadow:0 3px #2b2340}.story-tour:not(:disabled):active{transform:translateY(4px);box-shadow:0 2px #2b2340}.tour-card{position:absolute;z-index:7;left:50%;top:10px;transform:translate(-50%);display:grid;gap:3px;width:min(560px,calc(100vw - 32px));padding:8px 14px 10px;border:4px solid var(--navy);border-radius:22px;background:#fffdf5;color:var(--navy);box-shadow:0 5px 0 var(--navy);font-family:var(--hud-font, inherit);text-align:center;pointer-events:auto}.tour-head{display:flex;align-items:center;justify-content:center;gap:12px}.tour-tag{padding:2px 14px;border:3px solid var(--navy);border-radius:999px;background:linear-gradient(#ffe978,#ffd23f);font-size:.78rem;font-weight:900;letter-spacing:.12em}.tour-head b{min-width:3.4ch;font-size:1.3rem;font-weight:900;font-variant-numeric:tabular-nums}.tour-place{margin:0;font-size:.85rem;font-weight:800;color:#5a4f74}.tour-place strong{color:#e0457b;font-weight:900}.tour-tip{margin:0;min-height:2.5em;font-size:.82rem;font-weight:800;line-height:1.25}.tour-stops{display:flex;flex-wrap:wrap;justify-content:center;gap:5px}.tour-stops button{padding:4px 10px;border:3px solid var(--navy);border-radius:999px;background:#ece8fb;color:var(--navy);box-shadow:0 3px 0 var(--navy);font:900 .7rem/1 var(--hud-font, inherit);cursor:pointer;touch-action:manipulation}.tour-stops button.tour-stop-on{background:#8fe3a8}.tour-stops button:active{transform:translateY(2px);box-shadow:0 1px 0 var(--navy)}.tour-start{padding:6px 20px;border:4px solid #17744f;border-radius:999px;background:linear-gradient(#85e0ad,#4cc58a);color:#fff;box-shadow:0 4px #0f5439;font:900 .95rem/1 var(--hud-font, inherit);letter-spacing:.04em;-webkit-text-stroke:3px #0f5439;paint-order:stroke fill;cursor:pointer;touch-action:manipulation}.tour-start:active{transform:translateY(3px);box-shadow:0 1px #0f5439}.tour-ready .tour-start{animation:tour-pulse .7s ease-in-out infinite alternate}@keyframes tour-pulse{to{transform:scale(1.08)}}@media(prefers-reduced-motion:reduce){.tour-ready .tour-start{animation:none}}.ward-hud.tour-mode :is(.resource-hud,.task-notices,.incoming-call,.pinned-task,.sample-timers,.world-notice,.interaction-prompt,.control-hint,.consultant-entrance,.shift-clock,.pause-toggle){display:none!important}.ward-hud.tour-mode .minimap-card{top:150px}@media(max-height:560px){.tour-card{top:6px;left:59%;width:min(460px,46vw);padding:4px 10px 6px;border-width:3px;gap:2px}.tour-tag{font-size:.66rem;padding:1px 10px}.tour-head b{font-size:1.05rem}.tour-start{padding:4px 14px;font-size:.8rem;border-width:3px}.tour-place{font-size:.7rem}.tour-tip{min-height:2.4em;font-size:.68rem}.tour-stops button{padding:3px 8px;border-width:2px;font-size:.6rem;box-shadow:0 2px 0 var(--navy)}.ward-hud.tour-mode .minimap-card{top:8px}}.end-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.end-actions .end-go{align-self:auto;flex:1 1 220px;max-width:340px}.end-share{padding:10px 22px;border:4px solid var(--navy);border-radius:999px;background:linear-gradient(#bfe0ff,#8fc3ff);color:var(--navy);box-shadow:0 5px #0e1330;font:900 1rem/1 var(--hud-font, inherit);letter-spacing:.05em;cursor:pointer;touch-action:manipulation}.end-share[hidden]{display:none}.end-share:disabled{opacity:.6;cursor:default}.end-share:active{transform:translateY(3px);box-shadow:0 2px #0e1330}.end-share-note{margin:0;color:#cdd3f5;font-size:.8rem;font-weight:800}.end-share-note[hidden]{display:none}@media(max-height:560px){.end-share{padding:6px 14px;border-width:3px;font-size:.8rem}.end-actions{gap:6px}.end-actions .end-go{flex-basis:150px}.end-share-note{font-size:.66rem}}.task-sheet .task-actions{display:none}.task-sheet .task-row{grid-template-columns:30px minmax(0,1fr) auto}.task-toggle.task-blink{animation:task-blink .45s ease-in-out 7}@keyframes task-blink{0%,to{background:#fffdf5;transform:none}50%{background:#ffd84d;transform:scale(1.07);box-shadow:0 5px 0 var(--navy),0 0 0 6px #ffd84d88}}@media(prefers-reduced-motion:reduce){.task-toggle.task-blink{animation:task-blink-calm .45s steps(1) 7}@keyframes task-blink-calm{0%,to{background:#fffdf5}50%{background:#ffd84d}}}.touch-interact[data-named=true]{width:auto;min-width:92px;max-width:200px;height:auto;min-height:64px;padding:10px 16px;border-radius:26px;font-size:.78rem;line-height:1.15}.map-destination-auto{fill:#ff8fa8;stroke:var(--navy);stroke-width:1.5}.task-notice-mohelp{border-color:#a31d24;background:#ffe3e0;animation:mo-alert-shake .6s ease-in-out 1;box-shadow:0 5px #a31d24}.task-notice-mohelp .task-callout-header strong{border-color:#a31d24;background:#ff5a5a;color:#fff;text-shadow:0 2px 0 #7d1319}.task-notice-mohelp .task-callout-header .urgency{background:#a31d24;color:#fff}.task-notice-mohelp .task-callout-line{color:#7d1319}.task-notice-mohelp .task-callout-details{color:#a31d24}.task-notice-mohelp .task-callout-dismiss{border-color:#a31d24;color:#a31d24}@media(prefers-reduced-motion:reduce){.task-notice-mohelp{animation:none}}.ward-select{position:fixed;inset:0;z-index:50;display:grid;grid-template-rows:auto 1fr auto;justify-items:center;align-items:center;gap:10px;padding:22px 20px 16px;background:linear-gradient(#1b2248e6,#1b2248f5),#1b2248 url(../start-art.jpg) left top / cover no-repeat;font-family:ui-rounded,Nunito,Arial Rounded MT Bold,Segoe UI,sans-serif}.ward-back{position:absolute;left:18px;top:16px;padding:7px 16px;border:3px solid #27204f;border-radius:999px;background:#fffdf5;color:#27204f;box-shadow:0 4px #0e1330;font:900 .85rem/1 inherit;letter-spacing:.05em;cursor:pointer}.ward-back:active{transform:translateY(3px);box-shadow:0 1px #0e1330}.ward-ribbon{margin:0;padding:8px 30px;border:5px solid #27204f;border-radius:22px;background:linear-gradient(#ffe978,#ffd23f 55%,#f7a824);box-shadow:0 5px #0e1330;transform:rotate(-1.5deg);color:#fff;font:900 clamp(1.4rem,4vw,2.2rem)/1.05 inherit;-webkit-text-stroke:7px #27204f;paint-order:stroke fill;text-shadow:0 3px 0 #27204f}.ward-grid{display:grid;grid-template-columns:repeat(4,minmax(0,220px));gap:14px;justify-content:center;align-items:stretch;width:min(980px,100%)}.ward-card{position:relative;display:grid;justify-items:center;align-content:start;gap:4px;padding:14px 10px 12px;border:5px solid #27204f;border-radius:26px;background:#fffdf5;color:#27204f;box-shadow:0 7px #0e1330;font:inherit;text-align:center}.ward-art{display:grid;place-items:center;width:min(120px,60%);aspect-ratio:1;margin-bottom:4px;border:4px solid #27204f;border-radius:50%;background:#d3f2d9}.ward-art svg{width:78%;height:78%}.ward-card strong{font-size:1.05rem;font-weight:900;line-height:1.1}.ward-card small{font-size:.74rem;font-weight:800;color:#5a4f74}.ward-open{cursor:pointer;border-color:#0c7a52;background:linear-gradient(#f3fff6,#d3f2d9)}.ward-open:hover{transform:translateY(-3px)}.ward-open:active{transform:translateY(3px);box-shadow:0 2px #0e1330}.ward-go{margin-top:6px;padding:6px 16px;border:4px solid #17744f;border-radius:999px;background:linear-gradient(#85e0ad,#4cc58a);color:#fff;box-shadow:0 4px #0f5439;font-size:.85rem;font-weight:900;letter-spacing:.04em;-webkit-text-stroke:3px #0f5439;paint-order:stroke fill;animation:ward-pulse .8s ease-in-out infinite alternate}@keyframes ward-pulse{to{transform:scale(1.07)}}.ward-locked{filter:grayscale(1) brightness(.92);opacity:.82;cursor:not-allowed;border-color:#6f6c80}.ward-locked .ward-art{background:#dcdce4}.ward-lock{margin-top:6px;padding:5px 12px;border:3px solid #6f6c80;border-radius:999px;background:#e9e8f0;color:#55526b;font-size:.72rem;font-weight:900;letter-spacing:.06em}.ward-nope{animation:ward-nope .32s linear}@keyframes ward-nope{20%{translate:-6px 0}40%{translate:6px 0}60%{translate:-4px 0}80%{translate:4px 0}}.ward-note{margin:0;color:#cdd3f5;font-size:.9rem;font-weight:800;text-align:center}@media(prefers-reduced-motion:reduce){.ward-go,.ward-nope{animation:none}}@media(max-width:760px)and (orientation:portrait){.ward-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-height:520px){.ward-select{gap:4px;padding:10px 14px 8px}.ward-back{left:10px;top:8px;padding:4px 11px;font-size:.7rem;border-width:2px}.ward-ribbon{padding:3px 20px;border-width:4px;font-size:1.15rem;-webkit-text-stroke-width:5px}.ward-grid{gap:8px}.ward-card{padding:7px 6px;border-width:4px;border-radius:20px;gap:2px}.ward-art{width:min(64px,56%);border-width:3px;margin-bottom:0}.ward-card strong{font-size:.78rem}.ward-card small{font-size:.6rem}.ward-go{margin-top:3px;padding:3px 9px;border-width:3px;font-size:.62rem;-webkit-text-stroke-width:2px}.ward-lock{margin-top:3px;padding:2px 8px;border-width:2px;font-size:.56rem}.ward-note{font-size:.68rem}}.pause-actions{display:grid;gap:10px;margin-top:12px}.pause-actions .primary-button{margin-top:0!important;width:100%}.pause-give-up{padding:10px 16px;border:4px solid var(--navy);border-radius:20px;background:#ece8fb;color:var(--navy);box-shadow:0 5px 0 var(--navy);font:900 .95rem/1 ui-rounded,Nunito,Segoe UI,sans-serif;letter-spacing:.06em;cursor:pointer;touch-action:manipulation}.pause-give-up-yes{background:#ff8a7a;color:#fff;-webkit-text-stroke:3px var(--navy);paint-order:stroke fill}.pause-give-up:active{transform:translateY(3px);box-shadow:0 2px 0 var(--navy)}[data-pause-main][hidden],[data-pause-confirm][hidden]{display:none}@media(max-height:560px){.pause-actions{grid-template-columns:1fr 1fr;gap:8px}.pause-give-up{padding:8px 10px;border-width:3px;font-size:.8rem}}.task-toggle.task-toggle-presentation{background:#ff5a5a;border-color:#7d1b24;color:#fff;box-shadow:0 5px #7d1b24;-webkit-text-stroke:0}.task-toggle.task-toggle-presentation .task-count{border-color:#7d1b24;background:#fff;color:#a31d24}.task-toggle.task-toggle-presentation kbd{border-color:#7d1b24;color:#7d1b24}.task-sheet .task-row.task-row-presentation{border-color:#c4262d;background:#ffd3cf}.task-sheet .task-row.task-row-presentation .task-num{background:#c4262d}.task-sheet .task-row.task-row-presentation .task-copy strong{color:#8e1318}.task-sheet .task-row.task-row-presentation .task-copy small{color:#a31d24}.task-sheet .task-row.task-row-presentation .urgency{background:#c4262d;color:#fff}.rot-install{margin-top:16px;padding:12px 14px;border:4px solid #27204f;border-radius:22px;background:#fffdf5;box-shadow:0 5px #27204f;text-align:left}.rot-install[hidden],.rot-install-steps[hidden],.rot-install-button[hidden]{display:none}.rot-install-button{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 14px;border:4px solid #27204f;border-radius:999px;background:linear-gradient(#ffe978,#ffd23f);color:#27204f;box-shadow:0 4px #27204f;font:900 15px/1 ui-rounded,Nunito,Segoe UI,sans-serif;letter-spacing:.03em;cursor:pointer}.rot-install-steps{margin:0;padding-left:20px;color:#27204f;font:800 14px/1.35 ui-rounded,Nunito,Segoe UI,sans-serif}.rot-install-steps:before{content:"Play it like a real app";display:block;margin:0 0 6px -20px;color:#e0457b;font-weight:900;font-size:15px}.rot-install-steps li+li{margin-top:5px}.ward-raya{border-color:#0f6b3a;background:linear-gradient(#fff9e0,#d8f3dc)}.ward-raya .ward-art{background:#fff1b8}.ward-grid{width:min(1180px,100%);grid-template-columns:repeat(5,minmax(0,1fr))}@media(max-width:900px){.ward-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-height:520px){.ward-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}.end-screen:not([data-variant=raya]) .fx-raya{display:none}.end-screen[data-variant=raya]:before{content:"";position:absolute;z-index:4;left:0;right:0;top:0;height:56px;background:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='168' height='56' viewBox='0 0 168 56'><path d='M0 5H168' stroke='%238a6a1f' stroke-width='3'/><path d='M4 7h34L21 46z' fill='%231f9d55' stroke='%2327204f' stroke-width='3' stroke-linejoin='round'/><path d='M46 7h34L63 46z' fill='%23ffd23f' stroke='%2327204f' stroke-width='3' stroke-linejoin='round'/><path d='M88 7h34L105 46z' fill='%23fff6dc' stroke='%2327204f' stroke-width='3' stroke-linejoin='round'/><path d='M130 7h34L147 46z' fill='%23e0457b' stroke='%2327204f' stroke-width='3' stroke-linejoin='round'/></svg>") repeat-x 0 0 / 168px 56px;pointer-events:none}.end-screen[data-variant=raya] .end-panel{padding-top:62px}.end-screen[data-variant=raya] .end-ribbon{background:linear-gradient(#a6f0c0,#4cc58a 60%,#1f9d55)}@media(max-height:560px){.end-screen[data-variant=raya]:before{height:30px;background-size:90px 30px}.end-screen[data-variant=raya] .end-panel{padding-top:34px}}.ward-hud.quiet-mode :is(.resource-hud,.task-notices,.incoming-call,.pinned-task,.sample-timers,.consultant-entrance,.shift-clock,.control-hint){display:none!important}.ward-hud.level-six .minimap-card{display:none}.haze-veil{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden;background:radial-gradient(ellipse at 50% 55%,#b3a47e2e,#a0906c8c 62%,#8c7c5cc7)}.haze-veil i{position:absolute;width:70vmax;height:40vmax;border-radius:50%;background:radial-gradient(closest-side,rgba(205,192,156,.55),transparent);filter:blur(18px);animation:haze-drift 22s linear infinite}.haze-veil i:nth-child(1){left:-30vmax;top:6vh}.haze-veil i:nth-child(2){left:-10vmax;top:44vh;animation-duration:31s;animation-delay:-9s;opacity:.8}.haze-veil i:nth-child(3){left:-50vmax;top:24vh;animation-duration:40s;animation-delay:-20s;opacity:.7}@keyframes haze-drift{0%{transform:translate(-10vmax)}to{transform:translate(150vmax)}}@media(prefers-reduced-motion:reduce){.haze-veil i{animation:none}}.lift-ride{position:absolute;inset:0;z-index:30;display:grid;place-items:center;background:#0f0c20d1;opacity:0;pointer-events:auto;transition:opacity .36s ease;font-family:ui-rounded,Nunito,Segoe UI,sans-serif}.lift-ride.on{opacity:1}.lift-box{position:relative;width:min(340px,78vw);padding:14px 16px 18px;border:5px solid #27204f;border-radius:26px;background:linear-gradient(#e6ebf3,#aeb8c9);box-shadow:0 8px #0e1330;text-align:center}.lift-name{color:#27204f;font-size:.85rem;font-weight:900;letter-spacing:.14em}.lift-display{display:flex;align-items:center;justify-content:center;gap:12px;margin:10px auto;padding:8px 18px;width:70%;border:4px solid #27204f;border-radius:16px;background:#1b1b24;color:#ff5a3c}.lift-display b{font-size:3.2rem;line-height:1;font-weight:900;font-variant-numeric:tabular-nums;text-shadow:0 0 12px #ff5a3c88}.lift-arrow{font-size:1.6rem;animation:lift-blink .7s steps(2) infinite}@keyframes lift-blink{50%{opacity:.25}}.lift-doors{position:relative;display:grid;grid-template-columns:1fr 1fr;height:70px;margin-top:6px;overflow:hidden;border:4px solid #27204f;border-radius:12px;background:#6c7689}.lift-doors i{background:linear-gradient(90deg,#c3cbd8,#9aa5b8);border-right:3px solid #4a5568;transition:transform .52s ease}.lift-doors i:first-child{transform:translate(-100%)}.lift-doors i:last-child{transform:translate(100%);border-right:0}.lift-ride.closed .lift-doors i{transform:none}.haze-popup{position:absolute;inset:0;z-index:31;display:grid;place-items:center;padding:18px;background:#5a4c3073;pointer-events:auto;font-family:ui-rounded,Nunito,Segoe UI,sans-serif}.haze-card{width:min(520px,100%);padding:22px 22px 18px;border:5px solid var(--navy, #27204f);border-radius:30px;background:#fff9ee;box-shadow:0 8px 0 var(--navy, #27204f),0 0 0 6px #fff7;text-align:center;color:#27204f}.haze-ribbon{display:inline-block;margin:-44px 0 12px;padding:7px 24px;border:5px solid #27204f;border-radius:20px;background:linear-gradient(#ffb0a3,#ff7668 60%,#e5483f);box-shadow:0 4px #27204f;transform:rotate(-2deg);color:#fff;font:900 1.5rem/1.05 inherit;-webkit-text-stroke:6px #27204f;paint-order:stroke fill;text-shadow:0 3px 0 #27204f}.haze-text{margin:0 0 8px;font-size:clamp(1.15rem,3.6vw,1.6rem);font-weight:900;line-height:1.25}.haze-ipu{display:block;margin-bottom:14px;color:#a31d24;font-weight:900;letter-spacing:.08em}.haze-actions{display:grid;gap:10px;grid-template-columns:1fr 1fr}.haze-actions button{padding:12px 10px;border:4px solid #27204f;border-radius:20px;box-shadow:0 5px #27204f;font:900 1rem/1.1 inherit;letter-spacing:.04em;color:#27204f;cursor:pointer;touch-action:manipulation}.haze-home{background:#ece8fb}.haze-help{background:linear-gradient(#85e0ad,#4cc58a)}.haze-actions button:active{transform:translateY(3px);box-shadow:0 2px #27204f}@media(max-height:520px){.haze-card{padding:14px 16px 12px;border-width:4px}.haze-ribbon{margin-top:-34px;font-size:1.1rem;padding:4px 16px}.haze-text{font-size:1rem}.haze-actions button{padding:8px;font-size:.85rem;border-width:3px}.lift-display b{font-size:2.2rem}.lift-doors{height:40px}}@media(max-width:520px)and (orientation:portrait){.haze-actions{grid-template-columns:1fr}}.ward-parody{border-color:#8a6a1f;background:linear-gradient(#f4ecd2,#e2d6a8)}.ward-parody .ward-art{background:#d8cda0}.ward-grid{grid-template-columns:repeat(3,minmax(0,1fr));width:min(900px,100%)}@media(max-height:520px){.ward-grid{grid-template-columns:repeat(6,minmax(0,1fr));width:min(1180px,100%)}}@media(max-width:900px)and (min-height:521px){.ward-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.iphone-layout{--phone-left: calc(max(env(safe-area-inset-left), var(--preview-safe-left, 0px)) + 12px) ;--phone-right: calc(max(env(safe-area-inset-right), var(--preview-safe-right, 0px)) + 12px) ;--phone-top: calc(max(env(safe-area-inset-top), var(--preview-safe-top, 0px)) + 12px) ;--phone-bottom: max(env(safe-area-inset-bottom), var(--preview-safe-bottom, 0px));--phone-column: min(204px, calc((100vw - var(--phone-left) - var(--phone-right) - 12px) / 2));-webkit-text-size-adjust:100%}.iphone-layout:has(.game-canvas),.iphone-layout:has(.game-canvas) body{height:100dvh;overflow:hidden;overscroll-behavior:none}.iphone-layout .game-canvas{height:100dvh}.iphone-layout button{-webkit-tap-highlight-color:transparent}.iphone-layout .touch-controls:not([hidden]){display:block}.iphone-layout .control-hint,.iphone-layout .task-toggle kbd,.iphone-layout .map-title kbd,.iphone-layout .interaction-prompt kbd{display:none}.iphone-layout .shift-clock{left:var(--phone-left);top:var(--phone-top);min-width:92px;padding:8px 10px}.iphone-layout .pause-toggle{top:var(--phone-top);right:var(--phone-right);left:auto;transform:none;min-width:88px;min-height:48px;font-size:11px}.iphone-layout .sound-toggle{top:var(--phone-top);right:calc(var(--phone-right) + 100px);left:auto;min-height:48px;padding:8px;font-size:10px}.iphone-layout .minimap-card{left:var(--phone-left);top:calc(var(--phone-top) + 76px);bottom:auto;width:var(--phone-column);max-width:none}.iphone-layout .resource-hud{top:calc(var(--phone-top) + 76px);right:var(--phone-right);width:var(--phone-column);max-width:none;gap:12px}.iphone-layout .resource-card{padding:10px;gap:9px}.iphone-layout .meter-row{grid-template-columns:1fr auto;gap:5px;font-size:11px}.iphone-layout .meter-row>output{font-size:13px}.iphone-layout .meter-track{height:16px}.iphone-layout .resource-hud .task-toggle{min-height:58px;padding:12px 8px;font-size:14px}.iphone-layout .map-zoom{min-height:44px;font-size:10px}.iphone-layout .sample-timers{left:var(--phone-left);right:auto;top:calc(var(--phone-top) + 76px + var(--phone-column) + 116px);width:var(--phone-column);max-width:none;max-height:max(36px,calc(100dvh - var(--phone-top) - 76px - var(--phone-column) - 116px - var(--phone-bottom) - 164px))}.iphone-layout .touch-stick{left:var(--phone-left);bottom:calc(var(--phone-bottom) + 20px);width:128px;height:128px}.iphone-layout .touch-interact{right:var(--phone-right);bottom:calc(var(--phone-bottom) + 22px);width:92px;height:92px}.iphone-layout .touch-sprint{right:var(--phone-right);bottom:calc(var(--phone-bottom) + 130px);width:70px;height:70px}.iphone-layout .interaction-prompt{bottom:calc(var(--phone-bottom) + 192px);max-width:calc(100vw - 196px);font-size:13px}.iphone-layout .pinned-task{right:var(--phone-right);bottom:calc(var(--phone-bottom) + 244px);max-width:var(--phone-column);font-size:11px}.iphone-layout .incoming-call{right:var(--phone-right);top:calc(var(--phone-top) + 76px);width:min(210px,calc(100vw - 24px))}.iphone-layout .task-notices{left:var(--phone-left);top:calc(var(--phone-top) + 76px);width:calc(100vw - var(--phone-left) - var(--phone-right))}.iphone-layout .consultant-entrance{bottom:calc(var(--phone-bottom) + 246px);width:calc(100vw - var(--phone-left) - var(--phone-right))}.iphone-layout .patient-overlay,.iphone-layout .task-overlay,.iphone-layout .directory-overlay,.iphone-layout .pause-overlay,.iphone-layout .microgame-overlay{padding:var(--phone-top) var(--phone-right) calc(var(--phone-bottom) + 12px) var(--phone-left)}.iphone-layout .patient-sheet,.iphone-layout .task-sheet,.iphone-layout .directory-sheet,.iphone-layout .microgame-card{max-height:calc(100dvh - var(--phone-top) - var(--phone-bottom) - 24px);overflow-y:auto;-webkit-overflow-scrolling:touch}.iphone-layout .microgame-card{padding:16px}.iphone-layout .microgame-instruction{font-size:16px}.iphone-layout .record-card{min-height:60px;font-size:15px}.iphone-layout .challenge-confirm,.iphone-layout .sequence-pad-button{min-height:56px}.iphone-layout .title-screen{min-height:100dvh;padding:var(--phone-top) 20px calc(var(--phone-bottom) + 20px)}.iphone-layout .title-card{padding:28px 20px}@media(max-width:360px){.iphone-layout .pause-toggle{min-width:72px;font-size:10px}.iphone-layout .sound-toggle{right:calc(var(--phone-right) + 84px);font-size:9px}.iphone-layout .touch-stick{width:112px;height:112px}.iphone-layout .meter-row{font-size:10px}}@media(orientation:landscape)and (max-height:500px){.iphone-layout .shift-clock{min-width:88px}.iphone-layout .minimap-card{left:calc(var(--phone-left) + 110px);top:var(--phone-top);width:150px}.iphone-layout .resource-hud{top:var(--phone-top);width:200px}.iphone-layout .pause-toggle{left:var(--phone-left);right:auto;top:calc(var(--phone-top) + 68px)}.iphone-layout .sound-toggle{left:var(--phone-left);right:auto;top:calc(var(--phone-top) + 124px)}.iphone-layout .touch-stick{width:104px;height:104px;bottom:calc(var(--phone-bottom) + 12px)}.iphone-layout .touch-interact{width:82px;height:82px;bottom:calc(var(--phone-bottom) + 12px)}.iphone-layout .touch-sprint{right:calc(var(--phone-right) + 94px);bottom:calc(var(--phone-bottom) + 18px);width:68px;height:68px}.iphone-layout .sample-timers{top:calc(var(--phone-top) + 182px);width:98px;max-height:44px}.iphone-layout .interaction-prompt{bottom:calc(var(--phone-bottom) + 112px);max-width:36vw}.iphone-layout .pinned-task{left:50%;right:auto;transform:translate(-50%);bottom:calc(var(--phone-bottom) + 16px);max-width:32vw}.iphone-layout .task-notices{left:50%;transform:translate(-50%);width:min(420px,calc(100vw - var(--phone-left) - var(--phone-right)))}.iphone-layout .consultant-entrance{bottom:calc(var(--phone-bottom) + 110px);width:48vw}}.rotate-phone{position:absolute;inset:0;z-index:20;display:grid;place-items:center;padding:var(--phone-top, 24px) var(--phone-right, 24px) calc(var(--phone-bottom, 0px) + 24px) var(--phone-left, 24px);background:#21382ff5;color:#f3f0e3;text-align:center;pointer-events:auto;touch-action:none}.rotate-phone>div{max-width:320px}.rotate-phone-icon{display:block;color:#c2d7a7;font-size:64px;margin-bottom:20px}.rotate-phone h2{font-size:26px;line-height:1.2}.rotate-phone p{font-size:18px}.rotate-phone small{font-size:14px;color:#d0dacb}.iphone-layout .touch-interact{right:calc(var(--phone-right) + 8px);bottom:calc(var(--phone-bottom) + 28px);width:76px;height:76px}@media(orientation:landscape)and (max-height:500px){.iphone-layout .touch-interact{right:calc(var(--phone-right) + 8px);bottom:calc(var(--phone-bottom) + 20px);width:70px;height:70px}.iphone-layout .pinned-task{max-width:24vw}}@media(orientation:landscape){.iphone-layout .minimap-card{left:var(--phone-left);top:var(--phone-top);width:134px;padding:4px;border-radius:12px;box-shadow:0 2px 8px #0004}.iphone-layout .minimap-card .map-title{display:none}.iphone-layout .radar-frame{margin-top:0;border-width:2px;border-radius:9px}.iphone-layout .map-zoom{min-height:44px;margin-top:3px;padding:3px;font-size:9px}.iphone-layout .radar-caption{margin-top:3px;font-size:9px}.iphone-layout .shift-clock{left:calc(var(--phone-left) + 146px);min-width:88px;padding:4px 7px;gap:0;border-width:1px;box-shadow:2px 2px #343a34}.iphone-layout .shift-clock span{font-size:8px}.iphone-layout .shift-clock strong{font-size:18px}.iphone-layout .pause-toggle{left:calc(var(--phone-left) + 146px);top:calc(var(--phone-top) + 44px);min-width:44px;width:44px;min-height:44px;padding:3px;font-size:9px}.iphone-layout .sound-toggle{left:calc(var(--phone-left) + 194px);top:calc(var(--phone-top) + 44px);width:44px;min-height:44px;padding:3px;font-size:9px}.iphone-layout .resource-hud{width:160px;gap:5px}.iphone-layout .resource-card{padding:7px;gap:7px;border-width:1px;box-shadow:2px 2px #343a34;background:#f3f0e7dc}.iphone-layout .meter-row{grid-template-columns:48px 1fr 28px;gap:4px;font-size:9px;letter-spacing:0}.iphone-layout .meter-row>span{grid-column:1;grid-row:1}.iphone-layout .meter-row>output{grid-column:3;grid-row:1;font-size:10px}.iphone-layout .meter-track{grid-column:2;grid-row:1;height:10px}.iphone-layout .resource-hud .recover-toggle{min-height:40px;padding:4px 8px;font-size:10px;border-width:1px;box-shadow:2px 2px #343a34}.iphone-layout .resource-hud .recover-toggle small{display:none}.iphone-layout .resource-hud .recover-toggle span{grid-row:auto;font-size:1rem}.iphone-layout .chat-cloud{top:calc(var(--phone-top) + 52px)}.iphone-layout .resource-hud .task-toggle{min-height:44px;padding:5px 8px;font-size:11px;border-width:1px;box-shadow:2px 2px #343a34;background:#f3f0e7dc}.iphone-layout .task-notices{top:var(--phone-top);left:calc(var(--phone-left) + 224px);right:calc(var(--phone-right) + 172px);width:auto;transform:none}.iphone-layout .task-notice{gap:2px;padding:5px 7px;border-width:1px;border-left-width:4px;border-radius:7px;box-shadow:2px 2px #353a35}.iphone-layout .task-callout-header{gap:5px}.iphone-layout .task-callout-header strong{padding:3px 5px;font-size:15px;letter-spacing:0}.iphone-layout .task-callout-header .urgency{font-size:8px;padding:2px 3px}.iphone-layout .task-callout-dismiss{min-width:44px;min-height:44px;font-size:19px}.iphone-layout .task-callout-line{font-size:13px;line-height:1.2}.iphone-layout .task-notice .task-callout-details{font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.iphone-layout .world-notice{top:calc(var(--phone-top) + 96px);margin-top:0;padding:6px 10px;min-width:0;max-width:40vw;font-size:12px;border-width:1px;box-shadow:2px 2px #353a35}.iphone-layout .consultant-entrance{top:calc(var(--phone-top) + 96px);bottom:auto;width:min(300px,44vw);padding:6px 10px;border-width:2px;box-shadow:3px 3px #242d2bd9}.iphone-layout .entrance-kicker{font-size:9px}.iphone-layout .consultant-entrance>strong{margin:3px 0;font-size:19px}.iphone-layout .entrance-subtitle{display:none}.iphone-layout .consultant-entrance p{margin:4px 0;font-size:11px}.iphone-layout .sample-timers{top:calc(var(--phone-top) + 190px);width:112px;max-height:36px;font-size:10px}.iphone-layout .interaction-prompt{padding:5px 8px;border-width:1px;font-size:12px;max-width:32vw;box-shadow:2px 2px #353a35}.iphone-layout .pinned-task{padding:5px 8px;font-size:10px;background:#f3f0e7d9}}@media(orientation:landscape)and (max-width:740px){.iphone-layout .task-notices{left:calc(var(--phone-left) + 124px);top:calc(var(--phone-top) + 96px)}.iphone-layout .consultant-entrance{top:calc(var(--phone-top) + 96px)}}.iphone-layout .ward-hud:has(.microgame-overlay:not([hidden])) .task-notices{top:var(--phone-top);left:50%;right:auto;width:min(300px,calc(100vw - var(--phone-left) - var(--phone-right)));transform:translate(-50%)}.iphone-layout :is(.patient-overlay,.task-overlay,.directory-overlay,.pause-overlay,.microgame-overlay,.run-end-overlay){padding:var(--phone-top) var(--phone-right) calc(var(--phone-bottom) + 12px) var(--phone-left);background:#24302b45}.iphone-layout :is(.patient-sheet,.task-sheet,.directory-sheet,.pause-card,.microgame-card,.run-end-card){margin-top:0;max-height:calc(100dvh - var(--phone-top) - var(--phone-bottom) - 12px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:12px 14px;border-width:1px;border-radius:10px;box-shadow:3px 3px #343a34}.iphone-layout :is(.patient-sheet,.task-sheet,.directory-sheet) header{gap:8px;margin-bottom:8px}.iphone-layout :is(.patient-sheet,.task-sheet,.directory-sheet,.pause-card,.run-end-card) h2{margin:0;font-size:20px;line-height:1.2}.iphone-layout :is(.patient-sheet,.task-sheet,.directory-sheet,.pause-card,.run-end-card) .eyebrow{margin:0 0 3px;font-size:9px}.iphone-layout :is(.task-sheet,.directory-sheet) header button{flex-shrink:0;width:44px;height:44px;touch-action:manipulation}.iphone-layout .patient-close{min-width:44px;min-height:44px;font-size:24px}.iphone-layout .patient-sheet>p{margin:7px 0;font-size:12px}.iphone-layout [data-patient-tasks]{gap:7px}.iphone-layout .patient-task-card{min-height:70px;padding:9px 11px;gap:4px;border-width:1px}.iphone-layout .patient-task-card strong{font-size:17px}.iphone-layout .patient-task-card small{font-size:12px}.iphone-layout .patient-task-action{font-size:11px}.iphone-layout .directory-note{margin:8px 0 0;font-size:11px;line-height:1.3}.iphone-layout .task-row{grid-template-columns:58px minmax(0,1fr);gap:5px 8px;padding:8px 0}.iphone-layout .task-copy strong{font-size:14px;overflow-wrap:anywhere}.iphone-layout .task-copy small{font-size:11px}.iphone-layout .task-actions{grid-column:2;justify-content:flex-end;gap:6px}.iphone-layout .task-actions button{width:44px;height:44px;font-size:19px;touch-action:manipulation}.iphone-layout .pause-card{width:min(300px,100%)}.iphone-layout .pause-card p:not(.eyebrow){margin:8px 0;font-size:13px}.iphone-layout :is(.pause-card,.run-end-card) .primary-button{min-width:0;width:100%;min-height:48px;margin-top:8px;padding:10px 14px;font-size:13px}.iphone-layout .run-end-card{width:min(340px,100%)}.iphone-layout .run-end-card p:not(.eyebrow){margin:10px 0;font-size:14px}.iphone-layout .microgame-card .microgame-task-title{font-size:23px;margin:0 0 8px}.iphone-layout .microgame-card .microgame-instruction{margin:0 0 10px;font-size:15px;line-height:1.3}.iphone-layout .microgame-card [data-microgame-status]{margin:8px 0;font-size:12px}.iphone-layout .microgame-card .primary-button{min-height:52px;padding:10px;font-size:15px}.iphone-layout .challenge-reference{margin:6px 0;font-size:12px}.iphone-layout .microgame-sequence{margin:10px 0}.iphone-layout .microgame-pad{gap:8px;margin:10px auto}.iphone-layout .needle-track{height:76px;margin:10px 0}.iphone-layout .incoming-call{z-index:2;width:160px;right:var(--phone-right);left:auto;top:calc(var(--phone-top) + 112px);padding:7px;border-width:1px;border-radius:8px;box-shadow:2px 2px #26342ecc}.iphone-layout .incoming-call>span{font-size:9px;letter-spacing:0}.iphone-layout .incoming-call>strong{margin:4px 0 6px;font-size:16px;line-height:1.1}.iphone-layout .incoming-call>div{gap:5px}.iphone-layout .incoming-call button{min-height:44px;padding:4px;font-size:10px;touch-action:manipulation}.iphone-layout .interaction-prompt{max-width:32vw;max-height:64px;overflow-y:auto;overflow-wrap:anywhere}.iphone-layout .pinned-task{max-height:56px;overflow-y:auto;overflow-wrap:anywhere}.iphone-layout .world-notice{overflow-wrap:anywhere}@media(orientation:landscape){.iphone-layout :is(.patient-overlay,.task-overlay){justify-items:end;z-index:3}.iphone-layout .patient-sheet{width:min(420px,64vw)}.iphone-layout .task-sheet{width:min(460px,68vw)}.iphone-layout .directory-sheet{width:min(440px,100%)}.iphone-layout .directory-map{width:min(280px,100%);height:min(200px,calc(100dvh - var(--phone-top) - var(--phone-bottom) - 106px))}.iphone-layout .microgame-card{width:min(600px,100%)}.iphone-layout .record-card{min-height:52px;padding:7px;font-size:14px}.iphone-layout .review-observation{min-height:48px;padding:7px;margin-bottom:5px;font-size:14px}.iphone-layout .challenge-confirm{min-height:48px;margin-top:8px;padding:8px}.iphone-layout .ward-hud:has(.microgame-overlay:not([hidden])) .consultant-entrance{top:var(--phone-top);padding:5px 8px}.iphone-layout .ward-hud:has(.microgame-overlay:not([hidden])) .consultant-entrance>strong{font-size:19px}.iphone-layout .ward-hud:has(.microgame-overlay:not([hidden]):not(.microgame-overlay-battle)):has(.task-notice) .microgame-card,.iphone-layout .ward-hud:has(.microgame-overlay:not([hidden]):not(.microgame-overlay-battle)):has(.consultant-entrance:not([hidden])) .microgame-card{margin-top:88px;max-height:calc(100dvh - var(--phone-top) - var(--phone-bottom) - 100px)}}.iphone-layout :is(.interaction-prompt,.pinned-task){pointer-events:auto;touch-action:pan-y}.iphone-layout .world-notice{max-height:64px;overflow-y:auto;pointer-events:auto;touch-action:pan-y}.welcome-rotation{display:none}.phone-rotation-visual{position:relative;width:172px;height:150px;margin:16px auto 22px}.phone-rotation-outline{position:absolute;left:54px;top:20px;width:64px;height:108px;border:4px solid #2b2340;background:#ffd84d;border-radius:14px;transform-origin:center;animation:phone-turn-landscape 3.2s ease-in-out infinite}.phone-rotation-screen{position:absolute;inset:10px 5px 16px;border-radius:6px;background:#fff;border:2px solid #2b2340}.phone-rotation-home{position:absolute;bottom:6px;left:24px;width:10px;height:3px;border-radius:3px;background:#2b2340}.phone-rotation-arrow{position:absolute;right:0;top:5px;color:#ff6b9a;font-size:48px;line-height:1;text-shadow:0 2px 0 #2b2340}@keyframes phone-turn-landscape{0%,18%{transform:rotate(0)}48%,78%{transform:rotate(90deg)}to{transform:rotate(0)}}@media(orientation:portrait){.iphone-layout .title-screen{padding:0}.iphone-layout .start-stage{display:none}.iphone-layout .welcome-rotation{position:fixed;inset:0;display:grid;place-items:center;padding:var(--phone-top) var(--phone-right) calc(var(--phone-bottom) + 16px) var(--phone-left);background:linear-gradient(#bfe9ff,#fff4cf);color:#2b2340;text-align:center}.iphone-layout .welcome-rotation>div{max-width:310px}.iphone-layout .welcome-rotation .eyebrow{margin:0;color:#e0457b;font-size:13px}.iphone-layout .welcome-rotation h2{margin:0 0 12px;font-size:25px;line-height:1.2}.iphone-layout .welcome-rotation p{margin:0 0 12px;font-size:17px;line-height:1.4}.iphone-layout .welcome-rotation small{color:#6a5f8f;font-size:13px;line-height:1.4}}@media(prefers-reduced-motion:reduce){.phone-rotation-outline{animation:none;transform:rotate(90deg)}}.iphone-layout .task-count{min-width:23px;height:23px;padding:0 5px;font-size:12px}.iphone-layout .resource-hud .task-toggle{gap:8px}.iphone-layout .task-overlay{background:transparent;pointer-events:none;align-items:start}.iphone-layout .task-sheet{pointer-events:auto;padding:8px 10px}.iphone-layout .task-sheet header{top:-8px;margin:-8px -10px 6px;padding:6px 10px}@media(orientation:landscape){.iphone-layout .task-overlay{padding-top:calc(var(--phone-top) + 96px)}.iphone-layout .task-sheet{width:min(280px,40vw);max-height:min(210px,calc(100dvh - var(--phone-top) - var(--phone-bottom) - 112px))}.iphone-layout .task-sheet h2{font-size:17px}}.iphone-layout .task-sheet .task-row{grid-template-columns:minmax(0,1fr) auto;gap:2px 4px;padding:4px 0}.iphone-layout .task-sheet .urgency{grid-column:1;grid-row:1;font-size:8px;line-height:1}.iphone-layout .task-sheet .task-copy{grid-column:1;grid-row:2;gap:1px}.iphone-layout .task-sheet .task-copy strong{font-size:12px;line-height:1.15}.iphone-layout .task-sheet .task-copy small{font-size:10px;line-height:1.15}.iphone-layout .task-sheet .task-actions{grid-column:2;grid-row:1 / 3;gap:0}.iphone-layout .task-sheet .task-actions button{width:32px;height:44px;font-size:16px;border-radius:4px}.iphone-layout .task-sheet{padding:6px 8px}.iphone-layout .task-sheet header{top:-6px;margin:-6px -8px 2px;padding:3px 8px}.iphone-layout .task-sheet header .eyebrow{display:none}.iphone-layout .task-sheet .directory-note{margin-top:4px;font-size:9px}@media(orientation:landscape){.iphone-layout .microgame-card{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(0,1.5fr);grid-template-rows:auto auto 1fr auto;align-items:start;gap:6px 12px;width:min(760px,100%);padding:10px 12px;margin-top:0;max-height:calc(100dvh - var(--phone-top) - var(--phone-bottom) - 12px)}.iphone-layout .microgame-card .microgame-task-title{grid-column:1;grid-row:1;font-size:20px;line-height:1.15;margin:0}.iphone-layout .microgame-card .microgame-instruction{grid-column:1;grid-row:2;margin:0;font-size:13px;line-height:1.25}.iphone-layout .microgame-card [data-microgame-status]{grid-column:1;grid-row:3;margin:0;font-size:12px;line-height:1.2}.iphone-layout .microgame-card>.primary-button{grid-column:1;grid-row:4;min-height:44px;margin:0;padding:8px;font-size:13px;align-self:end}.iphone-layout [data-microgame-body]{grid-column:2;grid-row:1 / 5;margin:0;min-width:0}.iphone-layout [data-microgame-body][data-completed=true]{display:none}.iphone-layout .microgame-card:has([data-completed=true]){grid-template-columns:1fr;width:min(420px,100%)}.iphone-layout .challenge-reference{margin:0 0 5px;font-size:11px;line-height:1.2}.iphone-layout .challenge-cards,.iphone-layout .record-sections{gap:4px}.iphone-layout .record-card{min-height:44px;padding:5px;font-size:12px}.iphone-layout .record-sections{margin-top:5px}.iphone-layout .record-slot{min-height:44px;padding:5px}.iphone-layout .record-slot strong{font-size:12px;line-height:1.1}.iphone-layout .record-slot span{margin-top:2px;font-size:10px;line-height:1.1}.iphone-layout .discharge-folder{min-height:64px;margin-top:5px;padding:6px}.iphone-layout .discharge-folder strong{font-size:13px}.iphone-layout .discharge-folder span{margin:3px 0;font-size:12px}.iphone-layout .discharge-folder small{font-size:10px;line-height:1.1}.iphone-layout .challenge-confirm{min-height:44px;margin-top:5px;padding:6px;font-size:12px}.iphone-layout .review-heading{padding:3px;font-size:9px}.iphone-layout .review-observation{min-height:48px;margin:0;padding:4px;gap:3px;grid-template-columns:1.3fr 1fr 1fr;font-size:11px}.iphone-layout .review-observation strong{font-size:11px;line-height:1.1}.iphone-layout .needle-track{height:72px;margin:5px 0}.iphone-layout .microgame-sequence{gap:4px;margin:4px 0 10px}.iphone-layout .sequence-key{min-width:32px;min-height:36px;font-size:20px}.iphone-layout .microgame-pad{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:5px 0}.iphone-layout .sequence-pad-button{min-height:48px;font-size:24px}.iphone-layout .microgame-card .timing-track{margin:28px 0 12px}.iphone-layout .microgame-tap-progress{margin:12px 0;font-size:26px}.iphone-layout .versus-fight{gap:6px}.iphone-layout .fight-arena{min-height:168px;padding:8px 10px 5px}.iphone-layout .fight-fighter{transform:scale(.76);transform-origin:50% 100%}.iphone-layout .fight-fighter-opponent{transform:scale(-.76,.76)}.iphone-layout .fight-chat{top:6px;left:7px;min-height:38px;padding:5px 8px;font-size:11px}.iphone-layout .fight-counter-button{min-height:46px;font-size:17px}.iphone-layout .fight-help{font-size:10px}.iphone-layout .ward-hud:has(.microgame-overlay:not([hidden]):not(.microgame-overlay-battle)):has(.task-notice) .microgame-card,.iphone-layout .ward-hud:has(.microgame-overlay:not([hidden]):not(.microgame-overlay-battle)):has(.consultant-entrance:not([hidden])) .microgame-card{margin-top:80px;max-height:calc(100dvh - var(--phone-top) - var(--phone-bottom) - 92px)}.iphone-layout .task-notice{grid-template-columns:minmax(0,1fr)}.iphone-layout .task-callout-line{font-size:12px}.iphone-layout .task-notice .task-callout-details{display:none}}.iphone-layout .microgame-overlay-battle{padding:0;background:#100e13}.iphone-layout .rotate-phone:not([hidden]){z-index:30}.iphone-layout .ward-hud .microgame-overlay-battle .microgame-card{display:flex;flex-direction:column;width:100%;height:100dvh;max-height:none;margin:0;gap:5px;overflow:hidden;padding:var(--phone-top) var(--phone-right) calc(var(--phone-bottom) + 8px) var(--phone-left);border:0;border-radius:0;box-shadow:none;background:radial-gradient(ellipse at 50% 55%,#4c2d32,#1b171e 68%,#0e0b11)}.iphone-layout .microgame-overlay-battle .microgame-task-title{margin:0;color:#fff2df;font-size:clamp(16px,4vw,24px);line-height:1.05;text-align:center;text-shadow:2px 2px #a12b2d}.iphone-layout .microgame-overlay-battle .microgame-instruction{margin:0;color:#dac5ba;font-size:12px;line-height:1.2;text-align:center}.iphone-layout .microgame-overlay-battle [data-microgame-body]{flex:1;min-height:0;display:flex}.iphone-layout .microgame-overlay-battle [data-microgame-status]{display:none}.iphone-layout .microgame-overlay-battle .versus-fight{flex:1;min-height:0;gap:5px}.iphone-layout .microgame-overlay-battle .fight-arena{min-height:0;height:100%;grid-template-columns:1fr 18px 1fr;padding:8px 14px 4px;border:2px solid #ba8d68;background:linear-gradient(108deg,#473444 0 49.7%,#6a3439 50% 51%,#252c39 51.3% 100%);box-shadow:inset 0 0 40px #09060cb8,0 0 0 2px #100b12,0 0 20px #e3393959}.iphone-layout .microgame-overlay-battle .fight-arena:before{opacity:.34;background:repeating-linear-gradient(0deg,transparent 0 7px,#ffdc9b30 8px,transparent 9px),repeating-linear-gradient(110deg,transparent 0 45px,#ffd6aa2b 47px,transparent 50px)}.iphone-layout .microgame-overlay-battle .fight-center-line{display:none}.iphone-layout .microgame-overlay-battle .versus-fight{width:100%}.iphone-layout .microgame-overlay-battle .fight-arena{grid-template-columns:1fr 1fr}.iphone-layout .microgame-overlay-battle .fight-corner{justify-self:center}.iphone-layout .microgame-overlay-battle .fight-counter-button{white-space:nowrap;letter-spacing:.12em}.iphone-layout .microgame-overlay-battle .fight-fighter{width:clamp(85px,19vw,152px);height:clamp(130px,42vh,188px)}.iphone-layout .microgame-overlay-battle .fight-fighter-opponent{transform:scaleX(-1)}.iphone-layout .microgame-overlay-battle .fight-fighter-player{transform:none}.iphone-layout .microgame-overlay-battle .fight-name{max-width:29vw;padding:2px 5px;font-size:clamp(9px,1.8vw,13px);line-height:1.1}.iphone-layout .microgame-overlay-battle .fight-chat{z-index:3;top:8px;left:50%;width:min(46%,380px);min-height:68px;padding:8px 12px;border-width:2px;font-size:clamp(12px,2.1vw,19px);line-height:1.1;text-align:center}.iphone-layout .microgame-overlay-battle .fight-chat:after{bottom:-13px;width:17px;height:17px}.iphone-layout .microgame-overlay-battle .fight-impact{font-size:clamp(38px,8vw,72px)}.iphone-layout .microgame-overlay-battle .fight-status{min-height:0;padding:8px 12px;border-left:4px solid #ef5c4c;background:#331b27;color:#ffe9bb;font-size:clamp(12px,1.9vw,17px);line-height:1.15;text-align:left;text-shadow:none}.iphone-layout .microgame-overlay-battle .tug-bar{height:22px;border-width:2px}.iphone-layout .microgame-overlay-battle .tug-labels{font-size:10px;line-height:1}.iphone-layout .microgame-overlay-battle .fight-counter-button{width:100%;min-height:54px;font-size:clamp(18px,3vw,25px);touch-action:manipulation}.iphone-layout .microgame-overlay-battle .fight-help{margin:0;color:#dbc9b9;font-size:10px}@media(orientation:landscape)and (max-height:600px){.iphone-layout .microgame-overlay-battle .microgame-instruction,.iphone-layout .microgame-overlay-battle .fight-help{display:none}.iphone-layout .ward-hud .microgame-overlay-battle .microgame-card{gap:4px}.iphone-layout .microgame-overlay-battle .microgame-task-title{align-self:stretch;font-size:clamp(12px,3.2vh,17px)}.iphone-layout .microgame-overlay-battle .versus-fight{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,34%);grid-template-rows:minmax(0,1fr) auto clamp(52px,16vh,70px);gap:4px 10px}.iphone-layout .microgame-overlay-battle .versus-fight .fight-arena{grid-column:1 / -1;grid-row:1}.iphone-layout .microgame-overlay-battle .versus-fight .fight-hud{grid-column:1 / -1;grid-row:2}.iphone-layout .microgame-overlay-battle .versus-fight .tug-bar{height:clamp(16px,5.5vh,24px)}.iphone-layout .microgame-overlay-battle .fight-status{grid-column:1;grid-row:3;display:flex;align-items:center;font-size:clamp(12px,3.6vh,18px)}.iphone-layout .microgame-overlay-battle .fight-counter-button{grid-column:2;grid-row:3;height:100%;min-height:0;align-self:stretch;font-size:clamp(22px,7vh,34px)}}@media(orientation:landscape)and (max-height:600px){.iphone-layout .microgame-overlay-battle .versus-fight .fight-fighter{bottom:-14%;width:auto;height:108%;max-width:none}.iphone-layout .microgame-overlay-battle .versus-fight .fight-corner{padding:0}.iphone-layout .microgame-overlay-battle .versus-fight .fight-plate .fight-name{font-size:clamp(15px,min(6.4vh,4.4vw),40px);white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}.iphone-layout .microgame-overlay-battle .versus-fight .fight-arena{padding:0;grid-template-columns:none}.iphone-layout .microgame-overlay-battle .versus-fight .fight-chat{top:6px;left:8px;right:70px;width:auto;max-width:none;min-height:clamp(40px,15vh,64px);padding:4px 14px;font-size:clamp(16px,6.2vh,26px);border-width:3px}.iphone-layout .microgame-overlay-battle .versus-fight .fight-vs-title{top:58%;font-size:clamp(56px,26vh,130px)}}@media(orientation:landscape)and (max-height:360px){.iphone-layout .ward-hud .microgame-overlay-battle .microgame-card{gap:2px;padding-top:max(4px,env(safe-area-inset-top));padding-bottom:max(4px,env(safe-area-inset-bottom))}.iphone-layout .microgame-overlay-battle .versus-fight{grid-template-rows:minmax(0,1fr) auto 44px;gap:3px 8px}}@media(orientation:landscape){.iphone-layout [data-kind=pack] .challenge-cards{grid-template-columns:repeat(4,minmax(0,1fr))}}.iphone-layout .resource-hud .sample-timers{position:static;width:100%;max-width:none;max-height:84px;gap:4px;pointer-events:none}.iphone-layout .resource-hud .sample-timer{padding:5px 6px;gap:2px 4px}.iphone-layout .resource-hud .sample-timer .sample-bed{font-size:10px}.iphone-layout .resource-hud .sample-timer strong{font-size:17px}.iphone-layout .resource-hud .sample-timer .sample-kind{font-size:9px}.iphone-layout .resource-hud .sample-timer small{font-size:8px}@media(orientation:landscape){.iphone-layout .resource-hud .sample-timers{max-height:max(42px,min(84px,calc(100dvh - var(--phone-top) - var(--phone-bottom) - 240px)))}.iphone-layout .ward-hud:has(.sample-timers:not([hidden])) .incoming-call{right:calc(var(--phone-right) + 172px)}}@media(orientation:landscape){.iphone-layout .review-checkin{gap:6px}.iphone-layout .review-step{min-height:92px;padding:10px 6px}.iphone-layout .review-step strong{font-size:15px}.iphone-layout .review-step small{font-size:11px}}.iphone-layout .dialogue-panel{bottom:8px;width:min(480px,calc(100vw - 260px));max-height:calc(100dvh - 24px);overflow-y:auto;padding:8px 10px}.iphone-layout .dialogue-text{font-size:13px;margin-bottom:6px}.iphone-layout .dialogue-speaker{font-size:10px}.iphone-layout .dialogue-choices{gap:4px}.iphone-layout .dialogue-choices button{min-height:34px;padding:4px 8px;font-size:13px}.iphone-layout .notes-toggle{top:auto;bottom:8px;left:50%;transform:translate(-50%);padding:5px 9px;font-size:11px}.iphone-layout .notes-sheet{max-height:calc(100dvh - 16px);padding:8px 10px}.iphone-layout .notes-sheet h2{font-size:16px}.iphone-layout .notes-entry p{font-size:12px}.iphone-layout .task-row[data-guide-task]{touch-action:manipulation}.iphone-layout .microgame-overlay-battle{background:#bfe9ff}.iphone-layout .ward-hud .microgame-overlay-battle .microgame-card{background:radial-gradient(circle at 12% 18%,#ffffff 0 3px,transparent 4px) 0 0 / 46px 46px,radial-gradient(circle at 70% 60%,#ffd84d88 0 4px,transparent 5px) 0 0 / 64px 64px,linear-gradient(#bfe9ff,#fff4cf)}.iphone-layout .microgame-overlay-battle .microgame-task-title{color:#2b2340;text-shadow:0 2px 0 #ffffff}.iphone-layout .microgame-overlay-battle .fight-status{border-left:3px solid #2b2340;background:#fff;color:#2b2340}.iphone-layout .microgame-overlay-battle .fight-help{color:#4a4070}.iphone-layout .microgame-overlay-battle .versus-fight .fight-arena{border:3px solid #2b2340;box-shadow:0 4px #2b2340}@media(orientation:landscape)and (max-height:600px){.iphone-layout .microgame-overlay-battle .versus-fight .fight-fighter.fight-fighter-model{bottom:0;height:96%;width:auto}.iphone-layout .microgame-overlay-battle .versus-fight .fight-chat{border-width:3px}.iphone-layout .microgame-overlay-battle .versus-fight .tug-knot{width:20px;height:20px;margin:-10px 0 0 -10px}}.iphone-layout .microgame-overlay-battle .versus-fight .fight-arena{background:radial-gradient(ellipse 22% 14% at 18% 30%,#ffffff 0 60%,transparent 62%),radial-gradient(ellipse 16% 10% at 80% 26%,#ffffff 0 60%,transparent 62%),linear-gradient(#9fdcff 0 60%,#8fd98f 60% 63%,#b8efb0 63%)}.iphone-layout .microgame-overlay-battle .versus-fight .fight-arena:before{inset:0 0 auto;height:10px;opacity:1;background:repeating-linear-gradient(90deg,#ff6b9a 0 24px,#ffd84d 24px 48px,#4cc9f0 48px 72px,#7ed957 72px 96px,#b28dff 96px 120px)}@media(orientation:landscape)and (max-height:600px){.iphone-layout .microgame-overlay-battle .versus-fight .fight-fighter.fight-fighter-model{bottom:0;height:88%}.iphone-layout .microgame-overlay-battle .versus-fight .fight-fighter-opponent.fight-fighter-model{left:4%}.iphone-layout .microgame-overlay-battle .versus-fight .fight-fighter-player.fight-fighter-model{right:4%}.iphone-layout .microgame-overlay-battle .versus-fight .fight-chat{top:16px;left:50%;right:auto;width:max-content;max-width:46%;transform:translate(-50%);min-height:0;padding:6px 14px;font-size:clamp(14px,5vh,22px)}.iphone-layout .microgame-overlay-battle .versus-fight .fight-chat-hit{animation:none}.iphone-layout .microgame-overlay-battle .versus-fight .fight-chat:after{display:block;left:18%}.iphone-layout .microgame-overlay-battle .versus-fight .fight-vs-title{top:60%;font-size:clamp(48px,22vh,110px)}.iphone-layout .microgame-overlay-battle .versus-fight .fight-plate{width:min(36%,300px);padding-bottom:4px}.iphone-layout .microgame-overlay-battle .versus-fight .fight-plate .fight-name{font-size:clamp(14px,min(5.6vh,3.6vw),30px)}}.iphone-layout .title-screen{height:100dvh;padding:0}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle){padding:var(--phone-top) var(--phone-right) var(--phone-bottom) var(--phone-left)}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card{margin:0!important;max-height:calc(100dvh - var(--phone-top) - var(--phone-bottom) - 8px)!important}.iphone-layout .ward-hud:has(.microgame-overlay:not([hidden]):not(.microgame-overlay-battle)):has(.task-notice) .microgame-card,.iphone-layout .ward-hud:has(.microgame-overlay:not([hidden]):not(.microgame-overlay-battle)):has(.consultant-entrance:not([hidden])) .microgame-card{margin-top:0!important}@media(orientation:landscape)and (max-height:520px){.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card{width:min(640px,100%);padding-bottom:12px}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-task-title{margin-bottom:8px;padding:7px 14px;font-size:16px}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-instruction{margin:0 14px 6px;font-size:13px}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) [data-microgame-body]{margin:0 14px}.iphone-layout .number-game{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.iphone-layout .number-tile{min-height:82px;border-width:3px;border-radius:18px;box-shadow:0 5px #2b2340;font-size:34px}.iphone-layout .mg-progress{height:30px}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-tap-progress{margin:8px 0 2px;font-size:32px}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) [data-microgame-status]{margin:8px 14px 0;padding:3px 10px;font-size:12px}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .primary-button{width:calc(100% - 28px);margin:8px 14px 0;min-height:46px;font-size:15px}}@media(orientation:landscape)and (max-height:520px){.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-kind=sequence],[data-kind=tap]){display:block;width:min(560px,100%)}.iphone-layout .microgame-card:has([data-kind=sequence],[data-kind=tap])>*{grid-column:auto;grid-row:auto}}.iphone-layout .incoming-call{width:220px;padding:8px 10px;border-width:3px;border-radius:18px;gap:0 8px;box-shadow:0 3px #2b2340}.iphone-layout .incoming-call>strong{margin:0;font-size:14px}.iphone-layout .incoming-call .call-btn{width:44px;height:44px;min-height:0;padding:0}.iphone-layout .incoming-call .call-btn svg{width:22px;height:22px}.iphone-layout .task-sheet{width:min(320px,46vw);max-height:calc(100dvh - var(--phone-top) - var(--phone-bottom) - 112px);padding:6px 8px 8px}.iphone-layout :is(.task-sheet,.patient-sheet,.directory-sheet)>header{position:relative;top:auto;margin:0 0 6px;padding:3px 6px 3px 46px;gap:6px}.iphone-layout :is(.task-sheet,.patient-sheet,.directory-sheet)>header h2{font-size:15px}.iphone-layout :is(.task-sheet,.patient-sheet,.directory-sheet)>header button{width:30px;height:30px}.iphone-layout .task-sheet .task-row{grid-template-columns:24px minmax(0,1fr) auto auto;gap:6px;padding:3px 6px}.iphone-layout .task-sheet .task-row .urgency,.iphone-layout .task-sheet .task-row .task-copy,.iphone-layout .task-sheet .task-row .task-actions{grid-column:auto;grid-row:auto}.iphone-layout .task-sheet .task-row .urgency{font-size:7px;padding:1px 5px}.iphone-layout .task-sheet .task-actions button{width:28px;height:30px;font-size:14px;border-radius:8px}.iphone-layout .task-sheet .task-copy strong{font-size:11px}.iphone-layout .task-sheet .task-copy small{font-size:9px}.iphone-layout .patient-sheet{padding:6px 8px 8px}.iphone-layout .patient-task-card{min-height:0;padding:5px 9px;border-width:2px}.iphone-layout .patient-task-card strong{font-size:13px}.iphone-layout .patient-task-card small{font-size:10px}@media(orientation:landscape){.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);grid-template-rows:auto auto auto 1fr;gap:6px 14px;width:min(780px,100%);margin:58px 0 0!important;padding:34px 14px 12px;max-height:none;overflow:visible}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card .microgame-task-title{grid-column:1 / -1;grid-row:1;justify-self:start;width:fit-content;max-width:78%;margin:-56px 0 10px 34px;padding:4px 18px 4px 44px;font-size:18px;line-height:1.05}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card .microgame-instruction{grid-column:1;grid-row:2;margin:0;font-size:13px;line-height:1.25}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card [data-microgame-status]{grid-column:1;grid-row:3;margin:0;padding:3px 8px 3px 3px;font-size:11px;line-height:1.2}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card>.primary-button{grid-column:1;grid-row:4;min-height:46px;margin:0;padding:4px 38px 4px 54px;font-size:15px;align-self:end}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) [data-microgame-body]{grid-column:2;grid-row:2 / 5;margin:0}}@media(orientation:landscape){.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-challenge=steady]){grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;width:min(560px,100%)}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-challenge=steady]) [data-microgame-body]{grid-column:1;grid-row:2}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-challenge=steady]) [data-microgame-status]{grid-column:1;grid-row:3}}@media(orientation:landscape){.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card{gap:4px 12px;margin-top:46px!important;padding:24px 12px 9px;border-width:4px;border-radius:24px;box-shadow:0 5px 0 var(--navy),0 0 0 4px #fff6;background-size:14px}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card .microgame-task-title{margin:-40px 0 6px 28px;padding:2px 14px 2px 36px;border-width:3px;border-radius:14px;box-shadow:0 3px 0 var(--navy);font-size:14px;-webkit-text-stroke-width:4px;text-shadow:0 2px 0 var(--navy)}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card .microgame-task-title:before{left:-40px;width:58px;height:64px}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card .microgame-task-title:after{width:18px;height:26px;right:-14px;top:0}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card .microgame-instruction{font-size:12px;line-height:1.2}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card [data-microgame-status]{gap:2px;padding:2px 10px 2px 2px;border-width:3px;border-radius:16px;font-size:11px;line-height:1.15}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card [data-microgame-status]:before{width:40px;height:32px}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card>.primary-button,.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card .challenge-confirm{min-height:40px;padding:2px 32px 2px 46px;border-width:3px;box-shadow:0 4px #0f5439;font-size:13px;-webkit-text-stroke-width:3px;text-shadow:0 2px 0 #0f5439}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card :is(.primary-button,.challenge-confirm):before{left:6px;width:26px;height:26px}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card :is(.primary-button,.challenge-confirm):after{right:6px;width:16px;height:24px}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .needle-track{height:38px;margin:0 0 6px;border-width:3px;border-radius:14px}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .needle-zone{top:6px;bottom:6px;border-width:2px;border-radius:9px}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .needle-cursor{top:5px;font-size:20px}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .sample-fill{height:12px;border-width:3px}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .review-checkin{gap:4px}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .review-step{grid-template-columns:30px minmax(0,1fr);gap:0 8px;padding:3px 10px;border-width:3px;border-radius:16px}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .review-step>span{width:28px;height:28px;font-size:.95rem}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .review-step strong{font-size:.9rem}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .review-step small{font-size:.7rem}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .review-step.current:after{width:14px;height:24px;right:8px}.steps-pill{height:22px;margin-top:4px;padding:3px;font-size:.7rem}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) :is(.timing-track,.mg-progress){border-width:3px;border-radius:14px}}@media(orientation:landscape){.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-challenge=checkin],[data-challenge=notes],[data-challenge=letter]){grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;width:min(620px,100%)}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-challenge=checkin],[data-challenge=notes],[data-challenge=letter]) .microgame-instruction{grid-column:1;grid-row:2;text-align:center}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-challenge=checkin],[data-challenge=notes],[data-challenge=letter]) [data-microgame-body]{grid-column:1;grid-row:3}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-challenge=checkin],[data-challenge=notes],[data-challenge=letter]) .review-checkin{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-challenge=checkin],[data-challenge=notes],[data-challenge=letter]) .review-step{grid-template-columns:30px minmax(0,1fr);grid-template-areas:"n t" "n d";padding:4px 8px;gap:0 6px}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-challenge=checkin],[data-challenge=notes],[data-challenge=letter]) .review-step strong{font-size:.85rem}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-challenge=checkin],[data-challenge=notes],[data-challenge=letter]) .review-step small{font-size:.62rem;line-height:1.1}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-challenge=checkin],[data-challenge=notes],[data-challenge=letter]) .review-step.current:after{display:none}}@media(orientation:landscape){.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-challenge=steady]){width:min(400px,100%)}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .needle-track,.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .sample-fill{max-width:300px;margin-left:auto;margin-right:auto}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card .microgame-task-title{margin-bottom:18px}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) [data-microgame-body][data-kind=tap]{display:flex;align-items:center;gap:10px;min-height:0}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) [data-microgame-body][data-kind=tap] .mg-progress{flex:1;height:20px;margin:0}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) [data-microgame-body][data-kind=tap] .microgame-tap-progress{flex:none;margin:0;font-size:1.15rem}}@media(orientation:landscape){.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-kind=tap],[data-kind=timing],[data-kind=hold]){grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto auto auto;width:min(460px,100%)}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-kind=tap],[data-kind=timing],[data-kind=hold]) .microgame-instruction{grid-column:1;grid-row:2;text-align:center;margin:0}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-kind=tap],[data-kind=timing],[data-kind=hold]) [data-microgame-body]{grid-column:1;grid-row:3}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-kind=tap],[data-kind=timing],[data-kind=hold]) [data-microgame-status]{grid-column:1;grid-row:4}.iphone-layout .microgame-overlay:not(.microgame-overlay-battle) .microgame-card:has([data-kind=tap],[data-kind=timing],[data-kind=hold])>.primary-button{grid-column:1;grid-row:5;align-self:stretch;width:100%}}.iphone-layout .end-screen{display:block;padding:0}.iphone-layout .touch-interact[data-named=true]{width:auto;height:auto;min-width:70px;max-width:170px;min-height:52px;padding:7px 12px;border-radius:20px;font-size:11px}
