/* Scope everything to marketing containers to avoid collisions */
.nveg-mkt,
.nveg-mkt-prefs,
.nveg-mkt-unsub {
  box-sizing: border-box;
}

/* Topic/prefs list containers */
.nveg-mkt #nveg_mkt_topics {
  max-height: 260px;
  overflow: auto;
}

.nveg-mkt-prefs #nveg_mkt_prefs_topics {
  margin-top: 10px;
}

/* Checkbox spacing */
.nveg-mkt .checkbox,
.nveg-mkt-prefs .checkbox {
  margin-top: 6px;
  margin-bottom: 6px;
}

/* Secondary text under each topic (we render .text-muted) */
.nveg-mkt .text-muted,
.nveg-mkt-prefs .text-muted {
  font-size: 12px;
}

/* Message areas */
#nveg_mkt_msg,
#nveg_mkt_prefs_msg,
#nveg_mkt_unsub_msg {
  margin-top: 12px;
}

/* Slightly tighten panel heading h3 spacing (bootstrap3 tends to be tall) */
.nveg-mkt .panel-heading h3,
.nveg-mkt-prefs .panel-heading h3,
.nveg-mkt-unsub .panel-heading h3 {
  margin: 0;
}

/* Optional: make the action buttons full width on small screens */
@media (max-width: 767px) {
  #nveg_mkt_subscribe_btn,
  #nveg_mkt_unsub_btn {
    width: 100%;
  }
}

/* ---- Spacing Utilities (NV standard) ---- */

.m0 { margin: 0 }
.mt0 { margin-top: 0 }
.mr0 { margin-right: 0 }
.mb0 { margin-bottom: 0 }
.ml0 { margin-left: 0 }

.m1 { margin: .5rem }
.mt1 { margin-top: .5rem }
.mr1 { margin-right: .5rem }
.mb1 { margin-bottom: .5rem }
.ml1 { margin-left: .5rem }

.m2 { margin: 1rem }
.mt2 { margin-top: 1rem }
.mr2 { margin-right: 1rem }
.mb2 { margin-bottom: 1rem }
.ml2 { margin-left: 1rem }

.m3 { margin: 2rem }
.mt3 { margin-top: 2rem }
.mr3 { margin-right: 2rem }
.mb3 { margin-bottom: 2rem }
.ml3 { margin-left: 2rem }

.m4 { margin: 4rem }
.mt4 { margin-top: 4rem }
.mr4 { margin-right: 4rem }
.mb4 { margin-bottom: 4rem }
.ml4 { margin-left: 4rem }

.mx-auto {
  margin-left: auto;
  margin-right: auto;
}

.p1 { padding: .5rem }
.py1 { padding-top: .5rem; padding-bottom: .5rem }
.px1 { padding-left: .5rem; padding-right: .5rem }

.p2 { padding: 1rem }
.py2 { padding-top: 1rem; padding-bottom: 1rem }
.px2 { padding-left: 1rem; padding-right: 1rem }

.p3 { padding: 2rem }
.py3 { padding-top: 2rem; padding-bottom: 2rem }
.px3 { padding-left: 2rem; padding-right: 2rem }

.p4 { padding: 4rem }
.py4 { padding-top: 4rem; padding-bottom: 4rem }
.px4 { padding-left: 4rem; padding-right: 4rem }
