/* [bm_faq] – scoped to .bm-faq / .bm-faq-page. Glass question cards with cyan numbers and a
   round "+" that turns pink when open (default), or thin lines (style="lines").
   GYIK page: search, the questions and a side column with help and quick links. */

.bm-faq { width: 100%; max-width: 980px; margin-inline: auto; color: #fff; font-family: var(--bm-body); text-align: left; }
.bm-faq, .bm-faq * { box-sizing: border-box; }
.bm-faq .bm-faq__item { margin: 0; padding: 0; border: 0; border-bottom: 1px solid var(--bm-line); border-radius: 0; background: transparent; box-shadow: none; }
.bm-faq .bm-faq__item:first-child { border-top: 1px solid var(--bm-line); }

.bm-faq .bm-faq__question { display: flex; align-items: center; gap: 18px; margin: 0; padding: 22px 4px; cursor: pointer; list-style: none; color: #fff; font: 700 clamp(22px, 2.6vw, 30px)/1 var(--bm-display); letter-spacing: .02em; text-transform: uppercase; -webkit-tap-highlight-color: transparent; }
.bm-faq .bm-faq__question::-webkit-details-marker { display: none; }
.bm-faq .bm-faq__question::marker { content: ""; }
.bm-faq__question:focus-visible { outline: 3px solid var(--bm-cyan); outline-offset: 2px; border-radius: 12px; }
.bm-faq__num { flex: 0 0 auto; color: var(--bm-cyan); font: 700 14px/1 var(--bm-hud); letter-spacing: .1em; }
.bm-faq__label { flex: 1 1 auto; min-width: 0; padding-top: 3px; }
.bm-faq__icon { position: relative; flex: 0 0 34px; height: 34px; border-radius: 50%; background: rgba(255, 255, 255, .1); transition: transform .25s ease, background-color .2s ease; }
.bm-faq__icon::before, .bm-faq__icon::after { content: ""; position: absolute; top: 50%; left: 50%; width: 14px; height: 2.5px; margin: -1.25px 0 0 -7px; background: #fff; }
.bm-faq__icon::after { transform: rotate(90deg); }
.bm-faq .bm-faq__item[open] .bm-faq__icon { transform: rotate(45deg); background: var(--bm-pink); }
.bm-faq .bm-faq__question:hover .bm-faq__label { color: var(--bm-cyan-soft); }

.bm-faq__answer { overflow: hidden; padding: 0 4px 22px 4px; color: #dfe7ff; font-size: 17px; line-height: 1.65; }
.bm-faq__answer p { margin: 0 0 .8em; }
.bm-faq__answer p:last-child { margin-bottom: 0; }

/* Numbered cards (default) */
.bm-faq--cards { display: grid; gap: 12px; }
.bm-faq--cards .bm-faq__item, .bm-faq--cards .bm-faq__item:first-child { border: 1px solid var(--bm-line); border-radius: 18px; background: linear-gradient(160deg, rgba(10, 22, 64, .82), rgba(4, 10, 34, .84)); backdrop-filter: blur(6px); transition: border-color .2s ease, box-shadow .2s ease; }
.bm-faq--cards .bm-faq__item[open] { border-color: rgba(63, 240, 255, .55); box-shadow: 0 0 30px rgba(63, 240, 255, .18); }
.bm-faq--cards .bm-faq__question { padding: 22px 24px; }
.bm-faq--cards .bm-faq__answer { padding: 0 24px 24px 64px; }
.bm-faq--cards .bm-faq__item[hidden] { display: none; }

.bm-faq__empty { margin: 16px 0 0; padding: 24px; border: 1px dashed var(--bm-line-strong); border-radius: 16px; color: var(--bm-muted); text-align: center; }
.bm-faq__empty[hidden] { display: none; }

/* ---------- GYIK page ---------- */
.bm-faq-page { color: #fff; font-family: var(--bm-body); }
.bm-faq-page *, .bm-faq-page *::before, .bm-faq-page *::after { box-sizing: border-box; }
.bm-faq-page__body { display: grid; grid-template-columns: minmax(0, 1fr) 360px; align-items: start; gap: 32px; }
.bm-faq-page__main { display: grid; gap: 22px; min-width: 0; }
.bm-faq-page__main .bm-search { width: 100%; max-width: none; }
.bm-faq-page__main .bm-faq { max-width: none; }
.bm-faq-page__aside { position: sticky; top: 96px; display: grid; gap: 14px; }
.bm-faq-help { display: grid; justify-items: start; gap: 12px; padding: 28px; clip-path: polygon(0 0, calc(100% - 22px) 0, 100% 22px, 100% 100%, 22px 100%, 0 calc(100% - 22px)); background: linear-gradient(140deg, rgba(123, 77, 255, .5), rgba(255, 63, 216, .3) 60%, rgba(29, 107, 255, .4)); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .2); }
.bm-faq-help h2 { margin: 0; font: 700 38px/.9 var(--bm-display); text-transform: uppercase; }
.bm-faq-help p { margin: 0; color: #e6edff; font-size: 15px; line-height: 1.55; }
.bm-faq-help__link, .bm-faq-help__link:visited { color: #fff; font: 700 13px/1 var(--bm-hud); letter-spacing: .1em; text-transform: uppercase; text-decoration: none; }
.bm-faq-help__link:hover { color: var(--bm-cyan-soft); }
.bm-faq-page__links { display: grid; gap: 12px; }
.bm-faq-page__links .bm-quicklink { border: 1px solid var(--bm-line); border-radius: 18px; background: linear-gradient(160deg, rgba(10, 22, 64, .82), rgba(4, 10, 34, .86)); }

@media (max-width: 980px) {
	.bm-faq-page__body { grid-template-columns: 1fr; }
	.bm-faq-page__aside { position: static; }
}
@media (max-width: 600px) {
	.bm-faq .bm-faq__question { gap: 12px; font-size: 22px; }
	.bm-faq--cards .bm-faq__question { padding: 18px; }
	.bm-faq--cards .bm-faq__answer { padding: 0 18px 20px; font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) {
	.bm-faq__icon, .bm-faq--cards .bm-faq__item { transition: none; }
}
