/* Campaign room in the composer look the other owner sheets share: paper,
   white cards, mono eyebrows, pill fields, one black button. Loaded after
   theme.css and scoped by the overlay's id so it outranks the room's own
   rules and the theme defence without touching any markup or handler.
   Tokens match composer-sheet-recipe: paper #FBFBF9, card #FFFFFF, line
   #EAEAE6, field #F4F4F1, ink #111214, muted #63635F / #70706B. */

#mobile-campaign-overlay.mcamp-overlay,
#mobile-campaign-overlay.mcamp-overlay .mcamp {
    --mc-ink: #111214; --mc-body: #4E4E4A; --mc-mute: #63635F; --mc-faint: #A3A3A0;
    --mc-paper: #FBFBF9; --mc-wash: #F4F4F1; --mc-line: #EAEAE6; --mc-radius: 18px;
}
#mobile-campaign-overlay.mcamp-overlay .mcamp,
#mobile-campaign-overlay.mcamp-overlay .mcamp * {
    font-family: var(--font-family, Manrope), -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif !important;
    letter-spacing: 0;
}
#mobile-campaign-overlay.mcamp-overlay .mcamp,
#mobile-campaign-overlay.mcamp-overlay .mcamp-overlay__body { background: #FBFBF9 !important; color: #111214 !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp-overlay__bar { background: #FBFBF9 !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp-overlay__title,
#mobile-campaign-overlay.mcamp-overlay .mcamp__mono-sm,
#mobile-campaign-overlay.mcamp-overlay .mcamp__label,
#mobile-campaign-overlay.mcamp-overlay .mcamp__section-title,
#mobile-campaign-overlay.mcamp-overlay .mcamp__stat-label,
#mobile-campaign-overlay.mcamp-overlay .mcamp__row-codes {
    font-family: "IBM Plex Mono", ui-monospace, Menlo, monospace !important;
    font-size: 9px !important; font-weight: 500 !important; letter-spacing: 0.14em !important; text-transform: uppercase !important;
    color: #70706B !important; -webkit-text-fill-color: #70706B !important;
}
#mobile-campaign-overlay.mcamp-overlay .mcamp__label { display: block; margin: 14px 6px 8px !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__section-title { display: block; margin: 22px 6px 8px !important; }

/* ---- headings ---- */
#mobile-campaign-overlay.mcamp-overlay .mcamp__wiztitle,
#mobile-campaign-overlay.mcamp-overlay .mcamp__display {
    font-size: 24px !important; font-weight: 800 !important; line-height: 1.1 !important; letter-spacing: -0.02em !important; text-transform: none !important;
    color: #111214 !important; -webkit-text-fill-color: #111214 !important;
}
#mobile-campaign-overlay.mcamp-overlay .mcamp__note { font-size: 13px !important; line-height: 1.5 !important; color: #63635F !important; -webkit-text-fill-color: #63635F !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__wizhead { background: #FBFBF9 !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__wizhead > div:first-child { padding: 10px 0 10px !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__prog { display: flex !important; gap: 4px !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__prog-seg { flex: 1 !important; height: 3px !important; border-radius: 999px !important; background: #EAEAE6 !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__prog-seg.is-on { background: #111214 !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__stepbar { border-radius: 999px !important; background: #EAEAE6 !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__stepbar.is-on { background: #111214 !important; }

/* ---- fields: pills, not underlines ---- */
#mobile-campaign-overlay.mcamp-overlay .mcamp__input,
#mobile-campaign-overlay.mcamp-overlay .mcamp__input--title,
#mobile-campaign-overlay.mcamp-overlay .mcamp__input:focus,
#mobile-campaign-overlay.mcamp-overlay .mcamp__datebtn,
#mobile-campaign-overlay.mcamp-overlay .mcamp__search {
    box-sizing: border-box !important; width: 100% !important; height: 46px !important; margin: 0 !important; padding: 0 16px !important;
    border: 0 !important; border-radius: 14px !important; background: #F4F4F1 !important; box-shadow: none !important; outline: none !important;
    font-size: 14px !important; font-weight: 600 !important; line-height: 46px !important; text-transform: none !important;
    color: #111214 !important; -webkit-text-fill-color: #111214 !important; caret-color: #0FBFA4 !important;
    -webkit-appearance: none !important; appearance: none !important;
}
#mobile-campaign-overlay.mcamp-overlay .mcamp__input::placeholder,
#mobile-campaign-overlay.mcamp-overlay .mcamp__search::placeholder { color: #A3A3A0 !important; -webkit-text-fill-color: #A3A3A0 !important; opacity: 1 !important; }
#mobile-campaign-overlay.mcamp-overlay textarea.mcamp__input,
#mobile-campaign-overlay.mcamp-overlay .mcamp__paste,
#mobile-campaign-overlay.mcamp-overlay [data-field="instructions"] {
    height: auto !important; min-height: 96px !important; padding: 12px 16px !important; border-radius: 18px !important; line-height: 1.5 !important; font-weight: 500 !important; resize: none !important;
}
#mobile-campaign-overlay.mcamp-overlay .mcamp__datebtn { display: flex !important; align-items: center !important; justify-content: space-between !important; line-height: 1 !important; color: #A3A3A0 !important; -webkit-text-fill-color: #A3A3A0 !important; cursor: pointer; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__datebtn.has-value { color: #111214 !important; -webkit-text-fill-color: #111214 !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__addrow { display: flex !important; align-items: center !important; gap: 8px !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__addrow .mcamp__input { margin: 0 !important; }

