/*
Theme Name: Strict Right Menu
Theme URI: https://example.com/strict-rightmenu
Author: You
Description: Строгая тема: белый/чёрный/серый/жёлтый, меню справа, последние записи на главной.
Version: 1.0.1
Requires at least: 6.0
Tested up to: 6.8
Text Domain: strict-rightmenu
License: GPL-2.0-or-later
*/

/* ==== Tokens ==== */
:root{
  --c-bg:#fff;
  --c-text:#111;
  --c-muted:#666;
  --c-border:#e6e6e6;
  --c-accent:#ffd400;
  --content-w:1180px;
  --content-pad:24px;
}

/* ==== Base ==== */
*{box-sizing:border-box}
html,body{
  margin:0; padding:0;
  background:var(--c-bg); color:var(--c-text);
  font:16px/1.6 system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
}
img{max-width:100%;height:auto}
a{
  color:var(--c-text);
  text-decoration:none;
  border-bottom:1px solid transparent;
}
a:hover{border-bottom-color:var(--c-text)}
a:focus-visible{
  outline:2px solid var(--c-accent);
  outline-offset:2px;
}

/* ==== Layout ==== */
.wrapper{
  display:grid; gap:40px;
  grid-template-columns:1fr 300px; /* контент + правый сайдбар */
  width:min(var(--content-w),95vw);
  margin:0 auto; padding:var(--content-pad) 0 calc(var(--content-pad)*2);
}

