/* The site guide's chat on the public home (templates/platform_home.html).
   Classes are gd- prefixed so no shared stylesheet can match them (rule #94).
   Every grid declares its columns and every scroller its x axis (rule #57). */
.gd-launch{position:fixed;right:18px;bottom:calc(18px + var(--gd-lift,0px) + env(safe-area-inset-bottom,0px));
  z-index:9000;display:inline-flex;align-items:center;gap:10px;padding:10px 16px 10px 10px;
  min-height:48px;border-radius:999px;border:1px solid rgba(255,255,255,.12);cursor:pointer;
  background:rgba(15,23,42,.92);color:#E2E8F0;font:600 .93rem 'Space Grotesk',system-ui,sans-serif;
  box-shadow:0 14px 40px -12px rgba(0,0,0,.7);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.gd-launch:hover{border-color:rgba(125,182,245,.45)}
.gd-mark{width:32px;height:32px;min-width:32px;border-radius:10px;display:grid;place-items:center;
  background:linear-gradient(135deg,#3b82f6,#6366f1)}
.gd-mark svg{width:17px;height:17px}

.gd-panel{position:fixed;right:18px;bottom:calc(18px + var(--gd-lift,0px) + env(safe-area-inset-bottom,0px));
  z-index:9001;width:min(390px,calc(100vw - 36px));height:min(580px,calc(100dvh - 120px));
  display:flex;flex-direction:column;border-radius:20px;overflow:hidden;
  background:#0b1120;border:1px solid rgba(255,255,255,.1);color:#E2E8F0;
  box-shadow:0 30px 80px -20px rgba(0,0,0,.8);font-family:'Space Grotesk',system-ui,sans-serif}
.gd-head{display:flex;align-items:center;gap:12px;padding:14px 14px 12px 16px;
  border-bottom:1px solid rgba(255,255,255,.08)}
.gd-head .gd-mark{width:38px;height:38px;min-width:38px;border-radius:12px}
.gd-who{flex:1;min-width:0}
.gd-who b{display:block;font:600 .98rem 'Sora',system-ui,sans-serif}
.gd-who small{display:block;color:#94A3B8;font-size:.8rem;margin-top:1px}
.gd-x{appearance:none;border:0;background:none;color:#94A3B8;cursor:pointer;width:40px;height:40px;
  border-radius:10px;display:grid;place-items:center}
.gd-x:hover{color:#fff;background:rgba(255,255,255,.06)}
.gd-x svg{width:20px;height:20px}

.gd-body{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding:16px;
  display:grid;gap:10px;grid-template-columns:minmax(0,1fr);align-content:start;
  overscroll-behavior:contain}
.gd-msg{max-width:88%;padding:10px 13px;border-radius:16px;line-height:1.5;font-size:.95rem;
  white-space:pre-wrap;overflow-wrap:anywhere}
.gd-msg.gd-bot{justify-self:start;background:rgba(255,255,255,.06);border-bottom-left-radius:5px}
.gd-msg.gd-me{justify-self:end;background:#2563eb;color:#fff;border-bottom-right-radius:5px}
.gd-msg a{color:#93c5fd;font-weight:600}
.gd-chips{display:flex;flex-wrap:wrap;gap:8px}
.gd-chips button{appearance:none;cursor:pointer;border-radius:999px;padding:8px 13px;min-height:38px;
  border:1px dashed rgba(125,182,245,.5);background:none;color:#7DB6F5;font:500 .86rem 'Space Grotesk',system-ui,sans-serif}
.gd-chips button:hover{border-style:solid}
.gd-dots{display:inline-flex;gap:4px;padding:4px 0}
.gd-dots i{width:6px;height:6px;border-radius:50%;background:#94A3B8;animation:gdb 1s infinite ease-in-out}
.gd-dots i:nth-child(2){animation-delay:.15s}.gd-dots i:nth-child(3){animation-delay:.3s}
@keyframes gdb{0%,80%,100%{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}

.gd-foot{border-top:1px solid rgba(255,255,255,.08);padding:10px 12px 8px}
.gd-form{display:flex;gap:8px;align-items:center}
.gd-form input{flex:1;min-width:0;-webkit-appearance:none;appearance:none;box-sizing:border-box;
  font:500 1rem 'Space Grotesk',system-ui,sans-serif;color:#E2E8F0;background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:11px 13px;min-height:44px;outline:none}
.gd-form input:focus{border-color:rgba(10,132,255,.6)}
.gd-send{appearance:none;border:0;cursor:pointer;width:44px;height:44px;min-width:44px;border-radius:12px;
  display:grid;place-items:center;background:#0A84FF;color:#fff}
.gd-send[disabled]{opacity:.45;cursor:default}
.gd-send svg{width:18px;height:18px}
.gd-note{margin:6px 2px 0;color:#64748B;font-size:.74rem}
.gd-hire{display:inline-flex;margin-top:2px}

@media (max-width:560px){
  /* Full screen, and the consent banner (z 10000) covers only padding: the
     input sits above it with no strip of page showing between. */
  .gd-panel{right:0;left:0;bottom:0;top:0;width:auto;height:auto;border-radius:0;border:0;
    padding-top:var(--jsafe-top, env(safe-area-inset-top, 0px));
    padding-bottom:calc(env(safe-area-inset-bottom,0px) + var(--gd-lift,0px))}
  .gd-launch{right:14px}
  .gd-launch .gd-label-long{display:none}
}
@media (prefers-reduced-motion:reduce){.gd-dots i{animation:none}}
[hidden].gd-panel,[hidden].gd-launch{display:none !important}

/* The lead card (guide-chat.js leadCard): a small form inside the chat. */
.gd-lead{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;padding:12px;border-radius:14px;border:1px solid rgba(125,182,245,.35);
  background:rgba(37,99,235,.08);max-width:100%;min-width:0}
.gd-lead-q{margin:0;font-size:.93rem;line-height:1.45}
.gd-lead input{-webkit-appearance:none;appearance:none;box-sizing:border-box;width:100%;min-width:0;
  font:500 1rem 'Space Grotesk',system-ui,sans-serif;color:#E2E8F0;background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:10px 12px;outline:none}
.gd-lead input:focus{border-color:rgba(10,132,255,.6)}
.gd-lead .gd-hp{position:absolute;left:-10000px;width:1px;height:1px;opacity:0}
.gd-lead-row{display:flex;gap:8px;flex-wrap:wrap}
.gd-lead-go,.gd-lead-no{appearance:none;cursor:pointer;border-radius:10px;min-height:42px;padding:0 14px;
  font:600 .9rem 'Space Grotesk',system-ui,sans-serif}
.gd-lead-go{border:0;background:#0A84FF;color:#fff}
.gd-lead-go[disabled]{opacity:.5;cursor:default}
.gd-lead-no{border:1px solid rgba(255,255,255,.14);background:none;color:#94A3B8}
.gd-lead-fine{margin:0;color:#64748B;font-size:.74rem}
.gd-lead-msg{margin:0;color:#FCA5A5;font-size:.82rem}
.gd-lead-msg:empty{display:none}
