/*
Theme Name: F3KF3K × TAir Portal 2026
Theme URI: https://f3kf3k.com/
Author: Zhigao Tang & TAir Aerodynamics
Author URI: https://f3kf3k.com/
Description: 专为 F3KF3K.COM 滑翔机学院打造的自研极速轻量 WordPress 门户主题（v12.1 护眼低亮 & 全站暗色双模版）。完整传承现网经典「无遮挡完整海报轮播 + 2×2 四大分类专栏盒 + 居中关键部位机型陈列 + 赞助商与公众号页脚」构架，无缝集成悬停弹出四分类实拍菜单、9 币种紧凑弹出换算、TAir 1:1 涂装定制台与微信老客户静默登录。全站文章、分类与隐藏页 100% 由原生 WordPress 后台 (/wp-admin/) 维护。
Version: 12.2.0
Requires at least: 6.0
Requires PHP: 8.1
Text Domain: f3kf3k-tair
*/

*, *::before, *::after {
  box-sizing: border-box;
}

:root {
  /* Dimmed Eye-Comfort Slate-Mist Light Palette (Zero Harsh Pure White) */
  --wp-bg: #d3dce7;
  --wp-card: #e5ecf4;
  --wp-card-inner: #edf2f8;
  --wp-subtle: #d8e2ef;
  --wp-slate-top: #1c2633;
  --wp-slate-nav: #263445;
  --wp-ink-900: #16202e;
  --wp-ink-700: #324256;
  --wp-ink-500: #54667e;
  --wp-border: #b6c6da;
  --wp-border-soft: #c6d3e3;
  --wp-blue: #1d5bbf;
  --wp-blue-soft: rgba(29, 91, 191, 0.12);
  --wp-dropdown-bg: linear-gradient(180deg, #dbe4f0 0%, #e4ecf6 100%);
  --wp-dropdown-hover: #cddbef;
  --cat-contest: #8e24aa;
  --cat-gear: #b8860b;
  --cat-rules: #0277bd;
  --cat-tech: #00838f;
}

html.theme-dark-root body.f3k-wp-body,
body.f3k-wp-body.theme-dark {
  /* Complete Deep Carbon-Slate Dark Palette */
  --wp-bg: #0c121b;
  --wp-card: #151f2e;
  --wp-card-inner: #1d2a3d;
  --wp-subtle: #1b2739;
  --wp-slate-top: #090e16;
  --wp-slate-nav: #111a27;
  --wp-ink-900: #e9eff7;
  --wp-ink-700: #c3cfdf;
  --wp-ink-500: #889ab2;
  --wp-border: #28384f;
  --wp-border-soft: #202e42;
  --wp-blue: #58a6ff;
  --wp-blue-soft: rgba(88, 166, 255, 0.15);
  --wp-dropdown-bg: linear-gradient(180deg, #141f2f 0%, #19273b 100%);
  --wp-dropdown-hover: rgba(88, 166, 255, 0.16);
  --cat-contest: #ce93d8;
  --cat-gear: #facc15;
  --cat-rules: #38bdf8;
  --cat-tech: #2dd4bf;
}

body.f3k-wp-body {
  margin: 0;
  font-family: "Inter", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", system-ui, -apple-system, sans-serif;
  background: var(--wp-bg);
  color: var(--wp-ink-900);
  font-size: 16px;
  line-height: 1.72;
  transition: background-color 0.2s ease, color 0.2s ease;
  -webkit-font-smoothing: antialiased;
}

a {
  color: inherit;
  text-decoration: none;
}

/* --------------------------------------------------------------------------
   1. Two-Tier Authentic F3KF3K.COM Slate Portal Header
   -------------------------------------------------------------------------- */
.wp-top-utility {
  background: var(--wp-slate-top);
  color: #cbd5e1;
  font-size: 13px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.wp-top-utility-inner {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 24px;
  min-height: 38px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.wp-util-left, .wp-util-right {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.wp-util-link {
  color: #cbd5e1;
  font-weight: 600;
  transition: color 0.15s ease;
  display: inline-flex;
  align-items: center;
  gap: 5px;
}
.wp-util-link:hover {
  color: #ffffff;
}
.wp-util-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  height: 28px;
  padding: 0 10px;
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.09);
  border: 1px solid rgba(255, 255, 255, 0.15);
  color: #f1f5f9;
  font-size: 12.5px;
  font-weight: 700;
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease;
}
.wp-util-pill:hover {
  background: rgba(255, 255, 255, 0.18);
  border-color: rgba(255, 255, 255, 0.28);
}

.wp-masthead {
  position: sticky;
  top: 0;
  z-index: 100;
  background: var(--wp-slate-nav);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 4px 18px rgba(10, 16, 26, 0.22);
}
.wp-masthead-inner {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 24px;
  height: 68px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}
.wp-brand-logo {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: #ffffff;
}
.wp-brand-logo img.f3k-cube-logo {
  width: 42px;
  height: 42px;
  border-radius: 7px;
  object-fit: contain;
  display: block;
}
.wp-brand-titles {
  display: flex;
  flex-direction: column;
  line-height: 1.2;
}
.wp-brand-titles strong {
  font-size: 18px;
  font-weight: 800;
  letter-spacing: 0.02em;
  color: #ffffff;
}
.wp-brand-titles span {
  font-size: 12.5px;
  color: #9fb0c7;
  font-weight: 600;
}

.wp-nav-menu {
  display: flex;
  align-items: center;
  gap: 6px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.wp-nav-item {
  position: relative;
}
.wp-nav-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  height: 42px;
  padding: 0 15px;
  border-radius: 8px;
  color: #e8eff8;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.01em;
  background: transparent;
  border: 1px solid transparent;
  cursor: pointer;
  transition: all 0.15s ease;
}
.wp-nav-link:hover,
.wp-nav-item:hover > .wp-nav-link,
.wp-nav-link.is-open {
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.16);
  color: #ffffff;
}
.wp-nav-link.current {
  color: #ffffff;
  position: relative;
}
.wp-nav-link.current::after {
  content: "";
  position: absolute;
  left: 15px;
  right: 15px;
  bottom: 5px;
  height: 2.5px;
  border-radius: 2px;
  background: #60a5fa;
}
.wp-nav-link.is-studio-cta {
  background: linear-gradient(135deg, #1d5bbf 0%, #2563eb 100%);
  border-color: rgba(255, 255, 255, 0.18);
  color: #ffffff;
  margin-left: 6px;
}
.wp-nav-link.is-studio-cta:hover {
  background: linear-gradient(135deg, #164899 0%, #1d4ed8 100%);
}

/* Harmonized Slate-Mist / Carbon-Slate Centered Dropdown Submenus */
.wp-dropdown {
  position: absolute;
  top: calc(100% + 6px);
  left: 50%;
  min-width: 236px;
  background: var(--wp-dropdown-bg);
  border: 1px solid var(--wp-border);
  border-top: 2.5px solid var(--wp-blue);
  border-radius: 13px;
  box-shadow: 0 18px 40px rgba(10, 16, 26, 0.28);
  padding: 8px;
  list-style: none;
  margin: 0;
  opacity: 0;
  visibility: hidden;
  transform: translateX(-50%) translateY(6px);
  transition: all 0.16s ease;
  z-index: 108;
}
.wp-nav-item.has-sub::after,
.wp-nav-item.is-mega-item::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  height: 14px;
}
.wp-nav-item.has-sub:hover > .wp-dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}
.wp-dropdown li a {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 9px 14px;
  border-radius: 8px;
  color: var(--wp-ink-900);
  font-size: 14.5px;
  font-weight: 700;
  transition: background 0.14s ease, color 0.14s ease;
}
.wp-dropdown li a:hover {
  background: var(--wp-dropdown-hover);
  color: var(--wp-blue);
}

/* --------------------------------------------------------------------------
   2. Uncropped Full-Poster Hero Slider (Zero Top/Bottom Occlusion!)
   -------------------------------------------------------------------------- */
.wp-portal-wrap {
  max-width: 1320px;
  margin: 0 auto;
  padding: 22px 24px 56px;
}

.wp-hero-slider {
  position: relative;
  border-radius: 14px;
  overflow: hidden;
  background: #101824;
  border: 1px solid var(--wp-border);
  box-shadow: 0 12px 32px rgba(10, 16, 26, 0.18);
  margin-bottom: 24px;
}
.wp-slides-track {
  display: grid;
}
.wp-slide {
  grid-area: 1 / 1;
  display: flex;
  flex-direction: column;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.42s ease, visibility 0.42s ease;
}
.wp-slide.active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  z-index: 2;
}
.wp-slide-media {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: clamp(300px, 52vh, 480px);
  padding: 10px 18px;
  overflow: hidden;
  background: #0d1520;
}
.wp-slide-bg-blur {
  position: absolute;
  inset: -24px;
  background-size: cover;
  background-position: center;
  filter: blur(24px) brightness(0.42) saturate(1.12);
  transform: scale(1.08);
  pointer-events: none;
}
.wp-slide img.wp-slide-img {
  position: relative;
  z-index: 1;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: 100%;
  object-fit: contain;
  object-position: center center;
  border-radius: 6px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.45);
  display: block;
}

