.st-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 20px; margin: 16px 0; align-items: start; }
.st-opts { display: grid; gap: 14px; }
.st-opts label > span { display: flex; justify-content: space-between; }
.st-opts input[type="color"] { height: 44px; padding: 2px; }
.st-prev { position: sticky; top: 12px; }
.st-prev canvas { width: 100%; height: auto; max-height: 520px; object-fit: contain; border: 1.5px solid var(--rule); border-radius: 10px; background: #fff; display: block; }
.tp-fields { border: 0; padding: 0; margin: 0; display: grid; gap: 8px; }
.tp-radio { display: flex !important; align-items: center; gap: 10px; font-weight: 500 !important; }
@media (max-width: 760px) { .st-layout { grid-template-columns: minmax(0, 1fr); } .st-prev { position: static; order: -1; } }
