/* Curry Menu Plugin - v1.6 styles: scoped to .curry-menu-plugin */


.curry-menu-plugin * {
  box-sizing: border-box;
}

.curry-menu-plugin .menu-filter {
   font-family: 'Fjalla One';
  display: flex;
  align-items: center;
  gap: 0;
  width: 100%;
  padding: 10px;
  border: 1px solid #ddd;
  background: #f9f8f5;
  flex-wrap: wrap;
}

.curry-menu-plugin .filter-cell {
  font-family: 'Fjalla One';
  display:flex;
  align-items:center;
  padding: 14px 18px;
  border-right: 1px solid #ddd;
}

.curry-menu-plugin .filter-cell:last-child {
  border-right: none;
}

.curry-menu-plugin .filter-text {
  font-weight: 600;
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 10px 20px;
  color: #3a4155;
}

.curry-menu-plugin .filter-location select {
  font-family: 'Fjalla One';
  padding: 10px 15px;
  font-size:1rem;
  border:1px solid #ddd;
  border-radius:8px;
  min-width: 320px;
  width: 320px;
  max-width:100%;
  background:transparent;
  outline:none;
  transition:0.3s;
}

.curry-menu-plugin .spacer {
  flex: 1;
}

.curry-menu-plugin .dietary-filter {
  background: red;
  color: #fff;
  font-weight: 600;
  cursor: pointer;
  transition: background 0.3s;
  white-space: nowrap;
  border-right: none!important;
  display: flex;
  justify-content: center; /* centers the <a> horizontally */
  align-items: center;     /* centers it vertically */
}

.curry-menu-plugin .dietary-filter:hover {
  background: #d62839;
}

.curry-menu-plugin .dietary-filter a {
  display: inline-flex;   /* keeps it inline-like but allows flex */
  align-items: center;    /* vertical centering */
  justify-content: center;/* horizontal centering */
  gap: 6px;
  color: #fff;
  text-decoration: none;
}

/* Popup modal */
.curry-menu-plugin .dietary-filter-modal {
  display: none;
  position: fixed;
  z-index: 1000;
  left: 0; top: 0;
  width: 100%; height: 100%;
  background: rgba(0,0,0,0.5);
  justify-content: center;
  align-items: center;
}

.curry-menu-plugin .dietary-filter-modal-content {
  background: #fff;
  padding: 25px 30px;
  border-radius: 12px;
  width: 90%; max-width: 600px;
  box-shadow: 0 6px 20px rgba(0,0,0,0.2);
  animation: cmpFadeIn 0.3s ease;
}

@keyframes cmpFadeIn {
  from {opacity:0;transform:translateY(-10px);}
  to {opacity:1;transform:translateY(0);}
}

.curry-menu-plugin .dietary-filter-modal-header {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:15px;
}

.curry-menu-plugin .dietary-filter-modal-header h3 {
  margin:0;
  font-size:1.2rem;
  background-color: red;
  color: white;
  padding: 20px;
}

.curry-menu-plugin .close-dietary-filter-allergen {
  cursor:pointer;
  font-size:1.4rem;
  font-weight:bold;
  border:none;
  background:none!important;
  color:black!important;
}

.curry-menu-plugin .dietary-filter-modal-small-text {
  display:block;
  margin:12px 0 20px 0;
  color:red;
  font-size:14px;
}

.curry-menu-plugin .filter-allergens-group {
  display:flex;
  flex-wrap:wrap;
  gap:15px;
}

.curry-menu-plugin .filter-allergens-checkbox {
  display:flex;
  align-items:center;
  gap:8px;
  cursor:pointer;
  padding:6px 12px;
  border:1px solid #ddd;
  border-radius:8px;
  background:#fafafa;
  transition:0.3s;
}

.curry-menu-plugin .filter-allergens-checkbox:hover {
  background:#f0f7ff;
  border-color:red;
  transform:translateY(-2px);
}

.curry-menu-plugin .filter-allergens-checkbox input {
  accent-color:red;
  transform:scale(1.2);
}

