.hv-root{--paper:#f5f4f0;--ink:#1d1d20;--muted:#8a8a8e;--line:#e2e0da;--accent:#2f6fed;--serif:"Inter", "Helvetica Neue", Helvetica, Arial, sans-serif;--sans:"Inter", "Helvetica Neue", Helvetica, Arial, sans-serif}.hv-root,.hv-root *,.hv-root :before,.hv-root :after{box-sizing:border-box}.hv-root{background:var(--paper);min-height:100svh;color:var(--ink);font:14px/1.5 var(--sans);-webkit-font-smoothing:antialiased}.hv-root button{font-family:inherit}.hv-back{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:13px;text-decoration:none;overflow:hidden}.hv-back:hover{text-underline-offset:3px;text-decoration:underline}.hv-stage-wrap{min-width:0;position:relative}.hv-stage-wrap>.hv-stage{height:100%}.hv-loading{color:var(--muted);pointer-events:none;place-items:center;font-size:13px;display:grid;position:absolute;inset:0}.hv-top{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;height:56px;padding:0 24px;display:flex}.hv-top-left{align-items:center;gap:18px;min-width:0;display:flex}.hv-logo{width:90px;height:30px;color:var(--ink)}.hv-divider{background:var(--line);width:1px;height:22px}.hv-brand{letter-spacing:.04em;color:var(--muted);font-size:12px}.hv-model{font-family:var(--serif);align-items:baseline;gap:12px;font-size:20px;display:flex}.hv-address{font-family:var(--sans);color:var(--muted);font-size:12px}.hv-page{grid-template-columns:minmax(0,1fr) 300px;height:calc(100svh - 56px);display:grid}.hv-stage{min-height:420px;position:relative;overflow:hidden}.hv-canvas{cursor:grab;outline:none;display:block}.hv-canvas:active{cursor:grabbing}.hv-panel{border-left:1px solid var(--line);padding:22px 22px 32px;overflow:auto}.hv-hint{color:var(--muted);margin-bottom:14px}.hv-keys{gap:6px;margin-bottom:22px;display:grid}@media (hover:none) and (pointer:coarse){.hv-keys{display:none}}.hv-key{align-items:center;gap:10px;display:flex}.hv-key kbd{min-width:22px;height:20px;font:11px var(--sans);color:#555;background:#e9e7e1;border-radius:4px;place-items:center;padding:0 5px;display:inline-grid}.hv-section{margin-bottom:20px}.hv-section-title{color:var(--muted);margin-bottom:6px;font-size:12px}.hv-chips{flex-wrap:wrap;gap:4px 2px;display:flex}.hv-chip{font:inherit;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:4px;padding:2px 8px 3px}.hv-chip:hover{background:#ebe9e3}.hv-chip.on{text-underline-offset:4px;text-decoration:underline}.hv-toggle.on{background:var(--ink);color:var(--paper);text-decoration:none}.hv-step{border:1px solid var(--line);min-width:26px;padding:2px 6px}.hv-step.done{background:#e9e7e1}.hv-step.on{background:var(--ink);color:var(--paper);border-color:var(--ink);text-decoration:none}.hv-step-name{color:var(--muted);margin-top:6px}.hv-slider{align-items:center;gap:10px;display:flex}.hv-slider input{accent-color:var(--ink);flex:1}.hv-pct{text-align:right;width:40px;color:var(--muted);font-variant-numeric:tabular-nums}.hv-facts{border-top:1px solid var(--line);color:var(--muted);gap:2px;padding-top:14px;display:grid}.hv-facts div:first-child{color:var(--ink)}.hv-tip{pointer-events:none;background:var(--ink);color:#fff;opacity:0;white-space:nowrap;border-radius:4px;padding:3px 8px;font-size:12px;transition:opacity .12s;position:absolute;top:0;left:0}.hv-tip.on{opacity:1}.hv-card,.hv-jcard{border:1px solid var(--line);opacity:0;pointer-events:none;background:#fffffff0;border-radius:8px;width:min(300px,100% - 32px);padding:12px 14px;transition:opacity .18s,transform .18s;position:absolute;right:16px;transform:translateY(4px);box-shadow:0 8px 24px -12px #00000040}.hv-card{top:16px}.hv-jcard{bottom:16px;left:16px;right:auto}.hv-card.on,.hv-jcard.on{opacity:1;pointer-events:auto;transform:none}.hv-card-sys{color:var(--muted);letter-spacing:.02em;font-size:11px}.hv-card-name{font-family:var(--serif);margin:2px 0 4px;font-size:18px}.hv-card-info{color:#4a4a4e}.hv-card-close{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:18px;position:absolute;top:6px;right:8px}.hv-steps{border-top:1px solid var(--line);align-items:center;gap:10px;margin-top:10px;padding-top:10px;display:flex}.hv-step-btn{font:inherit;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:4px;padding:2px 4px}.hv-step-btn:hover:not(:disabled){background:#ebe9e3}.hv-step-btn:disabled{color:var(--muted);cursor:default}.hv-dots{flex:1;justify-content:center;gap:6px;display:flex}.hv-dot{border:1px solid var(--ink);cursor:pointer;background:0 0;border-radius:50%;width:8px;height:8px;padding:0}.hv-dot.on{background:var(--ink)}.hv-inset{border:1px solid var(--line);pointer-events:none;opacity:0;border-radius:6px;transition:opacity .2s;position:absolute;top:0;left:0;box-shadow:0 8px 22px -14px #00000059}.hv-inset.on{opacity:1}.hv-inset span{color:#4a4a4e;font-size:11px;position:absolute;bottom:6px;left:8px}.hv-walkbar{scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;touch-action:pan-x;gap:6px;max-width:100%;padding:12px;display:none;position:absolute;top:0;left:0;overflow-x:auto}.hv-walkbar.fade-r{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 44px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 44px),#0000)}.hv-walkbar.fade-l{-webkit-mask-image:linear-gradient(270deg,#000 calc(100% - 44px),#0000);mask-image:linear-gradient(270deg,#000 calc(100% - 44px),#0000)}.hv-walkbar.fade-l.fade-r{-webkit-mask-image:linear-gradient(90deg,#0000,#000 44px calc(100% - 44px),#0000);mask-image:linear-gradient(90deg,#0000,#000 44px calc(100% - 44px),#0000)}.hv-walkbar::-webkit-scrollbar{display:none}.hv-walkbar .hv-tool{flex:none}.hv-walking .hv-walkbar{display:flex}.hv-tool{border:1px solid var(--line);color:var(--ink);font:13px var(--sans);cursor:pointer;background:#ffffffeb;border-radius:999px;padding:6px 11px;box-shadow:0 4px 14px -10px #0006}.hv-tool.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}.hv-tool-exit{font-weight:600}.hv-walkhint{color:#4a4a4e;pointer-events:none;white-space:nowrap;background:#ffffffd9;border-radius:999px;padding:4px 10px;font-size:12px;display:none;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.hv-walking .hv-walkhint{display:block}.hv-walking .hv-jcard{bottom:48px}.hv-walk-btn{font-weight:600}.hv-enter{align-items:center;gap:6px;transition:opacity .2s;display:flex;position:absolute;bottom:16px;left:16px}.hv-enter-label{color:#4a4a4e;background:#f5f4f0db;border-radius:999px;padding:3px 8px;font-size:12px}.hv-enter .hv-tool{font-weight:600}.hv-enter.off{opacity:0;pointer-events:none}.hv-corner{gap:6px;transition:opacity .2s;display:flex;position:absolute;top:12px;right:12px}.hv-corner.off{opacity:0;pointer-events:none}.hv-toast{background:var(--ink);color:var(--paper);opacity:0;pointer-events:none;white-space:nowrap;z-index:5;border-radius:999px;padding:7px 14px;font-size:13px;transition:opacity .2s,transform .2s;position:absolute;top:64px;left:50%;transform:translate(-50%,-6px)}.hv-toast.on{opacity:1;transform:translate(-50%)}.hv-sheet{border:1px solid var(--line);opacity:0;pointer-events:none;z-index:4;background:#fffffff7;border-radius:10px;flex-direction:column;width:min(320px,100% - 24px);max-height:calc(100% - 72px);transition:opacity .18s,transform .18s;display:flex;position:absolute;top:56px;right:12px;transform:translateY(6px);box-shadow:0 14px 36px -16px #00000059}.hv-sheet.on{opacity:1;pointer-events:auto;transform:none}.hv-sheet-head{justify-content:space-between;align-items:center;padding:10px 12px 4px 14px;display:flex}.hv-sheet-head .hv-card-close{position:static}.hv-sheet-body{overscroll-behavior:contain;padding:0 14px 12px;overflow:auto}.hv-fin-side{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:10px 0 4px;font-size:11px}.hv-fin{border-bottom:1px solid var(--line);padding:6px 0 8px}.hv-fin-head{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:6px;display:flex}.hv-fin-name{font-size:13px}.hv-fin-choice{color:var(--muted);text-align:right;font-size:12px}.hv-swatches{flex-wrap:wrap;gap:8px;display:flex}.hv-swatch{background:var(--sw);cursor:pointer;border:1px solid #00000024;border-radius:50%;width:30px;height:30px;padding:0;box-shadow:inset 0 0 0 2px #fff}.hv-swatch.on{outline:2px solid var(--ink);outline-offset:2px}.hv-fin-foot{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;padding-top:10px;font-size:12px;display:flex}.hv-fin-foot .hv-chip:disabled{opacity:.4;cursor:default}.hv-cta{background:var(--accent);border-radius:999px;align-items:center;max-width:calc(100% - 24px);display:none;position:absolute;bottom:12px;left:50%;transform:translate(-50%);box-shadow:0 8px 22px -10px #2f6fedb3}.hv-walking .hv-cta.on{display:flex}.hv-cta-go{color:#fff;font:600 13px var(--sans);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:0;padding:8px 6px 8px 16px;overflow:hidden}.hv-cta-x{color:#fffc;cursor:pointer;background:0 0;border:0;padding:6px 12px 7px 6px;font-size:18px;line-height:1}.hv-walkhint.off,.hv-cta.hide{display:none!important}.hv-toolbar{border:1px solid var(--line);z-index:3;background:#fffffff5;border-radius:999px;align-items:center;gap:10px;max-width:calc(100% - 24px);padding:5px 6px 5px 14px;display:none;position:absolute;bottom:12px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px -12px #0000004d}.hv-toolbar.on{display:flex}.hv-toolbar-text{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:13px;overflow:hidden}.hv-toolbar-text.bad{color:#c23b33}.hv-toolbar-btns{flex:none;gap:4px;display:flex}.hv-toolbar .hv-tool{box-shadow:none;padding:5px 10px}.hv-fit-list{gap:4px;margin-top:8px;display:grid}.hv-fit-item{border:1px solid var(--line);font:13px var(--sans);color:var(--ink);cursor:pointer;text-align:left;background:#fff;border-radius:8px;justify-content:space-between;gap:8px;padding:9px 12px;display:flex}.hv-fit-item:hover{border-color:#c9c6be}.hv-fit-size{color:var(--muted)}.hv-panel-cta{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px;display:flex}.hv-cta-panel{background:var(--accent);color:#fff;font:600 14px var(--sans);cursor:pointer;border:0;border-radius:8px;padding:9px 16px}.hv-cta-panel:hover{filter:brightness(1.06)}.hv-labels{pointer-events:none;position:absolute;inset:0}.hv-room{font:11px var(--sans);color:#3c3c40;opacity:0;white-space:nowrap;pointer-events:none;cursor:pointer;background:#f5f4f0db;border:0;border-radius:3px;padding:2px 7px;transition:opacity .2s;position:absolute;top:0;left:0}.hv-room.on{opacity:1;pointer-events:auto}.hv-room:hover{background:var(--ink);color:var(--paper)}@media (width<=820px){.hv-page{grid-template-rows:62vh auto;grid-template-columns:1fr;height:auto}.hv-panel{border-left:0;border-top:1px solid var(--line)}.hv-top{padding:0 16px}.hv-model{display:none}.hv-page:has(.hv-walking){grid-template-rows:86svh auto}}@media (width<=560px){.hv-toolbar{border-radius:14px;flex-wrap:wrap;padding:8px 8px 8px 12px;bottom:8px;left:8px;right:8px;transform:none}.hv-toolbar-text{white-space:normal;flex:100%;font-size:12px}.hv-sheet{border-radius:14px 14px 0 0;width:auto;max-height:58%;inset:auto 0 0;transform:translateY(12px)}.hv-cta{bottom:10px}.hv-cta-go{font-size:12px}.hv-walking .hv-jcard{width:min(260px,100% - 24px);padding:8px 11px;bottom:44px;left:12px}.hv-walking .hv-card-name{margin:0 0 2px;font-size:16px}.hv-walking .hv-card-info{font-size:12px;line-height:1.4}.hv-walkhint{font-size:11px;bottom:12px}}
