.jq-shell[data-redesign] .ck5 {
  --ck6-ink: #181512;
  --ck6-muted: #756e68;
  --ck6-line: #e9e0d8;
  --ck6-paper: #fdfaf6;
  --ck6-card: #fff;
  --ck6-tint: #fff7f1;
  --ck6-accent: #e8502f;
  min-height: 100svh;
  padding-bottom: 92px;
  color: var(--ck6-ink);
  background: var(--ck6-paper);
  font-family: "Noto Sans SC", "PingFang SC", "Microsoft YaHei UI", sans-serif;
  font-size: 15px;
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
}

.jq-shell[data-redesign] .ck5 *,
.jq-shell[data-redesign] .ck5 *::before,
.jq-shell[data-redesign] .ck5 *::after { box-sizing: border-box; }
.jq-shell[data-redesign] .ck5 :is(button, input, select) { font: inherit; }
.jq-shell[data-redesign] .ck5 :is(h1, h2, h3, p, dl, dd) { margin: 0; }
.jq-shell[data-redesign] .ck5 button { color: inherit; }
.jq-shell[data-redesign] .ck5 button:focus-visible { outline: 2px solid var(--ck6-accent); outline-offset: 3px; }

.jq-shell[data-redesign] .ck5-header {
  position: sticky;
  top: 0;
  z-index: 20;
  height: 58px;
  padding: 0 12px;
  grid-template-columns: 44px 1fr 44px;
  background: rgba(253, 250, 246, .94);
  border-bottom: 1px solid rgba(233, 224, 216, .65);
  backdrop-filter: blur(12px);
}
.jq-shell[data-redesign] .ck5-header h1 {
  color: var(--ck6-ink);
  font-family: "Noto Serif SC", "Songti SC", STSong, SimSun, serif !important;
  font-size: 22px !important;
  font-weight: 800 !important;
  letter-spacing: -.03em;
}
.jq-shell[data-redesign] .ck5-header button { width: 42px; height: 42px; border-radius: 50%; }
.jq-shell[data-redesign] .ck5-content { padding: 14px 16px 28px; }

.jq-shell[data-redesign] .ck5-hero {
  height: 150px;
  padding: 23px 22px;
  border: 1px solid #f0d7c9;
  border-radius: 18px;
  background: #fff8f3;
  box-shadow: 0 10px 28px rgba(75, 43, 27, .055);
}
.jq-shell[data-redesign] .ck5-hero > div { max-width: 62%; }
.jq-shell[data-redesign] .ck5-hero h2 {
  max-width: 230px;
  margin: 0 0 10px;
  color: var(--ck6-ink);
  font-family: "Noto Serif SC", "Songti SC", STSong, SimSun, serif !important;
  font-size: 21px;
  font-weight: 800;
  line-height: 1.38;
  letter-spacing: -.025em;
}
.jq-shell[data-redesign] .ck5-hero p { color: var(--ck6-muted); font-size: 14px; line-height: 1.5; }
.jq-shell[data-redesign] .ck5 img.ck5-prize { width: 118px !important; height: 126px !important; margin-right: -6px; }
.jq-shell[data-redesign] .ck5-confetti-left,
.jq-shell[data-redesign] .ck5-confetti-right { display: none; }

