/* DIWALI ATELIER — distinctive editorial / rangoli-inspired temporary login skin */
:root{--atelier-ink:#28251f;--atelier-gold:#b88a36;--atelier-brass:#dfbd70;--atelier-paper:#fffdf8;--atelier-line:rgba(184,138,54,.32)}
html,body{min-height:100%;}body{margin:0!important;overflow-x:hidden;background:var(--atelier-paper)!important;color:var(--atelier-ink)}
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;background:linear-gradient(118deg,rgba(249,236,206,.36) 0%,transparent 29%,transparent 68%,rgba(246,225,177,.23) 100%),radial-gradient(ellipse at 50% 50%,#fff 0%,#fffdf8 62%,#fbf4e5 100%)}
body:after{content:"";position:fixed;pointer-events:none;z-index:0;inset:14px;border:1px solid rgba(185,139,55,.15);clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}
.main{position:relative!important;z-index:2;min-height:100vh!important;box-sizing:border-box;display:flex!important;align-items:center!important;justify-content:center!important;padding:70px 25px 48px!important}
.main>div{position:relative;z-index:3;width:100%;max-width:1320px;margin:auto;display:grid!important;grid-template-columns:minmax(220px,1fr) minmax(340px,410px) minmax(220px,1fr);align-items:center;gap:clamp(12px,2.4vw,38px);box-sizing:border-box}
.diwali-login-card{grid-column:2;grid-row:1;position:relative!important;z-index:8!important;width:100%!important;max-width:410px!important;min-width:0!important;float:none!important;margin:0 auto!important;border:1px solid rgba(184,138,54,.26)!important;border-radius:5px 34px 5px 34px!important;background:rgba(255,255,255,.94)!important;box-shadow:0 22px 70px rgba(94,69,23,.10),12px 12px 0 rgba(224,190,112,.11)!important;overflow:hidden}
.diwali-login-card:before{content:"";position:absolute;top:0;left:22px;right:22px;height:3px;background:linear-gradient(90deg,transparent,#b88a36,#f4df9d,#b88a36,transparent)}
.diwali-login-card:after{content:"✦";position:absolute;top:16px;right:21px;color:#c39b4b;font-size:13px;opacity:.65}
.diwali-login-card .title{color:#393025!important}.diwali-login-card input{border-radius:5px!important}.diwali-login-card button,.diwali-login-card .btn{border-radius:5px!important}
#diwali-art-layer{position:fixed;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.atelier-left,.atelier-right{position:relative;min-width:0;align-self:center}
.atelier-left{grid-column:1;grid-row:1;min-height:430px;display:flex;align-items:center;justify-content:center}
.atelier-left:before{content:"";position:absolute;width:min(30vw,360px);aspect-ratio:1;border:1px solid rgba(184,138,54,.32);border-radius:50%;box-shadow:0 0 0 12px rgba(184,138,54,.035),0 0 0 34px rgba(184,138,54,.025),inset 0 0 0 12px rgba(184,138,54,.035);animation:atelierOrbit 36s linear infinite}
.atelier-left:after{content:"";position:absolute;width:min(25vw,290px);aspect-ratio:1;border:1px dashed rgba(184,138,54,.28);border-radius:50%;animation:atelierOrbit 52s linear infinite reverse}
.atelier-puja{position:relative;width:min(100%,330px);height:380px;object-fit:contain;filter:drop-shadow(0 18px 22px rgba(117,82,23,.14));animation:atelierFloat 7s ease-in-out infinite;z-index:2}
.atelier-caption{position:absolute;bottom:8px;left:0;right:0;text-align:center;font:10px/1.5 Arial,sans-serif;letter-spacing:.32em;text-transform:uppercase;color:#a18a5c}
.atelier-right{grid-column:3;grid-row:1;min-height:430px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding-left:clamp(2px,1.6vw,24px)}
.atelier-kicker{font:600 10px/1.7 Arial,sans-serif;letter-spacing:.36em;text-transform:uppercase;color:#a78b4f;margin-bottom:18px}
.atelier-headline{font:italic clamp(37px,4.2vw,62px)/.92 Georgia,'Times New Roman',serif;font-weight:400;color:#77602f;letter-spacing:-.06em}
.atelier-headline strong{display:block;font-style:normal;font-weight:400;font-size:clamp(58px,6.4vw,91px);line-height:.96;letter-spacing:-.085em;background:linear-gradient(115deg,#8e641d 0%,#d5ae5a 30%,#9d6c20 56%,#e9cf85 76%,#a8792c 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.atelier-rule{width:130px;height:1px;background:linear-gradient(90deg,#b88a36,transparent);margin:24px 0 18px}
.atelier-message{font:italic 15px/1.85 Georgia,serif;color:#8b7b5d;max-width:370px}
.atelier-signature{margin-top:22px;font:10px/1.5 Arial,sans-serif;letter-spacing:.27em;color:#b28b43}
.atelier-sun{position:absolute;right:clamp(5px,3vw,44px);top:8%;width:clamp(70px,9vw,122px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 30%,rgba(255,241,193,.9),rgba(228,192,104,.22) 54%,transparent 72%);filter:blur(.3px)}
.atelier-sun:before,.atelier-sun:after{content:"";position:absolute;inset:10%;border:1px solid rgba(184,138,54,.22);border-radius:50%}.atelier-sun:after{inset:-10%;border-style:dashed}
.atelier-topline{position:absolute;top:0;left:6%;right:6%;height:52px;border-bottom:1px solid rgba(184,138,54,.15);display:flex;justify-content:space-between;align-items:flex-start}
.atelier-topline span{font:9px/1.4 Arial,sans-serif;letter-spacing:.22em;color:#a8936b;text-transform:uppercase;padding-top:18px}
.atelier-bulbs{position:absolute;top:0;left:10%;right:10%;height:45px;display:flex;justify-content:space-between}
.atelier-bulb{position:relative;width:1px;height:var(--h,24px);background:rgba(184,138,54,.45)}
.atelier-bulb:after{content:"";position:absolute;bottom:-5px;left:-4px;width:9px;height:10px;border-radius:50% 50% 45% 45%;background:radial-gradient(circle at 35% 25%,#fff9d9,#dfb956 52%,#a97620);box-shadow:0 0 12px rgba(230,184,75,.48);animation:atelierPulse 2.8s ease-in-out infinite;animation-delay:var(--d,0s)}
.atelier-particle{position:absolute;width:3px;height:3px;border-radius:50%;background:#c9a04a;box-shadow:0 0 9px rgba(214,170,71,.5);animation:atelierBlink var(--t,4s) ease-in-out infinite;animation-delay:var(--d,0s)}
.atelier-corner{position:absolute;width:clamp(80px,10vw,142px);height:clamp(80px,10vw,142px);opacity:.15}.atelier-corner img{width:100%;height:100%;object-fit:contain}.atelier-corner.tl{left:-15px;top:-15px}.atelier-corner.tr{right:-15px;top:-15px;transform:scaleX(-1)}.atelier-corner.bl{left:-15px;bottom:-15px;transform:scaleY(-1)}.atelier-corner.br{right:-15px;bottom:-15px;transform:scale(-1)}
.footer{position:fixed!important;bottom:10px;left:0;width:100%;z-index:9;text-align:center;font-size:10px;color:#ad9a76!important}
@keyframes atelierFloat{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-8px) rotate(1deg)}}@keyframes atelierPulse{0%,100%{opacity:.55;filter:brightness(.9)}50%{opacity:1;filter:brightness(1.3)}}@keyframes atelierBlink{0%,100%{opacity:.08;transform:scale(.6)}50%{opacity:.8;transform:scale(1.4)}}@keyframes atelierOrbit{to{transform:rotate(360deg)}}
@media(max-width:1050px){.main>div{grid-template-columns:minmax(150px,.7fr) minmax(320px,410px) minmax(150px,.7fr);gap:12px}.atelier-left:before{width:190px}.atelier-left:after{width:160px}.atelier-puja{height:280px}.atelier-right{padding-left:0}.atelier-headline{font-size:34px}.atelier-headline strong{font-size:56px}.atelier-message{font-size:13px}}
@media(max-width:760px){.main{padding:82px 16px 48px!important}.main>div{display:flex!important;flex-direction:column;gap:12px;max-width:430px}.atelier-right{order:0;min-height:0;text-align:center;align-items:center;padding:0}.atelier-kicker{font-size:8px;letter-spacing:.25em;margin-bottom:6px}.atelier-headline{font-size:26px}.atelier-headline strong{font-size:43px}.atelier-rule{margin:9px 0}.atelier-message{display:none}.atelier-signature{display:none}.atelier-left{order:1;min-height:0;width:100%;height:90px}.atelier-left:before{width:92px}.atelier-left:after{width:74px}.atelier-puja{height:105px;width:120px}.atelier-caption{display:none}.diwali-login-card{order:2!important;width:100%!important;max-width:410px!important;flex:0 1 auto!important}.atelier-sun{top:4%;right:7%;width:65px}.atelier-topline{left:4%;right:4%;height:42px}.atelier-topline span{font-size:7px;padding-top:13px}.atelier-bulbs{left:12%;right:12%;height:36px}.atelier-corner{width:65px;height:65px;opacity:.1}.footer{position:relative!important;bottom:auto;margin-top:8px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important}}


/* =========================================
   DIWALI FESTIVE ENHANCEMENTS
   Four corner mandala + flower rain + fireworks
   ========================================= */

/* Four decorative corners */
.atelier-corner {
    position: fixed;
    width: 175px !important;
    height: 175px !important;
    opacity: 0.72 !important;
    z-index: 1;
    pointer-events: none;
    filter: drop-shadow(0 0 12px rgba(218, 165, 32, 0.25));
}

.atelier-corner img {
    width: 100%;
    height: 100%;
    animation: mandalaGlow 6s ease-in-out infinite;
}

.atelier-corner.tl {
    top: 0 !important;
    left: 0 !important;
}

.atelier-corner.tr {
    top: 0 !important;
    right: 0 !important;
}

.atelier-corner.bl {
    bottom: 0 !important;
    left: 0 !important;
}

.atelier-corner.br {
    bottom: 0 !important;
    right: 0 !important;
}

.atelier-corner.tr img {
    animation-delay: -1.5s;
}

.atelier-corner.bl img {
    animation-delay: -3s;
}

.atelier-corner.br img {
    animation-delay: -4.5s;
}

@keyframes mandalaGlow {
    0%, 100% {
        opacity: 0.65;
        transform: rotate(0deg) scale(1);
    }
    50% {
        opacity: 1;
        transform: rotate(8deg) scale(1.04);
    }
}

/* Flower shower layer */
#diwali-flower-rain,
#diwali-fireworks {
    position: fixed;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

#diwali-flower-rain {
    z-index: 20;
}

#diwali-fireworks {
    z-index: 2;
}

.atelier-flower {
    position: absolute;
    top: -35px;
    left: var(--x);
    font-size: var(--size);
    line-height: 1;
    opacity: 0;
    animation: flowerFall var(--duration) linear var(--delay) infinite;
    will-change: transform, opacity;
    text-shadow: 0 2px 5px rgba(150, 90, 20, 0.12);
}

@keyframes flowerFall {
    0% {
        transform: translate3d(0, -30px, 0) rotate(0deg);
        opacity: 0;
    }
    10% {
        opacity: 0.95;
    }
    85% {
        opacity: 0.8;
    }
    100% {
        transform: translate3d(var(--drift), 110vh, 0)
                   rotate(var(--rotation));
        opacity: 0;
    }
}

/* Fireworks */
.atelier-firework {
    position: absolute;
    left: var(--x);
    top: var(--y);
    width: 5px;
    height: 5px;
    border-radius: 50%;
    opacity: 0;
    background: #ffd76a;
    box-shadow:
        0 -22px 0 0 #ffd76a,
        15px -15px 0 0 #ff8da1,
        22px 0 0 0 #fff0a6,
        15px 15px 0 0 #ffd76a,
        0 22px 0 0 #ff8da1,
        -15px 15px 0 0 #fff0a6,
        -22px 0 0 0 #ffd76a,
        -15px -15px 0 0 #ff8da1;
    animation: fireworkBurst var(--duration) ease-out var(--delay) infinite;
}

.atelier-firework::before,
.atelier-firework::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 50%;
    box-shadow:
        0 -32px 0 -1px #fff0a6,
        23px -23px 0 -1px #ffd76a,
        32px 0 0 -1px #ff8da1,
        23px 23px 0 -1px #fff0a6,
        0 32px 0 -1px #ffd76a,
        -23px 23px 0 -1px #ff8da1,
        -32px 0 0 -1px #fff0a6,
        -23px -23px 0 -1px #ffd76a;
}

.atelier-firework::after {
    transform: rotate(22deg) scale(0.65);
}

@keyframes fireworkBurst {
    0%, 5% {
        opacity: 0;
        transform: scale(0.1) rotate(0deg);
    }
    15% {
        opacity: 1;
        transform: scale(1) rotate(25deg);
    }
    45% {
        opacity: 0.85;
        transform: scale(1.2) rotate(70deg);
    }
    70%, 100% {
        opacity: 0;
        transform: scale(1.6) rotate(120deg);
    }
}

/* Mobile adjustments */
@media (max-width: 768px) {
    .atelier-corner {
        width: 95px !important;
        height: 95px !important;
        opacity: 0.42 !important;
    }

    #diwali-fireworks {
        opacity: 0.7;
    }
}

/* Respect reduced-motion settings */
@media (prefers-reduced-motion: reduce) {
    .atelier-flower,
    .atelier-firework,
    .atelier-corner img {
        animation: none !important;
    }
}

.atelier-diwali-gif {
    display: block;
    width: 130px;
    height: 130px;
    object-fit: contain;
    margin-bottom: 12px;
    align-self: center;
    background: transparent !important;
    mix-blend-mode: multiply;
}

.atelier-headline {
    white-space: nowrap;
}

.atelier-headline strong {
    display: inline;
}

@media (max-width: 760px) {
    .atelier-diwali-gif {
        width: 90px;
        height: 65px;
    }
}

