/* Basic theme styles */
:root{
  --bg: #ffffff;
  --text: #111827;
  --muted: #6b7280;
  --card: #f8fafc;
  --accent: #0ea5a4;
  --radius: 12px;
}

body{ font-family: 'Rubik', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial; background:var(--bg); color:var(--text); margin:0; padding:0; }
a{ color:var(--accent); text-decoration:none; }
.site-header{ display:flex; justify-content:space-between; align-items:center; padding:12px 16px; border-bottom:1px solid rgba(0,0,0,0.06); background:var(--card); position:sticky; top:0; z-index:50; }
.site-title{ margin:0; font-size:1rem; font-weight:600; border-radius:var(--radius); padding:6px 8px; }
.site-title a{ color:inherit; }
.site-search { }
.site-search form{ display:flex; align-items:center; gap:6px; }
.site-search input[type="search"]{ padding:6px 8px; border-radius:999px; border:1px solid rgba(0,0,0,0.08); font-size:0.9rem; width:180px; }

/* Layout grid: left 15%, center 70%, right 15% */
.layout-grid{ display:grid; grid-template-columns: 15% 1fr 15%; gap:16px; padding:20px; max-width:1200px; margin:0 auto; box-sizing:border-box; }
.left-ad, .right-ad{ min-width:0; }
.content-area{ width:100%; }

/* Post card */
.post-entry{ background:var(--card); padding:16px; border-radius:var(--radius); box-shadow: 0 1px 2px rgba(0,0,0,0.03); margin-bottom:16px; }
.post-thumbnail img{ width:100%; height:auto; aspect-ratio:2/3; object-fit:cover; border-radius:8px; display:block; margin-bottom:12px; }

/* Ad placeholders */
.ad-placeholder, .in-post-ad, .sticky-ad-content{ background:linear-gradient(90deg,#eef2ff,#fef3c7); border:1px dashed rgba(0,0,0,0.08); padding:12px; border-radius:8px; text-align:center; }

/* Responsive: collapse to single column on small screens */
@media (max-width: 840px){
  .layout-grid{ grid-template-columns: 1fr; padding:12px; }
  .left-ad, .right-ad{ order: 2; }
  .content-area{ order: 1; }
  .site-search input[type="search"]{ width:120px; }
}

/* Dark mode */
body.dark{
  --bg: #0b1020;
  --text: #e6eef7;
  --muted: #94a3b8;
  --card: #0f1724;
  --accent: #60a5fa;
}

/* Sticky footer ad */
.sticky-footer-ad{ position:fixed; left:0; right:0; bottom:0; display:flex; justify-content:center; pointer-events:auto; z-index:9999; }
.sticky-ad-inner{ max-width:1000px; width:calc(100% - 30px); margin:8px; border-radius:10px; padding:10px 12px; display:flex; align-items:center; justify-content:space-between; gap:10px; box-shadow:0 6px 20px rgba(0,0,0,0.12); background:var(--card); }
.sticky-ad-close{ background:transparent; border:none; font-size:20px; cursor:pointer; padding:6px; border-radius:999px; }