/* ---- choices: two pills on one track ---- */
#mobile-campaign-overlay.mcamp-overlay .mcamp__grid2:has(.mcamp__choice) { gap: 6px !important; padding: 4px !important; border-radius: 14px !important; background: #F1F1ED !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__choice,
#mobile-campaign-overlay.mcamp-overlay .mcamp.mcamp .mcamp__choice {
    height: 38px !important; padding: 0 10px !important; border: 0 !important; border-radius: 11px !important; background: transparent !important; box-shadow: none !important;
    display: flex !important; align-items: center !important; justify-content: center !important; text-align: center !important;
    font-size: 12.5px !important; font-weight: 700 !important; color: #63635F !important; -webkit-text-fill-color: #63635F !important;
}
#mobile-campaign-overlay.mcamp-overlay .mcamp__choice.is-on,
#mobile-campaign-overlay.mcamp-overlay .mcamp.mcamp .mcamp__choice.is-on {
    background: #FFFFFF !important; box-shadow: 0 1px 2px rgba(17, 18, 20, 0.08) !important; color: #111214 !important; -webkit-text-fill-color: #111214 !important;
}

/* ---- rows: a white card ---- */
#mobile-campaign-overlay.mcamp-overlay .mcamp__rows,
#mobile-campaign-overlay.mcamp-overlay .mcamp__suggest {
    margin: 0 0 4px !important; padding: 0 !important; border: 1px solid #EAEAE6 !important; border-radius: 18px !important; background: #FFFFFF !important;
    box-shadow: 0 1px 2px rgba(17, 18, 20, 0.03) !important; overflow: hidden !important;
}
#mobile-campaign-overlay.mcamp-overlay .mcamp__row-wrap { padding: 0 14px !important; gap: 6px !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__row-wrap + .mcamp__row-wrap { border-top: 1px solid #EFEFEB !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__row { padding: 12px 0 !important; gap: 12px !important; border-radius: 0 !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__row-mark {
    width: 26px !important; height: 26px !important; flex: 0 0 26px !important; border-radius: 9px !important; font-size: 12px !important; font-weight: 800 !important;
    background: #F1F1ED !important; color: #111214 !important; -webkit-text-fill-color: #111214 !important;
}
#mobile-campaign-overlay.mcamp-overlay .mcamp__row-mark.is-on,
#mobile-campaign-overlay.mcamp-overlay .mcamp__row.is-on .mcamp__row-mark { background: #111214 !important; color: #FBFBF9 !important; -webkit-text-fill-color: #FBFBF9 !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__row-name { font-size: 14px !important; font-weight: 800 !important; letter-spacing: -0.01em !important; text-transform: none !important; line-height: 1.2 !important; color: #111214 !important; -webkit-text-fill-color: #111214 !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__row-meta { font-size: 12px !important; font-weight: 500 !important; color: #63635F !important; -webkit-text-fill-color: #63635F !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__face { width: 36px !important; height: 36px !important; flex: 0 0 36px !important; border-radius: 12px !important; background: #F1F1ED !important; font-size: 12px !important; font-weight: 800 !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__suggest-row { padding: 12px 14px !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__suggest-name { font-size: 14px !important; font-weight: 700 !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__suggest-addr { font-size: 12px !important; color: #63635F !important; -webkit-text-fill-color: #63635F !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__empty { padding: 26px 14px !important; font-size: 13px !important; color: #8A8A84 !important; -webkit-text-fill-color: #8A8A84 !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__rows .mcamp__empty { margin: 0 !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__card--dashed {
    padding: 12px 14px !important; border: 0 !important; border-radius: 14px !important; background: #FBECE7 !important; font-size: 12.5px !important; font-weight: 600 !important;
    color: #A83E29 !important; -webkit-text-fill-color: #A83E29 !important;
}
#mobile-campaign-overlay.mcamp-overlay .mcamp__inline-link { color: #111214 !important; -webkit-text-fill-color: #111214 !important; font-weight: 700 !important; text-decoration-color: #A3A3A0 !important; text-underline-offset: 3px; }

