.learn-screen{flex-direction:column;flex:1;display:flex}@media (prefers-reduced-motion:no-preference){.learn-screen{animation:learn-screen-in .24s var(--motion-ease) both}}@keyframes learn-screen-in{0%{opacity:0;transform:translateY(8px)}}.learn-progress-fill{transform:scaleX(var(--fill,0));transform-origin:0}@media (prefers-reduced-motion:no-preference){.learn-progress-fill{transition:transform .36s var(--motion-ease)}}html[data-js] .learn-reading{display:none}
.learn-term-card{top:calc(var(--drop,100%) + 8px);z-index:20;border:1px solid var(--line-strong);background:var(--paper);width:max-content;max-width:min(320px,100vw - 32px);color:var(--ink);font:400 15px/22px var(--font-geist-sans), system-ui, sans-serif;letter-spacing:0;text-align:left;text-transform:none;white-space:normal;transform:translateX(var(--shift,0px));border-radius:3px;padding:12px 14px;display:block;position:absolute;left:0}
.code-body{font:400 13px/20px var(--font-geist-mono), ui-monospace, monospace;tab-size:2;margin:0;padding:10px 0;overflow-x:auto}.code-lines{width:max-content;min-width:100%;display:block}.code-row{white-space:pre;padding-right:16px;display:block}.code-row:before{content:attr(data-line);width:3em;color:var(--muted);text-align:right;-webkit-user-select:none;user-select:none;margin-right:1.25em;display:inline-block}.code-row[data-marked]{background:var(--surface);box-shadow:inset 2px 0 0 var(--accent)}.code-gap{color:var(--muted);-webkit-user-select:none;user-select:none;padding-left:4.25em;display:block}.terminal-body{font:400 13px/20px var(--font-geist-mono), ui-monospace, monospace;margin:0;padding:10px 16px;overflow-x:auto}.terminal-line{white-space:pre;display:block}.terminal-prompt{color:var(--muted);-webkit-user-select:none;user-select:none;margin-right:.75em}.terminal-note{color:var(--muted);overflow-wrap:anywhere;padding:0 16px 10px;font-size:14px;line-height:20px}.terminal-output{border-top:1px solid var(--line);padding:10px 16px 12px}.terminal-output-label{color:var(--muted);font:400 12px/18px var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.04em}.terminal-output-text{color:var(--muted);font:400 13px/20px var(--font-geist-mono), ui-monospace, monospace;margin:6px 0 0;overflow-x:auto}.numbers-row{border-block:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.numbers-cell{flex-direction:column-reverse;justify-content:flex-end;gap:6px;padding:16px 16px 18px 0;display:flex}.numbers-cell:only-child{grid-column:1/-1}.numbers-cell dt{overflow-wrap:anywhere}.numbers-cell:nth-child(2n){border-left:1px solid var(--line);padding-left:16px}.numbers-cell:nth-child(n+3){border-top:1px solid var(--line)}@media (max-width:639px){.numbers-cell:nth-child(2n){padding-right:0}.numbers-row[data-stack]{grid-template-columns:minmax(0,1fr)}.numbers-row[data-stack] .numbers-cell{border-left:0;padding-left:0}.numbers-row[data-stack] .numbers-cell+.numbers-cell{border-top:1px solid var(--line)}}@media (min-width:640px){.numbers-row{grid-template-columns:repeat(var(--cells), minmax(0, 1fr))}.numbers-cell:nth-child(n){border-top:0}.numbers-cell+.numbers-cell{border-left:1px solid var(--line);padding-left:16px}}.numbers-list{border-block:1px solid var(--line)}.numbers-item{gap:2px;padding:12px 0;display:grid}.numbers-item+.numbers-item{border-top:1px solid var(--line)}.numbers-item-value{overflow-wrap:anywhere}@media (min-width:640px){.numbers-item{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:baseline;column-gap:24px}}.diagram-pan{overscroll-behavior-x:contain;padding:16px 0;overflow:auto hidden}.diagram-window{transition:height var(--motion-hover) var(--motion-ease);margin-inline:auto;overflow:hidden}@media (prefers-reduced-motion:reduce){.diagram-window{transition:none}}.drawing-card-mark{color:var(--muted);font:400 12px/18px var(--font-mono);letter-spacing:.06em;text-transform:uppercase;margin-left:auto}.drawing-card-zoom{color:var(--muted);text-decoration:underline;-webkit-text-decoration-color:var(--line-strong);text-decoration-color:var(--line-strong);text-underline-offset:4px;transition:color var(--motion-quick) ease;font-size:14px;line-height:20px}.drawing-card-zoom:hover{color:var(--ink);-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}.diagram-canvas>svg{width:100%;height:100%;display:block}.diagram-canvas g[data-hidden]{visibility:hidden}.diagram-canvas [data-new] [data-draw]{stroke-dasharray:var(--len);stroke-dashoffset:var(--len)}.diagram-canvas [data-new] [data-fade]{opacity:0}.diagram-canvas[data-drawn] [data-new] [data-draw]{stroke-dashoffset:0;transition:stroke-dashoffset var(--pen-draw) var(--motion-ease);transition-delay:calc(var(--draw-order) * var(--pen-stagger))}.diagram-canvas[data-drawn] [data-new] [data-fade]{opacity:1;transition:opacity var(--pen-fade) ease;transition-delay:calc(var(--draw-order) * var(--pen-stagger) + var(--pen-fade-delay))}@media (prefers-reduced-motion:reduce){.diagram-canvas [data-new] [data-draw]{stroke-dashoffset:0}.diagram-canvas [data-new] [data-fade]{opacity:1}.diagram-canvas *{transition:none!important}}
.sources-panel:not([hidden]){animation:sources-in var(--motion-quick) var(--motion-ease)}@keyframes sources-in{0%{opacity:0;transform:translateY(-4px)}}@media (prefers-reduced-motion:reduce){.sources-panel:not([hidden]){animation:none}}
.choice-list{border:0;min-width:0;margin:0;padding:0}.choice-row{border-top:1px solid var(--line);color:var(--ink);cursor:pointer;align-items:flex-start;gap:14px;padding:14px 4px;font-size:17px;line-height:26px;display:flex}.choice-row:last-of-type{border-bottom:1px solid var(--line)}.choice-list:disabled .choice-row{cursor:default}.choice-list[data-side-by-side=row]{grid-template-columns:repeat(var(--choices), minmax(0, 1fr));border-block:1px solid var(--line);display:grid}.choice-list[data-side-by-side=row] .choice-row{border-top:0;border-bottom:0}.choice-list[data-side-by-side=row] .choice-row+.choice-row{border-left:1px solid var(--line);padding-left:16px}@media (min-width:640px){.choice-list[data-side-by-side=row-from-640]{grid-template-columns:repeat(var(--choices), minmax(0, 1fr));border-block:1px solid var(--line);display:grid}.choice-list[data-side-by-side=row-from-640] .choice-row{border-top:0;border-bottom:0}.choice-list[data-side-by-side=row-from-640] .choice-row+.choice-row{border-left:1px solid var(--line);padding-left:16px}}.choice-row:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.choice-letter{border:1px solid var(--line-strong);width:26px;height:26px;color:var(--muted);font:400 12px/1 var(--font-geist-mono), ui-monospace, monospace;transition:background-color var(--motion-quick) ease, border-color var(--motion-quick) ease, color var(--motion-quick) ease;border-radius:2px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.choice-row:hover .choice-letter{border-color:var(--ink);color:var(--ink)}.choice-list:disabled .choice-row:hover .choice-letter{border-color:var(--line-strong);color:var(--muted)}.choice-row[data-picked] .choice-letter,.choice-list:disabled .choice-row[data-picked]:hover .choice-letter{border-color:var(--ink);background:var(--ink);color:var(--on-ink)}.choice-text{min-width:0;padding-top:0}.choice-answer{color:var(--accent);font:400 12px/1 var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;margin-left:8px}.field-input:disabled{border-color:var(--line-strong);background:var(--surface);color:var(--ink);opacity:1}.field-number{width:11rem;font:400 20px/1 var(--font-geist-mono), ui-monospace, monospace}.field-text{width:100%;font-size:17px;line-height:26px}.field-code{font:400 17px/26px var(--font-geist-mono), ui-monospace, monospace}textarea.field-text{height:auto;font:400 14px/20px var(--font-geist-mono), ui-monospace, monospace;resize:vertical;padding:12px 16px}.field-label{color:var(--ink);margin-bottom:8px;font-size:15px;line-height:22px;display:block}.field-error{color:var(--ink);margin-top:8px;font-size:15px;line-height:22px}.order-list{border-top:1px solid var(--line)}.order-row{border-bottom:1px solid var(--line);color:var(--ink);align-items:center;gap:14px;padding:8px 0 8px 4px;font-size:17px;line-height:26px;display:flex}.order-number{width:26px;color:var(--muted);font:400 12px/1 var(--font-geist-mono), ui-monospace, monospace;flex-shrink:0}.order-text{flex:1;min-width:0}.order-mark{color:var(--muted);font:400 12px/18px var(--font-geist-mono), ui-monospace, monospace;letter-spacing:.06em;text-transform:uppercase;display:block}
.chapter-actions[data-returning] [data-default]{visibility:hidden}@media (prefers-reduced-motion:no-preference){.unit-state{animation:unit-state-in .24s var(--motion-ease) both}}@keyframes unit-state-in{0%{opacity:0}}
