/* Tamaños visibles y contraste, según las referencias maestras. */
.approved-icon-crop{display:inline-block;background-repeat:no-repeat;flex-shrink:0;font-style:normal;vertical-align:middle}
#teacherWorkspace{--approved-ink:#000080}
#teacherWorkspace h1,#teacherWorkspace h2,#teacherWorkspace h3{color:#000080}
#teacherWorkspace .td-hero p{color:#405bb0}
#teacherWorkspace p,#teacherWorkspace small{color:#405c9e}
#teacherWorkspace .td-tile-icon{width:82px;height:82px}
#teacherWorkspace .td-tile{border:1px solid transparent}
#teacherWorkspace .td-tile-0{background:#e2f2ff}#teacherWorkspace .td-tile-1{background:#e6f8ed}#teacherWorkspace .td-tile-2{background:#fff7dd}#teacherWorkspace .td-tile-3{background:#f1eaff}
#teacherWorkspace .td-tile h2{font-size:19px}#teacherWorkspace .td-tile p{font-size:15px;line-height:1.4}
#teacherWorkspace .td-icon{width:30px;height:30px}
#teacherWorkspace .td-summary-grid>div{position:relative;padding-left:40px}
#teacherWorkspace .td-summary-grid .td-icon{position:absolute;left:0;top:0}
#teacherWorkspace .td-summary-grid strong{font-size:15px;color:#000080}
#teacherWorkspace .td-summary-grid p{font-size:15px;margin-top:8px}
#teacherWorkspace .td-sep-note .td-icon,#teacherWorkspace .td-internal-note .td-icon{width:40px;height:40px}
#teacherWorkspace .td-sep-note{background:#e7f4ff}#teacherWorkspace .td-internal-note{background:#e9f8f0}
#teacherWorkspace .td-mode-label{color:#6231ce;font-weight:700}
#teacherWorkspace .td-row-actions button,#teacherWorkspace .td-pagination button{color:#001b9d}
#teacherWorkspace .td-row-actions .td-primary{color:white}
#teacherWorkspace #tdModes button{border-radius:10px}
#teacherWorkspace #tdModes button[aria-pressed=true]{background:#e9f5ff}
#teacherWorkspace .td-room-stat strong{color:#000080}
#evaluationHostScreen .evaluation-roster li:has(strong):before{width:44px;height:44px;background-size:150% 150%;border-radius:50%}
#evaluationHostScreen .evaluation-roster li:has(strong)>strong{padding-left:54px;min-height:44px}
#evaluationHostScreen .evaluation-roster-state{color:#176c59}
#evaluationHostScreen .evaluation-room-code{color:#000080;border-color:#c5d8f4;letter-spacing:.18em}
#evaluationHostScreen .td-room-participants>h3{color:#000080}
#rqExit .rq-icon{display:inline-block;width:27px;height:27px}
#quizScreen.rs-question-screen .quiz-footer .rq-icon{width:25px;height:28px;display:inline-block}
#quizScreen.rs-question-screen .rq-mode>span .rq-icon{grid-column:1;grid-row:1/3}
#quizScreen.rs-question-screen .rq-side .rq-icon{width:46px;height:46px}
#quizScreen.rs-question-screen .rq-side-block{grid-template-columns:46px minmax(0,1fr);gap:12px}
#quizScreen.rs-question-screen .rq-mode{grid-template-columns:46px minmax(0,1fr);gap:0 12px}
#quizScreen.rs-question-screen .rq-side-block .progress-track{margin-left:58px;width:calc(100% - 58px)}
#quizScreen.rs-question-screen #rqProgress{margin-left:58px}
#quizScreen.rs-question-screen .rq-instruction-title .rq-icon{width:70px;height:70px}
#quizScreen.rs-question-screen .rq-pace .rq-icon{width:52px;height:52px}
#quizScreen.rs-question-screen .rq-instruction-title{font-size:20px;line-height:1.3;color:#0013c9}
#quizScreen.rs-question-screen .rq-pace{border-radius:12px}
#quizScreen.rs-question-screen .rq-pace strong{color:#0013c9}
#quizScreen.rs-question-screen .rq-question-card,#quizScreen.rs-question-screen .quiz-footer{border-color:#d0e7fc}
#appHome .home-mode strong,#appHome h1,#simpleSetup h1,#simpleSetup h2,#simpleSetup h3{color:#000080}
#simpleSetup .rs-choice strong{color:#000080}
#simpleSetup .rs-choice small,#simpleSetup .rs-hero p,#appHome .home-mode-description{color:#405da7}
#simpleSetup .rs-choice[aria-pressed=true]{background:#e9f5ff;border-color:#126eff}
#simpleSetup .rs-icon{width:54px;height:54px}
#simpleSetup .rs-icon img{object-fit:contain}
#simpleSetup [data-rs-mode=subjects] .rs-icon{background:url('/assets/approved-v2/curriculum-icons-reference.png') 17.96% 82.0% / 3100% 1077.7778% no-repeat}
#simpleSetup [data-rs-mode=subjects] .rs-icon img{visibility:hidden}
#simpleSetup .rs-footer button{border-radius:8px}
#appHome .home-mode-icon{width:104px;height:104px}
#appHome .home-mode-icon img{width:104px;height:104px}
#teacherWorkspace .td-question-row{border-bottom-color:#dce7fb}
#tdModal h2,#tdModal h3{color:#000080}
#tdModal .td-note{background:#eef7ff;color:#405b9d;border-radius:8px;padding:12px}
@media(max-width:1100px){#quizScreen.rs-question-screen .rq-instruction-title{font-size:17px}#quizScreen.rs-question-screen .rq-instruction-title .rq-icon{width:52px;height:52px}}
@media(max-width:760px){#teacherWorkspace .td-tile h2{font-size:18px}#teacherWorkspace .td-icon{width:28px;height:28px}#teacherWorkspace .td-tile-icon{width:75px;height:75px}}
@media(max-width:680px){#quizScreen.rs-question-screen .rq-side .rq-icon{width:36px;height:36px}#quizScreen.rs-question-screen .rq-side-block,#quizScreen.rs-question-screen .rq-mode{grid-template-columns:36px minmax(0,1fr);gap:10px}#quizScreen.rs-question-screen .rq-side-block .progress-track{margin-left:0;width:100%}#quizScreen.rs-question-screen #rqProgress{margin-left:0}#quizScreen.rs-question-screen .rq-instruction-title .rq-icon{width:44px;height:44px}#quizScreen.rs-question-screen .rq-pace .rq-icon{width:40px;height:40px}#quizScreen.rs-question-screen .rq-instruction-title{font-size:16px}}
@media(max-width:580px){#appHome .home-mode-icon,#appHome .home-mode-icon img{width:68px;height:68px}}
/* Conserva la proporción del recorte al apilar la cintilla en celular. */
@media(max-width:480px){#teacherWorkspace .td-hero-art{min-height:0}}
/* Sala de espera: sólo el mensaje y Lázaro, sin controles del mockup. */
#teacherWorkspace[data-page=results]:not(:has(#evaluationHostScreen[data-phase=results])) .td-hero-art{background-size:380% 672.142857%;background-position:78.733766% 9.987516%;aspect-ratio:440 / 140}
/* Submenús compartidos de campo, contenido, PDA, tema y familia. */
#compactFilterDialog{background:rgba(13,35,82,.42);padding:16px}
#compactFilterDialog .compact-filter-panel{width:min(720px,100%);color:#000080}
#compactFilterDialog .compact-filter-header{padding:20px 22px 12px;background:#edf7ff}
#compactFilterDialog h3{color:#000080;font-size:20px}
#compactFilterHelp{color:#405c9e;font-size:15px;line-height:1.5;margin:10px 0 0}
#compactFilterDialog button{box-shadow:none;border-radius:8px;font:inherit;font-weight:600;min-height:44px;transition:background .15s}
#compactFilterDialog .compact-filter-close{flex:0 0 44px;border:1px solid #c8ddf7;background:white;color:#003bc4;border-radius:50%;font-size:24px}
#compactFilterDialog .compact-filter-search{margin:16px 22px 10px;width:calc(100% - 44px);border:1px solid #b8cff0;border-radius:8px;outline:none}
#compactFilterDialog :focus-visible{outline:3px solid #8cbdff;outline-offset:2px}
#compactFilterDialog .compact-filter-list{padding:0 22px 16px;min-height:0}
#compactFilterDialog .compact-filter-group{color:#385da8;font-weight:600;padding:8px 10px;background:#edf6ff;border-radius:6px}
#compactFilterDialog .compact-filter-option{min-height:44px;box-sizing:border-box;align-items:center;font-weight:500;line-height:1.45;color:#000080;padding:10px;border-bottom:1px solid #e0ebfb;border-radius:6px;cursor:pointer}
#compactFilterDialog .compact-filter-option:has(input:checked){background:#eaf4ff}
#compactFilterDialog .compact-filter-option input{accent-color:#006aff;width:20px;height:20px}
#compactFilterDialog .compact-filter-footer{padding:16px 22px;gap:10px;border-top:1px solid #d9e8fb;background:#f8fbff;flex-wrap:wrap}
#compactFilterDialog .compact-filter-count{flex-basis:100%;font-size:14px;font-weight:500;color:#405c9e}
#compactFilterDialog .compact-filter-footer button{padding:10px 16px;border:1px solid #006aff;color:#0059dd;background:white}
#compactFilterDialog #compactFilterClear{margin-right:auto;border-color:transparent;background:transparent}
#compactFilterDialog #compactFilterApply{color:white;background:#006aff}
@media(max-width:480px){#compactFilterDialog{padding:10px}#compactFilterDialog .compact-filter-header{padding:16px}#compactFilterDialog h3{font-size:18px}#compactFilterDialog .compact-filter-list{padding:0 12px 12px}#compactFilterDialog .compact-filter-footer{padding:12px;display:grid;grid-template-columns:1fr 1fr}#compactFilterDialog .compact-filter-count,#compactFilterDialog #compactFilterClear{grid-column:1/-1}#compactFilterDialog #compactFilterClear{margin:0}#compactFilterDialog .compact-filter-footer button{font-size:14px;padding:10px 8px}}
#teacherWorkspace .td-delete-actions{display:flex;gap:12px;flex-wrap:wrap}.td-delete-actions button{min-height:44px;flex:1}.td-delete-actions+.td-note{margin-top:12px}#teacherWorkspace .td-row-actions{gap:8px}#teacherWorkspace .td-row-actions button[data-delete]{color:#a3293d;border-color:#e3bcc4}#tdNewActivity:disabled{opacity:.6;cursor:not-allowed}
@media(max-width:760px){#teacherWorkspace .td-row-actions{flex-wrap:wrap}#teacherWorkspace .td-row-actions button{min-width:85px}}
/* El diálogo vive fuera del contenedor docente. */
.td-modal .td-delete-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.td-modal .td-delete-actions button{flex:1;min-width:140px;min-height:44px}

/* Revisión de Repaso Simple: misma paleta y controles que la pantalla de preguntas. */
#reviewDialog{background:rgba(21,43,88,.48);padding:20px;box-sizing:border-box}
#reviewDialog .review-panel{width:min(920px,100%);max-height:calc(100dvh - 40px);min-height:0;border:1px solid #c9e5ff;border-radius:18px;background:#fff;box-shadow:0 16px 50px #15295c26;color:#000080}
#reviewDialog .review-header{padding:20px 24px;align-items:center;border-bottom:1px solid #d8eaff;background:linear-gradient(115deg,#eaf8ff,#d8eeff);flex-shrink:0}
#reviewDialog .review-header h3{color:#000080;font-size:1.3rem;font-weight:700}
#reviewDialog .review-position{display:inline-block;background:#fff;border-radius:8px;padding:5px 10px;color:#0754d7;font-weight:500;margin-top:8px!important}
#reviewDialog button{box-shadow:none;transform:none;border:1px solid #006aff;border-radius:9px;background:#fff;color:#0055de;font:inherit;font-weight:600;min-height:46px;padding:10px 18px}
#reviewDialog button:hover:not(:disabled){background:#edf6ff;box-shadow:none;transform:none}
#reviewDialog button:focus-visible{outline:3px solid #80baff;outline-offset:3px}
#reviewDialog .review-close{width:46px;padding:0;background:#fff;border-color:#c6dfff;font-size:1.6rem}
#reviewDialog .review-body{padding:24px;scrollbar-gutter:stable}
#reviewDialog .review-question{color:#000080;font-weight:600;font-size:1.35rem}
#reviewDialog .review-option{border:1px solid #bddcff;border-radius:12px;padding:14px;gap:14px;font-weight:400;color:#000080;font-size:1rem;line-height:1.5}
#reviewDialog .review-letter{background:linear-gradient(135deg,#008cff,#2464ff);font-weight:600}
#reviewDialog .review-option.is-correct{border-color:#19ad6b;background:#effbf5}
#reviewDialog .review-option.is-selected-wrong{border-color:#e36570;background:#fff3f4}
#reviewDialog .is-correct .review-letter{background:#009d61}
#reviewDialog .is-selected-wrong .review-letter{background:#cf4054}
#reviewDialog .review-indicator{font-weight:600;color:#405c9e}
#reviewDialog .review-detail{background:#eff8ff;color:#405c9e;font-weight:400;line-height:1.6;border:1px solid #e0efff}
#reviewDialog .review-footer{border-top:1px solid #d8eaff;padding:16px 24px;flex-shrink:0;gap:12px}
#reviewDialog #reviewNextBtn{background:#006aff;color:#fff}
#reviewDialog #reviewNextBtn:hover{background:#005be0}
#reviewDialog button:disabled{background:#f0f4f9;color:#66768d;border-color:#d6e0ec;opacity:1;cursor:default}
@media(max-width:680px){#reviewDialog{padding:10px}#reviewDialog .review-panel{max-height:calc(100dvh - 20px);width:100%;border-radius:14px}#reviewDialog .review-header,#reviewDialog .review-body{padding:16px}#reviewDialog .review-header h3{font-size:1.12rem}#reviewDialog .review-footer{padding:12px;display:grid;grid-template-columns:1fr 1fr;gap:8px}#reviewDialog #reviewReturnBtn{grid-column:1 / -1}#reviewDialog .review-footer button{min-width:0;padding:10px;font-size:.9rem}#reviewDialog .review-option{grid-template-columns:36px minmax(0,1fr);padding:10px;gap:10px}#reviewDialog .review-letter{width:36px;height:36px}}

/* Lázaro acompaña la retroalimentación sin gestos de desaprobación. */
#quizScreen #feedback:has(.learning-feedback){background:#edf8ff;border:1px solid #c8e5ff;border-radius:14px;padding:18px;color:#173c85;font-weight:400}
#quizScreen #feedback.good:has(.learning-feedback){background:#f0fbf5;border-color:#c8ead8}
.learning-feedback{display:flex;align-items:flex-start;gap:20px;line-height:1.55}
.learning-mascot{position:relative;flex:0 0 86px;width:86px;height:104px;display:block}
.learning-mascot>img{width:100%;height:100%;object-fit:contain}
.learning-badge{position:absolute;right:-8px;bottom:2px;display:grid;place-items:center;background:#fff7d9;border:2px solid white;border-radius:50%;width:40px;height:40px;color:#eea500;font-size:30px;box-shadow:0 3px 10px #245b8c15}
.learning-badge img{width:32px;height:32px;object-fit:contain}
.learning-copy{display:grid;gap:9px;min-width:0;overflow-wrap:anywhere}
#quizScreen .learning-title{color:#005fcb;font-size:1.2rem;font-weight:700}
.learning-answer{padding-top:6px}.learning-explanation{font-size:1rem}
@media(max-width:480px){.learning-feedback{gap:14px}.learning-mascot{flex-basis:56px;width:56px;height:76px}.learning-badge{width:30px;height:30px;font-size:23px}.learning-badge img{width:25px;height:25px}#quizScreen #feedback:has(.learning-feedback){padding:14px}#quizScreen .learning-title{font-size:1.08rem}}

#contestFeedback:has(.learning-feedback){background:#edf8ff;border:1px solid #c8e5ff;border-radius:14px;padding:18px;color:#173c85;font-weight:400}
#contestFeedback.good:has(.learning-feedback){background:#f0fbf5;border-color:#c8ead8}
#contestFeedback .learning-title{color:#005fcb;font-size:1.2rem;font-weight:700}
@media(max-width:480px){#contestFeedback:has(.learning-feedback){padding:14px}#contestFeedback .learning-title{font-size:1.08rem}}

#finalMessage:has(.learning-feedback){background:#f0fbf5;border:1px solid #c8ead8;border-radius:14px;padding:18px;color:#173c85;font-weight:400}#finalMessage .learning-title{color:#005fcb;font-size:1.25rem;font-weight:700}

#reviewSummary[hidden],#reviewMissedBtn[hidden],#missedList[hidden]{display:none!important}
#contestScreen .contest-actions{position:sticky;top:auto;bottom:0;z-index:12;background:#fff;padding:12px 0 calc(12px + env(safe-area-inset-bottom));margin:18px 0 0;border-top:1px solid #d9e9f8;display:flex;flex-wrap:wrap;gap:10px}#contestScreen .contest-actions button{font-size:15px;padding:10px 14px;min-height:44px}#contestScreen .contest-layout{align-items:start;grid-template-columns:minmax(0,1fr) 270px}#contestScreen .contest-side{gap:12px}#contestScreen .contest-board{gap:8px}#contestScreen .team-card{padding:10px}#contestScreen .team-card[data-playing=false]{filter:grayscale(1);background:#f1f3f5;color:#68717d;border-color:#dce1e7}#contestScreen .team-card[data-playing=true]{background:#eaf5ff;border-color:#70b4ff}#contestScreen .team-state{display:block;font-size:12px;line-height:1.3}#contestScreen .question{font-size:clamp(22px,1.7vw,32px);line-height:1.35;margin:12px 0 18px}#contestScreen .option{font-size:clamp(16px,1.1vw,21px);padding:12px;min-height:64px}#contestScreen .contest-access{border:1px solid #d9e9f8;border-radius:10px;padding:12px}#contestScreen summary{cursor:pointer}#contestScreen .progress-tokens{display:none}#contestScreen .contest-access .join-link{margin-top:12px}#contestReplayPanel{padding:20px;border:1px solid #cfe2fa;background:#f3faff;border-radius:12px;margin:18px 0}#contestReplayPanel .actions{display:flex;gap:12px;flex-wrap:wrap}@media(min-width:1350px){#contestScreen .options{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){#contestScreen .contest-layout{grid-template-columns:1fr}#contestScreen .contest-actions{gap:8px}#contestScreen .contest-actions button{flex:1 1 140px}}

#resultsScreen button[hidden]{display:none!important}@media(min-width:1100px){#resultsScreen .results-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* Invitación al concurso: código enlazado y QR en filas. */
#contestScreen .contest-access .qr-panel{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%;min-width:0}
#contestScreen .contest-access .join-link>strong{display:block;line-height:1.45;margin-bottom:12px}
#contestScreen #playerLink{display:block;max-width:100%;font-size:1.4rem;font-weight:700;letter-spacing:.08em;overflow-wrap:anywhere;text-align:center}
#contestScreen .contest-access #playerQr{width:150px;height:150px;max-width:100%;object-fit:contain;flex:none;box-sizing:border-box}

#contestScreen{overflow:visible}
