/* Scoped to label editing; preserve the application's existing controls and typography. */
.pulseCreativeLabelPanel { margin:12px 0; min-width:0; border:1px solid #dbe3ee; border-radius:6px; background:#fff; color:#1f2937; }
.pulseCreativeLabelPanel .pulseCreativeLabelForm { display:flex; flex-direction:column; margin:0; padding:0; gap:0; }
.pulseCreativeLabelHeader { display:flex; flex:0 0 auto; align-items:flex-start; justify-content:space-between; gap:12px; padding:14px 18px; border-bottom:1px solid #e5eaf0; }
.pulseCreativeLabelHeader h2 { font-size:16px; font-weight:600; margin:0; }
.pulseCreativeLabelHeader p { font-size:12px; color:#64748b; margin:6px 0 0; }
.pulseCreativeLabelBody { flex:1 1 auto; min-height:0; padding:14px 18px; font-size:13px; overflow-wrap:anywhere; }
.pulseCreativeLabelBody fieldset { border:0; padding:0; margin:14px 0 0; min-width:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px 16px; align-items:start; }
.pulseCreativeLabelBody label { display:flex; flex-direction:column; gap:6px; min-width:0; font-size:13px; }
.pulseCreativeLabelBody input:not([type=checkbox]), .pulseCreativeLabelBody textarea, .pulseCreativeLabelBody select { width:100%; min-width:0; max-width:100%; box-sizing:border-box; font:inherit; }
.pulseCreativeLabelBody textarea { resize:vertical; min-height:60px; max-height:150px; }
.pulseCreativeLabelHint { color:#64748b; font-size:12px; line-height:1.65; margin:0; }
.pulseCreativeLabelBody .pulseCreativeLabelConfirm { flex-direction:row; align-items:flex-start; gap:8px; line-height:1.5; }
.pulseCreativeLabelConfirm input { appearance:auto; flex:0 0 auto; width:15px; height:15px; min-height:0; margin:2px 0 0; }
.pulseCreativeLabelCurrent { display:flex; flex-wrap:wrap; align-items:baseline; gap:6px 12px; margin-top:12px; padding:10px 12px; border-radius:4px; background:#f8fafc; }
.pulseCreativeLabelCurrent:empty { display:none; }
.pulseCreativeLabelCurrent p { margin:5px 0; }
.pulseCreativeLabelCurrent small, .pulseCreativeLabelDetails small { color:#64748b; line-height:1.5; }
.pulseCreativeLabelDetails { margin-top:14px; border-top:1px solid #e5eaf0; padding-top:12px; }
.pulseCreativeLabelDetails summary { cursor:pointer; font-size:13px; font-weight:500; }
.pulseCreativeLabelDetails p, .pulseCreativeLabelDetails ul, .pulseCreativeLabelDetails ol { color:#64748b; font-size:12px; line-height:1.6; }
.pulseCreativeLabelDetails ul, .pulseCreativeLabelDetails ol { padding-left:18px; }
.pulseCreativeLabelDetails li { margin:10px 0; }
.pulseCreativeLabelDetails li strong, .pulseCreativeLabelDetails li span, .pulseCreativeLabelDetails li small { display:block; }
.pulseCreativeLabelStatus { flex:0 0 auto; padding:10px 18px; font-size:12px; color:#64748b; overflow-wrap:anywhere; }
.pulseCreativeLabelStatus.hasError { color:#b42318; }
.pulseCreativeLabelStatus button { margin-top:8px; display:block; }
.pulseCreativeLabelStatus button[hidden] { display:none; }
.pulseCreativeLabelFooter { flex:0 0 auto; display:flex; justify-content:flex-end; gap:8px; padding:12px 18px; border-top:1px solid #e5eaf0; }
.pulseCreativeLabelPanel button:disabled { opacity:.5; cursor:default; }
.creativeTable .pulseCreativeLabelTrigger { display:flex; flex-direction:column; align-items:flex-start; max-width:100%; min-width:0; white-space:normal; overflow-wrap:anywhere; text-align:left; padding:5px 0; margin:0; border:0; background:transparent; color:#475569; box-shadow:none; font-size:12px; line-height:1.4; }
.creativeTable .pulseCreativeLabelTrigger:hover { color:#2563eb; }
.pulseCreativeLabelTrigger small { color:#64748b; font-size:10px; }
.pulseCreativeLabelTrigger:focus-visible { outline:2px solid #2563eb; outline-offset:2px; }

#creativeLabelEditorHost:empty, #creativeLabelEditorHost[hidden] { display:none; }
.pulseCreativeLabelBody fieldset > .pulseCreativeLabelHint,
.pulseCreativeLabelBody fieldset > .pulseCreativeLabelConfirm { grid-column:1 / -1; }
.pulseCreativeLabelDetails ol { max-height:220px; overflow:auto; }
@media (max-width:700px) {
  .pulseCreativeLabelBody fieldset { grid-template-columns:minmax(0,1fr); }
  .pulseCreativeLabelHeader, .pulseCreativeLabelBody, .pulseCreativeLabelStatus, .pulseCreativeLabelFooter { padding:12px; }
}
/* The fixed 48px chat launcher occupies the right edge when this footer is
   near the viewport bottom. Reserve its lane within this editor only. */
.pulseCreativeLabelPanel .pulseCreativeLabelFooter { padding-inline-end:76px; }
