@import url('data:text/css,');
:root{color-scheme:dark;--ink:#edf1ed;--muted:#a8b2b5;--panel:rgba(21,31,36,.88);--line:rgba(230,242,240,.13);--accent:#efb569;font-family:Inter,"Segoe UI",Arial,sans-serif;font-synthesis:none}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#25343c;color:var(--ink)}button,input,select{font:inherit}button{cursor:pointer;color:inherit;border:0;background:none}button:disabled{opacity:.45;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:4px}#viewport{position:fixed;inset:0}#viewport canvas{display:block;width:100%;height:100%;touch-action:none}.topbar{position:fixed;inset:0 0 auto;display:flex;justify-content:space-between;align-items:center;padding:26px 34px;pointer-events:none;background:linear-gradient(#101d267c,transparent);z-index:5}.topbar>*{pointer-events:auto}.brand{display:flex;align-items:center;gap:16px;color:inherit;text-decoration:none}.brandmark{font-size:28px;font-weight:750;letter-spacing:-3px;border:1px solid #cad4d23b;width:66px;height:54px;display:grid;place-content:center;grid-auto-flow:column;border-radius:3px;background:#18232991}.brandmark span{color:var(--accent);padding-left:3px}.brandtext{font-size:12px;font-weight:650;letter-spacing:2px;text-shadow:0 1px 10px #000}.brandtext small{display:block;font-size:9px;letter-spacing:1.45px;margin-top:8px;font-weight:400;color:#bdc7c7}.topactions{display:flex;align-items:center;gap:10px}.status{font-size:10px;letter-spacing:1.7px;margin-right:14px}.status i,.eyebrow i,.mapfooter i{display:inline-block;width:5px;height:5px;background:#a5ccaa;border-radius:50%;margin-right:8px;box-shadow:0 0 12px #a5ccaa44}.iconbutton{display:grid;place-items:center;width:37px;height:37px;border:1px solid var(--line);border-radius:50%;font-size:20px;background:#18232994}.iconbutton:hover{background:#526169}.panel{background:var(--panel);border:1px solid var(--line);box-shadow:0 18px 70px #07111726;backdrop-filter:blur(22px);border-radius:8px}.intro{position:fixed;left:34px;top:50%;transform:translateY(-47%);width:380px;padding:32px;z-index:4}.eyebrow{font-size:9px;letter-spacing:2.1px;font-weight:600;color:#c8d0ce}.eyebrow i{background:var(--accent)}h1{font-size:44px;font-weight:450;letter-spacing:-1.8px;line-height:1.12;margin:26px 0 20px}h1>span{color:var(--accent)}.intro p{font-size:13px;line-height:1.9;color:#aebbbc;margin:0}.introdata{display:flex;justify-content:space-between;gap:12px;padding:26px 0;margin:22px 0 16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.introdata strong{display:block;font-size:20px;font-weight:450}.introdata span{font-size:7px;letter-spacing:1.2px;color:#9ba9ac;display:block;margin-top:7px}.primary{background:var(--accent);color:#172127;display:flex;align-items:center;justify-content:space-between;width:100%;padding:16px 18px;font-size:12px;font-weight:650;border-radius:4px}.primary:hover{background:#f3c78e}.primary span{font-size:20px}.textbutton{display:flex;justify-content:space-between;width:100%;padding:18px 1px;font-size:11px;color:#c9d1ce}.textbutton:hover{color:#fff}.introfooter{display:flex;gap:7px;font-size:9px;font-weight:600;align-items:center;padding-top:10px;letter-spacing:1px}.introfooter span{color:#8c9c9f;letter-spacing:0;font-weight:400}.introfooter b{margin:0 5px;color:#54656b}.loading{position:fixed;bottom:36px;left:34px;width:380px;z-index:6}.loadhead{display:flex;justify-content:space-between;font-size:10px;color:#d8e0dd;letter-spacing:.8px;text-shadow:0 1px 5px #000}.track{height:2px;background:#c7d3cc33;margin-top:10px}.track>div{height:100%;width:0;background:var(--accent);transition:width .3s}.hidden{display:none!important}.toolbar{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);display:flex;gap:4px;padding:6px;white-space:nowrap;z-index:7}.toolbar button{padding:13px 15px;font-size:11px;border-radius:4px;color:#b4c0c0;display:flex;align-items:center;gap:8px}.toolbar button>span:first-child{font-size:17px}.toolbar button:hover{background:#ffffff0d}.toolbar button.active{background:#eab471;color:#18252b}.divider{width:1px;background:var(--line);margin:9px 3px}.minimap{position:fixed;right:26px;bottom:108px;width:260px;padding:15px 16px 10px;z-index:4;background:#182329cc}.maptitle,.mapfooter{display:flex;justify-content:space-between;align-items:center;font-size:8px;letter-spacing:1.4px;color:#c0cbc9}.maptitle>span:last-child{color:var(--accent);font-size:10px;letter-spacing:0}.mapfooter{font-size:8px;letter-spacing:.3px;color:#9dadaf;border-top:1px solid var(--line);padding-top:9px}.mapfooter i{margin:0 4px 0 0;width:4px;height:4px}.mapfooter>span:first-of-type{flex:1}.minimap canvas{width:100%;height:130px;margin-top:12px;display:block}.settings,.locations{position:fixed;right:26px;top:104px;width:310px;padding:24px;z-index:10}.panelhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.panelhead .iconbutton{width:28px;height:28px;font-size:18px}h2{font-size:19px;font-weight:450;letter-spacing:-.4px;margin:8px 0 0}.settings label{font-size:11px;display:block;margin:20px 0;color:#bbc7c6}.settings select{display:block;width:100%;background:#29383d;border:1px solid #3f4e53;color:#e6edeb;border-radius:4px;padding:10px 12px;margin-top:9px;font-size:11px}.settings input{display:block;width:100%;margin-top:15px;accent-color:var(--accent)}.settings small{display:block;color:#8e9fa1;font-size:9px;line-height:1.7;margin-top:17px}.secondary{border:1px solid #6c7c7e;border-radius:3px;padding:11px 15px;width:100%;font-size:10px}.secondary:hover{border-color:var(--accent)}.locations{left:26px;right:auto;width:320px;max-height:calc(100% - 210px);display:flex;flex-direction:column}.locations input{background:#ffffff08;color:#edf1ee;border:1px solid var(--line);padding:12px;font-size:11px;border-radius:3px;width:100%;margin-bottom:14px}.locations .panelhead{margin-bottom:18px}#locationList{overflow-y:auto;margin:0 -10px;padding:0 10px;scrollbar-width:thin}#locationList button{width:100%;text-align:left;padding:15px 6px;border-bottom:1px solid var(--line);font-size:12px;display:flex;justify-content:space-between;align-items:center;gap:8px}#locationList button:hover{color:var(--accent)}#locationList small{display:block;font-size:9px;margin-top:5px;color:#899c9f}.selection{position:fixed;top:112px;left:26px;width:320px;padding:25px;z-index:9}.selection h2{overflow-wrap:anywhere;font-size:18px;margin-top:15px}.selection p{color:#b7c5c4;font-size:11px}.selection small{display:block;font-size:9px;color:#84989b;overflow-wrap:anywhere;line-height:1.7;margin-top:12px}.selection #selectedMaterial{font-size:10px;color:var(--accent)}.close{position:absolute;right:16px;top:14px;width:28px;height:28px;font-size:18px}.crosshair{position:fixed;left:50%;top:50%;width:16px;height:16px;transform:translate(-50%,-50%);border:1px solid #ffffff6b;border-radius:50%;pointer-events:none;z-index:3}.crosshair i{position:absolute;inset:6px;background:white;border-radius:50%}.walkhint{position:fixed;left:50%;top:48%;transform:translate(-50%,-50%);padding:14px 22px;background:#12212cbd;border:1px solid #bbc9ce33;backdrop-filter:blur(8px);border-radius:6px;font-size:12px;pointer-events:none}.toast{position:fixed;left:50%;top:108px;transform:translateX(-50%);background:#1b2c34e8;color:#e8eeea;border:1px solid #798a8340;box-shadow:0 8px 30px #0002;border-radius:5px;padding:12px 18px;font-size:11px;max-width:80vw;z-index:20}.diagnostics{position:fixed;left:20px;bottom:100px;font:10px/1.7 Consolas,monospace;white-space:pre;background:#071019d9;padding:14px;border-radius:4px;color:#b9d2ca}.help{width:460px;max-width:90vw;padding:34px;color:var(--ink)}.help::backdrop{background:#08121980;backdrop-filter:blur(6px)}.help h2{font-size:30px;margin:18px 0 27px}.help dl{display:grid;grid-template-columns:132px 1fr;gap:16px 12px;font-size:11px;align-items:center}.help dd{margin:0;color:#a9babd}.help dt{display:flex;gap:4px}.help kbd{display:inline-block;min-width:23px;border:1px solid #687c7f77;border-bottom-width:2px;border-radius:3px;padding:4px 6px;text-align:center;font:10px Inter,"Segoe UI",sans-serif}.help p{font-size:11px;line-height:1.8;color:#a0b2b3;margin:25px 0}.error{color:#efad88}.touchpad{display:none}@media(max-width:850px){.intro{width:335px;padding:26px;left:22px}.intro h1{font-size:38px}.topbar{padding:20px 22px}.brandtext small{display:none}.status{display:none}.minimap{width:200px;right:16px}.toolbar button{padding:11px 9px;font-size:10px;gap:5px}.toolbar .wide{display:none}.loading{width:335px;left:22px}}@media(max-width:600px){.intro{width:calc(100% - 40px);max-width:350px;top:auto;bottom:85px;transform:none;padding:24px}.intro h1{font-size:34px;margin:18px 0 14px}.intro p{font-size:12px}.introdata{padding:16px 0;margin:16px 0}.introfooter{display:none}.brandtext{display:none}.topactions{gap:6px}.minimap{width:150px;bottom:100px;padding:10px}.minimap canvas{height:80px}.toolbar{bottom:14px;max-width:calc(100% - 20px)}.toolbar button{font-size:0;gap:0;padding:14px}.toolbar button span:first-child{font-size:20px}.settings,.locations,.selection{max-width:calc(100% - 32px);right:16px;left:auto;top:90px}.loading{bottom:35px;width:calc(100% - 44px)}.walkhint{max-width:75%;text-align:center;line-height:1.6}.status{display:none}}

.keyguide{position:fixed;bottom:104px;left:24px;padding:12px 16px;display:flex;gap:12px;align-items:center;flex-wrap:wrap;max-width:640px;font-size:10px;z-index:4;pointer-events:none}.keyguide kbd,.toolbar kbd{display:inline-block;font:600 10px "Segoe UI",sans-serif;border:1px solid #8fa5ad66;border-radius:3px;padding:3px 5px;margin-right:3px}.keyguide small{flex-basis:100%;color:#abbec2}.keyguide strong{color:#efb569;font-size:9px;letter-spacing:.8px}.toolbar{bottom:22px}.walkhint{pointer-events:none}.help{max-height:85vh;overflow:auto}#viewport canvas{cursor:grab}#viewport canvas:active{cursor:grabbing}@media(max-width:900px){.keyguide{max-width:360px;gap:7px;bottom:100px;font-size:9px;left:16px}}@media(max-width:600px){.keyguide{bottom:100px;max-width:180px;padding:9px;gap:5px}.keyguide small{display:none}.toolbar button kbd{font-size:13px}.minimap{bottom:225px}}

.walkhint{top:auto;bottom:90px;transform:translateX(-50%);font-size:11px;padding:9px 14px}
