@media (min-width: 768px) {
    body {
        cursor: default;
    }
}

.cam-container {
    position: relative;
    margin-top: 1rem !important;
    width: 100%;
    max-width: 800px;
    text-align: center;
    margin: 0 auto;
}

#webcam {
    width: 100%;
    height: auto;
    border-radius: 8px;
    border: 2px solid #333;
    transform: scaleX(-1);
    /* Mirror the webcam */
}

.filter-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    transform: scaleX(-1);
    /* Mirror to match webcam */
}

.helmet-image {
    position: absolute;
    width: 35%;
    height: auto;
    display: none;
    /* Hidden by default */
    transition: all 0.1s ease;
    /* Smooth movement */
}

#face-landmarks {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.filter-selector {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
}

@media (min-width: 1024px) {
    .remote button {
        min-width: unset !important;
    }
}

.filter-btn {
    padding: 12px 15px !important;
    background: #222 !important;
    color: #fff !important;
    border: none !important;
    border-radius: 5px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    font-weight: bold !important;
    min-width: 120px !important;
}

.filter-btn:hover {
    background-color: #444;
    transform: translateY(-2px);
}

.remote button.filter-btn.active {
    background-color: #e10600 !important;
    color: white !important;
    box-shadow: 0 2px 8px rgba(225, 6, 0, 0.4) !important;
}

.controls {
    display: flex;
    justify-content: center;
    gap: 15px;
    margin-top: 15px;
    flex-wrap: wrap;
}

.control-btn {
    background-color: #333;
    color: white;
    border: none;
    border-radius: 5px;
    padding: 8px 15px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.control-btn:hover {
    background-color: #555;
}

.weather-controls {
    display: flex;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
}

.weather-btn {
    background-color: #222;
    color: white;
    border: none;
    border-radius: 5px;
    padding: 8px 15px;
    cursor: pointer;
    transition: all 0.2s ease;
    font-weight: bold;
}

.weather-btn:hover {
    background-color: #444;
    transform: translateY(-2px);
}

.weather-btn.active {
    background-color: #2980b9;
    box-shadow: 0 2px 8px rgba(41, 128, 185, 0.4);
}

.f1-lights-container {
    width: 100%;
    max-width: 300px;
    margin: 20px auto;
    text-align: center;
    display: none;
}

.f1-lights {
    display: flex;
    justify-content: space-between;
    margin-bottom: 10px;
    background-color: #222;
    padding: 15px;
    border-radius: 10px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);
}

.light {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: #333;
    border: 2px solid #555;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.5) inset;
    transition: all 0.3s ease;
}

.light.active {
    background-color: #e10600;
    box-shadow:
        0 0 10px #e10600,
        0 0 20px #e10600,
        0 0 30px #e10600;
}

.f1-lights-text {
    font-size: 14px;
    color: #ccc;
    margin-top: 10px;
}

#status {
    margin-top: 10px;
    padding: 8px 16px;
    font-style: italic;
    color: #fff;
    background-color: #333;
    border-radius: 4px;
    transition: background-color 0.3s ease;
    display: none;
}

#status.face-tracking {
    background-color: #04724d;
}

#status.loading {
    background-color: #e6a502;
}

#status.error {
    background-color: #e10600;
}

#status.manual-mode {
    background-color: #8f4700;
}

/* Weather effect overlays */
.weather-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 5;
    display: none;
}

/* Sunny effect */
.sunny-overlay {
    background: linear-gradient(rgba(255, 240, 180, 0.25),
            rgba(255, 220, 140, 0.1));
    mix-blend-mode: soft-light;
}

.sun-flare {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="800" height="600" viewBox="0 0 800 600"><defs><radialGradient id="sunGlow" cx="0.3" cy="0.3" r="0.5"><stop offset="0%" stop-color="rgba(255, 240, 200, 0.7)"/><stop offset="40%" stop-color="rgba(255, 210, 120, 0.3)"/><stop offset="100%" stop-color="rgba(255, 180, 50, 0)"/></radialGradient></defs><circle cx="180" cy="160" r="300" fill="url(%23sunGlow)" /></svg>');
    opacity: 0.9;
    pointer-events: none;
}

