*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--gold: #d4a843;--gold-light: #f0cc7a;--gold-dark: #a07820;--cream: #fdf5e4;--saffron: #e06020;--maroon: #6b0f10;--glass-bg: rgba(255,245,210,.07);--glass-border: rgba(212,168,67,.25);--text-gold: #e8c870;--text-cream: #fdf0d0;--font-title: "Cinzel", serif;--font-body: "Cormorant Garamond", serif;--font-elegant: "Playfair Display", serif;--font-hindi: "Noto Sans Devanagari", "Cormorant Garamond", serif}html,body{width:100%;height:100%;overflow:hidden;background:#000;font-family:var(--font-body);color:var(--text-cream);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;touch-action:manipulation}#mainCanvas{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:0}.letterbox{position:fixed;left:0;right:0;height:64px;background:#000;z-index:45;pointer-events:none;transform:scaleY(0);transition:transform .65s cubic-bezier(.4,0,.2,1)}#letterboxTop{top:0;transform-origin:top}#letterboxBot{bottom:0;transform-origin:bottom}.letterbox.active{transform:scaleY(1)}#divineFlash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:radial-gradient(ellipse at center,#fff9e0,#ffd080);opacity:0;pointer-events:none}#loader{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:radial-gradient(ellipse at center,#1a0e00,#000);display:flex;align-items:center;justify-content:center}.loader-inner{text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px}.loader-om{font-size:clamp(3rem,9vw,4.5rem);animation:om-pulse 2s ease-in-out infinite;filter:drop-shadow(0 0 24px #d4a843)}@keyframes om-pulse{0%,to{transform:scale(1);filter:drop-shadow(0 0 20px #d4a843)}50%{transform:scale(1.16);filter:drop-shadow(0 0 46px #f0cc7a)}}.loader-text{font-family:var(--font-title);font-size:clamp(.85rem,3vw,1.2rem);color:var(--gold-light);letter-spacing:4px;text-transform:uppercase}.loader-bar-wrap{width:min(220px,62vw);height:3px;background:#d4a84326;border-radius:999px;overflow:hidden}.loader-bar{height:100%;width:0%;background:linear-gradient(90deg,var(--gold-dark),var(--gold-light));border-radius:999px;transition:width .08s linear;box-shadow:0 0 12px var(--gold)}.loader-sub{font-family:var(--font-hindi);font-size:clamp(.75rem,2vw,.9rem);color:#f0cc7a80;letter-spacing:2px;font-style:italic}#enterBtn{background:linear-gradient(135deg,#d4a84333,#d4a84366);border:1px solid var(--gold);color:var(--text-cream);font-family:var(--font-title);font-size:clamp(.8rem,2vw,1.1rem);letter-spacing:2px;text-transform:uppercase;padding:12px 28px;border-radius:50px;cursor:pointer;transition:all .4s;box-shadow:0 0 20px #d4a84333;margin-top:5px}#enterBtn:hover{background:var(--gold);color:#000;font-weight:700;transform:scale(1.05);box-shadow:0 0 35px #d4a84399}#skipBtn{position:fixed;top:20px;left:20px;z-index:5000;background:#0006;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(212,168,67,.3);color:#d4a843cc;font-family:var(--font-title);font-size:.75rem;letter-spacing:1px;padding:8px 16px;border-radius:4px;cursor:pointer;transition:all .3s;text-transform:uppercase}#skipBtn:hover{background:#d4a84326;border-color:var(--gold);color:#fff}.hidden{display:none!important}#templeOverlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;align-items:center;justify-content:center;pointer-events:none;background:radial-gradient(ellipse at 50% 60%,rgba(180,100,20,.12) 0%,transparent 65%)}.temple-shloka-wrap{text-align:center;padding:20px;display:flex;flex-direction:column;align-items:center;gap:10px;max-width:720px;width:100%}.shloka-om{font-size:clamp(2rem,6vw,3.2rem);filter:drop-shadow(0 0 20px gold);margin-bottom:6px;animation:gentle-float 4s ease-in-out infinite}.shloka-line{font-family:var(--font-hindi);font-size:clamp(1rem,3.5vw,1.9rem);font-weight:500;color:var(--gold-light);letter-spacing:2px;line-height:1.6;text-shadow:0 0 30px rgba(240,204,122,.7),0 0 60px rgba(212,168,67,.3);padding:0 16px}.shloka-transl{font-family:var(--font-body);font-size:clamp(.75rem,1.8vw,.95rem);color:#f0cc7a8c;font-style:italic;letter-spacing:3px;margin-top:4px}.blessing-block{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:16px}.blessing-divider{width:120px;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);margin-bottom:8px}.blessing-small{font-family:var(--font-body);font-size:clamp(.8rem,2vw,1rem);color:var(--gold);letter-spacing:4px;font-style:italic}.blessing-lord{font-family:var(--font-title);font-size:clamp(2rem,6vw,3.8rem);color:transparent;background:linear-gradient(135deg,#c8963c,#f5d878,#f0cc7a,#c8963c);-webkit-background-clip:text;background-clip:text;filter:drop-shadow(0 0 25px rgba(240,204,122,.9));letter-spacing:6px}.blessing-hindi{font-family:var(--font-hindi);font-size:clamp(1rem,2.5vw,1.3rem);color:#f0cc7ab3;letter-spacing:2px}#cinematicInvite{position:fixed;top:0;right:0;bottom:0;left:0;z-index:35;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:80px 24px;pointer-events:none;background:radial-gradient(ellipse at center,rgba(30,18,0,.55) 0%,transparent 70%)}.ci-divider{width:0%;height:1px;background:linear-gradient(90deg,transparent,var(--gold),transparent);margin:4px auto;opacity:0}.ci-top{font-family:var(--font-hindi);font-size:clamp(.7rem,1.8vw,1rem);color:#f0cc7aa6;letter-spacing:2px;font-style:italic;opacity:0;transform:translateY(20px);text-align:center;padding:0 20px}.ci-main{font-family:var(--font-title);font-size:clamp(1.7rem,6.5vw,4.8rem);color:transparent;background:linear-gradient(135deg,#c8963c,#f5d878,#f0cc7a);-webkit-background-clip:text;background-clip:text;letter-spacing:3px;opacity:0;transform:scale(.85);filter:drop-shadow(0 0 30px rgba(212,168,67,.8));text-align:center}.ci-main-hindi{font-family:var(--font-hindi);font-size:clamp(1rem,3vw,1.8rem);color:var(--gold-light);opacity:0;transform:translateY(15px);text-align:center;letter-spacing:2px}.ci-mid{font-family:var(--font-elegant);font-size:clamp(.95rem,2.5vw,1.5rem);color:var(--text-cream);letter-spacing:3px;opacity:0;transform:translateY(15px);font-style:italic;text-align:center}.ci-names{display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:center;font-family:var(--font-title);font-size:clamp(1rem,3.2vw,2rem);color:var(--gold-light);letter-spacing:2px;opacity:0;transform:translateY(15px);text-shadow:0 0 28px rgba(212,168,67,.6);padding:0 16px}.ci-dot{color:var(--gold);filter:drop-shadow(0 0 6px var(--gold))}.ci-date-hint{font-family:var(--font-hindi);font-size:clamp(.7rem,1.8vw,.95rem);color:#f0cc7a80;letter-spacing:2px;opacity:0;text-align:center}#overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;pointer-events:none;display:flex;flex-direction:column;align-items:center;justify-content:center}.scene-text{text-align:center;position:absolute;width:100%;padding:16px}#titleSection{display:flex;flex-direction:column;align-items:center;gap:clamp(6px,1.5vw,16px);pointer-events:none}.title-badge{font-family:var(--font-hindi);font-size:clamp(.65rem,1.7vw,.9rem);color:var(--gold);letter-spacing:4px;text-transform:uppercase}.anniversary-title{font-family:var(--font-title);font-size:clamp(2.8rem,11vw,7.5rem);font-weight:700;color:transparent;background:linear-gradient(135deg,#c8963c,#f5d878,#f0cc7a,#c8963c);-webkit-background-clip:text;background-clip:text;filter:drop-shadow(0 0 28px rgba(212,168,67,.6));line-height:1;letter-spacing:2px}.anniversary-title .th{font-size:.37em;vertical-align:super;-webkit-text-fill-color:var(--gold-light)}.celebration-word{font-family:var(--font-title);font-size:clamp(.85rem,2.8vw,1.7rem);letter-spacing:clamp(5px,2.5vw,12px);color:var(--gold-light);text-transform:uppercase}.couple-names{display:flex;align-items:center;gap:clamp(8px,2vw,24px);flex-wrap:wrap;justify-content:center;margin-top:4px}.name-one,.name-two{font-family:var(--font-elegant);font-size:clamp(.95rem,3vw,1.8rem);font-style:italic;color:var(--cream);text-shadow:0 0 18px rgba(255,245,210,.3)}.ampersand{font-family:var(--font-elegant);font-size:clamp(1.3rem,3.5vw,2.4rem);color:var(--gold);filter:drop-shadow(0 0 10px var(--gold))}#eventDetails{position:fixed;bottom:clamp(10px,3.5vw,55px);left:50%;transform:translate(-50%);display:flex;gap:clamp(6px,1.5vw,16px);z-index:15;flex-wrap:wrap;justify-content:center;padding:0 14px;width:100%;max-width:680px}.detail-card{background:#140a00b8;border:1px solid var(--glass-border);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:14px;padding:clamp(9px,1.6vw,18px) clamp(13px,2vw,24px);text-align:center;min-width:clamp(90px,18vw,130px);position:relative;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;text-decoration:none;color:var(--text-cream);cursor:default}.detail-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(212,168,67,.06),transparent 55%);pointer-events:none}.venue-card{cursor:pointer;border-color:#d4a84366;background:#1e0f00d1;min-width:clamp(130px,28vw,220px);pointer-events:auto}.venue-card:hover{transform:translateY(-5px);box-shadow:0 10px 40px #d4a8434d;border-color:var(--gold)}.detail-icon{font-size:clamp(1.1rem,2.8vw,1.5rem);margin-bottom:4px}.detail-label{font-family:var(--font-hindi);font-size:clamp(.5rem,1.2vw,.65rem);letter-spacing:2px;color:var(--gold);text-transform:uppercase;opacity:.85}.detail-value{font-family:var(--font-title);font-size:clamp(.7rem,1.6vw,.98rem);color:var(--text-cream);margin-top:4px;display:flex;flex-direction:column;gap:2px}.detail-sub{font-size:.72em;color:var(--gold-light);font-family:var(--font-hindi);font-style:italic}.venue-sub{font-size:.7em}.venue-nav-hint{margin-top:6px;font-family:var(--font-hindi);font-size:clamp(.55rem,1.3vw,.7rem);color:var(--gold);letter-spacing:1px;padding:4px 8px;background:#d4a8431f;border-radius:50px;display:inline-block}#sideButtons{position:fixed;right:10px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:9px;z-index:100}.side-btn{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#140c00d1;border:1px solid var(--glass-border);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:50px;color:var(--gold-light);cursor:pointer;font-family:var(--font-hindi);font-size:.8rem;letter-spacing:1px;transition:all .35s cubic-bezier(.4,0,.2,1);white-space:nowrap;overflow:hidden;max-width:44px}.side-btn:hover,.side-btn:focus{max-width:180px;background:#d4a8432e;border-color:var(--gold);box-shadow:0 0 22px #d4a8434d;transform:scale(1.04);outline:none}.btn-icon{font-size:1.1rem;flex-shrink:0}.btn-label-wrap{display:flex;flex-direction:column;gap:1px;opacity:0;transition:opacity .2s .1s;line-height:1.3}.side-btn:hover .btn-label-wrap,.side-btn:focus .btn-label-wrap{opacity:1}.btn-en{font-size:.78rem;color:var(--gold-light);font-family:var(--font-title);letter-spacing:1px}.btn-hi{font-size:.7rem;color:#f0cc7a8c;font-family:var(--font-hindi)}.popup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#080400d9;backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);z-index:200;display:flex;align-items:center;justify-content:center;padding:16px;animation:fade-in .3s ease;overscroll-behavior:contain}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.popup-glass{background:#0e0802f0;border:1px solid var(--glass-border);backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);border-radius:22px;padding:clamp(18px,3.5vw,34px);width:100%;max-width:400px;max-height:90dvh;overflow-y:auto;position:relative;box-shadow:0 0 70px #d4a8431f,0 28px 55px #0009;animation:slide-up .4s cubic-bezier(.4,0,.2,1)}@keyframes slide-up{0%{transform:translateY(28px);opacity:0}to{transform:translateY(0);opacity:1}}.popup-close{position:absolute;top:13px;right:13px;background:#d4a8431a;border:1px solid var(--glass-border);color:var(--gold-light);width:34px;height:34px;border-radius:50%;cursor:pointer;font-size:.9rem;display:flex;align-items:center;justify-content:center;transition:all .22s}.popup-close:hover{background:#d4a84347;transform:rotate(90deg)}.popup-header{text-align:center;margin-bottom:22px}.popup-emoji{font-size:2rem;margin-bottom:6px}.popup-title{font-family:var(--font-hindi);font-size:clamp(1rem,3vw,1.25rem);color:var(--gold-light);letter-spacing:2px}.popup-sub{font-family:var(--font-hindi);font-size:.78rem;color:#f0cc7a73;letter-spacing:1px;margin-top:4px}.contact-list{display:flex;flex-direction:column;gap:9px;margin-bottom:14px}.contact-item{display:flex;align-items:center;gap:11px;padding:12px 13px;background:#d4a8430d;border:1px solid rgba(212,168,67,.1);border-radius:13px;text-decoration:none;color:var(--text-cream);transition:all .28s ease}.contact-item:hover{background:#d4a84324;border-color:var(--gold);transform:translate(4px)}.primary-contact{border-color:#d4a84352;background:#d4a84314}.contact-avatar{font-size:1.7rem;flex-shrink:0}.contact-info{flex:1;min-width:0}.contact-name{font-family:var(--font-hindi);font-size:clamp(.75rem,2vw,.88rem);color:var(--gold);line-height:1.4}.cn-en{font-family:var(--font-body);font-size:.85em;color:#f0cc7a99}.contact-num{font-family:var(--font-title);font-size:clamp(.82rem,2.2vw,.98rem);color:var(--text-cream);letter-spacing:1px;margin-top:2px}.contact-call{font-size:1.25rem}.whatsapp-btn{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;padding:12px;background:linear-gradient(135deg,#1a8c3c,#25a84e);border-radius:11px;text-decoration:none;color:#fff;font-family:var(--font-hindi);font-size:clamp(.88rem,2.5vw,1rem);letter-spacing:2px;font-weight:600;transition:all .28s;box-shadow:0 4px 18px #25a84e47}.whatsapp-btn:hover{transform:translateY(-2px);box-shadow:0 8px 28px #25a84e61}.gallery-full{position:relative;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:clamp(14px,3.5vw,28px)}.gallery-close{position:fixed;top:14px;right:14px;z-index:210;background:#1a1208d9;border:1px solid var(--glass-border);color:var(--gold-light);width:44px;height:44px;border-radius:50%;cursor:pointer;font-size:1.1rem;display:flex;align-items:center;justify-content:center;transition:all .2s}.gallery-close:hover{background:#d4a84347;transform:rotate(90deg)}.gallery-header{font-family:var(--font-hindi);font-size:clamp(.7rem,2vw,1.05rem);color:var(--gold-light);letter-spacing:3px;margin-bottom:18px;text-align:center}.gallery-stage{display:flex;align-items:center;gap:clamp(8px,2vw,18px);width:100%;max-width:640px}.gallery-viewport{flex:1;overflow:hidden;border-radius:18px;border:1px solid var(--glass-border);aspect-ratio:4/3}.gallery-track{display:flex;height:100%;transition:transform .5s cubic-bezier(.4,0,.2,1)}.gallery-slide{min-width:100%;height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;position:relative;overflow:hidden}.gallery-slide .slide-emoji{font-size:clamp(3.5rem,10vw,7rem);animation:gentle-float 4s ease-in-out infinite;filter:drop-shadow(0 0 20px rgba(212,168,67,.5))}.gallery-slide .slide-text{font-family:var(--font-title);font-size:clamp(.82rem,2vw,1.15rem);color:var(--gold-light);letter-spacing:3px;text-align:center;padding:0 14px}.gallery-slide .slide-sub{font-family:var(--font-hindi);font-size:clamp(.68rem,1.8vw,.92rem);color:#f0cc7a80;font-style:italic;letter-spacing:2px;text-align:center;padding:0 14px}.gallery-nav{background:#1a1208d9;border:1px solid var(--glass-border);color:var(--gold-light);border-radius:50%;cursor:pointer;width:clamp(36px,5vw,46px);height:clamp(36px,5vw,46px);font-size:clamp(1rem,2vw,1.2rem);display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.gallery-nav:hover{background:#d4a84333;transform:scale(1.1)}.gallery-dots{display:flex;gap:7px;margin-top:14px}.gallery-dot{width:8px;height:8px;border-radius:50%;background:#d4a84338;cursor:pointer;transition:all .3s}.gallery-dot.active{background:var(--gold);transform:scale(1.4);box-shadow:0 0 8px var(--gold)}@keyframes gentle-float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.admin-glass{width:100%;max-width:460px;max-height:85dvh;padding:24px}.admin-panel-content{display:flex;flex-direction:column;gap:14px}.upload-field{display:flex;flex-direction:column;gap:6px}.upload-field label{font-family:var(--font-title);font-size:.8rem;color:var(--gold);letter-spacing:1px}.admin-input{background:#0006;border:1px solid rgba(212,168,67,.3);color:var(--gold-light);font-family:var(--font-body);font-size:1rem;padding:10px 14px;border-radius:8px;outline:none;transition:border .3s}.admin-input:focus{border-color:var(--gold)}.admin-file{color:var(--gold-light);font-family:var(--font-body);font-size:.9rem}.admin-file::file-selector-button{background:#d4a84326;border:1px solid var(--gold);color:var(--gold);padding:6px 12px;border-radius:6px;cursor:pointer;margin-right:12px;font-family:var(--font-title);transition:all .2s}.admin-file::file-selector-button:hover{background:#d4a8434d}.admin-btn{background:#d4a84326;border:1px solid var(--gold);color:var(--gold-light);font-family:var(--font-title);font-size:.9rem;letter-spacing:2px;text-transform:uppercase;padding:12px;border-radius:8px;cursor:pointer;transition:all .3s;margin-top:8px}.admin-btn:hover{background:var(--gold);color:#000;font-weight:700}.action-upload{background:linear-gradient(135deg,#a07820,#d4a843);color:#000;font-weight:700;border:none;box-shadow:0 4px 15px #d4a84366}.upload-status{font-family:var(--font-hindi);font-size:.85rem;color:#a4e5a4;text-align:center;min-height:20px}.admin-list-header{font-family:var(--font-title);color:var(--gold);font-size:.9rem;margin-top:16px;border-bottom:1px solid rgba(212,168,67,.2);padding-bottom:6px}.admin-photo-list{display:flex;flex-direction:column;gap:8px;max-height:180px;overflow-y:auto;padding-right:4px}.admin-photo-item{display:flex;align-items:center;justify-content:space-between;background:#00000080;padding:8px 12px;border-radius:8px;border:1px solid rgba(212,168,67,.1)}.api-info{font-family:var(--font-body);font-size:.8rem;color:var(--text-cream)}.btn-del{background:#c8323233;border:1px solid rgba(200,50,50,.5);color:#f88;padding:4px 8px;border-radius:4px;cursor:pointer}.btn-del:hover{background:#c8323280}::-webkit-scrollbar{display:none}@media (max-width: 768px){.letterbox{height:48px}#sideButtons{right:8px;gap:8px}.side-btn{padding:9px 11px;max-width:42px}#eventDetails{bottom:8px;gap:7px}}@media (max-width: 540px){.letterbox{height:36px}.shloka-line{font-size:clamp(.85rem,4vw,1.1rem)}.blessing-lord{font-size:clamp(1.7rem,7vw,2.4rem)}.ci-names{flex-direction:column;gap:4px}.ci-dot{display:none}.couple-names{flex-direction:column;gap:4px}.ampersand{font-size:1.4rem}#eventDetails{max-width:340px}.detail-card{min-width:90px}.venue-card{min-width:200px}#sideButtons{right:6px;gap:7px}.side-btn{max-width:40px;padding:8px 10px}}@media (max-width: 400px){.anniversary-title{font-size:2.6rem}.celebration-word{letter-spacing:5px;font-size:.85rem}.name-one,.name-two{font-size:.9rem}.shloka-line{font-size:.82rem;letter-spacing:1px}#eventDetails{flex-wrap:wrap;gap:5px;max-width:92vw}.detail-card{min-width:85px;padding:8px 10px;border-radius:11px}.venue-card{min-width:180px}.ci-main{font-size:1.6rem}.ci-main-hindi,.ci-names{font-size:.9rem}}@media (max-width: 330px){.anniversary-title{font-size:2.2rem}.shloka-line{font-size:.72rem}.venue-card{min-width:155px}#sideButtons{right:4px}}
