/* «ПФ АртМеталл» — тема «Калька»: мессенджер мастерской, задумано → сделано.
   Тёмный интерфейс воронёной стали, акцент — цвета побежалости (калёный металл: солома → бронза → пурпур → синь).
   Каркас: рейка каналов слева, список тем-чатов, справа разговор пузырями; на телефоне — экраны и нижний док.
   Сообщения автора темы — на кальке справа (задумка), ответы остальных — на стали слева.
   Шрифты: Yeseva One (знак, заголовки), Arsenal (интерфейс и текст), Bad Script (карандашные пометки на кальке). Префикс pa-. */

@font-face { font-family: "Arsenal"; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/arsenal-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: "Arsenal"; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/arsenal-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+20BD, U+2122, U+2190-2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Arsenal"; font-style: normal; font-weight: 700; font-display: swap; src: url(fonts/arsenal-cyrillic-700-normal.woff2) format("woff2"); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Arsenal"; font-style: normal; font-weight: 700; font-display: swap; src: url(fonts/arsenal-latin-700-normal.woff2) format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+20BD, U+2122, U+2190-2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Arsenal"; font-style: italic; font-weight: 400; font-display: swap; src: url(fonts/arsenal-cyrillic-400-italic.woff2) format("woff2"); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Arsenal"; font-style: italic; font-weight: 400; font-display: swap; src: url(fonts/arsenal-latin-400-italic.woff2) format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+20BD, U+2122, U+2190-2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Yeseva One"; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/yeseva-one-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: "Yeseva One"; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/yeseva-one-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+20BD, U+2122, U+2190-2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Bad Script"; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/bad-script-cyrillic-400-normal.woff2) format("woff2"); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Bad Script"; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/bad-script-latin-400-normal.woff2) format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+20BD, U+2122, U+2190-2193, U+2212, U+2215, U+FEFF, U+FFFD; }