.lens-flare {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="800" height="600" viewBox="0 0 800 600"><defs><radialGradient id="lensFlare" cx="0.5" cy="0.5" r="0.5"><stop offset="0%" stop-color="rgba(255, 255, 255, 0.9)"/><stop offset="20%" stop-color="rgba(255, 255, 255, 0.4)"/><stop offset="100%" stop-color="rgba(255, 255, 255, 0)"/></radialGradient></defs><circle cx="400" cy="300" r="25" fill="url(%23lensFlare)" /></svg>');
    pointer-events: none;
}

/* Cloudy effect */
.cloudy-overlay {
    background: linear-gradient(rgba(200, 200, 210, 0.35),
            rgba(220, 220, 230, 0.15));
}

.clouds {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="800" height="600" viewBox="0 0 800 600"><g opacity="0.7"><path d="M100,100 Q130,80 160,90 Q180,60 220,70 Q250,50 280,70 Q300,60 320,80 Q350,70 370,90 Q380,100 340,110 Q330,120 280,115 Q250,130 200,120 Q170,125 140,115 Q120,125 100,100" fill="rgba(255,255,255,0.7)" /><path d="M500,150 Q530,130 560,140 Q580,110 620,120 Q650,100 680,120 Q700,110 720,130 Q750,120 770,140 Q780,150 740,160 Q730,170 680,165 Q650,180 600,170 Q570,175 540,165 Q520,175 500,150" fill="rgba(255,255,255,0.8)" /><path d="M150,250 Q180,230 210,240 Q230,210 270,220 Q300,200 330,220 Q350,210 370,230 Q400,220 420,240 Q430,250 390,260 Q380,270 330,265 Q300,280 250,270 Q220,275 190,265 Q170,275 150,250" fill="rgba(255,255,255,0.6)" /></g></svg>');
    background-size: cover;
    animation: cloud-drift 120s linear infinite;
    opacity: 0.8;
    pointer-events: none;
}

.cloud-shadows {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="800" height="600" viewBox="0 0 800 600"><g opacity="0.3"><path d="M200,200 Q230,180 260,190 Q280,160 320,170 Q350,150 380,170 Q400,160 420,180 Q450,170 470,190 Q480,200 440,210 Q430,220 380,215 Q350,230 300,220 Q270,225 240,215 Q220,225 200,200" fill="rgba(100,100,120,0.3)" /><path d="M600,300 Q630,280 660,290 Q680,260 720,270 Q750,250 780,270 Q800,260 820,280 Q850,270 870,290 Q880,300 840,310 Q830,320 780,315 Q750,330 700,320 Q670,325 640,315 Q620,325 600,300" fill="rgba(100,100,120,0.25)" /></g></svg>');
    background-size: cover;
    animation: cloud-shadow-drift 180s linear infinite;
    mix-blend-mode: multiply;
    pointer-events: none;
}

@keyframes cloud-drift {
    from {
        background-position: 0 0;
    }

    to {
        background-position: 800px 0;
    }
}

@keyframes cloud-shadow-drift {
    from {
        background-position: 0 0;
    }

    to {
        background-position: 800px 50px;
    }
}

/* Rain effect - simplified completely */
.rain-overlay {
    background-color: rgba(90, 90, 100, 0.3);
    background-image:
        url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="10" height="30" viewBox="0 0 10 30"><line x1="5" y1="0" x2="5" y2="30" stroke="rgba(220,220,240,0.9)" stroke-width="1"/></svg>');
    background-size: 20px 40px;
    animation: rain-simple 0.3s linear infinite;
}

@keyframes rain-simple {
    from {
        background-position: 0 0;
    }

    to {
        background-position: 0 40px;
    }
}

/* Lightning effect - simplified */
.lightning {
    background-color: rgba(255, 255, 255, 0.8);
    opacity: 0;
    transition: opacity 0.05s ease-in-out;
}

/* Fog effect - plain white fog */
.fog-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.5);
    backdrop-filter: blur(5px);
    mix-blend-mode: screen;
}

/* Night mode - true grayscale */
.night-overlay {
    background: radial-gradient(ellipse at center,
            rgba(10, 10, 10, 0.6) 0%,
            rgba(0, 0, 0, 0.9) 100%);
    mix-blend-mode: multiply;
    filter: grayscale(1);
}

.night-vignette {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: radial-gradient(ellipse at center,
            rgba(0, 0, 0, 0) 30%,
            rgba(0, 0, 0, 0.95) 100%);
    pointer-events: none;
    filter: grayscale(1);
}

