:root {
  --market-ink: #142117;
  --market-muted: #5f6d61;
  --market-paper: #f5f8f1;
  --market-card: #ffffff;
  --market-line: #d7e3d0;
  --market-green: #236b3b;
  --market-leaf: #55a35f;
  --market-earth: #c47d45;
  --market-sun: #e4b849;
  --radius: 8px;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
body { margin: 0; background: var(--market-paper); color: var(--market-ink); line-height: 1.6; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }

.market-header {
  position: sticky; top: 0; z-index: 20;
  display: flex; justify-content: space-between; align-items: center; gap: 18px;
  padding: 14px 5vw; border-bottom: 1px solid var(--market-line);
  background: rgba(245, 248, 241, 0.94); backdrop-filter: blur(16px);
}
.market-brand { display: flex; align-items: center; gap: 12px; font-weight: 900; }
.market-brand span { display: grid; place-items: center; width: 46px; height: 46px; border-radius: var(--radius); color: #fff; background: var(--market-green); }
.market-nav { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 6px; }
.market-nav a { padding: 8px 10px; border-radius: var(--radius); color: var(--market-muted); font-weight: 800; font-size: .92rem; }
.market-nav a.active, .market-nav a:hover { color: #fff; background: var(--market-green); }

.market-main { width: min(1180px, calc(100% - 10vw)); margin: 0 auto; }
.market-hero { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, .9fr); gap: 42px; align-items: center; padding: 64px 0 46px; }
.kicker { margin: 0 0 10px; color: var(--market-green); font-weight: 900; text-transform: uppercase; }
.market-hero h1 { margin: 0; font-size: clamp(2.7rem, 6vw, 4.8rem); line-height: 1; }
.market-hero p, .market-card p { color: var(--market-muted); }
.market-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.market-button { display: inline-flex; justify-content: center; align-items: center; min-height: 46px; padding: 11px 16px; border: 1px solid var(--market-line); border-radius: var(--radius); background: var(--market-card); font-weight: 900; cursor: pointer; }
.market-button.primary { color: #fff; border-color: var(--market-green); background: var(--market-green); }

.market-panel, .market-card, .market-form { padding: 22px; border: 1px solid var(--market-line); border-radius: var(--radius); background: var(--market-card); box-shadow: 0 16px 40px rgba(35, 107, 59, .08); }
.market-section { padding: 42px 0; border-top: 1px solid var(--market-line); }
.market-section h2 { margin: 0 0 20px; font-size: clamp(1.9rem, 4vw, 2.7rem); line-height: 1.08; }
.grid-2, .grid-3, .grid-4 { display: grid; gap: 18px; }
.grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.metric strong { display: block; font-size: 2rem; line-height: 1; }
.pill-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.pill-row span, .tag { display: inline-flex; width: fit-content; padding: 6px 9px; border-radius: 999px; color: #fff; background: var(--market-green); font-size: .78rem; font-weight: 900; }
.tag.sun { background: var(--market-sun); color: var(--market-ink); }
.tag.earth { background: var(--market-earth); }

.listing-grid { display: grid; gap: 14px; }
.listing-card { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 14px; padding: 18px; border: 1px solid var(--market-line); border-radius: var(--radius); background: #fff; }
.listing-card p { margin: 6px 0; color: var(--market-muted); }
.filter-bar { display: grid; grid-template-columns: minmax(0, 1.4fr) repeat(2, minmax(140px, .6fr)); gap: 12px; margin-bottom: 18px; }
input, select, textarea { width: 100%; min-height: 44px; padding: 10px 12px; border: 1px solid var(--market-line); border-radius: var(--radius); background: #fff; }
textarea { min-height: 112px; resize: vertical; }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.form-grid label, .full-row { display: grid; gap: 7px; }
.full-row { grid-column: 1 / -1; }
.form-status { min-height: 24px; margin-top: 12px; color: var(--market-green); font-weight: 900; }
.market-footer { padding: 30px 5vw; color: #fff; background: var(--market-green); }

@media (max-width: 900px) {
  .market-header, .market-footer { align-items: flex-start; flex-direction: column; }
  .market-main { width: calc(100% - 40px); }
  .market-hero, .grid-2, .grid-3, .grid-4, .filter-bar, .form-grid, .listing-card { grid-template-columns: 1fr; }
  .market-actions { display: grid; }
  .market-button { width: 100%; }
}
