/* IA 20-10-2025 */
.selected-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: -12px 0 20px 0;
    padding-left: 5px;
}

.tag-form {
    display: inline-block;
    margin: 0;
}

.tag-badge {
    display: inline-flex;
    align-items: center;
    background: white;
    border: 2px solid #ff9100;
    color: #ff9100;
    border-radius: 25px;
    padding: 8px 15px;
}

.remove-tag {
    margin-left: 8px;
    color: white;
    background: #ff9100;
    border-radius: 50%;
    cursor: pointer;
    border: 2px solid #ff9100; 
}

.remove-tag:hover {
    background: #ff5500;
    border-color: #ff5500;
}
/* IA 20-10-2025 */

/* IA 6-10-2025 */

.image-popup-container {
	max-width: 90vw;
	max-height: 90vh;
	overflow: auto;
}

.image-popup-content {
	text-align: center;
	padding: 20px;
}

.main-image-wrapper {
	position: relative;
	display: inline-block;
	margin-bottom: 20px;
}

.thumbnail-wrapper {
	position: relative;
	margin: 20px auto;
	max-width: 600px;
}
/* IA 8-10-2025 gap weggehaald */
.thumbnail-container {
	display: flex;
	overflow-x: auto;
	padding: 10px;
	scroll-behavior: smooth;
	border: 1px solid #ddd;
	border-radius: 8px;
	background-color: #f9f9f9;
}
/* IA 8-10-2025 */



.thumbnail-container::-webkit-scrollbar {
	height: 8px;
}

.thumbnail-container::-webkit-scrollbar-thumb {
	background: #007bff;
	border-radius: 6px;
}

/* IA 8-10-2025 */
.thumbnail-container img {
	width: clamp(90px, 9vw, 100px);
	aspect-ratio: 1/1;
	object-fit: cover;
	border-radius: 10px;
	cursor: pointer;
	border: 2px solid transparent;
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow
		0.25s ease;
	will-change: transform;
}
/* IA 8-10-2025 */
.thumbnail-container img:hover {
	transform: scale(1.05);
	border-color: #007bff;
}

.thumbnail-container img.active {
	border-color: #007bff !important;
	transform: scale(1.1);
}

.arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	font-size: 20px;
	font-weight: bold;
	background: rgba(0, 0, 0, 0.6);
	color: #fff;
	border-radius: 50%;
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	z-index: 2;
	user-select: none;
	transition: background 0.2s ease;
}

.arrow:hover {
	background: rgba(0, 0, 0, 0.8);
}

.arrow-left {
	left: -40px;
}

.arrow-right {
	right: -40px;
}

.image-wrapper {
	position: relative;
	display: inline-block;
}

#bigPicture .waarde-overlay {
	position: absolute;
	top: 8px;
	right: 30px;
	border-radius: 50%;
	width: 36px;
	height: 36px;
	text-align: center;
	pointer-events: none;
}

.extraImages {
	position: relative;
	display: inline-block;
}

.extraImages-wrapper {
	position: relative;
	max-width: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	justify-content: center;
}

.extraImages img {
	width: clamp(90px, 9vw, 100px);
	aspect-ratio: 1/1;
	object-fit: cover;
	border-radius: 6px;
	cursor: pointer;
	border: 2px solid transparent;
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow
		0.25s ease;
	will-change: transform;
}

.extraImages img:hover {
	transform: scale(1.01);
	border-color: #007bff;
	box-shadow: 0 2px 12px rgba(0, 123, 255, 0.3);
}

.extraImages img.active {
	border-color: #007bff !important;
	transform: scale(1.1);
	box-shadow: 0 6px 18px rgba(0, 123, 255, 0.4);
}

.extraImages .waarde-overlay {
	position: absolute;
	top: 1px;
	right: 1px;
	border-radius: 50%;
	width: 36px;
	height: 36px;
	text-align: center;
	pointer-events: none; /* Voorkom dat overlay hover triggert */
}