.stars {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="500" height="500" viewBox="0 0 500 500"><g><circle cx="50" cy="50" r="1.2" fill="rgba(255,255,255,0.95)"/><circle cx="75" cy="75" r="0.6" fill="rgba(255,255,255,0.7)"/><circle cx="120" cy="80" r="0.9" fill="rgba(255,255,255,0.85)"/><circle cx="145" cy="45" r="0.5" fill="rgba(255,255,255,0.6)"/><circle cx="200" cy="40" r="1.4" fill="rgba(255,255,255,0.95)"/><circle cx="230" cy="70" r="0.7" fill="rgba(255,255,255,0.8)"/><circle cx="300" cy="70" r="0.8" fill="rgba(255,255,255,0.8)"/><circle cx="325" cy="30" r="0.6" fill="rgba(255,255,255,0.7)"/><circle cx="390" cy="60" r="1.1" fill="rgba(255,255,255,0.95)"/><circle cx="410" cy="90" r="0.5" fill="rgba(255,255,255,0.6)"/><circle cx="70" cy="150" r="0.7" fill="rgba(255,255,255,0.8)"/><circle cx="120" cy="180" r="0.9" fill="rgba(255,255,255,0.85)"/><circle cx="170" cy="170" r="0.5" fill="rgba(255,255,255,0.6)"/><circle cx="230" cy="160" r="1.3" fill="rgba(255,255,255,0.95)"/><circle cx="280" cy="180" r="0.6" fill="rgba(255,255,255,0.7)"/><circle cx="330" cy="170" r="1.0" fill="rgba(255,255,255,0.85)"/><circle cx="380" cy="190" r="0.5" fill="rgba(255,255,255,0.6)"/><circle cx="435" cy="150" r="0.7" fill="rgba(255,255,255,0.8)"/><circle cx="30" cy="210" r="0.6" fill="rgba(255,255,255,0.7)"/><circle cx="80" cy="230" r="1.1" fill="rgba(255,255,255,0.95)"/><circle cx="125" cy="260" r="0.5" fill="rgba(255,255,255,0.6)"/><circle cx="180" cy="260" r="0.8" fill="rgba(255,255,255,0.8)"/><circle cx="240" cy="240" r="0.6" fill="rgba(255,255,255,0.7)"/><circle cx="280" cy="270" r="1.4" fill="rgba(255,255,255,0.95)"/><circle cx="330" cy="230" r="0.7" fill="rgba(255,255,255,0.8)"/><circle cx="390" cy="250" r="0.9" fill="rgba(255,255,255,0.85)"/><circle cx="450" cy="260" r="0.5" fill="rgba(255,255,255,0.6)"/><circle cx="20" cy="320" r="0.8" fill="rgba(255,255,255,0.8)"/><circle cx="50" cy="350" r="1.2" fill="rgba(255,255,255,0.95)"/><circle cx="100" cy="370" r="0.6" fill="rgba(255,255,255,0.7)"/><circle cx="150" cy="380" r="1.0" fill="rgba(255,255,255,0.85)"/><circle cx="200" cy="350" r="0.5" fill="rgba(255,255,255,0.6)"/><circle cx="270" cy="370" r="0.8" fill="rgba(255,255,255,0.8)"/><circle cx="330" cy="330" r="0.6" fill="rgba(255,255,255,0.7)"/><circle cx="380" cy="400" r="1.2" fill="rgba(255,255,255,0.95)"/><circle cx="440" cy="370" r="0.7" fill="rgba(255,255,255,0.8)"/><circle cx="480" cy="320" r="0.5" fill="rgba(255,255,255,0.6)"/></g></svg>');
    opacity: 0;
    animation: twinkle 6s ease-in-out infinite alternate;
    filter: grayscale(1);
}

.stars-bright {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="800" height="600" viewBox="0 0 800 600"><g><circle cx="150" cy="100" r="1.8" fill="rgba(255,255,255,1)"/><circle cx="380" cy="180" r="2.0" fill="rgba(255,255,255,1)"/><circle cx="610" cy="120" r="1.9" fill="rgba(255,255,255,1)"/><circle cx="200" cy="230" r="2.0" fill="rgba(255,255,255,1)"/><circle cx="450" cy="300" r="1.7" fill="rgba(255,255,255,1)"/><circle cx="700" cy="250" r="2.1" fill="rgba(255,255,255,1)"/><circle cx="300" cy="400" r="1.8" fill="rgba(255,255,255,1)"/><circle cx="550" cy="450" r="1.9" fill="rgba(255,255,255,1)"/></g></svg>');
    opacity: 0;
    animation: twinkle-bright 4s ease-in-out infinite alternate;
    filter: grayscale(1);
}

