/* ===== ENEM QUESTÕES SISTEMA - FRONTEND STYLES ===== */

/* Reset e Base */
.enem-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
    line-height: 1.6;
    color: #333;
}

.enem-container * {
    box-sizing: border-box;
}

/* ===== HEADER ===== */
.enem-header {
    text-align: center;
    margin-bottom: 40px;
    padding: 40px 20px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-radius: 12px;
    color: white;
}

.enem-title {
    font-size: 2.5rem;
    font-weight: 700;
    margin: 0 0 10px 0;
    text-shadow: 0 2px 4px rgba(0,0,0,0.3);
}

.enem-subtitle {
    font-size: 1.1rem;
    margin: 0;
    opacity: 0.9;
}

/* ===== BOTÕES ===== */
.enem-btn-primary {
    background: #3b82f6;
    color: white;
    border: none;
    padding: 12px 24px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.enem-btn-primary:hover {
    background: #2563eb;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(59, 130, 246, 0.4);
}

.enem-btn-secondary {
    background: #6b7280;
    color: white;
    border: none;
    padding: 12px 24px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.enem-btn-secondary:hover {
    background: #4b5563;
    transform: translateY(-2px);
}

.enem-btn-outline {
    background: transparent;
    color: #3b82f6;
    border: 2px solid #3b82f6;
    padding: 10px 22px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.enem-btn-outline:hover {
    background: #3b82f6;
    color: white;
    transform: translateY(-2px);
}

.enem-btn-nav {
    background: #f8fafc;
    color: #475569;
    border: 1px solid #e2e8f0;
    padding: 10px 16px;
    border-radius: 8px;
    font-size: 14px;
    cursor: pointer;
    transition: all 0.3s ease;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.enem-btn-nav:hover:not(:disabled) {
    background: #e2e8f0;
    border-color: #cbd5e1;
}

.enem-btn-nav:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

.enem-btn-small {
    padding: 6px 12px;
    font-size: 12px;
}

/* ===== FILTROS ===== */
.enem-filters-section {
    background: white;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 20px;
    margin-bottom: 30px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

.enem-filters-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

.enem-filters-header h3 {
    margin: 0;
    color: #1e293b;
    font-size: 1.25rem;
}

.enem-filters-container {
    border-top: 1px solid #e2e8f0;
    padding-top: 20px;
}

.enem-filter-row {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
    margin-bottom: 20px;
}

.enem-filter-group {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.enem-filter-group label {
    font-weight: 600;
    color: #374151;
    font-size: 14px;
}

.enem-select {
    padding: 10px 12px;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    font-size: 14px;
    background: white;
    transition: border-color 0.3s ease;
}

.enem-select:focus {
    outline: none;
    border-color: #3b82f6;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.enem-input {
    padding: 10px 12px;
    border: 1px solid #d1d5db;
    border-radius: 6px;
    font-size: 14px;
    transition: border-color 0.3s ease;
}

.enem-input:focus {
    outline: none;
    border-color: #3b82f6;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

/* ===== ESTATÍSTICAS ===== */
.enem-stats-bar {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
    margin-bottom: 30px;
}

.enem-stat-item {
    background: white;
    padding: 20px;
    border-radius: 12px;
    text-align: center;
    border: 1px solid #e2e8f0;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
    transition: transform 0.3s ease;
}

.enem-stat-item:hover {
    transform: translateY(-2px);
}

.enem-stat-number {
    display: block;
    font-size: 2rem;
    font-weight: 700;
    color: #3b82f6;
    margin-bottom: 5px;
}

.enem-stat-label {
    color: #6b7280;
    font-size: 14px;
    font-weight: 500;
}

/* ===== NAVEGAÇÃO ===== */
.enem-navigation {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
    padding: 20px;
    background: white;
    border-radius: 12px;
    border: 1px solid #e2e8f0;
}

.enem-questao-info {
    font-weight: 600;
    color: #374151;
    font-size: 16px;
}

/* ===== QUESTÃO ===== */
.enem-questao-container {
    background: white;
    border-radius: 12px;
    border: 1px solid #e2e8f0;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
    margin-bottom: 30px;
}

.enem-questao-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px;
    background: #f8fafc;
    border-bottom: 1px solid #e2e8f0;
}

.enem-questao-meta {
    display: flex;
    gap: 10px;
}

.enem-badge {
    background: #3b82f6;
    color: white;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
}

.enem-questao-actions {
    display: flex;
    gap: 10px;
}

.enem-questao-enunciado {
    padding: 30px;
}

.enem-questao-enunciado h3 {
    margin: 0 0 20px 0;
    color: #1e293b;
    font-size: 1.25rem;
}

.enem-enunciado-texto {
    font-size: 16px;
    line-height: 1.7;
    color: #374151;
}

.enem-alternativas {
    padding: 0 30px 30px;
}

.enem-alternativa {
    margin-bottom: 15px;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    transition: all 0.3s ease;
    cursor: pointer;
}

.enem-alternativa:hover {
    border-color: #3b82f6;
    background: #f8fafc;
}

.enem-alternativa input[type="radio"] {
    display: none;
}

.enem-alternativa label {
    display: flex;
    align-items: flex-start;
    padding: 15px;
    cursor: pointer;
    gap: 15px;
}

.enem-alternativa-letra {
    background: #e2e8f0;
    color: #475569;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 14px;
    flex-shrink: 0;
    transition: all 0.3s ease;
}

.enem-alternativa-texto {
    flex: 1;
    font-size: 15px;
    line-height: 1.6;
    color: #374151;
}

.enem-alternativa input[type="radio"]:checked + label .enem-alternativa-letra {
    background: #3b82f6;
    color: white;
}

.enem-alternativa input[type="radio"]:checked + label {
    background: #eff6ff;
}

.enem-alternativa.alternativa-correta {
    border-color: #10b981;
    background: #f0fdf4;
}

.enem-alternativa.alternativa-correta .enem-alternativa-letra {
    background: #10b981;
    color: white;
}

/* ===== FEEDBACK ===== */
.enem-feedback {
    margin: 20px 30px 30px;
    padding: 20px;
    border-radius: 8px;
    border-left: 4px solid #3b82f6;
}

.enem-feedback.feedback-sucesso {
    background: #f0fdf4;
    border-left-color: #10b981;
}

.enem-feedback.feedback-erro {
    background: #fef2f2;
    border-left-color: #ef4444;
}

.enem-feedback-header {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 15px;
}

.enem-feedback-icon {
    font-size: 20px;
}

.enem-feedback.feedback-sucesso .enem-feedback-icon {
    color: #10b981;
}

.enem-feedback.feedback-erro .enem-feedback-icon {
    color: #ef4444;
}

.enem-feedback-titulo {
    font-weight: 600;
    font-size: 16px;
}

.enem-feedback.feedback-sucesso .enem-feedback-titulo {
    color: #065f46;
}

.enem-feedback.feedback-erro .enem-feedback-titulo {
    color: #991b1b;
}

.enem-feedback-explicacao {
    font-size: 15px;
    line-height: 1.6;
    color: #374151;
}

/* ===== AÇÕES DA QUESTÃO ===== */
.enem-questao-actions {
    display: flex;
    justify-content: center;
    gap: 15px;
    margin-bottom: 30px;
}

/* ===== LOADING ===== */
.enem-loading {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 20px;
    color: #6b7280;
}

.enem-spinner {
    width: 40px;
    height: 40px;
    border: 4px solid #e2e8f0;
    border-top: 4px solid #3b82f6;
    border-radius: 50%;
    animation: spin 1s linear infinite;
    margin-bottom: 15px;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* ===== SIMULADOS ===== */
.enem-simulados-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 30px;
    margin-bottom: 40px;
}

.enem-simulado-card {
    background: white;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
    transition: all 0.3s ease;
}

.enem-simulado-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 25px rgba(0,0,0,0.15);
}

.enem-simulado-header {
    padding: 20px;
    background: #f8fafc;
    border-bottom: 1px solid #e2e8f0;
    display: flex;
    align-items: center;
    gap: 15px;
}

.enem-simulado-icon {
    width: 48px;
    height: 48px;
    background: #3b82f6;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 20px;
}

.enem-simulado-header h3 {
    flex: 1;
    margin: 0;
    font-size: 1.25rem;
    color: #1e293b;
}

.enem-simulado-badge {
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
}

.enem-badge-completo {
    background: #dbeafe;
    color: #1e40af;
}

.enem-badge-dia {
    background: #dcfce7;
    color: #166534;
}

.enem-badge-area {
    background: #fef3c7;
    color: #92400e;
}

.enem-badge-personalizado {
    background: #f3e8ff;
    color: #7c3aed;
}

.enem-simulado-info {
    padding: 20px;
}

.enem-simulado-info p {
    margin: 0 0 20px 0;
    color: #6b7280;
    line-height: 1.6;
}

.enem-simulado-detalhes {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 20px;
}

.enem-detalhe-item {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #374151;
    font-size: 14px;
}

.enem-simulado-areas {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.enem-area-tag {
    padding: 4px 10px;
    border-radius: 16px;
    font-size: 12px;
    font-weight: 600;
}

.enem-area-tag.linguagens {
    background: #dbeafe;
    color: #1e40af;
}

.enem-area-tag.humanas {
    background: #dcfce7;
    color: #166534;
}

.enem-area-tag.natureza {
    background: #fef3c7;
    color: #92400e;
}

.enem-area-tag.matematica {
    background: #fecaca;
    color: #991b1b;
}

.enem-area-tag.redacao {
    background: #f3e8ff;
    color: #7c3aed;
}

.enem-simulado-actions {
    padding: 20px;
    border-top: 1px solid #e2e8f0;
    display: flex;
    gap: 10px;
}

/* ===== CONFIGURAÇÕES PERSONALIZADAS ===== */
.enem-personalizado-config,
.enem-area-selector {
    margin-top: 15px;
    padding: 15px;
    background: #f8fafc;
    border-radius: 8px;
    border: 1px solid #e2e8f0;
}

.enem-config-row {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 15px;
    margin-bottom: 15px;
}

.enem-config-group {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.enem-checkbox-group {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.enem-checkbox-group label {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: normal;
    cursor: pointer;
}

/* ===== MODAL ===== */
.enem-modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
}

.enem-modal-content {
    background: white;
    border-radius: 12px;
    max-width: 500px;
    width: 90%;
    max-height: 90vh;
    overflow-y: auto;
    box-shadow: 0 20px 25px -5px rgba(0,0,0,0.1);
}

.enem-modal-header {
    padding: 20px;
    border-bottom: 1px solid #e2e8f0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.enem-modal-header h3 {
    margin: 0;
    font-size: 1.25rem;
    color: #1e293b;
}

.enem-modal-close {
    background: none;
    border: none;
    font-size: 24px;
    cursor: pointer;
    color: #6b7280;
    padding: 0;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    transition: background-color 0.3s ease;
}

.enem-modal-close:hover {
    background: #f3f4f6;
}

.enem-modal-body {
    padding: 20px;
}

.enem-modal-footer {
    padding: 20px;
    border-top: 1px solid #e2e8f0;
    display: flex;
    justify-content: flex-end;
    gap: 10px;
}

.enem-simulado-resumo {
    margin-bottom: 20px;
}

.enem-resumo-item {
    display: flex;
    justify-content: space-between;
    padding: 10px 0;
    border-bottom: 1px solid #f3f4f6;
}

.enem-resumo-label {
    font-weight: 600;
    color: #374151;
}

.enem-resumo-valor {
    color: #6b7280;
}

.enem-modal-aviso {
    background: #eff6ff;
    border: 1px solid #bfdbfe;
    border-radius: 8px;
    padding: 15px;
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.enem-modal-aviso .dashicons {
    color: #3b82f6;
    margin-top: 2px;
}

/* ===== HISTÓRICO ===== */
.enem-historico-section {
    margin-top: 40px;
}

.enem-historico-section h2 {
    margin-bottom: 20px;
    color: #1e293b;
}

.enem-historico-container {
    background: white;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    overflow: hidden;
}

.enem-historico-vazio {
    padding: 60px 20px;
    text-align: center;
    color: #6b7280;
}

.enem-historico-vazio .dashicons {
    font-size: 48px;
    margin-bottom: 15px;
    opacity: 0.5;
}

.enem-historico-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px;
    border-bottom: 1px solid #f3f4f6;
}

.enem-historico-item:last-child {
    border-bottom: none;
}

.enem-historico-info h4 {
    margin: 0 0 5px 0;
    color: #1e293b;
}

.enem-historico-info p {
    margin: 0;
    color: #6b7280;
    font-size: 14px;
}

.enem-historico-resultado {
    text-align: right;
}

.enem-historico-nota {
    display: block;
    font-size: 1.25rem;
    font-weight: 700;
    color: #3b82f6;
}

.enem-historico-acertos {
    font-size: 14px;
    color: #6b7280;
}

/* ===== ESTATÍSTICAS ===== */
.enem-stats-overview {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 20px;
    margin-bottom: 40px;
}

.enem-stat-card {
    background: white;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 25px;
    display: flex;
    align-items: center;
    gap: 20px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
    transition: transform 0.3s ease;
}

.enem-stat-card:hover {
    transform: translateY(-2px);
}

.enem-stat-icon {
    width: 60px;
    height: 60px;
    background: #3b82f6;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 24px;
}

.enem-stat-content h3 {
    margin: 0 0 5px 0;
    font-size: 2rem;
    font-weight: 700;
    color: #1e293b;
}

.enem-stat-content p {
    margin: 0;
    color: #6b7280;
    font-size: 14px;
}

/* ===== FILTROS DE PERÍODO ===== */
.enem-periodo-filtros {
    margin-bottom: 30px;
    display: flex;
    justify-content: center;
}

.enem-filtro-periodo {
    display: flex;
    background: white;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    overflow: hidden;
}

.enem-btn-periodo {
    background: white;
    border: none;
    padding: 10px 20px;
    cursor: pointer;
    transition: all 0.3s ease;
    border-right: 1px solid #e2e8f0;
    font-size: 14px;
}

.enem-btn-periodo:last-child {
    border-right: none;
}

.enem-btn-periodo:hover {
    background: #f8fafc;
}

.enem-btn-periodo.active {
    background: #3b82f6;
    color: white;
}

/* ===== GRÁFICOS ===== */
.enem-graficos-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    gap: 30px;
    margin-bottom: 40px;
}

.enem-grafico-card {
    background: white;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

.enem-grafico-header {
    padding: 20px;
    border-bottom: 1px solid #e2e8f0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.enem-grafico-header h3 {
    margin: 0;
    color: #1e293b;
    font-size: 1.1rem;
}

.enem-grafico-actions {
    display: flex;
    gap: 10px;
}

.enem-grafico-content {
    padding: 20px;
    height: 300px;
    position: relative;
}

.enem-grafico-legenda {
    padding: 15px 20px;
    border-top: 1px solid #f3f4f6;
    display: flex;
    flex-wrap: wrap;
    gap: 15px;
}

.enem-legenda-item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    color: #374151;
}

.enem-cor-linguagens,
.enem-cor-humanas,
.enem-cor-natureza,
.enem-cor-matematica {
    width: 12px;
    height: 12px;
    border-radius: 2px;
}

.enem-cor-linguagens { background: #3b82f6; }
.enem-cor-humanas { background: #10b981; }
.enem-cor-natureza { background: #f59e0b; }
.enem-cor-matematica { background: #ef4444; }

/* ===== ANÁLISE POR ÁREA ===== */
.enem-analise-areas {
    margin-bottom: 40px;
}

.enem-analise-areas h2 {
    margin-bottom: 30px;
    color: #1e293b;
}

.enem-areas-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 20px;
}

.enem-area-analise {
    background: white;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
    transition: all 0.3s ease;
    cursor: pointer;
}

.enem-area-analise:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

.enem-area-header {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 20px;
}

.enem-area-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 20px;
}

.enem-area-icon.linguagens { background: #3b82f6; }
.enem-area-icon.humanas { background: #10b981; }
.enem-area-icon.natureza { background: #f59e0b; }
.enem-area-icon.matematica { background: #ef4444; }

.enem-area-info h3 {
    margin: 0 0 8px 0;
    font-size: 1rem;
    color: #1e293b;
}

.enem-area-stats {
    display: flex;
    gap: 15px;
    font-size: 14px;
    color: #6b7280;
}

.enem-area-progresso {
    margin-bottom: 20px;
}

.enem-progresso-bar {
    width: 100%;
    height: 8px;
    background: #f3f4f6;
    border-radius: 4px;
    overflow: hidden;
}

.enem-progresso-fill {
    height: 100%;
    border-radius: 4px;
    transition: width 0.3s ease;
}

.enem-progresso-fill.linguagens { background: #3b82f6; }
.enem-progresso-fill.humanas { background: #10b981; }
.enem-progresso-fill.natureza { background: #f59e0b; }
.enem-progresso-fill.matematica { background: #ef4444; }

.enem-area-disciplinas {
    margin-bottom: 20px;
}

.enem-disciplina-item {
    display: flex;
    justify-content: space-between;
    padding: 8px 0;
    border-bottom: 1px solid #f3f4f6;
    font-size: 14px;
}

.enem-disciplina-item:last-child {
    border-bottom: none;
}

.enem-disciplina-percent {
    font-weight: 600;
    color: #3b82f6;
}

.enem-area-recomendacao {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 15px;
    background: #f8fafc;
    border-radius: 8px;
    border-left: 3px solid #3b82f6;
}

.enem-area-recomendacao .dashicons {
    color: #3b82f6;
    margin-top: 2px;
}

.enem-area-recomendacao p {
    margin: 0;
    font-size: 14px;
    color: #374151;
}

/* ===== TABELAS ===== */
.enem-simulados-tabela {
    background: white;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    overflow: hidden;
}

.enem-tabela {
    width: 100%;
    border-collapse: collapse;
}

.enem-tabela th {
    background: #f8fafc;
    padding: 15px;
    text-align: left;
    font-weight: 600;
    color: #374151;
    border-bottom: 1px solid #e2e8f0;
    font-size: 14px;
}

.enem-tabela td {
    padding: 15px;
    border-bottom: 1px solid #f3f4f6;
    font-size: 14px;
    color: #374151;
}

.enem-tabela tr:last-child td {
    border-bottom: none;
}

.enem-tabela-vazia {
    text-align: center;
    color: #6b7280;
    padding: 40px 15px;
}

.enem-tabela-vazia .dashicons {
    font-size: 32px;
    margin-bottom: 10px;
    opacity: 0.5;
}

/* ===== METAS ===== */
.enem-metas-section {
    margin-bottom: 40px;
}

.enem-metas-section h2 {
    margin-bottom: 30px;
    color: #1e293b;
}

.enem-metas-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 20px;
}

.enem-meta-card {
    background: white;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

.enem-meta-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 15px;
}

.enem-meta-header h3 {
    margin: 0;
    font-size: 1rem;
    color: #1e293b;
}

.enem-meta-status {
    font-weight: 700;
    color: #3b82f6;
}

.enem-meta-progresso {
    margin-bottom: 10px;
}

.enem-meta-card p {
    margin: 0;
    font-size: 14px;
    color: #6b7280;
}

/* ===== NOTIFICAÇÕES ===== */
.enem-notificacao {
    background: white;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 15px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 300px;
}

.enem-notificacao-success {
    border-left: 4px solid #10b981;
    background: #f0fdf4;
}

.enem-notificacao-error {
    border-left: 4px solid #ef4444;
    background: #fef2f2;
}

.enem-notificacao-warning {
    border-left: 4px solid #f59e0b;
    background: #fffbeb;
}

.enem-notificacao-info {
    border-left: 4px solid #3b82f6;
    background: #eff6ff;
}

/* ===== SIMULADO ATIVO ===== */
.enem-simulado-ativo {
    max-width: 1000px;
    margin: 0 auto;
    padding: 20px;
}

.enem-simulado-header-ativo {
    background: white;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 20px;
    margin-bottom: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

.enem-simulado-info-ativo h1 {
    margin: 0 0 10px 0;
    color: #1e293b;
    font-size: 1.5rem;
}

.enem-simulado-meta {
    display: flex;
    gap: 20px;
}

.enem-meta-item {
    display: flex;
    align-items: center;
    gap: 5px;
    color: #6b7280;
    font-size: 14px;
}

.enem-cronometro {
    text-align: right;
}

.enem-cronometro-display {
    font-size: 2rem;
    font-weight: 700;
    color: #1e293b;
    margin-bottom: 10px;
}

.enem-cronometro-barra {
    width: 200px;
    height: 8px;
    background: #f3f4f6;
    border-radius: 4px;
    overflow: hidden;
}

.enem-barra-progresso {
    height: 100%;
    background: #3b82f6;
    border-radius: 4px;
    transition: width 1s linear;
}

.enem-navegacao-simulado {
    background: white;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 20px;
    margin-bottom: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.enem-nav-questoes {
    display: flex;
    align-items: center;
    gap: 20px;
}

.enem-questao-contador {
    font-weight: 600;
    color: #374151;
    font-size: 16px;
}

.enem-nav-acoes {
    display: flex;
    gap: 10px;
}

.enem-questao-simulado-container {
    background: white;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 30px;
    margin-bottom: 20px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

.enem-questao-header-sim {
    margin-bottom: 25px;
}

.enem-questao-meta-sim {
    display: flex;
    align-items: center;
    gap: 15px;
}

.enem-questao-numero {
    font-weight: 700;
    color: #1e293b;
    font-size: 1.1rem;
}

.enem-questao-enunciado-sim {
    margin-bottom: 30px;
}

.enem-enunciado-texto-sim {
    font-size: 16px;
    line-height: 1.7;
    color: #374151;
}

.enem-alternativas-sim {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.enem-alternativa-sim {
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    transition: all 0.3s ease;
    cursor: pointer;
}

.enem-alternativa-sim:hover {
    border-color: #3b82f6;
    background: #f8fafc;
}

.enem-alternativa-sim input[type="radio"] {
    display: none;
}

.enem-alternativa-sim label {
    display: flex;
    align-items: flex-start;
    padding: 15px;
    cursor: pointer;
    gap: 15px;
}

.enem-alternativa-letra-sim {
    background: #e2e8f0;
    color: #475569;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 14px;
    flex-shrink: 0;
    transition: all 0.3s ease;
}

.enem-alternativa-texto-sim {
    flex: 1;
    font-size: 15px;
    line-height: 1.6;
    color: #374151;
}

.enem-alternativa-sim input[type="radio"]:checked + label .enem-alternativa-letra-sim {
    background: #3b82f6;
    color: white;
}

.enem-alternativa-sim input[type="radio"]:checked + label {
    background: #eff6ff;
}

/* ===== MAPA DE QUESTÕES ===== */
.enem-mapa-questoes {
    background: white;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 20px;
    margin-bottom: 20px;
}

.enem-mapa-questoes h3 {
    margin: 0 0 20px 0;
    color: #1e293b;
    font-size: 1.1rem;
}

.enem-mapa-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(40px, 1fr));
    gap: 8px;
    margin-bottom: 20px;
}

.enem-mapa-questao {
    width: 40px;
    height: 40px;
    border: 1px solid #e2e8f0;
    background: white;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
}

.enem-mapa-questao:hover {
    border-color: #3b82f6;
    background: #f8fafc;
}

.enem-mapa-questao.respondida {
    background: #dcfce7;
    border-color: #10b981;
    color: #166534;
}

.enem-mapa-questao.atual {
    background: #3b82f6;
    border-color: #3b82f6;
    color: white;
}

.enem-mapa-legenda {
    display: flex;
    gap: 20px;
    font-size: 14px;
}

.enem-status-nao-respondida,
.enem-status-respondida,
.enem-status-atual {
    width: 16px;
    height: 16px;
    border-radius: 3px;
    border: 1px solid #e2e8f0;
}

.enem-status-nao-respondida {
    background: white;
}

.enem-status-respondida {
    background: #dcfce7;
    border-color: #10b981;
}

.enem-status-atual {
    background: #3b82f6;
    border-color: #3b82f6;
}

/* ===== RESULTADOS ===== */
.enem-resultados {
    max-width: 800px;
    margin: 0 auto;
    padding: 20px;
}

.enem-resultados-header {
    text-align: center;
    margin-bottom: 40px;
    padding: 40px 20px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-radius: 12px;
    color: white;
}

.enem-resultados-header h1 {
    margin: 0 0 20px 0;
    font-size: 2rem;
}

.enem-resultado-principal {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

.enem-nota-final {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.enem-nota-numero {
    font-size: 4rem;
    font-weight: 700;
    margin-bottom: 5px;
}

.enem-nota-label {
    font-size: 1.1rem;
    opacity: 0.9;
}

.enem-acertos-detalhes {
    font-size: 1.1rem;
    opacity: 0.9;
}

.enem-resultados-detalhes {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
    margin-bottom: 40px;
}

.enem-detalhe-card {
    background: white;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 20px;
    display: flex;
    align-items: center;
    gap: 15px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

.enem-detalhe-card .dashicons {
    font-size: 24px;
    color: #3b82f6;
}

.enem-detalhe-card h3 {
    margin: 0 0 5px 0;
    font-size: 1rem;
    color: #1e293b;
}

.enem-detalhe-card p {
    margin: 0;
    color: #6b7280;
    font-size: 14px;
}

.enem-resultados-acoes {
    display: flex;
    justify-content: center;
    gap: 15px;
    flex-wrap: wrap;
}

/* ===== ALERTA DE TEMPO ===== */
.enem-alerta-tempo {
    position: fixed;
    top: 20px;
    right: 20px;
    background: #fef3c7;
    border: 1px solid #f59e0b;
    border-radius: 8px;
    padding: 15px;
    display: flex;
    align-items: center;
    gap: 10px;
    z-index: 9999;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
    color: #92400e;
    font-weight: 600;
}

.enem-alerta-tempo .dashicons {
    color: #f59e0b;
}

/* ===== RESPONSIVIDADE ===== */
@media (max-width: 768px) {
    .enem-container {
        padding: 15px;
    }
    
    .enem-title {
        font-size: 2rem;
    }
    
    .enem-filter-row {
        grid-template-columns: 1fr;
    }
    
    .enem-stats-bar {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .enem-navigation {
        flex-direction: column;
        gap: 15px;
    }
    
    .enem-simulados-grid {
        grid-template-columns: 1fr;
    }
    
    .enem-simulado-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }
    
    .enem-simulado-actions {
        flex-direction: column;
    }
    
    .enem-modal-content {
        width: 95%;
        margin: 20px;
    }
    
    .enem-modal-footer {
        flex-direction: column;
    }
    
    .enem-graficos-container {
        grid-template-columns: 1fr;
    }
    
    .enem-areas-grid {
        grid-template-columns: 1fr;
    }
    
    .enem-stats-overview {
        grid-template-columns: 1fr;
    }
    
    .enem-metas-grid {
        grid-template-columns: 1fr;
    }
    
    .enem-simulado-header-ativo {
        flex-direction: column;
        align-items: flex-start;
        gap: 20px;
    }
    
    .enem-cronometro {
        text-align: left;
        width: 100%;
    }
    
    .enem-cronometro-barra {
        width: 100%;
    }
    
    .enem-navegacao-simulado {
        flex-direction: column;
        gap: 15px;
    }
    
    .enem-nav-questoes {
        flex-direction: column;
        gap: 10px;
    }
    
    .enem-mapa-grid {
        grid-template-columns: repeat(auto-fill, minmax(35px, 1fr));
    }
    
    .enem-mapa-questao {
        width: 35px;
        height: 35px;
    }
    
    .enem-mapa-legenda {
        flex-direction: column;
        gap: 10px;
    }
    
    .enem-resultados-detalhes {
        grid-template-columns: 1fr;
    }
    
    .enem-resultados-acoes {
        flex-direction: column;
        align-items: center;
    }
    
    .enem-nota-numero {
        font-size: 3rem;
    }
}

@media (max-width: 480px) {
    .enem-stats-bar {
        grid-template-columns: 1fr;
    }
    
    .enem-questao-actions {
        flex-direction: column;
    }
    
    .enem-filtro-periodo {
        flex-direction: column;
    }
    
    .enem-btn-periodo {
        border-right: none;
        border-bottom: 1px solid #e2e8f0;
    }
    
    .enem-btn-periodo:last-child {
        border-bottom: none;
    }
}
