/* =========================================
   1. GLOBAL RESET & BASE SETUP
   ========================================= */
* {
    box-sizing: border-box;
}

html, body {
    padding: 0;
    margin: 0;
    width: 100%;
    height: 100dvh;
    overflow: hidden;
    /* Deep dark stage environment for contrast */
    background: hsl(20deg 15% 4%); 
    position: relative;
}

/* =========================================
   2. CINEMATIC SPOTLIGHT BACKGROUND
   ========================================= */
/* Subtle Film Grain / Noise Overlay */
body::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    filter: url(#noiseFilter) brightness(0.4) contrast(1.1);
    mix-blend-mode: overlay;
    z-index: 5; /* Sits below UI, above background */
    pointer-events: none; /* Crucial: lets clicks pass through */
}

/* God Rays / Light Fixture */
.light {
    position: absolute;
    top: -10vh;
    right: -10vw;
    width: 100vw;
    height: 110vh;
    transform: rotate(20deg);
    transform-origin: top left;
    
    background:
        /* Lens Core Glow */
        radial-gradient(hsl(42deg 100% 92%), hsl(42deg 100% 92%) 63%, transparent 75%) 50% 0% / 25px 28px,
        /* Lens Flare / Ambient Glow */
        radial-gradient(hsl(38deg 100% 85% / 0.8), hsl(38deg 100% 85% / 0.8) 10%, transparent 75%) 50% -15px / 30px 100px,
        /* God Ray Beams (Layered for volumetric feel) */
        conic-gradient(at 50% 0%, transparent 49.8deg, hsl(40deg 100% 75%) 50deg, transparent 50.2deg) 50% 0px / 100% 100%,
        conic-gradient(at 50% 0%, transparent 48deg, hsl(40deg 100% 70% / 0.9) 48.2deg, transparent 48.6deg) 50% 0px / 100% 100%,
        conic-gradient(at 50% 0%, transparent 46deg, hsl(38deg 100% 65% / 0.8) 46.2deg, transparent 46.8deg) 50% 0px / 100% 100%,
        conic-gradient(at 50% 0%, transparent 44deg, hsl(35deg 100% 60% / 0.7) 44.2deg, transparent 45deg) 50% 0px / 100% 100%,
        conic-gradient(at 50% 0%, transparent 42deg, hsl(35deg 100% 55% / 0.6) 42.2deg, transparent 43.5deg) 50% 0px / 100% 100%,
        conic-gradient(at 50% 0%, transparent 35deg, hsl(35deg 100% 20% / 0.4) 48deg, transparent 55deg) 50% 0px / 100% 100%;

    background-blend-mode: overlay;
    background-repeat: no-repeat;
    mix-blend-mode: screen;
    opacity: 0.95;
    filter: blur(1.5px);
    
    z-index: 10; /* Keep below your UI (z-index: 20) */
    pointer-events: none; /* Crucial: lets clicks pass through */

    -webkit-mask-image: linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, 0.1) 1.5%, rgba(0, 0, 0, 1) 3%, rgba(0, 0, 0, 1) 20%, transparent 100%);
    mask-image: linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, 0.1) 1.5%, rgba(0, 0, 0, 1) 3%, rgba(0, 0, 0, 1) 20%, transparent 100%);
}

/* =========================================
   3. APP LAYOUT & UI CONTAINERS
   ========================================= */
.nt-wrapper {
    width: 100dvw;
    height: 100dvh;
    
    /* MODIFIED: Changed from #000000 to transparent to reveal the spotlights */
    background-color: transparent; 
    
    display: flex;
    justify-content: center;
    align-items: center;
    
    /* MODIFIED: Added positioning context and high z-index to sit above the light */
    position: relative;
    z-index: 20; 
}

.nt-progress-bar-cont {
    width: 45%;
    max-width: 250px;
    height: 7px;
    position: relative;
}

.nt-progress-bar {
    width: 100%;
    height: 100%;
    border: 1px solid #333; /* Consider rgba(255,255,255,0.3) if this is too dark */
    border-radius: 3px;
    overflow: hidden;
    position: absolute;
}

.nt-progress {
    width: 1%;
    height: 100%;
    background-color: white;
    position: absolute;
}

.nt-ad-container {
    width: auto;
    height: auto;
    overflow: hidden;
    background-color: #000;
    position: absolute;
    display: none;
}

.nt-ad-container * {
    width: 100%;
    height: 100%;
    position: absolute;
    pointer-events: none;
}

.border {
    border: 1px solid #000;
    z-index: 999;
    pointer-events: none;
}

.hs {
    pointer-events: all;
    width: 100%;
    left: 50%;
    transform: translateX(-50%);
}

.hs-bgclick {
    height: 100%;
}


.bg { 
    background: url('images/bg.jpg') no-repeat center center;
    background-size: contain;
}

/* =========================================
   4. SPRITES & ASSETS
   ========================================= */
.cta, .logo, .t1, .t2 { 
    max-width: 100%; 
    background-size: 100%; 
    background-image: url('images/sprite.png'); 
    background-repeat: no-repeat; /* Good practice for sprites */
}

.cta  { background-position: 0 0.00%;   background-size: 100%; }
.logo { background-position: 0 33.33%;  background-size: 100%; }
.t1   { background-position: 0 66.67%;  background-size: 100%; }
.t2   { background-position: 0 100.00%; background-size: 100%; }