/* BossLead 1.30 Inbox Pro */
.pp-ibp .pp-ib.is-drop { outline: 2px dashed var(--pp-primary); outline-offset: -6px; }
.pp-ibp .pp-head-actions { flex-wrap: wrap; }
.pp-btn-wa-ghost { color: var(--pp-wa); border-color: color-mix(in srgb, var(--pp-wa) 35%, var(--pp-line)); }
.pp-btn-wa-ghost:hover { background: var(--pp-wa-soft); }
.pp-ibp-ch { display: flex; width: 100%; margin: 4px 0 8px; }
.pp-ibp-ch button { flex: 1; }
.pp-ibp-sep { margin: 12px 10px 4px; font-size: .6875rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--pp-muted); list-style: none; }

/* list */
.pp-ibp-li { position: relative; list-style: none; }
.pp-ibp-li .pp-ib-item { padding-right: 38px; }
.pp-ibp-star { position: absolute; right: 8px; bottom: 10px; width: 28px; height: 28px; border: 0; background: transparent; border-radius: 6px; color: var(--pp-line-2); cursor: pointer; display: grid; place-items: center; }
.pp-ibp-star:hover { background: var(--pp-sunken); color: var(--pp-muted); }
.pp-ibp-star.is-on, .pp-iconbtn.is-star { color: var(--pp-credit); }
.pp-ib-isnip .pp-ico { width: 13px; height: 13px; vertical-align: -2px; margin-right: 3px; color: var(--pp-muted); }
.pp-avatar.is-wa { background: var(--pp-wa-soft); color: var(--pp-wa); }

/* reading pane layout: head / messages / composer */
.pp-ibp .pp-ib-read { display: flex; flex-direction: column; min-height: 0; }
.pp-ibp .pp-ib-msgs { flex: 1 1 auto; min-height: 0; overflow-y: auto; }
#pp-ibp-comp { flex: 0 0 auto; }
.pp-ibp-danger { color: var(--pp-danger); }

