.hours-card.classic-purple {
  width: 100%;
  max-width: 265px;
  box-sizing: border-box;
  padding: 13px;
  border: 1px solid #f0e6ff;
  border-radius: 24px;
  overflow: hidden;
  box-shadow: 0 5px 14px rgba(114, 9, 183, 0.08);
  font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
  background: #fff;
  color: #2b2d42;
}

.status-bar {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  margin: -13px -13px 12px;
  padding: 7px 8px;
  border-radius: 23px 23px 0 0;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.45px;
  text-align: center;
}

.status-bar.open {
  background: #d8f3dc;
  color: #1b4332;
}

.status-bar.closed-status {
  background: #ffe5ec;
  color: #800f2f;
}

.status-dot {
  width: 6px;
  height: 6px;
  flex: 0 0 6px;
  border-radius: 50%;
}

.status-bar.open .status-dot {
  background: #52b788;
  box-shadow: 0 0 8px rgba(82, 183, 136, 0.6);
}

.status-bar.closed-status .status-dot {
  background: #ff4d6d;
}

.hours-header {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 7px;
  margin: 0 0 9px;
  padding: 0 0 8px;
  border-bottom: 1px solid #f7f2fa;
  white-space: nowrap;
}

.hours-header .hours-icon {
  display: block !important;
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  margin: 0 !important;
}

.hours-header h3 {
  display: inline-block !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #7209b7;
  font-size: 1rem !important;
  font-weight: 700;
  line-height: 18px !important;
  white-space: nowrap !important;
}

.hours-list {
  display: grid;
  grid-template-columns: 1fr;
  margin: 0;
  padding: 0;
  list-style: none;
}

.hours-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-width: 0;
  padding: 8px 5px;
  border-bottom: 1px solid #f7f2fa;
  font-size: 0.78rem;
  line-height: 1.2;
  gap: 8px;
}

.hours-item:last-child {
  border-bottom: 0;
}

.hours-item.current-day {
  padding-left: 8px;
  border-left: 3px solid #7209b7;
  border-radius: 0 8px 8px 0;
  background: #f3e8ff;
}

.day {
  min-width: 0;
  font-weight: 600;
  white-space: nowrap;
}

.time {
  flex: 0 0 auto;
  color: #22223b;
  font-weight: 700;
  white-space: nowrap;
}

.hours-item.closed .time {
  color: #ff4d6d;
}

/* Keskeny telefonokon: kisebb belső tér és betűméret */
@media (max-width: 360px) {
  .hours-card.classic-purple {
    padding: 10px;
    border-radius: 20px;
  }

  .status-bar {
    margin: -10px -10px 10px;
    padding: 6px;
    border-radius: 19px 19px 0 0;
    font-size: 0.62rem;
  }

 .hours-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  column-gap: 8px;
}

.day {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.time {
  white-space: nowrap;
}

/* Keskeny helyen automatikusan két sor */
@media (max-width: 420px) {
  .hours-item {
    grid-template-columns: 1fr;
    row-gap: 3px;
  }

  .time {
    text-align: left;
  }
}