.campaign-actions{display:flex;justify-content:flex-end;gap:10px;margin:-62px 0 26px;position:relative}.campaign-summary{display:grid;grid-template-columns:repeat(3,1fr);background:#fff;border:1px solid #dbe3ef;border-radius:16px;overflow:hidden;margin-bottom:18px}.campaign-summary article{padding:22px 26px;border-right:1px solid #e2e8f0;display:grid;gap:5px}.campaign-summary article:last-child{border:0}.campaign-summary small{font-weight:800;color:#71809a;letter-spacing:.08em}.campaign-summary strong{font-size:28px}.campaign-summary span{color:#64748b}.campaign-tabs{display:flex;gap:4px;background:#e9eef6;padding:5px;border-radius:12px;width:max-content;margin-bottom:12px}.campaign-tabs button{border:0;background:transparent;border-radius:9px;padding:12px 18px;font-weight:800;color:#24324a}.campaign-tabs button.active{background:#fff;color:#e20d61;box-shadow:0 2px 8px #17203a12}.campaign-panel{background:#fff;border:1px solid #dbe3ef;border-radius:16px;overflow:auto;min-height:270px}.campaign-panel table{width:100%;border-collapse:collapse}.campaign-panel th{background:#f8fafc;text-align:left;font-size:12px;letter-spacing:.04em;color:#64748b;padding:14px 16px}.campaign-panel td{padding:16px;border-top:1px solid #e5eaf2;vertical-align:middle}.campaign-panel td strong,.campaign-panel td small{display:block}.campaign-panel td small{color:#64748b;margin-top:4px}.campaign-status{background:#f1f5f9;color:#64748b;padding:6px 10px;border-radius:20px;font-weight:800}.campaign-status.on{background:#e4f6ed;color:#07844f}.campaign-loading,.campaign-error{padding:28px}.campaign-error{background:#fff0f3;color:#b42342;border:1px solid #ffc9d5;border-radius:12px;margin-bottom:12px}.campaign-dialog-backdrop{position:fixed;inset:0;background:#10182899;z-index:1000;display:grid;place-items:center;padding:20px}.campaign-dialog{background:#fff;width:min(900px,96vw);max-height:92vh;overflow:auto;border-radius:18px;box-shadow:0 30px 80px #10182855}.campaign-dialog.small{width:min(640px,96vw)}.campaign-dialog>header{display:flex;justify-content:space-between;align-items:start;padding:22px 26px;border-bottom:1px solid #e5eaf2}.campaign-dialog>header h2{margin:4px 0}.campaign-dialog>header small{color:#d70f5b;font-weight:900}.campaign-dialog>header button{border:1px solid #dbe3ef;background:#fff;border-radius:10px;font-size:25px;width:40px;height:40px}.campaign-form{padding:22px 26px;display:grid;grid-template-columns:1fr 1fr;gap:16px}.campaign-form label{display:grid;gap:7px;font-weight:800;color:#344054}.campaign-form label.wide{grid-column:1/-1}.campaign-form input,.campaign-form select,.campaign-form textarea{font:inherit;border:1px solid #cfd8e6;border-radius:10px;padding:12px;background:#fff;min-width:0}.campaign-form select[multiple]{min-height:110px}.campaign-form textarea{min-height:75px}.campaign-form label.check{display:flex;align-items:center;gap:9px}.campaign-form label.check input{width:18px;height:18px}.campaign-dialog>footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 26px;border-top:1px solid #e5eaf2;position:sticky;bottom:0;background:#fff}.pos-coupon-box{padding:14px 18px;border-top:1px solid #e5eaf2;display:grid;gap:8px}.pos-coupon-box label{display:grid;gap:6px;font-weight:800}.pos-coupon-box input{border:1px solid #cfd8e6;border-radius:9px;padding:10px;font:inherit;text-transform:uppercase}.pos-coupon-box small{color:#64748b}.pos-coupon-box small.error{color:#c92a4b}.applied-campaigns{display:flex;flex-wrap:wrap;gap:6px}.applied-campaigns span{background:#e4f6ed;color:#087f4f;border-radius:20px;padding:6px 9px;font-size:12px;font-weight:800}@media(max-width:900px){.campaign-actions{margin:0 0 16px;flex-wrap:wrap;justify-content:flex-start}.campaign-summary{grid-template-columns:1fr}.campaign-summary article{border-right:0;border-bottom:1px solid #e2e8f0}.campaign-form{grid-template-columns:1fr}.campaign-form label.wide{grid-column:auto}.campaign-panel table{min-width:850px}}

.campaign-weekdays{border:1px solid #d9e1ec;border-radius:12px;padding:12px;display:flex;gap:10px;flex-wrap:wrap}.campaign-weekdays legend{padding:0 6px;font-weight:700;color:#44526a}.campaign-weekdays label{display:flex;align-items:center;gap:5px;background:#f7f9fc;border-radius:9px;padding:7px 10px}

/* Keep page-specific actions in the normal document flow. The shared header
   already owns the top-right action area, so negative/absolute positioning
   causes the two button groups to overlap. */
.campaign-management .campaign-actions,
.notification-management .notification-page-actions{
  position:static;
  inset:auto;
  width:100%;
  margin:0;
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

@media(max-width:700px){
  .campaign-management .campaign-actions,
  .notification-management .notification-page-actions{
    justify-content:flex-start;
  }

  .campaign-management .campaign-actions button,
  .notification-management .notification-page-actions button{
    flex:1 1 auto;
  }
}
