/* QR-first tour: quiet controls, an unobstructed view and bounded sheets. */
#pano,.pnlm-container,.pnlm-render-container{background:#20251f}
.load-state{inset:0;top:0;left:0;transform:none;max-width:none;border-radius:0;background:radial-gradient(ellipse at 50% 40%,#354033,#171d18 70%);z-index:8;display:flex;flex-direction:column;justify-content:center;gap:15px;padding:24px;text-align:center;pointer-events:auto}
.loading-brand{position:relative;width:clamp(84px,20vmin,144px);aspect-ratio:1;border-radius:50%;box-shadow:0 0 0 8px #dac79e08,0 0 0 9px #dac79e25,0 20px 60px #0005;margin-bottom:10px;overflow:hidden}
.loading-brand img,.loading-brand video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.loading-wordmark{font-size:21px;letter-spacing:.27em;font-weight:600}.loading-wordmark small{display:block;font-size:8px;letter-spacing:.2em;font-weight:400;color:#c8bea9;margin:10px 0}
#load-label{font-size:12px;color:#d4d8ce}.load-state .spinner{width:18px;height:18px}
.view-controls{position:fixed;z-index:3;right:max(28px,env(safe-area-inset-right));top:44%;display:flex;flex-direction:column;gap:2px;padding:4px;border:1px solid #e7dcc338;border-radius:30px;background:#20281fe6;backdrop-filter:blur(14px);box-shadow:0 8px 30px #0003}
.view-controls button{width:44px;height:44px;border:0;background:transparent;padding:0;border-radius:50%;font-size:24px;line-height:1}.view-controls button:hover{background:#e7dcc320}#wide-view{font-size:21px;border-top:1px solid #e7dcc32b;border-radius:0 0 24px 24px}
body.intro-active .view-controls{visibility:hidden}body[data-panel] .view-controls{visibility:hidden}
#full{font-size:26px;background:#20281fe6;border-color:#e7dcc349}
#floor-panel{display:flex;flex-direction:column;gap:14px;overflow:hidden;max-height:calc(100dvh - 32px);bottom:16px;padding:22px}
#floor-panel .panel-heading,#floor-panel .floor-options,#floor-panel .floor-preview,#floor-panel .panel-intro{margin:0}
#floor-panel .panel-heading,#floor-panel .floor-options,#enter-home{flex-shrink:0}
#floor-panel .floor-preview{min-height:0;overflow:hidden;flex:0 1 auto}
#floor-panel #enter-home{margin:0;min-height:48px;font-size:13px}
#floor-panel .panel-intro{font-size:11px;line-height:1.5}
@media(max-width:900px){
 .tour-dock{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end;left:18px;right:18px;bottom:calc(14px + var(--safe-bottom))}
 .room-context{min-width:0}.room-context h1{font-size:26px;max-width:none}
 .dock-actions{max-width:none!important;display:flex;flex-wrap:nowrap;gap:7px;margin:0;grid-column:1 / -1;order:3}
 .dock-actions button{flex:1;padding:10px 12px;min-height:46px;font-size:12px}
 .dock-actions #next-room{order:0;font-size:11px;flex:1.4}.dock-actions #back-room{display:none!important}
 .point-nav{width:auto;grid-column:1 / -1;order:2;justify-content:flex-start;background:#20281fd9;border-radius:12px;padding:3px;gap:3px}
 .point-nav button{flex:1;min-height:44px;font-size:11px;padding:7px 9px}
 .view-controls{right:18px;top:34%;}
 .view-hint{bottom:calc(195px + var(--safe-bottom))}
 .panel:not(.material-panel){bottom:calc(10px + var(--safe-bottom));max-height:calc(100dvh - 86px - var(--safe-bottom))}
 #floor-panel{bottom:calc(10px + var(--safe-bottom));max-height:calc(100dvh - 86px - var(--safe-bottom))}
}
@media(max-width:600px){
 .topbar{top:max(12px,env(safe-area-inset-top));left:max(14px,env(safe-area-inset-left));right:max(14px,env(safe-area-inset-right))}
 .brand{font-size:15px;letter-spacing:.19em}.brand span{font-size:7px}.top-actions{gap:6px}#building-open{width:44px;overflow:hidden;font-size:0;padding:0;border-radius:50%}#building-open:before{content:'⌂';font-size:23px}
 .journey{top:68px;left:14px;max-width:calc(100% - 28px);padding:2px 4px}.journey button{font-size:9px;min-height:36px;padding:6px 9px}.journey button span{font-size:8px;margin-right:4px}
 body[data-scene=interior] .journey{display:none}
 .tour-dock{left:12px;right:12px;gap:8px;bottom:calc(12px + var(--safe-bottom));padding:13px;border:1px solid #e7dcc32c;border-radius:20px;background:linear-gradient(130deg,#263025e8,#1a211de8);box-shadow:0 12px 45px #0005;backdrop-filter:blur(18px)}
 .room-context h1{font-size:23px;margin:3px 0;line-height:1.15}.room-context .eyebrow{font-size:7px;letter-spacing:.18em}.room-context #point-note{font-size:10px}#visit-context{display:none}
 .dock-actions{gap:6px}.dock-actions button{font-size:11px;padding:8px;min-height:44px;border-radius:10px}.dock-actions button>span:first-child{font-size:15px;margin-right:3px}.dock-actions #next-room{display:none!important}
 .point-nav{gap:3px;padding:3px;border-color:#e7dcc322}.point-nav button{font-size:10px;padding:6px 5px;min-height:44px;border-radius:8px}
 .view-controls{right:14px;top:calc(50% - 92px);padding:3px}.view-controls button{width:44px;height:44px}.view-hint{font-size:10px;bottom:calc(208px + var(--safe-bottom));max-width:calc(100% - 35px)}
 body[data-scene=exterior] .tour-dock{grid-template-columns:1fr auto;align-items:center}body[data-scene=exterior] .dock-actions{grid-column:2;grid-row:1}body[data-scene=exterior] .room-context h1{font-size:25px;max-width:190px}body[data-scene=exterior] #floor-open{padding:10px 13px}body[data-scene=exterior] #floor-open:after{margin-left:5px}
 body[data-panel] .tour-dock,body[data-panel] .view-controls{visibility:hidden}
 #floor-panel{padding:18px;gap:13px;border-radius:22px;background:#20281ff7}#floor-panel h2{font-size:24px}#floor-panel .floor-options{gap:7px}#floor-panel .floor-options button{min-height:48px;padding:8px;font-size:12px}#floor-panel .floor-preview{padding:10px;gap:12px}#floor-panel .floor-preview img{width:65px;height:52px}#floor-panel .floor-preview>span{font-size:13px}#floor-panel .floor-preview span span{font-size:10px}
}
@media(max-height:560px){
 #floor-panel{gap:9px;padding:14px;max-height:calc(100dvh - 24px);bottom:12px}#floor-panel .panel-heading{margin:0}#floor-panel .floor-options button{min-height:44px}#floor-panel h2{font-size:21px}#floor-panel .floor-preview img{height:40px;width:56px}#floor-panel .floor-preview{padding:8px}#floor-panel .panel-intro{font-size:10px}#floor-panel #enter-home{min-height:44px}
 .view-controls{top:83px;right:12px}.view-controls button{height:44px}
 .journey{top:62px}
}
@media(max-height:420px) and (min-width:601px){
 .tour-dock{display:flex;flex-wrap:nowrap;gap:9px;left:15px;right:15px;bottom:12px}.room-context{flex:1;min-width:115px}.room-context h1{font-size:20px}.point-nav{order:0;flex:1}.dock-actions{order:0}.dock-actions button{flex:none}#visit-context,.room-context .eyebrow{display:none}.view-controls{flex-direction:row;top:67px;right:15px}#wide-view{border-top:0;border-left:1px solid #e7dcc32b;border-radius:0 24px 24px 0}body[data-scene=interior] .journey{display:none}
}
@media(max-width:600px) and (max-height:420px){
 .tour-dock{padding:8px 10px;gap:5px;bottom:8px}.room-context h1{font-size:20px}.room-context .eyebrow,#visit-context{display:none}.view-controls{top:67px;flex-direction:row;right:12px}#wide-view{border:0;border-left:1px solid #e7dcc32b;border-radius:0 24px 24px 0}.journey{display:none}.view-hint{display:none}
}
