.button{min-height:var(--button-min-height);padding:var(--space-2) var(--space-6);border:var(--stroke-3) solid var(--color-border-strong);border-radius:var(--radius-hand);font-size:var(--text-body);font-weight:var(--text-strong-weight);line-height:var(--text-small-line);transition:transform var(--duration-fast) var(--ease-out)}.button--primary{background:var(--button-primary-bg);color:var(--color-on-primary)}.button--secondary{border-width:var(--stroke-2);background:var(--color-bg);color:var(--color-fg-strong)}.button--quiet{min-height:calc(var(--button-min-height) - var(--space-2));padding:var(--space-1) var(--space-3);border-width:var(--stroke-2);background:var(--color-bg);color:var(--color-fg-strong);font-size:var(--text-small)}.button--text{min-height:44px;padding:0 var(--space-2);color:var(--color-muted-fg);font-weight:var(--text-body-weight);background:0 0;border:0;text-decoration:underline}.button:active{transform:translateY(1px)}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.button:not(.button--text):hover{transform:translateY(-2px)rotate(-.5deg)}}.button:not(.button--text):active{transform:translateY(1px)}.home-back{align-items:center;gap:var(--space-1);display:inline-flex}.home-back__arrow{flex:none}@media (width<=767px){.button--quiet,.button--text{min-height:var(--button-min-height)}}.lesson{--lesson-piece-0:var(--color-subject-shakai);--lesson-piece-1:var(--color-subject-eigo);--lesson-piece-2:var(--color-subject-rika);--lesson-tile-height:calc(var(--button-min-height) - var(--space-1));gap:var(--space-4);width:100%;max-width:760px;padding:var(--space-4);margin:0 auto;display:grid}.lesson-header{align-items:baseline;gap:var(--space-2) var(--space-4);min-width:0;padding-right:calc(var(--corner-reserve) - var(--space-4));flex-wrap:wrap;display:flex}.lesson-header h1{font-size:var(--text-display);line-height:var(--text-display-line)}.lesson-progress{font-family:var(--font-hand);color:var(--color-fg-strong)}.lesson-exit{margin-left:auto}.lesson-header,.lesson-clear{grid-column:1/-1}.lesson-support{margin-top:var(--space-2);padding-top:var(--space-2);border-top:var(--stroke-2) dashed var(--color-border)}.lesson-support>:last-child{margin-bottom:0}@media (width>=768px){.lesson.is-split{max-width:var(--content-max-width);align-items:start;gap:var(--space-2) var(--space-3);padding-block:var(--space-2);grid-template-columns:minmax(300px,1fr) minmax(0,1fr)}.lesson.is-split .lesson-header h1{font-size:var(--text-title);line-height:var(--text-title-line)}.lesson.is-split .lesson-card{padding:var(--space-3) var(--space-4)}.lesson.is-split .lesson-answer__label{width:auto}.lesson.is-split .lesson-message{margin-top:var(--space-1)}.lesson.is-split .lesson-support{margin-top:0}.lesson.is-split .lesson-hints{margin-bottom:var(--space-1)}.lesson.is-split .lesson-tray{row-gap:var(--space-1)}.lesson.is-split .lesson-tools{margin-top:var(--space-2)}.lesson.is-split .lesson-note{margin-top:var(--space-1)}.lesson.is-cleared{max-width:var(--content-max-width);align-items:start;gap:var(--space-3);grid-template-columns:minmax(0,3fr) minmax(240px,2fr)}.lesson.is-cleared .lesson-clear{grid-area:2/2}.lesson.is-cleared>.lesson-card:not(.lesson-clear){max-height:calc(100vh - 6 * var(--space-7));overflow-y:auto}}.lesson-hidden{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.lesson-card{min-width:0;padding:var(--space-4);border:var(--stroke-2) solid var(--color-border);border-radius:var(--radius-slot);background:var(--color-bg);scroll-margin-top:var(--space-4)}.lesson-fraction{margin:0 var(--space-1);vertical-align:middle;font-family:var(--font-hand);line-height:var(--text-display-line);flex-direction:column;align-items:center;display:inline-flex}.lesson-fraction>span{padding:0 var(--space-1)}.lesson-fraction>:first-child{border-bottom:var(--stroke-2) solid currentColor}.lesson-fraction-wrap{vertical-align:middle;align-items:center;display:inline-flex}.lesson-whole{font-family:var(--font-hand)}.lesson-keep{align-items:center;gap:var(--space-2);display:inline-flex}.lesson-slot{width:1.8em;height:1.4em;margin-bottom:var(--space-1);border:var(--stroke-2) dashed var(--color-border-strong);border-radius:var(--radius-slot);background:var(--color-now);color:var(--color-fg-strong);font:inherit;text-align:center;padding:0;display:block}.lesson-slot::placeholder{color:var(--color-muted-fg);opacity:1}.lesson-equation-row{align-items:center;gap:var(--space-2);color:var(--color-fg-strong);font-family:var(--font-hand);font-size:var(--text-title);line-height:var(--text-title-line);flex-wrap:wrap;display:flex}.lesson-task{color:var(--color-fg-strong);font-size:var(--text-body);font-weight:var(--text-strong-weight)}.lesson-pair{align-items:center;gap:var(--space-2);width:100%;display:flex}.lesson-choice{min-width:0}.lesson-after{margin-top:var(--space-2);color:var(--color-fg-strong)}.lesson-answer{align-items:center;gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.lesson-answer__buttons{align-items:center;gap:var(--space-2);flex-wrap:wrap;width:100%;display:flex}.lesson-answer__label{width:100%;font-size:var(--text-small);line-height:var(--text-small-line)}.lesson-answer__input{min-width:0;min-height:var(--button-min-height);padding:var(--space-1) var(--space-2);border:var(--stroke-2) solid var(--color-border);border-radius:var(--radius-slot);background:var(--color-bg);color:var(--color-fg-strong);font:inherit;flex:0 9em}.lesson-message{min-height:calc(var(--text-body) * var(--text-body-line));margin-top:var(--space-2);font-weight:var(--text-strong-weight);color:var(--color-fg-strong)}.lesson-message-text{animation:lesson-message-in var(--duration-fast) ease-out;display:inline-block}@keyframes lesson-message-in{0%{opacity:.2}to{opacity:1}}.lesson-guide{margin-bottom:var(--space-2)}.lesson-note{margin-top:var(--space-2);color:var(--color-muted-fg);font-size:var(--text-small);line-height:var(--text-small-line)}.lesson-notice{min-height:calc(var(--text-small) * var(--text-body-line));margin-top:var(--space-2);font-size:var(--text-small);font-weight:var(--text-strong-weight);color:var(--color-fg-strong)}.lesson-count{align-items:center;gap:var(--space-1);min-height:calc(var(--text-body) * var(--text-body-line));margin-top:var(--space-2);font-weight:var(--text-strong-weight);color:var(--color-fg-strong);display:flex}.lesson-area-name{margin-top:var(--space-2);font-size:var(--text-small);font-weight:var(--text-strong-weight)}.lesson-tile-names{height:calc(var(--text-small) * var(--text-small-line));position:relative}.lesson-tile-name{left:calc(100% * var(--start) / var(--total));width:calc(100% * var(--size) / var(--total));color:var(--color-fg-strong);font-family:var(--font-hand);font-size:var(--text-small);line-height:var(--text-small-line);text-align:center;position:absolute}.lesson-ruler-labels{color:var(--color-muted-fg);font-family:var(--font-hand);font-size:var(--text-small);line-height:var(--text-small-line);justify-content:space-between;display:flex}.lesson-ruler{height:calc(var(--lesson-tile-height) + var(--space-3));border:var(--stroke-2) dashed var(--color-border);border-radius:var(--radius-slot);position:relative}.lesson-ruler.is-over{border-style:solid;border-color:var(--color-border-strong)}.lesson-ruler-mark{top:0;bottom:0;left:calc(100% * var(--at) / var(--total));border-left:var(--stroke-2) solid var(--color-border);position:absolute}.lesson-tile{height:var(--lesson-tile-height);border:var(--stroke-2) solid var(--color-border-strong);border-radius:var(--radius-slot);color:var(--color-fg-strong);font-size:var(--text-small);font-weight:var(--text-strong-weight);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:0;display:flex;position:relative;overflow:hidden}.lesson-tile:disabled{cursor:default}.lesson-piece-0{background:var(--lesson-piece-0)}.lesson-piece-1{background:var(--lesson-piece-1)}.lesson-piece-2{background:var(--lesson-piece-2)}.lesson-ruler .lesson-tile{top:var(--space-1);left:calc(100% * var(--start) / var(--total));width:calc(100% * var(--size) / var(--total));position:absolute}.lesson-tile.is-dragging{opacity:.3}.lesson-tile.is-target{outline:var(--stroke-4) dashed var(--color-border-strong);outline-offset:calc(-1 * var(--stroke-4))}.lesson-tile.is-selected{outline:var(--stroke-4) solid var(--color-border-strong);outline-offset:var(--stroke-2)}.lesson-tile.is-taken{opacity:.35}.lesson-cells{width:calc(100% * var(--filled) / var(--units));display:flex;position:absolute;inset:0 auto 0 0}.lesson-cell{border-right:var(--stroke-2) solid var(--color-border-strong);flex:1 1 0;justify-content:center;align-items:center;min-width:0;display:flex}.lesson-tile .lesson-fraction{margin:0}.lesson-tile .lesson-fraction>span{padding:0}.lesson-cell.is-taken{background:var(--color-bg);opacity:.55}.lesson-tray{align-items:flex-end;gap:var(--space-2) var(--space-3);margin-top:var(--space-2);padding-inline:var(--stroke-2);flex-wrap:wrap;display:flex;container-type:inline-size}.lesson-tray-row{flex-direction:column;flex:none;align-items:flex-start;display:flex}.lesson-tray .lesson-tile{width:calc(100cqw * var(--size) / var(--total));overflow:visible}.lesson-tile-count{white-space:nowrap}.lesson-tray .lesson-tile:after{content:"";width:max(100%, var(--button-min-height));position:absolute;inset:0 auto 0 0}.lesson-tray .lesson-tile.is-used-up{opacity:.4;cursor:default;border-style:dashed}.lesson-tile-count{font-size:var(--text-small);line-height:var(--text-small-line);color:var(--color-muted-fg)}.lesson-ghost{z-index:var(--z-toast);pointer-events:none;opacity:.9;position:fixed;top:0;left:0}.lesson-hints{margin-bottom:var(--space-2);font-size:var(--text-small);padding-left:1.4em;list-style:decimal}.lesson-tools{gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.lesson-back-row{margin-top:var(--space-4);padding-top:var(--space-3);border-top:var(--stroke-2) dashed var(--color-border);scroll-margin-bottom:var(--space-4)}.lesson-back-text{margin-bottom:var(--space-2);font-weight:var(--text-strong-weight);color:var(--color-fg-strong)}@media (width<=767px){.lesson-cell.is-narrow .lesson-fraction-wrap{display:none}}.lesson-clear{justify-items:start;gap:var(--space-2);scroll-margin-bottom:var(--space-4);display:grid}.lesson-clear-art{align-items:flex-end;gap:var(--space-2);display:flex}.lesson-clear-mark{width:var(--cell-size);height:var(--cell-size);color:var(--color-fg-strong)}.lesson-clear-mark svg{width:100%;height:100%}.lesson-clear h2{font-size:var(--text-title);font-weight:var(--text-title-weight);line-height:var(--text-title-line)}.lesson-compare{gap:var(--space-1);margin-top:var(--space-3);padding-top:var(--space-3);border-top:var(--stroke-2) dashed var(--color-border);display:grid}.lesson-compare__diagram{gap:var(--space-1);display:grid}.lesson-compare>.fraction-walk__toggle{justify-self:start}.lesson-compare-title{font-size:var(--text-small);font-weight:var(--text-strong-weight);color:var(--color-fg-strong)}.lesson-compare-label{align-items:center;gap:var(--space-2);margin-top:var(--space-1);font-size:var(--text-small);line-height:var(--text-small-line);display:flex}.lesson-compare-value{color:var(--color-fg-strong);align-items:center;display:inline-flex}.lesson-compare-track{height:calc(var(--lesson-tile-height) / 2 + var(--space-2));border:var(--stroke-2) dashed var(--color-border);border-radius:var(--radius-slot);position:relative}.lesson-compare-bar,.lesson-compare-gap{top:var(--space-1);bottom:var(--space-1);left:calc(100% * var(--start) / var(--total));width:calc(100% * var(--size) / var(--total));border-radius:var(--radius-slot);position:absolute}.lesson-compare-bar{border:var(--stroke-2) solid var(--color-border-strong)}.lesson-compare-bar.is-expected{background:var(--lesson-piece-0)}.lesson-compare-bar.is-answer{background:var(--lesson-piece-1)}.lesson-compare-bar.is-clipped{border-right-style:dashed;border-top-right-radius:0;border-bottom-right-radius:0}.lesson-compare-gap{border:var(--stroke-2) dashed var(--color-border-strong)}.lesson-compare-gap.is-long{background:repeating-linear-gradient(-45deg, transparent 0 var(--space-1), var(--color-border-strong) var(--space-1) calc(var(--space-1) + var(--stroke-2)))}.lesson-compare-guide{top:calc(-1 * var(--space-2));bottom:calc(-1 * var(--space-1));left:calc(100% * var(--at) / var(--total));border-left:var(--stroke-2) dashed var(--color-border-strong);position:absolute}.lesson-compare-text{margin-top:var(--space-1);font-size:var(--text-small);font-weight:var(--text-strong-weight);color:var(--color-fg-strong)}@media (width>=768px){.lesson-card:has(>.lesson-compare){column-gap:var(--space-4);grid-template-rows:repeat(6,auto) 1fr;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;display:grid}.lesson-card:has(>.lesson-compare)>*{grid-column:1}.lesson-card:has(>.lesson-compare)>:is(.fraction-walk__toggle,.lesson-tiles-button,.lesson-next){justify-self:start}.lesson-card:has(>.lesson-compare)>.lesson-compare{padding:0 0 0 var(--space-4);border-top:0;border-left:var(--stroke-2) dashed var(--color-border);grid-area:1/2/8;margin-top:0}}.lesson-nudge{width:100%}.lesson-nudge:empty{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.lesson-nudge-text{color:var(--color-muted-fg);font-size:var(--text-small);animation:lesson-message-in var(--duration-normal) ease-out;display:inline-block}.button.lesson-quiet-button{min-height:calc(var(--button-min-height) - var(--space-2));padding:var(--space-1) var(--space-3);border-width:var(--stroke-2);font-size:var(--text-small)}.button.is-nudged{box-shadow:0 0 var(--space-3) var(--space-1) var(--color-now);animation:lesson-nudge-breathe var(--duration-breathe) var(--ease-soft) infinite}@keyframes lesson-nudge-breathe{0%,to{box-shadow:0 0 #0000}50%{box-shadow:0 0 var(--space-3) var(--space-1) var(--color-now)}}.number-cards{grid-template-columns:repeat(6, var(--button-min-height));gap:var(--space-2);width:100%;display:grid}@media (width>=768px){.number-cards{grid-template-columns:repeat(9, var(--button-min-height))}.button.number-card{min-height:calc(var(--button-min-height) - var(--space-2))}}.number-card{min-width:0;font-family:var(--font-hand);font-variant-numeric:tabular-nums;padding:0;position:relative}.number-card.is-picked{border-width:var(--stroke-3);background:var(--button-primary-bg);color:var(--color-on-primary)}.number-card__check{top:0;left:var(--space-1);font-size:var(--text-small);line-height:1;position:absolute}.number-card:disabled{cursor:default;opacity:1}.number-card:disabled:not(.is-picked){color:var(--color-muted-fg)}.number-table{margin-top:var(--space-3);border-collapse:collapse;font-family:var(--font-hand);font-variant-numeric:tabular-nums}.number-table th,.number-table td{min-width:var(--button-min-height);padding:var(--space-1) var(--space-3);border:var(--stroke-2) solid var(--color-border-strong);text-align:center}.number-table th{color:var(--color-fg-strong)}.number-table__input{width:5em;min-height:calc(var(--button-min-height) - var(--space-2));text-align:center;flex:none}.number-remainder{align-items:center;gap:var(--space-2) var(--space-4);flex-wrap:wrap;width:100%;display:flex}.number-remainder__field{align-items:center;gap:var(--space-2);display:flex}.number-remainder__field .lesson-answer__input{flex:none;width:6em}.fraction-compare{margin:var(--space-3) 0}.fraction-compare__row p{margin:var(--space-2) 0}.fraction-compare__bar{width:min(100%,400px);display:flex}.fraction-compare__bar span{text-align:center;min-width:0;padding:var(--space-1) 0;border:1px solid var(--color-border);background:var(--color-bg);flex:1}.fraction-compare__bar .is-filled{background:var(--color-subject-rika)}.common-guide__panel{margin-top:var(--space-2);padding:var(--space-3);border:var(--stroke-2) solid var(--color-border);border-radius:var(--radius-slot)}.common-guide__controls{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.common-guide__controls input{width:5em;font:inherit}.common-guide__controls button{font:inherit;color:var(--color-fg-strong);background:var(--color-bg);border:var(--stroke-2) solid var(--color-border);border-radius:var(--radius-slot);padding:var(--space-1) var(--space-2)}.common-guide__bar{width:min(100%,400px);display:flex}.common-guide__bar span{border:1px solid var(--color-border);background:var(--color-bg);flex:1;min-width:0;height:2em}.common-guide__bar .is-filled{background:var(--color-subject-rika)}@media (width<=767px){.lesson{--lesson-tile-height:var(--button-min-height)}.lesson .button--text,.button.lesson-quiet-button,.number-table__input,.lesson-tray .lesson-tile:after{min-height:var(--button-min-height)}.number-cards{grid-template-columns:repeat(auto-fill, var(--button-min-height));max-width:calc(6 * var(--button-min-height) + 5 * var(--space-2))}.lesson-header{align-items:center;gap:var(--space-1) var(--space-3)}.lesson-header .lesson-exit{order:1;margin-left:0}.lesson-header h1{flex:10em;order:2;min-width:0}.lesson-header .lesson-progress{order:3}.lesson.lesson-pinned{gap:var(--space-2);flex-direction:column;min-height:100dvh;padding-block:0;display:flex}.lesson-pinned>.lesson-card,.lesson-pinned .lesson-support{display:contents}.lesson-pinned>.lesson-card>*,.lesson-pinned .lesson-support>*{order:6;margin-block:0}.lesson-pinned>.lesson-header{padding-block:var(--space-2) var(--space-1);order:1}.lesson-pinned .lesson-problem{z-index:1;margin-inline:calc(-1 * var(--space-4));padding:var(--space-1) var(--space-4) var(--space-2);border-bottom:var(--stroke-2) dashed var(--color-border);background:var(--color-bg);order:2;position:sticky;top:0}.lesson-pinned .lesson-message,.lesson-pinned .lesson-compare,.lesson-pinned .lesson-after{order:3}.lesson-pinned .lesson-area-name,.lesson-pinned .lesson-ruler-labels,.lesson-pinned .lesson-tile-names,.lesson-pinned .lesson-ruler,.lesson-pinned .lesson-count{order:4}.lesson-pinned .lesson-notice,.lesson-pinned .lesson-tray,.lesson-pinned .lesson-note{order:5}.lesson-pinned .lesson-hints{order:7}.lesson-pinned .lesson-guide{order:8}.lesson-pinned .lesson-tiles-button{order:9;align-self:flex-start}:is(.lesson-pinned .lesson-actions,.lesson-pinned .lesson-answer:has(button),.lesson-pinned .lesson-next){z-index:1;margin:auto calc(-1 * var(--space-4)) 0;padding:var(--space-2) var(--space-4);border-top:var(--stroke-2) dashed var(--color-border);background:var(--color-bg);order:10;position:sticky;bottom:0}.lesson-pinned .lesson-next{align-self:stretch}.lesson-pinned .lesson-answer:has(button){bottom:var(--lesson-actions-height,0px);border-bottom:0;order:9}.lesson-pinned .lesson-answer:has(.number-cards,.number-table){background:0 0;border-top:0;order:4;margin:0;padding:0;position:static}.lesson-pinned .lesson-answer:has(.number-cards,.number-table) .lesson-answer__buttons{bottom:var(--lesson-actions-height,0px);z-index:1;margin-inline:calc(-1 * var(--space-4));padding:var(--space-2) var(--space-4);border-top:var(--stroke-2) dashed var(--color-border);background:var(--color-bg);position:sticky}.lesson-pinned .lesson-actions .lesson-tools,.lesson-pinned .lesson-actions .lesson-note{margin-top:0}.lesson-pinned .lesson-back-row{margin-top:var(--space-2);padding-top:var(--space-2)}.lesson-pinned .lesson-answer{margin-top:0}.lesson-back-row{scroll-margin-bottom:0}}.lesson-fraction-input-label{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.reduce-guide__panel{margin-top:var(--space-2);padding:var(--space-3);border:var(--stroke-2) solid var(--color-border);border-radius:var(--radius-slot)}.reduce-guide__panel h3{margin:0}.reduce-guide__panel button{font:inherit;color:var(--color-fg-strong);background:var(--color-bg);border:var(--stroke-2) solid var(--color-border);border-radius:var(--radius-slot);padding:var(--space-1) var(--space-2);cursor:pointer}.reduce-guide__panel button:disabled{opacity:.5;cursor:default}.reduce-guide__pizza{width:min(100%,320px);display:flex}.reduce-guide__pizza span{text-align:center;min-width:0;padding:var(--space-2) 0;border:1px solid var(--color-border);background:var(--color-bg);flex:1;transition:border-color 1.2s}.reduce-guide__pizza span.is-filled{background:var(--color-subject-rika)}.reduce-guide__pizza.is-grouped span:first-child,.reduce-guide__pizza.is-grouped span:nth-child(3){border-right-color:#0000}.reduce-guide__pizza.is-grouped span:nth-child(2),.reduce-guide__pizza.is-grouped span:nth-child(4){border-left-color:#0000}.reduce-guide__groups{text-align:center;width:min(100%,320px);display:flex}.reduce-guide__groups span{flex:1}.reduce-guide__formula{font-weight:700}@media (prefers-reduced-motion:reduce){.reduce-guide__pizza span{transition:none}}.fraction-walk__toggle,.fraction-walk button{font:inherit;color:var(--color-fg-strong);background:var(--color-bg);border:var(--stroke-2) solid var(--color-border);border-radius:var(--radius-slot);padding:var(--space-1) var(--space-2);cursor:pointer}.fraction-walk__toggle{margin-top:var(--space-2)}.lesson-answer__buttons .fraction-walk__toggle{margin-top:0}.fraction-walk button:disabled{opacity:.5;cursor:default}.fraction-walk{color:var(--color-fg-strong);background:var(--color-bg);border:var(--stroke-2) solid var(--color-border);border-radius:var(--radius-slot);padding:var(--space-4);width:min(90vw,600px);max-height:90vh;overflow:auto}.fraction-walk::backdrop{background:#00000073}.fraction-walk__header{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.fraction-walk__header h2{margin:0}.fraction-walk__example,.fraction-walk__equation{font-family:var(--font-hand);font-weight:700}.fraction-walk__text{min-height:3em}.fraction-walk__bars{gap:var(--space-2);display:grid}.fraction-walk__row{align-items:center;gap:var(--space-2);display:flex}.fraction-walk__row>span{width:3em}.fraction-walk__track{width:min(100%,320px);display:flex}.fraction-walk__track span{text-align:center;min-width:0;padding:var(--space-1) 0;border:1px solid var(--color-border);background:var(--color-bg);flex:1;transition:background-color .6s}.fraction-walk__track span.is-filled{background:var(--color-subject-rika)}.fraction-walk__controls{justify-content:center;align-items:center;gap:var(--space-4);margin-top:var(--space-4);display:flex}@media (prefers-reduced-motion:reduce){.fraction-walk__track span{transition:none}}.fraction-walk__bars{animation:.6s both fraction-scene}@keyframes fraction-scene{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.fraction-walk__bars{animation:none}}.fraction-walk__step-3 .fraction-walk__row:first-child .fraction-walk__track span,.fraction-walk__step-4 .fraction-walk__row:last-child .fraction-walk__track span{animation:1s 1s both show-fraction-cuts}@keyframes show-fraction-cuts{0%{border-left-color:#0000;border-right-color:#0000}to{border-color:var(--color-border)}}@media (prefers-reduced-motion:reduce){.fraction-walk__step-3 .fraction-walk__row:first-child .fraction-walk__track span,.fraction-walk__step-4 .fraction-walk__row:last-child .fraction-walk__track span{animation:none}}@media (width<=767px){.fraction-walk__toggle,.fraction-walk button{min-height:var(--button-min-height)}}:root{--paper-50:#fafaf5;--grid-200:#dfe7f1;--graphite-600:#4a4c52;--ink-500:#566480;--ink-700:#3a4a6b;--ink-900:#1f2942;--red-400:#ff6b6b;--red-600:#d93a3a;--teal-300:#4ecdc4;--yellow-300:#ffe066;--pink-300:#ff8f8f;--green-300:#9fdc6f;--orange-300:#ffbf6b;--purple-300:#b9a5f2;--blue-300:#8fb8f7;--rose-300:#f39ac6;--olive-300:#d6cb58;--clay-300:#d2a97f;--sea-100:#e9fbf8;--sea-200:#a4e6e0;--sea-300:#5cc8d6;--sea-400:#2fa6c9;--foam-0:#fff;--bird-50:#fdfdf8;--palm-500:#3f9a58;--trunk-400:#b08a5e;--meadow-200:#cfe8a8;--meadow-300:#aed68b;--sand-200:#f3e3bf;--desk-300:#e8dcc4;--edge-100:#f2efe6;--color-bg:var(--paper-50);--color-grid:var(--grid-200);--color-margin-line:var(--red-400);--color-fg:var(--ink-700);--color-fg-strong:var(--ink-900);--color-muted-fg:var(--ink-500);--color-border:var(--ink-700);--color-border-strong:var(--ink-900);--color-primary:var(--red-400);--color-on-primary:var(--ink-900);--color-now:var(--yellow-300);--color-done:var(--teal-300);--color-stamp:var(--red-600);--color-focus-ring:var(--ink-900);--color-scrim:#1f294266;--color-subject-kokugo:var(--pink-300);--color-subject-sansu:var(--teal-300);--color-subject-rika:var(--green-300);--color-subject-shakai:var(--orange-300);--color-subject-eigo:var(--purple-300);--color-subject-ongaku:var(--blue-300);--color-subject-taiiku:var(--rose-300);--color-subject-zuko:var(--olive-300);--color-subject-katei:var(--clay-300);--color-subject-seikatsu:var(--meadow-300);--color-domain-number:var(--blue-300);--color-domain-shape:var(--orange-300);--color-domain-change:var(--purple-300);--color-domain-data:var(--green-300);--color-sea-shallow:var(--sea-200);--color-sea-mid:var(--sea-300);--color-sea-deep:var(--sea-400);--color-tissue:var(--sea-100);--color-foam:var(--foam-0);--color-fish-shadow:#14506f57;--color-bird:var(--bird-50);--color-pencil-line:var(--graphite-600);--color-wind-line:#ffffffbf;--color-palm-leaf:var(--palm-500);--color-palm-trunk:var(--trunk-400);--color-sand:var(--sand-200);--color-meadow:var(--meadow-200);--color-meadow-low:var(--meadow-300);--color-desk:var(--desk-300);--color-paper-edge:var(--edge-100);--color-diorama-shadow:#1f294238;--color-figure-beam:var(--orange-300);--color-figure-weight:var(--blue-300);--color-figure-light:var(--yellow-300);--color-figure-earth:var(--blue-300);--color-figure-moon-dark:var(--ink-500);--color-figure-lasso:var(--yellow-300);--font-hand:"Yomogi", "Hiragino Maru Gothic ProN", "Yu Gothic", sans-serif;--font-body:"M PLUS Rounded 1c", "Hiragino Maru Gothic ProN", "Yu Gothic", sans-serif;--text-display:34px;--text-display-weight:400;--text-display-line:1.2;--text-title:30px;--text-title-weight:400;--text-title-line:1.3;--text-body:18px;--text-body-weight:500;--text-body-line:1.7;--text-small:16px;--text-small-weight:500;--text-small-line:1.35;--text-strong-weight:800;--ruby-size:.6em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--grid-size:28px;--radius-hand:255px 18px 225px 18px / 18px 225px 18px 255px;--radius-blob:52% 48% 55% 45% / 46% 54% 47% 53%;--radius-slot:10px 12px 8px 14px;--stroke-2:2px;--stroke-3:3px;--stroke-4:4px;--z-walker:2;--z-toast:3;--z-corner:4;--z-over-loading:6;--duration-fast:.12s;--duration-normal:.18s;--duration-meter:.5s;--duration-walk:.62s;--duration-hop:.31s;--duration-paper:.24s;--duration-peek:.36s;--duration-peek-back:.48s;--duration-wave:3s;--duration-zoom:1.2s;--duration-breathe:2s;--duration-draw:5s;--duration-scribble:1.2s;--duration-draw-hold:.8s;--duration-step-hold:1.2s;--duration-shutter-flash:.15s;--duration-shutter-print:.6s;--delay-loading:.3s;--duration-loading-min:.5s;--duration-goo:.52s;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--ease-soft:cubic-bezier(.45, 0, .55, 1);--ease-zoom:cubic-bezier(.6, -.3, .2, 1);--ease-goo:linear(0, .22 8%, .62 18%, .98 30%, 1.13 40%, 1.12 48%, 1.03 60%, .98 72%, 1.005 86%, 1);--button-min-height:52px;--button-primary-bg:var(--color-primary);--content-max-width:1040px;--card-width:400px;--card-width-wide:560px;--card-max-height-narrow:50dvh;--board-pane-ratio:50%;--face-size:52px;--corner-reserve:calc(var(--space-4) + 2 * (var(--button-min-height) - var(--space-2)) + var(--space-3));--account-photo-size:72px;--photo-cheki-width:144px;--photo-roster-size:32px;--photo-choice-size:64px;--account-drawer-width:400px;--drawer-width:360px;--cell-size:54px;--cell-size-test:64px;--cell-size-side:42px;--board-cols:4;--board-col-step:96px;--board-step:136px;--board-box-width:512px;--board-box-height:460px;--board-road-width:34px;--board-unit:clamp(.7px, calc((100vw - 2 * var(--space-4)) / 512), 1px);--cell-size-wide:calc(54 * var(--board-unit));--cell-size-test-wide:calc(64 * var(--board-unit));--cell-size-side-wide:calc(42 * var(--board-unit));--board-col-step-wide:calc(96 * var(--board-unit));--board-step-wide:calc(136 * var(--board-unit));--board-road-width-wide:calc(34 * var(--board-unit));--board-box-width-wide:calc(512 * var(--board-unit));--board-box-height-wide:calc(460 * var(--board-unit));--walker-width-road-wide:calc(46 * var(--board-unit));--cell-text-wide:calc(30 * var(--board-unit));--cell-text-side-wide:calc(16 * var(--board-unit));--island-size:124px;--tag-min-height:48px;--tag-min-width:88px;--walker-width:62px;--walker-width-road:46px;--panel-width:440px;--chapter-card-width:200px;--chapter-card-width-narrow:180px;--chapter-card-min-height:88px;--chapter-card-min-height-island:76px;--chapter-band:10px;--chapter-row-height:170px;--chapter-row-height-narrow:118px;--chapter-road-width:50px;--chapter-road-width-narrow:38px;--chapter-badge-size:32px;--toast-duration:4s;--avatar-size-side:128px;--avatar-size-drawer:128px;--loading-art-width:200px;--avatar-size-mirror:160px;--avatar-size-levelup:180px;--teacher-row-height:40px;--progress-cell-width:60px;--progress-bar-height:4px;--progress-bar-height-table:12px;--teacher-chapter-card-cols:4;--teacher-chapter-card-height:96px;--teacher-loop-ring-width:560px}@media (width<=767px){:root{--corner-reserve:calc(var(--space-4) + 2 * var(--button-min-height) + var(--space-3))}}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}html,body,#root{min-height:100%}body{color:var(--color-fg);font-family:var(--font-body);font-size:var(--text-body);font-weight:var(--text-body-weight);line-height:var(--text-body-line);word-break:auto-phrase;background-color:var(--color-bg);background-image:linear-gradient(var(--color-grid) 1px, transparent 1px), linear-gradient(90deg, var(--color-grid) 1px, transparent 1px);background-size:var(--grid-size) var(--grid-size);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;margin:0}input,textarea,[contenteditable=true]{-webkit-user-select:text;user-select:text}h1,h2,h3,p,ul,ol,dl,dd{margin:0;padding:0}ul,ol{list-style:none}button{font:inherit;color:inherit;cursor:pointer}svg{display:block}h1,h2{color:var(--color-fg-strong);font-family:var(--font-hand);font-weight:var(--text-display-weight)}ruby{ruby-align:center}rt{font-size:var(--ruby-size);letter-spacing:0}:focus-visible{outline:var(--stroke-3) solid var(--color-focus-ring);outline-offset:0}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}h1[tabindex="-1"]:focus,main[tabindex="-1"]:focus{outline:none}
