html,body{background:#9fb6c9;height:100%;margin:0;font-family:system-ui,sans-serif;overflow:hidden}#app{position:fixed;inset:0}#hud{color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:none;background:#14161a8c;border-radius:6px;padding:8px 12px;position:fixed;top:10px;left:12px}#hud .title{letter-spacing:.02em;font-size:18px;font-weight:600}#hud .sub{opacity:.85;font-size:12px}#stats{opacity:.85;white-space:pre;margin-top:6px;font:11px/1.4 ui-monospace,monospace}body{background:#071013}#loading{color:#cfe3e6;background:#071013;flex-direction:column;justify-content:center;align-items:center;gap:12px;font:13px system-ui,sans-serif;transition:opacity .8s,transform .8s;display:flex;position:fixed;inset:0}body.cloud #loading{text-shadow:0 1px 8px #0009;background:0 0;inset:auto 0 9vh}#loading.done{opacity:0;pointer-events:none;transform:translateY(12px)}#loading .loading-title{letter-spacing:.14em;text-transform:uppercase;color:#e8f6f7;font:600 15px system-ui,sans-serif}#loading .bar{background:#78c8d22e;border-radius:1px;width:min(320px,70vw);height:2px;overflow:hidden}#loading-fill{background:linear-gradient(90deg,#4fc7cf,#bff3f5);width:0;height:100%;transition:width .25s;box-shadow:0 0 10px #5fd6de}#loading .loading-row{color:#9fc4c8;justify-content:space-between;gap:12px;width:min(320px,70vw);font-size:12px;display:flex}#loading-pct{font-variant-numeric:tabular-nums;color:#dff6f7}body.booting #hud,body.booting .lil-gui,body.booting .tour-start,body.booting .lang-toggle{opacity:0;pointer-events:none}#hud,.lil-gui,.tour-start{transition:opacity .8s}.label{color:#fff;white-space:nowrap;pointer-events:none;background:#1e191499;border-radius:3px;padding:1px 5px;font:600 11px system-ui,sans-serif}.label.cistern{background:#1e466eb3}.label.terrace{background:#785014bf;font-size:12px}.label.tower{background:#5a3c1ecc;font-size:12px}.label.gate{background:#3c4628cc;font-size:12px}.label.house{background:#6e461ebf;font-size:11px}.label.workshop{background:#642814cc;font-size:11px}#hud{pointer-events:auto}.lang-toggle{color:#fff;cursor:pointer;background:#ffffff24;border:1px solid #ffffff4d;border-radius:4px;margin-top:6px;padding:2px 8px;font:600 11px system-ui,sans-serif}.tour-start{color:#2a1d0e;cursor:pointer;background:#e2c48a;border:none;border-radius:6px;padding:10px 16px;font:600 14px system-ui,sans-serif;position:fixed;bottom:16px;left:16px;box-shadow:0 2px 10px #00000059}.tour-start:hover{background:#ecd29f}.tour-panel{color:#f2ece2;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#181410db;border:1px solid #e2c48a59;border-radius:10px;width:min(620px,100vw - 32px);max-height:46vh;padding:14px 18px 12px;font:14px/1.5 system-ui,sans-serif;position:fixed;bottom:16px;left:50%;overflow:auto;transform:translate(-50%);box-shadow:0 6px 24px #0006}.tour-panel h2{color:#e2c48a;margin:2px 0 6px;font-size:18px}.tour-panel p{margin:0 0 10px}.tour-head{opacity:.8;justify-content:space-between;align-items:center;font-size:12px;display:flex}.tour-nav{justify-content:space-between;gap:8px;margin-top:10px;display:flex}.tour-nav button,.info-card button.icon,.tour-panel button.icon{color:#f2ece2;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:5px;padding:6px 12px;font:600 13px system-ui,sans-serif}.tour-nav button:disabled{opacity:.35;cursor:default}.tour-nav button.on{color:#2a1d0e;background:#e2c48a}button.icon{padding:2px 8px!important}.chips{flex-wrap:wrap;align-items:center;gap:6px;margin:4px 0 6px;display:flex}.chips-label{opacity:.75;font-size:12px}.chip{background:color-mix(in srgb, var(--c) 30%, transparent);border:1px solid var(--c);border-radius:10px;align-items:center;gap:5px;padding:1px 8px 1px 2px;font-size:12px;display:inline-flex}.chip b{background:var(--c);color:#fff;border-radius:50%;place-items:center;width:17px;height:17px;font-size:11px;display:inline-grid}.sources{opacity:.7;font-size:11px}.info-card{color:#f2ece2;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#181410e0;border:1px solid #e2c48a59;border-radius:10px;width:min(340px,100vw - 32px);padding:12px 14px;font:13px/1.5 system-ui,sans-serif;position:fixed;top:150px;left:16px;box-shadow:0 6px 24px #0006}.info-card h3{color:#e2c48a;margin:0 24px 6px 0;font-size:15px}.info-card p{margin:0 0 8px}.info-card button.icon{position:absolute;top:10px;right:10px}@media (max-width:700px){.info-card{top:auto;bottom:120px}.tour-panel{max-height:52vh;font-size:13px}}.compare-toggle{margin-left:6px}.credits{opacity:.9;max-width:380px;margin-top:8px;font-size:11px;line-height:1.4}.credits p{margin:0 0 5px}.credits a{color:#e2c48a;text-decoration:none}.compare-toggle.on{color:#2a1d0e;background:#e2c48a;border-color:#e2c48a}.compare-divider{cursor:ew-resize;touch-action:none;z-index:5;width:24px;margin-left:-12px;position:fixed;top:0;bottom:0}.compare-divider:before{content:"";background:#ffffffd9;width:2px;position:absolute;top:0;bottom:0;left:11px;box-shadow:0 0 6px #00000080}.compare-handle{color:#2a1d0e;background:#e2c48a;border-radius:50%;place-items:center;width:38px;height:38px;font:700 16px system-ui,sans-serif;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 2px 8px #00000073}.compare-label{color:#fff;pointer-events:none;z-index:5;white-space:nowrap;background:#181410b3;border-radius:4px;margin-top:34px;padding:3px 8px;font:600 12px system-ui,sans-serif;position:fixed;top:50%;transform:translateY(-50%)}canvas{touch-action:none}@media (max-width:760px),(pointer:coarse){#hud{max-width:calc(100vw - 150px);padding:6px 9px;top:8px;left:8px}#hud .title{font-size:15px}#hud .sub{font-size:10.5px}#stats{display:none}.lil-gui.root{--width:210px;--widget-height:24px;max-height:70vh;font-size:12px}.tour-start{padding:12px 16px;font-size:15px;bottom:8px;left:8px}.tour-panel{width:calc(100vw - 16px);max-height:48vh;padding:10px 12px 8px;font-size:13.5px;bottom:8px}.tour-panel h2{font-size:16px}.tour-nav button{flex:1;padding:9px 10px}.info-card{width:calc(100vw - 16px);max-height:40vh;top:auto;bottom:64px;left:8px;overflow:auto}.lang-toggle{padding:5px 10px;font-size:12px}.compare-handle{width:46px;height:46px}.label{font-size:10px}}.tour-panel,.info-card,.tour-start{box-sizing:border-box}#walk-help{color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:none;white-space:nowrap;background:#14161a99;border-radius:6px;padding:6px 12px;font:12px system-ui,sans-serif;position:fixed;bottom:14px;left:50%;transform:translate(-50%)}#walk-help[hidden]{display:none}
