        :root {
            --primary-color: #2c3e50;
            --secondary-color: #3498db;
            --accent-color: #e74c3c;
            --light-bg: #f8f9fa;
            --dark-bg: #343a40;
            --success-color: #28a745;
            --warning-color: #ffc107;
            --info-color: #17a2b8;
            --border-color: #dee2e6;
        }
        
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
        }
        
        body {
            background-color: var(--light-bg);
            color: #333;
            line-height: 1.6;
        }
        
        .container {
            max-width: 1200px;
            margin: 0 auto;
            padding: 20px;
        }
        
        header {
            background-color: var(--primary-color);
            color: white;
            padding: 20px 0;
            margin-bottom: 30px;
            box-shadow: 0 2px 10px rgba(0,0,0,0.1);
        }
        
        .header-content {
            display: flex;
            justify-content: space-between;
            align-items: center;
        }
        
        h1 {
            font-size: 1.8rem;
            margin-bottom: 5px;
        }
       
        h2 {
        font-size: 1.4rem;
        color: var(--primary-color);
        margin-bottom: 20px;
        } 

        .alert {
            padding: 15px;
            margin-bottom: 20px;
            border-radius: 4px;
            background-color: #f8d7da;
            color: #721c24;
            border: 1px solid #f5c6cb;
            text-align: center;
            font-weight: bold;
        }
        
        .card {
            background-color: white;
            border-radius: 8px;
            box-shadow: 0 2px 10px rgba(0,0,0,0.05);
            margin-bottom: 30px;
            overflow: hidden;
        }
        
        .card-header {
            background-color: var(--primary-color);
            color: white;
            padding: 15px 20px;
            font-weight: bold;
            display: flex;
            justify-content: space-between;
            align-items: center;
            flex-wrap: wrap;
            gap: 10px;
        }
        
        .card-header a {
            color: white;
            text-decoration: underline;
            font-weight: normal;
            font-size: 0.9rem;
        }
        
        .card-header a:hover {
            text-decoration: none;
        }
        
        table {
            width: 100%;
            border-collapse: collapse;
        }
       
        table2 {
            width: 70%;
            border-collapse: collapse;
        }
 
        th, td {
            padding: 12px 15px;
            text-align: left;
            border-bottom: 1px solid var(--border-color);
        }
        
        th {
            background-color: #f2f2f2;
            font-weight: 600;
            color: var(--primary-color);
            position: sticky;
            top: 0;
        }


thead th {
    background-color: #2c3e50;
    color: white;
    font-weight: bold;
    padding: 15px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-bottom: 3px solid var(--secondary-color);
}

        tr:hover {
            background-color: rgba(0,0,0,0.02);
        }


/* Centralização das colunas específicas */
.align-center {
    text-align: center;
    vertical-align: middle;
}

/* Aplicar nas células das colunas Total e Nota */
.total-value, .note-value {
    text-align: center;
    vertical-align: middle;
}

/* Aplicar também aos cabeçalhos correspondentes */
th.align-center {
    text-align: center;
    vertical-align: middle;
    background-color: #2c3e50;
}

        
        .employee-name {
            font-weight: 500;
            color: var(--primary-color);
        }
        
        .employee-name a {
            color: inherit;
            text-decoration: none;
        }
        
        .employee-name a:hover {
            text-decoration: underline;
            color: var(--secondary-color);
        }
        
        .total-value {
            font-weight: bold;
            text-align: center;
        }
        
        .note-value {
            text-align: center;
            font-weight: 500;
        }
        
        .recalculate {
            text-align: center;
        }
        
        .recalculate a {
            display: inline-block;
            width: 24px;
            height: 24px;
            background-color: var(--secondary-color);
            color: white;
            border-radius: 50%;
            text-align: center;
            line-height: 24px;
            text-decoration: none;
            font-weight: bold;
        }
        
        .recalculate a:hover {
            background-color: #2185d0;
            transform: scale(1.1);
        }
       

  .indicator-name {
        font-weight: 500;
        color: var(--primary-color);
    }

    .indicator-item {
        color: #666;
        font-size: 0.9rem;
    }

    .indicator-value {
        font-weight: bold;
        text-align: center;
    }

    .total-row {
        background-color: var(--dark-bg) !important;
        color: white;
        font-weight: bold;
    }

    .section-divider {
        background-color: #6c757d;
        color: white;
        padding: 10px 15px;
        font-weight: bold;
    }

    a {
        color: var(--secondary-color);
        text-decoration: none;
    }

    a:hover {
        text-decoration: underline;
    }

.note {
        font-style: italic;
        color: #666;
        font-size: 0.9rem;
        display: block;
        margin-top: 5px;
    } 

    .btn {
        display: inline-block;
        padding: 8px 16px;
        background-color: var(--secondary-color);
        color: white;
        border-radius: 4px;
        text-align: center;
        transition: background-color 0.3s;
    }

    .btn:hover {
        background-color: #2185d0;
        text-decoration: none;
    }

       .back-btn {
        color: white;
        text-decoration: none;
        display: inline-flex;
        align-items: center;
        gap: 5px;
        }

        .back-btn:hover {
        text-decoration: underline;
        }
 
        @media (max-width: 768px) {
            th, td {
                padding: 8px 10px;
                font-size: 0.9rem;
            }
            
            .card-header {
                flex-direction: column;
                text-align: center;
            }
            
            .container {
                padding: 10px;
            }
        }