body {
	background: linear-gradient(to right, #c2e76b, #59611d);
	padding: 0;
	margin: 0;
	height: 100%;
	background-attachment: fixed;
	background-repeat: no-repeat;
	background-position-x: 50%;
	background-position-y: 50%;
	background-size: cover;
	background-origin: padding-box;
	background-clip: border-box;
	color: #55565A;
}

.searchModal {
	z-index: 9999999;
	background-color: yellow;
}

.mms-navbar {
	list-style-type: none;
	margin: 0;
	padding: 0;
	overflow: hidden
}

.mms-navbar li {
	float: left
}

.mms-navbar li a, .mms-navitem, .mms-navbar li .mms-btn, .mms-navbar li .mms-input
	{
	display: block;
	padding: 8px 16px
}

.mms-navbar li .mms-btn, .mms-navbar li .mms-input {
	border: none;
	outline: none;
	width: 100%
}

.mms-navbar li a:hover {
	color: #000;
	background-color: #ccc
}

.mms-navbar .mms-dropdown-hover, .mms-navbar .mms-dropdown-click {
	position: static
}

.mms-navbar .mms-dropdown-hover:hover, .mms-navbar .mms-dropdown-hover:first-child,
	.mms-navbar .mms-dropdown-click:hover {
	background-color: #ccc;
	color: #000
}

.mms-navbar a, .mms-topnav a, .mms-sidenav a, .mms-dropdown-content a,
	.mms-accordion-content a, .mms-dropnav a, .mms-navblock a {
	text-decoration: none !important
}

.mms-navbar .mms-opennav.mms-right {
	float: right !important
}

.mms-topnav {
	padding: 8px 8px
}

.mms-navblock .mms-dropdown-hover:hover, .mms-navblock .mms-dropdown-hover:first-child,
	.mms-navblock .mms-dropdown-click:hover {
	background-color: #ccc;
	color: #000
}

.mms-navblock .mms-dropdown-hover, .mms-navblock .mms-dropdown-click {
	width: 100%
}

.mms-navblock .mms-dropdown-hover .mms-dropdown-content, .mms-navblock .mms-dropdown-click .mms-dropdown-content
	{
	min-width: 100%
}

.mms-topnav a {
	padding: 0 8px;
	border-bottom: 3px solid transparent;
	-webkit-transition: border-bottom .25s;
	transition: border-bottom .25s
}

.mms-topnav a:hover {
	border-bottom: 3px solid #fff
}

.mms-topnav .mms-dropdown-hover a {
	border-bottom: 0
}

.mms-opennav, .mms-closenav {
	color: inherit
}

.mms-opennav:hover, .mms-closenav:hover {
	cursor: pointer;
	opacity: 0.8
}

.mms-bottomleft {
	position: fixed;
	left: 0;
	bottom: 0
}

.mms-bottomright {
	position: fixed;
	right: 0;
	bottom: 0
}

/*TH 20-10-2025*/
.afbeeldingContainer {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(275px, 1fr));
    gap: 15px;
    justify-items: center;
    justify-content: center;
    padding-left: 10px;
}
/*TH 20-10-2025*/

.imageMiniContainer {
	background: white;
	border-radius: 15px;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
	padding: 15px;
	display: flex;
	flex-direction: column;
	gap: 10px;
	transition: transform 0.2s ease;
	max-width: 300px;
}

.imageMiniContainer {
	transform: translateY(-5px);
}

.imageMiniContainer h1 {
	font-size: 1.2rem;
	margin: 0;
}

.imageMiniContainer p {
	color: #555;
	font-size: 0.95rem;
	margin: 0;
}

.imageSmall img {
	max-height: 16px;
	max-width: 16px;
}

.image-wrapper {
	position: relative;
	display: inline-block;
}

.image-wrapper img {
	width: 100%;
	height: 175px;
	object-fit: cover;
	border-radius: 8px;
}

.waarde-overlay {
	position: absolute;
	top: 8px;
	right: 8px;
	border-radius: 50%;
	width: 36px;
	height: 36px;
	text-align: center;
}

.waarde-overlay img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 50%;
}

.tag-container {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
}

/* 
   Search Bar NK20251014
 */
.search-section {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 15px;
  margin: 40px auto;
  padding: 0 20px;
  flex-wrap: wrap;
}

.filter-button button {
  background: white;
  border: 2px solid #ff9100;
  color: #ff9100;
  border-radius: 25px;
  padding: 10px 20px;
  cursor: pointer;
  font-weight: 500;
  transition: all 0.2s;
}

.filter-button button:hover {
  background: #ff9100;
  color: white;
}

.search-bar {
  display: flex;
  align-items: center;
  background: white;
  border-radius: 30px;
  padding: 5px 10px 5px 20px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
  width: 600px;
}

.search-bar input {
  flex: 1;
  border: none;
  outline: none;
  font-size: 1rem;
  padding: 10px;
}
/*TH 24-10-2025*/
.search-bar button {
  border: 2px solid #ff9100;
  padding: 5px 7px;
  border-radius: 25px;
  cursor: pointer;
  background: white;
  font-size: 1rem;
}
/*TH 24-10-2025*/


.receptenInfo {
    border: 2px solid #ff9100;
    background: white;
    border-radius: 25px;
    padding: 10px 20px;
    cursor: pointer;
    font-weight: 500;
    transition: all 0.2s;
    position: relative;
}



