/* Golden Deal — agent avatars and the live research workspace.
   Extends styles.css; reuses --ink, --muted, --cream, --gold, --line. */

:root{
  --gd-ground:#faf9f4;
  --gd-host:#b68c48; --gd-scout:#2f7d8c; --gd-proof:#3f7d52;
  --gd-echo:#6b5aa6; --gd-lex:#3a6ba5;  --gd-abax:#b0653a;
  --gd-ok:#3f7d52;   --gd-ok-bg:#e3efe6;
  --gd-bad:#a34a3c;  --gd-bad-bg:#f4e3e0;
  --gd-un:#6b5aa6;   --gd-un-bg:#ebe7f5;
  --gd-neutral-bg:#eeefe6;
  --gd-panel:#fffef9;
}

/* ---------- avatars ---------- */
.gd-av{display:block;overflow:visible}
.gd-av .body{fill:var(--c)}
.gd-av .eye{fill:var(--gd-ground);transform-box:fill-box;transform-origin:center}
.gd-av .ring{fill:none;stroke:var(--c);opacity:0;transform-box:fill-box;transform-origin:center}
.gd-av .mouth{fill:none;stroke:var(--gd-ground);stroke-width:3.5;stroke-linecap:round;opacity:0}
.gd-av .bars rect{fill:var(--c);transform-box:fill-box;transform-origin:center bottom}
.gd-avatar{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}

.gd-avatar[data-state="idle"] .gd-av{animation:gd-float 4.2s ease-in-out infinite}
.gd-avatar[data-state="idle"] .eye{animation:gd-blink 5.1s infinite}
.gd-avatar[data-state="idle"] .eye.r{animation-delay:.04s}

.gd-avatar[data-state="working"] .gd-av{animation:gd-float 1.5s ease-in-out infinite}
.gd-avatar[data-state="working"] .eye{animation:gd-scan 1.9s ease-in-out infinite}
.gd-avatar[data-state="working"] .ring{animation:gd-pulse 1.9s ease-out infinite}
.gd-avatar[data-state="working"] .bars rect{animation:gd-eq .85s ease-in-out infinite}
.gd-avatar[data-state="working"] .bars rect:nth-child(2){animation-delay:.14s}
.gd-avatar[data-state="working"] .bars rect:nth-child(3){animation-delay:.28s}

.gd-avatar[data-state="found"] .gd-av{animation:gd-hop .5s ease-out 2}
.gd-avatar[data-state="found"] .eye{transform:scaleY(.42) translateY(-3px);animation:none}
.gd-avatar[data-state="found"] .mouth{opacity:1}

.gd-avatar[data-state="blocked"] .gd-av{animation:gd-shake .42s ease-in-out 2}
.gd-avatar[data-state="blocked"] .eye{transform:scaleY(.18);animation:none}

.gd-avatar[data-state="done"] .gd-av{opacity:.8}
.gd-avatar[data-state="done"] .eye{animation:gd-blink 6.5s infinite}

@keyframes gd-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes gd-hop{0%{transform:translateY(0)}40%{transform:translateY(-9px)}100%{transform:translateY(0)}}
@keyframes gd-shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
@keyframes gd-blink{0%,92%,100%{transform:scaleY(1)}95%{transform:scaleY(.08)}}
@keyframes gd-scan{0%,100%{transform:translateX(-2.5px)}50%{transform:translateX(2.5px)}}
@keyframes gd-pulse{0%{opacity:.5;transform:scale(.9);stroke-width:2}100%{opacity:0;transform:scale(1.5);stroke-width:0}}
@keyframes gd-eq{0%,100%{transform:scaleY(.35)}50%{transform:scaleY(1)}}

@media (prefers-reduced-motion:reduce){
  .gd-av,.gd-av .eye,.gd-av .ring,.gd-av .bars rect{animation:none!important}
  .gd-avatar[data-state="working"] .ring{opacity:.3}
  .gd-ev{animation:none!important}
}

/* ---------- ask box ---------- */
.gd-ask{max-width:820px;margin:0 auto}
.gd-ask-head{display:flex;align-items:center;gap:15px;margin-bottom:18px}
.gd-ask-head h2{margin:0;font-size:27px;letter-spacing:-1px}
.gd-ask-head p{margin:2px 0 0;font-size:12px;color:var(--muted)}
.gd-ask form{display:flex;gap:11px;align-items:stretch;flex-wrap:wrap}
.gd-ask input[type=text]{flex:1 1 260px;margin:0;padding:17px 18px;font-size:15px;
  font-family:Manrope,sans-serif;border:1px solid #c9cebe;border-radius:6px;background:var(--gd-panel)}
.gd-ask .button{flex:0 0 auto}
.gd-chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}
.gd-chip{font-size:10px;letter-spacing:.6px;background:var(--gd-neutral-bg);border:1px solid var(--line);
  border-radius:20px;padding:7px 13px;display:inline-flex;gap:7px;align-items:center;color:var(--muted)}
