tsuka-sim,.ts-figure{--sim-a:#1e78c2;--sim-b:#d9690b;--sim-a-ink:#1c70b4;--sim-b-ink:#ae5409;--sim-accent-ink:#ad5500;--tu-body:#fff3cf;--tu-head:#1c70b4;--tu-tail:#d9690b;--tu-deck:#fbd3ad;--tu-trail:#b9dcf7;--tu-seg-train:#b9dcf7;--tu-seg-bridge:#fbd3ad;display:block}@media (prefers-color-scheme:dark){tsuka-sim,.ts-figure{--sim-a:#7cc0f5;--sim-b:#ffab61;--sim-a-ink:#7cc0f5;--sim-b-ink:#ffab61;--sim-accent-ink:var(--c-accent);--tu-body:#cfd8e3;--tu-head:#1c4f7a;--tu-tail:#8a3f00;--tu-deck:#ffab61;--tu-trail:#7cc0f5;--tu-seg-train:#7cc0f5;--tu-seg-bridge:#ffab61}}.tu rt{font-size:.5em}.tu-tabs{border-radius:var(--radius);background:var(--c-border);grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;display:grid}.tu-tabs [role=tab]{border-radius:calc(var(--radius) - 4px);min-height:44px;color:var(--c-text);cursor:pointer;background:0 0;border:0;font-weight:700}.tu-tabs [role=tab][aria-selected=true]{background:var(--c-surface);color:var(--c-primary);box-shadow:0 1px 2px #00000026}.tu-panel{border:1px solid var(--c-border);border-radius:var(--radius);background:var(--c-surface);margin-top:.75rem;padding:1rem}.tu-panel>:first-child{margin-top:0}.tu-kind{background:var(--c-surface-2);border-radius:999px;margin:0 0 .25rem;padding:0 .6rem;font-size:.8125rem;font-weight:700;line-height:2;display:inline-block}.tu-problem{margin:0 0 .25rem;font-size:1.0625rem;font-weight:700;line-height:2}.tu-mission{color:var(--c-muted);margin:0 0 .75rem;line-height:2}.tu-chart{border-radius:var(--radius);background:var(--c-surface-2);margin:.75rem 0 0;padding:.5rem}.tu-chart figcaption{color:var(--c-muted);text-align:center;margin-top:.25rem;font-size:.8125rem;line-height:2}.train-chart,.compare-chart{width:100%;max-width:520px;height:auto;margin-inline:auto;display:block}.train-chart .lbl,.compare-chart .lbl{fill:var(--c-text);font-size:14px;font-weight:700}.train-chart .lbl--head,.compare-chart .lbl--train{fill:var(--sim-a-ink)}.train-chart .lbl--tail{fill:var(--sim-b-ink)}.train-chart .lbl--bracket,.compare-chart .lbl--diff{fill:var(--sim-accent-ink)}.train-chart .track{stroke:var(--c-muted);stroke-width:2px}.train-chart .pole{stroke:var(--c-text);stroke-width:4px}.train-chart .bridge-end,.compare-chart .guide{stroke:var(--c-muted);stroke-width:1.5px;stroke-dasharray:3 3}.train-chart .tail-stem{stroke:var(--sim-b-ink);stroke-width:1.5px;stroke-dasharray:3 3}.train-chart .train{fill:var(--tu-body)}.train-chart .head-mark{fill:var(--tu-head)}.train-chart .tail-mark{fill:var(--tu-tail)}.train-chart .bridge-deck{fill:var(--tu-deck)}.train-chart .trail{fill:var(--tu-trail)}.compare-chart .seg--train{fill:var(--tu-seg-train)}.compare-chart .seg--bridge{fill:var(--tu-seg-bridge)}.train-chart .bracket,.compare-chart .bracket{fill:none;stroke:var(--c-accent);stroke-width:2px}@media (prefers-color-scheme:light){.train-chart rect,.compare-chart rect{stroke:var(--c-fig-edge);stroke-width:1.5px}.train-chart rect.is-dim,.compare-chart rect.is-dim{fill-opacity:.25}.train-chart text.is-dim,.compare-chart text.is-dim{fill:var(--c-muted)}.train-chart g.is-dim .bracket,.compare-chart g.is-dim .bracket{stroke-width:1px}}@media (prefers-color-scheme:dark){.train-chart rect,.compare-chart rect{stroke:var(--c-surface-2);stroke-width:2px}.train-chart rect.is-dim,.compare-chart rect.is-dim{opacity:.55}.train-chart text.is-dim,.compare-chart text.is-dim{opacity:.85}.train-chart g.is-dim .bracket,.compare-chart g.is-dim .bracket{opacity:.6}}.train-chart rect.is-hl,.compare-chart rect.is-hl{stroke:var(--c-text);stroke-width:3px}.train-chart .pole.is-hl{stroke-width:6px}@media (prefers-reduced-motion:no-preference){.tu-status.is-done .tu-judge{animation:.6s ease-out tu-cheer}}@keyframes tu-cheer{0%{transform:scale(.8)}50%{transform:scale(1.12)}to{transform:scale(1)}}.tu-status{text-align:center;margin-block:.75rem}.tu-meter{flex-wrap:wrap;justify-content:center;align-items:baseline;gap:.25rem 1.5rem;display:flex}.tu-meter p{margin:0}.tu-now strong{color:var(--c-primary);font-variant-numeric:tabular-nums;font-size:2rem}.tu-dist strong{color:var(--c-accent);font-variant-numeric:tabular-nums;font-size:1.5rem}.tu-judge{background:var(--c-surface-2);border-radius:999px;margin:.25rem 0 0;padding:.2rem 1rem;font-weight:700;display:inline-block}.tu-judge.is-done{background:var(--c-primary);color:var(--c-on-primary);font-size:1.125rem}.tu-controls{grid-template-columns:1fr 1.3fr;gap:.5rem;display:grid}.tu-controls .btn{padding-inline:.5rem;font-size:.9375rem}.tu-legend{margin:.75rem 0 0;padding:0;font-size:.9375rem;line-height:2;list-style:none}.tu-legend li{align-items:baseline;gap:.5rem;display:flex}.tu-swatch{border-radius:3px;flex:none;width:1em;height:.5em;transform:translateY(-.1em)}.tu-swatch--head{background:var(--sim-a)}.tu-swatch--tail{background:var(--sim-b)}.tu-swatch--trail{background:var(--tu-trail);outline:1px solid var(--c-muted)}.tu-legend .tu-note{color:var(--c-muted);display:block}.tu-legend .tu-insight{border-radius:var(--radius);background:var(--c-primary-soft);margin-top:.5rem;padding:.5rem .75rem;font-weight:700;display:block}.tu-actions{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.tu-actions .btn{flex:auto}.tu-seg{grid-auto-columns:1fr;grid-auto-flow:column;gap:4px;margin-bottom:1rem;display:grid}.tu-seg__btn{border:2px solid var(--c-border);border-radius:var(--radius);background:var(--c-surface);min-height:44px;color:var(--c-text);cursor:pointer;padding:.25rem .5rem;font-weight:700}.tu-seg__btn[aria-pressed=true]{border-color:var(--c-primary);background:var(--c-primary-soft);color:var(--c-primary)}.tu-answer{flex-wrap:wrap;align-items:end;gap:.75rem;margin-top:.75rem;display:flex}.tu-answer__field{align-items:center;gap:.4rem;font-weight:700;display:flex}.tu-answer__field input{border:2px solid var(--c-border);background:var(--c-bg);width:6em;min-height:44px;color:var(--c-text);text-align:right;border-radius:8px;padding:0 .5rem;font-size:1.25rem}.tu-answer__field input:focus{border-color:var(--c-primary)}.tu-result-area:not(:empty){border-radius:var(--radius);background:var(--c-surface-2);margin-top:1rem;padding:.75rem 1rem}.tu-result-area p{margin:0;line-height:2}.tu-result{font-size:1.25rem;font-weight:800}.tu-result.is-correct{color:var(--c-success)}.tu-result.is-wrong{color:var(--c-danger)}.tu-score{color:var(--c-muted);margin:.75rem 0 0;font-size:.875rem}.tu-steps{counter-reset:tu-step;margin:1rem 0 0;padding:0;list-style:none}.tu-step{counter-increment:tu-step;border-radius:var(--radius);background:var(--c-surface-2);opacity:.75;margin-top:.5rem;padding:.5rem .75rem .5rem 2.75rem;position:relative}.tu-step.is-current{opacity:1;outline:2px solid var(--c-primary)}.tu-step:before{content:counter(tu-step);background:var(--c-primary);width:1.5rem;height:1.5rem;color:var(--c-on-primary);border-radius:50%;place-items:center;font-size:.875rem;font-weight:800;display:grid;position:absolute;top:.6rem;left:.75rem}.tu-step p{margin:0;line-height:2}.tu-step__title{font-weight:800}.tu-step__formula{font-variant-numeric:tabular-nums;color:var(--c-primary);font-size:1.125rem;font-weight:700}.tu-stepnav{grid-template-columns:1fr auto 1fr;align-items:center;gap:.75rem;margin-top:1rem;display:grid}.tu-stepnav__count{font-variant-numeric:tabular-nums;font-weight:700}.tu-noscript{color:var(--c-danger);margin-top:.75rem}