/* Verberg dropdown standaard */
.receptenInfo .section-dropdown {
    display: none;
    position: absolute;
    background: white;
    border: 2px solid #ff9100;
    border-radius: 10px;
    padding: 10px;
    margin-top: 10px;
    z-index: 1000;
    min-width: 150px;
}

/* Toon dropdown wanneer checkbox checked is */
.recepteninfo-dropdown:checked ~ .section-dropdown {
    display: block;
}

/* Styling voor dropdown links */
.receptenInfo .section-dropdown a {
    display: block;
    padding: 8px 12px;
    text-decoration: none;
    color: #333;
    transition: all 0.2s;
}

.receptenInfo .section-dropdown a:hover {
    background: #ff9100;
    color: white;
    border-radius: 5px;
}
/*TH 24-10-2025*/

/* 
   Filter Dropdown 
 */
.filter-container {
  display: none;
  position: fixed; 
  top: 0;
  left: 0;
  width: 350px; 
  height: 100vh; 
  background: white;
  box-shadow: 5px 0 20px rgba(0, 0, 0, 0.15);
  padding: 20px;
  z-index: 1000;
  overflow-y: auto; 
}

.filter-container.active {
  display: block;
}

.filter-close {
  position: absolute;
  top: 15px;
  right: 15px;
  background: none;
  border: none;
  font-size: 1.5rem;
  cursor: pointer;
  color: #333;
  font-weight: bold;
  transition: color 0.2s;
}

.filter-close:hover {
  color: #ff9100;
}

.filter-header {
  font-weight: 600;
  font-size: 1.1rem;
  margin-bottom: -32px;
  color: #333;
}

.filter-section {
  margin-bottom: 12px;
  width: 100%;
}

.accordion {
  display: flex;          
  justify-content: space-between; 
  align-items: center;   
  width: 100%;
  padding: 12px;
  background: #f5f5f5;
  border-radius: 6px;
  cursor: pointer;
  font-weight: 500;
  transition: background 0.2s;
}

.accordion:hover {
  background: #e8e8e8;
}

.panel {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
  padding: 0 5px;
}

.panel.open {
  max-height: 900px;
  padding: 10px 5px;
}

.filter-item {
  display: flex;
  align-items: center;
  padding: 6px 0;
  font-size: 0.9rem;
}

.filter-item img.filter-icon {
  width: 20px;
  height: 20px;
  margin-right: 8px;
}

.filter-item .count {
  margin-left: auto;
  padding: 2px 8px;
  border-radius: 10px;
  font-size: 0.9rem;
  text-align: center;
}

.slider round {
  margin-left: 8px;
  width: 16px;
  height: 16px;
}

.reset-btn,
.save-btn {
  flex: 1;
  padding: 10px;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  font-weight: 500;
}

.reset-btn {
  background: #e0e0e0;
  color: #333;
}

.save-btn {
  background: #ff9100;
  color: white;
}

.dropdown-arrow {
  font-size: 0.7rem;
  opacity: 0.6;
  justify-items: right;
}


/* 
   Header
 */
header {
  background: white;
  padding: 20px 40px 0;
}

.header-top {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  margin-bottom: 0px;
  gap: 20px;
  background: white;
}

.logo-section {
  display: flex;
  align-items: center;
  gap: 12px;
  justify-self: start;
}

.logo-section h1 {
  font-size: 1.2rem;
  color: #333;
  font-weight: 600;
  line-height: 1.2;
  text-align: left;
  margin-left: 5px;
  margin-top: 4px;
}

.logo-section h1 span {
  display: block;
  font-size: 1rem;
  font-weight: 400;
  color: #666;
}

.header-center {
  justify-self: center;
}

.header-center img {
  width: 90px;
  height: 60px;
  display: block;
}

.header-actions {
  justify-self: end;
}

.account-btn {
  display: flex;
  align-items: center;
  gap: 8px;
  background: transparent;
  border: none;
  cursor: pointer;
  transition: opacity 0.2s;
  text-decoration: none;
  color: #333;
  font-weight: 500;
  font-size: 0.85rem;
}

.account-btn:hover {
  opacity: 0.7;
}

.account-btn img {
  width: 22px;
  height: 22px;
  filter: opacity(0.6);
}





/*
Hero / Featured Wrapper NK20251021 
*/

.featured-wrapper {
  position: absolute;
  top: 50%;
  right: 50px;
  transform: translateY(-50%);
  display: flex;
  align-items: stretch;
  background-color: white;
  width: 450px;
  height: 240px;
  border-radius: 12px;
  overflow: hidden;
}



