/* AHD Lesson Library v2 */
.ll{--ink:#14110d;--paper:#f6f1e8;--card:#fff;--line:#e4d9c6;--muted:#6d6255;--red:#9e1b32;--khaki:#c9ae7e;--dark:#14110d;background:var(--paper)}
.ll [hidden]{display:none!important}
.ll-wrap{max-width:1120px;margin:0 auto;padding:18px 16px 40px}
.ll .ll-hero{min-height:0}
.ll-hero .nike-title{font-size:clamp(46px,12vw,92px)!important;line-height:.9!important}
.ll-hero .lead{max-width:34em}

/* resume */
.ll-resume{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 18px;padding:14px 18px;border-radius:16px;background:var(--red);color:#fff;text-decoration:none;box-shadow:0 10px 24px rgba(158,27,50,.25)}
.ll-resume small{display:block;font:800 10.5px/1.2 system-ui,-apple-system,sans-serif;letter-spacing:.14em;opacity:.85}
.ll-resume b{display:block;font:800 17px/1.25 system-ui,-apple-system,sans-serif;margin-top:3px}
.ll-resume>span:last-child{font-size:24px;font-weight:900}

/* section heads */
.ll-sec-head{margin:6px 0 14px}
.ll-sec-head h2{margin:0;font:900 clamp(26px,6vw,38px)/1 system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:-.03em;color:var(--ink)}
.ll-sec-head p{margin:6px 0 0;color:var(--muted);font-size:15px}

/* tags */
.ll-tag{display:inline-flex;align-items:center;gap:6px;font:900 10.5px/1 system-ui,-apple-system,sans-serif;letter-spacing:.14em;color:var(--red);text-transform:uppercase}
.ll-tag i{font-style:normal;display:grid;place-items:center;width:22px;height:22px;border-radius:7px;background:var(--red);color:#fff;font-size:12px;letter-spacing:0}
.ll-ath .ll-tag{color:#8a6a2d}.ll-ath .ll-tag i{background:#8a6a2d}
.ll-proc .ll-tag{color:#1f5a73}.ll-proc .ll-tag i{background:#1f5a73}
.ll-mind .ll-tag{color:#5b3f86}.ll-mind .ll-tag i{background:#5b3f86}
.ll-short .ll-tag{color:#3f6b3a}.ll-short .ll-tag i{background:#3f6b3a}

/* course cards */
.ll-grid{display:grid;gap:12px;grid-template-columns:1fr}
@media(min-width:640px){.ll-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:980px){.ll-grid{grid-template-columns:repeat(3,1fr)}}
.ll-card{position:relative;display:flex;flex-direction:column;gap:8px;padding:16px 16px 14px;border-radius:18px;background:var(--card);border:1px solid var(--line);color:var(--ink);text-decoration:none;box-shadow:0 2px 0 var(--line);transition:transform .12s ease,box-shadow .12s ease}
.ll-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(20,17,13,.08)}
.ll-card:active{transform:scale(.985)}
.ll-card.ll-flag{background:var(--dark);color:#fff;border-color:var(--dark);box-shadow:0 3px 0 var(--khaki)}
@media(min-width:640px){.ll-card.ll-flag{grid-column:1/-1}}
.ll-card-top{display:flex;justify-content:space-between;align-items:center;gap:8px}
.ll-flag .ll-tag{color:var(--khaki)}.ll-flag .ll-tag i{background:var(--red)}
.ll-start{font:900 10px/1 system-ui,sans-serif;letter-spacing:.14em;background:var(--khaki);color:var(--ink);padding:6px 9px;border-radius:999px}
.ll-card-name{font:900 21px/1.12 system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:-.02em}
.ll-flag .ll-card-name{font-size:clamp(22px,4.6vw,30px)}
.ll-card-blurb{font-size:14.5px;line-height:1.45;color:var(--muted)}
.ll-flag .ll-card-blurb{color:#d9cfbd}
.ll-card-meta{display:flex;flex-wrap:wrap;gap:6px}
.ll-card-meta span{font:800 12px/1 system-ui,sans-serif;padding:6px 9px;border-radius:999px;background:var(--paper);color:var(--ink)}
.ll-flag .ll-card-meta span{background:#2a241d;color:#efe6d6}
.ll-card-meta b{font-weight:900}
.ll-card-prog{display:flex;align-items:center;gap:10px}
.ll-card-prog small{font:800 12px/1 system-ui,sans-serif;color:var(--red);white-space:nowrap}
.ll-flag .ll-card-prog small{color:var(--khaki)}
.ll-bar{flex:1;display:block;height:7px;border-radius:99px;background:var(--line);overflow:hidden}
.ll-flag .ll-bar{background:#3a3128}
.ll-bar i{display:block;height:100%;width:0;background:var(--red);border-radius:99px;transition:width .4s ease}
.ll-card-go{margin-top:auto;padding-top:4px;font:900 13px/1 system-ui,sans-serif;letter-spacing:.04em;color:var(--red);text-transform:uppercase}
.ll-flag .ll-card-go{color:var(--khaki)}

/* whole system */
.ll-ws{margin:18px 0 0;display:grid;gap:14px;padding:20px;border-radius:18px;background:linear-gradient(135deg,#1b1511,#3a1019);color:#fff;box-shadow:0 3px 0 var(--khaki)}
.ll-ws .ll-tag{color:var(--khaki)}.ll-ws .ll-tag i{background:var(--khaki);color:var(--ink)}
.ll-ws h2{margin:8px 0 4px;font:900 clamp(24px,5vw,32px)/1.05 system-ui,sans-serif;letter-spacing:-.02em}
.ll-ws p{margin:0;color:#e3d8c6;line-height:1.45}
.ll-ws-buy b{display:block;font:900 34px/1 system-ui,sans-serif}
.ll-ws-buy small{display:block;margin:4px 0 12px;color:#cfc3ad;font-size:13px}
@media(min-width:760px){.ll-ws{grid-template-columns:1.4fr 1fr;align-items:center;padding:24px 28px}}

/* how it works */
.ll-how{margin:26px 0 0}
.ll-how h2{margin:0 0 12px;font:900 22px/1.1 system-ui,sans-serif;color:var(--ink)}
.ll-how ol{list-style:none;margin:0;padding:0;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));counter-reset:s}
.ll-how li{counter-increment:s;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px 14px 14px 52px;position:relative}
.ll-how li::before{content:counter(s);position:absolute;left:14px;top:14px;width:26px;height:26px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font:900 13px/1 system-ui,sans-serif}
.ll-how li b{display:block;font-size:15px;color:var(--ink)}
.ll-how li span{display:block;font-size:13.5px;color:var(--muted);margin-top:3px;line-height:1.4}
.ll-how p{margin:14px 0 0;color:var(--muted);font-size:14px}
.ll-how a{color:var(--red);font-weight:800}

/* buttons */
.ll .btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 18px;border-radius:14px;font:900 14px/1.1 system-ui,-apple-system,sans-serif;letter-spacing:.04em;text-decoration:none;text-align:center}
.ll .ll-buy{background:var(--khaki);color:var(--ink);border:0;width:100%}
.ll .ll-buy:hover{filter:brightness(1.05)}

/* course page */
.ll-course{max-width:760px;margin:0 auto}
html.ll-js .ll-course{padding-top:4px}
html:not(.ll-js) .ll-course{margin-top:40px}
.ll-back{display:inline-flex;align-items:center;gap:6px;margin:0 0 14px;padding:9px 14px;border-radius:999px;background:var(--card);border:1px solid var(--line);color:var(--ink);font:800 14px/1 system-ui,sans-serif;text-decoration:none}
html:not(.ll-js) .ll-back{display:none}
.ll-head h2{margin:10px 0 6px;font:900 clamp(30px,8vw,46px)/.98 system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:-.035em;color:var(--ink)}
.ll-sub{margin:0;font:800 12px/1.3 system-ui,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.ll-desc{margin:12px 0 0;font-size:16px;line-height:1.5;color:#3d352c}
.ll-action{margin:16px 0 0;padding:16px;border-radius:18px;background:var(--dark);color:#fff;display:grid;gap:10px;box-shadow:0 3px 0 var(--khaki)}
.ll-prog{display:flex;align-items:center;gap:12px}
.ll-prog .ll-bar{background:#3a3128}
.ll-prog small{font:800 12.5px/1 system-ui,sans-serif;color:var(--khaki);white-space:nowrap}
.ll .ll-go{background:var(--red);color:#fff;width:100%;font-size:15px}
.ll-price{margin:0;font-size:13px;color:#cfc3ad;text-align:center}
.ll-price b{color:#fff}
@media(min-width:640px){.ll-action{grid-template-columns:1fr 1fr}.ll-prog,.ll-price{grid-column:1/-1}}
.ll-about{margin:12px 0 0;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:0 16px}
.ll-about summary{cursor:pointer;list-style:none;padding:14px 0;font:900 14px/1 system-ui,sans-serif;color:var(--ink);display:flex;justify-content:space-between}
.ll-about summary::after{content:"+";font-size:20px;line-height:.7;color:var(--red)}
.ll-about[open] summary::after{content:"–"}
.ll-about summary::-webkit-details-marker{display:none}
.ll-best{margin:0 0 8px;font-size:14.5px;line-height:1.45;color:#3d352c}
.ll-about ul{margin:0 0 14px;padding-left:18px;color:#3d352c;font-size:14.5px;line-height:1.5}

.ll-view{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:20px 0 12px;padding:4px;background:#e9e0cf;border-radius:999px}
html:not(.ll-js) .ll-view{display:none}
.ll-view button{border:0;border-radius:999px;min-height:42px;background:transparent;color:var(--ink);font:900 13.5px/1 system-ui,sans-serif;letter-spacing:.02em;cursor:pointer}
.ll-view button[aria-pressed="true"]{background:var(--ink);color:#fff;box-shadow:0 2px 8px rgba(0,0,0,.18)}

.ll-groups{display:grid;gap:10px}
.ll-group{background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden}
.ll-group>summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:14px 14px}
.ll-group>summary::-webkit-details-marker{display:none}
.ll-gnum{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:var(--ink);color:#fff;font:900 14px/1 system-ui,sans-serif}
.ll-group.is-complete .ll-gnum{background:#2f6b3a}
.ll-gtxt b{display:block;font:900 16px/1.2 system-ui,sans-serif;color:var(--ink)}
.ll-gtxt small{display:block;margin-top:3px;font-size:12.5px;line-height:1.35;color:var(--muted)}
.ll-gcount{font:800 11.5px/1 system-ui,sans-serif;color:var(--muted);white-space:nowrap;display:flex;align-items:center;gap:8px}
.ll-gcount::after{content:"";width:8px;height:8px;border-right:2.5px solid var(--red);border-bottom:2.5px solid var(--red);transform:rotate(45deg);margin-top:-4px;transition:transform .15s}
.ll-group[open] .ll-gcount::after{transform:rotate(-135deg);margin-top:4px}
.ll-list{list-style:none;margin:0;padding:0 8px 8px;border-top:1px solid var(--line)}
.ll-list li+li{border-top:1px solid #f0e9dc}
.ll-list a{display:grid;grid-template-columns:34px 1fr auto auto;align-items:center;gap:10px;padding:12px 8px;color:var(--ink);text-decoration:none;border-radius:10px}
.ll-list a:hover{background:var(--paper)}
.ll-n{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--paper);border:1px solid var(--line);font:800 12.5px/1 system-ui,sans-serif;color:var(--ink)}
.ll-t{font-size:15px;line-height:1.3;font-weight:600}
.ll-free{font:900 10px/1 system-ui,sans-serif;letter-spacing:.1em;color:#2f6b3a;background:#e3f0df;padding:5px 7px;border-radius:999px}
.ll-chev{color:#b5a88f;font-size:22px;line-height:1}
.ll-list a.is-done .ll-n{background:#2f6b3a;border-color:#2f6b3a;color:transparent;position:relative}
.ll-list a.is-done .ll-n::after{content:"✓";position:absolute;color:#fff;font-size:14px;font-weight:900}
.ll-list a.is-done .ll-t{color:var(--muted)}
.ll-list a.is-next{background:#fbecee;box-shadow:inset 3px 0 0 var(--red)}
.ll-list a.is-next .ll-n{background:var(--red);border-color:var(--red);color:#fff}
.ll-list a.is-next .ll-t::after{content:"UP NEXT";display:inline-block;margin-left:8px;font:900 9.5px/1 system-ui,sans-serif;letter-spacing:.12em;color:#fff;background:var(--red);padding:4px 6px;border-radius:999px;vertical-align:2px}

/* detail mode: keep the page compact */
.ll.ll-detail .ll-wrap{padding-top:14px}
.ll.ll-detail .ll-resume{display:none!important}
html.ll-js .ll-course:not(.ll-started) .ll-prog{display:none}
@media(max-width:599px){.ll-gtxt small .ll-gdesc{display:none}}
