:root{--ink:#241c1a;--paper:#e6c486;--cream:#f1dfaa;--rust:#8d5948;--night:#211b1a;--line:#4b352e}*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden;background:#0f0d0c;color:var(--cream);font-family:"Noto Serif SC","Songti SC","STSong",serif;user-select:none}button{font:inherit}#game{position:relative;width:100vw;height:100vh;overflow:hidden;background:#8a5d4d;touch-action:none}#world{position:absolute;inset:0;width:100%;height:100%;cursor:crosshair}.hud{position:absolute;z-index:5;left:0;right:0;top:0;height:9.2vh;min-height:62px;display:flex;align-items:center;gap:2.2vw;padding:0 4.3vw;background:linear-gradient(180deg,#211c1c 0,#27201e 78%,rgba(39,32,30,.94));box-shadow:0 2px 0 rgba(229,195,137,.15);font-size:clamp(18px,2.1vw,37px);text-shadow:0 2px 2px #000}.clock{display:flex;align-items:center;white-space:nowrap;font-size:1.22em}.clock i{height:1.15em;width:2px;background:#cbbd8f;margin:0 .55em}.sun-mark{margin-left:.45em;font-size:.7em;color:#eee0a9;filter:drop-shadow(0 0 6px #f4d481)}.meter-group{display:flex;align-items:center;gap:.8vw;white-space:nowrap;margin-left:auto}.meter{width:10vw;min-width:110px;height:.92em;border:2px solid #493629;background:#ad7651;box-shadow:inset 0 0 0 2px #c49c65}.meter b{display:block;height:100%;width:86.5%;background:linear-gradient(90deg,#f0d29a,#d7ad6c);transition:width .25s}.resource{white-space:nowrap}.info strong.low{color:#9c7c70}.toast{position:absolute;z-index:4;left:50%;top:14%;transform:translate(-50%,-15px);min-width:min(48vw,720px);padding:.7em 2em;border:3px double #44332d;background:#efd099;color:#39261e;text-align:center;font-size:clamp(16px,1.8vw,31px);box-shadow:0 4px 0 rgba(32,22,19,.55);opacity:0;transition:.25s;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%,0)}.compass{position:absolute;z-index:3;right:4.8vw;top:13.5vh;width:105px;height:105px;color:#eadba3;font-family:Georgia,serif;text-shadow:0 2px 2px #432;font-size:18px}.compass b,.compass b:after{position:absolute;left:50%;top:50%;content:"";transform:translate(-50%,-50%) rotate(45deg);width:60px;height:60px;background:linear-gradient(135deg,#f6e4ac 0 45%,#ac7657 45% 55%,#e4c98d 55%);clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%)}.compass b:after{width:25px;height:25px;transform:translate(-50%,-50%) rotate(90deg);background:#f1dfaa}.compass span{position:absolute;z-index:2}.compass span:nth-child(1){left:48%;top:-2px}.compass span:nth-child(2){right:0;top:43%}.compass span:nth-child(3){left:48%;bottom:-2px}.compass span:nth-child(4){left:0;top:43%}.travel-readout{position:absolute;z-index:3;left:50%;bottom:2.1vh;transform:translateX(-50%);display:flex;align-items:baseline;gap:.65em;color:#e8d39c;text-shadow:0 2px 2px #000;font-size:clamp(14px,1.25vw,22px)}.travel-readout strong{font-size:1.28em}.travel-readout small{opacity:.65}.corner-actions{position:absolute;z-index:6;right:2.8vw;bottom:2.2vh;display:flex;gap:2vw}.paper-button{border:0;background:none;color:#ead9a3;font-size:clamp(17px,1.55vw,28px);cursor:pointer;text-shadow:0 2px 2px #000}.paper-button span{display:inline-grid;place-items:center;width:1.7em;height:1.7em;margin-right:.3em;border:3px solid #392920;border-radius:3px;background:#ecd79a;color:#2f221e;box-shadow:0 2px 0 #1e1513;font-weight:bold}.paper-button:hover{color:#fff0b8;transform:translateY(-2px)}.modal{position:absolute;z-index:20;inset:0;display:grid;place-items:center;background:rgba(22,17,16,.56);backdrop-filter:blur(2px)}.hidden{display:none!important}.event-card,.ledger-card{position:relative;width:min(670px,88vw);padding:30px 44px 36px;background:linear-gradient(135deg,#d7a66e,#efcd91 48%,#c98c61);color:#36251f;border:5px double #3b2b25;clip-path:polygon(5% 0,95% 0,100% 9%,100% 91%,95% 100%,5% 100%,0 91%,0 9%);box-shadow:0 18px 60px #130d0c}.event-card:after,.ledger-card:after{content:"";position:absolute;inset:11px;border:1px solid rgba(70,43,31,.55);pointer-events:none}.kicker{text-align:center;margin:0;text-transform:uppercase;letter-spacing:.32em;font-size:13px;opacity:.72}.event-card h2,.ledger-card h2{text-align:center;font-size:clamp(28px,4vw,52px);margin:4px 0 15px;font-weight:500}.event-card>p:not(.kicker),.ledger-card>p:not(.kicker){font-size:17px;line-height:1.75;text-align:center}.event-art{height:88px;margin:0 auto 12px;display:grid;place-items:center;font-size:65px;color:#4e3429}.event-art svg{width:120px;height:80px;fill:none;stroke:currentColor;stroke-width:3}.close{position:absolute;z-index:2;right:21px;top:16px;width:34px;height:34px;border:0;background:transparent;color:#3a2720;font-size:30px;cursor:pointer}.choices{display:grid;gap:10px;margin-top:22px}.choice{position:relative;z-index:2;width:100%;padding:12px 18px;border:2px solid #4b3328;background:#ead09b;color:#38251e;cursor:pointer;transition:.15s}.choice:hover{background:#f7e3b1;transform:translateY(-1px)}.choice small{display:block;opacity:.7;margin-top:3px}.choice.primary{background:#493127;color:#f2dca8}.choice.danger{margin-top:10px;background:#86594b;color:#f7dfb0}.ledger-card{background:#d8b276;clip-path:none}.inventory-grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.inventory-item{padding:14px;border:1px solid #674739;background:rgba(250,226,174,.45)}.inventory-item b{display:block;font-size:20px}.inventory-item span{font-size:13px;opacity:.74}.camp-stats{position:relative;z-index:2;display:flex;justify-content:space-around;margin:20px 0;padding:15px;border-block:1px solid #765448}.help{position:absolute;z-index:30;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;gap:12px;min-width:min(480px,82vw);padding:30px 40px;border:5px double #3b2922;background:#e4c084;color:#35241e;text-align:center;box-shadow:0 20px 90px #120d0c}.help b{font-size:38px;font-weight:500}.help span{font-size:17px}.help button{margin-top:12px;padding:12px;border:2px solid #3d2a23;background:#3e2b24;color:#efdaa5;cursor:pointer}.ending{text-align:center}@media(max-width:800px){.hud{padding:0 2vw;gap:1.4vw;font-size:16px}.meter{min-width:65px}.info{display:none}.compass{transform:scale(.72);transform-origin:top right}.corner-actions{bottom:4vh}.paper-button{font-size:14px}.travel-readout{left:4vw;transform:none;bottom:2vh}.travel-readout span,.travel-readout small{display:none}}
