/* Original viewer geometry, scoped and recolored for the Neo public shell. */
.aztour-published_3dtour * {box-sizing:border-box}
.aztour-published_3dtour #app {display:grid;grid-template-columns:320px 1fr;height:100%}
.aztour-published_3dtour .sidebar {padding:20px;border-right:1px solid var(--line);background:var(--surface);overflow:auto}
.aztour-published_3dtour .back-to-zen {display:inline-flex;align-items:center;gap:9px;min-height:42px;padding:10px 13px;border-radius:999px;color:var(--text);background:var(--az-accent-soft);border:1px solid var(--line);text-decoration:none;font-size:13px;font-weight:800;transition:transform .18s ease, background .18s ease, border-color .18s ease}
.aztour-published_3dtour .back-to-zen:hover {transform:translateY(-1px);background:var(--az-accent-soft);border-color:var(--line)}
.aztour-published_3dtour .sidebar > .back-to-zen {margin-bottom:18px}
.aztour-published_3dtour .floating-back-to-zen {position:absolute;top:16px;left:16px;z-index:80;box-shadow:var(--az-glass-shadow);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.aztour-published_3dtour .kicker {display:inline-block;background:var(--az-accent-soft);color:var(--accent);padding:8px 12px;border-radius:999px;font-size:12px;font-weight:700}
.aztour-published_3dtour h1 {font-size:24px;margin:14px 0 8px}
.aztour-published_3dtour .muted {color:var(--muted);font-size:14px}
.aztour-published_3dtour .section-title {margin-top:22px;margin-bottom:10px;font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:800}
.aztour-published_3dtour .list {display:grid;gap:10px;margin-top:10px}
.aztour-published_3dtour .item-link {text-decoration:none;color:inherit;display:block}
.aztour-published_3dtour .item {padding:12px;border-radius:14px;background:var(--surface);border:1px solid var(--line);cursor:pointer;transition:.15s ease}
.aztour-published_3dtour .item:hover {background:var(--surface);transform:translateY(-1px)}
.aztour-published_3dtour .item-title {font-weight:700;color:var(--text)}
.aztour-published_3dtour #view {position:relative;overflow:hidden;background:var(--az-accent-soft)}
.aztour-published_3dtour #facadePane {position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:16px;padding:24px;z-index:2}
.aztour-published_3dtour .facade-stage {position:relative;width:100%;max-width:1180px;height:690px;background:var(--surface);border:1px solid var(--line);border-radius:20px;overflow:hidden;display:flex;align-items:center;justify-content:center;box-shadow:var(--az-glass-shadow)}
.aztour-published_3dtour #facadeImage {display:block;width:100%;height:auto;max-height:690px;object-fit:contain;user-select:none;-webkit-user-drag:none}
.aztour-published_3dtour #facadeModel {display:block;width:100%;height:690px;min-height:690px;background:var(--az-accent-soft);user-select:none;-webkit-user-drag:none}
.aztour-published_3dtour .model-status {position:absolute;left:50%;top:50%;transform:translate(-50%, -50%);z-index:18;max-width:420px;padding:12px 14px;border-radius:12px;background:var(--surface);border:1px solid var(--line);color:var(--muted);font-size:13px;text-align:center;pointer-events:none}
.aztour-published_3dtour .model-status.is-hidden {display:none}
/* Floor regions are projected with the model; only the hovered name is visible. */
.aztour-published_3dtour #floorOverlay {position:absolute;inset:0;width:100%;height:100%;z-index:25;overflow:hidden;pointer-events:none}
.aztour-published_3dtour #floorOverlay polygon {fill:transparent;stroke:none;pointer-events:none}
.aztour-published_3dtour #floorTooltip {position:absolute;left:0;top:0;z-index:60;max-width:min(260px,calc(100% - 24px));padding:9px 13px;border-radius:13px;border:1px solid var(--az-glass-edge);background:var(--az-glass-solid);color:var(--az-text);box-shadow:var(--az-glass-shadow);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);font:500 13px/1.5 var(--az-font);overflow-wrap:anywhere;pointer-events:none}
.aztour-published_3dtour #floorTooltip[hidden] {display:none}
.aztour-published_3dtour .facade-model-hotspot {width:1px;height:1px;border:0;background:transparent;opacity:0;pointer-events:none}
.aztour-published_3dtour .floor-selection-hint {position:absolute;inset-inline-start:16px;bottom:16px;z-index:40;max-width:calc(100% - 220px);padding:10px 13px;border-radius:14px;background:color-mix(in srgb,var(--az-glass-solid) 86%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:var(--az-text);pointer-events:none}
.aztour-published_3dtour .floor-selection-hint strong {display:block;font:500 13px/1.5 var(--az-font)}
.aztour-published_3dtour .floor-selection-hint span {display:block;margin-top:3px;font:400 11px/1.6 var(--az-font);color:var(--az-muted)}
.aztour-published_3dtour .view-actions {position:absolute;inset-inline-end:16px;bottom:16px;display:flex;gap:8px;z-index:55}
.aztour-published_3dtour .view-action {border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:12px;padding:10px 12px;font-size:13px;cursor:pointer}
.aztour-published_3dtour .view-action:hover {background:var(--surface)}
@media (max-width: 1100px){.aztour-published_3dtour .facade-stage, .aztour-published_3dtour #facadeModel {height:540px;min-height:540px}
.aztour-published_3dtour #facadeImage {max-height:540px}

        }
@media (max-width: 900px){.aztour-published_3dtour #app {grid-template-columns:1fr}
.aztour-published_3dtour .sidebar {display:none}
.aztour-published_3dtour .floating-back-to-zen {display:inline-flex}

        }
@media (min-width: 901px){.aztour-published_3dtour .floating-back-to-zen {display:none}

        }
@media (max-width: 767.98px){.aztour-published_3dtour #facadePane {padding:14px}
.aztour-published_3dtour .facade-stage, .aztour-published_3dtour #facadeModel {height:420px;min-height:420px}
.aztour-published_3dtour #facadeImage {max-height:420px}
.aztour-published_3dtour .view-actions {inset-inline-end:12px;bottom:12px}
.aztour-published_3dtour .view-actions {justify-content:flex-end;bottom:12px}

        }

    
/* Neo glass workspace, with all media mapping kept in the original stages. */
.aztour-published_3dtour #app { height:100%; min-height:0; grid-template-columns: minmax(230px,280px) minmax(0,1fr); gap:16px; }
.aztour-published_3dtour .sidebar { display:block; min-width:0; padding:22px; background:var(--az-glass); border:1px solid var(--az-glass-edge); border-radius:var(--az-r-card); box-shadow:var(--az-glass-shadow); backdrop-filter:blur(22px); }
.aztour-published_3dtour h1 { font-size:clamp(20px,2vw,27px); font-weight:600; line-height:1.3; overflow-wrap:anywhere; }
.aztour-published_3dtour .kicker { font-size:11px; font-weight:500; color:var(--az-accent-text); padding:7px 11px; }
.aztour-published_3dtour .section-title { text-transform:none; letter-spacing:0; font-size:12px; font-weight:500; margin-top:22px; }
.aztour-published_3dtour .muted { font-size:13px; line-height:1.65; }
.aztour-published_3dtour .list { gap:8px; }
.aztour-published_3dtour .item { border:1px solid transparent; border-radius:15px; background:var(--az-raised); padding:12px 14px; transition:background .18s ease,border-color .18s ease,transform .18s ease; }
.aztour-published_3dtour .item:hover,.aztour-published_3dtour .item.active { background:var(--az-accent-soft); border-color:var(--az-glass-edge); box-shadow:none; }
.aztour-published_3dtour .item-title { font-size:14px; font-weight:600; overflow-wrap:anywhere; }
.aztour-published_3dtour .item-subtitle { font-size:12px; }
.aztour-published_3dtour #view { min-width:0; min-height:0; height:100%; border:1px solid var(--az-glass-edge); border-radius:var(--az-r-card); background:var(--az-glass); box-shadow:var(--az-glass-shadow); backdrop-filter:blur(22px); }
.aztour-published_3dtour .back-to-zen,.aztour-published_3dtour .btn,.aztour-published_3dtour .view-action { min-height:40px; border:1px solid var(--az-glass-edge); background:var(--az-accent-soft); color:var(--az-accent-text); border-radius:var(--az-r-control); font:500 12px/1.4 var(--az-font); padding:10px 13px; }
.aztour-published_3dtour .back-to-zen:hover,.aztour-published_3dtour .btn:hover,.aztour-published_3dtour .view-action:hover { background:var(--az-raised); border-color:var(--az-accent); }
.aztour-published_3dtour .item-link:focus-visible,.aztour-published_3dtour .back-to-zen:focus-visible,.aztour-published_3dtour .btn:focus-visible,.aztour-published_3dtour .view-action:focus-visible { outline:2px solid var(--az-accent); outline-offset:3px; }
.aztour-published_3dtour .viewer-empty-state { background:var(--az-glass); backdrop-filter:blur(12px); }
.aztour-published_3dtour .viewer-empty-card { background:var(--az-glass-solid); border:1px solid var(--az-glass-edge); padding:26px; border-radius:var(--az-r-card); box-shadow:var(--az-glass-shadow); }
.aztour-published_3dtour .viewer-empty-card h3 { color:var(--az-text); font-size:22px; line-height:1.35; }
.aztour-published_3dtour .viewer-empty-card p { color:var(--az-muted); font-size:13px; line-height:1.65; }
@media (max-width:1000px) {
  .aztour-published_3dtour #app { grid-template-columns:minmax(205px,240px) minmax(0,1fr); gap:12px; }
  .aztour-published_3dtour .sidebar { padding:16px; }
}
@media (max-width:760px) {
  .aztour-main.aztour-published_3dtour { height:auto; min-height:0; }
  .aztour-published_3dtour #app { display:flex; flex-direction:column; height:auto; gap:12px; }
  .aztour-published_3dtour .sidebar { display:block; overflow:visible; padding:16px; }
  .aztour-published_3dtour .sidebar h1 { font-size:20px; margin:9px 0 5px; }
  .aztour-published_3dtour .sidebar .section-title { margin:12px 0 7px; }
  .aztour-published_3dtour .sidebar .list { display:flex; overflow-x:auto; gap:8px; padding:2px 2px 7px; margin-top:0; }
  .aztour-published_3dtour .sidebar .item-link { flex:0 0 152px; }
  .aztour-published_3dtour .sidebar .back-to-zen { margin-bottom:10px; }
  .aztour-published_3dtour #view { height:64dvh; min-height:370px; width:100%; flex:none; }
}
@media (prefers-reduced-motion:reduce) {
  .aztour-published_3dtour .item,.aztour-published_3dtour .back-to-zen,.aztour-published_3dtour .view-action { transition:none; }
}

.aztour-published_3dtour #facadePane { padding:12px; gap:0; }
.aztour-published_3dtour .facade-stage { flex:1; height:100%; min-height:0; max-height:100%; max-width:none; border-radius:20px; background:transparent; box-shadow:none; }
.aztour-published_3dtour #facadeModel { height:100%; min-height:0; background:transparent; }
.aztour-published_3dtour #facadeImage { max-height:100%; width:100%; height:auto; }
.aztour-published_3dtour #facadePane > .muted { font-size:12px; text-align:center; }
.aztour-published_3dtour .model-status { color:var(--az-text); background:var(--az-glass-solid); border-color:var(--az-glass-edge); max-width:calc(100% - 32px); }
.aztour-published_3dtour .floating-back-to-zen { display:none; }
@media(max-width:1000px) {
  .aztour-published_3dtour .floor-selection-hint { top:12px; bottom:auto; inset-inline:12px; max-width:none; width:fit-content; }
}
@media(max-width:760px) {
  .aztour-published_3dtour #facadePane { padding:8px; }
  .aztour-published_3dtour .view-actions { bottom:12px; inset-inline-end:12px; inset-inline-start:auto; }
  .aztour-published_3dtour .floor-selection-hint { padding:8px 10px; }
  .aztour-published_3dtour .floor-selection-hint strong { font-size:12px; }
}

/* Invisible calibration and hit regions must never intercept rotation or pinch. */
.aztour-published_3dtour .facade-stage.is-preparing #facadeModel { opacity:0; pointer-events:none; }
.aztour-published_3dtour .facade-stage.has-floor-hover #facadeModel,
.aztour-published_3dtour .facade-stage.has-floor-hover #facadeImage { cursor:pointer; }
.aztour-published_3dtour .model-floor-region { fill:transparent; stroke:transparent; pointer-events:none; }
.aztour-published_3dtour #floorOverlay .model-floor-region.is-hovered { fill:color-mix(in srgb,var(--az-accent) 10%,transparent); stroke:color-mix(in srgb,var(--az-accent) 45%,transparent); stroke-width:1; vector-effect:non-scaling-stroke; }
.aztour-published_3dtour .model-floor-region[hidden] { display:none; }
