/* ════════════════════════════════════════════════════════════════
   academia-home.css
   CSS de la página de Academia de Misiones (antes inline en <head>)
   ════════════════════════════════════════════════════════════════ */
#jd-comments-section{
  margin-top: 24px;
  padding-top: 16px;
  border-top: 1px solid var(--ao-border2);
}

/* ── FIX: centrar y limitar el contenido cuando #universal-storage está en
   pantalla completa, para que las tarjetas de resultado (cortas/cuadradas)
   no se estiren ni se recorten por los lados en móvil ──────────────────── */
#universal-storage:fullscreen,
#universal-storage:-webkit-full-screen,
#universal-storage:-moz-full-screen,
#universal-storage:-ms-fullscreen {
 display: flex !important;
 align-items: center !important;
 justify-content: center !important;
 width: 100vw !important;
 height: 100vh !important;
 overflow-y: auto !important;
 background: #000;
}

#universal-storage:fullscreen > *,
#universal-storage:-webkit-full-screen > *,
#universal-storage:-moz-full-screen > *,
#universal-storage:-ms-fullscreen > * {
 width: 100% !important;
 max-width: 680px !important;
 margin: 0 auto !important;
 flex-shrink: 0;
}

/* ── Academia AO ── */
.jd-academy{padding:16px 0 40px;}
.jd-ac-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:20px;}
@media(max-width:700px){.jd-ac-stats{grid-template-columns:repeat(2,1fr);}}
.jd-ac-stat{background:var(--ao-bg2);border:1px solid var(--ao-border2);padding:14px 12px;position:relative;overflow:hidden;}
.jd-ac-stat::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--ac-color,var(--ao-gold));}
.jd-ac-stat__icon{font-size:18px;margin-bottom:6px;opacity:.7;}
.jd-ac-stat__label{font-size:8px;color:var(--ao-muted);letter-spacing:1px;text-transform:uppercase;margin-bottom:4px;}
.jd-ac-stat__val{font-family:'Cinzel',serif;font-size:1.6rem;font-weight:700;color:var(--ac-color,var(--ao-gold));line-height:1;}
.jd-ac-stat__sub{font-size:9px;color:var(--ao-muted);margin-top:3px;}

/* ── Fila de banners (destacado del día + mundial) en 2 columnas ── */
.jd-banners-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;align-items:stretch;}
@media(max-width:800px){.jd-banners-row{grid-template-columns:1fr;}}
.jd-banners-row .jd-ac-banner,
.jd-banners-row .jd-mundial-banner{margin-bottom:0;height:100%;}

