:root{--bg:#08090a;--panel:#121315;--line:#26282a;--text:#e8e2cf;--muted:#8f938a;--accent:#d9a441;--danger:#c0392b}#ui{touch-action:pan-y;color:var(--text);background:radial-gradient(ellipse at 50% 0%, #121315 0%, var(--bg) 70%);font:15px/1.45 system-ui,-apple-system,Segoe UI,sans-serif;position:fixed;inset:0;overflow-y:auto}#ui .screen{max-width:920px;margin:0 auto;padding:20px 16px 48px}#ui h1{letter-spacing:.02em;margin:8px 0 4px;font-size:26px}#ui h1.danger{color:var(--danger)}#ui .title-row{justify-content:space-between;align-items:center;gap:12px;display:flex}#ui .title-row button.to-menu{min-height:36px;margin:0;padding:6px 12px;font-size:14px}#ui .rule{background:var(--accent);width:72px;height:2px;margin:6px 0 14px}#ui h2{color:var(--accent);text-transform:uppercase;letter-spacing:.08em;margin:22px 0 8px;font-size:16px}#ui .muted{color:var(--muted)}#ui .notice{border:1px solid var(--accent);background:#241a0a;margin:0 0 12px;padding:10px 12px}#ui .tips{background:#111511;border-left:3px solid #5d6b4f;margin:12px 0;padding:8px 12px}#ui .tips p{margin:4px 0}#ui button{font:inherit;color:var(--text);cursor:pointer;background:#16171a;border:1px solid #4a3d22;border-radius:6px;min-height:44px;margin:4px 6px 4px 0;padding:10px 14px}#ui button:hover:not(:disabled){border-color:var(--accent)}#ui button:disabled{color:#5a5d57;cursor:default;background:#111214;border-color:#222}#ui button.primary{background:var(--accent);color:#0b0c0b;border-color:var(--accent);font-weight:700}#ui button.primary:disabled{color:#6b6450;background:#3a3220;border-color:#3a3220}#ui .card{background:var(--panel);border-left:4px solid var(--line);margin:8px 0;padding:14px}#ui .perk-pick{width:min(100%,680px);margin:0 auto}#ui .perk-star{aspect-ratio:1;width:min(100%,680px);margin:8px auto;position:relative}#ui .perk-links{width:100%;height:100%;position:absolute;inset:0}#ui .perk-links line{stroke:#3a3a36;stroke-width:3px}#ui .perk-links line.next{stroke:#7a6331}#ui .perk-links line.on{stroke:var(--accent);stroke-width:4px}#ui .perk-hero,#ui .perk-node{aspect-ratio:1;border-radius:50%;margin:0;padding:0;position:absolute;transform:translate(-50%,-50%)}#ui .perk-hero{border:3px solid var(--accent);background:#1a1a18;overflow:hidden}#ui .perk-hero img{object-fit:cover;object-position:top;width:100%;height:130%;display:block}#ui .perk-node{cursor:pointer;background:#141513;border:3px solid #3a3a36;min-height:0}#ui .perk-node img{object-fit:cover;border-radius:50%;width:100%;height:100%;position:absolute;inset:0}#ui .perk-letter{color:var(--muted);font:700 18px Georgia,serif}#ui .perk-node:before{content:"";border-radius:50%;position:absolute;inset:-6px}#ui .perk-node.perk-can{border-color:var(--accent);animation:1.6s ease-in-out infinite perk-pulse}@keyframes perk-pulse{0%,to{box-shadow:0 0 4px #d9a44159}50%{box-shadow:0 0 16px 3px #d9a441cc}}#ui .perk-node.perk-taken{border:5px solid var(--accent);background:#3a2c12;box-shadow:inset 0 0 0 2px #0b0c0b}#ui .perk-taken .perk-name{color:var(--accent);font-weight:700}#ui .perk-mark{aspect-ratio:1;background:var(--accent);color:#0b0c0b;pointer-events:none;border:2px solid #0b0c0b;border-radius:50%;justify-content:center;align-items:center;width:38%;font:900 13px/1 system-ui,sans-serif;display:flex;position:absolute;bottom:-6%;right:-6%}#ui .perk-badge{color:#d8d2bf;white-space:nowrap;pointer-events:none;background:#26241f;border:1px solid #5a5446;border-radius:8px;padding:0 5px;font:700 10px/1.5 system-ui,sans-serif;position:absolute;bottom:-4%;left:50%;transform:translate(-50%)}@media (prefers-reduced-motion:reduce){#ui .perk-node.perk-can{animation:none;box-shadow:0 0 10px #d9a4418c}}#ui .perk-node.perk-locked img,#ui .perk-node.perk-soon img{filter:grayscale()brightness(.45)}#ui .perk-node.perk-soon{border-style:dashed}#ui .perk-node.sel{outline-offset:3px;outline:2px solid #fff}#ui .perk-name{width:96px;color:var(--text);text-align:center;pointer-events:none;text-shadow:0 1px 3px #000;font-size:11px;line-height:1.15;position:absolute;top:104%;left:50%;transform:translate(-50%)}#ui .perk-locked .perk-name,#ui .perk-soon .perk-name{color:var(--muted)}#ui .perk-branch-name{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;pointer-events:none;font:700 13px system-ui,sans-serif;position:absolute;transform:translate(-50%,-50%)}#ui .perk-tip{border:1px solid var(--accent);text-align:left;width:200px;color:var(--text);z-index:5;pointer-events:none;background:#08090af2;border-radius:6px;padding:8px 10px;font-size:12px;display:none;position:absolute;bottom:112%;left:50%;transform:translate(-50%)}#ui .perk-tip b{margin-bottom:4px;display:block}#ui .perk-node:hover{z-index:20}#ui .perk-effect{white-space:pre-line}#ui .perk-tip{width:240px}#ui .perk-warning{color:#e0a060;font-weight:600}#ui .perk-confirm{color:#e0a060}#ui .tip-down .perk-tip{top:150%;bottom:auto}#ui .tip-l .perk-tip{left:0;transform:none}#ui .tip-r .perk-tip{left:auto;right:0;transform:none}#ui .perk-ok{color:var(--accent);font-weight:700}#ui .perk-panel{max-width:680px;margin:8px auto}#ui .perk-hint{text-align:center}@media (hover:hover){#ui .perk-node:hover .perk-tip{display:block}}@media (width<=520px){#ui .perk-name{width:70px;font-size:9px}#ui .perk-letter{font-size:13px}#ui .perk-branch-name{font-size:10px}#ui .perk-badge{padding:0 2px;font-size:7px;bottom:-8%}#ui .perk-mark{border-width:1px;font-size:8px}#ui .perk-node.perk-taken{border-width:4px}}#ui .card .gone{opacity:.55;text-decoration:line-through}#ui .card.playable{border-left-color:var(--accent)}#ui .map{border:1px solid var(--line);background:0 0;border:0;margin:10px 0 6px;padding:0}#ui .paper-map{cursor:pointer;margin:0 auto;display:block;box-shadow:0 6px 24px #0009}#ui .map-legend{color:#b8a77e;justify-content:center;gap:18px;margin:8px 0 4px;font:italic 13px Georgia,serif;display:flex}#ui .map-legend .leg-drop{color:#c0392b}#ui .gauges{gap:18px;margin:6px 0 4px;display:flex}#ui .gauge{width:150px}#ui .gauge svg{width:100%;height:auto;display:block}#ui .row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}#ui select,#ui input{font:inherit;min-height:40px;color:var(--text);border:1px solid var(--line);background:#121315;padding:8px}#ui input{width:64px}#ui .progress{background:#222326;border-radius:4px;height:8px;margin:6px 0;overflow:hidden}#ui .progress>div{background:var(--accent);width:0;height:100%;animation:1.5s linear forwards fill}@keyframes fill{to{width:100%}}#ui .flash{color:var(--accent);margin:6px 0;font-weight:600}#loot{z-index:10;color:#efe8cf;touch-action:manipulation;overscroll-behavior:contain;box-sizing:border-box;background:#0b0d0feb;border:1px solid #c9a227;width:min(340px,100vw - 32px);max-height:calc(100dvh - 24px);padding:10px 12px;font:14px/1.4 system-ui,-apple-system,Segoe UI,sans-serif;position:fixed;top:12px;left:50%;overflow-y:auto;transform:translate(-50%)}#loot .loot-title{margin-bottom:6px;font-weight:700}#exit-ask{z-index:20;color:#efe8cf;box-sizing:border-box;text-align:center;touch-action:manipulation;background:#0b0d0ff2;border:1px solid #c9a227;border-radius:8px;width:min(340px,100vw - 32px);padding:16px;font:14px/1.4 system-ui,-apple-system,Segoe UI,sans-serif;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}#exit-ask .exit-title{font-size:20px;font-weight:700}#exit-ask .exit-note{color:#a9a38f;margin:6px 0 14px}#exit-ask .exit-row{gap:10px;display:flex}#exit-ask button{font:inherit;color:#efe8cf;cursor:pointer;background:#16171a;border:1px solid #4a3d22;border-radius:6px;flex:1;min-height:44px}#exit-ask button.primary{color:#0b0c0b;background:#c9a227;border-color:#c9a227;font-weight:700}#loot button{font:inherit;text-align:left;color:#0b0d0f;cursor:pointer;background:#efe8cf;border:0;border-radius:6px;width:100%;min-height:40px;margin:4px 0;padding:8px 10px;display:block}#loot button:disabled{color:#7d857f;cursor:default;background:#3a403b}#loot button.primary{text-align:center;background:#c9a227;font-weight:700}#loot .loot-bp{color:#9aa39c;margin:6px 0}#ui .base-wrap{touch-action:pan-y;border:1px solid #2a2c28;margin:12px 0 0;overflow:hidden}#ui .base-canvas{cursor:pointer;display:block}#ui .base-hint{padding:6px 2px 4px;font-size:13px}#ui .room-panel{background:#15171a;border:1px solid #2a2c28;border-top:0;margin-bottom:8px;padding:10px 12px}#ui .room-panel h3{margin:0 0 4px;font-size:16px}#ui .pack{grid-template-columns:1fr 1fr;gap:18px;display:grid}@media (width<=620px){#ui .pack{grid-template-columns:1fr}}#loot.loot-two{width:min(560px,100vw - 16px)}#loot.loot-bag{width:auto;left:auto;right:12px;transform:none}#loot .loot-cols{justify-content:space-between;gap:12px;display:flex}#loot .loot-col{flex:none}#loot .loot-empty{color:#9aa39c;padding:8px 0}:root{--inv-cell:min(56px, 10.5vw)}.inv-grid{grid-auto-rows:var(--inv-cell);grid-auto-flow:dense;gap:4px;display:grid}.inv-tile{background:#121412;border:1px solid #3a3d38;border-radius:6px;justify-content:center;align-items:center;width:auto;min-height:0;margin:0;padding:0;display:flex;position:relative;overflow:hidden}#loot .inv-tile,#ui .inv-tile{color:#efe8cf;text-align:center;background:#121412;width:auto;min-height:0;margin:0;padding:0;display:flex}.inv-tile img{object-fit:cover;width:100%;height:100%;display:block}.inv-tile .inv-name{color:#d8d2bf;padding:2px;font-size:10px;line-height:1.1}.inv-tile .inv-badge{color:#fff;text-shadow:0 1px 2px #000,0 0 3px #000;font:700 11px system-ui,sans-serif;position:absolute;bottom:2px;right:3px}.inv-tile.empty{background:#0b0c0b;border-style:dashed;border-color:#262824}button.inv-tile{cursor:pointer}.inv-tile.drag{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;cursor:grab}.inv-tile.lifted{opacity:.3}.inv-tip{z-index:1100;pointer-events:none;white-space:nowrap;color:#0b0d0f;background:#efe8cf;border-radius:4px;padding:3px 8px;font:600 13px/1.3 system-ui,-apple-system,Segoe UI,sans-serif;display:none;position:fixed;box-shadow:0 2px 8px #00000080}.inv-ghost{z-index:1000;pointer-events:none;opacity:.92;border-color:#c9a227;justify-content:center;align-items:center;display:flex;position:fixed;box-shadow:0 6px 18px #0009}button.inv-tile:hover:not(:disabled){border-color:#c9a227}#loot .inv-tile:disabled,#ui .inv-tile:disabled,.inv-tile.off{opacity:.4;cursor:default}#ui button .why{color:#a58b5a;margin-top:2px;font-size:12px;display:block}#ui button.recipe{text-align:left;flex-direction:column;align-items:flex-start;gap:4px;padding:8px 10px;display:inline-flex}#ui .rc-row{flex-wrap:wrap;align-items:center;gap:4px;display:flex}#ui .rc-icon{background:#121412;border:1px solid #3a3d38;border-radius:5px;width:38px;height:38px;display:inline-block;position:relative;overflow:hidden}#ui .rc-icon img{object-fit:cover;width:100%;height:100%;display:block}#ui .rc-icon b{color:#fff;text-shadow:0 1px 2px #000,0 0 3px #000;font:700 11px system-ui,sans-serif;position:absolute;bottom:0;right:2px}#ui .rc-icon.lack{border-color:#b4483a}#ui .rc-icon.lack img{opacity:.55}#ui .rc-icon.find{border-style:dashed;border-color:#c9a227}#ui .rc-icon.find.lack{border-color:#b4483a}#ui .rc-arrow,#ui .rc-up{color:var(--accent);padding:0 2px;font-weight:700}#ui .rc-name{font-size:13px}#ui .finds{align-items:center;gap:6px;margin:-6px 0 12px;display:flex}#ui button.recipe:disabled .rc-icon:not(.lack) img{opacity:.75}#ui .langs{gap:6px;margin:0 0 12px;display:flex}#ui .langs .lang{min-height:36px;padding:6px 12px}#ui .langs .lang.on{border-color:var(--accent);color:var(--accent)}#ui .journal-entry h3{margin:0 0 6px}#ui .journal-entry .diary-line{margin:4px 0;font-style:italic;line-height:1.5}.coach{z-index:40;pointer-events:none;position:fixed;inset:0}.coach[hidden],.coach [hidden]{display:none!important}.coach-shield{pointer-events:auto;background:0 0;position:fixed}.coach-hole{border:2px solid var(--accent);pointer-events:none;border-radius:8px;animation:1.4s ease-in-out infinite coach-pulse;position:fixed;box-shadow:0 0 0 200vmax #000000b8}@keyframes coach-pulse{0%,to{border-color:#d9a4418c}50%{border-color:#ffd27a}}@media (prefers-reduced-motion:reduce){.coach-hole{animation:none}}.coach-box{box-sizing:border-box;pointer-events:auto;border:2px solid var(--accent);width:max-content;max-width:min(440px,100vw - 24px);color:var(--text);background:#15171a;border-radius:8px;padding:14px 16px 10px;font:600 18px/1.4 system-ui,-apple-system,Segoe UI,sans-serif;position:fixed;box-shadow:0 8px 28px #000000b3}.coach-box p{margin:0 0 10px}.coach-row{align-items:center;gap:12px;display:flex}.coach-box button{font:inherit;cursor:pointer}.coach-box button.primary{background:var(--accent);color:#0b0c0b;border:1px solid var(--accent);border-radius:6px;min-height:44px;padding:8px 18px;font-weight:700}.coach-skip{color:var(--muted);background:0 0;border:0;margin-left:auto;padding:6px 0;text-decoration:underline;font-size:13px!important;font-weight:400!important}#ui .scene{z-index:5;cursor:pointer;touch-action:manipulation;background:#000;position:fixed;inset:0;overflow:hidden}#ui .scene .bg{background:linear-gradient(#23262a 0%,#15171a 55%,#0c0d0e 100%);position:absolute;inset:-4%}#ui .scene .bg img{object-fit:cover;width:100%;height:100%;display:block}#ui .scene .bg.ph-intro img{object-position:28% 50%}#ui .scene .bg.ph-kitchen{background:radial-gradient(at 70% 30%,#ffc88240,#0000 45%),linear-gradient(#23262a 0%,#15171a 55%,#0c0d0e 100%)}#ui .scene .bg.ph-yard_night{background:radial-gradient(at 30% 20%,#ffdc9638,#0000 30%),linear-gradient(#0d1016 0%,#12151a 60%,#1a1c1d 100%)}#ui .scene .bg.ph-fire{background:radial-gradient(at 50% 75%,#ff782859,#0000 40%),linear-gradient(#0a0b0d 0%,#14100c 70%,#1e140c 100%)}#ui .scene .bg.ph-road{background:radial-gradient(at 50% 30%,#c8cdc32e,#0000 60%),linear-gradient(#2b2e2c 0%,#1f2220 50%,#191a16 100%)}#ui .scene .bg.ph-gate{background:linear-gradient(90deg,#0000 0 18%,#2a2c2e 18% 20%,#0000 20% 80%,#2a2c2e 80% 82%,#0000 82%),linear-gradient(#101317 0%,#16191c 62%,#0c0d0e 100%)}#ui .scene .bg.ph-phone{background:radial-gradient(at 50% 55%,#8cb4ff38,#0000 28%),linear-gradient(#060708 0%,#0b0c0e 100%)}#ui .scene .who{aspect-ratio:.55;height:62%;transition:opacity .25s,filter .25s;position:absolute;bottom:24%}#ui .scene .who.left{left:6%}#ui .scene .who.right{right:6%}#ui .scene .who.dim{opacity:.45;filter:brightness(.6)}#ui .scene .who.img{aspect-ratio:auto;max-width:46vw;height:74%;bottom:0;-webkit-mask-image:linear-gradient(0deg,#0000 0,#000 16%);mask-image:linear-gradient(0deg,#0000 0,#000 16%)}#ui .scene .who.img img{object-fit:contain;object-position:bottom;width:auto;max-width:100%;height:100%}#ui .scene .who img,#ui .scene .who svg{object-fit:contain;object-position:bottom;width:100%;height:100%;display:block}#ui .scene .who svg{filter:brightness(1.6)drop-shadow(0 0 2px #e1d7be8c)}#ui .scene .box{box-sizing:border-box;border-top:2px solid var(--accent);background:#08090adb;width:min(900px,100% - 32px);min-height:112px;padding:10px 16px 26px;position:absolute;bottom:3%;left:50%;transform:translate(-50%)}#ui .scene .name{color:var(--accent);letter-spacing:.05em;text-transform:uppercase;min-height:18px;font-size:13px;font-weight:700}#ui .scene .line{margin-top:4px;font-size:17px;line-height:1.5}#ui .scene .line.thought{color:#cfc8b4;font-style:italic}#ui .scene .choices{flex-direction:column;gap:6px;margin-top:10px;display:flex}#ui .scene .choices button{text-align:left;border-radius:6px;min-height:44px;margin:0}#ui .scene .next{color:var(--accent);font-size:13px;animation:1.4s ease-in-out infinite scene-next;position:absolute;bottom:6px;right:12px}#ui .scene .next.sub{text-align:center;text-shadow:0 1px 4px #000;font-size:14px;bottom:14%;left:0;right:0}@keyframes scene-next{0%,to{opacity:.6}50%{opacity:1}}#ui .scene .skip{top:calc(10px + env(safe-area-inset-top,0px));color:var(--muted);z-index:2;background:#00000073;border:1px solid #333;border-radius:4px;margin:0;padding:6px 12px;font-size:13px;position:absolute;right:12px}#ui .scene .subtitle{text-align:center;color:#efe6cc;text-shadow:0 2px 8px #000;font-size:22px;font-style:italic;position:absolute;top:42%;left:10%;right:10%}#ui .scene .grain{pointer-events:none;opacity:.18;mix-blend-mode:overlay;width:100%;height:100%;display:none;position:absolute;inset:0}#ui .scene.dream .bg,#ui .scene.dream .who{filter:grayscale(.7)sepia(.25)contrast(.9)brightness(.85)}#ui .scene.dream .who.dim{filter:grayscale(.7)sepia(.25)contrast(.9)brightness(.5)}#ui .scene.dream .bg{animation:14s ease-in-out infinite alternate scene-zoom}@keyframes scene-zoom{0%{transform:scale(1)}to{transform:scale(1.08)translate(-1%,1%)}}#ui .scene.dream:after{content:"";pointer-events:none;background:radial-gradient(#0000 45%,#000000d9 100%);position:absolute;inset:0}#ui .scene.dream .grain{display:block}#ui .scene.dream .box{background:#08090a9e;border-top-color:#8f938a}#ui .scene.dream .line{color:#d9d2bd;font-style:italic}@media (prefers-reduced-motion:reduce){#ui .scene.dream .bg,#ui .scene .next{animation:none}}#ui.talking{background:0 0}#ui .scene.talk{background:#00000061}#ui .scene.talk .bg{display:none}#ui .scene.talk .box{border:2px solid var(--accent);background:#0a0b0ceb;border-radius:10px;min-height:30vh;padding:22px 24px 30px;bottom:2%}#ui .scene.talk .name{border:2px solid var(--accent);background:#16171a;border-radius:6px;min-height:0;padding:3px 14px;font-size:14px;position:absolute;top:-17px;left:20px}#ui .scene.talk .name:empty{display:none}#ui .scene.talk .line{font-size:19px}#ui .scene.talk .who{height:46%;bottom:calc(2% + 30vh)}#ui .scene.talk .who.img{height:52%;bottom:calc(2% + 30vh);-webkit-mask-image:none;mask-image:none}#ui .scene.talk .choices button{font-size:17px}@media (width<=640px){#ui .scene .who{height:46%;bottom:34%}#ui .scene .who.img{max-width:80vw;height:52%;bottom:10%}#ui .scene .who.dim{visibility:hidden}#ui .scene .who.left{left:2%}#ui .scene .who.right{right:2%}#ui .scene .line{font-size:16px}#ui .scene .subtitle{font-size:19px;left:16px;right:16px}}