/* Dedicated Un-Occluded Bottom Caption Bar (Focal Title Centered!) */
.wp-slide-caption {
  position: relative;
  z-index: 3;
  padding: 13px 24px;
  background: linear-gradient(90deg, #192434 0%, #223146 50%, #192434 100%);
  border-top: 1px solid rgba(255, 255, 255, 0.10);
  color: #f1f5f9;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 16px;
}
.wp-slide-left-meta {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.wp-slide-cat {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 3px 11px;
  border-radius: 999px;
  background: #2563eb;
  color: #ffffff;
  font-size: 12.5px;
  font-weight: 800;
}
.wp-slide-meta {
  font-size: 13px;
  color: #b6c5d8;
  font-weight: 600;
}
.wp-slide-center-focus {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
}
.wp-slide-center-focus h2 {
  margin: 0;
  font-size: clamp(19px, 2vw, 25px);
  font-weight: 800;
  line-height: 1.25;
  color: #ffffff;
  letter-spacing: 0.01em;
}
.wp-slide-center-focus h2 a:hover {
  color: #93c5fd;
}
.wp-slide-right-cta {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
}
.wp-slide-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 18px;
  border-radius: 9px;
  background: rgba(255, 255, 255, 0.13);
  border: 1px solid rgba(255, 255, 255, 0.30);
  color: #ffffff;
  font-size: 13.5px;
  font-weight: 700;
  white-space: nowrap;
  transition: all 0.15s ease;
}
.wp-slide-btn:hover {
  background: #2563eb;
  border-color: #3b82f6;
}

.wp-slider-controls {
  background: #141e2c;
  border-top: 1px solid rgba(255, 255, 255, 0.06);
  padding: 7px 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
}
.wp-slider-arrow {
  width: 26px;
  height: 26px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.22);
  background: rgba(255, 255, 255, 0.08);
  color: #e2e8f0;
  font-size: 15px;
  font-weight: 800;
  line-height: 1;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: all 0.15s ease;
}
.wp-slider-arrow:hover {
  background: #2563eb;
  border-color: #60a5fa;
  color: #ffffff;
}
.wp-slider-dots {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.wp-slider-dot {
  width: 22px;
  height: 6px;
  border-radius: 999px;
  border: none;
  background: rgba(255, 255, 255, 0.28);
  cursor: pointer;
  padding: 0;
  transition: all 0.2s ease;
}
.wp-slider-dot.active {
  width: 38px;
  background: #60a5fa;
}

/* --------------------------------------------------------------------------
   3. Signature 2x2 Extra Magazine Category Boxes (Centered Header Emblems)
   -------------------------------------------------------------------------- */
.wp-mag-grid-2x2 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  margin-bottom: 28px;
}

