
 .cb *{box-sizing:border-box}.cb h1{font-size:28px;margin:8px 0}.cb h2{font-size:19px;margin:0 0 8px}.cb p{line-height:1.6}.cb .muted{color:#748198;font-size:13px}.cb button,.cb input,.cb select,.cb textarea{font:inherit}.cb button{cursor:pointer}.cb button:focus-visible,.cb input:focus-visible,.cb select:focus-visible,.cb textarea:focus-visible{outline:3px solid #91b8ff;outline-offset:2px}.cb button{border:1px solid #dbe2ee;border-radius:9px;padding:10px 15px;background:white;color:#345071}.cb .blue{background:#1658dd;color:white;border-color:#1658dd}.cb button:disabled{opacity:.45;cursor:not-allowed}.cb .subtitle{margin:0 0 23px;color:#748198}.cb .grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px;align-items:start}.cb .panel{background:white;border:1px solid #e5eaf2;border-radius:16px;padding:25px;margin-bottom:18px}.cb .step{display:inline-grid;place-items:center;width:25px;height:25px;background:#eaf1ff;color:#1658dd;border-radius:50%;margin-right:9px;font-size:13px}.cb .chips{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.cb .chips button{font-size:13px}.cb .chips .active{border-color:#1658dd;background:#edf3ff;color:#1658dd}.cb .rule{display:flex;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid #edf0f5}.cb .rule label{flex:1;font-size:14px}.cb input,.cb select{border:1px solid #dce3ee;border-radius:8px;padding:9px;color:#263b58;background:white;max-width:100%}.cb .rule input{width:72px;text-align:center}.cb .rule span{font-size:13px;color:#6d7e95}.cb .remove{border:0;color:#8390a3;padding:8px}.cb .add{margin:16px 0;color:#1658dd;border-style:dashed}.cb .result{background:#f0f5ff;border-radius:10px;padding:16px;display:flex;align-items:center;justify-content:space-between;gap:8px}.cb .result strong{color:#1658dd;font-size:23px}.cb .link{padding:0;border:0;background:none;color:#1658dd;font-size:13px}.cb textarea{width:100%;min-height:130px;border:1px solid #dce3ee;border-radius:10px;padding:14px;resize:vertical;line-height:1.7;margin-top:12px}.cb .aside{position:sticky;top:20px}.cb .line{display:flex;justify-content:space-between;margin:17px 0;font-size:14px}.cb .total{border-top:1px solid #e8edf4;margin-top:22px;padding-top:18px}.cb .amount{font-size:29px;color:#1658dd;font-weight:750}.cb .wide{width:100%;margin-top:16px}.cb .notice{font-size:12px;color:#6e7f96;margin:14px 0 0}.cb .demo{display:inline-block;font-size:12px;color:#7e671f;background:#fff6db;padding:5px 9px;border-radius:6px}.cb dialog{width:min(520px,calc(100% - 32px));border:0;border-radius:18px;padding:25px;max-height:85vh;overflow:auto;color:#192b46}.cb dialog::backdrop{background:#13243d66}.cb .dialog-head{display:flex;justify-content:space-between;align-items:center}.cb .dialog-head h2{margin:0}.cb .preview{white-space:pre-wrap;background:#f5f7fb;padding:15px;border-radius:10px;line-height:1.7}.cb table{width:100%;border-collapse:collapse;font-size:13px}.cb td,.cb th{text-align:left;padding:10px;border-bottom:1px solid #edf0f5}@media(max-width:760px){.cb .grid{grid-template-columns:minmax(0,1fr)}.cb .aside{position:static}.cb .panel{padding:18px}.cb .rule{flex-wrap:wrap}.cb .rule label{min-width:100px}.cb h1{font-size:24px}}
 
.cb [hidden]{display:none!important}.cb button{height:auto;margin:0;min-height:38px}.cb input,.cb select,.cb textarea{width:auto;margin:0;color:#263b58;background:#fff}.cb textarea{width:100%;margin-top:12px}.cb .panel{box-shadow:none}.cb .full{width:100%;margin:10px 0}.cb .dialog-head{gap:15px;margin-bottom:16px}.cb .dialog-head button{width:38px;min-width:38px;font-size:24px;background:transparent;color:#60718b;border:0}
#dashboard .cb #cbClose{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;min-height:0;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;color:#60718b;font-size:28px;line-height:1}.cb .draft-row{display:flex;align-items:center;gap:10px;border-top:1px solid #edf0f5;padding:12px 0}.cb .draft-row strong{flex:1}.cb .draft-row button{flex:none;font-size:13px}.cb .actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.cb .error{color:#b23d32;font-size:13px}.cb .pending{color:#84651f;background:#fff8e7;padding:12px;border-radius:9px;font-size:13px;line-height:1.6}.cb .loading{opacity:.7}.cb .rule .remove{min-width:38px}.cb .rule label{font-weight:500}.cb .muted{margin:10px 0}.cb .link{min-height:36px}.cb section.panel h2{display:flex;align-items:center}.cb .amount{margin-top:7px}.cb .mobile-intro{display:flex;justify-content:space-between;align-items:center;gap:12px}.cb table{table-layout:fixed}.cb .checkrow{display:block;margin-top:16px;font-size:14px}

/* Campaign decisions: audience size, message budget and funding. */
.cb .chips button{text-align:left;display:flex;flex-direction:column;gap:5px;flex:1 1 140px}
.cb .chips small{font-size:12px;color:#6b7e98;font-weight:400}.cb .chips .active small{color:#245dc0}
.cb .funding{background:#f4f7fc;border:1px solid #e3eaf4;padding:16px;border-radius:12px;margin:16px 0 22px}
.cb .funding .line{margin:0 0 12px}.cb .funding strong{font-size:21px;color:#233b5b}
.cb .funding-state{font-size:14px;font-weight:650;color:#64748b}
.cb .funding.is-short{background:#fff7e9;border-color:#f3d6a1}.cb .is-short .funding-state{color:#995100;font-size:22px}
.cb .is-covered .funding-state{color:#247452}.cb .topup-action{display:block;width:100%;margin-top:14px;background:#a85e08;color:#fff;border-color:#a85e08;font-size:13px;padding:10px 8px}
.cb .aside .wide{margin-top:16px}.cb .secondary-action{background:#edf3ff;color:#1658dd;border-color:#cbdcff;font-weight:600}
.cb .auto-copy{padding:2px 0 2px 12px;border-left:3px solid #d5deee;background:none;color:#5b6a80;font-size:13px;line-height:1.6;white-space:pre-wrap;border-radius:0;margin-top:12px;overflow-wrap:anywhere}
.cb .auto-copy>span{display:block;font-size:12px;font-weight:600;color:#7b8799;margin-bottom:4px}.cb textarea{margin-top:8px}.cb textarea[aria-invalid=true]{border-color:#c3473d;background:#fffdfc}
.cb .byte-counter.is-valid{color:#387258}.cb .byte-counter.is-near{color:#986000}.cb .byte-counter.is-error{color:#b4342a;font-weight:600}
.cb progress{display:block;width:100%;height:5px;margin-top:8px;border:0;border-radius:9px;overflow:hidden;accent-color:#1658dd}.cb progress::-webkit-progress-bar{background:#edf0f5}.cb progress::-webkit-progress-value{background:#1658dd}.cb progress.is-error{accent-color:#c3473d}.cb progress.is-error::-webkit-progress-value{background:#c3473d}
@media(max-width:760px){.cb .chips button{flex-basis:calc(50% - 8px)}.cb .mobile-intro{align-items:flex-start;flex-direction:column}}
.cb .coupon-toggle{display:flex;align-items:center;gap:8px;font-size:14px;margin-top:18px}.cb .coupon-toggle input{width:18px;height:18px;accent-color:#1658dd}.cb #cbCouponFields{border-top:1px solid #e5eaf2;margin-top:16px;padding-top:16px}.cb #cbCouponFields>label{display:block;font-size:13px;margin-top:12px}.cb #cbCouponBenefit{min-height:90px;margin-bottom:14px}.cb .coupon-preview{border:1px dashed #9dbaf1;background:#f1f6ff;padding:18px;border-radius:12px;overflow-wrap:anywhere}.cb .coupon-preview strong{color:#1658dd}.cb .coupon-preview p{white-space:pre-wrap}.coupon-management{margin-top:20px;padding-top:16px;border:0!important;border-top:1px solid #e5eaf2!important}.coupon-management>#mcToggle{background:transparent!important;border:0;color:#345071!important;padding:8px 0;margin:0!important;font-size:13px}

.cb .chips button{position:relative;border-width:2px;transition:background-color .16s,border-color .16s}
.cb .chips button.active{background:#1658dd;border-color:#1658dd;color:white;box-shadow:0 2px 8px #1658dd26}
.cb .chips button.active>span{padding-right:22px}.cb .chips button.active::after{content:'✓';position:absolute;top:10px;right:11px;font-size:15px;font-weight:750}
.cb .chips button.active small{color:#e0ebff}.cb .result{border-left:4px solid #b6cdf7;transition:background-color .18s}
.cb .result[aria-busy=true]{opacity:.65}.cb .result.is-ready{border-left-color:#1658dd;background:#e9f1ff}
.cb .result.is-ready strong{font-size:26px}.cb .preview-only{background:#fff7e9;color:#8b5517;border:1px solid #e5c38d;box-shadow:none}
.cb #cbReviewHelp{line-height:1.6}.cb .inline-coupon{margin-top:14px;padding:16px}.cb .inline-coupon>small{display:block;color:#6f8098;font-size:11px}
.cb .inline-coupon>strong{display:block;font-size:18px;margin-top:8px}.cb .inline-coupon>p:not(.notice){margin:8px 0;line-height:1.6}
.cb .coupon-panel .coupon-toggle{padding:12px 14px;background:#f5f7fb;border-radius:9px;margin-top:14px;cursor:pointer}.cb .coupon-panel .coupon-toggle input{flex:none;accent-color:#1658dd}
@media(prefers-reduced-motion:reduce){.cb .chips button,.cb .result{transition:none}}

.cb .target-description{margin:12px 0 14px;padding:9px 12px;background:#f5f8ff;border-radius:8px;color:#345783;font-size:13px;line-height:1.6}
.cb .target-description.is-custom{background:#f1f5fb;color:#415675}.cb .advanced-rules{margin:10px 0 18px;border-top:1px solid #e8edf5}
.cb .advanced-rules>summary{cursor:pointer;padding:13px 0;color:#526984;font-size:13px;font-weight:600;list-style-position:inside}
.cb .advanced-rules>summary span{margin-left:6px;font-size:11px;color:#8b97a8;font-weight:400}.cb .advanced-rules>summary:focus-visible{outline:3px solid #91b8ff;outline-offset:3px;border-radius:5px}
.cb .advanced-body{padding:0 14px 14px;background:#f8fafd;border-radius:9px}.cb .advanced-body>.notice{margin:0;padding-top:12px}
.cb .rule-picker{display:flex;align-items:center;gap:12px;padding-top:14px;font-size:13px;color:#64768d}.cb .rule-picker select{flex:1;min-width:0;font-size:13px}
@media(max-width:500px){.cb .rule-picker{align-items:stretch;flex-direction:column;gap:6px}}

.cb .credit-benefit{margin:16px 0;padding:15px;border:1px solid #cfe8df;border-radius:11px;background:#f0f8f4}
.cb .benefit-head{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:12px;color:#3c705b}.cb .benefit-head strong{font-size:22px;color:#20714f;white-space:nowrap}
.cb .credit-benefit>.line{font-size:12px;margin:14px 0 0;padding-top:12px;border-top:1px solid #dcebe3}.cb .credit-benefit>.notice{font-size:12px;color:#537463;margin-top:8px}
.cb .credit-benefit progress{accent-color:#398466}.cb .credit-benefit progress::-webkit-progress-value{background:#398466}
.cb #cbTopupTerms{font-size:11px;line-height:1.6;color:#8b6b3b}.cb .return-calculator{margin-top:16px;padding-top:12px;border-top:1px solid #e7edf4}
.cb .return-calculator>summary{font-size:12px;color:#4c6588;cursor:pointer;padding:8px 0;font-weight:600}.cb .return-calculator>summary:focus-visible{outline:3px solid #91b8ff;outline-offset:2px}
.cb .return-calculator label{display:block;font-size:12px;margin:14px 0 7px;color:#55677f}.cb .return-calculator input{width:100%;font-size:14px}
.cb .return-result{font-size:13px;line-height:1.7;color:#315c4a;font-weight:550}.cb .return-calculator>.notice{font-size:11px;line-height:1.7}
@media(min-width:761px){.cb .aside{top:calc(var(--admin-nav-height,0px) + 16px);max-height:calc(100dvh - var(--admin-nav-height,0px) - 32px);overflow-y:auto;scrollbar-width:thin}}

/* Keep campaign history actions clear of the cost panel border at every width. */
.cb .mobile-intro > .actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;margin:0;padding:0 0 18px}
/* Phones: keep Korean words whole and the two mode buttons on one line each (2026-10-25). */
@media(max-width:500px){.cb{word-break:keep-all;overflow-wrap:anywhere}.cb .cb-rec-mode button{white-space:nowrap;padding-left:8px;padding-right:8px}}
/* 단계 카드는 테두리 없이 흰 면으로 구분 (박스 과다 정리) */
.cb .panel{border:0;box-shadow:none}
.cb .mobile-intro .actions button{border:0;background:transparent;color:#1658dd;padding:6px 0 6px 14px;min-height:0;font-size:14px}
.cb .auto-copy{margin:20px 0}.cb #cbMessage{margin:0}.cb #cbChannel{margin-bottom:0}.cb .byte-counter{margin:14px 0 0}
.cb .cb-send-actions{margin:22px 0 6px}.cb .cb-draft-actions{margin:6px 0 0;gap:4px 18px}.cb .cb-draft-actions button{border:0;background:transparent;color:#1658dd;padding:8px 0;min-height:0;font-size:14px;box-shadow:none}
.cb #cbChannel+.auto-copy{margin-top:36px}


/* Campaign builder: streamlined choice cards */
.cb .cb-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0 26px}
.cb .cb-shortcuts button{display:flex;align-items:center;text-align:left;gap:14px;min-height:84px;padding:17px 19px;border:1px solid #dce4f1;border-radius:18px;background:#fff;box-shadow:0 2px 7px #243d6508}
.cb .cb-shortcut-icon{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:15px;background:#eaf2ff;color:#2165ed;font-size:27px}
.cb .cb-shortcut-copy{display:grid;gap:4px;flex:1;min-width:0}.cb .cb-shortcut-copy strong{font-size:16px;color:#1b3054}.cb .cb-shortcut-copy small{font-size:12px;color:#65758e}.cb .cb-shortcuts button>span:last-child{font-size:27px;color:#8290a5}
.cb .cb-rec-mode{display:grid;grid-template-columns:1fr;gap:12px;margin:20px 0}
.cb .cb-rec-mode button{display:flex;align-items:center;gap:15px;text-align:left;width:100%;min-height:94px;padding:19px 20px;border:1px solid #dce4f1;border-radius:19px;background:#fff;color:#233a5d}
.cb .cb-rec-mode button[aria-pressed="true"]{border:2px solid #2467f5;background:linear-gradient(115deg,#f2f7ff,#e9f1ff);padding:18px 19px}
.cb .cb-radio{display:grid;place-items:center;flex:none;width:23px;height:23px;border:2px solid #9aa8bc;border-radius:50%}
.cb .cb-rec-mode button[aria-pressed="true"] .cb-radio{background:#2467f5;border-color:#2467f5}.cb .cb-rec-mode button[aria-pressed="true"] .cb-radio:after{content:"✓";font-size:14px;color:#fff}
.cb .cb-choice-icon{font-size:29px;color:#3679ed;flex:none;width:35px;text-align:center}.cb .cb-choice-text{display:grid;gap:5px;flex:1}.cb .cb-choice-text strong{font-size:18px;color:#1b3054}.cb .cb-choice-text small{font-size:13px;color:#63748d;line-height:1.5}
.cb .cb-recommended{flex:none;border-radius:20px;padding:6px 10px;background:#2563eb;color:white;font-size:12px}
.cb #cbSmartExplanation{border-radius:16px;background:#eff5ff;padding:17px 20px!important;margin:12px 0 16px!important;color:#1e40af}.cb #cbSmartExplanation strong{font-size:17px}
@media(max-width:640px){.cb .cb-shortcuts{grid-template-columns:1fr}.cb .cb-rec-mode button{padding:15px;gap:10px}.cb .cb-rec-mode button[aria-pressed="true"]{padding:14px}.cb .cb-recommended{font-size:11px}.cb .cb-choice-text strong{font-size:16px}}


/* Mobile hotfix: contain all campaign cards within viewport and align shortcuts */
.cb,.cb .grid,.cb .grid>div,.cb .panel,.cb .mobile-intro{min-width:0;max-width:100%}
.cb .mobile-intro>.actions.cb-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch;width:100%;gap:10px;margin:12px 0 20px;padding:0}
.cb .mobile-intro>.actions.cb-shortcuts button{display:flex;min-width:0;width:100%;padding:12px;border:1px solid #dce4f1;background:#fff;color:#1b3054;border-radius:14px;min-height:70px;gap:8px;box-shadow:none}
.cb .cb-shortcuts .cb-shortcut-icon{width:34px;height:34px;font-size:20px;border-radius:10px}
.cb .cb-shortcuts .cb-shortcut-copy strong{font-size:13px}.cb .cb-shortcuts .cb-shortcut-copy small{font-size:10px;line-height:1.35}
.cb .cb-rec-mode{width:100%;min-width:0}
.cb .cb-rec-mode button{min-width:0;max-width:100%;box-sizing:border-box;white-space:normal!important;overflow-wrap:break-word;gap:10px}
.cb .cb-choice-text{min-width:0}.cb .cb-choice-text small{white-space:normal;overflow-wrap:break-word}
.cb .cb-recommended{display:none}
@media(max-width:500px){.cb .mobile-intro>.actions.cb-shortcuts{grid-template-columns:1fr 1fr}.cb .cb-shortcuts button>span:last-child{display:none}.cb .cb-rec-mode button{min-height:82px;padding:12px!important}.cb .cb-choice-icon{width:24px;font-size:22px}.cb .cb-radio{width:20px;height:20px}.cb .cb-choice-text strong{font-size:15px}.cb .cb-choice-text small{font-size:11px}.cb .panel{padding:16px}}
/* 단순화 1단계: 단계는 박스 대신 구분선으로 나눈다 (기능·ID 변경 없음) */
.cb section.panel{border:0;border-bottom:1px solid #e6ebf3;border-radius:0;box-shadow:none;background:transparent;padding:22px 0;margin:0}
.cb section.panel:last-of-type{border-bottom:0}
.cb .result{background:transparent;border:0;border-left:0;padding:12px 0;border-radius:0}
.cb .result.is-ready{background:transparent;border:0}
.cb .target-description{background:transparent;padding:0;margin:10px 0}
.cb .funding,.cb .credit-benefit{background:transparent;border:0;padding:0;margin:14px 0}
/* 단순화 2단계: 추천/직접 토글 숨김, 쿠폰 스위치, 하단 고정 발송 바 */
.cb .cb-rec-mode,.cb #cbSmartExplanation{display:none!important}
.cb .coupon-panel .coupon-toggle{background:none;padding:0;margin-top:6px;cursor:pointer}
.cb #cbCouponEnabled{appearance:none;-webkit-appearance:none;width:46px;height:26px;border-radius:13px;background:#cfd8e6;position:relative;flex:none;margin:0;cursor:pointer;transition:background .15s}
.cb #cbCouponEnabled::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:left .15s}
.cb #cbCouponEnabled:checked{background:#1658dd}.cb #cbCouponEnabled:checked::after{left:23px}
.cb-foot{display:none}
@media(max-width:760px){
 .cb{padding-bottom:170px}
 .cb .cb-send-actions{display:none}
 .cb-foot{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;align-items:center;gap:12px;padding:12px 16px;background:#fff;border-top:1px solid #e6ebf3;box-shadow:0 -4px 16px #16243d0d}
 /* Sit just above the bottom menu bar (admin-redesign.css .dp-tabbar, 66px high, 10px from the bottom) instead of under it. */
 .cb-foot{left:12px;right:12px;bottom:calc(env(safe-area-inset-bottom,0px) + 84px);border:1px solid #e2e8f3;border-radius:18px;box-shadow:0 8px 24px rgba(20,33,61,.12);z-index:118}
 .cb-foot-info{flex:1;font-size:13px;color:#6b7a90;line-height:1.4}
 .cb-foot-info b{color:#16243d;font-size:17px}
 .cb-foot button{border:0;border-radius:12px;padding:14px 20px;font-weight:700;min-height:48px;white-space:nowrap}
}
@media(max-width:760px){.cb-foot{transition:transform .2s ease,opacity .2s ease,visibility .2s}.cb-foot.cb-foot-away{transform:translateY(24px);opacity:0;pointer-events:none;visibility:hidden}}
.cb-foot-msg{font-size:12px;color:#b23d32;margin-top:2px;min-height:0}
.cb-foot-msg:empty{display:none}
/* 자동 삽입 안내: 입력칸과 붙어 보이지 않게 별도 카드처럼 분리 */
.cb .auto-copy{border-left:0;background:#f5f7fb;border-radius:10px;padding:10px 14px;margin:16px 0}
.cb #cbChannel+.auto-copy{margin-top:40px}
.cb #cbMessage+.hint,.cb #cbMessage~.auto-copy{margin-top:16px}
/* 3단계: 상단 바로가기 카드 두 개를 글자 링크로 정리 (기능·ID 변경 없음) */
.cb .mobile-intro>.actions.cb-shortcuts{display:flex;gap:20px;margin:0 0 14px;padding:0;flex-wrap:wrap}
.cb .cb-shortcuts button{border:0;background:none;padding:0;min-height:0;box-shadow:none;color:#1658dd;font-size:14px;font-weight:600;display:inline-flex;align-items:center;gap:6px}
.cb .cb-shortcut-icon{display:none}
.cb .cb-shortcuts button>span:last-child{display:none}
/* ===== 문자 캠페인 UI 전면 정리 (목업 기준) ===== */
.cb{max-width:880px;margin:0 auto;color:#16243d;padding-bottom:96px}
.cb-head h1{font-size:20px;margin:0 0 4px}
.cb-head .subtitle{margin:0 0 12px;color:#6b7a90;font-size:13px}
.cb-links{display:flex;gap:18px;padding-bottom:14px;border-bottom:1px solid #e6ebf3}
.cb-links button{border:0;background:none;padding:0;min-height:0;color:#1658dd;font-size:14px;font-weight:600;box-shadow:none}
.cb-layout{display:block}
.cb-main{min-width:0}
.cb-step{padding:20px 0;border-bottom:1px solid #e6ebf3}
.cb-step>h2{font-size:16px;margin:0 0 12px;display:flex;align-items:center;gap:8px;color:#16243d}
.cb-num{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#1658dd;color:#fff;font-size:12px;font-weight:700;flex:none}
.cb-chips{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cb-chips button{border:1.5px solid #e6ebf3;background:#fff;border-radius:12px;padding:14px;text-align:left;color:#16243d;font-size:15px;min-height:0;box-shadow:none}
.cb-chips button.active{border-color:#1658dd;background:#eef4ff;font-weight:700}
.cb-chips button small{display:block;margin-top:4px;color:#6b7a90;font-size:13px;font-weight:400}
.cb-chips button.active small{color:#1658dd}
.cb-rec-mode{display:none!important}
#cbSmartExplanation{display:none!important}
.cb-target{font-size:13px;color:#4a5b75;margin:12px 0 0;line-height:1.6}
.cb-target:empty{display:none}
.cb-advanced{margin-top:12px}
.cb-advanced>summary{cursor:pointer;color:#6b7a90;font-size:13px;padding:6px 0}
.cb-count{margin-top:14px;display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:14px;color:#4a5b75}
.cb-count strong{color:#1658dd;font-size:20px;margin-left:4px}
.cb-count .link{padding:0;border:0;background:none;color:#1658dd;font-size:13px;min-height:0}
.cb-switch-row{display:flex;justify-content:space-between;align-items:center;font-size:15px;cursor:pointer}
.cb-switch-row input{appearance:none;-webkit-appearance:none;width:46px;height:26px;border-radius:13px;background:#cfd8e6;position:relative;margin:0;flex:none;cursor:pointer;transition:background .15s}
.cb-switch-row input::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:left .15s}
.cb-switch-row input:checked{background:#1658dd}
.cb-switch-row input:checked::after{left:23px}
.cb-hint{font-size:13px;color:#6b7a90;margin:8px 0 0;line-height:1.6}
.cb-preview{margin-top:12px;padding:14px;border-radius:12px;background:#f5f7fb}
.cb-preview strong{display:block;margin:4px 0;color:#1658dd}
.cb-auto{font-size:13px;color:#5b6a80;background:#f5f7fb;border-radius:10px;padding:10px 14px;margin:14px 0 0;line-height:1.5}
.cb-brand{display:grid;gap:8px;margin-top:12px}
.cb-actions{display:flex;gap:10px;margin-top:18px}
.cb-actions button{flex:1;min-height:48px}
.cb-links2{display:flex;gap:10px;margin-top:12px}
.cb-links2 button{flex:1;min-height:42px}
.cb-aside{display:none}
#cbFootSend{min-height:48px}
@media(min-width:761px){
 .cb-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px;align-items:start}
 .cb-aside{display:block;position:sticky;top:20px;padding:20px;border:1px solid #e6ebf3;border-radius:16px;background:#fff}
 .cb-aside>h2{font-size:16px;margin:0 0 12px}
 .cb-foot{display:none!important}
 .cb{padding-bottom:24px}
}
@media(max-width:760px){
 .cb-actions{display:none}
 .cb-chips button{padding:12px}
}
/* ===== 입력 폼 정리: 라벨 위·입력칸 전체폭 ===== */
.cb-step label:not(.cb-switch-row){display:block;font-size:14px;font-weight:600;color:#3d4f68;margin:18px 0 7px}
.cb-step label:not(.cb-switch-row):first-of-type{margin-top:4px}
.cb-step input:not([type=checkbox]),.cb-step select,.cb-step textarea{display:block;width:100%;min-height:46px;font-size:15px;line-height:1.5;padding:11px 13px;border:1px solid #dce3ee;border-radius:10px;margin:0}
.cb-step textarea{min-height:140px;padding-top:12px}
.cb-step .cb-auto{margin:10px 0 0}
.cb-step #cbBytes{margin-top:8px}
.cb-step progress{margin-top:8px}
.cb-step .cb-brand label{margin:6px 0 0}
.cb-links-bottom{border-bottom:0;border-top:1px solid #e6ebf3;padding-top:14px;padding-bottom:0;margin-top:18px}
/* ===== 고객 선택 박스 4개 크기 통일, 첫 단계 상단 간격 축소 ===== */
#merchantCampaignCard .campaign-summary:not(:has(.reengageOpportunity.show)){display:none}
.cb-chips button{min-height:76px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;line-height:1.4}
.cb-chips button small{margin-top:6px}

/* Verified marketing opportunity on the merchant dashboard. */
#aiOpportunityCard{margin:18px 0;padding:20px 22px;background:linear-gradient(135deg,#eef5ff 0%,#f8fbff 68%,#fff 100%);border:1px solid #c8dcfb;box-shadow:0 8px 22px rgba(28,71,137,.08)}
#aiOpportunityCard .ai-opportunity-tag{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;background:#dceaff;color:#2456a4;font-size:12px;font-weight:800;letter-spacing:.01em}
#aiOpportunityCard h2{margin:12px 0 6px;color:#172b4a;font-size:19px}
#aiOpportunityCard .ai-opportunity-reason{margin:0;color:#344963;line-height:1.55;font-size:15px}
#aiOpportunityCard .ai-opportunity-meta{margin:11px 0 14px;color:#435d7f;font-size:13px;font-weight:700;line-height:1.5}
#aiOpportunityCard .ai-opportunity-action{width:100%;min-height:48px;border-radius:12px;font-weight:800}
#aiOpportunityCard .ai-opportunity-action:disabled{opacity:.6}
@media(min-width:761px){#aiOpportunityCard .ai-opportunity-action{width:auto;min-width:220px}}

.cb-smart-review{padding:14px 16px;margin:0 0 14px;border:1px solid #c7dbf6;border-radius:12px;background:#f1f6ff;color:#28415f}
.cb-smart-review strong{display:block;color:#173c72;font-size:15px;margin-bottom:5px}
.cb-smart-review p{margin:5px 0;font-size:13px;line-height:1.5}

.cb-performance{border:1px solid #c9dcf5;background:#f3f8ff;border-radius:12px;padding:14px 16px;margin:14px 0;color:#23405f}
.cb-performance strong{display:block;color:#173c72;font-size:15px}
.cb-performance p{margin:7px 0;font-weight:700;line-height:1.5}
.cb-performance small{display:block;color:#667b91;line-height:1.5}
.cb-history-outcome{display:block;color:#586d87;font-size:13px;line-height:1.5}
/* 이미 문자 받은 고객 제외 기간(매장 설정: 7일·14일) */
.cb-recent{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;margin:4px 0 10px;font-size:14px;color:#3c4a60}
.cb-recent label{font-weight:700}
.cb-recent select{height:38px;min-width:150px;border:1px solid #d6dde8;border-radius:10px;padding:0 10px;background:#fff;font:inherit;font-size:14px;color:#17243c}
.cb-recent-msg{font-size:13px;color:#15803d}


/* Mobile campaign containment: prevent date controls and inherited min-content sizing
   from widening the document. Keep native iOS date picker accessible. */
#merchantCampaignCard,
#merchantCampaignBody,
#merchantCampaignBody .cb,
#merchantCampaignBody .cb-layout,
#merchantCampaignBody .cb-main,
#merchantCampaignBody .cb-step,
#merchantCampaignBody #cbCouponFields {
  box-sizing:border-box;
  min-width:0;
  max-width:100%;
}
#merchantCampaignBody .cb-step input:not([type="checkbox"]),
#merchantCampaignBody .cb-step select,
#merchantCampaignBody .cb-step textarea {
  box-sizing:border-box;
  min-width:0;
  max-width:100%;
}
#merchantCampaignBody #cbCouponEnd,
#merchantCampaignBody #cbBrandPeriod {
  display:block;
  width:100%;
  min-width:0;
  max-width:100%;
  height:48px;
  min-height:48px;
  max-height:48px;
  padding:7px 12px;
  margin:0;
  border-radius:10px;
  font-size:17px;
  font-weight:600;
  line-height:24px;
  text-align:center;
  -webkit-appearance:none;
  appearance:none;
}
#merchantCampaignBody #cbCouponEnd::-webkit-date-and-time-value,
#merchantCampaignBody #cbBrandPeriod::-webkit-date-and-time-value {
  min-height:24px;
  line-height:24px;
  text-align:center;
}
@media(max-width:760px){
  #merchantCampaignCard{width:100%;overflow-x:clip}
  #merchantCampaignBody .cb-step{width:100%}
}


/* Vertically center native iOS date text after compacting the field. */
#merchantCampaignBody #cbCouponEnd,
#merchantCampaignBody #cbBrandPeriod {
  padding-top:0;
  padding-bottom:0;
  line-height:48px;
}
#merchantCampaignBody #cbCouponEnd::-webkit-date-and-time-value,
#merchantCampaignBody #cbBrandPeriod::-webkit-date-and-time-value {
  display:flex;
  align-items:center;
  justify-content:center;
  height:100%;
  min-height:0;
  line-height:normal;
}
#merchantCampaignBody #cbCouponEnd::-webkit-datetime-edit,
#merchantCampaignBody #cbBrandPeriod::-webkit-datetime-edit {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:100%;
  min-height:0;
  padding:0;
}
