/* Боковое меню биржи (sidebar.php). Переписано 22.10.2026: компактная плашка профиля, группы «Биржа» / «Личное»,
   на телефоне — нижняя панель из 5 кнопок вместо боковой полосы. Меню тёмное в обеих темах сайта. */
@import url('/fonts/inter/inter.css');

:root { --sb-w: 247.5px; --sb-top: 61.9px; --sb-bnav-h: 48px; }

.layout { display: block !important; }
.main { box-sizing: border-box !important; margin-left: var(--sb-w) !important; width: calc(100% - var(--sb-w)) !important; }
html, body { overflow-x: hidden !important; }

.sidebar {
    --c-tg: #2AABEE; --c-signal: #00e5a0; --c-gold: #ffc24b; --c-danger: #ff5470;
    --c-text: #f5f8fc; --c-muted: #8ba0bd; --c-line: rgba(255,255,255,.08);
    position: fixed !important; top: var(--sb-top) !important; left: 0 !important; z-index: 10 !important;
    width: var(--sb-w) !important; height: calc(100vh - var(--sb-top)) !important; box-sizing: border-box !important;
    display: flex !important; flex-direction: column !important; padding: 0 !important;
    background: #030218 !important; border-right: 1px solid var(--c-line) !important; isolation: isolate !important;
    overflow-y: auto !important; overflow-x: hidden !important; scrollbar-width: none !important;
    font-family: 'Manrope', Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
    -webkit-font-smoothing: antialiased !important;
}
.sidebar::-webkit-scrollbar { display: none !important; }
.sidebar svg { flex-shrink: 0; }

/* фон: мягкое северное сияние + звёзды */
/* фон закреплён на экране: при прокрутке меню низ не «обрезается» */
.sb-aurora { position: fixed; top: var(--sb-top); left: 0; bottom: 0; width: var(--sb-w); z-index: 0; pointer-events: none; overflow: hidden; }
.sb-aurora::before {
    content: ''; position: absolute; inset: -17%;
    background: radial-gradient(40% 24% at 50% 0%, rgb(61 189 255 / 24%), transparent 72%), radial-gradient(120% 30% at 25% 16%, rgb(7 255 180 / 14%), transparent 70%),
        radial-gradient(80% 52% at 85% 64%, rgb(48 246 202 / 16%), transparent 70%), radial-gradient(78% 38% at 5% 85%, rgb(42 210 125 / 11%), transparent 70%);
    animation: sbAurora 16s ease-in-out infinite alternate;
}
.sb-aurora::after {
    content: ''; position: absolute; inset: 0; opacity: .45;
    background-image: radial-gradient(1.2px 1.2px at 18% 22%, rgba(255,255,255,.45) 50%, transparent 51%), radial-gradient(1.2px 1.2px at 68% 45%, rgba(255,255,255,.3) 50%, transparent 51%),
        radial-gradient(1.2px 1.2px at 40% 68%, rgba(255,255,255,.35) 50%, transparent 51%), radial-gradient(1.2px 1.2px at 85% 82%, rgba(255,255,255,.28) 50%, transparent 51%);
    background-size: 150px 150px;
}
@keyframes sbAurora { to { transform: translate3d(-2%, 1.5%, 0) scale(1.04); } }
@media (prefers-reduced-motion: reduce) { .sb-aurora::before, .btn-add-sidebar, .sb-glow, .sb-ring, .sb-promo svg { animation: none !important; } }

.sidebar-inner { position: relative; z-index: 1; display: flex; flex-direction: column; gap: 1px; padding: 12px 12px 12px; box-sizing: border-box; }

