
#d2tfaqf-root {
  font-family: Vazir, tahoma, sans-serif;
  direction: rtl;
  position: relative;
  --d2t-c1: #005050;
  --d2t-c1-dark: #003737;
  --d2t-surface: #ffffff;
  --d2t-bg: rgba(0,0,0,.4);
  --d2t-shadow: 0 10px 30px rgba(0,0,0,.15);
  z-index: 999999;
}

/* Floating Button */
#d2tfaqf-root .d2tfab {
  position: fixed;
  right: 18px; /* RTL: stick to right */
  bottom: 18px;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: var(--d2t-c1);
  color: #fff;
  display: grid;
  place-items: center;
  box-shadow: var(--d2t-shadow);
  cursor: pointer;
  transform: translateX(0);
  transition: transform .3s ease, box-shadow .3s ease, background .2s ease;
}
#d2tfaqf-root .d2tfab:hover { box-shadow: 0 14px 36px rgba(0,0,0,.22); background: var(--d2t-c1-dark); }
#d2tfaqf-root .d2tfab svg { width: 26px; height: 26px; }

/* Backdrop */
#d2tfaqf-root .d2tbackdrop {
  position: fixed; inset: 0;
  background: var(--d2t-bg);
  opacity: 0; pointer-events: none;
  transition: opacity .25s ease;
}

/* Panel */
#d2tfaqf-root .d2tpanel {
  position: fixed;
  top: 0; right: 0; /* RTL from right */
  width: min(880px, 92vw);
  height: 100vh;
  background: var(--d2t-surface);
  box-shadow: var(--d2t-shadow);
  transform: translateX(110%);
  transition: transform .35s cubic-bezier(.22,1,.36,1);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
#d2tfaqf-root .d2tpanel.open { transform: translateX(0); }
#d2tfaqf-root .d2tbackdrop.open { opacity: 1; pointer-events: auto; }

#d2tfaqf-root .d2tpanel-header{
  padding:12px 16px; display:flex; align-items:center; gap:10px;
  border-bottom:1px solid #eee; background:#fafafa;
}
#d2tfaqf-root .d2tpanel-header .title{
  font-weight:700; color:var(--d2t-c1); font-size:18px; flex:1;
}
#d2tfaqf-root .d2tpanel-header .close{
  width:36px;height:36px;border-radius:10px;border:1px solid #eee;background:#fff;display:grid;place-items:center;
  cursor:pointer; transition:transform .2s ease, background .2s ease;
}
#d2tfaqf-root .d2tpanel-header .close:hover{ background:#f2f2f2; transform: rotate(90deg); }

#d2tfaqf-root .d2tpanel-body{
  padding:16px; overflow:auto; height:100%;
}

/* Content Scoping */
#d2tfaqf-root .faq-container { max-width: 800px; margin: 0 auto; }
#d2tfaqf-root .faq-item { margin-bottom: 10px; }
#d2tfaqf-root .faq-question {
  background-color: var(--d2t-c1);
  color: #fff; padding: 15px; border-radius: 10px;
  cursor: pointer; display:flex;justify-content:space-between;align-items:center;
  transition: transform .2s ease;
}
#d2tfaqf-root .faq-question:hover{ transform: translateY(-1px); }
#d2tfaqf-root .faq-answer { display:none; padding: 15px; border:1px solid #eee; border-radius: 10px; margin-top:6px; }
#d2tfaqf-root .faq-answer.active { display:block; animation: d2tfade .25s ease; }

#d2tfaqf-root .nested-faq { margin-top:10px; }
#d2tfaqf-root .faq-sub-question {
  background-color:#e0f7f7; padding: 10px; border-radius: 8px; cursor: pointer;
  display:flex;justify-content:space-between;align-items:center; transition: transform .2s ease;
}
#d2tfaqf-root .faq-sub-question:hover { transform: translateY(-1px); }
#d2tfaqf-root .faq-sub-answer { display:none; padding: 10px; border:1px solid #ddd; border-radius:8px; margin-top:5px; }
#d2tfaqf-root .faq-sub-answer.active { display:block; animation:d2tfade .25s ease; }

#d2tfaqf-root .faq-sub-sub-question {
  background-color:#f0f0f0; padding:8px; border-radius:6px; cursor:pointer;
  display:flex;justify-content:space-between;align-items:center;
}
#d2tfaqf-root .faq-sub-sub-answer { display:none; padding:8px; border:1px solid #bbb; border-radius:6px; margin-top:5px; }
#d2tfaqf-root .faq-sub-sub-answer.active { display:block; animation:d2tfade .25s ease; }

#d2tfaqf-root .arrow { font-size:1.2em; }

#d2tfaqf-root table{ width:100%; border-collapse:collapse; margin:15px 0; }
#d2tfaqf-root th, #d2tfaqf-root td { border:1px solid #ddd; padding:8px; text-align:right; }
#d2tfaqf-root th{ background:#f7f7f7; }

#d2tfaqf-root .d2twhatsapp {
  margin-top:10px; display:none; gap:10px; align-items:center; justify-content:flex-end;
}
#d2tfaqf-root .d2twhatsapp a {
  text-decoration:none; background:#25D366; color:#fff; padding:8px 12px; border-radius:8px;
  display:inline-flex; align-items:center; gap:8px; box-shadow: var(--d2t-shadow);
}
#d2tfaqf-root .d2twhatsapp.active { display:flex; }

@keyframes d2tfade { from { opacity:0; transform: translateY(4px);} to { opacity:1; transform: translateY(0);} }

@media (max-width: 640px){
  #d2tfaqf-root .d2tpanel{ width: 100vw; }
}