.jd-ac-banner{position:relative;min-height:180px;background:linear-gradient(135deg,#1a0d2e,#2d1b4e);border:1px solid var(--ao-border);overflow:hidden;cursor:pointer;margin-bottom:16px;display:flex;align-items:flex-end;}
.jd-ac-banner__img{position:absolute;right:0;top:0;height:100%;width:45%;object-fit:cover;opacity:.5;}
.jd-ac-banner__overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.8) 0%,rgba(0,0,0,.3) 60%,transparent 100%);}
.jd-ac-banner__body{position:relative;z-index:1;padding:20px;max-width:60%;}
.jd-ac-banner__tag{font-size:8px;font-weight:700;background:var(--ao-gold);color:#1a0d2e;padding:3px 10px;letter-spacing:1px;text-transform:uppercase;display:inline-block;margin-bottom:8px;}
.jd-ac-banner__title{font-family:'Cinzel',serif;font-size:1.4rem;font-weight:700;color:#fff;margin-bottom:8px;line-height:1.2;}
.jd-ac-banner__badges{display:flex;gap:6px;flex-wrap:wrap;}
.jd-ac-badge{font-size:9px;font-weight:700;padding:3px 10px;border:1px solid;}
.jd-mundial-banner{background:linear-gradient(135deg,#001a2e,#003a5c,#001525);border:1px solid rgba(0,210,255,.3);padding:20px;margin-bottom:16px;cursor:pointer;position:relative;display:flex;align-items:center;gap:20px;}
.jd-mundial-banner::before{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#00d2ff,transparent);}
.jd-mundial-banner__trophy{font-size:3rem;flex-shrink:0;}
.jd-mundial-banner__eye{font-family:'Orbitron',monospace;font-size:.6rem;letter-spacing:.2em;color:#00d2ff;text-transform:uppercase;margin-bottom:4px;}
.jd-mundial-banner__title{font-family:'Cinzel',serif;font-size:1.2rem;color:#fff;margin-bottom:4px;}
.jd-mundial-banner__sub{font-size:.82rem;color:rgba(255,255,255,.55);margin-bottom:10px;}

.jd-ac-section{margin-bottom:24px;}
.jd-ac-section__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;padding-bottom:8px;border-bottom:1px solid var(--ao-border2);}
.jd-ac-section__icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;}
.jd-ac-section__title{font-family:'Cinzel',serif;font-size:.95rem;color:var(--ao-text);margin-left:10px;}
.jd-ac-section__sub{font-size:9px;color:var(--ao-muted);}
.jd-ac-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;}
.jd-ac-grid--4{grid-template-columns:repeat(4,1fr);}
@media(max-width:900px){.jd-ac-grid--4{grid-template-columns:repeat(2,1fr);}}
@media(max-width:500px){.jd-ac-grid{grid-template-columns:1fr 1fr;}.jd-ac-grid--4{grid-template-columns:1fr 1fr;}}
.jd-ac-card{background:var(--ao-bg2);border:1px solid var(--ao-border2);padding:16px;cursor:pointer;position:relative;transition:border-color .15s,transform .15s;min-height:160px;display:flex;flex-direction:column;}
.jd-ac-card:hover{border-color:var(--ao-border);transform:translateY(-2px);}
.jd-ac-card__badge{position:absolute;top:8px;right:8px;font-size:8px;font-weight:700;padding:2px 8px;background:var(--ao-gold);color:#1a0d2e;}
.jd-ac-card__badge--done{background:#56ca00;color:#fff;}
.jd-ac-card__icon{width:50px;height:50px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;margin-bottom:10px;flex-shrink:0;}
.jd-ac-card__title{font-family:'Cinzel',serif;font-size:.85rem;color:var(--ao-text);font-weight:700;margin-bottom:6px;line-height:1.2;flex:1;}
.jd-ac-card__desc{font-size:.75rem;color:var(--ao-muted);line-height:1.4;margin-bottom:10px;}
.jd-ac-card__foot{display:flex;align-items:center;gap:6px;margin-top:auto;}
.jd-ac-card__cat{font-size:8px;color:var(--ao-gold);border:1px solid rgba(245,200,66,.3);padding:2px 6px;letter-spacing:.5px;}
.jd-ac-card--locked{opacity:.5;cursor:not-allowed;}
.jd-ac-card--locked:hover{transform:none;}
.jd-streak-wrap{background:var(--ao-bg2);border:1px solid var(--ao-border2);padding:20px;margin-bottom:10px;}
.jd-streak-days{display:flex;justify-content:space-between;position:relative;margin:30px 0;}
.jd-streak-line{position:absolute;top:20px;left:5%;right:5%;height:3px;background:var(--ao-border2);}
.jd-streak-line-fill{position:absolute;top:20px;left:0;height:3px;background:linear-gradient(90deg,var(--ao-gold),#00d2ff);transition:width 1.5s ease;box-shadow:0 0 12px rgba(245,200,66,.5);}
.jd-streak-day{display:flex;flex-direction:column;align-items:center;gap:6px;position:relative;z-index:1;}
.jd-streak-day__dot{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8rem;border:2px solid var(--ao-border2);background:var(--ao-bg3);font-family:'Cinzel',serif;color:var(--ao-muted);transition:all .3s;}
.jd-streak-day__dot.done{background:linear-gradient(135deg,var(--ao-gold),#c9962a);border-color:var(--ao-gold);color:#1a0d2e;box-shadow:0 0 12px rgba(245,200,66,.4);}
.jd-streak-day__dot.today{border-color:#00d2ff;color:#00d2ff;box-shadow:0 0 12px rgba(0,210,255,.4);}
.jd-streak-day__label{font-size:8px;color:var(--ao-muted);letter-spacing:.5px;}
.jd-streak-cofre{background:linear-gradient(135deg,rgba(201,168,76,.1),rgba(201,168,76,.04));border:1px solid rgba(201,168,76,.3);padding:20px;text-align:center;}
.jd-streak-cofre__title{font-family:'Cinzel',serif;font-size:.85rem;color:#c9a84c;margin-bottom:4px;}
.jd-streak-cofre__sub{font-size:.75rem;color:var(--ao-muted);font-style:italic;margin-bottom:14px;}
.jd-streak-cofre__img{width:90px;height:90px;object-fit:contain;filter:drop-shadow(0 0 16px rgba(201,168,66,.4));cursor:pointer;}
.jd-ac-search{background:var(--ao-bg2);border:1px solid var(--ao-border2);padding:20px;margin-bottom:16px;}
.jd-ac-search input{flex:1;background:var(--ao-bg3);border:1px solid var(--ao-border2);color:var(--ao-text);padding:10px 14px;font-family:'Rajdhani',sans-serif;font-size:.95rem;outline:none;}
.jd-ac-search input:focus{border-color:var(--ao-gold);}
.jd-ac-search input::placeholder{color:var(--ao-muted);}
.jd-ac-search button{background:var(--ao-gold);color:#1a0d2e;border:none;padding:10px 20px;font-family:'Cinzel',serif;font-size:.8rem;font-weight:700;cursor:pointer;letter-spacing:1px;transition:opacity .2s;}
.jd-punch-filters{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px;}
.jd-punch-filter{font-size:.78rem;padding:4px 12px;border:1px solid var(--ao-border2);color:var(--ao-muted);cursor:pointer;text-decoration:none;transition:.15s;background:var(--ao-bg3);}
.jd-punch-filter:hover,.jd-punch-filter.active{border-color:var(--ao-gold);color:var(--ao-gold);background:rgba(245,200,66,.08);}
.jd-referral{background:linear-gradient(135deg,rgba(115,103,240,.1),rgba(0,229,255,.05));border:1px solid var(--ao-border2);padding:24px;text-align:center;margin-bottom:20px;}
.jd-referral h3{font-family:'Cinzel',serif;color:var(--ao-text);margin-bottom:8px;}
.jd-referral p{font-size:.88rem;color:var(--ao-muted);margin-bottom:16px;}
.jd-referral-row{display:flex;gap:0;max-width:500px;margin:0 auto;}
.jd-referral-row input{flex:1;background:var(--ao-bg3);border:1px solid var(--ao-border2);border-right:none;color:var(--ao-text);padding:10px 14px;font-size:.85rem;outline:none;}
.jd-referral-row button{background:var(--ao-gold);color:#1a0d2e;border:none;padding:10px 20px;font-family:'Cinzel',serif;font-size:.78rem;font-weight:700;cursor:pointer;white-space:nowrap;}
.jd-ac-tips{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:20px;}
@media(max-width:700px){.jd-ac-tips{grid-template-columns:1fr;}}
.jd-ac-tip{background:var(--ao-bg2);border-left:3px solid var(--ac-tip-color,var(--ao-gold));padding:14px 16px;}
.jd-ac-tip h6{font-family:'Cinzel',serif;font-size:.82rem;color:var(--ao-text);margin-bottom:6px;display:flex;align-items:center;gap:6px;}
.jd-ac-tip p{font-size:.78rem;color:var(--ao-muted);margin:0;line-height:1.4;}

/* Modo jugando */
.playing-only{display:none!important;}
body.is-playing .playing-only{display:flex!important;}
body.is-playing .academy-only{display:none!important;}
.pp-head{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--ao-border2);margin-bottom:16px;}
.pp-title{font-family:'Cinzel',serif;font-size:1rem;color:var(--ao-text);display:flex;align-items:center;gap:8px;margin:0;}
.pp-back{font-size:.82rem;color:var(--ao-gold);text-decoration:none;display:flex;align-items:center;gap:4px;}
.pp-back:hover{color:var(--ao-text);}

/* Ocultar inputs uCoz en modo juego */
body.hide-test-inputs .eVariant,body.hide-test-inputs td.eVariant,body.hide-test-inputs tr td.eVariant,body.hide-test-inputs #testBlockD .eVariant{display:none!important;}
body.hide-test-inputs #TstSbm{display:none!important;}
body.hide-test-inputs .tst-progress{display:none!important;}
body.hide-test-inputs .tst-actions{display:none!important;}
body.hide-test-inputs input[type="radio"]{display:none!important;}
body.hide-test-inputs table>tbody>tr:not(:first-child) hr{display:none!important;}

/* Modal genérico AO */
.jd-modal-overlay{position:fixed;inset:0;z-index:9100;background:rgba(0,0,0,.8);display:none;align-items:center;justify-content:center;}
.jd-modal-overlay.open{display:flex;}
.jd-modal-overlay .jd-modal{display:none;}
.jd-modal-overlay.open .jd-modal{display:block;}
.jd-modal{background:var(--ao-bg);border:1px solid var(--ao-border);max-width:560px;width:90%;max-height:90vh;overflow-y:auto;position:relative;}
.jd-modal:has(>.jd-modal-box){display:flex;position:fixed;inset:0;z-index:9999;align-items:center;justify-content:center;background:none;border:none;max-width:none;width:auto;max-height:none;overflow:visible;}
.jd-modal-fixed{display:flex;position:fixed;inset:0;z-index:9999;align-items:center;justify-content:center;}
.jd-modal-close{position:absolute;top:10px;right:12px;background:none;border:none;color:var(--ao-muted);font-size:18px;cursor:pointer;}
#jd-xp-toast{position:fixed;bottom:30px;right:30px;background:linear-gradient(135deg,#7367f0,#5e50ee);color:#fff;padding:12px 20px;font-family:'Cinzel',serif;font-weight:700;font-size:.95rem;box-shadow:0 8px 32px rgba(115,103,240,.5);z-index:99999;display:none;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.15);}

/* ── MODAL MUNDIAL ── */
.mpa-overlay{position:fixed;inset:0;z-index:99999;background:rgba(0,0,10,.92);backdrop-filter:blur(6px);display:none;align-items:center;justify-content:center;}
.mpa-box{background:linear-gradient(160deg,#001a2e,#003a5c);border:1px solid rgba(0,210,255,.4);max-width:480px;width:92%;position:relative;overflow:hidden;box-shadow:0 0 60px rgba(0,210,255,.2);}
.mpa-box::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#00d2ff,transparent);}
.mpa-close{position:absolute;top:10px;right:12px;background:none;border:none;color:rgba(255,255,255,.5);font-size:1.1rem;cursor:pointer;z-index:10;transition:color .2s;}
.mpa-close:hover{color:#00d2ff;}
.mpa-header{position:relative;padding:24px 24px 0;text-align:center;}
.mpa-sparks{position:absolute;inset:0;pointer-events:none;overflow:hidden;}
.mpa-spark{position:absolute;bottom:0;background:#00d2ff;border-radius:50%;animation:mpa-spark-rise linear infinite;}
@keyframes mpa-spark-rise{0%{opacity:0;transform:translateY(0) scale(1)}50%{opacity:.8}100%{opacity:0;transform:translateY(-120px) scale(.3)}}
.mpa-badge{display:inline-block;background:rgba(0,210,255,.15);border:1px solid rgba(0,210,255,.4);color:#00d2ff;font-size:.6rem;font-weight:700;letter-spacing:.15em;padding:3px 12px;margin-bottom:10px;}
.mpa-trophy{font-size:3rem;margin-bottom:8px;}
.mpa-body{padding:16px 24px 24px;}
.mpa-eyebrow{font-size:.65rem;letter-spacing:.15em;color:rgba(255,255,255,.4);text-transform:uppercase;margin-bottom:6px;}
.mpa-title{font-family:'Cinzel',serif;font-size:2rem;font-weight:900;color:#fff;line-height:1.1;margin-bottom:12px;}
.mpa-title span{color:#00d2ff;}
.mpa-desc{font-size:.85rem;color:rgba(255,255,255,.6);line-height:1.6;margin-bottom:16px;}
.mpa-games{display:flex;flex-direction:column;gap:8px;margin-bottom:16px;}
.mpa-game{display:flex;align-items:center;gap:12px;padding:12px 16px;background:rgba(0,210,255,.06);border:1px solid rgba(0,210,255,.2);text-decoration:none;color:#fff;transition:all .2s;}
.mpa-game:hover{background:rgba(0,210,255,.12);border-color:rgba(0,210,255,.5);color:#00d2ff;}
.mpa-game-icon{font-size:1.4rem;flex-shrink:0;}
.mpa-game-name{flex:1;font-weight:600;font-size:.9rem;}
.mpa-game-xp{font-family:'Orbitron',sans-serif;font-size:.75rem;font-weight:700;color:#00d2ff;}
.mpa-btn-skip{width:100%;background:none;border:1px solid rgba(255,255,255,.15);color:rgba(255,255,255,.4);padding:8px;font-size:.75rem;cursor:pointer;transition:all .2s;}
.mpa-btn-skip:hover{border-color:rgba(255,255,255,.3);color:rgba(255,255,255,.7);}