
/*
 * Vchat 0.36.43 — Marketing spacing contract
 * Every Marketing card owns its internal breathing room.
 */
[data-vchat-panel="marketing"].vchat-marketing-center{
  --mkt-space-1:8px;
  --mkt-space-2:12px;
  --mkt-space-3:16px;
  --mkt-space-4:20px;
  --mkt-space-5:24px;
  --mkt-space-6:30px;
  box-sizing:border-box;
  padding-bottom:64px!important;
}

[data-vchat-panel="marketing"] *,
[data-vchat-panel="marketing"] *::before,
[data-vchat-panel="marketing"] *::after{box-sizing:border-box}

[data-vchat-panel="marketing"] .vchat-marketing-heading{
  gap:32px!important;
  margin:0 0 26px!important;
  padding:10px 2px 0!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-heading h1{
  margin:10px 0 12px!important;
  line-height:1.05!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-heading p{
  margin:0!important;
  max-width:900px!important;
  line-height:1.6!important;
}

[data-vchat-panel="marketing"] .vchat-marketing-notice{
  padding:18px 20px!important;
  gap:16px!important;
  margin:0 0 18px!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-notice strong{margin:0 0 5px!important;line-height:1.4!important}
[data-vchat-panel="marketing"] .vchat-marketing-notice p{margin:0!important;line-height:1.55!important}
[data-vchat-panel="marketing"] .vchat-marketing-notice button{margin-left:12px!important}

[data-vchat-panel="marketing"] .vchat-marketing-tabs{
  padding:7px!important;
  margin:0 0 20px!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-tabs button{
  padding:12px 20px!important;
}

[data-vchat-panel="marketing"] .vchat-marketing-kpis{
  gap:16px!important;
  margin:0 0 18px!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-kpis > article{
  padding:24px 24px 22px!important;
  min-height:140px!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-kpis small{
  display:block!important;
  margin:0 0 12px!important;
  line-height:1.35!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-kpis strong{
  display:block!important;
  margin:0 0 10px!important;
  line-height:1!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-kpis span{
  display:block!important;
  margin:0!important;
  line-height:1.5!important;
}

[data-vchat-panel="marketing"] .vchat-marketing-overview-grid{
  gap:18px!important;
  margin:0 0 18px!important;
  align-items:stretch!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-card,
[data-vchat-panel="marketing"] .vchat-marketing-performance{
  padding:24px 26px!important;
  border-radius:22px!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-card > header{
  padding:0!important;
  margin:0 0 20px!important;
  gap:18px!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-card > header small{
  margin:0 0 6px!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-card > header h2{
  margin:0!important;
  line-height:1.25!important;
}

/* The exact boxes from the user's screenshot */
[data-vchat-panel="marketing"] #vchat-marketing-funnel{
  padding:2px 2px 4px!important;
  margin:0!important;
  display:grid!important;
  gap:16px!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-funnel-row,
[data-vchat-panel="marketing"] #vchat-marketing-funnel > div{
  display:grid!important;
  grid-template-columns:minmax(110px,140px) 48px minmax(160px,1fr)!important;
  align-items:center!important;
  column-gap:16px!important;
  min-height:24px!important;
  padding:0!important;
  margin:0!important;
}
[data-vchat-panel="marketing"] #vchat-marketing-funnel span{
  padding:0!important;
  margin:0!important;
  line-height:1.35!important;
}
[data-vchat-panel="marketing"] #vchat-marketing-funnel b{
  padding:0!important;
  margin:0!important;
  text-align:right!important;
  line-height:1.2!important;
}
[data-vchat-panel="marketing"] #vchat-marketing-funnel i{
  display:block!important;
  height:9px!important;
  margin:0!important;
  overflow:hidden!important;
  border-radius:999px!important;
  background:#ece8f5!important;
}
[data-vchat-panel="marketing"] #vchat-marketing-funnel i em{
  display:block!important;
  height:100%!important;
  min-width:0!important;
  border-radius:999px!important;
  background:#604caf!important;
}

[data-vchat-panel="marketing"] #vchat-marketing-insights{
  padding:2px!important;
  margin:0!important;
  display:grid!important;
  gap:12px!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-insight-row,
[data-vchat-panel="marketing"] #vchat-marketing-insights > div{
  padding:14px 15px!important;
  margin:0!important;
  gap:12px!important;
  border-radius:14px!important;
}
[data-vchat-panel="marketing"] #vchat-marketing-insights p{
  margin:0!important;
  min-width:0!important;
}
[data-vchat-panel="marketing"] #vchat-marketing-insights strong{
  display:block!important;
  margin:0 0 5px!important;
  line-height:1.4!important;
}
[data-vchat-panel="marketing"] #vchat-marketing-insights small{
  display:block!important;
  margin:0!important;
  line-height:1.5!important;
}

/* Campaign list */
[data-vchat-panel="marketing"] .vchat-marketing-recent-card{
  padding:24px 26px!important;
  margin:0 0 18px!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-mini-list,
[data-vchat-panel="marketing"] .vchat-marketing-campaign-list{
  gap:14px!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-campaign{
  padding:20px 22px!important;
  gap:20px!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-campaign-main{
  padding:2px!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-campaign-main h3{
  margin:8px 0 5px!important;
  line-height:1.3!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-campaign-main p{
  margin:0 0 12px!important;
  line-height:1.5!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-channel-list{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-channel{
  margin:0!important;
  padding:6px 9px!important;
  gap:5px!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-campaign-stats{
  gap:10px!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-campaign-stats > div{
  padding:13px 14px!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-campaign-stats small{
  margin:0 0 6px!important;
  line-height:1.3!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-campaign-stats strong{
  margin:0!important;
  line-height:1.35!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-campaign-stats span{
  margin:5px 0 0!important;
  line-height:1.4!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-campaign-actions{
  gap:7px!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-campaign-actions button{
  padding:9px 11px!important;
}

/* Search and filters */
[data-vchat-panel="marketing"] .vchat-marketing-toolbar{
  gap:18px!important;
  margin:0 0 18px!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-search{
  gap:7px!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-search input{
  padding:0 15px!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-filters{
  padding:5px!important;
  gap:5px!important;
}

/* Segments */
[data-vchat-panel="marketing"] .vchat-marketing-section-heading{
  padding:2px 2px 4px!important;
  margin:0 0 18px!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-section-heading h2{
  margin:6px 0 6px!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-section-heading p{
  margin:0!important;
  line-height:1.55!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-segment-grid{
  gap:14px!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-segment-grid > article{
  padding:21px 22px!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-segment-head{
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr)!important;
  gap:13px!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-segment-head h3{
  margin:4px 0 6px!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-segment-head p{
  margin:0!important;
  line-height:1.55!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-segment-grid footer{
  margin-top:18px!important;
  padding-top:16px!important;
  gap:12px!important;
}

/* Empty and loading states must NEVER become giant blank panels */
[data-vchat-panel="marketing"] .vchat-marketing-empty-043{
  min-height:170px!important;
  height:auto!important;
  padding:28px!important;
  border:1px dashed #dcd5ed!important;
  border-radius:18px!important;
  background:#fff!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:center!important;
  text-align:center!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-empty-043 > span{
  display:grid!important;
  place-items:center!important;
  width:40px!important;
  height:40px!important;
  margin:0 0 10px!important;
  border-radius:12px!important;
  background:#eee9fa!important;
  color:#5c49ad!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-empty-043 strong{
  margin:0 0 6px!important;
  line-height:1.4!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-empty-043 p{
  max-width:520px!important;
  margin:0!important;
  line-height:1.55!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-empty-043 button{
  margin-top:14px!important;
  padding:10px 14px!important;
  border:0!important;
  border-radius:10px!important;
  background:#5c49ad!important;
  color:#fff!important;
  font-weight:800!important;
}

[data-vchat-panel="marketing"] .vchat-marketing-loading-043{
  position:absolute!important;
  z-index:40!important;
  left:0!important;
  right:0!important;
  top:205px!important;
  min-height:190px!important;
  padding:28px!important;
  border:1px solid #ddd7ee!important;
  border-radius:20px!important;
  background:rgba(248,247,252,.98)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  text-align:center!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-spinner{
  width:30px!important;
  height:30px!important;
  border-radius:50%!important;
  border:3px solid #ded8f0!important;
  border-top-color:#5d49ad!important;
  animation:vchatMarketingSpin043 .8s linear infinite!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-loading-043 strong{
  margin:3px 0 0!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-loading-043 small{
  margin:0!important;
  line-height:1.45!important;
}
@keyframes vchatMarketingSpin043{to{transform:rotate(360deg)}}

[data-vchat-panel="marketing"] .vchat-marketing-error-043{
  padding:16px 17px!important;
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr) auto!important;
  gap:13px!important;
  align-items:center!important;
  border:1px solid #efced5!important;
  border-radius:15px!important;
  background:#fff7f8!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-error-043 > span{
  display:grid!important;
  place-items:center!important;
  width:36px!important;
  height:36px!important;
  border-radius:11px!important;
  background:#ffe8ec!important;
  color:#a44859!important;
  font-weight:900!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-error-043 strong{
  display:block!important;
  margin:0 0 4px!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-error-043 p{
  margin:0!important;
  line-height:1.5!important;
}
[data-vchat-panel="marketing"] .vchat-marketing-error-043 button{
  padding:9px 12px!important;
}

/* Campaign modal spacing */
.vchat-marketing-form-043{
  display:grid!important;
  gap:16px!important;
}
.vchat-marketing-form-043 > section{
  padding:19px 20px!important;
  border:1px solid #dfd9ed!important;
  border-radius:17px!important;
  background:#fbfaff!important;
}
.vchat-marketing-form-note{
  padding:14px 16px!important;
  display:grid!important;
  gap:4px!important;
  border:1px solid #dcd4f3!important;
  border-radius:14px!important;
  background:#f2effd!important;
}
.vchat-marketing-form-note strong{line-height:1.4!important}
.vchat-marketing-form-note span{line-height:1.5!important}
.vchat-marketing-form-title{
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr)!important;
  gap:11px!important;
  align-items:start!important;
  margin:0 0 15px!important;
}
.vchat-marketing-form-title > span{
  display:grid!important;
  place-items:center!important;
  width:32px!important;
  height:32px!important;
  border-radius:10px!important;
  background:#5b47aa!important;
  color:#fff!important;
  font-weight:800!important;
}
.vchat-marketing-form-title strong{display:block!important;margin:0 0 3px!important}
.vchat-marketing-form-title small{display:block!important;line-height:1.4!important}
.vchat-marketing-form-grid{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:12px!important;
}
.vchat-marketing-form-043 label{
  display:grid!important;
  gap:7px!important;
  margin:0!important;
}
.vchat-marketing-form-043 input,
.vchat-marketing-form-043 select,
.vchat-marketing-form-043 textarea{
  width:100%!important;
  padding:11px 12px!important;
  border:1px solid #d9d3e8!important;
  border-radius:11px!important;
  background:#fff!important;
}
.vchat-marketing-channel-picker-043{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
  margin-top:12px!important;
}
.vchat-marketing-channel-picker-043 label{position:relative!important}
.vchat-marketing-channel-picker-043 input{position:absolute!important;opacity:0!important}
.vchat-marketing-channel-picker-043 label > span{
  display:grid!important;
  grid-template-columns:36px minmax(0,1fr)!important;
  column-gap:10px!important;
  padding:13px!important;
  border:1px solid #dcd6eb!important;
  border-radius:13px!important;
  background:#fff!important;
}
.vchat-marketing-channel-picker-043 input:checked + span{
  border-color:#6551b2!important;
  box-shadow:0 0 0 2px rgba(101,81,178,.1)!important;
}
.vchat-marketing-channel-picker-043 b{
  grid-row:1/3!important;
  display:grid!important;
  place-items:center!important;
  width:34px!important;
  height:34px!important;
  border-radius:10px!important;
  background:#eee9fa!important;
  color:#5c49ad!important;
}
.vchat-marketing-channel-picker-043 strong{line-height:1.35!important}
.vchat-marketing-channel-picker-043 small{line-height:1.4!important}
.vchat-marketing-count{text-align:right!important;margin-top:6px!important}

/* Audience modal */
.vchat-marketing-audience-043{display:grid!important;gap:14px!important}
.vchat-marketing-audience-summary-043{
  display:flex!important;
  gap:8px!important;
  align-items:baseline!important;
  padding:15px 16px!important;
  border-radius:14px!important;
  background:#f3f0fb!important;
}
.vchat-marketing-audience-list-043{
  max-height:430px!important;
  overflow:auto!important;
  border:1px solid #e0daed!important;
  border-radius:14px!important;
}
.vchat-marketing-audience-list-043 > div{
  display:grid!important;
  grid-template-columns:36px minmax(0,1fr) auto!important;
  gap:11px!important;
  align-items:center!important;
  padding:12px 14px!important;
  border-bottom:1px solid #eeeaf5!important;
}
.vchat-marketing-audience-list-043 > div:last-child{border-bottom:0!important}
.vchat-marketing-audience-list-043 > div > span{
  display:grid!important;
  place-items:center!important;
  width:34px!important;
  height:34px!important;
  border-radius:10px!important;
  background:#eee9fa!important;
  color:#5c49ad!important;
  font-size:10px!important;
  font-weight:800!important;
}
.vchat-marketing-audience-list-043 p{margin:0!important}
.vchat-marketing-audience-list-043 strong{display:block!important;margin:0 0 3px!important}
.vchat-marketing-audience-list-043 small{display:block!important;line-height:1.4!important}

.vchat-marketing-confirm-043{
  padding:10px 8px 2px!important;
  text-align:center!important;
}
.vchat-marketing-confirm-043 > span{
  display:grid!important;
  place-items:center!important;
  width:52px!important;
  height:52px!important;
  margin:0 auto 14px!important;
  border-radius:16px!important;
  background:#eee9fa!important;
  color:#5c49ad!important;
  font-size:22px!important;
}
.vchat-marketing-confirm-043 h3{margin:0 0 9px!important}
.vchat-marketing-confirm-043 p{max-width:560px!important;margin:0 auto 9px!important;line-height:1.55!important}
.vchat-marketing-confirm-043 small{display:block!important;max-width:560px!important;margin:0 auto!important;line-height:1.5!important}

@media(max-width:1180px){
  [data-vchat-panel="marketing"] .vchat-marketing-overview-grid{grid-template-columns:1fr!important}
  [data-vchat-panel="marketing"] .vchat-marketing-campaign{grid-template-columns:1fr!important}
  [data-vchat-panel="marketing"] .vchat-marketing-campaign-actions{justify-content:flex-start!important}
}
@media(max-width:760px){
  [data-vchat-panel="marketing"] .vchat-marketing-heading{gap:16px!important}
  [data-vchat-panel="marketing"] .vchat-marketing-heading .vchat-primary-action{width:100%!important}
  [data-vchat-panel="marketing"] .vchat-marketing-kpis{grid-template-columns:1fr!important}
  [data-vchat-panel="marketing"] .vchat-marketing-card,
  [data-vchat-panel="marketing"] .vchat-marketing-performance,
  [data-vchat-panel="marketing"] .vchat-marketing-recent-card{padding:18px!important}
  [data-vchat-panel="marketing"] #vchat-marketing-funnel > div{
    grid-template-columns:95px 36px minmax(80px,1fr)!important;
    column-gap:10px!important;
  }
  [data-vchat-panel="marketing"] .vchat-marketing-campaign-stats{grid-template-columns:1fr 1fr!important}
  [data-vchat-panel="marketing"] .vchat-marketing-segment-grid{grid-template-columns:1fr!important}
  [data-vchat-panel="marketing"] .vchat-marketing-error-043{grid-template-columns:36px minmax(0,1fr)!important}
  [data-vchat-panel="marketing"] .vchat-marketing-error-043 button{grid-column:1/-1!important}
  .vchat-marketing-form-grid,.vchat-marketing-channel-picker-043{grid-template-columns:1fr!important}
}
