﻿/* Deepam Cabs — FAQ & collapsible panels (css_v2) */
/* FAQ */
.faq-item{border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--bg);margin-bottom:16px}
.faq-item summary{padding:20px 24px;font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;color:var(--primary)}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";font-size:1.25rem;color:var(--green);font-weight:400}
.faq-item[open] summary::after{content:"\2212"}
.faq-item[open] summary{border-bottom:1px solid var(--border);background:var(--bg-light)}
.faq-answer{padding:20px 24px;font-size:.9375rem;color:var(--text);line-height:1.7}
.faq-answer p{margin:0 0 .875rem}
.faq-answer p:last-child{margin-bottom:0}
.faq-answer a{color:var(--green);font-weight:600;text-decoration:none}
.faq-answer a:hover{text-decoration:underline}
.faq-footer{text-align:center;margin-top:2rem}
.faq-footer__link{
  display:inline-flex;align-items:center;gap:8px;
  font-size:.9375rem;font-weight:600;color:var(--primary);text-decoration:none;
}
.faq-footer__link:hover{color:var(--green)}
.faq-footer__link svg{width:16px;height:16px}

/* Fare Summary (Section 11) */
.fare-summary-intro{
  max-width:720px;margin:0 auto 32px;text-align:center;
  font-size:1rem;line-height:1.75;color:var(--text);
}
.fare-summary-panel{
  max-width:960px;margin:0 auto 16px;border:1px solid var(--card-border);border-radius:var(--card-radius);
  background:var(--white);overflow:hidden;box-shadow:var(--card-shadow);
}
.fare-summary-panel__toggle{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:20px 24px;cursor:pointer;font-size:1.0625rem;font-weight:700;color:#1F2937;
  list-style:none;user-select:none;background:#F8FAFC;
  transition:background .25s ease,color .25s ease;
}
.fare-summary-panel__toggle:hover{background:#F0FDF4;color:var(--green-dark)}
.fare-summary-panel__toggle::-webkit-details-marker{display:none}
.fare-summary-panel__toggle::after{
  content:"+";flex-shrink:0;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;
  border-radius:999px;background:rgba(57,181,74,.12);color:var(--green);font-size:1.125rem;font-weight:700;
}
.fare-summary-panel[open] .fare-summary-panel__toggle::after{content:"\2212"}
.fare-summary-panel[open] .fare-summary-panel__toggle{
  border-bottom:1px solid var(--card-border);background:#F0FDF4;color:var(--green-dark);
}
.fare-summary-panel__body{padding:24px}
.fare-summary-extras{
  display:grid;grid-template-columns:repeat(2,1fr);gap:12px 24px;
  margin:0 0 24px;padding:0;list-style:none;
}
.fare-summary-extras li{
  position:relative;padding-left:18px;font-size:.875rem;line-height:1.6;color:var(--text);
}
.fare-summary-extras li::before{
  content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:50%;background:var(--green);
}
.fare-summary-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-bottom:16px}
.fare-summary-table{
  width:100%;min-width:640px;border-collapse:collapse;font-size:.875rem;
}
.fare-summary-table th,.fare-summary-table td{
  padding:12px 16px;text-align:left;border-bottom:1px solid var(--border);vertical-align:top;
}
.fare-summary-table thead th{
  background:var(--bg-light);font-size:.75rem;font-weight:700;text-transform:uppercase;
  letter-spacing:.04em;color:var(--primary);
}
.fare-summary-table tbody th{font-weight:600;color:var(--primary);white-space:nowrap}
.fare-summary-table td{color:var(--text)}
.fare-summary-table a{color:var(--green);font-weight:600;text-decoration:none}
.fare-summary-table a:hover{text-decoration:underline}
.fare-summary-note{
  margin:0 0 20px;font-size:.875rem;line-height:1.65;color:var(--muted);
}
.fare-summary-footer{
  display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 24px;
  padding-top:8px;border-top:1px solid var(--border);
}
.fare-summary-footer__link{
  font-size:.9375rem;font-weight:600;color:var(--green);text-decoration:none;
}
.fare-summary-footer__link:hover{text-decoration:underline}
.fare-summary-estimate--slot{display:none}
/* Future: remove --slot and populate [data-fare-estimate-slot] when Estimate Your Trip Fare is implemented */
.fare-summary-disclaimer{
  margin:0 0 16px;font-size:.8125rem;line-height:1.65;color:var(--muted);font-style:italic;
}


/* Permit Summary (Section 12) */
.permit-summary-intro{
  max-width:720px;margin:0 auto 24px;text-align:center;
  font-size:1rem;line-height:1.75;color:var(--text);
}
.permit-summary-bullets{
  margin:0 0 24px;padding:0;list-style:none;
}
.permit-summary-bullets li{
  position:relative;padding:0 0 0 18px;margin-bottom:10px;
  font-size:.875rem;line-height:1.6;color:var(--text);
}
.permit-summary-bullets li::before{
  content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:50%;background:var(--green);
}
.permit-summary-bullets li:last-child{margin-bottom:0}
.permit-summary-calculator--slot{display:none}
/* Future: remove --slot and populate [data-permit-calculator-slot] when permit calculator is implemented */
.permit-summary-disclaimer{
  margin:0 0 16px;font-size:.8125rem;line-height:1.65;color:var(--muted);font-style:italic;
}
.fare-summary-panel--nested{margin-top:16px;border-top:1px solid var(--border);padding-top:4px}
.fare-summary-panel--nested .fare-summary-panel__body{padding-top:0}