/* ---- buttons ---- */
#mobile-campaign-overlay.mcamp-overlay .mcamp__btn {
    height: 46px !important; padding: 0 18px !important; border: 0 !important; border-radius: 999px !important; background: #F1F1ED !important; box-shadow: none !important;
    font-size: 13px !important; font-weight: 700 !important; color: #111214 !important; -webkit-text-fill-color: #111214 !important;
    backdrop-filter: none !important; -webkit-backdrop-filter: none !important; filter: none !important; text-shadow: none !important;
}
#mobile-campaign-overlay.mcamp-overlay .mcamp__btn--next,
#mobile-campaign-overlay.mcamp-overlay .mcamp__btn--solid {
    height: 54px !important; border-radius: 16px !important; background: #111214 !important; box-shadow: 0 12px 24px -12px rgba(17, 18, 20, 0.55) !important;
    font-family: "IBM Plex Mono", ui-monospace, Menlo, monospace !important; font-size: 12px !important; font-weight: 500 !important; letter-spacing: 0.22em !important; text-transform: uppercase !important;
    color: #FBFBF9 !important; -webkit-text-fill-color: #FBFBF9 !important;
}
#mobile-campaign-overlay.mcamp-overlay .mcamp__btn--next[disabled] { opacity: 1 !important; background: #EDEDE8 !important; box-shadow: none !important; color: #8A8A84 !important; -webkit-text-fill-color: #8A8A84 !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__btn--ghost {
    height: 54px !important; padding: 0 !important; background: transparent !important; box-shadow: none !important;
    font-size: 13px !important; font-weight: 600 !important; color: #63635F !important; -webkit-text-fill-color: #63635F !important;
}
#mobile-campaign-overlay.mcamp-overlay .mcamp__wizfoot { gap: 12px !important; padding: 22px 0 40px !important; align-items: center !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__wizfoot .mcamp__btn--ghost { flex: 0 0 auto !important; min-width: 72px !important; text-align: left !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__wizfoot .mcamp__btn--next { flex: 1 1 auto !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__linkbtn { font-weight: 700 !important; color: #111214 !important; -webkit-text-fill-color: #111214 !important; }

/* ---- calendar sheet under a date field ---- */
#mobile-campaign-overlay.mcamp-overlay .mcamp__cal { margin-top: 8px !important; padding: 12px !important; border: 1px solid #EAEAE6 !important; border-radius: 18px !important; background: #FFFFFF !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__cal-title { font-size: 13px !important; font-weight: 800 !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__day.is-on { background: #111214 !important; color: #FBFBF9 !important; -webkit-text-fill-color: #FBFBF9 !important; border-radius: 10px !important; }

/* ---- review rows: mark beside the label, not above it ---- */
#mobile-campaign-overlay.mcamp-overlay .mcamp__review { display: flex !important; align-items: center !important; gap: 12px !important; padding: 12px 14px !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__review + .mcamp__review { border-top: 1px solid #EFEFEB !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__review .mcamp__label { margin: 0 0 3px !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__review-value { display: block !important; font-size: 14px !important; font-weight: 700 !important; color: #111214 !important; -webkit-text-fill-color: #111214 !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__check,
#mobile-campaign-overlay.mcamp-overlay .mcamp__check--sm {
    width: 26px !important; height: 26px !important; flex: 0 0 26px !important; border-radius: 9px !important; display: flex !important; align-items: center !important; justify-content: center !important;
    background: #F1F1ED !important; color: #111214 !important; -webkit-text-fill-color: #111214 !important; font-size: 12px !important; font-weight: 800 !important;
}
#mobile-campaign-overlay.mcamp-overlay .mcamp__check.is-on { background: #111214 !important; color: #FBFBF9 !important; -webkit-text-fill-color: #FBFBF9 !important; }

/* ---- messaging: each settled setting is a card row ---- */
#mobile-campaign-overlay.mcamp-overlay .mcamp__disc { margin: 0 0 8px !important; border: 1px solid #EAEAE6 !important; border-radius: 18px !important; background: #FFFFFF !important; box-shadow: 0 1px 2px rgba(17, 18, 20, 0.03) !important; overflow: hidden !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__disc-head { width: 100% !important; padding: 12px 14px !important; border: 0 !important; background: transparent !important; text-align: left !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__disc-label {
    display: block !important; margin: 0 0 3px !important;
    font-family: "IBM Plex Mono", ui-monospace, Menlo, monospace !important; font-size: 9px !important; font-weight: 500 !important; letter-spacing: 0.14em !important; text-transform: uppercase !important;
    color: #70706B !important; -webkit-text-fill-color: #70706B !important;
}
#mobile-campaign-overlay.mcamp-overlay .mcamp__disc-value { display: block !important; font-size: 14px !important; font-weight: 700 !important; color: #111214 !important; -webkit-text-fill-color: #111214 !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__disc-body { padding: 0 14px 14px !important; }

/* ---- the not-ready banner on review, same warn card as the error ---- */
#mobile-campaign-overlay.mcamp-overlay .mcamp__banner { display: flex !important; gap: 10px !important; padding: 12px 14px !important; border: 0 !important; border-left: 0 !important; border-radius: 14px !important; background: #FBECE7 !important; color: #A83E29 !important; -webkit-text-fill-color: #A83E29 !important; font-size: 12.5px !important; font-weight: 600 !important; }
#mobile-campaign-overlay.mcamp-overlay .mcamp__banner * { color: #A83E29 !important; -webkit-text-fill-color: #A83E29 !important; }
