/* Dark Premium — near-black + gold accent, Playfair + Inter */

html[data-theme='dark_premium'] body {
  background: #0a0a0a;
  color: #fff;
}

html[data-theme='dark_premium'] a:not([class]) {
  color: #c9a96e;
}

html[data-theme='dark_premium'] a:not([class]):hover {
  color: #e4d4b0;
}

html[data-theme='dark_premium'] .menu-theme-premium-hours-bar {
  text-align: center;
  padding: 0.8rem 5%;
  font-size: 0.75rem;
  color: #525252;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  border-bottom: 1px solid #333;
}

html[data-theme='dark_premium'] .page-header {
  border-bottom: 1px solid #333;
  background: rgba(10, 10, 10, 0.92);
  backdrop-filter: blur(20px);
}

html[data-theme='dark_premium'] .logo-txt {
  font-family: 'Playfair Display', serif;
  letter-spacing: 0.05em;
}

/* Header icons — same approach as html[data-theme='dark'] */
html[data-theme='dark_premium'] .page-header-search__link,
html[data-theme='dark_premium'] .top-search__close,
html[data-theme='dark_premium'] .lunch-hint__close {
  filter: invert(1) brightness(1.2);
}

html[data-theme='dark_premium'] .top-schedule-view__close,
html[data-theme='dark_premium'] .lunch-hint__close {
  background-image: url(../img/svg/s-close-white.svg) !important;
  filter: none !important;
}

html[data-theme='dark_premium'] .top-schedule__toggle:before {
  filter: invert(1) brightness(1.2);
}

html[data-theme='dark_premium'] .top-schedule__toggle:after {
  background: #1a1a1a url(../img/svg/arr-white.svg) center no-repeat;
  filter: none !important;
}

html[data-theme='dark_premium'] .page-header-lang__list,
html[data-theme='dark_premium'] .top-search-view,
html[data-theme='dark_premium'] .top-schedule-view,
html[data-theme='dark_premium'] .lunch-hint {
  background: #111;
  border-color: #333;
  color: #e8e8e8;
}

html[data-theme='dark_premium'] .page-header-lang__view,
html[data-theme='dark_premium'] .page-header-lang__link {
  color: #e8e8e8;
}

html[data-theme='dark_premium'] .page-header-lang__view:hover,
html[data-theme='dark_premium'] .page-header-lang__link:hover {
  color: #c9a96e;
}

html[data-theme='dark_premium'] .top-schedule-view__time,
html[data-theme='dark_premium'] .top-schedule-view__time strong {
  color: #e8e8e8;
}

html[data-theme='dark_premium'] .top-search__toggle.active {
  border-color: #c9a96e;
}

html[data-theme='dark_premium'] .page-header-search {
  border-color: #525252;
}

html[data-theme='dark_premium'] .top-search__input {
  background: #111;
  color: #fff;
}

html[data-theme='dark_premium'] .top-search__input::placeholder {
  color: #737373;
}

html[data-theme='dark_premium'] .top-search-view__txt {
  color: #e8e8e8;
}

html[data-theme='dark_premium'] .top-search-view__item:hover .top-search-view__txt {
  color: #c9a96e;
}

html[data-theme='dark_premium'] .top-schedule__toggle {
  color: #e8e8e8;
}

/* Categories grid (menu home) */
html[data-theme='dark_premium'] .menu__in {
  color: #fff;
}

html[data-theme='dark_premium'] .menu__in:hover {
  color: #c9a96e;
}

html[data-theme='dark_premium'] .menu .menu__list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1px;
  background: #333;
  margin: 0;
}

html[data-theme='dark_premium'] .menu .menu__item {
  width: 100%;
  padding: 0;
  margin-bottom: 0;
  background: #111;
}

html[data-theme='dark_premium'] .menu .menu__in {
  position: relative;
  display: block;
  height: 100%;
  min-height: 0;
  padding: 0;
  overflow: hidden;
}

html[data-theme='dark_premium'] .menu__img {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 3;
  flex: none;
  padding-bottom: 0;
  min-height: 0;
  margin-bottom: 0;
  border-radius: 0;
  overflow: hidden;
  background: #1a1a1a;
}

html[data-theme='dark_premium'] .menu__img > div {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

html[data-theme='dark_premium'] .menu__img img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  max-height: none;
  object-fit: cover;
  object-position: center;
  filter: brightness(0.72);
  transition:
    transform 0.6s ease,
    filter 0.4s ease;
}

html[data-theme='dark_premium'] .menu__in:hover .menu__img img {
  transform: scale(1.05);
  filter: brightness(0.45);
}

html[data-theme='dark_premium'] .menu__title {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 2rem 1.25rem;
  margin: 0;
  font-family: 'Playfair Display', serif;
  font-size: 1.65rem;
  font-weight: 500;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.75) 0%, transparent 100%);
}

/* Section titles on category page — like mockup .section-title */
html[data-theme='dark_premium'] .lunch section > h2 {
  display: flex !important;
  align-items: center;
  gap: 1rem;
  font-family: Inter, sans-serif !important;
  font-size: 0.85rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  color: #525252 !important;
  margin: 2.5rem 0 1rem !important;
  line-height: 1.2 !important;
}

html[data-theme='dark_premium'] .lunch section > h2::after {
  content: '';
  flex: 1;
  height: 1px;
  background: linear-gradient(to right, #333, transparent);
}

html[data-theme='dark_premium'] .lunch section:first-child > h2 {
  margin-top: 0 !important;
}

/* Dish cards — mockup: 2-col grid, 1px gutters, horizontal row inside cell */
html[data-theme='dark_premium'] .lunch__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  background: #333;
  margin-left: -20px;
  margin-right: -20px;
  width: calc(100% + 40px);
  padding: 0;
  box-sizing: border-box;
}

