/* Fiókom — belépés és a bejelentkezett fiókfelület.
   A tokenek a theme.json paletta és a style.css :root alias-ai; ez a fájl csak
   a fiókfelület elrendezését és komponenseit írja le. */

.bm-account {
 --bm-acc-radius: 12px;
 --bm-acc-gap: clamp(28px, 4vw, 56px);
 padding-block: clamp(28px, 3.5vw, 44px) clamp(56px, 7vw, 96px);
}

/* ---------------------------------------------------------------- belépés */
/* Kijelentkezve az oldal egyetlen dolgot kér, ezért az oldalfejléc elmarad:
   a kártya maga a fejléc. */
body:not(.logged-in) .bm-account .bm-commerce-head { display: none; }
body:not(.logged-in) .bm-account {
 display: flex;
 flex-direction: column;
 justify-content: center;
 min-height: min(78vh, 760px);
 padding-block: clamp(40px, 7vw, 88px);
 background: var(--bm-paper);
}
body:not(.logged-in) .bm-account > .wp-block-post-content { max-width: 440px; }
body:not(.logged-in) .bm-account .woocommerce { display: block; }
body:not(.logged-in) .bm-account .woocommerce-notices-wrapper { max-width: 440px; margin-inline: auto; }

.bm-login-card {
 max-width: 440px;
 margin-inline: auto;
 padding: clamp(28px, 4vw, 40px);
 border: 1px solid var(--bm-line);
 border-radius: var(--bm-acc-radius);
 background: #fff;
}
.bm-login-card .bm-jel { margin-bottom: 24px; }
.bm-login-card .bm-jel svg { width: 22px; height: 22px; }
.bm-login-card .bm-jel svg rect { fill: #d9d9e8; }
.bm-login-card .bm-jel svg rect.is-on { fill: var(--bm-accent); }
.bm-login-title {
 margin: 0 0 8px;
 font-family: var(--wp--preset--font-family--display);
 font-size: var(--bm-fs-h3);
 font-weight: 500;
 line-height: var(--bm-lh-snug);
 letter-spacing: var(--bm-track-snug);
 color: var(--bm-ink);
}
.bm-login-lead {
 margin: 0 0 28px;
 font-size: var(--bm-fs-base);
 line-height: var(--bm-lh-body);
 color: var(--wp--preset--color--contrast-secondary);
}
.bm-login-card form { margin: 0; }
.bm-login-note {
 max-width: 440px;
 margin: 22px auto 0;
 font-size: var(--bm-fs-sm);
 line-height: var(--bm-lh-body);
 text-align: center;
 color: var(--wp--preset--color--contrast-secondary);
}
.bm-login-note a { color: var(--bm-accent); }

/* Jelszókérés és -beállítás ugyanebben a kártyában él. */
/* A WooCommerce blokktémás lapja saját keretet és belső margót rak a
   belépő űrlapra; itt a kártya viszi ezt a szerepet. */
.bm-account .bm-login-card :is(form.login, form.lost_reset_password, .woocommerce-form-login, .woocommerce-ResetPassword) {
 margin: 0;
 padding: 0;
 border: 0;
 border-radius: 0;
 background: none;
 max-width: none;
}
.bm-login-card .form-row:last-of-type { margin-bottom: 0; }
.bm-login-card button[type="submit"] { width: 100%; margin-top: 4px; }

/* ------------------------------------------------------- űrlapok, mezők */
.bm-account .woocommerce-form-row,
.bm-account .form-row { margin: 0 0 18px; padding: 0; }
.bm-account .form-row label,
.bm-account .woocommerce-form-row label {
 display: block;
 margin-bottom: 7px;
 font-size: var(--bm-fs-sm);
 font-weight: 500;
 color: var(--bm-ink);
}
.bm-account .form-row label .required { color: var(--wp--preset--color--contrast-secondary); text-decoration: none; }
.bm-account .woocommerce :is(.form-row, .woocommerce-form-row) :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea),
.bm-account :is(input[type="text"], input[type="email"], input[type="tel"], input[type="password"], input[type="number"], select, textarea) {
 width: 100%;
 min-height: 48px;
 padding: 12px 14px;
 border: 1px solid var(--bm-line);
 border-radius: 9px;
 background: var(--bm-paper);
 font: inherit;
 font-size: var(--bm-fs-base);
 color: var(--bm-ink);
 transition: border-color 160ms ease, background-color 160ms ease;
}
.bm-account .woocommerce :is(.form-row, .woocommerce-form-row) :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea):focus,
.bm-account :is(input, select, textarea):focus {
 border-color: var(--bm-accent);
 background: #fff;
 outline: none;
 box-shadow: 0 0 0 3px rgba(47, 47, 217, .12);
}
.bm-account .select2-container .select2-selection--single { height: 48px; border-color: var(--bm-line); border-radius: 9px; background: var(--bm-paper); }
.bm-account .select2-container--default .select2-selection--single .select2-selection__rendered { line-height: 46px; padding-left: 14px; color: var(--bm-ink); }
.bm-account .select2-container--default .select2-selection--single .select2-selection__arrow { height: 46px; }
.bm-account fieldset { margin: 34px 0 0; padding: 0; border: 0; }
.bm-account fieldset legend {
 float: left;
 width: 100%;
 padding: 0 0 16px;
 margin-bottom: 24px;
 border-bottom: 1px solid var(--bm-line);
 font-family: var(--wp--preset--font-family--display);
 font-size: var(--bm-fs-h4);
 font-weight: 500;
 letter-spacing: var(--bm-track-snug);
}
.bm-account fieldset legend + * { clear: both; }
.bm-account em, .bm-account .woocommerce-form__label-for-checkbox span { font-size: var(--bm-fs-sm); color: var(--wp--preset--color--contrast-secondary); }
.bm-account span.description { display: block; margin-top: 6px; font-size: var(--bm-fs-sm); color: var(--wp--preset--color--contrast-secondary); }

