/* ============================================
   HotelPro - Print Styles
   ============================================ */

@media print {
    *,
    *::before,
    *::after {
        background: white !important;
        color: black !important;
        box-shadow: none !important;
        text-shadow: none !important;
        border-color: #ddd !important;
    }

    body {
        font-size: 12pt;
        line-height: 1.4;
    }

    /* Hide UI elements */
    .sidebar,
    .top-header,
    .toast-container,
    .modal-overlay,
    .confirm-overlay,
    .btn,
    .nav-item,
    .filter-bar,
    .page-actions,
    .pagination,
    .room-filters,
    .tab-item-remove,
    #sidebar-toggle,
    #mobile-menu-btn,
    #notification-btn,
    #btn-logout,
    .no-print {
        display: none !important;
    }

    /* Show print container */
    .print-only {
        display: block !important;
    }

    .app-shell {
        display: block;
    }

    .main-wrapper {
        margin-left: 0 !important;
    }

    .main-content {
        padding: 0;
    }

    /* Print Header */
    .print-header {
        text-align: center;
        padding-bottom: 16pt;
        margin-bottom: 16pt;
        border-bottom: 2px solid black;
    }

    .print-header h1 {
        font-size: 18pt;
        font-weight: bold;
        margin-bottom: 4pt;
    }

    .print-header p {
        font-size: 10pt;
        color: #666 !important;
    }

    .print-header .print-date {
        font-size: 9pt;
        color: #999 !important;
        margin-top: 8pt;
    }

    /* Print Tables */
    .table {
        width: 100%;
        border-collapse: collapse;
    }

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

    .table th {
        background: #f0f0f0 !important;
        font-weight: bold;
    }

    .table tbody tr:nth-child(even) {
        background: #fafafa !important;
    }

    /* Print Summary */
    .print-summary {
        margin-top: 16pt;
        padding-top: 8pt;
        border-top: 1px solid #ddd;
    }

    .summary-row {
        display: flex;
        justify-content: space-between;
        padding: 4pt 0;
        font-size: 11pt;
    }

    .summary-row.total {
        font-size: 13pt;
        font-weight: bold;
        border-top: 2px solid black;
        padding-top: 8pt;
        margin-top: 8pt;
    }

    /* Print Footer */
    .print-footer {
        margin-top: 24pt;
        padding-top: 12pt;
        border-top: 1px solid #ddd;
        text-align: center;
        font-size: 8pt;
        color: #999 !important;
    }

    /* Badges in print */
    .badge {
        border: 1px solid #999;
        padding: 2pt 6pt;
        border-radius: 3pt;
        font-size: 8pt;
    }

    /* Page breaks */
    .page-break {
        page-break-before: always;
    }

    .no-break {
        page-break-inside: avoid;
    }

    /* Room card in print */
    .room-card {
        border: 1px solid #ddd;
        padding: 8pt;
        break-inside: avoid;
    }

    .room-card::before {
        display: none;
    }

    /* Cards in print */
    .card,
    .stat-card {
        border: 1px solid #ddd;
        padding: 8pt;
        break-inside: avoid;
    }
}
