/**
 * KWAVE M — Korean newspaper masthead and translated-view controls.
 * Loaded after premium.css so the original navigation behaviour can stay intact.
 */

:root {
  --kmag-paper: #f8f4eb;
  --kmag-paper-deep: #eee7da;
  --kmag-ink: #191816;
  --kmag-ink-soft: #5e574f;
  --kmag-burgundy: #8b1e2d;
  --kmag-rule: #c9bfb1;
  --kmag-journal-serif: "Noto Serif KR", "Batang", "AppleMyungjo", Georgia, serif;
}

/* Newspaper utility line */
.kmag-v4-publication-bar {
  border-top: 3px solid var(--kmag-ink);
  border-bottom: 1px solid var(--kmag-rule);
  background: var(--kmag-paper-deep);
  color: var(--kmag-ink-soft);
}

.kmag-v4-publication-bar__inner {
  min-height: 38px;
}

.kmag-v4-publication-bar__identity {
  gap: 10px;
  font-family: var(--kmag-journal-serif);
  font-size: .78rem;
}

.kmag-v4-publication-bar__identity strong {
  color: var(--kmag-ink);
  font-family: Georgia, "Times New Roman", serif;
  font-size: .75rem;
  letter-spacing: .17em;
}

.kmag-v4-publication-bar__identity time {
  border-left-color: #b9aea0;
  color: #6b6259;
}

.kmag-v4-publication-bar__status {
  width: 5px;
  height: 5px;
  border-radius: 0;
  background: var(--kmag-burgundy);
  box-shadow: none;
  transform: rotate(45deg);
}

.kmag-v41-utility-actions,
.kmag-v4-publication-bar__nav,
.kmag-language-switch {
  display: flex;
  align-items: center;
}

.kmag-v41-utility-actions {
  gap: 19px;
}

.kmag-v4-publication-bar__nav {
  gap: 0;
}

.kmag-v4-publication-bar__nav a {
  position: relative;
  padding: 0 10px;
  color: #554e47;
  font-family: var(--kmag-journal-serif);
  font-size: .78rem;
  font-weight: 600;
}

.kmag-v4-publication-bar__nav a + a::before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 1px;
  height: 10px;
  background: #bdb2a5;
  content: "";
  transform: translateY(-50%);
}

.kmag-language-switch {
  border: 1px solid #aa9d8d;
  background: rgba(255, 255, 255, .32);
}

.kmag-language-switch a {
  display: inline-flex;
  min-width: 56px;
  min-height: 28px;
  padding: 4px 9px 5px;
  align-items: center;
  justify-content: center;
  color: #665d54;
  font-family: var(--kmag-journal-serif);
  font-size: .74rem;
  font-weight: 650;
  line-height: 1;
  text-align: center;
}

.kmag-language-switch__flag {
	position: relative;
	display: inline-block;
	width: 20px;
	height: 14px;
	margin-right: 5px;
	overflow: hidden;
	border: 1px solid rgba(31, 27, 24, .24);
	border-radius: 2px;
	background: #fff;
	box-shadow: 0 1px 2px rgba(31, 27, 24, .1);
	flex: 0 0 auto;
}

