html { overflow-y: scroll; }
.title { background-color:#94EE94; margin-bottom: 4px; border: 1px #000000 solid; width: 98%; }
.mainmenu { background-color: #C3F6C3; background-position: center; margin-bottom: 4px; border: 1px #000000 solid; width: 98%; }
.announce { background-color: #FFFFFF; margin-bottom: 4px; border: 1px #2DBE2D solid; width: 100%; }
.innertable td { font-size: 12px; font-family: Arial; color: #000000; background-color: #94EE94; list-style-type: circle; padding: 5px; }
/* Цвет шрифта в зеленых полосах заголовков внутри страниц - стандартный светлозеленый сайта, а не белый. Просьба 24.08.2026. */
td.tablehead { line-height: 2em; background: #007000; color:#eeeeee; font-family:Arial,Helvetica,sans-serif; font-size:12px; font-weight:bolder; padding:12px; text-align:center; }
td.tablehead a { color:#FFFFFF; }
td.tablehead h1 { color:#FFFFFF; }
td.tablehead2 { line-height: 2em; background: #007000; color:#FFFFFF; font-family:Arial,Helvetica,sans-serif; font-size:12px; font-weight:bolder; padding:12px; text-align:center; }
td.tablehead2 a { color:#FFFFFF; }
.button { background: #96EE96; padding: 5px 20px; margin: 0px; }
.button:hover { background: #55EE55; }
.photo_nav { overflow: auto; padding: 5px; vertical-align: center; text-align: center; white-space: nowrap; max-width: 900px; font-family: Arial; font-size: 10px; }
td.adver { font-size: 15px; font-family: "Times New Roman"; font-weight: bold; color: #000000; background-color:#FFFFFF; text-align: center; }
td.category { font-size: 15px; font-family: "Times New Roman"; font-weight: bold; color: #000000; background-color:#C3F6C3; text-align: center; }
tr.tablehead td { text-align: center; font-size: 11px; padding-left: 1px; padding-right: 1px; }
tr.tablehead td { text-align: center; font-size: 11px; padding-left: 1px; padding-right: 1px; }
td.tablehead_newpost { text-align: center; font-size: 11px; padding: 10px 10px 0px 10px; background: #309B30; color: #09190c; }
td.forumentry { font-size: 12px; font-family: Arial; font-weight: normal; color: #000000; background-color:#94EE94; text-align: center; }
.copyright { font-size: 9px; font-family: Arial; color: #111111; text-align: center; width: 98%; border: 0px; padding-top: 4px; padding-bottom: 0px; }
H1 { font-family: Arial; font-weight: bolder; font-size: 16px; color: #007000; text-align: center; margin-top: 0px; margin-bottom: 0px; }
H2 { font-family: Arial; font-size: 14px; color: #005000; text-align: right; margin: 0px; }
H2:first-letter { text-transform: capitalize; }
H3 { font-size: 14px; font-family: Arial; text-align: left; margin-top: 0px; margin-bottom: 10px; font-weight : bold; }
H3:first-letter { text-transform: capitalize; }
H4 { font-size: 14px; font-family: Arial; color: #000000; text-align: left; margin-top: 2px; margin-bottom: 0px; padding-bottom: 0px; }
H5 { font-size: 14px; font-family: Arial; text-align: left; margin-top: 0px; margin-bottom: 0px; padding-top: 0px; }
/* Список тем: отступ между названием и описанием, как у a.f-title на главной.
   Класс ставит stdforum.php под флагом $opt_topic_descr_gap. */
H4.t-gap, H5.t-gap { margin-bottom: 10px; }
H6 { font-size: 12px; font-family: Arial, Helvetica, sans-serif; font-weight: bolder; color: #007000; margin-top: 0px; margin-bottom: 0px; padding-top: 0px; }
li { font-size: 12px; width: 65%; font-family: Arial; color: #000000; text-align: left; margin-top: 2px; margin-bottom: 2px; font-weight : normal; padding-bottom: 0px; }
.actions { font-size: 10px; font-family: Arial; font-weight: bold; text-align: left; list-style-type: circle; }
.locations { font-size: 12px; font-family: Arial, Helvetica, sans-serif; font-weight: normal; color: #111111; margin-top: 5px; margin-bottom: 0px; padding-top: 0px; text-align: left; border: 0px; width: 100%; margin-bottom: 4px; }
.descr { margin-bottom: 7px; font-size: 10px; font-family: Arial; color: #111111; word-break: break-word; }
.descr2 { margin-top: 10px; font-size: 10px; font-family: Arial; color: #111111; word-break: break-word; }
.username { font-family: Arial; font-weight: normal; color: #9C0000; }
.pages { }
.pages a { font-size: 12px; line-height: 2.5; color:brown; text-decoration: none; padding: 7px 12px 7px 12px; margin: 3px 3px 3px 3px; border: 1px solid #808080; background-color:#eeeeee; }
.pages b { font-size: 12px; line-height: 2.5; padding: 7px 12px 7px 12px; margin: 3px 3px 3px 3px; border: 1px solid #808080; background-color: #FFE17F; }
.sort { font-size: 10px; font-family: Arial; color: #000000; text-align: right; background-position: right; }
.topicentry { font-size: 12px; font-family: Arial; font-weight: normal; color: #000000; background-color:#94EE94; text-align: center; word-break: break-word; }
tr.topicentry td { margin: 0px; padding: 5px; word-break: break-word; }
tr.topicentry2 td { margin: 0px; padding: 5px; word-break: break-word; background-color: #FFE17F; }
.postentry { font-size: 12px; font-family: Verdana; color: #111111; background-color:#94EE94; vertical-align: top;  padding: 5px; }
.postentry2 { font-size: 12px; font-family: Verdana; color: #111111; background-color:#80DE80; vertical-align: top;  padding: 5px; }
.modcomment { font-size: 12px; color: #000000; border: 4px solid #FFE17F; padding: 7px; width: 50%; word-break: break-word; }
.modlinks { font-size: 9px; font-family: Arial; color: #000033; text-align: right; border: #000033; border-style: none; border-top-width: 1px; border-right-width: 1px; border-bottom-width: 1px; border-left-width: 1px; }
blockquote {  font-size: 10px; font-weight: lighter; margin: 5px 0px 10px 20px; padding: 5px; border: #309B30 1px dotted; border-left: #309B30 3px solid; background: #B4EEB4; word-break: break-word; }
/* ТАБЛИЦЫ ИЗ СООБЩЕНИЙ — РИСУЕМ ПО МЕРЕ ПРОКРУТКИ.
   Люди выкладывают в постах выписки из ревизий и метрик: на
   /post/3866/145769/0.htm 23 таблицы, 6826 строк, 67980 ячеек, 1,1 МБ HTML.
   По сети это едет быстро (gzip сжимает до 245 КБ), а вот раскладку для
   шестидесяти восьми тысяч ячеек браузер считает сразу и целиком - отсюда
   «пердит и тормозит».
   content-visibility: auto разрешает пропускать то, что за пределами экрана,
   и считать по мере подхода. contain-intrinsic-size: auto даёт заглушку по
   высоте, чтобы полоса прокрутки не прыгала, и запоминает реальный размер
   после первой отрисовки.
   Поиск по странице (Ctrl+F) продолжает находить текст внутри: браузер
   раскрывает пропущенные куски сам. Браузеры без поддержки просто
   игнорируют эти два свойства и рисуют как раньше. */
.usertable {  border-spacing: 1px; background-color: #309B30; border: #309B30 0px solid; font-family: Arial, Helvetica, sans-serif; font-size: 12px;
  content-visibility: auto; contain-intrinsic-size: auto 600px; }
.usertable td {  background-color: #B4EEB4; padding: 10px 5px 10px 5px; font-family: Arial, Helvetica, sans-serif; font-size: 12px; }
/* Обёртка таблицы из сообщения (parser.php, table_parse): таблица шире
   поста прокручивается вбок сама, не таща за собой весь пост. */
.usertablewrap { max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.offtopic {  font-size: 10px; color: #333333; text-align: center; }
code { font-family: "Courier New", Courier, mono; font-size: 14px; text-align: left; }
/* Плашка ONLINE в колонке автора — ниже, чем пункт меню.
   .menuentry3 задуман для меню, там 1.5em оправданы. В сообщении это
   маленькая подпись под ником (styles/abstract/display.php), и полторы строки
   высоты дают лишнюю пустоту под словом.
   Селектор с .online бьёт .menuentry3 по старшинству, !important не нужен.
   В мобильном стиле это правило есть с самого начала, на десктопе его просто
   забыли — теперь одинаково в обоих. */
.online .menuentry3 { height: 1em; }

.menuentry3 { height: 1.5em; font-family: Arial, Helvetica, sans-serif; font-size: 10px; background-color:#007000; text-transform: uppercase; width: 200px; text-align: center; font-weight: bolder; padding: 3px 0px; Color: #FFFFFF; margin-bottom: 15px; }
.menuentry2 {  font-family: Arial, Helvetica, sans-serif; font-size: 10px; background-color:#FFE17F; text-transform: uppercase; width: 14%; text-align: center; font-weight: bolder; padding: 7px 1px 7px 1px; }
.menuentry {  font-family: Arial, Helvetica, sans-serif; font-size: 10px; background-color:#94EE94; text-transform: uppercase; width: 14%; text-align: center; font-weight: bolder; padding: 7px 1px 7px 1px; }
.outertable {  margin-bottom: 4px; width: 98%; border: 1px #2DBE2D solid; }
.innertable {  background-color: #FFFFFF; border: 0px; padding: 0px; border-spacing: 1px; width: 100%; }
.innertable2 {  background-color: #FFFFFF; border-spacing: 15px; width: 735px; margin-left: auto; margin-right: auto; font-family: Arial; font-size: 12px; }
.maintext { font-family: Arial, Helvetica, sans-serif; font-size: 12px; }
.hligh { font-weight: bold; color: #CC9933; }
.sign { font-size: 10px; font-family: Verdana; color: #404040; }
.postlinks {  border-bottom:#94EE94 0px solid;  padding-bottom: 3px; margin-top: 10px; margin-right: 4px; }
.postlinks2 { text-align: right; margin-right: 5px; }
.posthr, .innertable td hr { width: 15%; margin-right: 85%; margin-bottom: 10px; border-top: 1px solid white; border-bottom: 0px solid; border-left: 0px; border-right: 0px; }
.online { font-weight: bold; }
.posttable { border-collapse: separate; width: 100%; table-layout: fixed; border-spacing: 1px; padding: 0px; }
.spaceRRR { margin-bottom: 5px; }
.butt { -webkit-appearance: none; border: 0px; border-radius: 5px; margin: 5px; padding: 5px; color: white; background-color: #397a65; font-size: 14px; cursor: pointer; }
.butt:hover { background-color: #2d6150; }
.basictable { padding: 5px; border: 0px; }
a img { border: 0px; }
a.rules:link { font-size: 10px; font-family: Arial; color: #F01111; }
a.rules:visited { font-size: 10px; font-family: Arial; color: #F01111; }
a.rules:active { font-size: 10px; font-family: Arial; color: #F01111; }
a.rules:hover { font-size: 10px; font-family: Arial; color: #FF4455; }
a.inverse:link { color: #FFFFFF; text-decoration: none; font-family: Arial; font-size: 12px; }
a.inverse:visited { color: #FFFFFF; text-decoration: none; font-family: Arial; font-size: 12px; }
a.inverse:active { color: #FFFFFF;  text-decoration: none; font-family: Arial; font-size: 12px; }
a.inverse:hover { color: #FFFFFF; text-decoration: underline; font-family: Arial; font-size: 12px; }
a.menuitem:link { color: #9C0000; text-decoration: none; }
a.menuitem:visited { color: #9C0000; text-decoration: none; }
a.menuitem:active { color: #9C0000; text-decoration: none; }
a.menuitem:hover { color: #9C0000; text-decoration: none;  }
a:link { color: #9C0000; text-decoration: none; }
a:visited { color: #9C0000; text-decoration: none; }
a:active { color: #9C0000;  text-decoration: none; }
a:hover { color: #9C0000; text-decoration: underline; }
a.username:link { font-weight: bolder; color: #9C0000; text-decoration: none; }
a.username:visited { font-weight: bolder; color: #9C0000; text-decoration: none; }
a.username:active { font-weight: bolder; color: #9C0000;  text-decoration: none; }
a.username:hover { font-weight: bolder; color: #9C0000; text-decoration: underline;  }
textarea { font-size: 12px; font-family: arial, verdana, geneva; border: #808080 1px solid; background-color: #DCDCDC; width:98%; padding: 7px 12px 7px 12px; }
select { font-size: 12px; font-family: arial, verdana, geneva; border: #808080 1px solid; background-color: #DCDCDC; padding: 6px 12px 6px 12px; }
input { font-family: arial, verdana, geneva; font-size: 12px; border: #808080 1px solid; background-color: #DCDCDC; padding: 7px 12px 7px 12px; }
option { font-size: 10px; font-family: arial, verdana, geneva; border: #808080 1px solid; background-color: #DCDCDC; padding: 7px 12px 7px 12px; }
body { background-color: #FFFFFF; margin: 0px; min-width: 520px; }
body.newtheme {background-color: #FFFFFF; margin: 0px; }
body.profile { background-color: #EEEEEE; margin: 0px; }
body.contents { width: 100%; }
.online-all2 h2 { color: #333; font-family: Arial, Helvetica, sans-serif; font-weight: bold; font-size: 12px; margin-bottom: 10px; text-transform: uppercase; }
.online-all2 { margin: 0px 0px 15px 0px; padding: 0px 0px 0px 0px; }
.online2 { margin-bottom: 10px; padding: 5px; height: 75px; }
.online2 img { float: left; margin-right: 5px; width: 55px; display: block; height: 65px; }
.online2 .nic { float: left; width: 70%; }
.online2 .nic a { color: #006401; font-size: 12px; font-family: Arial, Helvetica, sans-serif; display: block; font-weight: bold; text-align: left; }
.online2 .nic p { color: #000; font-size: 9px; font-family: Arial, Helvetica, sans-serif; text-align: left; margin-bottom: 1px; margin-top: 3px; font-weight: normal; width: 150px; word-break: break-word; }
.tdltr { padding: 0px; background-color: #94EE94; margin: 0px; text-align: -webkit-center; }
.ltr { width: 30px; height: 30px; background-color: white; text-align: center; font-weight: bold; font-size: 20px; padding: 10px 5px 0px 5px; color: #FEC41A; }
.ltr2 { color: #006400; }
.ltrtbl { padding: 0px; margin: 0px; margin-top: 15px; }
.srchtopic { background-color: #FFE17F; padding: 10px; width: 200px; text-align: center; margin: 15px 0px 15px 0px; font-family: arial; font-size: 14px; }
#hiddenSpoiler { padding: 10px; background-color: white; }
.spoiler-input-button { background-color: #94EE94; border: #111 1px dashed; text-align: center; margin: 7px 0px 7px 0px; cursor: pointer; }
.topictitle { margin-top: 25px; margin-bottom: 25px; font-size: 18px; text-align: center; }
.forumtitle { margin-top: 25px; font-size: 22px; text-align: center; }
.titlesubtext { text-align: center; font-weight: normal; }
.rssbut { width: 40px; height: 20px; background-color: orange; text-align: center; font-weight: bold; font-size: 14px; padding: 5px 5px 0px 5px; color: white; }
.profiletable { font-family: Arial; width: 100%; font-size: 14px; background-color: #eeeeee; padding: 10px; word-break: break-word; border: 1px solid #dddddd;}
/* Перенос ТОЛЬКО по словам. break-all рвал слова посреди букв — «специа-
   листов» на две строки, — потому что рвёт где угодно, а не там, где можно.
   anywhere делает то, ради чего это писалось: длинная ссылка или строка без
   пробелов из таблицы не вылезет, а обычный текст останется целым. */
.profiletable td { min-width: 60px; vertical-align: top; word-break: normal; overflow-wrap: anywhere; }
/* Кнопки публичного профиля (28.08.2026): один стиль с кнопками «Геометок» (.butt) —
   белый текст на зелёном, скругление 5px. Размеры прежние, чтобы сетка не поехала.
   -secondary — второстепенное действие (серая), -admin — админское/модераторское (красная). */
/* Форма, высота и эффект — как у .btn-primary на главной vgd.ru (assets/style.css):
   10px 18px, скругление 4px, жирный 13px, тень 0 2px 0, плавный ховер. Цвет свой. */
.profilebutton { font-family: Arial, Helvetica, sans-serif; display: inline-block; width: 220px; margin: 4px 5px 4px 0px; padding: 10px 18px; background-color: #397a65; color: white; text-align: center; font-size: 13px; font-weight: 700; line-height: 1.2; border: 1px solid transparent; border-radius: 4px; box-sizing: border-box; box-shadow: 0 2px 0 rgba(29,58,48,0.18); transition: background 0.15s ease, color 0.15s ease; }
.profilebutton a, .profilebutton a:link, .profilebutton a:visited { color: white; text-decoration: none; }
.profilebutton:hover { background-color: #2d6150; }
.profilebutton-secondary { background-color: #8a8a8a; }
.profilebutton-secondary:hover { background-color: #6f6f6f; }
.profilebutton-admin { background-color: #b02020; }
.profilebutton-admin:hover { background-color: #8c1717; }
button.profilebutton { -webkit-appearance: none; border: 1px solid transparent; cursor: pointer; font-family: Arial, Helvetica, sans-serif; }
a.profilebutton, a.profilebutton:link, a.profilebutton:visited { display: inline-block; color: white; text-decoration: none; }
.profile-adminrow { display: flex; flex-wrap: wrap; gap: 6px; margin: 12px 0px 12px 0px; }
.profile-adminrow .profilebutton { width: auto; margin: 0px; }
.profilebutton-secondary { box-shadow: 0 2px 0 rgba(0,0,0,0.14); }
.profilebutton-admin { box-shadow: 0 2px 0 rgba(90,10,10,0.22); }
.tabmenu { font-size: 14px; font-family: arial; width: 100%; padding: 0px; background-color: #dddddd; border-spacing: 1px; vertical-align: middle; margin-bottom: 1.5em; margin-top: 1.5em; }
.tabpassive { padding: 5px; width: 200px; text-align: left; border-spacing: 0px; background-color: #ffffff; border-bottom: 0px solid #9C0000; }
.tabpassive:hover { padding: 5px; width: 200px; text-align: left; border-spacing: 0px; background-color: #efefef; border-bottom: 0px solid #9C0000; }
.tabactive { padding: 5px; width: 200px; text-align: left; border-spacing: 0px; background-color: #efefef; border-right: 5px solid #9C0000; }
.tabactive:hover { padding: 5px; width: 200px; text-align: left; border-spacing: 0px; background-color: #dcdcdc; border-right: 5px solid #9C0000; }
.pnotice { font-family: Arial; font-size: 14px; border: 1px solid #008000; padding: 7px 10px 7px 10px; background-color: #94EE94; }
/* МЕТКИ КАРТЫ. Переноса ПОСРЕДИ метки нет, но не за счёт nowrap: метка -
   inline-block, и пока она помещается в строку, она переносится целиком,
   а не рвётся в произвольном месте (о чём и просили 18.09.2026).
   nowrap убран 21.09.2026: на телефоне длинная метка вылезала за экран и
   распирала страницу вбок, а масштабирование у нас запрещено - читать
   становилось нечем. Теперь метка шире экрана превращается в прямоугольник
   по ширине страницы, а текст внутри переносится на две и больше строк.
   line-height ужат с 2.1em до 1.4em, а padding поднят с 4px до 8px: высота
   однострочной метки осталась прежней, зато у многострочной строки не
   разъезжаются. margin-bottom держит прежний зазор между метками, когда
   они идут одна под другой. */
/* Строка «Эта тема на карте» вместе со ссылкой «Удалить все привязки».
   Раньше размер был прибит в разметке (12px на всех), из-за чего на
   телефоне подпись была вдвое мельче окружающего текста. */
.maptags { font-family: Arial; font-size: 12px; margin: 20px 10px 10px 10px; }
.maptag { background-color: #397a65; color: white; font-family: arial; font-size: 12px; padding: 8px 10px; border-radius: 5px; line-height: 1.4em; display: inline-block; max-width: 100%; box-sizing: border-box; margin: 0 4px 4px 0; white-space: normal; overflow-wrap: break-word; word-wrap: break-word; }
/* ПОМЕТКА «ВИДНО ТОЛЬКО МОДЕРАТОРАМ» НАД НАЗВАНИЕМ ТЕМЫ (21.09.2026).
   Та же пилюля, что у геометок (.maptag выше), только предупреждающего
   цвета: у геометки приглушённый зелёный, здесь красный - ровно тот,
   которым на форуме набраны ссылки (#9C0000), так что пилюля остаётся
   в палитре сайта, а не привносит новый цвет. Стоит отдельной строкой НАД
   названием, поэтому display: inline-block и отступ снизу. */
.modtag { display: inline-block; background-color: #9C0000; color: white; font-family: arial; font-size: 12px; padding: 4px 10px 4px 10px; border-radius: 5px; line-height: 1.6em; margin-bottom: 4px; }

.postnav { position: absolute; right: 2.7%; }
.postnav2 { color: #555555; }
.posttime { text-align: left; margin-top: 0px; color: #667766; border: 0px; }
.diffStyle {}
.diffStyle2 { display: none; }
.aside {}
.asidetooltip {}
.postformstyle {}
.tooltip { position: fixed; padding: 10px 20px; border: 1px solid #b3c9ce; border-radius: 4px; text-align: center; font: italic 14px/1.3 sans-serif; color: #333; background: #fff; box-shadow: 3px 3px 3px rgba(0, 0, 0, .3); }
.likestyle { padding: 1px 0px 2px 0px; color: #9C0000; }
.copyhr { border: 0px; border-top: 1px solid #DDDDDD; margin-top: 1.5em; width: 100%; }
.widelimit { max-width: 900px; padding: 25px; background-color: white; margin-top: 1.5em; margin-bottom: 1.5em; }
.sidelinks { font-size: 9px; margin-top: 5px; margin-bottom: -5px; }
.qcont:first-letter { text-transform: capitalize; }
.commercial_data { min-width: 60px; vertical-align: top; word-break: normal; font-family: Arial; border-collapse: separate; text-indent: initial; white-space: normal; line-height: normal; font-weight: normal; font-size: 14px; font-style: normal; color: black; text-align: start; border-spacing: 2px; font-variant: normal; margin-top: 0px; }

.vgd-source-slot { width: 100%; max-width: 100%; box-sizing: border-box; }
.vgd-source-frame { position: relative; width: 100%; max-width: 100%; margin: 10px 0; box-sizing: border-box; background: #fff; padding: 5px; }
.vgd-source-frame-body { width: 100%; max-width: 100%; box-sizing: border-box; }
.vgd-source-toolbar-forum { background: transparent; }
.vgd-source-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 8px; margin: 0 0 4px 0; }
.vgd-source-caption { flex: 1 1 auto; min-width: 0; font-weight: bold; color: #9C0000; font-size: 14px; text-align: left; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.vgd-source-toolbar-btns { display: flex; gap: 4px; flex-shrink: 0; }
.vgd-source-fs-btn { font-size: 12px; padding: 4px 10px; cursor: pointer; border: 1px solid #aaa; background: #f5f5f5; border-radius: 3px; color: #333; }
.vgd-source-fs-btn:hover { background: #eee; }
.vgd-source-fs-exit[hidden] { display: none; }
.vgd-source-embed { margin: 0; width: 100%; max-width: 100%; box-sizing: border-box; }
.vgd-source-embed iframe { width: 100%; max-width: 100%; box-sizing: border-box; display: block; }
.vgd-source-frame.vgd-source-fullscreen { position: fixed; top: 0; left: 0; right: 0; bottom: 0; width: 100%; max-width: 100%; height: 100%; margin: 0; z-index: 10000; background: #fff; display: flex; flex-direction: column; padding: 8px; box-sizing: border-box; }
.vgd-source-frame.vgd-source-fullscreen .vgd-source-toolbar { flex-shrink: 0; }
.vgd-source-frame.vgd-source-fullscreen .vgd-source-frame-body { flex: 1; min-height: 0; display: flex; flex-direction: column; width: 100%; max-width: 100%; }
.vgd-source-frame-body .vgd-source-slot,
.vgd-source-frame-body iframe { width: 100%; max-width: 100%; box-sizing: border-box; display: block; }
.vgd-source-frame.vgd-source-fullscreen .vgd-source-frame-body .vgd-source-slot,
.vgd-source-frame.vgd-source-fullscreen .vgd-source-frame-body iframe { flex: 1; width: 100% !important; max-width: 100% !important; height: 100% !important; min-height: 0; }
body.vgd-source-fs-lock { overflow: hidden; }
.vgd-source-card { margin: 10px 0; padding: 10px 12px; border: 1px solid #ccc; background: #f8f8f8; }
.vgd-source-card a { font-weight: bold; }
.vgd-source-meta { color: #666; font-size: 12px; margin-left: 6px; }
.vgd-source-error .descr { color: #9C0000; }

/* ------------------------------------------------------------------
   ПОВТОРЯЮЩИЕСЯ СТИЛИ, ВЫНЕСЕННЫЕ ИЗ ШАБЛОНОВ (15.08.2026)

   Раньше эти же строки печатались атрибутом style на каждом элементе: в
   подвале восемь раз, в новостном списке — по разу на каждую новость, то
   есть двадцать. Правка выглядела так: поменять цвет в подвале — найти
   восемь копий и не забыть ни одной.

   По трафику это почти ничего не дало (gzip повторы и так жал: минус 171
   байт на новостной странице из 24 КБ) — смысл в том, что стиль лежит в
   одном месте.

   Селекторы намеренно с именем тега (td.newsitem, а не .newsitem): раньше
   inline-стиль бил любое правило из файла, а класс — нет. С тегом
   специфичность 0-1-1, и правила вида tr.topicentry td его не перебьют.
   ------------------------------------------------------------------ */

/* Подвал: ссылки «О ПРОЕКТЕ», «МИССИЯ», «КОНТАКТЫ» и остальные шесть.
   Только десктоп: у мобильной версии подвал свой, списком. */
.copylink { float: left; margin-right: 10px; background-color: #FFE17F; padding: 2px; width: 150px; text-align: center; margin-bottom: 4px; }

/* Новостной список (styles/abstract/news.php), общий для десктопа и мобилы. */
td.newsitem { word-break: break-word; padding: 15px; }
td.newssep { border-top: 7px solid #ffffff; }
h2.newstitle { margin: 12px 0px 0px 0px; text-align: left; font-size: 120%; }
div.newslinks { width: 100%; padding: 0px; margin: 0px; text-align: left; }
a.newstop { font-weight: normal; color: #9C0000; cursor: pointer; }
span.newsby { color: #555555; }

/* КАРТА УЧАСТНИКА В ПРОФИЛЕ (вкладка «Геометки»).
   Врезка — отдельная страница /map/index.php?u=N&embed=1 во фрейме: карта живёт
   на Yandex Maps v3 в UTF-8, а форум в cp1251, и второй копии карты здесь не
   нужно.

   a.butt: класс .butt писался для <input type=button>, а у ссылки цвет забирает
   a:link (0-1-1 против 0-1-0 у класса) — надпись выходила тёмно-красной на
   зелёном. Селектор с тегом уравнивает вес, а лежит он ниже a:link, поэтому
   выигрывает. */
.vgd-mapbox { width: 100%; max-width: 900px; height: 360px; border: 1px solid #dddddd; background: #eeeeee; margin: 0px 0px 10px 0px; }
.vgd-mapbox iframe { width: 100%; height: 100%; border: 0px; display: block; }
.vgd-mapacts { margin: 0px 0px 1.5em 0px; }
/* font-family здесь обязателен: .butt писался для <input type=button>, а тот
   берёт шрифт у системы. У ссылки же наследование идёт от body, где в теме
   семейство не задано вовсе — и кнопки выходили Times с засечками, чужими
   на фоне арайного форума. */
a.butt { display: inline-block; color: #ffffff; text-decoration: none; padding: 7px 14px; font-family: Arial, Helvetica, sans-serif; font-size: 14px; }
a.butt:hover { color: #ffffff; background-color: #007000; text-decoration: none; }

/* Поле «за что поблагодарить» в отзывах (28.08.2026): на всю ширину ячейки с
   одинаковыми полями, не вылезает (box-sizing), шрифт — как у текста вокруг. */
textarea.thanks-comment { display: block; width: 100%; max-width: 100%; margin: 0; box-sizing: border-box; font: inherit; line-height: 1.35; resize: vertical; }

/* Строки подразделов (styles/abstract/titles.php, 29.08.2026): иконка
   «новое / всё прочитано» - фоном вместо <img>, название - ссылка-блок
   вместо <h3>. Правило a.f-title повторяет H3 выше один в один. */
td.f-ico-read, td.f-ico-new, span.f-ico { background-repeat: no-repeat; background-position: center; background-size: 20px 20px; }
/* background-size obyazatelen: forum.png 40x40, bez masshtaba fon ne szhimaet kartinku, a rezhet centr - vmesto sharika kvadrat (01.09.2026). */
td.f-ico-read, span.f-ico-read { background-image: url(forum.png); }
td.f-ico-new, span.f-ico-new { background-image: url(forumnew.png); }
span.f-ico { display: inline-block; width: 20px; height: 20px; }
a.f-title { display: block; font-size: 14px; font-family: Arial; text-align: left; margin-top: 0px; margin-bottom: 10px; font-weight: bold; }
a.f-title:first-letter { text-transform: capitalize; }

/* Размеры заголовков ТЕМЫ = как у раздела (h2.forumtitle / h3.titlesubtext). Только здесь. 03.09.2026 */
.topictitle.tt-topic { font-size: 22px; }
h2.titlesubtext { font-size: 14px; }