/* ==== Header ==== */
.site-header{border-bottom:1px solid var(--c-border);background:#fff}
.site-title{
  width:min(var(--content-w),95vw);
  margin:0 auto; padding:20px 0;
  display:flex; align-items:center; gap:10px;
  font-weight:700; letter-spacing:.3px;
}
.site-title a{border:0; display:flex; align-items:center}
.brand-dot{
  inline-size:10px; block-size:10px; border-radius:50%;
  background:var(--c-accent);
}
/* Логотип */
.site-logo{
  max-height:40px; width:auto; margin-right:10px; vertical-align:middle;
}

/* ==== Sidebar (right) ==== */
.sidebar{
  border-inline-start:1px solid var(--c-border);
  padding-inline-start:24px;
}
.nav-title,.widget-title{
  font:700 12px/1.2 inherit;
  color:var(--c-muted); text-transform:uppercase; letter-spacing:.08em;
  margin:0 0 10px;
}

/* Унифицированные списки в виджетах/меню */
.menu, .widget ul{list-style:none;margin:0;padding:0}
.menu li, .widget ul li{margin:6px 0}
.menu a{
  display:inline-block; padding:4px 0; border-bottom:1px solid transparent;
}
/* Ссылки в сайдбаре — стиль “как Читать” */
.sidebar a{
  border-bottom:1px solid var(--c-text);
  transition:border-color .18s ease, color .18s ease;
}
.sidebar a:hover,
.sidebar .menu .current-menu-item > a,
.sidebar .menu .current-cat > a{
  border-bottom-color:var(--c-accent);
  font-weight:700;
}

/* ==== Posts ==== */
.post{
  margin:0 0 28px; padding:0 0 28px;
  border-bottom:1px solid var(--c-border);
}
.post:last-child{border-bottom:0}
.post-title{font-size:28px;line-height:1.25;margin:0 0 6px;font-weight:700}
.post-meta{color:var(--c-muted);font-size:13px;margin:0 0 12px}
.read-more{
  display:inline-block;margin-top:6px;border-bottom:1px solid var(--c-accent)
}
.read-more:hover{opacity:.85}

/* ==== Pagination ==== */
.pagination{
  display:flex; gap:12px; align-items:center; margin:24px 0 0;
}
.pagination :where(a,span){
  padding:6px 10px; border:1px solid var(--c-border);
}
.pagination .current{background:var(--c-accent);border-color:var(--c-accent)}

/* ==== Footer ==== */
.site-footer{
  border-top:1px solid var(--c-border);
  color:var(--c-muted);
  padding:16px 0; margin-top:20px;
}
.site-footer .inner{width:min(var(--content-w),95vw);margin:0 auto}

/* ==== Forms & Tables ==== */
:where(input,textarea,select){
  width:100%; padding:10px; border:1px solid var(--c-border); background:#fff; color:var(--c-text)
}
table{width:100%; border-collapse:collapse}
th,td{border:1px solid var(--c-border); padding:8px; text-align:left}

/* ==== Responsive ==== */
@media (max-width:900px){
  .wrapper{grid-template-columns:1fr}
  .sidebar{border-inline-start:0;border-top:1px solid var(--c-border);padding:20px 0 0}
}

/* ==== Gutenberg / Content width ==== */
.content>*{max-width:760px}
.content .alignwide{max-width:var(--content-w)}
.content .alignfull{max-width:100vw}

/* Buttons */
.wp-element-button, .wp-block-button__link, .link-button{
  display:inline-flex; align-items:center; gap:.5em;
  padding:.6em 1em; border:1px solid var(--c-border);
  background:var(--c-accent); color:var(--c-text); border-radius:6px;
}
.wp-element-button:hover, .wp-block-button__link:hover, .link-button:hover{opacity:.92}
.wp-element-button:focus-visible, .wp-block-button__link:focus-visible, .link-button:focus-visible{
  outline:2px solid var(--c-text); outline-offset:2px;
}

/* Quotes / Code / Tables in blocks */
blockquote{
  border-inline-start:4px solid var(--c-accent);
  margin:0 0 1em; padding:.1em 0 .1em 14px;
}
pre, code, kbd, samp{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
pre{background:#f7f7f7;border:1px solid var(--c-border);padding:12px;overflow:auto}
.wp-block-table table{width:100%;border-collapse:collapse}
.wp-block-table th, .wp-block-table td,
table th, table td{border:1px solid var(--c-border);padding:8px;text-align:left}

/* Widgets */
.widget{margin:18px 0}

/* Misc */
hr{border:0;border-top:1px solid var(--c-border);margin:24px 0}
.wp-caption{max-width:100%}
.wp-caption-text{color:var(--c-muted);font-size:13px;text-align:center;margin-top:6px}

.search-form{display:flex;gap:8px;align-items:center;max-width:760px}
.search-field{flex:1;padding:10px;border:1px solid var(--c-border)}
.search-submit{padding:10px 14px;border:1px solid var(--c-border);background:var(--c-accent);cursor:pointer}
.search-submit:hover{opacity:.9}

/* ==== Content links: “красивые” ==== */
.content a:not(.read-more):not(.link-button){
  text-decoration:none;
  box-shadow:inset 0 -2px 0 var(--c-accent);
  transition:box-shadow .18s ease,color .18s ease;
}
.content a:not(.read-more):not(.link-button):hover{box-shadow:inset 0 -6px 0 var(--c-accent)}
.content a[target="_blank"]:not(.link-button)::after{
  content:"↗"; font-size:.85em; margin-left:.25em; opacity:.8;
}

/* ==== Link Card ([linkcard]) ==== */
.link-card{
  display:grid; grid-template-columns:120px 1fr; gap:14px;
  border:1px solid var(--c-border); border-radius:10px; padding:14px;
  background:#fff; margin:16px 0;
}
.link-card--noimg{grid-template-columns:1fr}
.link-card-thumb{
  width:100%; aspect-ratio:16/10; object-fit:cover; border-radius:8px; background:#f6f6f6;
}
.link-card-title{margin:0 0 6px; font-weight:700; font-size:18px; line-height:1.3}
.link-card-desc{margin:0 0 8px; color:var(--c-muted); font-size:14px}
.link-card-domain{font-size:13px; color:var(--c-muted)}
.link-card a{box-shadow:none} /* внутри карточки маркер не нужен */
