.pt{gap:.9rem;display:grid}.pt-figure{aspect-ratio:1;border:1px solid var(--rule-strong,#c8bc9e);touch-action:none;background:linear-gradient(#fbf9f3,#f4efe3);border-radius:3px;margin:0;position:relative;overflow:hidden}.pt-figure:focus-visible{outline:2px solid var(--signal);outline-offset:2px}.pt-canvas{cursor:grab;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.pt-figure[data-recording=true] .pt-canvas{pointer-events:auto}.pt-figure[data-recording=true] .pt-canvas:active{cursor:grabbing}.pt-canvas[hidden]{display:none}.pt-poster{position:absolute;inset:0}.pt-poster[hidden]{display:none}.pt-poster-svg{width:100%;height:100%;display:block}.pt-arena{fill:none;stroke:var(--rule-strong);stroke-width:1.5px}.pt-grid line{stroke:color-mix(in srgb, var(--rule-strong) 55%, transparent);stroke-width:1px}.pt-target rect{fill:none;stroke:var(--entity-target);stroke-width:2px;stroke-dasharray:5 5}.pt-target-label{fill:var(--entity-target);font-family:var(--font-mono);letter-spacing:.05em;font-size:11px}.pt-tee rect{fill:var(--entity-block)}.pt-pusher-ring{fill:none;stroke:var(--entity-pusher);stroke-width:1.5px;opacity:.5}.pt-pusher-core{fill:var(--entity-pusher)}.pt-drag{fill:none;stroke:var(--signal);stroke-width:2px;stroke-dasharray:4 4}.pt-drag-head{fill:var(--signal)}.pt-drag-label{fill:var(--signal);font-family:var(--font-mono);letter-spacing:.02em;font-size:11.5px}.pt-badge{border:1px solid var(--rule-strong);backdrop-filter:blur(3px);font-family:var(--font-mono);color:var(--ink-mute);pointer-events:none;background:#fdfbf6db;border-radius:5px;justify-content:space-between;align-items:baseline;gap:.6rem;padding:.4rem .6rem;font-size:.72rem;display:flex;position:absolute;top:.6rem;left:.6rem;right:.6rem}.pt-badge b{color:var(--ink-soft);font-variant-numeric:tabular-nums}.pt-badge .pt-rec{color:var(--signal);letter-spacing:.04em;font-weight:700}@media (prefers-reduced-motion:no-preference){.pt-badge .pt-rec:before{content:"● ";animation:1.1s step-end infinite pt-blink}}.pt-badge .pt-rec:before{content:"● "}@keyframes pt-blink{50%{opacity:.25}}.pt-status{font-family:var(--font-mono);color:var(--ink-mute);pointer-events:none;font-size:.66rem;position:absolute;bottom:.6rem;left:.6rem;right:.6rem}.pt-status[data-failed=true]{color:var(--alert)}.pt-scrub{grid-template-columns:auto 1fr auto;align-items:center;gap:.6rem;display:grid}.pt-scrub[hidden]{display:none}.pt-scrub-count{font-family:var(--font-mono);color:var(--ink-soft);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.72rem}.pt-range{cursor:pointer;width:100%;height:1.4rem;accent-color:var(--signal);margin:0}.pt-range:focus-visible{outline:2px solid var(--signal);outline-offset:3px}.pt-step{gap:.3rem;display:inline-flex}.pt-arrays{background:var(--paper-2);border:1px solid var(--rule);border-radius:5px;gap:.7rem;padding:.85rem .9rem;display:grid}.pt-arrays-head{font-family:var(--font-mono);color:var(--ink-mute);justify-content:space-between;align-items:baseline;gap:.6rem;font-size:.72rem;display:flex}.pt-arrays-head b{color:var(--ink-soft)}.pt-obs{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem 1.1rem;display:grid}@media (width<=30rem){.pt-obs{grid-template-columns:1fr}}.pt-slot{gap:.25rem;display:grid}.pt-slot-label{font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;font-size:.64rem;font-weight:700}.pt-slot[data-entity=pusher] .pt-slot-label{color:var(--entity-pusher)}.pt-slot[data-entity=block] .pt-slot-label{color:var(--entity-block)}.pt-slot[data-entity=target] .pt-slot-label{color:var(--entity-target)}.pt-slot[data-entity=pusher]{border-left:2px solid color-mix(in srgb, var(--entity-pusher) 55%, transparent);padding-left:.5rem}.pt-slot[data-entity=block]{border-left:2px solid color-mix(in srgb, var(--entity-block) 55%, transparent);padding-left:.5rem}.pt-slot[data-entity=target]{border-left:2px solid color-mix(in srgb, var(--entity-target) 55%, transparent);padding-left:.5rem}.pt-cells{flex-wrap:wrap;gap:.35rem .9rem;display:flex}.pt-cell{font-family:var(--font-mono);gap:.05rem;font-size:.72rem;display:grid}.pt-cell .pt-name{color:var(--ink-mute);font-size:.62rem}.pt-cell .pt-val{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:600;transition:color .12s}.pt-cell .pt-idx{color:var(--rule-strong)}.pt-action{border:1px solid var(--signal-line,#1f56de57);background:var(--signal-soft,#1f56de1a);border-radius:4px;gap:.3rem;padding:.55rem .7rem;display:grid}.pt-action .pt-slot-label,.pt-action .pt-val{color:var(--signal)}.pt-action-note{font-family:var(--font-mono);color:var(--ink-mute);font-size:.62rem}.pt-controls{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.pt-btn{font-family:var(--font-mono);letter-spacing:.01em;border:1px solid var(--rule-strong);background:var(--paper);color:var(--ink-soft);cursor:pointer;border-radius:100px;padding:.4rem .85rem;font-size:.74rem;transition:background .15s,color .15s,border-color .15s}.pt-btn:hover{border-color:var(--signal);color:var(--ink)}.pt-btn:focus-visible{outline:2px solid var(--signal);outline-offset:2px}.pt-btn--primary{background:var(--signal);color:var(--signal-ink);border-color:var(--signal);box-shadow:0 1px 4px -1px var(--signal-line)}.pt-btn--primary:hover{color:#fff;background:color-mix(in srgb, var(--signal) 90%, #000)}.pt-btn--rec{background:var(--alert);color:#fff;border-color:var(--alert)}.pt-btn--rec:hover{color:#fff;background:color-mix(in srgb, var(--alert) 90%, #000);border-color:var(--alert)}.pt-btn[disabled]{opacity:.5;cursor:default}.pt-note{font-family:var(--font-mono);color:var(--ink-mute);margin-left:auto;font-size:.66rem}@media (width<=34rem){.pt-note{display:none}}
