/* =========================================================
   Contact FAQ Plugin v1.5.2
   ========================================================= */

/* ===================== TOGGLE BUTTON ===================== */

.cfaq-wrapper {
  display: block;
  box-sizing: border-box;
  width: 100%;
  max-width: 680px;
  margin: 0 0 1.5rem;
}

.cfaq-toggle-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 10px 22px !important;
  background: #111111 !important;
  background-color: #111111 !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 6px !important;
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  text-align: left !important;
  line-height: 1.4 !important;
  box-shadow: none !important;
  text-decoration: none !important;
  transition: background 200ms ease !important;
}

.cfaq-toggle-btn:hover,
.cfaq-toggle-btn:focus {
  background: #333333 !important;
  background-color: #333333 !important;
  color: #ffffff !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

.cfaq-toggle-btn:focus-visible {
  outline: 3px solid #555 !important;
  outline-offset: 3px !important;
}

.cfaq-toggle-label {
  display: inline !important;
  color: #ffffff !important;
}

.cfaq-toggle-icon {
  display: inline-flex !important;
  align-items: center !important;
  color: #ffffff !important;
  transition: transform 200ms ease !important;
  flex-shrink: 0 !important;
}

.cfaq-toggle-icon svg {
  display: block !important;
}

.cfaq-toggle-btn[aria-expanded="true"] .cfaq-toggle-icon {
  transform: rotate(180deg) !important;
}

/* ===================== PANEL ===================== */

.cfaq-panel {
  display: block !important;
  width: 100% !important;
  margin-top: 8px !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
  border: 1.5px solid #dde1e7 !important;
  border-radius: 8px !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.10) !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  animation: cfaqSlideIn 200ms ease forwards;
}

.cfaq-panel[hidden] {
  display: none !important;
}

@keyframes cfaqSlideIn {
  from { opacity: 0; transform: translateY(-6px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* ===================== LIST ===================== */

.cfaq-list {
  list-style: none !important;
  margin: 0 !important;
  padding: 4px 0 !important;
}

.cfaq-item {
  border-bottom: 1px solid #dde1e7 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.cfaq-item:last-child {
  border-bottom: none !important;
}

/* ===================== QUESTION BUTTON ===================== */

.cfaq-question {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  width: 100% !important;
  padding: 14px 18px !important;
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
  cursor: pointer !important;
  text-align: left !important;
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  color: #1e293b !important;
  line-height: 1.45 !important;
  box-shadow: none !important;
  transition: background 200ms ease !important;
}

.cfaq-question:hover {
  background: #f0f4f8 !important;
  background-color: #f0f4f8 !important;
  color: #1e293b !important;
}

.cfaq-question[aria-expanded="true"] {
  background: #f0f4f8 !important;
  background-color: #f0f4f8 !important;
}

.cfaq-question-text {
  flex: 1 !important;
  text-align: left !important;
  color: #1e293b !important;
}

.cfaq-chevron {
  flex-shrink: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  color: #64748b !important;
  transition: transform 200ms ease !important;
}

.cfaq-question[aria-expanded="true"] .cfaq-chevron {
  transform: rotate(180deg) !important;
}

/* ===================== ANSWER ===================== */

.cfaq-answer {
  overflow: hidden !important;
  max-height: 0 !important;
  transition: max-height 250ms ease !important;
  background: #ffffff !important;
  background-color: #ffffff !important;
}

.cfaq-answer[hidden] {
  display: block !important;
  max-height: 0 !important;
  visibility: hidden !important;
}

.cfaq-answer:not([hidden]) {
  max-height: 3000px !important;
  visibility: visible !important;
}

.cfaq-answer.cfaq-answer--open {
  overflow: visible !important;
}

.cfaq-answer-inner {
  padding: 2px 18px 16px 18px !important;
  margin: 0 !important;
  font-size: 0.9rem !important;
  line-height: 1.75 !important;
  color: #4a5568 !important;
  background: transparent !important;
  background-color: transparent !important;
  text-align: left !important;
  white-space: normal !important;
  word-break: break-word !important;
  overflow-wrap: break-word !important;
  box-sizing: border-box !important;
}

/* Reset every descendant inside the answer */
.cfaq-answer-inner *,
.cfaq-answer-inner p,
.cfaq-answer-inner span,
.cfaq-answer-inner div,
.cfaq-answer-inner li,
.cfaq-answer-inner ul,
.cfaq-answer-inner ol,
.cfaq-answer-inner strong,
.cfaq-answer-inner em,
.cfaq-answer-inner a {
  background: transparent !important;
  background-color: transparent !important;
  text-align: left !important;
  color: #4a5568 !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.cfaq-answer-inner a {
  color: #0073aa !important;
  text-decoration: underline !important;
}

.cfaq-answer-inner p {
  margin: 0 0 0.6em !important;
}

.cfaq-answer-inner p:last-child {
  margin-bottom: 0 !important;
}

/* ===================== EMPTY ===================== */

.cfaq-empty {
  font-style: italic;
  color: #64748b;
  font-size: 0.9rem;
}

/* ===================== PRINT ===================== */

@media print {
  .cfaq-toggle-btn { display: none !important; }
  .cfaq-panel { display: block !important; box-shadow: none !important; }
  .cfaq-answer { max-height: none !important; visibility: visible !important; overflow: visible !important; }
  .cfaq-answer[hidden] { visibility: visible !important; max-height: none !important; }
}
