.kruclass-activity{--ka-blue:#4169d8;--ka-ink:#1c3b67;background:linear-gradient(145deg,#f7fbff,#fffaf0);border:1px solid #dbe5f3;border-radius:24px;box-sizing:border-box;color:var(--ka-ink);font-family:"Noto Sans Thai","Leelawadee UI",system-ui,sans-serif;margin:auto;max-width:980px;min-height:470px;overflow:hidden;padding:28px;width:100%}.kruclass-activity *{box-sizing:border-box}.kca-intro,.kca-result{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:410px;text-align:center}.kca-intro>span{background:#e9efff;border-radius:99px;color:#3d60c7;font-size:.78rem;font-weight:900;padding:7px 14px}.kca-intro h2,.kca-result h2{font-size:clamp(2rem,4vw,3.2rem);margin:14px 0 5px}.kca-intro p{color:#70809a;margin:0 0 22px}.kca-intro button,.kca-result button,.kca-next{background:linear-gradient(135deg,#456fe0,#6c5ce7);border:0;border-radius:14px;box-shadow:0 8px 20px rgba(65,105,216,.23);color:#fff;cursor:pointer;font-weight:900;padding:12px 24px}.kca-stage>header{align-items:center;display:flex;justify-content:space-between}.kca-stage>header span{background:#fff1c6;border-radius:9px;color:#765500;padding:6px 10px}.kca-progress{background:#dfe7f4;border-radius:99px;height:7px;margin:10px 0 18px;overflow:hidden}.kca-progress span{background:linear-gradient(90deg,#39c994,#56a6ee);display:block;height:100%;transition:width .3s}.kca-question{text-align:center}.kca-picture{background:linear-gradient(145deg,#eaf6ff,#fff6d8);border-radius:20px;height:230px;margin:auto;max-width:520px;overflow:hidden}.kca-picture img{height:100%;object-fit:contain;width:100%}.kca-audio{background:#29bd86;border:0;border-radius:50%;color:#fff;cursor:pointer;font-size:1.15rem;font-weight:900;height:110px;margin:55px auto 65px;width:110px}.kca-question h3{font-size:clamp(1.25rem,2.5vw,1.8rem);margin:17px 0 12px}.kca-choices{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin:auto;max-width:680px}.kca-choices button{background:#fff;border:2px solid #d9e3f1;border-radius:13px;color:#314e79;cursor:pointer;font-size:1rem;font-weight:850;padding:12px}.kca-choices button:hover{border-color:#7191e5}.kca-choices button.is-correct{background:#e2f8ed;border-color:#35bd83;color:#12734c}.kca-choices button.is-wrong{background:#fff0f0;border-color:#ef7777;color:#a53232}.kca-feedback{align-items:center;display:flex;gap:14px;justify-content:center;min-height:54px;padding-top:12px}.kca-feedback .is-good{color:#16845a}.kca-feedback .is-bad{color:#ad3838}.kca-next{padding:8px 14px}.kca-result>span{font-size:4rem}.kca-result>strong{color:#294d81;font-size:3.5rem}.kca-result>b{color:#3e6dda;font-size:1.4rem}.kca-result p{color:#70809a}.kca-closed,.kca-error,.kca-loading{background:#fff4d5;border:1px solid #f0d17b;border-radius:14px;color:#775900;margin:auto;max-width:760px;padding:24px;text-align:center}@media(max-width:650px){.kruclass-activity{border-radius:14px;padding:15px}.kca-choices{grid-template-columns:1fr}.kca-picture{height:200px}}
.kca-feedback .is-good{background:#e2f8ed;border:2px solid #78d7ad;border-radius:14px;font-size:1.25rem;padding:9px 18px}.kca-feedback .is-bad{background:#fff0f0;border:2px solid #efb0b0;border-radius:12px;padding:9px 14px}.kca-feedback .is-bad b{color:#7d2020;font-size:1.08em}

.kca-picture{position:relative}.kca-cover{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(3,1fr);inset:0;position:absolute}.kca-cover button{align-items:center;background:linear-gradient(145deg,#5279df,#735bd8);border:1px solid rgba(255,255,255,.55);color:#fff;cursor:pointer;display:flex;font-size:1.4rem;font-weight:900;justify-content:center;opacity:1;transition:opacity .22s,transform .22s}.kca-cover button:nth-child(3n){background:linear-gradient(145deg,#36b993,#49a5dd)}.kca-cover button.is-open{opacity:0;pointer-events:none;transform:scale(.82)}.kca-word-prompt{color:#244579;font-size:clamp(2.2rem,6vw,4.5rem);font-weight:950;line-height:1.05;margin:42px auto 28px}.kca-choices.has-images{grid-template-columns:repeat(4,minmax(0,1fr));max-width:880px}.kca-image-choice{display:flex;flex-direction:column;gap:5px;padding:7px!important}.kca-image-choice img{background:#f4f8fc;border-radius:9px;height:110px;object-fit:contain;width:100%}.kca-image-choice span{display:block}.kca-spelling-answer{align-items:center;background:#fff;border:2px dashed #9eb3d4;border-radius:14px;color:#244579;display:flex;font-size:2rem;font-weight:950;justify-content:center;letter-spacing:.12em;margin:12px auto;min-height:62px;max-width:620px;padding:8px}.kca-letters{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.kca-letters button{background:#fff;border:2px solid #7b98e2;border-radius:11px;color:#294d81;cursor:pointer;font-size:1.35rem;font-weight:950;min-width:48px;padding:9px 13px;text-transform:uppercase}.kca-letters button:disabled{opacity:.28;transform:scale(.9)}.kca-spelling-actions{display:flex;gap:9px;justify-content:center;margin-top:13px}.kca-spelling-actions button{background:#eef3ff;border:1px solid #bfd0ee;border-radius:10px;color:#31548c;cursor:pointer;font-weight:850;padding:9px 17px}.kca-spelling-actions button:last-child{background:#3e69d7;color:#fff}.kca-memory-sequence{display:flex;gap:12px;justify-content:center;margin:18px auto}.kca-memory-sequence div{background:#fff;border:2px solid #dbe4f1;border-radius:14px;padding:7px;position:relative;width:150px}.kca-memory-sequence img{height:125px;object-fit:contain;width:100%}.kca-memory-sequence b{background:#4169d8;border-radius:50%;color:#fff;height:26px;left:5px;line-height:26px;position:absolute;top:5px;width:26px}.kca-memory-note{color:#657792;font-weight:800}.kca-memory-answer{display:flex;gap:7px;justify-content:center;min-height:32px}.kca-memory-answer span{background:#eaf0ff;border-radius:99px;color:#3659bf;font-weight:800;padding:5px 10px}.kca-worksheet{align-items:center;background:linear-gradient(145deg,#fff,#f3f7ff);border:1px solid #d9e3f1;border-radius:18px;display:flex;gap:16px;margin:10px auto;max-width:880px;padding:20px}.kca-worksheet>span{font-size:2.6rem}.kca-worksheet div{flex:1}.kca-worksheet h3{color:#244579;font-size:1.35rem;margin:0}.kca-worksheet p{color:#6e7f98;margin:4px 0 0}.kca-worksheet a{background:#4169d8;border-radius:12px;color:#fff;font-weight:900;padding:11px 17px;text-decoration:none}.kca-result>b{font-size:2rem;margin-top:4px}

.kca-game-previews{display:flex;gap:14px;justify-content:center;margin:20px 0 4px}.kca-game-preview{align-items:center;background:#e1f8f6;border:4px solid #22255d;border-radius:50%;box-shadow:0 10px 0 rgba(34,37,93,.14);display:flex;height:92px;justify-content:center;overflow:hidden;padding:7px;width:92px}.kca-game-preview img{height:100%;object-fit:contain;width:100%}.kca-game-preview--2{background:#fff0a8}.kca-game-preview--3{background:#ffd9e5}.kca-game-preview--4{background:#dff7ec}

.kca-flip-board{aspect-ratio:1/1;background:#fffdf5;border:4px solid #22255d;border-radius:24px;box-shadow:9px 10px 0 rgba(34,37,93,.17);display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin:0 auto;max-width:400px;padding:10px;width:min(100%,400px)}.kca-flip-main,.kca-flip-sub{align-items:center;border:0;color:#fff;cursor:pointer;display:flex;font:inherit;font-size:clamp(2rem,6vw,3.5rem);font-weight:950;justify-content:center;min-height:0;min-width:0;text-shadow:2px 2px 0 rgba(0,0,0,.18);transition:filter .18s,opacity .2s,transform .2s}.kca-flip-main{border:4px solid rgba(255,255,255,.8);border-radius:17px;box-shadow:inset 0 -10px 0 rgba(34,37,93,.16),0 6px 0 rgba(34,37,93,.14)}.kca-flip-main:hover:not(:disabled),.kca-flip-sub:hover:not(:disabled){filter:brightness(1.07);transform:scale(1.015)}.kca-flip-color-0{background:linear-gradient(145deg,#17baf2,#0583eb)}.kca-flip-color-1{background:linear-gradient(145deg,#f1419a,#cc1e72)}.kca-flip-color-2{background:linear-gradient(145deg,#9659ff,#6330dc)}.kca-flip-color-3{background:linear-gradient(145deg,#ffa400,#ee7d00)}.kca-flip-main.is-missed,.kca-flip-sub.is-missed{opacity:0;pointer-events:none;transform:scale(.75)}.kca-flip-main.is-locked{cursor:default;filter:saturate(.75);opacity:.72}.kca-flip-subgrid{border-radius:17px;display:grid;gap:2px;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));min-height:0;min-width:0;overflow:hidden}.kca-flip-sub{background:linear-gradient(145deg,#fff,#def6f5);box-shadow:inset 0 0 0 2px rgba(34,37,93,.18);color:#22255d;font-size:clamp(1.35rem,4vw,2.2rem);text-shadow:none}.kca-flip-sub.is-locked:not(.is-revealed){cursor:default}.kca-flip-sub.is-revealed{background:#fff;opacity:1;padding:5px;transform:none}.kca-flip-sub.is-revealed img{height:100%;object-fit:contain;width:100%}.kca-flip-hint{color:#647590;font-weight:850;margin:13px 0 2px}.kca-answer-panel[hidden]{display:none}.kca-answer-panel.is-ready{animation:kca-answer-in .3s ease both}@keyframes kca-answer-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}

.kca-memory-watch{margin:auto;max-width:520px}.kca-memory-watch>span{background:#eaf0ff;border-radius:99px;color:#365bc4;display:inline-block;font-weight:900;margin-bottom:9px;padding:6px 13px}.kca-memory-showcase{align-items:center;background:linear-gradient(145deg,#eaf7ff,#fff6d9);border:3px solid #d6e1ef;border-radius:22px;display:flex;height:245px;justify-content:center;overflow:hidden;padding:14px}.kca-memory-showcase img{height:100%;object-fit:contain;transform-origin:center;width:100%}.kca-memory-showcase img.is-wiggling{animation:kca-memory-wiggle 1.2s ease-in-out both}@keyframes kca-memory-wiggle{0%,100%{transform:rotate(0) scale(1)}25%{transform:rotate(-2deg) scale(1.045)}55%{transform:rotate(2deg) scale(1.075)}78%{transform:rotate(-1deg) scale(1.035)}}.kca-memory-slots{display:grid;gap:9px;grid-template-columns:repeat(4,minmax(0,1fr));margin:12px auto 15px;max-width:650px}.kca-memory-slot{aspect-ratio:1/1;background:#fff;border:3px dashed #b8c7dd;border-radius:15px;overflow:hidden;position:relative}.kca-memory-slot b{align-items:center;background:#eaf0ff;border-radius:50%;color:#4166cb;display:flex;font-size:.75rem;height:25px;justify-content:center;left:5px;position:absolute;top:5px;width:25px;z-index:1}.kca-memory-slot img{height:100%;object-fit:contain;padding:6px;width:100%}.kca-memory-slot.is-correct{background:#e9f9f1;border-color:#35bd83}.kca-memory-slot.is-wrong{background:#fff0f0;border-color:#ed7070}.kca-memory-choices .kca-image-choice{min-height:135px}.kca-memory-choices .kca-image-choice.is-picked{opacity:.22;transform:scale(.9)}.kca-memory-flying{background:#fff;box-shadow:0 12px 28px rgba(25,49,86,.25);object-fit:contain;pointer-events:none;position:fixed;transition:left .44s cubic-bezier(.2,.8,.2,1),top .44s cubic-bezier(.2,.8,.2,1),width .44s cubic-bezier(.2,.8,.2,1),height .44s cubic-bezier(.2,.8,.2,1),border-radius .44s,opacity .44s;z-index:999999}

@media(max-width:650px){.kca-choices.has-images{grid-template-columns:repeat(2,minmax(0,1fr))}.kca-image-choice img{height:90px}.kca-memory-sequence div{width:30%}.kca-memory-sequence img{height:85px}.kca-worksheet{align-items:flex-start;flex-wrap:wrap}.kca-worksheet a{width:100%;text-align:center}.kca-game-previews{gap:7px}.kca-game-preview{border-width:3px;height:68px;padding:5px;width:68px}.kca-flip-board{border-radius:18px;gap:6px;max-width:330px;padding:7px}.kca-flip-main{border-width:3px;border-radius:13px}.kca-memory-showcase{height:210px}.kca-memory-slots{gap:5px}.kca-memory-slot{border-radius:10px;border-width:2px}.kca-memory-slot b{height:20px;width:20px}.kca-memory-choices .kca-image-choice{min-height:105px}}

.kca-exam-password{display:block;margin:0 auto 14px;max-width:390px;text-align:left;width:100%}.kca-exam-password span{color:#314e79;display:block;font-size:.9rem;font-weight:900;margin-bottom:5px}.kca-exam-password input{background:#fff;border:2px solid #c8d6eb;border-radius:12px;color:#1c3b67;font:inherit;font-size:1rem;font-weight:750;padding:11px 13px;width:100%}.kca-exam-password input:focus{border-color:#4e73df;box-shadow:0 0 0 4px rgba(78,115,223,.14);outline:0}

/* Balance classroom games inside the lesson stage instead of packing them at the top. */
.kca-stage{display:flex;flex-direction:column;height:100%;min-height:0}
.kca-question{align-items:stretch;display:flex;flex:1;flex-direction:column;justify-content:center;min-height:0;padding:8px 0 12px}
.kca-choices{max-width:800px;width:100%}
.kca-question[data-engine=custom_questions] .kca-answer-panel>h3{line-height:1.55;margin:8px auto 18px;max-width:850px;text-align:left}.kca-question[data-engine=custom_questions] .kca-choices button{align-items:flex-start;display:flex;gap:8px;text-align:left}.kca-question[data-engine=custom_questions] .kca-choices button span{white-space:pre-line}.kca-choice-letter{color:#4169d8;flex:0 0 24px}
.kca-custom-youtube{aspect-ratio:16/9;background:#101a29;border-radius:18px;margin:0 auto 12px;max-height:440px;max-width:780px;overflow:hidden;width:100%}.kca-custom-youtube iframe{border:0;height:100%;width:100%}
@media(min-width:651px) and (max-height:950px){.kca-custom-youtube{max-height:34vh;max-width:600px}.kca-question[data-engine=custom_questions] .kca-answer-panel>h3{margin:5px auto 8px}}
@media(max-width:650px){.kca-custom-youtube{border-radius:13px;margin-bottom:9px}.kca-question[data-engine=custom_questions] .kca-answer-panel>h3{text-align:left}}

/* Keep desktop classroom games inside the visible lesson stage on short displays. */
@media(min-width:651px) and (max-height:950px){
    .kruclass-activity{border-radius:18px;min-height:0;padding:12px 20px}
    .kca-intro,.kca-result{min-height:0;height:100%;padding:12px 0}
    .kca-intro h2,.kca-result h2{font-size:clamp(1.75rem,4vh,2.6rem);margin:8px 0 3px}
    .kca-intro p{margin-bottom:10px}.kca-exam-password{margin-bottom:8px}.kca-exam-password input{padding:7px 10px}.kca-game-previews{margin:9px 0 2px}
    .kca-game-preview{border-width:3px;height:clamp(58px,9vh,76px);padding:5px;width:clamp(58px,9vh,76px)}
    .kca-stage>header span{padding:4px 8px}.kca-progress{margin:5px 0 8px}
    .kca-picture{height:clamp(165px,28vh,230px);max-width:560px;width:100%}
    .kca-question h3{font-size:clamp(1.1rem,2.7vh,1.55rem);margin:7px 0 6px}
    .kca-word-prompt{font-size:clamp(2.1rem,7vh,3.7rem);margin:10px auto 9px}
    .kca-choices{gap:6px}.kca-choices button{font-size:.92rem;padding:7px 10px}
    .kca-image-choice{gap:2px;padding:5px!important}.kca-image-choice img{height:clamp(88px,15vh,125px)}
    .kca-feedback{min-height:38px;padding-top:6px}.kca-feedback .is-good,.kca-feedback .is-bad{font-size:1rem;padding:5px 10px}.kca-next{padding:6px 11px}
    .kca-spelling-answer{font-size:1.55rem;margin:6px auto;min-height:42px;padding:4px}
    .kca-letters{gap:5px}.kca-letters button{font-size:1.05rem;min-width:39px;padding:5px 9px}
    .kca-spelling-actions{margin-top:6px}.kca-spelling-actions button{padding:6px 12px}
    .kca-flip-board{border-width:3px;border-radius:18px;gap:6px;max-width:min(360px,43vh);padding:7px;width:min(100%,360px)}
    .kca-flip-main{border-width:3px;border-radius:13px}.kca-flip-hint{font-size:.86rem;margin:6px 0 1px}
    .kca-memory-watch{max-width:430px}.kca-memory-watch>span{margin-bottom:4px;padding:4px 10px}
    .kca-memory-showcase{height:clamp(135px,22vh,180px);padding:8px}.kca-memory-note{margin:5px 0}
    .kca-memory-slots{gap:6px;margin:6px auto 8px;max-width:500px}.kca-memory-choices .kca-image-choice{min-height:85px}
    .kca-audio{height:84px;margin:30px auto 36px;width:84px}
}

/* Spelling: each chosen letter stays editable until the learner submits. */
.kca-spelling-answer{align-items:center;background:transparent;border:0;display:flex;flex-wrap:wrap;gap:7px;justify-content:center;letter-spacing:0;margin:12px auto 4px;max-width:760px;min-height:62px;padding:4px}
.kca-spelling-slot{align-items:center;background:#f8fbff;border:2px dashed #b7c7df;border-radius:11px;color:#244579;display:flex;font-size:1.45rem;font-weight:950;height:54px;justify-content:center;padding:0;text-transform:uppercase;width:50px}
.kca-spelling-slot.is-filled{border-style:solid;box-shadow:0 5px 0 rgba(36,69,121,.13);cursor:pointer;transition:transform .16s,box-shadow .16s;animation:kca-spelling-pop .22s ease-out}
.kca-spelling-slot.is-filled:hover,.kca-spelling-slot.is-filled:focus-visible{box-shadow:0 7px 0 rgba(36,69,121,.16);outline:3px solid rgba(65,105,216,.2);transform:translateY(-2px)}
.kca-spelling-color-0{background:#edf4ff;border-color:#5d83e6}.kca-spelling-color-1{background:#e9fbf4;border-color:#35b989}.kca-spelling-color-2{background:#fff7dc;border-color:#e9ae31}.kca-spelling-color-3{background:#fff0f4;border-color:#e56f98}.kca-spelling-color-4{background:#f3eeff;border-color:#8b6be1}.kca-spelling-color-5{background:#eaf9fc;border-color:#3ba9c4}
.kca-spelling-hint{color:#71819a;font-size:.78rem;margin:0 0 10px;text-align:center}
.kca-spelling-actions button:disabled{cursor:not-allowed;filter:grayscale(.25);opacity:.45}
.kca-letters button.is-returning{animation:kca-letter-return .3s ease-out}
@keyframes kca-spelling-pop{0%{opacity:.4;transform:scale(.72) translateY(8px)}70%{transform:scale(1.08) translateY(-2px)}100%{opacity:1;transform:scale(1)}}
@keyframes kca-letter-return{0%{opacity:.2;transform:translateY(-14px) scale(.75)}70%{transform:translateY(3px) scale(1.08)}100%{opacity:1;transform:none}}
@media(max-width:600px){.kca-spelling-answer{gap:5px;margin-top:7px;min-height:51px}.kca-spelling-slot{border-radius:9px;font-size:1.15rem;height:46px;width:42px}.kca-spelling-hint{font-size:.7rem;margin-bottom:7px}}
@media(max-height:760px) and (min-width:701px){.kca-spelling-answer{gap:5px;margin:4px auto 2px;min-height:43px}.kca-spelling-slot{font-size:1.05rem;height:39px;width:38px}.kca-spelling-hint{font-size:.68rem;margin-bottom:4px}}
.kca-memory-picked{background:transparent;border:0;border-radius:12px;cursor:pointer;height:100%;inset:0;padding:0;position:absolute;width:100%;z-index:2}
.kca-memory-picked img{height:100%;object-fit:contain;padding:6px;width:100%}
.kca-memory-picked:hover,.kca-memory-picked:focus-visible{background:rgba(65,105,216,.08);outline:3px solid rgba(65,105,216,.28);outline-offset:-3px}
.kca-memory-picked:disabled{cursor:default}.kca-memory-picked:disabled::after{display:none}
.kca-memory-picked::after{align-items:center;background:#fff;border:1px solid #c8d6eb;border-radius:50%;bottom:5px;box-shadow:0 3px 8px rgba(35,65,110,.16);color:#4169d8;content:'↩';display:flex;font-size:.85rem;font-weight:950;height:25px;justify-content:center;position:absolute;right:5px;width:25px}
.kca-memory-actions{align-items:center;display:flex;gap:10px;justify-content:center;margin:2px auto 8px}
.kca-memory-actions span{color:#71819a;font-size:.78rem}.kca-memory-actions button{background:#4169d8;border:0;border-radius:11px;color:#fff;cursor:pointer;font-weight:900;padding:9px 17px}
.kca-memory-actions button:disabled{cursor:not-allowed;filter:grayscale(.25);opacity:.4}
@media(max-width:650px){.kca-memory-actions{align-items:stretch;flex-direction:column;gap:5px}.kca-memory-actions span{text-align:center}.kca-memory-actions button{min-height:44px}.kca-memory-picked::after{bottom:3px;height:22px;right:3px;width:22px}}

/* Missing Letters: keep the masked word and all four letters in one clear activity card. */
.kca-question[data-engine=missing_letters] .kca-picture{max-width:680px}
.kca-question[data-engine=missing_letters] .kca-answer-panel{background:rgba(255,255,255,.94);border:1px solid #e1e8f3;border-radius:28px;box-shadow:0 14px 34px rgba(45,72,113,.08);margin:22px auto 0;max-width:760px;padding:28px 34px 32px;width:100%}
.kca-question[data-engine=missing_letters] .kca-answer-panel>h3{color:#142f59;font-size:clamp(2rem,5vw,3rem);font-weight:950;letter-spacing:.04em;line-height:1.1;margin:0 0 26px}
.kca-question[data-engine=missing_letters] .kca-choices{display:grid;gap:22px;grid-template-columns:repeat(4,68px);justify-content:center;max-width:none;width:100%}
.kca-question[data-engine=missing_letters] .kca-choices button{align-items:center;aspect-ratio:1/1;background:#fff;border:3px solid #203c69;border-radius:12px;box-shadow:0 5px 0 rgba(32,60,105,.14);color:#17345e;display:flex;font-size:1.65rem;font-weight:950;justify-content:center;min-height:0;padding:0;text-transform:lowercase;transition:transform .16s,box-shadow .16s,border-color .16s}
.kca-question[data-engine=missing_letters] .kca-choices button:hover,.kca-question[data-engine=missing_letters] .kca-choices button:focus-visible{border-color:#4169d8;box-shadow:0 7px 0 rgba(65,105,216,.18);outline:3px solid rgba(65,105,216,.18);transform:translateY(-2px)}
.kca-question[data-engine=missing_letters] .kca-choices button.is-correct{background:#e2f8ed;border-color:#35bd83;color:#12734c}.kca-question[data-engine=missing_letters] .kca-choices button.is-wrong{background:#fff0f0;border-color:#ef7777;color:#a53232}
@media(max-width:650px){.kca-question[data-engine=missing_letters] .kca-answer-panel{border-radius:20px;margin-top:14px;padding:22px 12px 25px}.kca-question[data-engine=missing_letters] .kca-answer-panel>h3{font-size:clamp(1.9rem,10vw,2.6rem);margin-bottom:21px}.kca-question[data-engine=missing_letters] .kca-choices{gap:9px;grid-template-columns:repeat(4,minmax(48px,58px))}.kca-question[data-engine=missing_letters] .kca-choices button{border-radius:10px;border-width:2px;font-size:1.35rem;min-height:0;padding:0}}
@media(min-width:651px) and (max-height:760px){.kca-question[data-engine=missing_letters] .kca-answer-panel{margin-top:10px;padding:15px 25px 18px}.kca-question[data-engine=missing_letters] .kca-answer-panel>h3{font-size:2rem;margin-bottom:13px}.kca-question[data-engine=missing_letters] .kca-choices{gap:14px;grid-template-columns:repeat(4,54px)}.kca-question[data-engine=missing_letters] .kca-choices button{font-size:1.3rem}}
@media(min-width:651px) and (max-height:680px){
    .kruclass-activity{padding:8px 14px}
    .kca-stage>header{font-size:.88rem}.kca-progress{height:5px;margin:3px 0 5px}.kca-exam-password{margin-bottom:5px}.kca-exam-password input{padding:5px 9px}
    .kca-picture{height:115px}.kca-question h3{margin:4px 0}.kca-word-prompt{font-size:2rem;margin:6px auto}
    .kca-choices{gap:4px}.kca-choices button{padding:5px 8px}
    .kca-image-choice img{height:68px}.kca-feedback{min-height:32px;padding-top:3px}
    .kca-flip-board{max-width:min(250px,36vh);width:min(100%,250px)}.kca-flip-hint{margin-top:3px}
    .kca-spelling-answer{font-size:1.3rem;margin:4px auto;min-height:34px}.kca-letters button{font-size:.95rem;min-width:34px;padding:3px 7px}
    .kca-spelling-actions{margin-top:4px}.kca-memory-showcase{height:120px}.kca-memory-note{font-size:.85rem;margin:3px 0}
}

/* Phones use normal document scrolling so answer feedback and the Next button cannot be clipped. */
@media(max-width:800px){
    .kruclass-activity{height:auto;min-height:0;overflow:visible;padding:14px 12px}
    .kca-stage{height:auto;min-height:0;overflow:visible}
    .kca-question{display:flex;min-height:0;padding:14px 0 20px}
    .kca-picture{height:clamp(150px,42vw,205px);max-width:100%}
    .kca-word-prompt{font-size:clamp(2.25rem,13vw,3.6rem);margin:24px auto 18px}
    .kca-question h3{font-size:1.2rem;margin:14px 0 10px}
    .kca-choices{gap:9px;max-width:100%;width:100%}
    .kca-choices button{min-height:48px;padding:10px;touch-action:manipulation}
    .kca-choices.has-images{grid-template-columns:repeat(2,minmax(0,1fr))}
    .kca-image-choice img{height:clamp(82px,24vw,115px)}
    .kca-feedback{flex-wrap:wrap;min-height:58px;padding:10px 0 4px}
    .kca-feedback .is-good,.kca-feedback .is-bad{max-width:100%}
    .kca-next{min-height:44px}
    .kca-flip-board{max-width:min(86vw,350px);width:min(100%,350px)}
    .kca-memory-watch{max-width:100%}.kca-memory-showcase{height:clamp(175px,48vw,230px)}
    .kca-memory-slots{grid-template-columns:repeat(2,minmax(0,1fr));max-width:330px}
    .kca-memory-choices{grid-template-columns:repeat(2,minmax(0,1fr))}
    .kca-spelling-answer{font-size:1.55rem;min-height:52px}
    .kca-letters button{min-height:44px;min-width:44px;touch-action:manipulation}
    .kca-spelling-actions button{min-height:44px;touch-action:manipulation}
    .kca-audio{height:92px;margin:24px auto 28px;width:92px}
}
