/* Activity Print Modal Styles */
.supply-selection {
    padding: 10px 0;
    border-bottom: 1px solid #eee;
}

.supply-selection:last-child {
    border-bottom: none;
}

.supply-selection .row {
    align-items: center;
}

.supply-selection .text-muted {
    font-size: 12px;
}

.supply-selection .input-group {
    margin-top: 5px;
}

/* Order Tickets Styles - 80mm Thermal Printer Optimized */
.order-ticket {
    font-family: 'Courier New', monospace; /* Better for thermal printers */
    font-size: 9px; /* Reduced for 80mm compatibility */
    line-height: 1.2;
    max-width: 72mm; /* 80mm thermal printer width minus margins */
    width: 72mm;
    margin: 0 auto;
    padding: 0;
    border: 2px solid #000; /* Thinner border for thermal printers */
    background: white;
    page-break-inside: avoid;
}

/* Specific styles for placement and removal tickets */
.placement-ticket .ticket-header h1 {
    background-color: #000 !important;
    color: white !important;
}

.removal-ticket .ticket-header h1 {
    background-color: white !important;
    color: black !important;
    border: 2px solid #000;
}

.ticket-header {
    text-align: center;
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

.ticket-header h1 {
    background-color: #000;
    color: white;
    margin: 0;
    padding: 6px 0; /* Reduced padding */
    font-size: 12px; /* Reduced font size */
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.5px; /* Reduced letter spacing */
}

.ticket-number {
    margin: 0;
    padding: 12px 16px; /* Reduced padding */
    font-size: 9px; /* Reduced font size */
    font-weight: bold;
    text-align: center;
    border-bottom: 1px solid #000;
}

.ticket-info {
    margin: 0;
    padding: 12px 16px; /* Reduced padding */
    border-bottom: 1px solid #000;
}

.ticket-row {
    display: block;
    margin-bottom: 6px; /* Reduced margin */
    line-height: 1.2;
}

.ticket-row:last-child {
    margin-bottom: 0;
}

.ticket-field {
    font-size: 9px; /* Reduced font size */
    margin-right: 12px; /* Reduced margin */
    display: inline-block;
}

.address-field {
    font-size: 12px; /* Increased font size for better readability in trucks */
    font-weight: bold;
    display: block;
    margin-top: 3px; /* Reduced margin */
    margin-left: 60px; /* Reduced margin */
}

.ticket-supplies {
    margin: 0;
    padding: 8px 12px; /* Reduced padding */
}

.supply-line {
    margin-bottom: 6px; /* Reduced margin */
}

.supply-line:last-child {
    margin-bottom: 0;
}

.supply-row {
    display: block; /* Changed from flex to block for thermal printer compatibility */
    margin-bottom: 0;
    position: relative;
}

.supply-item {
    display: inline-block;
    width: 60px; /* Fixed width instead of flex */
    text-align: left;
    font-size: 9px; /* Reduced font size */
}

.supply-dots {
    display: inline-block;
    text-align: center;
    font-family: 'Courier New', monospace;
    letter-spacing: 1px; /* Reduced letter spacing */
    font-size: 9px; /* Reduced font size */
    margin: 0 8px; /* Reduced margin */
    width: 40px; /* Fixed width */
}

.supply-quantity {
    display: inline-block;
    text-align: right;
    font-weight: bold;
    font-size: 9px; /* Reduced font size */
    width: 20px; /* Fixed width */
}

.ticket-observations {
    margin: 0;
    padding: 0;
    border-bottom: 1px solid #000;
}

.ticket-observations h3 {
    background-color: #000;
    color: white;
    margin: 0;
    padding: 6px 0; /* Reduced padding */
    font-size: 10px; /* Reduced font size */
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.5px; /* Reduced letter spacing */
}

/* White background for removal ticket sections */
.removal-ticket .ticket-observations h3 {
    background-color: white !important;
    color: black !important;
    border: 2px solid #000;
}

.obs-lines {
    margin: 0;
    padding: 12px 16px; /* Reduced padding */
}

.obs-line {
    margin-bottom: 12px; /* Reduced margin */
    font-size: 9px; /* Reduced font size */
    border-bottom: 1px solid #000;
    height: 12px; /* Reduced height */
}

.obs-line:last-child {
    margin-bottom: 0;
}

.ticket-footer {
    border-top: none;
    padding: 0;
    margin: 0;
}

.footer-section h3 {
    background-color: #000;
    color: white;
    margin: 0;
    padding: 6px 0; /* Reduced padding */
    font-size: 10px; /* Reduced font size */
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.5px; /* Reduced letter spacing */
}

/* White background for removal ticket footer */
.removal-ticket .footer-section h3 {
    background-color: white !important;
    color: black !important;
    border: 2px solid #000;
}

.footer-field {
    font-size: 9px; /* Reduced font size */
    margin: 0;
    padding: 8px 12px; /* Reduced padding */
}

/* Print-specific styles for 80mm thermal printers */
@page {
    margin: 0; /* No page margins for thermal printers */
    size: auto;
}

@media print {
    body {
        margin: 0;
        padding: 0;
        font-size: 9px; /* Reduced font size */
        line-height: 1.2;
        width: 80mm; /* Set body width to 80mm */
    }
    
    .order-ticket {
        padding: 0;
        margin: 0 auto;
        max-width: 72mm; /* 80mm minus margins */
        width: 72mm;
        page-break-inside: avoid;
        border: 2px solid #000; /* Thinner border */
        background: white;
        font-size: 9px; /* Reduced font size */
        font-family: 'Courier New', monospace; /* Better for thermal printers */
    }
    
    /* Center tickets on page */
    .tickets-container {
        text-align: center;
        margin: 0 auto;
        padding: 0;
        width: 80mm;
    }
    
    .ticket-card {
        box-shadow: none !important;
        border: none !important;
        margin: 0 !important;
        padding: 0 !important;
        width: 72mm !important;
    }
    
    .page-break {
        page-break-before: always;
    }
    
    .hidden-print {
        display: none !important;
    }
    
    /* Hide specific UI elements when printing */
    .hidden-print,
    header#header,
    aside#sidebar,
    aside#notifications,
    .btn:not(.print-ticket-btn),
    .breadcrumb,
    .navbar {
        display: none !important;
    }
    
    /* Ensure black backgrounds print correctly for placement tickets */
    .placement-ticket .ticket-header h1,
    .placement-ticket .ticket-observations h3,
    .placement-ticket .footer-section h3 {
        background-color: #000 !important;
        color: white !important;
        -webkit-print-color-adjust: exact !important;
        print-color-adjust: exact !important;
    }
    
    /* Ensure white backgrounds print correctly for removal tickets */
    .removal-ticket .ticket-header h1,
    .removal-ticket .ticket-observations h3,
    .removal-ticket .footer-section h3 {
        background-color: white !important;
        color: black !important;
        border: 2px solid #000 !important;
        -webkit-print-color-adjust: exact !important;
        print-color-adjust: exact !important;
    }
    
    /* Print-specific borders */
    .obs-line {
        border-bottom: 1px solid #000 !important;
    }
    
    .ticket-number,
    .ticket-info,
    .ticket-observations {
        border-bottom: 1px solid #000 !important;
    }
    
    .order-ticket {
        border: 2px solid #000 !important; /* Thinner border for thermal printers */
    }
    
    /* Ensure address field has larger font size for readability */
    .address-field {
        font-size: 12px !important; /* Increased font size for better readability in trucks */
        font-weight: bold !important;
    }
    
    /* Thermal printer specific optimizations */
    * {
        -webkit-print-color-adjust: exact !important;
        print-color-adjust: exact !important;
    }
    
    /* Ensure no background colors interfere */
    .card,
    .card-body,
    .card-header {
        background: white !important;
        border: none !important;
        box-shadow: none !important;
    }
} 