.gd-chip b{color:var(--ink);font-weight:600;letter-spacing:0}
.gd-examples{margin-top:20px;display:flex;flex-direction:column;gap:7px}
.gd-examples button{text-align:left;font-size:12px;color:var(--muted);background:var(--gd-panel);
  border:1px solid var(--line);border-radius:6px;padding:11px 14px;transition:border-color .15s}
.gd-examples button:hover{border-color:#b9c0ae;color:var(--ink)}

/* ---------- run workspace ---------- */
.gd-run{max-width:1080px;margin:0 auto}
.gd-run-top{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:flex-start;
  padding-bottom:20px;border-bottom:1px solid var(--line);margin-bottom:24px}
.gd-run-top h2{margin:0;font-size:24px;letter-spacing:-1px}
.gd-run-meta{font-size:10px;letter-spacing:1.1px;color:var(--muted);margin-top:6px;
  display:flex;gap:9px;flex-wrap:wrap;align-items:center}
.gd-mode{border:1px solid var(--gd-un);color:var(--gd-un);background:var(--gd-un-bg);
  padding:3px 8px;border-radius:4px;font-size:9px;letter-spacing:1px}
.gd-mode.live{border-color:var(--gd-ok);color:var(--gd-ok);background:var(--gd-ok-bg)}
.gd-counts{display:flex;gap:22px}
.gd-counts div{text-align:right}
.gd-counts b{font-family:Manrope,sans-serif;font-size:25px;font-weight:600;display:block;line-height:1;
  font-variant-numeric:tabular-nums}
.gd-counts small{font-size:8px;letter-spacing:1.3px;color:var(--muted)}
.gd-counts .f b{color:var(--gd-scout)}
.gd-counts .v b{color:var(--gd-ok)}
.gd-counts .x b{color:var(--gd-bad)}

.gd-grid{display:grid;grid-template-columns:200px minmax(0,1fr);gap:26px;align-items:start}
@media(max-width:760px){.gd-grid{grid-template-columns:1fr}}

.gd-stages{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.gd-stages li{display:flex;gap:11px;align-items:center;padding:9px 11px;border-radius:6px;
  font-size:12px;color:var(--muted)}
.gd-stages li i{width:15px;height:15px;border-radius:50%;border:1.5px solid #c2c8b8;flex:0 0 auto;
  display:grid;place-items:center;font-size:9px;font-style:normal;color:var(--gd-panel)}
.gd-stages li[data-s="run"]{color:var(--ink);background:var(--gd-neutral-bg);font-weight:600}
.gd-stages li[data-s="run"] i{border-color:var(--gd-scout);background:var(--gd-scout);animation:gd-tick 1.2s ease-in-out infinite}
.gd-stages li[data-s="done"] i{border-color:var(--gd-ok);background:var(--gd-ok)}
.gd-stages li[data-s="done"] i::after{content:"✓"}
@keyframes gd-tick{0%,100%{opacity:1}50%{opacity:.4}}
@media (prefers-reduced-motion:reduce){.gd-stages li[data-s="run"] i{animation:none}}

.gd-log{background:var(--gd-panel);border:1px solid var(--line);border-radius:8px;padding:6px;
  max-height:390px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}
.gd-ev{display:flex;gap:12px;padding:11px 12px;border-radius:6px;align-items:flex-start;
  font-size:13px;line-height:1.55}
.gd-ev:nth-child(odd){background:#f7f7f0}
.gd-ev .gd-avatar{margin-top:1px}
.gd-ev p{margin:0;flex:1;min-width:0;line-height:1.55}
.gd-ev b{font-weight:600}
.gd-ev span{color:var(--muted)}
.gd-ev.is-new{animation:gd-slide .3s ease-out}
@keyframes gd-slide{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.gd-empty{padding:26px 14px;text-align:center;color:var(--muted);font-size:12px}

.gd-tag{font-size:8px;letter-spacing:1.1px;text-transform:uppercase;padding:3px 8px;border-radius:4px;
  white-space:nowrap;flex:0 0 auto;margin-top:3px;background:var(--gd-neutral-bg);color:var(--muted)}
.gd-tag[data-k="verified"]{background:var(--gd-ok-bg);color:var(--gd-ok)}
.gd-tag[data-k="excluded"]{background:var(--gd-bad-bg);color:var(--gd-bad)}
.gd-tag[data-k="unresolved"],.gd-tag[data-k="asking"],.gd-tag[data-k="gap"]{background:var(--gd-un-bg);color:var(--gd-un)}

.gd-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:16px;
  font-size:10px;letter-spacing:.8px;color:var(--muted)}
.gd-bar .track{display:block;flex:1 1 130px;min-width:100px;height:5px;background:#e8e9de;border-radius:3px;overflow:hidden}
.gd-bar .track i{display:block;height:100%;background:var(--gd-scout);border-radius:3px;transition:width .4s ease}
.gd-controls{display:flex;gap:10px;margin-top:18px;flex-wrap:wrap;align-items:center}
.gd-controls .button{gap:10px}
.gd-sound{border:1px solid #c9cebe;background:var(--gd-panel);border-radius:6px;padding:12px 15px;
  font-size:11px;font-weight:600;display:inline-flex;gap:8px;align-items:center;color:var(--ink)}
.gd-sound[aria-pressed="true"]{border-color:var(--gd-scout);color:var(--gd-scout);background:#eaf4f6}
.gd-sound i{width:7px;height:7px;border-radius:50%;background:#c2c8b8;font-style:normal;flex:0 0 auto}
.gd-sound[aria-pressed="true"] i{background:var(--gd-scout)}

/* ---------- crew strip ---------- */
.gd-crew{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px}
.gd-mate{background:var(--gd-panel);border:1px solid var(--line);border-radius:8px;padding:12px 14px;
  display:flex;gap:11px;align-items:center;min-width:0;flex:1 1 168px;transition:border-color .2s}
.gd-mate[data-state="working"]{border-color:var(--gd-scout)}
.gd-mate strong{font-family:Manrope,sans-serif;font-size:13px;display:block;line-height:1.2}
.gd-mate small{font-size:9.5px;color:var(--muted);line-height:1.4;display:block}

/* ---------- result ---------- */
.gd-result{margin-top:34px;border-top:1px solid var(--line);padding-top:30px}
.gd-verdict{display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap;margin-bottom:22px}
.gd-badge{font-size:9px;letter-spacing:1.3px;text-transform:uppercase;padding:8px 13px;border-radius:5px;
  border:1px solid var(--gd-un);background:var(--gd-un-bg);color:var(--gd-un);white-space:nowrap}
.gd-badge.gold{border-color:var(--gold);background:#f6efe1;color:#8a6a2f}
.gd-verdict .who{flex:1 1 240px;min-width:0}
.gd-verdict .who h3{margin:0;font-size:21px;letter-spacing:-.6px}
.gd-verdict .who p{margin:4px 0 0;font-size:11px;letter-spacing:.5px;color:var(--muted)}
.gd-verdict .amt{text-align:right;font-variant-numeric:tabular-nums}
.gd-verdict .amt b{font-family:Manrope,sans-serif;font-size:29px;font-weight:600;display:block;line-height:1.1}
.gd-verdict .amt small{font-size:10px;color:var(--muted)}

.gd-meters{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));margin-bottom:22px}
.gd-meter{background:var(--gd-panel);border:1px solid var(--line);border-radius:8px;padding:16px 17px}
.gd-meter small{font-size:8px;letter-spacing:1.3px;text-transform:uppercase;color:var(--muted)}
.gd-meter b{font-family:Manrope,sans-serif;font-size:22px;font-weight:600;display:block;margin:5px 0 9px;line-height:1.1}
.gd-meter .track{display:block;height:7px;background:#e8e9de;border-radius:4px;overflow:hidden}
.gd-meter .track i{display:block;height:100%;border-radius:4px}
.gd-meter.opp b{color:#8a6a2f}
.gd-meter.opp .track i{background:var(--gold)}
.gd-meter.conf b{color:var(--gd-un)}
.gd-meter.conf .track i{background:var(--gd-un)}
.gd-meter p{font-size:11px;color:var(--muted);margin:10px 0 0;line-height:1.55}

.gd-facts{display:grid;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:8px;
  overflow:hidden;grid-template-columns:repeat(auto-fit,minmax(126px,1fr));margin-bottom:24px}
.gd-facts div{background:var(--gd-panel);padding:13px 15px}
.gd-facts dt{font-size:8px;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted);margin:0 0 3px}
.gd-facts dd{margin:0;font-weight:600;font-size:13px;font-variant-numeric:tabular-nums}

.gd-claim{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-bottom:1px solid var(--line);
  font-size:12.5px;color:var(--muted);line-height:1.6}
.gd-claim:last-of-type{border-bottom:0}
.gd-claim b{color:var(--ink);font-weight:600}
.gd-src{font-size:9px;letter-spacing:.6px;color:var(--muted);background:var(--gd-neutral-bg);
  border:1px solid var(--line);padding:2px 7px;border-radius:4px;margin-left:6px;white-space:nowrap;display:inline-block}

.gd-none{text-align:center;padding:34px 18px}
.gd-none h3{font-size:20px;margin:16px 0 10px;letter-spacing:-.5px}
.gd-none p{font-size:13px;color:var(--muted);max-width:520px;margin:0 auto 18px}

@media print{
  .gd-controls,.gd-sound,.gd-examples,.gd-stages,.gd-bar{display:none!important}
  .gd-log{max-height:none;overflow:visible}
}
