/* ==========================================================================
   print.css — Overrides for the standalone print-all-pages template.
   Base typography, fonts, lists, and colours come from update.min.css + custom-main.css.
   Only add rules here that are specific to the print layout or need pt-unit overrides.
   ========================================================================== */

/* --------------------------------------------------------------------------
   Base — pt-unit size overrides (update.min.css uses px)
   -------------------------------------------------------------------------- */

body.print-all-page {
    font-size: 12pt;
    background: #fff;
    margin: 0;
    padding: 0;
}

.print-body-inner {
    max-width: 820px;
    margin: 0 auto;
    padding: 0 40px 40px;
}

/* --------------------------------------------------------------------------
   Print header
   -------------------------------------------------------------------------- */

.print-header {
    background: #fff;
    padding: 10pt 16pt;
    margin-bottom: 12pt;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
}

.print-header__logo {
    flex-shrink: 0;
}

.print-logo,
.print-header__logo svg {
    height: 36pt;
    width: auto;
    display: block;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
}

.print-site-name {
    font-size: 14pt;
    font-weight: bold;
    color: #001689;
}

/* --------------------------------------------------------------------------
   Breadcrumbs
   -------------------------------------------------------------------------- */

.print-breadcrumbs {
    margin-bottom: 16pt;
}

.print-breadcrumbs .breadcrumbs {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    padding: 0;
    margin: 0;
    font-size: 9pt;
    color: #555;
}

/* Remove the SVG bullet the base CSS applies to all li elements */
.print-breadcrumbs .breadcrumbs li {
    background: none;
    padding-left: 0;
    margin-bottom: 0;
}

.print-breadcrumbs .breadcrumbs__item {
    display: flex;
    align-items: center;
}

.print-breadcrumbs .breadcrumbs__item + .breadcrumbs__item::before {
    content: "›";
    margin: 0 4pt;
    color: #888;
}

.print-breadcrumbs .breadcrumbs__link,
.print-breadcrumbs .breadcrumbs__item span {
    color: #001689;
    text-decoration: none;
}

.print-breadcrumbs .breadcrumbs__item:last-child span {
    color: #555;
}

/* --------------------------------------------------------------------------
   Sections (question + each step)
   -------------------------------------------------------------------------- */

.print-section {
    margin-bottom: 16pt;
}

.print-question {
    margin-bottom: 16pt;
}

.print-step {
    padding-top: 16pt;
}

/* --------------------------------------------------------------------------
   Section titles — pt overrides
   -------------------------------------------------------------------------- */

.print-section-title {
    color: #001689;
    font-size: 18pt;
    font-weight: 500;
    line-height: 1.2;
    margin-bottom: 12pt;
}

.print-step .print-section-title {
    font-size: 15pt;
}

/* --------------------------------------------------------------------------
   Alerts / info boxes
   -------------------------------------------------------------------------- */

.print-alert,
.print-section-content .info-box,
.print-section-content [class*="alert"],
.print-section-content [class*="notice"] {
    border: 1px solid #FFA400 !important;
    border-left: 4px solid #FFA400 !important;
    border-radius: 4px;
    padding: 8pt 12pt;
    margin-bottom: 10pt;
    background: #fffbf2 !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
}

.print-alerts {
    margin-bottom: 12pt;
}

/* --------------------------------------------------------------------------
   Steps navigation block — ensure backgrounds print
   -------------------------------------------------------------------------- */

.steps-nav,
.step-link-box {
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
}

/* --------------------------------------------------------------------------
   Content — pt-unit overrides only
   -------------------------------------------------------------------------- */

.print-section-content {
    font-size: 12pt;
}

.print-section-content h2 { font-size: 15pt; }
.print-section-content h3 { font-size: 13pt; }
.print-section-content h4 { font-size: 12pt; }

/* Do not print inline URLs after links */
.print-section-content a[href]:after {
    content: "";
}

/* Hide external link SVG icons */
.print-section-content a svg,
.print-section-content a img.external-link-icon,
.print-section-content .ext-link-icon,
.print-section-content [class*="external-link"] svg,
.print-section-content [class*="external-link"] img {
    display: none !important;
}

/* --------------------------------------------------------------------------
   Resource shortcode buttons
   -------------------------------------------------------------------------- */

.print-section-content .resource-shortcode {
    margin-bottom: 8pt;
}

.print-section-content .resource-shortcode .resource-box {
    display: flex !important;
    border: 1pt solid #e1e5e9 !important;
    border-left: 4pt solid #307cd4 !important;
    border-radius: 0 4pt 4pt 0 !important;
    text-decoration: none !important;
    color: inherit !important;
    overflow: hidden;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
}

.print-section-content .resource-shortcode .resource-box::before {
    display: none !important;
}

