
/* Imported */
:root {
  --ob-page: #ECE2D7;
  --ob-surface: #FFFFFF;
  --ob-soft: #F7E4CE;
  --ob-soft-alt: #FFF5E8;
  --ob-text: #281D19;
  --ob-muted: #514039;
  --ob-accent: #923318;
  --ob-deep: #622514;
  --ob-dark: #30211D;
  --ob-highlight: #FFD05D;
  --ob-border: #BC967A;
  --ob-border-light: #D1B59B;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--ob-page);
  color: var(--ob-text);
  font: 17px/1.7 Georgia, "Palatino Linotype", serif;
  hyphens: manual;
  overflow-wrap: break-word;
}
h1, h2, h3, nav, button, .ob-marke, .ob-daten {
  font-family: "Helvetica Neue", Arial, sans-serif;
}
h1 { font-size: clamp(2.5rem, 5vw, 4.6rem); line-height: 1.07; margin: .25em 0; }
h2 { font-size: clamp(1.65rem, 3vw, 2.4rem); line-height: 1.22; margin: 0 0 1.4rem; }
h3 { color: var(--ob-deep); font-size: 1.27rem; line-height: 1.3; margin: 1.6rem 0 .8rem; }
p { line-height: 1.7; }
a { color: #80301B; text-decoration-thickness: 1.5px; text-underline-offset: 3px; }
a:hover { color: #502012; }
a:focus-visible, button:focus-visible { outline: 3px solid #854112; outline-offset: 4px; }
header, footer { background: var(--ob-dark); color: #FFFFFF; }
header { border-bottom: 6px solid var(--ob-highlight); }
header a, footer a { color: #FFE6BB; }
header a:hover, footer a:hover { color: #FFFFFF; }
.ob-rahmen { max-width: 1160px; margin: auto; padding: 1.3rem 2rem; }
.ob-marke { display: flex; align-items: center; gap: .8rem; font-size: 1.5rem; font-weight: 800; color: #FFFFFF; }
.ob-marke img { object-fit: contain; background: var(--ob-highlight); border: 2px solid #FFECC4; border-radius: 8px; }
header nav ul, footer nav ul { display: flex; flex-wrap: wrap; gap: .6rem 1.2rem; list-style: none; padding: 0; }
header nav a { font-size: .88rem; font-weight: 600; }
main { max-width: 1160px; margin: auto; padding: 0 2rem 4rem; }
.ob-hero {
  margin: 2rem 0 1.5rem;
  background: linear-gradient(125deg, #873017 0%, #542719 100%);
  color: #FFFFFF;
  padding: clamp(2rem, 5vw, 4rem);
  border: 2px solid #602617;
  border-top: 7px solid var(--ob-highlight);
  border-radius: 12px;
  box-shadow: 0 10px 24px rgba(51, 29, 19, .17);
}
.ob-hero p { font-size: 1.17rem; }
.ob-hero h1 { color: #FFFFFF; }
.ob-eyebrow { letter-spacing: .13em; text-transform: uppercase; font: 700 .84rem Arial, sans-serif; color: #FFE5AC; }
.ob-daten {
  list-style: none; padding: 0; display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: .8rem; margin: 2rem 0 0;
}
.ob-daten li {
  padding: 1.05rem .95rem;
  background: #FFF2DB;
  color: #2A1D18;
  border-left: 5px solid #F9BF3C;
  border-radius: 7px;
  min-width: 0;
  box-shadow: 0 3px 10px rgba(0, 0, 0, .12);
}
.ob-daten strong { display: block; font-size: 1.65rem; line-height: 1.2; color: #6A2416; }
.ob-daten span {
  display: block;
  margin-top: .35rem;
  font-size: .82rem;
  line-height: 1.4;
  font-weight: 600;
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}
.ob-inhalt {
  background: #FFF7EA;
  border: 2px solid var(--ob-border);
  border-left: 7px solid var(--ob-accent);
  padding: 1.6rem 2rem;
  margin: 2rem 0;
  border-radius: 10px;
  box-shadow: 0 4px 14px rgba(60, 39, 30, .08);
}
.ob-inhalt > p { margin: 0 0 .8rem; font: 800 1.1rem "Helvetica Neue", Arial, sans-serif; color: #602514; }
.ob-inhalt ol { columns: 2; padding-left: 1.5rem; margin: .5rem 0 0; }
.ob-inhalt li { break-inside: avoid; padding: .2rem .4rem; }
.ob-inhalt li::marker { color: var(--ob-accent); font-weight: 700; }
.ob-themen {
  background: var(--ob-surface);
  margin: 0 0 1.6rem;
  padding: clamp(1.5rem, 4vw, 2.75rem);
  border: 2px solid var(--ob-border-light);
  border-left: 7px solid var(--ob-accent);
  border-radius: 12px;
  box-shadow: 0 5px 15px rgba(59, 37, 26, .1);
}
.ob-themen:nth-of-type(even) {
  background: var(--ob-soft);
  border-color: #C49C77;
  border-left-color: #65361F;
}
.ob-themen h2 {
  color: #652719;
  border-bottom: 3px solid #D4A97F;
  padding-bottom: .75rem;
}
.ob-themen:nth-of-type(even) h2 { border-bottom-color: #B37A56; }
.ob-themen p { margin: 1rem 0 1.4rem; }
.ob-themen figure { margin: 2rem 0 2.1rem; max-width: 760px; }
.ob-themen figure img {
  display: block; width: 100%; height: auto; aspect-ratio: 16/9;
  object-fit: cover;
  background: linear-gradient(145deg, #D8BA96, #F0D7B1);
  border: 3px solid #B68B6D;
  border-radius: 8px;
}
.ob-themen figcaption { margin-top: .6rem; color: #4A3831; font-size: .85rem; font-weight: 600; }
.ob-themen table {
  border-collapse: collapse;
  width: 100%; margin: 1.4rem 0 2rem;
  background: #FFFFFF;
  border: 2px solid #AD7D5E;
}
.ob-themen th, .ob-themen td {
  border: 1px solid #C6A78E;
  padding: .83rem .95rem;
  text-align: left;
  vertical-align: top;
  min-width: 0;
  hyphens: manual;
  overflow-wrap: normal;
  word-break: normal;
}
.ob-themen th { background: #633422; color: #FFFFFF; font-weight: 700; }
.ob-themen tbody tr:nth-child(odd) { background: #FFFFFF; }
.ob-themen tbody tr:nth-child(even) { background: #F9EBDD; }
.ob-themen dl {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
  gap: .65rem 1.2rem;
  padding: 1.35rem;
  background: #FFF4E7;
  border: 1px solid #C6A78E;
  border-left: 5px solid #923318;
  border-radius: 5px;
}
.ob-themen dt { color: #602514; font-weight: 700; }
.ob-themen dd { margin: 0; }
.ob-liste {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .9rem;
  padding: 0;
  list-style: none;
  counter-reset: ob-punkte;
}
.ob-liste li {
  background: #FFF9F1;
  padding: 1rem 1.1rem;
  border: 1px solid #C3A083;
  border-left: 5px solid #9E4526;
  border-radius: 5px;
  box-shadow: 0 2px 4px rgba(69, 43, 31, .07);
}
ol.ob-liste li { counter-increment: ob-punkte; }
ol.ob-liste li::before { content: counter(ob-punkte) ". "; color: #6B2718; font-weight: bold; }
.ob-hinweis {
  background: #FFE5B4;
  color: #33231B;
  border: 2px solid #C59447;
  border-left: 7px solid #873017;
  border-radius: 6px;
  padding: 1.1rem 1.5rem;
}
.ob-hinweis p { margin: .2rem 0; }
.ob-filter {
  padding: 1.6rem;
  background: #FFE8C7;
  border: 2px solid #AD7A55;
  border-left: 7px solid #883319;
  border-radius: 9px;
  box-shadow: 0 3px 10px rgba(71, 41, 28, .08);
}
.ob-filter h3 { margin-top: 0; }
.ob-filter [role=group] { display: flex; flex-wrap: wrap; gap: .65rem; }
.ob-filter button {
  border: 2px solid #8C3B24;
  background: #FFFFFF;
  color: #642618;
  border-radius: 7px;
  padding: .75rem 1rem;
  font-weight: 700;
  cursor: pointer;
}
.ob-filter button:hover { background: #FFDFAD; }
.ob-filter button[aria-pressed=true] { background: #672615; border-color: #672615; color: #FFFFFF; }
.ob-filter button[aria-pressed=true]:hover { background: #4F1E11; }
.ob-filter #ob-ausgabe {
  background: #FFFFFF;
  border: 2px solid #C49B7B;
  border-left: 6px solid #A23C1C;
  border-radius: 5px;
  padding: 1rem 1.1rem;
  color: #30201A;
  font-weight: 700;
  margin: 1.2rem 0 0;
}
.ob-karte {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  list-style: none;
  padding: 0;
}
.ob-karte li {
  padding: 1.1rem;
  background: #FFE8CA;
  border: 2px solid #BD8865;
  border-left: 6px solid #8C3219;
  border-radius: 7px;
  font-family: "Helvetica Neue", Arial, sans-serif;
  font-weight: 700;
}
.ob-karte li:hover { background: #FFDCAC; }
.ob-fuss { border-top: 7px solid var(--ob-highlight); padding: 2rem 0; }
.ob-schutz { border-top: 1px solid #AE8B76; padding-top: 1.3rem; }
.ob-schutz p { font-size: .94rem; line-height: 1.65; }
@media (max-width: 1080px) {
  .ob-daten { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  main { padding: 0 1rem 3rem; }
  .ob-rahmen { padding: 1rem; }
  .ob-hero { padding: 1.6rem; margin-top: 1rem; }
  .ob-daten { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ob-daten strong { font-size: 1.6rem; }
  .ob-inhalt { padding: 1.2rem; }
  .ob-inhalt ol { columns: 1; }
  .ob-themen { padding: 1.4rem 1.15rem; }
  .ob-liste, .ob-karte { grid-template-columns: minmax(0, 1fr); }
  .ob-themen table { display: block; overflow-x: auto; max-width: 100%; }
  .ob-themen dl { grid-template-columns: minmax(0, 1fr); }
  .ob-filter { padding: 1.15rem; }
  .ob-filter button { width: 100%; text-align: left; }
}

@media (max-width: 540px) {
  .ob-daten { grid-template-columns: minmax(0, 1fr); gap: .65rem; }
  .ob-daten li {
    display: grid;
    grid-template-columns: 4.3rem minmax(0, 1fr);
    align-items: center;
    gap: .85rem;
    padding: .85rem 1rem;
  }
  .ob-daten span { margin-top: 0; font-size: .9rem; line-height: 1.4; }
}
@media (max-width: 330px) {
  .ob-daten li { grid-template-columns: minmax(0, 1fr); gap: .15rem; }
  .ob-daten span { margin-top: .1rem; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

:root { --bg-main: #fcfbf9; --color-text: #1e293b; --card-bg: #ffffff; --border-color: rgba(128,128,128,0.15); --card-shadow: 0 4px 15px rgba(0,0,0,0.04); --radius: 12px; }
/* Кнопка наверх: Универсальная под родной дизайн */
#md-scroll-top { background: #1e293b !important; border: 1px solid rgba(255,255,255,0.15) !important; box-shadow: 0 10px 25px rgba(0,0,0,0.4) !important; }
#md-scroll-top svg { stroke: #ffffff !important; }
            html { scrollbar-width: none !important; -ms-overflow-style: none !important; scroll-behavior: smooth !important; }
::-webkit-scrollbar { display: none !important; width: 0 !important; height: 0 !important; }
html, body { max-width: 100vw !important; overflow-x: clip !important; margin: 0 !important; }
/* Убираем боковые отступы темы, чтобы фон занимал всю ширину */
body {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Полноширинный контейнер без обрезки фонов секций архива */
.wrap.site-shell { max-width: 100% !important; width: 100% !important; padding: 0 !important; margin: 0 !important; }
/* Красивые центрированные заголовки внутренних страниц */
#main.article-main h1,
#main.cl-main h1 {
    width: 100% !important;
    max-width: 980px !important;
    margin: 42px auto 32px !important;
    text-align: center !important;
    font-size: clamp(36px, 3.4vw, 52px) !important;
    line-height: 1.12 !important;
    letter-spacing: -0.035em !important;
    text-wrap: balance !important;
    box-sizing: border-box !important;
}

/* 1. Центрирование и контейнер для "голых" внутренних страниц (хабов и статей),
      где в HTML архива нет собственных оберток (.shell, .wrap, .page, .container) */
#main.cl-main > article.cl-article:not(:has(.shell, .wrap, .page, .container)),
#main.article-main > div.article-wrapper:not(:has(.shell, .wrap, .page, .container)) {
    max-width: var(--max, var(--content-max-width, 1180px)) !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box !important;
}

/* 2. Оформление картинок и таблиц на таких внутренних страницах под стиль главной */
#main.cl-main > article.cl-article:not(:has(.shell, .wrap, .page, .container)) figure,
#main.article-main > div.article-wrapper:not(:has(.shell, .wrap, .page, .container)) figure {
    margin: 32px 0 !important;
    background: var(--panel, var(--card-bg, #ffffff));
    border: 1px solid var(--line, var(--border-color, rgba(128,128,128,0.2)));
    border-radius: var(--radius, 18px);
    overflow: hidden;
    box-shadow: var(--shadow, none);
}

#main.cl-main > article.cl-article:not(:has(.shell, .wrap, .page, .container)) figure img,
#main.article-main > div.article-wrapper:not(:has(.shell, .wrap, .page, .container)) figure img {
    width: 100%;
    height: auto;
    display: block;
}

/* 3. Скрываем дублирующую миниатюру шаблона (.article-hero / .cl-hero),
      если внутри контента уже осталась родная картинка из архива */
body:has(.page--review figure.hero) .article-hero,
#main.article-main > div.article-wrapper:has(.content-body img) .article-hero,
#main.cl-main > article.cl-article:has(.content-body img) .cl-hero {
    display: none !important;
}

/* Полоса прогресса чтения */
.md-scroll-progress-container { position: fixed; top: 0; left: 0; width: 100%; height: 3px; background: transparent; z-index: 9999999; pointer-events: none; }
.md-scroll-progress-bar { height: 100%; width: 0%; background: linear-gradient(90deg, #6366f1, #a855f7, #ec4899); box-shadow: 0 0 10px rgba(168, 85, 247, 0.6); transition: width 0.1s ease-out; }

/* Шапка и бургер */
.site-header { background-color: var(--card-bg) !important; background: color-mix(in srgb, var(--card-bg) 88%, transparent) !important; color: var(--color-text) !important; backdrop-filter: blur(20px) saturate(180%) !important; -webkit-backdrop-filter: blur(20px) saturate(180%) !important; border-bottom: 1px solid var(--border-color) !important; position: sticky !important; top: 0 !important; z-index: 9999 !important; width: 100vw !important; max-width: 100vw !important; margin-left: calc(-50vw + 50%) !important; margin-right: calc(-50vw + 50%) !important; padding: 0 !important; box-sizing: border-box !important; }
.top-navigation-bar, .site-header .top-navigation-bar, .site-header .site-header__inner { max-width: var(--wrap, 1180px) !important; width: 100% !important; margin: 0 auto !important; padding: 12px 20px !important; display: flex !important; align-items: center !important; justify-content: space-between !important; box-sizing: border-box !important; }
.site-header__inner:empty, body > .site-header__inner { display: none !important; margin: 0 !important; padding: 0 !important; height: 0 !important; }
.site-logo { min-width: 180px; margin: 0; display: flex; align-items: center; }
.site-logo, .site-logo *, .site-logo a, .site-title, .site-title a { color: var(--color-text) !important; text-decoration: none !important; font-weight: 700 !important; font-size: 20px !important; }
.site-logo img, img.custom-logo, .site-header img { min-height: 0 !important; height: auto !important; max-height: 65px !important; width: auto !important; max-width: none !important; object-fit: contain !important; display: block; margin-left: 70px; background: transparent !important; }
.site-nav--desktop, #mobile-menu, .mobile-menu, .mobile-menu-overlay, .mobile-menu__close, .child-pages-showcase, a.brand, .content-header { display: none !important; }
.burger { display: flex !important; flex-direction: column; gap: 6px; background: transparent; border: none; cursor: pointer; padding: 5px; z-index: 1000; margin-left: auto; margin-right: 100px; }
.burger span { display: block; width: 28px; height: 3px; background-color: var(--color-text) !important; border-radius: 2px; transition: all 0.3s ease; transform-origin: center; }
.burger.is-active span:nth-child(1) { transform: translateY(9px) rotate(45deg); }
.burger.is-active span:nth-child(2) { opacity: 0; transform: translateX(15px); }
.burger.is-active span:nth-child(3) { transform: translateY(-9px) rotate(-45deg); }
@media (max-width: 768px) {
    .burger { margin-right: 10px !important; }
    .site-logo { min-width: 0 !important; flex: 1 1 auto !important; }
    .site-logo img, img.custom-logo, .site-header img { margin-left: 0 !important; max-width: calc(100vw - 90px) !important; max-height: 50px !important; }
}

/* Выезжающее меню (Accordion Sidebar) */
html.menu-is-open, body.menu-is-open { overflow: clip !important; overscroll-behavior: none !important; }
.cam-overlay { position: fixed; inset: 0; background: rgba(0,0,0,0.7); backdrop-filter: blur(4px); z-index: 999998; opacity: 0; visibility: hidden; transition: opacity 0.3s ease; }
.cam-overlay.is-active { opacity: 1; visibility: visible; }
.cam-sidebar { position: fixed; top: 0; right: -100%; width: 100%; max-width: 420px; height: 100vh; background: rgba(15, 23, 42, 0.96); backdrop-filter: blur(15px); border-left: 1px solid rgba(255,255,255,0.08); z-index: 999999; overflow-y: auto; opacity: 0; visibility: hidden; transition: right 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease, visibility 0.4s; box-shadow: -10px 0 40px rgba(0,0,0,0.5); overscroll-behavior: contain !important; }
.cam-sidebar.is-open { right: 0; opacity: 1; visibility: visible; }
.cam-header { display: flex; justify-content: space-between; align-items: center; padding: 30px 25px; border-bottom: 1px solid rgba(255,255,255,0.08); }
.cam-header-title { font-size: 16px; font-weight: 800; color: #ffffff; letter-spacing: 2px; }
.cam-close { background: none; border: none; font-size: 36px; line-height: 1; cursor: pointer; color: #ffffff; opacity: 0.6; width: 40px; height: 40px; border-radius: 50%; }
.cam-nav { list-style: none; margin: 0; padding: 0; }
.cam-item { border-bottom: 1px solid rgba(255,255,255,0.05); }
.cam-item-header { display: flex; justify-content: space-between; align-items: center; padding: 20px 25px; cursor: pointer; transition: all 0.3s ease; }
.cam-item-header:hover { background: rgba(255,255,255,0.03); padding-left: 32px; }
.cam-item-header a { font-size: 17px; font-weight: 700; color: #f8fafc; text-decoration: none; flex: 1; display: block; }
.cam-toggle { background: rgba(255,255,255,0.05); border: none; cursor: pointer; padding: 8px; border-radius: 50%; display: flex; align-items: center; justify-content: center; }
.cam-toggle svg { width: 12px; height: 8px; transition: transform 0.3s ease; }
.cam-toggle svg path { stroke: #ffffff; stroke-width: 2.5; }
.cam-toggle.is-open svg { transform: rotate(180deg); }
.cam-children { list-style: none; margin: 0; padding: 0; display: none; background: rgba(0,0,0,0.25); }
.cam-children.is-open { display: block; }
.cam-child-item a { display: flex; padding: 18px 25px; text-decoration: none; border-bottom: 1px solid rgba(255,255,255,0.02); gap: 18px; align-items: center; }
.cam-child-item img { width: 65px; height: 45px; object-fit: cover; border-radius: 6px; }
.cam-child-text strong { display: block; font-size: 14px; margin-bottom: 5px; color: #ffffff; line-height: 1.3; font-weight: 600; }
.cam-child-text span { display: block; font-size: 13px; color: #94a3b8; line-height: 1.4; }

/* === ПОЛНЫЕ СТИЛИ TOC ДЛЯ ORIGINAL DESIGN === */
.md-toc-block {
    background: var(--card-bg, #ffffff) !important;
    border: 1px solid var(--border-color, rgba(128,128,128,0.2)) !important;
    border-radius: var(--radius, 12px) !important;
    margin: 35px auto !important;
    max-width: 800px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    box-shadow: var(--card-shadow, none) !important;
    overflow: hidden;
    transition: box-shadow 0.3s ease;
}
.md-toc-block:hover { box-shadow: 0 10px 25px rgba(0,0,0,0.06) !important; }

.md-toc-title {
    padding: 18px 24px !important;
    font-size: 1.15rem !important;
    font-weight: 700 !important;
    color: var(--color-text, #111827) !important;
    cursor: pointer;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    background: rgba(128,128,128,0.02) !important;
    border-bottom: 1px solid transparent;
    list-style: none !important;
    transition: background 0.2s ease;
}
.md-toc-title::-webkit-details-marker { display: none !important; }
.md-toc-block[open] .md-toc-title {
    border-bottom-color: var(--border-color, rgba(128,128,128,0.2)) !important;
}
.md-toc-title::after {
    content: '' !important;
    flex-shrink: 0 !important;
    width: 10px !important;
    height: 10px !important;
    margin-left: 20px !important;
    border-right: 2px solid var(--color-text, #111827) !important;
    border-bottom: 2px solid var(--color-text, #111827) !important;
    transform: rotate(45deg) !important;
    transition: transform 0.3s ease, opacity 0.3s ease !important;
    opacity: 0.6 !important;
}
.md-toc-block[open] .md-toc-title::after {
    transform: translateY(-4px) rotate(225deg) !important;
    opacity: 1 !important;
}

.md-toc-content { padding: 20px 24px 24px !important; }
.md-toc-content ul { list-style: none !important; padding: 0 !important; margin: 0 !important; }
.md-toc-content li {
    margin-bottom: 12px !important;
    padding-left: 14px !important;
    border-left: 2px solid rgba(128,128,128,0.15) !important;
    transition: border-color 0.2s ease, padding-left 0.2s ease !important;
    line-height: 1.4 !important;
}
.md-toc-content li:last-child { margin-bottom: 0 !important; }
.md-toc-content li:hover {
    border-left-color: var(--accent, #8b5cf6) !important;
    padding-left: 18px !important;
}
.md-toc-content a {
    text-decoration: none !important;
    color: var(--color-text, #111827) !important;
    opacity: 0.85;
    font-weight: 500;
    font-size: 1.05rem;
    transition: all 0.2s ease;
    display: inline-block;
}
.md-toc-content a:hover { opacity: 1; transform: translateX(4px); }

@media (max-width: 768px) {
    .md-toc-title { padding: 14px 16px !important; }
    .md-toc-content { padding: 16px 16px 20px !important; }
}

/* Сетка дочерних карточек, Sitemap, Cookie-баннер, Кнопка наверх и Футер */
/* Sitemap — оформление страницы для Original Design */
.sitemap-main {
    max-width: 900px;
    margin: 0 auto;
    padding: 40px 24px;
}

.sitemap-title {
    margin: 0 0 10px;
    text-align: center;
    font-size: 32px;
    font-weight: 800;
}

.sitemap-subtitle {
    margin: 0 0 30px;
    text-align: center;
    opacity: 0.75;
    font-size: 16px;
}

.sitemap-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    gap: 12px;
}

.sitemap-link {
    display: block;
    padding: 14px 18px;
    border: 1px solid rgba(128,128,128,0.2);
    border-radius: 8px;
    text-decoration: none;
    color: var(--color-text);
    font-weight: 600;
    transition: all 0.2s ease;
    background: var(--card-bg);
}

.sitemap-link:hover {
    border-color: rgba(128,128,128,0.5);
    transform: translateY(-2px);
    box-shadow: 0 4px 10px rgba(0,0,0,0.05);
}
.md-child-grid { display: grid !important; grid-template-columns: repeat(2, 1fr) !important; gap: 24px !important; max-width: 1100px !important; margin: 40px auto !important; padding: 0 20px !important; }
@media (max-width: 768px) { .md-child-grid { grid-template-columns: 1fr !important; } }
.md-child-card { display: flex !important; flex-direction: column !important; background: var(--card-bg) !important; border-radius: var(--radius) !important; box-shadow: var(--card-shadow) !important; text-decoration: none !important; overflow: hidden !important; border: 1px solid var(--border-color) !important; }
.md-child-card-img { width: 100% !important; height: 180px !important; object-fit: cover !important; }
.md-child-card-content { padding: 20px !important; }
.md-child-card-title { font-size: 18px !important; font-weight: 700 !important; color: var(--color-text) !important; margin: 0 0 10px 0 !important; }
.md-child-card-excerpt { font-size: 14px !important; color: var(--color-text) !important; opacity: 0.8 !important; margin: 0 !important; }
#md-scroll-top { position: fixed; bottom: 30px; right: 30px; width: 48px; height: 48px; border-radius: 50%; cursor: pointer; display: flex; align-items: center; justify-content: center; opacity: 0; visibility: hidden; transition: all 0.3s ease; z-index: 99999; }
#md-scroll-top.is-visible { opacity: 1; visibility: visible; }
#md-scroll-top svg { width: 22px; height: 22px; stroke-width: 2.5; fill: none; }
.md-cookie-banner { position: fixed; bottom: 20px; left: 20px; right: 20px; background: var(--card-bg); border: 1px solid var(--border-color); box-shadow: 0 15px 40px rgba(0,0,0,0.3); border-radius: 12px; padding: 20px; z-index: 999999; display: flex; flex-direction: column; gap: 15px; }
@media(min-width: 768px) { .md-cookie-banner { bottom: 30px; left: 30px; right: auto; width: 380px; } }
.md-cb-title { font-size: 16px; font-weight: 700; color: var(--color-text); margin-bottom: 6px; }
.md-cb-text { font-size: 13px; line-height: 1.5; color: var(--color-text); opacity: 0.85; margin: 0; }
.md-cb-actions { display: flex; gap: 10px; }
.md-cb-btn { flex: 1; padding: 10px 0; border-radius: 6px; font-size: 13px; font-weight: 600; cursor: pointer; border: none; text-align: center; }
.md-cb-accept { background: #10b981; color: #fff; }
.md-cb-decline { background: transparent; border: 1px solid var(--border-color); color: var(--color-text); }
/* Прижимаем футер к низу экрана и растягиваем от края до края (100vw) без зазоров */
body { min-height: 100vh !important; display: flex !important; flex-direction: column !important; margin: 0 !important; padding-bottom: 0 !important; }
#page, .site { flex: 1 0 auto !important; display: flex !important; flex-direction: column !important; width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 0 !important; }
main, .site-main, .content-main { flex: 1 0 auto !important; }

footer.md-dumb-footer, .site-footer {
    padding: 60px 20px !important;
    background: var(--card-bg) !important;
    border-top: 1px solid var(--border-color) !important;
    border-left: none !important;
    border-right: none !important;
    border-bottom: none !important;
    border-radius: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin-top: 60px !important;
    margin-bottom: 0 !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
    box-sizing: border-box !important;
    flex-shrink: 0 !important;
}
footer.md-dumb-footer .md-dumb-footer-grid { max-width: 960px !important; margin: 0 auto !important; display: grid !important; grid-template-columns: 260px 1fr !important; gap: 60px !important; }
@media (max-width: 768px) { footer.md-dumb-footer .md-dumb-footer-grid { grid-template-columns: 1fr !important; gap: 40px !important; } }
footer.md-dumb-footer .md-df-title { font-size: 18px !important; font-weight: 800 !important; color: var(--color-text) !important; margin: 0 0 20px 0 !important; }
.footer-menu-list { list-style: none !important; padding: 0 !important; margin: 0 !important; display: flex !important; flex-direction: column !important; gap: 12px !important; }
.footer-menu-list a { color: var(--color-text) !important; opacity: 0.8 !important; text-decoration: none !important; font-size: 14px !important; }
footer.md-dumb-footer .md-df-content * { color: var(--color-text) !important; opacity: 0.75 !important; font-size: 12px !important; line-height: 1.6 !important; }
/* ================================================= */
/* СТИЛИ СЕТКИ КАРТОЧЕК ДЛЯ СТРАНИЦЫ ARTICLES (HUB CHILDREN) */
/* ================================================= */

.hub-children-main {
    padding: 40px 0 60px !important;
}

.hub-children-article {
    max-width: var(--max, 1180px) !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
    box-sizing: border-box !important;
}

.hub-children-header {
    margin-bottom: 40px !important;
}

.hub-children-title {
    margin: 0 0 20px !important;
    font-size: clamp(2.2rem, 4vw, 3.5rem) !important;
    line-height: 1.15 !important;
    font-weight: 800 !important;
    color: var(--color-text, inherit) !important;
}

.hub-children-intro {
    font-size: 18px !important;
    line-height: 1.7 !important;
    color: var(--color-text, inherit) !important;
    opacity: 0.8 !important;
}

.hub-children-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 28px !important;
    width: 100% !important;
}

.hub-children-card {
    display: block !important;
    text-decoration: none !important;
    color: inherit !important;
    border-radius: var(--radius, 16px) !important;
    overflow: hidden !important;
    background: var(--panel, var(--card-bg, #ffffff)) !important;
    border: 1px solid var(--line, var(--border-color, rgba(128,128,128,0.2))) !important;
    box-shadow: var(--shadow, 0 8px 25px rgba(0,0,0,.08)) !important;
    transition: transform .2s ease, box-shadow .2s ease !important;
}

.hub-children-card:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 14px 35px rgba(0,0,0,.13) !important;
}

.hub-children-card__media {
    position: relative !important;
    overflow: hidden !important;
    min-height: 260px !important;
}

.hub-children-card__img {
    width: 100% !important;
    height: 260px !important;
    background-position: center !important;
    background-size: cover !important;
    background-repeat: no-repeat !important;
    transition: transform .3s ease !important;
}

.hub-children-card:hover .hub-children-card__img {
    transform: scale(1.04) !important;
}

.hub-children-card__img--empty {
    background: rgba(128,128,128,.08) !important;
}

.hub-children-card__overlay {
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(to top, rgba(0,0,0,.75) 0%, rgba(0,0,0,.25) 55%, rgba(0,0,0,0) 100%) !important;
    pointer-events: none !important;
}

.hub-children-card__content {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 2 !important;
    padding: 28px !important;
}

.hub-children-card__title {
    margin: 0 !important;
    color: #fff !important;
    font-size: 24px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
}

@media (max-width: 768px) {
    .hub-children-main { padding-top: 25px !important; }
    .hub-children-article { padding: 0 16px !important; }
    .hub-children-grid { grid-template-columns: 1fr !important; gap: 20px !important; }
    .hub-children-card__media, .hub-children-card__img { min-height: 220px !important; height: 220px !important; }
    .hub-children-card__content { padding: 20px !important; }
    .hub-children-card__title { font-size: 20px !important; }
}

/* ================================================= */
/* УНИВЕРСАЛЬНЫЙ ФИКС HERO-СЕТОК В ORIGINAL DESIGN   */
/* ================================================= */

/* Техническая обертка .content-main не сбивает родной контейнер .page / .shell / .wrap */
.content-main:not(.page):not(.shell):not(.wrap):not(.container):not(.sitemap-main) {
    padding: 0 !important;
    margin: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
}

/* 1. Переводим 2-колоночную сетку с H1 в 1 колонку ТОЛЬКО если внутри реально выведена витрина (.tc-brands-wrap) */
main :not(.content-main):not(.article-wrapper):not(.cl-article):has(> * > .tc-brands-wrap),
main *:has(> .tc-brands-wrap),
main [class*="hero"]:has(.tc-brands-wrap),
main [class*="hero"] > div:has(.tc-brands-wrap),
main [class*="hero"] > div > div:has(.tc-brands-wrap) {
    grid-template-columns: minmax(0, 1fr) !important;
    flex-direction: column !important;
}

/* 2. Вырываем родителя витрины и дочерние элементы Hero на всю ширину ТОЛЬКО при наличии витрины */
main *:has(> .tc-brands-wrap),
main *:has(> .tc-brands-wrap) > *,
main :not(.content-main):not(.article-wrapper):not(.cl-article):has(> * > .tc-brands-wrap) > *,
main [class*="hero"]:has(.tc-brands-wrap) > * {
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
}

/* 3. Сбрасываем привязку к правой колонке у метрик dl ТОЛЬКО при наличии витрины */
main section:has(.tc-brands-wrap) dl,
main *:has(> .tc-brands-wrap) dl,
main [class*="hero"]:has(.tc-brands-wrap) dl {
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}



/* Снимаем любые принудительные колонки с самой витрины */
main .tc-brands-wrap, main .geo-info {
    flex-direction: row !important;
}

main .tc-brands-wrap,
main [class*="tc-brands"],
main [class*="tc-grid"],
main [class*="casino-list"],
main [class*="affiliate-table"] {
    max-width: 1100px !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box !important;
}

/* ================================================= */
/* ОТКЛЮЧЕНИЕ ЗЕЛЕНОЙ ПОДСВЕТКИ И ОБВОДКИ ПРИ ТАПЕ/ФОКУСЕ */
/* ================================================= */

a:focus, button:focus, input:focus, select:focus, textarea:focus, *:focus-visible,
.cam-item-header:focus, .cam-item-header:active, .cam-child-item a:focus, .cam-child-item a:active {
    outline: none !important;
    box-shadow: none !important;
    -webkit-tap-highlight-color: transparent !important;
}

.cam-item-header, .cam-child-item a {
    -webkit-tap-highlight-color: transparent !important;
}

/* ================================================= */
/* ИСПРАВЛЕНИЕ HOVER ДЛЯ МЕНЮ, ПОДПУНКТОВ И ЛОГОТИПА */
/* ================================================= */

/* 1. Эффект при наведении на логотип сайта */
.site-logo img, img.custom-logo, .site-header img {
    transition: transform 0.25s ease, opacity 0.25s ease !important;
}
.site-logo img:hover, img.custom-logo:hover, .site-header img:hover {
    transform: scale(1.03) !important;
    opacity: 0.9 !important;
}

/* 2. Исправление переноса длинных слов и добавление плавного hover для пунктов меню */
.cam-item-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 18px 22px !important;
    transition: background-color 0.25s ease, padding-left 0.25s ease !important;
}

.cam-item-header a {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    margin-right: 10px !important;
    transition: color 0.25s ease !important;
}

.cam-item-header:hover {
    background-color: rgba(255, 255, 255, 0.06) !important;
    padding-left: 28px !important;
}

.cam-item-header:hover a {
    color: #60a5fa !important; /* Приятный акцент при наведении */
}

/* 3. Плавный hover и анимация для подпунктов меню */
.cam-child-item a {
    display: flex !important;
    align-items: center !important;
    padding: 16px 22px !important;
    transition: background-color 0.25s ease, padding-left 0.25s ease !important;
}

.cam-child-item a:hover {
    background-color: rgba(255, 255, 255, 0.04) !important;
    padding-left: 28px !important;
}

.cam-child-item a:hover .cam-child-text strong {
    color: #60a5fa !important;
}

.cam-child-text strong, .cam-child-text span {
    transition: color 0.25s ease !important;
}

/* ================================================= */
/* ЭФФЕКТ ПРИ НАВЕДЕНИИ НА ПЛИТКИ (КАРТОЧКИ ЗАПИСЕЙ)  */
/* ================================================= */

/* Плавный подъем карточки, усиление тени и подсветка границы */
.md-child-card,
.hub-children-card {
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), 
                box-shadow 0.3s cubic-bezier(0.4, 0, 0.2, 1), 
                border-color 0.3s ease !important;
}

.md-child-card:hover,
.hub-children-card:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12) !important;
    border-color: rgba(96, 165, 250, 0.4) !important;
}

/* Плавное увеличение превью-картинки при наведении на карточку */
.md-child-card .md-child-card-img,
.hub-children-card .hub-children-card__img {
    transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.md-child-card:hover .md-child-card-img,
.hub-children-card:hover .hub-children-card__img {
    transform: scale(1.05) !important;
}

/* Акцент на заголовке карточки при наведении */
.md-child-card:hover .md-child-card-title,
.hub-children-card:hover .hub-children-card__title {
    color: #60a5fa !important;
    transition: color 0.25s ease !important;
}

/* Автоматически скрываем дублирующий TOC плагина, только если в main есть РОДНОЕ оглавление */
main:has(
    nav a[href^="#"],
    [class*="toc"]:not(.md-toc-block):not(.md-toc-content):not(.md-toc-title) a[href^="#"],
    [id*="toc"]:not(.md-toc-block) a[href^="#"]
) .md-toc-block {
    display: none !important;
}


footer.md-dumb-footer,
footer.md-dumb-footer .md-df-content {
    color: var(--color-text) !important;
    text-align: left !important;
}

/* ================================================= */
/* ФИКС ШИРИНЫ И СЕТКИ СТРАНИЦЫ SITEMAP              */
/* ================================================= */

.sitemap-main {
    max-width: 900px !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 40px 20px !important;
    box-sizing: border-box !important;
}

.sitemap-list {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.sitemap-link {
    display: block !important;
    padding: 16px 20px !important;
    border: 1px solid var(--border-color, rgba(128,128,128,0.2)) !important;
    border-radius: var(--radius, 12px) !important;
    text-decoration: none !important;
    color: var(--color-text) !important;
    font-weight: 600 !important;
    background: var(--card-bg, #ffffff) !important;
    box-shadow: var(--card-shadow, none) !important;
    transition: all 0.2s ease !important;
    box-sizing: border-box !important;
}

.sitemap-link:hover {
    transform: translateY(-2px) !important;
    border-color: rgba(96, 165, 250, 0.4) !important;
    box-shadow: 0 8px 20px rgba(0,0,0,0.06) !important;
}

footer,
.site-footer,
footer *,
.site-footer * {
    color: var(--color-text) !important;
}

footer a,
.site-footer a {
    color: var(--color-text) !important;
    opacity: 0.85;
}

#crumbs, .md-breadcrumbs {
    max-width: var(--max, var(--wrap, 1180px)) !important;
    width: 100% !important;
    margin: 16px auto 8px auto !important;
    padding: 0 20px !important;
    box-sizing: border-box !important;
}

        /* ==========================================
        FULLSCREEN MENU — PREMIUM BENTO DESIGN
        ========================================== */

        body.md-menu-mode-fullscreen .burger {
            display: none !important;
        }

        .md-menu-fullscreen-trigger {
            display: inline-flex !important;
            align-items: center !important;
            justify-content: center !important;
            gap: 10px !important;
            margin-left: auto !important;
            padding: 10px 18px !important;
            border: 1px solid var(--border-color, rgba(128,128,128,.22)) !important;
            border-radius: 999px !important;
            background: var(--card-bg, #fff) !important;
            color: var(--color-text, #0f172a) !important;
            font: inherit !important;
            font-size: 13px !important;
            font-weight: 700 !important;
            letter-spacing: 0.04em !important;
            text-transform: uppercase !important;
            cursor: pointer !important;
            position: relative !important;
            z-index: 10000 !important;
            transition: all 0.25s ease !important;
            box-shadow: 0 2px 10px rgba(0,0,0,0.04) !important;
        }

        .md-menu-fullscreen-trigger:hover {
            transform: translateY(-1px) !important;
            border-color: rgba(96, 165, 250, 0.5) !important;
            box-shadow: 0 6px 18px rgba(0,0,0,0.08) !important;
        }

        .md-menu-trigger-lines {
            font-size: 18px;
        }

        .md-menu-fullscreen {
            display: block !important;
            position: fixed;
            inset: 0;
            z-index: 1000000;
            overflow-y: auto;
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            color: var(--color-text, #111);
            background: rgba(10, 15, 28, 0.72) !important;
            backdrop-filter: blur(16px) saturate(180%) !important;
            -webkit-backdrop-filter: blur(16px) saturate(180%) !important;
            transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1), visibility 0.3s ease !important;
        }

        .md-menu-fullscreen.is-open {
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
        }

        .md-menu-fullscreen__backdrop {
            position: fixed;
            inset: 0;
            background: transparent !important;
        }

        .md-menu-fullscreen__panel {
            position: relative;
            width: min(1140px, calc(100% - 48px)) !important;
            min-height: auto !important;
            max-height: calc(100vh - 64px) !important;
            overflow-y: auto !important;
            margin: 32px auto !important;
            padding: clamp(28px, 4vw, 48px) !important;
            box-sizing: border-box !important;
            border-radius: 24px !important;
            background: var(--card-bg, #ffffff) !important;
            border: 1px solid var(--border-color, rgba(128,128,128,.18)) !important;
            box-shadow: 0 25px 80px -12px rgba(0, 0, 0, 0.35) !important;
            transform: translateY(16px) scale(0.98);
            transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
        }

        .md-menu-fullscreen.is-open .md-menu-fullscreen__panel {
            transform: translateY(0) scale(1);
        }

        .md-menu-fullscreen__header {
            display: flex !important;
            align-items: center !important;
            justify-content: space-between !important;
            padding: 0 0 22px 0 !important;
            margin: 0 0 28px 0 !important;
            background: transparent !important;
            border-bottom: 1px solid var(--border-color, rgba(128,128,128,.15)) !important;
            font-size: clamp(22px, 2.5vw, 28px) !important;
            font-weight: 800 !important;
            letter-spacing: -0.03em !important;
            color: var(--color-text, #0f172a) !important;
        }

        .md-menu-fullscreen-close {
            display: inline-flex !important;
            align-items: center !important;
            justify-content: center !important;
            width: 42px !important;
            height: 42px !important;
            padding: 0 0 2px 0 !important;
            margin: 0 !important;
            border: 1px solid var(--border-color, rgba(128,128,128,.22)) !important;
            border-radius: 50% !important;
            background: rgba(128, 128, 128, 0.05) !important;
            color: var(--color-text, #0f172a) !important;
            font-family: system-ui, -apple-system, sans-serif !important;
            font-size: 24px !important;
            font-weight: 400 !important;
            line-height: 0 !important;
            cursor: pointer !important;
            transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
        }

        .md-menu-fullscreen-close:hover {
            background: rgba(239, 68, 68, 0.12) !important;
            border-color: rgba(239, 68, 68, 0.4) !important;
            color: #ef4444 !important;
            transform: rotate(90deg) scale(1.05) !important;
        }

        .md-menu-fullscreen__list {
            display: grid !important;
            grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
            gap: 16px !important;
            max-width: 100% !important;
            margin: 0 !important;
            padding: 0 !important;
            list-style: none !important;
        }

        .md-menu-fullscreen__list > li {
            position: relative !important;
            display: flex !important;
            flex-direction: column !important;
            justify-content: center !important;
            min-width: 0 !important;
            padding: 0 !important;
            margin: 0 !important;
            background: rgba(128, 128, 128, 0.035) !important;
            border: 1px solid var(--border-color, rgba(128,128,128,.16)) !important;
            border-radius: 16px !important;
            transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1),
                        box-shadow 0.25s cubic-bezier(0.4, 0, 0.2, 1),
                        border-color 0.25s ease,
                        background-color 0.25s ease !important;
        }

        .md-menu-fullscreen__list > li:hover {
            transform: translateY(-3px) !important;
            background: rgba(96, 165, 250, 0.05) !important;
            border-color: rgba(96, 165, 250, 0.45) !important;
            box-shadow: 0 12px 28px -6px rgba(0, 0, 0, 0.1) !important;
        }

        .md-menu-fullscreen__title,
        .md-menu-fullscreen__title:hover,
        .md-menu-fullscreen__title:focus,
        .md-menu-fullscreen__title:active {
            display: flex !important;
            align-items: center !important;
            justify-content: space-between !important;
            gap: 16px !important;
            width: 100% !important;
            padding: 22px 24px !important;
            margin: 0 !important;
            box-sizing: border-box !important;
            color: var(--color-text, #0f172a) !important;
            text-decoration: none !important;
            border-bottom: none !important;
            box-shadow: none !important;
            font-size: clamp(16px, 1.35vw, 19px) !important;
            font-weight: 700 !important;
            line-height: 1.35 !important;
            letter-spacing: -0.015em !important;
            transition: color 0.2s ease !important;
        }

        .md-menu-fullscreen__title::after {
            content: '→' !important;
            display: inline-flex !important;
            align-items: center !important;
            justify-content: center !important;
            flex: 0 0 34px !important;
            width: 34px !important;
            height: 34px !important;
            border-radius: 50% !important;
            background: rgba(128, 128, 128, 0.08) !important;
            color: var(--color-text, #0f172a) !important;
            font-size: 16px !important;
            font-weight: 600 !important;
            line-height: 1 !important;
            transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1),
                        background-color 0.25s ease,
                        color 0.25s ease !important;
        }

        .md-menu-fullscreen__list > li:hover .md-menu-fullscreen__title {
            color: #3b82f6 !important;
        }

        .md-menu-fullscreen__list > li:hover .md-menu-fullscreen__title::after {
            transform: translateX(4px) !important;
            background: #3b82f6 !important;
            color: #ffffff !important;
        }

        .md-fullscreen-toggle {
            display: flex !important;
            align-items: center !important;
            justify-content: space-between !important;
            width: calc(100% - 48px) !important;
            margin: 0 auto 14px auto !important;
            padding: 10px 0 0 0 !important;
            border: 0 !important;
            border-top: 1px dashed var(--border-color, rgba(128,128,128,.2)) !important;
            background: transparent !important;
            color: var(--color-text, inherit) !important;
            font-size: 12px !important;
            font-weight: 700 !important;
            text-transform: uppercase !important;
            letter-spacing: 0.04em !important;
            opacity: 0.7 !important;
            cursor: pointer !important;
        }

        .md-fullscreen-toggle:hover {
            opacity: 1 !important;
        }

        .md-menu-fullscreen__children {
            display: none;
            margin-top: 10px;
        }

        .md-menu-fullscreen__children.is-open {
            display: grid !important;
            grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
            gap: 10px !important;
            padding: 0 24px 20px 24px !important;
            margin: 0 !important;
        }

        .md-menu-fullscreen__card,
        .md-menu-fullscreen__card:hover {
            display: flex;
            align-items: center;
            gap: 12px;
            padding: 9px;
            color: var(--color-text, inherit);
            background: var(--card-bg, #fff) !important;
            border: 1px solid var(--border-color, rgba(128,128,128,.14)) !important;
            border-radius: 10px !important;
            text-decoration: none !important;
            transition: transform 0.2s ease, border-color 0.2s ease !important;
        }

        .md-menu-fullscreen__card:hover {
            transform: translateY(-2px) !important;
            border-color: rgba(59, 130, 246, 0.4) !important;
        }

        .md-menu-fullscreen__card img {
            width: 60px !important;
            height: 48px !important;
            border-radius: 7px !important;
            object-fit: cover !important;
        }

        .md-menu-fullscreen__card strong,
        .md-menu-fullscreen__card small {
            display: block;
            color: var(--color-text, inherit);
        }

        .md-menu-fullscreen__card small {
            opacity: .7;
            margin-top: 3px;
            font-size: 11px;
        }

        @media (max-width: 768px) {
            .md-menu-fullscreen__panel {
                width: calc(100% - 24px) !important;
                max-height: calc(100vh - 24px) !important;
                margin: 12px auto !important;
                padding: 22px 16px !important;
                border-radius: 18px !important;
            }

            .md-menu-fullscreen__list,
            .md-menu-fullscreen__children.is-open {
                grid-template-columns: 1fr !important;
            }

            .md-menu-fullscreen__title {
                padding: 18px 18px !important;
            }
        }
