.gm-sim .rb-sim-body{grid-template-columns:minmax(0,1fr) 280px}@media (max-width:900px){.gm-sim .rb-sim-body{grid-template-columns:minmax(0,1fr)}}.gm-stage{gap:12px;min-width:0;display:grid}.gm-svg{touch-action:manipulation;-webkit-user-select:none;user-select:none}.gm-pan{min-width:0}@media (max-width:600px){.gm-pan{-webkit-overflow-scrolling:touch;border-radius:8px;overflow-x:auto}.rb-sim .gm-pan>.sim-canvas{touch-action:pan-x pan-y;width:620px;max-width:none}}.gm-hint{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:.84rem}.gm-small{font-size:.85rem}.gm-facts dd{font-weight:400}.gm-sum{margin-top:0}.gm-input{font:inherit;font-family:var(--mono);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);border-radius:8px;width:100%;min-width:0;padding:8px 10px;font-size:.86rem}.gm-chip{font:inherit;font-family:var(--mono);border:1px solid var(--border-strong);background:var(--surface-2);min-height:32px;color:var(--text);cursor:pointer;border-radius:999px;padding:6px 9px;font-size:.74rem}.gm-chip:hover{border-color:var(--eng)}.gm-badge{letter-spacing:.02em;border-radius:999px;padding:1px 8px;font-size:.72rem;font-weight:800;display:inline-block}.gm-ok{background:color-mix(in srgb, var(--green,#2f8a57) 18%, transparent);color:var(--green,#2f8a57)}.gm-warn{background:color-mix(in srgb, var(--gold,#b7791f) 20%, transparent);color:var(--gold,#b7791f)}.gm-error,.gm-err{color:var(--red,#c43d36)}.gm-badge.gm-error{background:color-mix(in srgb, var(--red,#c43d36) 16%, transparent)}.gm-checks{gap:6px;font-size:.82rem;display:grid}.gm-checks p{margin:0}.gm-dev{border:1px solid var(--border);border-radius:8px;gap:6px;padding:8px 10px;display:grid}.gm-legend{color:var(--muted);flex-wrap:wrap;gap:10px;font-size:.78rem;display:flex}.gm-legend i{vertical-align:middle;border-radius:2px;width:10px;height:10px;margin-right:4px;display:inline-block}.gm-tabs{flex-wrap:wrap;gap:6px;display:flex}.gm-tabs button{font:inherit;border:1px solid var(--border-strong);min-height:36px;color:var(--text);cursor:pointer;background:0 0;border-radius:999px;padding:7px 14px;font-size:.85rem;font-weight:700}.gm-tabs button.on{background:var(--eng);border-color:var(--eng);color:#fff}.gm-bars{gap:10px;display:grid}.gm-bar{border:1px solid var(--border);border-radius:8px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) 64px;align-items:center;gap:10px;padding:8px 10px;display:grid}.gm-bar.best{border-color:var(--eng);box-shadow:0 0 0 2px var(--eng-soft)}.gm-bar-l{min-width:0;display:grid}.gm-bar-l small{color:var(--muted);font-size:.76rem}.gm-bar output{text-align:right;font-variant-numeric:tabular-nums;font-weight:800}.gm-bar-track{background:var(--surface-2);border-radius:999px;height:10px;display:block;overflow:hidden}.gm-bar-track span{background:var(--eng);border-radius:999px;height:100%;display:block}.gm-bar-track span.neg{background:var(--red,#c43d36);opacity:.6}@media (max-width:520px){.gm-bar{grid-template-columns:minmax(0,1fr) 56px}.gm-bar-track{grid-area:2/1/auto/-1}}.gm-term{color:#e9dfd3;border:1px solid var(--border);background:#17110d;border-radius:10px;overflow:hidden}.gm-term-out{white-space:pre-wrap;overflow-wrap:anywhere;height:320px;padding:10px 12px;font:.8rem/1.5 ui-monospace,JetBrains Mono,Menlo,Consolas,monospace;overflow-y:auto}.gm-term-out .in{color:#7ee2b8}.gm-term-out .gm-err{color:#ff8f86}.gm-term-in{color:#7ee2b8;align-items:baseline;gap:6px;display:flex}.gm-term-in span{white-space:nowrap}.gm-term-in input{min-width:0;font:inherit;color:#fff;background:0 0;border:0;outline:none;flex:1;padding:0}.gm-nano{display:grid}.gm-nano textarea{color:#fff;resize:vertical;background:#17110d;border:0;min-height:260px;padding:10px 12px;font:.8rem/1.5 ui-monospace,Menlo,Consolas,monospace}.gm-nano-bar{color:#17110d;background:#e9dfd3;flex-wrap:wrap;gap:10px;padding:6px 10px;font:700 .76rem ui-monospace,Menlo,monospace;display:flex}.gm-nano-bar button{font:inherit;cursor:pointer;background:0 0;border:0;min-height:32px;padding:4px 6px}.gm-tasks{gap:4px;margin:0;padding:0;font-size:.84rem;list-style:none;display:grid}.gm-tasks li:before{content:"○ ";color:var(--muted)}.gm-tasks li.ok{color:var(--muted);text-decoration:line-through}.gm-tasks li.ok:before{content:"● ";color:var(--green,#2f8a57)}.gm-code{background:var(--surface-2);border:1px solid var(--border);white-space:pre;border-radius:8px;max-width:100%;margin:0;padding:10px 12px;font:.76rem/1.5 ui-monospace,JetBrains Mono,Menlo,Consolas,monospace;overflow-x:auto}.gm-code2{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:10px;display:grid}.gm-frames{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.gm-frames figure{gap:4px;margin:0;display:grid}.gm-frames figcaption{color:var(--muted);font-size:.76rem}.gm-pix{width:100%;height:auto;image-rendering:pixelated;border:1px solid var(--border);border-radius:8px}.gm-steer{background:var(--surface-2);border-radius:999px;height:10px;position:relative}.gm-steer span{background:var(--eng);border-radius:50%;width:16px;height:16px;margin-left:-8px;transition:left .15s;position:absolute;top:-3px}.gm-pad{grid-template-columns:repeat(3,52px);justify-content:center;gap:6px;display:grid}.gm-pad .sbtn{touch-action:none;min-height:46px;padding:0}.gm-focus{border-radius:10px;outline:none}.gm-focus:focus-visible{box-shadow:0 0 0 3px var(--eng-soft)}.gm-panel{border:1px solid var(--border);background:var(--surface);border-radius:10px;gap:10px;padding:12px;display:grid}.gm-panel-head{color:var(--muted);background:var(--surface-2);overflow-wrap:anywhere;border-radius:999px;padding:6px 10px;font:.78rem ui-monospace,Menlo,monospace}.gm-drive{grid-template-columns:repeat(3,64px);grid-template-areas:".f.""l s r"".b.";justify-content:center;gap:6px;display:grid}.gm-dbtn{border:1px solid var(--border-strong);background:var(--surface-2);min-height:52px;color:var(--text);cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;border-radius:12px;font-size:1.2rem}.gm-dbtn:active{background:var(--eng);color:#fff}.gm-d-forward{grid-area:f}.gm-d-back{grid-area:b}.gm-d-left{grid-area:l}.gm-d-right{grid-area:r}.gm-d-stop{color:var(--red,#c43d36);grid-area:s}.gm-wheels{gap:6px;font-size:.82rem;display:grid}.gm-wheels div{grid-template-columns:20px minmax(0,1fr) 48px;align-items:center;gap:8px;display:grid}.gm-regtable{border-collapse:collapse;table-layout:fixed;width:100%;font-size:.78rem}.gm-regtable th{text-align:left;width:64px;font-family:var(--mono);color:var(--muted);padding:4px 4px 4px 0}.gm-regtable td{padding:3px 0}.gm-regtable .gm-hex{width:98px;font-family:var(--mono);text-align:right;color:var(--muted);font-size:.72rem}.gm-bits{gap:2px;display:grid}.gm-bits button{border:1px solid var(--border);background:var(--surface-2);min-height:26px;color:var(--muted);cursor:pointer;border-radius:4px;min-width:0;padding:4px 0;font:700 .62rem ui-monospace,Menlo,monospace}.gm-bits button.on{background:color-mix(in srgb, var(--eng) 25%, var(--surface));color:var(--text)}.gm-bits button.hl{border-color:var(--eng);border-width:2px}.gm-bits button:disabled{cursor:default}@media (max-width:600px){.gm-regtable th{width:48px;font-size:.66rem}.gm-regtable .gm-hex{display:none}.gm-bits button{min-height:24px;font-size:.5rem}}.gm-cells{grid-template-columns:repeat(auto-fill,minmax(42px,1fr));gap:3px;display:grid}.gm-cells span{text-align:center;border-radius:4px;padding:4px 0;font:.66rem ui-monospace,Menlo,monospace}.gm-cells .lo{background:color-mix(in srgb, var(--gold,#b7791f) 20%, transparent)}.gm-cells .hi{background:color-mix(in srgb, var(--sky,#2c6cb0) 20%, transparent)}.gm-wokwi ul{margin:0 0 8px}@keyframes gm-spin{to{transform:rotate(360deg)}}.gm-spin{animation:1s linear infinite gm-spin}.gm-rev{animation-direction:reverse}@media (prefers-reduced-motion:reduce){.gm-spin{animation:none}.gm-steer span{transition:none}}.gm-two>.panel{margin-top:0}.gm-root .rb-prose .eq{white-space:normal;overflow-wrap:anywhere;max-width:100%}.gm-3d-wrap{gap:6px;display:grid}.gm-3d{aspect-ratio:4/3;border:1px solid var(--border);background:var(--sim-bg);touch-action:none;border-radius:10px;width:100%;max-height:62vh;overflow:hidden}@media (max-width:600px){.gm-3d{aspect-ratio:1}}@media (max-width:760px),(pointer:coarse){.gm-chip,.gm-tabs button,.gm-input{min-height:44px}.gm-chip{min-width:44px}.gm-term-in{align-items:center}.gm-term-in input{min-height:44px}}