/* Grid: 3 columns desktop, 2 tablet, 1 mobile */
.curry-menu-plugin .curry-menu-grid { display:grid; grid-template-columns: repeat(3, 1fr); gap:30px; margin:18px 0; }
@media (max-width: 1024px) { .curry-menu-plugin .curry-menu-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 700px) { .curry-menu-plugin .curry-menu-grid { grid-template-columns: 1fr; } }

.curry-menu-plugin .curry-menu-type-name {
  font-family: 'Fjalla One'; font-size: 32px!important; margin: 50px 0px 20px 0px!important;
}
.curry-menu-plugin .curry-card { background:transparent; border: 1px solid #a2a2a2; border-radius: 4px; padding: 30px 25px; margin: 0; cursor:pointer; transition:transform .18s ease, box-shadow .18s ease; }
.curry-menu-plugin .curry-card:hover { transform:translateY(-4px); box-shadow:0 8px 28px rgba(0,0,0,0.08); }
.curry-menu-plugin .curry-card img { width:100%; height:auto; display:block; border-radius:6px; margin-bottom:8px; }
.curry-menu-plugin .curry-card-title {  font-family: 'Fjalla One'; font-weight: 400; margin:10px 0 20px 0; font-size: 26px!important; line-height: 1.5em;}
.curry-menu-plugin .cmp-excerpt { font-family: inherit; color:#7f7f7f; margin-bottom:10px; line-height:1.4; height: 90px!important; }


.curry-menu-plugin .curry-allergens {
  min-height: 80px; padding: 15px 0px;
}
.curry-menu-plugin .badge { display:inline-block; padding:4px 8px; background:#e63946; color:#fff; border-radius:999px; font-size:13px; margin:3px 6px 3px 0; }

.curry-menu-plugin .popup-badge { display:inline-block; padding: 10px 20px; border-radius: 50px; background:#e63946;
  color:#fff; font-size:13px; margin:3px 6px 3px 0; }

/* Popup */
.curry-menu-plugin .curry-popup-title {
  margin: 10px 0px 20px 0px;
}
.curry-menu-plugin .curry-popup { display:none; position:fixed; inset:0; background:rgba(0,0,0,0.65); justify-content:center; align-items:center; z-index:99999; padding:20px; }
.curry-menu-plugin .curry-popup .popup-content { background:#fff; border-radius:10px; padding:30px; max-width:700px; width:100%; max-height:100vh; overflow:auto; position:relative; }
.curry-menu-plugin .curry-popup .popup-content img { margin: auto;
    display: block; width: 90%; height:auto; border-radius:6px; }
.curry-menu-plugin .curry-popup .close { position:absolute; left:12px; top:8px; font-size:12px; color: #7f7f7f; background-color: white;  cursor:pointer; }

.curry-menu-plugin .curry-popup-allergen-strong {
  font-size: 20px; margin: 20px 0px 15px 0px;
}
.curry-menu-plugin .curry-popup-allergen-text {
  margin: 20px 0px;
  color: #e63946;
}

.curry-menu-plugin .curry-popup-allergens {
  height: 50px!important; padding: 15px 0px; margin-bottom: 30px;
}


.curry-menu-plugin .cmp-full-desc p { margin:0 0 10px 0; color:#333; line-height:1.6; }

.curry-menu-plugin .cmp-prompt { color:#555; background:#fff8f0; border:1px dashed #ffd6cc; padding:10px; border-radius:8px; margin: 10px; }


@media(max-width:700px){
  .curry-menu-plugin .menu-filter{flex-direction:column; align-items:stretch;}
  .curry-menu-plugin .filter-location select, .curry-menu-plugin .dietary-filter a { width:100%; }

  .curry-menu-plugin .curry-card {
    margin: 10px 20px;
  }

  .curry-menu-plugin .filter-cell {
    border: 1px solid #ddd;
  }

  .curry-menu-plugin .spacer {
    display: none;
  }
  
  .curry-menu-plugin .curry-menu-type-name {
    margin: 50px 0px 20px 20px!important;
  }

  .curry-menu-plugin .dietary-filter-open-modal{
    text-align: center;
    display:inline-block;
  }

  .curry-menu-plugin .curry-popup .popup-content img {margin: 20px 0px; width: 80%;}
}