html[data-theme='dark_premium'] .lunch__item {
  width: 100%;
  padding: 0;
  margin-bottom: 0 !important;
}

html[data-theme='dark_premium'] .lunch__item:has(.lunch-list-name) {
  grid-column: 1 / -1;
}

html[data-theme='dark_premium'] .lunch__in {
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 1.5rem;
  padding: 2rem;
  background: #111;
  border: none !important;
  border-radius: 0 !important;
  min-height: 0;
  transition: background 0.3s ease;
}

html[data-theme='dark_premium'] .lunch__item:has(.lunch-list-name) .lunch__in {
  padding: 1.25rem 2rem;
}

html[data-theme='dark_premium'] .lunch__in:hover {
  background: #161616;
}

html[data-theme='dark_premium'] .lunch-marker {
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 2;
}

html[data-theme='dark_premium'] .lunch__img {
  width: 120px;
  height: 120px;
  flex-shrink: 0;
  padding-bottom: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  border-radius: 0;
  overflow: hidden;
}

html[data-theme='dark_premium'] .lunch__img img {
  position: static !important;
  display: block;
  width: 120px !important;
  height: 120px !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover;
  filter: none;
  border-radius: 0;
}

html[data-theme='dark_premium'] .lunch__info {
  flex: 1;
  min-width: 0;
}

html[data-theme='dark_premium'] .lunch__title {
  font-family: 'Playfair Display', serif;
  font-size: 1.3rem;
  font-weight: 500;
  color: #fff;
  margin-bottom: 0.5rem;
}

html[data-theme='dark_premium'] .lunch__txt {
  font-size: 0.9rem;
  line-height: 1.6;
  color: #a3a3a3 !important;
}

html[data-theme='dark_premium'] .lunch-price .price,
html[data-theme='dark_premium'] .lunch-price {
  font-family: 'Playfair Display', serif;
  font-size: 1.2rem;
  font-weight: 500;
  color: #c9a96e !important;
}

html[data-theme='dark_premium'] .price-old {
  color: #737373 !important;
  font-family: Inter, sans-serif;
  font-size: 0.9rem;
}

html[data-theme='dark_premium'] .txt-more,
html[data-theme='dark_premium'] .lunch-info-toggle {
  background: #1a1a1a;
  color: #fff;
  border: 1px solid #333;
}

html[data-theme='dark_premium'] .lunch-info-toggle:hover {
  background: #c9a96e;
  color: #0a0a0a;
}

html[data-theme='dark_premium'] .lunch-more {
  background: #0a0a0a;
  border-left: 1px solid #333;
}

html[data-theme='dark_premium'] .lunch-more__icon img {
  filter: invert(1) brightness(1.15);
}

html[data-theme='dark_premium'] .lunch-icons__item img {
  filter: invert(1) brightness(1.15);
}

/* Footer — icon inversion like dark theme */
html[data-theme='dark_premium'] .page-footer__wrap {
  background: #111;
  border-top: 1px solid #333;
}

html[data-theme='dark_premium'] .page-footer__title,
html[data-theme='dark_premium'] .page-footer__link {
  color: #e8e8e8;
}

html[data-theme='dark_premium'] .page-footer__link.m-mail,
html[data-theme='dark_premium'] .page-footer__link.m-phone,
html[data-theme='dark_premium'] .page-footer__link.m-address {
  color: #e8e8e8;
}

html[data-theme='dark_premium'] .page-footer__link:hover {
  color: #c9a96e;
}

html[data-theme='dark_premium'] .page-footer__link:before {
  filter: invert(1) brightness(1.2);
}

html[data-theme='dark_premium'] .socials__item {
  background: #1a1a1a;
}

html[data-theme='dark_premium'] .socials__item:hover {
  background: #262626;
}

html[data-theme='dark_premium'] .socials__item img {
  filter: invert(1) brightness(1.2);
}

html[data-theme='dark_premium'] .wysiwyg-content {
  background: #111 !important;
  color: #e8e8e8 !important;
}

html[data-theme='dark_premium'] .wysiwyg-content a {
  color: #c9a96e;
}

html[data-theme='dark_premium'] .public-back-btn,
html[data-theme='dark_premium'] .public-banner-nav {
  background: rgba(17, 17, 17, 0.95) !important;
  border: 1px solid #333 !important;
  color: #fff !important;
}

@media (min-width: 768px) {
  html[data-theme='dark_premium'] .menu .menu__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* Category chips (no cover image) */
html[data-theme='dark_premium'] .menu__chip {
  background: #1a1a1a;
  border: 1px solid #444;
  color: #e8eaf0;
}

html[data-theme='dark_premium'] .menu__item--chip .menu__in:hover .menu__chip {
  background: #252525;
  border-color: #c9a96e;
  color: #c9a96e;
  transform: translateY(-1px);
}

@media (max-width: 767px) {
  html[data-theme='dark_premium'] .lunch__list {
    grid-template-columns: 1fr;
    margin-left: -20px;
    margin-right: -20px;
    width: calc(100% + 40px);
  }

  html[data-theme='dark_premium'] .lunch__in {
    flex-direction: column;
    align-items: stretch;
  }

  html[data-theme='dark_premium'] .lunch__img,
  html[data-theme='dark_premium'] .lunch__img img {
    width: 100% !important;
    height: auto !important;
    max-height: 220px;
  }

  html[data-theme='dark_premium'] .lunch-marker {
    position: absolute;
    top: 12px;
    left: 12px;
  }
}
