/* Deletrear palabras 2.1.0 · Shared forest family, speech and spelling controls. */
.aula-spelling-app [data-spell-ui="app"] { position: relative; z-index: 1; width: min(1220px, 100%); min-height: 0; margin: 0 auto; padding: 5px 25px 26px; }
.aula-spelling-app [data-spell-ui="app"]:focus { outline: none; }
.aula-spelling-app [data-spell-ui="closeModal"] { margin-top: 14px; }
.aula-spelling-app .brand-title { white-space: normal; font-size: clamp(27px, 3vw, 38px); }
.aula-spelling-app .home-title h1 { max-width: 900px; font-size: clamp(53px, 6.9vw, 92px); line-height: 1.03; letter-spacing: -3px; }
.aula-spelling-app .home-title p { font-size: 21px; }
.aula-spelling-app .home-scene { gap: 28px; }
.aula-spelling-app .mode h2 { font-size: 32px; }
.aula-spelling-app .spelling-mode-note { margin: 16px auto 0; color: #fff2c7; font-size: 20px; font-weight: 900; text-align: center; text-shadow: 0 2px 4px #143c30; }
.aula-spelling-app .spelling-audio-warning { margin: 17px 0; padding: 15px 18px; border: 2px solid #bb934d; border-radius: 13px; background: #fff3d1; color: #76542f; font-size: 19px; font-weight: 800; line-height: 1.4; }
.aula-spelling-app .spelling-prompt { flex-shrink: 0; margin: 0; color: #365b43; text-align: center; }
.aula-spelling-app .spelling-prompt h2, .aula-spelling-app h2.spelling-prompt { font-size: 32px; line-height: 1.05; }
.aula-spelling-app .spelling-prompt p { margin-top: 6px; color: #687450; font-size: 20px; font-weight: 800; line-height: 1.2; }
.aula-spelling-app[data-view="play"] [data-spell-ui="app"] { display: flex; flex-direction: column; flex: 1; min-height: 0; padding-top: 1px; padding-bottom: 15px; }
.aula-spelling-app[data-view="play"] .score-strip { flex-shrink: 0; }
.aula-spelling-app .play-layout { grid-template-columns: minmax(0, 1fr) 270px; gap: 15px; }
.aula-spelling-app .spelling-stage { position: relative; display: flex; flex-direction: column; gap: 12px; min-width: 0; min-height: 0; padding: 19px; border: 2px solid #cda962; border-radius: 22px; background: radial-gradient(ellipse at 40% 0, #fffdf0, transparent 75%), linear-gradient(135deg, #f9ecc6, #efd9a0); color: #2e513e; box-shadow: 0 6px 0 #79522b, 0 10px 15px #173b3454, inset 0 0 0 4px #fff7d7ab; }
.aula-spelling-app .letter-slots, .aula-spelling-app .answer-letters { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; flex-shrink: 0; gap: 7px; min-width: 0; margin: 0; padding: 0; }
.aula-spelling-app .letter-slot { display: inline-flex; align-items: center; justify-content: center; width: 47px; min-width: 40px; height: 54px; padding: 4px; border: 2px solid #c2a264; border-radius: 10px; color: #2d6749; background: #fff9e5; box-shadow: 0 3px 0 #b18b4a, inset 0 1px 0 #ffffff; font-size: 32px; font-weight: 1000; line-height: 1; text-transform: uppercase; }
.aula-spelling-app .letter-slot.is-empty { color: #a79d75; background: #e6dbb8; box-shadow: inset 0 2px 3px #b08b4921, 0 2px 0 #c2a56b; }
.aula-spelling-app .letter-slot.is-filled { border-color: #8ca46b; background: #fffbed; }
.aula-spelling-app .spelling-form { display: flex; flex-shrink: 0; width: 100%; min-width: 0; margin: 0; }
.aula-spelling-app .spelling-input { display: block; width: 100%; min-width: 0; min-height: 65px; margin: 0; padding: 10px 15px; border: 3px solid #9eaf78; border-radius: 13px; color: #285b40; background: #fffdf0; box-shadow: inset 0 2px 3px #a18b4d1f; font-family: inherit; font-size: 36px; font-weight: 950; line-height: 1.15; letter-spacing: 1px; text-align: center; text-transform: uppercase; }
.aula-spelling-app .spelling-input::placeholder { color: #7b8868; font-size: 24px; font-weight: 800; letter-spacing: 0; text-transform: none; opacity: 1; }
.aula-spelling-app .spelling-input:disabled { opacity: .65; }
.aula-spelling-app .spelling-status { flex-shrink: 0; min-height: 0; margin: 0; color: #566b49; font-size: 20px; font-weight: 900; line-height: 1.25; text-align: center; }
.aula-spelling-app .spelling-status:empty { display: none; }
.aula-spelling-app .spelling-status.is-error, .aula-spelling-app .spelling-status[data-kind="error"] { color: #a64c32; }
.aula-spelling-app .spelling-status.is-success, .aula-spelling-app .spelling-status[data-kind="correct"] { color: #34774b; }
.aula-spelling-app .spelling-keyboard { display: grid; grid-template-columns: repeat(auto-fit, minmax(44px, 1fr)); grid-auto-rows: minmax(44px, 1fr); align-content: stretch; flex: 1; gap: 8px; min-width: 0; min-height: 98px; margin: 0; padding: 0 0 4px; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: #9da97d #eee2be; }
.aula-spelling-app .letter-key { display: inline-flex; align-items: center; justify-content: center; width: 100%; min-width: 44px; min-height: 44px; padding: 6px 3px; border: 2px solid #b99b5d; border-radius: 10px; color: #315b40; background: linear-gradient(#fffdf0, #f1dfa9); box-shadow: 0 3px 0 #a27b3d, inset 0 1px 0 #ffffff; font-family: inherit; font-size: 28px; font-weight: 1000; line-height: 1; text-transform: uppercase; touch-action: manipulation; }
.aula-spelling-app .letter-key:hover { background: #fff7cf; border-color: #6f9461; }
.aula-spelling-app .letter-key:active { transform: translateY(2px); box-shadow: 0 1px 0 #a27b3d; }
.aula-spelling-app .letter-key.is-delete { grid-column: span 2; color: #9a5439; background: linear-gradient(#fff5dc, #e7cda0); font-size: 25px; }
.aula-spelling-app .letter-key.is-delete { gap: 4px; }
.aula-spelling-app .letter-key.is-delete span { font-size: 16px; font-weight: 900; text-transform: none; letter-spacing: 0; }
.aula-spelling-app .letter-key .game-icon { width: 28px; height: 28px; }
.aula-spelling-app .side-controls { grid-template-rows: minmax(156px, .95fr) minmax(0, 1.7fr); }
.aula-spelling-app .time-panel { padding: 5px; }
.aula-spelling-app .actions .button { min-height: 90px; padding-inline: 14px; font-size: 27px; gap: 10px; }
.aula-spelling-app .actions .button > span { overflow-wrap: anywhere; }
.aula-spelling-app .actions .button .game-icon { width: 31px; height: 31px; }
.aula-spelling-app .spelling-oral-cue { display: flex; flex-direction: column; align-items: center; justify-content: center; flex: 1; gap: 20px; min-height: 0; padding: 16px; color: #3f704f; text-align: center; }
.aula-spelling-app .spelling-oral-cue .game-icon { width: 145px; height: 145px; filter: drop-shadow(0 5px 0 #bba36b45); }
.aula-spelling-app .spelling-oral-cue h2, .aula-spelling-app .spelling-oral-cue strong { display: block; max-width: 540px; margin: 0; color: #315f43; font-size: clamp(34px, 3.6vw, 47px); font-weight: 1000; line-height: 1.08; letter-spacing: -1px; }
.aula-spelling-app .spelling-oral-cue > span { color: #64744f; font-size: 22px; font-weight: 900; line-height: 1.25; }
.aula-spelling-app .spelling-oral-cue p { max-width: 440px; margin: 0; color: #64744f; font-size: 23px; font-weight: 900; line-height: 1.25; }
.aula-spelling-app .spelling-stage.is-oral { justify-content: center; }
.aula-spelling-app .spelling-stage.is-paused, .aula-spelling-app .spelling-stage.is-revealed { align-items: center; justify-content: center; gap: 20px; padding: 24px; text-align: center; }
.aula-spelling-app .spelling-stage.is-paused h2, .aula-spelling-app .spelling-stage.is-revealed h2 { font-size: 44px; }
.aula-spelling-app .spelling-stage.is-paused .game-icon { width: 90px; height: 90px; }
.aula-spelling-app .spelling-stage.is-paused .button .game-icon { width: 30px; height: 30px; }
.aula-spelling-app .spelling-answer { display: flex; flex-direction: column; align-items: center; gap: 20px; min-width: 0; width: 100%; margin: 12px 0; color: #2e6142; font-size: clamp(42px, 5.3vw, 72px); font-weight: 1000; line-height: 1.05; letter-spacing: -1.8px; overflow-wrap: anywhere; text-align: center; }
.aula-spelling-app .spelling-answer, .aula-spelling-app .spelling-answer > strong, .aula-spelling-app .spelling-answer h2, .aula-spelling-app .spelling-answer h3 { display: block; width: 100%; max-width: 100%; color: inherit; font-size: clamp(42px, 5.3vw, 72px); font-weight: 1000; line-height: 1.05; letter-spacing: -1.8px; overflow-wrap: anywhere; }
.aula-spelling-app .spelling-rule-note { margin: 12px 0 18px; color: #62704c; font-size: 19px; font-weight: 900; line-height: 1.35; }
.aula-spelling-app .spelling-answer .answer-letters { gap: 8px; }
.aula-spelling-app .spelling-answer .letter-slot { width: 49px; height: 57px; font-size: 33px; }
.aula-spelling-app .spelling-summary { width: min(880px, 100%); }
.aula-spelling-app .spelling-summary .spelling-correction { margin: 17px 0 8px; padding: 17px; border: 1px solid #c7b37d; border-radius: 16px; background: #fff8ddba; color: #5b704d; font-size: 22px; line-height: 1.3; }
.aula-spelling-app .spelling-summary .spelling-correction p { margin: 8px 0; font-size: 21px; }
.aula-spelling-app .spelling-summary .summary-actions { margin-top: 22px; }
.aula-spelling-app .spelling-summary .summary-actions .button { min-height: 65px; }
.aula-spelling-app .spelling-summary .result-medal { min-height: 90px; }
.aula-spelling-app .spelling-score { font-size: 61px; font-weight: 1000; line-height: 1; color: #37734d; }
.aula-spelling-app .spelling-winner { color: #316347; font-size: clamp(35px, 4vw, 50px); font-weight: 1000; overflow-wrap: anywhere; }
.aula-spelling-app:fullscreen [data-spell-ui="app"] { width: min(1320px, 100%); }
@media (max-height: 820px) and (min-width: 801px) {
	.aula-spelling-app[data-view="play"] [data-spell-ui="app"] { padding: 1px 18px 10px; }
	.aula-spelling-app[data-view="play"] .play-layout { grid-template-columns: minmax(0, 1fr) 250px; gap: 13px; }
	.aula-spelling-app[data-view="play"] .spelling-stage { gap: 9px; padding: 14px; border-radius: 18px; }
	.aula-spelling-app[data-view="play"] .spelling-prompt h2, .aula-spelling-app[data-view="play"] h2.spelling-prompt { font-size: 30px; }
	.aula-spelling-app[data-view="play"] .spelling-prompt p { margin-top: 4px; font-size: 19px; }
	.aula-spelling-app[data-view="play"] .letter-slot { width: 43px; min-width: 38px; height: 48px; font-size: 30px; }
	.aula-spelling-app[data-view="play"] .spelling-input { min-height: 58px; padding-block: 8px; font-size: 33px; }
	.aula-spelling-app[data-view="play"] .spelling-keyboard { gap: 7px; min-height: 95px; }
	.aula-spelling-app[data-view="play"] .letter-key { font-size: 27px; }
	.aula-spelling-app[data-view="play"] .side-controls { grid-template-rows: 148px minmax(0, 1fr); gap: 9px; }
	.aula-spelling-app[data-view="play"] .actions .button { min-height: 0; font-size: 26px; }
	.aula-spelling-app[data-view="play"] .spelling-oral-cue { gap: 18px; }
	.aula-spelling-app[data-view="play"] .spelling-oral-cue .game-icon { width: 125px; height: 125px; }
	.aula-spelling-app[data-view="play"] .spelling-answer, .aula-spelling-app[data-view="play"] .spelling-answer > strong, .aula-spelling-app[data-view="play"] .spelling-answer h2 { font-size: 55px; }
}
@media (max-width: 800px) {
	.aula-spelling-app [data-spell-ui="app"] { padding: 3px 15px 22px; }
	.aula-spelling-app .brand-title { font-size: 31px; }
	.aula-spelling-app .home-title h1 { font-size: 66px; }
	.aula-spelling-app .mode h2 { font-size: 28px; }
	.aula-spelling-app[data-view="play"] [data-spell-ui="app"] { display: block; padding-bottom: 22px; }
	.aula-spelling-app .play-layout { grid-template-columns: minmax(0, 1fr) 210px; min-height: 550px; gap: 12px; }
	.aula-spelling-app .spelling-stage { padding: 15px; gap: 13px; }
	.aula-spelling-app .spelling-prompt h2, .aula-spelling-app h2.spelling-prompt { font-size: 29px; }
	.aula-spelling-app .letter-slot { width: 42px; min-width: 36px; height: 49px; font-size: 30px; }
	.aula-spelling-app .spelling-input { min-height: 60px; font-size: 32px; padding-inline: 10px; }
	.aula-spelling-app .spelling-input::placeholder { font-size: 22px; }
	.aula-spelling-app .spelling-keyboard { gap: 7px; min-height: 151px; }
	.aula-spelling-app .letter-key { font-size: 27px; }
	.aula-spelling-app .side-controls { grid-template-rows: 180px minmax(0, 1fr); }
	.aula-spelling-app .actions .button { min-height: 89px; padding-inline: 10px; font-size: 25px; gap: 8px; }
	.aula-spelling-app .actions .button .game-icon { width: 27px; height: 27px; }
	.aula-spelling-app .spelling-oral-cue { gap: 17px; padding-inline: 0; }
	.aula-spelling-app .spelling-oral-cue .game-icon { width: 110px; height: 110px; }
	.aula-spelling-app .spelling-oral-cue h2, .aula-spelling-app .spelling-oral-cue strong { font-size: 34px; }
	.aula-spelling-app .spelling-oral-cue p { font-size: 21px; }
	.aula-spelling-app .spelling-answer, .aula-spelling-app .spelling-answer > strong, .aula-spelling-app .spelling-answer h2, .aula-spelling-app .spelling-answer h3 { font-size: 47px; }
}
@media (min-width: 541px) and (max-width: 660px) {
	.aula-spelling-app .brand-title { font-size: 27px; }
	.aula-spelling-app .play-layout { grid-template-columns: minmax(0, 1fr) 190px; min-height: 650px; }
	.aula-spelling-app .spelling-stage { padding: 12px; }
	.aula-spelling-app .spelling-keyboard { gap: 6px; }
	.aula-spelling-app .spelling-prompt h2, .aula-spelling-app h2.spelling-prompt { font-size: 27px; }
	.aula-spelling-app .actions .button { font-size: 24px; }
	.aula-spelling-app .actions .button .game-icon { width: 25px; height: 25px; }
}
@media (max-width: 540px) {
	.aula-spelling-app [data-spell-ui="app"] { padding: 2px 12px 20px; }
	.aula-spelling-app .brand-title { max-width: 155px; font-size: 24px; line-height: 1.02; }
	.aula-spelling-app .brand { gap: 7px; }
	.aula-spelling-app .home-title h1 { font-size: clamp(45px, 11.2vw, 60px); letter-spacing: -2px; }
	.aula-spelling-app .home-title p { font-size: 20px; }
	.aula-spelling-app .home-scene { gap: 23px; }
	.aula-spelling-app .mode h2 { font-size: 32px; }
	.aula-spelling-app[data-view="play"] [data-spell-ui="app"] { padding: 2px 12px 20px; }
	.aula-spelling-app .play-layout { grid-template-columns: minmax(0, 1fr); min-height: 0; gap: 17px; }
	.aula-spelling-app .spelling-stage { gap: 15px; min-height: 0; padding: 19px 13px; border-radius: 20px; }
	.aula-spelling-app .spelling-prompt h2, .aula-spelling-app h2.spelling-prompt { font-size: 30px; }
	.aula-spelling-app .spelling-prompt p { margin-top: 7px; font-size: 20px; }
	.aula-spelling-app .letter-slots { gap: 7px; }
	.aula-spelling-app .letter-slot { width: 42px; min-width: 36px; height: 49px; font-size: 30px; }
	.aula-spelling-app .spelling-form { width: 100%; }
	.aula-spelling-app .spelling-input { min-height: 64px; padding: 10px; font-size: 32px; }
	.aula-spelling-app .spelling-input::placeholder { font-size: 23px; }
	.aula-spelling-app .spelling-status { font-size: 20px; }
	.aula-spelling-app .spelling-keyboard { grid-template-columns: repeat(auto-fit, minmax(44px, 1fr)); grid-auto-rows: minmax(48px, auto); gap: 7px; min-height: 0; max-height: 420px; flex: none; padding-bottom: 5px; }
	.aula-spelling-app .letter-key { min-width: 44px; min-height: 48px; padding: 8px 3px; font-size: 28px; }
	.aula-spelling-app .letter-key.is-delete { font-size: 25px; }
	.aula-spelling-app .side-controls { grid-template-rows: auto auto; gap: 14px; }
	.aula-spelling-app .time-panel { min-height: 129px; padding: 8px 14px; }
	.aula-spelling-app .actions { grid-template-columns: repeat(3, minmax(0, 1fr)); grid-template-rows: auto; gap: 9px; }
	.aula-spelling-app .actions .button { min-height: 118px; padding: 12px 5px; gap: 8px; font-size: 21px; }
	.aula-spelling-app .actions .button > span { flex: 0; }
	.aula-spelling-app .actions .button .game-icon { width: 30px; height: 30px; }
	.aula-spelling-app .spelling-oral-cue { gap: 22px; min-height: 300px; padding: 15px 4px; }
	.aula-spelling-app .spelling-oral-cue .game-icon { width: 120px; height: 120px; }
	.aula-spelling-app .spelling-oral-cue h2, .aula-spelling-app .spelling-oral-cue strong { font-size: 35px; }
	.aula-spelling-app .spelling-oral-cue p { font-size: 22px; }
	.aula-spelling-app .spelling-stage.is-paused, .aula-spelling-app .spelling-stage.is-revealed { min-height: 350px; padding: 24px 16px; }
	.aula-spelling-app .spelling-stage.is-paused h2, .aula-spelling-app .spelling-stage.is-revealed h2 { font-size: 37px; }
	.aula-spelling-app .spelling-answer { gap: 18px; margin-block: 15px; }
	.aula-spelling-app .spelling-answer, .aula-spelling-app .spelling-answer > strong, .aula-spelling-app .spelling-answer h2, .aula-spelling-app .spelling-answer h3 { font-size: 44px; letter-spacing: -1px; }
	.aula-spelling-app .spelling-answer .answer-letters { gap: 7px; }
	.aula-spelling-app .spelling-answer .letter-slot { width: 41px; height: 48px; font-size: 30px; }
	.aula-spelling-app .spelling-summary .spelling-correction { padding: 15px 10px; font-size: 21px; }
	.aula-spelling-app .spelling-summary .spelling-correction p { font-size: 20px; }
	.aula-spelling-app .spelling-score { font-size: 55px; }
	.aula-spelling-app .spelling-summary .summary-actions .button { min-height: 65px; font-size: 25px; }
}
@media (max-width: 360px) {
	.aula-spelling-app [data-spell-ui="app"], .aula-spelling-app[data-view="play"] [data-spell-ui="app"] { padding-inline: 10px; }
	.aula-spelling-app .brand-title { max-width: 130px; font-size: 22px; }
	.aula-spelling-app .spelling-stage { padding-inline: 10px; }
	.aula-spelling-app .spelling-keyboard { gap: 6px; }
	.aula-spelling-app .letter-slot { width: 39px; height: 47px; font-size: 28px; }
	.aula-spelling-app .spelling-input { font-size: 29px; }
	.aula-spelling-app .spelling-input::placeholder { font-size: 21px; }
	.aula-spelling-app .actions .button { font-size: 20px; }
}
@media (prefers-reduced-motion: reduce) {
	.aula-spelling-app .letter-key { transition: none !important; animation: none !important; }
}

/* The letter workshop has its own indigo, violet and cyan world. */
.aula-spelling-app { --tabu-ink: #333760; --tabu-muted: #666887; --tabu-green: #6269b2; --tabu-green-dark: #30375f; --tabu-line: #bdb1dc; border-color: #575e91; background-color: #282e55; background-image: linear-gradient(180deg, #191f3c0d, #26264700 35%, #2028481f), url('../images/spelling-board.webp'); box-shadow: 0 18px 50px #23284230, inset 0 0 0 2px #b0add17d; }
.aula-spelling-app .brand { color: #eeedff; text-shadow: 0 3px 0 #4c4775, 0 5px 8px #222b50; }
.aula-spelling-app .icon-button, .aula-spelling-app .games-link { border-color: #c0b6e4b3; color: #f7f2ff; background: linear-gradient(#56598c, #343c68); box-shadow: 0 4px 0 #222947d9, inset 0 1px 0 #c2b8e770; }
.aula-spelling-app .home-title h1 { color: #e4eaff; text-shadow: 0 4px 0 #7872ab, 0 8px 0 #353453, 0 12px 14px #212b51c9; -webkit-text-stroke-color: #f4f3ff; }
.aula-spelling-app .home-title p { color: #eee8ff; background: #30345fe8; border-color: #b6a8d59c; }
.aula-spelling-app .mode { color: #42456e; border-color: #c1b7de; background: radial-gradient(ellipse at 50% 0, #fffaff, transparent 69%), linear-gradient(160deg, #e8e1f6, #c9c8eb); box-shadow: 0 7px 0 #625c83, 0 10px 0 #303b55, 0 18px 22px #2234536e, inset 0 0 0 4px #f5edff9c; }
.aula-spelling-app .mode.featured { color: #f7f2ff; border-color: #c7c0ee; background: radial-gradient(ellipse at 50% 0, #9390cc, transparent 68%), linear-gradient(150deg, #6976b4, #444b82); box-shadow: 0 7px 0 #363c6b, 0 10px 0 #242e51, 0 18px 22px #2234536e, inset 0 0 0 4px #c9c4e74f; }
.aula-spelling-app .mode-caption { color: #626385; }
.aula-spelling-app .mode.featured .mode-caption { color: #e5e4ff; }
.aula-spelling-app .mode-start { color: #3d466f; border-color: #8d9cba; background: #c8e7ec; box-shadow: 0 3px 0 #788ba8; }
.aula-spelling-app :is(.panel, .ready, .summary) { color: #343b64; border-color: #b8a9d5; background: radial-gradient(ellipse at 30% 0, #fffbff, transparent 70%), linear-gradient(120deg, #e9e6f9, #d3d8ee); box-shadow: 0 6px 0 #625b83, 0 11px 25px #222e5373, inset 0 0 0 4px #f9f3ff8c; }
.aula-spelling-app :is(.field, .field-label, .team-names-group legend, .team-name-label, .toggle, .eyebrow) { color: #52567e; }
.aula-spelling-app .field :is(input, select, textarea) { color: #3c4774; background: #fbfaff; border-color: #b7afd0; }
.aula-spelling-app .field input::placeholder { color: #8285a0; }
.aula-spelling-app :is(.settings-rules, .team-names-group) { border-color: #bcb6d3; background: #fffaff36; }
.aula-spelling-app .settings-rules { justify-content: center; }
.aula-spelling-app .toggle input { accent-color: #7067b1; }
.aula-spelling-app .setup-footer { border-color: #b9b7cf; }
.aula-spelling-app .badge { color: #5b5c81; background: #d4d5eb; border-color: #a3a4c6; }
.aula-spelling-app .spelling-rule-note { color: #666986; }
.aula-spelling-app .button.primary, .aula-spelling-app .button.dark { border-color: #48548a; color: #fff9ff; background: linear-gradient(#8184cf, #525da5); box-shadow: 0 5px 0 #303a70, 0 7px 9px #2530471f, inset 0 2px 0 #c3c7ee; text-shadow: 0 2px 0 #343c7c80; }
.aula-spelling-app .button.coral { border-color: #89538b; color: #fff9ff; background: linear-gradient(#bd87bc, #8b5898); box-shadow: 0 5px 0 #61426c, 0 7px 9px #2530471f, inset 0 2px 0 #e6b5db; text-shadow: 0 2px 0 #71457d80; }
.aula-spelling-app .button.blue { border-color: #38738a; color: #fffaff; background: linear-gradient(#6bafc5, #3e829d); box-shadow: 0 5px 0 #2a5169, 0 7px 9px #2530471f, inset 0 2px 0 #b7e6ef; text-shadow: 0 2px 0 #2a607d80; }
.aula-spelling-app .button.soft, .aula-spelling-app .link-button, .aula-spelling-app .back { color: #f6f0ff; border-color: #b5b1d7a1; background: linear-gradient(#565d8cf5, #373f68f5); box-shadow: 0 3px 0 #252e51, inset 0 1px 0 #c0b8e740; }
.aula-spelling-app .ready-cues > span { color: #5b6286; border-color: #b7b7d3; background: #efecfb; }
.aula-spelling-app .ready p { color: #666b8b; }
.aula-spelling-app .ready .link-button { color: #5c6285; background: transparent; box-shadow: none; }
.aula-spelling-app .score-chip { color: #4f577c; border-color: #c6bedc; border-left-color: var(--team-color); background: #efedfaed; box-shadow: 0 3px 0 #615c7fb3, inset 0 1px 0 #fffaff; }
.aula-spelling-app .score-chip b { color: #515b8d; }
.aula-spelling-app .score-chip.active { color: #faf5ff; border-color: #d8d0ff; border-left-color: var(--team-color); background: linear-gradient(#7477b7, #465287); box-shadow: 0 4px 0 #293760, 0 0 0 2px #aaa8d9, inset 0 2px 0 #d0d4f48c; text-shadow: 0 1px 1px #262c55; }
.aula-spelling-app .score-chip.active b { color: #d9f6ff; }
.aula-spelling-app .round-label { color: #f0ebff; text-shadow: 0 2px 4px #283357; }
.aula-spelling-app .spelling-stage { color: #3c4770; border-color: #b9add6; background: radial-gradient(ellipse at 40% 0, #fffaff, transparent 75%), linear-gradient(135deg, #efecfb, #d8ddf0); box-shadow: 0 6px 0 #655c87, 0 10px 15px #22335354, inset 0 0 0 4px #fff6ffab; }
.aula-spelling-app .spelling-prompt { color: #464f7b; }
.aula-spelling-app .spelling-status { color: #626d8b; }
.aula-spelling-app .spelling-input { color: #414d7f; border-color: #a1a4d0; background: #fdfaff; }
.aula-spelling-app .spelling-input::placeholder { color: #7e84a1; }
.aula-spelling-app .letter-slot { width: 47px; height: 47px; min-height: 0; aspect-ratio: 1 / 1; color: #465782; border-color: #aca7c9; background: #fcfaff; box-shadow: 0 3px 0 #8e8bb2, inset 0 1px 0 #fff; }
.aula-spelling-app .letter-slot.is-empty { color: #9899b4; background: #dad9ed; box-shadow: inset 0 2px 3px #6c6d9321, 0 2px 0 #aca7c9; }
.aula-spelling-app .letter-slot.is-filled { border-color: #98aacb; background: #f5f6ff; }
.aula-spelling-app .spelling-keyboard, .aula-spelling-app[data-view="play"] .spelling-keyboard { grid-auto-rows: max-content; align-content: start; align-items: start; min-height: 0; scrollbar-color: #9b9bc2 #e3e0f1; }
.aula-spelling-app .letter-key { height: auto; min-height: 44px; padding: 0; aspect-ratio: 1 / 1; align-self: start; border-radius: 6px; color: #455481; border-color: #a8a6c7; background: linear-gradient(#fefaff, #dce1f4); box-shadow: 0 3px 0 #8588ae, inset 0 1px 0 #fff; }
.aula-spelling-app .letter-key:hover { background: #f5f6ff; border-color: #8a91bd; }
.aula-spelling-app .letter-key.is-delete { aspect-ratio: 2 / 1; color: #6f5285; background: linear-gradient(#f7efff, #d7cbe8); }
.aula-spelling-app .time-panel { color: #f6f0ff; border-color: #bdb3ddb5; background: linear-gradient(#525d91ef, #343f6bf5); box-shadow: 0 5px 0 #27335a, inset 0 0 0 3px #a6a7cd24; }
.aula-spelling-app .timer-orbit { background: radial-gradient(circle at center, #394572 0 62%, transparent 63%), conic-gradient(#a5e4f0 var(--remaining), #adb0d44d 0); }
.aula-spelling-app .timer { color: #e0f7ff; }
.aula-spelling-app .timer-label { color: #dddaf5; }
.aula-spelling-app .timer.urgent { color: #ffc1d7; }
.aula-spelling-app .spelling-oral-cue, .aula-spelling-app .spelling-oral-cue :is(strong, h2) { color: #505f8b; }
.aula-spelling-app .spelling-oral-cue > span, .aula-spelling-app .spelling-oral-cue p { color: #6b7190; }
.aula-spelling-app .spelling-answer { color: #485b89; }
.aula-spelling-app .spelling-summary .spelling-correction { color: #5a658b; border-color: #b6b2d2; background: #f7f0ffba; }
.aula-spelling-app .turn-total, .aula-spelling-app .turn-total span { color: #566295; }
.aula-spelling-app .ranking { color: #555f87; }
.aula-spelling-app .ranking :is(td, th) { border-color: #b6b2d2; }
.aula-spelling-app .ranking .winner td { color: #4a5d83; background: #cbd9ed; }
.aula-spelling-app .spelling-oral-word { flex-shrink: 0; width: 100%; min-width: 0; padding: 13px 14px; border: 2px solid #b5add5; border-radius: 14px; color: #464e80; background: #fffaffd9; box-shadow: 0 3px 0 #8e8bb2; font-size: clamp(60px, 7.5vw, 92px); font-weight: 1000; line-height: 1.02; letter-spacing: -1.7px; overflow-wrap: anywhere; text-align: center; }
.aula-spelling-app .spelling-stage.is-word-visible { justify-content: flex-start; }
.aula-spelling-app .is-word-visible .spelling-oral-cue { gap: 15px; padding-block: 4px; }
.aula-spelling-app .is-word-visible .spelling-oral-cue .game-icon { width: 100px; height: 100px; }
.aula-spelling-app .game-tools [data-spell-ui="toggleWord"] > span { display: inline; }
@media (max-width: 540px) {
	.aula-spelling-app .game-top:has([data-spell-ui="toggleWord"]) { flex-wrap: wrap; gap: 11px; }
	.aula-spelling-app .game-top:has([data-spell-ui="toggleWord"]) .round-label { flex: 1 1 100%; }
	.aula-spelling-app .game-top:has([data-spell-ui="toggleWord"]) .game-tools { width: 100%; }
	.aula-spelling-app [data-spell-ui="toggleWord"] { width: 100%; min-height: 46px; font-size: 20px; }
	.aula-spelling-app .spelling-oral-word { padding: 14px 10px; font-size: clamp(38px, 10vw, 52px); letter-spacing: -.8px; }
	.aula-spelling-app .is-word-visible .spelling-oral-cue { min-height: 245px; }
	.aula-spelling-app .letter-key { min-height: 44px; border-radius: 6px; }
}

/* 3.0.0 · The optional live classroom sits below the three local modes. */
.aula-spelling-app .spelling-live-entry { display: flex; align-items: center; justify-content: space-between; gap: 22px; width: min(930px, 100%); margin: 3px auto 0; padding: 20px 24px; border: 2px solid #b7b4e4; border-radius: 19px; color: #f8f1ff; background: linear-gradient(120deg, #414c7cf2, #53518af2); box-shadow: 0 5px 0 #28345b, inset 0 1px 0 #e0d7ff59; text-align: left; }
.aula-spelling-app .spelling-live-entry-title, .aula-spelling-app .spelling-live-entry h2 { display: block; margin: 0; color: #f8f1ff; font-size: 29px; font-weight: 1000; line-height: 1.1; letter-spacing: -.5px; }
.aula-spelling-app .spelling-live-entry-copy, .aula-spelling-app .spelling-live-entry p { margin: 7px 0 0; color: #e3def7; font-size: 20px; font-weight: 800; line-height: 1.3; }
.aula-spelling-app .spelling-live-entry .button { flex-shrink: 0; min-width: 175px; min-height: 58px; font-size: 23px; white-space: nowrap; }
@media (max-width: 540px) {
	.aula-spelling-app .spelling-live-entry { flex-direction: column; align-items: stretch; gap: 17px; padding: 21px 19px; }
	.aula-spelling-app .spelling-live-entry-title, .aula-spelling-app .spelling-live-entry h2 { font-size: 28px; }
	.aula-spelling-app .spelling-live-entry .button { width: 100%; min-width: 0; min-height: 59px; font-size: 24px; }
}
.aula-spelling-app .spelling-live-entry-copy { display: block; }
