/* ── Prestana – Vecinos que comparten ────────────────────────────────────────── */

:root {
  --presto-dark:   #1a3c2e;
  --presto-mid:    #2d6a4f;
  --presto-light:  #52b788;
  --presto-pale:   #d8f3dc;
  --presto-bg:     #f2f7f4;
  --presto-card:   #ffffff;
  --presto-shadow: rgba(29, 64, 46, 0.10);
}

/* ── Layout ────────────────────────────────────────────────────────────────── */
body {
  background-color: var(--presto-bg);
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
}
.footer { margin-top: auto; }

/* ── Navbar ────────────────────────────────────────────────────────────────── */
.navbar-presto {
  background-color: var(--presto-dark);
}
.navbar-presto .navbar-brand {
  color: #fff;
  letter-spacing: -0.5px;
  font-size: 1.35rem;
}
.navbar-presto .nav-link {
  color: rgba(255,255,255,0.82);
  border-radius: 8px;
  padding: 0.4rem 0.75rem;
  transition: background 0.15s, color 0.15s;
}
.navbar-presto .nav-link:hover {
  color: #fff;
  background: rgba(255,255,255,0.12);
}
.navbar-presto .nav-link.active { color: #fff; }

/* ── Footer ────────────────────────────────────────────────────────────────── */
.footer-presto {
  background-color: var(--presto-dark);
}

/* ── Override Bootstrap "warning" → Prestana green ───────────────────────────── */
.btn-warning {
  --bs-btn-color:              #fff;
  --bs-btn-bg:                 var(--presto-mid);
  --bs-btn-border-color:       var(--presto-mid);
  --bs-btn-hover-color:        #fff;
  --bs-btn-hover-bg:           var(--presto-dark);
  --bs-btn-hover-border-color: var(--presto-dark);
  --bs-btn-active-color:       #fff;
  --bs-btn-active-bg:          var(--presto-dark);
  --bs-btn-focus-shadow-rgb:   45, 106, 79;
}
.btn-outline-warning {
  --bs-btn-color:              var(--presto-mid);
  --bs-btn-border-color:       var(--presto-mid);
  --bs-btn-hover-color:        #fff;
  --bs-btn-hover-bg:           var(--presto-mid);
  --bs-btn-hover-border-color: var(--presto-mid);
}
.bg-warning          { background-color: var(--presto-mid)  !important; }
.text-warning        { color:            var(--presto-mid)  !important; }
.border-warning      { border-color:     var(--presto-mid)  !important; }
.badge.bg-warning    { color: #fff; }

.alert-warning {
  --bs-alert-color:        #0f2d1c;
  --bs-alert-bg:           #e6f4ec;
  --bs-alert-border-color: #b6ddc5;
}
.alert-warning .alert-link { color: var(--presto-dark); }

/* ── Form focus ────────────────────────────────────────────────────────────── */
.form-control:focus,
.form-select:focus {
  border-color: var(--presto-light);
  box-shadow: 0 0 0 0.2rem rgba(82, 183, 136, 0.25);
}
.form-check-input:checked {
  background-color: var(--presto-mid);
  border-color:     var(--presto-mid);
}

/* ── Cards ─────────────────────────────────────────────────────────────────── */
.card {
  border-radius: 14px;
  background: var(--presto-card);
}
.shadow-sm {
  box-shadow: 0 2px 12px var(--presto-shadow) !important;
}

/* ── Item cards ─────────────────────────────────────────────────────────────── */
.item-thumb  { height: 200px; object-fit: cover; }
.item-no-img { height: 200px; }

.item-card {
  transition: transform 0.15s ease, box-shadow 0.15s ease;
  cursor: pointer;
}
.item-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 28px rgba(29, 64, 46, 0.16) !important;
}

/* ── Community pills ────────────────────────────────────────────────────────── */
.badge.bg-warning.text-dark { color: #fff !important; }

/* ── Section headers ────────────────────────────────────────────────────────── */
.page-header {
  padding: 1.25rem 1.5rem;
  background: linear-gradient(135deg, var(--presto-dark) 0%, var(--presto-mid) 100%);
  border-radius: 14px;
  color: #fff;
  margin-bottom: 1.5rem;
}
.page-header h1 { color: #fff; margin-bottom: 0.2rem; }
.page-header small { color: rgba(255,255,255,0.72); }

/* ── Nav tabs ───────────────────────────────────────────────────────────────── */
.nav-tabs .nav-link {
  color: var(--presto-mid);
  border-radius: 10px 10px 0 0;
}
.nav-tabs .nav-link.active {
  color: var(--presto-dark);
  font-weight: 600;
  border-bottom-color: #fff;
}
.nav-tabs .nav-link:hover:not(.active) {
  background: var(--presto-pale);
}

/* ── Star rating widget ─────────────────────────────────────────────────────── */
.star-rating {
  display: inline-flex;
  flex-direction: row-reverse;
  gap: 2px;
}
.star-rating input[type="radio"] { display: none; }
.star-rating label {
  font-size: 2.2rem;
  color: #d0d0d0;
  cursor: pointer;
  line-height: 1;
  transition: color 0.1s;
}
.star-rating label:hover,
.star-rating label:hover ~ label,
.star-rating input:checked ~ label {
  color: #f4a228;
}

/* Stars display (read-only) – golden */
.stars-display { color: #f4a228; font-size: 0.9rem; }

/* ── Status badges ──────────────────────────────────────────────────────────── */
.badge-pending  { background-color: #6c757d; color:#fff; }
.badge-accepted { background-color: var(--presto-mid); color:#fff; }
.badge-returned { background-color: #0d6efd; color:#fff; }
.badge-declined { background-color: #dc3545; color:#fff; }

/* ── Admin badge ────────────────────────────────────────────────────────────── */
.badge-admin {
  background-color: var(--presto-dark);
  color: var(--presto-pale);
  font-size: .65rem;
  letter-spacing: .04em;
}

/* ── Danger zone ────────────────────────────────────────────────────────────── */
.danger-zone {
  border: 1px solid #f8d7da;
  border-radius: 14px;
  background: #fff5f5;
  padding: 1.25rem 1.5rem;
}

/* ── Leaf accent on cards ───────────────────────────────────────────────────── */
.card.is-mine {
  border-left: 4px solid var(--presto-light) !important;
}

/* ── Responsive tweaks ──────────────────────────────────────────────────────── */
@media (max-width: 576px) {
  .page-header { padding: .9rem 1rem; }
}
