/* ============================================================
   Shared styles for movement section components
   (Transfer, Blend, Rack, Filter, BarrelDown, Bleed, VolumeChange)
   All rules scoped under .movement-section to avoid collisions.
   ============================================================ */

/* Container */
.movement-section {
    background: var(--pp-bg-white);
    border: var(--pp-border-heavy);
    font-family: Arial, sans-serif;
    font-size: var(--pp-font-size-sm);
    page-break-inside: avoid;
}

/* Header bar */
.movement-section .form-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--pp-spacing-sm) var(--pp-spacing-lg);
    background: var(--pp-bg-header);
    border-bottom: var(--pp-border);
}

.movement-section .job-label {
    display: flex;
    align-items: center;
    gap: var(--pp-spacing-sm);
    font-size: var(--pp-font-size-md);
}

/* Type badge — structure only; colors set per-section in scoped CSS */
.movement-section .type-badge {
    display: inline-block;
    padding: 2px var(--pp-spacing-sm);
    border-radius: var(--pp-radius-sm);
    font-size: var(--pp-font-size-xs);
    font-weight: 700;
    letter-spacing: 0.5px;
}

/* Same-lot badge — used by Transfer, Filter, BarrelDown */
.movement-section .same-lot-badge {
    display: inline-block;
    padding: 2px var(--pp-spacing-sm);
    background: #dbeafe;
    color: #1e40af;
    border-radius: var(--pp-radius-sm);
    font-size: var(--pp-font-size-xs);
    font-weight: 600;
}

/* Status area (right side of header) */
.movement-section .status-label {
    display: flex;
    align-items: center;
    gap: var(--pp-spacing-sm);
    font-size: var(--pp-font-size-sm);
}

.movement-section .status-text {
    color: var(--pp-text-secondary);
}

.movement-section .section-indicator {
    margin-left: var(--pp-spacing-md);
    padding: 2px 8px;
    background: #e2e8f0;
    color: #475569;
    font-size: var(--pp-font-size-xs);
    font-weight: 600;
    border-radius: 4px;
}

/* ---- Two-Column Layout (all sections except VolumeChange) ---- */

.movement-section .movement-columns {
    display: flex;
    gap: 2px;
    background: #000;
}

.movement-section .movement-column {
    flex: 1;
    background: var(--pp-bg-white);
}

.movement-section .column-header {
    padding: var(--pp-spacing-xs) var(--pp-spacing-md);
    font-size: var(--pp-font-size-xs);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.movement-section .drain-header {
    background: #fee2e2;
    color: #991b1b;
}

.movement-section .fill-header {
    background: #dcfce7;
    color: #166534;
}

.movement-section .column-title {
    display: block;
}

/* ---- Print ---- */

@media print {
    .movement-section {
        border: 3px solid #000 !important;
    }

    .movement-section .form-header {
        background: #f0f0f0 !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .movement-section .section-indicator {
        background: #e2e8f0 !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .movement-section .same-lot-badge {
        background: #dbeafe !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .movement-section .drain-header {
        background: #fee2e2 !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .movement-section .fill-header {
        background: #dcfce7 !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
}
