* { margin: 0; padding: 0; box-sizing: border-box; }

body { 
    background-color: #050505; 
    color: #fff; 
    font-family: 'Orbitron', sans-serif; 
    display: flex; 
    justify-content: center; 
    align-items: center; 
    min-height: 100vh; 
    overflow-x: hidden;
    background-size: cover;
    background-attachment: fixed;
    background-position: center;
}

#help-btn { 
    position: fixed; 
    top: 15px; 
    right: 15px; 
    background: #ff0000; 
    color: #fff; 
    padding: 10px 18px; 
    border-radius: 30px; 
    font-size: 0.7rem; 
    font-weight: 900; 
    cursor: pointer; 
    z-index: 1000; 
    box-shadow: 0 0 15px rgba(255,0,0,0.5); 
    border: none; 
}

.modal { 
    display: none; 
    position: fixed; 
    z-index: 9999; 
    left: 0; 
    top: 0; 
    width: 100%; 
    height: 100%; 
    background: rgba(0,0,0,0.8); 
}

/* --- ESTILO VIDRO FUMÊ --- */
.glass-card, .slider-container { 
    background: rgba(10, 10, 10, 0.45); /* Valor padrão, o JS vai alterar via Painel */
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    border: 2px solid #ff0000; 
    padding: 25px; 
    border-radius: 20px; 
    width: 100%; 
    max-width: 450px; 
    text-align: center; 
    display: flex; 
    flex-direction: column; 
    align-items: center; 
    box-shadow: 0 0 30px rgba(255,0,0,0.2); 
    transition: background 0.3s ease;
}

.slider-container { margin: 10vh auto; }

.step-slide { display: none; animation: fadeIn 0.3s ease; }
.step-slide.active { display: block; }
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }

.icon-circle { font-size: 3rem; margin-bottom: 15px; }
.progress-bar { width: 100%; height: 6px; background: rgba(255,255,255,0.1); border-radius: 3px; margin-bottom: 20px; overflow: hidden; }
#progress-fill { width: 25%; height: 100%; background: #ff0000; transition: 0.3s; }
.btn-next { width: 100%; padding: 15px; background: #ff0000; border: none; color: #fff; border-radius: 12px; font-family: 'Orbitron'; font-weight: 900; margin-top: 20px; cursor: pointer; }
.close { position: absolute; right: 20px; top: 15px; color: #fff; font-size: 24px; cursor: pointer; opacity: 0.5; }

#app-content { width: 100%; display: flex; flex-direction: column; align-items: center; padding: 20px; }
.logo { font-size: 1.8rem; margin-bottom: 20px; text-transform: uppercase; letter-spacing: 2px; text-align: center; }
.logo span { color: #ff0000; text-shadow: 0 0 10px #ff0000; }

.btn-pix, .btn-whatsapp, .btn-file-label, .btn-copy { width: 100%; max-width: 320px; padding: 15px; margin: 15px auto 0 auto; border: none; border-radius: 12px; font-family: 'Orbitron'; font-weight: 900; cursor: pointer; text-transform: uppercase; color: #fff; display: block; text-align: center; text-decoration: none; border-bottom: 5px solid rgba(0,0,0,0.4); }
.btn-pix { background: #ff0000; }
.btn-whatsapp { background: #25d366; }
.btn-file-label { background: rgba(0,0,0,0.4); border: 1px dashed #25d366; color: #25d366; font-size: 0.7rem; line-height: 1.2; }
.btn-copy { background: rgba(0,0,0,0.4); color: #25d366; border: 2px solid #25d366; font-size: 0.8rem; }

input { width: 100%; max-width: 320px; padding: 14px; margin: 10px auto; background: rgba(0,0,0,0.6); border: 1px solid rgba(255,255,255,0.1); color: #fff; border-radius: 10px; font-family: 'Orbitron'; text-align: center; display: block; }

.wheel-container { position: relative; width: 100%; max-width: 300px; margin: 20px auto; }
#wheel { width: 100%; height: auto; }
.pointer { position: absolute; top: -10px; left: 50%; transform: translateX(-50%); width: 30px; height: 30px; background: #ff0000; clip-path: polygon(50% 100%, 0 0, 100% 0); z-index: 10; }

.qr-container { background: #fff; padding: 10px; border-radius: 15px; margin: 15px 0; border: 3px solid #25d366; }
#result-text { margin-top: 15px; font-size: 1.1rem; color: #00d2ff; }
#result-text small { color: #aaa; font-size: 0.8rem; display: block; }