/* ===== PRINT STYLES ===== */
@media print {
    /* Hide unnecessary elements */
    .navbar,
    .footer,
    #shareButton,
    #mediaButtons,
    hr {
        display: none !important;
    }
    
    /* Reset page layout for print */
    body {
        background: white !important;
        color: black !important;
        font-size: 12pt !important;
        line-height: 1.4 !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    
    /* Main content styling */
    .section {
        padding: 0 !important;
        margin: 0 !important;
    }
    
    .columns {
        margin: 0 !important;
    }
    
    .column {
        padding: 0.5rem !important;
    }
    
    /* Recipe image styling for print */
    .is-flex figure.image {
        max-width: 200px !important;
        margin: 0 auto 1rem auto !important;
        border-radius: 0 !important;
        box-shadow: none !important;
    }
    
    .is-flex figure.image img {
        border-radius: 0 !important;
    }
    
    /* Title styling */
    .title {
        font-size: 18pt !important;
        margin-bottom: 0.5rem !important;
        page-break-after: avoid !important;
    }
    
    /* Stats and macros tables */
    .columns.is-mobile .column {
        text-align: center !important;
        font-size: 10pt !important;
        padding: 0.25rem !important;
        border-right: 1px solid #000 !important;
    }
    
    .columns.is-mobile .column:last-child {
        border-right: none !important;
    }
    
    /* Content styling */
    .content {
        font-size: 11pt !important;
        line-height: 1.3 !important;
    }
    
    .content h2,
    .content h3,
    .content h4 {
        page-break-after: avoid !important;
        margin-top: 1rem !important;
        margin-bottom: 0.5rem !important;
    }
    
    .content h2 {
        font-size: 14pt !important;
        font-weight: bold !important;
    }
    
    .content h3 {
        font-size: 12pt !important;
        font-weight: bold !important;
    }
    
    .content h4 {
        font-size: 11pt !important;
        font-weight: bold !important;
    }
    
    /* Lists styling */
    .content ul,
    .content ol {
        margin-top: 0.5rem !important;
        margin-bottom: 0.5rem !important;
        padding-left: 1.5rem !important;
    }
    
    .content li {
        font-size: 11pt !important;
        line-height: 1.3 !important;
        margin-bottom: 0.25rem !important;
        page-break-inside: avoid !important;
    }
    
    /* Prevent page breaks in bad places */
    .container,
    .content > div {
        page-break-inside: avoid !important;
    }
    
    /* Tagline styling */
    .subtitle {
        font-size: 11pt !important;
        font-style: italic !important;
        margin-bottom: 1rem !important;
    }
    
    /* Remove shadows and borders for print */
    * {
        box-shadow: none !important;
        border-radius: 0 !important;
    }
    
    /* Ensure proper margins for the page */
    @page {
        margin: 1in;
        size: auto;
    }
}

/* Print-specific adjustments when printing class is added */
body.printing {
    background: white !important;
}

body.printing .navbar,
body.printing .footer,
body.printing #shareButton,
body.printing #mediaButtons,
body.printing hr {
    display: none !important;
}
