/*
 * Тема «Письма» форума «Москва — Пекин» (moscowbeijing.ru).
 * Рисовая бумага с волокнами и облаками-сянъюнь, тушь, киноварная печать 印.
 * Каркас: главная — почтовый ящик (папки | входящие | стол с двойным календарём),
 * тема — переписка письмами на линованных листах, навигация — верхняя полоса.
 * Шрифты: Lora 400/700/italic (текст), Bad Script (подписи от руки), OFL, лежат в fonts/;
 * иероглифы — системные CJK: "PingFang SC", "Noto Sans SC", sans-serif (печати — кайши, если есть).
 * Префикс классов: mb-.
 */

@font-face { font-family: "Lora"; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/lora-400.woff2) format("woff2"); }
@font-face { font-family: "Lora"; font-style: normal; font-weight: 700; font-display: swap; src: url(fonts/lora-700.woff2) format("woff2"); }
@font-face { font-family: "Lora"; font-style: italic; font-weight: 400; font-display: swap; src: url(fonts/lora-400-italic.woff2) format("woff2"); }
@font-face { font-family: "Bad Script"; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/bad-script-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: "Bad Script"; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/bad-script-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+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }

:root {
	--mb-paper: #f3ecdc;
	--mb-paper-d: #e9dfc8;
	--mb-paper-dd: #ddd0b3;
	--mb-sheet: #fcf8ef;
	--mb-sheet-2: #f6efe0;
	--mb-ink: #221e1a;
	--mb-ink-2: #4a433b;
	--mb-ink-3: #786e60;
	--mb-hair: rgba(34, 30, 26, .17);
	--mb-hair-2: rgba(34, 30, 26, .09);
	--mb-red: #b2302b;
	--mb-red-d: #8b211c;
	--mb-red-l: #f2dcd4;
	--mb-indigo: #2b4666;
	--mb-jade: #3b6c5c;
	--mb-ochre: #9c772d;
	--mb-rule: rgba(178, 48, 43, .13);
	--mb-f: "Lora", "PingFang SC", "Noto Sans SC", Georgia, "Times New Roman", serif;
	--mb-hand: "Bad Script", "Lora", cursive;
	--mb-cjk: "PingFang SC", "Noto Sans SC", "Microsoft YaHei", sans-serif;
	--mb-brush: "Kaiti SC", "STKaiti", "KaiTi", "PingFang SC", "Noto Sans SC", sans-serif;
	--mb-shadow: 0 1px 0 rgba(255, 255, 255, .7) inset, 0 2px 3px -2px rgba(80, 52, 24, .22), 0 22px 34px -26px rgba(80, 52, 24, .5);
	--tone: var(--mb-ink);
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; scroll-padding-top: 12px; }
body {
	margin: 0;
	min-width: 320px;
	color: var(--mb-ink);
	font: 400 16px/1.6 var(--mb-f);
	background-color: var(--mb-paper);
	/* рисовая бумага: зерно, длинные волокна и бледные облака-сянъюнь */
	background-image:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .42 0 0 0 0 .34 0 0 0 0 .22 0 0 0 .085 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"),
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='430' height='430'%3E%3Cg fill='none' stroke='%23866a45' stroke-opacity='.16' stroke-width='.7' stroke-linecap='round'%3E%3Cpath d='M12 40c60-14 98 8 150-6M210 120c40 12 80-4 130 10M40 260c48-20 70 6 120-10M260 330c30-8 70 10 150-4M120 400c40 6 52-8 96 2M330 40c20 30 60 30 70 60M70 160c14 20 4 40 26 60'/%3E%3C/g%3E%3C/svg%3E"),
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='560' height='380'%3E%3Cg fill='none' stroke='%23221e1a' stroke-opacity='.05' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M58 128c-15 0-22-17-8-24 0-15 19-22 29-11 7-15 32-15 36 2 15-6 30 6 24 21 11 2 13 11 6 15H58z'/%3E%3Cpath d='M77 110c-6-7 2-15 9-10 4 3 1 10-3 8M117 104c-4-8 6-15 12-9 3 4-1 10-5 8M30 140h150M50 150h96'/%3E%3Cpath d='M370 292c-12 0-18-14-6-20 0-12 16-18 24-9 6-12 26-12 30 2 12-5 24 5 20 17 9 2 11 9 5 12h-73z'/%3E%3Cpath d='M386 277c-5-6 2-12 7-8 3 2 1 8-3 6M418 271c-3-6 5-12 10-7 2 3-1 8-4 6M352 302h124M372 311h70'/%3E%3C/g%3E%3C/svg%3E");
	background-size: 260px 260px, 430px 430px, 560px 380px;
	background-position: 0 0, 30px 60px, 0 140px;
}
img { max-width: 100%; height: auto; }
a { color: var(--mb-indigo); text-decoration: none; }
a:hover { color: var(--mb-red-d); }
:focus-visible { outline: 2px solid var(--mb-red); outline-offset: 2px; }
[lang="zh"] { font-family: var(--mb-cjk); }
[hidden] { display: none !important; }
.mb-vh { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.mb-skip { position: absolute; left: -9999px; top: 8px; z-index: 100; background: var(--mb-ink); color: #fff; padding: 8px 14px; }
.mb-skip:focus { left: 12px; color: #fff; }
.mb-defs { position: absolute; width: 0; height: 0; overflow: hidden; }
.mb-site { min-height: 100vh; display: flex; flex-direction: column; }
.mb-main { flex: 1 0 auto; width: 100%; padding-bottom: 40px; }

.mb-h1 { font: 700 30px/1.15 var(--mb-f); margin: 0; letter-spacing: -.01em; color: var(--mb-ink); }
.mb-h1 span { display: block; font: italic 400 14px/1.4 var(--mb-f); color: var(--mb-ink-3); letter-spacing: 0; margin-top: 4px; }
.mb-h2 { font: 700 20px/1.25 var(--mb-f); margin: 0 0 12px; }
.mb-h2 span[lang] { font: 400 14px var(--mb-cjk); color: var(--mb-red); margin-left: 6px; letter-spacing: .1em; }
.mb-kicker { margin: 0 0 4px; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--mb-ink-3); }
.mb-lead { margin: 10px 0 0; color: var(--mb-ink-2); font-size: 15px; max-width: 64ch; }
.mb-more { font-size: 14px; color: var(--mb-indigo); border-bottom: 1px solid rgba(43, 70, 102, .3); }
.mb-more:hover { color: var(--mb-red-d); border-color: currentColor; }
.mb-empty { list-style: none; padding: 26px 22px; color: var(--mb-ink-3); font-style: italic; }

/* тона папок */
.mb-tone--red { --tone: var(--mb-red); }
.mb-tone--indigo { --tone: var(--mb-indigo); }
.mb-tone--jade { --tone: var(--mb-jade); }
.mb-tone--ochre { --tone: var(--mb-ochre); }
.mb-tone--ink { --tone: #3a342d; }

/* ------------------------------------------------------------------ верхняя полоса */
.mb-top { position: relative; z-index: 40; background: rgba(250, 245, 233, .82); border-bottom: 1px solid var(--mb-ink); box-shadow: 0 3px 0 -2px var(--mb-paper), 0 4px 0 -2px var(--mb-red); }
.mb-top__in { max-width: 1360px; margin: 0 auto; padding: 10px 24px; display: flex; align-items: center; gap: 18px; }
.mb-logo { display: flex; align-items: center; gap: 12px; color: var(--mb-ink); flex: 0 0 auto; }
.mb-logo:hover { color: var(--mb-ink); }
.mb-logo__seal { display: inline-flex; flex-direction: column; align-items: center; justify-content: center; width: 46px; height: 46px; background: var(--mb-red); color: #fff4ee; border-radius: 5px 3px 6px 4px; box-shadow: inset 0 0 0 2px var(--mb-red), inset 0 0 0 3.5px #fbe9e2; font: 600 17px/1.02 var(--mb-brush); transform: rotate(-3deg); filter: url(#mb-ink); flex: 0 0 auto; }
.mb-logo__seal--s { width: 36px; height: 36px; font-size: 13px; }
.mb-logo__txt { display: flex; flex-direction: column; line-height: 1.15; }
.mb-logo__txt b { font: 700 21px/1.1 var(--mb-f); letter-spacing: -.01em; }
.mb-logo__txt i { font: italic 400 12.5px/1.3 var(--mb-f); color: var(--mb-ink-3); margin-top: 2px; }
.mb-logo__txt i span { font-style: normal; color: var(--mb-red); letter-spacing: .06em; margin-right: 4px; }

.mb-nav { display: flex; align-items: center; gap: 4px; margin-left: 14px; }
.mb-nav__a { display: inline-flex; align-items: center; gap: 7px; padding: 8px 12px; font: 400 15px/1 var(--mb-f); color: var(--mb-ink-2); background: none; border: 0; border-radius: 3px; cursor: pointer; white-space: nowrap; }
.mb-nav__a svg { color: var(--mb-ink-3); }
.mb-nav__a:hover { color: var(--mb-ink); background: rgba(34, 30, 26, .05); }
.mb-nav__a.is-on { color: var(--mb-ink); box-shadow: inset 0 -2px 0 var(--mb-red); border-radius: 0; }
.mb-nav__a.is-on svg { color: var(--mb-red); }
.mb-nav__caret { width: 0; height: 0; border: 4px solid transparent; border-top-color: currentColor; margin: 4px 0 0 -2px; }

.mb-qs { margin-left: auto; position: relative; }
.mb-qs form { display: flex; align-items: center; }
.mb-qs .textbox { width: 280px; height: 38px; padding: 0 40px 0 14px; font: 400 14px var(--mb-f); color: var(--mb-ink); background: var(--mb-sheet); border: 1px solid var(--mb-hair); border-radius: 19px; }
.mb-qs .textbox::placeholder { color: var(--mb-ink-3); font-style: italic; }
.mb-qs__go { position: absolute; right: 4px; top: 4px; width: 30px; height: 30px; display: grid; place-items: center; border: 0; border-radius: 50%; background: none; color: var(--mb-ink-2); cursor: pointer; }
.mb-qs__go:hover { color: var(--mb-red); }
.mb-qs__more { display: none; margin: 8px 0 0; font-size: 13px; }
.mb-iconbtn { display: none; width: 40px; height: 40px; place-items: center; border: 1px solid var(--mb-hair); border-radius: 50%; background: var(--mb-sheet); color: var(--mb-ink-2); cursor: pointer; }
.mb-me { display: inline-flex; align-items: center; gap: 8px; height: 40px; padding: 0 14px 0 6px; border: 1px solid var(--mb-ink); border-radius: 20px; background: var(--mb-sheet); color: var(--mb-ink); font: 400 14px var(--mb-f); cursor: pointer; flex: 0 0 auto; }
.mb-me:not(:has(.mb-face)) { padding-left: 14px; }
.mb-me:not(:has(.mb-face))::before { content: ""; width: 14px; height: 10px; border: 1.5px solid currentColor; border-radius: 1px; background: linear-gradient(to bottom right, transparent 46%, currentColor 47%, currentColor 53%, transparent 54%) 0 0 / 50% 100% no-repeat, linear-gradient(to bottom left, transparent 46%, currentColor 47%, currentColor 53%, transparent 54%) 100% 0 / 50% 100% no-repeat; }
.mb-me:hover, .mb-me.is-on { background: var(--mb-ink); color: var(--mb-sheet); }

/* полоса двойного календаря под навигацией */
.mb-cal { border-top: 1px solid var(--mb-hair-2); background: rgba(233, 223, 200, .55); }
.mb-cal__in { max-width: 1360px; margin: 0 auto; padding: 6px 24px; display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 22px; font-size: 13px; color: var(--mb-ink-2); }
.mb-cal__in > span { display: inline-flex; align-items: baseline; gap: 7px; }
.mb-cal__in > span + span::before { content: ""; width: 5px; height: 5px; background: var(--mb-red); transform: rotate(45deg) translateY(-2px); margin-right: 6px; align-self: center; }
.mb-cal__in i { font-style: normal; font-size: 11.5px; letter-spacing: .08em; color: var(--mb-ink-3); }
.mb-cal__in i[lang] { color: var(--mb-red); letter-spacing: .12em; }
.mb-cal__in b { font-weight: 700; color: var(--mb-ink); }
.mb-cal__g span { color: var(--mb-ink-3); }
.mb-cal__l [data-cal="lunar-ru"] { color: var(--mb-ink-3); font-style: italic; }
.mb-cal__n { margin-left: auto; color: var(--mb-red-d); }
.mb-cal__n:empty, .mb-cal__l b:empty + span:empty { display: none; }

/* всплывающие панели: папки, вход */
.mb-pop { display: none; position: absolute; top: calc(100% + 4px); left: 50%; transform: translateX(-50%); width: min(980px, calc(100vw - 24px)); z-index: 60; }
.mb-pop.is-open { display: block; }
.mb-pop__in { background: var(--mb-sheet); border: 1px solid var(--mb-ink); box-shadow: 0 30px 60px -30px rgba(60, 40, 18, .55), 6px 6px 0 rgba(178, 48, 43, .12); padding: 18px 22px 20px; max-height: calc(100vh - 120px); overflow: auto; }
.mb-pop__h { margin: 0 0 12px; font: 700 18px var(--mb-f); }
.mb-pop__h span { font: 400 13px var(--mb-cjk); color: var(--mb-red); margin-left: 6px; letter-spacing: .12em; }
.mb-pop--me { left: auto; right: max(12px, calc((100vw - 1360px) / 2 + 24px)); transform: none; width: min(340px, calc(100vw - 24px)); }
.mb-scrim { position: fixed; inset: 0; z-index: 30; background: rgba(34, 30, 26, .18); }

.mb-crumbs-row { max-width: 1360px; margin: 0 auto; padding: 10px 24px 0; }
.mb-crumbs { font-size: 13px; color: var(--mb-ink-3); display: flex; flex-wrap: wrap; align-items: center; gap: 2px 6px; }
.mb-crumbs a { color: var(--mb-ink-2); }
.mb-crumbs a:hover { color: var(--mb-red-d); }
.mb-crumbs .active { color: var(--mb-ink-3); max-width: 60ch; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mb-crumbs__sep { color: var(--mb-red); }
.mb-page--index .mb-crumbs-row { display: none; }

/* ------------------------------------------------------------------ лица, печати, марки */
.mb-face { display: inline-grid; place-items: center; flex: 0 0 auto; width: 46px; height: 46px; position: relative; background: #fffdf8; padding: 2px; box-shadow: 0 1px 2px rgba(60, 40, 20, .25); }
.mb-face img { display: block; width: 100%; height: 100%; object-fit: cover; }
.mb-face--img::before, .mb-face--img::after { content: ""; position: absolute; width: 11px; height: 11px; z-index: 1; }
.mb-face--img::before { left: -3px; top: -3px; background: linear-gradient(135deg, #2f2925 50%, transparent 51%); }
.mb-face--img::after { right: -3px; bottom: -3px; background: linear-gradient(-45deg, #2f2925 50%, transparent 51%); }
.mb-face--mono { font: 700 15px/1 var(--mb-f); color: var(--mb-sheet); letter-spacing: .02em; padding: 0; border-radius: 50%; box-shadow: none; }
.mb-mono-0 { background: #3a342d; } .mb-mono-1 { background: var(--mb-indigo); } .mb-mono-2 { background: var(--mb-jade); } .mb-mono-3 { background: #7c5a33; } .mb-mono-4 { background: #6b3a44; }
.mb-face--xs { width: 22px; height: 22px; font-size: 10px; padding: 1px; }
.mb-face--s { width: 32px; height: 32px; font-size: 12px; }
.mb-face--l { width: 58px; height: 58px; font-size: 18px; }
.mb-face--xl { width: 160px; height: 160px; font-size: 52px; padding: 5px; }
.mb-face--xl.mb-face--img::before, .mb-face--xl.mb-face--img::after { width: 26px; height: 26px; }
.mb-stack { display: inline-flex; flex-wrap: wrap; gap: 4px; }

.mb-seal { display: inline-grid; place-items: center; width: 40px; height: 40px; background: var(--mb-red); color: #fff3ec; border-radius: 3px 5px 3px 6px; transform: rotate(var(--r, -3deg)); box-shadow: inset 0 0 0 2px var(--mb-red), inset 0 0 0 3px rgba(255, 240, 232, .85); font: 700 15px/1 var(--mb-f); letter-spacing: .04em; filter: url(#mb-ink); mix-blend-mode: multiply; flex: 0 0 auto; }
.mb-seal--l { width: 78px; height: 78px; font-size: 28px; box-shadow: inset 0 0 0 3px var(--mb-red), inset 0 0 0 5px rgba(255, 240, 232, .85); }

/* почтовая марка: зубчатый край маской, иероглиф папки */
.mb-marka { --h: 3px; --s: 8px; display: inline-block; position: relative; width: 52px; height: 62px; padding: calc(var(--h) + 2px); background: #fffcf4; flex: 0 0 auto;
	-webkit-mask: radial-gradient(circle var(--h) at var(--h) var(--h), transparent 95%, #000 100%) calc(var(--h) * -1) calc(var(--h) * -1) / var(--s) var(--s) round, linear-gradient(#000 0 0) content-box;
	mask: radial-gradient(circle var(--h) at var(--h) var(--h), transparent 95%, #000 100%) calc(var(--h) * -1) calc(var(--h) * -1) / var(--s) var(--s) round, linear-gradient(#000 0 0) content-box; }
.mb-marka__in { display: flex; flex-direction: column; align-items: center; justify-content: center; height: 100%; border: 1px solid var(--tone); background: color-mix(in srgb, var(--tone) 11%, #fffcf4); color: var(--tone); overflow: hidden; }
.mb-marka__in b { font: 400 25px/1 var(--mb-brush); }
.mb-marka__in i { font: italic 400 7.5px/1 var(--mb-f); letter-spacing: .03em; margin-top: 4px; white-space: nowrap; }
.mb-marka--s { --h: 2.2px; --s: 6px; width: 38px; height: 46px; }
.mb-marka--s .mb-marka__in b { font-size: 19px; }
.mb-marka--s .mb-marka__in i { display: none; }
.mb-marka--l { --h: 4px; --s: 10px; width: 88px; height: 104px; padding: 7px; }
.mb-marka--l .mb-marka__in b { font-size: 46px; }
.mb-marka--l .mb-marka__in i { font-size: 11px; margin-top: 7px; }

/* штемпель */
.mb-pm { width: 86px; height: auto; color: var(--mb-indigo); opacity: .72; transform: rotate(var(--r, -6deg)); fill: none; stroke: currentColor; pointer-events: none; overflow: visible; }
.mb-pm__o { stroke-width: 1.4; }
.mb-pm__i { stroke-width: .9; }
.mb-pm__w { stroke-width: 1.15; stroke-linecap: round; }
.mb-pm text { fill: currentColor; stroke: none; font: 700 6.4px var(--mb-f); letter-spacing: .14em; }
.mb-pm .mb-pm__t--zh { font: 400 6.6px var(--mb-cjk); letter-spacing: .5em; }
.mb-pm .mb-pm__d { font-size: 9px; letter-spacing: .03em; }
.mb-pm .mb-pm__y { font-size: 6.4px; letter-spacing: .1em; font-weight: 400; }

/* звание, репутация, вид письма */
.mb-badge { --c: var(--mb-ink-3); display: inline-grid; place-items: center; width: 21px; height: 24px; border: 1px solid var(--c); outline: 1px solid var(--c); outline-offset: -4px; color: var(--c); background: color-mix(in srgb, var(--c) 9%, #fffcf4); flex: 0 0 auto; }
.mb-badge b { font: 400 12px/1 var(--mb-brush); }
.mb-badge--2 { --c: var(--mb-ink-2); } .mb-badge--3 { --c: var(--mb-jade); } .mb-badge--4 { --c: var(--mb-indigo); } .mb-badge--5 { --c: var(--mb-ochre); }
.mb-badge--6 { --c: var(--mb-red); background: var(--mb-red); color: #fff4ee; outline-color: #fbe3da; }
.mb-badge--big { width: 46px; height: 54px; outline-offset: -6px; }
.mb-badge--big b { font-size: 24px; }
.mb-rank { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; color: var(--mb-ink-2); }
.mb-rep { display: inline-flex; align-items: center; gap: 4px; font-size: 13px; color: var(--mb-ink-3); }
.mb-rep i { display: inline-grid; place-items: center; width: 17px; height: 17px; background: var(--mb-red); color: #fff4ee; font: 400 11px/1 var(--mb-brush); border-radius: 2px; transform: rotate(-4deg); }
.mb-rep b { color: var(--mb-ink); }
.mb-rep--zero i { background: var(--mb-ink-3); }
.mb-kind { display: inline-block; font: 400 11.5px/1.5 var(--mb-f); letter-spacing: .05em; padding: 0 7px; border: 1px solid currentColor; border-radius: 2px; color: var(--mb-ink-2); white-space: nowrap; }
.mb-kind--ask { color: var(--mb-indigo); } .mb-kind--exp { color: var(--mb-jade); } .mb-kind--tip { color: var(--mb-ochre); }
.mb-kind--meet { color: #7a3d63; } .mb-kind--thanks { color: var(--mb-red); }

/* ------------------------------------------------------------------ почтовый ящик */
.mb-box { max-width: 1360px; margin: 22px auto 0; padding: 0 24px; display: grid; gap: 22px; align-items: start; }
.mb-box--index { grid-template-columns: 232px minmax(0, 1fr) 330px; }
.mb-box--forum { grid-template-columns: 232px minmax(0, 1fr); }

.mb-folders { position: sticky; top: 14px; }
.mb-folders__h { margin: 4px 0 10px 10px; font: 700 13px var(--mb-f); letter-spacing: .14em; text-transform: uppercase; color: var(--mb-ink-3); }
.mb-folders__h span { color: var(--mb-red); letter-spacing: .2em; margin-left: 4px; font-weight: 400; }
.mb-folders__list, .mb-folders__list ul { list-style: none; margin: 0; padding: 0; }
.mb-fgroup + .mb-fgroup { margin-top: 12px; }
.mb-fgroup__h { margin: 0 0 3px 10px; font-size: 12px; letter-spacing: .06em; color: var(--mb-ink-3); }
.mb-fgroup__h a { color: inherit; }
.mb-folder { display: grid; grid-template-columns: 26px minmax(0, 1fr) auto; align-items: center; gap: 9px; padding: 6px 10px; border-radius: 3px; color: var(--mb-ink-2); font-size: 14.5px; line-height: 1.25; position: relative; }
.mb-folder:hover { background: rgba(34, 30, 26, .05); color: var(--mb-ink); }
.mb-folder.is-on { background: var(--mb-sheet); color: var(--mb-ink); box-shadow: 0 1px 2px rgba(60, 40, 20, .12); }
.mb-folder.is-on::before { content: ""; position: absolute; left: 0; top: 6px; bottom: 6px; width: 3px; background: var(--mb-red); }
.mb-folder__g { display: inline-grid; place-items: center; width: 26px; height: 26px; border: 1px solid var(--tone); color: var(--tone); font: 400 15px/1 var(--mb-brush); background: color-mix(in srgb, var(--tone) 8%, transparent); border-radius: 2px; }
.mb-folder.is-on .mb-folder__g { background: var(--tone); color: #fff8f1; }
.mb-folder__n { font-size: 12px; color: var(--mb-ink-3); min-width: 22px; text-align: right; }
.mb-folders__total { margin: 14px 10px 0; padding-top: 10px; border-top: 1px dashed var(--mb-hair); font-size: 13px; color: var(--mb-ink-3); }
.mb-folders__total b { color: var(--mb-ink); }
.mb-folders__list--panel { columns: 3 230px; column-gap: 26px; }
.mb-folders__list--panel .mb-fgroup { break-inside: avoid; margin: 0 0 14px; }

.mb-inbox { min-width: 0; background: var(--mb-sheet); border: 1px solid var(--mb-hair); box-shadow: var(--mb-shadow); }
.mb-inbox__head { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; padding: 22px 24px 16px; border-bottom: 1px solid var(--mb-hair-2); }
.mb-inbox__more { margin: 0; padding: 14px 24px 18px; text-align: right; }

.mb-compose { display: inline-flex; align-items: center; gap: 8px; padding: 10px 18px; background: var(--mb-red); color: #fff7f1; font: 700 15px/1 var(--mb-f); border-radius: 3px; box-shadow: 0 2px 0 var(--mb-red-d); white-space: nowrap; cursor: pointer; list-style: none; }
.mb-compose::-webkit-details-marker { display: none; }
.mb-compose:hover { background: var(--mb-red-d); color: #fff; }
.mb-compose.is-off { flex-direction: row; flex-wrap: wrap; background: none; color: var(--mb-ink-3); box-shadow: none; border: 1px dashed var(--mb-ink-3); cursor: not-allowed; font-weight: 400; max-width: 190px; }
.mb-compose.is-off em { flex-basis: 100%; font: italic 400 12px var(--mb-f); padding-left: 26px; margin-top: -2px; }
.mb-compose-d { position: relative; }
.mb-compose-d__p { position: absolute; right: 0; top: calc(100% + 6px); z-index: 20; width: 280px; background: var(--mb-sheet); border: 1px solid var(--mb-ink); box-shadow: 0 20px 40px -24px rgba(60, 40, 18, .6); padding: 12px 14px; }
.mb-compose-d__p p { margin: 0 0 6px; font-size: 13px; color: var(--mb-ink-3); }
.mb-compose-d__p ul { list-style: none; margin: 0; padding: 0; max-height: 320px; overflow: auto; }
.mb-compose-d__p a { display: block; padding: 5px 4px; font-size: 14px; border-bottom: 1px dotted var(--mb-hair); }

.mb-tabs { display: flex; flex-wrap: wrap; gap: 2px 4px; padding: 0 18px; border-bottom: 1px solid var(--mb-hair-2); }
.mb-tab { padding: 11px 10px 10px; background: none; border: 0; font: 400 14px var(--mb-f); color: var(--mb-ink-3); cursor: pointer; box-shadow: inset 0 -2px 0 transparent; }
.mb-tab span { font-size: 12px; color: var(--mb-ink-3); margin-left: 3px; }
.mb-tab:hover { color: var(--mb-ink); }
.mb-tab.is-on { color: var(--mb-ink); box-shadow: inset 0 -2px 0 var(--mb-red); }

/* письмо в списке */
.mb-mails { list-style: none; margin: 0; padding: 0; }
.mb-mail { position: relative; display: grid; grid-template-columns: 10px 46px minmax(0, 1fr) 104px; gap: 4px 14px; align-items: start; padding: 15px 22px 14px 16px; border-bottom: 1px solid var(--mb-hair-2); }
.mb-mail:hover { background: rgba(178, 48, 43, .035); }
.mb-mail__dot { width: 8px; height: 8px; margin-top: 20px; border: 1.3px solid var(--mb-ink-3); border-radius: 50%; }
.mb-mail.is-fresh .mb-mail__dot { background: var(--mb-red); border-color: var(--mb-red); }
.mb-mail .mb-face { margin-top: 2px; }
.mb-mail__body { min-width: 0; }
.mb-mail__from { margin: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 2px 10px; font-size: 13.5px; color: var(--mb-ink-2); }
.mb-mail__from b { font-weight: 700; color: var(--mb-ink); }
.mb-mail__from b a { color: inherit; position: relative; z-index: 2; }
.mb-mail__folder { display: inline-flex; align-items: center; gap: 5px; font-size: 12.5px; color: var(--tone); }
.mb-mail__folder::before { content: ""; width: 6px; height: 6px; background: var(--tone); border-radius: 1px; transform: rotate(45deg); }
.mb-mail__subj { margin: 3px 0 0; font: 400 17px/1.35 var(--mb-f); }
.mb-mail__subj a { color: var(--mb-ink); }
.mb-mail__subj a::after { content: ""; position: absolute; inset: 0; z-index: 1; }
.mb-mail.is-fresh .mb-mail__subj { font-weight: 700; }
.mb-mail__subj a:hover { color: var(--mb-red-d); }
.mb-mail__snip { margin: 3px 0 0; font-size: 14px; line-height: 1.5; color: var(--mb-ink-3); display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; }
.mb-mail__meta { margin: 6px 0 0; display: flex; flex-wrap: wrap; gap: 2px 12px; font-size: 12.5px; color: var(--mb-ink-3); }
.mb-mail__n b { color: var(--mb-ink-2); }
.mb-mail__last--wait { color: var(--mb-red-d); font-style: italic; }
.mb-mail__post { display: flex; flex-direction: column; align-items: flex-end; gap: 6px; }
.mb-mail__time { font-size: 12.5px; color: var(--mb-ink-3); white-space: nowrap; position: relative; z-index: 2; }
.mb-mail.is-fresh .mb-mail__time { color: var(--mb-red-d); font-weight: 700; }
.mb-mail__stamp { position: relative; display: block; width: 88px; height: 50px; filter: drop-shadow(0 1px 1px rgba(60, 40, 20, .22)); }
.mb-mail__stamp .mb-marka { position: absolute; right: 2px; top: 0; transform: rotate(2deg); }
.mb-mail__stamp .mb-pm { position: absolute; left: 4px; top: 4px; width: 46px; opacity: .62; }
.mb-mail__mod { position: absolute; right: 8px; bottom: 8px; z-index: 3; }
.mb-mail.is-pinned { background: linear-gradient(90deg, rgba(178, 48, 43, .06), transparent 40%); }
.mb-pages { font-size: 12px; margin-left: 8px; position: relative; z-index: 2; }
.mb-pages a { padding: 0 3px; }
.mb-sep { list-style: none; padding: 7px 22px; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--mb-ink-3); background: var(--mb-sheet-2); border-bottom: 1px solid var(--mb-hair-2); }
.mb-empty--filter { margin: 0; }

/* стол: двойной календарь и словарик */
.mb-desk { display: grid; gap: 18px; position: sticky; top: 14px; }
.mb-desk__h { margin: 0 0 12px; font: 700 13px var(--mb-f); letter-spacing: .14em; text-transform: uppercase; color: var(--mb-ink-3); display: flex; justify-content: space-between; align-items: baseline; }
.mb-desk__h span { color: var(--mb-red); letter-spacing: .2em; font-weight: 400; text-transform: none; }
.mb-dcal, .mb-word { background: var(--mb-sheet); border: 1px solid var(--mb-hair); box-shadow: var(--mb-shadow); padding: 16px 18px 18px; position: relative; }
.mb-dcal__sheets { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.mb-sheet { position: relative; text-align: center; padding: 12px 6px 9px; background: #fffdf7; border: 1px solid var(--mb-hair); box-shadow: 0 1px 0 #fff inset, 0 3px 0 -1px #efe6d3, 0 4px 0 -1px var(--mb-hair), 0 7px 0 -2px #ebe1cc, 0 8px 0 -2px var(--mb-hair); }
.mb-sheet::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 26px; background: var(--c, var(--mb-red)); }
.mb-sheet::after { content: ""; position: absolute; left: 18%; right: 18%; top: -5px; height: 8px; background: radial-gradient(circle 3px, var(--mb-ink-2) 92%, transparent) 0 0 / 14px 8px repeat-x; }
.mb-sheet--lunar { --c: var(--mb-ink); }
.mb-sheet p { margin: 0; position: relative; }
.mb-sheet__m { height: 20px; margin-top: -9px !important; color: #fff6ef; font: 700 13px/20px var(--mb-f); letter-spacing: .1em; text-transform: lowercase; }
.mb-sheet--lunar .mb-sheet__m { font: 400 14px/20px var(--mb-cjk); letter-spacing: .2em; }
.mb-sheet__d { font: 700 54px/1.05 var(--mb-f); color: var(--mb-red); margin-top: 8px !important; }
.mb-sheet--lunar .mb-sheet__d { font: 400 38px/1.45 var(--mb-brush); color: var(--mb-ink); letter-spacing: .04em; }
.mb-sheet__w { font-size: 13px; color: var(--mb-ink-2); min-height: 20px; }
.mb-sheet__f { font: italic 400 11px var(--mb-f); color: var(--mb-ink-3); margin-top: 4px !important; }
.mb-dcal__ru { margin: 14px 0 0; font-size: 13px; color: var(--mb-ink-2); text-align: center; font-style: italic; }
.mb-count { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 0 12px; align-items: center; margin-top: 14px; padding: 12px 14px; background: var(--mb-red-l); border: 1px solid rgba(178, 48, 43, .28); position: relative; }
.mb-count__k { margin: 0; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--mb-red-d); }
.mb-count__t { margin: 2px 0 0; font: 700 15.5px/1.3 var(--mb-f); }
.mb-count__t span { font: 400 13px var(--mb-cjk); color: var(--mb-red); margin-left: 4px; letter-spacing: .08em; }
.mb-count__d { margin: 2px 0 0; font-size: 12.5px; color: var(--mb-ink-2); }
.mb-count__n { margin: 0; text-align: center; color: var(--mb-red); line-height: 1; }
.mb-count__n b { display: block; font: 700 38px/1 var(--mb-f); }
.mb-count__n span { font-size: 12px; color: var(--mb-red-d); }
.mb-count__bar { grid-column: 1 / -1; display: block; height: 3px; margin-top: 10px; background: rgba(178, 48, 43, .15); }
.mb-count__bar i { display: block; height: 100%; width: 0; background: var(--mb-red); transition: width .9s ease; }
.mb-hol { list-style: none; margin: 10px 0 0; padding: 0; }
.mb-hol li { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; padding: 5px 2px; border-bottom: 1px dotted var(--mb-hair); font-size: 13px; color: var(--mb-ink-2); }
.mb-hol li span:last-child { color: var(--mb-ink-3); white-space: nowrap; }
.mb-hol li i { font-style: normal; font-family: var(--mb-cjk); color: var(--mb-red); margin-left: 5px; font-size: 12px; }
.mb-hol li.is-ru i { color: var(--mb-indigo); }
.mb-clocks { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 14px; }
.mb-clock { margin: 0; padding: 8px 10px; border: 1px solid var(--mb-hair); background: #fffdf7; display: flex; flex-direction: column; }
.mb-clock span { font-size: 11.5px; letter-spacing: .08em; color: var(--mb-ink-3); text-transform: uppercase; }
.mb-clock span i { font-style: normal; text-transform: none; color: var(--mb-red); letter-spacing: 0; }
.mb-clock b { font: 700 24px/1.2 var(--mb-f); font-variant-numeric: tabular-nums; }
.mb-clock--bj b { color: var(--mb-red-d); }
.mb-clocks__hint { grid-column: 1 / -1; margin: 0; font-size: 12.5px; color: var(--mb-ink-3); font-style: italic; }
.mb-dcal__ns { font-size: 13px; color: var(--mb-ink-3); }

.mb-word__card { text-align: center; padding: 14px 10px 12px; border: 1px solid var(--mb-hair); background: #fffdf7 repeating-linear-gradient(to right, transparent 0 calc(25% - 1px), var(--mb-rule) calc(25% - 1px) 25%); position: relative; }
.mb-word__zh { margin: 0; font: 400 44px/1.25 var(--mb-brush); color: var(--mb-ink); letter-spacing: .06em; }
.mb-word__py { margin: 2px 0 0; font: italic 400 17px var(--mb-f); color: var(--mb-red-d); letter-spacing: .02em; }
.mb-word__ru { margin: 6px 0 0; font: 700 16px var(--mb-f); }
.mb-word__ex { margin: 6px 0 0; font-size: 13px; color: var(--mb-ink-2); line-height: 1.5; }
.mb-word__act { display: flex; gap: 6px; margin-top: 10px; }
.mb-word__b { flex: 0 0 auto; display: inline-flex; align-items: center; gap: 6px; padding: 6px 10px; border: 1px solid var(--mb-hair); background: none; font: 400 13px var(--mb-f); color: var(--mb-ink-2); cursor: pointer; border-radius: 2px; }
.mb-word__b:hover { border-color: var(--mb-red); color: var(--mb-red-d); }
.mb-word__b[data-w="next"] { margin-left: auto; }
.mb-word__b--say { color: var(--mb-red-d); border-color: rgba(178, 48, 43, .4); }
.mb-word__b.is-speaking { background: var(--mb-red-l); }

.mb-how { max-width: 1360px; margin: 30px auto 0; padding: 0 24px; }
.mb-how__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; counter-reset: how; }
.mb-how__list li { counter-increment: how; position: relative; padding: 14px 16px 14px 50px; font-size: 14px; color: var(--mb-ink-2); border-top: 2px solid var(--mb-ink); background: rgba(252, 248, 239, .6); }
.mb-how__list li::before { content: counter(how, cjk-ideographic); position: absolute; left: 14px; top: 12px; width: 26px; height: 26px; display: grid; place-items: center; background: var(--mb-red); color: #fff6ef; font: 400 14px var(--mb-brush); border-radius: 2px; }
.mb-how__list b { display: block; color: var(--mb-ink); margin-bottom: 3px; }

/* ------------------------------------------------------------------ папка (раздел) */
.mb-fhead { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 20px; align-items: center; padding: 22px 24px 18px; border-bottom: 1px solid var(--mb-hair-2); }
.mb-fhead__marka { filter: drop-shadow(0 2px 2px rgba(60, 40, 20, .25)); transform: rotate(-2deg); }
.mb-fhead__d { margin: 8px 0 0; color: var(--mb-ink-2); font-size: 15px; max-width: 70ch; }
.mb-fhead__n { margin: 8px 0 0; font-size: 13px; color: var(--mb-ink-3); }
.mb-fhead__n b { color: var(--mb-ink); }
.mb-fhead__act .new_thread_button { display: none; }
.mb-list__head { border-bottom: 1px solid var(--mb-hair-2); }
.mb-list__head .mb-tabs { border-bottom: 0; }
.mb-sort { display: flex; flex-wrap: wrap; gap: 4px 14px; margin: 0; padding: 0 28px 10px; font-size: 12.5px; color: var(--mb-ink-3); }
.mb-sort a { color: var(--mb-ink-2); }
.mb-bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 16px; padding: 14px 22px; }
.mb-bar__r { display: flex; flex-wrap: wrap; gap: 8px 16px; align-items: center; font-size: 13px; }
.mb-modtools { padding: 0 22px 14px; }
.mb-subs { padding: 8px 22px 16px; border-bottom: 1px solid var(--mb-hair-2); }
.mb-subs__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 10px; }
.mb-subcat { grid-column: 1 / -1; }
.mb-subcat__t { margin: 8px 0 6px; font: 700 15px var(--mb-f); }
.mb-sub { padding: 12px 14px; border: 1px solid var(--mb-hair); background: #fffdf7; }
.mb-sub__t { font: 700 16px var(--mb-f); color: var(--mb-ink); }
.mb-sub__d, .mb-sub__n, .mb-sub__last { margin: 4px 0 0; font-size: 13px; color: var(--mb-ink-3); }
.mb-new { display: none; }

/* ------------------------------------------------------------------ переписка */
.mb-corr { max-width: 940px; margin: 20px auto 0; padding: 0 20px; }
/* конверт авиапочты: полосы красный — индиго, клетки индекса, марка со штемпелем */
.mb-env { position: relative; padding: 8px; background: repeating-linear-gradient(-45deg, var(--mb-red) 0 13px, #fdf8ee 13px 19px, var(--mb-indigo) 19px 32px, #fdf8ee 32px 38px); box-shadow: var(--mb-shadow); }
.mb-env__in { position: relative; background: var(--mb-sheet-2); padding: 18px 24px 16px; }
.mb-env__in::before { content: ""; position: absolute; inset: 0; pointer-events: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .4 0 0 0 0 .32 0 0 0 0 .2 0 0 0 .07 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); }
.mb-env__top { display: flex; align-items: flex-start; gap: 16px; position: relative; }
.mb-zip { list-style: none; margin: 0; padding: 0; display: flex; gap: 5px; }
.mb-zip li { width: 24px; height: 28px; border: 1.5px solid var(--mb-red); display: grid; place-items: center; font: 400 19px/1 var(--mb-hand); color: var(--mb-indigo); background: rgba(255, 255, 255, .5); }
.mb-env__avia { margin: 0; display: inline-flex; flex-direction: column; align-items: center; padding: 3px 9px; border: 1.5px solid var(--mb-indigo); color: var(--mb-indigo); line-height: 1.1; transform: rotate(-2deg); }
.mb-env__avia b { font: 700 11px var(--mb-f); letter-spacing: .2em; text-transform: uppercase; }
.mb-env__avia span { font-size: 12px; letter-spacing: .3em; }
.mb-env__post { margin-left: auto; position: relative; width: 170px; height: 108px; flex: 0 0 auto; }
.mb-env__post .mb-marka { position: absolute; right: 0; top: 0; transform: rotate(3deg); filter: drop-shadow(0 2px 2px rgba(60, 40, 20, .25)); }
.mb-env__post .mb-pm { position: absolute; left: 0; top: 30px; width: 128px; opacity: .7; }
.mb-env__addr { position: relative; margin-top: -40px; max-width: 640px; }
.mb-env__k { margin: 0 0 6px; display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; font-size: 13px; color: var(--mb-ink-3); }
.mb-env__k a { color: var(--tone); font-weight: 700; }
.mb-env__h1 { font-size: 29px; line-height: 1.22; padding-bottom: 10px; border-bottom: 1px solid var(--mb-ink); box-shadow: 0 3px 0 -2px var(--mb-sheet-2), 0 4px 0 -2px var(--mb-hair); }
.mb-env__dl { margin: 12px 0 0; display: flex; flex-wrap: wrap; gap: 6px 26px; font-size: 14px; }
.mb-env__dl div { display: flex; gap: 8px; align-items: baseline; }
.mb-env__dl dt { font-size: 11.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--mb-red-d); }
.mb-env__dl dd { margin: 0; color: var(--mb-ink); }
.mb-env__people { position: relative; display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin-top: 14px; padding-top: 12px; border-top: 1px dashed var(--mb-hair); font-size: 13px; color: var(--mb-ink-3); padding-right: 70px; }
.mb-env__wax { position: absolute; right: 20px; bottom: 16px; z-index: 2; width: 54px; height: 54px; display: grid; place-items: center; background: var(--mb-red); color: #fff3ec; font: 400 30px/1 var(--mb-brush); border-radius: 4px 6px 3px 7px; box-shadow: inset 0 0 0 3px var(--mb-red), inset 0 0 0 4.5px rgba(255, 240, 232, .85); transform: rotate(-7deg); filter: url(#mb-ink); mix-blend-mode: multiply; }
.mb-env__flap { display: none; }

.mb-bar--thread { padding: 16px 0 0; }
.mb-letters { padding: 4px 0; }
/* письмо: лист с красной разлиновкой, как китайский почтовый бланк */
.mb-letter { margin: 22px 0; position: relative; }
.mb-letter:not(.mb-letter--first):not(.mb-letter--op) { margin-left: 34px; }
.mb-letter--op { margin-right: 34px; }
.mb-letter__sheet { position: relative; background: var(--mb-sheet); border: 1px solid rgba(34, 30, 26, .13); box-shadow: var(--mb-shadow); padding: 20px 28px 16px 50px; }
.mb-letter__sheet::before { content: ""; position: absolute; left: 30px; top: 0; bottom: 0; width: 4px; border-left: 1px solid rgba(178, 48, 43, .38); border-right: 1px solid rgba(178, 48, 43, .38); }
.mb-letter--first .mb-letter__sheet { padding-top: 24px; background-image: linear-gradient(var(--mb-red), var(--mb-red)); background-size: 100% 5px; background-repeat: no-repeat; }
.mb-letter__head { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 16px; align-items: start; padding-bottom: 12px; border-bottom: 1px solid rgba(178, 48, 43, .4); box-shadow: 0 3px 0 -2px var(--mb-sheet), 0 4px 0 -2px rgba(178, 48, 43, .25); }
.mb-letter__photo { padding-top: 4px; }
.mb-letter__fields { margin: 0; display: grid; gap: 3px; min-width: 0; }
.mb-letter__f { display: grid; grid-template-columns: 46px minmax(0, 1fr); gap: 10px; align-items: baseline; padding: 2px 0 3px; border-bottom: 1px dotted var(--mb-hair); }
.mb-letter__f dt { font-size: 11.5px; letter-spacing: .12em; text-transform: uppercase; color: var(--mb-red-d); }
.mb-letter__f dd { margin: 0; min-width: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 3px 12px; font-size: 14.5px; }
.mb-letter__nick { font-size: 16px; }
.mb-letter__nick a { color: var(--mb-ink); }
.mb-letter__nick a:hover { color: var(--mb-red-d); }
.mb-letter__badges { display: inline-flex; flex-wrap: wrap; gap: 3px 12px; }
.mb-op { font: italic 400 12px var(--mb-f); color: var(--mb-red-d); }
.mb-to { color: var(--mb-indigo); font-weight: 700; }
.mb-to__n { font-size: 12px; color: var(--mb-ink-3); font-style: italic; }
.mb-letter__date { color: var(--mb-ink-2); }
.mb-letter__no { font-size: 12px; color: var(--mb-ink-3); font-style: italic; }
.mb-letter__stamp { position: relative; width: 150px; height: 74px; }
.mb-letter__stamp .mb-marka { position: absolute; right: 0; top: -4px; transform: rotate(3deg); filter: drop-shadow(0 1px 2px rgba(60, 40, 20, .25)); }
.mb-letter__stamp .mb-pm { position: absolute; left: 0; top: 14px; width: 104px; }
.mb-letter__facts { margin: 8px 0 0; display: flex; flex-wrap: wrap; gap: 2px 16px; font-size: 12.5px; color: var(--mb-ink-3); }
.mb-letter__facts i { font-style: italic; color: var(--mb-red-d); opacity: .85; }
.mb-letter__body { margin-top: 14px; font-size: 16.5px; line-height: 30px; color: var(--mb-ink); overflow-wrap: anywhere;
	background-image: repeating-linear-gradient(to bottom, transparent 0 29px, var(--mb-rule) 29px 30px); background-position: 0 -2px; }
.mb-letter__body img { max-width: 100%; }
.mb-letter__sign { display: flex; align-items: center; justify-content: flex-end; gap: 14px; margin-top: 10px; }
.mb-letter__sig { font: 400 22px/1.2 var(--mb-hand); color: var(--mb-indigo); }
.mb-letter__sig::before { content: "— "; }
.post_meta { font-size: 12px; color: var(--mb-ink-3); }
.post_meta:empty { display: none; }
.mb-letter__ctl { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 6px 14px; margin-top: 10px; padding-top: 8px; border-top: 1px dotted var(--mb-hair); }
.postbit_buttons { display: flex; flex-wrap: wrap; gap: 4px 12px; }
.postbit_buttons > a, .postbit_buttons > span > a { font-size: 13px; color: var(--mb-ink-3); padding: 2px 0; }
.postbit_buttons > a:hover { color: var(--mb-red-d); }
.postbit_buttons > a.postbit_quote { color: var(--mb-indigo); }
.signature { margin-top: 10px; padding-top: 8px; border-top: 1px dashed var(--mb-hair); font-size: 13px; color: var(--mb-ink-3); }

/* BB-коды в письмах */
.mb-letter__body p { margin: 0 0 30px; }
blockquote.mycode_quote { margin: 8px 0 14px; padding: 8px 14px 10px; background: rgba(233, 223, 200, .7); border-left: 3px solid var(--mb-indigo); font-size: 15px; line-height: 1.6; color: var(--mb-ink-2); font-style: italic; }
blockquote.mycode_quote > cite { display: block; font-style: normal; font-size: 12.5px; color: var(--mb-indigo); margin-bottom: 3px; }
blockquote.mycode_quote > cite > span { display: none; }
.codeblock { margin: 8px 0 14px; background: #2a2622; color: #f1e8d6; border-radius: 2px; overflow: hidden; }
.codeblock .title { padding: 4px 12px; font-size: 12px; background: #3a342e; color: #cdbfa6; }
.codeblock .body { padding: 10px 12px; overflow-x: auto; font: 13.5px/1.5 ui-monospace, Menlo, Consolas, monospace; }
.codeblock code { font: inherit; white-space: pre; }
ul.mycode_list, ol.mycode_list { margin: 0 0 8px; padding-left: 26px; }
hr.mycode_hr { border: 0; border-top: 1px solid var(--mb-rule); margin: 14px 0; }
.mycode_u { text-decoration: underline; }
.mycode_s { text-decoration: line-through; }
.mycode_img { max-width: 100%; }
.video_embed, iframe { max-width: 100%; }

.mb-guest { margin: 18px 0; padding: 18px 22px; background: var(--mb-sheet); border: 1px dashed var(--mb-ink-3); display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 4px 16px; align-items: center; }
.mb-guest p { margin: 0; font-size: 14px; color: var(--mb-ink-2); }
.mb-guest .mb-guest__t { font-weight: 700; color: var(--mb-ink); font-size: 16px; }
.mb-guest .button { grid-row: 1 / span 2; grid-column: 2; }
.mb-nextprev { display: flex; justify-content: space-between; gap: 14px; margin: 18px 0 0; font-size: 14px; }
.mb-tools { margin-top: 14px; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px; font-size: 13px; }
.mb-tools .thread_tools { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 4px 16px; }
.mb-tools .thread_tools li { background: none !important; padding: 0; }

/* ------------------------------------------------------------------ визитка участника */
.mb-prof { max-width: 980px; margin: 20px auto 0; padding: 0 20px; }
.mb-mp { position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 26px; padding: 28px 30px 26px 46px; background: #fffdf8; border: 1px solid var(--mb-hair); box-shadow: var(--mb-shadow); }
.mb-mp::before { content: "名片"; position: absolute; left: 0; top: 0; bottom: 0; width: 26px; background: var(--mb-red); color: #fff3ec; font: 400 14px/26px var(--mb-cjk); writing-mode: vertical-rl; text-align: center; letter-spacing: .6em; padding-top: 18px; }
.mb-mp__k { margin: 0; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--mb-ink-3); }
.mb-mp__name { margin: 4px 0 6px; font: 700 34px/1.15 var(--mb-f); overflow-wrap: anywhere; }
.mb-mp__rank { margin: 0 0 14px; }
.mb-mp__dl { margin: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 26px; }
.mb-mp__dl div { display: grid; grid-template-columns: 120px minmax(0, 1fr); gap: 10px; padding: 6px 0; border-bottom: 1px dotted var(--mb-hair); font-size: 14.5px; }
.mb-mp__dl dt { font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: var(--mb-red-d); padding-top: 2px; }
.mb-mp__dl dd { margin: 0; }
.mb-mp__links { margin: 14px 0 0; display: flex; flex-wrap: wrap; gap: 6px 18px; font-size: 14px; }
.mb-mp__seal { position: absolute; right: 26px; top: 22px; }
.mb-album, .mb-plist { margin-top: 26px; }
.mb-album__p { margin: -4px 0 14px; color: var(--mb-ink-3); font-size: 14px; }
.mb-ladder { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; }
.mb-ladder li { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 8px; padding: 14px 8px 12px; background: var(--mb-sheet); border: 1px solid var(--mb-hair); }
.mb-ladder li.is-next { background: transparent; border-style: dashed; }
.mb-ladder li.is-next .mb-badge { --c: #b2a690; background: transparent; color: #b2a690; outline-style: dashed; }
.mb-ladder li.is-now { border-color: var(--mb-red); box-shadow: 0 0 0 1px var(--mb-red) inset; }
.mb-ladder__t { font: 700 14px/1.25 var(--mb-f); }
.mb-ladder__n { font-size: 12px; color: var(--mb-ink-3); }
.mb-plist__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.mb-plist__i { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 14px; align-items: start; padding: 14px 16px; background: var(--mb-sheet); border: 1px solid var(--mb-hair); }
.mb-plist__k { margin: 0; display: flex; flex-wrap: wrap; gap: 4px 10px; align-items: center; font-size: 12.5px; color: var(--mb-ink-3); }
.mb-plist__t { display: block; margin-top: 4px; font: 700 16px/1.3 var(--mb-f); color: var(--mb-ink); }
.mb-plist__m { margin: 4px 0 0; font-size: 12.5px; color: var(--mb-ink-3); }
.mb-prof__extra { margin-top: 20px; }

/* ------------------------------------------------------------------ сообщения, ошибки */
.mb-msg { max-width: 760px; margin: 50px auto; padding: 26px 28px; display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 24px; align-items: start; background: var(--mb-sheet); border: 1px solid var(--mb-hair); box-shadow: var(--mb-shadow); }
.mb-msg__stamp { width: 86px; height: 86px; border: 3px double var(--mb-red); border-radius: 50%; display: grid; place-items: center; align-content: center; color: var(--mb-red); transform: rotate(-12deg); filter: url(#mb-ink); }
.mb-msg__stamp span { font: 400 34px/1 var(--mb-brush); }
.mb-msg__stamp i { font: italic 400 11px var(--mb-f); }
.mb-msg__stamp--ok { border-color: var(--mb-jade); color: var(--mb-jade); }
.mb-msg__t { font-size: 24px; }
.mb-msg__body { margin-top: 10px; color: var(--mb-ink-2); font-size: 15px; }
.mb-msg__body ol, .mb-msg__body ul { padding-left: 20px; }
.mb-msg__foot { margin: 14px 0 0; }
.mb-page--redirect .mb-msg { margin-top: 18vh; }

/* ------------------------------------------------------------------ подвал */
.mb-foot { margin-top: 40px; border-top: 1px solid var(--mb-ink); box-shadow: 0 -3px 0 -2px var(--mb-paper), 0 -4px 0 -2px var(--mb-red); background: rgba(233, 223, 200, .55); }
.mb-foot__in { max-width: 1360px; margin: 0 auto; padding: 22px 24px 26px; display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); gap: 14px 40px; }
.mb-foot__brand { display: flex; gap: 14px; align-items: flex-start; }
.mb-foot__brand p { margin: 0; font-size: 14px; color: var(--mb-ink-2); max-width: 56ch; }
.mb-foot__links { display: flex; flex-wrap: wrap; gap: 6px 18px; font-size: 14px; align-content: start; }
.mb-foot__links a { color: var(--mb-ink-2); }
.mb-foot__note, .mb-foot__motto { margin: 0; font-size: 12.5px; color: var(--mb-ink-3); }
.mb-foot__motto span { color: var(--mb-red); letter-spacing: .14em; margin-right: 6px; }

/* ------------------------------------------------------------------ вход, меню участника */
.mb-login__h { margin: 0; font: 700 18px var(--mb-f); }
.mb-login__p { margin: 4px 0 12px; font-size: 13px; color: var(--mb-ink-3); }
.mb-field { margin: 0 0 10px; display: flex; flex-direction: column; gap: 4px; font-size: 13px; color: var(--mb-ink-2); }
.mb-field--row { flex-direction: row; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 6px; }
.mb-field .textbox { width: 100%; }
.mb-field .button { width: 100%; }
.mb-check-l { display: inline-flex; align-items: center; gap: 6px; }
.mb-meb__who { display: flex; gap: 10px; align-items: center; margin: 0 0 10px; }
.mb-meb__who span { display: flex; flex-direction: column; font-size: 13px; }
.mb-meb__who b { font-size: 16px; }
.mb-meb__links { list-style: none; margin: 0; padding: 0; }
.mb-meb__links a { display: block; padding: 7px 2px; border-bottom: 1px dotted var(--mb-hair); font-size: 14px; color: var(--mb-ink-2); }
.mb-pm[data-n="0"] { display: none; }

/* ------------------------------------------------------------------ стандартные элементы MyBB */
.textbox, input[type="text"], input[type="password"], input[type="email"], input[type="search"], input[type="number"], input[type="url"], select, textarea {
	font: 400 15px var(--mb-f); color: var(--mb-ink); background: #fffdf8; border: 1px solid var(--mb-hair); border-radius: 2px; padding: 7px 10px; max-width: 100%; }
textarea { line-height: 1.6; }
.textbox:focus, input:focus, select:focus, textarea:focus { outline: none; border-color: var(--mb-indigo); box-shadow: 0 0 0 3px rgba(43, 70, 102, .14); }
.button, button.button, input.button, input[type="submit"], input[type="button"], a.button {
	display: inline-flex; align-items: center; justify-content: center; gap: 6px; padding: 9px 18px; font: 700 14px/1.1 var(--mb-f); color: #fff7f1; background: var(--mb-ink); border: 1px solid var(--mb-ink); border-radius: 2px; cursor: pointer; text-decoration: none; }
.button:hover, input[type="submit"]:hover, a.button:hover { background: var(--mb-red-d); border-color: var(--mb-red-d); color: #fff; }
.new_reply_button, .new_thread_button { background: var(--mb-red); border-color: var(--mb-red); }
.closed_button { background: none; color: var(--mb-ink-3); border-style: dashed; cursor: default; }
.mb-main > table, .mb-main > form, .mb-main > .tborder, .mb-main > div:not([class]), .mb-main > br + table { max-width: 1312px; margin-left: auto !important; margin-right: auto !important; }
.mb-main > table, .mb-main > form > table, .mb-main > div:not([class]) { width: calc(100% - 48px); }
.mb-main > form, .mb-main > .float_left, .mb-main > .float_right { padding: 0 24px; }
.tborder { width: 100%; margin: 18px auto; border-collapse: collapse; background: var(--mb-sheet); border: 1px solid var(--mb-hair); box-shadow: var(--mb-shadow); }
.tborder td, .tborder th { padding: 10px 14px; border-bottom: 1px solid var(--mb-hair-2); vertical-align: top; font-size: 14.5px; text-align: left; }
.thead { background: var(--mb-ink); color: #f8f0e2; }
.thead, .thead a, .thead strong { color: #f8f0e2; font-weight: 700; }
.tcat { background: var(--mb-paper-d); color: var(--mb-ink-2); font-size: 13px; }
.tcat a { color: var(--mb-ink); }
.trow1 { background: var(--mb-sheet); }
.trow2 { background: #f8f2e5; }
.trow_shaded, .trow_deleted { background: var(--mb-red-l); }
.tfoot { background: var(--mb-paper-d); }
.smalltext { font-size: 13px; color: var(--mb-ink-3); }
.largetext { font-size: 18px; font-weight: 700; }
.float_left { float: left; } .float_right { float: right; }
.clear { clear: both; }
.hidden { display: none; }
.pagination { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; font-size: 13px; }
.pagination .pages { color: var(--mb-ink-3); margin-right: 6px; }
.pagination a, .pagination .pagination_current { min-width: 30px; height: 30px; padding: 0 8px; display: inline-grid; place-items: center; border: 1px solid var(--mb-hair); background: var(--mb-sheet); color: var(--mb-ink-2); }
.pagination .pagination_current { background: var(--mb-red); border-color: var(--mb-red); color: #fff; font-weight: 700; }
.pagination a:hover { border-color: var(--mb-red); color: var(--mb-red-d); }
.error, .red_alert, .pm_alert { max-width: 1312px; margin: 14px auto; padding: 12px 16px; background: var(--mb-red-l); border: 1px solid rgba(178, 48, 43, .35); color: var(--mb-red-d); font-size: 14px; }
.error ul { margin: 6px 0 0; padding-left: 20px; }
.success_message { color: var(--mb-jade); }
.modal { display: none; width: min(600px, calc(100vw - 24px)); text-align: left; background: var(--mb-sheet); color: var(--mb-ink); border: 1px solid var(--mb-ink); box-shadow: 0 30px 60px -20px rgba(0, 0, 0, .4); padding: 18px; }
.modal a.close-modal { position: absolute; top: -10px; right: -10px; width: 28px; height: 28px; background: var(--mb-ink); border-radius: 50%; display: grid; place-items: center; text-indent: -9999px; overflow: hidden; }
.modal a.close-modal::after { content: "×"; text-indent: 0; color: #fff; position: absolute; inset: 0; display: grid; place-items: center; font-size: 18px; }
.blocker { position: fixed; inset: 0; z-index: 1000; padding: 20px; box-sizing: border-box; background: rgba(34, 30, 26, .55); text-align: center; overflow: auto; }
.blocker::before { content: ""; display: inline-block; height: 100%; vertical-align: middle; margin-right: -.05em; }
.blocker .modal { display: inline-block; vertical-align: middle; position: relative; z-index: 2; }
.popup_menu { background: var(--mb-sheet); border: 1px solid var(--mb-ink); box-shadow: 0 16px 30px -18px rgba(0, 0, 0, .5); padding: 4px 0; }
.popup_menu .popup_item_container a { display: block; padding: 6px 14px; font-size: 14px; color: var(--mb-ink-2); }
.popup_menu .popup_item_container a:hover { background: var(--mb-paper-d); }
.expcolimage { float: right; }
.usercp_nav { width: 220px; }
#quick_reply_form .tborder, #quickreply_e { width: 100%; }
#quick_reply_form { padding: 0; max-width: none; }
.editor_control_bar, .sceditor-container { max-width: 100%; }
.post_body .mycode_url, .mb-main a.mycode_url { word-break: break-word; }

/* ------------------------------------------------------------------ планшет */
@media (max-width: 1180px) {
	.mb-box--index { grid-template-columns: 220px minmax(0, 1fr); }
	.mb-desk { grid-column: 1 / -1; position: static; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); align-items: start; }
	.mb-qs { display: none; position: absolute; top: calc(100% + 4px); right: 12px; left: 12px; margin: 0; z-index: 60; background: var(--mb-sheet); border: 1px solid var(--mb-ink); padding: 14px; box-shadow: 0 30px 60px -30px rgba(60, 40, 18, .55); }
	.mb-qs.is-open { display: block; }
	.mb-qs .textbox { width: 100%; height: 44px; }
	.mb-qs__go { top: 21px; right: 20px; }
	.mb-qs__more { display: block; }
	.mb-iconbtn { display: inline-grid; margin-left: auto; }
	.mb-how__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 960px) {
	.mb-nav { margin-left: 0; }
	.mb-nav__a { padding: 8px 8px; }
	.mb-box--forum { grid-template-columns: 200px minmax(0, 1fr); }
	.mb-ladder { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* ------------------------------------------------------------------ телефон */
@media (max-width: 760px) {
	body { font-size: 15px; }
	.mb-top__in { flex-wrap: wrap; padding: 8px 14px; gap: 8px 10px; }
	.mb-logo { gap: 9px; min-width: 0; flex: 1 1 auto; }
	.mb-logo__seal { width: 38px; height: 38px; font-size: 14px; }
	.mb-logo__txt b { font-size: 18px; }
	.mb-logo__txt i { font-size: 11px; }
	.mb-logo__txt i span { display: none; }
	.mb-iconbtn { margin-left: 0; width: 38px; height: 38px; }
	.mb-me { height: 38px; padding-right: 10px; }
	.mb-me > span { max-width: 84px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
	.mb-nav { order: 5; flex-basis: 100%; justify-content: space-between; border-top: 1px solid var(--mb-hair-2); padding-top: 4px; gap: 0; }
	.mb-nav__a { padding: 8px 6px; font-size: 14px; gap: 5px; }
	.mb-cal__in { padding: 5px 14px; gap: 2px 14px; font-size: 12px; }
	.mb-cal__in > span + span::before { margin-right: 2px; }
	.mb-cal__n { margin-left: 0; }
	.mb-cal__l [data-cal="lunar-ru"] { display: none; }
	.mb-pop__in { padding: 14px 14px 16px; }
	.mb-crumbs-row { padding: 8px 14px 0; }
	.mb-crumbs .active { max-width: 100%; }

	.mb-box { padding: 0 10px; margin-top: 12px; gap: 14px; }
	.mb-box--index, .mb-box--forum { grid-template-columns: minmax(0, 1fr); }
	.mb-folders { position: static; order: 0; min-width: 0; }
	.mb-folders__h, .mb-folders__total { display: none; }
	.mb-folders > .mb-folders__list { display: flex; gap: 6px; overflow-x: auto; overscroll-behavior-x: contain; scrollbar-width: none; padding: 2px 2px 6px; -webkit-mask: linear-gradient(90deg, #000 88%, transparent); mask: linear-gradient(90deg, #000 88%, transparent); }
	.mb-folders > .mb-folders__list::-webkit-scrollbar { display: none; }
	.mb-folders > .mb-folders__list .mb-fgroup, .mb-folders > .mb-folders__list ul { display: contents; }
	.mb-folders > .mb-folders__list .mb-fgroup__h { display: none; }
	.mb-folders > .mb-folders__list li { flex: 0 0 auto; }
	.mb-folders > .mb-folders__list .mb-folder { grid-template-columns: 22px auto auto; gap: 6px; padding: 5px 10px 5px 5px; border: 1px solid var(--mb-hair); background: var(--mb-sheet); font-size: 13.5px; white-space: nowrap; border-radius: 16px; }
	.mb-folders > .mb-folders__list .mb-folder.is-on::before { display: none; }
	.mb-folders > .mb-folders__list .mb-folder.is-on { border-color: var(--mb-red); }
	.mb-folder__g { width: 22px; height: 22px; font-size: 13px; border-radius: 50%; }
	.mb-folders__list--panel { columns: 1; }
	.mb-inbox { order: 1; }
	.mb-desk { order: 2; grid-template-columns: minmax(0, 1fr); }

	.mb-inbox__head { flex-direction: column; padding: 16px 14px 14px; gap: 12px; }
	.mb-h1 { font-size: 25px; }
	.mb-lead { font-size: 14px; }
	.mb-compose.is-off { max-width: none; }
	.mb-compose-d__p { left: 0; right: auto; width: min(300px, calc(100vw - 40px)); }
	.mb-tabs { padding: 0 6px; gap: 0; }
	.mb-tab { padding: 10px 7px 9px; font-size: 13.5px; }
	.mb-mail { grid-template-columns: 40px minmax(0, 1fr) 40px; gap: 2px 10px; padding: 13px 12px 12px 12px; }
	.mb-mail__dot { position: absolute; left: 4px; top: 12px; width: 7px; height: 7px; margin: 0; }
	.mb-mail .mb-face { width: 40px; height: 40px; font-size: 13px; }
	.mb-mail__subj { font-size: 16px; }
	.mb-mail__snip { -webkit-line-clamp: 2; font-size: 13.5px; }
	.mb-mail__from { font-size: 13px; gap: 2px 8px; }
	.mb-mail__post { gap: 4px; }
	.mb-mail__stamp { width: 38px; height: 46px; }
	.mb-mail__stamp .mb-pm { display: none; }
	.mb-mail__stamp .mb-marka { right: 0; }
	.mb-mail__time { font-size: 11.5px; }
	.mb-inbox__more { padding: 12px 14px 14px; }

	.mb-dcal, .mb-word { padding: 14px 14px 16px; }
	.mb-sheet__d { font-size: 46px; }
	.mb-sheet--lunar .mb-sheet__d { font-size: 32px; }
	.mb-how { padding: 0 10px; margin-top: 22px; }
	.mb-how__list { grid-template-columns: minmax(0, 1fr); gap: 10px; }

	.mb-fhead { grid-template-columns: auto minmax(0, 1fr); gap: 14px; padding: 16px 14px 14px; }
	.mb-fhead__marka .mb-marka--l { --h: 3px; --s: 8px; width: 60px; height: 72px; padding: 5px; }
	.mb-fhead__marka .mb-marka--l .mb-marka__in b { font-size: 30px; }
	.mb-fhead__marka .mb-marka--l .mb-marka__in i { font-size: 8px; margin-top: 4px; }
	.mb-fhead__act { grid-column: 1 / -1; }
	.mb-fhead__d { font-size: 14px; }
	.mb-sort { padding: 0 14px 10px; }
	.mb-bar { padding: 12px 14px; }

	.mb-corr { padding: 0 10px; margin-top: 12px; }
	.mb-env { padding: 6px; }
	.mb-env__in { padding: 14px 14px 14px; }
	.mb-zip li { width: 19px; height: 23px; font-size: 15px; }
	.mb-zip { gap: 3px; }
	.mb-env__avia { display: none; }
	.mb-env__post { width: 96px; height: 70px; }
	.mb-env__post .mb-marka--l { --h: 3px; --s: 8px; width: 56px; height: 66px; padding: 5px; }
	.mb-env__post .mb-marka--l .mb-marka__in b { font-size: 28px; }
	.mb-env__post .mb-marka--l .mb-marka__in i { font-size: 7.5px; margin-top: 3px; }
	.mb-env__post .mb-pm { width: 78px; top: 20px; }
	.mb-env__addr { margin-top: 8px; }
	.mb-env__post { height: 66px; }
	.mb-env__h1 { font-size: 22px; }
	.mb-env__dl { gap: 4px 16px; font-size: 13px; }
	.mb-env__wax { width: 40px; height: 40px; font-size: 22px; right: 12px; bottom: 12px; }
	.mb-env__people { padding-right: 52px; }

	.mb-letter { margin: 14px 0; }
	.mb-letter:not(.mb-letter--first):not(.mb-letter--op) { margin-left: 0; }
	.mb-letter--op { margin-right: 0; }
	.mb-letter__sheet { padding: 14px 14px 12px 24px; }
	.mb-letter__sheet::before { left: 10px; width: 3px; }
	.mb-letter__head { grid-template-columns: auto minmax(0, 1fr) 44px; gap: 10px; }
	.mb-letter__photo .mb-face { width: 40px; height: 40px; }
	.mb-letter__f { grid-template-columns: 38px minmax(0, 1fr); gap: 6px; }
	.mb-letter__f dt { font-size: 10px; letter-spacing: .08em; }
	.mb-letter__f dd { font-size: 13.5px; gap: 2px 8px; }
	.mb-letter__nick { font-size: 15px; }
	.mb-letter__stamp { width: 44px; height: 54px; }
	.mb-letter__stamp .mb-marka { --h: 2.2px; --s: 6px; width: 40px; height: 48px; top: 0; }
	.mb-letter__stamp .mb-marka__in b { font-size: 20px; }
	.mb-letter__stamp .mb-marka__in i { display: none; }
	.mb-letter__stamp .mb-pm { display: none; }
	.mb-letter__body { font-size: 15.5px; line-height: 28px; background-image: repeating-linear-gradient(to bottom, transparent 0 27px, var(--mb-rule) 27px 28px); }
	.mb-letter__body p { margin-bottom: 28px; }
	.mb-letter__sig { font-size: 19px; }
	.mb-letter__sign .mb-seal { width: 34px; height: 34px; font-size: 13px; }
	.mb-guest { grid-template-columns: minmax(0, 1fr); }
	.mb-guest .button { grid-row: auto; grid-column: auto; justify-self: start; margin-top: 8px; }
	.mb-nextprev { flex-direction: column; }

	.mb-prof { padding: 0 10px; }
	.mb-mp { grid-template-columns: minmax(0, 1fr); padding: 20px 16px 18px 36px; gap: 14px; }
	.mb-mp::before { width: 20px; font-size: 12px; line-height: 20px; }
	.mb-mp__photo .mb-face--xl { width: 112px; height: 112px; font-size: 38px; }
	.mb-mp__seal { right: 14px; top: 16px; }
	.mb-mp__seal .mb-seal--l { width: 56px; height: 56px; font-size: 20px; }
	.mb-mp__name { font-size: 26px; }
	.mb-mp__dl { grid-template-columns: minmax(0, 1fr); }
	.mb-mp__dl div { grid-template-columns: 104px minmax(0, 1fr); font-size: 14px; }
	.mb-ladder { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
	.mb-plist__list { grid-template-columns: minmax(0, 1fr); }

	.mb-msg { margin: 24px 10px; grid-template-columns: minmax(0, 1fr); padding: 20px 16px; gap: 14px; }
	.mb-foot__in { grid-template-columns: minmax(0, 1fr); padding: 18px 14px 22px; }

	.mb-main > table, .mb-main > form > table, .mb-main > div:not([class]) { width: calc(100% - 20px); }
	.mb-main > form, .mb-main > .float_left, .mb-main > .float_right { padding: 0 10px; }
	.tborder { display: block; overflow-x: auto; }
	.tborder td, .tborder th { padding: 8px 10px; }
	.usercp_nav { width: auto; }
	.float_left, .float_right { float: none; }
}
@media (max-width: 380px) {
	.mb-logo__txt i { display: none; }
	.mb-nav__a svg { display: none; }
	.mb-cal__c { display: none !important; }
}
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { transition: none !important; animation: none !important; }
}

/* ------------------------------------------------------------------ ссылки в сообщениях: свой стиль форума
 * «Мазок туши»: под словом кистевой штрих, толстый в начале и сужающийся к концу, с сухими прожилками;
 * без подчёркивания и без значка у внешних ссылок. Наведение — штрих становится киноварным и плотнее. */
:is(.post_body, .signature, [class*="-post__body"], [class*="-post__sign"]) a.mycode_url {
	color: #1f3a5c;
	font-weight: 700;
	text-decoration: none;
	padding-bottom: 3px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 12' preserveAspectRatio='none'%3E%3Cpath fill='%23221e1a' fill-opacity='.58' d='M1.5 4.6C22 3.1 48 3.4 78 4.4s64 2.6 92 4.2c11 .6 21 1.2 28.5 1.8v.5c-17-.1-42-.6-70-1.2S47 9 27 9.6C14 10 6 10.3 2.2 10.1.6 8.8.2 6 1.5 4.6z'/%3E%3Cpath fill='%23fcf8ef' fill-opacity='.55' d='M12 6.6c24-.7 52-.4 82 .7l-.2.6c-30-.8-57-1-81.7-.6zM8 8.6c20-.4 40-.3 62 .2v.4c-22-.3-42-.3-62 0z'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-size: 100% 7px;
	background-position: 0 100%;
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
	transition: background-size .2s ease, color .2s ease;
}
:is(.post_body, .signature, [class*="-post__body"], [class*="-post__sign"]) a.mycode_url:hover {
	color: #8b211c;
	background-size: 100% 9px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 12' preserveAspectRatio='none'%3E%3Cpath fill='%23b2302b' fill-opacity='.8' d='M1.5 4.6C22 3.1 48 3.4 78 4.4s64 2.6 92 4.2c11 .6 21 1.2 28.5 1.8v.5c-17-.1-42-.6-70-1.2S47 9 27 9.6C14 10 6 10.3 2.2 10.1.6 8.8.2 6 1.5 4.6z'/%3E%3Cpath fill='%23fcf8ef' fill-opacity='.45' d='M12 6.6c24-.7 52-.4 82 .7l-.2.6c-30-.8-57-1-81.7-.6z'/%3E%3C/svg%3E");
}
:is(.post_body, .signature, [class*="-post__body"], [class*="-post__sign"]) a.mycode_url::after { content: none; }