.stars-bright {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="800" height="600" viewBox="0 0 800 600"><g><circle cx="150" cy="100" r="1.8" fill="rgba(255,255,255,1)"/><circle cx="380" cy="180" r="2.0" fill="rgba(255,255,255,1)"/><circle cx="610" cy="120" r="1.9" fill="rgba(255,255,255,1)"/><circle cx="200" cy="230" r="2.0" fill="rgba(255,255,255,1)"/><circle cx="450" cy="300" r="1.7" fill="rgba(255,255,255,1)"/><circle cx="700" cy="250" r="2.1" fill="rgba(255,255,255,1)"/><circle cx="300" cy="400" r="1.8" fill="rgba(255,255,255,1)"/><circle cx="550" cy="450" r="1.9" fill="rgba(255,255,255,1)"/></g></svg>');
    opacity: 0;
    animation: twinkle-bright 4s ease-in-out infinite alternate;
    filter: grayscale(1);
}

.moon {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="800" height="600" viewBox="0 0 800 600"><defs><radialGradient id="moonSurface" cx="0.4" cy="0.4" r="0.4"><stop offset="0%" stop-color="rgba(255, 255, 255, 1)"/><stop offset="50%" stop-color="rgba(240, 240, 240, 1)"/><stop offset="100%" stop-color="rgba(220, 220, 220, 1)"/></radialGradient></defs><circle cx="650" cy="120" r="40" fill="url(%23moonSurface)" /><circle cx="640" cy="100" r="7" fill="rgba(200, 200, 200, 0.8)" /><circle cx="670" cy="130" r="9" fill="rgba(210, 210, 210, 0.7)" /><circle cx="630" cy="130" r="5" fill="rgba(200, 200, 200, 0.6)" /></svg>');
    pointer-events: none;
    filter: grayscale(1);
}

.moon-glow {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="800" height="600" viewBox="0 0 800 600"><defs><radialGradient id="moonGlow" cx="0.5" cy="0.3" r="0.4"><stop offset="0%" stop-color="rgba(255, 255, 255, 0.4)"/><stop offset="20%" stop-color="rgba(230, 230, 230, 0.2)"/><stop offset="100%" stop-color="rgba(200, 200, 200, 0)"/></radialGradient></defs><circle cx="650" cy="120" r="200" fill="url(%23moonGlow)" /></svg>');
    pointer-events: none;
    opacity: 0.9;
    filter: grayscale(1);
}

@keyframes twinkle {

    0%,
    10% {
        opacity: 0.6;
        filter: blur(0.3px) grayscale(1);
    }

    50% {
        opacity: 0.8;
        filter: blur(0.2px) grayscale(1);
    }

    90%,
    100% {
        opacity: 0.7;
        filter: blur(0.3px) grayscale(1);
    }
}

@keyframes twinkle-bright {

    0%,
    20% {
        opacity: 0.7;
        filter: blur(0px) grayscale(1);
    }

    60% {
        opacity: 1;
        filter: blur(1px) grayscale(1);
    }

    80%,
    100% {
        opacity: 0.9;
        filter: blur(0px) grayscale(1);
    }
}

/* Enhanced Rain Effect CSS */
.rain-overlay {
    background-color: rgba(70, 80, 100, 0.3);
    overflow: hidden;
    position: relative;
}

/* Multiple rain layers for depth */
.rain-layer1,
.rain-layer2 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