/* email cards */
.pp-ibp-mail { border: 1px solid var(--pp-line); border-radius: var(--pp-r-lg); background: var(--pp-surface); padding: 14px 16px; margin: 0 0 12px; max-width: none; }
.pp-ibp-mail.is-out { background: #fbfcfd; }
.pp-ibp-mail > header { display: flex; align-items: flex-start; gap: 10px; flex-wrap: wrap; }
.pp-ibp-mail > header .pp-avatar { width: 32px; height: 32px; font-size: .75rem; flex: 0 0 auto; }
.pp-ibp-from { flex: 1 1 200px; min-width: 0; }
.pp-ibp-from small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pp-ibp-mail > header time { font-size: .75rem; color: var(--pp-muted); white-space: nowrap; }
.pp-ibp-macts { display: flex; gap: 2px; }
.pp-ibp-mail .pp-msg-text { margin-top: 10px; white-space: pre-wrap; overflow-wrap: anywhere; }
.pp-ibp-html { margin-top: 10px; }
.pp-ibp-html iframe { display: block; width: 100%; height: 160px; border: 0; background: #fff; }
.pp-ibp-imgs { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; margin: 0 0 8px; padding: 6px 10px; border-radius: var(--pp-r); background: var(--pp-sunken); font-size: .8125rem; color: var(--pp-muted); order: -1; }
.pp-ibp-html { display: flex; flex-direction: column; }
.pp-ibp-note { display: flex; gap: 6px; align-items: center; font-size: .8125rem; color: var(--pp-muted); margin: 10px 0 0; }
.pp-ibp-more { display: block; width: 100%; margin: 0 0 12px; padding: 8px; border: 1px dashed var(--pp-line-2); border-radius: var(--pp-r); background: transparent; color: var(--pp-primary); font: inherit; font-weight: 600; cursor: pointer; }

/* attachment chips */
.pp-ibp-atts { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.pp-ibp-atts.is-out { margin: 8px 0 0; }
.pp-ibp-chip { display: inline-flex; align-items: center; gap: 6px; max-width: 280px; padding: 5px 6px 5px 10px; border: 1px solid var(--pp-line); border-radius: 999px; background: var(--pp-surface); font-size: .8125rem; }
.pp-ibp-chip .pp-linkbtn, .pp-ibp-chip > span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0; }
.pp-ibp-chip small { color: var(--pp-muted); white-space: nowrap; }
.pp-ibp-chip.is-busy { opacity: .65; }
.pp-ibp-chip .pp-iconbtn { width: 22px; height: 22px; }

/* email composer */
.pp-ibp-ecomp { display: flex; flex-direction: column; gap: 6px; }
.pp-ibp-mode { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; font-size: .8125rem; }
.pp-ibp-modelbl { display: inline-flex; align-items: center; gap: 6px; font-weight: 700; color: var(--pp-ink-2); margin-right: auto; }
.pp-ibp-row { display: flex; align-items: center; gap: 8px; border-bottom: 1px solid var(--pp-line); padding: 2px 0; font-size: .875rem; }
.pp-ibp-row > span { flex: 0 0 52px; color: var(--pp-muted); font-weight: 600; }
.pp-ibp-row input, .pp-ibp-row select { flex: 1; min-width: 0; border: 0; background: transparent; padding: 7px 0; font: inherit; color: inherit; outline: none; }
.pp-ibp-row:focus-within { border-bottom-color: var(--pp-primary); }

/* WhatsApp chat */
.pp-ibp-wa { background: #efeae2; background-image: radial-gradient(rgba(0, 0, 0, .035) 1px, transparent 1px); background-size: 18px 18px; display: flex; flex-direction: column; gap: 4px; padding: 16px 5% !important; }
.pp-ibp-day { align-self: center; margin: 10px 0 6px; }
.pp-ibp-day span { display: inline-block; padding: 4px 12px; border-radius: 8px; background: #fff; box-shadow: var(--pp-shadow); font-size: .75rem; color: var(--pp-muted); }
.pp-ibp-b { position: relative; max-width: min(78%, 520px); padding: 6px 8px 4px 10px; border-radius: 10px; background: #fff; box-shadow: 0 1px .5px rgba(11, 20, 26, .13); font-size: .9rem; line-height: 1.4; }
.pp-ibp-b.is-in { align-self: flex-start; border-top-left-radius: 2px; }
.pp-ibp-b.is-out { align-self: flex-end; background: #d9fdd3; border-top-right-radius: 2px; }
.pp-ibp-btext { white-space: pre-wrap; overflow-wrap: anywhere; padding-right: 64px; }
.pp-ibp-b.is-mediaonly .pp-ibp-bmeta { position: absolute; right: 10px; bottom: 8px; padding: 1px 6px; border-radius: 8px; background: rgba(0, 0, 0, .35); color: #fff; }
.pp-ibp-bmeta { display: flex; justify-content: flex-end; align-items: center; gap: 3px; margin-top: -14px; font-size: .6875rem; color: #667781; float: right; position: relative; }
.pp-ibp-b::after { content: ''; display: block; clear: both; }
.pp-ibp-tk .pp-ico { width: 15px; height: 15px; }
.pp-ibp-tk.is-read { color: #53bdeb; }
.pp-ibp-tk.is-failed { color: var(--pp-danger); }
.pp-ibp-media { display: grid; place-items: center; min-width: 200px; min-height: 120px; margin: 0 -4px 4px -6px; border-radius: 8px; background: rgba(0, 0, 0, .05); overflow: hidden; color: var(--pp-muted); gap: 4px; }
.pp-ibp-media.is-sticker { background: transparent; min-width: 120px; }
.pp-ibp-media.is-audio { min-height: 0; min-width: 240px; padding: 6px; background: transparent; }
.pp-ibp-media audio { width: 100%; max-width: 300px; }
.pp-ibp-imgbtn { display: block; padding: 0; border: 0; background: none; cursor: zoom-in; }
.pp-ibp-imgbtn img { display: block; max-width: 100%; max-height: 340px; border-radius: 8px; }
.pp-ibp-media.is-sticker img { max-width: 140px; }
.pp-ibp-doc { display: flex; align-items: center; gap: 10px; width: 100%; min-width: 220px; margin: 0 0 4px; padding: 10px; border: 0; border-radius: 8px; background: rgba(0, 0, 0, .05); font: inherit; text-align: left; cursor: pointer; color: inherit; }
.pp-ibp-doc span { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-weight: 600; }

.pp-ibp-wacomp { background: #f0f2f5; }
.pp-ibp-warow { display: flex; align-items: flex-end; gap: 8px; }
.pp-ibp-warow textarea { flex: 1; min-height: 42px; max-height: 160px; resize: none; border: 0; border-radius: 22px; padding: 11px 16px; background: #fff; font: inherit; line-height: 1.35; }
.pp-ibp-warow textarea:focus { outline: 2px solid color-mix(in srgb, var(--pp-wa) 40%, transparent); }
.pp-ibp-sendbtn { flex: 0 0 42px; width: 42px; height: 42px; border: 0; border-radius: 50%; background: var(--pp-wa); color: #fff; display: grid; place-items: center; cursor: pointer; }
.pp-ibp-sendbtn:disabled { opacity: .6; cursor: wait; }
.pp-ibp-caption { width: 100%; margin: 6px 0; padding: 9px 14px; border: 1px solid var(--pp-line); border-radius: 22px; font: inherit; }
.pp-ibp-hint { display: block; margin-top: 6px; }

/* modals */
.pp-ibp-modal .pp-modal-card { width: min(560px, calc(100vw - 24px)); text-align: left; max-height: calc(100vh - 40px); overflow: auto; }
.pp-ibp-modal .pp-modal-card.pp-ibp-wide { width: min(720px, calc(100vw - 24px)); }
.pp-ibp-mhead { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 8px; }
.pp-ibp-mhead h3 { margin: 0; }
.pp-ibp-cform { display: flex; flex-direction: column; gap: 10px; }
.pp-ibp-cform textarea[name=body] { width: 100%; border: 1px solid var(--pp-line); border-radius: var(--pp-r); padding: 10px 12px; font: inherit; resize: vertical; }
.pp-ibp-cform .pp-ib-cfoot { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.pp-ibp-cform .pp-ib-cfoot small { flex: 1; }
.pp-ibp-fs { border: 1px solid var(--pp-line); border-radius: var(--pp-r-lg); padding: 12px 14px; margin: 0; display: flex; flex-direction: column; gap: 10px; }
.pp-ibp-fs legend { font-weight: 700; padding: 0 6px; }
.pp-ibp-fs[disabled] { opacity: .6; }
.pp-radio { display: flex; gap: 10px; align-items: flex-start; padding: 10px 12px; border: 1px solid var(--pp-line); border-radius: var(--pp-r); cursor: pointer; }
.pp-radio:has(input:checked) { border-color: var(--pp-primary); background: var(--pp-primary-soft); }
.pp-radio input { margin-top: 3px; }
.pp-radio span { display: flex; flex-direction: column; gap: 2px; }
.pp-radio small { color: var(--pp-muted); }
.pp-ibp-warn { display: flex; gap: 8px; align-items: flex-start; margin: 0; padding: 8px 10px; border-radius: var(--pp-r); background: var(--pp-credit-soft); font-size: .8125rem; }

/* mailboxes page */
.pp-ibp-route { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 16px; margin: 0 0 6px; font-size: .8125rem; color: var(--pp-ink-2); }
.pp-ibp-route > span { display: inline-flex; align-items: center; gap: 5px; }
.pp-ibp-route .pp-ico { width: 14px; height: 14px; color: var(--pp-muted); }

@media (max-width: 860px) {
  .pp-ibp .pp-ib-msgs { max-height: 65vh; }
  .pp-ibp-b { max-width: 90%; }
  .pp-ibp-wa { padding: 12px 10px !important; }
  .pp-ibp .pp-head-actions .pp-btn { flex: 1 1 auto; }
}

/* 1.30.1 */
.pp-ibp-store { margin: 14px 10px 6px; font-size: .75rem; color: var(--pp-muted); }
.pp-ibp-store .pp-progress.is-warn span { background: var(--pp-danger); }
.pp-ibp-consent { font-size: .8125rem; align-items: flex-start; }
.pp-ibp-consent.is-need { outline: 2px solid var(--pp-credit); outline-offset: 4px; border-radius: 6px; }
