/* krasnobykow.com — стиль дизайна C (новостной портал 2005–2008) + каркас catalog
   Палитра: тёмно-красный, серый, чёрный акцент. Без современных фреймворков. */

* { margin: 0; padding: 0; }

html, body {
  height: 100%;
}

body {
  background: #d8d8d8 url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='6' height='6'><rect width='6' height='6' fill='%23d8d8d8'/><rect width='1' height='1' fill='%23cccccc'/></svg>") repeat;
  font-family: Verdana, Arial, Tahoma, sans-serif;
  font-size: 12px;
  color: #222;
  line-height: 1.45;
}

a { color: #8b1a1a; text-decoration: underline; }
a:hover { color: #c02020; text-decoration: none; }
a:visited { color: #6b1414; }

img { border: 0; vertical-align: middle; }

h1 { font-size: 19px; color: #1a1a1a; margin: 0 0 12px 0; letter-spacing: -0.3px; }
h2 { font-size: 15px; color: #8b1a1a; margin: 14px 0 8px 0; }
h3 { font-size: 14px; color: #222; }
p  { margin: 0 0 9px 0; }

ul, ol { margin: 0 0 9px 18px; }
li { margin: 2px 0; }

/* ==================== КАРКАС ==================== */
.page-wrap {
  width: 960px;
  margin: 0 auto;
  background: #ffffff;
  border-left: 1px solid #a8a8a8;
  border-right: 1px solid #a8a8a8;
  box-shadow: 0 0 8px rgba(0,0,0,0.15);
}

.wrap { width: 960px; margin: 0 auto; }
.container { display: flex; padding: 0; }
.layout { display: flex; }
.main-col, .main { width: 660px; padding: 14px 16px; background: #ffffff; }
.sidebar-col, .sidebar { width: 262px; padding: 12px 10px; background: #f1efeb; border-left: 1px solid #c9c5bd; }

.clear { clear: both; height: 0; font-size: 0; }
.center { text-align: center; }
.right { text-align: right; }
.small { font-size: 11px; color: #777; }

/* ==================== ВЕРХНЯЯ ПОЛОСА ==================== */
.topbar {
  background: #2b2b2b;
  color: #cfcfcf;
  font-size: 11px;
  padding: 5px 12px;
  border-bottom: 2px solid #8b1a1a;
}
.topbar-table { width: 100%; }
.topbar-left { text-align: left; color: #d8d8d8; }
.topbar-right { text-align: right; color: #b8b8b8; }
.topbar a { color: #e6b3b3; }
.topbar a:hover { color: #ffffff; }
.header-top { background: #2b2b2b; color: #cfcfcf; font-size: 11px; padding: 5px 12px; }

.today, .date { color: #d0d0d0; font-size: 11px; }

/* ==================== ШАПКА ==================== */
.header {
  padding: 12px 16px;
  background: #ffffff;
  border-bottom: 3px solid #8b1a1a;
  overflow: hidden;
}
.logo { float: left; font-size: 26px; font-weight: bold; color: #1a1a1a; letter-spacing: -0.5px; font-family: Georgia, "Times New Roman", serif; }
.logo a { color: #1a1a1a; text-decoration: none; }
.logo a:hover { color: #8b1a1a; }
.logo .tm { font-size: 12px; color: #8b1a1a; vertical-align: super; }
.slogan { font-size: 11px; color: #777; font-weight: normal; margin-top: 3px; font-family: Verdana, Arial, sans-serif; letter-spacing: 0; }
.sitename { font-size: 24px; font-weight: bold; color: #1a1a1a; }

.header-right { float: right; text-align: right; }
.counter { display: inline-block; width: 88px; height: 31px; margin: 0 0 6px 0; }

.search-form { display: inline-block; margin: 0; }
.search-form input[type="text"] {
  border: 1px solid #a5a5a5;
  background: #f4f4f4;
  padding: 3px 5px;
  font-size: 11px;
  font-family: Verdana, Arial, sans-serif;
  width: 150px;
  color: #333;
}
.search-form button {
  border: 1px solid #8b1a1a;
  background: #b82525;
  background: linear-gradient(to bottom, #c93a3a 0%, #8b1a1a 100%);
  color: #ffffff;
  padding: 2px 6px;
  cursor: pointer;
  vertical-align: middle;
}
.search-form button:hover { background: #a82020; }

/* ==================== НАВИГАЦИЯ ==================== */
.mainnav, .nav {
  background: #8b1a1a;
  background: linear-gradient(to bottom, #a82323 0%, #6d1414 100%);
  padding: 7px 16px;
  font-size: 12px;
  color: #ffffff;
  border-bottom: 1px solid #4a0d0d;
}
.mainnav a, .nav a {
  color: #ffffff;
  text-decoration: none;
  font-weight: bold;
  padding: 0 2px;
}
.mainnav a:hover, .nav a:hover { color: #ffd0d0; text-decoration: underline; }
.sep { color: #b08888; padding: 0 4px; }

/* ==================== КОНТЕНТ ==================== */
.content { display: flex; }

/* ==================== ИНТРО ==================== */
.intro { margin: 0 0 14px 0; }
.intro-box {
  background: #fffbe6;
  border: 1px solid #e0d080;
  padding: 10px 14px;
  margin: 0 0 16px 0;
  font-size: 12px;
  line-height: 1.5;
  color: #4a3f1a;
}

/* ==================== ЗАГОЛОВОК СЕКЦИИ ==================== */
.section-title {
  font-size: 15px;
  color: #8b1a1a;
  margin: 16px 0 10px 0;
  padding: 5px 10px;
  background: #f4efe8;
  border-left: 4px solid #8b1a1a;
  border-bottom: 1px solid #e2ddd4;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 0.3px;
}

/* ==================== ПРЕВЬЮ ПОСТА ==================== */
.post-preview {
  padding: 10px 0 12px 0;
  border-bottom: 1px dashed #d8d3cb;
  margin: 0 0 10px 0;
}
.post-preview.money, .post-preview.money-preview {
  background: #fdf8f0;
  padding: 10px 10px 12px 10px;
  border: 1px solid #ecd9b8;
  border-left: 4px solid #b82525;
  margin-bottom: 14px;
}
.post-meta {
  font-size: 11px;
  color: #777;
  margin-bottom: 6px;
}
.post-meta .sep { color: #bbb; }
.post-title { font-size: 15px; margin: 0 0 6px 0; line-height: 1.3; }
.post-title a { color: #1a1a1a; text-decoration: none; font-weight: bold; }
.post-title a:hover { color: #8b1a1a; text-decoration: underline; }
.post-announce { font-size: 12px; color: #444; line-height: 1.5; margin-bottom: 5px; }
.post-footer { font-size: 11px; color: #888; }
.post-date { color: #8b1a1a; font-size: 11px; }

.readmore { font-size: 12px; color: #8b1a1a; text-decoration: underline; font-weight: bold; }
.readmore:hover { color: #c02020; text-decoration: none; }

/* ==================== ПОЛНЫЙ ПОСТ ==================== */
.post-full { font-size: 13px; line-height: 1.6; }
.post-full p { margin: 0 0 11px 0; }
.post-full h2 { margin: 18px 0 8px 0; }
.post-author {
  font-size: 11px;
  color: #777;
  border-top: 1px solid #e0dcd4;
  padding-top: 8px;
  margin-top: 16px;
}
.post-tags, .entry-tags {
  font-size: 11px;
  color: #777;
  margin: 12px 0;
  padding: 6px 8px;
  background: #f6f3ee;
  border: 1px solid #e2ddd4;
}
.post-tags a, .entry-tags a { color: #8b1a1a; margin-right: 6px; text-decoration: none; }
.post-tags a:hover, .entry-tags a:hover { text-decoration: underline; }

/* ==================== ПАГИНАЦИЯ ==================== */
.pagination {
  margin: 18px 0;
  padding: 8px 10px;
  background: #f4efe8;
  border: 1px solid #e2ddd4;
  text-align: center;
  font-size: 12px;
}
.pagination a { color: #8b1a1a; font-weight: bold; }

/* ==================== КОММЕНТАРИИ ==================== */
.lastcomments, .last-comments, .comments-preview { margin: 0 0 10px 0; }
.lastcomment {
  padding: 7px 0;
  border-bottom: 1px dotted #d0cbc2;
  font-size: 12px;
}
.lastcomment b { color: #1a1a1a; }
.lastcomment-date { color: #999; font-size: 11px; margin-left: 4px; }
.lastcomment-text { color: #555; margin: 3px 0 0 0; font-size: 11px; }

.comment {
  padding: 8px 10px;
  margin: 0 0 8px 0;
  background: #f9f7f3;
  border: 1px solid #e2ddd4;
  font-size: 12px;
}
.comment .c-author { font-weight: bold; color: #8b1a1a; }
.comment .c-date { color: #999; font-size: 11px; margin-left: 6px; }
.comment .c-body { margin: 5px 0 0 0; color: #333; line-height: 1.5; }

/* ==================== САЙДБАР ==================== */
.widget { margin: 0 0 14px 0; background: #ffffff; border: 1px solid #c9c5bd; }
.widget-title {
  font-size: 12px;
  font-weight: bold;
  color: #ffffff;
  background: #6d1414;
  background: linear-gradient(to bottom, #8b1a1a 0%, #5a1010 100%);
  padding: 6px 10px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  border-bottom: 1px solid #4a0d0d;
}
.widget-body { padding: 8px 10px; font-size: 12px; color: #333; }
.widget-list { list-style: none; margin: 0; padding: 0; }
.widget-list li { padding: 3px 0; border-bottom: 1px dotted #d8d3cb; }
.widget-list li:last-child { border-bottom: 0; }
.widget-list a { color: #8b1a1a; text-decoration: none; }
.widget-list a:hover { text-decoration: underline; }

.widget-recommend { border: 2px solid #b82525; }
.widget-recommend .widget-title { background: #b82525; background: linear-gradient(to bottom, #d03030 0%, #8b1a1a 100%); }
.widget-recommend .widget-body { background: #fdf0f0; }
.recommend { border: 2px solid #b82525; background: #fdf0f0; padding: 8px 10px; }
.money-link { font-weight: bold; color: #b82525; text-decoration: underline; }
.money-link:hover { color: #6d1414; text-decoration: none; }

.tagcloud, .tag-cloud, .tags { line-height: 2; font-size: 12px; }
.tagcloud a, .tag-cloud a, .tags a {
  color: #8b1a1a;
  text-decoration: none;
  margin-right: 4px;
  padding: 1px 3px;
}
.tagcloud a:hover, .tag-cloud a:hover, .tags a:hover { background: #f4efe8; text-decoration: underline; }
.tag-lg { font-size: 14px; font-weight: bold; }
.tag-md { font-size: 12px; }
.tag-sm { font-size: 11px; color: #777; }

/* ==================== ФУТЕР ==================== */
.footer {
  background: #2b2b2b;
  color: #b8b8b8;
  padding: 14px 16px;
  border-top: 3px solid #8b1a1a;
  font-size: 11px;
  text-align: center;
}
.footer-links { margin: 0 0 8px 0; }
.footer-links a { color: #e6b3b3; text-decoration: none; }
.footer-links a:hover { color: #ffffff; text-decoration: underline; }
.copy { color: #888; font-size: 11px; }

/* ==================== ИКОНКИ ==================== */
.icon { vertical-align: middle; border: 0; }
.icon-rss { width: 14px; height: 14px; }
.icon-mail { width: 14px; height: 14px; }
.icon-user { width: 12px; height: 12px; }
.icon-comment { width: 13px; height: 13px; }
.icon-calendar { width: 13px; height: 13px; }
.icon-tag { width: 12px; height: 12px; }
.icon-search { width: 12px; height: 12px; }
.icon-arrow-right { width: 10px; height: 10px; margin-left: 3px; }

/* ==================== QA ==================== */
.qa-item { margin: 0 0 16px 0; padding: 10px 12px; background: #f9f7f3; border: 1px solid #e2ddd4; }
.qa-question { font-weight: bold; color: #2c4a6b; margin-bottom: 6px; font-size: 13px; }
.qa-answer { font-size: 13px; line-height: 1.5; color: #333; }
.qa-form { margin: 18px 0 0 0; padding: 10px 12px; background: #f4efe8; border: 1px solid #e2ddd4; }
.qa-form input[type="text"], .qa-form textarea {
  width: 100%; box-sizing: border-box; border: 1px solid #a5a5a5;
  background: #fff; padding: 4px 6px; font-family: Verdana, Arial, sans-serif;
  font-size: 12px; margin: 3px 0 8px 0;
}
.qa-form textarea { height: 80px; }

/* ==================== ФОРУМ ==================== */
.forum-table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #c9c5bd;
  margin: 0 0 16px 0;
  font-size: 12px;
}
.forum-table th {
  background: #6d1414;
  background: linear-gradient(to bottom, #8b1a1a 0%, #5a1010 100%);
  color: #ffffff;
  padding: 6px 8px;
  text-align: left;
  border: 1px solid #4a0d0d;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.3px;
}
.forum-table td {
  padding: 6px 8px;
  border: 1px solid #dedad2;
  vertical-align: top;
}
.forum-table tr:nth-child(even) td { background: #f6f3ee; }
.forum-table tr:nth-child(odd) td { background: #ffffff; }
.forum-table a { color: #8b1a1a; font-weight: bold; text-decoration: none; }
.forum-table a:hover { text-decoration: underline; }

.forum-form { margin: 18px 0; padding: 12px; background: #f4efe8; border: 1px solid #e2ddd4; }
.forum-form input[type="text"], .forum-form textarea {
  width: 100%; box-sizing: border-box; border: 1px solid #a5a5a5;
  background: #fff; padding: 4px 6px; font-family: Verdana, Arial, sans-serif;
  font-size: 12px; margin: 3px 0 8px 0;
}
.forum-form textarea { height: 70px; }

.forum-stats { font-size: 12px; }
.forum-stats b { color: #8b1a1a; }

/* ==================== ГОСТЕВАЯ КНИГА ==================== */
.gb-entry { padding: 8px 10px; margin: 0 0 10px 0; background: #f9f7f3; border: 1px solid #e2ddd4; font-size: 12px; }
.gb-author { font-weight: bold; color: #8b1a1a; }
.gb-date { color: #999; font-size: 11px; margin-left: 6px; }
.gb-body { margin: 5px 0 0 0; color: #333; line-height: 1.5; }
.gb-form { margin: 18px 0; padding: 12px; background: #f4efe8; border: 1px solid #e2ddd4; }
.gb-form input[type="text"], .gb-form textarea {
  width: 100%; box-sizing: border-box; border: 1px solid #a5a5a5;
  background: #fff; padding: 4px 6px; font-family: Verdana, Arial, sans-serif;
  font-size: 12px; margin: 3px 0 8px 0;
}
.gb-form textarea { height: 80px; }

/* ==================== 404 ==================== */
.error-page { text-align: center; padding: 40px 20px; }
.error-page h1 { font-size: 60px; color: #8b1a1a; margin: 0 0 10px 0; }

/* ==================== ПРОЧЕЕ ==================== */
.bookmark { font-size: 11px; }
.bookmark a { color: #8b1a1a; text-decoration: none; }

button, input[type="submit"] {
  font-family: Verdana, Arial, sans-serif;
  font-size: 12px;
  border: 1px solid #6d1414;
  background: #8b1a1a;
  background: linear-gradient(to bottom, #a82323 0%, #6d1414 100%);
  color: #fff;
  padding: 4px 12px;
  cursor: pointer;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.25);
}
button:hover, input[type="submit"]:hover { background: #6d1414; }

/* ==================== АДАПТИВ (минимальный) ==================== */
@media (max-width: 980px) {
  .page-wrap, .wrap { width: 100%; }
  .content, .container, .layout { display: block; }
  .main-col, .main { width: auto; }
  .sidebar-col, .sidebar { width: auto; border-left: 0; border-top: 1px solid #c9c5bd; }
  .header { overflow: hidden; }
  .logo { float: none; }
  .header-right { float: none; text-align: left; margin-top: 8px; }
}
