/* ============================================================
   SEO BLOCK — site-wide collapsible "Průvodce" wrapper
   ------------------------------------------------------------
   Wraps long-form SEO / editorial content in a <details> so it
   is visually separated from the functional content above it and
   collapsed by default. Content stays in the DOM (crawlable) —
   we only toggle visibility, never remove it.
   Usage: include includes/seo-block-open.php (sets $seoBlockTitle)
          ... existing SEO markup ...
          include includes/seo-block-close.php
   ============================================================ */

.seo-collapse {
    position: relative;
    width: 100%;
    max-width: 1700px;
    margin: 8px auto 0;
    padding: 0 48px;
    box-sizing: border-box;
}

/* Clear separator line above the whole SEO area */
.seo-collapse::before {
    content: '';
    position: absolute;
    top: 0;
    left: 48px;
    right: 48px;
    height: 1px;
    background: linear-gradient(90deg,
        transparent,
        rgba(0, 245, 255, .22) 30%,
        rgba(145, 71, 255, .22) 70%,
        transparent);
}

.seo-collapse > .seo-collapse-inner {
    padding-top: 28px;
    padding-bottom: 8px;
}

/* The clickable summary / header */
.seo-collapse-summary {
    list-style: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 18px 22px;
    margin-bottom: 4px;
    background: var(--alpha-white-2, rgba(255, 255, 255, .02));
    border: 1px solid var(--alpha-white-6, rgba(255, 255, 255, .06));
    border-radius: 14px;
    transition: border-color .2s ease, background .2s ease;
    user-select: none;
}
.seo-collapse-summary::-webkit-details-marker { display: none; }
.seo-collapse-summary:hover {
    border-color: rgba(0, 245, 255, .3);
    background: var(--alpha-white-4, rgba(255, 255, 255, .04));
}

.seo-collapse-ico {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 10px;
    background: var(--alpha-purple-10, rgba(145, 71, 255, .1));
    border: 1px solid var(--alpha-purple-20, rgba(145, 71, 255, .2));
    color: var(--neon-cyan, #00f5ff);
}
.seo-collapse-ico svg { width: 20px; height: 20px; }

.seo-collapse-titles { display: flex; flex-direction: column; gap: 2px; min-width: 0; flex: 1; }
.seo-collapse-title {
    font-family: var(--font-accent, 'Exo 2', sans-serif);
    font-size: 1.02rem;
    font-weight: 800;
    letter-spacing: .01em;
    color: var(--text-primary, #fff);
}
.seo-collapse-title span {
    background: var(--respinners-gradient, linear-gradient(135deg, #9147ff, #00f5ff));
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.seo-collapse-hint {
    font-size: .78rem;
    color: var(--alpha-white-40, rgba(255, 255, 255, .45));
}

/* Chevron + open/close labels */
.seo-collapse-toggle {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: var(--font-accent, 'Exo 2', sans-serif);
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--neon-cyan, #00f5ff);
}
.seo-collapse-toggle .seo-chevron {
    transition: transform .25s ease;
}
.seo-collapse[open] .seo-collapse-toggle .seo-chevron { transform: rotate(180deg); }
.seo-collapse-toggle .seo-lbl-open  { display: inline; }
.seo-collapse-toggle .seo-lbl-close { display: none; }
.seo-collapse[open] .seo-collapse-toggle .seo-lbl-open  { display: none; }
.seo-collapse[open] .seo-collapse-toggle .seo-lbl-close { display: inline; }

/* The revealed body — strip the inner section's own outer padding so it
   nests cleanly. Inner sections keep their own internal styles. */
.seo-collapse-body { padding-top: 6px; }
.seo-collapse-body > section.rsp-container,
.seo-collapse-body > section.idx-secondary,
.seo-collapse-body > section.bp-section,
.seo-collapse-body > .rsp-container {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Smooth reveal */
.seo-collapse[open] .seo-collapse-body {
    animation: seoReveal .28s ease;
}
@keyframes seoReveal {
    from { opacity: 0; transform: translateY(-4px); }
    to   { opacity: 1; transform: translateY(0); }
}

@media (max-width: 768px) {
    .seo-collapse { padding: 0 20px; }
    .seo-collapse::before { left: 20px; right: 20px; }
    .seo-collapse-summary { padding: 14px 16px; gap: 12px; }
    .seo-collapse-hint { display: none; }
    .seo-collapse-toggle .seo-lbl-open,
    .seo-collapse-toggle .seo-lbl-close { display: none; }
    .seo-collapse[open] .seo-collapse-toggle .seo-lbl-close { display: none; }
}

@media (prefers-reduced-motion: reduce) {
    .seo-collapse[open] .seo-collapse-body { animation: none; }
    .seo-collapse-toggle .seo-chevron { transition: none; }
}
