/*
Theme Name: Or Torah
Theme URI: https://example.com/themes/or-torah
Author: You
Author URI: https://example.com
Description: A premium‑style, mobile‑first WordPress theme inspired by Orthodox Jewish aesthetics. Features rotating headers, font selector, adjustable site width, toggleable left/right sidebars, customizable colors, and optional footer widgets. RTL‑ready.
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: or-torah
Tags: custom-colors, custom-header, custom-logo, custom-menu, right-sidebar, left-sidebar, two-columns, three-columns, flexible-width, rtl-language-support, blog, news
*/

:root {
  --or-bg: #faf7f2;             /* Cream parchment */
  --or-ink: #1c1b1a;            /* Deep ink */
  --or-accent: #8d6e63;         /* Warm brown accent */
  --or-gold: #b08d57;           /* Subtle gold for trim */
  --or-link: #27476e;           /* Link color */
  --or-muted: #6b7280;          /* Muted text */
  --or-maxw: 1080px;            /* Will be overridden by Customizer */
  --or-font: "Noto Serif Hebrew", "Noto Serif", serif; /* Overridden by Customizer */
  --or-text: var(--or-ink);
  --or-bg-contrast: #fff;
}

html{ box-sizing:border-box; scroll-behavior:smooth; }
*, *::before, *::after { box-sizing:inherit; }
body{
  margin:0;
  font-family: var(--or-font);
  color: var(--or-text);
  background: var(--or-bg);
  line-height: 1.65;
  font-size: 18px;
}

.container{ max-width:var(--or-maxw); margin-inline:auto; padding:0 1rem; }
.site-header{
  position:relative;
  background: var(--or-bg-contrast);
  border-bottom: 4px solid var(--or-gold);
}
.branding{ display:flex; align-items:center; gap:.75rem; padding: .75rem 0; }
.custom-logo{ max-height:64px; width:auto; height:auto; }
.site-title a{ color:var(--or-ink); text-decoration:none; }
.site-description{ color:var(--or-muted); font-size:.95rem; }

.nav-primary{ background:transparent; border-top:1px solid #e6e1d9; border-bottom:1px solid #e6e1d9; }
.nav-primary ul{ list-style:none; margin:0; padding:.25rem 0; display:flex; flex-wrap:wrap; gap:.5rem 1rem; }
.nav-primary a{ text-decoration:none; color:var(--or-ink); padding:.5rem .25rem; border-radius:.375rem; }
.nav-primary a:hover, .nav-primary .current-menu-item > a{ color:var(--or-link); }

.header-image img{ display:block; width:100%; height:auto; }

/* Layout */
.layout{ display:grid; grid-template-columns: 1fr; gap:1.5rem; }
.layout.has-left { grid-template-columns: 260px 1fr; }
.layout.has-right { grid-template-columns: 1fr 260px; }
.layout.has-both { grid-template-columns: 260px 1fr 260px; }
.sidebar{ background:#fff; border:1px solid #e8e2d8; border-radius:14px; padding:1rem; }
.content{ min-width:0; }

.post-card{ background:#fff; border:1px solid #e8e2d8; border-radius:14px; overflow:hidden; }
.post-card .entry-header{ padding:1rem 1rem 0; }
.post-card .entry-meta{ color:var(--or-muted); font-size:.9rem; }
.post-card .entry-content{ padding:1rem; }
.post-card .entry-footer{ padding: .5rem 1rem 1rem; color:var(--or-muted); font-size:.9rem; }

a{ color:var(--or-link); }
a:focus-visible{ outline:2px dashed var(--or-gold); outline-offset:2px; }

footer.site-footer{ margin-top:2rem; background:#fff; border-top:4px solid var(--or-gold); }
.footer-widgets{ display:grid; gap:1rem; grid-template-columns: repeat(12, 1fr); padding:1.25rem 0; }
.footer-col-1{ grid-column: span 4; }
.footer-col-2{ grid-column: span 4; }
.footer-col-3{ grid-column: span 4; }
.footer-credit{ border-top:1px solid #eee; color:var(--or-muted); padding: .75rem 0 1.5rem; font-size:.9rem; }

/* Buttons */
button, .button, input[type="submit"]{
  appearance:none; border:none; background:var(--or-ink); color:#fff; padding:.6rem 1rem; border-radius:999px; cursor:pointer;
}
button:hover, .button:hover, input[type="submit"]:hover{ background:var(--or-link); }

/* Widgets & forms */
.widget{ margin:0 0 1rem; }
.widget-title{ font-weight:700; border-bottom:2px solid var(--or-gold); padding-bottom:.25rem; }

input, select, textarea{ width:100%; padding:.6rem .7rem; border:1px solid #ddd6c8; border-radius:.5rem; }

/* Mobile first */
@media (min-width: 768px) {
  .branding{ padding: 1rem 0; }
}

/* RTL support */
html[dir="rtl"] body{ font-family: "Noto Serif Hebrew", "Noto Serif", serif; }
html[dir="rtl"] .nav-primary ul{ justify-content:flex-end; }
html[dir="rtl"] .layout.has-left { grid-template-columns: 1fr 260px; }
html[dir="rtl"] .layout.has-right { grid-template-columns: 260px 1fr; }

/* Customizer injected CSS placeholder; do not remove. */
:root{
  /* or-customizer-placeholders */
}