/**
 * [EN] Airmen Quiz Dock & Issue Report Styles (iPilot Standard)
 * [KR] 에어맨 퀴즈 하단 플로팅 독 및 문제 오류 제보 모달 스타일
 */
#ipqd-dock[hidden], #ipqd-dock .ipqd-report[hidden], .ipilot-qr-overlay[hidden] { display: none !important; }

#ipqd-dock {
  --ipqd-surface: linear-gradient(115deg, rgba(255,255,255,.98), rgba(240,246,255,.98));
  --ipqd-border: #cedaf0; --ipqd-ink: #1c2a42; --ipqd-muted: #687892;
  --ipqd-rep-bg: #edf2fa; --ipqd-rep-border: #cad6e9; --ipqd-rep-ink: #4a5b78;
  position: fixed !important; bottom: calc(16px + env(safe-area-inset-bottom, 0px)) !important;
  left: var(--ipqd-center, 50%) !important; transform: translateX(-50%) !important;
  z-index: 9987 !important; display: flex !important; align-items: center; gap: 12px;
  width: min(var(--ipqd-width, calc(100vw - 32px)), 820px); min-height: 64px;
  box-sizing: border-box; margin: 0; padding: 8px 14px; border: 1px solid var(--ipqd-border);
  border-radius: 20px; background: var(--ipqd-surface); color: var(--ipqd-ink);
  box-shadow: 0 14px 36px rgba(19,33,60,.2), 0 0 0 3px rgba(104,134,191,.08);
  -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px); font-family: inherit;
}

html[data-airmen-theme="dark"] #ipqd-dock,
body.bb-dark-theme #ipqd-dock, body.dark-theme #ipqd-dock {
  --ipqd-surface: linear-gradient(115deg, rgba(15,24,40,.97), rgba(25,38,61,.97));
  --ipqd-border: #3b4c68; --ipqd-ink: #f1f5ff; --ipqd-muted: #94a3b8;
  --ipqd-rep-bg: #1e293b; --ipqd-rep-border: #334155; --ipqd-rep-ink: #cbd5e1;
  box-shadow: 0 16px 40px rgba(0,0,0,.6), 0 0 0 3px rgba(148,163,184,.1);
}

#ipqd-dock button {
  appearance: none; box-sizing: border-box; display: inline-flex; align-items: center;
  justify-content: center; height: 44px; min-height: 44px; margin: 0; border-radius: 12px;
  font-family: inherit; line-height: 1.2; white-space: nowrap; cursor: pointer;
  transition: transform .18s ease, filter .18s ease, background .18s ease;
}
#ipqd-dock button:hover:not(:disabled) { transform: translateY(-1px); filter: brightness(1.06); }
#ipqd-dock button:disabled { opacity: .52; cursor: not-allowed; }

#ipqd-dock .ipqd-report {
  flex: none; padding: 0 14px; gap: 6px; border: 1px solid var(--ipqd-rep-border);
  background: var(--ipqd-rep-bg); color: var(--ipqd-rep-ink); font-size: 13.5px; font-weight: 700;
}
#ipqd-dock .ipqd-report span { font-size: 16px; line-height: 1; }

#ipqd-dock .ipqd-meta { flex: 1; min-width: 0; text-align: center; color: var(--ipqd-ink); }
#ipqd-dock .ipqd-title { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 14.5px; font-weight: 750; }
#ipqd-dock .ipqd-detail { display: block; margin-top: 2px; color: var(--ipqd-muted); font-size: 11px; }

#ipqd-dock .ipqd-primary {
  flex: none; min-width: 140px; padding: 0 18px; border: 1px solid #4f46e5;
  background: linear-gradient(100deg, #3b82f6, #4f46e5); color: #fff;
  font-size: 14.5px; font-weight: 800; box-shadow: 0 4px 14px rgba(79,70,229,.35);
}
#ipqd-dock .ipqd-primary.is-next {
  background: linear-gradient(100deg, #10b981, #059669); border-color: #059669;
  box-shadow: 0 4px 14px rgba(16,185,129,.35);
}

body.ipqd-active .wpProQuiz_quiz, body.ipqd-active .wpProQuiz_checkPage {
  padding-bottom: 120px !important;
}
body.ipqd-active .ipqd-native-control {
  position: absolute !important; width: 1px !important; height: 1px !important;
  margin: 0 !important; padding: 0 !important; border: 0 !important; overflow: hidden !important;
  clip-path: inset(50%) !important; pointer-events: none !important;
}

