/* Сутки в Коломне — тема «Пастила»: светлая тёплая бумага, слои пастилы (розовый, сливочный, яблочный),
   клюквенный и кирпичный красный кремлёвских стен. Главная — лонгрид по времени суток, «Часы суток»,
   схема Коломны как навигация, переписка пузырями. Шрифты: Kurale (заголовки), Vollkorn (текст). Префикс классов kl-. */

@font-face { font-family: 'Kurale'; font-style: normal; font-display: swap; font-weight: 400; src: url(fonts/kurale-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: 'Kurale'; font-style: normal; font-display: swap; font-weight: 400; src: url(fonts/kurale-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+20AC, U+2122, U+2190-2193, U+2212, U+FEFF, U+FFFD; }
@font-face { font-family: 'Vollkorn'; font-style: normal; font-display: swap; font-weight: 400 900; src: url(fonts/vollkorn-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: 'Vollkorn'; font-style: normal; font-display: swap; font-weight: 400 900; src: url(fonts/vollkorn-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+2000-206F, U+20AC, U+2122, U+2190-2193, U+2212, U+FEFF, U+FFFD; }
@font-face { font-family: 'Vollkorn'; font-style: italic; font-display: swap; font-weight: 400 900; src: url(fonts/vollkorn-cyrillic-wght-italic.woff2) format('woff2-variations'); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: 'Vollkorn'; font-style: italic; font-display: swap; font-weight: 400 900; src: url(fonts/vollkorn-latin-wght-italic.woff2) format('woff2-variations'); unicode-range: U+0000-00FF, U+2000-206F, U+20AC, U+2122, U+FEFF, U+FFFD; }

:root {
	--cream: #fbf3e6; --paper: #fffaf2; --milk: #fffdf9; --line: #ead8c4; --line-2: #dcc3ab;
	--pink: #f1c7c0; --pink-2: #f8e1dc; --cr: #fff1dc; --apple: #b5d48a; --apple-2: #e4efd2;
	--cran: #a3243f; --cran-dk: #7d1830; --brick: #b0452f; --brick-dk: #86311f; --green: #5d8a2e; --green-dk: #44691f;
	--water: #a9cbd5; --water-dk: #6d9aa8; --plum: #6d3a58; --gold: #c9a25a;
	--ink: #3b2620; --ink-2: #634b42; --ink-3: #85695e;
	--f-head: 'Kurale', 'Georgia', 'Times New Roman', serif;
	--f-text: 'Vollkorn', 'Georgia', 'PT Serif', serif;
	--wrap: 1200px; --bar-h: 62px;
	--sh-1: 0 1px 0 rgba(125, 24, 48, .05), 0 8px 22px -10px rgba(110, 50, 30, .22);
	--sh-2: 0 2px 0 rgba(125, 24, 48, .05), 0 18px 40px -18px rgba(110, 50, 30, .32);
	/* цвета глав */
	--c-utro: #d0705f; --c-utro-dk: #9a4a3d; --c-utro-bg: #fdeee6;
	--c-den: #6f9a3c; --c-den-dk: #44691f; --c-den-bg: #fbf5e7;
	--c-vecher: #a3243f; --c-vecher-dk: #7d1830; --c-vecher-bg: #f9e5e2;
	--c-noch: #6d3a58; --c-noch-dk: #4f2840; --c-noch-bg: #efe7f0;
	--c-vtoroy-den: #b0452f; --c-vtoroy-den-dk: #86311f; --c-vtoroy-den-bg: #eef5e4;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: calc(var(--bar-h) + 12px); }
body {
	margin: 0; min-width: 320px; overflow-x: hidden; color: var(--ink); font: 400 17.5px/1.6 var(--f-text);
	background: var(--cream);
	background-image: radial-gradient(rgba(176, 69, 47, .05) 1px, transparent 1.4px), radial-gradient(rgba(93, 138, 46, .045) 1px, transparent 1.4px);
	background-size: 26px 26px, 34px 34px; background-position: 0 0, 13px 17px;
}
img, svg { max-width: 100%; }
a { color: var(--cran); text-decoration-thickness: 1px; text-underline-offset: 3px; }
a:hover { color: var(--cran-dk); }
:focus-visible { outline: 3px solid rgba(163, 36, 63, .45); outline-offset: 2px; border-radius: 4px; }
h1, h2, h3, h4 { margin: 0; font-weight: 400; }
p { margin: 0 0 .7em; }
button { font: inherit; }
[hidden] { display: none !important; }
.kl-skip { position: absolute; left: -9999px; top: 8px; z-index: 100; padding: 8px 14px; background: var(--cran); color: #fff; border-radius: 8px; }
.kl-skip:focus { left: 12px; }
.kl-site { min-height: 100vh; display: flex; flex-direction: column; }
.kl-main { flex: 1 0 auto; width: 100%; max-width: var(--wrap); margin: 0 auto; padding: 0 20px 48px; }
.kl-page--index .kl-main { max-width: none; padding: 0; }
.kl-h1 { font: 400 clamp(32px, 4vw, 50px)/1.08 var(--f-head); color: var(--cran-dk); letter-spacing: -.01em; }
.kl-h2 { font: 400 clamp(25px, 2.6vw, 33px)/1.15 var(--f-head); color: var(--ink); }
.kl-h3 { font: 400 22px/1.2 var(--f-head); color: var(--ink); }
.kl-kicker { margin: 0 0 8px; font: italic 500 15.5px/1.3 var(--f-text); color: var(--ink-3); letter-spacing: .01em; }
.kl-kicker a { color: inherit; text-decoration: none; }
.kl-kicker a:hover { color: var(--cran); }
.kl-more { display: inline-flex; align-items: center; gap: 6px; font-weight: 600; text-decoration: none; color: var(--cran); border-bottom: 1.5px dotted rgba(163, 36, 63, .5); }
.kl-more:hover { border-bottom-style: solid; }
.kl-empty { list-style: none; padding: 18px; color: var(--ink-3); font-style: italic; }

/* ---------------------------------------------------------------- шапка: полоса с логотипом, часами, картой и входом */
.kl-top { position: sticky; top: 0; z-index: 60; background: rgba(251, 243, 230, .94); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); border-bottom: 1px solid var(--line); }
.kl-top__bar { display: flex; align-items: center; gap: 14px; max-width: var(--wrap); height: var(--bar-h); margin: 0 auto; padding: 0 20px; }
.kl-logo { display: inline-flex; align-items: center; gap: 10px; margin-right: auto; text-decoration: none; color: var(--cran-dk); min-width: 0; }
.kl-logo__mark { flex: none; filter: drop-shadow(0 2px 3px rgba(125, 24, 48, .18)); }
.kl-logo__name { font: 400 25px/1 var(--f-head); white-space: nowrap; }
.kl-logo__name i { margin: 0 .22em; font-style: italic; font-family: var(--f-text); font-size: .74em; color: var(--brick); }
.kl-top__clock { display: inline-flex; align-items: center; gap: 9px; padding: 4px 12px 4px 4px; border-radius: 999px; text-decoration: none; color: var(--ink); background: var(--paper); box-shadow: inset 0 0 0 1px var(--line); }
.kl-top__clock:hover { box-shadow: inset 0 0 0 1.5px var(--cran); color: var(--ink); }
.kl-top__clock .kl-dial { width: 40px; height: 40px; flex: none; }
.kl-top__time { display: grid; line-height: 1.05; }
.kl-top__time b { font: 700 16px/1.1 var(--f-text); font-variant-numeric: lining-nums tabular-nums; }
.kl-top__time i { font-size: 13px; color: var(--ink-3); }
.kl-top__btn { display: inline-flex; align-items: center; gap: 8px; height: 44px; padding: 0 14px; border: 0; border-radius: 999px; background: var(--paper); color: var(--ink); box-shadow: inset 0 0 0 1px var(--line); cursor: pointer; font: 600 15.5px/1 var(--f-text); }
.kl-top__btn:hover, .kl-top__btn[aria-expanded="true"] { box-shadow: inset 0 0 0 1.5px var(--cran); color: var(--cran-dk); }
.kl-top__btn--map { display: none; }
.kl-top__btn--me .kl-face { margin-left: -8px; }
.kl-top__btn--me .kl-key { color: var(--cran); }
.kl-top__me { position: relative; }
.kl-pop { position: absolute; z-index: 70; background: var(--milk); border-radius: 18px; box-shadow: 0 0 0 1px var(--line), 0 24px 50px -16px rgba(80, 30, 20, .35); }
.kl-pop--me { right: 0; top: calc(100% + 10px); width: min(340px, calc(100vw - 24px)); padding: 18px; }
.kl-drop { left: 0; right: 0; top: var(--bar-h); max-height: calc(100vh - var(--bar-h)); overflow: auto; border-radius: 0 0 22px 22px; padding: 14px 16px 18px; }
.kl-drop__h { margin: 0 0 8px; font: italic 15px/1.3 var(--f-text); color: var(--ink-3); }
.kl-drop__map { border-radius: 16px; overflow: hidden; }
.kl-drop__list { display: grid; gap: 14px; margin-top: 14px; }
.kl-drop__ch h3 { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; margin: 0 0 6px; padding-bottom: 4px; border-bottom: 2px solid var(--chc, var(--line)); font: 400 20px/1.2 var(--f-head); }
.kl-drop__ch h3 a { color: var(--chd, var(--ink)); text-decoration: none; }
.kl-drop__ch h3 span { font-size: 14px; font-family: var(--f-text); color: var(--ink-3); }
.kl-drop__ch ul { list-style: none; margin: 0; padding: 0; }
.kl-drop__a { display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 4px 6px; border-radius: 10px; color: var(--ink); text-decoration: none; }
.kl-drop__a b { width: 24px; font-variant-numeric: tabular-nums; color: var(--ink-3); text-align: right; }
.kl-drop__a:hover, .kl-drop__a.is-on { background: var(--pink-2); color: var(--cran-dk); }
.kl-login__p { margin: 0 0 12px; color: var(--ink-2); font-size: 15.5px; }
.kl-field { margin: 0 0 10px; }
.kl-field label { display: block; margin-bottom: 4px; font-size: 14.5px; color: var(--ink-2); }
.kl-field .textbox { width: 100%; }
.kl-field--row { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; font-size: 14.5px; }
.kl-field--row label { display: inline-flex; gap: 6px; align-items: center; margin: 0; }
.kl-field .button { width: 100%; }
.kl-me__who { display: flex; gap: 12px; align-items: center; margin: 0 0 12px; }
.kl-me__who span { display: grid; }
.kl-me__who b { font: 400 20px/1.2 var(--f-head); }
.kl-me__who a { font-size: 14.5px; }
.kl-me__links { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--line); }
.kl-me__links a { display: flex; justify-content: space-between; min-height: 42px; align-items: center; color: var(--ink); text-decoration: none; border-bottom: 1px dashed var(--line); }
.kl-me__links a:hover { color: var(--cran); }
.kl-pm[data-n="0"] { display: none; }
.kl-pm { min-width: 22px; padding: 0 6px; border-radius: 99px; background: var(--cran); color: #fff; font-size: 13px; text-align: center; }

/* полоса-карта под шапкой */
.kl-strip { border-bottom: 1px solid var(--line); background: linear-gradient(180deg, var(--paper), var(--cream)); }
.kl-strip__in { max-width: var(--wrap); margin: 0 auto; padding: 2px 20px 0; }
.kl-strip__svg { display: block; width: 100%; height: auto; max-height: 70px; overflow: visible; }
.kl-strip__river { fill: none; stroke: var(--water); stroke-width: 9; stroke-linecap: round; opacity: .75; }
.kl-strip__oka { fill: none; stroke: var(--water); stroke-width: 12; opacity: .55; }
.kl-strip__rail { stroke: #9a7f70; stroke-width: 1.4; } .kl-strip__ties { stroke: #9a7f70; stroke-width: 5; stroke-dasharray: 1.5 6; }
.kl-strip__seg { stroke-width: 3; stroke-linecap: round; }
.kl-strip__ch { font: italic 600 11px var(--f-text); fill: var(--ink-3); letter-spacing: .04em; }
.kl-strip__dot { fill: var(--paper); stroke-width: 3; transition: r .15s; }
.kl-strip__lbl { font: 500 12.5px var(--f-text); fill: var(--ink-2); }
.kl-strip__pin { cursor: pointer; }
.kl-strip__pin:hover .kl-strip__dot, .kl-strip__pin:focus-visible .kl-strip__dot, .kl-strip__pin.is-on .kl-strip__dot { r: 9; fill: currentColor; }
.kl-strip__pin:hover .kl-strip__lbl, .kl-strip__pin.is-on .kl-strip__lbl { fill: var(--cran-dk); font-weight: 700; }
.kl-strip__pin:focus { outline: none; }
.kl-strip__pin:focus-visible .kl-strip__lbl { text-decoration: underline; }
.kl-strip__pin--utro, .kl-strip__seg--utro { color: var(--c-utro); }
.kl-strip__pin--den, .kl-strip__seg--den { color: var(--c-den); }
.kl-strip__pin--vecher, .kl-strip__seg--vecher { color: var(--c-vecher); }
.kl-strip__pin--noch, .kl-strip__seg--noch { color: var(--c-noch); }
.kl-strip__pin--vtoroy-den, .kl-strip__seg--vtoroy-den { color: var(--c-vtoroy-den); }
.kl-strip__seg, .kl-strip__dot { stroke: currentColor; }

.kl-crumbs-wrap { max-width: var(--wrap); width: 100%; margin: 0 auto; padding: 14px 20px 0; }
.kl-page--index .kl-crumbs-wrap { display: none; }
.kl-crumbs { display: flex; flex-wrap: wrap; gap: 2px 8px; font-size: 15px; color: var(--ink-3); }
.kl-crumbs a { color: var(--ink-2); text-decoration: none; }
.kl-crumbs a:hover { color: var(--cran); text-decoration: underline; }
.kl-crumbs .active { color: var(--ink-3); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 60ch; }

/* ---------------------------------------------------------------- цвета глав */
[data-ch="utro"] { --chc: var(--c-utro); --chd: var(--c-utro-dk); --chb: var(--c-utro-bg); }
[data-ch="den"] { --chc: var(--c-den); --chd: var(--c-den-dk); --chb: var(--c-den-bg); }
[data-ch="vecher"] { --chc: var(--c-vecher); --chd: var(--c-vecher-dk); --chb: var(--c-vecher-bg); }
[data-ch="noch"] { --chc: var(--c-noch); --chd: var(--c-noch-dk); --chb: var(--c-noch-bg); }
[data-ch="vtoroy-den"] { --chc: var(--c-vtoroy-den); --chd: var(--c-vtoroy-den-dk); --chb: var(--c-vtoroy-den-bg); }
[class*="--utro"] { --chc: var(--c-utro); --chd: var(--c-utro-dk); --chb: var(--c-utro-bg); }
[class*="--den"] { --chc: var(--c-den); --chd: var(--c-den-dk); --chb: var(--c-den-bg); }
[class*="--vecher"] { --chc: var(--c-vecher); --chd: var(--c-vecher-dk); --chb: var(--c-vecher-bg); }
[class*="--noch"] { --chc: var(--c-noch); --chd: var(--c-noch-dk); --chb: var(--c-noch-bg); }
[class*="--vtoroy-den"] { --chc: var(--c-vtoroy-den); --chd: var(--c-vtoroy-den-dk); --chb: var(--c-vtoroy-den-bg); }

/* пиктограммы разделов */
.kl-ico { flex: none; }
.kl-ico__bg { fill: var(--chb); stroke: var(--chc); stroke-width: 1; stroke-opacity: .5; }
.kl-ico__g { fill: none; stroke: var(--chd); stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.kl-ico__g .f { fill: var(--chd); stroke: none; }

/* метки, лица, звания */
.kl-tag { display: inline-flex; align-items: center; height: 24px; padding: 0 10px; border-radius: 999px; font: 600 13.5px/1 var(--f-text); white-space: nowrap; }
.kl-tag--ask { background: #f8e1dc; color: #8e2a3a; }
.kl-tag--report { background: #e4efd2; color: #3f6219; }
.kl-tag--route { background: #fbe9c6; color: #7a4a0e; }
.kl-tag--tip { background: #e3edf0; color: #2f5d6b; }
.kl-tag--choice { background: #ece1ee; color: #5a2f4a; }
.kl-face { display: inline-grid; place-items: center; flex: none; border-radius: 50%; overflow: hidden; background: var(--pink-2); box-shadow: 0 0 0 2px var(--milk), 0 0 0 3.5px var(--line-2); font: 400 15px/1 var(--f-head); color: var(--cran-dk); }
.kl-face img { width: 100%; height: 100%; object-fit: cover; display: block; }
.kl-face--xs { width: 22px; height: 22px; font-size: 10px; box-shadow: 0 0 0 1.5px var(--milk); }
.kl-face--s { width: 30px; height: 30px; font-size: 12.5px; }
.kl-face--m { width: 42px; height: 42px; font-size: 16px; }
.kl-face--l { width: 54px; height: 54px; font-size: 20px; }
.kl-face--xl { width: 164px; height: 164px; font-size: 56px; box-shadow: 0 0 0 5px var(--milk), 0 0 0 9px var(--pink), 0 0 0 13px var(--cr), 0 0 0 17px var(--apple); }
.kl-mono-0 { background: #f8dcd6; color: #8e2a3a; } .kl-mono-1 { background: #fbebcf; color: #7a4a0e; } .kl-mono-2 { background: #e2edcf; color: #3f6219; }
.kl-mono-3 { background: #ecdfee; color: #5a2f4a; } .kl-mono-4 { background: #dde9ec; color: #2f5d6b; }
.kl-rank { display: inline-flex; align-items: center; gap: 5px; font-size: 14px; color: var(--ink-2); }
.kl-badge { flex: none; }
.kl-badge__rim { fill: none; stroke: var(--cran-dk); stroke-width: 1.1; stroke-opacity: .55; }
.kl-badge__dust { stroke: #fff; stroke-width: 1; stroke-linecap: round; opacity: .85; }
.kl-rep { font-size: 14px; color: var(--ink-3); white-space: nowrap; }
.kl-rep b { color: var(--green-dk); font-weight: 700; }
.kl-rep--zero b { color: var(--ink-3); }
.kl-op { display: inline-block; padding: 1px 8px; border-radius: 999px; background: var(--cran); color: #fff; font-size: 12.5px; font-weight: 600; }

/* ---------------------------------------------------------------- «Часы суток» */
.kl-dial { display: block; width: 100%; height: auto; overflow: visible; }
.kl-dial__rim { fill: var(--line); }
.kl-dial__arc { stroke: var(--milk); stroke-width: 2; transition: transform .2s, filter .2s; transform-origin: 200px 200px; }
.kl-dial__sec--utro .kl-dial__arc { fill: #f3c7b9; }
.kl-dial__sec--den .kl-dial__arc { fill: #cfe2ac; }
.kl-dial__sec--vecher .kl-dial__arc { fill: #e9a3a8; }
.kl-dial__sec--noch .kl-dial__arc { fill: #c9b2c8; }
.kl-dial__sec--vtoroy-den .kl-dial__arc { fill: #f0d3a5; }
.kl-dial__sec:hover .kl-dial__arc, .kl-dial__sec:focus-visible .kl-dial__arc, .kl-dial__sec.is-hot .kl-dial__arc { transform: scale(1.025); filter: saturate(1.35) brightness(.97); }
.kl-dial__sec:focus { outline: none; }
.kl-dial__sec.is-now .kl-dial__arc { stroke: var(--cran-dk); stroke-width: 3; }
.kl-dial__lbl { font: 400 21px var(--f-head); fill: var(--ink); letter-spacing: .02em; pointer-events: none; }
.kl-dial__lbl--in { font-size: 15.5px; fill: var(--brick-dk); }
.kl-dial__tick { stroke: var(--ink-3); stroke-width: 1.4; }
.kl-dial__tick.is-long { stroke: var(--ink-2); stroke-width: 2.4; }
.kl-dial__num { font: 600 15px var(--f-text); fill: var(--ink-2); font-variant-numeric: lining-nums; }
.kl-dial__hand { transform-origin: 200px 200px; transition: transform .7s cubic-bezier(.3, 1.4, .5, 1); }
.kl-dial__needle { fill: var(--cran-dk); }
.kl-dial__tip { fill: #ffd98f; stroke: var(--cran-dk); stroke-width: 3; }
.kl-dial__hub { fill: var(--milk); stroke: var(--line-2); stroke-width: 1.5; }
.kl-dial--mini .kl-dial__hub { fill: var(--cran-dk); stroke: none; }
.kl-dial--mini .kl-dial__arc { stroke-width: 6; }
.kl-dial--mini .kl-dial__needle { fill: var(--cran-dk); }
.kl-dial--mini .kl-dial__sec.is-now .kl-dial__arc { stroke: var(--milk); stroke-width: 6; }
.kl-dial__now-k { font: italic 15px var(--f-text); fill: var(--ink-3); }
.kl-dial__now { font: 400 50px var(--f-head); fill: var(--cran-dk); }
.kl-dial__now-ch { font: 600 14.5px var(--f-text); fill: var(--ink-2); }

/* ---------------------------------------------------------------- главная: пролог */
.kl-hero { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr); gap: 40px; align-items: center; max-width: var(--wrap); margin: 0 auto; padding: 40px 20px 36px; }
.kl-hero__h1 { font-size: clamp(46px, 6.6vw, 88px); line-height: .98; margin: 0 0 18px; }
.kl-hero__h1 i { font-family: var(--f-text); font-size: .5em; color: var(--brick); vertical-align: .2em; }
.kl-hero__lead { max-width: 36em; margin: 0 0 22px; font-size: 19.5px; line-height: 1.55; color: var(--ink-2); }
.kl-toc { list-style: none; margin: 0 0 16px; padding: 0; display: grid; gap: 6px; max-width: 560px; }
.kl-toc__i a { position: relative; display: grid; grid-template-columns: 82px minmax(0, auto) 1fr; align-items: baseline; gap: 14px; padding: 9px 14px 9px 16px; border-radius: 14px; color: var(--ink); text-decoration: none; background: var(--paper); box-shadow: inset 0 0 0 1px var(--line); overflow: hidden; }
.kl-toc__i a::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 6px; background: var(--chc); }
.kl-toc__i time { font: 700 16px var(--f-text); font-variant-numeric: lining-nums tabular-nums; color: var(--chd); }
.kl-toc__i b { font: 400 21px/1.1 var(--f-head); font-weight: 400; }
.kl-toc__i span { font-size: 15.5px; color: var(--ink-3); }
.kl-toc__i a:hover { box-shadow: inset 0 0 0 1.5px var(--chc); }
.kl-toc__i.is-now a { background: linear-gradient(90deg, var(--chb), var(--paper) 70%); box-shadow: inset 0 0 0 1.5px var(--chc); }
.kl-toc__i.is-now span::after { content: ' · сейчас'; color: var(--chd); font-weight: 700; }
.kl-hero__total { font-size: 16px; color: var(--ink-3); }
.kl-hero__total b { color: var(--cran-dk); }
.kl-hero__clock { display: grid; justify-items: center; gap: 14px; }
.kl-clock { width: min(440px, 100%); aspect-ratio: 1; filter: drop-shadow(0 26px 30px rgba(110, 50, 30, .18)); }
.kl-clock__nav { display: flex; align-items: center; gap: 10px; }
.kl-clock__step { width: 44px; height: 44px; border: 0; border-radius: 50%; background: var(--paper); box-shadow: inset 0 0 0 1px var(--line); color: var(--cran-dk); font-size: 20px; cursor: pointer; }
.kl-clock__step:hover { box-shadow: inset 0 0 0 1.5px var(--cran); }
.kl-clock__go { display: inline-flex; align-items: center; min-height: 44px; padding: 0 20px; border-radius: 999px; background: var(--cran); color: #fff; font-weight: 600; text-decoration: none; box-shadow: 0 6px 16px -6px rgba(125, 24, 48, .6); }
.kl-clock__go:hover { background: var(--cran-dk); color: #fff; }
.kl-clock__cap { max-width: 30em; margin: 0; text-align: center; font-size: 15px; font-style: italic; color: var(--ink-3); }

/* карта на главной */
.kl-mapbox { max-width: var(--wrap); margin: 0 auto 44px; padding: 0 20px; }
.kl-mapbox__head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 6px 24px; margin-bottom: 14px; }
.kl-mapbox__head p { margin: 0; max-width: 44em; color: var(--ink-3); font-size: 16px; }
.kl-mapbox__grid { display: grid; grid-template-columns: minmax(0, 2.2fr) minmax(0, 1fr); gap: 18px; padding: 14px; border-radius: 26px; background: var(--milk); box-shadow: var(--sh-2), inset 0 0 0 1px var(--line); }
.kl-map { border-radius: 18px; overflow: hidden; }
.kl-map__svg { display: block; width: 100%; height: auto; }
.kl-map__paper { fill: #fbf1e2; }
.kl-map__street { fill: none; stroke: #dfc6ae; stroke-width: 3; stroke-linecap: round; }
.kl-map__blocks rect { fill: #f0dcc6; stroke: #e2c7ad; }
.kl-map__trees circle { fill: #a9c97a; }
.kl-map__river { fill: none; stroke: #a9cbd5; stroke-width: 30; stroke-linecap: round; }
.kl-map__river--oka { stroke-width: 46; }
.kl-map__shine { fill: none; stroke: #e2f0f3; stroke-width: 3; stroke-linecap: round; stroke-dasharray: 26 16; }
.kl-map__creek { fill: none; stroke: #a9cbd5; stroke-width: 8; stroke-linecap: round; }
.kl-map__water { font: italic 600 19px var(--f-text); fill: #5f8d9b; letter-spacing: .06em; }
.kl-map__water--s { font-size: 14px; }
.kl-map__rail { fill: none; stroke: #8a6a5c; stroke-width: 2.4; }
.kl-map__rail-ties { fill: none; stroke: #8a6a5c; stroke-width: 9; stroke-dasharray: 2 9; }
.kl-map__st rect { fill: var(--paper); stroke: #6f4a3f; stroke-width: 2.4; }
.kl-map__st text, .kl-map__mon text { font: 600 15px var(--f-text); fill: var(--ink-2); paint-order: stroke; stroke: #fbf1e2; stroke-width: 4px; stroke-linejoin: round; }
.kl-map__road { fill: none; stroke: #e5cfb8; stroke-width: 14; stroke-linecap: round; }
.kl-map__road-c { fill: none; stroke: #fffaf2; stroke-width: 2; stroke-dasharray: 10 8; }
.kl-map__from { font: italic 14px var(--f-text); fill: var(--ink-3); }
.kl-map__promenade { fill: none; stroke: var(--cran); stroke-width: 3; stroke-linecap: round; stroke-dasharray: 1 7; opacity: .7; }
.kl-map__route { fill: none; stroke: var(--brick); stroke-width: 3; stroke-dasharray: 10 7; opacity: .55; animation: kl-route 14s linear infinite; }
.kl-map__kremlin { fill: #f1c7c0; stroke: var(--brick); stroke-width: 7; stroke-linejoin: round; }
.kl-map__towers circle { fill: var(--brick); }
.kl-map__church rect { fill: #fffaf2; stroke: var(--brick-dk); stroke-width: 1.6; }
.kl-map__church circle { fill: var(--gold); }
.kl-map__mon path { fill: #fffaf2; stroke: #9fae8c; stroke-width: 2; }
.kl-map__mon circle { fill: #7fae64; }
.kl-map__rose path { fill: #e8d4c0; } .kl-map__rose .n { fill: var(--cran); }
.kl-map__rose text { font: 600 13px var(--f-text); fill: var(--ink-3); }
.kl-pin { cursor: pointer; }
.kl-pin__halo { fill: var(--chc); opacity: 0; transition: opacity .15s; }
.kl-pin__dot { fill: var(--chc); stroke: #fffaf2; stroke-width: 3; }
.kl-pin__no { font: 700 14px var(--f-text); fill: #fff; pointer-events: none; dominant-baseline: central; }
.kl-pin__lbl { font: 600 16px var(--f-text); fill: var(--chd); paint-order: stroke; stroke: #fbf1e2; stroke-width: 5px; stroke-linejoin: round; pointer-events: none; }
.kl-pin:hover .kl-pin__halo, .kl-pin:focus-visible .kl-pin__halo, .kl-pin.is-hot .kl-pin__halo { opacity: .28; }
.kl-pin:focus { outline: none; }
.kl-pin.is-hot .kl-pin__dot, .kl-pin:hover .kl-pin__dot { fill: var(--chd); }
.kl-legend { list-style: none; margin: 0; padding: 4px 4px 4px 0; display: grid; gap: 12px; align-content: start; }
.kl-legend__ch p { margin: 0 0 4px; padding-bottom: 3px; border-bottom: 2px solid var(--chc); font-size: 14.5px; color: var(--ink-3); }
.kl-legend__ch p b { font: 400 19px var(--f-head); color: var(--chd); margin-right: 6px; }
.kl-legend__ch ol { list-style: none; margin: 0; padding: 0; }
.kl-legend__ch a { display: flex; gap: 10px; align-items: baseline; padding: 3px 6px; border-radius: 8px; color: var(--ink); text-decoration: none; font-size: 16px; line-height: 1.3; }
.kl-legend__ch a b { display: inline-grid; place-items: center; flex: none; width: 22px; height: 22px; border-radius: 50%; background: var(--chc); color: #fff; font-size: 12.5px; }
.kl-legend__ch a:hover, .kl-legend__ch a.is-hot { background: var(--chb); color: var(--chd); }

/* ---------------------------------------------------------------- главы */
.kl-ch { position: relative; padding: 0 0 56px; background: linear-gradient(180deg, var(--chb), color-mix(in srgb, var(--chb) 40%, var(--cream)) 70%, var(--cream)); }
.kl-layers { display: block; width: 100%; height: 34px; margin-bottom: 26px; }
.kl-ch__in { display: grid; grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr); gap: 40px; max-width: var(--wrap); min-height: min(92vh, 980px); margin: 0 auto; padding: 0 20px; align-items: start; }
.kl-ch__head { position: sticky; top: calc(var(--bar-h) + 18px); }
.kl-ch__no { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; margin: 0 0 6px; font-size: 16px; color: var(--chd); }
.kl-ch__no span { font-style: italic; }
.kl-ch__no time { font-weight: 700; font-variant-numeric: lining-nums tabular-nums; letter-spacing: .04em; }
.kl-ch__now { font-style: normal; padding: 2px 10px; border-radius: 999px; background: var(--chc); color: #fff; font-size: 13.5px; font-weight: 600; animation: kl-glow 2.6s ease-in-out infinite; }
.kl-ch__h { display: grid; font: 400 clamp(44px, 5.4vw, 74px)/.98 var(--f-head); color: var(--chd); }
.kl-ch__h span { font-size: .42em; line-height: 1.2; color: var(--ink-2); margin-top: 6px; }
.kl-ch__lead { margin: 14px 0 16px; font-size: 18.5px; color: var(--ink-2); max-width: 32em; }
.kl-ch__art { margin: 0 0 16px; border-radius: 22px; overflow: hidden; box-shadow: var(--sh-1), inset 0 0 0 1px rgba(0, 0, 0, .04); }
.kl-scene { display: block; width: 100%; height: auto; }
.kl-ch__tip { position: relative; padding: 14px 18px 12px 18px; border-radius: 16px; background: var(--milk); box-shadow: inset 0 0 0 1px var(--line); font-size: 16px; color: var(--ink-2); }
.kl-ch__tip b { display: block; margin-bottom: 4px; font: 400 17px var(--f-head); color: var(--chd); }
.kl-ch__tip p { margin: 0; }
.kl-ch__secs { display: grid; gap: 16px; padding-top: 10px; }
.kl-sec { position: relative; padding: 18px 20px 16px; border-radius: 22px; background: var(--milk); box-shadow: var(--sh-1), inset 0 0 0 1px var(--line); overflow: hidden; }
.kl-sec::before { content: ''; position: absolute; left: 0; right: 0; top: 0; height: 6px; background: linear-gradient(var(--pink) 0 33%, var(--cr) 0 66%, var(--apple) 0); opacity: .9; }
.kl-sec__head { display: flex; gap: 14px; align-items: flex-start; padding-right: 44px; }
.kl-sec__h { font: 400 25px/1.15 var(--f-head); }
.kl-sec__h a { color: var(--ink); text-decoration: none; }
.kl-sec__h a:hover { color: var(--chd); }
.kl-sec__d { margin: 4px 0 0; font-size: 15.5px; line-height: 1.45; color: var(--ink-3); }
.kl-sec__no { position: absolute; right: 18px; top: 12px; font: 400 40px/1 var(--f-head); color: var(--chc); opacity: .35; }
.kl-sec__list { list-style: none; margin: 12px 0 10px; padding: 0; border-top: 1px dashed var(--line); }
.kl-item__a { display: grid; grid-template-columns: 62px minmax(0, 1fr); gap: 12px; padding: 9px 0; border-bottom: 1px dashed var(--line); color: var(--ink); text-decoration: none; }
.kl-item__t { display: grid; line-height: 1.1; }
.kl-item__t b { font: 700 18px var(--f-text); font-variant-numeric: lining-nums tabular-nums; color: var(--chd); }
.kl-item__t i { font-size: 13px; color: var(--ink-3); }
.kl-item__m { display: grid; gap: 3px; min-width: 0; }
.kl-item__s { font-weight: 600; font-size: 17px; line-height: 1.3; }
.kl-item__w { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; font-size: 14.5px; color: var(--ink-3); }
.kl-item__w .kl-tag { height: 21px; font-size: 12.5px; padding: 0 8px; }
.kl-item__a:hover .kl-item__s { color: var(--chd); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.kl-sec__empty { margin: 12px 0 10px; padding: 12px 14px; border-radius: 14px; background: var(--chb); }
.kl-sec__empty p { margin: 0 0 4px; font: italic 600 14.5px var(--f-text); color: var(--chd); }
.kl-sec__empty ul { margin: 0; padding: 0; list-style: none; display: grid; gap: 4px; }
.kl-sec__empty li { position: relative; padding-left: 20px; font-size: 16px; line-height: 1.4; color: var(--ink-2); }
.kl-sec__empty li::before { content: ''; position: absolute; left: 0; top: .5em; width: 11px; height: 8px; border-radius: 2px; background: linear-gradient(var(--pink) 0 33%, #fff 0 66%, var(--apple) 0); box-shadow: 0 0 0 1px rgba(125, 24, 48, .2); }
.kl-sec__go { display: inline-flex; align-items: center; min-height: 40px; padding: 0 16px; border-radius: 999px; background: var(--chb); color: var(--chd); font-weight: 600; font-size: 15.5px; text-decoration: none; box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--chc) 40%, transparent); }
.kl-sec__go::after { content: '→'; margin-left: 8px; transition: transform .15s; }
.kl-sec__go:hover { color: var(--chd); background: color-mix(in srgb, var(--chb) 60%, var(--chc) 18%); }
.kl-sec__go:hover::after { transform: translateX(3px); }
.kl-ch--noch .kl-ch__in { background-image: radial-gradient(circle, rgba(109, 58, 88, .22) 1.2px, transparent 1.8px); background-size: 46px 52px; }

.kl-epi { padding: 10px 20px 48px; }
.kl-epi__in { max-width: 820px; margin: 0 auto; padding: 26px 28px; border-radius: 24px; background: var(--milk); box-shadow: var(--sh-1), inset 0 0 0 1px var(--line); text-align: center; }
.kl-epi__in p { color: var(--ink-2); }
.kl-epi__links { display: flex; justify-content: center; gap: 24px; flex-wrap: wrap; margin: 0; }

/* плавающие часы при прокрутке глав */
.kl-float { position: fixed; right: 22px; bottom: 22px; z-index: 50; display: flex; align-items: center; gap: 10px; padding: 6px 16px 6px 6px; border-radius: 999px; background: rgba(255, 253, 249, .96); box-shadow: var(--sh-2), inset 0 0 0 1px var(--line); color: var(--ink); text-decoration: none; animation: kl-in .3s ease-out; }
.kl-float .kl-dial { width: 62px; height: 62px; }
.kl-float .kl-dial__hand { transition: transform .25s linear; }
.kl-float__t { display: grid; font-size: 13.5px; line-height: 1.2; color: var(--ink-3); }
.kl-float__t b { font: 700 18px var(--f-text); font-variant-numeric: lining-nums tabular-nums; color: var(--cran-dk); }

/* ---------------------------------------------------------------- раздел */
.kl-fhead { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 24px; align-items: center; margin: 16px 0 20px; padding: 24px 26px; border-radius: 26px; background: linear-gradient(120deg, var(--chb), var(--milk) 75%); box-shadow: var(--sh-1), inset 0 0 0 1px var(--line); position: relative; overflow: hidden; }
.kl-fhead::after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 7px; background: linear-gradient(var(--pink) 0 33%, var(--cr) 0 66%, var(--apple) 0); }
.kl-fhead__art { position: relative; }
.kl-fhead__no { position: absolute; right: -8px; bottom: -6px; display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: var(--chc); color: #fff; font: 700 16px var(--f-text); box-shadow: 0 0 0 3px var(--milk); }
.kl-fhead--cat .kl-fhead__art { width: 260px; border-radius: 18px; overflow: hidden; }
.kl-fhead__d { margin: 8px 0 6px; max-width: 46em; color: var(--ink-2); font-size: 17px; }
.kl-fhead__n { margin: 0; font-size: 15px; color: var(--ink-3); }
.kl-fhead .kl-kicker a { color: var(--chd); font-style: italic; }
.kl-tl { margin-bottom: 16px; }
.kl-tl__head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 20px; margin-bottom: 8px; }
.kl-filter { display: flex; flex-wrap: wrap; gap: 6px; }
.kl-chip { min-height: 36px; padding: 0 14px; border: 0; border-radius: 999px; background: var(--paper); box-shadow: inset 0 0 0 1px var(--line); color: var(--ink-2); font-size: 15px; cursor: pointer; }
.kl-chip:hover { box-shadow: inset 0 0 0 1.5px var(--cran); }
.kl-chip.is-on { background: var(--cran); color: #fff; box-shadow: none; }
.kl-sort { display: flex; flex-wrap: wrap; gap: 4px 14px; margin: 0 0 12px; font-size: 15px; color: var(--ink-3); }
.kl-sort a { color: var(--ink-2); }
.kl-tl__list { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.kl-row { display: grid; grid-template-columns: 72px minmax(0, 1fr) auto auto; gap: 16px; align-items: center; padding: 14px 18px; border-radius: 18px; background: var(--milk); box-shadow: inset 0 0 0 1px var(--line); position: relative; }
.kl-row::before { content: ''; position: absolute; left: 0; top: 14px; bottom: 14px; width: 5px; border-radius: 0 4px 4px 0; background: linear-gradient(var(--pink) 0 33%, var(--cr) 0 66%, var(--apple) 0); }
.kl-row:hover { box-shadow: inset 0 0 0 1.5px var(--line-2), var(--sh-1); }
.kl-row__time { display: grid; line-height: 1.1; text-align: center; padding: 6px 0; border-radius: 12px; background: var(--chb, var(--pink-2)); }
.kl-row__time b { font: 700 19px var(--f-text); font-variant-numeric: lining-nums tabular-nums; color: var(--chd, var(--cran-dk)); }
.kl-row__time i { font-size: 12.5px; color: var(--ink-3); }
.kl-row__top { display: flex; flex-wrap: wrap; gap: 4px 10px; align-items: center; margin: 0 0 3px; font-size: 14px; color: var(--ink-3); }
.kl-row__h { font: 600 19px/1.3 var(--f-text); }
.kl-row__t { color: var(--ink); text-decoration: none; }
.kl-row__t:hover { color: var(--cran); text-decoration: underline; }
.kl-row__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; margin: 6px 0 0; font-size: 14.5px; color: var(--ink-3); }
.kl-row__by a { color: var(--ink-2); font-weight: 600; }
.kl-row__n { display: grid; justify-items: center; min-width: 70px; padding: 6px 10px; border-radius: 14px; text-decoration: none; color: var(--ink-3); font-size: 13px; }
.kl-row__n b { font: 400 26px/1 var(--f-head); color: var(--cran-dk); }
.kl-row__n:hover { background: var(--pink-2); }
.kl-pages { font-size: 14px; color: var(--ink-3); }
.kl-pages a { margin: 0 2px; }
.kl-sep { list-style: none; margin: 8px 0 0; font: italic 600 15px var(--f-text); color: var(--ink-3); }
.kl-steps { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 26px 0 0; }
.kl-step { display: grid; padding: 14px 18px; border-radius: 18px; background: var(--paper); box-shadow: inset 0 0 0 1px var(--line); color: var(--ink); text-decoration: none; font: 400 20px/1.2 var(--f-head); }
.kl-step span { font: italic 14.5px var(--f-text); color: var(--ink-3); }
.kl-step--next { grid-column: 2; text-align: right; }
.kl-step:hover { box-shadow: inset 0 0 0 1.5px var(--cran); color: var(--cran-dk); }
.kl-subs { margin: 0 0 18px; }
.kl-subs__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 12px; }
.kl-subrow { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 14px; padding: 16px 18px; border-radius: 20px; background: var(--milk); box-shadow: inset 0 0 0 1px var(--line); }
.kl-subrow__h { font: 400 23px/1.2 var(--f-head); }
.kl-subrow__h a { color: var(--ink); text-decoration: none; }
.kl-subrow__h a:hover { color: var(--cran); }
.kl-subrow__d { margin: 4px 0 6px; font-size: 15.5px; color: var(--ink-3); }
.kl-subrow__last { margin: 0; font-size: 14.5px; color: var(--ink-3); }
.kl-subrow__lt span { font-style: italic; }
.kl-subrow__n { grid-column: 2; font-size: 14px; color: var(--ink-3); }
.kl-subcat__t { margin: 18px 0 8px; font: 400 26px var(--f-head); }

/* ---------------------------------------------------------------- тема: переписка пузырями */
.kl-page--thread .kl-main { max-width: 940px; }
.kl-thead { margin: 16px 0 14px; padding: 22px 26px 18px; border-radius: 26px; background: linear-gradient(135deg, var(--chb), var(--milk) 70%); box-shadow: var(--sh-1), inset 0 0 0 1px var(--line); position: relative; overflow: hidden; }
.kl-thead::after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 6px; background: linear-gradient(var(--pink) 0 33%, var(--cr) 0 66%, var(--apple) 0); }
.kl-thead__k { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; margin: 0 0 10px; font-size: 15.5px; }
.kl-thead__f a { color: var(--chd); font-weight: 700; text-decoration: none; }
.kl-thead__f a:hover { text-decoration: underline; }
.kl-thead__ch { color: var(--ink-3); font-style: italic; }
.kl-thead__h1 { font-size: clamp(28px, 3.4vw, 42px); color: var(--ink); }
.kl-thead__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 18px; margin: 14px 0 8px; font-size: 15.5px; color: var(--ink-3); }
.kl-thead__by { display: inline-flex; align-items: center; gap: 8px; }
.kl-thead__by b { color: var(--ink); }
.kl-thead__people { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; margin: 0; font-size: 14.5px; color: var(--ink-3); }
.kl-stack { display: inline-flex; padding-left: 8px; }
.kl-stack .kl-face { margin-left: -8px; }
.kl-chat { position: relative; padding: 18px 18px 8px; border-radius: 26px; background: var(--paper); box-shadow: inset 0 0 0 1px var(--line);
	background-image: radial-gradient(rgba(176, 69, 47, .06) 1px, transparent 1.5px); background-size: 20px 20px; }
.kl-dayline { display: flex; align-items: center; gap: 12px; margin: 10px 0 14px; color: var(--ink-3); font-size: 14.5px; font-style: italic; }
.kl-dayline::before, .kl-dayline::after { content: ''; flex: 1; height: 1px; background: var(--line); }
.kl-dayline span { padding: 3px 14px; border-radius: 999px; background: var(--milk); box-shadow: inset 0 0 0 1px var(--line); }
.kl-msg { display: flex; gap: 12px; align-items: flex-start; margin: 0 0 16px; }
.kl-msg--mine { flex-direction: row-reverse; }
.kl-msg__face { flex: none; padding-top: 26px; }
.kl-msg__col { display: flex; flex-direction: column; min-width: 0; max-width: min(680px, 84%); }
.kl-msg--mine .kl-msg__col { align-items: flex-end; }
.kl-msg__who { display: flex; flex-wrap: wrap; align-items: center; gap: 3px 10px; margin: 0 6px 5px; font-size: 14.5px; }
.kl-msg--mine .kl-msg__who { justify-content: flex-end; }
.kl-msg__nick a { color: var(--ink); font-weight: 700; font-size: 16px; text-decoration: none; }
.kl-msg__nick a:hover { color: var(--cran); }
.kl-msg__facts { flex-basis: 100%; font-size: 13.5px; color: var(--ink-3); font-style: italic; }
.kl-msg--mine .kl-msg__facts { text-align: right; }
.kl-bubble { position: relative; min-width: 120px; padding: 12px 16px 24px; border-radius: 6px 22px 22px 22px; background: var(--milk); box-shadow: 0 1px 0 rgba(110, 50, 30, .06), 0 6px 16px -10px rgba(110, 50, 30, .3), inset 0 0 0 1px var(--line); }
.kl-msg--mine .kl-bubble { border-radius: 22px 6px 22px 22px; background: #f9e0db; box-shadow: 0 1px 0 rgba(125, 24, 48, .06), 0 6px 16px -10px rgba(125, 24, 48, .35), inset 0 0 0 1px #efc6bf; }
.kl-msg--first .kl-bubble { padding-top: 14px; }
.kl-msg--first.kl-msg--mine .kl-bubble { background: linear-gradient(180deg, #f9e0db, #fbe9e4); }
.kl-bubble__body { font-size: 17.5px; line-height: 1.62; overflow-wrap: anywhere; }
.kl-bubble__body > :last-child { margin-bottom: 0; }
.kl-bubble__time { position: absolute; right: 14px; bottom: 6px; font-size: 13px; color: var(--ink-3); text-decoration: none; font-variant-numeric: lining-nums tabular-nums; }
.kl-bubble__time:hover { color: var(--cran); }
.kl-msg--mine .kl-bubble__time { color: #9a6a6a; }
.kl-bubble .signature { margin-top: 10px; padding-top: 8px; border-top: 1px dashed var(--line-2); font-size: 14.5px; color: var(--ink-3); }
.kl-msg .post_meta { font-size: 13px; color: var(--ink-3); margin: 4px 8px 0; }
.kl-msg .post_meta:empty { display: none; }
.kl-msg__tools { display: flex; flex-wrap: wrap; gap: 2px 8px; margin: 4px 6px 0; opacity: .62; transition: opacity .15s; }
.kl-msg:hover .kl-msg__tools, .kl-msg:focus-within .kl-msg__tools { opacity: 1; }
.kl-msg--mine .kl-msg__tools { justify-content: flex-end; }
.postbit_buttons { display: flex; flex-wrap: wrap; gap: 2px 10px; }
.postbit_buttons a { display: inline-flex; align-items: center; min-height: 30px; color: var(--ink-3); font-size: 14px; text-decoration: none; background: none !important; padding: 0 !important; }
.postbit_buttons a:hover { color: var(--cran); text-decoration: underline; }
.postbit_buttons a span { background: none !important; padding: 0 !important; }
.kl-bubble__body blockquote, .kl-bubble__body .mycode_quote { margin: 4px 0 10px; padding: 8px 12px; border-left: 4px solid var(--cran); border-radius: 4px 12px 12px 4px; background: rgba(255, 255, 255, .62); font-size: 16px; color: var(--ink-2); }
.kl-bubble__body blockquote cite, .mycode_quote cite { display: block; font-style: normal; font-weight: 700; font-size: 14px; color: var(--cran-dk); margin-bottom: 2px; }
.kl-bubble__body blockquote cite > span { display: none; }
.kl-bubble__body img { max-width: 100%; height: auto; border-radius: 10px; }
.codeblock, .kl-bubble__body pre { margin: 8px 0; padding: 10px 12px; border-radius: 12px; background: #3b2620; color: #fbe9d6; font: 14px/1.5 ui-monospace, Menlo, Consolas, monospace; overflow-x: auto; }
.codeblock .title { font-size: 12px; color: #e3c2ad; margin-bottom: 4px; }
.mycode_list, .kl-bubble__body ul, .kl-bubble__body ol { padding-left: 1.3em; }
.kl-guest { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 20px; margin: 18px 0; padding: 16px 20px; border-radius: 20px; background: var(--pink-2); }
.kl-guest p { margin: 0; color: var(--ink-2); }
.kl-nextprev { display: flex; justify-content: space-between; gap: 12px; margin: 18px 0 8px; font-size: 15.5px; }
.kl-tools { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px; font-size: 14.5px; }
.thread_tools { list-style: none; display: flex; flex-wrap: wrap; gap: 4px 16px; margin: 0; padding: 0; }
.thread_tools li { background: none !important; padding: 0 !important; }
.thread_tools a { color: var(--ink-3); }
.kl-bar { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 10px; margin: 12px 0; }
.kl-bar__r { display: flex; flex-wrap: wrap; gap: 10px 16px; align-items: center; font-size: 15px; }
#quick_reply_form .tborder { margin-top: 16px; }

/* ---------------------------------------------------------------- профиль: открытка гостя */
.kl-visitor { margin-top: 18px; }
.kl-postcard { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); border-radius: 22px; background: var(--milk); box-shadow: var(--sh-2), inset 0 0 0 1px var(--line); position: relative; overflow: hidden; }
.kl-postcard::before { content: ''; position: absolute; left: 0; right: 0; top: 0; height: 10px; background: repeating-linear-gradient(-45deg, var(--cran) 0 12px, var(--milk) 0 20px, var(--green) 0 32px, var(--milk) 0 40px); opacity: .55; }
.kl-postcard__l { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 26px; align-items: center; padding: 40px 32px 30px; border-right: 2px dashed var(--line-2); }
.kl-postcard__photo { margin: 0; padding: 18px; }
.kl-postcard__name { font-size: clamp(30px, 3.4vw, 44px); overflow-wrap: anywhere; }
.kl-postcard__rank { margin: 10px 0 12px; }
.kl-postcard__rank .kl-rank { font-size: 16px; }
.kl-postcard__links { display: flex; flex-wrap: wrap; gap: 6px 16px; margin: 0; font-size: 15px; }
.kl-postcard__r { padding: 26px 30px 26px; }
.kl-postcard__stamp { width: 210px; margin: -8px -10px 4px auto; }
.kl-stamp { display: block; width: 100%; height: auto; }
.kl-stamp__t { font: 700 10.5px var(--f-text); fill: var(--brick-dk); letter-spacing: .16em; }
.kl-stamp__pt { font: 700 10px var(--f-text); fill: #7d1830; letter-spacing: .14em; }
.kl-stamp__pd { font: 700 13px var(--f-text); fill: #7d1830; letter-spacing: .04em; }
.kl-postcard__addr { clear: none; margin: 0; display: grid; gap: 2px; }
.kl-postcard__addr div { display: grid; grid-template-columns: 140px minmax(0, 1fr); gap: 10px; padding: 7px 0 5px; border-bottom: 1.5px dotted var(--line-2); }
.kl-postcard__addr dt { font-style: italic; color: var(--ink-3); font-size: 15px; }
.kl-postcard__addr dd { margin: 0; font-size: 17px; }
.kl-visitor__grid { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 20px; margin-top: 20px; }
.kl-ladder, .kl-plist { padding: 20px 22px; border-radius: 22px; background: var(--milk); box-shadow: inset 0 0 0 1px var(--line); }
.kl-ladder__list { list-style: none; margin: 12px 0 0; padding: 0; display: grid; gap: 6px; }
.kl-ladder__list li { display: grid; grid-template-columns: 30px minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 6px 10px; border-radius: 12px; opacity: .55; }
.kl-ladder__list li.is-past { opacity: .85; }
.kl-ladder__list li.is-now { opacity: 1; background: var(--pink-2); box-shadow: inset 0 0 0 1.5px var(--pink); }
.kl-ladder__t { font: 400 18px var(--f-head); }
.kl-ladder__n { font-size: 13.5px; color: var(--ink-3); }
.kl-plist__list { list-style: none; margin: 12px 0 0; padding: 0; }
.kl-plist__i { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 12px; padding: 10px 0; border-bottom: 1px dashed var(--line); }
.kl-plist__k { display: flex; flex-wrap: wrap; gap: 4px 8px; align-items: center; margin: 0 0 2px; font-size: 14px; color: var(--ink-3); }
.kl-plist__t { font-weight: 600; color: var(--ink); text-decoration: none; }
.kl-plist__t:hover { color: var(--cran); text-decoration: underline; }
.kl-plist__m { margin: 2px 0 0; font-size: 14px; color: var(--ink-3); }
.kl-extra { margin-top: 18px; }

/* ---------------------------------------------------------------- сообщения об ошибках и переходах */
.kl-msgbox { display: flex; gap: 22px; align-items: flex-start; max-width: 760px; margin: 40px auto; padding: 26px 28px; border-radius: 24px; background: var(--milk); box-shadow: var(--sh-2), inset 0 0 0 1px var(--line); }
.kl-msgbox__sign { flex: none; }
.kl-msgbox__t { font-size: 32px; margin-bottom: 10px; }
.kl-msgbox__body { color: var(--ink-2); }
.kl-page--redirect { display: grid; place-items: center; min-height: 100vh; padding: 16px; }

/* ---------------------------------------------------------------- стандартные элементы MyBB */
.tborder { width: 100%; margin: 0 0 18px; border-collapse: separate; border-spacing: 0; border-radius: 18px; overflow: hidden; background: var(--milk); box-shadow: var(--sh-1), inset 0 0 0 1px var(--line); }
.thead { padding: 13px 18px; background: linear-gradient(180deg, var(--pink-2), var(--pink-2)); color: var(--cran-dk); border-bottom: 1px solid var(--pink); font: 400 20px/1.25 var(--f-head); text-align: left; }
.thead a, .thead strong { color: var(--cran-dk) !important; font-weight: 400; }
.thead .expcolimage { float: right; }
.tcat { padding: 8px 18px; background: var(--cr); color: var(--ink-2); font: italic 600 14.5px/1.3 var(--f-text); }
.tcat a { color: var(--ink-2); }
.trow1, .trow2, .trow_shaded { padding: 11px 18px; border-bottom: 1px solid var(--line); vertical-align: top; font-size: 16px; }
.trow1 { background: var(--milk); } .trow2 { background: #fdf6ec; }
.trow_shaded { background: #fbe9c6; }
.trow_selected td, .trow_selected { background: #f9e0db !important; }
.tfoot { padding: 10px 18px; background: var(--cr); color: var(--ink-2); }
.tborder td, .tborder th { text-align: left; }
.smalltext { font-size: 14.5px; color: var(--ink-3); }
.largetext { font: 400 21px var(--f-head); }
.float_left { float: left; } .float_right { float: right; }
.clear { clear: both; }
input.textbox, textarea, select, input[type="text"], input[type="password"], input[type="email"], input[type="search"], input[type="number"], input[type="url"] {
	max-width: 100%; padding: 9px 12px; border: 1.5px solid var(--line-2); border-radius: 12px; background: #fff; color: var(--ink); font: 16px/1.35 var(--f-text);
}
textarea { line-height: 1.5; }
input.textbox:focus, textarea:focus, select:focus, input[type="text"]:focus, input[type="password"]:focus, input[type="search"]:focus { border-color: var(--cran); outline: 3px solid rgba(163, 36, 63, .18); outline-offset: 0; }
.button, input.button, button.button, a.button, input[type="submit"], input[type="button"], button[type="submit"] {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 10px 22px; border: 0; border-radius: 999px;
	background: var(--cran); color: #fff !important; font: 600 16px/1.1 var(--f-text); text-decoration: none; cursor: pointer;
	box-shadow: 0 6px 16px -8px rgba(125, 24, 48, .7), inset 0 -2px 0 rgba(0, 0, 0, .14);
}
.button:hover, input.button:hover, input[type="submit"]:hover, button[type="submit"]:hover { background: var(--cran-dk); }
.button span { background: none !important; padding: 0 !important; }
.new_thread_button, .new_reply_button { min-height: 48px; padding: 12px 24px; font-size: 16.5px; }
.closed_button { background: var(--ink-3); box-shadow: none; }
.pagination { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin: 0; font-size: 15px; color: var(--ink-3); }
.pagination .pages { margin-right: 4px; }
.pagination a, .pagination .pagination_current, .pagination .pagination_next, .pagination .pagination_previous {
	display: inline-grid; place-items: center; min-width: 40px; height: 40px; padding: 0 10px; border-radius: 999px; background: var(--paper); box-shadow: inset 0 0 0 1px var(--line); color: var(--ink) !important; text-decoration: none; font-weight: 600;
}
.pagination a:hover { box-shadow: inset 0 0 0 1.5px var(--cran); }
.pagination .pagination_current { background: var(--cran); box-shadow: none; color: #fff !important; }
.popup_menu { z-index: 50; min-width: 190px; padding: 6px 0; border-radius: 14px; background: var(--milk); box-shadow: 0 0 0 1px var(--line), 0 16px 34px -12px rgba(80, 30, 20, .35); }
.popup_menu .popup_item { display: block; padding: 8px 16px; color: var(--ink) !important; text-decoration: none; font-size: 15.5px; }
.popup_menu .popup_item:hover { background: var(--pink-2); }
.popup_menu .popup_item_container { margin: 0; }
.blocker { z-index: 9999 !important; background: rgba(59, 38, 32, .45) !important; }
.modal { max-width: 560px; padding: 0 !important; border-radius: 20px !important; background: var(--milk) !important; color: var(--ink); box-shadow: 0 30px 70px rgba(59, 38, 32, .45) !important; overflow: hidden; }
.modal .tborder { margin: 0; box-shadow: none; border-radius: 0; }
.modal a.close-modal { top: 10px !important; right: 10px !important; }
.error, div.error { margin: 0 0 16px; padding: 12px 16px; border-radius: 14px; background: #fbe7e3; box-shadow: inset 0 0 0 1.5px #e9a3a8; color: #6e1428; }
.error ul { margin: 6px 0 0; padding-left: 1.2em; }
.red_alert, .pm_alert { margin: 14px 0; padding: 11px 16px; border-radius: 14px; background: var(--cr); box-shadow: inset 0 0 0 1.5px #f0d3a5; color: var(--ink); }
.kl-main > table:not(.tborder) td { vertical-align: top; }
.usercp_nav .usercp_nav_item, .modcp_nav_item { display: block; padding: 6px 0 6px 26px; background-position: 0 50%; }
.sceditor-container { max-width: 100%; border-radius: 12px !important; }
.sceditor-container iframe, .sceditor-container textarea { font-size: 16px !important; }
fieldset { border: 1px solid var(--line); border-radius: 14px; padding: 10px 16px; }
legend { font-weight: 700; padding: 0 6px; }
#posts_container { position: relative; }
.post.unapproved_post .kl-bubble, .post.deleted_post .kl-bubble { opacity: .7; }
.ignored_post, .deleted_post_hidden { margin: 0 0 12px; padding: 10px 14px; border-radius: 14px; background: var(--cr); color: var(--ink-3); }
.scaleimages img { max-width: 100%; }
.post_content { padding: 0; }
.kl-modtools .tborder, .kl-tools__mod form { margin-top: 10px; }

/* ---------------------------------------------------------------- подвал */
.kl-foot { margin-top: auto; background: #f6e6d3; }
.kl-foot__layers { display: block; width: 100%; height: 26px; transform: scaleY(-1); background: var(--cream); }
.kl-page--index .kl-foot__layers { background: var(--cream); }
.kl-foot__in { max-width: var(--wrap); margin: 0 auto; padding: 22px 20px 30px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px 30px; }
.kl-foot__brand { margin: 0; font-size: 16px; color: var(--ink-2); }
.kl-foot__brand b { font: 400 21px var(--f-head); color: var(--cran-dk); font-weight: 400; }
.kl-foot__links { display: flex; flex-wrap: wrap; gap: 6px 18px; font-size: 15.5px; }
.kl-foot__links a { color: var(--ink-2); }
.kl-foot__note { grid-column: 1 / -1; margin: 0; font-size: 14px; font-style: italic; color: var(--ink-3); }

/* ---------------------------------------------------------------- анимации */
@keyframes kl-route { to { stroke-dashoffset: -340; } }
@keyframes kl-glow { 0%, 100% { box-shadow: 0 0 0 0 color-mix(in srgb, var(--chc) 50%, transparent); } 60% { box-shadow: 0 0 0 7px transparent; } }
@keyframes kl-in { from { opacity: 0; transform: translateY(8px); } }
@keyframes kl-train { 0% { transform: translateX(-30px); } 100% { transform: translateX(14px); } }
@keyframes kl-twinkle { 0%, 100% { opacity: .9; } 50% { opacity: .25; } }
@keyframes kl-sway { 0%, 100% { opacity: 1; } 50% { opacity: .72; } }
.kl-train { animation: kl-train 9s ease-in-out infinite alternate; }
.kl-stars circle { animation: kl-twinkle 3.2s ease-in-out infinite; animation-delay: calc(var(--i) * -.37s); }
.kl-lamp { animation: kl-sway 4s ease-in-out infinite; }
.kl-dial__sec.is-now .kl-dial__arc { animation: kl-pulse 2.8s ease-in-out infinite; }
@keyframes kl-pulse { 0%, 100% { filter: none; } 50% { filter: saturate(1.5) brightness(.95); } }

/* ---------------------------------------------------------------- адаптивность */
@media (max-width: 1180px) {
	.kl-strip { display: none; }
	.kl-top__btn--map { display: inline-flex; }
}
@media (max-width: 1100px) {
	.kl-mapbox__grid { grid-template-columns: minmax(0, 1fr); }
	.kl-legend { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); }
	.kl-ch__in { grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); gap: 28px; }
}
@media (max-width: 900px) {
	:root { --bar-h: 58px; }
	.kl-strip { display: none; }
	.kl-top__btn--map { display: inline-flex; }
	.kl-top__time i { display: none; }
	.kl-hero { grid-template-columns: minmax(0, 1fr); gap: 24px; padding-top: 26px; }
	.kl-hero__txt { display: contents; }
	.kl-hero > * { min-width: 0; }
	.kl-hero .kl-kicker { order: 1; margin: 0; }
	.kl-hero__h1 { order: 2; margin: 0; }
	.kl-hero__clock { order: 3; }
	.kl-hero__lead { order: 4; margin: 0; }
	.kl-toc { order: 5; margin: 0; }
	.kl-hero__total { order: 6; margin: 0; }
	.kl-hero { gap: 14px; }
	.kl-clock { width: min(330px, 84vw); }
	.kl-ch__in { grid-template-columns: minmax(0, 1fr); min-height: 0; gap: 18px; }
	.kl-ch__head { position: static; }
	.kl-ch__art { max-width: 560px; }
	.kl-fhead { grid-template-columns: auto minmax(0, 1fr); }
	.kl-fhead__act { grid-column: 1 / -1; }
	.kl-fhead--cat .kl-fhead__art { width: 180px; }
	.kl-postcard { grid-template-columns: minmax(0, 1fr); }
	.kl-postcard__l { border-right: 0; border-bottom: 2px dashed var(--line-2); }
	.kl-visitor__grid { grid-template-columns: minmax(0, 1fr); }
	.kl-foot__in { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 640px) {
	body { font-size: 17px; }
	.kl-main { padding: 0 14px 40px; }
	.kl-top__bar { gap: 8px; padding: 0 12px; }
	.kl-logo__mark { width: 32px; height: 32px; }
	.kl-logo__name { font-size: 18px; display: grid; line-height: .98; }
	.kl-logo__name i { margin-left: 0; }
	.kl-map__svg .kl-pin__lbl { display: none; }
	.kl-map__svg .kl-pin__dot { r: 21; }
	.kl-map__svg .kl-pin__no { font-size: 24px; }
	.kl-top__clock { padding: 3px 9px 3px 3px; gap: 6px; }
	.kl-top__clock .kl-dial { width: 34px; height: 34px; }
	.kl-top__time b { font-size: 14.5px; }
	.kl-top__btn { height: 42px; padding: 0 11px; }
	.kl-top__btn span { display: none; }
	.kl-top__btn--me .kl-face { margin-left: 0; }
	.kl-crumbs-wrap { padding: 10px 14px 0; }
	.kl-crumbs .active { max-width: 100%; }
	.kl-hero { padding: 20px 14px 26px; }
	.kl-hero__h1 { font-size: 46px; }
	.kl-hero__lead { font-size: 17.5px; }
	.kl-toc__i a { grid-template-columns: 64px minmax(0, 1fr); gap: 2px 10px; padding: 9px 12px 9px 14px; }
	.kl-toc__i span { grid-column: 2; font-size: 15px; }
	.kl-toc__i b { font-size: 19px; }
	.kl-clock__go { padding: 0 14px; font-size: 15px; }
	.kl-mapbox { padding: 0 10px; margin-bottom: 30px; }
	.kl-mapbox__grid { padding: 8px; border-radius: 20px; }
	.kl-legend { grid-template-columns: minmax(0, 1fr); }
	.kl-ch { padding-bottom: 36px; }
	.kl-ch__in { padding: 0 14px; }
	.kl-layers { height: 24px; margin-bottom: 18px; }
	.kl-ch__h { font-size: 46px; }
	.kl-sec { padding: 16px 14px 14px; border-radius: 18px; }
	.kl-sec__h { font-size: 22px; }
	.kl-sec__head { gap: 10px; padding-right: 30px; }
	.kl-sec__head .kl-ico { width: 34px; height: 34px; }
	.kl-sec__no { font-size: 30px; right: 12px; }
	.kl-item__a { grid-template-columns: 52px minmax(0, 1fr); gap: 10px; }
	.kl-float { right: 12px; bottom: 12px; padding: 4px; }
	.kl-float .kl-dial { width: 50px; height: 50px; }
	.kl-float__t { display: none; }
	.kl-fhead { grid-template-columns: minmax(0, 1fr); gap: 12px; padding: 18px 16px 20px; border-radius: 20px; }
	.kl-fhead__art { justify-self: start; }
	.kl-fhead__art .kl-ico { width: 60px; height: 60px; }
	.kl-fhead--cat { grid-template-columns: minmax(0, 1fr); }
	.kl-fhead--cat .kl-fhead__art { width: 100%; }
	.kl-row { grid-template-columns: 58px minmax(0, 1fr); gap: 4px 12px; padding: 12px 12px 12px 14px; }
	.kl-row__n { grid-column: 2; justify-self: start; display: inline-flex; gap: 6px; align-items: baseline; padding: 0; min-width: 0; }
	.kl-row__n b { font-size: 18px; }
	.kl-row__mod { grid-column: 2; }
	.kl-row__h { font-size: 17.5px; }
	.kl-steps { grid-template-columns: minmax(0, 1fr); }
	.kl-step--next { grid-column: 1; }
	.kl-subs__list { grid-template-columns: minmax(0, 1fr); }
	.kl-thead { padding: 18px 16px 16px; border-radius: 20px; }
	.kl-chat { padding: 12px 8px 4px; border-radius: 20px; }
	.kl-msg { gap: 8px; }
	.kl-msg__face { padding-top: 24px; }
	.kl-msg__face .kl-face { width: 32px; height: 32px; font-size: 13px; }
	.kl-msg__col { max-width: calc(100% - 40px); }
	.kl-bubble { padding: 10px 13px 22px; }
	.kl-bubble__body { font-size: 16.5px; }
	.kl-msg__who { gap: 2px 8px; font-size: 13.5px; }
	.kl-rank__t { font-size: 13px; }
	.kl-postcard__l { grid-template-columns: minmax(0, 1fr); justify-items: center; text-align: center; padding: 30px 16px 20px; }
	.kl-postcard__links, .kl-postcard__rank { justify-content: center; display: flex; }
	.kl-face--xl { width: 128px; height: 128px; }
	.kl-postcard__r { padding: 18px 16px; }
	.kl-postcard__stamp { width: 180px; margin: 0 auto 8px; }
	.kl-postcard__addr div { grid-template-columns: minmax(0, 1fr); gap: 0; }
	.kl-msgbox { flex-direction: column; padding: 20px 18px; margin: 20px 0; }
	.tborder { display: block; overflow-x: auto; }
	.kl-main > table, .kl-main table { max-width: 100%; }
	.kl-foot__in { padding: 18px 14px 26px; }
}
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

/* ---------------------------------------------------------------- ссылки в сообщениях: свой стиль форума — «пастила»
   под словом три тонких пастельных слоя, как срез пастилы: розовый, сливочный и яблочный; без подчёркивания.
   При наведении слои становятся толще, а верхний — клюквенным. Значка у внешних ссылок нет. */
:is(.post_body, .signature, [class*="-post__body"], [class*="-post__sign"]) a.mycode_url {
	color: #8e1f3a; font-weight: 600; text-decoration: none; padding-bottom: 6px;
	background-image: linear-gradient(#eeb7b0, #eeb7b0), linear-gradient(#f3dcb4, #f3dcb4), linear-gradient(#a8cb78, #a8cb78);
	background-size: 100% 2px, 100% 2px, 100% 2px; background-position: 0 calc(100% - 4px), 0 calc(100% - 2px), 0 100%; background-repeat: no-repeat;
	-webkit-box-decoration-break: clone; box-decoration-break: clone; transition: background-size .15s, color .15s;
}
:is(.post_body, .signature, [class*="-post__body"], [class*="-post__sign"]) a.mycode_url:hover,
:is(.post_body, .signature, [class*="-post__body"], [class*="-post__sign"]) a.mycode_url:focus-visible {
	color: #6e1428;
	background-image: linear-gradient(#a3243f, #a3243f), linear-gradient(#f3dcb4, #f3dcb4), linear-gradient(#8fbb5a, #8fbb5a);
	background-size: 100% 2.6px, 100% 2.4px, 100% 2.6px; background-position: 0 calc(100% - 5px), 0 calc(100% - 2.5px), 0 100%;
}
:is(.post_body, .signature, [class*="-post__body"], [class*="-post__sign"]) a.mycode_url::after { content: none; }
