.template-builder-layer { position: relative; z-index: 73; margin: 1rem 0; }
.template-builder { display: grid; gap: .75rem; padding: 1rem; border: 1px solid color-mix(in srgb, var(--line, #cbd5e1) 72%, #7c3aed); border-radius: 1rem; background: var(--panel, #fff); color: var(--ink, #172033); }
.template-builder h2 { margin: 0; font-size: 1.05rem; }
.template-builder__warning, .template-builder__help, .template-builder__block p { margin: 0; color: var(--muted, #526070); }
.template-builder__form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .5rem; }
.template-builder__form textarea, .template-builder__form input, .template-builder__form select { min-width: 0; padding: .6rem .7rem; border: 1px solid var(--line, #cbd5e1); border-radius: .55rem; font: inherit; background: var(--surface, #fff); color: inherit; }
.template-builder__form textarea { grid-column: 1 / -1; resize: vertical; }
.template-builder__form button { min-height: 2.5rem; }
.template-builder__public-label { display: flex; align-items: center; gap: .45rem; min-height: 2.5rem; }
.template-builder__blocks { display: grid; gap: .5rem; margin: 0; padding-left: 1.5rem; }
.template-builder__block { display: grid; gap: .3rem; padding: .65rem .75rem; border: 1px solid var(--line, #cbd5e1); border-radius: .65rem; background: color-mix(in srgb, #f3e8ff 60%, transparent); }
.template-builder__block small { color: var(--muted, #526070); }
.template-builder__block-actions, .template-builder__actions { display: flex; flex-wrap: wrap; gap: .45rem; }
.template-builder__status { margin: 0; font-weight: 700; }
@media (max-width: 640px) { .template-builder__form { grid-template-columns: 1fr; } }
@media (forced-colors: active) { .template-builder { border: 2px solid CanvasText; background: Canvas; color: CanvasText; } .template-builder__form textarea, .template-builder__form input, .template-builder__form select, .template-builder__block { border: 1px solid CanvasText; background: Canvas; color: CanvasText; } }
@media print { .template-builder-layer { display: none !important; } }
