/* JuriVerso · Movimiento 2D y recorrido procesal interactivo. */
@keyframes jv-float {0%,100%{translate:0 0}35%{translate:0 -9px}65%{translate:0 -3px}}
@keyframes jv-sway {0%,100%{transform:rotate(-2deg)}50%{transform:rotate(3deg)}}
@keyframes jv-step {0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-10px) rotate(3deg)}}
.hero-sprite img{animation:jv-float 3.1s ease-in-out infinite}
.hero-sprite:nth-child(2) img,.hero-sprite:nth-child(4) img{animation-delay:.48s;animation-duration:2.7s}
.hero-sprite:nth-child(3) img{animation-delay:1s;animation-duration:3.6s}
.mascot-card img,.jv-crew-card img{animation:jv-float 3.6s ease-in-out infinite}
.mascot-card:nth-child(2n) img,.jv-crew-card:nth-child(2n) img{animation-delay:.7s}
.jv-about-hero-art .jv-character img{animation:jv-float 3.4s ease-in-out infinite}
.jv-about-hero-art .jv-character:nth-child(2) img{animation-delay:.6s}
.academy .arc-games-hero img,.academy .arc-game-card img,.arc-hero-art img{animation:jv-float 3.8s ease-in-out infinite}
.academy .arc-game-card:nth-child(2n) img{animation-delay:.9s}
.jm-page .jm-mascot img{animation:jv-float 3.4s ease-in-out infinite}