.wp-mag-box {
  background: var(--wp-card);
  border-radius: 13px;
  border: 1px solid var(--wp-border);
  border-top-width: 4px;
  box-shadow: 0 6px 20px rgba(10, 16, 26, 0.07);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.wp-mag-box.box-contest { border-top-color: var(--cat-contest); }
.wp-mag-box.box-gear    { border-top-color: var(--cat-gear); }
.wp-mag-box.box-rules   { border-top-color: var(--cat-rules); }
.wp-mag-box.box-tech    { border-top-color: var(--cat-tech); }

.wp-mag-head {
  padding: 13px 20px;
  background: var(--wp-subtle);
  border-bottom: 1px solid var(--wp-border-soft);
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 10px;
}
.wp-mag-head-sub-left {
  font-size: 12.5px;
  color: var(--wp-ink-500);
  font-weight: 700;
}
.wp-mag-head-center {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  text-align: center;
}
.wp-mag-head-ico {
  width: 28px;
  height: 28px;
  border-radius: 8px;
  background: var(--wp-card-inner);
  border: 1px solid var(--wp-border);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.wp-mag-head h2 {
  margin: 0;
  font-size: 18px;
  font-weight: 800;
  letter-spacing: -0.01em;
}
.box-contest .wp-mag-head h2, .box-contest .wp-mag-head-ico { color: var(--cat-contest); }
.box-gear .wp-mag-head h2,    .box-gear .wp-mag-head-ico    { color: var(--cat-gear); }
.box-rules .wp-mag-head h2,   .box-rules .wp-mag-head-ico   { color: var(--cat-rules); }
.box-tech .wp-mag-head h2,    .box-tech .wp-mag-head-ico    { color: var(--cat-tech); }

.wp-mag-more {
  justify-self: end;
  font-size: 13.5px;
  font-weight: 700;
  color: var(--wp-ink-500);
  transition: color 0.15s ease;
}
.wp-mag-more:hover {
  color: var(--wp-blue);
}

/* Lead Post inside Category Box */
.wp-mag-lead {
  display: block;
  border-bottom: 1px solid var(--wp-border-soft);
}
.wp-mag-lead-thumb {
  display: block;
  aspect-ratio: 16 / 9.4;
  overflow: hidden;
  background: #121b28;
}
.wp-mag-lead-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  display: block;
  transition: transform 0.25s ease;
}
.wp-mag-lead:hover .wp-mag-lead-thumb img {
  transform: scale(1.03);
}
.wp-mag-lead-body {
  padding: 16px 22px 18px;
}
.wp-mag-lead-body h3 {
  margin: 0 0 6px;
  font-size: 18.5px;
  font-weight: 800;
  line-height: 1.38;
  color: var(--wp-ink-900);
}
.wp-mag-lead-body h3 a:hover {
  color: var(--wp-blue);
}
.wp-mag-meta {
  font-size: 13px;
  color: var(--wp-ink-500);
  margin-bottom: 8px;
}
.wp-mag-excerpt {
  margin: 0;
  font-size: 14.5px;
  color: var(--wp-ink-700);
  line-height: 1.65;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* 5-Item Compact Post List inside Category Box */
.wp-mag-list {
  list-style: none;
  margin: 0;
  padding: 6px 22px 14px;
  display: flex;
  flex-direction: column;
}
.wp-mag-list-item {
  display: grid;
  grid-template-columns: 64px 1fr;
  gap: 14px;
  align-items: center;
  padding: 11px 0;
  border-bottom: 1px solid var(--wp-border-soft);
}
.wp-mag-list-item:last-child {
  border-bottom: none;
}
.wp-mag-mini-thumb {
  width: 64px;
  height: 48px;
  border-radius: 6px;
  overflow: hidden;
  background: var(--wp-subtle);
  border: 1px solid var(--wp-border-soft);
  display: flex;
  align-items: center;
  justify-content: center;
}
.wp-mag-mini-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  display: block;
}
.wp-mag-list-info h4 {
  margin: 0 0 3px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.38;
  color: var(--wp-ink-900);
}
.wp-mag-list-info h4 a:hover {
  color: var(--wp-blue);
}
.wp-mag-list-meta {
  font-size: 12.5px;
  color: var(--wp-ink-500);
}

/* --------------------------------------------------------------------------
   4. Integrated Clean Equipment & 1:1 Studio Sub-Portal (Centered Key Icons!)
   -------------------------------------------------------------------------- */
.wp-studio-subbox {
  background: var(--wp-card);
  border: 1px solid var(--wp-border);
  border-top: 4px solid var(--wp-blue);
  border-radius: 14px;
  padding: 24px 24px 26px;
  box-shadow: 0 6px 20px rgba(10, 16, 26, 0.07);
}
.wp-studio-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 10px;
  padding-bottom: 18px;
  border-bottom: 1px solid var(--wp-border-soft);
  margin-bottom: 20px;
}
.wp-studio-emblem {
  width: 38px;
  height: 38px;
  border-radius: 11px;
  background: var(--wp-blue-soft);
  border: 1px solid var(--wp-border);
  color: var(--wp-blue);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.wp-studio-head h2 {
  margin: 0;
  font-size: 20px;
  font-weight: 800;
  color: var(--wp-ink-900);
}
.wp-studio-head-desc {
  font-size: 14px;
  color: var(--wp-ink-500);
  max-width: 780px;
}
.wp-studio-tabs {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 4px;
}
.wp-stab {
  height: 36px;
  padding: 0 16px;
  border-radius: 999px;
  border: 1px solid var(--wp-border);
  background: var(--wp-card-inner);
  color: var(--wp-ink-700);
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: all 0.15s ease;
}
.wp-stab:hover {
  border-color: var(--wp-blue);
  color: var(--wp-blue);
}
.wp-stab.active {
  background: var(--wp-blue);
  border-color: var(--wp-blue);
  color: #ffffff;
}
.wp-spane { display: none; }
.wp-spane.active { display: block; }

.wp-model-cards {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
}
.wp-model-cards.cols-3 {
  grid-template-columns: repeat(3, minmax(0, 310px));
  justify-content: center;
  margin: 0 auto;
}
.wp-model-cards.cols-2 {
  grid-template-columns: repeat(2, minmax(0, 380px));
  justify-content: center;
  margin: 0 auto;
}

.wp-mcard {
  border: 1px solid var(--wp-border);
  border-radius: 12px;
  overflow: hidden;
  background: var(--wp-card-inner);
  display: flex;
  flex-direction: column;
  transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease;
}
.wp-mcard:hover {
  transform: translateY(-2px);
  border-color: var(--wp-blue);
  box-shadow: 0 12px 26px rgba(10, 16, 26, 0.14);
}
.wp-mcard-thumb {
  position: relative;
  aspect-ratio: 16 / 10.5;
  background: #101824;
  overflow: hidden;
  display: block;
}
.wp-mcard-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  display: block;
}
.wp-mcard-part-emblem {
  width: 34px;
  height: 34px;
  margin: -17px auto 0;
  position: relative;
  z-index: 2;
  border-radius: 999px;
  background: var(--wp-card-inner);
  border: 1.5px solid var(--wp-border);
  color: var(--wp-blue);
  box-shadow: 0 4px 10px rgba(10, 16, 26, 0.16);
  display: flex;
  align-items: center;
  justify-content: center;
}
.wp-mcard:hover .wp-mcard-part-emblem {
  background: var(--wp-blue);
  border-color: var(--wp-blue);
  color: #ffffff;
}
.wp-mcard-body {
  padding: 8px 14px 15px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  flex: 1;
}
.wp-mcard-name {
  font-size: 16.5px;
  font-weight: 800;
  color: var(--wp-ink-900);
  margin-bottom: 3px;
}
.wp-mcard-badge-center {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 2px 9px;
  border-radius: 999px;
  background: var(--wp-subtle);
  color: var(--wp-ink-700);
  font-size: 12px;
  font-weight: 700;
  margin-bottom: 5px;
}
.wp-mcard-price {
  font-size: 15px;
  font-weight: 800;
  color: var(--wp-blue);
  margin-bottom: 6px;
}
.wp-mcard-brief {
  font-size: 13px;
  color: var(--wp-ink-500);
  margin-bottom: 12px;
  line-height: 1.48;
}
.wp-mcard-cta {
  margin-top: auto;
  width: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 34px;
  border-radius: 8px;
  background: var(--wp-blue-soft);
  color: var(--wp-blue);
  font-size: 13.5px;
  font-weight: 700;
  transition: background 0.15s ease, color 0.15s ease;
}
.wp-mcard-cta:hover {
  background: var(--wp-blue);
  color: #ffffff;
}

/* --------------------------------------------------------------------------
   5. Native WordPress Category Archive (`archive.php`) & Single Post (`single.php`)
   -------------------------------------------------------------------------- */
.wp-archive-header {
  background: var(--wp-card);
  border: 1px solid var(--wp-border);
  border-left: 5px solid var(--wp-blue);
  border-radius: 12px;
  padding: 22px 26px;
  margin-bottom: 22px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}
.wp-archive-header h1 {
  margin: 0 0 4px;
  font-size: 24px;
  font-weight: 800;
  color: var(--wp-ink-900);
}
.wp-archive-subcats {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 10px;
}
.wp-subcat-pill {
  padding: 5px 13px;
  border-radius: 999px;
  border: 1px solid var(--wp-border);
  background: var(--wp-card-inner);
  font-size: 13.5px;
  font-weight: 700;
  color: var(--wp-ink-700);
}
.wp-subcat-pill:hover, .wp-subcat-pill.active {
  background: var(--wp-blue);
  border-color: var(--wp-blue);
  color: #ffffff;
}

