
.jl-wrap{max-width:68rem;margin:0 auto}
.jl-sub{max-width:var(--col);margin:0 auto 1.6rem;color:var(--muted);text-align:left}
.jl-row{margin-top:2.2rem}
.jl-rh{font:700 .78rem var(--display);letter-spacing:.2em;text-transform:uppercase;color:var(--ink);margin:0 0 1rem;padding-bottom:.7rem;border-bottom:1px solid var(--line)}
.jl-note{font-size:.85rem;color:var(--muted);margin:-.4rem 0 1rem}
.jl-grid{display:grid;gap:1.4rem 1.1rem}
.jl-grid-wide{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.jl-grid-tall{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
.jl-v{all:unset;cursor:pointer;display:flex;flex-direction:column;gap:.55rem;min-width:0}
.jl-thumb{position:relative;display:block;border-radius:14px;overflow:hidden;background:#1b2230;box-shadow:0 8px 22px rgba(20,30,50,.18);transition:transform .25s ease,box-shadow .25s ease}
.jl-wide .jl-thumb{aspect-ratio:16/9}.jl-tall .jl-thumb{aspect-ratio:9/16}
.jl-thumb img{width:100%;height:100%;object-fit:cover}
.jl-fit{background:radial-gradient(circle at 50% 40%,#2c3546,#141a26)}.jl-fit img{object-fit:contain}
.jl-v:hover .jl-thumb,.jl-v:focus-visible .jl-thumb{transform:translateY(-3px);box-shadow:0 14px 30px rgba(27,58,140,.25)}
.jl-play{position:absolute;left:50%;top:50%;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;background:rgba(27,34,48,.6);border:1.5px solid rgba(255,255,255,.85);backdrop-filter:blur(4px)}
.jl-play:after{content:"";position:absolute;left:18px;top:14px;border-style:solid;border-width:9px 0 9px 14px;border-color:transparent transparent transparent #fff}
.jl-badge{position:absolute;left:8px;top:8px;background:rgba(35,80,214,.92);color:#fff;font:700 .58rem var(--display);letter-spacing:.12em;text-transform:uppercase;padding:.3rem .55rem;border-radius:999px}
.jl-badge.jl-dark{background:rgba(27,34,48,.85)}
.jl-dur{position:absolute;right:8px;bottom:8px;background:rgba(27,34,48,.8);color:#fff;font:600 .68rem var(--sans);padding:.1rem .45rem;border-radius:6px}
.jl-vt{font:600 .9rem/1.4 var(--display);color:var(--ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.jl-stories{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.4rem}
.jl-story{background:var(--card);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;box-shadow:0 10px 26px rgba(27,58,140,.08)}
.jl-simg{aspect-ratio:4/5;background:#1b2230;overflow:hidden}
.jl-simg img{width:100%;height:100%;object-fit:cover}
.jl-noimg{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:radial-gradient(circle at 50% 35%,#3a4558,#1b2230)}
.jl-noimg img{width:96px;height:auto}
.jl-sbody{padding:1.2rem 1.25rem 1.3rem;display:flex;flex-direction:column;gap:.7rem;flex:1}
.jl-sbody h3{margin:0;font-size:1.2rem}
.jl-sbody blockquote{margin:0;font:italic 400 1.02rem/1.6 var(--serif);color:var(--ink-2);border-left:3px solid var(--blue-2);padding-left:.8rem}
.jl-sbody details{border-top:1px solid var(--line);padding-top:.6rem}
.jl-sbody summary{cursor:pointer;font:700 .78rem var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--blue-2);list-style:none}
.jl-sbody summary::-webkit-details-marker{display:none}
.jl-sbody summary:after{content:" +"}.jl-sbody details[open] summary:after{content:" \2013"}
.jl-sbody h4{margin:.9rem 0 .2rem;font-size:.95rem}
.jl-sbody details p{font-size:.97rem;color:var(--ink-2);margin:0}
.jl-credit{font-size:.8rem !important;color:var(--muted) !important;margin-top:.8rem !important}
.jl-src{margin-top:auto;font:700 .74rem var(--display);letter-spacing:.14em;text-transform:uppercase;text-decoration:none}
.jl-player{border:0;padding:0;background:transparent;max-width:none;max-height:none;overflow:visible}
.jl-player::backdrop{background:rgba(15,20,30,.84);backdrop-filter:blur(3px)}
.jl-frame{background:#000;border-radius:14px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.6)}
.jl-frame iframe{display:block;border:0}
.jl-close{position:absolute;top:-46px;right:0;width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.6);background:rgba(27,34,48,.6);color:#fff;font-size:22px;line-height:1;cursor:pointer}
.jl-row:not(.jl-open) .jl-x{display:none}
.jl-srow{margin-top:0}
.jl-more{display:block;margin:1.4rem auto 0;font:700 .74rem var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--blue);background:rgba(255,255,255,.55);border:1px solid var(--line);border-radius:999px;padding:.75rem 1.4rem;cursor:pointer;backdrop-filter:blur(8px);box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 4px 14px rgba(27,58,140,.1)}
.jl-more:hover{border-color:var(--blue-2);color:var(--blue-2)}
@media (max-width:560px){.jl-grid-wide,.jl-grid-tall{grid-template-columns:repeat(2,1fr)}.jl-vt{font-size:.8rem}.jl-badge{font-size:.5rem;padding:.2rem .4rem}.jl-stories{grid-template-columns:1fr}}

.jw-notice{font-size:.74rem;color:var(--muted);line-height:1.5;margin-top:1.6rem}
.jw-h1{font-size:clamp(2rem,5vw,3rem)}
.jw-toc{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.4rem}
.jw-lesson{margin-top:2.6rem;padding-top:2rem;border-top:1px solid var(--line)}
.jw-lesson:first-of-type{border-top:0;padding-top:0}
.jw-lesson h3{margin:0 0 .4rem}
.jw-word{font-size:.98rem;color:var(--ink-2);background:var(--card);border:1px solid var(--line);border-radius:12px;padding:.85rem 1rem}
.jw-study{margin:1rem 0 0}
.jw-study dt{font:700 .72rem var(--display);letter-spacing:.16em;text-transform:uppercase;color:var(--blue-2);margin-top:1rem}
.jw-study dd{margin:.25rem 0 0}
.jw-cards{max-width:68rem;margin:1.6rem auto 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.2rem}
.jw-card{display:flex;flex-direction:column;gap:.5rem;text-decoration:none;color:inherit;transition:transform .25s ease,box-shadow .25s ease}
.jw-card:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(27,58,140,.16)}
.jw-card .mark{width:44px;height:auto}
.jw-card h3{margin:0}
.jw-card p:not(.kicker){font-size:.92rem;color:var(--muted);margin:0}
.jw-go{margin-top:auto;font:700 .74rem var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--blue-2)}

.ja-box{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:1.2rem;box-shadow:0 12px 30px rgba(27,58,140,.08)}
.ja-chips{display:flex;flex-wrap:wrap;gap:.5rem}
.ja-chip{font:600 .84rem var(--sans);color:var(--blue);background:rgba(255,255,255,.7);border:1px solid var(--line);border-radius:999px;padding:.5rem .9rem;cursor:pointer}
.ja-chip:hover{border-color:var(--blue-2);color:var(--blue-2)}
.ja-log{display:flex;flex-direction:column;gap:.9rem;margin:1rem 0}
.ja-log:empty{margin:.4rem 0}
.ja-me{align-self:flex-end;max-width:85%;background:var(--blue);color:#fff;border-radius:16px 16px 4px 16px;padding:.65rem .95rem}
.ja-bot{background:#fff;border:1px solid var(--line);border-radius:16px 16px 16px 4px;padding:1rem 1.1rem}
.ja-bot .ja-label{font:700 .7rem var(--display);letter-spacing:.16em;text-transform:uppercase;color:var(--blue-2);margin:0 0 .5rem}
.ja-bot p{margin:0 0 .6rem}
.ja-crisis{background:#fff4e5;border:1px solid #f0c27a;border-radius:10px;padding:.7rem .85rem;margin-bottom:.7rem;font-weight:600}
.ja-verse{border-left:3px solid var(--blue-2);padding:.2rem 0 .2rem .8rem;margin-top:.7rem;font:italic 400 1rem/1.6 var(--serif);color:var(--ink-2)}
.ja-verse b{display:block;font:700 .72rem var(--display);font-style:normal;letter-spacing:.1em;color:var(--muted);margin-top:.3rem}
.ja-typing{color:var(--muted);font-style:italic}
.ja-form{display:flex;gap:.6rem;align-items:flex-end}
.ja-form textarea{flex:1;font:400 1rem/1.5 var(--sans);border:1px solid var(--line);border-radius:14px;padding:.75rem .9rem;resize:vertical;min-height:3rem;background:#fff;color:var(--ink)}
.ja-form textarea:focus{outline:2px solid var(--blue-2);outline-offset:1px}
.ja-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.ja-note{font-size:.85rem;color:var(--muted);margin:.8rem 0 0}
.ja-legal{font-size:.74rem;color:var(--muted);margin-top:1rem;line-height:1.5}
@media (max-width:560px){.ja-form{flex-direction:column;align-items:stretch}}
