/**
 * @file: style.css
 * @description: Estilização principal do documento.
 */

body {
    font-family: 'Inter', sans-serif;
    position: relative; 
    z-index: 1;
}

body::before {
    content: ''; 
    position: fixed; 
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: -1; 
    background-image: url('../src/images/backgrounds/elandor_background.png');
    background-size: cover;
    background-position: center;
    opacity: 0.4;
}

.font-cinzel {
    font-family: 'Cinzel', serif;
}
.card-bg {
    background-color: rgba(17, 12, 12, 0.8);
    backdrop-filter: blur(8px);
    border: 1px solid rgba(200, 160, 80, 0.3);
}
.tab-button {
    transition: all 0.3s ease;
    border-bottom: 2px solid transparent;
}
.tab-button.active, .tab-button:hover {
    border-bottom-color: #c8a050;
    color: #c8a050;
}
.modal-backdrop {
    background-color: rgba(0, 0, 0, 0.7);
    backdrop-filter: blur(5px);
}
.character-card:hover .character-name {
    opacity: 1;
    transform: translateY(0);
}
.character-name {
    opacity: 0;
    transition: all 0.3s ease-in-out;
    transform: translateY(10px);
}

/* Scrollbar styles */
::-webkit-scrollbar {
    width: 8px;
}
::-webkit-scrollbar-track {
    background: #2a1f1f;
}
::-webkit-scrollbar-thumb {
    background: #c8a050;
    border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
    background: #e6c070;
}
.hidden {
  display: none !important;
}

/* ESTILOS PARA A ROLAGEM DE DADOS (2D - substituídos pela versão 3D) */
/* Mantemos estes estilos para o texto de resultado que aparece sobre o canvas */
.dice-result-text {
    font-family: 'Cinzel', serif;
    font-size: 1.5em;
    color: #cbd5e1;
}

.dice-result-text .roll-value.success {
    color: #4ade80;
}

.dice-result-text .roll-value.failure {
    color: #f87171;
}

.dice-final-outcome {
    font-family: 'Cinzel', serif;
    font-size: 2.5em;
    font-weight: bold;
    margin-top: 10px;
    text-shadow: 0 0 10px black;
    opacity: 0;
    animation: fade-in-scale-up 0.8s ease-out forwards;
}

.dice-final-outcome.success {
    color: #4ade80;
}

.dice-final-outcome.failure {
    color: #f87171;
}

@keyframes fade-in-scale-up {
    0% {
        opacity: 0;
        transform: scale(0.8);
    }
    100% {
        opacity: 1;
        transform: scale(1);
    }
}


/* ESTILOS PARA A NOVA ROLAGEM DE DADOS 3D */
#dice-canvas-3d {
    width: 100%;
    max-width: 500px;
    height: 400px;
    outline: none;
}

#dice-result-overlay {
    /* Garante que o texto não interfere com os cliques no canvas 3D */
    pointer-events: none;
}