@font-face{font-family:LocalSerif;src:local("Songti SC")}*{box-sizing:border-box} :root{--paper:#e9e1d2;--light:#f5efe3;--ink:#303d40;--muted:#7b8078;--green:#536b5c;--line:#b9baa98c;--red:#975c50;--font:"Songti SC","Noto Serif CJK SC",Georgia,serif}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--font);background-image:radial-gradient(#625f4410 .65px,transparent .8px);background-size:5px 5px}button,select,input{font:inherit}button,a,select,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}a{color:inherit}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #8f684d;outline-offset:5px}#app{max-width:1560px;margin:auto;padding:0 44px;min-height:100svh;display:flex;flex-direction:column}.topbar{height:92px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line)}.brand{font-family:Georgia,serif;letter-spacing:3.5px;text-decoration:none;font-size:18px;white-space:nowrap}.brand span{font-size:11px;letter-spacing:2px}.toolbar{display:flex;gap:20px;align-items:center}.text-button{background:transparent;border:0;color:var(--ink);padding:12px 0;font-size:13px;min-height:44px}.text-button span{font:10px system-ui;color:var(--muted);margin-left:7px}main{flex:1;padding:32px 0 28px}.footer{font-size:11px;letter-spacing:1px;color:var(--muted);border-top:1px solid var(--line);padding:20px 0;display:flex;justify-content:space-between;gap:16px}.footer span:last-child{font:9px system-ui;letter-spacing:2px}.eyebrow{font-family:system-ui,sans-serif;font-size:10px;letter-spacing:2.2px;line-height:1.8;color:var(--muted);text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(44px,5.2vw,78px);font-weight:500;letter-spacing:9px;margin:26px 0 12px}h2{font-size:clamp(27px,3vw,40px);font-weight:500;letter-spacing:2px;line-height:1.5;margin:16px 0 23px}h3{font-size:21px;font-weight:500;line-height:1.55}p{font-size:16px;line-height:1.95;margin-bottom:22px}.muted{color:var(--muted);font-size:14px}.english-title{font-family:Georgia,serif;letter-spacing:6px;font-size:12px;color:var(--muted)}.lead{font-size:23px;line-height:1.8}.small-rule{height:1px;width:36px;background:#8e9a85;margin:34px 0}.primary,.secondary{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:52px;border:1px solid var(--green);padding:14px 23px;letter-spacing:1px;font-size:14px;transition:background .2s,transform .2s}.primary{background:var(--green);color:#f7f0dc}.primary:hover{background:#40594b;transform:translateY(-1px)}.primary:disabled{background:#b3b7a8;color:#edeadd;border-color:#b3b7a8;transform:none}.primary span{font-family:system-ui;font-size:18px}.secondary{background:transparent;color:var(--green);border-color:#a1aa93}.secondary:hover{background:#c6cbbd44}.wide{width:100%}.fine-print{font-size:11px;line-height:1.8;color:var(--muted);margin:14px 0 0}.title-layout{display:grid;grid-template-columns:1.25fr .9fr;gap:7%;align-items:center;min-height:590px}.scene-art{position:relative;overflow:hidden;min-height:480px;background:linear-gradient(130deg,#89918a,#566571 60%,#9f9275);isolation:isolate}.scene-art img{width:100%;height:100%;object-fit:cover;object-position:left center;position:absolute;inset:0}.scene-art.room{background:linear-gradient(140deg,#a99375,#52606a 65%,#303e45)}.scene-art:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#152a30b0);z-index:1}.scene-caption{position:absolute;bottom:35px;left:30px;right:24px;color:#f2e5c9;font-size:14px;letter-spacing:1px;z-index:2;line-height:1.8}.scene-index{position:absolute;top:22px;left:25px;color:#f7e9cbcc;letter-spacing:3px;font:9px system-ui;z-index:2}.scene-grain{position:absolute;inset:0;opacity:.08;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23000' filter='url(%23n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E");mix-blend-mode:multiply;z-index:1;pointer-events:none}.title-copy{padding:24px 30px 24px 0}.title-copy .primary{margin-top:14px;width:100%;max-width:330px}.steps{display:flex;justify-content:space-between;gap:14px;margin-bottom:28px;padding:0 1px}.steps span{font-size:11px;letter-spacing:1px;color:#9b9f91;display:flex;align-items:center;gap:10px}.steps i{font:10px system-ui;font-style:normal;border:1px solid #bcc1b2;border-radius:50%;width:24px;height:24px;display:grid;place-items:center}.steps .current{color:var(--ink)}.steps .current i{background:var(--green);color:var(--light);border-color:var(--green)}.steps .done i{color:var(--green)}.story-layout,.investigation-layout,.ending-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:0;align-items:stretch}.story-layout>.scene-art,.investigation-layout>.scene-art,.ending-layout>.scene-art{min-height:580px}.paper-panel{padding:40px 44px;background:#f5efe0b3;border:1px solid #d0ceba66;box-shadow:0 12px 36px #38433205}.paper-panel p{font-size:16px}.paper-panel .primary{margin-top:8px}blockquote{font-size:26px;letter-spacing:2px;border-left:2px solid #9f9f86;padding-left:23px;margin:26px 0}.margin-note{font-size:13px;color:#8c8270;margin:28px 0 35px;padding:14px 0;border-top:1px solid var(--line)}.prepare-layout{display:grid;grid-template-columns:.85fr 1.25fr;gap:35px}.prepare-illustration{position:relative}.prepare-illustration .scene-art{height:100%;min-height:610px}.prepare-intro{position:absolute;bottom:100px;left:34px;right:24px;color:#f2e5cc;z-index:3}.prepare-intro .eyebrow{color:#e1cfac}.prepare-intro h2{font-size:33px}.prepare-intro p{font-size:14px}.preparation-panel{padding:12px 0}.resource-line{display:flex;gap:14px;align-items:center;justify-content:space-between;font-size:12px;padding:14px 0;border-bottom:1px solid var(--line);margin-bottom:20px}.energy-dots{color:#748871;letter-spacing:6px}.activity-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.activity{display:flex;flex-direction:column;align-items:flex-start;text-align:left;border:1px solid #bebda68c;background:#f5efe16b;padding:20px;min-height:185px;color:var(--ink);position:relative;transition:background .15s,border-color .15s}.activity:hover{background:#f6f2e8}.activity.selected{border-color:var(--green);background:#dde3d45c;box-shadow:inset 3px 0 var(--green)}.activity-icon{position:absolute;right:17px;top:15px;font-size:24px;color:#a09d87}.activity-name{font-size:17px;letter-spacing:1px;margin:2px 0 9px}.activity-benefit{font:10px system-ui;letter-spacing:1px;color:var(--green);margin:0 0 12px}.activity-description{font-size:12px;line-height:1.8;color:#7c7f73}.activity-cost{font-size:10px;color:#8a806c;margin-top:12px}.bedtime-preview{min-height:105px;padding:19px 0 12px}.bedtime-preview>span{font-size:11px;color:var(--muted);margin-right:14px}.bedtime-preview strong{font-size:14px;font-weight:400}.bedtime-preview p{font-size:12px;color:var(--muted);margin:8px 0}.outcome-token{display:flex;gap:20px;align-items:center;padding:24px 0;margin:18px 0;border-block:1px solid var(--line)}.outcome-token>span{font-size:35px;color:#829072}.outcome-token strong{font-size:17px;font-weight:400}.outcome-token p{font-size:12px;line-height:1.8;margin:10px 0 0;color:var(--muted)}.inspection-list{display:grid;gap:9px}.inspection{background:#f8f3e777;border:1px solid #c4c3ae;padding:14px 18px;text-align:left;display:flex;align-items:center;justify-content:space-between;color:var(--ink);min-height:68px;font-size:15px}.inspection small{display:block;font-size:11px;color:var(--muted);margin-top:5px}.inspection b{font-weight:400;color:#8a957e}.inspection.inspected{border-color:#8e9b83;background:#dce1d34d}.inspection:disabled:not(.inspected){opacity:.45}.calm-count{color:var(--green)}.inspection-receipt{font-size:13px;line-height:1.9;border-left:2px solid #96a189;margin:18px 0;padding:4px 0 4px 16px}.investigation-panel{padding-top:26px}.plan-layout{display:grid;grid-template-columns:.85fr 1.1fr;gap:44px;max-width:1150px;margin:auto}.plan-records{padding:10px 0}.plan-records>p{font-size:14px;color:var(--muted)}.evidence-card{padding:20px 22px;background:#f4eddb;border:1px solid #c9c4ae99;margin:0 0 15px;position:relative}.evidence-card:after{content:"";position:absolute;width:48px;height:11px;background:#9f9c6d30;top:-5px;right:18px;transform:rotate(3deg)}.evidence-card h3{font-size:18px;margin:10px 0}.evidence-card p{font-size:13px;line-height:1.9;margin:0;color:#73766b}.evidence-card .eyebrow{font-size:9px;letter-spacing:1px}.plan-aside{font-size:12px;line-height:1.9;color:var(--muted);padding:10px 0}.plan-layout form{padding:32px 36px}.plan-layout label{display:block;font-size:12px;line-height:1.8;margin:19px 0}select{display:block;width:100%;font-size:14px;margin-top:8px;min-height:45px;padding:10px;background:#fbf6e9;border:1px solid #bcbcaa;color:var(--ink);border-radius:0}fieldset{border:0;padding:0;margin:23px 0}legend{font-size:12px;margin-bottom:8px}.plan-layout .radio-card{display:flex;align-items:center;gap:13px;border:1px solid #c3c3ad;padding:12px;margin:8px 0;background:#f6f1e4}.radio-card:has(input:checked){border-color:var(--green);background:#dce2d270}.radio-card input{accent-color:var(--green)}.radio-card strong{font-size:13px;font-weight:400}.radio-card small{display:block;font-size:10px;color:var(--muted);margin-top:4px}.unavailable{opacity:.55}.feedback,.hint-text{font-size:12px!important;line-height:1.8;margin:12px 0;color:var(--red)}.feedback:empty,.hint-text:empty{display:none}.hint-text{color:var(--muted)}.ending-layout{max-width:1200px;margin:10px auto}.ending-layout .paper-panel{padding:38px}.ending-layout h2{font-size:31px}.ending-receipt{display:grid;gap:9px;border-block:1px solid var(--line);padding:20px 0;margin:24px 0}.ending-receipt span{font-size:10px;color:var(--muted)}.ending-receipt strong{font-weight:400;font-size:13px;margin-bottom:7px}.ending-thought{font-size:14px!important;color:var(--muted)}.dream-layout{display:grid;grid-template-columns:minmax(0,1fr) 235px;gap:27px}.dream-topline{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px}.dream-topline h2{font-size:27px;margin:6px 0}.dream-clock{text-align:right}.dream-clock span{font-family:Georgia;font-size:33px;font-variant-numeric:tabular-nums}.dream-clock small{font-size:10px;display:block;color:var(--muted);margin-top:2px}.arena-wrap{position:relative;box-shadow:0 12px 24px #283d3b17;line-height:0}.arena-wrap canvas{width:100%;aspect-ratio:16/9;display:block;touch-action:none;cursor:crosshair}.time-track{height:3px;background:#c8cbb9;margin-top:5px}.time-track i{display:block;height:100%;width:0;background:#7d9075}.combat-controls{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:14px}.combat-controls>span{font-size:11px;color:var(--muted)}.active-button{border:1px solid var(--green);background:var(--green);color:var(--light);min-height:51px;min-width:174px;padding:10px 18px;font-size:14px;display:flex;justify-content:space-between;gap:16px;align-items:center}.active-button:disabled{border-color:#a9ae9e;background:#b3b9a8;color:#faf2df}.active-button kbd{font:10px system-ui;opacity:.8}.active-button small{font-size:11px;font-variant-numeric:tabular-nums}.dream-sidebar{border-left:1px solid var(--line);padding:8px 0 0 25px}.life-block{margin:20px 0 27px}.life-block>span{font-size:10px;color:var(--muted);display:block;margin-bottom:10px}.life-block strong{font-weight:400;font-size:17px;color:#8d5f51;line-height:1.8;word-spacing:1px}.anchor-status{display:flex;align-items:center;gap:12px;margin:20px 0;opacity:.45}.anchor-status.ready,.anchor-status.recovered{opacity:1}.anchor-symbol{font-size:28px;color:#98a184}.anchor-status.recovered .anchor-symbol{color:#556f58}.anchor-status strong{font-size:13px;font-weight:400}.anchor-status small{font-size:10px;color:var(--muted);display:block;margin-top:7px}.combat-hint{font-size:12px;line-height:1.9;color:var(--muted);border-top:1px solid var(--line);padding-top:20px;margin-top:25px}.return-note{border-top:1px solid var(--line);padding-top:20px}.return-note p{font-size:12px;line-height:1.9;color:var(--muted)}.return-note strong{font-weight:400;color:var(--green)}dialog{border:1px solid #b7b7a0;background:#f0e8d7;color:var(--ink);padding:40px;max-width:min(760px,92vw);max-height:88svh;box-shadow:0 25px 100px #172c3d55}dialog::backdrop{background:#17272dd9;backdrop-filter:blur(5px)}dialog h2{font-size:29px;margin-right:25px}.dialog-close{position:absolute;top:10px;right:15px;background:none;border:0;font-size:25px;color:var(--muted);width:44px;height:44px}.journal-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:30px}.journal-grid .evidence-card{margin:0}.button-stack{display:grid;gap:12px}.upgrade-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:30px}.upgrade-card{border:1px solid #b3b8a2;background:#f9f1df;text-align:left;padding:27px;color:var(--ink);min-height:250px}.upgrade-card:hover{background:#e1e6d5;border-color:var(--green)}.upgrade-card>span{font:30px Georgia;color:#899579}.upgrade-card h3{font-size:22px;margin-top:20px}.upgrade-card p{font-size:13px;color:var(--muted)}.upgrade-card small{font-size:11px;color:var(--green)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(min-width:1600px){.title-layout{min-height:690px}.scene-art{min-height:600px}}@media(max-width:1100px){#app{padding:0 25px}.topbar{height:80px}.toolbar{gap:14px}.title-layout{gap:5%;min-height:550px}.title-copy{padding-right:0}.paper-panel{padding:30px}.prepare-layout{gap:22px;grid-template-columns:.8fr 1.2fr}.activity{padding:17px;min-height:196px}.activity-name{font-size:15px}.activity-icon{font-size:19px;right:12px}.dream-layout{grid-template-columns:minmax(0,1fr) 205px;gap:20px}.dream-sidebar{padding-left:18px}.steps span{font-size:10px;gap:6px}.steps i{width:21px;height:21px}.plan-layout{gap:25px}.plan-layout form{padding:25px}.combat-controls>span{max-width:220px}}@media(max-width:760px){#app{padding:0 18px}.topbar{height:auto;min-height:72px;padding:14px 0;align-items:flex-start;flex-wrap:wrap;gap:8px}.brand{font-size:15px;letter-spacing:2.8px;margin-top:8px}.toolbar{gap:15px;margin-left:auto}.toolbar .text-button{font-size:10px;min-height:34px}.toolbar .text-button span{display:none}main{padding-top:20px}.title-layout{display:flex;flex-direction:column;gap:24px;min-height:0}.title-layout>.scene-art{width:100%;min-height:320px;max-height:45vh}.title-copy{padding:0 4px 20px;width:100%}h1{font-size:48px;margin:15px 0;letter-spacing:6px}.title-copy .lead{font-size:21px}.small-rule{margin:20px 0}.title-copy .primary{max-width:none}.english-title{font-size:10px}.steps{gap:5px;margin-bottom:20px}.steps span{font-size:0;gap:0;flex:1;justify-content:center}.steps span.current{font-size:10px;gap:7px;flex:2}.steps i{width:22px;height:22px;font-size:9px}.story-layout,.investigation-layout,.ending-layout{grid-template-columns:1fr}.story-layout>.scene-art,.investigation-layout>.scene-art,.ending-layout>.scene-art{min-height:240px;max-height:30vh}.paper-panel{padding:27px 25px}.paper-panel p{font-size:15px}.paper-panel h2{font-size:28px}.scene-caption{left:23px;bottom:22px;font-size:12px}.scene-index{font-size:8px}.prepare-layout{grid-template-columns:1fr;gap:18px}.prepare-illustration .scene-art{min-height:280px;height:280px}.prepare-intro{bottom:50px;left:25px}.prepare-intro h2{font-size:27px;margin:12px 0}.prepare-intro p{font-size:13px}.preparation-panel{padding:0}.activity-grid{gap:10px}.activity{padding:18px 15px;min-height:195px}.activity-name{font-size:15px;max-width:125px}.activity-icon{display:none}.activity-description{font-size:11px}.activity-benefit{font-size:9px;line-height:1.7}.resource-line{margin-bottom:16px}.bedtime-preview strong{font-size:12px}.fine-print{font-size:10px}.footer{font-size:9px;flex-wrap:wrap;gap:12px;padding:17px 0}.footer span:last-child{font-size:8px}.footer span:nth-child(2){order:3;width:100%;text-align:left}.plan-layout{grid-template-columns:1fr;gap:16px}.plan-records{padding:0}.plan-records>h2{font-size:28px}.plan-aside{display:none}.plan-layout form{padding:25px 20px}select{font-size:16px}.plan-layout .radio-card{min-height:70px}.dream-layout{grid-template-columns:1fr}.dream-topline h2{font-size:24px}.dream-topline{margin-bottom:10px}.dream-sidebar{border-left:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.dream-sidebar>.eyebrow{grid-column:1/-1}.life-block{margin:10px 0;grid-column:1/-1;display:flex;justify-content:space-between;align-items:center}.life-block>span{margin:0}.anchor-list{grid-column:1/-1;display:flex;gap:10px;justify-content:space-between}.anchor-status{gap:6px;margin:10px 0}.anchor-status strong{font-size:10px}.anchor-status small{font-size:9px;line-height:1.7}.anchor-symbol{font-size:20px}.combat-hint{margin-top:10px;padding-top:15px}.return-note{margin-top:10px;padding-top:15px}.return-note .eyebrow{font-size:9px}.return-note p{font-size:11px}.dream-sidebar>.text-button{grid-column:1/-1}.combat-controls{align-items:stretch;gap:8px}.combat-controls>span{font-size:10px;line-height:1.7;display:flex;align-items:center;max-width:45%}.active-button{min-width:150px;min-height:60px;flex:1;font-size:14px;gap:8px}.active-button kbd{font-size:8px}.dream-clock span{font-size:28px}dialog{padding:30px 22px;max-width:93vw}dialog h2{font-size:25px}.journal-grid,.upgrade-grid{grid-template-columns:1fr}.upgrade-card{min-height:170px;padding:22px}.upgrade-card h3{font-size:21px;margin:12px 0}.upgrade-card p{margin-bottom:10px}.upgrade-card>span{font-size:23px}.ending-layout .paper-panel{padding:28px 24px}.ending-layout h2{font-size:28px}.ending-layout>.scene-art{min-height:260px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Staged narrative scenes reuse the painted corridor and finite actor art. */
.scene-layout{grid-template-columns:1.25fr 1fr}.incident-stage{position:relative;background:#34434b;color:#f1e4cd;align-self:stretch;display:flex;flex-direction:column;justify-content:center;min-width:0}.incident-stage canvas{width:100%;aspect-ratio:16/9;display:block}.stage-date{position:absolute;top:20px;left:20px;padding:8px 12px;background:#25343cdb;font-size:12px;letter-spacing:1px}.stage-caption{padding:19px 25px;line-height:1.8;font-size:14px;border-top:1px solid #d5d0b52e;min-height:80px}.scene-hotspots{display:flex;flex-wrap:wrap;gap:10px;padding:0 20px 20px}.scene-hotspot,.scene-marker{font:13px var(--font);padding:12px 16px;min-height:48px;border:1px solid #d8d2b7;background:#e7dfcc;color:#354641;line-height:1.7}.scene-hotspot:hover{background:#fff0cd}.scene-marker{background:#9db29b33;color:#e7eed4}.scene-status{display:grid;gap:10px;border-block:1px solid var(--line);padding:17px 0;font-size:12px;margin:22px 0}.scene-layout .paper-panel{padding:32px}.scene-layout .paper-panel h2{font-size:29px}.scene-layout .paper-panel p{font-size:14px}.week-track{display:flex;gap:10px;justify-content:space-between;color:#9b9d8e;font-size:11px;border-block:1px solid var(--line);padding:16px 0}.week-track .current{color:#4b6555;border-bottom:2px solid #4b6555;padding-bottom:6px}.instruction-card{padding:20px;background:#dfe5d34d;border:1px solid #b3bda2;margin:20px 0}.instruction-card p{font-size:13px;line-height:1.9;margin:12px 0 0}.memory-strip{position:relative;height:160px;overflow:hidden;margin:20px 0;background:#34434b}.memory-strip img{width:100%;height:100%;object-fit:cover;object-position:left 55%;filter:saturate(.55)}.memory-strip span{position:absolute;bottom:0;left:0;right:0;background:#243540d9;color:#eee3ca;padding:10px 14px;font-size:12px;line-height:1.7}.replay-note{font-size:12px;color:#6c775f;border-left:2px solid #8c9c7c;padding-left:12px}.activity-grid .activity:last-child:nth-child(odd){grid-column:1/-1;min-height:125px}.preparation-panel>.primary{width:100%}.preparation-panel h3{margin-top:15px}
@media(max-width:800px){.scene-layout{grid-template-columns:1fr}.incident-stage{min-height:0}.scene-layout .paper-panel{padding:26px 22px}.stage-caption{padding:15px 20px;min-height:0}.stage-date{top:10px;left:10px;font-size:10px}.scene-hotspots{padding:0 16px 16px}.scene-hotspot,.scene-marker{width:100%;text-align:left}.memory-strip{height:120px}}
@media(prefers-reduced-motion:reduce){.scene-hotspot,.activity{transition:none}}
.paper-panel>.text-button{display:block;margin-top:12px}

/* Short landscape screens keep the arena and both hands' controls in view. */
.touch-guide{display:none}
@media(orientation:landscape) and (max-width:1100px) and (max-height:540px){
  #app{
    --play-height:calc(100dvh - 60px - env(safe-area-inset-top) - env(safe-area-inset-bottom));
    height:100svh;height:100dvh;min-height:0;
    padding:env(safe-area-inset-top) max(12px,env(safe-area-inset-right)) env(safe-area-inset-bottom) max(12px,env(safe-area-inset-left));
  }
  .topbar{height:48px;min-height:48px;padding:0;flex-wrap:nowrap;align-items:center;gap:8px;flex-shrink:0}
  .brand{font-size:13px;letter-spacing:2px;margin:0}.brand span{font-size:9px}
  .toolbar{gap:4px}.toolbar .text-button{font-size:11px;min-width:44px;min-height:44px;padding:8px}.toolbar .text-button span{display:none}
  button{touch-action:manipulation}
  main{min-height:0;padding:6px 0;overflow-y:auto}.footer,.steps{display:none}
  .title-layout,.story-layout,.investigation-layout,.ending-layout,.prepare-layout{
    display:grid;grid-template-columns:44% minmax(0,1fr);grid-template-rows:minmax(0,1fr);gap:0;height:100%;min-height:0;margin:0;max-width:none;
  }
  .title-layout>.scene-art,.story-layout>.scene-art,.investigation-layout>.scene-art,.ending-layout>.scene-art,.prepare-illustration .scene-art{min-height:0;max-height:none;height:100%;width:100%}
  .paper-panel,.scene-layout .paper-panel,.ending-layout .paper-panel,.title-copy,.preparation-panel{min-height:0;min-width:0;overflow-y:auto;overscroll-behavior:contain;padding:18px 22px}
  h1{font-size:34px;letter-spacing:5px;margin:10px 0}.title-copy .lead{font-size:18px}.title-copy .primary{max-width:none}.small-rule{margin:16px 0}
  h2,.scene-layout .paper-panel h2,.ending-layout h2{font-size:24px;margin:10px 0 16px}
  p,.paper-panel p,.scene-layout .paper-panel p{font-size:14px;line-height:1.8;margin-bottom:16px}
  .scene-caption{left:18px;bottom:18px;font-size:12px}.scene-index{left:18px;top:16px}
  .prepare-intro{left:18px;right:18px;bottom:28px}.prepare-intro h2{font-size:25px}.prepare-intro p{font-size:13px}
  .activity{min-height:150px;padding:14px}.activity-icon{display:none}.activity-name{font-size:15px;max-width:none}.activity-benefit{font-size:10px;line-height:1.6}.activity-description{font-size:12px}
  .activity-grid .activity:last-child:nth-child(odd){min-height:110px}.bedtime-preview{min-height:0}.resource-line{margin-bottom:14px}
  .incident-stage{justify-content:flex-start;overflow-y:auto;overscroll-behavior:contain;min-height:0}.incident-stage canvas{flex-shrink:0}
  .stage-date{top:8px;left:8px;padding:4px 7px;font-size:10px}.stage-caption{padding:8px 12px;min-height:0;font-size:12px;line-height:1.6}
  .scene-hotspots{padding:0 10px 10px;gap:6px;flex-wrap:nowrap}.scene-hotspot,.scene-marker{width:auto;flex:1;padding:8px;min-height:44px;font-size:12px;line-height:1.5}
  .combat-main{overflow:hidden}
  .dream-layout{height:100%;grid-template-columns:minmax(0,1fr) clamp(158px,23vw,190px);grid-template-rows:36px minmax(0,1fr) 52px;gap:6px 12px}
  .dream-play{display:contents}
  .arena-wrap{grid-column:1;grid-row:1/-1;width:min(100%,calc(var(--play-height)*16/9));align-self:center;justify-self:center}
  .time-track{grid-column:1;grid-row:3;align-self:end;margin:0;z-index:1;pointer-events:none}
  .touch-guide{display:block;position:absolute;bottom:8px;left:8px;background:#24363cda;color:#f2e7d0;border:1px solid #dacfa755;padding:7px 10px;line-height:1.4;font-size:11px;pointer-events:none}
  .dream-topline{grid-column:2;grid-row:1;margin:0;gap:6px}.dream-topline .eyebrow{display:none}.dream-topline h2{font-size:15px;letter-spacing:0;margin:0}.dream-clock span{font-size:25px}.dream-clock small{display:none}
  .dream-sidebar{grid-column:2;grid-row:2;display:block;min-height:0;overflow-y:auto;overscroll-behavior:contain;border:0;padding:0 2px 0 0}
  .dream-sidebar>.eyebrow{font-size:10px;letter-spacing:0}.life-block{display:block;margin:4px 0 8px}.life-block>span{display:none}.life-block strong{font-size:14px;line-height:1.5}
  .anchor-status{gap:8px;margin:7px 0}.anchor-symbol{font-size:21px}.anchor-status strong{font-size:12px}.anchor-status small{font-size:10px;margin-top:2px;line-height:1.5}
  .combat-hint{font-size:11px;line-height:1.6;padding-top:6px;margin:8px 0 0}.return-note,.dream-sidebar>.text-button{display:none}
  .combat-controls{grid-column:2;grid-row:3;display:block;margin:0}.combat-controls>span,.active-button kbd{display:none}.active-button{width:100%;min-width:0;min-height:52px;padding:8px 12px;justify-content:center;font-size:13px;gap:8px}
  dialog{max-height:calc(100svh - 20px);max-height:calc(100dvh - 20px - env(safe-area-inset-top) - env(safe-area-inset-bottom));max-width:min(760px,94vw);padding:22px 26px;overflow-y:auto;overscroll-behavior:contain;scroll-padding-block:18px}
  dialog h2{font-size:24px;margin:8px 30px 12px 0}dialog p{font-size:14px;line-height:1.8}.instruction-card{margin:14px 0;padding:14px}.memory-strip{height:90px;margin:12px 0}
  .journal-grid,.upgrade-grid{grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.upgrade-card{min-height:165px;padding:18px}.upgrade-card h3{font-size:20px;margin:10px 0}.upgrade-card p{font-size:13px;margin-bottom:10px}.upgrade-card>span{font-size:23px}
}

@media(orientation:landscape) and (max-width:1100px) and (max-height:360px){
  .dream-sidebar>.eyebrow,.combat-hint{display:none}
  .life-block{margin:0 0 4px}.life-block strong{font-size:13px;line-height:1.4}
  .anchor-status{margin:5px 0}.anchor-status>div{font-size:11px;line-height:1.2}.anchor-status strong{font-size:11px}.anchor-status small{font-size:10px;margin-top:1px;line-height:1.2}
}