/* First layer (foreground) - thicker, faster rain */
.rain-layer1 {
    background-image:
        url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="50" height="50" viewBox="0 0 50 50"><line x1="10" y1="0" x2="8" y2="25" stroke="rgba(220,220,240,0.9)" stroke-width="1.5"/><line x1="20" y1="5" x2="18" y2="30" stroke="rgba(220,220,240,0.9)" stroke-width="1.5"/><line x1="30" y1="0" x2="28" y2="25" stroke="rgba(220,220,240,0.9)" stroke-width="1.5"/><line x1="40" y1="5" x2="38" y2="30" stroke="rgba(220,220,240,0.9)" stroke-width="1.5"/><line x1="25" y1="15" x2="23" y2="40" stroke="rgba(220,220,240,0.9)" stroke-width="1.5"/><line x1="15" y1="20" x2="13" y2="45" stroke="rgba(220,220,240,0.9)" stroke-width="1.5"/><line x1="35" y1="20" x2="33" y2="45" stroke="rgba(220,220,240,0.9)" stroke-width="1.5"/></svg>');
    animation: rain-fast 0.5s linear infinite;
    opacity: 0.9;
}

/* Second layer (background) - different pattern, slower */
.rain-layer2 {
    background-image:
        url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="75" height="75" viewBox="0 0 75 75"><line x1="10" y1="0" x2="7" y2="35" stroke="rgba(200,200,220,0.7)" stroke-width="1"/><line x1="25" y1="10" x2="22" y2="45" stroke="rgba(200,200,220,0.7)" stroke-width="1"/><line x1="40" y1="5" x2="37" y2="40" stroke="rgba(200,200,220,0.7)" stroke-width="1"/><line x1="55" y1="15" x2="52" y2="50" stroke="rgba(200,200,220,0.7)" stroke-width="1"/><line x1="70" y1="0" x2="67" y2="35" stroke="rgba(200,200,220,0.7)" stroke-width="1"/></svg>');
    animation: rain-slow 0.9s linear infinite;
    opacity: 0.7;
}

/* Water droplets on screen effect */
.rain-droplets {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="700" height="500" viewBox="0 0 700 500"><defs><filter id="blur" x="-50%" y="-50%" width="200%" height="200%"><feGaussianBlur in="SourceGraphic" stdDeviation="1" /></filter><radialGradient id="droplet" cx="0.5" cy="0.5" r="0.5"><stop offset="0%" stop-color="rgba(255,255,255,0.5)"/><stop offset="70%" stop-color="rgba(255,255,255,0.2)"/><stop offset="100%" stop-color="rgba(255,255,255,0)"/></radialGradient></defs><g filter="url(%23blur)"><ellipse cx="50" cy="50" rx="12" ry="14" fill="url(%23droplet)" transform="rotate(15)"/><ellipse cx="120" cy="80" rx="18" ry="22" fill="url(%23droplet)" transform="rotate(35)"/><ellipse cx="200" cy="40" rx="15" ry="18" fill="url(%23droplet)" transform="rotate(25)"/><ellipse cx="300" cy="70" rx="20" ry="25" fill="url(%23droplet)" transform="rotate(40)"/><ellipse cx="390" cy="60" rx="14" ry="17" fill="url(%23droplet)" transform="rotate(20)"/><ellipse cx="150" cy="180" rx="17" ry="21" fill="url(%23droplet)" transform="rotate(30)"/><ellipse cx="260" cy="160" rx="11" ry="15" fill="url(%23droplet)" transform="rotate(15)"/><ellipse cx="370" cy="170" rx="19" ry="24" fill="url(%23droplet)" transform="rotate(35)"/><ellipse cx="500" cy="90" rx="15" ry="19" fill="url(%23droplet)" transform="rotate(25)"/><ellipse cx="600" cy="140" rx="12" ry="16" fill="url(%23droplet)" transform="rotate(12)"/><ellipse cx="70" cy="280" rx="20" ry="26" fill="url(%23droplet)" transform="rotate(30)"/><ellipse cx="180" cy="250" rx="14" ry="18" fill="url(%23droplet)" transform="rotate(25)"/><ellipse cx="350" cy="270" rx="10" ry="12" fill="url(%23droplet)" transform="rotate(20)"/><ellipse cx="430" cy="240" rx="16" ry="19" fill="url(%23droplet)" transform="rotate(30)"/><ellipse cx="540" cy="290" rx="13" ry="17" fill="url(%23droplet)" transform="rotate(25)"/><ellipse cx="650" cy="260" rx="18" ry="21" fill="url(%23droplet)" transform="rotate(22)"/></g></svg>');
    opacity: 0.8;
    backdrop-filter: blur(1px);
}

