:root{--page: #ffffff;--soft: #f3f6fc;--card: #ffffff;--sunken: #eef2f9;--ink: #0f1b33;--muted: #53607a;--line: #e1e7f1;--line-strong: #c6d0e0;--primary: #1f4fd8;--primary-hover: #173fb4;--primary-ink: #ffffff;--primary-soft: #e8eefd;--link: #1f4fd8;--green: #0a7f5f;--green-soft: #e0f4ec;--amber: #f2a31b;--amber-ink: #2a1c02;--bad: #b3261e;--deep: #0f2257;--deep-raised: #1a3275;--deep-ink: #ffffff;--deep-muted: #c4d1f2;--deep-line: rgba(255, 255, 255, .18);--route-line: #b9c6dc;--route-lit: #1f4fd8;--stop-fill: #ffffff;--stop-edge: #9fb0cb;--stop-ink: #0f1b33;--shadow-sm: 0 1px 2px rgba(15, 27, 51, .06);--shadow-lg: 0 1px 2px rgba(15, 27, 51, .06), 0 18px 40px -18px rgba(23, 63, 180, .28);--font: "IBM Plex Sans Hebrew", "Assistant", system-ui, sans-serif;color-scheme:light}:root[data-theme=dark]{--page: #0f1216;--soft: #15191f;--card: #171b21;--sunken: #20252d;--ink: #e8eaee;--muted: #a1a8b3;--line: #2a2f38;--line-strong: #414854;--primary: #7ea2ff;--primary-hover: #a3bdff;--primary-ink: #0f1216;--primary-soft: #1d2740;--link: #a3bdff;--green: #4fd1a5;--green-soft: #123a33;--bad: #ff9d94;--deep: #16285e;--deep-raised: #223a80;--route-line: #46587a;--route-lit: #7ea2ff;--stop-fill: #171b21;--stop-edge: #5f7396;--stop-ink: #e8eaee;--shadow-sm: none;--shadow-lg: 0 18px 40px -18px rgba(0, 0, 0, .6);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}html,body,#root{min-height:100%}body{margin:0;background:var(--page);color:var(--ink);font-family:var(--font);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}button{font:inherit}:focus-visible{outline:3px solid var(--link);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.shell{display:flex;min-height:100vh;flex-direction:column}.wrap{width:100%;max-width:1200px;margin-inline:auto;padding-inline:24px}.page{padding-block:40px 72px}.bar{position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line);background:var(--card)}.bar-inner{display:flex;align-items:center;gap:12px;min-height:72px}.wordmark{display:inline-flex;align-items:center;gap:10px;border:0;background:none;color:var(--ink);cursor:pointer;padding:4px 0}.wordmark-mark{flex-shrink:0}.wordmark-mark rect{fill:var(--primary)}.wordmark-mark path{stroke:var(--primary-ink);stroke-width:2.4;stroke-linecap:round}.wordmark-mark circle{fill:var(--amber)}.wordmark-name{font-size:20px;font-weight:700;letter-spacing:-.01em}.wordmark-by{color:var(--muted);font-size:14px}.bar-nav{display:flex;gap:2px;margin-inline-start:24px}.bar-actions{display:flex;align-items:center;gap:6px;margin-inline-start:auto}.main{display:flex;flex:1;flex-direction:column}.foot{border-top:1px solid var(--line);background:var(--card);color:var(--muted);font-size:14px}.foot-inner{display:flex;justify-content:space-between;gap:12px;padding-block:24px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border:1px solid var(--line-strong);border-radius:10px;background:var(--card);color:var(--ink);cursor:pointer;font-weight:600;padding:8px 18px;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.btn:hover:not(:disabled){border-color:var(--ink)}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{border-color:var(--primary);background:var(--primary);color:var(--primary-ink)}.btn-primary:hover:not(:disabled){border-color:var(--primary-hover);background:var(--primary-hover)}.btn-on-deep{border-color:var(--deep-ink);background:var(--deep-ink);color:#0f2257}.btn-on-deep:hover:not(:disabled){border-color:var(--deep-muted);background:var(--deep-muted)}.btn-ghost{background:transparent}.btn-subtle{border-color:transparent;background:transparent;color:var(--muted)}.btn-subtle:hover:not(:disabled){border-color:transparent;background:var(--sunken);color:var(--ink)}.btn-icon{width:44px;padding:0}.btn-sm{min-height:36px;border-radius:8px;padding:4px 14px;font-size:15px}.btn-lg{min-height:54px;padding:10px 28px;font-size:18px}.muted{color:var(--muted)}.keep-line{white-space:nowrap}.error-text{margin:0;color:var(--bad);font-weight:600}.section{scroll-margin-top:88px;padding-block:88px}.section-soft{background:var(--soft)}.section-head{max-width:760px;margin-bottom:40px}.section-title{margin:0;font-size:clamp(30px,3.6vw,40px);font-weight:700;letter-spacing:-.01em;line-height:1.2}.section-lead{margin:12px 0 0;color:var(--muted);font-size:19px}.route{position:relative}.route-rail{position:absolute;inset-block-start:0;inset-inline-start:0;pointer-events:none}.route-path{fill:none;stroke:var(--route-line);stroke-width:2.5;stroke-linecap:round;transition:stroke .18s ease,opacity .18s ease}.route-path.is-lit{stroke:var(--route-lit);stroke-width:3}.route-path.is-off{opacity:.25}.route-draw .route-path{stroke-dasharray:1;animation:route-draw .9s ease-out both}@keyframes route-draw{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}.route-stop circle{fill:var(--stop-fill);stroke:var(--stop-edge);stroke-width:2;transition:fill .18s ease,stroke .18s ease,opacity .18s ease}.route-stop text{fill:var(--stop-ink);font-family:var(--font);font-size:12px;font-weight:700;transition:fill .18s ease,opacity .18s ease}.route-stop.is-off circle,.route-stop.is-off text{opacity:.3}.route-stop.is-lit circle{fill:var(--route-lit);stroke:var(--route-lit)}.route-stop.is-lit text{fill:var(--primary-ink)}.route-stop.is-partly circle{fill:var(--stop-fill);stroke:var(--green);stroke-width:3}.route-stop.is-partly text{fill:var(--stop-ink)}.route-stop.is-done circle{fill:var(--green);stroke:var(--green)}.route-stop.is-done text{fill:var(--card)}.route-stop.is-now circle{fill:var(--amber);stroke:var(--amber)}.route-stop.is-now text{fill:var(--amber-ink)}.route-rows{margin:0;padding:0;list-style:none}.route-row,.route-part{display:flex;height:var(--route-row);align-items:center;padding-inline-start:calc(var(--route-rail) + 10px)}.route-part{color:var(--muted);font-size:14px;font-weight:600}.route-title{display:-webkit-box;overflow:hidden;font-size:15.5px;font-weight:500;line-height:1.25;transition:opacity .18s ease;-webkit-box-orient:vertical;-webkit-line-clamp:2}.route-row.is-off .route-title{opacity:.42}.route-button{width:100%;border:0;border-radius:6px;background:none;color:inherit;cursor:pointer;padding:2px 4px;text-align:start}.route-button:hover{background:var(--sunken)}.hero{border-bottom:1px solid var(--line);background:var(--soft)}.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,520px);gap:64px;align-items:center;padding-block:72px 0}.hero-title{margin:0;font-size:clamp(38px,4.8vw,60px);font-weight:700;letter-spacing:-.015em;line-height:1.14}.hero-lead{max-width:33em;margin:24px 0 0;color:var(--muted);font-size:20px;line-height:1.6}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.hero-points{display:flex;flex-wrap:wrap;gap:8px 24px;margin:24px 0 0;padding:0;color:var(--muted);font-size:16px;list-style:none}.check-item{display:flex;align-items:flex-start;gap:8px}.check{flex-shrink:0;margin-top:.3em;fill:none;stroke:var(--green);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.hero-closed{margin:0;color:var(--muted)}.map-panel{border:1px solid var(--line);border-radius:18px;background:var(--card);box-shadow:var(--shadow-lg);padding:20px 20px 12px}.map-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:2px 16px;margin-bottom:12px}.map-title{margin:0;font-size:18px;font-weight:700}.map-size{color:var(--muted);font-size:15px}.route-filter{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.chip{min-height:36px;border:1px solid var(--line-strong);border-radius:999px;background:var(--card);color:var(--ink);cursor:pointer;font-size:15px;font-weight:500;padding:3px 14px;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.chip:hover{border-color:var(--primary)}.chip[aria-pressed=true]{border-color:var(--primary);background:var(--primary);color:var(--primary-ink)}.figures-bar{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:56px 0 -48px;border:1px solid var(--line);border-radius:16px;background:var(--card);box-shadow:var(--shadow-sm)}.figure{display:flex;flex-direction:column-reverse;gap:2px;padding:20px 28px}.figure+.figure{border-inline-start:1px solid var(--line)}.figure-value{margin:0;font-size:36px;font-weight:700;letter-spacing:-.01em;line-height:1.1}.figure-label{color:var(--muted);font-size:16px}.section-after-bar{padding-top:136px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin:0;padding:0;list-style:none}.step{position:relative}.step:not(:last-child):after{content:"";position:absolute;inset-block-start:19px;inset-inline:56px -28px;height:2px;background:var(--line)}.step-num{display:flex;width:40px;height:40px;align-items:center;justify-content:center;border-radius:50%;background:var(--primary-soft);color:var(--primary);font-weight:700}.step-title{margin:16px 0 4px;font-size:21px;font-weight:700}.step-body{max-width:30em;margin:0;color:var(--muted)}.parts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;align-items:start}.part+.part{margin-top:32px}.parts .part+.part{margin-top:0}.part-head{margin-bottom:14px}.part-order{margin:0;color:var(--primary);font-size:15px;font-weight:600}.part-title{margin:0;font-size:22px;font-weight:700;line-height:1.3}.part-meta{margin:2px 0 0;color:var(--muted);font-size:15px}.part-rest{margin-top:12px}.plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.plan{display:flex;flex-direction:column;align-items:flex-start;border:1px solid var(--line);border-radius:18px;background:var(--card);box-shadow:var(--shadow-sm);padding:32px}.plan-full{border-color:var(--deep);background:var(--deep);color:var(--deep-ink)}.plan-name{margin:0;font-size:20px;font-weight:700}.plan-figure{margin:8px 0 20px;font-size:30px;font-weight:700;line-height:1.2}.plan-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.plan-full .check{stroke:#7fe3c0}.plan .btn{margin-top:28px}.closing{background:var(--deep);color:var(--deep-ink)}.closing-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;padding-block:56px}.closing-title{margin:0 0 6px;font-size:clamp(26px,3vw,34px);font-weight:700;line-height:1.2}.closing-body{margin:0;color:var(--deep-muted)}.modules{display:grid;gap:10px;margin:0;padding:0;list-style:none}.module{overflow:hidden;scroll-margin-top:96px;border:1px solid var(--line);border-radius:12px;background:var(--card)}.module-focus{border-inline-start:4px solid var(--route-lit)}.module-head{display:flex;align-items:center;gap:12px;cursor:pointer;list-style:none;padding:14px 16px}.module-head::-webkit-details-marker{display:none}.module-head:hover{background:var(--soft)}.module-head:focus-visible{outline-offset:-3px}.module-num{display:flex;width:32px;height:32px;flex-shrink:0;align-items:center;justify-content:center;border-radius:8px;background:var(--primary-soft);color:var(--primary);font-size:15px;font-weight:700}.module-num.is-done{background:var(--green);color:var(--card)}.module-main{flex:1;min-width:0}.module-title{margin:0;font-size:17px;font-weight:600;line-height:1.35}.module-bar{display:block;height:4px;overflow:hidden;margin-top:8px;border-radius:999px;background:var(--sunken)}.module-bar span{display:block;height:100%;border-radius:999px;background:var(--green)}.module-count{flex-shrink:0;color:var(--muted);font-size:15px}.module-chevron{flex-shrink:0;fill:none;stroke:var(--muted);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .15s ease}details[open]>.module-head .module-chevron{transform:rotate(180deg)}.lessons{margin:0;border-top:1px solid var(--line);padding:0;list-style:none}.lessons li+li{border-top:1px solid var(--line)}.lesson-row{display:flex;width:100%;align-items:center;gap:12px;border:0;background:none;color:var(--ink);font-size:16px;padding:11px 16px;text-align:start}button.lesson-row{cursor:pointer}button.lesson-row:hover{background:var(--soft)}button.lesson-row:focus-visible{outline-offset:-3px}.lesson-title{flex:1}.lesson-mark{flex-shrink:0}.lesson-mark.is-done circle{fill:var(--green)}.lesson-mark.is-done path{fill:none;stroke:var(--card);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.lesson-mark.is-open circle{fill:none;stroke:var(--green);stroke-width:1.8}.lesson-mark.is-open path{fill:var(--green)}.lesson-mark.is-locked rect{fill:var(--line-strong)}.lesson-mark.is-locked path{fill:none;stroke:var(--line-strong);stroke-width:1.8}.tag{display:inline-flex;flex-shrink:0;align-items:center;border-radius:6px;background:var(--sunken);color:var(--muted);font-size:13px;font-weight:600;padding:2px 8px;white-space:nowrap}.tag-free,.tag-done{background:var(--green-soft);color:var(--green)}.tag-full{background:var(--primary-soft);color:var(--primary)}.directions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none}.direction{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:14px;background:var(--card);box-shadow:var(--shadow-sm);padding:24px}.direction-chosen{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.direction-title{margin:0;font-size:21px;font-weight:700;line-height:1.3}.direction-body{margin:4px 0 0;color:var(--muted)}.direction-modules{margin:16px 0 0;border-top:1px solid var(--line);padding:12px 0 0;font-size:16px;list-style:none}.direction-modules li{display:flex;gap:10px;padding-block:3px}.direction-num{min-width:22px;color:var(--primary);font-weight:700}.direction-action{align-self:flex-start;margin-top:16px}.dash-section .btn-subtle{margin-top:8px}.auth-page{flex:1;background:var(--soft)}.auth{display:flex;max-width:480px;flex-direction:column;gap:12px}.auth-title{margin:0;font-size:34px;font-weight:700;line-height:1.2}.auth>.muted{margin:0 0 8px}.form{display:flex;flex-direction:column;gap:16px;border:1px solid var(--line);border-radius:16px;background:var(--card);box-shadow:var(--shadow-sm);padding:28px}.auth-sent{margin:0}.btn-google{gap:12px;font-size:17px}.form-or{display:flex;align-items:center;gap:12px;margin:0;color:var(--muted);font-size:15px}.form-or:before,.form-or:after{content:"";flex:1;height:1px;background:var(--line)}.field{display:flex;flex-direction:column;gap:6px;font-size:15px;font-weight:600}.field input{min-height:48px;border:1px solid var(--line-strong);border-radius:10px;background:var(--card);color:var(--ink);font:inherit;font-weight:400;padding:8px 12px}.field input:focus{border-color:var(--link);outline:2px solid var(--link);outline-offset:0}.field small{font-weight:400}.learn{display:grid;min-height:100vh;grid-template-columns:264px minmax(0,1fr);background:var(--deep)}.rail{position:sticky;top:0;display:flex;height:100vh;flex-direction:column;gap:20px;overflow-y:auto;background:var(--deep);color:var(--deep-ink);padding:20px 14px}.rail-brand{padding-inline:10px}.rail .wordmark{color:var(--deep-ink)}.rail .wordmark-by{display:none}.rail-nav{display:grid;gap:2px}.rail-link{display:flex;min-height:46px;align-items:center;gap:12px;border:0;border-inline-start:3px solid transparent;border-radius:6px;background:none;color:var(--deep-muted);cursor:pointer;font-weight:500;padding:8px 10px;text-align:start}.rail-link svg{flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.rail-link:hover{background:var(--deep-raised);color:var(--deep-ink)}.rail-link[aria-current=page]{border-inline-start-color:var(--amber);background:var(--deep-raised);color:var(--deep-ink);font-weight:600}.rail :focus-visible{outline-color:var(--deep-ink)}.rail-progress{margin-top:auto;border-top:1px solid var(--deep-line);padding:16px 10px 0}.rail-progress-text{display:flex;justify-content:space-between;gap:12px;margin:0 0 8px;color:var(--deep-muted);font-size:13px;line-height:1.4}.rail-bar{display:block;height:6px;overflow:hidden;background:var(--deep-raised)}.rail-bar span{display:block;height:100%;background:#7fe3c0}.rail-account{border-top:1px solid var(--deep-line);padding:14px 10px 0}.rail-name{overflow:hidden;margin:0;font-size:15px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.rail-access{margin:0 0 8px;color:var(--deep-muted);font-size:13px}.rail-actions{display:flex;align-items:center;gap:4px;margin-inline-start:-10px}.rail-actions .btn-subtle{color:var(--deep-muted)}.rail-actions .btn-subtle:hover:not(:disabled){background:var(--deep-raised);color:var(--deep-ink)}.learn-main{min-width:0;background:var(--soft)}.tabs{display:none}.learn-page{display:grid;width:100%;max-width:1120px;gap:20px;margin-inline:auto;padding:28px 32px 64px}.dash{font-variant-numeric:tabular-nums}.dash-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:2px 16px}.dash-title{margin:0;font-size:28px;font-weight:700;letter-spacing:-.01em;line-height:1.25}.dash-sub{margin:0;color:var(--muted);font-size:15px}.resume-band{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:center;border-radius:8px;background:var(--deep);color:var(--deep-ink);padding:32px}.resume-copy{min-width:0}.next-label{margin:0;color:var(--deep-muted);font-size:15px;font-weight:500}.next-title{margin:6px 0 0;font-size:clamp(24px,3vw,34px);font-weight:700;letter-spacing:-.01em;line-height:1.2}.next-module{margin:8px 0 0;color:var(--deep-muted);font-size:16px}.resume-action{display:flex;flex-direction:column;align-items:stretch;gap:8px;text-align:center}.resume-note{margin:0;color:var(--deep-muted);font-size:14px;line-height:1.4}.panel{min-width:0;border:1px solid var(--line);border-radius:8px;background:var(--card);padding:20px}.panel-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:2px 16px;margin-bottom:14px}.panel-title{margin:0;font-size:17px;font-weight:600;line-height:1.35}.panel-side{margin:0;color:var(--muted);font-size:14px}.panel-note{margin:4px 0 0;color:var(--muted);font-size:14px}.prompt{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;border:1px solid var(--primary);border-radius:8px;background:var(--primary-soft);padding:16px 20px}.dash-pair{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:20px;align-items:stretch}.strip-modules{display:grid;grid-template-columns:repeat(auto-fit,minmax(56px,1fr));gap:12px 8px;margin:0;padding:0;list-style:none}.strip-module.is-off{opacity:.45}.strip-cells{display:flex;gap:3px}.strip-cell{min-width:0;height:44px;flex:1;border:0;border-radius:2px;background:var(--sunken);cursor:pointer;padding:0}.strip-cell:hover{box-shadow:inset 0 0 0 2px var(--ink)}.strip-num{display:block;margin-top:4px;color:var(--muted);font-size:13px;text-align:center}.strip-legend{display:flex;flex-wrap:wrap;gap:4px 20px;margin:14px 0 0;padding:0;color:var(--muted);font-size:14px;list-style:none}.strip-legend li{display:flex;align-items:center;gap:6px}.strip-swatch{width:14px;height:14px;border-radius:2px}.strip-cell.is-done,.strip-swatch.is-done{background:var(--green)}.strip-cell.is-now,.strip-swatch.is-now{background:var(--amber)}.strip-cell.is-open,.strip-swatch.is-open{background:var(--primary-soft);box-shadow:inset 0 0 0 1px var(--primary)}.strip-cell.is-open:hover{box-shadow:inset 0 0 0 2px var(--primary)}.strip-cell.is-locked,.strip-swatch.is-locked{background:var(--sunken);box-shadow:inset 0 0 0 1px var(--line-strong)}.strip-swatch.is-dim{opacity:.45}.queue{margin:-6px -20px -20px;padding:0;list-style:none}.queue li+li{border-top:1px solid var(--line)}.queue-row{display:flex;width:100%;align-items:center;gap:12px;border:0;background:none;color:var(--ink);cursor:pointer;padding:11px 20px;text-align:start}.queue-row:hover{background:var(--soft)}.queue-row:focus-visible{outline-offset:-3px}.queue-copy{display:grid;min-width:0;flex:1}.queue-title{font-size:16px;font-weight:500;line-height:1.4}.queue-module,.queue-date{color:var(--muted);font-size:14px}.queue-date{flex-shrink:0}.activity-week{display:flex;align-items:baseline;gap:8px;margin:0 0 12px}.activity-figure{font-size:32px;font-weight:700;line-height:1.1}.activity-label{color:var(--muted);font-size:14px}.activity-days{display:grid;height:72px;grid-template-columns:repeat(14,minmax(0,1fr));gap:4px;align-items:end;margin:0;border-bottom:1px solid var(--line-strong);padding:0;list-style:none}.activity-day{position:relative;display:flex;height:100%;align-items:flex-end}.activity-bar{width:100%;height:2px;background:var(--line)}.activity-bar.has-lessons{background:var(--green)}.activity-axis{display:flex;justify-content:space-between;margin:4px 0 0;color:var(--muted);font-size:13px}.tally{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0;border:1px solid var(--line);border-radius:8px;background:var(--card)}.tally-item{display:flex;flex-direction:column-reverse;justify-content:flex-end;gap:2px;padding:16px 20px}.tally-item+.tally-item{border-inline-start:1px solid var(--line)}.stat-label{color:var(--muted);font-size:14px;line-height:1.35}.stat-value{margin:0;font-size:32px;font-weight:700;line-height:1.2;text-align:end}.rows{display:grid;margin:-6px 0 0;padding:0;list-style:none}.row{display:grid;width:100%;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;align-items:baseline;border:0;background:none;color:var(--ink);font-size:15px;padding:9px 0;text-align:start}.row-button{cursor:pointer}.row-button:hover .row-title{color:var(--primary)}.row-num{display:inline-block;min-width:26px;color:var(--muted)}.row-count{color:var(--muted);font-size:14px}.meter{display:block;height:6px;overflow:hidden;grid-column:1 / -1;background:var(--sunken)}.meter span{display:block;height:100%;background:var(--green)}.player-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.player-at{color:var(--muted);font-size:14px}.player-body{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px;align-items:start}.player-body .lesson{min-width:0;max-width:none;border:1px solid var(--line);border-radius:8px;background:var(--card);padding:28px}.player-body .lesson-heading{font-size:clamp(24px,2.6vw,30px)}.player-side .modules{max-height:calc(100vh - 150px);overflow-y:auto}.lesson-row.is-current{background:var(--primary-soft);box-shadow:inset 3px 0 0 var(--primary);font-weight:600}:root[dir=rtl] .lesson-row.is-current{box-shadow:inset -3px 0 0 var(--primary)}.dash .player-side .lesson-row{padding-inline:16px}.dash-body{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}.dash-main{display:grid;gap:32px;min-width:0}.dash-main .section-title{margin-bottom:12px;font-size:16px;font-weight:600}.dash-main .section-lead{max-width:none;margin:-6px 0 12px;color:var(--muted);font-size:15px}.dash-section .part:last-child{margin-bottom:0}.dash .part-head{margin-bottom:8px}.dash .part-title{color:var(--muted);font-size:14px;font-weight:500}.dash .modules{gap:0;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--card)}.dash .module{border:0;border-radius:0}.dash .module+.module{border-top:1px solid var(--line)}.dash .module-head{padding:12px 16px}.dash .module-num{width:20px;height:auto;justify-content:flex-start;border-radius:0;background:none;color:var(--muted);font-size:14px;font-weight:500}.dash .module-num.is-done{background:none;color:var(--green)}.dash .module-title{font-size:15px}.dash .module-bar{height:2px;margin-top:6px;border-radius:0}.dash .module-bar span{border-radius:0;background:var(--primary)}.dash .module-count{font-size:13px}.dash .lesson-row{gap:10px;font-size:15px;padding-block:9px;padding-inline:48px 16px}.dash .lesson-mark{width:15px;height:15px}.dash .lesson-mark.is-open circle{stroke:var(--line-strong)}.dash .lesson-mark.is-open path{fill:var(--muted)}.dash .tag{border-radius:0;background:none;font-weight:500;padding:0}.directions-rows{display:block;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--card)}.directions-rows .direction{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;border:0;border-radius:0;box-shadow:none;background:none;padding:14px 16px}.directions-rows .direction+.direction{border-top:1px solid var(--line)}.directions-rows .direction-chosen{background:var(--primary-soft)}.directions-rows .direction-title{font-size:15px;font-weight:600}.directions-rows .direction-body{margin-top:2px;font-size:14px}.direction-line{margin:2px 0 0;color:var(--muted);font-size:13px}.directions-rows .direction-action{margin:0}.dash-side{display:grid;gap:16px}.toc-part+.toc-part{margin-top:14px}.toc-part-title{margin:0 0 4px;color:var(--muted);font-size:13px;font-weight:500}.toc-list{margin:0;padding:0;list-style:none}.toc-row{display:grid;width:calc(100% + 16px);grid-template-columns:20px minmax(0,1fr) auto;gap:8px;align-items:baseline;border:0;border-inline-start:2px solid transparent;background:none;color:var(--ink);cursor:pointer;font-family:inherit;font-size:14px;line-height:1.4;margin-inline:-8px;padding:6px 8px;text-align:start}.toc-row:hover{background:var(--soft)}.toc-row:focus-visible{outline-offset:-2px}.toc-num,.toc-count{color:var(--muted);font-size:13px}.toc-row.is-now{border-inline-start-color:var(--primary);background:var(--primary-soft);font-weight:600}.toc-row.is-done .toc-title{color:var(--muted)}.toc-row.is-done .toc-count{color:var(--green)}.toc-row.is-off{opacity:.5}@media(min-height:860px)and (min-width:961px){.dash-side{position:sticky;top:92px}}.side-card{border:1px solid var(--line);border-radius:8px;background:var(--card);padding:16px}.side-label{margin:0;color:var(--muted);font-size:13px;font-weight:500}.side-title{margin:0 0 10px;font-size:16px;font-weight:600;line-height:1.35}.side-card .direction-body{font-size:14px}.side-card .btn{margin-top:12px}.dash .unlock{display:block;border-radius:8px;background:var(--card);padding:16px}.dash .unlock-title{font-size:16px;font-weight:600}.dash .unlock-body{font-size:14px}.dash .unlock-price{font-size:22px;font-weight:500}.dash .unlock-action{max-width:none;margin-top:12px;font-size:14px}.unlock{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--line);border-radius:14px;background:var(--primary-soft);padding:18px 24px}.unlock-title{margin:0;font-size:19px;font-weight:700}.unlock-body{margin:2px 0 0;color:var(--muted)}.unlock-price{margin:8px 0 0;font-size:26px;font-weight:700}.unlock-action{display:flex;max-width:340px;flex-direction:column;gap:8px}.unlock-action p{margin:0}.lesson{max-width:860px}.lesson-module{margin:0 0 6px;color:var(--muted);font-weight:600}.lesson-heading{margin:0 0 24px;font-size:clamp(30px,4vw,40px);font-weight:700;line-height:1.2}.video{position:relative;overflow:hidden;margin-bottom:28px;border-radius:12px;background:#000;aspect-ratio:16 / 9}.video iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.prose{max-width:70ch;font-size:18px;line-height:1.8}.prose h2,.prose h3,.prose h4{margin:1.6em 0 .5em;font-weight:700;line-height:1.25}.prose p,.prose ul,.prose ol{margin:0 0 1em}.prose ul,.prose ol{padding-inline-start:1.4em}.prose a{color:var(--link)}.prose code{border-radius:5px;background:var(--sunken);font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.86em;padding:1px 5px}.prose pre{overflow-x:auto;border-radius:10px;background:var(--sunken);padding:16px;text-align:left}.prose pre code{background:none;padding:0}.locked{border:1px solid var(--line);border-radius:14px;background:var(--card);padding:24px}.locked .unlock{margin-top:20px}.lesson-done{display:flex;align-items:center;gap:12px;margin-top:32px;border-top:1px solid var(--line);padding-top:24px}.lesson-nav{display:flex;justify-content:space-between;gap:12px;margin-top:24px}.note{border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--muted);padding:16px 20px}.note-ok{border-color:var(--green);color:var(--green);font-weight:600}.error-box{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:0;border:1px solid var(--bad);border-radius:12px;color:var(--bad);font-weight:600;padding:14px 18px}.center-note{display:flex;flex-direction:column;align-items:center;gap:16px;padding-block:80px;color:var(--muted)}.spinner{width:18px;height:18px;border:2px solid var(--line-strong);border-top-color:var(--link);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.spinner,.route-draw .route-path{animation:none}.route-draw .route-path{stroke-dasharray:none}}@media(max-width:1040px){.bar-nav{display:none}.hero-grid,.dash-body,.player-body,.parts{grid-template-columns:minmax(0,1fr)}.learn{grid-template-columns:minmax(0,1fr);padding-bottom:68px}.rail{position:static;height:auto;flex-direction:row;flex-wrap:wrap;align-items:center;gap:8px 16px;padding:10px 16px}.rail-brand{padding-inline:0}.rail-nav,.rail-name,.rail-access{display:none}.rail-progress{min-width:0;flex:1 1 100%;order:3;margin:0;border-top:0;padding:0}.rail-account{margin-inline-start:auto;border-top:0;padding:0}.rail-actions{margin:0}.tabs{position:fixed;z-index:20;inset-block-end:0;inset-inline:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--deep);padding:4px 4px max(4px,env(safe-area-inset-bottom))}.tabs .rail-link{min-width:0;flex-direction:column;gap:2px;border-inline-start:0;font-size:12px;line-height:1.25;padding:6px 2px;text-align:center}.tabs .rail-link[aria-current=page]{box-shadow:inset 0 -3px 0 var(--amber)}.player-side .modules{max-height:none}.hero-grid{gap:40px;padding-top:48px}.map-panel{max-width:620px}.figures-bar{margin-top:28px}}@media(max-width:720px){body{font-size:16px}.wrap{padding-inline:16px}.section{padding-block:56px}.section-after-bar{padding-top:104px}.section-head{margin-bottom:28px}.hero-lead,.section-lead{font-size:18px}.hero-actions .btn{flex:1 1 100%}.figures-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.figure{padding:14px 18px}.figure:nth-child(3){border-inline-start:0}.figure:nth-child(n+3){border-top:1px solid var(--line)}.figure-value{font-size:30px}.steps,.plans,.directions{grid-template-columns:minmax(0,1fr)}.steps{gap:24px}.step:not(:last-child):after{display:none}.plan{padding:24px}.learn-page{gap:16px;padding:20px 16px 32px}.resume-band{grid-template-columns:minmax(0,1fr);gap:20px;padding:20px}.dash-pair{grid-template-columns:minmax(0,1fr);gap:16px}.strip-modules{grid-template-columns:repeat(5,minmax(0,1fr))}.strip-cell{height:38px}.tally{grid-template-columns:repeat(2,minmax(0,1fr))}.tally-item:nth-child(3){border-inline-start:0}.tally-item:nth-child(n+3){border-top:1px solid var(--line)}.stat-value{font-size:26px}.player-body .lesson{padding:18px}.dash .lesson-row{padding-inline-start:16px}.bar-actions .btn:not(.btn-icon){padding-inline:12px}.wordmark-by{display:none}}@media(max-width:400px){.wordmark-name{display:none}}
