/* Rosco de palabras 4.1.0 · Clockwork academy in amber, copper and petrol blue. */
.aula-rosco-app { --rosco-ink: #344850; --rosco-muted: #6d7779; --rosco-paper: #fff0d1; --rosco-copper: #ad7546; --rosco-gold: #f3c779; --rosco-petrol: #285e6b; --tabu-ink: #344850; --tabu-muted: #6d7779; border-color: #8f7044; background-color: #163b48; background-image: linear-gradient(180deg, #102f3b08, #132f3a00 35%, #15303c26), url('../images/rosco-board.webp'); box-shadow: 0 18px 50px #16353f30, inset 0 0 0 2px #edc48b87; }
.aula-rosco-app [data-rosco-ui="app"] { position: relative; z-index: 1; width: min(1340px, 100%); min-width: 0; min-height: 0; margin: 0 auto; padding: 5px 24px 28px; }
.aula-rosco-app [data-rosco-ui="app"]:focus { outline: none; }
.aula-rosco-app[data-view="play"] { display: block; height: auto; min-height: 0; }
.aula-rosco-app .brand { color: #ffe2a6; text-shadow: 0 3px 0 #80603a, 0 5px 8px #173640; }
.aula-rosco-app .brand-title { max-width: 450px; white-space: normal; font-size: clamp(28px, 3vw, 38px); }
.aula-rosco-app .icon-button, .aula-rosco-app .games-link { color: #fff1cf; border-color: #ddbb81b3; background: linear-gradient(#406c72, #264b57); box-shadow: 0 4px 0 #153640, inset 0 1px 0 #c6ccaa70; }
.aula-rosco-app h1 { font-size: clamp(42px, 5.5vw, 76px); font-weight: 1000; line-height: 1.05; letter-spacing: -1.8px; }
.aula-rosco-app h2 { font-size: clamp(31px, 3.2vw, 43px); }
.aula-rosco-app h3 { font-size: 25px; }
.aula-rosco-app .panel { color: #3c4d51; border-color: #c4a06c; background: radial-gradient(ellipse at 30% 0, #fffaf0, transparent 70%), linear-gradient(120deg, #f6e7c6, #ecd5ad); box-shadow: 0 6px 0 #79583b, 0 11px 25px #17364073, inset 0 0 0 4px #fff7e08c; }
.aula-rosco-app .eyebrow { color: #6d7d75; font-size: 18px; }
.aula-rosco-app .badge { color: #72664b; border-color: #bda06e; background: #e5d6b1; }
.aula-rosco-app .button.primary, .aula-rosco-app .button.dark { color: #fff7dc; border-color: #2e6070; background: linear-gradient(#4d8890, #2b6270); box-shadow: 0 5px 0 #1a3d4a, 0 7px 9px #243b441f, inset 0 2px 0 #b2c9b2; text-shadow: 0 2px 0 #284d5c80; }
.aula-rosco-app .button.coral { color: #fff6dc; border-color: #a05b39; background: linear-gradient(#dc9663, #af653f); box-shadow: 0 5px 0 #713f2f, 0 7px 9px #243b441f, inset 0 2px 0 #f3c494; text-shadow: 0 2px 0 #85482e80; }
.aula-rosco-app .button.blue { color: #fff9de; border-color: #a67b38; background: linear-gradient(#ddb66b, #b8873e); box-shadow: 0 5px 0 #76552d, 0 7px 9px #243b441f, inset 0 2px 0 #ffdd9e; text-shadow: 0 2px 0 #805d2c80; }
.aula-rosco-app .button.soft, .aula-rosco-app .back, .aula-rosco-app .link-button { color: #fff2cf; border-color: #b7bea18c; background: linear-gradient(#426b70f5, #294e5cf5); box-shadow: 0 3px 0 #1c3c46, inset 0 1px 0 #cad0ae40; }
.aula-rosco-app .field, .aula-rosco-app .field-label, .aula-rosco-app .toggle { color: #586c6b; }
.aula-rosco-app .field :is(input, select, textarea) { color: #3b5862; border-color: #c4ab7d; background: #fffbef; }
.aula-rosco-app .field input::placeholder { color: #8b9285; }
.aula-rosco-app .toggle input { accent-color: #427481; }
.aula-rosco-app .home-title h1 { color: #ffdea2; font-size: clamp(56px, 7vw, 98px); line-height: 1.02; letter-spacing: -3px; -webkit-text-stroke-color: #fff0c8; text-shadow: 0 4px 0 #b17c3e, 0 8px 0 #664c35, 0 12px 14px #193640e0; }
.aula-rosco-app .home-title p { color: #ffedc6; border-color: #d5bb879c; background: #254b58ed; }
.aula-rosco-app .rosco-home { display: flex; flex-direction: column; align-items: center; gap: 27px; padding: 12px 0 7px; text-align: center; }
.aula-rosco-app .rosco-home-title { color: #ffdfa8; font-size: clamp(56px, 7vw, 98px); text-shadow: 0 4px 0 #a6753d, 0 8px 0 #664c35, 0 12px 14px #193640e0; }
.aula-rosco-app .rosco-home p { color: #ffefcb; font-size: 22px; font-weight: 900; text-shadow: 0 2px 4px #173b45; }
.aula-rosco-app .rosco-menu-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 18px; width: 100%; }
.aula-rosco-app .rosco-menu-actions .button { min-width: 245px; min-height: 78px; font-size: 29px; }
.aula-rosco-app .rosco-setup { width: min(1110px, 100%); margin: 3px auto 0; }
.aula-rosco-app .rosco-settings-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; min-width: 0; }
.aula-rosco-app .rosco-settings-grid > .field { min-width: 0; }
.aula-rosco-app .rosco-participants { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 17px; margin: 15px 0 23px; }
.aula-rosco-app .rosco-player-field { min-width: 0; margin: 0; padding: 18px; border: 1px solid #c3ab7d; border-radius: 15px; color: #546d70; background: #fff7e3a8; }
.aula-rosco-app .rosco-player-field legend { max-width: 100%; padding: 0 7px; color: #516b72; font-size: 21px; font-weight: 950; }
.aula-rosco-app .rosco-player-field .field { margin-bottom: 14px; }
.aula-rosco-app .rosco-player-field .field:last-child { margin-bottom: 0; }
.aula-rosco-app .rosco-setup .setup-head { flex-wrap: wrap; align-items: center; gap: 14px; }
.aula-rosco-app .rosco-setup .setup-footer { border-color: #c6b084; }
.aula-rosco-app .rosco-setup .setup-footer .button { min-height: 65px; font-size: 27px; }

/* Twenty-five noninteractive nodes use exact positions supplied by the game. */
.aula-rosco-app .rosco-layout { display: grid; grid-template-columns: minmax(500px, 1fr) minmax(0, 1.1fr); align-items: start; gap: 20px; min-width: 0; }
.aula-rosco-app .rosco-layout:has(.rosco-rings[data-count="2"]) { grid-template-columns: minmax(260px, .65fr) minmax(0, 1.35fr); }
.aula-rosco-app .rosco-rings { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 17px 14px; min-width: 0; }
.aula-rosco-app .rosco-rings[data-count="2"] { grid-template-columns: minmax(0, 1fr); justify-items: center; gap: 15px; }
.aula-rosco-app .rosco-rings[data-count="2"] .rosco-ring { width: min(285px, 100%); }
.aula-rosco-app .rosco-rings[data-count="3"] .rosco-ring:last-child { grid-column: 1 / -1; justify-self: center; width: calc((100% - 14px) / 2); }
.aula-rosco-app .rosco-ring { container-type: inline-size; position: relative; width: 100%; min-width: 0; aspect-ratio: 1 / 1; border: 2px solid #c59b62; border-radius: 50%; color: #f8edce; background: radial-gradient(circle, #224d59f2 0 58%, #527079d9 59% 60%, #173e4de8 61%); box-shadow: 0 5px 0 #755638, 0 9px 15px #16333c40, inset 0 0 0 4px #d6c49a38; }
.aula-rosco-app .rosco-ring.is-active { border-color: #ffdf8c; box-shadow: 0 5px 0 #95662e, 0 0 0 3px #efd395, 0 10px 20px #172f3f61, inset 0 0 0 4px #e6cf914f; }
.aula-rosco-app .rosco-ring.is-finished { border-color: #aeb79a; background: radial-gradient(circle, #385966f2 0 58%, #7d8a8bd9 59% 60%, #234751e8 61%); }
.aula-rosco-app .rosco-node { position: absolute; z-index: 2; left: var(--x); top: var(--y); display: flex; align-items: center; justify-content: center; width: 26px; height: 26px; width: clamp(24px, 10.3cqw, 32px); height: clamp(24px, 10.3cqw, 32px); border: 1px solid #b6c1b6; border-radius: 50%; color: #355665; background: linear-gradient(#fff8de, #e5d6b0); box-shadow: 0 2px 0 #7d795e; font-size: 17px; font-size: clamp(15px, 6.1cqw, 20px); font-weight: 1000; line-height: 1; transform: translate(-50%, -50%); }
.aula-rosco-app .rosco-node[data-status="passed"] { color: #684b20; border-color: #e2ae47; background: #f1cb77; }
.aula-rosco-app .rosco-node[data-status="correct"] { color: #f3ffeb; border-color: #b7d6a9; background: #397b5c; }
.aula-rosco-app .rosco-node[data-status="wrong"] { color: #fff5e8; border-color: #e4baa4; background: #a6533e; }
.aula-rosco-app .rosco-node.is-current { z-index: 4; border: 2px solid #fff0af; outline: 2px solid #d5a140; outline-offset: 1px; transform: translate(-50%, -50%) scale(1.08); }
.aula-rosco-app .rosco-node-mark { position: absolute; right: -3px; bottom: -4px; display: grid; place-items: center; min-width: 12px; height: 12px; border-radius: 50%; color: #304f5e; background: #fff0c7; font-family: Arial, sans-serif; font-size: 10px; font-weight: 900; line-height: 1; }
.aula-rosco-app .rosco-center { position: absolute; z-index: 1; inset: 23%; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; min-width: 0; padding: 7px; border: 1px solid #d0b87a63; border-radius: 50%; color: #f9edca; background: #254b58df; text-align: center; }
.aula-rosco-app .rosco-player-name { width: 100%; color: #fff0c7; font-size: 18px; font-weight: 950; line-height: 1.12; overflow-wrap: anywhere; }
.aula-rosco-app .rosco-score { display: flex; align-items: baseline; justify-content: center; flex-wrap: wrap; gap: 4px; color: #ffdda0; font-size: 31px; font-weight: 1000; line-height: 1; font-variant-numeric: tabular-nums; }
.aula-rosco-app .rosco-score :is(b, strong) { font: inherit; }
.aula-rosco-app .rosco-score :is(small, span) { color: #d6ddca; font-size: 15px; font-weight: 800; line-height: 1.1; }
.aula-rosco-app .rosco-time { color: #d2ebef; font-size: 23px; font-weight: 950; line-height: 1; font-variant-numeric: tabular-nums; }
.aula-rosco-app .rosco-time.is-urgent { color: #ffbba1; }
.aula-rosco-app .rosco-turn { display: flex; flex-direction: column; gap: 17px; min-width: 0; min-height: 510px; padding: 21px; }
.aula-rosco-app .rosco-turn-head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; grid-column: 1 / -1; gap: 12px; min-width: 0; padding-bottom: 15px; border-bottom: 1px solid #c8b284; }
.aula-rosco-app .rosco-turn-head h2 { color: #3a5963; font-size: 31px; overflow-wrap: anywhere; }
.aula-rosco-app .rosco-turn-head p { color: #748078; font-size: 18px; }
.aula-rosco-app .rosco-turn-content { display: flex; flex-direction: column; justify-content: center; gap: 19px; min-width: 0; padding: 7px 0; }
.aula-rosco-app .rosco-letter-relation { color: #8c693b; font-size: 23px; font-weight: 950; line-height: 1.2; }
.aula-rosco-app .rosco-letter-relation strong { color: #345e6b; font-size: 43px; line-height: 1; }
.aula-rosco-app .rosco-clue { color: #344f5a; font-size: clamp(29px, 2.8vw, 39px); font-weight: 950; line-height: 1.2; letter-spacing: -.5px; overflow-wrap: anywhere; text-wrap: pretty; }
.aula-rosco-app .rosco-actionsrail { display: flex; flex-direction: column; gap: 13px; min-width: 0; }
.aula-rosco-app .rosco-actionsrail .button { width: 100%; min-height: 79px; padding: 13px 8px; font-size: 21px; line-height: 1.12; }
.aula-rosco-app .rosco-actionsrail .button > span { min-width: 0; overflow-wrap: anywhere; }
.aula-rosco-app .rosco-actionsrail .game-icon { width: 25px; height: 25px; }
.aula-rosco-app .rosco-actionsrail .timer, .aula-rosco-app .rosco-turn-timer { padding: 17px 9px; border: 1px solid #8aadaf; border-radius: 15px; color: #d9f0ee; background: linear-gradient(#42717b, #285260); box-shadow: 0 4px 0 #1b3d49; font-size: 43px; font-weight: 1000; line-height: 1; letter-spacing: 0; text-align: center; font-variant-numeric: tabular-nums; }
.aula-rosco-app .rosco-answer-form { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.aula-rosco-app .rosco-answer-form input, .aula-rosco-app .rosco-answer-input { display: block; width: 100%; min-width: 0; min-height: 62px; padding: 12px; border: 2px solid #a9b4a5; border-radius: 12px; color: #345c69; background: #fffdf2; font-family: inherit; font-size: 27px; font-weight: 900; line-height: 1.2; }
.aula-rosco-app .rosco-answer-form input::placeholder { color: #88978c; font-size: 22px; font-weight: 800; }
.aula-rosco-app .rosco-solution { display: block; padding: 17px; border: 1px solid #c1ac78; border-radius: 14px; color: #3f6269; background: #fff7df; font-size: clamp(32px, 3.4vw, 47px); font-weight: 1000; line-height: 1.1; overflow-wrap: anywhere; }
.aula-rosco-app .rosco-paused { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 18px; min-height: 230px; text-align: center; }
.aula-rosco-app .rosco-paused h2 { font-size: 39px; }
.aula-rosco-app .rosco-paused .game-icon { width: 83px; height: 83px; }
.aula-rosco-app .rosco-legend { display: flex; flex-wrap: wrap; justify-content: center; gap: 11px 17px; margin: 22px 0 0; color: #f4e6c2; font-size: 17px; font-weight: 800; line-height: 1.2; text-shadow: 0 1px 3px #183b46; }
.aula-rosco-app .rosco-legend > span { display: inline-flex; align-items: center; gap: 6px; }
.aula-rosco-app .rosco-utilities { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 11px; margin-top: 20px; }
.aula-rosco-app .rosco-utilities .button, .aula-rosco-app .rosco-utilities .link-button { min-height: 46px; padding: 9px 13px; font-size: 19px; }

/* The optional workshop keeps all 25 letters reachable. */
.aula-rosco-app .rosco-workshop { width: min(1150px, 100%); margin: 3px auto 0; }
.aula-rosco-app .rosco-workshop h1, .aula-rosco-app .rosco-editor h1 { font-size: 39px; }
.aula-rosco-app .rosco-workshop-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin: 21px 0; }
.aula-rosco-app .rosco-workshop-actions .button { min-height: 51px; padding: 11px 16px; font-size: 20px; }
.aula-rosco-app .rosco-theme-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 17px; margin: 21px 0 0; }
.aula-rosco-app .rosco-theme-card { min-width: 0; padding: 20px; border: 1px solid #c4ab79; border-radius: 17px; color: #4b6268; background: #fff5d9; box-shadow: 0 3px 0 #9b7c4f; }
.aula-rosco-app .rosco-theme-card h2, .aula-rosco-app .rosco-theme-card h3 { margin-bottom: 12px; font-size: 25px; overflow-wrap: anywhere; }
.aula-rosco-app .rosco-theme-card p { margin: 10px 0; color: #778076; font-size: 18px; line-height: 1.35; }
.aula-rosco-app .rosco-theme-card .button { min-height: 45px; margin-top: 12px; padding: 10px 13px; font-size: 18px; }
.aula-rosco-app .rosco-editor { width: min(1070px, 100%); margin: 3px auto 0; }
.aula-rosco-app .rosco-editor-nav { display: grid; grid-template-columns: repeat(auto-fit, minmax(44px, 1fr)); gap: 8px; margin: 20px 0; }
.aula-rosco-app .rosco-editor-nav button { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 45px; padding: 7px 4px; border: 1px solid #bda478; border-radius: 8px; color: #48616b; background: #fff8e5; box-shadow: 0 2px 0 #ae8d56; font-size: 22px; font-weight: 950; line-height: 1; }
.aula-rosco-app .rosco-editor-nav button.is-complete { color: #f3ffe9; border-color: #8eae8c; background: #5b8571; }
.aula-rosco-app .rosco-editor-nav button.is-active, .aula-rosco-app .rosco-editor-nav button[aria-current="true"] { color: #fff3ce; border-color: #a18245; background: #365f6a; box-shadow: 0 0 0 2px #dbb772; }
.aula-rosco-app .rosco-editor-fields { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 18px; min-width: 0; }
.aula-rosco-app .rosco-editor-fields textarea { min-height: 137px; font-size: 21px; line-height: 1.4; }
.aula-rosco-app .rosco-editor-fields .field:has(textarea) { grid-column: 1 / -1; }
.aula-rosco-app .rosco-editor-progress { color: #7b714f; font-size: 20px; font-weight: 900; }
.aula-rosco-app .rosco-editor .error, .aula-rosco-app .rosco-workshop .error { font-size: 19px; }
.aula-rosco-app .summary { color: #405a60; }
.aula-rosco-app .summary h2 { color: #3e5b64; }
.aula-rosco-app .ranking .winner td { color: #3f6670; background: #d4e1d5; }
.aula-rosco-app .ranking td { font-size: 21px; }
.aula-rosco-app [data-rosco-ui="closeModal"] { margin-top: 14px; }
.aula-rosco-app:fullscreen { height: 100dvh; overflow-y: auto; }
.aula-rosco-app:fullscreen[data-view="play"] { height: 100dvh; overflow-y: auto; }
.aula-rosco-app:fullscreen [data-rosco-ui="app"] { width: min(1450px, 100%); }
@media (max-height: 820px) and (min-width: 1001px) {
	.aula-rosco-app .topbar { min-height: 65px; padding-block: 8px; }
	.aula-rosco-app .brand-logo { width: 135px; height: 40px; }
	.aula-rosco-app .brand-title { font-size: 30px; }
	.aula-rosco-app [data-rosco-ui="app"] { padding: 2px 18px 22px; }
	.aula-rosco-app .rosco-layout { gap: 17px; }
	.aula-rosco-app .rosco-rings { gap: 15px 14px; }
	.aula-rosco-app .rosco-rings[data-count="2"] .rosco-ring { width: min(255px, 100%); }
	.aula-rosco-app .rosco-turn { min-height: 505px; gap: 14px; padding: 18px; }
	.aula-rosco-app .rosco-actionsrail { gap: 11px; }
	.aula-rosco-app .rosco-actionsrail .button { min-height: 75px; font-size: 20px; }
	.aula-rosco-app .rosco-clue { font-size: 30px; }
}
@media (max-width: 1000px) {
	.aula-rosco-app [data-rosco-ui="app"] { padding-inline: 20px; }
	.aula-rosco-app .rosco-layout, .aula-rosco-app .rosco-layout:has(.rosco-rings[data-count="2"]) { display: flex; flex-direction: column; gap: 24px; }
	.aula-rosco-app .rosco-rings { width: min(700px, 100%); margin: 0 auto; }
	.aula-rosco-app .rosco-rings[data-count="2"] { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; }
	.aula-rosco-app .rosco-rings[data-count="2"] .rosco-ring { width: 100%; }
	.aula-rosco-app .rosco-turn { width: 100%; min-height: 380px; gap: 22px; }
	.aula-rosco-app .rosco-clue { font-size: 35px; }
	.aula-rosco-app .rosco-settings-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.aula-rosco-app .rosco-theme-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
	.aula-rosco-app .brand-title { max-width: 260px; font-size: 29px; }
	.aula-rosco-app .rosco-turn { gap: 17px; padding: 20px; }
	.aula-rosco-app .rosco-actionsrail .button { min-height: 80px; font-size: 21px; }
	.aula-rosco-app .rosco-participants { grid-template-columns: minmax(0, 1fr); }
	.aula-rosco-app .rosco-clue { font-size: 31px; }
}
@media (max-width: 540px) {
	.aula-rosco-app [data-rosco-ui="app"] { padding: 3px 12px 23px; }
	.aula-rosco-app .brand-title { max-width: 155px; font-size: 25px; }
	.aula-rosco-app .home-title h1, .aula-rosco-app .rosco-home-title { font-size: clamp(47px, 11.8vw, 63px); letter-spacing: -1.8px; }
	.aula-rosco-app .rosco-menu-actions { flex-direction: column; gap: 16px; }
	.aula-rosco-app .rosco-menu-actions .button { width: 100%; min-width: 0; min-height: 69px; font-size: 27px; }
	.aula-rosco-app .rosco-settings-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px; }
	.aula-rosco-app .rosco-player-field { padding: 17px 13px; }
	.aula-rosco-app .rosco-turn { order: -1; display: flex; flex-direction: column; min-height: 0; padding: 21px 17px; gap: 19px; }
	.aula-rosco-app .rosco-turn-head { padding-bottom: 13px; }
	.aula-rosco-app .rosco-turn-head h2 { font-size: 30px; }
	.aula-rosco-app .rosco-turn-content { gap: 18px; padding: 0; }
	.aula-rosco-app .rosco-clue { font-size: 31px; line-height: 1.23; }
	.aula-rosco-app .rosco-letter-relation { font-size: 22px; }
	.aula-rosco-app .rosco-letter-relation strong { font-size: 40px; }
	.aula-rosco-app .rosco-actionsrail { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 11px; }
	.aula-rosco-app .rosco-actionsrail .timer, .aula-rosco-app .rosco-turn-timer { grid-column: 1 / -1; padding: 13px; font-size: 43px; }
	.aula-rosco-app .rosco-actionsrail .button { flex-direction: column; gap: 7px; min-height: 100px; padding: 12px 5px; font-size: 20px; }
	.aula-rosco-app .rosco-actionsrail .game-icon { width: 28px; height: 28px; }
	.aula-rosco-app .rosco-rings, .aula-rosco-app .rosco-rings[data-count="2"] { grid-template-columns: minmax(0, 1fr); width: 100%; justify-items: center; gap: 22px; }
	.aula-rosco-app .rosco-ring, .aula-rosco-app .rosco-rings[data-count="2"] .rosco-ring, .aula-rosco-app .rosco-rings[data-count="3"] .rosco-ring:last-child { grid-column: auto; width: min(330px, 100%); }
	.aula-rosco-app .rosco-player-name { font-size: 20px; }
	.aula-rosco-app .rosco-score { font-size: 37px; }
	.aula-rosco-app .rosco-time { font-size: 27px; }
	.aula-rosco-app .rosco-legend { gap: 12px 17px; font-size: 18px; }
	.aula-rosco-app .rosco-utilities { gap: 12px; }
	.aula-rosco-app .rosco-utilities .button, .aula-rosco-app .rosco-utilities .link-button { min-height: 46px; font-size: 20px; }
	.aula-rosco-app .rosco-theme-list { grid-template-columns: minmax(0, 1fr); }
	.aula-rosco-app .rosco-editor-fields { grid-template-columns: minmax(0, 1fr); gap: 14px; }
	.aula-rosco-app .rosco-editor-fields .field:has(textarea) { grid-column: auto; }
	.aula-rosco-app .rosco-workshop h1, .aula-rosco-app .rosco-editor h1 { font-size: 34px; }
	.aula-rosco-app .rosco-editor-nav { gap: 7px; }
	.aula-rosco-app .rosco-answer-form input { font-size: 26px; }
	.aula-rosco-app .rosco-solution { font-size: 35px; }
	.aula-rosco-app .ranking th, .aula-rosco-app .ranking td { padding-inline: 5px; }
	.aula-rosco-app .ranking td { font-size: 20px; }
}
@media (max-width: 360px) {
	.aula-rosco-app [data-rosco-ui="app"] { padding-inline: 10px; }
	.aula-rosco-app .brand-title { max-width: 130px; font-size: 23px; }
	.aula-rosco-app .rosco-settings-grid { grid-template-columns: minmax(0, 1fr); }
	.aula-rosco-app .rosco-turn { padding-inline: 14px; }
	.aula-rosco-app .rosco-actionsrail { gap: 8px; }
	.aula-rosco-app .rosco-actionsrail .button { font-size: 19px; }
	.aula-rosco-app .rosco-player-name { font-size: 19px; }
}
@media (prefers-reduced-motion: reduce) {
	.aula-rosco-app *, .aula-rosco-app *::before, .aula-rosco-app *::after { animation: none !important; transition: none !important; }
}

/* Exact controller markup: the turn body owns the clue and action columns. */
.aula-rosco-app .rosco-turn-body { display: grid; grid-template-columns: minmax(0, 1fr) 163px; align-items: stretch; flex: 1; min-width: 0; gap: 17px; }
.aula-rosco-app .rosco-actions { display: grid; gap: 13px; min-width: 0; }
.aula-rosco-app .rosco-active-clock { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 7px; min-height: 99px; padding: 16px 9px; border: 1px solid #8aadaf; border-radius: 15px; color: #d9f0ee; background: linear-gradient(#42717b, #285260); box-shadow: 0 4px 0 #1b3d49; text-align: center; }
.aula-rosco-app .rosco-active-clock strong { color: #e0f3eb; font-size: 47px; font-weight: 1000; line-height: 1; font-variant-numeric: tabular-nums; }
.aula-rosco-app .rosco-active-clock strong.urgent { color: #ffc19b; }
.aula-rosco-app .rosco-active-clock span { color: #d3ded4; font-size: 16px; font-weight: 900; line-height: 1; }
.aula-rosco-app .rosco-turn-utility { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 1px; padding-top: 15px; border-top: 1px solid #c8b284; }
.aula-rosco-app .rosco-turn-utility .button, .aula-rosco-app .rosco-turn-utility .link-button { min-height: 44px; padding: 8px 11px; font-size: 18px; }
.aula-rosco-app .rosco-letter-relation { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.aula-rosco-app .rosco-solution { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 19px; min-height: 225px; text-align: center; }
.aula-rosco-app .rosco-solution strong { display: block; width: 100%; font: inherit; overflow-wrap: anywhere; }
.aula-rosco-app .rosco-solution .eyebrow { color: #8e835e; font-size: 16px; line-height: 1.2; }
.aula-rosco-app .rosco-solution .button { width: 100%; padding-inline: 13px; font-size: 23px; }
.aula-rosco-app .rosco-feedback { padding: 12px 14px; border: 1px solid #b7bf9b; border-radius: 12px; color: #436e59; background: #edf2d7; font-size: 20px; font-weight: 900; line-height: 1.25; }
.aula-rosco-app .rosco-feedback strong { display: block; font: inherit; }
.aula-rosco-app .rosco-feedback span { display: block; margin-top: 6px; color: #496672; font-size: 25px; font-weight: 950; overflow-wrap: anywhere; }
.aula-rosco-app .rosco-feedback.is-wrong { color: #9d5a3e; border-color: #d8ad8a; background: #fff0db; }
.aula-rosco-app .rosco-feedback.is-pass, .aula-rosco-app .rosco-feedback.is-time { color: #8e6a35; border-color: #d1b575; background: #fff2cb; }
.aula-rosco-app .rosco-center { inset: 18%; gap: 4px; }
.aula-rosco-app .rosco-player-name { font-size: clamp(16px, 6.9cqw, 20px); }
.aula-rosco-app .rosco-finished-label { color: #d1d7c4; font-size: 14px; font-weight: 800; line-height: 1.1; }
.aula-rosco-app .rosco-home-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 18px; width: 100%; }
.aula-rosco-app .rosco-home-actions .button { min-width: 245px; min-height: 73px; font-size: 29px; }
.aula-rosco-app .rosco-home-symbol { position: relative; width: 286px; aspect-ratio: 1 / 1; border: 2px solid #d3ad6d; border-radius: 50%; color: #ffdea0; background: radial-gradient(circle, #2a5765ed 0 57%, #688087d4 58% 60%, #1c4454e6 61%); box-shadow: 0 5px 0 #795b39, inset 0 0 0 5px #e2c88c40; }
.aula-rosco-app .rosco-home-symbol > span { position: absolute; left: var(--x); top: var(--y); display: grid; place-items: center; width: 27px; height: 27px; border: 1px solid #c7b183; border-radius: 50%; color: #3f606b; background: #fff0c5; box-shadow: 0 2px 0 #9e8a5a; font-size: 17px; font-weight: 1000; line-height: 1; transform: translate(-50%, -50%); }
.aula-rosco-app .rosco-home-symbol > strong { position: absolute; inset: 22%; display: grid; place-items: center; font-size: 87px; font-weight: 1000; line-height: 1; }
.aula-rosco-app .rosco-setup-warnings { color: #8d6e40; font-size: 19px; font-weight: 800; line-height: 1.35; }
.aula-rosco-app .rosco-setup-warnings:empty { display: none; }
.aula-rosco-app .rosco-setup-warnings p { margin: 9px 0; }
.aula-rosco-app .rosco-workshop .setup-head, .aula-rosco-app .rosco-editor .setup-head { flex-wrap: wrap; gap: 14px; }
.aula-rosco-app .rosco-workshop > h3 { margin: 23px 0 12px; }
.aula-rosco-app .rosco-editor-fields { min-width: 0; margin: 0; padding: 18px; border: 1px solid #c1a678; border-radius: 15px; }
.aula-rosco-app .rosco-editor-fields legend { padding: 0 8px; color: #57717a; font-size: 22px; font-weight: 950; }
.aula-rosco-app .rosco-editor-nav button { position: relative; }
.aula-rosco-app .rosco-editor-nav button span { position: absolute; right: 2px; bottom: 2px; font-size: 11px; line-height: 1; }
.aula-rosco-app .rosco-editor-nav button[aria-current="step"] { color: #fff3ce; border-color: #a18245; background: #365f6a; box-shadow: 0 0 0 2px #dbb772; }
.aula-rosco-app .rosco-editor-note { margin: 13px 0; color: #78857d; font-size: 18px; line-height: 1.35; }
.aula-rosco-app[data-view="ready"] [data-rosco-ui="app"], .aula-rosco-app[data-view="final"] [data-rosco-ui="app"] { display: grid; grid-template-columns: minmax(500px, 1fr) minmax(0, 1.1fr); align-items: center; gap: 24px; }
.aula-rosco-app .rosco-ready, .aula-rosco-app .rosco-final { width: 100%; margin: 0; }
.aula-rosco-app .rosco-ready h2 { font-family: inherit; font-size: 39px; }
.aula-rosco-app .rosco-ready p { color: #697d7a; font-size: 22px; }
.aula-rosco-app .rosco-last-answer { margin: 14px 0; color: #7b744f; font-size: 23px; font-weight: 950; overflow-wrap: anywhere; }
@media (max-height: 820px) and (min-width: 1001px) {
	.aula-rosco-app .rosco-turn-body { grid-template-columns: minmax(0, 1fr) 151px; gap: 14px; }
	.aula-rosco-app .rosco-active-clock { min-height: 90px; padding-block: 13px; }
	.aula-rosco-app .rosco-active-clock strong { font-size: 43px; }
	.aula-rosco-app .rosco-actions { gap: 11px; }
	.aula-rosco-app .rosco-turn-utility { padding-top: 12px; gap: 8px; }
	.aula-rosco-app .rosco-turn-utility .button, .aula-rosco-app .rosco-turn-utility .link-button { min-height: 44px; padding-inline: 9px; font-size: 17px; }
}
@media (max-width: 1000px) {
	.aula-rosco-app .rosco-turn-body { grid-template-columns: minmax(0, 1fr) 200px; gap: 22px; }
	.aula-rosco-app[data-view="ready"] [data-rosco-ui="app"], .aula-rosco-app[data-view="final"] [data-rosco-ui="app"] { display: flex; flex-direction: column; align-items: stretch; gap: 25px; }
	.aula-rosco-app .rosco-ready, .aula-rosco-app .rosco-final { width: min(760px, 100%); margin: 0 auto; }
}
@media (max-width: 700px) {
	.aula-rosco-app .rosco-turn-body { grid-template-columns: minmax(0, 1fr) 164px; gap: 17px; }
}
@media (max-width: 540px) {
	.aula-rosco-app .rosco-home-actions { flex-direction: column; gap: 16px; }
	.aula-rosco-app .rosco-home-actions .button { width: 100%; min-width: 0; min-height: 66px; font-size: 27px; }
	.aula-rosco-app .rosco-home-symbol { width: min(286px, 100%); }
	.aula-rosco-app .rosco-turn-body { display: flex; flex-direction: column; gap: 21px; }
	.aula-rosco-app .rosco-actionsrail { display: flex; flex-direction: column; gap: 15px; }
	.aula-rosco-app .rosco-active-clock { flex-direction: row; gap: 12px; min-height: 78px; padding: 13px; }
	.aula-rosco-app .rosco-active-clock strong { font-size: 43px; }
	.aula-rosco-app .rosco-actions { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
	.aula-rosco-app .rosco-actionsrail .button { min-height: 99px; white-space: normal; }
	.aula-rosco-app .rosco-turn-utility { gap: 10px; }
	.aula-rosco-app .rosco-turn-utility .button, .aula-rosco-app .rosco-turn-utility .link-button { min-height: 46px; font-size: 19px; }
	.aula-rosco-app .rosco-solution { padding: 17px 13px; }
	.aula-rosco-app .rosco-solution .button { font-size: 23px; }
	.aula-rosco-app .rosco-editor-fields { padding: 16px 12px; }
	.aula-rosco-app .rosco-ready, .aula-rosco-app .rosco-final { order: -1; }
}
.aula-rosco-app .rosco-actionsrail .button { overflow-wrap: anywhere; }
@media (max-width: 540px) {
	.aula-rosco-app .rosco-actions:not(:has(button:nth-child(3))) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 400px) {
	.aula-rosco-app .rosco-actions, .aula-rosco-app .rosco-actions:not(:has(button:nth-child(3))) { grid-template-columns: minmax(0, 1fr); }
	.aula-rosco-app .rosco-actionsrail .button { flex-direction: row; min-height: 61px; padding: 13px 10px; font-size: 23px; }
}

/* 4.1.0 · One full-size focus ring, three real rival rings and a close action dock. */
.aula-rosco-app .topbar { flex-wrap: wrap; gap: 12px; }
.aula-rosco-app .toolbar [data-rosco-ui="sound"] { width: auto; min-width: 44px; padding-inline: 10px; }
.aula-rosco-app .toolbar [data-rosco-ui="sound"] span { display: inline; font-size: 15px; white-space: nowrap; }
.aula-rosco-app .toolbar [data-rosco-ui="sound"][aria-pressed="false"] { color: #d9dfd0; border-color: #97a8a1; background: #33525b; }
.aula-rosco-app .rosco-layout, .aula-rosco-app .rosco-layout:has(.rosco-rings.rosco-scene[data-count]) { display: flex; flex-direction: column; align-items: stretch; gap: 18px; min-width: 0; }
.aula-rosco-app .rosco-rings.rosco-scene[data-count] { --rosco-focus-size: clamp(440px, 47vw, 560px); --rosco-mini-size: clamp(160px, 16vw, 200px); display: grid; grid-template-columns: minmax(0, 1fr) var(--rosco-focus-size) minmax(0, 1fr); align-items: center; gap: 20px; width: min(1120px, 100%); min-width: 0; margin: 0 auto; padding: 8px 7px 9px; }
.aula-rosco-app .rosco-focus { grid-column: 2; grid-row: 1; min-width: 0; width: 100%; }
.aula-rosco-app .rosco-rivals { display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 20px; min-width: 0; width: var(--rosco-mini-size); }
.aula-rosco-app .rosco-rivals:empty { visibility: hidden; }
.aula-rosco-app .rosco-rivals-left { grid-column: 1; grid-row: 1; justify-self: end; }
.aula-rosco-app .rosco-rivals-right { grid-column: 3; grid-row: 1; justify-self: start; }
.aula-rosco-app .rosco-scene .rosco-focus .rosco-ring.is-featured { grid-column: auto; width: 100%; max-width: none; border: 3px solid #f4ce87; box-shadow: 0 7px 0 #8c6337, 0 0 0 3px #e3c78973, 0 17px 35px #102f3b78, inset 0 0 0 8px #e4cd9147; }
.aula-rosco-app .rosco-scene .rosco-rivals .rosco-ring.is-mini { grid-column: auto; width: 100%; max-width: none; border-width: 2px; box-shadow: 0 4px 0 #755638, 0 8px 13px #15343e52, inset 0 0 0 3px #d6c49a38; }
.aula-rosco-app .rosco-scene .is-featured .rosco-node { width: 46px; height: 46px; width: clamp(42px, 10cqw, 54px); height: clamp(42px, 10cqw, 54px); border-width: 2px; box-shadow: 0 3px 0 #847b56; font-size: 27px; font-size: clamp(24px, 5.8cqw, 32px); }
.aula-rosco-app .rosco-scene .is-featured .rosco-node-mark { right: -2px; bottom: -3px; min-width: 16px; height: 16px; font-size: 13px; }
.aula-rosco-app .rosco-scene .is-featured .rosco-node.is-current { border: 3px solid #fff1ad; outline-width: 3px; outline-offset: 2px; transform: translate(-50%, -50%) scale(1.05); }
.aula-rosco-app .rosco-scene .is-featured .rosco-center { inset: 22%; gap: 10px; padding: 12px; border: 2px solid #cdb27e8f; background: radial-gradient(circle at 50% 30%, #416b73, #254e5dec 75%); box-shadow: inset 0 0 0 4px #b7b88d17; }
.aula-rosco-app .rosco-scene .is-featured .rosco-player-name { font-size: clamp(23px, 5.5cqw, 29px); font-weight: 1000; line-height: 1.1; }
.aula-rosco-app .rosco-scene .is-featured .rosco-score { gap: 8px; font-size: clamp(46px, 10.5cqw, 59px); }
.aula-rosco-app .rosco-scene .is-featured .rosco-score small { font-size: 19px; }
.aula-rosco-app .rosco-scene .is-featured .rosco-time { font-size: clamp(34px, 8cqw, 44px); }
.aula-rosco-app .rosco-scene .is-featured .rosco-finished-label { font-size: 18px; }
.aula-rosco-app .rosco-scene .is-mini .rosco-node { width: 17px; height: 17px; width: clamp(16px, 10.2cqw, 21px); height: clamp(16px, 10.2cqw, 21px); border-width: 1px; box-shadow: 0 1px 0 #7d795e; font-size: 11px; font-size: clamp(11px, 6.5cqw, 13px); }
.aula-rosco-app .rosco-scene .is-mini .rosco-node-mark { right: -2px; bottom: -3px; min-width: 9px; height: 9px; font-size: 8px; }
.aula-rosco-app .rosco-scene .is-mini .rosco-center { inset: 12%; gap: 3px; padding: 4px; }
.aula-rosco-app .rosco-scene .is-mini .rosco-player-name { font-size: 14px; font-weight: 900; line-height: 1.05; }
.aula-rosco-app .rosco-scene .is-mini .rosco-score { gap: 3px; font-size: 24px; }
.aula-rosco-app .rosco-scene .is-mini .rosco-score small { font-size: 11px; }
.aula-rosco-app .rosco-scene .is-mini .rosco-time { font-size: 17px; }
.aula-rosco-app .rosco-scene .is-mini .rosco-finished-label { font-size: 11px; }
.aula-rosco-app .rosco-layout .rosco-turn { width: min(1180px, 100%); min-height: 0; margin: 0 auto; padding: 17px 20px; gap: 12px; border-width: 1px; border-radius: 19px; background: linear-gradient(120deg, #fff0d6ed, #ecd9b5ed); box-shadow: 0 4px 0 #79583b, 0 10px 24px #17364054, inset 0 0 0 3px #fff7df75; }
.aula-rosco-app .rosco-layout .rosco-turn-head { display: none; }
.aula-rosco-app .rosco-layout .rosco-turn-body { display: grid; grid-template-columns: minmax(0, 1fr) minmax(310px, .6fr); align-items: center; gap: 22px; min-width: 0; }
.aula-rosco-app .rosco-layout .rosco-turn-content { position: relative; display: grid; grid-template-columns: 76px minmax(0, 1fr); align-items: center; gap: 9px 16px; min-width: 0; min-height: 119px; padding: 0; }
.aula-rosco-app .rosco-letter-relation { flex-direction: column; align-items: center; justify-content: center; gap: 7px; color: #8d704a; font-size: 18px; line-height: 1.15; text-align: center; }
.aula-rosco-app .rosco-letter-relation strong { color: #365e6b; font-size: 40px; }
.aula-rosco-app .rosco-clue { font-size: clamp(26px, 2.35vw, 32px); font-weight: 950; line-height: 1.2; letter-spacing: -.4px; }
.aula-rosco-app .rosco-answer-display { grid-column: 1 / -1; min-width: 0; padding: 10px 13px; border: 1px solid #c6af7b; border-radius: 12px; color: #2e5968; background: #fff8e3; font-size: clamp(28px, 2.8vw, 39px); font-weight: 1000; line-height: 1.1; letter-spacing: -.5px; overflow-wrap: anywhere; text-align: center; }
.aula-rosco-app .rosco-answer-display:empty { display: none; }
.aula-rosco-app .rosco-layout .rosco-actionsrail { display: block; width: 100%; min-width: 0; }
.aula-rosco-app .rosco-layout .rosco-active-clock { display: none; }
.aula-rosco-app .rosco-layout .rosco-actions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.aula-rosco-app .rosco-layout .rosco-actions:not(:has(button:nth-child(3))) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.aula-rosco-app .rosco-layout .rosco-actionsrail .button { flex-direction: row; min-height: 76px; padding: 13px 8px; font-size: 23px; font-weight: 1000; line-height: 1.15; overflow-wrap: anywhere; }
.aula-rosco-app .rosco-layout .rosco-turn-utility { flex-wrap: wrap; justify-content: center; gap: 10px; margin: 0; padding-top: 12px; border-color: #c5af7f; }
.aula-rosco-app .rosco-layout .rosco-turn-utility .button, .aula-rosco-app .rosco-layout .rosco-turn-utility .link-button { min-height: 44px; padding: 9px 13px; font-size: 18px; }
.aula-rosco-app [data-rosco-ui="toggleAnswer"][aria-pressed="true"] { border-color: #dcbd79; color: #ffeab6; box-shadow: 0 3px 0 #1c3c46, 0 0 0 2px #d8bd7b; }
.aula-rosco-app .rosco-layout .rosco-answer-form, .aula-rosco-app .rosco-layout .rosco-feedback, .aula-rosco-app .rosco-layout .rosco-paused { grid-column: 1 / -1; }
.aula-rosco-app .rosco-layout .rosco-answer-form .field { margin: 0; font-size: 18px; }
.aula-rosco-app .rosco-layout .rosco-answer-form input { min-height: 55px; margin-top: 6px; padding: 10px 12px; font-size: 27px; }
.aula-rosco-app .rosco-layout .rosco-feedback { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 7px 12px; margin: 0; padding: 9px 12px; font-size: 18px; }
.aula-rosco-app .rosco-layout .rosco-feedback strong { display: inline; }
.aula-rosco-app .rosco-layout .rosco-feedback span { display: inline; margin: 0; font-size: 22px; }
.aula-rosco-app .rosco-layout .rosco-paused { min-height: 119px; gap: 15px; }
.aula-rosco-app .rosco-legend { margin-top: 17px; font-size: 17px; }
.aula-rosco-app[data-view="ready"] [data-rosco-ui="app"], .aula-rosco-app[data-view="final"] [data-rosco-ui="app"] { display: flex; flex-direction: column; align-items: stretch; gap: 20px; }
.aula-rosco-app .rosco-ready, .aula-rosco-app .rosco-final { width: min(900px, 100%); margin: 0 auto; }
.aula-rosco-app .rosco-ready { padding: 20px 25px; }
.aula-rosco-app .rosco-ready h2 { margin: 0 0 11px; font-size: 35px; }
.aula-rosco-app .rosco-ready p { margin: 0 0 17px; font-size: 21px; }
.aula-rosco-app .rosco-ready > .button { min-height: 63px; font-size: 27px; }
.aula-rosco-app .rosco-ready .link-button { margin-top: 12px; }

/* Every effect is a brief one-shot; the controller clears the event marker. */
.aula-rosco-app .rosco-scene .rosco-ring::after { content: ""; position: absolute; z-index: 5; inset: -7px; border: 3px solid transparent; border-radius: 50%; opacity: 0; pointer-events: none; }
.aula-rosco-app .rosco-scene[data-event="turn"] .rosco-focus .rosco-ring { animation: rosco-focus-arrive .48s cubic-bezier(.2, .8, .2, 1) both; }
.aula-rosco-app .rosco-scene .rosco-ring[data-event="correct"]::after { border-color: #9dd59a; box-shadow: 0 0 24px #a9df8f6b; animation: rosco-halo-bloom .62s ease-out both; }
.aula-rosco-app .rosco-scene .rosco-ring[data-event="wrong"]::after { border-color: #e9a68c; box-shadow: 0 0 22px #df90765c; animation: rosco-halo-bloom .55s ease-out both; }
.aula-rosco-app .rosco-scene .rosco-ring[data-event="pass"]::after, .aula-rosco-app .rosco-scene .rosco-ring[data-event="time"]::after { border-color: #f0cc7e; box-shadow: 0 0 22px #edc97957; animation: rosco-halo-bloom .6s ease-out both; }
.aula-rosco-app .rosco-scene .rosco-node.is-event { z-index: 6; animation: rosco-letter-pop .52s ease-out both; }
.aula-rosco-app .rosco-scene[data-event="turn"] .rosco-node.is-current { animation: rosco-letter-pop .52s ease-out both; }
.aula-rosco-app .rosco-scene[data-event="final"] .rosco-ring::after { border-color: #ffe0a0; box-shadow: 0 0 26px #ffdb8a80; animation: rosco-final-halo .65s ease-out both; }
.aula-rosco-app .rosco-scene[data-event="final"] + .rosco-final h2 { animation: rosco-final-title .6s ease-out both; }
@keyframes rosco-focus-arrive { from { opacity: .72; transform: translateY(8px) scale(.975); } to { opacity: 1; transform: none; } }
@keyframes rosco-halo-bloom { 0% { opacity: 0; transform: scale(.98); } 30% { opacity: .85; } 100% { opacity: 0; transform: scale(1.07); } }
@keyframes rosco-letter-pop { 0% { transform: translate(-50%, -50%) scale(1); } 38% { transform: translate(-50%, -50%) scale(1.18); } 100% { transform: translate(-50%, -50%) scale(1); } }
@keyframes rosco-final-halo { 0% { opacity: 0; transform: scale(.98); } 45% { opacity: .9; } 100% { opacity: 0; transform: scale(1.08); } }
@keyframes rosco-final-title { from { color: #a27a37; transform: translateY(5px); } to { color: #3e5b64; transform: none; } }
@media (max-height: 820px) and (min-width: 901px) {
	.aula-rosco-app .topbar { min-height: 62px; padding-block: 7px; }
	.aula-rosco-app [data-rosco-ui="app"] { padding: 0 18px 17px; }
	.aula-rosco-app .rosco-rings.rosco-scene[data-count] { --rosco-focus-size: 440px; --rosco-mini-size: 160px; gap: 18px; padding-block: 7px; }
	.aula-rosco-app .rosco-rivals { gap: 15px; }
	.aula-rosco-app .rosco-layout, .aula-rosco-app .rosco-layout:has(.rosco-rings.rosco-scene[data-count]) { gap: 14px; }
	.aula-rosco-app .rosco-layout .rosco-turn { padding: 13px 17px; gap: 10px; }
	.aula-rosco-app .rosco-layout .rosco-turn-body { grid-template-columns: minmax(0, 1fr) minmax(310px, .6fr); gap: 18px; }
	.aula-rosco-app .rosco-layout .rosco-turn-content { min-height: 107px; gap: 8px 14px; }
	.aula-rosco-app .rosco-clue { font-size: 28px; }
	.aula-rosco-app .rosco-letter-relation { font-size: 17px; }
	.aula-rosco-app .rosco-letter-relation strong { font-size: 37px; }
	.aula-rosco-app .rosco-layout .rosco-actionsrail .button { min-height: 72px; font-size: 22px; }
	.aula-rosco-app .rosco-layout .rosco-turn-utility { padding-top: 10px; }
	.aula-rosco-app .rosco-layout .rosco-turn-utility .button, .aula-rosco-app .rosco-layout .rosco-turn-utility .link-button { padding-block: 8px; font-size: 17px; }
}
@media (max-width: 900px) {
	.aula-rosco-app .rosco-rings.rosco-scene[data-count] { --rosco-focus-size: min(540px, 100%); --rosco-mini-size: 160px; grid-template-columns: repeat(2, minmax(0, 1fr)); justify-content: center; align-items: center; gap: 20px 18px; padding: 8px 0; }
	.aula-rosco-app .rosco-focus { grid-column: 1 / -1; grid-row: 1; justify-self: center; width: min(540px, 100%); }
	.aula-rosco-app .rosco-rivals { flex-direction: row; flex-wrap: wrap; gap: 14px; width: auto; max-width: 100%; }
	.aula-rosco-app .rosco-rivals-left { grid-column: 1; grid-row: 2; justify-self: end; }
	.aula-rosco-app .rosco-rivals-right { grid-column: 2; grid-row: 2; justify-self: start; }
	.aula-rosco-app .rosco-rivals:empty { display: none; }
	.aula-rosco-app .rosco-rivals-left:empty + .rosco-focus + .rosco-rivals-right { grid-column: 1 / -1; justify-self: center; }
	.aula-rosco-app .rosco-scene .rosco-rivals .rosco-ring.is-mini { width: var(--rosco-mini-size); flex-shrink: 0; }
	.aula-rosco-app .rosco-layout .rosco-turn-body { grid-template-columns: minmax(0, 1fr); gap: 17px; }
	.aula-rosco-app .rosco-layout .rosco-actionsrail .button { min-height: 67px; font-size: 24px; }
	.aula-rosco-app .rosco-layout .rosco-turn-content { min-height: 0; }
	.aula-rosco-app .rosco-clue { font-size: 30px; }
}
@media (max-width: 540px) {
	.aula-rosco-app .topbar { flex-wrap: wrap; gap: 10px; padding: 11px 10px; }
	.aula-rosco-app .brand { flex: 1 1 100%; flex-direction: row; align-items: center; gap: 10px; width: 100%; }
	.aula-rosco-app .brand-logo { width: 94px; height: 31px; }
	.aula-rosco-app .brand-title { flex: 1; max-width: none; font-size: 23px; }
	.aula-rosco-app .toolbar, .aula-rosco-app .toolbar:has(.games-link) { display: flex; flex-wrap: nowrap; justify-content: space-between; gap: 5px; width: 100%; max-width: none; }
	.aula-rosco-app .toolbar > .games-link { order: 0; width: auto; padding-inline: 10px; font-size: 18px; }
	.aula-rosco-app .toolbar [data-rosco-ui="sound"] { width: 44px; padding-inline: 7px; }
	.aula-rosco-app .toolbar [data-rosco-ui="sound"] span { display: none; }
	.aula-rosco-app .rosco-rings.rosco-scene[data-count] { --rosco-focus-size: min(360px, 100%); --rosco-mini-size: 160px; grid-template-columns: minmax(0, 1fr); gap: 19px; width: 100%; padding: 9px 0; }
	.aula-rosco-app .rosco-focus { grid-column: 1; grid-row: 1; width: min(360px, 100%); }
	.aula-rosco-app .rosco-rivals-left { grid-column: 1; grid-row: 2; justify-self: center; }
	.aula-rosco-app .rosco-rivals-right { grid-column: 1; grid-row: 3; justify-self: center; }
	.aula-rosco-app .rosco-rivals { flex-direction: column; gap: 19px; }
	.aula-rosco-app .rosco-rivals-left:empty + .rosco-focus + .rosco-rivals-right { grid-column: 1; grid-row: 2; }
	.aula-rosco-app .rosco-scene .is-featured .rosco-node { width: 31px; height: 31px; width: 10cqw; height: 10cqw; font-size: 18px; font-size: clamp(17px, 5.8cqw, 22px); }
	.aula-rosco-app .rosco-scene .is-featured .rosco-node-mark { min-width: 12px; height: 12px; right: -2px; bottom: -3px; font-size: 10px; }
	.aula-rosco-app .rosco-scene .is-featured .rosco-node.is-current { border-width: 2px; outline-width: 2px; outline-offset: 1px; }
	.aula-rosco-app .rosco-scene .is-featured .rosco-center { inset: 18%; gap: 7px; padding: 7px; }
	.aula-rosco-app .rosco-scene .is-featured .rosco-player-name { font-size: 20px; }
	.aula-rosco-app .rosco-scene .is-featured .rosco-score { font-size: 39px; gap: 5px; }
	.aula-rosco-app .rosco-scene .is-featured .rosco-score small { font-size: 15px; }
	.aula-rosco-app .rosco-scene .is-featured .rosco-time { font-size: 29px; }
	.aula-rosco-app .rosco-layout .rosco-turn { order: 0; padding: 19px 15px; gap: 15px; }
	.aula-rosco-app .rosco-layout .rosco-turn-content { grid-template-columns: 54px minmax(0, 1fr); gap: 12px; }
	.aula-rosco-app .rosco-letter-relation { font-size: 16px; }
	.aula-rosco-app .rosco-letter-relation strong { font-size: 35px; }
	.aula-rosco-app .rosco-clue { font-size: 27px; }
	.aula-rosco-app .rosco-answer-display { padding: 11px 12px; font-size: 29px; }
	.aula-rosco-app .rosco-layout .rosco-actionsrail .button { min-height: 72px; font-size: 21px; }
	.aula-rosco-app .rosco-layout .rosco-turn-utility { gap: 11px; }
	.aula-rosco-app .rosco-layout .rosco-turn-utility .button, .aula-rosco-app .rosco-layout .rosco-turn-utility .link-button { flex: 1 1 44%; min-height: 46px; padding-inline: 9px; font-size: 18px; }
	.aula-rosco-app .rosco-ready, .aula-rosco-app .rosco-final { order: 0; }
	.aula-rosco-app .rosco-ready { padding: 22px 17px; }
	.aula-rosco-app .rosco-ready > .button { width: 100%; min-width: 0; }
}
@media (max-width: 360px) {
	.aula-rosco-app .brand-logo { width: 88px; }
	.aula-rosco-app .brand-title { font-size: 22px; }
	.aula-rosco-app .toolbar > .games-link { padding-inline: 8px; font-size: 17px; }
	.aula-rosco-app .rosco-layout .rosco-actions, .aula-rosco-app .rosco-layout .rosco-actions:not(:has(button:nth-child(3))) { grid-template-columns: minmax(0, 1fr); }
	.aula-rosco-app .rosco-layout .rosco-actionsrail .button { min-height: 61px; font-size: 24px; }
}
@media (prefers-reduced-motion: reduce) {
	.aula-rosco-app *, .aula-rosco-app *::before, .aula-rosco-app *::after { animation: none !important; transition: none !important; }
}
.aula-rosco-app[data-reduced-motion="true"] *, .aula-rosco-app[data-reduced-motion="true"] *::before, .aula-rosco-app[data-reduced-motion="true"] *::after { animation: none !important; transition: none !important; }

/* A short desktop keeps both action rows beside the clue, directly below the focus. */
.aula-rosco-app { container-type: inline-size; container-name: rosco-game; }
@media (max-height: 820px) and (min-width: 901px) {
	.aula-rosco-app .rosco-layout .rosco-turn { display: grid; grid-template-columns: minmax(0, 1fr) minmax(310px, .6fr); grid-template-rows: auto auto; gap: 11px 18px; }
	.aula-rosco-app .rosco-layout .rosco-turn-body { display: contents; }
	.aula-rosco-app .rosco-layout .rosco-turn-content { grid-column: 1; grid-row: 1 / 3; }
	.aula-rosco-app .rosco-layout .rosco-actionsrail { grid-column: 2; grid-row: 1; }
	.aula-rosco-app .rosco-layout .rosco-turn-utility { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-column: 2; grid-row: 2; gap: 9px; padding: 0; border: 0; }
	.aula-rosco-app .rosco-layout .rosco-turn-utility .button, .aula-rosco-app .rosco-layout .rosco-turn-utility .link-button { width: 100%; min-width: 0; min-height: 44px; }
}
@media (max-width: 900px) {
	.aula-rosco-app .rosco-layout .rosco-turn { display: flex; flex-direction: column; }
	.aula-rosco-app .rosco-layout .rosco-turn-body { display: grid; grid-template-columns: minmax(0, 1fr); }
	.aula-rosco-app .rosco-layout .rosco-turn-content, .aula-rosco-app .rosco-layout .rosco-actionsrail { grid-column: auto; grid-row: auto; }
	.aula-rosco-app .rosco-layout .rosco-turn-utility { display: flex; grid-column: auto; grid-row: auto; padding-top: 12px; border-top: 1px solid #c5af7f; }
}
/* Flatten only layout wrappers so the mobile dock follows the active ring immediately. */
@media (max-width: 540px) {
	.aula-rosco-app .rosco-layout:has(.rosco-rings.rosco-scene[data-count]) { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 14px; }
	.aula-rosco-app .rosco-layout > .rosco-rings.rosco-scene[data-count] { display: contents; }
	.aula-rosco-app .rosco-layout .rosco-focus { grid-column: 1 / -1; grid-row: 1; justify-self: center; }
	.aula-rosco-app .rosco-layout .rosco-turn { grid-column: 1 / -1; grid-row: 2; }
	.aula-rosco-app .rosco-layout .rosco-rivals-left { grid-column: 1; grid-row: 3; justify-self: center; }
	.aula-rosco-app .rosco-layout .rosco-rivals-right { grid-column: 2; grid-row: 3; justify-self: center; }
	.aula-rosco-app .rosco-layout .rosco-rivals-left:empty + .rosco-focus + .rosco-rivals-right { grid-column: 1 / -1; grid-row: 3; }
	.aula-rosco-app[data-view="ready"] [data-rosco-ui="app"], .aula-rosco-app[data-view="final"] [data-rosco-ui="app"] { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 14px; }
	.aula-rosco-app[data-view="ready"] .rosco-rings.rosco-scene[data-count], .aula-rosco-app[data-view="final"] .rosco-rings.rosco-scene[data-count] { display: contents; }
	.aula-rosco-app[data-view="ready"] .rosco-focus, .aula-rosco-app[data-view="final"] .rosco-focus { grid-column: 1 / -1; grid-row: 1; justify-self: center; }
	.aula-rosco-app .rosco-ready, .aula-rosco-app .rosco-final { grid-column: 1 / -1; grid-row: 2; }
	.aula-rosco-app[data-view="ready"] .rosco-rivals-left, .aula-rosco-app[data-view="final"] .rosco-rivals-left { grid-column: 1; grid-row: 3; justify-self: center; }
	.aula-rosco-app[data-view="ready"] .rosco-rivals-right, .aula-rosco-app[data-view="final"] .rosco-rivals-right { grid-column: 2; grid-row: 3; justify-self: center; }
	.aula-rosco-app[data-view="ready"] .rosco-rivals-left:empty + .rosco-focus + .rosco-rivals-right, .aula-rosco-app[data-view="final"] .rosco-rivals-left:empty + .rosco-focus + .rosco-rivals-right { grid-column: 1 / -1; grid-row: 3; }
}
@media (max-width: 360px) {
	.aula-rosco-app .rosco-layout, .aula-rosco-app[data-view="ready"] [data-rosco-ui="app"], .aula-rosco-app[data-view="final"] [data-rosco-ui="app"] { --rosco-mini-size: 140px; }
	.aula-rosco-app .rosco-layout .rosco-rivals .rosco-ring.is-mini, .aula-rosco-app[data-view="ready"] .rosco-rivals .rosco-ring.is-mini, .aula-rosco-app[data-view="final"] .rosco-rivals .rosco-ring.is-mini { width: 140px; }
}

/* The same safe reflow also applies to narrow WordPress columns in wide windows. */
@container rosco-game (max-width: 900px) {
	.aula-rosco-app .rosco-rings.rosco-scene[data-count] { --rosco-focus-size: min(540px, 100%); --rosco-mini-size: 160px; grid-template-columns: repeat(2, minmax(0, 1fr)); justify-content: center; align-items: center; gap: 20px 18px; padding: 8px 0; }
	.aula-rosco-app .rosco-focus { grid-column: 1 / -1; grid-row: 1; justify-self: center; width: min(540px, 100%); }
	.aula-rosco-app .rosco-rivals { flex-direction: row; flex-wrap: wrap; gap: 14px; width: auto; max-width: 100%; }
	.aula-rosco-app .rosco-rivals-left { grid-column: 1; grid-row: 2; justify-self: end; }
	.aula-rosco-app .rosco-rivals-right { grid-column: 2; grid-row: 2; justify-self: start; }
	.aula-rosco-app .rosco-rivals:empty { display: none; }
	.aula-rosco-app .rosco-rivals-left:empty + .rosco-focus + .rosco-rivals-right { grid-column: 1 / -1; justify-self: center; }
	.aula-rosco-app .rosco-scene .rosco-rivals .rosco-ring.is-mini { width: var(--rosco-mini-size); flex-shrink: 0; }
	.aula-rosco-app .rosco-layout .rosco-turn-body { grid-template-columns: minmax(0, 1fr); gap: 17px; }
	.aula-rosco-app .rosco-layout .rosco-actionsrail .button { min-height: 67px; font-size: 24px; }
	.aula-rosco-app .rosco-layout .rosco-turn-content { min-height: 0; }
	.aula-rosco-app .rosco-clue { font-size: 30px; }
}
@container rosco-game (max-width: 900px) {
	.aula-rosco-app .rosco-layout .rosco-turn { display: flex; flex-direction: column; }
	.aula-rosco-app .rosco-layout .rosco-turn-body { display: grid; grid-template-columns: minmax(0, 1fr); }
	.aula-rosco-app .rosco-layout .rosco-turn-content, .aula-rosco-app .rosco-layout .rosco-actionsrail { grid-column: auto; grid-row: auto; }
	.aula-rosco-app .rosco-layout .rosco-turn-utility { display: flex; grid-column: auto; grid-row: auto; padding-top: 12px; border-top: 1px solid #c5af7f; }
}
@container rosco-game (max-width: 540px) {
	.aula-rosco-app .topbar { flex-wrap: wrap; gap: 10px; padding: 11px 10px; }
	.aula-rosco-app .brand { flex: 1 1 100%; flex-direction: row; align-items: center; gap: 10px; width: 100%; }
	.aula-rosco-app .brand-logo { width: 94px; height: 31px; }
	.aula-rosco-app .brand-title { flex: 1; max-width: none; font-size: 23px; }
	.aula-rosco-app .toolbar, .aula-rosco-app .toolbar:has(.games-link) { display: flex; flex-wrap: nowrap; justify-content: space-between; gap: 5px; width: 100%; max-width: none; }
	.aula-rosco-app .toolbar > .games-link { order: 0; width: auto; padding-inline: 10px; font-size: 18px; }
	.aula-rosco-app .toolbar [data-rosco-ui="sound"] { width: 44px; padding-inline: 7px; }
	.aula-rosco-app .toolbar [data-rosco-ui="sound"] span { display: none; }
	.aula-rosco-app .rosco-rings.rosco-scene[data-count] { --rosco-focus-size: min(360px, 100%); --rosco-mini-size: 160px; grid-template-columns: minmax(0, 1fr); gap: 19px; width: 100%; padding: 9px 0; }
	.aula-rosco-app .rosco-focus { grid-column: 1; grid-row: 1; width: min(360px, 100%); }
	.aula-rosco-app .rosco-rivals-left { grid-column: 1; grid-row: 2; justify-self: center; }
	.aula-rosco-app .rosco-rivals-right { grid-column: 1; grid-row: 3; justify-self: center; }
	.aula-rosco-app .rosco-rivals { flex-direction: column; gap: 19px; }
	.aula-rosco-app .rosco-rivals-left:empty + .rosco-focus + .rosco-rivals-right { grid-column: 1; grid-row: 2; }
	.aula-rosco-app .rosco-scene .is-featured .rosco-node { width: 31px; height: 31px; width: 10cqw; height: 10cqw; font-size: 18px; font-size: clamp(17px, 5.8cqw, 22px); }
	.aula-rosco-app .rosco-scene .is-featured .rosco-node-mark { min-width: 12px; height: 12px; right: -2px; bottom: -3px; font-size: 10px; }
	.aula-rosco-app .rosco-scene .is-featured .rosco-node.is-current { border-width: 2px; outline-width: 2px; outline-offset: 1px; }
	.aula-rosco-app .rosco-scene .is-featured .rosco-center { inset: 18%; gap: 7px; padding: 7px; }
	.aula-rosco-app .rosco-scene .is-featured .rosco-player-name { font-size: 20px; }
	.aula-rosco-app .rosco-scene .is-featured .rosco-score { font-size: 39px; gap: 5px; }
	.aula-rosco-app .rosco-scene .is-featured .rosco-score small { font-size: 15px; }
	.aula-rosco-app .rosco-scene .is-featured .rosco-time { font-size: 29px; }
	.aula-rosco-app .rosco-layout .rosco-turn { order: 0; padding: 19px 15px; gap: 15px; }
	.aula-rosco-app .rosco-layout .rosco-turn-content { grid-template-columns: 54px minmax(0, 1fr); gap: 12px; }
	.aula-rosco-app .rosco-letter-relation { font-size: 16px; }
	.aula-rosco-app .rosco-letter-relation strong { font-size: 35px; }
	.aula-rosco-app .rosco-clue { font-size: 27px; }
	.aula-rosco-app .rosco-answer-display { padding: 11px 12px; font-size: 29px; }
	.aula-rosco-app .rosco-layout .rosco-actionsrail .button { min-height: 72px; font-size: 21px; }
	.aula-rosco-app .rosco-layout .rosco-turn-utility { gap: 11px; }
	.aula-rosco-app .rosco-layout .rosco-turn-utility .button, .aula-rosco-app .rosco-layout .rosco-turn-utility .link-button { flex: 1 1 44%; min-height: 46px; padding-inline: 9px; font-size: 18px; }
	.aula-rosco-app .rosco-ready, .aula-rosco-app .rosco-final { order: 0; }
	.aula-rosco-app .rosco-ready { padding: 22px 17px; }
	.aula-rosco-app .rosco-ready > .button { width: 100%; min-width: 0; }
}
@container rosco-game (max-width: 540px) {
	.aula-rosco-app .rosco-layout:has(.rosco-rings.rosco-scene[data-count]) { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 14px; }
	.aula-rosco-app .rosco-layout > .rosco-rings.rosco-scene[data-count] { display: contents; }
	.aula-rosco-app .rosco-layout .rosco-focus { grid-column: 1 / -1; grid-row: 1; justify-self: center; }
	.aula-rosco-app .rosco-layout .rosco-turn { grid-column: 1 / -1; grid-row: 2; }
	.aula-rosco-app .rosco-layout .rosco-rivals-left { grid-column: 1; grid-row: 3; justify-self: center; }
	.aula-rosco-app .rosco-layout .rosco-rivals-right { grid-column: 2; grid-row: 3; justify-self: center; }
	.aula-rosco-app .rosco-layout .rosco-rivals-left:empty + .rosco-focus + .rosco-rivals-right { grid-column: 1 / -1; grid-row: 3; }
	.aula-rosco-app[data-view="ready"] [data-rosco-ui="app"], .aula-rosco-app[data-view="final"] [data-rosco-ui="app"] { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 14px; }
	.aula-rosco-app[data-view="ready"] .rosco-rings.rosco-scene[data-count], .aula-rosco-app[data-view="final"] .rosco-rings.rosco-scene[data-count] { display: contents; }
	.aula-rosco-app[data-view="ready"] .rosco-focus, .aula-rosco-app[data-view="final"] .rosco-focus { grid-column: 1 / -1; grid-row: 1; justify-self: center; }
	.aula-rosco-app .rosco-ready, .aula-rosco-app .rosco-final { grid-column: 1 / -1; grid-row: 2; }
	.aula-rosco-app[data-view="ready"] .rosco-rivals-left, .aula-rosco-app[data-view="final"] .rosco-rivals-left { grid-column: 1; grid-row: 3; justify-self: center; }
	.aula-rosco-app[data-view="ready"] .rosco-rivals-right, .aula-rosco-app[data-view="final"] .rosco-rivals-right { grid-column: 2; grid-row: 3; justify-self: center; }
	.aula-rosco-app[data-view="ready"] .rosco-rivals-left:empty + .rosco-focus + .rosco-rivals-right, .aula-rosco-app[data-view="final"] .rosco-rivals-left:empty + .rosco-focus + .rosco-rivals-right { grid-column: 1 / -1; grid-row: 3; }
}
@container rosco-game (max-width: 360px) {
	.aula-rosco-app .brand-logo { width: 88px; }
	.aula-rosco-app .brand-title { font-size: 22px; }
	.aula-rosco-app .toolbar > .games-link { padding-inline: 8px; font-size: 17px; }
	.aula-rosco-app .rosco-layout .rosco-actions, .aula-rosco-app .rosco-layout .rosco-actions:not(:has(button:nth-child(3))) { grid-template-columns: minmax(0, 1fr); }
	.aula-rosco-app .rosco-layout .rosco-actionsrail .button { min-height: 61px; font-size: 24px; }
}
@container rosco-game (max-width: 360px) {
	.aula-rosco-app .rosco-layout, .aula-rosco-app[data-view="ready"] [data-rosco-ui="app"], .aula-rosco-app[data-view="final"] [data-rosco-ui="app"] { --rosco-mini-size: 140px; }
	.aula-rosco-app .rosco-layout .rosco-rivals .rosco-ring.is-mini, .aula-rosco-app[data-view="ready"] .rosco-rivals .rosco-ring.is-mini, .aula-rosco-app[data-view="final"] .rosco-rivals .rosco-ring.is-mini { width: 140px; }
}
.aula-rosco-app .rosco-scene[data-event="wrong"] .rosco-focus .rosco-ring, .aula-rosco-app .rosco-scene[data-event="pass"] .rosco-focus .rosco-ring, .aula-rosco-app .rosco-scene[data-event="time"] .rosco-focus .rosco-ring { animation: rosco-focus-arrive .48s cubic-bezier(.2, .8, .2, 1) both; }
@container rosco-game (max-width: 540px) {
	.aula-rosco-app [data-rosco-ui="app"] { padding-inline: 12px; }
}
@media (max-width: 360px) {
	.aula-rosco-app .rosco-layout:has(.rosco-rings.rosco-scene[data-count]), .aula-rosco-app[data-view="ready"] [data-rosco-ui="app"], .aula-rosco-app[data-view="final"] [data-rosco-ui="app"] { grid-template-columns: minmax(0, 1fr); }
	.aula-rosco-app .rosco-layout .rosco-rivals-left, .aula-rosco-app[data-view="ready"] .rosco-rivals-left, .aula-rosco-app[data-view="final"] .rosco-rivals-left { grid-column: 1; grid-row: 3; }
	.aula-rosco-app .rosco-layout .rosco-rivals-right, .aula-rosco-app[data-view="ready"] .rosco-rivals-right, .aula-rosco-app[data-view="final"] .rosco-rivals-right { grid-column: 1; grid-row: 4; }
}
@container rosco-game (max-width: 360px) {
	.aula-rosco-app [data-rosco-ui="app"] { padding-inline: 10px; }
	.aula-rosco-app .rosco-layout:has(.rosco-rings.rosco-scene[data-count]), .aula-rosco-app[data-view="ready"] [data-rosco-ui="app"], .aula-rosco-app[data-view="final"] [data-rosco-ui="app"] { grid-template-columns: minmax(0, 1fr); }
	.aula-rosco-app .rosco-layout .rosco-rivals-left, .aula-rosco-app[data-view="ready"] .rosco-rivals-left, .aula-rosco-app[data-view="final"] .rosco-rivals-left { grid-column: 1; grid-row: 3; }
	.aula-rosco-app .rosco-layout .rosco-rivals-right, .aula-rosco-app[data-view="ready"] .rosco-rivals-right, .aula-rosco-app[data-view="final"] .rosco-rivals-right { grid-column: 1; grid-row: 4; }
}
/* Compact header labels follow the shortcode width as well as the window width. */
@container rosco-game (max-width: 900px) {
	.aula-rosco-app .toolbar { flex-wrap: wrap; max-width: 100%; }
	.aula-rosco-app .toolbar .icon-button span { display: none; }
	.aula-rosco-app .toolbar [data-rosco-ui="sound"] span { display: inline; }
}
@container rosco-game (max-width: 540px) {
	.aula-rosco-app .toolbar [data-rosco-ui="sound"] span { display: none; }
}

/* 5.0.0 · Teams: a complete left roster, a large active ring and a tall clue card. */
.aula-rosco-app:has(.rosco-scene[data-participant-type="teams"]) { width: min(1840px, 100%); }
.aula-rosco-app:has(.rosco-scene[data-participant-type="teams"]) [data-rosco-ui="app"] { width: 100%; max-width: none; }
.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]), .aula-rosco-app [data-rosco-ui="app"]:has(> .rosco-scene[data-participant-type="teams"]) { --rosco-team-mini: 150px; --rosco-team-hero: clamp(440px, 36cqw, 540px); display: grid; grid-template-columns: var(--rosco-team-mini) var(--rosco-team-hero) minmax(350px, 1fr); align-items: stretch; gap: 23px; min-width: 0; }
.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) > .rosco-rings.rosco-scene[data-participant-type="teams"], .aula-rosco-app [data-rosco-ui="app"] > .rosco-rings.rosco-scene[data-participant-type="teams"] { display: contents; }
.aula-rosco-app .rosco-scene[data-participant-type="teams"] .rosco-rivals-left { display: flex; flex-direction: column; align-items: center; align-self: center; justify-self: center; grid-column: 1; grid-row: 1; gap: 12px; width: var(--rosco-team-mini); max-width: none; margin: 0; }
.aula-rosco-app .rosco-scene[data-participant-type="teams"] .rosco-focus { grid-column: 2; grid-row: 1; align-self: center; justify-self: center; width: var(--rosco-team-hero); min-width: 0; }
.aula-rosco-app .rosco-scene[data-participant-type="teams"] .rosco-rivals-left .rosco-ring.is-mini { width: var(--rosco-team-mini); max-width: none; flex-shrink: 0; }
.aula-rosco-app .rosco-scene[data-participant-type="teams"] .is-mini .rosco-node { width: clamp(14px, 10.2cqw, 17px); height: clamp(14px, 10.2cqw, 17px); font-size: 11px; }
.aula-rosco-app .rosco-scene[data-participant-type="teams"] .is-mini .rosco-center { inset: 9%; gap: 3px; padding: 3px; }
.aula-rosco-app .rosco-scene[data-participant-type="teams"] .is-mini .rosco-player-name { font-size: 13px; line-height: 1.05; overflow-wrap: anywhere; }
.aula-rosco-app .rosco-scene[data-participant-type="teams"] .is-mini .rosco-score { font-size: 23px; }
.aula-rosco-app .rosco-scene[data-participant-type="teams"] .is-mini .rosco-time { font-size: 17px; }
.aula-rosco-app .rosco-scene[data-participant-type="teams"] .is-mini .rosco-finished-label { display: none; }
.aula-rosco-app .rosco-scene[data-participant-type="teams"] .rosco-ring.is-mini.is-active { border-color: #ffe9a9; box-shadow: 0 4px 0 #95662e, 0 0 0 2px #e4c279, 0 8px 14px #16333c47; }
.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) > .rosco-turn, .aula-rosco-app [data-rosco-ui="app"]:has(> .rosco-scene[data-participant-type="teams"]) > .rosco-ready, .aula-rosco-app [data-rosco-ui="app"]:has(> .rosco-scene[data-participant-type="teams"]) > .rosco-final { display: flex; flex-direction: column; align-self: stretch; grid-column: 3; grid-row: 1; width: 100%; min-width: 0; min-height: 0; height: auto; margin: 0; padding: 24px; gap: 20px; }
.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-turn-body { display: flex; flex-direction: column; flex: 1 0 auto; width: 100%; min-width: 0; gap: 23px; }
.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-turn-content { display: flex; flex-direction: column; justify-content: center; flex: 1 0 auto; grid-column: auto; grid-row: auto; width: 100%; min-width: 0; min-height: 0; gap: 21px; }
.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-letter-relation { flex-direction: row; justify-content: flex-start; gap: 12px; font-size: 23px; }
.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-letter-relation strong { font-size: 47px; }
.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-clue { width: 100%; font-size: clamp(30px, 2.5vw, 43px); line-height: 1.23; }
.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-answer-display { width: 100%; font-size: clamp(33px, 2.8vw, 46px); }
.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-actionsrail { display: grid; grid-template-columns: 105px minmax(0, 1fr); align-items: stretch; grid-column: auto; grid-row: auto; gap: 14px; width: 100%; }
.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-active-clock { display: flex; min-height: 91px; padding: 14px 8px; }
.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-active-clock strong { font-size: 48px; }
.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-actions { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-actions:not(:has(button:nth-child(3))) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-actionsrail .button { min-height: 90px; padding: 14px 8px; font-size: 23px; }
.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-turn-utility { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-column: auto; grid-row: auto; gap: 11px; width: 100%; padding-top: 17px; border-top: 1px solid #c5af7f; }
.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-turn-utility .button, .aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-turn-utility .link-button { width: 100%; min-width: 0; min-height: 46px; font-size: 18px; }
@media (max-height: 820px) and (min-width: 1101px) {
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]), .aula-rosco-app [data-rosco-ui="app"]:has(> .rosco-scene[data-participant-type="teams"]) { --rosco-team-mini: 136px; --rosco-team-hero: clamp(440px, 35cqw, 480px); gap: 16px; }
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) > .rosco-turn { padding: 21px; gap: 17px; }
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-turn-body { gap: 18px; }
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-turn-content { gap: 18px; }
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-clue { font-size: 32px; }
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-actionsrail { grid-template-columns: 91px minmax(0, 1fr); gap: 12px; }
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-active-clock strong { font-size: 44px; }
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-actionsrail .button { min-height: 82px; font-size: 21px; }
}
@media (max-width: 1100px) {
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]), .aula-rosco-app [data-rosco-ui="app"]:has(> .rosco-scene[data-participant-type="teams"]) { --rosco-team-mini: 150px; --rosco-team-hero: min(540px, 100%); display: grid; grid-template-columns: minmax(0, 1fr); gap: 22px; }
	.aula-rosco-app .rosco-scene[data-participant-type="teams"] .rosco-focus { grid-column: 1; grid-row: 1; width: min(540px, 100%); }
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) > .rosco-turn, .aula-rosco-app [data-rosco-ui="app"]:has(> .rosco-scene[data-participant-type="teams"]) > .rosco-ready, .aula-rosco-app [data-rosco-ui="app"]:has(> .rosco-scene[data-participant-type="teams"]) > .rosco-final { grid-column: 1; grid-row: 2; height: auto; }
	.aula-rosco-app .rosco-scene[data-participant-type="teams"] .rosco-rivals-left { flex-direction: row; flex-wrap: wrap; justify-content: center; grid-column: 1; grid-row: 3; width: 100%; gap: 17px; }
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-clue { font-size: 33px; }
}
@media (max-width: 540px) {
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]), .aula-rosco-app [data-rosco-ui="app"]:has(> .rosco-scene[data-participant-type="teams"]) { --rosco-team-hero: min(360px, 100%); gap: 21px; }
	.aula-rosco-app .rosco-scene[data-participant-type="teams"] .rosco-focus { width: min(360px, 100%); }
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) > .rosco-turn { padding: 21px 16px; }
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-clue { font-size: 30px; }
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-letter-relation { font-size: 22px; }
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-actionsrail { display: flex; flex-direction: column; gap: 15px; }
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-active-clock { flex-direction: row; gap: 12px; min-height: 76px; }
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-actionsrail .button { min-height: 86px; font-size: 22px; }
}
@media (max-width: 360px) {
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-actions, .aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-actions:not(:has(button:nth-child(3))) { grid-template-columns: minmax(0, 1fr); }
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-actionsrail .button { min-height: 61px; font-size: 24px; }
}

/* Team-only shortcode columns keep the large active ring, question, then roster. */
@container rosco-game (max-width: 1100px) {
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]), .aula-rosco-app [data-rosco-ui="app"]:has(> .rosco-scene[data-participant-type="teams"]) { --rosco-team-mini: 150px; --rosco-team-hero: min(540px, 100%); display: grid; grid-template-columns: minmax(0, 1fr); gap: 22px; }
	.aula-rosco-app .rosco-scene[data-participant-type="teams"] .rosco-focus { grid-column: 1; grid-row: 1; width: min(540px, 100%); }
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) > .rosco-turn, .aula-rosco-app [data-rosco-ui="app"]:has(> .rosco-scene[data-participant-type="teams"]) > .rosco-ready, .aula-rosco-app [data-rosco-ui="app"]:has(> .rosco-scene[data-participant-type="teams"]) > .rosco-final { grid-column: 1; grid-row: 2; height: auto; }
	.aula-rosco-app .rosco-scene[data-participant-type="teams"] .rosco-rivals-left { flex-direction: row; flex-wrap: wrap; justify-content: center; grid-column: 1; grid-row: 3; width: 100%; gap: 17px; }
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-clue { font-size: 33px; }
}
@container rosco-game (max-width: 540px) {
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]), .aula-rosco-app [data-rosco-ui="app"]:has(> .rosco-scene[data-participant-type="teams"]) { --rosco-team-hero: min(360px, 100%); gap: 21px; }
	.aula-rosco-app .rosco-scene[data-participant-type="teams"] .rosco-focus { width: min(360px, 100%); }
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) > .rosco-turn { padding: 21px 16px; }
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-clue { font-size: 30px; }
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-letter-relation { font-size: 22px; }
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-actionsrail { display: flex; flex-direction: column; gap: 15px; }
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-active-clock { flex-direction: row; gap: 12px; min-height: 76px; }
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-actionsrail .button { min-height: 86px; font-size: 22px; }
}
@container rosco-game (max-width: 360px) {
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-actions, .aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-actions:not(:has(button:nth-child(3))) { grid-template-columns: minmax(0, 1fr); }
	.aula-rosco-app .rosco-layout[data-participant-type="teams"]:has(.rosco-rings.rosco-scene[data-participant-type="teams"]) .rosco-actionsrail .button { min-height: 61px; font-size: 24px; }
}
