.pt2-tools { display: flex; flex-wrap: wrap; gap: 8px; margin: 10px 0; }
.pt2-frame { width: 100%; min-width: 0; margin: 12px 0; border: 1px solid var(--line); background-color: #fff; background-image: conic-gradient(#e5e7eb 25%, #fff 0 50%, #e5e7eb 0 75%, #fff 0); background-size: 20px 20px; }
.pt2-frame canvas { display: block; width: 100%; height: auto; touch-action: none; user-select: none; cursor: crosshair; }
.pt2-tools :is([data-tool], [data-color]) { border: 2px solid var(--line); background: #fff; color: var(--fg); }
.pt2-tools :is([data-tool], [data-color])[aria-pressed="true"] { border-color: var(--brand); background: #eff4ff; color: var(--brand); font-weight: 700; }
.pt2-drop { min-height: 0; padding: 10px 16px; }
.pt2-size-field > span { display: block; }
.pt2-size-field input[type=range] { display: block; width: 100%; height: 44px; margin: 4px 0 0; }
