/* БигМун — тема «Микроскоп»: тёмное поле зрения, флуоресцентные клетки, главы-объективы. Префикс bm-. */

/* ------------------------------------------------------------------ шрифты (OFL, свои woff2) */
@font-face { font-family: "Play"; font-weight: 700; font-style: normal; font-display: swap; src: url("fonts/play-cyrillic-700-normal.woff2") format("woff2"); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Play"; font-weight: 700; font-style: normal; font-display: swap; src: url("fonts/play-latin-700-normal.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Scada"; font-weight: 400; font-style: normal; font-display: swap; src: url("fonts/scada-cyrillic-400-normal.woff2") format("woff2"); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Scada"; font-weight: 400; font-style: normal; font-display: swap; src: url("fonts/scada-latin-400-normal.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Scada"; font-weight: 700; font-style: normal; font-display: swap; src: url("fonts/scada-cyrillic-700-normal.woff2") format("woff2"); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Scada"; font-weight: 700; font-style: normal; font-display: swap; src: url("fonts/scada-latin-700-normal.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Scada"; font-weight: 400; font-style: italic; font-display: swap; src: url("fonts/scada-cyrillic-400-italic.woff2") format("woff2"); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Scada"; font-weight: 400; font-style: italic; font-display: swap; src: url("fonts/scada-latin-400-italic.woff2") format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Handjet"; font-weight: 100 900; font-style: normal; font-display: swap; src: url("fonts/handjet-cyrillic-wght-normal.woff2") format("woff2-variations"); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Handjet"; font-weight: 100 900; font-style: normal; font-display: swap; src: url("fonts/handjet-latin-wght-normal.woff2") format("woff2-variations"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

/* ------------------------------------------------------------------ токены */
:root {
	--bg: #04070c;
	--bg2: #070d15;
	--panel: #0a121c;
	--card: #101b29;
	--raise: #172537;
	--line: rgba(140, 210, 230, .14);
	--line2: rgba(140, 210, 230, .26);
	--tx: #e9f4f7;
	--mut: #a9bcc7;
	--dim: #8ba0ad;
	--c: #45e6e3;
	--m: #ff5fd2;
	--g: #9af06c;
	--b: #8aa0ff;
	--l: #c6abff;
	--fx: var(--c);
	--f-head: "Play", "Scada", "Trebuchet MS", sans-serif;
	--f-text: "Scada", "Segoe UI", "Trebuchet MS", sans-serif;
	--f-num: "Handjet", "Play", monospace;
	--r: 18px;
	--r-s: 12px;
	--w: 1240px;
	--gut: 20px;
	--glow: 0 0 0 1px color-mix(in srgb, var(--fx) 45%, transparent), 0 0 28px -6px color-mix(in srgb, var(--fx) 60%, transparent);
	color-scheme: dark;
}
[data-fx="c"] { --fx: var(--c); }
[data-fx="m"] { --fx: var(--m); }
[data-fx="g"] { --fx: var(--g); }
[data-fx="b"] { --fx: var(--b); }
[data-fx="l"] { --fx: var(--l); }
.fx-c { color: var(--c); }
.fx-m { color: var(--m); }
.fx-g { color: var(--g); }
.fx-b { color: var(--b); }
.fx-l { color: var(--l); }

/* ------------------------------------------------------------------ основа */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-padding-top: 76px; }
@media (prefers-reduced-motion: no-preference) { html { scroll-behavior: smooth; } }
body {
	margin: 0;
	min-width: 320px;
	background-color: var(--bg);
	background-image:
		radial-gradient(1100px 700px at 78% -8%, rgba(69, 230, 227, .09), transparent 60%),
		radial-gradient(900px 600px at -10% 40%, rgba(255, 95, 210, .05), transparent 60%),
		linear-gradient(rgba(140, 210, 230, .035) 1px, transparent 1px),
		linear-gradient(90deg, rgba(140, 210, 230, .035) 1px, transparent 1px);
	background-size: auto, auto, 32px 32px, 32px 32px;
	background-attachment: fixed, fixed, scroll, scroll;
	color: var(--tx);
	font: 400 17px/1.6 var(--f-text);
	overflow-x: hidden;
}
img, svg { max-width: 100%; }
a { color: #8ff2ef; text-decoration: none; }
a:hover { color: #c9fffc; }
:focus-visible { outline: 2px solid var(--c); outline-offset: 3px; border-radius: 4px; }
b, strong { font-weight: 700; }
h1, h2, h3, h4 { font-family: var(--f-head); font-weight: 700; line-height: 1.15; margin: 0; letter-spacing: .005em; }
p { margin: 0 0 .8em; }
hr { border: 0; border-top: 1px solid var(--line); margin: 20px 0; }
.bm-defs { position: absolute; width: 0; height: 0; overflow: hidden; }
.bm-skip { position: absolute; left: 12px; top: -60px; z-index: 50; background: var(--c); color: #021; padding: 10px 16px; border-radius: 10px; font-weight: 700; }
.bm-skip:focus { top: 12px; }
.bm-site { min-height: 100vh; display: flex; flex-direction: column; }
.bm-main { width: 100%; max-width: var(--w); margin: 0 auto; padding: 0 var(--gut) 56px; flex: 1; }
.bm-h1 { font-size: clamp(30px, 4.2vw, 50px); text-wrap: balance; }
.bm-h2 { font-size: clamp(22px, 2.4vw, 28px); }
.bm-h2 span { font-family: var(--f-num); font-weight: 500; color: var(--c); margin-left: 4px; }
.bm-h3 { font-size: 20px; }
.bm-kicker { font: 700 14px/1.35 var(--f-head); letter-spacing: .14em; text-transform: uppercase; color: var(--fx); margin: 0 0 12px; text-shadow: 0 0 18px color-mix(in srgb, var(--fx) 50%, transparent); }
.bm-more { display: inline-flex; align-items: center; gap: 6px; font-weight: 700; color: var(--c); }
.bm-more::after { content: "→"; transition: transform .2s; }
.bm-more:hover::after { transform: translateX(3px); }
.bm-ico { flex: none; }
.bm-empty { list-style: none; padding: 22px; border: 1px dashed var(--line2); border-radius: var(--r-s); color: var(--mut); text-align: center; }

/* ------------------------------------------------------------------ шапка */
.bm-head { position: relative; z-index: 20; }
.bm-head__in { max-width: var(--w); margin: 0 auto; padding: 14px var(--gut) 10px; display: flex; align-items: center; gap: 16px; }
.bm-logo { display: inline-flex; align-items: center; gap: 12px; color: var(--tx); margin-right: auto; }
.bm-logo:hover { color: var(--tx); }
.bm-logo__mark { filter: drop-shadow(0 0 10px rgba(69, 230, 227, .45)); transition: transform .6s; }
.bm-logo:hover .bm-logo__mark { transform: rotate(-20deg); }
.bm-logo__txt { display: flex; flex-direction: column; }
.bm-logo__name { font: 700 25px/1 var(--f-head); letter-spacing: .02em; }
.bm-logo__name b { color: var(--c); text-shadow: 0 0 16px rgba(69, 230, 227, .6); }
.bm-logo__sub { font-size: 13px; color: var(--mut); letter-spacing: .04em; margin-top: 3px; }
.bm-head__tools { display: flex; align-items: center; gap: 8px; }
.bm-tool { display: inline-flex; align-items: center; gap: 8px; min-height: 42px; padding: 8px 14px; border-radius: 999px; border: 1px solid var(--line2); background: rgba(16, 27, 41, .7); color: var(--tx); font: 700 15px/1 var(--f-text); cursor: pointer; list-style: none; transition: border-color .2s, box-shadow .2s, color .2s; }
.bm-tool::-webkit-details-marker { display: none; }
.bm-tool:hover, .bm-drop[open] > .bm-tool { border-color: var(--c); color: #fff; box-shadow: 0 0 18px -4px rgba(69, 230, 227, .6); }
.bm-tool--check { border-color: color-mix(in srgb, var(--m) 55%, transparent); color: #ffd1f2; }
.bm-tool--check:hover { border-color: var(--m); color: #fff; box-shadow: 0 0 18px -4px rgba(255, 95, 210, .7); }
.bm-tool--me .bm-face { margin: -4px 0 -4px -6px; }
.bm-drop { position: relative; }
.bm-drop:not([open]) > .bm-drop__panel { display: none; }
.bm-drop__panel { position: absolute; right: 0; top: calc(100% + 10px); width: min(360px, calc(100vw - 32px)); padding: 18px; border-radius: var(--r); background: #0c1622; border: 1px solid var(--line2); box-shadow: 0 24px 60px -12px rgba(0, 0, 0, .8), 0 0 0 1px rgba(69, 230, 227, .08); z-index: 30; }
.bm-search__l { display: block; font: 700 13px var(--f-head); letter-spacing: .1em; text-transform: uppercase; color: var(--mut); margin-bottom: 8px; }
.bm-search__row { display: flex; gap: 8px; }
.bm-search__row .textbox { flex: 1; min-width: 0; }
.bm-search__hint { display: block; font-size: 14px; color: var(--mut); margin-top: 10px; }

/* вкладки-объективы */
.bm-turret { position: sticky; top: 0; z-index: 19; background: linear-gradient(180deg, rgba(4, 7, 12, .96), rgba(4, 7, 12, .88)); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.bm-turret__in { max-width: var(--w); margin: 0 auto; padding: 0 var(--gut); display: flex; gap: 4px; overflow-x: auto; scrollbar-width: none; scroll-snap-type: x proximity; }
.bm-turret__in::-webkit-scrollbar { display: none; }
.bm-obj { position: relative; flex: 1 0 auto; display: grid; grid-template-columns: auto auto; grid-template-rows: auto auto; column-gap: 9px; align-items: center; justify-content: center; padding: 9px 14px 10px; color: var(--mut); border-radius: 0 0 14px 14px; scroll-snap-align: start; transition: color .2s, background .2s; }
.bm-obj__lens { grid-row: 1 / 3; transition: transform .35s cubic-bezier(.3, 1.4, .5, 1); }
.bm-obj__barrel { fill: #1a2a3c; stroke: #5f7688; stroke-width: 1.2; }
.bm-obj__glass { fill: var(--fx); opacity: .35; }
.bm-ring--r { fill: #ff7a7a; } .bm-ring--y { fill: #ffd56b; } .bm-ring--g { fill: #9af06c; } .bm-ring--b { fill: #7fd6ff; } .bm-ring--w { fill: #f2f6f8; }
.bm-obj__x { font: 600 22px/1 var(--f-num); color: var(--tx); letter-spacing: .02em; }
.bm-obj__t { font: 700 13.5px/1.2 var(--f-text); white-space: nowrap; }
.bm-obj::after { content: ""; position: absolute; left: 50%; bottom: -1px; width: 0; height: 2px; background: var(--fx); box-shadow: 0 0 12px 2px var(--fx); transform: translateX(-50%); transition: width .3s; }
.bm-obj:hover { color: var(--tx); background: rgba(140, 210, 230, .05); }
.bm-obj:hover .bm-obj__lens { transform: translateY(2px); }
.bm-obj.is-on { color: var(--tx); background: linear-gradient(180deg, color-mix(in srgb, var(--fx) 14%, transparent), transparent); }
.bm-obj.is-on::after { width: 70%; }
.bm-obj.is-on .bm-obj__x { color: var(--fx); text-shadow: 0 0 14px var(--fx); }
.bm-obj.is-on .bm-obj__glass { opacity: 1; filter: drop-shadow(0 0 4px var(--fx)); }
.bm-obj.is-on .bm-obj__lens { transform: translateY(3px); }

/* крошки */
.bm-crumbs-wrap { max-width: var(--w); width: 100%; margin: 0 auto; padding: 14px var(--gut) 0; }
.bm-page--home .bm-crumbs-wrap { display: none; }
.bm-crumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; font-size: 14px; color: var(--mut); }
.bm-crumbs a { color: var(--mut); }
.bm-crumbs a:hover { color: var(--c); }
.bm-crumbs .active { color: var(--tx); max-width: 60ch; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.bm-crumbs__sep { color: var(--c); opacity: .7; }

/* ------------------------------------------------------------------ поле зрения (общая рамка) */
.bm-field { display: block; width: 100%; height: auto; aspect-ratio: 1; overflow: visible; }
.bm-field__rim { fill: none; stroke: color-mix(in srgb, var(--fx) 60%, #cfefff); stroke-width: 1.6; filter: drop-shadow(0 0 10px color-mix(in srgb, var(--fx) 70%, transparent)); }
.bm-field__ret { fill: none; stroke: rgba(207, 239, 255, .42); stroke-width: 1.2; }
.bm-field__scale path { stroke: rgba(233, 244, 247, .8); stroke-width: 1.6; fill: none; }
.bm-field__scale text { fill: rgba(233, 244, 247, .85); font: 600 16px var(--f-num); text-anchor: middle; letter-spacing: .04em; }
.bm-field__mag { fill: var(--fx); font: 600 26px var(--f-num); letter-spacing: .03em; filter: drop-shadow(0 0 6px var(--fx)); }
.bm-nuc { fill: currentColor; opacity: .5; }
.bm-epi rect { fill: currentColor; fill-opacity: .1; stroke: currentColor; stroke-width: 1.4; stroke-opacity: .75; }
.bm-line { fill: none; stroke: currentColor; stroke-width: 2.2; }
.bm-mast { fill: currentColor; fill-opacity: .12; stroke: currentColor; stroke-width: 2; }
.bm-gran circle { fill: currentColor; opacity: .75; }
.bm-nucfill { fill: currentColor; opacity: .55; }
.bm-slide { fill: url(#bm-g-glass); stroke: rgba(207, 239, 255, .28); stroke-width: 1.2; }
.bm-cover { fill: rgba(207, 239, 255, .05); stroke: rgba(207, 239, 255, .5); stroke-width: 1.2; }
.bm-glint { stroke: rgba(255, 255, 255, .6); stroke-width: 2.4; stroke-linecap: round; fill: none; }
.bm-drop { fill: url(#bm-g-drop); stroke: rgba(138, 160, 255, .6); stroke-width: 1.4; }
.bm-note rect { fill: #e9f4f7; fill-opacity: .92; }
.bm-note path { stroke: #3a5066; stroke-width: 2; stroke-linecap: round; }
.bm-note text { font: 700 11px var(--f-text); fill: #0b1724; }
.bm-links path { fill: none; stroke: currentColor; stroke-width: 1.4; stroke-opacity: .55; stroke-dasharray: 4 7; }
.bm-dust circle { fill: currentColor; opacity: .45; }
.bm-tag-art__b { fill: rgba(255, 95, 210, .14); stroke: var(--m); stroke-width: 2; }
.bm-tag-art__h { fill: none; stroke: var(--m); stroke-width: 2; }
.bm-tag-art__t { fill: #ffe1f6; font: 700 25px var(--f-head); }
.bm-loupe__g { fill: rgba(207, 239, 255, .07); }
.bm-loupe__r { fill: none; stroke: #e9f4f7; stroke-width: 5; }
.bm-loupe__h { stroke: #e9f4f7; stroke-width: 12; stroke-linecap: round; }

@media (prefers-reduced-motion: no-preference) {
	.bm-drift { animation: bm-drift 18s ease-in-out infinite alternate; transform-box: view-box; }
	.bm-drift--b { animation-duration: 23s; animation-direction: alternate-reverse; }
	.bm-drift--c { animation-duration: 29s; }
	.bm-pulse { animation: bm-pulse 5s ease-in-out infinite; }
	.bm-links path { animation: bm-signal 2.4s linear infinite; animation-delay: var(--d, 0s); }
	.bm-focus .bm-field__in { animation: bm-focus 2.4s cubic-bezier(.2, .7, .2, 1) both; }
	.bm-field__ret circle { animation: bm-spin 90s linear infinite; transform-origin: 200px 200px; }
}
@keyframes bm-drift { 0% { transform: translate(0, 0); } 50% { transform: translate(6px, -5px); } 100% { transform: translate(-5px, 6px); } }
@keyframes bm-pulse { 0%, 100% { opacity: .82; } 50% { opacity: 1; } }
@keyframes bm-signal { to { stroke-dashoffset: -44; } }
@keyframes bm-focus { 0% { filter: blur(9px); opacity: .4; } 60% { filter: blur(1.5px); opacity: 1; } 100% { filter: blur(0); } }
@keyframes bm-spin { to { transform: rotate(360deg); } }

/* ------------------------------------------------------------------ пролог */
.bm-pro { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: 24px 48px; align-items: center; min-height: calc(100vh - 140px); padding: 40px 0 28px; }
.bm-pro__h1 { font-size: clamp(42px, 7vw, 92px); line-height: .98; letter-spacing: -.01em; }
.bm-pro__h1 span { display: block; background: linear-gradient(90deg, var(--c), var(--g) 55%, var(--m)); -webkit-background-clip: text; background-clip: text; color: transparent; filter: drop-shadow(0 0 22px rgba(69, 230, 227, .35)); }
.bm-pro__lead { font-size: clamp(18px, 1.6vw, 21px); color: #cfe0e7; max-width: 34em; margin: 22px 0 26px; }
.bm-pro__act { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 24px; }
.bm-pro__total { margin: 26px 0 0; color: var(--mut); font-size: 15px; }
.bm-pro__total b { font: 600 24px var(--f-num); color: var(--tx); margin-right: 2px; }
.bm-pro__art { position: relative; max-width: 560px; justify-self: center; width: 100%; }
.bm-pro__art::before { content: ""; position: absolute; inset: 6%; border-radius: 50%; background: radial-gradient(circle, rgba(69, 230, 227, .22), transparent 70%); filter: blur(30px); z-index: -1; }
.bm-toc { grid-column: 1 / -1; }
.bm-toc ol { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(5, 1fr); border-top: 1px solid var(--line2); position: relative; }
.bm-toc li { position: relative; }
.bm-toc li::before { content: ""; position: absolute; left: 0; top: -1px; width: 1px; height: 12px; background: var(--line2); }
.bm-toc a { display: flex; flex-direction: column; gap: 2px; padding: 16px 12px 4px; color: var(--mut); }
.bm-toc a b { font: 600 30px/1 var(--f-num); color: var(--fx); text-shadow: 0 0 16px color-mix(in srgb, var(--fx) 60%, transparent); }
.bm-toc a span { font-weight: 700; color: var(--tx); font-size: 15px; }
.bm-toc a:hover span { color: var(--fx); }
.bm-btn-glow { box-shadow: 0 0 0 1px rgba(255, 95, 210, .6), 0 0 26px -4px rgba(255, 95, 210, .75); background: linear-gradient(135deg, #ff5fd2, #c44dff) !important; color: #170316 !important; }

/* ------------------------------------------------------------------ главы */
.bm-story { counter-reset: ch; }
.bm-ch { position: relative; display: grid; grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr); grid-template-rows: auto 1fr; gap: 20px 56px; min-height: 92vh; padding: 88px 0 64px; align-content: center; }
.bm-ch::before { content: "смена объектива · " attr(data-mag); position: absolute; top: 28px; left: 50%; transform: translateX(-50%); font: 600 16px var(--f-num); letter-spacing: .14em; color: var(--fx); padding: 4px 16px; border: 1px solid color-mix(in srgb, var(--fx) 40%, transparent); border-radius: 999px; background: var(--bg); white-space: nowrap; }
.bm-ch::after { content: ""; position: absolute; top: 42px; left: 0; right: 0; height: 1px; background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--fx) 45%, transparent), transparent); z-index: -1; }
.bm-ch__head { grid-column: 2; grid-row: 1; }
.bm-ch__art { grid-column: 1; grid-row: 1 / 3; position: sticky; top: 96px; align-self: start; max-width: 500px; width: 100%; justify-self: center; }
.bm-ch__forums { grid-column: 2; grid-row: 2; list-style: none; margin: 0; padding: 0; display: grid; gap: 14px; align-content: start; }
.bm-ch:nth-child(even) { grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr); }
.bm-ch:nth-child(even) .bm-ch__head, .bm-ch:nth-child(even) .bm-ch__forums { grid-column: 1; }
.bm-ch:nth-child(even) .bm-ch__art { grid-column: 2; }
.bm-ch__no { display: flex; align-items: baseline; gap: 14px; margin: 0 0 6px; }
.bm-ch__no span { font: 700 13px var(--f-head); letter-spacing: .16em; text-transform: uppercase; color: var(--mut); }
.bm-ch__no b { font: 500 64px/.9 var(--f-num); color: var(--fx); text-shadow: 0 0 26px color-mix(in srgb, var(--fx) 65%, transparent); }
.bm-ch__h { font-size: clamp(32px, 4vw, 52px); margin-bottom: 14px; }
.bm-ch__h a { color: var(--tx); }
.bm-ch__h a:hover { color: var(--fx); }
.bm-ch__lead { font-size: 18.5px; color: #cfe0e7; max-width: 36em; }
.bm-fcard { position: relative; padding: 18px 20px 14px 22px; border-radius: var(--r); background: linear-gradient(180deg, rgba(23, 37, 55, .85), rgba(16, 27, 41, .85)); border: 1px solid var(--line); overflow: hidden; transition: border-color .2s, box-shadow .2s, transform .2s; }
.bm-fcard::before { content: ""; position: absolute; left: 0; top: 16px; bottom: 16px; width: 3px; border-radius: 0 3px 3px 0; background: var(--fx); box-shadow: 0 0 14px var(--fx); }
.bm-fcard:hover { border-color: color-mix(in srgb, var(--fx) 45%, transparent); box-shadow: 0 18px 40px -24px color-mix(in srgb, var(--fx) 70%, transparent); }
.bm-fcard__h { font-size: 21px; display: inline; }
.bm-fcard__h a { color: var(--tx); }
.bm-fcard__h a:hover { color: var(--fx); }
.bm-fcard__n { display: inline-block; margin: 0 0 0 10px; font: 500 18px var(--f-num); color: var(--fx); letter-spacing: .04em; }
.bm-fcard__d { color: var(--mut); font-size: 15px; margin: 6px 0 10px; }
.bm-fresh { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--line); }
.bm-fresh__i { padding: 10px 0; border-bottom: 1px solid var(--line); }
.bm-fresh__i:last-child { border-bottom: 0; padding-bottom: 2px; }
.bm-fresh__i--none { color: var(--mut); font-size: 15px; }
.bm-fresh__a { display: block; font-weight: 700; color: #e2f2f6; line-height: 1.35; }
.bm-fresh__a:hover { color: var(--fx); }
.bm-fresh__m { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 12px; margin-top: 6px; font-size: 14px; color: var(--dim); }
.bm-fresh__i.has-best .bm-fresh__a::before { content: ""; display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: var(--g); box-shadow: 0 0 8px var(--g); margin: 0 8px 2px 0; }

/* глава «Обещания и мифы»: проверка во всю ширину */
.bm-ch--promise { grid-template-columns: 1fr !important; grid-template-rows: auto; }
.bm-ch--promise .bm-ch__head, .bm-ch--promise .bm-ch__art, .bm-ch--promise .bm-ch__forums { grid-column: 1 !important; grid-row: auto; }
.bm-ch--promise .bm-ch__head { max-width: 860px; }
.bm-ch--promise .bm-ch__art { position: static; max-width: none; }
.bm-ch--promise .bm-ch__forums { grid-template-columns: repeat(3, minmax(0, 1fr)); }

/* ------------------------------------------------------------------ «Проверка обещания» */
.bm-check { --fx: var(--m); display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, 420px); gap: 24px 40px; padding: 28px; border-radius: 28px; background: radial-gradient(600px 400px at 85% 30%, rgba(255, 95, 210, .1), transparent 70%), linear-gradient(180deg, #0d1724, #0a121c); border: 1px solid rgba(255, 95, 210, .3); box-shadow: 0 30px 80px -40px rgba(255, 95, 210, .5); }
.bm-check__k { font: 700 13px var(--f-head); letter-spacing: .16em; text-transform: uppercase; color: var(--m); margin: 0 0 8px; }
.bm-check__h { font-size: clamp(24px, 2.6vw, 32px); margin-bottom: 10px; }
.bm-check__p { color: var(--mut); max-width: 36em; }
.bm-check__chips { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0; }
.bm-pchip { font: 700 16px var(--f-text); color: #ffd9f3; background: rgba(255, 95, 210, .08); border: 1px solid rgba(255, 95, 210, .45); border-radius: 999px; padding: 9px 16px; cursor: pointer; transition: background .2s, box-shadow .2s, color .2s; }
.bm-pchip:hover { background: rgba(255, 95, 210, .16); }
.bm-pchip[aria-pressed="true"] { background: var(--m); color: #1d0218; box-shadow: 0 0 22px -2px rgba(255, 95, 210, .8); }
.bm-check__lab { display: block; font-size: 14px; color: var(--mut); margin-bottom: 6px; }
.bm-check__row { display: flex; gap: 8px; }
.bm-check__row .textbox { flex: 1; min-width: 0; }
.bm-knob { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 12px; margin-top: 18px; font-size: 14px; color: var(--mut); }
.bm-knob__v { font: 600 17px var(--f-num); color: var(--tx); min-width: 7.5em; text-align: right; letter-spacing: .03em; }
.bm-knob input[type="range"] { -webkit-appearance: none; appearance: none; width: 100%; height: 30px; background: transparent; cursor: pointer; }
.bm-knob input[type="range"]::-webkit-slider-runnable-track { height: 8px; border-radius: 99px; background: repeating-linear-gradient(90deg, rgba(233, 244, 247, .35) 0 1px, transparent 1px 10px), linear-gradient(90deg, #1b2a3c, rgba(255, 95, 210, .55)); }
.bm-knob input[type="range"]::-moz-range-track { height: 8px; border-radius: 99px; background: repeating-linear-gradient(90deg, rgba(233, 244, 247, .35) 0 1px, transparent 1px 10px), linear-gradient(90deg, #1b2a3c, rgba(255, 95, 210, .55)); }
.bm-knob input[type="range"]::-webkit-slider-thumb { -webkit-appearance: none; width: 26px; height: 26px; margin-top: -9px; border-radius: 50%; background: repeating-conic-gradient(#d8e6ec 0 10deg, #8ea3b0 10deg 20deg); border: 3px solid #0a121c; box-shadow: 0 0 0 1px var(--m), 0 0 14px rgba(255, 95, 210, .7); }
.bm-knob input[type="range"]::-moz-range-thumb { width: 22px; height: 22px; border-radius: 50%; background: repeating-conic-gradient(#d8e6ec 0 10deg, #8ea3b0 10deg 20deg); border: 3px solid #0a121c; box-shadow: 0 0 0 1px var(--m), 0 0 14px rgba(255, 95, 210, .7); }
.bm-check__scope { grid-column: 2; grid-row: 1; }
.bm-scope { --focus: 0; position: relative; aspect-ratio: 1; width: 100%; max-width: 420px; margin: 0 auto; }
.bm-scope__field { display: block; width: 100%; height: auto; }
.bm-scope__field .bm-field__rim { stroke: var(--m); }
.bm-scope__bg { filter: blur(calc((1 - var(--focus)) * 7px)); opacity: calc(.35 + var(--focus) * .65); }
.bm-scope__label { position: absolute; inset: 0; display: grid; place-items: center; pointer-events: none; }
.bm-scope__tag { position: relative; max-width: 72%; padding: 14px 26px 14px 20px; font: 700 clamp(17px, 2.2vw, 24px)/1.2 var(--f-head); text-align: center; color: #ffe1f6; background: rgba(255, 95, 210, .14); border: 2px solid var(--m); border-radius: 10px 30px 30px 10px; transform: rotate(-6deg) scale(calc(.92 + var(--focus) * .08)); filter: blur(calc((1 - var(--focus)) * 6px)); text-shadow: 0 0 calc(var(--focus) * 14px) rgba(255, 95, 210, .9); }
.bm-scope__tag::after { content: ""; position: absolute; right: 10px; top: 50%; width: 9px; height: 9px; margin-top: -4.5px; border-radius: 50%; border: 2px solid var(--m); }
.bm-scope__loupe { position: absolute; width: 38%; right: 4%; bottom: 6%; fill: rgba(207, 239, 255, .06); stroke: #e9f4f7; stroke-width: 6; stroke-linecap: round; transform: translate(calc((1 - var(--focus)) * 16px), calc((1 - var(--focus)) * 10px)) rotate(calc((1 - var(--focus)) * 14deg)); filter: drop-shadow(0 0 8px rgba(207, 239, 255, .35)); }
.bm-scope__mag { position: absolute; left: 6%; top: 6%; margin: 0; display: flex; flex-direction: column; gap: 6px; }
.bm-scope__mag b { font: 600 34px/1 var(--f-num); color: var(--m); text-shadow: 0 0 14px var(--m); }
.bm-scope__steps { display: flex; gap: 3px; }
.bm-scope__steps i { width: 4px; height: 12px; border-radius: 2px; background: rgba(233, 244, 247, .2); }
.bm-check.is-sharp .bm-scope__steps i { background: var(--m); box-shadow: 0 0 6px var(--m); }
.bm-check__out { grid-column: 1 / -1; }
.bm-check__wait { color: var(--mut); border: 1px dashed rgba(255, 95, 210, .35); border-radius: var(--r-s); padding: 16px 18px; margin: 0; }
.bm-res__k { font-size: 18px; margin-bottom: 4px; }
.bm-res__k b { color: #ffd1f2; }
.bm-res__note { color: #d6e5eb; margin-bottom: 16px; }
.bm-qs { list-style: none; margin: 0 0 18px; padding: 0; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; counter-reset: q; }
.bm-qs li { counter-increment: q; position: relative; padding: 46px 14px 14px; border-radius: 10px; background: linear-gradient(160deg, rgba(207, 239, 255, .1), rgba(207, 239, 255, .03)); border: 1px solid rgba(207, 239, 255, .22); font-size: 15px; color: var(--mut); }
.bm-qs li::before { content: "0" counter(q); position: absolute; left: 14px; top: 10px; font: 600 26px/1 var(--f-num); color: var(--fx); text-shadow: 0 0 12px var(--fx); }
.bm-qs li::after { content: ""; position: absolute; right: 12px; top: 14px; width: 16px; height: 16px; border-radius: 50%; background: radial-gradient(circle, var(--fx), transparent 70%); opacity: .8; }
.bm-qs li:nth-child(1) { --fx: var(--c); } .bm-qs li:nth-child(2) { --fx: var(--g); } .bm-qs li:nth-child(3) { --fx: var(--b); } .bm-qs li:nth-child(4) { --fx: var(--l); } .bm-qs li:nth-child(5) { --fx: var(--m); }
.bm-qs b { display: block; color: var(--tx); font: 700 17px/1.25 var(--f-head); margin-bottom: 6px; }
.bm-res__tip { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px 18px; align-items: start; padding: 18px 20px; border-radius: var(--r-s); background: rgba(138, 160, 255, .08); border: 1px solid rgba(138, 160, 255, .35); }
.bm-res__tip h4 { grid-column: 1 / -1; font-size: 18px; color: #d4dcff; }
.bm-res__tpl { margin: 0; font-style: italic; color: #e3e9ff; white-space: pre-line; }
.bm-res__copy { align-self: end; }
.bm-res__links { display: flex; flex-wrap: wrap; gap: 10px 22px; margin: 16px 0 6px; }
.bm-res__small { font-size: 14px; color: var(--dim); margin: 0; }
@media (prefers-reduced-motion: no-preference) {
	.bm-check.is-sharp .bm-qs li { animation: bm-stain .7s cubic-bezier(.2, .7, .2, 1) both; animation-delay: calc(var(--n, 0) * 110ms); }
	.bm-scope__tag, .bm-scope__loupe { transition: transform .3s; }
}
@keyframes bm-stain { from { opacity: 0; transform: translateY(10px); filter: blur(4px); } to { opacity: 1; transform: none; filter: none; } }

/* ------------------------------------------------------------------ этапы, чипы */
.bm-stage { display: inline-flex; align-items: center; gap: 6px; padding: 3px 10px 3px 8px; border-radius: 999px; font: 700 13px/1.3 var(--f-text); color: var(--st); background: color-mix(in srgb, var(--st) 12%, transparent); border: 1px solid color-mix(in srgb, var(--st) 45%, transparent); white-space: nowrap; }
.bm-stage::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--st); box-shadow: 0 0 8px var(--st); }
.bm-stage--razbor { --st: var(--m); }
.bm-stage--ask { --st: var(--c); }
.bm-stage--priem { --st: var(--b); }
.bm-stage--opyt { --st: var(--l); }
.bm-stage--razobralis { --st: var(--g); background: var(--g); color: #0c2104; border-color: var(--g); }
.bm-stage--razobralis::before { background: #0c2104; box-shadow: none; }
.bm-chip { display: inline-flex; align-items: center; gap: 7px; padding: 3px 10px; border-radius: 999px; font-size: 13.5px; font-weight: 700; color: var(--mut); border: 1px solid var(--line2); }
.bm-chip i { width: 7px; height: 7px; border-radius: 50%; background: var(--fx); box-shadow: 0 0 8px var(--fx); }
.bm-chip:hover { color: var(--tx); border-color: var(--fx); }
.bm-hasbest { display: inline-flex; align-items: center; gap: 5px; font-size: 13.5px; font-weight: 700; color: var(--g); }

/* ------------------------------------------------------------------ раздел */
.bm-fhead { display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: 24px 48px; align-items: center; padding: 26px 0 30px; }
.bm-fhead__d { font-size: 18px; color: #cfe0e7; max-width: 44em; margin-top: 12px; }
.bm-fhead__n { color: var(--mut); font-size: 15px; }
.bm-fhead__n b { font: 600 21px var(--f-num); color: var(--fx); }
.bm-fhead__act { margin-top: 14px; }
.bm-fhead__art { width: 100%; max-width: 280px; justify-self: end; }
.bm-qa { margin-top: 6px; }
.bm-qa__head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px 20px; margin-bottom: 12px; }
.bm-filter { display: flex; flex-wrap: wrap; gap: 8px; }
.bm-fchip { --st: var(--c); font: 700 14.5px var(--f-text); color: var(--mut); background: transparent; border: 1px solid var(--line2); border-radius: 999px; padding: 7px 13px; cursor: pointer; transition: color .2s, border-color .2s, background .2s; }
.bm-fchip span { font-family: var(--f-num); font-size: 17px; font-weight: 500; color: var(--st); margin-left: 2px; }
.bm-fchip--razbor { --st: var(--m); } .bm-fchip--priem { --st: var(--b); } .bm-fchip--opyt { --st: var(--l); } .bm-fchip--razobralis, .bm-fchip--best { --st: var(--g); }
.bm-fchip:hover { color: var(--tx); border-color: var(--st); }
.bm-fchip.is-on { color: var(--tx); border-color: var(--st); background: color-mix(in srgb, var(--st) 14%, transparent); box-shadow: 0 0 16px -6px var(--st); }
.bm-fchip[disabled] { opacity: .45; cursor: default; }
.bm-sortline { display: flex; flex-wrap: wrap; gap: 6px 16px; font-size: 14px; color: var(--dim); margin: 0 0 16px; }
.bm-sortline a { color: var(--mut); border-bottom: 1px dotted var(--line2); }
.bm-sortline a:hover { color: var(--c); }
.bm-qlist { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.bm-sep { list-style: none; font: 700 13px var(--f-head); letter-spacing: .14em; text-transform: uppercase; color: var(--dim); padding: 10px 0 0; }
.bm-q { display: grid; grid-template-columns: 76px minmax(0, 1fr); gap: 18px; padding: 16px 20px 14px 16px; border-radius: var(--r); background: var(--card); border: 1px solid var(--line); transition: border-color .2s, box-shadow .2s; }
.bm-q:hover { border-color: var(--line2); box-shadow: 0 18px 40px -26px rgba(69, 230, 227, .5); }
.bm-q__lens { width: 76px; height: 76px; border-radius: 50%; display: flex; flex-direction: column; align-items: center; justify-content: center; background: radial-gradient(circle at 45% 40%, #183048, #08111b 72%); border: 1.5px solid rgba(140, 210, 230, .35); color: var(--mut); font-size: 12.5px; line-height: 1.1; }
.bm-q__lens b { font: 600 30px/1 var(--f-num); color: var(--tx); }
.bm-q--best .bm-q__lens { border-color: var(--g); box-shadow: 0 0 0 4px rgba(154, 240, 108, .08), 0 0 22px -4px var(--g); }
.bm-q--best .bm-q__lens b { color: var(--g); text-shadow: 0 0 12px rgba(154, 240, 108, .7); }
.bm-q__tags { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; margin: 0 0 6px; }
.bm-q__h { font-size: 20px; line-height: 1.3; margin-bottom: 6px; }
.bm-q__h a { color: var(--tx); }
.bm-q__h a:hover { color: var(--c); }
.bm-q__x { color: var(--mut); font-size: 15.5px; margin: 0 0 10px; }
.bm-q__foot { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 16px; margin: 0; font-size: 14px; color: var(--dim); }
.bm-q__who { display: inline-flex; align-items: center; gap: 8px; }
.bm-q__who b { color: var(--tx); }
.bm-q__v { color: var(--c); font-weight: 700; }
.bm-q__last { color: var(--dim); margin-left: auto; }
.bm-q__last:hover { color: var(--c); }
.bm-q[hidden] { display: none; }
.bm-bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 20px; margin: 20px 0; }
.bm-bar__r { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 18px; font-size: 14px; }
.bm-bar__r a { color: var(--mut); }
.bm-subs { margin: 0 0 24px; }
.bm-subs__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 340px), 1fr)); gap: 14px; }
.bm-sub { position: relative; padding: 18px 20px 16px 22px; border-radius: var(--r); background: var(--card); border: 1px solid var(--line); }
.bm-sub::before { content: ""; position: absolute; left: 0; top: 16px; bottom: 16px; width: 3px; background: var(--fx); box-shadow: 0 0 14px var(--fx); border-radius: 0 3px 3px 0; }
.bm-sub__h { font-size: 21px; margin-bottom: 6px; }
.bm-sub__h a { color: var(--tx); }
.bm-sub__h a:hover { color: var(--fx); }
.bm-sub__d { color: var(--mut); font-size: 15px; }
.bm-sub__n { font-size: 14px; color: var(--dim); margin-bottom: 4px; }
.bm-sub__n b { font: 600 18px var(--f-num); color: var(--fx); }
.bm-sub__last { font-size: 14px; margin: 0; color: var(--dim); }
.bm-sub__lt a { font-weight: 700; }
.bm-new { display: none; }

/* ------------------------------------------------------------------ тема: вопрос и ответы */
.bm-thead { position: relative; margin-top: 14px; padding: 26px 30px 22px; border-radius: 26px 26px 0 0; background: radial-gradient(700px 300px at 90% 0%, color-mix(in srgb, var(--c) 12%, transparent), transparent 70%), linear-gradient(180deg, #16263a, #111d2c); border: 1px solid var(--line2); border-bottom: 0; }
.bm-thead.has-best { background: radial-gradient(700px 300px at 90% 0%, rgba(154, 240, 108, .1), transparent 70%), linear-gradient(180deg, #16263a, #111d2c); }
.bm-thead__top { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 14px; }
.bm-thead__tags { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 10px; margin: 0; }
.bm-thead__ch { font: 600 17px var(--f-num); letter-spacing: .08em; color: var(--c); }
.bm-thead__h1 { font-size: clamp(27px, 3.4vw, 42px); max-width: 26em; }
.bm-thead__meta { display: flex; flex-wrap: wrap; gap: 8px 30px; margin: 18px 0 0; }
.bm-thead__meta div { display: flex; flex-direction: column; }
.bm-thead__meta dt { font-size: 12.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--dim); }
.bm-thead__meta dd { margin: 0; color: var(--tx); font-size: 16px; }
.bm-thead__meta dd b { font: 600 21px var(--f-num); color: var(--c); }
.bm-answers { display: flex; flex-direction: column; gap: 14px; }
.bm-post { position: relative; order: 4; border-radius: var(--r); background: var(--card); border: 1px solid var(--line); scroll-margin-top: 90px; }
.bm-anchor { position: absolute; top: -90px; }
.bm-post--q { order: 0; margin-top: -14px; border-radius: 0 0 26px 26px; background: linear-gradient(180deg, #111d2c, #0f1a28); border-color: var(--line2); border-top: 1px dashed var(--line); }
.bm-qstate { order: 1; display: flex; gap: 10px; align-items: flex-start; margin: 0; padding: 12px 18px; border-radius: var(--r-s); border: 1px solid var(--line); background: rgba(16, 27, 41, .6); color: var(--mut); font-size: 15.5px; }
.bm-qstate svg { flex: none; margin-top: 4px; }
.bm-qstate--ok { color: #d6f8c4; border-color: rgba(154, 240, 108, .45); background: rgba(154, 240, 108, .07); }
.bm-qstate--ok svg { color: var(--g); }
.bm-qstate b { color: var(--g); }
.bm-post--best { order: 2; border-color: var(--g); background: linear-gradient(180deg, rgba(154, 240, 108, .09), rgba(16, 27, 41, 1) 120px); box-shadow: 0 0 0 1px rgba(154, 240, 108, .35), 0 0 40px -12px rgba(154, 240, 108, .55); }
.bm-anshead { order: 3; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; margin-top: 16px; }
.bm-sort { display: inline-flex; padding: 3px; border-radius: 999px; border: 1px solid var(--line2); }
.bm-sort__b { font: 700 14px var(--f-text); color: var(--mut); background: none; border: 0; border-radius: 999px; padding: 7px 14px; cursor: pointer; }
.bm-sort__b.is-on { background: var(--raise); color: var(--tx); box-shadow: inset 0 0 0 1px var(--line2); }
.bm-ribbon { display: inline-flex; align-items: center; gap: 8px; margin: 0; padding: 7px 16px 7px 14px; border-radius: var(--r) 0 14px 0; background: var(--g); color: #0c2104; font: 700 14px/1.2 var(--f-text); }
.bm-ribbon--mark { background: rgba(154, 240, 108, .12); color: #cdf6b6; border-bottom: 1px solid rgba(154, 240, 108, .3); border-right: 1px solid rgba(154, 240, 108, .3); }
.bm-ribbon--mark a { color: var(--g); font-weight: 700; }
.bm-post__grid { display: grid; grid-template-columns: 70px minmax(0, 1fr); }
.bm-post--q .bm-post__grid { grid-template-columns: minmax(0, 1fr); }
.bm-vote { display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 20px 0 16px; border-right: 1px solid var(--line); color: var(--dim); font-size: 12.5px; }
.bm-vote__b { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; border: 1px solid var(--line2); color: var(--mut); }
a.bm-vote__b:hover { color: #071a19; background: var(--c); border-color: var(--c); box-shadow: 0 0 16px rgba(69, 230, 227, .7); }
.bm-vote b { font: 600 26px/1.1 var(--f-num); color: var(--tx); margin-top: 4px; }
.bm-vote.has-votes b, .bm-vote.has-votes .bm-vote__b { color: var(--c); }
.bm-vote.has-votes .bm-vote__b { border-color: color-mix(in srgb, var(--c) 55%, transparent); }
.bm-post--best .bm-vote b { color: var(--g); text-shadow: 0 0 12px rgba(154, 240, 108, .6); }
.bm-post__main { min-width: 0; padding: 16px 22px 12px; }
.bm-post--q .bm-post__main { padding: 18px 30px 16px; }
.bm-post__bar { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; padding-bottom: 12px; margin-bottom: 12px; border-bottom: 1px solid var(--line); }
.bm-post__who { flex: 1 1 170px; min-width: 0; }
.bm-post__name { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 12px; margin: 0; }
.bm-post__nick { font: 700 18px var(--f-head); }
.bm-post__nick a { color: var(--tx); }
.bm-post__nick a:hover { color: var(--c); }
.bm-post__facts { display: flex; flex-wrap: wrap; gap: 4px 16px; margin: 4px 0 0; font-size: 14px; color: var(--mut); }
.bm-post__facts i { font-style: normal; color: var(--dim); margin-right: 4px; }
.bm-post__facts i::after { content: ":"; }
.bm-post__time { display: flex; flex-direction: column; align-items: flex-end; gap: 2px; margin: 0; font-size: 14px; }
.bm-post__date { color: var(--dim); white-space: nowrap; }
.bm-post__date:hover { color: var(--c); }
.bm-replyto { display: inline-flex; align-items: center; gap: 5px; color: var(--mut); font-size: 13.5px; }
.bm-op { font-size: 12.5px; font-weight: 700; color: var(--c); border: 1px solid color-mix(in srgb, var(--c) 45%, transparent); border-radius: 999px; padding: 1px 9px; }
.bm-rank { display: inline-flex; align-items: center; gap: 6px; font-size: 14px; color: var(--mut); }
.bm-rep { font-size: 14px; color: var(--dim); }
.bm-rep b { font: 600 18px var(--f-num); color: var(--c); }
.bm-rep--down b { color: var(--m); }
.bm-post__body { font-size: 17px; line-height: 1.68; color: #e3eff3; overflow-wrap: anywhere; }
.bm-post--q .bm-post__body { font-size: 19px; color: var(--tx); }
.post_body blockquote, .mycode_quote { margin: 0 0 14px; padding: 12px 16px; border-left: 3px solid var(--c); background: rgba(69, 230, 227, .06); border-radius: 0 10px 10px 0; color: var(--mut); }
.post_body blockquote cite, .mycode_quote cite { display: block; font-style: normal; font-weight: 700; color: var(--c); margin-bottom: 4px; }
.post_body blockquote cite > span { display: none; }
.post_body ul, .post_body ol { padding-left: 1.4em; }
.post_body img { max-width: 100%; height: auto; border-radius: 8px; }
.post_meta { font-size: 13px; color: var(--dim); }
.post_meta:empty { display: none; }
.bm-post__foot { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 6px 14px; margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--line); }
.postbit_buttons { display: flex; flex-wrap: wrap; gap: 6px; }
.postbit_buttons > a, .postbit_buttons > span > a { display: inline-flex; align-items: center; min-height: 32px; padding: 4px 11px; border-radius: 999px; border: 1px solid var(--line); color: var(--mut); font-size: 13.5px; }
.postbit_buttons > a:hover { color: var(--tx); border-color: var(--c); }
.postbit_buttons a span { background: none !important; padding: 0 !important; }
.postbit_mirage, .postbit_multiquote span, .postbit_report span { line-height: 1; }
.bm-tfoot { margin: 18px 0; }
.bm-nextprev { display: flex; justify-content: space-between; gap: 14px; font-size: 15px; }
.bm-nextprev a { color: var(--mut); }
.bm-tools { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; font-size: 14px; color: var(--dim); }
.thread_tools { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px 18px; }
.thread_tools li { background: none !important; padding: 0 !important; }
.thread_tools a { color: var(--mut); }
.bm-guest { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 20px; margin: 20px 0; padding: 16px 20px; border-radius: var(--r); border: 1px dashed var(--line2); color: var(--mut); }
.bm-guest p { margin: 0; }

/* ------------------------------------------------------------------ лица и бейджи */
.bm-face { position: relative; display: inline-grid; place-items: center; flex: none; border-radius: 50%; overflow: hidden; background: #0b1520; box-shadow: 0 0 0 1.5px rgba(140, 210, 230, .4), 0 0 14px -2px rgba(69, 230, 227, .45); }
.bm-face img { display: block; width: 100%; height: 100%; object-fit: cover; }
.bm-face--img::after { content: ""; position: absolute; inset: 0; border-radius: 50%; background: radial-gradient(circle, transparent 58%, rgba(2, 5, 10, .55) 100%); }
.bm-face--xs { width: 24px; height: 24px; font-size: 10px; }
.bm-face--s { width: 32px; height: 32px; font-size: 12px; }
.bm-face--m { width: 44px; height: 44px; font-size: 15px; }
.bm-face--l { width: 56px; height: 56px; font-size: 19px; }
.bm-face--xl { width: 176px; height: 176px; font-size: 56px; }
.bm-face--mono { font-family: var(--f-head); font-weight: 700; color: #04121a; }
.bm-face--mono > span { position: relative; z-index: 1; }
.bm-tone-0 { background: radial-gradient(circle at 40% 35%, #b6fffc, #45e6e3 60%, #1e8f8d); }
.bm-tone-1 { background: radial-gradient(circle at 40% 35%, #ffd9f4, #ff5fd2 60%, #a3307f); }
.bm-tone-2 { background: radial-gradient(circle at 40% 35%, #e4ffd2, #9af06c 60%, #4f9a2c); }
.bm-tone-3 { background: radial-gradient(circle at 40% 35%, #e1e7ff, #8aa0ff 60%, #4256b8); }
.bm-badge { flex: none; overflow: visible; }
.bm-badge__cell { fill: rgba(138, 160, 255, .2); stroke: var(--b); stroke-width: 1.4; }
.bm-badge__nuc { fill: var(--b); opacity: .7; }
.bm-badge__y path { fill: none; stroke: var(--c); stroke-width: 1.6; stroke-linecap: round; }
.bm-badge--5 .bm-badge__y path, .bm-badge--6 .bm-badge__y path { stroke: var(--g); }
.bm-badge--6 { filter: drop-shadow(0 0 4px rgba(154, 240, 108, .7)); }

/* ------------------------------------------------------------------ профиль: препарат на стекле */
.bm-prof { margin-top: 18px; }
.bm-glass { position: relative; display: grid; grid-template-columns: minmax(0, 1.1fr) auto minmax(0, 1fr); grid-template-rows: auto auto; gap: 18px 36px; align-items: center; padding: 30px; border-radius: 22px; background: linear-gradient(115deg, rgba(207, 239, 255, .12), rgba(207, 239, 255, .04) 40%, rgba(207, 239, 255, .1)), #0c1622; border: 1px solid rgba(207, 239, 255, .3); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .15), 0 40px 80px -40px rgba(69, 230, 227, .4); overflow: hidden; }
.bm-glass::before { content: ""; position: absolute; inset: 0; background: linear-gradient(100deg, transparent 30%, rgba(255, 255, 255, .07) 42%, transparent 52%); pointer-events: none; }
.bm-glass__frost { position: relative; padding: 20px 22px; border-radius: 12px; background: repeating-linear-gradient(45deg, rgba(233, 244, 247, .06) 0 2px, rgba(233, 244, 247, .1) 2px 4px); border: 1px solid rgba(233, 244, 247, .18); }
.bm-glass__k { font: 600 17px var(--f-num); letter-spacing: .1em; color: var(--c); margin: 0 0 8px; }
.bm-glass__name { font-size: clamp(28px, 3.4vw, 42px); overflow-wrap: anywhere; }
.bm-glass__rank { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 16px; margin: 12px 0 10px; }
.bm-glass__links { display: flex; flex-wrap: wrap; gap: 6px 16px; margin: 0; font-size: 14.5px; }
.bm-glass__spec { margin: 0; text-align: center; grid-row: 1 / 3; grid-column: 2; }
.bm-spec { position: relative; width: 236px; height: 236px; margin: 0 auto; border-radius: 50%; display: grid; place-items: center; background: radial-gradient(circle, #132a3d, #03070c 72%); box-shadow: 0 0 0 2px rgba(69, 230, 227, .7), 0 0 50px -6px rgba(69, 230, 227, .6), inset 0 0 40px rgba(0, 0, 0, .8); }
.bm-spec .bm-face--xl { box-shadow: 0 0 0 3px rgba(154, 240, 108, .6), 0 0 30px rgba(154, 240, 108, .35); }
.bm-spec__ring { position: absolute; inset: 10px; border-radius: 50%; border: 1px dashed rgba(207, 239, 255, .4); }
.bm-spec__badge { position: absolute; right: 8px; bottom: 14px; width: 54px; height: 54px; border-radius: 50%; display: grid; place-items: center; background: #0a121c; box-shadow: 0 0 0 1px var(--line2); }
.bm-glass__spec figcaption { margin-top: 12px; font: 600 17px var(--f-num); letter-spacing: .08em; color: var(--mut); }
.bm-glass__dl { margin: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 20px; grid-column: 3; }
.bm-glass__dl dt { font-size: 12.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--dim); }
.bm-glass__dl dd { margin: 2px 0 0; color: var(--tx); font-weight: 700; overflow-wrap: anywhere; }
.bm-glass__nums { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; grid-column: 1; grid-row: 2; }
.bm-glass__nums li { flex: 1 1 110px; padding: 10px 14px; border-radius: 12px; border: 1px solid var(--line2); background: rgba(4, 7, 12, .45); }
.bm-glass__nums b { display: block; font: 600 34px/1 var(--f-num); color: var(--tx); }
.bm-glass__nums span { font-size: 14px; color: var(--mut); }
.bm-glass__nums .is-glow b { color: var(--g); text-shadow: 0 0 14px rgba(154, 240, 108, .6); }
.bm-glass__dl { grid-row: 1 / 3; }
.bm-prof__grid { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 28px; margin-top: 30px; align-items: start; }
.bm-plist .bm-h2 { margin-bottom: 14px; }
.bm-ladder { padding: 20px; border-radius: var(--r); background: var(--card); border: 1px solid var(--line); }
.bm-ladder__list { list-style: none; margin: 14px 0; padding: 0; display: grid; gap: 4px; }
.bm-ladder__list li { display: grid; grid-template-columns: 34px 44px minmax(0, 1fr); align-items: center; gap: 0 8px; padding: 8px; border-radius: 10px; color: var(--dim); }
.bm-ladder__list li.is-now { background: rgba(69, 230, 227, .09); box-shadow: inset 0 0 0 1px rgba(69, 230, 227, .4); color: var(--tx); }
.bm-ladder__list li.is-past { color: var(--mut); }
.bm-ladder__m { font: 600 19px var(--f-num); color: var(--c); }
.bm-ladder__t { font-weight: 700; }
.bm-ladder__n { grid-column: 3; font-size: 13px; color: var(--dim); }
.bm-ladder__p { font-size: 14px; color: var(--mut); margin: 0; }
.bm-prof__extra { margin-top: 24px; }

/* ------------------------------------------------------------------ подвал */
.bm-foot { border-top: 1px solid var(--line); background: linear-gradient(180deg, rgba(10, 18, 28, .5), #03060a); }
.bm-foot__in { max-width: var(--w); margin: 0 auto; padding: 32px var(--gut) 40px; display: grid; gap: 16px; }
.bm-foot__brand { color: var(--mut); max-width: 52em; margin: 0; }
.bm-foot__brand b { color: var(--tx); }
.bm-foot__warn { display: flex; gap: 12px; align-items: flex-start; margin: 0; padding: 14px 18px; border-radius: var(--r-s); border: 1px solid rgba(255, 95, 210, .4); background: rgba(255, 95, 210, .06); color: #f3d9ea; max-width: 60em; }
.bm-foot__warn svg { flex: none; color: var(--m); margin-top: 2px; }
.bm-foot__warn b { color: #fff; }
.bm-foot__links { display: flex; flex-wrap: wrap; gap: 8px 24px; font-size: 15px; }
.bm-foot__links a { color: var(--mut); }
.bm-foot__links a:hover { color: var(--c); }

/* ------------------------------------------------------------------ сообщения об ошибках, переходы */
.bm-msg { display: flex; gap: 24px; align-items: flex-start; max-width: 760px; margin: 40px auto; padding: 28px; border-radius: 24px; background: var(--card); border: 1px solid var(--line2); }
.bm-msg__ico { flex: none; filter: drop-shadow(0 0 12px rgba(69, 230, 227, .5)); }
.bm-msg__t { font-size: clamp(24px, 3vw, 32px); margin-bottom: 12px; }
.bm-msg__body { color: var(--mut); }
.bm-msg__body ol, .bm-msg__body ul { padding-left: 1.3em; }
.bm-msg--go { margin-top: 18vh; }

/* ------------------------------------------------------------------ стандартные классы MyBB */
.button, button.button, input.button, a.button, input[type="submit"], input[type="button"], .bm-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 42px; padding: 9px 20px;
	font: 700 15.5px/1.1 var(--f-text); color: #04191a; background: linear-gradient(135deg, #6ff3ef, #2fc9c6); border: 0; border-radius: 999px; cursor: pointer; text-decoration: none;
	box-shadow: 0 0 0 1px rgba(69, 230, 227, .6), 0 10px 26px -12px rgba(69, 230, 227, .9); transition: filter .2s, box-shadow .2s, transform .1s;
}
.button:hover, a.button:hover, input[type="submit"]:hover, input[type="button"]:hover { filter: brightness(1.08); color: #04191a; box-shadow: 0 0 0 1px rgba(69, 230, 227, .9), 0 0 24px -2px rgba(69, 230, 227, .8); }
.button:active, input[type="submit"]:active { transform: translateY(1px); }
.button span { background: none !important; padding: 0 !important; }
.closed_button { background: var(--raise) !important; color: var(--mut) !important; box-shadow: inset 0 0 0 1px var(--line2) !important; }
input.textbox, input[type="text"], input[type="password"], input[type="email"], input[type="search"], input[type="number"], input[type="url"], textarea, select {
	font: 400 16px/1.4 var(--f-text); color: var(--tx); background: #07101a; border: 1px solid var(--line2); border-radius: 10px; padding: 9px 12px; min-height: 42px; max-width: 100%;
}
input.textbox:focus, textarea:focus, select:focus, input[type="text"]:focus, input[type="password"]:focus { border-color: var(--c); outline: 0; box-shadow: 0 0 0 3px rgba(69, 230, 227, .18); }
textarea { width: 100%; min-height: 160px; }
input::placeholder, textarea::placeholder { color: #7a8f9c; }
input[type="checkbox"], input[type="radio"] { accent-color: var(--c); width: 17px; height: 17px; vertical-align: -3px; }
select option { background: #0a121c; color: var(--tx); }
label { cursor: pointer; }
.tborder { width: 100%; border-collapse: separate; border-spacing: 0; margin: 0 0 18px; background: var(--card); border: 1px solid var(--line); border-radius: var(--r); overflow: hidden; }
.tborder td, .tborder th { padding: 12px 16px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; color: var(--tx); }
.tborder tr:last-child > td { border-bottom: 0; }
.thead { background: linear-gradient(180deg, #1a2b40, #142233) !important; color: var(--tx); font-family: var(--f-head); font-size: 18px; }
.thead strong, .thead a { color: var(--tx); }
.thead .float_right a, .thead .expcolimage { color: var(--c); }
.tcat { background: rgba(69, 230, 227, .07) !important; color: var(--c); font-weight: 700; font-size: 14px; letter-spacing: .02em; }
.tcat a { color: var(--c); }
.trow1 { background: var(--card); }
.trow2 { background: #0e1825; }
.trow_shaded, .trow_selected, tr.trow_selected td { background: rgba(255, 95, 210, .08) !important; }
.trow_sep { background: var(--raise); color: var(--mut); font-weight: 700; font-size: 13px; letter-spacing: .1em; text-transform: uppercase; }
.tfoot { background: #0c1520; color: var(--mut); }
.tfoot a { color: var(--c); }
.smalltext { font-size: 14px; color: var(--mut); }
.largetext { font: 700 22px var(--f-head); }
.float_left { float: left; }
.float_right { float: right; }
.clear { clear: both; }
.hidden { display: none; }
.expcolimage { float: right; }
.expcolimage img { display: none; }
.expcolimage::after { content: "▾"; color: var(--c); cursor: pointer; }
.trow1 hr, .trow2 hr { border-color: var(--line); }
.error, .red_alert, .pm_alert, .bm-alert { margin: 16px 0; padding: 14px 18px; border-radius: var(--r-s); border: 1px solid rgba(255, 95, 210, .5); background: rgba(255, 95, 210, .08); color: #ffd9f0; }
.error .title, .error strong { color: #fff; }
.error ul { margin: 8px 0 0; padding-left: 1.2em; }
.pm_alert a, .red_alert a { color: #fff; font-weight: 700; }
.success_message { color: var(--g); }
.inline_row { padding: 8px 0; border-bottom: 1px solid var(--line); }
.pagination { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; padding: 0; margin: 0; font-size: 15px; }
.pagination .pages { color: var(--dim); margin-right: 4px; font-weight: 400; }
.pagination a, .pagination .pagination_current, .pagination_page { display: inline-grid; place-items: center; min-width: 38px; height: 38px; padding: 0 10px; border-radius: 999px; border: 1px solid var(--line2); color: var(--mut); font: 600 18px var(--f-num); }
.pagination a:hover { color: var(--tx); border-color: var(--c); }
.pagination .pagination_current { background: var(--c); color: #04191a; border-color: var(--c); box-shadow: 0 0 16px -2px rgba(69, 230, 227, .7); }
.pagination .go_page img { display: none; }
.bm-pages-in { font-size: 13px; color: var(--dim); }
.bm-pages-in a { font-family: var(--f-num); font-size: 16px; margin: 0 2px; }
.popup_menu { background: #0c1622; border: 1px solid var(--line2); border-radius: 12px; box-shadow: 0 20px 50px -10px rgba(0, 0, 0, .8); padding: 6px; z-index: 40; }
.popup_menu .popup_item_container { margin: 0; }
.popup_menu .popup_item { display: block; padding: 8px 12px; border-radius: 8px; color: var(--tx); background: none; }
.popup_menu .popup_item:hover { background: rgba(69, 230, 227, .1); color: #fff; }
.popup_button { color: var(--mut); }
.blocker { background-color: rgba(2, 5, 10, .78) !important; backdrop-filter: blur(3px); z-index: 9998 !important; }
.modal { display: none; position: relative; width: min(560px, calc(100vw - 32px)); text-align: left; background: #0c1622; color: var(--tx); border: 1px solid var(--line2); border-radius: 20px; padding: 0; box-shadow: 0 30px 80px -10px rgba(0, 0, 0, .9); vertical-align: middle; }
.modal a.close-modal { position: absolute; top: 12px; right: 12px; width: 32px; height: 32px; display: grid; place-items: center; border-radius: 50%; background: var(--raise); text-indent: 0; font-size: 0; }
.modal a.close-modal::after { content: "×"; color: var(--tx); font-size: 22px; line-height: 1; }
.modal .tborder { margin: 0; border: 0; }
.modal-spinner { background: #0c1622; border-radius: 12px; }
.jGrowl .jGrowl-notification, .jGrowl-notification { background: #0c1622 !important; border: 1px solid var(--line2) !important; color: var(--tx) !important; border-radius: 12px !important; }
.select2-container .select2-choice, .select2-container-multi .select2-choices { background: #07101a !important; border-color: var(--line2) !important; color: var(--tx) !important; }
.select2-drop { background: #0c1622 !important; color: var(--tx) !important; border-color: var(--line2) !important; }
.sceditor-container { border-radius: 12px !important; border-color: var(--line2) !important; background: #07101a !important; max-width: 100%; }
.sceditor-container iframe, .sceditor-container textarea { background: #07101a !important; color: var(--tx) !important; }
.sceditor-toolbar { background: #101b29 !important; border-color: var(--line) !important; }
.sceditor-group { background: #172537 !important; border-color: var(--line) !important; }
.sceditor-button div { filter: invert(.85) hue-rotate(180deg); }
.sceditor-button:hover, .sceditor-button.active { background: rgba(69, 230, 227, .15) !important; }
.sceditor-dropdown { background: #0c1622 !important; color: var(--tx) !important; border-color: var(--line2) !important; }
#quick_reply_form .tborder, #quickreply_e { margin-top: 18px; }
.codeblock, .post_body pre, .post_body code { font-family: ui-monospace, Menlo, Consolas, monospace; font-size: 14px; background: #07101a; border: 1px solid var(--line); border-radius: 10px; }
.codeblock { padding: 12px; margin: 0 0 12px; overflow-x: auto; }
.codeblock .title { color: var(--c); font-weight: 700; margin-bottom: 6px; }
.signature { margin-top: 12px; padding-top: 10px; border-top: 1px dashed var(--line); font-size: 14.5px; color: var(--mut); }
.reputation_positive, .reputation_positive_count { color: var(--g); }
.reputation_negative, .reputation_negative_count { color: var(--m); }
.reputation_neutral { color: var(--mut); }
.usercp_nav td, .usercp_nav a, table.usercp_nav { font-size: 15px; }
.usercp_nav .usercp_nav_item { display: block; padding: 6px 0 6px 4px; background: none !important; color: var(--mut); }
.usercp_nav .usercp_nav_item:hover { color: var(--c); }
.usercp_notepad { width: 100%; }
table td[valign="top"] > .tborder { margin-bottom: 18px; }
#content > table, .bm-main > table { max-width: 100%; }
.navigation { margin: 0; }
.author_avatar img, .post_author .author_avatar { display: none; }
.deleted_post_hidden, .ignored_post { margin: 0 0 10px; padding: 12px 16px; border-radius: var(--r-s); border: 1px dashed var(--line2); color: var(--mut); }
.unapproved_post { opacity: .75; }
.unapproved_post .bm-post__main::before { content: "Ожидает проверки модератора"; display: block; color: var(--m); font-weight: 700; font-size: 14px; margin-bottom: 8px; }
.bm-login .bm-field, .bm-field { margin: 0 0 10px; }
.bm-field label { display: block; font-size: 14px; color: var(--mut); margin-bottom: 4px; }
.bm-field .textbox { width: 100%; }
.bm-field--row { display: flex; justify-content: space-between; align-items: center; gap: 10px; font-size: 14px; }
.bm-field--row label { display: inline; color: var(--tx); }
.bm-login__p { color: var(--mut); font-size: 15px; }
.bm-me__who { display: flex; align-items: center; gap: 12px; }
.bm-me__who span { display: flex; flex-direction: column; }
.bm-me__who b { font-family: var(--f-head); font-size: 18px; }
.bm-me__links { list-style: none; margin: 12px 0 0; padding: 12px 0 0; border-top: 1px solid var(--line); display: grid; gap: 6px; }
.bm-me__links a { color: var(--tx); }
.bm-me__links a:hover { color: var(--c); }
.bm-pm[data-n="0"] { display: none; }
.bm-pm { display: inline-grid; place-items: center; min-width: 20px; height: 20px; margin-left: 6px; border-radius: 999px; background: var(--m); color: #1d0218; font-size: 12px; }
.bm-modtools, .bm-tools__mod { font-size: 14px; }
.bm-modtools:empty { display: none; }
form#inlinemoderation, .bm-modtools form { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.post_body .mycode_img { max-width: 100%; }
.post_body .mycode_hr { border-top: 1px solid var(--line2); }
.post_body table { border-collapse: collapse; max-width: 100%; display: block; overflow-x: auto; }
.post_body table td, .post_body table th { border: 1px solid var(--line2); padding: 6px 10px; }
.post_body .mycode_font, .post_body span[style*="color"] { filter: none; }
fieldset { border: 1px solid var(--line); border-radius: 12px; padding: 12px 16px; }
legend { color: var(--c); font-weight: 700; padding: 0 6px; }
table { color: var(--tx); }

/* ------------------------------------------------------------------ адаптивность */
@media (max-width: 1100px) {
	.bm-qs { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.bm-glass { grid-template-columns: minmax(0, 1fr) auto; }
	.bm-glass__dl { grid-column: 1 / -1; grid-row: auto; grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.bm-glass__spec { grid-row: 1 / 3; }
}
@media (max-width: 960px) {
	.bm-pro { grid-template-columns: 1fr; min-height: 0; padding-top: 26px; }
	.bm-pro__art { max-width: 440px; grid-row: 2; }
	.bm-ch, .bm-ch:nth-child(even) { grid-template-columns: 1fr; grid-template-rows: auto; min-height: 0; padding: 80px 0 40px; gap: 22px; }
	.bm-ch .bm-ch__head, .bm-ch .bm-ch__art, .bm-ch .bm-ch__forums, .bm-ch:nth-child(even) .bm-ch__head, .bm-ch:nth-child(even) .bm-ch__art, .bm-ch:nth-child(even) .bm-ch__forums { grid-column: 1; grid-row: auto; }
	.bm-ch__art { position: static; max-width: 380px; }
	.bm-ch--promise .bm-ch__forums { grid-template-columns: 1fr; }
	.bm-check { grid-template-columns: 1fr; padding: 22px; }
	.bm-check__scope { grid-column: 1; grid-row: auto; }
	.bm-scope { max-width: 340px; }
	.bm-fhead { grid-template-columns: minmax(0, 1fr) 180px; }
	.bm-prof__grid { grid-template-columns: 1fr; }
	.bm-tool--check span, .bm-drop--search .bm-tool span { display: none; }
	.bm-tool--check, .bm-drop--search .bm-tool { padding: 8px 11px; }
}
@media (max-width: 760px) {
	:root { --gut: 16px; }
	body { font-size: 16.5px; }
	.bm-logo__sub { display: none; }
	.bm-logo__mark { width: 38px; height: 38px; }
	.bm-logo__name { font-size: 22px; }
	.bm-tool--me span { display: none; }
	.bm-tool--me { padding: 5px; }
	.bm-tool--me .bm-face { margin: 0; }
	.bm-tool--me .bm-ico { margin: 0 6px; }
	.bm-obj { flex: 0 0 auto; padding: 8px 12px; }
	.bm-obj__t { font-size: 13px; }
	.bm-toc ol { grid-template-columns: repeat(5, minmax(0, 1fr)); }
	.bm-toc a { padding: 12px 4px 0; }
	.bm-toc a b { font-size: 22px; }
	.bm-toc a span { font-size: 12.5px; line-height: 1.2; }
	.bm-ch::before { font-size: 14px; letter-spacing: .08em; }
	.bm-ch__no b { font-size: 52px; }
	.bm-ch__lead { font-size: 17px; }
	.bm-qs { grid-template-columns: 1fr; }
	.bm-qs li { padding: 12px 14px 12px 60px; }
	.bm-qs li::before { top: 14px; }
	.bm-res__tip { grid-template-columns: 1fr; }
	.bm-fhead { grid-template-columns: 1fr; padding-top: 16px; }
	.bm-fhead__art { max-width: 200px; justify-self: start; grid-row: 1; }
	.bm-q { grid-template-columns: 52px minmax(0, 1fr); gap: 12px; padding: 14px 14px 12px 12px; }
	.bm-q__lens { width: 52px; height: 52px; font-size: 12px; }
	.bm-q__lens b { font-size: 22px; }
	.bm-q__lens span { display: none; }
	.bm-q__h { font-size: 18px; }
	.bm-q__last { margin-left: 0; }
	.bm-thead { padding: 20px 18px 18px; border-radius: 20px 20px 0 0; }
	.bm-thead__meta { gap: 8px 20px; }
	.bm-post--q { border-radius: 0 0 20px 20px; }
	.bm-post--q .bm-post__main { padding: 16px 18px 12px; }
	.bm-post__grid { grid-template-columns: 52px minmax(0, 1fr); }
	.bm-vote { padding: 14px 0 12px; }
	.bm-vote__b { width: 34px; height: 34px; }
	.bm-vote b { font-size: 22px; }
	.bm-post__main { padding: 14px 14px 10px; }
	.bm-post__time { flex-direction: row; align-items: center; gap: 10px; width: 100%; justify-content: space-between; }
	.bm-post__body { font-size: 16.5px; }
	.bm-post--q .bm-post__body { font-size: 17.5px; }
	.bm-glass { grid-template-columns: 1fr; padding: 18px; }
	.bm-glass__spec { grid-row: 1; grid-column: 1; }
	.bm-glass__frost, .bm-glass__nums, .bm-glass__dl { grid-column: 1; grid-row: auto; }
	.bm-glass__dl { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.bm-spec { width: 200px; height: 200px; }
	.bm-face--xl { width: 150px; height: 150px; }
	.bm-msg { flex-direction: column; padding: 20px; }
	.tborder td, .tborder th { padding: 10px 12px; }
	.bm-main > table, #content table[width="100%"] { display: block; overflow-x: auto; }
	.float_right { float: none; }
}
@media (max-width: 420px) {
	.bm-pro__h1 { font-size: 40px; }
	.bm-head__tools { gap: 6px; }
	.bm-tool { min-height: 40px; }
	.bm-drop__panel { position: fixed; left: 16px; right: 16px; top: 66px; width: auto; }
	.bm-ch::before { content: attr(data-mag); }
	.bm-check { padding: 16px; border-radius: 20px; }
	.bm-check__row { flex-direction: column; }
	.bm-knob { grid-template-columns: 1fr; gap: 4px; }
	.bm-knob__v { text-align: left; }
}
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

/* ------------------------------------------------------------------ ссылки в сообщениях: свой стиль форума («флуоресцентная метка») */
:is(.post_body, .signature, [class*="-post__body"]) a.mycode_url {
	color: #8ff2ef;
	font-weight: 600;
	text-decoration: none;
	padding-bottom: 2px;
	background-image:
		linear-gradient(90deg, rgba(69, 230, 227, .75), rgba(154, 240, 108, .75)),
		linear-gradient(180deg, rgba(69, 230, 227, 0), rgba(69, 230, 227, .3) 50%, rgba(69, 230, 227, 0));
	background-size: 100% 2px, 100% 9px;
	background-position: 0 calc(100% - 3px), 0 100%;
	background-repeat: no-repeat;
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
	transition: color .2s, background-size .2s, text-shadow .2s;
}
:is(.post_body, .signature, [class*="-post__body"]) a.mycode_url:hover,
:is(.post_body, .signature, [class*="-post__body"]) a.mycode_url:focus-visible {
	color: #c9fffc;
	background-image:
		linear-gradient(90deg, #45e6e3, #9af06c),
		linear-gradient(180deg, rgba(69, 230, 227, 0), rgba(69, 230, 227, .55) 50%, rgba(69, 230, 227, 0));
	background-size: 100% 2px, 100% 13px;
	text-shadow: 0 0 10px rgba(69, 230, 227, .55);
}
