/* PDF FAQs widget — minimal, theme-friendly accordion.
 * Uses native <details>/<summary> so it works without JS. The chevron
 * icon is rotated via CSS on [open] state; no transitions on height
 * (browser handles <details> disclosure natively). */

.pdftopost-faqs {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Force the Elementor widget wrapper to fill its column (some themes/columns
   constrain widget content width). */
.elementor-widget-pdftopost_faqs,
.elementor-widget-pdftopost_faqs > .elementor-widget-container,
.pdftopost-faqs-list,
.pdftopost-faq {
    width: 100% !important;
    max-width: 100% !important;
}

.pdftopost-faqs-heading {
    margin: 0 0 16px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
}

/* "FAQs" title above the list. Rendered as a <p> (not a heading tag) to
   keep the page's heading hierarchy clean for SEO, but styled to read
   like a section heading — h2-sized weight + size. */
.pdftopost-faqs-title {
    margin: 0 0 14px !important;
    font-size: 1.5em !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    color: inherit !important;
}

.pdftopost-faqs-list {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
}

.pdftopost-faq {
    border: 1px solid #e5e7eb !important;
    border-radius: 14px !important;
    background: #ffffff !important;
    overflow: hidden !important;
    transition: border-color 0.15s ease, box-shadow 0.15s ease !important;
}

.pdftopost-faq[open] {
    border-color: #cbd5e1 !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04) !important;
}

.pdftopost-faq > summary {
    list-style: none !important;
    cursor: pointer !important;
    /* Top/bottom + left/right padding on the question row. */
    padding: 10px 16px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    font-weight: 600 !important;
    font-size: 15px !important;
    line-height: 1.4 !important;
    color: #111827 !important;
    user-select: none !important;
}

/* Hide native disclosure marker (WebKit + Firefox + Safari) */
.pdftopost-faq > summary::-webkit-details-marker { display: none; }
.pdftopost-faq > summary::marker { display: none; content: ''; }

.pdftopost-faq > summary:hover {
    background: #f9fafb !important;
}

.pdftopost-faq > summary:focus-visible {
    outline: 2px solid #3b82f6 !important;
    outline-offset: -2px !important;
}

.pdftopost-faq-q-text {
    flex: 1 !important;
    min-width: 0 !important;
    /* Rendered as <h3> for SEO/AEO heading structure — neutralise the browser's
       default heading margins/size so it looks identical to the old inline span
       (the summary already sets 15px / 600 weight / 1.4 line-height). */
    margin: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    margin-block: 0 !important;     /* beat Elementor's logical margin rules */
    margin-inline: 0 !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
    color: inherit !important;
}

.pdftopost-faq-icon {
    flex-shrink: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #6b7280 !important;
    transition: transform 0.2s ease !important;
}

.pdftopost-faq[open] > summary .pdftopost-faq-icon {
    transform: rotate(180deg) !important;
}

.pdftopost-faq-answer {
    padding: 4px 16px 14px !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
    color: #374151 !important;
}

/* ── Rich-HTML answer content (lists / tables / paragraphs) ────────────────
   Elementor's global kit adds `.elementor-kit-N p { margin-block-end: 20px }`
   (a LOGICAL property), so override BOTH the physical and logical margins with
   !important here, or the answer paragraphs inherit Elementor's 20px gap. */
.pdftopost-faq-answer p,
.pdftopost-faq-answer ul,
.pdftopost-faq-answer ol {
    margin: 0 0 7px !important;
    margin-block-start: 0 !important;
    margin-block-end: 7px !important;
}
.pdftopost-faq-answer ul,
.pdftopost-faq-answer ol { padding-left: 18px !important; }
.pdftopost-faq-answer p:first-child { margin-top: 0 !important; margin-block-start: 0 !important; }
.pdftopost-faq-answer p:last-child,
.pdftopost-faq-answer ul:last-child,
.pdftopost-faq-answer ol:last-child {
    margin-bottom: 0 !important;
    margin-block-end: 0 !important;
}
.pdftopost-faq-answer li { margin: 0 0 2px !important; margin-block: 0 0 2px !important; }
.pdftopost-faq-answer ul:last-child,
.pdftopost-faq-answer ol:last-child { margin-bottom: 0 !important; }
.pdftopost-faq-answer table {
    width: 100% !important;
    border-collapse: collapse !important;
    margin: 4px 0 12px !important;
    font-size: 13.5px !important;
}
.pdftopost-faq-answer th,
.pdftopost-faq-answer td {
    border: 1px solid #e5e7eb !important;
    padding: 7px 10px !important;
    text-align: left !important;
    vertical-align: top !important;
}
.pdftopost-faq-answer th { background: #f9fafb !important; font-weight: 600 !important; color: #111827 !important; }
.pdftopost-faq-answer table:last-child { margin-bottom: 0 !important; }
.pdftopost-faq-answer a { color: #4b48a6 !important; text-decoration: underline !important; }
/* Horizontal scroll for wide tables on small screens */
@media (max-width: 600px) {
    .pdftopost-faq-answer table { display: block !important; overflow-x: auto !important; white-space: nowrap !important; }
}

.pdftopost-faqs--placeholder {
    padding: 16px !important;
    border: 1px dashed #d1d5db !important;
    border-radius: 8px !important;
    background: #f9fafb !important;
    color: #6b7280 !important;
    font-size: 13px !important;
    text-align: center !important;
}
