/* A-Flow 홍보 페이지 — 문의 위젯 스타일.
   ⚠ 색은 index.html 이 정의한 토큰만 쓴다(새 색을 만들지 않는다).
     다크/라이트는 그 토큰이 이미 세 갈래로 정의돼 있어 여기서 다시 하지 않는다. */

/* ══ 문의 위젯 ═══════════════════════════════════════════
   텔레그램 계정이 없는 방문자를 위한 경로. 릴레이(/api/inquiry)를
   브라우저가 직접 부른다 — 이 페이지를 내려주는 웹서버는 관여하지 않는다.
   색은 위쪽에서 정의한 토큰만 쓴다(새 색을 만들지 않는다).      */
.iq-fab{
  position:fixed;right:24px;z-index:60;
  bottom:max(24px,env(safe-area-inset-bottom));
  /* ⚠ 기본은 숨김. 스크립트가 준비되면 .on 을 붙인다 —
     위젯이 실패했을 때 눌러도 아무 일 없는 버튼이 남지 않게. */
  display:none;align-items:center;gap:10px;
  padding:15px 24px;border:0;border-radius:99px;cursor:pointer;
  font-family:inherit;font-size:16px;font-weight:600;color:#fff;
  background:linear-gradient(135deg,var(--acc-deep),#7c3aed);
  box-shadow:0 14px 34px -10px var(--glow);
  transition:transform .15s ease,box-shadow .15s ease;
}
.iq-fab.on{display:inline-flex}
.iq-fab:hover{transform:translateY(-2px);box-shadow:0 20px 44px -10px var(--glow)}
.iq-fab .dot{
  width:9px;height:9px;border-radius:50%;background:#fff;
  box-shadow:0 0 0 4px rgba(255,255,255,.28);
}

.iq-panel{
  position:fixed;right:24px;z-index:61;
  bottom:max(92px,calc(env(safe-area-inset-bottom) + 92px));
  width:min(392px,calc(100vw - 32px));height:min(620px,calc(100vh - 150px));
  display:none;flex-direction:column;overflow:hidden;
  background:var(--card);border:1px solid var(--line);border-radius:16px;
  box-shadow:var(--shadow);
  font-size:15px;line-height:1.6;
}
.iq-panel.open{display:flex;animation:iqin .22s cubic-bezier(.2,.8,.3,1)}
@keyframes iqin{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:520px){
  .iq-panel{right:8px;left:8px;width:auto;height:min(78vh,600px);bottom:max(88px,calc(env(safe-area-inset-bottom) + 88px))}
  .iq-fab{right:16px;padding:14px 20px}
}

.iq-head{
  display:flex;align-items:center;gap:10px;padding:15px 18px;flex:none;
  border-bottom:1px solid var(--line-soft);background:var(--card-top);
}
.iq-head b{font-size:16px;font-weight:700;letter-spacing:-.02em}
.iq-head .sub{font-size:12.5px;color:var(--tx-faint);margin-left:auto}
.iq-x{
  border:0;background:none;cursor:pointer;color:var(--tx-faint);
  font-size:20px;line-height:1;padding:4px 6px;border-radius:6px;font-family:inherit;
}
.iq-x:hover{color:var(--tx);background:var(--bg-2)}

.iq-body{flex:1;overflow-y:auto;padding:18px;display:flex;flex-direction:column;gap:14px}
.iq-intro{display:flex;flex-direction:column;gap:14px}
.iq-intro p{font-size:14.5px;color:var(--tx-dim)}
.iq-label{font-size:13px;color:var(--tx-faint);display:flex;flex-direction:column;gap:6px}
.iq-in,.iq-ta{
  width:100%;font-family:inherit;font-size:15px;color:var(--tx);
  background:var(--bg-2);border:1px solid var(--line);border-radius:9px;padding:11px 13px;
}
.iq-ta{resize:vertical;min-height:112px;line-height:1.6}
.iq-in:focus,.iq-ta:focus{outline:2px solid var(--acc);outline-offset:1px;border-color:transparent}
.iq-send{
  border:0;border-radius:9px;padding:13px 18px;cursor:pointer;
  font-family:inherit;font-size:15px;font-weight:600;color:#fff;
  background:linear-gradient(135deg,var(--acc-deep),#7c3aed);
}
.iq-send:disabled{opacity:.55;cursor:default}

/* 말풍선 */
.iq-msg{display:flex;flex-direction:column;gap:5px;max-width:86%}
.iq-msg.me{align-self:flex-end;align-items:flex-end}
.iq-msg.staff{align-self:flex-start}
.iq-bub{padding:11px 14px;border-radius:14px;white-space:pre-wrap;word-break:break-word;font-size:14.5px}
.iq-msg.me .iq-bub{background:var(--acc-deep);color:#fff;border-bottom-right-radius:5px}
.iq-msg.staff .iq-bub{background:var(--bg-2);border:1px solid var(--line);border-bottom-left-radius:5px}
.iq-meta{font-size:11.5px;color:var(--tx-faint);font-family:"IBM Plex Mono",monospace}
.iq-sys{align-self:center;font-size:12.5px;color:var(--tx-faint);text-align:center;max-width:100%}

/* 첨부 */
.iq-thumb{max-width:200px;border-radius:10px;border:1px solid var(--line)}
.iq-chip{
  display:inline-flex;align-items:center;gap:8px;text-decoration:none;
  background:var(--bg-2);border:1px solid var(--line);border-radius:9px;
  padding:9px 12px;font-size:13px;color:var(--tx-dim);
}
.iq-chip:hover{border-color:var(--acc);color:var(--acc)}
.iq-chip .sz{color:var(--tx-faint);font-family:"IBM Plex Mono",monospace;font-size:11.5px}
.iq-prog{height:4px;border-radius:2px;background:var(--line-soft);overflow:hidden}
.iq-prog i{display:block;height:100%;width:0;background:var(--acc);transition:width .2s ease}

/* 경고 */
.iq-confirm{
  border:1px solid var(--b-orange);border-radius:10px;padding:13px;
  display:flex;flex-direction:column;gap:10px;font-size:14px;color:var(--tx-dim);
}
.iq-confirm .row{display:flex;gap:8px}
.iq-btn2{
  flex:1;border:1px solid var(--line);background:var(--card);color:var(--tx);
  border-radius:8px;padding:9px;cursor:pointer;font-family:inherit;font-size:14px;
}
.iq-btn2.warn{border-color:var(--b-orange);color:var(--b-orange)}
.iq-btn2:hover{border-color:var(--acc);color:var(--acc)}
.iq-note{font-size:13.5px;color:var(--b-orange);line-height:1.55}

/* 입력줄 */
.iq-foot{flex:none;display:flex;gap:9px;align-items:flex-end;padding:14px 18px;border-top:1px solid var(--line-soft)}
.iq-foot .iq-ta{min-height:44px;max-height:132px;padding:11px 13px;font-size:14.5px}
.iq-clip{
  border:1px solid var(--line);background:var(--bg-2);color:var(--tx-dim);
  border-radius:9px;width:44px;height:44px;flex:none;cursor:pointer;font-size:17px;font-family:inherit;
}
.iq-clip:hover{border-color:var(--acc);color:var(--acc)}
.iq-go{
  border:0;border-radius:9px;height:44px;padding:0 17px;flex:none;cursor:pointer;
  font-family:inherit;font-size:14.5px;font-weight:600;color:#fff;
  background:linear-gradient(135deg,var(--acc-deep),#7c3aed);
}
.iq-go:disabled{opacity:.55;cursor:default}

/* 허니팟 — 사람 눈에 보이지 않지만 display:none 은 아니다(봇이 건너뛴다) */
.iq-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none}

@media(prefers-reduced-motion:reduce){
  .iq-panel.open{animation:none}
  .iq-fab:hover{transform:none}
  .iq-prog i{transition:none}
}