.wp-archive-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}
.wp-post-card {
  background: var(--wp-card);
  border: 1px solid var(--wp-border);
  border-radius: 12px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease;
}
.wp-post-card:hover {
  transform: translateY(-2px);
  border-color: var(--wp-blue);
  box-shadow: 0 12px 26px rgba(10, 16, 26, 0.14);
}
.wp-post-card-media {
  aspect-ratio: 16 / 10;
  background: #101824;
  overflow: hidden;
  display: block;
}
.wp-post-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  display: block;
}
.wp-post-card-body {
  padding: 16px 18px 18px;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.wp-post-card-body h3 {
  margin: 6px 0 8px;
  font-size: 17.5px;
  line-height: 1.4;
  color: var(--wp-ink-900);
}
.wp-post-card-body h3 a:hover { color: var(--wp-blue); }
.wp-post-card-body p {
  margin: 0 0 14px;
  font-size: 14.5px;
  color: var(--wp-ink-700);
  line-height: 1.64;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Single Article Layout */
.wp-single-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 26px;
  align-items: start;
}
.wp-article-paper {
  background: var(--wp-card);
  border: 1px solid var(--wp-border);
  border-radius: 14px;
  padding: 34px 42px 42px;
  box-shadow: 0 6px 22px rgba(10, 16, 26, 0.08);
}
.wp-crumbs {
  font-size: 13.5px;
  color: var(--wp-ink-500);
  margin-bottom: 16px;
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.wp-crumbs a:hover { color: var(--wp-blue); }
.wp-entry-title {
  margin: 8px 0 12px;
  font-size: clamp(25px, 2.4vw, 33px);
  line-height: 1.3;
  font-weight: 800;
  color: var(--wp-ink-900);
}
.wp-entry-meta {
  padding-bottom: 18px;
  margin-bottom: 24px;
  border-bottom: 1px solid var(--wp-border-soft);
  font-size: 14px;
  color: var(--wp-ink-500);
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
}
.wp-edit-link {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 12px;
  border-radius: 6px;
  background: var(--wp-blue-soft);
  border: 1px solid var(--wp-border);
  color: var(--wp-blue);
  font-size: 13px;
  font-weight: 700;
}
.wp-edit-link:hover {
  background: var(--wp-blue);
  color: #ffffff;
}

.wp-entry-content {
  font-size: 16.5px;
  line-height: 1.82;
  color: var(--wp-ink-900);
}
.wp-entry-content h2 {
  margin: 30px 0 12px;
  padding-bottom: 7px;
  border-bottom: 2px solid var(--wp-border-soft);
  font-size: 21.5px;
  font-weight: 800;
  color: var(--wp-ink-900);
}
.wp-entry-content h3 {
  margin: 22px 0 10px;
  font-size: 18px;
  font-weight: 700;
  color: var(--wp-ink-900);
}
.wp-entry-content p, .wp-entry-content li {
  color: var(--wp-ink-700);
}
.wp-entry-content strong {
  color: var(--wp-ink-900);
}
.wp-entry-content a {
  color: var(--wp-blue);
}
.wp-entry-content code {
  padding: 2px 6px;
  border-radius: 5px;
  background: var(--wp-subtle);
  border: 1px solid var(--wp-border-soft);
  font-size: 0.92em;
}
.wp-entry-content img {
  max-width: 100%;
  height: auto;
  border-radius: 10px;
  margin: 12px auto;
  display: block;
}
.wp-entry-content table {
  width: 100%;
  border-collapse: collapse;
  margin: 18px 0;
  font-size: 14.5px;
  background: var(--wp-card-inner);
}
.wp-entry-content th, .wp-entry-content td {
  border: 1px solid var(--wp-border);
  padding: 10px 12px;
  text-align: left;
  color: var(--wp-ink-700);
}
.wp-entry-content th {
  background: var(--wp-subtle);
  color: var(--wp-ink-900);
  font-weight: 800;
}

/* Parsed Divi / Extra Legacy Shortcode Blocks */
.f3k-divi-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px 20px;
  margin: 10px 10px 10px 0;
  border-radius: 9px;
  background: #2563eb;
  color: #ffffff !important;
  font-size: 15px;
  font-weight: 700;
  box-shadow: 0 4px 12px rgba(37, 99, 235, 0.24);
}
.f3k-divi-btn:hover { background: #1d4ed8; }
.f3k-legacy-box {
  margin: 16px 0;
  padding: 16px 20px;
  border-radius: 10px;
  background: var(--wp-subtle);
  border: 1px solid var(--wp-border);
  border-left: 4px solid var(--wp-blue);
  color: var(--wp-ink-700);
}
.f3k-gallery-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin: 18px 0;
}
.f3k-gallery-grid img {
  width: 100%;
  border-radius: 10px;
  border: 1px solid var(--wp-border);
  margin: 0;
}

.wp-sidebar {
  position: sticky;
  top: 90px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.wp-widget-card {
  background: var(--wp-card);
  border: 1px solid var(--wp-border);
  border-radius: 12px;
  padding: 18px 20px;
}
.wp-widget-title {
  margin: 0 0 12px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--wp-border-soft);
  font-size: 15px;
  font-weight: 800;
  color: var(--wp-ink-900);
  text-align: center;
}
.wp-toc-link {
  color: var(--wp-ink-700);
  font-weight: 600;
  line-height: 1.45;
  transition: color 0.14s ease;
}
.wp-toc-link.is-h3 {
  padding-left: 12px;
  color: var(--wp-ink-500);
  font-weight: 500;
}
.wp-toc-link:hover {
  color: var(--wp-blue);
}

/* --------------------------------------------------------------------------
   6. Authentic 3-Column Dark Footer (Centered Focal Icons & Tiles!)
   -------------------------------------------------------------------------- */
.wp-site-footer {
  background: #17202c;
  color: #cbd5e1;
  margin-top: 48px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}
body.f3k-wp-body.theme-dark .wp-site-footer {
  background: #090e16;
}
.wp-footer-widgets {
  max-width: 1320px;
  margin: 0 auto;
  padding: 44px 24px 36px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 36px;
  align-items: start;
}
.wp-fcol {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.wp-fcol h4 {
  margin: 0 0 18px;
  font-size: 14.5px;
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #f1f5f9;
}
.wp-sponsors-grid {
  display: grid;
  grid-template-columns: repeat(2, 122px);
  justify-content: center;
  gap: 14px;
}
.wp-sponsor-tile {
  width: 122px;
  height: 122px;
  background: #e6ecf4;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 10px;
  padding: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.wp-sponsor-tile img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.wp-payment-stack {
  display: flex;
  flex-direction: column;
  gap: 14px;
  align-items: center;
  text-align: center;
}
.wp-payment-stack img {
  height: 50px;
  width: auto;
  object-fit: contain;
}
.wp-qr-box {
  background: #e9eff7;
  padding: 10px;
  border-radius: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.wp-qr-box img {
  width: 190px;
  height: 190px;
  display: block;
}
.wp-footer-bottom {
  background: #101722;
  padding: 16px 24px;
  font-size: 13.5px;
  color: #94a3b8;
}
body.f3k-wp-body.theme-dark .wp-footer-bottom {
  background: #060a10;
}
.wp-footer-bottom-inner {
  max-width: 1320px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}
.wp-footer-links {
  display: flex;
  gap: 18px;
  flex-wrap: wrap;
}
.wp-footer-links a:hover {
  color: #ffffff;
}

@media (max-width: 1040px) {
  .wp-mag-grid-2x2 { grid-template-columns: 1fr; }
  .wp-single-layout { grid-template-columns: 1fr; }
  .wp-model-cards, .wp-model-cards.cols-3, .wp-model-cards.cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .wp-archive-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .wp-footer-widgets { grid-template-columns: 1fr; }
  .wp-slide-caption { grid-template-columns: 1fr; text-align: center; justify-items: center; }
  .wp-slide-right-cta { justify-content: center; }
}
@media (max-width: 680px) {
  .wp-archive-grid, .wp-model-cards, .wp-model-cards.cols-3, .wp-model-cards.cols-2 { grid-template-columns: 1fr; }
  .wp-article-paper { padding: 22px 18px; }
  .wp-mag-head { grid-template-columns: 1fr auto; }
  .wp-mag-head-sub-left { display: none; }
}


/* ==========================================================================
   v12.2 Deep Visual Refactoring: F3K Logo Four-Color Accents, Left Sidebar,
   Zero-Bleed Concentric Image Geometry & Harmonized Borderless Icons
   ========================================================================== */
:root {
  /* Official F3K Logo Quartet Colors */
  --cat-contest: #d02c27;
  --cat-gear: #c78d08;
  --cat-rules: #2765a1;
  --cat-tech: #3ea049;
}
html.theme-dark-root body.f3k-wp-body,
body.f3k-wp-body.theme-dark {
  --cat-contest: #f0544f;
  --cat-gear: #e9bf2c;
  --cat-rules: #58a6ff;
  --cat-tech: #4ec059;
}

/* 1. Hero Slider: Crisp 8px Outer Frame, 0px Padding, Zero Inner Image Radius */
.wp-hero-slider {
  border-radius: 8px;
}
.wp-slide-media {
  height: clamp(290px, 50vh, 468px);
  padding: 0 !important;
  background: #0d1520;
}
.wp-slide-bg-blur {
  inset: -32px;
  filter: blur(30px) brightness(0.46) saturate(1.1);
  transform: scale(1.12);
}
.wp-slide img.wp-slide-img {
  border-radius: 0 !important;
  height: 100%;
  width: auto;
  max-width: 100%;
  object-fit: contain;
  box-shadow: 0 0 38px rgba(0, 0, 0, 0.45);
}

/* 2. 2x2 Magazine Boxes: 3px F3K Logo Top Hairline, Borderless Clean Icons & Uncropped Lead Thumbs */
.wp-mag-box {
  border-radius: 8px;
  border-top-width: 3px;
}
.wp-mag-head-ico {
  width: auto;
  height: auto;
  background: transparent;
  border: none;
  border-radius: 0;
  padding: 0;
}
.wp-mag-lead-thumb {
  position: relative;
  aspect-ratio: 16 / 9.2;
  background: #101824;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.wp-mag-lead-blur {
  position: absolute;
  inset: -20px;
  background-size: cover;
  background-position: center;
  filter: blur(22px) brightness(0.45);
  transform: scale(1.1);
  pointer-events: none;
}
.wp-mag-lead-thumb img {
  position: relative;
  z-index: 1;
  width: auto;
  max-width: 100%;
  height: 100%;
  object-fit: contain;
  border-radius: 0 !important;
}
.wp-mag-mini-thumb {
  border-radius: 4px;
  background: #141e2c;
}
.wp-mag-mini-thumb img {
  border-radius: 0 !important;
}

/* 3. Equipment Showcase Sub-Box: Crisp 8px Concentric Model Cards, No Photo-Overlapping Circle */
.wp-studio-subbox {
  border-radius: 8px;
  border-top: 3px solid #2765a1;
}
.wp-mcard {
  border-radius: 8px;
}
.wp-mcard-thumb {
  border-radius: 0 !important;
  border-bottom: 1px solid var(--wp-border-soft);
}
.wp-mcard-thumb img {
  border-radius: 0 !important;
}
.wp-mcard-body {
  padding: 12px 14px 14px;
}
.wp-mcard-badge-center {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  padding: 3px 9px;
  border-radius: 5px;
}
.wp-mcard-badge-center svg {
  color: var(--wp-blue);
}
.wp-mcard-cta {
  border-radius: 6px;
}

/* 4. Left Sidebar Architecture for Both Single Post & Category Archive */
.wp-single-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 284px;
  gap: 26px;
  align-items: start;
}
.wp-sidebar {
  position: sticky;
  top: 86px;
}
.wp-widget-card {
  border-radius: 8px;
  padding: 16px 18px;
}
.wp-studio-sidecard {
  text-align: center;
  border-top: 3px solid #2765a1;
}
.wp-side-nav-list {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.wp-side-nav-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 11px;
  border-radius: 6px;
  background: var(--wp-card-inner);
  border: 1px solid var(--wp-border-soft);
  color: var(--wp-ink-700);
  font-size: 13.5px;
  font-weight: 700;
  transition: all 0.14s ease;
}
.wp-side-nav-item:hover,
.wp-side-nav-item.active {
  background: var(--wp-blue);
  border-color: var(--wp-blue);
  color: #ffffff;
}
.wp-article-paper {
  border-radius: 8px;
}
.wp-archive-header {
  border-radius: 8px;
  border-left: 4px solid #2765a1;
}
.wp-archive-grid.cols-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.wp-post-card {
  border-radius: 8px;
}
.wp-post-card-media {
  position: relative;
  aspect-ratio: 16 / 9.5;
  background: #101824;
  display: flex;
  align-items: center;
  justify-content: center;
  border-bottom: 1px solid var(--wp-border-soft);
}
.wp-post-card-media img {
  position: relative;
  z-index: 1;
  width: auto;
  max-width: 100%;
  height: 100%;
  object-fit: contain;
  border-radius: 0 !important;
}
.wp-entry-content img,
.f3k-gallery-grid img {
  border-radius: 4px;
  border: 1px solid var(--wp-border);
}

/* 5. Seamless Pure-White Plaques for White-Background Sponsor, Payment & QR Images */
.wp-sponsor-tile {
  background: #ffffff;
  border-radius: 6px;
  border: 1px solid rgba(255, 255, 255, 0.22);
  padding: 10px;
}
.wp-payment-stack img {
  background: #ffffff;
  padding: 6px 14px;
  border-radius: 6px;
  height: 48px;
}
.wp-qr-box {
  background: #ffffff;
  border-radius: 6px;
  padding: 10px;
}

@media (max-width: 1040px) {
  .wp-single-layout {
    grid-template-columns: 1fr;
  }
  .wp-article-paper, .wp-archive-main {
    order: 1;
  }
  .wp-sidebar {
    order: 2;
    position: static;
  }
  .wp-archive-grid.cols-2 {
    grid-template-columns: 1fr;
  }
}

/* ==========================================================================
   v12.4 RBAC VISIBILITY & DISTINCT STAFF-ONLY BUTTON DESIGN (.f3k-staff-only-btn)
   1. Fail-Closed Default: Public visitors NEVER see any [data-f3k-staff-only] element!
   2. When logged in as Admin/Supplier, internal buttons render in an unmistakable
      Amber-Gold Dashed Caution style with [🔒 仅后台] pill — 100% distinct from customer UI!
   ========================================================================== */
html:not(.f3k-staff-authorized) [data-f3k-staff-only] {
  display: none !important;
}
html.f3k-staff-supplier-only [data-f3k-staff-only="admin"] {
  display: none !important;
}

.f3k-staff-only-btn,
a.f3k-staff-only-btn,
button.f3k-staff-only-btn,
.wp-util-pill.f3k-staff-only-btn,
.f3k-uni-pill.f3k-staff-only-btn,
.wp-edit-link.f3k-staff-only-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  padding: 3px 9px 3px 6px !important;
  border-radius: 7px !important;
  border: 1.5px dashed #d97706 !important;
  background: repeating-linear-gradient(
    -45deg,
    rgba(245, 158, 11, 0.14) 0px,
    rgba(245, 158, 11, 0.14) 6px,
    rgba(254, 243, 199, 0.72) 6px,
    rgba(254, 243, 199, 0.72) 12px
  ) !important;
  color: #92400e !important;
  font-size: 12.5px !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
  text-decoration: none !important;
  box-shadow: 0 1px 4px rgba(217, 119, 6, 0.18) !important;
  cursor: pointer !important;
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease !important;
}

html:not(.f3k-staff-authorized) .f3k-staff-only-btn,
html.f3k-staff-supplier-only .f3k-staff-only-btn[data-f3k-staff-only="admin"] {
  display: none !important;
}

.f3k-staff-only-btn:hover {
  border-color: #b45309 !important;
  color: #78350f !important;
  box-shadow: 0 3px 10px rgba(217, 119, 6, 0.28) !important;
  transform: translateY(-0.5px);
}

.f3k-staff-lock-tag {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  padding: 1.5px 5px;
  border-radius: 4px;
  background: #f59e0b;
  color: #111827 !important;
  font-size: 10.5px;
  font-weight: 900;
  letter-spacing: 0.02em;
  white-space: nowrap;
  flex-shrink: 0;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.18);
}

/* Dark theme & dark site footers: luminous amber-gold dashed caution styling */
body.theme-dark .f3k-staff-only-btn,
html.theme-dark-root .f3k-staff-only-btn,
.f3k-uni-header .f3k-staff-only-btn,
.wp-util-bar .f3k-staff-only-btn,
.wp-site-footer .f3k-staff-only-btn,
.site-footer .f3k-staff-only-btn {
  border: 1.5px dashed #f59e0b !important;
  background: repeating-linear-gradient(
    -45deg,
    rgba(245, 158, 11, 0.20) 0px,
    rgba(245, 158, 11, 0.20) 6px,
    rgba(120, 53, 15, 0.42) 6px,
    rgba(120, 53, 15, 0.42) 12px
  ) !important;
  color: #fde68a !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.35) !important;
}

body.theme-dark .f3k-staff-only-btn:hover,
html.theme-dark-root .f3k-staff-only-btn:hover,
.wp-site-footer .f3k-staff-only-btn:hover,
.site-footer .f3k-staff-only-btn:hover {
  border-color: #fbbf24 !important;
  color: #fef3c7 !important;
  box-shadow: 0 3px 12px rgba(245, 158, 11, 0.35) !important;
}

/* Local-Only Developer Role Switcher Pill (NEVER rendered on live f3kf3k.com!) */
.f3k-local-role-switcher {
  position: fixed;
  left: 14px;
  bottom: 14px;
  z-index: 380;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 8px;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.94);
  border: 1.5px dashed rgba(245, 158, 11, 0.72);
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.35);
  backdrop-filter: blur(8px);
  font-family: "Inter", "PingFang SC", "Microsoft YaHei", sans-serif;
}
.f3k-local-role-switcher .f3k-lrs-tag {
  font-size: 11px;
  font-weight: 800;
  color: #94a3b8;
  padding: 0 4px;
  white-space: nowrap;
}
.f3k-local-role-switcher .f3k-lrs-btn {
  appearance: none;
  border: 1px solid rgba(148, 163, 184, 0.28);
  background: rgba(30, 41, 59, 0.85);
  color: #cbd5e1;
  border-radius: 999px;
  padding: 4px 10px;
  font-size: 12px;
  font-weight: 800;
  cursor: pointer;
  transition: all 0.15s ease;
  white-space: nowrap;
}
.f3k-local-role-switcher .f3k-lrs-btn.active.is-admin-view {
  background: #f59e0b;
  border-color: #fbbf24;
  color: #111827;
}
.f3k-local-role-switcher .f3k-lrs-btn.active.is-guest-view {
  background: #10b981;
  border-color: #34d399;
  color: #052e16;
}
@media (max-width: 768px) {
  .f3k-local-role-switcher {
    bottom: 78px;
    left: 10px;
    transform: scale(0.92);
    transform-origin: left bottom;
  }
}

