.tour{gap:12px;margin-top:28px;display:grid}.tour-rooms{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.tour-rooms-sep{color:var(--muted)}.tour-room{border-radius:var(--radius-control);min-height:44px;color:var(--ink-2);font:inherit;cursor:pointer;background:0 0;border:0;padding:8px 14px;font-weight:500}.tour-room:hover{color:var(--ink);text-underline-offset:4px;text-decoration:underline}.tour-room[aria-pressed=true]{background:var(--deep);color:var(--paper);text-decoration:none}.tour-room:focus-visible,.tour-arrow:focus-visible,.tour-dot:focus-visible,.tour-card-link:focus-visible{outline:3px solid var(--signal);outline-offset:2px}.tour .pano-viewer{max-width:none}.tour .pano-stage,.tour-placeholder{aspect-ratio:16/9;width:100%;min-width:0;height:auto;min-height:300px;max-height:70vh}.tour-placeholder{border-radius:var(--radius-stage);background:var(--deep);color:var(--paper);place-items:center;display:grid}.tour-arrow{color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;justify-items:center;gap:6px;padding:0;display:grid;position:absolute;top:0;left:0;transform:translate(-50%,-24px)}.tour-arrow-disc{width:48px;height:48px;transition:transform var(--dur-press) ease, background var(--dur-state) ease;background:#ffffffd1;border:2px solid #ffffffe6;border-radius:50%;place-items:center;display:grid;box-shadow:0 6px 18px -6px #0b0c0f8c}.tour-arrow:hover .tour-arrow-disc{background:#fff;transform:scale(1.08)}.tour-arrow-label{color:#fff;white-space:nowrap;background:#0b0c0fb8;border-radius:999px;padding:3px 10px;font-size:.875rem;font-weight:600}.tour-info{position:absolute;top:0;left:0;transform:translate(-50%,-50%)}.pano-spot:has(.tour-info[data-open=true]){z-index:2}.tour-dot{cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:36px;height:36px;padding:0;display:grid;position:relative}.tour-dot-core{background:var(--accent-vivid);border:2px solid #fff;border-radius:50%;width:16px;height:16px;position:relative;box-shadow:0 2px 8px #0b0c0f73}.tour-dot-core:after{content:"";border:2px solid #ffffffd9;border-radius:50%;animation:2.2s ease-out infinite tour-pulse;position:absolute;inset:-2px}.tour-info[data-open=true] .tour-dot-core:after{opacity:0;animation:none}@keyframes tour-pulse{0%{opacity:.9;transform:scale(1)}70%,to{opacity:0;transform:scale(2.4)}}.pano-spot .tour-info-name{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.tour-card{width:min(260px,72vw);color:var(--ink);text-align:start;background:#fff;border-radius:10px;padding:12px 14px;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 10px 30px -12px #0b0c0f80}.tour-card[hidden]{display:none}.pano-spot[data-upper=true] .tour-card{top:calc(100% + 8px);bottom:auto}.pano-spot[data-side=left] .tour-card{left:0;transform:none}.pano-spot[data-side=right] .tour-card{left:auto;right:0;transform:none}.tour-card-title{margin:0;font-weight:600}.tour-card-text{color:var(--ink-2);margin:4px 0 8px;font-size:.9rem;line-height:1.5}.tour-card-link{color:var(--signal-ink);font-size:.9rem;font-weight:600}.pano-spot-list .tour-arrow,.pano-spot-list .tour-info,.pano-spot-list .tour-card{position:static;transform:none}.pano-spot-list .tour-arrow{align-items:center;display:inline-flex}.pano-spot-list .tour-arrow-disc{border-color:var(--line-strong);width:36px;height:36px}.pano-spot-list .tour-dot{width:auto;min-height:36px;color:var(--ink);font:inherit;gap:8px;padding-inline-end:8px;font-weight:600;display:inline-flex}.pano-spot-list .tour-card{border:1px solid var(--line);width:auto;box-shadow:none;margin-top:4px}@media (prefers-reduced-motion:reduce){.tour-dot-core:after{opacity:0;animation:none}.tour-arrow-disc{transition:none}}@media (forced-colors:active){.tour-room[aria-pressed=true]{color:highlighttext;background:highlight}.tour-dot-core,.tour-arrow-disc{border-color:canvastext}}.tour-index{max-width:760px;margin-top:40px}.tour-index h2{margin-bottom:12px;font-size:clamp(1.25rem,1.1rem + .5vw,1.5rem)}.tour-index>ul{gap:16px;margin:0;padding:0;list-style:none;display:grid}.tour-index ul ul{color:var(--ink-2);margin:6px 0 0;padding-inline-start:20px;line-height:1.6}.tour{scroll-margin-top:88px}.tour-types{flex-wrap:wrap;gap:8px;display:flex}.tour-type{border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--paper);min-height:44px;color:var(--ink);font:inherit;cursor:pointer;transition:background var(--dur-state) ease, border-color var(--dur-state) ease;padding:8px 20px;font-weight:600}.tour-type:hover{border-color:var(--ink)}.tour-type[aria-pressed=true]{border-color:var(--ink);background:var(--ink);color:var(--paper)}.tour-type:focus-visible,.tour-side-find:focus-visible,.tour-side-link:focus-visible{outline:3px solid var(--signal);outline-offset:2px}.tour-body{gap:16px;min-width:0;display:grid}.tour-frame{min-width:0}@media (min-width:1000px){.tour-body{grid-template-columns:minmax(0,1fr) 260px;align-items:start}}.tour-side{border:1px solid var(--line);background:var(--paper);border-radius:12px;min-width:0;padding:14px 16px}.tour-side-title{margin:0 0 8px;font-size:1rem;font-weight:700}.tour-side-list{margin:0;padding:0;list-style:none;display:grid}.tour-side-list li{border-top:1px solid var(--line);align-items:center;gap:6px;min-width:0;display:flex}.tour-side-list li:first-child{border-top:0}.tour-side-find{width:40px;height:40px;color:var(--accent-vivid);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.tour-side-find:hover{background:var(--surface-soft,#0000000d)}.tour-side-find:disabled{color:var(--muted);cursor:default}.tour-side-link{min-width:0;min-height:44px;color:var(--ink);flex:auto;align-content:center;padding:4px 0;font-weight:600;line-height:1.3;text-decoration:none;display:grid}.tour-side-link:hover{color:var(--signal-ink);text-underline-offset:3px;text-decoration:underline}.tour-side-kind{color:var(--muted);font-size:.8125rem;font-weight:400}@media (forced-colors:active){.tour-type[aria-pressed=true]{color:highlighttext;background:highlight}}.tour-index h3{margin:20px 0 8px;font-size:1.1rem}.tour-index-rooms{gap:12px;margin:0;padding:0;list-style:none;display:grid}
