﻿
:root{font-family:'Courier New',monospace;color:#382334;background:#382334;font-synthesis:none}*{box-sizing:border-box}body{margin:0;overflow:hidden;touch-action:none}button{font:900 14px 'Courier New',monospace;color:#382334;background:#ffdf77;border:3px solid #382334;padding:12px 18px;box-shadow:3px 3px 0 #382334;cursor:pointer}button:hover,button:focus-visible{background:#fff6ce;outline:3px solid #e97575}button:active{transform:translate(2px,2px);box-shadow:none}#world{display:block;width:100vw;height:100dvh;image-rendering:pixelated}.grain{position:fixed;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,#39253708 0px,#39253708 1px,transparent 1px,transparent 3px);box-shadow:inset 0 0 110px #39253755}#hud{position:fixed;top:max(14px,env(safe-area-inset-top));left:18px;right:18px;pointer-events:none;max-width:760px}.brand{display:inline-block;background:#382334;color:#ffe29a;padding:7px 12px;font-weight:900;letter-spacing:2px}.brand span{color:#f5a2a4}.toprow{display:flex;gap:12px;align-items:center;margin-top:9px}.toprow button{pointer-events:auto;font-size:12px;padding:8px}#hearts{color:#b33652;background:#fff2bb;padding:6px 12px;font-size:24px;white-space:nowrap}#chapter{background:#fff2bb;padding:8px;font-size:12px;font-weight:bold}#objective{background:#fff2bb;border-left:7px solid #b33652;padding:10px 12px;font-weight:bold;line-height:1.4;margin-top:10px;max-width:590px}#bag{display:inline-block;background:#382334;color:#ffe29a;font-size:12px;padding:5px 9px}#prompt{position:fixed;bottom:90px;left:50%;transform:translateX(-50%);background:#ffdf77;border:3px solid #382334;padding:10px 14px;font-weight:bold;max-width:80vw;text-align:center}#prompt:empty{display:none}#toast{position:fixed;top:44%;left:50%;transform:translateX(-50%);color:#fff2bb;background:#382334;padding:8px;pointer-events:none}#toast:empty{display:none}#direction{position:fixed;left:50%;top:50%;font-size:35px;color:#ffe057;text-shadow:2px 2px #382334;pointer-events:none}#controls{position:fixed;bottom:max(25px,env(safe-area-inset-bottom));left:25px;right:25px;display:flex;align-items:end;justify-content:space-between;pointer-events:none}#stick{width:112px;height:112px;border:3px solid #38233488;border-radius:50%;background:#fff2bb66;position:relative;pointer-events:auto;touch-action:none}#stick span{position:absolute;bottom:8px;left:32px;font-size:12px;font-weight:bold}#knob{position:absolute;width:42px;height:42px;border:3px solid #382334;border-radius:50%;background:#ffdf77;left:32px;top:32px;pointer-events:none}#action{pointer-events:auto;min-height:64px;min-width:122px}#desktopHint{position:fixed;bottom:17px;width:100%;text-align:center;color:#fff2bb;font-size:12px;pointer-events:none}#overlay{position:fixed;inset:0;display:grid;place-items:center;background:#3823347a;padding:20px;overflow:auto}#overlay[hidden]{display:none}#card{background:#fff0b8;border:5px solid #382334;box-shadow:10px 10px 0 #382334;max-width:600px;width:100%;padding:30px;transform:rotate(-.6deg);max-height:90dvh;overflow:auto}#eyebrow{font-weight:bold;letter-spacing:2px;color:#a53853}h1{font-size:clamp(28px,6vw,48px);line-height:.98;margin:20px 0;letter-spacing:-2px}h1 em{font-style:normal;color:#b33652}#body{font-size:17px;line-height:1.55;white-space:pre-line}#buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.dialog #card{align-self:end;margin-bottom:24px}.dialog h1{font-size:28px}.dialog #body{min-height:70px}body.hit #world{filter:sepia(.6) saturate(2)}@media(pointer:fine){#stick{opacity:.45}}@media(max-width:600px){#hud{left:10px;right:10px}.brand{font-size:12px}.toprow{gap:6px}#chapter{font-size:10px}#objective{font-size:12px;padding:8px}#bag{font-size:10px}.toprow button{font-size:10px;padding:7px}#hearts{font-size:20px}#card{padding:22px}#body{font-size:15px}#desktopHint{display:none}#controls{left:16px;right:16px}#prompt{bottom:153px;font-size:12px;width:max-content}#direction{font-size:29px}.dialog #card{margin-bottom:135px}.dialog h1{margin:12px 0}}@media(max-height:520px){#card{padding:15px}h1{font-size:27px;margin:8px 0}#body{font-size:14px;line-height:1.3}#buttons{margin-top:10px}.dialog #card{margin-bottom:0}#objective{max-width:440px}#stick{width:90px;height:90px}#knob{left:21px;top:21px}}


#portrait{float:right;width:150px;height:180px;object-fit:contain;object-position:center bottom;margin:-12px -12px 8px 12px;filter:drop-shadow(4px 4px 0 #b78c86)}#portrait[hidden]{display:none}#buttons{clear:both}@media(max-width:600px){#portrait{width:105px;height:135px;margin:-5px -5px 5px 8px}}

#toast{top:30%;max-width:72vw;font-size:12px;text-align:center}.toprow button{min-height:44px;min-width:44px}
