/* Campaigns — SPA tokens only */
#nxcmp-wrap{--cp-line:var(--lmm-border2,var(--lmm-border));--cp-ok:var(--lmm-green,#2fb36b);--cp-warn:#d99a1d;--cp-bad:var(--lmm-danger,#e5484d)}
#nxcmp-wrap *{box-sizing:border-box}
.nxcmp-head-actions{display:flex;gap:8px;flex-wrap:wrap}
.nxcmp-tabs{margin:4px 0 16px;overflow-x:auto;white-space:nowrap}
.nxcmp-empty{padding:48px 0;text-align:center;color:var(--lmm-text2)}
.nxcmp-banner{padding:12px 14px;border:1px solid var(--cp-line);border-radius:2px;margin:0 0 14px;color:var(--lmm-text2)}
.nxcmp-banner.bad{border-color:var(--cp-bad);color:var(--cp-bad)}.nxcmp-banner.warn{border-color:var(--cp-warn);color:var(--cp-warn)}.nxcmp-banner.ok{border-color:var(--cp-ok);color:var(--cp-ok)}
.nxcmp-card{background:var(--lmm-surface);border:1px solid var(--lmm-border);border-radius:var(--lmm-radius,2px);padding:16px 18px;min-width:0;margin:0 0 14px}
.nxcmp-card h4{margin:0 0 10px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--lmm-text3);font-weight:700}
.nxcmp-grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px}
.nxcmp-grid2{margin:0 0 14px}.nxcmp-grid2>.nxcmp-card{margin:0}
.nxcmp-tablewrap{overflow-x:auto}
.nxcmp-tablewrap table{min-width:640px}
.nxcmp-row{cursor:pointer}.nxcmp-row:hover td{background:var(--lmm-surface2,var(--lmm-surface))}
.nxcmp-chip{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border:1px solid var(--cp-line);border-radius:2px;color:var(--lmm-text2);white-space:nowrap}
.nxcmp-chip.sending,.nxcmp-chip.done,.nxcmp-chip.sent,.nxcmp-chip.delivered{color:var(--cp-ok);border-color:currentColor}
.nxcmp-chip.paused,.nxcmp-chip.deferred,.nxcmp-chip.scheduled,.nxcmp-chip.queued{color:var(--cp-warn);border-color:currentColor}
.nxcmp-chip.cancelled,.nxcmp-chip.failed,.nxcmp-chip.bounced,.nxcmp-chip.complained,.nxcmp-chip.dropped,.nxcmp-chip.suppressed,.nxcmp-chip.unsubscribed{color:var(--cp-bad);border-color:currentColor}
.nxcmp-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px}
.nxcmp-stat{border:1px solid var(--cp-line);border-radius:2px;padding:10px 12px}
.nxcmp-stat b{display:block;font:800 22px var(--lmm-font-display,inherit);color:var(--lmm-text)}.nxcmp-stat span{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--lmm-text3)}
.nxcmp-overlay{position:fixed;top:0;left:0;bottom:0;right:var(--lmm-sidebar-w,240px);background:rgba(8,9,11,.55);z-index:9000;display:flex;justify-content:flex-end}
@media(max-width:768px){.nxcmp-overlay{right:0}}
.nxcmp-drawer{background:var(--lmm-surface);border-left:1px solid var(--cp-line);width:min(920px,100%);height:100%;display:flex;flex-direction:column;overflow:hidden;box-shadow:-28px 0 70px rgba(0,0,0,.38)}
.nxcmp-drawer-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 24px;border-bottom:1px solid var(--cp-line)}
.nxcmp-drawer-head h3{margin:0;font:800 20px var(--lmm-font-display,inherit);color:var(--lmm-text);overflow-wrap:anywhere}
.nxcmp-d-sub{font-size:13px;color:var(--lmm-text2);margin-top:4px}
.nxcmp-close{width:32px;height:32px;flex:none;border:1px solid var(--cp-line);background:none;color:var(--lmm-text2);cursor:pointer;border-radius:2px}
.nxcmp-drawer-body{flex:1;min-height:0;overflow-y:auto;padding:20px 24px 28px}
.nxcmp-drawer-foot{display:flex;gap:8px;flex-wrap:wrap;align-items:center;padding:14px 24px;border-top:1px solid var(--cp-line)}
.nxcmp-foot-gap{flex:1}
.nxcmp-f{display:flex;flex-direction:column;gap:5px;margin:0 0 14px}
.nxcmp-f>label,.nxcmp-lab{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--lmm-text3)}
.nxcmp-f .hint{font-size:12px;color:var(--lmm-text3)}
.nxcmp-two{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
@media(max-width:700px){.nxcmp-two{grid-template-columns:1fr}}
.nxcmp-checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:6px 12px;max-height:200px;overflow-y:auto;padding:8px 10px;border:1px solid var(--cp-line);border-radius:2px}
.nxcmp-checks label{display:flex;gap:8px;align-items:center;font-size:13px;color:var(--lmm-text);text-transform:none;letter-spacing:0;font-weight:400}
.nxcmp-checks em{font-style:normal;color:var(--lmm-text3);margin-left:auto}
.nxcmp-sect{margin:22px 0 10px;padding-top:16px;border-top:1px solid var(--cp-line);font:800 15px var(--lmm-font-display,inherit);color:var(--lmm-text)}
.nxcmp-sect:first-child{margin-top:0;border-top:0;padding-top:0}
.nxcmp-preview{border:1px solid var(--cp-line);border-radius:2px;padding:12px 14px;margin:6px 0 4px;color:var(--lmm-text2)}
.nxcmp-preview b{color:var(--lmm-text);font-size:20px}
.nxcmp-step{display:grid;grid-template-columns:28px minmax(0,1fr) 120px auto;gap:8px;align-items:center;margin:0 0 8px}
@media(max-width:700px){.nxcmp-step{grid-template-columns:24px 1fr}.nxcmp-step>*:nth-child(n+3){grid-column:2}}
.nxcmp-step .n{font:800 15px var(--lmm-font-display,inherit);color:var(--lmm-text3);text-align:center}
.nxcmp-kv{display:grid;grid-template-columns:150px 1fr 32px;gap:6px;margin:0 0 6px}
.nxcmp-bar{height:6px;background:var(--cp-line);border-radius:3px;overflow:hidden;margin-top:6px}.nxcmp-bar i{display:block;height:100%;background:var(--cp-ok)}
.nxcmp-kvline{display:flex;justify-content:space-between;gap:10px;padding:6px 0;border-top:1px solid var(--cp-line);font-size:13px;color:var(--lmm-text2)}.nxcmp-kvline:first-of-type{border-top:0}.nxcmp-kvline b{color:var(--lmm-text);overflow-wrap:anywhere;text-align:right}
.nxcmp-url{font:12px ui-monospace,Menlo,Consolas,monospace;word-break:break-all;background:var(--lmm-surface2,var(--lmm-surface));border:1px solid var(--cp-line);padding:6px 8px;border-radius:2px;margin:4px 0 10px}
.nxcmp-toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:9999;background:var(--lmm-surface);color:var(--lmm-text);border:1px solid var(--cp-line);padding:10px 16px;border-radius:2px;max-width:90vw}
.nxcmp-filters{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 12px}.nxcmp-filters .lmm-input{width:auto;min-width:150px}
.nxcmp-pager{display:flex;gap:8px;align-items:center;justify-content:flex-end;margin:10px 0 0;color:var(--lmm-text2);font-size:13px}
.nxcmp-actions{display:flex;gap:8px;flex-wrap:wrap}

/* The SPA's .lmm-btn-outline is a colour modifier only; give it the same box as the other buttons */
#nxcmp-wrap .lmm-btn-outline{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 18px;font-family:inherit;font-size:13px;font-weight:600;border-radius:var(--lmm-radius-sm,2px);cursor:pointer;transition:border-color .15s,color .15s}
#nxcmp-wrap .lmm-btn-outline.lmm-btn-sm,#nxcmp-wrap .lmm-btn-ghost.lmm-btn-sm{padding:6px 14px;font-size:12px}
#nxcmp-wrap .lmm-btn-outline:disabled,#nxcmp-wrap .lmm-btn-primary:disabled{opacity:.5;cursor:default}
.nxcmp-f.hintbox{margin-top:8px}
.lmm-table td small{white-space:nowrap;color:var(--lmm-text3)}
