:root{font-family:Georgia,Times New Roman,serif;color:#f0e8d5;background:#101d18;font-synthesis:none;--gold:#d5bc85;--muted:#a9b5a4;--glass:rgba(19,34,29,.91);--line:rgba(208,189,145,.23)}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,input,select{font:inherit}button,select{color:inherit}button{cursor:pointer;border:1px solid var(--line);background:#ffffff09;padding:12px 16px;border-radius:5px;transition:background .15s,border-color .15s}button:hover{background:#405042;border-color:var(--gold)}button:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:3px}button:disabled{opacity:.4;cursor:wait}select{background:#243a30;border:1px solid var(--line);padding:8px;border-radius:4px}label{font-size:13px;color:var(--muted);display:flex;flex-direction:column;gap:8px}#world{display:block;width:100vw;height:100vh;touch-action:none}.hidden{display:none!important}.vignette{position:fixed;inset:0;pointer-events:none;background:linear-gradient(180deg,#10251d55,transparent 23%,transparent 68%,#07120ed9),linear-gradient(90deg,#0b171b30,transparent 38%);box-shadow:inset 0 0 150px #030c092a}.panel{background:var(--glass);border:1px solid var(--line);box-shadow:0 16px 55px #07151040;border-radius:9px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.eyebrow{font:10px/1.5 system-ui,sans-serif;letter-spacing:2.3px;display:block;font-weight:600}.accent{color:var(--gold)}#brand{position:fixed;left:36px;top:28px;display:flex;gap:14px;align-items:center;pointer-events:none}#brand .eyebrow{font-size:14px;letter-spacing:4px}.brand-mark{font-size:48px;color:var(--gold)}.chapter{font-size:12px;color:#c8d0bd;display:block;margin-top:4px;letter-spacing:.5px}#save-status{position:fixed;right:32px;top:30px;font:11px system-ui,sans-serif;color:#d1d7c7;letter-spacing:.5px}.welcome{position:fixed;width:360px;right:6%;top:50%;transform:translateY(-45%);padding:32px}.welcome h1{font-weight:400;font-size:37px;line-height:1.15;letter-spacing:-1px;margin:15px 0}.welcome p{font-size:14px;line-height:1.7;color:#b7c2af}.divider{height:1px;background:var(--line);margin:23px 0}.choice-row{display:flex;gap:8px;margin-top:10px}.choice-row button{flex:1;font-size:14px}.selected{border-color:var(--gold);color:var(--gold);background:#c7b48214}.appearance-row{display:flex;gap:10px;margin:18px 0 25px}.appearance-row label{flex:1;font:11px system-ui,sans-serif}.appearance-row select{width:100%;font:12px system-ui,sans-serif}.primary{background:var(--gold);border-color:var(--gold);color:#203327;font-size:14px;letter-spacing:.4px;font-weight:700}.primary:hover{background:#f1dba8;color:#17291e}.primary span{float:right}.welcome .primary{width:100%;padding:15px}.text-button{border:none;background:none;font-size:12px;color:#c7d0bd;display:block;margin:12px auto 4px}.welcome small{display:block;text-align:center;font:9px system-ui,sans-serif;color:#97a691;margin-top:18px}.hero-hud{position:fixed;left:25px;top:26px;width:265px;padding:15px}.hero-top{display:flex;align-items:center;gap:12px;margin-bottom:12px}.hero-top strong{font-weight:400;font-size:18px}.hero-top small{display:block;font:9px system-ui,sans-serif;letter-spacing:1.2px;color:var(--gold);margin-top:5px}.hero-top button{margin-left:auto;padding:6px 10px;color:var(--gold)}.portrait{font-size:25px;color:var(--gold);border:1px solid var(--line);padding:5px 10px;border-radius:50%}.meter{height:19px;background:#0c1917;border-radius:3px;margin:5px 0;position:relative;overflow:hidden}.meter i{display:block;height:100%;transition:width .12s}.health i{background:linear-gradient(90deg,#704841,#b9866c)}.mana i{background:linear-gradient(90deg,#3e6276,#86b0b8)}.meter span{position:absolute;inset:0;text-align:center;font:10px/19px system-ui,sans-serif;text-shadow:0 1px 2px #000}.xp{height:3px;background:#24372d;margin-top:10px}.xp i{display:block;background:var(--gold);height:100%;width:0}.quest{position:fixed;right:25px;top:65px;width:250px;padding:21px}.quest h3{font-size:19px;font-weight:400;line-height:1.3;margin:10px 0}.quest p{font:12px/1.6 system-ui,sans-serif;color:#b4c2ad;min-height:36px}.seals{color:var(--gold);letter-spacing:5px;margin:20px 0}.quest small{font:9px system-ui,sans-serif;letter-spacing:1px;color:var(--muted)}#minimap{position:fixed;bottom:30px;right:28px;padding:8px;text-align:center}#minimap canvas{display:block;width:120px;height:120px}#minimap span{font:8px system-ui,sans-serif;letter-spacing:2px;color:#b1bca7}.actionbar{position:fixed;bottom:25px;left:50%;transform:translate(-50%)}.skill-row{display:flex;gap:8px}.skill{position:relative;width:80px;height:88px;padding:11px 4px 6px;background:#12211df0;border:1px solid #bfb38b55;box-shadow:0 4px 15px #0004;text-align:center;border-radius:7px;overflow:hidden}.skill:hover{transform:translateY(-3px)}.skill .key{position:absolute;left:6px;top:5px;font:9px system-ui,sans-serif;color:#c6ceb7}.skill svg{width:29px;height:29px;margin:7px 0}.skill .name{display:block;font:9px system-ui,sans-serif;color:#dedfcb}.skill .mana-cost{font:8px system-ui,sans-serif;color:#b5cdda}.skill .cooldown{position:absolute;inset:0;background:#0e1917c4;display:flex;align-items:center;justify-content:center;font:24px Georgia;color:var(--gold)}.controls-hint{display:flex;justify-content:center;gap:16px;white-space:nowrap;margin-top:13px;font:10px system-ui,sans-serif;color:#bac5ad}kbd{font:9px system-ui,sans-serif;color:#e1e7d5;background:#111e1999;border:1px solid #a1b39833;padding:3px 5px;border-radius:3px;margin-right:3px}#dodge-cd{font-weight:400}#camp-action{position:fixed;bottom:172px;left:50%;transform:translate(-50%)}#camp-action button{font-size:11px;padding:10px 17px;background:#15261ee8;color:var(--gold)}#inspect-hud{position:fixed;right:30px;top:95px;width:245px;padding:23px}#inspect-hud h3{font-weight:400;font-size:22px;margin:12px 0 20px}#inspect-hud label{margin:14px 0}#preview-skills{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:15px 0}#preview-skills button{font-size:11px;padding:12px 5px}#inspect-hud p{font:11px/1.7 system-ui,sans-serif;color:var(--muted)}#inspect-hud>.primary{width:100%;font-size:12px}#camera-reset{font-size:11px}#toast{position:fixed;left:50%;top:15%;transform:translate(-50%);padding:14px 25px;border:1px solid var(--line);border-radius:5px;background:#15291ded;color:#eadab0;font-size:16px;text-align:center;pointer-events:none;max-width:440px}#modal-backdrop{position:fixed;inset:0;background:#08151088;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center}#modal{width:420px;max-height:90vh;overflow:auto;padding:30px}#modal h2{font-weight:400;font-size:30px;margin:8px 0 16px}#modal p{font:13px/1.7 system-ui,sans-serif;color:var(--muted)}#modal .stack{display:grid;gap:10px}#modal .split{display:flex;gap:8px;margin-top:10px}#modal .split button{flex:1;font-size:12px}#modal label{flex-direction:row;align-items:center;margin:13px 0;font:12px system-ui,sans-serif}#modal .upgrade{text-align:left;padding:16px}#modal .upgrade strong{display:block;font-size:17px;color:var(--gold);margin-bottom:5px}#modal .upgrade span{font:11px system-ui,sans-serif;color:var(--muted)}#loading{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#14231e;z-index:100}#loading h2{font-weight:400;color:#e5d8b9;font-size:23px}#loading p{font:12px system-ui,sans-serif;color:var(--muted)}.loading-rune{font-size:85px;color:var(--gold);animation:breathe 2s infinite;margin-bottom:24px}#floaters{position:fixed;inset:0;pointer-events:none;overflow:hidden}.floater{position:absolute;font:700 18px Georgia;text-shadow:0 2px 5px #102010;animation:float 1s forwards;color:#f4dfaa}.floater.hurt{color:#ffac93}@keyframes float{to{transform:translateY(-55px);opacity:0}}@keyframes breathe{50%{opacity:.35;transform:scale(.95)}}#inspect-hud{inset:auto auto 25px 50%;transform:translate(-50%);width:850px;display:flex;align-items:end;gap:12px;padding:16px}#inspect-hud>.eyebrow,#inspect-hud>h3,#inspect-hud>p{display:none}#inspect-hud label{margin:0;width:110px;flex-shrink:0}#preview-skills{display:grid;grid-template-columns:repeat(4,1fr);margin:0;gap:5px}#preview-skills button{width:75px;height:42px;padding:6px;font-size:10px}#camera-reset{height:42px;width:65px;padding:5px}#inspect-hud>.primary{height:42px;width:145px;padding:5px;font-size:11px}@media(max-width:850px){#brand{left:20px;top:18px}.welcome{right:22px;width:310px;padding:24px}.welcome h1{font-size:31px}.quest{width:200px;right:15px;top:60px;padding:16px}.hero-hud{left:15px;width:220px}.actionbar{bottom:20px}.skill{width:68px;height:82px}#minimap{right:15px;bottom:22px}#minimap canvas{width:90px;height:90px}#inspect-hud{width:calc(100vw - 30px);flex-wrap:wrap;justify-content:center}#inspect-hud label{width:100px}}@media(max-width:600px){.welcome{transform:none;inset:auto 18px 18px;width:auto;padding:20px}.welcome h1{font-size:26px;margin:8px 0}.welcome p{font-size:12px;line-height:1.5}.divider,.appearance-row{margin:12px 0}.welcome small{margin-top:10px}#save-status{top:85px;right:20px;font-size:9px}#brand .eyebrow{font-size:12px}.hero-hud{width:175px;padding:10px;top:15px;left:10px}.hero-top strong{font-size:14px}.portrait{display:none}.quest{top:15px;right:10px;width:170px;padding:12px}.quest h3{font-size:15px}.quest p{font-size:10px;min-height:0}.quest .seals{margin:10px 0}.quest .eyebrow{font-size:8px}.skill{width:67px}.controls-hint{font-size:8px;gap:5px}#minimap{display:none}#modal{width:calc(100vw - 30px);padding:24px}#inspect-hud{right:12px;top:110px;width:200px;padding:18px}}#world.camera-dragging{cursor:ns-resize}.camera-hint{text-align:center;font:10px system-ui,sans-serif;color:var(--muted);margin-top:10px;white-space:nowrap}@media(max-width:600px){.camera-hint{font-size:9px}.controls-hint kbd{padding:3px;margin-right:1px}}#inspect-hud{width:min(1080px,calc(100vw - 30px));flex-wrap:wrap;justify-content:center}@media(max-width:600px){#inspect-hud{inset:auto 15px 15px;transform:none;width:auto;max-height:calc(100vh - 120px);overflow-y:auto;padding:12px;gap:8px}}.welcome{max-height:calc(100vh - 120px);overflow-y:auto}.hair-options{margin-top:0;margin-bottom:12px}.hair-gallery{margin:0 0 16px;color:var(--muted);font:12px system-ui,sans-serif}.hair-gallery summary{cursor:pointer;padding:6px 0}#hair-presets{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;max-height:230px;overflow-y:auto;margin-top:8px}#hair-presets button{padding:4px;font-size:10px}#hair-presets img{display:block;width:100%;height:84px;object-fit:cover;border-radius:3px}#hair-presets span{display:block;padding:5px 0}#inspect-hud{width:min(1280px,calc(100vw - 30px))}@media(max-width:600px){.welcome{max-height:calc(100vh - 130px)}#inspect-hud{width:auto}}
