/* ========================================
   VIDEO & WEB RESOURCE GUIDE
   v1.11.12 clean responsive reset

   Weaver controls the page/container geometry.
   This stylesheet only styles content INSIDE
   .vw-resource-guide.
   ======================================== */

.vw-resource-guide,
.vw-resource-guide *,
.vw-resource-guide *::before,
.vw-resource-guide *::after {
    box-sizing: border-box;
}

.vw-resource-guide {
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
    min-width: 0;
}


/* ========================================
   INTRODUCTION
   ======================================== */

.vw-resource-intro {
    font-size: 1.18em;
    line-height: 1.65;
}

.vw-resource-updated {
    display: inline-block;
    margin: 10px 0 28px;
    padding: 7px 13px;
    max-width: 100%;
    background: #F2F8FB;
    border-left: 4px solid #39A9E0;
    color: #223D55;
    font-size: 0.92em;
}


/* ========================================
   RESPONSIVE MEDIA
   ======================================== */

.vw-resource-guide img,
.vw-resource-guide figure img,
.vw-resource-guide .wp-caption img,
.vw-resource-guide .wp-block-image img {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
}

.vw-resource-guide figure,
.vw-resource-guide .wp-caption,
.vw-resource-guide .wp-block-image {
    width: auto !important;
    max-width: 100% !important;
    margin-left: auto;
    margin-right: auto;
}

.vw-resource-guide .wp-caption-text,
.vw-resource-guide figcaption {
    max-width: 100%;
}


/* ========================================
   TEXT SAFETY
   ======================================== */

.vw-resource-guide p,
.vw-resource-guide li,
.vw-resource-guide h1,
.vw-resource-guide h2,
.vw-resource-guide h3,
.vw-resource-guide h4,
.vw-resource-guide td,
.vw-resource-guide th {
    max-width: 100%;
    overflow-wrap: break-word;
}


/* ========================================
   RESOURCE TABLES
   ======================================== */

.vw-resource-table {
    width: 100%;
    max-width: 100%;
    margin: 22px 0 26px;
    border-collapse: collapse;
    border-spacing: 0;
    table-layout: auto;
    background: #FFFFFF;
    color: #223D55;
    font-size: 16px;
    line-height: 1.45;
}

.vw-resource-table thead th {
    padding: 16px 18px;
    background: #223D55;
    color: #FFFFFF;
    border: 1px solid #223D55;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.25;
    text-align: left;
    vertical-align: middle;
}

.vw-resource-table tbody td {
    padding: 15px 18px;
    border: 1px solid #D7E6ED;
    vertical-align: middle;
}

.vw-resource-table tbody tr:nth-child(odd) td {
    background: #FFFFFF;
}

.vw-resource-table tbody tr:nth-child(even) td {
    background: #F2F8FB;
}

.vw-resource-table tbody td:nth-child(2) {
    color: #223D55;
    font-size: 17px;
}

.vw-resource-table tbody td:last-child {
    white-space: nowrap;
}


/* ========================================
   TIPS AND NOTES
   ======================================== */

.vw-resource-tip {
    margin: -5px 0 34px;
    padding: 14px 18px;
    max-width: 100%;
    background: #F2F8FB;
    border-left: 4px solid #39A9E0;
    color: #223D55;
}

.vw-resource-note {
    margin: 0 0 34px;
    max-width: 100%;
    color: #223D55;
}


/* ========================================
   JUMP TO A PLATFORM
   ======================================== */

.vw-resource-jump {
    width: 100%;
    max-width: 100%;
    margin: 34px 0 44px;
}

.vw-resource-jump h3 {
    margin: 0 0 16px;
    padding: 0;
    color: #223D55;
    font-size: 28px;
    font-weight: 700;
    line-height: 1.25;
}

.vw-resource-jump-links {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 9px;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;
}

/* Classic Editor/WordPress can insert line breaks between links. */
.vw-resource-jump-links br {
    display: none !important;
}

.vw-resource-jump-links a,
.vw-resource-jump-links a:link,
.vw-resource-jump-links a:visited {
    display: inline-block;
    max-width: 100%;
    margin: 0;
    padding: 9px 16px;
    background: #FFFFFF;
    border: 1px solid #B8C5CC;
    border-radius: 24px;
    color: #2D6A82 !important;
    font-weight: 700;
    line-height: 1.3;
    text-decoration: none !important;
    box-shadow: none;
    transition:
        background-color 0.2s ease,
        border-color 0.2s ease,
        color 0.2s ease;
}

.vw-resource-jump-links a:hover,
.vw-resource-jump-links a:focus {
    background: #39A9E0;
    border-color: #39A9E0;
    color: #FFFFFF !important;
    text-decoration: none !important;
}


/* ========================================
   SOCIAL PLATFORM HEADINGS
   ======================================== */

.vw-resource-guide h2.vw-platform-heading {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 55px 0 18px !important;
    padding: 0 !important;
}

/* Ignore editor-generated line breaks inside headings. */
.vw-resource-guide h2.vw-platform-heading br {
    display: none !important;
}

