/* Sage & Dusty Rose colorway — overrides styles.css and overrides.css
   Soft, contemporary, editorial. Less cowboy, more linen-and-ceramics. */

:root {
  --bg: #e8eae0;            /* very soft sage paper */
  --bg-alt: #d6dccb;        /* deeper sage band */
  --ink: #2f3b30;           /* deep forest */
  --ink-soft: #535c51;
  --ink-muted: #5a6153;
  --rule: #c6cdbe;          /* pale sage divider */
  --accent: #985353;        /* deep dusty rose — AA contrast */
  --accent-soft: #e6c4c4;
  --open: #5e8a5e;
  --closing: #cf9a5e;
  --closed: #9aa099;
  --paper: #f4f3eb;         /* warm cream card */
}

html, body {
  background: var(--bg);
  color: var(--ink);
}

a { color: var(--ink); }
a:hover { color: var(--accent); }

h1, h2, h3, h4 { color: var(--ink); }
p { color: var(--ink-soft); }

/* Header */
header.site {
  background: rgba(232, 234, 224, 0.94);
  border-bottom-color: var(--rule);
}

nav.primary a { color: var(--ink-soft); }
nav.primary a:hover,
nav.primary a.active {
  color: var(--ink);
  border-bottom-color: var(--accent);
}

.live-pill {
  background: var(--paper);
  border-color: var(--rule);
  color: var(--ink-soft);
}

.dot {
  background: var(--open);
  box-shadow: 0 0 0 3px rgba(94, 138, 94, 0.18);
}

.search-btn {
  border-color: var(--rule);
  color: var(--ink-muted);
}

.brand .version-tag {
  background: var(--accent);
  color: var(--paper);
}

/* Sections */
section { border-top-color: var(--rule); }
.section-head .see-all {
  color: var(--accent);
  border-bottom-color: rgba(184, 122, 122, 0.4);
}

.eyebrow { color: var(--ink-muted); }

/* Cards */
.biz-card,
.biz-list-card,
.note-card,
.visit-card,
.trip-card,
.featured-event,
.glance-band {
  background: var(--paper);
  border-color: var(--rule);
}

.biz-card:hover {
  box-shadow: 0 8px 22px rgba(47, 59, 48, 0.1);
}

.biz-card .name,
.biz-list-row .info .name,
.item-row .item-name,
.note-card h3,
.visit-card h3,
.trip-card h4 { color: var(--ink); }

.biz-card .meta,
.biz-list-row .info .meta,
.item-row .item-meta,
.note-card p,
.visit-card p,
.trip-card p,
.note-card .byline { color: var(--ink-muted); }

.biz-list-row { border-bottom-color: var(--rule); }
.biz-list-row:hover { background: rgba(184, 122, 122, 0.04); }

/* Status pills */
.status.open { color: var(--open); }
.status.open .swatch { background: var(--open); }
.status.closing { color: var(--closing); }
.status.closing .swatch { background: var(--closing); }
.status.closed { color: var(--closed); }

/* Filter / category chips */
.filter-bar {
  border-top-color: var(--rule);
  border-bottom-color: var(--rule);
}

.filter-bar .chip {
  background: var(--paper);
  border-color: var(--rule);
  color: var(--ink-soft);
}

.filter-bar .chip.active,
.filter-bar .chip:hover {
  background: var(--ink);
  color: var(--paper);
  border-color: var(--ink);
}

.cat-jump { border-bottom-color: var(--rule); }
.cat-jump a { color: var(--ink-soft); }
.cat-jump a:hover { border-color: var(--rule); color: var(--ink); }

/* Day strip */
.day-strip {
  background: rgba(232, 234, 224, 0.94);
  border-bottom-color: var(--rule);
  backdrop-filter: blur(8px);
}

.day-tab {
  background: var(--paper);
  border-color: var(--rule);
  color: var(--ink);
}

.day-tab:hover { border-color: var(--ink-muted); }

.day-tab.active {
  background: var(--ink);
  color: var(--paper);
  border-color: var(--ink);
}

.day-tab.active .dow { color: rgba(244,243,235,0.7); }
.day-tab.active .count { color: rgba(244,243,235,0.55); }
.day-tab.today .dow { color: var(--accent); }
.day-tab.active.today .dow { color: var(--accent-soft); }

/* Day cards on the hero */
.day-card {
  background: var(--paper);
  border-color: var(--rule);
  color: var(--ink);
}

.day-card:hover {
  border-color: var(--accent);
  box-shadow: 0 10px 22px rgba(47, 59, 48, 0.1);
}

.day-card.today {
  background: var(--ink);
  color: var(--paper);
  border-color: var(--ink);
}

.day-card.today:hover { box-shadow: 0 10px 22px rgba(47, 59, 48, 0.2); }

.day-card .dow { color: var(--ink-muted); }
.day-card.today .dow { color: var(--accent-soft); }
.day-card .stats { color: var(--ink-muted); }
.day-card.today .stats { color: rgba(244,243,235,0.7); }
.day-card .vibe { color: var(--ink-soft); }
.day-card.today .vibe { color: rgba(244,243,235,0.85); }

/* Category section */
.cat-section { border-top-color: var(--rule); }
.cat-section-head .summary { color: var(--ink-muted); }

/* Item rows — pull both the business name (left) and the hours column
   (right) inward from the card edges so the content has real breathing
   room on both sides. Hours also get a defined column + left-aligned
   tab stop so they line up vertically. */
