#tt-v2{--ink:#293d48;--teal:#237287;--line:#d8e1e5;color:var(--ink);font:16px/1.65 Arial,sans-serif;max-width:1120px;margin:0 auto;padding:28px 24px 60px;box-sizing:border-box}#tt-v2 *{box-sizing:border-box}#tt-v2 a{color:#1c647b}#tt-v2 h1,#tt-v2 h2,#tt-v2 h3{line-height:1.25;margin:0 0 18px;font-weight:700}#tt-v2 h1{font-size:32px}#tt-v2 h2{font-size:24px}#tt-v2 h3{font-size:19px}#tt-v2 p{margin:0 0 18px}#tt-v2 .hero{background:linear-gradient(105deg,#67cd4a,#236680);color:white;padding:28px 32px;border-radius:0 0 38px 0;margin-bottom:22px}#tt-v2 .hero h1{margin:0}#tt-v2 .notice{background:#eef5f7;border-left:4px solid var(--teal);padding:14px 18px;margin:18px 0;font-size:14px}#tt-v2 .toolbar,#tt-v2 .actions,#tt-v2 .meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap}#tt-v2 .toolbar{justify-content:space-between;margin-bottom:22px}#tt-v2 .cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;background:#ffed9a;padding:22px;border-radius:18px;max-width:900px;margin:24px auto}#tt-v2 .card{min-width:0;background:#fff;border:1px solid #dedfcf;border-radius:18px;padding:22px;box-shadow:0 3px 8px #26364020;display:flex;flex-direction:column}#tt-v2 .card h2{text-align:center;color:#555;font-size:25px;min-height:64px;display:grid;place-content:center}#tt-v2 .meta{font-size:14px;font-weight:bold;margin-bottom:16px}#tt-v2 .badge{background:#ffb1ca;color:#703045;padding:2px 7px;border-radius:3px}#tt-v2 .badge.a2{background:#cde9f5;color:#245b73}#tt-v2 .preview{width:100%;height:260px;object-fit:cover;object-position:top;border:1px solid #ddd;border-radius:7px;margin-bottom:18px}#tt-v2 .card h3{font-size:16px;line-height:1.5}#tt-v2 .card p{font-size:15px}#tt-v2 .card .actions{margin-top:auto;padding-top:20px}#tt-v2 .button,#tt-v2 button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border:1px solid var(--teal);border-radius:6px;background:var(--teal);color:white;text-decoration:none;font:700 15px/1.3 Arial,sans-serif;cursor:pointer}#tt-v2 .membership{background:#729e39;border-color:#729e39}#tt-v2 .secondary{background:white;color:var(--teal)}#tt-v2 .muted,#tt-v2 small{color:#586b74}#tt-v2 .sheet{background:white;border:1px solid var(--line);border-radius:12px;padding:28px;margin:20px 0}#tt-v2 .eyebrow{font-size:13px;font-weight:bold;letter-spacing:.08em;text-transform:uppercase;color:var(--teal);margin-bottom:10px}#tt-v2 .wordbank{padding:12px 18px;background:#f0f6e9;border-radius:8px;word-spacing:16px}#tt-v2 .question{padding:18px 0;border-bottom:1px solid #e7ecee}#tt-v2 .question:last-child{border-bottom:0}#tt-v2 label{display:block;font-weight:600;margin:6px 0}#tt-v2 input,#tt-v2 textarea,#tt-v2 select{font:inherit;color:var(--ink);border:1px solid #a9bac3;border-radius:5px;background:#fff;padding:10px 12px;max-width:100%;min-height:46px}#tt-v2 input,#tt-v2 textarea{width:100%}#tt-v2 textarea{min-height:92px;resize:vertical}#tt-v2 select{width:100%}#tt-v2 :focus-visible{outline:2px solid #237287;outline-offset:3px}#tt-v2 .gap input{width:190px;margin:5px 8px}#tt-v2 .gap label{display:inline;font-weight:400}#tt-v2 .hint{display:block;font-size:14px;margin-top:5px;color:#576e78}#tt-v2 .feedback{font-size:14px;font-weight:bold;color:#7b4d12;margin-top:6px}#tt-v2 .feedback.correct{color:#347331}#tt-v2 .reading{font-size:18px;line-height:2.4}#tt-v2 .reading input{width:235px;margin:3px 5px;font-size:16px}#tt-v2 .reading label{display:inline;font-weight:normal}#tt-v2 .pill{display:inline-block;background:#edf4f6;border-radius:20px;padding:4px 12px;font-size:14px}#tt-v2 details{margin:16px 0}#tt-v2 summary{cursor:pointer;color:var(--teal);font-weight:bold;padding:10px 0}#tt-v2 .review{border-left:3px solid #83bb4a;padding-left:16px;margin:15px 0;overflow-wrap:anywhere}#tt-v2 .review p{white-space:pre-wrap;margin:4px 0}#tt-v2 .sticky-status{font-size:13px;color:#4c626d;margin:12px 0}#tt-v2 .skip{position:absolute;left:-9999px}#tt-v2 .skip:focus{position:static}#tt-v2 .completion{background:#eff7e9;padding:16px;border-radius:8px;margin-top:15px}#tt-v2 .footer{border-top:1px solid var(--line);padding-top:24px;margin-top:32px;font-size:13px}#tt-v2 [hidden]{display:none!important}@media(max-width:650px){#tt-v2{padding:18px 12px 36px}#tt-v2 h1{font-size:26px}#tt-v2 .hero{padding:24px 20px}#tt-v2 .cards{grid-template-columns:1fr;padding:12px;gap:16px}#tt-v2 .card{padding:18px}#tt-v2 .card h2{min-height:0}#tt-v2 .sheet{padding:20px 16px}#tt-v2 .reading input{width:min(235px,100%)}#tt-v2 .gap input{display:block;margin:8px 0}#tt-v2 .preview{height:270px}}
/* Everyday Adjectives: original picture prompts and accessible inline feedback. */
#tt-v2 .badge.elementary{background:#ffe9a6;color:#654913}
#tt-v2 .learning-guide{background:#fffdf3;border:1px solid #e4d8a2;border-radius:12px;padding:24px;margin:24px 0}
#tt-v2 .learning-guide h2{font-size:22px}
#tt-v2 .legend-correct{font-weight:bold;color:#247540}
#tt-v2 .legend-retry{font-weight:bold;color:#9a4612}
#tt-v2 .exercise-nav{display:flex;flex-wrap:wrap;gap:8px}
#tt-v2 .exercise-nav button{padding:8px 12px;font-size:14px}
#tt-v2 .section-letter{display:inline-grid;place-items:center;background:#e6f2f5;color:#246d81;width:38px;height:38px;border-radius:50%;margin-right:5px;font-size:21px}
#tt-v2 .adjective-bank{display:flex;flex-wrap:wrap;gap:8px;padding:16px;background:#eef5e8;border-radius:10px;margin:18px 0 24px}
#tt-v2 .adjective-bank span{background:white;border:1px solid #d7e4cd;padding:3px 14px;border-radius:6px;font-weight:600;color:#41612b}
#tt-v2 .picture-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
#tt-v2 .picture-question{position:relative;min-width:0;border:1px solid #d8e3e7;border-radius:12px;padding:18px 14px 12px;background:#fff}
#tt-v2 .picture-question img{display:block;width:100%;height:150px;object-fit:contain;margin:5px 0 20px}
#tt-v2 .picture-number{position:absolute;top:10px;left:10px;display:grid;place-items:center;background:#edf3f5;color:#4d6670;width:27px;height:27px;border-radius:50%;font-size:14px;font-weight:bold}
#tt-v2 .picture-answer{display:flex;align-items:center;gap:10px;font-size:18px}
#tt-v2 .picture-answer input{min-width:0;width:calc(100% - 64px);flex:1}
#tt-v2 .picture-answer>span{min-width:46px}
#tt-v2 .answer-feedback{display:inline-flex;align-items:center;gap:7px;min-height:32px;max-width:100%;margin-top:10px;font-size:14px;font-weight:bold;line-height:1.4;vertical-align:middle;border-radius:6px;padding:3px 8px}
#tt-v2 .answer-feedback:empty{padding:0}
#tt-v2 .answer-feedback>span{font-size:22px;line-height:1;font-weight:bold}
#tt-v2 .answer-feedback.correct{color:#236c37;background:#e6f4e8}
#tt-v2 .answer-feedback.retry{color:#9c3e0a;background:#fff0e1}
#tt-v2 .answer-feedback.spelling,#tt-v2 .answer-feedback.format{color:#7a5400;background:#fff4cc}
#tt-v2 .answer-feedback.empty{color:#54656c;background:#edf1f3}
#tt-v2 .check-row{display:flex;align-items:center;flex-wrap:wrap;gap:18px;border-top:1px solid #e3e9eb;margin-top:24px;padding-top:22px}
#tt-v2 .check-row p{margin:0;font-weight:bold;font-size:15px}
#tt-v2 .opposite-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 26px}
#tt-v2 .opposite-question{border-bottom:1px solid #e5ecef;padding:8px 0 16px;min-width:0}
#tt-v2 .sentence-question{border-bottom:1px solid #e5ecef;padding:20px 0}
#tt-v2 .sentence-line{display:inline;font-size:17px;line-height:2.4}
#tt-v2 .sentence-line label{display:inline;font-weight:normal}
#tt-v2 .sentence-line input{width:145px;margin:0 6px;min-height:44px}
#tt-v2 .sentence-question>.answer-feedback{margin-left:8px}
#tt-v2 .sentence-question>input{max-width:680px}
#tt-v2 .personal-row{border:0;border-bottom:1px solid #e5ecef;margin:0;padding:20px 0}
#tt-v2 .personal-row legend{font-weight:bold;padding-top:18px}
#tt-v2 .choice-chip{display:inline-flex;align-items:center;gap:8px;margin:0 12px 0 0;padding:8px 14px;border:1px solid #b6cbd3;border-radius:24px;cursor:pointer}
#tt-v2 .choice-chip input{width:18px;min-height:18px;height:18px;accent-color:#267488;margin:0}
#tt-v2 .game-row{padding:18px 0;border-bottom:1px solid #e5ecef}
#tt-v2 .game-row p{margin-bottom:8px}
#tt-v2 .game-row label{font-size:14px}
#tt-v2 .game-score{background:#eaf4e4;padding:14px 18px;border-radius:8px;margin-top:24px;font-weight:bold}
#tt-v2 h2[id]{scroll-margin-top:20px}
@media(max-width:850px){#tt-v2 .picture-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){#tt-v2 .picture-grid,#tt-v2 .opposite-grid{grid-template-columns:1fr}#tt-v2 .picture-question img{height:165px}#tt-v2 .learning-guide{padding:20px 16px}#tt-v2 .sentence-line input{width:125px}#tt-v2 .sentence-question>.answer-feedback{display:flex;width:fit-content;margin-left:0}#tt-v2 .adjective-bank{padding:12px;gap:6px}#tt-v2 .adjective-bank span{padding:3px 11px}}
/* Consistent, exercise-scoped word options; drag/drop also works by tap or keyboard. */
#tt-v2 .adjective-bank{position:sticky;top:0;z-index:20;justify-content:center;align-items:center;gap:12px 20px;padding:16px 20px;box-shadow:0 3px 8px #26364012;border:1px solid #d5e2cb}
#tt-v2 .adjective-bank>span,#tt-v2 .adjective-bank>.word-chip{min-width:82px;text-align:center}
#tt-v2 .word-chip{background:white;color:#355822;border:1px solid #acc298;border-radius:7px;min-height:42px;padding:7px 16px;font-size:16px;touch-action:none;cursor:grab;user-select:none}
#tt-v2 .word-chip.used{background:#e2e9df;color:#53634d;border-style:dashed}
#tt-v2 .word-chip.selected{background:#246e82;color:white;border-color:#246e82;box-shadow:0 0 0 3px #afd6e0}
#tt-v2 .drop-slot{flex:1;min-width:0;background:#f8fbfc;color:#667b85;border:2px dashed #b6cad2;font-size:15px;font-weight:normal;padding:9px 6px;min-height:48px;touch-action:none}
#tt-v2 .drop-slot.filled{background:#eff6fa;color:#244b5c;border:2px solid #91b6c4;font-weight:bold;cursor:grab}
#tt-v2 .drop-slot.can-place{border-color:#257388;background:#e8f5f8}
#tt-v2 .picture-answer{flex-wrap:wrap;gap:8px}
#tt-v2 .return-word{min-height:32px;min-width:32px;padding:0;border:0;background:transparent;color:#5d6f76;font-size:23px}
#tt-v2 .picture-answer>span{min-width:38px}
#tt-v2 .drag-ghost{position:fixed;z-index:10000;pointer-events:none;padding:9px 18px;background:#246e82;color:white;border-radius:8px;font-weight:bold;box-shadow:0 3px 12px #0003}
#tt-v2 .learning-guide{padding:20px 24px;background:white;border-color:#d8e1e5}
#tt-v2 .learning-guide h2{margin-bottom:14px}
@media(max-width:650px){#tt-v2 .adjective-bank{gap:8px 10px;padding:10px 8px}#tt-v2 .adjective-bank>span,#tt-v2 .adjective-bank>.word-chip{min-width:61px;padding:5px 8px;font-size:14px}#tt-v2 .word-chip{min-height:40px}}
#tt-v2 .sheet input,#tt-v2 .sheet select,#tt-v2 .sheet .drop-slot,#tt-v2 .sheet .picture-question{scroll-margin-top:var(--wordbank-offset,18px)}
/* Football information-gap layout: source context beside every question. */
#tt-v2 .pair-layout{display:grid;grid-template-columns:minmax(0,0.85fr) minmax(0,1.15fr);gap:22px;align-items:start;margin-top:4px}
#tt-v2 .pair-reference{position:sticky;top:14px;max-height:calc(100vh - 28px);overflow-y:auto;padding:22px;scrollbar-gutter:stable}
#tt-v2 .football-intro{display:flex;gap:18px;align-items:flex-start;margin:0 0 20px}
#tt-v2 .football-intro img{width:96px;height:135px;object-fit:contain;flex-shrink:0;background:white;border-radius:9px}
#tt-v2 .football-intro h2{font-size:21px;margin-bottom:10px}
#tt-v2 .football-intro p{font-size:15px;line-height:1.65;margin-bottom:0}
#tt-v2 .pair-reading{font-size:15px;line-height:1.95}
#tt-v2 .pair-reading p{margin:0 0 16px}
#tt-v2 .pair-blank{display:inline;background:#eaf3f7;border-bottom:1px dashed #8badbb;padding:2px 5px;overflow-wrap:anywhere;color:#24596d}
#tt-v2 .pair-blank sup{font-size:10px;font-weight:bold;margin-right:3px}
#tt-v2 .pair-directions h2{font-size:22px;margin-bottom:10px}
#tt-v2 .pair-directions p{font-size:15px}
#tt-v2 .pair-directions p:last-child{margin-bottom:0}
#tt-v2 .pair-work{min-width:0}
#tt-v2 .pair-question{padding:24px}
#tt-v2 .pair-question h3{font-size:19px;margin-bottom:16px}
#tt-v2 .context-excerpt{margin:0 0 18px;padding:14px 16px;border-left:3px solid #9dbdcc;background:#f0f6f8;color:#365966;line-height:1.8;font-size:16px}
#tt-v2 .pair-question-line{font-size:17px;line-height:3.1;margin:12px 0 20px}
#tt-v2 .pair-question-line input{display:inline-block;width:4.5em;min-height:44px;margin:3px 4px;padding:8px;text-align:center;font-size:17px}
#tt-v2 .pair-question>label{font-size:14px;color:#496470}
#tt-v2 .pair-question>input{background:#fffef8}
#tt-v2 .full-routine{margin-bottom:0}
@media(max-width:899px){#tt-v2 .pair-layout{display:block}#tt-v2 .pair-reference{position:static;max-height:none;overflow:visible;scrollbar-gutter:auto}#tt-v2 .pair-reference .football-intro{margin-bottom:10px}#tt-v2 .pair-question{padding:20px 16px}}
@media(max-width:400px){#tt-v2 .football-intro{gap:12px}#tt-v2 .football-intro img{width:76px;height:112px}#tt-v2 .football-intro h2{font-size:19px}#tt-v2 .football-intro p{font-size:14px}#tt-v2 .pair-question-line input{width:3.6em;margin:3px}}
#tt-v2 .pair-question-line input{line-height:1.4}

/* Preparation on the left; persistent reading reference on the right. */
#tt-v2 .pair-layout{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}
#tt-v2 .pair-work{grid-column:1;grid-row:1}
#tt-v2 .pair-reference{grid-column:2;grid-row:1}
#tt-v2 .pair-blank{display:inline-block;white-space:nowrap;background:transparent;border:0;padding:0 3px;max-width:100%;overflow-wrap:normal}
@media(max-width:899px){#tt-v2 .pair-layout{display:flex;flex-direction:column}#tt-v2 .pair-work,#tt-v2 .pair-reference{width:100%;box-sizing:border-box}}

#tt-v2 .lesson-board{text-align:center}#tt-v2 .lesson-board h2{font-size:clamp(30px,5vw,60px)}#tt-v2 .lesson-board p{font-size:clamp(20px,3vw,30px)}#tt-v2 .lesson-board img{width:360px;max-width:90%;height:240px;object-fit:contain}#tt-v2 .lesson-board .actions{justify-content:center}

#tt-v2 .lesson-sequence{margin-top:18px}

#tt-v2 #adj-student-name + .actions{margin-top:18px;margin-bottom:18px}
/* Teacher workspace design */
#tt-v2:has(.workspace){max-width:1480px;padding:24px 30px 60px;font-family:Arial,sans-serif}
#tt-v2 .workspace{display:grid;grid-template-columns:200px minmax(0,1fr);gap:38px}
#tt-v2 .workspace-side{padding-top:20px;display:flex;flex-direction:column;gap:8px}
#tt-v2 .workspace-brand{font-size:10px;letter-spacing:1.8px;color:#65807d;margin:0 12px 24px;font-weight:700}
#tt-v2 .workspace-side>a{padding:13px 14px;border-radius:10px;text-decoration:none;font-size:13px;color:#54706b}
#tt-v2 .workspace-side>a.active{background:#e1eee8;color:#175e4f;font-weight:bold}
#tt-v2 .side-note{margin:70px 12px 0;font-size:12px;line-height:1.8;color:#75857f}
#tt-v2 .workspace-top{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#6d807a;margin:10px 0 32px}
#tt-v2 .sample-tag{display:inline-block;font-size:11px;font-weight:600;background:#eef1ee;color:#5a6e63;border-radius:6px;padding:4px 8px}
#tt-v2 .workspace-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}
#tt-v2 .workspace-heading h1{font-size:36px;letter-spacing:-1.4px;line-height:1.15;color:#203f37;margin-bottom:14px}
#tt-v2 .workspace-heading p{font-size:14px;color:#6b7c75;margin:0}
#tt-v2 .workspace .button{background:#216853;border-color:#216853;border-radius:9px;font-size:13px;min-height:42px}
#tt-v2 .workspace .button.secondary{background:white;color:#216853}
#tt-v2 .dashboard-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:28px 0 36px}
#tt-v2 .dashboard-stats a{background:white;border:1px solid #e2e9e4;padding:18px 22px;border-radius:12px;display:flex;align-items:center;gap:16px;text-decoration:none;color:#536b60;font-size:12px}
#tt-v2 .dashboard-stats strong{font-size:30px;line-height:1;color:#254f40;font-weight:500}
#tt-v2 .dashboard-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}
#tt-v2 .dashboard-section-title h2{font-size:18px;letter-spacing:-.4px;margin:0;color:#28483c}
#tt-v2 .dashboard-section-title>span{font-size:11px;color:#748279}
#tt-v2 .resource-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
#tt-v2 .resource-tile{background:white;border:1px solid #e0e7e1;border-radius:14px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 4px 14px #19392705}
#tt-v2 .tile-art{height:175px;position:relative;display:flex;justify-content:center;align-items:center;padding:24px}
#tt-v2 .mint{background:#e1efe7}#tt-v2 .peach{background:#f6e8dc}#tt-v2 .lavender{background:#eeebf7}
#tt-v2 .tile-art img{height:125px;width:85%;object-fit:contain;mix-blend-mode:multiply}
#tt-v2 .tile-art>span{position:absolute;top:12px;left:12px;font-size:9px;letter-spacing:1px;color:#4d6254}
#tt-v2 .tile-body{padding:20px;display:flex;flex-direction:column;flex:1;align-items:flex-start}
#tt-v2 .tile-body small{font-size:10px;margin-bottom:9px}
#tt-v2 .tile-body h3{font-size:18px;letter-spacing:-.4px;margin-bottom:10px;color:#28483c}
#tt-v2 .tile-body p{font-size:12px;line-height:1.7;color:#738076;margin-bottom:20px}
#tt-v2 .tile-body .button,#tt-v2 .tile-body .sample-tag{margin-top:auto}
#tt-v2 .sample-art{font-size:30px;font-weight:bold;line-height:1.1;color:#68537f;transform:rotate(-5deg)}#tt-v2 .sample-art span{font-size:45px;margin-left:15px}
#tt-v2 .sample-more{font-size:12px;margin:12px 0 28px}
#tt-v2 .dashboard-bottom{display:grid;grid-template-columns:1fr 1fr;gap:20px}
#tt-v2 .dashboard-panel{background:white;border:1px solid #e0e7e1;border-radius:14px;padding:23px;min-width:0}
#tt-v2 .dashboard-panel>a{font-size:12px;font-weight:bold;text-decoration:none}
#tt-v2 .shared-row{display:flex;align-items:flex-start;gap:12px;padding:18px 0;border-bottom:1px solid #eef1ed;margin-bottom:12px;font-size:12px}
#tt-v2 .shared-row>div:nth-child(2){flex:1}#tt-v2 .shared-row small,#tt-v2 .submission-row small{display:block;font-size:10px;margin-top:3px}
#tt-v2 .resource-icon{width:36px;height:40px;border-radius:8px;display:grid;place-items:center;font-weight:bold;flex-shrink:0}
#tt-v2 .status-pill{font-size:9px;background:#f1f5ee;border-radius:20px;padding:4px 7px;white-space:nowrap;color:#4d6d47}
#tt-v2 .progress-track{height:5px;background:#edf1ed;border-radius:8px;margin:10px 0 6px}#tt-v2 .progress-track i{display:block;background:#73a68b;height:100%;border-radius:8px}
#tt-v2 .panel-caption{font-size:12px;color:#718074}
#tt-v2 .submission-row{display:flex;align-items:center;gap:10px;font-size:12px;padding:15px 0;border-bottom:1px solid #edf1ed}
#tt-v2 .avatar{height:34px;width:34px;border-radius:50%;background:#e9eef6;display:grid;place-items:center;font-size:10px;color:#4b6782;flex-shrink:0}#tt-v2 .avatar.pink{background:#f7e8e8;color:#996262}
#tt-v2 .score-change{margin-left:auto;text-align:right;font-weight:bold;font-size:11px;color:#426653}
#tt-v2 .attention-note{background:#f5f5eb;padding:14px;border-radius:10px;margin:18px 0;font-size:12px}#tt-v2 .attention-note p{font-size:11px;line-height:1.65;margin:5px 0 0;color:#6c745d}
#tt-v2 .dashboard-disclaimer{font-size:11px;color:#7a877e;margin:24px 0}
@media(max-width:1050px){#tt-v2 .workspace{grid-template-columns:1fr}#tt-v2 .workspace-side{flex-direction:row;flex-wrap:wrap;padding:0;gap:5px}#tt-v2 .workspace-brand,#tt-v2 .side-note{display:none}#tt-v2 .workspace-heading h1{font-size:30px}}
@media(max-width:700px){#tt-v2:has(.workspace){padding:16px}#tt-v2 .workspace-heading{align-items:flex-start;flex-direction:column}#tt-v2 .resource-tiles,#tt-v2 .dashboard-bottom{grid-template-columns:1fr}#tt-v2 .dashboard-stats{gap:8px}#tt-v2 .dashboard-stats a{padding:13px 8px;flex-direction:column;gap:10px;text-align:center}#tt-v2 .dashboard-section-title{flex-wrap:wrap}#tt-v2 .workspace-side>a{padding:9px;font-size:11px}}
#tt-v2 .workspace[data-section="dash-saved"] .dashboard-bottom,#tt-v2 .workspace[data-section="dash-saved"] .dashboard-stats,#tt-v2 .workspace[data-section="dash-shared"] #dash-saved,#tt-v2 .workspace[data-section="dash-shared"] #dash-submissions,#tt-v2 .workspace[data-section="dash-submissions"] #dash-saved,#tt-v2 .workspace[data-section="dash-submissions"] #dash-shared{display:none}
#tt-v2 .workspace[data-section="dash-shared"] .dashboard-bottom,#tt-v2 .workspace[data-section="dash-submissions"] .dashboard-bottom{grid-template-columns:1fr}
#tt-v2 .workspace[data-section="dash-shared"] .workspace-heading,#tt-v2 .workspace[data-section="dash-submissions"] .workspace-heading,#tt-v2 .workspace[data-section="dash-saved"] .workspace-heading{display:none}
/* Match the live site's main content width, with one horizontal workspace navigation. */
#tt-v2:has(.workspace){max-width:1110px;padding:24px 20px 48px}
#tt-v2 .workspace{display:block}
#tt-v2 .workspace-side{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:6px;padding:0 0 18px;margin-bottom:24px;border-bottom:1px solid #dce5df}
#tt-v2 .workspace-brand,#tt-v2 .side-note{display:none}
#tt-v2 .workspace-side>a{padding:12px 16px;font-size:13px}
#tt-v2 .workspace-top{margin:0 0 26px}
@media(max-width:700px){#tt-v2:has(.workspace){padding:16px 12px 36px}#tt-v2 .workspace-side{gap:4px}#tt-v2 .workspace-side>a{padding:10px 9px;font-size:12px}}
/* Reviewed teacher workspace: consistent site typography and functional numbered navigation. */
#tt-v2:has(.dash-v11){max-width:1110px;padding:24px 20px 48px;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:16px}
#tt-v2 .dash-v11 button,#tt-v2 .dash-v11 .button{font-family:inherit;font-size:15px;border-radius:9px;background:#237287;border-color:#237287}
#tt-v2 .dash-v11 .secondary{background:white;color:#237287}
#tt-v2 .dash-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:12px 0 28px}
#tt-v2 .dash-title h1{font:700 36px/1.2 Inter,Arial,sans-serif;letter-spacing:-.7px;margin:0}
#tt-v2 .dash-number-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:20px}
#tt-v2 .dash-number-nav a{display:flex;align-items:center;gap:12px;border:1px solid #d8e1e5;background:#fff;border-radius:12px;min-height:94px;padding:18px;text-decoration:none;color:#435965;box-shadow:0 2px 5px #293d4805}
#tt-v2 .dash-number-nav a.selected{border:2px solid #237287;background:#eef7fa;padding:17px;box-shadow:0 3px 12px #23728710}
#tt-v2 .dash-number-nav strong{font-size:32px;font-weight:600;line-height:1.2}
#tt-v2 .dash-number-nav span{font-size:15px;line-height:1.45;font-weight:600}
#tt-v2 .dash-number-nav small{display:block;font-size:12px}
#tt-v2 .dash-number-nav .needs-review{color:#b34034}#tt-v2 .dash-number-nav .all-reviewed{color:#278048}
#tt-v2 .dash-icon{width:24px;height:24px;flex-shrink:0}
#tt-v2 .dash-sample-note{font-size:12px;color:#667985;margin:0 0 28px;line-height:1.6}
#tt-v2 .dash-content h2{font-size:24px;margin:0 0 22px}
#tt-v2 .dash-filters{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:14px;align-items:end}
#tt-v2 .dash-filters label{flex:1;min-width:145px;font-size:13px;margin:0}
#tt-v2 .dash-filters label.dash-search{flex:2;min-width:220px}
#tt-v2 .dash-v11 select,#tt-v2 .dash-v11 input{font-size:14px;margin-top:6px;border-color:#c8d5dc;border-radius:8px}
#tt-v2 .dash-result-count{font-size:13px;color:#617580;margin:15px 0 20px}
#tt-v2 .dash-v11 .tile-art{height:164px}#tt-v2 .dash-v11 .tile-art>span{font-size:11px;letter-spacing:.2px;font-weight:600}
#tt-v2 .dash-v11 .tile-body small{font-size:12px;line-height:1.6}#tt-v2 .dash-v11 .tile-body p{font-size:14px;line-height:1.65}#tt-v2 .dash-v11 .tile-body h3{font-size:19px;color:#293d48}
#tt-v2 .dash-v11 .sample-art{font-size:27px;max-width:220px}
#tt-v2 .dash-empty{padding:30px;border:1px dashed #bacbd3;border-radius:12px;background:#fff;color:#607580}
#tt-v2 .dash-tip{font-size:14px;margin:22px 0;background:#edf5f8;padding:16px;border-radius:8px}
#tt-v2 .dash-storage,#tt-v2 .dash-actual-link{font-size:12px;margin-top:24px;color:#657984}
#tt-v2 .dash-share-card{display:flex;align-items:center;gap:16px;background:white;padding:22px;border:1px solid #dce5e9;border-radius:12px;margin-bottom:14px;text-decoration:none;color:#293d48}
#tt-v2 .dash-share-card:hover{border-color:#237287;background:#f8fcfd}
#tt-v2 .dash-share-card small{display:block;font-size:13px;margin-top:5px;color:#617580}
#tt-v2 .dash-share-status{margin-left:auto;text-align:right;font-size:14px;flex-shrink:0}
#tt-v2 .dash-review-options{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:20px 0}
#tt-v2 .dash-review-options label{font-size:13px;width:210px}
#tt-v2 .dash-table-wrap{overflow-x:auto;margin:20px 0;background:white;border:1px solid #dbe4e8;border-radius:10px}
#tt-v2 .dash-table{width:100%;border-collapse:collapse;min-width:680px;font-size:14px}
#tt-v2 .dash-table th{text-align:left;background:#eff5f7;color:#4d6471;font-size:12px;font-weight:600;padding:14px 12px}
#tt-v2 .dash-table td{padding:17px 12px;border-top:1px solid #e8eef1;vertical-align:top}
#tt-v2 .dash-table a{font-weight:700;text-decoration:none}#tt-v2 .dash-table small{display:block;font-size:11px;line-height:1.6;margin-top:5px}
#tt-v2 .review-pill{display:inline-block;padding:5px 9px;font-size:12px;background:#fff0e8;color:#994d24;border-radius:20px;white-space:nowrap}
#tt-v2 .review-pill.done{background:#eaf5ec;color:#2b7240}
#tt-v2 .dash-attention{border:1px solid #e4dfbc;background:#fffef4;border-radius:12px;padding:22px;margin-top:28px}
#tt-v2 .dash-attention h3{font-size:19px}#tt-v2 .dash-attention p{font-size:14px;padding-bottom:12px;border-bottom:1px solid #ebe7d1;margin-bottom:12px}#tt-v2 .dash-attention small{font-size:12px}
#tt-v2 .dash-detail-title{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:24px 0}
#tt-v2 .dash-detail-title h2{margin:0 0 8px}#tt-v2 .dash-detail-title p{margin:0;font-size:14px;color:#627884}
#tt-v2 .dash-summary{display:flex;gap:16px;margin-bottom:22px}#tt-v2 .dash-summary p{flex:1;border:1px solid #d8e4ea;background:white;border-radius:10px;padding:20px;font-size:13px;margin:0}#tt-v2 .dash-summary strong{display:block;font-size:28px;color:#237287;margin-bottom:6px}
#tt-v2 #dash-feedback{margin-bottom:20px}#tt-v2 .resource-save{margin:20px 0}
@media(max-width:700px){#tt-v2:has(.dash-v11){padding:16px 12px}#tt-v2 .dash-number-nav{gap:8px}#tt-v2 .dash-number-nav a{flex-direction:column;text-align:center;padding:12px 7px;gap:6px;min-height:140px}#tt-v2 .dash-number-nav a.selected{padding:11px 6px}#tt-v2 .dash-number-nav span{font-size:12px}#tt-v2 .dash-number-nav .dash-icon{width:20px;height:20px}#tt-v2 .dash-title h1{font-size:28px}#tt-v2 .dash-title{align-items:flex-start;flex-wrap:wrap}#tt-v2 .dash-share-card{flex-wrap:wrap;padding:16px}#tt-v2 .dash-share-status{margin-left:52px;text-align:left}#tt-v2 .dash-review-options{flex-wrap:wrap}#tt-v2 .dash-summary p{padding:12px}#tt-v2 .dash-summary{gap:8px}#tt-v2 .dash-detail-title{align-items:flex-start;flex-wrap:wrap}}
@media print{body>header,.dash-title,.dash-number-nav,.dash-sample-note,.dash-storage,.dash-actual-link,#tt-v2 .footer,#tt-v2 .dash-content>a,#tt-v2 .actions,#dash-message{display:none!important}#tt-v2{max-width:none;padding:0}#tt-v2 details>*{display:block!important}#tt-v2 .dash-table-wrap{overflow:visible}#tt-v2 .dash-table{min-width:0}#tt-v2 .dash-table tr{break-inside:avoid}}
#tt-v2 .dash-v11 .sample-art{transform:none;text-align:center;width:100%;line-height:1.25}
#tt-v2 .dash-review-button{display:block;margin-top:10px;font-size:13px;font-weight:700}
#tt-v2 .dash-feedback-note{font-size:13px;color:#607580;margin:8px 0 16px}


#tt-v2{font-family:Inter,Arial,sans-serif;max-width:1110px;padding:36px 24px 56px;min-width:0}
#tt-v2 h1{font-weight:600;letter-spacing:-.025em}
#tt-v2 .dash-title{display:block;text-align:center;margin:6px 0 32px;padding:0}
#tt-v2 .dash-title h1{font-size:32px;font-weight:500;margin:0;line-height:1.3}
#tt-v2 .dash-number-nav{margin-bottom:32px}
#tt-v2 .dash-number-nav a{min-height:92px;box-shadow:none}
#tt-v2 .dash-content{min-height:240px}
#tt-v2 .workspace-empty{text-align:center;padding:48px 24px 56px;border:1px solid #e1e9ec;border-radius:16px;background:#fff;margin:20px 0}
#tt-v2 .workspace-empty h3{font-weight:600;font-size:21px;margin:14px 0 10px}
#tt-v2 .workspace-empty p{max-width:420px;margin:0 auto;color:#60747e}
#tt-v2 .empty-icon{display:inline-flex;padding:14px;border-radius:50%;background:#edf5f7;color:#267187}
#tt-v2 .resource-back{display:inline-flex;gap:8px;text-decoration:none;font-size:14px;font-weight:500;margin-bottom:20px}
#tt-v2 .resource-tabs{display:flex;flex-wrap:wrap;gap:6px;padding:6px;border:1px solid #e1e9ec;border-radius:12px;background:#f4f8f9;margin-bottom:30px;width:fit-content;max-width:100%}
#tt-v2 .resource-tabs a{padding:10px 16px;border-radius:8px;text-decoration:none;font-size:15px;font-weight:500;color:#526b76;min-height:42px}
#tt-v2 .resource-tabs a[aria-current=page]{background:#fff;color:#17657a;box-shadow:0 1px 5px #233e4b15;font-weight:600}
#tt-v2 .resource-tabs a:hover{background:#e6f1f4}
#tt-v2 .resource-save{margin:24px 0}
#tt-v2 button:disabled{opacity:.5;cursor:default}
#tt-v2 #tt-save:empty{display:none}
#tt-v2 .notice:has(a:only-child){border:0;background:none;padding:0;margin:0 0 20px}
@media(max-width:650px){#tt-v2{padding:24px 16px 40px}#tt-v2 .dash-title h1{font-size:28px}#tt-v2 .resource-tabs{gap:2px;padding:4px}#tt-v2 .resource-tabs a{padding:9px 10px;font-size:14px}#tt-v2 .workspace-empty{padding:32px 18px}}
#tt-v2 .studio-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:18px 0}#tt-v2 .studio-editor{padding:20px 0;border-bottom:1px solid #dce5e2}#tt-v2 .studio-editor label{display:block;margin:14px 0}#tt-v2 .studio-editor input,#tt-v2 .studio-editor textarea{display:block;width:100%;margin-top:8px}#tt-v2 .studio-thumb{max-width:240px;max-height:160px;object-fit:contain}#tt-v2 .studio-slide{padding:32px;background:#f0f7f5;border-radius:16px;text-align:center}#tt-v2 .studio-slide h2{font-size:32px;line-height:1.35}#tt-v2 .studio-slide p{font-size:22px;white-space:pre-wrap}#tt-v2 .studio-slide img{max-height:360px;max-width:100%;object-fit:contain}#tt-v2 .studio-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}#tt-v2 .studio-board button{min-height:100px;font-size:28px}#tt-v2 .studio-board small{display:block;font-size:13px}#tt-v2 .studio-scores{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:24px 0}#tt-v2 .studio-scores>div{background:#f0f7f5;padding:20px;border-radius:12px;display:flex;justify-content:space-between}#tt-v2 .studio-scores strong{font-size:28px}#tt-v2 .studio-scores .active{outline:2px solid #08776d}#tt-v2 .studio-library{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}#tt-v2 .studio-library article{border:1px solid #dce5e2;border-radius:12px;padding:18px}.tt-feedback{max-width:1110px;margin:20px auto;padding:20px;font-family:Inter,Arial,sans-serif}.tt-feedback textarea{display:block;width:100%;min-height:100px;margin:12px 0}.tt-feedback button{padding:10px 16px;border:1px solid #dce5e2;border-radius:8px;background:#fff;color:#14594e}.tt-feedback form{margin-top:16px}.tt-feedback [hidden]{display:none}@media(max-width:500px){#tt-v2 .studio-board{grid-template-columns:repeat(2,minmax(0,1fr))}#tt-v2 .studio-slide{padding:18px}#tt-v2 .studio-slide h2{font-size:25px}}
#tt-v2 .tt-studio .actions{margin-top:16px;margin-bottom:16px}#tt-v2.tt-classroom{background:#fff;overflow:auto;max-width:none;padding:30px}#tt-v2.tt-classroom .studio-nav:first-child{display:none}#tt-v2.tt-classroom .tt-studio>h1,#tt-v2.tt-classroom .tt-studio>.eyebrow{display:none}#tt-v2.tt-classroom [data-studio="back-edit"]{display:none}

#tt-v2.tt-classroom{position:fixed;inset:0;z-index:100000;margin:0;width:100%;height:100%;}#tt-v2.tt-classroom .studio-slide{max-width:1200px;margin:16px auto}#tt-v2.tt-classroom .studio-board{max-width:1200px;margin:auto}

/* October review: shared visual language and focused classroom screens. */
#tt-v2{padding:18px 24px 32px;background:#fff;color:#293f4b}
#tt-v2 .resource-tabs{width:100%;justify-content:center;background:#fff;border:0;gap:8px;margin:0 0 20px;padding:8px;box-shadow:0 4px 20px #244a6110}
#tt-v2 .resource-tabs a{color:#226983;background:#edf7fb;font-size:16px;font-weight:600}
#tt-v2 .resource-tabs a[aria-current=page]{background:#24768c;color:#fff;box-shadow:0 3px 10px #24768c28}
#tt-v2 .resource-tabs a.resource-return{background:#f1f8ed;color:#40632e}
#tt-v2 .resource-heading{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:16px 24px;padding:22px;margin:0 0 22px;background:linear-gradient(110deg,#eaf8e3,#ecf8fc);border-radius:16px;border-top:5px solid #78bf49}
#tt-v2 .resource-heading h1{font-size:32px;line-height:1.25;margin:0;font-weight:650}
#tt-v2 .resource-meta{display:flex;align-items:center;gap:16px;flex-wrap:wrap;font-size:16px}
#tt-v2 .level-badge{background:#ebbcf8;color:#8304a6;border:1px solid #d97cf5;border-radius:5px;padding:3px 9px;font-weight:650;white-space:nowrap}
#tt-v2 .resource-time{white-space:nowrap;color:#52606b}
#tt-v2 .sheet{background:#fff;box-shadow:0 4px 18px #193e5010}
#tt-v2 button:not(.secondary):not(.word-chip):not(.drop-slot):not(.return-word):hover,#tt-v2 .button:not(.secondary):hover{background:#18586c;color:#fff}
#tt-v2 .button:focus-visible,#tt-v2 button:focus-visible,#tt-v2 a:focus-visible,#tt-v2 select:focus-visible{outline:3px solid #208fbe;outline-offset:3px}
#tt-v2 .secondary:hover{background:#e4f3f7;color:#174e62}
#tt-v2 .tool-game{background:#7253b3;color:#fff}#tt-v2 .tool-slides{background:#227e6f;color:#fff}
#tt-v2 select{appearance:none;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%232c5668' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:48px}
body.tt-focus-open{overflow:hidden!important}
body.tt-focus-open #tt-v2.tt-focused{position:fixed;inset:0;z-index:100000;width:100%;height:100%;max-width:none;margin:0;padding:18px 24px 36px;background:#f7f9fa;overflow:auto;overscroll-behavior:contain}
#tt-v2.tt-focused>main{max-width:1110px;margin:0 auto}
#tt-v2.tt-focused .resource-heading{background:#fff;border:0;padding:12px 130px 12px 12px;min-height:68px;margin-bottom:12px}
#tt-v2 .preview-exit{position:sticky;top:0;z-index:30;float:right;margin:0 0 -60px}
#tt-v2 .learning-guide{padding:12px;background:white;margin:12px 0 18px}
#tt-v2 .exercise-nav{justify-content:center;gap:8px}
#tt-v2 .lesson-board{max-width:1050px;margin:0 auto;text-align:center;padding:10px 20px 24px;background:#fff;border-radius:20px;box-shadow:0 8px 32px #203a5010}
#tt-v2 .lesson-board h1{font-size:32px;margin:10px 0 16px}
#tt-v2 .lesson-board img{display:block!important;margin:12px auto!important;float:none!important;width:auto;max-width:90%;height:min(30vh,300px);object-fit:contain}
#tt-v2 .lesson-board p{font-size:clamp(20px,2.3vw,30px);line-height:1.4;margin:18px 0}
#tt-v2 .lesson-board .intro-learning{font-size:clamp(18px,1.7vw,24px)}
#tt-v2 .lesson-board .actions{justify-content:center}
#tt-v2 .presentation-controls{display:flex;justify-content:flex-end;gap:12px;margin:0 0 10px}
#tt-v2 .dash-title{margin:6px 0 22px;border-radius:16px;padding:22px;background:linear-gradient(110deg,#eaf8e3,#e4f4fb)}
#tt-v2 .dash-number-nav a:nth-child(1){background:#e9f5fd}#tt-v2 .dash-number-nav a:nth-child(2){background:#f6edfb}#tt-v2 .dash-number-nav a:nth-child(3){background:#fff6e7}
#tt-v2 .dashboard-tools,#tt-v2 .collection-links{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:18px 0}
#tt-v2 .workspace-empty{padding:32px 20px}
.tt-feedback-dialog{width:min(560px,calc(100% - 32px));border:0;border-radius:18px;padding:28px;color:#293f4b;font-family:Inter,Arial,sans-serif;box-shadow:0 20px 80px #102e4540}
.tt-feedback-dialog::backdrop{background:#17344270}
.tt-feedback-dialog label{display:block;font-weight:600}.tt-feedback-dialog textarea{display:block;width:100%;box-sizing:border-box;min-height:150px;margin:10px 0 18px;padding:12px;border:1px solid #a8bfca;border-radius:10px;font:inherit}
.tt-feedback-dialog .actions{display:flex;gap:12px}.tt-feedback-dialog button{padding:12px 18px;border:1px solid #24768c;border-radius:8px;background:#24768c;color:#fff;font:inherit;font-weight:600}.tt-feedback-dialog button.secondary{background:white;color:#226983}
@media(max-width:650px){#tt-v2 .resource-heading{padding:16px;gap:12px}#tt-v2 .resource-heading h1{font-size:25px}body.tt-focus-open #tt-v2.tt-focused{padding:12px}#tt-v2.tt-focused .resource-heading{padding:12px;clear:both}#tt-v2 .preview-exit{position:static;float:none;display:flex;justify-content:flex-end;margin:0 0 8px}#tt-v2 .resource-tabs a{font-size:14px;padding:9px}#tt-v2 .lesson-board{padding:10px}#tt-v2 .lesson-board h1{font-size:26px}}
#tt-v2 .game-chooser{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0}
#tt-v2 .game-format{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:12px;padding:24px;min-height:210px;border:1px solid #dce4ed;border-radius:18px;color:#294352;background:#edf7fd;box-shadow:0 4px 14px #203a5010}
#tt-v2 .game-format:nth-child(3n+2){background:#f5edfc}#tt-v2 .game-format:nth-child(3n){background:#eef8e8}#tt-v2 .game-format strong{font-size:21px}#tt-v2 .game-format span:last-child{font-size:15px;line-height:1.5;font-weight:400}#tt-v2 .game-format .format-symbol{font-size:34px;color:#217a97}#tt-v2 .game-format:hover{background:#daeef8!important;color:#143d54!important;transform:translateY(-2px)}
#tt-v2 .studio-source{display:block;max-width:400px;margin:18px 0}#tt-v2 .studio-source select{display:block;width:100%;margin-top:8px}
#tt-v2 .match-columns{display:grid;grid-template-columns:1fr 1fr;gap:30px}#tt-v2 .match-columns>div{display:grid;gap:12px}#tt-v2 .game-engine button[aria-pressed=true]{outline:4px solid #ebbcf8;outline-offset:2px}
#tt-v2 .memory-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}#tt-v2 .memory-board button{min-height:100px;font-size:20px;overflow-wrap:anywhere}
#tt-v2 .sorting-words,#tt-v2 .word-options,#tt-v2 .quiz-options,#tt-v2 .sentence-build{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin:20px 0}#tt-v2 .sentence-build{min-height:90px;padding:16px;border:2px dashed #9bb9c8;border-radius:12px}
#tt-v2 .sorting-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}#tt-v2 .sorting-groups section{background:#edf7fa;padding:18px;border-radius:14px}
#tt-v2 .spin-stage,#tt-v2 .bingo-clue{text-align:center;background:#f5edfc;border-radius:20px;padding:36px;margin:22px 0}#tt-v2 .quiz-picture{display:block;max-width:90%;height:230px;object-fit:contain;margin:20px auto}
#tt-v2 .game-feedback{font-weight:600;min-height:28px;color:#245f45}#tt-v2 .bingo-print{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:24px 0}#tt-v2 .bingo-grid{display:grid;grid-template-columns:repeat(3,1fr)}#tt-v2 .bingo-grid span{border:1px solid #728a95;padding:18px;text-align:center}
@media(max-width:700px){#tt-v2 .game-chooser{grid-template-columns:1fr 1fr}#tt-v2 .memory-board{grid-template-columns:repeat(3,1fr)}#tt-v2 .bingo-print{grid-template-columns:1fr}}
@media(max-width:440px){#tt-v2 .game-chooser{grid-template-columns:1fr}#tt-v2 .match-columns{gap:12px}}
@media print{body.tt-print-bingo *{visibility:hidden!important}body.tt-print-bingo .bingo-print,body.tt-print-bingo .bingo-print *{visibility:visible!important}body.tt-print-bingo #tt-v2{position:static!important;overflow:visible!important;height:auto!important}body.tt-print-bingo .bingo-print{position:absolute;left:0;top:0;width:100%;display:block!important}body.tt-print-bingo .bingo-print article{break-inside:avoid;page-break-inside:avoid;margin:20px 0 36px}}

/* Presentation viewport and compact sentence gaps. */
body.tt-focus-open #tt-v2.tt-presentation{display:flex;align-items:center;justify-content:center;padding:84px 24px;min-height:100dvh}
#tt-v2.tt-presentation>main{width:100%;margin:auto}
#tt-v2.tt-presentation .presentation-controls{position:fixed;top:16px;right:20px;z-index:100001;margin:0}
#tt-v2.tt-presentation .lesson-board{width:100%;margin:0 auto}
#tt-v2 .sentence-line input{height:48px;min-height:48px;padding:10px 12px;line-height:1.65;vertical-align:middle;width:145px}
#tt-v2 .dashboard-return{display:flex;justify-content:flex-end;margin-bottom:12px}

#tt-v2 .tt-studio>h1{text-align:center}#tt-v2 .editor-guidance{background:#f0f7ec;border:1px solid #d9e7d2;border-radius:16px;padding:22px;margin:20px 0}#tt-v2 .editor-guidance h2{font-size:21px}#tt-v2 .example-banner{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;background:#f4eafa;border-radius:12px;margin:16px 0}

/* Consistent editable text across game and slide creators. */
#tt-v2 .studio-workspace input,#tt-v2 .studio-workspace textarea,#tt-v2 .studio-workspace select{font-family:Arial,sans-serif;font-size:17px;font-weight:400}

/* Game Maker discovery: local review, 5 November 2026. */
#tt-v2 .game-showcase{cursor:default;min-width:0;gap:12px}
#tt-v2 .game-showcase:hover{transform:none;background:#edf7fd!important;color:#294352!important}
#tt-v2 .game-showcase:nth-child(3n+2):hover{background:#f5edfc!important}
#tt-v2 .game-showcase:nth-child(3n):hover{background:#eef8e8!important}
#tt-v2 .game-showcase h2{font:600 21px/1.3 Inter,Arial,sans-serif;margin:0}
#tt-v2 .game-showcase p{font:400 15px/1.5 Inter,Arial,sans-serif;margin:0}
#tt-v2 .game-demo-description{border-top:1px solid #29435225;padding-top:12px;width:100%}
#tt-v2 .game-demo-description h3{font:600 15px/1.5 Inter,Arial,sans-serif;margin:0 0 6px}
#tt-v2 .game-showcase-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:10px;width:100%}
#tt-v2 .game-showcase-actions button{font-size:15px;margin:0;padding:10px 12px;min-height:42px;flex:1 1 auto}
/* October review: shared surfaces and legible classroom games. */
#tt-v2 .game-feedback:empty{min-height:0;margin:0}

#tt-v2 .outburst-targets>.play-card:last-child:nth-child(odd){grid-column:1/-1;width:calc(50% - 6px);justify-self:center;box-sizing:border-box}
#tt-v2 [data-sort-item]{touch-action:none}#tt-v2 .sorting-ghost{position:fixed;z-index:20;pointer-events:none;transform:translate(-50%,-50%);opacity:.85}
#tt-v2 .workspace-heading{display:block}
#tt-v2 .workspace-nav .button[aria-current=page]{background:#25849b;color:white}
#tt-v2 .workspace-heading .workspace-nav{width:100%;box-sizing:border-box}
#tt-v2.tt-classroom .tt-studio>h1{display:block}#tt-v2.tt-classroom .game-top-controls [data-studio="back-edit"]{display:inline-flex}
#tt-v2{--pastel-0:#e3f2ff;--pastel-1:#edf7db;--pastel-2:#f2e7ff;--pastel-3:#fff1d5;--pastel-4:#ffe8df;--pastel-5:#e1f8f0;--pastel-6:#fce4ef;--pastel-7:#e8e8fc;--pastel-8:#e0f6f9;--accent-0:#2389d9;--accent-1:#77ad32;--accent-2:#9256d5;--accent-3:#e49a12;--accent-4:#ed7956;--accent-5:#24a482;--accent-6:#d6558e;--accent-7:#686ccc;--accent-8:#219eb2;color:#294451}
#tt-v2:not(.tt-focused):not(.tt-classroom){background:linear-gradient(180deg,#fff0ad 0,#fff8db 230px,#fff 620px);border-radius:24px}
#tt-v2 .resource-heading,#tt-v2 .workspace-heading{background:#fff;border:0;border-radius:22px;padding:28px 22px;margin:0 0 26px;text-align:center;box-shadow:0 5px 20px #324b5610}
#tt-v2 .workspace-heading h1,#tt-v2 .resource-heading h1,#tt-v2 .game-view>h1{font-size:clamp(28px,3vw,42px);font-weight:700;line-height:1.2;margin:0 0 22px}
#tt-v2 .resource-heading h1{margin:0}#tt-v2 .clock-icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;vertical-align:middle}
#tt-v2 .workspace-nav,#tt-v2 .resource-tabs{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;width:auto;padding:12px 0;border:0;border-radius:0;background:transparent;box-shadow:none}
#tt-v2 .workspace-nav .button,#tt-v2 .workspace-nav button,#tt-v2 .resource-tabs a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;box-sizing:border-box;padding:12px 16px;background:#edf7fc;color:#207690;border:1px solid transparent;line-height:1.3;text-decoration:none;font-weight:600;border-radius:9px}
#tt-v2 .workspace-nav [aria-current=page],#tt-v2 .resource-tabs a[aria-current=page]{background:#25849b;color:white}
#tt-v2 button,#tt-v2 .button{border-radius:9px;line-height:1.35;min-height:44px;transition:background .15s,box-shadow .15s,transform .15s}
#tt-v2 button:not(.secondary):not(.play-card):not(.memory-card):not(.game-format):not(.category-heading):not(.word-chip):not(.drop-slot):not(.return-word):not(.intro-arrow),#tt-v2 .button:not(.secondary){background:#c6eea8;color:#284e18;border-color:#76b84a}
#tt-v2 button.secondary,#tt-v2 .button.secondary,#tt-v2 .resource-actions .tool-game,#tt-v2 .resource-actions .tool-slides{background:#edf7fc;color:#207690;border-color:#bedbe5}
#tt-v2 button:hover:not(:disabled),#tt-v2 .button:hover{box-shadow:0 3px 10px #23495b20;filter:brightness(.97)}
#tt-v2 button:focus-visible,#tt-v2 a:focus-visible{outline:3px solid #226eaa;outline-offset:3px}
#tt-v2 .source-choices{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:22px 0}#tt-v2 .studio-source{margin:18px auto}
#tt-v2 .game-format{align-items:center;text-align:center;justify-content:center;padding:26px 20px;min-height:240px;background:var(--card)!important;color:#294451!important}
#tt-v2 .game-format strong{font-size:23px;font-weight:600}#tt-v2 .game-format .format-symbol{display:flex;align-items:center;justify-content:center;border-radius:50%;width:66px;height:66px;background:var(--accent);color:white;font-size:31px;font-weight:700}
#tt-v2 .format-0{--card:var(--pastel-0);--accent:var(--accent-0)}#tt-v2 .format-1{--card:var(--pastel-1);--accent:var(--accent-1)}#tt-v2 .format-2{--card:var(--pastel-2);--accent:var(--accent-2)}#tt-v2 .format-3{--card:var(--pastel-3);--accent:var(--accent-3)}#tt-v2 .format-4{--card:var(--pastel-4);--accent:var(--accent-4)}#tt-v2 .format-5{--card:var(--pastel-5);--accent:var(--accent-5)}#tt-v2 .format-6{--card:var(--pastel-6);--accent:var(--accent-6)}#tt-v2 .format-7{--card:var(--pastel-7);--accent:var(--accent-7)}#tt-v2 .format-8{--card:var(--pastel-8);--accent:var(--accent-8)}
body.tt-game-open{overflow:hidden}body.tt-game-open #tt-v2.tt-classroom{position:fixed;inset:0;z-index:100000;width:100%;height:100dvh;max-width:none;box-sizing:border-box;overflow:auto;padding:80px 24px 30px;background:#f8fafb}
#tt-v2 .game-view{max-width:1180px;margin:auto;text-align:center}#tt-v2 .game-top-controls{position:absolute;right:20px;top:16px;display:flex;gap:10px}#tt-v2 .game-engine{max-width:1100px;margin:auto;text-align:center}#tt-v2 .game-engine h2{font-size:clamp(24px,2.6vw,34px);line-height:1.3}
#tt-v2 .game-instruction{margin:12px auto 22px;font-size:18px}#tt-v2 .studio-scores{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:20px 0}
#tt-v2 .studio-scores>div{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px;border:3px solid transparent;border-radius:16px;background:#eaf3f7;font-size:24px;font-weight:600;gap:4px}
#tt-v2 .studio-scores>div:nth-child(2){background:#eef4e3}#tt-v2 .studio-scores>div.active{border-color:#248397;box-shadow:0 4px 12px #24839714}#tt-v2 .studio-scores strong{font-size:36px;line-height:1.1}
#tt-v2 .turn-prompt{font-size:21px;font-weight:600;margin:12px 0 20px}#tt-v2 .game-feedback{min-height:30px;font-size:23px;margin:10px 0;text-align:center;color:#24744b}#tt-v2 .game-feedback.incorrect,#tt-v2 .answer-result.incorrect{color:#a64040}
#tt-v2 .game-engine .actions{justify-content:center}#tt-v2 .game-secondary{margin-top:24px}#tt-v2 .game-secondary button{font-size:15px}
#tt-v2 .play-card{background:var(--card,#e3f2ff)!important;color:#294451!important;border:1px solid #cfdfe6;box-shadow:0 3px 10px #1d394810;border-radius:14px;min-height:100px;font-size:clamp(20px,2vw,28px);font-weight:650;display:flex;align-items:center;justify-content:center;padding:18px;overflow-wrap:anywhere;line-height:1.3}
#tt-v2 .play-card:disabled{opacity:.62}#tt-v2 .play-card[aria-pressed=true]{outline:4px solid #22879c;outline-offset:1px;box-shadow:0 0 0 7px #d6eef4}
#tt-v2 .studio-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}#tt-v2 .studio-board .play-card{font-size:36px;min-height:112px}
#tt-v2 .question-panel{background:var(--card,#e3f2ff);padding:32px 24px;border-radius:20px;margin:20px auto;animation:question-in .3s ease-out}#tt-v2 .revealed-answer{font-size:28px;animation:question-in .2s ease-out}#tt-v2 .answer-result{font-size:26px;font-weight:700;color:#24744b;margin:18px}
#tt-v2 .match-columns{display:grid;grid-template-columns:1fr 1fr;gap:40px}#tt-v2 .match-columns>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-content:start}#tt-v2 .match-columns>div+div{border-left:2px solid #d8e5e9;padding-left:20px;margin-left:-20px}#tt-v2 .match-columns .play-card{min-height:110px}
#tt-v2 .memory-board{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}#tt-v2 .memory-card{border:0;background:transparent!important;perspective:800px;padding:0;height:140px;color:#294451!important;opacity:1}
#tt-v2 .flip-inner{position:relative;display:block;width:100%;height:100%;transform-style:preserve-3d;transition:transform .45s}#tt-v2 .face-up .flip-inner{transform:rotateY(180deg)}#tt-v2 .card-front,#tt-v2 .card-back{position:absolute;inset:0;backface-visibility:hidden;border-radius:16px;display:flex;align-items:center;justify-content:center;border:1px solid #cbdde5;background:var(--card);font-size:clamp(24px,3vw,38px);padding:12px;box-sizing:border-box}
#tt-v2 .card-front{transform:rotateY(180deg);font-size:clamp(22px,2.7vw,30px);background:#fff}#tt-v2 .card-front img{max-width:100%;max-height:100%;object-fit:contain}
#tt-v2 .wheel-wrap{position:relative;width:300px;height:320px;margin:12px auto 22px}#tt-v2 .spin-wheel{position:absolute;top:20px;left:0;width:300px;height:300px;border-radius:50%;border:5px solid white;box-shadow:0 5px 25px #1b415b20;box-sizing:border-box;transition:transform 4.5s cubic-bezier(.12,.65,.15,1)}#tt-v2 .wheel-pointer{position:absolute;top:0;left:130px;z-index:2;font-size:38px;color:#247c96}#tt-v2 .wheel-number{position:absolute;top:calc(50% - 14px);left:calc(50% - 14px);font-size:22px;width:28px;height:28px;font-weight:700}#tt-v2 .wheel-number.used{opacity:.4}
#tt-v2 .sorting-groups{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}#tt-v2 .sorting-groups section{background:var(--card);min-height:200px;padding:14px}#tt-v2 .category-heading{display:block;width:100%;border:0;border-bottom:2px solid #b8cfd7;background:transparent!important;color:#294451!important;border-radius:0;font-size:22px;padding:14px 5px}
#tt-v2 .sorted-stack{display:flex;flex-direction:column;align-items:center;gap:10px;padding:15px 0}#tt-v2 .sorted-card{background:#fff;border:1px solid #d3e2e7;border-radius:10px;padding:12px 20px;min-width:65%;font-size:21px;animation:question-in .2s}
#tt-v2 .sorting-words .play-card,#tt-v2 .word-options .play-card,#tt-v2 .sentence-build .play-card{min-height:64px;font-size:24px;padding:14px 22px}#tt-v2 .sentence-build{align-items:center;min-height:110px;background:#fff}
#tt-v2 .quiz-options{display:grid;grid-template-columns:1fr 1fr;max-width:650px;margin:22px auto;gap:15px}#tt-v2 .quiz-picture{height:260px;max-width:100%;object-fit:contain}#tt-v2 .noughts-board{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:470px;margin:20px auto}#tt-v2 .noughts-board button{font-size:42px;min-height:105px}
#tt-v2 .outburst-targets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:750px;margin:20px auto}#tt-v2 .outburst-clock{font-size:36px;font-weight:700;margin:10px}#tt-v2 [data-outburst-form]{display:flex;align-items:flex-end;justify-content:center;gap:12px;margin:20px auto}#tt-v2 [data-outburst-form] label{text-align:left}#tt-v2 [data-outburst-answer]{display:block}#tt-v2 .target-found{animation:question-in .25s}#tt-v2 .restart-confirm{padding:20px;border:2px solid #adcbd8;border-radius:14px;background:#fff5d6;margin:20px auto}
#tt-v2.tt-focused .resource-meta:empty{display:none}#tt-v2.tt-focused .resource-heading{padding:18px;text-align:center;justify-content:center}#tt-v2 .adjective-bank.bank-docked{position:fixed!important;width:192px!important;box-sizing:border-box;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px;z-index:40;max-height:calc(100dvh - 40px);overflow:auto}#tt-v2 .bank-docked [data-word]{min-width:0;width:100%;padding:12px 4px;font-size:17px}
#tt-v2 .lesson-board{position:relative;height:min(690px,calc(100dvh - 140px));min-height:450px;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px 65px}
#tt-v2 :is(.lesson-board,.studio-slide) .intro-arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;min-height:44px;padding:0;border-radius:50%;font-size:32px;display:flex;align-items:center;justify-content:center}#tt-v2 .intro-left{left:12px}#tt-v2 .intro-right{right:12px}#tt-v2 .intro-counter{position:absolute;bottom:16px;right:22px;font-size:14px;color:#587580}#tt-v2 .lesson-board summary{background:#e1f4f3;color:#24758a;border:1px solid #b7dcd7;border-radius:8px;padding:10px 18px}
@keyframes question-in{from{opacity:.35;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:700px){body.tt-game-open #tt-v2.tt-classroom{padding:80px 14px 24px}#tt-v2 .match-columns{gap:22px}#tt-v2 .match-columns>div{grid-template-columns:1fr}#tt-v2 .match-columns>div+div{margin-left:-11px;padding-left:11px}#tt-v2 .studio-board{grid-template-columns:repeat(3,1fr)}#tt-v2 .sorting-groups{grid-template-columns:repeat(2,minmax(0,1fr))}#tt-v2 .memory-board{grid-template-columns:repeat(3,minmax(0,1fr))}#tt-v2 .studio-scores>div{font-size:20px}#tt-v2 .workspace-heading{padding:20px 10px}#tt-v2 .workspace-nav{gap:8px;padding:10px}#tt-v2 .lesson-board{height:calc(100dvh - 120px);min-height:420px;padding:25px 52px}#tt-v2 [data-outburst-form]{flex-direction:column;align-items:stretch}}
@media(prefers-reduced-motion:reduce){#tt-v2 *,#tt-v2 *:before,#tt-v2 *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

#tt-v2 .format-symbol svg{width:34px;height:34px}#tt-v2 .studio-scores>div.active{outline:none}

#tt-v2 .adjective-bank.bank-docked{margin:0}
#tt-v2 [data-format=team] .question-panel{animation:team-reveal .35s ease-out}@keyframes team-reveal{from{opacity:.3;transform:perspective(1000px) rotateY(75deg)}to{opacity:1;transform:perspective(1000px) rotateY(0)}}
#tt-v2 .match-columns .play-card:disabled{border-color:#7dac99;animation:matched-in .25s ease-out}@keyframes matched-in{from{box-shadow:0 0 0 5px #b4dfc8}to{box-shadow:0 0 0 0 transparent}}

/* October 8 local review: yellow belongs behind the cards; navigation has no nested panel. */
#tt-v2 .workspace-nav .button,#tt-v2 .workspace-nav button,#tt-v2 .resource-tabs a{background:#e4f4ff;color:#175b79;border-color:#acd8ec;box-shadow:none}
#tt-v2 .workspace-nav .button[aria-current=page],#tt-v2 .resource-tabs a[aria-current=page]{background:#c6eea8;color:#284e18;border-color:#76b84a;box-shadow:0 2px 7px #4c8e3020}
#tt-v2 .resource-tabs a.resource-return{background:#e1f4d2;color:#365b22;border-color:#b0d697}
#tt-v2 button.secondary,#tt-v2 .button.secondary{background:#e4f4ff;color:#175b79;border-color:#acd8ec}
#tt-v2 .resource-actions .tool-game,#tt-v2 .resource-actions .tool-slides,#tt-v2 .preview-exit .button,#tt-v2 .game-top-controls .button,#tt-v2 .game-top-controls button{background:#e1f4d2;color:#365b22;border-color:#b0d697}
#tt-v2 .resource-actions>a:first-child,#tt-v2 [data-action="check-section"],#tt-v2 [data-studio="save"],#tt-v2 [data-game="correct"],#tt-v2 [data-game="check-order"],#tt-v2 [data-game="spin"]{background:#c6eea8;color:#284e18;border-color:#76b84a}
#tt-v2 .source-choices button:not(.secondary){background:#c6eea8;color:#284e18;border-color:#76b84a}
#tt-v2 .workspace-nav .button:hover,#tt-v2 .workspace-nav button:hover,#tt-v2 .resource-tabs a:hover,#tt-v2 .secondary:hover{filter:brightness(.97);color:#175b79}
#tt-v2 .game-format:hover{background:var(--card)!important;filter:brightness(.97)}
body.tt-game-open #tt-v2.tt-classroom{display:flex;flex-direction:column;padding:80px 24px}
#tt-v2.tt-classroom>.game-view{flex:none;width:100%;margin:auto;max-width:1180px}
#tt-v2.tt-classroom .studio-message:empty{display:none}
@media(max-width:700px){body.tt-game-open #tt-v2.tt-classroom{padding:80px 14px}}

/* Review correction: one resource card, with its yellow surround below navigation. */
#tt-v2:not(.tt-focused):not(.tt-classroom):has(.resource-surround){background:#fff}
#tt-v2 .resource-surround{background:linear-gradient(180deg,#fff0ad 0%,#fff8db 32%,#fff 67%);border-radius:24px;padding:20px}
#tt-v2 .resource-card{background:#fff;border:1px solid #e1e9ec;border-radius:20px;box-shadow:0 5px 20px #324b5610;overflow:hidden}
#tt-v2 .resource-card>.resource-heading{border-radius:0;margin:0;padding:28px 22px;box-shadow:none;border-bottom:1px solid #ccd8de;background:#fff}
#tt-v2 .resource-card>.sheet{border:0;border-radius:0;margin:0;box-shadow:none;padding:28px}
#tt-v2 .resource-tabs a.resource-return,#tt-v2 .resource-actions .button,#tt-v2 .resource-actions button{background:#e4f4ff;color:#175b79;border-color:#acd8ec}
#tt-v2 .resource-tabs a,#tt-v2 .workspace-nav a,#tt-v2 .workspace-nav button{transition:background .18s,border-color .18s,box-shadow .18s,transform .18s}
#tt-v2 .resource-tabs a:hover,#tt-v2 .workspace-nav a:hover,#tt-v2 .workspace-nav button:hover,#tt-v2 .resource-actions .button:hover,#tt-v2 .resource-actions button:hover:not(:disabled){background:#ccecff;color:#154f6a;border-color:#72bddc;filter:none;transform:translateY(-2px);box-shadow:0 4px 10px #2485ae20}
#tt-v2 .resource-tabs a[aria-current=page]:hover,#tt-v2 .workspace-nav .button[aria-current=page]:hover{background:#b4e790;color:#284e18;border-color:#69a942;filter:none}
@media(max-width:650px){#tt-v2 .resource-surround{padding:12px}#tt-v2 .resource-card>.sheet{padding:22px 16px}}
#tt-v2 .resource-tabs{background:#fff;border:1px solid #e7eef1;border-radius:16px;padding:16px;box-shadow:0 3px 14px #29445108;margin-bottom:22px}
#tt-v2 .resource-card .resource-actions{margin-top:26px}





#tt-v2 .resource-card>.sheet:has(.resource-actions){padding-bottom:40px}


#tt-v2 .resource-actions>a.button:first-child{background:#e4f4ff;color:#175b79;border-color:#acd8ec}
#tt-v2 .resource-actions>a.button:first-child:hover{background:#ccecff;color:#154f6a;border-color:#72bddc}

#tt-v2 .resource-card>.resource-heading h1,#tt-v2.tt-focused .resource-heading h1{font-size:clamp(28px,2.7vw,38px);font-weight:600}
#tt-v2 .level-badge{background:#f3eafa;color:#79528d;border-color:#e2d2ec;font-weight:600}
#tt-v2 .resource-actions>a.button:first-child{background:#c5e9fb;color:#154f6a;border-color:#71bad9;box-shadow:0 2px 6px #247f9d18}
#tt-v2 .resource-actions>a.button:first-child:hover{background:#aeddF5;color:#154f6a;border-color:#54a5c8}
#tt-v2 .teacher-path{font-size:14px;display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:22px 0 0;color:#526b76}
#tt-v2 .teacher-path a{font-weight:600;text-underline-offset:3px}
#tt-v2 .sharing-availability{font-size:13px;color:#60747e;margin:14px 0 0}

#tt-v2 .resource-actions{gap:6px}#tt-v2 .resource-actions .button,#tt-v2 .resource-actions button{padding:10px}



#tt-v2 .resource-card .resource-actions{justify-content:space-between}

#tt-v2 .resource-card>.sheet{container-type:inline-size;container-name:resource-content}
@container resource-content (max-width: 940px){
 #tt-v2 .resource-card .resource-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 #tt-v2 .resource-actions .button,#tt-v2 .resource-actions button{width:100%;min-height:48px}
 #tt-v2 .resource-actions .resource-return{grid-column:1/-1}
}
#tt-v2 .resource-tabs{position:relative;padding-left:66px;padding-right:66px}
#tt-v2 .resource-tabs .resource-back-arrow{position:absolute;left:16px;top:50%;transform:translateY(-50%);width:38px;min-height:38px;height:38px;padding:0;border-radius:50%;font-size:24px}
#tt-v2 .resource-tabs .resource-back-arrow:hover{transform:translateY(-50%)}
#tt-v2 .resource-card .resource-actions{justify-content:flex-start;gap:12px}
#tt-v2 .resource-actions .button,#tt-v2 .resource-actions button{padding:12px 16px}
#tt-v2 .resource-tabs .resource-back-arrow{width:44px;height:44px;min-height:44px;border-radius:10px;border-color:#91bfd3;background:#deeff8}
#tt-v2 .resource-back-arrow svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
#tt-v2 .resource-tabs .resource-back-arrow{background:transparent;border-color:transparent;color:#536e7a;box-shadow:none}
#tt-v2 .resource-tabs .resource-back-arrow:hover{background:#f0f5f7;border-color:transparent;color:#294451;box-shadow:none}

#tt-v2 .resource-tabs .resource-back-arrow{background:#fafafa;border-color:transparent}



#tt-v2 .resource-tabs .resource-back-arrow{border-radius:50%}

#tt-v2 .resource-card>.sheet>ol{line-height:1.5;margin-top:22px;margin-bottom:26px}
#tt-v2 .resource-card>.sheet>ol>li+li{margin-top:16px}
#tt-v2 .resource-card>.sheet>ol{margin-bottom:22px}
#tt-v2 .resource-card>.sheet>details{margin-top:14px;margin-bottom:14px}
#tt-v2 .resource-card>.sheet:has(>details){padding-bottom:24px}
#tt-v2 .resource-card>.sheet>ol{margin-bottom:20px}
#tt-v2 .resource-card>.sheet>details{margin-top:12.6px;margin-bottom:12.6px}
#tt-v2 .resource-card>.sheet:has(>details){padding-bottom:21.6px}

#tt-v2 .answer-key-label{font-size:16px;font-weight:400;margin:18px 0 6px}

#tt-v2 .resource-card>.sheet>ol{margin-bottom:14px}
#tt-v2 .resource-card>.sheet>details{margin-top:8px;margin-bottom:8px}
#tt-v2 .resource-card>.sheet>details>summary{padding-top:6px;padding-bottom:6px}
#tt-v2 .resource-card>.sheet>details>p{margin-left:40px}
#tt-v2 .resource-card>.sheet>details>summary+.answer-key-label{margin-top:10px}

#tt-v2 :is(.lesson-board,.studio-slide) .intro-arrow{background:#fafafa;border-color:transparent;color:#536e7a;box-shadow:none}
#tt-v2 :is(.lesson-board,.studio-slide) .intro-arrow:hover:not(:disabled){background:#f0f5f7;border-color:transparent;color:#294451;box-shadow:none;transform:translateY(-50%)}
#tt-v2 :is(.lesson-board,.studio-slide) .intro-arrow:disabled{background:#fafafa;border-color:transparent;color:#aab4b9;opacity:.55}
/* Presentation controls follow the approved resource-tab interaction. */
#tt-v2 .presentation-controls .secondary,#tt-v2 .lesson-board summary,#tt-v2 :is(.lesson-board,.studio-slide) .intro-arrow{transition:background .18s,border-color .18s,box-shadow .18s,transform .18s}
#tt-v2 .presentation-controls .secondary:hover{background:#ccecff;color:#154f6a;border-color:#72bddc;filter:none;transform:translateY(-2px);box-shadow:0 4px 10px #2485ae20}
#tt-v2 .lesson-board summary{background:#c6eea8;color:#284e18;border-color:#76b84a;list-style:none}
#tt-v2 .lesson-board summary::-webkit-details-marker{display:none}
#tt-v2 .lesson-board summary::marker{content:''}
#tt-v2 .lesson-board summary::before,#tt-v2 .lesson-board summary::after{display:none;content:none}
#tt-v2 .lesson-board summary:hover{background:#b4e790;color:#284e18;border-color:#69a942;filter:none;transform:translateY(-2px);box-shadow:0 4px 10px #4c8e3020}
#tt-v2 .intro-line-break{display:block;height:16px}
#tt-v2 :is(.lesson-board,.studio-slide) .intro-arrow:hover:not(:disabled){transform:translateY(calc(-50% - 2px));box-shadow:0 4px 10px #29445112;filter:none}

#tt-v2 .lesson-board>.actions{margin:16px 0}

#tt-v2.tt-focused .resource-heading h1{font-size:clamp(28px,2.7vw,38px);font-weight:600}
#tt-v2 .exercise-nav button.secondary{background:#e4f4ff;color:#175b79;border-color:#acd8ec;transition:background .18s,border-color .18s,box-shadow .18s,transform .18s}
#tt-v2 .exercise-nav button.secondary:hover{background:#ccecff;color:#154f6a;border-color:#72bddc;filter:none;transform:translateY(-2px);box-shadow:0 4px 10px #2485ae20}
#tt-v2 .exercise-nav button.secondary[aria-current=step]{background:#c6eea8;color:#284e18;border-color:#76b84a}
#tt-v2 .exercise-nav button.secondary[aria-current=step]:hover{background:#b4e790;color:#284e18;border-color:#69a942}
#tt-v2 .section-letter{background:#d4efbf;color:#284e18}
#tt-v2 .adjective-bank{background:#f0f9e9;border-color:#c6deaF}
#tt-v2 .word-chip{background:#e4f4ff;color:#175b79;border-color:#acd8ec}
#tt-v2 .word-chip.selected{background:#c6eea8;color:#284e18;border-color:#76b84a;box-shadow:0 0 0 3px #c6eea855}
#tt-v2 .word-chip.used{background:#f1f5f7;color:#74838a;border-color:#d7e0e5}

#tt-v2.tt-focused [data-action="check-section"],#tt-v2.tt-focused [data-action="toggle-personal"]{background:#c6eea8;color:#284e18;border-color:#76b84a;transition:background .18s,border-color .18s,box-shadow .18s,transform .18s}
#tt-v2.tt-focused [data-action="check-section"]:hover,#tt-v2.tt-focused [data-action="toggle-personal"]:hover{background:#b4e790;color:#284e18;border-color:#69a942;filter:none;transform:translateY(-2px);box-shadow:0 4px 10px #4c8e3020}
#tt-v2 .bank-docked>span{min-width:0;padding:10px 4px;background:#e4f4ff;color:#175b79;border:1px solid #acd8ec;border-radius:7px;font-size:17px}
/* Word banks: approved green surround and neutral white word cards. */
#tt-v2 .adjective-bank{background:#d4efbf;border-color:#92c070}
#tt-v2 .adjective-bank>.word-chip,#tt-v2 .adjective-bank>span{background:#fff;color:#293d48;border:1px solid #d5dfe3;border-radius:7px}
#tt-v2 .adjective-bank>.word-chip.selected{background:#fff;color:#293d48;border-color:#24768c;box-shadow:0 0 0 3px #24768c30}
#tt-v2 .adjective-bank>.word-chip.used{background:#f3f5f4;color:#748079;border-style:dashed;opacity:.65}
#tt-v2 .adjective-bank>.word-chip.selected,#tt-v2 .drag-ghost{background:#e4f4ff;color:#293d48;border:1px solid #72bddc;box-shadow:0 0 0 3px #72bddc25}
#tt-v2 .drop-slot.filled{background:#fff;color:#293d48;border:1px solid #cbd5da}
#tt-v2 .drop-slot.filled.can-place{background:#e4f4ff;border-color:#72bddc}

#tt-v2 .picture-answer .drop-slot.filled{font-size:18px;font-weight:400}

#tt-v2 .answer-feedback.correct{background:#d2efbd;color:#236c37}
#tt-v2 .sentence-line input{margin-left:4px;margin-right:4px}
#tt-v2 .sentence-line input:focus{background:#fff;border-color:#72bddc;outline:1px solid #72bddc;outline-offset:0;box-shadow:0 0 0 2px #72bddc20}

#tt-v2 .answer-feedback.format>span[aria-hidden]{display:none}
#tt-v2 #personal-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;margin-top:20px}
#tt-v2 #personal-choices>.hint,#tt-v2 #personal-choices>[data-action="toggle-personal"]{grid-column:1/-1}
#tt-v2 #personal-choices>[data-action="toggle-personal"]{justify-self:start}
#tt-v2 #personal-choices>.personal-row{margin:0;min-width:0}
@media(max-width:650px){#tt-v2 #personal-choices{grid-template-columns:1fr}}

#tt-v2 #personal-choices>.hint{margin-bottom:0}
#tt-v2 #personal-choices>.personal-row.choice-missing{background:#fff6e7;outline:1px solid #e7bd76;border-radius:8px}
#tt-v2 #personal-warning{grid-column:1/-1;color:#855312;background:#fff6e7;padding:10px 14px;border-radius:8px;margin:0}
#tt-v2 #personal-choices>.personal-row.choice-missing{position:relative;isolation:isolate;background:transparent}
#tt-v2 #personal-choices>.personal-row.choice-missing::before{content:'';position:absolute;inset:0;top:-24px;background:#fff6e7;border-radius:8px;z-index:-1;pointer-events:none}
#tt-v2 #personal-choices>.personal-row.choice-missing{background:transparent;outline:none}
#tt-v2 #personal-choices>.personal-row.choice-missing::before{display:none}
#tt-v2 #personal-choices>.personal-row.choice-missing>legend{background:#fff0d8;color:#855312;border-radius:4px}
#tt-v2 #personal-choices>.personal-row.choice-missing>legend{background:transparent}
#tt-v2 #personal-choices>.personal-row.choice-missing>legend>span{background:#fff0d8;color:#855312;border-radius:4px;padding:2px 3px;box-decoration-break:clone}

#tt-v2 :is(#personal-choices,.partner-choices) .choice-chip input{accent-color:#72bddc}

#tt-v2 :is(#personal-choices,.partner-choices) .choice-chip input[type=radio]{appearance:none;-webkit-appearance:none;width:18px;height:18px;min-height:18px;padding:0;border:1px solid #9aa5aa;border-radius:50%;background:#fff;box-shadow:none;display:inline-grid;place-content:center;flex:none}
#tt-v2 :is(#personal-choices,.partner-choices) .choice-chip input[type=radio]:checked{border:1px solid #9aa5aa;background:#72bddc;box-shadow:none}
#tt-v2 :is(#personal-choices,.partner-choices) .choice-chip input[type=radio]:focus:not(:focus-visible){outline:none}




#tt-v2 .partner-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px}
#tt-v2 .partner-choices .game-row{min-width:0}
#tt-v2 .partner-choices .personal-row{border:0;margin:0;padding:0}
@media(max-width:650px){#tt-v2 .partner-choices{grid-template-columns:1fr}}

#tt-v2 .partner-choices .visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
#tt-v2 .activity-end{position:relative;padding-right:160px}
#tt-v2 .activity-end>#tt-save{position:absolute;right:0;top:10px;margin:0;font-size:13px;color:#60747e}
#tt-v2 .activity-restart>summary{font-size:14px;color:#526b76;width:fit-content;cursor:pointer}
@media(max-width:650px){#tt-v2 .activity-end{padding-right:0}#tt-v2 .activity-end>#tt-save{position:static;margin-top:16px}}
#tt-v2 .sheet>.activity-end{border-top:1px solid #d8e1e5;margin-top:24px;padding-top:24px}
#tt-v2 .sheet>.activity-end>#tt-save{top:34px}
#tt-v2 .restart-confirmation{background:#f6f8f9;border:1px solid #e1e7ea;border-radius:10px;padding:18px;margin-top:12px}
#tt-v2 .restart-confirmation h3{font-size:17px;margin-bottom:8px}
#tt-v2 .restart-confirmation .restart-clear{background:#f9e4e3!important;color:#963f3a!important;border-color:#ddb0ac!important}
@media(max-width:650px){#tt-v2 .sheet>.activity-end>#tt-save{position:static}}

#tt-v2 #finish-warning{margin-top:18px;padding:18px;background:#fff6e7;border:1px solid #f0dfbe;border-radius:10px}
#tt-v2 .lesson-board>details{min-height:120px;flex-shrink:0}
#tt-v2 .lesson-board>img{flex-shrink:0;height:min(26vh,260px)}
#tt-v2 .lesson-board:has(>details){height:auto;min-height:min(690px,calc(100dvh - 140px))}

#tt-v2 .lesson-board>details{height:140px;min-height:140px;box-sizing:border-box}

#tt-v2 .activity-end>#tt-completion{margin-top:24px}

#tt-v2 .results-view>header,#tt-v2 .results-view>.hero{flex-direction:column;gap:8px;text-align:center}
#tt-v2 .results-view .sheet{padding:22px 28px;margin-bottom:16px}
#tt-v2 .results-view .sheet h2{font-size:18px;font-weight:400;margin:0 0 12px}
#tt-v2 .results-view details{margin:8px 0;padding:0}
#tt-v2 .results-view summary{font-size:16px;font-weight:400;color:#293d48;padding:6px 0}
#tt-v2 .results-view .previous-attempts>details{margin-left:20px}

#tt-v2 .result-card-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #d8e1e5;padding-bottom:14px;margin-bottom:4px}
#tt-v2 .results-view .result-card-heading h2{margin:0}
#tt-v2 .result-score{background:#e4f4ff;color:#175b79;border:1px solid #c8e5f3;border-radius:18px;padding:5px 12px;font-size:14px;white-space:nowrap}
#tt-v2 .result-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid #edf1f3}
#tt-v2 .result-row:last-child{border-bottom:0}
#tt-v2 .result-question{font-size:16px;font-weight:400;color:#293d48}
#tt-v2 .result-answer{font-size:15px;color:#536773;margin-top:4px}
#tt-v2 .result-status{font-size:14px;border-radius:7px;padding:5px 10px;flex-shrink:0;max-width:45%}
#tt-v2 .result-status.correct{background:#d2efbd;color:#236c37}
#tt-v2 .result-status.retry{background:#fff0d8;color:#855312}
#tt-v2 .result-status.empty{background:#f0f2f3;color:#59666d}
#tt-v2 .results-view .previous-attempts{border-top:1px solid #d8e1e5;padding-top:10px;margin-top:12px}
#tt-v2 .results-view .previous-attempts>summary{color:#536773;font-size:14px}
@media(max-width:600px){#tt-v2 .result-row{gap:10px;align-items:flex-start}#tt-v2 .result-status{font-size:13px;padding:5px 7px}#tt-v2 .results-view .sheet{padding:18px}}

#tt-v2 .result-two-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px}
#tt-v2 .result-row{display:block;padding:10px 0}
#tt-v2 .result-answer-line{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin-top:5px}
#tt-v2 .result-answer-line .result-answer{margin-top:0}
#tt-v2 .result-answer-line .result-status{max-width:100%;flex-shrink:1}
#tt-v2 .result-correction{font-size:15px;color:#236c37;margin-top:5px}
@media(max-width:700px){#tt-v2 .result-two-columns{grid-template-columns:1fr}}

#tt-v2 .results-back{display:inline-flex;background:#e4f4ff;color:#175b79;border:1px solid #acd8ec;border-radius:10px;padding:12px 20px;text-decoration:none;transition:background .18s,transform .18s,box-shadow .18s}
#tt-v2 .results-back:hover{background:#ccecff;color:#175b79;transform:translateY(-2px);box-shadow:0 5px 12px #175b7918}

#tt-v2 .exercise-nav{row-gap:14px}

#tt-v2 .resources-top-card{background:white;border:1px solid #e1e9ec;border-radius:22px;padding:0 22px 24px;margin-bottom:26px;box-shadow:0 5px 20px #324b5610}
#tt-v2 .resources-top-card .workspace-heading{background:transparent;box-shadow:none;border-radius:0;margin:0;padding:28px 0 4px}
#tt-v2 .workspace-heading h1{font-size:clamp(28px,2.7vw,38px);font-weight:600}
#tt-v2 .resources-top-card .workspace-heading h1{border-bottom:1px solid #ccd8de;padding-bottom:22px;margin-bottom:16px}
#tt-v2 .resources-top-card .workspace-nav button.secondary,#tt-v2 .resources-top-card .workspace-nav .button{background:#e4f4ff;color:#175b79;border:1px solid #acd8ec}
#tt-v2 .resources-top-card .workspace-nav button.secondary:hover,#tt-v2 .resources-top-card .workspace-nav .button:hover{background:#ccecff;transform:translateY(-2px);filter:none}
#tt-v2 .resources-top-card .dash-number-nav{margin:8px 0 0}
#tt-v2 .resources-top-card .dash-number-nav a{background:#e4f4ff;color:#175b79;border:1px solid #acd8ec;transition:background .18s,transform .18s,box-shadow .18s}
#tt-v2 .resources-top-card .dash-number-nav a.selected{background:#c6eea8;color:#284e18;border:1px solid #76b84a;box-shadow:none}
#tt-v2 .resources-top-card .dash-number-nav a:hover{background:#ccecff;transform:translateY(-2px);box-shadow:0 4px 10px #2485ae20}
#tt-v2 .resources-top-card .dash-number-nav a.selected:hover{background:#b4e790}
@media(max-width:650px){#tt-v2 .resources-top-card{padding:0 14px 18px}}

#tt-v2:has(.dash-v11){font-family:Inter,Arial,sans-serif}
#tt-v2 .workspace-heading h1{font-family:inherit;letter-spacing:normal;color:#293f4b;line-height:1.2}

#tt-v2 .resources-navigation{background:#fff;border:1px solid #e1e9ec;border-radius:18px;padding:8px 18px;margin-bottom:26px;position:relative;z-index:1}
#tt-v2 .resources-navigation .workspace-nav .button,#tt-v2 .resources-navigation .workspace-nav button{background:#e4f4ff;color:#175b79;border:1px solid #acd8ec}
#tt-v2 .resources-navigation .workspace-nav a:hover,#tt-v2 .resources-navigation .workspace-nav button:hover{background:#ccecff;filter:none;transform:translateY(-2px)}
#tt-v2 .resources-top-card .dash-number-nav a:nth-child(1){background:#e6f4d9;color:#365428;border-color:#d0e5be}
#tt-v2 .resources-top-card .dash-number-nav a:nth-child(2){background:#f0e7f8;color:#604477;border-color:#ded0eb}
#tt-v2 .resources-top-card .dash-number-nav a:nth-child(3){background:#ffecdf;color:#79533c;border-color:#f0d6c4}
#tt-v2 .resources-top-card .dash-number-nav a.selected{border-width:2px}
#tt-v2 .resources-top-card .dash-number-nav a:nth-child(1).selected{border-color:#83b761}
#tt-v2 .resources-top-card .dash-number-nav a:nth-child(2).selected{border-color:#aa89c1}
#tt-v2 .resources-top-card .dash-number-nav a:nth-child(3).selected{border-color:#d4a17d}
#tt-v2 .resources-top-card .dash-number-nav a:hover{filter:brightness(.98)}
#tt-v2 .resources-top-card .dash-number-nav a:nth-child(1):hover{background:#e6f4d9}
#tt-v2 .resources-top-card .dash-number-nav a:nth-child(2):hover{background:#f0e7f8}
#tt-v2 .resources-top-card .dash-number-nav a:nth-child(3):hover{background:#ffecdf}

#tt-v2:not(.tt-focused):not(.tt-classroom):has(.dash-v11){background:white}
#tt-v2 .resources-top-card{position:relative;isolation:isolate}
#tt-v2 .resources-top-card::before{content:'';position:absolute;z-index:-1;inset:-20px -20px auto;height:700px;pointer-events:none;background:linear-gradient(180deg,#fff0ad 0%,#fff8db 32%,#fff 67%);border-radius:24px}
#tt-v2 .resources-top-card{background:white;isolation:auto}
#tt-v2 .dash-v11{position:relative;isolation:isolate}
#tt-v2 .resources-top-card::before{z-index:-1}

#tt-v2 .resources-navigation .workspace-nav{position:relative;padding-left:48px;padding-right:48px;min-height:64px}
#tt-v2 .resources-navigation .resource-back-arrow{position:absolute;left:0;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;min-height:38px;padding:8px;background:#fafafa;color:#536e7a;border:0;border-radius:50%;box-shadow:none}
#tt-v2 .resources-navigation .resource-back-arrow svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
#tt-v2 .resources-navigation .resource-back-arrow:hover{background:#f0f5f7;transform:translateY(-50%);box-shadow:none}

#tt-v2 .resources-navigation .workspace-nav a.resource-back-arrow,#tt-v2 .resources-navigation .workspace-nav a.resource-back-arrow:hover,#tt-v2 .resources-navigation .workspace-nav a.resource-back-arrow:focus{transform:translateY(-50%);box-shadow:none;transition:background .18s,color .18s}
#tt-v2 .resources-navigation .workspace-nav a.resource-back-arrow:hover{background:#f0f5f7;color:#536e7a}

#tt-v2 .resources-navigation .workspace-nav .button[aria-current=page]{background:#c6eea8;color:#284e18;border-color:#76b84a}
#tt-v2 .resources-navigation .workspace-nav .button[aria-current=page]:hover{background:#b4e790;color:#284e18;border-color:#69a942}

#tt-v2 .resources-navigation{margin-bottom:42px}
.tt-feedback-dialog{background:#fff;color:#293d48;border:1px solid #e1e9ec;border-radius:20px;padding:28px;font-family:Inter,Arial,sans-serif;box-shadow:0 20px 70px #17354430}
.tt-feedback-dialog::backdrop{background:#233d4a55}
.tt-feedback-dialog h2{font-size:26px;font-weight:600;margin:0 0 18px;padding-bottom:16px;border-bottom:1px solid #ccd8de}
.tt-feedback-dialog p{line-height:1.5;margin:0 0 16px}
.tt-feedback-dialog label{display:block;margin-bottom:8px}
.tt-feedback-dialog textarea{box-sizing:border-box;width:100%;background:#fff;color:#293d48;border:1px solid #cbd5da;border-radius:9px;padding:12px;font:16px/1.5 Inter,Arial,sans-serif;resize:vertical;margin:0 0 20px}
.tt-feedback-dialog textarea:focus{outline:none;border-color:#72bddc;box-shadow:0 0 0 2px #dff2fc}
.tt-feedback-dialog .actions{display:flex;flex-wrap:wrap;gap:12px}
.tt-feedback-dialog button{font:600 16px/1.3 Inter,Arial,sans-serif;border:1px solid #76b84a;border-radius:9px;padding:12px 18px;background:#c6eea8;color:#284e18;cursor:pointer;transition:background .18s,transform .18s,box-shadow .18s}
.tt-feedback-dialog button.secondary{background:#e4f4ff;color:#175b79;border-color:#acd8ec}
.tt-feedback-dialog button:hover:not(:disabled){background:#b4e790;transform:translateY(-2px);box-shadow:0 4px 10px #2485ae20}
.tt-feedback-dialog button.secondary:hover{background:#ccecff;color:#175b79}
.tt-feedback-dialog button:disabled{opacity:.55;cursor:default}
.tt-feedback-dialog [role=status]:empty{display:none}
.tt-feedback-dialog [role=status]:not(:empty){margin-top:16px}

#tt-v2 .resources-top-card>.dash-content{border-top:1px solid #d8e1e5;margin-top:26px;padding-top:24px;padding-bottom:8px}

#tt-v2 .dash-filters{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start}
#tt-v2 .collection-filter-toggle{margin:25px 0 0;padding:0;border:0}
#tt-v2 .collection-filter-toggle>summary{list-style:none;background:#e4f4ff;color:#175b79;border:1px solid #acd8ec;border-radius:9px;padding:11px 18px;font-size:15px;font-weight:600;cursor:pointer;transition:background .18s,transform .18s;min-height:46px}
#tt-v2 .collection-filter-toggle>summary::-webkit-details-marker{display:none}
#tt-v2 .collection-filter-toggle>summary:hover{background:#ccecff;transform:translateY(-2px)}
#tt-v2 .collection-filter-toggle[open]{grid-column:1/-1;margin-top:0}
#tt-v2 .collection-filter-toggle[open]>summary{width:fit-content}
#tt-v2 .collection-filter-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding-top:14px}
@media(max-width:650px){#tt-v2 .collection-filter-options{grid-template-columns:1fr}}
@media(max-width:650px){#tt-v2 .resources-navigation .workspace-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-left:38px;padding-right:0}#tt-v2 .resources-navigation .workspace-nav>.button,#tt-v2 .resources-navigation .workspace-nav>button{width:100%;min-width:0;min-height:48px;padding:12px 8px}#tt-v2 .resources-navigation .resource-back-arrow{left:-10px}}

#tt-v2 .collection-pagination{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:24px}#tt-v2 .collection-pagination button{background:#e4f4ff;color:#175b79;border:1px solid #acd8ec;border-radius:9px;padding:12px 18px}#tt-v2 .collection-pagination button:disabled{opacity:.45}

#tt-v2 .dash-filters{grid-template-columns:minmax(0,2fr) minmax(0,1fr);position:relative;column-gap:14px}
#tt-v2 .collection-filter-toggle,#tt-v2 .collection-filter-toggle[open]{grid-column:2;grid-row:1;margin-top:25px;position:static}
#tt-v2 .collection-filter-toggle>summary{width:fit-content}
#tt-v2 .collection-filter-toggle[open] .collection-filter-options{position:absolute;top:76px;left:0;right:0;grid-template-columns:repeat(3,minmax(0,1fr));padding-top:14px}
#tt-v2 .dash-filters:has(.collection-filter-toggle[open]){padding-bottom:94px}
@media(max-width:650px){#tt-v2 .dash-filters{grid-template-columns:minmax(0,1fr) auto}#tt-v2 .collection-filter-toggle[open] .collection-filter-options{grid-template-columns:1fr}#tt-v2 .dash-filters:has(.collection-filter-toggle[open]){padding-bottom:270px}}
#tt-v2 .dash-filters .dash-search input,#tt-v2 .collection-filter-toggle>summary{height:46px;min-height:46px;box-sizing:border-box}
#tt-v2 .collection-filter-toggle>summary{display:flex;align-items:center;padding:0 18px}
#tt-v2 .collection-filter-toggle,#tt-v2 .collection-filter-toggle[open]{margin-top:28px}
#tt-v2 .dash-v11 .collection-pagination button.secondary{background:#e4f4ff;color:#175b79;border:1px solid #acd8ec;border-radius:9px;min-height:46px;padding:12px 18px;transition:background .18s,transform .18s,box-shadow .18s}
#tt-v2 .dash-v11 .collection-pagination button.secondary:hover:not(:disabled){background:#ccecff;color:#175b79;transform:translateY(-2px);box-shadow:0 4px 10px #2485ae20;filter:none}
#tt-v2 .dash-v11 .collection-pagination button.secondary:disabled{background:#e4f4ff;color:#175b79;opacity:.45;cursor:default;transform:none;box-shadow:none}

/* Shared workspace framing for Game Maker and slide tools. */
#tt-v2:has(.studio-workspace){font-family:Inter,Arial,sans-serif}
#tt-v2:not(.tt-focused):not(.tt-classroom):has(.studio-workspace){background:#fff}
#tt-v2 .studio-workspace{position:relative;isolation:isolate}
#tt-v2 .studio-workspace .studio-message:empty{display:none}

#tt-v2 .studio-workspace .source-choices{margin-top:10px}
#tt-v2 .studio-workspace .source-choices button,#tt-v2 .studio-workspace .source-choices button:not(.secondary){background:#e4f4ff;color:#175b79;border:1px solid #acd8ec;transition:background .18s,transform .18s,box-shadow .18s}
#tt-v2 .studio-workspace .source-choices button:hover,#tt-v2 .studio-workspace .source-choices button:not(.secondary):hover{background:#ccecff;color:#175b79;transform:translateY(-2px);filter:none;box-shadow:0 5px 12px #175b7918}

#tt-v2 .studio-workspace .editor-guidance{margin-top:8px}

#tt-v2 .studio-board .play-card:disabled{opacity:1;background:color-mix(in srgb,var(--card,#e3f2ff) 45%,white)!important;box-shadow:none}
#tt-v2 .studio-board .play-card[data-result="correct"]{color:#27843c!important}
#tt-v2 .studio-board .play-card[data-result="incorrect"]{color:#b76524!important}
#tt-v2 .game-feedback:not(.incorrect),#tt-v2 .answer-result.correct{color:#27843c}
#tt-v2 .game-feedback.incorrect{color:#b76524}
#tt-v2 .game-engine button[data-game="correct"]{background:#b4e790!important;color:#284e18;border-color:#76b84a}
#tt-v2 .game-engine button[data-game="correct"]:hover{background:#a4dd7c!important;color:#284e18}

#tt-v2 .game-engine .studio-scores>div.active{background:#e4f4ff;color:#175b79;border-color:#72bddc;box-shadow:0 3px 10px #175b7910;outline:none}
#tt-v2 .team-turn-label{display:block;min-height:20px;font-size:14px;line-height:20px;font-weight:600;color:#175b79}

#tt-v2 .game-engine[data-format="team"] .game-feedback{display:none}
#tt-v2 .team-result-correct{color:#27843c}
#tt-v2 .team-result-incorrect{color:#b76524}

#tt-v2 .game-engine .studio-scores>div.winner{background:#e8f5d9;border-color:#87bc5b;box-shadow:0 0 0 3px #c6eea833}
#tt-v2 .game-end{position:relative;isolation:isolate;padding-top:24px}
#tt-v2 .win-confetti{position:absolute;inset:-30px 0 0;overflow:hidden;pointer-events:none;z-index:-1}
#tt-v2 .win-confetti i{position:absolute;left:var(--x);top:0;width:9px;height:15px;background:var(--piece);border-radius:2px;opacity:0;animation:team-celebration 1.7s var(--delay) ease-out both}
@keyframes team-celebration{0%{opacity:0;transform:translateY(-20px) rotate(0)}10%{opacity:1}75%{opacity:1}100%{opacity:0;transform:translateY(240px) rotate(var(--spin))}}
@media(prefers-reduced-motion:reduce){#tt-v2 .win-confetti{display:none}}

#tt-v2 .restart-confirm-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin-top:16px}

#tt-v2 .game-engine[data-format='team'] .game-instruction{position:relative;top:-8px}

/* Reserve two description lines so game-card icons and titles align. */
#tt-v2 .game-chooser .game-format>span:last-child{min-height:3em;width:100%;line-height:1.5}
#tt-v2 .game-chooser .game-format .format-symbol{flex-shrink:0}

#tt-v2 .game-engine[data-format="team"] .question-panel .revealed-answer{margin-top:10px}

#tt-v2 .game-engine[data-format="matching"] .game-feedback{display:none}
#tt-v2 .game-engine[data-format="matching"] .game-instruction{position:relative;top:-8px}

/* Compact matching cards without reducing classroom text size. */
#tt-v2 .game-engine[data-format="matching"] .match-columns .play-card{min-height:66px;padding:10px 12px}
#tt-v2 .game-engine[data-format="matching"] .match-columns>div{gap:8px}

#tt-v2 .game-engine[data-format="matching"] .match-columns .play-card{font-size:clamp(18px,1.6vw,24px)}
#tt-v2 .game-engine[data-format="matching"] .game-secondary{display:flex;justify-content:center;gap:10px;margin-top:22px}
#tt-v2 .game-engine[data-format="matching"] .game-secondary:empty{display:none}
#tt-v2 .game-engine[data-format="matching"] .game-secondary button{width:auto;min-height:36px;padding:7px 14px;font-size:14px}

/* Completed pairs stay in place but recede from the remaining choices. */
#tt-v2 .game-engine[data-format="matching"] .match-columns .play-card:disabled{opacity:.16;box-shadow:none;animation:none;outline:none;filter:grayscale(1)}

#tt-v2 dialog.restart-confirm{position:fixed;inset:0;margin:auto;width:min(440px,calc(100vw - 40px));max-height:calc(100dvh - 40px);box-sizing:border-box;overflow:auto;background:#fff;color:#293f4b;border:1px solid #d8e1e5;border-radius:18px;padding:26px;text-align:center;box-shadow:0 18px 60px #17354435}
#tt-v2 dialog.restart-confirm::backdrop{background:#233d4a66}
#tt-v2 dialog.restart-confirm h2{font-size:24px;margin:0 0 14px}
#tt-v2 dialog.restart-confirm p{font-size:17px;line-height:1.5;margin:0 0 20px}

#tt-v2 .game-engine[data-format="memory"] .game-feedback{display:none}
#tt-v2 .game-engine[data-format="memory"] .game-instruction{position:relative;top:-8px}
#tt-v2 .game-engine[data-format="memory"] .game-secondary{display:flex;justify-content:center;gap:10px;margin-top:22px}
#tt-v2 .game-engine[data-format="memory"] .game-secondary:empty{display:none}
#tt-v2 .game-engine[data-format="memory"] .game-secondary button{width:auto;min-height:36px;padding:7px 14px;font-size:14px}
#tt-v2 .game-engine .memory-card.matched{opacity:.16;filter:grayscale(1)}

/* Approved shared game presentation across all formats. */
#tt-v2 .game-engine .game-feedback{display:none}
#tt-v2 .game-engine .game-instruction{position:relative;top:-8px}
#tt-v2 .game-engine .game-secondary{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:22px}
#tt-v2 .game-engine .game-secondary:empty{display:none}
#tt-v2 .game-engine .game-secondary button{width:auto;min-height:36px;padding:7px 14px;font-size:14px}
#tt-v2 .game-engine .play-card[aria-pressed=true]{outline:2px solid #72bddc;outline-offset:1px;box-shadow:0 0 0 3px #dff2fc}
#tt-v2 .game-engine .game-progress{font-size:16px;margin:10px 0}

#tt-v2 .game-engine[data-format="team"] .studio-board .play-card{min-height:124px}
#tt-v2 .game-engine[data-format="team"] .game-secondary{margin-top:30px}

#tt-v2 .game-engine[data-format="memory"] .memory-card.face-up:not(.matched){opacity:1;filter:none}
#tt-v2 .game-engine[data-format="memory"] .memory-card .card-front{color:#000;-webkit-text-fill-color:#000;font-family:Inter,Arial,sans-serif;font-weight:600}

/* Keep the wheel centred and stable when its prompt is revealed. */
#tt-v2 .wheel-wrap,#tt-v2 .wheel-wrap.is-resolved{width:300px;height:320px;margin:20px auto 18px;flex:none;align-self:center}
#tt-v2 .wheel-wrap .spin-wheel{left:0;scale:1;transform-origin:50% 50%}
#tt-v2 .wheel-wrap .wheel-pointer{left:50%;top:0;transform:translateX(-50%);line-height:1}

/* Desktop wheel and prompt share a row to keep scoring visible. */
#tt-v2 .spin-layout{display:grid;grid-template-columns:320px minmax(0,1fr);align-items:center;gap:28px;margin:18px 0 0}
#tt-v2 .spin-layout .wheel-wrap{margin:0 auto}
#tt-v2 .spin-prompt{min-width:0;text-align:center}
#tt-v2 .spin-prompt .question-panel{margin:0;padding:24px}
#tt-v2 .spin-prompt .question-panel h2{font-size:clamp(24px,2.5vw,36px);margin:0 0 16px}
@media(max-width:760px){#tt-v2 .spin-layout{grid-template-columns:minmax(0,1fr);gap:16px}#tt-v2 .spin-prompt .question-panel{padding:20px}}

#tt-v2 .spin-wheel-column{text-align:center;min-width:0}
#tt-v2 .spin-trigger{min-height:50px;margin-top:24px;display:flex;justify-content:center;align-items:flex-start}
#tt-v2 .spin-prompt .question-panel{min-height:240px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center}
#tt-v2 .spin-prompt .spin-ready{background:#e4f4ff}

#tt-v2 .game-view:has(.game-engine[data-format='spin'])>h1{position:relative;top:-8px}

#tt-v2 .spin-picture{display:block;max-width:100%;width:auto;max-height:220px;object-fit:contain;margin:0 auto 12px;border-radius:10px}

/* Neutral, compact sorting choices with balanced desktop rows. */
#tt-v2 .sorting-words{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
#tt-v2 .sorting-words .play-card{box-sizing:border-box;flex:0 0 calc((100% - 60px)/6);background:#fff!important;color:#293f4b!important;min-width:0;min-height:58px;padding:12px;font-size:clamp(17px,1.4vw,21px);border:1px solid #ccd8de}
@media(max-width:760px){#tt-v2 .sorting-words .play-card{flex-basis:calc((100% - 24px)/3)}}
@media(max-width:420px){#tt-v2 .sorting-words .play-card{flex-basis:calc((100% - 12px)/2)}}

/* Compact sorting categories and keep headings visually flat on hover. */
#tt-v2 .sorting-groups section{padding:14px}
#tt-v2 .sorting-groups .category-heading{padding:12px 5px;font-size:21px}
#tt-v2 .sorting-groups .category-heading:hover:not(:disabled){background:transparent!important;box-shadow:none;filter:none;transform:none}
#tt-v2 .sorting-groups .sorted-stack{gap:10px;padding:14px 0}
#tt-v2 .sorting-groups .sorted-card{padding:11px 18px;font-size:20px}


/* Slightly smaller classroom titles, lighter chooser labels. */
#tt-v2 .game-view>h1{font-size:clamp(27px,2.8vw,39px)}

#tt-v2 .game-engine[data-format='ordering']>[data-game='check-order'],#tt-v2 .game-engine[data-format='ordering']>[data-game='next']{margin-top:12px}

#tt-v2 .game-engine[data-format='ordering']>.game-secondary{margin-top:28px}

#tt-v2 .game-end>h2{margin-bottom:32px}

#tt-v2 .guidance-picture{display:block;width:130px;max-width:100%;height:130px;object-fit:contain;margin:8px 0}

/* Compact Picture Quiz choices, centred in one row when space allows. */
#tt-v2 .quiz-options{display:flex;flex-wrap:wrap;justify-content:center;max-width:900px;gap:12px;margin:18px auto}
#tt-v2 .quiz-options .play-card{box-sizing:border-box;flex:0 1 200px;min-width:0;min-height:58px;padding:12px 16px;font-size:clamp(18px,1.5vw,23px)}
@media(max-width:600px){#tt-v2 .quiz-options .play-card{flex-basis:calc(50% - 6px)}}

#tt-v2 .quiz-question-heading{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px 18px;margin:20px 0 14px}
#tt-v2 .quiz-question-heading h2{margin:0}
#tt-v2 .quiz-progress{font-size:16px;font-weight:400;color:#526b76;white-space:nowrap}

#tt-v2 .game-engine[data-format='picture']>[data-game='next']{margin-top:10px}
#tt-v2 .game-engine[data-format='picture']>.game-secondary{padding-bottom:18px}

/* Keep shared game scores readable while reducing their vertical footprint. */
#tt-v2 .game-engine .studio-scores>div{padding:8px 16px;gap:2px}
#tt-v2 .game-engine .studio-scores>div>span{line-height:1.2}
#tt-v2 .game-engine .studio-scores strong{margin:0}

/* Use the width of classroom score panels. */
@media(min-width:701px){
#tt-v2 .game-engine .studio-scores>div{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:16px;padding:18px 22px;align-items:center;min-height:78px;box-sizing:border-box}
#tt-v2 .game-engine .studio-scores>div>span{text-align:left;justify-self:start}
#tt-v2 .game-engine .studio-scores strong{text-align:center;justify-self:center}
#tt-v2 .game-engine .studio-scores .team-turn-label{text-align:right;justify-self:end;min-height:20px;max-width:100%;overflow-wrap:break-word}
}

#tt-v2 .game-engine[data-format='picture']>.revealed-answer{margin:12px 0 4px}
#tt-v2 .game-engine[data-format='picture']>.revealed-answer+[data-game='next']{margin-top:6px}

#tt-v2 .question-gap{position:relative;top:1pt}

#tt-v2 .game-engine .studio-scores{margin-top:16px}
#tt-v2 .game-engine>.game-instruction{margin-bottom:18px}

#tt-v2 .inline-revealed-answer{color:#27843c;text-decoration:underline;text-underline-offset:5px}

#tt-v2 .noughts-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,420px);gap:28px;align-items:center;margin:22px 0}
#tt-v2 .noughts-layout .question-panel{margin:0}
#tt-v2 .noughts-layout .noughts-board{width:100%;margin:0;grid-column:2;grid-row:1 / span 3}
#tt-v2 .noughts-layout>[data-game='next-round']{justify-self:center}
@media(max-width:760px){#tt-v2 .noughts-layout{display:flex;flex-direction:column}#tt-v2 .noughts-layout .question-panel{width:100%;box-sizing:border-box}}

/* Restore the stacked board and emphasise team status messages. */
#tt-v2 .noughts-layout{display:flex;flex-direction:column;gap:20px}
#tt-v2 .noughts-layout .question-panel{width:100%;box-sizing:border-box}
#tt-v2 .noughts-layout .noughts-board{max-width:470px}
#tt-v2 .game-engine .team-turn-label{font-size:17px;line-height:1.3;font-weight:700}
#tt-v2 .game-engine .team-turn-label:not(:empty){padding:5px 8px;border-radius:8px;background:#ffffff70;animation:team-status-appear .45s ease-out both}
@keyframes team-status-appear{from{opacity:.35;transform:scale(.9)}60%{opacity:1;transform:scale(1.06)}to{opacity:1;transform:scale(1)}}
@media(prefers-reduced-motion:reduce){#tt-v2 .game-engine .team-turn-label:not(:empty){animation:none}}

#tt-v2 .noughts-layout .question-panel{padding:24px 24px 20px}
#tt-v2 .noughts-layout .question-panel h2{margin:0 0 16px}
#tt-v2 .noughts-layout .question-panel .actions{margin:12px 0 0}

#tt-v2 .noughts-board button[data-claimed]{opacity:1!important;filter:none!important;color:#293f4b!important;font-size:0;position:relative}
#tt-v2 .noughts-board button[data-claimed="0"]::after{content:"";display:block;width:46px;height:46px;box-sizing:border-box;border:6px solid #175b79;border-radius:50%;margin:auto}
#tt-v2 .noughts-board button[data-claimed="1"]::before,#tt-v2 .noughts-board button[data-claimed="1"]::after{content:"";position:absolute;left:50%;top:50%;width:54px;height:6px;border-radius:3px;background:#175b79;transform:translate(-50%,-50%) rotate(45deg)}
#tt-v2 .noughts-board button[data-claimed="1"]::after{transform:translate(-50%,-50%) rotate(-45deg)}

#tt-v2 .noughts-layout .noughts-answer{font-size:26px;font-weight:600;line-height:1.3;margin:8px 0 12px;color:#293f4b}

#tt-v2 .noughts-layout .question-panel h2:has(+.noughts-answer){margin-bottom:6px}
#tt-v2 .noughts-layout .noughts-answer{margin-top:4px}
#tt-v2 .noughts-layout .noughts-board button{min-height:96px}

#tt-v2 .round-celebration{position:relative;isolation:isolate;width:100%;text-align:center}
#tt-v2 .round-celebration h2{margin:0 0 18px}
#tt-v2 .noughts-layout:has(.round-celebration){gap:18px}

#tt-v2 .noughts-layout .question-panel h2{font-size:clamp(24px,2.4vw,32px)}

#tt-v2 .game-engine .question-panel h2,#tt-v2 .game-engine .spin-prompt h2,#tt-v2 .game-engine .quiz-question-heading h2{font-size:clamp(24px,2.4vw,32px)}
/* Last Man Standing: compact shared-screen word guessing. */
.hangman-layout{display:flex;align-items:center;justify-content:center;gap:32px;max-width:1100px;margin:18px auto 0}
.hangman-drawing{width:210px;flex:0 0 210px;color:#24586b}
.hangman-frame{stroke:#a8bfca}
.hangman-play{flex:1;min-width:0}
.hangman-play h2{font-size:clamp(24px,2.4vw,32px);margin:10px 0 18px}
.hangman-play .game-progress{margin:0;font-size:16px}
.hangman-word{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin:22px 0 26px}
.hangman-word span{border-bottom:3px solid #557784;min-width:25px;font-size:clamp(22px,2.5vw,34px);font-weight:600;line-height:1.35}
.hangman-alphabet{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:700px;margin:auto}
.hangman-alphabet button{width:44px;min-height:44px;padding:6px;font-size:20px}
.hangman-alphabet .letter-used{opacity:.32}
.hangman-rules{font-size:15px;margin:16px 0 20px;color:#536e7a}
[data-hangman-form]{max-width:380px;margin:18px auto 0}
[data-hangman-form] label{display:block;font-size:18px}
[data-hangman-form] input{width:100%;box-sizing:border-box;text-align:center;margin-top:8px;font-size:23px}
.game-engine[data-format="hangman"] .game-secondary{margin-top:28px;padding-bottom:20px}
.game-engine[data-format="hangman"] .game-feedback{font-size:18px;min-height:26px}
@media(max-width:650px){.hangman-layout{flex-direction:column;gap:10px}.hangman-drawing{width:125px;flex-basis:auto;height:130px}.hangman-alphabet{gap:6px}.hangman-alphabet button{width:38px;min-height:42px}.hangman-word{gap:4px}.hangman-word span{min-width:20px}}

#tt-v2 .game-engine[data-format="hangman"] .game-feedback:not(:empty){display:block;font-size:18px;color:#294451;margin:8px 0;min-height:0}

#tt-v2 .hangman-setup{padding:30px 16px;text-align:center}
#tt-v2 .hangman-setup h2{font-size:30px;margin:0 0 24px}
#tt-v2 .hangman-setup .actions{justify-content:center;margin:20px 0}
#tt-v2 .hangman-setup [aria-pressed="true"]{outline:3px solid #68bbda;background:#dff3ff}
#tt-v2 .game-engine[data-format="hangman"] .studio-scores[data-teams="3"],#tt-v2 .game-engine[data-format="hangman"] .studio-scores[data-teams="4"]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}

/* Team selection uses the shared pastel panel and a matching line illustration. */
#tt-v2 .hangman-setup{padding:16px 0 28px;max-width:1040px;margin:0 auto}
#tt-v2 .hangman-setup-panel{display:flex;align-items:center;justify-content:center;gap:48px;background:#e2f2ff;border-radius:22px;padding:36px 42px}
#tt-v2 .hangman-setup-art{width:170px;flex:0 0 170px;color:#205f79}
#tt-v2 .hangman-setup-choices{min-width:0}
#tt-v2 .hangman-setup h2{font-size:clamp(24px,2.4vw,32px);line-height:1.25;margin:0 0 28px}
#tt-v2 .hangman-setup .actions{gap:20px;margin:0 0 24px;flex-wrap:wrap}
#tt-v2 .hangman-setup .actions button{min-width:110px;min-height:54px;background:#fff}
#tt-v2 .hangman-setup .actions [aria-pressed="true"]{outline:3px solid #68bbda;outline-offset:3px;background:#d2edfc}
#tt-v2 .hangman-setup-choices p{margin:0;font-size:18px}
#tt-v2 .hangman-setup-start{margin-top:28px}
@media(max-width:700px){#tt-v2 .hangman-setup-panel{flex-direction:column;gap:22px;padding:24px 18px}#tt-v2 .hangman-setup-art{width:110px;height:115px;flex-basis:auto}#tt-v2 .hangman-setup .actions{gap:14px}#tt-v2 .hangman-setup .actions button{min-width:90px;padding:10px 12px}}
/* Keep multi-team scores in one desktop row, with compact stacked content. */
@media(min-width:901px){
#tt-v2 .game-engine[data-format="hangman"] .studio-scores[data-teams="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}
#tt-v2 .game-engine[data-format="hangman"] .studio-scores[data-teams="4"]{grid-template-columns:repeat(4,minmax(0,1fr))}
#tt-v2 .game-engine[data-format="hangman"] .studio-scores[data-teams="3"]>div,#tt-v2 .game-engine[data-format="hangman"] .studio-scores[data-teams="4"]>div{grid-template-columns:1fr auto;gap:6px 12px;padding:12px 18px}
#tt-v2 .game-engine[data-format="hangman"] .studio-scores[data-teams="3"] .team-turn-label,#tt-v2 .game-engine[data-format="hangman"] .studio-scores[data-teams="4"] .team-turn-label{grid-column:1/-1;justify-self:center;text-align:center;min-height:26px;box-sizing:border-box}
}
/* Keep the drawing area visible before the first hangman stroke. */
#tt-v2 .hangman-drawing{box-sizing:border-box;background:#fff;border:1px solid #cbdde5;border-radius:18px;padding:14px}
/* Use one colour for the complete illustration on team selection. */
#tt-v2 .hangman-setup-art .hangman-frame{stroke:currentColor}

/* Align the clue and controls across the complete drawing-and-letters board. */
#tt-v2 .hangman-board{max-width:1100px;margin:22px auto 0}
#tt-v2 .hangman-clue{font-size:clamp(24px,2.4vw,32px);line-height:1.3;text-align:center;margin:0 0 24px}
#tt-v2 .hangman-layout{margin:0;gap:32px;align-items:center}
#tt-v2 .hangman-drawing{width:250px;flex:0 0 250px;padding:18px}
#tt-v2 .hangman-word{margin:0 0 26px}
#tt-v2 .hangman-rules{margin:22px 0 0;line-height:1.5}
#tt-v2 .hangman-primary{text-align:center;margin-top:24px}
#tt-v2 .game-engine[data-format="hangman"] .game-secondary{margin-top:20px}
@media(max-width:700px){#tt-v2 .hangman-layout{flex-direction:column;gap:22px}#tt-v2 .hangman-drawing{width:160px;height:168px;flex-basis:auto;padding:12px}#tt-v2 .hangman-play{width:100%}}

/* Alphabet leads the board, directly below the scores. */
#tt-v2 .hangman-board>.hangman-alphabet{display:grid;grid-template-columns:repeat(26,minmax(0,1fr));max-width:none;gap:5px;margin:0 0 26px;width:100%}
#tt-v2 .hangman-board>.hangman-alphabet button{width:100%;min-width:0;padding:8px 0;font-size:18px;min-height:42px}
@media(max-width:900px){#tt-v2 .hangman-board>.hangman-alphabet{grid-template-columns:repeat(13,minmax(0,1fr));gap:6px}}
@media(max-width:480px){#tt-v2 .hangman-board>.hangman-alphabet{grid-template-columns:repeat(7,minmax(0,1fr))}}
/* Two balanced alphabet rows with more room between letters. */
#tt-v2 .hangman-board>.hangman-alphabet{grid-template-columns:repeat(13,minmax(0,1fr));max-width:900px;gap:10px;margin:0 auto 26px}
#tt-v2 .hangman-board>.hangman-alphabet button{min-height:48px;font-size:20px;padding:8px 0}
@media(max-width:700px){#tt-v2 .hangman-board>.hangman-alphabet{gap:6px}#tt-v2 .hangman-board>.hangman-alphabet button{min-height:42px;font-size:18px}}
@media(max-width:480px){#tt-v2 .hangman-board>.hangman-alphabet{grid-template-columns:repeat(7,minmax(0,1fr))}}

#tt-v2 .hangman-board>.hangman-alphabet{margin-bottom:16px}
#tt-v2 .hangman-board>.hangman-rules{text-align:center;margin:0 auto 24px;max-width:900px;font-size:16px;line-height:1.5}

/* One wide panel connects the drawing, clue and hidden word. */
#tt-v2 .hangman-board .hangman-layout{box-sizing:border-box;width:100%;max-width:1000px;margin:0 auto;padding:22px 26px;gap:32px;background:#e2f2ff;border:1px solid #d1e5ef;border-radius:22px;align-items:center}
#tt-v2 .hangman-board .hangman-drawing{width:190px;height:190px;flex:0 0 190px;padding:12px;border-radius:16px}
#tt-v2 .hangman-play .hangman-clue{margin:0 0 26px;font-size:clamp(24px,2.4vw,32px);line-height:1.3}
#tt-v2 .hangman-play .hangman-word{margin:0;gap:7px}
@media(max-width:700px){#tt-v2 .hangman-board .hangman-layout{padding:20px 16px;gap:20px}#tt-v2 .hangman-board .hangman-drawing{width:140px;height:140px;flex-basis:auto}}

#tt-v2 .hangman-play .hangman-word{column-gap:22px;row-gap:16px}
#tt-v2 .hangman-word .hangman-word-group{display:inline-flex;flex-wrap:wrap;justify-content:center;gap:7px;border:0;min-width:0;max-width:100%}
#tt-v2 .hangman-word .hangman-punctuation{border:0;min-width:10px}
/* Slightly more breathing room above the scoring explanation. */
#tt-v2 .hangman-board>.hangman-alphabet{margin-bottom:24px}

/* Shared team colours connect the current turn with the main answer panel. */
#tt-v2 .game-engine{--team-blue:#e2f2ff;--team-green:#eef5df;--team-lavender:#f0e7fb;--team-peach:#ffe9df;--turn-panel:var(--team-blue)}
#tt-v2 .game-engine[data-turn="1"]{--turn-panel:var(--team-green)}
#tt-v2 .game-engine[data-turn="2"]{--turn-panel:var(--team-lavender)}
#tt-v2 .game-engine[data-turn="3"]{--turn-panel:var(--team-peach)}
#tt-v2 .game-engine .studio-scores>div:nth-child(1){background:var(--team-blue)}
#tt-v2 .game-engine .studio-scores>div:nth-child(2){background:var(--team-green)}
#tt-v2 .game-engine .studio-scores>div:nth-child(3){background:var(--team-lavender)}
#tt-v2 .game-engine .studio-scores>div:nth-child(4){background:var(--team-peach)}
#tt-v2 .game-engine .question-panel,#tt-v2 .game-engine .sentence-build,#tt-v2 .game-engine .hangman-board .hangman-layout{background:var(--turn-panel)}
#tt-v2 .hangman-drawing,#tt-v2 .hangman-setup-art{color:#111}
#tt-v2 .hangman-drawing .hangman-frame,#tt-v2 .hangman-setup-art .hangman-frame{stroke:currentColor}
#tt-v2 .game-engine[data-format="hangman"]>.game-instruction{font-size:16px;line-height:1.5}
#tt-v2 .game-engine[data-format="hangman"]>.game-feedback{display:none}
#tt-v2 .game-engine[data-format="hangman"] .team-turn-label{min-height:32px;box-sizing:border-box;align-content:center}

/* Keep the solve label beside its input and leave room above the actions. */
#tt-v2 .hangman-primary [data-hangman-form]{display:grid;grid-template-columns:minmax(0,380px) auto;align-items:center;justify-content:center;gap:18px 16px;max-width:620px;margin:0 auto}
#tt-v2 .hangman-primary [data-hangman-form] label{grid-column:2;grid-row:1;margin:0;font-size:18px;text-align:left}
#tt-v2 .hangman-primary [data-hangman-form] input{grid-column:1;grid-row:1;margin:0;min-width:0}
#tt-v2 .hangman-primary [data-hangman-form] .actions{grid-column:1/-1;margin:0;justify-content:center}
@media(max-width:600px){#tt-v2 .hangman-primary [data-hangman-form]{grid-template-columns:minmax(0,1fr) auto;gap:16px 10px}#tt-v2 .hangman-primary [data-hangman-form] label{font-size:15px;max-width:100px}}

#tt-v2 .hangman-primary [data-hangman-form]{row-gap:24px}

#tt-v2 .hangman-primary [data-hangman-form] input{height:42px;min-height:42px;padding:6px 12px;line-height:1.2}

#tt-v2 .studio-workspace .editor-guidance[data-format="hangman"]{margin-top:0}

#tt-v2 .studio-workspace .studio-name-field{display:block;margin:14px 0 0}
#tt-v2 .studio-workspace .studio-name-field input{display:block;width:100%;box-sizing:border-box;margin-top:16px}
#tt-v2 .studio-workspace #game-name-help{margin:8px 0 20px}

#tt-v2 .studio-workspace input:focus::placeholder,#tt-v2 .studio-workspace textarea:focus::placeholder{color:transparent;opacity:0}

/* Match editor field focus to the shared light-blue input treatment. */
#tt-v2 .studio-workspace input:focus,#tt-v2 .studio-workspace textarea:focus,#tt-v2 .studio-workspace select:focus{border-color:#72bddc;outline:1px solid #72bddc;outline-offset:0;box-shadow:0 0 0 2px #72bddc20}

#tt-v2 .studio-editor .studio-nav{margin:0 0 8px;align-items:center}
#tt-v2 .studio-editor .studio-nav .studio-item-label{margin:0;font-size:16px;font-weight:700}
#tt-v2 .studio-editor .studio-nav+input{margin-top:0}

/* Consistent labels, compact item actions and equally sized game fields. */
#tt-v2 .studio-workspace #game-name-help{margin-bottom:12px}
#tt-v2 .studio-editor[data-kind="game"]{padding:16px 0 20px}
#tt-v2 .studio-editor[data-kind="game"] .studio-nav{margin:0 0 10px;align-items:center;min-height:32px}
#tt-v2 .studio-editor[data-kind="game"] .studio-nav .actions{margin:0;gap:8px}
#tt-v2 .studio-editor[data-kind="game"] .studio-nav button{padding:5px 12px;min-height:32px;font-size:15px;line-height:1.4}
#tt-v2 .studio-editor[data-kind="game"] label{margin:18px 0 0;font-size:16px;line-height:1.4}
#tt-v2 .studio-editor[data-kind="game"] .studio-item-label{margin:0}
#tt-v2 .studio-editor[data-kind="game"] input[data-studio-field="q"],#tt-v2 .studio-editor[data-kind="game"]:not([data-format="outburst"]) textarea[data-studio-field="a"]{box-sizing:border-box;height:48px;min-height:48px;padding:12px;font-size:16px;font-weight:400;line-height:22px}
#tt-v2 .studio-editor[data-kind="game"] label textarea{margin-top:10px}
#tt-v2 .studio-workspace input::placeholder,#tt-v2 .studio-workspace textarea::placeholder{font-weight:400}

#tt-v2 .studio-editor[data-kind="game"]>input[data-studio-field="q"]+label{margin-top:12px}

#tt-v2 .studio-workspace .resources-top-card>.studio-editor+.actions{margin-top:22px;padding-top:0}

#tt-v2 .studio-workspace .editor-field-error,#tt-v2 .studio-workspace .editor-action-message.is-error{color:#b42318;font-size:15px;font-weight:600;line-height:1.4;margin:6px 0 10px}
#tt-v2 .studio-workspace [aria-invalid="true"]{border:2px solid #b42318}

/* Keep validation clear without overwhelming the editor. */
#tt-v2 .studio-workspace .editor-field-error,#tt-v2 .studio-workspace .editor-action-message.is-error{font-size:14px;font-weight:400}
#tt-v2 .studio-workspace [aria-invalid="true"]{border-width:1px}
#tt-v2 .studio-editor[data-kind="game"]:not([data-format="outburst"]) textarea[data-studio-field="a"]{padding:10px 12px;line-height:22px;overflow-y:auto}

#tt-v2 .studio-workspace .studio-name-field input{font-family:inherit;font-size:16px;font-weight:400;line-height:22px}

#tt-v2 .game-engine[data-format="team"] .studio-board{display:flex;flex-wrap:wrap;justify-content:center;gap:14px}
#tt-v2 .game-engine[data-format="team"] .studio-board .play-card{flex:0 0 calc((100% - 42px)/4);box-sizing:border-box;min-width:0}
@media(max-width:700px){#tt-v2 .game-engine[data-format="team"] .studio-board .play-card{flex-basis:calc((100% - 28px)/3)}}
@media(max-width:500px){#tt-v2 .game-engine[data-format="team"] .studio-board .play-card{flex-basis:calc((100% - 14px)/2)}}

#tt-v2 [data-saved-resources][hidden]{display:none}

#tt-v2 .saved-games-view .saved-game-art{display:flex;align-items:center;justify-content:center;height:170px}
#tt-v2 .saved-games-view .saved-game-icon{position:static;background:none;padding:0;color:#24586b}
#tt-v2 .saved-game-icon svg{display:block;width:76px;height:76px}
#tt-v2 .saved-games-view .tile-body .actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:0}
#tt-v2 .saved-games-view .tile-body .actions button{font-size:15px;padding:9px 14px}

#tt-v2 .saved-games-view .dash-search{display:block;margin:0;line-height:20px}
#tt-v2 .saved-games-view .dash-search input{display:block;margin-top:10px}
#tt-v2 .saved-games-view .collection-filter-toggle,#tt-v2 .saved-games-view .collection-filter-toggle[open]{margin-top:30px}
#tt-v2 .saved-games-view .collection-filter-toggle[open] .collection-filter-options{top:76px}
#tt-v2 .saved-games-view .saved-game-icon{display:flex;align-items:center;justify-content:center;width:66px;height:66px;border-radius:50%;background:var(--accent);color:#fff}
#tt-v2 .saved-games-view .saved-game-icon svg{width:34px;height:34px}

#tt-v2 .saved-games-view .saved-game-art{flex-direction:column;gap:16px;height:210px;padding:24px 16px;box-sizing:border-box}
#tt-v2 .saved-games-view .saved-game-type{font-size:23px;font-weight:600;line-height:1.3;text-align:center;color:#294451}

/* Stretch the controls across the card, including its flex-start body. */
#tt-v2 .saved-games-view .tile-body h3{margin-bottom:9px}
#tt-v2 .saved-games-view .tile-body .actions{display:grid;width:100%;align-self:stretch;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.3fr) minmax(0,1fr);gap:6px;margin-top:9px;margin-bottom:0}
#tt-v2 .saved-games-view .tile-body .actions button{width:100%;min-width:0;padding:8px 6px;font-size:13px;white-space:nowrap;box-sizing:border-box}

#tt-v2 .studio-editor .studio-nav .actions .editor-icon-action{width:34px;height:34px;min-height:34px;padding:6px;display:inline-flex;align-items:center;justify-content:center}
#tt-v2 .editor-icon-action svg{display:block;flex-shrink:0}

#tt-v2 dialog.restart-confirm .actions{display:flex;justify-content:center;gap:12px;width:100%;margin:0}

/* Match saved-game controls to the shared blue navigation hover. */
#tt-v2 .saved-games-view .tile-body .actions button{transition:background .18s,border-color .18s,box-shadow .18s,transform .18s}
#tt-v2 .saved-games-view .tile-body .actions button.secondary:hover:not(:disabled){background:#ccecff;color:#175b79;border-color:#72bddc;filter:none;transform:translateY(-2px);box-shadow:0 4px 10px #2485ae20}

/* Shared hover feedback for standard action buttons across the platform. */
#tt-v2 button,#tt-v2 .button{transition:background .18s,border-color .18s,box-shadow .18s,transform .18s}
#tt-v2 button.secondary:hover:not(:disabled):not([aria-disabled="true"]),
#tt-v2 .button.secondary:hover:not([aria-disabled="true"]){background:#ccecff;color:#175b79;border-color:#72bddc;filter:none;transform:translateY(-2px);box-shadow:0 4px 10px #2485ae20}
#tt-v2 .studio-workspace button.secondary:hover:not(:disabled),
#tt-v2 .studio-workspace .button.secondary:hover,
#tt-v2 dialog .actions button.secondary:hover:not(:disabled){background:#ccecff;color:#175b79;border-color:#72bddc;filter:none;transform:translateY(-2px);box-shadow:0 4px 10px #2485ae20}
#tt-v2 .actions button:not(.secondary):hover:not(:disabled),
#tt-v2 .actions .button:not(.secondary):hover{background:#b4e790;color:#284e18;border-color:#69a942;filter:none;transform:translateY(-2px);box-shadow:0 4px 10px #2485ae20}

#tt-v2 .studio-workspace .studio-instruction-field input{display:block;margin-top:16px}

#tt-v2 .studio-editor .pair-item-label{margin:12px 0 10px}

#tt-v2 .game-engine[data-format="matching"] .match-columns>div{display:flex;flex-wrap:wrap;justify-content:center;align-content:start;align-items:stretch;gap:8px}
#tt-v2 .game-engine[data-format="matching"] .match-columns .play-card{flex:0 0 calc((100% - 8px)/2);min-width:0;box-sizing:border-box;line-height:1.3}
#tt-v2 .matching-card-text{display:block;width:100%;line-height:inherit;overflow-wrap:anywhere}
#tt-v2 .game-engine[data-format="matching"] .match-columns.long-content .play-card{flex-basis:100%}
@media(max-width:700px){#tt-v2 .game-engine[data-format="matching"] .match-columns .play-card{flex-basis:100%}}

#tt-v2 .matching-appearance{display:flex;flex-wrap:wrap;gap:18px;border:1px solid #d8e1e5;border-radius:12px;padding:16px;margin:20px 0}
#tt-v2 .matching-appearance legend{font-weight:600;padding:0 6px}
#tt-v2 .matching-appearance label{flex:1;min-width:160px;margin:0}
#tt-v2 .matching-appearance select{display:block;margin-top:10px}
#tt-v2 .game-engine[data-format="matching"] .match-columns[data-columns="1"] .play-card{flex-basis:100%}
#tt-v2 .game-engine[data-format="matching"] .match-columns[data-columns="2"] .play-card{flex-basis:calc((100% - 8px)/2)}

#tt-v2 .pair-text-style{position:relative;margin:0}
#tt-v2 .pair-text-style>summary{font-size:14px;padding:6px 10px;border:1px solid #acd8ec;border-radius:8px;background:#e4f4ff;color:#175b79;cursor:pointer}
#tt-v2 .pair-text-style>summary:hover{background:#ccecff}
#tt-v2 .pair-style-options{position:absolute;right:0;top:42px;z-index:10;width:min(380px,80vw);padding:14px;background:white;border:1px solid #acd8ec;border-radius:12px;box-shadow:0 8px 24px #23495b25}
#tt-v2 .pair-style-options fieldset{display:flex;gap:12px;border:0;padding:8px 0;margin:0}
#tt-v2 .pair-style-options legend{font-size:15px;font-weight:600}
#tt-v2 .pair-style-options label{flex:1;margin:0;font-size:14px}
#tt-v2 .pair-style-options select{margin-top:6px;min-height:36px;padding:6px;font-size:14px}

#tt-v2 .pair-style-options fieldset{padding:0;margin:0 0 14px;min-width:0}
#tt-v2 .pair-style-options fieldset:last-child{margin-bottom:0}
#tt-v2 .pair-style-options legend{display:block;float:left;width:100%;padding:0;margin:0 0 8px;line-height:1.3}
#tt-v2 .pair-style-options fieldset{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px}
#tt-v2 .pair-style-options legend{grid-column:1 / -1;float:none}

/* Reset inherited fieldset spacing inside the compact text-style popup. */
#tt-v2 .studio-editor .pair-style-options fieldset{display:block;padding:0;border:0;margin:0 0 16px;min-inline-size:0}
#tt-v2 .studio-editor .pair-style-options fieldset:last-child{margin-bottom:0}
#tt-v2 .studio-editor .pair-style-options legend{float:none;display:block;width:100%;padding:0;margin:0 0 8px;line-height:1.3}
#tt-v2 .studio-editor .pair-style-options fieldset label{display:inline-block;vertical-align:top;width:calc(50% - 6px);margin:0;padding:0;line-height:1.3}
#tt-v2 .studio-editor .pair-style-options fieldset label+label{margin-left:12px}
#tt-v2 .studio-editor .pair-style-options select{margin:6px 0 0}

#tt-v2 .studio-workspace .studio-layout-field,#tt-v2 .studio-workspace .studio-instruction-field{display:block;margin:14px 0 18px}
#tt-v2 .studio-workspace .studio-layout-field select,#tt-v2 .studio-workspace .studio-instruction-field input{display:block;margin-top:16px;font-family:inherit;font-size:16px;font-weight:400;line-height:22px}
#tt-v2 .studio-workspace .studio-instruction-field input::placeholder{font-weight:400}

#tt-v2 .studio-editor[data-format="matching"] textarea[data-studio-field]{box-sizing:border-box;min-height:48px;max-height:none;line-height:1.4;padding:10px 12px;overflow:hidden;resize:none;white-space:pre-wrap;overflow-wrap:anywhere;font-family:inherit}

/* Keep text-style controls quiet, with clear section headings. */
#tt-v2 .studio-editor .pair-style-options{font-weight:400}
#tt-v2 .studio-editor .pair-style-options legend{font-size:15px;font-weight:600;color:#294451}
#tt-v2 .studio-editor .pair-style-options fieldset label{font-size:14px;font-weight:400;color:#536e7a}
#tt-v2 .studio-editor .pair-style-options select{font-family:inherit;font-size:14px;font-weight:400;color:#294451}

#tt-v2 .saved-games-view .saved-game-title{position:relative;width:100%;margin-bottom:9px}
#tt-v2 .saved-games-view .saved-game-title h3{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere;line-height:1.3;min-height:2.6em;margin:0}
#tt-v2 .saved-games-view .saved-game-title-tooltip{display:none;position:absolute;left:0;bottom:100%;z-index:5;width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid #acd8ec;border-radius:8px;background:#fff;color:#294451;font-size:14px;font-weight:400;line-height:1.4;overflow-wrap:anywhere;box-shadow:0 4px 14px #23495b25}
#tt-v2 .saved-games-view .saved-game-title:hover .saved-game-title-tooltip,#tt-v2 .saved-games-view .saved-game-title:focus .saved-game-title-tooltip{display:block}
#tt-v2 .saved-games-view .tile-body .actions{margin-top:auto;padding-top:9px}

#tt-v2 .saved-games-view .saved-game-title h3,#tt-v2 .dash-v11 .tile-body h3{font-size:17px;font-weight:600;line-height:1.35;letter-spacing:0}
#tt-v2 .saved-games-view .saved-game-title h3{min-height:2.7em}

#tt-v2 .studio-editor[data-format="hangman"] textarea[data-studio-field="q"]{box-sizing:border-box;min-height:48px;max-height:none;line-height:1.4;padding:10px 12px;overflow:hidden;resize:none;white-space:pre-wrap;overflow-wrap:anywhere;font-family:inherit}

#tt-v2 .clue-counter{display:block;text-align:right;font-size:13px;font-weight:400;margin:6px 0 0}
#tt-v2 .clue-counter.over-limit{color:#b42318}

#tt-v2 .game-engine[data-format="hangman"] .hangman-primary{margin-top:16px}
#tt-v2 .game-engine[data-format="hangman"] .game-secondary{margin-top:12px;margin-bottom:0}
#tt-v2 .game-engine[data-format="hangman"] .hangman-play .hangman-clue{margin-bottom:18px}
#tt-v2 .game-engine[data-format="hangman"] .hangman-board>.hangman-alphabet{margin-bottom:18px}

#tt-v2 .studio-workspace label{font-weight:500}
#tt-v2 .studio-workspace .studio-item-label{font-weight:600}
#tt-v2 .studio-workspace .upload-guidance{font-size:13px;font-weight:400;color:#536e7a}

#tt-v2 .studio-workspace input,#tt-v2 .studio-workspace textarea,#tt-v2 .studio-workspace select,#tt-v2 .studio-workspace input::file-selector-button{font-weight:400}
#tt-v2 .memory-pictures{margin:16px 0 0}
#tt-v2 .memory-pictures>summary{font-size:15px;font-weight:500;color:#175b79;cursor:pointer}
#tt-v2 .memory-pictures .hint{font-weight:400}

/* Centre incomplete rows and contain long Memory Match text. */
#tt-v2 .memory-board{display:flex;flex-wrap:wrap;justify-content:center;gap:16px}
#tt-v2 .memory-board .memory-card{flex:0 0 calc((100% - 48px)/4);min-width:0;height:var(--memory-height,180px)}
#tt-v2 .memory-card .card-front{overflow:hidden}
#tt-v2 .memory-card-text{display:block;width:100%;min-width:0;overflow-wrap:anywhere;white-space:normal;line-height:1.25;text-align:center}
@media(max-width:700px){#tt-v2 .memory-board .memory-card{flex-basis:calc((100% - 32px)/3)}}

#tt-v2 .memory-card .card-front{padding:8px}

#tt-v2 .studio-picture-preview{display:flex;align-items:flex-start;gap:8px;margin:10px 0 18px;width:fit-content}#tt-v2 .studio-picture-preview .studio-thumb{margin:0}#tt-v2 .studio-picture-preview .picture-clear{display:flex;align-items:center;justify-content:center;width:32px;min-width:32px;height:32px;padding:0;font-size:24px;line-height:1}

#tt-v2 .picture-retention-warning{padding:14px;margin:12px 0 16px;border:1px solid #e5c875;border-radius:12px;background:#fff8e5;color:#294451}#tt-v2 .picture-retention-warning small{display:block;font-size:12px;margin-bottom:6px}#tt-v2 .picture-retention-warning strong{display:block;font-size:16px;font-weight:600}#tt-v2 .picture-retention-warning p{font-size:14px;line-height:1.45;margin:8px 0}#tt-v2 .picture-retention-warning button{margin-top:8px;font-size:14px;padding:8px 12px}
#tt-v2 .spin-prompt .question-panel h2,#tt-v2 .spin-prompt .question-panel p{overflow-wrap:anywhere;min-width:0}
#tt-v2 .studio-name-field{font-weight:700}#tt-v2 .studio-name-field input{font-weight:400}
#tt-v2 .studio-view label.studio-name-field,#tt-v2 label.studio-name-field{font-weight:700!important}

/* Group Sorting uses shared growing field sizing. */

#tt-v2 .sorting-words button{font-size:18px;padding:10px 12px;overflow-wrap:anywhere}#tt-v2 .sorting-groups{grid-template-columns:repeat(var(--sorting-columns,3),minmax(0,1fr))}#tt-v2 .sorting-groups .sorted-card{font-size:18px;overflow-wrap:anywhere}@media(max-width:700px){#tt-v2 .sorting-groups{grid-template-columns:repeat(2,minmax(0,1fr))}}
#tt-v2 .game-engine[data-format="sorting"] .sorting-words button{font-size:18px!important;padding:10px 12px!important}
@media(min-width:1100px){#tt-v2 .sorting-words .play-card{flex-basis:calc((100% - 84px)/8)}}

/* Dense sorting boards retain roomy selectable cards, with compact placed items. */
#tt-v2 .sorting-groups-compact .sorted-stack{gap:5px;padding:8px 0}
#tt-v2 .sorting-groups-compact .sorted-card{padding:4px 12px;line-height:1.3}

#tt-v2 .ordering-compact .word-options button:disabled{display:none}

#tt-v2 .quiz-picture{display:block;margin:0 auto;object-fit:contain;object-position:center}

#tt-v2 .noughts-compact .question-panel{padding:14px}
#tt-v2 .noughts-compact .noughts-board button{min-height:78px}
#tt-v2 .noughts-compact .noughts-board button{min-height:64px;padding:6px!important}
#tt-v2 .noughts-layout .noughts-answer{font-weight:400!important}

/* Keep partial category rows centered at every board width. */
#tt-v2 .sorting-groups{display:flex;flex-wrap:wrap;justify-content:center;gap:16px}
#tt-v2 .sorting-groups>section{box-sizing:border-box;min-width:0;flex:0 0 calc((100% - (var(--sorting-columns,3) - 1)*16px)/var(--sorting-columns,3))}
@media(max-width:700px){#tt-v2 .sorting-groups>section{flex-basis:calc((100% - 16px)/2)}}

#tt-v2 .sorting-groups-many>section{min-height:120px;padding:10px}
#tt-v2 .sorting-groups-many .category-heading{padding:6px 4px}

/* Anchor style panels to the whole toolbar so they cannot fall off its left edge. */
#tt-v2 .studio-editor .studio-nav{position:relative}
#tt-v2 .studio-editor .pair-text-style{position:static}
#tt-v2 .studio-editor .pair-style-options{top:calc(100% + 6px);right:0;width:min(380px,100%);box-sizing:border-box}

#tt-v2 .studio-resource-confirmation{margin:10px 0 20px;font-size:16px;font-weight:400;color:#285668;}
#tt-v2 .studio-resource-confirmation>span{margin-right:6px;}
#tt-v2 .studio-resource-confirmation strong{font-weight:600;}

#tt-v2 .studio-source-row{display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap;margin:18px 0 22px;}
#tt-v2 .studio-source-row .studio-source{display:flex;align-items:center;gap:12px;width:auto;max-width:100%;margin:0;white-space:nowrap;}
#tt-v2 .studio-source-row .studio-source select{width:260px;max-width:100%;margin:0;}
#tt-v2 .studio-source-row .studio-resource-confirmation{margin:0;}
@media(max-width:600px){#tt-v2 .studio-source-row{justify-content:flex-start;gap:10px;}#tt-v2 .studio-source-row .studio-source{flex-wrap:wrap;white-space:normal;}#tt-v2 .studio-source-row .studio-source select{width:100%;}}

#tt-v2 dialog.blank-slides-confirm p{font-size:15px;font-weight:400;line-height:1.5}

#tt-v2 .studio-slide-counter{margin-top:20px;text-align:right;font-size:14px;font-weight:400;line-height:1.4}
#tt-v2 .studio-slide-navigation{justify-content:flex-end}

#tt-v2 .studio-slide{position:relative;padding:32px 65px 54px}
@media(max-width:700px){#tt-v2 .studio-slide{padding:25px 58px 50px}}

/* Keep centred presentation arrows stationary during interaction. */
#tt-v2 .lesson-board button.intro-arrow,#tt-v2 .lesson-board button.intro-arrow:hover,#tt-v2 .lesson-board button.intro-arrow:focus,#tt-v2 .lesson-board button.intro-arrow:active{transform:translateY(-50%)!important;transition:background .18s,border-color .18s,color .18s,box-shadow .18s}


/* Reserve a consistent heading area in both presentation views. */
#tt-v2 .lesson-board{padding-top:100px;padding-bottom:54px}
#tt-v2 .lesson-board h1{position:absolute;top:26px;left:65px;right:65px;margin:0;text-align:center}
@media(max-width:700px){#tt-v2 .lesson-board{padding-top:100px;padding-bottom:50px}#tt-v2 .lesson-board h1{top:24px;left:52px;right:52px}}


/* Balance the content around the card midpoint and separate its heading. */
#tt-v2 .lesson-board{padding-bottom:100px}
#tt-v2 .lesson-board h1{padding-bottom:18px;border-bottom:1px solid #e3eaed}
@media(max-width:700px){#tt-v2 .lesson-board{padding-bottom:100px}}


/* All slides share a fixed viewport-aware card; pictures absorb content differences. */
#tt-v2 .lesson-board,#tt-v2 .lesson-board:has(>details){height:min(690px,calc(100dvh - 168px));min-height:420px}
#tt-v2 .lesson-board>img{flex-shrink:1;min-height:0;object-fit:contain}
#tt-v2 .lesson-board>.intro-learning{flex-shrink:0}


/* Teacher presentation editor and shared slide content. */
#tt-v2 .slide-edit-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}
#tt-v2 .slide-format{margin:14px 0;padding:12px;border:1px solid #cbdfe7;border-radius:12px}
#tt-v2 .slide-format-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
#tt-v2 .slide-format-grid label{margin:6px 0;font-weight:400}
#tt-v2 .slide-editor select{width:100%;font-weight:400}
#tt-v2 .slide-live-wrap{position:sticky;top:20px;align-self:start;padding-top:14px}
#tt-v2 .slide-live-wrap>span{display:block;font-size:14px;color:#587580;margin-bottom:8px}
#tt-v2 .slide-live-preview{border:1px solid #dce5e2;border-radius:16px;background:#fff;padding:24px;min-height:280px;overflow-wrap:anywhere}
#tt-v2 .slide-live-preview h3{text-align:center;border-bottom:1px solid #e3eaed;padding-bottom:14px}
#tt-v2 .slide-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;width:100%;min-height:0;flex:0 1 auto}
#tt-v2 .slide-content>img{display:block;min-height:0;max-height:260px;max-width:100%;object-fit:contain;flex:1 1 auto;margin:0!important}
#tt-v2 .slide-copy{width:100%;line-height:1.4;overflow-wrap:anywhere;flex:0 0 auto}
#tt-v2 .slide-content.layout-left,#tt-v2 .slide-content.layout-right{flex-direction:row}
#tt-v2 .slide-content.layout-right{flex-direction:row-reverse}
#tt-v2 .slide-content.layout-left>img,#tt-v2 .slide-content.layout-right>img{max-width:45%;height:auto}
#tt-v2 .slide-content.layout-left .slide-copy,#tt-v2 .slide-content.layout-right .slide-copy{width:50%}
#tt-v2 .slide-points{margin:0;padding-left:1.3em;text-align:inherit}
#tt-v2 .slide-points li{margin:8px 0}

#tt-v2 .slide-live-preview .slide-content>img{max-height:160px;max-width:100%;height:auto}
#tt-v2 .lesson-board .slide-content>img{height:min(26vh,260px);max-width:90%;width:auto}
#tt-v2 .lesson-board .slide-content.layout-left>img,#tt-v2 .lesson-board .slide-content.layout-right>img{max-width:45%}
#tt-v2 .lesson-board .slide-answer{margin-top:18px}
@media(max-width:800px){#tt-v2 .slide-edit-columns{grid-template-columns:1fr}#tt-v2 .slide-live-wrap{position:static}}

#tt-v2 .slide-thumbnails{display:flex;gap:10px;overflow-x:auto;padding:12px 0}#tt-v2 .slide-thumbnails button{flex:0 0 140px;padding:10px;font-size:13px;white-space:normal}#tt-v2 .slide-thumbnails img{height:48px;width:100%;object-fit:contain;display:block;margin-bottom:6px}#tt-v2 .slide-editor{scroll-margin-top:20px}

/* Keep slide shortcuts aligned and contain long titles. */
#tt-v2 .slide-thumbnails button{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:8px;width:150px;min-width:150px;flex-basis:150px;height:128px;box-sizing:border-box;overflow:hidden}
#tt-v2 .slide-thumbnails button img{flex:0 0 48px;width:100%;height:48px;min-height:48px;margin:0;object-fit:contain}
#tt-v2 .slide-thumbnails button:not(:has(img))::before{content:'';display:block;flex:0 0 48px}
#tt-v2 .slide-thumbnails button span{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;overflow-wrap:anywhere;white-space:normal;line-height:1.3;width:100%;min-width:0;font-weight:600}


#tt-v2 .slide-thumbnails button{height:64px;justify-content:center;gap:0}
#tt-v2 .slide-thumbnails button:not(:has(img))::before{display:none}

#tt-v2 .slide-thumbnails [draggable]{cursor:grab}#tt-v2 .slide-thumbnails .is-dragging{opacity:.5;cursor:grabbing}#tt-v2 .slide-thumbnails .slide-drop-target{outline:2px solid #2485ae;outline-offset:-3px}

#tt-v2 .slide-editor-paging{display:flex;align-items:center;gap:12px}#tt-v2 .slide-thumbnails button[aria-pressed="true"]{background:#ccecff;border:2px solid #2485ae}

#tt-v2 .slide-navigation-hint{margin-bottom:10px}#tt-v2 .slide-thumbnails{padding-top:8px;margin-top:0}

#tt-v2 .slide-thumbnails + .studio-name-field{margin-top:6px}


/* Bound both image columns and bullet markers inside their allocated space. */
#tt-v2 .slide-content.layout-left,#tt-v2 .slide-content.layout-right{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;width:100%}
#tt-v2 .slide-content.layout-right>img{grid-column:2;grid-row:1}
#tt-v2 .slide-content.layout-right>.slide-copy{grid-column:1;grid-row:1}
#tt-v2 .slide-content.layout-left>img,#tt-v2 .slide-content.layout-right>img,#tt-v2 .lesson-board .slide-content.layout-left>img,#tt-v2 .lesson-board .slide-content.layout-right>img{width:100%;max-width:100%;min-width:0;object-fit:contain}
#tt-v2 .slide-content.layout-left .slide-copy,#tt-v2 .slide-content.layout-right .slide-copy{width:100%;min-width:0}
#tt-v2 .slide-points{box-sizing:border-box;list-style:none;padding:0;margin:0;width:100%}
#tt-v2 .slide-points li{display:grid;grid-template-columns:.65em minmax(0,1fr);gap:.3em;position:relative;padding-left:.95em;display:block;overflow-wrap:anywhere}
#tt-v2 .slide-points li::before{content:'•';position:absolute;left:0;top:0;width:.65em;text-align:center}
#tt-v2 .slide-live-preview{min-width:0;overflow:hidden}
#tt-v2 .slide-edit-columns>*{min-width:0}

#tt-v2 .lesson-board .slide-content{flex-shrink:0;overflow-x:hidden}#tt-v2 .slide-overflow-note{position:absolute;bottom:18px;left:65px;font-size:13px;color:#587580}

#tt-v2 .slide-format-toolbar{display:flex;align-items:center;gap:5px;flex-wrap:wrap}#tt-v2 .slide-toolbar-label{font-size:12px;color:#587580;margin-right:4px}#tt-v2 .slide-format-toolbar select{width:90px;margin:0;padding:6px;min-height:34px;font-size:14px}#tt-v2 .slide-format-toolbar button[aria-pressed="true"]{background:#baddf3;border-color:#2485ae;color:#154f6a}#tt-v2 .slide-editor>.studio-nav{align-items:center;gap:10px}

#tt-v2 .slide-editor>.studio-nav>.actions{align-items:center;gap:6px}#tt-v2 .slide-format-toolbar{gap:6px;align-items:center}#tt-v2 .slide-format-toolbar .editor-icon-action{width:36px;height:36px;min-height:36px;padding:8px;display:inline-flex;align-items:center;justify-content:center}#tt-v2 .slide-format-toolbar svg{display:block;flex:none;width:18px;height:18px}#tt-v2 .slide-format-toolbar select{height:36px;min-height:36px;box-sizing:border-box}#tt-v2 .slide-toolbar-label{min-width:52px;text-align:right}

#tt-v2 .slide-editor .slide-editor-paging .editor-icon-action{width:34px;height:34px;min-height:34px;padding:6px;display:inline-flex;align-items:center;justify-content:center;font-size:22px;line-height:1;border-radius:8px}#tt-v2 .slide-editor-paging{gap:8px}#tt-v2 .slide-editor-paging strong{font-size:14px;font-weight:600;white-space:nowrap}#tt-v2 .slide-format-toolbar select{height:34px;min-height:34px}


#tt-v2 .slide-rich-input{box-sizing:border-box;min-height:48px;padding:12px;border:1px solid #a8bac4;border-radius:6px;background:white;font:16px/1.5 Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;outline:none}
#tt-v2 .slide-rich-input:focus{border-color:#2485ae;box-shadow:0 0 0 2px #2485ae20}
#tt-v2 .slide-rich-input p,#tt-v2 .slide-rich-input div{margin:0}
#tt-v2 .slide-rich-input ul,#tt-v2 .slide-rich-output ul{padding-left:1.4em;margin:6px 0;list-style:disc}
#tt-v2 .slide-rich-output p,#tt-v2 .slide-rich-output div{margin:0}
#tt-v2 .slide-format-toolbar [data-slide-toolbar-colour]{width:76px}

/* Compact toolbar selects have their own chevron and text inset. */
#tt-v2 .slide-format-toolbar select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m2 2 4 4 4-4' fill='none' stroke='%23587580' stroke-width='1.5'/%3E%3C/svg%3E");background-position:right 8px center;background-size:12px 8px;background-repeat:no-repeat;padding:6px 26px 6px 8px;text-indent:0;}

#tt-v2 .slide-editor-paging svg{display:block;flex:none;width:18px;height:18px}#tt-v2 .slide-editor-paging strong{display:flex;align-items:center;height:34px;line-height:1;margin:0}
/* Consistent settings labels and controls, without inherited textarea margins. */
#tt-v2 .slide-format-grid{column-gap:16px;row-gap:18px;align-items:start;padding-top:14px}
#tt-v2 .slide-format-grid>label{display:flex;flex-direction:column;gap:8px;margin:0;min-width:0;line-height:1.4;font-size:14px;font-weight:400}
#tt-v2 .slide-format-grid>label>select,#tt-v2 .slide-format-grid>label>textarea{box-sizing:border-box;width:100%;margin:0!important;min-height:48px;height:48px;font-size:16px;font-weight:400;line-height:24px}
#tt-v2 .slide-format-grid>label>textarea{padding:11px 12px;resize:vertical}

#tt-v2 .slide-content.slide-compare{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:24px;width:100%}
#tt-v2 .slide-compare-side{min-width:0;display:flex;flex-direction:column;align-items:center;gap:16px;overflow-wrap:anywhere}
#tt-v2 .slide-compare-side img{width:100%;height:220px;object-fit:contain;max-width:100%;margin:0}
#tt-v2 .slide-live-preview .slide-compare-side img{height:130px}
#tt-v2 .slide-compare-side+.slide-compare-side{border-left:1px solid #dce5e8;padding-left:24px}

#tt-v2 .slide-live-body{display:flex;flex-direction:column;align-items:center;min-height:340px;gap:16px}#tt-v2 .slide-live-body>.slide-content{flex-shrink:0}
/* Keep each point marker with its text, including centred paragraphs. */
#tt-v2 .slide-points li{padding-left:0}
#tt-v2 .slide-points li::before{position:static;display:inline-block;width:auto;margin-right:.45em;vertical-align:baseline}

#tt-v2 .slide-point-controls{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);display:flex;justify-content:center;gap:10px;white-space:nowrap}

#tt-v2 .slide-history-action{width:34px;height:34px;min-height:34px;padding:7px;display:inline-flex;align-items:center;justify-content:center}#tt-v2 .slide-history-action svg{display:block;flex:none}

#tt-v2 .studio-draft-recovery{margin:20px 0 32px;padding:20px 24px;border:1px solid #acd8ec;border-radius:14px;background:#f2f9fd}#tt-v2 .studio-draft-recovery h2{font-size:18px;margin:0 0 8px;font-weight:600}#tt-v2 .studio-draft-recovery p{margin:0 0 14px;font-size:15px}#tt-v2 .studio-draft-recovery .actions{gap:10px;margin:0}#tt-v2 .saved-slides-view .tile-body .actions{grid-template-columns:repeat(3,minmax(0,1fr))}

#tt-v2 .studio-draft-recovery{margin-top:8px}


#tt-v2 .saved-slide-thumbnail{height:210px;padding:16px;box-sizing:border-box;background:#e4f4ff;overflow:hidden}#tt-v2 .saved-slide-mini{height:100%;box-sizing:border-box;background:white;border:1px solid #dce5e2;border-radius:8px;padding:12px;display:flex;flex-direction:column;align-items:center;gap:8px;overflow:hidden}#tt-v2 .saved-slide-mini h4{font-size:13px;line-height:1.3;margin:0;text-align:center;border-bottom:1px solid #e3eaed;padding-bottom:6px;width:100%;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}#tt-v2 .saved-slide-mini img{height:76px;max-width:100%;object-fit:contain;margin:0}#tt-v2 .saved-slide-mini p{font-size:10px;line-height:1.4;margin:0;text-align:center;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

#tt-v2 .saved-slides-view .slide-resource-label{min-height:21px;line-height:21px;margin:10px 0 16px}#tt-v2 .saved-slides-view .tile-body{box-sizing:border-box;min-height:190px}

#tt-v2 .saved-slide-thumbnail{background:#f0f0eb}


#tt-v2 .studio-linked-resource{display:flex;flex-direction:column;gap:10px;margin:18px 0 20px;font-weight:600;line-height:1.4}#tt-v2 .studio-linked-resource select{margin:0;font-weight:400;width:100%}


#tt-v2 .studio-linked-resource{gap:14px}


#tt-v2 .slide-presentation-meta{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;margin:6px 0 20px}#tt-v2 .slide-presentation-meta>label{display:flex;flex-direction:column;gap:14px;margin:0;min-width:0;font-weight:600;line-height:1.4}#tt-v2 .slide-presentation-meta input,#tt-v2 .slide-presentation-meta select{margin:0!important;width:100%;height:48px;box-sizing:border-box;font-weight:400}@media(max-width:700px){#tt-v2 .slide-presentation-meta{grid-template-columns:1fr;gap:18px}}

#tt-v2 .tt-studio .slide-presentation-meta>label.studio-name-field,#tt-v2 .tt-studio .slide-presentation-meta>label.studio-linked-resource{display:flex!important;flex-direction:column;gap:14px;margin:0!important;align-self:start}


#tt-v2 .slide-presentation-meta{margin-top:10px;margin-bottom:8px}#tt-v2 .tt-studio .slide-presentation-meta>label.studio-name-field,#tt-v2 .tt-studio .slide-presentation-meta>label.studio-linked-resource{gap:17px}#tt-v2 .slide-presentation-meta+.slide-editor{margin-top:12px}

#tt-v2 .lesson-board>.slide-answer{position:absolute;bottom:28px;left:65px;right:65px;margin:0;text-align:center}
#tt-v2 .lesson-board>.slide-answer>p{position:absolute;bottom:58px;left:0;right:0;margin:0;max-height:100px;overflow-y:auto;background:white;padding:8px;box-sizing:border-box}

#tt-v2 .lesson-board>.slide-answer,#tt-v2 .lesson-board>.slide-answer[open]{height:48px;min-height:0;padding:0}#tt-v2 .lesson-board>.slide-answer>summary{display:inline-block;width:auto;transform:none!important}

#tt-v2 .lesson-board>.slide-answer,#tt-v2 .lesson-board>.slide-answer[open]{height:132px;bottom:24px}
#tt-v2 .lesson-board>.slide-answer>p{top:58px;bottom:auto;max-height:74px}

#tt-v2 .lesson-board>.slide-answer>summary{position:relative;top:-8px}


#tt-v2 .lesson-board>.slide-answer>p{padding:0 8px;line-height:1.35}


/* Let the answer section grow upward while retaining bottom breathing room. */
#tt-v2 .lesson-board>.slide-answer,#tt-v2 .lesson-board>.slide-answer[open]{height:auto;min-height:0;bottom:48px;padding:0}
#tt-v2 .lesson-board>.slide-answer>summary{position:static;top:auto;transform:none!important}
#tt-v2 .lesson-board>.slide-answer>p{position:static;max-height:150px;margin:24px 0 0!important;padding:0 12px;line-height:1.4;background:transparent}
#tt-v2 .slide-edit-columns>div:first-child>label:first-child,#tt-v2 .slide-live-wrap>span:first-child{display:block;margin:0 0 14px!important;padding:0;line-height:24px;min-height:24px;font-size:16px;font-weight:400}
#tt-v2 .slide-edit-columns>.slide-live-wrap{padding-top:0}
#tt-v2 .slide-rich-input[aria-invalid="true"]{border:1px solid #b42318} 
#tt-v2 .editor-guidance>.actions:last-child{margin-bottom:0}
#tt-v2 .slide-strip{display:flex;align-items:center;gap:10px;min-width:0}#tt-v2 .slide-strip .slide-thumbnails{flex:1;min-width:0;scrollbar-width:none;margin-bottom:0;padding-bottom:8px}#tt-v2 .slide-strip .slide-thumbnails::-webkit-scrollbar{display:none}#tt-v2 .slide-strip-arrow{flex:0 0 34px}#tt-v2 .slide-strip:not(.has-overflow)>.slide-strip-arrow{display:none}
#tt-v2 .slide-strip>.slide-strip-arrow{flex:0 0 24px;width:24px;min-width:24px;height:32px;min-height:32px;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;color:#64747b;transform:none!important}#tt-v2 .slide-strip>.slide-strip-arrow:hover{color:#293f4b;background:transparent!important}#tt-v2 .slide-strip>.slide-strip-arrow:disabled{opacity:.3}#tt-v2 .slide-strip>.slide-strip-arrow svg{width:16px;height:16px}#tt-v2 .slide-strip{gap:6px}
#tt-v2 .saved-slides-view>.actions:first-child{margin-top:0}
#tt-v2 .saved-games-view>.actions:first-child{margin-top:0}
#tt-v2 .studio-source-row.slide-source-row{justify-content:flex-start;gap:12px;margin-top:16px}#tt-v2 .slide-source-row .studio-resource-confirmation{flex-basis:100%;margin:0;text-align:left}#tt-v2 .slide-source-row .studio-source{margin:0}
#tt-v2 .studio-source-row.slide-source-row{margin-top:24px;row-gap:20px}#tt-v2 .slide-start-choices{margin-top:20px;margin-bottom:24px}
#tt-v2 .slide-start-choices[hidden]{display:none!important}
#tt-v2 select[data-search-ready]{display:none!important}#tt-v2 .resource-picker{position:relative;width:100%;min-width:0}#tt-v2 .resource-picker input{width:100%;box-sizing:border-box;padding-right:26px}#tt-v2 .resource-picker-options{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:100;background:white;border:1px solid #b9ced7;border-radius:8px;box-shadow:0 4px 12px #0002;max-height:240px;overflow-y:auto;text-align:left}#tt-v2 .resource-picker-options[hidden]{display:none}#tt-v2 .resource-picker-options [role=option],#tt-v2 .resource-picker-empty{padding:12px;cursor:pointer;font-size:15px;font-weight:400}#tt-v2 .resource-picker-options [role=option]:hover,#tt-v2 .resource-picker-options .is-active{background:#edf7fc}#tt-v2 .resource-picker-options [aria-selected=true]{font-weight:600}#tt-v2 .resource-picker-empty{color:#64747b;cursor:default}
#tt-v2 .resource-picker-trigger{display:block;width:100%;min-height:48px;text-align:left;background:#fff!important;color:#294451!important;border:1px solid #b9ced7!important;border-radius:5px;padding:12px 40px 12px 12px!important;font-weight:400;position:relative;box-shadow:none!important;transform:none!important}#tt-v2 .resource-picker-trigger::after{content:"";position:absolute;right:16px;top:18px;width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg)}#tt-v2 .resource-picker-options>input{display:block;width:calc(100% - 20px);margin:10px!important;padding:10px!important;min-height:40px}#tt-v2 .resource-picker-options>[role=listbox]{max-height:190px;overflow-y:auto}#tt-v2 .resource-picker-options{max-height:none;overflow:visible}
#tt-v2 .studio-source-row .studio-source:has(.resource-picker){width:320px;max-width:100%;flex:0 1 320px}#tt-v2 .resource-picker-options{min-width:280px;max-width:calc(100vw - 48px)}@media(max-width:480px){#tt-v2 .resource-picker-options{min-width:100%}}

/* Match searchable category controls to adjacent library filters. */
#tt-v2 .collection-filter-options label>.resource-picker{margin-top:6px}#tt-v2 .collection-filter-options .resource-picker-trigger{height:46px;min-height:46px;font-weight:600}


#tt-v2 .collection-filter-options label>select,#tt-v2 .collection-filter-options label>.resource-picker{margin-top:10px!important}#tt-v2 .collection-filter-options select,#tt-v2 .collection-filter-options .resource-picker-trigger{font-weight:400!important}


#tt-v2 .collection-filter-options select,#tt-v2 .collection-filter-options .resource-picker-trigger{font-size:14px!important;line-height:1.65!important;font-family:Inter,Arial,sans-serif}


#tt-v2 .resource-picker-trigger{white-space:normal!important;overflow-wrap:anywhere;height:auto!important}#tt-v2 .resource-picker-options [role=option]{white-space:normal;overflow-wrap:anywhere}


#tt-v2 .resource-picker-trigger{white-space:nowrap!important;overflow:hidden;text-overflow:ellipsis;overflow-wrap:normal}#tt-v2 .resource-picker-options [role=option]:hover,#tt-v2 .resource-picker-options .is-active,#tt-v2 .resource-picker-options [aria-selected=true]{background:#edf7fc!important}


#tt-v2 .powerpoint-import-dialog{width:min(520px,calc(100vw - 40px));box-sizing:border-box;padding:24px}#tt-v2 .powerpoint-import-dialog p{font-size:15px;line-height:1.5;margin:12px 0}#tt-v2 .powerpoint-file-label{display:block;margin:20px 0 16px;font-weight:600}#tt-v2 .powerpoint-file-label input{display:block;margin-top:10px;width:100%;box-sizing:border-box;font-weight:400}#tt-v2 .powerpoint-import-status{background:#f0f7ec;border:1px solid #d9e7d2;border-radius:6px;padding:12px}#tt-v2 .powerpoint-import-dialog>.actions{margin-bottom:0}


#tt-v2 .powerpoint-import-dialog p{font-size:14px;line-height:1.5}#tt-v2 .powerpoint-file-label{font-size:14px}


#tt-v2 dialog.powerpoint-import-dialog p{font-size:14px!important;line-height:1.5!important;font-weight:400}


#tt-v2 .powerpoint-file-label{min-width:0;max-width:100%}#tt-v2 .powerpoint-file-label input[type=file]{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px!important}#tt-v2 .powerpoint-file-label input::file-selector-button{max-width:45%;margin-right:8px}


#tt-v2 .imported-slide-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;margin:24px 0}#tt-v2 .imported-slide-grid figure{margin:0}#tt-v2 .imported-slide-grid img{width:100%;height:auto;border:1px solid #d9e1e5}#tt-v2 .imported-slide-grid figcaption{text-align:center;font-size:14px;padding:6px}#tt-v2 .lesson-board:has(.imported-full-slide){padding:32px 60px 44px!important}#tt-v2 .lesson-board:has(.imported-full-slide)>h1{display:none}#tt-v2 .imported-full-slide{display:block;width:100%;height:100%;max-height:100%;object-fit:contain;min-height:0}


#tt-v2 .lesson-board>img.imported-full-slide{width:100%!important;max-width:100%!important;height:100%!important;max-height:100%!important;object-fit:contain;flex:1 1 auto}


#tt-v2 .editor-guidance.imported-guidance{padding:16px 22px;margin-bottom:18px}#tt-v2 .editor-guidance.imported-guidance h2{margin:0 0 8px!important}#tt-v2 .editor-guidance.imported-guidance p{margin:0!important}#tt-v2 .imported-slide-grid+.actions{margin-top:20px;gap:12px;justify-content:center!important}

#tt-v2 .resource-share-dialog{width:min(760px,calc(100vw - 32px))!important;max-width:760px!important;padding:24px!important;box-sizing:border-box}
#tt-v2 .resource-share-dialog>p{font-size:15px!important;line-height:1.5}
#tt-v2 .resource-share-content{display:grid;grid-template-columns:244px minmax(0,1fr);gap:24px;align-items:center;margin:20px 0}
#tt-v2 .resource-share-qr{background:white;padding:12px;min-height:244px;display:flex;align-items:center;justify-content:center}
#tt-v2 .resource-share-qr img,#tt-v2 .resource-share-qr canvas{max-width:100%;height:auto}
#tt-v2 .resource-share-link{min-width:0}#tt-v2 .resource-share-link label{display:block;margin-bottom:10px}
#tt-v2 .resource-share-link input{width:100%;min-width:0;margin:0;box-sizing:border-box;text-overflow:ellipsis;font-size:14px}
#tt-v2 .resource-share-link .hint{font-size:14px!important;line-height:1.5;margin:12px 0}
#tt-v2 .resource-share-dialog .actions{gap:10px;margin:14px 0 0}#tt-v2 .resource-share-dialog .share-footer{justify-content:center}
#tt-v2 .resource-share-dialog [hidden]{display:none!important}
@media(max-width:600px){#tt-v2 .resource-share-content{grid-template-columns:minmax(0,1fr);gap:12px}#tt-v2 .resource-share-qr{justify-self:center}#tt-v2 .resource-share-dialog{max-height:90vh;overflow:auto}}

/* Keep the class chooser aligned with the sharing panel. */
#tt-v2 .share-class-panel {padding:16px;background:#f1f8ed;border:1px solid #dce8d5;border-radius:10px;margin:18px 0;}
#tt-v2 .share-class-panel label {display:block;font-size:15px;font-weight:600;margin:0 0 10px;}
#tt-v2 .share-class-row {display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
#tt-v2 .share-class-row select,#tt-v2 .share-class-row input {flex:1 1 220px;min-width:0;width:auto;max-width:100%;height:42px;margin:0!important;font-size:15px;font-weight:400;box-sizing:border-box;}
#tt-v2 .share-class-row button {margin:0;height:42px;white-space:nowrap;}
#tt-v2 [data-class-form] {margin-top:18px;}
#tt-v2 .share-class-panel>.actions {margin:16px 0 0!important;}
#tt-v2 .resource-share-dialog {max-height:90vh;overflow-y:auto;}
#tt-v2 .share-local-note {font-size:13px!important;color:#53636b;}
@media(max-width:520px){#tt-v2 .share-class-row select,#tt-v2 .share-class-row input{flex-basis:100%;}}

#tt-v2 .submission-example-note {font-size:14px;margin:12px 0 20px;}
#tt-v2 .submission-class-group {border:1px solid #dce4e8;border-radius:12px;overflow:hidden;}
#tt-v2 .submission-class-group+.submission-class-group {margin-top:18px;}
#tt-v2 .shared-filters {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:16px 0;}
#tt-v2 .shared-filters label {display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:600;}
#tt-v2 .shared-filters select {width:100%;margin:0;font-size:15px;font-weight:400;}
#tt-v2 .shared-list-scroll {overflow-x:auto;}
#tt-v2 .shared-list {min-width:760px;table-layout:fixed;margin:0;}
#tt-v2 .shared-list th {padding:10px 12px;background:#f7f9fa;border-bottom:1px solid #e4e9ec;}
#tt-v2 .shared-list td {height:58px;box-sizing:border-box;padding:10px 12px;border-bottom:0;line-height:1.4;vertical-align:middle;}
#tt-v2 .shared-list tbody tr+tr td {border-top:1px solid #eef1f3;}
#tt-v2 .shared-list .button {margin:0;}
#tt-v2 .shared-list th:nth-child(1){width:12%;}
#tt-v2 .shared-list th:nth-child(2){width:29%;}
#tt-v2 .shared-list th:nth-child(3){width:21%;}
#tt-v2 .shared-list th:nth-child(4){width:10%;}
#tt-v2 .shared-list th:nth-child(5){width:16%;}
#tt-v2 .shared-list th:nth-child(6){width:12%;}
#tt-v2 .shared-list td {overflow-wrap:anywhere;}
#tt-v2 .shared-list th:last-child,#tt-v2 .shared-list td:last-child {text-align:center;}
#tt-v2 .shared-list td:last-child .button {display:inline-flex;align-items:center;justify-content:center;float:none;transform:none;}
#tt-v2 .shared-list:not(.review-list) th:nth-child(1){width:13%;}
#tt-v2 .shared-list:not(.review-list) th:nth-child(2){width:30%;}
#tt-v2 .shared-list:not(.review-list) th:nth-child(3){width:22%;}
#tt-v2 .shared-list:not(.review-list) th:nth-child(4){width:13%;}
#tt-v2 .shared-list:not(.review-list) th:nth-child(5){width:22%;}
#tt-v2 .review-list th:nth-child(1){width:12%;}
#tt-v2 .review-list th:nth-child(2){width:12%;}
#tt-v2 .review-list th:nth-child(3){width:25%;}
#tt-v2 .review-list th:nth-child(4){width:22%;}
#tt-v2 .review-list th:nth-child(5){width:17%;}
#tt-v2 .review-list th:nth-child(6){width:12%;}
@media(max-width:650px){#tt-v2 .shared-filters{grid-template-columns:1fr;gap:12px;}}
#tt-v2 .submission-class-group>header {padding:12px 20px;background:#f1f8ed;}
#tt-v2 .submission-class-group h3,#tt-v2 .submission-review-heading h2 {margin:0;}
#tt-v2 .submission-class-group header p {margin:6px 0 0;font-size:14px;}
#tt-v2 .submission-resource-heading {padding:18px 22px 8px;}
#tt-v2 .submission-resource-heading h3 {font-size:17px;}
#tt-v2 .submission-table-scroll {overflow-x:auto;padding:0 20px 10px;}
#tt-v2 .submission-table {width:100%;border-collapse:collapse;min-width:440px;}
#tt-v2 .submission-table th,#tt-v2 .submission-table td {text-align:left;padding:10px 10px;border-bottom:1px solid #e4e9ec;}
#tt-v2 .submission-table th {font-size:14px;font-weight:600;}
#tt-v2 .submission-table td {font-size:15px;}
#tt-v2 .submission-table tbody tr:last-child td {border-bottom:0;}
#tt-v2 .submission-table td {vertical-align:middle;}
#tt-v2 .shared-filters~.submission-class-group .submission-table {table-layout:fixed;min-width:760px;}
#tt-v2 .shared-filters~.submission-class-group .submission-table th:nth-child(1){width:23%;}
#tt-v2 .shared-filters~.submission-class-group .submission-table th:nth-child(2){width:22%;}
#tt-v2 .shared-filters~.submission-class-group .submission-table th:nth-child(3){width:11%;}
#tt-v2 .shared-filters~.submission-class-group .submission-table th:nth-child(4){width:16%;}
#tt-v2 .shared-filters~.submission-class-group .submission-table th:nth-child(5){width:28%;}
#tt-v2 .submission-table button {margin:0;}
#tt-v2 .submission-table .button,#tt-v2 .submission-table button {padding:8px 12px;min-height:36px;}
#tt-v2 .submission-status {padding:5px 10px;background:#fff1df;border-radius:5px;font-size:13px;white-space:nowrap;}
#tt-v2 .submission-review-heading {display:flex;gap:18px;align-items:center;flex-wrap:wrap;}
#tt-v2 .submission-review-heading p {margin:6px 0 0;font-size:15px;}
#tt-v2 .submission-review-grid {display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:22px;align-items:start;}
#tt-v2 .submission-review-grid>.sheet {margin:0;min-width:0;}
#tt-v2 .submission-review-grid label {display:block;margin-bottom:10px;font-size:15px;}
#tt-v2 #example-review-feedback {box-sizing:border-box;width:100%;min-height:180px;margin:0;}
#tt-v2 .submission-answer-list li {padding:8px 0;}
@media(max-width:720px){#tt-v2 .submission-review-grid{grid-template-columns:1fr;}}

#tt-v2 .sharing-list-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}#tt-v2 .sharing-list-heading h2{margin:0}#tt-v2 .sharing-list-heading button{margin:0}#tt-v2 .share-class-panel>select{width:100%;margin:8px 0 16px}


#tt-v2 .resource-share-dialog .managed-share-actions{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:12px;margin:24px 0 0}#tt-v2 .resource-share-dialog .managed-share-actions button{margin:0}#tt-v2 .resource-share-dialog .resource-share-link input{margin-bottom:0}


#tt-v2 .resource-share-dialog .managed-replace{display:block;margin:16px auto 0;font-size:13px;padding:6px 10px}

#tt-v2 .resource-share-dialog label[for="share-class"]{display:block;margin-top:20px;margin-bottom:10px;}
#tt-v2 .resource-share-dialog [data-class-form]{margin-top:18px;padding-top:16px;border-top:1px solid #dce5dc;}
#tt-v2 .resource-share-dialog [data-class-form][hidden]{display:none;}
#tt-v2 .resource-share-dialog label[for="share-class-name"]{display:block;margin:0 0 10px;}
#tt-v2 .resource-share-dialog [data-class-form] .share-class-row{gap:12px;align-items:center;}
#tt-v2 .resource-share-dialog [data-class-form] input,#tt-v2 .resource-share-dialog [data-class-form] button{margin:0;}
#tt-v2 .resource-share-dialog .share-class-panel{padding:20px;}
#tt-v2 .resource-share-dialog .share-class-panel>label{display:block;margin:20px 0 10px;}
#tt-v2 .resource-share-dialog .share-class-panel>label:first-child{margin-top:0;}
#tt-v2 .resource-share-dialog .share-class-panel>select{margin:0;width:100%;}
#tt-v2 .resource-share-dialog .share-class-panel>.actions{margin:20px 0 0;}
#tt-v2 .resource-share-dialog .share-class-panel>.actions button{margin:0;}
#tt-v2 .resource-share-dialog [data-class-form]{margin:20px 0 0;padding:20px 0 0;}
#tt-v2 .resource-share-dialog label[for="share-class-name"]{margin:0 0 10px;}
#tt-v2 .resource-share-dialog [data-class-form]{border-top:0;padding-top:0;margin-top:20px;}
#tt-v2 .resource-share-dialog .share-class-panel>label[for="share-class"]{margin-top:14px;}
#tt-v2 .resource-share-dialog .share-class-panel[hidden]{display:none;}
#tt-v2 .resource-share-dialog .share-footer{display:flex;justify-content:center;align-items:center;gap:12px;margin:24px 0 0;}
#tt-v2 .resource-share-dialog .share-footer button{margin:0;}
#tt-v2 .resource-share-dialog [data-share-status]:empty{display:none;}
#tt-v2 .resource-share-dialog .resource-share-link .actions:empty{display:none;}
#tt-v2 .submission-review-heading{justify-content:space-between;align-items:center;gap:18px;margin-bottom:20px;}
#tt-v2 .submission-review-heading p{margin:8px 0 0;}
#tt-v2 .submission-review-heading button{margin:0;}

#tt-v2 .results-overview{margin:0 0 18px;padding:12px 16px;background:#f1f7fa;border:1px solid #dce8ee;border-radius:10px;line-height:1.5;font-size:16px}

#tt-v2 .submission-review-results .results-view > .sheet > h2 {margin-bottom:16px;}
#tt-v2 .submission-feedback h3 {margin:0 0 18px;}
#tt-v2 .submission-feedback label {display:block;margin:0 0 16px;}
#tt-v2 .submission-feedback textarea {display:block;margin:0;width:100%;box-sizing:border-box;}
#tt-v2 .submission-feedback .actions {margin:20px 0 0;}
#tt-v2 .submission-feedback .actions button {margin:0;}
#tt-v2 .submission-feedback [role="status"]:empty {display:none;}

#tt-v2 .review-list button.review-complete{background:#e6f4d9;color:#365428;border-color:#b9d7a2} 
#tt-v2 .submission-feedback [data-example-review-status]{margin-top:16px}

#tt-v2 .submission-feedback .feedback-destination{margin:16px 0 0;font-size:14px;line-height:1.5;color:#52636b}

#tt-v2 .student-feedback-panel{margin:20px 0;padding:20px;background:#f1f7fa;border:1px solid #dce8ee;border-radius:10px}
#tt-v2 .student-feedback-panel[hidden]{display:none}
#tt-v2 .student-feedback-panel h3{margin:0 0 14px}
#tt-v2 .student-feedback-panel p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
#tt-v2 .feedback-new{margin-left:8px;padding:2px 7px;border-radius:12px;background:#d7edc5;color:#365428;font-size:12px}
#tt-v2 .teacher-feedback-button.has-new-feedback{animation:feedback-pulse 2s ease-in-out 3}
@keyframes feedback-pulse{0%,100%{box-shadow:0 0 0 0 #58a9dc40}50%{box-shadow:0 0 0 6px #58a9dc30}}
@media(prefers-reduced-motion:reduce){#tt-v2 .teacher-feedback-button.has-new-feedback{animation:none}}

/* The resource navigation owns its panel; the outer mount adds no second card. */
#tt-v2:not(.tt-focused):not(.tt-classroom):has(.resource-tabs){background:transparent;padding-top:0}


/* Keep dashboard decoration inside its card and clear the site footer. */
body.com-teachthis #tt-v2:not(.tt-focused):not(.tt-classroom):has(.dash-v11){background:transparent;border-radius:0;padding-bottom:24px;display:flow-root}
body.com-teachthis #sp-main-body:has(#tt-v2){padding-bottom:24px;display:flow-root}


/* All workspace pages use the navigation card, without an outer white panel. */
#tt-v2:not(.tt-focused):not(.tt-classroom):has(.resources-navigation){background:transparent;border-radius:0;padding-top:0}


/* Keep presentation navigation inside the viewport, including narrow Firefox layouts. */
#tt-v2.tt-presentation>main{min-width:0;max-width:100%}
#tt-v2.tt-presentation .lesson-board{min-width:0;max-width:1050px;width:100%;margin-left:auto;margin-right:auto}
#tt-v2 .lesson-board>.slide-content,#tt-v2 .lesson-board .slide-copy{min-width:0;max-width:100%}
@media(max-width:700px){
 body.tt-focus-open #tt-v2.tt-presentation{padding-left:8px;padding-right:8px}
 #tt-v2.tt-presentation .lesson-board{padding-left:52px;padding-right:52px}
 #tt-v2.tt-presentation .intro-left{left:4px}
 #tt-v2.tt-presentation .intro-right{right:4px}
}

/* Worksheet return control: outside the worksheet so it does not rebuild answers. */
.exercise-return{position:fixed;right:28px;bottom:16px;z-index:100010;display:flex;align-items:center;justify-content:center;width:46px;height:46px;padding:0;border:1px solid #b6dff4;border-radius:9px;background:#e3f3ff;color:#176080;box-shadow:0 2px 8px #203a5020;cursor:pointer}
.exercise-return[hidden]{display:none!important}
#tt-v2 .exercise-nav{scroll-margin-top:100px}
#tt-v2 .slide-content>img{flex-shrink:0}

/* Approved plain radio controls in teacher previews and student worksheets. */
#tt-v2 :is(#personal-choices,.partner-choices,.ask-row) .choice-chip{border:0;border-radius:0;background:transparent;box-shadow:none}

/* Exercise E: isolate accessible legends from the host site's heading rules. */
#tt-v2 #personal-choices>.personal-row{padding:0 0 20px;min-inline-size:0}
#tt-v2 #personal-choices>.personal-row>legend{float:none;display:block;width:100%;max-width:100%;margin:0 0 16px;padding:0;border:0;font-family:inherit;font-size:inherit;font-weight:400;line-height:1.5;color:inherit;white-space:normal}
#tt-v2 #personal-choices>.personal-row>legend>span{font-size:inherit;font-weight:inherit;line-height:inherit}
#tt-v2 :is(#personal-choices,.partner-choices) .choice-chip{font-family:inherit;font-size:inherit;line-height:1.5;vertical-align:middle}

#tt-v2 .worksheet-create-menu{position:relative}#tt-v2 .worksheet-create-menu>div{position:absolute;top:100%;left:0;z-index:20;background:white;padding:8px;min-width:220px;border:1px solid #dbe6ea;border-radius:12px;box-shadow:0 6px 20px #29445022}#tt-v2 .worksheet-create-menu>div>a{display:block;margin:4px 0}
/* First gap-fill / word-order item: avoid stacking paragraph/bank margin with row padding. */
#tt-v2 .sheet>p+.sentence-question,#tt-v2 .sheet>.adjective-bank+.sentence-question{padding-top:0}

#tt-v2 .resource-preview{height:190px;background:#eef5f7;overflow:hidden;display:flex;align-items:center;justify-content:center}#tt-v2 .resource-preview img{width:100%;height:100%;object-fit:contain;padding:12px}#tt-v2 .resource-document-preview{background:white;width:80%;padding:18px;min-height:160px;box-shadow:0 2px 8px #29445015;font-size:11px;line-height:1.4}#tt-v2 .resource-document-preview p{font-size:11px;margin:8px 0}

/* Consistent Create dropdown across library screens. */
#tt-v2 .worksheet-create-menu>summary{list-style:none;cursor:pointer;gap:8px}
#tt-v2 .worksheet-create-menu>summary::-webkit-details-marker{display:none}
#tt-v2 .worksheet-create-menu>summary::after{content:"▾";font-size:.75em}
#tt-v2 .workspace-nav .worksheet-create-menu>div{display:flex;flex-direction:column;gap:6px;min-width:220px;padding:8px}
#tt-v2 .workspace-nav .worksheet-create-menu:not([open])>div{display:none}
#tt-v2 .workspace-nav .worksheet-create-menu>div>a{display:flex;width:100%;box-sizing:border-box;justify-content:flex-start;white-space:nowrap;margin:0}

#tt-v2 .workspace-nav .worksheet-create-menu>div>a{background:transparent;border:0;border-radius:6px;box-shadow:none;min-height:40px;padding:10px 12px;font-weight:600}
#tt-v2 .workspace-nav .worksheet-create-menu>div>a:hover,#tt-v2 .workspace-nav .worksheet-create-menu>div>a:focus-visible{background:#e4f4ff;transform:none;box-shadow:none}

/* Space separate instructions in text slides without changing dialogue rows. */
#tt-v2 .slide-content:not(.slide-compare)>.slide-copy .slide-rich-output>p+p,#tt-v2 .slide-content:not(.slide-compare)>.slide-copy .slide-rich-output>div+div{margin-top:.7em}

/* One toolbar geometry for every workspace; neutralise native details margins. */
#tt-v2 .resources-navigation .workspace-nav{margin:0;min-height:64px;padding:8px 48px;gap:10px}
#tt-v2 .workspace-nav .worksheet-create-menu{margin:0;padding:0}
#tt-v2 .workspace-nav .worksheet-create-menu>summary{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 16px;gap:12px;border:1px solid #acd8ec;border-radius:9px;background:#e4f4ff;color:#175b79;font:inherit;font-weight:600;line-height:1.3}
#tt-v2 .workspace-nav .worksheet-create-menu>summary::after{content:"";display:block;width:10px;height:10px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-3px) rotate(45deg);flex:none}


#tt-v2 .resources-navigation .workspace-nav .worksheet-create-menu>div>a.button{background:transparent;border:0;box-shadow:none;border-radius:6px;justify-content:flex-start}
#tt-v2 .resources-navigation .workspace-nav .worksheet-create-menu>div>a.button:hover{background:#e4f4ff;transform:none}

#tt-v2 .workspace-nav .worksheet-create-menu>summary{font-family:Arial,sans-serif;font-size:15px;font-weight:600;line-height:1.3}

/* Reserve the workspace before asynchronous account content arrives. */
body.com-teachthis #tt-v2:not(.tt-focused):not(.tt-classroom){min-height:calc(100dvh - 180px)}

#tt-v2 .dash-content{min-height:560px}#tt-v2 .resource-loading{min-height:480px;padding:32px 0;color:#587482}
/* One compact action row across resources, games and slides. */
#tt-v2 .resource-tiles .resource-tile .tile-body>.actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.3fr) 34px;gap:6px;width:100%;margin-top:9px;margin-bottom:0;align-items:stretch}
#tt-v2 .resource-tiles .resource-tile .tile-body>.actions>:is(a,button){display:inline-flex;align-items:center;justify-content:center;width:100%;min-width:0;box-sizing:border-box;white-space:nowrap;font:600 13px Arial,sans-serif;padding:8px 6px;margin:0;background:#e3f4ff;color:#175e7c;border:1px solid #a8d8ee;border-radius:10px;text-decoration:none}
#tt-v2 .resource-tiles .resource-tile .tile-body>.actions>:is(a,button):hover{background:#ccecff;border-color:#72bddc}

/* One continuous activity sheet in all teacher previews. */
@media screen {
#tt-v2:is(.tt-activity-preview,.tt-student-sheet)>main,#tt-v2 #worksheet-preview>.worksheet-canonical{background:#fff;border:1px solid #d8e1e5;border-radius:20px;padding:24px 28px;box-shadow:0 8px 24px #29445008}
#tt-v2:is(.tt-activity-preview,.tt-student-sheet)>main>.resource-heading,#tt-v2 #worksheet-preview .worksheet-title-panel{background:transparent;border:0;border-bottom:1px solid #d8e1e5;border-radius:0;box-shadow:none;margin:0;padding:0 0 24px;text-align:center}
#tt-v2:is(.tt-activity-preview,.tt-student-sheet)>main>.resource-heading h1,#tt-v2 #worksheet-preview .worksheet-title-panel h1{font-family:Arial,sans-serif;font-size:34px;font-weight:600;line-height:1.25;margin:0;text-align:center}
#tt-v2:is(.tt-activity-preview,.tt-student-sheet)>main>.resource-heading .resource-meta{display:none}
#tt-v2:is(.tt-activity-preview,.tt-student-sheet)>main>.learning-guide,#tt-v2 #worksheet-preview .learning-guide{background:transparent;border:0;border-bottom:1px solid #d8e1e5;border-radius:0;box-shadow:none;margin:0;padding:18px 0}
#tt-v2:is(.tt-activity-preview,.tt-student-sheet)>main>.sheet,#tt-v2 #worksheet-preview .worksheet-canonical>.sheet{background:transparent;border:0;border-radius:0;box-shadow:none;margin:0;padding:24px 0}
#tt-v2:is(.tt-activity-preview,.tt-student-sheet)>main>.sheet+.sheet,#tt-v2 #worksheet-preview .worksheet-canonical>.sheet+.sheet{border-top:1px solid #d8e1e5}
@media(max-width:650px){#tt-v2:is(.tt-activity-preview,.tt-student-sheet)>main,#tt-v2 #worksheet-preview>.worksheet-canonical{padding:20px 16px}#tt-v2:is(.tt-activity-preview,.tt-student-sheet)>main>.resource-heading h1,#tt-v2 #worksheet-preview .worksheet-title-panel h1{font-size:28px}}
}

#tt-v2[data-custom-resource-id] .resources-navigation{margin-bottom:22px}#tt-v2[data-custom-resource-id] .studio-workspace>.actions{margin-top:0;margin-bottom:16px}

/* Slide copy inherits its authored size rather than the resource paragraph scale. */
#tt-v2 .lesson-board .slide-rich-output p,#tt-v2 .lesson-board .slide-rich-output div,#tt-v2 .slide-live-preview .slide-rich-output p,#tt-v2 .slide-live-preview .slide-rich-output div{font-size:inherit;line-height:inherit}

#tt-v2 .reveal-cards-content .reveal-teaching-card summary,#tt-v2 .reveal-cards-content .reveal-card-answer{font-size:var(--slide-card-size,24px)}

/* Keep practice numbers intact and prompts centered at the authored type size. */
#tt-v2 .reveal-cards-content .reveal-card-number{flex:0 0 2ch;white-space:nowrap;line-height:1.4}
#tt-v2 .reveal-cards-content .reveal-teaching-card summary>span:nth-child(2){flex:1;min-width:0;text-align:center;line-height:1.4}
#tt-v2 .reveal-cards-content .reveal-teaching-card .reveal-card-answer{justify-content:center;text-align:center;padding:12px 16px;line-height:1.4}
#tt-v2 .slide-live-preview .reveal-cards-content .reveal-teaching-card summary,#tt-v2 .slide-live-preview .reveal-cards-content .reveal-card-answer{font-size:16px}

/* Practice prompts and revealed answers share one left text edge. */
#tt-v2 .reveal-cards-content .reveal-teaching-card summary>span:nth-child(2){text-align:left}
#tt-v2 .reveal-cards-content .reveal-teaching-card .reveal-card-answer{justify-content:flex-start;text-align:left;padding-left:calc(16px + 2ch + 16px)}
#tt-v2 .slide-practice-group .reveal-card-list{max-width:none}

/* Shared game utility controls, matching Sentence Spin. */
#tt-v2 .game-top-controls{align-items:center;justify-content:flex-end;flex-wrap:wrap;max-width:calc(100% - 40px);z-index:5}
#tt-v2 .game-top-controls [data-game]{margin:0}
@media(max-width:650px){#tt-v2 .game-view>.game-top-controls{position:relative;top:auto;right:auto;max-width:none;margin-bottom:20px}}
/* Centre the scaled game through flex alignment, not zoomed auto margins. */
#tt-v2.tt-classroom>.game-view{align-self:center;margin-inline:0}

/* Team Challenge: uniform enlargement and stable answer reveal. */
#tt-v2.tt-classroom:has(.game-engine[data-format="team"]){padding-bottom:24px}
#tt-v2 .game-engine[data-format="team"] .team-answer-slot{min-height:142px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:16px}
#tt-v2 .game-engine[data-format="team"] .team-answer-slot .revealed-answer{margin:0;line-height:1.4}
#tt-v2 .game-engine[data-format="team"] .team-answer-slot .actions{margin:0}

#tt-v2 .game-engine[data-format="team"]{--team-green:#f0e7fb}
#tt-v2 .game-engine[data-format="team"] .question-panel.answer-shown{animation:none}

#tt-v2.tt-classroom:fullscreen:has(.game-engine[data-format="team"]){padding-top:64px;padding-bottom:16px}

/* Shared game feedback: visual movement never changes layout. */
#tt-v2 .game-engine .play-card{box-shadow:0 3px 0 #29445112,0 5px 12px #29445109;transition:transform .16s ease,box-shadow .16s ease}
@media(hover:hover){#tt-v2 .game-engine .play-card:not(:disabled):hover{transform:translateY(-3px);box-shadow:0 6px 0 #29445110,0 9px 18px #29445114}}
#tt-v2 .game-engine .play-card:not(:disabled):active{transform:translateY(-1px) scale(.99)}
#tt-v2 .game-score-pulse{animation:game-score-pulse .48s ease-out}
@keyframes game-score-pulse{0%,100%{transform:scale(1)}45%{transform:scale(1.22);color:#24744b}}
#tt-v2 .game-view:has([data-format="team"])>h1{position:relative}
#tt-v2 .team-title-art{position:absolute;top:50%;transform:translateY(-50%);width:76px;height:64px;pointer-events:none}
#tt-v2 .team-title-art svg{width:100%;height:100%}
#tt-v2 .team-title-art-a{right:calc(50% + 190px);color:#4388a6;--art-fill:#e2f2ff}
#tt-v2 .team-title-art-b{left:calc(50% + 190px);color:#9376ae;--art-fill:#f0e7fb}
@media(max-width:650px){#tt-v2 .team-title-art{display:none}}
@media(prefers-reduced-motion:reduce){#tt-v2 .game-score-pulse,#tt-v2 .game-engine[data-format="team"] .question-panel{animation:none}#tt-v2 .game-engine .play-card{transition:none}#tt-v2 .game-engine .play-card:hover,#tt-v2 .game-engine .play-card:active{transform:none}}

#tt-v2 .game-engine[data-format="team"] .team-answer-slot{position:relative}
#tt-v2 .game-engine[data-format="team"] .team-answer-slot>button{position:absolute;top:0}
#tt-v2 .game-engine[data-format="team"] .team-answer-content{display:flex;flex-direction:column;align-items:center;gap:16px;width:100%;overflow-wrap:anywhere}
#tt-v2.tt-classroom:has(.game-engine[data-format="team"]){overflow-anchor:none}

/* Last Man Standing uses the same proportional fit as Team Challenge. */
#tt-v2.tt-classroom:has(.game-engine[data-format="hangman"]){padding-bottom:24px;overflow-anchor:none}
#tt-v2.tt-classroom:fullscreen:has(.game-engine[data-format="hangman"]){padding-top:64px;padding-bottom:16px}
#tt-v2 .game-engine[data-format="hangman"] .hangman-primary{margin-top:24px;min-height:112px}

/* Last Man Standing visual polish, with no layout-changing animation. */
#tt-v2 .game-engine[data-format="hangman"]{--team-green:#f0e7fb;--team-lavender:#fbe7ef}
#tt-v2 .hangman-board>.hangman-alphabet button{background:#fff;color:#294451;border:1px solid #ccdce4;box-shadow:0 2px 3px #29445109;transition:background .15s,box-shadow .15s}
#tt-v2 .hangman-board>.hangman-alphabet button:not(:disabled):hover{background:#f4f9fc;box-shadow:0 3px 7px #29445118}
#tt-v2 .hangman-board>.hangman-alphabet button.letter-used{opacity:.38;box-shadow:none}
#tt-v2 .hangman-board .hangman-drawing{border:1px solid #d9e4ea;box-shadow:0 3px 10px #2944510b}
#tt-v2 .hangman-new-stroke{stroke-dasharray:1;animation:hangman-draw .4s ease-out both}
#tt-v2 .hangman-letter-reveal{animation:hangman-letter-reveal .45s ease-out}
#tt-v2 .hangman-letter-picked{animation:hangman-letter-picked .5s ease-out}
@keyframes hangman-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes hangman-letter-reveal{0%{color:#297b61;text-shadow:0 0 12px #64c6a8}100%{color:inherit;text-shadow:none}}
@keyframes hangman-letter-picked{0%,45%{background:#e2f2ff;opacity:1}100%{background:#fff;opacity:.38}}
@media(prefers-reduced-motion:reduce){#tt-v2 .hangman-new-stroke,#tt-v2 .hangman-letter-reveal,#tt-v2 .hangman-letter-picked{animation:none}#tt-v2 .hangman-board>.hangman-alphabet button{transition:none}}
/* Align the alphabet and puzzle with the outer scoreboard edges. */
#tt-v2 .game-engine[data-format="hangman"] .hangman-board>.hangman-alphabet,#tt-v2 .game-engine[data-format="hangman"] .hangman-board>.hangman-layout{width:100%;max-width:none;box-sizing:border-box}
/* Keep the desktop Solve form in one clear row. */
#tt-v2 .hangman-primary [data-hangman-form]{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:16px;max-width:none}
#tt-v2 .hangman-primary [data-hangman-form] label{order:0;flex:none;margin:0}
#tt-v2 .hangman-primary [data-hangman-form] input{order:1;flex:1 1 220px;max-width:360px;width:auto;margin:0}
#tt-v2 .hangman-primary [data-hangman-form] .actions{order:2;display:flex;flex:none;gap:12px;margin:0}
@media(max-width:700px){#tt-v2 .hangman-primary [data-hangman-form] label{flex-basis:100%;text-align:center;max-width:none}#tt-v2 .hangman-primary [data-hangman-form] input{flex-basis:100%}}
/* Match the approved light-blue input focus treatment. */
#tt-v2 .hangman-primary [data-hangman-form] input{border:1px solid #b9dceb}
#tt-v2 .hangman-primary [data-hangman-form] input:focus,#tt-v2 .hangman-primary [data-hangman-form] input:focus-visible{border-color:#86c5e2;outline:2px solid #cceaf8;outline-offset:2px;box-shadow:none}
/* Matching Pairs shares the fitted classroom frame and subtle feedback. */
#tt-v2.tt-classroom:has(.game-engine[data-format="matching"]){padding-bottom:24px;overflow-anchor:none}
#tt-v2.tt-classroom:fullscreen:has(.game-engine[data-format="matching"]){padding-top:64px;padding-bottom:16px}
#tt-v2 .game-engine[data-format="matching"]{--team-green:#f0e7fb}
#tt-v2 .game-view:has([data-format="matching"])>h1{position:relative}
#tt-v2 .game-engine[data-format="matching"] .match-columns .play-card.matching-pair-success{animation:matching-pair-success .65s ease-out}
@keyframes matching-pair-success{0%,45%{opacity:1;filter:none;box-shadow:0 0 0 3px #a4d7c0,0 0 18px #a4d7c080}100%{opacity:1;filter:none;box-shadow:none}}
@media(prefers-reduced-motion:reduce){#tt-v2 .game-engine[data-format="matching"] .match-columns .play-card.matching-pair-success{animation:none}}
/* Simplified matching board: one calm colour per side. */
#tt-v2 .matching-title-art{display:none}
#tt-v2 .game-engine[data-format="matching"] .match-columns>div:first-child .play-card{background:#fff4d9!important}
#tt-v2 .game-engine[data-format="matching"] .match-columns>div:last-child .play-card{background:#fce8dd!important}


/* Completed pairs stay recognisable as cards without competing with available choices. */
#tt-v2 .game-engine[data-format="matching"] .match-columns>div .play-card:disabled{opacity:1;filter:none;color:#7b878b;border-color:#c4cdd0;box-shadow:none}
#tt-v2 .game-engine[data-format="matching"] .match-columns>div:first-child .play-card:disabled{background:#faf7ef!important}
#tt-v2 .game-engine[data-format="matching"] .match-columns>div:last-child .play-card:disabled{background:#faf3ef!important}

#tt-v2 .game-engine[data-format="matching"] .match-columns .play-card:disabled .matching-card-text{opacity:.45}

/* Memory Match retains its palette and flip, with stable fitted size and visible completed cards. */
#tt-v2.tt-classroom:has(.game-engine[data-format="memory"]){padding-bottom:24px;overflow-anchor:none}
#tt-v2.tt-classroom:fullscreen:has(.game-engine[data-format="memory"]){padding-top:64px;padding-bottom:16px}
#tt-v2 .game-engine[data-format="memory"] .memory-card.matched{opacity:1;filter:none}
#tt-v2 .game-engine[data-format="memory"] .memory-card.matched .card-front{background:#f8fafb;border-color:#c4cdd0;box-shadow:none}
#tt-v2 .game-engine[data-format="memory"] .memory-card.matched .memory-card-text,#tt-v2 .game-engine[data-format="memory"] .memory-card.matched .card-front img{opacity:.16}
#tt-v2 .game-engine[data-format="memory"] .card-back{box-shadow:0 3px 5px #29445112}
#tt-v2 .game-engine[data-format="memory"] .memory-pair-success .card-front{animation:memory-pair-success .65s ease-out}
@keyframes memory-pair-success{0%,45%{box-shadow:inset 0 0 0 3px #a4d7c0,0 0 14px #a4d7c070}100%{box-shadow:none}}
@media(prefers-reduced-motion:reduce){#tt-v2 .game-engine[data-format="memory"] .memory-pair-success .card-front{animation:none}#tt-v2 .game-engine[data-format="memory"] .flip-inner{transition:none}}

/* Same base card geometry and number typography as Team Challenge. */
#tt-v2 .game-engine[data-format="memory"]{--team-green:#f0e7fb}
#tt-v2 .game-engine[data-format="memory"] .memory-board{gap:14px}
#tt-v2 .game-engine[data-format="memory"] .memory-card{flex-basis:calc((100% - 42px)/4)}
#tt-v2 .game-engine[data-format="memory"] .card-back{font-family:Inter,Arial,sans-serif;font-size:36px;font-weight:650}
@media(max-width:700px){#tt-v2 .game-engine[data-format="memory"] .memory-card{flex-basis:calc((100% - 28px)/3)}}
@media(max-width:500px){#tt-v2 .game-engine[data-format="memory"] .memory-card{flex-basis:calc((100% - 14px)/2)}}
#tt-v2.tt-classroom:fullscreen:has(.game-engine[data-format="memory"]){padding-bottom:48px}

/* Spin and Speak: shared fit, calm team colours and steady prompt area. */
#tt-v2.tt-classroom:has(.game-engine[data-format="spin"]){padding-bottom:32px;overflow-anchor:none}
#tt-v2.tt-classroom:fullscreen:has(.game-engine[data-format="spin"]){padding-top:64px;padding-bottom:48px}
#tt-v2 .game-engine[data-format="spin"]{--team-green:#f0e7fb}
#tt-v2 .game-view:has(.game-engine[data-format="spin"])>h1{top:auto}
#tt-v2 .game-engine[data-format="spin"] .spin-layout{align-items:start;min-height:394px}
#tt-v2 .game-engine[data-format="spin"] .spin-prompt .question-panel{min-height:394px;box-shadow:0 3px 10px #2944510b}
#tt-v2 .game-engine[data-format="spin"] .spin-prompt .question-panel p{line-height:1.5}
#tt-v2 .game-engine[data-format="spin"] .wheel-number{transition:transform 4.5s cubic-bezier(.12,.65,.15,1)}
@media(prefers-reduced-motion:reduce){#tt-v2 .game-engine[data-format="spin"] .wheel-number,#tt-v2 .game-engine[data-format="spin"] .spin-wheel{transition:none}}
#tt-v2 .game-engine[data-format="spin"] .spin-prompt .question-panel{background:#fff;border:1px solid #d8e4ea;box-shadow:0 3px 10px #2944510b}
#tt-v2 .game-engine[data-format="sorting"] .sorting-groups .category-heading{padding-top:5px;padding-bottom:12px}
/* Separate category colours from team ownership. */
#tt-v2 .game-engine[data-format="sorting"]{--team-green:#f0e7fb}
#tt-v2 .game-engine[data-format="sorting"] .sorting-groups>section:nth-child(3n+1){background:#fff4d9}
#tt-v2 .game-engine[data-format="sorting"] .sorting-groups>section:nth-child(3n+2){background:#fce8dd}
#tt-v2 .game-engine[data-format="sorting"] .sorting-groups>section:nth-child(3n){background:#e2f5ec}

#tt-v2.tt-classroom:has(.game-engine[data-format="sorting"]){padding-bottom:32px;overflow-anchor:none}
#tt-v2.tt-classroom:fullscreen:has(.game-engine[data-format="sorting"]){padding-top:64px;padding-bottom:48px}
#tt-v2 .game-engine[data-format="sorting"] .sorting-success{animation:sorting-success .65s ease-out}
@keyframes sorting-success{0%,45%{box-shadow:inset 0 0 0 3px #8ac8ac,0 0 14px #a4d7c060}100%{box-shadow:none}}
@media(prefers-reduced-motion:reduce){#tt-v2 .game-engine[data-format="sorting"] .sorting-success{animation:none}}
#tt-v2 .game-engine[data-format="sorting"] .sorted-stack{gap:6px;padding:10px 0}
#tt-v2 .game-engine[data-format="sorting"] .sorted-card{padding:6px 14px;line-height:1.3}
#tt-v2 .game-engine[data-format="sorting"] .sorting-words .play-card[aria-hidden="true"]{visibility:hidden}

/* Sentence Ordering: one instruction, steady sentence space and quiet progress. */
#tt-v2.tt-classroom:has(.game-engine[data-format="ordering"]){padding-bottom:32px;overflow-anchor:none}
#tt-v2.tt-classroom:fullscreen:has(.game-engine[data-format="ordering"]){padding-top:64px;padding-bottom:48px}
#tt-v2 .game-engine[data-format="ordering"]{--team-green:#f0e7fb;position:relative;padding-bottom:32px}
#tt-v2 .game-engine[data-format="ordering"] .sentence-build{background:#fff;border:1px solid #c5dce7;border-radius:18px;padding:20px;box-sizing:border-box;margin:24px 0;align-content:center;gap:12px}
#tt-v2 .game-engine[data-format="ordering"] .word-options{gap:12px;margin:0 20px 24px;min-height:64px}
#tt-v2 .game-engine[data-format="ordering"] .word-options button:disabled{display:inline-flex;opacity:.25}
#tt-v2 .game-engine[data-format="ordering"] .ordering-progress{position:absolute;right:0;bottom:0;color:#63808c;font-size:14px}
#tt-v2 .game-engine[data-format="ordering"] .game-feedback:empty{display:none}

#tt-v2 .game-engine[data-format="ordering"] .ordering-controls{margin-top:12px}
#tt-v2 .game-engine[data-format="ordering"] .ordering-controls .revealed-answer{margin:12px 0 0;font-size:24px;line-height:1.4}

/* Picture Quiz groups the picture and choices in one steady classroom panel. */
#tt-v2.tt-classroom:has(.game-engine[data-format="picture"]){padding-bottom:32px;overflow-anchor:none}
#tt-v2.tt-classroom:fullscreen:has(.game-engine[data-format="picture"]){padding-top:64px;padding-bottom:48px}
#tt-v2 .game-engine[data-format="picture"]{--team-green:#f0e7fb}
#tt-v2 .game-engine[data-format="picture"] .game-feedback:empty{display:none}
#tt-v2 .quiz-panel{position:relative;background:#fff;border:1px solid #d8e4ea;border-radius:20px;padding:22px 30px 32px;margin-top:24px;box-shadow:0 3px 10px #2944510b}
#tt-v2 .quiz-panel .quiz-question-heading{margin:0 0 20px}
#tt-v2 .quiz-panel .quiz-progress{position:absolute;right:20px;bottom:12px;font-size:14px;color:#63808c}
#tt-v2 .quiz-content{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:32px}
#tt-v2 .quiz-panel .quiz-picture{height:290px;width:100%;object-fit:contain;margin:0}
#tt-v2 .quiz-panel .quiz-options{display:grid;grid-template-columns:1fr;gap:12px;width:100%;max-width:none;margin:0}
#tt-v2 .quiz-panel .quiz-options .play-card{width:100%;min-height:58px;background:#f7f9fa;border:1px solid #d8e4ea;font-size:24px}
#tt-v2 .quiz-panel .quiz-result{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:18px;min-height:44px}
#tt-v2 .quiz-panel .quiz-result .revealed-answer{font-size:24px;line-height:1.4;margin:0}
@media(max-width:700px){#tt-v2 .quiz-content{grid-template-columns:1fr;gap:20px}#tt-v2 .quiz-panel{padding:20px 18px 36px}#tt-v2 .quiz-panel .quiz-picture{height:230px}#tt-v2 .quiz-panel .quiz-result{flex-wrap:wrap}}
#tt-v2 .game-engine[data-format="picture"] .quiz-panel .quiz-options .play-card{background:#f7f9fa!important}

/* Feedback belongs to the choice, without changing its dimensions or text size. */
#tt-v2 .game-engine[data-format="picture"] .quiz-options .play-card{position:relative;padding:12px 48px;transition:background-color .18s,box-shadow .18s;transform:none!important}
#tt-v2 .game-engine[data-format="picture"] .quiz-options .play-card:hover:not(:disabled){background:#eef6fa!important;box-shadow:0 0 0 2px #c5e2ee;transform:none!important}
#tt-v2 .game-engine[data-format="picture"] .quiz-options .play-card:disabled{opacity:1;filter:none;color:#294451;-webkit-text-fill-color:#294451}
#tt-v2 .game-engine[data-format="picture"] .quiz-options .play-card[data-quiz-result="correct"]{background:#e5f4e9!important;border-color:#8cbea0;animation:quiz-choice-success .6s ease-out}
#tt-v2 .game-engine[data-format="picture"] .quiz-options .play-card[data-quiz-result="incorrect"]{background:#fff1ec!important;border-color:#d6a394}
#tt-v2 .quiz-options .play-card[data-quiz-result="correct"]::after{content:'✓';position:absolute;right:18px;color:#387454;-webkit-text-fill-color:#387454}
#tt-v2 .quiz-options .play-card[data-quiz-result="incorrect"]::after{content:'×';position:absolute;right:18px;color:#a15743;-webkit-text-fill-color:#a15743}
@keyframes quiz-choice-success{0%,45%{box-shadow:0 0 0 3px #a4d7c0,0 0 14px #a4d7c060}100%{box-shadow:none}}
@media(prefers-reduced-motion:reduce){#tt-v2 .game-engine[data-format="picture"] .quiz-options .play-card{animation:none!important;transition:none}}
/* Match Team Challenge result symbols and bring the next action closer. */
#tt-v2 .game-engine[data-format="picture"] .quiz-options .play-card[data-quiz-result]::after{font-family:inherit;font-size:32px;font-weight:650;line-height:1}
#tt-v2 .game-engine[data-format="picture"] .quiz-options .play-card[data-quiz-result="incorrect"]::after{content:'✗'}
#tt-v2 .game-engine[data-format="picture"] .quiz-options .play-card[data-quiz-result="incorrect"]{outline:none!important;box-shadow:0 0 0 1px #d6a394}
#tt-v2 .quiz-panel .quiz-result{margin-top:8px}

/* Noughts and Crosses: board left, steady question and answer panel right. */
#tt-v2.tt-classroom:has(.game-engine[data-format="noughts"]){padding-bottom:32px;overflow-anchor:none}
#tt-v2.tt-classroom:fullscreen:has(.game-engine[data-format="noughts"]){padding-top:64px;padding-bottom:48px}
#tt-v2 .game-engine[data-format="noughts"]{--team-green:#f0e7fb}
#tt-v2 .noughts-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:stretch;margin:24px 0 0}
#tt-v2 .noughts-layout .noughts-board{grid-column:1;grid-row:1;width:100%;max-width:480px;justify-self:center;gap:12px}
#tt-v2 .noughts-layout .noughts-board button{min-height:124px;aspect-ratio:1;font-size:36px;font-weight:650;opacity:1;filter:none}
#tt-v2 .noughts-layout .question-panel,#tt-v2 .noughts-layout .round-celebration{grid-column:2;grid-row:1;background:#fff;border:1px solid #d8e4ea;border-radius:20px;padding:28px;display:flex;flex-direction:column;justify-content:center;box-sizing:border-box}
#tt-v2 .noughts-reveal{position:relative;min-height:140px;display:grid;align-items:center}
#tt-v2 .noughts-reveal>[data-game="reveal"]{position:absolute;top:30px;left:50%;transform:translateX(-50%)}
#tt-v2 .noughts-layout .noughts-board button[data-claimed]{font-size:0}
#tt-v2 .noughts-board button[data-claimed="0"]::after{width:64px;height:64px;border-width:7px}
#tt-v2 .noughts-board button[data-claimed="1"]::before,#tt-v2 .noughts-board button[data-claimed="1"]::after{width:74px;height:7px;background:#816398}
@media(max-width:760px){#tt-v2 .noughts-layout{display:flex;flex-direction:column}#tt-v2 .noughts-layout .noughts-board{order:0}#tt-v2 .noughts-layout .question-panel{order:1}#tt-v2 .noughts-layout .noughts-board button{min-height:80px}}
#tt-v2 .game-engine[data-format="noughts"] .noughts-layout .noughts-board{max-width:440px!important} 
#tt-v2 .game-engine[data-format="noughts"] .noughts-layout .noughts-board{max-width:none!important}#tt-v2 .game-engine[data-format="noughts"] .noughts-layout .noughts-board button{aspect-ratio:auto;height:138px;min-height:138px}

/* Reserve the answer width and controls before reveal, keeping both modes steady. */
#tt-v2 .noughts-gap{display:inline-grid;vertical-align:baseline}
#tt-v2 .noughts-gap>span,#tt-v2 .noughts-gap>strong{grid-area:1/1;text-align:center;padding:0 .12em}
#tt-v2 .noughts-layout .question-panel h2{font-size:30px;font-weight:400;line-height:1.4;margin:0!important}
#tt-v2 .noughts-layout .question-panel .noughts-answer{font-family:inherit;font-size:30px!important;font-weight:700!important;line-height:1.4;margin:10px 0 0}
#tt-v2 .noughts-layout .noughts-reveal{min-height:64px;margin-top:24px;display:grid;align-items:center}
#tt-v2 .noughts-reveal>[data-game="reveal"]{top:10px}
#tt-v2 .noughts-layout .noughts-reveal .actions{margin:0;gap:12px}
#tt-v2 .noughts-gap{position:relative;min-width:1em}#tt-v2 .noughts-gap>strong{padding:0}#tt-v2 .noughts-gap>span{position:absolute;inset:0;padding:0;overflow:hidden;white-space:nowrap}
#tt-v2 .noughts-gap{min-width:0}

/* Separate answers: a little more breathing room below the question. */
.game-engine[data-format='noughts'] .noughts-answer{margin-top:18px!important;}
/* Noughts editor: consistent field rhythm, including nested select labels. */
#tt-v2 .studio-editor[data-format="noughts"]{padding-top:24px;padding-bottom:24px}
#tt-v2 .studio-editor[data-format="noughts"] .studio-nav{margin:0 0 20px}
#tt-v2 .studio-editor[data-format="noughts"]>label{display:block;margin:20px 0 0;line-height:1.4}
#tt-v2 .studio-editor[data-format="noughts"] .studio-nav+label{margin-top:0}
#tt-v2 .studio-editor[data-format="noughts"] label>select,
#tt-v2 .studio-editor[data-format="noughts"] label>textarea{display:block;margin:10px 0 0!important}
#tt-v2 .studio-editor[data-format="noughts"]>.hint{margin:10px 0 20px;line-height:1.5}
#tt-v2 .studio-editor[data-format="noughts"]>[data-studio-field="q"]{margin:0!important}
#tt-v2 .studio-editor[data-format="noughts"]>[data-studio-field="q"]+label{margin-top:20px}
#tt-v2 .studio-view:has(.studio-editor[data-format="noughts"]) .studio-name-field>input,
#tt-v2 .studio-view:has(.studio-editor[data-format="noughts"]) .studio-name-field>textarea{display:block;margin-top:10px!important}
#tt-v2 .studio-editor[data-format="noughts"]>[data-gap-hint][hidden]{display:none!important}
#tt-v2 .studio-editor[data-format="noughts"]>[data-gap-hint][hidden]+[data-studio-field="q"]{margin-top:20px!important}


/* Narrow-screen controls share a size even when a label wraps. */
@media(max-width:650px){
 #tt-v2 .workspace-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;align-items:stretch;gap:10px}
 #tt-v2 .resources-navigation .workspace-nav{padding:8px 12px}
 #tt-v2 .workspace-nav>:is(a,button),#tt-v2 .workspace-nav .worksheet-create-menu>summary{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;height:100%;min-height:48px;min-width:0;margin:0;padding:10px 12px;line-height:1.3;white-space:normal;text-align:center}
 #tt-v2 .workspace-nav>.worksheet-create-menu{min-width:0;align-self:stretch}
 #tt-v2 .actions{align-items:stretch}
 #tt-v2 .actions>:is(button,a.button){display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:48px;margin-top:0;margin-bottom:0;line-height:1.3;text-align:center;white-space:normal}
}

@media(max-width:650px){
 #tt-v2 .resources-navigation{padding:8px}
 #tt-v2 .resources-navigation .workspace-nav{padding:8px 0}
 #tt-v2 .resources-navigation .workspace-nav a.resource-back-arrow,
 #tt-v2 .resources-navigation .workspace-nav a.resource-back-arrow:hover,
 #tt-v2 .resources-navigation .workspace-nav a.resource-back-arrow:focus{position:static;transform:none;width:100%;height:100%;min-height:48px;border-radius:9px;background:#e4f4ff;border:1px solid #acd8ec;padding:10px 12px}
 #tt-v2 .resource-card .resource-actions{grid-auto-rows:1fr;align-items:stretch}
 #tt-v2 .resource-actions>:is(a.button,button){height:100%;display:flex;align-items:center;justify-content:center;white-space:normal;line-height:1.3}
 #tt-v2 .dash-filters{display:flex;flex-wrap:wrap;gap:12px}
 #tt-v2 .dash-filters .dash-search{flex:1 1 100%;min-width:0;width:100%}
 #tt-v2 .dash-filters .dash-search input{width:100%;min-width:0;box-sizing:border-box}
}
/* Keep native class selectors readable at narrow widths. */
#tt-v2 .resource-share-dialog .share-class-row select,
#tt-v2 .resource-share-dialog .share-class-panel>select{min-height:48px;height:auto;line-height:1.3;padding:10px 34px 10px 12px;box-sizing:border-box;font-size:16px}
@media(max-width:520px){#tt-v2 .resource-share-dialog{max-width:calc(100vw - 24px);box-sizing:border-box}#tt-v2 .resource-share-dialog .actions{align-items:stretch}#tt-v2 .resource-share-dialog .actions button{min-height:48px;line-height:1.3;white-space:normal}}
/* Short presentation windows use the same proportional canvas as fullscreen. */
@media(max-height:539px){#tt-v2.tt-presentation .lesson-board{position:fixed!important;left:50%!important;top:var(--slide-full-top,80px)!important;width:1050px!important;max-width:none!important;min-width:1050px!important;height:690px!important;min-height:690px!important;max-height:690px!important;margin:0!important;box-sizing:border-box;transform:translateX(-50%) scale(var(--slide-full-scale,.4));transform-origin:top center}}
/* Consistent practice cards with aligned prompt and reveal columns. */
#tt-v2 .slide-introduction.slide-rich-output p{font:inherit;text-align:inherit;margin:0}
#tt-v2 .reveal-cards-content[data-text-align] .reveal-card-list .reveal-teaching-card{margin:10px 0}
#tt-v2 .reveal-cards-content[data-text-align] .reveal-card-list .reveal-teaching-card>summary,
#tt-v2 .reveal-cards-content[data-text-align] .reveal-card-list .reveal-teaching-card>.reveal-card-answer{min-height:64px;font-size:var(--slide-card-size,24px);padding-top:12px;padding-bottom:12px}
#tt-v2 .reveal-cards-content[data-text-align="center"] .reveal-teaching-card>summary{position:relative;display:block;padding-inline:150px}
#tt-v2 .reveal-cards-content[data-text-align="center"] .reveal-teaching-card>summary>.reveal-card-number{position:absolute;left:16px;top:50%;transform:translateY(-50%)}
#tt-v2 .reveal-cards-content[data-text-align="center"] .reveal-teaching-card>summary>span:nth-child(2){display:block;text-align:center}
#tt-v2 .reveal-cards-content[data-text-align="center"] .reveal-teaching-card>summary>.reveal-card-action{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:16px;padding:8px 12px}
#tt-v2 .reveal-cards-content[data-answer-align="center"] .reveal-teaching-card>.reveal-card-answer{justify-content:center;text-align:center;padding-inline:16px}
#tt-v2 .reveal-cards-content[data-text-align="left"] .reveal-teaching-card>summary>span:nth-child(2){text-align:left}
#tt-v2 .reveal-cards-content[data-answer-align="left"] .reveal-teaching-card>.reveal-card-answer{justify-content:flex-start;text-align:left;padding-left:calc(32px + 2ch)}
#tt-v2 .reveal-cards-content[data-text-align]>.reveal-cards-picture{width:440px;max-width:100%;height:200px;max-height:200px;object-fit:contain}
#tt-v2 .slide-live-preview .reveal-cards-content[data-text-align] .reveal-card-list .reveal-teaching-card>summary,
#tt-v2 .slide-live-preview .reveal-cards-content[data-text-align] .reveal-card-list .reveal-teaching-card>.reveal-card-answer{font-size:16px;min-height:44px;padding-top:8px;padding-bottom:8px}
@media(max-width:650px){#tt-v2 .reveal-cards-content[data-text-align="center"] .reveal-teaching-card>summary{padding:12px 42px}#tt-v2 .reveal-cards-content[data-text-align="center"] .reveal-teaching-card>summary>.reveal-card-action{position:absolute;right:12px;top:50%;transform:translateY(-50%);margin:0}#tt-v2 .reveal-cards-content[data-text-align="center"] .reveal-teaching-card>summary>.reveal-card-number{top:12px;transform:none}}

/* Shared worksheet controls use the established light-blue focus and selection. */
#tt-v2 .worksheet-canonical :is(input:not([type=checkbox]):not([type=radio]),textarea,select):focus{background:#fff;border-color:#72bddc;outline:1px solid #72bddc;outline-offset:0;box-shadow:0 0 0 2px #72bddc20}
#tt-v2 .worksheet-canonical :is(input[type=checkbox],input[type=radio]){accent-color:#72bddc}
#tt-v2 .worksheet-canonical :is(input,textarea)::selection{background:#ccecff;color:#294653}

/* Native checkboxes must not inherit text-field dimensions or focus shadows. */
#tt-v2 .worksheet-canonical input:is([type=checkbox],[type=radio]){appearance:auto;min-height:0;min-width:0;padding:0;box-shadow:none}
#tt-v2 .worksheet-canonical input:is([type=checkbox],[type=radio]):focus{box-shadow:none;outline:none}
#tt-v2 .worksheet-canonical input:is([type=checkbox],[type=radio]):focus-visible{outline:2px solid #72bddc;outline-offset:2px}

/* Approved worksheet typography and spacing, Everyday Adjectives review. */
#tt-v2 :is(.sheet:has(h2[id^="adj-heading-"]),.worksheet-canonical:not(.ws-extended)>.sheet){font-family:Inter,Arial,sans-serif;font-size:17px}
#tt-v2 :is(.sheet:has(h2[id^="adj-heading-"]),.worksheet-canonical:not(.ws-extended)>.sheet) :is(p,label,input,select,legend,.sentence-line,.picture-answer,.adjective-bank,.choice-chip){font-family:Inter,Arial,sans-serif;font-size:17px}
#tt-v2 .sheet>h2[id^="adj-heading-"]{font:700 18px/1.6 Inter,Arial,sans-serif;display:flex;align-items:baseline;gap:12px;margin:0 0 20px}
#tt-v2 .sheet>h2[id^="adj-heading-"] .section-letter{margin-right:0;flex:none}

#tt-v2 :is(.sheet:has(h2[id^="adj-heading-"]),.worksheet-canonical:not(.ws-extended)>.sheet) .check-row{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin:20px 0 0;padding:24px 0;border-top:1px solid #e3e9eb}
#tt-v2 :is(.sheet:has(h2[id^="adj-heading-"]),.worksheet-canonical:not(.ws-extended)>.sheet):has(>.check-row){padding-bottom:0}
#tt-v2 :is(.sheet:has(h2[id^="adj-heading-"]),.worksheet-canonical:not(.ws-extended)>.sheet) .check-row>*{margin:0;align-self:center}
#tt-v2 :is(.sheet:has(h2[id^="adj-heading-"]),.worksheet-canonical:not(.ws-extended)>.sheet) .sentence-question{padding:20px 0 24px}
#tt-v2 :is(.sheet:has(h2[id^="adj-heading-"]),.worksheet-canonical:not(.ws-extended)>.sheet) .sentence-question>label{display:block;margin:0 0 10px}
#tt-v2 :is(.sheet:has(h2[id^="adj-heading-"]),.worksheet-canonical:not(.ws-extended)>.sheet) input:not([type=radio]):not([type=checkbox]),#tt-v2 :is(.sheet:has(h2[id^="adj-heading-"]),.worksheet-canonical:not(.ws-extended)>.sheet) select{box-sizing:border-box;height:44px;min-height:44px;padding:8px 12px}
#tt-v2 :is(.sheet:has(h2[id^="adj-heading-"]),.worksheet-canonical:not(.ws-extended)>.sheet) .sentence-question>input{display:block;width:100%;max-width:none;margin:0}
#tt-v2 :is(.sheet:has(h2[id^="adj-heading-"]),.worksheet-canonical:not(.ws-extended)>.sheet) .sentence-line input{margin:4px;vertical-align:middle}
#tt-v2 :is(.sheet:has(h2[id^="adj-heading-"]),.worksheet-canonical:not(.ws-extended)>.sheet) :is(input:not([type=radio]):not([type=checkbox]),select):focus{background:#fff;border-color:#72bddc;outline:1px solid #72bddc;box-shadow:0 0 0 2px #72bddc20}
#tt-v2 :is(.sheet:has(h2[id^="adj-heading-"]),.worksheet-canonical:not(.ws-extended)>.sheet) .answer-feedback:empty{display:none;margin:0;padding:0}

/* Balanced word-bank rows for the twelve-word picture exercise. */
#tt-v2 :is(.sheet:has(>#adj-heading-A),.worksheet-canonical:not(.ws-extended)>.ws-type-pictures)>.interactive-bank:not(.bank-docked){display:grid;grid-template-columns:repeat(6,minmax(0,110px));justify-content:center;gap:16px 20px}
#tt-v2 :is(.sheet:has(>#adj-heading-A),.worksheet-canonical:not(.ws-extended)>.ws-type-pictures)>.interactive-bank:not(.bank-docked)>.word-chip{width:100%;min-width:0;margin:0;box-sizing:border-box}
@media(max-width:800px){#tt-v2 :is(.sheet:has(>#adj-heading-A),.worksheet-canonical:not(.ws-extended)>.ws-type-pictures)>.interactive-bank:not(.bank-docked){grid-template-columns:repeat(4,minmax(0,110px));gap:12px}}
@media(max-width:520px){#tt-v2 :is(.sheet:has(>#adj-heading-A),.worksheet-canonical:not(.ws-extended)>.ws-type-pictures)>.interactive-bank:not(.bank-docked){grid-template-columns:repeat(3,minmax(0,110px));gap:10px}}

#tt-v2 .check-row>p[id^="score-"]:empty{display:none;margin:0;padding:0}

#tt-v2 .picture-question{position:relative}
#tt-v2 .picture-question>.answer-feedback:not(:empty){position:absolute;top:12px;right:12px;display:inline-flex;align-items:center;justify-content:center;width:25px;height:27px;min-height:0;padding:0;margin:0;border-radius:5px;font-size:19px;line-height:1;background:#fff0e1;color:#9c3e0a}
#tt-v2 .picture-question>.answer-feedback.correct:not(:empty){background:#d2efbd;color:#236c37}

/* Opposite matching shares picture placement controls. */
#tt-v2 .opposite-answer{display:flex;align-items:center;gap:12px;min-width:0}
#tt-v2 .opposite-answer .opposite-prompt{font-weight:700;min-width:80px}
#tt-v2 .opposite-answer .drop-slot{flex:1;min-width:0;height:44px}
#tt-v2 .opposite-answer .return-word{display:inline-flex;flex:0 0 32px;width:32px;justify-content:center}
#tt-v2 .opposite-answer .return-word[hidden]{display:inline-flex!important;visibility:hidden;pointer-events:none}

/* Shared compact worksheet result icons; preserve full formatting guidance. */
#tt-v2 :is(.sheet:has(h2[id^="adj-heading-"]),.worksheet-canonical:not(.ws-extended)>.sheet) .answer-feedback:not(:empty):not(.format):not([data-ws-section-score]):not([id^="score-"]){display:inline-flex;align-items:center;justify-content:center;flex:0 0 25px;width:25px;height:27px;min-height:0;padding:0;margin:0;border-radius:5px;font-size:19px;line-height:1;background:#fff0e1;color:#9c3e0a}
#tt-v2 :is(.sheet:has(h2[id^="adj-heading-"]),.worksheet-canonical:not(.ws-extended)>.sheet) .answer-feedback.correct:not(:empty){background:#d2efbd;color:#236c37}
#tt-v2 .rewrite-prompt{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:10px}
#tt-v2 .rewrite-prompt>label{margin:0}
#tt-v2 .sentence-line>.answer-feedback{margin-left:7px!important}

/* Stable matching columns: prompt, answer, return control, result. */
#tt-v2 .opposite-answer{display:grid;grid-template-columns:80px minmax(0,1fr) 32px 25px;align-items:center;column-gap:12px}
#tt-v2 .opposite-answer .drop-slot{grid-column:2;width:100%;box-sizing:border-box;min-height:48px;height:48px;margin:0}
#tt-v2 .opposite-answer .return-word{grid-column:3;width:32px;box-sizing:border-box;margin:0}
#tt-v2 .opposite-answer .answer-feedback{grid-column:4}
@media(max-width:520px){#tt-v2 .opposite-answer{grid-template-columns:65px minmax(0,1fr) 26px 25px;column-gap:7px}#tt-v2 .opposite-answer .return-word{width:26px}#tt-v2 .opposite-answer .opposite-prompt{min-width:0}}
/* Typed exercise: a reference word list rather than draggable tiles. */
#tt-v2 :is(.sheet:has(>#adj-heading-C),.worksheet-canonical:not(.ws-extended)>.ws-type-gap)>.adjective-bank{display:flex;flex-wrap:wrap;justify-content:center;gap:16px 40px;padding:18px 24px;background:#fff;border:1px solid #d0e1e9;box-shadow:none}
#tt-v2 :is(.sheet:has(>#adj-heading-C),.worksheet-canonical:not(.ws-extended)>.ws-type-gap)>.adjective-bank>span{display:inline;background:transparent;border:0;border-radius:0;box-shadow:none;padding:0;margin:0;min-width:0;width:auto;font-size:17px;font-weight:600;cursor:default}
/* Reference list already supplies the gap before the first sentence. */
#tt-v2 :is(.sheet:has(>#adj-heading-C),.worksheet-canonical:not(.ws-extended)>.ws-type-gap)>.adjective-bank+.sentence-question{padding-top:0}
/* Worksheet items and answers share regular body typography. */
#tt-v2 :is(.sheet:has(h2[id^="adj-heading-"]),.worksheet-canonical:not(.ws-extended)>.sheet) :is(.opposite-prompt,.rewrite-prompt>label,.sentence-line>label,.sentence-line>span:not(.answer-feedback),.picture-answer>span,.personal-row legend,.game-row>p),
#tt-v2 :is(.sheet:has(h2[id^="adj-heading-"]),.worksheet-canonical:not(.ws-extended)>.sheet) :is(input:not([type="radio"]):not([type="checkbox"]),textarea,select,.drop-slot,.drop-slot.filled){font-family:Inter,Arial,sans-serif;font-size:17px;font-weight:400;line-height:1.5}
#tt-v2 :is(.sheet:has(h2[id^="adj-heading-"]),.worksheet-canonical:not(.ws-extended)>.sheet) .game-row>p>strong{font-weight:400}
/* Word order uses compact sentence fields and the same focus geometry as gap fill. */
#tt-v2 :is(.sheet:has(h2[id^="adj-heading-"]),.worksheet-canonical:not(.ws-extended)>.sheet) :is(input:not([type=radio]):not([type=checkbox]),select):focus{outline-offset:0}
#tt-v2 :is(.sheet:has(>#adj-heading-D),.worksheet-canonical:not(.ws-extended)>.ws-type-order)>.sentence-question{display:grid;grid-template-columns:minmax(220px,320px) minmax(220px,480px);gap:12px 24px;align-items:center}
#tt-v2 :is(.sheet:has(>#adj-heading-D),.worksheet-canonical:not(.ws-extended)>.ws-type-order) .rewrite-prompt{margin:0}
#tt-v2 :is(.sheet:has(>#adj-heading-D),.worksheet-canonical:not(.ws-extended)>.ws-type-order)>.sentence-question>input{width:100%;max-width:480px}
@media(max-width:700px){#tt-v2 :is(.sheet:has(>#adj-heading-D),.worksheet-canonical:not(.ws-extended)>.ws-type-order)>.sentence-question{grid-template-columns:minmax(0,1fr);gap:10px}}
/* Reserve a result column beside word-order fields. */
#tt-v2 :is(.sheet:has(>#adj-heading-D),.worksheet-canonical:not(.ws-extended)>.ws-type-order)>.sentence-question{grid-template-columns:minmax(180px,320px) minmax(180px,480px) minmax(25px,1fr);column-gap:12px}
#tt-v2 :is(.sheet:has(>#adj-heading-D),.worksheet-canonical:not(.ws-extended)>.ws-type-order)>.sentence-question>.answer-feedback{grid-column:3;margin:0}
@media(max-width:700px){#tt-v2 :is(.sheet:has(>#adj-heading-D),.worksheet-canonical:not(.ws-extended)>.ws-type-order)>.sentence-question{grid-template-columns:minmax(0,1fr) 25px}#tt-v2 :is(.sheet:has(>#adj-heading-D),.worksheet-canonical:not(.ws-extended)>.ws-type-order) .rewrite-prompt{grid-column:1/-1}#tt-v2 :is(.sheet:has(>#adj-heading-D),.worksheet-canonical:not(.ws-extended)>.ws-type-order)>.sentence-question>.answer-feedback{grid-column:2}#tt-v2 :is(.sheet:has(>#adj-heading-D),.worksheet-canonical:not(.ws-extended)>.ws-type-order)>.sentence-question>.answer-feedback.format{grid-column:1/-1}}

/* Wrapped instructions: badge aligns with the first text line. */
#tt-v2 .sheet :is(#adj-heading-E,#adj-heading-F){align-items:flex-start}
#tt-v2 .sheet :is(#adj-heading-E,#adj-heading-F)>.section-letter{align-self:flex-start;margin-top:0}
#tt-v2 .sheet :is(#adj-heading-E,#adj-heading-F)>span:not(.section-letter){display:block;flex:1;min-width:0;padding-top:4px}
/* Personal choices sit beside short prompts and wrap without crowding. */
#tt-v2 #personal-choices .personal-inline{display:flex;align-items:center;flex-wrap:wrap;gap:12px 18px;padding:20px 0 24px;min-width:0}
#tt-v2 #personal-choices .personal-prompt{flex:1 1 200px;font-family:Inter,Arial,sans-serif;font-size:17px;font-weight:400;line-height:1.5}
#tt-v2 #personal-choices .personal-inline .choice-chip{display:inline-flex;align-items:center;gap:8px;margin:0;padding:0;font-family:Inter,Arial,sans-serif;font-size:17px;font-weight:400;line-height:1.5}
#tt-v2 #personal-choices .personal-inline .choice-chip input{margin:0}
@media(max-width:600px){#tt-v2 #personal-choices .personal-prompt{flex-basis:100%}}

/* Align personal-choice radio controls in consistent inset columns. */
#tt-v2 #personal-choices .personal-inline{display:grid;grid-template-columns:minmax(0,250px) 82px 82px;justify-content:start;column-gap:12px;padding-right:0}
#tt-v2 #personal-choices .personal-inline .choice-chip{width:82px;justify-self:center;justify-content:flex-start}
@media(max-width:600px){#tt-v2 #personal-choices .personal-inline{grid-template-columns:82px 82px;justify-content:start;padding-right:0}#tt-v2 #personal-choices .personal-prompt{grid-column:1/-1}}
/* The instruction margin supplies the first-row gap in both choice grids. */
#tt-v2 #personal-choices>.personal-inline:nth-child(-n+2),#tt-v2 .partner-choices>.game-row:nth-child(-n+2){padding-top:0}
@media(max-width:650px){#tt-v2 #personal-choices>.personal-inline:nth-child(2){padding-top:20px}#tt-v2 .partner-choices>.game-row:nth-child(2){padding-top:18px}}
#tt-v2 .partner-choices .choice-chip{font-family:Inter,Arial,sans-serif;font-size:17px;font-weight:400}

/* Keep the tightly framed original price illustration visually balanced. */
#tt-v2 #tt-adjectives img[alt="A price tag showing one dollar"]{transform:scale(.8)}

/* Keep the editor decoration stable when Show All changes content height. */
#tt-v2 .resources-top-card::before{background:linear-gradient(180deg,#fff0ad 0%,#fff8db 32%,#fff 67%) top center / 100% 700px no-repeat;}
/* Resource overview actions stay compact at intermediate widths. */
#tt-v2 .resource-card .resource-actions{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:12px}
#tt-v2 .resource-card .resource-actions>:is(a.button,button){width:auto;height:auto;flex:0 0 auto;min-height:44px;padding:12px 16px}
/* Local Cassiopeia resource shell: match the full-width teaching workspace. */
body:has(#tt-v2[data-resource]) .container-sidebar-right,body:has(#tt-v2[data-resource]) .container-sidebar-left{display:none}
body:has(#tt-v2[data-resource]) .site-grid .container-component{grid-column:full-start/full-end;max-width:1600px;width:100%;margin-inline:auto}

/* Compact shared dropdown choices, approved 28 October 2026. */
#tt-v2 .resource-picker-options [role=option]{padding:8px 12px;min-height:40px;box-sizing:border-box;line-height:1.5}
#tt-v2 .resource-picker-options [role=option]+[role=option]{border-top:1px solid #e4ebef}
#tt-v2 .worksheet-create-menu>div>a+a{border-top:1px solid #e4ebef}

/* Shared student entry: one centered panel, matching Fun Facts. */
#tt-v2.tt-student-opening{display:flex!important;align-items:center;justify-content:center;min-height:100dvh!important;height:auto!important;width:100%;max-width:none!important;padding:32px 24px!important;box-sizing:border-box;background:#f6f9fa!important}
#tt-v2.tt-student-opening>main,#tt-v2.tt-student-opening>.student-entry{width:100%;max-width:1100px;margin:auto;background:#fff;border:1px solid #d8e1e5;border-radius:20px;padding:28px;text-align:center;box-sizing:border-box;box-shadow:0 8px 24px #29445008}
#tt-v2.tt-student-opening .resource-heading{background:transparent;border:0;border-bottom:1px solid #d8e1e5;border-radius:0;box-shadow:none;padding:0 0 28px;margin:0 0 38px}
#tt-v2.tt-student-opening .resource-heading h1{font-size:clamp(28px,2.7vw,38px);font-weight:600;margin:0}
#tt-v2.tt-student-opening .sheet{background:transparent;border:0;box-shadow:none;padding:0 0 24px;margin:0;text-align:center}
#tt-v2.tt-student-opening label{max-width:440px;margin:24px auto 10px;text-align:left;display:block}
#tt-v2.tt-student-opening input{display:block;max-width:440px;width:100%;box-sizing:border-box;margin:10px auto 24px;height:44px}
#tt-v2.tt-student-opening .actions{justify-content:center;margin-top:24px}
#tt-v2.tt-student-opening #tt-save:empty{display:none}
#tt-v2.tt-worksheet-student{background:#f6f9fa!important;max-width:1120px;margin:auto;padding:24px;box-sizing:border-box}
#tt-v2.tt-worksheet-student [hidden]{display:none!important}
#tt-v2.tt-worksheet-student #worksheet-work{background:white;border:1px solid #d8e1e5;border-radius:20px;padding:24px}
#tt-v2.tt-worksheet-student #worksheet-work>.sheet{border:0;border-radius:0;box-shadow:none;border-top:1px solid #d8e1e5;margin:0;padding:24px 0}
#tt-v2 .resource-share-link input::selection{background:#cceafd;color:#294450}
#tt-v2 .resource-share-link input:focus{border-color:#89c8e9!important;outline:0!important;box-shadow:0 0 0 3px #dceffc!important}
@media(max-width:650px){#tt-v2.tt-student-opening{padding:20px 12px!important}#tt-v2.tt-student-opening>main,#tt-v2.tt-student-opening>.student-entry{padding:24px 16px}#tt-v2.tt-worksheet-student{padding:12px}#tt-v2.tt-worksheet-student #worksheet-work{padding:16px}}

body:has(>#tt-v2.tt-worksheet-student){margin:0;background:#f6f9fa}
#tt-v2.tt-worksheet-student{border-radius:0!important}
#tt-v2.tt-student-opening input{margin:10px auto 24px!important}
#tt-v2.tt-student-opening>main:focus:not(:focus-visible){outline:none}

/* QA 074: action labels must fit even in narrow tablet library cards. */
#tt-v2 .resource-tiles .resource-tile .tile-body>.actions{display:flex;flex-wrap:wrap;gap:8px}
#tt-v2 .resource-tiles .resource-tile .tile-body>.actions>:is(a,button){width:auto;flex:1 0 auto;min-width:max-content;white-space:normal;min-height:38px;padding:8px 10px}
#tt-v2 .resource-tiles .resource-tile .tile-body>.actions>button[title*="Delete"]{flex:0 0 38px;min-width:38px}
@media(max-width:600px){#tt-v2.tt-presentation .lesson-unified-controls{position:relative;top:auto;right:auto;flex-wrap:wrap;margin:0 0 20px;justify-content:center}}

/* Match actual-resource title typography to Everyday Adjectives; retain sizes. */
#tt-v2 .pair-game h1{font-family:Arial,sans-serif}
#tt-v2 #worksheet-view .worksheet-title-panel h1,#tt-v2 #worksheet-preview .worksheet-title-panel h1{letter-spacing:-.025em}

/* Local Game Maker card spacing reviewed 5 November. */
#tt-v2 .game-chooser button.game-format{justify-content:center;gap:16px;padding-top:28px;padding-bottom:28px}
#tt-v2 .game-chooser button.game-format>strong{margin-top:10px}
#tt-v2 .game-chooser button.game-format>span:last-child{min-height:0;margin-top:0}

#tt-v2 .tt-studio:has(.game-chooser) .game-maker-introduction{text-align:center}

/* Equal description slots preserve alignment across short and wrapped card copy. */
#tt-v2 .game-chooser button.game-format>.game-card-description{font-size:15px;font-weight:400;line-height:1.5;min-height:3em;width:100%;display:flex;align-items:center;justify-content:center;text-align:center;margin:0}
#tt-v2 .game-chooser button.game-format>.game-card-example{font-size:15px;font-weight:400;line-height:1.5;min-height:3em;width:100%;display:flex;align-items:center;justify-content:center;text-align:center;margin:0}

/* Compact four-row gallery cards, retaining equal text slots. */
#tt-v2 .game-chooser button.game-format{gap:8px;padding-top:22px;padding-bottom:22px}
#tt-v2 .game-chooser button.game-format>strong{margin-top:4px}
#tt-v2 .game-chooser button.game-format>.game-card-example{min-height:1.5em}

/* Approved yellow-panel heading family, matching Game Maker guidance. */
#tt-v2 .editor-guidance h2,
#tt-v2 .resource-card>.sheet>h2{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif;font-size:21px;font-weight:700;color:#294451}

/* Keep revealed game fields inside the editor and visible below the toolbar. */
#tt-v2 .studio-name-field{scroll-margin-top:clamp(180px,35vh,300px)}
#tt-v2 .studio-editor[data-kind=game],#tt-v2 .studio-editor[data-kind=game] label{min-width:0;box-sizing:border-box}
#tt-v2 .studio-editor[data-kind=game] :is(input,textarea,select){max-width:100%;box-sizing:border-box}


/* Do not flash the empty yellow canvas before the selected workspace renders. */
#tt-v2:empty{background:transparent;box-shadow:none}

/* Bound the decorative surround on short/collapsed pages as well as editors. */
#tt-v2 .resources-top-card::before{max-height:calc(100% + 40px)}


#tt-v2 .resources-navigation .workspace-nav a.button.membership-required,#tt-v2 a.button.membership-required{background:#eef0f1;border-color:#d4d9dc;color:#65717a;cursor:pointer}#tt-v2 .resources-navigation .workspace-nav a.button.membership-required:hover,#tt-v2 .resources-navigation .workspace-nav a.button.membership-required:focus-visible,#tt-v2 a.button.membership-required:hover,#tt-v2 a.button.membership-required:focus-visible{background:#e2e6e9;color:#374956}

/* Match the approved Cassiopeia fallback appearance without changing title scale. */
#tt-v2 .resources-top-card .workspace-heading h1,#tt-v2 .resource-surround>.resource-card>.resource-heading h1{font-family:Arial,sans-serif}

/* Everyday Adjectives section scores match shared worksheets. */
#tt-v2 .check-row [id^="score-"]:not(:empty){display:inline-flex;width:auto;height:auto;min-height:0;padding:3px 8px;border-radius:5px;margin:0;font-weight:700}
#tt-v2 .check-row [id^="score-"].retry{background:#fff0e1;color:#9c3e0a}
#tt-v2 .check-row [id^="score-"].correct{background:#d2efbd;color:#236c37}
#tt-v2 .check-row [id^="score-"]:empty{display:none}
#tt-v2 :is(.sheet:has(>#adj-heading-C),.worksheet-canonical:not(.ws-extended)>.ws-type-gap)>.sentence-question:has(+.check-row),#tt-v2 :is(.sheet:has(>#adj-heading-D),.worksheet-canonical:not(.ws-extended)>.ws-type-order)>.sentence-question:has(+.check-row){border-bottom:0}

/* One divider before checks, including the final row of a responsive matching grid. */
#tt-v2 .opposite-grid>.opposite-question:last-child,#tt-v2 .opposite-grid>.opposite-question:nth-last-child(2):nth-child(odd){border-bottom:0}
@media(max-width:520px){#tt-v2 .opposite-grid>.opposite-question:nth-last-child(2):nth-child(odd){border-bottom:1px solid #e5ecef}}
#tt-v2 .check-row{align-items:center}
#tt-v2 .check-row>:is([data-ws-section-score],[data-score],[id^="score-"]):not(:empty){display:inline-flex;align-items:center;justify-content:center;align-self:center;flex:0 0 auto;width:auto;height:auto;min-height:0;margin:0;padding:3px 8px;line-height:1.4;white-space:nowrap}

/* Verified live Ready for the Future score typography, 5 November 2026. */
#tt-v2 .check-row>:is([data-ws-section-score],[data-score],[id^="score-"]):not(:empty){font:700 15px/21px Inter,Arial,sans-serif!important}

/* Shared editor rhythm: approved 27 October 2026. Student views are excluded. */
[data-tt-editor] #app label:not(:has(input[type=radio])):not(:has(input[type=checkbox])){font:700 15px/1.4 Arial,sans-serif}
[data-tt-editor] #app label>input:not([type=radio]):not([type=checkbox]),[data-tt-editor] #app label>textarea,[data-tt-editor] #app label>select{margin-top:10px;font:400 17px/1.4 Arial,sans-serif}
[data-tt-editor] #app label>strong{font-size:inherit;font-weight:inherit}
[data-tt-editor] #app :is(.board-item,.ff-gap-item,.card) label{margin:0 0 12px}
[data-tt-editor] #app :is(.board-item,.ff-gap-item,.card) label:last-child{margin-bottom:0}
[data-tt-editor] #app :is(.board-nav,.board-actions,.ff-item-nav,.ff-item-actions,.gap-tools){gap:12px}
[data-tt-editor] #app :is(.board-item,.ff-gap-item){padding:18px}
[data-tt-editor] #app :is(input,textarea,select):focus{border-color:#72bddc;outline:1px solid #72bddc;outline-offset:0;box-shadow:0 0 0 2px #72bddc20}
[data-tt-editor] :is(#error,#status,.result):empty{display:none;min-height:0;margin:0;padding:0}
#tt-v2 .studio-workspace :is(.studio-editor,.slide-presentation-meta,.slide-settings) label,
#tt-v2 .studio-workspace :is(.studio-name-field,.studio-instruction-field,.studio-layout-field){font-size:15px;font-weight:700;line-height:1.4}
#tt-v2 .studio-workspace :is(.studio-editor,.slide-presentation-meta,.slide-settings) label:not(:has(input[type=radio])):not(:has(input[type=checkbox])){margin-top:12px;margin-bottom:0}
#tt-v2 .studio-workspace :is(.studio-editor,.slide-presentation-meta,.slide-settings) label>input:not([type=radio]):not([type=checkbox]),
#tt-v2 .studio-workspace :is(.studio-editor,.slide-presentation-meta,.slide-settings) label>textarea,
#tt-v2 .studio-workspace :is(.studio-editor,.slide-presentation-meta,.slide-settings) label>select,
#tt-v2 .studio-workspace :is(.studio-name-field,.studio-instruction-field,.studio-layout-field)>input,
#tt-v2 .studio-workspace .studio-layout-field>select{margin-top:10px!important;font:400 17px/1.4 Arial,sans-serif}
#tt-v2 .studio-editor :is(input[data-studio-field],textarea[data-studio-field],select[data-studio-field]){font:400 17px/1.4 Arial,sans-serif}
#tt-v2 .studio-editor .studio-nav{margin-bottom:10px}
#tt-v2 .studio-editor .studio-nav .studio-item-label{margin:0;font-size:15px}
#tt-v2 .studio-workspace .studio-editor label.pair-item-label{margin:12px 0 10px!important}
#tt-v2 .studio-editor .studio-nav+.studio-item-label{margin-top:0}
#tt-v2 .studio-workspace .slide-presentation-meta>label{gap:10px}
#tt-v2 .studio-workspace .resources-top-card:has(.studio-editor)>.actions{gap:12px}
#tt-v2 .studio-workspace .resources-top-card:has(.studio-editor)>.actions :is(button,a.button){font-size:15px}
#tt-v2 .studio-editor :is(input,textarea,select):focus{border-color:#72bddc;outline:1px solid #72bddc;outline-offset:0;box-shadow:0 0 0 2px #72bddc20}

#tt-v2 .studio-workspace .studio-editor :is(input[data-studio-field],textarea[data-studio-field],select[data-studio-field]){font-family:Arial,sans-serif!important;font-size:17px!important;font-weight:400!important}
#tt-v2 .studio-workspace .studio-name-field>textarea{margin-top:10px!important;font:400 17px/1.4 Arial,sans-serif}
#tt-v2 .studio-workspace .studio-editor .studio-nav+ :is(input,textarea){margin-top:0!important}

#tt-v2 .studio-workspace .studio-instruction-field>textarea{margin-top:10px!important;font:400 17px/1.4 Arial,sans-serif}
#tt-v2 .studio-workspace .studio-editor .pair-item-label+textarea{margin-top:0!important}

/* File controls keep the same native chooser and filename treatment in every editor. */
[data-tt-editor] #app input[type=file],#app .editor input[type=file],#tt-v2 .studio-editor input[type=file]{box-sizing:border-box;display:block;width:100%;min-width:0;max-width:100%;height:44px!important;min-height:44px!important;margin-top:10px!important;padding:7px 8px!important;border:1px solid #a5bdc8;border-radius:9px;background:#fff;color:#294450;font:400 15px/28px Arial,sans-serif!important}
[data-tt-editor] #app input[type=file]::file-selector-button,#app .editor input[type=file]::file-selector-button,#tt-v2 .studio-editor input[type=file]::file-selector-button{height:28px;margin:0 10px 0 0;padding:3px 10px;border:1px solid #a5d9f3;border-radius:5px;background:#e3f4ff;color:#175e7c;font:400 15px/20px Arial,sans-serif;cursor:pointer}

#tt-v2 .tt-studio .slide-presentation-meta>label.studio-name-field,#tt-v2 .tt-studio .slide-presentation-meta>label.studio-linked-resource{gap:10px!important}
#tt-v2 .tt-studio .slide-presentation-meta>label>input,#tt-v2 .tt-studio .slide-presentation-meta>label>select{margin-top:0!important}
#tt-v2 .slide-editor .slide-settings label{gap:0!important}
#tt-v2 .slide-editor label[id^="rich-label-"]{font:700 15px/1.4 Arial,sans-serif;margin:12px 0 10px!important}
#tt-v2 .slide-editor .slide-rich-input{font-family:Arial,sans-serif;font-size:17px;font-weight:400;margin-top:0!important}
#tt-v2 .slide-editor .slide-rich-input:focus{border-color:#72bddc;outline:1px solid #72bddc;outline-offset:0;box-shadow:0 0 0 2px #72bddc20}
#tt-v2 .slide-editor .comparison-rows legend{font:700 15px/1.4 Arial,sans-serif!important;margin-bottom:10px!important}

#tt-v2 .slide-editor .slide-format-grid>label{gap:0!important;margin-top:0!important}

[data-tt-editor] #app .resource-title-row>label{font:700 15px/1.4 Arial,sans-serif!important}
[data-tt-editor] #app .resource-title-row>label>input{margin-top:0}
[data-tt-editor] #app .board-instructions{margin-bottom:0}
[data-tt-editor] #app .board-nav{padding:18px 0}
/* Slideshow fields: one label gap, including the searchable resource control. */
#tt-v2 .studio-workspace .slide-presentation-meta>label>input[data-studio-field]{margin-top:0!important}
#tt-v2 .studio-workspace .slide-editor label[id^="rich-label-"]{font:700 15px/1.4 Arial,sans-serif!important;margin:12px 0 10px!important}
#tt-v2 .studio-workspace .slide-editor label[id$="-q"]{margin-top:0!important}
#tt-v2 .studio-workspace .slide-format-grid>label{font-family:Arial,sans-serif;align-self:start}
#tt-v2 .studio-workspace .slide-presentation-meta>label.studio-name-field>input[data-studio-field]{margin-top:0!important}
#tt-v2 .slide-editor .slide-format-grid>label:has(select[data-slide-setting="slideType"]){grid-column:1 / -1}
/* One item or all: the same controls in resources, worksheets and games. */
#app .tt-item-pager,#tt-v2 .tt-item-pager,#app .item-nav,#app .ff-item-nav,#app .board-nav{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:12px;margin:0;padding:18px 0}
#app .tt-item-pager button,#tt-v2 .tt-item-pager button{font:600 15px/1.4 Arial,sans-serif;padding:9px 12px;border:1px solid #a8d8ee;border-radius:12px;background:#e3f4ff;color:#175e7c;margin:0}
#app .tt-item-pager select,#tt-v2 .tt-item-pager select{width:auto;max-width:100%;margin:0;font:400 15px/1.4 Arial,sans-serif;padding:9px 12px;border:1px solid #a5bdc8;border-radius:9px;background:#fff;color:#294450}
#app .tt-item-pager button:disabled,#tt-v2 .tt-item-pager button:disabled{opacity:.4;cursor:default}
#app article[hidden],#app fieldset[hidden],#app .subject-card-fields>label[hidden],#tt-v2 .studio-editor[hidden]{display:none!important}
#app #exercise .grid:has(>article[hidden]){grid-template-columns:minmax(0,1fr)}
#app .subject-card-fields:has(>label[hidden]){grid-template-columns:minmax(0,1fr)}
#app textarea[data-editor-grow],#tt-v2 textarea[data-editor-grow]{box-sizing:border-box;min-height:44px!important;resize:vertical;overflow-y:hidden}
#app #board-instruction-count,#tt-v2 .clue-counter,#tt-v2 .editor-character-count{display:block;position:static;text-align:left;margin:8px 0 0;padding:0;font:400 14px/1.5 Arial,sans-serif;color:#637b86}
@media(min-width:800px){[data-tt-editor] #app .resource-title-row{flex-wrap:nowrap;gap:12px}[data-tt-editor] #app .resource-title-row>label{flex-basis:auto;gap:12px}[data-tt-editor] #app .resource-title-row .resource-editor-actions{flex-wrap:nowrap}[data-tt-editor] #app .resource-title-row button{padding:0 12px}#app .topbar{display:flex;align-items:center;flex-wrap:nowrap;gap:12px}#app .topbar>.field{flex:1;min-width:0}#app .topbar>.tools{flex-wrap:nowrap}}
#tt-v2 .studio-workspace .slide-presentation-meta{margin-bottom:12px;padding-bottom:0}
#tt-v2 .studio-workspace .slide-presentation-meta+.slide-editor{margin-top:0;padding-top:12px}
#tt-v2 .slide-editor .comparison-rows{margin:14px 0}
#tt-v2 .slide-editor .comparison-rows legend{margin-bottom:8px!important}
#tt-v2 .slide-editor .comparison-rows>.hint{margin:0 0 12px}
#tt-v2 .slide-editor .card-edit-pair{margin:12px 0;padding:14px}
#tt-v2 .slide-editor [data-card-action=add]{margin:12px 0}
#tt-v2 .slide-editor .comparison-rows:has([data-card-action=add]){margin-bottom:12px}
/* Approved compact pager: do not inherit large resource navigation buttons. */
#app .tt-item-pager,#tt-v2 .tt-item-pager{padding:14px 0!important;gap:8px!important;border:0!important}
#app .tt-item-pager>button:not(.tt-compact-icon),#tt-v2 .tt-item-pager>button:not(.tt-compact-icon){width:auto!important;min-width:0!important;height:36px!important;min-height:36px!important;padding:7px 12px!important;font:600 14px/20px Arial,sans-serif!important;margin:0 0 0 8px!important;border-radius:12px}
#app #exercise>.bank:has(+.tt-item-pager){margin-bottom:0!important}

/* Game inputs share one compact baseline, including converted textareas. */
#tt-v2 .studio-editor textarea[data-studio-field],#tt-v2 .studio-name-field textarea,#tt-v2 .studio-instruction-field textarea{box-sizing:border-box;min-height:46px!important;padding:10px 12px;line-height:22px!important}

#tt-v2 [data-sentence-counter]{font-weight:400!important}

#tt-v2 .sentence-shuffle-note{display:block;margin-top:8px;font-weight:400}

/* Balanced compact game item navigation. */
#tt-v2 .tt-item-pager:has(+.studio-editor[data-kind=game]){padding:8px 0!important}
#tt-v2 .tt-item-pager+.studio-editor[data-kind=game]{padding-top:14px!important}

#tt-v2 .comparison-edit-row{grid-template-columns:minmax(140px,1fr) 34px 34px auto;gap:8px}
#tt-v2 .comparison-edit-row>textarea{grid-column:1/-1}
#tt-v2 .comparison-edit-row>.editor-icon-action{width:34px;min-width:34px;height:34px;padding:6px;align-self:center}

#tt-v2 .comparison-edit-row{grid-template-columns:minmax(140px,1fr) 34px 34px auto!important}
#tt-v2 .comparison-edit-row>[data-compare-action=add]{width:auto;white-space:nowrap;padding:8px 10px}

#tt-v2 .slide-optional-details{margin:12px 0;padding:12px;border:1px solid #d5e1e6;border-radius:12px}
#tt-v2 .slide-optional-details>summary{font-size:15px;font-weight:600;color:#296375;cursor:pointer}
#tt-v2 .slide-optional-details[open]>summary{margin-bottom:12px}

#tt-v2 .slide-picture-details{margin:10px 0 18px}#tt-v2 .slide-picture-details>summary{font-size:15px;font-weight:600;color:#296375;cursor:pointer}#tt-v2 .slide-picture-details[open]>summary{margin-bottom:12px}

/* Always-open content panels group each column with its optional picture. */
#tt-v2 .slide-content-panel{border:1px solid #d5e1e6;border-radius:12px;padding:12px;margin:14px 0}
#tt-v2 .slide-content-panel .comparison-rows{margin:0!important;padding:0}
#tt-v2 .slide-content-panel .comparison-edit-row{margin-bottom:0}
#tt-v2 .slide-content-panel .slide-picture-details{margin:14px 0 0!important}
#tt-v2 .slide-content-panel .slide-picture-details>summary{padding:0;line-height:22px}
#tt-v2 .slide-content-panel .comparison-edit-row{grid-template-columns:minmax(120px,1fr) 34px 34px auto!important}

#tt-v2 .slide-live-wrap>span{font:700 15px/1.4 Arial,sans-serif;color:#294653}

#tt-v2 .slide-live-wrap>span{font:700 15px/1.4 Arial,sans-serif!important;color:#294653!important}

#tt-v2 .slide-content-panel{padding:16px!important}
#tt-v2 .slide-content-panel .comparison-rows>legend{float:none;width:100%;text-align:center;margin:0 0 12px!important;padding:0}
#tt-v2 .slide-content-panel .comparison-edit-row{margin:0!important;gap:12px 8px!important}
#tt-v2 .slide-content-panel .comparison-edit-row+.comparison-edit-row{margin-top:12px!important}
#tt-v2 .slide-content-panel .slide-picture-details{margin:12px 0 0!important}

/* Formatting fields use the same single-line baseline as growing textareas. */
#tt-v2 .slide-editor .slide-rich-input{box-sizing:border-box;min-height:46px!important;height:auto;max-height:none;padding:10px 12px!important;font:400 17px/22px Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid #bccbd2;border-radius:6px;background:#fff}
#tt-v2 .slide-editor .slide-rich-input>p{margin:0;min-height:22px;line-height:inherit}
#tt-v2 .slide-editor textarea[data-editor-grow]{min-height:46px!important;line-height:22px!important;padding:10px 12px!important}

#tt-v2 .slide-editor .slide-rich-input{resize:vertical;overflow:auto;height:auto}

#tt-v2 .qa-card-editor .card-edit-pair{padding:16px;border-radius:12px;background:#fff;margin:14px 0}
#tt-v2 .qa-card-editor .card-edit-heading{gap:8px;margin-bottom:12px}
#tt-v2 .qa-card-editor .card-edit-heading strong{flex:1}
#tt-v2 .qa-card-editor .editor-icon-action{width:34px;height:34px;min-width:34px;padding:6px}
#tt-v2 .qa-card-editor>p.hint{margin:10px 0 0;font-weight:400}

#tt-v2 .qa-card-editor .card-edit-pair{background:#fff!important}#tt-v2 .qa-card-add{margin:14px 0}#tt-v2 .qa-card-add>.hint{margin:10px 0 0;font-weight:400}

#tt-v2 .qa-card-editor .card-edit-heading .editor-icon-action{box-sizing:border-box;width:34px!important;min-width:34px!important;height:34px!important;min-height:34px!important;padding:6px!important;display:inline-flex;align-items:center;justify-content:center}
#tt-v2 .qa-content-panel{border:1px solid #d5e1e6;border-radius:12px;padding:16px;margin:14px 0}
#tt-v2 .qa-content-panel .qa-card-editor{margin:0!important}
#tt-v2 .qa-content-panel .card-edit-pair{border:0;padding:0;margin:0!important}
#tt-v2 .qa-content-panel .card-edit-pair+.card-edit-pair{border-top:1px solid #d5e1e6;padding-top:16px;margin-top:16px!important}
#tt-v2 .qa-content-panel .slide-picture-details{margin:12px 0 0!important}
#tt-v2 .qa-content-panel .slide-picture-details>summary{padding:0;line-height:22px}
/* Phone settings must show complete option names, including answer labels. */
@media(max-width:480px){#tt-v2 .slide-editor .slide-format-grid{grid-template-columns:minmax(0,1fr)!important}#tt-v2 .slide-editor .slide-format-grid>label{grid-column:1/-1!important}}
