:root{--paper:#d6c4a2;--ink:#2d2119;--cream:#eadfc8;--red:#6b3129;--brown:#4e3526}
*{box-sizing:border-box}
html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#19140f;color:var(--cream)}
body{font-family:Georgia,'Times New Roman',serif}
#world{position:fixed;inset:0;display:block;width:100%;height:100%;touch-action:none;background:#19140f}
#veil{position:fixed;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;background:#d2bf9d;color:#2b211a;padding:26px}
#veil .paper{width:min(610px,100%);padding:10px 2px 18px;position:relative}
#veil .paper:before{content:"";position:absolute;left:0;right:0;top:-7px;border-top:1px solid rgba(65,45,30,.35)}
#veil h1{margin:0 0 32px;font-weight:400;font-size:clamp(38px,7vw,72px);letter-spacing:-.045em;line-height:.95}
#veil p{max-width:34em;line-height:1.72;margin:0 0 11px;font-size:17px}
#veil small{display:block;margin-top:26px;max-width:43em;line-height:1.55;color:#675844;font-size:12px}
button{font:inherit}
#enter{margin-top:18px;border:0;background:transparent;color:#5b3028;padding:7px 0;cursor:pointer;font-style:italic;font-size:18px;border-bottom:1px solid rgba(91,48,40,.58)}
#enter:hover{color:#221813}
#hud{position:fixed;inset:0;z-index:10;pointer-events:none}
#crosshair{position:absolute;left:50%;top:50%;width:4px;height:4px;margin:-2px 0 0 -2px;border-radius:50%;background:rgba(240,221,188,.55)}
#roomname{position:absolute;left:18px;top:16px;color:rgba(239,220,187,.62);font-size:13px;font-style:italic;text-shadow:0 1px 3px rgba(0,0,0,.8)}
#prompt{position:absolute;left:50%;bottom:46px;transform:translateX(-50%);max-width:min(520px,82vw);padding:4px 0;color:rgba(241,225,198,.9);font:13px/1.45 'Courier New',monospace;text-align:center;opacity:0;transition:opacity .12s;text-shadow:0 2px 4px #000}
#prompt.show{opacity:1}
#hum{position:absolute;right:16px;top:13px;pointer-events:auto;border:0;background:transparent;color:rgba(239,220,187,.55);padding:6px 0;cursor:pointer;font:11px/1 'Courier New',monospace;border-bottom:1px dotted rgba(239,220,187,.25)}
#fallback{position:absolute;right:16px;bottom:13px;pointer-events:auto;color:rgba(239,220,187,.42);font:11px/1.25 'Courier New',monospace;text-decoration:none;border-bottom:1px dotted currentColor;padding-bottom:2px}
#toast{position:absolute;left:18px;bottom:15px;max-width:min(460px,72vw);font-size:13px;font-style:italic;line-height:1.45;color:rgba(239,220,187,.72);opacity:0;transition:opacity .35s;text-shadow:0 1px 3px #000}
#toast.show{opacity:1}
#mobile{display:none;position:fixed;inset:0;z-index:15;pointer-events:none}
#stick{position:absolute;left:16px;bottom:18px;width:112px;height:112px;border:1px solid rgba(235,216,185,.15);border-radius:50%;pointer-events:auto;touch-action:none;background:rgba(25,18,13,.055)}
#nub{position:absolute;left:39px;top:39px;width:32px;height:32px;border-radius:50%;background:rgba(235,216,185,.18);border:1px solid rgba(235,216,185,.16)}
#touch{position:absolute;right:17px;bottom:23px;min-width:74px;height:46px;border:0;border-bottom:1px solid rgba(235,216,185,.28);background:rgba(25,18,13,.12);color:rgba(245,228,199,.82);font:12px Georgia,serif;font-style:italic;pointer-events:auto;touch-action:manipulation;display:none}
#touch.show{display:block}
#lookHint{position:absolute;right:17px;bottom:82px;font:10px 'Courier New',monospace;color:rgba(235,216,185,.32)}
#error{display:none;position:fixed;inset:0;z-index:30;background:#d2bf9d;color:#2b211a;padding:40px;overflow:auto}
#error a{color:#612f28}
@media (pointer:coarse),(max-width:800px){#mobile{display:block}#crosshair{display:none}#prompt{bottom:80px}#fallback{bottom:auto;top:48px}#roomname{top:14px;left:14px}}
@media (prefers-reduced-motion:reduce){#prompt,#toast{transition:none}}

#enter:disabled{opacity:.55;cursor:wait}
#veil.opening .paper:after{content:'the wiring is waking';display:block;margin-top:11px;color:#766651;font:11px/1.3 'Courier New',monospace}
.startup-note{max-width:42em;line-height:1.55}
