/* Civil 0.1 · Aula editorial JuriVerso. Solo afecta la ruta Lecciones. */
.jcl{--jcl-ink:#20352d;--jcl-green:#285943;--jcl-orange:#ff9b2f;--jcl-cream:#fff9ee;--jcl-soft:#eaf6e7;--jcl-line:#e3d9bc;color:var(--jcl-ink);max-width:1540px;margin:0 auto 58px;font-family:Manrope,system-ui,-apple-system,sans-serif}
.jcl *{box-sizing:border-box}
.jcl button{font:inherit;cursor:pointer}
.jcl button:focus-visible,.jcl a:focus-visible,.jcl input:focus-visible,.jcl summary:focus-visible{outline:3px solid #db741d;outline-offset:3px}
.jcl button:disabled{cursor:default}
.jcl h1,.jcl h2,.jcl h3{letter-spacing:-.035em;color:var(--jcl-ink)}
.jcl p{line-height:1.69}
.jcl .jcl-overline,.jcl-overline{display:block;font-size:10px;font-weight:900;letter-spacing:.18em;color:#ab5b25;text-transform:uppercase}
.jcl-tag{display:inline-flex;align-items:center;gap:5px;background:#fff9e8;border:1px solid #deb783;border-radius:999px;padding:8px 13px;color:#88502b;font-size:10px;letter-spacing:.12em;font-weight:900;text-transform:uppercase}
.jcl-btn{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;border:1px solid transparent;border-radius:12px;padding:12px 17px;text-align:center;font-size:12px;font-weight:900!important;line-height:1.2;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}
.jcl-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 7px 17px #234b3425}
.jcl-btn.is-dark{background:#233d34;border-color:#233d34;color:#fff}
.jcl-btn.is-light{background:#fff9ed;border-color:#debfa0;color:#29523f}
.jcl-btn.is-text{background:transparent;color:#3b6d54;border:0;padding-left:0}
.jcl-btn.is-picked{background:#254d39;color:#fff;border-color:#254d39}
.jcl-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:20px;overflow:hidden;background:linear-gradient(112deg,#ffcb90 0%,#ffe0af 54%,#ddf1d8 100%);border:1px solid #edc292;border-radius:28px;padding:41px 44px;min-height:305px;box-shadow:0 17px 36px #715b301b}
.jcl-hero:before{content:'✦';position:absolute;top:-70px;right:15%;font-size:240px;color:#fff6e545;pointer-events:none}
.jcl-hero-copy{position:relative;z-index:1;align-self:center}
.jcl-hero h1{font-size:clamp(31px,4vw,54px);line-height:1.08;letter-spacing:-.06em;max-width:720px;margin:17px 0 14px}
.jcl-hero h1 em{font-style:normal;color:#a74f20}
.jcl-hero p{color:#4b6658;font-size:14px;max-width:660px;margin:0 0 20px;line-height:1.8}
.jcl-hero-actions{display:flex;flex-wrap:wrap;gap:9px}
.jcl-hero-art{position:relative;display:flex;align-items:flex-end;justify-content:center;min-height:220px}
.jcl-hero-art>img{width:52%;height:235px;object-fit:contain;object-position:bottom;image-rendering:pixelated;filter:drop-shadow(0 15px 10px #594c4530);animation:jcl-bob 3.4s ease-in-out infinite}
.jcl-hero-art>img:nth-child(2){height:205px;margin-left:-16px;animation-delay:-1.5s}
.jcl-hero-chat{position:absolute;top:-6px;right:-12px;border:2px solid #2e624b;border-radius:12px;background:#fff9e8;box-shadow:4px 5px 0 #36604733;padding:10px 12px;color:#375b47;font-size:11px;line-height:1.4;font-weight:900;max-width:175px;transform:rotate(4deg)}
.jcl-meter{display:flex;justify-content:space-between;align-items:center;gap:26px;margin-top:24px;padding:22px 28px;background:#e5f4e6;border:1px solid #add5b9;border-radius:23px}
.jcl-meter h2{font-size:clamp(22px,2.4vw,31px);margin:6px 0 7px;color:#243e31}
.jcl-meter p{margin:0;font-size:13px;color:#537061;max-width:670px}
.jcl-meter-stat{display:flex;flex-direction:column;align-items:center;flex-shrink:0;min-width:150px}
.jcl-meter-stat>strong{font-size:34px;line-height:1;color:#2b704c;font-weight:950}.jcl-meter-stat strong small{font-size:17px;color:#8cac98}
.jcl-meter-stat>span:not(.jcl-progress-bar){font-size:10px;font-weight:800;color:#4d6f5a;margin:5px 0 11px}
.jcl-progress-bar{display:block;height:8px;min-width:130px;width:100%;background:#ceddcf;border-radius:999px;overflow:hidden}
.jcl-progress-bar>span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#ff9935,#4caa71);transition:width .3s ease}
.jcl-section-head{display:flex;align-items:end;justify-content:space-between;gap:15px;margin:36px 0 17px}
.jcl-section-head h2{font-size:clamp(25px,2.6vw,34px);margin:7px 0 3px}
.jcl-section-head p{margin:0;font-size:12px;color:#587066}
.jcl-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.jcl-card{--tile:#ffdfb9;position:relative;display:flex;flex-direction:column;min-height:277px;padding:21px 19px;overflow:hidden;border:1px solid #e5c9a2;border-radius:21px;text-align:left;background:linear-gradient(135deg,var(--tile),#fff8e8);box-shadow:0 5px 17px #6b5e4612;transition:transform .25s ease,box-shadow .25s ease}
.jcl-card[data-tone="mint"]{--tile:#d6eedb;border-color:#add6bc}
.jcl-card[data-tone="lavender"]{--tile:#e7dbf4;border-color:#cebbe7}
.jcl-card[data-tone="yellow"]{--tile:#fff1b6;border-color:#efdc8f}
.jcl-card:nth-child(4){background:linear-gradient(135deg,#294a43,#1e2d36);color:#f5fff5;border-color:#426b59}
.jcl-card:nth-child(4)>strong{color:#fff}
.jcl-card:nth-child(4) .jcl-card-text,.jcl-card:nth-child(4) .jcl-card-index,.jcl-card:nth-child(4) .jcl-card-time{color:#c8dfcf}
.jcl-card:nth-child(4) .jcl-card-cta,.jcl-card:nth-child(4) .jcl-card-check{color:#ffcf82}
.jcl-card:hover{transform:translateY(-5px);box-shadow:0 15px 29px #516c5425}
.jcl-card-index{font-size:10px;letter-spacing:.15em;font-weight:950;color:#9a622e}
.jcl-card-check{position:absolute;top:20px;right:16px;font-size:9px;font-weight:900;letter-spacing:.02em;color:#2c8354}
.jcl-card-icon{font-size:22px;margin-top:21px;margin-bottom:5px}
.jcl-card>strong{font-size:19px;font-weight:950;line-height:1.15;color:#273930;position:relative;z-index:1;max-width:235px}
.jcl-card-text{display:block;margin-top:9px;font-size:11px;line-height:1.53;color:#50675a;max-width:230px;position:relative;z-index:1}
.jcl-card-time{font-size:9px;font-weight:800;color:#7d897b;margin-top:10px}
.jcl-card-cta{color:#2c6847;font-weight:950;font-size:11px;margin-top:auto;padding-top:16px;position:relative;z-index:2}
.jcl-card-character{position:absolute;right:-7px;bottom:-27px;width:95px;height:106px;opacity:.62;pointer-events:none;transform:rotate(8deg)}
.jcl-card-character img{width:100%;height:100%;object-fit:contain;image-rendering:pixelated}
.jcl-objectives{margin:21px 0 0;border:1px solid #e7cdaa;border-radius:19px;background:#fffcf6;overflow:hidden}
.jcl-objectives summary{display:flex;justify-content:space-between;align-items:center;padding:18px 21px;cursor:pointer;font-weight:900;color:#365844;list-style:none}
.jcl-objectives summary::-webkit-details-marker{display:none}
.jcl-chevron{font-size:21px}.jcl-objectives[open] .jcl-chevron{transform:rotate(180deg)}
.jcl-objectives-body{padding:0 22px 22px;color:#496253;font-size:13px}
.jcl-objectives-body p,.jcl-objectives-body li{line-height:1.7}
.jcl-resources{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.jcl-resource{display:flex;flex-direction:column;align-items:flex-start;min-height:128px;gap:8px;background:#fff1db;border:1px solid #eec99f;border-radius:19px;padding:18px;transition:transform .2s ease;box-shadow:0 4px 13px #6857440f}
.jcl-resource:nth-child(2){background:#e0f1df;border-color:#b2d7b9}.jcl-resource:nth-child(3){background:#eae2f9;border-color:#d4c7eb}.jcl-resource:nth-child(4){background:#fff2be;border-color:#eadc97}
.jcl-resource.is-test{background:#263d35;color:#fff;border-color:#425f4b}
.jcl-resource:hover{transform:translateY(-3px)}
.jcl-resource>span{font-size:24px}.jcl-resource>strong{font-size:13px;line-height:1.25;text-align:left}
.jcl-resource>small{font-size:10px;color:#537360;text-align:left;margin-top:auto}.jcl-resource.is-test>small{color:#bce0c7}
.jcl-footer-action{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:22px;background:#e2f1e2;border:1px solid #c3dec6;border-radius:19px;padding:14px 19px}
.jcl-footer-action>div{display:flex;align-items:center;gap:13px;color:#325b46;font-size:12px;font-weight:800}
.jcl-footer-action img{width:55px;height:56px;object-fit:contain;image-rendering:pixelated}
.jcl-crumbs{display:flex;align-items:center;gap:9px;color:#7f6e55;font-size:12px;font-weight:750;margin-bottom:18px}
.jcl-crumbs>span{opacity:.35}
.jcl-reading-layout{display:grid;grid-template-columns:minmax(210px,242px) minmax(0,1fr);gap:23px;align-items:start}
.jcl-index{position:sticky;top:18px;background:linear-gradient(175deg,#e7f3e5,#fff9eb);border:1px solid #d1d8bf;border-radius:21px;padding:19px 12px;box-shadow:0 7px 23px #33594510;max-height:calc(100vh - 36px);overflow:auto}
.jcl-index-title{font-size:10px;letter-spacing:.14em;font-weight:900;color:#2e6446;padding:0 9px 11px}
.jcl-index>.jcl-progress-bar{width:calc(100% - 17px);margin:0 auto}
.jcl-index-caption{display:block;padding:9px 9px 18px;color:#58715f;font-size:11px}
.jcl-index-topic{display:flex;align-items:center;gap:9px;padding:11px 8px;border:0;border-radius:11px;background:transparent;color:#395447;text-align:left;width:100%;font-size:11px;font-weight:800!important;line-height:1.35}
.jcl-index-topic:hover{background:#dcecd8}.jcl-index-topic.active{background:#2c6449;color:white}
.jcl-index-num{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:9px;background:#ffcb83;color:#76431a;font-size:11px;font-weight:950}
.jcl-index-topic.active .jcl-index-num{background:#ffc77d;color:#573919}
.jcl-index-div{height:1px;margin:17px 6px;background:#d4decb}
.jcl-index-subtitle{display:block;color:#927344;font-size:10px;letter-spacing:.15em;padding:0 8px 7px}
.jcl-index-extra{display:block;width:100%;padding:10px 8px;border:0;background:transparent;border-radius:8px;text-align:left;color:#3a6549;font-size:11px;font-weight:750!important}
.jcl-index-extra:hover{background:#dcebdc}
.jcl-reading-main{min-width:0}
.jcl-reading-head{background:#fffaf0;border:1px solid #ecd7b7;border-radius:22px;padding:30px 31px 26px;margin-bottom:14px}
.jcl-reading-head h1{font-size:clamp(31px,3.3vw,47px);line-height:1.1;margin:15px 0 11px}
.jcl-reading-head>p{font-size:14px;color:#536e60;max-width:770px;margin:0}
.jcl-reading-meta{display:flex;flex-wrap:wrap;gap:12px;margin-top:19px}
.jcl-reading-meta span{padding:7px 11px;background:#f4ebd9;border-radius:9px;color:#61735f;font-size:10px;font-weight:800}
.jcl-scene{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 220px;align-items:center;overflow:hidden;min-height:210px;padding:26px 32px;background:linear-gradient(117deg,#e1f1de,#ffd5a4);border:1px solid #d1dcbf;border-radius:22px;margin-bottom:16px}
.jcl-scene[data-tone="mint"]{background:linear-gradient(117deg,#d1eede,#ffe8af)}
.jcl-scene[data-tone="lavender"]{background:linear-gradient(117deg,#e9e3fa,#ffe3bc)}
.jcl-scene[data-tone="yellow"]{background:linear-gradient(117deg,#ffe8ad,#e0f4d7)}
.jcl-scene-stars{position:absolute;right:5px;top:0;color:#fff9e199;font-size:60px;letter-spacing:9px;pointer-events:none}
.jcl-scene-copy{position:relative;z-index:1;display:flex;flex-direction:column;gap:8px;max-width:490px}
.jcl-scene-copy span{font-size:10px;letter-spacing:.16em;font-weight:950;color:#986333}
.jcl-scene-copy strong{font-size:clamp(23px,2.3vw,33px);line-height:1.11;letter-spacing:-.05em;color:#305240}
.jcl-scene-copy small{font-size:12px;color:#57725f;font-weight:700}
.jcl-character{position:absolute;background:transparent;border:0;bottom:-5px;padding:0;animation:jcl-bob 3.8s ease-in-out infinite;transition:transform .2s ease}
.jcl-character:hover{transform:scale(1.08) rotate(-6deg)}
.jcl-character img{display:block;width:100%;height:100%;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 12px 9px #36543b29)}
.jcl-character.is-main{height:194px;width:132px;right:88px}
.jcl-character.is-side{height:154px;width:111px;right:4px;animation-delay:-1.7s}
.jcl-article{padding:33px clamp(22px,4vw,46px);background:#fffdf6;border:1px solid #eadac2;border-radius:24px;box-shadow:0 9px 27px #765d3810;color:#385349;font-size:14px;line-height:1.85;overflow-wrap:anywhere}
.jcl-article h2,.jcl-article h3,.jcl-article h4{line-height:1.25;color:#294839}
.jcl-article h2{font-size:clamp(23px,2.6vw,32px);margin:30px 0 12px}
.jcl-article h3{font-size:clamp(20px,2vw,25px);margin:32px 0 14px;position:relative;padding-left:15px}
.jcl-article h3:before{content:'';position:absolute;left:0;top:2px;bottom:3px;width:4px;border-radius:9px;background:#ffa53e}
.jcl-article h4{font-size:17px;margin:25px 0 9px;color:#a15b2c}
.jcl-article p{margin:12px 0 17px;color:#40594c}
.jcl-article strong{color:#224c3a}
.jcl-article ul,.jcl-article ol{padding-left:25px;margin:14px 0 19px;color:#456253}
.jcl-article li{padding-left:5px;margin:6px 0}
.jcl-article li::marker{color:#bc713e;font-weight:850}
.jcl-article blockquote{background:#e9f3e6;border-left:5px solid #7eb58d;border-radius:0 11px 11px 0;margin:20px 0;padding:13px 19px;color:#315747;font-weight:650}
.jcl-article blockquote p{margin:4px 0}
.jcl-article table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;margin:23px 0;background:#fff7eb;border:1px solid #e7d8bc;border-radius:12px;font-size:12px}
.jcl-article th,.jcl-article td{padding:12px 14px;border-bottom:1px solid #ecd9bb;text-align:left;min-width:125px;vertical-align:top}
.jcl-article th{background:#e1efd9;color:#24513d;font-weight:900}
.jcl-article tr:nth-child(even) td{background:#fffdf5}
.jcl-article a{color:#285e45;text-decoration:underline;text-decoration-color:#8fcba3;text-underline-offset:3px;word-break:break-word}
.jcl-article hr{border:0;height:1px;background:#e0dfcf;margin:26px 0}
.jcl-engage{background:#f8f1e6;border:1px solid #e7d3b5;border-radius:24px;padding:24px;margin-top:19px}
.jcl-engage:nth-of-type(odd){background:#eaf4e8;border-color:#cbdacb}
.jcl-engage-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px}
.jcl-engage-heading h2{font-size:25px;margin:7px 0 6px}
.jcl-engage-heading p{font-size:12px;color:#66796b;margin:0}
.jcl-engage-heading img{width:76px;height:81px;object-fit:contain;image-rendering:pixelated;animation:jcl-bob 3s infinite}
.jcl-memory-box{background:linear-gradient(135deg,#253e34,#233b47);border-radius:20px;border:2px dashed #90c8ab;min-height:282px;color:#fff;padding:31px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:13px;text-align:center;animation:jcl-flip .4s ease}
.jcl-memory-box.is-flipping{animation:jcl-card-turn .58s ease-in-out}
.jcl-memory-box .jcl-memory-phrase{color:#c8e9ce;font-size:11px;font-weight:950;letter-spacing:.12em;text-transform:uppercase}
.jcl-memory-box p{font-size:clamp(16px,1.7vw,22px);max-width:680px;line-height:1.55;font-weight:800;margin:6px 0 9px;color:#f9fffa}
.jcl-memory-box .jcl-memory-answer{font-size:clamp(27px,3.6vw,46px);color:#ffd19a;line-height:1.2}
.jcl-memory-box .jcl-btn.is-dark{background:#ffb65b;color:#263e33;border-color:#ffb65b}
.jcl-memory-box small{color:#c3dfc8;font-size:11px}
.jcl-memory-box form{width:100%;max-width:560px;display:flex;flex-direction:column;gap:10px}
.jcl-memory-box label{font-size:12px;color:#c3e6cf;font-weight:850}
.jcl-memory-box input{width:100%;border:1px solid #95bd9e;border-radius:11px;background:#fffef9;color:#1d362b;padding:13px 15px;font:700 15px Manrope,sans-serif}
.jcl-countdown{display:flex;align-items:center;gap:8px;padding:10px 20px;border:2px solid #f3ce8d;border-radius:999px}
.jcl-countdown b{color:#ffcf81;font-size:30px}.jcl-countdown small{color:#fff;font-size:11px}
.jcl-practice-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.jcl-practice-card{background:#fffdf8;border:1px solid #e4d5c1;border-radius:17px;padding:21px}
.jcl-practice-card.is-true-false{background:#e8f1e4;border-color:#c6d5c2}
.jcl-practice-card h3{font-size:17px;line-height:1.37;margin:13px 0 18px}
.jcl-options{display:grid;gap:9px}
.jcl-option{display:flex;align-items:center;gap:11px;width:100%;padding:12px;border:1px solid #ddd8c9;background:#fffdf8;color:#365043;border-radius:12px;text-align:left;font-size:12px;line-height:1.48;transition:background-color .15s ease,border-color .15s ease}
.jcl-option:hover:not(:disabled){background:#fff0d8;border-color:#d4ac72}
.jcl-option b{display:grid;place-items:center;flex:none;width:27px;height:27px;background:#e8f1e5;border-radius:9px;color:#41664f}
.jcl-option.is-right{background:#d8f2df;border-color:#53a571;color:#1d6840}
.jcl-option.is-wrong{background:#ffe3dd;border-color:#e88b77;color:#943e34}
.jcl-option.is-wrong b{background:#ffd1c4;color:#943e34}
.jcl-option.is-right b{background:#a7deb7;color:#1b7540}
.jcl-tf-buttons{display:flex;gap:9px;flex-wrap:wrap}.jcl-tf-buttons .jcl-btn{flex:1}
.jcl-feedback{padding:12px 14px;border-radius:11px;margin:15px 0 4px;font-size:12px;line-height:1.65;color:#385c45}
.jcl-feedback strong{display:block;font-size:13px;margin-bottom:4px}
.jcl-feedback.is-success{background:#d5f1df;border:1px solid #8bbf9c;color:#27593a}
.jcl-feedback.is-mistake{background:#fff0dd;border:1px solid #e8bb7e;color:#73512c}
.jcl-small-note{font-size:11px;color:#7e8777;margin:15px 0 0}
.jcl-next-step{display:flex;align-items:center;justify-content:space-between;gap:17px;background:#e7f1e2;border:1px solid #bed7c1;border-radius:22px;margin-top:21px;padding:21px 25px}
.jcl-next-step strong{display:block;color:#305542;font-size:21px;margin:5px 0}
.jcl-next-step p{font-size:12px;color:#617267;margin:0}
.jcl-bottom-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:20px 0}
.jcl-resource-scene{display:flex;align-items:center;gap:17px;min-height:160px;background:linear-gradient(120deg,#d9eeda,#ffe6bf);border:1px solid #bed8ba;border-radius:23px;padding:21px 29px;margin-bottom:15px}
.jcl-resource-scene>span{font-size:48px}.jcl-resource-scene>strong{font-size:clamp(22px,2.5vw,32px);margin-right:auto;color:#31563f}
.jcl-resource-scene>button{background:transparent;border:0;padding:0}
.jcl-resource-scene img{width:115px;height:115px;object-fit:contain;image-rendering:pixelated;animation:jcl-bob 3.3s infinite}
.jcl-case-prompt{padding:17px 20px;background:#fff0c7;border:1px solid #ebcc7d;border-radius:17px;margin-bottom:14px}
.jcl-case-prompt b{color:#79551b;font-size:13px}.jcl-case-prompt p{margin:5px 0;color:#755e37;font-size:12px}
.jcl-case-hidden summary{background:#e2f1dc;border:1px solid #b1ceae;border-radius:11px;padding:17px;cursor:pointer;font-weight:850;color:#2e6445}
.jcl-case-hidden[open]>div{padding-top:15px}
.jcl-exam-head{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#e5f2e6;border:1px solid #bdd7bd;border-radius:23px;padding:30px 36px;margin-bottom:20px}
.jcl-exam-head h1{font-size:clamp(28px,3vw,41px);margin:8px 0}
.jcl-exam-head p{font-size:13px;color:#547460;margin:0}
.jcl-exam-head img{width:120px;height:135px;object-fit:contain;image-rendering:pixelated}
.jcl-eval-card{max-width:860px;margin:0 auto;padding:31px;background:#fffaf0;border:1px solid #e4d1b4;border-radius:23px;box-shadow:0 10px 22px #705e4310}
.jcl-eval-top{display:flex;align-items:center;justify-content:space-between;gap:9px;font-size:10px;color:#8c663c;font-weight:950;letter-spacing:.1em}
.jcl-eval-progress{height:9px;background:#e6e4d8;border-radius:99px;overflow:hidden;margin:13px 0 26px}.jcl-eval-progress span{display:block;height:100%;background:linear-gradient(90deg,#ffa23e,#64b878);border-radius:99px}
.jcl-eval-card h2{font-size:clamp(22px,2.7vw,32px);line-height:1.3;margin-bottom:25px}
.jcl-eval-card .jcl-option{font-size:14px;padding:16px}
.jcl-eval-card>.jcl-btn{margin-top:19px}
.jcl-review-list{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:20px}
.jcl-review-item{background:#fffdf7;border:1px solid #e4dac7;border-radius:16px;padding:19px}
.jcl-review-item strong{display:block;font-size:13px;line-height:1.35;color:#30523e}
.jcl-review-item p{font-size:12px;font-weight:800;margin:11px 0 4px;color:#4a6c50}
.jcl-review-item small{font-size:11px;color:#6c7969;line-height:1.55}
@keyframes jcl-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@keyframes jcl-flip{from{opacity:.6;transform:perspective(500px) rotateY(10deg) scale(.98)}to{opacity:1;transform:perspective(500px) rotateY(0) scale(1)}}
@keyframes jcl-card-turn{0%{transform:perspective(650px) rotateY(0)}50%{transform:perspective(650px) rotateY(88deg)}100%{transform:perspective(650px) rotateY(0)}}
@media(max-width:1320px){.jcl-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.jcl-reading-layout{grid-template-columns:215px minmax(0,1fr)}.jcl-practice-grid{grid-template-columns:1fr}}
@media(max-width:980px){.jcl-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.jcl-reading-layout{grid-template-columns:1fr}.jcl-index{position:relative;top:auto;max-height:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 9px}.jcl-index-title,.jcl-index>.jcl-progress-bar,.jcl-index-caption,.jcl-index-div,.jcl-index-subtitle{grid-column:1/-1}.jcl-resources{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.jcl-hero{grid-template-columns:1fr;gap:0;padding:27px 23px}.jcl-hero-art{min-height:185px;max-width:300px;justify-self:center}.jcl-hero-art>img{height:155px}.jcl-hero-art>img:nth-child(2){height:148px}.jcl-hero-chat{top:-1px;right:-8px}.jcl-hero h1{font-size:37px}.jcl-hero p{font-size:13px}.jcl-meter,.jcl-next-step,.jcl-footer-action{flex-direction:column;align-items:stretch;text-align:left}.jcl-meter-stat{align-items:flex-start}.jcl-meter-stat>.jcl-progress-bar{width:100%}.jcl-cards{grid-template-columns:1fr}.jcl-card{min-height:236px}.jcl-resources{grid-template-columns:1fr 1fr}.jcl-section-head{align-items:flex-start;flex-direction:column}.jcl-reading-head{padding:24px 20px}.jcl-reading-head h1{font-size:33px}.jcl-scene{grid-template-columns:1fr;min-height:185px;padding:25px 18px}.jcl-scene-copy{max-width:60%}.jcl-scene-copy strong{font-size:23px}.jcl-character.is-main{right:54px;width:105px;height:151px}.jcl-character.is-side{right:-4px;width:85px;height:125px}.jcl-index{grid-template-columns:1fr 1fr;padding:12px}.jcl-index-topic{padding:8px 6px;font-size:10px}.jcl-index-num{width:24px;height:24px}.jcl-article{padding:23px 18px;font-size:13px}.jcl-engage{padding:17px}.jcl-engage-heading img{width:57px}.jcl-memory-box{padding:21px 14px;min-height:270px}.jcl-resource-scene{padding:19px;gap:11px}.jcl-resource-scene img{width:77px;height:90px}.jcl-resource-scene>strong{font-size:20px}.jcl-resource-scene>span{font-size:30px}.jcl-exam-head{padding:20px}.jcl-exam-head img{width:75px;height:85px}.jcl-eval-card{padding:21px}.jcl-review-list{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.jcl .jcl-character,.jcl .jcl-engage-heading img,.jcl .jcl-resource-scene img,.jcl .jcl-hero-art>img,.jcl .jcl-memory-box{animation:none!important}.jcl *{transition:none!important}}

/* Nuevo índice: materia → módulo → capítulo → tema. */
.jcl-catalog-hero{display:grid;grid-template-columns:minmax(0,1fr) 285px;gap:20px;min-height:298px;overflow:hidden;position:relative;padding:38px 43px;border:1px solid #edc4a4;border-radius:28px;background:linear-gradient(117deg,#ffe3c0,#e5f2dc 80%);box-shadow:0 16px 33px #5f65411a}
.jcl-catalog-hero:before{content:'✧';font-size:250px;color:#fff9d6a8;position:absolute;right:200px;top:-100px;pointer-events:none}
.jcl-catalog-copy{position:relative;z-index:1;align-self:center}
.jcl-catalog-copy h1{font-size:clamp(32px,3.8vw,52px);line-height:1.09;letter-spacing:-.058em;max-width:750px;margin:17px 0 12px}
.jcl-catalog-copy h1 em{font-style:normal;color:#ae5b2b}
.jcl-catalog-copy>p{max-width:675px;font-size:14px;color:#506a5a;margin:0 0 17px}
.jcl-catalog-hero-meta{display:flex;gap:9px;flex-wrap:wrap}
.jcl-catalog-hero-meta span{padding:7px 10px;background:#fff9ef9e;border:1px solid #e2c6a6;border-radius:999px;font-size:10px;color:#466450;font-weight:850}
.jcl-catalog-characters{position:relative;display:flex;align-items:flex-end;justify-content:center;gap:0;min-height:205px}
.jcl-catalog-characters>img{width:55%;height:215px;object-fit:contain;object-position:bottom;image-rendering:pixelated;filter:drop-shadow(0 10px 8px #45614c2a);animation:jcl-bob 3.4s ease-in-out infinite}
.jcl-catalog-characters>img:nth-child(2){height:203px;margin-left:-25px;animation-delay:-1.4s}
.jcl-catalog-characters>span{position:absolute;right:0;top:0;max-width:163px;background:#fff9eb;border:2px solid #53795d;border-radius:14px;box-shadow:4px 5px 0 #315f3b25;padding:10px;font-weight:900;font-size:11px;line-height:1.4;transform:rotate(4deg)}
.jcl-subjects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.jcl-subject{--jcl-tile:#ffe1bb;position:relative;display:flex;flex-direction:column;align-items:flex-start;text-align:left;min-height:255px;overflow:hidden;padding:22px 21px;background:linear-gradient(133deg,var(--jcl-tile),#fff9ef);border:1px solid #e9caa7;border-radius:22px;box-shadow:0 6px 16px #55694711;transition:transform .2s ease,box-shadow .2s ease}
.jcl-subject[data-tone="mint"]{--jcl-tile:#d8efdc;border-color:#b6dbbe}
.jcl-subject[data-tone="lavender"]{--jcl-tile:#e9dff7;border-color:#d3c1e9}
.jcl-subject[data-tone="yellow"]{--jcl-tile:#fff0bd;border-color:#efdda0}
.jcl-subject:hover{transform:translateY(-4px);box-shadow:0 14px 28px #38594526}
.jcl-subject-overline{font-weight:950;font-size:9px;letter-spacing:.13em;color:#ab673b}
.jcl-subject:first-child .jcl-subject-overline{color:#257546}
.jcl-subject-symbol{font-size:27px;margin:16px 0 6px}
.jcl-subject>strong{max-width:245px;font-size:21px;line-height:1.16;font-weight:950;color:#2c4839;position:relative;z-index:1}
.jcl-subject-desc{font-size:11px;line-height:1.6;max-width:240px;color:#587060;margin:9px 0 14px;position:relative;z-index:1}
.jcl-subject-bottom{display:flex;align-items:center;gap:11px;flex-wrap:wrap;margin-top:auto;z-index:2;max-width:100%;position:relative}
.jcl-subject-bottom small{color:#8a6747;font-size:9px;letter-spacing:.04em;font-weight:900}
.jcl-subject-bottom b{background:#fffaf0d9;border:1px solid #d3bca2;border-radius:10px;padding:6px 10px;color:#285a3f;font-size:10px}
.jcl-subject-mascot{position:absolute;right:-9px;bottom:23px;width:85px;height:90px;opacity:.62;pointer-events:none;transform:rotate(8deg)}
.jcl-subject-mascot img{width:100%;height:100%;object-fit:contain;image-rendering:pixelated}
.jcl-catalog-reminder{display:flex;align-items:center;gap:14px;padding:20px 25px;margin-top:22px;border:1px solid #bddcc2;border-radius:21px;background:linear-gradient(110deg,#e4f3e4,#fff3df)}
.jcl-catalog-reminder>div{flex:none;width:72px;height:73px}
.jcl-catalog-reminder img{width:100%;height:100%;object-fit:contain;image-rendering:pixelated}
.jcl-catalog-reminder p{font-size:12px;color:#536c5b;margin:0 auto 0 0;max-width:770px}
.jcl-catalog-reminder strong{display:block;color:#2b5740;font-size:13px}
.jcl-catalog-reminder>.jcl-btn{flex:none}
.jcl-civil-hero{display:grid;grid-template-columns:minmax(0,1fr) 255px;align-items:center;min-height:260px;gap:10px;padding:34px 39px;overflow:hidden;background:linear-gradient(115deg,#e0f2df,#fff0cb 63%,#ffddaf);border:1px solid #d6d5ab;border-radius:27px}
.jcl-civil-hero .jcl-overline{color:#8c672f}
.jcl-civil-hero h1{font-size:clamp(31px,3.5vw,49px);line-height:1.1;letter-spacing:-.052em;margin:14px 0 11px}
.jcl-civil-hero h1 em{color:#ad6527;font-style:normal}
.jcl-civil-hero p{font-size:13px;color:#546b5d;max-width:690px;margin:0 0 18px}
.jcl-civil-hero-tags{display:flex;flex-wrap:wrap;gap:7px}
.jcl-civil-hero-tags span{background:#fff9edcf;border:1px solid #d5c9a6;border-radius:999px;padding:8px 10px;font-size:10px;font-weight:850;color:#3e6c51}
.jcl-civil-hero-art{display:flex;align-items:flex-end;justify-content:center;min-height:175px}
.jcl-civil-hero-art img{width:50%;height:197px;object-fit:contain;object-position:bottom;image-rendering:pixelated;animation:jcl-bob 3.4s ease-in-out infinite}
.jcl-civil-hero-art img:nth-child(2){height:172px;margin-left:-27px;animation-delay:-1.2s}
.jcl-module-layout{display:grid;grid-template-columns:minmax(0,1fr) 255px;gap:19px;align-items:start}
.jcl-module-list{display:flex;flex-direction:column;gap:12px;min-width:0}
.jcl-module{border:1px solid #decba8;border-radius:21px;overflow:hidden;background:#fffaf0;box-shadow:0 4px 16px #3b624014}
.jcl-module[data-tone="mint"]{border-color:#b5d3b8}
.jcl-module[data-tone="lavender"]{border-color:#d7caeb}
.jcl-module[data-tone="yellow"]{border-color:#eadbaa}
.jcl-module-trigger{display:flex;align-items:center;text-align:left;gap:13px;width:100%;border:0;padding:18px 19px;background:#fff6e8;color:#304c3b;transition:background .15s ease}
.jcl-module[data-tone="mint"] .jcl-module-trigger{background:#e7f3e5}
.jcl-module[data-tone="lavender"] .jcl-module-trigger{background:#f0e9f9}
.jcl-module[data-tone="yellow"] .jcl-module-trigger{background:#fff3d0}
.jcl-module-trigger:hover{filter:brightness(.985)}
.jcl-module-number{flex:none;display:grid;place-items:center;width:41px;height:46px;background:#2e5d45;color:#fff7e1;font-size:15px;font-weight:950;border-radius:12px}
.jcl-module-icon{flex:none;font-size:29px}
.jcl-module-title{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}
.jcl-module-title small{font-size:9px;letter-spacing:.15em;font-weight:950;color:#a06638}
.jcl-module-title strong{font-size:18px;line-height:1.3;color:#2d4a39;font-weight:950}
.jcl-module-title em{font-size:11px;line-height:1.5;font-style:normal;font-weight:650;color:#6a796b}
.jcl-module-arrow{flex:none;width:33px;height:33px;display:grid;place-items:center;border:1px solid #d8ccaa;background:#ffffff98;color:#536e4c;border-radius:10px;font-size:21px}
.jcl-module-body{padding:20px 23px 22px;background:#fffcf4}
.jcl-chapter{border:1px solid #d7dcca;border-radius:19px;background:linear-gradient(130deg,#edf7e8,#fff7e6);overflow:hidden}
.jcl-chapter-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 25px 21px}
.jcl-chapter-top h3{font-size:24px;line-height:1.2;margin:6px 0 7px}
.jcl-chapter-top p{font-size:12px;color:#526e60;max-width:540px;margin:0}
.jcl-chapter-top>.jcl-btn{flex:none}
.jcl-chapter-progress{display:flex;align-items:center;gap:11px;margin-top:14px}
.jcl-chapter-progress>.jcl-progress-bar{width:145px;min-width:145px}
.jcl-chapter-progress small{font-weight:850;font-size:10px;color:#4b7658}
.jcl-chapter-topics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 17px 18px}
.jcl-chapter-topic{display:flex;align-items:center;gap:11px;text-align:left;background:#fffdf7;border:1px solid #d9dfce;border-radius:12px;padding:11px;min-height:68px;color:#365746;transition:background .2s ease,transform .2s ease}
.jcl-chapter-topic:hover{background:#e4f3e3;transform:translateY(-2px)}
.jcl-chapter-topic-icon{display:grid;place-items:center;flex:none;width:31px;height:31px;border-radius:10px;background:#ffcd91;color:#92551f;font-size:11px;font-weight:950}
.jcl-chapter-topic>span:nth-child(2){display:flex;flex-direction:column;gap:5px;min-width:0;flex:1}
.jcl-chapter-topic strong{font-size:11px;line-height:1.35;font-weight:900;color:#315743}
.jcl-chapter-topic small{font-size:9px;font-weight:750;color:#889280}
.jcl-chapter-topic>b{flex:none;color:#538363;font-size:15px}
.jcl-chapter-footer{display:flex;align-items:center;justify-content:space-between;gap:11px;padding:15px 23px;border-top:1px solid #d1dec9;background:#e8f2dc;color:#456650;font-size:11px;font-weight:850}
.jcl-next-chapters{padding:21px 3px 0}
.jcl-next-chapters>strong{font-size:12px;color:#78694f}
.jcl-next-chapters>div{display:flex;justify-content:space-between;gap:11px;color:#788275;font-size:11px;padding:11px 3px;border-bottom:1px dashed #e0d9c5}
.jcl-next-chapters small{font-weight:900;color:#a98358;white-space:nowrap}
.jcl-module-message{display:flex;align-items:flex-start;gap:12px;padding:16px;border-radius:13px;background:#e9f3e8;border:1px solid #d4e4d1}
.jcl-module-message>span{font-size:21px}.jcl-module-message strong{color:#315943;font-size:13px}
.jcl-module-message p{font-size:11px;color:#667869;margin:4px 0 0}
.jcl-module-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}
.jcl-preview-topic{display:flex;align-items:flex-start;gap:7px;flex-wrap:wrap;padding:12px;background:#fff7e7;border:1px dashed #e0d1b3;border-radius:11px;font-weight:800;font-size:11px;color:#607160}
.jcl-preview-topic>span{color:#ab7e54}
.jcl-preview-topic>small{width:100%;font-size:9px;font-weight:900;color:#ae845e}
.jcl-module-aside{position:sticky;top:18px;background:#e2f0e0;border:1px solid #b8d5bd;border-radius:22px;padding:21px 19px;box-shadow:0 9px 24px #2a5c4214}
.jcl-module-companion{height:160px;display:flex;align-items:center;justify-content:center;position:relative;margin-bottom:14px;border-radius:17px;background:linear-gradient(120deg,#f9d8ac,#fcf6db)}
.jcl-module-companion img{height:160px;max-width:85%;object-fit:contain;image-rendering:pixelated;animation:jcl-bob 3.5s ease-in-out infinite}
.jcl-module-companion>span{position:absolute;top:6px;right:6px;background:#fffaf1;border-radius:9px;padding:6px 8px;color:#39634a;font-size:9px;font-weight:900}
.jcl-module-aside>strong{display:block;font-size:31px;color:#2a6545;margin:10px 0 7px}
.jcl-module-aside>strong small{font-size:12px;color:#708f76}
.jcl-module-aside p{font-size:11px;color:#537262;margin:11px 0 15px}
.jcl-module-aside>.jcl-btn{width:100%;font-size:11px;padding:12px 10px}
.jcl-module-note{padding:14px 0 0;border-top:1px solid #c3dac3;margin-top:18px;color:#66836e;font-size:10px;line-height:1.55}
.jcl-preview-hero[data-tone="mint"]{background:linear-gradient(110deg,#dceede,#fff1ca)}
.jcl-preview-hero[data-tone="lavender"]{background:linear-gradient(110deg,#ebe1f9,#ffe4c7)}
.jcl-preview-hero[data-tone="yellow"]{background:linear-gradient(110deg,#fff0b8,#e4f2df)}
.jcl-coming-soon{display:flex;align-items:flex-start;gap:19px;margin-top:24px;padding:30px;border:1px solid #d6dfc7;border-radius:21px;background:#fffaf0}
.jcl-coming-soon>span{font-size:43px}
.jcl-coming-soon h2{font-size:26px;margin:1px 0 7px}
.jcl-coming-soon p{font-size:13px;color:#5a7064;max-width:780px;margin:0 0 17px}
.jcl-coming-actions{display:flex;gap:10px;flex-wrap:wrap}
@media(max-width:1200px){.jcl-subjects{grid-template-columns:repeat(2,minmax(0,1fr))}.jcl-module-layout{grid-template-columns:minmax(0,1fr) 215px}.jcl-module-preview{grid-template-columns:1fr 1fr}.jcl-chapter-topics{grid-template-columns:1fr}}
@media(max-width:980px){.jcl-module-layout{grid-template-columns:1fr}.jcl-module-aside{position:relative;top:auto;display:grid;grid-template-columns:130px 1fr;gap:0 19px;align-items:center}.jcl-module-companion{grid-row:span 5;height:133px;margin:0}.jcl-module-companion img{height:128px}.jcl-module-aside>.jcl-btn{width:max-content;max-width:100%}.jcl-module-note{grid-column:1/-1}}
@media(max-width:650px){.jcl-catalog-hero,.jcl-civil-hero{grid-template-columns:1fr;padding:27px 22px}.jcl-catalog-characters{min-height:159px;max-width:280px;justify-self:center;width:100%}.jcl-catalog-characters>img{height:158px}.jcl-catalog-characters>img:nth-child(2){height:146px}.jcl-catalog-copy h1{font-size:37px}.jcl-civil-hero h1{font-size:36px}.jcl-civil-hero-art{min-height:123px;max-width:235px;justify-self:center}.jcl-civil-hero-art img{height:137px}.jcl-civil-hero-art img:nth-child(2){height:120px}.jcl-subjects{grid-template-columns:1fr}.jcl-subject{min-height:215px}.jcl-catalog-reminder{padding:19px;align-items:flex-start;flex-wrap:wrap}.jcl-catalog-reminder>div{width:52px;height:53px}.jcl-catalog-reminder>.jcl-btn{width:100%}.jcl-module-trigger{padding:14px 11px;gap:9px}.jcl-module-icon{font-size:23px}.jcl-module-number{width:32px;height:38px;font-size:11px}.jcl-module-title strong{font-size:15px}.jcl-module-title em{font-size:10px}.jcl-module-title small{font-size:8px}.jcl-module-body{padding:13px}.jcl-chapter-top{flex-direction:column;align-items:flex-start;padding:19px}.jcl-chapter-top>.jcl-btn{width:100%}.jcl-chapter-top h3{font-size:22px}.jcl-chapter-topics{padding:0 10px 11px}.jcl-chapter-footer{flex-direction:column;align-items:stretch;padding:14px}.jcl-chapter-footer>.jcl-btn{width:100%}.jcl-module-preview{grid-template-columns:1fr}.jcl-module-aside{grid-template-columns:95px 1fr;gap:0 11px}.jcl-module-companion{height:108px}.jcl-module-companion img{height:100px}.jcl-module-companion>span{display:none}.jcl-module-aside>.jcl-btn{grid-column:1/-1;width:100%}.jcl-coming-soon{padding:21px;gap:10px}.jcl-coming-soon>span{font-size:26px}.jcl-coming-soon h2{font-size:22px}}
@media(prefers-reduced-motion:reduce){.jcl-catalog-characters>img,.jcl-civil-hero-art>img,.jcl-module-companion img{animation:none!important}}
