/**
 * Справочный центр (/help/) - Модуль 5. Дизайн по макету HelpCenter (tusovka-ds), пиксель-в-пиксель.
 * Полноширинный hero + контент в .site-container (единая ширина с хедером/футером).
 */

.ibd-hc-main { padding: 0; background: #f4f5fb; }

/* ── HERO (полноширинный) ── */
.ibd-hc-hero {
    position: relative;
    overflow: hidden;
    background: linear-gradient(135deg, #eaf1f6 0%, #fff7ec 55%, #fff7ec 100%);
    padding: 52px 0 60px;
}
.ibd-hc-hero-glow {
    display: block;
    position: absolute;
    inset: 0;
    opacity: 0.6;
    pointer-events: none;
    background:
        radial-gradient(circle at 16% 20%, rgba(245, 130, 10, 0.14), transparent 42%),
        radial-gradient(circle at 84% 88%, rgba(232, 120, 91, 0.13), transparent 46%);
}
.ibd-hc-hero-inner { position: relative; text-align: center; }
.ibd-hc-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: #fff;
    border: 1px solid #d9ebf9;
    color:#b45309;
    font-weight: 700;
    font-size: 12.5px;
    padding: 6px 13px;
    border-radius: 999px;
    box-shadow: 0 6px 16px -10px rgba(245, 130, 10, 0.5);
    margin-bottom: 16px;
}
.ibd-hc-title {
    font-size: clamp(2rem, 5.4vw, 3rem);
    font-weight: 800;
    letter-spacing: -0.025em;
    line-height: 1.1;
    margin: 0 0 10px;
    color: #1f2937;
}
.ibd-hc-sub {
    font-size: clamp(1rem, 2.2vw, 1.2rem);
    color: #6b7280;
    margin: 0 auto 26px;
    max-width: 46ch;
}
.ibd-hc-search-wrap { max-width: 600px; margin: 0 auto; }
.ibd-hc-search {
    display: flex;
    align-items: center;
    gap: 11px;
    background: #fff;
    border: 1.5px solid #eef0f6;
    border-radius: 15px;
    padding: 0 16px;
    box-shadow: 0 18px 40px -20px rgba(17, 24, 39, 0.3);
    transition: border-color 0.18s ease;
}
.ibd-hc-search.is-active { border-color: #f8dcc1; }
.ibd-hc-search-ic { color: #9ca3af; flex: none; }
.ibd-hc-input {
    flex: 1;
    min-width: 0;
    border: 0;
    background: none;
    outline: none;
    padding: 17px 0;
    font-size: 16px;
    font-family: inherit;
    color: #1f2937;
}
.ibd-hc-input::-webkit-search-cancel-button,
.ibd-hc-input::-webkit-search-decoration { -webkit-appearance: none; display: none; }
.ibd-hc-clear {
    width: 30px; height: 30px; flex: none;
    border-radius: 50%;
    border: 0;
    background: #f4f5fb;
    color: #6b7280;
    cursor: pointer;
    display: flex; align-items: center; justify-content: center;
}
.ibd-hc-clear[hidden] { display: none; }

/* ── Контент ── */
.ibd-hc-content { padding-top: 36px; padding-bottom: 60px; }

/* ── Карточки категорий ── */
.ibd-hc-cats {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    margin-bottom: 40px;
}
.ibd-hc-cats[hidden] { display: none; }
.ibd-hc-cat {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    text-decoration: none;
    color: inherit;
    background: #fff;
    border: 1px solid #eef0f6;
    border-radius: 16px;
    padding: 20px;
    box-shadow: 0 12px 30px -22px rgba(17, 24, 39, 0.4);
    transition: transform 0.24s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.24s ease, border-color 0.2s ease;
}
.ibd-hc-cat:hover { transform: translateY(-5px); box-shadow: 0 24px 44px -22px rgba(17, 24, 39, 0.32); border-color: #f8dcc1; }
.ibd-hc-cat-ic { width: 50px; height: 50px; flex: none; border-radius: 14px; display: flex; align-items: center; justify-content: center; }
.ibd-hc-cat-body { min-width: 0; flex: 1; }
.ibd-hc-cat-head { display: flex; align-items: center; gap: 8px; }
.ibd-hc-cat-title { font-size: 16.5px; font-weight: 800; letter-spacing: -0.01em; }
.ibd-hc-cat-count { font-size: 12px; font-weight: 700; color: #6b7280; background: #f4f5fb; padding: 2px 8px; border-radius: 999px; white-space: nowrap; }
.ibd-hc-cat-desc { font-size: 13.5px; color: #6b7280; margin: 5px 0 0; }
.ibd-hc-cat-chev { color: #c7cbd8; flex: none; margin-inline-start: auto; align-self: center; }

/* ── Счётчик результатов ── */
.ibd-hc-count { margin: 0 0 16px; font-size: 14.5px; color: #6b7280; }
.ibd-hc-count[hidden] { display: none; }
.ibd-hc-count b { color: #1f2937; font-size: 16px; }

/* ── FAQ-аккордеон ── */
.ibd-hc-groups { display: flex; flex-direction: column; gap: 28px; }
.ibd-hc-group { scroll-margin-top: 96px; }
.ibd-hc-group[hidden] { display: none; }
.ibd-hc-group-head { display: flex; align-items: center; gap: 11px; margin-bottom: 14px; }
.ibd-hc-group-ic { width: 36px; height: 36px; flex: none; border-radius: 11px; display: flex; align-items: center; justify-content: center; }
.ibd-hc-group-title { font-size: 19px; font-weight: 800; letter-spacing: -0.01em; margin: 0; }
.ibd-hc-card {
    background: #fff;
    border: 1px solid #eef0f6;
    border-radius: 16px;
    box-shadow: 0 12px 30px -24px rgba(17, 24, 39, 0.4);
    overflow: hidden;
}
.ibd-hc-row { border-bottom: 1px solid #f4f5fa; }
.ibd-hc-row:last-child { border-bottom-color: transparent; }
.ibd-hc-row[hidden] { display: none; }
.ibd-hc-q {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 14px;
    text-align: start;
    border: 0;
    cursor: pointer;
    font-family: inherit;
    background: #fff;
    padding: 16px 18px;
    transition: background 0.16s ease;
}
.ibd-hc-q:hover { background: #f7f8fc; }
.ibd-hc-q-text { flex: 1; font-weight: 700; font-size: 15px; color: #1f2937; }
.ibd-hc-q-chev {
    width: 26px; height: 26px; flex: none;
    border-radius: 8px;
    background: #f4f5fb;
    color: #9ca3af;
    display: flex; align-items: center; justify-content: center;
}
.ibd-hc-q-chev svg { transition: transform 0.24s ease; }
.ibd-hc-row.is-open .ibd-hc-q { background: #fbfbff; }
.ibd-hc-row.is-open .ibd-hc-q-text { color:#b45309; }
.ibd-hc-row.is-open .ibd-hc-q-chev { background: #eaf1f6; color:#b45309; }
.ibd-hc-row.is-open .ibd-hc-q-chev svg { transform: rotate(180deg); }
.ibd-hc-a {
    padding: 0 18px 17px;
    border-inline-start: 3px solid #f5820a;
    background: linear-gradient(90deg, rgba(245, 130, 10, 0.05), transparent 60%);
    animation: ibdHcAcc 0.24s ease both;
}
.ibd-hc-a[hidden] { display: none; }
.ibd-hc-a p { margin: 0; font-size: 14.5px; color: #4b5563; padding-top: 2px; }

/* ── Ничего не нашлось ── */
.ibd-hc-noresults {
    background: #fff;
    border: 1px solid #eef0f6;
    border-radius: 18px;
    padding: 48px 24px;
    text-align: center;
    box-shadow: 0 12px 30px -24px rgba(17, 24, 39, 0.4);
}
.ibd-hc-noresults[hidden] { display: none; }
.ibd-hc-nr-ic {
    width: 64px; height: 64px; margin: 0 auto 14px;
    border-radius: 18px;
    background: rgba(245, 130, 10, 0.1);
    color:#b45309;
    display: flex; align-items: center; justify-content: center;
}
.ibd-hc-nr-title { font-size: 18px; font-weight: 800; margin: 0 0 5px; }
.ibd-hc-nr-sub { font-size: 14px; color: #6b7280; margin: 0 auto 18px; max-width: 34ch; }

/* ── Кнопки ── */
.ibd-hc-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border: 0;
    cursor: pointer;
    font-family: inherit;
    font-weight: 800;
    font-size: 14.5px;
    border-radius: 13px;
    text-decoration: none;
    transition: transform 0.16s ease, box-shadow 0.26s ease, filter 0.2s ease;
}
.ibd-hc-btn:hover { transform: translateY(-2px); filter: brightness(1.04); }
.ibd-hc-btn:active { transform: translateY(0) scale(0.99); }
.ibd-hc-btn--grad {
    color: #fff;
    background: #F5820A;
    padding: 14px 22px;
    box-shadow: 0 12px 28px -8px rgba(245, 130, 10, 0.55);
}
/* Текст на оранжевом: белый на #F5820A - 2.6:1, цвет не меняем. Крупный и жирный
   (WCAG «крупный текст»: от 18.66px при 700+) плюс лёгкая тёмная тень у букв. */
.ibd-hc-btn--grad { font-size: 19px; text-shadow: 0 1px 1px rgba(120, 50, 0, .35); }
.ibd-hc-btn--ghost {
    background: #fff;
    border: 1.5px solid #e5e7eb;
    color: #4b5563;
    font-weight: 700;
    padding: 13px 18px;
}

/* ── Блок «Не нашли ответ?» ── */
.ibd-hc-contact {
    margin-top: 40px;
    background: linear-gradient(135deg, #eaf1f6, #fff7ec);
    border: 1px solid #d9ebf9;
    border-radius: 20px;
    padding: 28px 30px;
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 22px;
    align-items: center;
}
.ibd-hc-contact-title { font-size: 21px; font-weight: 800; letter-spacing: -0.01em; margin: 0 0 6px; }
.ibd-hc-contact-sub { font-size: 14.5px; color: #6b7280; margin: 0; }
.ibd-hc-contact-actions { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; justify-content: center; }

/* ── Футер-ссылки ── */
.ibd-hc-flinks {
    margin-top: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px 22px;
    flex-wrap: wrap;
    font-size: 13.5px;
}
.ibd-hc-flinks a { color: #6b7280; text-decoration: none; font-weight: 600; }
.ibd-hc-flinks a:hover { color:#b45309; }
.ibd-hc-dot { width: 4px; height: 4px; border-radius: 50%; background: #c7cbd8; flex: none; }

@keyframes ibdHcAcc { from { opacity: 0; } to { opacity: 1; } }

/* ── Адаптив ── */
@media (max-width: 768px) {
    .ibd-hc-cats { grid-template-columns: 1fr; }
    .ibd-hc-contact { grid-template-columns: 1fr; text-align: center; }
    .ibd-hc-contact-actions { justify-content: center; }
}
@media (max-width: 480px) {
    .ibd-hc-hero { padding: 36px 0 40px; }
    /* 19px на узком экране: «Открыть чат поддержки» не влезала в строку при полях 22px */
    .ibd-hc-btn--grad { padding-left: 16px; padding-right: 16px; }
}
@media (prefers-reduced-motion: reduce) {
    .ibd-hc-cat, .ibd-hc-btn, .ibd-hc-q, .ibd-hc-a, .ibd-hc-q-chev svg, .ibd-hc-search { transition: none !important; animation: none !important; }
}