.f3k-uni-header .f3k-staff-only-btn > span:not(.f3k-staff-lock-tag),
.wp-util-bar .f3k-staff-only-btn > span:not(.f3k-staff-lock-tag),
.wp-site-footer .f3k-staff-only-btn > span:not(.f3k-staff-lock-tag),
body.theme-dark .f3k-staff-only-btn > span:not(.f3k-staff-lock-tag),
html.theme-dark-root .f3k-staff-only-btn > span:not(.f3k-staff-lock-tag) {
  color: #fef3c7 !important;
}

/* ==========================================================================
   v12.5 FOOTER PAYMENT BADGES FIX & EDITORIAL SPLIT-STAGE HERO SHOWCASE
   1. Fixes white-on-white invisible WeChat Pay / Alipay transparent PNG logos
      by placing them on authentic WeChat Green (#07C160) & Alipay Blue (#1677FF) badges.
   2. Upgrades the coarse blur-winged Hero Slider into a magazine-grade Split-Stage
      Showcase (Editorial Story Cabin + Uncropped Poster / Full-Bleed DSLR Stage + Progress Dock).
   ========================================================================== */
.wp-payment-stack {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 10px 12px;
  max-width: 340px;
  margin: 0 auto;
}
.wp-payment-stack img {
  height: 44px !important;
  width: 146px !important;
  display: block !important;
  object-fit: contain;
  padding: 8px 16px !important;
  border-radius: 10px !important;
  background: linear-gradient(135deg, #1e293b 0%, #0f172a 100%) !important;
  border: 1px solid rgba(255, 255, 255, 0.18) !important;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.18) !important;
  transition: transform 0.18s ease, box-shadow 0.18s ease !important;
}
.wp-payment-stack img[alt*="微信"],
.wp-payment-stack img[src*="wechat"] {
  background: linear-gradient(135deg, #07c160 0%, #059a4c 100%) !important;
  border-color: rgba(255, 255, 255, 0.26) !important;
}
.wp-payment-stack img[alt*="支付宝"],
.wp-payment-stack img[alt*="Alipay"],
.wp-payment-stack img[src*="alipay"],
.wp-payment-stack img[src*="b9c9ed2a"] {
  background: linear-gradient(135deg, #1677ff 0%, #0d5bdb 100%) !important;
  border-color: rgba(255, 255, 255, 0.26) !important;
}
.wp-payment-stack img:hover {
  transform: translateY(-1.5px);
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.36), inset 0 1px 0 rgba(255, 255, 255, 0.28) !important;
}
.wp-payment-stack p {
  flex: 1 1 100%;
  margin: 4px 0 0 !important;
}
.wp-pay-intl-pills {
  flex: 1 1 100%;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 2px;
}
.wp-pay-intl-pills span {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.03em;
  color: #cbd5e1;
  background: rgba(255, 255, 255, 0.07);
  border: 1px solid rgba(255, 255, 255, 0.12);
  padding: 2px 8px;
  border-radius: 999px;
}

/* --- Editorial Split-Stage Hero Showcase --- */
.wp-hero-slider.wp-hero-editorial {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  background: #ffffff;
  border: 1px solid #d8e1ec;
  box-shadow: 0 14px 36px rgba(15, 26, 42, 0.08);
  margin-bottom: 26px;
}
body.f3k-wp-body.theme-dark .wp-hero-slider.wp-hero-editorial,
html.theme-dark-root .wp-hero-slider.wp-hero-editorial {
  background: #121a26;
  border-color: #243246;
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.42);
}