.jq-shell[data-redesign] .ck5-steps {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 18px 38px 22px;
}
.jq-shell[data-redesign] .ck5-steps li { display: grid; grid-template-rows: 26px 20px; gap: 4px; font-size: 13px; }
.jq-shell[data-redesign] .ck5-steps li:not(:last-child)::after {
  top: 12px;
  left: calc(50% + 20px);
  width: calc(100% - 40px);
  background: #d9d0c9;
}
.jq-shell[data-redesign] .ck5-steps i { width: 26px; height: 26px; background: #c7c1bc; font-size: 13px; font-weight: 700; }
.jq-shell[data-redesign] .ck5-steps [aria-current] { color: var(--ck6-accent); font-weight: 600; }
.jq-shell[data-redesign] .ck5-steps [aria-current] i { background: var(--ck6-accent); }

.jq-shell[data-redesign] .ck5-section { margin: 0 0 20px; }
.jq-shell[data-redesign] .ck5-section > h2 {
  margin: 0 2px 10px;
  color: var(--ck6-ink);
  font-family: "Noto Serif SC", "Songti SC", STSong, SimSun, serif !important;
  font-size: 19px;
  font-weight: 800;
  line-height: 1.45;
  letter-spacing: -.025em;
}
.jq-shell[data-redesign] .ck5-card { border: 1px solid var(--ck6-line); border-radius: 15px; background: var(--ck6-card); box-shadow: 0 7px 20px rgba(69, 46, 30, .035); }

.jq-shell[data-redesign] .ck5-address {
  min-height: 86px;
  padding: 14px 16px;
  gap: 13px;
}
.jq-shell[data-redesign] .ck5-address > span:nth-child(2) { gap: 6px; }
.jq-shell[data-redesign] .ck5-address b { color: var(--ck6-ink); font-size: 15px; font-weight: 650; line-height: 1.45; }
.jq-shell[data-redesign] .ck5-address small { color: var(--ck6-muted); font-size: 13px; line-height: 1.55; }

.jq-shell[data-redesign] .ck5-number-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  min-height: 74px;
  overflow: hidden;
  border: 1px solid #f0d7c9;
  border-radius: 15px;
  background: var(--ck6-tint);
}
.jq-shell[data-redesign] .ck5-number-card p {
  min-width: 0;
  padding: 16px 20px;
  color: var(--ck6-ink);
  font: 700 22px/1.35 "Archivo Variable", "Microsoft YaHei UI", sans-serif;
  letter-spacing: .07em;
  overflow-wrap: anywhere;
}
.jq-shell[data-redesign] .ck5-number-card button {
  display: flex;
  align-items: center;
  gap: 5px;
  min-height: 38px;
  margin-right: 9px;
  padding: 8px 12px 8px 17px;
  border: 0;
  border-left: 1px solid #eed7ca;
  background: transparent;
  color: var(--ck6-accent);
  font-size: 14px;
  font-weight: 650;
  white-space: nowrap;
}

