/* ==============================================================================================
   AGENT ENGAGEMENT CENTER — TABS, CAMPAIGN HISTORY AND THE SMS MODULE

   Added with the redesign. The campaign-progress cards these replace were the visual half of the
   reported defect: oversized, eleven figures each, and headed "100% Completed" on campaigns with
   no confirmed deliveries. A table is the right shape for comparing campaigns; a card is the right
   shape for the one thing you are working on.

   Kept in its own file rather than appended to engagement.css so the redesign can be reverted
   without disturbing the styles the rest of that page still uses.
   ============================================================================================== */

/* ---------- Tabs ---------- */

.wr-eng2__tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    margin: 4px 0 16px;
    border-bottom: 1px solid var(--wr3-border, #e4e8f0);
}

.wr-eng2__tab {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 10px 15px;
    border: 0;
    border-bottom: 2px solid transparent;
    background: none;
    color: var(--wr3-muted, #5a6781);
    font-size: 0.87rem;
    font-weight: 600;
    cursor: pointer;
    white-space: nowrap;
}

.wr-eng2__tab:hover { color: var(--wr3-navy, #0c1a3a); }

.wr-eng2__tab.is-active {
    color: var(--wr3-blue, #1d4ed8);
    border-bottom-color: var(--wr3-blue, #1d4ed8);
}

.wr-eng2__tabpanel { padding: 18px; }
.wr-eng2__tabtitle { margin: 0 0 6px; font-size: 1.05rem; }
.wr-eng2__tabintro { margin: 0 0 16px; color: var(--wr3-muted, #5a6781); font-size: 0.88rem; }

.wr-eng2__cardnote {
    display: block;
    font-size: 0.72rem;
    font-style: normal;
    color: var(--wr3-muted, #5a6781);
}

/* ---------- The single configuration banner ----------
   One banner, at the top, never repeated per campaign. Repeating a warning on every row is how
   administrators learn to stop reading warnings. */

.wr-eng2__configwarn {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 14px;
    padding: 10px 14px;
    border: 1px solid #fde68a;
    border-radius: 10px;
    background: #fffbeb;
    color: #78350f;
    font-size: 0.84rem;
}

.wr-eng2__configwarn a { margin-left: auto; white-space: nowrap; font-weight: 600; }

/* ---------- Campaign history table ---------- */

.wr-camphist__toolbar {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 12px;
    flex-wrap: wrap;
}

.wr-camphist__toggles { display: flex; gap: 16px; }

.wr-camphist__toggle,
.wr-smstpl__toggle,
.wr-smsrep2__toggle {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.83rem;
    color: var(--wr3-muted, #5a6781);
    cursor: pointer;
}

.wr-camphist__count { margin: 0 0 0 auto; font-size: 0.82rem; color: var(--wr3-muted, #5a6781); }

.wr-camphist__scroll,
.wr-smsrep2__scroll { overflow-x: auto; }

.wr-camphist__table { width: 100%; font-size: 0.84rem; }
.wr-camphist__table th { white-space: nowrap; }
.wr-camphist__num { text-align: right; white-space: nowrap; }
.wr-camphist__num.is-bad { color: #b91c1c; font-weight: 600; }
.wr-camphist__audience, .wr-camphist__engagement { color: var(--wr3-muted, #5a6781); }
.wr-camphist__table tr.is-archived { opacity: 0.6; }

.wr-camphist__by {
    display: block;
    font-size: 0.74rem;
    font-weight: 400;
    color: var(--wr3-muted, #5a6781);
}

.wr-camphist__tag {
    display: inline-block;
    margin-left: 6px;
    padding: 1px 7px;
    border-radius: 999px;
    background: #e0e7ff;
    color: #3730a3;
    font-size: 0.68rem;
    font-weight: 700;
    text-transform: uppercase;
}

.wr-camphist__tag.is-muted { background: #f1f5f9; color: #64748b; }

.wr-camphist__channel { display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; }
.wr-camphist__channel.is-sms { color: #7c3aed; }
.wr-camphist__channel.is-email { color: #1d4ed8; }

/* The delivered percentage. "is-unknown" is the dash shown when NO provider event has arrived —
   deliberately not a zero, which would read as "nobody received it". */
.wr-camphist__pct { margin-left: 6px; font-size: 0.76rem; color: var(--wr3-muted, #5a6781); }
.wr-camphist__pct.is-unknown { cursor: help; }

.wr-camphist__badge,
.wr-smsrep2__badge {
    display: inline-block;
    padding: 3px 9px;
    border-radius: 999px;
    background: #f1f5f9;
    color: #334155;
    font-size: 0.74rem;
    font-weight: 600;
    white-space: nowrap;
}

/* Green is reserved for the one delivery status that has been fully confirmed. */
.wr-camphist__badge.is-green, .wr-smsrep2__badge.is-delivered { background: #dcfce7; color: #166534; }
.wr-camphist__badge.is-blue, .wr-smsrep2__badge.is-sent { background: #dbeafe; color: #1e40af; }
.wr-camphist__badge.is-yellow { background: #fef3c7; color: #92400e; }
.wr-camphist__badge.is-red,
.wr-smsrep2__badge.is-failed,
.wr-smsrep2__badge.is-undelivered { background: #fee2e2; color: #991b1b; }
.wr-camphist__badge.is-gray, .wr-smsrep2__badge.is-excluded { background: #f1f5f9; color: #64748b; }

/* Only ever rendered while a campaign is Processing — see CampaignHealth.ShowProgressBar. */
.wr-camphist__bar {
    margin-top: 5px;
    height: 4px;
    border-radius: 999px;
    background: #e2e8f0;
    overflow: hidden;
}

.wr-camphist__bar > span { display: block; height: 100%; background: var(--wr3-blue, #1d4ed8); }

.wr-camphist__actions { text-align: right; }
.wr-camphist__menu { position: relative; display: inline-block; }

.wr-camphist__dropdown {
    position: absolute;
    right: 0;
    top: calc(100% + 4px);
    z-index: 40;
    min-width: 220px;
    padding: 5px;
    border: 1px solid var(--wr3-border, #e4e8f0);
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 12px 28px rgba(12, 26, 58, 0.16);
}

.wr-camphist__dropdown a,
.wr-camphist__dropdown button,
.wr-camphist__cannot {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    padding: 7px 10px;
    border: 0;
    border-radius: 7px;
    background: none;
    color: inherit;
    font-size: 0.82rem;
    text-align: left;
    text-decoration: none;
    cursor: pointer;
}

.wr-camphist__dropdown a:hover,
.wr-camphist__dropdown button:not(:disabled):hover { background: #f1f5f9; }
.wr-camphist__dropdown button:disabled { opacity: 0.45; cursor: not-allowed; }
.wr-camphist__dropdown button.is-danger { color: #b91c1c; }
.wr-camphist__cannot { color: #94a3b8; cursor: help; }

.wr-camphist__confirm {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    background: #fef2f2;
    font-size: 0.84rem;
}

.wr-camphist__pager {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    margin-top: 14px;
}

.wr-camphist__pageof { font-size: 0.83rem; color: var(--wr3-muted, #5a6781); }

.wr-camphist__empty,
.wr-smstpl__empty,
.wr-smsrep2__empty { padding: 40px 20px; text-align: center; color: var(--wr3-muted, #5a6781); }

.wr-camphist__empty i,
.wr-smstpl__empty i,
.wr-smsrep2__empty i { font-size: 1.8rem; opacity: 0.35; }

.wr-camphist__loading, .wr-smstpl__loading { padding: 24px; text-align: center; color: var(--wr3-muted, #5a6781); }

/* ---------- Email template catalogue ---------- */

.wr-eng2__tplgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 12px; }

.wr-eng2__tpl {
    padding: 14px 16px;
    border: 1px solid var(--wr3-border, #e4e8f0);
    border-radius: 12px;
    background: #fff;
}

.wr-eng2__tpl h3 { margin: 0 0 6px; font-size: 0.94rem; }
.wr-eng2__tplsubject, .wr-eng2__tplpre, .wr-eng2__tplcta { margin: 4px 0; font-size: 0.81rem; }
.wr-eng2__tplpre { color: var(--wr3-muted, #5a6781); }
.wr-eng2__tplcta code { font-size: 0.76rem; }

/* ---------- Reports links ---------- */

.wr-eng2__reportlinks { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 12px; }

.wr-eng2__reportlink {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 16px;
    border: 1px solid var(--wr3-border, #e4e8f0);
    border-radius: 12px;
    background: #fff;
    text-decoration: none;
    color: inherit;
}

.wr-eng2__reportlink:hover { border-color: var(--wr3-blue, #1d4ed8); }
.wr-eng2__reportlink i { font-size: 1.15rem; color: var(--wr3-blue, #1d4ed8); }
.wr-eng2__reportlink strong { display: block; margin-bottom: 3px; }
.wr-eng2__reportlink span { font-size: 0.82rem; color: var(--wr3-muted, #5a6781); }

/* ---------- Bulk action bar ---------- */

.wr-eng2__stickycounts { display: flex; flex-direction: column; gap: 2px; }
.wr-eng2__stickymain { font-size: 0.88rem; }
.wr-eng2__stickysub { font-size: 0.76rem; opacity: 0.85; }
.wr-eng2__stickyactions { display: flex; gap: 8px; }

.wr-eng2__linkbtn {
    margin-left: 6px;
    border: 0;
    background: none;
    color: #93c5fd;
    font-size: inherit;
    text-decoration: underline;
    cursor: pointer;
}

.wr-eng2__exclusions {
    position: fixed;
    left: 50%;
    bottom: 92px;
    transform: translateX(-50%);
    z-index: 901;
    width: min(760px, calc(100vw - 32px));
    max-height: 46vh;
    overflow: auto;
    padding: 14px 16px;
    border: 1px solid var(--wr3-border, #e4e8f0);
    border-radius: 13px;
    background: #fff;
    box-shadow: 0 16px 40px rgba(12, 26, 58, 0.24);
}

.wr-eng2__exclusions h3 { margin: 0 0 10px; font-size: 0.92rem; }

.wr-eng2__blockreason {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 999px;
    background: #fee2e2;
    color: #991b1b;
    font-size: 0.74rem;
    font-weight: 600;
    white-space: nowrap;
}

.wr-eng2__blockdetail { font-size: 0.79rem; color: var(--wr3-muted, #5a6781); }

/* ---------- Modals, the SMS composer and the test send ---------- */

.wr-modal-backdrop { position: fixed; inset: 0; z-index: 1040; background: rgba(12, 26, 58, 0.5); }

.wr-modal {
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 1050;
    width: min(680px, calc(100vw - 32px));
    max-height: calc(100vh - 64px);
    overflow: auto;
    padding: 22px 24px;
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 24px 60px rgba(12, 26, 58, 0.3);
}

.wr-modal h2 { margin: 0 0 14px; font-size: 1.1rem; }

.wr-eng2__smsrow { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.wr-eng2__smsbody { font-family: inherit; resize: vertical; }
.wr-eng2__smscounts { margin: 0 0 12px; font-size: 0.84rem; color: var(--wr3-muted, #5a6781); }

.wr-eng2__smspreview {
    margin: 14px 0;
    padding: 14px;
    border: 1px solid var(--wr3-border, #e4e8f0);
    border-radius: 11px;
    background: #f8fafc;
}

.wr-eng2__smspreview h3 { margin: 0 0 8px; font-size: 0.86rem; }
.wr-eng2__smstotals { margin: 8px 0 0; font-size: 0.79rem; color: var(--wr3-muted, #5a6781); }
.wr-eng2__smstotals em { display: block; font-size: 0.75rem; }

.wr-eng2__testbubble,
.wr-smstpl__bubble {
    margin: 0;
    padding: 11px 14px;
    border-radius: 15px 15px 15px 4px;
    background: #e8f0fe;
    color: #0c1a3a;
    font-size: 0.87rem;
    line-height: 1.45;
    white-space: pre-wrap;
    word-break: break-word;
}

.wr-smstpl__bubble--big { font-size: 0.92rem; }

.wr-eng2__testcounts,
.wr-smstpl__counts { margin: 7px 0 0; font-size: 0.78rem; color: var(--wr3-muted, #5a6781); }
.wr-eng2__testcounts.is-warning,
.wr-smstpl__counts.is-warning { color: #92400e; }

.wr-eng2__smsactions,
.wr-eng2__testactions,
.wr-smstpl__editoractions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 16px; }

.wr-eng2__smsnote,
.wr-eng2__testnote { margin: 12px 0 0; font-size: 0.78rem; color: var(--wr3-muted, #5a6781); }

/* Shown unmasked so a human can confirm the destination before one message is sent to it. */
.wr-eng2__testnumber { margin: 0 0 14px; font-size: 1.12rem; letter-spacing: 0.01em; }
.wr-eng2__testnumber strong { font-variant-numeric: tabular-nums; }

.wr-eng2__testresult {
    position: fixed;
    left: 50%;
    bottom: 18px;
    transform: translateX(-50%);
    z-index: 1060;
    display: flex;
    align-items: center;
    gap: 14px;
    width: min(720px, calc(100vw - 32px));
    padding: 12px 16px;
    border-radius: 12px;
    background: #ecfdf5;
    border: 1px solid #a7f3d0;
    color: #065f46;
    font-size: 0.84rem;
}

.wr-eng2__testresult.is-error { background: #fef2f2; border-color: #fecaca; color: #991b1b; }

/* ---------- SMS template manager ---------- */

.wr-smstpl__toolbar { display: flex; align-items: center; gap: 14px; margin-bottom: 14px; flex-wrap: wrap; }
.wr-smstpl__filters { display: flex; align-items: center; gap: 14px; }
.wr-smstpl__toolbar > button { margin-left: auto; }

.wr-smstpl__notice { margin-bottom: 12px; padding: 10px 14px; border-radius: 10px; font-size: 0.84rem; }
.wr-smstpl__notice.is-ok { background: #ecfdf5; border: 1px solid #a7f3d0; color: #065f46; }
.wr-smstpl__notice.is-error { background: #fef2f2; border: 1px solid #fecaca; color: #991b1b; }

.wr-smstpl__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 14px; }

.wr-smstpl__card {
    display: flex;
    flex-direction: column;
    gap: 9px;
    padding: 16px;
    border: 1px solid var(--wr3-border, #e4e8f0);
    border-radius: 13px;
    background: #fff;
}

.wr-smstpl__card.is-archived, .wr-smstpl__card.is-inactive { opacity: 0.68; }
.wr-smstpl__card header { display: flex; justify-content: space-between; gap: 10px; }
.wr-smstpl__card h3 { margin: 0 0 3px; font-size: 0.95rem; }
.wr-smstpl__category { font-size: 0.76rem; color: var(--wr3-muted, #5a6781); }
.wr-smstpl__flags { display: flex; flex-direction: column; gap: 4px; align-items: flex-end; }

.wr-smstpl__flag { padding: 2px 8px; border-radius: 999px; font-size: 0.68rem; font-weight: 700; text-transform: uppercase; }
.wr-smstpl__flag.is-default { background: #dcfce7; color: #166534; }
.wr-smstpl__flag.is-muted { background: #f1f5f9; color: #64748b; }

.wr-smstpl__body { margin: 0; font-size: 0.84rem; line-height: 1.5; white-space: pre-wrap; }
.wr-smstpl__hint { display: block; margin-top: 4px; font-size: 0.75rem; color: var(--wr3-muted, #5a6781); }
.wr-smstpl__dates { font-size: 0.74rem; color: var(--wr3-muted, #5a6781); }
.wr-smstpl__actions { display: flex; flex-wrap: wrap; gap: 6px; margin-top: auto; }
.wr-smstpl__actions .is-danger { color: #b91c1c; border-color: #fecaca; }

.wr-smstpl__confirm {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-top: 8px;
    padding: 9px 11px;
    border-radius: 9px;
    background: #fef2f2;
    font-size: 0.8rem;
}

.wr-smstpl__field { display: block; margin-bottom: 13px; }
.wr-smstpl__field > label { display: block; margin-bottom: 5px; font-size: 0.83rem; font-weight: 600; }
.wr-smstpl__textarea { font-family: inherit; resize: vertical; }
.wr-smstpl__checks { display: flex; gap: 18px; }
.wr-smstpl__checks label { display: inline-flex; align-items: center; gap: 6px; font-size: 0.84rem; }
.wr-smstpl__fields { display: flex; flex-wrap: wrap; align-items: center; gap: 5px; margin-top: 8px; font-size: 0.77rem; }

.wr-smstpl__chip {
    padding: 2px 8px;
    border: 1px solid var(--wr3-border, #e4e8f0);
    border-radius: 999px;
    background: #f8fafc;
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    font-size: 0.72rem;
    cursor: pointer;
}

.wr-smstpl__chip:hover { border-color: var(--wr3-blue, #1d4ed8); }

.wr-smstpl__preview {
    margin: 14px 0;
    padding: 14px;
    border: 1px solid var(--wr3-border, #e4e8f0);
    border-radius: 11px;
    background: #f8fafc;
}

.wr-smstpl__preview h3 { margin: 0 0 8px; font-size: 0.85rem; }

.wr-smstpl__errors, .wr-smstpl__warnings { margin: 10px 0; padding: 10px 14px 10px 30px; border-radius: 10px; font-size: 0.81rem; }
.wr-smstpl__errors { background: #fef2f2; border: 1px solid #fecaca; color: #991b1b; }
.wr-smstpl__warnings { background: #fffbeb; border: 1px solid #fde68a; color: #78350f; }

/* ---------- SMS reports ---------- */

.wr-smsrep2__notice {
    display: flex;
    gap: 11px;
    margin-bottom: 14px;
    padding: 12px 15px;
    border: 1px solid #fde68a;
    border-radius: 11px;
    background: #fffbeb;
    color: #78350f;
    font-size: 0.84rem;
}

.wr-smsrep2__cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px; margin-bottom: 14px; }

.wr-smsrep2__card {
    padding: 13px 15px;
    border: 1px solid var(--wr3-border, #e4e8f0);
    border-radius: 12px;
    background: #fff;
}

.wr-smsrep2__card.is-green { border-left: 3px solid #16a34a; }
.wr-smsrep2__card.is-blue { border-left: 3px solid #1d4ed8; }
.wr-smsrep2__card.is-red { border-left: 3px solid #dc2626; }
.wr-smsrep2__card.is-yellow { border-left: 3px solid #d97706; }
.wr-smsrep2__card.is-gray { border-left: 3px solid #94a3b8; }

.wr-smsrep2__cardnum { display: block; font-size: 1.3rem; font-weight: 700; font-variant-numeric: tabular-nums; }
.wr-smsrep2__cardlabel { display: block; font-size: 0.76rem; color: var(--wr3-muted, #5a6781); }

.wr-smsrep2__filterrow { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 12px; padding: 14px; }
.wr-smsrep2__field label { display: block; margin-bottom: 4px; font-size: 0.79rem; font-weight: 600; }
.wr-smsrep2__detailrow > td { background: #f8fafc; padding: 12px 14px; }
.wr-smsrep2__sid { font-size: 0.72rem; word-break: break-all; }
.wr-smsrep2__error strong { display: block; color: #b91c1c; font-size: 0.76rem; }
.wr-smsrep2__error span { font-size: 0.75rem; color: var(--wr3-muted, #5a6781); }
.wr-smsrep2__why { display: block; font-size: 0.72rem; color: var(--wr3-muted, #5a6781); }
.wr-smsrep2__tag { margin-left: 6px; padding: 1px 7px; border-radius: 999px; background: #e0e7ff; color: #3730a3; font-size: 0.68rem; font-weight: 700; }
.wr-smsrep2__table td.is-bad, td.is-bad { color: #b91c1c; font-weight: 600; }

/* ---------- Responsive ---------- */

@media (max-width: 900px) {
    .wr-eng2__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .wr-eng2__smsrow { grid-template-columns: 1fr; }
    .wr-eng2__sticky { flex-direction: column; gap: 10px; border-radius: 15px; width: min(440px, calc(100vw - 24px)); }
    .wr-eng2__stickyactions { flex-wrap: wrap; justify-content: center; }
    .wr-smstpl__grid { grid-template-columns: 1fr; }
    .wr-eng2__tplgrid, .wr-eng2__reportlinks { grid-template-columns: 1fr; }
}

/* ==============================================================================================
   SMS CONSENT AND THE CHANNEL-AWARE COMPOSER

   Added with the SMS workflow fix. The SMS icon is no longer disabled by an undocumented consent
   standing -- it is styled "caution" instead, so the page shows that something needs attention
   without making the control dead.
   ============================================================================================== */

.wr-eng2__iconbtn.is-caution { color: #b45309; }
.wr-eng2__iconbtn.is-caution:hover { color: #92400e; }

/* Step 3 header with the channel switch. */
.wr-eng2__stephead {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px;
}

.wr-eng2__stephead h2 { margin: 0; }

.wr-eng2__channeltabs { display: inline-flex; gap: 4px; padding: 4px; border-radius: 10px; background: #f1f5f9; }

.wr-eng2__channeltabs button {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 14px;
    border: 0;
    border-radius: 8px;
    background: none;
    color: #475569;
    font-size: 0.84rem;
    font-weight: 600;
    cursor: pointer;
}

.wr-eng2__channeltabs button.is-active { background: #fff; color: #0c1a3a; box-shadow: 0 1px 3px rgba(12,26,58,.16); }
.wr-eng2__channeltabs button:disabled { opacity: 0.5; cursor: not-allowed; }

/* Who the message is going to, at the top of the composer. */
.wr-eng2__smsrecipient {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    margin: 0 0 14px;
    padding: 12px 14px;
    border: 1px solid var(--wr3-border, #e4e8f0);
    border-radius: 11px;
    background: #f8fafc;
    font-size: 0.87rem;
}

.wr-eng2__smsrecipient > div { display: flex; flex-direction: column; gap: 2px; }
.wr-eng2__smsrecipient > div + * { margin-left: auto; }

/* Shown in full, not masked: an administrator about to text somebody must be able to check the
   number is the one they mean. Tables and reports use the masked form. */
.wr-eng2__consentnum { font-variant-numeric: tabular-nums; letter-spacing: 0.01em; color: var(--wr3-muted, #5a6781); }

.wr-eng2__blockreason.is-green { background: #dcfce7; color: #166534; }
.wr-eng2__blockreason.is-yellow { background: #fef3c7; color: #92400e; }
.wr-eng2__blockreason.is-red { background: #fee2e2; color: #991b1b; }
.wr-eng2__blockreason.is-gray { background: #f1f5f9; color: #475569; }

/* The consent dialog. */
.wr-eng2__consentwho { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 0 0 12px; }

.wr-eng2__consentwarn {
    display: flex;
    gap: 9px;
    margin: 0 0 16px;
    padding: 11px 13px;
    border: 1px solid #fde68a;
    border-radius: 10px;
    background: #fffbeb;
    color: #78350f;
    font-size: 0.82rem;
    line-height: 1.5;
}

.wr-eng2__consentwarn i { margin-top: 2px; }

.wr-eng2__consentconfirm {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    margin: 4px 0 6px;
    padding: 12px 13px;
    border: 1px solid var(--wr3-border, #e4e8f0);
    border-radius: 10px;
    font-size: 0.83rem;
    line-height: 1.5;
}

.wr-eng2__consentconfirm input { margin-top: 3px; flex: 0 0 auto; }
.wr-eng2__consent .wr-eng2__field { margin-bottom: 13px; }
.wr-eng2__consent .wr-eng2__field > span { display: block; margin-bottom: 5px; font-size: 0.83rem; font-weight: 600; }
