/* ==========================================================================
   Print Stylesheet for Hardware & Networking Lab Manual
   Optimized for physical lab journals, submissions, and PDF export
   Developed by Ashish Vegan (https://www.ashishvegan.com)
   ========================================================================== */

@media print {
    *, *::before, *::after {
        background: transparent !important;
        color: #000000 !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }

    body {
        font-family: 'Times New Roman', Times, serif;
        font-size: 11pt;
        line-height: 1.4;
        background: #ffffff !important;
        color: #000000 !important;
        margin: 0;
        padding: 0;
    }

    /* Hide Navigation, Footer, Buttons, and Interactive Simulator Controls */
    .top-announcement-bar,
    .site-header,
    .practical-quick-actions,
    .btn,
    .btn-copy-code,
    .practical-sidebar,
    .adjacent-nav-grid,
    .back-to-top-btn,
    .breadcrumb-nav,
    .site-footer,
    .viva-accordion-controls,
    .sim-toolbar,
    .term-quick-chips,
    .term-input-row {
        display: none !important;
    }

    .container, .practical-content-layout {
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 !important;
        margin: 0 !important;
        display: block !important;
    }

    .practical-header-banner {
        border-bottom: 2px solid #000000;
        padding-bottom: 12pt;
        margin-bottom: 15pt;
    }

    .practical-main-title {
        font-size: 18pt !important;
        font-weight: bold;
        color: #000000 !important;
        margin-bottom: 6pt;
    }

    .practical-meta-top {
        font-size: 10pt;
        margin-bottom: 6pt;
    }

    .lab-card {
        border: 1px solid #cccccc !important;
        border-radius: 0 !important;
        margin-bottom: 15pt !important;
        page-break-inside: avoid;
    }

    .lab-card-header {
        background: #eeeeee !important;
        border-bottom: 1px solid #000000 !important;
        padding: 6pt 10pt !important;
    }

    .lab-card-title {
        font-size: 13pt !important;
        font-weight: bold;
        color: #000000 !important;
    }

    .lab-card-body {
        padding: 10pt !important;
    }

    /* Force all Viva Answers to be Visible on Print */
    .viva-answer-pane {
        display: block !important;
        padding: 6pt 0 !important;
    }

    .viva-item {
        border: none !important;
        border-bottom: 1px solid #dddddd !important;
        margin-bottom: 8pt !important;
        page-break-inside: avoid;
    }

    .viva-question-btn {
        padding: 4pt 0 !important;
        cursor: default !important;
    }

    .viva-chevron {
        display: none !important;
    }

    /* Observation Table Formatting */
    .table-responsive {
        border: 1px solid #000000 !important;
    }

    .lab-observation-table {
        border-collapse: collapse !important;
        width: 100% !important;
    }

    .lab-observation-table th, .lab-observation-table td {
        border: 1px solid #000000 !important;
        padding: 5pt !important;
        font-size: 9.5pt !important;
    }

    .lab-observation-table th {
        background: #e5e7eb !important;
        font-weight: bold;
    }

    /* Code Blocks */
    .command-code, pre, code {
        font-family: 'Courier New', Courier, monospace !important;
        font-size: 9pt !important;
        border: 1px solid #cccccc !important;
        background: #f9f9f9 !important;
        padding: 4pt !important;
    }

    /* Print SVG Constraints */
    svg {
        width: 14pt !important;
        height: 14pt !important;
        max-width: 14pt !important;
        max-height: 14pt !important;
        display: inline-block !important;
    }

    /* Print Footer note */
    body::after {
        content: "Hardware & Networking Hands-on Lab Manual • Developed by Ashish Vegan (https://www.ashishvegan.com)";
        display: block;
        text-align: center;
        font-size: 8pt;
        color: #666666 !important;
        margin-top: 20pt;
        border-top: 1px solid #cccccc;
        padding-top: 5pt;
    }
}
