/* Ready2Teach Priority 7 Classroom Display */
body:has(.r2t-classroom-display){margin:0!important;overflow:hidden!important;background:#edf3f9!important}
.r2t-classroom-display{--r2t-cd-ink:#102033;--r2t-cd-muted:#617086;--r2t-cd-line:rgba(16,32,51,.12);--r2t-cd-panel:#fff;--r2t-cd-accent:#ff8a2b;position:fixed;inset:0;z-index:999999;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:12px;padding:clamp(10px,1.5vw,22px);background:radial-gradient(circle at 100% 0%,rgba(111,193,255,.24),transparent 28%),linear-gradient(180deg,#f8fbff,#edf3f9);color:var(--r2t-cd-ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.r2t-classroom-display *{box-sizing:border-box}
.r2t-cd-header{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:14px;background:rgba(255,255,255,.96);border:1px solid var(--r2t-cd-line);border-radius:26px;padding:10px 12px 10px 18px;box-shadow:0 12px 36px rgba(16,32,51,.09)}
.r2t-cd-identity{display:flex;align-items:center;gap:12px;min-width:0}.r2t-cd-identity>div{min-width:0}.r2t-cd-identity strong,.r2t-cd-identity span{display:block}.r2t-cd-identity strong{font-size:clamp(16px,1.8vw,23px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.r2t-cd-identity span{color:var(--r2t-cd-muted);font-weight:800;font-size:.9rem}
.r2t-cd-connection{width:12px;height:12px;border-radius:999px;background:#f59e0b;box-shadow:0 0 0 5px rgba(245,158,11,.14);flex:0 0 auto}.r2t-cd-connection.is-connected{background:#16a34a;box-shadow:0 0 0 5px rgba(22,163,74,.14)}.r2t-cd-connection.is-disconnected{background:#dc2626;box-shadow:0 0 0 5px rgba(220,38,38,.14)}
.r2t-cd-channel-timers{display:flex;gap:8px}.r2t-cd-channel-timer{min-width:112px;border-radius:18px;padding:8px 14px;background:#eff6ff;border:1px solid #bfdbfe;text-align:center}.r2t-cd-channel-timer span,.r2t-cd-channel-timer strong{display:block}.r2t-cd-channel-timer span{font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;font-weight:950;color:#475569}.r2t-cd-channel-timer strong{font-size:1.55rem;line-height:1.1}.r2t-cd-channel-timer.is-active{background:#dcfce7;border-color:#86efac}.r2t-cd-channel-timer.is-low{background:#ffedd5;border-color:#fdba74}.r2t-cd-channel-timer.is-critical{background:#fee2e2;border-color:#fca5a5;color:#991b1b}.r2t-cd-channel-timer.is-transition{background:#ede9fe;border-color:#c4b5fd;color:#5b21b6}
.r2t-cd-fullscreen{border:0;border-radius:999px;background:#102033;color:#fff;font-weight:950;padding:14px 18px;cursor:pointer}.r2t-cd-fullscreen:hover,.r2t-cd-fullscreen:focus-visible{background:#223954;outline:3px solid rgba(255,138,43,.35)}
.r2t-cd-stage{min-height:0;background:#fff;border:1px solid var(--r2t-cd-line);border-radius:34px;box-shadow:0 20px 65px rgba(16,32,51,.14);overflow:hidden}.r2t-cd-view{width:100%;height:100%;min-height:0}.r2t-cd-view[hidden]{display:none!important}
.r2t-cd-whole-class{overflow:auto;display:grid;place-items:center;padding:clamp(24px,4vw,64px)}.r2t-cd-whole-inner{width:min(1400px,100%);display:grid;justify-items:center;gap:18px;text-align:center}.r2t-cd-kicker{display:inline-flex;border-radius:999px;background:#fff2e8;color:#9a3412;padding:9px 15px;font-size:.78rem;font-weight:1000;letter-spacing:.1em;text-transform:uppercase}.r2t-cd-whole-class h1,.r2t-cd-overview-header h1,.r2t-cd-centred-message h1{margin:0;color:#0f2742;line-height:.98;letter-spacing:-.045em}.r2t-cd-whole-class h1{font-size:clamp(38px,6vw,86px)}
.r2t-cd-rich-content{width:100%;max-width:1240px;font-size:clamp(23px,3.1vw,48px);line-height:1.2;font-weight:720;color:#334155}.r2t-cd-rich-content>:first-child{margin-top:0}.r2t-cd-rich-content>:last-child{margin-bottom:0}.r2t-cd-rich-content img,.r2t-cd-rich-content video{max-width:min(100%,960px);max-height:50vh;height:auto;border-radius:20px}.r2t-cd-rich-content iframe{width:min(100%,960px);aspect-ratio:16/9;height:auto;border:0;border-radius:20px}.r2t-cd-rich-content table{width:100%;border-collapse:collapse;background:#fff;font-size:clamp(17px,2vw,28px)}.r2t-cd-rich-content th,.r2t-cd-rich-content td{border:2px solid #cbd5e1;padding:11px}.r2t-cd-rich-content ul,.r2t-cd-rich-content ol{text-align:left;max-width:1000px;margin:.5em auto}
.r2t-cd-resource-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;width:100%;max-width:1100px}.r2t-cd-resource-card{border:1px solid #dbe4ef;background:#f8fafc;border-radius:18px;padding:14px;text-align:left}.r2t-cd-resource-card a{color:#0f4c81;font-weight:900}.r2t-cd-resource-card img{width:100%;max-height:220px;object-fit:contain;border-radius:12px}
.r2t-cd-stations-overview{overflow:auto;padding:clamp(18px,3vw,44px)}.r2t-cd-overview-header{display:flex;justify-content:space-between;gap:18px;align-items:end;margin-bottom:22px}.r2t-cd-overview-header h1{font-size:clamp(34px,5vw,68px);margin-top:8px}.r2t-cd-round-timer{font-size:clamp(34px,5vw,68px);line-height:1;border-radius:24px;padding:15px 22px;background:#dcfce7;border:2px solid #86efac;color:#14532d}
.r2t-cd-station-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:16px}.r2t-cd-station-card{--station-colour:#e2e8f0;position:relative;overflow:hidden;background:#fff;border:2px solid color-mix(in srgb,var(--station-colour) 55%,#cbd5e1);border-radius:24px;padding:20px;box-shadow:0 12px 28px rgba(15,39,66,.08)}.r2t-cd-station-card:before{content:"";position:absolute;inset:0 auto 0 0;width:12px;background:var(--station-colour)}.r2t-cd-station-card h2{margin:0 0 10px;padding-left:6px;font-size:clamp(22px,2.4vw,34px);color:#102033}.r2t-cd-group-name{display:inline-flex;align-items:center;gap:9px;margin-left:6px;font-size:clamp(19px,2vw,29px);font-weight:950}.r2t-cd-group-dot{width:15px;height:15px;border-radius:999px;background:var(--group-colour,#60a5fa);box-shadow:0 0 0 4px color-mix(in srgb,var(--group-colour,#60a5fa) 22%,transparent)}.r2t-cd-student-names{margin:12px 0 0 6px;color:#526174;font-size:clamp(15px,1.5vw,21px);font-weight:750;line-height:1.35}
.r2t-cd-transition,.r2t-cd-message-view{display:grid;place-items:center;padding:30px;text-align:center}.r2t-cd-centred-message{display:grid;justify-items:center;gap:15px;max-width:1000px}.r2t-cd-centred-message h1{font-size:clamp(46px,8vw,112px)}.r2t-cd-centred-message p{margin:0;color:#526174;font-size:clamp(22px,3vw,42px);font-weight:750}.r2t-cd-transition-icon{display:grid;place-items:center;width:100px;height:100px;border-radius:999px;background:#ede9fe;color:#6d28d9;font-size:64px;font-weight:900}.r2t-cd-transition-timer{font-size:clamp(40px,6vw,78px);color:#6d28d9}
.r2t-cd-footer{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:0 10px;color:#5f6f83;font-size:.85rem;font-weight:850}.r2t-cd-footer strong{color:#102033}
.r2t-classroom-display.station-orange .r2t-cd-kicker{background:#ffedd5;color:#9a3412}.r2t-classroom-display.station-blue .r2t-cd-kicker{background:#dbeafe;color:#1e3a8a}.r2t-classroom-display.station-yellow .r2t-cd-kicker{background:#fef9c3;color:#854d0e}.r2t-classroom-display.station-green .r2t-cd-kicker{background:#dcfce7;color:#166534}.r2t-classroom-display.station-purple .r2t-cd-kicker{background:#ede9fe;color:#5b21b6}.r2t-classroom-display.station-teal .r2t-cd-kicker{background:#ccfbf1;color:#115e59}
@media(max-width:760px){.r2t-classroom-display{padding:7px;gap:7px}.r2t-cd-header{grid-template-columns:minmax(0,1fr) auto;border-radius:20px}.r2t-cd-channel-timers{grid-column:1/-1;width:100%}.r2t-cd-channel-timer{flex:1;min-width:0}.r2t-cd-fullscreen{grid-column:2}.r2t-cd-stage{border-radius:22px}.r2t-cd-overview-header{align-items:flex-start;flex-direction:column}.r2t-cd-round-timer{font-size:34px}.r2t-cd-footer{font-size:.72rem}.r2t-cd-whole-class{padding:20px 13px}.r2t-cd-rich-content{font-size:25px}}
/* =========================================================
   Ready2Teach split Classroom Display
   ========================================================= */

.r2t-cd-blank {
    overflow:auto;
    display:grid;
    place-items:center;
    padding:clamp(24px,4vw,64px);
}

.r2t-cd-blank-inner {
    width:min(1400px,100%);
    display:grid;
    justify-items:center;
    gap:18px;
    text-align:center;
}

.r2t-cd-blank h1 {
    margin:0;
    color:#0f2742;
    line-height:.98;
    letter-spacing:-.045em;
    font-size:clamp(38px,6vw,86px);
}


/* Two selected templates */

.r2t-classroom-display.is-split-view
.r2t-cd-stage {

    display:grid;

    grid-template-columns:
        repeat(2,minmax(0,1fr));

    grid-template-rows:
        minmax(0,1fr);
}


.r2t-classroom-display.is-split-view
.r2t-cd-view:not([hidden]) {

    width:100%;
    height:100%;

    min-width:0;
    min-height:0;

    overflow:auto;
}


.r2t-classroom-display.is-split-view
.r2t-cd-view:not([hidden])
~
.r2t-cd-view:not([hidden]) {

    border-left:
        1px solid var(--r2t-cd-line);
}


.r2t-classroom-display.is-split-view
.r2t-cd-blank,

.r2t-classroom-display.is-split-view
.r2t-cd-whole-class {

    padding:
        clamp(18px,2.5vw,38px);
}


.r2t-classroom-display.is-split-view
.r2t-cd-blank h1,

.r2t-classroom-display.is-split-view
.r2t-cd-whole-class h1 {

    font-size:
        clamp(30px,4vw,58px);
}


.r2t-classroom-display.is-split-view
.r2t-cd-rich-content {

    font-size:
        clamp(19px,2.25vw,34px);

    line-height:1.22;
}


.r2t-classroom-display.is-split-view
.r2t-cd-rich-content img,

.r2t-classroom-display.is-split-view
.r2t-cd-rich-content video {

    max-height:38vh;
}


/* Stations half */

.r2t-classroom-display.is-split-view
.r2t-cd-stations-overview {

    padding:
        clamp(16px,2vw,28px);
}


.r2t-classroom-display.is-split-view
.r2t-cd-overview-header {

    align-items:flex-start;
}


.r2t-classroom-display.is-split-view
.r2t-cd-overview-header h1 {

    font-size:
        clamp(28px,3.5vw,48px);
}


.r2t-classroom-display.is-split-view
.r2t-cd-round-timer {

    font-size:
        clamp(26px,3.3vw,46px);

    padding:
        12px 16px;
}


.r2t-classroom-display.is-split-view
.r2t-cd-station-grid {

    grid-template-columns:
        repeat(
            auto-fit,
            minmax(min(220px,100%),1fr)
        );

    gap:12px;
}


.r2t-classroom-display.is-split-view
.r2t-cd-station-card {

    padding:15px;
    border-radius:18px;
}


/* Station transition remains in its half */

.r2t-classroom-display.is-split-view
.r2t-cd-transition {

    padding:20px;
}


@media(max-width:900px) {

    .r2t-classroom-display.is-split-view
    .r2t-cd-stage {

        grid-template-columns:1fr;

        grid-template-rows:
            repeat(2,minmax(0,1fr));
    }


    .r2t-classroom-display.is-split-view
    .r2t-cd-view:not([hidden])
    ~
    .r2t-cd-view:not([hidden]) {

        border-left:0;

        border-top:
            1px solid var(--r2t-cd-line);
    }
}
/* =========================================================
   Ready2Teach Classroom Display panel focus
   Click half-screen panel to expand / restore split
   ========================================================= */


/*
 * Split panels visually indicate that they can
 * be expanded.
 */

.r2t-classroom-display.is-split-view
.r2t-cd-view:not([hidden]) {

    position: relative;

    cursor: zoom-in;

    transition:
        background-color .18s ease,
        box-shadow .18s ease;
}


/*
 * Very subtle hover indication.
 */

.r2t-classroom-display.is-split-view
.r2t-cd-view:not([hidden]):hover {

    box-shadow:
        inset 0 0 0 4px
        rgba(16, 32, 51, .08);
}


/*
 * Expanded mode.
 *
 * The selected lesson panel now occupies the
 * entire Classroom Display stage.
 */

.r2t-classroom-display.is-section-expanded
.r2t-cd-stage {

    display: block;

    grid-template-columns: none;
    grid-template-rows: none;
}


/*
 * Expanded panel fills all available space.
 */

.r2t-classroom-display.is-section-expanded
.r2t-cd-view:not([hidden]) {

    width: 100%;
    height: 100%;

    min-width: 0;
    min-height: 100%;

    border-left: 0 !important;
    border-right: 0 !important;
    border-top: 0 !important;
    border-bottom: 0 !important;

    cursor: zoom-out;

    box-shadow: none;
}


/*
 * Maintain the zoom-out visual hint.
 */

.r2t-classroom-display.is-section-expanded
.r2t-cd-view:not([hidden]):hover {

    box-shadow:
        inset 0 0 0 4px
        rgba(16, 32, 51, .06);
}


/*
 * When Whole Class or Blank expands again,
 * restore the larger single-screen typography
 * rather than retaining split-screen sizing.
 */

.r2t-classroom-display.is-section-expanded
.r2t-cd-whole-class h1,

.r2t-classroom-display.is-section-expanded
.r2t-cd-blank h1 {

    font-size:
        clamp(38px, 6vw, 86px);
}


.r2t-classroom-display.is-section-expanded
.r2t-cd-rich-content {

    font-size:
        clamp(23px, 3.1vw, 48px);

    line-height: 1.2;
}


.r2t-classroom-display.is-section-expanded
.r2t-cd-rich-content img,

.r2t-classroom-display.is-section-expanded
.r2t-cd-rich-content video {

    max-height: 50vh;
}


/*
 * Restore full-size Stations styling too.
 */

.r2t-classroom-display.is-section-expanded
.r2t-cd-stations-overview {

    padding:
        clamp(18px, 3vw, 44px);
}


.r2t-classroom-display.is-section-expanded
.r2t-cd-overview-header h1 {

    font-size:
        clamp(34px, 5vw, 68px);
}


.r2t-classroom-display.is-section-expanded
.r2t-cd-round-timer {

    font-size:
        clamp(34px, 5vw, 68px);

    padding:
        15px 22px;
}


/*
 * Expanded Stations transition.
 */

.r2t-classroom-display.is-section-expanded
.r2t-cd-transition
.r2t-cd-centred-message h1 {

    font-size:
        clamp(46px, 8vw, 112px);
}

/* =========================================================
   Classroom Display viewport isolation
   Prevent WordPress/theme wrappers from creating empty space
   around Student TV mode.
   ========================================================= */

html.r2t-classroom-display-active,
body.r2t-classroom-display-active {
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: hidden !important;
}

body.r2t-classroom-display-active
.r2t-classroom-display {
    position: fixed !important;

    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;

    width: 100vw !important;
    height: 100vh !important;

    margin: 0 !important;

    z-index: 9999999 !important;
}