/* ─── Question Report Modal ─────────────────────────────────── */
.ipilot-qr-overlay {
  position: fixed; inset: 0; z-index: 99999; display: flex; align-items: center;
  justify-content: center; background: rgba(15,23,42,.65); backdrop-filter: blur(6px);
  padding: 16px; box-sizing: border-box;
}
.ipilot-qr-modal {
  width: min(520px, 100%); background: #ffffff; border-radius: 18px;
  box-shadow: 0 25px 60px rgba(0,0,0,.35); overflow: hidden; display: flex;
  flex-direction: column; animation: ipilotQrSlideUp .22s cubic-bezier(.16,1,.3,1);
}
html[data-airmen-theme="dark"] .ipilot-qr-modal,
body.bb-dark-theme .ipilot-qr-modal {
  background: #182234; border: 1px solid #334155; color: #f1f5f9;
}
@keyframes ipilotQrSlideUp {
  from { opacity: 0; transform: translateY(16px) scale(.98); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

.ipilot-qr-header {
  display: flex; align-items: center; justify-content: space-between;
  padding: 18px 22px; border-bottom: 1px solid #e2e8f0;
}
html[data-airmen-theme="dark"] .ipilot-qr-header,
body.bb-dark-theme .ipilot-qr-header { border-bottom-color: #2e3d55; }
.ipilot-qr-header h3 { margin: 0; font-size: 16px; font-weight: 700; color: inherit; }
.ipilot-qr-close {
  background: none; border: none; font-size: 22px; line-height: 1;
  color: #94a3b8; cursor: pointer; padding: 4px; border-radius: 6px;
}
.ipilot-qr-close:hover { color: #334155; }

.ipilot-qr-body { padding: 20px 22px; display: flex; flex-direction: column; gap: 14px; }
.ipilot-qr-field { display: flex; flex-direction: column; gap: 6px; }
.ipilot-qr-field label { font-size: 12.5px; font-weight: 600; color: #475569; }
html[data-airmen-theme="dark"] .ipilot-qr-field label,
body.bb-dark-theme .ipilot-qr-field label { color: #94a3b8; }

.ipilot-qr-select, .ipilot-qr-textarea {
  width: 100%; box-sizing: border-box; border: 1px solid #cbd5e1; border-radius: 10px;
  padding: 10px 12px; font-family: inherit; font-size: 13.5px; background: #f8fafc; color: #0f172a;
}
html[data-airmen-theme="dark"] .ipilot-qr-select,
html[data-airmen-theme="dark"] .ipilot-qr-textarea,
body.bb-dark-theme .ipilot-qr-select,
body.bb-dark-theme .ipilot-qr-textarea {
  background: #0f172a; border-color: #334155; color: #f8fafc;
}
.ipilot-qr-textarea { min-height: 100px; resize: vertical; }

.ipilot-qr-footer {
  display: flex; align-items: center; justify-content: flex-end; gap: 10px;
  padding: 16px 22px; border-top: 1px solid #e2e8f0; background: #f8fafc;
}
html[data-airmen-theme="dark"] .ipilot-qr-footer,
body.bb-dark-theme .ipilot-qr-footer { border-top-color: #2e3d55; background: #131c2b; }

.ipilot-qr-btn-cancel, .ipilot-qr-btn-submit {
  padding: 10px 18px; border-radius: 10px; font-size: 13.5px; font-weight: 600; cursor: pointer;
}
.ipilot-qr-btn-cancel { border: 1px solid #cbd5e1; background: #fff; color: #475569; }
.ipilot-qr-btn-submit { border: none; background: #2563eb; color: #fff; }
.ipilot-qr-btn-submit:hover:not(:disabled) { background: #1d4ed8; }
.ipilot-qr-btn-submit:disabled { opacity: .5; cursor: not-allowed; }

/* ─── Toast Notification ─────────────────────────────────────── */
.ipilot-qr-toast {
  position: fixed; bottom: 90px; left: 50%; transform: translateX(-50%); z-index: 100000;
  background: #0f172a; color: #f8fafc; padding: 12px 24px; border-radius: 12px;
  font-size: 13.5px; font-weight: 600; box-shadow: 0 10px 28px rgba(0,0,0,.35);
  animation: ipilotQrSlideUp .2s ease;
}

@media (max-width: 680px) {
  #ipqd-dock { gap: 8px; padding: 6px 10px; }
  #ipqd-dock .ipqd-report { padding: 0 10px; font-size: 12px; }
  #ipqd-dock .ipqd-primary { min-width: 110px; padding: 0 12px; font-size: 13px; }
  #ipqd-dock .ipqd-title { font-size: 13px; }
  #ipqd-dock .ipqd-detail { font-size: 10px; }
}
