body { background-color: #09090b; color: #f4f4f5; font-family: 'Inter', 'Segoe UI', sans-serif; }

input[type="number"], input[type="email"] {
    background-color: #27272a; color: #f4f4f5; border-color: #3f3f46;
}
input[type="number"]:focus, input[type="email"]:focus {
    background-color: #18181b; border-color: #8b5cf6;
}
.input-group:focus-within label { color: #8b5cf6; }

.tooltip-container { position: relative; display: inline-block; margin-left: 6px; cursor: help;}
.tooltip-icon { color: #52525b; transition: color 0.2s; }
.tooltip-container:hover .tooltip-icon { color: #8b5cf6; }
.tooltip-text {
    visibility: hidden; width: 260px; max-width: calc(100vw - 2rem); background-color: #f4f4f5; color: #09090b;
    text-align: left; border-radius: 8px; padding: 10px 14px; font-size: 0.75rem;
    line-height: 1.4; position: absolute; z-index: 50; bottom: 125%; left: 50%;
    margin-left: -130px; opacity: 0; transition: opacity 0.3s;
}
.tooltip-text::after {
    content: ""; position: absolute; top: 100%; left: 50%; margin-left: -6px;
    border-width: 6px; border-style: solid; border-color: #f4f4f5 transparent transparent transparent;
}
.tooltip-container:hover .tooltip-text { visibility: visible; opacity: 1; }

/* Usado quando o icone fica perto da borda direita do card (ex: SLA Disp.), pra evitar que o tooltip vaze pra fora */
.tooltip-container--right .tooltip-text {
    left: auto; right: -8px; margin-left: 0;
}
.tooltip-container--right .tooltip-text::after {
    left: auto; right: 14px; margin-left: 0;
}

input[type=range] {
    -webkit-appearance: none;
    appearance: none;
    height: 8px;
    border-radius: 9999px;
    outline: none;
}
input[type=range]::-webkit-slider-thumb {
    -webkit-appearance: none;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #8b5cf6;
    border: 3px solid #f4f4f5;
    box-shadow: 0 0 0 2px rgba(139, 92, 246, 0.35);
    cursor: pointer;
    margin-top: -5px;
}
input[type=range]::-moz-range-track {
    height: 8px;
    border-radius: 9999px;
    background: #27272a;
}
input[type=range]::-moz-range-thumb {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #8b5cf6;
    border: 3px solid #f4f4f5;
    box-shadow: 0 0 0 2px rgba(139, 92, 246, 0.35);
    cursor: pointer;
}

.blur-sm { filter: blur(6px); user-select: none; pointer-events: none; }
.hidden { display: none !important; }

.video-container {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    border-radius: 1rem;
    border: 1px solid #27272a;
}
.video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

@media print {
    * { -webkit-print-color-adjust: exact !important; print-color-adjust: exact !important; }

    body { background: white; color: #18181b; }
    .no-print, header, .input-section, footer { display: none !important; }
    #dashboardResultados { display: block !important; filter: none !important; }

    /* Cards que no dark mode usam fundo solido/gradiente escuro viram fundo claro no PDF */
    #dashboardResultados .bg-brand-cardDark,
    #dashboardResultados .print-card-dark {
        background: #f4f4f5 !important;
        border: 1px solid #e4e4e7 !important;
    }
    #dashboardResultados .print-row-dark {
        background-color: #e4e4e7 !important;
    }

    /* Texto claro (pensado pra fundo escuro) vira texto escuro no PDF */
    #dashboardResultados .text-white,
    #dashboardResultados .text-brand-textLight {
        color: #18181b !important;
    }
    #dashboardResultados .text-brand-textMuted,
    #dashboardResultados .text-gray-300,
    #dashboardResultados .text-gray-400,
    #dashboardResultados .text-gray-500 {
        color: #52525b !important;
    }

    /* Excecao: icone branco sobre fundo roxo solido continua branco (contraste ja e alto) */
    #dashboardResultados .print-keep-white {
        color: #ffffff !important;
    }
}