.featured-recipe {
  padding: 20px;  
  width: 240px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: left;
}

.featured-badge {
  background: #fff7af;
  color: black;
  padding: 4px 12px;
  border-radius: 2px 2px 7px;
  font-size: 0.75rem;
  font-weight: 600;
  display: inline-block;
  margin-bottom: 15px;
  width: fit-content;  
  align-self: flex-start;  
  margin-left: -20px;
  margin-top: -11px;
}

.featured-recipeimg {
  padding: 12px;
  width: 240px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: left;
}

.featured-recipeimg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 5px;
}

.featured-recipe h2 {
  font-size: 1.1rem;  
  color: #333;
  margin-bottom: 8px;
  margin-top: 0;
}

.featured-recipe p {
  color: #666;
  font-size: 0.8rem;
  margin-bottom: 10px;
  line-height: 1.3;
}

.featured-recipeA {
  color: #ff9100;
  text-decoration: none;
  font-weight: 500;
  font-size: 0.8rem;
  align-self: flex-end;  
  margin-right: 36px;
}
/*
Hero / Featured Wrapper NK20251021 
*/
/* IA 24-10-2025 */
/* IA 23-10-2025 */
.sec-center {
    position: relative;
    max-width: 7%;
    z-index: 200;
}


/* Dropdown button styling */
.dropdown:checked + label,
.dropdown:not(:checked) + label {
    position: relative;
    font-weight: 500;
    font-size: 16px;
    height: 32px;
    border-radius: 25px;
	width: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: #ff9100;
    cursor: pointer;
    color: #ffffff;
}

.dropdown:checked + label,
.dropdown:not(:checked) + label:hover {
    background-color: #ff8100;
    color: white;
}

/* Blokkeer clicks achter dropdown wanneer open */
.dropdown:checked + label:before {
    position: fixed;
    top: 0;
    left: 0;
    content: '';
    width: 100%;
    height: 100%;
    z-index: -1;
    cursor: auto;
    pointer-events: auto;
}

/* Dropdown menu container */
.section-dropdown {
    position: absolute;
    padding: 5px;
    
    background-color: #ffffff;
    top: 60px;
	left: -118px;
    width: 836%;						
    border-radius: 12px;
    display: block;
    border: 2px solid #ff9100;
    opacity: 0;
    pointer-events: none;
}

.dropdown:checked ~ .section-dropdown {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
}

/* Pijltje boven dropdown */
.section-dropdown:after {
    position: absolute;
    top: -9px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 9px solid transparent;
    border-right: 9px solid transparent;
    border-bottom: 9px solid #ff9100;
    content: '';
    display: block;
    z-index: 2;
}

/* Dropdown links */
.section-dropdown a {
    position: relative;
    color: #333;
    border-radius: 8px;
    padding: 10px 20px;
    margin: 2px 0;
    display: block;
}

.section-dropdown a:hover {
    color: white;
    background-color: #ff9100;
}

/* IA 23-10-2025 */

@media (max-width: 768px) {
	
	/*NK20251024  loading-img*/
    .loading-img {
    max-width: 350px;
    padding-top: 40px;
  }   
  /*NK20251024 */
  
  /*TH 22-10-2025*/
  .thumbnail-container{
	padding: 20px;
	}
	
	.filter-container {
	 width: 100vh;
	 }
	 /*TH 22-10-2025*/
}

/*NK TH 20251024*/
.dropdown-menu {
  position: absolute;
  top: 71%;
  right: 34%;
  background: #fff;
  border: 2px solid #ff9100;
  border-radius: 8px;
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
  display: none;
  padding: 6px 0;
  z-index: 1000;
  min-width: 160px;
}

.dropdown-menu.show,
.dropdown:checked + .for-dropdown + .dropdown-menu {
  display: block;
}

.dropdown-menu a {
    position: relative;
    color: #333;
    border-radius: 8px;
    padding: 10px 20px;
    margin: 2px 0;
    display: block;
}

.dropdown-menu a:hover {
 color: white;
    background-color: #ff9100;
}

/*NK Th 20251024*/

	/*NK20251024 */
@media (max-width: 850px) {
	
  .featured-wrapper {
    display: none;
  }
}
	/*NK20251024 */

/* IA 24-10-2025 */
@media (max-width: 900px) {
	.arrow-right 
	{
	display: none;
	}
	.arrow-left 
	{
	display: none;
	}
}

@media (max-width: 1024px) {
  .filter-container {
    width: 100vw !important;
    height: 100vh !important;
  }
}
/*IA 23-10-2025*/
