.learning-practice .intro{margin-bottom:22px}.learning-practice .primary:hover:not(:disabled){background:var(--learning-primary-hover,#104532)!important;border-color:var(--learning-primary-hover,#104532)!important}.learning-practice .primary:active:not(:disabled){background:var(--learning-primary-active,#0d3829)!important}.learning-practice button:disabled{opacity:1;color:var(--control-disabled-ink);background:var(--control-disabled-bg);border-color:var(--line)}.learning-practice .previous-preview{font-size:14px}.learning-practice .topic-tabs{border:0;gap:12px;margin-bottom:24px}.learning-practice .mobile-topic{display:none}.learning-practice button,.learning-practice select,.learning-practice summary{min-height:44px}.learning-practice input{caret-color:var(--accent);font-variant-numeric:tabular-nums}.learning-practice input[type=range]{touch-action:pan-y;width:100%;min-height:44px}.learning-practice input[type=number],.learning-practice input[type=text],.learning-practice select{background:var(--card);border:1px solid var(--control-border);border-radius:10px;max-width:100%;min-height:44px;padding:9px 12px}.learning-practice output{font-variant-numeric:tabular-nums}.learning-practice details summary{cursor:pointer;color:var(--accent);padding-block:10px;font-weight:650}.learning-practice .practice-heading h2{letter-spacing:-.025em;margin:0 0 8px;font-size:26px;font-weight:650;line-height:1.25}.learning-practice .practice-heading p{color:var(--muted);margin:0}.learning-practice .practice-workspace{border:1px solid var(--line);background:var(--card);border-radius:16px;min-width:0;max-width:1000px;margin:auto;padding:28px}.learning-practice .practice-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;margin-bottom:24px;display:flex}.learning-practice .practice-toolbar>label{color:var(--muted);gap:6px;max-width:100%;font-size:14px;display:grid}.learning-practice .practice-toolbar select{color:var(--ink);min-width:210px;font-size:16px}.learning-practice .practice-prompt{text-align:center;margin:0 auto 22px;font-size:20px;font-weight:600;line-height:1.4}.learning-practice .practice-scene{min-width:0;max-width:680px;margin-inline:auto}.learning-practice .practice-scene svg{width:100%;height:auto;font-family:inherit;display:block}.learning-practice .practice-answer{flex-wrap:wrap;justify-content:center;align-items:end;gap:12px;max-width:720px;margin:24px auto 0;display:flex}.learning-practice .practice-answer label{gap:6px;max-width:100%;display:grid}.learning-practice .practice-answer button{min-width:148px}.learning-practice .practice-feedback{margin:26px auto 0;line-height:1.6}.learning-practice .practice-feedback h3{letter-spacing:-.02em;margin:0 0 10px;font-size:22px;line-height:1.3}.learning-practice .practice-feedback p:last-child{margin-bottom:0}.learning-practice .practice-explanation{color:var(--muted);margin:24px auto 0}.learning-practice .practice-explanation h3{color:var(--ink);letter-spacing:-.02em;font-size:20px;line-height:1.3}.learning-practice .practice-explanation p:last-child{margin-bottom:0}@media (width<=760px){.learning-practice .site-header{padding-block:18px}.learning-practice main{padding-top:8px}.learning-practice .intro{margin-bottom:16px}.learning-practice .intro h1{margin-bottom:8px;font-size:28px}.learning-practice .intro>p{font-size:16px}.learning-practice .topic-tabs{display:none}.learning-practice .mobile-topic{color:var(--muted);gap:6px;margin-bottom:20px;font-size:14px;display:grid}.learning-practice .mobile-topic select{width:100%;color:var(--ink);font-size:16px;font-weight:600}.learning-practice .practice-heading h2{font-size:24px}.learning-practice .practice-workspace{padding:18px}.learning-practice .practice-toolbar{gap:10px;margin-bottom:22px}.learning-practice .practice-toolbar select{width:100%;min-width:0}.learning-practice .practice-toolbar>label{flex:1;min-width:160px}.learning-practice .practice-toolbar button{padding-inline:10px}.learning-practice .practice-prompt{font-size:18px}.learning-practice .practice-answer{gap:10px}.learning-practice .practice-answer input{font-size:16px}.learning-practice .practice-answer button{padding-inline:14px}}@media (width<=360px){.learning-practice .practice-workspace{padding:14px}.learning-practice .practice-toolbar{align-items:center}.learning-practice .practice-toolbar>label{flex-basis:100%;width:100%}.learning-practice .practice-toolbar>button{margin-left:auto}}.learning-practice .topic-tabs{flex-wrap:wrap;gap:6px}.learning-practice .topic-tabs button{padding-inline:18px}.learning-practice .practice-workspace p{max-width:none}.learning-practice .practice-toolbar label{font-weight:600}.learning-practice .question-navigation{justify-content:space-between;align-items:center;gap:16px;display:flex}.learning-practice .question-count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:14px}.learning-practice button,.learning-practice input,.learning-practice select,.learning-practice summary{touch-action:manipulation}.learning-practice button:focus-visible,.learning-practice input:focus-visible,.learning-practice select:focus-visible,.learning-practice summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.learning-practice [tabindex="-1"]:focus{outline:0}.learning-practice .practice-heading{text-align:left}.learning-practice .practice-prompt{text-align:center}@media (width<=500px){.learning-practice .practice-toolbar>label{flex:1 0 100%;width:100%;min-width:0}.learning-practice .question-navigation,.learning-practice .inverse-question-actions,.learning-practice .patterns-question-actions{justify-content:space-between;width:100%}}@media (prefers-reduced-motion:reduce){.learning-practice *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.learning-practice{--control-radius:12px;--control-height:52px;--page-gutter:clamp(16px,3vw,28px);--calm-action-width:220px}.learning-practice main,.learning-practice .site-header{max-width:1176px;padding-inline:var(--page-gutter)}.learning-practice main{padding-top:16px}.learning-practice .site-header{padding-block:20px}.learning-practice .topic-tabs{gap:4px;margin:0 0 28px;padding:0}.learning-practice .topic-tabs button{border-radius:12px;min-height:48px;padding:10px 16px;font-weight:600}.learning-practice .practice-heading{margin:0 0 24px}.learning-practice .practice-heading h1{letter-spacing:-.03em;text-wrap:balance;margin:0 0 12px;font-size:clamp(1.75rem,1.375rem + 1.2vw,2.25rem);font-weight:600;line-height:1.2}.learning-practice .practice-heading p{color:var(--muted);margin:0;font-size:16px;line-height:1.6}.learning-practice .primary,.learning-practice .secondary{border-radius:12px;min-height:52px;padding:12px 16px;font-size:16px;font-weight:650;line-height:1.4}.learning-practice button:disabled{opacity:1;color:var(--control-disabled-ink);background:var(--control-disabled-bg);border-color:var(--line);cursor:default}.learning-practice .primary:disabled{color:var(--control-disabled-ink)!important;background:var(--control-disabled-bg)!important;border-color:var(--line)!important}.learning-practice .practice-workspace{border-radius:16px;width:100%;max-width:none;margin:0;padding:24px}.learning-practice .practice-prompt{text-wrap:balance;margin:0 0 20px;font-size:clamp(1.25rem,1.05rem + .7vw,1.5rem);line-height:1.35}.learning-practice.practice-frame{min-width:0}.learning-practice.practice-frame p,.learning-practice.practice-frame li{line-height:1.6}.learning-practice.practice-frame[data-subject=memory]{--subject-preview-surface:var(--lavender);--subject-preview-ink:var(--ink-memory)}.learning-practice.practice-frame[data-subject=spatial],.learning-practice.practice-frame[data-subject=reasoning]{--subject-preview-surface:var(--mint);--subject-preview-ink:var(--ink-spatial)}.learning-practice.practice-frame .practice-setup{border:1px solid var(--line);background:var(--card);border-radius:16px;flex-direction:column;display:flex;overflow:clip}.learning-practice.practice-frame .practice-setup-fields{padding:24px}.learning-practice.practice-frame .practice-setting{gap:6px;width:100%;max-width:520px;display:grid}.learning-practice.practice-frame .practice-setting>label{font-size:14px;font-weight:650}.learning-practice.practice-frame .practice-setting select{background:var(--card);border-radius:12px;width:100%;min-height:52px;padding:10px 14px;font-size:16px}.learning-practice.practice-frame .practice-setting>p{color:var(--muted);margin:0;font-size:14px}.learning-practice.practice-frame .practice-setup-launch{flex-direction:row-reverse;justify-content:space-between;align-items:center;gap:24px;padding:0 24px 24px;display:flex}.learning-practice.practice-frame .practice-setup-launch>.primary{flex:0 0 220px;width:220px}.learning-practice.practice-frame .practice-setup-summary{min-width:0;color:var(--muted);flex:1;font-size:14px}.learning-practice.practice-frame .practice-setup-summary p{margin:0}.learning-practice.practice-frame .practice-setup-summary p+p{margin-top:6px}.learning-practice.practice-frame .practice-setup-more{margin:0}.learning-practice.practice-frame .practice-setup-more>summary{display:none}.learning-practice.practice-frame .practice-setup-example{background:var(--subject-preview-surface);color:var(--subject-preview-ink);padding:20px 24px 24px}.learning-practice.practice-frame .practice-setup-example>p.practice-setup-example-label{color:var(--subject-preview-ink);margin:0 0 16px;font-size:14px}.learning-practice.practice-frame .practice-setup-example p:last-child{margin-bottom:0}.learning-practice.practice-frame .practice-setup-example svg{max-width:100%;height:auto;margin-inline:auto;display:block}.learning-practice.practice-frame .round-meta{color:var(--muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:8px 20px;margin:0 0 24px;font-size:14px;display:flex}.learning-practice.practice-frame .round-meta>strong{color:var(--ink);font-weight:650}.learning-practice.practice-frame .round-meta .round-time{margin-left:auto}.learning-practice.practice-frame .round-meta .practice-end{min-height:44px;color:var(--muted);text-underline-offset:4px;background:0 0;border:0;padding:10px 12px;font-size:14px;font-weight:400;text-decoration:underline}.learning-practice.practice-frame .round-meta .practice-end:hover{color:var(--ink);background:var(--accent-soft)}.learning-practice.practice-frame .practice-round-actions{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:12px;max-width:none;margin:20px 0 0;display:flex}.learning-practice.practice-frame [data-round-primary]{flex:0 220px;justify-content:center;align-items:center;width:220px;max-width:100%;min-height:52px;margin-left:auto;display:flex}.learning-practice.practice-frame .practice-feedback{color:var(--ink);margin:20px 0 0;font-size:16px;font-weight:400}.learning-practice.practice-frame .practice-verdict{color:var(--ink);margin:20px 0 0;font-size:16px;font-weight:400;line-height:1.5}.learning-practice.practice-frame .practice-verdict h3{font-size:16px}.learning-practice.practice-frame .practice-verdict span{min-width:0}.learning-practice.practice-frame .answer-explorer{color:var(--ink);margin-top:24px}.learning-practice.practice-frame .answer-explorer>summary,.learning-practice.practice-frame .practice-result-review>summary{cursor:pointer;min-height:48px;color:var(--accent);padding:12px 0;font-size:16px;font-weight:600}.learning-practice.practice-frame .answer-explorer[open]>summary{margin-bottom:16px}.learning-practice.practice-frame .answer-explorer .practice-explanation{color:var(--ink);margin-top:20px}.learning-practice.practice-frame .answer-explorer .practice-explanation:first-child{margin-top:0}.learning-practice.practice-frame .answer-explorer :is(h3,h4){font-size:20px;font-weight:600;line-height:1.35}.learning-practice.practice-frame .practice-results>h2{letter-spacing:-.025em;margin:0 0 24px;font-size:24px;font-weight:600;line-height:1.3}.learning-practice.practice-frame .board-metrics{flex-wrap:wrap;gap:24px 48px;margin:0 0 20px;display:flex}.learning-practice.practice-frame .board-metrics dt{color:var(--muted);margin:0 0 6px;font-size:14px}.learning-practice.practice-frame .board-metrics dd{font-variant-numeric:tabular-nums;margin:0;font-size:28px;font-weight:600;line-height:1.2}.learning-practice.practice-frame .result-note{color:var(--muted);margin:10px 0;font-size:14px}.learning-practice.practice-frame .practice-result-actions{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.learning-practice.practice-frame .practice-result-actions>button{min-width:220px}.learning-practice.practice-frame .practice-result-review{margin-top:24px}.learning-practice.practice-frame .practice-result-review>ol{margin:12px 0 0;padding-left:0;list-style:none}.learning-practice.practice-frame .practice-result-review li+li{margin-top:32px}.learning-practice.practice-frame .practice-result-review h3{margin:0 0 16px;font-size:20px;font-weight:600;line-height:1.35}.learning-practice.practice-frame .practice-result-review li>p{margin-top:16px}.learning-practice.practice-frame .review-answer-pair{flex-wrap:wrap;gap:12px;display:flex}.learning-practice.practice-frame .review-answer{overflow-wrap:anywhere;border-radius:12px;flex-direction:column;flex:260px;gap:8px;min-width:0;padding:12px 16px;display:flex}.learning-practice.practice-frame .review-answer [data-answer-label]{font-size:14px}.learning-practice.practice-frame [data-answer-state][data-answer-state=correct]{border-color:var(--right-line);background:var(--right-bg);color:var(--right-ink)}.learning-practice.practice-frame [data-answer-state][data-answer-state=wrong]{border-color:var(--wrong-line);background:var(--wrong-bg);color:var(--wrong-ink);border-style:dashed}.learning-practice.practice-frame [data-answer-state][data-answer-state=chosen]{border-color:var(--accent);background:var(--accent-soft);color:var(--ink)}.learning-practice .preview-footer{margin-top:32px}@media (width<=650px){.learning-practice main{padding-top:12px}.learning-practice .practice-workspace{padding:16px}.learning-practice.practice-frame .practice-setup-fields{padding:20px 16px}.learning-practice.practice-frame .practice-setup-launch{flex-direction:column;align-items:stretch;gap:12px;padding:0 16px 20px}.learning-practice.practice-frame .practice-setup-launch>.primary{flex:auto;order:0;width:100%}.learning-practice.practice-frame .practice-setup-summary{order:1}.learning-practice.practice-frame .practice-setup-more{padding:0 16px 4px}.learning-practice.practice-frame .practice-setup-more>summary{min-height:48px;color:var(--accent);cursor:pointer;padding:12px 0;font-weight:600;display:list-item}.learning-practice.practice-frame .practice-setup-example{margin:0 -16px;padding:20px 16px}.learning-practice.practice-frame .practice-setup-example-label{display:none}.learning-practice.practice-frame .round-meta{gap:4px 12px;margin-bottom:20px}.learning-practice.practice-frame .round-time{flex-basis:100%;order:3;font-size:13px;margin:0!important}.learning-practice.practice-frame .round-meta .practice-end{margin-left:auto}.learning-practice.practice-frame .practice-round-actions{gap:10px}.learning-practice.practice-frame [data-round-primary]{flex:1 0 100%;order:1;width:100%;margin:0}.learning-practice.practice-frame .practice-result-actions>button{width:100%;min-width:0}.learning-practice.practice-frame .board-metrics{gap:20px 28px}.learning-practice.practice-frame .board-metrics dd{font-size:26px}}.learning-practice.practice-frame[data-flow-phase=round]>.practice-heading{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.learning-practice.practice-frame .practice-setup-example .scene-example svg{max-width:360px;margin-bottom:16px}.learning-practice.practice-frame .scene-workspace .practice-prompt h3{font-size:inherit;margin:0;font-weight:600;line-height:1.35}.learning-practice.practice-frame .scene-workspace .practice-prompt p{max-width:70ch;margin:12px auto 0;font-size:16px;font-weight:400;line-height:1.6}.learning-practice.practice-frame [data-answer-state][data-answer-state=neutral]{border-color:var(--line);background:var(--card);color:var(--muted)}.learning-practice.practice-frame .practice-result-actions{gap:12px 24px}.learning-practice.practice-frame .practice-result-actions>.secondary{width:auto;min-width:0;min-height:44px;color:var(--accent);text-underline-offset:4px;box-shadow:none;background:0 0;border-color:#0000;padding:10px 0;text-decoration:underline}.learning-practice.practice-frame .practice-result-actions>.secondary:hover{background:0 0;text-decoration-thickness:2px}@media (forced-colors:active){.learning-practice.practice-frame .practice-result-actions>.secondary{border-color:buttontext}}.learning-practice .topic-tabs{border:0;grid-template-columns:repeat(4,minmax(0,1fr)) minmax(0,1.35fr);gap:8px;margin-bottom:28px;display:grid}.learning-practice .topic-tabs button{text-align:center;justify-content:center;align-items:center;gap:10px;padding:12px 10px;line-height:1.4;display:flex}.learning-practice .topic-tabs button>span{font-variant-numeric:tabular-nums;font-size:14px}.learning-practice .practice-heading{margin-bottom:24px}.learning-practice .practice-workspace{scroll-margin-top:20px}.learning-practice h2,.learning-practice h3{letter-spacing:-.025em;font-weight:600;line-height:1.35}.learning-practice h2{font-size:24px}.learning-practice h3{font-size:20px}.learning-practice p{max-width:none}.learning-practice button{touch-action:manipulation}.learning-practice select:not([multiple]){-webkit-appearance:none;appearance:none;background-color:var(--card);background-image:var(--learning-select-chevron,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23263b32' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E"));cursor:pointer;background-position:right 14px center;background-repeat:no-repeat;height:52px;min-height:52px;padding-right:44px!important}.learning-practice button:hover:not(:disabled){filter:none}.learning-practice button.secondary:hover:not(:disabled){background:var(--accent-soft)}.learning-practice .primary:hover:not(:disabled){background:var(--accent-hover)!important}.learning-practice button:focus-visible,.learning-practice select:focus-visible,.learning-practice summary:focus-visible,.learning-practice [tabindex]:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.learning-practice .practice-setup-example-label{font-weight:600}.learning-practice .practice-setup-example{padding:24px}.learning-practice .practice-next-step{margin-top:28px}.learning-practice .practice-next-step>h3{margin:0 0 10px}.learning-practice .practice-next-step>p{color:var(--muted);margin:0}.learning-practice .practice-preview-note{margin-top:28px}.learning-practice .algo-onward{border-top:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:12px 28px;margin-top:28px;padding-top:20px;display:flex}.learning-practice .algo-onward p{color:var(--muted);margin:0}.learning-practice .algo-onward a{flex:none;font-weight:600}.learning-practice .algo-prompt{text-align:center;margin:0 auto 24px}.learning-practice .algo-prompt h2{margin:0 0 10px}.learning-practice .algo-prompt p{color:var(--muted);margin:0}.learning-practice .algo-layout{grid-template-columns:minmax(0,1fr) minmax(280px,.9fr);align-items:start;gap:32px;display:grid}.learning-practice .algo-layout>*{min-width:0}.learning-practice .algo-visual{text-align:center;width:100%;max-width:540px;margin-inline:auto}.learning-practice .algo-visual>svg{width:100%;height:auto;max-height:420px;margin:auto;display:block}.learning-practice .algo-controls{min-width:0}.learning-practice .algo-actions,.learning-practice .algo-toolbar,.learning-practice .algo-stepper{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:16px;display:flex}.learning-practice .algo-actions button,.learning-practice .algo-toolbar button,.learning-practice .algo-stepper button{min-height:44px}.learning-practice .algo-toolbar{margin-top:0;margin-bottom:16px}.learning-practice .algo-status{min-height:26px;color:var(--ink);margin:18px 0;line-height:1.6}.learning-practice .algo-explanation{border-top:1px solid var(--line);color:var(--ink);margin-top:24px;padding-top:20px}.learning-practice .algo-explanation h3{margin:0 0 10px}.learning-practice .algo-explanation p:last-child{margin-bottom:0}.learning-practice .algo-token{border:1px solid var(--control-border);background:var(--card);font-variant-numeric:tabular-nums;border-radius:10px;justify-content:center;align-items:center;min-width:48px;min-height:48px;padding:10px 16px;font-weight:600;display:inline-flex}.learning-practice .algo-token[aria-pressed=true]{border:2px solid var(--accent);background:var(--accent-soft)}.learning-practice .algo-label{color:var(--muted);margin-bottom:8px;font-size:14px;font-weight:600;display:block}.learning-practice .algo-note{color:var(--muted);margin-top:12px;font-size:14px}.learning-practice .algo-example{min-width:0}.learning-practice .algo-example>p{margin-bottom:16px}.learning-practice .algo-example button{min-height:44px}.learning-practice .algo-example .algo-status{margin-bottom:0}.learning-practice .algorithm-research{max-width:960px;margin:auto}.learning-practice .algorithm-research h2{margin-top:40px}.learning-practice .algorithm-research table{border-collapse:collapse;width:100%;margin-block:20px}.learning-practice .algorithm-research th,.learning-practice .algorithm-research td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:14px 14px 14px 0}.learning-practice .algorithm-research th{font-weight:600}.learning-practice .algorithm-research li+li{margin-top:10px}@media (width<=850px){.learning-practice .algo-layout{grid-template-columns:minmax(0,1fr);gap:24px}.learning-practice .topic-tabs button{gap:7px;font-size:14px}.learning-practice .algo-onward{flex-direction:column}}@media (width<=760px){.learning-practice .topic-tabs{display:none}.learning-practice .mobile-topic{gap:8px;margin-bottom:24px;font-size:14px;display:grid}.learning-practice .mobile-topic select{width:100%;min-width:0;min-height:52px;font-size:16px}.learning-practice .algo-visual{max-width:460px}}@media (width<=650px){.learning-practice .practice-setup-more{padding:0}.learning-practice .practice-setup-more>summary{display:none}.learning-practice .practice-setup-example{margin:0;padding:20px 16px}.learning-practice .practice-setup-example-label{display:block}.learning-practice .algo-prompt h2{font-size:21px}.learning-practice .algo-layout{gap:20px}.learning-practice .algo-actions,.learning-practice .algo-toolbar,.learning-practice .algo-stepper{gap:8px}.learning-practice .algo-actions .primary{flex:100%}.learning-practice .algorithm-research table{display:block;overflow-x:auto}.learning-practice .site-header .previous-preview{font-size:13px}}@media (prefers-reduced-motion:reduce){.learning-practice *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.learning-practice .algorithm-program-context{border-bottom:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:12px 24px;margin:0 0 24px;padding-bottom:16px;font-size:14px;display:flex}.learning-practice .algorithm-program-context a{align-items:center;min-height:44px;font-weight:600;display:inline-flex}.learning-practice [hidden]{display:none!important}@media (width<=650px){.learning-practice .algorithm-program-context{flex-direction:column;align-items:flex-start;gap:4px}}.learning-mode-nav{flex-wrap:wrap;gap:8px;margin:0 0 24px;display:flex}.learning-mode-nav a{border:1px solid var(--line);border-radius:var(--control-radius,12px);align-items:center;min-height:44px;padding:10px 16px;font-weight:600;text-decoration:none;display:flex}.learning-mode-nav a[aria-current=page]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.learning-mode-heading{margin:0 0 20px}.learning-mode-heading h2{margin:0 0 8px;font-size:1.35rem}.learning-mode-heading p{color:var(--muted);line-height:1.6}.learning-practice{--surface:var(--card);--subject-preview-surface:var(--mint);--subject-preview-ink:var(--ink);font:inherit;min-width:0}.learning-practice *,.learning-practice :before,.learning-practice :after{box-sizing:border-box}.learning-practice [hidden],[data-learning-outlet] [data-learning-panel][hidden],[data-learning-original][hidden]{display:none!important}.learning-practice button,.learning-practice input,.learning-practice select,.learning-practice textarea{font:inherit;color:inherit}.learning-practice button{cursor:pointer}.learning-practice button:disabled{cursor:default}.learning-practice .primary,.learning-practice .secondary{border:1px solid var(--control-border,var(--line));font:inherit;font-weight:600}.learning-practice .primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.learning-practice .secondary{background:var(--card);color:var(--accent)}.learning-practice .practice-workspace .practice-workspace{background:0 0;border:0;padding:0}.learning-practice .practice-round-actions{justify-content:center}.learning-practice [data-round-primary]{margin-left:0}.learning-practice .practice-setup-fields{justify-content:center;display:flex}.learning-practice .practice-setting,.learning-practice .practice-setting select{text-align:center}.learning-practice .practice-setup-launch{flex-direction:column;gap:12px}.learning-practice .practice-setup-launch>.primary{flex:auto}.learning-practice .practice-setup-summary{text-align:center}.learning-practice svg{max-width:100%;height:auto}.learning-practice :is(button,input,select,textarea):focus-visible{outline:3px solid var(--accent);outline-offset:3px}.learning-practice .practice-verdict{flex-wrap:wrap}.learning-practice.practice-frame .practice-round-actions{justify-content:center}.learning-practice.practice-frame [data-round-primary]{margin-left:0}.learning-practice.practice-frame .practice-setup .practice-setting{grid-template-columns:minmax(0,1fr);gap:8px 12px;min-width:0}.learning-practice.practice-frame .practice-setup .practice-setting>label{font-weight:600}.learning-practice.practice-frame .practice-setup .practice-setting>:is(label,select,p){grid-column:1/-1;min-width:0;max-width:100%}.learning-practice.practice-frame .practice-setup .practice-setup-fields{flex-direction:column;align-items:center;gap:20px}.learning-practice.practice-frame .practice-setup .practice-setting.practice-clock-setting[data-clock-setting]{display:grid}.learning-practice.practice-frame .practice-setup .practice-clock-setting>label{justify-items:center}.learning-practice.practice-frame .practice-setup .practice-clock-setting>label>span{font-size:14px;font-weight:600}.learning-practice.practice-frame .practice-setup .comfort-switch{flex:none;width:52px;height:44px}.learning-practice.practice-frame .practice-setup .comfort-switch:focus-visible{outline:none}.learning-practice.practice-frame .practice-setup-launch>.practice-setup-action{flex:0 0 220px;width:220px;max-width:100%;padding:0;position:static}@media (width<=650px){.learning-practice.practice-frame .practice-setup-launch>.practice-setup-action{flex:auto;width:100%}}:root[data-theme=dark] .learning-practice{--learning-primary-hover:var(--accent-hover);--learning-primary-active:var(--accent-active);--learning-select-chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23a9b6a7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");--blue:#21323b}@media (prefers-color-scheme:dark){:root[data-theme=system] .learning-practice{--learning-primary-hover:var(--accent-hover);--learning-primary-active:var(--accent-active);--learning-select-chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23a9b6a7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");--blue:#21323b}}[data-learning-root]{--learning-load-height:490px}[data-learning-root][data-batch=everyday-skills]{--learning-load-height:500px}[data-learning-root][data-batch=reasoning],[data-learning-root][data-batch=math]{--learning-load-height:510px}[data-learning-root][data-batch=discovery]{--learning-load-height:530px}[data-learning-root][data-batch=music]{--learning-load-height:1500px}[data-learning-root]:not([data-learning-ready]):not([data-learning-failed]){min-block-size:var(--learning-load-height);display:flow-root}@media (width>=651px){[data-learning-root][data-batch=algorithms]{--learning-load-height:790px}[data-learning-root][data-batch=everyday-skills]{--learning-load-height:740px}[data-learning-root][data-batch=reasoning]{--learning-load-height:690px}[data-learning-root][data-batch=math]{--learning-load-height:490px}[data-learning-root][data-batch=discovery]{--learning-load-height:640px}[data-learning-root][data-batch=music]{--learning-load-height:1200px}}.music-learning{font:inherit;--bad:var(--wrong-ink);--good:var(--right-ink);min-width:0;line-height:1.6}.music-learning :is(h2,h3,p){margin-top:0}.music-learning h2{margin-bottom:16px;font-size:1.25rem;font-weight:650;line-height:1.35}.music-learning h3{font-size:var(--text-sub);margin-bottom:12px;line-height:1.35}.music-learning p{max-width:none;margin-bottom:16px}.music-learning .hint{color:var(--muted);font-size:.875rem}.music-learning .example-panel{background:var(--subject-surface,var(--lavender));border-radius:var(--radius,16px);margin-bottom:32px;padding:24px}.music-learning .challenge{margin-top:24px;padding-top:24px}.music-learning .figure{text-align:center;width:100%;min-width:0;margin:24px auto}.music-learning .figure svg{max-width:100%;height:auto;margin:auto;display:block}.music-learning :is(.controls,.actions){flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin:20px 0;display:flex}.music-learning .field{flex-direction:column;align-items:stretch;gap:8px;min-width:0;display:flex}.music-learning .field>:is(span,label){font-size:.875rem;font-weight:650}.music-learning .controls .field{flex:0 260px}.music-learning .field>.hint{margin:0;font-weight:400}.music-learning .explanation{margin:24px auto 0}.music-learning .explanation p:last-child{margin-bottom:0}.music-learning .status{min-height:1.6em;margin:16px auto}.music-learning .status:empty{min-height:0;margin-block:0}.music-learning :is(button,select){min-height:var(--control-height,52px);border:1px solid var(--control-border);border-radius:var(--control-radius,12px);background:var(--card);min-width:44px;max-width:100%;color:var(--ink);font:inherit;padding:12px 18px;font-weight:650;line-height:1.4}.music-learning button{cursor:pointer;white-space:normal;overflow-wrap:anywhere;touch-action:manipulation;width:auto}.music-learning select:not([multiple]){-webkit-appearance:none;appearance:none;background:var(--card) var(--control-chevron) no-repeat right 14px center / .75rem .5rem;cursor:pointer;width:100%;height:auto;padding-inline:14px 44px;font-weight:400}.music-learning button:hover:enabled:where(:not([data-answer-state],[aria-disabled=true])){background:var(--accent-soft);border-color:var(--accent)}.music-learning button.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.music-learning button.btn-primary:hover:enabled{background:var(--accent-hover,#104d3a)}.music-learning :is(button,select):disabled:not([data-answer-state]){background-color:var(--control-disabled-bg);color:var(--control-disabled-ink);cursor:default;border-color:var(--line)}.music-learning button:where([aria-pressed=true]:not([data-answer-state])){border-color:var(--accent);outline:1px solid var(--accent);background:var(--accent-soft)}.music-learning input[type=range]{width:100%;max-width:100%;min-height:44px;accent-color:var(--accent);margin:0}.music-learning :is(button,a,input,select,[tabindex]):focus-visible{outline:3px solid var(--accent);outline-offset:4px}.music-learning [hidden]{display:none!important}.music-learning .visually-hidden{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.music-learning-notice{color:var(--muted);margin:24px 0;font-size:.875rem}.music-learning [data-round-primary][data-round-primary]{flex:0 220px;justify-content:center;align-items:center;width:220px;max-width:100%;margin-inline:auto 0;display:flex}.music-learning .actions:has(>[data-round-primary]){justify-content:flex-start}.music-learning .practice-verdict{color:var(--ink);text-align:left;font-weight:400}[dir=rtl] .music-learning select:not([multiple]){background-position:14px}@media (width<=650px){.music-learning .example-panel{padding:20px 16px}.music-learning .controls{gap:12px}.music-learning .controls .field{flex:100%}.music-learning .actions button{flex:140px}.music-learning [data-round-primary][data-round-primary]{flex-basis:100%;order:1;width:100%}}@media (forced-colors:active){.music-learning select:not([multiple]){-webkit-appearance:auto;appearance:auto;background-image:none}}@media (prefers-reduced-motion:reduce){.music-learning *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.algorithms-practice{--surface:var(--algorithm-surface,#f8faf4);--blue:var(--algorithm-blue,#d5e2e8)}.algorithms-practice .topic-tabs{border:0;grid-template-columns:repeat(4,minmax(0,1fr)) minmax(0,1.35fr);gap:8px;margin-bottom:28px;display:grid}.algorithms-practice .topic-tabs button{text-align:center;justify-content:center;align-items:center;gap:10px;padding:12px 10px;line-height:1.4;display:flex}.algorithms-practice .topic-tabs button>span{font-variant-numeric:tabular-nums;font-size:14px}.algorithms-practice .practice-heading{margin-bottom:24px}.algorithms-practice .practice-workspace{scroll-margin-top:160px}.algorithms-practice h2,.algorithms-practice h3{letter-spacing:-.025em;font-weight:600;line-height:1.35}.algorithms-practice h2{font-size:24px}.algorithms-practice h3{font-size:20px}.algorithms-practice p{max-width:none}.algorithms-practice button{touch-action:manipulation}.algorithms-practice select:not([multiple]){-webkit-appearance:none;appearance:none;background-color:var(--card);background-image:var(--algorithm-chevron,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23263b32' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E"));cursor:pointer;background-position:right 14px center;background-repeat:no-repeat;height:52px;min-height:52px;padding-right:44px!important}.algorithms-practice button:hover:not(:disabled){filter:none}.algorithms-practice button.secondary:hover:not(:disabled){background:var(--accent-soft)}.algorithms-practice .primary:hover:not(:disabled){background:var(--accent-hover)!important}.algorithms-practice button:focus-visible,.algorithms-practice select:focus-visible,.algorithms-practice summary:focus-visible,.algorithms-practice [tabindex]:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.algorithms-practice .practice-setup-example-label{font-weight:600}.algorithms-practice .practice-setup-example{padding:24px}.algorithms-practice .practice-next-step{margin-top:28px}.algorithms-practice .practice-next-step>h3{margin:0 0 10px}.algorithms-practice .practice-next-step>p{color:var(--muted);margin:0}.algorithms-practice .practice-preview-note{margin-top:28px}.algo-onward{border-top:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:12px 28px;margin-top:28px;padding-top:20px;display:flex}.algo-onward p{color:var(--muted);margin:0}.algo-onward a{flex:none;font-weight:600}.algo-prompt{text-align:center;margin:0 auto 24px}.algo-prompt h2{margin:0 0 10px}.algo-prompt p{color:var(--muted);margin:0}.algo-layout{grid-template-columns:minmax(0,1fr) minmax(280px,.9fr);align-items:start;gap:32px;display:grid}.algo-layout>*{min-width:0}.algo-visual{text-align:center;width:100%;max-width:540px;margin-inline:auto}.algo-visual>svg{width:100%;height:auto;max-height:420px;margin:auto;display:block}.algo-controls{min-width:0}.algo-actions,.algo-toolbar,.algo-stepper{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:16px;display:flex}.algo-actions button,.algo-toolbar button,.algo-stepper button{min-height:44px}.algo-toolbar{margin-top:0;margin-bottom:16px}.algo-status{min-height:26px;color:var(--ink);margin:18px 0;line-height:1.6}.algo-explanation{border-top:1px solid var(--line);color:var(--ink);margin-top:24px;padding-top:20px}.algo-explanation h3{margin:0 0 10px}.algo-explanation p:last-child{margin-bottom:0}.algo-token{border:1px solid var(--control-border);background:var(--card);font-variant-numeric:tabular-nums;border-radius:10px;justify-content:center;align-items:center;min-width:48px;min-height:48px;padding:10px 16px;font-weight:600;display:inline-flex}.algo-token[aria-pressed=true]{border:2px solid var(--accent);background:var(--accent-soft)}.algo-label{color:var(--muted);margin-bottom:8px;font-size:14px;font-weight:600;display:block}.algo-note{color:var(--muted);margin-top:12px;font-size:14px}.algo-example{min-width:0}.algo-example>p{margin-bottom:16px}.algo-example button{min-height:44px}.algo-example .algo-status{margin-bottom:0}.algorithm-research{max-width:960px;margin:auto}.algorithm-research h2{margin-top:40px}.algorithm-research table{border-collapse:collapse;width:100%;margin-block:20px}.algorithm-research th,.algorithm-research td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:14px 14px 14px 0}.algorithm-research th{font-weight:600}.algorithm-research li+li{margin-top:10px}@media (width<=850px){.algo-layout{grid-template-columns:minmax(0,1fr);gap:24px}.algorithms-practice .topic-tabs button{gap:7px;font-size:14px}.algo-onward{flex-direction:column}}@media (width<=760px){.algorithms-practice .topic-tabs{display:none}.algorithms-practice .mobile-topic{gap:8px;margin-bottom:24px;font-size:14px;display:grid}.algorithms-practice .mobile-topic select{width:100%;min-width:0;min-height:52px;font-size:16px}.algo-visual{max-width:460px}}@media (width<=650px){.algorithms-practice .practice-setup-more{padding:0}.algorithms-practice .practice-setup-more>summary{display:none}.algorithms-practice .practice-setup-example{margin:0;padding:20px 16px}.algorithms-practice .practice-setup-example-label{display:block}.algo-prompt h2{font-size:21px}.algo-layout{gap:20px}.algo-actions,.algo-toolbar,.algo-stepper{gap:8px}.algo-actions .primary{flex:100%}.algorithm-research table{display:block;overflow-x:auto}.algorithms-practice .site-header .previous-preview{font-size:13px}}@media (prefers-reduced-motion:reduce){.algorithms-practice *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.algorithms-practice .algorithm-program-context{border-bottom:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:12px 24px;margin:0 0 24px;padding-bottom:16px;font-size:14px;display:flex}.algorithms-practice .algorithm-program-context a{align-items:center;min-height:44px;font-weight:600;display:inline-flex}.algorithms-practice [hidden]{display:none!important}@media (width<=650px){.algorithms-practice .algorithm-program-context{flex-direction:column;align-items:flex-start;gap:4px}}:root[data-theme=dark] .algorithms-practice{--algorithm-surface:var(--card);--algorithm-blue:#20313b;--algorithm-chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23A9B6A7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}@media (prefers-color-scheme:dark){:root[data-theme=system] .algorithms-practice{--algorithm-surface:var(--card);--algorithm-blue:#20313b;--algorithm-chevron:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23A9B6A7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}}.learning-practice.skills-preview{--surface:var(--skills-surface,#f8faf4)}.learning-practice.skills-preview .site-header{padding-bottom:24px}.learning-practice.skills-preview .site-header>a:last-child{font-size:14px}.learning-practice .skills-intro{max-width:760px;margin:12px 0 44px}.learning-practice .skills-intro h1{font-size:clamp(2rem,1.5rem + 2vw,3rem);font-weight:600}.learning-practice .skills-intro>p{color:var(--muted);margin:18px 0 0;font-size:18px;line-height:1.65}.learning-practice .skills-group{margin:44px 0 52px}.learning-practice .skills-group>h2{margin:0 0 24px;font-size:24px}.learning-practice .skills-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 40px;display:grid}.learning-practice .skills-entry{color:var(--ink);border-radius:12px;grid-template-columns:144px minmax(0,1fr);align-items:center;gap:24px;min-width:0;text-decoration:none;display:grid}.learning-practice .skills-entry:hover h3{text-decoration-thickness:2px}.learning-practice .skills-art{aspect-ratio:1;background:var(--mint);color:var(--ink-spatial);border-radius:12px;place-items:center;padding:8px;display:grid;overflow:hidden}.learning-practice .skills-art[data-art-group=Remember]{background:var(--lavender);color:var(--ink-memory)}.learning-practice .skills-art[data-art-group="Understand and decide"]{background:var(--skills-blue,#d5e2e8);color:var(--skills-blue-ink,#304b59)}.learning-practice .skills-entry[href=\#budget] .skills-art{background:var(--apricot);color:var(--ink-math)}.learning-practice .skills-art svg{width:100%;height:auto}.learning-practice .skills-entry h3{text-underline-offset:5px;margin:0 0 8px;font-size:20px;font-weight:600;line-height:1.35;text-decoration:underline}.learning-practice .skills-entry p{color:var(--muted);margin:0 0 8px;font-size:16px;line-height:1.55}.learning-practice .skills-entry span{color:var(--muted);font-size:14px}.learning-practice .skills-about{border-top:1px solid var(--line);margin:48px 0 16px;padding-top:20px}.learning-practice .skills-about summary{color:var(--accent);cursor:pointer;min-height:48px;padding:12px 0;font-weight:600}.learning-practice .skills-about p{max-width:72ch;color:var(--muted);margin:16px 0}.learning-practice .skills-switcher{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;margin:0 0 28px;padding-bottom:20px;display:flex}.learning-practice .skills-switcher>a{align-items:center;min-height:44px;font-weight:600;display:inline-flex}.learning-practice .skills-switcher>label{grid-template-columns:auto minmax(250px,380px);align-items:center;gap:16px;font-size:14px;display:grid}.learning-practice .skills-switcher select{border:1px solid var(--control-border);border-radius:12px;width:100%;padding:12px 16px;font-size:16px}.learning-practice.skills-preview.practice-frame[data-subject=math]{--subject-preview-surface:var(--apricot);--subject-preview-ink:var(--ink-math)}.learning-practice.skills-preview.practice-frame[data-subject=language]{--subject-preview-surface:var(--skills-blue,#d5e2e8);--subject-preview-ink:var(--skills-blue-ink,#304b59)}.learning-practice.skills-preview.practice-frame[data-subject=attention]{--subject-preview-surface:var(--lavender);--subject-preview-ink:var(--ink-memory)}.learning-practice.skills-preview .practice-heading p{max-width:74ch}.learning-practice .skill-pane{width:100%;min-width:0;max-width:880px;margin-inline:auto}.learning-practice .skill-reading{text-align:left;max-width:65ch;margin-inline:auto}.learning-practice .skill-fields{flex-wrap:wrap;align-items:end;gap:20px;margin:24px auto;display:flex}.learning-practice .skill-field{flex:200px;gap:10px;min-width:0;display:grid}.learning-practice .skill-field>label,.learning-practice .skill-field>span{font-size:14px;font-weight:600}.learning-practice.skills-preview input:not([type=range]):not([type=checkbox]):not([type=radio]),.learning-practice.skills-preview textarea{border:1px solid var(--control-border);background:var(--card);color:var(--ink);min-height:52px;font:inherit;max-width:100%;caret-color:var(--accent);border-radius:10px;padding:12px 14px}.learning-practice.skills-preview textarea{resize:vertical;line-height:1.6}.learning-practice.skills-preview fieldset{min-width:0}.learning-practice.skills-preview select{max-width:100%}.learning-practice .skill-choice{text-align:left;border:1px solid var(--control-border);background:var(--card);border-radius:12px;width:100%;min-height:52px;padding:14px 16px;line-height:1.5;display:block}.learning-practice .skill-choice[aria-pressed=true]{border-color:var(--accent);outline:1px solid var(--accent);background:var(--accent-soft);font-weight:600}.learning-practice .skill-choice:hover:not(:disabled){background:var(--accent-soft)}.learning-practice .skill-status{margin:20px 0;line-height:1.6}.learning-practice .skill-stage-content{min-width:0}.learning-practice.skills-preview .algo-actions{gap:12px;margin-top:28px}.learning-practice.skills-preview .algo-actions>.primary{min-width:220px}.learning-practice.skills-preview .algo-label{margin-bottom:10px}.learning-practice.skills-preview .algo-explanation{margin-top:28px;padding-top:24px}.learning-practice.skills-preview .practice-results .algo-onward{align-items:baseline}.learning-practice.skills-preview :is(button,input,select,summary,a):focus-visible{outline:3px solid var(--accent);outline-offset:4px}.learning-practice.skills-preview button:disabled{pointer-events:none}.learning-practice.skills-preview input[type=checkbox],.learning-practice.skills-preview input[type=radio]{accent-color:var(--accent);flex:none;width:20px;height:20px}@media (width<=980px){.learning-practice .skills-entry{grid-template-columns:110px minmax(0,1fr);gap:20px}.learning-practice .skills-list{column-gap:28px}.learning-practice .skills-entry h3{font-size:19px}.learning-practice .skills-switcher>label{grid-template-columns:1fr;gap:8px}}@media (width<=700px){.learning-practice .skills-list{grid-template-columns:1fr;gap:28px}.learning-practice .skills-entry{grid-template-columns:114px minmax(0,1fr)}.learning-practice .skills-intro{margin:8px 0 32px}.learning-practice .skills-intro>p{font-size:16px}.learning-practice .skills-group{margin:32px 0 40px}.learning-practice .skills-group>h2{margin-bottom:22px;font-size:22px}.learning-practice .skills-switcher{margin-bottom:24px;display:block}.learning-practice .skills-switcher>label{margin-top:12px;display:grid}.learning-practice .skills-switcher>label select{width:100%;max-width:none}.learning-practice.skills-preview .algo-actions>.primary{width:100%;min-width:0}.learning-practice.skills-preview .algo-actions>.secondary{flex:130px}.learning-practice .skill-fields{gap:16px}.learning-practice.skills-preview .site-header{gap:12px}.learning-practice.skills-preview .site-header>a:last-child{font-size:13px}}@media (width<=380px){.learning-practice .skills-entry{grid-template-columns:90px minmax(0,1fr);gap:16px}.learning-practice .skills-entry h3{font-size:18px}.learning-practice .skills-entry p{font-size:15px}.learning-practice .skills-entry span{font-size:13px}}@media (forced-colors:active){.learning-practice .skill-choice[aria-pressed=true]{outline:2px solid highlight}.learning-practice .skills-art{border:1px solid canvastext}}:root[data-theme=dark] .learning-practice.skills-preview{--skills-surface:var(--card);--skills-blue:#20313b;--skills-blue-ink:#c3dbe7}@media (prefers-color-scheme:dark){:root[data-theme=system] .learning-practice.skills-preview{--skills-surface:var(--card);--skills-blue:#20313b;--skills-blue-ink:#c3dbe7}}.learning-practice.skills-preview .site-header{flex-wrap:wrap;gap:16px 24px}.learning-practice .skills-language{color:var(--muted);align-items:center;gap:12px;min-width:0;margin:0 0 0 auto;font-size:14px;display:flex}.learning-practice .skills-language select{width:190px;max-width:100%;min-height:48px;font:inherit;border:1px solid var(--control-border);color:var(--ink);background-color:var(--card);border-radius:12px;padding:10px 34px 10px 12px;font-size:16px}.learning-practice.skills-preview .skills-entry h3,.learning-practice.skills-preview .skills-entry p,.learning-practice.skills-preview .practice-heading,.learning-practice.skills-preview button{overflow-wrap:break-word;hyphens:auto}.learning-practice.skills-preview .algo-onward a{flex:0 auto}.learning-practice.skills-preview .round-meta{flex-wrap:wrap}.learning-practice.skills-preview .round-meta>*{min-width:0}.learning-practice.skills-preview .algo-actions{flex-wrap:wrap}.learning-practice.skills-preview .practice-setup-summary{min-width:0}.learning-practice.skills-preview .practice-result-actions>button{max-width:100%;height:auto}.learning-practice.skills-preview .skills-switcher>label{min-width:0;max-width:100%}html[lang=ko] .learning-practice.skills-preview :is(p,h1,h2,h3,button,label,summary){word-break:keep-all;overflow-wrap:break-word}@media (width<=650px){.learning-practice .skills-language{flex:100%;justify-content:space-between;margin:0}.learning-practice.skills-preview .site-header>a:nth-child(2){margin-left:auto}.learning-practice.skills-preview .algo-actions>button{max-width:100%}.learning-practice.skills-preview .skills-switcher>label select{min-width:0}}.learning-practice .memory-work{max-width:880px;margin-inline:auto}.learning-practice .memory-work .algo-prompt{margin-bottom:24px}.learning-practice .memory-work .algo-actions,.learning-practice .mem-saved .algo-actions{gap:12px;margin-top:24px}.learning-practice .memory-work .algo-label,.learning-practice .mem-example .algo-label{gap:8px;margin-block:20px;font-weight:600;display:grid}.learning-practice .memory-work input:not([type=radio]),.learning-practice .memory-work select,.learning-practice .memory-work textarea,.learning-practice .mem-example select,.learning-practice .mem-example input:not([type=radio]){font:inherit;color:var(--ink,#263d35);background:var(--card);border:1px solid var(--border,#89978b);box-sizing:border-box;border-radius:12px;width:100%;min-width:0;min-height:48px;padding:12px 14px}.learning-practice .memory-work textarea{resize:vertical}.learning-practice .memory-work fieldset,.learning-practice .mem-example fieldset{min-width:0}.learning-practice .memory-work .algo-note{line-height:1.55}.learning-practice .mem-example{max-width:680px;margin-inline:auto}.learning-practice .mem-example p{line-height:1.55}.learning-practice .mem-example form>button{margin-top:12px}.learning-practice .mem-study{background:var(--lavender,#e5dfef);max-width:65ch;color:var(--ink,#263d35);border-radius:14px;margin:24px auto;padding:24px}.learning-practice .mem-study h3{margin:0 0 12px}.learning-practice .mem-study p{margin:0;line-height:1.75}.learning-practice .mem-plan-list{gap:20px;margin:0;padding-left:22px;line-height:1.7;display:grid}.learning-practice .mem-plan-list+p{margin-top:24px}.learning-practice .mem-event{max-width:650px;margin-inline:auto}.learning-practice .mem-scene{background:var(--lavender,#e5dfef);border-radius:14px;margin:24px 0;padding:20px 24px;font-size:1.2rem;line-height:1.6}.learning-practice .mem-options{border:0;gap:10px;margin:24px 0;padding:0;display:grid}.learning-practice .mem-options legend{margin-bottom:12px;font-weight:650;line-height:1.5}.learning-practice .memory-work .skill-choice{border:1px solid var(--border,#89978b);cursor:pointer;border-radius:12px;align-items:center;gap:12px;min-height:48px;padding:10px 14px;line-height:1.5;display:flex}.learning-practice .memory-work .skill-choice:has(input:checked){background:var(--memory-choice,#e5ece4);border-color:var(--green,#17634f)}.learning-practice .memory-work input[type=radio]{width:18px;min-width:18px;height:18px;accent-color:var(--green,#17634f);margin:0}.learning-practice .memory-work input:focus-visible,.learning-practice .memory-work select:focus-visible,.learning-practice .memory-work textarea:focus-visible{outline:3px solid var(--green,#17634f);outline-offset:3px}.learning-practice .mem-reminder,.learning-practice [data-people-reminder]{border-top:1px solid var(--border,#89978b);margin-top:24px;padding-top:24px}.learning-practice .mem-event-review{gap:24px;padding-left:24px;line-height:1.6;display:grid}.learning-practice .mem-event-review p{margin:8px 0}.learning-practice .mem-people-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;max-width:620px;margin:24px auto;display:grid}.learning-practice .mem-people-grid figure{text-align:center;margin:0}.learning-practice .mem-portrait{aspect-ratio:1;background-image:url(/images/names-and-faces/portraits-v1.webp);background-size:400% 400%;border-radius:14px;width:160px;max-width:100%;margin-inline:auto}.learning-practice .mem-people-grid figcaption{margin-top:12px;line-height:1.5}.learning-practice .mem-people-grid figcaption strong{font-size:1.2rem}.learning-practice .mem-people-grid figcaption p{margin:6px 0 0}.learning-practice .mem-people-example{grid-template-columns:120px 1fr;align-items:center;gap:24px;display:grid}.learning-practice .mem-people-example .mem-portrait{width:120px}.learning-practice .mem-recall-person{grid-template-columns:180px minmax(0,1fr);align-items:start;gap:32px;max-width:720px;margin:24px auto;display:grid}.learning-practice .mem-recall-person>.mem-portrait{width:180px;margin-top:20px}.learning-practice .mem-recognition{grid-template-columns:180px minmax(0,1fr);align-items:center;gap:28px;max-width:620px;margin:24px auto;display:grid}.learning-practice .mem-recognition>.mem-portrait{width:180px}.learning-practice .mem-name-choices{gap:12px;display:grid}.learning-practice .mem-people-review{gap:28px;display:grid}.learning-practice .mem-people-review article{border-bottom:1px solid var(--border,#c5cdc1);grid-template-columns:120px minmax(0,1fr);gap:24px;padding-bottom:24px;display:grid}.learning-practice .mem-people-review article .mem-portrait{width:120px}.learning-practice .mem-people-review h3{margin:0 0 8px}.learning-practice .mem-people-review p{line-height:1.6}.learning-practice .mem-people-review dl,.learning-practice .mem-recall-review dl{gap:16px;margin:16px 0;display:grid}.learning-practice .mem-people-review dt,.learning-practice .mem-recall-review dt{font-weight:650}.learning-practice .mem-people-review dd,.learning-practice .mem-recall-review dd{overflow-wrap:anywhere;margin:6px 0 0;line-height:1.6}.learning-practice .mem-self-check{border:1px solid var(--border,#b7c2b6);border-radius:14px;gap:10px;margin:24px 0;padding:20px;display:grid}.learning-practice .mem-self-check legend{padding:0 8px;font-weight:650;line-height:1.5}.learning-practice .mem-self-check p{overflow-wrap:anywhere;margin:4px 0 10px;line-height:1.65}.learning-practice .mem-recall-form{max-width:650px;margin-inline:auto}.learning-practice .mem-recall-review{max-width:65ch;margin:24px auto;line-height:1.6}.learning-practice .mem-saved{border-top:1px solid var(--border,#b7c2b6);grid-column:1/-1;margin-top:32px;padding:28px 24px 24px}.learning-practice .mem-saved>h3{margin:0 0 12px}.learning-practice .mem-saved>p{max-width:65ch;line-height:1.6}.learning-practice .mem-saved-list{gap:20px;padding:0;list-style:none;display:grid}.learning-practice .mem-saved-list>li{border-bottom:1px solid var(--border,#c5cdc1);padding:16px 0 24px}.learning-practice .mem-saved-list p{margin:8px 0;line-height:1.5}.learning-practice .mem-saved-list .algo-actions{justify-content:flex-start}.learning-practice .mem-due-review{border-top:1px solid var(--border,#b7c2b6);margin-top:28px;padding-top:28px}.learning-practice .mem-review-kind{border:1px solid var(--border,#89978b);border-radius:12px;padding:18px 20px;font-weight:600;line-height:1.6}.learning-practice .memory-work button,.learning-practice .mem-saved button,.learning-practice .mem-example button{min-height:44px}.learning-practice .memory-work button:disabled,.learning-practice .mem-saved button:disabled{opacity:.55;cursor:not-allowed}.learning-practice .memory-work [hidden],.learning-practice .mem-saved [hidden],.learning-practice .mem-example [hidden]{display:none!important}@media (width<=600px){.learning-practice .mem-saved{padding:24px 16px 16px}.learning-practice .mem-study{padding:20px}.learning-practice .mem-people-grid{gap:20px 12px}.learning-practice .mem-portrait{width:135px}.learning-practice .mem-recall-person,.learning-practice .mem-recognition{grid-template-columns:1fr;gap:8px}.learning-practice .mem-recall-person>.mem-portrait,.learning-practice .mem-recognition>.mem-portrait{width:160px;margin:0 auto 12px}.learning-practice .mem-people-review article{grid-template-columns:90px minmax(0,1fr);gap:16px}.learning-practice .mem-people-review article .mem-portrait{width:90px}.learning-practice .mem-self-check{padding:16px}.learning-practice .mem-people-example{grid-template-columns:90px minmax(0,1fr);gap:16px}.learning-practice .mem-people-example .mem-portrait{width:90px}.learning-practice .mem-scene{padding:18px}.learning-practice .memory-work .algo-actions{flex-wrap:wrap}.learning-practice .mem-saved-list .algo-actions{justify-content:center}}@media (width<=360px){.learning-practice .mem-people-review article{grid-template-columns:1fr}.learning-practice .mem-people-review article .mem-portrait{width:120px}.learning-practice .mem-people-example,.learning-practice .mem-people-grid{grid-template-columns:1fr}.learning-practice .mem-portrait{width:150px}}:root[data-theme=dark] .learning-practice.skills-preview{--memory-choice:var(--accent-soft);--border:var(--control-border);--green:var(--accent)}@media (prefers-color-scheme:dark){:root[data-theme=system] .learning-practice.skills-preview{--memory-choice:var(--accent-soft);--border:var(--control-border);--green:var(--accent)}}.learning-practice .mem-portrait[data-portrait-preview]{background-image:url(/images/names-and-faces/portraits-preview-v1.webp);background-size:200% 100%}.learning-practice .rp-work,.learning-practice .dp-work,.learning-practice .er-work{color:var(--ink)}.learning-practice .rp-main-scene{background:var(--room-stage,#f1f4ec);touch-action:pan-y;border-radius:12px;width:min(100%,620px);margin:20px auto 6px}.learning-practice .rp-main-scene:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.learning-practice.skills-preview .rp-main-scene svg{width:100%;height:auto;max-height:390px;display:block}.learning-practice .rp-main-scene>.rp-plan{max-width:400px;margin:auto}.learning-practice.skills-preview .practice-setup-example .rp-example-scene{max-width:430px;margin:20px auto 0}.learning-practice.skills-preview .practice-setup-example .rp-example-scene svg{width:100%;height:auto;max-height:280px}.learning-practice .rp-key{flex-wrap:wrap;justify-content:center;gap:12px 24px;margin:20px 0 28px;font-size:14px;display:flex}.learning-practice .rp-key span{align-items:center;gap:8px;display:inline-flex}.learning-practice .rp-key i{border:1px solid #52695c;border-radius:3px;width:14px;height:14px}.learning-practice .rp-choices{border:0;margin:28px 0;padding:0}.learning-practice .rp-choices legend{text-align:center;width:100%;margin-bottom:16px;font-size:16px;font-weight:600}.learning-practice .rp-options{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:14px;display:grid}.learning-practice.skills-preview .rp-option{border:1px solid var(--control-border);background:var(--card);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:0;padding:10px 6px 16px;display:flex}.learning-practice.skills-preview .rp-option svg{width:100%;height:auto}.learning-practice.skills-preview .rp-option strong{font-size:16px;font-weight:600}.learning-practice.skills-preview .rp-option:hover:not(:disabled),.learning-practice.skills-preview .rp-option.is-selected{background:var(--room-option-hover,#f0f4ec);border-color:var(--accent);outline:1px solid var(--accent)}.learning-practice.skills-preview .rp-option:disabled{opacity:1;color:var(--ink)}.learning-practice .rp-text-options{grid-template-columns:repeat(3,minmax(0,1fr));max-width:620px;margin:auto}.learning-practice.skills-preview .rp-text-options .rp-option{min-height:56px;padding:12px}.learning-practice .dp-change{background:var(--day-change,#f0ebf7);color:var(--ink-memory);border-radius:12px;margin:28px 0;padding:20px 24px}.learning-practice .dp-change h3{margin:0 0 8px;font-size:18px}.learning-practice .dp-change p{margin:0;line-height:1.65}.learning-practice .dp-timeline{scrollbar-color:var(--day-scroll-thumb,#8b9d8d) var(--day-scroll-track,#f0f3ec);width:100%;margin:28px 0 24px;padding:4px 0 10px;overflow-x:auto}.learning-practice .dp-time-head,.learning-practice .dp-time-row{grid-template-columns:135px minmax(0,1fr);align-items:center;gap:12px;min-width:620px;margin-bottom:8px;display:grid}.learning-practice .dp-time-head{color:var(--muted);font-size:13px;font-weight:600}.learning-practice .dp-time-head>div{grid-template-columns:repeat(var(--slots),minmax(0,1fr));text-align:center;display:grid}.learning-practice .dp-time-row>strong{font-size:14px;font-weight:600;line-height:1.4}.learning-practice .dp-time-track{grid-template-columns:repeat(var(--slots),minmax(0,1fr));isolation:isolate;min-height:44px;display:grid;position:relative}.learning-practice .dp-time-cell{border:1px solid var(--day-cell-line,#dce2d5);background:var(--day-cell,#f8faf5);grid-row:1;min-height:44px}.learning-practice .dp-time-cell+.dp-time-cell{border-left:0}.learning-practice .dp-time-cell.is-blocked{background:var(--day-blocked,#eee5dd);border-color:var(--day-blocked-line,#bc9f88)}.learning-practice .dp-time-block{color:#2f4538;z-index:1;border:1px solid #93a18b;border-radius:6px;grid-row:1;justify-content:center;align-items:center;min-width:0;font-size:13px;font-weight:600;display:flex}.learning-practice .dp-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:24px 0 32px;display:grid}.learning-practice .dp-fields .skill-field{gap:9px}.learning-practice .dp-fields select{border:1px solid var(--control-border);background:var(--card);width:100%;min-height:52px;color:var(--ink);font:inherit;border-radius:10px;padding:12px 14px}.learning-practice .dp-fields small{color:var(--muted);margin-left:8px;font-size:14px;font-weight:400}.learning-practice .dp-fields .dp-original{color:var(--muted);font-size:13px;font-weight:400}.learning-practice .dp-rules{margin:28px 0 20px}.learning-practice .dp-rules summary{cursor:pointer;min-height:44px;color:var(--accent);font-weight:600}.learning-practice .dp-rules ul{margin:12px 0;padding-left:24px;line-height:1.65}.learning-practice .dp-rules li+li{margin-top:10px}.learning-practice .dp-moved{text-align:center;margin-top:24px;font-size:16px}.learning-practice.skills-preview .practice-setup-example .dp-timeline{max-width:750px;margin-inline:auto}.learning-practice.skills-preview .practice-setup-example .dp-time-head,.learning-practice.skills-preview .practice-setup-example .dp-time-row{min-width:430px}.learning-practice .er-map{aspect-ratio:680/430;background:var(--errands-map,#f1f5ed);isolation:isolate;border-radius:12px;width:100%;max-width:780px;min-height:300px;margin:28px auto 20px;position:relative}.learning-practice .er-closure-leader{display:none}.learning-practice .er-closures{max-width:70ch;color:var(--errands-closure,#8b3d29);margin:12px auto 0;font-size:14px;line-height:1.6}.learning-practice .er-map>svg{width:100%;max-width:none;height:100%;display:block;position:absolute;inset:0}.learning-practice.skills-preview.practice-frame .practice-setup-example .er-map>svg{width:100%;max-width:none;height:100%}.learning-practice.skills-preview .er-node{border:1px solid var(--errands-node-line,#738878);background:var(--card);width:88px;min-width:0;max-width:17%;min-height:56px;color:var(--ink);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:8px 4px;line-height:1.25;display:flex;position:absolute;transform:translate(-50%,-50%)}.learning-practice.skills-preview .er-node strong{font-size:14px;font-weight:600}.learning-practice.skills-preview .er-node span{font-size:12px}.learning-practice.skills-preview .er-node:disabled{opacity:1;cursor:default;color:var(--errands-disabled-ink,#334b3e)}.learning-practice.skills-preview .er-node.is-current{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.learning-practice.skills-preview .er-node.is-current:disabled{color:var(--accent-ink)}.learning-practice.skills-preview .er-node:not(:disabled):hover{background:var(--errands-node-hover,#dce9db);border-color:var(--accent)}.learning-practice .er-stops{flex-wrap:wrap;justify-content:center;gap:16px 36px;max-width:780px;margin:28px auto 20px;padding-left:24px;display:flex}.learning-practice .er-stops li{padding-left:3px;font-size:15px}.learning-practice .er-stops span{color:var(--muted);margin-top:4px;font-size:13px;display:block}.learning-practice .er-rules{max-width:70ch;color:var(--muted);margin:16px auto 24px;line-height:1.6}.learning-practice .er-progress{flex-wrap:wrap;justify-content:center;gap:12px 28px;display:flex}.learning-practice .er-progress p{margin:0;font-size:15px}.learning-practice .er-next{text-align:center;margin:18px 0 24px;line-height:1.6}.learning-practice .er-route{background:var(--errands-route,#f3f5ee);border-radius:10px;margin:20px 0;padding:16px 20px}.learning-practice .er-route>strong{font-size:14px}.learning-practice .er-route p{overflow-wrap:anywhere;margin:8px 0 0;line-height:1.7}.learning-practice .er-trace{padding-left:24px;line-height:1.7}.learning-practice .er-trace li+li{margin-top:10px}.learning-practice.skills-preview .practice-setup-example .er-example-map{max-width:630px;margin-inline:auto}.learning-practice.skills-preview .practice-setup-example .er-map{min-height:260px;margin:20px auto}.learning-practice .er-example-status{text-align:center;max-width:65ch;margin:20px auto;line-height:1.6}@media (width<=800px){.learning-practice .rp-options{grid-template-columns:repeat(2,minmax(0,1fr));max-width:600px;margin:auto}.learning-practice .rp-text-options{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=600px){.learning-practice .er-road-label.is-closed.is-horizontal{transform:translateY(70px)}.learning-practice .er-closure-leader{display:block}.learning-practice .rp-main-scene{margin-top:24px}.learning-practice.skills-preview .rp-main-scene svg{min-height:240px}.learning-practice.skills-preview .practice-setup-example .rp-example-scene svg{max-height:230px}.learning-practice .rp-options{gap:12px}.learning-practice.skills-preview .rp-option{padding:8px 3px 12px}.learning-practice .rp-key{gap:10px 18px}.learning-practice .rp-text-options{grid-template-columns:1fr}.learning-practice .dp-change{padding:18px}.learning-practice .dp-fields{grid-template-columns:1fr;gap:20px}.learning-practice .dp-timeline{margin-top:24px}.learning-practice .er-map{min-height:280px}.learning-practice.skills-preview .er-node{width:72px;max-width:22%;min-height:56px;padding:8px 2px}.learning-practice.skills-preview .er-node strong{font-size:14px}.learning-practice.skills-preview .er-node span{font-size:12px}.learning-practice .er-map text{font-size:25px}.learning-practice .er-stops{grid-template-columns:1fr 1fr;justify-content:flex-start;gap:14px 32px;padding-left:23px;display:grid}.learning-practice .er-progress{gap:10px 18px}.learning-practice .er-progress p,.learning-practice .er-rules{font-size:14px}.learning-practice .er-route{padding:16px}.learning-practice.skills-preview .practice-setup-example .er-map{min-height:260px}}@media (forced-colors:active){.learning-practice .rp-option.is-selected,.learning-practice .er-node.is-current{outline:3px solid highlight}.learning-practice .dp-time-block{border:2px solid canvastext}.learning-practice .dp-time-cell.is-blocked{border:2px dashed canvastext}.learning-practice .er-map path{stroke:canvastext}}.learning-practice.skills-preview .er-node strong,.learning-practice .dp-time-row>strong{overflow-wrap:anywhere;hyphens:auto}@media (width<=600px){.learning-practice .er-road-label.is-closed text{font-size:20px}}:root[data-theme=dark] .learning-practice.skills-preview{--room-stage:var(--surface);--room-option-hover:var(--accent-soft);--day-change:var(--lavender);--day-scroll-thumb:var(--control-border);--day-scroll-track:var(--surface);--day-cell-line:var(--line);--day-cell:var(--surface);--day-blocked:var(--apricot);--day-blocked-line:var(--ink-math);--errands-map:var(--surface);--errands-closure:var(--bad);--errands-node-line:var(--control-border);--errands-disabled-ink:var(--muted);--errands-node-hover:var(--accent-soft);--errands-route:var(--surface);--errands-closed-road:var(--bad);--errands-road:var(--control-border);--errands-closed-label:var(--bad);--errands-road-label:var(--ink);--errands-label-surface:var(--card);--room-direction:var(--ink);--room-plan-direction:var(--ink)}@media (prefers-color-scheme:dark){:root[data-theme=system] .learning-practice.skills-preview{--room-stage:var(--surface);--room-option-hover:var(--accent-soft);--day-change:var(--lavender);--day-scroll-thumb:var(--control-border);--day-scroll-track:var(--surface);--day-cell-line:var(--line);--day-cell:var(--surface);--day-blocked:var(--apricot);--day-blocked-line:var(--ink-math);--errands-map:var(--surface);--errands-closure:var(--bad);--errands-node-line:var(--control-border);--errands-disabled-ink:var(--muted);--errands-node-hover:var(--accent-soft);--errands-route:var(--surface);--errands-closed-road:var(--bad);--errands-road:var(--control-border);--errands-closed-label:var(--bad);--errands-road-label:var(--ink);--errands-label-surface:var(--card);--room-direction:var(--ink);--room-plan-direction:var(--ink)}}.learning-practice .budget-layout{grid-template-columns:minmax(0,1.3fr) minmax(240px,.8fr);align-items:start;gap:32px;margin:28px 0;display:grid}.learning-practice .budget-products{gap:0;min-width:0;display:grid}.learning-practice .budget-product{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:20px 0;display:flex}.learning-practice .budget-product:first-child{padding-top:0}.learning-practice .budget-product h3{margin:0 0 6px;font-size:18px}.learning-practice .budget-product p{margin:4px 0;font-size:15px}.learning-practice .budget-stepper{flex-shrink:0;align-items:center;gap:6px;display:flex}.learning-practice .budget-stepper button{min-width:44px;min-height:48px;padding:8px;font-size:21px}.learning-practice .budget-stepper output{text-align:center;font-variant-numeric:tabular-nums;min-width:22px;font-size:20px;font-weight:600}.learning-practice .budget-receipt{background:var(--apricot);border-radius:12px;padding:22px}.learning-practice .budget-receipt h3{margin:0 0 20px;font-size:20px}.learning-practice .budget-receipt ul{margin:0 0 22px;padding:0;list-style:none}.learning-practice .budget-receipt li{justify-content:space-between;align-items:baseline;gap:16px;margin:10px 0;font-size:15px;display:flex}.learning-practice .budget-receipt li strong{white-space:nowrap}.learning-practice .budget-receipt dl{font-variant-numeric:tabular-nums;margin:0}.learning-practice .budget-receipt dl>div{justify-content:space-between;gap:16px;margin:10px 0;display:flex}.learning-practice .budget-receipt dd{white-space:nowrap;margin:0}.learning-practice .budget-total{border-top:1px solid var(--control-border);padding-top:16px;font-size:20px;font-weight:600}.learning-practice .budget-receipt .algo-note{color:var(--ink-math);margin:20px 0 0}.learning-practice .budget-needs{flex-wrap:wrap;justify-content:center;gap:12px 24px;margin:24px auto;padding:0;list-style:none;display:flex}.learning-practice .budget-restriction{background:var(--accent-soft);border-radius:10px;padding:14px 16px}.learning-practice .budget-example-options{flex-wrap:wrap;justify-content:center;gap:12px;margin:24px 0;display:flex}.learning-practice .budget-example-options [aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);outline:1px solid var(--accent)}@media (width<=700px){.learning-practice .budget-layout{grid-template-columns:1fr;gap:24px}.learning-practice .budget-product{gap:10px}.learning-practice .budget-product h3{font-size:17px}.learning-practice .budget-receipt{padding:20px}.learning-practice .budget-stepper{gap:4px}.learning-practice .budget-stepper button{min-width:44px;padding:7px}.learning-practice .budget-example-options{flex-direction:column}.learning-practice .budget-example-options button{width:100%}}.learning-practice [data-current-example],.learning-practice [data-solution-example],.learning-practice [data-listen-example]{max-width:760px;margin-inline:auto}.learning-practice [data-current-form],.learning-practice [data-solution-form],.learning-practice [data-listen-form]{min-width:0;max-width:760px;margin:24px auto 0}.learning-practice .cs-options{border:0;min-width:0;margin:28px 0;padding:0}.learning-practice .cs-options legend{max-width:65ch;margin-bottom:14px;padding:0;font-size:1.125rem;font-weight:600;line-height:1.5}.learning-practice .cs-options .skill-choice{border:1px solid var(--control-border);background:var(--card);min-height:48px;color:var(--ink);cursor:pointer;border-radius:12px;align-items:flex-start;gap:12px;min-width:0;margin:10px 0;padding:14px 16px;line-height:1.6;display:flex}.learning-practice .cs-options input,.learning-practice .cs-evidence input{width:18px;height:18px;accent-color:var(--accent);flex:none;margin:4px 0 0}.learning-practice .cs-options .skill-choice:has(input:checked){background:var(--accent-soft);border-color:var(--accent)}.learning-practice .cs-options .skill-choice:has(input:focus-visible),.learning-practice .cs-evidence:has(input:focus-visible){outline:3px solid var(--accent);outline-offset:4px}.learning-practice .cs-options input:focus-visible,.learning-practice .cs-evidence input:focus-visible{outline:none}.learning-practice .cs-documents{gap:24px;max-width:760px;margin:0 auto 24px;display:grid}.learning-practice .cs-document{background:var(--soft,var(--accent-soft));border-radius:12px;min-width:0;padding:24px}.learning-practice .cs-document h3,.learning-practice .cs-source h3,.learning-practice .cs-transcript h3{margin:0 0 8px;font-size:1.125rem;font-weight:600;line-height:1.35}.learning-practice .cs-document p{max-width:65ch;margin:12px 0;line-height:1.65}.learning-practice .cs-document .cs-document-date{color:var(--muted);margin-top:0;font-size:.875rem}.learning-practice .cs-evidence{cursor:pointer;align-items:flex-start;gap:12px;min-height:44px;padding-top:12px;font-weight:600;line-height:1.6;display:flex}.learning-practice .cs-instruction{max-width:65ch;margin:20px 0 28px;line-height:1.65}.learning-practice .cs-source,.learning-practice .cs-transcript{background:var(--soft,var(--accent-soft));border-radius:12px;max-width:760px;margin:24px auto;padding:24px;line-height:1.7}.learning-practice .cs-source p,.learning-practice .cs-transcript p{max-width:65ch;margin:8px 0 0}.learning-practice .cs-step strong{margin-bottom:4px;display:block}.learning-practice .cs-audio{max-width:760px;margin:24px auto}.learning-practice .cs-audio-settings{flex-wrap:wrap;justify-content:center;align-items:start;gap:20px;margin-bottom:24px;display:flex}.learning-practice .cs-audio-settings label{flex:220px;gap:10px;min-width:0;max-width:420px;font-weight:600;display:grid}.learning-practice .cs-audio-settings select{border:1px solid var(--control-border);background:var(--card);width:100%;min-height:48px;color:var(--ink);font:inherit;border-radius:12px;min-width:0;padding:10px 36px 10px 12px}.learning-practice .cs-audio-status{max-width:65ch;color:var(--muted);margin:20px auto;line-height:1.65}.learning-practice [data-current-form] .skill-status,.learning-practice [data-solution-form] .skill-status,.learning-practice [data-listen-form] .skill-status{max-width:70ch;margin:24px 0;line-height:1.7}.learning-practice [data-current-form] .algo-actions,.learning-practice [data-solution-form] .algo-actions,.learning-practice [data-listen-form] .algo-actions,.learning-practice .cs-audio .algo-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}.learning-practice [data-current-form] .algo-actions button,.learning-practice [data-solution-form] .algo-actions button,.learning-practice [data-listen-form] .algo-actions button,.learning-practice .cs-audio button{white-space:normal;max-width:100%;min-height:48px}@media (width<=600px){.learning-practice .cs-document,.learning-practice .cs-source,.learning-practice .cs-transcript{padding:20px 16px}.learning-practice .cs-options .skill-choice{gap:10px;padding:12px}.learning-practice .cs-options legend{font-size:1.0625rem}.learning-practice .cs-audio-settings{gap:16px}.learning-practice .cs-audio-settings label{max-width:none}.learning-practice .cs-evidence{font-size:1rem}.learning-practice .cs-documents{gap:20px}}@media (forced-colors:active){.learning-practice .cs-options .skill-choice:has(input:checked){outline:2px solid highlight}.learning-practice .cs-source,.learning-practice .cs-document,.learning-practice .cs-transcript{border:1px solid canvastext}}.music-learning .staff-preview{--staff-key-width:60px}.music-learning .staff-controls{flex-wrap:wrap;justify-content:center;align-items:end;gap:1.5rem;margin:1rem 0 1.25rem;display:flex}.music-learning .staff-controls .field{text-align:left;flex-direction:column;gap:.5rem;display:flex}.music-learning .staff-controls .staff-mode-field{flex:0 auto}.music-learning .staff-controls .staff-clef-field{flex:0 0 200px}.music-learning .staff-modes{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.music-learning .staff-modes>[data-round-wall]{grid-column:1/-1}.music-learning .staff-modes button{border-radius:0;min-width:0}.music-learning .staff-modes button:first-child{border-start-start-radius:var(--control-radius,12px);border-end-start-radius:var(--control-radius,12px)}.music-learning .staff-modes button:last-child{border-start-end-radius:var(--control-radius,12px);border-end-end-radius:var(--control-radius,12px);margin-inline-start:-1px}.music-learning .staff-modes button[aria-pressed=true]{z-index:1;outline:none;position:relative}.music-learning .staff-modes button:focus-visible{z-index:2;outline:3px solid var(--accent);outline-offset:4px;position:relative}.music-learning .staff-workspace{min-width:0;padding:clamp(1rem,3vw,2rem)}.music-learning .staff-prompt{text-align:center;margin:0 0 .75rem;font-size:clamp(1.25rem,3vw,1.65rem)}.music-learning .staff-reference{text-align:center;color:var(--muted);margin:0 auto}.music-learning .staff-figure{width:min(100%,320px);margin:.25rem auto 1rem}.music-learning .staff-figure .exp-staff{width:100%;height:auto;display:block}.music-learning .staff-figure .exp-staff>rect{fill:var(--accent-soft);stroke:var(--accent);stroke-width:1px}.music-learning .staff-keyboard-scroll{overscroll-behavior-x:contain;scrollbar-color:var(--accent) var(--mint);scrollbar-width:auto;border-radius:6px;width:max-content;max-width:100%;margin:0 auto;padding:5px 5px 10px;overflow-x:auto}.music-learning .staff-keyboard{isolation:isolate;width:max-content;display:flex;position:relative}.music-learning .staff-preview .staff-white-key{flex-direction:column;flex:0 0 var(--staff-key-width);width:var(--staff-key-width);min-width:var(--staff-key-width);border-radius:0 0 6px 6px;justify-content:end;align-items:center;gap:.35rem;min-height:168px;margin:0;padding:10px 0 15px;font-size:1rem;font-weight:650;line-height:1.3;display:flex;position:relative}.music-learning .staff-preview .staff-white-key:first-child{border-top-left-radius:5px}.music-learning .staff-preview .staff-white-key:last-of-type{border-top-right-radius:5px}.music-learning .staff-preview .staff-white-key:focus-visible{z-index:3}.music-learning .staff-preview .staff-white-key:not([data-answer-state]){border:1px solid var(--control-border);color:var(--piano-key-ink,#263b32);background:var(--piano-white-key,#fff)}.music-learning .staff-key-badge{white-space:normal;overflow-wrap:anywhere;flex-direction:column;justify-content:end;align-items:center;gap:2px;width:100%;min-height:2.6em;padding:0 2px;font-size:.7rem;line-height:1.2;display:flex}.music-learning .staff-key-badge [data-answer-label]{font-size:.68rem;line-height:1.1}.music-learning .staff-key-badge [data-answer-mark]{font-size:.65rem}.music-learning .staff-black-key{top:0;left:calc(var(--key-boundary) * var(--staff-key-width) - 15px);background:var(--piano-black-key,#263b32);z-index:2;border-radius:0 0 4px 4px;width:30px;height:91px;position:absolute}.music-learning .staff-keyboard-hint{text-align:center;margin:.75rem auto 1.25rem}.music-learning .staff-scroll-hint{display:none}.music-learning .staff-result{text-align:center;margin:1.5rem auto 1rem;font-weight:600}.music-learning .staff-explanation{margin:1.5rem auto}.music-learning .staff-explanation p{margin:.65rem 0}.music-learning .staff-count{color:var(--accent);font-variant-numeric:tabular-nums;flex-wrap:wrap;justify-content:center;gap:.4em;padding:.75rem 0;font-weight:650;display:flex}.music-learning .staff-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:1.75rem;display:flex}.music-learning .staff-sound-status{text-align:center;min-height:1.5em;margin:1rem auto 0}@media (width<=650px){.music-learning .staff-scroll-hint{display:inline}.music-learning .staff-controls{gap:1rem}.music-learning .staff-controls .staff-mode-field{flex-basis:100%}.music-learning .staff-workspace{padding-inline:1rem}.music-learning .staff-actions>button{flex:140px}}.commands-workspace .commands-layout{align-items:start}.commands-map{width:100%;max-width:360px;margin:0 auto;display:block;overflow:visible}.commands-map text{fill:var(--muted);font:15px Figtree,system-ui,sans-serif}.commands-cell{fill:var(--command-cell,#f6f7f2);stroke:var(--line);stroke-width:1px}.commands-blocked{fill:var(--command-block,#e1ddd4);stroke:var(--command-block-line,#9a9588);stroke-width:1px}.commands-block-cross{fill:none;stroke:var(--command-block-ink,#6e695d);stroke-width:2px}.commands-goal{fill:var(--accent-soft);stroke:var(--accent);stroke-width:2px}.commands-map .commands-goal-label{fill:var(--accent);font-size:20px;font-weight:700}.commands-trace{fill:none;stroke:var(--accent);stroke-width:3px;stroke-dasharray:4 5;stroke-linecap:round;stroke-linejoin:round}.commands-palette{flex-wrap:wrap;gap:8px;margin:12px 0 16px;display:flex}.commands-palette .secondary{min-height:44px;padding:9px 12px;font-size:15px}.commands-list{gap:8px;margin:0 0 16px;padding:0;list-style:none;display:grid}.commands-list li{margin:0}.commands-block{text-align:left;border:1px solid var(--line);background:var(--card);width:100%;min-height:48px;color:var(--ink);box-shadow:none;border-radius:9px;align-items:center;gap:12px;padding:10px 12px;font-weight:600;line-height:1.4;display:flex}.commands-block>span{font-variant-numeric:tabular-nums;min-width:18px;color:var(--muted);font-size:14px;font-weight:500}.commands-block small{white-space:nowrap;color:var(--accent);margin-left:auto;font-size:12px;font-weight:500}.commands-block.is-selected{border-color:var(--accent);background:var(--accent-soft)}.commands-block.is-running{outline:2px solid var(--command-running,#78628d);outline-offset:1px}.commands-block:disabled{opacity:1;color:var(--ink);cursor:default}.commands-block:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.commands-empty{color:var(--muted);min-height:80px;padding:18px 0;font-size:15px}.commands-editor{border-top:1px solid var(--line);margin-top:16px;padding-top:16px}.commands-editor select{width:100%;min-height:46px;font:inherit;background:var(--card);color:var(--ink);border:1px solid var(--control,var(--line));border-radius:9px;margin-top:8px;padding:9px 12px;display:block}.commands-editor .algo-toolbar{margin-top:12px}.commands-add{margin-top:18px}.commands-add summary{cursor:pointer;min-height:44px;color:var(--accent);padding-block:10px;font-weight:600}.repair-row{max-width:430px;margin:0 auto 24px}.repair-row>strong{color:var(--muted);margin-bottom:10px;font-size:14px;font-weight:600;display:block}.repair-values{flex-wrap:nowrap;justify-content:center;gap:10px;display:flex}.repair-value{border:1px solid var(--repair-line,#c2cab9);background:var(--repair-surface,#eef2e6);min-width:48px;max-width:80px;min-height:66px;color:var(--ink);font-variant-numeric:tabular-nums;border-radius:10px;flex:1;justify-content:center;align-items:center;font-size:25px;font-weight:600;display:flex}.repair-value.is-different{border:2px dashed var(--command-running,#78628d);background:var(--repair-changed,#eee9f3)}.commands-workspace .algo-visual .algo-stepper{justify-content:center}.algo-example .commands-map{max-width:250px}.algo-example .repair-row{max-width:350px}.algo-example label{display:block}.algo-example select{border:1px solid var(--line);background:var(--card);width:100%;max-width:350px;min-height:44px;font:inherit;border-radius:8px;margin:8px 0;padding:8px 12px}.algo-example .algo-toolbar{justify-content:center;margin-top:12px}@media (width<=650px){.commands-workspace .commands-layout{display:block}.commands-workspace .algo-controls{margin-top:28px}.commands-map{max-width:320px}.commands-editor .algo-toolbar{gap:8px}.commands-editor .algo-toolbar .secondary{flex:96px;padding:10px 8px;font-size:14px}.commands-palette{gap:6px}.commands-palette .secondary{font-size:14px}.repair-values{gap:7px}.repair-value{min-width:42px;min-height:56px;font-size:23px}.repair-row{margin-bottom:20px}.commands-block small{white-space:normal;text-align:right;max-width:54px}.commands-workspace .algo-stepper .secondary{min-height:44px;padding:10px 12px}}.algorithms-practice .practice-setup-example .commands-map{width:100%;max-width:250px;height:auto;margin-inline:auto;display:block}.algorithms-practice .commands-example{grid-template-columns:250px minmax(0,1fr);align-items:center;gap:4px 28px;display:grid}.algorithms-practice .commands-example>[data-ins-example-board]{grid-area:1/1/4}.algorithms-practice .commands-example>p,.algorithms-practice .commands-example>.algo-toolbar{grid-column:2;margin-block:0}.algorithms-practice .commands-example>.algo-toolbar{justify-content:flex-start}.algorithms-practice .commands-mini{display:none}@media (width<=650px){.algorithms-practice .commands-example{display:block}.algorithms-practice .practice-setup-example .commands-map{max-width:210px}.algorithms-practice .commands-example>p{margin-block:10px}.algorithms-practice .commands-example>.algo-toolbar{justify-content:center;margin-top:12px}.algorithms-practice .commands-workspace .commands-mini{z-index:3;background:var(--card);border-bottom:1px solid var(--line);min-width:0;margin:0 0 18px;padding:8px 0 12px;position:sticky;top:8px}.algorithms-practice .commands-workspace .instructions-mini{grid-template-columns:minmax(110px,145px) minmax(0,1fr);align-items:center;gap:8px;display:grid}.algorithms-practice .commands-mini .commands-map{width:100%;max-width:145px;height:auto}.algorithms-practice .commands-mini .commands-map text:not(.commands-goal-label){display:none}.algorithms-practice .commands-mini .commands-goal-label{font-size:32px}.commands-mini-copy>strong{font-size:14px;display:block}.commands-mini-copy>p{margin:7px 0;font-size:13px;line-height:1.45}.commands-mini-copy>span{color:var(--muted);margin-top:6px;font-size:12px;display:block}.commands-mini-actions{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:6px;display:flex}.algorithms-practice .commands-mini-actions>.secondary{min-width:44px;min-height:44px;padding:8px 10px;font-size:14px}.commands-mini-actions>span{color:var(--muted);font-size:12px}.algorithms-practice .commands-workspace .repair-mini{display:block}.repair-mini-rows{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;display:grid}.algorithms-practice .repair-mini .repair-row{min-width:0;max-width:none;margin:0 0 10px}.algorithms-practice .repair-mini .repair-row>strong{margin-bottom:6px;font-size:13px}.algorithms-practice .repair-mini .repair-values{gap:4px}.algorithms-practice .repair-mini .repair-value{border-radius:6px;min-width:0;min-height:34px;font-size:17px}.commands-workspace .algo-controls :is(button,select,summary,[tabindex]){scroll-margin-top:205px}.commands-workspace .commands-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.commands-workspace .commands-list .commands-block{flex-wrap:wrap;justify-content:flex-start;gap:6px;height:100%;min-height:48px;padding:9px 8px;font-size:14px}.commands-workspace .commands-list .commands-block>span{min-width:12px;font-size:12px}.commands-workspace .commands-list .commands-block>small{text-align:left;flex:100%;max-width:none;margin-left:18px;font-size:11px}.commands-workspace .commands-empty{grid-column:1/-1;min-height:56px;padding:10px 0}}.algorithms-practice .commands-editor label.algo-label,.algorithms-practice .repair-example label.algo-label{text-align:left;gap:8px;display:grid}.algorithms-practice .commands-editor label.algo-label>select,.algorithms-practice .repair-example label.algo-label>select{width:100%;min-width:0;margin:0;display:block}.algorithms-practice .repair-example>label.algo-label{max-width:350px;margin:24px auto 0}.algorithms-practice .repair-example>.algo-toolbar{gap:12px;margin:16px auto 0}.algorithms-practice .repair-example>.algo-status{text-align:center;max-width:60ch;margin:16px auto 0}:root[data-theme=dark] .algorithms-practice{--command-cell:var(--surface);--command-block:var(--control-disabled-bg);--command-block-line:var(--control-border);--command-block-ink:var(--muted);--command-running:var(--ink-memory);--repair-line:var(--control-border);--repair-surface:var(--surface);--repair-changed:var(--lavender)}@media (prefers-color-scheme:dark){:root[data-theme=system] .algorithms-practice{--command-cell:var(--surface);--command-block:var(--control-disabled-bg);--command-block-line:var(--control-border);--command-block-ink:var(--muted);--command-running:var(--ink-memory);--repair-line:var(--control-border);--repair-surface:var(--surface);--repair-changed:var(--lavender)}}.music-learning.rhythm-preview{color:var(--ink)}.music-learning.rhythm-preview .rhythm-intro{margin:0 0 1.5rem;line-height:1.65}.music-learning.rhythm-preview .rhythm-panel{padding:clamp(1rem,3vw,2rem)}.music-learning.rhythm-preview .rhythm-panel h2{margin:0 0 .65rem}.music-learning.rhythm-preview .rhythm-instruction{margin:0 0 1.4rem;line-height:1.65}.music-learning.rhythm-preview .rhythm-top-controls{flex-wrap:wrap;justify-content:center;align-items:end;gap:1rem 1.5rem;margin:1.4rem 0 1.8rem;display:flex}.music-learning.rhythm-preview .field{flex-direction:column;align-items:stretch;gap:.5rem;font-weight:600;display:flex}.music-learning.rhythm-preview select:disabled{opacity:1;color:var(--muted);background:var(--accent-soft)}.music-learning.rhythm-preview .rhythm-figure{max-width:700px;margin:0 auto}.music-learning.rhythm-preview .rhythm-track{background:var(--bg);border:1px solid var(--control-border);border-radius:10px;min-height:100px;position:relative}.music-learning.rhythm-preview .rhythm-grid{grid-template-columns:repeat(var(--beats), minmax(0, 1fr));pointer-events:none;display:grid;position:absolute;inset:0}.music-learning.rhythm-preview .rhythm-grid span:not(:last-child){border-right:1px solid var(--line)}.music-learning.rhythm-preview .rhythm-events{grid-template-columns:repeat(var(--ticks), minmax(0, 1fr));box-sizing:border-box;gap:0;min-height:100px;padding:7px 0;display:grid}.music-learning.rhythm-preview .rhythm-event{border:1px solid var(--accent);background:var(--card);min-width:0;color:var(--accent);box-sizing:border-box;border-radius:7px;flex-direction:column;justify-content:center;align-items:center;gap:1px;margin:0 2px;display:flex;position:relative}.music-learning.rhythm-preview .rhythm-event.is-note{background:var(--mint)}.music-learning.rhythm-preview .rhythm-event.is-rest{color:var(--muted);border-style:dashed}.music-learning.rhythm-preview .rhythm-event.is-selected{outline:2px solid var(--ink);outline-offset:1px}.music-learning.rhythm-preview .rhythm-event.is-playing{background:var(--accent);color:var(--accent-ink)}.music-learning.rhythm-preview .rhythm-event svg{width:30px;max-width:95%;height:45px}.music-learning.rhythm-preview .rhythm-silence{place-items:center;height:45px;display:grid}.music-learning.rhythm-preview .rhythm-event>span{font-variant-numeric:tabular-nums;font-size:.8rem;font-weight:600;line-height:1.3}.music-learning.rhythm-preview .rhythm-space{color:var(--muted);place-items:center;font-size:.8rem;display:grid}.music-learning.rhythm-preview .rhythm-cursor{background:var(--ink);pointer-events:none;z-index:2;width:2px;position:absolute;top:0;bottom:-5px}.music-learning.rhythm-preview .rhythm-cursor:before{content:"";background:var(--ink);border-radius:50%;width:8px;height:8px;position:absolute;top:-5px;left:-3px}.music-learning.rhythm-preview .rhythm-beats{grid-template-columns:repeat(var(--beats), minmax(0, 1fr));text-align:center;color:var(--muted);font-variant-numeric:tabular-nums;padding-top:.7rem;font-size:.85rem;display:grid}.music-learning.rhythm-preview .rhythm-beat-count{text-align:left;grid-template-columns:1fr 1fr;display:grid}.music-learning.rhythm-preview .rhythm-beat-count>*{padding-top:.35rem;position:relative}.music-learning.rhythm-preview .rhythm-beat-count>:before{content:"";border-left:1px solid var(--muted);height:.6rem;position:absolute;top:-.7rem;left:0}.music-learning.rhythm-preview .rhythm-beat-count>span:before{height:.3rem}.music-learning.rhythm-preview .rhythm-balance{text-align:center;flex-wrap:wrap;justify-content:center;gap:.35rem 1rem;margin:1.25rem 0;display:flex}.music-learning.rhythm-preview .rhythm-balance strong{color:var(--ink)}.music-learning.rhythm-preview .rhythm-edit-list{flex-wrap:wrap;justify-content:center;gap:.6rem;max-width:750px;margin:1.5rem auto .75rem;display:flex}.music-learning.rhythm-preview .rhythm-edit-list button{flex-direction:column;justify-content:center;gap:.25rem;min-height:58px;padding:.6rem .9rem;font-size:.9rem;display:flex}.music-learning.rhythm-preview .rhythm-edit-list small{font-size:.8rem;font-weight:400}.music-learning.rhythm-preview .rhythm-select-hint,.music-learning.rhythm-preview .rhythm-fit-hint,.music-learning.rhythm-preview .rhythm-audio-hint{text-align:center;margin:.75rem auto;line-height:1.55}.music-learning.rhythm-preview .rhythm-editor{flex-wrap:wrap;justify-content:center;align-items:end;gap:.75rem;margin:1.5rem auto .75rem;display:flex}.music-learning.rhythm-preview .rhythm-editor .field{flex-basis:300px}.music-learning.rhythm-preview .rhythm-play-actions,.music-learning.rhythm-preview .rhythm-task-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;margin:1.5rem 0 1rem;display:flex}.music-learning.rhythm-preview .rhythm-task-actions{margin-top:1.5rem}.music-learning.rhythm-preview .rhythm-feedback{margin:1.5rem 0 0;padding:1rem 0 0}.music-learning.rhythm-preview .rhythm-feedback h3{margin:0 0 .5rem;font-size:1.1rem}.music-learning.rhythm-preview .rhythm-feedback p{margin:0;line-height:1.6}.music-learning.rhythm-preview .rhythm-status{min-height:1.5em;margin:1rem 0 0;font-size:.95rem}@media (width<=650px){.music-learning.rhythm-preview .rhythm-top-controls{gap:.8rem}.music-learning.rhythm-preview .rhythm-top-controls .field,.music-learning.rhythm-preview .rhythm-editor .field{flex:100%}.music-learning.rhythm-preview .rhythm-editor button,.music-learning.rhythm-preview .rhythm-play-actions button,.music-learning.rhythm-preview .rhythm-task-utilities button{flex:140px}.music-learning.rhythm-preview .rhythm-task-actions button{flex:100%;width:100%}.music-learning.rhythm-preview .rhythm-event{margin-inline:1px}.music-learning.rhythm-preview .rhythm-event>span{font-size:.72rem}.music-learning.rhythm-preview .rhythm-beats{font-size:.76rem}}.music-learning.rhythm-preview .rhythm-silence{overflow-wrap:anywhere;max-width:100%;padding-inline:2px;font-size:.7rem;line-height:1.15}.music-learning.music-chords .ch-selectors{flex-wrap:wrap;justify-content:center;gap:18px;margin:24px 0 32px;display:flex}.music-learning.music-chords .ch-selectors .field{flex-direction:column;flex:140px;gap:8px;min-width:0;max-width:230px;display:flex}.music-learning.music-chords .ch-selectors select{width:100%;padding:10px 40px 10px 14px}.music-learning.music-chords .ch-keyboard{width:min(100%, var(--ch-keyboard-width,660px));margin:0 auto}.music-learning.music-chords .ch-keyboard svg{width:100%;display:block}.music-learning.music-chords .ch-key{stroke:var(--piano-key-ink,#263b32);stroke-width:1.2px}.music-learning.music-chords .ch-white{fill:var(--piano-white-key,#fff)}.music-learning.music-chords .ch-black{fill:var(--piano-black-key,#263b32)}.music-learning.music-chords .ch-key.is-selected{fill:#17634c}.music-learning.music-chords .ch-black.is-selected{stroke:var(--piano-white-key,#fff);stroke-width:2px}.music-learning.music-chords .ch-bass-dot{fill:var(--piano-white-key,#fff)}.music-learning.music-chords .ch-keyboard-range{color:var(--muted);justify-content:space-between;gap:16px;margin-top:6px;font-size:.9rem;display:flex}.music-learning.music-chords .ch-tones{justify-content:center;gap:clamp(10px,3vw,36px);margin:24px auto 8px;display:flex}.music-learning.music-chords .ch-tone{border-radius:10px;flex-direction:column;align-items:center;gap:5px;min-width:72px;padding:8px 12px;display:flex}.music-learning.music-chords .ch-tone strong{font-size:clamp(1.35rem,4vw,1.8rem);line-height:1.15}.music-learning.music-chords .ch-tone span{color:var(--muted);font-size:.9rem}.music-learning.music-chords .ch-tone[data-ch-sounding]{background:var(--accent-soft);outline:2px solid var(--accent)}.music-learning.music-chords .ch-order,.music-learning.music-chords .ch-selection,.music-learning.music-chords .ch-audio-status{text-align:center}.music-learning.music-chords .ch-playback{margin-top:24px}.music-learning.music-chords .ch-audio-status{min-height:1.6em;margin:14px auto 24px}.music-learning.music-chords .ch-theory{margin:24px auto}.music-learning.music-chords .ch-theory h3{margin-bottom:10px}.music-learning.music-chords .ch-theory p+p{margin-top:12px}.music-learning.music-chords .ch-challenge{margin-top:48px;padding-top:32px}.music-learning.music-chords .ch-task{margin:12px 0;font-size:1.2rem;font-weight:650}.music-learning.music-chords .ch-note-options{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;max-width:780px;margin:26px auto 16px;display:grid}.music-learning.music-chords .ch-note-option{font-variant-numeric:tabular-nums;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-height:66px;padding:8px 6px;display:flex}.music-learning.music-chords .ch-note-option span{font-weight:650}.music-learning.music-chords .ch-note-option small{color:inherit;font-size:.85rem;font-weight:400}.music-learning.music-chords .ch-note-option:disabled[aria-pressed=true]{opacity:1}.music-learning.music-chords .ch-check-actions{margin:20px auto}.music-learning.music-chords .ch-feedback{margin:8px auto 20px;padding:18px 0;line-height:1.65}.music-learning.music-chords .ch-recovery{margin:20px auto}.music-learning.music-chords .ch-unscored{text-align:center;margin:18px auto 0}@media (width<=650px){.music-learning.music-chords .ch-note-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.music-learning.music-chords .ch-selectors{gap:12px}.music-learning.music-chords .ch-selectors .field{flex:100%;max-width:none}.music-learning.music-chords .ch-selectors .field:last-child{flex-basis:100%}.music-learning.music-chords .ch-tone{padding-inline:5px}.music-learning.music-chords .ch-tone span{font-size:.8rem}}@media (prefers-reduced-motion:reduce){.music-learning.music-chords *{transition:none!important}}@media (forced-colors:active){.music-learning.music-chords .ch-key.is-selected{fill:highlight}.music-learning.music-chords .ch-note-option[aria-pressed=true]{outline:2px solid highlight}}.music-learning.music-chords .ch-tone{text-align:center;flex:1 1 0;min-width:0;max-width:200px}.music-learning.music-chords .ch-tone span{overflow-wrap:anywhere}.music-learning.music-chords .ch-review{margin-top:24px}.music-learning.music-chords .ch-feedback{color:var(--ink);font-weight:400}.music-learning.music-chords .ch-note-option [data-answer-mark]{font-size:.7rem}.music-learning.music-intervals .iv-explorer-controls{align-items:end;gap:20px}.music-learning.music-intervals .iv-explorer-controls .field{flex:150px;max-width:230px}.music-learning.music-intervals .iv-distance-control{flex-basis:260px;max-width:300px}.music-learning.music-intervals .iv-pair-summary{text-align:center;justify-content:center;align-items:center;gap:24px;margin:28px auto 20px;display:flex}.music-learning.music-intervals .iv-pair-summary>span{border-radius:10px;flex-direction:column;justify-content:center;min-width:82px;min-height:78px;padding:8px;display:flex}.music-learning.music-intervals .iv-pair-summary small{color:var(--muted);font-size:.85rem}.music-learning.music-intervals .iv-pair-summary strong{font-size:1.65rem;line-height:1.3}.music-learning.music-intervals .iv-distance-summary strong{font-size:1.3rem}.music-learning.music-intervals .iv-pair-summary [data-iv-sounding]{background:var(--accent);color:var(--accent-ink)}.music-learning.music-intervals .iv-pair-summary [data-iv-sounding] small{color:var(--accent-ink)}.music-learning.music-intervals .iv-keyboard{max-width:var(--iv-key-width,634px);margin:0 auto 12px}.music-learning.music-intervals .iv-key{stroke:var(--control-border);stroke-width:1px}.music-learning.music-intervals .iv-white{fill:var(--piano-white-key,#fff)}.music-learning.music-intervals .iv-black{fill:var(--piano-black-key,#263b32)}.music-learning.music-intervals .iv-first{fill:var(--accent)}.music-learning.music-intervals .iv-second{fill:#f2cc82;stroke:#735521;stroke-width:2px}.music-learning.music-intervals .iv-key-label{fill:var(--piano-key-ink,#263b32);text-anchor:middle;font:700 17px Figtree,sans-serif}.music-learning.music-intervals .iv-first+.iv-key-label{fill:var(--accent-ink)}.music-learning.music-intervals .iv-key-range{color:var(--muted);justify-content:space-between;margin-top:2px;padding:0 6px;font-size:.78rem;display:flex}.music-learning.music-intervals .iv-key-caption,.music-learning.music-intervals .iv-step-caption{text-align:center;margin:12px auto}.music-learning.music-intervals .iv-ladder{max-width:810px;margin:28px auto 12px}.music-learning.music-intervals .iv-steps{grid-template-columns:repeat(var(--iv-step-count),minmax(0,1fr));isolation:isolate;gap:4px;max-width:100%;margin:12px auto;display:grid}.music-learning.music-intervals .iv-step{text-align:center;min-width:0;position:relative}.music-learning.music-intervals .iv-step:not(:last-child):after{content:"";background:var(--control-border);z-index:-1;width:calc(100% + 4px);height:2px;position:absolute;top:18px;left:50%}.music-learning.music-intervals .iv-step>span{background:var(--bg);border:1px solid var(--control-border);border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;margin:auto;font-size:.85rem;font-weight:650;display:flex}.music-learning.music-intervals .iv-step>small{color:var(--muted);white-space:nowrap;margin-top:6px;font-size:.76rem;display:block}.music-learning.music-intervals .iv-step.iv-start>span{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.music-learning.music-intervals .iv-step.iv-end>span{color:var(--piano-key-ink,#263b32);background:#f2cc82;border-color:#735521}.music-learning.music-intervals .iv-teaching{margin:28px auto 0}.music-learning.music-intervals .iv-teaching h3{margin-bottom:10px}.music-learning.music-intervals .iv-level-copy{text-align:center;margin:0 auto 28px}.music-learning.music-intervals .iv-pairs{grid-template-columns:1fr 1fr;gap:40px;max-width:540px;margin:28px auto 0;display:grid}.music-learning.music-intervals .iv-pair{text-align:center;min-width:0}.music-learning.music-intervals .iv-pair h3{margin-bottom:12px;font-size:1.2rem}.music-learning.music-intervals .iv-pair>button{width:100%}.music-learning.music-intervals .iv-pair-dots{justify-content:center;gap:16px;min-height:28px;margin:16px 0 22px;display:flex}.music-learning.music-intervals .iv-pair-dots span{border:1px solid var(--control-border);background:var(--card);border-radius:50%;width:24px;height:24px}.music-learning.music-intervals .iv-pair-dots [data-iv-sounding]{background:var(--accent);border-color:var(--accent);box-shadow:0 3px 8px #17634c24}.music-learning.music-intervals .iv-heard{color:var(--muted);margin:10px 0;font-size:.84rem;display:block}.music-learning.music-intervals .iv-stop-row{margin:16px 0}.music-learning.music-intervals .iv-listen-status{text-align:center}.music-learning.music-intervals .iv-answers{flex-wrap:wrap;justify-content:center;gap:12px;max-width:680px;margin:24px auto;display:flex}.music-learning.music-intervals .iv-answers button{flex:160px;min-height:52px}.music-learning.music-intervals .iv-feedback{color:var(--ink);margin:24px auto 16px;font-weight:400;line-height:1.6}.music-learning.music-intervals .iv-comparison{max-width:810px;margin:24px auto 32px}.music-learning.music-intervals .iv-comparison>h3{margin-top:28px}.music-learning.music-intervals .iv-revealed-pair{margin:24px 0 32px}.music-learning.music-intervals .iv-revealed-pair>p{margin-bottom:16px;font-size:.94rem}.music-learning.music-intervals .iv-comparison .iv-steps{max-width:720px}.music-learning.music-intervals .iv-next-actions{margin:24px 0 12px}.music-learning.music-intervals .iv-unscored{text-align:center;margin:16px auto}.music-learning.music-intervals .iv-volume{flex-wrap:wrap;justify-content:center;align-items:center;gap:24px;margin-top:36px;padding-top:24px;display:flex}.music-learning.music-intervals .iv-volume .field{flex:0 260px}.music-learning.music-intervals .iv-volume p{margin:0}.music-learning.music-intervals .iv-volume output,.music-learning.music-intervals .iv-distance-control output{font-variant-numeric:tabular-nums}@media (width<=650px){.music-learning.music-intervals .iv-explorer-controls{gap:14px;margin:24px 0}.music-learning.music-intervals .iv-explorer-controls .field{flex:100%;max-width:none}.music-learning.music-intervals .iv-distance-control{flex-basis:100%;max-width:none}.music-learning.music-intervals .iv-pair-summary{gap:8px;margin:22px auto 18px}.music-learning.music-intervals .iv-pair-summary>span{min-width:64px;padding:6px}.music-learning.music-intervals .iv-pair-summary strong{font-size:1.4rem}.music-learning.music-intervals .iv-distance-summary strong{font-size:1.2rem}.music-learning.music-intervals .iv-pair-summary small{font-size:.75rem}.music-learning.music-intervals .iv-pairs{gap:20px}.music-learning.music-intervals .iv-pair>button{padding:10px 12px}.music-learning.music-intervals .iv-steps{grid-template-columns:repeat(auto-fit,minmax(39px,1fr));gap:14px 4px;max-width:420px}.music-learning.music-intervals .iv-step:not(:last-child):after{display:none}.music-learning.music-intervals .iv-step>span{width:32px;height:32px}.music-learning.music-intervals .iv-step>small{font-size:.72rem}.music-learning.music-intervals .iv-answers{gap:10px}.music-learning.music-intervals .iv-answers button{flex-basis:100%}.music-learning.music-intervals .iv-volume{gap:12px}.music-learning.music-intervals .iv-volume .field{flex-basis:100%;max-width:320px}.music-learning.music-intervals .iv-volume p{text-align:center;font-size:.85rem}.music-learning.music-intervals .iv-stop-row button{flex:0 220px}.music-learning.music-intervals .iv-revealed-pair{margin-bottom:28px}}.music-learning.music-intervals .iv-pair-summary>span{overflow-wrap:anywhere;flex:1 1 0;min-width:0;max-width:180px}.music-learning.music-intervals .iv-keyboard svg{width:100%;display:block}.music-learning.music-intervals .iv-answers button{justify-content:center;align-items:center;gap:8px;display:flex}.music-learning.music-intervals .iv-answers [data-answer-mark]{font-size:.85rem}.ss-search .algo-prompt h3,.ss-sorting .algo-prompt h3{margin:0 0 10px}.ss-search .algo-controls,.ss-sorting .algo-controls{text-align:center;max-width:640px;margin:24px auto 0}.ss-search .algo-controls{max-width:540px}.ss-sort-decisions{max-width:440px;margin-inline:auto}.ss-search .algo-controls h4,.ss-sorting .algo-controls h4{margin:0 0 8px;font-size:18px;font-weight:600;line-height:1.45}.ss-search .algo-controls>.algo-note,.ss-sorting .algo-controls>.algo-note{max-width:65ch;margin:0 auto 16px;line-height:1.6}.ss-search-summary,.ss-sort-meta{font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;gap:16px;margin:0 0 12px;font-size:16px;display:flex}.ss-search-summary strong,.ss-sort-meta strong{font-weight:650}.ss-search-summary>span,.ss-sort-meta>span{color:var(--muted);font-size:14px}.ss-order-note{text-align:left;margin:0 0 16px!important}.ss-drawers{grid-template-columns:repeat(auto-fit,minmax(52px,1fr));gap:8px;max-width:620px;margin:0 auto;display:grid}.ss-drawer{border:2px solid var(--control-border);background:var(--card);min-width:0;min-height:94px;color:var(--ink);cursor:pointer;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:8px 4px;font-family:inherit;display:flex}.ss-drawer small{font-variant-numeric:tabular-nums;color:var(--muted);font-size:12px;line-height:1.3}.ss-drawer strong{font-variant-numeric:tabular-nums;font-size:24px;font-weight:600;line-height:1.2}.ss-drawer span{color:var(--muted);font-size:11px;line-height:1.4}.ss-drawer:disabled{opacity:1;cursor:default;color:var(--ink)}.ss-drawer.is-out{border-style:dashed;border-color:var(--search-excluded-line,#acb5a7);background:var(--search-excluded,#f4f5ef)}.ss-drawer.is-out strong{color:var(--muted)}.ss-drawer.is-open,.ss-drawer.is-hint{border-color:var(--accent);background:var(--accent-soft)}.ss-drawer.is-open span{color:var(--accent);font-weight:650}.ss-drawer:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent)}.ss-search-decisions,.ss-sort-decisions{flex-wrap:wrap;justify-content:center;align-items:stretch;gap:10px;display:flex}.ss-search-decisions .secondary,.ss-sort-decisions .secondary{flex:1;min-width:0;min-height:50px;padding:12px 16px;line-height:1.45}.ss-search [data-search-missing]{width:min(100%,340px);min-height:50px}.ss-search .algo-status{text-align:center}.ss-search .practice-verdict,.ss-sorting .practice-verdict{max-width:680px;margin:22px auto 0}.ss-search>.algo-note,.ss-sorting>.algo-note{text-align:center;max-width:65ch;margin:16px auto 0;line-height:1.6}.ss-search .answer-explorer,.ss-sorting .answer-explorer{margin-top:28px}.ss-comparison-counts{border-block:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0;padding:16px 0;display:grid}.ss-comparison-counts>div{text-align:center}.ss-comparison-counts dt{color:var(--muted);font-size:14px;line-height:1.5}.ss-comparison-counts dd{margin:6px 0 0;font-size:19px;font-weight:600;line-height:1.5}.ss-search .algo-toolbar{margin-top:22px}.ss-search [data-search-method][aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}.ss-trace-heading{text-align:center;margin:20px 0 16px;font-size:16px;font-weight:600}.ss-search .algo-stepper,.ss-sorting .algo-stepper{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:10px;max-width:580px;margin:24px auto 0;display:grid}.ss-search .algo-stepper>span,.ss-sorting .algo-stepper>span{font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap;font-size:14px}.ss-search .algo-stepper button,.ss-sorting .algo-stepper button{padding-inline:12px;line-height:1.45}.ss-sort-meta{margin-bottom:22px}.ss-sort-lane{text-align:left;margin:18px 0 0}.ss-sort-row{flex-wrap:wrap;justify-content:center;align-items:stretch;gap:8px;min-height:50px;display:flex}.ss-sort-token{flex-direction:column;gap:4px;min-width:50px;padding:10px 13px;position:relative}.ss-sort-token small{font-size:11px;font-weight:500;line-height:1.25}.ss-sort-token.is-compared{border:2px solid var(--accent);background:var(--accent-soft)}.is-ordered>.ss-sort-token{background:var(--sort-ordered,#edf2e8)}.ss-sort-row>.ss-gap-card{border:2px dashed var(--sort-gap-line,#746b8c);background:var(--sort-gap,#eee9f6);color:var(--ink-memory);min-width:58px;padding:6px 12px}.ss-gap-card>strong{font-size:20px;font-weight:600;line-height:1.2}.ss-gap-card>small{font-size:12px;line-height:1.3}.ss-gap-note{color:var(--muted);text-align:center;margin:10px 0 0;font-size:13px;line-height:1.5}[data-sort-example] .ss-gap-note{display:none}[data-sort-example] .ss-sort-lane{margin-top:12px}[data-sort-example] .algo-status{margin-top:16px}[data-sort-example] .ss-sort-row,[data-sort-example] .ss-sort-token{min-height:46px}.ss-lane-empty{color:var(--muted);align-self:center;padding:12px 0;font-size:14px;line-height:1.5}.ss-sort-pair{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:16px;max-width:440px;margin:20px auto;display:grid}.ss-compare-card{border:1px solid var(--control-border);background:var(--card);min-height:118px;color:var(--ink);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:14px 10px;font-family:inherit;display:flex}.ss-compare-card small{color:var(--muted);font-size:13px;font-weight:500;line-height:1.4}.ss-compare-card strong{font-variant-numeric:tabular-nums;font-size:36px;font-weight:600;line-height:1.1}.ss-compare-card>span{font-size:14px;font-weight:600;line-height:1.4}.ss-pair-word{color:var(--muted);font-size:14px}button.ss-compare-card{cursor:pointer}.ss-sort-pair button.ss-compare-card:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent)}.ss-sorting [data-sort-transition]{text-align:center;max-width:65ch;margin:20px auto 0;font-size:15px;line-height:1.6}.ss-sorting [data-sort-transition]:empty{display:none}.ss-sorting .ss-guided{outline:3px solid var(--accent);outline-offset:3px}.ss-sort-review-pair{justify-content:center;align-items:center;gap:20px;margin:16px 0;display:flex}.ss-sort-review-pair .algo-token{min-width:76px;font-size:28px}.ss-sorting .algo-explanation>h4{margin:24px 0 12px;font-size:16px;font-weight:600}.ss-sorting .algo-explanation .algo-status{text-align:center;max-width:65ch;margin-inline:auto}.algo-example .ss-drawers{max-width:410px}.algo-example .ss-sort-lane{margin-top:14px}.algo-example .ss-sort-pair{max-width:330px;margin:14px auto}.algo-example .ss-compare-card{min-height:90px;padding:10px}.algo-example .ss-compare-card strong{font-size:28px}.algo-example .algo-toolbar{margin-top:18px;margin-bottom:0}@media (width<=650px){.ss-search .algo-controls,.ss-sorting .algo-controls{margin-top:22px}.ss-search-summary,.ss-sort-meta{gap:10px}.ss-drawers{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.ss-drawer{min-height:86px;padding:7px 3px}.ss-drawer strong{font-size:22px}.ss-drawer span{font-size:10px}.algo-example .ss-drawers{grid-template-columns:repeat(auto-fit,minmax(44px,1fr));gap:6px}.ss-search-decisions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.ss-search-decisions [data-search-decision=found]{grid-area:2/1/auto/-1}.ss-search-decisions .secondary,.ss-sort-decisions .secondary{min-height:48px;padding:11px 10px;font-size:14px}.ss-search .algo-stepper,.ss-sorting .algo-stepper{gap:8px}.ss-search .algo-stepper button,.ss-sorting .algo-stepper button{padding:10px 7px;font-size:13px}.ss-comparison-counts{gap:10px}.ss-comparison-counts dt{font-size:13px}.ss-comparison-counts dd{font-size:17px}.ss-sort-meta{font-size:15px}.ss-sort-meta>span{font-size:13px}.ss-sort-row{gap:7px}.ss-sort-token{min-width:44px;min-height:46px;padding:8px 11px}.ss-sort-pair{gap:10px;margin:16px auto}.ss-compare-card{min-height:114px;padding:12px 8px}.ss-compare-card strong{font-size:32px}.ss-compare-card small{font-size:12px}.ss-compare-card>span{font-size:13px}.ss-sort-decisions{gap:8px}.ss-sort-review-pair{gap:16px}.ss-sorting .algo-controls>.algo-note,.ss-sorting [data-sort-transition]{font-size:14px}}@media (forced-colors:active){.ss-drawer.is-open,.ss-drawer.is-hint,.ss-sort-token.is-compared,.ss-sort-token.ss-gap-card,.ss-sorting .ss-guided{outline:2px solid highlight}.ss-drawer.is-out{border-color:graytext}}:root[data-theme=dark] .algorithms-practice{--search-excluded-line:var(--control-border);--search-excluded:var(--surface);--sort-ordered:var(--mint);--sort-gap-line:var(--tile-memory-line);--sort-gap:var(--lavender)}@media (prefers-color-scheme:dark){:root[data-theme=system] .algorithms-practice{--search-excluded-line:var(--control-border);--search-excluded:var(--surface);--sort-ordered:var(--mint);--sort-gap-line:var(--tile-memory-line);--sort-gap:var(--lavender)}}.vector-workspace{padding:26px 28px}.vector-toolbar{justify-content:space-between;align-items:end;gap:16px;margin-bottom:12px;display:flex}.vector-toolbar label{color:var(--muted);gap:6px;font-size:14px;display:grid}.vector-toolbar select{border:1px solid var(--control-border);background:var(--card);border-radius:10px;min-height:44px;padding:8px 34px 8px 12px}.vector-question-actions{align-items:center;gap:18px;display:flex}.vector-question-actions>span{white-space:nowrap;color:var(--muted);font-variant-numeric:tabular-nums;font-size:14px}.vector-question-meta{color:var(--muted);margin:0 0 24px;font-size:14px}.vector-prompt{letter-spacing:-.02em;margin:0 0 12px;scroll-margin-top:20px;font-size:23px;line-height:1.35}.vector-domain{color:var(--muted);max-width:none;margin:0 0 14px;font-size:14px}.vector-basis{font-variant-numeric:tabular-nums;flex-wrap:wrap;justify-content:center;gap:32px;margin:12px 0 20px;font-size:20px;font-weight:650;display:flex}.vector-u{color:var(--accent)}.vector-v{color:var(--vector-v,#72508e)}.vector-layout{grid-template-columns:minmax(0,1.35fr) minmax(260px,1fr);align-items:center;gap:32px;display:grid}.vector-visual{min-width:0}.vector-scene{background:var(--vector-stage,#f8faf5);border-radius:12px;width:100%;max-width:480px;margin:auto;overflow:hidden}.vector-scene svg{width:100%;height:auto;display:block;overflow:hidden}.vector-svg-label{paint-order:stroke;stroke:var(--vector-stage,#f8faf5);stroke-width:4px;stroke-linejoin:round;font-family:inherit;font-size:22px;font-weight:550}.vector-scene-key{color:var(--muted);text-align:center;max-width:48ch;margin:10px auto 0;font-size:14px}.vector-practice .vector-answer{width:100%;min-width:0;max-width:430px;margin:auto;display:block}.vector-slider-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 10px;width:100%;margin:0 0 14px;display:grid}.vector-slider-row label{font-weight:600;line-height:1.4}.vector-precision{grid-template-columns:44px 42px 44px;align-items:center;gap:2px;display:grid}.vector-slider-row output{text-align:center;font-variant-numeric:tabular-nums;font-size:22px;font-weight:650}.vector-practice .vector-answer .vector-nudge{width:44px;min-width:44px;height:44px;min-height:44px;padding:0;font-size:23px;font-weight:500}.vector-nudge:disabled{cursor:default;background:var(--vector-disabled,#f2f4ee);color:var(--control-disabled-ink,#4f5d53);border-color:var(--line)}.vector-slider-row input{grid-column:1/-1;width:100%;max-width:none;height:44px;margin:0}.vector-slider-row input[data-vector-b]{accent-color:var(--vector-v,#72508e)}.vector-control-note{color:var(--muted);text-align:center;margin:0 0 20px;font-size:14px}.vector-current{text-align:center;margin:16px 0 22px}.vector-current>p:first-child{color:var(--muted);max-width:none;margin:0 0 6px;font-size:14px}.vector-current>div{font-variant-numeric:tabular-nums;font-size:25px;font-weight:650;line-height:1.4}.vector-current>p:last-child{font-variant-numeric:tabular-nums;max-width:none;margin:4px 0 0;font-size:19px}.vector-unreachable,.vector-solution{width:100%;min-height:44px;margin:12px auto 0;display:block}.vector-unreachable[aria-pressed=true]{background:var(--mint);border-color:var(--accent)}.vector-choice,.vector-hint{color:var(--muted);max-width:none;margin:12px 0 0;font-size:15px;line-height:1.6}.vector-submit-actions{grid-template-columns:auto minmax(0,1fr);gap:10px;margin:16px 0 0;display:grid}.vector-submit-actions>button{min-height:48px}.vector-practice .vector-submit-actions>button:first-child{min-width:76px;padding-inline:12px}.vector-practice .vector-check{min-width:0;padding-inline:12px}.vector-feedback{max-width:none;margin:18px 0 0;font-size:16px;line-height:1.5}.vector-feedback[data-correct=true]{color:var(--accent);font-weight:600}.vector-feedback[data-correct=false]{color:var(--vector-wrong,#993d2a)}.vector-explanation{margin-top:32px}.vector-explanation h3{letter-spacing:-.02em;margin:0 0 10px;font-size:22px;line-height:1.3}.vector-explanation p{color:var(--muted);max-width:none;margin:0 0 12px}.vector-steps{justify-content:center;gap:8px;margin:20px 0;display:flex}.vector-steps>button{flex:1;min-width:0;max-width:160px;min-height:44px;padding:9px 12px;font-size:15px}.vector-steps>button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.vector-review-layout{grid-template-columns:minmax(0,360px) minmax(0,1fr);align-items:center;gap:28px;margin-top:20px;display:grid}.vector-review-scene{max-width:360px}.vector-review-copy{text-align:left;min-width:0}.vector-review-copy h4{letter-spacing:-.02em;color:var(--ink);margin:0 0 12px;font-size:20px;font-weight:650;line-height:1.35}.vector-calculations{font-variant-numeric:tabular-nums;margin-top:18px}.vector-calculations p{color:var(--ink);overflow-wrap:anywhere;margin:0 0 8px;font-size:18px}.vector-explanation .vector-review-note{margin:20px 0 0}.vector-bottom-actions{justify-content:center;margin:24px 0 0;display:flex}.vector-bottom-actions>button{min-width:210px;min-height:48px}.vector-howto{margin-top:26px}.vector-howto summary{color:var(--accent);cursor:pointer;min-height:44px;padding:10px 0;font-weight:600}.vector-howto ol{color:var(--muted);margin:8px 0 0;padding-left:24px}.vector-howto li{margin-bottom:8px;padding-left:4px}@media (width<=760px){.vector-workspace{padding:18px 16px}.vector-toolbar{gap:14px}.vector-toolbar button{min-height:44px;padding:9px 12px;font-size:14px}.vector-question-meta{margin-bottom:20px}.vector-prompt{font-size:21px}.vector-basis{gap:12px 24px;margin:14px 0;font-size:18px}.vector-layout{grid-template-columns:minmax(0,1fr);gap:24px}.vector-scene{max-width:390px}.vector-current{margin:20px 0}.vector-current>div{font-size:24px}.vector-explanation{margin-top:28px}.vector-review-layout{grid-template-columns:minmax(0,1fr);gap:22px}.vector-review-scene{max-width:340px}}@media (width<=500px){.vector-toolbar{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}.vector-toolbar>label{width:100%;min-width:0}.vector-toolbar select{width:100%;max-width:none}.vector-question-actions{justify-content:space-between;width:100%}.vector-practice .vector-answer{max-width:none;margin:0}.vector-explanation h3{font-size:21px}.vector-steps{gap:6px}.vector-steps>button{padding-inline:6px;font-size:14px}.vector-bottom-actions>button{width:100%}}:root[data-theme=dark] .learning-practice{--vector-v:#cfb0e9;--vector-stage:var(--surface);--vector-disabled:var(--control-disabled-bg);--vector-wrong:var(--bad);--vector-grid:var(--line);--vector-gap:var(--muted);--vector-axis:var(--control-border);--vector-span:var(--accent-soft)}@media (prefers-color-scheme:dark){:root[data-theme=system] .learning-practice{--vector-v:#cfb0e9;--vector-stage:var(--surface);--vector-disabled:var(--control-disabled-bg);--vector-wrong:var(--bad);--vector-grid:var(--line);--vector-gap:var(--muted);--vector-axis:var(--control-border);--vector-span:var(--accent-soft)}}.chance-workspace p{max-width:none}.chance-question-navigation{align-items:center;gap:16px;display:flex}.chance-question-navigation>span{color:var(--muted);white-space:nowrap;font-size:14px}.chance-start-description{text-align:center;margin:0 0 6px;font-weight:600}.chance-assumption{text-align:center;color:var(--muted);margin:0 0 24px;font-size:14px}.chance-state-title{text-align:center;margin:0 0 10px;font-size:18px;font-weight:650}.chance-scene{max-width:680px}.chance-state-pair{grid-template-columns:1fr 1fr;gap:30px;display:grid}.chance-distribution{width:100%;min-width:0;max-width:560px;margin:auto}.chance-mass{border:1px solid var(--control-border);background:var(--card);border-radius:9px;height:58px;display:flex;overflow:hidden}.chance-mass-part{min-width:0;color:var(--ink);justify-content:center;align-items:center;font-size:24px;font-weight:650;display:flex;overflow:hidden}.chance-mass-part+.chance-mass-part:not([style=flex\:0]){box-shadow:inset 1px 0 var(--control-border)}.chance-room-0{background:var(--mint)}.chance-room-1{background:var(--lavender)}.chance-room-2{background:var(--apricot)}.chance-mass-labels{grid-template-columns:repeat(var(--chance-rooms),minmax(0,1fr));text-align:center;gap:8px;margin:10px 0 0;display:grid}.chance-mass-labels dt{justify-content:center;align-items:center;gap:6px;font-size:14px;font-weight:600;display:flex}.chance-mass-labels dd{font-variant-numeric:tabular-nums;margin:2px 0 0;font-size:19px;font-weight:650}.chance-key{border:1px solid var(--control-border);border-radius:3px;flex-shrink:0;width:12px;height:12px;display:inline-block}.chance-mass-note{color:var(--muted);text-align:center;margin:12px 0 0;font-size:14px}.chance-step-controls{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;margin:16px 0 0;display:flex}.chance-step-controls>span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:14px}.chance-rules{max-width:480px;margin:24px auto 0}.chance-rules table{table-layout:fixed;border-collapse:separate;border-spacing:0;text-align:center;font-variant-numeric:tabular-nums;width:100%;font-size:17px}.chance-rules caption{text-align:center;padding:0 0 10px;font-size:17px;font-weight:650}.chance-rules th{padding:8px;font-size:15px;font-weight:600;line-height:1.3}.chance-rules td{padding:10px 8px;font-weight:600;line-height:1.3}.chance-rules thead th{color:var(--muted);font-weight:400}.chance-rules .chance-stay{background:var(--bg);border-radius:8px}.chance-rule-note{color:var(--muted);margin:10px 0 0;font-size:14px}.chance-answer{gap:10px 12px;max-width:560px}.chance-answer>label{flex:1;min-width:210px;font-size:16px}.chance-answer input{width:100%;font-size:16px}.chance-answer input[aria-invalid=true]{border-color:var(--bad)}.chance-answer-actions{gap:8px;display:flex}.chance-answer .chance-answer-actions button{min-width:84px}.chance-answer .chance-input-help{width:100%;color:var(--muted);margin:0;font-size:14px;line-height:1.5}.chance-answer .chance-hint{width:100%;color:var(--ink);margin:6px 0 0;font-size:15px}.chance-feedback:empty{display:none}.chance-feedback{max-width:none}.chance-feedback h3{color:var(--accent)}[data-chance-verdict=incorrect] .chance-feedback h3,[data-chance-verdict=invalid] .chance-feedback{color:var(--bad)}.chance-feedback-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:18px;display:flex}.chance-explanation{max-width:none}.chance-explanation>h3{margin:24px 0 12px}.chance-destinations{text-align:center;border:0;min-width:0;margin:0 auto 16px;padding:0}.chance-destinations legend{color:var(--muted);margin:0 auto 8px;padding:0;font-size:14px}.chance-destinations>div{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.chance-destinations button[aria-pressed=true]{color:var(--accent-ink);background:var(--accent);border-color:var(--accent)}.chance-flow-intro{margin-bottom:16px;font-size:15px}.chance-flow-rows{gap:12px;max-width:500px;margin:auto;display:grid}.chance-flow-row{text-align:center;grid-template-columns:minmax(0,1fr) 100px minmax(0,1fr);align-items:center;gap:20px;display:grid}.chance-flow-source>span,.chance-flow-arrival>span{color:var(--muted);white-space:nowrap;justify-content:center;align-items:center;gap:7px;font-size:14px;display:flex}.chance-flow-source>strong,.chance-flow-arrival>strong{color:var(--ink);font-variant-numeric:tabular-nums;margin-top:2px;font-size:20px;display:block}.chance-flow-route>span{color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:16px}.chance-flow-route>svg{width:100%;height:18px;color:var(--muted);display:block}.chance-flow-total{color:var(--ink);font-variant-numeric:tabular-nums;text-align:center;margin:18px 0 0;font-size:18px}.chance-flow-total>span,.chance-flow-total>strong{white-space:nowrap}.chance-takeaway{color:var(--ink);margin:18px 0 0}.chance-followup{margin-top:24px}.chance-followup summary{width:fit-content;font-size:16px}.chance-followup>p{margin:12px 0}.chance-followup-options{gap:8px;max-width:680px;display:grid}.chance-followup-options button{text-align:left;min-height:44px;font-weight:500;line-height:1.45}.chance-followup-options button[aria-pressed=true]{background:var(--mint);border-color:var(--accent)}.chance-followup-result:empty{display:none}.chance-followup-result{color:var(--ink);font-size:15px}[data-chance-followup=incorrect] .chance-followup-result{color:var(--bad)}.chance-next-question{justify-content:space-between;align-items:center;gap:16px;margin-top:26px;display:flex}.chance-next-question>p{margin:0;font-size:14px}.chance-next-question>button{min-width:160px}@media (width<=760px){.chance-workspace .practice-toolbar>label{flex-basis:100%;width:100%}.chance-question-navigation{justify-content:space-between;gap:10px;width:100%}.chance-assumption{margin-bottom:20px}.chance-state-pair{grid-template-columns:1fr;gap:22px}.chance-mass{height:52px}.chance-mass-labels{gap:5px}.chance-mass-labels dt{gap:5px;font-size:14px}.chance-rules th{padding:8px 3px;font-size:14px}.chance-rules td{padding:10px 4px;font-size:16px}.chance-step-controls{gap:8px}.chance-step-controls button{padding-inline:12px;font-size:14px}.chance-answer>label{min-width:180px}.chance-answer-actions{width:100%}.chance-answer .chance-answer-actions button{flex:1}.chance-destinations>div{gap:6px}.chance-destinations button{padding-inline:12px;font-size:15px}.chance-flow-row{grid-template-columns:minmax(0,1fr) 68px minmax(0,1fr);gap:12px}.chance-flow-total{font-size:16px}.chance-next-question{flex-direction:column;align-items:stretch;gap:10px}.chance-next-question>button{width:100%}}@media (width<=360px){.chance-mass-labels dt{gap:4px}.chance-key{width:10px;height:10px}.chance-step-controls{grid-template-columns:1fr 1fr;display:grid}.chance-step-controls>span{text-align:center;grid-area:1/1/auto/-1}.chance-step-controls button{width:100%}.chance-flow-row{grid-template-columns:minmax(0,1fr) 60px minmax(0,1fr);gap:8px}.chance-flow-source>span{gap:4px}.chance-flow-source>strong,.chance-flow-arrival>strong{font-size:18px}.chance-feedback-actions>button{width:100%}}@media (prefers-reduced-motion:reduce){.chance-workspace *{transition:none!important;animation:none!important}}.fit-workspace{min-width:0}.fit-workspace p{max-width:none}.fit-workspace .practice-prompt{text-align:center}.fit-question-navigation{justify-content:space-between;align-items:center;gap:16px;display:flex}.fit-question-count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:14px}.fit-scene{background:var(--fit-stage,#f4f6f0);border-radius:12px;padding:10px 8px 8px;display:block;min-height:0!important;overflow:visible!important}.fit-plot{width:100%;max-width:600px;height:auto;margin:auto;display:block;overflow:visible}.fit-plot text,.fit-squares text,.fit-gap-zoom text{fill:var(--ink);font-variant-numeric:tabular-nums;font-family:inherit}.fit-grid{stroke:var(--line);stroke-width:1px}.fit-axis{stroke:var(--control-border);stroke-width:1.5px;fill:none}.fit-line{stroke:var(--accent);stroke-width:3px;fill:none}.fit-best-line{stroke:var(--ink-math);stroke-width:3px;stroke-dasharray:8 6;fill:none}.fit-gap{stroke:var(--fit-residual,#805540);stroke-width:2px;stroke-dasharray:4 3;fill:none}.fit-selected-gap{stroke:var(--fit-residual,#805540);stroke-width:3px;stroke-dasharray:none;fill:none}.fit-point{fill:var(--ink);stroke:var(--fit-paper,#fffdfa);stroke-width:2px}.fit-selected-ring{fill:var(--apricot);stroke:var(--fit-residual,#805540);stroke-width:2px}.fit-point-label{paint-order:stroke;stroke:var(--fit-stage,#f4f6f0);stroke-width:4px;stroke-linejoin:round;font-weight:600}.fit-prediction-guide{stroke:var(--muted);stroke-width:2px;stroke-dasharray:3 5;fill:none}.fit-observed-edge{stroke:var(--control-border);stroke-width:1.5px;stroke-dasharray:6 6;fill:none}.fit-svg-target{paint-order:stroke;stroke:var(--fit-stage,#f4f6f0);stroke-width:4px;font-weight:650;fill:var(--accent)!important}.fit-predicted-point{stroke:var(--accent);stroke-width:4px;fill:none}.fit-new-observation{stroke:var(--ink-math);stroke-width:3px;fill:var(--fit-paper,#fffdfa)}.fit-legend{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 22px;margin:14px 0 22px;font-size:14px;display:flex}.fit-legend>span{align-items:center;gap:7px;display:inline-flex}.fit-legend i{border-top:3px solid var(--accent);width:21px;height:0;display:inline-block}.fit-legend .fit-legend-dot{background:var(--ink);border:0;border-radius:50%;width:10px;height:10px}.fit-legend .fit-legend-best{border-color:var(--ink-math);border-top-style:dashed}.fit-legend .fit-legend-new{border:2px solid var(--ink-math);background:var(--fit-paper,#fffdfa);border-radius:50%;width:12px;height:12px}.fit-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;max-width:680px;margin:auto;display:grid}.fit-control{min-width:0}.fit-control>label{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:6px;font-weight:600;display:flex}.fit-control output{font-variant-numeric:tabular-nums;color:var(--accent);font-weight:700}.fit-range-row{grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px;display:grid}.fit-range-row input{cursor:pointer;width:100%;min-width:0;min-height:44px;accent-color:var(--accent);margin:0;display:block}.fit-step{border:1px solid var(--control-border);background:var(--card);border-radius:9px;min-width:44px;min-height:44px;padding:0;font-size:22px;font-weight:600}.fit-step:hover:not(:disabled){background:var(--mint)}.fit-error-reading{margin:20px auto 0}.fit-total{text-align:center;font-variant-numeric:tabular-nums;margin:0 0 4px;font-size:18px}.fit-total strong{font-size:20px;font-weight:650}.fit-score-help{text-align:center;color:var(--muted);margin:0;font-size:14px}.fit-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.fit-actions button{min-height:44px}.fit-prediction{max-width:570px;margin:22px auto 0}.fit-prediction>label{margin:0 0 10px;font-weight:650;display:block}.fit-prediction-row{align-items:stretch;gap:10px;width:100%;display:flex}.fit-prediction-row input{border:1px solid var(--control-border);background:var(--fit-paper,#fffdfa);font-variant-numeric:tabular-nums;width:100%;min-width:0;min-height:46px;caret-color:var(--accent);border-radius:10px;flex:1;padding:10px 12px}.fit-prediction-row input::placeholder{color:var(--muted)}.fit-prediction-row button{min-height:46px}.fit-show-answer{color:var(--accent);text-underline-offset:4px;background:0 0;border:0;border-radius:8px;min-height:44px;margin:4px auto 0;padding:8px 12px;font-weight:600;text-decoration:underline;display:block}.fit-show-answer:hover{background:var(--mint)}.fit-feedback{margin-top:18px!important}.fit-feedback[data-result=correct],.fit-insight-feedback[data-result=correct]{color:var(--good)}.fit-feedback[data-result=retry],.fit-insight-feedback[data-result=retry]{color:var(--ink-math)}.fit-feedback[data-result=shown]{color:var(--ink)}.fit-explanation{text-align:left;margin-top:18px}.fit-explanation h4,.fit-insight h4{margin:0 0 10px;font-size:18px;font-weight:650}.fit-explanation p{margin:0 0 12px}.fit-prediction-calculation{overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.fit-next{min-height:44px;margin:22px auto 0;display:block}.fit-inspector{margin:14px 0 0}.fit-inspector>summary,.fit-square-comparison>summary,.fit-data>summary{cursor:pointer;min-height:44px;color:var(--accent);padding:10px 0;font-weight:600}.fit-point-pickers{grid-template-columns:repeat(5,minmax(44px,1fr));gap:6px;max-width:330px;margin:10px auto 18px;display:grid}.fit-point-pickers button{border:1px solid var(--control-border);background:var(--card);border-radius:9px;min-width:44px;min-height:44px;padding:4px;font-weight:650}.fit-point-pickers button[aria-pressed=true]{background:var(--accent);color:var(--card);border-color:var(--accent)}.fit-point-pickers button:hover:not([aria-pressed=true]){background:var(--mint)}.fit-gap-arithmetic{text-align:center;font-variant-numeric:tabular-nums}.fit-gap-arithmetic p:first-child{margin:0 0 4px}.fit-gap-arithmetic p:last-child{color:var(--muted);margin:0;font-size:14px}.fit-gap-zoom{width:100%;max-width:320px;height:auto;margin:18px auto 0;display:block}.fit-gap-formula{text-align:center;font-variant-numeric:tabular-nums;margin:0 0 6px}.fit-squares{width:100%;max-width:340px;height:auto;margin:auto;display:block}.fit-error-square{fill:var(--apricot);stroke:var(--fit-residual,#805540);stroke-width:1.2px}.fit-selected-square .fit-error-square{stroke:var(--ink-math);stroke-width:2.5px}.fit-selected-square text{font-weight:750}.fit-zero-square{stroke:var(--fit-residual,#805540);stroke-width:1.5px}.fit-square-caption{text-align:center;color:var(--muted);margin:4px 0 14px;font-size:14px}.fit-square-comparison{margin-top:4px}.fit-insight{text-align:left;margin-top:24px}.fit-insight>p{margin-bottom:12px}.fit-insight-options{gap:8px;display:grid}.fit-insight-options button{text-align:left;width:100%;min-height:44px;font-weight:500}.fit-insight-options button[aria-pressed=true]{background:var(--mint);border-color:var(--accent)}.fit-insight-feedback{margin:12px 0 0}.fit-data{margin-top:14px}.fit-data table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;margin:8px 0 16px}.fit-data th,.fit-data td{text-align:left;border-bottom:1px solid var(--line);padding:8px 12px}.fit-note{color:var(--muted);margin:12px 0 0;font-size:14px}.fit-workspace button:focus-visible,.fit-workspace input:focus-visible,.fit-workspace select:focus-visible,.fit-workspace summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}@media (width<=600px){.fit-scene{padding:4px 0 8px}.fit-controls{grid-template-columns:minmax(0,1fr);gap:14px}.fit-legend{gap:8px 14px;margin:12px 0 18px}.fit-prediction-row{flex-direction:column}.fit-prediction-row button{width:100%}.fit-workspace .fit-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;display:grid}.fit-workspace .fit-actions button{width:100%;min-width:0;max-width:100%;padding:9px 8px}.fit-actions [data-fit-check],.fit-actions [data-fit-continue]{grid-column:1/-1}.fit-data th,.fit-data td{padding:8px}.fit-total{font-size:17px}.fit-total strong{font-size:19px}.fit-gap-arithmetic,.fit-square-caption{text-align:left}.fit-error-reading{margin-top:18px}.fit-next{width:100%}}@media (width<=500px){.fit-workspace .practice-toolbar{gap:10px;margin-bottom:18px}.fit-workspace .practice-toolbar>label{flex:1 0 100%;width:100%;min-width:0}.fit-workspace .practice-toolbar select{width:100%;min-width:0}.fit-question-navigation{width:100%}.fit-range-row{gap:6px}}@media (width<=400px){.fit-point-pickers{gap:2px}.fit-range-row{gap:4px}.fit-step{border-radius:8px}}:root[data-theme=dark] .learning-practice{--fit-stage:var(--surface);--fit-paper:var(--card);--fit-residual:var(--ink-math)}@media (prefers-color-scheme:dark){:root[data-theme=system] .learning-practice{--fit-stage:var(--surface);--fit-paper:var(--card);--fit-residual:var(--ink-math)}}.music-learning .melody-preview{min-width:0}.music-learning .melody-help{margin:24px 0 28px}.music-learning .melody-help>summary{cursor:pointer;min-height:44px;color:var(--accent);text-underline-offset:.2em;padding:10px 0;font-weight:650;text-decoration:underline}.music-learning .melody-concepts{padding-top:14px}.music-learning .melody-concepts .actions{justify-content:flex-start;margin-block:16px}.music-learning .melody-settings{align-items:start;gap:20px;margin:24px 0}.music-learning .melody-settings .field{flex-basis:245px}.music-learning .melody-settings>p{flex:0 460px;margin:0}.music-learning .melody-workspace>h2,.music-learning .melody-reference{text-align:center}.music-learning .melody-workspace>h2{margin-bottom:10px}.music-learning .melody-reference{margin-inline:auto}.music-learning .melody-beats{justify-content:center;gap:8px;max-width:520px;margin:24px auto 16px;display:flex}.music-learning .melody-beat{border-bottom:3px solid var(--control-border);font-variant-numeric:tabular-nums;flex-direction:column;flex:1 1 0;align-items:center;gap:2px;min-width:0;max-width:64px;padding:6px 0 8px;display:flex}.music-learning .melody-beat>span{color:var(--muted);font-size:.85rem}.music-learning .melody-beat>strong{font-weight:650}.music-learning .melody-beat[data-playing]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);border-radius:6px 6px 0 0}.music-learning .melody-beat[data-playing]>span{color:var(--accent-ink)}.music-learning .melody-listen-actions{margin:20px auto 12px}.music-learning .melody-audio-status{text-align:center;font-size:.92rem}.music-learning .melody-grid-scroll{overscroll-behavior-x:contain;scrollbar-width:thin;max-width:660px;margin:28px auto 0;padding:5px 5px 12px;overflow-x:auto}.music-learning .melody-grid{min-width:calc(42px + var(--melody-notes)*48px);flex-direction:column;gap:5px;width:100%;display:flex}.music-learning .melody-grid-row{grid-template-columns:42px repeat(var(--melody-notes),minmax(44px,1fr));align-items:center;gap:4px;display:grid}.music-learning .melody-grid-heading{text-align:center;min-height:40px;margin-bottom:5px;font-size:.9rem;font-weight:650}.music-learning .melody-grid-heading small{color:var(--muted);font-size:.7rem;font-weight:500;display:block}.music-learning .melody-grid-heading>span:first-child{text-align:left;font-size:.8rem}.music-learning .melody-pitch-label,.music-learning .melody-grid-heading>span:first-child{z-index:2;background:var(--subject-surface,var(--lavender));align-self:stretch;align-items:center;min-width:42px;margin-right:-4px;padding-right:4px;display:flex;position:sticky;left:0}.music-learning .melody-pitch-label{text-align:left;font-variant-numeric:tabular-nums;font-size:.85rem;font-weight:600}.music-learning .melody-grid-cell{border:1px solid var(--control-border);background:var(--melody-cell,#f8faf3);border-radius:7px;justify-content:center;align-items:center;width:100%;min-width:44px;height:44px;min-height:44px;padding:0;display:flex;overflow:visible}.music-learning .melody-grid-cell[data-given]{border-style:dashed;border-color:var(--melody-given-line,#95a38f);background:0 0}.music-learning .melody-grid-cell:disabled{background:var(--melody-disabled,#e8eddf);color:var(--muted);border-color:var(--melody-disabled-line,#9aa790);opacity:1}.music-learning .melody-grid-cell[data-given]:disabled{background:0 0}.music-learning .melody-grid-cell[data-selected],.music-learning .melody-grid-cell[data-selected]:disabled{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.music-learning .melody-grid-cell[data-given][data-selected]:disabled{color:#fff;background:#465e4d;border-color:#465e4d}.music-learning .melody-dot{background:currentColor;border-radius:50%;width:14px;height:14px}.music-learning .melody-grid-cell:hover:enabled{background:var(--melody-hover,#c6d9c3)}.music-learning .melody-grid-cell[data-selected]:hover:enabled{background:var(--accent-hover)}.music-learning .melody-keyboard-hint{text-align:center;margin:8px auto 24px}.music-learning .melody-swipe-hint{display:none}.music-learning .melody-result{text-align:center}.music-learning .melody-answer-actions{margin-block:22px 0}.music-learning .melody-review{margin:32px auto 0;padding-top:26px}.music-learning .melody-review h3{margin-bottom:10px}.music-learning .melody-table-scroll{overscroll-behavior-x:contain;scrollbar-width:thin;margin:20px 0;padding:4px 0 10px;overflow-x:auto}.music-learning .melody-comparison{border-collapse:collapse;text-align:center;font-variant-numeric:tabular-nums;width:100%;font-size:.94rem}.music-learning .melody-comparison th{font-weight:600}.music-learning .melody-comparison th,.music-learning .melody-comparison td{border-bottom:1px solid var(--control-border);min-width:54px;padding:10px 7px}.music-learning .melody-comparison th:first-child{z-index:2;background:var(--subject-surface,var(--lavender));text-align:left;min-width:60px;padding-left:0;position:sticky;left:0}.music-learning .melody-comparison td>strong{font-weight:650;display:block}.music-learning .melody-comparison td>span{min-height:1.5em;font-size:.72rem;display:block}.music-learning .melody-comparison .melody-given{color:var(--muted)}.music-learning .melody-match{color:var(--right-ink);background:var(--right-bg)}.music-learning .melody-mismatch{color:var(--wrong-ink);background:var(--wrong-bg)}.music-learning .melody-note-feedback{margin:18px 0 0;padding-left:26px}.music-learning .melody-note-feedback li{margin-bottom:10px;padding-left:4px}.music-learning .melody-bottom-actions{margin-top:28px;padding-top:24px}.music-learning .melody-workspace>.melody-bottom-actions:last-child{margin-bottom:0}@media (width<=650px){.music-learning .melody-settings{align-items:stretch;gap:12px}.music-learning .melody-settings>p,.music-learning .melody-settings .field{flex-basis:100%}.music-learning .melody-workspace{padding-inline:12px}.music-learning .melody-beats{gap:5px}.music-learning .melody-beat{font-size:.88rem}.music-learning .melody-grid-scroll{margin-top:22px}.music-learning .melody-swipe-hint{display:inline}.music-learning .melody-listen-actions{gap:8px}.music-learning .melody-listen-actions button{flex-basis:130px}.music-learning .melody-listen-actions [data-action=stop]{flex:0 90px}.music-learning .melody-keyboard-hint{text-align:left}.music-learning .melody-comparison{font-size:.87rem}.music-learning .melody-note-feedback{padding-left:23px}.music-learning .melody-grid-cell:focus-visible{outline-offset:1px}.music-learning .melody-answer-actions button{flex-basis:150px}}.music-learning .melody-settings .field{flex:220px;min-width:0}.music-learning .melody-grid-heading>span:first-child{overflow-wrap:anywhere}.music-learning .melody-settings select{width:100%;max-width:100%}:root[data-theme=dark] .music-learning{--melody-cell:var(--surface);--melody-given-line:var(--control-border);--melody-disabled:var(--control-disabled-bg);--melody-disabled-line:var(--control-border);--melody-hover:var(--accent-soft)}@media (prefers-color-scheme:dark){:root[data-theme=system] .music-learning{--melody-cell:var(--surface);--melody-given-line:var(--control-border);--melody-disabled:var(--control-disabled-bg);--melody-disabled-line:var(--control-border);--melody-hover:var(--accent-soft)}}.inverse-rule{text-align:center;margin-bottom:24px}.inverse-rule p,.inverse-example>p,.inverse-build p,.inverse-replay-pair p{margin:0 0 10px;font-weight:600}.inverse-rule ol{flex-wrap:wrap;justify-content:center;gap:10px 28px;margin:0;padding-left:24px;font-size:15px;display:flex}.inverse-rule li{padding-left:2px}.inverse-example{text-align:center;margin:0 auto 24px}.inverse-pair{justify-content:center;align-items:center;gap:16px;max-width:300px;margin:auto;display:flex}.inverse-example .inverse-figure{width:88px}.inverse-figure{width:160px;max-width:100%;color:var(--ink);margin:auto}.inverse-figure .dp-cell{background:0 0;border:0;min-width:0;padding:0;display:block}.inverse-figure svg{width:100%;height:auto;display:block}.inverse-arrow{flex:none;width:28px;display:block}.inverse-arrow svg,.inverse-direction svg{width:100%;height:auto;display:block}.inverse-build{text-align:center;grid-template-columns:minmax(0,1fr) 72px minmax(0,1fr);align-items:center;gap:20px;max-width:520px;margin:auto;display:grid}.inverse-construction,.inverse-target{min-width:0}.inverse-construction>.inverse-figure{background:var(--accent-soft)}.inverse-direction{color:var(--muted);font-size:14px;line-height:1.35}.inverse-direction svg{width:32px;margin:0 auto 7px}.inverse-build .inverse-figure{background:var(--surface);border-radius:12px;padding:6px}.inverse-start-note{color:var(--muted);text-align:center;margin:18px 0;font-size:15px}.inverse-controls,.inverse-features{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:520px;margin:0 auto;display:grid}.inverse-controls button,.inverse-features button{min-width:0;min-height:44px;padding:10px 12px}.inverse-features{margin-top:10px}.inverse-feature-note{color:var(--muted);text-align:center;max-width:520px;margin:12px auto 0;font-size:14px}.inverse-features[hidden]{display:none}.inverse-features button[aria-pressed=true],.inverse-steps button[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.inverse-pose{text-align:center;color:var(--muted);margin:14px 0 0;font-size:14px}.inverse-hint{color:var(--muted);margin:18px 0 0}.inverse-steps{flex-wrap:wrap;gap:8px;display:flex}.inverse-steps button{min-height:44px;padding:9px 15px}.inverse-replay-pair{text-align:center;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:440px;margin:auto;display:grid}.inverse-replay-pair .inverse-figure{width:140px}.inverse-proof{padding-left:24px}.inverse-proof li{margin-block:12px;padding-left:4px;line-height:1.6}.inverse-practice button:focus-visible,.inverse-practice select:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.inverse-practice .practice-prompt:focus-visible{outline:2px solid var(--accent);outline-offset:6px;border-radius:3px}@media (width<=520px){.inverse-build{grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr);gap:8px}.inverse-direction span{display:none}.inverse-figure{width:130px}.inverse-rule ol{text-align:left;width:fit-content;margin:auto;display:block}.inverse-rule li+li{margin-top:7px}.inverse-controls button,.inverse-features button{padding-inline:8px;font-size:14px}.inverse-example .inverse-figure{width:75px}.inverse-pair{gap:10px}.inverse-start-note{font-size:14px}.inverse-replay-pair{gap:16px}}.inverse-setup-example{text-align:center;margin:18px auto}.inverse-setup-example .inverse-figure{width:110px}.inverse-setup-example p{margin:0 0 8px;font-size:14px}.inverse-answer-box{border-radius:12px;min-width:0;padding:10px}.inverse-answer-box [data-answer-label]{font-size:14px;font-weight:600}.inverse-replay-source{flex-wrap:wrap;gap:8px;margin:0 0 16px;display:flex}.inverse-replay-source[hidden]{display:none}.inverse-replay-source button{min-height:44px;padding:9px 15px}.inverse-replay-source button[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.inverse-practice .practice-round-actions{margin-top:16px}.inverse-practice .practice-verdict{margin-top:22px}.inverse-practice .answer-explorer .practice-explanation:first-of-type{margin-top:16px}.patterns-rules{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:0 0 12px;display:grid}.patterns-grammar{color:var(--muted);margin:0 0 24px;font-size:14px;line-height:1.5}.patterns-rules h4,.patterns-editor h4,.patterns-proof h4{margin:0 0 8px;font-size:16px;font-weight:650;line-height:1.4}.patterns-rules p{color:var(--muted);margin:0 0 6px;font-size:14px;line-height:1.55}.patterns-rules strong{color:var(--ink)}.patterns-layout{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start;gap:38px;max-width:780px;margin:auto;display:grid}.patterns-diagram{min-width:0}.patterns-board{grid-template-columns:22px repeat(3,minmax(0,1fr));gap:8px;max-width:400px;margin:auto;display:grid}.patterns-coordinate{color:var(--muted);justify-content:center;align-items:center;min-height:20px;font-size:14px;display:flex}.patterns-cell{aspect-ratio:1;border:1px solid var(--line);background:var(--surface);min-width:0;color:var(--ink);border-radius:10px;justify-content:center;align-items:center;padding:3px;display:flex;position:relative}button.patterns-missing{cursor:pointer;min-height:44px;padding:3px}button.patterns-missing[aria-pressed=true]{outline:2px solid var(--accent);outline-offset:2px}button.patterns-missing:hover{filter:brightness(.98)}.patterns-cell-name{color:var(--accent);font-size:14px;font-weight:650;position:absolute;top:3px;left:6px}.patterns-figure{width:100%;color:var(--ink)}.patterns-figure svg{width:100%;height:auto;display:block}.patterns-grid-note{color:var(--muted);margin:14px 0 0;font-size:14px;line-height:1.5}.patterns-editor{min-width:0}.patterns-cell-switch,.patterns-layer-switch{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:16px;display:grid}.patterns-cell-switch button,.patterns-layer-switch button{min-height:44px;padding:10px 12px}.patterns-cell-switch button[aria-pressed=true],.patterns-layer-switch button[aria-pressed=true],.patterns-positions button[aria-pressed=true],.patterns-proof-switch button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.patterns-editor-figure{width:120px;margin:0 auto 12px}.patterns-editor h4{text-align:center}.patterns-layer-switch[hidden]{display:none}.patterns-editor-instruction{color:var(--muted);margin:0 0 10px;font-size:14px;line-height:1.5}.patterns-positions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.patterns-positions button{min-height:44px;padding:10px 12px}.patterns-current{color:var(--muted);min-height:42px;margin:12px 0;font-size:14px;line-height:1.5}.patterns-clear{min-height:44px;padding:10px 14px;font-size:14px}.patterns-hint{color:var(--muted);margin:18px 0 0}.patterns-proof-switch{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:20px 0;display:grid}.patterns-proof-switch button{justify-content:space-between;align-items:center;gap:8px;min-width:0;min-height:48px;padding:10px 12px;font-size:14px;display:flex}.patterns-proof-switch button span:last-child{font-size:12px;font-weight:500}.patterns-proof-figures{text-align:center;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;max-width:440px;margin:16px auto 20px;display:grid}.patterns-proof-figures p{margin:0 0 4px;font-size:14px;font-weight:600}.patterns-proof-figures .patterns-figure{max-width:120px;margin:auto}.patterns-practice button:focus-visible,.patterns-practice select:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.patterns-practice .practice-prompt:focus-visible{outline:2px solid var(--accent);outline-offset:6px;border-radius:3px}@media (width<=660px){.patterns-rules{gap:16px}.patterns-layout{grid-template-columns:minmax(0,1fr);gap:26px}.patterns-board{max-width:340px}.patterns-editor{width:100%;max-width:340px;margin:auto}.patterns-proof-switch button{text-align:left;gap:3px;display:grid}.patterns-current{min-height:0}.patterns-proof-figures{gap:12px}}@media (width<=440px){.patterns-rules{grid-template-columns:minmax(0,1fr);gap:14px}.patterns-board{grid-template-columns:18px repeat(3,minmax(0,1fr));gap:6px}.patterns-cell-name{top:1px;left:4px}.patterns-editor-figure{width:100px}.patterns-proof-switch button{padding:8px;font-size:13px}.patterns-grid-note{font-size:13px}.patterns-proof-figures{gap:8px}}.patterns-missing .patterns-figure{width:calc(100% - 12px);padding-bottom:18px}.patterns-missing>[data-answer-label]{text-align:center;font-size:12px;font-weight:600;line-height:1.1;position:absolute;bottom:4px;left:3px;right:3px}.patterns-missing>[data-answer-mark]{position:absolute;top:5px;right:5px}.patterns-answer-box{border-radius:10px;min-width:0;padding:8px}.patterns-proof-figures [data-answer-label]{font-size:12px;line-height:1.3}.patterns-proof-source{flex-wrap:wrap;gap:8px;margin:0 0 16px;display:flex}.patterns-proof-source[hidden]{display:none}.patterns-proof-source button{min-height:44px;padding:9px 15px}.patterns-proof-source button[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.patterns-practice .practice-round-actions{margin-top:16px}.patterns-practice .practice-verdict{margin-top:22px}.patterns-practice .answer-explorer .practice-explanation:first-of-type{margin-top:16px}.scene-workspace{min-width:0}.scene-workspace p{max-width:none}.scene-workspace .practice-prompt{text-align:center}.scene-assumptions{color:var(--muted);margin:14px 0 0;line-height:1.55}.scene-stage{justify-content:center;align-items:center;min-width:0;margin:24px auto 8px;display:flex}.scene-diagram{width:100%;max-width:400px;color:var(--ink);display:block;overflow:visible}.scene-diagram text{fill:var(--ink);font-variant-numeric:tabular-nums;font-family:inherit;font-size:22px}.scene-marker circle{fill:var(--card);stroke:var(--control-border);stroke-width:1.5px}.scene-marker text{font-size:21px;font-weight:650}.scene-marker.is-selected circle{fill:var(--mint);stroke:var(--accent);stroke-width:3px}.scene-pipe-edge{fill:none;stroke:var(--ink);stroke-width:16px;stroke-linejoin:round}.scene-pipe-inner{fill:none;stroke:var(--card);stroke-width:10px;stroke-linejoin:round}.scene-wire,.scene-arrow{fill:none;stroke:var(--ink);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.scene-flow{fill:none;stroke:var(--accent);stroke-width:6px;stroke-linejoin:round}.scene-water{fill:var(--mint);stroke:var(--accent);stroke-width:2px}.scene-battery{fill:none;stroke:var(--ink);stroke-width:4px}.scene-contact{fill:var(--ink)}.scene-lamp{fill:var(--card);stroke:var(--ink);stroke-width:3px}.scene-lamp.is-lit{fill:var(--mint);stroke:var(--accent);stroke-width:4px}.scene-wheel{fill:var(--card);stroke:var(--ink);stroke-width:2px}.scene-spoke{fill:none;stroke:var(--line);stroke-width:2px}.scene-rotation{fill:none;stroke:var(--ink);stroke-width:3px}.scene-wheel-active .scene-rotation{stroke:var(--accent)}.scene-belt{fill:none;stroke:var(--ink);stroke-width:5px;stroke-linejoin:round}.scene-event{fill:var(--card);stroke:var(--control-border);stroke-width:1.5px}.scene-event.scene-active{fill:var(--mint);stroke:var(--accent);stroke-width:2.5px}.scene-event.is-blocked{fill:var(--apricot);stroke:var(--ink-math,#633e2d);stroke-width:3px;stroke-dasharray:5 3}.scene-timeline-rail{fill:none;stroke:var(--line);stroke-width:3px}.scene-interval{fill:var(--mint);stroke:var(--ink);stroke-width:2px}.scene-train{fill:var(--apricot);stroke:var(--ink);stroke-width:2px}.scene-tick{fill:none;stroke:var(--control-border);stroke-width:2px}.scene-arrival{fill:none;stroke:var(--ink);stroke-width:2px;stroke-dasharray:6 5}.scene-playhead{stroke:var(--accent);stroke-width:3px;stroke-dasharray:4 4}.scene-wire.scene-active,.scene-belt.scene-active,.scene-arrival.scene-active{stroke:var(--accent);stroke-width:4px}.scene-interval.scene-active,.scene-train.scene-active{stroke:var(--accent);stroke-width:3px}.scene-state-label{text-align:center;color:var(--muted);min-height:24px;margin:12px 0 24px}.scene-choices{border:0;min-width:0;margin:0;padding:0}.scene-choices legend{margin:0 0 12px;padding:0;font-size:20px;font-weight:650;line-height:1.4}.scene-choices>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.scene-choices[data-scene-repairs]>div{grid-template-columns:1fr}.scene-choice{border:1px solid var(--control-border);background:var(--card);cursor:pointer;border-radius:12px;align-items:center;gap:12px;min-width:0;min-height:52px;padding:12px;line-height:1.4;display:flex}.scene-choice:hover:not([data-answer-state]){background:var(--surface)}.scene-choice:has(input:disabled){cursor:default}.scene-choice input{width:20px;height:20px;accent-color:var(--accent);flex:0 0 20px;margin:0}.scene-choice span{min-width:0}.scene-choice strong{margin-right:4px}.scene-choice-copy{gap:4px;display:grid}.scene-choice [data-answer-label]:empty{display:none}.scene-actions{margin-top:16px}.scene-workspace button{border-radius:12px;min-height:52px}.scene-feedback{margin:20px 0 0}.scene-replay{margin-top:24px}.scene-replay-content{padding-top:16px}.scene-compare,.scene-replay-actions{flex-wrap:wrap;gap:12px;display:flex}.scene-compare button{flex:0 160px}.scene-compare button[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);font-weight:650}.scene-event-caption{min-height:3em;margin:16px 0;line-height:1.5}.scene-replay-actions{margin-bottom:20px}.scene-replay-content>p:last-child{margin:0;line-height:1.6}.scene-workspace :is(button,input,select):focus-visible{outline:3px solid var(--accent);outline-offset:4px}.scene-workspace button:disabled{color:var(--control-disabled-ink,#4f5d53);background:var(--line);cursor:default}.scene-workspace ::selection{background:var(--mint);color:var(--ink)}.scene-example svg{width:100%;max-width:360px;height:auto;margin:0 auto 16px;display:block}.scene-example rect{fill:var(--card);stroke:var(--control-border);stroke-width:1.5px}.scene-example path{fill:none;stroke:var(--ink);stroke-width:2px}.scene-example text{fill:var(--ink);font-family:inherit;font-size:22px}.scene-example p{margin:0}@media (width<=650px){.scene-choices>div{grid-template-columns:repeat(2,minmax(0,1fr))}.scene-stage{margin-top:20px}.scene-diagram{max-width:360px}.scene-choice{gap:8px;padding:12px}.scene-state-label{font-size:14px}.scene-replay-actions{grid-template-columns:1fr;display:grid}.scene-compare{flex-wrap:nowrap}.scene-compare button{flex:1;min-width:0}}@media (forced-colors:active){.scene-diagram text,.scene-example text{fill:canvastext}.scene-marker circle,.scene-lamp,.scene-wheel,.scene-event,.scene-interval,.scene-train,.scene-example rect{fill:canvas;stroke:canvastext}.scene-marker.is-selected circle,.scene-event.scene-active{fill:canvas;stroke:highlight}.scene-pipe-edge,.scene-wire,.scene-belt,.scene-arrow,.scene-rotation,.scene-battery,.scene-arrival,.scene-example path{stroke:canvastext}.scene-pipe-inner{stroke:canvas}.scene-flow,.scene-playhead{stroke:highlight}.scene-compare button[aria-pressed=true]{outline:2px solid highlight}}.span-workspace{--span-soft:var(--lavender,#e7e2f3);--span-ink:var(--ink-memory,#423c58)}.span-workspace [hidden]{display:none!important}.span-workspace button,.span-workspace input{min-height:52px;font:inherit;border-radius:12px}.span-workspace button{cursor:pointer}.span-workspace button:disabled{cursor:default}.span-workspace button:focus-visible,.span-workspace input:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.span-workspace [tabindex="-1"]:focus{outline:none}.span-instructions{gap:10px;margin:0 0 24px;padding-left:24px;display:grid}.span-instructions li{padding-left:5px}.span-setup-example p{margin:12px 0 0}.span-setup-example .span-example-sentence{font-size:20px;font-weight:600}.span-repeat-note{color:var(--muted);margin:0 0 20px}.span-progress{justify-content:center;max-width:480px;margin:0 auto 26px;padding:0;list-style:none;display:flex}.span-progress li{color:var(--muted);flex:1;justify-content:center;display:flex;position:relative}.span-progress li+li:before{content:"";background:var(--line);width:calc(100% - 44px);height:1px;position:absolute;top:21px;right:calc(50% + 22px)}.span-position{border:1px solid var(--control-border,#748477);font-variant-numeric:tabular-nums;width:44px;height:44px;color:var(--ink);background:var(--card);border-radius:50%;flex-shrink:0;place-items:center;font-size:16px;font-weight:600;display:grid}.span-progress-current .span-position{border:2px solid var(--accent);background:var(--accent-soft);color:var(--accent)}.span-progress-complete .span-position{background:var(--span-soft);border-color:var(--span-ink);color:var(--span-ink)}.span-step-label{text-align:center;color:var(--muted);margin:0 0 14px;font-size:14px}.span-sentence{letter-spacing:-.02em;text-align:center;text-wrap:balance;min-height:112px;color:var(--ink);place-content:center;margin:0;padding:20px 28px;font-size:clamp(1.375rem,2.4vw,1.875rem);font-weight:600;line-height:1.4;display:grid}.span-reading-instruction,.span-recall-instruction{text-align:center;color:var(--muted);margin:22px 0 18px}.span-judgment-form{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.span-judgment-form button{min-width:190px;min-height:52px}.span-judgment-form button:hover{background:var(--accent-soft);border-color:var(--accent)}.span-audio{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:26px;padding-top:22px;display:flex}.span-audio p{color:var(--muted);margin:0;font-size:14px}.span-audio button{font-size:14px}.span-recall-form{margin-top:26px}.span-recall-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:620px;margin-inline:auto;display:grid}.span-recall-fields label{gap:7px;min-width:0;font-weight:600;display:grid}.span-recall-fields label>span{font-size:14px}.span-recall-fields input{box-sizing:border-box;border:1px solid var(--control-border,#748477);background:var(--card);width:100%;min-width:0;color:var(--ink);caret-color:var(--accent);border-radius:12px;padding:10px 12px}.span-recall-format{text-align:center;color:var(--muted);margin:18px 0 0;font-size:14px}.span-recall-actions{margin-top:24px}.span-empty-note{color:var(--ink);border-block:1px solid var(--line);margin:16px 0 0;padding:14px 0}.span-scores{border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:24px 0;padding-bottom:24px;display:grid}.span-scores>div{text-align:center}.span-scores dt{color:var(--muted);margin-bottom:6px;font-size:14px}.span-scores dd{letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin:0;font-size:26px;font-weight:650}.span-scores dd>span{letter-spacing:normal;font-size:16px;font-weight:400}.span-review-guide{color:var(--muted);margin:0 0 20px}.span-answer-explorer{border-top:1px solid var(--line);margin-top:24px;padding-top:12px}.span-answer-explorer>summary{min-height:52px}.span-answer-explorer[open]>.span-review-guide{margin-top:12px}.span-review-path{gap:12px;margin:0;padding:0;list-style:none;display:flex}.span-review-path li{flex:1;min-width:0}.span-word-button{border:1px solid var(--control-border,#748477);background:var(--card);width:100%;height:100%;color:var(--ink);text-align:center;overflow-wrap:anywhere;border-radius:12px;flex-direction:column;align-items:center;gap:9px;padding:16px 10px;display:flex}.span-word-button .span-position{width:32px;height:32px;font-size:14px}.span-word-button>strong{letter-spacing:-.02em;font-size:20px;line-height:1.2}.span-word-result{color:var(--muted);font-size:14px;line-height:1.35}.span-word-button:hover{border-color:var(--accent);background:var(--accent-soft)}.span-word-button[aria-pressed=true]{background:var(--span-soft);border-color:var(--span-ink);color:var(--span-ink)}.span-word-button[aria-pressed=true] .span-word-result{color:var(--span-ink)}.span-inspection{border-top:1px solid var(--line);color:var(--ink);margin:24px 0 0;padding:24px 0 0}.span-inspection h4{letter-spacing:-.02em;color:var(--ink);margin:0 0 18px;font-size:20px;line-height:1.3}.span-reconstruction{grid-template-columns:minmax(0,2fr) 28px minmax(0,1fr) 28px minmax(0,1fr);align-items:center;gap:12px;margin-bottom:20px;display:grid}.span-reconstruction>div{min-width:0}.span-reconstruction>div>span{color:var(--muted);font-size:14px}.span-reconstruction p{overflow-wrap:anywhere;margin:6px 0 0}.span-reconstruction .span-flow-arrow{color:var(--muted)}.span-flow-arrow svg{width:28px;height:18px;display:block}.span-inspect-judgment,.span-inspect-recall{margin:14px 0 0;line-height:1.6}@media (width<=760px){.span-sentence{min-height:128px;padding:20px 16px}.span-reconstruction{grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr);gap:12px}.span-reconstruction-sentence{border-bottom:1px solid var(--line);grid-column:1/-1;padding-bottom:12px}.span-reconstruction-sentence+.span-flow-arrow{display:none}.span-review-path{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.span-word-button{padding:14px 10px}}@media (width<=440px){.span-sentence{padding:18px 4px;font-size:22px}.span-judgment-form{grid-template-columns:1fr;gap:10px;display:grid}.span-judgment-form button{width:100%;min-width:0}.span-audio{justify-content:flex-start;gap:8px}.span-recall-fields{gap:14px 12px}.span-scores{gap:14px}.span-scores dd>span{font-size:14px;display:block}.span-scores dt{min-height:42px}.span-word-button>strong{font-size:18px}}@media (forced-colors:active){.span-word-button[aria-pressed=true],.span-progress-current .span-position{outline-offset:2px;outline:2px solid highlight}.span-progress li+li:before{background:canvastext}}.balances-workspace{min-width:0}.balances-assumption{text-align:center;color:var(--muted);margin:0 0 24px}.balances-clues{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 32px;max-width:780px;margin:0 auto 30px;display:grid}.balances-clue{min-width:0}.balances-clue-index{color:var(--muted);margin-bottom:7px;font-size:14px;display:block}.balances-equation{background:var(--balance-stage,#f4f6f0);border-radius:10px;justify-content:center;align-items:center;gap:12px;min-height:52px;padding:8px;display:flex}.balances-pan{font-variant-numeric:tabular-nums;flex-wrap:wrap;justify-content:center;align-items:center;gap:7px;font-size:19px;display:inline-flex}.balances-group{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.balances-group svg{flex:0 0 30px}.balances-relation{font-size:28px;font-weight:600}.balances-task{text-align:center;margin:20px 0 14px;font-size:20px;font-weight:600}.balances-target{justify-content:center;align-items:center;gap:30px;margin:0 auto 25px;display:flex}.balances-target>div{text-align:center;gap:10px;display:grid}.balances-target>div>span:first-child{color:var(--muted);font-size:14px}.balances-question-mark{color:var(--muted);font-size:26px;font-weight:650}.balances-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:540px;margin:auto;display:grid}.balances-choices button{width:100%;min-height:48px}.balances-choices [aria-pressed=true]{color:var(--accent);background:var(--mint);border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.balances-actions{justify-content:center;gap:10px;margin-top:24px;display:flex}.balances-actions button{min-width:130px}.balances-hint{color:var(--muted);margin-top:20px}.balances-workspace [data-result=correct]{color:var(--good,#1f6b3a)}.balances-workspace [data-result=retry]{color:var(--ink-math)}.balances-reveal{margin-top:12px}.balances-review h4{color:var(--ink);margin:28px 0 10px;font-size:20px}.balances-review ol{padding-left:24px}.balances-review li{margin-bottom:10px;padding-left:3px}.balances-explorer{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:26px;margin-top:20px;display:grid}.balances-scale{width:100%;max-width:430px;height:auto;margin:auto;display:block}.balances-scale text{fill:var(--ink);font-family:inherit}.balances-explorer-controls{min-width:0}.balances-witnesses{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.balances-witnesses button{flex:1;min-width:0;padding-inline:10px}.balances-witnesses [aria-pressed=true]{background:var(--mint);border-color:var(--accent)}.balances-slider-label{color:var(--ink);justify-content:space-between;font-weight:650;display:flex}.balances-slider-label output{color:var(--accent)}.balances-range{grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px;margin:8px 0;display:grid}.balances-range button{min-height:44px;padding:0;font-size:22px}.balances-range input{min-width:0;accent-color:var(--accent);margin:0}.balances-range-note{color:var(--muted);margin:0 0 18px;font-size:14px}.balances-weights{color:var(--ink);grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;display:grid}.balances-weights>div{justify-content:space-between;align-items:center;gap:8px;display:flex}.balances-weights dt{align-items:center;gap:5px;font-size:14px;display:flex}.balances-weights dt svg{width:24px;height:24px}.balances-weights dd{font-variant-numeric:tabular-nums;margin:0;font-weight:650}.balances-example-result{text-align:center;color:var(--ink);margin:20px 0 10px;font-weight:650}.balances-proof-note{font-size:14px}.balances-next{margin:24px 0 0 auto;display:block}@media (width<=700px){.balances-explorer{grid-template-columns:minmax(0,1fr);gap:12px}.balances-clues{gap:14px 20px}.balances-pan{font-size:17px}.balances-equation{gap:8px}}@media (width<=500px){.balances-clues{grid-template-columns:minmax(0,1fr);gap:14px}.balances-clue{grid-template-columns:48px minmax(0,1fr);align-items:center;gap:8px;display:grid}.balances-clue-index{margin:0}.balances-target{gap:12px}.balances-target .balances-pan{gap:4px}.balances-task{font-size:18px}.balances-choices{gap:8px}.balances-choices button{padding:10px 8px;font-size:15px}.balances-actions button{flex:1;min-width:0}.balances-next{width:100%}.balances-explorer{margin-top:12px}.balances-example-result{text-align:left}}.balances-choices button{flex-direction:column;justify-content:center;align-items:center;gap:5px;display:flex}.balances-answer-label{font-size:12px;font-weight:500;line-height:1.4}.balances-workspace .practice-feedback{color:var(--ink)}.practice-setup-example>.balances-equation{max-width:420px;margin-inline:auto}:root[data-theme=dark] .learning-practice{--balance-stage:var(--surface)}@media (prefers-color-scheme:dark){:root[data-theme=system] .learning-practice{--balance-stage:var(--surface)}}.rc-workspace{--rc-room-surface:var(--rc-room-background,#edf0e6)}.rc-workspace .rc-prompt{text-align:center;max-width:70ch;margin:0 auto 24px}.rc-prompt h3{letter-spacing:-.02em;margin:0 0 10px;font-size:clamp(20px,1.1rem + .7vw,24px);font-weight:600;line-height:1.35}.rc-prompt p{color:var(--muted);margin:0;font-size:16px;line-height:1.6}.rc-room{background:var(--rc-room-background,#edf0e6);border:2px solid var(--rc-room-border,#8a9b8b);width:min(100%,580px);color:var(--ink);isolation:isolate;border-radius:16px;margin:0 auto;padding:24px;position:relative}.rc-room-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.rc-room-window{background:#d9e9e5;border-block:2px solid #688678;width:22%;height:7px;position:absolute;top:-4px;left:9%}.rc-room-door{background:var(--rc-place-background,#fffdfa);border-left:2px solid var(--rc-room-border,#8a9b8b);border-right:2px solid var(--rc-room-border,#8a9b8b);width:22%;height:5px;position:absolute;bottom:-3px;right:9%}.rc-place{border:1px solid var(--rc-place-border,#c4cebe);background:var(--rc-place-background,#fffdfa);min-width:0;min-height:132px;color:var(--ink);text-align:center;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:3px;margin:0;padding:10px 6px;font-family:inherit;line-height:1.3;display:flex}button.rc-place{cursor:pointer;transition:background-color .15s,border-color .15s}button.rc-place:hover{background:var(--rc-place-hover,#e0e9da);border-color:var(--accent)}.rc-place-label{color:var(--muted);font-size:14px;font-weight:500}.rc-place-name{min-height:20px;font-size:15px;font-weight:650}.rc-place-object{justify-content:center;align-items:center;height:60px;display:flex}.rc-object{width:56px;height:56px;color:var(--rc-object-ink,#344c41);flex:none;margin:0;display:block}.rc-empty{color:#9aa78f}.rc-place-state{margin-top:3px;font-size:12px;font-weight:500;line-height:1.3}.rc-place-highlight{outline:3px solid var(--accent);outline-offset:2px;background:var(--rc-highlight,#e5eddf)}.rc-object-picker{max-width:680px;margin:28px auto 0}.rc-object-picker h4{text-align:center;margin:0 0 12px;font-size:16px;font-weight:650;line-height:1.5}.rc-object-tray{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.rc-object-choice{border:1px solid var(--line);background:var(--card);min-width:0;min-height:86px;color:var(--ink);text-align:left;cursor:pointer;border-radius:12px;justify-content:flex-start;align-items:center;gap:10px;padding:12px;font-family:inherit;display:flex}.rc-object-choice:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft)}.rc-object-choice>.rc-object{width:40px;height:40px}.rc-object-choice>span{min-width:0}.rc-object-choice strong{font-size:16px;font-weight:650;line-height:1.3;display:block}.rc-object-choice small{color:var(--muted);margin-top:3px;font-size:13px;line-height:1.4;display:block}.rc-object-choice [data-answer-label]{color:inherit;font-size:12px}.rc-status{color:var(--muted);text-align:center;min-height:22px;margin:14px 0 0;font-size:14px;line-height:1.5}.rc-board-label{text-align:center;color:var(--muted);margin:0 0 10px;font-size:14px;font-weight:600}.rc-view-controls{flex-wrap:wrap;justify-content:center;gap:10px;margin:20px 0 12px;display:flex}.rc-view-controls .secondary{min-width:140px}.rc-view-controls [aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--ink)}.rc-review-caption{color:var(--muted);text-align:center;margin:0 0 14px;font-size:14px;line-height:1.5}.rc-explorer>p:first-child{max-width:70ch;margin:0 0 20px}.rc-review-list{max-width:680px;margin:24px auto 0}.rc-review-list>div{border-bottom:1px solid var(--line);grid-template-columns:100px 1fr;gap:16px;padding:12px 0;display:grid}.rc-review-list dt{font-size:16px;font-weight:650;line-height:1.5}.rc-review-list dd{margin:0;font-size:15px;line-height:1.6}.rc-note{color:var(--muted);margin:20px 0 0;font-size:14px}.rc-explorer .rc-first-check-heading{max-width:680px;margin:28px auto -12px;font-size:18px}.rc-example{max-width:680px;margin:0 auto}.rc-example .rc-room{max-width:440px;padding:18px}.rc-example .rc-place{gap:0;min-height:106px;padding:6px}.rc-example .rc-place-object{height:48px}.rc-example .rc-object{width:44px;height:44px}.rc-example>p{max-width:65ch;margin:20px auto 0;font-size:16px;line-height:1.6}.rc-workspace :is(button,[tabindex]):focus-visible{outline:3px solid var(--accent);outline-offset:3px}.rc-workspace [hidden]{display:none!important}@media (width<=650px){.rc-workspace .rc-prompt{margin-bottom:20px}.rc-room{border-radius:14px;padding:14px 10px}.rc-room-grid{gap:8px}.rc-place{min-height:118px;padding:8px 3px}.rc-place-object{height:54px}.rc-object{width:50px;height:50px}.rc-place-label{font-size:13px}.rc-place-name{font-size:14px}.rc-place-state{max-width:65px;font-size:11px}.rc-object-tray{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.rc-object-choice{gap:8px;min-height:80px;padding:10px}.rc-object-choice>.rc-object{width:32px;height:32px}.rc-object-choice strong{font-size:15px}.rc-object-choice small{font-size:12px}.rc-object-picker{margin-top:24px}.rc-status{text-align:left}.rc-view-controls .secondary{flex:1;min-width:0}.rc-review-list>div{grid-template-columns:72px 1fr;gap:12px}.rc-review-list dt,.rc-review-list dd{font-size:14px}.rc-example .rc-room{padding:12px 8px}.rc-example .rc-place{min-height:102px}.rc-example .rc-place-label{font-size:12px}.rc-example .rc-place-name{font-size:13px}}@media (prefers-reduced-motion:reduce){button.rc-place{transition:none}}@media (forced-colors:active){.rc-place-highlight{outline-color:highlight}.rc-place,.rc-object-choice{border-color:buttontext}.rc-room,.rc-room-window{border-color:canvastext}}.rc-place-current{border:2px solid var(--accent);background:var(--accent-soft)}.rc-placement-picker{max-width:580px;margin:0 auto 18px}.rc-placement-picker .rc-object-choice{gap:8px;min-height:70px;padding:9px 10px}.rc-placement-picker .rc-object-choice>.rc-object{width:30px;height:30px}.rc-placement-status{text-align:left;color:var(--muted);grid-template-columns:1fr auto;gap:4px 12px;margin:14px 0 0;font-size:14px;line-height:1.5;display:grid}.rc-placement-status strong{color:var(--accent);font-weight:650}.rc-placement-status span{font-variant-numeric:tabular-nums}.rc-placement-status small{grid-column:1/-1;min-height:21px;font-size:14px}.rc-placement-tools{justify-content:center;gap:10px;max-width:580px;margin:16px auto 0;display:flex}.rc-placement-tools .secondary{min-width:130px}.rc-picker-help{color:var(--muted);text-align:center;max-width:55ch;margin:-4px auto 14px;font-size:14px;line-height:1.5}.rc-review-objects{flex-wrap:wrap;justify-content:center;gap:8px;max-width:680px;margin:20px auto;display:flex}.rc-review-objects .rc-review-object{flex-direction:column;align-items:center;gap:2px;min-width:102px;min-height:58px;padding:9px 14px;display:flex}.rc-review-object strong{font-size:15px;font-weight:650;line-height:1.4}.rc-review-object small{font-size:12px;font-weight:400;line-height:1.4}.rc-review-object[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--ink)}.rc-focus-detail{max-width:580px;margin:18px auto 0}.rc-focus-detail>p{margin:0;font-size:16px;line-height:1.6}.rc-focus-detail>.rc-note{color:var(--muted);margin-top:8px;font-size:14px}.rc-change-facts{border-block:1px solid var(--line);grid-template-columns:1fr 1fr;gap:16px;max-width:580px;margin:18px auto 0;padding:14px 0;display:grid}.rc-change-facts>div{text-align:center;flex-direction:column;gap:4px;display:flex}.rc-change-facts small{color:var(--muted);font-size:14px;line-height:1.4}.rc-change-facts strong{font-size:16px;font-weight:650;line-height:1.5}.rc-change-step{justify-content:center;align-items:center;gap:12px;max-width:580px;margin:20px auto 0;display:flex}.rc-change-step span{font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap;font-size:14px}.rc-change-step .secondary{flex:1;max-width:230px}@media (width<=650px){.rc-placement-picker{margin:0 auto 16px}.rc-placement-picker .rc-object-tray{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.rc-placement-picker .rc-object-choice{text-align:center;justify-content:center;min-height:62px;padding:8px 4px}.rc-placement-picker .rc-object-choice>.rc-object{display:none}.rc-placement-picker .rc-object-choice strong{font-size:14px}.rc-placement-status{gap:4px 8px;font-size:13px}.rc-placement-status small{font-size:13px}.rc-placement-tools .secondary{flex:1;min-width:0;padding-inline:9px}.rc-review-objects{gap:7px}.rc-review-objects .rc-review-object{flex:1 0 28%;min-width:0;padding:8px 9px}.rc-review-object strong{font-size:14px}.rc-change-facts{gap:10px}.rc-change-facts strong{font-size:14px}.rc-change-step{flex-direction:row;align-items:center;gap:8px}.rc-change-step .secondary{width:auto;padding:10px 8px;font-size:14px}}@media (forced-colors:active){.rc-place-current,.rc-review-object[aria-pressed=true]{outline:2px solid highlight}}:root[data-theme=dark] .learning-practice{--rc-room-background:var(--surface);--rc-room-border:var(--control-border);--rc-place-background:var(--card);--rc-place-border:var(--line);--rc-place-hover:var(--accent-soft);--rc-object-ink:var(--ink);--rc-highlight:var(--accent-soft)}@media (prefers-color-scheme:dark){:root[data-theme=system] .learning-practice{--rc-room-background:var(--surface);--rc-room-border:var(--control-border);--rc-place-background:var(--card);--rc-place-border:var(--line);--rc-place-hover:var(--accent-soft);--rc-object-ink:var(--ink);--rc-highlight:var(--accent-soft)}}.route-story-workspace .route-story-prompt{text-align:center;max-width:72ch;margin:0 auto 24px}.route-story-prompt h2{letter-spacing:-.02em;margin:0 0 12px;font-size:clamp(1.25rem,1.05rem + .7vw,1.5rem);font-weight:600;line-height:1.35}.route-story-prompt p{color:var(--muted);margin:0}.route-map{user-select:none;width:100%;max-width:500px;margin:0 auto;position:relative}.route-map svg{width:100%;height:auto;display:block;overflow:visible}.route-map text{fill:var(--ink);font-family:inherit;font-size:14px}.route-roads path{stroke:var(--route-road,#e7e9e1);stroke-width:25px;stroke-linejoin:round;fill:none}.route-roads text{fill:var(--muted);font-size:14px}.route-blocks text{font-size:13px}.route-trace{fill:none;stroke:var(--accent);stroke-width:7px;stroke-linecap:round;stroke-linejoin:round}.route-visited{fill:var(--accent);stroke:var(--accent);stroke-width:2px}.route-junction{fill:var(--card);stroke:var(--route-junction,#7d8d7e);stroke-width:2px}.route-map .route-marker-label{fill:var(--ink);font-weight:650}.route-map .route-marker-label.is-visited{fill:var(--accent-ink)}.route-map .route-map-note{fill:var(--muted);font-size:14px}.route-node{width:44px;min-width:44px;height:44px;min-height:44px;box-shadow:none;background:0 0;border:2px solid #0000;border-radius:50%;padding:0;position:absolute;transform:translate(-50%,-50%)}.route-node.is-available{border-color:var(--accent);background:var(--route-node-fill,#e5ebdd85);cursor:pointer}.route-node.is-available:hover{background:var(--route-node-hover,#d0dfca)}.route-node.is-available:focus-visible{outline:3px solid var(--accent);outline-offset:3px;background:var(--mint)}.reasoning-preview .route-node:disabled{opacity:1;pointer-events:none;background:0 0!important;border-color:#0000!important}.route-progress{text-align:center;color:var(--muted);font-variant-numeric:tabular-nums;max-width:65ch;margin:4px auto 0;font-size:14px}.route-example svg{max-width:360px}.route-review-toolbar{flex-wrap:wrap;gap:10px;margin:16px 0 20px;display:flex}.route-review-toolbar button[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.story-study,.story-detail,.story-order,.story-answer-heading,.story-helper{max-width:760px;margin-inline:auto}.story-event-position{max-width:600px;color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;gap:16px;margin:0 auto 16px;font-size:14px;display:flex}.story-event-position>div{gap:8px;display:flex}.story-event-position span span,.story-event-position>div>span{background:var(--story-position,#c6cbc2);border-radius:50%;width:8px;height:8px}.story-event-position>div>span.is-current{background:var(--accent);outline:1px solid var(--accent);outline-offset:3px}.story-event-title{text-align:center;letter-spacing:-.02em;max-width:40ch;margin:0 auto 20px;font-size:21px;font-weight:600;line-height:1.35}.story-state{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:600px;margin:0 auto 20px;display:grid}.story-place{border-bottom:2px solid var(--story-line,#c7cdbf);background:var(--story-place,#f5f5ef);text-align:center;min-width:0;min-height:190px;padding:12px 8px}.story-place>strong{margin-bottom:18px;font-size:15px;font-weight:600;line-height:1.4;display:block}.story-tokens{flex-direction:column;align-items:center;gap:9px;display:flex}.story-token{color:#254a30;background:#dce5d5;border:1px solid #98b39a;border-radius:6px;justify-content:center;align-items:center;min-width:66px;max-width:100%;min-height:40px;padding:8px 10px;font-size:15px;font-weight:600;line-height:1.35;display:inline-flex}.story-token-purple{color:#47385b;background:#e7e2f3;border-color:#b0a3c5}.story-token-orange{color:#66432e;background:#f4ded0;border-color:#c7a087}.story-empty{color:var(--muted);margin-top:8px;font-size:14px}.story-event-text{text-align:center;max-width:52ch;min-height:60px;margin:0 auto;font-size:18px;line-height:1.65}.story-answer-heading{margin-top:0;margin-bottom:8px;font-size:20px;font-weight:600;line-height:1.4}.story-helper{color:var(--muted);margin-top:0;margin-bottom:16px;font-size:14px}.story-order{margin-top:0;margin-bottom:28px;padding:0;list-style:none}.story-order li{border-bottom:1px solid var(--line);border-radius:0;grid-template-columns:28px 1fr auto;align-items:center;gap:12px;padding:14px 0;display:grid}.story-order li[data-answer-state]{border-style:solid;border-width:1px;border-radius:8px;margin-bottom:8px;padding-inline:12px}.story-position{font-variant-numeric:tabular-nums;color:var(--muted);text-align:center;font-size:18px;font-weight:600}.story-row-copy{font-size:16px;line-height:1.5}.story-row-result{margin-top:4px;font-size:13px;display:block}.story-move-actions{gap:6px;display:flex}.story-move-actions .secondary{border-radius:8px;justify-content:center;align-items:center;gap:4px;min-height:44px;padding:8px;font-size:14px;display:flex}.story-move-actions svg{flex:none;width:18px;height:18px}.story-detail{border:0;min-width:0;margin-block:0;padding:0}.story-detail legend{padding:0;font-size:18px;font-weight:600;line-height:1.4}.story-detail>p{margin:12px 0;font-size:17px}.story-judgments{flex-wrap:wrap;gap:12px;display:flex}.story-judgments label{border:1px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:10px;min-height:52px;padding:12px 16px;display:flex}.story-judgments input{width:18px;height:18px;accent-color:var(--accent);flex:none;margin:0}.story-replay-count{color:var(--muted);text-align:center;margin:20px 0;font-size:14px}.story-example{max-width:65ch;margin:auto}.story-example ol{padding-left:24px}.story-example li{margin:8px 0}.story-example p{margin-bottom:0}@media (width<=650px){.route-story-workspace .route-story-prompt{margin-bottom:20px}.route-map{max-width:380px}.route-map text,.route-roads text,.route-blocks text,.route-map .route-map-note{font-size:24px}.route-node{width:44px;height:44px}.route-progress{font-size:14px}.route-review-toolbar>.secondary{flex:135px}.story-state{gap:7px}.story-place{min-height:180px;padding:12px 5px}.story-place>strong{margin-bottom:14px;font-size:14px}.story-token{width:100%;min-width:0;padding:7px 5px;font-size:14px}.story-event-title{font-size:20px}.story-event-text{min-height:0;font-size:16px}.story-order li{grid-template-columns:26px minmax(0,1fr);gap:7px 10px}.story-move-actions{grid-column:2;justify-content:flex-end}.story-move-actions .secondary{min-width:76px}.story-judgments{grid-template-columns:1fr;display:grid}.story-judgments label{padding:12px}.story-detail legend{font-size:17px}.story-study .practice-round-actions>.secondary{min-width:0}.story-row-copy{font-size:16px}.story-order li[data-answer-state]{padding-inline:8px}.story-replay-count{text-align:left}}@media (prefers-reduced-motion:no-preference){.route-node.is-available{transition:background-color .15s ease-out}}.route-current{fill:none;stroke:var(--accent);stroke-width:2px;stroke-dasharray:3 4}.route-map[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:12px}.route-study-controls{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;max-width:500px;margin:4px auto 12px;display:flex}.route-study-controls .secondary{min-height:44px;padding:9px 14px}.route-study-controls .text-action{min-height:44px}.route-keyboard-help{text-align:center;color:var(--muted);max-width:54ch;margin:12px auto 0;font-size:14px}.route-divergence{max-width:65ch;font-weight:600}.story-order li{grid-template-columns:26px minmax(0,1fr) 94px;gap:8px;padding:10px 0}.story-order li.is-selected{background:var(--story-selection,#f2f5ed);border-radius:8px}.story-row-select{min-width:0;min-height:44px;box-shadow:none;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:6px 4px;font-size:16px;font-weight:500;line-height:1.5}.story-row-select:hover{background:var(--accent-soft)}.story-row-select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.story-row-select[aria-pressed=true]{color:var(--accent);font-weight:600}.reasoning-preview .story-row-select:disabled{opacity:1;color:var(--ink);background:0 0!important}.story-move-actions{grid-column:auto;justify-content:flex-end;gap:6px}.story-move-actions .secondary{width:44px;min-width:44px;padding:8px}.story-position-picker{flex-wrap:wrap;grid-column:2/-1;align-items:center;gap:6px;padding:2px 0 8px;display:flex}.story-position-picker>span{color:var(--muted);margin-right:4px;font-size:14px}.story-position-picker .secondary{font-variant-numeric:tabular-nums;width:44px;min-width:44px;min-height:44px;padding:8px}.story-evidence-links{flex-wrap:wrap;gap:10px;margin:16px 0 24px;display:flex}.story-evidence-links .secondary{min-height:44px}.route-story-workspace .answer-explorer h3{margin-top:24px;margin-bottom:10px}.route-story-workspace .answer-explorer p{max-width:68ch}@media (width<=650px){.story-order li{grid-template-columns:22px minmax(0,1fr) 94px;gap:6px;padding:10px 0}.story-move-actions{grid-column:auto}.story-move-actions .secondary{min-width:44px}.story-position-picker{grid-column:1/-1;padding:4px 6px 8px}.story-position-picker>span{width:100%;margin-bottom:2px}.route-study-controls{gap:6px}.route-study-controls .secondary{padding-inline:12px;font-size:14px}.route-study-controls .text-action{font-size:14px}.story-order li[data-answer-state]{padding-inline:5px}.story-row-select{font-size:15px}.story-place{min-height:150px}}.route-story-workspace .text-action{min-height:44px;box-shadow:none;color:var(--accent);font:inherit;text-underline-offset:4px;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;padding:8px;font-size:14px;font-weight:600;text-decoration:underline;display:inline-flex}.route-story-workspace .text-action:hover{background:var(--accent-soft)}:root[data-theme=dark] .learning-practice{--route-road:var(--line);--route-junction:var(--control-border);--route-node-fill:color-mix(in srgb,var(--accent-soft) 52%,transparent);--route-node-hover:var(--accent-soft);--story-position:var(--control-border);--story-line:var(--line);--story-place:var(--surface);--story-selection:var(--accent-soft);--route-landmark-neutral:#302c23}@media (prefers-color-scheme:dark){:root[data-theme=system] .learning-practice{--route-road:var(--line);--route-junction:var(--control-border);--route-node-fill:color-mix(in srgb,var(--accent-soft) 52%,transparent);--route-node-hover:var(--accent-soft);--story-position:var(--control-border);--story-line:var(--line);--story-place:var(--surface);--story-selection:var(--accent-soft);--route-landmark-neutral:#302c23}}.shadow-example{grid-template-columns:minmax(220px,340px) minmax(0,1fr);align-items:center;gap:32px;max-width:860px;margin:auto;display:grid}.shadow-example svg{width:100%;max-width:340px}.shadow-example p{max-width:55ch}.shadow-goal{text-align:center;color:var(--muted);max-width:65ch!important;margin:-8px auto 20px!important}.shadow-lab{grid-template-columns:minmax(0,1.3fr) minmax(240px,1fr);align-items:center;gap:28px;max-width:900px;margin:auto;display:grid}.shadow-lab h3,.shadow-editor h3{margin:0 0 12px;font-size:16px;font-weight:600}.shadow-build,.shadow-targets{text-align:center;min-width:0}.shadow-orbit{background:var(--shadow-stage,#f1f4eb);cursor:grab;touch-action:none;border-radius:12px;max-width:420px;margin:auto}.shadow-orbit:active{cursor:grabbing}.shadow-orbit svg{width:100%;display:block}.shadow-camera{flex-wrap:wrap;justify-content:center;gap:8px;margin:12px auto 0;display:flex}.shadow-camera .secondary{min-height:44px;padding:9px 12px;font-size:14px}.shadow-help{color:var(--muted);font-size:14px;max-width:38ch!important;margin:10px auto 0!important}.shadow-views{flex-wrap:wrap;justify-content:center;gap:16px 20px;display:flex}.shadow-views figure{flex:0 126px;width:126px;margin:0}.shadow-views figure svg{width:100%;max-height:150px;display:block}.shadow-views figcaption{margin-bottom:8px;font-size:14px;font-weight:600}.shadow-overlay{cursor:pointer;justify-content:center;align-items:center;gap:10px;min-height:44px;margin-top:16px;font-size:14px;display:flex}.shadow-overlay input{width:20px;height:20px;accent-color:var(--accent)}.shadow-editor{border-top:1px solid var(--line);grid-template-columns:minmax(160px,250px) auto;justify-content:center;align-items:center;gap:16px 32px;max-width:760px;margin:28px auto 0;padding-top:24px;display:grid}.shadow-editor p{color:var(--muted);margin:0;font-size:14px;max-width:32ch!important}.shadow-height-grid{grid-template-columns:24px repeat(var(--shadow-size),52px);gap:6px;display:grid}.shadow-height-grid .shadow-grid-label{place-content:center;font-size:14px;font-weight:600;display:grid}.shadow-height-grid button{background:var(--shadow-control,#fffdfa);width:52px;height:52px;color:var(--ink);border:1px solid #9aaa91;border-radius:10px;font:600 20px/1 inherit}.shadow-height-grid button[data-filled=true]{background:var(--shadow-filled,#dce5d5);border-color:var(--shadow-filled-line,#51734b);color:var(--shadow-filled-ink,#243f2b)}.shadow-height-grid button:hover:not(:disabled){background:var(--shadow-hover,#c5d7bf)}.shadow-count{text-align:center;font-variant-numeric:tabular-nums;grid-column:1/-1;max-width:none!important}.shadow-hint{color:var(--muted);margin:20px auto 0;max-width:65ch!important}.shadow-editor-preview{display:none}.shadow-review-controls,.shadow-replay-controls{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.shadow-review-controls [aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.shadow-review-solid{background:var(--shadow-stage,#f1f4eb);border-radius:12px;width:100%;max-width:380px;margin:16px auto 0}.shadow-review-solid svg{width:100%;display:block}.shadow-review-solid+p{text-align:center;color:var(--muted);margin:12px auto 16px;font-size:14px}.shadow-reasoning{max-width:70ch;margin:24px auto 0;padding-left:22px}.shadow-reasoning li+li{margin-top:12px}@media (width<=760px){.shadow-lab{grid-template-columns:1fr;gap:24px}.shadow-build{display:none}.shadow-orbit{max-width:360px}.shadow-views{flex-wrap:nowrap;gap:12px}.shadow-views figure{flex:1 1 0;min-width:0;max-width:126px}.shadow-targets{width:100%;max-width:420px;margin:auto}.shadow-editor{text-align:center;grid-template-columns:1fr;gap:16px}.shadow-editor-copy p{margin:auto}.shadow-editor-preview{grid-column:1/-1;display:block}.shadow-editor-preview .shadow-orbit{width:220px;margin:auto}.shadow-editor-preview .shadow-camera{margin:8px auto 0}.practice-frame .shadow-camera .secondary{min-height:44px;padding:8px 10px;font-size:14px}.shadow-height-grid{justify-content:center}.shadow-example{grid-template-columns:1fr;gap:10px}.shadow-example svg{max-width:270px}}@media (width<=500px){.shadow-editor{text-align:center;grid-template-columns:1fr}.shadow-editor p{margin:auto}.shadow-height-grid{justify-content:center}.shadow-camera{gap:6px}.shadow-camera .secondary{padding:8px;font-size:13px}.shadow-review-controls .secondary,.shadow-replay-controls .secondary{flex:1;font-size:14px}.shadow-orbit{margin-inline:-4px}.shadow-views{gap:6px}}.shadow-diagram-button{cursor:pointer;background:0 0;border:0;border-radius:8px;width:100%;min-height:90px;padding:0;display:block}.shadow-diagram-button:hover{background:var(--shadow-view-hover,#edf2e8)}.shadow-diagram-button[aria-pressed=true]{outline:2px solid var(--accent);outline-offset:3px}.shadow-workspace button:focus-visible,.shadow-workspace summary:focus-visible,.shadow-workspace .shadow-orbit:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.shadow-inspector{text-align:left;max-width:340px;margin:12px auto 0;font-size:14px}.shadow-inspector summary{min-height:44px;color:var(--accent);cursor:pointer;text-align:center;padding:12px 4px;font-weight:600}.shadow-inspector-views,.shadow-inspector-lines{flex-wrap:wrap;justify-content:center;gap:6px;margin:10px 0;display:flex}.shadow-inspector .secondary{min-width:44px;min-height:44px;padding:9px 12px;font-size:14px}.shadow-inspector [aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.shadow-inspector-top{grid-template-columns:repeat(3,44px);display:grid}.shadow-constraint{color:var(--ink);font-size:14px;line-height:1.55;margin:14px 0 0!important}.shadow-inspector .text-action{min-height:44px;color:var(--accent);font:inherit;text-underline-offset:4px;cursor:pointer;background:0 0;border:0;margin:auto;padding:8px 0;text-decoration:underline;display:block}.shadow-height-grid button[data-highlighted=true]{outline:2px solid var(--accent);outline-offset:2px;background:var(--shadow-highlight,#c4ddca)}.shadow-edit-tools{grid-area:1/2;justify-content:center;gap:8px;display:flex}.shadow-edit-tools .secondary{min-height:44px;padding:10px 12px;font-size:14px}.shadow-edit-tools [aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.shadow-editor-copy{grid-area:1/1/4;align-self:center}.shadow-editor .shadow-height-grid{grid-area:2/2}.shadow-edit-status{grid-area:3/2;width:100%;min-height:24px;font-size:14px;text-align:center!important;max-width:none!important}@media (width<=760px){.shadow-editor-copy,.shadow-editor .shadow-height-grid,.shadow-edit-tools,.shadow-edit-status{grid-area:auto/1}.shadow-inspector{max-width:340px}.shadow-edit-status{min-height:22px;margin:0!important}}.shadow-lab{grid-template-columns:minmax(0,1.15fr) minmax(280px,1fr);align-items:start}.shadow-build{align-self:start;position:sticky;top:16px}.shadow-workbench{min-width:0}.shadow-workbench .shadow-views{flex-wrap:nowrap;gap:10px}.shadow-workbench .shadow-views figure{flex:1 1 0;min-width:0;max-width:126px}.shadow-workbench .shadow-editor{text-align:center;grid-template-columns:1fr;gap:12px;margin-top:20px;padding-top:20px}.shadow-workbench :is(.shadow-editor-copy,.shadow-edit-tools,.shadow-height-grid,.shadow-edit-status){grid-area:auto/1}.shadow-workbench .shadow-editor-copy p{margin-inline:auto}.shadow-workbench .shadow-height-grid{justify-content:center}.shadow-workbench .shadow-inspector>summary{min-height:44px}@media (width<=800px){.shadow-lab{display:block}.shadow-build{display:none;position:static}.shadow-workbench{max-width:560px;margin:auto}.shadow-editor-preview{grid-column:1/-1;display:block}.shadow-editor-preview .shadow-orbit{width:220px;margin:auto}.shadow-editor-preview .shadow-camera{margin:8px auto 0}.shadow-workbench .shadow-targets{max-width:420px;margin:auto}.shadow-workbench .shadow-editor{max-width:420px;margin-inline:auto}}.shadow-minimum-proof{margin-top:28px}.shadow-minimum-proof h3{margin:0 0 12px;font-size:20px}.shadow-layer-list{flex-wrap:wrap;gap:20px;margin:20px 0;display:flex}.shadow-layer-list figure{flex:1;min-width:130px;max-width:200px;margin:0}.shadow-layer-list figcaption{margin:0 0 10px;font-size:14px;font-weight:600}.shadow-layer-grid{grid-template-columns:repeat(var(--shadow-size),1fr);gap:4px;max-width:150px;display:grid}.shadow-layer-grid span{aspect-ratio:1;background:0 0;border:1px dashed #8b9788;border-radius:4px}.shadow-layer-grid .has-cube{background:#c7ddcd;border:1px solid #17634c;box-shadow:inset -4px -4px #a2c3ab}:root[data-theme=dark] .learning-practice{--shadow-stage:var(--surface);--shadow-control:var(--card);--shadow-filled:var(--mint);--shadow-filled-line:var(--accent);--shadow-filled-ink:var(--ink);--shadow-hover:var(--accent-soft);--shadow-view-hover:var(--accent-soft);--shadow-highlight:var(--accent-soft);--shadow-axis:var(--ink);--shadow-view-axis:var(--muted)}@media (prefers-color-scheme:dark){:root[data-theme=system] .learning-practice{--shadow-stage:var(--surface);--shadow-control:var(--card);--shadow-filled:var(--mint);--shadow-filled-line:var(--accent);--shadow-filled-ink:var(--ink);--shadow-hover:var(--accent-soft);--shadow-view-hover:var(--accent-soft);--shadow-highlight:var(--accent-soft);--shadow-axis:var(--ink);--shadow-view-axis:var(--muted)}}.hanoi-practice .hanoi-layout{align-items:start;gap:clamp(1.25rem,3vw,2.5rem)}.hanoi-practice .hanoi-live{width:100%;max-width:36rem;margin-inline:auto;position:sticky;top:1rem}.hanoi-practice .hanoi-board-caption{text-align:center;font-variant-numeric:tabular-nums;margin:0 0 .5rem;font-weight:650}.hanoi-practice .hanoi-board{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;width:100%;max-width:34rem;margin-inline:auto;padding:0 .25rem;display:grid}.hanoi-practice .hanoi-peg{min-width:0;height:14rem;min-height:44px;color:var(--ink,#273d35);cursor:pointer;text-align:center;touch-action:manipulation;background:0 0;border:1px solid #0000;border-radius:12px;padding:0;display:block;position:relative}.hanoi-practice .hanoi-peg:disabled{opacity:1;cursor:default;color:var(--ink,#273d35);background:0 0}.hanoi-practice .hanoi-peg:not(:disabled):hover{background:color-mix(in srgb,var(--accent,#18654f) 6%,transparent)}.hanoi-practice .hanoi-peg.is-selected{border-color:var(--accent,#18654f);background:color-mix(in srgb,var(--accent,#18654f) 8%,transparent)}.hanoi-practice .hanoi-peg.is-target{border-style:dashed;border-color:var(--accent,#18654f)}.hanoi-practice .hanoi-peg:focus-visible{outline:3px solid var(--accent,#18654f);outline-offset:3px}.hanoi-practice .hanoi-post{pointer-events:none;background:#a4afa3;border-radius:5px 5px 0 0;width:.5rem;height:9rem;position:absolute;bottom:2.65rem;left:calc(50% - .25rem)}.hanoi-practice .hanoi-post:after{content:"";background:#6b7c69;border-radius:3px;width:7.5rem;max-width:28vw;height:.35rem;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.hanoi-practice .hanoi-stack{pointer-events:none;flex-direction:column-reverse;align-items:center;gap:3px;width:100%;display:flex;position:absolute;bottom:3rem;left:0}.hanoi-practice .hanoi-disk{border:1px solid var(--hanoi-disk-line,#466251);height:1.6rem;color:var(--hanoi-disk-ink,#173c2f);box-sizing:border-box;background:var(--hanoi-disk,#d3e1ce);border-radius:5px;justify-content:center;align-items:center;font-size:.85rem;font-weight:750;transition:transform .15s ease-out;display:flex}.hanoi-practice .hanoi-disk-1{background:var(--mint,#dce5d5)}.hanoi-practice .hanoi-disk-2{background:var(--lavender,#e1d8eb)}.hanoi-practice .hanoi-disk-3{background:var(--apricot,#f4d7bd)}.hanoi-practice .hanoi-disk-4{background:var(--blue,#d5e2e8)}.hanoi-practice .hanoi-disk.is-lifted{outline:2px solid var(--accent,#18654f);outline-offset:2px;transform:translateY(-.65rem)}.hanoi-practice .hanoi-disk.is-staying{background:var(--hanoi-staying,#e1e3db);color:var(--hanoi-staying-ink,#526052);border-color:var(--hanoi-staying-line,#7c8979)}.hanoi-practice .hanoi-peg-name{width:100%;font-size:1.05rem;font-weight:700;line-height:1.4;position:absolute;bottom:.3rem;left:0}.hanoi-practice .hanoi-peg-name small{color:var(--muted,#586b54);margin-left:.25rem;font-size:.75rem;font-weight:600;display:inline-block}.hanoi-practice .hanoi-board-note{text-align:center;max-width:38ch;color:var(--muted,#586b54);margin:.6rem auto 0;font-size:.88rem;line-height:1.5}.hanoi-practice .hanoi-moves{text-align:center;font-variant-numeric:tabular-nums;margin:.9rem 0 0}.hanoi-practice .hanoi-moves span{color:var(--muted,#586b54);font-size:.9rem}.hanoi-practice .hanoi-controls{min-width:0;padding-top:1rem}.hanoi-practice .hanoi-plan-options{flex-wrap:wrap;gap:.5rem;display:flex}.hanoi-practice .hanoi-plan-options button{flex:1;min-width:4.7rem;min-height:48px}.hanoi-practice .hanoi-plan-options .is-chosen{background:var(--accent,#18654f);color:var(--accent-ink);border-color:var(--accent,#18654f)}.hanoi-practice .hanoi-controls button,.hanoi-practice .hanoi-replay button{min-height:44px}.hanoi-practice .hanoi-help{border-top:1px solid var(--line,#d5d9ce);margin-top:1rem;padding-top:.25rem}.hanoi-practice .hanoi-help summary,.hanoi-practice .hanoi-method-review summary{cursor:pointer;min-height:44px;color:var(--accent,#18654f);align-items:center;gap:.5rem;font-weight:650;list-style:none;display:flex}.hanoi-practice .hanoi-help summary:before,.hanoi-practice .hanoi-method-review summary:before{content:"";border-bottom:2px solid;border-right:2px solid;flex:none;width:.45rem;height:.45rem;transition:transform .14s ease-out;transform:rotate(-45deg)}.hanoi-practice .hanoi-help[open] summary:before,.hanoi-practice .hanoi-method-review[open] summary:before{transform:rotate(45deg)}.hanoi-practice .hanoi-help summary::-webkit-details-marker,.hanoi-practice .hanoi-method-review summary::-webkit-details-marker{display:none}.hanoi-practice .hanoi-help>div{padding:.25rem 0 .5rem}.hanoi-practice .hanoi-help p{margin:.35rem 0 .85rem}.hanoi-practice .hanoi-feedback:empty{display:none}.hanoi-practice .hanoi-feedback{margin-top:1rem}.hanoi-practice .hanoi-feedback[data-kind=wrong]{color:var(--hanoi-wrong,#963d27)}.hanoi-practice .hanoi-feedback[data-kind=correct]{color:var(--hanoi-correct,#18654f)}.hanoi-practice .hanoi-help-note{margin-top:1rem;font-size:.83rem;line-height:1.5}.hanoi-practice .hanoi-method{margin:.75rem 0;padding-left:1.3rem}.hanoi-practice .hanoi-method li{margin:.5rem 0;padding-left:.2rem;line-height:1.55}.hanoi-practice .hanoi-method-review{border-top:1px solid var(--line,#d5d9ce);margin-top:1.75rem;padding-top:.75rem}.hanoi-practice .hanoi-replay{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:1.5rem;display:grid}.hanoi-practice .hanoi-replay-copy{text-align:left;min-width:0}.hanoi-practice .hanoi-replay-copy>p:first-child{margin-top:0}.hanoi-practice .hanoi-replay-count{text-align:center;color:var(--muted,#586b54);font-variant-numeric:tabular-nums;margin:.35rem 0;font-size:.85rem}.hanoi-practice .hanoi-replay-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin:.85rem 0 0;display:grid}.hanoi-practice .hanoi-replay-actions button{width:100%;min-width:0;min-height:44px;padding:10px 8px}.hanoi-practice .hanoi-replay-status{text-align:center;margin:.75rem 0 0}.hanoi-practice .hanoi-replay .hanoi-peg{height:12rem}.hanoi-practice .hanoi-replay .hanoi-post{height:7rem}@media (width<=850px){.hanoi-practice .hanoi-live{position:static}.hanoi-practice .hanoi-controls{padding-top:0}}@media (width<=700px){.hanoi-practice .hanoi-layout{gap:1rem}.hanoi-practice .hanoi-peg{height:12.5rem}.hanoi-practice .hanoi-post{height:8rem}.hanoi-practice .hanoi-replay{grid-template-columns:1fr;gap:.75rem}.hanoi-practice .hanoi-replay .hanoi-board{max-width:22rem}.hanoi-practice .hanoi-board-note{font-size:.83rem}.hanoi-practice .hanoi-plan-options button{min-width:0}.hanoi-practice .hanoi-peg-name small{margin-left:0;line-height:1.1;display:block}.hanoi-practice .hanoi-peg-name{bottom:0}}@media (prefers-reduced-motion:reduce){.hanoi-practice .hanoi-disk,.hanoi-practice .hanoi-help summary:before,.hanoi-practice .hanoi-method-review summary:before{transition:none}}:root[data-theme=dark] .hanoi-practice{--hanoi-disk-line:var(--control-border);--hanoi-disk-ink:var(--ink);--hanoi-disk:var(--mint);--hanoi-staying:var(--control-disabled-bg);--hanoi-staying-ink:var(--muted);--hanoi-staying-line:var(--control-border);--hanoi-wrong:var(--bad);--hanoi-correct:var(--good)}@media (prefers-color-scheme:dark){:root[data-theme=system] .hanoi-practice{--hanoi-disk-line:var(--control-border);--hanoi-disk-ink:var(--ink);--hanoi-disk:var(--mint);--hanoi-staying:var(--control-disabled-bg);--hanoi-staying-ink:var(--muted);--hanoi-staying-line:var(--control-border);--hanoi-wrong:var(--bad);--hanoi-correct:var(--good)}}.ra-workspace,.wa-workspace{min-width:0;max-width:880px;margin-inline:auto}.ra-branches{gap:12px;max-width:720px;margin:24px auto;padding:0;list-style:none;display:grid}.ra-branches li{background:var(--mint);border-radius:12px;align-items:baseline;gap:16px;min-width:0;padding:14px 16px;line-height:1.6;display:flex}.ra-branch-tag{color:var(--accent);flex:none;font-weight:650}.ra-method-note{max-width:68ch;color:var(--muted);margin:16px auto 28px;line-height:1.6}.ra-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:760px;margin:24px auto;display:grid}.ra-card{border:1px solid var(--control-border);background:var(--card);border-radius:12px;min-width:0;margin:0;padding:16px}.ra-card legend{padding-inline:6px;font-weight:600}.ra-card-value{justify-content:center;align-items:center;gap:16px;margin:8px 0 20px;display:flex}.ra-card-value>strong{font-variant-numeric:tabular-nums;font-size:2rem;font-weight:650;line-height:1.2}.ra-mark-label{color:var(--muted);font-size:.875rem}.ra-mark-label.is-marked{color:var(--accent);text-underline-offset:4px;font-weight:650;text-decoration:underline}.ra-choices{flex-wrap:wrap;gap:8px;display:flex}.ra-choices button{overflow-wrap:anywhere;flex:76px;min-width:0;min-height:48px;padding:10px 8px;font-size:1rem}.ra-choices .is-chosen{background:var(--accent-soft);border-color:var(--accent);outline:1px solid var(--accent);font-weight:650}.ra-choices .is-chosen:disabled{color:var(--ink);opacity:1}.ra-example-fields{flex-wrap:wrap;justify-content:center;align-items:end;gap:20px;margin:24px 0;display:flex}.ra-example-fields>label{gap:8px;min-width:120px;font-weight:600;display:grid}.ra-example-fields select{background:var(--card);min-height:48px;color:var(--ink);border:1px solid var(--control-border);font:inherit;border-radius:12px;padding:10px 36px 10px 12px}.ra-example-fields>.ra-mark-control{align-items:center;gap:10px;min-height:48px;display:flex}.ra-mark-control input{width:20px;height:20px;accent-color:var(--accent)}.ra-review{max-width:68ch;margin:24px auto;line-height:1.65}.ra-review p+p{margin-top:20px}.ra-example-feedback,.wa-example-feedback{max-width:68ch;margin:20px auto 0;line-height:1.65}.wa-compare{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin:24px 0;display:grid}.wa-compare h3{margin:0 0 8px;font-size:1.25rem}.wa-compare section>p{margin:0 0 20px;line-height:1.6}.wa-collection{justify-content:center;align-items:center;gap:12px;max-width:100%;min-height:100px;margin:24px auto;display:flex}.wa-end{color:var(--muted);overflow-wrap:anywhere;font-size:.875rem;font-weight:600}.wa-items{flex-wrap:wrap;justify-content:center;gap:8px;min-width:0;display:flex}.wa-item{background:var(--card);border:1px solid var(--control-border);min-width:48px;min-height:52px;color:var(--ink);border-radius:10px;place-items:center;padding:10px 12px;font-size:1.5rem;font-weight:650;line-height:1.2;display:grid}.wa-collection button.wa-item{min-width:52px;font-size:1.5rem}.wa-empty{color:var(--muted);padding:16px}.wa-stack{flex-direction:column;gap:6px}.wa-stack .wa-items{flex-flow:column;gap:6px;min-width:108px}.wa-removed{overflow-wrap:anywhere;margin:24px 0 0;line-height:1.6}.wa-up-next{text-align:center;margin:24px 0;font-weight:600;line-height:1.5}.wa-stage-layout{grid-template-columns:minmax(0,1fr) 220px;align-items:start;gap:40px;margin:28px auto;display:grid}.wa-current{text-align:center;min-width:0}.wa-current>h3{margin:8px 0 16px;font-size:1.5rem;line-height:1.3}.wa-current>p{max-width:45ch;margin:12px auto;line-height:1.6}.wa-current>button{white-space:normal;max-width:100%;min-height:48px}.wa-operation{color:var(--muted);font-size:.875rem;font-weight:600}.wa-operation-list{gap:8px;margin:0;padding:0;font-size:1rem;list-style:none;display:grid}.wa-operation-list li{border:1px solid #0000;border-radius:10px;gap:8px;padding:10px 12px;line-height:1.5;display:flex}.wa-operation-list [aria-current]{background:var(--accent-soft);border-color:var(--accent);font-weight:600}.wa-operation-list .is-past{color:var(--muted)}.wa-summary{max-width:68ch;margin:20px auto;line-height:1.65}.ra-workspace .algo-actions,.wa-workspace .algo-actions{flex-wrap:wrap;justify-content:center}.ra-workspace :focus-visible,.wa-workspace :focus-visible,.ra-example-fields :focus-visible{outline:3px solid var(--accent);outline-offset:4px}@media (width<=700px){.ra-card-grid{gap:16px}.ra-branches li{flex-direction:column;gap:4px}.wa-stage-layout{grid-template-columns:1fr;gap:24px}.wa-operation-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.wa-compare{grid-template-columns:1fr;gap:32px}.wa-queue{gap:8px}.wa-item{min-width:42px;min-height:48px;padding:8px}.wa-collection button.wa-item{min-width:44px}.wa-end{font-size:.8125rem}.ra-example-fields{gap:16px}.ra-review{font-size:1rem}}@media (width<=460px){.ra-card-grid{grid-template-columns:1fr}.ra-card-value{margin-block:4px 14px}.ra-choices button{flex-basis:70px}.wa-operation-list{font-size:.875rem}.wa-operation-list li{padding:8px}.wa-items{gap:6px}}@media (forced-colors:active){.ra-choices .is-chosen,.wa-operation-list [aria-current]{outline:2px solid highlight}.ra-mark-label.is-marked,.ra-branch-tag{color:canvastext}}
