.av-clean{--av-purple:#2b1287;--av-green:#95f482;--av-line:#ded5ff;color:#2e2b36;font-family:Nunito,Inter,system-ui,sans-serif;max-width:1600px;margin:auto;padding:16px 0}.av-clean [hidden]{display:none!important}.av-unit-head{margin:0 0 24px}.av-unit-head a{font-weight:800;color:var(--av-purple);text-decoration:none;font-size:13px}.av-unit-head h1{font-size:28px;margin:12px 0 4px}.av-unit-head p{margin:0;color:#726880}.av-class-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:22px}.av-clean.av-nav-open .av-class-grid{grid-template-columns:205px minmax(0,1fr)}.av-nav-label{font-size:11px;font-weight:900;letter-spacing:1px;color:#726880;display:block;margin-bottom:12px}.av-lesson-nav{display:none;flex-direction:column;gap:5px}.av-clean.av-nav-open .av-lesson-nav{display:flex}.av-nav-toggle{display:inline-flex;align-items:center;gap:8px;margin:0 0 14px;border:1px solid var(--av-line);background:#fff;color:var(--av-purple);border-radius:22px;padding:9px 16px;font-size:12px;font-weight:800;cursor:pointer;font-family:inherit}.av-nav-toggle[aria-expanded="true"]{background:var(--av-green);border-color:var(--av-green);color:#24106f}.av-lesson{display:flex;gap:12px;padding:13px 12px;border-radius:12px;text-decoration:none;color:#2e2b36;border:1px solid transparent;border-left:4px solid transparent;line-height:1.35}.av-lesson b{color:var(--av-purple);font-size:14px}.av-lesson span{font-weight:800;font-size:14px}.av-lesson small{display:block;font-weight:600;font-size:11px;color:#726880;margin-top:5px}.av-lesson[aria-current]{background:white;border-color:var(--av-line);border-left-color:var(--av-green);box-shadow:0 3px 0 #e6e0f4}.av-class-main{min-width:0;border:1px solid var(--av-line);border-radius:20px;padding:22px;background:#fff;overflow:hidden}.av-class-head{display:flex;align-items:start;justify-content:space-between;gap:18px}.av-class-head h2{font-size:22px;margin:0 0 5px}.av-class-head p{margin:0;color:#726880;font-size:14px}.av-class-head .button{white-space:nowrap;font-size:12px}.av-clean button{cursor:pointer;font-family:inherit}.av-simple-tools{display:flex;gap:7px;flex-wrap:wrap;margin:20px 0 14px;padding:11px 0;border-top:1px solid var(--av-line);border-bottom:1px solid var(--av-line)}.av-simple-tools button,.av-tabs button,.av-page-nav button,.av-board-toolbar button{border:1px solid var(--av-line);background:white;color:var(--av-purple);border-radius:22px;padding:8px 12px;font-size:12px;font-weight:800}.av-simple-tools button[aria-pressed=true],.av-tabs [aria-selected=true],.av-board-toolbar button[aria-pressed=true]{background:var(--av-green);border-color:var(--av-green);color:#24106f}.av-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.av-tabs button{font-size:13px;padding:10px 14px}.av-tabs [aria-selected=true]{box-shadow:0 3px 0 #ded5ee}.av-clean .module-video-panel{display:block;border:0;border-radius:0;box-shadow:none;padding:0;overflow:visible;min-height:0;background:white}.av-clean .media-controls{display:none}.av-more .media-controls{display:block;padding:0;border:0}.av-more [data-media-tab="presentation"]{display:none}.av-more [data-ecrif-media-card]{display:none}.av-clean .material-viewer{min-height:0;height:auto;padding:0;background:white;border:0;aspect-ratio:auto}.av-clean .class-presentation-stage{min-height:0;background:white;aspect-ratio:16/9}.av-clean .class-presentation-stage img{width:100%;height:auto;object-fit:contain}.av-clean .class-presentation-controls{padding:14px 0 0;background:white}.av-clean .class-presentation-controls .button{font-size:12px}.av-clean .class-presentation-fullscreen{display:none}.av-clean .media-image-layout{border:0;border-radius:0;box-shadow:none}.av-clean .media-image-toolrail,.av-clean [data-media-image-toolbar],.av-clean [data-media-annotation-toolbar]{display:none!important}.av-page-nav{display:flex;justify-content:center;align-items:center;gap:14px;margin-top:15px;font-size:13px}.av-more{margin-top:20px;border-top:1px solid var(--av-line);padding-top:14px}.av-more summary{cursor:pointer;color:#736985;font-size:12px;font-weight:800}.av-more-body{display:flex;gap:12px;flex-wrap:wrap;padding-top:10px}.av-more-body>p,.av-more-body>[data-av-extra-slot]{width:100%}.av-more .button{font-size:12px}.av-status{font-size:12px;margin:8px 0 0}.av-status:empty{display:none}.av-clean [data-av-pane="games"],.av-clean [data-av-pane="guide"]{padding:24px;background:#f7f7fb;border-radius:14px;min-height:280px}.av-clean [data-av-pane] h3{margin-top:0}.av-game-links{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0}.av-resource-note{font-size:12px;color:#726880}.av-image-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.av-art{border:1px solid var(--av-line);border-radius:14px;background:#fff;padding:12px;color:var(--av-purple);text-align:center}.av-art img{width:100%;height:130px;object-fit:contain}.av-art strong,.av-art small{display:block}.av-art small{font-size:11px;color:#726880;margin-top:5px}.av-inline-board{margin-top:18px;border-top:1px solid var(--av-line);padding-top:14px}.av-board-toolbar{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.av-board-toolbar strong{font-size:13px;margin-right:auto}.av-board-toolbar button{font-size:11px;padding:6px 10px}.av-board-toolbar label{font-size:11px;display:flex;align-items:center;gap:4px}.av-board-toolbar input{width:24px;height:24px;border:0;padding:0;background:none}.av-inline-board textarea{width:100%;resize:vertical;min-height:64px;padding:12px;border:1px solid var(--av-line);border-radius:12px;font:inherit;margin-bottom:8px}.av-board-area{height:330px;position:relative;border:1px solid var(--av-line);border-radius:12px;background:#fff;overflow:hidden;touch-action:none}.av-board-area canvas{position:absolute;inset:0;width:100%;height:100%;z-index:3;touch-action:none}.av-board-object{position:absolute;width:24%;height:35%;padding:0;border:0;background:transparent;z-index:2;touch-action:none}.av-board-object:focus-visible{outline:2px solid var(--av-purple)}.av-board-object img{width:100%;height:100%;object-fit:contain;user-select:none;pointer-events:none}.av-board-area [data-av-board-text]{position:absolute;left:5%;top:4%;margin:0;max-width:90%;white-space:pre-wrap;overflow-wrap:anywhere;font-size:26px;font-weight:800;color:var(--av-purple);pointer-events:none;z-index:2}.av-student .av-unit-head,.av-student .av-lesson-nav,.av-student .av-nav-toggle,.av-student .av-tabs,.av-student .av-simple-tools,.av-student .av-more,.av-student .av-status{display:none}.av-student .av-class-grid{grid-template-columns:1fr}.av-student .av-class-head{margin-bottom:20px}.av-student .av-board-toolbar>:not(strong),.av-student .av-inline-board textarea{display:none}.av-student .av-board-area{pointer-events:none}.av-clean:fullscreen{background:#f7f7fb;padding:20px;overflow:auto}.av-booklets{margin:24px 0}.av-booklets .teacher-booklet-card{display:flex;flex-direction:column;gap:12px;padding:22px}
@media(max-width:1100px){.av-clean.av-nav-open .av-class-grid{grid-template-columns:170px minmax(0,1fr);gap:14px}.av-class-main{padding:16px}.av-class-head h2{font-size:19px}.av-class-head{flex-wrap:wrap}.av-image-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.av-clean.av-nav-open .av-class-grid{grid-template-columns:minmax(0,1fr)}.av-clean.av-nav-open .av-lesson-nav{display:flex;flex-direction:row;overflow:auto;max-width:100%;padding-bottom:8px}.av-nav-label{display:none}.av-lesson{min-width:160px;flex:0 0 160px;padding:10px}.av-class-head h2{font-size:20px}.av-tabs{gap:6px}.av-tabs button{font-size:12px;padding:8px 10px}.av-unit-head{margin-bottom:16px}.av-simple-tools{margin-top:14px}.av-clean{padding:8px 0}.av-class-main{padding:14px}.av-board-area{height:270px}.av-nav-toggle{width:100%;justify-content:center}}
.av-clean.av-student .class-presentation-stage{height:auto;max-height:none}.av-clean.av-student{position:fixed;inset:0;z-index:1400;max-width:none;background:#f7f7fb;padding:20px;overflow:auto}.av-clean.av-student .av-class-main{max-width:1500px;width:100%;margin:auto}
/* Cap the slide's height in the default (non-presenting) view so Previous/Next never fall below the fold. */
.av-clean:not(.av-student) .class-presentation-stage{aspect-ratio:auto;height:clamp(220px,calc(100dvh - 440px),900px)}
.av-clean:not(.av-student) .class-presentation-stage img{height:100%;min-height:0}
/* The workbook page is presented across the width, not squeezed whole into the height: a portrait
   page fitted to a landscape window ends up unreadably small. The page fills the stage's width and
   the stage becomes a window onto it that the teacher drags through, one exercise at a time, with
   the zoom buttons for a closer look. The surface can be height:auto because Aventura hides the
   raster canvas below; left visible, its height:100% falls back to its own intrinsic ratio and
   grows into a square that pushes the page down. */
.av-clean .media-image-layout{grid-template-rows:auto minmax(0,1fr) auto;gap:0}
.av-clean .media-image-layout>.presentation-ink-toolbar{grid-row:1}
.av-clean .media-image-content{grid-row:2;display:grid}
.av-clean .media-image-toolrail{grid-row:3}
.av-clean .media-image-stage{display:block;aspect-ratio:auto;width:100%;max-width:none;height:clamp(320px,calc(100dvh - 430px),1400px);min-height:0;max-height:none;background:white;overscroll-behavior:contain;cursor:grab}
.av-clean .media-image-stage.is-panning{cursor:grabbing}
.av-clean .media-image-zoom-surface{height:auto;min-height:0;padding:0}
.av-clean [data-media-image]{display:block;width:100%;height:auto;min-height:0;max-height:none;object-fit:contain}
/* The class reuses its level's conversation scenario: same stage, same pen, audio underneath. */
.av-conversation{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px}
.av-conversation>.av-page-nav{width:100%;margin-top:0}
.av-conversation-prompt{width:100%;margin:0;font-size:13px;color:#726880}
.av-conversation audio{flex:1 1 260px;min-width:0;height:40px}
.av-conversation audio[hidden]{display:none}
.av-conversation .button{font-size:12px}
/* Aventura annotates with the slide's SVG ink, so the shared raster canvas stays out of the way. */
.av-clean .media-image-stage canvas{display:none}
/* Zooming widens the surface further; the ink layer is inside it, so marks stay on the page. */
.presentation-ink-zoom{display:flex;align-items:center;gap:4px}
.presentation-ink-zoom button{min-width:38px;font-variant-numeric:tabular-nums}
.av-clean.av-student .media-image-stage{height:min(88dvh,1400px)}
/* Match the compact classroom layout shared by Cebollitas, Patatas and Tortillas. */
.av-clean .av-class-main{padding:0;border-radius:18px;overflow:visible}.av-class-head{padding:18px 22px;border-bottom:1px solid var(--av-line);align-items:center;flex-wrap:wrap}.av-class-head small{font-size:11px;letter-spacing:.1em;color:#726880}.av-class-head h2{margin:5px 0}.av-class-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.av-class-actions .button{min-height:44px;border-radius:12px;box-shadow:none}.av-clean .av-tabs{padding:12px 22px;margin:0;border-bottom:1px solid var(--av-line)}.av-clean .av-tabs button{border-radius:10px;min-height:44px;box-shadow:none}.av-material{padding:18px 22px}.av-clean .class-presentation-controls{padding:12px;background:#faf9fd;border-top:1px solid var(--av-line)}.av-clean .class-presentation-controls .button{border-radius:12px;box-shadow:none}.av-clean .av-more{margin:0;padding:15px 22px}.av-class-main>.assignment-panel{margin:18px 22px}.av-class-main>.av-status{padding:0 22px}.av-workbook-actions{width:100%;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.av-workbook-actions h3{width:100%;margin:0;font-size:14px}.av-workbook-actions>p{width:100%;font-size:12px;margin:0;color:#726880}.av-workbook-actions>.assignment-panel{width:100%}.av-coach{width:100%}.av-coach h3{margin:0}.av-board-library summary{cursor:pointer;font-weight:700;padding:10px 0}.av-board-art-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.av-board-art-grid button{padding:5px!important;min-width:0}.av-board-art-grid img{width:100%;height:85px;object-fit:contain}.av-student .av-class-actions>[data-assignment-open],.av-student .av-workbook-actions,.av-student .av-class-main>.assignment-panel{display:none!important}.av-student .av-class-head{margin:0}.av-clean dialog{color:#352541}.av-clean .media-controls [data-media-tab="module"]{display:none}
@media(max-width:700px){.av-clean .av-class-head,.av-clean .av-tabs,.av-material{padding:12px}.av-class-actions .button{font-size:12px;padding:10px}.av-clean .av-class-head{gap:12px}}
/* Keep the pilot's four existing ECRIF image controls available. */
.av-clean[data-av-level="aventura-2"] .av-more [data-ecrif-media-card]{display:inline-flex}

.av-clean [data-av-workbook-assignment]{display:flex;gap:10px;flex-wrap:wrap}.av-clean [data-av-workbook-assignment]>.assignment-panel{width:100%}

/* One on-demand resource frame shared by the header and the game list. */
.av-resources{--av-line:#ded5ff;width:min(1200px,96vw);max-width:96vw;height:min(850px,94dvh);max-height:94dvh;padding:0;border:1px solid var(--av-line);border-radius:20px;background:#fffdf8;overflow:hidden}
.av-resources[open]{display:flex;flex-direction:column}.av-resources::backdrop{background:#241539a6}.av-resources>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid var(--av-line)}.av-resources h2{font-size:20px;margin:0}.av-resource-layout{display:grid;grid-template-columns:205px minmax(0,1fr);min-height:0;flex:1}.av-resource-layout nav{display:flex;flex-direction:column;gap:8px;padding:16px;background:#f4eff9;overflow:auto}.av-resource-layout nav button{flex-shrink:0;font-size:13px;line-height:1.35;min-height:44px;border:1px solid #d2bce9;border-radius:11px;background:white;color:#382055;padding:10px 12px;text-align:left;font-weight:800}.av-resource-layout nav button[aria-pressed=true]{background:#5a3485;color:#fff}.av-resource-layout section{padding:18px;min-width:0;overflow:auto}.av-resource-layout h3{margin:0 0 12px;font-size:17px}.av-resource-actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}.av-resource-layout iframe{display:block;width:100%;height:min(58dvh,580px);min-height:300px;border:1px solid #ddd;border-radius:12px;background:#fff}.av-resource-project .av-resource-layout{grid-template-columns:1fr}.av-resource-project nav,.av-resource-project .av-resource-note,.av-resource-project .av-resource-actions a{display:none}.av-student [data-av-resources-open]{display:none!important}.av-resources :focus-visible{outline:3px solid #582bc7;outline-offset:2px}
@media(max-width:700px){.av-resource-layout{grid-template-columns:1fr;grid-template-rows:max-content auto;overflow:auto}.av-resource-layout nav{flex-direction:row;overflow:auto;max-height:110px;flex-shrink:0}.av-resource-layout nav button{min-width:150px}.av-resource-layout section{overflow:visible}.av-resources>header{padding:12px}.av-resources h2{font-size:17px}.av-resource-layout iframe{min-height:320px;height:55dvh}}

.av-resources .button{box-shadow:none;border-radius:11px;font-size:13px;min-height:44px}

/* Aventura 1: complementary guided work inside the existing class tabs. */
.av-practice-switch{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.av-practice-switch button{border:1px solid #ded5ff;border-radius:12px;background:#fff;color:#2b1287;font:800 13px Nunito,Inter,system-ui,sans-serif;padding:11px 15px;cursor:pointer}
.av-practice-switch button[aria-pressed=true]{background:#95f482;border-color:#95f482}
.av-practice-switch a{margin-left:auto;color:#2b1287;font-size:12px;font-weight:800;text-decoration:none}
.av-practice iframe{display:block;width:100%;height:800px;border:0;background:#fff}
.av-review-card{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px;background:#fff;border:1px solid #ded5ff;border-radius:20px;margin-top:24px}
.av-review-card h2{margin:10px 0 8px}.av-review-card p{margin:6px 0;color:#726880}
.av-review-badge{display:inline-block;background:#eeeaff;color:#2b1287;border-radius:10px;padding:5px 9px;font-size:12px;font-weight:800}
.av-review-summary{font-size:13px}.av-review-page .av-practice{background:#fff;padding:20px;border:1px solid #ded5ff;border-radius:20px}
@media(max-width:650px){.av-review-card{align-items:flex-start;flex-direction:column}.av-practice-switch a{margin-left:0;width:100%}.av-review-page .av-practice{padding:14px}}
