/* =====================================================================
   INBOX: reply / forward / seen ticks
   
   ===================================================================== */
/* ===== quoted reply / forward / seen ticks ===== */
.quote{display:flex;gap:8px;align-items:stretch;margin:-4px -4px 7px;padding:7px 10px;
  border-radius:11px;background:rgba(15,23,42,.05);border-left:3px solid var(--blue-600);
  cursor:pointer;max-width:100%;overflow:hidden}
.bub.out .quote{background:rgba(255,255,255,.17);border-left-color:rgba(255,255,255,.75)}
.bub.has-media .quote{margin:4px 4px 6px}
.quote .qt{min-width:0;flex:1}
.quote .qwho{font-size:11.5px;font-weight:800;color:var(--blue-700);margin-bottom:2px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bub.out .quote .qwho{color:#fff}
.quote .qtx{font-size:12.5px;line-height:1.4;color:var(--faint);white-space:pre-wrap;
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.bub.out .quote .qtx{color:rgba(255,255,255,.88)}
.quote img.qimg{width:38px;height:38px;border-radius:8px;object-fit:cover;flex:0 0 auto}
.msgrow.flash .bub{animation:qflash 1.1s ease}
@keyframes qflash{0%,100%{box-shadow:none}25%,60%{box-shadow:0 0 0 3px rgba(37,99,235,.45)}}
body.dark .quote{background:rgba(255,255,255,.08)}
body.dark .quote .qwho{color:#9bc0ff}

.fwd-tag{display:flex;align-items:center;gap:4px;font-size:11.5px;font-style:italic;
  font-weight:700;color:var(--faint);margin-bottom:4px}
.bub.out .fwd-tag{color:rgba(255,255,255,.8)}
.bub.has-media .fwd-tag{padding:6px 8px 0}

.ticks{display:inline-flex;align-items:center;margin-left:4px;vertical-align:-2px}
.ticks svg{width:15px;height:11px}
.ticks.sent{color:#94a3b8}
.ticks.delivered{color:#94a3b8}
.ticks.seen{color:#2563eb}
body.dark .ticks.seen{color:#53bdeb}

/* per-message action button (Reply / Forward) */
.bwrap{position:relative}
.mact{position:absolute;top:2px;border:none;background:var(--panel);color:var(--faint);
  width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  cursor:pointer;box-shadow:var(--sh-sm);opacity:0;transition:.13s;z-index:3;padding:0}
.msgrow.in .mact{right:-32px}
.msgrow.out .mact{left:-32px}
.msgrow:hover .mact,.mact.open{opacity:1}
.mact:hover{color:var(--blue-700)}
@media(max-width:760px){ .mact{opacity:1;width:24px;height:24px}
  .msgrow.in .mact{right:-28px} .msgrow.out .mact{left:-28px} }
.mpop{position:fixed;z-index:90;background:var(--panel);border:1px solid var(--line);
  border-radius:12px;box-shadow:var(--sh-lg,0 12px 34px rgba(15,23,42,.18));padding:6px;min-width:158px}
.mpop button{display:flex;align-items:center;gap:9px;width:100%;text-align:left;border:none;
  background:none;font-family:inherit;font-size:13.5px;font-weight:600;color:var(--ink);
  padding:9px 11px;border-radius:9px;cursor:pointer}
.mpop button:hover{background:var(--tint)}
.mpop-back{position:fixed;inset:0;z-index:89}

/* composer reply bar */
.replybar{display:flex;align-items:center;gap:10px;padding:9px 20px;background:var(--panel);
  border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.replybar .bar{width:3px;align-self:stretch;border-radius:3px;background:var(--blue-600);flex:0 0 auto}
.replybar .rb{flex:1;min-width:0}
.replybar .rbwho{font-size:11.5px;font-weight:800;color:var(--blue-700)}
.replybar .rbtx{font-size:12.5px;color:var(--faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.replybar .rbx{border:none;background:none;color:var(--faint);font-size:20px;line-height:1;
  cursor:pointer;padding:0 4px;font-family:inherit}
.replybar .rbx:hover{color:#b91c1c}
@media(max-width:760px){ .replybar{padding:8px 12px} }

/* ---------- forward picker ---------- */
.fwd-back{position:fixed;inset:0;background:rgba(15,23,42,.5);z-index:95;
  display:flex;align-items:center;justify-content:center;padding:24px;
  backdrop-filter:blur(2px);animation:fade .16s ease}
.fwd-card{background:var(--panel);border-radius:20px;width:100%;max-width:460px;
  max-height:min(680px,84vh);display:flex;flex-direction:column;overflow:hidden;
  box-shadow:0 28px 70px rgba(15,23,42,.32);animation:fwdIn .2s cubic-bezier(.2,.8,.3,1)}
@keyframes fwdIn{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}

/* header */
.fwd-card h4{margin:0;padding:18px 20px 14px;font-size:16px;font-weight:800;color:var(--ink);
  display:flex;align-items:center;gap:9px;flex:0 0 auto}
.fwd-card h4 svg{color:var(--blue-600);flex:0 0 auto}
.fwd-card h4 .x{margin-left:auto;border:none;background:var(--tint);width:30px;height:30px;
  border-radius:50%;font-size:19px;line-height:1;color:var(--faint);cursor:pointer;
  font-family:inherit;display:flex;align-items:center;justify-content:center;transition:.13s}
.fwd-card h4 .x:hover{background:#fee2e2;color:#b91c1c}
body.dark .fwd-card h4 .x:hover{background:#4a2226;color:#fca5a5}

/* the message being forwarded */
.fwd-prev{margin:0 20px 14px;padding:10px 13px;border-radius:12px;background:var(--tint);
  border-left:3px solid var(--blue-600);flex:0 0 auto}
.fwd-prev .lb{display:block;font-size:10.5px;font-weight:800;letter-spacing:.05em;
  text-transform:uppercase;color:var(--blue-700);margin-bottom:3px}
.fwd-prev .tx{font-size:13px;line-height:1.45;color:var(--ink);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
body.dark .fwd-prev .lb{color:#9bc0ff}

/* search */
.fwd-sbox{position:relative;margin:0 20px 8px;flex:0 0 auto}
.fwd-sbox svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);
  color:var(--faint);pointer-events:none}
.fwd-search{width:100%;padding:11px 14px 11px 38px;border:1px solid var(--line);
  border-radius:12px;font-size:14px;font-family:inherit;background:var(--tint);
  color:var(--ink);outline:none;transition:.13s}
.fwd-search::placeholder{color:var(--faint)}
.fwd-search:focus{border-color:var(--blue-600);background:var(--panel);
  box-shadow:0 0 0 3px rgba(37,99,235,.12)}

/* list */
.fwd-list{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;
  padding:2px 12px 8px;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
.fwd-list::-webkit-scrollbar{width:6px}
.fwd-list::-webkit-scrollbar-thumb{background:var(--line);border-radius:3px}
.fwd-list::-webkit-scrollbar-track{background:transparent}
.fwd-row{display:flex;align-items:center;gap:12px;padding:10px 10px;border-radius:13px;
  cursor:pointer;transition:background .12s;-webkit-tap-highlight-color:transparent}
.fwd-row:hover{background:var(--tint)}
.fwd-row.on{background:var(--blue-50,#e8f0ff)}
body.dark .fwd-row.on{background:#233138}
.fwd-row .fn{flex:1;min-width:0}
.fwd-row .fn b{display:block;font-size:14px;font-weight:700;color:var(--ink);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.35}
.fwd-row .fn span{display:block;font-size:11.5px;color:var(--faint);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px}
.fwd-row .ck{width:22px;height:22px;border-radius:7px;border:2px solid var(--line);
  flex:0 0 auto;display:flex;align-items:center;justify-content:center;
  background:var(--panel);transition:.13s}
.fwd-row .ck svg{opacity:0;color:#fff;transition:.13s;transform:scale(.6)}
.fwd-row.on .ck{background:var(--blue-600);border-color:var(--blue-600)}
.fwd-row.on .ck svg{opacity:1;transform:none}
.fwd-empty{text-align:center;color:var(--faint);font-size:13px;padding:34px 10px}

/* footer */
.fwd-foot{padding:13px 20px calc(13px + env(safe-area-inset-bottom));
  border-top:1px solid var(--line);display:flex;align-items:center;gap:12px;
  flex:0 0 auto;background:var(--panel)}
.fwd-foot .cnt{flex:1;min-width:0;font-size:12.5px;color:var(--faint);font-weight:600;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fwd-foot button{border:none;border-radius:12px;padding:11px 22px;font-family:inherit;
  font-size:14px;font-weight:700;cursor:pointer;flex:0 0 auto;
  background:linear-gradient(135deg,var(--blue-700),var(--blue-600));color:#fff;
  box-shadow:0 4px 14px rgba(37,99,235,.26);transition:.13s}
.fwd-foot button:hover:not(:disabled){filter:brightness(1.06)}
.fwd-foot button:disabled{background:var(--line);color:var(--faint);
  box-shadow:none;cursor:not-allowed}

/* mobile: bottom sheet */
@media(max-width:760px){
  .fwd-back{align-items:flex-end;padding:0}
  .fwd-card{max-width:none;border-radius:22px 22px 0 0;max-height:90dvh;
    animation:fwdUp .24s cubic-bezier(.2,.85,.3,1)}
  @keyframes fwdUp{from{transform:translateY(100%)}to{transform:none}}
  .fwd-card h4{padding:16px 16px 12px;font-size:16.5px}
  .fwd-card h4::before{content:"";position:absolute;top:7px;left:50%;transform:translateX(-50%);
    width:38px;height:4px;border-radius:3px;background:var(--line)}
  .fwd-card h4{position:relative;padding-top:20px}
  .fwd-prev{margin:0 16px 12px}
  .fwd-sbox{margin:0 16px 8px}
  .fwd-search{font-size:16px}         /* 16px = iOS zoom-on-focus bondho */
  .fwd-list{padding:2px 8px 8px}
  .fwd-row{padding:11px 10px}
  .fwd-foot{padding:13px 16px calc(13px + env(safe-area-inset-bottom))}
}
