.pt{gap:var(--space-3);display:grid}.pt [hidden]{display:none!important}.pt-visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.pt-drop{justify-items:center;gap:var(--space-1);padding:var(--space-6) var(--space-3);border:1.5px dashed var(--color-border-strong);border-radius:var(--radius-lg);text-align:center;cursor:pointer;transition:background var(--duration) var(--ease), border-color var(--duration) var(--ease), transform var(--duration) var(--ease);display:grid}.pt-drop:hover,.pt-drop:focus-visible,.pt-drop.is-dragging{border-color:var(--accent-strong);background:var(--accent-soft)}.pt-drop.is-dragging{transform:scale(1.01)}.pt-drop-icon,.pt-result-icon{color:var(--accent-text);background:var(--accent-soft);flex:none;place-items:center;display:grid}.pt-drop-icon{width:4.5rem;height:4.5rem;margin-bottom:var(--space-1);border-radius:var(--radius-lg)}.pt-drop strong{font-size:var(--text-lg)}.pt-drop p,.pt-drop small{color:var(--color-text-muted)}.pt-drop small{margin-top:var(--space-1);font-size:var(--text-xs)}.pt-work{gap:var(--space-3);display:grid}.pt-files{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.pt-file{align-items:center;gap:var(--space-2);min-width:0;padding:.65rem var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);box-shadow:var(--shadow-sm);transition:transform var(--duration) var(--ease), border-color var(--duration) var(--ease), opacity var(--duration) var(--ease);display:flex}.pt-file.is-dragging{opacity:.45}.pt-file.is-target{border-color:var(--accent-strong);transform:translateY(-2px)}.pt-grab{color:var(--color-text-muted);cursor:grab}.pt[data-multiple=false] .pt-grab,.pt[data-multiple=false] .pt-number,.pt[data-multiple=false] .pt-file-actions button:not([data-remove]){display:none}.pt-number{color:var(--accent-text);font-size:var(--text-sm);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums}.pt-thumb{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--card-tint);width:3.5rem;height:4.2rem;color:var(--color-text-muted);flex:none;place-items:center;display:grid;overflow:hidden}.pt-thumb img{object-fit:contain;width:100%;height:100%;display:none}.pt-thumb img[src]{display:block}.pt-thumb:has(img[src]) svg{display:none}.pt-file-text{gap:.2rem;min-width:0;margin-right:auto;display:grid}.pt-file-text strong{text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-sm);overflow:hidden}.pt-file-text small,.pt-status,.pt-result-text p,.pt-hint{color:var(--color-text-muted);font-size:var(--text-sm)}.pt-file-actions{flex:none;gap:.25rem;display:flex}.pt-file-actions button,.pt-icon-button{border-radius:var(--radius-sm);width:2.25rem;height:2.25rem;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.pt-file-actions button:hover:not(:disabled),.pt-icon-button:hover:not(:disabled){background:var(--accent-soft);color:var(--accent-text)}.pt-file-actions button:disabled,.pt-icon-button:disabled{opacity:.3;cursor:not-allowed}.pt-link{color:var(--accent-text);font:inherit;font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer;background:0 0;border:0;justify-self:start;align-items:center;gap:.35rem;padding:.5rem 0;display:inline-flex}.pt-link:hover{text-decoration:underline}.pt-options{gap:var(--space-2);display:grid}.pt-options:not(:has(*)){display:none}.pt-field{gap:.35rem;display:grid}.pt-field>label,.pt-field>legend,.pt-legend{font-size:var(--text-sm);font-weight:var(--weight-semibold)}.pt-field input[type=text],.pt-field input[type=number],.pt-field input[type=search],.pt-field select,.pt-field textarea{width:100%;min-height:var(--control-height);padding:0 var(--space-2);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-raised);color:var(--color-text);font:inherit}.pt-field textarea{min-height:9rem;padding:var(--space-2);resize:vertical}.pt-field input[type=color]{width:4rem;height:var(--control-height);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-raised);padding:.2rem}.pt-field input[type=range]{width:100%;accent-color:var(--accent)}.pt-grid-fields{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));display:grid}fieldset.pt-field{border:0;min-width:0;margin:0;padding:0}.pt-choices{gap:var(--space-1);flex-wrap:wrap;display:flex}.pt-choice{min-height:2.75rem;padding:0 var(--space-2);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-surface-raised);font-size:var(--text-sm);cursor:pointer;align-items:center;gap:.5rem;display:inline-flex}.pt-choice:has(input:checked){border-color:var(--accent-strong);background:var(--accent-soft);color:var(--accent-text);font-weight:var(--weight-semibold)}.pt-choice input{accent-color:var(--accent)}.pt-check{font-size:var(--text-sm);align-items:center;gap:.5rem;display:flex}.pt-run{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.pt-progress{border-radius:var(--radius-pill);background:var(--color-surface-raised);height:.75rem;overflow:hidden}.pt-bar{height:100%}.pt-bar span{border-radius:var(--radius-pill);background:var(--accent);width:0;height:100%;transition:width var(--duration-fast) var(--ease);display:block}.pt-status{min-height:1.5em;margin:0}.pt-status[data-kind=error]{color:var(--color-text);font-weight:var(--weight-semibold)}.pt-status[data-kind=error]:before{content:"⚠ "}.pt-result{align-items:center;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-md);background:var(--accent-soft);flex-wrap:wrap;display:flex}.pt-result-icon{border-radius:var(--radius-sm);width:2.8rem;height:2.8rem}.pt-result-text{gap:.15rem;margin-right:auto;display:grid}.pt-result-text p{margin:0}.pt-result-actions{gap:var(--space-1);flex-wrap:wrap;display:flex}.pt [disabled]{cursor:not-allowed;opacity:.55}.pt button:focus-visible,.pt-drop:focus-visible{outline:2px solid var(--accent-strong);outline-offset:3px}.pg-toolbar{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.pg-toolbar .pt-field{flex:14rem}.pg-grid{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr));margin:0;padding:0;list-style:none;display:grid}.pg-card{padding:var(--space-1);border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);transition:border-color var(--duration-fast) var(--ease), opacity var(--duration-fast) var(--ease);justify-items:center;gap:.35rem;display:grid}.pg-card[data-selectable=true]{cursor:pointer}.pg-card.is-selected{border-color:var(--accent-strong);background:var(--accent-soft)}.pg-card.is-removed{opacity:.45;border-style:dashed}.pg-card.is-dragging{opacity:.4}.pg-card.is-target{border-color:var(--accent-strong);transform:translateY(-2px)}.pg-frame{aspect-ratio:3/4;border-radius:var(--radius-sm);background:var(--card-tint);width:100%;color:var(--color-text-muted);place-items:center;display:grid;overflow:hidden}.pg-frame img{max-width:100%;max-height:100%;transition:transform var(--duration) var(--ease)}.pg-label{font-size:var(--text-xs);font-weight:var(--weight-bold);font-variant-numeric:tabular-nums}.pg-actions{gap:.15rem;display:flex}.pg-actions button{border-radius:var(--radius-sm);width:2rem;height:2rem;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.pg-actions button:hover:not(:disabled){background:var(--accent-soft);color:var(--accent-text)}.pg-actions button:disabled{opacity:.3}@media (width<=42rem){.pt-grab{display:none}.pt-file{gap:.5rem;padding:.6rem}.pt-thumb{width:2.75rem;height:3.4rem}.pt-run>:first-child{width:100%}}@media (prefers-reduced-motion:reduce){.pt-drop,.pt-file,.pg-card,.pg-frame img,.pt-bar span{transition:none}}.sg{gap:var(--space-3);display:grid}.sg-pad{aspect-ratio:3;border:1.5px dashed var(--color-border-strong);border-radius:var(--radius-md);color-scheme:light;cursor:crosshair;touch-action:none;background:canvas;width:100%}.sg-panel{gap:var(--space-2);display:grid}.sg-pager{justify-content:center;align-items:center;gap:var(--space-2);display:flex}.sg-stage{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:min(100%,40rem);box-shadow:var(--shadow-md);background:var(--color-surface-raised);justify-self:center;line-height:0;position:relative}.sg-stage canvas{width:100%;height:auto;display:block}.sg-overlay{cursor:grab;touch-action:none;outline:2px dashed var(--accent-strong);outline-offset:2px;user-select:none;position:absolute}.sg-overlay:active{cursor:grabbing}.sg-overlay:focus-visible{outline-style:solid}
