@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=Manrope:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--ink:#09191f;--cream:#e7e4d5;--muted:#98abae;--gold:#c9aa72;--jade:#a1d6c5;--line:#c8c5a526}*{box-sizing:border-box}body{margin:0;overflow:hidden;background:#0c2028;color:var(--cream);font:13px 'Manrope',sans-serif}button{font:inherit;cursor:pointer;color:inherit;border:0}button:focus-visible{outline:2px solid #bcebdc;outline-offset:5px}button:disabled{opacity:.4;cursor:not-allowed}button:hover:not(:disabled){filter:brightness(1.15)}[hidden]{display:none!important}#world{position:fixed;inset:0;width:100%;height:100%;touch-action:none}.grain{pointer-events:none;position:fixed;inset:0;z-index:1;opacity:.1;background: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='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.4' filter='url(%23n)'/%3E%3C/svg%3E")}.brand{position:absolute;top:30px;left:38px;display:flex;gap:13px;align-items:center;font:500 21px 'Cormorant Garamond',serif;letter-spacing:5px;z-index:5}.brand small{display:block;font:8px 'Manrope',sans-serif;letter-spacing:2.6px;color:#a3b9b9;margin-top:6px}.seal{font:29px serif;color:var(--gold);border:1px solid #bb9f6c88;padding:4px 6px;letter-spacing:0}#topActions{position:absolute;right:35px;top:33px;display:flex;gap:12px;z-index:8}.quiet{background:#0d202990;border:1px solid var(--line);padding:9px 13px;font-size:11px}.screen{position:absolute;inset:0;background:linear-gradient(90deg,#06141be6 0%,#081b23a3 47%,#07171de8 100%);display:flex;align-items:center;justify-content:space-between;gap:5vw;padding:115px 6vw 55px;z-index:3}.townCopy{max-width:640px}.eyebrow{font-size:9px;letter-spacing:2.4px;font-weight:600;color:var(--gold);margin:0 0 15px}h1{font:400 clamp(45px,4.9vw,78px)/1.04 'Cormorant Garamond',Georgia,serif;letter-spacing:-1.8px;margin:0 0 24px}h2{font:400 29px/1.2 'Cormorant Garamond',Georgia,serif;margin:0 0 22px}.intro{color:#b4c4c6;font-size:12px;line-height:1.9;margin-bottom:32px}.chapter{display:flex;align-items:center;gap:18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;margin:0 0 24px;max-width:420px}.chapter>span:first-child{font:32px 'Cormorant Garamond',serif;color:var(--gold)}.chapter strong{font-weight:500}.chapter p{font-size:10px;color:var(--muted);margin:6px 0 0}.chapterMark{margin-left:auto;color:var(--gold);font-size:30px}.primary{display:flex;align-items:center;justify-content:space-between;gap:30px;background:#d1b77f;color:#15262c;padding:17px 23px;min-width:260px;font-weight:700;font-size:12px;letter-spacing:.4px}.primary span{font-size:22px;font-weight:400}.smallNote{color:#829b9f;font-size:10px;margin-top:16px}.loadout{width:350px;flex-shrink:0;padding:24px 26px;background:linear-gradient(135deg,#102931b5,#0a1c25d9);border:1px solid var(--line);box-shadow:0 25px 90px #0003}.loadout h2{font-size:26px;margin-bottom:19px}.weapon{width:100%;text-align:left;padding:11px 12px;border:1px solid transparent;border-bottom-color:var(--line);background:transparent;display:flex;gap:13px;align-items:center}.weapon.active{background:#9ccdb512;border:1px solid #9ccdb566}.weaponIcon{width:30px;color:var(--gold);font:28px Georgia,serif;text-align:center}.weapon strong{font-size:11px;display:block;font-weight:600}.weapon small{display:block;font-size:9px;color:var(--muted);margin-top:5px}.weapon .selected{margin-left:auto;color:var(--jade);font-size:15px}.forge{border-top:1px solid var(--line);margin-top:23px;padding-top:20px}.row{display:flex;justify-content:space-between;align-items:center}.forge .eyebrow{font-size:8px;margin:0}.forge .row>span:last-child{color:var(--gold);font-size:11px}.forge p{font-size:10px;line-height:1.7;color:var(--muted);margin:11px 0}.bank{display:flex;gap:16px;font-size:9px;margin:13px 0;color:#b4c9c6}.bank b{font-size:15px;color:var(--cream);font-weight:500}.secondary{display:flex;justify-content:space-between;gap:10px;width:100%;padding:12px 10px;background:#c8ac7420;border:1px solid #c8ac7440;font-size:10px}.secondary span{color:var(--gold)}.forge .feedback{color:var(--jade);margin:8px 0 0;min-height:14px}.townFooter{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:12px;margin-top:9px;font-size:9px;color:var(--muted)}.textButton{background:transparent;color:var(--gold);font-size:10px;padding:7px 0}.vitals,.weather,.haul{position:absolute;z-index:2;text-shadow:0 2px 8px #000}.vitals{left:38px;top:115px;width:230px;font-size:10px}.healthTrack{height:5px;background:#050f15a0;margin:9px 0;border:1px solid #b5c9bd30}.healthTrack i{display:block;height:100%;background:linear-gradient(90deg,#5d9e8a,#b4dbc0);transition:width .2s}.vitals small{font-size:8px;letter-spacing:1.5px;color:var(--gold)}.weather{top:35px;left:50%;transform:translateX(-50%);text-align:center}.weather .eyebrow{font-size:8px;margin-bottom:7px}.weather h2{font-size:27px;margin-bottom:8px}.weather p:last-child{font-size:9px;color:#adc2c7}.weatherSteps{display:flex;gap:4px;width:120px;margin:auto}.weatherSteps i{height:2px;background:#c0bda63d;flex:1}.weatherSteps i.active{background:var(--gold)}.haul{right:36px;top:115px;background:#0b2027b8;border:1px solid var(--line);width:210px;padding:17px}.haul .eyebrow{font-size:8px}.haul>div{display:flex;gap:25px;color:var(--gold)}.haul b{font:25px 'Cormorant Garamond',serif;color:var(--cream)}.haul small{display:block;font-size:9px;color:var(--muted);margin-top:3px}.haul p:last-child{font-size:8px;color:var(--muted);margin-bottom:0}.abilities{position:absolute;bottom:44px;left:50%;transform:translateX(-50%);display:flex;gap:6px;z-index:3}.abilities button{position:relative;background:linear-gradient(#17343ce8,#0a1f29ed);border:1px solid #c9aa724d;min-width:100px;padding:12px 10px 10px;text-align:center}.abilities button span{display:block;font:18px 'Cormorant Garamond',serif;margin:4px 0}.abilities small{font-size:8px;color:var(--jade)}kbd{font:9px 'Manrope',sans-serif;color:var(--gold);letter-spacing:.6px}.movementHint{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:9px;color:#9eb7bf;z-index:2}.movementHint span{padding:0 9px;color:var(--gold)}#locationLabel{position:absolute;bottom:36px;left:38px;font-size:9px;letter-spacing:2px;color:#b7c8c9}#notice{position:absolute;top:190px;left:50%;transform:translateX(-50%);max-width:560px;width:max-content;text-align:center;padding:12px 19px;background:#0a2028d9;border-bottom:1px solid #c9aa7280;font-size:11px;z-index:2;transition:opacity .4s}#extractPrompt{position:absolute;left:50%;bottom:160px;transform:translateX(-50%);text-align:center;padding:15px 30px;background:#102f36e8;border:1px solid #a1d6c566;z-index:3}#extractPrompt strong{display:block;color:var(--jade);font-size:9px;letter-spacing:2px;margin-bottom:8px}#extractPrompt span{font-size:10px}#extractPrompt>div{height:3px;background:#fff2;margin-top:12px}#extractProgress{height:100%;display:block;background:var(--jade)}.modal{position:absolute;inset:0;background:#03131bc9;backdrop-filter:blur(9px);display:grid;place-items:center;z-index:10}.modal section{width:min(480px,90vw);padding:40px;background:linear-gradient(135deg,#18343c,#0b1d26);border:1px solid #c9aa7250;box-shadow:0 30px 100px #0006}.modal h2{font-size:44px;margin:0 0 17px}.modal p{color:#afc3c5;font-size:12px;line-height:1.8}.modal .primary{width:100%;margin-top:25px}.modal .textButton{width:100%;margin-top:10px}.resultStats{display:flex;gap:35px;margin:25px 0}.resultStats b{display:block;font:36px 'Cormorant Garamond',serif;color:var(--gold)}.resultStats span{font-size:10px;color:var(--muted)}.controls{display:grid;grid-template-columns:120px 1fr;gap:12px;color:#afc3c5;font-size:11px}.controls dt{color:var(--gold)}.controls dd{margin:0}#mobileHint{display:none;position:absolute;bottom:0;left:0;right:0;padding:10px;text-align:center;background:#152b32;z-index:20;font-size:10px}@media(max-height:760px){.screen{padding-top:100px;padding-bottom:25px}.loadout{padding:17px 22px}.loadout h2{margin-bottom:9px;font-size:23px}.weapon{padding:8px}.forge{margin-top:14px;padding-top:14px}.forge .feedback{min-height:0}.townCopy h1{font-size:57px}.intro{margin-bottom:20px}.brand{top:23px}.townFooter{margin-top:6px}}@media(max-width:950px){.screen{padding-left:4vw;padding-right:4vw;gap:25px}.loadout{width:310px}.townCopy h1{font-size:49px}.intro br{display:none}.intro{max-width:350px}#locationLabel{display:none}.weather{top:83px}.weather .eyebrow{display:none}.vitals{top:100px;width:190px}.haul{top:100px;width:175px}.brand{left:25px;font-size:17px}.brand small{font-size:7px}.movementHint{font-size:8px}}@media(max-width:700px){body{overflow:auto}.screen{position:relative;min-height:100vh;display:block;padding:130px 25px 65px}.townCopy{margin-bottom:35px}.loadout{width:100%;max-width:440px}.townCopy h1{font-size:48px}#topActions{right:15px}.brand{left:20px;letter-spacing:2px}.brand small{letter-spacing:1px}#mobileHint{display:block;position:fixed}.haul{right:14px;top:175px;width:150px}.vitals{left:20px;top:103px}.weather{left:auto;right:20px;transform:none;top:100px}.weather h2{font-size:20px}.weather p:last-child{display:none}.abilities{bottom:60px;gap:4px}.abilities button{min-width:75px;padding:10px 5px}.abilities button span{font-size:15px}.movementHint{display:none}#notice{max-width:90vw;top:285px;font-size:10px}.modal section{padding:27px}}

.difficulty{display:flex;align-items:center;gap:12px;margin:0 0 14px;color:var(--cream)}
.difficulty select{font:inherit;color:inherit;background:#102931;border:1px solid #c9aa7273;padding:6px 12px;border-radius:2px}
.difficulty select:focus-visible{outline:2px solid var(--jade);outline-offset:3px}
