/**
 * Impression / Enregistrer en PDF (navigateur).
 * Fiche recette : document A4 portrait, sans interactivité.
 * Timeline : paysage (inchangé).
 */

@media print {
    /* ——— Format page ——— */
    @page brew-print-portrait {
        size: A4 portrait;
        margin: 12mm 14mm 20mm;
    }

    @page brew-print-landscape {
        size: A4 landscape;
        margin: 8mm 10mm 16mm;
    }

    .brew-page.brewrecipe-view-page:not(.brewrecipe-timeline-page) {
        page: brew-print-portrait;
    }

    .brew-page.brewrecipe-timeline-page {
        page: brew-print-landscape;
    }

    @page {
        size: A4 portrait;
        margin: 12mm 14mm 20mm;
    }

    /* ——— Chrome phpBB ——— */
    #page-header,
    #page-footer,
    .navbar,
    .headerbar,
    #nav-main,
    #darkenwrapper,
    #phpbb_alert,
    .skip-link,
    .dropdown,
    .dropdown-container,
    .notification {
        display: none !important;
    }

    body,
    #wrap,
    #page-body,
    #page-body > .inner,
    #page-body .content,
    .post,
    .brew-page {
        width: auto !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
        background: #fff !important;
        box-shadow: none !important;
        border: none !important;
        color: #111 !important;
    }

    .brew-page,
    .brew-page * {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    /* ——— Pied de page fixe (fiche + timeline) ——— */
    .brewrecipes-print-footer {
        display: block !important;
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        margin: 0;
        padding: 4px 0 0;
        border-top: 1px solid #ccc;
        text-align: center;
        font-size: 8pt;
        line-height: 1.3;
        color: #555 !important;
        background: #fff;
    }

    .brewrecipes-copyright,
    .brewrecipes-footer {
        display: none !important;
    }

    /* ——— Masquer interactivité / partage / actions ——— */
    .brew-page button,
    .brew-page .inputbox,
    .brew-view-calendar-item,
    .brew-timeline-summary-calendar,
    .brew-view-beerxml-item,
    .brew-bbcode-box,
    .brew-comment-form,
    .brew-view-edit-form,
    .brew-delete-photo-form,
    .brew-delete-photo-label,
    .brew-import-success,
    #brew-favorite-form-token,
    .brew-favorite-button,
    .brew-view-title-actions,
    .brew-favorite-title-button,
    .brew-share-title-button,
    .brew-view-mode-select,
    .brew-recipe-view-toggle,
    .brew-view-header-actions,
    .brew-timeline-narrow-notice,
    .button,
    .button-secondary,
    .button-primary,
    a.button,
    input[type="submit"],
    input[type="button"],
    input[type="text"],
    textarea,
    select {
        display: none !important;
    }

    .brew-page .panel:has(.brew-view-actions-grid),
    .brew-page .panel:has(.brew-table-icon-comments),
    .brew-page .brew-recipe-comments-panel {
        display: none !important;
    }

    /* Liens → texte neutre */
    .brew-page a {
        color: inherit !important;
        text-decoration: none !important;
        pointer-events: none !important;
    }

    .brew-page a[href]::after {
        content: none !important;
    }

    /* ——— Typographie commune ——— */
    .brew-page table {
        width: 100% !important;
        font-size: 8.5pt !important;
        border-collapse: collapse !important;
    }

    .brew-page table th,
    .brew-page table td {
        padding: 3px 6px !important;
    }

    .brew-page h2 {
        font-size: 11pt !important;
        font-weight: 700 !important;
        margin: 10px 0 6px !important;
        break-after: avoid;
        page-break-after: avoid;
    }

    .brew-page .panel {
        box-shadow: none !important;
        background: #fff !important;
        break-inside: auto;
        page-break-inside: auto;
    }

    .brew-page .panel .inner {
        padding: 8px 0 !important;
    }

    /* ===================================================================
       Fiche recette (portrait)
       =================================================================== */

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .breadcrumbs {
        display: none !important;
    }

    /* En-tête : titre + style uniquement */
    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-view-header-top {
        display: block !important;
        margin: 0 0 10px !important;
        padding: 0 0 8px !important;
        border-bottom: 1px solid #ccc !important;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-view-header h1 {
        font-size: 18pt !important;
        line-height: 1.15 !important;
        margin: 0 0 3px !important;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-style-subtitle {
        font-size: 10.5pt !important;
        margin: 0 !important;
        opacity: 0.85 !important;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-average-rating,
    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-recipe-favorites {
        display: none !important;
    }

    /* Bandeau synthèse : verre | stats, puis auteur | dates */
    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brewrecipe-main-panel {
        border: none !important;
        background: transparent !important;
        margin: 0 0 8px !important;
        break-inside: avoid;
        page-break-inside: avoid;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brewrecipe-main-panel > .inner {
        padding: 0 !important;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-view-top-grid {
        display: grid !important;
        grid-template-columns: 105px 1fr 1fr !important;
        grid-template-rows: auto auto !important;
        gap: 10px 14px !important;
        align-items: start !important;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-view-visual {
        grid-column: 1 !important;
        grid-row: 1 / 3 !important;
        display: block !important;
        text-align: center !important;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-big-glass-frame {
        display: inline-block !important;
        margin: 0 !important;
        padding: 6px !important;
        border-radius: 10px !important;
        background: #f5f5f5 !important;
        box-shadow: none !important;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-big-glass {
        width: 88px !important;
        height: 154px !important;
        margin: 0 auto !important;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-big-glass-color {
        background-size: 935px 154px !important;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-main-photo {
        max-width: 105px !important;
        max-height: 154px !important;
        object-fit: cover !important;
        border-radius: 6px !important;
        box-shadow: none !important;
    }

    /* display:contents → auteur / stats / dates se placent dans la grille parente */
    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-view-meta-grid {
        display: contents !important;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-view-stats-block {
        grid-column: 2 / 4 !important;
        grid-row: 1 !important;
        display: grid !important;
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 6px 10px !important;
        padding: 0 !important;
        border: none !important;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-view-stat {
        display: grid !important;
        grid-template-columns: 24px minmax(0, 1fr) !important;
        gap: 6px !important;
        align-items: center !important;
        min-height: 0 !important;
        padding: 4px 0 !important;
        border: none !important;
        border-bottom: none !important;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-view-stat strong {
        display: block !important;
        margin: 0 !important;
        font-size: 7.5pt !important;
        font-weight: 700 !important;
        line-height: 1.2 !important;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-view-stat em {
        display: block !important;
        font-size: 8.5pt !important;
        line-height: 1.2 !important;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-view-icon {
        width: 24px !important;
        height: 24px !important;
        background-color: #0059b3 !important;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-view-author-block {
        grid-column: 2 !important;
        grid-row: 2 !important;
        padding: 8px 10px !important;
        border: 1px solid #ddd !important;
        border-radius: 6px !important;
        background: #fafafa !important;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-view-file-block {
        grid-column: 3 !important;
        grid-row: 2 !important;
        padding: 8px 10px !important;
        border: 1px solid #ddd !important;
        border-radius: 6px !important;
        background: #fafafa !important;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-view-meta-block {
        border: none !important;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-view-meta-item {
        margin-bottom: 8px !important;
        font-size: 8.5pt !important;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-view-meta-item:last-child {
        margin-bottom: 0 !important;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-view-meta-item strong {
        display: block !important;
        margin-bottom: 2px !important;
        font-size: 7.5pt !important;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-view-separator,
    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-view-muted,
    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-user-avatar {
        display: none !important;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-view-date-item {
        display: grid !important;
        grid-template-columns: 22px minmax(0, 1fr) !important;
        gap: 6px !important;
        align-items: start !important;
        margin-bottom: 6px !important;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-view-date-item:last-child {
        margin-bottom: 0 !important;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-view-date-item .brew-view-icon {
        width: 22px !important;
        height: 22px !important;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-view-date-item strong {
        font-size: 7.5pt !important;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-view-date-item em {
        font-size: 8.5pt !important;
    }

    /* Partage (classe dédiée + :has pour repli navigateurs) */
    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-view-beerxml-item,
    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-view-date-item:has(.brew-icon-file) {
        display: none !important;
    }

    /* Sections ingrédients & notes */
    .brewrecipe-view-page:not(.brewrecipe-timeline-page) > .panel:not(.brewrecipe-main-panel) {
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
        border-top: 1px solid #ddd !important;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-table-title-icon {
        width: 18px !important;
        height: 18px !important;
        margin-right: 6px !important;
        vertical-align: -3px !important;
        background-color: #0059b3 !important;
    }

    /* Sauts de page : titre de section + début de tableau restent ensemble */
    .brewrecipe-view-page:not(.brewrecipe-timeline-page) > .panel:not(.brewrecipe-main-panel) h2 {
        break-after: avoid;
        page-break-after: avoid;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) > .panel:not(.brewrecipe-main-panel) thead {
        display: table-header-group !important;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) > .panel:not(.brewrecipe-main-panel) tr {
        break-inside: avoid;
        page-break-inside: avoid;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-view-notes-panel {
        break-inside: auto;
        page-break-inside: auto;
    }

    .brewrecipe-view-page:not(.brewrecipe-timeline-page) .brew-view-notes-panel div {
        font-size: 9pt !important;
        line-height: 1.45 !important;
    }

    /* ===================================================================
       Timeline (paysage)
       =================================================================== */

    .brewrecipe-timeline-page .breadcrumbs {
        display: none !important;
    }

    .brewrecipe-timeline-page .brew-view-header-top {
        display: block !important;
        margin-bottom: 8px !important;
    }

    .brewrecipe-timeline-page .brew-view-header h1 {
        font-size: 16pt !important;
        line-height: 1.2 !important;
        margin: 0 0 4px !important;
    }

    .brewrecipe-timeline-page .brewrecipe-timeline-panel--chart.brew-timeline-bleed {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        border: none !important;
    }

    .brewrecipe-timeline-page .brew-timeline-chart-stack {
        break-inside: avoid;
        page-break-inside: avoid;
    }

    .brewrecipe-timeline-page .brew-timeline-plot,
    .brewrecipe-timeline-page .brew-timeline-svg {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 260px;
    }

    .brewrecipe-timeline-page .brew-timeline-footer {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 10px !important;
        margin-top: 8px !important;
        break-before: avoid;
        page-break-before: avoid;
    }

    .brewrecipe-timeline-page .brew-timeline-summary-layout {
        font-size: 8.5pt !important;
    }
}