.item-row {
  border-bottom-color: var(--rule);
  padding-left: 48px;
  padding-right: 48px;
  grid-template-columns: 1fr 130px;
  gap: 24px;
}
.item-row .item-right {
  text-align: left;
  padding-left: 0;
}
.item-row .item-hours {
  color: var(--accent);
  font-size: 1rem;
  letter-spacing: 0.02em;
}
.item-row .price {
  color: var(--ink-muted);
  margin-top: 5px;
  font-size: 0.82rem;
}

/* Same treatment for the older list-row pattern (open-now style cards) */
.biz-list-row {
  padding-left: 48px;
  padding-right: 48px;
  grid-template-columns: 1fr 130px;
  gap: 24px;
}
.biz-list-row .right {
  text-align: left;
}
.biz-list-row .right .hours { margin-top: 4px; }

@media (max-width: 600px) {
  .item-row,
  .biz-list-row {
    padding-left: 20px;
    padding-right: 20px;
    grid-template-columns: 1fr 110px;
    gap: 16px;
  }
}

.tag-pill {
  background: rgba(184, 122, 122, 0.1);
  color: var(--accent);
}

/* "Featured today" callout — deep forest with rose accent */
.featured-today {
  background: linear-gradient(135deg, #2f3b30 0%, #3d4d3e 100%);
  color: var(--paper);
}
.featured-today .ft-time { color: var(--accent-soft); }
.featured-today .ft-body h3 { color: var(--paper); }
.featured-today .ft-body p { color: rgba(244,243,235,0.75); }
.featured-today .ft-tag { color: var(--accent-soft); }
.featured-today .btn { background: var(--accent); color: var(--paper); }
.featured-today .btn:hover { background: #854848; color: var(--paper); }

/* Glance band */
.glance-band .stat { border-right-color: var(--rule); }
.glance-band .stat .num { color: var(--ink); }
.glance-band .stat .num .accent { color: var(--accent); }
.glance-band .stat .lbl { color: var(--ink-muted); }

@media (max-width: 700px) {
  .glance-band .stat:nth-child(-n+2) { border-bottom-color: var(--rule); }
}

/* Heads up */
.heads-up {
  background: rgba(207, 154, 94, 0.12);
  border-left-color: var(--closing);
}
.heads-up h4 { color: var(--closing); }
.heads-up ul { color: var(--ink-soft); }

/* Verified meta */
.biz-list-row .info .verified { color: var(--open); }

/* Buttons */
.btn { background: var(--accent); color: var(--paper); }
.btn:hover { background: #854848; color: var(--paper); }

.btn.ghost {
  background: transparent;
  border-color: var(--rule);
  color: var(--ink);
}
.btn.ghost:hover { background: var(--paper); color: var(--ink); }

/* CTA band — deep forest with rose accent */
.cta-band {
  background: linear-gradient(135deg, #2f3b30 0%, #3d4d3e 100%);
  border: 1px solid var(--rule);
  color: var(--paper);
}
.cta-band h2 { color: var(--paper); }
.cta-band p { color: rgba(244,243,235,0.75); }
.cta-band .btn { background: var(--accent); color: var(--paper); }
.cta-band .eyebrow { color: var(--accent-soft) !important; }

/* Footer */
footer.site {
  background: var(--bg-alt);
  border-top-color: var(--rule);
}

.footer-links a { color: var(--ink-soft); }
.footer-links a:hover { color: var(--accent); }
.footer-bottom { border-top-color: var(--rule); color: var(--ink-muted); }

.newsletter input,
.contact-form input,
.contact-form select,
.contact-form textarea {
  background: var(--paper);
  border-color: var(--rule);
  color: var(--ink);
}

.newsletter input::placeholder,
.contact-form input::placeholder,
.contact-form textarea::placeholder { color: var(--ink-muted); }

/* About page principles */
.principle { border-top-color: var(--accent); }
.principle .num { color: var(--accent); }
.principle .text { color: var(--ink); }

/* Day-block titles */
.day-block h3 { color: var(--accent); border-bottom-color: var(--rule); }

/* Featured event copy on calendar */
.featured-event .tag { color: var(--accent); }
.featured-event .body { background: var(--paper); }

/* Essentials list */
.essentials li { color: var(--ink-soft); }
.essentials li::before { color: var(--accent); }

/* Page head */
.page-head .timestamp { color: var(--ink-muted); }
.day-header .day-of-week { color: var(--accent); }
.day-header .day-summary { color: var(--ink-soft); }
.day-header .weather-line { color: var(--ink-muted); }

/* Sub-divider */
.sub-divider { color: var(--ink-muted); }
.sub-divider::before, .sub-divider::after { color: var(--rule); }

/* Prose */
.prose p { color: var(--ink-soft); }

/* Hero photos — soften the warm gradients to harmonize with the cooler sage bg */
.hero-photo {
  filter: saturate(0.78) hue-rotate(-8deg);
  box-shadow: inset 0 0 60px rgba(47, 59, 48, 0.15);
}

/* Note card photos — same softening */
.note-card .photo,
.featured-event .photo,
.visit-card .photo {
  filter: saturate(0.75) hue-rotate(-10deg);
}

/* Background-shifted sections */
section[style*="background: var(--bg-alt)"],
section[style*="background:var(--bg-alt)"] { background: var(--bg-alt) !important; }
