:root { 
    --accent-gradient: linear-gradient(135deg, #8E24AA, #D500F9); 
    --primary-purple: #9D28F0;
}

/* Base Professional Setup */
body {
    background-color: #0F0817;
    color: white;
    overflow-x: hidden;
    user-select: none; /* Segurança: Impede seleção de texto */
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
}

/* Grain Overlay for Premium Texture */
.grain {
    position: fixed; top: 0; left: 0; width: 100%; height: 100%;
    pointer-events: none; z-index: 9999; opacity: 0.04;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");
}

/* Organic Floating Animation */
@keyframes drift {
    0% { transform: translate(-25vw, -8vh) rotate(-6deg) scale(0.9); }
    33% { transform: translate(15vw, 6vh) rotate(4deg) scale(1.05); }
    66% { transform: translate(25vw, -6vh) rotate(-3deg) scale(0.95); }
    100% { transform: translate(-15vw, 8vh) rotate(5deg) scale(1); }
}

.drifting {
    animation: drift 14s ease-in-out infinite alternate;
    will-change: transform;
}

.glow-text {
    text-shadow: 0 0 25px rgba(157, 40, 240, 0.5);
}

/* Bento Grid Cards - Glassmorphism */
.glass-card {
    background: rgba(255, 255, 255, 0.03);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.05);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.glass-card:hover {
    border-color: rgba(157, 40, 240, 0.6);
    background: rgba(157, 40, 240, 0.05);
    transform: translateY(-8px);
}

/* Modern Price Tag */
.price-tag {
    background: var(--accent-gradient);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    padding-right: 15px; /* Evita corte da letra itálica final */
}

/* Comparison Cards (VS) */
.vs-card { transition: all 0.3s ease; }
.vs-card.bad { opacity: 0.6; filter: grayscale(0.5); }
.vs-card.good { 
    border: 2px solid #22c55e; 
    box-shadow: 0 0 30px rgba(34, 197, 94, 0.2); 
    transform: scale(1.02);
    background: rgba(34, 197, 94, 0.05);
}

/* Self-Destructing Message Animation */
@keyframes disappear {
    0% { opacity: 1; transform: scale(1); filter: blur(0px); }
    100% { opacity: 0; transform: scale(0.8); filter: blur(10px); }
}
.message-disappear { animation: disappear 1.5s ease-out forwards; }

.pupil {
    transition: transform 0.12s cubic-bezier(0.2, 0.8, 0.2, 1);
}

/* Chat Mockup Styling */
.chat-mockup {
    background: rgba(20, 15, 35, 0.8);
    border: 1px solid rgba(157, 40, 240, 0.2);
    box-shadow: 0 0 50px rgba(157, 40, 240, 0.2);
}

.msg-purple {
    background: rgba(157, 40, 240, 0.2);
    border: 1px solid rgba(157, 40, 240, 0.3);
}

.msg-blue {
    background: rgba(79, 109, 245, 0.15);
    border: 1px solid rgba(79, 109, 245, 0.2);
}

.msg-destruct {
    background: rgba(239, 68, 68, 0.15);
    color: #fca5a5;
    border: 1px solid rgba(239, 68, 68, 0.3);
}

/* Premium Buttons */
.btn-premium {
    background: var(--accent-gradient);
    box-shadow: 0 0 20px rgba(157, 40, 240, 0.3);
    transition: all 0.3s ease;
}

.btn-premium:hover {
    box-shadow: 0 0 40px rgba(157, 40, 240, 0.5);
    transform: scale(1.05);
}

/* Scroll Indicators and Utilities */
::-webkit-scrollbar {
    width: 6px;
}
::-webkit-scrollbar-track {
    background: #0F0817;
}
::-webkit-scrollbar-thumb {
    background: #4A148C;
    border-radius: 10px;
}
::-webkit-scrollbar-thumb:hover {
    background: #9D28F0;
}