/* ---------- Плашка профиля → Кабинет ---------- */
.sb-me {
    display: grid; grid-template-columns: 56px 1fr 16px; grid-template-areas: "av t go" "row row row"; column-gap: 10px; row-gap: 9px; align-items: center;
    padding: 10px 10px 10px; border-radius: 16px; text-decoration: none !important; color: var(--c-text);
    background: linear-gradient(160deg, rgba(42,171,238,.13), rgba(0,229,160,.06) 60%, rgba(255,255,255,.02));
    border: 1px solid rgba(255,255,255,.09); box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
    transition: border-color .16s, box-shadow .16s, transform .16s;
}
a.sb-me:hover, .sb-me.on { border-color: rgba(0,229,160,.45); box-shadow: 0 0 0 3px rgba(0,229,160,.08), 0 10px 28px rgba(0,229,160,.12), inset 0 1px 0 rgba(255,255,255,.06); }
a.sb-me:hover { transform: translateY(-1px); }
.sb-me.guest { grid-template-areas: "av t t"; row-gap: 0; }
.sb-me-av { grid-area: av; position: relative; width: 56px; height: 56px; }
.sb-me-av img, .sb-me-ph { position: relative; z-index: 2; width: 56px; height: 56px; border-radius: 50%; object-fit: cover; display: block; box-sizing: border-box; border: 2.5px solid #fbfbfb; background: #0b1428; }
/* сияние вокруг аватарки (как было раньше): крутящийся цветной ореол + две волны пульса */
.sb-glow { position: absolute; inset: -7px; z-index: 0; border-radius: 50%; background: conic-gradient(from 0deg, #31fca3, #00e5a0, #70ffa1, #0fd2ff, #10ffd0, #31fca3); filter: blur(9px); opacity: 1; animation: sbSpin 7s linear infinite; }
.sb-ring { position: absolute; inset: -2px; z-index: 1; border-radius: 50%; border: 1.5px solid rgba(0,229,160,.75); animation: sbPulse 2.6s ease-out infinite; pointer-events: none; }
.sb-ring.d2 { animation-delay: 1.3s; }
@keyframes sbSpin { to { transform: rotate(360deg); } }
@keyframes sbPulse { 0% { transform: scale(.9); opacity: .65; } 100% { transform: scale(1.4); opacity: 0; } }
.sb-me-ph { display: grid; place-items: center; color: #7fd4ff; border-color: rgba(255,255,255,.3); }
.sb-me-ph svg { width: 22px; height: 22px; }
.sb-me-lvl { position: absolute; z-index: 3; left: 50%; bottom: -6px; transform: translateX(-50%); padding: 0 6px; height: 17px; border-radius: 9px; white-space: nowrap;
    background: linear-gradient(135deg, #1f3869, #0a0f1d); border: 1.5px solid #fff; color: #fff; font: 800 9.5px/14px 'JetBrains Mono', monospace; text-align: center; box-sizing: border-box;
    box-shadow: 0 2px 10px rgba(255,194,75,.45); }
.sb-me-ver { position: absolute; z-index: 3; right: -2px; top: -2px; width: 16px; height: 16px; border-radius: 50%; background: var(--c-tg); border: 2px solid #030218; color: #fff; font: 900 9px/12px Inter, sans-serif; text-align: center; box-sizing: border-box; }
.sb-me-t { grid-area: t; min-width: 0; display: flex; flex-direction: column; gap: 1px; }
.sb-me-t b { font-size: 14px; font-weight: 800; color: var(--c-text); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sb-me-t small { font-size: 11.5px; font-weight: 700; color: #7fd4ff; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sb-me.guest .sb-me-t small { color: var(--c-muted); white-space: normal; line-height: 1.3; font-weight: 600; }
.sb-me-go { grid-area: go; color: var(--c-muted); display: flex; transition: transform .16s, color .16s; }
.sb-me-go svg { width: 16px; height: 16px; }
a.sb-me:hover .sb-me-go { color: var(--c-signal); transform: translateX(2px); }
.sb-me-row { grid-area: row; display: flex; align-items: center; gap: 6px; min-width: 0; }
.sb-chip { flex-shrink: 0; padding: 3px 8px; border-radius: 8px; font: 800 10.5px/1.3 'Manrope', Inter, sans-serif; letter-spacing: .2px; white-space: nowrap; }
.sb-chip.plan { color: #8fd3ff; background: rgba(42,171,238,.16); border: 1px solid rgba(42,171,238,.3); }
.sb-chip.tok { color: #5ff0bf; background: rgba(0,229,160,.13); border: 1px solid rgba(0,229,160,.28); font-family: 'JetBrains Mono', monospace; }
.sb-xp { flex: 1; min-width: 24px; height: 5px; border-radius: 4px; background: rgba(255,255,255,.08); overflow: hidden; }
.sb-xp i { display: block; height: 100%; border-radius: 4px; background: linear-gradient(90deg, var(--c-tg), var(--c-signal) 60%, #89fc3c); box-shadow: 0 0 8px rgba(0,229,160,.5); }

/* ---------- Кнопка «Добавить канал» / «Войти» ---------- */
.btn-add-sidebar {
    display: flex !important; align-items: center; justify-content: center; gap: 7px; margin: 9px 0 2px; padding: 8px 12px; border-radius: 12px; box-sizing: border-box;
    color: #fff !important; text-decoration: none !important; font-size: 12.5px; font-weight: 800;
    background: linear-gradient(115deg, var(--c-tg) 0%, var(--c-signal) 35%, var(--c-gold) 65%, var(--c-tg) 100%); background-size: 260% 100%;
    animation: sbShimmer 5s ease-in-out infinite; box-shadow: 0 4px 18px rgba(0,229,160,.26); transition: transform .15s, box-shadow .15s;
}
.btn-add-sidebar svg { width: 18px; height: 18px; stroke-width: 2.6; }
.btn-add-sidebar:hover { transform: translateY(-1px); box-shadow: 0 6px 26px rgba(0,229,160,.4); }
@keyframes sbShimmer { 0%,100% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } }

/* ---------- Пункты меню ---------- */
.sb-menu-label { margin: 14px 8px 6px; font: 700 9.5px/1 'JetBrains Mono', monospace; letter-spacing: 1.7px; text-transform: uppercase; color: var(--c-muted); }
.sidebar-nav { display: flex; flex-direction: column; gap: 2px; }
.sidebar .sb-nav-link {
    position: relative; display: flex; align-items: center; gap: 11px; padding: 7px 10px; border-radius: 10px;
    color: #a4b6cf !important; text-decoration: none !important; font-size: 12.5px; font-weight: 650; white-space: nowrap;
    transition: color .15s, background .15s;
}
.sidebar .sb-nav-link span:not(.sb-nav-badge) { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.sidebar .sb-nav-link svg { width: 17px; height: 17px; color: #7488a6; transition: color .15s; }
.sidebar .sb-nav-link:hover { color: #fff !important; background: rgba(255,255,255,.05); }
.sidebar .sb-nav-link:hover svg { color: #cfe3ff; }
.sidebar .sb-nav-link.active { color: #fff !important; background: linear-gradient(90deg, rgba(0,229,160,.16), rgba(42,171,238,.06)); }
.sidebar .sb-nav-link.active svg { color: var(--c-signal); }
.sidebar .sb-nav-link.active::before { content: ''; position: absolute; left: -12px; top: 8px; bottom: 8px; width: 3px; border-radius: 0 3px 3px 0; background: var(--c-signal); box-shadow: 0 0 10px var(--c-signal); }
.sb-nav-badge { margin-left: auto; font: 700 10.5px/1 'JetBrains Mono', monospace; color: var(--c-muted); }
.sb-chat-badge { margin-left: auto; min-width: 18px; padding: 2px 6px; border-radius: 10px; background: var(--c-danger); color: #fff !important; font: 800 10.5px/1.2 Inter, sans-serif; text-align: center; box-sizing: border-box; }
.sb-chat-badge[hidden] { display: none !important; }
.sidebar .sb-nav-link:focus-visible, .btn-add-sidebar:focus-visible, .sb-me:focus-visible { outline: 2px solid var(--c-signal); outline-offset: 2px; }

.sb-sep { height: 1px; margin: 5px 6px; background: linear-gradient(90deg, transparent, rgba(255,255,255,.12) 20%, rgba(255,255,255,.12) 80%, transparent); }
.sidebar-nav { margin-top: 6px; }
/* невысокие экраны ноутбуков: меню целиком помещается без прокрутки */
@media (min-width: 993px) and (max-height: 640px) {
    .sb-me-row { display: none; }
    .sb-me { grid-template-areas: "av t go"; }
    .sidebar .sb-nav-link { padding: 4.5px 10px; }
}
/* Продвижение — золотое, со свечением: кнопка, которая приносит деньги */
.sidebar .sb-nav-link.sb-promo { color: #ffd27a !important; background: linear-gradient(90deg, rgba(255,194,75,.16), rgba(255,140,40,.05)); border: 1px solid rgba(255,194,75,.28); box-shadow: 0 0 18px rgba(255,194,75,.08); }
.sidebar .sb-nav-link.sb-promo svg { color: #ffc24b; animation: sbFloat 2.4s ease-in-out infinite; }
.sidebar .sb-nav-link.sb-promo:hover, .sidebar .sb-nav-link.sb-promo.active { color: #fff !important; background: linear-gradient(90deg, rgba(255,194,75,.3), rgba(255,140,40,.1)); border-color: rgba(255,194,75,.55); box-shadow: 0 0 22px rgba(255,194,75,.22); }
.sidebar .sb-nav-link.sb-promo.active::before { background: #ffc24b; box-shadow: 0 0 10px #ffc24b; }
.sb-hot { margin-left: auto; padding: 2px 6px; border-radius: 6px; background: linear-gradient(135deg, #ffc24b, #ff8a3d); color: #2b1600; font: 900 9px/1.2 Inter, sans-serif; letter-spacing: .4px; }
@keyframes sbFloat { 0%,100% { transform: translateY(0) rotate(0); } 50% { transform: translateY(-1.5px) rotate(-6deg); } }
.sidebar .sb-nav-link.sb-tariff svg { color: #5ff0bf; }
.sb-nav-badge.sb-tok { color: #5ff0bf; }
.sidebar .sb-nav-link.sb-out { color: #ff7b8e !important; }
.sidebar .sb-nav-link.sb-out svg { color: #ff5470; }
.sidebar .sb-nav-link.sb-out:hover { background: rgba(255,84,112,.1); }

[dir="rtl"] .sidebar .sb-nav-link.active::before { left: auto; right: -12px; border-radius: 3px 0 0 3px; }
[dir="rtl"] .sb-me-go { transform: scaleX(-1); }

/* ---------- Нижняя панель (телефон) ---------- */
.sb-bnav { display: none; }

@media (max-width: 992px) {
    .sidebar { display: none !important; }
    .main { margin-left: 0 !important; width: 100% !important; }
    body { padding-bottom: calc(var(--sb-bnav-h) + env(safe-area-inset-bottom, 0px)) !important; }
    .sb-bnav {
        position: fixed; left: 0; right: 0; bottom: 0; z-index: 900; display: grid; grid-template-columns: repeat(5, 1fr);
        height: calc(var(--sb-bnav-h) + env(safe-area-inset-bottom, 0px)); padding: 0 4px env(safe-area-inset-bottom, 0px); box-sizing: border-box;
        background: rgba(5, 8, 24, .94); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px);
        border-top: 1px solid rgba(255,255,255,.08); box-shadow: 0 -8px 28px rgba(0,0,0,.28);
        font-family: 'Manrope', Inter, -apple-system, sans-serif;
    }
    .sb-bnav a, .sb-bnav button {
        position: relative; border: 0; background: none; padding: 0; font-family: inherit; cursor: pointer; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; min-width: 0;
        color: #8ba0bd !important; text-decoration: none !important; font-size: 9px; font-weight: 700; -webkit-tap-highlight-color: transparent;
    }
    .sb-bnav a span { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .sb-bnav svg { width: 18px; height: 18px; }
    .sb-bnav a.on, .sb-bnav button.on { color: #fff !important; }
    .sb-bnav a.on svg { color: #00e5a0; }
    .sb-bnav a.on:not(.sb-fab)::before, .sb-bnav button.on::before { content: ''; position: absolute; top: 0; left: 28%; right: 28%; height: 2.5px; border-radius: 0 0 3px 3px; background: #00e5a0; box-shadow: 0 0 10px #00e5a0; }
    .sb-bnav button span { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    /* Продвижение — круглая золотая кнопка по центру, приподнята над панелью */
    .sb-bnav .sb-fab { justify-content: flex-end; padding-bottom: 5px; color: #ffd27a !important; }
    .sb-bnav .sb-fab i { position: absolute; top: -16px; left: 50%; transform: translateX(-50%); width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center;
        background: radial-gradient(circle at 30% 25%, #ffe08a, #ffb02e 55%, #ff7a2f); border: 3px solid #050818; box-shadow: 0 6px 18px rgba(255,160,40,.45), 0 0 0 1px rgba(255,194,75,.4); }
    .sb-bnav .sb-fab i svg { width: 20px; height: 20px; color: #3a1d00; stroke-width: 2.1; animation: sbFloat 2.4s ease-in-out infinite; }
    .sb-bnav .sb-fab.on i { box-shadow: 0 6px 22px rgba(255,160,40,.7), 0 0 0 3px rgba(255,194,75,.5); }
    .sb-bnav .sb-fab span { font-weight: 800; }
    .sb-bnav-me img { width: 20px; height: 20px; border-radius: 50%; object-fit: cover; border: 1.5px solid rgba(255,255,255,.25); box-sizing: border-box; }
    .sb-bnav-me.on img { border-color: #00e5a0; box-shadow: 0 0 0 2px rgba(0,229,160,.25); }
    .sb-bnav .sb-chat-badge { position: absolute; top: 4px; left: calc(50% + 5px); margin: 0; min-width: 14px; padding: 0 3px; font-size: 8.5px; border: 2px solid #050818; }
    /* ---------- Шторка «Меню» ---------- */
    .sb-sheet { position: fixed; inset: 0; z-index: 1000; font-family: 'Manrope', Inter, -apple-system, sans-serif; }
    .sb-sheet[hidden] { display: none; }
    .sb-sheet-bg { position: absolute; inset: 0; background: rgba(2,6,18,.55); -webkit-backdrop-filter: blur(3px); backdrop-filter: blur(3px); opacity: 0; transition: opacity .2s; }
    .sb-sheet-in { position: absolute; left: 0; right: 0; bottom: 0; max-height: 88vh; overflow-y: auto; box-sizing: border-box;
        padding: 8px 14px calc(16px + env(safe-area-inset-bottom, 0px)); border-radius: 22px 22px 0 0; color: #f5f8fc;
        background: radial-gradient(120% 60% at 50% 0%, rgba(42,171,238,.18), transparent 60%), #070d22; border-top: 1px solid rgba(255,255,255,.1);
        box-shadow: 0 -18px 50px rgba(0,0,0,.45); transform: translateY(100%); transition: transform .22s cubic-bezier(.2,.8,.2,1); }
    .sb-sheet.show .sb-sheet-bg { opacity: 1; }
    .sb-sheet.show .sb-sheet-in { transform: none; }
    .sb-sheet-grip { width: 40px; height: 4px; border-radius: 3px; background: rgba(255,255,255,.22); margin: 2px auto 10px; }
    .sb-sh-me { display: flex; align-items: center; gap: 11px; padding: 10px; border-radius: 15px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.08); text-decoration: none !important; color: inherit !important; }
    .sb-sh-me img { width: 44px; height: 44px; border-radius: 50%; object-fit: cover; border: 2px solid #00e5a0; box-shadow: 0 0 14px rgba(0,229,160,.4); }
    .sb-sh-me span { flex: 1; min-width: 0; display: flex; flex-direction: column; }
    .sb-sh-me b { font-size: 15px; font-weight: 800; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .sb-sh-me small { font-size: 11.5px; color: #8fd3ff; font-weight: 700; }
    .sb-sh-me em { font-style: normal; font-size: 12px; font-weight: 800; color: #00e5a0; white-space: nowrap; }
    .sb-sh-add { margin: 10px 0 !important; padding: 12px !important; font-size: 14px !important; color: #fff !important;
        background: linear-gradient(115deg, #2AABEE 0%, #00e5a0 35%, #ffc24b 65%, #2AABEE 100%) !important; background-size: 260% 100% !important; box-shadow: 0 6px 20px rgba(0,229,160,.3) !important; }
    .sb-sh-money { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-bottom: 8px; }
    .sb-sh-big { display: flex; align-items: center; gap: 10px; padding: 12px; border-radius: 15px; text-decoration: none !important; min-width: 0; }
    .sb-sh-big svg { width: 24px; height: 24px; flex-shrink: 0; }
    .sb-sh-big span { display: flex; flex-direction: column; min-width: 0; }
    .sb-sh-big b { font-size: 13.5px; font-weight: 850; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .sb-sh-big small { font-size: 10.5px; font-weight: 700; opacity: .85; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .sb-sh-big.promo { color: #2b1600 !important; background: radial-gradient(circle at 20% 20%, #ffe08a, #ffb02e 55%, #ff8a3d); box-shadow: 0 8px 22px rgba(255,160,40,.35); }
    .sb-sh-big.tariff { color: #eafff8 !important; background: linear-gradient(135deg, #0ea5a0, #10b981 55%, #1a9cf5); box-shadow: 0 8px 22px rgba(16,185,129,.3); }
    .sb-sh-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
    .sb-sh-grid a { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 12px 6px; border-radius: 14px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.07);
        color: #d6e3f3 !important; text-decoration: none !important; font-size: 11.5px; font-weight: 750; text-align: center; min-width: 0; }
    .sb-sh-grid a span { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .sb-sh-grid svg { width: 21px; height: 21px; color: #7fd4ff; }
    .sb-sh-out { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 12px; padding: 12px; border-radius: 14px; text-decoration: none !important;
        color: #ff7b8e !important; font-size: 13.5px; font-weight: 800; background: rgba(255,84,112,.1); border: 1px solid rgba(255,84,112,.28); }
    .sb-sh-out svg { width: 18px; height: 18px; }

    /* Таблицы каналов были подогнаны под узкую ширину (рядом была боковая полоса 67px). Теперь страница шире —
       категория канала вставала в одну строку с @ником и наезжала на него, а звёздочка «избранного» съезжала.
       Возвращаем категорию на свою строку — как было задумано (название / @ник / категория). */
    .ch-row .ch-names .ch-cat-mobile-only { display: flex !important; width: max-content; max-width: 100%; }

    /* Три верхних блока (Каталог / Скидки / Опт): иконка, рядом название (переносится на 2 строки) и число справа,
       описание в 3 строки и ссылка внизу — у всех трёх на одной линии. Блоки растут вниз, а не сжимаются. */
    .top-nav-buttons { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; gap: 6px !important; margin-bottom: 6px !important; }
    .top-nav-buttons .promo-card { display: flex !important; flex-direction: column !important; padding: 8px 7px 9px 8px !important; border-radius: 12px !important; min-width: 0; }
    .top-nav-buttons .promo-card-row { display: grid !important; grid-template-columns: auto minmax(0, 1fr) auto !important; grid-template-areas: "ic tt st"; align-items: center !important;
        gap: 5px 4px !important; margin-bottom: 5px !important; flex-wrap: nowrap !important; }
    .top-nav-buttons .promo-card-icon { grid-area: ic; width: 20px !important; height: 20px !important; border-radius: 6px !important; }
    .top-nav-buttons .promo-card-icon svg { width: 11px !important; height: 11px !important; }
    .top-nav-buttons .promo-card-stat { grid-area: st; justify-self: end; align-self: start; font-size: 7.5px !important; padding: 1px 6px !important; }
    .top-nav-buttons .promo-card-title { grid-area: tt; font-size: 9.5px !important; max-width: none !important; line-height: 1.2 !important; white-space: normal !important; }
    .top-nav-buttons .promo-card-desc { font-size: 7px !important; line-height: 1.35 !important; -webkit-line-clamp: 3 !important; margin-bottom: 6px !important; }
    .top-nav-buttons .promo-card-link { font-size: 8.5px !important; margin-top: auto !important; }
    .top-nav-buttons .promo-card-link svg { width: 8px !important; height: 8px !important; }


    /* подсказка «перейти в ваш регион» и кнопки внизу страниц — над панелью */
    .i18n-hint { bottom: calc(var(--sb-bnav-h) + 12px + env(safe-area-inset-bottom, 0px)) !important; }
}

/* ---------- Компьютер: меню в три группы с подписями (23.10.2026) ----------
   «Биржа» · «Личное» · «Общение», у подписи — тонкая линия до края. «Выход» — последним пунктом в общем списке.
   Размеры обычные на любом экране; на совсем низких экранах подписи прячутся, чтобы всё помещалось. */
@media (min-width: 993px) {
    .sidebar-inner { padding: 14px 12px 16px !important; }
    .sb-menu-label { display: flex; align-items: center; gap: 8px; margin: 14px 10px 6px !important; font: 700 9.5px/1 'JetBrains Mono', monospace; letter-spacing: 1.6px; color: #6f84a3; }
    .sb-menu-label::after { content: ''; flex: 1; height: 1px; background: linear-gradient(90deg, rgba(255,255,255,.12), transparent); }
    .sidebar-nav { gap: 2px !important; margin-top: 2px !important; }
    .sidebar-nav > .sb-menu-label:first-child { margin-top: 12px !important; }
    .sidebar .sb-nav-link { padding: 8px 10px !important; font-size: 13px !important; gap: 11px !important; border-radius: 10px !important; }
    .sidebar .sb-nav-link svg { width: 18px !important; height: 18px !important; }
    .sidebar .sb-nav-link.sb-promo { margin: 2px 0; }
    .sb-sep { margin: 10px 6px !important; }
    .sidebar .sb-nav-link.sb-out { color: #ff8a9b !important; }
    .btn-add-sidebar { margin: 10px 0 0 !important; padding: 9px 12px !important; font-size: 13px !important; }
}
@media (min-width: 993px) and (max-height: 720px) {
    .sidebar-inner { padding-top: 10px !important; }
    .sb-me { padding: 9px 10px !important; row-gap: 8px !important; }
    .sb-menu-label { margin: 10px 10px 4px !important; }
    .sidebar .sb-nav-link { padding: 7px 10px !important; }
    .sb-sep { margin: 7px 6px !important; }
}
@media (min-width: 993px) and (max-height: 630px) {
    .sb-menu-label { display: none !important; }
    .sb-sep { margin: 4px 6px !important; }
}
@media (min-width: 993px) and (min-height: 860px) {
    .sidebar .sb-nav-link { padding: 10px 10px !important; }
    .sb-menu-label { margin: 18px 10px 8px !important; }
}
