.aula-save-status{font-size:.875rem;color:var(--muted);margin:-4px 0 18px;min-height:24px}
.aula-setup-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:20px;margin-bottom:22px}
.session-panel .heading-row{margin:0 0 14px}.session-panel h2,.adventure-panel h2{font-size:1.3rem}
.session-list{list-style:none;padding:0;margin:12px 0 18px;display:grid;gap:8px}
.session-list li{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#faf2f6;border-radius:12px;padding:8px 10px}
.session-list li>span{font-size:.9rem}.session-list li b{color:var(--rose);margin-right:7px}
.session-list li>div{display:flex;flex-shrink:0;gap:1px}.session-list .small{padding:7px 8px;min-height:36px}
.session-controls{display:flex;align-items:end;flex-wrap:wrap;gap:14px;margin-top:18px;justify-content:space-between}
.aula-level{display:flex;align-items:center;gap:8px;font-size:.9rem;font-weight:600}
.aula-level select,.story-picker select{min-height:43px;padding:9px 12px;background:white;border:1px solid #c7acb9;border-radius:10px;color:var(--dark);font:600 .95rem 'DM Sans',sans-serif;max-width:100%}
.adventure-panel{background:#fff5e5;border-color:#efdab5}.adventure-panel p{font-size:.95rem;color:#695348;margin:12px 0 18px}
.adventure-options{display:flex;flex-wrap:wrap;gap:10px}.adventure-options button{font-size:.95rem;flex:1;min-width:150px}
.adventure-current{margin-top:20px}.adventure-current>.button,.adventure-current>button{margin-top:12px}
.pdi-card-tools{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;margin-top:14px;border-top:1px solid var(--line);padding-top:10px}
.pdi-card-tools button[aria-pressed=true]{color:var(--rose);background:#f8e3ed}.pdi-card-tools button:first-child{font-size:1.4rem}
.pdi-shortcuts{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}.pdi-shortcuts>*{flex:1;min-width:180px}
.pdi-assembly-hub{margin-bottom:22px;background:linear-gradient(135deg,#fff7fb,#fff4df);border:2px solid #e5b8cb}.pdi-assembly-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.pdi-assembly-heading h2{font-size:2rem;margin:4px 0}.pdi-assembly-heading p{margin:0;color:var(--muted)}.pdi-assembly-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.pdi-assembly-steps button{width:100%;min-height:96px;display:grid;grid-template-columns:34px 44px minmax(0,1fr);align-items:center;text-align:left;gap:8px;background:white;color:var(--dark);border:1px solid #dfc3cf}.pdi-assembly-steps button b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--rose);color:white}.pdi-assembly-steps button span{font-size:1.8rem;text-align:center}.pdi-assembly-extras{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:18px}.pdi-assembly-extras>strong{width:100%}.pdi-category{margin:26px 0 38px}.pdi-category>.heading-row{margin-bottom:12px}
.aula-projection-controls{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;padding:10px 18px}
.voice-settings{font-size:.9rem;text-align:left;border:1px solid #dbc2ce;border-radius:12px;background:white;max-width:100%}
.voice-settings>summary{min-height:44px;padding:11px 14px;cursor:pointer;color:var(--rose);font-weight:700}
.voice-settings[open]{flex-basis:100%;max-width:560px}
.voice-panel{display:grid;grid-template-columns:1fr 1.4fr;gap:14px;padding:4px 16px 16px}
.voice-panel label{display:grid;gap:6px;min-width:0;font-weight:600}
.voice-panel select{width:100%;min-width:0;min-height:44px;padding:9px;background:white;border:1px solid #c7acb9;border-radius:9px;color:var(--dark);font:inherit}
.voice-panel>button{justify-self:start;align-self:start}.voice-panel .hint{font-size:.8rem;line-height:1.5;margin:0}
.pdi-dino-presentation{margin:0 0 20px;width:min(780px,100%);display:grid;justify-items:center;gap:18px}
.pdi-dino-presentation>img{width:min(580px,80vw);height:clamp(240px,44vh,510px);object-fit:contain;background:white;border-radius:24px}
.pdi-dino-presentation>figcaption{font-size:clamp(1.2rem,2.1vw,1.65rem);line-height:1.5;max-width:740px}
.projection-main .dino-art-note{font-size:.875rem;margin:12px}
.projection-main[data-game="contar"] .game-stage img{width:140px;height:140px}
.projection-main[data-game="falta"] .game-stage img{width:clamp(120px,18vw,190px);height:clamp(120px,18vw,190px)}
.projection-main[data-game="clasificar"] .game-stage img{width:300px;height:270px}
.projection-main[data-level="1"] .memory-grid{grid-template-columns:repeat(2,minmax(0,1fr));width:min(620px,100%)}
.projection-main[data-level="1"] .memory-card img{height:170px}
.pdi-theme-section,.pdi-special-section{margin:38px 0}.pdi-project-showcase{border-radius:28px;padding:26px;margin:16px 0;overflow:hidden}.pdi-dino-showcase{background:linear-gradient(135deg,#edf7e9,#fff8dd);border:1px solid #bdd4b6}.pdi-kusama-showcase{background:linear-gradient(135deg,#fff0d1,#ffe9f4);border:1px solid #ecd3a5}.pdi-project-intro{display:flex;align-items:center;gap:22px;margin-bottom:22px}.pdi-project-intro>img{width:170px;height:150px;object-fit:contain}.pdi-project-intro h2{font-size:2rem;margin:4px 0 7px}.pdi-project-intro p{margin:0;max-width:720px}.pdi-kusama-dots{font-size:2.6rem;letter-spacing:8px;color:#d83072;background:#fff;border-radius:50%;padding:28px 16px;box-shadow:inset 0 0 0 7px #f3c136;white-space:nowrap}.pdi-theme-actions{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.pdi-theme-button{min-height:70px;padding:11px;font-size:.84rem;text-align:center;background:#fff;color:#285c42;border:2px solid #9fbea5}.pdi-kusama-showcase .pdi-theme-button{color:#8a2851;border-color:#e2a7bd}.pdi-theme-button:hover{background:#2d7045;color:#fff}.pdi-dino-resources{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:22px;padding-top:20px;border-top:1px dashed #aac0a4}.pdi-dino-resources>div>strong{font-size:.78rem;letter-spacing:.06em;color:#41694a}.pdi-dino-posters{display:flex;gap:10px;margin-top:8px}.pdi-dino-posters img{width:70px;height:95px;object-fit:cover;object-position:top;border-radius:8px;border:2px solid white;box-shadow:0 3px 10px #29453020}.pdi-special-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.pdi-special-card{display:grid;grid-template-columns:64px 1fr;gap:14px;align-items:start;padding:20px;border:1px solid var(--line);border-radius:20px;background:#fff}.pdi-special-card>span{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:#f8edf3;font-size:2.2rem}.pdi-special-card h3{margin:2px 0 5px;text-transform:uppercase}.pdi-special-card p{margin:0;color:var(--muted);font-size:.92rem}.pdi-special-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px}.pdi-special-actions .button,.pdi-special-actions button{min-height:50px;font-size:.78rem;flex:1 1 180px}
@media(max-width:600px){.voice-panel{grid-template-columns:1fr}.projection-main[data-game="contar"] .game-stage img{width:96px;height:96px}.projection-main[data-game="falta"] .game-stage img{width:100px;height:100px}.pdi-dino-presentation>img{width:min(420px,88vw);height:38vh;min-height:230px}}
.adventure-track{width:min(870px,94vw);margin:0 auto;padding:10px 18px;border:1px solid #e1cbaa;border-radius:16px;background:#fff5e5;display:flex;align-items:center;gap:16px;text-align:left}
.adventure-track>strong{font:800 .95rem/1.3 Nunito,sans-serif;max-width:185px;color:#75432d}.adventure-track>small{font-size:.8rem;color:#715741;white-space:nowrap}
.adventure-steps{display:flex;align-items:center;justify-content:center;gap:5px;flex:1;min-width:0}
.adventure-step{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;border:1px dashed #cbb89c;background:white;font-size:1.4rem;flex-shrink:0}
.adventure-step.done{border-style:solid;background:#f5d7e6;border-color:#d8a3ba}.adventure-step img{width:40px;height:40px;object-fit:contain}.nest-goal{font-size:1.8rem;display:flex;align-items:center}.nest-goal img{width:44px;height:44px;object-fit:contain}
.adventure-current .adventure-track{width:100%;padding:12px;flex-wrap:wrap;gap:10px}.adventure-current .adventure-track>strong{max-width:none;width:100%}
.piece-instruction{margin:-14px 0 18px!important;font-size:1rem!important;color:var(--muted)}
.piece-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;width:min(960px,100%);align-items:center;margin:16px 0 20px}
.drop-grid,.piece-tray{min-width:0}.puzzle-grid{display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr));gap:8px}
.pdi-slot,.pdi-piece{position:relative;display:grid;place-items:center;background:white;border:3px solid #cba8b9;border-radius:12px;padding:0;overflow:hidden;color:var(--rose);font:800 2rem Nunito,sans-serif;min-height:80px}
.puzzle-grid .pdi-slot,.puzzle-grid .pdi-piece{aspect-ratio:var(--piece-ratio,1);min-height:0;width:100%}
.pdi-slot{border-style:dashed;background:#f9eaf2}.pdi-slot.filled{border-style:solid;border-color:#7caa86;background:white;opacity:1}
.pdi-piece{touch-action:none;cursor:grab;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.pdi-piece.selected{outline:4px solid #ecc44c;outline-offset:2px;border-color:#9c365c}
.pdi-piece img{pointer-events:none}.puzzle-fragment{width:100%;height:100%;display:block;background-repeat:no-repeat;pointer-events:none}
.puzzle-model{width:min(960px,100%);font-size:.95rem;color:var(--muted);text-align:left}.puzzle-model summary{cursor:pointer;width:fit-content;padding:8px}.puzzle-model img{width:130px;height:130px;object-fit:contain;display:block;background:white;border-radius:12px}
.piece-tray:not(.puzzle-grid){display:flex;align-items:end;justify-content:center;gap:12px;flex-wrap:wrap}.piece-tray:not(.puzzle-grid) .pdi-piece{width:90px;height:120px}
.size-grid{display:flex;align-items:end;justify-content:center;gap:10px;flex-wrap:wrap}.size-grid .pdi-slot{width:78px;height:138px;align-items:end;padding:8px 0}
.size-piece{width:var(--piece-size)!important;height:var(--piece-size)!important;max-width:100%;object-fit:contain}.piece-tray:has(.size-piece) .pdi-piece{height:138px;align-items:end;padding-bottom:8px}
.fruit-piece{width:66px;height:66px;object-fit:contain}.fruit-basket{border:3px dashed #ba809e;border-radius:28px;min-height:200px;background:#fff1dc;color:#704727;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;gap:12px;width:100%;opacity:1}
.fruit-basket>span:first-child{font-size:4.5rem;line-height:1}.fruit-basket>strong{font:900 2.5rem Nunito,sans-serif}.basket-fruits{display:flex;flex-wrap:wrap;justify-content:center;gap:4px}.basket-fruits img{width:40px;height:40px;object-fit:contain}
.piece-ghost{position:fixed!important;pointer-events:none!important;z-index:100;opacity:.9;box-shadow:0 14px 40px #692a5544;transform:rotate(4deg);margin:0!important}
.story-picker{margin-bottom:14px}.story-picker label{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:center;font-size:1rem}
.story-scene{display:grid;grid-template-columns:220px minmax(0,1fr);align-items:center;gap:35px;width:min(960px,100%);text-align:left;background:white;border:1px solid #e3cdd7;border-radius:28px;padding:30px}
.story-art{width:100%;height:220px;object-fit:contain}.projection-main .story-scene h2{font-size:clamp(1.5rem,3vw,2.5rem);margin:8px 0 18px}.projection-main .story-scene p{font-size:clamp(1.1rem,2vw,1.4rem);line-height:1.65;margin:0}
.projection-main .story-scene .story-question{margin-top:18px;color:var(--rose);font-weight:700}.story-choices{display:flex;justify-content:center;flex-wrap:wrap;gap:18px;margin:24px 0 6px}.story-choices .choice{font-size:1.3rem;max-width:380px;display:flex;align-items:center;gap:16px}.story-choices .choice>span{font-size:2.6rem}
.surprise-box{display:flex;flex-direction:column;align-items:center;gap:20px;min-width:280px;padding:28px;border:2px dashed #dcb3c7;border-radius:30px;background:white;color:var(--rose)}
.surprise-box>span{font-size:clamp(7rem,18vw,12rem);line-height:1.2}.surprise-box>strong{font:800 1.4rem Nunito,sans-serif}.surprise-box:hover>span{animation:rosa-happy-bounce .7s ease-out}
.projection-main .surprise-prompt{font-size:clamp(1.35rem,3vw,2rem);line-height:1.6;max-width:850px;margin:0 0 28px}.surprise-answer{background:#f9e2ed;border-radius:18px;padding:20px 40px;color:var(--rose);font-weight:800}
.session-complete-list{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.custom-workshop{display:grid;grid-template-columns:240px minmax(0,1fr);align-items:start;gap:28px}.custom-controls{display:grid;gap:16px}.custom-controls .field{min-width:0}.custom-controls select{max-width:100%}.custom-controls .hint{font-size:.85rem;line-height:1.5}
.custom-preview-wrap{min-width:0}.print-preview-label{font-size:.8rem;letter-spacing:.05em;color:var(--muted);margin-bottom:12px}.custom-preview{display:grid;gap:24px}
@media(max-width:1050px){.aula-setup-grid{grid-template-columns:1fr}.story-scene{grid-template-columns:160px minmax(0,1fr);gap:24px}.story-art{height:180px}.custom-workshop{grid-template-columns:200px minmax(0,1fr)}}
@media(max-width:1050px){.pdi-theme-actions{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:780px){.pdi-assembly-heading{align-items:flex-start;flex-direction:column}.pdi-assembly-steps{grid-template-columns:1fr 1fr}.pdi-theme-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.pdi-special-grid{grid-template-columns:1fr}.pdi-dino-resources{align-items:flex-start;flex-direction:column}.piece-workspace{grid-template-columns:1fr;max-width:480px}.puzzle-grid{max-width:420px;margin:auto;width:100%}.story-scene{grid-template-columns:1fr;padding:24px;gap:10px}.story-art{height:130px;max-width:180px;margin:auto}.adventure-track{flex-wrap:wrap;justify-content:center;gap:8px}.adventure-track>strong{max-width:none;font-size:.9rem}.adventure-step{width:30px;height:30px;font-size:1.2rem}.adventure-step img{width:34px;height:34px}.adventure-track>small{width:100%;text-align:center}.custom-workshop{grid-template-columns:1fr}.custom-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.custom-controls .hint{grid-column:1/-1}}
@media(max-width:480px){.pdi-assembly-steps{grid-template-columns:1fr}.pdi-project-showcase{padding:18px}.pdi-project-intro{align-items:flex-start}.pdi-project-intro>img{width:100px;height:105px}.pdi-project-intro h2{font-size:1.55rem}.pdi-kusama-dots{font-size:1.3rem;padding:22px 8px;letter-spacing:3px}.pdi-theme-actions{grid-template-columns:1fr}.pdi-theme-button{min-height:60px}.pdi-special-card{grid-template-columns:52px 1fr;padding:16px}.pdi-special-card>span{width:48px;height:48px;font-size:1.8rem}.session-list li{flex-wrap:wrap}.session-list li>div{margin-left:auto}.custom-controls{grid-template-columns:1fr}.aula-projection-controls{gap:6px}.aula-projection-controls>.aula-level{font-size:.85rem}.piece-workspace{gap:22px}.piece-tray:not(.puzzle-grid) .pdi-piece{width:76px;height:90px}.size-grid .pdi-slot{width:70px}.story-choices .choice{width:100%;justify-content:center}.surprise-box{min-width:0;width:90%}.adventure-steps{width:100%;flex:auto}.story-picker select{max-width:90vw}}
@media(prefers-reduced-motion:reduce){.surprise-box:hover>span{animation:none}.piece-ghost{transform:none}}
.creator-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 22px}.creator-tabs button{justify-content:center;border:2px solid #d9c2cc;background:white;color:var(--rose)}.creator-tabs button.active{background:var(--rose);border-color:var(--rose);color:white;box-shadow:0 4px 12px #7f244728}.count-ten-note{display:grid;gap:3px;border:1px solid #e0bcca;border-radius:12px;padding:11px 13px;background:#fff7fa}.count-ten-note strong{color:var(--rose)}.count-ten-note span{font-size:.86rem;color:var(--muted)}
@media(max-width:560px){.creator-tabs{grid-template-columns:1fr}}
