body {
  background-color: #f8f9fa;
  font-family: 'Noto Sans', 'Segoe UI', Arial, sans-serif;
  margin: 0;
  padding: 0;
}

/*
.object-fit-cover {
  object-fit: cover;
  height: 100%;
}

.card:hover {
  transform: scale(1.01);
  transition: 0.2s ease;
  box-shadow: 0 0 12px rgba(0, 0, 0, 0.1);
}*/

.navbar-brand {
  font-weight: 600;
  color: #007bff !important;
  text-decoration: none;
}

.navbar-brand:hover,
.navbar-brand:focus {
  text-decoration: none !important;
}

.navbar-nav .nav-link {
  font-weight: 600;
  text-decoration: none;
}

.navbar-nav .nav-link:hover,
.navbar-nav .nav-link:focus {
  text-decoration: none !important;
  color: #0056b3;
}

.card {
  border-radius: 12px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.08);
  border: none;
}

.btn {
  border-radius: 8px;
}

.btn {
  text-decoration: none !important;
}
.btn:hover, .btn:focus {
  text-decoration: none !important;
}

a {
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
  color: #0056b3;
}

input, textarea, select {
  border-radius: 0 !important;
  border: 1px solid #d1d5db;
  transition: border-color 0.2s ease;
}

input::placeholder, textarea::placeholder {
  color: #9ca3af;
}

.img-avatar {
  width: 32px;
  height: 32px;
  object-fit: cover;
  border-radius: 50%;
  border: 1px solid #ccc;
}

.grid-retete {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 20px;
  max-height: 400px;
  overflow-y: auto;
  padding-right: 10px;
}

.reteta-box {
  background: #fff;
  border-radius: 10px;
  padding: 10px;
  transition: 0.2s;
  box-shadow: 0 1px 5px rgba(0,0,0,0.1);
}

.reteta-box:hover {
  transform: scale(1.02);
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

.reteta-box img {
  width: 100%;
  height: 180px;
  object-fit: cover;
  border-radius: 8px;
}

input:focus, textarea:focus, select:focus {
  outline: none;
  border: 1.5px solid #3b82f6 !important;
  box-shadow: none !important;
}

/* ✅ Indicator parolă corect plasat sub input */
.password-indicator {
  font-size: 0.9rem;
  font-weight: 600;
  margin-top: 4px;
  height: 18px;
  transition: color 0.3s ease;
  user-select: none;
  text-align: left;
  padding-left: 0.25rem;
}

/* Efect vizual stele rating */
#rating-widget .star-icon {
  transition: transform 0.2s ease, color 0.2s ease;
}

#rating-widget .star-icon:hover {
  transform: scale(1.2);
}

.footer-link:hover {
  color: #0d6efd !important; /* Bootstrap primary (albastru) */
}

/* ✅ Breadcrumb modern */
  .recipe-breadcrumb-outer .breadcrumb {
    background: var(--bs-light);
    border: 1px solid var(--bs-border-color);
    border-radius: 1rem;
    padding: .5rem .75rem;
    margin-bottom: 0;
  }
  .recipe-breadcrumb-outer .breadcrumb-item + .breadcrumb-item::before {
    content: "›";
    font-weight: 600;
    color: var(--bs-secondary-color);
  }
  .recipe-breadcrumb-outer .breadcrumb-item a { text-decoration: none; }

/* ✅ Ancore & conținut bogat */
  .anchor-target { scroll-margin-top: 90px; } /* ajustează după înălțimea navbarului */
  .recipe-rich-content ul, .recipe-rich-content ol { margin-bottom: 0.75rem; padding-left: 1.25rem; }
  .recipe-rich-content li { margin-bottom: 0.25rem; }
  .anchor-bar { background: transparent; }

/* ✅ Divider fin între secțiuni */
  .recipe-divider {
    height: 1px;
    background: linear-gradient(90deg, rgba(0,0,0,0), var(--bs-border-color), rgba(0,0,0,0));
    border: 0;
  }
  
  
  
/* === PREVIEW pe ecran — doar rețeta === */
body.recipe-print {
  background: #fff !important;
}