.wp-hero-editorial .wp-slides-track {
  display: grid;
}

.wp-hero-editorial .wp-slide {
  grid-area: 1 / 1;
  display: grid;
  grid-template-columns: minmax(360px, 43%) 1fr;
  min-height: 416px;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.45s cubic-bezier(0.22, 1, 0.36, 1), visibility 0.45s ease;
}
.wp-hero-editorial .wp-slide.active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  z-index: 2;
}

.wp-hero-story {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 34px 36px 30px 38px;
  background: linear-gradient(155deg, #f8fafd 0%, #eef3f9 100%);
  border-right: 1px solid #e2e9f2;
  position: relative;
}
body.f3k-wp-body.theme-dark .wp-hero-story,
html.theme-dark-root .wp-hero-story {
  background: linear-gradient(155deg, #141e2d 0%, #0f1723 100%);
  border-right-color: #223044;
}

.wp-hero-eyebrow {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 14px;
}
.wp-hero-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 11px;
  border-radius: 999px;
  background: rgba(26, 115, 232, 0.10);
  border: 1px solid rgba(26, 115, 232, 0.24);
  color: #1558b0;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.02em;
}
body.f3k-wp-body.theme-dark .wp-hero-badge,
html.theme-dark-root .wp-hero-badge {
  background: rgba(59, 130, 246, 0.16);
  border-color: rgba(96, 165, 250, 0.32);
  color: #93c5fd;
}
.wp-hero-badge.is-green {
  background: rgba(30, 142, 62, 0.10);
  border-color: rgba(30, 142, 62, 0.25);
  color: #166534;
}
body.f3k-wp-body.theme-dark .wp-hero-badge.is-green,
html.theme-dark-root .wp-hero-badge.is-green {
  background: rgba(52, 211, 153, 0.14);
  border-color: rgba(52, 211, 153, 0.30);
  color: #6ee7b7;
}
.wp-hero-date {
  font-size: 12.5px;
  font-weight: 600;
  color: #64748b;
}
body.f3k-wp-body.theme-dark .wp-hero-date,
html.theme-dark-root .wp-hero-date {
  color: #94a3b8;
}

.wp-hero-title {
  margin: 0 0 8px;
  font-size: clamp(23px, 2.15vw, 30px);
  font-weight: 900;
  line-height: 1.24;
  letter-spacing: -0.01em;
  color: #0f172a;
}
.wp-hero-title a {
  color: inherit;
  text-decoration: none;
}
.wp-hero-title a:hover {
  color: #1a73e8;
}
body.f3k-wp-body.theme-dark .wp-hero-title,
html.theme-dark-root .wp-hero-title {
  color: #f8fafc;
}
body.f3k-wp-body.theme-dark .wp-hero-title a:hover,
html.theme-dark-root .wp-hero-title a:hover {
  color: #60a5fa;
}

.wp-hero-sub {
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #3b76bc;
  margin-bottom: 12px;
}
body.f3k-wp-body.theme-dark .wp-hero-sub,
html.theme-dark-root .wp-hero-sub {
  color: #7dd3fc;
}

.wp-hero-desc {
  margin: 0 0 18px;
  font-size: 14.5px;
  line-height: 1.68;
  color: #475569;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
body.f3k-wp-body.theme-dark .wp-hero-desc,
html.theme-dark-root .wp-hero-desc {
  color: #cbd5e1;
}

.wp-hero-specs {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-bottom: 22px;
}
.wp-hero-specs span {
  font-size: 12px;
  font-weight: 700;
  padding: 4px 10px;
  border-radius: 6px;
  background: #ffffff;
  border: 1px solid #d5dfec;
  color: #334155;
}
body.f3k-wp-body.theme-dark .wp-hero-specs span,
html.theme-dark-root .wp-hero-specs span {
  background: rgba(30, 41, 59, 0.78);
  border-color: #2d3e56;
  color: #dbeafe;
}

.wp-hero-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.wp-hero-btn-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 10px 20px;
  border-radius: 9px;
  background: #1a73e8;
  color: #ffffff !important;
  font-size: 14px;
  font-weight: 800;
  text-decoration: none !important;
  box-shadow: 0 6px 16px rgba(26, 115, 232, 0.24);
  transition: background 0.16s ease, transform 0.16s ease, box-shadow 0.16s ease;
}
.wp-hero-btn-primary:hover {
  background: #1558b0;
  transform: translateY(-1px);
  box-shadow: 0 8px 20px rgba(26, 115, 232, 0.34);
}
.wp-hero-btn-ghost {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 9px 16px;
  border-radius: 9px;
  background: rgba(255, 255, 255, 0.85);
  border: 1px solid #cbd5e1;
  color: #1e293b !important;
  font-size: 13.5px;
  font-weight: 700;
  text-decoration: none !important;
  transition: all 0.16s ease;
}
.wp-hero-btn-ghost:hover {
  border-color: #1a73e8;
  color: #1a73e8 !important;
}
body.f3k-wp-body.theme-dark .wp-hero-btn-ghost,
html.theme-dark-root .wp-hero-btn-ghost {
  background: rgba(30, 41, 59, 0.72);
  border-color: #334155;
  color: #e2e8f0 !important;
}
body.f3k-wp-body.theme-dark .wp-hero-btn-ghost:hover,
html.theme-dark-root .wp-hero-btn-ghost:hover {
  border-color: #60a5fa;
  color: #93c5fd !important;
}

.wp-hero-visual {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  min-height: 416px;
  background: #0f1724;
  text-decoration: none;
}
.wp-hero-visual.is-photo-frame img {
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  object-fit: cover;
  object-position: center;
  transition: transform 0.65s cubic-bezier(0.22, 1, 0.36, 1);
}
.wp-hero-editorial .wp-slide.active .wp-hero-visual.is-photo-frame:hover img {
  transform: scale(1.025);
}
.wp-hero-visual.is-poster-frame {
  background: radial-gradient(circle at 50% 35%, #e6f0fb 0%, #cfe0f5 100%);
  padding: 14px 18px;
}
body.f3k-wp-body.theme-dark .wp-hero-visual.is-poster-frame,
html.theme-dark-root .wp-hero-visual.is-poster-frame {
  background: radial-gradient(circle at 50% 35%, #1d2d44 0%, #111b2a 100%);
}
.wp-hero-visual.is-poster-frame img {
  position: relative;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 392px;
  object-fit: contain;
  border-radius: 10px;
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.18);
}
.wp-hero-visual-tag {
  position: absolute;
  right: 14px;
  bottom: 14px;
  z-index: 3;
  padding: 5px 11px;
  border-radius: 999px;
  background: rgba(15, 23, 42, 0.72);
  backdrop-filter: blur(6px);
  border: 1px solid rgba(255, 255, 255, 0.18);
  color: #f8fafc;
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: 0.02em;
}

.wp-hero-dock {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr)) auto;
  align-items: stretch;
  background: #f1f5fa;
  border-top: 1px solid #dce4ef;
}
body.f3k-wp-body.theme-dark .wp-hero-dock,
html.theme-dark-root .wp-hero-dock {
  background: #0d141f;
  border-top-color: #1f2c3f;
}

