/* ============================================================
   SELARAS — selection, decisions, modal, toast
   ============================================================ */
.t-lo{color:var(--lo)}
.pill-reject{background:var(--line-2);color:var(--ink-3)}

/* selection checkbox */
.selbox{all:unset;cursor:pointer;width:20px;height:20px;border-radius:6px;border:1.5px solid #c6cdc0;
  display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;transition:.14s;background:var(--surface)}
.selbox:hover{border-color:var(--brand-500)}
.selbox.on{background:var(--brand);border-color:var(--brand)}

/* decided / selected rows */
.candrow.is-sel,.candcard.is-sel{background:var(--brand-tint)}
.candrow.is-rejected,.candcard.is-rejected,.boardcard.is-rejected{opacity:.5}

/* sticky action bar */
.actionbar{position:sticky;bottom:16px;margin-top:18px;background:var(--brand-700);color:#fff;border-radius:var(--r-md);
  padding:12px 14px 12px 18px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;
  box-shadow:var(--shadow-lg);z-index:25}
.actionbar .ab-count{font-size:14px;font-weight:800}
.actionbar .btn-quiet{color:#bcd6ca}
.actionbar .btn-quiet:hover{background:rgba(255,255,255,.1);color:#fff}
.actionbar .btn-ghost{background:transparent;border-color:rgba(255,255,255,.32);color:#fff}
.actionbar .btn-ghost:hover{background:rgba(255,255,255,.1)}

/* modal */
.modal-wrap{position:fixed;inset:0;z-index:80;background:rgba(12,18,15,.5);backdrop-filter:blur(3px);
  display:flex;align-items:center;justify-content:center;padding:20px;animation:fade .2s ease}
.modal{background:var(--surface);border-radius:var(--r-xl);box-shadow:var(--shadow-lg);width:100%;max-width:480px;
  max-height:90vh;display:flex;flex-direction:column;overflow:hidden}
.modal-hd{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:22px 24px 15px;border-bottom:1px solid var(--line-2)}
.modal-hd h3{font-size:20px;margin-top:3px;letter-spacing:-.3px}
.modal-bd{padding:20px 24px;overflow:auto}
.modal-ft{display:flex;justify-content:flex-end;gap:10px;padding:15px 24px;border-top:1px solid var(--line-2);background:var(--surface-2)}
.decide-group{margin-bottom:18px}
.dg-h{font-size:12px;font-weight:800;display:flex;align-items:center;gap:7px;margin-bottom:10px;text-transform:uppercase;letter-spacing:.05em}
.dg-list{display:flex;flex-wrap:wrap;gap:7px}
.dg-chip{display:inline-flex;align-items:center;gap:7px;background:var(--brand-tint);border:1px solid #cfe0d6;
  border-radius:var(--r-pill);padding:4px 12px 4px 4px;font-size:12.5px;font-weight:700;color:var(--brand-700)}
.dg-chip.is-rej{background:var(--surface-2);border-color:var(--line);color:var(--ink-2)}
.msg-toggle{display:flex;align-items:center;gap:14px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-md);padding:14px 16px;margin-top:4px}
.msg-toggle b{font-size:13.5px}
.msg-edit{margin-top:12px}
.msg-wa{display:flex;gap:10px;background:#E6F5D8;border:1px solid #d4ecc0;border-radius:var(--r-md);padding:12px 14px}
.msg-wa svg{color:var(--wa);flex-shrink:0;margin-top:2px}
.msg-wa textarea{all:unset;width:100%;font-family:inherit;font-size:12.5px;line-height:1.55;color:#1d2b16;white-space:pre-wrap;resize:none}

/* toast */
.toast{position:fixed;left:50%;bottom:24px;z-index:90;background:var(--ink);color:#fff;display:flex;align-items:center;gap:9px;
  padding:13px 20px;border-radius:var(--r-pill);box-shadow:var(--shadow-lg);font-size:13.5px;font-weight:600;max-width:90vw;
  animation:toastin .26s cubic-bezier(.2,.7,.2,1)}
.toast svg{color:#7fd0ad;flex-shrink:0}
@keyframes toastin{from{transform:translate(-50%,14px);opacity:0}to{transform:translate(-50%,0);opacity:1}}
.toast{transform:translate(-50%,0)}

/* report decision footer */
.report-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:18px;
  background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:15px 20px;box-shadow:var(--shadow-xs)}

@media(max-width:560px){
  .actionbar{flex-direction:column;align-items:stretch}
  .actionbar .row.wrap{justify-content:stretch}
  .actionbar .btn{flex:1}
  .report-actions .row{width:100%}
  .report-actions .btn{flex:1}
}
