.mg-hero{padding-top:18px;padding-bottom:clamp(16px,3vw,32px)}.mg-hero h1{margin-top:12px;font-size:clamp(2.3rem,6vw,4rem)}.mg-lead{color:var(--ink-soft);max-width:42rem;margin-top:14px;font-size:1.15rem}.mg-noscript{border-radius:var(--radius-sm);background:var(--warn-bg);border:1px solid var(--warn-line);padding:14px}.mg{align-items:start;gap:20px;display:grid}@media (width>=900px){.mg{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:36px}.mg-out{top:calc(var(--header-h) + 20px);position:sticky}}.mg-controls{gap:16px;min-width:0;display:grid}.mg-group{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);gap:12px;min-width:0;margin:0;padding:16px 16px 14px;display:grid}.mg-group legend{font-family:var(--font-display);margin-left:-8px;padding:0 8px;font-size:1.2rem;font-weight:700}.mg-pair{grid-template-columns:1fr 1fr;gap:12px;display:grid}.mg-field{gap:6px;min-width:0;display:grid}.mg-field>label{font-size:.95rem;font-weight:600}.mg-field input[type=number],.mg-field select{border:1.5px solid var(--line-strong);border-radius:var(--radius-sm);background:#fff;width:100%;min-height:48px;padding:10px 12px;font-size:16px;font-weight:600}.mg-field input[aria-invalid=true]{background:#fff7f3;border-color:#b4441c}.mg-field input[type=range]{width:100%;min-height:44px;accent-color:var(--brand)}.mg-field small,.mg-note,.mg-fine{color:var(--muted);font-size:.86rem;line-height:1.45}.mg-sub{color:var(--ink-soft);margin-bottom:-4px;font-size:.85rem;font-weight:700}.mg-chips{flex-wrap:wrap;gap:8px;display:flex}.mg-chip{border:1.5px solid var(--line-strong);background:var(--surface);border-radius:999px;min-width:48px;min-height:44px;padding:8px 14px;font-size:.98rem;font-weight:700}.mg-chip:hover{border-color:var(--brand)}.mg-chip[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}.mg-out{border-radius:var(--radius);background:var(--bg-alt);border:1px solid var(--line);gap:14px;min-width:0;padding:18px 16px;display:grid}.mg-stage{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px 8px 12px}.mg-svg{width:100%;height:auto;max-height:260px}.mg-svg .mg-gear{fill:var(--lilac);stroke:var(--ink);stroke-width:2px;stroke-linejoin:round}.mg-svg .mg-gear-r{fill:var(--accent)}.mg-svg .mg-hub{fill:var(--surface);stroke:var(--ink);stroke-width:2px}.mg-svg .mg-mark{fill:var(--brand);stroke:var(--brand-dark);stroke-width:1px}.mg-svg .mg-arm{stroke:var(--ink);stroke-width:5px;stroke-linecap:round}.mg-svg .mg-chain{fill:none;stroke:var(--ink-soft);stroke-width:3px;stroke-dasharray:5 4}.mg-spin{transform-origin:0 0;animation:mg-rot var(--dur,4s) linear infinite}.mg.is-paused .mg-spin{animation-play-state:paused}@keyframes mg-rot{to{transform:rotate(360deg)}}.mg-stage-bar{flex-wrap:wrap;align-items:center;gap:6px 12px;padding:4px 6px 0;display:flex}.mg-motion{border:1.5px solid var(--ink);border-radius:var(--radius-sm);background:0 0;min-height:44px;padding:8px 14px;font-size:.95rem;font-weight:600}.mg-motion:hover:not(:disabled){background:var(--ink);color:#fff}.mg-motion:disabled{opacity:.55;cursor:not-allowed}.mg-stage-note{color:var(--muted);flex:180px;font-size:.8rem}.mg-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.mg-stats>div{border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--line);text-align:center;gap:2px;min-width:0;padding:12px 8px;display:grid}.mg-stats span{letter-spacing:.03em;text-transform:uppercase;color:var(--brand-dark);font-size:.68rem;font-weight:700}.mg-stats strong{font-family:var(--font-display);overflow-wrap:anywhere;font-size:clamp(1.5rem,6vw,2.1rem);line-height:1.05}.mg-stats small{color:var(--muted);font-size:.75rem}.mg-sentence{color:var(--ink);font-size:1rem;line-height:1.55}.mg-error{border-radius:var(--radius-sm);color:#8f2f12;background:#fff7f3;border:1px solid #e3b29f;padding:10px 12px;font-size:.93rem;font-weight:600}.mg-table-block{gap:12px;margin-top:clamp(24px,4vw,40px);display:grid}.mg-table-block h2{font-size:clamp(1.5rem,3vw,2rem)}.mg-table{border-collapse:collapse;text-align:center;width:100%;font-size:.95rem}.mg-table th{background:var(--bg-alt);color:var(--ink-soft);white-space:nowrap;padding:8px 6px;font-size:.8rem}.mg-table tbody th{background:var(--bg-alt);position:sticky;left:0}.mg-table td{border-top:1px solid var(--line);padding:2px}.mg-cell{background:0 0;border:1.5px solid #0000;border-radius:6px;width:100%;min-width:56px;min-height:44px;font-size:.95rem;font-weight:600}.mg-cell:hover{border-color:var(--brand)}.mg-cell.is-cross{color:#6b6b6b;background:#ececec;font-weight:500}.mg-cell[aria-pressed=true]{background:var(--brand-dark);color:#fff;border-color:var(--brand-dark)}.mg-corner{text-align:left}@media (prefers-reduced-motion:reduce){.mg-spin{animation:none}}
