/* Generated design c02-learning-platform (docs/design/pool), prefix lsh- */
:root{--lsh-blue:#1478d4;--lsh-blue-dark:#07569d;--lsh-blue-soft:#eaf6ff;--lsh-yellow:#ffd84d;--lsh-yellow-soft:#fff8d8;--lsh-ink:#17324d;--lsh-muted:#536779;--lsh-line:#d8e5ef;--lsh-white:#fff;--lsh-soft:#f6fafe;--lsh-green:#08775b;--lsh-red:#a23b36;--lsh-radius:14px;--lsh-shadow:0 10px 28px rgba(18,72,111,.09)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--lsh-ink);font-family:ui-rounded,"Arial Rounded MT Bold",Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.68;overflow-wrap:anywhere}
a{color:var(--lsh-blue-dark);text-underline-offset:3px}
a:hover{color:var(--lsh-blue)}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--lsh-yellow);outline-offset:3px}
h1,h2,h3{line-height:1.15;letter-spacing:-.025em;font-weight:850}
h1{margin:.15em 0 .35em;font-size:clamp(2.15rem,7vw,4rem)}
h2{margin:0 0 .7em;font-size:clamp(1.55rem,4vw,2.25rem)}
h3{margin:0 0 .55em;font-size:1.3rem}
p{margin:.6em 0 1em}
ul,ol{padding-left:1.3rem}
table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
th,td{padding:13px 14px;border-bottom:1px solid var(--lsh-line);text-align:left;vertical-align:top}
thead th{background:#eaf6ff;color:#17324d;font-size:.84rem;white-space:nowrap}
.lsh-shell{width:min(1180px,calc(100% - 32px));margin-inline:auto}
.lsh-skip{position:absolute;left:12px;top:-80px;z-index:30;background:var(--lsh-ink);color:#fff;padding:12px 16px;border-radius:10px}
.lsh-skip:focus{top:12px}
.lsh-header{border-bottom:1px solid var(--lsh-line);background:#fff}
.lsh-header-row{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:76px}
.lsh-brand{display:flex;flex-direction:column;color:var(--lsh-ink);text-decoration:none;font-weight:900;line-height:1.1}
.lsh-brand small{margin-top:5px;color:var(--lsh-muted);font-size:.72rem;font-weight:600;max-width:300px}
.lsh-nav{display:flex;gap:4px;overflow-x:auto;padding:8px 0}
.lsh-nav a{display:flex;align-items:center;min-height:44px;padding:8px 11px;border-radius:10px;color:var(--lsh-ink);font-size:.9rem;font-weight:750;text-decoration:none;white-space:nowrap}
.lsh-nav a:hover,.lsh-nav a[aria-current="page"]{background:var(--lsh-blue-soft);color:var(--lsh-blue-dark)}
.lsh-page{padding:34px 0 72px}
.lsh-layout{display:grid;gap:34px}
.lsh-content{min-width:0;max-width:820px}
.lsh-breadcrumbs{margin-bottom:24px}
.lsh-breadcrumbs ol{display:flex;flex-wrap:wrap;gap:6px 10px;list-style:none;margin:0;padding:0;color:var(--lsh-muted);font-size:.86rem}
.lsh-breadcrumbs li:not(:last-child):after{content:"/";margin-left:10px;color:#8ca0b0}
.lsh-kicker{margin:0;color:var(--lsh-blue-dark);font-size:.82rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.lsh-standfirst{font-size:clamp(1.12rem,2.5vw,1.34rem);color:#334f68}
.lsh-byline,.lsh-updated{display:inline-block;margin:4px 16px 4px 0;color:var(--lsh-muted);font-size:.88rem}
.lsh-disclosure{margin:22px 0;padding:14px 17px;border:1px solid #e0bf39;border-radius:var(--lsh-radius);background:var(--lsh-yellow-soft);font-size:.9rem}
.lsh-disclosure strong{display:block;color:#5c4900}
.lsh-block{margin-top:52px;scroll-margin-top:20px}
.lsh-glance{margin-top:30px;padding:22px;border:1px solid #b9dcf7;border-radius:var(--lsh-radius);background:var(--lsh-blue-soft)}
.lsh-glance-grid{display:grid;gap:12px}
.lsh-fact{padding:15px;border-radius:11px;background:#fff}
.lsh-fact-label,.lsh-fact-note{display:block;color:var(--lsh-muted);font-size:.8rem}
.lsh-fact-value{display:block;margin:3px 0;color:var(--lsh-ink);font-size:1.12rem;font-weight:900;font-variant-numeric:tabular-nums}
.lsh-objectives{padding:24px;border:1px solid var(--lsh-line);border-radius:var(--lsh-radius);background:#fff;box-shadow:var(--lsh-shadow)}
.lsh-checklist{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.lsh-checklist li{position:relative;padding-left:34px}
.lsh-checklist li:before{content:"✓";position:absolute;left:0;top:0;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#dff7ee;color:var(--lsh-green);font-weight:900}
.lsh-toc{padding:20px;border:1px solid var(--lsh-line);border-radius:var(--lsh-radius);background:var(--lsh-soft)}
.lsh-toc h2{font-size:1rem}
.lsh-toc ul{list-style:none;margin:0;padding:0}
.lsh-toc a{display:flex;align-items:center;min-height:40px;font-size:.9rem;font-weight:700;text-decoration:none}
.lsh-pickbox{position:relative;padding:24px;border:2px solid #8bc6f3;border-radius:var(--lsh-radius);background:#f7fcff}
.lsh-pick-note{color:var(--lsh-muted)}
.lsh-card-list{display:grid;gap:20px;margin-top:24px}
.lsh-pick-card{position:relative;padding:24px;border:1px solid var(--lsh-line);border-radius:var(--lsh-radius);background:#fff;box-shadow:var(--lsh-shadow);overflow:hidden}
.lsh-pick-card:first-child{border:2px solid #e2ba20;padding-top:56px}
.lsh-pick-card:first-child:before{content:attr(data-badge);position:absolute;top:0;left:0;padding:8px 18px;border-radius:0 0 12px 0;background:var(--lsh-yellow);color:#4c3b00;font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.lsh-badge{display:inline-block;margin-bottom:12px;padding:4px 10px;border-radius:999px;background:var(--lsh-blue-soft);color:var(--lsh-blue-dark);font-size:.76rem;font-weight:850}
.lsh-pick-card:first-child .lsh-badge{display:none}
.lsh-price{font-size:1.08rem;font-weight:900;color:var(--lsh-blue-dark)}
.lsh-card-columns{display:grid;gap:14px}
.lsh-card-listing{padding:15px;border-radius:11px;background:var(--lsh-soft)}
.lsh-card-listing h3{font-size:.92rem}
.lsh-card-listing ul{margin:0}
.lsh-pros{border-left:4px solid var(--lsh-green)}
.lsh-cons{border-left:4px solid var(--lsh-red)}
.lsh-card-footer{margin-top:20px}
.lsh-visit{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 18px;border-radius:11px;background:var(--lsh-blue);color:#fff;font-weight:850;text-decoration:none}
.lsh-visit:hover{background:var(--lsh-blue-dark);color:#fff}
.lsh-short{display:block;max-width:330px;margin-top:7px;color:var(--lsh-muted);font-size:.72rem;line-height:1.4}
.lsh-table-wrap{overflow-x:auto;border:1px solid var(--lsh-line);border-radius:var(--lsh-radius);background:#fff}
.lsh-table-wrap table{min-width:650px}
.lsh-table-note{color:var(--lsh-muted);font-size:.85rem}
.lsh-total th,.lsh-total td{background:var(--lsh-yellow-soft);font-weight:900}
.lsh-steps>ol{list-style:none;margin:0;padding:0}
.lsh-step{position:relative;margin:0;padding:0 0 34px 66px}
.lsh-step:not(:last-child):before{content:"";position:absolute;left:23px;top:48px;bottom:0;width:3px;background:#aed8f8}
.lsh-step-num{position:absolute;left:0;top:0;display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--lsh-blue);color:#fff;font-size:.78rem;font-weight:900;text-align:center;line-height:1.05}
.lsh-step-card{padding:24px;border:1px solid var(--lsh-line);border-radius:var(--lsh-radius);background:#fff;box-shadow:var(--lsh-shadow)}
.lsh-tip{padding:12px 14px;border-left:4px solid #e0b900;border-radius:0 10px 10px 0;background:var(--lsh-yellow-soft);font-size:.92rem}
.lsh-cite{padding-top:10px;border-top:1px solid var(--lsh-line);color:var(--lsh-muted);font-size:.8rem}
.lsh-lessons-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.lsh-lesson{display:flex;flex-direction:column;min-height:150px;padding:16px;border:1px solid var(--lsh-line);border-radius:var(--lsh-radius);background:#fff;color:var(--lsh-ink);text-decoration:none;box-shadow:0 5px 16px rgba(18,72,111,.05)}
.lsh-lesson:hover{border-color:var(--lsh-blue);background:var(--lsh-blue-soft)}
.lsh-lesson-num{color:var(--lsh-blue);font-size:.78rem;font-weight:900}
.lsh-lesson-label{font-weight:900}
.lsh-lesson-meta,.lsh-lesson-pick{margin-top:8px;color:var(--lsh-muted);font-size:.78rem;line-height:1.4}
.lsh-section-card{padding:24px;border:1px solid var(--lsh-line);border-radius:var(--lsh-radius);background:#fff}
.lsh-faq details{border-bottom:1px solid var(--lsh-line)}
.lsh-faq summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:60px;padding:15px 0;cursor:pointer;font-weight:850;list-style:none}
.lsh-faq summary:after{content:"+";color:var(--lsh-blue);font-size:1.5rem}
.lsh-faq details[open] summary:after{content:"−"}
.lsh-answer{padding:0 0 16px;color:#405970}
.lsh-pager{display:grid;gap:12px}
.lsh-pager a{display:flex;min-height:64px;padding:15px;border:1px solid var(--lsh-line);border-radius:var(--lsh-radius);background:var(--lsh-soft);font-weight:850;text-decoration:none}
.lsh-pager-next{text-align:right;justify-content:flex-end}
.lsh-related ul,.lsh-sources ol{margin:0}
.lsh-related a{display:flex;align-items:center;min-height:44px}
.lsh-sources{padding:24px;border-radius:var(--lsh-radius);background:var(--lsh-soft)}
.lsh-sources li{margin-bottom:10px;color:var(--lsh-muted);font-size:.86rem}
.lsh-footer{padding:48px 0 28px;background:#102a42;color:#dceafa}
.lsh-footer-grid{display:grid;gap:30px}
.lsh-footer h2{font-size:1rem;color:#fff}
.lsh-footer ul{list-style:none;margin:0;padding:0}
.lsh-footer a{display:inline-flex;align-items:center;min-height:40px;color:#dceafa}
.lsh-footer-meta{margin-top:32px;padding-top:24px;border-top:1px solid #31506b;color:#bed0df;font-size:.88rem}
@media(min-width:620px){
.lsh-glance-grid{grid-template-columns:repeat(2,1fr)}
.lsh-card-columns{grid-template-columns:repeat(3,1fr)}
.lsh-lessons-grid{grid-template-columns:repeat(3,1fr)}
.lsh-pager{grid-template-columns:1fr 1fr}
.lsh-footer-grid{grid-template-columns:repeat(3,1fr)}
}
@media(min-width:960px){
.lsh-layout{grid-template-columns:minmax(0,820px) 260px;align-items:start}
.lsh-rail{grid-column:2;grid-row:1;position:sticky;top:24px}
.lsh-content{grid-column:1;grid-row:1}
.lsh-glance-grid{grid-template-columns:repeat(4,1fr)}
.lsh-lessons-grid{grid-template-columns:repeat(4,1fr)}
}
@media(max-width:899px){.lsh-header-row{align-items:flex-start;flex-direction:column;padding:14px 0}.lsh-nav{width:100%}}
:root{--lsh-blue:#1478d4;--lsh-blue-dark:#07569d;--lsh-blue-soft:#eaf6ff;--lsh-yellow:#ffd84d;--lsh-yellow-soft:#fff8d8;--lsh-ink:#17324d;--lsh-muted:#536779;--lsh-line:#d8e5ef;--lsh-white:#fff;--lsh-soft:#f6fafe;--lsh-green:#08775b;--lsh-radius:14px;--lsh-shadow:0 10px 28px rgba(18,72,111,.09)}
body{margin:0;background:var(--lsh-white);color:var(--lsh-ink);font-family:ui-rounded,"Arial Rounded MT Bold",Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.65;overflow-wrap:anywhere}
a:focus-visible,button:focus-visible,select:focus-visible{outline:3px solid var(--lsh-yellow);outline-offset:3px}
img,svg{max-width:100%}
h1,h2,h3{line-height:1.13;letter-spacing:-.025em;margin:0 0 .65em;font-weight:850}
h1{font-size:clamp(2.25rem,8vw,4.8rem)}
h2{font-size:clamp(1.65rem,5vw,2.5rem)}
h3{font-size:1.2rem}
.lsh-skip{position:absolute;left:12px;top:-80px;z-index:20;background:var(--lsh-ink);color:#fff;padding:12px 16px;border-radius:10px}
.lsh-hero{position:relative;overflow:hidden;padding:64px 0 72px;background:linear-gradient(145deg,#f8fcff 0%,#e8f6ff 68%,#fff8d6 100%)}
.lsh-hero:after{content:"";position:absolute;width:220px;height:220px;border:38px solid rgba(255,216,77,.45);border-radius:50%;right:-90px;top:-85px}
.lsh-hero-grid{position:relative;z-index:1;display:grid;gap:32px}
.lsh-kicker{margin:0 0 12px;color:var(--lsh-blue-dark);font-size:.82rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.lsh-lead{max-width:760px;font-size:clamp(1.12rem,3vw,1.4rem);color:#334f68}
.lsh-updated{color:var(--lsh-muted);font-size:.88rem}
.lsh-disclosure{margin:24px 0;padding:14px 17px;border:1px solid #e6c340;border-radius:var(--lsh-radius);background:var(--lsh-yellow-soft);font-size:.9rem}
.lsh-disclosure strong{display:block;color:#5b4800}
.lsh-finder{max-width:680px;padding:20px;border:1px solid #b8dafa;border-radius:var(--lsh-radius);background:#fff;box-shadow:var(--lsh-shadow)}
.lsh-finder label{display:block;margin-bottom:8px;font-weight:850}
.lsh-finder-row{display:grid;gap:10px}
.lsh-finder select,.lsh-finder button{width:100%;min-height:48px;border-radius:11px;font:inherit}
.lsh-finder select{border:1px solid #9db7cb;background:#fff;padding:0 13px;color:var(--lsh-ink)}
.lsh-finder button,.lsh-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 18px;border:0;border-radius:11px;background:var(--lsh-blue);color:#fff;font-weight:850;text-decoration:none;cursor:pointer}
.lsh-finder button:hover,.lsh-button:hover{background:var(--lsh-blue-dark);color:#fff}
.lsh-section{padding:64px 0}
.lsh-section-soft{background:var(--lsh-soft)}
.lsh-section-head{max-width:760px;margin-bottom:24px}
.lsh-course-grid{display:grid;gap:18px}
.lsh-course{position:relative;padding:26px;border:1px solid var(--lsh-line);border-radius:var(--lsh-radius);background:#fff;box-shadow:var(--lsh-shadow)}
.lsh-course-index{display:grid;place-items:center;width:42px;height:42px;margin-bottom:18px;border-radius:50%;background:var(--lsh-blue);color:#fff;font-weight:900;font-variant-numeric:tabular-nums}
.lsh-course-meta{color:var(--lsh-muted);font-size:.88rem;font-weight:750}
.lsh-path{list-style:none;margin:0;padding:0;display:grid;gap:0}
.lsh-path li{position:relative;padding:0 0 30px 64px}
.lsh-path li:not(:last-child):before{content:"";position:absolute;left:21px;top:44px;bottom:0;width:3px;background:#b8dcf8}
.lsh-path-num{position:absolute;left:0;top:0;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--lsh-blue);color:#fff;font-weight:900}
.lsh-featured-grid,.lsh-state-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.lsh-featured{display:block;padding:20px;border:1px solid var(--lsh-line);border-radius:var(--lsh-radius);background:#fff;text-decoration:none}
.lsh-featured span{display:block}
.lsh-featured-index{color:var(--lsh-blue);font-weight:900}
.lsh-featured-type{font-weight:850;color:var(--lsh-ink)}
.lsh-featured-pick{margin-top:12px;color:var(--lsh-muted);font-size:.9rem}
.lsh-featured-label{display:inline-block!important;margin-top:8px;padding:3px 9px;border-radius:999px;background:var(--lsh-yellow-soft);color:#604c00;font-size:.76rem;font-weight:850}
.lsh-method{display:grid;gap:24px;padding:28px;border-radius:var(--lsh-radius);background:var(--lsh-ink);color:#fff}
.lsh-method .lsh-kicker{color:#8ed0ff}
.lsh-method ol{margin:0;padding-left:22px}
.lsh-method a{color:#fff}
.lsh-state-grid a{display:flex;align-items:center;min-height:44px;padding:8px 12px;border:1px solid var(--lsh-line);border-radius:10px;background:#fff;color:var(--lsh-ink);font-weight:750;text-decoration:none}
.lsh-state-grid a:hover{border-color:var(--lsh-blue);background:var(--lsh-blue-soft)}
@media(min-width:680px){
.lsh-finder-row{grid-template-columns:1fr auto}.lsh-finder button{width:auto;min-width:120px}
.lsh-course-grid{grid-template-columns:repeat(3,1fr)}
.lsh-featured-grid{grid-template-columns:repeat(3,1fr)}
.lsh-state-grid{grid-template-columns:repeat(4,1fr)}
.lsh-footer-grid{grid-template-columns:repeat(3,1fr)}
}
@media(min-width:960px){
.lsh-hero{padding:88px 0}.lsh-hero-grid{grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);align-items:end}
.lsh-path{grid-template-columns:repeat(3,1fr);gap:24px}.lsh-path li{padding:64px 20px 20px;border:1px solid var(--lsh-line);border-radius:var(--lsh-radius);background:#fff}.lsh-path li:before{display:none}.lsh-path-num{left:20px;top:16px}
.lsh-method{grid-template-columns:.8fr 1.2fr;align-items:start}
.lsh-state-grid{grid-template-columns:repeat(5,1fr)}
}