.jr-game-feature{--jr-ink:#17242c;display:grid;grid-template-columns:minmax(0,1.3fr) 200px;gap:12px;align-items:center;width:100%;padding:28px 30px;margin:20px 0 23px;border-radius:24px;background:linear-gradient(116deg,#ffc56e 0%,#ffab42 65%,#ffe5b4 100%);color:var(--jr-ink);border:1px solid #fbb25c;text-align:left;position:relative;overflow:hidden;box-shadow:0 15px 32px #0003;cursor:pointer;transition:transform .2s,box-shadow .2s}
.jr-game-feature:hover,.jr-game-feature:focus-visible{transform:translateY(-4px);box-shadow:0 21px 35px #0004}
.jr-game-feature::before{content:'⚖';position:absolute;font-size:220px;opacity:.09;right:9%;top:-80px;pointer-events:none}
.jr-game-feature .jr-feature-top{font:700 12px 'Pixelify Sans',sans-serif;letter-spacing:.1em;display:block;margin-bottom:12px;color:#654021}
.jr-game-feature h2{font-size:clamp(25px,3vw,38px);line-height:1.12;color:#19282c;margin:0 0 11px;font-weight:900}
.jr-game-feature p{font-size:13px;line-height:1.6;color:#43504e;max-width:640px}
.jr-game-feature .jr-feature-cta{display:inline-flex;gap:8px;padding:10px 15px;margin-top:17px;background:#1c2e31;color:#fff;border-radius:11px;font:800 12px 'Pixelify Sans',sans-serif}
.jr-game-feature .jr-feature-art{display:flex;justify-content:center;align-items:center;position:relative;z-index:1}
.jr-game-feature .jr-feature-art img{height:142px;width:90px;object-fit:contain;image-rendering:pixelated;animation:jv-step 2.3s ease-in-out infinite;filter:drop-shadow(0 10px 2px #7d562b33)}
.jr-game-feature .jr-feature-art img+img{margin-left:-26px;animation-delay:.5s}
.jr-shell{--jr-ink:#17242c;--jr-orange:#ffa73d;--jr-mint:#daf2e1;--jr-paper:#fffaf1;max-width:1510px;margin:0 auto 40px;color:#1d2b2b;font-size:14px}
.jr-shell *{box-sizing:border-box}
.jr-shell h1,.jr-shell h2,.jr-shell h3{color:inherit;letter-spacing:-.05em;line-height:1.18}
.jr-shell button{cursor:pointer}
.jr-shell .jr-back{display:inline-flex;align-items:center;gap:9px;color:#d9efe0;background:#202b32;border:1px solid #547166;border-radius:11px;padding:11px 16px;margin-bottom:16px;font-size:12px;font-weight:850}
.jr-banner{background:linear-gradient(115deg,#ffe2ad,#ffc46f 65%,#ffb34f);border-radius:27px;padding:clamp(25px,4vw,49px);display:grid;grid-template-columns:1fr 170px;align-items:center;gap:18px;position:relative;overflow:hidden;color:#1a292c;border:1px solid #e6ac61}
.jr-banner::after{content:'✦ ✧ ✦';position:absolute;right:150px;top:14px;color:#b36c33;font-size:22px;opacity:.6}
.jr-banner h1{font-size:clamp(31px,3.4vw,51px);margin:9px 0 13px;font-weight:900}
.jr-banner p{font-size:14px;max-width:690px;line-height:1.65;color:#485347}
.jr-tag{font:700 12px 'Pixelify Sans',sans-serif;letter-spacing:.08em;color:#865018}
.jr-banner img{height:165px;width:100%;object-fit:contain;image-rendering:pixelated;animation:jv-float 3.5s ease-in-out infinite}
.jr-picker{display:grid;gap:18px;margin-top:20px}
.jr-panel{background:#fffaf1;border:1px solid #ead7bc;border-radius:23px;padding:26px}
.jr-panel-title{display:flex;align-items:flex-start;gap:15px;margin-bottom:19px}
.jr-panel-title .jr-num{width:35px;height:35px;flex:none;display:grid;place-items:center;background:#1b2b2d;border-radius:10px;color:#d7f5dd;font:700 18px 'Pixelify Sans',sans-serif}
.jr-panel-title h2{font-size:24px;margin-bottom:4px}
.jr-panel-title p{font-size:13px;color:#5b6d66}
.jr-character-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.jr-mascot-choice{min-height:195px;background:#eaf5eb;border:2px solid transparent;color:#202a28;border-radius:17px;padding:13px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;transition:border-color .2s,transform .2s,box-shadow .2s}
.jr-mascot-choice:nth-child(2){background:#fff0de}.jr-mascot-choice:nth-child(3){background:#edeafa}.jr-mascot-choice:nth-child(4){background:#e4effb}.jr-mascot-choice:nth-child(5){background:#ffeaec}
.jr-mascot-choice img{width:110px;height:124px;max-width:100%;object-fit:contain;image-rendering:pixelated;animation:jv-float 3s ease-in-out infinite}
.jr-mascot-choice:nth-child(2n) img{animation-delay:.6s}
.jr-mascot-choice span{font-weight:900;font-size:14px}
.jr-mascot-choice small{font:700 11px 'Pixelify Sans',sans-serif;color:#557268}
.jr-mascot-choice:hover{transform:translateY(-4px)}
.jr-mascot-choice[aria-pressed="true"]{border-color:#198356;box-shadow:0 0 0 3px #b3e9c5}
.jr-routes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.jr-route-card{background:#f2e8ff;border:2px solid transparent;border-radius:17px;padding:21px;text-align:left;display:flex;flex-direction:column;gap:9px;min-height:190px;color:#26302b;transition:transform .2s,border-color .2s}
.jr-route-card:nth-child(2){background:#d9f2e0}.jr-route-card:nth-child(3){background:#ffe8cc}
.jr-route-card:hover{transform:translateY(-3px)}
.jr-route-card[aria-pressed="true"]{border-color:#188454;box-shadow:0 0 0 3px #b4ecca}
.jr-route-icon{font-size:27px}
.jr-route-card strong{font-size:18px;line-height:1.2}
.jr-route-card p{font-size:12px;line-height:1.6;color:#4c6458}
.jr-route-card small{font:700 11px 'Pixelify Sans',sans-serif;color:#a25723;margin-top:auto}
.jr-entry-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:19px 23px;background:#d6efdf;border:1px solid #a7d7b7;border-radius:18px}
.jr-entry-footer p{font-size:13px;color:#345044}
.jr-main-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:#192c31;color:white;border:2px solid #192c31;border-radius:11px;padding:12px 19px;font-size:13px;font-weight:900}
.jr-main-btn:hover{background:#2b4f42}
.jr-main-btn:disabled{opacity:.45;cursor:not-allowed}
.jr-main-btn.alt{background:#ffe2ad;color:#1d2a2b;border-color:#e5a855}
.jr-main-btn.warn{background:#a92e3a;border-color:#a92e3a}
.jr-trial-top{display:flex;justify-content:space-between;align-items:start;gap:19px;margin-bottom:18px;background:linear-gradient(112deg,#e5f6ea,#fff0d8);border:1px solid #b5dcc6;border-radius:23px;padding:25px 28px}
.jr-trial-top h1{font-size:clamp(28px,3vw,42px);margin:9px 0}
.jr-trial-top p{font-size:13px;color:#586c60;max-width:760px;line-height:1.65}
.jr-trial-top .jr-trial-pill{padding:11px 14px;border-radius:12px;background:#1b2e32;color:#e1f9e8;white-space:nowrap;font:700 12px 'Pixelify Sans',sans-serif}
.jr-map-scroll{overflow-x:auto;padding:8px 3px 15px;scrollbar-color:#82ad98 transparent}
.jr-scene{min-width:730px;height:255px;display:flex;position:relative;align-items:flex-end;border-radius:23px;overflow:hidden;background:linear-gradient(180deg,#fef0c9 0%,#f3e4cb 74%,#c5e5d1 74%,#a7d5ba 100%);border:1px solid #adcfb0}
.jr-scene::before{content:'';position:absolute;top:12px;left:0;right:0;height:135px;background:repeating-linear-gradient(90deg,transparent 0 12%,#b6a77f44 12% 12.2%,transparent 12.2% 17%);pointer-events:none}
.jr-scene::after{content:'';position:absolute;bottom:30px;left:0;right:0;height:6px;background:repeating-linear-gradient(90deg,#b97b53 0 26px,#e0a578 26px 47px);border-radius:3px;pointer-events:none}
.jr-stations{width:100%;height:100%;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));padding:20px 15px 48px;position:relative;z-index:1}
.jr-station{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:9px;min-width:0;color:#79796b;text-align:center;opacity:.72}
.jr-station .jr-door{width:64px;height:86px;display:grid;place-items:center;border-radius:30px 30px 7px 7px;border:6px solid #c1ae8e;border-bottom:9px solid #b7a385;background:#fef7df;font-size:29px;box-shadow:0 8px 0 #635a4f2b;transition:background .2s,border-color .2s}
.jr-station strong{max-width:106px;font-size:11px;line-height:1.3}
.jr-station.completed{opacity:1;color:#2b6a49}
.jr-station.completed .jr-door{background:#b8e8c8;border-color:#72af8d}
.jr-station.active{opacity:1;color:#7a4519}
.jr-station.active .jr-door{background:#ffe09a;border-color:#f4a23e;box-shadow:0 0 0 4px #ffdd9a80}
.jr-avatar{position:absolute;left:5.5%;bottom:19px;z-index:5;width:82px;height:113px;transform:translateX(-50%);transition:left 1050ms linear;pointer-events:none}
.jr-avatar img{width:100%;height:100%;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 9px 3px #203f302b);animation:jv-float 3.4s ease-in-out infinite}
.jr-avatar.is-walking img{animation:jv-step .21s steps(2,end) infinite}
.jr-map-caption{display:flex;gap:12px;justify-content:space-between;align-items:center;margin:2px 4px 18px;color:#c5d4cb;font-size:12px}
.jr-trial-grid{display:grid;grid-template-columns:280px minmax(0,1fr);gap:17px;align-items:stretch}
.jr-judge-card{background:linear-gradient(155deg,#d5f1e0,#eff8e9);border:1px solid #9ccdba;border-radius:22px;padding:23px 20px;color:#264138;display:flex;flex-direction:column;gap:10px;align-items:center;text-align:center}
.jr-judge-card img{width:132px;height:150px;object-fit:contain;image-rendering:pixelated;animation:jv-float 3.2s ease-in-out infinite}
.jr-judge-card .jr-judge-caption{font:700 12px 'Pixelify Sans',sans-serif;color:#35735a}
.jr-judge-card h2{font-size:21px}
.jr-judge-card p{font-size:12px;line-height:1.7;color:#3d6354}
.jr-trial-question{border:1px solid #4a625c;background:#1c2830;color:#eff8f3;border-radius:23px;padding:clamp(22px,3vw,32px);display:flex;flex-direction:column;min-width:0}
.jr-trial-question h2{font-size:clamp(22px,2.45vw,31px);line-height:1.27;color:#fff;margin:10px 0 18px}
.jr-trial-question .jr-context{display:block;color:#bee9ca;font:700 12px 'Pixelify Sans',sans-serif;letter-spacing:.055em}
.jr-options{display:grid;gap:10px;margin-bottom:15px}
.jr-option{width:100%;display:flex;gap:13px;align-items:center;text-align:left;background:#273940;border:1px solid #527067;color:#f0faf4;padding:13px 15px;border-radius:12px;line-height:1.5;transition:background .16s,border-color .16s}
.jr-option:hover:not(:disabled){background:#355248;border-color:#c7efcf}
.jr-option:disabled{cursor:default;opacity:.8}
.jr-option .jr-letter{flex:none;width:27px;height:27px;display:grid;place-items:center;background:#3f5550;border-radius:8px;font:700 13px 'Pixelify Sans',sans-serif}
.jr-option.is-correct{background:#254b39;border-color:#7edba0;color:#ecfff2;opacity:1}
.jr-option.is-wrong{background:#573239;border-color:#e997a2;color:#fff0ef;opacity:1}
.jr-help{font-size:12px;color:#a7c5b9;line-height:1.6}
.jr-feedback{padding:17px;border:1px solid #79bf97;border-radius:14px;background:#24483a;color:#e9ffef;margin:10px 0 15px}
.jr-feedback.error{border-color:#e5989f;background:#513039;color:#ffe9e7}
.jr-feedback strong{display:block;font-size:15px;margin-bottom:7px}
.jr-feedback p{color:inherit;opacity:.94;font-size:13px;line-height:1.72}
.jr-feedback small{display:block;margin-top:10px;font-size:11px;color:#bde3cf}
.jr-feedback.error small{color:#ffcbcb}
.jr-feedback a{text-decoration:underline;text-underline-offset:2px}
.jr-trial-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:auto;padding-top:18px}
.jr-trial-foot .jr-kbd{color:#b9c8bf;font-size:11px}
.jr-final{background:linear-gradient(135deg,#fff1d6,#d5f4e1);border:1px solid #b1d9bd;border-radius:25px;text-align:center;padding:47px 24px;color:#1f3028}
.jr-final h1{font-size:clamp(31px,4vw,56px);margin:17px 0 10px}
.jr-final p{max-width:680px;margin:0 auto 24px;color:#52675b}
.jr-final img{width:148px;height:160px;object-fit:contain;image-rendering:pixelated;animation:jv-step 1s ease-in-out infinite}
.jr-final .jr-final-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.jr-legal-note{font-size:11px;color:#9cb9aa;line-height:1.6;margin-top:20px;padding:13px 16px;border:1px solid #394f48;border-radius:12px}
.jr-legal-note a{color:#ffca87;text-decoration:underline}
@media(max-width:900px){.jr-trial-grid{grid-template-columns:1fr}.jr-judge-card{display:grid;grid-template-columns:98px 1fr;align-items:center;text-align:left}.jr-judge-card img{grid-row:span 3;width:95px;height:108px}.jr-judge-card p{grid-column:2}.jr-character-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.jr-banner{grid-template-columns:1fr 90px;padding:24px 20px}.jr-banner img{height:105px}.jr-banner h1{font-size:32px}.jr-game-feature{grid-template-columns:1fr 115px;padding:22px}.jr-game-feature .jr-feature-art img{height:105px;width:75px}.jr-game-feature .jr-feature-art img+img{display:none}.jr-panel{padding:20px}.jr-character-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.jr-routes{grid-template-columns:1fr}.jr-route-card{min-height:0}.jr-trial-top{flex-direction:column;padding:22px}.jr-trial-grid{gap:11px}.jr-entry-footer{flex-direction:column;align-items:stretch}.jr-entry-footer .jr-main-btn{width:100%}.jr-map-caption{flex-direction:column;align-items:flex-start}}
@media(prefers-reduced-motion:reduce){.hero-sprite img,.mascot-card img,.jv-crew-card img,.jv-about-hero-art .jv-character img,.academy .arc-games-hero img,.academy .arc-game-card img,.arc-hero-art img,.jm-page .jm-mascot img,.jr-shell img,.jr-game-feature img{animation:none!important}.jr-avatar{transition:none!important}}
