/**
 * /timers — full viewport, no Claue max-width gutter, iframe fills screen.
 * Body class: cms-timers-fullbleed
 *
 * Keep height="600" (or any px) in the CMS iframe tag as a non-CSS fallback;
 * rules below override with viewport units so the widget actually fills TVs.
 */

html {
    height: 100%;
}

body.cms-timers-fullbleed {
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    overflow-y: auto;
    min-height: 100vh;
    min-height: 100dvh;
}

body.cms-timers-fullbleed .page-wrapper {
    margin: 0;
    padding: 0;
    min-height: 100vh;
    min-height: 100dvh;
    max-width: none !important;
    width: 100% !important;
}

/* Claue: .page-main and .page-main > .columns use max-width ~1200px — strip for this page */
body.cms-timers-fullbleed .page-main,
body.cms-timers-fullbleed #maincontent {
    max-width: none !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

body.cms-timers-fullbleed .page-main > .columns,
body.cms-timers-fullbleed .columns {
    display: block !important;
    max-width: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Kill sidebar column space (2-columns-left etc.) */
body.cms-timers-fullbleed .page-main > .columns .sidebar.sidebar-main,
body.cms-timers-fullbleed .page-main > .columns .sidebar.sidebar-additional,
body.cms-timers-fullbleed .page-main > .columns > div.sidebar {
    display: none !important;
}

body.cms-timers-fullbleed .page-main > .columns .column.main,
body.cms-timers-fullbleed .column.main {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box;
}

/* Inner .container / .container-fluid — remove max-width + side padding */
body.cms-timers-fullbleed .page-main .container,
body.cms-timers-fullbleed .page-main .container-fluid,
body.cms-timers-fullbleed .column.main .container,
body.cms-timers-fullbleed .column.main .container-fluid {
    max-width: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/*
 * Iframe: do NOT rely on height:100% (parent chain + flex min-height:0 collapses it).
 * Use viewport height so it always opens full screen, with or without HTML height attr.
 */
body.cms-timers-fullbleed .page-main iframe,
body.cms-timers-fullbleed .column.main iframe {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: 100vh !important;
    height: 100dvh !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    border: 0 !important;
    margin: 0 !important;
    box-sizing: border-box;
    vertical-align: top;
}

/* Wrapper <p> around iframe — no flex min-height trap */
body.cms-timers-fullbleed .column.main > p:has(iframe),
body.cms-timers-fullbleed .column.main > div:has(iframe) {
    margin: 0 !important;
    padding: 0 !important;
    max-width: none !important;
    width: 100% !important;
    min-height: 0;
}

/* Page Builder rows if present */
body.cms-timers-fullbleed [data-content-type="row"] {
    max-width: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}
