/* Send to XactAnalysis: the picker every Brief shares (library/xa_photo_send).
   Tokens only, from design/adrios.css. The LC Brief links that stylesheet. The
   Ops Brief carries the same token names in its own :root, without --action
   and --accent, so those two fall back to the Ops Brief's own button and link
   colours. */
.xa-ov { position:fixed; inset:0; background:rgba(0,0,0,.35); display:flex; align-items:center; justify-content:center; z-index:400; padding:16px; }
.xa-modal { width:min(980px, 96vw); max-height:88vh; overflow-y:auto; box-sizing:border-box; background:var(--surface); color:var(--ink); border-radius:12px; padding:20px; box-shadow:0 10px 40px rgba(0,0,0,.2); }
/* A Brief may have no global [hidden] rule, and .xa-row sets display:flex. */
.xa-ov [hidden] { display:none !important; }
.xa-title { font-size:16px; font-weight:700; margin-bottom:12px; }
.xa-jn { color:var(--accent, var(--green-tx)); }
.xa-actions { display:flex; justify-content:flex-end; gap:8px; margin-top:18px; }
.xa-btn { padding:8px 14px; border-radius:8px; border:1px solid var(--border-2); background:var(--surface); color:var(--ink); font-size:13px; font-weight:600; font-family:inherit; cursor:pointer; }
.xa-btn:hover { background:var(--surface-2); }
.xa-btn.primary { background:var(--action, var(--green)); border-color:var(--action, var(--green)); color:var(--surface); }
.xa-btn.primary:hover { filter:brightness(.92); }
.xa-btn:disabled { opacity:.45; cursor:not-allowed; }
.xa-link { background:none; border:none; color:var(--accent, var(--green-tx)); font-size:12px; font-family:inherit; cursor:pointer; padding:4px 0; }
.xa-mono { font-family:var(--mono); font-variant-numeric:tabular-nums; }
.xa-muted { font-size:12px; color:var(--faint); }
.xa-where { border:1px solid var(--divider); border-radius:8px; padding:8px 12px; font-size:13px; line-height:1.45; }
.xa-row { display:flex; gap:10px; padding:3px 0; }
.xa-k { flex:0 0 44px; font-size:11px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; color:var(--faint); padding-top:2px; }
.xa-bar { display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin:12px 0 6px; font-size:13px; }
.xa-bar #xa-count { font-weight:600; color:var(--ink); }
.xa-hint { margin-left:auto; font-size:11.5px; color:var(--faint); }
.xa-scroll { max-height:max(160px, calc(88vh - 380px)); overflow-y:auto; border-top:1px solid var(--divider); border-bottom:1px solid var(--divider); padding:2px 2px 8px; }
.xa-day { display:flex; align-items:center; gap:8px; margin:12px 0 6px; font-size:12px; font-weight:600; color:var(--ink-2); }
.xa-day-n { color:var(--faint); font-weight:500; }
.xa-chk { flex:none; width:18px; height:18px; padding:0; border-radius:50%; border:1.5px solid var(--border-2); background:var(--surface); color:var(--action, var(--green)); font-size:11px; font-weight:700; line-height:15px; text-align:center; cursor:pointer; transition:background .12s, border-color .12s; }
.xa-chk.some { border-color:var(--action, var(--green)); }
.xa-chk.all { background:var(--action, var(--green)); border-color:var(--action, var(--green)); color:var(--surface); }
.xa-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(92px,1fr)); gap:6px; }
.xa-ph { position:relative; padding:0; border:2px solid transparent; border-radius:6px; background:var(--surface-2); cursor:pointer; aspect-ratio:1; overflow:hidden; opacity:.4; transition:opacity .12s, border-color .12s; }
.xa-ph img { width:100%; height:100%; object-fit:cover; display:block; }
.xa-ph.on { opacity:1; border-color:var(--action, var(--green)); }
.xa-tick { position:absolute; top:4px; right:4px; width:18px; height:18px; border-radius:50%; background:var(--surface); color:var(--faint); font-size:12px; line-height:18px; text-align:center; font-weight:700; border:1px solid var(--border-2); }
.xa-ph.on .xa-tick { background:var(--action, var(--green)); color:var(--surface); border-color:var(--action, var(--green)); }
.xa-note { margin-top:10px; font-size:12px; color:var(--muted); line-height:1.45; }
.xa-find { display:flex; flex-direction:column; gap:6px; flex:1 1 auto; min-width:0; }
.xa-find input { width:100%; box-sizing:border-box; padding:7px 10px; border:1px solid var(--border-2); border-radius:8px; font-size:13px; font-family:inherit; }
.xa-hits { display:flex; flex-direction:column; max-height:220px; overflow-y:auto; }
.xa-hit { text-align:left; padding:6px 8px; border:0; border-bottom:1px solid var(--divider); background:var(--surface); font-size:13px; font-family:inherit; color:var(--ink); cursor:pointer; }
.xa-hit:hover { background:var(--surface-2); }
.xa-hit-sub { display:block; font-size:11.5px; color:var(--muted); }
.xa-find-note { font-size:12px; color:var(--faint); }
/* The Company Cam projects a person picks from when no match is certain. */
.xa-cands { display:flex; flex-direction:column; margin-top:10px; border:1px solid var(--divider); border-radius:8px; overflow:hidden; max-height:260px; overflow-y:auto; }
.xa-cands:empty { display:none; }
.xa-cand { display:flex; flex-direction:column; gap:1px; padding:8px 12px; }
.xa-cand:last-child { border-bottom:0; }
.xa-cand-name { font-weight:600; }
.xa-tag { align-self:flex-start; margin-bottom:2px; font-size:10.5px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; color:var(--faint); }
.xa-cc-find { margin-top:10px; }
.xa-cc-find .xa-cands { margin-top:0; }
.xa-warn { color:var(--need); font-weight:600; }
.xa-refuse { padding:10px 12px; border-radius:8px; background:var(--need-bg); border-left:3px solid var(--need); font-size:13px; line-height:1.45; color:var(--ink-2); }
.xa-detail { margin-top:6px; font-size:12px; color:var(--muted); }
.xa-done { padding:10px 12px; border-radius:8px; background:var(--ok-bg); border-left:3px solid var(--ok); font-size:13px; line-height:1.5; color:var(--ink-2); }
.xa-confirm { font-size:14px; line-height:1.5; }
.xa-kind { display:flex; flex-direction:column; gap:4px; margin:10px 0 0; padding:8px 12px; border:1px solid var(--divider); border-radius:8px; font-size:13px; }
.xa-kind label { display:flex; align-items:center; gap:8px; cursor:pointer; }
.xa-kind input { accent-color:var(--action, var(--green)); margin:0; }
.xa-kind label:has(input:disabled) { color:var(--faint); cursor:not-allowed; }
.xa-confirm p, .xa-done p { margin:8px 0 0; }
@media (max-width: 600px) { .xa-modal { padding:14px; } .xa-grid { grid-template-columns:repeat(auto-fill,minmax(72px,1fr)); } .xa-hint { margin-left:0; } }