/* Drip effects for running water */
.rain-drips {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="600" height="400" viewBox="0 0 600 400"><g opacity="0.7"><path d="M100,50 C95,80 105,80 100,110" stroke="rgba(220,230,240,0.5)" stroke-width="1.5" fill="none"/><path d="M220,20 C215,60 225,60 220,100" stroke="rgba(220,230,240,0.5)" stroke-width="1.5" fill="none"/><path d="M340,40 C335,90 345,90 340,140" stroke="rgba(220,230,240,0.5)" stroke-width="1.5" fill="none"/><path d="M460,15 C455,65 465,65 460,115" stroke="rgba(220,230,240,0.5)" stroke-width="1.5" fill="none"/><path d="M180,10 C175,50 185,50 180,90 C175,130 185,130 180,170" stroke="rgba(220,230,240,0.5)" stroke-width="1.5" fill="none"/><path d="M520,30 C515,80 525,80 520,130 C515,180 525,180 520,230" stroke="rgba(220,230,240,0.5)" stroke-width="1.5" fill="none"/></g></svg>');
}

/* Puddle/ripple effect */
.rain-puddles {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    pointer-events: none;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="500" height="400" viewBox="0 0 500 400"><defs><radialGradient id="ripple1"><stop offset="0%" stop-color="rgba(255,255,255,0)"/><stop offset="10%" stop-color="rgba(255,255,255,0.2)"/><stop offset="20%" stop-color="rgba(255,255,255,0)"/></radialGradient><radialGradient id="ripple2"><stop offset="0%" stop-color="rgba(255,255,255,0)"/><stop offset="10%" stop-color="rgba(255,255,255,0.15)"/><stop offset="20%" stop-color="rgba(255,255,255,0)"/></radialGradient></defs><circle cx="100" cy="350" r="20" fill="url(%23ripple1)" opacity="0.5"><animate attributeName="r" values="2;20;40" dur="3s" repeatCount="indefinite"/><animate attributeName="opacity" values="0.7;0.5;0" dur="3s" repeatCount="indefinite"/></circle><circle cx="300" cy="380" r="25" fill="url(%23ripple1)" opacity="0.4"><animate attributeName="r" values="5;25;45" dur="5s" repeatCount="indefinite"/><animate attributeName="opacity" values="0.7;0.5;0" dur="5s" repeatCount="indefinite"/></circle><circle cx="450" cy="370" r="15" fill="url(%23ripple2)" opacity="0.6"><animate attributeName="r" values="3;15;30" dur="4s" repeatCount="indefinite"/><animate attributeName="opacity" values="0.8;0.6;0" dur="4s" repeatCount="indefinite"/></circle><circle cx="180" cy="390" r="22" fill="url(%23ripple2)" opacity="0.5"><animate attributeName="r" values="4;22;40" dur="6s" repeatCount="indefinite"/><animate attributeName="opacity" values="0.7;0.5;0" dur="6s" repeatCount="indefinite"/></circle></svg>');
}

/* Lightning effect */
.lightning {
    background-color: rgba(255, 255, 255, 0.9);
    opacity: 0;
    transition: opacity 0.05s ease-in-out;
}

.lightning-bolt {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="800" height="600" viewBox="0 0 800 600"><g stroke="rgba(255, 255, 255, 0.9)" fill="none"><path d="M350,10 L330,100 L380,120 L340,250 L310,270 L370,400 L320,500" stroke-width="4"/><path d="M330,100 L300,120" stroke-width="2"/><path d="M380,120 L420,140" stroke-width="2"/><path d="M340,250 L310,290" stroke-width="3"/><path d="M310,270 L280,240" stroke-width="2"/><path d="M370,400 L340,380" stroke-width="2"/><path d="M370,400 L410,420" stroke-width="2"/></g></svg>');
    transition: opacity 0.1s ease-in-out;
}

/* Rain mist effect */
.rain-mist {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to bottom, rgba(150, 160, 180, 0.1), rgba(150, 160, 180, 0.2));
    opacity: 0.7;
    pointer-events: none;
    backdrop-filter: blur(0.5px);
}

/* Animations */
@keyframes rain-fast {
    from {
        background-position: 0 0;
    }

    to {
        background-position: -50px 50px;
    }
}

@keyframes rain-slow {
    from {
        background-position: 0 0;
    }

    to {
        background-position: -75px 75px;
    }
}

h1 {
    display: none;
}

#experience {
    width: 100vw;
}

.remote button {
    font-size: small !important;
}