/**
 * PHASE global print baseline.
 *
 * Loaded with media="print".
 * Page-specific print composition is not implemented here.
 */

@page {
    margin:
        15mm;
}

:root {
    color-scheme:
        light;
}

html,
body {
    inline-size:
        auto !important;

    min-inline-size:
        0 !important;

    block-size:
        auto !important;

    min-block-size:
        0 !important;

    overflow:
        visible !important;

    color:
        var(--phase-print-text) !important;

    background:
        var(--phase-print-surface) !important;

    font-size:
        var(--phase-print-body-size);

    line-height:
        var(--phase-print-body-leading);

    print-color-adjust:
        economy;

    -webkit-print-color-adjust:
        economy;
}

body {
    margin:
        0;

    overflow-x:
        visible !important;
}

svg {
    overflow:
        visible !important;
}

*,
*::before,
*::after {
    box-shadow:
        none !important;

    text-shadow:
        none !important;
}

:where(
    .phase-surface,
    .phase-section,
    .phase-container,
    .phase-region-content,
    .phase-region-full,
    [data-phase-print-background="remove"]
) {
    background-color:
        transparent !important;

    background-image:
        none !important;
}

:where(
    .phase-print-hidden,
    .u-print-hidden,
    [data-phase-print="hide"],
    .phase-skip-link,
    .phase-menu-toggle,
    .phase-navigation-toggle,
    .navigation-toggle,
    .header-cta,
    .footer-navigation,
    .phase-decorative-layer[aria-hidden="true"],
    [data-phase-decoration][aria-hidden="true"]
) {
    display:
        none !important;
}

.site-header {
    position:
        static !important;

    inset:
        auto !important;

    inline-size:
        auto !important;
}

:where(
    .site-header nav,
    .phase-site-navigation,
    .phase-primary-navigation,
    [data-phase-navigation="global"]
) {
    display:
        none !important;
}

:where(
    button:not([data-phase-print="show"]),
    input[type="button"]:not([data-phase-print="show"]),
    input[type="submit"]:not([data-phase-print="show"]),
    input[type="reset"]:not([data-phase-print="show"]),
    input[type="file"]:not([data-phase-print="show"]),
    [role="button"][data-phase-print="hide"],
    dialog,
    [role="dialog"]
) {
    display:
        none !important;
}

:where(
    .skip-link,
    .site-header,
    .phase-fixed,
    .phase-sticky,
    .u-sticky,
    [data-phase-position="fixed"],
    [data-phase-position="sticky"]
) {
    position:
        static !important;

    inset:
        auto !important;

    inline-size:
        auto !important;

    block-size:
        auto !important;

    transform:
        none !important;
}

:where(
    main,
    article,
    section,
    figure,
    blockquote,
    pre,
    table,
    .phase-shell,
    .phase-grid,
    .phase-grid-item,
    .phase-section,
    .phase-container,
    .phase-container--page,
    .phase-container--reading,
    .phase-container--wide,
    .phase-container--technical,
    .phase-region-content,
    .phase-region-full,
    .phase-media-frame,
    .media-frame,
    .phase-data-scroll,
    .utility-table-region,
    .u-overflow-auto,
    .u-overflow-x-auto,
    .u-overflow-clip,
    [data-phase-print-overflow="visible"]
) {
    overflow:
        visible !important;

    max-block-size:
        none !important;
}

:where(
    .surface-dark,
    .surface-dark-secondary,
    .surface-panel-dark,
    .surface-signal,
    .panel,
    .panel--dark,
    .panel--signal,
    .disclosure,
    .metadata,
    .evidence-tag,
    .data-status
) {
    color:
        var(--phase-print-text) !important;

    background:
        transparent !important;

    box-shadow:
        none !important;
}

:where(
    .panel,
    .card,
    .disclosure,
    .metadata,
    .evidence-tag,
    .data-status,
    .boundary-block,
    .quote-block,
    .panel--boundary,
    .boundary-panel,
    .error-summary,
    .status-pair
) {
    border-color:
        var(--phase-print-text) !important;
}

.utility-shell {
    gap:
        var(--space-utility-content-gap) !important;
}

.utility-table-region {
    border-color:
        var(--phase-print-text) !important;
}

.u-print-block {
    display:
        block !important;
}

:where(
    .phase-media-frame,
    .media-frame
) {
    aspect-ratio:
        auto !important;
}

:where(
    .phase-media-frame > img,
    .phase-media-frame > video,
    .phase-media-frame > picture > img,
    .media-frame > img,
    .media-frame > video,
    .media-frame > picture > img
) {
    block-size:
        auto !important;

    object-fit:
        contain !important;
}

:where(
    h1,
    h2,
    h3,
    h4,
    h5,
    h6
) {
    color:
        var(--phase-print-text) !important;

    break-after:
        avoid-page;

    page-break-after:
        avoid;
}

:where(
    figcaption,
    .media-caption,
    .media__credit,
    .media__description
) {
    color:
        var(--phase-print-text) !important;
}

:where(
    p,
    li,
    blockquote
) {
    orphans:
        3;

    widows:
        3;
}

:where(
    figure,
    img,
    picture,
    svg,
    blockquote
) {
    break-inside:
        avoid-page;

    page-break-inside:
        avoid;
}

.media__frame {
    overflow: visible !important;
    border:
        var(--phase-print-rule)
        solid
        var(--phase-print-text) !important;
}

a[href] {
    color:
        var(--phase-print-text) !important;

    text-decoration-line:
        underline !important;

    text-decoration-style:
        solid;

    text-decoration-thickness:
        auto;

    text-underline-offset:
        0.12em;
}

a[href^="http"]:not(
    .phase-media-link
):not(
    [data-phase-print-url="false"]
)::after {
    content:
        " (" attr(href) ")";

    font-size:
        var(--phase-print-meta-size);

    font-weight:
        400;

    overflow-wrap:
        anywhere;

    word-break:
        break-word;
}

a[href^="mailto:"]:not(
    [data-phase-print-url="false"]
)::after,
a[href^="tel:"]:not(
    [data-phase-print-url="false"]
)::after {
    content:
        " (" attr(href) ")";

    font-size:
        var(--phase-print-meta-size);

    overflow-wrap:
        anywhere;
}

:where(
    img,
    svg,
    video,
    canvas
) {
    max-inline-size:
        100% !important;

    block-size:
        auto !important;
}

picture {
    display:
        contents;
}

figure {
    margin-inline:
        0;
}

table {
    inline-size:
        100% !important;

    max-inline-size:
        100% !important;

    border-collapse:
        collapse;

    table-layout:
        auto;
}

thead {
    display:
        table-header-group;
}

tfoot {
    display:
        table-footer-group;
}

tr,
th,
td {
    break-inside:
        avoid;

    page-break-inside:
        avoid;
}

th,
td {
    overflow-wrap:
        anywhere;

    word-break:
        break-word;
}

pre,
code,
kbd,
samp {
    white-space:
        pre-wrap !important;

    overflow-wrap:
        anywhere;

    word-break:
        break-word;
}

pre {
    max-inline-size:
        100% !important;

    border:
        var(--phase-print-rule)
        solid
        var(--phase-print-text);
}

.phase-container--technical,
.phase-data-scroll {
    inline-size:
        auto !important;

    max-inline-size:
        100% !important;

    overflow:
        visible !important;
}