.print-section-content .resource-shortcode .img-box {
    display: flex !important;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 26%;
    max-width: 80pt;
    padding: 6pt 6pt 0;
    background: #f5f6f8;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
}

.print-section-content .resource-shortcode .img-box img {
    max-width: 100%;
    max-height: 60pt;
    width: auto;
    height: auto;
    object-fit: contain;
    display: block;
}

.print-section-content .resource-shortcode .text-box {
    flex: 1;
    padding: 6pt 10pt !important;
}

.print-section-content .resource-shortcode .resource-title {
    font-size: 10pt !important;
    font-weight: bold;
    color: #001689 !important;
    margin: 0 0 2pt !important;
}

.print-section-content .resource-shortcode .author {
    font-size: 9pt !important;
    color: #555 !important;
    margin: 0 !important;
}

.print-section-content .resource-shortcode .icon {
    display: none !important;
}

.print-section-content .resource-shortcode .title-box {
    padding-left: 0 !important;
}

/* --------------------------------------------------------------------------
   Accordions — force expanded
   -------------------------------------------------------------------------- */

.print-section-content .accordion .dropdown,
.print-section-content .accordion .content,
.print-section-content .wp-block-ub-content-toggle-accordion-content-wrap,
.print-section-content [class*="accordion__content"],
.print-section-content [class*="accordion-content"] {
    display: block !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    visibility: visible !important;
}

.print-section-content .accordion .title svg,
.print-section-content .accordion .title .icon,
.print-section-content .wp-block-ub-content-toggle-accordion-title-wrap svg,
.print-section-content .ub-content-toggle-accordion-title svg {
    display: none;
}

.print-section-content .accordion .title {
    font-weight: bold;
    padding-bottom: 4pt;
}

/* --------------------------------------------------------------------------
   Tables
   -------------------------------------------------------------------------- */

.print-section-content table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 12pt;
    font-size: 10pt;
    page-break-inside: auto;
}

.print-section-content th,
.print-section-content td {
    border: 1px solid #888;
    padding: 4pt 8pt;
    text-align: left;
    vertical-align: top;
}

.print-section-content th {
    background: #e8eaf2;
    font-weight: bold;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
}

/* --------------------------------------------------------------------------
   Hide interactive / navigation / survey elements
   -------------------------------------------------------------------------- */

.print-header .print-btn,
.print-section-content form,
.print-section-content .question-feedback-form,
.print-section-content .helpful-info-box,
.print-section-content .steps-btns-links,
.print-section-content .back-link-box,
.print-section-content button,
.print-section-content .print-btn,
.print-section-content nav,
.print-section-content .aside,
.print-section-content .sidebar,
.print-section-content .wpforms-container,
.print-section-content [class*="wpforms"],
.print-section-content [class*="survey"],
.print-section-content iframe {
    display: none !important;
}

/* --------------------------------------------------------------------------
   Print footer
   -------------------------------------------------------------------------- */

.print-footer {
    border-top: 1px solid #ccc;
    margin-top: 32pt;
    padding-top: 8pt;
    font-size: 8pt;
    color: #666;
    display: flex;
    flex-direction: column;
    gap: 4pt;
}

.print-footer__url {
    color: #001689;
    word-break: break-all;
}

.print-footer__reviewed {
    color: #444;
}

.print-footer__disclaimer {
    color: #666;
    font-size: 9pt;
    margin-top: 2pt;
}

.print-footer__copyright {
    color: #666;
    font-size: 7.5pt;
}

/* --------------------------------------------------------------------------
   Default print: non-homepage pages — print header, footer, white background.
   Scoped to body:not(.print-all-page) so standalone print templates (print-question.php,
   print-single.php) are unaffected. Scoped to body:not(.index-page) to exclude homepage.
   (This file is loaded with media="print" so these rules apply only when printing.)
   -------------------------------------------------------------------------- */

body:not(.print-all-page):not(.index-page) {
    background: #fff !important;
}

body:not(.print-all-page):not(.index-page) .s2j-print-logo {
    display: block !important;
}

body:not(.print-all-page):not(.index-page) .s2j-print-footer {
    display: flex !important;
}

/* --------------------------------------------------------------------------
   @media print overrides
   -------------------------------------------------------------------------- */

@media print {
    body.print-all-page {
        font-size: 11pt;
    }

    .print-body-inner {
        padding: 0 20px 20px;
    }

    .print-step {
        page-break-before: auto;
        page-break-inside: auto;
    }

    .print-section-content {
        orphans: 3;
        widows: 3;
    }

    .print-section-title {
        page-break-after: avoid;
    }

    * {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    /* Hide floating UI elements that overlay printed content on all page types */
    .layout__fixed-buttons,
    .aioa-widget-wrapper,
    .close-window-button {
        display: none !important;
    }
}
