/*
Theme Name: City For Your
Description: Legacy-inspired editorial theme for CityForYour.
Version: 1.0.0
Text Domain: cityforyour
*/

:root { --red:#b11111; --ink:#262626; --line:#747472; --rail:#e2e2e2; --soft:#f4f4f4; --footer:#464646; }
* { box-sizing:border-box; }
body { margin:0; background:#fff; color:var(--ink); font:14px/1.55 Tahoma, Arial, sans-serif; }
a { color:var(--red); }
a:hover { text-decoration:none; }
.site-shell { width:calc(100% - 40px); max-width:1600px; margin:18px auto; border:1px solid var(--line); }
.site-header { display:flex; min-height:90px; align-items:center; justify-content:space-between; gap:20px; padding:15px 18px; }
.brand img { display:block; max-width:100%; height:auto; }
.brand-text { color:#555; font-size:12px; text-align:right; }
.top-rule { height:15px; background:#797978; }
.header-menu { background:#797978; padding:0 18px 12px; }
.header-menu .menu-list { display:flex; flex-wrap:wrap; gap:4px 18px; margin:0; padding:0; list-style:none; }
.header-menu a { color:#fff; font-size:12px; text-decoration:none; }
.header-menu a:hover { text-decoration:underline; }
.site-grid { display:grid; grid-template-columns:164px minmax(0, 1fr) 265px; align-items:stretch; }
.site-menu { padding:20px; background:var(--rail); font-size:12px; }
.site-menu h2, .latest h2 { margin:0 0 8px; font-size:13px; color:#333; text-transform:uppercase; }
.site-menu ul { list-style:none; padding:0; margin:0; }
.site-menu li { border-bottom:1px solid #c7c7c7; padding:7px 0; }
.site-menu a { color:#111; text-decoration:none; }
.site-menu a:hover { text-decoration:underline; }
.content-area { min-width:0; padding:25px 28px; }
.breadcrumbs { display:flex; flex-wrap:wrap; gap:6px; align-items:center; margin:0 0 20px; color:#8a8a8a; font-size:11px; }
.breadcrumbs a { color:#777; text-decoration:none; }
.breadcrumbs a:hover { color:var(--red); text-decoration:underline; }
.breadcrumbs .breadcrumb_last { display:none; }
.latest { padding:20px; background:var(--soft); font-size:12px; }
.latest article { border-bottom:1px solid #ddd; padding:10px 0; }
.latest article:last-child { border-bottom:0; }
.widget { margin:0 0 28px; font-size:12px; }
.widget:last-child { margin-bottom:0; }
.widget-title { margin:0 0 8px; font-size:13px; color:#333; text-transform:uppercase; }
.widget ul { margin:0; padding-left:16px; }
.latest h3 { margin:0 0 4px; font-size:14px; line-height:1.25; }
.latest time, .entry-meta { color:#777; font-size:11px; }
.site-footer { padding:22px 15px; background:var(--footer); text-align:center; color:#fff; font-size:11px; }
.site-footer a { color:#fff; }
.footer-menu .menu-list { display:flex; flex-wrap:wrap; justify-content:center; gap:4px 14px; margin:0 0 10px; padding:0; list-style:none; }
.entry { max-width:100%; }
.entry + .entry { margin-top:30px; padding-top:28px; border-top:1px solid #ddd; }
.entry-title { margin:0 0 8px; font-size:25px; line-height:1.18; font-weight:normal; }
.entry-title a { color:#222; text-decoration:none; }
.entry-title a:hover { color:var(--red); }
.entry-summary { margin:12px 0; }
.entry-content { overflow-wrap:anywhere; }
.entry-content img { max-width:100%; height:auto; border:1px solid #000; padding:1px; margin:5px; }
.article-tools { display:flex; flex-wrap:wrap; gap:10px 18px; align-items:center; margin:28px 0; padding:14px 0; border-top:1px solid #ddd; border-bottom:1px solid #ddd; }
.article-tools__title { font-size:12px; font-weight:bold; color:#555; }
.rating, .cityforyour-share-actions { display:flex; flex-wrap:wrap; align-items:center; gap:6px; }
.cityforyour-share-actions { flex:1 1 100%; }
.rating button, .cityforyour-share-actions a { display:inline-flex; align-items:center; gap:6px; min-height:36px; border:1px solid #bdbdbd; background:#fff; color:#444; padding:7px 12px; font:13px Tahoma,Arial,sans-serif; text-decoration:none; cursor:pointer; }
.rating button:hover, .cityforyour-share-actions a:hover { border-color:var(--red); color:var(--red); }
.rating button:disabled { cursor:not-allowed; opacity:.55; }
.rating .icon, .cityforyour-share-icon { display:inline-grid; place-items:center; min-width:20px; height:20px; font-size:17px; line-height:1; }
.article-tools .cityforyour-share-actions > a { display:inline-flex !important; visibility:visible !important; opacity:1 !important; border:0; border-radius:5px; color:#fff !important; font-weight:bold; }
.article-tools .cityforyour-share-actions > a:hover { color:#fff !important; filter:brightness(.9); }
.cityforyour-share--vk { background:#2787f5 !important; }.cityforyour-share--ok { background:#ee8208 !important; }.cityforyour-share--tg { background:#229ed9 !important; }.cityforyour-share--max { background:#5a42e8 !important; }
.entry-image { margin:16px 0 20px; }
.entry-image__media { display:block; width:100%; max-width:100%; max-height:600px; object-fit:cover; border:1px solid #ddd; }
.related-posts { margin-top:28px; padding-top:17px; border-top:1px solid #ddd; }
.related-posts h2 { margin:0 0 14px; color:#333; font-size:20px; }
.related-posts__grid { display:grid; grid-template-columns:repeat(5, minmax(0, 1fr)); gap:12px; }
.related-posts__item { min-width:0; border:1px solid #e3e3e3; background:#fff; }
.related-posts__item a { display:block; padding:10px; color:#ca0000; font-weight:bold; line-height:1.35; text-decoration:none; }
.related-posts__item a:hover { color:#840000; }
.related-posts__image { display:block; width:100%; height:145px; margin:0 0 9px; object-fit:cover; border:1px solid #222; }
.author-box { display:flex; gap:14px; align-items:center; margin:28px 0; padding:14px; background:#f4f4f4; border-left:3px solid var(--red); }
.author-box img { border-radius:50%; width:56px; height:56px; }
.author-box__label { color:#777; font-size:11px; }
.author-box__name { color:#222; font-size:14px; font-weight:bold; }
.read-more { font-size:12px; }
.pagination { margin-top:30px; display:flex; gap:8px; }
.pagination .page-numbers { padding:4px 8px; border:1px solid #bbb; text-decoration:none; }
.pagination .current { background:var(--red); color:#fff; border-color:var(--red); }
.comments-area { margin-top:35px; border-top:1px solid #ddd; padding-top:18px; }
.comment-list { padding-left:20px; }
.comment-body { padding:10px; margin:8px 0; background:#fafafa; }
.comment-author { font-weight:bold; }
@media (max-width:760px) {
  .site-shell { width:100%; margin:0; border:0; }
  .site-header { min-height:72px; }
  .site-grid { grid-template-columns:1fr; }
  .site-menu { order:2; }
  .content-area { order:1; padding:22px 18px; }
  .site-grid > aside { order:3; }
  .article-tools { align-items:flex-start; flex-direction:column; gap:10px; }
  .cityforyour-share-actions { width:100%; }
  .related-posts__grid { grid-template-columns:repeat(2, minmax(0, 1fr)); gap:9px; }
  .related-posts__image { height:130px; }
  .site-menu ul { display:flex; flex-wrap:wrap; gap:0 16px; }
  .header-menu { padding:0 18px 12px; }
  .site-menu li { border:0; }
}