:root {
	--s0: #0c0e10;
	--s1: #131619;
	--s2: #191d21;
	--s3: #21262b;
	--s4: #2b3137;
	--line: #2c3238;
	--line2: #3b434b;
	--tx: #e6e8ea;
	--tx2: #bcc0c4;
	--tx3: #979ca2;
	--kalka: #ebe5d6;
	--kalka2: #ded7c4;
	--gr: #23262a;
	--gr2: #4a4e54;
	--gr3: #5d6167;
	--straw: #e2b75c;
	--straw-d: #b8892e;
	--bronze: #cdb58a;
	--purple: #b28ad8;
	--blue: #8aa6f2;
	--sky: #86bde3;
	--ember: #ff8a4c;
	--temper: linear-gradient(90deg, #e2b75c 0%, #c98348 28%, #8e5aa8 58%, #4f73d6 82%, #86bde3 100%);
	--k-vorota: #e2b75c;
	--k-perila: #d4bc8e;
	--k-navesy: #8aa6f2;
	--k-mangaly: #ff8a4c;
	--k-mebel: #b28ad8;
	--k-reshetki: #86bde3;
	--k-none: #8c8a85;
	--display: "Yeseva One", Georgia, "Times New Roman", serif;
	--text: "Arsenal", "Segoe UI", Arial, sans-serif;
	--hand: "Bad Script", "Segoe Print", cursive;
	--rail: 90px;
	--listw: 360px;
	--tx-steel: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220' viewBox='0 0 220 220'%3E%3Cg fill='none' stroke-width='1'%3E%3Cellipse cx='30' cy='34' rx='16' ry='11' stroke='rgba(255,255,255,0.025)'/%3E%3Cellipse cx='120' cy='22' rx='20' ry='13' stroke='rgba(0,0,0,0.25)'/%3E%3Cellipse cx='190' cy='70' rx='15' ry='10' stroke='rgba(255,255,255,0.022)'/%3E%3Cellipse cx='70' cy='110' rx='22' ry='14' stroke='rgba(0,0,0,0.22)'/%3E%3Cellipse cx='160' cy='150' rx='18' ry='12' stroke='rgba(255,255,255,0.025)'/%3E%3Cellipse cx='40' cy='186' rx='17' ry='11' stroke='rgba(0,0,0,0.22)'/%3E%3Cellipse cx='200' cy='204' rx='14' ry='9' stroke='rgba(255,255,255,0.02)'/%3E%3C/g%3E%3C/svg%3E");
	--tx-kalka: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='f'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.3 0 0 0 0 0.28 0 0 0 0 0.24 0 0 0 0.06 0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23f)'/%3E%3C/svg%3E");
	color-scheme: dark;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body {
	margin: 0;
	color: var(--tx);
	font: 400 16px/1.55 var(--text);
	font-variant-numeric: tabular-nums;
	overflow-wrap: break-word;
	background: var(--s1);
}
img { max-width: 100%; height: auto; border: 0; }
a, a:link, a:visited { color: var(--straw); text-decoration: none; }
a:hover, a:active { color: #f3d08a; text-decoration: underline; text-underline-offset: 3px; }
:focus-visible { outline: 2px solid var(--blue); outline-offset: 2px; }
table { border-collapse: collapse; border-spacing: 0; width: 100%; }
p { margin: 0 0 10px; }
h1, h2, h3 { margin: 0; font-weight: 400; }
button { font: inherit; color: inherit; }
.pa-sr { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.pa-skip { position: absolute; left: -999px; top: 8px; z-index: 100; background: var(--straw); color: #1a1408 !important; padding: 8px 14px; border-radius: 8px; }
.pa-skip:focus { left: 8px; }
.pa-ico { width: 22px; height: 22px; flex: none; }
.clear { clear: both; }
.float_left { float: left; }
.float_right { float: right; }
.hidden, .hiddenrow { display: none; }
.smalltext { font-size: 13px; color: var(--tx2); }

/* ---------------------------------------------------------------- каркас приложения */
.pa-app { display: grid; grid-template-columns: var(--rail) minmax(0, 1fr); min-height: 100vh; }
.pa-page { min-width: 0; background: var(--s1) var(--tx-steel); padding: 22px 28px 0; display: flex; flex-direction: column; }
.pa-body--split .pa-page { padding: 0; }
.pa-body--split .pa-crumbs-wrap { display: none; }
.pa-page > .pa-foot { margin-top: auto; }

/* рейка каналов */
.pa-rail { position: sticky; top: 0; height: 100vh; display: flex; flex-direction: column; align-items: stretch; background: var(--s0); border-right: 1px solid var(--line); z-index: 40; }
.pa-logo { display: flex; align-items: center; justify-content: center; height: 64px; flex: none; text-decoration: none !important; }
.pa-logo__m { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 14px; background: var(--s3); color: var(--tx); font: 400 19px/1 var(--display); letter-spacing: .02em; box-shadow: inset 0 -3px 0 0 transparent; position: relative; }
.pa-logo__m::after { content: ""; position: absolute; left: 6px; right: 6px; bottom: 5px; height: 3px; border-radius: 2px; background: var(--temper); }
.pa-rail__list { flex: 1; overflow-y: auto; overflow-x: hidden; scrollbar-width: thin; scrollbar-color: var(--s4) transparent; padding: 4px 0 8px; }
.pa-rail__sep { display: block; height: 1px; margin: 6px 18px; background: var(--line2); }
.pa-ch, .pa-ch:link, .pa-ch:visited { position: relative; display: flex; flex-direction: column; align-items: center; gap: 2px; padding: 7px 4px 6px; margin: 0 8px; border-radius: 12px; color: var(--tx2); text-decoration: none; }
.pa-ch .pa-ico { width: 24px; height: 24px; }
.pa-ch__l { font-size: 12px; line-height: 1.2; text-align: center; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pa-ch:hover { background: var(--s3); color: var(--tx); text-decoration: none; }
.pa-ch[aria-current="page"] { background: var(--s3); color: var(--straw); }
.pa-ch[aria-current="page"]::before { content: ""; position: absolute; left: -6px; top: 10px; bottom: 10px; width: 3px; border-radius: 0 3px 3px 0; background: var(--straw); }
.pa-ch--bot { color: var(--straw); }
.pa-ch--bot .pa-ico { color: var(--straw); }
.pa-rail__me { flex: none; padding: 8px 0 12px; border-top: 1px solid var(--line); }
.pa-me { position: relative; }
.pa-me summary { list-style: none; display: grid; place-items: center; cursor: pointer; position: relative; padding: 4px; }
.pa-me summary::-webkit-details-marker { display: none; }
.pa-me .pa-face--s { width: 40px; height: 40px; }
.pa-pm { position: absolute; top: 0; right: 14px; min-width: 18px; height: 18px; padding: 0 4px; border-radius: 9px; background: var(--ember); color: #1a0c04; font-size: 12px; line-height: 18px; text-align: center; }
.pa-pm[data-n="0"] { display: none; }
.pa-me__drop { position: absolute; left: calc(100% + 6px); bottom: 0; min-width: 210px; margin: 0; padding: 6px; list-style: none; background: var(--s3); border: 1px solid var(--line2); border-radius: 12px; box-shadow: 0 12px 32px rgba(0, 0, 0, .45); }
.pa-me__drop a { display: block; padding: 8px 12px; border-radius: 8px; color: var(--tx); }
.pa-me__drop a:hover { background: var(--s4); text-decoration: none; }

/* разделение: список чатов | разговор */
.pa-split { display: grid; grid-template-columns: var(--listw) minmax(0, 1fr); align-items: start; min-height: 100vh; }
.pa-list { position: sticky; top: 0; height: 100vh; overflow-y: auto; overflow-x: hidden; background: var(--s2); border-right: 1px solid var(--line); scrollbar-width: thin; scrollbar-color: var(--s4) transparent; padding-bottom: 18px; }
.pa-main { min-width: 0; min-height: 100vh; }
.pa-listhead { position: sticky; top: 0; z-index: 5; display: flex; flex-direction: column; gap: 10px; padding: 14px 16px 12px; background: rgba(25, 29, 33, .96); border-bottom: 1px solid var(--line); }
.pa-brand, .pa-brand:link, .pa-brand:visited { display: flex; align-items: baseline; gap: 10px; color: var(--tx); text-decoration: none !important; }
.pa-brand__name { font: 400 22px/1.1 var(--display); }
.pa-brand__sub { font: 400 15px/1.1 var(--hand); color: var(--straw); }
.pa-search { position: relative; display: flex; align-items: center; }
.pa-search .pa-ico { position: absolute; left: 11px; width: 18px; height: 18px; color: var(--tx3); pointer-events: none; }
.pa-search input { width: 100%; height: 38px; padding: 0 12px 0 36px !important; border-radius: 19px !important; border: 1px solid var(--line2) !important; background: var(--s1) !important; color: var(--tx) !important; font: 400 15px var(--text) !important; }
.pa-search input::placeholder { color: var(--tx3); }
.pa-list__intro { padding: 16px 16px 6px; }
.pa-h1 { font: 400 23px/1.22 var(--display); color: var(--tx); letter-spacing: .005em; }
.pa-list__lead { margin: 8px 0 4px; font-size: 14.5px; color: var(--tx2); line-height: 1.45; }
.pa-list__h { margin: 16px 18px 6px; font: 400 17px/1.3 var(--display); color: var(--tx2); scroll-margin-top: 120px; }
.pa-list__more { display: flex; flex-wrap: wrap; gap: 8px; padding: 10px 16px; }

/* фильтр по виду изделия */
.pa-filter { display: flex; flex-wrap: wrap; gap: 6px; padding: 4px 14px 8px; }
.pa-filter button { display: inline-flex; align-items: center; gap: 5px; min-height: 32px; padding: 0 11px; border-radius: 16px; border: 1px solid var(--line2); background: transparent; color: var(--tx2); font-size: 13.5px; cursor: pointer; }
.pa-filter button .pa-ico { width: 16px; height: 16px; }
.pa-filter button:hover { border-color: var(--tx3); color: var(--tx); }
.pa-filter button.is-on { background: var(--tx); border-color: var(--tx); color: var(--s1); }
.pa-filter button[class*="pa-k--"] .pa-ico { color: var(--kc); }
.pa-filter button.is-on .pa-ico { color: var(--s1); }
.pa-filter button[disabled] { opacity: .45; cursor: default; }
.pa-filter__n { font-size: 12px; opacity: .8; }
.pa-filter__n:empty { display: none; }
.pa-k--vorota { --kc: var(--k-vorota); }
.pa-k--perila { --kc: var(--k-perila); }
.pa-k--navesy { --kc: var(--k-navesy); }
.pa-k--mangaly { --kc: var(--k-mangaly); }
.pa-k--mebel { --kc: var(--k-mebel); }
.pa-k--reshetki { --kc: var(--k-reshetki); }
.pa-k--none { --kc: var(--k-none); }
.pa-sort { display: flex; flex-wrap: wrap; gap: 4px 12px; padding: 0 16px 8px; font-size: 13px; color: var(--tx3); }
.pa-sort a { color: var(--tx2); }

/* лица */
.pa-face { position: relative; display: inline-grid; place-items: center; flex: none; border-radius: 50%; overflow: hidden; background: var(--s4); }
.pa-face img { display: block; width: 100%; height: 100%; object-fit: cover; }
.pa-face--s { width: 28px; height: 28px; }
.pa-face--m { width: 46px; height: 46px; }
.pa-face--l { width: 76px; height: 76px; }
.pa-face--xl { width: 152px; height: 152px; }
.pa-face--mono { color: var(--tx); font-family: var(--display); background: radial-gradient(circle at 35% 30%, #3b434b, #1b1f23 70%); box-shadow: inset 0 0 0 2px var(--tc, var(--straw)); }
.pa-face--mono span { font-size: .4em; }
.pa-face--s.pa-face--mono span { font-size: 12px; }
.pa-face--m.pa-face--mono span { font-size: 18px; }
.pa-face--l.pa-face--mono span { font-size: 28px; }
.pa-face--xl.pa-face--mono span { font-size: 54px; }
.pa-temper-0 { --tc: var(--straw); }
.pa-temper-1 { --tc: var(--bronze); }
.pa-temper-2 { --tc: var(--purple); }
.pa-temper-3 { --tc: var(--blue); }
.pa-stack { display: inline-flex; }
.pa-stack .pa-face { margin-left: -8px; box-shadow: 0 0 0 2px var(--s1); }
.pa-stack .pa-face:first-child { margin-left: 0; }

/* метка вида изделия на аватаре и плитки */
.pa-tile { display: inline-grid; place-items: center; flex: none; width: 22px; height: 22px; border-radius: 50%; background: var(--s0); color: var(--kc, var(--k-none)); box-shadow: 0 0 0 2px var(--s2); }
.pa-tile .pa-ico { width: 14px; height: 14px; }
.pa-tile--vorota { --kc: var(--k-vorota); }
.pa-tile--perila { --kc: var(--k-perila); }
.pa-tile--navesy { --kc: var(--k-navesy); }
.pa-tile--mangaly { --kc: var(--k-mangaly); }
.pa-tile--mebel { --kc: var(--k-mebel); }
.pa-tile--reshetki { --kc: var(--k-reshetki); }
.pa-kind { display: inline-flex; align-items: center; gap: 5px; color: var(--kc, var(--tx2)); font-size: 13.5px; font-weight: 700; }
.pa-kind .pa-ico { width: 16px; height: 16px; }
.pa-kind--vorota { --kc: var(--k-vorota); }
.pa-kind--perila { --kc: var(--k-perila); }
.pa-kind--navesy { --kc: var(--k-navesy); }
.pa-kind--mangaly { --kc: var(--k-mangaly); }
.pa-kind--mebel { --kc: var(--k-mebel); }
.pa-kind--reshetki { --kc: var(--k-reshetki); }
.pa-kind--none { --kc: var(--k-none); }
/* префикс темы MyBB (поиск, новые сообщения) */
.pa-item { display: inline-block; padding: 0 8px; margin-right: 4px; border-radius: 10px; font-size: 12.5px; font-weight: 700; line-height: 20px; color: #15171a; background: var(--k-none); }
.pa-item--vorota { background: var(--k-vorota); }
.pa-item--perila { background: var(--k-perila); }
.pa-item--navesy { background: var(--k-navesy); }
.pa-item--mangaly { background: var(--k-mangaly); }
.pa-item--mebel { background: var(--k-mebel); }
.pa-item--reshetki { background: var(--k-reshetki); }

/* ---------------------------------------------------------------- список чатов */
.pa-chats { list-style: none; margin: 0; padding: 0 8px; }
.pa-chat { position: relative; }
.pa-chat__a, .pa-chat__a:link, .pa-chat__a:visited { display: grid; grid-template-columns: 46px minmax(0, 1fr); gap: 12px; padding: 10px 10px; border-radius: 12px; color: var(--tx); text-decoration: none !important; }
.pa-chat__a:hover { background: var(--s3); }
.pa-chat.is-current .pa-chat__a { background: var(--s4); box-shadow: inset 3px 0 0 var(--straw); }
.pa-chat__ava { position: relative; width: 46px; height: 46px; }
.pa-chat__ava .pa-tile { position: absolute; right: -4px; bottom: -3px; }
.pa-chat__body { min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.pa-chat__top { display: flex; align-items: baseline; gap: 8px; }
.pa-chat__t { flex: 1; min-width: 0; font-size: 15.5px; font-weight: 700; line-height: 1.3; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.pa-chat__t.subject_new::before { content: ""; display: inline-block; width: 8px; height: 8px; margin: 0 6px 1px 0; border-radius: 50%; background: var(--straw); }
.pa-chat__time { flex: none; font-size: 12.5px; color: var(--tx3); }
.pa-chat__last { font-size: 14px; line-height: 1.4; color: var(--tx2); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.pa-chat__last b { color: var(--tx); font-weight: 700; }
.pa-chat__foot { display: flex; flex-wrap: wrap; align-items: center; gap: 2px 10px; margin-top: 2px; font-size: 12.5px; color: var(--tx3); }
.pa-chat__kind { color: var(--kc); font-weight: 700; }
.pa-chat__f { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 60%; }
.pa-chat--bot .pa-chat__a { background: rgba(226, 183, 92, .1); }
.pa-chat--bot .pa-chat__t { color: var(--straw); }
.pa-chat--bot .pa-chat__time { color: var(--straw); }
.pa-chat[hidden] { display: none; }
.pa-chat .pa-pages { display: block; padding: 0 10px 6px 68px; font-size: 13px; color: var(--tx3); }
.pa-chat .pa-pages a { margin-right: 4px; }
.pa-chat__mod { position: absolute; right: 12px; bottom: 10px; }
.pa-sep { padding: 10px 12px 4px; font-size: 14px; color: var(--tx3); }
.pa-empty { padding: 14px 18px; color: var(--tx2); font-size: 14.5px; list-style: none; }
.pa-botava { display: inline-grid; place-items: center; width: 46px; height: 46px; border-radius: 50%; color: #1a1408; background: radial-gradient(circle at 30% 25%, #f3d791, #e2b75c 45%, #b8892e); flex: none; }
.pa-botava .pa-ico { width: 26px; height: 26px; }

/* каналы на главной */
.pa-chans { padding: 0 8px; }
.pa-chgroup__t { margin: 10px 10px 4px; font: 400 15px/1.3 var(--display); }
.pa-chgroup__t a { color: var(--tx2); }
.pa-chans__list { list-style: none; margin: 0; padding: 0; }
.pa-chan__a, .pa-chan__a:link, .pa-chan__a:visited { display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 12px; padding: 8px 10px; border-radius: 12px; color: var(--tx); text-decoration: none !important; }
.pa-chan__a:hover { background: var(--s3); }
.pa-chico { display: inline-grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: var(--s3); color: var(--straw); flex: none; border: 1px solid var(--line2); }
.pa-chico .pa-ico { width: 22px; height: 22px; }
.pa-chan__body { min-width: 0; display: flex; flex-direction: column; }
.pa-chan__top { display: flex; gap: 8px; align-items: baseline; }
.pa-chan__t { flex: 1; font-weight: 700; font-size: 15px; }
.pa-chan__time { font-size: 12.5px; color: var(--tx3); }
.pa-chan__d { font-size: 13.5px; color: var(--tx2); line-height: 1.35; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.pa-chan__n { font-size: 12.5px; color: var(--tx3); }

/* шапка канала в списке */
.pa-list__intro--ch { padding-bottom: 10px; }
.pa-chhead { display: flex; align-items: center; gap: 12px; }
.pa-chhead .pa-chico { width: 48px; height: 48px; border-radius: 14px; }
.pa-chhead .pa-chico .pa-ico { width: 26px; height: 26px; }
.pa-chhead__n { margin: 3px 0 0; font-size: 13px; color: var(--tx3); }
.pa-chhead__act { margin-top: 8px; }
.pa-chhead--link, .pa-chhead--link:link, .pa-chhead--link:visited { color: var(--tx); text-decoration: none !important; padding: 6px; margin: -6px; border-radius: 12px; }
.pa-chhead--link:hover { background: var(--s3); }
.pa-chhead--link b { display: block; font-size: 16px; }
.pa-chhead--link small { font-size: 13px; color: var(--tx3); }
.pa-list__intro--side { padding: 14px 16px 8px; }

/* ---------------------------------------------------------------- шапка разговора */
.pa-chathead { position: sticky; top: 0; z-index: 20; display: flex; align-items: center; gap: 12px; min-height: 66px; padding: 10px 24px; background: rgba(19, 22, 25, .94); border-bottom: 1px solid var(--line); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
.pa-chathead::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 1px; background: var(--temper); opacity: .55; }
.pa-chathead > .pa-tile { width: 40px; height: 40px; box-shadow: none; background: var(--s3); border: 1px solid var(--line2); }
.pa-chathead > .pa-tile .pa-ico { width: 22px; height: 22px; }
.pa-chathead__txt { flex: 1; min-width: 0; }
.pa-chathead__h { font: 400 20px/1.25 var(--display); color: var(--tx); margin: 0; }
.pa-chathead__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 2px 14px; margin: 3px 0 0; font-size: 13px; color: var(--tx3); }
.pa-online { color: #8fd19e; }
.pa-online::before { content: ""; display: inline-block; width: 8px; height: 8px; margin-right: 6px; border-radius: 50%; background: #6fc483; }
.pa-back { display: none; place-items: center; width: 38px; height: 38px; border-radius: 50%; color: var(--tx) !important; flex: none; }
.pa-back:hover { background: var(--s3); }
.pa-chathead__people { flex: none; }
.pa-sys { width: fit-content; max-width: 90%; margin: 18px auto 6px; padding: 5px 14px; border-radius: 14px; background: var(--s3); color: var(--tx2); font-size: 13.5px; text-align: center; }
.pa-day { display: flex; justify-content: center; margin: 18px 0 12px; position: sticky; top: 76px; z-index: 3; pointer-events: none; }
.pa-day span { padding: 3px 12px; border-radius: 12px; background: rgba(43, 49, 55, .92); color: var(--tx2); font-size: 12.5px; }

/* ---------------------------------------------------------------- пузыри */
.pa-posts { padding: 6px 24px 12px; max-width: 980px; }
.pa-msg { display: grid; grid-template-columns: 46px minmax(0, 1fr); gap: 10px; align-items: end; max-width: 760px; margin: 0 0 14px; position: relative; }
.pa-msg--me { grid-template-columns: minmax(0, 1fr) 46px; margin-left: auto; }
.pa-msg--me .pa-msg__ava { order: 2; }
.pa-msg__ava { padding: 0; border: 0; background: none; border-radius: 50%; cursor: pointer; align-self: end; margin-bottom: 24px; }
.pa-msg__ava:hover .pa-face { box-shadow: 0 0 0 2px var(--straw); }
.pa-msg__col { min-width: 0; display: flex; flex-direction: column; }
.pa-msg--me .pa-msg__col { align-items: flex-end; }
.pa-msg__who { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; margin: 0 4px 4px; font-size: 13px; }
.pa-msg--me .pa-msg__who { justify-content: flex-end; }
.pa-msg__name a { color: var(--tx); font-weight: 700; }
.pa-op { padding: 0 8px; border-radius: 9px; background: rgba(226, 183, 92, .16); color: var(--straw); font-size: 12px; line-height: 18px; }
.pa-msg__bubble { position: relative; max-width: 100%; padding: 11px 15px 7px; border-radius: 18px 18px 18px 5px; background: var(--s3); border: 1px solid var(--line2); color: var(--tx); --link: #f0c879; --weld: #c98348; --link-h: #b3c6ff; --weld-h: #7f9cf2; }
.pa-msg--me .pa-msg__bubble { border-radius: 18px 18px 5px 18px; background: var(--kalka) var(--tx-kalka); border-color: #cfc6b0; color: var(--gr); --link: #3b3584; --weld: #a8642c; --link-h: #2353b8; --weld-h: #2f62d0; }
.pa-msg--first .pa-msg__bubble::before { content: "задумка"; position: absolute; top: -11px; left: 14px; padding: 0 8px; border-radius: 8px; background: var(--kalka2); color: var(--gr2); font: 400 13px/20px var(--hand); }
.pa-msg--me.pa-msg--first .pa-msg__bubble::before { left: auto; right: 14px; }
.pa-msg--first .pa-msg__bubble { padding-top: 14px; }
.pa-msg__body { font-size: 16px; line-height: 1.55; }
.pa-msg__body > :last-child { margin-bottom: 0; }
.pa-msg__meta { display: flex; justify-content: flex-end; flex-wrap: wrap; align-items: baseline; gap: 2px 10px; margin-top: 4px; font-size: 12.5px; color: var(--tx3); }
.pa-msg--me .pa-msg__meta { color: var(--gr3); }
.pa-msg__no, .pa-msg__no:link, .pa-msg__no:visited { color: inherit; }
.pa-msg .edited_post { font-style: italic; }
.pa-msg__ctl { display: flex; flex-wrap: wrap; gap: 4px 12px; margin: 4px 6px 0; font-size: 13px; }
.pa-msg__ctl:not(:has(a)) { display: none; }
.postbit_buttons { display: flex; flex-wrap: wrap; gap: 4px 12px; }
.postbit_buttons a, .postbit_buttons a:link, .postbit_buttons a:visited { color: var(--tx3); }
.postbit_buttons a:hover { color: var(--straw); }
.post_meta:empty, .post_meta:not(:has(*:not(:empty))) { display: none; }
.pa-msg .signature { margin: 6px 6px 0; padding-top: 6px; border-top: 1px dashed var(--line2); font-size: 13.5px; color: var(--tx3); }
.pa-msg.unapproved_post .pa-msg__bubble, .pa-msg.deleted_post .pa-msg__bubble { opacity: .6; }
.pa-msg .post_body img { border-radius: 10px; }

/* звание — сварной шов из шести чешуек */
.pa-seam { display: inline-flex; align-items: center; gap: 7px; font-size: 12.5px; color: var(--tx3); }
.pa-seam__beads { display: inline-flex; align-items: center; }
.pa-seam__beads i { width: 10px; height: 10px; margin-left: -3px; border-radius: 50%; border: 1px dashed #6b7077; background: transparent; }
.pa-seam__beads i:first-child { margin-left: 0; }
.pa-seam__beads i.is-done, .pa-seam__beads i.is-now { border: 0; box-shadow: inset -2px -1px 0 rgba(0, 0, 0, .28), inset 1px 1px 0 rgba(255, 255, 255, .25); }
.pa-seam__beads i:nth-child(1).is-done, .pa-seam__beads i:nth-child(1).is-now { background: #e2b75c; }
.pa-seam__beads i:nth-child(2).is-done, .pa-seam__beads i:nth-child(2).is-now { background: #d39a4f; }
.pa-seam__beads i:nth-child(3).is-done, .pa-seam__beads i:nth-child(3).is-now { background: #b06a3c; }
.pa-seam__beads i:nth-child(4).is-done, .pa-seam__beads i:nth-child(4).is-now { background: #8e5aa8; }
.pa-seam__beads i:nth-child(5).is-done, .pa-seam__beads i:nth-child(5).is-now { background: #4f73d6; }
.pa-seam__beads i:nth-child(6).is-done, .pa-seam__beads i:nth-child(6).is-now { background: #86bde3; }
.pa-seam__beads i.is-now { box-shadow: 0 0 0 2px rgba(255, 138, 76, .35), 0 0 8px rgba(255, 138, 76, .6); }
.pa-msg--me .pa-seam { color: var(--tx3); }

/* полезные советы */
.pa-help { display: inline-flex; align-items: center; gap: 8px; padding: 5px 12px 5px 5px; border-radius: 20px; border: 1px solid rgba(226, 183, 92, .5); color: var(--tx2); font-size: 13.5px; }
.pa-help__n { display: grid; place-items: center; min-width: 30px; height: 30px; padding: 0 6px; border-radius: 15px; background: var(--straw); color: #1a1408; font-size: 14px; }
.pa-help.is-zero .pa-help__n { background: var(--s4); color: var(--tx2); }

/* карточка участника во всплывающем окне */
.pa-card { width: min(360px, calc(100vw - 32px)); margin: auto; padding: 20px; border: 1px solid var(--line2); border-radius: 20px; background: var(--s2); color: var(--tx); box-shadow: 0 24px 60px rgba(0, 0, 0, .6); }
.pa-card:not(:popover-open) { display: none; }
.pa-card.is-open { display: block; position: fixed; inset: 0; height: fit-content; z-index: 300; }
.pa-card::backdrop { background: rgba(5, 6, 8, .6); }
.pa-card__x { position: absolute; top: 10px; right: 10px; width: 34px; height: 34px; border: 0; border-radius: 50%; background: var(--s3); color: var(--tx2); font-size: 22px; line-height: 1; cursor: pointer; }
.pa-card__top { display: flex; align-items: center; gap: 14px; margin-bottom: 12px; }
.pa-card__name { margin: 0; font: 400 21px/1.2 var(--display); }
.pa-card__order { margin: 2px 0 0; font: 400 14px var(--hand); color: var(--straw); }
.pa-card__note { color: var(--tx2); }
.pa-card__dl, .pa-contact__dl { margin: 14px 0; padding: 0; border-radius: 14px; background: var(--s3); overflow: hidden; }
.pa-card__dl div, .pa-contact__dl div { display: flex; justify-content: space-between; gap: 14px; padding: 9px 14px; border-bottom: 1px solid var(--line); font-size: 14.5px; }
.pa-card__dl div:last-child, .pa-contact__dl div:last-child { border-bottom: 0; }
.pa-card__dl dt, .pa-contact__dl dt { color: var(--tx3); }
.pa-card__dl dd, .pa-contact__dl dd { margin: 0; text-align: right; color: var(--tx); }
.pa-card__go { margin: 14px 0 0; }

/* цитата как ответ на сообщение */
blockquote, .mycode_quote { margin: 2px 0 10px; padding: 7px 12px; border-left: 3px solid var(--straw); border-radius: 4px 10px 10px 4px; background: rgba(255, 255, 255, .05); font-size: 14.5px; color: var(--tx2); }
.pa-msg--me blockquote { background: rgba(35, 38, 42, .07); border-left-color: #a8642c; color: var(--gr2); }
blockquote cite { display: block; margin-bottom: 2px; font-style: normal; font-size: 13.5px; font-weight: 700; color: var(--straw); }
.pa-msg--me blockquote cite { color: #8a4f1f; }
blockquote cite > span { display: none; }
blockquote cite span.highlight { display: inline; }
blockquote cite .quick_jump { margin-left: 4px; }
blockquote cite .quick_jump::after { content: "↩"; font-weight: 400; }
.mycode_quote + br { display: none; }
.pa-msg__body ul, .pa-msg__body ol { margin: 6px 0 10px; padding-left: 22px; }
.codeblock { margin: 6px 0 10px; border-radius: 10px; background: rgba(0, 0, 0, .25); overflow: hidden; }
.codeblock .title { padding: 4px 10px; font-size: 13px; font-weight: 700; }
.codeblock code { display: block; padding: 8px 10px; overflow: auto; max-height: 24em; font: 14px/1.5 ui-monospace, Menlo, Consolas, monospace; white-space: pre-wrap; }
.mycode_u { text-decoration: underline; }
.mycode_s { text-decoration: line-through; }
.highlight { background: rgba(226, 183, 92, .35); padding: 0 2px; color: inherit; }

/* поле ответа */
.pa-bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; padding: 6px 24px; }
.pa-bar:not(:has(a, span.button)) { display: none; }
.pa-composer { position: sticky; bottom: 0; z-index: 15; padding: 10px 24px 14px; background: linear-gradient(rgba(19, 22, 25, 0), var(--s1) 30%); }
.pa-composer:empty { display: none; }
.pa-guest { display: flex; align-items: center; gap: 10px; max-width: 980px; }
.pa-guest__field { flex: 1; min-height: 44px; display: flex; align-items: center; padding: 0 18px; border-radius: 22px; border: 1px solid var(--line2); background: var(--s2); color: var(--tx3); font-size: 15px; }
.pa-qr { max-width: 980px; padding: 10px; border-radius: 18px; border: 1px solid var(--line2); background: var(--s2); }
.pa-qr textarea { width: 100%; min-height: 70px; border: 0 !important; background: transparent !important; resize: vertical; }
.pa-qr__bar { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; justify-content: flex-end; }
.pa-qr__opt { flex: 1; display: flex; flex-wrap: wrap; gap: 4px 12px; font-size: 13px; color: var(--tx3); }
.pa-tfoot { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; padding: 14px 24px 26px; font-size: 14px; }
.pa-nextprev { display: flex; gap: 18px; flex-wrap: wrap; }
.thread_tools { list-style: none; display: flex; flex-wrap: wrap; gap: 4px 14px; margin: 0; padding: 0; }
.thread_tools li { list-style: none; }

/* ---------------------------------------------------------------- канал: правая панель */
.pa-chinfo { display: grid; place-items: center; padding: 40px 28px; }
.pa-chinfo__in { max-width: 520px; text-align: center; }
.pa-chinfo__art { width: min(320px, 100%); height: auto; margin-bottom: 14px; }
.pa-art-made path { fill: none; stroke: #4a525b; stroke-width: 8; stroke-linecap: round; }
.pa-art-sketch path { fill: none; stroke: var(--kalka); stroke-width: 1.4; stroke-dasharray: 5 4; opacity: .8; }
.pa-art-sketch .pa-art-dim { stroke: var(--straw); stroke-dasharray: none; opacity: 1; }
.pa-chinfo__t { font: 400 22px/1.3 var(--display); }
.pa-chinfo__d { color: var(--tx2); }
.pa-chinfo__act { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; }

/* ---------------------------------------------------------------- мастер-бот */
.pa-bot__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.08fr); gap: 22px; padding: 6px 24px 30px; align-items: start; }
.pa-bot__dialog { min-width: 0; }
.pa-bmsg { max-width: 92%; margin: 0 0 10px; padding: 11px 15px; border-radius: 18px 18px 18px 5px; background: var(--s3); border: 1px solid var(--line2); font-size: 15.5px; animation: pa-pop .28s ease-out both; }
.pa-bmsg p:last-child { margin-bottom: 0; }
.pa-bmsg--me { margin-left: auto; width: fit-content; border-radius: 18px 18px 5px 18px; background: var(--kalka) var(--tx-kalka); border-color: #cfc6b0; color: var(--gr); }
.pa-bmsg--me button { margin-left: 10px; padding: 0; border: 0; background: none; color: #3b3584; text-decoration: underline; cursor: pointer; font-size: 14px; }
@keyframes pa-pop { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
.pa-ask { margin: 0 0 12px; padding: 0; border: 0; min-width: 0; }
.pa-opts { display: flex; flex-wrap: wrap; gap: 8px; }
.pa-opts label { position: relative; }
.pa-opts input { position: absolute; opacity: 0; inset: 0; width: 100%; height: 100%; margin: 0; cursor: pointer; }
.pa-opts span { display: inline-flex; align-items: center; gap: 7px; min-height: 40px; padding: 0 15px; border-radius: 20px; border: 1.5px solid var(--straw-d); color: var(--straw); font-size: 15px; font-weight: 700; }
.pa-opts span .pa-ico { width: 19px; height: 19px; }
.pa-opts label:hover span { background: rgba(226, 183, 92, .1); }
.pa-opts input:checked + span { background: var(--straw); border-color: var(--straw); color: #1a1408; }
.pa-opts input:focus-visible + span { outline: 2px solid var(--blue); outline-offset: 2px; }
.pa-dims { display: grid; gap: 12px; margin-bottom: 12px; padding: 12px 14px; border-radius: 14px; background: var(--s2); border: 1px solid var(--line2); }
.pa-dim__row { display: flex; justify-content: space-between; gap: 10px; font-size: 14.5px; }
.pa-dim__row output { font-weight: 700; color: var(--straw); }
input[type="range"] { width: 100%; height: 26px; margin: 2px 0 0; background: transparent; accent-color: var(--straw); -webkit-appearance: none; appearance: none; cursor: pointer; }
input[type="range"]::-webkit-slider-runnable-track { height: 6px; border-radius: 3px; background: var(--temper); }
input[type="range"]::-moz-range-track { height: 6px; border-radius: 3px; background: var(--temper); }
input[type="range"]::-webkit-slider-thumb { -webkit-appearance: none; width: 22px; height: 22px; margin-top: -8px; border-radius: 50%; background: var(--tx); border: 3px solid var(--s1); box-shadow: 0 0 0 1.5px var(--straw); }
input[type="range"]::-moz-range-thumb { width: 18px; height: 18px; border-radius: 50%; background: var(--tx); border: 3px solid var(--s1); box-shadow: 0 0 0 1.5px var(--straw); }
.pa-tz { margin: 10px 0; padding: 14px 16px; border-radius: 12px; background: var(--kalka) var(--tx-kalka); color: var(--gr); font: 400 14.5px/1.55 var(--text); white-space: pre-wrap; overflow-wrap: anywhere; max-height: 460px; overflow: auto; }
.pa-tz__act { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.pa-tz__st { font-size: 14px; color: #8fd19e; }
.pa-qs, .pa-check { margin: 8px 0 0; padding-left: 20px; font-size: 15px; }
.pa-qs li, .pa-check li { margin-bottom: 6px; }
.pa-check { list-style: none; padding: 0; }
.pa-check label { display: flex; gap: 9px; align-items: flex-start; cursor: pointer; }
.pa-check input { margin-top: 4px; width: 17px; height: 17px; accent-color: var(--straw); flex: none; }
.pa-check input:checked + span { color: var(--tx3); text-decoration: line-through; }
.pa-check a { margin-left: 26px; font-size: 13.5px; }
.pa-bmsg--tz { max-width: 100%; }
.pa-note { font-size: 14px; color: var(--tx2); }

/* эскиз: готовое изделие + калька со шторкой */
.pa-bot__sketch { position: sticky; top: 82px; min-width: 0; }
.pa-stage { position: relative; aspect-ratio: 600 / 420; border-radius: 18px; overflow: hidden; border: 1px solid var(--line2); background: #1b1f23; touch-action: pan-y; cursor: ew-resize; --cut: 58%; }
.pa-stage svg { position: absolute; inset: 0; width: 100%; height: 100%; display: block; }
.pa-kalka { position: absolute; inset: 0; background: rgba(235, 229, 214, .9) var(--tx-kalka); -webkit-backdrop-filter: blur(1.6px); backdrop-filter: blur(1.6px); clip-path: inset(0 calc(100% - var(--cut)) 0 0); }
.pa-stage__edge { position: absolute; top: 0; bottom: 0; left: var(--cut); width: 0; pointer-events: none; }
.pa-stage__edge::before { content: ""; position: absolute; top: 0; bottom: 0; left: -1px; width: 2px; background: rgba(255, 255, 255, .75); box-shadow: 0 0 12px rgba(0, 0, 0, .5); }
.pa-stage__edge i { position: absolute; top: 50%; left: -15px; width: 30px; height: 30px; margin-top: -15px; border-radius: 50%; background: var(--tx); box-shadow: 0 2px 10px rgba(0, 0, 0, .5); }
.pa-stage__edge i::before { content: "‹ ›"; position: absolute; inset: 0; display: grid; place-items: center; color: var(--s1); font: 700 14px/1 var(--text); letter-spacing: 2px; }
.pa-stage__tag { position: absolute; top: 10px; padding: 1px 10px; border-radius: 10px; font-size: 13px; pointer-events: none; }
.pa-stage__tag--k { left: 10px; font: 400 15px/22px var(--hand); color: var(--gr); background: rgba(235, 229, 214, .85); }
.pa-stage__tag--m { right: 10px; color: var(--tx); background: rgba(19, 22, 25, .75); font-size: 13px; line-height: 22px; }
.pa-curtain { display: flex; align-items: center; gap: 10px; margin-top: 10px; }
.pa-curtain__b { flex: none; min-height: 34px; padding: 0 12px; border-radius: 17px; border: 1px solid var(--line2); background: var(--s2); color: var(--tx2); font-size: 13.5px; cursor: pointer; }
.pa-curtain__b:hover { color: var(--tx); border-color: var(--tx3); }
.pa-stage__cap { margin: 8px 2px 0; font-size: 14px; color: var(--tx2); }
/* классы рисунка (kalka.js) */
.pa-sketch .sk { fill: none; stroke: #2e3136; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.pa-sketch .sk2 { fill: none; stroke: #2e3136; stroke-width: .7; opacity: .45; stroke-linecap: round; }
.pa-sketch .skc { fill: none; stroke: #6d7279; stroke-width: .8; stroke-dasharray: 6 4; }
.pa-sketch .dm { fill: none; stroke: #9a4f1a; stroke-width: 1; }
.pa-sketch .dmt { fill: #8a4512; font: 400 17px var(--hand); }
.pa-sketch .nt { fill: #4a4e54; font: 400 15px var(--hand); }
.pa-sketch .hatch { fill: url(#pa-hatch); stroke: #2e3136; stroke-width: 1.2; }

/* ---------------------------------------------------------------- профиль: карточка контакта */
.pa-contact__in { max-width: 620px; margin: 0 auto; padding: 26px 24px 30px; }
.pa-contact__card { display: flex; flex-direction: column; align-items: center; gap: 8px; text-align: center; }
.pa-contact__card .pa-face--xl { box-shadow: 0 0 0 4px var(--s1), 0 0 0 6px transparent; outline: 3px solid; outline-color: var(--straw); outline-offset: 3px; }
.pa-contact__name { font-size: 30px; margin-top: 8px; }
.pa-contact__name a { color: inherit; }
.pa-contact__seen { margin: 0; font-size: 14px; color: var(--tx3); }
.pa-contact__act { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin-top: 6px; }
.pa-contact__help { display: flex; justify-content: center; }
.pa-ladder { margin-top: 22px; padding: 16px; border-radius: 16px; background: var(--s2); border: 1px solid var(--line2); }
.pa-ladder__h { font: 400 18px/1.3 var(--display); margin-bottom: 10px; }
.pa-ladder__list { list-style: none; margin: 0; padding: 0; }
.pa-ladder__list li { display: grid; grid-template-columns: 18px 1fr auto; gap: 10px; align-items: center; padding: 6px 0; font-size: 15px; color: var(--tx3); }
.pa-ladder__list li i { width: 14px; height: 14px; border-radius: 50%; border: 1px dashed #6b7077; }
.pa-ladder__list li.is-done, .pa-ladder__list li.is-now { color: var(--tx); }
.pa-ladder__list li.is-done i { border: 0; background: var(--bronze); }
.pa-ladder__list li.is-now i { border: 0; background: var(--straw); box-shadow: 0 0 8px rgba(255, 138, 76, .7); }
.pa-ladder__list li.is-now .pa-ladder__t { font-weight: 700; color: var(--straw); }
.pa-ladder__n { font-size: 13px; color: var(--tx3); }
.pa-contact__note { margin-top: 14px; font-size: 13px; color: var(--tx3); text-align: center; }
.pa-contact__extra:empty { display: none; }

/* ---------------------------------------------------------------- кнопки */
.button, a.button, a.button:link, a.button:visited, input.button, button.button, input[type="submit"], .pa-btn, a.pa-btn, a.pa-btn:link, a.pa-btn:visited {
	display: inline-flex; align-items: center; justify-content: center; gap: 7px;
	min-height: 40px; padding: 0 18px; border-radius: 20px; border: 1.5px solid var(--straw);
	background: var(--straw); color: #1a1408; font: 700 15px/1.2 var(--text); text-decoration: none; cursor: pointer;
}
.button:hover, a.button:hover, input.button:hover, input[type="submit"]:hover, .pa-btn:hover { background: #f0c879; color: #1a1408; text-decoration: none; }
.pa-btn .pa-ico { width: 18px; height: 18px; }
.pa-btn--ghost, a.pa-btn--ghost, a.pa-btn--ghost:link, a.pa-btn--ghost:visited, input.pa-btn--ghost { background: transparent; color: var(--straw); border-color: var(--straw-d); }
.pa-btn--ghost:hover, input.pa-btn--ghost:hover { background: rgba(226, 183, 92, .12); color: #f3d08a; }
.closed_button, span.closed_button { background: var(--s3); border-color: var(--line2); color: var(--tx2); cursor: default; }
.pa-more { font-size: 13.5px; }

/* ---------------------------------------------------------------- подвал и док */
.pa-foot { padding: 18px 28px 22px; border-top: 1px solid var(--line); background: var(--s0); color: var(--tx3); font-size: 13.5px; }
.pa-foot__brand { color: var(--tx2); }
.pa-foot__brand span { font-family: var(--display); color: var(--tx); }
.pa-foot__links { display: flex; flex-wrap: wrap; gap: 6px 18px; margin-bottom: 8px; }
.pa-foot__links a { color: var(--tx2); }
.pa-foot__note { max-width: 860px; margin: 0; }
.pa-dock { display: none; }

/* ---------------------------------------------------------------- стандартные страницы и классы MyBB */
.pa-crumbs { display: flex; flex-wrap: wrap; gap: 4px 8px; margin-bottom: 16px; font-size: 14px; color: var(--tx3); }
.pa-crumbs a { color: var(--tx2); }
.pa-crumbs .active { color: var(--tx); }
.pa-msgbox { max-width: 640px; margin: 30px auto; padding: 26px; border-radius: 20px; background: var(--s2); border: 1px solid var(--line2); }
.pa-msgbox__bot { display: inline-grid; place-items: center; width: 52px; height: 52px; border-radius: 50%; background: var(--straw); color: #1a1408; }
.pa-msgbox .pa-h1 { margin-bottom: 12px; }
.pa-msgbox__body { color: var(--tx2); }
.pa-body--redirect { display: grid; place-items: center; min-height: 100vh; padding: 16px; background: var(--s1) var(--tx-steel); }
.tborder { background: var(--s2); border: 1px solid var(--line2); border-radius: 14px; margin: 0 0 18px; overflow: hidden; }
table.tborder { border-collapse: separate; }
.thead { background: var(--s3); color: var(--tx); padding: 12px 14px; font: 400 17px/1.3 var(--display); text-align: left; border-bottom: 1px solid var(--line2); }
.thead a, .thead a:link, .thead a:visited { color: var(--straw); }
.thead strong { font-weight: 400; }
.tcat { background: var(--s4); color: var(--tx2); padding: 8px 12px; font-size: 13.5px; font-weight: 700; }
.tcat a, .tcat a:link, .tcat a:visited { color: var(--tx); }
.trow1, .trow2 { padding: 10px 12px; border-bottom: 1px solid var(--line); font-size: 15px; color: var(--tx); }
.trow1 { background: var(--s2); }
.trow2 { background: #1c2024; }
.trow_shaded { background: #2c2a22; }
.trow_sep { background: var(--s3); color: var(--tx2); padding: 6px 12px; font-size: 13.5px; font-weight: 700; }
.tfoot { background: var(--s3); color: var(--tx2); padding: 10px 14px; font-size: 14px; }
.trow_selected td, tr.trow_selected td { background: #2c2a22; }
div.error { padding: 14px 18px; margin: 0 0 18px; border-radius: 14px; background: #2c1d16; border: 1px solid var(--ember); color: var(--tx); }
div.error p { margin: 0 0 6px; }
div.error p em { font-style: normal; font-weight: 700; }
div.error ul { margin: 0; padding-left: 20px; }
.success_message { color: #8fd19e; font-weight: 700; }
.error_message { color: var(--ember); font-weight: 700; }
.pm_alert, .red_alert { padding: 10px 14px; margin: 0 0 16px; border-radius: 12px; background: #2c2a22; border: 1px solid var(--straw-d); font-size: 14.5px; }
.pa-body--split .pm_alert, .pa-body--split .red_alert { margin: 10px; }
input.textbox, textarea, select, input[type="text"], input[type="password"], input[type="email"], input[type="search"], input[type="number"] {
	font: 400 15.5px/1.4 var(--text); color: var(--tx); background: var(--s1);
	border: 1px solid var(--line2); border-radius: 10px; padding: 8px 11px; max-width: 100%;
}
textarea { width: 100%; line-height: 1.55; }
input.textbox:focus, textarea:focus, select:focus { outline: 2px solid var(--blue); outline-offset: 0; border-color: var(--blue); }
input.error, textarea.error, select.error { border-color: var(--ember); }
label.error { color: var(--ember); font-size: 13px; }
fieldset { border: 1px solid var(--line2); border-radius: 12px; padding: 12px 16px; margin: 0 0 16px; }
legend { padding: 0 6px; font-weight: 700; }
.pagination { display: inline-flex; align-items: center; flex-wrap: wrap; gap: 4px; font-size: 14px; }
.pagination .pages { margin-right: 4px; color: var(--tx3); }
.pagination a, .pagination a:link, .pagination a:visited, .pagination .pagination_current { display: inline-flex; align-items: center; justify-content: center; min-width: 34px; height: 34px; padding: 0 9px; border-radius: 17px; border: 1px solid var(--line2); background: var(--s2); color: var(--tx); text-decoration: none; }
.pagination a:hover { border-color: var(--straw); color: var(--straw); }
.pagination .pagination_current { background: var(--straw); border-color: var(--straw); color: #1a1408; font-weight: 700; }
.pagination .go_page img, .drop_go_page { display: none; }
.popup_menu { background: var(--s3); border: 1px solid var(--line2); border-radius: 12px; box-shadow: 0 12px 30px rgba(0, 0, 0, .5); padding: 4px; z-index: 50; }
.popup_menu .popup_item, .popup_menu a.popup_item { display: block; padding: 7px 12px; border-radius: 8px; color: var(--tx); font-size: 14.5px; white-space: nowrap; }
.popup_menu .popup_item:hover { background: var(--s4); text-decoration: none; }
.blocker { position: fixed; inset: 0; z-index: 9998; padding: 20px; box-sizing: border-box; background: rgba(5, 6, 8, .7); text-align: center; overflow: auto; }
.blocker::before { content: ""; display: inline-block; height: 100%; vertical-align: middle; margin-right: -.05em; }
.blocker.behind { background: transparent; }
.modal { display: none; vertical-align: middle; position: relative; z-index: 9999; width: 440px; max-width: 100%; text-align: left; background: var(--s2); border: 1px solid var(--line2); border-radius: 18px; overflow: hidden; box-shadow: 0 24px 60px rgba(0, 0, 0, .6); }
.modal .tborder { margin: 0; border: 0; border-radius: 0; }
.modal a.close-modal { position: absolute; top: 8px; right: 10px; width: 30px; height: 30px; font-size: 0; text-decoration: none; }
.modal a.close-modal::before { content: "\00d7"; display: block; font-size: 26px; line-height: 30px; text-align: center; color: var(--tx2); }
.modal-spinner { display: none; }
#quick_login input.textbox { width: 100%; }
.jGrowl { position: fixed; z-index: 9999; right: 12px; top: 12px; }
.jGrowl-notification { background: var(--s3); color: var(--tx); padding: 10px 14px; margin-bottom: 6px; width: 290px; border-radius: 12px; font-size: 14.5px; }
.jGrowl-close { float: right; cursor: pointer; }
.reputation_positive, ._plus { color: #8fd19e; }
.reputation_negative, ._minus { color: var(--ember); }
.reputation_neutral, ._neutral { color: var(--tx3); }
.trow_reputation_positive { background: #1c2a20; }
.trow_reputation_negative { background: #2c1d16; }
.pollbar { background: var(--straw); height: 10px; border-radius: 5px; }
.expcolimage { display: none; }
#debug { display: none; }
.pa-modtools:empty, .pa-tools__mod:empty { display: none; }

/* ---------------------------------------------------------------- планшет */
@media (max-width: 1260px) {
	:root { --listw: 320px; }
	.pa-bot__grid { grid-template-columns: minmax(0, 1fr); }
	.pa-bot__sketch { position: relative; top: 0; order: -1; }
}

/* ---------------------------------------------------------------- телефон: экраны и нижний док */
@media (max-width: 860px) {
	.pa-app { display: block; }
	.pa-page { padding: 16px 16px 0; min-height: 100vh; padding-bottom: 72px; }
	.pa-body--split .pa-page { padding: 0 0 66px; }
	.pa-rail { position: fixed; left: 0; top: 0; bottom: 0; height: auto; width: min(300px, 86vw); transform: translateX(-105%); transition: transform .22s ease; border-right: 1px solid var(--line2); z-index: 90; }
	.pa-app.is-rail-open .pa-rail { transform: none; }
	.pa-app.is-rail-open::after { content: ""; position: fixed; inset: 0; background: rgba(5, 6, 8, .55); z-index: 80; }
	.pa-logo { justify-content: flex-start; padding-left: 16px; }
	.pa-ch, .pa-ch:link, .pa-ch:visited { flex-direction: row; gap: 12px; padding: 9px 12px; }
	.pa-ch__l { font-size: 15px; text-align: left; }
	.pa-rail__me { display: none; }
	.pa-me__drop { left: 0; bottom: calc(100% + 6px); }
	.pa-split { display: block; min-height: 0; }
	.pa-list { position: static; height: auto; overflow: visible; border-right: 0; }
	.pa-main { min-height: 0; }
	.pa-split[data-screen="list"] > .pa-main { display: none; }
	.pa-split[data-screen="main"] > .pa-list { display: none; }
	.pa-split--stack[data-screen="main"] > .pa-list { display: block; border-top: 1px solid var(--line); }
	.pa-listhead { position: sticky; top: 0; }
	.pa-back { display: grid; }
	.pa-chathead { padding: 8px 12px; min-height: 58px; gap: 8px; }
	.pa-chathead__h { font-size: 16px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
	.pa-chathead__meta span:last-child { display: none; }
	.pa-guest__field { font-size: 14px; padding: 0 14px; }
	.pa-bar, .pa-tfoot { padding-left: 16px; padding-right: 16px; }
	.pa-chathead__people { display: none; }
	.pa-chathead > .pa-tile { width: 34px; height: 34px; }
	.pa-posts { padding: 4px 10px 10px; }
	.pa-msg { grid-template-columns: 34px minmax(0, 1fr); gap: 8px; max-width: 100%; }
	.pa-msg--me { grid-template-columns: minmax(0, 1fr) 34px; padding-left: 18px; }
	.pa-msg--them { padding-right: 18px; }
	.pa-msg .pa-face--m { width: 34px; height: 34px; }
	.pa-msg .pa-face--m.pa-face--mono span { font-size: 14px; }
	.pa-msg__bubble { padding: 9px 12px 6px; }
	.pa-msg__body { font-size: 15.5px; }
	.pa-day { top: 66px; }
	.pa-bar, .pa-tfoot { padding-left: 18px; padding-right: 18px; }
	.pa-composer { bottom: 62px; padding: 8px 10px 10px; }
	.pa-bot__grid { padding: 6px 12px 24px; gap: 14px; }
	.pa-bot__sketch { position: sticky; top: 58px; z-index: 6; padding: 6px 0 8px; background: var(--s1); }
	.pa-stage { max-height: 30vh; margin: 0 auto; }
	.pa-curtain { margin-top: 6px; }
	.pa-stage__cap { display: none; }
	.pa-bmsg { max-width: 100%; }
	.pa-contact__in { padding: 20px 16px 24px; }
	.pa-foot { padding: 16px 16px 20px; }
	.pa-dock { display: flex; position: fixed; left: 0; right: 0; bottom: 0; z-index: 70; height: 62px; padding-bottom: env(safe-area-inset-bottom); background: rgba(12, 14, 16, .97); border-top: 1px solid var(--line); }
	.pa-dock a, .pa-dock a:link, .pa-dock a:visited { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; color: var(--tx2); font-size: 12px; text-decoration: none; }
	.pa-dock a[aria-current="page"], .pa-dock a.is-on { color: var(--straw); }
	.pa-dock .pa-ico { width: 23px; height: 23px; }
}
@media (max-width: 420px) {
	.pa-brand__sub { display: none; }
	.pa-h1 { font-size: 21px; }
	.pa-opts span { padding: 0 12px; font-size: 14.5px; }
}

/* без анимации для тех, кто её отключил */
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}

/* ===== ссылки в сообщениях: свой стиль форума (у каждого форума сетки свой, не повторять) =====
   «Сварной шов»: под ссылкой мелкая чешуя полукругов высотой 4px (radial-gradient повтором), как валик шва;
   при наведении чешуя и текст — цвета калёного металла (синь побежалости). Цвета берутся из пузыря: сталь или калька. */
:is(.post_body, .signature, [class*="-post__body"]) a.mycode_url, :is(.post_body, .signature, [class*="-post__body"]) a.mycode_url:link, :is(.post_body, .signature, [class*="-post__body"]) a.mycode_url:visited { font-style: normal; text-decoration: none; text-shadow: none; border: 0; border-radius: 0; box-shadow: none; overflow-wrap: anywhere; -webkit-box-decoration-break: clone; box-decoration-break: clone; color: var(--link, #f0c879); font-weight: 700; padding: 0 0 4px; background: radial-gradient(circle at 50% 100%, rgba(255, 255, 255, .28) 0 .8px, transparent 1.1px) repeat-x 0 100% / 4px 3px, radial-gradient(circle at 50% 100%, var(--weld, #c98348) 0 2.3px, transparent 2.7px) repeat-x 0 100% / 4px 4px; }
:is(.post_body, .signature, [class*="-post__body"]) a.mycode_url:hover, :is(.post_body, .signature, [class*="-post__body"]) a.mycode_url:focus-visible { color: var(--link-h, #b3c6ff); text-decoration: none; background: radial-gradient(circle at 50% 100%, rgba(255, 255, 255, .35) 0 .8px, transparent 1.1px) repeat-x 0 100% / 3px 3px, radial-gradient(circle at 50% 100%, var(--weld-h, #7f9cf2) 0 2.1px, transparent 2.5px) repeat-x 0 100% / 3px 4px; }
:is(.post_body, .signature, [class*="-post__body"]) a.mycode_url[target="_blank"]::after { content: none; display: none; }
/* ===== конец стиля ссылок ===== */
.pa-bot .pa-day { position: static; }
