@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@700;800;900&family=JetBrains+Mono:wght@400;700&display=swap');
/* BLACK MANAGER — единый стиль «Black & Acid».
   Чёрный фон, строгие рамки, кислотно-лаймовый акцент. Подключается ПОСЛЕ всех остальных стилей на каждой странице.
   Меняйте акцент одной строкой: --a (цвет) и --a-ink (цвет текста на нём). */
:root {
    --bg:#000; --p1:#0a0a0b; --p2:#111113; --p3:#18181b;
    --ln:#222226; --ln2:#33333a;
    --tx:#f5f5f4; --dim:#a1a1a8; --mute:#63636b;
    --a:#c6ff3d; --a2:#a6dc22; --a-ink:#0a0a0a;
    --a-soft:rgba(198,255,61,0.10); --a-line:rgba(198,255,61,0.45);
    --red:#ff4d5e; --r:10px;
    --mono:'JetBrains Mono','Space Mono',ui-monospace,Menlo,monospace;
    --bm-bg:#000; --bm-fg:var(--tx); --bm-acc:var(--a); --bm-acc2:var(--a); --bm-line:var(--ln); --bm-dim:var(--dim); --bm-mute:var(--mute);
}
html { scrollbar-color:#2a2a2f #000; }
::selection { background:var(--a); color:var(--a-ink); }
body { background:#000 !important; color:var(--tx); font-family:'Inter',system-ui,sans-serif; -webkit-font-smoothing:antialiased; }
/* сетка + лаймовое свечение сверху */
body::before { content:''; position:fixed; inset:0; z-index:0; pointer-events:none;
    background:
        radial-gradient(700px 380px at 50% -120px, rgba(198,255,61,0.14), transparent 70%),
        linear-gradient(rgba(255,255,255,0.028) 1px, transparent 1px) 0 0/56px 56px,
        linear-gradient(90deg, rgba(255,255,255,0.028) 1px, transparent 1px) 0 0/56px 56px; }
#bg-canvas, #bokeh { opacity:.55; }

/* ── ШАПКА САЙТА */
.bm-nav { background:rgba(0,0,0,0.82) !important; border-bottom:1px solid var(--ln) !important; box-shadow:none; }
.bm-logo { font-family:var(--mono); font-weight:700; letter-spacing:.2em; color:var(--tx); background:none; -webkit-text-fill-color:currentColor; }
.bm-logo i { color:var(--a); -webkit-text-fill-color:var(--a); }
.bm-links a { font-family:var(--mono); font-size:12px !important; letter-spacing:.14em !important; color:var(--dim); border-radius:0; padding:8px 2px !important; border-bottom:2px solid transparent !important; background:none !important; box-shadow:none !important; }
.bm-links a:hover { color:var(--tx); }
.bm-links a.active { color:var(--a) !important; border-bottom-color:var(--a) !important; }
.bm-btn { border-radius:8px !important; font-family:var(--mono); letter-spacing:.1em; }
.bm-btn-in { color:var(--a-ink) !important; background:var(--a) !important; border:1px solid var(--a) !important; }
.bm-btn-in:hover { background:transparent !important; color:var(--a) !important; box-shadow:none; }
.bm-btn-out { color:var(--red) !important; border-color:rgba(255,77,94,.5) !important; background:transparent !important; }
.bm-user-fb { color:var(--a-ink) !important; background:var(--a) !important; border-color:var(--a) !important; }

/* ── КНОПКИ */
.cta, .btn, .close-btn, .vk-btn { border-radius:8px !important; font-family:var(--mono); font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.cta-main, .btn-primary, .close-btn { background:var(--a) !important; color:var(--a-ink) !important; border:1px solid var(--a) !important; box-shadow:0 0 0 0 var(--a-soft); }
.cta-main:hover, .btn-primary:hover, .close-btn:hover { background:#d9ff73 !important; transform:translateY(-2px); box-shadow:0 10px 30px -10px rgba(198,255,61,.55) !important; filter:none; }
.cta-line, .btn-ghost, .btn-back { background:transparent !important; color:var(--tx) !important; border:1px solid var(--ln2) !important; -webkit-backdrop-filter:none; backdrop-filter:none; }
.cta-line:hover, .btn-ghost:hover, .btn-back:hover { border-color:var(--a) !important; color:var(--a) !important; background:var(--a-soft) !important; }
.btn { background:var(--a-soft); color:var(--a); border:1px solid var(--a-line); }
.btn:hover { background:var(--a); color:var(--a-ink); }
.btn-danger { background:rgba(255,77,94,.08) !important; color:var(--red) !important; border:1px solid rgba(255,77,94,.4) !important; }
.btn-danger:hover { background:var(--red) !important; color:#000 !important; }
.btn:disabled, .btn[disabled] { opacity:.5; }

/* ── ПАНЕЛИ / КАРТОЧКИ */
.section, .card, .feat, .mock, .empty, .kpi, .chat-card, .notice, .modal { background:var(--p1) !important; border:1px solid var(--ln) !important; border-radius:var(--r) !important; box-shadow:none !important; -webkit-backdrop-filter:none; backdrop-filter:none; }
.section:hover, a.card:hover, .feat:hover, .chat-card:hover { border-color:var(--a-line) !important; background:var(--p2) !important; transform:translateY(-2px); }
.section { position:relative; }
.section::before { content:''; position:absolute; left:-1px; top:22px; width:3px; height:26px; background:var(--a); border-radius:0 3px 3px 0; }
.section h2, .section-title { text-transform:uppercase; letter-spacing:.04em; }
.section h2 { font-size:15px !important; color:var(--tx); }
.section h2 i, .section-title i { color:var(--a) !important; }
.section-title, .sec-title, .chat-title { font-weight:900 !important; background:none !important; -webkit-text-fill-color:currentColor !important; color:var(--tx) !important; letter-spacing:-.01em; }
.section-title { font-size:clamp(26px,4vw,38px) !important; }
.page-sub, .muted { color:var(--dim) !important; }
.kicker { font-family:var(--mono); color:var(--a) !important; letter-spacing:.24em; }
.chat-head { background:linear-gradient(180deg,var(--p2),var(--p1)) !important; border:1px solid var(--ln) !important; border-left:3px solid var(--a) !important; border-radius:var(--r) !important; }
.icon, .chat-ava { border-radius:10px !important; }
.icon, .icon-blue, .icon-green, .icon-purple, .icon-pink, .icon-orange { background:var(--a-soft) !important; color:var(--a) !important; border:1px solid var(--a-line) !important; }
.kpi-value { font-family:var(--mono); font-weight:700; color:var(--tx); }
.card .arrow { color:var(--a) !important; font-family:var(--mono); letter-spacing:.06em; text-transform:uppercase; }

/* ── ПРАВИЛА / КОМАНДЫ / БЛОКИРОВКИ */
.rule, .cmd { background:transparent !important; border:none !important; border-bottom:1px solid var(--ln) !important; border-radius:0 !important; padding-left:6px; transition:background .15s, padding .15s; }
.rule:hover, .cmd:hover { background:var(--a-soft) !important; padding-left:14px; transform:none; }
.rule .name, .cmd .name { font-family:var(--mono); color:var(--a) !important; font-weight:700; }
.rule .desc, .cmd .desc { color:var(--dim); }
.rule:hover .desc, .cmd:hover .desc { color:var(--tx); }
.badge { border-radius:6px !important; font-family:var(--mono); font-size:11px; letter-spacing:.06em; text-transform:uppercase; }
.badge-ban, .badge-global { background:rgba(255,77,94,.12); color:var(--red); border:1px solid rgba(255,77,94,.4); }
.pill, .tag { border-radius:6px !important; font-family:var(--mono); background:var(--p2) !important; border:1px solid var(--ln) !important; color:var(--dim) !important; }
.pill i { color:var(--a) !important; }
.pill.ok { color:var(--a) !important; border-color:var(--a-line) !important; background:var(--a-soft) !important; }
.pill.bad { color:var(--red) !important; border-color:rgba(255,77,94,.4) !important; background:rgba(255,77,94,.08) !important; }
.modal-overlay { background:rgba(0,0,0,.82) !important; backdrop-filter:blur(6px); }
.modal { border:1px solid var(--a-line) !important; box-shadow:0 30px 80px -30px rgba(198,255,61,.35) !important; }

/* ── ТАБЛИЦЫ (логи, активность, блокировки) */
table { border-collapse:collapse; width:100%; }
thead th, th { font-family:var(--mono); font-size:11px !important; letter-spacing:.14em; text-transform:uppercase; color:var(--mute) !important; background:var(--p2) !important; border-bottom:1px solid var(--ln2) !important; }
td { border-bottom:1px solid var(--ln) !important; }
tbody tr:hover td, tr:hover > td { background:var(--a-soft) !important; }

/* ── ВКЛАДКИ / ПЕРЕКЛЮЧАТЕЛИ / ПОЛЯ */
.tabs { border-bottom:1px solid var(--ln); gap:4px; }
.tab { border-radius:8px 8px 0 0 !important; background:transparent !important; border:1px solid transparent !important; color:var(--dim) !important; font-family:var(--mono); font-size:12px !important; letter-spacing:.08em; text-transform:uppercase; }
.tab:hover { color:var(--tx) !important; }
.tab.active { background:var(--a) !important; color:var(--a-ink) !important; border-color:var(--a) !important; box-shadow:none !important; }
.bar { background:var(--p3) !important; }
.bar i { background:var(--a) !important; }
.switch i { background:var(--p3) !important; border:1px solid var(--ln2); }
.switch input:checked + i { background:var(--a) !important; border-color:var(--a); box-shadow:0 0 16px rgba(198,255,61,.45) !important; }
.switch input:checked + i::after { background:#000; }
input[type=text], input[type=search], input[type=number], input[type=password], textarea, select { background:var(--p2) !important; border:1px solid var(--ln2) !important; border-radius:8px !important; color:var(--tx) !important; font-family:'Inter',sans-serif; }
input:focus, textarea:focus, select:focus { border-color:var(--a) !important; box-shadow:0 0 0 3px var(--a-soft) !important; outline:none; }
.toggle-row, .field, .info-row, .role-row, .top-list li { border-bottom-color:var(--ln) !important; }
.toggle-text small, .field label small { color:var(--a) !important; font-family:var(--mono); }
.toast { border-radius:8px !important; font-family:var(--mono); background:var(--p2) !important; border:1px solid var(--a-line) !important; color:var(--tx) !important; }
.toast.err { border-color:rgba(255,77,94,.6) !important; }

/* ── АДМИН-ПАНЕЛЬ (логи, активность, чаты, пользователи) */
.header { border-bottom:1px solid var(--ln) !important; }
.logo { font-family:var(--mono); letter-spacing:.14em; text-transform:uppercase; }
.logo span { color:var(--a) !important; }
.user-badge { border-radius:8px !important; background:var(--p2) !important; border:1px solid var(--ln) !important; }

/* ── ГЛАВНАЯ */
.hero-title { text-shadow:none; }
.hero-title .l2 { -webkit-text-stroke:2px var(--tx) !important; }
.hero-title .l3 { color:var(--a); -webkit-text-fill-color:var(--a); background:none; }
.eyebrow { font-family:var(--mono); }
.feat .num { color:var(--a) !important; font-family:var(--mono); }
.ticks li::before { color:var(--a) !important; }
.mock-row em.on { background:var(--a) !important; }
.mock-ava { background:var(--a) !important; color:var(--a-ink) !important; }

/* ── ПОДВАЛ */
.footer-text, .foot-copy { color:var(--mute) !important; font-family:var(--mono); font-size:12px !important; letter-spacing:.06em; }
.footer-text a, .foot-links a, .section a { color:var(--a); text-decoration:none; }
.footer-text a:hover, .foot-links a:hover, .section a:hover { text-decoration:underline; }
.foot-logo { font-family:var(--mono); letter-spacing:.2em; }
.foot-logo i { color:var(--a); font-style:normal; }
@media (max-width:640px) { :root { --r:8px; } body::before { background-size:auto,40px 40px,40px 40px; } }

/* ═════ ПОЛИРОВКА v2 ═════ */
h1, h2, .section-title, .sec-title, .chat-title, .kpi-value, .bm-logo, .foot-logo { font-family:'Montserrat','Inter',sans-serif; }
.bm-logo, .foot-logo { font-family:var(--mono); }
.kpi-value { font-family:'Montserrat',sans-serif !important; font-weight:800; font-size:34px; }

/* шапка: стекло + тонкая лаймовая линия снизу */
.bm-nav { background:rgba(0,0,0,0.7) !important; -webkit-backdrop-filter:blur(18px) saturate(140%); backdrop-filter:blur(18px) saturate(140%); }
.bm-nav::after { content:''; position:absolute; left:0; right:0; bottom:-1px; height:1px; background:linear-gradient(90deg,transparent,var(--a) 50%,transparent); opacity:.55; }

/* карточки: внутренний градиент, лаймовое свечение по наведению, мягкая тень */
.section, .card, .feat, .mock, .kpi, .chat-card, .empty { background:linear-gradient(180deg,rgba(255,255,255,0.045),rgba(255,255,255,0.012)) , var(--p1) !important; transition:border-color .25s, transform .25s, box-shadow .25s, background .25s; }
.section:hover, a.card:hover, .feat:hover, .chat-card:hover, .kpi:hover { box-shadow:0 24px 60px -30px rgba(198,255,61,.35) !important; }
.kpi { position:relative; overflow:hidden; }
.kpi::after { content:''; position:absolute; right:-30px; top:-30px; width:110px; height:110px; border-radius:50%; background:radial-gradient(circle,rgba(198,255,61,.18),transparent 70%); pointer-events:none; }

/* главная */
.hero-in { padding-top:clamp(60px,12vh,140px); }
.hero-sub { font-size:clamp(16px,1.9vw,21px) !important; color:#d4d4d8 !important; max-width:720px !important; line-height:1.6; }
.eyebrow { font-size:clamp(11px,1.5vw,14px) !important; color:var(--a) !important; letter-spacing:.34em; }
.eyebrow span { background:var(--a) !important; opacity:.6; }
.hero-cta { margin-top:clamp(28px,5vh,48px) !important; }
.cta { min-height:58px !important; padding:0 clamp(26px,3.4vw,44px) !important; }
.cta-main { position:relative; overflow:hidden; }
.cta-main::after { content:''; position:absolute; top:0; bottom:0; width:60px; left:-90px; background:linear-gradient(100deg,transparent,rgba(255,255,255,.55),transparent); transform:skewX(-20deg); transition:left .6s; }
.cta-main:hover::after { left:120%; }
.sec-title { font-size:clamp(28px,4.6vw,52px) !important; text-transform:uppercase; }
.feat { padding:30px 26px !important; }
.feat .num { font-size:44px !important; font-weight:900; color:transparent !important; -webkit-text-stroke:1px var(--a); font-family:'Montserrat',sans-serif !important; transition:color .25s; }
.feat:hover .num { color:var(--a) !important; }
.feat h3 { font-family:'Montserrat',sans-serif; text-transform:uppercase; letter-spacing:.02em; }
.scroll-hint span { color:var(--a) !important; }

/* подвал */
.foot { border-top:1px solid var(--ln); background:linear-gradient(180deg,transparent,rgba(198,255,61,.04)); }

/* правила / команды: аккуратные заголовки блоков и «ползунок» строк */
.section h2 { font-family:'Montserrat',sans-serif; font-size:16px !important; letter-spacing:.06em; }
.rule, .cmd { padding-top:10px; padding-bottom:10px; }

/* скроллбар */
::-webkit-scrollbar { width:10px; height:10px; }
::-webkit-scrollbar-track { background:#000; }
::-webkit-scrollbar-thumb { background:#2a2a2f; border-radius:10px; border:2px solid #000; }
::-webkit-scrollbar-thumb:hover { background:var(--a); }

/* плавное появление страницы */
@keyframes bmIn { from { opacity:0; transform:translateY(14px); } to { opacity:1; transform:none; } }
.container > .section, .container > .grid, .container > .chat-head, .container > .tabs, .container > .panel.active { animation:bmIn .55s ease both; }
@media (prefers-reduced-motion:reduce) { .container > * { animation:none !important; } }

/* ═════ ПОЛИРОВКА v3: главная ═════ */
.hero { justify-content:flex-start !important; text-align:left !important; align-items:center; padding-bottom:110px; }
.hero-in { max-width:1400px; margin:0 auto; padding-left:clamp(0px,1vw,16px) !important; }
.eyebrow { justify-content:flex-start !important; gap:14px !important; margin-bottom:clamp(20px,4vh,36px) !important; text-shadow:none !important; }
.eyebrow span:first-child { display:none; }
.eyebrow span:last-child { width:64px !important; }
.hero-sub { margin:0 !important; max-width:900px !important; font-family:'Montserrat','Inter',sans-serif; font-weight:800 !important; font-size:clamp(28px,4.6vw,64px) !important; line-height:1.08 !important; letter-spacing:-.02em; color:#fff !important; text-shadow:0 0 30px #000, 0 0 60px #000 !important; }
.hero-sub b { color:var(--a); font-weight:900; }
.hero-note { margin-top:clamp(16px,3vh,26px); max-width:560px; font-size:clamp(15px,1.6vw,19px); line-height:1.6; color:var(--dim); text-shadow:0 0 20px #000; }
.hero-cta { justify-content:flex-start !important; }
.hero-knot { left:auto !important; right:-8% !important; top:50% !important; transform:translateY(-50%) !important; width:min(72vw,780px) !important; opacity:.5; }
.hero-stats { position:absolute; left:0; right:0; bottom:0; z-index:3; display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--ln); background:linear-gradient(180deg,rgba(0,0,0,.35),rgba(0,0,0,.85)); -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px); }
.hero-stats div { padding:20px clamp(14px,3vw,40px); border-right:1px solid var(--ln); display:flex; align-items:baseline; gap:14px; flex-wrap:wrap; }
.hero-stats div:last-child { border-right:none; }
.hero-stats b { font-family:'Montserrat',sans-serif; font-size:clamp(20px,2.6vw,32px); font-weight:900; color:var(--a); }
.hero-stats span { font-family:var(--mono); font-size:11px; letter-spacing:.14em; text-transform:uppercase; color:var(--dim); }
.scroll-hint { display:none !important; }
@media (max-width:820px) {
    .hero { text-align:left; padding-bottom:170px; }
    .hero-knot { right:-30% !important; opacity:.3; }
    .hero-stats { grid-template-columns:1fr 1fr; }
    .hero-stats div:nth-child(2) { border-right:none; }
    .hero-stats div:nth-child(-n+2) { border-bottom:1px solid var(--ln); }
}

/* ═════ ПОЛИРОВКА v3: внутренние страницы (правила, команды, блокировки, политика) ═════ */
.container { max-width:1180px !important; padding-top:clamp(34px,6vh,64px) !important; }
.section-title { position:relative; padding-top:26px; margin-bottom:10px !important; }
.section-title::before { content:'// BLACK MANAGER'; position:absolute; top:0; left:0; font-family:var(--mono); font-size:11px; font-weight:700; letter-spacing:.3em; color:var(--a); }
.page-sub { font-size:15px !important; margin-bottom:34px !important; }
.section { padding:26px 28px !important; }
.section h2 { padding-bottom:14px; margin-bottom:8px !important; border-bottom:1px solid var(--ln); }
@media (min-width:900px) { .feat-grid { grid-template-columns:repeat(3,1fr) !important; } }

/* ═════ ВИДЕО-ФОН ГЛАВНОЙ ═════ */
.hero-video { opacity:.85 !important; }
.hero-shade { background:linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.55) 45%,rgba(0,0,0,.15) 100%), linear-gradient(180deg,rgba(0,0,0,.35),transparent 30%,rgba(0,0,0,.6)) !important; }
@media (max-width:820px) { .hero-shade { background:rgba(0,0,0,.6) !important; } }
@media (prefers-reduced-motion:reduce) { .hero-video { display:none; } }
