/* Салонный календарь — тема «Журнал записи».
   Ежедневник администратора студии красоты: контрастная пара «глубокий пыльно-розовый бордо + молочный».
   Обложка журнала (бордо) с вкладками-корешками, листы в линейку, столбец времени слева.
   Главная — реестр свежих записей с сортировкой и фильтр-чипами направлений, памятка «Перенос и неявка»,
   «Календарь загрузки» (пример: мастера × часы, окна-простои), калькулятор «Расходники на услугу».
   Тема — дерево ответов: ветки как линии ежедневника, время записи слева. Профиль — карточка мастера.
   Шрифты: Alegreya (заголовки, время, цифры) + Ysabeau Infant (интерфейс и текст), оба OFL. */

@font-face { font-family: "Alegreya"; src: url("fonts/alegreya-cyrillic-400-normal.woff2") format("woff2"); font-weight: 400; font-style: normal; font-display: swap; unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Alegreya"; src: url("fonts/alegreya-latin-400-normal.woff2") format("woff2"); font-weight: 400; font-style: normal; font-display: swap; 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+20BD, U+2122, U+2212, U+FEFF, U+FFFD; }
@font-face { font-family: "Alegreya"; src: url("fonts/alegreya-cyrillic-400-italic.woff2") format("woff2"); font-weight: 400; font-style: italic; font-display: swap; unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Alegreya"; src: url("fonts/alegreya-latin-400-italic.woff2") format("woff2"); font-weight: 400; font-style: italic; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+2000-206F, U+20BD, U+2212, U+FEFF, U+FFFD; }
@font-face { font-family: "Alegreya"; src: url("fonts/alegreya-cyrillic-700-normal.woff2") format("woff2"); font-weight: 700; font-style: normal; font-display: swap; unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Alegreya"; src: url("fonts/alegreya-latin-700-normal.woff2") format("woff2"); font-weight: 700; font-style: normal; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+2000-206F, U+20BD, U+2212, U+FEFF, U+FFFD; }
@font-face { font-family: "Alegreya"; src: url("fonts/alegreya-cyrillic-700-italic.woff2") format("woff2"); font-weight: 700; font-style: italic; font-display: swap; unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Alegreya"; src: url("fonts/alegreya-latin-700-italic.woff2") format("woff2"); font-weight: 700; font-style: italic; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+2000-206F, U+20BD, U+2212, U+FEFF, U+FFFD; }
@font-face { font-family: "Ysabeau Infant"; src: url("fonts/ysabeau-infant-cyrillic-400-normal.woff2") format("woff2"); font-weight: 400; font-style: normal; font-display: swap; unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Ysabeau Infant"; src: url("fonts/ysabeau-infant-latin-400-normal.woff2") format("woff2"); font-weight: 400; font-style: normal; font-display: swap; 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+20BD, U+2122, U+2212, U+FEFF, U+FFFD; }
@font-face { font-family: "Ysabeau Infant"; src: url("fonts/ysabeau-infant-cyrillic-400-italic.woff2") format("woff2"); font-weight: 400; font-style: italic; font-display: swap; unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Ysabeau Infant"; src: url("fonts/ysabeau-infant-latin-400-italic.woff2") format("woff2"); font-weight: 400; font-style: italic; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+2000-206F, U+20BD, U+2212, U+FEFF, U+FFFD; }
@font-face { font-family: "Ysabeau Infant"; src: url("fonts/ysabeau-infant-cyrillic-600-normal.woff2") format("woff2"); font-weight: 600; font-style: normal; font-display: swap; unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Ysabeau Infant"; src: url("fonts/ysabeau-infant-latin-600-normal.woff2") format("woff2"); font-weight: 600; font-style: normal; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+2000-206F, U+20BD, U+2212, U+FEFF, U+FFFD; }
@font-face { font-family: "Ysabeau Infant"; src: url("fonts/ysabeau-infant-cyrillic-700-normal.woff2") format("woff2"); font-weight: 700; font-style: normal; font-display: swap; unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Ysabeau Infant"; src: url("fonts/ysabeau-infant-latin-700-normal.woff2") format("woff2"); font-weight: 700; font-style: normal; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+2000-206F, U+20BD, U+2212, U+FEFF, U+FFFD; }

:root {
	--kr-bor: #5a1a2b;      /* обложка журнала, главный цвет */
	--kr-bor-d: #43121f;    /* корешки вкладок, тень */
	--kr-bor-2: #6b2335;    /* ссылки */
	--kr-bor-3: #7d2a3e;    /* светлее бордо */
	--kr-rose: #c98a96;     /* пыльная роза */
	--kr-rose-2: #b56f7e;
	--kr-rose-l: #f0dcdc;   /* бледная роза */
	--kr-beige: #e3c2b8;
	--kr-milk: #f6eee3;     /* молочный лист */
	--kr-milk-2: #fcf8f2;   /* бумага карточек */
	--kr-milk-3: #ede1d2;
	--kr-ink: #2b1118;
	--kr-ink-2: #4b2a31;
	--kr-mute: #7b5c62;
	--kr-dim: #a68b8f;
	--kr-line: rgba(90, 26, 43, .14);
	--kr-line-2: rgba(90, 26, 43, .24);
	--kr-rule: rgba(201, 138, 150, .26); /* линейка ежедневника */
	--kr-shadow: 0 1px 0 rgba(90, 26, 43, .06), 0 14px 30px -22px rgba(67, 18, 31, .45);
	--kr-head: "Alegreya", "Georgia", "Times New Roman", serif;
	--kr-text: "Ysabeau Infant", "Segoe UI", "Helvetica Neue", Arial, sans-serif;
	--kr-r: 6px;
	--kr-w: 1320px;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; scroll-behavior: smooth; }
body {
	margin: 0; min-width: 320px; color: var(--kr-ink); font: 400 17px/1.55 var(--kr-text); font-variant-numeric: lining-nums;
	background-color: var(--kr-milk);
	background-image: repeating-linear-gradient(to bottom, transparent 0 31px, rgba(201, 138, 150, .13) 31px 32px);
	-webkit-font-smoothing: antialiased;
}
a { color: var(--kr-bor-2); text-decoration: none; }
a:hover { color: var(--kr-bor-d); }
img { max-width: 100%; }
button { font: inherit; color: inherit; }
:focus-visible { outline: 2px solid var(--kr-rose-2); outline-offset: 2px; }
.kr-skip { position: absolute; left: -999px; top: 8px; background: var(--kr-milk-2); padding: 8px 14px; z-index: 100; border-radius: var(--kr-r); }
.kr-skip:focus { left: 12px; }
.kr-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.kr-app { overflow-x: clip; }

.kr-h1 { font: 700 clamp(28px, 3.2vw, 40px)/1.12 var(--kr-head); margin: 0; letter-spacing: -.005em; color: var(--kr-ink); }
.kr-h2 { font: 700 clamp(23px, 2.1vw, 28px)/1.15 var(--kr-head); margin: 0; color: var(--kr-ink); }
.kr-h3 { font: 700 19px/1.2 var(--kr-head); margin: 0 0 12px; color: var(--kr-ink); }
.kr-kicker { margin: 0 0 6px; font: 700 12px/1.2 var(--kr-text); letter-spacing: .14em; text-transform: uppercase; color: var(--kr-rose-2); }
.kr-more { display: inline-flex; align-items: center; gap: 4px; padding: 0; border: 0; background: none; cursor: pointer; font: 700 14px/1.3 var(--kr-text); color: var(--kr-bor-2); border-bottom: 1px solid var(--kr-rose); }
.kr-more:hover { color: var(--kr-bor-d); border-bottom-color: var(--kr-bor-2); }
.kr-empty { list-style: none; padding: 14px 0; color: var(--kr-mute); font-style: italic; }
.kr-btn { display: inline-flex; align-items: center; gap: 8px; padding: 11px 18px; border-radius: 999px; background: var(--kr-bor); color: var(--kr-milk); font: 700 15px/1 var(--kr-text); border: 1.5px solid var(--kr-bor); transition: background .2s, color .2s, transform .2s; }
.kr-btn:hover { background: var(--kr-bor-d); color: var(--kr-milk); transform: translateY(-1px); }
.kr-btn--ghost { background: transparent; color: var(--kr-bor); }
.kr-btn--ghost:hover { background: var(--kr-rose-l); color: var(--kr-bor-d); }

/* ------------------------------------------------------------------ обложка журнала: шапка и вкладки-корешки */
.kr-top { background: var(--kr-bor); color: var(--kr-milk); position: relative;
	background-image: radial-gradient(120% 140% at 85% -40%, rgba(201, 138, 150, .26), transparent 60%), repeating-linear-gradient(90deg, rgba(0, 0, 0, .035) 0 2px, transparent 2px 5px); }
.kr-top__in { max-width: var(--kr-w); margin: 0 auto; padding: 18px 24px 14px; display: flex; align-items: center; gap: 22px; }
.kr-logo { display: flex; align-items: center; gap: 14px; color: var(--kr-milk); min-width: 0; }
.kr-logo:hover { color: var(--kr-milk); }
.kr-logo__mark { flex: none; filter: drop-shadow(0 6px 10px rgba(0, 0, 0, .25)); transition: transform .35s; }
.kr-logo:hover .kr-logo__mark { transform: rotate(-4deg); }
.kr-logo__txt { display: grid; gap: 2px; min-width: 0; }
.kr-logo__name { font: 700 27px/1 var(--kr-head); letter-spacing: .005em; }
.kr-logo__sub { font: 400 13.5px/1.2 var(--kr-text); color: rgba(246, 238, 227, .74); }
.kr-find { margin-left: auto; position: relative; display: flex; align-items: center; width: min(420px, 38vw); }
.kr-find__l { position: absolute; left: -9999px; }
.kr-find__i { position: absolute; left: 13px; color: var(--kr-rose); pointer-events: none; }
.kr-find input.textbox { width: 100%; padding: 10px 92px 10px 40px; border-radius: 999px; background: rgba(246, 238, 227, .1); border: 1px solid rgba(246, 238, 227, .28); color: var(--kr-milk); font-size: 15px; }
.kr-find input.textbox::placeholder { color: rgba(246, 238, 227, .55); }
.kr-find input.textbox:focus { background: rgba(246, 238, 227, .16); border-color: var(--kr-rose); box-shadow: none; }
.kr-find__b { position: absolute; right: 4px; top: 4px; bottom: 4px; padding: 0 16px; border: 0; border-radius: 999px; background: var(--kr-milk); color: var(--kr-bor); font: 700 14px/1 var(--kr-text); cursor: pointer; }
.kr-find__b:hover { background: var(--kr-rose-l); }
.kr-me { position: relative; }
.kr-me__b { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px 8px 10px; border-radius: 999px; border: 1px solid rgba(246, 238, 227, .35); background: transparent; color: var(--kr-milk); cursor: pointer; font: 700 15px/1 var(--kr-text); }
.kr-me__b:hover { background: rgba(246, 238, 227, .1); }
.kr-me__panel { position: absolute; right: 0; top: calc(100% + 10px); width: 300px; background: var(--kr-milk-2); color: var(--kr-ink); border-radius: var(--kr-r); padding: 16px; box-shadow: 0 24px 50px -20px rgba(43, 17, 24, .6); z-index: 60; border-top: 4px solid var(--kr-rose); }

.kr-tabs { max-width: var(--kr-w); margin: 0 auto; padding: 0 24px; }
.kr-tabs__in { display: flex; gap: 6px; align-items: flex-end; overflow-x: auto; scrollbar-width: none; padding-top: 6px; }
.kr-tabs__in::-webkit-scrollbar { display: none; }
.kr-tab { position: relative; flex: none; display: grid; gap: 1px; padding: 9px 20px 10px; min-width: 104px; border-radius: 10px 10px 0 0; background: var(--kr-bor-d); color: rgba(246, 238, 227, .82); transition: transform .2s, background .2s, color .2s; transform: translateY(3px); }
.kr-tab i { font: 700 10.5px/1 var(--kr-text); font-style: normal; letter-spacing: .16em; text-transform: uppercase; color: var(--kr-rose); }
.kr-tab span { font: 700 17px/1.15 var(--kr-head); }
.kr-tab:hover { color: var(--kr-milk); transform: translateY(0); background: #4f1625; }
.kr-tab.is-on { background: var(--kr-milk); color: var(--kr-bor); transform: translateY(0); padding-bottom: 13px; }
.kr-tab.is-on i { color: var(--kr-rose-2); }
.kr-tab.is-on::after { content: ""; position: absolute; left: 16px; right: 16px; top: 0; height: 3px; border-radius: 0 0 3px 3px; background: var(--kr-rose); }

.kr-subtabs { background: var(--kr-milk); border-bottom: 1px solid var(--kr-line); }
.kr-subtabs__in { max-width: var(--kr-w); margin: 0 auto; padding: 4px 24px 0; display: flex; gap: 4px 22px; overflow-x: auto; scrollbar-width: none; }
.kr-subtabs__in::-webkit-scrollbar { display: none; }
.kr-sub { flex: none; display: inline-flex; align-items: center; gap: 7px; padding: 10px 2px 11px; color: var(--kr-ink-2); font: 600 15px/1.2 var(--kr-text); border-bottom: 2px solid transparent; }
.kr-sub .kr-ico { color: var(--kr-rose-2); }
.kr-sub:hover { color: var(--kr-bor); border-bottom-color: var(--kr-rose); }
.kr-sub.is-on { color: var(--kr-bor); border-bottom-color: var(--kr-bor); font-weight: 700; }

.kr-crumbs-row { max-width: var(--kr-w); margin: 0 auto; padding: 14px 24px 0; }
.kr-crumbs { font: 600 13.5px/1.4 var(--kr-text); color: var(--kr-mute); display: flex; flex-wrap: wrap; gap: 2px 6px; }
.kr-crumbs a { color: var(--kr-mute); }
.kr-crumbs a:hover { color: var(--kr-bor); }
.kr-crumbs .active { color: var(--kr-ink-2); }
.kr-crumbs__sep { color: var(--kr-rose); }
.kr-page--index .kr-crumbs-row { display: none; }
.kr-main { max-width: var(--kr-w); margin: 0 auto; padding: 18px 24px 40px; }

/* ------------------------------------------------------------------ общие: лица, звания, репутация, направления */
.kr-face { flex: none; display: inline-grid; place-items: center; overflow: hidden; border-radius: 4px 12px 4px 12px; font: 700 15px/1 var(--kr-head); color: var(--kr-milk); background: var(--kr-bor); vertical-align: middle; }
.kr-face img { width: 100%; height: 100%; object-fit: cover; display: block; }
.kr-face--xs { width: 22px; height: 22px; font-size: 10px; border-radius: 3px 8px 3px 8px; }
.kr-face--s { width: 30px; height: 30px; font-size: 12px; border-radius: 3px 9px 3px 9px; }
.kr-face--m { width: 44px; height: 44px; font-size: 16px; }
.kr-face--l { width: 58px; height: 58px; font-size: 20px; border-radius: 5px 16px 5px 16px; }
.kr-face--xl { width: 128px; height: 128px; font-size: 44px; border-radius: 8px 34px 8px 34px; }
.kr-tone-0 { background: var(--kr-bor); color: var(--kr-milk); }
.kr-tone-1 { background: var(--kr-rose); color: var(--kr-bor-d); }
.kr-tone-2 { background: var(--kr-beige); color: var(--kr-bor); }
.kr-tone-3 { background: var(--kr-milk-2); color: var(--kr-bor); box-shadow: inset 0 0 0 1.5px var(--kr-rose); }
.kr-ico { flex: none; }
.kr-badge .pg { fill: var(--kr-milk-2); stroke: var(--kr-bor); stroke-width: 1.4; }
.kr-badge .rg { stroke: var(--kr-bor); stroke-width: 1.8; stroke-linecap: round; }
.kr-badge .on { fill: var(--kr-bor); }
.kr-badge .off { fill: none; stroke: var(--kr-rose); stroke-width: .9; }
.kr-badge--5 .on, .kr-badge--6 .on { fill: var(--kr-rose-2); }
.kr-badge--6 .pg { fill: var(--kr-rose-l); }
.kr-rank { display: inline-flex; align-items: center; gap: 6px; font: 600 13px/1.2 var(--kr-text); color: var(--kr-mute); }
.kr-rep { display: inline-flex; align-items: center; gap: 4px; font: 700 13px/1 var(--kr-text); color: var(--kr-bor-2); }
.kr-check circle { fill: none; stroke: currentColor; stroke-width: 1.5; }
.kr-check path { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.kr-rep--zero { color: var(--kr-dim); }
.kr-rep--down { color: var(--kr-mute); }

.kr-dir { display: inline-flex; align-items: center; gap: 5px; padding: 3px 9px 3px 7px; border-radius: 999px; font: 700 12.5px/1.2 var(--kr-text); white-space: nowrap; border: 1.2px solid transparent; }
.kr-dir--volosy { background: var(--kr-bor); color: var(--kr-milk); }
.kr-dir--nogti { background: var(--kr-rose); color: var(--kr-bor-d); }
.kr-dir--brovi { background: transparent; color: var(--kr-bor); border-color: var(--kr-bor); }
.kr-dir--kosmo { background: var(--kr-rose-l); color: var(--kr-bor); }
.kr-dir--massazh { background: var(--kr-beige); color: var(--kr-bor-d); }
.kr-dir--admin { background: transparent; color: var(--kr-bor-2); border-color: var(--kr-rose-2); border-style: dashed; }
.kr-dir--sklad { background: var(--kr-milk-3); color: var(--kr-bor); }
.kr-dir--komanda { background: var(--kr-ink); color: var(--kr-rose-l); }
.kr-dir--other { background: transparent; color: var(--kr-mute); border-color: var(--kr-line-2); }
a.kr-dir:hover { filter: brightness(.95); }
a.kr-dir--volosy:hover, a.kr-dir--komanda:hover { color: var(--kr-milk); }

/* время записи: часы крупно, дата мелко */
.kr-slot { display: inline-grid; gap: 1px; font-variant-numeric: tabular-nums; }
.kr-slot b { font: 700 19px/1 var(--kr-head); color: var(--kr-bor); }
.kr-slot i { font: 600 11.5px/1.1 var(--kr-text); font-style: normal; color: var(--kr-mute); white-space: nowrap; }

/* ------------------------------------------------------------------ главная: обложка-листок */
.kr-cover { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 28px; align-items: stretch; margin: 6px 0 24px; }
.kr-cover__txt { padding: 6px 0 0; }
.kr-cover__h { font: 700 clamp(36px, 4.6vw, 58px)/1 var(--kr-head); margin: 0 0 12px; color: var(--kr-bor); letter-spacing: -.01em; }
.kr-cover__h i { font-weight: 400; color: var(--kr-rose-2); }
.kr-cover__lead { max-width: 64ch; margin: 0 0 18px; font-size: 18px; color: var(--kr-ink-2); }
.kr-cover__go { display: flex; flex-wrap: wrap; gap: 10px; margin: 0; }
.kr-today { position: relative; background: var(--kr-bor); color: var(--kr-milk); border-radius: var(--kr-r); padding: 26px 22px 18px; box-shadow: var(--kr-shadow); display: grid; align-content: start; }
.kr-today::after { content: ""; position: absolute; left: 0; right: 0; bottom: -7px; height: 7px; background: radial-gradient(circle at 6px 0, transparent 5px, var(--kr-bor) 5.5px) 0 0 / 12px 7px repeat-x; transform: scaleY(-1); }
.kr-today__rings { position: absolute; top: -9px; left: 0; right: 0; display: flex; justify-content: center; gap: 120px; }
.kr-today__rings i { width: 10px; height: 22px; border-radius: 6px; background: var(--kr-milk); box-shadow: inset 0 0 0 2px var(--kr-bor-d); }
.kr-today__dow { margin: 0; font: 700 12.5px/1 var(--kr-text); letter-spacing: .18em; text-transform: uppercase; color: var(--kr-rose); }
.kr-today__d { margin: 4px 0 12px; display: flex; align-items: baseline; gap: 10px; }
.kr-today__d b { font: 700 82px/.9 var(--kr-head); }
.kr-today__d span { font: 400 26px/1 var(--kr-head); font-style: italic; color: var(--kr-rose-l); }
.kr-today__last { margin: 0; padding-top: 12px; border-top: 1px dashed rgba(246, 238, 227, .3); display: grid; gap: 4px; font-size: 15px; line-height: 1.35; }
.kr-today__k { font: 700 11px/1 var(--kr-text); letter-spacing: .14em; text-transform: uppercase; color: var(--kr-rose); }
.kr-today__last a { color: var(--kr-milk); font-weight: 700; }
.kr-today__last a:hover { color: var(--kr-rose-l); }
.kr-today__last > span:last-child { color: rgba(246, 238, 227, .7); font-size: 13.5px; }

/* ------------------------------------------------------------------ главная: журнал записи (реестр) */
.kr-desk { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 24px; align-items: start; margin-bottom: 28px; }
.kr-led { background: var(--kr-milk-2); border: 1px solid var(--kr-line); border-radius: var(--kr-r); box-shadow: var(--kr-shadow); padding: 20px 0 6px; min-width: 0; }
.kr-led__head { display: flex; align-items: end; flex-wrap: wrap; justify-content: space-between; gap: 14px; padding: 0 22px 12px; }
.kr-led__sub { margin: 4px 0 0; color: var(--kr-mute); font-size: 15px; }
.kr-chips { display: flex; flex-wrap: wrap; gap: 6px; padding: 0 22px 14px; }
.kr-chip { display: inline-flex; align-items: center; gap: 6px; padding: 6px 12px; border-radius: 999px; border: 1.2px solid var(--kr-line-2); background: transparent; color: var(--kr-ink-2); font: 600 13.5px/1.1 var(--kr-text); cursor: pointer; transition: background .2s, color .2s, border-color .2s; }
.kr-chip:hover { border-color: var(--kr-bor); color: var(--kr-bor); }
.kr-chip.is-on { background: var(--kr-bor); border-color: var(--kr-bor); color: var(--kr-milk); }
.kr-chip__dot { width: 9px; height: 9px; border-radius: 50%; border: 1.2px solid var(--kr-bor); }
.kr-chip--volosy .kr-chip__dot { background: var(--kr-bor); }
.kr-chip--nogti .kr-chip__dot { background: var(--kr-rose); border-color: var(--kr-rose-2); }
.kr-chip--brovi .kr-chip__dot { background: transparent; }
.kr-chip--kosmo .kr-chip__dot { background: var(--kr-rose-l); }
.kr-chip--massazh .kr-chip__dot { background: var(--kr-beige); }
.kr-chip--admin .kr-chip__dot { border-style: dashed; }
.kr-chip--sklad .kr-chip__dot { background: var(--kr-milk-3); }
.kr-chip--komanda .kr-chip__dot { background: var(--kr-ink); border-color: var(--kr-ink); }
.kr-chip.is-on .kr-chip__dot { border-color: var(--kr-milk); }
.kr-led__wrap { overflow-x: auto; }
.kr-led__t { width: 100%; border-collapse: collapse; }
.kr-led__t thead th { position: sticky; top: 0; background: var(--kr-bor); color: var(--kr-milk); text-align: left; padding: 0; font: 700 12px/1 var(--kr-text); letter-spacing: .1em; text-transform: uppercase; white-space: nowrap; }
.kr-led__t thead th:first-child { padding-left: 10px; }
.kr-led__t thead th.kr-led__dir { padding: 12px 10px; }
.kr-sort { display: inline-flex; align-items: center; gap: 6px; padding: 12px 10px; border: 0; background: none; color: inherit; font: inherit; letter-spacing: inherit; text-transform: inherit; cursor: pointer; }
.kr-sort::after { content: ""; width: 0; height: 0; border-left: 4px solid transparent; border-right: 4px solid transparent; border-top: 5px solid rgba(246, 238, 227, .35); transition: transform .2s; }
.kr-sort.is-on::after { border-top-color: var(--kr-rose); }
.kr-sort.is-on[data-dir="asc"]::after { transform: rotate(180deg); }
.kr-sort:hover { color: var(--kr-rose-l); }
.kr-led__row td { padding: 11px 10px; border-bottom: 1px solid var(--kr-rule); vertical-align: middle; }
.kr-led__row td:first-child { padding-left: 20px; }
.kr-led__row { transition: background .18s; animation: kr-in .45s both; animation-delay: calc(var(--i, 0) * 25ms); }
.kr-led__row:hover { background: rgba(240, 220, 220, .45); }
.kr-led__row[hidden] { display: none; }
.kr-led__time { width: 86px; border-right: 2px solid var(--kr-rose-l); }
.kr-led__subj { min-width: 260px; }
.kr-led__t-a, .kr-led__t { }
a.kr-led__t { display: block; font: 700 17px/1.28 var(--kr-head); color: var(--kr-ink); }
a.kr-led__t:hover { color: var(--kr-bor-2); }
.kr-led__last { display: block; margin-top: 2px; font-size: 13px; color: var(--kr-mute); }
.kr-led__last--wait { color: var(--kr-rose-2); font-weight: 700; }
.kr-led__dir { width: 1%; }
.kr-led__who { white-space: nowrap; font: 600 14px/1.2 var(--kr-text); color: var(--kr-ink-2); }
.kr-led__who .kr-face { margin-right: 7px; }
.kr-led__who > span:not(.kr-face) { display: inline-block; max-width: 130px; overflow: hidden; text-overflow: ellipsis; vertical-align: middle; }
.kr-led__n { width: 70px; text-align: right; padding-right: 20px !important; }
.kr-led__n a { display: inline-grid; place-items: center; min-width: 36px; height: 30px; padding: 0 8px; border-radius: 4px 10px 4px 10px; background: var(--kr-rose-l); color: var(--kr-bor); font: 700 16px/1 var(--kr-head); font-variant-numeric: tabular-nums; }
.kr-led__n a:hover { background: var(--kr-bor); color: var(--kr-milk); }
.kr-led__none { margin: 0; padding: 18px 22px; color: var(--kr-mute); font-style: italic; }
@keyframes kr-in { from { transform: translateY(6px); } to { transform: none; } }

/* ------------------------------------------------------------------ главная: памятка «Перенос и неявка» */
.kr-memo { background: var(--kr-bor); color: var(--kr-milk); border-radius: var(--kr-r); padding: 22px 22px 18px; box-shadow: var(--kr-shadow); position: sticky; top: 14px;
	background-image: repeating-linear-gradient(to bottom, transparent 0 31px, rgba(246, 238, 227, .06) 31px 32px); }
.kr-memo .kr-kicker { color: var(--kr-rose); }
.kr-memo .kr-h2 { color: var(--kr-milk); }
.kr-memo__sub { margin: 6px 0 14px; font-size: 14.5px; color: rgba(246, 238, 227, .78); line-height: 1.45; }
.kr-seg { display: flex; gap: 0; padding: 3px; border-radius: 999px; border: 1.2px solid rgba(246, 238, 227, .35); margin-bottom: 14px; }
.kr-seg__b { flex: 1; padding: 8px 10px; border: 0; border-radius: 999px; background: transparent; color: rgba(246, 238, 227, .82); font: 700 14px/1 var(--kr-text); cursor: pointer; transition: background .25s, color .25s; }
.kr-seg__b:hover { color: var(--kr-milk); }
.kr-seg__b.is-on { background: var(--kr-milk); color: var(--kr-bor); }
.kr-rule { animation: kr-in .35s both; }
.kr-steps { list-style: none; margin: 0 0 14px; padding: 0 0 0 18px; position: relative; display: grid; gap: 10px; }
.kr-steps::before { content: ""; position: absolute; left: 4px; top: 6px; bottom: 6px; width: 1.5px; background: repeating-linear-gradient(to bottom, var(--kr-rose) 0 4px, transparent 4px 7px); }
.kr-steps li { position: relative; display: grid; gap: 1px; font-size: 14.5px; line-height: 1.4; }
.kr-steps li::before { content: ""; position: absolute; left: -18px; top: 5px; width: 10px; height: 10px; border-radius: 50%; background: var(--kr-bor); border: 2px solid var(--kr-rose); }
.kr-steps li:last-child::before { background: var(--kr-rose); }
.kr-steps b { font: 700 12px/1.3 var(--kr-text); letter-spacing: .1em; text-transform: uppercase; color: var(--kr-rose); }
.kr-say { margin: 0 0 10px; padding: 12px 14px; background: var(--kr-milk); color: var(--kr-ink); border-radius: 4px 14px 4px 14px; font: 400 17px/1.35 var(--kr-head); font-style: italic; }
.kr-say span { display: block; font: 700 11px/1 var(--kr-text); letter-spacing: .14em; text-transform: uppercase; font-style: normal; color: var(--kr-rose-2); margin-bottom: 5px; }
.kr-fit { margin: 0 0 12px; font-size: 13.5px; color: rgba(246, 238, 227, .74); }
.kr-memo__foot { margin: 0; padding-top: 12px; border-top: 1px dashed rgba(246, 238, 227, .28); font-size: 13.5px; color: rgba(246, 238, 227, .74); display: grid; gap: 6px; }
.kr-memo .kr-more { color: var(--kr-milk); border-bottom-color: var(--kr-rose); justify-self: start; }

/* ------------------------------------------------------------------ главная: календарь загрузки */
.kr-cal { background: var(--kr-milk-2); border: 1px solid var(--kr-line); border-radius: var(--kr-r); box-shadow: var(--kr-shadow); padding: 22px 22px 16px; margin-bottom: 28px; }
.kr-cal__head { display: flex; justify-content: space-between; align-items: end; gap: 18px; flex-wrap: wrap; margin-bottom: 14px; }
.kr-cal__demo { margin: 6px 0 0; font-size: 14.5px; color: var(--kr-mute); max-width: 62ch; }
.kr-cal__demo span { display: inline-block; margin-right: 6px; padding: 2px 8px; border-radius: 999px; border: 1.2px dashed var(--kr-bor); color: var(--kr-bor); font: 700 11.5px/1.3 var(--kr-text); letter-spacing: .1em; text-transform: uppercase; }
.kr-cal__ctrl { display: flex; align-items: center; gap: 18px; flex-wrap: wrap; }
.kr-weekpick { display: flex; align-items: center; gap: 4px; }
.kr-weekpick__b { width: 34px; height: 34px; border-radius: 50%; border: 1.2px solid var(--kr-line-2); background: transparent; color: var(--kr-bor); font: 700 20px/1 var(--kr-head); cursor: pointer; }
.kr-weekpick__b:hover { background: var(--kr-bor); color: var(--kr-milk); border-color: var(--kr-bor); }
.kr-weekpick__l { margin: 0; min-width: 190px; text-align: center; display: grid; }
.kr-weekpick__l b { font: 700 17px/1.1 var(--kr-head); color: var(--kr-bor); }
.kr-weekpick__l span { font-size: 12.5px; color: var(--kr-mute); }
.kr-toggle { display: inline-flex; align-items: center; gap: 8px; font: 600 14px/1 var(--kr-text); color: var(--kr-ink-2); cursor: pointer; user-select: none; }
.kr-toggle input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.kr-toggle__s { width: 36px; height: 20px; border-radius: 999px; background: var(--kr-milk-3); border: 1.2px solid var(--kr-line-2); position: relative; transition: background .2s; }
.kr-toggle__s::after { content: ""; position: absolute; top: 2px; left: 2px; width: 14px; height: 14px; border-radius: 50%; background: var(--kr-bor); transition: transform .25s; }
.kr-toggle input:checked + .kr-toggle__s { background: var(--kr-rose-l); }
.kr-toggle input:checked + .kr-toggle__s::after { transform: translateX(16px); }
.kr-toggle input:focus-visible + .kr-toggle__s { outline: 2px solid var(--kr-rose-2); outline-offset: 2px; }

.kr-days { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 6px; margin-bottom: 12px; }
.kr-dayb { display: grid; gap: 4px; padding: 9px 10px 10px; border-radius: 4px 12px 4px 12px; border: 1.2px solid var(--kr-line); background: var(--kr-milk); text-align: left; cursor: pointer; transition: border-color .2s, background .2s, transform .2s; }
.kr-dayb:hover { border-color: var(--kr-rose-2); transform: translateY(-1px); }
.kr-dayb b { font: 700 16px/1 var(--kr-head); color: var(--kr-bor); display: flex; justify-content: space-between; gap: 6px; }
.kr-dayb b em { font-style: normal; font-family: var(--kr-text); font-size: 13px; color: var(--kr-mute); font-variant-numeric: tabular-nums; }
.kr-dayb i { display: block; height: 5px; border-radius: 3px; background: var(--kr-milk-3); overflow: hidden; }
.kr-dayb i::before { content: ""; display: block; height: 100%; width: var(--p, 0%); background: var(--kr-rose-2); border-radius: 3px; transition: width .5s; }
.kr-dayb.is-on { background: var(--kr-bor); border-color: var(--kr-bor); }
.kr-dayb.is-on b { color: var(--kr-milk); }
.kr-dayb.is-on b em { color: var(--kr-rose-l); }
.kr-dayb.is-on i { background: rgba(246, 238, 227, .22); }
.kr-dayb.is-on i::before { background: var(--kr-rose); }

.kr-grid { --cols: 24; position: relative; border: 1px solid var(--kr-line); border-radius: 4px; overflow-x: auto; background: var(--kr-milk); }
.kr-grid__in { min-width: 860px; }
.kr-grid__hours, .kr-grid__row { display: grid; grid-template-columns: 170px minmax(0, 1fr); }
.kr-grid__hours { background: var(--kr-milk-3); border-bottom: 1px solid var(--kr-line-2); }
.kr-grid__hours > span { padding: 8px 12px; font: 700 11.5px/1 var(--kr-text); letter-spacing: .1em; text-transform: uppercase; color: var(--kr-mute); }
.kr-grid__hl { position: relative; height: 30px; }
.kr-grid__hl b { position: absolute; top: 9px; transform: translateX(-50%); font: 700 12.5px/1 var(--kr-text); color: var(--kr-ink-2); font-variant-numeric: tabular-nums; }
.kr-grid__hl b:first-child { transform: none; padding-left: 4px; }
.kr-grid__row { border-bottom: 1px solid var(--kr-rule); min-height: 58px; }
.kr-grid__row:last-child { border-bottom: 0; }
.kr-grid__who { padding: 9px 12px; display: grid; align-content: center; gap: 2px; border-right: 2px solid var(--kr-rose-l); background: var(--kr-milk-2); }
.kr-grid__who b { font: 700 15.5px/1.1 var(--kr-head); color: var(--kr-ink); }
.kr-grid__who span { font-size: 12.5px; color: var(--kr-mute); display: flex; justify-content: space-between; gap: 6px; }
.kr-grid__who em { font-style: normal; font-weight: 700; color: var(--kr-bor-2); font-variant-numeric: tabular-nums; }
.kr-grid__track { position: relative; background-image: repeating-linear-gradient(90deg, var(--kr-rule) 0 1px, transparent 1px calc(100% / 12)), repeating-linear-gradient(90deg, rgba(201, 138, 150, .12) 0 1px, transparent 1px calc(100% / 24)); }
.kr-ap { position: absolute; top: 7px; bottom: 7px; left: var(--l); width: var(--w); padding: 4px 7px; border-radius: 3px 9px 3px 9px; overflow: hidden; font: 700 12px/1.15 var(--kr-text); display: grid; align-content: center; cursor: default; transition: transform .2s, box-shadow .2s; animation: kr-ap .4s both; animation-delay: var(--dl, 0ms); }
.kr-ap span { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.kr-ap em { font-style: normal; font-weight: 600; font-size: 11px; opacity: .82; white-space: nowrap; font-variant-numeric: tabular-nums; }
.kr-ap--long { background: var(--kr-bor); color: var(--kr-milk); }
.kr-ap--mid { background: var(--kr-rose); color: var(--kr-bor-d); }
.kr-ap--short { background: var(--kr-rose-l); color: var(--kr-bor); box-shadow: inset 0 0 0 1.2px var(--kr-rose-2); }
.kr-ap:hover { transform: translateY(-2px); box-shadow: 0 8px 16px -8px rgba(67, 18, 31, .6); z-index: 3; }
.kr-gap { position: absolute; top: 7px; bottom: 7px; left: var(--l); width: var(--w); border-radius: 3px 9px 3px 9px; display: grid; place-items: center; font: 700 11.5px/1 var(--kr-text); color: var(--kr-bor); border: 1.2px dashed var(--kr-rose-2);
	background: repeating-linear-gradient(135deg, rgba(201, 138, 150, .32) 0 4px, transparent 4px 9px); transition: opacity .3s; }
.kr-gap span { background: var(--kr-milk-2); padding: 2px 6px; border-radius: 999px; white-space: nowrap; }
.kr-cal.no-gaps .kr-gap { opacity: 0; pointer-events: none; }
.kr-grid__off { position: absolute; inset: 7px 8px; display: grid; place-items: center; font: 400 15px/1 var(--kr-head); font-style: italic; color: var(--kr-dim); background: repeating-linear-gradient(135deg, rgba(90, 26, 43, .05) 0 6px, transparent 6px 12px); border-radius: 4px; }
@keyframes kr-ap { from { transform: scaleX(.6); transform-origin: left; } to { transform: none; } }
.kr-cal__foot { display: flex; align-items: center; justify-content: space-between; gap: 14px 22px; flex-wrap: wrap; margin-top: 12px; }
.kr-cal__sum { margin: 0; font-size: 15px; color: var(--kr-ink-2); flex: 1 1 380px; }
.kr-cal__sum b { color: var(--kr-bor); font-family: var(--kr-head); font-size: 17px; }
.kr-legend { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px 16px; font-size: 13px; color: var(--kr-mute); }
.kr-legend li { display: inline-flex; align-items: center; gap: 6px; }
.kr-lg { width: 22px; height: 12px; border-radius: 2px 6px 2px 6px; display: inline-block; }
.kr-lg--long { background: var(--kr-bor); }
.kr-lg--mid { background: var(--kr-rose); }
.kr-lg--short { background: var(--kr-rose-l); box-shadow: inset 0 0 0 1.2px var(--kr-rose-2); }
.kr-lg--gap { border: 1.2px dashed var(--kr-rose-2); background: repeating-linear-gradient(135deg, rgba(201, 138, 150, .4) 0 3px, transparent 3px 6px); }
.kr-grid__ns { padding: 20px; margin: 0; color: var(--kr-mute); }

/* ------------------------------------------------------------------ главная: калькулятор и оглавление */
.kr-pair { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr); gap: 24px; align-items: start; }
.kr-calc, .kr-toc { background: var(--kr-milk-2); border: 1px solid var(--kr-line); border-radius: var(--kr-r); box-shadow: var(--kr-shadow); padding: 22px; min-width: 0; }
.kr-calc__sub { margin: 6px 0 14px; color: var(--kr-mute); font-size: 15px; }
.kr-seg--wrap { flex-wrap: wrap; border-radius: 14px; border-color: var(--kr-line-2); gap: 2px; }
.kr-seg--wrap .kr-seg__b { flex: 1 1 auto; color: var(--kr-ink-2); border-radius: 10px; }
.kr-seg--wrap .kr-seg__b:hover { color: var(--kr-bor); background: var(--kr-rose-l); }
.kr-seg--wrap .kr-seg__b.is-on { background: var(--kr-bor); color: var(--kr-milk); }
.kr-calc__wrap { overflow-x: auto; }
.kr-calc__t { width: 100%; border-collapse: collapse; font-size: 14.5px; }
.kr-calc__t th { text-align: left; font: 700 11.5px/1.2 var(--kr-text); letter-spacing: .08em; text-transform: uppercase; color: var(--kr-mute); padding: 6px 6px 8px; border-bottom: 1.5px solid var(--kr-bor); white-space: nowrap; }
.kr-calc__t td { padding: 6px; border-bottom: 1px solid var(--kr-rule); vertical-align: middle; }
.kr-calc__t input { width: 100%; min-width: 0; padding: 6px 8px; border-radius: 4px; border: 1.2px solid transparent; background: var(--kr-milk); font: 600 14.5px/1.2 var(--kr-text); color: var(--kr-ink); font-variant-numeric: tabular-nums; }
.kr-calc__t input[type="number"] { -moz-appearance: textfield; appearance: textfield; }
.kr-calc__t input::-webkit-outer-spin-button, .kr-calc__t input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.kr-calc__t input:hover { border-color: var(--kr-line-2); }
.kr-calc__t input:focus { outline: none; border-color: var(--kr-rose-2); background: #fff; }
.kr-calc__t td.kr-c-name { min-width: 150px; }
.kr-calc__t td.kr-c-num { width: 96px; }
.kr-calc__t td.kr-c-num input { padding: 6px; }
.kr-calc__t td.kr-c-num label { display: flex; align-items: center; gap: 3px; }
.kr-calc__t td.kr-c-num small { font-size: 12px; color: var(--kr-mute); }
.kr-calc__t td.kr-c-sum { width: 86px; text-align: right; font: 700 16px/1 var(--kr-head); color: var(--kr-bor); white-space: nowrap; font-variant-numeric: tabular-nums; }
.kr-calc__t td.kr-c-del { width: 30px; }
.kr-c-x { width: 26px; height: 26px; border-radius: 50%; border: 0; background: transparent; color: var(--kr-dim); font: 400 18px/1 var(--kr-text); cursor: pointer; }
.kr-c-x:hover { background: var(--kr-rose-l); color: var(--kr-bor); }
.kr-calc__add { margin: 10px 0 14px; }
.kr-calc__res { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 18px; background: var(--kr-bor); color: var(--kr-milk); border-radius: 4px 16px 4px 16px; padding: 16px 18px; }
.kr-calc__total { margin: 0; display: grid; gap: 2px; }
.kr-calc__total span, .kr-calc__price span, .kr-calc__share span { font: 700 11.5px/1.2 var(--kr-text); letter-spacing: .1em; text-transform: uppercase; color: var(--kr-rose); }
.kr-calc__total b { font: 700 38px/1 var(--kr-head); font-variant-numeric: tabular-nums; }
.kr-calc__price { display: grid; gap: 6px; align-content: start; }
.kr-calc__price input, .kr-calc__month input { padding: 8px 10px; border-radius: 4px; border: 1.2px solid rgba(246, 238, 227, .35); background: rgba(246, 238, 227, .1); color: var(--kr-milk); font: 700 17px/1 var(--kr-text); width: 100%; font-variant-numeric: tabular-nums; }
.kr-calc__price input:focus, .kr-calc__month input:focus { outline: none; border-color: var(--kr-rose); background: rgba(246, 238, 227, .16); box-shadow: none; }
.kr-calc__share { grid-column: 1 / -1; display: grid; gap: 6px; }
.kr-calc__share p { margin: 0; display: flex; justify-content: space-between; align-items: baseline; }
.kr-calc__share b { font: 700 22px/1 var(--kr-head); }
.kr-calc__bar { display: block; height: 8px; border-radius: 4px; background: rgba(246, 238, 227, .18); overflow: hidden; }
.kr-calc__bar i { display: block; height: 100%; width: 0; background: var(--kr-rose); border-radius: 4px; transition: width .45s; }
.kr-calc__month { grid-column: 1 / -1; margin: 0; font-size: 14.5px; color: rgba(246, 238, 227, .85); display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.kr-calc__month input { width: 74px; padding: 5px 8px; font-size: 15px; }
.kr-calc__month b { font: 700 19px/1 var(--kr-head); color: var(--kr-milk); }
.kr-calc__foot { margin: 12px 0 0; font-size: 13.5px; color: var(--kr-mute); display: flex; flex-wrap: wrap; gap: 6px 14px; align-items: center; }

.kr-toc__head { margin-bottom: 8px; }
.kr-toc__g { padding: 12px 0 4px; border-top: 1px solid var(--kr-line); }
.kr-toc__g:first-of-type { border-top: 0; }
.kr-toc__h { margin: 0 0 8px; font: 700 18px/1.2 var(--kr-head); display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; }
.kr-toc__h a { color: var(--kr-bor); display: inline-flex; align-items: baseline; gap: 8px; }
.kr-toc__h a i { font: 700 10.5px/1 var(--kr-text); font-style: normal; letter-spacing: .14em; text-transform: uppercase; color: var(--kr-milk); background: var(--kr-bor); padding: 4px 6px 3px; border-radius: 4px 4px 0 0; }
.kr-toc__h span { font: 400 13.5px/1.3 var(--kr-text); color: var(--kr-mute); }
.kr-toc__l { list-style: none; margin: 0; padding: 0; display: grid; gap: 2px; }
.kr-toc__i { display: grid; grid-template-columns: 30px minmax(0, 1fr); gap: 8px; padding: 6px 4px; border-radius: 4px; transition: background .2s; }
.kr-toc__i:hover { background: rgba(240, 220, 220, .4); }
.kr-toc__ico { color: var(--kr-rose-2); padding-top: 2px; }
.kr-toc__t { margin: 0; font: 700 15.5px/1.25 var(--kr-text); }
.kr-toc__t a { color: var(--kr-ink); }
.kr-toc__t a:hover { color: var(--kr-bor-2); }
.kr-toc__lp { margin: 2px 0 0; font-size: 13px; color: var(--kr-mute); display: flex; gap: 4px 10px; flex-wrap: wrap; }
.kr-toc__last { color: var(--kr-ink-2); max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.kr-toc__when { color: var(--kr-dim); white-space: nowrap; }

/* ------------------------------------------------------------------ раздел: страница журнала */
.kr-fhead { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 18px; align-items: center; margin: 4px 0 14px; padding: 20px 22px; background: var(--kr-bor); color: var(--kr-milk); border-radius: var(--kr-r); box-shadow: var(--kr-shadow); }
.kr-fhead__ico { width: 64px; height: 64px; display: grid; place-items: center; border-radius: 6px 20px 6px 20px; background: var(--kr-milk); color: var(--kr-bor); }
.kr-fhead .kr-kicker { color: var(--kr-rose); }
.kr-fhead .kr-h1 { color: var(--kr-milk); }
.kr-fhead__d { margin: 6px 0 0; color: rgba(246, 238, 227, .82); max-width: 76ch; font-size: 16px; }
.kr-fhead__act { display: grid; justify-items: end; gap: 10px; }
.kr-fhead__n { margin: 0; font: 400 17px/1 var(--kr-head); font-style: italic; color: var(--kr-rose-l); white-space: nowrap; }
.kr-fhead .new_thread_button { background: var(--kr-milk); color: var(--kr-bor); box-shadow: none; }
.kr-fhead .new_thread_button:hover { background: var(--kr-rose-l); color: var(--kr-bor-d); }
.kr-chips--forum { padding: 0 0 12px; }
.kr-chips--forum:empty { display: none; }
.kr-day { background: var(--kr-milk-2); border: 1px solid var(--kr-line); border-radius: var(--kr-r); box-shadow: var(--kr-shadow); padding: 18px 0 4px; }
.kr-day__head { display: flex; justify-content: space-between; align-items: end; gap: 12px; flex-wrap: wrap; padding: 0 22px 12px; border-bottom: 1.5px solid var(--kr-bor); }
.kr-sortl { margin: 0; display: flex; flex-wrap: wrap; gap: 4px 14px; font: 600 13.5px/1.3 var(--kr-text); color: var(--kr-mute); }
.kr-sortl a { color: var(--kr-bor-2); border-bottom: 1px dashed var(--kr-rose); }
.kr-day__list { list-style: none; margin: 0; padding: 0; }
.kr-trow { display: grid; grid-template-columns: 96px minmax(0, 1fr) 84px auto; gap: 14px; align-items: center; padding: 12px 22px 12px 0; border-bottom: 1px solid var(--kr-rule); transition: background .18s; }
.kr-trow:hover { background: rgba(240, 220, 220, .4); }
.kr-trow[hidden] { display: none; }
.kr-trow__time { align-self: stretch; display: grid; align-content: center; justify-items: end; padding-right: 14px; border-right: 2px solid var(--kr-rose-l); }
.kr-trow__time .kr-slot { justify-items: end; }
.kr-trow__h { margin: 0; font: 700 18px/1.28 var(--kr-head); }
.kr-trow__t { color: var(--kr-ink); }
.kr-trow__t:hover { color: var(--kr-bor-2); }
.kr-trow__meta { margin: 4px 0 0; display: flex; align-items: center; flex-wrap: wrap; gap: 4px 12px; font-size: 13.5px; color: var(--kr-mute); }
.kr-trow__by a { color: var(--kr-ink-2); font-weight: 700; }
.kr-trow__n { display: grid; justify-items: center; padding: 6px 4px; border-radius: 4px 12px 4px 12px; background: var(--kr-rose-l); color: var(--kr-bor); }
.kr-trow__n b { font: 700 20px/1 var(--kr-head); font-variant-numeric: tabular-nums; }
.kr-trow__n span { font-size: 11.5px; font-weight: 600; }
.kr-trow__n:hover { background: var(--kr-bor); color: var(--kr-milk); }
.kr-trow[data-state="wait"] .kr-trow__n { background: transparent; box-shadow: inset 0 0 0 1.2px var(--kr-rose); }
.kr-trow[data-state="hot"] .kr-trow__n { background: var(--kr-bor); color: var(--kr-milk); }
.kr-pin { display: inline-block; margin-right: 8px; padding: 2px 7px 1px; vertical-align: 3px; border-radius: 3px; background: var(--kr-bor); color: var(--kr-milk); font: 700 10.5px/1.3 var(--kr-text); letter-spacing: .12em; text-transform: uppercase; }
.kr-pages { font: 600 12.5px/1 var(--kr-text); margin-left: 8px; color: var(--kr-mute); }
.kr-sep { list-style: none; padding: 8px 22px 6px 110px; font: 700 11.5px/1 var(--kr-text); letter-spacing: .14em; text-transform: uppercase; color: var(--kr-rose-2); background: var(--kr-milk); border-bottom: 1px solid var(--kr-rule); }
.kr-day__list > .kr-empty { padding: 18px 22px; }
.kr-day__none { margin: 0; padding: 16px 22px; color: var(--kr-mute); font-style: italic; }
.kr-bar { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; margin: 14px 0; }
.kr-bar__r { display: flex; gap: 14px; flex-wrap: wrap; align-items: center; font-size: 14px; }
.kr-subs { margin: 0 0 16px; }
.kr-subs__l { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 12px; }
.kr-subs__i { background: var(--kr-milk-2); border: 1px solid var(--kr-line); border-left: 4px solid var(--kr-bor); border-radius: var(--kr-r); padding: 14px 16px; }
.kr-subs__t { margin: 0; font: 700 18px/1.2 var(--kr-head); }
.kr-subs__t a { color: var(--kr-ink); }
.kr-subs__d { margin: 6px 0; font-size: 14.5px; color: var(--kr-mute); }
.kr-subs__lp { margin: 0; font-size: 13.5px; }
.kr-subs__lt span { color: var(--kr-dim); }
.kr-subs__g { font: 700 20px/1.2 var(--kr-head); margin: 0 0 10px; }
.kr-new { display: none; }
.kr-modtools:empty { display: none; }

/* ------------------------------------------------------------------ тема: запись и дерево ответов */
.kr-ehead { display: grid; grid-template-columns: 104px minmax(0, 1fr) 290px; gap: 0; margin: 4px 0 12px; background: var(--kr-milk-2); border: 1px solid var(--kr-line); border-radius: var(--kr-r); box-shadow: var(--kr-shadow); overflow: hidden; }
.kr-ehead__slot { background: var(--kr-bor); color: var(--kr-milk); display: grid; align-content: start; justify-items: center; padding: 22px 8px; gap: 4px; }
.kr-ehead__slot b { font: 700 28px/1 var(--kr-head); font-variant-numeric: tabular-nums; }
.kr-ehead__slot i { font: 700 11px/1 var(--kr-text); font-style: normal; letter-spacing: .14em; text-transform: uppercase; color: var(--kr-rose); }
.kr-ehead__main { padding: 20px 22px; }
.kr-ehead__k { margin: 0 0 10px; display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; font-size: 14px; }
.kr-ehead__f a { color: var(--kr-mute); font-weight: 600; }
.kr-ehead__h1 { margin-bottom: 12px; }
.kr-ehead__by { margin: 0; display: flex; align-items: center; gap: 10px; font-size: 15px; color: var(--kr-ink-2); }
.kr-ehead__dl { margin: 0; padding: 18px 20px; display: grid; gap: 10px; align-content: start; border-left: 1px solid var(--kr-line); background: var(--kr-milk); }
.kr-ehead__dl div { display: grid; grid-template-columns: 90px minmax(0, 1fr); gap: 8px; align-items: center; }
.kr-ehead__dl dt { font: 700 11px/1.2 var(--kr-text); letter-spacing: .1em; text-transform: uppercase; color: var(--kr-mute); }
.kr-ehead__dl dd { margin: 0; font: 600 14.5px/1.3 var(--kr-text); color: var(--kr-ink); }
.kr-stack { display: flex; flex-wrap: wrap; }
.kr-stack .kr-face { margin: 0 -6px 2px 0; box-shadow: 0 0 0 2px var(--kr-milk); }
.kr-treebar { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; margin: 0 0 10px; font-size: 14px; color: var(--kr-mute); }
.kr-treebar p { margin: 0; }
.kr-posts { display: grid; gap: 0; }
.kr-post { --lane: 30px; position: relative; display: grid; grid-template-columns: 84px calc(var(--d, 0) * var(--lane)) minmax(0, 1fr); padding: 0 0 14px; }
.kr-anchor { position: absolute; top: -12px; }
.kr-post--d1 { --d: 1; } .kr-post--d2 { --d: 2; } .kr-post--d3 { --d: 3; } .kr-post--d4 { --d: 4; } .kr-post--d5 { --d: 5; }
.kr-post__time { padding-top: 14px; padding-right: 12px; text-align: right; border-right: 2px solid var(--kr-rose-l); }
.kr-post__time a { display: block; color: inherit; }
.kr-post__time time { display: grid; gap: 2px; justify-items: end; }
.kr-post__time b { font: 700 18px/1 var(--kr-head); color: var(--kr-bor); font-variant-numeric: tabular-nums; }
.kr-post__time i { font: 600 11.5px/1.15 var(--kr-text); font-style: normal; color: var(--kr-mute); }
.kr-post__time a:hover b { color: var(--kr-rose-2); }
.kr-post__lanes { position: relative; grid-column: 2; grid-row: 1; }
.kr-post__time { grid-column: 1; grid-row: 1; }
.kr-post__card { grid-column: 3; grid-row: 1; }
.kr-lane { position: absolute; top: 0; bottom: -14px; left: calc((var(--k) - 1) * var(--lane) + 15px); width: 0; border-left: 1.5px solid var(--kr-rose); }
.kr-lane--elbow { bottom: auto; height: 33px; border-bottom: 1.5px solid var(--kr-rose); width: 15px; border-bottom-left-radius: 10px; }
.kr-post__card { margin-left: 12px; background: var(--kr-milk-2); border: 1px solid var(--kr-line); border-radius: 4px 14px 4px 14px; box-shadow: var(--kr-shadow); min-width: 0; transition: box-shadow .25s, border-color .25s; }
.kr-post--root .kr-post__card { border-top: 4px solid var(--kr-bor); border-radius: 4px 18px 4px 18px; }
.kr-post--op .kr-post__card { border-color: var(--kr-rose); }
.kr-post.is-hl .kr-post__card { border-color: var(--kr-bor); box-shadow: 0 0 0 3px rgba(201, 138, 150, .35); }
.kr-post__bar { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; padding: 12px 16px 10px; border-bottom: 1px solid var(--kr-rule); }
.kr-post__id { display: grid; gap: 2px; min-width: 0; }
.kr-post__nick { margin: 0; display: flex; align-items: center; flex-wrap: wrap; gap: 4px 10px; font: 700 16px/1.2 var(--kr-text); }
.kr-post__nick a { color: var(--kr-ink); }
.kr-post__nick a:hover { color: var(--kr-bor-2); }
.kr-post__rank { margin: 0; }
.kr-op { padding: 2px 7px 1px; border-radius: 3px; background: var(--kr-bor); color: var(--kr-milk); font: 700 10.5px/1.3 var(--kr-text); letter-spacing: .1em; text-transform: uppercase; }
.kr-post__facts { margin: 0 0 0 auto; display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 4px; max-width: 54%; }
.kr-fact { padding: 2px 8px; border-radius: 999px; background: var(--kr-milk); border: 1px solid var(--kr-line); font-size: 12.5px; color: var(--kr-ink-2); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%; }
.kr-fact--fid1 { color: var(--kr-mute); border-style: dashed; }
.kr-post__re { display: inline-block; margin: 10px 16px 0; font: 700 12.5px/1.2 var(--kr-text); color: var(--kr-rose-2); }
.kr-post__re::before { content: ""; display: inline-block; width: 12px; height: 8px; margin-right: 5px; border-left: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; border-bottom-left-radius: 4px; vertical-align: 2px; }
.kr-post__body { padding: 10px 18px 12px; font-size: 17px; line-height: 28px; color: var(--kr-ink);
	background-image: repeating-linear-gradient(to bottom, transparent 0 27px, var(--kr-rule) 27px 28px); background-position: 0 10px; background-origin: padding-box; overflow-wrap: anywhere; }
.kr-post--root .kr-post__body { font-size: 18px; }
.kr-post__body p { margin: 0 0 28px; }
.post_meta { padding: 0 18px; font-size: 12.5px; color: var(--kr-dim); }
.post_meta:empty, .post_meta:has(> span:empty:only-child) { display: none; }
.kr-post__foot { display: flex; justify-content: space-between; gap: 8px; flex-wrap: wrap; padding: 6px 16px 10px; }
.kr-post__foot:not(:has(a)) { display: none; }
.kr-post.is-folded > .kr-post__card .kr-post__body, .kr-post.is-folded > .kr-post__card .kr-post__foot { }
.kr-post[data-folded="1"] { display: none; }
.kr-fold { margin: 8px 16px 12px; padding: 5px 12px; border-radius: 999px; border: 1.2px solid var(--kr-rose); background: var(--kr-milk); color: var(--kr-bor); font: 700 12.5px/1.2 var(--kr-text); cursor: pointer; }
.kr-fold:hover { background: var(--kr-rose-l); }
.kr-guest { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; margin: 6px 0 16px 96px; padding: 14px 18px; border: 1.5px dashed var(--kr-rose); border-radius: 4px 14px 4px 14px; background: var(--kr-milk-2); }
.kr-guest__ico { color: var(--kr-rose-2); }
.kr-guest p { margin: 0; flex: 1 1 300px; color: var(--kr-ink-2); font-size: 15px; }
.kr-tfoot { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; margin: 16px 0; padding-top: 12px; border-top: 1px solid var(--kr-line); }
.kr-tfoot__note { margin: 0; font-size: 13.5px; color: var(--kr-mute); }
.kr-nextprev { display: flex; gap: 18px; font: 700 14px/1.2 var(--kr-text); }
.kr-tools { display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; font-size: 13.5px; }
.kr-tools .thread_tools { list-style: none; margin: 0; padding: 0; display: flex; gap: 14px; flex-wrap: wrap; }
.kr-tools .thread_tools li { background: none !important; padding: 0 !important; }

/* ------------------------------------------------------------------ профиль: карточка мастера */
.kr-card__head { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 24px; align-items: center; padding: 24px; background: var(--kr-bor); color: var(--kr-milk); border-radius: var(--kr-r); box-shadow: var(--kr-shadow); margin: 4px 0 18px; position: relative; overflow: hidden; }
.kr-card__head::after { content: ""; position: absolute; right: -40px; top: -40px; width: 220px; height: 220px; border-radius: 50%; border: 1.5px dashed rgba(201, 138, 150, .4); pointer-events: none; }
.kr-card__photo .kr-face { box-shadow: 0 0 0 4px var(--kr-milk); }
.kr-card__head .kr-kicker { color: var(--kr-rose); }
.kr-card__name { color: var(--kr-milk); }
.kr-card__name a, .kr-card__name span { color: inherit; }
.kr-card__salon { margin: 6px 0 10px; font: 400 19px/1.25 var(--kr-head); font-style: italic; color: var(--kr-rose-l); }
.kr-card__rank { margin: 0; display: flex; align-items: center; flex-wrap: wrap; gap: 8px 14px; font: 700 15px/1.2 var(--kr-text); }
.kr-card__rank .kr-rep { color: var(--kr-rose-l); }
.kr-card__nums { list-style: none; margin: 0; padding: 0; display: flex; gap: 10px; position: relative; z-index: 1; }
.kr-card__nums li { display: grid; justify-items: center; min-width: 106px; padding: 12px 14px; border-radius: 4px 14px 4px 14px; background: var(--kr-milk); color: var(--kr-bor); }
.kr-card__nums b { font: 700 32px/1 var(--kr-head); font-variant-numeric: tabular-nums; }
.kr-card__nums span { font-size: 13px; font-weight: 600; color: var(--kr-mute); }
.kr-card__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 18px; margin-bottom: 18px; align-items: start; }
.kr-box { background: var(--kr-milk-2); border: 1px solid var(--kr-line); border-radius: var(--kr-r); box-shadow: var(--kr-shadow); padding: 20px 22px; min-width: 0; }
.kr-box > .kr-h2 { margin-bottom: 12px; }
.kr-facts__dl { margin: 0; display: grid; }
.kr-facts__dl div { display: grid; grid-template-columns: 170px minmax(0, 1fr); gap: 10px; padding: 9px 0; border-bottom: 1px solid var(--kr-rule); }
.kr-facts__dl dt { font: 700 12px/1.4 var(--kr-text); letter-spacing: .08em; text-transform: uppercase; color: var(--kr-mute); }
.kr-facts__dl dd { margin: 0; font-weight: 600; }
.kr-facts__links { margin: 14px 0 0; display: flex; flex-wrap: wrap; gap: 8px 16px; font-size: 14px; }
.kr-load__l { list-style: none; margin: 0 0 16px; padding: 0; display: grid; gap: 8px; }
.kr-load__i { display: grid; grid-template-columns: minmax(0, 1fr) 120px 30px; gap: 10px; align-items: center; font-size: 14px; }
.kr-load__l .kr-empty { display: block; }
.kr-load__l2 { }
.kr-load__i .kr-load__l { margin: 0; }
.kr-load__i > span:first-child { display: flex; align-items: center; gap: 6px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; color: var(--kr-ink-2); }
.kr-load__i .kr-ico { color: var(--kr-rose-2); }
.kr-load__bar { height: 9px; border-radius: 5px; background: var(--kr-milk-3); overflow: hidden; }
.kr-load__bar i { display: block; height: 100%; background: var(--kr-bor); border-radius: 5px; }
.kr-load__i b { font: 700 15px/1 var(--kr-head); color: var(--kr-bor); text-align: right; }
.kr-lad__h { margin-top: 6px; }
.kr-lad { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; }
.kr-lad__i { display: grid; grid-template-columns: 30px minmax(0, 1fr) auto; gap: 8px; align-items: center; padding: 5px 8px; border-radius: 4px; color: var(--kr-dim); font-size: 14.5px; }
.kr-lad__i.is-past { color: var(--kr-ink-2); }
.kr-lad__i.is-now { background: var(--kr-rose-l); color: var(--kr-bor); font-weight: 700; }
.kr-lad__n { font-size: 12.5px; }
.kr-pl__l, .kr-pa__l { list-style: none; margin: 0; padding: 0; }
.kr-pl__i { display: grid; grid-template-columns: 84px minmax(0, 1fr); gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--kr-rule); }
.kr-pl__i .kr-slot { justify-items: end; padding-right: 10px; border-right: 2px solid var(--kr-rose-l); }
.kr-pl__t { font: 700 16.5px/1.3 var(--kr-head); color: var(--kr-ink); }
.kr-pl__m { margin: 5px 0 0; display: flex; gap: 10px; align-items: center; flex-wrap: wrap; font-size: 13px; color: var(--kr-mute); }
.kr-pa__i { padding: 10px 0; border-bottom: 1px solid var(--kr-rule); }
.kr-pa__q { margin: 0 0 4px; font: 700 15.5px/1.3 var(--kr-head); }
.kr-pa__q a { color: var(--kr-ink); }
.kr-pa__a { margin: 0; padding-left: 12px; border-left: 2px solid var(--kr-rose); font-size: 14.5px; color: var(--kr-ink-2); }
.kr-pa__a a { color: inherit; }
.kr-pa__w { margin: 4px 0 0; font-size: 12.5px; color: var(--kr-dim); }
.kr-card__extra:empty { display: none; }

/* ------------------------------------------------------------------ ошибки и переходы */
.kr-msg { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 0; max-width: 820px; margin: 30px auto; background: var(--kr-milk-2); border: 1px solid var(--kr-line); border-radius: var(--kr-r); box-shadow: var(--kr-shadow); overflow: hidden; }
.kr-msg__slot { margin: 0; background: var(--kr-bor); color: var(--kr-milk); display: grid; align-content: center; justify-items: center; gap: 6px; padding: 24px 10px; }
.kr-msg__slot b { font: 700 32px/1 var(--kr-head); letter-spacing: .04em; }
.kr-msg__slot i { font: 700 11px/1.2 var(--kr-text); font-style: normal; letter-spacing: .12em; text-transform: uppercase; color: var(--kr-rose); text-align: center; }
.kr-msg__txt { padding: 24px 26px; }
.kr-msg__t { font-size: 28px; margin-bottom: 10px; }
.kr-msg__body { color: var(--kr-ink-2); }
.kr-msg__body ol, .kr-msg__body ul { padding-left: 1.2em; }
.kr-msg__foot { margin: 14px 0 0; }
.kr-page--redirect { display: grid; place-items: center; min-height: 100vh; padding: 16px; }
.kr-page--redirect .kr-msg { margin: 0; }

/* ------------------------------------------------------------------ подвал */
.kr-foot { background: var(--kr-bor-d); color: rgba(246, 238, 227, .82); margin-top: 30px; position: relative; }
.kr-foot__in { position: relative; max-width: var(--kr-w); margin: 0 auto; padding: 30px 24px 26px; display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 18px 40px; align-items: start; }
.kr-foot__name { margin: 0 0 6px; font: 700 24px/1 var(--kr-head); color: var(--kr-milk); }
.kr-foot__brand p:last-child { margin: 0; font-size: 15px; max-width: 60ch; }
.kr-foot__links { display: grid; grid-template-columns: 1fr 1fr; gap: 6px 18px; font-weight: 600; font-size: 15px; }
.kr-foot__links a, .kr-foot__up { color: var(--kr-milk); }
.kr-foot__links a:hover, .kr-foot__up:hover { color: var(--kr-rose); }
.kr-foot__note { grid-column: 1 / -1; margin: 0; padding-top: 14px; border-top: 1px dashed rgba(246, 238, 227, .2); font-size: 13.5px; color: rgba(246, 238, 227, .6); }
.kr-foot__up { position: absolute; right: 24px; top: -18px; padding: 8px 14px; border-radius: 999px; background: var(--kr-rose); color: var(--kr-bor-d) !important; font: 700 13px/1 var(--kr-text); }
.kr-foot__rule { height: 8px; background: repeating-linear-gradient(90deg, var(--kr-rose) 0 18px, var(--kr-bor) 18px 22px, var(--kr-beige) 22px 40px, var(--kr-bor) 40px 44px); }

/* ------------------------------------------------------------------ вход и меню участника */
.kr-login__p { margin: 0 0 12px; font-size: 14px; color: var(--kr-mute); }
.kr-field { margin: 0 0 12px; display: grid; gap: 5px; }
.kr-field label { font: 700 12px/1 var(--kr-text); letter-spacing: .06em; color: var(--kr-mute); }
.kr-field--row { display: flex; justify-content: space-between; align-items: center; gap: 10px; font-size: 13px; }
.kr-field--row label { letter-spacing: 0; font: 600 13.5px/1.2 var(--kr-text); color: var(--kr-ink-2); }
.kr-field input.textbox { width: 100%; }
.kr-field .button { width: 100%; }
.kr-mine__who { display: flex; align-items: center; gap: 10px; margin: 0 0 12px; }
.kr-mine__who span { display: grid; }
.kr-mine__who a { font-size: 13px; }
.kr-mine__links { list-style: none; margin: 0; padding: 0; display: grid; gap: 1px; }
.kr-mine__links a { display: block; padding: 8px 10px; border-radius: 4px; color: var(--kr-ink-2); font-size: 15px; }
.kr-mine__links a:hover { background: var(--kr-rose-l); color: var(--kr-bor); }
.kr-pm[data-n="0"] { display: none; }
.kr-pm { background: var(--kr-bor); color: var(--kr-milk); border-radius: 999px; padding: 1px 6px; font: 700 11px/1.3 var(--kr-text); }

/* ------------------------------------------------------------------ стандартные элементы MyBB в стиле журнала */
.tborder { width: 100%; border-collapse: separate; border-spacing: 0; background: var(--kr-milk-2); border: 1px solid var(--kr-line); border-radius: var(--kr-r); overflow: hidden; margin: 0 0 18px; color: var(--kr-ink); box-shadow: var(--kr-shadow); }
.tborder td, .tborder th { padding: 10px 14px; border-bottom: 1px solid var(--kr-rule); vertical-align: top; text-align: left; }
.thead { background: var(--kr-bor); color: var(--kr-milk); font: 700 18px/1.3 var(--kr-head); }
.thead a, .thead strong { color: var(--kr-milk); }
.thead .expcolimage { float: right; }
.tcat { background: var(--kr-rose-l); font: 700 12px/1.3 var(--kr-text); letter-spacing: .08em; text-transform: uppercase; color: var(--kr-bor); }
.tcat a { color: var(--kr-bor); }
.trow1, .trow2 { background: transparent; }
.trow2 { background: rgba(240, 220, 220, .18); }
.trow_shaded { background: rgba(201, 138, 150, .14); }
.trow_selected td, .trow_selected { background: var(--kr-rose-l); }
.tfoot { background: var(--kr-milk); }
.tborder a, .trow1 a, .trow2 a, .tfoot a { color: var(--kr-bor-2); }
.smalltext { font-size: 13px; line-height: 1.45; color: var(--kr-mute); }
.largetext { font: 700 20px/1.3 var(--kr-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"] {
	font: 400 16px/1.4 var(--kr-text); color: var(--kr-ink); background: #fffdf9; border: 1.2px solid var(--kr-line-2); border-radius: 4px; padding: 9px 12px; max-width: 100%; transition: border-color .2s, box-shadow .2s; }
textarea { width: 100%; min-height: 170px; line-height: 1.55; }
input.textbox:focus, textarea:focus, select:focus, input[type="text"]:focus, input[type="password"]:focus, input[type="search"]:focus { outline: none; border-color: var(--kr-rose-2); box-shadow: 0 0 0 3px rgba(201, 138, 150, .25); }
.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: 6px; font: 700 15px/1 var(--kr-text); color: var(--kr-milk); background: var(--kr-bor); border: 0; border-radius: 999px; padding: 12px 20px; cursor: pointer; text-decoration: none; transition: background .2s, transform .15s; }
.button:hover, input.button:hover, input[type="submit"]:hover, button[type="submit"]:hover, a.button:hover { background: var(--kr-bor-d); color: var(--kr-milk); }
.button:active, input[type="submit"]:active { transform: translateY(1px); }
.closed_button { background: var(--kr-milk-3); color: var(--kr-mute); }
.pagination { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; font: 700 13.5px/1 var(--kr-text); }
.pagination .pages { color: var(--kr-mute); margin-right: 6px; }
.pagination a, .pagination .pagination_current { display: inline-grid; place-items: center; min-width: 34px; height: 34px; padding: 0 9px; border: 1px solid var(--kr-line-2); border-radius: 3px 10px 3px 10px; color: var(--kr-ink-2); background: var(--kr-milk-2); }
.pagination a:hover { border-color: var(--kr-bor); color: var(--kr-bor); }
.pagination .pagination_current { background: var(--kr-bor); border-color: var(--kr-bor); color: var(--kr-milk); }
.postbit_buttons { display: flex; flex-wrap: wrap; gap: 4px 14px; }
.postbit_buttons > a, .postbit_buttons a { display: inline-flex; align-items: center; padding: 3px 0; font: 700 12.5px/1.2 var(--kr-text); color: var(--kr-mute); }
.postbit_buttons a:hover { color: var(--kr-bor); }
.postbit_buttons a span { background: none !important; padding: 0 !important; }
.popup_menu { background: var(--kr-milk-2); border: 1px solid var(--kr-line-2); border-radius: var(--kr-r); padding: 6px; box-shadow: 0 18px 30px -14px rgba(43, 17, 24, .45); z-index: 50; }
.popup_menu .popup_item { display: block; padding: 7px 10px; color: var(--kr-ink-2); font-size: 15px; border-radius: 4px; }
.popup_menu .popup_item:hover { background: var(--kr-rose-l); }
.blocker { background: rgba(43, 17, 24, .55) !important; }
.modal { background: var(--kr-milk-2) !important; color: var(--kr-ink); border: 0; border-top: 4px solid var(--kr-bor); border-radius: var(--kr-r) !important; box-shadow: 0 30px 60px -20px rgba(43, 17, 24, .6) !important; padding: 18px !important; }
.modal .tborder { margin: 0; box-shadow: none; }
.error, div.error { background: var(--kr-rose-l); border: 1.2px solid var(--kr-rose-2); border-radius: var(--kr-r); padding: 12px 16px; color: var(--kr-ink); margin-bottom: 14px; }
.red_alert, .pm_alert { background: var(--kr-rose-l); border: 1px solid var(--kr-rose); border-radius: var(--kr-r); padding: 10px 14px; margin-bottom: 14px; }
fieldset { border: 1px solid var(--kr-line-2); border-radius: var(--kr-r); padding: 12px 14px; margin: 0 0 14px; }
legend { font: 700 12px/1 var(--kr-text); letter-spacing: .08em; text-transform: uppercase; color: var(--kr-mute); padding: 0 6px; }
.usercp_nav_item, .modcp_nav_item { display: block; padding: 6px 4px; color: var(--kr-ink-2); }
.sceditor-container { border-radius: 4px; overflow: hidden; max-width: 100%; }
.ignored_post, .deleted_post_hidden { padding: 12px 16px; border: 1px dashed var(--kr-line-2); border-radius: var(--kr-r); color: var(--kr-mute); margin-bottom: 12px; }
.scaleimages img { max-width: 100%; height: auto; border-radius: 4px; }
/* BB-коды */
blockquote.mycode_quote { margin: 0 0 28px; padding: 0 14px 0 16px; border-left: 3px solid var(--kr-rose); background: rgba(240, 220, 220, .45); border-radius: 0 12px 12px 0; color: var(--kr-ink-2); font-size: 16px; line-height: 28px; }
blockquote.mycode_quote cite { display: block; font: 700 13px/28px var(--kr-text); font-style: normal; color: var(--kr-bor-2); }
blockquote.mycode_quote cite > span { color: var(--kr-dim); margin-left: 6px; font-weight: 600; font-size: 11.5px; }
.codeblock { margin: 0 0 28px; background: var(--kr-milk); border: 1px solid var(--kr-line-2); border-radius: 4px; overflow: hidden; line-height: 1.5; }
.codeblock .title { font: 700 11px/1 var(--kr-text); letter-spacing: .12em; text-transform: uppercase; color: var(--kr-mute); padding: 8px 12px; border-bottom: 1px solid var(--kr-line); }
.codeblock code { display: block; padding: 12px; overflow-x: auto; font: 13.5px/1.5 ui-monospace, "SF Mono", Menlo, Consolas, monospace; color: var(--kr-ink); }
.mycode_list, ul.mycode_list, ol.mycode_list { padding-left: 1.4em; margin: 0 0 28px; }
.post_body li::marker { color: var(--kr-rose-2); }
.post_body hr, .mycode_hr { border: 0; height: 2px; margin: 13px 0; background: repeating-linear-gradient(90deg, var(--kr-rose) 0 10px, transparent 10px 16px); }
.signature { margin: 0 18px 10px; padding-top: 8px; border-top: 1px dashed var(--kr-line-2); font-size: 14px; color: var(--kr-mute); }
.video_embed iframe, .post_body iframe { max-width: 100%; border-radius: 4px; }
.post_body .mycode_s { text-decoration-color: var(--kr-rose-2); text-decoration-thickness: 1.5px; }
.post_body .mycode_u { text-decoration-color: var(--kr-rose-2); text-underline-offset: 3px; }
.post_body img.mycode_img { border-radius: 4px; }
.post_body .mycode_b, .post_body strong { font-weight: 700; }

/* ------------------------------------------------------------------ планшет */
@media (max-width: 1180px) {
	.kr-desk { grid-template-columns: minmax(0, 1fr); }
	.kr-memo { position: static; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 0 22px; }
	.kr-memo__head, .kr-seg, .kr-memo__foot { grid-column: 1 / -1; }
	.kr-rule { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 0 22px; }
	.kr-rule[hidden] { display: none; }
	.kr-steps { grid-row: span 2; }
	.kr-pair { grid-template-columns: minmax(0, 1fr); }
	.kr-ehead { grid-template-columns: 90px minmax(0, 1fr); }
	.kr-ehead__dl { grid-column: 1 / -1; border-left: 0; border-top: 1px solid var(--kr-line); grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); }
	.kr-card__head { grid-template-columns: auto minmax(0, 1fr); }
	.kr-card__nums { grid-column: 1 / -1; }
}
@media (max-width: 900px) {
	.kr-top__in { flex-wrap: wrap; gap: 12px 16px; }
	.kr-find { order: 3; width: 100%; margin-left: 0; }
	.kr-me { margin-left: auto; }
	.kr-cover { grid-template-columns: minmax(0, 1fr); }
	.kr-today { grid-template-columns: auto minmax(0, 1fr); gap: 0 18px; align-items: center; }
	.kr-today__dow { grid-column: 1; }
	.kr-today__d { grid-column: 1; margin-bottom: 0; }
	.kr-today__last { grid-column: 2; grid-row: 1 / span 2; border-top: 0; border-left: 1px dashed rgba(246, 238, 227, .3); padding: 0 0 0 16px; }
	.kr-card__grid { grid-template-columns: minmax(0, 1fr); }
	.kr-foot__in { grid-template-columns: minmax(0, 1fr); }
	.kr-days { grid-template-columns: repeat(7, minmax(78px, 1fr)); overflow-x: auto; }
}

/* ------------------------------------------------------------------ телефон */
@media (max-width: 640px) {
	body { font-size: 16px; }
	.kr-top__in { padding: 14px 16px 10px; }
	.kr-logo__mark { width: 38px; height: 38px; }
	.kr-logo__name { font-size: 21px; }
	.kr-logo__sub { display: none; }
	.kr-me__b span { display: none; }
	.kr-me__b { padding: 8px; }
	.kr-me__panel { width: min(300px, calc(100vw - 32px)); }
	.kr-tabs { padding: 0 16px; }
	.kr-tab { min-width: 0; padding: 8px 13px 9px; }
	.kr-tab i { display: none; }
	.kr-tab span { font-size: 16px; }
	.kr-subtabs__in { padding: 2px 16px 0; gap: 4px 16px; }
	.kr-crumbs-row { padding: 12px 16px 0; }
	.kr-main { padding: 14px 16px 30px; }
	.kr-cover__h { font-size: 38px; }
	.kr-cover__lead { font-size: 16.5px; }
	.kr-cover__go .kr-btn { padding: 10px 14px; font-size: 14px; }
	.kr-today { grid-template-columns: minmax(0, 1fr); padding: 22px 18px 16px; }
	.kr-today__d b { font-size: 64px; }
	.kr-today__last { grid-column: 1; grid-row: auto; border-left: 0; border-top: 1px dashed rgba(246, 238, 227, .3); padding: 12px 0 0; margin-top: 10px; }
	.kr-today__rings { gap: 90px; }
	.kr-led { padding-top: 16px; }
	.kr-led__head, .kr-chips { padding-left: 14px; padding-right: 14px; }
	.kr-chips { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; }
	.kr-chip { flex: none; }
	.kr-led__t thead { display: none; }
	.kr-led__t, .kr-led__t tbody { display: block; }
	.kr-led__row { display: grid; grid-template-columns: 64px minmax(0, 1fr) auto; gap: 4px 10px; padding: 12px 14px; border-bottom: 1px solid var(--kr-rule); }
	.kr-led__row td { display: block; padding: 0 !important; border: 0; }
	.kr-led__time { grid-row: 1 / span 3; width: auto; border-right: 2px solid var(--kr-rose-l); padding-right: 8px !important; }
	.kr-led__subj { grid-column: 2 / span 2; min-width: 0; }
	.kr-led__dir { grid-column: 2; width: auto; }
	.kr-led__who { grid-column: 2; }
	.kr-led__n { grid-column: 3; grid-row: 2 / span 2; align-self: center; width: auto; }
	.kr-memo { display: block; padding: 18px 16px; }
	.kr-rule { display: block; }
	.kr-cal, .kr-calc, .kr-toc { padding: 18px 14px; }
	.kr-weekpick__l { min-width: 150px; }
	.kr-grid__in { min-width: 720px; }
	.kr-grid__hours, .kr-grid__row { grid-template-columns: 112px minmax(0, 1fr); }
	.kr-grid__who { position: sticky; left: 0; z-index: 4; padding: 8px; }
	.kr-grid__who b { font-size: 14px; }
	.kr-grid__hours > span { position: sticky; left: 0; z-index: 4; background: var(--kr-milk-3); }
	.kr-calc__res { grid-template-columns: minmax(0, 1fr); }
	.kr-calc__total b { font-size: 32px; }
	.kr-calc__t thead { display: none; }
	.kr-calc__t, .kr-calc__t tbody { display: block; }
	.kr-calc__t tr { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)) auto; gap: 4px 6px; padding: 8px 0; border-bottom: 1px solid var(--kr-rule); }
	.kr-calc__t td { display: block; padding: 0; border: 0; width: auto !important; }
	.kr-calc__t td.kr-c-name { grid-column: 1 / span 3; min-width: 0; }
	.kr-calc__t td.kr-c-sum { grid-column: 4; grid-row: 2; align-self: center; }
	.kr-calc__t td.kr-c-del { grid-column: 4; grid-row: 1; justify-self: end; }
	.kr-fhead { grid-template-columns: auto minmax(0, 1fr); padding: 16px; gap: 12px 14px; }
	.kr-fhead__ico { width: 48px; height: 48px; }
	.kr-fhead__act { grid-column: 1 / -1; justify-items: start; grid-auto-flow: column; align-items: center; justify-content: space-between; }
	.kr-day__head { padding: 0 14px 10px; }
	.kr-trow { grid-template-columns: 70px minmax(0, 1fr) auto; gap: 10px; padding: 10px 12px 10px 0; }
	.kr-trow__time { padding-right: 8px; }
	.kr-trow__n { padding: 5px 6px; min-width: 50px; }
	.kr-trow__h { font-size: 17px; }
	.kr-trow__open { display: none; }
	.kr-sep { padding-left: 82px; }
	.kr-ehead { grid-template-columns: minmax(0, 1fr); }
	.kr-ehead__slot { grid-auto-flow: column; justify-content: start; align-items: baseline; padding: 10px 16px; gap: 10px; }
	.kr-ehead__slot b { font-size: 22px; }
	.kr-ehead__main { padding: 16px; }
	.kr-ehead__dl { padding: 14px 16px; }
	.kr-post { --lane: 14px; grid-template-columns: 0 calc(var(--d, 0) * var(--lane)) minmax(0, 1fr); }
	.kr-post__time { position: absolute; right: 12px; top: 12px; padding: 0; border: 0; z-index: 2; }
	.kr-post__time time { grid-auto-flow: column; align-items: baseline; gap: 6px; }
	.kr-post__time b { font-size: 15px; }
	.kr-lane { left: calc((var(--k) - 1) * var(--lane) + 6px); }
	.kr-lane--elbow { width: 8px; }
	.kr-post__card { margin-left: 6px; }
	.kr-post__bar { padding: 12px 12px 10px; padding-right: 110px; }
	.kr-post__facts { margin: 0; max-width: 100%; justify-content: flex-start; width: 100%; }
	.kr-post__body { padding: 10px 13px 12px; font-size: 16px; }
	.kr-post--root .kr-post__body { font-size: 16.5px; }
	.kr-post__re { margin: 10px 12px 0; }
	.kr-guest { margin-left: 0; }
	.kr-card__head { grid-template-columns: minmax(0, 1fr); padding: 18px; justify-items: start; }
	.kr-face--xl { width: 96px; height: 96px; font-size: 34px; }
	.kr-card__nums li { min-width: 0; flex: 1; }
	.kr-facts__dl div { grid-template-columns: minmax(0, 1fr); gap: 2px; }
	.kr-load__i { grid-template-columns: minmax(0, 1fr) 70px 26px; }
	.kr-box { padding: 16px 14px; }
	.kr-msg { grid-template-columns: minmax(0, 1fr); }
	.kr-msg__slot { grid-auto-flow: column; justify-content: start; padding: 14px 18px; gap: 12px; align-items: center; }
	.kr-msg__slot b { font-size: 24px; }
	.kr-msg__txt { padding: 18px; }
	.kr-foot__in { padding: 26px 16px 22px; }
	.kr-foot__links { grid-template-columns: minmax(0, 1fr); }
	.kr-foot__up { right: 16px; }
	.tborder td, .tborder th { padding: 8px 10px; }
	.tborder { display: block; overflow-x: auto; }
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

/* ------------------------------------------------------------------ ссылки в сообщениях: свой стиль форума («палитра типс»)
   Под словом ряд крошечных миндалевидных типс-образцов гель-лака кончиком вверх в трёх тонах:
   пыльная роза, беж-роза, бордо (SVG data-URI, шаг 18px, высота 7px, repeat-x), без подчёркивания.
   При наведении текст темнеет и под нижние 40 % слова ложится молочно-розовая подложка. Значка у внешних ссылок нет. */
:is(.post_body, .signature, [class*="-post__body"], [class*="-post__sign"]) a.mycode_url {
	color: #6b2335; font-weight: 600; text-decoration: none; padding-bottom: 8px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='7' viewBox='0 0 18 7'%3E%3Cpath d='M.9 7C.9 3.4 1.8.6 3 .6S5.1 3.4 5.1 7z' fill='%23c98a96'/%3E%3Cpath d='M6.9 7C6.9 3.4 7.8.6 9 .6s2.1 2.8 2.1 6.4z' fill='%23e3c2b8'/%3E%3Cpath d='M12.9 7c0-3.6.9-6.4 2.1-6.4s2.1 2.8 2.1 6.4z' fill='%237d2a3e'/%3E%3Cpath d='M2.3 3.4c.1-1 .4-1.8.8-2.2M8.3 3.4c.1-1 .4-1.8.8-2.2M14.3 3.4c.1-1 .4-1.8.8-2.2' stroke='%23fff' stroke-opacity='.6' stroke-width='.6' fill='none' stroke-linecap='round'/%3E%3C/svg%3E"), linear-gradient(transparent, transparent);
	background-repeat: repeat-x, no-repeat; background-position: 0 100%, 0 0; background-size: 18px 7px, 100% 100%;
	-webkit-box-decoration-break: clone; box-decoration-break: clone; transition: color .2s, background-size .25s;
}
:is(.post_body, .signature, [class*="-post__body"], [class*="-post__sign"]) a.mycode_url:hover {
	color: #4a1424;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='7' viewBox='0 0 18 7'%3E%3Cpath d='M.9 7C.9 3.4 1.8.6 3 .6S5.1 3.4 5.1 7z' fill='%23c98a96'/%3E%3Cpath d='M6.9 7C6.9 3.4 7.8.6 9 .6s2.1 2.8 2.1 6.4z' fill='%23e3c2b8'/%3E%3Cpath d='M12.9 7c0-3.6.9-6.4 2.1-6.4s2.1 2.8 2.1 6.4z' fill='%237d2a3e'/%3E%3Cpath d='M2.3 3.4c.1-1 .4-1.8.8-2.2M8.3 3.4c.1-1 .4-1.8.8-2.2M14.3 3.4c.1-1 .4-1.8.8-2.2' stroke='%23fff' stroke-opacity='.6' stroke-width='.6' fill='none' stroke-linecap='round'/%3E%3C/svg%3E"), linear-gradient(to top, transparent 0 7px, rgba(240, 220, 220, .95) 7px 40%, transparent 40%);
}
:is(.post_body, .signature, [class*="-post__body"], [class*="-post__sign"]) a.mycode_url::after { content: none; }
