.site-header {
  position: relative;
  z-index: 30;
}

.site-nav {
  overflow: visible;
}

.site-nav .nav-item {
  position: relative;
  display: inline-flex;
  align-items: center;
}

.nav-parent-link {
  display: inline-flex;
  align-items: center;
}

.nav-dropdown {
  position: absolute;
  z-index: 40;
  top: calc(100% + 14px);
  left: 50%;
  min-width: 176px;
  padding: 9px;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transform: translate(-50%, -3px);
  background: #fff;
  border: 1px solid var(--line);
  border-radius: 2px;
  box-shadow: 0 10px 28px rgba(31, 45, 36, .09);
  transition: opacity 120ms ease, transform 120ms ease, visibility 0s linear 120ms;
}

.nav-item.is-open .nav-dropdown {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
  transform: translate(-50%, 0);
  transition-delay: 0s;
}

.nav-dropdown::before {
  content: '';
  position: absolute;
  right: 0;
  bottom: 100%;
  left: 0;
  height: 15px;
}

.nav-dropdown a {
  display: block;
  padding: 10px 13px;
  white-space: nowrap;
  font-size: 13px;
  font-weight: 600;
}

.nav-dropdown a:hover,
.nav-dropdown a:focus-visible {
  color: var(--ink);
  background: var(--soft);
}

@media (max-width: 720px) {
  .nav-dropdown {
    top: calc(100% + 9px);
    left: 0;
    min-width: 168px;
    transform: translateY(-3px);
  }

  .nav-item.is-open .nav-dropdown {
    transform: translateY(0);
  }

  .nav-dropdown::before {
    height: 10px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .nav-dropdown {
    transition: none;
  }
}
html.translation-pending{overflow:hidden}html.translation-pending body{pointer-events:none}html.translation-pending::before{content:"";position:fixed;inset:0;z-index:9998;background:#fbfcfa}html.translation-pending::after{content:"W\'FOOD · 선택한 언어로 준비하고 있어요";position:fixed;z-index:9999;top:50%;left:50%;width:min(78vw,360px);padding:58px 24px 22px;transform:translate(-50%,-50%);border:1px solid #dbe2dc;background:#fff;color:#314238;text-align:center;font-size:13px;font-weight:650;letter-spacing:.03em;box-shadow:0 18px 48px rgba(31,45,36,.08);background-image:conic-gradient(from 0deg,#607367,#dfe6e0,#607367);background-repeat:no-repeat;background-position:50% 22px;background-size:24px 24px;clip-path:inset(0 round 2px);animation:translation-pulse 1.1s ease-in-out infinite alternate}@keyframes translation-pulse{to{color:#607367}}.header-actions{justify-self:end;display:flex;align-items:flex-end;gap:12px}.language-control{position:relative;display:flex;flex-direction:column;gap:3px}.language-control label{font-size:9px;line-height:1.2;font-weight:750;letter-spacing:.18em;color:#607367}.language-select{width:138px;height:36px;padding:0 28px 0 9px;border:0;border-bottom:1px solid #aeb9b1;border-radius:0;background:#fff;color:#1d2822;cursor:pointer;font-size:12px;font-weight:650}.language-select:hover,.language-select:focus{border-bottom-color:#1d2822}.language-select:disabled{cursor:wait;opacity:.65}.language-status{position:absolute;right:0;top:100%;z-index:20;width:230px;margin-top:7px;padding:8px 10px;border:1px solid #dde4de;background:#fff;color:#607367;font-size:10px;line-height:1.45;box-shadow:0 5px 18px rgba(29,40,34,.07)}.language-status[data-error="true"]{color:#8a443b}.language-control[hidden],.language-status[hidden]{display:none}.ingredient-table small{display:block;font-size:11px;font-weight:500;color:#607367}.kimchi-guide{padding:22px 26px;background:#f7f9f6;border-left:3px solid #607367}.recipe-facts{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.recipe-facts>div+div{border-left:1px solid var(--line)}
html[lang="en"] .ingredient-table tbody small{display:none}
@media(max-width:1120px){.header-actions{grid-column:2;grid-row:1}}
@media(max-width:720px){.header-actions{gap:7px}.language-select{width:112px;height:34px;padding-left:6px;font-size:11px}.language-control label{font-size:8px}.recipe-facts>div+div{border-left:0}}

.recipe-ingredients-photo{aspect-ratio:4/3;margin:24px 0}

/* Keep translated copy inside its card, column, table, and recipe panel. */
.content-grid > *,
.recipe-grid > *,
.recipe-card,
.recipe-card > a,
.recipe-card-body,
.recipe-card-meta,
.recipe-card-meta > span,
.recipe-browser,
.recipe-browser-toolbar,
.recipe-browser-heading,
.section-head,
.ingredient-table,
.steps-section,
.notes,
aside {
  min-width: 0;
  max-width: 100%;
}

/* Preserve the original editorial reading width on recipe and kimchi articles. */
.recipe-detail {
  width: 100%;
  max-width: 900px;
}

.recipe-title {
  width: 100%;
  max-width: 790px;
}

.recipe-card {
  overflow: hidden;
}

.recipe-card h2,
.recipe-card-body > p,
.recipe-card-meta > span,
.level-badge,
.recipe-title h1,
.recipe-title p,
.ingredient-table th,
.ingredient-table td,
.steps-section h3,
.steps-section p,
.notes b,
.notes p {
  white-space: normal;
  overflow-wrap: anywhere;
}

.recipe-card-meta {
  flex-wrap: wrap;
}

.recipe-card-meta > span {
  flex: 1 1 120px;
}

html:not([lang="ko"]) body,
html:not([lang="ko"]) .recipe-card h2,
html:not([lang="ko"]) .recipe-card-body > p,
html:not([lang="ko"]) .recipe-card-meta > span,
html:not([lang="ko"]) .level-badge,
html:not([lang="ko"]) .recipe-title h1,
html:not([lang="ko"]) .recipe-title p,
html:not([lang="ko"]) .ingredient-table th,
html:not([lang="ko"]) .ingredient-table td,
html:not([lang="ko"]) .steps-section h3,
html:not([lang="ko"]) .steps-section p,
html:not([lang="ko"]) .notes b,
html:not([lang="ko"]) .notes p {
  word-break: normal;
  line-break: auto;
}

html:not([lang="ko"]) .ingredient-table table {
  width: 100%;
  table-layout: fixed;
}

@media (max-width: 720px) {
  .recipe-card-meta > span {
    flex-basis: 100%;
  }
}