.jq-shell[data-redesign] .ck5-runtime-delivery { display: none !important; }
.jq-shell[data-redesign] .ck5-runtime-number-section {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}
.jq-shell[data-redesign] .ck5-runtime-number-section > h2 { grid-column: 1 / -1; }
.jq-shell[data-redesign] .ck5-runtime-number-section > p { min-width: 0; min-height: 74px; padding: 20px; border: 1px solid #f0d7c9; border-right: 0; border-radius: 15px 0 0 15px; background: var(--ck6-tint); color: var(--ck6-ink); font: 700 22px/1.35 "Archivo Variable", "Microsoft YaHei UI", sans-serif; letter-spacing: .07em; overflow-wrap: anywhere; }
.jq-shell[data-redesign] .ck5-runtime-number-section > button { display: flex; align-items: center; align-self: stretch; gap: 5px; min-height: 74px; padding: 8px 15px; border: 1px solid #f0d7c9; border-left: 1px solid #eed7ca; border-radius: 0 15px 15px 0; background: var(--ck6-tint); color: var(--ck6-accent); font-size: 14px; font-weight: 650; white-space: nowrap; }

.jq-shell[data-redesign] .ck5-runtime-three-steps li:nth-child(2) { display: none; }
.jq-shell[data-redesign] .ck5-runtime-three-steps li:nth-child(3) i { font-size: 0; }
.jq-shell[data-redesign] .ck5-runtime-three-steps li:nth-child(3) i::after { content: "2"; font-size: 13px; }
.jq-shell[data-redesign] .ck5-runtime-three-steps li:nth-child(3) span { font-size: 0; }
.jq-shell[data-redesign] .ck5-runtime-three-steps li:nth-child(3) span::after { content: "完成"; font-size: 13px; }

.jq-shell[data-redesign] .ck5-product {
  display: grid;
  grid-template-columns: 84px minmax(0, 1fr) auto;
  min-height: 132px;
  padding: 13px 15px;
  gap: 15px;
}
.jq-shell[data-redesign] .ck5-product > img { width: 84px !important; height: 104px !important; border-radius: 9px; background: #f5f0eb; object-fit: contain; }
.jq-shell[data-redesign] .ck5-product > div:nth-child(2) { align-self: center; }
.jq-shell[data-redesign] .ck5-product h3 { margin: 0 0 8px; font-size: 16px; font-weight: 700; line-height: 1.4; }
.jq-shell[data-redesign] .ck5-product strong { color: var(--ck6-accent); font: 500 22px/1.35 "Archivo Variable", "Microsoft YaHei UI", sans-serif; }
.jq-shell[data-redesign] .ck5-product strong small { font-family: inherit; font-size: 12px; }
.jq-shell[data-redesign] .ck5-product p { margin: 8px 0 0; color: var(--ck6-muted); font-size: 12px; }
.jq-shell[data-redesign] .ck5-quantity { position: static; align-self: center; gap: 8px; }
.jq-shell[data-redesign] .ck5-quantity button { width: 34px; height: 34px; }
.jq-shell[data-redesign] .ck5-quantity b { min-width: 18px; font: 600 16px/1 "Archivo Variable", sans-serif; }

.jq-shell[data-redesign] .ck5-fees { padding: 8px 18px 10px; }
.jq-shell[data-redesign] .ck5-fees > div { min-height: 39px; padding: 9px 0; border-color: #eee7e1; font-size: 14px; }
.jq-shell[data-redesign] .ck5-fees dt { color: var(--ck6-muted); }
.jq-shell[data-redesign] .ck5-fees dd { color: var(--ck6-ink); font-weight: 600; }
.jq-shell[data-redesign] .ck5-fees .ck5-freight small { margin-top: 5px; color: #8a817a; font-size: 11px; }
.jq-shell[data-redesign] .ck5-fees .ck5-total { border-top: 1px solid #eee7e1; font-size: 15px; }
.jq-shell[data-redesign] .ck5-fees .ck5-total dd { color: var(--ck6-accent); font-size: 18px; }

.jq-shell[data-redesign] .ck5-agree { margin: 17px 4px 11px; color: #625b55; font-size: 12px; line-height: 1.75; }
.jq-shell[data-redesign] .ck5-agree > i { border-radius: 6px; background: #fff; }
.jq-shell[data-redesign] .ck5-notice { margin: 11px 4px 0; color: #857c75; font-size: 11px; line-height: 1.6; }
.jq-shell[data-redesign] .ck5-notice > .jq-secondary-icon { display: none; }

.jq-shell[data-redesign] .ck5-action {
  min-height: 78px;
  padding: 10px 16px max(11px, env(safe-area-inset-bottom));
  border-color: var(--ck6-line);
  background: rgba(255, 255, 255, .97);
  box-shadow: 0 -12px 32px rgba(55, 35, 24, .065);
  backdrop-filter: blur(14px);
}
.jq-shell[data-redesign] .ck5-action > div { gap: 1px; }
.jq-shell[data-redesign] .ck5-action small { color: #5e5751; font-size: 11px; }
.jq-shell[data-redesign] .ck5-action strong { color: var(--ck6-accent); font: 600 25px/1.2 "Archivo Variable", "Microsoft YaHei UI", sans-serif; }
.jq-shell[data-redesign] .ck5-action > button {
  width: 49%;
  min-height: 52px;
  border-radius: 15px;
  background: var(--ck6-accent);
  box-shadow: 0 9px 20px rgba(232, 80, 47, .18);
  font-size: 17px;
  font-weight: 750;
}

.jq-shell[data-redesign] .ck5-layer { background: rgba(24, 21, 18, .72); backdrop-filter: blur(2px); }
.jq-shell[data-redesign] .ck5-sheet {
  max-height: min(91svh, 720px);
  padding: 35px 20px max(23px, env(safe-area-inset-bottom));
  border-radius: 25px 25px 0 0;
  background: #fff;
  box-shadow: 0 -24px 70px rgba(0, 0, 0, .2);
}
.jq-shell[data-redesign] .ck5-drag span { width: 40px; height: 4px; background: #d4d0cc; }
.jq-shell[data-redesign] .ck5-close { top: 22px; right: 15px; width: 42px; height: 42px; padding: 9px; }
.jq-shell[data-redesign] .ck5-cashier { display: flex; align-items: center; gap: 7px; margin: 0 42px 8px 3px; color: #817870; font-size: 12px; }
.jq-shell[data-redesign] .ck5-sheet h2 {
  margin: 2px 0 6px;
  color: var(--ck6-ink);
  font-family: "Noto Serif SC", "Songti SC", STSong, SimSun, serif !important;
  font-size: 25px;
  font-weight: 800;
  letter-spacing: -.03em;
}
.jq-shell[data-redesign] .ck5-payment-amount { margin: 0 0 14px; color: var(--ck6-accent); font: 500 44px/1.3 "Archivo Variable", "Microsoft YaHei UI", sans-serif; }
.jq-shell[data-redesign] .ck5-payment-details { padding: 2px 0; border-top: 1px solid #eee7e1; border-bottom: 1px solid #eee7e1; }
.jq-shell[data-redesign] .ck5-payment-details > div { min-height: 40px; padding: 8px 3px; border-color: #f0ebe7; font-size: 13px; }
.jq-shell[data-redesign] .ck5-payment-details dt { color: var(--ck6-muted); }
.jq-shell[data-redesign] .ck5-payment-details dd { max-width: 68%; color: var(--ck6-ink); font-weight: 550; }
.jq-shell[data-redesign] .ck5-runtime-payment-details > div:nth-child(-n+2) { display: none; }
.jq-shell[data-redesign] .ck5-payment-methods { margin-top: 6px; }
.jq-shell[data-redesign] .ck5-payment-methods > button { min-height: 66px; padding: 11px 4px; gap: 13px; border-color: #eee8e3; }
.jq-shell[data-redesign] .ck5-payment-methods b { font-size: 16px; font-weight: 700; }
.jq-shell[data-redesign] .ck5-payment-methods small { color: #8c837c; font-size: 12px; }
.jq-shell[data-redesign] .ck5-payment-methods i { position: relative; width: 22px; height: 22px; border: 1.5px solid #c5bdb7; }
.jq-shell[data-redesign] .ck5-payment-methods i > * { display: none !important; }
.jq-shell[data-redesign] .ck5-payment-methods [aria-pressed=true] i { border: 6px solid var(--ck6-accent); background: #fff; }
.jq-shell[data-redesign] p.ck5-payment-security {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 17px 0 14px;
  padding: 12px 13px;
  border: 1px solid #f0d7c9;
  border-radius: 12px;
  background: var(--ck6-tint);
  color: #625951;
  font-size: 12px;
  line-height: 1.6;
}
.jq-shell[data-redesign] .ck5-runtime-payment-security {
  margin: 17px 0 14px;
  padding: 12px 13px;
  border: 1px solid #f0d7c9;
  border-radius: 12px;
  background: var(--ck6-tint);
  color: #625951;
  font-size: 12px;
  line-height: 1.6;
}
.jq-shell[data-redesign] .ck5-runtime-payment-security small,
.jq-shell[data-redesign] .ck5-runtime-payment-security > .jq-secondary-icon:last-child { display: none; }
.jq-shell[data-redesign] .ck5-payment-status { min-height: 20px; margin: -4px 0 8px; color: var(--ck6-accent); font-size: 12px; text-align: center; }
.jq-shell[data-redesign] .ck5-payment-status:empty { min-height: 0; margin: 0; }
.jq-shell[data-redesign] .ck5-payment-actions { grid-template-columns: .82fr 1.5fr; gap: 12px; }
.jq-shell[data-redesign] .ck5-payment-actions button { min-height: 50px; border-color: #ddd6d1; border-radius: 14px; font-size: 16px; font-weight: 700; }
.jq-shell[data-redesign] .ck5-payment-actions button:last-child { border-color: var(--ck6-accent); background: var(--ck6-accent); box-shadow: 0 8px 18px rgba(232, 80, 47, .17); }

/* Generated checkout icon sprite: 4 columns × 2 rows. */
.jq-shell[data-redesign] .ck5 .ck5-icon {
  background-image: url('/assets/checkout-redesign-v1/checkout-icons-sprite-v2.png') !important;
  background-size: 400% 200% !important;
  background-repeat: no-repeat !important;
}
.jq-shell[data-redesign] .ck5 .ck5-icon-back { background-position: 0 0 !important; }
.jq-shell[data-redesign] .ck5 .ck5-icon-pin { background-position: 33.333% 0 !important; }
.jq-shell[data-redesign] .ck5 .ck5-icon-chevron { background-position: 66.667% 0 !important; }
.jq-shell[data-redesign] .ck5 .ck5-icon-minus { background-position: 100% 0 !important; }
.jq-shell[data-redesign] .ck5 .ck5-icon-plus { background-position: 0 100% !important; }
.jq-shell[data-redesign] .ck5 .ck5-icon-shield { background-position: 33.333% 100% !important; }
.jq-shell[data-redesign] .ck5 .ck5-icon-close { background-position: 66.667% 100% !important; }
.jq-shell[data-redesign] .ck5 .ck5-icon-wallet { background-position: 100% 100% !important; }

/* Runtime fallback for the currently deployed bundle until the source build is promoted. */
.jq-shell[data-redesign] .ck5-runtime-processing {
  min-height: 100svh;
  display: grid;
  place-items: center;
  padding: 24px;
  background: var(--ck6-paper);
}
.jq-shell[data-redesign] .ck5-runtime-checkout-clone { position: fixed; inset: 0; overflow: hidden; opacity: .52; pointer-events: none; filter: saturate(.75); }
.jq-shell[data-redesign] .ck5-runtime-checkout-clone > .ck5 { min-height: 100svh; }
.jq-shell[data-redesign] .ck5-runtime-processing > .ck5-runtime-checkout-clone { display: block !important; }
.jq-shell[data-redesign] .ck5-runtime-processing > .ck5-runtime-status { position: relative; z-index: 2; display: block !important; }
.jq-shell[data-redesign] .ck5-runtime-processing > :not(.ck5-runtime-status) { display: none !important; }
.jq-shell[data-redesign] .ck5-runtime-status {
  width: min(100%, 310px);
  padding: 22px;
  border: 1px solid var(--ck6-line);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 16px 50px rgba(46, 30, 20, .12);
  text-align: center;
}
.jq-shell[data-redesign] .ck5-runtime-status i { display: block; width: 28px; height: 28px; margin: 0 auto 14px; border: 2px solid #eaded6; border-top-color: var(--ck6-accent); border-radius: 50%; animation: ck6-spin .75s linear infinite; }
.jq-shell[data-redesign] .ck5-runtime-status strong { display: block; font-family: "Noto Serif SC", "Songti SC", STSong, SimSun, serif; font-size: 19px; }
.jq-shell[data-redesign] .ck5-runtime-status small { display: block; margin-top: 8px; color: var(--ck6-muted); font-size: 12px; line-height: 1.7; }
.jq-shell[data-redesign] .ck5-runtime-status button { width: 100%; min-height: 44px; margin-top: 16px; border: 0; border-radius: 12px; background: var(--ck6-accent); color: #fff; font-weight: 700; }
@keyframes ck6-spin { to { transform: rotate(360deg); } }

@media (max-width: 360px) {
  .jq-shell[data-redesign] .ck5-content { padding-inline: 12px; }
  .jq-shell[data-redesign] .ck5-hero { height: 138px; padding: 18px; }
  .jq-shell[data-redesign] .ck5-hero h2 { max-width: 190px; font-size: 18px; }
  .jq-shell[data-redesign] .ck5 img.ck5-prize { width: 102px !important; }
  .jq-shell[data-redesign] .ck5-steps { margin-inline: 25px; }
  .jq-shell[data-redesign] .ck5-number-card p { padding-inline: 14px; font-size: 19px; }
  .jq-shell[data-redesign] .ck5-number-card button { padding-inline: 10px; font-size: 12px; }
  .jq-shell[data-redesign] .ck5-product { grid-template-columns: 72px minmax(0, 1fr); }
  .jq-shell[data-redesign] .ck5-product > img { width: 72px !important; height: 94px !important; }
  .jq-shell[data-redesign] .ck5-quantity { grid-column: 2; justify-self: end; margin-top: -34px; }
  .jq-shell[data-redesign] .ck5-sheet { padding-inline: 15px; }
  .jq-shell[data-redesign] .ck5-payment-actions { gap: 9px; }
  .jq-shell[data-redesign] .ck5-payment-actions button { font-size: 14px; }
}

@media (prefers-reduced-motion: reduce) {
  .jq-shell[data-redesign] .ck5-runtime-status i { animation: none; }
}
