:root{
  color-scheme: light only;
  --orange:#F2703B; --orange-dark:#DE5A26; --cream:#FFF8F3; --ink:#241C18;
  --muted:#7B6F68; --green:#3E7A4C; --star:#F5A524; --borderc:#F0E6DE;
}
body{ font-family:'Inter',sans-serif; color:var(--ink); background:var(--cream); }
h1,h2,h3,.font-display{ font-family:'Poppins',sans-serif; }
a{ text-decoration:none; color:inherit; }

.btn-brand{ background:var(--orange); border-color:var(--orange); color:#fff; font-weight:600; }
.btn-brand:hover{ background:var(--orange-dark); border-color:var(--orange-dark); color:#fff; }
.btn-outline-brand{ background:#fff; border:1px solid var(--borderc); color:var(--ink); font-weight:600; }
.btn-outline-brand:hover{ background:#FAF3EE; }

.site-header{ background:#fff; border-bottom:1px solid var(--borderc); position:sticky; top:0; z-index:50; }
.logo{ font-family:'Poppins',sans-serif; font-weight:800; font-size:22px; color:var(--orange); }
.logo span{ color:var(--green); }
.nav-link-brand{ font-weight:500; font-size:15px; color:var(--muted); }
.nav-link-brand.active,.nav-link-brand:hover{ color:var(--orange); }
.icon-btn{ width:38px; height:38px; border-radius:50%; background:#FAF3EE; border:none; display:flex; align-items:center; justify-content:center; }

.hero{ background:linear-gradient(120deg,#2A1D16,#1B120D); border-radius:24px; overflow:hidden; }
.hero h1{ font-weight:800; }
.badge-brand{ background:var(--green); color:#fff; font-size:13px; font-weight:600; padding:6px 14px; border-radius:20px; }
.search-box{ background:#fff; border-radius:12px; padding:6px; max-width:420px; }
.search-box input{ border:none; outline:none; }
.search-box button{ background:var(--orange); color:#fff; border:none; border-radius:8px; }

.cat-card{ background:#fff; border:1px solid var(--borderc); border-radius:14px; padding:16px; display:flex; align-items:center; gap:14px; }
.cat-icon{ width:44px; height:44px; border-radius:10px; display:flex; align-items:center; justify-content:center; font-size:18px; }

.recipe-card{ background:#fff; border:1px solid var(--borderc); border-radius:16px; overflow:hidden; height:100%; display:flex; flex-direction:column; }
.recipe-img{ position:relative; height:150px; overflow:hidden; }
.recipe-img img{ width:100%; height:100%; object-fit:cover; }
.rating-badge{ position:absolute; top:10px; left:10px; background:rgba(0,0,0,.7); color:#fff; font-size:12px; font-weight:600; padding:4px 8px; border-radius:8px; }
.fav-btn{ position:absolute; top:10px; right:10px; width:30px; height:30px; background:rgba(255,255,255,.9); border-radius:50%; border:none; display:flex; align-items:center; justify-content:center; }
.fav-btn.active i{ color:var(--orange); }
.recipe-body{ padding:14px; display:flex; flex-direction:column; flex:1; }

.tab-brand{ padding:8px 16px; border-radius:20px; font-size:14px; font-weight:600; border:1px solid var(--borderc); background:#fff; color:var(--muted); }
.tab-brand.active{ background:var(--orange); color:#fff; border-color:var(--orange); }

.side-card{ background:#fff; border:1px solid var(--borderc); border-radius:16px; padding:18px; }
.side-thumb{ width:52px; height:52px; min-width:52px; border-radius:10px; object-fit:cover; flex-shrink:0; }

.cta-banner{ background:#FDEEE5; border-radius:20px; }

.ad-slot{ width:100%; }
.ad-placeholder{
  display:flex; align-items:center; justify-content:center;
  background:#FAF3EE; border:1px dashed var(--borderc); border-radius:12px;
  color:var(--muted); font-size:12px; text-transform:uppercase; letter-spacing:.05em;
  width:100%;
}

.site-footer{ background:var(--ink); color:#C9BFB8; }
.site-footer h4{ color:#fff; font-size:15px; }
.site-footer a{ color:#C9BFB8; }

.admin-nav a{ display:block; padding:12px 14px; border-radius:10px; font-weight:600; color:var(--muted); }
.admin-nav a.active,.admin-nav a:hover{ background:#FDEEE5; color:var(--orange); }
.table-recipe-img{ width:40px; height:40px; object-fit:cover; border-radius:8px; }

@media print {
  .site-header, .site-footer, .ad-slot, .ad-placeholder, .no-print { display: none !important; }
  body { background: #fff !important; }
  a[href]::after { content: ""; }
  .container { max-width: 100% !important; }
}
