/* =========================================================
   TABLE MANAGER — drag & drop colonne
   ========================================================= */

.managed-table th.dragging-col {
    opacity: .5;
}

.managed-table th.drag-over-col {
    outline: 2px solid var(--clr-primary);
    outline-offset: -2px;
}

/* =========================================================
   ROOT — Palette A (Navy + Arancione)
   ========================================================= */

:root {
    --clr-navbar: #1a2f4e;
    --clr-primary: #2563eb;
    --clr-accent: #f97316;
    --clr-bg-page: #f1f5f9;
    --clr-bg-card: #ffffff;
    /* Override variabili Bootstrap */
    --bs-primary: var(--clr-primary);
    --bs-primary-rgb: 37, 99, 235;
    --bs-body-bg: var(--clr-bg-page);
    --bs-link-color: var(--clr-primary);
    --bs-link-hover-color: #1d4ed8;
}

/* =========================================================
   BASE
   ========================================================= */

html {
    font-size: 14px;
    position: relative;
    min-height: 100%;
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

body {
    margin-bottom: 60px;
    background-color: var(--clr-bg-page);
}

/* =========================================================
   BOTTONI
   ========================================================= */

.btn-select-all, .btn-deselect-all {
    font-size: .65rem;
    padding: .05rem .3rem;
    line-height: 1.2;
}

/* Primario */
.btn-primary {
    --bs-btn-bg: var(--clr-primary);
    --bs-btn-border-color: var(--clr-primary);
    --bs-btn-hover-bg: #1d4ed8;
    --bs-btn-hover-border-color: #1d4ed8;
    --bs-btn-active-bg: #1e40af;
}

/* Accento (export / azioni secondarie) */
.btn-accent {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--clr-accent);
    --bs-btn-border-color: var(--clr-accent);
    --bs-btn-hover-bg: #ea6c0a;
    --bs-btn-hover-border-color: #ea6c0a;
    --bs-btn-active-bg: #c2570a;
    --bs-btn-active-border-color: #c2570a;
    color: #fff;
}

/* Focus universale */
.btn:focus,
.btn:active:focus,
.btn-link.nav-link:focus,
.form-control:focus,
.form-check-input:focus {
    box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem var(--clr-primary);
}

/* =========================================================
   CARD / TABELLE
   ========================================================= */

.card {
    background-color: var(--clr-bg-card);
}

.table {
    --bs-table-bg: var(--clr-bg-card);
}

/* =========================================================
   TABLE EXPORT BAR
   ========================================================= */

.table-export-bar {
    display: flex;
    gap: .375rem;
    align-items: center;
    flex-shrink: 0;
}

/* =========================================================
   FORM FLOATING placeholder
   ========================================================= */

.form-floating > .form-control-plaintext::placeholder,
.form-floating > .form-control::placeholder {
    color: var(--bs-secondary-color);
    text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder,
.form-floating > .form-control:focus::placeholder {
    text-align: start;
}

/* =========================================================
   PRINT — nasconde tutto tranne la tabella target
   ========================================================= */

@media print {

    body.printing-table > *:not(#print-target-container) {
        display: none !important;
    }

    #print-target-container {
        display: block !important;
        font-family: Arial, sans-serif;
        font-size: 11pt;
        color: #000;
        padding: 0;
        margin: 0;
    }

    .print-table-title {
        font-size: 14pt;
        font-weight: bold;
        margin-bottom: .5rem;
    }

    .print-table {
        width: 100%;
        border-collapse: collapse;
    }

        .print-table th,
        .print-table td {
            border: 1px solid #000;
            padding: 4px 8px;
            text-align: left;
            font-size: 10pt;
        }

        .print-table thead th {
            background-color: #e0e0e0;
            font-weight: bold;
        }

        .print-table tbody tr:nth-child(even) {
            background-color: #f5f5f5;
        }
}
