:root {
  --brand-forest: #145c3c;
  --brand-forest-deep: #0d3f29;
  --brand-accent: #f5821f;
  --brand-ink: #1a1f1c;
  --brand-muted: #6c7570;
  --brand-line: #e4e0d4;
  --brand-band: #f6f4ec;
}

body { color: var(--brand-ink); background: #fff; }

.bg-brand { background-color: var(--brand-forest-deep) !important; }
.btn-accent { background-color: var(--brand-accent); color: #1a1005; border: none; font-weight: 600; }
.btn-accent:hover { background-color: #ff9a3d; color: #1a1005; }
.btn-brand { background-color: var(--brand-forest); color: #fff; border: none; }
.btn-brand:hover { background-color: var(--brand-forest-deep); color: #fff; }
.bg-accent { background-color: var(--brand-accent) !important; }
.text-brand { color: var(--brand-forest) !important; }

.navbar-brand { letter-spacing: -0.02em; }

.hero-band {
  background: linear-gradient(135deg, var(--brand-forest-deep), var(--brand-forest));
  color: #fff;
  padding: 56px 0;
}

.product-card { border: 1px solid var(--brand-line); border-radius: 14px; overflow: hidden; transition: box-shadow .2s ease, transform .2s ease; height: 100%; }
.product-card:hover { box-shadow: 0 12px 24px -12px rgba(0,0,0,.18); transform: translateY(-2px); }
.product-card img { aspect-ratio: 1/1; object-fit: cover; width: 100%; background: var(--brand-band); }
.product-card .card-body { display: flex; flex-direction: column; }
.product-price { font-weight: 700; color: var(--brand-forest); font-size: 1.1rem; }
.badge-fulfillment { font-size: 0.7rem; letter-spacing: .04em; }

.section-title { font-weight: 700; border-left: 5px solid var(--brand-accent); padding-left: 12px; margin-bottom: 24px; }

.dashboard-sidebar { background: var(--brand-band); border-right: 1px solid var(--brand-line); min-height: calc(100vh - 56px); }
.dashboard-sidebar .nav-link { color: var(--brand-ink); border-radius: 8px; padding: 10px 14px; font-size: .92rem; }
.dashboard-sidebar .nav-link.active { background: var(--brand-forest); color: #fff; }
.dashboard-sidebar .nav-link:hover:not(.active) { background: #fff; }

.stat-card { border: 1px solid var(--brand-line); border-radius: 12px; padding: 18px 20px; background: #fff; }
.stat-card .value { font-size: 1.6rem; font-weight: 800; color: var(--brand-forest); }
.stat-card .label { font-size: .75rem; text-transform: uppercase; letter-spacing: .06em; color: var(--brand-muted); }

.table-marketplace thead { background: var(--brand-band); }

.shipment-tracker { border-left: 3px solid var(--brand-line); padding-left: 18px; }
.shipment-tracker .event { position: relative; padding-bottom: 18px; }
.shipment-tracker .event::before { content: ''; position: absolute; left: -23px; top: 4px; width: 10px; height: 10px; border-radius: 50%; background: var(--brand-forest); }

footer a:hover { color: var(--brand-accent) !important; }
