* {
            user-select: none;
            -webkit-user-select: none;
        }
        body {
            font-family: 'Poppins', sans-serif;
            background-color: #06040a;
            color: #fff;
            overflow: hidden;
            margin: 0;
            padding: 0;
        }
        .font-cinzel { font-family: 'Cinzel', serif; }
        .font-bangla { font-family: 'Tiro Bangla', serif; }

        ::-webkit-scrollbar { width: 6px; }
        ::-webkit-scrollbar-track { background: rgba(0,0,0,0.4); }
        ::-webkit-scrollbar-thumb { background: #d4af37; border-radius: 4px; }

        .glass-panel {
            background: rgba(18, 9, 26, 0.88);
            backdrop-filter: blur(16px);
            -webkit-backdrop-filter: blur(16px);
            border: 1px solid rgba(212, 175, 55, 0.35);
            box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.7);
        }

        .glass-btn {
            background: linear-gradient(135deg, rgba(212, 175, 55, 0.25), rgba(184, 134, 11, 0.45));
            border: 1px solid rgba(255, 215, 0, 0.45);
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        }
        .glass-btn:hover, .glass-btn.active-mode, .glass-btn.active-dhaak {
            background: linear-gradient(135deg, rgba(255, 215, 0, 0.55), rgba(212, 175, 55, 0.85));
            box-shadow: 0 0 18px rgba(255, 215, 0, 0.7);
            transform: translateY(-2px);
            color: #fff;
        }

        .curtain-left, .curtain-right {
            position: absolute;
            top: 0;
            width: 50.5%;
            height: 100%;
            background: radial-gradient(circle at center, #800000 0%, #300000 70%, #1a0000 100%);
            z-index: 50;
            transition: transform 2.2s cubic-bezier(0.77, 0, 0.175, 1);
            background-image: radial-gradient(rgba(212, 175, 55, 0.18) 1.5px, transparent 1.5px);
            background-size: 24px 24px;
        }
        .curtain-left { left: 0; transform-origin: left; border-right: 3px solid #d4af37; }
        .curtain-right { right: 0; transform-origin: right; border-left: 3px solid #d4af37; }

        .curtains-open .curtain-left { transform: translateX(-100%); }
        .curtains-open .curtain-right { transform: translateX(100%); }

        .hotspot-tag {
            position: absolute;
            transform: translate(-50%, -50%);
            cursor: pointer;
            z-index: 20;
            transition: transform 0.2s ease, opacity 0.3s ease;
        }
        .hotspot-tag:hover {
            transform: translate(-50%, -50%) scale(1.15);
        }

        .pulse-ring {
            position: absolute;
            width: 100%;
            height: 100%;
            border-radius: 50%;
            border: 2px solid #ffd700;
            animation: pulse 2s infinite ease-out;
        }
        @keyframes pulse {
            0% { transform: scale(0.8); opacity: 1; }
            100% { transform: scale(2.2); opacity: 0; }
        }

        .walk-marker-tag {
            position: absolute;
            transform: translate(-50%, -50%);
            cursor: pointer;
            z-index: 22;
            transition: opacity 0.3s ease, transform 0.2s ease;
        }
        .walk-marker-tag:hover {
            transform: translate(-50%, -50%) scale(1.25);
        }

        .glow-text {
            text-shadow: 0 0 10px rgba(255, 215, 0, 0.8), 0 0 22px rgba(212, 175, 55, 0.6);
        }
        
        #petal-canvas {
            pointer-events: none;
            position: absolute;
            top: 0;
            left: 0;
            z-index: 30;
        }

        .brand-badge {
            background: linear-gradient(135deg, rgba(30, 15, 5, 0.9), rgba(60, 30, 5, 0.95));
            border: 1px solid rgba(255, 215, 0, 0.5);
            box-shadow: 0 4px 20px rgba(0,0,0,0.8);
        }

        .tanishq-alpha-badge {
            background: rgba(18, 9, 20, 0.75);
            backdrop-filter: blur(14px);
            -webkit-backdrop-filter: blur(14px);
            border: 1px solid rgba(255, 215, 0, 0.45);
            box-shadow: 0 8px 32px rgba(0, 0, 0, 0.7), inset 0 0 15px rgba(255, 215, 0, 0.18);
        }

        .tanishq-gold-glow {
            filter: drop-shadow(0 0 8px rgba(255, 215, 0, 0.8));
        }

        /* VR Cardboard Divider Overlay */
.vr-divider {
            position: absolute;
            top: 0;
            left: 50%;
            width: 2px;
            height: 100%;
            background: rgba(255, 255, 255, 0.4);
            z-index: 35;
            pointer-events: none;
            box-shadow: 0 0 10px rgba(255,255,255,0.8);
}

/* Refined experience shell */
button:focus-visible,[role="button"]:focus-visible{outline:2px solid #f7cf4a;outline-offset:3px}
.interaction-hint{position:fixed;left:50%;top:88px;z-index:39;transform:translateX(-50%);display:flex;align-items:center;gap:9px;padding:9px 12px;border:1px solid rgba(247,207,74,.35);border-radius:999px;background:rgba(12,7,17,.78);backdrop-filter:blur(14px);color:#f7dda0;font-size:11px;box-shadow:0 10px 35px rgba(0,0,0,.35);transition:opacity .45s ease,transform .45s ease;white-space:nowrap}.interaction-hint.visible{opacity:1;transform:translate(-50%,8px)}.interaction-hint button{border:0;background:rgba(255,255,255,.08);color:#fff;width:20px;height:20px;border-radius:50%;cursor:pointer;line-height:18px}.ui-hidden #main-header,.ui-hidden #main-controls,.ui-hidden #tanishq-corner-badge,.ui-hidden #interaction-hint{opacity:0!important;pointer-events:none!important}.ui-restore{position:fixed;right:16px;top:16px;z-index:45;width:42px;height:42px;border-radius:12px;border:1px solid rgba(255,215,0,.45);background:rgba(18,9,26,.85);color:#ffd34e;display:none;place-items:center;cursor:pointer}.ui-hidden .ui-restore{display:grid}.glass-panel{box-shadow:0 14px 42px rgba(0,0,0,.44),inset 0 1px rgba(255,255,255,.04)}
@media(max-width:900px){#main-header{flex-direction:column;align-items:stretch;padding:10px}.interaction-hint{top:128px;max-width:calc(100vw - 24px);white-space:normal;text-align:center}.tanishq-alpha-badge{display:none}#main-header>div:last-child{width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px;scrollbar-width:none}#main-header>div:last-child::-webkit-scrollbar{display:none}#main-header>div:last-child button{flex:0 0 auto}#main-controls{bottom:10px;width:calc(100% - 16px)}#main-controls>div{flex-direction:column}.view-node-btn{min-height:38px}}
@media(max-width:520px){#intro-card{max-height:92vh;overflow:auto}.interaction-hint{font-size:9px;top:126px}#active-mode-banner{top:134px;width:90%;text-align:center}#main-controls .flex.items-center.gap-1.border-l{width:100%;justify-content:center;border-left:0;border-top:1px solid rgba(212,175,55,.25);padding-top:7px}.hotspot-tag{transform:translate(-50%,-50%) scale(.9)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* Connected exterior-to-interior tour */
.scene-transition{position:fixed;inset:0;z-index:48;background:radial-gradient(circle at center,rgba(93,35,8,.9),rgba(5,3,8,.98));display:grid;place-items:center;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .5s ease,visibility .5s}.scene-transition.active{opacity:1;visibility:visible;pointer-events:auto}.scene-transition>div{text-align:center;color:#f7d66d}.scene-transition i{display:block;font-size:34px;margin-bottom:12px;animation:portalPulse 1.1s ease-in-out infinite}.scene-transition strong{display:block;font:700 20px Cinzel,serif}.scene-transition span{display:block;color:#decfa8;font-size:10px;margin-top:6px;letter-spacing:.08em;text-transform:uppercase}.scene-portal{position:absolute;z-index:26;transform:translate(-50%,-50%);pointer-events:auto;cursor:pointer}.scene-portal-inner{position:relative;display:flex;flex-direction:column;align-items:center;color:#fff;filter:drop-shadow(0 7px 14px rgba(0,0,0,.75))}.scene-portal-arrow{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#f7cf4a,#d36d16);border:3px solid #fff2b6;color:#2d1304;font-size:20px;box-shadow:0 0 0 7px rgba(247,207,74,.15),0 0 34px rgba(247,174,42,.85);animation:portalBounce 1.5s ease-in-out infinite}.scene-portal-label{margin-top:9px;padding:8px 13px;border:1px solid rgba(255,220,104,.7);border-radius:999px;background:rgba(20,8,8,.86);backdrop-filter:blur(10px);font:700 11px Cinzel,serif;white-space:nowrap}.scene-portal small{display:block;margin-top:4px;color:#f5d98b;font-size:8px;text-transform:uppercase;letter-spacing:.12em}.outside-mode #main-controls{opacity:.45}.outside-mode #main-controls .view-node-btn,.outside-mode #main-controls #toggle-walk-markers-btn{pointer-events:none}.outside-mode #main-controls:after{content:"Enter the pandal to unlock interior navigation";position:absolute;left:50%;bottom:calc(100% + 7px);transform:translateX(-50%);padding:5px 10px;border-radius:999px;background:rgba(12,7,17,.78);color:#e8d39a;font-size:8px;white-space:nowrap}.scene-chip{display:inline-flex;align-items:center;gap:5px;color:#f6cf58}@keyframes portalPulse{50%{transform:scale(1.12);filter:drop-shadow(0 0 12px #f7cf4a)}}@keyframes portalBounce{50%{transform:translateY(-7px);box-shadow:0 0 0 11px rgba(247,207,74,.08),0 0 42px rgba(247,174,42,.95)}}