.wp-hero-tab {
  appearance: none;
  border: none;
  border-right: 1px solid #e1e8f2;
  background: transparent;
  padding: 12px 16px 11px;
  text-align: left;
  cursor: pointer;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 2px;
  transition: background 0.16s ease;
}
body.f3k-wp-body.theme-dark .wp-hero-tab,
html.theme-dark-root .wp-hero-tab {
  border-right-color: #1b2738;
}
.wp-hero-tab:hover {
  background: rgba(26, 115, 232, 0.05);
}
.wp-hero-tab.active {
  background: #ffffff;
}
body.f3k-wp-body.theme-dark .wp-hero-tab.active,
html.theme-dark-root .wp-hero-tab.active {
  background: #162233;
}
.wp-hero-tab::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  height: 2.5px;
  width: 0%;
  background: #1a73e8;
}
.wp-hero-tab.active::before {
  width: 100%;
  transition: width 6.5s linear;
}
.wp-hero-slider.is-paused .wp-hero-tab.active::before {
  transition: none;
  width: 100%;
}

.wp-hero-tab-num {
  font-size: 11px;
  font-weight: 800;
  color: #64748b;
  letter-spacing: 0.04em;
}
.wp-hero-tab.active .wp-hero-tab-num {
  color: #1a73e8;
}
body.f3k-wp-body.theme-dark .wp-hero-tab.active .wp-hero-tab-num,
html.theme-dark-root .wp-hero-tab.active .wp-hero-tab-num {
  color: #60a5fa;
}
.wp-hero-tab-label {
  font-size: 13px;
  font-weight: 800;
  color: #334155;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.wp-hero-tab.active .wp-hero-tab-label {
  color: #0f172a;
}
body.f3k-wp-body.theme-dark .wp-hero-tab-label,
html.theme-dark-root .wp-hero-tab-label {
  color: #94a3b8;
}
body.f3k-wp-body.theme-dark .wp-hero-tab.active .wp-hero-tab-label,
html.theme-dark-root .wp-hero-tab.active .wp-hero-tab-label {
  color: #f8fafc;
}

.wp-hero-dock-arrows {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 0 14px;
}
.wp-hero-dock-arrows .wp-slider-arrow {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  border: 1px solid #cbd5e1;
  background: #ffffff;
  color: #1e293b;
  font-size: 17px;
  font-weight: 800;
  line-height: 1;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: all 0.15s ease;
}
.wp-hero-dock-arrows .wp-slider-arrow:hover {
  border-color: #1a73e8;
  color: #1a73e8;
}
body.f3k-wp-body.theme-dark .wp-hero-dock-arrows .wp-slider-arrow,
html.theme-dark-root .wp-hero-dock-arrows .wp-slider-arrow {
  background: #162233;
  border-color: #2b3b52;
  color: #e2e8f0;
}

