/* ============================================================
   Credova.ro — antet, subsol, bara de cookie
   Antetul este alb. La derulare capata doar o linie de 1 px.
   Logo-ul sta direct pe alb, fara chenar, fara cerc, fara umbra.
   ============================================================ */

/* ── Antet ──────────────────────────────────────────── */

.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: var(--color-bg);
  border-bottom: 1px solid transparent;
  transition: border-color var(--dur) var(--ease);
}
.site-header.is-stuck { border-bottom-color: var(--color-line); }

.site-header__inner {
  display: flex;
  align-items: center;
  gap: var(--space-6);
  min-height: 76px;
  padding-block: var(--space-3);
}

/* Zona de protectie in jurul logo-ului este egala cu inaltimea literei C. */
.site-header__logo {
  display: block;
  flex: none;
  padding: 6px 0;
  text-decoration: none;
  border-radius: 2px;
}
.site-header__logo img {
  display: block;
  width: auto;
  height: 40px;
}

.site-nav {
  display: flex;
  align-items: center;
  gap: var(--space-6);
  margin-left: auto;
}
.site-nav__link {
  color: var(--color-text);
  text-decoration: none;
  font-size: 16px;
  font-weight: 400;
  padding: 4px 0;
  border-bottom: 1px solid transparent;
  white-space: nowrap;
}
.site-nav__link:hover { color: var(--color-primary); border-bottom-color: var(--color-line-strong); }
.site-nav__link.is-current { color: var(--color-text-strong); font-weight: 500; border-bottom-color: var(--color-primary); }

.site-header__action { flex: none; }
.site-header__action .btn { min-height: 44px; padding: 10px 20px; }

.site-header__toggle {
  display: none;
  margin-left: auto;
  width: 44px; height: 44px;
  align-items: center;
  justify-content: center;
  background: none;
  border: 1px solid var(--color-line);
  border-radius: var(--radius-field);
  color: var(--color-text);
  cursor: pointer;
}

.mobile-nav {
  border-top: 1px solid var(--color-line);
  padding-block: var(--space-4) var(--space-5);
}
.mobile-nav__link {
  display: block;
  padding: 14px 0;
  color: var(--color-text);
  text-decoration: none;
  font-size: var(--text-md);
  border-bottom: 1px solid var(--color-line);
}
.mobile-nav .btn { margin-top: var(--space-4); }

@media (max-width: 940px) {
  .site-nav, .site-header__action { display: none; }
  .site-header__toggle { display: inline-flex; }
  .site-header__inner { min-height: 64px; gap: var(--space-4); }
  .site-header__logo img { height: 34px; }
}

/* ── Subsol. Tot alb, delimitat printr-o singura linie. ── */

.site-footer { margin-top: var(--section-y); }
.site-footer__inner { padding-block: var(--space-8) var(--space-6); }

.site-footer__brand { margin-bottom: var(--space-7); max-width: 42ch; }
.site-footer__logo { height: 36px; width: auto; display: block; margin-bottom: var(--space-4); }

.site-footer__cols {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--space-6);
  padding-bottom: var(--space-7);
}
.site-footer__title {
  font-size: var(--text-sm);
  font-weight: 600;
  color: var(--color-text-strong);
  margin: 0 0 var(--space-3);
}
.site-footer__list { list-style: none; margin: 0; padding: 0; }
.site-footer__list li { margin-bottom: var(--space-2); }
.site-footer__list a {
  color: var(--color-text-secondary);
  text-decoration: none;
  font-size: var(--text-sm);
}
.site-footer__list a:hover { color: var(--color-primary); text-decoration: underline; }

.site-footer__legal {
  border-top: 1px solid var(--color-line);
  padding-top: var(--space-5);
  display: grid;
  gap: var(--space-3);
}
.site-footer__legal p { max-width: 80ch; color: var(--color-text-secondary); }

.site-footer__bottom {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: var(--space-3);
  border-top: 1px solid var(--color-line);
  margin-top: var(--space-5);
  padding-top: var(--space-5);
}
.site-footer__bottom p { margin: 0; }
.site-footer__bottom a { color: var(--color-text-secondary); }

@media (max-width: 720px) {
  .site-footer__cols { grid-template-columns: 1fr; gap: var(--space-5); }
}

/* ── Bara de cookie ──────────────────────────────────
   Sta peste tot ce e lipit de marginea de jos, asistentul inclusiv. Altfel, pe
   telefon, butonul asistentului acopera butonul de aici si omul apasa degeaba.
   Iar pe telefoanele cu bara de gesturi, continutul urca deasupra ei: un buton
   care cade sub bara aceea nu poate fi apasat deloc. */

.cookie-bar {
  position: fixed;
  left: 0; right: 0; bottom: 0;
  z-index: 90;
  background: var(--color-bg);
  border-top: 1px solid var(--color-line);
  box-shadow: 0 -1px 2px rgba(27, 41, 75, 0.06);
  padding-bottom: env(safe-area-inset-bottom, 0px);
}
.cookie-bar__inner {
  max-width: var(--container);
  margin-inline: auto;
  padding: var(--space-4) var(--gutter);
  display: flex;
  align-items: center;
  gap: var(--space-5);
}
.cookie-bar__text { flex: 1; }
.cookie-bar__text p { max-width: 80ch; margin: 0; }
.cookie-bar__actions { display: flex; gap: var(--space-3); flex: none; }
.cookie-bar__actions .btn { min-height: 44px; padding: 10px 20px; }

@media (max-width: 720px) {
  .cookie-bar__inner { flex-direction: column; align-items: stretch; gap: var(--space-4); }
  .cookie-bar__actions .btn { flex: 1; }
}

/* Cat timp bara e pe ecran, butonul asistentului si bara de actiune se dau la o
   parte. Un singur lucru de apasat jos, nu trei suprapuse. */
body:has(.cookie-bar:not([hidden])) .assistant__open,
body:has(.cookie-bar:not([hidden])) .action-bar { display: none; }

/* ── Cine sta deasupra cui, jos pe ecran ─────────────
   Trei lucruri se lipesc de marginea de jos: bara de cookie, bara cu „Completează
   cererea" si butonul asistentului. Pe telefon se suprapuneau si apasai altceva
   decat vedeai. Ordinea e acum limpede, iar asistentul se ridica deasupra barei
   de actiune in loc sa o acopere. */

.action-bar { z-index: 80; }

@media (max-width: 620px) {
  body:has(.action-bar.is-shown) .assistant { bottom: 76px; }
}

/* ── Bara de actiune de pe telefon ──────────────────
   Apare numai pe ecrane mici si numai dupa ce simulatorul a iesit din ecran.
   Alba, cu o singura linie deasupra: nu e o banda colorata lipita peste pagina. */

.action-bar {
  position: fixed;
  left: 0; right: 0; bottom: 0;
  z-index: 40;
  background: var(--color-bg);
  border-top: 1px solid var(--color-line);
  padding-bottom: env(safe-area-inset-bottom, 0px);
  transform: translateY(100%);
  transition: transform 220ms var(--ease);
}
.action-bar.is-shown { transform: translateY(0); }
.action-bar__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-4);
  padding: var(--space-3) var(--gutter);
}
.action-bar__text { color: var(--color-text-secondary); }
.action-bar .btn { min-height: 44px; padding: 10px 20px; flex: none; }

@media (min-width: 941px) {
  .action-bar { display: none; }
}
/* Cand bara de cookie e pe ecran, bara de actiune ii sta deasupra. */
.cookie-bar:not([hidden]) ~ .action-bar { display: none; }
