.strategic-communication-page {
  --strategic-blue: #04366d;
  --strategic-cyan: #38bfe5;
  --strategic-green: #20a66a;
  --strategic-border: #d7e0ea;
  background: #f5f7fb;
  min-height: 100vh;
}

.strategic-communication-page__heading { background: #eef4ff; }
.strategic-communication-page__header-actions { align-items: center; }
.strategic-communication-page__header-actions .strategic-communication-page__search-toggle { display: none; }
.strategic-communication-page__options-menu { min-width: 18rem; }
.strategic-communication-page__options-menu .dropdown-item { color: #27313f; }
.strategic-communication-page__options-menu .dropdown-item i { color: #0d5ca6; }

.entity-list--strategic-communication {
  background: #fff;
  border: 1px solid var(--strategic-border);
  border-radius: 1.25rem;
  box-shadow: 0 8px 28px rgba(27, 52, 82, .04);
  overflow: visible;
}

.strategic-communication-page__toolbar {
  border-radius: 1.25rem 1.25rem 0 0;
  display: grid;
  grid-template-columns: minmax(20rem, auto) minmax(22rem, 1fr);
  gap: 1rem;
  padding: 1.2rem;
}

.strategic-communication-page__filters { display: flex; gap: .75rem; flex-wrap: wrap; }
.strategic-communication-page__filters .btn { align-items: center; display: flex; gap: .55rem; }
.strategic-communication-page__filter-menu { min-width: 19rem; padding: .75rem; }
.strategic-communication-page__period-menu { min-width: 13rem; padding: .45rem; }
.strategic-communication-page__period-menu .dropdown-item { border-radius: .55rem; color: #344054; }
.strategic-communication-page__period-menu .dropdown-item.active { background: #e5f7fd; color: #075691; font-weight: 700; }
.strategic-communication-page__toolbar .entity-list__search { align-self: start; width: 100%; }

@media (min-width: 1200px) {
  .strategic-communication-page__toolbar {
    align-items: flex-start;
    display: flex;
    flex-wrap: nowrap;
    gap: .65rem;
  }

  .strategic-communication-page__filters {
    flex: 0 0 auto;
    flex-wrap: nowrap;
    gap: .45rem;
  }

  .strategic-communication-page__filters > .entity-list__filter-control,
  .strategic-communication-page__filters > .entity-list__filter-control > .btn {
    min-width: 0;
  }

  .strategic-communication-page__filters > .entity-list__filter-control > .btn {
    gap: .35rem;
    padding-left: .6rem;
    padding-right: .6rem;
    white-space: nowrap;
  }

  .strategic-communication-page__toolbar .entity-list__search {
    flex: 1 1 16rem;
    margin-left: 0;
    min-width: 8rem;
    width: auto;
  }

  .strategic-communication-page__toolbar .entity-list__search .input-group { flex-wrap: nowrap; }
}

.strategic-communication-page__tabs {
  align-items: stretch;
  border-bottom: 1px solid var(--strategic-border);
  border-top: 1px solid var(--strategic-border);
  display: flex;
  min-width: 0;
  padding: .85rem 1.2rem;
}

.strategic-communication-page__tabs .visitors-list-page__tab { background: transparent; }
.strategic-communication-page__tabs .visitors-list-page__tab:not(.is-active) { background: transparent !important; border-color: transparent; }
.strategic-communication-page__tabs .visitors-list-page__tab.is-active { background: #e4f7fd; border-color: #70d5ef; color: #064a89; }
.strategic-communication-page__tab-actions { align-items: center; display: flex; margin-left: auto; }
.strategic-communication-page__tab-actions span { border: 1px solid var(--strategic-border); border-radius: 999px; color: #536174; font-weight: 600; padding: .55rem .9rem; }

.strategic-communication-page__content { min-height: 32rem; width: 100%; }
.strategic-communication-page button:focus-visible,
.strategic-communication-page a:focus-visible,
.strategic-communication-page input:focus-visible,
.strategic-communication-page select:focus-visible,
.strategic-communication-page textarea:focus-visible { outline: .2rem solid rgba(56, 191, 229, .75); outline-offset: .12rem; }
.strategic-communication-page__loading,
.strategic-communication-page__error { align-items: center; display: flex; gap: .8rem; justify-content: center; min-height: 18rem; padding: 2rem; }
.strategic-communication-page__error { color: #9d2f39; }
.strategic-communication-page__error p { margin: .25rem 0 .75rem; }
.strategic-communication-page__notice { align-items: center; border-radius: 0; display: flex; gap: .65rem; margin: 0; }
.strategic-communication-page__notice .btn-close { margin-left: auto; }

.strategic-communication-dashboard { padding: 1.25rem; text-align: left; width: 100%; }
.strategic-communication-dashboard__hero {
  align-items: center;
  background: linear-gradient(125deg, #04366d 0%, #075a91 65%, #087a96 100%);
  border-radius: 1rem;
  color: #fff;
  display: flex;
  gap: 1.5rem;
  justify-content: space-between;
  margin-bottom: 1rem;
  min-height: 9rem;
  padding: 1.45rem 1.6rem;
}
.strategic-communication-dashboard__hero span:first-child { font-size: .72rem; font-weight: 800; letter-spacing: .08em; }
.strategic-communication-dashboard__hero h3 { color: #fff; font-size: 1.55rem; margin: .2rem 0 .25rem; }
.strategic-communication-dashboard__hero p { color: rgba(255,255,255,.8); margin: 0; }
.strategic-communication-connection { align-items: center; background: rgba(255,255,255,.13); border: 1px solid rgba(255,255,255,.25); border-radius: 999px; display: inline-flex; gap: .55rem; padding: .65rem .9rem; }
.strategic-communication-connection.is-ready { background: rgba(32,166,106,.25); }

.strategic-communication-dashboard__metrics { display: grid; gap: 1rem; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.strategic-communication-dashboard__metrics button { align-items: center; background: #fff; border: 1px solid var(--strategic-border); border-radius: 1rem; display: flex; gap: .9rem; justify-content: flex-start; min-width: 0; padding: 1.15rem; text-align: left; transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.strategic-communication-dashboard__metrics button:hover { border-color: #8bcde4; box-shadow: 0 .45rem 1.2rem rgba(30, 75, 115, .09); transform: translateY(-1px); }
#main.strategic-communication-page .strategic-communication-dashboard__metrics button > i.bi { align-items: center; aspect-ratio: 1; background: #e5f7fd; border-radius: .8rem; box-sizing: border-box; color: #087ba3; display: inline-flex; flex: 0 0 3rem; font-size: 1.3rem; height: 3rem; justify-content: center; line-height: 1; min-height: 3rem; min-width: 3rem; width: 3rem; }
#main.strategic-communication-page .strategic-communication-dashboard__metrics button.is-warning > i { background: #fff2d8; color: #b86d00; }
#main.strategic-communication-page .strategic-communication-dashboard__metrics button.is-purple > i { background: #f1e8ff; color: #7d48b5; }
#main.strategic-communication-page .strategic-communication-dashboard__metrics button.is-danger > i { background: #fde8eb; color: #b73344; }
.strategic-communication-dashboard__metrics button span { display: flex; flex-direction: column; min-width: 0; }
.strategic-communication-dashboard__metrics small { color: #687386; font-weight: 600; }
.strategic-communication-dashboard__metrics strong { color: var(--strategic-blue); font-size: 1.65rem; line-height: 1.15; }
.strategic-communication-dashboard__metrics em { color: #14729c; font-size: .7rem; font-style: normal; font-weight: 700; margin-top: .25rem; }

.strategic-communication-dashboard__loading { align-items: center; background: rgba(255,255,255,.88); border: 1px solid var(--strategic-border); border-radius: 999px; color: #516174; display: flex; gap: .55rem; left: 50%; padding: .55rem .9rem; position: fixed; top: 6rem; transform: translateX(-50%); z-index: 30; }
.strategic-communication-dashboard__connection-summary { align-items: flex-end; display: flex; flex-direction: column; gap: .45rem; }
.strategic-communication-dashboard__connection-summary > small { color: rgba(255,255,255,.72); font-size: .72rem; }
.strategic-communication-dashboard__overview-grid { display: grid; gap: 1rem; grid-template-columns: minmax(0, 1.5fr) minmax(18rem, .5fr); margin-top: 1rem; }
.strategic-communication-dashboard__panel { background: #fff; border: 1px solid var(--strategic-border); border-radius: 1rem; margin-top: 1rem; overflow: hidden; width: 100%; }
.strategic-communication-dashboard__overview-grid > .strategic-communication-dashboard__panel { margin-top: 0; }
.strategic-communication-dashboard__panel > header { align-items: center; border-bottom: 1px solid var(--strategic-border); display: flex; gap: 1rem; justify-content: space-between; padding: 1.1rem 1.2rem; }
.strategic-communication-dashboard__panel > header > div { min-width: 0; }
.strategic-communication-dashboard__panel > header > div > small { color: #087ba3; font-size: .68rem; font-weight: 800; letter-spacing: .08em; }
.strategic-communication-dashboard__panel > header h4 { color: var(--strategic-blue); font-size: 1.05rem; margin: .15rem 0; }
.strategic-communication-dashboard__panel > header p { color: #697588; font-size: .82rem; margin: 0; }
.strategic-communication-dashboard__panel > header > span { background: #edf7fb; border-radius: 999px; color: #145e82; flex: 0 0 auto; font-size: .78rem; font-weight: 700; padding: .45rem .7rem; }
.strategic-communication-dashboard__delivery-steps { display: grid; gap: .7rem; grid-template-columns: repeat(4, minmax(0, 1fr)); padding: 1rem 1.2rem .7rem; }
.strategic-communication-dashboard__delivery-steps button { align-items: center; background: #f7f9fc; border: 0; border-radius: .8rem; display: grid; gap: .7rem; grid-template-columns: auto minmax(0, 1fr) auto; min-width: 0; padding: .8rem; text-align: left; width: 100%; }
.strategic-communication-dashboard__delivery-steps button:hover { background: #eef8fc; }
.strategic-communication-dashboard__delivery-steps button > span { align-items: center; background: #e7f3fb; border-radius: .65rem; color: #176799; display: inline-flex; flex: 0 0 2.45rem; height: 2.45rem; justify-content: center; width: 2.45rem; }
.strategic-communication-dashboard__delivery-steps button > span.is-delivered { background: #e5f7ef; color: #1d8d5b; }
.strategic-communication-dashboard__delivery-steps button > span.is-read { background: #eee8ff; color: #7452b7; }
.strategic-communication-dashboard__delivery-steps button > span.is-failed { background: #fde8eb; color: #b73344; }
.strategic-communication-dashboard__delivery-steps button > div { min-width: 0; }
.strategic-communication-dashboard__delivery-steps button > i { align-self: center; color: #7b8796; font-size: .75rem; }
.strategic-communication-dashboard__delivery-steps small,
.strategic-communication-dashboard__delivery-steps strong,
.strategic-communication-dashboard__delivery-steps em { display: block; }
.strategic-communication-dashboard__delivery-steps small { color: #687386; font-size: .72rem; }
.strategic-communication-dashboard__delivery-steps strong { color: var(--strategic-blue); font-size: 1.35rem; }
.strategic-communication-dashboard__delivery-steps em { color: #7b8796; font-size: .62rem; font-style: normal; line-height: 1.2; margin-top: .2rem; }
.strategic-communication-dashboard__availability { align-items: center; color: #647285; display: flex; font-size: .75rem; gap: .45rem; margin: 0; padding: 0 1.2rem 1rem; }
.strategic-communication-dashboard__campaign-health > header > i { color: #764bb0; font-size: 1.45rem; }
.strategic-communication-dashboard__campaign-health > div { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: .75rem 1rem; }
.strategic-communication-dashboard__campaign-health > div button { background: transparent; border: 0; border-bottom: 1px solid var(--strategic-border); padding: .65rem; text-align: left; }
.strategic-communication-dashboard__campaign-health > div button:hover { background: #f4fafc; }
.strategic-communication-dashboard__campaign-health > div button:nth-last-child(-n+2) { border-bottom: 0; }
.strategic-communication-dashboard__campaign-health > div strong,
.strategic-communication-dashboard__campaign-health > div small { display: block; }
.strategic-communication-dashboard__campaign-health > div strong { color: var(--strategic-blue); font-size: 1.35rem; }
.strategic-communication-dashboard__campaign-health > div small { color: #697588; }
.strategic-communication-dashboard__campaign-health > .btn { margin: 0 1rem 1rem; width: calc(100% - 2rem); }
.strategic-communication-dashboard__legend { align-items: center; display: flex; gap: .8rem; }
.strategic-communication-dashboard__legend span { align-items: center; color: #627083; display: inline-flex; font-size: .72rem; gap: .3rem; }
.strategic-communication-dashboard__legend i { background: #3d8ac4; border-radius: 999px; display: inline-block; height: .5rem; width: .5rem; }
.strategic-communication-dashboard__legend i.is-failed { background: #d04c5d; }
.strategic-communication-dashboard__trend-list { display: grid; gap: .65rem; padding: 1rem 1.2rem; }
.strategic-communication-dashboard__trend-list article { align-items: center; display: grid; gap: .75rem; grid-template-columns: 3.2rem minmax(0, 1fr) 2.5rem; }
.strategic-communication-dashboard__trend-list time { color: #5e6c80; font-size: .72rem; font-weight: 700; }
.strategic-communication-dashboard__trend-list article > div { background: #eef2f6; border-radius: 999px; display: flex; height: .7rem; overflow: hidden; }
.strategic-communication-dashboard__trend-list article > div span { display: block; min-width: 0; }
.strategic-communication-dashboard__trend-list article > div span.is-sent { background: #3d8ac4; }
.strategic-communication-dashboard__trend-list article > div span.is-failed { background: #d04c5d; }
.strategic-communication-dashboard__trend-list article > strong { color: var(--strategic-blue); font-size: .78rem; text-align: right; }
.strategic-communication-dashboard__attention-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.strategic-communication-dashboard__attention-grid > div { border-right: 1px solid var(--strategic-border); min-width: 0; padding: 1rem; }
.strategic-communication-dashboard__attention-grid > div:last-child { border-right: 0; }
.strategic-communication-dashboard__attention-grid h5 { align-items: center; color: var(--strategic-blue); display: flex; font-size: .9rem; gap: .4rem; margin: 0 0 .7rem; }
.strategic-communication-dashboard__attention-grid h5 > span { background: #e9f5fa; border-radius: 999px; color: #146a92; font-size: .68rem; margin-left: auto; padding: .2rem .45rem; }
.strategic-communication-dashboard__attention-grid button { align-items: center; background: transparent; border: 0; border-top: 1px solid var(--strategic-border); display: grid; gap: .6rem; grid-template-columns: minmax(0, 1fr) auto auto; padding: .7rem .15rem; text-align: left; width: 100%; }
.strategic-communication-dashboard__attention-grid button:hover { background: #f5fbfd; }
.strategic-communication-dashboard__attention-grid button > span { min-width: 0; }
.strategic-communication-dashboard__attention-grid button strong,
.strategic-communication-dashboard__attention-grid button small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.strategic-communication-dashboard__attention-grid button strong { color: var(--strategic-blue); font-size: .78rem; }
.strategic-communication-dashboard__attention-grid button small,
.strategic-communication-dashboard__attention-grid button time { color: #748094; font-size: .66rem; }
.strategic-communication-dashboard__attention-grid button em { background: #eef3f7; border-radius: 999px; color: #58687a; font-size: .62rem; font-style: normal; padding: .25rem .45rem; }
.strategic-communication-dashboard__attention-grid button em.is-failed,
.strategic-communication-dashboard__attention-grid button em.is-unknown { background: #fde8eb; color: #a93243; }
.strategic-communication-dashboard__attention-grid > div > p { color: #7a8696; font-size: .75rem; margin: .5rem 0; }
.strategic-communication-dashboard__performance-list { width: 100%; }
.strategic-communication-dashboard__performance-list > button { align-items: center; background: #fff; border: 0; border-bottom: 1px solid var(--strategic-border); display: grid; gap: .8rem; grid-template-columns: .3rem minmax(14rem, 1.6fr) repeat(5, minmax(5rem, .45fr)) auto; padding: .85rem 1.2rem; text-align: left; width: 100%; }
.strategic-communication-dashboard__performance-list > button:last-child { border-bottom: 0; }
.strategic-communication-dashboard__performance-list > button:hover { background: #f6fbfd; }
.strategic-communication-dashboard__campaign-marker { background: #39bfe5; border-radius: 999px; display: block; height: 2.8rem; width: .3rem; }
.strategic-communication-dashboard__performance-list button > span { min-width: 0; }
.strategic-communication-dashboard__performance-list button > span strong,
.strategic-communication-dashboard__performance-list button > span small { display: block; }
.strategic-communication-dashboard__performance-list button > span:nth-child(2) { overflow-wrap: anywhere; }
.strategic-communication-dashboard__performance-list button > i { color: #748094; }
.strategic-communication-dashboard [data-button-layout="communication-dashboard"]:focus-visible { outline: 3px solid #087ba3; outline-offset: -3px; }
.strategic-communication-dashboard__performance-list strong { color: var(--strategic-blue); }
.strategic-communication-dashboard__performance-list small { color: #718095; font-size: .68rem; }
.strategic-communication-dashboard__performance-list .has-failures strong { color: #b73344; }

.strategic-communication-dashboard__grid { display: grid; gap: 1rem; grid-template-columns: minmax(0, 1.35fr) minmax(18rem, .65fr); margin-top: 1rem; }
.strategic-communication-dashboard__connection-card,
.strategic-communication-dashboard__queue-card { background: #fff; border: 1px solid var(--strategic-border); border-radius: 1rem; padding: 1.25rem; }
.strategic-communication-dashboard__connection-card { align-items: center; display: grid; gap: 1rem; grid-template-columns: auto 1fr auto; }
.strategic-communication-dashboard__connection-icon { align-items: center; background: #e2f8ec; border-radius: 1rem; color: #128c4a; display: inline-flex; font-size: 1.6rem; height: 3.75rem; justify-content: center; width: 3.75rem; }
.strategic-communication-dashboard__connection-card small,
.strategic-communication-dashboard__queue-card small { color: #087ba3; font-size: .7rem; font-weight: 800; letter-spacing: .07em; }
.strategic-communication-dashboard__connection-card h4,
.strategic-communication-dashboard__queue-card h4 { color: var(--strategic-blue); font-size: 1.08rem; margin: .15rem 0 .25rem; }
.strategic-communication-dashboard__connection-card p,
.strategic-communication-dashboard__queue-card p { color: #697588; margin: 0; }
.strategic-communication-dashboard__queue-card header { align-items: center; display: flex; justify-content: space-between; }
.strategic-communication-dashboard__queue-card header > i { color: #0d5ca6; font-size: 1.3rem; }
.strategic-communication-dashboard__queue-card > div { display: flex; gap: 1rem; margin: .9rem 0; }
.strategic-communication-dashboard__queue-card > div span { background: #f3f6fa; border-radius: .6rem; color: #536174; flex: 1; padding: .65rem; }
.strategic-communication-dashboard__queue-card > div strong { color: var(--strategic-blue); display: block; font-size: 1.3rem; }
.strategic-communication-dashboard__queue-card > div .has-failures strong { color: #b23b46; }

.strategic-communication-queue-modal .strategic-communication-connection-modal__dialog { max-width: 76rem; }
.strategic-communication-audit-modal .strategic-communication-connection-modal__dialog { max-width: 78rem; }
.strategic-communication-labels-modal .strategic-communication-connection-modal__dialog { max-width: 38rem; }
.strategic-communication-labels__body { display: grid; gap: 1rem; }
.strategic-communication-labels__new label > span { color: #3f4b5d; display: block; font-weight: 700; margin-bottom: .4rem; }
.strategic-communication-labels__catalog { align-content: start; background: #f7f9fc; border: 1px solid var(--strategic-border); border-radius: .85rem; display: flex; flex-wrap: wrap; gap: .5rem; min-height: 8rem; padding: .85rem; }
.strategic-communication-labels__catalog > span { align-items: center; background: #e6f4fa; border-radius: 999px; color: #17647d; display: inline-flex; font-size: .8rem; font-weight: 700; gap: .25rem; height: 2rem; padding: 0 .35rem 0 .7rem; }
.strategic-communication-labels__catalog > span button { align-items: center; background: transparent; border: 0; color: inherit; display: inline-flex; font-size: 1rem; padding: .1rem; }
.strategic-communication-labels__catalog p,
.strategic-communication-labels__choices p { color: #6b778a; margin: auto; text-align: center; width: 100%; }
.strategic-communication-labels__choices { display: grid; gap: .55rem; }
.strategic-communication-labels__choices button { align-items: center; background: #fff; border: 1px solid var(--strategic-border); border-radius: .7rem; color: #475569; display: flex; font-weight: 700; gap: .55rem; padding: .7rem .8rem; text-align: left; }
.strategic-communication-labels__choices button.is-selected { background: #eaf8fc; border-color: #55c8e6; color: #075d7c; }
.strategic-communication-audit__toolbar { align-items: center; border-bottom: 1px solid var(--strategic-border); display: grid; gap: .75rem; grid-template-columns: minmax(18rem, 1fr) 12rem; padding: 1rem 1.25rem; }
.strategic-communication-audit__categories { border-bottom: 1px solid var(--strategic-border); display: flex; gap: .5rem; overflow-x: auto; padding: .8rem 1.25rem; scrollbar-width: thin; }
.strategic-communication-audit__categories button { background: #fff; border: 1px solid var(--strategic-border); border-radius: 999px; color: #475569; flex: 0 0 auto; font-size: .78rem; font-weight: 700; padding: .42rem .7rem; }
.strategic-communication-audit__categories button.is-active { background: var(--strategic-blue); border-color: var(--strategic-blue); color: #fff; }
.strategic-communication-audit__body { background: #f7f9fc; }
.strategic-communication-audit__list { background: #fff; border: 1px solid var(--strategic-border); border-radius: .9rem; overflow: hidden; }
.strategic-communication-audit__list > article { align-items: center; border-bottom: 1px solid var(--strategic-border); display: grid; gap: .9rem; grid-template-columns: auto minmax(13rem, 1fr) minmax(13rem, .9fr) minmax(12rem, 1.2fr); padding: .9rem 1rem; }
.strategic-communication-audit__list > article:last-child { border-bottom: 0; }
.strategic-communication-audit__icon { align-items: center; background: #e6f4fa; border-radius: .7rem; color: #087ba3; display: inline-flex; height: 2.7rem; justify-content: center; width: 2.7rem; }
.strategic-communication-audit__icon.is-contact { background: #e7f7ef; color: #18774b; }
.strategic-communication-audit__icon.is-connection,
.strategic-communication-audit__icon.is-queue { background: #fff3d6; color: #9a6700; }
.strategic-communication-audit__event strong,
.strategic-communication-audit__event small,
.strategic-communication-audit__actor strong,
.strategic-communication-audit__actor small { display: block; }
.strategic-communication-audit__event strong,
.strategic-communication-audit__actor strong { color: var(--strategic-blue); }
.strategic-communication-audit__event small,
.strategic-communication-audit__actor small { color: #6b778a; font-size: .76rem; margin-top: .18rem; }
.strategic-communication-audit__actor { align-items: center; display: flex; gap: .6rem; min-width: 0; }
.strategic-communication-audit__actor > img,
.strategic-communication-audit__actor > span { align-items: center; background: #edf4fa; border-radius: 50%; display: inline-flex; flex: 0 0 auto; height: 2.25rem; justify-content: center; object-fit: cover; width: 2.25rem; }
.strategic-communication-audit__metadata { display: flex; flex-wrap: wrap; gap: .35rem; }
.strategic-communication-audit__metadata span { background: #f0f4f8; border-radius: .45rem; color: #536174; font-size: .7rem; padding: .3rem .45rem; word-break: break-word; }
.strategic-communication-audit__empty { align-items: center; color: #6b778a; display: flex; flex-direction: column; gap: .35rem; justify-content: center; min-height: 14rem; text-align: center; }
.strategic-communication-audit__empty > i { color: #249bc1; font-size: 2rem; }
.strategic-communication-queue { display: grid; gap: 1rem; }
.strategic-communication-queue__summary { display: grid; gap: .75rem; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.strategic-communication-queue__summary article { align-items: center; background: #f6f9fc; border: 1px solid var(--strategic-border); border-radius: .85rem; display: flex; gap: .75rem; padding: .85rem; }
.strategic-communication-queue__summary article > span { align-items: center; background: #e7f5fa; border-radius: .7rem; color: #087ba3; display: inline-flex; height: 2.7rem; justify-content: center; width: 2.7rem; }
.strategic-communication-queue__summary article strong { color: var(--strategic-blue); display: block; font-size: 1.3rem; line-height: 1; }
.strategic-communication-queue__summary article small { color: #667386; display: block; margin-top: .25rem; }
.strategic-communication-queue__summary article.is-warning > span { background: #fff3d6; color: #a46b00; }
.strategic-communication-queue__summary article.is-danger > span { background: #fde8eb; color: #bd3548; }
.strategic-communication-queue__explanation { align-items: flex-start; background: #eef7ff; border: 1px solid #cfe5f8; border-radius: .85rem; color: #38526d; display: flex; gap: .75rem; padding: .9rem 1rem; }
.strategic-communication-queue__explanation > i { color: #1264a3; font-size: 1.25rem; }
.strategic-communication-queue__explanation strong { color: var(--strategic-blue); }
.strategic-communication-queue__explanation p { margin: .2rem 0 0; }
.strategic-communication-queue__list { border: 1px solid var(--strategic-border); border-radius: .9rem; overflow: hidden; }
.strategic-communication-queue__list > article { align-items: center; border-bottom: 1px solid var(--strategic-border); display: grid; gap: .8rem; grid-template-columns: auto minmax(14rem, 1.1fr) 5rem minmax(14rem, 1fr) auto; padding: .85rem 1rem; }
.strategic-communication-queue__list > article:last-child { border-bottom: 0; }
.strategic-communication-queue__state { align-items: center; background: #edf4fa; border-radius: .65rem; color: #1a659d; display: inline-flex; height: 2.5rem; justify-content: center; width: 2.5rem; }
.strategic-communication-queue__list article.is-failed .strategic-communication-queue__state,
.strategic-communication-queue__list article.is-unknown .strategic-communication-queue__state { background: #fde8eb; color: #bd3548; }
.strategic-communication-queue__identity strong,
.strategic-communication-queue__identity small,
.strategic-communication-queue__status small { display: block; }
.strategic-communication-queue__identity strong { color: var(--strategic-blue); }
.strategic-communication-queue__identity small,
.strategic-communication-queue__status small { color: #697588; font-size: .76rem; margin-top: .2rem; }
.strategic-communication-queue__attempt { text-align: center; }
.strategic-communication-queue__attempt strong { color: var(--strategic-blue); display: block; }
.strategic-communication-queue__attempt small { color: #7a8697; }
.strategic-communication-queue__status em { background: #edf4fa; border-radius: 999px; color: #315b7a; display: inline-flex; font-size: .73rem; font-style: normal; font-weight: 700; padding: .3rem .55rem; }
.strategic-communication-queue__status em.is-failed,
.strategic-communication-queue__status em.is-unknown { background: #fde8eb; color: #ad293d; }
.strategic-communication-queue__status em.is-sent,
.strategic-communication-queue__status em.is-delivered,
.strategic-communication-queue__status em.is-read { background: #e7f7ef; color: #18774b; }
.strategic-communication-queue__reprocess { background: #f7f9fc; border: 1px solid var(--strategic-border); border-radius: .9rem; display: grid; gap: .8rem; padding: 1rem; }
.strategic-communication-queue__reprocess small { color: #087ba3; font-size: .7rem; font-weight: 800; letter-spacing: .07em; }
.strategic-communication-queue__reprocess h4 { color: var(--strategic-blue); margin: .15rem 0; }
.strategic-communication-queue__reprocess p { color: #697588; margin: 0; }
.strategic-communication-queue__reprocess label > span { color: #3f4b5d; display: block; font-weight: 700; margin-bottom: .35rem; }
.strategic-communication-queue__reprocess > div:last-child { display: flex; gap: .65rem; justify-content: flex-end; }

.strategic-communication-inbox { background: #f5f7fa; display: grid; grid-template-columns: minmax(20rem, 24rem) minmax(0, 1fr); height: var(--strategic-conversation-height, 38rem); min-height: 0; overflow: hidden; width: 100%; }
.strategic-communication-inbox__error { align-items: center; background: #fff1f2; border-bottom: 1px solid #facbd0; color: #9d2f39; display: flex; gap: .65rem; grid-column: 1 / -1; padding: .75rem 1rem; }
.strategic-communication-inbox__error .btn-close { margin-left: auto; }
.strategic-communication-inbox__list { background: #fff; border-right: 1px solid var(--strategic-border); display: flex; flex-direction: column; min-height: 0; min-width: 0; overflow: hidden; }
/* Keep the controls intact; only the contact list gives up height and scrolls. */
.strategic-communication-inbox__list-heading,
.strategic-communication-inbox__search,
.strategic-communication-inbox__quick-filters,
.strategic-communication-inbox__pagination { flex: 0 0 auto; }
.strategic-communication-inbox__list-heading { align-items: center; background: #f0f2f5; display: flex; justify-content: space-between; min-height: 4.4rem; padding: .65rem .85rem; }
.strategic-communication-inbox__list-heading > div { display: flex; flex-direction: column; }
.strategic-communication-inbox__list-title strong { color: #172b3f; font-size: 1.2rem; line-height: 1.15; }
.strategic-communication-inbox__list-title small { color: #687386; font-size: .7rem; margin-top: .15rem; }
.strategic-communication-inbox__list-actions { align-items: center; display: flex; flex-direction: row !important; gap: .4rem; }
.strategic-communication-inbox__list-actions .btn { align-items: center; background: transparent; border: 0; border-radius: 50%; color: #546272; display: inline-flex; height: 2.4rem; justify-content: center; min-height: 2.4rem; min-width: 2.4rem; padding: 0; width: 2.4rem; }
.strategic-communication-inbox__list-actions .btn:hover { background: #dfe3e7; color: #172b3f; }
.strategic-communication-inbox__list-heading small { color: #087ba3; font-size: .66rem; font-weight: 800; letter-spacing: .08em; }
.strategic-communication-inbox__list-heading strong { color: var(--strategic-blue); }
.strategic-communication-inbox__list-heading .strategic-communication-inbox__list-title small { color: #687386; font-weight: 600; letter-spacing: 0; }
.strategic-communication-inbox__search { background: #fff; padding: .55rem .75rem .35rem; }
.strategic-communication-inbox__search > div { align-items: center; background: #f0f2f5; border: 1px solid transparent; border-radius: .7rem; display: grid; gap: .5rem; grid-template-columns: auto minmax(0, 1fr) auto; min-height: 2.6rem; padding: 0 .75rem; }
.strategic-communication-inbox__search > div:focus-within { background: #fff; border-color: #66cae5; box-shadow: 0 0 0 .18rem rgba(56, 191, 229, .14); }
.strategic-communication-inbox__search i { color: #687386; }
.strategic-communication-inbox__search input { background: transparent; border: 0; color: #24364d; min-width: 0; outline: 0; width: 100%; }
.strategic-communication-inbox__search input::placeholder { color: #788493; }
.strategic-communication-inbox__search button { align-items: center; background: transparent; border: 0; border-radius: 50%; display: inline-flex; height: 1.8rem; justify-content: center; padding: 0; width: 1.8rem; }
.strategic-communication-inbox__quick-filters { background: #fff; display: flex; gap: .4rem; min-height: 3rem; overflow-x: auto; padding: .35rem .75rem .65rem; scrollbar-width: none; }
.strategic-communication-inbox__quick-filters::-webkit-scrollbar { display: none; }
.strategic-communication-inbox__quick-filters button { background: #fff; border: 1px solid #d6dce2; border-radius: 999px; color: #536174; flex: 0 0 auto; font-size: .72rem; font-weight: 700; min-height: 2rem; padding: .3rem .7rem; }
.strategic-communication-inbox__quick-filters button:hover { background: #f3f5f7; }
.strategic-communication-inbox__quick-filters button.is-active { background: #d9fdd3; border-color: #acd8a6; color: #16743b; }
.strategic-communication-inbox__items { flex: 1 1 0; min-height: 0; overflow-y: auto; overscroll-behavior: contain; }
.strategic-communication-inbox__loading { align-items: center; color: #687386; display: flex; gap: .55rem; justify-content: center; min-height: 8rem; padding: 1rem; }
.strategic-communication-inbox__empty { align-items: center; color: #687386; display: flex; flex: 1; flex-direction: column; justify-content: center; padding: 2rem 1.25rem; text-align: center; }
.strategic-communication-inbox__empty > span { align-items: center; background: #e5f7fd; border-radius: 1rem; color: #087ba3; display: inline-flex; font-size: 1.4rem; height: 3.5rem; justify-content: center; margin-bottom: .8rem; width: 3.5rem; }
.strategic-communication-inbox__empty strong { color: var(--strategic-blue); }
.strategic-communication-inbox__empty p { font-size: .88rem; margin: .35rem 0 0; }
.strategic-communication-conversation { align-items: center; background: #fff; border: 0; border-bottom: 1px solid #edf0f2; color: #344054; display: grid; gap: .7rem; grid-template-columns: auto minmax(0, 1fr) auto; min-height: 5.15rem; padding: .65rem .8rem; text-align: left; width: 100%; }
.strategic-communication-conversation:hover { background: #f5fbfe; }
.strategic-communication-conversation.is-selected { background: #e9f7fc; box-shadow: inset .24rem 0 #29b9df; }
.strategic-communication-conversation.is-unread { background: #f2fbfe; }
.strategic-communication-conversation > img,
.strategic-communication-conversation__avatar { align-items: center; background: #e5f7fd; border-radius: 50%; color: #087ba3; display: inline-flex; flex: 0 0 3rem; height: 3rem; justify-content: center; object-fit: cover; width: 3rem; }
.strategic-communication-conversation__content { display: flex; flex-direction: column; min-width: 0; }
.strategic-communication-conversation__top { align-items: center; display: flex; gap: .5rem; justify-content: space-between; min-width: 0; }
.strategic-communication-conversation__top strong { color: var(--strategic-blue); flex: 1 1 auto; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.strategic-communication-conversation.is-unread .strategic-communication-conversation__top strong { font-weight: 800; }
.strategic-communication-conversation__top time { color: #7b8798; flex: 0 0 auto; font-size: .7rem; }
.strategic-communication-conversation__phone { color: #748094; font-size: .72rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.strategic-communication-conversation__preview { color: #5d697a; display: block; font-size: .82rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.strategic-communication-conversation__preview i { color: #269962; margin-right: .2rem; }
.strategic-communication-conversation__labels { display: flex; flex-wrap: wrap; gap: .3rem; margin-top: .3rem; min-width: 0; }
.strategic-communication-conversation__labels span,
.strategic-communication-conversation__labels em { background: #eef1f5; border-radius: 999px; color: #596678; flex: 0 1 auto; font-size: .62rem; font-style: normal; max-width: 100%; min-width: 0; overflow: hidden; padding: .18rem .4rem; text-overflow: ellipsis; white-space: nowrap; }
.strategic-communication-conversation__labels em.is-waiting { background: #fff1ce; color: #946000; }
.strategic-communication-conversation__unread { align-items: center; background: #087ba3; border-radius: 999px; color: #fff; display: inline-flex; font-size: .68rem; font-weight: 800; height: 1.5rem; justify-content: center; min-width: 1.5rem; padding: 0 .35rem; }
.strategic-communication-inbox__pagination { align-items: center; background: #fff; display: flex; gap: .55rem; justify-content: center; margin-top: auto; padding: .75rem; }
.strategic-communication-inbox__pagination span { color: #687386; font-size: .8rem; }

.strategic-communication-thread { min-height: 0; min-width: 0; overflow: hidden; }
.strategic-communication-thread__placeholder { align-items: center; color: #687386; display: flex; flex-direction: column; height: 100%; justify-content: center; min-height: 0; padding: 2rem; text-align: center; }
.strategic-communication-thread__placeholder > span { align-items: center; background: #e5f7fd; border-radius: 1.2rem; color: #087ba3; display: inline-flex; font-size: 1.8rem; height: 4.5rem; justify-content: center; width: 4.5rem; }
.strategic-communication-thread__placeholder h3 { color: var(--strategic-blue); margin: 1rem 0 .25rem; }
.strategic-communication-thread__placeholder p { margin: 0; }
.strategic-communication-thread__active { display: grid; grid-template-rows: auto minmax(0, 1fr) auto; height: 100%; min-height: 0; }
.strategic-communication-thread__header { align-items: center; background: #f0f2f5; border-bottom: 1px solid #dde2e6; display: grid; gap: .6rem; grid-template-areas: "avatar identity actions"; grid-template-columns: auto minmax(0, 1fr) auto; min-height: 4rem; padding: .45rem .75rem; text-align: left; }
.strategic-communication-thread__header > img,
.strategic-communication-thread__avatar { align-items: center; background: #e5f7fd; border-radius: 50%; color: #087ba3; display: inline-flex; grid-area: avatar; height: 2.5rem; justify-content: center; object-fit: cover; width: 2.5rem; }
.strategic-communication-thread__header > div:not(.strategic-communication-thread__actions) { display: flex; flex-direction: column; min-width: 0; }
.strategic-communication-thread__header strong { color: var(--strategic-blue); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.strategic-communication-thread__header span { color: #687386; font-size: .78rem; }
.strategic-communication-thread__identity { grid-area: identity; }
.strategic-communication-thread__identity > span { align-items: center; display: flex; flex-wrap: wrap; column-gap: .45rem; row-gap: .05rem; min-width: 0; }
.strategic-communication-thread__identity > span > span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.strategic-communication-thread__identity em { align-items: center; color: #5e6b79; display: inline-flex; flex: 0 1 auto; font-size: .68rem; font-style: normal; gap: .28rem; max-width: 100%; min-width: 0; }
.strategic-communication-thread__identity em > span { font-size: inherit; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.strategic-communication-thread__identity em i { background: #20a66a; border-radius: 50%; display: inline-block; flex: 0 0 .42rem; height: .42rem; width: .42rem; }
.strategic-communication-thread__identity em.is-waiting_response i { background: #d99716; }
.strategic-communication-thread__identity em.is-archived i { background: #8b96a3; }
.strategic-communication-thread__header > button.strategic-communication-thread__back { align-items: center; background: transparent; border: 0; border-radius: 50%; color: #435160; display: none; grid-area: back; height: 2.5rem; justify-content: center; min-width: 2.5rem; padding: 0; width: 2.5rem; }
.strategic-communication-thread__actions { align-items: center; display: flex; flex-wrap: nowrap; gap: .2rem; grid-area: actions; justify-self: end; }
.strategic-communication-thread__actions .btn { align-items: center; background: transparent; border: 0; border-radius: 50%; color: #435160; display: inline-flex; height: 2.5rem; justify-content: center; min-height: 2.5rem; min-width: 2.5rem; padding: 0; text-decoration: none; width: 2.5rem; }
.strategic-communication-thread__actions .btn:hover { background: #dfe3e7; color: #172b3f; }
.strategic-communication-conversation-focus { align-items: center; display: inline-flex; justify-content: center; min-height: 2rem; min-width: 2rem; padding: .25rem; }
.strategic-communication-conversation-focus--thread { display: inline-flex; }
.strategic-communication-thread__messages { background: #edf3f5; display: flex; flex-direction: column; gap: .55rem; max-height: none; min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: 1rem 1.25rem; }
.strategic-communication-thread__older { align-self: center; margin-bottom: .5rem; }
.strategic-communication-message { display: flex; justify-content: flex-start; width: 100%; }
.strategic-communication-message.is-outbound { justify-content: flex-end; }
.strategic-communication-message__bubble { background: #fff; border-radius: .9rem .9rem .9rem .25rem; box-shadow: 0 1px 2px rgba(9, 30, 52, .08); max-width: min(78%, 42rem); overflow: hidden; padding: .7rem .8rem .45rem; }
.strategic-communication-message__bubble { position: relative; }
.strategic-communication-message.is-outbound .strategic-communication-message__bubble { background: #dff5e9; border-radius: .9rem .9rem .25rem .9rem; }
.strategic-communication-message__bubble p { color: #253246; margin: 0; overflow-wrap: anywhere; white-space: pre-wrap; }
.strategic-communication-message__quote-action { align-items: center; background: transparent; border: 0; border-radius: .4rem; color: #748094; display: none; height: 1.8rem; justify-content: center; padding: 0; position: absolute; right: .3rem; top: .25rem; width: 1.8rem; }
.strategic-communication-message__bubble:hover .strategic-communication-message__quote-action,
.strategic-communication-message__quote-action:focus-visible { display: inline-flex; }
.strategic-communication-message__meta { align-items: center; color: #758195; display: flex; font-size: .65rem; gap: .55rem; justify-content: flex-end; margin-top: .3rem; }
.strategic-communication-message__meta > span { align-items: center; display: inline-flex; gap: .2rem; }
.strategic-communication-message__meta > span.is-failed { color: #a73540; }
.strategic-communication-message__meta > span.is-unknown { color: #687386; }
.strategic-communication-message__meta > span.is-read { color: #087ba3; }
.strategic-communication-message__error { background: rgba(183, 55, 67, .09); border-radius: .5rem; color: #9d2f39; display: flex; flex-direction: column; font-size: .72rem; margin-top: .45rem; padding: .5rem; }
.strategic-communication-message__error .btn { align-self: flex-start; font-size: .72rem; padding: .2rem 0 0; }
.strategic-communication-message__cancel { float: right; font-size: .7rem; padding: .25rem 0 0; }
.strategic-communication-message__attachments { display: flex; flex-direction: column; gap: .5rem; }
.strategic-communication-message__image { background: #e9eef3; border: 0; border-radius: .65rem; max-width: 22rem; overflow: hidden; padding: 0; position: relative; }
.strategic-communication-message__image img { display: block; max-height: 22rem; object-fit: cover; width: 100%; }
.strategic-communication-message__image span { align-items: center; background: rgba(3, 38, 76, .76); bottom: 0; color: #fff; display: flex; gap: .4rem; left: 0; padding: .45rem .65rem; position: absolute; right: 0; }
.strategic-communication-message__media { background: #f4f7fa; border: 1px solid #d8e0e8; border-radius: .7rem; display: grid; gap: .55rem; min-width: min(19rem, 100%); overflow: hidden; padding: .65rem; }
.strategic-communication-message__media-heading { align-items: center; display: grid; gap: .55rem; grid-template-columns: auto minmax(0, 1fr) auto; }
.strategic-communication-message__media-heading > i { align-items: center; background: #dff4fa; border-radius: 50%; color: #087ba3; display: inline-flex; font-size: 1rem; height: 2.25rem; justify-content: center; width: 2.25rem; }
.strategic-communication-message__media-heading > span { display: flex; min-width: 0; flex-direction: column; }
.strategic-communication-message__media-heading strong { color: #24364d; font-size: .8rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.strategic-communication-message__media-heading small { color: #687386; font-size: .68rem; }
.strategic-communication-message__media-heading > a,
.strategic-communication-message__media-heading > button { align-items: center; background: transparent; border: 0; border-radius: 50%; color: #087ba3; display: inline-flex; height: 2rem; justify-content: center; padding: 0; text-decoration: none; width: 2rem; }
.strategic-communication-message__media-heading > a:hover,
.strategic-communication-message__media-heading > a:focus-visible,
.strategic-communication-message__media-heading > button:hover,
.strategic-communication-message__media-heading > button:focus-visible { background: #dff4fa; }
.strategic-communication-message__media audio { height: 2.5rem; max-width: 100%; width: 20rem; }
.strategic-communication-message__media video { background: #111827; border-radius: .45rem; display: block; max-height: 26rem; max-width: 100%; width: 25rem; }
.strategic-communication-message__file { align-items: center; background: #f4f7fa; border: 1px solid #d8e0e8; border-radius: .7rem; display: grid; gap: .65rem; grid-template-columns: auto minmax(0, 1fr) auto; min-width: min(22rem, 100%); padding: .7rem; }
.strategic-communication-message__file > i { color: #087ba3; font-size: 1.55rem; }
.strategic-communication-message__file > span { display: flex; min-width: 0; flex-direction: column; }
.strategic-communication-message__file strong { color: #24364d; font-size: .8rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.strategic-communication-message__file small { color: #687386; font-size: .68rem; }
.strategic-communication-message__file > div { display: flex; gap: .35rem; }
.strategic-communication-message__file .btn { align-items: center; display: inline-flex; gap: .3rem; }
.strategic-communication-message__attachment-safe { align-items: center; background: #f4f5f7; border: 1px solid #d8e0e8; border-radius: .65rem; color: #687386; display: flex; gap: .65rem; min-width: 16rem; padding: .7rem; }
.strategic-communication-message__attachment-safe > i { font-size: 1.3rem; }
.strategic-communication-message__attachment-safe span { display: flex; flex-direction: column; }
.strategic-communication-message__attachment-safe strong { color: #344054; }
.strategic-communication-message__attachment-safe small { font-size: .7rem; }
.strategic-communication-message__attachment-safe.is-loading .spinner-border { color: #087ba3; height: 1.15rem; width: 1.15rem; }
.strategic-communication-thread__no-messages { align-items: center; color: #687386; display: flex; flex: 1; flex-direction: column; gap: .4rem; justify-content: center; }
.strategic-communication-thread__composer-preview { align-items: center; background: #fff; border-top: 1px solid var(--strategic-border); color: #687386; display: flex; gap: .55rem; min-height: 4rem; padding: .75rem 1rem; }
.strategic-communication-thread__composer-preview i { color: #087ba3; }

.strategic-communication-composer { background: #fff; border-top: 1px solid var(--strategic-border); padding: .75rem 1rem; }
.strategic-communication-composer__row { align-items: flex-end; display: grid; gap: .55rem; grid-template-columns: auto minmax(0, 1fr) auto; }
.strategic-communication-composer__row textarea { max-height: 9rem; min-height: 2.65rem; resize: vertical; }
.strategic-communication-composer__row > .btn { align-items: center; display: inline-flex; gap: .4rem; min-height: 2.65rem; }
.strategic-communication-composer__quote { align-items: center; background: #eef7fb; border-left: .2rem solid #38bfe5; border-radius: .55rem; display: grid; gap: .55rem; grid-template-columns: auto minmax(0, 1fr) auto; margin-bottom: .6rem; padding: .55rem .65rem; }
.strategic-communication-composer__quote > i { color: #087ba3; }
.strategic-communication-composer__quote > span { display: flex; flex-direction: column; min-width: 0; }
.strategic-communication-composer__quote strong { color: var(--strategic-blue); font-size: .78rem; }
.strategic-communication-composer__quote small { color: #687386; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.strategic-communication-composer__attachment { align-items: center; background: #f5f7fa; border: 1px solid var(--strategic-border); border-radius: .65rem; display: grid; gap: .65rem; grid-template-columns: auto minmax(0, 1fr) auto; margin-bottom: .6rem; padding: .55rem; }
.strategic-communication-composer__attachment > img { border-radius: .45rem; height: 3.5rem; object-fit: cover; width: 3.5rem; }
.strategic-communication-composer__attachment > span { display: flex; flex-direction: column; min-width: 0; }
.strategic-communication-composer__attachment strong { color: #344054; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.strategic-communication-composer__attachment small { align-items: center; color: #168b56; display: flex; font-size: .74rem; gap: .3rem; }
.strategic-communication-composer__error,
.strategic-communication-new-message__error { align-items: center; background: #fff1f2; border: 1px solid #facbd0; border-radius: .55rem; color: #9d2f39; display: flex; gap: .45rem; margin-bottom: .6rem; padding: .55rem .65rem; }

body.strategic-communication-conversation-focus { overflow: hidden; }
body.strategic-communication-conversation-focus .strategic-communication-inbox { border: 0; bottom: 0; box-shadow: none; grid-template-rows: minmax(0, 1fr); height: 100vh; height: 100dvh; left: 0; min-height: 0; position: fixed; right: 0; top: 0; width: 100vw; z-index: 1040; }
body.strategic-communication-conversation-focus .strategic-communication-inbox__error { left: 0; position: absolute; right: 0; top: 0; z-index: 4; }
body.strategic-communication-conversation-focus .strategic-communication-inbox__list,
body.strategic-communication-conversation-focus .strategic-communication-thread { height: 100%; min-height: 0; overflow: hidden; }
body.strategic-communication-conversation-focus .strategic-communication-thread__placeholder,
body.strategic-communication-conversation-focus .strategic-communication-thread__active { height: 100%; min-height: 0; }
body.strategic-communication-conversation-focus .strategic-communication-thread__messages { max-height: none; min-height: 0; }
body.strategic-communication-conversation-focus .strategic-communication-composer { bottom: auto; position: static; }

.strategic-communication-new-message-modal .strategic-communication-connection-modal__dialog { max-width: 46rem; }
.strategic-communication-new-message__search { align-items: center; display: grid; gap: .45rem; grid-template-columns: minmax(0, 1fr) auto; }
.strategic-communication-new-message__candidates { display: flex; flex-direction: column; gap: .6rem; margin-top: 1rem; }
.strategic-communication-new-message__candidates article { align-items: center; border: 1px solid var(--strategic-border); border-radius: .75rem; display: flex; flex-wrap: wrap; gap: .55rem; justify-content: space-between; padding: .7rem; }
.strategic-communication-new-message__candidates article > div { align-items: center; display: flex; gap: .65rem; margin-right: auto; min-width: 12rem; }
.strategic-communication-new-message__candidates article img,
.strategic-communication-new-message__candidates article > div > span { align-items: center; background: #e5f7fd; border-radius: 50%; color: #087ba3; display: inline-flex; flex: 0 0 2.6rem; height: 2.6rem; justify-content: center; object-fit: cover; width: 2.6rem; }
.strategic-communication-new-message__candidates article > div > div { display: flex; flex-direction: column; min-width: 0; }
.strategic-communication-new-message__candidates article strong { color: var(--strategic-blue); }
.strategic-communication-new-message__candidates article small { color: #687386; display: block; font-size: .68rem; }
.strategic-communication-new-message__candidates article > .btn { display: flex; flex-direction: column; text-align: left; }
.strategic-communication-new-message__empty { align-items: center; color: #687386; display: flex; flex-direction: column; gap: .5rem; padding: 2rem; text-align: center; }
.strategic-communication-new-message__empty i { color: #8aa0b8; font-size: 1.8rem; }
.strategic-communication-new-message__preview > header { align-items: center; border: 1px solid var(--strategic-border); border-radius: .8rem; display: grid; gap: .75rem; grid-template-columns: auto minmax(0, 1fr) auto; margin-bottom: .75rem; padding: .8rem; }
.strategic-communication-new-message__preview > header > img,
.strategic-communication-new-message__preview > header > span { align-items: center; background: #e5f7fd; border-radius: 50%; color: #087ba3; display: inline-flex; height: 3rem; justify-content: center; object-fit: cover; width: 3rem; }
.strategic-communication-new-message__preview > header > div { display: flex; flex-direction: column; }
.strategic-communication-new-message__preview > header small { color: #087ba3; font-size: .65rem; font-weight: 800; letter-spacing: .07em; }
.strategic-communication-new-message__preview > header strong { color: var(--strategic-blue); }
.strategic-communication-new-message__preview > header p { color: #687386; margin: 0; }
.strategic-communication-new-message__confirmation { align-items: flex-start; background: #fff8e6; border: 1px solid #efd18b; border-radius: .7rem; display: flex; gap: .65rem; margin-bottom: .8rem; padding: .75rem; }
.strategic-communication-new-message__confirmation > span { display: flex; flex-direction: column; }
.strategic-communication-new-message__confirmation strong { color: #704d00; }
.strategic-communication-new-message__confirmation small { color: #896715; }
.strategic-communication-new-message__authorization { background: #f5f9fd; border: 1px solid var(--strategic-border); border-radius: .75rem; display: grid; gap: .65rem; grid-template-columns: minmax(11rem, .7fr) minmax(15rem, 1fr) auto; margin-bottom: .8rem; padding: .85rem; }
.strategic-communication-new-message__authorization > div { display: flex; flex-direction: column; grid-column: 1 / -1; }
.strategic-communication-new-message__authorization > div small { color: #687386; }
.strategic-communication-new-message__composer { border-top: 1px solid var(--strategic-border); margin-top: 1rem; padding-top: 1rem; }
.strategic-communication-new-message__composer label > span { color: #344054; display: block; font-weight: 700; margin-bottom: .4rem; }
.strategic-communication-new-message__composer textarea { resize: vertical; }

.strategic-communication-templates { padding: 1.25rem; width: 100%; }
.strategic-communication-templates > header { align-items: center; display: flex; gap: 1rem; justify-content: space-between; margin-bottom: 1rem; }
.strategic-communication-templates > header small,
.strategic-communication-template-editor__heading small { color: #087ba3; font-size: .68rem; font-weight: 800; letter-spacing: .08em; }
.strategic-communication-templates > header h3 { color: var(--strategic-blue); font-size: 1.35rem; margin: .15rem 0; }
.strategic-communication-templates > header p { color: #687386; margin: 0; }
.strategic-communication-templates__list { border: 1px solid var(--strategic-border); border-radius: 1rem; overflow: hidden; width: 100%; }
.strategic-communication-template { align-items: center; background: #fff; display: grid; gap: 1rem; grid-template-columns: auto minmax(0, 1fr) auto; padding: 1rem 1.1rem; width: 100%; }
.strategic-communication-template + .strategic-communication-template { border-top: 1px solid var(--strategic-border); }
.strategic-communication-template__icon { align-items: center; background: #e5f7fd; border-radius: .8rem; color: #087ba3; display: inline-flex; font-size: 1.25rem; height: 3.25rem; justify-content: center; width: 3.25rem; }
.strategic-communication-template__icon.is-inactive { background: #eef1f5; color: #687386; }
.strategic-communication-template__icon.is-archived { background: #f5eefa; color: #79519b; }
.strategic-communication-template__content { min-width: 0; }
.strategic-communication-template__content > div:first-child { align-items: center; display: flex; gap: .55rem; }
.strategic-communication-template__content > div:first-child > small { color: #687386; }
.strategic-communication-template__content h4 { color: var(--strategic-blue); font-size: 1rem; margin: .28rem 0 .1rem; }
.strategic-communication-template__purpose { color: #536174; font-size: .82rem; margin: 0; }
.strategic-communication-template__text { color: #687386; display: -webkit-box; font-size: .85rem; margin: .45rem 0; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.strategic-communication-template__status { border-radius: 999px; font-size: .7rem; font-weight: 750; padding: .3rem .55rem; }
.strategic-communication-template__status.is-active { background: #e4f7ec; color: #13794b; }
.strategic-communication-template__status.is-inactive { background: #eef1f5; color: #596579; }
.strategic-communication-template__status.is-archived { background: #f2eafa; color: #70459a; }
.strategic-communication-template__meta { align-items: center; display: flex; flex-wrap: wrap; gap: .8rem; }
.strategic-communication-template__meta span { align-items: center; color: #687386; display: inline-flex; font-size: .75rem; gap: .3rem; }
.strategic-communication-template__meta i { color: #087ba3; }
.strategic-communication-template__actions { align-items: center; display: flex; gap: .45rem; }
.strategic-communication-templates__pagination { align-items: center; display: flex; gap: .65rem; justify-content: flex-end; padding-top: 1rem; }
.strategic-communication-templates__pagination span { color: #687386; font-size: .82rem; }

.strategic-communication-template-modal .strategic-communication-connection-modal__dialog { max-width: 82rem; }
.strategic-communication-template-editor { display: grid; gap: 1.2rem; grid-template-columns: minmax(0, 1.15fr) minmax(22rem, .85fr); }
.strategic-communication-template-editor > .alert { grid-column: 1 / -1; margin: 0; }
.strategic-communication-template-editor__form,
.strategic-communication-template-editor__preview { border: 1px solid var(--strategic-border); border-radius: .9rem; padding: 1rem; }
.strategic-communication-template-editor__heading { align-items: center; display: flex; justify-content: space-between; margin-bottom: .9rem; }
.strategic-communication-template-editor__heading h4 { color: var(--strategic-blue); font-size: 1rem; margin: .12rem 0 0; }
.strategic-communication-template-editor__heading > span { background: #eef7fb; border-radius: 999px; color: #087ba3; font-size: .72rem; font-weight: 700; padding: .35rem .55rem; }
.strategic-communication-template-editor__heading > i { color: #087ba3; font-size: 1.5rem; }
.strategic-communication-template-editor__fields { display: grid; gap: .75rem; grid-template-columns: 1fr 1fr; }
.strategic-communication-template-editor label > span { color: #344054; display: block; font-size: .82rem; font-weight: 700; margin-bottom: .35rem; }
.strategic-communication-template-editor__text { display: block; margin-top: .75rem; }
.strategic-communication-template-editor__text textarea { resize: vertical; }
.strategic-communication-template-editor__variables { align-items: center; background: #f5f9fd; border-radius: .75rem; display: flex; flex-wrap: wrap; gap: .45rem; margin-top: .75rem; padding: .75rem; }
.strategic-communication-template-editor__variables > div { display: flex; flex: 1 0 100%; flex-direction: column; }
.strategic-communication-template-editor__variables small { color: #687386; }
.strategic-communication-template-editor__variables .btn { font-family: monospace; }
.strategic-communication-template-editor__image { margin-top: .75rem; }
.strategic-communication-template-editor__image > div:first-child { align-items: center; border: 1px dashed #b8c5d4; border-radius: .75rem; display: grid; gap: .65rem; grid-template-columns: auto minmax(0, 1fr) auto; padding: .8rem; }
.strategic-communication-template-editor__image > div:first-child > i { color: #087ba3; font-size: 1.4rem; }
.strategic-communication-template-editor__image > div:first-child > span { display: flex; flex-direction: column; }
.strategic-communication-template-editor__image small { color: #687386; }
.strategic-communication-template-editor__preview { background: #f8fafc; }
.strategic-communication-template-editor__candidates { background: #fff; border: 1px solid var(--strategic-border); border-radius: .65rem; margin-top: .5rem; max-height: 11rem; overflow-y: auto; }
.strategic-communication-template-editor__candidates button { background: transparent; border: 0; display: flex; flex-direction: column; padding: .6rem .7rem; text-align: left; width: 100%; }
.strategic-communication-template-editor__candidates button + button,
.strategic-communication-template-editor__candidates div + div { border-top: 1px solid var(--strategic-border); }
.strategic-communication-template-editor__candidates button:hover:not(:disabled) { background: #eef9fd; }
.strategic-communication-template-editor__candidates button small { color: #687386; }
.strategic-communication-template-editor__recipient { align-items: center; background: #e8f7fd; border-radius: .65rem; color: #075691; display: flex; gap: .55rem; margin-top: .6rem; padding: .6rem .7rem; }
.strategic-communication-template-editor__recipient span { display: flex; flex-direction: column; }
.strategic-communication-template-editor__recipient small { color: #52718a; }
.strategic-communication-template-editor__context { display: grid; gap: .55rem; grid-template-columns: 1fr 1fr; margin: .75rem 0; }
.strategic-communication-template-editor__phone-preview { background: #e9e4dc; border-radius: .75rem; margin: .75rem 0; padding: .8rem; }
.strategic-communication-template-editor__bubble { background: #d9fdd3; border-radius: .75rem .75rem .15rem .75rem; box-shadow: 0 1px 2px rgba(0,0,0,.08); margin-left: auto; max-width: 92%; overflow: hidden; }
.strategic-communication-template-editor__bubble img { display: block; max-height: 13rem; object-fit: cover; width: 100%; }
.strategic-communication-template-editor__bubble p { color: #27313f; margin: 0; padding: .7rem .8rem; white-space: pre-wrap; }
.strategic-communication-template-editor__phone-preview .alert { font-size: .78rem; margin: .55rem 0 0; padding: .55rem; }

.strategic-communication-page__empty { align-items: center; display: flex; flex-direction: column; justify-content: center; min-height: 30rem; padding: 3rem 1.5rem; text-align: center; width: 100%; }
.strategic-communication-page__empty > span { align-items: center; background: #e5f7fd; border-radius: 1.25rem; color: #096b99; display: inline-flex; font-size: 1.8rem; height: 4.5rem; justify-content: center; width: 4.5rem; }
.strategic-communication-page__empty h3 { color: var(--strategic-blue); margin: 1rem 0 .35rem; }
.strategic-communication-page__empty p { color: #687386; margin: 0; max-width: 38rem; }
.strategic-communication-page__no-access { align-items: center; display: flex; flex-direction: column; justify-content: center; min-height: 30rem; padding: 2rem; text-align: center; }
.strategic-communication-page__no-access > i { color: #98a2b3; font-size: 2.6rem; }

.strategic-communication-connection-modal { inset: 0; position: fixed; z-index: 1060; }
.strategic-communication-connection-modal__backdrop { background: rgba(5, 18, 35, .58); border: 0; inset: 0; padding: 0; position: absolute; width: 100%; }
.strategic-communication-connection-modal__dialog { background: #fff; border-radius: 1.1rem; box-shadow: 0 24px 80px rgba(0, 27, 61, .24); display: flex; flex-direction: column; left: 50%; max-height: calc(100vh - 3rem); max-width: 52rem; overflow: hidden; position: absolute; top: 50%; transform: translate(-50%, -50%); width: calc(100% - 2rem); }
.strategic-communication-connection-modal__dialog > header { align-items: flex-start; border-bottom: 1px solid var(--strategic-border); display: flex; justify-content: space-between; padding: 1.35rem 1.5rem; }
.strategic-communication-connection-modal__dialog > header small { color: #087ba3; font-size: .7rem; font-weight: 800; letter-spacing: .08em; }
.strategic-communication-connection-modal__dialog > header h3 { color: var(--strategic-blue); font-size: 1.35rem; margin: .2rem 0; }
.strategic-communication-connection-modal__dialog > header p { color: #697588; margin: 0; }
.strategic-communication-connection-modal__body { overflow-y: auto; padding: 1.25rem 1.5rem; }
.strategic-communication-connection-modal__loading { align-items: center; display: flex; gap: .7rem; justify-content: center; min-height: 16rem; }
.strategic-communication-connection-modal__dialog > footer { align-items: center; border-top: 1px solid var(--strategic-border); display: flex; justify-content: space-between; padding: 1rem 1.5rem; }
.strategic-communication-connection-modal__actions { display: flex; gap: .65rem; }

.strategic-communication-connection-status { align-items: center; background: #f4f7fb; border: 1px solid var(--strategic-border); border-left: .3rem solid #8793a5; border-radius: .85rem; display: grid; gap: 1rem; grid-template-columns: auto 1fr auto; padding: 1rem; }
.strategic-communication-connection-status > span:first-child { align-items: center; background: #e9eef4; border-radius: .75rem; color: #66758a; display: inline-flex; font-size: 1.25rem; height: 3rem; justify-content: center; width: 3rem; }
.strategic-communication-connection-status.is-ready { border-left-color: #20a66a; }
.strategic-communication-connection-status.is-ready > span:first-child { background: #e2f8ec; color: #148d53; }
.strategic-communication-connection-status.is-warning { border-left-color: #e6a51d; }
.strategic-communication-connection-status.is-warning > span:first-child { background: #fff1ce; color: #a66b00; }
.strategic-communication-connection-status small { color: #687386; font-size: .68rem; font-weight: 800; letter-spacing: .07em; }
.strategic-communication-connection-status h4 { color: var(--strategic-blue); font-size: 1.03rem; margin: .1rem 0; }
.strategic-communication-connection-status p { color: #687386; font-size: .88rem; margin: 0; }
.strategic-communication-connection-status__pulse { align-items: center; color: #075691; display: inline-flex; font-size: .82rem; gap: .45rem; }
.strategic-communication-worker-pool { align-items: flex-start; background: #f8fafc; border: 1px solid var(--strategic-border); border-radius: .8rem; display: grid; gap: .75rem; grid-template-columns: auto 1fr; margin-top: 1rem; padding: .85rem 1rem; }
.strategic-communication-worker-pool > i { font-size: 1.3rem; line-height: 1; margin-top: .1rem; }
.strategic-communication-worker-pool strong { color: var(--strategic-blue); display: block; }
.strategic-communication-worker-pool p { color: #687386; font-size: .86rem; margin: .15rem 0 0; }
.strategic-communication-worker-pool.is-available { background: #effaf4; border-color: #a9dfc2; }
.strategic-communication-worker-pool.is-available > i { color: #148d53; }
.strategic-communication-worker-pool.is-unavailable { background: #fff8e8; border-color: #f0d38f; }
.strategic-communication-worker-pool.is-unavailable > i { color: #a66b00; }

.strategic-communication-connection-qr { align-items: center; border: 1px solid #f0d38f; border-radius: .85rem; display: grid; gap: 1.25rem; grid-template-columns: 13rem 1fr; margin-top: 1rem; padding: 1rem; }
.strategic-communication-connection-qr > img { background: #fff; border: 1px solid var(--strategic-border); border-radius: .7rem; height: 13rem; object-fit: contain; padding: .55rem; width: 13rem; }
.strategic-communication-connection-qr > div:first-child:not(:last-child) { align-items: center; background: #f5f7fa; border-radius: .7rem; display: flex; flex-direction: column; height: 13rem; justify-content: center; text-align: center; width: 13rem; }
.strategic-communication-connection-qr > div:first-child p { color: #687386; margin: .4rem 0 0; }
.strategic-communication-connection-qr small { color: #a66b00; font-size: .68rem; font-weight: 800; letter-spacing: .07em; }
.strategic-communication-connection-qr h4 { color: var(--strategic-blue); font-size: 1.05rem; margin: .2rem 0 .6rem; }
.strategic-communication-connection-qr ol { color: #536174; margin-bottom: .6rem; padding-left: 1.2rem; }
.strategic-communication-connection-qr p { color: #7f5d12; margin: 0; }

.strategic-communication-connection-form { display: grid; gap: 1rem; grid-template-columns: minmax(0, 1fr) minmax(15rem, .7fr); margin-top: 1rem; }
.strategic-communication-connection-form label > span { color: #344054; display: block; font-weight: 650; margin-bottom: .4rem; }
.strategic-communication-connection-form label > small { color: #687386; display: block; margin-top: .35rem; }
.strategic-communication-worker-switch { align-items: flex-start; background: #fff8e8; border: 1px solid #f0d38f; border-radius: .8rem; color: #694b0b; display: grid; gap: .8rem; grid-template-columns: auto 1fr; margin-top: 1rem; padding: 1rem; }
.strategic-communication-worker-switch > i { font-size: 1.25rem; }
.strategic-communication-worker-switch p { color: #7f642b; margin: .2rem 0 .8rem; }
.strategic-communication-worker-switch label > span { display: block; font-weight: 700; margin-bottom: .35rem; }
.strategic-communication-connection-error { align-items: flex-start; background: #fff1f2; border: 1px solid #facbd0; border-radius: .75rem; color: #9d2f39; display: flex; gap: .7rem; margin-top: 1rem; padding: .9rem; }
.strategic-communication-connection-error p { margin: .15rem 0 0; }

.strategic-communication-contacts-modal .strategic-communication-connection-modal__dialog { max-width: 74rem; }
.strategic-communication-contacts-modal__toolbar { align-items: center; border-bottom: 1px solid var(--strategic-border); display: grid; gap: .75rem; grid-template-columns: 1fr auto; padding: 1rem 1.5rem; }
.strategic-communication-contacts-modal__settings { align-items: end; background: #f5f9fd; border-bottom: 1px solid var(--strategic-border); display: grid; gap: .75rem; grid-template-columns: 1fr auto; padding: 1rem 1.5rem; }
.strategic-communication-contacts-modal__settings label > span { color: #344054; display: block; font-weight: 700; margin-bottom: .35rem; }
.strategic-communication-contacts-modal__settings label > small { color: #687386; display: block; margin-top: .35rem; }
.strategic-communication-contacts-modal__summary { border-bottom: 1px solid var(--strategic-border); display: flex; flex-wrap: wrap; gap: .55rem; padding: .75rem 1.5rem; }
.strategic-communication-contacts-modal__summary span { background: #f1f5f9; border-radius: 999px; color: #536174; font-size: .82rem; padding: .42rem .7rem; }
.strategic-communication-contacts-modal__summary span.is-success { background: #e4f7ec; color: #13794b; }
.strategic-communication-contacts-modal__summary span.is-warning { background: #fff2d6; color: #986000; }
.strategic-communication-contacts-modal__summary span.is-danger { background: #feeaec; color: #a73540; }
.strategic-communication-contacts-modal__body { background: #f7f9fc; display: flex; flex-direction: column; gap: .8rem; }
.strategic-communication-contacts-modal__empty { align-items: center; color: #687386; display: flex; flex-direction: column; gap: .4rem; justify-content: center; min-height: 14rem; text-align: center; }
.strategic-communication-contacts-modal__empty i { color: #8aa0b8; font-size: 2rem; }
.strategic-communication-contact { background: #fff; border: 1px solid var(--strategic-border); border-radius: .9rem; flex: 0 0 auto; overflow: hidden; }
.strategic-communication-contact__identity { align-items: center; display: grid; gap: .85rem; grid-template-columns: auto 1fr auto; padding: .9rem 1rem; }
.strategic-communication-contact__identity > img,
.strategic-communication-contact__identity > span { align-items: center; background: #e5f7fd; border-radius: 50%; color: #087ba3; display: inline-flex; height: 3rem; justify-content: center; object-fit: cover; width: 3rem; }
.strategic-communication-contact__identity h4 { color: var(--strategic-blue); font-size: 1rem; margin: 0; }
.strategic-communication-contact__identity p { color: #536174; margin: .08rem 0; }
.strategic-communication-contact__identity small { color: #738095; }
.strategic-communication-contact__phones { border-top: 1px solid var(--strategic-border); }
.strategic-communication-contact-phone { align-items: center; display: grid; gap: 1rem; grid-template-columns: minmax(14rem, 1fr) auto auto; padding: .8rem 1rem; }
.strategic-communication-contact-phone.is-editing { background: #f5f9fd; }
.strategic-communication-contact-phone + .strategic-communication-contact-phone { border-top: 1px solid var(--strategic-border); }
.strategic-communication-contact-phone.is-duplicate { background: #fffbf1; }
.strategic-communication-contact-phone > div:first-child { display: flex; flex-direction: column; min-width: 0; }
.strategic-communication-contact-phone > div:first-child > span { color: #a26700; font-size: .78rem; }
.strategic-communication-contact-phone > div:first-child > small { color: #687386; }
.strategic-communication-contact-phone__status { border-radius: 999px; font-size: .76rem; font-weight: 750; padding: .4rem .65rem; white-space: nowrap; }
.strategic-communication-contact-phone__status.is-allowed { background: #e4f7ec; color: #13794b; }
.strategic-communication-contact-phone__status.is-blocked,
.strategic-communication-contact-phone__status.is-opted_out { background: #feeaec; color: #a73540; }
.strategic-communication-contact-phone__status.is-unknown { background: #eef1f5; color: #5f6b7b; }
.strategic-communication-contact-phone__actions { display: flex; gap: .4rem; }
.strategic-communication-contact-phone__editor { border-top: 1px solid var(--strategic-border); display: grid; gap: .75rem; grid-column: 1 / -1; padding-top: .8rem; }
.strategic-communication-contact-phone__editor-fields { display: grid; gap: .75rem; grid-template-columns: minmax(13rem, .8fr) minmax(14rem, 1fr); }
.strategic-communication-contact-phone__editor-fields label > span { color: #344054; display: block; font-size: .78rem; font-weight: 700; margin-bottom: .3rem; }
.strategic-communication-contact-phone__editor-actions { display: flex; gap: .5rem; justify-content: flex-end; }
.strategic-communication-contact-phone__editor-error { align-items: center; color: #a73540; display: flex; font-size: .82rem; gap: .45rem; }
.strategic-communication-contact__link { background: #f4f8fc; border-top: 1px solid var(--strategic-border); padding: .9rem 1rem; }
.strategic-communication-contact__candidate { background: #fff; border: 1px solid var(--strategic-border); border-radius: .65rem; display: flex; flex-direction: column; margin-top: .45rem; padding: .65rem .75rem; text-align: left; width: 100%; }
.strategic-communication-contact__candidate:hover { border-color: #61cce9; }
.strategic-communication-contact__candidate span { color: var(--strategic-blue); font-weight: 700; }
.strategic-communication-contact__candidate small { color: #687386; }
.strategic-communication-contacts-modal__pagination { align-items: center; display: flex; gap: .55rem; }
.strategic-communication-contacts-modal__pagination > span { color: #687386; font-size: .84rem; }

.strategic-communication-campaigns { padding: 1.25rem; width: 100%; }
.strategic-communication-campaigns > header { align-items: center; display: flex; justify-content: space-between; margin-bottom: 1rem; }
.strategic-communication-campaigns > header small,
.strategic-communication-campaign-editor__title > small { color: #087ba3; font-size: .68rem; font-weight: 850; letter-spacing: .08em; }
.strategic-communication-campaigns > header h3,
.strategic-communication-campaign-editor__title h4 { color: var(--strategic-blue); margin: .15rem 0; }
.strategic-communication-campaigns > header p,
.strategic-communication-campaign-editor__title p { color: #687386; margin: 0; }
.strategic-communication-campaigns__list { border: 1px solid var(--strategic-border); border-radius: 1rem; overflow: hidden; width: 100%; }
.strategic-communication-campaign { align-items: center; background: #fff; display: grid; gap: 1rem; grid-template-columns: auto minmax(18rem, 1fr) minmax(15rem, .45fr) auto; padding: 1rem 1.1rem; width: 100%; }
.strategic-communication-campaign + .strategic-communication-campaign { border-top: 1px solid var(--strategic-border); }
.strategic-communication-campaign__icon { align-items: center; background: #e7f7fc; border-radius: .75rem; color: #087ba3; display: inline-flex; font-size: 1.1rem; height: 3rem; justify-content: center; width: 3rem; }
.strategic-communication-campaign__icon.is-paused { background: #fff2d6; color: #a66b00; }
.strategic-communication-campaign__icon.is-completed { background: #e3f8ec; color: #168454; }
.strategic-communication-campaign__icon.is-completed_with_failures,
.strategic-communication-campaign__icon.is-cancelled { background: #feeaec; color: #a73540; }
.strategic-communication-campaign__content { min-width: 0; }
.strategic-communication-campaign__content > div:first-child { align-items: center; display: flex; gap: .55rem; }
.strategic-communication-campaign__content > div:first-child > small { color: #7a8698; }
.strategic-communication-campaign__content h4 { color: var(--strategic-blue); font-size: 1rem; margin: .35rem 0 .12rem; }
.strategic-communication-campaign__content > p { color: #586579; display: -webkit-box; margin: 0; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.strategic-communication-campaign__sources { display: flex; flex-wrap: wrap; gap: .3rem; margin-top: .5rem; }
.strategic-communication-campaign__sources span,
.strategic-communication-campaign__sources em { background: #f0f4f8; border-radius: 999px; color: #536174; font-size: .7rem; font-style: normal; padding: .25rem .48rem; }
.strategic-communication-campaign__progress > div:first-child { align-items: baseline; display: flex; gap: .35rem; }
.strategic-communication-campaign__progress strong { color: var(--strategic-blue); font-size: 1.05rem; }
.strategic-communication-campaign__progress span,
.strategic-communication-campaign__progress small { color: #687386; font-size: .78rem; }
.strategic-communication-campaign__progress .progress { height: .4rem; margin: .35rem 0; }
.strategic-communication-campaign__progress .progress-bar { background: #13a6ce; }
.strategic-communication-campaign__actions { align-items: center; display: flex; gap: .4rem; }

.strategic-communication-campaign-modal .strategic-communication-connection-modal__dialog { max-width: 82rem; }
.strategic-communication-campaign-editor__steps { align-items: center; background: #f8fafc; border-bottom: 1px solid var(--strategic-border); display: flex; justify-content: center; padding: .8rem 1rem; }
.strategic-communication-campaign-editor__steps > span { align-items: center; color: #7a8698; display: flex; font-size: .8rem; font-weight: 700; gap: .4rem; }
.strategic-communication-campaign-editor__steps > span b { align-items: center; background: #e7ebf0; border-radius: 50%; display: inline-flex; height: 1.7rem; justify-content: center; width: 1.7rem; }
.strategic-communication-campaign-editor__steps > span.is-active { color: var(--strategic-blue); }
.strategic-communication-campaign-editor__steps > span.is-active b,
.strategic-communication-campaign-editor__steps > span.is-complete b { background: var(--strategic-blue); color: #fff; }
.strategic-communication-campaign-editor__steps > i { background: #d7dee8; height: 1px; margin: 0 .7rem; width: 4rem; }
.strategic-communication-campaign-editor { background: #f8fafc; min-height: 28rem; }
.strategic-communication-campaign-editor__panel { background: #fff; border: 1px solid var(--strategic-border); border-radius: 1rem; padding: 1.1rem; }
.strategic-communication-campaign-editor__title { margin-bottom: 1rem; }
.strategic-communication-campaign-editor__sources { display: grid; gap: .65rem; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.strategic-communication-campaign-editor__sources > button { align-items: center; background: #fff; border: 1px solid var(--strategic-border); border-radius: .8rem; display: grid; gap: .65rem; grid-template-columns: auto 1fr auto; min-height: 5rem; padding: .8rem; text-align: left; }
.strategic-communication-campaign-editor__sources > button:hover,
.strategic-communication-campaign-editor__sources > button.is-selected { background: #f0fbfe; border-color: #43c2e3; box-shadow: 0 0 0 2px rgba(67, 194, 227, .12); }
.strategic-communication-campaign-editor__sources > button > i:first-child { align-items: center; background: #e7f7fc; border-radius: .6rem; color: #087ba3; display: inline-flex; font-size: 1.05rem; height: 2.5rem; justify-content: center; width: 2.5rem; }
.strategic-communication-campaign-editor__sources > button > i:last-child { color: #2cb6dc; }
.strategic-communication-campaign-editor__sources span { display: flex; flex-direction: column; min-width: 0; }
.strategic-communication-campaign-editor__sources strong { color: var(--strategic-blue); }
.strategic-communication-campaign-editor__sources small { color: #687386; font-size: .73rem; }
.strategic-communication-campaign-editor__source-hint { align-items: center; background: #f2f8fd; border: 1px solid #d6e8f5; border-radius: .75rem; color: #526276; display: flex; gap: .7rem; margin-top: 1rem; padding: .75rem .85rem; }
.strategic-communication-campaign-editor__source-hint > i { color: #087ba3; font-size: 1.15rem; }
.strategic-communication-campaign-editor__source-hint > span { display: flex; flex-direction: column; }
.strategic-communication-campaign-editor__source-hint strong { color: var(--strategic-blue); font-size: .82rem; }
.strategic-communication-campaign-editor__source-hint small { color: #687386; }
.strategic-communication-campaign-editor__selected-sources { align-items: center; display: flex; flex-wrap: wrap; gap: .45rem; margin-bottom: .9rem; }
.strategic-communication-campaign-editor__selected-sources > strong { color: #536174; font-size: .76rem; margin-right: .2rem; }
.strategic-communication-campaign-editor__selected-sources > span { align-items: center; background: #eaf8fc; border: 1px solid #c8eaf4; border-radius: 999px; color: var(--strategic-blue); display: inline-flex; font-size: .74rem; font-weight: 750; gap: .35rem; padding: .3rem .55rem; }
.strategic-communication-campaign-editor__entity-groups { display: grid; gap: .8rem; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 1rem; }
.strategic-communication-campaign-editor__entity-groups > section { border: 1px solid var(--strategic-border); border-radius: .75rem; display: flex; flex-direction: column; max-height: 22rem; min-height: 12rem; overflow: hidden; }
.strategic-communication-campaign-editor__entity-groups > section > header { align-items: center; background: #f8fafc; border-bottom: 1px solid var(--strategic-border); display: flex; gap: .7rem; justify-content: space-between; padding: .7rem; }
.strategic-communication-campaign-editor__entity-groups > section > header > div { display: flex; flex-direction: column; min-width: 0; }
.strategic-communication-campaign-editor__entity-groups > section > header small { color: #687386; font-size: .7rem; }
.strategic-communication-campaign-editor__entity-groups > section > header > label { align-items: center; background: #fff; border: 1px solid var(--strategic-border); border-radius: .5rem; color: #7a8698; display: flex; flex: 0 1 13rem; gap: .35rem; padding: .38rem .5rem; }
.strategic-communication-campaign-editor__entity-groups > section > header input { background: transparent; border: 0; color: #344054; font-size: .78rem; min-width: 0; outline: 0; width: 100%; }
.strategic-communication-campaign-editor__options { overflow-y: auto; padding: 0 .7rem .35rem; }
.strategic-communication-campaign-editor__options > label { align-items: center; border-top: 1px solid #edf1f5; cursor: pointer; display: grid; gap: .55rem; grid-template-columns: auto 1fr auto; margin: 0; padding: .62rem .15rem; }
.strategic-communication-campaign-editor__options > label:first-child { border-top: 0; }
.strategic-communication-campaign-editor__options > label > span { color: #344054; min-width: 0; overflow-wrap: anywhere; }
.strategic-communication-campaign-editor__options > label > span i { border-radius: 50%; display: inline-block; height: .55rem; margin-right: .4rem; width: .55rem; }
.strategic-communication-campaign-editor__options > label > small { color: #7a8698; }
.strategic-communication-campaign-editor__options > p { color: #7a8698; font-size: .78rem; margin: 0; padding: 1.2rem .25rem; text-align: center; }
.strategic-communication-campaign-editor__direct { border: 1px solid var(--strategic-border); border-radius: .75rem; margin-top: 1rem; padding: .85rem; }
.strategic-communication-campaign-editor__direct > div:first-child { display: flex; flex-direction: column; margin-bottom: .5rem; }
.strategic-communication-campaign-editor__direct > div:first-child small { color: #687386; }
.strategic-communication-campaign-editor__people-results { background: #fff; border: 1px solid var(--strategic-border); border-radius: .7rem; margin-top: .4rem; max-height: 13rem; overflow-y: auto; }
.strategic-communication-campaign-editor__people-results article { align-items: center; display: grid; gap: .8rem; grid-template-columns: minmax(12rem, 1fr) minmax(14rem, auto); padding: .65rem; }
.strategic-communication-campaign-editor__people-results article + article { border-top: 1px solid var(--strategic-border); }
.strategic-communication-campaign-editor__person { align-items: center; display: flex; gap: .6rem; min-width: 0; }
.strategic-communication-campaign-editor__person > img,
.strategic-communication-campaign-editor__person > span { align-items: center; background: #e7f7fc; border-radius: 50%; color: #087ba3; display: inline-flex; flex: 0 0 2.4rem; height: 2.4rem; justify-content: center; object-fit: cover; width: 2.4rem; }
.strategic-communication-campaign-editor__person > div { display: flex; flex-direction: column; min-width: 0; }
.strategic-communication-campaign-editor__person > div > * { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.strategic-communication-campaign-editor__person-phones { display: flex; flex-wrap: wrap; gap: .4rem; justify-content: flex-end; }
.strategic-communication-campaign-editor__people-results article button { background: #f6f9fc; border: 1px solid var(--strategic-border); border-radius: .5rem; color: var(--strategic-blue); display: flex; flex-direction: column; padding: .35rem .55rem; }
.strategic-communication-campaign-editor__people-results article button small { color: #687386; }
.strategic-communication-campaign-editor__people-empty { align-items: center; background: #f8fafc; border: 1px dashed var(--strategic-border); border-radius: .65rem; color: #687386; display: flex; font-size: .8rem; gap: .45rem; margin: .55rem 0 0; padding: .75rem; }
.strategic-communication-campaign-editor__selected-people { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: .7rem; }
.strategic-communication-campaign-editor__selected-people > span { align-items: center; background: #eaf8fc; border-radius: 999px; color: var(--strategic-blue); display: flex; gap: .35rem; padding: .35rem .4rem .35rem .65rem; }
.strategic-communication-campaign-editor__selected-people small { color: #66758a; }
.strategic-communication-campaign-editor__selected-people button { background: transparent; border: 0; color: #66758a; padding: 0; }
.strategic-communication-campaign-editor__panel > label { display: block; margin-bottom: .9rem; }
.strategic-communication-campaign-editor__panel > label > span { color: #344054; display: block; font-weight: 700; margin-bottom: .35rem; }

.strategic-communication-campaign-review__summary { display: grid; gap: .6rem; grid-template-columns: repeat(6, minmax(0, 1fr)); margin-bottom: 1rem; }
.strategic-communication-campaign-review__summary article { background: #f1f4f8; border-radius: .75rem; display: flex; flex-direction: column; padding: .75rem; }
.strategic-communication-campaign-review__summary article.is-success { background: #e4f7ec; }
.strategic-communication-campaign-review__summary strong { color: var(--strategic-blue); font-size: 1.3rem; }
.strategic-communication-campaign-review__summary span { color: #627085; font-size: .75rem; }
.strategic-communication-campaign-review__grid { display: grid; gap: 1rem; grid-template-columns: minmax(0, 1.5fr) minmax(18rem, .7fr); }
.strategic-communication-campaign-review__grid > section,
.strategic-communication-campaign-review__grid > aside { background: #fff; border: 1px solid var(--strategic-border); border-radius: .85rem; overflow: hidden; }
.strategic-communication-campaign-review__grid > section > header { border-bottom: 1px solid var(--strategic-border); padding: .8rem 1rem; }
.strategic-communication-campaign-review__grid > section > header div { display: flex; flex-direction: column; }
.strategic-communication-campaign-review__grid > section > header small { color: #687386; }
.strategic-communication-campaign-review__recipients { max-height: 22rem; overflow-y: auto; }
.strategic-communication-campaign-review__recipients article { align-items: center; display: grid; gap: .6rem; grid-template-columns: auto minmax(0, 1fr) auto; padding: .65rem 1rem; }
.strategic-communication-campaign-review__recipients article + article { border-top: 1px solid var(--strategic-border); }
.strategic-communication-campaign-review__recipients article > i { color: #1a9b61; }
.strategic-communication-campaign-review__recipients article.is-rejected { background: #fff9f2; }
.strategic-communication-campaign-review__recipients article.is-rejected > i,
.strategic-communication-campaign-review__recipients article.is-rejected > span { color: #a86800; }
.strategic-communication-campaign-review__recipients article div { display: flex; flex-direction: column; min-width: 0; }
.strategic-communication-campaign-review__recipients article small { color: #687386; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.strategic-communication-campaign-review__recipients article > span { color: #168454; font-size: .75rem; text-align: right; }
.strategic-communication-campaign-review__grid > aside { padding: 1rem; }
.strategic-communication-campaign-review__example { background: #e6f7ee; border-radius: .8rem .8rem .15rem .8rem; margin-top: .7rem; padding: .75rem; }
.strategic-communication-campaign-review__example small { color: #477161; }
.strategic-communication-campaign-review__example p { color: #253a33; margin: .3rem 0 0; white-space: pre-wrap; }
.strategic-communication-campaign-review__connection { align-items: center; background: #f1f5f9; border-radius: .75rem; display: flex; gap: .65rem; margin-top: 1rem; padding: .75rem; }
.strategic-communication-campaign-review__connection > i { color: #1d9f63; font-size: 1.35rem; }
.strategic-communication-campaign-review__connection span { display: flex; flex-direction: column; }
.strategic-communication-campaign-review__connection small { color: #687386; }
.strategic-communication-campaign-review > .strategic-communication-new-message__confirmation { margin-top: 1rem; }

.strategic-communication-campaign-detail-modal .strategic-communication-connection-modal__dialog { max-width: 76rem; }
.strategic-communication-campaign-detail__summary { display: grid; gap: .6rem; grid-template-columns: repeat(5, minmax(0, 1fr)); margin-bottom: 1rem; }
.strategic-communication-campaign-detail__summary span { background: #f1f5f9; border-radius: .7rem; color: #627085; display: flex; flex-direction: column; padding: .65rem; }
.strategic-communication-campaign-detail__summary strong { color: var(--strategic-blue); font-size: 1.2rem; }
.strategic-communication-campaign-detail__list { border: 1px solid var(--strategic-border); border-radius: .8rem; overflow: hidden; }
.strategic-communication-campaign-detail__list article { align-items: center; display: grid; gap: .7rem; grid-template-columns: 2rem minmax(0, 1fr) auto auto auto; padding: .7rem .85rem; }
.strategic-communication-campaign-detail__list article + article { border-top: 1px solid var(--strategic-border); }
.strategic-communication-campaign-detail__list article > span { color: #8a96a7; text-align: center; }
.strategic-communication-campaign-detail__list article > div { display: flex; flex-direction: column; }
.strategic-communication-campaign-detail__list article small { color: #687386; }
.strategic-communication-campaign-detail__list article > em { background: #eef2f6; border-radius: 999px; color: #536174; font-size: .72rem; font-style: normal; padding: .3rem .5rem; }
.strategic-communication-campaign-detail__list article > em.is-sent,
.strategic-communication-campaign-detail__list article > em.is-delivered,
.strategic-communication-campaign-detail__list article > em.is-read { background: #e4f7ec; color: #13794b; }
.strategic-communication-campaign-detail__list article > em.is-failed,
.strategic-communication-campaign-detail__list article > em.is-unknown { background: #feeaec; color: #a73540; }
.strategic-communication-campaign-detail__list article > p { background: #f7f9fc; border-radius: .55rem; grid-column: 2 / -1; margin: 0; padding: .65rem; white-space: pre-wrap; }
.strategic-communication-campaign-detail__content { align-items: center; display: inline-flex; gap: .35rem; }
.strategic-communication-campaign-detail__content span,
.strategic-communication-campaign-detail__attempt b { display: none; }

@media (max-width: 1199.98px) {
  .strategic-communication-page__heading .visitors-list-page__title-copy { min-width: 0; }
  .strategic-communication-page__heading h3 { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .strategic-communication-page__header-actions .strategic-communication-page__search-toggle { align-items: center; display: inline-flex; justify-content: center; }
  .strategic-communication-page__header-actions .strategic-communication-page__campaign-action { display: none; }
  .strategic-communication-page__message-action span { display: none; }
  .strategic-communication-page__toolbar { display: none; grid-template-columns: 1fr; }
  .strategic-communication-page__toolbar.is-open { display: grid; }
  .strategic-communication-page__tabs { gap: 0; overflow-x: auto; padding: .55rem .5rem 0; scrollbar-width: none; }
  .strategic-communication-page__tabs::-webkit-scrollbar { display: none; }
  .strategic-communication-page__tabs .visitors-list-page__tab { background: transparent !important; border: 0; border-bottom: .28rem solid transparent; border-radius: 0; flex: 0 0 auto; min-width: 7.3rem; padding: .7rem .65rem .85rem; }
  .strategic-communication-page__tabs .visitors-list-page__tab.is-active { background: transparent !important; border-bottom-color: #6cd3ed; }
  .strategic-communication-page__tab-actions { display: none; }
  .strategic-communication-dashboard__metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .strategic-communication-dashboard__grid { grid-template-columns: 1fr; }
  .strategic-communication-dashboard__overview-grid { grid-template-columns: 1fr; }
  .strategic-communication-dashboard__delivery-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .strategic-communication-dashboard__attention-grid { grid-template-columns: 1fr; }
  .strategic-communication-dashboard__attention-grid > div { border-bottom: 1px solid var(--strategic-border); border-right: 0; }
  .strategic-communication-dashboard__attention-grid > div:last-child { border-bottom: 0; }
  .strategic-communication-dashboard__performance-list { overflow-x: auto; }
  .strategic-communication-dashboard__performance-list > button { min-width: 60rem; }
  .strategic-communication-template-editor { grid-template-columns: 1fr; }
  .strategic-communication-campaign-editor__sources { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .strategic-communication-campaign-review__summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .strategic-communication-campaign-review__grid { grid-template-columns: 1fr; }
  .strategic-communication-queue__summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .strategic-communication-queue__list > article { grid-template-columns: auto minmax(12rem, 1fr) 5rem minmax(12rem, 1fr); }
  .strategic-communication-queue__list > article > .btn { grid-column: 2 / -1; justify-self: end; }
}

@media (max-width: 767.98px) {
  .strategic-communication-page__heading h3 { font-size: 1.4rem; }
  .strategic-communication-page__heading .visitors-list-page__subtitle { display: none; }
  .strategic-communication-page__header-actions { gap: .25rem; }
  .strategic-communication-page__header-actions .btn:not(.strategic-communication-page__campaign-action) { align-items: center; display: inline-flex; height: 2.75rem; justify-content: center; min-width: 2.75rem; padding: .45rem; }
  .strategic-communication-page__options-menu { max-width: calc(100vw - 1rem); min-width: 17rem; }
  .entity-list--strategic-communication { border-radius: 1rem; }
  .strategic-communication-page__tabs { scroll-padding-inline: .5rem; }
  .strategic-communication-page__tabs .visitors-list-page__tab { min-height: 4.6rem; min-width: 6.5rem; }
  .strategic-communication-page__toolbar { padding: .9rem; }
  .strategic-communication-page__filters { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .strategic-communication-page__filters .dropdown > .btn { justify-content: space-between; width: 100%; }
  .strategic-communication-page__filter-menu { max-width: calc(100vw - 2.5rem); min-width: 18rem; }
  .strategic-communication-page__toolbar .entity-list__search { min-width: 0; }
  .strategic-communication-page__toolbar .entity-list__search .input-group-text { display: none; }
  .strategic-communication-dashboard { padding: .8rem; }
  .strategic-communication-dashboard__hero { align-items: flex-start; flex-direction: column; gap: 1rem; padding: 1.15rem; }
  .strategic-communication-dashboard__metrics { gap: .7rem; }
  .strategic-communication-dashboard__metrics button { align-items: flex-start; flex-direction: column; gap: .55rem; padding: .9rem; }
  #main.strategic-communication-page .strategic-communication-dashboard__metrics button > i.bi { align-self: flex-start; flex-basis: 2.6rem; height: 2.6rem; min-height: 2.6rem; min-width: 2.6rem; width: 2.6rem; }
  .strategic-communication-dashboard__connection-summary { align-items: flex-start; }
  .strategic-communication-dashboard__delivery-steps { grid-template-columns: 1fr; }
  .strategic-communication-dashboard__panel > header { align-items: flex-start; flex-wrap: wrap; gap: .8rem; }
  .strategic-communication-dashboard__panel > header > div:first-child { flex: 1 1 12rem; }
  .strategic-communication-dashboard__trend > header > div:first-child { flex-basis: auto; }
  .strategic-communication-dashboard__trend > header { flex-direction: column; }
  .strategic-communication-dashboard__attention-grid button { grid-template-columns: minmax(0, 1fr) auto; }
  #main.strategic-communication-page .strategic-communication-dashboard__attention-grid button > i { display: none; }
  .strategic-communication-dashboard__connection-card { align-items: start; grid-template-columns: auto 1fr; }
  .strategic-communication-dashboard__connection-card .btn { grid-column: 1 / -1; width: 100%; }
  .strategic-communication-dashboard__queue-card > div { flex-direction: column; }
  .strategic-communication-dashboard__performance-list { overflow: visible; }
  .strategic-communication-dashboard__performance-list > button { align-items: start; border: 1px solid var(--strategic-border); border-radius: .8rem; gap: .55rem .75rem; grid-template-columns: .25rem repeat(2, minmax(0, 1fr)) auto; margin: .65rem; min-width: 0; padding: .8rem; width: calc(100% - 1.3rem); }
  .strategic-communication-dashboard__performance-list > button:last-child { border-bottom: 1px solid var(--strategic-border); }
  .strategic-communication-dashboard__performance-list > button > span:nth-child(2) { grid-column: 2 / 4; }
  .strategic-communication-dashboard__performance-list > button > span:nth-child(n+3) { border-top: 1px solid var(--strategic-border); padding-top: .45rem; }
  .strategic-communication-dashboard__performance-list > button > span:nth-child(n+3):nth-child(odd) { grid-column: 2; }
  .strategic-communication-dashboard__performance-list > button > span:nth-child(n+3):nth-child(even) { grid-column: 3; }
  .strategic-communication-dashboard__performance-list > button > span:nth-child(7) { align-items: center; display: flex; gap: .5rem; grid-column: 2 / 4; justify-content: space-between; }
  .strategic-communication-dashboard__performance-list > button > i { grid-column: 4; grid-row: 1; }
  .strategic-communication-dashboard__campaign-marker { grid-row: 1 / span 4; height: 100%; min-height: 3rem; }
  .strategic-communication-inbox { display: block; min-height: 0; }
  .strategic-communication-inbox__list { border-right: 0; height: 100%; min-height: 0; }
  .strategic-communication-inbox__list.is-hidden-mobile { display: none; }
  .strategic-communication-conversation { min-height: 5.75rem; }
  .strategic-communication-thread { display: none; min-height: 0; }
  .strategic-communication-thread.is-visible-mobile { display: block; height: 100%; }
  .strategic-communication-thread__active { height: 100%; min-height: 0; }
  .strategic-communication-thread__header { gap: .3rem; grid-template-areas: "back avatar identity actions"; grid-template-columns: auto auto minmax(0, 1fr) auto; padding-left: .4rem; padding-right: .4rem; }
  .strategic-communication-thread__header strong { font-size: .9rem; }
  .strategic-communication-thread__identity > span > span { font-size: .68rem; }
  .strategic-communication-thread__header > img,
  .strategic-communication-thread__avatar { height: 2.25rem; width: 2.25rem; }
  .strategic-communication-thread__header > button.strategic-communication-thread__back,
  .strategic-communication-thread__actions .btn { height: 2.25rem; min-height: 2.25rem; min-width: 2.25rem; width: 2.25rem; }
  .strategic-communication-thread__header > button.strategic-communication-thread__back { display: inline-flex; }
  .strategic-communication-conversation-focus--thread { display: inline-flex; }
  .strategic-communication-thread__actions .btn span { display: none; }
  .strategic-communication-thread__call { display: none !important; }
  .strategic-communication-thread__messages { max-height: none; min-height: 0; overscroll-behavior: contain; padding: .8rem; }
  .strategic-communication-message__bubble { max-width: 88%; }
  .strategic-communication-message__media, .strategic-communication-message__file { min-width: 0; width: 100%; }
  .strategic-communication-message__file { align-items: start; grid-template-columns: auto minmax(0, 1fr); }
  .strategic-communication-message__file > div { grid-column: 1 / -1; width: 100%; }
  .strategic-communication-message__file .btn { flex: 1; justify-content: center; }
  .strategic-communication-message__quote-action { display: inline-flex; }
  .strategic-communication-composer { bottom: 0; padding: .65rem; position: sticky; z-index: 2; }
  .strategic-communication-composer__row { grid-template-columns: auto minmax(0, 1fr) auto; }
  .strategic-communication-composer__row .btn { min-height: 2.75rem; min-width: 2.75rem; }
  .strategic-communication-composer__row textarea { font-size: 1rem; min-height: 2.75rem; }
  .strategic-communication-composer__row > .btn span { display: none; }
  body.strategic-communication-conversation-focus .strategic-communication-inbox { display: block; }
  body.strategic-communication-conversation-focus .strategic-communication-inbox__list,
  body.strategic-communication-conversation-focus .strategic-communication-thread,
  body.strategic-communication-conversation-focus .strategic-communication-thread.is-visible-mobile { height: 100vh; height: 100dvh; }
  .strategic-communication-composer__attachment > img { height: 4.5rem; width: 4.5rem; }
  .strategic-communication-new-message__search { grid-template-columns: 1fr; }
  .strategic-communication-new-message__search > .btn { justify-self: start; }
  .strategic-communication-new-message__candidates article { align-items: stretch; flex-direction: column; }
  .strategic-communication-new-message__candidates article > .btn { width: 100%; }
  .strategic-communication-new-message__authorization { grid-template-columns: 1fr; }
  .strategic-communication-templates { padding: .8rem; }
  .strategic-communication-templates > header { align-items: stretch; flex-direction: column; }
  .strategic-communication-templates > header .btn { width: 100%; }
  .strategic-communication-template { align-items: start; grid-template-columns: auto minmax(0, 1fr); }
  .strategic-communication-template__actions { grid-column: 1 / -1; justify-content: flex-end; }
  .strategic-communication-template-editor__fields,
  .strategic-communication-template-editor__context { grid-template-columns: 1fr; }
  .strategic-communication-template-editor__image > div:first-child { align-items: stretch; grid-template-columns: auto 1fr; }
  .strategic-communication-template-editor__image > div:first-child .btn { grid-column: 1 / -1; width: 100%; }
  .strategic-communication-campaigns { padding: .8rem; }
  .strategic-communication-campaigns > header { align-items: stretch; flex-direction: column; gap: .7rem; }
  .strategic-communication-campaign { align-items: start; grid-template-columns: auto minmax(0, 1fr); }
  .strategic-communication-campaign__progress,
  .strategic-communication-campaign__actions { grid-column: 1 / -1; }
  .strategic-communication-campaign__actions { justify-content: flex-end; }
  .strategic-communication-campaign-editor__steps > i { width: 1.2rem; }
  .strategic-communication-campaign-editor__steps > span { font-size: 0; }
  .strategic-communication-campaign-editor__steps > span b { font-size: .8rem; }
  .strategic-communication-campaign-editor__sources,
  .strategic-communication-campaign-editor__entity-groups { grid-template-columns: 1fr; }
  .strategic-communication-campaign-editor__entity-groups > section > header { align-items: stretch; flex-direction: column; }
  .strategic-communication-campaign-editor__entity-groups > section > header > label { flex-basis: auto; width: 100%; }
  .strategic-communication-campaign-editor__people-results article { align-items: stretch; grid-template-columns: 1fr; }
  .strategic-communication-campaign-editor__person-phones { justify-content: stretch; }
  .strategic-communication-campaign-editor__person-phones > button { flex: 1 1 10rem; }
  .strategic-communication-campaign-review__summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .strategic-communication-campaign-review__recipients { display: grid; gap: .65rem; max-height: 24rem; padding: .65rem; }
  .strategic-communication-campaign-review__recipients article { align-items: start; border: 1px solid var(--strategic-border); border-radius: .75rem; grid-template-columns: auto minmax(0, 1fr); padding: .75rem; }
  .strategic-communication-campaign-review__recipients article + article { border-top: 1px solid var(--strategic-border); }
  .strategic-communication-campaign-review__recipients article > span { grid-column: 2; text-align: left; }
  .strategic-communication-campaign-detail__summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .strategic-communication-campaign-detail__list { background: transparent; border: 0; display: grid; gap: .7rem; overflow: visible; }
  .strategic-communication-campaign-detail__list article { align-items: start; border: 1px solid var(--strategic-border); border-radius: .8rem; grid-template-columns: 1.5rem minmax(0, 1fr) auto; padding: .8rem; }
  .strategic-communication-campaign-detail__list article + article { border-top: 1px solid var(--strategic-border); }
  .strategic-communication-campaign-detail__identity { min-width: 0; }
  .strategic-communication-campaign-detail__identity strong,
  .strategic-communication-campaign-detail__identity small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .strategic-communication-campaign-detail__state { grid-column: 2; justify-self: start; }
  .strategic-communication-campaign-detail__attempt { align-items: center; display: flex !important; flex-direction: row !important; gap: .25rem; grid-column: 2; }
  .strategic-communication-campaign-detail__attempt b { display: inline; }
  .strategic-communication-campaign-detail__content { grid-column: 1 / -1; justify-content: center; min-height: 2.75rem; width: 100%; }
  .strategic-communication-campaign-detail__content span { display: inline; }
  .strategic-communication-campaign-detail__list article > p { grid-column: 1 / -1; }
  .strategic-communication-queue__summary { grid-template-columns: 1fr; }
  .strategic-communication-queue__list > article { align-items: start; grid-template-columns: auto minmax(0, 1fr); }
  .strategic-communication-queue__attempt { grid-column: 1; grid-row: 2; }
  .strategic-communication-queue__status { grid-column: 2; }
  .strategic-communication-queue__list > article > .btn { grid-column: 1 / -1; justify-self: stretch; width: 100%; }
  .strategic-communication-audit__toolbar { grid-template-columns: 1fr; padding-left: 1rem; padding-right: 1rem; }
  .strategic-communication-audit__list > article { align-items: start; grid-template-columns: auto minmax(0, 1fr); }
  .strategic-communication-audit__actor,
  .strategic-communication-audit__metadata { grid-column: 2; }
  .strategic-communication-connection-modal__dialog { border-radius: 1rem 1rem 0 0; bottom: 0; left: 0; max-height: calc(100dvh - .5rem); top: auto; transform: none; width: 100%; }
  .strategic-communication-connection-modal__dialog > header,
  .strategic-communication-connection-modal__body,
  .strategic-communication-connection-modal__dialog > footer { padding-left: 1rem; padding-right: 1rem; }
  .strategic-communication-connection-modal__dialog > footer { align-items: stretch; flex-direction: column-reverse; gap: .65rem; }
  .strategic-communication-connection-modal__dialog > footer > div:first-child .btn { width: 100%; }
  .strategic-communication-connection-modal__actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .strategic-communication-connection-modal__actions .btn { width: 100%; }
  .strategic-communication-connection-modal__dialog .btn,
  .strategic-communication-inbox__pagination .btn,
  .strategic-communication-templates__pagination .btn { min-height: 2.75rem; min-width: 2.75rem; }
  .strategic-communication-connection-status { grid-template-columns: auto 1fr; }
  .strategic-communication-connection-status__pulse { grid-column: 1 / -1; }
  .strategic-communication-connection-qr { grid-template-columns: 1fr; text-align: center; }
  .strategic-communication-connection-qr > img,
  .strategic-communication-connection-qr > div:first-child:not(:last-child) { justify-self: center; }
  .strategic-communication-connection-qr ol { display: inline-block; text-align: left; }
  .strategic-communication-connection-form { grid-template-columns: 1fr; }
  .strategic-communication-contacts-modal__toolbar,
  .strategic-communication-contacts-modal__settings { align-items: stretch; grid-template-columns: 1fr; padding-left: 1rem; padding-right: 1rem; }
  .strategic-communication-contacts-modal__toolbar > .btn,
  .strategic-communication-contacts-modal__settings > .btn { width: 100%; }
  .strategic-communication-contacts-modal__summary { flex-wrap: nowrap; overflow-x: auto; padding-left: 1rem; padding-right: 1rem; }
  .strategic-communication-contacts-modal__summary span { flex: 0 0 auto; }
  .strategic-communication-contact__identity { align-items: start; grid-template-columns: auto 1fr; }
  .strategic-communication-contact__identity > .btn { grid-column: 1 / -1; width: 100%; }
  .strategic-communication-contact-phone { align-items: start; grid-template-columns: 1fr auto; }
  .strategic-communication-contact-phone__actions { grid-column: 1 / -1; overflow-x: auto; }
  .strategic-communication-contact-phone__editor-fields { grid-template-columns: 1fr; }
  .strategic-communication-contact-phone__editor-actions { display: grid; grid-template-columns: 1fr 1fr; }
  .strategic-communication-contact-phone__editor-actions .btn { width: 100%; }
}

body.theme-dark .strategic-communication-page { background: var(--ictus-dark-bg); }
body.theme-dark .entity-list--strategic-communication,
body.theme-dark .strategic-communication-dashboard__metrics button,
body.theme-dark .strategic-communication-dashboard__connection-card,
body.theme-dark .strategic-communication-dashboard__queue-card,
body.theme-dark .strategic-communication-dashboard__panel,
body.theme-dark .strategic-communication-dashboard__performance-list > button { background: var(--ictus-dark-card); border-color: var(--ictus-dark-border); }
body.theme-dark .strategic-communication-dashboard__delivery-steps button { background: rgba(255,255,255,.04); }
body.theme-dark .strategic-communication-dashboard__attention-grid button:hover,
body.theme-dark .strategic-communication-dashboard__performance-list > button:hover { background: rgba(56, 191, 229, .08); }
/* Keep dashboard controls readable and rounded above the legacy dark button rules. */
body.theme-dark .strategic-communication-dashboard { --strategic-border: var(--ictus-dark-border); }
body.theme-dark .strategic-communication-dashboard__metrics button { border-color: var(--strategic-border); border-radius: 1rem; }
body.theme-dark .strategic-communication-dashboard__delivery-steps button { border-radius: .8rem; }
body.theme-dark .strategic-communication-dashboard__panel > header h4,
body.theme-dark .strategic-communication-dashboard__delivery-steps strong,
body.theme-dark .strategic-communication-dashboard__campaign-health strong,
body.theme-dark .strategic-communication-dashboard__trend-list strong,
body.theme-dark .strategic-communication-dashboard__attention-grid button strong,
body.theme-dark .strategic-communication-dashboard__performance-list strong { color: var(--ictus-white); }
body.theme-dark .strategic-communication-dashboard__panel > header p,
body.theme-dark .strategic-communication-dashboard__metrics small,
body.theme-dark .strategic-communication-dashboard__delivery-steps small,
body.theme-dark .strategic-communication-dashboard__delivery-steps em,
body.theme-dark .strategic-communication-dashboard__campaign-health small,
body.theme-dark .strategic-communication-dashboard__availability,
body.theme-dark .strategic-communication-dashboard__legend span,
body.theme-dark .strategic-communication-dashboard__trend-list time,
body.theme-dark .strategic-communication-dashboard__attention-grid button small,
body.theme-dark .strategic-communication-dashboard__attention-grid button time,
body.theme-dark .strategic-communication-dashboard__attention-grid > div > p,
body.theme-dark .strategic-communication-dashboard__performance-list small { color: var(--ictus-dark-muted); }
body.theme-dark .strategic-communication-dashboard__panel > header > div > small,
body.theme-dark .strategic-communication-dashboard__metrics em { color: var(--ictus-cyan-light); }
body.theme-dark #main.strategic-communication-page .strategic-communication-dashboard__campaign-health > .btn { border-color: var(--ictus-cyan-light); color: var(--ictus-cyan-light); }
body.theme-dark .strategic-communication-dashboard__attention-grid h5 { font-size: .9rem; }
body.theme-dark .strategic-communication-dashboard__attention-grid button > i,
body.theme-dark .strategic-communication-dashboard__performance-list button > i { color: var(--ictus-dark-muted); }
body.theme-dark .strategic-communication-dashboard [data-button-layout="communication-dashboard"]:focus-visible { outline-color: var(--ictus-cyan-light); }
body.theme-dark .strategic-communication-dashboard__performance-list .has-failures strong { color: #ff9da9; }
body.theme-dark .strategic-communication-dashboard__trend-list article > div { background: rgba(255,255,255,.08); }
@media (max-width: 767.98px) {
  body.theme-dark .strategic-communication-dashboard__performance-list > button { border-radius: .8rem; }
}
body.theme-dark .strategic-communication-inbox,
body.theme-dark .strategic-communication-thread__messages { background: var(--ictus-dark-bg); }
body.theme-dark .strategic-communication-inbox__list,
body.theme-dark .strategic-communication-inbox__list-heading,
body.theme-dark .strategic-communication-inbox__pagination,
body.theme-dark .strategic-communication-conversation,
body.theme-dark .strategic-communication-thread__header,
body.theme-dark .strategic-communication-thread__composer-preview { background: var(--ictus-dark-card); border-color: var(--ictus-dark-border); }
body.theme-dark .strategic-communication-composer,
body.theme-dark .strategic-communication-composer__attachment,
body.theme-dark .strategic-communication-new-message__candidates article,
body.theme-dark .strategic-communication-new-message__preview > header,
body.theme-dark .strategic-communication-new-message__authorization { background: var(--ictus-dark-card); border-color: var(--ictus-dark-border); }
body.theme-dark .strategic-communication-template,
body.theme-dark .strategic-communication-template-editor__form,
body.theme-dark .strategic-communication-template-editor__preview,
body.theme-dark .strategic-communication-template-editor__candidates { background: var(--ictus-dark-card); border-color: var(--ictus-dark-border); }
body.theme-dark .strategic-communication-campaign,
body.theme-dark .strategic-communication-campaign-editor__panel,
body.theme-dark .strategic-communication-campaign-review__grid > section,
body.theme-dark .strategic-communication-campaign-review__grid > aside { background: var(--ictus-dark-card); border-color: var(--ictus-dark-border); }
body.theme-dark .strategic-communication-campaign-editor__source-hint,
body.theme-dark .strategic-communication-campaign-editor__entity-groups > section > header,
body.theme-dark .strategic-communication-campaign-editor__entity-groups > section > header > label { background: rgba(255,255,255,.05); border-color: var(--ictus-dark-border); }
body.theme-dark .strategic-communication-campaign-editor__entity-groups > section,
body.theme-dark .strategic-communication-campaign-editor__direct,
body.theme-dark .strategic-communication-campaign-editor__people-results { border-color: var(--ictus-dark-border); }
body.theme-dark .strategic-communication-campaign-editor__entity-groups > section > header input,
body.theme-dark .strategic-communication-campaign-editor__options > label > span { color: var(--ictus-white); }
body.theme-dark .strategic-communication-queue__summary article,
body.theme-dark .strategic-communication-queue__list,
body.theme-dark .strategic-communication-queue__list > article,
body.theme-dark .strategic-communication-queue__reprocess { background: var(--ictus-dark-card); border-color: var(--ictus-dark-border); }
body.theme-dark .strategic-communication-audit__body,
body.theme-dark .strategic-communication-audit__list,
body.theme-dark .strategic-communication-audit__list > article,
body.theme-dark .strategic-communication-audit__categories button { background: var(--ictus-dark-card); border-color: var(--ictus-dark-border); }
body.theme-dark .strategic-communication-audit__categories button { color: var(--ictus-dark-muted); }
body.theme-dark .strategic-communication-audit__categories button.is-active { background: #0d5ca6; color: #fff; }
body.theme-dark .strategic-communication-audit__metadata span { background: rgba(255,255,255,.06); color: var(--ictus-dark-muted); }
body.theme-dark .strategic-communication-labels__catalog,
body.theme-dark .strategic-communication-labels__choices button { background: var(--ictus-dark-card); border-color: var(--ictus-dark-border); color: var(--ictus-dark-muted); }
body.theme-dark .strategic-communication-labels__choices button.is-selected { background: rgba(56, 191, 229, .12); border-color: #38bfe5; color: var(--ictus-white); }
body.theme-dark .strategic-communication-queue__explanation { background: rgba(13, 92, 166, .13); border-color: var(--ictus-dark-border); color: var(--ictus-dark-muted); }
body.theme-dark .strategic-communication-template-editor__variables { background: rgba(56, 191, 229, .08); }
body.theme-dark .strategic-communication-template__content h4,
body.theme-dark .strategic-communication-template-editor__heading h4 { color: var(--ictus-white); }
body.theme-dark .strategic-communication-conversation:hover,
body.theme-dark .strategic-communication-conversation.is-selected,
body.theme-dark .strategic-communication-conversation.is-unread { background: rgba(56, 191, 229, .12); }
body.theme-dark .strategic-communication-message__bubble { background: #253449; }
body.theme-dark .strategic-communication-message.is-outbound .strategic-communication-message__bubble { background: #174d3b; }
body.theme-dark .strategic-communication-message__bubble p { color: var(--ictus-white); }
body.theme-dark .strategic-communication-message__media,
body.theme-dark .strategic-communication-message__file,
body.theme-dark .strategic-communication-message__attachment-safe { background: rgba(255,255,255,.06); border-color: var(--ictus-dark-border); }
body.theme-dark .strategic-communication-message__media-heading strong,
body.theme-dark .strategic-communication-message__file strong,
body.theme-dark .strategic-communication-message__attachment-safe strong { color: var(--ictus-white); }
body.theme-dark .strategic-communication-page__options-menu .dropdown-item { color: var(--ictus-white); }
body.theme-dark .strategic-communication-connection-modal__dialog,
body.theme-dark .strategic-communication-connection-status,
body.theme-dark .strategic-communication-contact { background: var(--ictus-dark-card); border-color: var(--ictus-dark-border); }
body.theme-dark .strategic-communication-dashboard__metrics strong,
body.theme-dark .strategic-communication-dashboard__connection-card h4,
body.theme-dark .strategic-communication-dashboard__queue-card h4,
body.theme-dark .strategic-communication-page__empty h3,
body.theme-dark .strategic-communication-connection-modal__dialog > header h3,
body.theme-dark .strategic-communication-connection-status h4,
body.theme-dark .strategic-communication-connection-qr h4 { color: var(--ictus-white); }
body.theme-dark .strategic-communication-conversation__top strong,
body.theme-dark .strategic-communication-inbox__list-heading strong,
body.theme-dark .strategic-communication-thread__header strong,
body.theme-dark .strategic-communication-thread__placeholder h3,
body.theme-dark .strategic-communication-inbox__empty strong { color: var(--ictus-white); }

.strategic-communication-integrator-banner {
  display: flex; align-items: center; gap: 1rem; padding: 1rem 1.25rem;
  margin-bottom: 1.25rem; border: 1px solid var(--ictus-border, #d7e2ee);
  border-radius: 1rem; background: var(--ictus-card-bg, #fff); text-align: left;
}
.strategic-communication-integrator-banner > i { flex: 0 0 auto; font-size: 1.4rem; color: var(--ictus-primary); }
.strategic-communication-integrator-banner > div { flex: 1; min-width: 0; }
.strategic-communication-integrator-banner p { margin: .25rem 0 0; font-size: .875rem; color: var(--ictus-text-muted, #64748b); }
.strategic-communication-integrator-banner > button { flex: 0 0 auto; white-space: nowrap; }
.strategic-communication-integrator-status .strategic-communication-connection-modal__dialog { max-width: 42rem; }
.strategic-communication-integrator-status .strategic-communication-connection-status { align-items: flex-start; grid-template-columns: 3rem minmax(0, 1fr); text-align: left; }
.strategic-communication-integrator-status .strategic-communication-connection-status > span:first-child { flex: 0 0 3rem; width: 3rem; height: 3rem; }
.strategic-communication-integrator-status .strategic-communication-connection-status > div { flex: 1; min-width: 0; }
.strategic-communication-integrator-status__details { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin: 1.25rem 0; text-align: left; }
.strategic-communication-integrator-status__details dt { font-size: .75rem; color: var(--ictus-text-muted, #64748b); font-weight: 500; }
.strategic-communication-integrator-status__details dd { margin: .25rem 0 0; overflow-wrap: anywhere; }
.strategic-communication-integrator-status__guidance { display: flex; align-items: flex-start; gap: .5rem; margin: 1.25rem 0 0; padding-top: 1rem; border-top: 1px solid var(--ictus-border, #d7e2ee); font-size: .875rem; text-align: left; }
.strategic-communication-integrator-status__guidance > i { flex: 0 0 auto; }
body.theme-dark .strategic-communication-integrator-banner { background: var(--ictus-dark-card, #172338); }
@media (max-width: 575.98px) {
  .strategic-communication-integrator-banner { align-items: flex-start; flex-wrap: wrap; gap: .75rem; }
  .strategic-communication-integrator-banner > div { flex-basis: calc(100% - 2.25rem); }
  .strategic-communication-integrator-banner > button { margin-left: 2.25rem; }
  .strategic-communication-integrator-status__details { grid-template-columns: minmax(0, 1fr); }
}
