/* BiryaniAgent styles (brand: saffron/red/green/white) */
:root {
  --saffron: #FFA000;
  --red: #D32F2F;
  --green: #2E7D32;
  --ink: #101828;
  --muted: #667085;
  --bg: #FFFDF6;
}

* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; color: var(--ink); background: var(--bg); }
a { color: var(--red); text-decoration: none; }
a:hover { text-decoration: underline; }
.container { width: min(1100px, 94vw); margin: 0 auto; }

.site-header { position: sticky; top: 0; backdrop-filter: blur(6px); background: color-mix(in srgb, var(--bg) 85%, white); border-bottom: 1px solid #eee; z-index: 10; }
.header-inner { display: flex; align-items: center; justify-content: space-between; padding: 12px 0; gap: 16px; }
.brand { display: flex; align-items: center; gap: 10px; }
.brand h1 { font-size: 20px; margin: 0; }
.tagline { color: var(--muted); margin: 0; font-size: 12px; }
.top-nav a { margin-left: 16px; font-weight: 600; color: var(--ink); }
.top-nav a:hover { color: var(--red); }

.hero { background: linear-gradient(120deg, color-mix(in srgb, var(--saffron) 15%, white), transparent 60%), url('data:image/svg+xml;utf8,<svg xmlns=%22http://www.w3.org/2000/svg%22 width=%221200%22 height=%22600%22><defs><linearGradient id=%22g%22 x1=%220%22 y1=%220%22 x2=%221%22 y2=%221%22><stop stop-color=%22%23FFA000%22 offset=%220%25%22/><stop stop-color=%22%23FFFFFF%22 offset=%22100%25%22/></linearGradient></defs><rect width=%221200%22 height=%22600%22 fill=%22url(%23g)%22/></svg>') center/cover no-repeat; }
.hero-inner { display: grid; grid-template-columns: 1.1fr 0.9fr; align-items: center; gap: 24px; padding: 48px 0; }
.hero-copy h2 { font-size: 34px; margin: 0 0 8px 0; }
.hero-copy p { color: var(--muted); margin-top: 0; }
.search-row, .hierarchy-row { display: grid; grid-template-columns: 1fr auto auto; gap: 12px; margin-top: 16px; }
.hierarchy-row { grid-template-columns: repeat(4, 1fr); }
.input { padding: 12px 12px; border: 1px solid #ddd; border-radius: 12px; width: 100%; }
.input:focus { outline: 2px solid var(--saffron); border-color: var(--saffron); }
.btn { padding: 12px 14px; border-radius: 12px; border: 1px solid transparent; cursor: pointer; font-weight: 600; }
.btn.primary { background: var(--red); color: white; }
.btn.primary:hover { filter: brightness(0.95); }
.btn.subtle { background: white; border-color: #ddd; }
.btn.subtle:hover { border-color: var(--ink); }
.checkbox { display: inline-flex; align-items: center; gap: 8px; }

.section { padding: 28px 0; }
.section.alt { background: white; border-top: 1px solid #eee; border-bottom: 1px solid #eee; }
.section-title { font-size: 22px; margin: 0 0 12px 0; }
.filters-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; align-items: center; }
@media (max-width: 880px) {
  .hero-inner { grid-template-columns: 1fr; }
  .filters-grid { grid-template-columns: repeat(2, 1fr); }
  .search-row { grid-template-columns: 1fr; }
  .hierarchy-row { grid-template-columns: repeat(2, 1fr); }
}

.card { background: white; border: 1px solid #eee; border-radius: 16px; padding: 14px; box-shadow: 0 4px 12px rgba(0,0,0,0.06); }
.map-card { min-height: 260px; display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 8px; }
.map-placeholder { width: 100%; height: 200px; background: repeating-linear-gradient(45deg, #f6f6f6, #f6f6f6 10px, #efefef 10px, #efefef 20px); border-radius: 12px; display: grid; place-items: center; color: var(--muted); font-weight: 600; }

.vendors-head { display: flex; justify-content: space-between; align-items: baseline; }
.vendor-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
@media (max-width: 1000px) { .vendor-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 640px) { .vendor-grid { grid-template-columns: 1fr; } }

.vendor-card { display: grid; grid-template-columns: 120px 1fr; gap: 12px; }
.vendor-card img { width: 120px; height: 90px; object-fit: cover; border-radius: 10px; }
.vendor-meta { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.badge { display:inline-block; padding: 2px 8px; border-radius: 999px; font-size: 12px; font-weight: 700; }
.badge.veg { background: color-mix(in srgb, var(--green) 15%, white); color: var(--green); }
.badge.nonveg { background: color-mix(in srgb, var(--red) 15%, white); color: var(--red); }
.badge.halal { background: #E6F4EA; color: #0F8B3F; }
.badge.open { background: #E8F4FF; color: #1769AA; }
.badge.closed { background: #FFF0E6; color: #D66000; }

.price { font-weight: 700; }
.rating { font-weight: 700; }
.muted { color: var(--muted); }

.site-footer { background: #0f172a; color: #b6c0d1; padding: 28px 0; }
.footer-grid { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.footer-links a { color: #dbe4f3; margin-left: 12px; }
.logo { display:block; }
