.td-pattern-selection-panel { display: grid; gap: 14px; padding: 18px; color: #4f4657; }
.td-pattern-selection-paused { display: none; }
.td-pattern-selection-panel-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; }
.td-pattern-selection-panel-heading strong { font-size: 17px; }
.td-pattern-selection-panel-heading span { flex: 0 0 auto; color: #a82d61; font-size: 12px; font-weight: 800; }
.td-pattern-selection-panel-help { margin: 0; color: #68636d; font-size: 13px; line-height: 1.5; }
.td-pattern-selection-panel-items { display: grid; gap: 8px; }
.td-pattern-selection-panel-item { display: flex; align-items: center; gap: 10px; width: 100%; min-height: 52px; padding: 7px 10px; border: 1px solid #ded7dc; border-radius: 10px; background: #fff; color: #4f4657; text-align: left; font: inherit; font-weight: 700; cursor: pointer; }
.td-pattern-selection-panel-item:hover { border-color: #bd4a78; background: #fff8fb; }
.td-pattern-selection-panel-item.is-selected { border-color: #bd4a78; background: #fff0f5; }
.td-pattern-selection-panel-item:focus-visible, .td-pattern-selection-panel-actions button:focus-visible { outline: 2px solid #bd4a78; outline-offset: 2px; }
.td-pattern-selection-panel-item img, .td-pattern-selection-panel-placeholder { display: block; flex: 0 0 36px; width: 36px; height: 36px; border-radius: 6px; object-fit: contain; background: #f3f0f4; }
.td-pattern-selection-panel-name { flex: 1 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.td-pattern-selection-panel-check { display: grid; flex: 0 0 22px; place-items: center; width: 22px; height: 22px; border: 1px solid #cfc2ca; border-radius: 50%; color: #fff; font-size: 14px; }
.td-pattern-selection-panel-item.is-selected .td-pattern-selection-panel-check { border-color: #bd4a78; background: #bd4a78; }
.td-pattern-selection-panel-actions { display: grid; grid-template-columns: 1fr 1.4fr; gap: 8px; padding-top: 12px; border-top: 1px solid #eee8f0; }
.td-pattern-selection-panel-actions button { min-height: 42px; padding: 8px; border-radius: 9px; font: inherit; font-size: 13px; font-weight: 800; cursor: pointer; }
.td-pattern-selection-cancel { border: 1px solid #d6c4cd; background: #fff; color: #75445b; }
.td-pattern-selection-cancel:hover { background: #fff8fb; }
.td-pattern-selection-finish { border: 1px solid #a82d61; background: #bd4a78; color: #fff; }
.td-pattern-selection-finish:hover:not(:disabled) { background: #a82d61; }
.td-pattern-selection-finish:disabled { border-color: #d8cdd2; background: #e8e1e4; color: #9c9297; cursor: not-allowed; }
.is-pattern-canvas-selecting .td-preview-canvas { cursor: crosshair; }
