:root{--vt-bg:#0e0d0b;--vt-ink:#f4efe6;--vt-muted:#a39c8f;--vt-accent:#d7b87a;--vt-line:rgba(244,239,230,0.14);--vt-panel:rgba(14,13,11,0.78)}.vt-wrapper{position:fixed;inset:0;z-index:100;background:var(--vt-bg);color:var(--vt-ink);font-family:Inter,system-ui,-apple-system,Helvetica,Arial,sans-serif;overflow:hidden}.vt-canvas{position:absolute;inset:0;display:block;cursor:grab;width:100%;height:100%}.vt-canvas.dragging{cursor:grabbing}.vt-topbar{position:fixed;top:0;left:0;right:0;padding:18px 24px;justify-content:space-between;z-index:110;pointer-events:none;background:linear-gradient(180deg,rgba(14,13,11,.6),rgba(14,13,11,0))}.vt-brand,.vt-topbar{display:flex;align-items:center}.vt-brand{gap:12px;pointer-events:auto;text-decoration:none;color:var(--vt-ink)}.vt-brand .vt-mark{width:28px;height:28px;border:1.5px solid var(--vt-accent);display:flex;align-items:center;justify-content:center;font-family:JetBrains Mono,ui-monospace,monospace;font-size:13px;color:var(--vt-accent);letter-spacing:1px;flex-shrink:0}.vt-brand .vt-name{font-family:Inter,sans-serif;letter-spacing:.18em;font-size:11px;text-transform:uppercase;color:var(--vt-ink)}.vt-brand .vt-name b{font-weight:600}.vt-brand .vt-sep{opacity:.4;margin:0 4px}.vt-brand .vt-sub{color:var(--vt-muted)}.vt-topright{gap:18px;pointer-events:auto;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;color:var(--vt-muted);letter-spacing:.08em}.vt-pill,.vt-topright{display:flex;align-items:center}.vt-pill{padding:6px 10px;border:1px solid var(--vt-line);border-radius:999px;gap:8px}.vt-dot{width:6px;height:6px;border-radius:50%;background:var(--vt-accent)}.vt-info{position:fixed;left:24px;bottom:24px;z-index:110;background:var(--vt-panel);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--vt-line);max-width:340px;padding:18px 20px}.vt-info .vt-eyebrow{font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;letter-spacing:.2em;color:var(--vt-accent);text-transform:uppercase;margin-bottom:8px}.vt-info h2{margin:0 0 8px;font-family:Inter,sans-serif;font-size:22px;font-weight:500;letter-spacing:-.01em;line-height:1.1}.vt-info p{margin:0;font-size:13px;line-height:1.5}.vt-info p,.vt-meta{color:var(--vt-muted)}.vt-meta{display:flex;gap:18px;margin-top:14px;padding-top:14px;border-top:1px solid var(--vt-line);font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px}.vt-meta span b{color:var(--vt-ink);font-weight:500;display:block;font-size:13px;font-family:Inter,sans-serif}.vt-hint{position:fixed;left:50%;bottom:30px;transform:translateX(-50%);z-index:109;display:flex;gap:14px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;letter-spacing:.12em;color:var(--vt-muted);text-transform:uppercase}.vt-hint-item{display:flex;align-items:center;gap:8px}.vt-key{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border:solid var(--vt-line);border-width:1px 1px 2px;background:rgba(244,239,230,.04);color:var(--vt-ink);font-size:10px;border-radius:3px}.vt-minimap{position:fixed;right:24px;bottom:24px;z-index:110;background:var(--vt-panel);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--vt-line);padding:14px;width:260px}.vt-mm-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;letter-spacing:.18em;color:var(--vt-muted);text-transform:uppercase}.vt-mm-head .vt-scale{color:var(--vt-accent)}.vt-mm-svg{display:block;width:100%;height:auto}.vt-mm-svg .room{fill:rgba(244,239,230,.04);stroke:var(--vt-line);stroke-width:.6}.vt-mm-svg .room.featured{fill:rgba(215,184,122,.06)}.vt-mm-svg .wall{stroke:var(--vt-ink);stroke-width:1.2;fill:none;opacity:.65}.vt-mm-svg .label{font-family:JetBrains Mono,ui-monospace,monospace;font-size:3.2px;fill:var(--vt-muted);letter-spacing:.06em;text-transform:uppercase}.vt-mm-svg .hotspot{cursor:pointer}.vt-mm-svg .hotspot circle.bg{fill:var(--vt-bg);stroke:var(--vt-accent);stroke-width:.7;transition:all .2s ease}.vt-mm-svg .hotspot text.num{font-family:JetBrains Mono,ui-monospace,monospace;font-size:3.6px;fill:var(--vt-accent);text-anchor:middle;dominant-baseline:central;font-weight:600}.vt-mm-svg .hotspot:hover circle.bg{fill:var(--vt-accent)}.vt-mm-svg .hotspot:hover text.num{fill:var(--vt-bg)}.vt-mm-svg .hotspot.active circle.bg{fill:var(--vt-accent)}.vt-mm-svg .hotspot.active text.num{fill:var(--vt-bg)}.vt-mm-svg .you,.vt-mm-svg .you-cone{fill:var(--vt-accent)}.vt-mm-svg .you-cone{opacity:.18}.vt-stops{position:fixed;left:24px;top:80px;z-index:110;display:flex;flex-direction:column;gap:2px;width:260px}.vt-stop{display:flex;align-items:center;gap:10px;padding:8px 12px;background:transparent;border:none;color:var(--vt-muted);font-family:Inter,sans-serif;font-size:12px;text-align:left;cursor:pointer;border-left:1px solid var(--vt-line);transition:all .18s ease;letter-spacing:.01em}.vt-stop:hover{color:var(--vt-ink);border-left-color:var(--vt-ink);background:rgba(244,239,230,.03)}.vt-stop.active{color:var(--vt-accent);border-left-color:var(--vt-accent);background:rgba(215,184,122,.06)}.vt-stop .vt-num{font-family:JetBrains Mono,ui-monospace,monospace;font-size:10px;color:var(--vt-muted);min-width:18px}.vt-stop.active .vt-num{color:var(--vt-accent)}.vt-loading{position:fixed;inset:0;background:var(--vt-bg);display:flex;align-items:center;justify-content:center;z-index:150;transition:opacity .6s ease}.vt-loading.hidden{opacity:0;pointer-events:none}.vt-lcontent{text-align:center;font-family:JetBrains Mono,ui-monospace,monospace;color:var(--vt-muted);font-size:11px;letter-spacing:.2em;text-transform:uppercase}.vt-lbar{width:200px;height:1px;background:var(--vt-line);margin:20px auto 0;overflow:hidden}.vt-lbar i{display:block;width:30%;height:100%;background:var(--vt-accent);animation:vt-slide 1.4s ease-in-out infinite}@keyframes vt-slide{0%{transform:translateX(-100%)}to{transform:translateX(400%)}}@media (max-width:800px){.vt-stops{display:none}.vt-info{max-width:calc(100vw - 48px);bottom:auto;top:70px;left:12px;right:12px;padding:12px 14px}.vt-info h2{font-size:17px}.vt-info p{font-size:12px}.vt-meta{display:none}.vt-minimap{width:180px;right:12px;bottom:12px;padding:10px}.vt-hint{display:none}.vt-topbar{padding:14px 16px}}