.vw-resource-guide h2.vw-platform-heading .vw-platform-icon {
    display: block !important;
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    max-width: 30px !important;
    min-height: 30px !important;
    max-height: 30px !important;
    flex: 0 0 30px !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0 !important;
    overflow: hidden !important;
    border-radius: 5px;
}

.vw-resource-guide h2.vw-platform-heading .vw-platform-icon img {
    display: block !important;
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    max-width: 30px !important;
    min-height: 30px !important;
    max-height: 30px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    float: none !important;
    object-fit: cover !important;
}

.vw-resource-guide h2.vw-platform-heading .vw-platform-title {
    display: block !important;
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.2 !important;
}


/* ========================================
   ANCHOR POSITIONING
   ======================================== */

.vw-resource-guide h2[id] {
    scroll-margin-top: 100px;
}


/* ========================================
   FINAL QUICK REFERENCE
   ======================================== */

.vw-resource-table-final tbody td:nth-child(2) {
    font-size: 18px;
    font-weight: 700;
}


/* ========================================
   MOBILE
   Weaver still owns the page width.
   Only the guide's internal components change.
   ======================================== */

@media (max-width: 700px) {

    .vw-resource-guide {
        width: 100%;
        max-width: 800px;
        margin-left: auto;
        margin-right: auto;
    }

    .vw-resource-intro {
        font-size: 1.08em;
    }

    .vw-resource-jump {
        margin: 28px 0 36px;
    }

    .vw-resource-jump h3 {
        margin-bottom: 13px;
        font-size: 24px;
    }

    .vw-resource-jump-links {
        gap: 7px;
    }

    .vw-resource-jump-links a,
    .vw-resource-jump-links a:link,
    .vw-resource-jump-links a:visited {
        padding: 8px 13px;
        font-size: 14px;
    }

    .vw-resource-guide h2.vw-platform-heading {
        gap: 8px !important;
        margin-top: 42px !important;
    }

    .vw-resource-guide h2.vw-platform-heading .vw-platform-icon {
        width: 26px !important;
        height: 26px !important;
        min-width: 26px !important;
        max-width: 26px !important;
        min-height: 26px !important;
        max-height: 26px !important;
        flex-basis: 26px !important;
    }

    .vw-resource-guide h2.vw-platform-heading .vw-platform-icon img {
        width: 26px !important;
        height: 26px !important;
        min-width: 26px !important;
        max-width: 26px !important;
        min-height: 26px !important;
        max-height: 26px !important;
    }

    /*
     * Tables become cards on phones. This avoids horizontal scrolling
     * without changing Weaver's page/container geometry.
     */
    .vw-resource-table {
        display: block;
        width: 100%;
        max-width: 100%;
        margin: 18px 0 26px;
        background: transparent;
        font-size: 15px;
    }

    .vw-resource-table thead {
        display: none;
    }

    .vw-resource-table tbody,
    .vw-resource-table tr,
    .vw-resource-table td {
        display: block;
        width: 100%;
        max-width: 100%;
    }

    .vw-resource-table tbody tr {
        margin: 0 0 12px;
        overflow: hidden;
        background: #FFFFFF;
        border: 1px solid #D7E6ED;
        border-radius: 6px;
    }

    .vw-resource-table tbody td,
    .vw-resource-table tbody td:nth-child(2),
    .vw-resource-table tbody td:last-child {
        position: relative;
        padding: 9px 12px;
        border: 0;
        border-bottom: 1px solid #E4EDF1;
        background: #FFFFFF;
        color: #223D55;
        font-size: 15px;
        white-space: normal;
        overflow-wrap: anywhere;
    }

    .vw-resource-table tbody td:last-child {
        border-bottom: 0;
    }

    .vw-resource-table tbody tr:nth-child(even) td,
    .vw-resource-table tbody tr:nth-child(odd) td {
        background: #FFFFFF;
    }

    .vw-resource-table-final tbody td:nth-child(2) {
        font-size: 16px;
        font-weight: 700;
    }
}


/* ========================================
   RESOURCE PAGE MOBILE CONTENT BOX FIX
   v1.11.13

   Weaver's #content is 100% wide plus its horizontal padding on
   narrow Resource pages. Include that padding inside the available
   viewport width. This is deliberately scoped to vw_resource pages.
   ======================================== */

@media (max-width: 700px) {
    body.single-vw_resource #content {
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: 100% !important;
    }
}


/* ========================================
   GUIDE PAGE DESKTOP MEASURE
   v1.12.1
   Only long-form guide Resources receive this page-level desktop width.
   Generator Resource pages remain full width.
   ======================================== */

@media (min-width: 701px) {
    body.vwr-resource-guide-page article.vw_resource {
        width: 100% !important;
        max-width: 800px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        box-sizing: border-box !important;
    }

    body.vwr-resource-guide-page article.vw_resource .entry-content {
        width: 100% !important;
        max-width: 800px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        box-sizing: border-box !important;
    }
}


/* v1.12.2 — more compact platform headings on mobile */
@media (max-width: 700px) {
    .vw-resource-guide h2.vw-platform-heading .vw-platform-title {
        font-size: 22px !important;
        line-height: 1.15 !important;
    }
}

@media (max-width: 380px) {
    .vw-resource-guide h2.vw-platform-heading .vw-platform-title {
        font-size: 20px !important;
    }
}