.kmag-language-switch__flag--kr::before {
	position: absolute;
	top: 3px;
	left: 6px;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: linear-gradient(180deg, #cd2e3a 0 50%, #0047a0 50% 100%);
	content: "";
	transform: rotate(30deg);
}

.kmag-language-switch__flag--kr::after {
	position: absolute;
	top: 2px;
	left: 2px;
	width: 3px;
	height: 1px;
	background: #161616;
	box-shadow: 0 2px #161616, 12px 7px #161616, 12px 9px #161616;
	content: "";
	transform: rotate(-32deg);
}

.kmag-language-switch__flag--cn {
	border-color: #d32118;
	background: #de2910;
}

.kmag-language-switch__flag--cn::before {
	position: absolute;
	top: 0;
	left: 2px;
	color: #ffde00;
	content: "★";
	font-family: Arial, sans-serif;
	font-size: 7px;
	line-height: 1;
}

.kmag-language-switch__source {
  white-space: nowrap;
}

.kmag-language-switch__google {
  gap: 1px;
  flex-direction: column;
}

.kmag-language-switch__google > span:first-child {
  display: inline-flex;
  align-items: center;
}

.kmag-language-switch__google small {
  color: inherit;
  font-family: Arial, sans-serif;
  font-size: .52rem;
  font-weight: 500;
  letter-spacing: .01em;
  opacity: .72;
}

.kmag-language-switch a + a {
  border-left: 1px solid #aa9d8d;
}

.kmag-language-switch a[aria-current="page"] {
  background: var(--kmag-ink);
  color: #fffaf0;
}

.kmag-language-switch a:hover {
  background: var(--kmag-burgundy);
  color: #fff;
}

/* Main masthead */
.site-header-top {
  height: 126px;
  overflow: visible;
  border-bottom: 1px solid var(--kmag-rule);
  background: var(--kmag-paper);
}

.site-header-top-inner {
  display: grid;
  height: 100%;
  align-items: center;
  grid-template-columns: minmax(210px, .85fr) minmax(360px, 1.3fr) minmax(210px, .85fr);
  gap: 36px;
}

.kmag-v41-edition {
  display: flex;
  min-width: 0;
  padding-left: 14px;
  border-left: 3px double var(--kmag-burgundy);
  flex-direction: column;
  color: var(--kmag-ink-soft);
  font-family: var(--kmag-journal-serif);
}

.kmag-v41-edition small {
  margin-bottom: 8px;
  color: var(--kmag-burgundy);
  font-family: Georgia, "Times New Roman", serif;
  font-size: .63rem;
  font-weight: 700;
  letter-spacing: .16em;
}

.kmag-v41-edition strong {
  color: var(--kmag-ink);
  font-size: .93rem;
  font-weight: 700;
  letter-spacing: .08em;
}

.kmag-v41-edition span {
  max-width: 250px;
  margin-top: 5px;
  font-size: .71rem;
  line-height: 1.6;
}

.site-branding {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: center;
}

.site-logo-original,
.custom-logo-link {
  display: inline-flex;
  width: 100%;
  align-items: center;
  justify-content: center;
}

.site-logo-original img {
  width: min(100%, 430px);
  max-width: 100%;
  height: auto;
}

.custom-logo {
  width: auto;
  max-width: 390px;
  max-height: 92px;
  object-fit: contain;
}

.header-campaign {
  display: flex;
  width: auto;
  height: auto;
  min-height: 76px;
  padding: 0 14px 0 22px;
  border-left: 1px solid var(--kmag-rule);
  align-items: flex-end;
  justify-content: center;
  flex-direction: column;
  overflow: visible;
  color: var(--kmag-ink);
  text-align: right;
}

.header-campaign::before,
.header-campaign .campaign-orb {
  display: none;
}

.header-campaign > small {
  margin-bottom: 5px;
  color: var(--kmag-burgundy);
  font-family: var(--kmag-journal-serif);
  font-size: .7rem;
  font-weight: 700;
  letter-spacing: .08em;
}

.header-campaign strong {
  margin: 0;
  color: var(--kmag-ink);
  font-family: var(--kmag-journal-serif);
  font-size: 1.08rem;
  font-weight: 700;
  letter-spacing: -.015em;
  line-height: 1.45;
}

.header-campaign > span:not(.screen-reader-text) {
  max-width: 260px;
  margin-top: 4px;
  padding: 0;
  border: 0;
  color: #71685f;
  font-family: var(--kmag-journal-serif);
  font-size: .72rem;
  font-weight: 500;
  line-height: 1.5;
}

.header-campaign:hover strong {
  color: var(--kmag-burgundy);
}

/* Restrained double-rule navigation */
.desktop-navigation {
  height: 56px;
  border-top: 3px double var(--kmag-ink);
  border-bottom: 3px double var(--kmag-ink);
  background: #fffdf8;
}

.desktop-navigation-inner {
  gap: 28px;
}

.header-menu {
  height: 100%;
  gap: clamp(18px, 2.4vw, 37px);
}

.header-menu a,
.desktop-navigation .menu a {
  position: relative;
  color: var(--kmag-ink);
  font-family: var(--kmag-journal-serif);
  font-size: 1.03rem;
  font-weight: 650;
  line-height: 50px;
  letter-spacing: .015em;
}

.header-menu a::after,
.desktop-navigation .menu a::after {
  position: absolute;
  right: 50%;
  bottom: 5px;
  left: 50%;
  height: 2px;
  background: var(--kmag-burgundy);
  content: "";
  transition: right .18s ease, left .18s ease;
}

.header-menu a:hover,
.desktop-navigation .menu a:hover,
.header-menu .current-menu-item > a {
  color: var(--kmag-burgundy);
}

.header-menu a:hover::after,
.desktop-navigation .menu a:hover::after,
.header-menu .current-menu-item > a::after {
  right: 0;
  left: 0;
}

.desktop-search {
  width: 205px;
  flex: 0 0 205px;
}

.desktop-search .search-field {
  height: 37px;
  padding-right: 38px;
  border: 0;
  border-bottom: 1px solid #8d8276;
  border-radius: 0;
  background: transparent;
  color: var(--kmag-ink);
  font-family: var(--kmag-journal-serif);
  font-size: .84rem;
}

.desktop-search .search-submit {
  width: 37px;
  height: 37px;
  color: var(--kmag-burgundy);
}

.desktop-search .search-submit svg {
  width: 18px;
}

/* Drawer edition selector; hidden with the drawer on desktop. */
.kmag-language-switch--drawer {
  display: none;
}

@media (max-width: 1100px) and (min-width: 768px) {
  .site-header-top-inner {
    grid-template-columns: minmax(170px, .7fr) minmax(300px, 1.2fr) minmax(180px, .7fr);
    gap: 20px;
  }

  .site-logo-original img {
    width: min(100%, 350px);
  }

  .kmag-v41-edition span,
  .header-campaign > span:not(.screen-reader-text) {
    display: none;
  }

  .header-menu {
    gap: 16px;
  }

  .header-menu a,
  .desktop-navigation .menu a {
    font-size: .9rem;
  }
}

@media (max-width: 900px) and (min-width: 768px) {
  .kmag-v4-publication-bar__nav {
    display: none;
  }

  .desktop-search {
    right: 0;
  }
}

@media (max-width: 767px) {
  .site-header-top {
    height: 60px;
    border-top: 3px solid var(--kmag-ink);
    border-bottom: 3px double var(--kmag-ink);
    background: var(--kmag-paper);
  }

  .site-header-top-inner {
    display: flex;
    padding: 0 60px;
    align-items: center;
    justify-content: center;
  }

  .kmag-v41-edition,
  .header-campaign {
    display: none;
  }

  .site-branding {
    width: min(100%, 225px);
  }

  .site-logo-original img {
    width: 220px;
    max-width: 100%;
  }

  .custom-logo {
    max-width: 205px;
    max-height: 48px;
  }

  .menu-toggle,
  .mobile-search-toggle {
    top: 0;
    width: 56px;
    height: 57px;
    color: var(--kmag-ink);
  }

  .menu-toggle {
    left: 2px;
  }

  .mobile-search-toggle {
    right: 2px;
  }

  .menu-toggle > span {
    width: 22px;
    height: 1px;
    background: var(--kmag-ink);
  }

  .menu-toggle > span:nth-child(1) { top: 15px; }
  .menu-toggle > span:nth-child(2) { top: 21px; }
  .menu-toggle > span:nth-child(3) { top: 27px; }
  .menu-toggle small { padding-bottom: 5px; color: var(--kmag-ink-soft); font-family: Georgia, serif; font-size: .72rem; letter-spacing: .1em; }
  .menu-toggle[aria-expanded="true"] > span:nth-child(1) { top: 21px; }
  .menu-toggle[aria-expanded="true"] > span:nth-child(3) { top: 21px; }

  .mobile-search-toggle svg {
    width: 22px;
    stroke-width: 1.5;
  }

  .mobile-search-panel {
    top: 60px;
    padding: 14px 16px;
    border-bottom: 3px solid var(--kmag-burgundy);
    background: #22201d;
  }

  .mobile-search-panel .search-field {
    border-radius: 0;
    font-family: var(--kmag-journal-serif);
  }

  .mobile-drawer {
    top: 60px;
    border-right: 4px solid var(--kmag-burgundy);
    background: #201e1b;
    color: #f7f1e7;
  }

  .admin-bar .mobile-drawer {
    top: 106px;
  }

  .mobile-drawer-inner {
    padding-bottom: 50px;
  }

  .drawer-header {
    min-height: 60px;
    border-bottom-color: rgba(238, 226, 208, .2);
    background: rgba(32, 30, 27, .97);
  }

  .drawer-title {
    font-family: var(--kmag-journal-serif);
    font-size: 1.3rem;
    letter-spacing: .04em;
  }

  .kmag-language-switch--drawer {
    display: grid;
    margin: 0 0 24px;
    border-color: #766b60;
    grid-template-columns: minmax(0, 1fr) 82px 96px;
    background: rgba(255, 255, 255, .035);
  }

  .kmag-language-switch--drawer > span {
    display: flex;
    padding: 0 12px;
    align-items: center;
    color: #bcb1a4;
    font-family: var(--kmag-journal-serif);
    font-size: 1rem;
  }

  .kmag-language-switch--drawer a {
    min-height: 44px;
    padding: 0 8px;
    display: grid;
    place-items: center;
    color: #e9dfd1;
    font-size: 1rem;
  }

  .kmag-language-switch--drawer .kmag-language-switch__google {
    line-height: 1.05;
  }

  .kmag-language-switch__notice {
    grid-column: 1 / -1;
    margin: 0;
    padding: 10px 12px;
    border-top: 1px solid rgba(238, 226, 208, .13);
    color: #bcb1a4;
    font-size: .78rem;
    line-height: 1.55;
  }

  .kmag-language-switch--drawer a[aria-current="page"] {
    background: var(--kmag-burgundy);
  }

  .mobile-top-menu,
  .publication-drawer-links {
    border-color: rgba(238, 226, 208, .2);
  }

  .publication-drawer-links a {
    color: #d8ccbd;
    font-family: var(--kmag-journal-serif);
  }

  .drawer-campaign {
    min-height: 135px;
    border-top: 1px solid #aa735e;
    border-bottom: 1px solid #aa735e;
    background:
      linear-gradient(135deg, rgba(91, 19, 32, .98), rgba(42, 29, 28, .98)),
      #581421;
  }

  .drawer-campaign::after {
    position: absolute;
    right: 23px;
    bottom: 20px;
    width: 58px;
    height: 58px;
    border: 1px solid rgba(248, 240, 226, .56);
    border-radius: 50%;
    color: #f7eee0;
    content: "K";
    display: grid;
    place-items: center;
    font-family: Georgia, serif;
    font-size: 2rem;
  }

  .drawer-campaign-orb {
    display: none;
  }

  .drawer-campaign-eyebrow {
    color: #e1aa91;
    font-family: Georgia, serif;
    letter-spacing: .14em;
  }

  .drawer-heading {
    display: flex;
    flex-direction: column;
    color: #fff8ed;
    font-family: var(--kmag-journal-serif);
    font-size: 2rem;
    line-height: 1.35;
  }

  .drawer-heading small {
    margin-bottom: 3px;
    color: #bb816a;
    font-family: Georgia, serif;
    font-size: .72rem;
    letter-spacing: .16em;
  }

  .mobile-drawer .drawer-menu a,
  .mobile-drawer .menu a {
    color: #f7f0e5;
    font-family: var(--kmag-journal-serif);
  }

  .mobile-drawer .mobile-top-menu a::after {
    color: #bf7b69;
  }

  .drawer-subheading {
    color: #c4b8aa;
    font-family: var(--kmag-journal-serif);
  }

  .drawer-social-links a {
    border-radius: 0;
  }

  .drawer-social-links a:hover {
    border-color: #b78370;
    background: var(--kmag-burgundy);
  }

  .drawer-overlay {
    inset: 60px 0 0;
    background: rgba(20, 17, 15, .58);
  }

  .admin-bar .drawer-overlay {
    top: 106px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .header-menu a::after,
  .desktop-navigation .menu a::after {
    transition: none;
  }
}