@media (max-width: 980px) {
  .wp-hero-editorial .wp-slide {
    grid-template-columns: 1fr;
    min-height: auto;
  }
  .wp-hero-visual {
    order: -1;
    min-height: 260px;
  }
  .wp-hero-story {
    padding: 22px 22px 20px;
    border-right: none;
    border-top: 1px solid #e2e9f2;
  }
  .wp-hero-dock {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .wp-hero-dock-arrows {
    display: none;
  }
}

/* ==========================================================================
   v12.9 Softened Light Aircraft Selection & Elevated Brightened Dark Theme
   ========================================================================== */

/* 1. Light Mode: Tone down aircraft selection cards, white-studio photos & Hero white surfaces */
:root {
  --wp-bg: #d1dbe7;
  --wp-card: #e2eaf3;
  --wp-card-inner: #dce5f0;
  --wp-subtle: #d4dfed;
}

html:not(.theme-dark-root) body.f3k-wp-body:not(.theme-dark) .wp-mcard {
  background: #dbe4f0;
  border-color: #b4c4d9;
}

html:not(.theme-dark-root) body.f3k-wp-body:not(.theme-dark) .wp-mcard:hover {
  background: #d4dfee;
}

html:not(.theme-dark-root) body.f3k-wp-body:not(.theme-dark) .wp-mcard-thumb {
  background: #d3deec;
}

html:not(.theme-dark-root) body.f3k-wp-body:not(.theme-dark) .wp-mcard-thumb img {
  filter: brightness(0.91) contrast(1.04);
}

html:not(.theme-dark-root) body.f3k-wp-body:not(.theme-dark) .wp-mcard-part-emblem {
  background: #e1eaf4;
}

html:not(.theme-dark-root) body.f3k-wp-body:not(.theme-dark) .wp-hero-slider.wp-hero-editorial {
  background: #e1eaf4;
  border-color: #bdcce0;
}

html:not(.theme-dark-root) body.f3k-wp-body:not(.theme-dark) .wp-hero-story {
  background: linear-gradient(155deg, #e5edf6 0%, #dae4f0 100%);
  border-right-color: #c5d3e5;
}

html:not(.theme-dark-root) body.f3k-wp-body:not(.theme-dark) .wp-hero-specs span {
  background: #d7e2ef;
  border-color: #BCCBE0;
  color: #26364a;
}

html:not(.theme-dark-root) body.f3k-wp-body:not(.theme-dark) .wp-hero-btn-ghost {
  background: #d7e2ef;
  border-color: #b6c6dc;
}

html:not(.theme-dark-root) body.f3k-wp-body:not(.theme-dark) .wp-hero-dock {
  background: #d6e1ee;
  border-top-color: #c1cfe2;
}

html:not(.theme-dark-root) body.f3k-wp-body:not(.theme-dark) .wp-hero-tab.active {
  background: #e3ebf5;
}

html:not(.theme-dark-root) body.f3k-wp-body:not(.theme-dark) .wp-hero-dock-arrows .wp-slider-arrow {
  background: #e1eaf4;
  border-color: #b8c8dd;
}

/* 2. Dark Mode: Elevated Titanium-Slate Brightened Dark Palette */
html.theme-dark-root body.f3k-wp-body,
body.f3k-wp-body.theme-dark {
  --wp-bg: #1e293b;
  --wp-card: #273549;
  --wp-card-inner: #304158;
  --wp-subtle: #2d3e54;
  --wp-slate-top: #182232;
  --wp-slate-nav: #223044;
  --wp-ink-900: #f3f7fc;
  --wp-ink-700: #dae4f2;
  --wp-ink-500: #a6b8d0;
  --wp-border: #415776;
  --wp-border-soft: #364965;
  --wp-blue: #66b2ff;
  --wp-blue-soft: rgba(102, 178, 255, 0.18);
  --wp-dropdown-bg: linear-gradient(180deg, #253449 0%, #2c3e56 100%);
  --wp-dropdown-hover: rgba(102, 178, 255, 0.20);
}

body.f3k-wp-body.theme-dark .wp-hero-slider.wp-hero-editorial,
html.theme-dark-root .wp-hero-slider.wp-hero-editorial {
  background: #253448;
  border-color: #3f5574;
  box-shadow: 0 16px 38px rgba(8, 13, 23, 0.38);
}

body.f3k-wp-body.theme-dark .wp-hero-story,
html.theme-dark-root .wp-hero-story {
  background: linear-gradient(155deg, #2a3b52 0%, #233246 100%);
  border-right-color: #3b506e;
}

body.f3k-wp-body.theme-dark .wp-hero-specs span,
html.theme-dark-root .wp-hero-specs span {
  background: rgba(52, 71, 98, 0.85);
  border-color: #486082;
  color: #e2ecfa;
}

body.f3k-wp-body.theme-dark .wp-hero-btn-ghost,
html.theme-dark-root .wp-hero-btn-ghost {
  background: rgba(52, 71, 98, 0.82);
  border-color: #4a6285;
  color: #edf3fb !important;
}

body.f3k-wp-body.theme-dark .wp-hero-visual.is-poster-frame,
html.theme-dark-root .wp-hero-visual.is-poster-frame {
  background: radial-gradient(circle at 50% 35%, #2f435e 0%, #202e42 100%);
}

body.f3k-wp-body.theme-dark .wp-hero-dock,
html.theme-dark-root .wp-hero-dock {
  background: #202d40;
  border-top-color: #384c68;
}

body.f3k-wp-body.theme-dark .wp-hero-tab,
html.theme-dark-root .wp-hero-tab {
  border-right-color: #334660;
}

body.f3k-wp-body.theme-dark .wp-hero-tab.active,
html.theme-dark-root .wp-hero-tab.active {
  background: #2d3e55;
}

body.f3k-wp-body.theme-dark .wp-hero-dock-arrows .wp-slider-arrow,
html.theme-dark-root .wp-hero-dock-arrows .wp-slider-arrow {
  background: #2c3d54;
  border-color: #465e80;
  color: #eef4fc;
}

body.f3k-wp-body.theme-dark .wp-site-footer,
html.theme-dark-root .wp-site-footer {
  background: #182334;
  border-top-color: #364965;
}
/* === v13.0 PORTAL COLOR ESSENCE & 1400PX ALIGNMENT === */
.wp-top-utility-inner,
.wp-masthead-inner,
.wp-portal-wrap {
  max-width: 1400px !important;
}

/* Hero Story Eyebrow Wing Accent & Active Progress Dock Color Spar */
.wp-hero-badge {
  position: relative;
  padding-left: 14px;
}

.wp-hero-badge::before {
  content: "";
  position: absolute;
  left: 6px;
  top: 26%;
  bottom: 26%;
  width: 4px;
  border-radius: 1px;
  background: #ef4444;
  transform: skewX(-20deg);
}

.wp-hero-dock-item.active {
  border-color: rgba(102, 178, 255, 0.52) !important;
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.28);
}

.wp-hero-dock-item.active::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 3px;
  background: linear-gradient(90deg, #d02c27 0%, #ec6830 28%, #e9bf2c 54%, #3ea049 78%, #38bdf8 100%);
}

/* 2x2 Magazine Box Distinct Color Wing Identities */
.wp-mag-box {
  position: relative;
  overflow: hidden;
}

.wp-mag-box.box-contest { --mag-c1: #d02c27; --mag-c2: #ec6830; }
.wp-mag-box.box-gear    { --mag-c1: #2563eb; --mag-c2: #38bdf8; }
.wp-mag-box.box-rules   { --mag-c1: #d97706; --mag-c2: #eab308; }
.wp-mag-box.box-tech    { --mag-c1: #16a34a; --mag-c2: #4ade80; }

.wp-mag-box::before {
  content: "";
  display: block;
  height: 3.5px;
  width: 100%;
  background: linear-gradient(90deg, var(--mag-c1, #2563eb) 0%, var(--mag-c2, #38bdf8) 42%, transparent 42.3%);
}

.wp-mag-head-center h2 {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.wp-mag-head-center h2::after {
  content: "";
  display: inline-block;
  width: 6px;
  height: 13px;
  border-radius: 1.5px;
  background: var(--mag-c1, #2563eb);
  transform: skewX(-22deg);
}