.bm-account :is(.button, .woocommerce-Button, button[type="submit"], .wp-element-button) {
 display: inline-flex;
 align-items: center;
 justify-content: center;
 min-height: 48px;
 padding: 0 22px;
 border: 1px solid var(--bm-accent);
 border-radius: 9px;
 background: var(--bm-accent);
 color: #fff;
 font: inherit;
 font-size: var(--bm-fs-ui);
 font-weight: 500;
 text-decoration: none;
 cursor: pointer;
 transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
}
.bm-account :is(.button, .woocommerce-Button, button[type="submit"]):hover { background: #2424b0; border-color: #2424b0; color: #fff; }
.bm-account .woocommerce-form-login__submit { width: 100%; margin: 4px 0 0; }
.bm-account .woocommerce-form-login__rememberme { display: inline-flex; align-items: center; gap: 9px; margin: 0; font-size: var(--bm-fs-sm); }
.bm-account .woocommerce-form-login__rememberme input { width: auto; min-height: 0; margin: 0; }
.bm-account .woocommerce input[type="checkbox"],
.bm-account input[type="checkbox"] {
 width: 17px;
 height: 17px;
 margin: 0;
 padding: 0;
 accent-color: var(--bm-accent);
 cursor: pointer;
}
.bm-account .woocommerce-form-login .form-row:has(.woocommerce-form-login__submit) { display: grid; gap: 20px; margin-bottom: 0; }
.bm-account .woocommerce-LostPassword { margin: 18px 0 0; font-size: var(--bm-fs-sm); text-align: center; }
.bm-account .woocommerce-LostPassword a { color: var(--wp--preset--color--contrast-secondary); text-underline-offset: 4px; }
.bm-account .woocommerce-LostPassword a:hover { color: var(--bm-accent); }

/* ------------------------------------------- bejelentkezett elrendezés */
/* A WooCommerce saját lapja úsztatja és százalékban méretezi a két oszlopot
   (.woocommerce-account .woocommerce-MyAccount-navigation), ezért a rácsban
   mindkét elemet külön vissza kell állítani — különben a sáv a jobb oszlopba
   csúszik, a tartalom pedig alá. */
.bm-account .bm-commerce-head { padding-bottom: 0; }
.bm-account .bm-commerce-head .wp-block-post-title { margin-bottom: 10px; }
.bm-account-intro { max-width: 60ch; margin: 0; font-size: var(--bm-fs-base); line-height: var(--bm-lh-body); color: var(--wp--preset--color--contrast-secondary); }

.woocommerce-account main .bm-account .woocommerce,
.bm-account .woocommerce {
 display: grid;
 grid-template-columns: 248px minmax(0, 1fr);
 gap: var(--bm-acc-gap);
 align-items: start;
 max-width: 1080px;
 margin-top: clamp(28px, 3.5vw, 44px);
}
.bm-account .woocommerce > .woocommerce-MyAccount-navigation { grid-area: 1 / 1; float: none; width: auto; }
.bm-account .woocommerce > .woocommerce-MyAccount-content { grid-area: 1 / 2; float: none; width: auto; min-width: 0; }

/* Oldalsáv */
.bm-account .woocommerce-MyAccount-navigation { position: sticky; top: 104px; }
.bm-account-user {
 display: flex;
 align-items: center;
 gap: 12px;
 padding: 14px;
 margin-bottom: 14px;
 border: 1px solid var(--bm-line);
 border-radius: var(--bm-acc-radius);
 background: #fff;
}
.bm-account-avatar {
 flex: 0 0 auto;
 display: grid;
 place-items: center;
 width: 40px;
 height: 40px;
 border-radius: 9px;
 background: var(--bm-accent);
 color: #fff;
 font-family: var(--wp--preset--font-family--display);
 font-size: var(--bm-fs-ui);
 font-weight: 500;
}
.bm-account-user-text { min-width: 0; }
.bm-account-user-name { display: block; font-size: var(--bm-fs-sm); font-weight: 500; color: var(--bm-ink); }
.bm-account-user-mail { display: block; font-size: var(--bm-fs-sm); color: var(--wp--preset--color--contrast-secondary); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.bm-account .woocommerce .woocommerce-MyAccount-navigation ul {
 list-style: none;
 display: block;
 margin: 0;
 padding: 6px;
 border: 1px solid var(--bm-line);
 border-radius: var(--bm-acc-radius);
 background: #fff;
}
.bm-account .woocommerce .woocommerce-MyAccount-navigation li { margin: 0; padding: 0; border: 0; }
.bm-account .woocommerce .woocommerce-MyAccount-navigation li a {
 display: flex;
 align-items: center;
 gap: 11px;
 padding: 10px 12px;
 border: 0;
 border-radius: 8px;
 font-size: var(--bm-fs-ui);
 font-weight: 400;
 color: var(--bm-ink);
 text-decoration: none;
 transition: background-color 140ms ease, color 140ms ease;
}
.bm-account .woocommerce .woocommerce-MyAccount-navigation li a svg { flex: 0 0 auto; width: 17px; height: 17px; color: var(--wp--preset--color--contrast-secondary); transition: color 140ms ease; }
.bm-account .woocommerce .woocommerce-MyAccount-navigation li a:hover { background: var(--bm-paper); color: var(--bm-ink); }
.bm-account .woocommerce .woocommerce-MyAccount-navigation li a:hover svg { color: var(--bm-ink); }
.bm-account .woocommerce .woocommerce-MyAccount-navigation li.is-active { padding: 0; box-shadow: none; }
.bm-account .woocommerce .woocommerce-MyAccount-navigation li.is-active a { background: var(--bm-accent); color: #fff; font-weight: 500; text-decoration: none; }
.bm-account .woocommerce .woocommerce-MyAccount-navigation li.is-active a svg { color: #fff; }
.bm-account .woocommerce .woocommerce-MyAccount-navigation-link--customer-logout { margin-top: 6px; padding-top: 6px; border-top: 1px solid var(--bm-line); }
.bm-account .woocommerce .woocommerce-MyAccount-navigation-link--customer-logout a { color: var(--wp--preset--color--contrast-secondary); }

/* Tartalom */
.bm-account .woocommerce-MyAccount-content > :first-child { margin-top: 0; }
.bm-account .woocommerce-MyAccount-content p { font-size: var(--bm-fs-base); line-height: var(--bm-lh-relaxed); }
.bm-account .woocommerce-MyAccount-content h2,
.bm-account .woocommerce-MyAccount-content h3 {
 font-family: var(--wp--preset--font-family--display);
 font-weight: 500;
 letter-spacing: var(--bm-track-snug);
}
.bm-account .woocommerce-MyAccount-content h2 { font-size: var(--bm-fs-h3); margin-bottom: 14px; }
.bm-account .woocommerce-MyAccount-content h3 { font-size: var(--bm-fs-h4); }

/* Áttekintő kártyák */
.bm-account-greeting { margin: 0 0 6px; font-family: var(--wp--preset--font-family--display); font-size: var(--bm-fs-h3); font-weight: 500; letter-spacing: var(--bm-track-heading); }
.bm-account-greeting + p { margin: 0 0 26px; color: var(--wp--preset--color--contrast-secondary); }
.bm-account-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 14px; margin: 0; }
.bm-account-card {
 display: flex;
 flex-direction: column;
 gap: 6px;
 padding: 20px;
 border: 1px solid var(--bm-line);
 border-radius: var(--bm-acc-radius);
 background: #fff;
 color: inherit;
 text-decoration: none;
 transition: border-color 160ms ease, transform 160ms var(--bm-ease);
}
.bm-account-card:hover { border-color: var(--bm-accent); transform: translateY(-2px); }
.bm-account-card svg { width: 19px; height: 19px; margin-bottom: 8px; color: var(--bm-accent); }
.bm-account-card strong { font-size: var(--bm-fs-base); font-weight: 500; }
.bm-account-card span { font-size: var(--bm-fs-sm); line-height: var(--bm-lh-body); color: var(--wp--preset--color--contrast-secondary); }
.bm-account-card b {
 align-self: flex-start;
 margin-top: 4px;
 padding: 2px 8px;
 border-radius: 20px;
 background: var(--bm-paper);
 font: var(--bm-fs-xs)/var(--bm-lh-body) var(--wp--preset--font-family--mono);
 font-weight: 400;
 color: var(--bm-ink);
}

/* Táblázatok */
.bm-account :is(.woocommerce-orders-table, .woocommerce-table, .shop_table) {
 width: 100%;
 border-collapse: separate;
 border-spacing: 0;
 font-size: var(--bm-fs-sm);
 border: 1px solid var(--bm-line);
 border-radius: var(--bm-acc-radius);
 overflow: hidden;
 background: #fff;
}
.bm-account :is(.woocommerce-orders-table, .woocommerce-table, .shop_table) thead th {
 padding: 13px 18px;
 text-align: left;
 background: var(--bm-paper);
 border-bottom: 1px solid var(--bm-line);
 font-size: var(--bm-fs-xs);
 font-weight: 500;
 letter-spacing: 0;
 text-transform: none;
 font-family: inherit;
 color: var(--wp--preset--color--contrast-secondary);
}
/* A rendelésszám cellája <th> a <tbody>-ban, ezért a fejlécstílust külön
   kell tartani a sorcelláktól. */
.bm-account :is(.woocommerce-orders-table, .woocommerce-table, .shop_table) :is(td, td:first-child, tbody th) {
 padding: 16px 18px;
 border: 0;
 border-bottom: 1px solid var(--bm-line);
 background: none;
 font-size: var(--bm-fs-sm);
 line-height: var(--bm-lh-body);
 vertical-align: middle;
}
.bm-account :is(.woocommerce-orders-table, .woocommerce-table, .shop_table) tbody th { text-align: left; font-weight: 400; }
.bm-account :is(.woocommerce-orders-table, .woocommerce-table, .shop_table) tbody tr:last-child :is(td, th) { border-bottom: 0; }
.bm-account .woocommerce-orders-table__cell-order-date,
.bm-account .subscrpt-next-date,
.bm-account td[data-title="Következő fizetés"],
.bm-account td[data-title="Díj"] { white-space: nowrap; }
.bm-account :is(.woocommerce-orders-table__cell-order-number, .woocommerce-orders-table__header-order-number) { width: 1%; }
.bm-account .woocommerce-orders-table__cell-order-number a { font-family: var(--wp--preset--font-family--mono); font-size: var(--bm-fs-sm); color: var(--bm-accent); text-decoration: none; }
.bm-account .woocommerce-orders-table__cell-order-number a:hover { text-decoration: underline; }
.bm-account .woocommerce-Price-amount { font-variant-numeric: tabular-nums; white-space: nowrap; }
.bm-order-items { color: var(--wp--preset--color--contrast-secondary); white-space: nowrap; }
.bm-account td .button,
.bm-account td .woocommerce-button {
 min-height: 36px;
 padding: 0 14px;
 font-size: var(--bm-fs-ui);
 border-color: var(--bm-line);
 background: #fff;
 color: var(--bm-ink);
}
.bm-account td .button:hover,
.bm-account td .woocommerce-button:hover { border-color: var(--bm-accent); background: #fff; color: var(--bm-accent); }

/* Állapotcímkék */
.bm-account .woocommerce-orders-table__cell-order-status,
.bm-account .subscrpt-legacy-status,
.bm-account td[data-title="Állapot"] > span {
 font-size: var(--bm-fs-sm);
}
.bm-account .subscrpt-legacy-status {
 display: inline-flex;
 align-items: center;
 gap: 7px;
 padding: 4px 11px;
 border-radius: 20px;
 background: var(--bm-paper);
 color: var(--bm-ink);
}
.bm-account .subscrpt-legacy-status::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.bm-account .subscrpt-legacy-status--active { background: #eef3ee; color: #2f6b43; }
.bm-account .subscrpt-legacy-status--cancelled,
.bm-account .subscrpt-legacy-status--expired { background: #f6eeee; color: #8a3c3c; }

/* Címkártyák */
.bm-account .woocommerce-Addresses { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 14px; margin: 0; }
.bm-account .woocommerce-Address { float: none !important; width: auto !important; padding: 22px; border: 1px solid var(--bm-line); border-radius: var(--bm-acc-radius); background: #fff; }
.bm-account .woocommerce-Address-title { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; }
.bm-account .woocommerce-Address-title h2,
.bm-account .woocommerce-Address-title h3 { margin: 0 0 12px; font-size: var(--bm-fs-h4); }
.bm-account .woocommerce-Address-title a { font-size: var(--bm-fs-sm); color: var(--bm-accent); text-decoration: none; }
.bm-account .woocommerce-Address-title a:hover { text-decoration: underline; }
.bm-account .woocommerce-Address address { font-style: normal; font-size: var(--bm-fs-sm); line-height: var(--bm-lh-relaxed); color: var(--wp--preset--color--contrast-secondary); }

/* Értesítések, üres állapotok */
.bm-account :is(.woocommerce-info, .woocommerce-message, .woocommerce-error, .wc-block-components-notice-banner) {
 display: flex;
 align-items: center;
 gap: 12px;
 margin: 0 0 22px;
 padding: 16px 18px;
 border: 1px solid var(--bm-line);
 border-left-width: 3px;
 border-radius: 10px;
 background: #fff;
 font-size: var(--bm-fs-sm);
 line-height: var(--bm-lh-body);
 color: var(--bm-ink);
}
.bm-account :is(.woocommerce-info, .wc-block-components-notice-banner.is-info) { border-left-color: var(--bm-accent); }
.bm-account :is(.woocommerce-message, .wc-block-components-notice-banner.is-success) { border-left-color: #2f6b43; }
.bm-account :is(.woocommerce-error, .wc-block-components-notice-banner.is-error) { border-left-color: #b32d2e; }
/* A WooCommerce a saját ikonfontjával rajzol jelet az üzenetek elé; itt a bal
   oldali színcsík viszi ugyanezt a szerepet. */
.bm-account .woocommerce :is(.woocommerce-info, .woocommerce-message, .woocommerce-error)::before { display: none; }
.bm-account .woocommerce-error { list-style: none; }
.bm-account .wc-block-components-notice-banner > svg { display: none; }
.bm-account :is(.woocommerce-info, .woocommerce-message) .button { margin-left: auto; min-height: 38px; padding: 0 16px; font-size: var(--bm-fs-ui); }
.bm-account .wc-block-components-notice-banner__content .button,
.bm-account :is(.woocommerce-info, .woocommerce-message) .button {
 display: inline-flex;
 min-height: 36px;
 padding: 0 14px;
 border-color: var(--bm-line);
 background: #fff;
 color: var(--bm-ink);
 font-size: var(--bm-fs-ui);
 text-decoration: none;
}
.bm-account .wc-block-components-notice-banner__content .button:hover,
.bm-account :is(.woocommerce-info, .woocommerce-message) .button:hover { border-color: var(--bm-accent); background: #fff; color: var(--bm-accent); }

.bm-account .woocommerce-pagination { margin-top: 22px; }
.bm-account .woocommerce-pagination .button { margin-right: 8px; }

/* ------------------------------------------------------------ reszponzív */
@media (max-width: 900px) {
 .woocommerce-account main .bm-account .woocommerce,
 .bm-account .woocommerce { grid-template-columns: 1fr; gap: 24px; }
 /* Rácselemként mindkét oszlop min-width:auto-t kap, így a vízszintesen
    görgethető menü és a szélesebb táblák kinyomnák az oldalt. */
 .bm-account .woocommerce > .woocommerce-MyAccount-navigation { grid-area: auto; min-width: 0; }
 .bm-account .woocommerce > .woocommerce-MyAccount-content { grid-area: auto; min-width: 0; }
 .bm-account .woocommerce-MyAccount-navigation { position: static; }
 .bm-account-user { margin-bottom: 12px; }
 .bm-account .woocommerce .woocommerce-MyAccount-navigation ul {
  display: flex;
  gap: 4px;
  overflow-x: auto;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
 }
 .bm-account .woocommerce .woocommerce-MyAccount-navigation ul::-webkit-scrollbar { display: none; }
 .bm-account .woocommerce .woocommerce-MyAccount-navigation li { flex: 0 0 auto; }
 .bm-account .woocommerce .woocommerce-MyAccount-navigation li a { white-space: nowrap; }
 .bm-account .woocommerce .woocommerce-MyAccount-navigation-link--customer-logout { margin: 0; padding: 0 0 0 6px; border-top: 0; border-left: 1px solid var(--bm-line); }
}

@media (max-width: 680px) {
 /* A táblázatok sorai kártyákká állnak össze — a fejléccímke a cellán él.
    A rendelésszám cellája <th>, ezért mindkét elemet fel kell venni. */
 .bm-account :is(.woocommerce-orders-table, .shop_table) { border: 0; background: none; }
 .bm-account :is(.woocommerce-orders-table, .shop_table) thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
 .bm-account :is(.woocommerce-orders-table, .shop_table) tbody tr {
  display: grid;
  gap: 10px;
  margin-bottom: 12px;
  padding: 18px;
  border: 1px solid var(--bm-line);
  border-radius: var(--bm-acc-radius);
  background: #fff;
 }
 .bm-account :is(.woocommerce-orders-table, .woocommerce-table, .shop_table) tbody :is(td, td:first-child, th) {
  display: flex;
  align-items: baseline;
  gap: 8px;
  padding: 0;
  border: 0;
  text-align: right;
 }
 .bm-account :is(.woocommerce-orders-table, .woocommerce-table, .shop_table) tbody :is(td, td:first-child, th)::before {
  content: attr(data-title);
  flex: 0 0 auto;
  margin-right: auto;
  font-size: var(--bm-fs-sm);
  font-weight: 400;
  color: var(--wp--preset--color--contrast-secondary);
  text-align: left;
 }
 .bm-account :is(.woocommerce-orders-table, .woocommerce-table, .shop_table) tbody :is(td, td:first-child, th):empty { display: none; }
 .bm-account :is(.woocommerce-orders-table, .shop_table) tbody td .button { width: auto; }
 .bm-account .woocommerce-Addresses { grid-template-columns: 1fr; }
 .bm-account :is(.woocommerce-info, .woocommerce-message) { flex-direction: column; align-items: flex-start; }
 .bm-account :is(.woocommerce-info, .woocommerce-message) .button { margin-left: 0; }
}

@media (prefers-reduced-motion: reduce) {
 .bm-account * { transition: none !important; }
 .bm-account-card:hover { transform: none; }
}

/* Dokumentáció — áttekinthető témakörök és követhető cikklista a Fiókomban. */
.bm-doksi-fejlec { margin-bottom: 30px; }
.bm-doksi-eyebrow {
 display: inline-block;
 margin-bottom: 9px;
 color: var(--bm-accent);
 font: var(--bm-fs-xs)/var(--bm-lh-snug) var(--wp--preset--font-family--mono);
 letter-spacing: var(--bm-track-label);
 text-transform: uppercase;
}
.bm-doksi-fejlec .bm-account-greeting { margin-bottom: 7px; }
.bm-doksi-fejlec > p:not(.bm-doksi-osszefoglalo) { max-width: 59ch; margin: 0; color: var(--wp--preset--color--contrast-secondary); }
.bm-doksi-osszefoglalo {
 display: inline-flex;
 gap: 6px;
 align-items: center;
 margin: 17px 0 0;
 padding: 6px 10px;
 border-radius: 999px;
 background: var(--bm-paper);
 color: var(--wp--preset--color--contrast-secondary);
 font-size: var(--bm-fs-xs);
}
.bm-doksi-osszefoglalo strong { color: var(--bm-ink); font-weight: 500; }
.bm-doksi-csoportok { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.bm-doksi-csoport {
 overflow: hidden;
 border: 1px solid var(--bm-line);
 border-radius: var(--bm-acc-radius);
 background: #fff;
 box-shadow: 0 1px 0 rgba(23, 23, 40, .03);
}
.bm-doksi-csoport-fejlec {
 display: grid;
 grid-template-columns: auto minmax(0, 1fr) auto;
 gap: 13px;
 align-items: start;
 padding: 22px 20px 19px;
 border-left: 3px solid var(--bm-accent);
 background: linear-gradient(135deg, rgba(47, 47, 217, .075), rgba(47, 47, 217, 0));
}
.bm-doksi-sorszam {
 display: grid;
 place-items: center;
 width: 36px;
 height: 36px;
 border-radius: 8px;
 background: var(--bm-accent);
 color: #fff;
 font: var(--bm-fs-xs)/var(--bm-lh-tight) var(--wp--preset--font-family--mono);
 box-shadow: 0 4px 10px rgba(47, 47, 217, .18);
}
.bm-doksi-csoport h3 { margin: 2px 0 6px; font-family: var(--wp--preset--font-family--display); font-size: var(--bm-fs-h4); font-weight: 500; line-height: var(--bm-lh-snug); letter-spacing: var(--bm-track-snug); }
.bm-doksi-csoport h3 a { color: inherit; text-decoration: none; }
.bm-doksi-csoport h3 a:hover { color: var(--bm-accent); text-decoration: underline; text-underline-offset: 3px; }
.bm-doksi-csoport-fejlec p { margin: 0; color: var(--wp--preset--color--contrast-secondary); font-size: var(--bm-fs-sm); line-height: var(--bm-lh-ui); }
.bm-doksi-darab { margin-top: 2px; padding: 4px 7px; border: 1px solid rgba(47, 47, 217, .16); border-radius: 999px; background: #fff; color: var(--bm-accent); font: var(--bm-fs-xs)/var(--bm-lh-snug) var(--wp--preset--font-family--mono); white-space: nowrap; }
.bm-doksi-csoport ul { margin: 0; padding: 0; list-style: none; }
.bm-doksi-csoport li { border-top: 1px solid var(--bm-line); }
.bm-doksi-csoport li a {
 display: grid;
 grid-template-columns: 22px minmax(0, 1fr) auto;
 gap: 10px;
 align-items: center;
 padding: 13px 20px;
 color: inherit;
 font-size: var(--bm-fs-sm);
 line-height: var(--bm-lh-ui);
 text-decoration: none;
 transition: background-color 160ms ease, color 160ms ease;
}
.bm-doksi-cikk-sorszam { color: var(--wp--preset--color--contrast-secondary); font: var(--bm-fs-xs)/var(--bm-lh-tight) var(--wp--preset--font-family--mono); }
.bm-doksi-nyil { color: var(--bm-accent); font-size: 17px; line-height: var(--bm-lh-tight); opacity: 0; transform: translateX(-4px); transition: opacity 160ms ease, transform 160ms ease; }
.bm-doksi-csoport li a:hover { background: var(--bm-paper); color: var(--bm-accent); }
.bm-doksi-csoport li a:hover .bm-doksi-nyil { opacity: 1; transform: translateX(0); }

/* "Vissza a dokumentációhoz" — a single-dokumentacio.html sablonban */
.bm-doksi-vissza a { font-size: var(--bm-fs-sm); text-decoration: none; color: var(--wp--preset--color--contrast-secondary); }
.bm-doksi-vissza a:hover { color: var(--bm-accent); }

/* Egyedi dokumentációs cikk: asztali témakör-menü a tartalom bal oldalán. */
.bm-doksi-egyedi-elrendezes { display: grid; grid-template-columns: minmax(190px, 240px) minmax(0, 720px); gap: clamp(36px, 6vw, 80px); max-width: 1100px; margin-inline: auto; }
.bm-doksi-oldalnav { position: sticky; top: 112px; align-self: start; padding: 17px 0 16px; border-top: 2px solid var(--bm-accent); border-bottom: 1px solid var(--bm-line); }
.bm-doksi-oldalnav-cim { margin: 0 0 10px; color: var(--wp--preset--color--contrast-secondary); font: var(--bm-fs-xs)/var(--bm-lh-body) var(--wp--preset--font-family--mono); letter-spacing: var(--bm-track-label); text-transform: uppercase; }
.bm-doksi-oldalnav ul { margin: 0; padding: 0; list-style: none; }
.bm-doksi-oldalnav li { margin: 0; border-top: 1px solid var(--bm-line); }
.bm-doksi-oldalnav li:last-child { border-bottom: 1px solid var(--bm-line); }
.bm-doksi-oldalnav li a { display: block; padding: 9px 3px; color: var(--wp--preset--color--contrast-secondary); font-size: var(--bm-fs-sm); line-height: var(--bm-lh-ui); text-decoration: none; transition: color 160ms ease, padding-left 160ms ease; }
.bm-doksi-oldalnav li a:hover, .bm-doksi-oldalnav li.is-aktiv a { padding-left: 8px; color: var(--bm-accent); }
.bm-doksi-oldalnav li.is-aktiv a { font-weight: 500; }
.bm-doksi-oldalnav-osszes { display: inline-block; margin-top: 13px; color: var(--bm-ink); font-size: var(--bm-fs-sm); text-decoration: none; }
.bm-doksi-oldalnav-osszes:hover { color: var(--bm-accent); }
.bm-doksi-cikk { min-width: 0; }

@media (max-width: 760px) {
 .bm-doksi-csoportok { grid-template-columns: 1fr; }
	.bm-doksi-egyedi-elrendezes { display: block; }
	.bm-doksi-oldalnav { display: none; }
}

@media (max-width: 420px) {
 .bm-doksi-csoport-fejlec { grid-template-columns: auto minmax(0, 1fr); }
 .bm-doksi-darab { grid-column: 2; padding-top: 0; }
 .bm-doksi-csoport li a { padding-inline: 16px; }
}
