/* Fredoka variable: fuente libre alojada en nuestra propia web, sin servicios externos. */
@font-face {
  font-family: "Brincurio Rounded";
  src: url("fuentes/fredoka-variable.ttf") format("truetype");
  font-weight: 300 700;
  font-stretch: 75% 125%;
  font-style: normal;
  font-display: swap;
}

:root{font-family:ui-rounded,"Trebuchet MS","Segoe UI",sans-serif;color:#fff;font-synthesis:none;--gold:#ffdb37;--cyan:#41eaff;--frame-top:#1247be;--frame-bottom:#103798;--dialog-bg:#fff;--dialog-ink:#142856;--dialog-muted:#51668a;--accent:#61eeff;color-scheme:light}
*{box-sizing:border-box}body{margin:0;width:100%;height:100vh;height:100dvh;padding:10px;background:#dcecff;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid #fff08a;outline-offset:4px}[hidden]{display:none!important}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;background:var(--gold);color:#10214f;padding:13px;border-radius:12px;font-weight:900}.skip-link:focus{top:15px}
body.dark{background:#030b21;--frame-top:#0b2c78;--frame-bottom:#061b54;--dialog-bg:#112653;--dialog-ink:#f1f6ff;--dialog-muted:#b9c9e7;color-scheme:dark}body[data-theme=shop]{--accent:#ffa6d3}body[data-theme=health]{--accent:#79f0c5}body[data-theme=bubbles]{--accent:#baa3ff}
.marquee{height:100%;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;border:3px solid #287df5;border-radius:30px;background:radial-gradient(ellipse at 48% 0,#6d9bff44,transparent 48%),linear-gradient(155deg,var(--frame-top),var(--frame-bottom));box-shadow:inset 0 0 0 3px #449fff33,inset 0 0 25px #102c8b,0 4px 20px #07184130;overflow:hidden;position:relative;isolation:isolate}.frame-header{border-bottom:2px solid #3786ef;z-index:2}.frame-heading{display:grid;grid-template-columns:minmax(190px,1fr) minmax(0,2.1fr) minmax(110px,1fr);align-items:center;gap:14px;padding:13px 21px 14px;min-height:89px}.frame-brand{display:flex;align-items:center;gap:15px;width:fit-content}.back-square{width:48px;height:45px;display:grid;place-items:center;flex:none;color:#10285e;background:linear-gradient(#ffe66a,#ffd32c);border:1px solid #fff3ad;border-radius:15px;box-shadow:0 3px 0 #a1781e}.frame-icon{width:36px;height:36px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}.back-square .frame-icon{width:25px;height:25px;stroke-width:3}.brand-word{position:relative;color:#fff;font-size:clamp(23px,2.3vw,35px);font-weight:1000;letter-spacing:-1.4px;white-space:nowrap;text-shadow:0 3px 0 #052464}.brand-word>span{color:var(--gold)}.brand-word i{position:absolute;bottom:-6px;right:2px;width:56%;height:4px;border-radius:50%;background:var(--gold);transform:rotate(-5deg)}.frame-title{text-align:center;min-width:0}.frame-title h1{font-size:clamp(24px,2.7vw,42px);line-height:1.04;letter-spacing:-.6px;font-weight:1000;margin:0;text-transform:uppercase;text-shadow:0 3px 0 #06235c}.frame-title>p{display:inline-block;font-size:clamp(11px,1vw,14px);font-weight:900;line-height:1.25;margin:8px 0 0;background:#67e6ff;color:#062858;border:1px solid #c0f4ff;border-radius:25px;padding:4px 14px;max-width:100%}.frame-actions{display:flex;justify-content:flex-end;gap:11px}.frame-button{width:45px;height:45px;flex:none;display:grid;place-items:center;border:2px solid #70dafa;background:#123983;color:#fff;border-radius:14px;box-shadow:0 0 9px #42d3fc20}.frame-button .frame-icon{width:25px;height:25px;stroke-width:2.4}.frame-button:hover{background:#1d58ba;box-shadow:0 0 13px #42d3fc40}.mobile-brand{display:none}.compact-tools{display:none}
.frame-body{display:grid;grid-template-columns:clamp(145px,13.4vw,218px) minmax(0,1fr) clamp(150px,14vw,225px);gap:15px;padding:17px 16px 14px;min-height:0;min-width:0}.side-panel{min-width:0;min-height:0;display:flex;align-items:center;flex-direction:column;padding:3px 0 0;text-align:center;color:#fff;overflow:auto;scrollbar-width:thin;scrollbar-color:#4396e9 transparent}.panel-title{display:block;flex:none;background:linear-gradient(#ffe76c,#ffd334);color:#08255c;border:1px solid #fff3a4;border-radius:30px;font-size:clamp(14px,1.45vw,22px);font-weight:1000;line-height:1.2;text-transform:uppercase;letter-spacing:-.3px;padding:12px 9px;width:100%;margin:0 0 14px;box-shadow:0 3px 0 #b88b2140}.control-items,.learning-items{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;justify-content:space-evenly;width:100%;flex:1;min-height:260px}.control-items>li,.learning-items>li{display:flex;align-items:center;flex-direction:column;padding:15px 6px;gap:8px;position:relative}.control-items>li+li:before,.learning-items>li+li:before{content:"";height:2px;position:absolute;top:0;left:12%;right:12%;background:linear-gradient(90deg,transparent,#49b4ff9c,transparent)}.control-items .frame-icon{width:45px;height:45px;stroke-width:1.8;filter:drop-shadow(0 2px 0 #051c6333)}.control-items strong{font-size:clamp(14px,1.4vw,21px);line-height:1.23;max-width:100%;font-weight:950}.control-items small{color:#c6e6ff;font-size:clamp(10px,.9vw,13px);line-height:1.35}.touch-hint{display:none}.learning-items .frame-icon{color:var(--gold);width:42px;height:42px;stroke-width:1.9}.learning-items>li>span{font-size:clamp(14px,1.4vw,21px);line-height:1.28;font-weight:900;max-width:100%}.panel-foot{display:flex;align-items:center;justify-content:center;gap:8px;flex:none;min-height:39px;width:95%;background:#62defb;border:1px solid #c4f8ff;border-radius:24px;color:#092b66;padding:8px;font-size:clamp(11px,1vw,14px);font-weight:950;margin-top:10px}.panel-foot:hover{background:#a0efff}.subject-foot{background:var(--accent);border-color:#ffffff99;text-transform:uppercase;letter-spacing:.2px}.planned-label{margin:0;color:#d2e4ff;font-size:11px;font-weight:850;line-height:1.3}
.screen-column{display:flex;flex-direction:column;min-width:0;min-height:0;position:relative}.game-stage{position:relative;flex:1;min-width:0;min-height:0;border:3px solid var(--cyan);border-radius:23px;overflow:hidden;background:#06132d;box-shadow:0 0 0 3px #1d75c9,0 0 0 5px #084785,0 0 18px #39daff66;isolation:isolate}.frame-host,.game-frame{width:100%;height:100%;display:block;border:0}.game-frame{background:#06132d}.frame-host{position:absolute;inset:0}.game-loading{position:absolute;inset:0;z-index:2;background:radial-gradient(ellipse at 50% 30%,#173b7d,#06132d 85%);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:17px;padding:24px;text-align:center}.game-loading strong{font-size:18px;font-weight:850}.loading-bubble{height:33px;width:33px;border:3px solid #55dfff;border-right-color:transparent;border-radius:50%;animation:loading-spin 1s linear infinite}.load-failed{position:absolute;inset:0;z-index:3;background:#0a1c42;display:flex;align-items:center;justify-content:center;gap:18px;flex-direction:column;padding:25px;text-align:center}.load-failed strong{font-size:22px}.load-failed button{border:0;padding:13px 21px;border-radius:13px;background:var(--gold);color:#08255c;font-weight:950;font-size:17px}.load-failed a{font-weight:800;font-size:14px;text-decoration:underline}.cabinet-notice{position:absolute;bottom:12px;left:12px;right:12px;z-index:5;max-width:640px;margin:0 auto;border:1px solid #ffe478;border-radius:13px;background:#102b5df5;color:#fff4bf;padding:10px 13px;font-size:12px;line-height:1.5;text-align:center;box-shadow:0 3px 16px #0003}.no-script{position:absolute;inset:0;z-index:3;display:grid;align-content:center;gap:10px;text-align:center;padding:30px;background:#0a1c42;color:#fff}.no-script a{text-decoration:underline}
.frame-footer{min-height:54px;display:grid;grid-template-columns:minmax(120px,1fr) minmax(0,3fr) minmax(100px,1fr);gap:13px;align-items:center;padding:9px 22px 11px;border-top:2px solid #438ef6;background:#05276e40;position:relative;z-index:2}.profile-pill{display:flex;align-items:center;gap:7px;max-width:190px;width:fit-content;min-height:30px;border-radius:30px;padding:3px 10px 3px 5px;font-size:11px;font-weight:850;background:#ffffff10;border:1px solid #ffffff30}.profile-pill span:first-child{font-size:20px;line-height:1}.profile-pill span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-pill:hover{background:#ffffff25}.frame-caption{font-size:clamp(13px,1.4vw,21px);font-weight:900;line-height:1.25;margin:0;text-align:center;text-wrap:balance}.direct-link{font-size:12px;font-weight:850;color:#e1edff;justify-self:end;white-space:nowrap}.direct-link:hover{text-decoration:underline}
.coming-soon{position:absolute;inset:0;background:#76d8f5}.coming-soon>img{width:100%;height:100%;display:block;object-fit:contain;background:linear-gradient(#3ac5ef,#a6e9ed)}.coming-badge{position:absolute;top:16px;right:16px;border:1px solid #fff9dc;background:#ffe370;color:#353075;border-radius:30px;padding:9px 16px;font-size:13px;font-weight:1000;box-shadow:0 3px 8px #3f438225}.coming-message{position:absolute;left:0;right:0;bottom:0;padding:70px 20px 20px;text-align:center;background:linear-gradient(transparent,#17366bd9 45%,#12285ef2);color:#fff}.coming-message h2{font-size:clamp(22px,2.3vw,35px);margin:0 0 6px;font-weight:1000}.coming-message p{font-size:14px;line-height:1.5;margin:0 0 14px}.coming-message a{display:inline-flex;align-items:center;gap:9px;background:var(--gold);color:#243268;border:1px solid #fff1a2;border-radius:14px;padding:12px 20px;font-size:14px;font-weight:950;box-shadow:0 3px 0 #8b6b2b}.coming-message a .frame-icon{height:18px;width:18px;transform:rotate(180deg)}
.frame-dialog{background:var(--dialog-bg);color:var(--dialog-ink);border:2px solid #76c9ff;border-radius:24px;padding:25px;width:min(610px,calc(100vw - 28px));max-height:calc(100dvh - 35px);overflow:auto;box-shadow:0 20px 80px #0006;line-height:1.6}.frame-dialog::backdrop{background:#020c2bd6;backdrop-filter:blur(5px)}.dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.dialog-head small{display:block;font-size:11px;font-weight:900;color:var(--dialog-muted)}.dialog-head h2{font-size:27px;line-height:1.2;letter-spacing:-.7px;margin:4px 0 0;font-weight:1000}.dialog-head button{display:grid;place-items:center;width:37px;height:37px;flex:none;border:1px solid #8cafd64d;background:#73bcf024;color:var(--dialog-ink);border-radius:11px;font-size:26px;font-weight:850}.frame-dialog>p,.frame-dialog li{font-size:15px;color:var(--dialog-muted)}.frame-dialog ol,.frame-dialog ul{padding-left:24px}.frame-dialog li+li{margin-top:9px}.frame-dialog h3{font-size:16px;margin:18px 0 4px;font-weight:950}.frame-dialog h3+p{margin-top:0}.frame-dialog .dialog-tip,.frame-dialog .dialog-save{padding:13px 15px;background:#77bdf018;border-radius:13px;font-size:13px;color:var(--dialog-ink);font-weight:700}.frame-dialog .dialog-status{padding:10px 13px;background:#ffe462;color:#403767;border-radius:11px;font-size:12px;font-weight:900}.frame-dialog .dialog-learning li{color:var(--dialog-ink);font-weight:850}.frame-dialog a:focus-visible,.frame-dialog button:focus-visible{outline-color:#286cdb}
.marquee:fullscreen,.marquee:-webkit-full-screen{width:100%;height:100%;height:100dvh;border-radius:0;border-width:0}.marquee.is-expanded{position:fixed;inset:0;width:100%;height:100%;height:100dvh;border-radius:0;border:0;z-index:50}.marquee.is-expanded .frame-body{grid-template-columns:minmax(0,1fr);padding:0;gap:0}.marquee.is-expanded .side-panel,.marquee.is-expanded .frame-footer,.marquee.is-expanded .compact-tools{display:none}.marquee.is-expanded .frame-heading{min-height:47px;padding:4px 10px;grid-template-columns:50px 1fr 80px;gap:5px}.marquee.is-expanded .frame-brand{gap:0}.marquee.is-expanded .brand-word,.marquee.is-expanded .frame-title>p{display:none}.marquee.is-expanded .back-square{width:35px;height:33px;border-radius:10px}.marquee.is-expanded .frame-title h1{font-size:17px}.marquee.is-expanded .frame-button{height:34px;width:34px;border-radius:10px}.marquee.is-expanded .frame-button .frame-icon{height:20px;width:20px}.marquee.is-expanded .frame-actions{gap:6px}.marquee.is-expanded .game-stage{border:0;border-radius:0;box-shadow:none}.marquee.is-expanded .frame-header{border-bottom:1px solid #3865b3}
body.large-text .control-items strong,body.large-text .learning-items>li>span{font-size:22px}body.large-text .control-items small{font-size:14px}body.large-text .frame-dialog>p,body.large-text .frame-dialog li{font-size:19px}body.less-motion *,body.less-motion *:before{animation:none!important;transition:none!important}@keyframes loading-spin{to{transform:rotate(360deg)}}
@media(max-width:1150px){.frame-heading{padding:12px 16px;grid-template-columns:minmax(160px,1fr) minmax(0,2.5fr) minmax(95px,1fr)}.frame-brand{gap:10px}.brand-word{font-size:26px}.back-square{width:41px;height:41px;border-radius:12px}.frame-actions{gap:8px}.frame-button{width:40px;height:40px;border-radius:12px}.frame-title h1{font-size:28px}.frame-body{gap:13px;padding:15px 13px 12px}.panel-title{font-size:15px}.control-items>li,.learning-items>li{padding:11px 4px}.control-items .frame-icon,.learning-items .frame-icon{width:35px;height:35px}.panel-foot{font-size:11px}.frame-caption{font-size:15px}.frame-footer{padding:8px 16px;min-height:48px}.control-items strong,.learning-items>li>span{font-size:16px}}
@media(max-width:980px),(max-height:560px){body{padding:7px}.marquee{border-radius:23px}.frame-body{grid-template-columns:minmax(0,1fr);gap:0;padding:10px 11px}.side-panel{display:none}.compact-tools{display:flex;justify-content:center;gap:12px;padding:0 14px 9px}.compact-tools button{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:#ffffff12;border:1px solid #8ecaff70;border-radius:25px;color:#fff;font-size:12px;font-weight:850;padding:7px 14px;min-height:33px}.compact-tools button .frame-icon{width:18px;height:18px;color:var(--gold)}.compact-tools button:hover{background:#ffffff25}.frame-heading{min-height:74px;padding:10px 14px;grid-template-columns:minmax(145px,1fr) minmax(0,2.5fr) minmax(90px,1fr)}.frame-title h1{font-size:27px}.frame-title>p{margin-top:6px;padding:3px 11px;font-size:11px}.game-stage{border-radius:18px;border-width:2px;box-shadow:0 0 0 2px #1d75c9,0 0 10px #39daff55}.frame-caption{font-size:13px}.frame-footer{min-height:43px;gap:10px;padding:6px 14px}.profile-pill{font-size:10px;min-height:28px}.profile-pill span:first-child{font-size:18px}.direct-link{font-size:11px}}
@media(max-width:620px){body{padding:5px}.marquee{border-radius:20px;border-width:2px}.frame-heading{grid-template-columns:35px minmax(0,1fr) 75px;gap:8px;padding:10px 10px 8px;min-height:73px}.frame-brand{gap:0}.brand-word{display:none}.back-square{width:34px;height:34px;border-radius:11px;box-shadow:0 2px 0 #a1781e}.back-square .frame-icon{width:21px;height:21px}.frame-actions{gap:6px}.frame-button{width:34px;height:34px;border-radius:11px;border-width:1px}.frame-button .frame-icon{width:21px;height:21px}.frame-title h1{font-size:clamp(17px,5vw,25px);letter-spacing:-.5px}.frame-title>p{font-size:9px;line-height:1.3;padding:3px 7px;border:0;background:transparent;color:#c3e6ff;margin-top:3px}.mobile-brand{display:inline}.genre,.title-status{display:none}.compact-tools{gap:9px;padding:0 8px 8px}.compact-tools button{font-size:11px;padding:6px 11px;min-height:31px}.compact-tools button .frame-icon{width:16px;height:16px}.frame-body{padding:8px}.frame-footer{display:flex;justify-content:space-between;min-height:40px;padding:5px 10px;gap:8px}.frame-caption{display:none}.profile-pill{max-width:180px}.game-stage{border-radius:13px}.cabinet-notice{font-size:11px;left:6px;right:6px;bottom:7px;padding:9px}.coming-badge{top:11px;right:10px;padding:7px 10px;font-size:11px}.coming-message{padding:60px 12px 18px}.coming-message h2{font-size:23px}.coming-message p{font-size:12px}.coming-message a{font-size:12px;padding:11px 15px}.frame-dialog{padding:20px;border-radius:21px}.dialog-head h2{font-size:24px}.frame-dialog>p,.frame-dialog li{font-size:14px}}
@media(max-height:560px) and (orientation:landscape){body{padding:4px}.marquee{border-radius:18px;border-width:2px}.frame-header{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:4px 8px}.frame-heading{flex:1;grid-template-columns:40px minmax(0,1fr) 76px;min-height:40px;gap:7px;padding:0}.brand-word{display:none}.back-square{height:33px;width:33px;border-radius:10px}.frame-title h1{font-size:19px}.frame-title>p{font-size:9px;margin-top:2px;padding:0;background:none;border:0;color:#c3e6ff}.genre{display:none}.mobile-brand{display:inline}.frame-actions{gap:6px}.frame-button{height:33px;width:33px;border-width:1px;border-radius:10px}.frame-button .frame-icon{height:20px;width:20px}.compact-tools{padding:0;gap:6px;flex:none}.compact-tools button{font-size:10px;padding:6px 8px;min-height:31px;gap:4px}.compact-tools button .frame-icon{height:15px;width:15px}.frame-body{padding:7px 8px}.frame-footer{min-height:31px;padding:3px 10px;display:flex;justify-content:space-between}.frame-caption{display:none}.profile-pill{font-size:9px;min-height:24px;padding:1px 7px 1px 3px}.profile-pill span:first-child{font-size:17px}.direct-link{font-size:10px}.coming-message{padding:25px 12px 12px}.coming-message h2{font-size:23px}.coming-message p{font-size:11px;margin-bottom:9px}.coming-message a{font-size:11px;padding:8px 12px}.coming-badge{top:9px;right:10px;padding:6px 10px;font-size:10px}}
@media(max-width:600px) and (max-height:560px) and (orientation:landscape){.compact-tools button{font-size:0;gap:0;width:31px;padding:5px}.compact-tools button .frame-icon{width:18px;height:18px}.frame-title h1{font-size:16px}}
@media(hover:none),(max-width:620px){.keyboard-hint{display:none}.touch-hint{display:block}}@media(prefers-reduced-motion:reduce){*,*:before{animation:none!important;scroll-behavior:auto!important}}


body[data-theme=explore]{--accent:#9be9c7}

/* Marca Brincurio en todas las pantallas de juego. */
.frame-site-logo{display:block;width:clamp(128px,16vw,198px);height:52px;object-fit:contain;object-position:left center;flex:none}
@media(max-width:620px){.frame-site-logo{display:none}}


/* Identidad Brincurio: solo marcos y controles de la web. No modifica los juegos embebidos. */
:root { --font-play: "Brincurio Rounded", ui-rounded, "Trebuchet MS", sans-serif; }
:is(.frame-title h1, .panel-title, .control-items strong, .learning-items > li > span,
    .frame-caption, .dialog-head h2, .coming-message h2,
    .coming-badge, .game-loading strong) {
  font-family: var(--font-play);
  font-weight: 700;
  letter-spacing: -.01em;
  font-synthesis: none;
}
:is(.frame-title > p, .compact-tools button, .panel-foot, .profile-pill,
    .direct-link, .coming-message a, .frame-dialog h3, .frame-dialog button) {
  font-family: var(--font-play);
  font-weight: 600;
}
.frame-title h1 {
  font-size: clamp(22px, 2.5vw, 39px);
  line-height: 1.09;
  letter-spacing: 0;
  text-shadow: 0 3px 0 #06235c, 0 5px 13px #05183959;
}
.panel-title {
  text-transform: none;
  font-size: clamp(15px, 1.45vw, 22px);
  border-radius: 20px;
  background: linear-gradient(#ffed9f, #ffd64c);
}
.frame-title > p { letter-spacing: .005em; }
.panel-foot { font-size: clamp(11px, 1vw, 14px); }
.frame-site-logo { object-fit: contain; }
.frame-dialog h2 { letter-spacing: -.02em; }
@media (max-width: 620px) {
  .frame-title h1 { font-size: clamp(19px, 5vw, 28px); }
}

@media (min-width: 621px) and (min-height: 561px) {
  body.marquee-page:not(.dark) {
    color: #193d73;
    background: radial-gradient(ellipse at 14% 8%, #c9f0ff, transparent 45%), radial-gradient(ellipse at 85% 88%, #f0dcff, transparent 48%), linear-gradient(135deg, #ebfaff, #fff1d9);
  }
  .marquee-page:not(.dark) .marquee {
    border: 2px solid #fff;
    background: linear-gradient(155deg, #e5f7ff, #fcf8ef 62%, #f4edff);
    box-shadow: 0 3px 0 #b9dcec, 0 10px 30px #23578520;
  }
  .marquee-page:not(.dark) .frame-header {
    background: linear-gradient(100deg, #e6f8ff, #f6fcff);
    border-bottom: 1px solid #cee6f4;
  }
  .frame-heading { min-height: 88px; padding-block: 8px; grid-template-columns: minmax(0, 1fr) minmax(0, 1.45fr) minmax(90px, 1fr); }
  .frame-site-logo { width: clamp(100px, 20vw, 252px); max-width: calc(100% - 58px); height: auto; }
  .frame-brand { gap: 9px; width: 100%; }
  .frame-title h1 {
    font-family: "Brincurio Rounded", ui-rounded, sans-serif;
    font-size: clamp(25px, 3vw, 42px);
    font-weight: 650;
    letter-spacing: -.025em;
    text-transform: none;
  }
  .marquee-page:not(.dark) .frame-title h1 { text-shadow: none; }
  .marquee-page:not(.dark) .frame-title > p {
    margin-top: 5px;
    background: #e0f2ea;
    color: #245d4c;
    border-color: #c5e9d9;
  }
  .marquee-page:not(.dark) .frame-button,
  .marquee-page:not(.dark) .back-square {
    background: #fff;
    border: 1px solid #c6e1f2;
    box-shadow: 0 2px 0 #cce4f2;
    color: #245585;
  }
  .frame-body { padding: 12px; }
  .marquee-page:not(.dark) .side-panel {
    color: #193d73;
    background: #fff;
    border: 1px solid #d9eaf5;
    border-radius: 20px;
    padding: 9px 8px;
  }
  .panel-title { text-transform: none; }
  .marquee-page:not(.dark) .panel-title {
    background: #e9f5ff;
    color: #224e80;
    border: 0;
    box-shadow: none;
  }
  .marquee-page:not(.dark) .learning-panel .panel-title { background: #e5f5eb; color: #255f4c; }
  .marquee-page:not(.dark) .control-items .frame-icon { color: #287cc0; filter: none; }
  .marquee-page:not(.dark) .learning-items .frame-icon { color: #258262; }
  .marquee-page:not(.dark) .control-items small { color: #435e7c; }
  .marquee-page:not(.dark) .panel-foot { background: #e9f5ff; border-color: #cfe6f7; }
  .marquee-page:not(.dark) .subject-foot { background: #e5f5eb; border-color: #cce9d9; }
  .marquee-page:not(.dark) .game-stage { border: 2px solid #fff; box-shadow: 0 0 0 1px #b9dceb, 0 4px 0 #c2e1ed; }
  .marquee-page:not(.dark) .frame-footer { min-height: 45px; background: #edf7fd; border-top: 1px solid #d4e9f5; }
  .marquee-page:not(.dark) .profile-pill { background: #fff; border-color: #cfe3f2; }
  .marquee-page:not(.dark) .direct-link { color: #245585; }
  .marquee-page:not(.dark) :is(button,a,[tabindex]):focus-visible { outline-color: #245585; }
}
@media (min-width: 981px) and (min-height: 561px) {
  .frame-body { gap: 12px; }
}
.game-stage:has(.game-launch:not([hidden])) {
  background: radial-gradient(ellipse at 50% 20%, #3c6371, #192e3b 76%);
}
.game-launch {
  position:absolute; inset:0; z-index:1; display:grid;
  grid-template-rows:minmax(0,1fr) auto;
  justify-items:center; gap:14px; padding:12px 12px 20px;
}
.game-launch img {
  width:100%; height:100%; min-height:0; object-fit:contain;
  filter:drop-shadow(0 8px 16px #0a1d2d66);
}
.game-launch a {
  display:grid; place-items:center;
  min-width:min(240px,100%); min-height:64px; padding:10px 32px;
  border-radius:999px; background:linear-gradient(#ffd972,#ffbc43);
  color:#24304c; border:2px solid #fff5cd; box-shadow:0 4px 0 #a65f25;
  font:650 clamp(24px,3vw,32px)/1 "Brincurio Rounded",sans-serif;
}
.game-launch a:hover { background:#ffe48a; }
.game-launch a:focus-visible { outline-color:#fff; }

.marquee-page:not(.dark) .compact-tools button {
  color:#245585; background:#edf7ff; border-color:#c6e1f2;
}
.marquee-page:not(.dark) .compact-tools button .frame-icon { color:#287cc0; }
.game-loading, .load-failed { color:#fff; }
.marquee-page:not(.dark) .load-failed a { color:#fff; }
@media (max-height: 560px) {
  .game-launch { gap:6px; padding:8px; }
  .game-launch a { min-height:42px; font-size:23px; }
}
.game-stage:fullscreen {
  width:100%; height:100%; border:0; border-radius:0; box-shadow:none;
}
.marquee.is-expanded .frame-site-logo { display:none; }
.marquee.is-expanded .frame-body { padding:0; gap:0; }
body[data-game="brujula-perdida"] .frame-body {
  grid-template-columns:minmax(0,1fr);
}
body[data-game="brujula-perdida"] .compact-tools {
  display:flex; justify-content:center; gap:8px; padding:0 8px 8px;
}
body[data-game="brujula-perdida"] .compact-tools button {
  display:inline-flex; align-items:center; gap:6px;
  padding:5px 12px; border:1px solid #9ac7e4; border-radius:16px;
  font:600 13px var(--font-play);
}
body[data-game="brujula-perdida"] .compact-tools .frame-icon { width:16px; height:16px; }
body[data-game="brujula-perdida"] .is-expanded .compact-tools { display:none; }
