.gb{display:flex;flex-direction:column;gap:20px}.gb__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:20px;align-items:start}.gb__inputs{gap:22px;padding:24px}.gb__fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px}.gb__result{display:flex;flex-direction:column;gap:16px;min-width:0;position:sticky;top:80px}.gb__hint{font-size:11px;color:var(--fg-faint);text-align:end}.gb__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.gb__empty{padding:28px 8px;text-align:center;color:var(--fg-muted)}@media (max-width:960px){.gb__grid{grid-template-columns:minmax(0,1fr)}.gb__result{position:static}}@media (max-width:520px){.gb__fields{gap:18px 12px}.gb__stats{gap:8px}.gb__stats .ui-stat{padding:10px}}.gb__stage{display:grid;width:100%;height:280px;touch-action:none;user-select:none;cursor:crosshair;transition:opacity var(--dur-2)}.gb__stage.is-stale{opacity:.45}.gb__cell{place-items:center;border:1.5px dashed var(--stage-line);border-radius:8px;color:var(--stage-muted);font-family:var(--font-mono);font-size:12px}.gb__area,.gb__cell{display:grid;min-width:0}.gb__area{position:relative;place-items:center;border:2px solid var(--cat);border-radius:8px;background:color-mix(in oklab,var(--cat) 30%,var(--stage-card));color:var(--stage-card-ink);cursor:default;outline:none}.gb__area:focus-visible{box-shadow:0 0 0 3px var(--bg),0 0 0 5px var(--cat)}.gb__tag{font-family:var(--font-mono);font-size:12px;font-weight:700;pointer-events:none}.gb__x{position:absolute;top:3px;inset-inline-end:3px;width:22px;height:22px;display:grid;place-items:center;padding:0;border:0;border-radius:50%;background:rgba(0,0,0,.55);color:#fff;font-size:14px;line-height:1;cursor:pointer;opacity:0;transition:opacity var(--dur-1)}.gb__area:focus-within .gb__x,.gb__area:hover .gb__x{opacity:1}@media (pointer:coarse){.gb__x{opacity:1;width:28px;height:28px}.gb__x:after{content:"";position:absolute;inset:-8px}}.gb__draft{border:2px solid var(--cat);border-radius:8px;background:color-mix(in oklab,var(--cat) 18%,transparent);pointer-events:none;z-index:2}@media (max-width:520px){.gb__stage{height:240px}.pvs__canvas{padding:16px}}@media (prefers-reduced-motion:no-preference){.gb__area{animation:gb-pop var(--dur-3) var(--ease-spring) both}@keyframes gb-pop{0%{opacity:0;scale:.8}to{opacity:1;scale:1}}}@media (max-width:960px){.gb__result{display:contents}.gb__preview{order:-1}}