/* ascunde header/footer/nav etc. */
body.recipe-print header,
body.recipe-print footer,
body.recipe-print .navbar,
body.recipe-print .anchor-bar,
body.recipe-print .breadcrumb,
body.recipe-print .ad-container,
body.recipe-print .sidebar,
body.recipe-print .top-banner,
body.recipe-print [data-bs-toggle] {
  display: none !important;
}

/* ascunde ceilalți frați ai containerului cu #recipe-print */
body.recipe-print .container:has(#recipe-print) > *:not(:has(#recipe-print)) {
  display: none !important;
}

/* rețeta stilizată */
body.recipe-print #recipe-print {
  max-width: 850px !important;
  margin: 0 auto !important;
  background: #fff !important;
  box-shadow: none !important;
  font-size: 12.5px;
  line-height: 1.35;
}

/* imagine mai mică */
body.recipe-print #recipe-print img.img-fluid {
  max-height: 80mm !important;
  width: 100% !important;
  height: auto !important;
  object-fit: cover !important;
  border-radius: .5rem !important;
  margin-bottom: .5rem !important;
}

body.recipe-print {
  zoom: 0.80;
}

/* === PRINT real — copiază fix aceleași reguli === */
@media print {
  @page { size: A4 portrait; margin: 5mm 10mm 10mm 10mm; }

  header, footer, .navbar, .anchor-bar, .breadcrumb,
  .ad-container, .sidebar, .top-banner, [data-bs-toggle] {
    display: none !important;
  }

  .container:has(#recipe-print) > *:not(:has(#recipe-print)) {
    display: none !important;
  }

  #recipe-print {
    max-width: 850px !important;
    margin: 0 auto !important;
    background: #fff !important;
    box-shadow: none !important;
    font-size: 12.5px;
    line-height: 1.35;
  }

  #recipe-print img.img-fluid {
    max-height: 80mm !important;
    width: 100% !important;
    height: auto !important;
    object-fit: cover !important;
    border-radius: .5rem !important;
    margin-bottom: .5rem !important;
  }

  body {
    zoom: 0.96;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
    background: #fff !important;
  }
}


/* --- Dropdown sugestii căutare --- */
.search-suggest {
  position: absolute;
  top: calc(100% + 2px);           /* sub input, nu peste */
  left: 0;
  right: 0;
  background: #fff;
  border: 1px solid rgba(0,0,0,.12);
  border-radius: .75rem;
  box-shadow: 0 8px 24px rgba(0,0,0,.08);
  margin: 0;                        /* fără margin-top */
  max-height: 360px;
  overflow-y: auto;
  z-index: 1040;                    /* sub navbar, peste conținut */
}

/* Element listă */
.search-suggest .item {
  display: flex;
  align-items: center;
  gap: .75rem;
  padding: .6rem .75rem;
  text-decoration: none;
  color: inherit;
  transition: background .15s ease;
}

.search-suggest .item:hover,
.search-suggest .item.active {
  background: rgba(13,110,253,.08); /* feel Bootstrap primary-100 */
}

/* Thumbnail */
.search-suggest .thumb {
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  border-radius: .5rem;
  overflow: hidden;
  background: #f5f5f5;
}
.search-suggest .thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

/* Text */
.search-suggest .title {
  font-weight: 600;
  line-height: 1.2;
  color: #222;
}
.search-suggest .meta {
  font-size: .75rem;
  color: #6c757d;
}

/* Chevron */
.search-suggest .chev {
  margin-left: auto;
  opacity: .5;
  font-size: 1rem;
}

.search-suggest mark {
  background: transparent;
  color: inherit;
  font-weight: 700;
}

/* --- Wrapper form search --- */
.search-form {
  position: relative;
}
.search-form .form-control {
  position: relative;
  z-index: 1020; /* input-ul deasupra bordurii dropdown-ului său */
}

/* --- Navbar peste search --- */
.navbar {
  position: relative;
  z-index: 1200;
}
.navbar .dropdown-menu {
  z-index: 1250;
}

/* --- Modal peste toate --- 
.modal,
.modal-backdrop {
  z-index: 1300;
}*/

/* în assets/css/style.css */
.object-fit-cover { object-fit: cover; }
