
/* ── Promo Banner ── */
@keyframes promo-in {
  from { opacity:0; transform:translateY(6px); }
  to   { opacity:1; transform:translateY(0); }
}

body.store-page .promo-banner {
  width: 100%;
  margin: 0 0 8px;
  animation: promo-in .6s ease both;
}
body.store-page .promo-bg {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  background: #050200;
  box-shadow: 0 4px 40px rgba(0,0,0,.28), 0 0 0 1px rgba(255,160,40,.1);
  min-height: 136px;
}
body.store-page .promo-stars-canvas {
  position: absolute; inset: 0;
  width: 100% !important; height: 100% !important;
  display: block; z-index: 0;
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges;
}
body.store-page .promo-glass {
  position: relative; z-index: 1;
  display: flex; flex-direction: column; align-items: center;
  gap: 13px; padding: 22px 36px;
  background: rgba(3,1,0,.15);
  text-align: center;
}
body.store-page .promo-brand-strip {
  display: flex; align-items: center; justify-content: center;
  flex-wrap: wrap; gap: 7px;
}
body.store-page .promo-brand-pill {
  display: inline-flex; align-items: center; gap: 5px;
  font-size: 13px !important; font-weight: 600 !important;
  color: rgba(255,238,185,.96) !important;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,200,90,.2);
  border-radius: 20px; padding: 4px 11px 4px 6px;
}
body.store-page .promo-brand-pill img { width:15px; height:15px; border-radius:3px; flex-shrink:0; }
body.store-page .promo-icon-white { filter: brightness(0) invert(1) !important; opacity:.85 !important; }
body.store-page .promo-brand-sep { color: rgba(200,140,40,.4) !important; font-size:14px; font-weight:600; }
body.store-page .promo-official-tag {
  display: inline-flex; align-items: center;
  font-size: 12px !important; font-weight: 700 !important; letter-spacing:.06em;
  color: rgba(255,228,145,.93) !important;
  background: rgba(200,140,30,.15); border: 1px solid rgba(200,140,30,.32);
  border-radius: 20px; padding: 3px 12px;
}
body.store-page .promo-divider {
  width: 68%; height: 1px;
  background: linear-gradient(90deg,transparent,rgba(200,150,50,.22),transparent);
}
body.store-page .promo-body { display: flex; flex-direction: column; align-items: center; gap: 2px; }
body.store-page .promo-line {
  display: flex; align-items: baseline; justify-content: center; gap: 6px;
  font-size: 13.5px !important; line-height: 1.78 !important;
  color: rgba(252,232,178,.93) !important;
  margin: 0 !important; font-weight: 400; letter-spacing:.012em;
}
body.store-page .promo-line-muted { color: rgba(210,180,120,.48) !important; font-size:12px !important; }
body.store-page .promo-bullet { color: rgba(210,155,50,.55); font-size:13px; line-height:1; flex-shrink:0; }

@media (max-width:680px) {
  body.store-page .promo-glass { padding:16px 18px; text-align:left; }
  body.store-page .promo-brand-strip { justify-content:flex-start; }
  body.store-page .promo-body { align-items:flex-start; }
  body.store-page .promo-line { justify-content:flex-start; }
}
﻿@font-face {
  font-family: "InterCustom";
  src: url("/static/Inter-Bold.ttf") format("truetype");
  font-style: normal;
  font-weight: 700;
  font-display: swap;
}

:root {
  --ag-body-bg: #faf9f5;
  --ag-bg: #f0eee6;
  --ag-card: #e3dacc;
  --ag-card-radius: 16px;
  --ag-card-padding: 30px;
  --ag-black: #141413;
  --ag-button-black: #0b0b0a;
  --ag-ivory: #faf9f5;
  --ag-cream: #f7f4ec;
  --ag-card-soft: var(--ag-cream);
  --ag-card-plain: var(--ag-ivory);
  --ag-black-soft: #1c1c1a;
  --ag-text: #141413;
  --ag-muted: rgba(20, 20, 19, 0.62);
  --ag-soft: rgba(20, 20, 19, 0.42);
  --ag-faint: var(--ag-soft);
  --ag-border: rgba(20, 20, 19, 0.1);
  --ag-border-strong: rgba(20, 20, 19, 0.14);
  --ag-footer: #141413;
  --page-bg: var(--ag-bg);
  --page-bg-strong: var(--ag-bg);
  --surface: var(--ag-card-soft);
  --surface-strong: var(--ag-card);
  --surface-deep: var(--ag-card);
  --card-surface: var(--ag-card);
  --card-surface-hover: var(--ag-card);
  --ink: var(--ag-text);
  --ink-soft: rgba(20, 20, 19, 0.84);
  --muted: var(--ag-muted);
  --muted-strong: rgba(20, 20, 19, 0.8);
  --line: var(--ag-border);
  --line-strong: var(--ag-border-strong);
  --shadow: none;
  --black: var(--ag-black);
  --black-soft: var(--ag-black-soft);
  --cream-on-dark: #efe7da;
  --success: #2d6b4f;
  --success-soft: rgba(45, 107, 79, 0.12);
  --danger: #b74a2c;
  --danger-soft: rgba(183, 74, 44, 0.12);
  --warning: #8f6b25;
  --warning-soft: rgba(143, 107, 37, 0.14);
  --brand-openai: #1f5f4a;
  --brand-claude: #8a5a34;
  --brand-gemini: #3f4f7b;
  --brand-kiro: #4b6a55;
  --brand-grok: #5c465f;
  --brand-google: #7a5a2f;
  --brand-apple: #4a4c52;
  --brand-card: #7b3f2f;
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 16px;
  --font-ui: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", "Noto Sans SC", Arial, sans-serif;
  --font-sans: Inter, "Helvetica Neue", Arial, "PingFang SC", "Noto Sans SC", "Microsoft YaHei", sans-serif;
  --font-serif: "Source Serif 4", "Tiempos Text", "Tiempos", Georgia, "Times New Roman", "Noto Serif SC", serif;
  --font-zh-display: "PingFang SC", "Noto Sans SC", "Source Han Sans SC", "Microsoft YaHei", sans-serif;
  --font-display-en: var(--font-sans);
  --font-serif-en: var(--font-serif);
  --font-zh: var(--font-zh-display);
  --sans: var(--font-sans);
  --serif: var(--font-serif);
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html,
body {
  min-height: 100%;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  color: var(--ink);
  background: var(--ag-body-bg);
  font-family: var(--font-ui);
  font-feature-settings: "kern" 1, "liga" 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  line-height: 1.5;
  text-rendering: optimizeLegibility;
  overflow-x: hidden;
}

::selection {
  background: rgba(204, 120, 92, 0.48);
  color: var(--ink);
  text-shadow: none;
}

.store-feature-card ::selection,
.checkout-left ::selection,
.activate-footer ::selection,
.activate-console-main ::selection,
.activate-console-side ::selection {
  background: rgba(204, 120, 92, 0.52);
  color: #f7f1e7;
  text-shadow: none;
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.12), transparent 22%);
  opacity: 0.18;
}

body > * {
  position: relative;
  z-index: 1;
}

img {
  max-width: 100%;
  display: block;
}

a {
  color: inherit;
  text-decoration: none;
}

button,
input,
textarea,
select {
  font: inherit;
}

button {
  cursor: pointer;
}

[hidden] {
  display: none !important;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.shell {
  width: min(1320px, calc(100vw - 64px));
  margin: 0 auto;
  padding: 20px 0 72px;
  display: grid;
  gap: 32px;
}

.shell.narrow {
  width: min(1040px, 94vw);
}

.store-shell {
  gap: 36px;
}

.account-shell {
  gap: 28px;
}

.panel,
.utility-panel-card,
.catalog-product-card,
.history-merged-card,
.modal-box,
.gemini-live-card,
.gemini-entry-panel,
.gemini-notice-board {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: var(--radius-md);
  box-shadow: none;
}

.panel.clean {
  background: var(--surface);
}

.modal-box {
  border-radius: 20px;
}

.row {
  display: flex;
  gap: 12px;
  align-items: center;
}

.row.col {
  flex-direction: column;
  align-items: stretch;
}

.muted,
.meta {
  color: var(--muted);
}

.dark {
  color: var(--muted-strong);
}

.section-kicker,
.dock-kicker,
.catalog-product-kicker,
.purchase-notice-intro-kicker,
.purchase-proof-kicker,
.checkout-card-kicker,
.result-eyebrow,
.gemini-eyebrow {
  display: inline-block;
  font-family: var(--font-display-en);
  font-size: 11px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(17, 17, 17, 0.42);
}

.section-kicker-invert {
  color: rgba(247, 244, 236, 0.52);
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  font-weight: 700;
  letter-spacing: 0;
  color: var(--ink);
}

p {
  margin: 0;
}

input,
textarea,
select {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  background: rgba(255, 255, 255, 0.72);
  color: var(--ink);
  padding: 13px 14px;
  transition: border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
}

input::placeholder,
textarea::placeholder {
  color: #847d72;
}

input:focus,
textarea:focus,
select:focus {
  outline: none;
  border-color: rgba(17, 17, 16, 0.32);
  background: #fffdf8;
  box-shadow: 0 0 0 3px rgba(17, 17, 16, 0.06);
}

textarea {
  min-height: 140px;
  resize: vertical;
}

button,
.project-link-btn,
.query-copy-order-btn,
.query-copy-all-btn,
.bundle-primary-btn,
.activate-submit-btn,
.activate-mini-btn,
.gemini-submit-btn,
.gemini-retry-btn,
.gemini-secondary-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 46px;
  padding: 0 18px;
  border: 1px solid transparent;
  border-radius: 16px;
  background: var(--black);
  color: #f7f1e7;
  font-weight: 600;
  transition:
    background-color 0.2s ease,
    border-color 0.2s ease,
    color 0.2s ease,
    box-shadow 0.2s ease,
    opacity 0.2s ease,
    transform 0.2s ease;
}

button:hover,
.project-link-btn:hover,
.query-copy-order-btn:hover,
.query-copy-all-btn:hover,
.bundle-primary-btn:hover,
.activate-submit-btn:hover,
.activate-mini-btn:hover,
.gemini-submit-btn:hover,
.gemini-retry-btn:hover,
.gemini-secondary-btn:hover {
  transform: none;
}

button:disabled,
.project-link-btn:disabled,
.query-copy-order-btn:disabled,
.query-copy-all-btn:disabled,
.bundle-primary-btn:disabled,
.activate-submit-btn:disabled,
.activate-mini-btn:disabled,
.gemini-submit-btn:disabled,
.gemini-retry-btn:disabled,
.gemini-secondary-btn:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  transform: none;
}

.ghost,
.project-link-btn.ghost,
.nav-link,
.nav-utility-btn,
.copy-btn,
.product-inline-link,
.guide-link,
.activate-nav-btn {
  background: transparent;
  color: var(--ink);
  border-color: var(--line);
}

.ghost:hover,
.project-link-btn.ghost:hover,
.nav-link:hover,
.nav-utility-btn:hover,
.copy-btn:hover,
.product-inline-link:hover,
.guide-link:hover,
.activate-nav-btn:hover {
  background: rgba(17, 17, 16, 0.03);
  border-color: rgba(17, 17, 16, 0.18);
  box-shadow: none;
}

.project-link-btn:not(.ghost),
.product-buy-btn.is-available,
.bundle-primary-btn,
.bundle-launch-btn,
.card-bin-picker-confirm,
#checkOrderBtn,
#confirmOrderBtn,
#acceptPurchaseNoticeBtn {
  background-color: var(--ag-button-black);
  border-color: var(--ag-button-black);
  box-shadow: none;
}

.project-link-btn:not(.ghost)::after,
.product-buy-btn.is-available::after,
.bundle-primary-btn::after,
.bundle-launch-btn::after,
.card-bin-picker-confirm::after,
#checkOrderBtn::after,
#confirmOrderBtn::after,
#acceptPurchaseNoticeBtn::after {
  content: none;
}

.project-link-btn:not(.ghost):hover,
.product-buy-btn.is-available:hover,
.bundle-primary-btn:hover,
.bundle-launch-btn:hover,
.card-bin-picker-confirm:hover,
#checkOrderBtn:hover,
#confirmOrderBtn:hover,
#acceptPurchaseNoticeBtn:hover {
  background-color: #242421;
  border-color: #242421;
  box-shadow: none;
}

.project-link-btn:not(.ghost):hover::after,
.product-buy-btn.is-available:hover::after,
.bundle-primary-btn:hover::after,
.bundle-launch-btn:hover::after,
.card-bin-picker-confirm:hover::after,
#checkOrderBtn:hover::after,
#confirmOrderBtn:hover::after,
#acceptPurchaseNoticeBtn:hover::after {
  content: none;
}

.fit {
  min-height: 40px;
  padding-inline: 14px;
  width: auto;
}

.push-right {
  margin-left: auto;
}

.status-line {
  font-size: 14px;
  line-height: 1.55;
  color: var(--muted);
}

.status-line.ok {
  color: var(--success);
}

.status-line.err {
  color: var(--danger);
}

.toast {
  position: fixed;
  top: 20px;
  left: 50%;
  transform: translateX(-50%) translateY(-10px);
  min-width: 220px;
  max-width: min(90vw, 520px);
  padding: 12px 16px;
  border-radius: var(--radius-sm);
  border: 1px solid rgba(239, 231, 218, 0.16);
  background: rgba(18, 17, 15, 0.94);
  color: #f7f1e7;
  text-align: center;
  box-shadow: 0 18px 40px rgba(17, 17, 16, 0.22);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease, transform 0.2s ease;
  /* 必须高于「联系支持」弹窗(12000)，否则会被磨砂遮罩压在下面，
     透出来像是背景多了一层虚化方块 */
  z-index: 13000;
}

.toast.show {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

.topbar {
  position: sticky;
  top: 0;
  z-index: 30;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 20px;
  min-height: 64px;
  width: 100%;
  padding: 0 clamp(20px, 3vw, 32px);
  background: var(--ag-body-bg);
  border-bottom: 1px solid var(--ag-border);
}

.brand-mini {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
}

.topbar-brand {
  min-width: 0;
}

.brand-mark {
  width: 44px;
  height: 34px;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.56);
  border: 1px solid var(--ag-border);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.brand-mark-logo img {
  width: 90%;
  height: 90%;
  object-fit: contain;
  transform: scale(1.3);
  transform-origin: center;
}

.brand-stack {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.brand-stack-motion {
  position: relative;
  min-height: 42px;
  align-content: center;
}

.brand-stack-expanded {
  display: grid;
  gap: 2px;
  transform-origin: left center;
  transition: opacity 0.28s ease, transform 0.28s ease;
}

.brand-stack-condensed {
  position: absolute;
  left: 0;
  top: 50%;
  font-family: var(--font-display-en);
  font-size: 18px;
  line-height: 1;
  font-weight: 650;
  letter-spacing: 0;
  color: var(--ink);
  white-space: nowrap;
  opacity: 0;
  transform: translateY(-20%) scale(0.98);
  transform-origin: left center;
  pointer-events: none;
  transition: opacity 0.28s ease, transform 0.28s ease;
}

.brand-stack strong {
  font-family: var(--font-ui);
  font-size: 17px;
  font-weight: 650;
  letter-spacing: 0;
  color: var(--ink);
}

.brand-stack-expanded > span {
  font-family: var(--font-ui);
  font-size: 12px;
  font-weight: 400;
  color: rgba(17, 17, 17, 0.48);
  line-height: 1.3;
}

body.is-topbar-condensed .brand-stack-expanded {
  opacity: 0;
  transform: translateY(-34%) scale(0.985);
  pointer-events: none;
}

body.is-topbar-condensed .brand-stack-condensed {
  opacity: 1;
  transform: translateY(-50%) scale(1);
}

.topbar-nav {
  display: inline-flex;
  align-items: center;
  gap: 24px;
  margin-left: auto;
  justify-self: end;
}

.topbar-nav-link,
.nav-link,
.nav-utility-btn {
  position: relative;
  min-height: 64px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  justify-content: center;
  font-family: var(--font-ui);
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  color: rgba(17, 17, 17, 0.72);
  text-decoration: none;
  transition: color 0.2s ease, opacity 0.2s ease;
}

.topbar-nav-link::after,
.nav-link::after,
.nav-utility-btn::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 18px;
  height: 1px;
  background: currentColor;
  opacity: 0;
  transform: scaleX(0.72);
  transform-origin: left center;
  transition: opacity 0.18s ease, transform 0.18s ease;
}

.topbar-nav-link:hover,
.topbar-nav-link.active,
.nav-link:hover,
.nav-link.active,
.nav-utility-btn:hover,
.nav-utility-btn.active {
  background: transparent;
  border-color: transparent;
  box-shadow: none;
  color: rgba(17, 17, 17, 0.96);
  transform: none;
}

.topbar-nav-link:hover::after,
.topbar-nav-link.active::after,
.nav-link:hover::after,
.nav-link.active::after,
.nav-utility-btn:hover::after,
.nav-utility-btn.active::after {
  opacity: 1;
  transform: scaleX(1);
}

.topbar-action-cluster {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  flex-wrap: nowrap;
  justify-self: end;
}

.topbar-action-cluster.push-right {
  margin-left: 0;
}

.nav-user-chip {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 10px;
  border-radius: 999px;
  border: 1px solid rgba(20, 20, 19, 0.06);
  color: rgba(20, 20, 19, 0.46);
  background: rgba(255, 255, 255, 0.24);
  font-family: var(--font-ui);
  font-size: 12px;
  font-weight: 500;
  max-width: 220px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.nav-cta-combo {
  display: inline-flex;
  align-items: center;
  border-radius: 8px;
  overflow: hidden;
  min-height: 40px;
  background: var(--ag-button-black);
  border: 1px solid var(--ag-button-black);
}

.nav-primary-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 16px;
  border: 0;
  border-radius: 8px;
  background: var(--ag-button-black);
  color: #faf9f5;
  font-family: var(--font-ui);
  font-size: 14px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0;
  transition:
    background-color 0.2s ease,
    border-color 0.2s ease,
    color 0.2s ease,
    opacity 0.2s ease,
    transform 0.2s ease;
}

.nav-primary-cta-label {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
}

.nav-cta-combo .nav-primary-cta:first-child {
  border-radius: 8px 0 0 8px;
  border-right: 1px solid rgba(255, 255, 255, 0.12);
}

.nav-primary-cta-secondary {
  width: 42px;
  min-width: 42px;
  padding: 0;
  border-radius: 0 8px 8px 0;
}

.nav-primary-cta-chevron {
  width: 12px;
  height: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  opacity: 0.82;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.nav-primary-cta-chevron::before {
  content: "";
  width: 7px;
  height: 7px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg) translateY(-1px);
}

.nav-cta-combo:hover .nav-primary-cta:first-child,
.nav-cta-combo:focus-within .nav-primary-cta:first-child {
  background: #2b2b27;
}

.nav-cta-combo:hover .nav-primary-cta-secondary,
.nav-cta-combo:focus-within .nav-primary-cta-secondary {
  background: #0b0b0a;
}

.nav-cta-combo:hover .nav-primary-cta-chevron,
.nav-cta-combo:focus-within .nav-primary-cta-chevron {
  opacity: 1;
  transform: translateY(1px);
}

.nav-primary-cta:hover,
.nav-primary-cta:focus-visible {
  color: #faf9f5;
  transform: none;
}

.nav-primary-cta-solo {
  border-radius: 8px;
  border: 1px solid var(--ag-black);
}

.nav-primary-cta-solo:hover,
.nav-primary-cta-solo:focus-visible {
  background: #2b2b27;
  border-color: #2b2b27;
}

.enterprise-topbar.is-mobile-collapsed {
  min-height: 58px;
}

.enterprise-topbar.is-mobile-collapsed .brand-stack-expanded > span {
  display: none;
}

.store-hero {
  display: grid;
  gap: 28px;
  padding-top: 14px;
}

.store-hero-grid,
.account-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(300px, 0.9fr);
  gap: 32px;
  align-items: end;
}

.store-hero-copy h1,
.account-hero h1 {
  font-family: var(--font-zh);
  font-size: clamp(54px, 5vw, 68px);
  font-weight: 720;
  line-height: 1.05;
  letter-spacing: -0.055em;
  max-width: 11ch;
}

.store-hero-aside {
  display: grid;
  gap: 18px;
  align-self: stretch;
}

.store-hero-aside p {
  font-family: var(--font-zh);
  font-size: 20px;
  font-weight: 400;
  line-height: 1.65;
  letter-spacing: -0.02em;
  color: rgba(17, 17, 17, 0.76);
}

.hero-side-actions,
.section-action-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.hero-underline {
  box-shadow: inset 0 -0.22em 0 rgba(100, 116, 84, 0.22);
}

.section-showcase {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(260px, 0.8fr);
  gap: 26px;
  align-items: stretch;
}

.store-feature-card {
  background: var(--black);
  color: var(--cream-on-dark);
  border: 1px solid rgba(239, 231, 218, 0.1);
  border-radius: var(--radius-lg);
  padding: 30px;
  box-shadow: 0 24px 52px rgba(17, 17, 16, 0.16);
}

.store-feature-card h2,
.store-feature-card h3,
.store-feature-card h4,
.store-feature-card strong,
.store-feature-card .project-link-btn.ghost,
.store-feature-card .project-link-btn,
.store-feature-card .card-guide-inline-trigger {
  color: #f7f1e7;
}

.store-feature-card p,
.store-feature-card .muted,
.store-feature-card .dock-kicker,
.store-feature-card .section-kicker {
  color: rgba(239, 231, 218, 0.76);
}

.store-feature-card .project-link-btn {
  background: #f5efe6;
  border-color: #f5efe6;
  color: var(--black);
}

.store-feature-card .project-link-btn:hover {
  background: #ece4d7;
  border-color: #ece4d7;
  color: var(--black);
  box-shadow: none;
}

.store-feature-card .project-link-btn.ghost,
.store-feature-card .card-guide-inline-trigger {
  background: transparent;
  border-color: rgba(239, 231, 218, 0.18);
}

.store-feature-card .project-link-btn.ghost:hover,
.store-feature-card .card-guide-inline-trigger:hover {
  background: rgba(239, 231, 218, 0.04);
  border-color: rgba(239, 231, 218, 0.28);
  box-shadow: none;
}

.section-copy {
  display: grid;
  align-content: start;
  gap: 16px;
}

.section-copy h2 {
  font-size: clamp(2rem, 4vw, 3rem);
  line-height: 1.02;
}

.section-copy p {
  font-size: 17px;
  line-height: 1.6;
}

.section-visual {
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
}

.section-visual-image {
  max-height: 84px;
  width: auto;
}

.section-visual-image-kiro {
  max-height: 118px;
}

.feature-visual-board {
  align-items: center;
}

.feature-visual-window {
  width: min(360px, 100%);
  aspect-ratio: 1 / 1;
  border-radius: var(--radius-sm);
  border: 1px solid rgba(239, 231, 218, 0.14);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.02)),
    #161513;
  padding: 18px;
  display: grid;
  place-items: center;
}

.feature-visual-grid {
  width: 100%;
  height: 100%;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}

.feature-visual-cell {
  border-radius: var(--radius-sm);
  border: 1px solid rgba(239, 231, 218, 0.08);
  background: rgba(239, 231, 218, 0.04);
}

.feature-visual-cell-emphasis {
  background: linear-gradient(180deg, rgba(239, 231, 218, 0.2), rgba(239, 231, 218, 0.05));
}

.hero-fact-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 6px;
}

.hero-fact-item {
  padding-top: 14px;
  border-top: 1px solid rgba(239, 231, 218, 0.14);
  display: grid;
  gap: 6px;
}

.hero-fact-item span {
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(239, 231, 218, 0.56);
}

.hero-fact-item strong {
  font-size: 18px;
  line-height: 1.2;
}

.store-control-bar {
  display: grid;
  gap: 18px;
  padding: 28px 0 22px;
  border-top: 0;
  border-bottom: 1px solid var(--line);
}

.control-bar-head {
  display: flex;
  align-items: start;
  justify-content: flex-start;
  gap: 16px;
}

.control-bar-intro {
  display: grid;
  gap: 10px;
  max-width: 620px;
}

.store-control-kicker {
  font-size: 13px;
  line-height: 1.35;
  letter-spacing: 0.01em;
  text-transform: none;
  color: var(--muted-strong);
}

.control-bar-head h2 {
  font-size: 32px;
  line-height: 1.05;
}

.control-bar-head p {
  max-width: 480px;
  color: var(--muted);
}

.project-switcher {
  display: flex;
  align-items: center;
  gap: 2px;
  overflow-x: auto;
  padding-bottom: 2px;
  scrollbar-width: none;
}

.project-switcher::-webkit-scrollbar {
  display: none;
}

.project-switcher-btn {
  position: relative;
  min-height: 0;
  padding: 14px 14px 15px;
  background: transparent;
  border: 0;
  outline: none;
  box-shadow: none;
  appearance: none;
  -webkit-appearance: none;
  -webkit-tap-highlight-color: transparent;
  color: var(--muted);
  font-family: var(--serif);
  font-size: 20px;
  font-weight: 400;
  line-height: 1.4;
  border-radius: 0;
  min-width: max-content;
  text-decoration: none;
  transition: color 0.2s ease, opacity 0.2s ease, transform 0.2s ease;
}

.project-switcher-btn::after {
  content: "";
  position: absolute;
  left: 14px;
  right: 14px;
  bottom: 8px;
  height: 1px;
  background: currentColor;
  opacity: 0;
  transform: scaleX(0.4);
  transform-origin: left center;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.project-switcher-btn:hover {
  color: var(--ink);
  opacity: 1;
}

.project-switcher-btn:hover::after,
.project-switcher-btn.is-active::after {
  opacity: 1;
  transform: scaleX(1);
}

.project-switcher-btn.is-active {
  color: var(--ink);
}

.project-switcher-btn:focus,
.project-switcher-btn:focus-visible {
  outline: none;
  box-shadow: none;
}

.project-section {
  transform-origin: top center;
}

.project-section.is-section-leaving {
  opacity: 0;
  transform: translateY(12px);
  filter: blur(2px);
  pointer-events: none;
}

.project-section.is-section-entering {
  animation: projectSectionEnter 260ms ease both;
}

@keyframes projectSectionEnter {
  from {
    opacity: 0;
    transform: translateY(12px);
    filter: blur(2px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
    filter: blur(0);
  }
}

body.is-first-visit .topbar,
body.is-first-visit .store-control-bar,
body.is-first-visit .project-section[aria-hidden="false"] {
  opacity: 0;
  transform: translateY(18px);
}

body.is-first-visit.is-first-visit-active .topbar,
body.is-first-visit.is-first-visit-active .store-control-bar,
body.is-first-visit.is-first-visit-active .project-section[aria-hidden="false"] {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.46s ease, transform 0.46s ease;
}

body.is-first-visit.is-first-visit-active .topbar {
  transition-delay: 30ms;
}

body.is-first-visit.is-first-visit-active .store-control-bar {
  transition-delay: 90ms;
}

body.is-first-visit.is-first-visit-active .project-section[aria-hidden="false"] {
  transition-delay: 150ms;
}

.utility-panel {
  display: grid;
}

.utility-panel-card {
  padding: 28px;
}

.utility-panel-head {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: start;
  margin-bottom: 20px;
}

.utility-panel-head h3 {
  font-size: 26px;
  margin-top: 6px;
}

.utility-panel-head p {
  color: var(--muted);
  margin-top: 10px;
  max-width: 720px;
}

.contact-link-list {
  display: grid;
  gap: 0;
}

.guide-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 58px;
  padding: 0 2px;
  border-top: 1px solid var(--line);
}

.guide-link:first-child {
  border-top: 0;
}

.guide-link::after,
.store-resource-list a::after,
.product-inline-link::after {
  content: "↗";
  font-size: 14px;
  color: var(--muted);
}

.query-dock-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
}

.store-content-column {
  display: grid;
  gap: 32px;
}

.project-section {
  display: grid;
  gap: 22px;
}

.project-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.catalog-product-card {
  position: relative;
  display: flex;
  min-height: 100%;
  padding: 28px 26px 24px;
  border-radius: 22px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.12) 0%, rgba(255, 255, 255, 0) 22%),
    linear-gradient(180deg, var(--card-surface) 0%, #ddd2c2 100%);
  border: 1px solid rgba(78, 65, 48, 0.14);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.18),
    0 14px 28px rgba(17, 17, 16, 0.06);
  transition:
    transform 0.22s ease,
    background-color 0.22s ease,
    border-color 0.22s ease,
    box-shadow 0.22s ease;
}

.catalog-product-card:hover {
  transform: translateY(-3px);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.16) 0%, rgba(255, 255, 255, 0) 24%),
    linear-gradient(180deg, var(--card-surface-hover) 0%, #dfd5c7 100%);
  border-color: rgba(78, 65, 48, 0.22);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.2),
    0 18px 32px rgba(17, 17, 16, 0.08);
}

.catalog-product-card.is-sold-out {
  opacity: 0.78;
}

.product-openai { --project-accent: rgba(31, 95, 74, 0.5); }
.product-kiro { --project-accent: rgba(75, 106, 85, 0.5); }
.product-claude { --project-accent: rgba(138, 90, 52, 0.52); }
.product-grok { --project-accent: rgba(92, 70, 95, 0.5); }
.product-gemini { --project-accent: rgba(63, 79, 123, 0.48); }
.product-outlook { --project-accent: rgba(74, 76, 82, 0.46); }
.product-google { --project-accent: rgba(122, 90, 47, 0.52); }
.product-apple { --project-accent: rgba(74, 76, 82, 0.46); }
.product-card,
.product-default { --project-accent: rgba(123, 63, 47, 0.52); }

.catalog-product-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 16px;
}

.catalog-product-topline {
  display: flex;
  justify-content: space-between;
  align-items: start;
  gap: 12px;
}

.catalog-product-brand {
  display: flex;
  gap: 14px;
  min-width: 0;
}

.catalog-product-logo {
  width: 58px;
  height: 58px;
  border-radius: 16px;
  border: 1px solid rgba(78, 65, 48, 0.12);
  background: rgba(250, 248, 242, 0.78);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  padding: 12px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.68);
}

.catalog-product-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.catalog-product-logo.is-dark-logo img {
  filter: brightness(0) saturate(100%);
}

.catalog-product-brand-copy {
  min-width: 0;
  display: grid;
  gap: 6px;
}

.product-display-heading {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.product-display-title {
  font-family: var(--font-ui);
  font-size: 28px;
  font-weight: 700;
  line-height: 1.08;
  letter-spacing: -0.04em;
  color: #111;
  overflow-wrap: normal;
  word-break: keep-all;
}

.product-display-spec {
  font-family: var(--font-ui);
  font-size: 15px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: -0.015em;
  color: rgba(17, 17, 17, 0.58);
}

.catalog-product-badges,
.badge-row,
.product-display-tags,
.purchase-proof-caption-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.catalog-product-copy {
  display: grid;
  gap: 12px;
}

.product-note {
  font-family: var(--font-zh);
  color: rgba(17, 17, 17, 0.62);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.65;
  min-height: 2.8em;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.catalog-product-feature-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.catalog-product-pricing {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.price-stack {
  display: grid;
  gap: 4px;
}

.price {
  display: inline-flex;
  align-items: end;
  gap: 6px;
  font-family: var(--font-ui);
  font-size: 36px;
  line-height: 1;
  font-weight: 720;
  letter-spacing: -0.04em;
  color: var(--ink);
}

.money-amount {
  font-size: 36px;
  line-height: 1;
}

.money-inline {
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
  white-space: nowrap;
}

.money-currency {
  font-family: var(--font-ui);
  font-size: 11px;
  line-height: 1.2;
  text-transform: uppercase;
  font-weight: 650;
  letter-spacing: 0.12em;
  color: rgba(17, 17, 17, 0.48);
  transform: translateY(-2px);
}

.price-old {
  font-size: 13px;
  color: var(--muted);
}

.catalog-product-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  padding: 14px 16px;
  border-radius: 18px;
  background: rgba(244, 239, 231, 0.58);
  border: 1px solid rgba(78, 65, 48, 0.08);
}

.catalog-product-fact {
  display: grid;
  gap: 4px;
}

.catalog-product-fact span {
  font-family: var(--font-ui);
  font-size: 12px;
  font-weight: 400;
  color: rgba(17, 17, 17, 0.42);
}

.catalog-product-fact strong {
  font-family: var(--font-ui);
  font-size: 16px;
  font-weight: 650;
  line-height: 1.2;
  color: rgba(17, 17, 17, 0.86);
}

.chip {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 11px;
  border-radius: 999px;
  border: 1px solid rgba(78, 65, 48, 0.12);
  color: var(--muted-strong);
  background: rgba(255, 255, 255, 0.4);
  font-size: 12px;
  font-weight: 600;
}

.chip-status {
  background: rgba(255, 255, 255, 0.62);
}

.chip-feature {
  background: rgba(255, 255, 255, 0.28);
}

.product-display-tag.tone-cdk,
.chip-stock,
.history-code-pill,
.purchase-notice-confirm input:checked + span {
  background: rgba(17, 17, 16, 0.04);
}

.product-display-tag.tone-pro,
.chip-hot-live {
  color: var(--danger);
  border-color: rgba(183, 74, 44, 0.24);
  background: var(--danger-soft);
}

.chip-stock-zero {
  color: var(--danger);
  border-color: rgba(183, 74, 44, 0.24);
  background: var(--danger-soft);
}

.product-link-row {
  margin-top: auto;
  padding-top: 4px;
}

.product-inline-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 40px;
  padding: 0 12px;
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.34);
  border-color: rgba(78, 65, 48, 0.14);
}

.card-guide-inline-trigger {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 12px;
  margin: 0 4px;
  border-radius: var(--radius-sm);
  border: 1px solid currentColor;
  background: transparent;
  font-size: 13px;
  font-weight: 600;
  vertical-align: middle;
}

.product-action-row {
  display: grid;
  grid-template-columns: minmax(0, 136px) minmax(0, 1fr);
  gap: 12px;
  align-items: end;
  padding-top: 2px;
}

.card-product-action-row,
.bundle-launch-row {
  grid-template-columns: 1fr;
}

.qty-box {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) 38px;
  align-items: center;
  border-radius: 16px;
  border: 1px solid rgba(78, 65, 48, 0.12);
  background: rgba(255, 255, 255, 0.54);
  min-height: 48px;
}

.qty-btn {
  min-height: 46px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--ink);
  font-size: 20px;
  font-weight: 500;
}

.qty-btn:hover {
  background: rgba(17, 17, 16, 0.05);
  transform: none;
}

.qty-value-wrap {
  display: grid;
  gap: 2px;
  padding: 0 8px;
  min-width: 0;
  justify-items: center;
  align-content: center;
  text-align: center;
}

.qty-caption {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--muted);
}

.qty-value-wrap input {
  border: 0;
  background: transparent;
  padding: 0;
  font-size: 16px;
  font-weight: 600;
  min-height: 22px;
  box-shadow: none;
  text-align: center;
  width: 100%;
}

.product-buy-btn,
.bundle-launch-btn {
  width: 100%;
  min-height: 50px;
}

.product-buy-btn.is-sold-out {
  background: rgba(255, 255, 255, 0.34);
  color: rgba(20, 20, 19, 0.44);
  border-color: rgba(78, 65, 48, 0.08);
}

.free-api-key-panel {
  display: grid;
  gap: 12px;
  margin-top: 4px;
  padding-top: 2px;
}

.history-code-pill {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 0 12px;
  border-radius: var(--radius-sm);
  border: 1px solid var(--line);
  color: var(--ink);
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  overflow-wrap: anywhere;
}

.store-resource-band {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 1fr);
  gap: 32px;
  padding: 20px 0 10px;
  border-top: 1px solid var(--line);
}

.store-resource-copy h2 {
  font-size: clamp(2rem, 4vw, 3rem);
  line-height: 1.06;
  max-width: 12ch;
}

.store-resource-list {
  display: grid;
  gap: 0;
}

.store-resource-list a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 58px;
  border-top: 1px solid var(--line);
  color: var(--ink-soft);
  font-size: 16px;
}

.store-resource-list a:first-child {
  border-top: 0;
}

.store-footer {
  margin-top: 64px;
  background: var(--black);
  color: var(--cream-on-dark);
}

.store-footer-inner {
  width: min(1280px, 94vw);
  margin: 0 auto;
  padding: 36px 0 42px;
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 36px;
}

.store-footer-brand-block {
  display: grid;
  gap: 10px;
  max-width: 380px;
}

.store-footer-brand-row {
  display: inline-flex;
  align-items: center;
  gap: 14px;
}

.store-footer-brand {
  width: 58px;
  height: 44px;
  border-radius: 16px;
  border: 1px solid rgba(239, 231, 218, 0.16);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.96);
  overflow: hidden;
}

.store-footer-brand img {
  width: 90%;
  height: 90%;
  object-fit: contain;
  transform: scale(1.3);
  transform-origin: center;
}

.store-footer-brand-copy {
  display: grid;
  gap: 6px;
}

.store-footer-brand-copy p {
  font-size: 16px;
  color: #f7f1e7;
}

.store-footer-brand-copy span,
.store-footer-column a {
  color: rgba(239, 231, 218, 0.72);
}

.store-footer-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(160px, 1fr));
  gap: 28px;
}

.store-footer-column {
  display: grid;
  gap: 10px;
}

.store-footer-column h3 {
  font-size: 13px;
  line-height: 1.2;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(239, 231, 218, 0.54);
}

.store-footer-column a:hover {
  color: #f7f1e7;
}

.order-cards,
.history-list,
.history-code-list,
.query-result-order-list {
  display: grid;
  gap: 14px;
}

.query-result-shell {
  display: grid;
  gap: 18px;
}

.query-result-shell-head {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 16px;
}

.query-result-shell-head h3 {
  font-size: 24px;
  margin-top: 8px;
}

.history-merged-card {
  padding: 20px;
  background: var(--ag-card-soft);
  border-color: var(--ag-border);
  border-radius: 12px;
}

.history-merged-head {
  display: flex;
  justify-content: space-between;
  align-items: start;
  gap: 16px;
  margin-bottom: 16px;
}

.history-merged-head h3 {
  font-family: var(--font-ui);
  font-size: 20px;
  font-weight: 650;
  line-height: 1.15;
  letter-spacing: -0.02em;
  margin-bottom: 6px;
}

.history-merged-head-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: end;
}

.history-merged-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 14px;
}

.history-merged-line,
.history-item {
  display: grid;
  gap: 4px;
  padding-top: 10px;
  border-top: 1px solid var(--line);
}

.history-merged-line span,
.history-item span {
  font-family: var(--font-ui);
  color: rgba(17, 17, 17, 0.42);
  font-size: 12px;
  font-weight: 400;
}

.history-merged-line strong,
.history-item strong {
  font-family: var(--font-ui);
  font-size: 16px;
  font-weight: 600;
  line-height: 1.35;
  color: rgba(17, 17, 17, 0.86);
  overflow-wrap: anywhere;
}

.history-merged-section {
  display: grid;
  gap: 12px;
  margin-top: 16px;
}

.delivery-copy-card,
.delivery-copy-card-plain,
.delivery-copy-card-code,
.delivery-copy-card-account,
.delivery-copy-card-link {
  width: 100%;
  display: grid;
  gap: 8px;
  padding: 16px 18px;
  border-radius: 10px;
  border: 1px solid var(--ag-border);
  background: rgba(255, 255, 255, 0.38);
  color: var(--ink);
  text-align: left;
  transition: background 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
}

.delivery-copy-card:hover,
.delivery-copy-card-plain:hover {
  transform: translateY(-1px);
  background: rgba(255, 255, 255, 0.52);
  border-color: var(--ag-border-strong);
}

.delivery-copy-card-spotlight {
  padding: 20px;
}

.delivery-copy-card-plain-value {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  line-height: 1.6;
  overflow-wrap: anywhere;
}

.delivery-copy-card-head {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: start;
}

.delivery-copy-card-head strong {
  font-size: 15px;
}

.history-item.strong-item {
  border-top-color: var(--line-strong);
}

.delivery-expiry-banner,
.delivery-expiry-inline {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 40px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: rgba(17, 17, 16, 0.04);
  color: var(--ink-soft);
  font-size: 13px;
}

.delivery-expiry-inline {
  width: fit-content;
}

.delivery-expiry-label,
.delivery-expiry-note {
  color: var(--muted);
}

.delivery-expiry-value {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  color: var(--ink);
}

.delivery-expiry-banner.is-expired,
.delivery-expiry-inline.is-expired {
  color: var(--danger);
  border-color: rgba(183, 74, 44, 0.24);
  background: var(--danger-soft);
}

.checkout-payment-sentence {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
  line-height: 1.6;
}

.checkout-payment-prefix,
.checkout-payment-suffix {
  color: inherit;
}

.checkout-payment-deadline {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  color: #c54f3d;
  font-weight: 700;
}

.account-hero,
.hero-lite {
  padding-top: 4px;
}

.account-hero-copy h1 {
  font-family: var(--font-zh-display);
  font-size: clamp(54px, 5vw, 68px);
  font-weight: 720;
  line-height: 1.05;
  letter-spacing: -0.03em;
}

.account-layout {
  display: grid;
  grid-template-columns: minmax(280px, 0.9fr) minmax(340px, 1.1fr);
  gap: 24px;
}

.account-tips,
.account-panel,
.panel {
  padding: 26px;
}

.panel-headline {
  display: grid;
  gap: 8px;
  margin-bottom: 18px;
}

.panel h2,
.account-panel h2,
.account-tips h2,
.gemini-entry-panel h2,
.gemini-live-card h2 {
  font-family: var(--font-ui);
  font-size: 20px;
  font-weight: 650;
  line-height: 1.15;
  letter-spacing: -0.02em;
}

.tips-list {
  display: grid;
  gap: 0;
  margin-top: 18px;
}

.tip-item {
  min-height: 48px;
  display: flex;
  align-items: center;
  border-top: 1px solid var(--line);
  color: var(--ink-soft);
}

.tip-item:first-child {
  border-top: 0;
}

.label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-ui);
  font-size: 12px;
  font-weight: 400;
  color: rgba(17, 17, 17, 0.42);
  margin-bottom: 8px;
}

.account-hero-note p {
  font-family: var(--font-zh);
  font-size: 18px;
  line-height: 1.65;
  font-weight: 400;
  letter-spacing: -0.02em;
  color: rgba(17, 17, 17, 0.68);
}

.account-panel input {
  margin-bottom: 14px;
}

.history-list {
  min-height: 60px;
}

body.account-page {
  background: var(--ag-body-bg);
  color: var(--ag-text);
}

body.account-page .shell.account-shell {
  width: min(1320px, calc(100vw - 64px));
  padding: 20px 0 80px;
  gap: 40px;
  background: var(--ag-bg);
}

body.account-page .account-hero-grid {
  grid-template-columns: minmax(0, 1.12fr) minmax(320px, 0.88fr);
  gap: 40px;
  align-items: end;
}

body.account-page .account-hero-copy h1 {
  max-width: 9ch;
  font-size: clamp(48px, 4.8vw, 62px);
}

body.account-page .account-hero-note p {
  max-width: 420px;
  font-size: 17px;
  color: rgba(20, 20, 19, 0.72);
}

body.account-page .account-layout {
  gap: 24px;
}

body.account-page .account-tips,
body.account-page .account-panel,
body.account-page .panel.clean {
  background: var(--ag-card-soft);
  border: 1px solid var(--ag-border);
  border-radius: 12px;
  box-shadow: none;
}

body.account-page .panel-headline {
  margin-bottom: 14px;
}

body.account-page .history-list {
  gap: 12px;
}

body.account-page .history-merged-card {
  padding: 18px;
}

body.account-page .history-merged-card.is-empty {
  background: rgba(255, 255, 255, 0.22);
}

body.account-page .history-merged-head {
  margin-bottom: 12px;
}

body.account-page .history-code-list {
  gap: 10px;
}

body.account-page .delivery-copy-card {
  gap: 10px;
}

body.account-page .history-merged-grid {
  gap: 12px 16px;
}

.gemini-verify-page .shell {
  gap: 24px;
}

.gemini-decoy-field {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.gemini-console-shell {
  width: min(1220px, 94vw);
}

.gemini-brand-home,
.gemini-user-pill {
  border: 0;
  background: transparent;
  padding: 0;
}

.gemini-notice-board,
.gemini-entry-panel,
.gemini-live-card {
  padding: 26px;
}

.gemini-notice-topline {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 18px;
}

.gemini-doc-pill {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  padding: 0 14px;
  border-radius: var(--radius-sm);
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.54);
  white-space: nowrap;
}

.gemini-doc-pill:hover {
  background: #fffdf8;
}

.gemini-quote-board {
  border-left: 2px solid rgba(63, 79, 123, 0.28);
  padding-left: 18px;
}

.gemini-quote-body {
  display: grid;
  gap: 10px;
  color: var(--ink-soft);
}

.gemini-stage-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(300px, 0.85fr);
  gap: 18px;
}

.gemini-entry-head,
.gemini-live-row {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
}

.gemini-entry-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.gemini-entry-field {
  display: grid;
  gap: 8px;
}

.gemini-entry-field span {
  font-size: 13px;
  color: var(--muted);
}

.gemini-entry-action {
  grid-column: 1 / -1;
  display: flex;
  justify-content: flex-start;
  margin-top: 4px;
}

.gemini-live-summary {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  padding: 0 14px;
  border-radius: var(--radius-sm);
  border: 1px solid var(--line);
  background: rgba(17, 17, 16, 0.03);
  color: var(--ink-soft);
}

.gemini-live-summary.success,
.status-badge.success {
  color: var(--success);
  border-color: rgba(45, 107, 79, 0.22);
  background: var(--success-soft);
}

.gemini-live-summary.error,
.status-badge.error {
  color: var(--danger);
  border-color: rgba(183, 74, 44, 0.22);
  background: var(--danger-soft);
}

.gemini-live-summary.processing,
.status-badge.processing {
  color: var(--warning);
  border-color: rgba(143, 107, 37, 0.24);
  background: var(--warning-soft);
}

.status-badge {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: rgba(17, 17, 16, 0.03);
  color: var(--muted-strong);
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.gemini-phase-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 16px;
}

.gemini-phase-card {
  display: grid;
  gap: 4px;
  padding: 14px;
  border-radius: var(--radius-sm);
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.52);
}

.gemini-phase-card span {
  font-size: 12px;
  color: var(--muted);
}

.gemini-phase-card strong {
  font-size: 15px;
  line-height: 1.35;
}

.gemini-phase-card.is-current {
  border-color: rgba(143, 107, 37, 0.28);
  background: var(--warning-soft);
}

.gemini-phase-card.is-done {
  border-color: rgba(45, 107, 79, 0.22);
  background: var(--success-soft);
}

.gemini-phase-card.is-error {
  border-color: rgba(183, 74, 44, 0.24);
  background: var(--danger-soft);
}

.gemini-progress-hero {
  display: grid;
  gap: 12px;
}

.gemini-progress-headline {
  font-size: 18px;
  line-height: 1.35;
  color: var(--ink);
}

.gemini-progress-copy {
  color: var(--ink-soft);
  font-size: 14px;
}

.gemini-progress-track {
  position: relative;
  width: 100%;
  height: 8px;
  border-radius: 999px;
  background: rgba(17, 17, 16, 0.08);
  overflow: hidden;
}

.gemini-progress-indicator {
  position: absolute;
  inset: 0 auto 0 0;
  width: var(--progress, 12%);
  border-radius: inherit;
  background: linear-gradient(90deg, #7b6a4a 0%, #2d6b4f 100%);
}

.gemini-progress-meta {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  color: var(--muted);
  font-size: 13px;
}

.gemini-progress-bar {
  display: grid;
  gap: 8px;
}

.gemini-progress-caption {
  color: var(--muted);
  font-size: 13px;
}

.gemini-live-detail,
.gemini-log-panel,
.gemini-log-list {
  display: grid;
  gap: 12px;
}

.gemini-log-item {
  display: grid;
  gap: 6px;
  padding: 14px;
  border-radius: var(--radius-sm);
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.54);
}

.gemini-log-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
}

.gemini-action-row {
  display: flex;
  gap: 10px;
}

.modal {
  position: fixed;
  inset: 0;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(17, 17, 16, 0.44);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s ease;
  z-index: 70;
}

.modal.show {
  opacity: 1;
  pointer-events: auto;
}

.modal.is-enhanced-checkout {
  place-items: center;
  overflow-y: auto;
  padding-block: 24px;
}

.modal-box {
  width: min(1080px, 100%);
  max-height: min(88vh, 980px);
  overflow: auto;
  padding: 24px;
  opacity: 0;
  transform: translateY(10px) scale(0.985);
  transition: opacity 0.22s ease, transform 0.22s ease;
}

.modal.show .modal-box {
  opacity: 1;
  transform: translateY(0) scale(1);
}

.white-card {
  background: var(--surface);
}

.card-bin-picker-head,
.card-guide-modal-head,
.twofa-modal-head,
.purchase-notice-head,
.purchase-proof-lightbox-head,
.purchase-proof-head,
.utility-panel-head {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: start;
}

.card-bin-picker-head h3,
.card-guide-modal-head h3,
.twofa-modal-head h3,
.purchase-notice-head h3,
.purchase-proof-lightbox-head h3 {
  margin-top: 8px;
  font-size: 26px;
}

.card-bin-picker-body,
.card-guide-modal-body,
.twofa-modal-body,
.purchase-proof-lightbox-body {
  margin-top: 20px;
}

.card-bin-picker-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.card-bin-choice-card {
  width: 100%;
  min-height: 98px;
  padding: 18px;
  border-radius: var(--radius-sm);
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.54);
  color: var(--ink);
  display: grid;
  gap: 12px;
  text-align: left;
}

.card-bin-choice-card.is-active {
  border-color: rgba(17, 17, 16, 0.34);
  background: #fffdf8;
}

.card-bin-choice-code {
  font-size: 18px;
  font-weight: 700;
}

.card-bin-choice-stock {
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
  color: var(--muted);
}

.card-bin-picker-footer {
  display: grid;
  gap: 14px;
  margin-top: 18px;
}

.card-bin-picker-action-row {
  display: flex;
  align-items: center;
  gap: 12px;
}

.card-bin-qty-box {
  width: 110px;
  min-width: 110px;
  height: 42px;
  min-height: 42px;
  border-radius: 8px;
  border: 1px solid var(--line);
  background: rgba(255,255,255,0.5);
  display: inline-grid;
  grid-template-columns: 32px minmax(0,1fr) 32px;
  align-items: center;
}

.card-bin-picker-selection {
  display: grid;
  gap: 4px;
}

.card-bin-picker-selection strong {
  font-size: 18px;
}

.card-bin-picker-confirm {
  min-width: 150px;
}

.card-guide-input-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
}

.twofa-modal-box {
  width: min(520px, 100%);
}

.twofa-modal-body {
  display: grid;
  gap: 14px;
}

.twofa-input-label,
.twofa-code-label {
  font-family: var(--font-ui);
  font-size: 13px;
  font-weight: 650;
  color: var(--muted-strong);
}

.twofa-input-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
}

.twofa-input-row input {
  min-width: 0;
  height: 44px;
  border: 1px solid var(--line-strong);
  border-radius: var(--radius-sm);
  background: rgba(255, 255, 255, 0.58);
  color: var(--ink);
  font-family: var(--font-ui);
  font-size: 15px;
  padding: 0 12px;
  outline: none;
}

.twofa-input-row input:focus {
  border-color: rgba(20, 20, 19, 0.34);
  background: rgba(255, 255, 255, 0.82);
}

.twofa-error {
  min-height: 20px;
  color: var(--danger);
  font-size: 13px;
}

.twofa-code-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 18px 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.twofa-code-copy {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.twofa-code-copy strong {
  font-family: var(--font-ui);
  font-size: clamp(42px, 9vw, 62px);
  font-weight: 750;
  line-height: 1;
  letter-spacing: 0;
  color: var(--ink);
  font-variant-numeric: tabular-nums;
}

.twofa-timer-row {
  display: grid;
  gap: 8px;
  color: var(--muted);
  font-size: 13px;
}

.twofa-timer-track {
  height: 6px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(20, 20, 19, 0.1);
}

.twofa-timer-track span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: var(--ink);
  transition: width 0.18s linear;
}

@media (max-width: 560px) {
  .twofa-input-row,
  .twofa-code-panel {
    grid-template-columns: 1fr;
  }

  .twofa-code-copy strong {
    font-size: 48px;
  }
}

.card-guide-result-success {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}

.checkout-layout {
  width: min(1180px, 100%);
  max-height: min(90vh, 860px);
  padding: 0;
  display: grid;
  grid-template-columns: minmax(0, 0.98fr) minmax(360px, 0.9fr);
  align-items: stretch;
  overflow: hidden;
}

.modal-box.checkout-layout {
  padding: 0;
}

.checkout-left {
  background: linear-gradient(180deg, #181715 0%, #12110f 100%);
  color: var(--cream-on-dark);
  padding: 24px 24px 24px;
  display: grid;
  align-content: start;
  gap: 16px;
  min-width: 0;
  min-height: 0;
  overflow-y: auto;
  scrollbar-gutter: stable;
}

.checkout-left h3,
.checkout-left p,
.checkout-left strong,
.checkout-left span {
  color: inherit;
}

.checkout-right {
  padding: 22px 24px 24px;
  display: grid;
  gap: 14px;
  align-content: start;
  min-width: 0;
  min-height: 0;
  overflow-y: auto;
  scrollbar-gutter: stable;
}

.checkout-right h4 {
  font-size: 20px;
  margin: 0 0 4px;
}

.checkout-stage-head {
  display: flex;
  align-items: start;
  gap: 16px;
}

.checkout-back-btn {
  width: 40px;
  min-width: 40px;
  min-height: 40px;
  padding: 0;
  border: 1px solid rgba(239, 231, 218, 0.14);
  background: transparent;
  color: #f7f1e7;
  box-shadow: none;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.checkout-back-btn:hover {
  background: rgba(239, 231, 218, 0.04);
  border-color: rgba(239, 231, 218, 0.28);
  box-shadow: none;
}

.checkout-stage-copy {
  display: grid;
  gap: 6px;
}

.checkout-stage-title {
  font-size: 24px;
  line-height: 1.1;
}

.checkout-stage-desc {
  color: rgba(239, 231, 218, 0.66);
}

.summary-box,
.checkout-card,
.purchase-notice-intro-card,
.purchase-proof-card,
.activate-batch-results,
.activate-feedback-card,
.activate-feedback-item {
  border: 1px solid var(--line);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.7);
}

.summary-box,
.checkout-card,
.purchase-notice-intro-card,
.purchase-proof-card {
  padding: 16px;
}

.checkout-card-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: start;
  margin-bottom: 14px;
}

.summary-line {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
  min-height: 28px;
  padding-top: 7px;
  border-top: 1px solid var(--line);
}

.summary-line:first-child {
  border-top: 0;
  padding-top: 0;
}

.summary-line > span {
  color: var(--muted);
  font-size: 13px;
}

.summary-line strong {
  text-align: right;
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.summary-line.total {
  margin-top: 6px;
  padding-top: 14px;
  border-top-color: var(--line-strong);
  align-items: end;
}

.summary-line.total > strong {
  font-size: 18px;
}

.summary-line.total .money-inline {
  justify-content: flex-end;
  gap: 8px;
}

.summary-line.total .money-amount {
  font-size: 32px;
  font-weight: 700;
}

.summary-line.total .money-currency {
  font-size: 17px;
  color: var(--ink);
  transform: none;
}

.qr-state-logo img,
.checkout-hero-logo img {
  width: 36px;
  height: 36px;
  object-fit: contain;
}

.checkout-actions {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
  position: sticky;
  bottom: 0;
  padding-top: 12px;
  background: linear-gradient(180deg, rgba(250, 248, 242, 0), rgba(250, 248, 242, 0.94) 34%, var(--surface) 100%);
}

.checkout-actions > * {
  flex: 1 1 180px;
}

.checkout-contact-status-slot {
  color: var(--muted-strong);
}

.checkout-contact-card.is-locked-contact {
  border-color: rgba(138, 90, 52, 0.24);
  background: linear-gradient(180deg, rgba(138, 90, 52, 0.08), rgba(255, 255, 255, 0.72));
}

.checkout-contact-card.is-locked-contact .checkout-contact-status-slot {
  color: var(--brand-claude);
}

.checkout-contact-card.is-locked-contact input {
  border-color: rgba(138, 90, 52, 0.24);
  background: rgba(138, 90, 52, 0.08);
  color: var(--ink);
}

.checkout-contact-card.is-locked-contact .meta {
  display: none;
}

.checkout-hero-banner {
  margin-bottom: 10px;
  padding: 12px 14px;
  border: 1px solid rgba(239, 231, 218, 0.1);
  border-radius: var(--radius-sm);
  background: rgba(239, 231, 218, 0.02);
}

.checkout-hero-row {
  display: flex;
  justify-content: flex-start;
  gap: 14px;
  align-items: center;
  flex-wrap: wrap;
}

.checkout-hero-brand {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

.checkout-hero-logo {
  width: 48px;
  height: 48px;
  border-radius: var(--radius-sm);
  background: rgba(239, 231, 218, 0.08);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px;
}

.checkout-hero-copy {
  display: grid;
  gap: 4px;
}

.checkout-hero-copy strong {
  font-size: 18px;
  overflow-wrap: anywhere;
}

.checkout-hero-copy span {
  color: rgba(239, 231, 218, 0.68);
  font-size: 13px;
}

.qr,
.qr-state-card,
.qr-code-shell {
  width: 100%;
}

.qr {
  display: grid;
  gap: 14px;
  min-width: 0;
  align-content: start;
}

.qr-state-card,
.qr-code-shell {
  border-radius: 20px;
  border: 1px solid rgba(239, 231, 218, 0.14);
  background: rgba(239, 231, 218, 0.04);
  padding: 24px 22px;
  display: grid;
  gap: 18px;
  justify-items: stretch;
  min-width: 0;
}

.qr-code-shell {
  justify-items: center;
}

.qr-state-head {
  display: flex;
  align-items: center;
  gap: 16px;
  min-width: 0;
}

.qr-state-logo {
  width: 58px;
  height: 58px;
  min-width: 58px;
  border-radius: 14px;
  background: rgba(239, 231, 218, 0.08);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px;
}

.qr-state-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.qr-state-copy {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.qr-state-copy-centered {
  justify-items: center;
  text-align: center;
}

.qr-state-eyebrow {
  font-family: var(--sans);
  font-size: 12px;
  letter-spacing: 0.08em;
  color: rgba(239, 231, 218, 0.56);
}

.qr-state-card.is-loading .qr-state-title {
  color: #f7f1e7;
}

.qr-state-title {
  font-size: 22px;
  line-height: 1.1;
  max-width: 12ch;
}

.qr-state-copy-standalone,
.qr-code-copy {
  display: grid;
  gap: 6px;
}

.qr-state-copy-standalone .qr-state-title,
.qr-code-copy .qr-state-title {
  max-width: none;
}

.qr-code-copy {
  justify-items: center;
  text-align: center;
}

.qr-state-subtitle {
  color: rgba(239, 231, 218, 0.68);
  line-height: 1.6;
  max-width: 34ch;
}

.qr-code-image {
  width: min(304px, 100%);
  aspect-ratio: 1 / 1;
  object-fit: contain;
  padding: 14px;
  border-radius: 18px;
  background: #fff;
  margin: 0 auto;
}

.qr-code-tip {
  color: rgba(239, 231, 218, 0.68);
  font-size: 14px;
  line-height: 1.55;
  text-align: center;
  max-width: 24ch;
}

.checkout-pay-logo-shell {
  width: 88px;
  height: 88px;
  margin: 0 auto;
  border-radius: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(239, 231, 218, 0.08);
}

.checkout-pay-logo-shell-qr {
  width: 96px;
  height: 96px;
}

.checkout-pay-logo {
  display: block;
  width: 82%;
  height: 82%;
}

.checkout-pay-logo text {
  fill: #f7f1e7;
  font-family: var(--sans);
  letter-spacing: 0;
}

.checkout-pay-logo text:first-child {
  font-size: 34px;
  font-weight: 700;
}

.checkout-pay-logo text:last-child {
  font-size: 16px;
  font-weight: 700;
  opacity: 0.9;
}

.modal.is-qr-view {
  place-items: center;
}

.modal.is-qr-view .checkout-layout {
  width: min(520px, calc(100vw - 32px));
  grid-template-columns: 1fr;
  background: transparent;
}

.modal.is-qr-view .checkout-left,
.modal.is-qr-view .checkout-right {
  background: linear-gradient(180deg, #181715 0%, #12110f 100%);
}

.modal.is-qr-view .checkout-left {
  padding-bottom: 12px;
}

.modal.is-qr-view .checkout-right {
  padding: 0 24px 24px;
  gap: 0;
}

.modal.is-qr-view .checkout-right > :not(.checkout-actions) {
  display: none;
}

.modal.is-qr-view .checkout-actions {
  position: static;
  padding-top: 0;
  background: none;
}

.delivery-modal-box {
  width: min(760px, 100%);
}

.delivery-modal-head {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: start;
}

.delivery-modal-head h3 {
  margin-top: 8px;
  font-size: 28px;
}

.delivery-modal-body {
  margin-top: 18px;
  display: grid;
  gap: 16px;
}

.purchase-notice-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(280px, 0.9fr);
  gap: 18px;
  margin-top: 20px;
}

.purchase-notice-panel,
.purchase-notice-proof {
  display: grid;
  gap: 16px;
}

.purchase-notice-intro-card h4,
.purchase-proof-card h4 {
  margin-top: 8px;
  font-size: 22px;
}

.purchase-notice-list {
  display: grid;
  gap: 10px;
}

.purchase-notice-list-item {
  padding: 14px;
  border-radius: var(--radius-sm);
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.54);
}

.purchase-notice-confirm {
  display: flex;
  gap: 12px;
  align-items: start;
  padding: 14px 0 0;
  border-top: 1px solid var(--line);
}

.purchase-notice-confirm input {
  width: 18px;
  height: 18px;
  min-width: 18px;
  margin-top: 2px;
  padding: 0;
}

.purchase-proof-preview {
  width: 100%;
  min-height: 0;
  padding: 0;
  border: 0;
  background: transparent;
}

.purchase-proof-window {
  border-radius: var(--radius-sm);
  overflow: hidden;
  border: 1px solid var(--line);
  background: #fff;
}

.purchase-proof-window-image {
  padding: 12px;
}

.purchase-proof-image {
  width: 100%;
  height: auto;
}

.purchase-proof-image-large {
  max-height: 72vh;
  object-fit: contain;
}

.purchase-proof-caption-list {
  display: grid;
  gap: 8px;
}

.purchase-proof-caption-list p {
  color: var(--ink-soft);
}

.purchase-proof-lightbox {
  width: min(980px, 100%);
}

.purchase-proof-lightbox-body {
  margin-top: 18px;
}

.bundle-panel-head,
.bundle-mode-group,
.bundle-inline-price-list,
.bundle-picker-row,
.bundle-compact-summary {
  display: grid;
  gap: 12px;
}

.bundle-mode-group {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.bundle-mode-chip,
.bundle-close-btn,
.bundle-upgrade-toggle {
  min-height: 42px;
  padding: 0 14px;
  border-radius: var(--radius-sm);
  border: 1px solid var(--line);
  background: transparent;
  color: var(--ink);
}

.bundle-mode-chip.is-active {
  background: rgba(17, 17, 16, 0.06);
  border-color: var(--line-strong);
}

.bundle-inline-price-list {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  color: var(--muted);
  font-size: 13px;
}

.bundle-compact-summary {
  padding: 14px;
  border-radius: var(--radius-sm);
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.54);
}

.bundle-compact-top {
  display: flex;
  justify-content: space-between;
  gap: 12px;
}

.bundle-compact-main {
  color: var(--ink);
}

.bundle-compact-note {
  color: var(--muted);
  font-size: 13px;
}

.bundle-plan-price-accent {
  color: var(--danger);
}

.confirm-btn-brand-badge {
  width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.confirm-btn-brand-badge img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  filter: brightness(0) invert(1);
}

.btn-spinner,
.activate-submit-spinner {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  border: 2px solid rgba(247, 241, 231, 0.28);
  border-top-color: #f7f1e7;
  animation: spin 0.8s linear infinite;
}

.btn-check-icon {
  width: 16px;
  height: 16px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.25;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.btn-check-icon path {
  stroke-dasharray: 18;
  stroke-dashoffset: 18;
  animation: drawCheck 0.32s ease forwards;
}

.product-buy-btn.is-available:hover,
.bundle-primary-btn:hover,
.bundle-launch-btn:hover,
#checkOrderBtn:hover,
#confirmOrderBtn:hover,
#acceptPurchaseNoticeBtn:hover {
  transform: translateY(-1px);
}

.product-buy-btn.is-available:active,
.bundle-primary-btn:active,
.bundle-launch-btn:active,
#checkOrderBtn:active,
#confirmOrderBtn:active,
#acceptPurchaseNoticeBtn:active {
  transform: scale(0.985);
}

.project-switcher-btn.is-pressed,
.product-buy-btn.is-pressed,
.bundle-launch-btn.is-pressed,
.bundle-primary-btn.is-pressed,
#confirmOrderBtn.is-pressed,
#checkOrderBtn.is-pressed,
#acceptPurchaseNoticeBtn.is-pressed {
  animation: claudePress 0.34s ease;
}

@keyframes claudePress {
  0% {
    transform: scale(1);
  }

  42% {
    transform: scale(0.985);
  }

  100% {
    transform: scale(1);
  }
}

@keyframes drawCheck {
  to {
    stroke-dashoffset: 0;
  }
}

@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

.activate-page {
  width: min(1180px, 94vw);
  margin: 0 auto;
  padding: 28px 0 54px;
}

.activate-origin-page {
  background:
    linear-gradient(180deg, #fbf8f2 0%, var(--page-bg) 36%, var(--page-bg-strong) 100%);
}

.activate-bg,
.activate-bg-canvas {
  display: none;
}

.activate-toast {
  position: fixed;
  top: 20px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 85;
}

.activate-nav-shell {
  position: sticky;
  top: 0;
  z-index: 40;
  background: rgba(243, 238, 229, 0.84);
  backdrop-filter: blur(16px);
  border-bottom: 1px solid var(--line);
}

.activate-nav {
  width: min(1180px, 94vw);
  margin: 0 auto;
  min-height: 84px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
}

.activate-brand {
  display: inline-flex;
  align-items: center;
  gap: 14px;
}

.activate-brand-logo {
  width: 40px;
  height: 40px;
  border-radius: var(--radius-sm);
  padding: 8px;
  background: var(--black);
}

.activate-brand-copy {
  display: grid;
  gap: 2px;
}

.activate-brand-copy strong {
  font-size: 15px;
  color: var(--ink);
}

.activate-brand-copy span {
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
}

.activate-nav-links {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

.activate-nav-links a,
.activate-nav-btn {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  padding: 0 14px;
  border-radius: var(--radius-sm);
  border: 1px solid var(--line);
  background: transparent;
}

.activate-nav-user {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  padding: 0 14px;
  border-radius: var(--radius-sm);
  border: 1px solid var(--line);
  color: var(--muted-strong);
}

.activate-live-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid rgba(45, 107, 79, 0.22);
  background: var(--success-soft);
  color: var(--success);
}

.activate-live-pill i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: currentColor;
}

.activate-hero,
.activate-intro {
  padding: 20px 0 10px;
}

.activate-hero h1 {
  display: flex;
  align-items: center;
  gap: 18px;
  font-size: clamp(2.6rem, 6vw, 4.5rem);
  line-height: 0.94;
}

.activate-hero-title-mark {
  width: 72px;
  height: 72px;
  border-radius: var(--radius-sm);
  background: var(--black);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px;
}

.activate-hero-title-text {
  display: grid;
}

.activate-hero-copy p {
  margin-top: 14px;
  max-width: 720px;
  color: var(--ink-soft);
  font-size: 18px;
  line-height: 1.6;
}

.activate-section-head h2 {
  font-size: 30px;
}

.activate-steps-grid {
  margin-top: 18px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.activate-step-box {
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  background: rgba(255, 255, 255, 0.54);
  display: grid;
  gap: 10px;
}

.activate-step-box span {
  font-size: 12px;
  color: var(--muted);
  letter-spacing: 0.08em;
}

.activate-step-box p {
  color: var(--ink-soft);
  line-height: 1.55;
}

.activate-console {
  margin-top: 8px;
  padding: 0;
  overflow: hidden;
}

.activate-console-body {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(320px, 0.88fr);
}

.activate-console-main {
  padding: 28px;
  background: var(--surface);
}

.activate-console-side {
  padding: 28px;
  background: var(--black);
  color: var(--cream-on-dark);
  display: grid;
  align-content: start;
  gap: 18px;
}

.activate-console-side .activate-feedback-card,
.activate-console-side .activate-feedback-item {
  background: rgba(239, 231, 218, 0.05);
  border-color: rgba(239, 231, 218, 0.14);
}

.activate-block {
  display: grid;
  gap: 18px;
}

.activate-error-banner {
  padding: 14px 16px;
  border-radius: var(--radius-sm);
  border: 1px solid rgba(183, 74, 44, 0.24);
  background: var(--danger-soft);
  color: var(--danger);
}

.activate-form-field {
  display: grid;
  gap: 10px;
}

.activate-field-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  flex-wrap: wrap;
}

.activate-field-head label,
.activate-form-field > label {
  font-size: 13px;
  color: var(--muted);
}

.activate-mode-badge {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid var(--line);
  color: var(--muted-strong);
  background: rgba(17, 17, 16, 0.04);
  font-size: 12px;
  font-weight: 700;
}

.activate-field-caption {
  color: var(--muted);
  font-size: 13px;
}

.activate-inline-link {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.activate-inline-check,
.activate-submit-row,
.activate-batch-head,
.activate-batch-actions {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
}

.activate-inline-check {
  align-items: stretch;
}

.activate-input-shell {
  flex: 1;
}

.activate-input-shell textarea,
.activate-code-textarea {
  min-height: 110px;
}

.activate-copy-codes-btn {
  width: 46px;
  min-width: 46px;
  padding: 0;
}

.activate-copy-codes-btn svg {
  width: 18px;
  height: 18px;
  fill: currentColor;
}

.activate-batch-results {
  padding: 18px;
}

.activate-batch-head {
  justify-content: space-between;
  margin-bottom: 12px;
}

.activate-batch-list {
  display: grid;
  gap: 10px;
}

.activate-batch-row {
  display: grid;
  gap: 8px;
  padding: 14px;
  border-radius: var(--radius-sm);
  border: 1px solid var(--line);
  background: rgba(255, 255, 255, 0.52);
}

.activate-batch-status {
  display: inline-flex;
  width: fit-content;
  min-height: 28px;
  align-items: center;
  padding: 0 10px;
  border-radius: 999px;
  border: 1px solid var(--line);
  font-size: 12px;
  font-weight: 700;
}

.activate-feedback-card {
  position: relative;
  padding: 20px;
  display: grid;
  gap: 16px;
}

.activate-feedback-head {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 12px;
}

.activate-feedback-badge {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(239, 231, 218, 0.14);
  color: rgba(239, 231, 218, 0.78);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
}

.activate-feedback-title {
  font-size: 24px;
  color: #f7f1e7;
}

.activate-feedback-copy {
  color: rgba(239, 231, 218, 0.72);
  line-height: 1.6;
}

.activate-feedback-detail {
  display: grid;
  gap: 10px;
}

.activate-feedback-item {
  padding: 14px;
  display: grid;
  gap: 4px;
}

.activate-feedback-item span {
  color: rgba(239, 231, 218, 0.56);
  font-size: 12px;
}

.activate-feedback-item strong {
  color: #f7f1e7;
  overflow-wrap: anywhere;
}

#activateProgress {
  width: 100%;
  height: 8px;
  border-radius: 999px;
  background: rgba(239, 231, 218, 0.08);
  overflow: hidden;
}

#activateBar {
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #8f6b25 0%, #2d6b4f 100%);
  transition: width 0.2s ease;
}

.activate-footer {
  margin-top: 48px;
  background: var(--black);
  color: var(--cream-on-dark);
}

.activate-footer-grid {
  width: min(1180px, 94vw);
  margin: 0 auto;
  padding: 28px 0 34px;
  display: flex;
  justify-content: space-between;
  gap: 28px;
}

.activate-footer-brand,
.activate-footer-links {
  display: grid;
  gap: 10px;
}

.activate-footer-logo {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

.activate-footer-logo img {
  width: 38px;
  height: 38px;
  border-radius: var(--radius-sm);
  background: #f7f1e7;
  padding: 6px;
}

.activate-footer-links h4 {
  color: rgba(239, 231, 218, 0.56);
  font-size: 13px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.activate-footer-links a {
  color: rgba(239, 231, 218, 0.76);
}

.reveal-block {
  opacity: 0;
  transform: translateY(18px);
  transition:
    opacity 0.44s ease var(--reveal-delay, 0ms),
    transform 0.44s ease var(--reveal-delay, 0ms);
}

.reveal-block.is-visible {
  opacity: 1;
  transform: translateY(0);
}

@media (max-width: 1180px) {
  .project-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .store-hero-grid,
  .account-hero-grid,
  .store-resource-band,
  .account-layout,
  .gemini-stage-layout,
  .activate-console-body,
  .purchase-notice-grid {
    grid-template-columns: 1fr;
  }

  .section-showcase,
  .checkout-layout {
    grid-template-columns: 1fr;
  }

  .checkout-layout {
    max-height: none;
  }

  .checkout-left,
  .checkout-right {
    overflow: visible;
  }

  .checkout-actions {
    position: static;
    background: none;
  }

  .store-footer-inner,
  .activate-footer-grid {
    flex-direction: column;
  }
}

@media (max-width: 900px) {
  .topbar,
  .activate-nav {
    flex-wrap: wrap;
    align-items: start;
  }

  .topbar-nav {
    order: 3;
    width: 100%;
    margin-left: 0;
    overflow-x: auto;
  }

  .topbar-action-cluster {
    margin-left: auto;
    flex-wrap: wrap;
  }

  .control-bar-head,
  .query-result-shell-head,
  .history-merged-head,
  .utility-panel-head,
  .gemini-notice-topline,
  .gemini-entry-head,
  .gemini-live-row {
    flex-direction: column;
    align-items: start;
  }

  .hero-fact-grid,
  .activate-steps-grid,
  .gemini-phase-strip,
  .catalog-meta-grid,
  .card-bin-picker-grid,
  .bundle-mode-group,
  .bundle-inline-price-list {
    grid-template-columns: 1fr;
  }

  .project-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .shell,
  .activate-page {
    width: min(100vw - 24px, 100%);
    padding-top: 12px;
    gap: 22px;
  }

  .topbar {
    gap: 14px;
    min-height: 0;
    padding: 12px 16px;
  }

  .topbar-brand {
    min-width: 0;
  }

  .topbar-nav {
    gap: 0;
  }

  .topbar-nav-link,
  .nav-link,
  .nav-utility-btn {
    min-height: 48px;
    font-size: 17px;
    padding-inline: 10px;
  }

  .project-switcher-btn {
    font-size: 18px;
    padding: 12px 10px 14px;
  }

  .nav-user-chip {
    max-width: 100%;
  }

  .nav-cta-combo,
  .nav-primary-cta-solo {
    min-height: 40px;
  }

  .store-hero-copy h1,
  .account-hero h1 {
    font-size: clamp(2.6rem, 14vw, 4.1rem);
  }

  .store-hero-aside p,
  .account-hero-note p {
    font-size: 18px;
  }

  .control-bar-head h2,
  .panel h2,
  .utility-panel-head h3,
  .query-result-shell-head h3,
  .activate-section-head h2,
  .gemini-entry-panel h2,
  .gemini-live-card h2 {
    font-size: 26px;
  }

  .catalog-product-card,
  .panel,
  .utility-panel-card,
  .gemini-notice-board,
  .gemini-entry-panel,
  .gemini-live-card,
  .modal-box,
  .store-feature-card,
  .activate-console-main,
  .activate-console-side {
    padding: 20px;
  }

  .checkout-left,
  .checkout-right {
    padding: 16px;
  }

  .product-action-row,
  .query-dock-form,
  .card-guide-input-row,
  .checkout-actions {
    grid-template-columns: 1fr;
    flex-direction: column;
  }

  .checkout-actions > * {
    width: 100%;
  }

  .qr-state-card,
  .qr-code-shell {
    padding: 16px;
    gap: 12px;
  }

  .qr-state-title {
    font-size: 18px;
  }

  .summary-line.total span:last-child,
  .summary-line.total strong {
    font-size: 16px;
  }

  .catalog-product-facts {
    grid-template-columns: 1fr 1fr;
  }

  .store-footer-brand-row {
    align-items: start;
  }

  .modal.is-qr-view .checkout-layout {
    width: min(100vw - 16px, 100%);
  }

  .modal.is-qr-view .checkout-right {
    padding: 0 16px 16px;
  }

  .history-merged-grid {
    grid-template-columns: 1fr;
  }

  .activate-nav-links {
    width: 100%;
  }

  .activate-hero h1 {
    align-items: start;
  }

  .activate-hero-title-mark {
    width: 58px;
    height: 58px;
  }
}

/* Store redesign v9 */
body.store-page {
  --page-bg: #f0eee6;
  --page-bg-soft: #f0eee6;
  --surface: #e3dacc;
  --surface-strong: #ddd3c4;
  --surface-light: #e9e0d2;
  --black: var(--ag-black);
  --black-hover: #242421;
  --black-soft: #181815;
  --text-main: var(--ag-text);
  --text-muted: var(--ag-muted);
  --text-faint: var(--ag-soft);
  --text-on-dark: var(--ag-ivory);
  --text-on-dark-muted: rgba(250, 249, 245, 0.68);
  --text-on-dark-faint: rgba(250, 249, 245, 0.48);
  --border: rgba(20, 20, 19, 0.09);
  --border-strong: rgba(20, 20, 19, 0.13);
  --border-on-dark: rgba(255, 255, 255, 0.16);
  --sans: var(--font-ui);
  --serif: var(--font-serif-en);
  background: var(--page-bg);
  color: var(--text-main);
  overflow-x: clip;
}

body.store-page::before {
  display: none;
}

body.store-page .shell.store-shell {
  width: min(1432px, calc(100vw - 56px));
  padding: 8px 0 72px;
  gap: 42px;
  background: var(--page-bg);
}

body.store-page .utility-panel-card,
body.store-page .catalog-product-card,
body.store-page .history-merged-card,
body.store-page .modal-box {
  box-shadow: none;
}

body.store-page h1,
body.store-page h2,
body.store-page h3,
body.store-page h4,
body.store-page h5,
body.store-page h6 {
  color: var(--text-main);
}

body.store-page p,
body.store-page .muted,
body.store-page .meta {
  color: var(--text-muted);
}

body.store-page .section-kicker,
body.store-page .dock-kicker,
body.store-page .catalog-product-kicker,
body.store-page .purchase-notice-intro-kicker,
body.store-page .purchase-proof-kicker,
body.store-page .checkout-card-kicker,
body.store-page .result-eyebrow {
  font-family: var(--font-display-en);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(17, 17, 17, 0.42);
}

body.store-page button,
body.store-page .project-link-btn,
body.store-page .query-copy-order-btn,
body.store-page .query-copy-all-btn,
body.store-page .bundle-primary-btn,
body.store-page .activate-submit-btn,
body.store-page .activate-mini-btn,
body.store-page .gemini-submit-btn,
body.store-page .gemini-retry-btn,
body.store-page .gemini-secondary-btn {
  min-height: 44px;
  border-radius: 8px;
  box-shadow: none;
  font-family: var(--sans);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0;
}

body.store-page button:disabled,
body.store-page .project-link-btn:disabled,
body.store-page .query-copy-order-btn:disabled,
body.store-page .query-copy-all-btn:disabled,
body.store-page .bundle-primary-btn:disabled,
body.store-page .activate-submit-btn:disabled,
body.store-page .activate-mini-btn:disabled,
body.store-page .gemini-submit-btn:disabled,
body.store-page .gemini-retry-btn:disabled,
body.store-page .gemini-secondary-btn:disabled {
  opacity: 0.72;
}

body.store-page .ghost,
body.store-page .project-link-btn.ghost,
body.store-page .nav-link,
body.store-page .nav-utility-btn,
body.store-page .copy-btn,
body.store-page .product-inline-link,
body.store-page .guide-link,
body.store-page .activate-nav-btn {
  background: transparent;
  color: var(--text-main);
  border-color: var(--border);
}

body.store-page .ghost:hover,
body.store-page .project-link-btn.ghost:hover,
body.store-page .nav-link:hover,
body.store-page .nav-utility-btn:hover,
body.store-page .copy-btn:hover,
body.store-page .product-inline-link:hover,
body.store-page .guide-link:hover,
body.store-page .activate-nav-btn:hover {
  background: rgba(17, 17, 17, 0.03);
  border-color: var(--border-strong);
  box-shadow: none;
}

body.store-page .project-link-btn:not(.ghost),
body.store-page .product-buy-btn.is-available,
body.store-page .bundle-primary-btn,
body.store-page .bundle-launch-btn,
body.store-page .card-bin-picker-confirm,
body.store-page #checkOrderBtn,
body.store-page #confirmOrderBtn,
body.store-page #acceptPurchaseNoticeBtn,
body.store-page #verifyCardGuideBtn {
  background: var(--ag-button-black);
  border-color: var(--ag-button-black);
  color: var(--text-on-dark);
}

body.store-page .project-link-btn:not(.ghost):hover,
body.store-page .product-buy-btn.is-available:hover,
body.store-page .bundle-primary-btn:hover,
body.store-page .bundle-launch-btn:hover,
body.store-page .card-bin-picker-confirm:hover,
body.store-page #checkOrderBtn:hover,
body.store-page #confirmOrderBtn:hover,
body.store-page #acceptPurchaseNoticeBtn:hover,
body.store-page #verifyCardGuideBtn:hover {
  background: var(--black-hover);
  border-color: var(--black-hover);
  color: var(--text-on-dark);
  transform: none;
}

body.store-page .project-link-btn:not(.ghost):active,
body.store-page .product-buy-btn.is-available:active,
body.store-page .bundle-primary-btn:active,
body.store-page .bundle-launch-btn:active,
body.store-page .card-bin-picker-confirm:active,
body.store-page #checkOrderBtn:active,
body.store-page #confirmOrderBtn:active,
body.store-page #acceptPurchaseNoticeBtn:active,
body.store-page #verifyCardGuideBtn:active {
  transform: translateY(0);
}

body.store-page .store-feature-card .project-link-btn {
  background: #f7f4ec;
  border-color: #f7f4ec;
  color: #0b0b0a;
}

body.store-page .store-feature-card .project-link-btn:hover {
  background: #e9e4da;
  border-color: #e9e4da;
  color: #0b0b0a;
  transform: none;
}

body.store-page .store-feature-card .project-link-btn.ghost,
body.store-page .store-feature-card .card-guide-inline-trigger {
  background: transparent;
  border-color: rgba(247, 244, 236, 0.18);
  color: var(--text-on-dark);
}

body.store-page .store-feature-card .project-link-btn.ghost:hover,
body.store-page .store-feature-card .card-guide-inline-trigger:hover {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.26);
  color: var(--text-on-dark);
  transform: none;
}

body.store-page .loading-spinner {
  width: 14px;
  height: 14px;
  border: 2px solid rgba(247, 244, 236, 0.28);
  border-top-color: #f7f4ec;
  border-radius: 50%;
  animation: spin 0.7s linear infinite;
  flex: 0 0 auto;
}

body.store-page .loading-spinner.is-dark {
  border-color: rgba(17, 17, 17, 0.18);
  border-top-color: #0b0b0a;
}

body.store-page #checkOrderBtn.is-loading,
body.store-page #verifyCardGuideBtn.is-loading {
  pointer-events: none;
  opacity: 0.92;
}

body.store-page .topbar {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 24px;
  min-height: 72px;
  padding: 0 max(28px, calc((100vw - 1432px) / 2));
  background: var(--page-bg);
  backdrop-filter: none;
  border-bottom: 0;
}

body.store-page .brand-mark {
  width: 70px;
  height: 40px;
  border-radius: 0;
  border: 0;
  background: transparent;
}

body.store-page .topbar-brand {
  display: inline-flex;
  align-items: center;
  min-width: 0;
  padding-left: 0;
  white-space: nowrap;
  overflow: hidden;
  max-width: 336px;
  transition: max-width 360ms cubic-bezier(0.22, 1, 0.36, 1);
}

body.store-page .brand-mini {
  gap: 0;
}

body.store-page .brand-stack {
  gap: 0;
}

body.store-page .brand-stack-motion {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  align-content: center;
  min-width: 0;
}

body.store-page .brand-text {
  overflow: hidden;
  max-width: 248px;
  margin-left: 14px;
  opacity: 1;
  transform: translateX(0);
  transform-origin: left center;
  transition:
    max-width 360ms cubic-bezier(0.22, 1, 0.36, 1),
    opacity 240ms ease,
    transform 360ms cubic-bezier(0.22, 1, 0.36, 1),
    margin-left 360ms cubic-bezier(0.22, 1, 0.36, 1);
}

body.store-page .brand-stack-expanded {
  display: inline-flex;
  align-items: center;
  gap: 0;
  min-width: max-content;
}

body.store-page .brand-stack strong {
  font-family: var(--font-ui);
  font-size: 19px;
  line-height: 1;
  font-weight: 620;
  letter-spacing: -0.01em;
  color: rgba(20, 20, 19, 0.96);
  white-space: nowrap;
}

body.store-page .brand-mark {
  flex: 0 0 auto;
  transform-origin: center;
  transition: transform 360ms cubic-bezier(0.22, 1, 0.36, 1);
}

body.store-page .brand-mark-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transform: scale(1.26);
}

body.store-page .brand-stack-expanded > span {
  display: none;
}

body.store-page .brand-stack-condensed {
  display: none;
}

body.store-page .topbar.is-scrolled .topbar-brand,
body.store-page.is-topbar-condensed .topbar-brand {
  max-width: 70px;
}

body.store-page .topbar.is-scrolled .brand-text,
body.store-page.is-topbar-condensed .brand-text {
  max-width: 0;
  opacity: 0;
  margin-left: 0;
  transform: translateX(-8px);
}

body.store-page .topbar.is-scrolled .brand-mark,
body.store-page.is-topbar-condensed .brand-mark {
  transform: scale(0.96);
}

body.store-page .topbar-nav {
  position: relative;
  justify-self: end;
  margin-left: 0;
  gap: 24px;
  align-items: center;
  flex-wrap: nowrap;
}

body.checkout-open {
  overflow: hidden;
}

body.store-page #qrModal {
  position: fixed;
  inset: 0;
  z-index: 120;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 32px;
  overflow: hidden;
  background: rgba(17, 16, 13, 0.72);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.22s cubic-bezier(0.16, 1, 0.3, 1);
}

body.store-page #qrModal.show {
  opacity: 1;
  pointer-events: auto;
}

body.store-page #qrModal .checkout-layout {
  position: relative;
  width: min(1180px, calc(100vw - 64px));
  max-height: calc(100vh - 64px);
  padding: 0;
  display: grid;
  grid-template-columns: minmax(0, 1.04fr) minmax(380px, 0.96fr);
  align-items: stretch;
  border-radius: 24px;
  overflow: hidden;
  border: 1px solid rgba(44, 36, 26, 0.14);
  background: #e7dcc9;
  box-shadow: 0 24px 90px rgba(8, 7, 5, 0.18);
  opacity: 0;
  transform: translateY(12px) scale(0.985);
  transition:
    opacity 0.24s cubic-bezier(0.16, 1, 0.3, 1),
    transform 0.24s cubic-bezier(0.16, 1, 0.3, 1);
}

body.store-page #qrModal.show .checkout-layout {
  opacity: 1;
  transform: translateY(0) scale(1);
}

body.store-page #qrModal .checkout-left {
  padding: 30px;
  background: linear-gradient(180deg, #15130f 0%, #11100d 100%);
  color: #f7f3ea;
  display: flex;
  flex-direction: column;
  gap: 18px;
  min-width: 0;
  min-height: 0;
  overflow: auto;
  scrollbar-gutter: stable;
}

body.store-page #qrModal .checkout-right {
  padding: 28px;
  background: #e7dcc9;
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-width: 0;
  min-height: 0;
  overflow: auto;
  scrollbar-gutter: stable;
}

body.store-page #qrModal .checkout-stage-head {
  display: flex;
  align-items: flex-start;
  gap: 14px;
}

body.store-page #qrModal .checkout-back-btn {
  width: 40px;
  min-width: 40px;
  min-height: 40px;
  padding: 0;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.03);
  color: #f7f3ea;
}

body.store-page #qrModal .checkout-back-btn:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.2);
}

body.store-page #qrModal .checkout-stage-copy {
  display: grid;
  gap: 7px;
  min-width: 0;
}

body.store-page #qrModal .checkout-stage-kicker {
  font-family: var(--font-display-en);
  font-size: 11px;
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(247, 243, 234, 0.48);
}

body.store-page #qrModal .checkout-stage-title {
  font-size: 32px;
  line-height: 1.04;
  font-weight: 630;
  color: #f7f3ea;
}

body.store-page #qrModal .checkout-stage-desc {
  font-size: 15px;
  line-height: 1.58;
  color: rgba(247, 243, 234, 0.62);
  max-width: 44ch;
}

body.store-page #qrModal .checkout-inline-notice {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 16px;
  border-radius: 16px;
  border: 1px solid rgba(167, 112, 87, 0.22);
  background: rgba(126, 74, 52, 0.16);
  color: #f7f3ea;
}

body.store-page #qrModal .checkout-inline-notice.tone-expired {
  border-color: rgba(178, 142, 86, 0.24);
  background: rgba(122, 93, 49, 0.18);
}

body.store-page #qrModal .checkout-inline-notice-icon {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  border: 1px solid currentColor;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 700;
  flex: 0 0 auto;
  opacity: 0.92;
}

body.store-page #qrModal .checkout-inline-notice-copy {
  display: grid;
  gap: 4px;
}

body.store-page #qrModal .checkout-inline-notice-copy strong,
body.store-page #qrModal .checkout-inline-notice-copy p {
  color: inherit;
}

body.store-page #qrModal .checkout-inline-notice-copy p {
  font-size: 14px;
  line-height: 1.56;
  opacity: 0.84;
}

body.store-page #qrModal .checkout-progress {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

body.store-page #qrModal .checkout-progress-step {
  min-height: 58px;
  padding: 12px 14px;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.04);
  display: grid;
  gap: 10px;
}

body.store-page #qrModal .checkout-progress-step.is-active {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.18);
}

body.store-page #qrModal .checkout-progress-step.is-complete {
  background: rgba(247, 243, 234, 0.08);
  border-color: rgba(220, 207, 184, 0.2);
}

body.store-page #qrModal .checkout-progress-index {
  width: 24px;
  height: 24px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 600;
  color: #f7f3ea;
}

body.store-page #qrModal .checkout-progress-step.is-complete .checkout-progress-index {
  border-color: rgba(220, 207, 184, 0.28);
  background: rgba(220, 207, 184, 0.14);
}

body.store-page #qrModal .checkout-progress-label {
  font-size: 13px;
  line-height: 1.35;
  color: rgba(247, 243, 234, 0.76);
}

body.store-page #qrModal .qr {
  width: 100%;
  min-width: 0;
  display: grid;
}

body.store-page #qrModal .checkout-surface {
  width: 100%;
  border-radius: 22px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.04);
  padding: 24px;
  display: grid;
  gap: 18px;
}

body.store-page #qrModal .checkout-surface-state {
  min-height: 316px;
  align-content: start;
}

body.store-page #qrModal .checkout-surface-visual {
  min-height: 124px;
  display: grid;
  place-items: center;
}

body.store-page #qrModal .checkout-surface-kicker {
  font-family: var(--font-display-en);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(247, 243, 234, 0.48);
}

body.store-page #qrModal .checkout-surface-copy {
  display: grid;
  gap: 8px;
}

body.store-page #qrModal .checkout-surface-copy h4 {
  font-size: 24px;
  line-height: 1.12;
  color: #f7f3ea;
}

body.store-page #qrModal .checkout-surface-copy p {
  font-size: 15px;
  line-height: 1.62;
  color: rgba(247, 243, 234, 0.7);
  max-width: 40ch;
}

body.store-page #qrModal .checkout-motion {
  position: relative;
  width: 88px;
  height: 88px;
  display: grid;
  place-items: center;
  color: #e4d5bc;
}

body.store-page #qrModal .checkout-motion-loading .checkout-motion-ring {
  position: absolute;
  inset: 11px;
  border-radius: 50%;
  border: 2px solid rgba(247, 243, 234, 0.16);
  border-top-color: #f7f3ea;
  animation: checkoutSpin 1s linear infinite;
}

body.store-page #qrModal .checkout-motion-loading .checkout-motion-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #dccfb8;
  animation: checkoutPulse 1.4s ease-in-out infinite;
}

body.store-page #qrModal .checkout-motion-initial {
  grid-template-columns: repeat(3, 1fr);
  gap: 8px;
}

body.store-page #qrModal .checkout-motion-card {
  width: 18px;
  height: 42px;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(247, 243, 234, 0.9), rgba(247, 243, 234, 0.28));
}

body.store-page #qrModal .checkout-motion-card:nth-child(2) {
  transform: translateY(7px);
  opacity: 0.8;
}

body.store-page #qrModal .checkout-motion-card:nth-child(3) {
  opacity: 0.62;
}

body.store-page #qrModal .checkout-motion-success .checkout-success-halo {
  position: absolute;
  inset: 18px;
  border-radius: 50%;
  border: 1.5px solid rgba(228, 213, 188, 0.2);
  animation: checkoutSuccessHalo 0.74s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

body.store-page #qrModal .checkout-success-svg {
  width: 88px;
  height: 88px;
}

body.store-page #qrModal .checkout-success-circle,
body.store-page #qrModal .checkout-success-check {
  fill: none;
  stroke: currentColor;
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body.store-page #qrModal .checkout-success-circle {
  stroke-dasharray: 176;
  stroke-dashoffset: 176;
  animation: checkoutStrokeCircle 0.58s cubic-bezier(0.16, 1, 0.3, 1) forwards 0.08s;
}

body.store-page #qrModal .checkout-success-check {
  stroke-dasharray: 44;
  stroke-dashoffset: 44;
  animation: checkoutStrokeCheck 0.42s cubic-bezier(0.16, 1, 0.3, 1) forwards 0.3s;
}

body.store-page #qrModal .checkout-motion-failed svg,
body.store-page #qrModal .checkout-motion-expired svg {
  width: 88px;
  height: 88px;
}

body.store-page #qrModal .checkout-motion-failed circle,
body.store-page #qrModal .checkout-motion-failed path {
  fill: none;
  stroke: #d4b7a7;
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body.store-page #qrModal .checkout-motion-expired circle,
body.store-page #qrModal .checkout-motion-expired path {
  fill: none;
  stroke: #d4c09a;
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body.store-page #qrModal .checkout-shimmer-line {
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(247, 243, 234, 0.38), transparent);
  background-size: 220% 100%;
  animation: checkoutShimmer 1.6s linear infinite;
}

body.store-page #qrModal .checkout-surface-qr {
  gap: 16px;
}

body.store-page #qrModal .checkout-qr-shell {
  display: grid;
  gap: 16px;
  justify-items: center;
}

body.store-page #qrModal .checkout-qr-card {
  position: relative;
  width: min(320px, 100%);
  padding: 16px;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);
}

body.store-page #qrModal .checkout-qr-image {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: contain;
  display: block;
}

body.store-page #qrModal .checkout-surface-qr.is-expired .checkout-qr-card {
  opacity: 0.68;
}

body.store-page #qrModal .checkout-qr-expired-badge {
  position: absolute;
  top: 14px;
  left: 50%;
  transform: translateX(-50%);
  min-height: 28px;
  padding: 0 12px;
  border-radius: 999px;
  background: rgba(17, 16, 13, 0.82);
  color: #f7f3ea;
  font-size: 12px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

body.store-page #qrModal .checkout-qr-copy {
  display: grid;
  gap: 8px;
  justify-items: center;
  text-align: center;
}

body.store-page #qrModal .checkout-qr-copy h4 {
  font-size: 18px;
  line-height: 1.36;
  color: #f7f3ea;
}

body.store-page #qrModal .checkout-qr-copy p {
  max-width: 36ch;
  font-size: 14px;
  line-height: 1.58;
  color: rgba(247, 243, 234, 0.68);
}

body.store-page #qrModal .checkout-wait-strip {
  min-height: 46px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.05);
  display: flex;
  align-items: center;
  gap: 10px;
  color: rgba(247, 243, 234, 0.76);
  font-size: 13px;
}

body.store-page #qrModal .checkout-wait-strip.is-expired {
  color: rgba(247, 243, 234, 0.66);
}

body.store-page #qrModal .checkout-wait-dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: currentColor;
  animation: checkoutPulse 1.5s ease-in-out infinite;
}

body.store-page #qrModal .checkout-delivery {
  display: grid;
  gap: 14px;
}

body.store-page #qrModal .checkout-delivery-panel {
  display: grid;
  gap: 14px;
  padding: 22px;
  border-radius: 22px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.05);
}

body.store-page #qrModal .checkout-delivery-panel.is-empty {
  min-height: 160px;
  align-content: start;
}

body.store-page #qrModal .checkout-delivery-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
}

body.store-page #qrModal .checkout-delivery-head h4 {
  margin-top: 8px;
  font-size: 24px;
  color: #f7f3ea;
}

body.store-page #qrModal .checkout-delivery-head p,
body.store-page #qrModal .checkout-delivery-empty p {
  margin-top: 6px;
  font-size: 14px;
  line-height: 1.58;
  color: rgba(247, 243, 234, 0.66);
}

body.store-page #qrModal .checkout-delivery-list {
  display: grid;
  gap: 12px;
}

body.store-page #qrModal .checkout-delivery-card {
  display: grid;
  gap: 12px;
  padding: 16px;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.04);
}

body.store-page #qrModal .checkout-delivery-card-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
}

body.store-page #qrModal .checkout-delivery-tag {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  color: rgba(247, 243, 234, 0.82);
  font-size: 12px;
  font-weight: 600;
}

body.store-page #qrModal .checkout-delivery-card-actions {
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
}

body.store-page #qrModal .checkout-delivery-value {
  margin: 0;
  padding: 14px;
  border-radius: 12px;
  background: rgba(0, 0, 0, 0.18);
  color: #f7f3ea;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font-family: ui-monospace, SFMono-Regular, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
  font-size: 13px;
  line-height: 1.66;
}

body.store-page #qrModal .summary-box,
body.store-page #qrModal .checkout-card {
  border-radius: 18px;
  border: 1px solid rgba(44, 36, 26, 0.12);
  background: #f7f3ea;
  padding: 18px;
  box-shadow: none;
}

body.store-page #qrModal .checkout-card-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
  margin-bottom: 16px;
}

body.store-page #qrModal .checkout-card-head h4 {
  font-size: 18px;
  line-height: 1.2;
  color: #11100d;
}

body.store-page #qrModal .checkout-card-kicker {
  color: rgba(17, 16, 13, 0.38);
}

body.store-page #qrModal .checkout-status-pill {
  min-height: 28px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(44, 36, 26, 0.1);
  background: rgba(17, 16, 13, 0.04);
  color: #6c6457;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 600;
}

body.store-page #qrModal .checkout-status-pill.state-delivery_ready,
body.store-page #qrModal .checkout-status-pill.state-paid_success {
  background: rgba(101, 121, 83, 0.12);
  border-color: rgba(101, 121, 83, 0.18);
  color: #586c4a;
}

body.store-page #qrModal .checkout-status-pill.state-failed,
body.store-page #qrModal .checkout-status-pill.state-expired {
  background: rgba(122, 84, 64, 0.12);
  border-color: rgba(122, 84, 64, 0.16);
  color: #7f5d4b;
}

body.store-page #qrModal .summary-line {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: flex-start;
  padding-top: 12px;
  border-top: 1px solid rgba(44, 36, 26, 0.08);
}

body.store-page #qrModal .summary-line:first-child {
  padding-top: 0;
  border-top: 0;
}

body.store-page #qrModal .summary-line > span {
  color: #8a8173;
  font-size: 12px;
}

body.store-page #qrModal .summary-line strong {
  color: #11100d;
  font-size: 14px;
  line-height: 1.55;
  text-align: right;
  overflow-wrap: anywhere;
}

body.store-page #qrModal .summary-line.total {
  margin-top: 6px;
  padding-top: 16px;
  border-top-color: rgba(44, 36, 26, 0.12);
}

body.store-page #qrModal .summary-inline-tools {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  max-width: 320px;
}

body.store-page #qrModal .checkout-mono {
  display: inline-block;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
  font-size: 12px;
  line-height: 1.55;
  white-space: normal;
  overflow-wrap: anywhere;
}

body.store-page #qrModal .summary-empty {
  color: #8a8173;
}

body.store-page #qrModal .summary-line.total .money-inline {
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
}

body.store-page #qrModal .summary-line.total .money-amount {
  font-size: 28px;
  font-weight: 640;
  color: #11100d;
}

body.store-page #qrModal .summary-line.total .money-currency {
  font-size: 13px;
  color: #8a8173;
}

body.store-page #qrModal .checkout-contact-card {
  display: grid;
  gap: 12px;
}

body.store-page #qrModal .checkout-contact-status-slot {
  color: #6c6457;
  font-size: 13px;
  line-height: 1.4;
}

body.store-page #qrModal .checkout-contact-card.is-locked-contact {
  background: #f2e9d9;
  border-color: rgba(120, 95, 68, 0.14);
}

body.store-page #qrModal #checkoutContactInput {
  border: 1px solid rgba(44, 36, 26, 0.12);
  background: rgba(255, 253, 248, 0.92);
  color: #11100d;
}

body.store-page #qrModal #checkoutContactInput:focus {
  border-color: rgba(17, 16, 13, 0.24);
  box-shadow: 0 0 0 3px rgba(17, 16, 13, 0.05);
}

body.store-page #qrModal .checkout-actions {
  position: sticky;
  bottom: 0;
  margin-top: auto;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  padding-top: 12px;
  background: linear-gradient(180deg, rgba(231, 220, 201, 0), rgba(231, 220, 201, 0.94) 36%, #e7dcc9 100%);
}

body.store-page #qrModal .checkout-actions > * {
  width: 100%;
  min-width: 0;
}

body.store-page #qrModal .checkout-actions button,
body.store-page #qrModal .checkout-copy-btn,
body.store-page #qrModal .checkout-link-btn {
  min-height: 46px;
  border-radius: 10px;
  transition:
    background-color 160ms ease,
    border-color 160ms ease,
    color 160ms ease,
    transform 160ms ease,
    opacity 160ms ease;
}

body.store-page #qrModal .checkout-actions button:hover,
body.store-page #qrModal .checkout-copy-btn:hover,
body.store-page #qrModal .checkout-link-btn:hover {
  transform: translateY(-1px);
}

body.store-page #qrModal .checkout-actions button:active,
body.store-page #qrModal .checkout-copy-btn:active,
body.store-page #qrModal .checkout-link-btn:active {
  transform: translateY(0);
}

body.store-page #qrModal .checkout-actions button:disabled,
body.store-page #qrModal .checkout-copy-btn:disabled {
  opacity: 0.72;
  cursor: not-allowed;
  transform: none;
}

body.store-page #qrModal .checkout-actions .ghost {
  background: rgba(255, 255, 255, 0.42);
  border: 1px solid rgba(44, 36, 26, 0.12);
  color: #11100d;
}

body.store-page #qrModal .checkout-actions .ghost:hover {
  background: rgba(255, 255, 255, 0.62);
  border-color: rgba(44, 36, 26, 0.18);
}

body.store-page #qrModal .checkout-copy-btn,
body.store-page #qrModal .checkout-link-btn {
  min-height: 34px;
  padding: 0 12px;
  border-radius: 10px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(255, 255, 255, 0.06);
  color: #f7f3ea;
  font-size: 12px;
  font-weight: 600;
}

body.store-page #qrModal .checkout-card .checkout-copy-btn {
  border-color: rgba(44, 36, 26, 0.12);
  background: rgba(17, 16, 13, 0.04);
  color: #11100d;
}

body.store-page #qrModal .checkout-card .checkout-copy-btn:hover {
  background: rgba(17, 16, 13, 0.08);
}

@keyframes checkoutSpin {
  to {
    transform: rotate(360deg);
  }
}

@keyframes checkoutPulse {
  0%,
  100% {
    opacity: 0.42;
    transform: scale(0.84);
  }

  50% {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes checkoutShimmer {
  to {
    background-position: -220% 0;
  }
}

@keyframes checkoutSuccessHalo {
  0% {
    opacity: 0.9;
    transform: scale(0.88) rotate(18deg);
  }

  100% {
    opacity: 0;
    transform: scale(1.16) rotate(0deg);
  }
}

@keyframes checkoutStrokeCircle {
  to {
    stroke-dashoffset: 0;
  }
}

@keyframes checkoutStrokeCheck {
  to {
    stroke-dashoffset: 0;
  }
}

@media (max-width: 1180px) {
  body.store-page #qrModal {
    padding: 24px;
    overflow-y: auto;
  }

  body.store-page #qrModal .checkout-layout {
    width: min(100%, calc(100vw - 48px));
    max-height: none;
    grid-template-columns: 1fr;
  }

  body.store-page #qrModal .checkout-left,
  body.store-page #qrModal .checkout-right {
    overflow: visible;
  }
}

@media (max-width: 760px) {
  body.store-page #qrModal {
    padding: 12px;
  }

  body.store-page #qrModal .checkout-layout {
    width: min(100vw - 24px, 100%);
    max-height: calc(100vh - 24px);
  }

  body.store-page #qrModal .checkout-left,
  body.store-page #qrModal .checkout-right {
    padding: 18px;
  }

  body.store-page #qrModal .checkout-stage-title {
    font-size: 26px;
  }

  body.store-page #qrModal .checkout-progress {
    grid-template-columns: 1fr;
  }

  body.store-page #qrModal .checkout-surface,
  body.store-page #qrModal .checkout-delivery-panel {
    padding: 18px;
  }

  body.store-page #qrModal .checkout-actions {
    grid-template-columns: 1fr;
    position: static;
    background: none;
    padding-top: 14px;
  }

  body.store-page #qrModal .checkout-card-head,
  body.store-page #qrModal .checkout-delivery-card-head {
    flex-direction: column;
  }

  body.store-page #qrModal .summary-inline-tools {
    max-width: 100%;
  }

  body.store-page #qrModal .summary-line.total .money-amount {
    font-size: 24px;
  }
}

body.store-page .topbar-nav-link,
body.store-page .nav-link,
body.store-page .nav-utility-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  min-height: 56px;
  padding: 0;
  font-family: var(--font-ui);
  font-size: 13.5px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  color: #141413;
  text-decoration: none;
}

body.store-page .topbar-nav-link::after,
body.store-page .nav-link::after,
body.store-page .nav-utility-btn::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 15px;
  height: 1px;
  background: currentColor;
  opacity: 0;
  transform: scaleX(0.72);
  transform-origin: left center;
  transition: opacity 0.18s ease, transform 0.18s ease;
}

body.store-page .topbar-nav-link:hover,
body.store-page .topbar-nav-link.active,
body.store-page .nav-link:hover,
body.store-page .nav-link.active,
body.store-page .nav-utility-btn:hover,
body.store-page .nav-utility-btn.active {
  background: transparent;
  border-color: transparent;
  box-shadow: none;
  color: #141413;
}

body.store-page .topbar-nav-link:hover::after,
body.store-page .topbar-nav-link.active::after,
body.store-page .nav-link:hover::after,
body.store-page .nav-link.active::after,
body.store-page .nav-utility-btn:hover::after,
body.store-page .nav-utility-btn.active::after {
  opacity: 1;
  transform: scaleX(1);
}

body.store-page .topbar-action-cluster {
  gap: 12px;
  margin-left: 24px;
  justify-self: end;
}

body.store-page .nav-account-menu {
  position: relative;
  display: inline-flex;
  flex-direction: column;
  align-items: flex-end;
}

body.store-page .nav-user-chip {
  font-family: var(--font-ui);
  min-height: auto;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  color: rgba(17, 17, 17, 0.46);
  font-size: 11.5px;
  font-weight: 400;
  max-width: 180px;
}

body.store-page .nav-cta-combo {
  display: inline-flex;
  align-items: stretch;
  min-height: 40px;
  border-radius: 8px;
  background: var(--ag-button-black);
  border: 0;
  overflow: hidden;
}

body.store-page .nav-primary-cta {
  font-family: var(--font-ui);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 17px;
  border-radius: 8px;
  background: var(--ag-button-black);
  color: var(--text-on-dark);
  font-size: 13px;
  font-weight: 500;
  transition: background-color 0.18s ease, color 0.18s ease;
}

body.store-page .nav-primary-cta-label {
  min-height: 40px;
}

body.store-page .nav-primary-cta-main {
  border-radius: 8px 0 0 8px;
}

body.store-page .nav-cta-combo .nav-primary-cta:first-child {
  border-right: 0;
}

body.store-page .nav-primary-cta-secondary {
  width: 38px;
  min-width: 38px;
  padding: 0;
  border-radius: 0 8px 8px 0;
}

body.store-page .nav-primary-cta-menu {
  position: relative;
}

body.store-page .nav-primary-cta-menu::before {
  content: "";
  position: absolute;
  left: 0;
  top: 10px;
  bottom: 10px;
  width: 1px;
  background: rgba(250, 249, 245, 0.14);
}

body.store-page .nav-cta-combo:hover .nav-primary-cta:first-child,
body.store-page .nav-cta-combo:focus-within .nav-primary-cta:first-child,
body.store-page .nav-cta-combo:hover .nav-primary-cta-secondary,
body.store-page .nav-cta-combo:focus-within .nav-primary-cta-secondary {
  background: var(--ag-button-black);
}

body.store-page .nav-cta-combo:hover .nav-primary-cta-chevron,
body.store-page .nav-cta-combo:focus-within .nav-primary-cta-chevron {
  opacity: 0.82;
  transform: none;
}

body.store-page .nav-cta-combo .nav-primary-cta:first-child.nav-primary-cta-main:hover,
body.store-page .nav-cta-combo .nav-primary-cta:first-child.nav-primary-cta-main:focus-visible {
  background: var(--black-hover);
}

body.store-page .nav-cta-combo .nav-primary-cta-secondary.nav-primary-cta-menu:hover,
body.store-page .nav-cta-combo .nav-primary-cta-secondary.nav-primary-cta-menu:focus-visible,
body.store-page .nav-account-menu[data-menu-open="true"] .nav-primary-cta-menu {
  background: #161614;
}

body.store-page .nav-cta-combo .nav-primary-cta-secondary.nav-primary-cta-menu:hover .nav-primary-cta-chevron,
body.store-page .nav-cta-combo .nav-primary-cta-secondary.nav-primary-cta-menu:focus-visible .nav-primary-cta-chevron,
body.store-page .nav-account-menu[data-menu-open="true"] .nav-primary-cta-chevron {
  opacity: 1;
  transform: translateY(1px);
}

body.store-page .nav-account-card {
  position: absolute;
  top: calc(100% + 12px);
  right: 0;
  display: grid;
  gap: 4px;
  min-width: 220px;
  padding: 10px;
  border: 1px solid rgba(20, 20, 19, 0.08);
  border-radius: 12px;
  background: #faf7ef;
  box-shadow: 0 18px 44px rgba(20, 20, 19, 0.14);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(8px);
  transition: opacity 0.18s ease, transform 0.18s ease, visibility 0.18s ease;
  z-index: 24;
}

body.store-page .nav-account-menu[data-menu-open="true"] .nav-account-card {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}

body.store-page .nav-account-card-status {
  display: flex;
  align-items: baseline;
  gap: 8px;
  padding: 8px 10px 10px;
  border-bottom: 1px solid rgba(20, 20, 19, 0.08);
  white-space: nowrap;
}

body.store-page .nav-account-card-label {
  font-family: var(--font-ui);
  font-size: 12.5px;
  font-weight: 500;
  color: rgba(20, 20, 19, 0.66);
}

body.store-page .nav-account-card-account {
  font-family: var(--font-ui);
  font-size: 13px;
  font-weight: 600;
  color: #141413;
}

body.store-page .nav-account-card-link {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  padding: 0 10px;
  border-radius: 8px;
  font-family: var(--font-ui);
  font-size: 13px;
  font-weight: 500;
  color: #141413;
  text-decoration: none;
}

body.store-page .nav-account-card-link:hover,
body.store-page .nav-account-card-link:focus-visible {
  background: rgba(20, 20, 19, 0.05);
}


/* ── Language flag emoji ── */
.lang-flag{width:20px;height:15px;margin-right:8px;display:inline-block;vertical-align:-3px;border-radius:2px;object-fit:cover;box-shadow:0 0 0 1px rgba(20,20,19,.10);}
body.store-page .nav-language-menu-shell {
  position: relative;
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
}

body.store-page .nav-contact-menu-shell {
  position: relative;
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
}

body.store-page .nav-contact-trigger {
  gap: 8px;
}

body.store-page .nav-contact-chevron {
  width: 8px;
  height: 8px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg) translateY(-1px);
  transform-origin: center;
  transition: transform 0.18s ease;
}

body.store-page .nav-contact-menu-shell[data-menu-open="true"] .nav-contact-chevron {
  transform: rotate(225deg) translateY(-1px);
}

body.store-page .nav-contact-menu-shell[data-menu-open="true"] .nav-contact-trigger::after {
  opacity: 1;
  transform: scaleX(1);
}

body.store-page .nav-contact-card {
  position: absolute;
  top: calc(100% + 10px);
  left: 50%;
  display: grid;
  gap: 6px;
  width: min(360px, calc(100vw - 32px));
  padding: 10px;
  border: 1px solid rgba(20, 20, 19, 0.08);
  border-radius: 18px;
  background: #faf7ef;
  box-shadow: 0 18px 44px rgba(20, 20, 19, 0.14);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translate(-50%, 8px);
  transition: opacity 0.18s ease, transform 0.18s ease, visibility 0.18s ease;
  z-index: 28;
}

body.store-page .nav-contact-menu-shell[data-menu-open="true"] .nav-contact-card {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translate(-50%, 0);
}

body.store-page .nav-contact-link {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  min-height: 44px;
  padding: 11px 12px;
  border-radius: 12px;
  color: #141413;
  text-decoration: none;
  font-family: var(--font-ui);
  font-size: 13.5px;
  font-weight: 500;
  line-height: 1.45;
}

body.store-page .nav-contact-link:hover,
body.store-page .nav-contact-link:focus-visible {
  background: rgba(20, 20, 19, 0.05);
}

body.store-page .nav-contact-link::after {
  content: "↗";
  flex: 0 0 auto;
  color: rgba(20, 20, 19, 0.42);
  font-size: 13px;
  line-height: 1.2;
}

body.store-page .nav-language-trigger {
  gap: 8px;
}

body.store-page .nav-language-chevron {
  width: 8px;
  height: 8px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg) translateY(-1px);
  transform-origin: center;
  transition: transform 0.18s ease;
}

body.store-page .nav-language-menu-shell[data-menu-open="true"] .nav-language-chevron {
  transform: rotate(225deg) translateY(-1px);
}

body.store-page .nav-language-menu-shell[data-menu-open="true"] .nav-language-trigger::after {
  opacity: 1;
  transform: scaleX(1);
}

body.store-page .nav-language-card {
  position: absolute;
  top: calc(100% + 10px);
  left: 50%;
  display: grid;
  min-width:150px;
  padding: 10px;
  border: 1px solid rgba(20, 20, 19, 0.08);
  border-radius: 18px;
  background: #faf7ef;
  box-shadow: 0 18px 44px rgba(20, 20, 19, 0.14);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translate(-50%, 8px);
  transition: opacity 0.18s ease, transform 0.18s ease, visibility 0.18s ease;
  z-index: 28;
}

body.store-page .nav-language-menu-shell[data-menu-open="true"] .nav-language-card {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translate(-50%, 0);
}

body.store-page .nav-language-option {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  min-height: 40px;
  padding: 0 12px;
  border: 0;
  border-radius: 12px;
  background: transparent;
  font-family: var(--font-ui);
  font-size: 13.5px;
  font-weight: 500;
  color: #141413;
  text-align: left;
}

body.store-page .nav-language-option:hover,
body.store-page .nav-language-option:focus-visible {
  background: rgba(20, 20, 19, 0.05);
}

body.store-page .nav-language-option.is-active {
  background: rgba(20, 20, 19, 0.06);
}

body.store-page .nav-language-option.is-active::after {
  content: "•";
  margin-left: 18px;
  font-size: 16px;
  line-height: 1;
}

@media (max-width: 900px) {
  body.store-page .nav-contact-card {
    left: 0;
    width: min(320px, calc(100vw - 32px));
    transform: translate(0, 8px);
  }

  body.store-page .nav-contact-menu-shell[data-menu-open="true"] .nav-contact-card {
    transform: translate(0, 0);
  }
}


/* free-tools dropdown menu */
body.store-page .nav-free-tools-menu-shell {
  position: relative;
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
}

body.store-page .nav-free-tools-trigger {
  gap: 8px;
}

body.store-page .nav-free-tools-chevron {
  width: 8px;
  height: 8px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg) translateY(-1px);
  transform-origin: center;
  transition: transform 0.18s ease;
}

body.store-page .nav-free-tools-menu-shell[data-menu-open="true"] .nav-free-tools-chevron {
  transform: rotate(225deg) translateY(-1px);
}

body.store-page .nav-free-tools-menu-shell[data-menu-open="true"] .nav-free-tools-trigger::after {
  opacity: 1;
  transform: scaleX(1);
}

body.store-page .nav-free-tools-card {
  position: absolute;
  top: calc(100% + 10px);
  left: 50%;
  display: grid;
  gap: 6px;
  width: min(240px, calc(100vw - 32px));
  padding: 10px;
  border: 1px solid rgba(20, 20, 19, 0.08);
  border-radius: 18px;
  background: #faf7ef;
  box-shadow: 0 18px 44px rgba(20, 20, 19, 0.14);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translate(-50%, 8px);
  transition: opacity 0.18s ease, transform 0.18s ease, visibility 0.18s ease;
  z-index: 28;
}

body.store-page .nav-free-tools-menu-shell[data-menu-open="true"] .nav-free-tools-card {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translate(-50%, 0);
}

body.store-page .nav-free-tools-item {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  width: 100%;
  min-height: 44px;
  padding: 11px 12px;
  border-radius: 12px;
  border: none;
  background: transparent;
  cursor: pointer;
  color: #141413;
  font-family: var(--font-ui);
  font-size: 13.5px;
  font-weight: 500;
  line-height: 1.45;
  text-align: left;
}

body.store-page .nav-free-tools-item:hover,
body.store-page .nav-free-tools-item:focus-visible {
  background: rgba(20, 20, 19, 0.05);
}

@media (max-width: 900px) {
  body.store-page .nav-free-tools-card {
    left: 0;
    width: min(220px, calc(100vw - 32px));
    transform: translate(0, 8px);
  }

  body.store-page .nav-free-tools-menu-shell[data-menu-open="true"] .nav-free-tools-card {
    transform: translate(0, 0);
  }
}


/* ─── GPT Link Modal ─────────────────────────────────────────────── */
.gptlink-modal-box {
  width: min(560px, 100%);
}

.gptlink-modal-body {
  display: grid;
  gap: 18px;
}

.gptlink-steps {
  display: grid;
  gap: 10px;
  padding: 14px 16px;
  background: rgba(20, 20, 19, 0.04);
  border-radius: var(--radius-sm, 12px);
}

.gptlink-step {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  font-size: 14px;
  line-height: 1.55;
  color: var(--ink);
}

.gptlink-step-num {
  flex-shrink: 0;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: var(--ink, #141413);
  color: var(--surface, #faf7ef);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 700;
  margin-top: 1px;
}

.gptlink-step-link {
  color: var(--ink);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.gptlink-textarea {
  display: block;
  width: 100%;
  min-height: 96px;
  margin-top: 8px;
  padding: 11px 12px;
  border: 1px solid var(--line-strong, rgba(20,20,19,0.18));
  border-radius: var(--radius-sm, 12px);
  background: rgba(255, 255, 255, 0.58);
  color: var(--ink);
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 1.5;
  resize: vertical;
  outline: none;
  box-sizing: border-box;
  transition: border-color 0.15s ease, background 0.15s ease;
}

.gptlink-textarea:focus {
  border-color: rgba(20, 20, 19, 0.34);
  background: rgba(255, 255, 255, 0.82);
}

.gptlink-submit-btn {
  height: 44px;
  padding: 0 24px;
  border-radius: var(--radius-sm, 12px);
  background: var(--ag-button-black, #141413);
  color: var(--text-on-dark, #faf7ef);
  border: none;
  cursor: pointer;
  font-family: var(--font-ui);
  font-size: 15px;
  font-weight: 600;
  letter-spacing: -0.01em;
  transition: background 0.15s ease, opacity 0.15s ease;
  justify-self: start;
}

.gptlink-submit-btn:hover:not(:disabled) {
  background: var(--black-hover, #2b2a29);
}

.gptlink-submit-btn:disabled {
  opacity: 0.46;
  cursor: not-allowed;
}

.gptlink-status {
  font-size: 13.5px;
  color: var(--muted);
  padding: 2px 0;
  min-height: 20px;
}

.gptlink-status.is-loading::before {
  content: "";
  display: inline-block;
  width: 13px;
  height: 13px;
  border: 2px solid rgba(20,20,19,0.18);
  border-top-color: var(--ink);
  border-radius: 50%;
  animation: gptlink-spin 0.7s linear infinite;
  margin-right: 8px;
  vertical-align: -2px;
}

@keyframes gptlink-spin {
  to { transform: rotate(360deg); }
}

.gptlink-result {
  display: grid;
  gap: 12px;
  padding: 16px;
  background: rgba(20, 20, 19, 0.04);
  border-radius: var(--radius-sm, 12px);
  border: 1px solid var(--line, rgba(20,20,19,0.09));
}

.gptlink-result-label {
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--muted-strong, rgba(20,20,19,0.55));
}

.gptlink-result-url {
  font-size: 13px;
  color: var(--ink);
  word-break: break-all;
  line-height: 1.6;
  padding: 10px 12px;
  background: rgba(255, 255, 255, 0.72);
  border: 1px solid var(--line, rgba(20,20,19,0.09));
  border-radius: 10px;
  max-height: 76px;
  overflow-y: auto;
  font-family: var(--font-mono, monospace);
}

.gptlink-copy-btn {
  height: 40px;
  padding: 0 20px;
  border-radius: var(--radius-sm, 12px);
  background: var(--ag-button-black, #141413);
  color: var(--text-on-dark, #faf7ef);
  border: none;
  cursor: pointer;
  font-family: var(--font-ui);
  font-size: 14px;
  font-weight: 600;
  justify-self: start;
  transition: background 0.15s ease;
}

.gptlink-copy-btn:hover {
  background: var(--black-hover, #2b2a29);
}

body.store-page .nav-primary-cta-solo {
  border-radius: 8px;
  background: var(--ag-button-black);
  border-color: var(--ag-button-black);
  color: var(--text-on-dark);
}

body.store-page .nav-primary-cta-solo:hover,
body.store-page .nav-primary-cta-solo:focus-visible {
  background: var(--black-hover);
  border-color: var(--black-hover);
}

body.store-page .store-hero {
  display: grid;
  gap: 28px;
  padding: 10px 0 0;
}

body.store-page .store-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.52fr) minmax(0, 1fr);
  gap: 56px;
  align-items: center;
}

body.store-page .store-hero-copy {
  display: grid;
  gap: 12px;
  max-width: 720px;
}

body.store-page .hero-title-line {
  display: block;
}

.nowrap {
  white-space: nowrap;
}

body.store-page .store-hero-copy h1 {
  max-width: 720px;
  font-family: var(--font-zh-display);
  font-size: clamp(56px, 7.2vw, 104px);
  line-height: 0.96;
  font-weight: 780;
  letter-spacing: -0.06em;
  color: var(--text-main);
  word-break: keep-all;
}

body.store-page .store-hero-aside {
  display: grid;
  gap: 16px;
  align-self: center;
  justify-items: start;
}

body.store-page .store-hero-aside p {
  max-width: 460px;
  font-family: var(--font-serif);
  font-size: clamp(24px, 2.1vw, 34px);
  font-weight: 400;
  line-height: 1.18;
  letter-spacing: -0.015em;
  color: #141413;
}

body.store-page .store-hero-facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

body.store-page .store-hero-fact {
  display: grid;
  gap: 8px;
  padding-top: 14px;
  border-top: 1px solid rgba(0, 0, 0, 0.08);
}

body.store-page .store-hero-fact span {
  font-size: 11px;
  line-height: 1.2;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--text-faint);
}

body.store-page .store-hero-fact strong {
  font-size: 17px;
  line-height: 1.3;
  font-weight: 600;
  color: var(--text-main);
}

body.store-page .brand-motion-section {
  --motion-progress: 0;
  position: relative;
  margin: 0 calc(-1 * clamp(20px, 3vw, 32px));
}

body.store-page .brand-motion-shell {
  margin-inline: calc(40px * (1 - var(--motion-progress)));
  border-radius: calc(24px * (1 - var(--motion-progress)));
  background: var(--ag-black);
  overflow: hidden;
}

body.store-page .brand-motion-frame {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 0.94fr) minmax(360px, 0.86fr);
  gap: clamp(28px, 4vw, 56px);
  aspect-ratio: 1.655;
  min-height: clamp(420px, 42vw, 620px);
  padding: clamp(36px, 5vw, 78px) clamp(24px, 3.6vw, 48px);
  color: var(--text-on-dark);
}

body.store-page .brand-motion-copy,
body.store-page .brand-motion-visual {
  position: relative;
  min-width: 0;
}

body.store-page .brand-motion-copy {
  display: grid;
  align-content: center;
  gap: 20px;
  padding: 24px 0;
}

body.store-page .brand-motion-copy h2,
body.store-page .brand-motion-copy p,
body.store-page .brand-motion-link,
body.store-page .brand-motion-main-mark,
body.store-page .brand-motion-tile,
body.store-page .brand-motion-orbit {
  opacity: 0;
  transform: translateY(28px);
  transition:
    opacity 0.6s ease,
    transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}

body.store-page .brand-motion-section.is-motion-visible .brand-motion-copy h2,
body.store-page .brand-motion-section.is-motion-visible .brand-motion-copy p,
body.store-page .brand-motion-section.is-motion-visible .brand-motion-link,
body.store-page .brand-motion-section.is-motion-visible .brand-motion-main-mark,
body.store-page .brand-motion-section.is-motion-visible .brand-motion-tile,
body.store-page .brand-motion-section.is-motion-visible .brand-motion-orbit {
  opacity: 1;
  transform: translateY(0);
}

body.store-page .brand-motion-copy h2 {
  max-width: 8ch;
  margin: 0;
  font-family: var(--font-sans);
  font-size: clamp(72px, 7vw, 118px);
  line-height: 0.92;
  font-weight: 600;
  letter-spacing: -0.05em;
}

body.store-page .brand-motion-copy p {
  max-width: 18ch;
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(24px, 2vw, 34px);
  line-height: 1.14;
  color: rgba(250, 249, 245, 0.84);
}

body.store-page .brand-motion-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  min-height: 44px;
  padding: 0 18px;
  border-radius: 8px;
  background: rgba(250, 249, 245, 0.96);
  color: #141413;
  font-family: var(--font-ui);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0;
}

body.store-page .brand-motion-link:hover,
body.store-page .brand-motion-link:focus-visible {
  background: #ffffff;
}

body.store-page .brand-motion-corner {
  position: absolute;
  left: 0;
  width: clamp(78px, 8vw, 120px);
  opacity: calc(0.12 + (var(--motion-progress) * 0.28));
  pointer-events: none;
}

body.store-page .brand-motion-corner img,
body.store-page .brand-motion-tile img,
body.store-page .brand-motion-orbit img,
body.store-page .brand-motion-main-mark img {
  width: 100%;
  height: auto;
  filter: invert(1);
}

body.store-page .brand-motion-corner-top {
  top: 0;
  transform: translate(-4%, -4%) scale(calc(0.88 + (var(--motion-progress) * 0.12)));
}

body.store-page .brand-motion-corner-bottom {
  bottom: 0;
  transform: translate(-6%, 8%) scale(calc(0.92 + (var(--motion-progress) * 0.08)));
}

body.store-page .brand-motion-visual {
  display: grid;
  place-items: center;
  isolation: isolate;
}

body.store-page .brand-motion-visual::before {
  content: "";
  position: absolute;
  inset: 6% 4% 6% 14%;
  border-radius: 22px;
  background:
    radial-gradient(circle at 28% 30%, rgba(156, 178, 208, 0.18), transparent 24%),
    radial-gradient(circle at 72% 74%, rgba(177, 151, 214, 0.12), transparent 28%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.01));
  opacity: calc(0.28 + (var(--motion-progress) * 0.2));
  z-index: 0;
}

body.store-page .brand-motion-grid {
  position: absolute;
  inset: 8% 0 8% 14%;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  z-index: 1;
}

body.store-page .brand-motion-tile {
  display: grid;
  place-items: center;
  padding: 18px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 18px;
  background: rgba(247, 244, 236, 0.03);
}

body.store-page .brand-motion-tile:nth-child(2n) {
  margin-top: -10px;
}

body.store-page .brand-motion-tile:nth-child(3n) {
  margin-top: 12px;
}

body.store-page .brand-motion-tile img {
  opacity: 0.74;
}

body.store-page .brand-motion-orbit {
  position: absolute;
  z-index: 2;
  width: clamp(48px, 5vw, 72px);
  opacity: 0.3;
}

body.store-page .brand-motion-orbit-a {
  top: 16%;
  left: 18%;
  animation: brand-orbit-float-a 8.6s ease-in-out infinite;
}

body.store-page .brand-motion-orbit-b {
  right: 4%;
  top: 24%;
  animation: brand-orbit-float-b 9.4s ease-in-out infinite;
}

body.store-page .brand-motion-orbit-c {
  right: 18%;
  bottom: 10%;
  animation: brand-orbit-float-c 10.2s ease-in-out infinite;
}

body.store-page .brand-motion-main-mark {
  position: relative;
  z-index: 3;
  width: min(68%, 420px);
  transform:
    translate3d(
      calc(10px - (var(--motion-progress) * 16px)),
      calc(18px - (var(--motion-progress) * 28px)),
      0
    )
    scale(calc(1.02 + (var(--motion-progress) * 0.08)))
    rotate(calc(-6deg + (var(--motion-progress) * 4deg)));
}

body.store-page .brand-motion-main-mark img {
  opacity: 0.96;
}

@keyframes brand-orbit-float-a {
  0%,
  100% { transform: translate3d(0, 0, 0) rotate(0deg); }
  50% { transform: translate3d(10px, -14px, 0) rotate(8deg); }
}

@keyframes brand-orbit-float-b {
  0%,
  100% { transform: translate3d(0, 0, 0) rotate(0deg); }
  50% { transform: translate3d(-12px, 12px, 0) rotate(-7deg); }
}

@keyframes brand-orbit-float-c {
  0%,
  100% { transform: translate3d(0, 0, 0) rotate(0deg); }
  50% { transform: translate3d(8px, -10px, 0) rotate(6deg); }
}

body.store-page .anthropic-replica-shell {
  display: grid;
  gap: 0;
}

body.store-page .anthropic-replica-hero {
  padding-top: clamp(80px, 7.8vw, 120px);
  padding-bottom: clamp(80px, 7.8vw, 120px);
}

body.store-page .anthropic-replica-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.18fr) minmax(260px, 0.62fr);
  gap: clamp(48px, 5.2vw, 80px);
  align-items: start;
}

body.store-page .anthropic-replica-heading {
  max-width: 740px;
  padding-left: clamp(16px, 2vw, 36px);
}

body.store-page .anthropic-replica-heading h1 {
  margin: 0;
  font-family: var(--font-zh-display), var(--font-sans);
  font-size: clamp(62px, 6.0vw, 92px);
  font-weight: 800;
  line-height: 0.97;
  letter-spacing: -0.036em;
  color: #141413;
}

body.store-page .anthropic-replica-line {
  display: block;
}

body.store-page .anthropic-replica-aside {
  display: grid;
  align-content: start;
  align-self: start;
  justify-items: start;
  padding-top: clamp(18px, 2.0vw, 28px);
  padding-bottom: 0;
}

body.store-page .anthropic-replica-aside p {
  max-width: 22ch;
  margin: 0;
  font-family: var(--font-serif-en);
  font-size: clamp(18px, 1.48vw, 21px);
  font-weight: 400;
  line-height: 1.45;
  letter-spacing: -0.008em;
  color: rgba(20, 20, 19, 0.78);
  text-wrap: balance;
}

body.store-page .anthropic-featured-replica {
  --glasswing-card-max: clamp(1145px, 89.25vw, 1285px);
  position: relative;
  width: 100vw;
  margin-inline: calc(50% - 50vw);
  overflow: clip;
}

body.store-page .anthropic-featured-viewport {
  position: relative;
  display: block;
  overflow: clip;
  isolation: isolate;
}

body.store-page .anthropic-featured-bg {
  --glasswing-expand: 0;
  position: relative;
  width: 100%;
  max-width: var(--glasswing-card-max);
  margin: 28px auto 8px;
  background: #0b0b0a;
  border-radius: 22px;
  overflow: hidden;
  will-change: max-width, margin-top, margin-bottom, border-radius, padding-top, padding-bottom;
  contain: paint;
}

body.store-page .anthropic-featured-bg::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.014), transparent 26%, transparent 74%, rgba(255, 255, 255, 0.01)),
    radial-gradient(circle at 16% 50%, rgba(255, 255, 255, 0.024), transparent 28%),
    radial-gradient(circle at 82% 20%, rgba(255, 255, 255, 0.018), transparent 30%);
  opacity: calc(0.84 - (var(--glasswing-expand) * 0.22));
  pointer-events: none;
}

body.store-page .anthropic-featured-card {
  position: relative;
  display: flex;
  align-items: center;
  width: var(--glasswing-card-max);
  max-width: 100%;
  margin: 0 auto;
  margin-block: 0;
  padding: 74px 0 70px;
  color: #faf9f5;
  z-index: 1;
}

body.store-page .anthropic-featured-copy {
  flex: 1 1 50%;
  width: 50%;
  min-width: 0;
  text-align: center;
}

body.store-page .anthropic-featured-title-wrap {
  max-width: none;
}

body.store-page .anthropic-featured-title {
  margin: 0;
  font-family: var(--font-serif);
  font-size: clamp(80px, 5.8vw, 92px);
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: 0;
  color: #faf9f5;
  text-wrap: balance;
}

body.store-page .anthropic-featured-detail {
  display: grid;
  width: 100%;
  margin-top: 28px;
  justify-items: center;
  gap: 22px;
}

body.store-page .anthropic-featured-subtitle {
  max-width: 247px;
  margin: 0;
  font-family: var(--font-serif);
  font-size: 19px;
  font-weight: 400;
  line-height: 28px;
  letter-spacing: 0;
  text-align: center;
  color: #e8e6dc;
  text-wrap: balance;
}

body.store-page .anthropic-featured-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 9px 16px;
  border-radius: 8px;
  border: 1px solid #f0eee6;
  background: #faf9f5;
  color: #141413;
  font-family: var(--font-ui);
  font-size: 16px;
  font-weight: 500;
  line-height: 16px;
  letter-spacing: 0;
  transition:
    background-color 180ms ease,
    border-color 180ms ease,
    transform 180ms ease;
}

body.store-page .anthropic-featured-button:hover,
body.store-page .anthropic-featured-button:focus-visible {
  background: #ebe7dd;
  transform: translateY(-1px);
}

body.store-page .anthropic-featured-asset-wrap {
  position: relative;
  display: flex;
  flex: 1 1 50%;
  width: 50%;
  align-items: center;
  justify-content: center;
  min-width: 0;
  overflow: hidden;
}

body.store-page .anthropic-featured-asset-image {
  display: block;
  width: min(76%, 560px);
  max-width: none;
  height: auto;
  margin-right: 0;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  opacity: 0.98;
  filter: brightness(1.28) contrast(1.14);
  transform: scale(1.24);
  transform-origin: 58% 52%;
  -webkit-mask-image: url("/static/store-featured-access-ai-hero-20260519.png");
  mask-image: url("/static/store-featured-access-ai-hero-20260519.png");
  -webkit-mask-mode: luminance;
  mask-mode: luminance;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: cover;
  mask-size: cover;
}

@media (min-width: 1536px) {
  body.store-page .anthropic-featured-replica {
    --glasswing-card-max: 1272px;
  }
}

body.store-page .anthropic-featured-title,
body.store-page .anthropic-featured-subtitle,
body.store-page .anthropic-featured-button,
body.store-page .anthropic-featured-asset-image {
  opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
  body.store-page .anthropic-featured-replica {
    width: 100%;
    margin-inline: 0;
    overflow: visible;
  }

  body.store-page .anthropic-featured-viewport {
    position: relative;
    display: block;
    overflow: visible;
  }

  body.store-page .anthropic-featured-bg {
    width: var(--glasswing-card-max);
    max-width: none;
    margin: 4rem auto 0;
    border-radius: 24px;
    will-change: auto;
  }

  body.store-page .anthropic-featured-card {
    margin-block: 0;
  }
}

@media (max-width: 991px) {
  body.store-page .anthropic-replica-grid {
    grid-template-columns: 1fr;
    gap: 28px;
    align-items: start;
  }

  body.store-page .anthropic-replica-hero {
    padding-bottom: clamp(56px, 8vw, 90px);
  }

  body.store-page .anthropic-replica-aside {
    padding-bottom: 0;
  }

  body.store-page .anthropic-replica-aside p {
    max-width: none;
  }

  body.store-page .anthropic-featured-replica {
    width: 100%;
    margin-inline: 0;
    overflow: visible;
  }

  body.store-page .anthropic-featured-viewport {
    position: relative;
    display: block;
    overflow: visible;
  }

  body.store-page .anthropic-featured-bg {
    width: min(100%, calc(100vw - 40px));
    max-width: none;
    margin: 42px auto 0;
    border-radius: 20px;
    will-change: auto;
  }

  body.store-page .anthropic-featured-card {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
    min-height: auto;
    padding: clamp(34px, 5vw, 52px) clamp(24px, 4vw, 32px);
    margin-block: 0;
  }

  body.store-page .anthropic-featured-asset-wrap {
    width: 100%;
    flex: none;
    order: 1;
    margin-bottom: clamp(20px, 4vw, 32px);
  }

  body.store-page .anthropic-featured-copy {
    width: 100%;
    flex: none;
    order: 2;
  }

  body.store-page .anthropic-featured-title-wrap {
    max-width: 60vw;
  }

  body.store-page .anthropic-featured-title {
    font-size: clamp(62px, 8vw, 78px);
  }

  body.store-page .anthropic-featured-subtitle {
    max-width: 22ch;
  }

  body.store-page .anthropic-featured-asset-image {
    width: min(100%, 400px);
    margin-right: 0;
  }
}

@media (max-width: 767px) {
  body.store-page .anthropic-replica-heading h1 {
    font-size: clamp(40px, 11vw, 52px);
    line-height: 1.02;
  }

  body.store-page .anthropic-replica-aside p {
    font-size: 21px;
    line-height: 1.34;
  }

  body.store-page .anthropic-featured-bg {
    width: min(100%, calc(100vw - 40px));
    margin-top: 32px;
    border-radius: 18px;
  }

  body.store-page .anthropic-featured-card {
    padding: 28px 20px 34px;
  }

  body.store-page .anthropic-featured-title-wrap {
    max-width: 65vw;
  }

  body.store-page .anthropic-featured-title {
    font-size: clamp(44px, 11vw, 60px);
  }

  body.store-page .anthropic-featured-subtitle {
    font-size: 18px;
    line-height: 1.38;
  }

  body.store-page .anthropic-featured-button {
    min-height: 42px;
  }
}

body.store-page .store-control-bar {
  gap: 16px;
  padding: 0;
  border-bottom: 0;
}

body.store-page .control-bar-intro {
  gap: 10px;
  max-width: 760px;
}

body.store-page .store-control-kicker {
  font-size: 11px;
  line-height: 1.2;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--text-faint);
}

body.store-page .control-bar-head h2 {
  font-size: 26px;
  line-height: 1.18;
  font-weight: 700;
}

body.store-page .control-bar-sub-en {
  font-size: 15px;
  font-style: italic;
  font-family: Georgia, "Times New Roman", serif;
  font-weight: 400;
  color: var(--text-muted, #888);
  margin: 4px 0 0 0;
  line-height: 1.5;
}

body.store-page .control-bar-head p {
  max-width: 720px;
  font-size: 15px;
  line-height: 1.68;
  color: var(--text-muted);
}

body.store-page .project-switcher {
  gap: 18px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--ag-border);
}

body.store-page .project-switcher-btn {
  padding: 10px 0 12px;
  font-family: var(--font-ui);
  font-size: 14.5px;
  font-weight: 500;
  line-height: 1.3;
  color: rgba(20, 20, 19, 0.56);
}

body.store-page .project-switcher-btn::after {
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
}

body.store-page .project-switcher-btn:hover,
body.store-page .project-switcher-btn.is-active {
  color: var(--text-main);
}

body.store-page .utility-panel-card {
  padding: 28px;
  background: var(--surface-light);
  border: 1px solid var(--border);
  border-radius: 18px;
}

body.store-page .utility-panel-head {
  margin-bottom: 22px;
}

body.store-page .utility-panel-head h3 {
  margin-top: 8px;
  font-size: 30px;
  line-height: 1.04;
  font-weight: 600;
  max-width: 11ch;
}

body.store-page .utility-panel-head p {
  margin-top: 12px;
  max-width: 720px;
  font-size: 15px;
  line-height: 1.72;
  color: var(--text-muted);
}

body.store-page .query-dock-form {
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
}

body.store-page .query-dock-form input {
  min-height: 50px;
  background: rgba(255, 255, 255, 0.72);
  border-color: rgba(0, 0, 0, 0.08);
}

body.store-page .order-query-password-panel {
  display: grid;
  gap: 14px;
  margin-top: 14px;
  padding: 16px;
  border: 1px solid rgba(17, 17, 16, 0.1);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.58);
}

body.store-page .order-query-password-panel[hidden] {
  display: none !important;
}

body.store-page .order-query-password-copy {
  display: grid;
  gap: 4px;
}

body.store-page .order-query-password-copy strong {
  font-size: 15px;
  line-height: 1.35;
}

body.store-page .order-query-password-copy p {
  margin: 0;
  max-width: 720px;
  color: var(--text-muted);
  font-size: 13px;
  line-height: 1.65;
}

body.store-page .order-query-password-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

body.store-page .order-query-password-grid input {
  width: 100%;
  min-height: 46px;
  background: rgba(255, 255, 255, 0.76);
  border-color: rgba(0, 0, 0, 0.08);
}

body.store-page .order-query-password-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

body.store-page .order-query-password-actions button {
  min-height: 42px;
}

body.store-page .order-search-modal {
  place-items: start center;
  padding: 88px 24px 24px;
  background: rgba(17, 17, 16, 0.32);
}

body.store-page .utility-order-modal-box {
  width: min(980px, 100%);
  max-height: min(84vh, 840px);
  padding: 30px;
}

body.store-page .utility-order-modal-box .utility-panel-head h3 {
  max-width: none;
  font-size: 34px;
}

body.store-page #checkOrderBtn {
  min-width: 132px;
}

body.store-page .contact-link-list,
body.store-page .store-resource-list {
  display: grid;
  gap: 0;
}

body.store-page .guide-link,
body.store-page .store-resource-list a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 62px;
  padding: 0;
  background: transparent;
  border: 0;
  border-top: 1px solid var(--border);
  color: var(--text-main);
  font-size: 16px;
  line-height: 1.5;
  transition: color 0.18s ease;
}

body.store-page .guide-link:first-child,
body.store-page .store-resource-list a:first-child {
  border-top: 0;
}

body.store-page .guide-link::after,
body.store-page .store-resource-list a::after,
body.store-page .product-inline-link::after {
  color: var(--text-faint);
  transition: transform 0.18s ease, color 0.18s ease;
}

body.store-page .guide-link:hover,
body.store-page .store-resource-list a:hover,
body.store-page .product-inline-link:hover {
  color: var(--text-main);
}

body.store-page .guide-link:hover::after,
body.store-page .store-resource-list a:hover::after,
body.store-page .product-inline-link:hover::after {
  color: var(--text-main);
  transform: translate(2px, -1px);
}

body.store-page .store-content-column {
  gap: 44px;
}

body.store-page .project-section {
  gap: 34px;
}

body.store-page .section-showcase {
  grid-template-columns: minmax(0, 1.04fr) minmax(300px, 0.78fr);
  gap: 28px;
  align-items: stretch;
  aspect-ratio: auto;
  min-height: 396px;
}

body.store-page .store-feature-card {
  position: relative;
  overflow: hidden;
  min-height: 0;
  padding: clamp(32px, 4vw, 48px) clamp(24px, 3vw, 38px);
  background: #141413;
  border: 1px solid rgba(247, 244, 236, 0.08);
  border-radius: 26px;
  color: var(--text-on-dark);
  box-shadow: none;
}

body.store-page .store-feature-card::before {
  content: none;
}

body.store-page .store-feature-card::after {
  content: none;
}

body.store-page .store-feature-card h2,
body.store-page .store-feature-card h3,
body.store-page .store-feature-card h4,
body.store-page .store-feature-card strong,
body.store-page .store-feature-card .project-link-btn.ghost,
body.store-page .store-feature-card .card-guide-inline-trigger {
  color: var(--text-on-dark);
}

body.store-page .store-feature-card p,
body.store-page .store-feature-card .muted,
body.store-page .store-feature-card .dock-kicker,
body.store-page .store-feature-card .section-kicker {
  color: rgba(247, 244, 236, 0.52);
}

body.store-page .section-copy,
body.store-page .section-visual {
  position: relative;
  z-index: 1;
}

body.store-page .section-copy {
  display: grid;
  gap: 14px;
  min-width: 0;
  max-width: none;
  padding-right: 0;
}

body.store-page .section-copy h2 {
  max-width: 12.5ch;
  font-family: var(--font-ui);
  font-size: clamp(42px, 3.5vw, 50px);
  line-height: 1.04;
  font-weight: 680;
  letter-spacing: 0;
  color: var(--text-on-dark);
  text-wrap: balance;
  word-break: keep-all;
}

body.store-page .openai-showcase .section-copy {
  min-width: 0;
}

body.store-page .openai-showcase .section-copy h2 {
  max-width: none;
}

body.store-page .section-title-nowrap {
  white-space: nowrap;
}

body.store-page .section-copy p {
  max-width: 34rem;
  font-family: var(--font-zh);
  font-size: 16px;
  line-height: 1.66;
  font-weight: 400;
  color: rgba(247, 244, 236, 0.7);
}

body.store-page .section-action-row {
  gap: 10px;
  flex-wrap: wrap;
}

body.store-page .store-feature-card .project-link-btn,
body.store-page .store-feature-card .card-guide-inline-trigger {
  font-family: var(--font-ui);
  font-size: 14px;
  font-weight: 650;
}

body.store-page .section-visual {
  position: relative;
  display: grid;
  place-items: center end;
  min-height: 0;
  border-radius: 0;
  border: 0;
  background: transparent;
  overflow: visible;
}

body.store-page .section-visual::before {
  content: none;
}

body.store-page .section-visual::after {
  content: none;
}

body.store-page .section-visual-image {
  position: static;
  display: block;
  width: auto;
  max-width: min(82%, 360px);
  height: min(5vw, 72px);
  max-height: none;
  opacity: 0.96;
  transform: none;
  z-index: 2;
}

body.store-page .section-visual-image-kiro {
  height: min(6vw, 88px);
}

body.store-page .project-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  justify-content: stretch;
  gap: 24px;
  align-items: stretch;
}

body.store-page .catalog-product-card {
  position: relative;
  display: flex;
  min-height: 452px;
  aspect-ratio: 0.67;
  padding: 28px;
  border-radius: 20px;
  overflow: hidden;
  background: var(--surface);
  border: 1px solid rgba(20, 20, 19, 0.045);
  box-shadow: none;
}

body.store-page .catalog-product-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.18) 0%, rgba(255, 255, 255, 0.05) 22%, rgba(255, 255, 255, 0) 56%),
    var(--surface);
  z-index: 0;
}

body.store-page .catalog-product-card > * {
  position: relative;
  z-index: 1;
}

body.store-page .catalog-product-card:hover {
  transform: none;
  background: transparent;
  border-color: transparent;
  box-shadow: none;
}

body.store-page .catalog-product-card.is-sold-out {
  opacity: 0.92;
}

body.store-page .catalog-product-body {
  gap: 0;
  min-height: 100%;
}

body.store-page .product-card-main {
  display: grid;
  align-content: start;
  gap: 18px;
  flex: 1;
}

body.store-page .product-card-header {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 16px;
  align-items: start;
}

body.store-page .catalog-product-logo {
  width: 46px;
  height: 46px;
  padding: 8px;
  border-radius: 8px;
  border: 1px solid rgba(20, 20, 19, 0.05);
  background: rgba(244, 239, 230, 0.78);
  box-shadow: none;
}

body.store-page .catalog-product-brand-copy {
  display: grid;
  gap: 10px;
  min-width: 0;
  padding-top: 2px;
}

body.store-page .product-display-heading {
  display: grid;
  gap: 4px;
}

body.store-page .product-display-title {
  max-width: 11ch;
  font-family: var(--font-sans);
  font-size: 23px;
  line-height: 1.24;
  font-weight: 600;
  letter-spacing: -0.01em;
  text-wrap: balance;
  overflow-wrap: normal;
  word-break: keep-all;
}

body.store-page .product-display-spec {
  font-family: var(--font-sans);
  font-size: 15px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
  color: rgba(20, 20, 19, 0.72);
}

body.store-page .catalog-product-copy {
  display: grid;
  gap: 12px;
  max-width: 17rem;
}

body.store-page .catalog-product-copy:empty {
  display: none;
}

body.store-page .product-note {
  font-family: var(--font-serif);
  font-size: 16px;
  line-height: 1.42;
  font-weight: 400;
  color: rgba(20, 20, 19, 0.72);
  min-height: 0;
  max-width: 16rem;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

body.store-page .product-link-row {
  display: flex;
}

body.store-page .catalog-product-pricing {
  margin-top: auto;
  padding-top: 40px;
  gap: 16px;
  align-items: end;
  justify-content: space-between;
}

body.store-page .catalog-product-price-meta {
  display: grid;
  gap: 4px;
  justify-items: end;
  text-align: right;
  align-self: end;
}

body.store-page .catalog-product-price-meta span {
  font-family: var(--font-sans);
  font-size: 11px;
  line-height: 1.25;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(20, 20, 19, 0.48);
}

body.store-page .price {
  font-family: var(--font-sans);
  font-size: 34px;
  line-height: 1;
  font-weight: 600;
  letter-spacing: -0.04em;
}

body.store-page .money-amount {
  font-size: 34px;
}

body.store-page .money-currency {
  font-family: var(--font-sans);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.12em;
  color: rgba(20, 20, 19, 0.48);
  transform: none;
}

body.store-page .price-old {
  color: rgba(20, 20, 19, 0.48);
}

body.store-page .product-card-divider {
  height: 1px;
  margin: 24px 0 18px;
  background: rgba(20, 20, 19, 0.1);
}

body.store-page .catalog-product-facts {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  padding: 0;
  border-radius: 0;
  background: transparent;
  border: 0;
}

body.store-page .catalog-product-fact {
  display: grid;
  gap: 6px;
}

body.store-page .catalog-product-fact:last-child {
  justify-items: end;
  text-align: right;
}

body.store-page .catalog-product-fact span {
  font-family: var(--font-sans);
  font-size: 12px;
  font-weight: 400;
  color: rgba(20, 20, 19, 0.48);
}

body.store-page .catalog-product-fact strong {
  font-family: var(--font-sans);
  font-size: 22px;
  font-weight: 600;
  line-height: 1.1;
  color: #141413;
}

body.store-page .product-inline-link {
  min-height: 0;
  padding: 0;
  border: 0;
  background: transparent;
  font-family: var(--font-serif);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.35;
  color: rgba(20, 20, 19, 0.62);
}

body.store-page .product-action-row {
  grid-template-columns: minmax(0, 124px) minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  margin-top: 0;
  padding-top: 0;
}

body.store-page .card-product-action-row,
body.store-page .bundle-launch-row {
  grid-template-columns: 1fr;
}

body.store-page .qty-box {
  min-height: 44px;
  border-radius: 8px;
  border: 1px solid rgba(20, 20, 19, 0.08);
  background: rgba(250, 249, 245, 0.62);
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr) 36px;
  align-items: center;
}

body.store-page .qty-btn {
  min-height: 42px;
  padding: 0;
  border: 0;
  background: transparent;
  font-size: 18px;
  font-weight: 500;
  color: var(--text-main);
}

body.store-page .qty-btn:hover {
  background: rgba(20, 20, 19, 0.04);
  transform: none;
}

body.store-page .qty-value-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
}

body.store-page .qty-value-wrap input {
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  text-align: center;
  font-family: var(--font-sans);
  font-size: 15px;
  font-weight: 600;
  color: #141413;
  pointer-events: none;
}

body.store-page .product-buy-btn,
body.store-page .bundle-launch-btn {
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 600;
  width: 100%;
  min-height: 44px;
  border-radius: 8px;
  background: var(--ag-button-black);
  border-color: var(--ag-button-black);
  color: var(--ag-ivory);
}

body.store-page .product-buy-btn.is-sold-out {
  background: rgba(250, 249, 245, 0.32);
  color: rgba(20, 20, 19, 0.32);
  border-color: rgba(20, 20, 19, 0.08);
}

body.store-page .product-buy-btn.is-sold-out:hover {
  background: rgba(250, 249, 245, 0.32);
  border-color: rgba(20, 20, 19, 0.08);
  color: rgba(20, 20, 19, 0.32);
  transform: none;
}

body.store-page .store-resource-band {
  grid-template-columns: minmax(0, 0.88fr) minmax(0, 1.12fr);
  gap: 44px;
  padding: 0;
  border-top: 0;
}

body.store-page .store-resource-copy {
  display: grid;
  gap: 14px;
  max-width: 480px;
  padding-top: 0;
}

body.store-page .store-resource-copy h2 {
  max-width: 420px;
  font-family: var(--font-zh);
  font-size: clamp(42px, 4vw, 48px);
  line-height: 1.08;
  font-weight: 700;
  letter-spacing: 0;
  color: var(--text-main);
}

body.store-page .store-resource-copy p {
  max-width: 34rem;
  font-family: var(--font-zh);
  font-size: 15px;
  line-height: 1.75;
  font-weight: 400;
  color: rgba(17, 17, 17, 0.62);
}

body.store-page .store-resource-list a {
  font-family: var(--font-ui);
  min-height: 54px;
  font-size: 17px;
  font-weight: 500;
  letter-spacing: 0;
}

body.store-page .store-footer {
  margin-top: 0;
  background: var(--ag-footer);
  color: var(--text-on-dark);
  font-family: var(--font-ui);
}

body.store-page .store-footer-inner {
  width: min(1320px, calc(100vw - 64px));
  margin: 0 auto;
  padding: 60px 0 64px;
  display: grid;
  grid-template-columns: minmax(220px, 0.72fr) minmax(0, 1.28fr);
  gap: 42px 64px;
  align-items: start;
}

body.store-page .store-footer-brand-block {
  display: grid;
  gap: 20px;
  max-width: 260px;
}

body.store-page .store-footer-brand-row {
  display: inline-flex;
  align-items: flex-start;
}

body.store-page .store-footer-brand {
  width: 116px;
  height: 62px;
  border: 0;
  border-radius: 0;
  background: transparent;
  overflow: visible;
}

body.store-page .store-footer-brand img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transform: scale(1.26);
  transform-origin: left center;
  filter: brightness(0) invert(1);
}

body.store-page .store-footer-brand-copy {
  display: grid;
  gap: 0;
}

body.store-page .store-footer-brand-copy p {
  font-family: var(--font-ui);
  font-size: 14.5px;
  line-height: 1.5;
  font-weight: 500;
  color: rgba(247, 244, 236, 0.68);
}

body.store-page .store-footer-columns {
  grid-template-columns: repeat(3, minmax(160px, 1fr));
  gap: 22px 34px;
}

body.store-page .store-footer-column {
  gap: 14px;
}

body.store-page .store-footer-column h3 {
  font-family: var(--font-ui);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0;
  color: #ffffff;
}

body.store-page .store-footer-column a {
  font-family: var(--font-ui);
  font-size: 15px;
  line-height: 1.55;
  font-weight: 400;
  color: rgba(247, 244, 236, 0.62);
}

body.store-page .store-footer-column a:hover {
  color: rgba(247, 244, 236, 0.92);
}

body.store-page[data-locale="en"] .anthropic-replica-heading h1,
body.store-page[data-locale="en"] .section-copy h2,
body.store-page[data-locale="en"] .store-resource-copy h2,
body.store-page[data-locale="en"] .utility-panel-head h3,
body.store-page[data-locale="en"] .card-guide-modal-head h3,
body.store-page[data-locale="en"] .card-bin-picker-head h3,
body.store-page[data-locale="en"] .delivery-modal-head h3,
body.store-page[data-locale="en"] .purchase-notice-head h3,
body.store-page[data-locale="en"] .purchase-proof-lightbox-head h3 {
  font-family: var(--font-display-en);
  letter-spacing: -0.02em;
}

body.store-page[data-locale="en"] .brand-stack strong,
body.store-page[data-locale="en"] .topbar-nav-link,
body.store-page[data-locale="en"] .nav-link,
body.store-page[data-locale="en"] .nav-utility-btn,
body.store-page[data-locale="en"] .nav-primary-cta,
body.store-page[data-locale="en"] .nav-account-card-link,
body.store-page[data-locale="en"] .nav-language-option,
body.store-page[data-locale="en"] .store-footer-column h3 {
  font-family: var(--font-display-en);
  letter-spacing: -0.01em;
}

body.store-page[data-locale="en"] .anthropic-replica-heading h1 {
  max-width: 12ch;
  font-size: clamp(60px, 6.8vw, 88px);
  line-height: 0.98;
}

body.store-page[data-locale="en"] .brand-stack strong {
  font-size: 18px;
  font-weight: 610;
}

body.store-page[data-locale="en"] .topbar-nav-link,
body.store-page[data-locale="en"] .nav-link,
body.store-page[data-locale="en"] .nav-utility-btn,
body.store-page[data-locale="en"] .nav-primary-cta,
body.store-page[data-locale="en"] .nav-account-card-link,
body.store-page[data-locale="en"] .nav-language-option {
  font-size: 13.75px;
}

body.store-page[data-locale="en"] .anthropic-replica-aside p,
body.store-page[data-locale="en"] .section-copy p,
body.store-page[data-locale="en"] .utility-panel-head p,
body.store-page[data-locale="en"] .product-note,
body.store-page[data-locale="en"] .store-footer-brand-copy p,
body.store-page[data-locale="en"] .purchase-notice-intro-card p,
body.store-page[data-locale="en"] .purchase-proof-caption-list p,
body.store-page[data-locale="en"] .card-guide-modal-head p,
body.store-page[data-locale="en"] .delivery-modal-head p,
body.store-page[data-locale="en"] .purchase-notice-head p,
body.store-page[data-locale="en"] .checkout-stage-desc,
body.store-page[data-locale="en"] .qr-state-subtitle,
body.store-page[data-locale="en"] .qr-code-tip,
body.store-page[data-locale="en"] #checkoutContactHint {
  font-family: var(--font-serif-en);
}

body.store-page[data-locale="en"] .store-resource-copy h2 {
  max-width: 12ch;
  font-family: var(--font-display-en);
}

body.store-page[data-locale="en"] .anthropic-replica-aside p {
  max-width: 19ch;
  font-size: clamp(23px, 1.78vw, 25px);
  line-height: 1.38;
}

body.store-page[data-locale="en"] .store-footer-column a {
  font-family: var(--font-serif-en);
  font-size: 15.5px;
  line-height: 1.5;
}

@media (max-width: 1180px) {
  body.store-page .store-hero-grid,
  body.store-page .store-resource-band,
  body.store-page .section-showcase,
  body.store-page .store-footer-inner {
    grid-template-columns: 1fr;
  }

  body.store-page .project-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  body.store-page .section-showcase,
  body.store-page .brand-motion-frame {
    aspect-ratio: auto;
  }

  body.store-page .store-hero-aside p {
    max-width: none;
  }
}

@media (max-width: 900px) {
  body.account-page .topbar {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 14px 18px;
    min-height: 0;
    padding: 14px 24px;
  }

  body.account-page .topbar-nav {
    grid-column: 1 / -1;
    justify-self: start;
    width: 100%;
    margin-left: 0;
    gap: 18px;
    overflow-x: auto;
    border-bottom: 1px solid var(--ag-border);
  }

  body.account-page .topbar-nav-link,
  body.account-page .nav-link,
  body.account-page .nav-utility-btn {
    min-height: 42px;
    padding: 0 0 10px;
  }

  body.account-page .topbar-nav-link::after,
  body.account-page .nav-link::after,
  body.account-page .nav-utility-btn::after {
    bottom: 0;
  }

  body.account-page .account-hero-grid,
  body.account-page .account-layout {
    grid-template-columns: 1fr;
  }

  body.store-page .topbar {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 14px 18px;
    min-height: 0;
    padding: 14px 24px;
  }

  body.store-page .topbar-nav {
    grid-column: 1 / -1;
    justify-self: start;
    width: 100%;
    margin-left: 0;
    gap: 18px;
    overflow-x: auto;
    overflow-y: visible;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
  }

  body.store-page .topbar-nav-link,
  body.store-page .nav-link,
  body.store-page .nav-utility-btn {
    min-height: 42px;
    padding: 0 0 10px;
  }

  body.store-page .topbar-nav-link::after,
  body.store-page .nav-link::after,
  body.store-page .nav-utility-btn::after {
    left: 0;
    right: 0;
    bottom: 0;
  }

  body.store-page .topbar-action-cluster {
    margin-left: 0;
  }

  body.store-page .store-hero {
    padding-top: 0;
  }

  body.store-page .store-hero-grid,
  body.store-page .brand-motion-frame {
    grid-template-columns: 1fr;
  }

  body.store-page .project-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    justify-content: stretch;
  }

  body.store-page .store-footer-columns {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.store-page .brand-motion-shell {
    margin-inline: calc(24px * (1 - var(--motion-progress)));
  }

  body.store-page .brand-motion-visual {
    min-height: 360px;
  }

  body.store-page .section-showcase {
    aspect-ratio: auto;
  }
}

@media (max-width: 760px) {
  body.account-page .shell.account-shell {
    width: min(100vw - 40px, 100%);
    padding: 12px 0 56px;
    gap: 32px;
  }

  body.account-page .topbar {
    padding: 12px 20px;
  }

  body.account-page .brand-mark {
    width: 40px;
    height: 32px;
  }

  body.account-page .brand-stack strong {
    font-size: 16px;
  }

  body.account-page .brand-stack-expanded > span,
  body.account-page .nav-user-chip {
    display: none;
  }

  body.account-page .nav-cta-combo,
  body.account-page .nav-primary-cta-solo {
    min-height: 42px;
  }

  body.account-page .nav-primary-cta {
    min-height: 42px;
    font-size: 14px;
  }

  body.account-page .account-hero-copy h1 {
    max-width: none;
    font-size: clamp(40px, 11vw, 48px);
  }

  body.account-page .account-hero-note p {
    max-width: none;
    font-size: 16px;
  }

  body.account-page .account-tips,
  body.account-page .account-panel,
  body.account-page .panel.clean {
    padding: 22px 20px;
  }

  body.account-page .history-merged-grid {
    grid-template-columns: 1fr;
  }

  body.store-page .shell.store-shell {
    width: min(100vw - 40px, 100%);
    padding: 12px 0 56px;
    gap: 40px;
  }

  body.store-page .topbar {
    gap: 12px 14px;
    padding: 12px 14px;
  }

  body.store-page .topbar-brand {
    max-width: min(214px, calc(100vw - 146px));
  }

  body.store-page .brand-mark {
    width: 50px;
    height: 28px;
  }

  body.store-page .brand-stack strong {
    font-size: 14px;
  }

  body.store-page .brand-text {
    max-width: 150px;
    margin-left: 8px;
  }

  body.store-page .brand-stack-expanded > span,
  body.store-page .nav-user-chip {
    display: none;
  }

  body.store-page .topbar-action-cluster {
    margin-left: 0;
  }

  body.store-page .nav-cta-combo,
  body.store-page .nav-primary-cta-solo {
    min-height: 42px;
  }

  body.store-page .nav-primary-cta {
    min-height: 42px;
    font-size: 14px;
  }

  body.store-page .store-hero-copy h1 {
    max-width: none;
    font-size: clamp(38px, 10vw, 52px);
    line-height: 1.02;
    word-break: normal;
    overflow-wrap: anywhere;
    text-wrap: balance;
  }

  body.store-page .store-hero-aside p {
    max-width: none;
    font-size: clamp(24px, 6vw, 32px);
    line-height: 1.12;
  }

  body.store-page .brand-motion-section {
    margin-inline: -20px;
  }

  body.store-page .brand-motion-shell {
    margin-inline: calc(18px * (1 - var(--motion-progress)));
  }

  body.store-page .order-search-modal {
    padding: 72px 16px 16px;
  }

  body.store-page .utility-order-modal-box {
    padding: 22px 20px;
  }

  body.store-page .brand-motion-frame {
    aspect-ratio: auto;
    min-height: 0;
    padding: 24px 20px 26px;
  }

  body.store-page .brand-motion-copy {
    gap: 16px;
    padding: 8px 0 0;
  }

  body.store-page .brand-motion-copy h2 {
    max-width: none;
    font-size: clamp(58px, 16vw, 86px);
  }

  body.store-page .brand-motion-copy p {
    max-width: 16ch;
    font-size: clamp(22px, 6vw, 30px);
  }

  body.store-page .brand-motion-link {
    min-height: 40px;
    font-size: 14px;
  }

  body.store-page .brand-motion-corner {
    width: 72px;
  }

  body.store-page .brand-motion-visual {
    min-height: 260px;
  }

  body.store-page .brand-motion-visual::before {
    inset: 10% 0 0;
  }

  body.store-page .brand-motion-grid {
    inset: 12% 0 0;
    gap: 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.store-page .brand-motion-tile:nth-child(n + 7) {
    display: none;
  }

  body.store-page .brand-motion-main-mark {
    width: min(72%, 280px);
  }

  body.store-page .control-bar-head h2 {
    font-size: 28px;
  }

  body.store-page .project-switcher {
    gap: 16px;
  }

  body.store-page .project-switcher-btn {
    font-size: 15px;
  }

  body.store-page .utility-panel-card {
    padding: 22px 20px;
    border-radius: 18px;
  }

  body.store-page .utility-panel-head h3 {
    font-size: 28px;
  }

  body.store-page .query-dock-form {
    grid-template-columns: 1fr;
  }

  body.store-page .order-query-password-grid {
    grid-template-columns: 1fr;
  }

  body.store-page .order-query-password-actions button {
    flex: 1 1 160px;
  }

  body.store-page #checkOrderBtn {
    width: 100%;
  }

  body.store-page .store-feature-card {
    min-height: 0;
    padding: 28px 24px;
    border-radius: 24px;
  }

  body.store-page .store-feature-card::before {
    right: 18px;
    bottom: 18px;
    width: 68%;
    height: 40%;
  }

  body.store-page .section-showcase {
    gap: 20px;
  }

  body.store-page .section-copy {
    padding-right: 0;
  }

  body.store-page .section-copy h2 {
    max-width: none;
    font-size: clamp(42px, 10.2vw, 48px);
    line-height: 1.05;
  }

  body.store-page .openai-showcase .section-copy {
    min-width: 0;
  }

  body.store-page .section-title-nowrap {
    white-space: normal;
  }

  body.store-page .section-copy p {
    font-size: 15px;
  }

  body.store-page .section-visual {
    min-height: 160px;
  }

  body.store-page .section-visual-image {
    max-height: 42px;
  }

  body.store-page .section-visual-image-kiro {
    max-height: 56px;
  }

  body.store-page .project-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  body.store-page .catalog-product-card {
    min-height: 0;
    aspect-ratio: auto;
    padding: 24px;
  }

  body.store-page .product-display-title {
    max-width: none;
    font-size: clamp(26px, 8.5vw, 28px);
  }

  body.store-page .catalog-product-pricing {
    align-items: start;
  }

  body.store-page .catalog-product-price-meta {
    justify-items: start;
    text-align: left;
  }

  body.store-page .product-action-row,
  body.store-page .card-product-action-row,
  body.store-page .bundle-launch-row {
    grid-template-columns: 1fr;
  }

  body.store-page .qty-box {
    width: 124px;
  }

  body.store-page .store-resource-band {
    gap: 24px;
  }

  body.store-page .store-resource-copy h2 {
    max-width: none;
    font-size: clamp(36px, 9vw, 42px);
    line-height: 1.08;
  }

  body.store-page .store-resource-list a,
  body.store-page .guide-link {
    min-height: 56px;
    font-size: 15px;
  }

  body.store-page .store-footer-inner {
    width: min(100vw - 40px, 100%);
    padding: 32px 0 40px;
  }

  body.store-page .store-footer-brand {
    width: 100px;
    height: 54px;
  }

  body.store-page .store-footer-columns {
    grid-template-columns: 1fr;
    gap: 18px;
  }
}

/* 2026-05-19 storefront refinement */
body.store-page {
  --surface: #e7dece;
  --surface-strong: #dfd4c5;
  --surface-light: #efe7da;
  --border: rgba(20, 20, 19, 0.08);
  --border-strong: rgba(20, 20, 19, 0.13);
}

body.store-page .project-grid {
  gap: 28px;
}

body.store-page .catalog-product-card {
  border-radius: 18px;
  border: 1px solid rgba(20, 20, 19, 0.065);
  background: linear-gradient(180deg, rgba(243, 238, 229, 0.92) 0%, rgba(232, 223, 209, 0.98) 100%);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.68),
    0 14px 26px rgba(20, 20, 19, 0.02),
    0 28px 48px rgba(20, 20, 19, 0.036);
}

body.store-page .catalog-product-card::before {
  background:
    radial-gradient(138% 76% at 0% 0%, rgba(255, 255, 255, 0.42) 0%, rgba(255, 255, 255, 0) 58%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.14) 0%, rgba(255, 255, 255, 0.04) 24%, rgba(255, 255, 255, 0) 54%),
    linear-gradient(180deg, rgba(239, 231, 218, 0.98) 0%, rgba(231, 222, 206, 0.98) 100%);
}

body.store-page .catalog-product-card::after {
  content: "";
  position: absolute;
  inset: 1px;
  border-radius: 17px;
  border: 1px solid rgba(255, 255, 255, 0.28);
  pointer-events: none;
  z-index: 0;
}

body.store-page .product-card-main {
  gap: 20px;
}

body.store-page .product-card-header {
  gap: 18px;
}

body.store-page .catalog-product-logo {
  width: 50px;
  height: 50px;
  padding: 9px;
  border-radius: 10px;
  border: 1px solid rgba(20, 20, 19, 0.055);
  background: rgba(250, 248, 242, 0.88);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.84),
    0 10px 16px rgba(20, 20, 19, 0.03);
}

body.store-page .catalog-product-brand-copy {
  gap: 8px;
}

body.store-page .product-display-heading {
  gap: 5px;
}

body.store-page .product-display-title {
  max-width: 10ch;
  font-size: 24px;
  line-height: 1.18;
  font-weight: 620;
}

body.store-page .product-display-spec {
  font-size: 14px;
  color: rgba(20, 20, 19, 0.68);
}

body.store-page .catalog-product-copy {
  gap: 14px;
  max-width: 16.25rem;
}

body.store-page .product-note {
  max-width: 15.5rem;
  line-height: 1.48;
  color: rgba(20, 20, 19, 0.66);
}

body.store-page .catalog-product-pricing {
  padding-top: 36px;
  gap: 18px;
}

body.store-page .price,
body.store-page .money-amount {
  font-size: 36px;
  letter-spacing: -0.045em;
}

body.store-page .money-currency {
  font-size: 12px;
  letter-spacing: 0.14em;
}

body.store-page .product-card-divider {
  margin: 26px 0 16px;
  background: linear-gradient(90deg, rgba(20, 20, 19, 0.11), rgba(20, 20, 19, 0.06) 56%, rgba(20, 20, 19, 0));
}

body.store-page .catalog-product-fact strong {
  font-size: 24px;
}

body.store-page .qty-box {
  border-color: rgba(20, 20, 19, 0.09);
  background: rgba(252, 250, 246, 0.74);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

body.store-page .product-buy-btn,
body.store-page .bundle-launch-btn {
  min-height: 46px;
}

body.store-page .store-resource-band {
  gap: 56px;
}

body.store-page .store-footer-inner {
  grid-template-columns: minmax(240px, 0.64fr) minmax(0, 1.36fr);
  gap: 48px 72px;
  padding: 72px 0 74px;
}

body.store-page .store-footer-brand-block {
  gap: 24px;
  max-width: 280px;
}

body.store-page .store-footer-brand-copy p {
  color: rgba(250, 249, 245, 0.76);
}

body.store-page .store-footer-columns {
  gap: 24px 48px;
}

body.store-page .store-footer-column h3 {
  font-weight: 650;
  color: #ffffff;
}

body.store-page .store-footer-column a {
  color: rgba(247, 244, 236, 0.72);
}

body.store-page .store-footer-column a:hover {
  color: #fff;
}

@media (min-width: 1181px) {
  body.store-page .anthropic-replica-hero {
    padding-top: clamp(76px, 6.5vw, 108px);
    padding-bottom: clamp(84px, 7.4vw, 118px);
  }

  body.store-page .anthropic-replica-grid {
    grid-template-columns: minmax(0, 0.95fr) minmax(340px, 0.61fr);
    gap: clamp(70px, 6.2vw, 118px);
  }

  body.store-page .anthropic-replica-heading {
    max-width: 670px;
  }

  body.store-page .anthropic-replica-heading h1 {
    max-width: 8.45ch;
    font-size: clamp(48px, 4vw, 60px);
    line-height: 1.01;
  }

  body.store-page .anthropic-replica-aside {
    justify-self: end;
    padding-top: clamp(34px, 3vw, 54px);
  }

  body.store-page .anthropic-replica-aside p {
    max-width: 18.5ch;
    font-size: clamp(22px, 1.66vw, 24px);
    line-height: 1.38;
  }

  body.store-page[data-locale="en"] .anthropic-replica-grid {
    grid-template-columns: minmax(0, 1fr) minmax(360px, 0.64fr);
    gap: clamp(82px, 7vw, 138px);
  }

  body.store-page[data-locale="en"] .anthropic-replica-heading h1 {
    max-width: 10.4ch;
    font-size: clamp(60px, 6.2vw, 84px);
    line-height: 0.98;
  }

  body.store-page[data-locale="en"] .anthropic-replica-aside p {
    max-width: 18.25ch;
    font-size: clamp(23px, 1.84vw, 26px);
  }
}

@media (max-width: 760px) {
  body.store-page .project-grid {
    gap: 18px;
  }

  body.store-page .catalog-product-card {
    padding: 24px;
  }

  body.store-page .store-footer-inner {
    padding: 36px 0 42px;
    gap: 28px;
  }
}

/* 2026-05-19 final store/account refinement */
body.store-page,
body.account-page {
  --ag-claude-card: #e8ddcd;
  --ag-claude-card-border: rgba(20, 20, 19, 0.1);
  --ag-claude-card-soft: #f8f2e8;
  --ag-logout-red: #ab3f33;
  --ag-logout-red-soft: rgba(171, 63, 51, 0.12);
}

body.account-page {
  --text-on-dark: #faf9f5;
  --black-hover: #242421;
}

body.store-page .catalog-product-card {
  border-radius: 16px;
  border: 1px solid var(--ag-claude-card-border);
  background: var(--ag-claude-card);
  box-shadow: none;
}

body.store-page .catalog-product-card::before,
body.store-page .catalog-product-card::after {
  content: none;
}

body.store-page .catalog-product-card:hover {
  background: var(--ag-claude-card);
  border-color: rgba(20, 20, 19, 0.12);
  box-shadow: none;
}

body.store-page .catalog-product-logo {
  background: rgba(248, 242, 232, 0.9);
  border: 1px solid rgba(20, 20, 19, 0.08);
  box-shadow: none;
}

body.store-page .product-display-title {
  max-width: 10.5ch;
  font-size: 23px;
  line-height: 1.2;
  font-weight: 620;
}

body.store-page .catalog-product-copy {
  max-width: 17.25rem;
}

body.store-page .product-note {
  max-width: 16rem;
  font-size: 16px;
  line-height: 1.5;
  color: rgba(20, 20, 19, 0.72);
}

body.store-page .catalog-product-pricing {
  padding-top: 34px;
}

body.store-page .price,
body.store-page .money-amount {
  font-size: 34px;
}

body.store-page .product-card-divider {
  margin: 24px 0 18px;
  background: rgba(20, 20, 19, 0.11);
}

body.store-page .catalog-product-fact span {
  color: rgba(20, 20, 19, 0.52);
}

body.store-page .catalog-product-fact strong {
  font-size: 22px;
}

body.store-page .qty-box {
  background: rgba(250, 246, 238, 0.62);
  border-color: rgba(20, 20, 19, 0.1);
  box-shadow: none;
}

body.store-page .product-buy-btn,
body.store-page .bundle-launch-btn {
  min-height: 44px;
  box-shadow: none;
}

body.store-page .store-resource-band {
  gap: 74px;
  margin-top: 22px;
  padding-top: 30px;
  align-items: start;
}

body.store-page .store-resource-copy {
  gap: 18px;
  max-width: 540px;
}

body.store-page .store-resource-copy h2 {
  max-width: 460px;
  font-size: clamp(44px, 4.1vw, 52px);
  line-height: 1.04;
}

body.store-page .store-resource-list {
  display: grid;
  gap: 0;
  padding-top: 10px;
}

body.store-page .store-resource-list a {
  min-height: 62px;
  font-size: 18px;
}

body.store-page .anthropic-replica-hero {
  padding-top: clamp(92px, 7vw, 126px);
  padding-bottom: clamp(88px, 7.6vw, 122px);
}

body.store-page .anthropic-replica-grid {
  grid-template-columns: minmax(0, 0.98fr) minmax(360px, 0.58fr);
  gap: clamp(88px, 7.1vw, 142px);
}

body.store-page .anthropic-replica-heading {
  max-width: 700px;
}

body.store-page .anthropic-replica-heading h1 {
  max-width: 10.6ch;
  font-size: clamp(44px, 3.5vw, 54px);
  line-height: 1.04;
  letter-spacing: -0.028em;
}

body.store-page .anthropic-replica-aside {
  justify-self: end;
  padding-top: clamp(40px, 3.2vw, 58px);
}

body.store-page .anthropic-replica-aside p {
  max-width: 18ch;
  font-size: clamp(22px, 1.66vw, 25px);
  line-height: 1.38;
  color: #171714;
}

body.store-page[data-locale="en"] .anthropic-replica-grid {
  grid-template-columns: minmax(0, 1fr) minmax(360px, 0.62fr);
  gap: clamp(92px, 7.4vw, 148px);
}

body.store-page[data-locale="en"] .anthropic-replica-heading h1 {
  max-width: 10.6ch;
  font-size: clamp(60px, 6vw, 82px);
}

body.store-page[data-locale="en"] .anthropic-replica-aside p {
  max-width: 18.4ch;
  font-size: clamp(23px, 1.82vw, 26px);
}

body.store-page .nav-account-card,
body.account-page .nav-account-card {
  position: absolute;
  top: calc(100% + 12px);
  right: 0;
  min-width: 220px;
  gap: 8px;
  padding: 12px;
  border-radius: 14px;
  border: 1px solid rgba(20, 20, 19, 0.08);
  background: #f8f3ea;
  box-shadow: 0 18px 34px rgba(20, 20, 19, 0.08);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(8px);
  transition: opacity 0.18s ease, transform 0.18s ease, visibility 0.18s ease;
  z-index: 24;
}

body.store-page .nav-account-card-link,
body.account-page .nav-account-card-link {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 0 12px;
  border-radius: 10px;
  font-family: var(--font-ui);
  font-size: 13px;
  font-weight: 500;
  color: #141413;
  text-decoration: none;
  background: transparent;
}

body.store-page .nav-account-card-link-danger,
body.account-page .nav-account-card-link-danger {
  width: 100%;
  justify-content: flex-start;
  border: 1px solid rgba(171, 63, 51, 0.16);
  background: var(--ag-logout-red-soft);
  color: var(--ag-logout-red);
  appearance: none;
  font: inherit;
  text-align: left;
  cursor: pointer;
}

body.store-page .nav-account-card-link-danger:hover,
body.store-page .nav-account-card-link-danger:focus-visible,
body.account-page .nav-account-card-link-danger:hover,
body.account-page .nav-account-card-link-danger:focus-visible {
  background: var(--ag-logout-red);
  border-color: var(--ag-logout-red);
  color: #fff7f2;
}

body.account-page .nav-account-card-link:hover,
body.account-page .nav-account-card-link:focus-visible {
  background: rgba(20, 20, 19, 0.05);
}

body.account-page .topbar-action-cluster {
  gap: 12px;
  margin-left: 24px;
  justify-self: end;
}

body.account-page .nav-account-menu {
  position: relative;
  display: inline-flex;
  flex-direction: column;
  align-items: flex-end;
}

body.account-page .nav-user-chip {
  font-family: var(--font-ui);
  min-height: auto;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  color: rgba(17, 17, 17, 0.46);
  font-size: 11.5px;
  font-weight: 400;
  max-width: 180px;
}

body.account-page .nav-cta-combo {
  display: inline-flex;
  align-items: stretch;
  min-height: 40px;
  border-radius: 8px;
  background: var(--ag-button-black);
  border: 0;
  overflow: hidden;
}

body.account-page .nav-primary-cta {
  font-family: var(--font-ui);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 0 17px;
  border-radius: 8px;
  background: var(--ag-button-black);
  color: var(--text-on-dark);
  font-size: 13px;
  font-weight: 500;
  transition: background-color 0.18s ease, color 0.18s ease;
}

body.account-page .nav-primary-cta-main {
  border-radius: 8px 0 0 8px;
}

body.account-page .nav-cta-combo .nav-primary-cta:first-child {
  border-right: 0;
}

body.account-page .nav-primary-cta-secondary {
  width: 38px;
  min-width: 38px;
  padding: 0;
  border-radius: 0 8px 8px 0;
}

body.account-page .nav-primary-cta-menu {
  position: relative;
}

body.account-page .nav-primary-cta-menu::before {
  content: "";
  position: absolute;
  left: 0;
  top: 10px;
  bottom: 10px;
  width: 1px;
  background: rgba(250, 249, 245, 0.14);
}

body.account-page .nav-cta-combo:hover .nav-primary-cta:first-child,
body.account-page .nav-cta-combo:focus-within .nav-primary-cta:first-child,
body.account-page .nav-cta-combo:hover .nav-primary-cta-secondary,
body.account-page .nav-cta-combo:focus-within .nav-primary-cta-secondary {
  background: var(--ag-button-black);
}

body.account-page .nav-cta-combo .nav-primary-cta:first-child.nav-primary-cta-main:hover,
body.account-page .nav-cta-combo .nav-primary-cta:first-child.nav-primary-cta-main:focus-visible {
  background: var(--black-hover);
}

body.account-page .nav-cta-combo .nav-primary-cta-secondary.nav-primary-cta-menu:hover,
body.account-page .nav-cta-combo .nav-primary-cta-secondary.nav-primary-cta-menu:focus-visible,
body.account-page .nav-account-menu[data-menu-open="true"] .nav-primary-cta-menu {
  background: #161614;
}

body.account-page .nav-account-menu[data-menu-open="true"] .nav-primary-cta-chevron {
  opacity: 1;
  transform: translateY(1px);
}

body.account-page .nav-account-menu[data-menu-open="true"] .nav-account-card {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}

body.account-page .nav-account-card-status {
  display: flex;
  align-items: baseline;
  gap: 8px;
  padding: 8px 10px 10px;
  border-bottom: 1px solid rgba(20, 20, 19, 0.08);
  white-space: nowrap;
}

body.account-page .nav-account-card-label {
  font-family: var(--font-ui);
  font-size: 12.5px;
  font-weight: 500;
  color: rgba(20, 20, 19, 0.66);
}

body.account-page .nav-account-card-account {
  font-family: var(--font-ui);
  font-size: 13px;
  font-weight: 600;
  color: #141413;
}

body.account-page .shell.account-shell {
  width: min(1360px, calc(100vw - 64px));
  padding: 28px 0 88px;
  gap: 32px;
  background: transparent;
}

body.account-page .account-center-hero {
  padding-top: 22px;
}

body.account-page .account-hero-grid {
  grid-template-columns: minmax(0, 1fr) minmax(360px, 0.62fr);
  gap: clamp(64px, 6vw, 118px);
  align-items: start;
}

body.account-page .account-hero-copy {
  display: grid;
  gap: 14px;
}

body.account-page .account-hero-copy h1 {
  max-width: none;
  font-size: clamp(52px, 5.2vw, 72px);
  line-height: 0.98;
  letter-spacing: -0.04em;
}

body.account-page .account-hero-note {
  display: grid;
  gap: 18px;
  padding-top: 22px;
}

body.account-page .account-hero-note p {
  max-width: 18.5ch;
  font-size: clamp(20px, 1.8vw, 24px);
  line-height: 1.48;
  color: rgba(20, 20, 19, 0.86);
}

body.account-page .account-hero-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

body.account-page .account-hero-meta span {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 0 14px;
  border-radius: 999px;
  border: 1px solid rgba(20, 20, 19, 0.08);
  background: rgba(20, 20, 19, 0.04);
  color: rgba(20, 20, 19, 0.64);
  font-size: 13px;
}

body.account-page .account-access-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(360px, 0.98fr);
  gap: 24px;
}

body.account-page .account-process-panel,
body.account-page .account-entry-panel,
body.account-page .account-overview-shell,
body.account-page .account-history-shell {
  padding: 30px;
  border-radius: 16px;
  border: 1px solid rgba(20, 20, 19, 0.09);
  background: #f4ede2;
  box-shadow: none;
}

body.account-page .account-section-head {
  display: grid;
  gap: 8px;
  margin-bottom: 22px;
}

body.account-page .account-section-head h2 {
  font-size: 34px;
  line-height: 1.05;
}

body.account-page .account-section-head .muted {
  max-width: 36rem;
}

body.account-page .account-step-list {
  display: grid;
  gap: 0;
}

body.account-page .account-step-item {
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr);
  gap: 16px;
  padding: 18px 0;
  border-top: 1px solid rgba(20, 20, 19, 0.09);
}

body.account-page .account-step-item:first-child {
  padding-top: 0;
  border-top: 0;
}

body.account-page .account-step-index {
  font-family: var(--font-ui);
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.12em;
  color: rgba(20, 20, 19, 0.42);
}

body.account-page .account-step-copy {
  display: grid;
  gap: 6px;
}

body.account-page .account-step-copy strong {
  font-size: 18px;
  font-weight: 600;
  line-height: 1.25;
}

body.account-page .account-step-copy p {
  margin: 0;
  font-size: 15px;
  line-height: 1.72;
  color: rgba(20, 20, 19, 0.68);
}

body.account-page .account-entry-form {
  display: grid;
}

body.account-page .account-entry-form input {
  min-height: 56px;
  margin-bottom: 16px;
  padding: 0 16px;
  border-radius: 10px;
  border: 1px solid rgba(20, 20, 19, 0.1);
  background: #faf6ef;
  box-shadow: none;
}

body.account-page .account-entry-form input:focus {
  border-color: rgba(20, 20, 19, 0.24);
  box-shadow: none;
  outline: none;
}

body.account-page .account-entry-hint {
  margin: 6px 0 18px;
  font-size: 14px;
  line-height: 1.7;
  color: rgba(20, 20, 19, 0.68);
}

body.account-page .account-entry-actions {
  margin-top: 0;
}

body.account-page #entryBtn {
  width: 100%;
  min-height: 48px;
  border-radius: 10px;
  box-shadow: none;
}

body.account-page .account-overview-head,
body.account-page .account-history-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 0.7fr);
  gap: 24px;
  align-items: end;
}

body.account-page .account-overview-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

body.account-page .account-overview-card {
  display: grid;
  gap: 12px;
  padding: 22px;
  border-radius: 12px;
  border: 1px solid rgba(20, 20, 19, 0.08);
  background: #faf6ef;
}

body.account-page .account-overview-label,
body.account-page .history-section-kicker {
  display: inline-block;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(20, 20, 19, 0.46);
}

body.account-page .account-overview-value {
  font-size: clamp(30px, 2.8vw, 40px);
  line-height: 1;
  font-weight: 620;
  overflow-wrap: anywhere;
}

body.account-page .account-overview-meta {
  margin: 0;
  font-size: 14px;
  line-height: 1.62;
  color: rgba(20, 20, 19, 0.68);
}

body.account-page .history-list {
  gap: 16px;
}

body.account-page .history-merged-card {
  padding: 24px;
  border-radius: 14px;
  border: 1px solid rgba(20, 20, 19, 0.08);
  background: #faf6ef;
}

body.account-page .history-merged-head {
  margin-bottom: 18px;
}

body.account-page .history-merged-head h3 {
  font-size: 28px;
  margin-bottom: 4px;
}

body.account-page .history-merged-head .meta {
  font-size: 15px;
  color: rgba(20, 20, 19, 0.68);
}

body.account-page .history-code-list {
  gap: 12px;
}

body.account-page .delivery-copy-card {
  gap: 12px;
  padding: 18px 20px;
  border-radius: 12px;
  border: 1px solid rgba(20, 20, 19, 0.08);
  background: #fbf7f1;
  transition: none;
}

body.account-page .delivery-copy-card:hover {
  transform: none;
  background: #fbf7f1;
  border-color: rgba(20, 20, 19, 0.08);
}

body.account-page .delivery-copy-card-head strong {
  font-size: 17px;
}

body.account-page .history-merged-grid {
  gap: 14px 18px;
}

body.account-page .history-merged-line,
body.account-page .history-item {
  padding-top: 12px;
  border-top: 1px solid rgba(20, 20, 19, 0.08);
}

body.account-page .history-record-note {
  margin: 0;
  padding-top: 12px;
  border-top: 1px solid rgba(20, 20, 19, 0.08);
  font-size: 14px;
  line-height: 1.7;
  color: rgba(20, 20, 19, 0.68);
}

body.account-page .chip {
  border: 1px solid rgba(20, 20, 19, 0.08);
  background: rgba(20, 20, 19, 0.04);
  color: rgba(20, 20, 19, 0.68);
}

body.account-page .account-empty-card {
  min-height: 180px;
  display: flex;
  align-items: center;
}

@media (max-width: 1180px) {
  body.store-page .anthropic-replica-grid,
  body.account-page .account-hero-grid,
  body.account-page .account-access-grid,
  body.account-page .account-overview-head,
  body.account-page .account-history-head {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  body.store-page .anthropic-replica-aside {
    justify-self: start;
    padding-top: 0;
  }

  body.store-page .store-resource-band {
    gap: 34px;
    margin-top: 0;
    padding-top: 18px;
  }

  body.account-page .account-overview-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  body.account-page .topbar-action-cluster {
    margin-left: 0;
  }
}

@media (max-width: 760px) {
  body.store-page .catalog-product-card {
    padding: 22px;
  }

  body.store-page .store-resource-band {
    gap: 26px;
    padding-top: 14px;
  }

  body.store-page .store-resource-copy h2 {
    font-size: clamp(40px, 10vw, 48px);
  }

  body.store-page .store-resource-list a {
    min-height: 58px;
    font-size: 17px;
  }

  body.account-page .topbar {
    gap: 12px 14px;
    padding: 12px 14px;
  }

  body.account-page .topbar-brand {
    max-width: min(220px, calc(100vw - 150px));
  }

  body.account-page .brand-mark {
    width: 50px;
    height: 28px;
  }

  body.account-page .brand-stack strong {
    font-size: 14px;
  }

  body.account-page .brand-stack-expanded > span,
  body.account-page .nav-user-chip {
    display: none;
  }

  body.account-page .topbar-action-cluster {
    margin-left: 0;
  }

  body.account-page .nav-cta-combo,
  body.account-page .nav-primary-cta-solo {
    min-height: 42px;
  }

  body.account-page .nav-primary-cta {
    min-height: 42px;
    font-size: 14px;
  }

  body.account-page .shell.account-shell {
    width: min(100vw - 40px, 100%);
    padding: 12px 0 56px;
    gap: 24px;
  }

  body.account-page .account-center-hero {
    padding-top: 8px;
  }

  body.account-page .account-hero-copy h1 {
    max-width: none;
    font-size: clamp(46px, 14vw, 58px);
  }

  body.account-page .account-hero-note {
    padding-top: 0;
  }

  body.account-page .account-hero-note p {
    max-width: none;
    font-size: 17px;
  }

  body.account-page .account-process-panel,
  body.account-page .account-entry-panel,
  body.account-page .account-overview-shell,
  body.account-page .account-history-shell {
    padding: 24px 20px;
  }

  body.account-page .account-section-head h2 {
    font-size: 28px;
  }

  body.account-page .account-step-item {
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 12px;
    padding: 16px 0;
  }

  body.account-page .account-overview-grid {
    grid-template-columns: 1fr;
  }

  body.account-page .history-merged-card {
    padding: 20px;
  }

  body.account-page .history-merged-head h3 {
    font-size: 24px;
  }

  body.account-page .history-merged-grid {
    grid-template-columns: 1fr;
  }

body.account-page .nav-account-card {
    min-width: min(240px, calc(100vw - 40px));
  }
}

body.checkout-open {
  overflow: hidden;
}

body.store-page #qrModal {
  position: fixed;
  inset: 0;
  z-index: 120;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px 28px;
  background: rgba(28, 25, 21, 0.5);
  backdrop-filter: blur(24px) saturate(0.9);
  -webkit-backdrop-filter: blur(24px) saturate(0.9);
  opacity: 0;
  pointer-events: none;
  transition: opacity 220ms cubic-bezier(0.16, 1, 0.3, 1);
}

body.store-page #qrModal.show {
  opacity: 1;
  pointer-events: auto;
}

body.store-page #qrModal .checkout-layout {
  position: relative;
  width: min(1040px, calc(100vw - 56px));
  height: min(840px, calc(100vh - 48px));
  max-height: min(840px, calc(100vh - 48px));
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: auto auto minmax(0, 1fr);
  justify-items: stretch;
  gap: 0;
  padding: 0;
  overflow: hidden;
  border-radius: 34px;
  border: 1px solid rgba(234, 225, 211, 0.92);
  background: linear-gradient(180deg, rgba(255, 253, 249, 0.98) 0%, rgba(247, 241, 231, 0.97) 100%);
  backdrop-filter: blur(24px) saturate(1.04);
  -webkit-backdrop-filter: blur(24px) saturate(1.04);
  box-shadow:
    0 44px 132px rgba(0, 0, 0, 0.26),
    0 14px 42px rgba(197, 182, 156, 0.2),
    inset 0 1px 0 rgba(255, 255, 255, 0.88);
  opacity: 0;
  transform: translateY(16px) scale(0.985);
  transition:
    opacity 240ms cubic-bezier(0.16, 1, 0.3, 1),
    transform 240ms cubic-bezier(0.16, 1, 0.3, 1);
}

body.store-page #qrModal.show .checkout-layout {
  opacity: 1;
  transform: translateY(0) scale(1);
}

body.store-page #qrModal.is-user-checkout-page .checkout-layout {
  width: min(960px, calc(100vw - 40px));
  height: auto;
  max-height: min(780px, calc(100vh - 36px));
}

body.store-page #qrModal .checkout-stage-head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: start;
  gap: 20px;
  min-height: 112px;
  padding: 34px 38px 18px;
}

body.store-page #qrModal .checkout-back-btn {
  width: 52px;
  min-width: 52px;
  min-height: 52px;
  padding: 0;
  border-radius: 18px;
  border: 1px solid rgba(226, 216, 201, 0.9);
  background: rgba(255, 253, 248, 0.94);
  color: #171512;
  box-shadow:
    0 14px 34px rgba(214, 199, 173, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

body.store-page #qrModal .checkout-back-btn:hover {
  background: rgba(255, 255, 255, 0.98);
  border-color: rgba(215, 203, 184, 0.96);
}

body.store-page #qrModal .checkout-stage-copy {
  display: grid;
  gap: 8px;
  min-width: 0;
  padding-top: 2px;
}

body.store-page #qrModal .checkout-stage-kicker,
body.store-page #qrModal .checkout-card-kicker {
  font-family: var(--font-display-en);
  font-size: 12px;
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(77, 67, 52, 0.54);
}

body.store-page #qrModal .checkout-stage-title {
  font-size: clamp(36px, 4vw, 48px);
  line-height: 1.04;
  font-weight: 760;
  color: #151310;
}

body.store-page #qrModal .checkout-stage-desc {
  max-width: 34ch;
  font-size: 15.5px;
  line-height: 1.72;
  color: rgba(62, 49, 33, 0.64);
}

body.store-page #qrModal .checkout-head-meta {
  display: grid;
  gap: 12px;
  justify-items: end;
  min-width: auto;
}

body.store-page #qrModal .checkout-floating-status {
  position: absolute;
  top: 20px;
  right: 24px;
  z-index: 3;
}

body.store-page #qrModal.is-user-checkout-page .checkout-floating-status .checkout-status-pill {
  min-height: auto;
  padding: 5px 14px;
  border-radius: 20px;
  border: 1px solid #d8d0c4;
  background: #f0ebe2;
  font-size: 13px;
  font-weight: 600;
  color: #5a5040;
  box-shadow: none;
}

body.store-page #qrModal.is-user-checkout-page .checkout-floating-status .checkout-status-pill.state-signed-in {
  color: #4a8b57;
}

body.store-page #qrModal.is-user-checkout-page .checkout-stage-head {
  display: none;
}

body.store-page #qrModal.is-user-checkout-page .checkout-progress {
  display: none;
}

body.store-page #qrModal .checkout-head-badges {
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}

body.store-page #qrModal .checkout-contact-head-card {
  display: grid;
  gap: 10px;
  min-width: min(360px, 36vw);
  padding: 14px 16px;
  border-radius: 28px;
  border: 1px solid rgba(226, 215, 198, 0.9);
  background: rgba(255, 252, 247, 0.95);
  box-shadow:
    0 24px 52px rgba(219, 203, 175, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

body.store-page #qrModal .checkout-contact-head-label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

body.store-page #qrModal .checkout-contact-head-label > span {
  font-size: 13px;
  line-height: 1.4;
  color: rgba(68, 57, 42, 0.64);
}

body.store-page #qrModal .checkout-contact-head-body {
  display: flex;
  align-items: center;
  min-height: 56px;
}

body.store-page #qrModal .checkout-contact-head-card .meta {
  margin: 0;
  font-size: 13px;
  line-height: 1.6;
  color: rgba(72, 59, 43, 0.52);
}

body.store-page #qrModal .checkout-contact-pill {
  min-height: 28px;
  padding: 0 11px;
  border-radius: 999px;
  border: 1px solid rgba(44, 36, 26, 0.08);
  background: rgba(255, 255, 255, 0.64);
  color: rgba(17, 16, 13, 0.72);
  font-size: 12px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
}

body.store-page #qrModal .checkout-contact-pill.is-signed-in {
  border-color: rgba(47, 126, 83, 0.16);
  background: rgba(47, 126, 83, 0.1);
  color: #2f7e53;
}

body.store-page #qrModal .checkout-contact-head-card.is-signed-in-contact {
  min-width: 0;
  padding: 0;
  border-color: transparent;
  background: transparent;
  box-shadow: none;
}

body.store-page #qrModal .checkout-contact-head-card.is-signed-in-contact .checkout-contact-head-label,
body.store-page #qrModal .checkout-contact-head-card.is-signed-in-contact #checkoutContactHint {
  display: none;
}

body.store-page #qrModal #checkoutContactInput[hidden],
body.store-page #qrModal #checkoutContactHint[hidden],
body.store-page #qrModal .checkout-contact-pill[hidden] {
  display: none !important;
}

body.store-page #qrModal .checkout-head-status {
  display: flex;
  justify-content: flex-end;
}

body.store-page #qrModal .checkout-progress {
  display: flex;
  justify-content: flex-end;
}

body.store-page #qrModal .checkout-progress-track {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

body.store-page #qrModal .checkout-progress-node {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 12px;
  height: 12px;
  border-radius: 999px;
  background: rgba(198, 182, 159, 0.34);
  transition:
    background-color 220ms cubic-bezier(0.16, 1, 0.3, 1),
    transform 220ms cubic-bezier(0.16, 1, 0.3, 1),
    box-shadow 220ms cubic-bezier(0.16, 1, 0.3, 1);
}

body.store-page #qrModal .checkout-progress-node::after {
  content: "";
  position: absolute;
  inset: -5px;
  border-radius: 999px;
  background: rgba(182, 139, 86, 0.16);
  opacity: 0;
  transform: scale(0.72);
}

body.store-page #qrModal .checkout-progress-node-dot {
  width: 5px;
  height: 5px;
  border-radius: 999px;
  background: rgba(132, 111, 83, 0.52);
}

body.store-page #qrModal .checkout-progress-node.is-active {
  background: rgba(182, 139, 86, 0.18);
  box-shadow: 0 0 0 4px rgba(182, 139, 86, 0.08);
  transform: scale(1.08);
  animation: checkoutProgressBreath 1.8s ease-in-out infinite;
}

body.store-page #qrModal .checkout-progress-node.is-active::after {
  animation: checkoutProgressHalo 1.8s ease-out infinite;
}

body.store-page #qrModal .checkout-progress-node.is-active .checkout-progress-node-dot {
  background: #8d6438;
}

body.store-page #qrModal .checkout-progress-node.is-complete .checkout-progress-node-dot {
  background: #519765;
}

body.store-page #qrModal .checkout-progress-node.is-complete {
  background: rgba(81, 151, 101, 0.18);
  box-shadow: 0 0 0 3px rgba(81, 151, 101, 0.08);
}

body.store-page #qrModal .checkout-progress-segment {
  width: 24px;
  height: 2px;
  border-radius: 999px;
  background: rgba(198, 182, 159, 0.28);
}

body.store-page #qrModal .checkout-progress-segment.is-complete {
  background: rgba(81, 151, 101, 0.42);
}

body.store-page #qrModal .checkout-inline-notice {
  margin: 0 24px 10px;
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 13px 15px;
  border-radius: 18px;
  border: 1px solid rgba(122, 84, 64, 0.12);
  background: rgba(122, 84, 64, 0.08);
  color: #5f4638;
}

body.store-page #qrModal .checkout-inline-notice.tone-expired {
  border-color: rgba(161, 128, 78, 0.14);
  background: rgba(161, 128, 78, 0.08);
  color: #775d3f;
}

body.store-page #qrModal .checkout-inline-notice-icon {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  border: 1px solid currentColor;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 700;
  flex: 0 0 auto;
}

body.store-page #qrModal .checkout-inline-notice-copy {
  display: grid;
  gap: 4px;
}

body.store-page #qrModal .checkout-inline-notice-copy strong {
  color: inherit;
  font-size: 14px;
}

body.store-page #qrModal .checkout-inline-notice-copy p {
  color: inherit;
  font-size: 13px;
  line-height: 1.6;
  opacity: 0.88;
}

body.store-page #qrModal .checkout-sheet-body {
  min-height: 0;
  padding: 8px 38px 34px;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) 402px;
  gap: 28px;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  scrollbar-width: thin;
  scrollbar-color: rgba(44, 36, 26, 0.18) transparent;
}

body.store-page #qrModal.is-user-checkout-page .checkout-sheet-body {
  padding: 34px 36px 32px;
  grid-template-columns: minmax(0, 1fr) 392px;
  gap: 44px;
}

body.store-page #qrModal .checkout-main-column,
body.store-page #qrModal .checkout-side-column {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: 14px;
}

body.store-page #qrModal.is-user-checkout-page .checkout-main-column,
body.store-page #qrModal.is-user-checkout-page .checkout-side-column {
  gap: 0;
}

body.store-page #qrModal.is-user-checkout-page .summary-box {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

body.store-page #qrModal .qr,
body.store-page #qrModal .checkout-delivery {
  display: grid;
  gap: 12px;
}

body.store-page #qrModal .checkout-user-page-left {
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding-top: 2px;
}

body.store-page #qrModal .checkout-user-payment-label {
  margin-bottom: 6px;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #8a7e6e;
}

body.store-page #qrModal .checkout-user-title-row {
  display: flex;
  align-items: center;
  gap: 12px;
}

body.store-page #qrModal .checkout-user-back-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #3a2e1e;
  box-shadow: none;
  cursor: pointer;
  flex-shrink: 0;
  transition: opacity 140ms ease;
}

body.store-page #qrModal .checkout-user-back-btn svg {
  width: 16px;
  height: 16px;
}

body.store-page #qrModal .checkout-user-back-btn:hover {
  opacity: 0.6;
}

body.store-page #qrModal .checkout-user-page-title {
  font-size: 28px;
  line-height: 1.14;
  font-weight: 700;
  color: #2a2010;
  letter-spacing: -0.5px;
}

body.store-page #qrModal .checkout-user-subtitle {
  margin: 0;
  max-width: 30ch;
  font-size: 14px;
  line-height: 1.7;
  color: #7a6e5e;
}

body.store-page #qrModal .delivery-expiry-banner[data-checkout-payment-countdown],
body.store-page #qrModal .delivery-expiry-inline[data-checkout-payment-countdown] {
  display: flex;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  min-height: 48px;
  padding: 10px 16px;
  border-radius: 18px;
  border-color: rgba(178, 119, 88, 0.16);
  background: rgba(178, 119, 88, 0.08);
  color: #6d5a4b;
}

body.store-page #qrModal .delivery-expiry-banner[data-checkout-payment-countdown].is-expired,
body.store-page #qrModal .delivery-expiry-inline[data-checkout-payment-countdown].is-expired {
  border-color: rgba(197, 79, 61, 0.18);
  background: rgba(197, 79, 61, 0.08);
  color: #7e4c42;
}

body.store-page #qrModal .checkout-expired-overlay {
  position: absolute;
  inset: 0;
  z-index: 18;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 32px;
  background: rgba(243, 235, 224, 0.16);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

body.store-page #qrModal .checkout-expired-dialog {
  width: min(420px, 100%);
  display: grid;
  gap: 14px;
  padding: 28px;
  border-radius: 28px;
  border: 1px solid rgba(226, 215, 198, 0.88);
  background: rgba(255, 252, 247, 0.96);
  box-shadow:
    0 26px 56px rgba(54, 37, 23, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.92);
  color: #171410;
}

body.store-page #qrModal .checkout-expired-kicker {
  font-size: 11px;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #8a7e6e;
}

body.store-page #qrModal .checkout-expired-dialog h3 {
  margin: 0;
  font-size: 28px;
  line-height: 1.12;
  color: #1e1914;
}

body.store-page #qrModal .checkout-expired-dialog p {
  margin: 0;
  font-size: 14px;
  line-height: 1.7;
  color: #6d6255;
}

body.store-page #qrModal .checkout-expired-dialog button {
  min-height: 46px;
  border-radius: 12px;
  border: 0;
  background: #171410;
  color: #f7f3ea;
  font-size: 14px;
  font-weight: 600;
}

body.store-page #qrModal .checkout-expired-dialog button:hover {
  background: #26211b;
}

body.store-page #qrModal .checkout-user-info-box {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 18px 20px;
  border-radius: 14px;
  background: #ece7de;
  border-left: 3px solid transparent;
  transition: background 200ms ease;
}

body.store-page #qrModal .checkout-user-info-box.is-ready {
  background: #dceee0;
  border-left-color: #4a9e5c;
}

body.store-page #qrModal .checkout-user-info-box.is-ready .checkout-user-avatar {
  background: #b8d9bf;
  color: #1e5c2c;
}

body.store-page #qrModal .checkout-user-info-box.is-ready .checkout-user-info-title {
  color: #1a4d24;
}

body.store-page #qrModal .checkout-user-info-box.is-invalid {
  background: #f5e8db;
  border-left-color: #d4722a;
}

body.store-page #qrModal .checkout-user-info-box.is-invalid .checkout-user-avatar {
  background: #e8c49a;
  color: #8a3e10;
}

body.store-page #qrModal .checkout-user-info-box.is-invalid .checkout-user-info-title {
  color: #7a3010;
}

body.store-page #qrModal .checkout-user-info-box.is-invalid[data-error-kind=conflict] {
  background: #f5e4e0;
  border-left-color: #c43c2a;
}

body.store-page #qrModal .checkout-user-info-box.is-invalid[data-error-kind=conflict] .checkout-user-avatar {
  background: #e8a89a;
  color: #7a1a10;
}

body.store-page #qrModal .checkout-user-avatar {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  border-radius: 10px;
  background: #d8d0c4;
  color: #7a6e5e;
}

body.store-page #qrModal .checkout-user-avatar svg {
  width: 20px;
  height: 20px;
}

body.store-page #qrModal .checkout-user-avatar.is-loading {
  background: #d8d0c4;
}

body.store-page #qrModal .checkout-user-spinner {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 2px solid rgba(122, 110, 94, 0.22);
  border-top-color: #7a6e5e;
  animation: checkoutSpinSvg 0.9s linear infinite;
}

body.store-page #qrModal .checkout-user-info-title {
  margin-bottom: 4px;
  font-size: 14px;
  font-weight: 600;
  color: #2a2010;
}

body.store-page #qrModal .checkout-user-info-desc {
  font-size: 13px;
  line-height: 1.6;
  color: #7a6e5e;
}

body.store-page #qrModal .checkout-user-contact-card,
body.store-page #qrModal .checkout-user-summary-shell {
  display: flex;
  flex-direction: column;
}

body.store-page #qrModal .checkout-user-contact-card.is-ready .checkout-user-section-title {
  color: #274f33;
}

body.store-page #qrModal .checkout-user-contact-card.is-invalid .checkout-user-section-title {
  color: #8a5641;
}

body.store-page #qrModal .checkout-user-section-label {
  margin-bottom: 6px;
  font-size: 11px;
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #8a7e6e;
}

body.store-page #qrModal .checkout-user-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

body.store-page #qrModal .checkout-user-section-title,
body.store-page #qrModal .checkout-user-summary-title {
  margin-bottom: 16px;
  font-size: 17px;
  line-height: 1.2;
  font-weight: 700;
  color: #2a2010;
}

body.store-page #qrModal .checkout-user-input {
  width: 100%;
  min-height: 46px;
  margin-bottom: 6px;
  padding: 12px 14px;
  border: 1px solid #ddd7cc;
  border-radius: 10px;
  background: #ffffff;
  color: #2a2010;
  outline: none;
  font-size: 14px;
  font-family: inherit;
  box-shadow: none;
}

body.store-page #qrModal .checkout-user-contact-card.is-ready .checkout-user-input {
  border-color: #c9d7c8;
  background: #fcfdfb;
}

body.store-page #qrModal .checkout-user-contact-card.is-invalid .checkout-user-input,
body.store-page #qrModal .checkout-user-input.is-invalid {
  border-color: #d4b4a4;
  background: #fffaf7;
}

body.store-page #qrModal .checkout-user-input::placeholder {
  color: #b0a898;
}

body.store-page #qrModal .checkout-user-input.is-account-display {
  font-weight: 500;
}

body.store-page #qrModal .checkout-user-input:focus {
  border-color: #cfc6b8;
  box-shadow: 0 0 0 3px rgba(216, 208, 196, 0.24);
}

body.store-page #qrModal .checkout-user-contact-card.is-locked-contact .checkout-user-input {
  border-color: #d8d0c4;
  background: #f7f5ef;
  color: #5a5040;
}

body.store-page #qrModal .checkout-user-input-hint {
  margin-bottom: 24px;
  font-size: 12px;
  line-height: 1.5;
  color: #9a8e7e;
}

body.store-page #qrModal .checkout-user-divider {
  margin: 0 0 16px;
  border: 0;
  border-top: 1px solid #ddd7cc;
}

body.store-page #qrModal .checkout-user-summary-list {
  display: flex;
  flex-direction: column;
}

body.store-page #qrModal .checkout-user-summary-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
  padding: 0 0 10px;
  margin-bottom: 10px;
  font-size: 13.5px;
  color: #5a5040;
}

body.store-page #qrModal .checkout-user-summary-row.is-underlined {
  border-bottom: 1px solid #ddd7cc;
}

body.store-page #qrModal .checkout-user-summary-val {
  max-width: 60%;
  text-align: right;
  font-weight: 500;
  color: #2a2010;
}

body.store-page #qrModal .checkout-user-summary-val.has-tools {
  display: flex;
  justify-content: flex-end;
  max-width: 68%;
}

body.store-page #qrModal .checkout-user-summary-val.has-tools .summary-inline-tools {
  justify-content: flex-end;
}

body.store-page #qrModal .checkout-user-summary-val.state-ready {
  color: #3e8052;
  font-weight: 600;
}

body.store-page #qrModal .checkout-user-summary-val.state-invalid,
body.store-page #qrModal .checkout-user-summary-val.state-idle {
  color: #8a7e6e;
}

body.store-page #qrModal .checkout-user-summary-product {
  max-width: 60%;
  text-align: right;
  font-size: 13px;
  font-weight: 600;
  color: #2a2010;
}

body.store-page #qrModal .checkout-user-empty-value {
  color: #b0a898;
}

body.store-page #qrModal .checkout-user-price-box {
  margin: 8px 0 16px;
  padding: 14px 16px;
  border-radius: 10px;
  background: #ece7de;
}

body.store-page #qrModal .checkout-user-price-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
  font-size: 13px;
  color: #5a5040;
}

body.store-page #qrModal .checkout-user-price-row:last-child {
  margin-bottom: 0;
}

body.store-page #qrModal .checkout-user-price-sep {
  margin: 10px 0;
  border: 0;
  border-top: 1px solid #ddd7cc;
}

body.store-page #qrModal .checkout-user-total-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 4px;
  font-size: 16px;
  font-weight: 700;
  color: #2a2010;
}

body.store-page #qrModal .checkout-user-total-amount {
  font-size: 20px;
}

body.store-page #qrModal .checkout-user-cta {
  width: 100%;
  min-height: 55px;
  margin-bottom: 10px;
  border: 0;
  border-radius: 12px;
  background: #1a1510;
  color: #f5f2ec;
  font-size: 15px;
  font-weight: 600;
  font-family: inherit;
  cursor: pointer;
  box-shadow: none;
}

body.store-page #qrModal .checkout-user-cta:hover {
  background: #221c15;
}

body.store-page #qrModal .checkout-user-secure-note {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  font-size: 12px;
  color: #9a8e7e;
}

body.store-page #qrModal .checkout-user-secure-note svg {
  width: 13px;
  height: 13px;
}

body.store-page #qrModal .checkout-contact-pill.is-ready {
  border-color: rgba(63, 127, 81, 0.16);
  background: rgba(63, 127, 81, 0.1);
  color: #3f7f51;
}

body.store-page #qrModal .checkout-contact-pill.is-invalid {
  border-color: rgba(143, 90, 67, 0.16);
  background: rgba(143, 90, 67, 0.08);
  color: #8f5a43;
}

body.store-page #qrModal .checkout-surface {
  width: 100%;
  display: grid;
  gap: 16px;
  padding: 24px;
  border-radius: 24px;
}

body.store-page #qrModal .checkout-confirm-intro {
  min-height: clamp(268px, 34vh, 312px);
  display: grid;
  align-content: center;
  justify-items: center;
  gap: 20px;
  padding: 30px 22px;
}

body.store-page #qrModal .checkout-confirm-divider {
  width: min(100%, 320px);
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(17, 16, 13, 0.12) 18%,
    rgba(17, 16, 13, 0.22) 50%,
    rgba(17, 16, 13, 0.12) 82%,
    transparent 100%
  );
}

body.store-page #qrModal .checkout-confirm-intro-copy {
  display: grid;
  gap: 12px;
  justify-items: center;
  text-align: center;
}

body.store-page #qrModal .checkout-confirm-intro-title {
  font-size: clamp(28px, 3vw, 36px);
  line-height: 1.12;
  font-weight: 720;
  color: #151310;
  letter-spacing: 0;
}

body.store-page #qrModal .checkout-confirm-intro-note {
  max-width: 28ch;
  margin: 0;
  font-size: 15px;
  line-height: 1.72;
  color: rgba(72, 59, 43, 0.52);
}

body.store-page #qrModal .checkout-surface-confirm,
body.store-page #qrModal .checkout-surface-state {
  min-height: clamp(268px, 34vh, 312px);
  background: linear-gradient(180deg, #181611 0%, #11100d 100%);
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: #f7f3ea;
  box-shadow:
    0 24px 60px rgba(17, 16, 13, 0.2),
    inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

body.store-page #qrModal .checkout-surface-confirm {
  align-content: start;
}

body.store-page #qrModal .checkout-surface-state {
  justify-items: center;
  align-content: center;
  text-align: center;
}

body.store-page #qrModal .checkout-surface-visual {
  min-height: auto;
  display: grid;
  place-items: center;
  align-self: start;
}

body.store-page #qrModal .checkout-confirm-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

body.store-page #qrModal .checkout-method-chip {
  min-height: 30px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.06);
  color: rgba(247, 243, 234, 0.8);
  font-size: 12px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
}

body.store-page #qrModal .checkout-confirm-amount {
  margin-top: 0;
}

body.store-page #qrModal .checkout-confirm-product {
  font-size: 14px;
  line-height: 1.66;
  color: rgba(247, 243, 234, 0.7);
}

body.store-page #qrModal .checkout-compact-group {
  display: grid;
  gap: 0;
  padding: 4px 14px;
  border-radius: 18px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.06);
}

body.store-page #qrModal .checkout-compact-row {
  min-height: 40px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
}

body.store-page #qrModal .checkout-compact-row + .checkout-compact-row {
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

body.store-page #qrModal .checkout-compact-row span {
  font-size: 13px;
  color: rgba(247, 243, 234, 0.62);
}

body.store-page #qrModal .checkout-compact-row strong {
  font-size: 12.5px;
  font-weight: 600;
  color: #f7f3ea;
  text-align: right;
}

body.store-page #qrModal .checkout-surface-copy.is-centered {
  display: grid;
  gap: 8px;
  justify-items: center;
}

body.store-page #qrModal .checkout-surface-copy h4 {
  font-size: 22px;
  line-height: 1.14;
  color: inherit;
}

body.store-page #qrModal .checkout-surface-copy p {
  max-width: 34ch;
  font-size: 13.5px;
  line-height: 1.62;
  color: rgba(247, 243, 234, 0.68);
}

body.store-page #qrModal .checkout-success-total,
body.store-page #qrModal .checkout-subtle-callout {
  width: min(100%, 300px);
  min-height: 46px;
  padding: 11px 15px;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.07);
}

body.store-page #qrModal .checkout-success-total {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  text-align: left;
}

body.store-page #qrModal .checkout-success-total span {
  font-size: 13px;
  color: rgba(247, 243, 234, 0.62);
}

body.store-page #qrModal .checkout-success-total strong {
  color: #f7f3ea;
}

body.store-page #qrModal .checkout-subtle-callout {
  font-size: 13px;
  line-height: 1.6;
  color: rgba(247, 243, 234, 0.76);
}

body.store-page #qrModal .checkout-surface-qr {
  padding: 20px;
  border-radius: 24px;
  border: 1px solid rgba(44, 36, 26, 0.08);
  background: rgba(255, 255, 255, 0.54);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.62),
    0 18px 42px rgba(17, 16, 13, 0.08);
}

body.store-page #qrModal .checkout-qr-shell {
  display: grid;
  gap: 12px;
  justify-items: center;
}

body.store-page #qrModal .checkout-qr-summary {
  width: 100%;
  min-height: 40px;
  padding: 0 14px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.68);
  border: 1px solid rgba(44, 36, 26, 0.06);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

body.store-page #qrModal .checkout-qr-summary span,
body.store-page #qrModal .checkout-qr-item {
  color: rgba(17, 16, 13, 0.58);
}

body.store-page #qrModal .checkout-qr-item {
  width: 100%;
  font-size: 12.5px;
  line-height: 1.56;
  text-align: center;
}

body.store-page #qrModal .checkout-qr-card {
  position: relative;
  width: min(100%, clamp(220px, 31vh, 292px));
  padding: 20px;
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.88);
  border: 1px solid rgba(44, 36, 26, 0.06);
  box-shadow: 0 16px 38px rgba(17, 16, 13, 0.08);
}

body.store-page #qrModal .checkout-qr-image {
  display: block;
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: contain;
}

body.store-page #qrModal .checkout-qr-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  border-radius: inherit;
  background: rgba(244, 239, 228, 0.84);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  display: grid;
  place-content: center;
  gap: 8px;
  text-align: center;
  color: #5f4638;
}

body.store-page #qrModal .checkout-qr-overlay .checkout-motion {
  width: 72px;
  height: 72px;
  color: #8b6c4e;
}

body.store-page #qrModal .checkout-qr-copy {
  display: grid;
  gap: 6px;
  justify-items: center;
  text-align: center;
}

body.store-page #qrModal .checkout-qr-copy h4 {
  font-size: 16px;
  line-height: 1.36;
  color: #11100d;
}

body.store-page #qrModal .checkout-qr-copy p {
  max-width: 34ch;
  font-size: 13px;
  line-height: 1.58;
  color: rgba(17, 16, 13, 0.58);
}

body.store-page #qrModal .checkout-wait-strip {
  min-height: 36px;
  padding: 0 13px;
  border-radius: 999px;
  border: 1px solid rgba(44, 36, 26, 0.08);
  background: rgba(255, 255, 255, 0.5);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  color: rgba(17, 16, 13, 0.66);
  font-size: 12.5px;
}

body.store-page #qrModal .checkout-wait-dot {
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: currentColor;
  animation: checkoutPulseSoft 1.8s ease-in-out infinite;
}

body.store-page #qrModal .checkout-motion {
  width: 88px;
  height: 88px;
  display: grid;
  place-items: center;
  color: rgba(247, 243, 234, 0.96);
  transform: scale(0.96);
  animation: checkoutMotionEnter 220ms cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

body.store-page #qrModal .checkout-motion svg {
  width: 100%;
  height: 100%;
}

body.store-page #qrModal .checkout-motion-loading svg,
body.store-page #qrModal .checkout-motion-success svg,
body.store-page #qrModal .checkout-motion-failed svg,
body.store-page #qrModal .checkout-motion-expired svg {
  width: 56px;
  height: 56px;
}

body.store-page #qrModal .checkout-motion-idle svg {
  width: 68px;
  height: 68px;
}

body.store-page #qrModal .checkout-success-stack {
  position: relative;
  width: 100%;
  height: 100%;
  display: grid;
  place-items: center;
}

body.store-page #qrModal .checkout-success-spinner-shell,
body.store-page #qrModal .checkout-success-svg {
  position: absolute;
  inset: 0;
  margin: auto;
}

body.store-page #qrModal .checkout-success-spinner-shell {
  animation: checkoutSpinnerFade 260ms cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

body.store-page #qrModal .checkout-success-svg {
  opacity: 0;
  transform: scale(0.96);
  animation: checkoutSuccessReveal 420ms cubic-bezier(0.16, 1, 0.3, 1) forwards 140ms;
}

body.store-page #qrModal .checkout-motion-track,
body.store-page #qrModal .checkout-motion-spinner,
body.store-page #qrModal .checkout-success-ring,
body.store-page #qrModal .checkout-success-check,
body.store-page #qrModal .checkout-motion-failed circle,
body.store-page #qrModal .checkout-motion-failed path,
body.store-page #qrModal .checkout-motion-expired circle,
body.store-page #qrModal .checkout-motion-expired path,
body.store-page #qrModal .checkout-idle-line {
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body.store-page #qrModal .checkout-motion-track {
  stroke: rgba(247, 243, 234, 0.12);
  stroke-width: 1.8;
}

body.store-page #qrModal .checkout-motion-spinner {
  stroke: rgba(247, 243, 234, 0.96);
  stroke-width: 1.9;
  stroke-dasharray: 44 140;
  stroke-dashoffset: 4;
  transform-origin: 50% 50%;
  animation:
    checkoutSpinSvg 0.85s linear infinite,
    checkoutSpinnerDash 1.05s cubic-bezier(.45,0,.55,1) infinite;
}

body.store-page #qrModal .checkout-motion-loading {
  animation:
    checkoutMotionEnter 220ms cubic-bezier(0.16, 1, 0.3, 1) forwards,
    checkoutLoadingBreathe 2.2s ease-in-out infinite 220ms;
}

body.store-page #qrModal .checkout-motion-loading svg {
  filter: drop-shadow(0 0 0 rgba(199, 97, 63, 0));
  animation: checkoutLoadingGlow 2.2s ease-in-out infinite 220ms;
}

body.store-page #qrModal .checkout-success-ring {
  stroke: rgba(247, 243, 234, 0.42);
  stroke-width: 2.2;
  stroke-dasharray: 152;
  stroke-dashoffset: 152;
  animation: checkoutDrawRing 0.44s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

body.store-page #qrModal .checkout-success-check {
  stroke: #f7f3ea;
  stroke-width: 2.35;
  stroke-dasharray: 34;
  stroke-dashoffset: 34;
  animation: checkoutDrawCheck 0.36s cubic-bezier(0.16, 1, 0.3, 1) forwards 0.26s;
}

body.store-page #qrModal .checkout-motion-failed circle,
body.store-page #qrModal .checkout-motion-failed path {
  stroke: #c29d86;
  stroke-width: 2.2;
}

body.store-page #qrModal .checkout-motion-expired circle,
body.store-page #qrModal .checkout-motion-expired path {
  stroke: #c7a576;
  stroke-width: 2.2;
}

body.store-page #qrModal .checkout-idle-back {
  fill: rgba(247, 243, 234, 0.36);
}

body.store-page #qrModal .checkout-idle-front {
  fill: rgba(247, 243, 234, 0.94);
}

body.store-page #qrModal .checkout-idle-line {
  stroke: #11100d;
  stroke-width: 3;
}

body.store-page #qrModal .checkout-money {
  display: inline-flex;
  align-items: baseline;
  gap: 6px;
  color: inherit;
}

body.store-page #qrModal .checkout-money-symbol {
  font-size: 16px;
  font-weight: 600;
}

body.store-page #qrModal .checkout-money-value {
  font-size: 26px;
  font-weight: 720;
  letter-spacing: 0;
}

body.store-page #qrModal .checkout-money.is-hero .checkout-money-symbol {
  font-size: 18px;
}

body.store-page #qrModal .checkout-money.is-hero .checkout-money-value {
  font-size: 40px;
  line-height: 1;
}

body.store-page #qrModal .summary-box,
body.store-page #qrModal .checkout-card,
body.store-page #qrModal .checkout-delivery-panel {
  border-radius: 30px;
  border: 1px solid rgba(226, 215, 198, 0.88);
  background: rgba(255, 252, 247, 0.96);
  box-shadow:
    0 26px 56px rgba(221, 205, 178, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.92);
}

body.store-page #qrModal .summary-box,
body.store-page #qrModal .checkout-card {
  padding: 22px;
}

body.store-page #qrModal .checkout-card-head,
body.store-page #qrModal .checkout-delivery-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

body.store-page #qrModal .checkout-card-head {
  margin-bottom: 16px;
}

body.store-page #qrModal .checkout-card-head h4,
body.store-page #qrModal .checkout-delivery-head h4 {
  margin-top: 6px;
  font-size: 18px;
  line-height: 1.2;
  color: #171410;
}

body.store-page #qrModal .checkout-delivery-head p,
body.store-page #qrModal .checkout-delivery-empty p {
  margin-top: 6px;
  font-size: 13px;
  line-height: 1.62;
  color: rgba(17, 16, 13, 0.58);
}

body.store-page #qrModal .checkout-status-pill {
  min-height: 28px;
  padding: 0 13px;
  border-radius: 999px;
  border: 1px solid rgba(221, 210, 193, 0.82);
  background: rgba(255, 250, 243, 0.95);
  color: rgba(69, 57, 42, 0.82);
  font-size: 12px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
}

body.store-page #qrModal .checkout-status-pill.is-compact {
  min-height: 26px;
  padding: 0 10px;
}

body.store-page #qrModal .checkout-status-pill.state-signed-in {
  border-color: rgba(78, 151, 102, 0.16);
  background: rgba(78, 151, 102, 0.1);
  color: #3d8958;
}

body.store-page #qrModal .checkout-status-pill.state-guest {
  border-color: rgba(179, 120, 55, 0.16);
  background: rgba(203, 166, 112, 0.18);
  color: #aa6d32;
}

body.store-page #qrModal .checkout-status-pill.state-contact-ready {
  border-color: #d8d0c4;
  background: #f0ebe2;
  color: #5a5040;
}

body.store-page #qrModal .checkout-status-pill.state-paid_success,
body.store-page #qrModal .checkout-status-pill.state-delivery_ready {
  border-color: rgba(44, 36, 26, 0.08);
  background: rgba(17, 16, 13, 0.08);
  color: #3a332a;
}

body.store-page #qrModal .checkout-status-pill.state-failed,
body.store-page #qrModal .checkout-status-pill.state-expired {
  border-color: rgba(122, 84, 64, 0.14);
  background: rgba(122, 84, 64, 0.08);
  color: #7a5b4b;
}

body.store-page #qrModal .checkout-summary-groups {
  display: grid;
  gap: 12px;
}

body.store-page #qrModal .checkout-summary-shell {
  display: grid;
  gap: 14px;
}

body.store-page #qrModal .checkout-summary-group {
  display: grid;
  gap: 0;
  padding: 4px 18px;
  border-radius: 22px;
  border: 1px solid rgba(229, 218, 202, 0.86);
  background: linear-gradient(180deg, rgba(249, 245, 238, 0.98) 0%, rgba(246, 240, 231, 0.98) 100%);
}

body.store-page #qrModal .summary-line {
  min-height: 46px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
}

body.store-page #qrModal .summary-line + .summary-line {
  border-top: 1px solid rgba(44, 36, 26, 0.08);
}

body.store-page #qrModal .summary-line > span {
  color: rgba(76, 64, 48, 0.6);
  font-size: 13.5px;
}

body.store-page #qrModal .summary-value {
  justify-self: end;
  max-width: min(100%, 280px);
  text-align: right;
  color: #11100d;
  overflow-wrap: anywhere;
}

body.store-page #qrModal .summary-value strong {
  font-size: 15px;
  font-weight: 620;
  color: #171410;
  line-height: 1.5;
}

body.store-page #qrModal .checkout-summary-status {
  font-size: 13px;
  font-weight: 620;
  color: #11100d;
}

body.store-page #qrModal .checkout-summary-status.state-paid_success,
body.store-page #qrModal .checkout-summary-status.state-delivery_ready {
  color: #40392f;
}

body.store-page #qrModal .checkout-summary-status.state-failed,
body.store-page #qrModal .checkout-summary-status.state-expired {
  color: #7a5b4b;
}

body.store-page #qrModal .summary-inline-tools {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
  max-width: 100%;
}

body.store-page #qrModal .checkout-mono {
  display: inline-block;
  padding: 6px 8px;
  border-radius: 10px;
  background: rgba(17, 16, 13, 0.045);
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
  font-size: 12px;
  line-height: 1.4;
  color: #3a332a;
}

body.store-page #qrModal .summary-empty {
  color: rgba(17, 16, 13, 0.42);
}

body.store-page #qrModal .checkout-summary-total {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 84px;
  padding: 16px 20px;
  border-radius: 22px;
  border: 1px solid rgba(223, 210, 190, 0.92);
  background: linear-gradient(180deg, #f3ede3 0%, #e8ded0 100%);
  color: #141413;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.5);
}

body.store-page #qrModal .checkout-summary-total > span {
  font-size: 14px;
  color: rgba(20, 20, 19, 0.62);
}

body.store-page #qrModal .checkout-summary-total strong {
  color: inherit;
}

body.store-page #qrModal .checkout-summary-total .checkout-money.is-hero .checkout-money-symbol {
  font-size: 18px;
}

body.store-page #qrModal .checkout-summary-total .checkout-money.is-hero .checkout-money-value {
  font-size: 44px;
}

body.store-page #qrModal .checkout-summary-actions {
  display: grid;
  padding-top: 2px;
}

body.store-page #qrModal .checkout-summary-primary {
  width: 100%;
}

body.store-page #qrModal .checkout-contact-card {
  display: grid;
  gap: 10px;
  align-content: start;
}

body.store-page #qrModal .checkout-contact-card.is-locked-contact {
  background: rgba(241, 232, 216, 0.78);
}

body.store-page #qrModal #checkoutContactInput {
  width: 100%;
  min-height: 56px;
  padding: 0 18px;
  border-radius: 18px;
  border: 1px solid rgba(223, 213, 197, 0.9);
  background: rgba(255, 253, 249, 0.98);
  color: #171410;
  font-size: 15px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.86);
}

body.store-page #qrModal #checkoutContactInput::placeholder {
  color: rgba(103, 90, 73, 0.54);
}

body.store-page #qrModal #checkoutContactInput.is-account-display {
  font-weight: 600;
  color: #2d251c;
}

body.store-page #qrModal #checkoutContactInput:focus {
  border-color: rgba(171, 146, 107, 0.32);
  box-shadow: 0 0 0 4px rgba(171, 146, 107, 0.08);
}

body.store-page #qrModal.is-user-checkout-page #checkoutContactInput.checkout-user-input {
  min-height: 46px;
  padding: 12px 14px;
  border: 1px solid #ddd7cc;
  border-radius: 10px;
  background: #ffffff;
  color: #2a2010;
  font-size: 14px;
  box-shadow: none;
}

body.store-page #qrModal.is-user-checkout-page #checkoutContactInput.checkout-user-input::placeholder {
  color: #b0a898;
}

body.store-page #qrModal.is-user-checkout-page #checkoutContactInput.checkout-user-input.is-account-display {
  font-weight: 500;
  color: #2a2010;
}

body.store-page #qrModal.is-user-checkout-page #checkoutContactInput.checkout-user-input:focus {
  border-color: #cfc6b8;
  box-shadow: 0 0 0 3px rgba(216, 208, 196, 0.24);
}

body.store-page #qrModal .checkout-actions {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: auto auto minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  min-height: 78px;
  padding: 12px 24px calc(12px + env(safe-area-inset-bottom));
  border-top: 1px solid rgba(44, 36, 26, 0.08);
  background: rgba(247, 243, 234, 0.72);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}

body.store-page #qrModal .checkout-actions > * {
  min-width: 0;
}

body.store-page #qrModal #checkoutAuxBtn[hidden] {
  display: none !important;
}

body.store-page #qrModal #checkoutAuxBtn {
  grid-column: 1;
  min-width: 126px;
}

body.store-page #qrModal #closeQrBtn {
  grid-column: 2;
  min-width: 92px;
}

body.store-page #qrModal #confirmOrderBtn {
  grid-column: 3;
  width: 100%;
}

body.store-page #qrModal .checkout-actions button,
body.store-page #qrModal .checkout-copy-btn,
body.store-page #qrModal .checkout-link-btn {
  min-height: 46px;
  border-radius: 15px;
  transition:
    background-color 220ms cubic-bezier(0.16, 1, 0.3, 1),
    border-color 220ms cubic-bezier(0.16, 1, 0.3, 1),
    color 220ms cubic-bezier(0.16, 1, 0.3, 1),
    transform 220ms cubic-bezier(0.16, 1, 0.3, 1),
    opacity 220ms cubic-bezier(0.16, 1, 0.3, 1),
    box-shadow 220ms cubic-bezier(0.16, 1, 0.3, 1);
}

body.store-page #qrModal .checkout-actions button:hover,
body.store-page #qrModal .checkout-copy-btn:hover,
body.store-page #qrModal .checkout-link-btn:hover {
  transform: translateY(-1px);
}

body.store-page #qrModal .checkout-actions button:active,
body.store-page #qrModal .checkout-copy-btn:active,
body.store-page #qrModal .checkout-link-btn:active {
  transform: scale(0.985);
}

body.store-page #qrModal .checkout-actions button:disabled,
body.store-page #qrModal .checkout-copy-btn:disabled {
  opacity: 0.62;
  cursor: not-allowed;
  transform: none;
}

body.store-page #qrModal .checkout-actions .ghost {
  background: rgba(255, 255, 255, 0.64);
  border: 1px solid rgba(44, 36, 26, 0.08);
  color: #11100d;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.65);
}

body.store-page #qrModal .checkout-actions .ghost:hover {
  background: rgba(255, 255, 255, 0.88);
}

body.store-page #qrModal #confirmOrderBtn {
  min-height: 64px;
  border-radius: 18px;
  background: linear-gradient(180deg, #1b1a19 0%, #121110 100%);
  border: 1px solid rgba(20, 20, 19, 0.16);
  color: #f7f5ef;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0;
  transition:
    background-color 220ms cubic-bezier(0.16, 1, 0.3, 1),
    border-color 220ms cubic-bezier(0.16, 1, 0.3, 1),
    color 220ms cubic-bezier(0.16, 1, 0.3, 1),
    transform 220ms cubic-bezier(0.16, 1, 0.3, 1),
    box-shadow 220ms cubic-bezier(0.16, 1, 0.3, 1),
    opacity 220ms cubic-bezier(0.16, 1, 0.3, 1);
  box-shadow: 0 22px 42px rgba(20, 20, 19, 0.18);
}

body.store-page #qrModal #confirmOrderBtn:hover {
  transform: translateY(-1px);
  background: linear-gradient(180deg, #23211f 0%, #171513 100%);
}

body.store-page #qrModal #confirmOrderBtn.is-success {
  background: linear-gradient(180deg, #1b1a19 0%, #121110 100%);
  color: #f7f5ef;
}

body.store-page #qrModal.is-user-checkout-page #confirmOrderBtn.checkout-user-cta {
  min-height: 55px;
  margin-bottom: 10px;
  border-radius: 12px;
  background: #1a1510;
  border: 0;
  color: #f5f2ec;
  font-size: 15px;
  font-weight: 600;
  box-shadow: none;
}

body.store-page #qrModal.is-user-checkout-page #confirmOrderBtn.checkout-user-cta:hover {
  background: #221c15;
}

body.store-page #qrModal .btn-spinner {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  border: 2px solid rgba(247, 243, 234, 0.24);
  border-top-color: #f7f3ea;
  animation: checkoutSpinSvg 0.9s linear infinite;
}

body.store-page #qrModal .btn-check-icon {
  width: 16px;
  height: 16px;
}

body.store-page #qrModal .btn-check-icon path {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

body.store-page #qrModal .confirm-btn-label,
body.store-page #qrModal .checkout-actions button {
  font-size: 14px;
  font-weight: 600;
}

body.store-page #qrModal .checkout-actions button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

body.store-page #qrModal .checkout-copy-btn,
body.store-page #qrModal .checkout-link-btn {
  min-height: 32px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(44, 36, 26, 0.08);
  background: rgba(255, 255, 255, 0.78);
  color: #11100d;
  font-size: 12px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

body.store-page #qrModal .checkout-copy-btn:hover,
body.store-page #qrModal .checkout-link-btn:hover {
  background: rgba(255, 255, 255, 0.96);
}

body.store-page #qrModal .checkout-delivery-panel {
  display: grid;
  gap: 14px;
  padding: 18px;
}

body.store-page #qrModal .checkout-delivery-head-actions,
body.store-page #qrModal .checkout-delivery-card-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

body.store-page #qrModal .checkout-delivery-list {
  display: grid;
  gap: 10px;
}

body.store-page #qrModal .checkout-delivery-card {
  display: grid;
  gap: 12px;
  min-height: 114px;
  padding: 16px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.66);
  border: 1px solid rgba(44, 36, 26, 0.08);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.55);
}

body.store-page #qrModal .checkout-delivery-card-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

body.store-page #qrModal .checkout-delivery-title-wrap {
  min-width: 0;
  display: grid;
  gap: 4px;
}

body.store-page #qrModal .checkout-delivery-item-title {
  display: block;
  font-size: 14px;
  font-weight: 640;
  line-height: 1.4;
  color: #11100d;
}

body.store-page #qrModal .checkout-delivery-value {
  margin: 0;
  min-height: 68px;
  max-height: 160px;
  overflow: auto;
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid rgba(44, 36, 26, 0.06);
  background: rgba(17, 16, 13, 0.035);
  color: #1b1814;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
  font-size: 12.5px;
  line-height: 1.66;
  scrollbar-width: thin;
  scrollbar-color: rgba(44, 36, 26, 0.16) transparent;
}

body.store-page #qrModal[data-checkout-state="paid_success"] .checkout-delivery-panel,
body.store-page #qrModal[data-checkout-state="delivery_ready"] .checkout-delivery-panel {
  animation: checkoutDeliveryReveal 260ms cubic-bezier(0.16, 1, 0.3, 1);
}

body.store-page #qrModal .checkout-sheet-body::-webkit-scrollbar {
  width: 7px;
  height: 7px;
}

body.store-page #qrModal.is-user-checkout-page .checkout-sheet-body {
  scrollbar-width: none;
}

body.store-page #qrModal.is-user-checkout-page .checkout-sheet-body::-webkit-scrollbar {
  width: 0;
  height: 0;
}

body.store-page #qrModal .checkout-sheet-body::-webkit-scrollbar-track {
  background: transparent;
}

body.store-page #qrModal .checkout-sheet-body::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: rgba(44, 36, 26, 0.16);
}

body.store-page #qrModal .checkout-sheet-body::-webkit-scrollbar-thumb:hover {
  background: rgba(44, 36, 26, 0.24);
}

body.store-page #qrModal .checkout-delivery-value::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}

body.store-page #qrModal .checkout-delivery-value::-webkit-scrollbar-track {
  background: transparent;
}

body.store-page #qrModal .checkout-delivery-value::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: rgba(44, 36, 26, 0.16);
}

body.store-page #qrModal .checkout-delivery-value::-webkit-scrollbar-thumb:hover {
  background: rgba(44, 36, 26, 0.24);
}

@keyframes checkoutMotionEnter {
  from {
    opacity: 0.7;
    transform: scale(0.92);
  }

  to {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes checkoutSpinSvg {
  to {
    transform: rotate(360deg);
  }
}

@keyframes checkoutLoadingBreathe {
  0%, 100% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.045);
  }
}

@keyframes checkoutLoadingGlow {
  0%, 100% {
    filter: drop-shadow(0 0 5px rgba(199, 97, 63, 0.18));
  }
  50% {
    filter: drop-shadow(0 0 13px rgba(199, 97, 63, 0.5));
  }
}

@keyframes checkoutSpinnerDash {
  0%,
  100% {
    stroke-dasharray: 44 140;
    stroke-dashoffset: 6;
  }

  50% {
    stroke-dasharray: 72 140;
    stroke-dashoffset: -18;
  }
}

@keyframes checkoutDrawRing {
  to {
    stroke-dashoffset: 0;
  }
}

@keyframes checkoutDrawCheck {
  to {
    stroke-dashoffset: 0;
  }
}

@keyframes checkoutSpinnerFade {
  to {
    opacity: 0;
    transform: scale(0.92);
  }
}

@keyframes checkoutSuccessReveal {
  to {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes checkoutPulseSoft {
  0%,
  100% {
    opacity: 0.4;
    transform: scale(0.82);
  }

  50% {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes checkoutProgressBreath {
  0%,
  100% {
    transform: scale(1);
    box-shadow: 0 0 0 4px rgba(182, 139, 86, 0.08);
  }

  50% {
    transform: scale(1.12);
    box-shadow: 0 0 0 7px rgba(182, 139, 86, 0.16);
  }
}

@keyframes checkoutProgressHalo {
  0% {
    opacity: 0;
    transform: scale(0.72);
  }

  35% {
    opacity: 0.55;
  }

  100% {
    opacity: 0;
    transform: scale(1.36);
  }
}

@keyframes checkoutDeliveryReveal {
  from {
    opacity: 0;
    transform: translateY(8px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-height: 820px) and (min-width: 761px) {
  body.store-page #qrModal .checkout-stage-head {
    min-height: 80px;
    padding-bottom: 14px;
  }

  body.store-page #qrModal .checkout-sheet-body {
    gap: 16px;
    padding-top: 14px;
    padding-bottom: 12px;
  }

  body.store-page #qrModal .checkout-surface-confirm,
  body.store-page #qrModal .checkout-surface-state {
    min-height: 260px;
  }

  body.store-page #qrModal .checkout-qr-card {
    width: min(100%, clamp(204px, 27vh, 272px));
  }
}

@media (max-width: 980px) {
  body.store-page #qrModal .checkout-layout {
    width: min(980px, calc(100vw - 40px));
    height: min(820px, calc(100vh - 32px));
    max-height: min(820px, calc(100vh - 32px));
  }

  body.store-page #qrModal.is-user-checkout-page .checkout-layout {
    width: min(940px, calc(100vw - 24px));
    height: auto;
    max-height: min(92vh, calc(100vh - 32px));
  }

  body.store-page #qrModal .checkout-sheet-body {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  body.store-page #qrModal.is-user-checkout-page .checkout-sheet-body {
    padding: 32px 24px 28px;
    grid-template-columns: 1fr;
    gap: 28px;
  }

  body.store-page #qrModal .checkout-head-meta {
    justify-items: start;
  }

  body.store-page #qrModal .checkout-head-badges {
    justify-content: flex-start;
  }

  body.store-page #qrModal .checkout-progress {
    justify-content: flex-start;
  }

  body.store-page #qrModal .checkout-side-column {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  body.store-page #qrModal {
    align-items: flex-end;
    padding: 0 8px;
  }

  body.store-page #qrModal .checkout-layout {
    width: 100%;
    height: min(92vh, calc(100vh - 8px));
    max-height: min(92vh, calc(100vh - 8px));
    border-radius: 28px 28px 0 0;
    border-bottom: 0;
    transform: translateY(20px);
  }

  body.store-page #qrModal.is-user-checkout-page .checkout-layout {
    height: auto;
    max-height: min(92vh, calc(100vh - 8px));
  }

  body.store-page #qrModal .checkout-layout::before {
    content: "";
    position: absolute;
    top: 10px;
    left: 50%;
    width: 42px;
    height: 4px;
    border-radius: 999px;
    background: rgba(17, 16, 13, 0.16);
    transform: translateX(-50%);
  }

  body.store-page #qrModal .checkout-stage-head {
    grid-template-columns: auto minmax(0, 1fr);
    gap: 14px;
    min-height: 78px;
    padding: 22px 18px 12px;
  }

  body.store-page #qrModal .checkout-head-meta {
    grid-column: 1 / -1;
    justify-items: start;
  }

  body.store-page #qrModal .checkout-floating-status {
    top: 16px;
    right: 18px;
  }

  body.store-page #qrModal .checkout-head-badges {
    width: 100%;
    justify-content: space-between;
    align-items: center;
  }

  body.store-page #qrModal .checkout-contact-head-card {
    min-width: 0;
    width: min(100%, 320px);
  }

  body.store-page #qrModal .checkout-stage-title {
    font-size: 26px;
  }

  body.store-page #qrModal .checkout-stage-desc {
    font-size: 13px;
  }

  body.store-page #qrModal .checkout-inline-notice {
    margin: 0 18px 12px;
  }

  body.store-page #qrModal .checkout-sheet-body {
    padding: 14px 18px 18px;
    gap: 14px;
  }

  body.store-page #qrModal.is-user-checkout-page .checkout-sheet-body {
    padding: 54px 18px 20px;
    gap: 24px;
  }

  body.store-page #qrModal .checkout-user-page-title {
    font-size: 24px;
  }

  body.store-page #qrModal .checkout-user-title-row {
    align-items: flex-start;
  }

  body.store-page #qrModal .checkout-user-subtitle {
    max-width: none;
  }

  body.store-page #qrModal .checkout-expired-overlay {
    padding: 18px;
  }

  body.store-page #qrModal .checkout-expired-dialog {
    padding: 22px 18px;
    border-radius: 22px;
  }

  body.store-page #qrModal .checkout-expired-dialog h3 {
    font-size: 24px;
  }

  body.store-page #qrModal .checkout-user-summary-row,
  body.store-page #qrModal .checkout-user-total-row {
    gap: 12px;
  }

  body.store-page #qrModal .checkout-user-summary-val,
  body.store-page #qrModal .checkout-user-summary-product {
    max-width: 58%;
  }

  body.store-page #qrModal .checkout-confirm-intro {
    min-height: 220px;
    padding-left: 10px;
    padding-right: 10px;
  }

  body.store-page #qrModal .checkout-surface,
  body.store-page #qrModal .checkout-delivery-panel,
  body.store-page #qrModal .summary-box,
  body.store-page #qrModal .checkout-card {
    padding-left: 16px;
    padding-right: 16px;
  }

  body.store-page #qrModal .checkout-confirm-top {
    align-items: flex-start;
  }

  body.store-page #qrModal .checkout-money.is-hero .checkout-money-value {
    font-size: 36px;
  }

  body.store-page #qrModal .checkout-card-head,
  body.store-page #qrModal .checkout-delivery-head,
  body.store-page #qrModal .checkout-delivery-card-head {
    flex-direction: column;
  }

  body.store-page #qrModal .summary-line {
    align-items: flex-start;
    padding: 8px 0;
  }

  body.store-page #qrModal .summary-line > span,
  body.store-page #qrModal .summary-value {
    line-height: 1.5;
  }

  body.store-page #qrModal .checkout-actions {
    grid-template-columns: auto minmax(0, 1fr);
    padding: 14px 18px calc(14px + env(safe-area-inset-bottom));
  }

  body.store-page #qrModal #checkoutAuxBtn {
    grid-column: 1 / -1;
    min-width: 0;
  }

  body.store-page #qrModal #closeQrBtn,
  body.store-page #qrModal #confirmOrderBtn {
    min-width: 0;
  }

  body.store-page #qrModal #closeQrBtn {
    grid-column: 1;
  }

  body.store-page #qrModal #confirmOrderBtn {
    grid-column: 2;
  }

  body.store-page #qrModal .checkout-qr-card {
    width: min(100%, 264px);
  }
}

/* 2026-05-19 product card rebuild */
body.store-page {
  --ag-card-bg: #E3DACC;
  --ag-card-ink-strong: #1a1a1a;
  --ag-card-ink-body: #3e392e;
  --ag-card-ink-muted: #8a8472;
  --ag-card-rule: rgba(26, 26, 26, 0.14);
  --ag-card-rule-strong: rgba(26, 26, 26, 0.22);
  --ag-card-cta-bg: #1a1a1a;
  --ag-card-cta-fg: #ffffff;
  --ag-card-cta-disabled-bg: rgba(26, 26, 26, 0.11);
  --ag-card-cta-disabled-fg: #8a8472;
}

@keyframes agCardRise {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

body.store-page .project-grid {
  grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
  gap: 20px;
}

body.store-page .catalog-product-card.refined-product-card {
  position: relative;
  min-height: 420px;
  aspect-ratio: auto;
  padding: 32px;
  border-radius: 16px;
  border: 0;
  background: var(--ag-card-bg);
  box-shadow: none;
  transition: transform 240ms cubic-bezier(0.2, 0, 0, 1), box-shadow 240ms cubic-bezier(0.2, 0, 0, 1);
  animation: agCardRise 600ms cubic-bezier(0.2, 0, 0, 1) both;
}

body.store-page .catalog-product-card.refined-product-card:nth-child(2) {
  animation-delay: 80ms;
}

body.store-page .catalog-product-card.refined-product-card:nth-child(3) {
  animation-delay: 160ms;
}

body.store-page .catalog-product-card.refined-product-card:nth-child(4) {
  animation-delay: 240ms;
}

body.store-page .catalog-product-card.refined-product-card::before,
body.store-page .catalog-product-card.refined-product-card::after {
  content: none;
}

body.store-page .catalog-product-card.refined-product-card:hover {
  transform: translateY(-2px);
  background: var(--ag-card-bg);
  border: 0;
  box-shadow: 0 12px 32px -16px rgba(26, 26, 26, 0.15);
}

body.store-page .catalog-product-card.refined-product-card.is-sold-out {
  opacity: 1;
}

body.store-page .refined-product-card .catalog-product-body {
  min-height: 100%;
  gap: 0;
}

body.store-page .refined-product-card .refined-card-shell {
  display: flex;
  flex: 1;
  flex-direction: column;
  min-height: 100%;
}

body.store-page .refined-product-card .refined-card-header {
  margin-bottom: 28px;
}

body.store-page .refined-product-card .refined-card-title {
  margin: 0 0 10px;
  font-family: var(--font-sans);
  font-size: 25px;
  line-height: 1.25;
  letter-spacing: -0.01em;
  color: var(--ag-card-ink-strong);
  font-weight: 600;
  text-wrap: balance;
}

body.store-page .refined-product-card .refined-card-title-row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 10px;
}

body.store-page .refined-product-card .refined-card-title-row .refined-card-title {
  margin: 0;
}

body.store-page .refined-product-card .refined-card-title-logo {
  width: 22px;
  height: 22px;
  flex: 0 0 22px;
  display: block;
  object-fit: contain;
}

body.store-page .refined-product-card .refined-card-desc {
  margin: 0 0 14px;
  font-size: 14px;
  line-height: 1.6;
  color: var(--ag-card-ink-body);
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
  overflow: hidden;
  border-left: 3px solid var(--rpc-accent, rgba(26,26,26,.22));
  padding-left: 10px;
  padding-top: 2px;
  padding-bottom: 2px;
}

body.store-page .refined-product-card .refined-card-link {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  width: fit-content;
  font-size: 14px;
  color: var(--ag-card-ink-strong);
  text-decoration: none;
  border-bottom: 1px solid var(--ag-card-rule-strong);
  padding-bottom: 1px;
  transition: border-color 160ms ease;
}

body.store-page .refined-product-card .refined-card-link:hover {
  border-bottom-color: var(--ag-card-ink-strong);
}

body.store-page .refined-product-card .refined-card-link::after {
  content: "->";
  font-size: 13px;
}

body.store-page .refined-product-card .refined-card-rule {
  width: 100%;
  height: 1px;
  margin: 0;
  border: 0;
  background: var(--ag-card-rule);
}

body.store-page .refined-product-card .refined-card-meta {
  padding: 20px 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

body.store-page .refined-product-card .refined-card-meta-row {
  display: flex;
  align-items: baseline;
  gap: 18px;
}

body.store-page .refined-product-card .refined-card-meta-label {
  flex: 0 0 56px;
  min-width: 56px;
  font-size: 11px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--ag-card-ink-muted);
  font-weight: 500;
}

body.store-page .refined-product-card .refined-card-meta-value {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 14px;
  color: var(--ag-card-ink-strong);
  font-variant-numeric: tabular-nums;
  text-align: right;
}

body.store-page .refined-product-card .refined-card-meta-value.is-strong {
  font-size: 16px;
  font-weight: 600;
}

body.store-page .refined-product-card .refined-card-unit {
  font-size: 12px;
  color: var(--ag-card-ink-muted);
  margin-left: 2px;
}

body.store-page .refined-product-card .refined-card-footer {
  margin-top: auto;
  padding-top: 20px;
}

body.store-page .refined-product-card .product-action-row,
body.store-page .refined-product-card .card-product-action-row,
body.store-page .refined-product-card .bundle-launch-row {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 0;
  padding-top: 0;
  grid-template-columns: none;
}

body.store-page .refined-product-card .card-product-action-row,
body.store-page .refined-product-card .bundle-launch-row {
  width: 100%;
}

body.store-page .refined-product-card .qty-box {
  width: 90px;
  min-width: 90px;
  height: 42px;
  min-height: 42px;
  padding: 2px;
  border-radius: 8px;
  border: 1px solid var(--ag-card-rule-strong);
  background: transparent;
  box-shadow: none;
  display: inline-grid;
  grid-template-columns: 28px minmax(0, 1fr) 28px;
  align-items: center;
  flex: 0 0 auto;
}

body.store-page .refined-product-card .qty-btn {
  width: 30px;
  min-height: 32px;
  height: 32px;
  padding: 0;
  border-radius: 999px;
  border: 0;
  background: transparent;
  cursor: pointer;
  font-size: 16px;
  color: var(--ag-card-ink-body);
  font-weight: 500;
}

body.store-page .refined-product-card .qty-btn:hover {
  background: rgba(26, 26, 26, 0.06);
  transform: none;
}

body.store-page .refined-product-card .qty-value-wrap {
  min-width: 24px;
  padding: 0 4px;
  display: flex;
  align-items: center;
  justify-content: center;
}

body.store-page .refined-product-card .qty-value-wrap input {
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  text-align: center;
  font-size: 14px;
  font-weight: 500;
  color: var(--ag-card-ink-strong);
  pointer-events: none;
}

body.store-page .refined-product-card .product-buy-btn,
body.store-page .refined-product-card .bundle-launch-btn {
  flex: 1 1 0;
  width: auto;
  min-width: 154px;
  min-height: 42px;
  height: 42px;
  padding: 10px 22px;
  border: 0;
  border-radius: 8px;
  background: var(--ag-card-cta-bg);
  color: var(--ag-card-cta-fg);
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  font-family: var(--font-sans);
  font-size: 14px;
  font-weight: 500;
  white-space: nowrap;
  transition: background 160ms ease, transform 160ms ease;
  box-shadow: none;
}

body.store-page .refined-product-card .product-buy-btn::after,
body.store-page .refined-product-card .bundle-launch-btn::after {
  content: "->";
  font-size: 14px;
  transition: transform 200ms cubic-bezier(0.2, 0, 0, 1);
}

body.store-page .refined-product-card .product-buy-btn:hover,
body.store-page .refined-product-card .bundle-launch-btn:hover {
  background: #2a2a2a;
  transform: none;
}

body.store-page .refined-product-card .product-buy-btn:hover::after,
body.store-page .refined-product-card .bundle-launch-btn:hover::after {
  transform: translateX(3px);
}

body.store-page .refined-product-card .product-buy-btn:active,
body.store-page .refined-product-card .bundle-launch-btn:active {
  transform: scale(0.98);
}

body.store-page .refined-product-card .product-buy-btn.is-sold-out,
body.store-page .refined-product-card .product-buy-btn.is-sold-out:hover,
body.store-page .refined-product-card .product-buy-btn[disabled],
body.store-page .refined-product-card .product-buy-btn[disabled]:hover {
  background: var(--ag-card-cta-disabled-bg);
  color: var(--ag-card-cta-disabled-fg);
  cursor: not-allowed;
  transform: none;
}

body.store-page .refined-product-card .product-buy-btn.is-sold-out::after,
body.store-page .refined-product-card .product-buy-btn[disabled]::after {
  content: "-";
}

body.store-page .refined-product-card .product-buy-btn.is-sold-out:hover::after,
body.store-page .refined-product-card .product-buy-btn[disabled]:hover::after {
  transform: none;
}

@media (max-width: 760px) {
  body.store-page .project-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  body.store-page .catalog-product-card.refined-product-card {
    min-height: 0;
    padding: 24px;
  }

  body.store-page .refined-product-card .refined-card-meta-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
  }

  body.store-page .refined-product-card .refined-card-meta-value {
    max-width: 100%;
    text-align: left;
    overflow-wrap: anywhere;
  }

  body.store-page .refined-product-card .refined-card-unit {
    display: block;
    margin-left: 0;
    margin-top: 2px;
  }
}

/* 2026-05-19 hero/footer typography refinement */
body.store-page .anthropic-replica-hero {
  padding-top: clamp(78px, 6.3vw, 110px);
  padding-bottom: clamp(88px, 7vw, 120px);
}

body.store-page .anthropic-replica-grid {
  grid-template-columns: minmax(0, 1.72fr) minmax(320px, 0.88fr);
  gap: clamp(40px, 3.8vw, 58px);
  align-items: start;
}

body.store-page .anthropic-replica-heading {
  max-width: none;
}

body.store-page .anthropic-replica-heading h1 {
  max-width: 9.35em;
  font-size: clamp(56px, 4.7vw, 74px);
  line-height: 0.97;
  letter-spacing: -0.042em;
  font-weight: 680;
}

body.store-page .anthropic-replica-aside {
  justify-self: start;
  align-self: start;
  padding-top: clamp(22px, 2.2vw, 34px);
}

body.store-page .anthropic-replica-aside p {
  max-width: 18.8ch;
  font-family: var(--font-ui);
  font-size: clamp(21px, 1.62vw, 24px);
  font-weight: 430;
  line-height: 1.42;
  letter-spacing: -0.014em;
  color: rgba(20, 20, 19, 0.86);
  text-wrap: pretty;
}

body.store-page[data-locale="en"] .anthropic-replica-grid {
  grid-template-columns: minmax(0, 1.66fr) minmax(360px, 0.94fr);
  gap: clamp(44px, 4vw, 64px);
}

body.store-page[data-locale="en"] .anthropic-replica-heading h1 {
  max-width: 9.4ch;
  font-size: clamp(58px, 5.25vw, 78px);
  line-height: 0.99;
}

body.store-page[data-locale="en"] .anthropic-replica-aside p {
  max-width: 20ch;
  font-family: var(--font-ui);
  font-size: clamp(20px, 1.54vw, 23px);
  line-height: 1.44;
}

body.store-page .store-resource-band {
  grid-template-columns: minmax(0, 0.82fr) minmax(0, 1.18fr);
  gap: clamp(48px, 4.5vw, 72px);
  margin-top: 14px;
  padding-top: 18px;
  align-items: start;
}

body.store-page .store-resource-copy {
  gap: 12px;
  max-width: 420px;
}

body.store-page .store-resource-copy h2 {
  max-width: 8.5ch;
  font-size: clamp(34px, 2.8vw, 42px);
  line-height: 1.1;
  font-weight: 680;
  letter-spacing: -0.024em;
}

body.store-page[data-locale="en"] .store-resource-copy h2 {
  max-width: 14ch;
  font-family: var(--font-ui);
  font-size: clamp(32px, 2.55vw, 40px);
}

body.store-page .store-resource-list {
  padding-top: 2px;
}

body.store-page .store-resource-list a {
  min-height: 58px;
  font-size: 16px;
  line-height: 1.36;
  font-weight: 500;
}

body.store-page .store-resource-list a::after {
  font-size: 13px;
}

body.store-page .store-footer-inner {
  grid-template-columns: minmax(220px, 0.68fr) minmax(0, 1.32fr);
  gap: 44px 68px;
  padding: 64px 0 70px;
}

body.store-page .store-footer-brand-block {
  gap: 18px;
  max-width: 236px;
}

body.store-page .store-footer-brand-copy p {
  font-size: 13px;
  line-height: 1.56;
  font-weight: 450;
  color: rgba(247, 244, 236, 0.66);
}

body.store-page .store-footer-columns {
  grid-template-columns: repeat(3, minmax(150px, 1fr));
  gap: 22px 40px;
}

body.store-page .store-footer-column {
  gap: 10px;
}

body.store-page .store-footer-column h3 {
  font-size: 12px;
  font-weight: 600;
  color: #ffffff;
}

body.store-page .store-footer-column a,
body.store-page[data-locale="en"] .store-footer-column a {
  font-family: var(--font-ui);
  font-size: 14px;
  line-height: 1.56;
  font-weight: 450;
  color: rgba(247, 244, 236, 0.7);
}

body.store-page .store-footer-column a:hover,
body.store-page[data-locale="en"] .store-footer-column a:hover {
  color: #fff;
}

@media (max-width: 1180px) {
  body.store-page .anthropic-replica-hero {
    padding-top: 56px;
    padding-bottom: 76px;
  }

  body.store-page .anthropic-replica-grid,
  body.store-page[data-locale="en"] .anthropic-replica-grid,
  body.store-page .store-resource-band,
  body.store-page .store-footer-inner {
    grid-template-columns: 1fr;
  }

  body.store-page .anthropic-replica-grid,
  body.store-page[data-locale="en"] .anthropic-replica-grid {
    gap: 24px;
  }

  body.store-page .anthropic-replica-heading h1,
  body.store-page[data-locale="en"] .anthropic-replica-heading h1 {
    max-width: min(10ch, 100%);
    font-size: clamp(52px, 6.8vw, 70px);
  }

  body.store-page .anthropic-replica-aside {
    padding-top: 0;
  }

  body.store-page .anthropic-replica-aside p,
  body.store-page[data-locale="en"] .anthropic-replica-aside p {
    max-width: 24ch;
    font-size: clamp(18px, 2.2vw, 21px);
    line-height: 1.48;
  }

  body.store-page .store-resource-band {
    gap: 28px;
    margin-top: 0;
    padding-top: 14px;
  }

  body.store-page .store-resource-copy {
    max-width: 520px;
  }

  body.store-page .store-resource-copy h2,
  body.store-page[data-locale="en"] .store-resource-copy h2 {
    max-width: 14ch;
    font-size: clamp(30px, 4vw, 38px);
  }

  body.store-page .store-footer-inner {
    gap: 32px;
    padding: 50px 0 54px;
  }
}

@media (max-width: 760px) {
  body.store-page .anthropic-replica-hero {
    padding-top: 32px;
    padding-bottom: 52px;
  }

  body.store-page .anthropic-replica-heading h1,
  body.store-page[data-locale="en"] .anthropic-replica-heading h1 {
    max-width: 6.7em;
    font-size: clamp(42px, 12vw, 56px);
    line-height: 0.99;
  }

  body.store-page .anthropic-replica-aside p,
  body.store-page[data-locale="en"] .anthropic-replica-aside p {
    max-width: 16ch;
    font-size: 17px;
    line-height: 1.5;
  }

  body.store-page .store-resource-band {
    gap: 22px;
    padding-top: 12px;
  }

  body.store-page .store-resource-copy h2,
  body.store-page[data-locale="en"] .store-resource-copy h2 {
    max-width: none;
    font-size: clamp(28px, 8.6vw, 34px);
    line-height: 1.14;
  }

  body.store-page .store-resource-list a {
    min-height: 52px;
    font-size: 15px;
  }

  body.store-page .store-footer-inner {
    padding: 38px 0 42px;
    gap: 26px;
  }

  body.store-page .store-footer-columns {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 24px;
  }

  body.store-page .store-footer-brand-copy p {
    font-size: 12.5px;
  }

  body.store-page .store-footer-column h3 {
    font-size: 11.5px;
  }

  body.store-page .store-footer-column a,
  body.store-page[data-locale="en"] .store-footer-column a {
    font-size: 13.5px;
  }
}

@media (max-width: 560px) {
  body.store-page .store-footer-columns {
    grid-template-columns: 1fr;
  }
}



/* QR generating draw animation */
body.store-page #qrModal .checkout-inline-qr-generating {
  padding: 4px 0 8px;
}

body.store-page #qrModal .checkout-qr-gen-label {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  font-weight: 500;
  color: #4a3e2a;
  margin-bottom: 22px;
  letter-spacing: 0.01em;
}

body.store-page #qrModal .checkout-qr-gen-spinner {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  border-radius: 50%;
  border: 1.5px solid rgba(74, 62, 42, 0.16);
  border-top-color: #6b5a3e;
  animation: checkoutSpinSvg 0.75s linear infinite;
}

body.store-page #qrModal .checkout-qr-gen-frame {
  position: relative;
  display: inline-block;
  width: min(200px, 100%);
  border-radius: 16px;
  overflow: hidden;
  background: #f0ece4;
  box-shadow: 0 2px 16px rgba(20, 16, 8, 0.08);
}

body.store-page #qrModal .checkout-qr-gen-frame img {
  display: block;
  width: 100%;
  height: auto;
  animation: qrRevealDraw 2.2s cubic-bezier(0.38, 0, 0.18, 1) forwards;
}

body.store-page #qrModal .checkout-qr-gen-scanline {
  position: absolute;
  left: 10px;
  right: 10px;
  height: 2px;
  border-radius: 2px;
  background: linear-gradient(90deg, transparent 0%, rgba(80, 140, 255, 0.7) 50%, transparent 100%);
  animation: qrScanLine 2.2s cubic-bezier(0.38, 0, 0.18, 1) forwards;
  pointer-events: none;
  z-index: 2;
}

body.store-page #qrModal .checkout-qr-gen-veil {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(240, 236, 228, 0) 0%, rgba(240, 236, 228, 0.88) 100%);
  animation: qrVeilFade 2.2s cubic-bezier(0.38, 0, 0.18, 1) forwards;
  pointer-events: none;
  z-index: 1;
}

@keyframes qrRevealDraw {
  0%   { clip-path: inset(0 0 96% 0); filter: blur(3px); opacity: 0.5; }
  30%  { clip-path: inset(0 0 65% 0); filter: blur(1.5px); opacity: 0.75; }
  70%  { clip-path: inset(0 0 20% 0); filter: blur(0.5px); opacity: 0.9; }
  100% { clip-path: inset(0 0 0%  0); filter: blur(0);     opacity: 1; }
}

@keyframes qrScanLine {
  0%   { top: 0%;    opacity: 0; }
  4%   { opacity: 1; }
  94%  { top: calc(100% - 2px); opacity: 1; }
  100% { top: 100%;  opacity: 0; }
}

@keyframes qrVeilFade {
  0%   { opacity: 1; }
  80%  { opacity: 0.2; }
  100% { opacity: 0; }
}

/* Input shake for missing contact validation */
@keyframes inputShake {
  0%,100% { transform: translateX(0); }
  20%     { transform: translateX(-6px); }
  40%     { transform: translateX(6px); }
  60%     { transform: translateX(-4px); }
  80%     { transform: translateX(4px); }
}

body.store-page #qrModal .input-shake {
  animation: inputShake 0.45s ease;
  border-color: rgba(200, 80, 40, 0.6) !important;
}

/* Qty input editable style */
body.store-page .refined-product-card .qty-value-wrap input,
body.store-page .card-bin-qty-box .qty-value-wrap input {
  pointer-events: auto;
  cursor: text;
}



/* ── Processing spinner — premium minimal (Claude-style) ── */
body.store-page #qrModal .checkout-processing-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 22px;
  padding: 52px 0 32px;
  min-height: 180px;
}

body.store-page #qrModal .checkout-processing-ring {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: conic-gradient(
    from 180deg,
    rgba(120, 92, 44, 0)   0%,
    rgba(120, 92, 44, 0.06) 15%,
    rgba(148, 112, 52, 0.38) 55%,
    rgba(160, 124, 60, 0.88) 85%,
    rgba(164, 128, 64, 1)  100%
  );
  -webkit-mask:
    radial-gradient(farthest-side, transparent calc(100% - 2.5px), #fff calc(100% - 2.5px));
  mask:
    radial-gradient(farthest-side, transparent calc(100% - 2.5px), #fff calc(100% - 2.5px));
  animation: processingRingSpin 1.05s linear infinite;
}

body.store-page #qrModal .checkout-processing-label {
  font-family: var(--font-ui);
  font-size: 13px;
  font-weight: 500;
  color: rgba(40, 32, 18, 0.52);
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

@keyframes processingRingSpin {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}


/* QR card — position:relative for shimmer overlay */
body.store-page #qrModal .checkout-qr-alipay-card {
  position: relative;
  width: min(260px, 100%);
  background: #ffffff;
  border-radius: 14px;
  padding: 12px;
  box-shadow: 0 6px 28px rgba(0,0,0,0.22), 0 1px 4px rgba(0,0,0,0.12);
  overflow: hidden;
}

/* Shimmer while QR loads */
body.store-page #qrModal .checkout-qr-alipay-card:not(.has-qr)::after {
  content: "";
  position: absolute;
  inset: 12px;
  border-radius: 6px;
  background: linear-gradient(
    90deg,
    rgba(226, 220, 210, 0.7) 25%,
    rgba(242, 238, 230, 0.9) 50%,
    rgba(226, 220, 210, 0.7) 75%
  );
  background-size: 200% 100%;
  animation: qrShimmer 1.4s ease-in-out infinite;
  pointer-events: none;
  z-index: 1;
}

@keyframes qrShimmer {
  0%   { background-position:  200% 0; }
  100% { background-position: -200% 0; }
}

/* QR image — invisible until onload fires */
body.store-page #qrModal .checkout-qr-image {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 4px;
  position: relative;
  z-index: 2;
}

body.store-page #qrModal .checkout-qr-image.qr-pending {
  opacity: 0;
}

body.store-page #qrModal .checkout-qr-image.qr-revealed {
  animation: qrReveal 0.5s cubic-bezier(0.22, 1, 0.36, 1) both;
}

@keyframes qrReveal {
  from { opacity: 0; transform: scale(0.94); filter: blur(5px); }
  to   { opacity: 1; transform: scale(1);    filter: blur(0); }
}

/* Expired overlay */
body.store-page #qrModal .checkout-qr-alipay-card.is-expired .checkout-qr-image {
  opacity: 0.2;
  filter: blur(3px);
}

body.store-page #qrModal .checkout-qr-expired-layer {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 3;
  border-radius: 14px;
}

body.store-page #qrModal .checkout-qr-expired-layer span {
  background: rgba(10,8,4,0.72);
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  padding: 6px 16px;
  border-radius: 8px;
  backdrop-filter: blur(4px);
}

body.store-page #qrModal .checkout-qr-alipay-hint {
  margin: 0;
  font-size: 12px;
  color: rgba(255,255,255,0.78);
  text-align: center;
  letter-spacing: 0.01em;
}


/* ── Image-based Alipay QR panel ── */
body.store-page #qrModal .checkout-qr-bg-panel {
  width: 100%;
  max-width: 363px;
  margin: 0 auto;
  animation: alipayWrapIn 0.36s cubic-bezier(0.22, 1, 0.36, 1) both;
}

body.store-page #qrModal .checkout-qr-bg-wrap {
  position: relative;
  width: 100%;
  border-radius: 0;
  overflow: hidden;
  box-shadow: none;
}

body.store-page #qrModal .checkout-qr-bg-img {
  display: block;
  width: 100%;
  height: auto;
}

/* QR code overlay — precisely positioned on the white card area */
/* Image is 1024x1536. White card: top=23.1%, left=11.5%, width=76.9% of image width */
/* Since top is % of height and image ratio is 1:1.5, top% in container:  */
/* 23.1% of 1536 / 1024 × 100 = 34.7% of container width as absolute but */
/* CSS top:% is relative to container height, which = width × 1.5          */
/* So top: 23.1% of container height is correct                             */
body.store-page #qrModal .checkout-qr-bg-overlay {
  position: absolute;
  top: 33.6%;
  left: 13.6%;
  width: 72.6%;
  bottom: 12.7%;
  border-radius: 10px;
  overflow: hidden;
  background: #ffffff;
}

/* Shimmer while QR image loads */
/* shimmer removed: clip-path handles loading state */

body.store-page #qrModal .checkout-qr-bg-overlay .checkout-qr-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
  position: relative;
  z-index: 2;
}

body.store-page #qrModal .checkout-qr-bg-overlay .checkout-qr-image.qr-pending {
  opacity: 0;
}

body.store-page #qrModal .checkout-qr-bg-overlay .checkout-qr-image.qr-revealed {
  animation: qrReveal 0.5s cubic-bezier(0.22, 1, 0.36, 1) both;
}

/* Expired state */
body.store-page #qrModal .checkout-qr-bg-overlay.is-expired .checkout-qr-image {
  opacity: 0.18;
  filter: blur(4px);
}

body.store-page #qrModal .checkout-qr-bg-expired {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 3;
}

body.store-page #qrModal .checkout-qr-bg-expired span {
  background: rgba(10, 8, 4, 0.72);
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  padding: 6px 16px;
  border-radius: 8px;
  backdrop-filter: blur(4px);
}

/* Hide verbose subtitle when showing QR image panel (image is self-explanatory) */
body.store-page #qrModal .checkout-user-page-left.has-inline-surface #checkoutInitialSubtitle {
  display: none;
}


/* success animation */
@keyframes successExitRight {
  0%   { transform: translateX(0);    opacity: 1; }
  100% { transform: translateX(180%); opacity: 0; }
}

body.store-page #qrModal .btn-success-orb {
  position: absolute;
  top: 50%; left: 50%;
  width: 30px; height: 30px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.34);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(247, 243, 234, 0.94) 100%);
  display: flex; align-items: center; justify-content: center;
  box-shadow:
    0 12px 30px rgba(0, 0, 0, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.86);
  animation: successOrbEnter 400ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

@keyframes successOrbEnter {
  from { transform: translate(calc(-50% - 228px), -50%) scale(0.24); opacity: 0.12; }
  to   { transform: translate(-50%, -50%) scale(1); opacity: 1; }
}

body.store-page #qrModal .btn-orb-svg {
  width: 14px; height: 14px; stroke: #1a1a1a; display: block;
}

body.store-page #qrModal .btn-orb-path {
  stroke-dasharray: 28; stroke-dashoffset: 28;
}

body.store-page #qrModal .btn-orb-path.is-drawn {
  animation: drawCheck 350ms cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

@keyframes drawCheck {
  from { stroke-dashoffset: 28; }
  to   { stroke-dashoffset: 0;  }
}

body.store-page #qrModal .btn-success-badge {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.26);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96) 0%, rgba(247, 243, 234, 0.92) 100%);
  color: #14110d;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow:
    0 10px 24px rgba(0, 0, 0, 0.16),
    inset 0 1px 0 rgba(255, 255, 255, 0.84);
}

body.store-page #qrModal .btn-success-badge .btn-check-icon {
  width: 13px;
  height: 13px;
}

body.store-page #qrModal #confirmOrderBtn.is-icon-only {
  gap: 0;
}


/* QR progressive reveal */
body.store-page #qrModal .checkout-qr-bg-wrap.is-loading {
  clip-path: inset(0 0 100% 0);
}
body.store-page #qrModal .checkout-qr-bg-wrap.is-revealing {
  animation: qrTopToBottom 0.84s cubic-bezier(0.38, 0, 0.18, 1) both;
}
@keyframes qrTopToBottom {
  from { clip-path: inset(0 0 100% 0); }
  to   { clip-path: inset(0 0 0%   0); }
}
body.store-page #qrModal .checkout-qr-bg-wrap.is-revealing::after {
  content: "";
  position: absolute;
  left: 0; right: 0; height: 8px;
  background: linear-gradient(to bottom, transparent, rgba(255,255,255,0.5), transparent);
  z-index: 20;
  pointer-events: none;
  animation: qrScanWipe 0.84s cubic-bezier(0.38, 0, 0.18, 1) both;
}
@keyframes qrScanWipe {
  from { top: -4px; }
  to   { top: calc(100% - 4px); }
}
body.store-page #qrModal .checkout-qr-bg-overlay .checkout-qr-image {
  display: block; width: 100%; height: 100%;
  object-fit: contain; object-position: center;
  position: relative; z-index: 2; opacity: 1;
}
body.store-page #qrModal .checkout-qr-image.qr-pending { opacity: 1; }
body.store-page #qrModal .checkout-qr-image.qr-revealed { animation: none; }


/* Title animates in after QR reveal (0.84s delay) */
body.store-page #qrModal .checkout-user-page-title.title-post-reveal {
  opacity: 0;
  animation: titleAfterReveal 0.45s cubic-bezier(0.22, 1, 0.36, 1) 0.86s both;
}
@keyframes titleAfterReveal {
  from { opacity: 0; transform: translateY(-5px); }
  to   { opacity: 1; transform: translateY(0); }
}


/* Delivery result in dark card */
body.store-page #qrModal[data-checkout-state="paid_success"] .checkout-main-column,
body.store-page #qrModal[data-checkout-state="delivery_ready"] .checkout-main-column {
  align-content: start;
}

body.store-page #qrModal[data-checkout-state="paid_success"] .checkout-user-page-left,
body.store-page #qrModal[data-checkout-state="delivery_ready"] .checkout-user-page-left {
  width: min(100%, 520px);
  margin: 0;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  gap: 18px;
}
body.store-page #qrModal[data-checkout-state="delivery_ready"] .checkout-main-column {
  align-content: center;
}
body.store-page #qrModal[data-checkout-state="delivery_ready"] #qrWrap,
body.store-page #qrModal[data-checkout-state="delivery_ready"] #checkoutDeliveryWrap {
  max-width: 640px;
  width: 100%;
  justify-self: center;
}
body.store-page #qrModal[data-checkout-state="delivery_ready"] #checkoutDeliveryWrap {
  width: 100%;
}
body.store-page #qrModal[data-checkout-state="delivery_ready"] .checkout-delivery-panel {
  gap: 18px;
  padding: 24px;
  background: linear-gradient(180deg, #151412 0%, #100f0d 100%) !important;
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 24px;
  color: #f0ece4 !important;
  box-shadow:
    0 28px 60px rgba(8, 8, 8, 0.26),
    inset 0 1px 0 rgba(255,255,255,0.05);
}
body.store-page #qrModal[data-checkout-state="delivery_ready"] .checkout-delivery-panel .checkout-card-kicker {
  color: rgba(240,236,228,0.5) !important;
}
body.store-page #qrModal[data-checkout-state="delivery_ready"] .checkout-delivery-head h4 {
  color: #f0ece4 !important;
}
body.store-page #qrModal[data-checkout-state="delivery_ready"] .checkout-delivery-head p {
  color: rgba(240,236,228,0.6) !important;
}
body.store-page #qrModal[data-checkout-state="delivery_ready"] .checkout-delivery-head-actions {
  justify-content: flex-start;
}
body.store-page #qrModal[data-checkout-state="delivery_ready"] .checkout-delivery-status-chip {
  min-height: 30px;
  padding: 0 12px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.12);
  background: rgba(255,255,255,0.06);
  color: rgba(240,236,228,0.82);
  font-size: 12px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
body.store-page #qrModal[data-checkout-state="delivery_ready"] .checkout-delivery-hero {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 14px;
  padding: 16px 18px;
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,0.08);
  background: linear-gradient(180deg, rgba(255,255,255,0.06) 0%, rgba(255,255,255,0.03) 100%);
}
body.store-page #qrModal[data-checkout-state="delivery_ready"] .checkout-delivery-hero-count {
  width: 44px;
  height: 44px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.12);
  background: rgba(255,255,255,0.08);
  color: #f4ede3;
  font-size: 15px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  letter-spacing: 0.08em;
}
body.store-page #qrModal[data-checkout-state="delivery_ready"] .checkout-delivery-hero-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}
body.store-page #qrModal[data-checkout-state="delivery_ready"] .checkout-delivery-hero-copy strong {
  color: #f3ede4;
  font-size: 15px;
  font-weight: 650;
  line-height: 1.4;
}
body.store-page #qrModal[data-checkout-state="delivery_ready"] .checkout-delivery-hero-copy span {
  color: rgba(240,236,228,0.62);
  font-size: 12.5px;
  line-height: 1.6;
}
body.store-page #qrModal[data-checkout-state="delivery_ready"] .checkout-delivery-list {
  gap: 12px;
}
body.store-page #qrModal[data-checkout-state="delivery_ready"] .checkout-delivery-card {
  min-height: 0;
  padding: 16px;
  border-radius: 18px;
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  color: #f0ece4 !important;
  box-shadow: none;
}
body.store-page #qrModal[data-checkout-state="delivery_ready"] .checkout-delivery-card-head {
  align-items: flex-start;
}
body.store-page #qrModal[data-checkout-state="delivery_ready"] .checkout-delivery-item-title {
  color: #f5efe5 !important;
}
body.store-page #qrModal[data-checkout-state="delivery_ready"] .checkout-delivery-value {
  min-height: 84px;
  max-height: 208px;
  background: rgba(8,8,8,0.18);
  border: 1px solid rgba(255,255,255,0.06);
  color: rgba(244,238,229,0.9);
}
body.store-page #qrModal[data-checkout-state="delivery_ready"] .checkout-copy-btn {
  background: rgba(255,255,255,0.06) !important;
  color: rgba(240,236,228,0.78) !important;
  border-color: rgba(255,255,255,0.16) !important;
}
body.store-page #qrModal[data-checkout-state="delivery_ready"] .checkout-copy-btn:hover {
  background: rgba(255,255,255,0.08) !important;
}


/* ============================================================
   Refined product card — demo-inspired redesign v1 (2026-05-22)
   ============================================================ */

/* Per-project accent color tokens */
body.store-page .refined-product-card                  { --rpc-accent: rgba(26,26,26,.22); }
body.store-page .refined-product-card.product-openai   { --rpc-accent: #10a37f; }
body.store-page .refined-product-card.product-kiro     { --rpc-accent: #f59e0b; }
body.store-page .refined-product-card.product-claude   { --rpc-accent: #d97757; }
body.store-page .refined-product-card.product-grok     { --rpc-accent: #4a4a4a; }
body.store-page .refined-product-card.product-gemini   { --rpc-accent: #4285f4; }
body.store-page .refined-product-card.product-outlook  { --rpc-accent: #0078d4; }
body.store-page .refined-product-card.product-google   { --rpc-accent: #34a853; }
body.store-page .refined-product-card.product-apple    { --rpc-accent: #555; }
body.store-page .refined-product-card.product-card     { --rpc-accent: #7c3aed; }

/* Accent bar via border-top — replace the flat top edge */
body.store-page .catalog-product-card.refined-product-card {
  border-top: 4px solid var(--rpc-accent) !important;
  padding: 26px 30px 30px !important;
  transition: transform 260ms cubic-bezier(.2,0,0,1), box-shadow 260ms cubic-bezier(.2,0,0,1) !important;
}

body.store-page .catalog-product-card.refined-product-card:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 22px 52px -10px rgba(26,26,26,.14), 0 4px 14px -4px rgba(26,26,26,.07) !important;
}

/* Eyebrow row — category label + optional hot badge */
body.store-page .refined-product-card .refined-card-eyebrow-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 8px;
}

body.store-page .refined-product-card .refined-card-eyebrow {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
  color: var(--rpc-accent);
  line-height: 1;
  opacity: .82;
}

/* Hot badge */
body.store-page .refined-product-card .refined-card-badge {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .03em;
  padding: 4px 10px;
  border-radius: 6px;
  background: var(--rpc-accent);
  color: #fff;
  line-height: 1.4;
  flex-shrink: 0;
}

/* Description line-clamp: handled in base style */

/* Stock row color coding */
body.store-page .refined-product-card .is-stock-row .refined-card-meta-value {
  font-weight: 600;
  font-size: 13px;
}

body.store-page .refined-product-card .is-stock-row .stock-zero  { color: #dc2626; }
body.store-page .refined-product-card .is-stock-row .stock-low   { color: #d97706; }
body.store-page .refined-product-card .is-stock-row .stock-ok    { color: #16a34a; }

/* Buy button — brand color on hover per project */
body.store-page .refined-product-card.product-openai  .product-buy-btn.is-available:hover,
body.store-page .refined-product-card.product-openai  .bundle-launch-btn:hover { background: #0d9268 !important; }

body.store-page .refined-product-card.product-kiro    .product-buy-btn.is-available:hover { background: #d97706 !important; }

body.store-page .refined-product-card.product-claude  .product-buy-btn.is-available:hover,
body.store-page .refined-product-card.product-claude  .bundle-launch-btn:hover { background: #c55f3b !important; }

body.store-page .refined-product-card.product-gemini  .product-buy-btn.is-available:hover { background: #1a73e8 !important; }

body.store-page .refined-product-card.product-google  .product-buy-btn.is-available:hover { background: #1e8e3e !important; }

body.store-page .refined-product-card.product-outlook .product-buy-btn.is-available:hover { background: #0065b8 !important; }

body.store-page .refined-product-card.product-card    .product-buy-btn.is-available:hover { background: #6d28d9 !important; }

/* Hot product: subtle pulse on accent bar */
body.store-page .refined-product-card.is-hot-product {
  border-top-width: 5px !important;
}


/* ============================================================
   Demo-style product card v2 — 2026-05-22 redesign
   ============================================================ */

/* ---- Reset old refined-card padding for new layout ---- */
body.store-page .catalog-product-card.refined-product-card {
  padding: 0 !important;
  overflow: hidden;
  min-height: 0 !important;
}

body.store-page .refined-product-card .catalog-product-body {
  padding: 20px 22px 22px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  min-height: 0 !important;
}

body.store-page .refined-product-card .refined-card-shell {
  display: flex;
  flex-direction: column;
  gap: 0;
  flex: 1;
}

/* ---- Card header ---- */
body.store-page .refined-product-card .refined-card-header {
  margin-bottom: 0 !important;
}

/* ---- Top row: icon + title block + badge ---- */
body.store-page .refined-product-card .rpc-top-row {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 14px;
}

body.store-page .refined-product-card .rpc-icon-wrap {
  width: 42px;
  height: 42px;
  min-width: 42px;
  border-radius: 12px;
  background: var(--rpc-icon-bg, rgba(26,26,26,.07));
  border: 1px solid var(--rpc-icon-border, rgba(26,26,26,.09));
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 250ms cubic-bezier(.2,0,0,1);
}

body.store-page .refined-product-card:hover .rpc-icon-wrap {
  transform: scale(1.06);
}

/* Per-project icon backgrounds */
body.store-page .product-openai  .rpc-icon-wrap { --rpc-icon-bg: #10a37f14; --rpc-icon-border: #10a37f20; }
body.store-page .product-claude  .rpc-icon-wrap { --rpc-icon-bg: #d9775714; --rpc-icon-border: #d9775720; }
body.store-page .product-gemini  .rpc-icon-wrap { --rpc-icon-bg: #4285f414; --rpc-icon-border: #4285f420; }
body.store-page .product-grok    .rpc-icon-wrap { --rpc-icon-bg: #1d1d1f0d; --rpc-icon-border: #1d1d1f16; }
body.store-page .product-kiro    .rpc-icon-wrap { --rpc-icon-bg: #f59e0b14; --rpc-icon-border: #f59e0b20; }
body.store-page .product-google  .rpc-icon-wrap { --rpc-icon-bg: #34a85314; --rpc-icon-border: #34a85320; }
body.store-page .product-outlook .rpc-icon-wrap { --rpc-icon-bg: #0078d414; --rpc-icon-border: #0078d420; }
body.store-page .product-apple   .rpc-icon-wrap { --rpc-icon-bg: #55555514; --rpc-icon-border: #55555520; }
body.store-page .product-card    .rpc-icon-wrap { --rpc-icon-bg: #7c3aed14; --rpc-icon-border: #7c3aed20; }

body.store-page .refined-product-card .rpc-icon-char {
  font-size: 19px;
  line-height: 1;
  user-select: none;
}

/* ---- Title block ---- */
body.store-page .refined-product-card .rpc-title-block {
  flex: 1 1 auto;
  min-width: 0;
}

body.store-page .refined-product-card .rpc-title-block .refined-card-eyebrow {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--rpc-accent, rgba(26,26,26,.5));
  margin-bottom: 4px;
  display: block;
  opacity: .85;
}

body.store-page .refined-product-card .rpc-title-block .refined-card-title {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: var(--ag-card-ink-strong) !important;
  letter-spacing: -0.01em !important;
  margin: 0 !important;
  line-height: 1.3 !important;
}

/* ---- Badge ---- */
body.store-page .refined-product-card .rpc-badge-wrap {
  flex-shrink: 0;
  align-self: flex-start;
  display: flex;
  flex-direction: row;
  gap: 4px;
  align-items: center;
}

body.store-page .refined-product-card .refined-card-badge {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .03em;
  padding: 4px 10px;
  border-radius: 6px;
  background: var(--rpc-accent, #1a1a1a);
  color: #fff;
  display: inline-block;
  line-height: 1.4;
}

body.store-page .refined-product-card .refined-card-badge.refined-card-badge-official {
  background: linear-gradient(135deg, #1558d6 0%, #0e8fe8 100%);
  color: #fff;
  letter-spacing: .03em;
  font-size: 12px;
}

/* ---- Description ---- */
body.store-page .refined-product-card .refined-card-desc {
  font-size: 13px !important;
  color: #888 !important;
  line-height: 1.55 !important;
  margin: 0 0 0 0 !important;
  -webkit-line-clamp: 5 !important;
}

/* ---- Divider ---- */
body.store-page .refined-product-card .refined-card-rule {
  margin: 16px 0 !important;
}

/* ---- Stats row ---- */
body.store-page .refined-product-card .rpc-stats-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
}

body.store-page .refined-product-card .rpc-stock-pill {
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
}

body.store-page .refined-product-card .rpc-stock-pill.stock-zero { color: #dc2626; }
body.store-page .refined-product-card .rpc-stock-pill.stock-low  { color: #d97706; }
body.store-page .refined-product-card .rpc-stock-pill.stock-ok   { color: #16a34a; }

body.store-page .refined-product-card .rpc-sales-text {
  font-size: 12px;
  font-weight: 600;
  color: #f97316;
}
body.store-page .refined-product-card .rpc-sales-text::before {
  content: '\1F525\00a0';
}

/* ---- Bottom row: price + action ---- */
body.store-page .refined-product-card .rpc-bottom-row {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 10px;
  margin-top: auto;
}

body.store-page .refined-product-card .rpc-price-block {
  display: flex;
  align-items: baseline;
  gap: 1px;
  flex-shrink: 0;
}

body.store-page .refined-product-card .rpc-price-sym {
  font-size: 14px;
  color: var(--ag-card-ink-muted);
  font-weight: 400;
  margin-right: 1px;
}

body.store-page .refined-product-card .rpc-price-num {
  font-size: 34px;
  font-weight: 800;
  color: var(--ag-card-ink-strong);
  letter-spacing: -0.03em;
  line-height: 1;
}

body.store-page .refined-product-card .rpc-price-unit {
  font-size: 12px;
  color: var(--ag-card-ink-muted);
  margin-left: 3px;
}

/* ---- Action block ---- */
body.store-page .refined-product-card .rpc-action-block {
  flex-shrink: 0;
  display: flex;
  align-items: flex-end;
}

body.store-page .refined-product-card .rpc-action-block .product-action-row,
body.store-page .refined-product-card .rpc-action-block .bundle-launch-row,
body.store-page .refined-product-card .rpc-action-block .card-product-action-row {
  margin-top: 0 !important;
  padding-top: 0 !important;
  gap: 8px !important;
}

body.store-page .refined-product-card .rpc-action-block .product-buy-btn,
body.store-page .refined-product-card .rpc-action-block .bundle-launch-btn {
  flex: 0 0 auto !important;
  min-width: 110px !important;
  width: auto !important;
  padding: 10px 18px !important;
  border-radius: 10px !important;
  font-size: 13px !important;
}

body.store-page .refined-product-card .rpc-action-block .qty-box {
  width: 82px !important;
  min-width: 82px !important;
  height: 40px !important;
  min-height: 40px !important;
}

body.store-page .refined-product-card .rpc-action-block .qty-btn {
  min-height: 30px !important;
  height: 30px !important;
}

/* ---- Old meta/footer: hide (now using rpc-stats + rpc-bottom) ---- */
body.store-page .refined-product-card .refined-card-meta,
body.store-page .refined-product-card .refined-card-footer,
body.store-page .refined-product-card .refined-card-eyebrow-row {
  display: none !important;
}

/* ---- Sold-out card ---- */
body.store-page .refined-product-card.is-sold-out {
  opacity: .7;
}

/* ---- Hot card accent bar thicker ---- */
body.store-page .refined-product-card.is-hot-product {
  border-top-width: 5px !important;
}

/* ---- All-products grid: uniform column layout ---- */
body.store-page .all-products-grid {
  grid-template-columns: repeat(auto-fill, minmax(290px, 1fr)) !important;
}

@media (max-width: 680px) {
  body.store-page .all-products-grid {
    grid-template-columns: 1fr !important;
  }
  body.store-page .refined-product-card .rpc-bottom-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
  body.store-page .refined-product-card .rpc-action-block .product-buy-btn {
    min-width: 100% !important;
  }
}


/* ---- Card background: white (override #E3DACC) ---- */
body.store-page .catalog-product-card.refined-product-card {
  background: #ffffff !important;
}

body.store-page .catalog-product-card.refined-product-card:hover {
  background: #ffffff !important;
}

/* ---- Remove stock-low orange (only 2 states now) ---- */
body.store-page .refined-product-card .rpc-stock-pill.stock-low {
  color: #16a34a;
}

body.store-page .refined-product-card .is-stock-row .stock-low {
  color: #16a34a;
}


/* ============================================================
   All Products — grouped layout (2026-05-22 redesign4)
   ============================================================ */

/* Outer container: vertical stack of groups */
body.store-page .all-products-grid {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  grid-template-columns: none !important;
}

/* Each project group block */
body.store-page .all-pg {
  padding: 28px 0 32px;
}

/* Group header */
body.store-page .all-pg-head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 18px;
}

body.store-page .all-pg-label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(26, 26, 26, 0.45);
  line-height: 1;
  position: relative;
  padding-left: 14px;
}

body.store-page .all-pg-label::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 4px;
  height: 14px;
  border-radius: 2px;
  background: rgba(26, 26, 26, 0.2);
}

/* Per-project accent color on the left bar */
body.store-page .all-pg:has(.product-openai)  .all-pg-label::before { background: #10a37f; }
body.store-page .all-pg:has(.product-kiro)    .all-pg-label::before { background: #f59e0b; }
body.store-page .all-pg:has(.product-claude)  .all-pg-label::before { background: #d97757; }
body.store-page .all-pg:has(.product-grok)    .all-pg-label::before { background: #4a4a4a; }
body.store-page .all-pg:has(.product-gemini)  .all-pg-label::before { background: #4285f4; }
body.store-page .all-pg:has(.product-outlook) .all-pg-label::before { background: #0078d4; }
body.store-page .all-pg:has(.product-google)  .all-pg-label::before { background: #34a853; }
body.store-page .all-pg:has(.product-apple)   .all-pg-label::before { background: #555; }
body.store-page .all-pg:has(.product-card)    .all-pg-label::before { background: #7c3aed; }

/* Card grid inside each group */
body.store-page .all-pg-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(290px, 1fr)) !important;
  gap: 18px !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Divider between groups */
body.store-page .all-pg-sep {
  border: none !important;
  border-top: 1px solid rgba(26, 26, 26, 0.07) !important;
  margin: 0 !important;
  padding: 0 !important;
}

@media (max-width: 680px) {
  body.store-page .all-pg-grid {
    grid-template-columns: 1fr !important;
  }
}


/* ---- Remove -> arrow from buy buttons ---- */
body.store-page .refined-product-card .product-buy-btn::after,
body.store-page .refined-product-card .bundle-launch-btn::after {
  content: none !important;
  display: none !important;
}

/* ---- Smoother hover: gentle ease-out, reduced lift ---- */
body.store-page .catalog-product-card.refined-product-card {
  transition: transform 320ms cubic-bezier(0.25, 0.46, 0.45, 0.94),
              box-shadow 320ms cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
  will-change: transform, box-shadow;
}

body.store-page .catalog-product-card.refined-product-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 16px 40px -8px rgba(26, 26, 26, 0.12), 0 3px 10px -3px rgba(26, 26, 26, 0.06) !important;
}

/* Smooth icon scale too */
body.store-page .refined-product-card .rpc-icon-wrap {
  transition: transform 320ms cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
}

/* Product card clarity and compact actions */
body.store-page .catalog-product-card.refined-product-card {
  animation: none !important;
  will-change: auto !important;
  transform: none !important;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body.store-page .catalog-product-card.refined-product-card:hover {
  transform: none !important;
}

body.store-page .refined-product-card.is-sold-out {
  opacity: 1 !important;
}

body.store-page .refined-product-card .catalog-product-body {
  padding: 20px 20px 22px !important;
}

body.store-page .refined-product-card .rpc-icon-img {
  display: block;
  width: 24px;
  height: 24px;
  object-fit: contain;
}

body.store-page .refined-product-card .refined-card-desc {
  display: block !important;
  -webkit-line-clamp: unset !important;
  -webkit-box-orient: unset !important;
  overflow: visible !important;
  color: #565656 !important;
  font-size: 13.5px !important;
  line-height: 1.6 !important;
  font-weight: 400 !important;
  border-left: 3px solid var(--rpc-accent, rgba(26,26,26,.2)) !important;
  padding-left: 10px !important;
  padding-top: 6px !important;
  padding-bottom: 6px !important;
  padding-right: 8px !important;
  margin: 0 0 14px !important;
  background: color-mix(in srgb, var(--rpc-accent, rgba(26,26,26,.2)) 8%, transparent) !important;
  border-radius: 0 4px 4px 0 !important;
}

body.store-page .refined-product-card .rpc-bottom-row {
  gap: 8px !important;
  min-width: 0;
}

body.store-page .refined-product-card .rpc-price-block {
  min-width: 0;
  flex: 1 1 auto;
}

body.store-page .refined-product-card .rpc-price-num {
  font-size: clamp(28px, 2.2vw, 32px) !important;
  letter-spacing: -0.02em !important;
}

body.store-page .refined-product-card .rpc-price-unit {
  font-size: 11.5px !important;
  white-space: nowrap;
}

body.store-page .refined-product-card .rpc-action-block {
  min-width: 0;
  flex: 0 1 auto;
  max-width: 100%;
}

body.store-page .refined-product-card .rpc-action-block .product-action-row,
body.store-page .refined-product-card .rpc-action-block .bundle-launch-row,
body.store-page .refined-product-card .rpc-action-block .card-product-action-row {
  min-width: 0;
  max-width: 100%;
  gap: 6px !important;
}

body.store-page .refined-product-card .rpc-action-block .qty-box {
  width: 74px !important;
  min-width: 74px !important;
  grid-template-columns: 24px minmax(0, 1fr) 24px !important;
}

body.store-page .refined-product-card .rpc-action-block .qty-btn {
  width: 24px !important;
}

body.store-page .refined-product-card .rpc-action-block .product-buy-btn,
body.store-page .refined-product-card .rpc-action-block .bundle-launch-btn {
  min-width: 96px !important;
  height: 40px !important;
  min-height: 40px !important;
  padding: 0 12px !important;
  justify-content: center !important;
  text-align: center !important;
  line-height: 1.2 !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

/* rpc-new-ribbon — pill badge */
body.store-page .refined-product-card .rpc-new-ribbon {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 6;
  pointer-events: none;
}
body.store-page .refined-product-card .rpc-new-ribbon span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  position: static;
  top: auto;
  right: auto;
  width: auto;
  background: var(--rpc-accent, #10a37f);
  color: #fff;
  font-size: 10.5px;
  font-weight: 700;
  text-align: left;
  padding: 3.5px 9px 3.5px 7px;
  border-radius: 20px;
  transform: none;
  box-shadow: 0 2px 10px rgba(0,0,0,.18);
  letter-spacing: 0.4px;
  white-space: nowrap;
  overflow: visible;
}
body.store-page .refined-product-card .rpc-new-ribbon span::before {
  content: '';
  display: inline-block;
  width: 5px;
  height: 5px;
  background: rgba(255,255,255,.92);
  border-radius: 50%;
  flex-shrink: 0;
  animation: rpc-dot-pulse 1.8s ease-in-out infinite;
}
body.store-page .refined-product-card .rpc-new-ribbon span::after {
  display: none;
  animation: none;
}
@keyframes rpc-dot-pulse {
  0%, 100% { opacity: 1;    transform: scale(1);   }
  50%       { opacity: 0.3; transform: scale(0.55); }
}

/* ---- rpc-stock-pill redesign ---- */
body.store-page .refined-product-card .rpc-stock-pill {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  padding: 5px 11px 5px 8px !important;
  border-radius: 20px !important;
}
body.store-page .refined-product-card .rpc-stock-pill::before {
  content: '' !important;
  display: inline-block !important;
  width: 6px !important;
  height: 6px !important;
  border-radius: 50% !important;
  flex-shrink: 0 !important;
  background: currentColor !important;
}
body.store-page .refined-product-card .rpc-stock-pill.stock-ok {
  color: #10b981 !important;
  background: rgba(16,185,129,.12) !important;
}
body.store-page .refined-product-card .rpc-stock-pill.stock-low {
  color: #f97316 !important;
  background: rgba(249,115,22,.12) !important;
}
body.store-page .refined-product-card .rpc-stock-pill.stock-zero {
  color: #9ca3af !important;
  background: rgba(156,163,175,.12) !important;
}
/* ---- rpc-stats-row spacing ---- */
body.store-page .refined-product-card .rpc-stats-row {
  margin-bottom: 8px !important;
}
/* ---- rpc-stock-bar ---- */
body.store-page .refined-product-card .rpc-stock-bar-wrap {
  height: 5px;
  background: rgba(0,0,0,.07);
  border-radius: 6px;
  overflow: hidden;
  margin-bottom: 14px;
}
body.store-page .refined-product-card .rpc-stock-bar {
  height: 100%;
  border-radius: 6px;
  width: var(--bar-w, 0%);
  transition: width 0.8s cubic-bezier(0.2,0,0,1);
  position: relative;
  overflow: hidden;
}
body.store-page .refined-product-card .rpc-stock-bar.stock-ok {
  background: linear-gradient(90deg, #34d399, #10b981);
}
body.store-page .refined-product-card .rpc-stock-bar.stock-low {
  background: linear-gradient(90deg, #fbbf24, #f97316);
}
body.store-page .refined-product-card .rpc-stock-bar.stock-zero {
  background: #d1d5db;
  width: 0% !important;
}
body.store-page .refined-product-card .rpc-stock-bar::after {
  content: '';
  position: absolute;
  top: 0; left: -60%;
  width: 50%; height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.55), transparent);
  animation: rpc-bar-shimmer 2.4s ease-in-out infinite;
}
@keyframes rpc-bar-shimmer {
  0%   { left: -60%; }
  100% { left: 110%; }
}

/* hide card divider */
body.store-page .refined-product-card .refined-card-rule {
  display: none !important;
}

/* ---- refined-card-link redesign ---- */
body.store-page .refined-product-card .refined-card-link {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  width: fit-content !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--rpc-accent, #10a37f) !important;
  text-decoration: none !important;
  border-bottom: none !important;
  padding-bottom: 0 !important;
  margin-top: 4px !important;
  transition: opacity 160ms ease !important;
}
body.store-page .refined-product-card .refined-card-link:hover {
  opacity: 0.7 !important;
  text-decoration: underline !important;
  border-bottom: none !important;
}
body.store-page .refined-product-card .refined-card-link::after {
  content: '\2192' !important;
  font-size: 15px !important;
  line-height: 1 !important;
  display: inline-block !important;
  transition: transform 180ms cubic-bezier(0.2,0,0,1) !important;
}
body.store-page .refined-product-card .refined-card-link:hover::after {
  transform: translateX(4px) !important;
}

/* ---- rpc-title-doc-link (inline after product title) ---- */
body.store-page .refined-product-card .rpc-title-doc-link {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 11.5px;
  font-weight: 600;
  color: var(--rpc-accent, #10a37f);
  text-decoration: none;
  margin-top: 3px;
  opacity: 0.9;
  transition: opacity 150ms ease, gap 150ms ease;
}
body.store-page .refined-product-card .rpc-title-doc-link::after {
  content: '\2192';
  display: inline-block;
  transition: transform 160ms cubic-bezier(0.2,0,0,1);
}
body.store-page .refined-product-card .rpc-title-doc-link:hover {
  opacity: 1;
  text-decoration: underline;
}
body.store-page .refined-product-card .rpc-title-doc-link:hover::after {
  transform: translateX(3px);
}
/* ---- progress bar spacing ---- */
body.store-page .refined-product-card .rpc-stock-bar-wrap {
  margin-top: 10px !important;
  margin-bottom: 18px !important;
}

body.store-page .refined-product-card .rpc-stock-pill { gap: 3px !important; }

/* ── Promo Banner ── */




/* ════════════════════════════════════════════════════════════════
   STORE UI FIXES 20260530：移动端导航 + 英文卡片/首屏适配（追加，最高优先级）
   ════════════════════════════════════════════════════════════════ */

/* ── 汉堡按钮（桌面隐藏） ── */
body.store-page .nav-burger{
  display:none; align-items:center; justify-content:center;
  width:42px; height:42px; border-radius:11px; padding:0;
  border:1px solid rgba(20,20,19,.14); background:rgba(20,20,19,.03);
  cursor:pointer; flex:0 0 auto; transition:background .18s ease, border-color .18s ease;
}
body.store-page .nav-burger:hover{background:rgba(20,20,19,.07);}
body.store-page .nav-burger .nav-burger-bars{position:relative; width:18px; height:14px; display:block;}
body.store-page .nav-burger i{position:absolute; left:0; width:100%; height:2px; border-radius:2px; background:#141413; transition:transform .26s cubic-bezier(.16,1,.3,1), opacity .18s ease, top .26s cubic-bezier(.16,1,.3,1);}
body.store-page .nav-burger i:nth-child(1){top:0;}
body.store-page .nav-burger i:nth-child(2){top:6px;}
body.store-page .nav-burger i:nth-child(3){top:12px;}
body.store-page.nav-open .nav-burger i:nth-child(1){top:6px; transform:rotate(45deg);}
body.store-page.nav-open .nav-burger i:nth-child(2){opacity:0;}
body.store-page.nav-open .nav-burger i:nth-child(3){top:6px; transform:rotate(-45deg);}

/* ── ≤900px：导航改为下拉面板（汉堡控制），下拉项内联手风琴，不再被裁切 ── */
@media (max-width: 900px){
  body.store-page .nav-burger{display:inline-flex;}

  body.store-page .topbar-nav{
    order:99; display:none;
    position:absolute; top:100%; left:0; right:0; width:100%;
    flex-direction:column; align-items:stretch; gap:3px;
    margin:0; padding:10px 14px 16px;
    overflow-x:hidden; overflow-y:auto; max-height:calc(100vh - 60px);
    background:#f4efe3; border-top:1px solid rgba(20,20,19,.10);
    box-shadow:0 26px 50px rgba(20,20,19,.18); z-index:80;
    animation:navPanelIn .26s cubic-bezier(.16,1,.3,1);
  }
  body.store-page.nav-open .topbar-nav{display:flex;}
  @keyframes navPanelIn{from{opacity:0; transform:translateY(-8px);}to{opacity:1; transform:none;}}

  body.store-page .topbar-nav > a.topbar-nav-link,
  body.store-page .topbar-nav > .nav-utility-btn,
  body.store-page .topbar-nav .nav-free-tools-trigger,
  body.store-page .topbar-nav .nav-contact-trigger,
  body.store-page .topbar-nav .nav-language-trigger{
    width:100%; justify-content:space-between; text-align:left;
    border-radius:12px; padding:14px 14px; min-height:52px;
  }
  body.store-page .topbar-nav > a.topbar-nav-link:active,
  body.store-page .topbar-nav .nav-utility-btn:active{background:rgba(20,20,19,.05);}

  body.store-page .nav-contact-menu-shell,
  body.store-page .nav-free-tools-menu-shell,
  body.store-page .nav-language-menu-shell{width:100%;}

  /* 下拉卡片：内联静态、占位、未展开时隐藏（手风琴） */
  body.store-page .nav-contact-card,
  body.store-page .nav-free-tools-card,
  body.store-page .nav-language-card{
    position:static !important; width:100% !important; max-width:none !important;
    transform:none !important; box-shadow:none !important;
    opacity:1 !important; visibility:visible !important; pointer-events:auto !important;
    display:none !important; margin:2px 0 6px;
    background:rgba(20,20,19,.045); border:0; border-radius:12px; padding:6px;
  }
  body.store-page .nav-contact-menu-shell[data-menu-open="true"] .nav-contact-card{display:grid !important;}
  body.store-page .nav-free-tools-menu-shell[data-menu-open="true"] .nav-free-tools-card{display:flex !important; flex-direction:column;}
  body.store-page .nav-language-menu-shell[data-menu-open="true"] .nav-language-card{display:grid !important;}
}

/* ── #3 商品卡片底部自适应：修复英文长单位/按钮溢出被裁切 ── */
body.store-page .refined-product-card .rpc-bottom-row{flex-wrap:nowrap; gap:10px;}
body.store-page .refined-product-card .rpc-price-block{min-width:0; flex:0 1 auto;}
body.store-page .refined-product-card .rpc-price-unit{white-space:normal; word-break:break-word;}
body.store-page .refined-product-card .rpc-action-block{flex:0 0 auto; justify-content:flex-end;}
body.store-page .refined-product-card .rpc-stats-row{flex-wrap:wrap; gap:4px 10px;}
body.store-page .refined-product-card .rpc-sales-text{white-space:nowrap; flex:0 0 auto;}
body.store-page .refined-product-card .rpc-stock-pill{min-width:0;}

/* ── #4 英文首屏标题/副标排版优化（避免每词一行、过大） ── */
body.store-page[data-locale="en"] .anthropic-replica-heading h1{
  max-width:17ch;
  font-size:clamp(46px, 5vw, 70px);
  line-height:1.05;
  letter-spacing:-0.022em;
}
body.store-page[data-locale="en"] .anthropic-replica-aside p{
  max-width:22ch;
  font-size:clamp(19px, 1.5vw, 22px);
  line-height:1.42;
}



/* ════════════════════════════════════════════════════════════════
   STORE CARD HEIGHT FIX 20260530：商品卡片按内容高度排列，
   避免同一行长短描述差异导致价格/购买被顶到底、中部出现大空隙。
   ════════════════════════════════════════════════════════════════ */
body.store-page .refined-product-card{ align-self:stretch; }
/* 等高对齐 + 说明面板撑满，消除价格上方大空隙、按钮底部对齐 */
body.store-page .refined-product-card .refined-card-header{ display:flex; flex-direction:column; flex:1 1 auto; }
body.store-page .refined-product-card .refined-card-desc{ flex:1 1 auto !important; display:flex !important; flex-direction:column; justify-content:center; }


/* Footer TG icon inline with text */
.store-footer-column a .tg-ico { display:inline; }
.store-footer-column a { display:inline-flex; align-items:center; }


/* ============================================================
   Editorial product cards + prism hero (20260603-edcard)
   ============================================================ */
body.store-page .project-grid.enterprise-grid{display:flex !important;flex-direction:column !important;grid-template-columns:none !important;gap:0 !important;}

body.store-page .ed-card{--ed-accent:#c2410c;}
body.store-page .ed-card.product-openai {--ed-accent:#10a37f;}
body.store-page .ed-card.product-kiro   {--ed-accent:#f59e0b;}
body.store-page .ed-card.product-heygen {--ed-accent:#7c6cff;}
body.store-page .ed-card.product-claude {--ed-accent:#d97757;}
body.store-page .ed-card.product-grok   {--ed-accent:#4a4a4a;}
body.store-page .ed-card.product-gemini {--ed-accent:#4285f4;}
body.store-page .ed-card.product-outlook{--ed-accent:#0078d4;}
body.store-page .ed-card.product-google {--ed-accent:#34a853;}
body.store-page .ed-card.product-apple  {--ed-accent:#555;}
body.store-page .ed-card.product-card   {--ed-accent:#7c3aed;}

body.store-page .ed-card{position:relative;background:transparent;border:0;border-top:1px solid var(--ag-border);border-radius:0;box-shadow:none;padding:30px 6px;margin:0;transition:padding-left .35s cubic-bezier(.2,.7,.2,1);}
body.store-page .project-grid.enterprise-grid > .ed-card:last-child{border-bottom:1px solid var(--ag-border);}
body.store-page .ed-card:hover{padding-left:16px;}
body.store-page .ed-card.is-sold-out{opacity:.6;}

body.store-page .ed-cat{display:flex;align-items:center;gap:8px;margin-bottom:14px;font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--ag-muted);}
body.store-page .ed-cat .ed-dot{width:6px;height:6px;border-radius:50%;background:var(--ed-accent);flex:0 0 6px;}

body.store-page .ed-row{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;flex-wrap:wrap;}
body.store-page .ed-left{flex:1;min-width:240px;}
body.store-page .ed-name{font-family:var(--font-sans);font-size:23px;font-weight:600;letter-spacing:-.01em;line-height:1.25;color:var(--ag-text);margin:0 0 10px;display:flex;align-items:baseline;flex-wrap:wrap;gap:9px;}
body.store-page .ed-official{font-family:var(--font-serif);font-style:italic;font-weight:400;font-size:14px;color:var(--ed-accent);letter-spacing:0;}
body.store-page .ed-hot{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--ed-accent);padding:2px 8px;border-radius:999px;}
body.store-page .ed-new{align-self:baseline;font-family:var(--font-serif);font-style:italic;font-weight:400;font-size:14px;letter-spacing:0;color:var(--ed-accent);opacity:.9;}


body.store-page .ed-desc{font-size:13.5px;line-height:1.75;color:var(--ag-muted);max-width:440px;margin:0 0 14px;}
body.store-page .ed-card .rpc-title-doc-link,body.store-page .ed-card .refined-card-link{display:inline-block;font-size:12.5px;color:var(--ed-accent);margin:0 0 12px;text-decoration:none;border-bottom:1px solid transparent;}
body.store-page .ed-card .refined-card-link:hover,body.store-page .ed-card .rpc-title-doc-link:hover{border-bottom-color:var(--ed-accent);}
body.store-page .ed-meta{font-size:12px;color:var(--ag-muted);letter-spacing:.01em;}
body.store-page .ed-meta b{color:var(--ag-text);font-weight:600;}
body.store-page .ed-meta .ed-sep{margin:0 9px;color:var(--ag-border-strong);}

body.store-page .ed-right{flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;gap:16px;text-align:right;min-width:150px;}
body.store-page .ed-price{font-family:var(--font-serif);font-size:40px;font-weight:500;line-height:1;color:var(--ag-text);white-space:nowrap;}
body.store-page .ed-price .ed-yen{font-size:21px;vertical-align:top;margin-right:1px;color:var(--ag-muted);}
body.store-page .ed-price .ed-per{font-family:var(--font-sans);font-size:12px;font-weight:500;color:var(--ag-muted);letter-spacing:.03em;margin-left:5px;}

body.store-page .ed-card .product-action-row{display:flex;flex-direction:column;align-items:flex-end;gap:11px;margin:0;padding:0;border:0;background:transparent;}
body.store-page .ed-card .qty-box{display:inline-flex;align-items:center;border:1px solid var(--ag-border-strong);border-radius:0;overflow:hidden;background:transparent;}
body.store-page .ed-card .qty-btn{width:30px;height:34px;border:0;background:transparent;color:var(--ag-text);font-size:15px;cursor:pointer;line-height:1;}
body.store-page .ed-card .qty-btn:hover{background:var(--ag-card);}
body.store-page .ed-card .qty-value-wrap{width:40px;}
body.store-page .ed-card .qty-value-wrap input{width:40px;height:34px;border:0;border-left:1px solid var(--ag-border);border-right:1px solid var(--ag-border);background:transparent;text-align:center;font-size:13px;color:var(--ag-text);}
body.store-page .ed-card .product-buy-btn{background:transparent;border:1px solid var(--ag-text);color:var(--ag-text);padding:11px 24px;border-radius:0;font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:all .25s ease;font-family:var(--font-sans);white-space:nowrap;box-shadow:none;}
body.store-page .ed-card .product-buy-btn.is-available:hover{background:var(--ed-accent);border-color:var(--ed-accent);color:#fff;}
body.store-page .ed-card .product-buy-btn.is-sold-out{border-color:var(--ag-border-strong);color:var(--ag-muted);cursor:not-allowed;background:transparent;}
body.store-page .ed-card .rpc-new-ribbon{position:absolute;top:18px;right:0;}

@media (max-width:680px){
  body.store-page .ed-row{flex-direction:column;gap:14px;}
  body.store-page .ed-right{flex-direction:row;justify-content:space-between;align-items:center;text-align:left;width:100%;}
  body.store-page .ed-card:hover{padding-left:6px;}
  body.store-page .ed-price{font-size:34px;}
}

.store-hero-prism{margin:6px 0 30px;}
.store-hero-prism svg{width:100%;height:auto;display:block;}
.store-hero-prism .hs-arc{stroke:var(--ag-border);stroke-width:1;fill:none;}
.store-hero-prism .hs-beam{stroke:var(--ag-muted);stroke-width:1.2;fill:none;}
.store-hero-prism .hs-prism{stroke:var(--ag-text);stroke-width:1.3;fill:rgba(194,90,53,.05);}
.store-hero-prism .hs-ray{stroke:var(--ag-text);stroke-width:1;fill:none;opacity:.82;}
.store-hero-prism .hs-ray-accent{stroke:#c2410c;stroke-width:2.2;fill:none;}
.store-hero-prism .hs-core{fill:#c2410c;}
.store-hero-prism .hs-label{font-family:var(--font-serif);font-style:italic;fill:var(--ag-muted);}
.store-hero-prism .hs-cap{font-size:11px;letter-spacing:.22em;fill:var(--ag-muted);font-weight:600;}
.store-hero-prism .hs-draw{stroke-dasharray:1;stroke-dashoffset:1;animation:hsDraw 1.1s cubic-bezier(.4,0,.2,1) forwards;}
.store-hero-prism .hs-beam{animation-delay:.1s;}
.store-hero-prism .hs-prism.hs-draw{animation-delay:.6s;animation-duration:.9s;}
.store-hero-prism .hs-ray.r1{animation-delay:1.0s;}
.store-hero-prism .hs-ray.r2{animation-delay:1.12s;}
.store-hero-prism .hs-ray-accent.r3{animation-delay:1.24s;}
.store-hero-prism .hs-ray.r4{animation-delay:1.36s;}
.store-hero-prism .hs-ray.r5{animation-delay:1.48s;}
@keyframes hsDraw{to{stroke-dashoffset:0;}}
.store-hero-prism .hs-pulse{animation:hsPulse 3.2s ease-in-out infinite;}
@keyframes hsPulse{0%,100%{opacity:.35;transform:scale(1);}50%{opacity:0;transform:scale(2.4);}}
.store-hero-prism .hs-fade{opacity:0;animation:hsFade .9s ease forwards 1.4s;}
@keyframes hsFade{to{opacity:1;}}
@media (prefers-reduced-motion:reduce){.store-hero-prism .hs-draw,.store-hero-prism .hs-pulse,.store-hero-prism .hs-fade{animation:none;stroke-dashoffset:0;opacity:1;}}


/* product name brand icon (20260603-edcard2) */
body.store-page .ed-name-icon{width:24px;height:24px;flex:0 0 24px;object-fit:contain;border-radius:5px;align-self:center;}
@media (max-width:680px){body.store-page .ed-name-icon{width:20px;height:20px;flex:0 0 20px;}}


/* ghost-capsule quantity selector + row layout (20260603-edcard3) */
body.store-page .ed-card .product-action-row{flex-direction:row !important;align-items:center;justify-content:flex-end;gap:14px;flex-wrap:wrap;}
body.store-page .ed-card .qty-box{display:inline-flex;align-items:center;gap:2px;padding:4px;border-radius:999px;border:1px solid transparent;background:transparent;overflow:visible;transition:.25s;}
body.store-page .ed-card .qty-box:hover{border-color:var(--ag-border);background:rgba(0,0,0,.02);}
body.store-page .ed-card .qty-btn{background:none;border:none;width:30px;height:30px;border-radius:50%;font-size:16px;color:var(--ag-muted);cursor:pointer;display:grid;place-items:center;transition:.2s;line-height:1;}
body.store-page .ed-card .qty-btn:hover{background:var(--ag-text);color:var(--ag-body-bg);}
body.store-page .ed-card .qty-value-wrap{width:auto;}
body.store-page .ed-card .qty-value-wrap input{width:34px;min-width:30px;height:auto;border:0;border-left:0;border-right:0;background:transparent;text-align:center;font-size:14px;font-weight:600;color:var(--ag-text);}


/* action row: price on its own row; quantity-left + buy-right same row (20260603-edcard4) */
body.store-page .ed-card .product-action-row{display:flex !important;flex-direction:row !important;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:nowrap !important;}
/* enlarged English heading (font unchanged) */
body.store-page .control-bar-sub-en{font-size:30px;line-height:1.25;margin:0;}
@media (max-width:680px){
  body.store-page .ed-right{flex-direction:column;align-items:stretch;width:100%;text-align:left;}
  body.store-page .ed-price{text-align:left;}
  body.store-page .ed-card .product-action-row{justify-content:space-between;}
  body.store-page .control-bar-sub-en{font-size:23px;}
}


/* ===== refinements 20260603-edcard5 ===== */
/* English heading -> Fraunces italic 19px (eyebrow spec) */
body.store-page .control-bar-sub-en{font-family:"Fraunces","Songti SC",Georgia,serif;font-style:italic;font-size:19px;font-weight:400;line-height:1.45;}

/* qty +/- buttons: perfect circle hover (kill default padding -> oval) */
body.store-page .ed-card .qty-btn{width:30px;height:30px;min-width:30px;padding:0;box-sizing:border-box;flex:0 0 30px;border-radius:50%;}

/* qty number: clearly editable custom input */
body.store-page .ed-card .qty-value-wrap{width:auto;}
body.store-page .ed-card .qty-value-wrap input{width:42px;min-width:38px;height:30px;cursor:text;border-radius:8px;transition:background .15s,box-shadow .15s;}
body.store-page .ed-card .qty-value-wrap input:hover{background:rgba(0,0,0,.045);}
body.store-page .ed-card .qty-value-wrap input:focus{outline:none;background:rgba(0,0,0,.06);box-shadow:inset 0 0 0 1px var(--ag-border-strong);}


/* ===== self-hosted Fraunces (China-safe, no Google Fonts) 20260603-edcard6 ===== */
@font-face{font-family:"Fraunces";font-style:italic;font-weight:400;font-display:swap;src:url("/static/fonts/fraunces-latin-400-italic.woff2?v=1") format("woff2");}
@font-face{font-family:"Fraunces";font-style:normal;font-weight:400;font-display:swap;src:url("/static/fonts/fraunces-latin-400-normal.woff2?v=1") format("woff2");}
@font-face{font-family:"Fraunces";font-style:normal;font-weight:600;font-display:swap;src:url("/static/fonts/fraunces-latin-600-normal.woff2?v=1") format("woff2");}


/* product price-rise notice (20260604) */
body.store-page .ed-notice{display:inline-block;margin:2px 0 12px;font-size:12.5px;font-weight:600;line-height:1.5;color:#b23a2c;background:rgba(178,58,44,.08);border:1px solid rgba(178,58,44,.28);border-radius:8px;padding:6px 12px;max-width:440px;}

body.store-page .anthropic-featured-asset-frame{display:block;width:min(96%,620px);max-width:none;aspect-ratio:1/1;height:auto;border:0;background:transparent;}
@media (max-width:900px){body.store-page .anthropic-featured-asset-frame{width:min(92%,440px);}}
body.store-page .anthropic-featured-card--globe{padding:0;display:block;width:100%;}
body.store-page .anthropic-featured-globe{display:block;width:100%;height:clamp(720px,104vh,1200px);border:0;background:#eae6dc;border-radius:inherit;}
@media (max-width:900px){body.store-page .anthropic-featured-globe{height:clamp(440px,66vh,700px);}}
/* globe-hero-flatten */
body.store-page .anthropic-featured-bg{background:#eae6dc!important;}
body.store-page .anthropic-featured-bg::before{display:none!important;}
body.store-page .anthropic-featured-card--globe{padding:0!important;color:inherit;}
/* globe-hero-sticky-scroll */
body.store-page .globe-hero{position:relative;height:240vh;}
body.store-page .globe-hero-sticky{position:sticky;top:0;height:100vh;overflow:hidden;}
body.store-page .globe-hero-frame{display:block;width:100%;height:100%;border:0;background:#f0eee6;}
@media (max-width:900px){body.store-page .globe-hero{height:220vh;}}

/* delivery-preserve-newline */
.delivery-copy-card-plain-value{white-space:pre-wrap!important;word-break:break-word;text-align:left;line-height:1.55;}
.history-code-list .delivery-copy-card-plain-value,.account-code-list .delivery-copy-card-plain-value{white-space:pre-wrap!important;}

/* ════════════════════════════════════════════════════════════════
   NAV POLISH 20260709：顶部导航悬停 = 纯下划线（移除悬停外框/底色），
   联系支持悬停自动展开下拉（桌面端），与 anthropic.com 一致。
   ════════════════════════════════════════════════════════════════ */
body.store-page .topbar-nav .topbar-nav-link:hover,
body.store-page .topbar-nav .nav-link:hover,
body.store-page .topbar-nav .nav-utility-btn:hover,
body.store-page .topbar-nav .topbar-nav-link:focus-visible,
body.store-page .topbar-nav .nav-utility-btn:focus-visible {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
  outline: none;
}
@media (hover: hover) and (pointer: fine) and (min-width: 901px) {
  /* 悬停桥：填补触发按钮与下拉卡片之间的 10px 空隙，防止移动过程中丢失 hover */
  body.store-page .nav-contact-card::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: -14px;
    height: 14px;
  }
  body.store-page .nav-contact-menu-shell:hover .nav-contact-card,
  body.store-page .nav-contact-menu-shell:focus-within .nav-contact-card {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translate(-50%, 0);
  }
  body.store-page .nav-contact-menu-shell:hover .nav-contact-trigger::after,
  body.store-page .nav-contact-menu-shell:focus-within .nav-contact-trigger::after {
    opacity: 1;
    transform: scaleX(1);
  }
  body.store-page .nav-contact-menu-shell:hover .nav-contact-chevron,
  body.store-page .nav-contact-menu-shell:focus-within .nav-contact-chevron {
    transform: rotate(225deg) translateY(-1px);
  }
}
@media (hover: hover) and (pointer: fine) and (min-width: 901px) and (max-width: 900px) { /* noop guard */ }
@media (hover: hover) and (pointer: fine) and (max-width: 900px) {
  /* 窄屏卡片左对齐时的悬停展开位移修正 */
  body.store-page .nav-contact-menu-shell:hover .nav-contact-card {
    transform: translate(0, 0);
  }
}


/* ── NAV POLISH v2 20260709：改用真实 text-decoration 下划线（anthropic 同款，不受伪元素/层叠影响） ── */
body.store-page .topbar-nav .topbar-nav-link:hover,
body.store-page .topbar-nav .nav-link:hover,
body.store-page .topbar-nav .nav-utility-btn:hover,
body.store-page .topbar-nav .nav-contact-menu-shell:hover .nav-contact-trigger,
body.store-page .topbar-nav [data-menu-open="true"] > .nav-utility-btn,
body.store-page .topbar-nav [data-menu-open="true"].nav-utility-btn {
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 6px !important;
  text-decoration-color: currentColor !important;
}
/* 兼容按钮内 span 包裹文本的情况 */
body.store-page .topbar-nav .nav-utility-btn:hover span,
body.store-page .topbar-nav .nav-contact-menu-shell:hover .nav-contact-trigger span {
  text-decoration: inherit;
}


/* ── NAV POLISH v3 20260709：单一文字下划线（去双线/去方格），下拉项同款 ── */
/* 1) 关闭旧伪元素下划线，避免与 text-decoration 双线重叠 */
body.store-page .topbar-nav .topbar-nav-link::after,
body.store-page .topbar-nav .nav-link::after,
body.store-page .topbar-nav .nav-utility-btn::after{display:none !important;}
/* 2) 顶部导航：悬停 / 菜单展开 = 纯文字下划线，无底色无边框 */
body.store-page .topbar-nav .topbar-nav-link:hover,
body.store-page .topbar-nav .nav-link:hover,
body.store-page .topbar-nav .nav-utility-btn:hover,
body.store-page .topbar-nav .nav-free-tools-menu-shell:hover .nav-free-tools-trigger,
body.store-page .topbar-nav .nav-contact-menu-shell:hover .nav-contact-trigger,
body.store-page .topbar-nav .nav-language-menu-shell:hover .nav-language-trigger,
body.store-page .topbar-nav [data-menu-open="true"] > .nav-utility-btn{
  text-decoration:underline !important;text-decoration-thickness:1px !important;
  text-underline-offset:6px !important;text-decoration-color:currentColor !important;
  background:transparent !important;border-color:transparent !important;box-shadow:none !important;
}
/* 3) 下拉项 hover：去掉方格底色，改文字下划线 */
body.store-page .nav-free-tools-item:hover,
body.store-page .nav-free-tools-item:focus-visible,
body.store-page .nav-contact-link:hover,
body.store-page .nav-contact-link:focus-visible,
body.store-page .nav-language-option:hover,
body.store-page .nav-language-option:focus-visible{
  background:transparent !important;
  text-decoration:underline !important;text-decoration-thickness:1px !important;text-underline-offset:4px !important;
}
body.store-page .nav-contact-link:hover span,
body.store-page .nav-free-tools-item:hover span,
body.store-page .nav-language-option:hover span{text-decoration:inherit;}


/* ── NAV POLISH v4 20260709：下拉项只给文字下划线，箭头↗ / 语言圆点• 不下划线 ── */
body.store-page .nav-contact-link:hover,
body.store-page .nav-contact-link:focus-visible,
body.store-page .nav-language-option:hover,
body.store-page .nav-language-option:focus-visible{
  text-decoration:none !important;
}
body.store-page .nav-contact-link:hover span,
body.store-page .nav-contact-link:focus-visible span,
body.store-page .nav-language-option:hover span,
body.store-page .nav-language-option:focus-visible span{
  text-decoration:underline !important;text-decoration-thickness:1px !important;text-underline-offset:4px !important;
}
/* 伪元素（箭头/圆点）隔离，绝不参与下划线 */
body.store-page .nav-contact-link::after,
body.store-page .nav-language-option::after,
body.store-page .nav-language-option.is-active::after{
  text-decoration:none !important;display:inline-block;
}

/* ================================================================
   DARK MODE - premium charcoal (20260716 v2). Scoped html.theme-dark.
   Fully additive; light theme untouched. Rollback: delete to EOF.
   ================================================================ */
html.theme-dark {
  --ag-body-bg:#1f1f1e; --ag-bg:#1f1f1e;
  --ag-card:#171717; --ag-ivory:#141414; --ag-cream:#161616;
  --ag-card-soft:#161616; --ag-card-plain:#141414;
  --ag-text:#f5f5f5; --ag-muted:#a3a3a3; --ag-soft:rgba(255,255,255,0.45); --ag-faint:rgba(255,255,255,0.45);
  --ag-border:rgba(255,255,255,0.10); --ag-border-strong:rgba(255,255,255,0.20);
  --ag-footer:#1f1f1e;
  --page-bg:#1f1f1e; --page-bg-strong:#1f1f1e;
  --surface:#171717; --surface-strong:#1e1e1e; --surface-deep:#1e1e1e;
  --card-surface:#161616; --card-surface-hover:#1f1f1f;
  --ink:#f5f5f5; --ink-soft:#e5e5e5; --muted:#a3a3a3; --muted-strong:#c8c8c8;
  --line:rgba(255,255,255,0.10); --line-strong:rgba(255,255,255,0.20);
  --success:#4ade80; --success-soft:rgba(74,222,128,0.14);
  --danger:#f87a5c; --danger-soft:rgba(248,122,92,0.16);
  --warning:#e6b657; --warning-soft:rgba(230,182,87,0.16);
  --brand-openai:#10b981; --brand-claude:#e8875a; --brand-gemini:#6ba3ff;
  --brand-grok:#c3a3c8; --brand-google:#e6b45a; --brand-apple:#c8ccd4; --brand-card:#a97bf0;
}
html.theme-dark body.store-page, html.theme-dark body {
  --surface:#171717 !important; --surface-strong:#1e1e1e !important; --surface-light:#232323 !important;
  --border:rgba(255,255,255,0.10) !important; --border-strong:rgba(255,255,255,0.20) !important;
}
html.theme-dark body { background:#1f1f1e; }
html.theme-dark .shell, html.theme-dark .store-shell, html.theme-dark .editorial-shell,
html.theme-dark main.shell { background:#1f1f1e !important; }

html.theme-dark body.store-page::before {
  content:""; position:fixed; inset:0; z-index:-1; pointer-events:none;
  background:
    radial-gradient(720px 460px at 84% -8%, rgba(16,185,129,0.07), transparent 62%),
    radial-gradient(560px 400px at 10% 6%, rgba(107,163,255,0.05), transparent 62%);
}

html.theme-dark .topbar, html.theme-dark .store-topbar, html.theme-dark .enterprise-topbar {
  background:rgba(12,12,12,0.72) !important;
  -webkit-backdrop-filter:saturate(1.3) blur(16px); backdrop-filter:saturate(1.3) blur(16px);
  border-color:rgba(255,255,255,0.08) !important;
}
html.theme-dark .topbar-nav-link, html.theme-dark .nav-link, html.theme-dark .nav-utility-btn { color:rgba(255,255,255,0.80) !important; }
html.theme-dark .topbar-nav-link:hover, html.theme-dark .nav-link:hover, html.theme-dark .nav-utility-btn:hover,
html.theme-dark .topbar-nav-link.active { color:#ffffff !important; }
html.theme-dark .topbar-brand, html.theme-dark .brand-mini, html.theme-dark .brand-mini strong, html.theme-dark .brand-text { color:#f5f5f5 !important; }

html.theme-dark .section-kicker, html.theme-dark .ed-cat { color:rgba(255,255,255,0.55) !important; }
html.theme-dark .anthropic-replica-heading h1, html.theme-dark .anthropic-replica-line { color:#ffffff !important; }
html.theme-dark .ed-title, html.theme-dark .refined-card-title,
html.theme-dark .catalog-product-card.refined-product-card .refined-card-title { color:#ffffff !important; font-weight:600 !important; }
html.theme-dark .ed-price, html.theme-dark .ed-price-num { color:#ffffff !important; }
html.theme-dark .ed-desc, html.theme-dark .refined-card-desc,
html.theme-dark .catalog-product-card.refined-product-card .refined-card-desc { color:#b3b3b3 !important; }
html.theme-dark .ed-stock, html.theme-dark .ed-sold { color:#c8c8c8 !important; }

html.theme-dark .ed-card { border-top-color:rgba(255,255,255,0.09) !important; transition:background .25s ease, padding-left .35s cubic-bezier(.2,.7,.2,1), box-shadow .25s ease !important; }
html.theme-dark .project-grid.enterprise-grid > .ed-card:last-child { border-bottom-color:rgba(255,255,255,0.09) !important; }
html.theme-dark .ed-card:hover { background:rgba(255,255,255,0.025) !important; box-shadow:inset 3px 0 0 var(--ed-accent) !important; }
html.theme-dark .ed-card.product-grok { --ed-accent:#c3a3c8 !important; }
html.theme-dark .ed-card.product-apple { --ed-accent:#c8ccd4 !important; }
html.theme-dark .ed-card.product-openai { --ed-accent:#10b981 !important; }
html.theme-dark .ed-card.product-google { --ed-accent:#4ade80 !important; }

html.theme-dark input, html.theme-dark textarea, html.theme-dark select {
  background:rgba(255,255,255,0.05) !important; color:#f5f5f5 !important; border-color:rgba(255,255,255,0.14) !important;
}
html.theme-dark input::placeholder, html.theme-dark textarea::placeholder { color:rgba(255,255,255,0.40) !important; }
html.theme-dark input:focus, html.theme-dark textarea:focus, html.theme-dark select:focus {
  background:rgba(255,255,255,0.08) !important; border-color:rgba(255,255,255,0.32) !important; box-shadow:0 0 0 3px rgba(255,255,255,0.06) !important;
}

html.theme-dark .project-switcher-btn { color:rgba(255,255,255,0.55) !important; }
html.theme-dark .project-switcher-btn.is-active, html.theme-dark .project-switcher-btn:hover { color:#ffffff !important; }

html.theme-dark .ghost:hover, html.theme-dark .project-link-btn.ghost:hover, html.theme-dark .nav-link:hover,
html.theme-dark .nav-utility-btn:hover, html.theme-dark .copy-btn:hover, html.theme-dark .product-inline-link:hover,
html.theme-dark .guide-link:hover, html.theme-dark .activate-nav-btn:hover {
  background:rgba(255,255,255,0.06) !important; border-color:rgba(255,255,255,0.22) !important;
}

html.theme-dark .product-buy-btn.is-available,
html.theme-dark .refined-product-card .product-buy-btn.is-available,
html.theme-dark .project-link-btn:not(.ghost),
html.theme-dark .bundle-primary-btn, html.theme-dark .bundle-launch-btn,
html.theme-dark .card-bin-picker-confirm, html.theme-dark .qty-modal-confirm,
html.theme-dark #checkOrderBtn, html.theme-dark #confirmOrderBtn,
html.theme-dark #acceptPurchaseNoticeBtn, html.theme-dark #verifyCardGuideBtn {
  background:#f5f5f5 !important; background-image:none !important; border-color:#f5f5f5 !important;
  color:#0a0a0a !important; font-weight:600 !important;
}
html.theme-dark .product-buy-btn.is-available:hover,
html.theme-dark .refined-product-card .product-buy-btn.is-available:hover,
html.theme-dark .project-link-btn:not(.ghost):hover,
html.theme-dark .bundle-primary-btn:hover, html.theme-dark .bundle-launch-btn:hover,
html.theme-dark .qty-modal-confirm:hover, html.theme-dark #checkOrderBtn:hover,
html.theme-dark #confirmOrderBtn:hover, html.theme-dark #verifyCardGuideBtn:hover {
  background:#ffffff !important; border-color:#ffffff !important; color:#0a0a0a !important;
  box-shadow:0 8px 26px -12px rgba(255,255,255,0.55) !important;
}
html.theme-dark .product-buy-btn.is-sold-out {
  background:rgba(255,255,255,0.05) !important; border-color:rgba(255,255,255,0.12) !important; color:rgba(255,255,255,0.5) !important;
}
html.theme-dark button:not(.ghost):not(.project-switcher-btn) { color:#f5f5f5; }
html.theme-dark #themeToggleBtn.nav-primary-cta { background:transparent !important; border-color:rgba(255,255,255,0.18) !important; color:#f5f5f5 !important; }
html.theme-dark .nav-primary-cta { background:#f5f5f5 !important; border-color:#f5f5f5 !important; color:#0a0a0a !important; }

html.theme-dark img[src*="openai-text"], html.theme-dark img[src*="openai-color"],
html.theme-dark img[src*="claude-text"], html.theme-dark img[src*="grok-text"],
html.theme-dark img[src*="grok-color"], html.theme-dark img[src*="gemini-text"],
html.theme-dark img[src*="apple-logo"], html.theme-dark img[src*="ai-mark-white"],
html.theme-dark img[src*="card-icon-openai"], html.theme-dark img[src*="card-icon-grok"],
html.theme-dark img[src*="card-icon-cursor"], html.theme-dark img[src*="card-icon-apple"] {
  filter:brightness(0) invert(1) !important;
}

html.theme-dark #qrModal #qrWrap.qr {
  background:transparent !important;
  border-radius:0 !important;
  padding:0 !important;
}

html.theme-dark .summary-box { background:rgba(255,255,255,0.03); }
html.theme-dark .dock-kicker, html.theme-dark .purchase-proof-kicker,
html.theme-dark .purchase-notice-intro-kicker { color:rgba(255,255,255,0.50) !important; }
html.theme-dark .checkout-stage-title { color:#f5f5f5 !important; }
html.theme-dark .qty-modal-step { color:#f5f5f5 !important; }
html.theme-dark .purchase-proof-card, html.theme-dark .activate-batch-results,
html.theme-dark .activate-feedback-card, html.theme-dark .activate-feedback-item,
html.theme-dark .gptlink-result-url, html.theme-dark .purchase-notice-intro-card { background:#1a1a1a !important; }
html.theme-dark .nav-account-card, html.theme-dark .nav-language-card,
html.theme-dark .nav-free-tools-card, html.theme-dark .nav-contact-card {
  background:#171717 !important; border-color:rgba(255,255,255,0.12) !important;
}
html.theme-dark .nav-account-card-label { color:rgba(255,255,255,0.60) !important; }
html.theme-dark .nav-account-card-account, html.theme-dark #accountMenuValue { color:#f5f5f5 !important; }
html.theme-dark .nav-account-card-link { color:#f5f5f5 !important; }
html.theme-dark .nav-account-card-link:hover, html.theme-dark .nav-account-card-link:focus-visible { background:rgba(255,255,255,0.06) !important; }

html.theme-dark .anthropic-featured-bg, html.theme-dark .anthropic-featured-globe,
html.theme-dark .globe-hero-frame, html.theme-dark .anthropic-featured-card--globe[data-globe-shell],
html.theme-dark .globe-poster, html.theme-dark [data-globe-shell] .anthropic-featured-globe { background:#0a0a0a !important; }
/* END DARK MODE v2 */

html.theme-dark .nav-contact-link { color:#e5e5e5 !important; }
html.theme-dark .nav-contact-link:hover { background:rgba(255,255,255,0.06) !important; color:#ffffff !important; }


/* ================================================================
   DARK HERO + CHECKOUT (20260716 v3). Scoped html.theme-dark.
   ================================================================ */
/* hide the cream globe section in dark */
html.theme-dark .anthropic-featured-replica { display:none !important; }

/* full-bleed cosmic hero */
html.theme-dark .anthropic-replica-hero {
  position:relative;
  margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); width:100vw;
  min-height:clamp(560px, 84vh, 900px);
  display:flex; align-items:center;
  background:#05060a url('/static/dark-hero-bg.png?v=1') center right / cover no-repeat;
  overflow:hidden;
  border:0; border-radius:0;
}
html.theme-dark .anthropic-replica-hero::before {
  content:""; position:absolute; inset:0; pointer-events:none;
  background:
    linear-gradient(90deg, rgba(5,6,10,0.92) 0%, rgba(5,6,10,0.66) 30%, rgba(5,6,10,0.18) 58%, rgba(5,6,10,0.02) 100%),
    linear-gradient(0deg, rgba(5,6,10,0.55) 0%, rgba(5,6,10,0) 42%);
}
html.theme-dark .anthropic-replica-grid {
  position:relative; z-index:1; display:block !important;
  max-width:1240px; margin:0 auto; width:100%;
  padding:0 clamp(24px, 5vw, 72px);
}
html.theme-dark .anthropic-replica-heading { max-width:none !important; padding-left:0 !important; }
html.theme-dark .anthropic-replica-heading h1 {
  color:#ffffff !important; text-shadow:0 2px 40px rgba(0,0,0,0.55);
  letter-spacing:-0.03em;
}
html.theme-dark .anthropic-replica-aside {
  margin-top:22px !important; padding-top:0 !important; justify-items:start !important;
}
html.theme-dark .anthropic-replica-aside p {
  color:rgba(255,255,255,0.82) !important; text-shadow:0 1px 24px rgba(0,0,0,0.5);
  max-width:38ch;
}
/* hero CTA (dark only) */
.hero-dark-cta { display:none; }
html.theme-dark .hero-dark-cta {
  display:inline-flex; align-items:center; gap:10px; margin-top:32px;
  padding:14px 30px; border-radius:999px;
  background:#f5f5f5; color:#0a0a0a !important; font-weight:600; font-size:16px;
  text-decoration:none; letter-spacing:.01em;
  box-shadow:0 10px 34px -12px rgba(255,255,255,0.45);
  transition:transform .2s ease, box-shadow .2s ease, background .2s ease;
}
html.theme-dark .hero-dark-cta::after { content:"\2192"; font-size:18px; line-height:1; transition:transform .2s ease; }
html.theme-dark .hero-dark-cta:hover { transform:translateY(-2px); background:#ffffff; box-shadow:0 16px 44px -12px rgba(255,255,255,0.6); }
html.theme-dark .hero-dark-cta:hover::after { transform:translateX(4px); }

/* ---- checkout / payment modal: force dark ---- */
html.theme-dark #qrModal .checkout-layout { background:#141416 !important; border-color:rgba(255,255,255,0.10) !important; box-shadow:0 30px 100px rgba(0,0,0,0.6) !important; }
html.theme-dark #qrModal .checkout-right { background:#141416 !important; }
html.theme-dark #qrModal .checkout-left,
html.theme-dark .modal.is-qr-view .checkout-left,
html.theme-dark .modal.is-qr-view .checkout-right { background:linear-gradient(180deg,#161616 0%,#0f0f0f 100%) !important; }
html.theme-dark #qrModal .modal-box { background:#141416 !important; }

html.theme-dark #qrModal .summary-box,
html.theme-dark #qrModal .checkout-card,
html.theme-dark #qrModal .pay-method-box,
html.theme-dark #qrModal .summary-box.pay-method-box { background:#1c1c1e !important; border-color:rgba(255,255,255,0.10) !important; }

/* checkout text */
html.theme-dark #qrModal .checkout-stage-title,
html.theme-dark #qrModal .checkout-right h3,
html.theme-dark #qrModal .checkout-right h4,
html.theme-dark #qrModal .summary-line strong,
html.theme-dark #qrModal .summary-line span,
html.theme-dark #qrModal .checkout-card strong,
html.theme-dark #qrModal .pay-method-brand strong { color:#f5f5f5 !important; }
html.theme-dark #qrModal .checkout-stage-desc,
html.theme-dark #qrModal .checkout-stage-kicker,
html.theme-dark #qrModal .dock-kicker,
html.theme-dark #qrModal .meta,
html.theme-dark #qrModal .muted,
html.theme-dark #qrModal .checkout-secure-note { color:rgba(255,255,255,0.58) !important; }

/* order-id pill / copy area */
html.theme-dark #qrModal .checkout-copy-btn,
html.theme-dark #qrModal .checkout-link-btn,
html.theme-dark #qrModal .order-id-pill,
html.theme-dark #qrModal .checkout-order-id { background:rgba(255,255,255,0.06) !important; border-color:rgba(255,255,255,0.12) !important; color:#e5e5e5 !important; }

/* contact input inside checkout */
html.theme-dark #qrModal #checkoutContactInput { background:rgba(255,255,255,0.05) !important; color:#f5f5f5 !important; border-color:rgba(255,255,255,0.14) !important; }

/* Only the actual QR surface stays white/scannable, never its checkout column. */
html.theme-dark #qrModal .checkout-qr-bg-overlay,
html.theme-dark #qrModal .checkout-qr-card,
html.theme-dark #qrModal .checkout-qr-image { background:#ffffff !important; }
/* alipay banner keeps its blue (has own bg) - leave */

/* logged-in success chip keeps green but on dark */
html.theme-dark #qrModal .checkout-inline-notice { background:rgba(74,222,128,0.10) !important; border-color:rgba(74,222,128,0.28) !important; color:#d7f5e3 !important; }
/* END DARK HERO + CHECKOUT */


/* ================================================================
   DARK CHECKOUT-USER (20260716 v3) — logged-in checkout flow. Scoped.
   ================================================================ */
/* panels / cards -> dark */
html.theme-dark #qrModal .checkout-user-page-left,
html.theme-dark #qrModal .checkout-user-info-box,
html.theme-dark #qrModal .checkout-user-contact-card,
html.theme-dark #qrModal .checkout-user-summary-shell,
html.theme-dark #qrModal .checkout-user-price-box {
  background:#1c1c1e !important; border-color:rgba(255,255,255,0.10) !important;
}
html.theme-dark #qrModal .checkout-user-avatar { background:rgba(255,255,255,0.10) !important; color:#f5f5f5 !important; }

/* headings / values -> light */
html.theme-dark #qrModal .checkout-user-page-title,
html.theme-dark #qrModal .checkout-user-info-title,
html.theme-dark #qrModal .checkout-user-section-title,
html.theme-dark #qrModal .checkout-user-summary-title,
html.theme-dark #qrModal .checkout-user-summary-val,
html.theme-dark #qrModal .checkout-user-summary-product,
html.theme-dark #qrModal .checkout-user-total-amount,
html.theme-dark #qrModal .checkout-user-total-row { color:#f5f5f5 !important; }

/* supporting text -> muted light */
html.theme-dark #qrModal .checkout-user-subtitle,
html.theme-dark #qrModal .checkout-user-info-desc,
html.theme-dark #qrModal .checkout-user-input-hint,
html.theme-dark #qrModal .checkout-user-secure-note,
html.theme-dark #qrModal .checkout-user-section-label,
html.theme-dark #qrModal .checkout-user-payment-label,
html.theme-dark #qrModal .checkout-user-summary-row,
html.theme-dark #qrModal .checkout-user-price-row { color:rgba(255,255,255,0.58) !important; }

/* inputs */
html.theme-dark #qrModal .checkout-user-input {
  background:rgba(255,255,255,0.05) !important; color:#f5f5f5 !important; border-color:rgba(255,255,255,0.14) !important;
}
html.theme-dark #qrModal .checkout-user-input::placeholder { color:rgba(255,255,255,0.40) !important; }

/* dividers / separators */
html.theme-dark #qrModal .checkout-user-divider,
html.theme-dark #qrModal .checkout-user-price-sep,
html.theme-dark #qrModal .checkout-user-summary-row,
html.theme-dark #qrModal .checkout-user-price-row { border-color:rgba(255,255,255,0.08) !important; }

/* back button */
html.theme-dark #qrModal .checkout-user-back-btn {
  background:rgba(255,255,255,0.04) !important; border-color:rgba(255,255,255,0.12) !important; color:#f5f5f5 !important;
}
/* CTA stays white/solid (primary) - ensure dark text */
html.theme-dark #qrModal .checkout-user-cta { background:#f5f5f5 !important; color:#0a0a0a !important; border-color:#f5f5f5 !important; }
html.theme-dark #qrModal .checkout-user-cta:hover { background:#ffffff !important; }

/* status pills */
html.theme-dark #qrModal .checkout-status-pill {
  background:rgba(255,255,255,0.08) !important; color:#e5e5e5 !important; border-color:rgba(255,255,255,0.12) !important;
}
html.theme-dark #qrModal .checkout-status-pill.state-signed-in,
html.theme-dark #qrModal .checkout-status-pill.state-contact-ready {
  background:rgba(74,222,128,0.14) !important; color:#8ff0b5 !important; border-color:rgba(74,222,128,0.30) !important;
}
/* info-box (logged-in confirm) subtle green keep */
html.theme-dark #qrModal .checkout-user-info-box.is-signed-in,
html.theme-dark #qrModal .checkout-user-info-box.state-signed-in {
  background:rgba(74,222,128,0.08) !important; border-color:rgba(74,222,128,0.24) !important;
}
/* END DARK CHECKOUT-USER */


/* DARK DELIVERY (20260716 v3) */
html.theme-dark #qrModal .checkout-delivery-panel { background:#161616 !important; border-color:rgba(255,255,255,0.10) !important; box-shadow:none !important; }
html.theme-dark #qrModal .checkout-delivery-card { background:rgba(255,255,255,0.05) !important; border-color:rgba(255,255,255,0.08) !important; color:#f0ece4 !important; }
html.theme-dark #qrModal .checkout-delivery-value { background:rgba(8,8,8,0.35) !important; border-color:rgba(255,255,255,0.08) !important; color:rgba(244,238,229,0.92) !important; }
html.theme-dark #qrModal .checkout-delivery-item-title, html.theme-dark #qrModal .checkout-delivery-hero-count { color:#f5f5f5 !important; }
html.theme-dark #qrModal .checkout-delivery-hero-copy, html.theme-dark #qrModal .checkout-delivery-empty { color:rgba(255,255,255,0.6) !important; }
/* order lookup result cards */
html.theme-dark .order-card, html.theme-dark .query-result-order, html.theme-dark .history-merged-card { background:#161616 !important; border-color:rgba(255,255,255,0.10) !important; }
/* END DARK DELIVERY */


/* DARK HERO REFINE (20260716 v4) - logo white, translucent nav, airier scrim */
/* white logo on dark */
html.theme-dark .brand-mark-logo img,
html.theme-dark .brand-mark img { filter:brightness(0) invert(1) !important; }

/* more transparent glass nav for see-through hero */
html.theme-dark .topbar, html.theme-dark .store-topbar, html.theme-dark .enterprise-topbar {
  background:rgba(8,9,12,0.38) !important;
  -webkit-backdrop-filter:saturate(1.2) blur(14px); backdrop-filter:saturate(1.2) blur(14px);
  border-color:rgba(255,255,255,0.07) !important;
}

/* hero bleeds up behind the sticky nav, taller + airier */
html.theme-dark .anthropic-replica-hero {
  margin-top:-72px !important; padding-top:72px !important;
  min-height:clamp(620px, 92vh, 960px) !important;
  background-position:center right !important;
}
html.theme-dark .anthropic-replica-hero::before {
  background:
    linear-gradient(90deg, rgba(5,6,10,0.78) 0%, rgba(5,6,10,0.40) 24%, rgba(5,6,10,0.08) 50%, rgba(5,6,10,0) 72%),
    linear-gradient(0deg, rgba(10,10,10,0.65) 0%, rgba(10,10,10,0) 26%) !important;
}
/* END DARK HERO REFINE */


/* DARK HERO REFINE v5 (20260716) - layered image (punchier) + airy scrim */
html.theme-dark .anthropic-replica-hero {
  background:#04050a !important;
  margin-top:-80px !important; padding-top:80px !important;
}
/* image layer with subtle punch */
html.theme-dark .anthropic-replica-hero::before {
  content: !important; position:absolute !important; inset:0 !important; z-index:0 !important;
  background:url('/static/dark-hero-bg.png?v=1') center right / cover no-repeat !important;
  filter:saturate(1.14) contrast(1.06) brightness(1.05) !important;
  pointer-events:none;
}
/* very light scrim only where the text sits (far-left), plus soft bottom blend */
html.theme-dark .anthropic-replica-hero::after {
  content: !important; position:absolute !important; inset:0 !important; z-index:0 !important; pointer-events:none;
  background:
    linear-gradient(90deg, rgba(4,5,9,0.52) 0%, rgba(4,5,9,0.20) 17%, rgba(4,5,9,0) 40%),
    linear-gradient(0deg, rgba(8,8,10,0.55) 0%, rgba(8,8,10,0) 20%) !important;
}
html.theme-dark .anthropic-replica-grid { position:relative !important; z-index:1 !important; }
/* crisper text on lighter scrim */
html.theme-dark .anthropic-replica-heading h1 { text-shadow:0 2px 26px rgba(0,0,0,0.6), 0 0 2px rgba(0,0,0,0.35) !important; }
html.theme-dark .anthropic-replica-aside p { text-shadow:0 1px 18px rgba(0,0,0,0.6), 0 0 2px rgba(0,0,0,0.3) !important; }
/* kill any residual top gap above hero */
html.theme-dark .anthropic-replica-shell { padding-top:0 !important; }
/* END DARK HERO REFINE v5 */


/* DARK HERO REFINE v6 (20260716) - brighter, airier (more 通透) */
html.theme-dark .anthropic-replica-hero::before {
  filter:saturate(1.22) contrast(1.08) brightness(1.13) !important;
}
html.theme-dark .anthropic-replica-hero::after {
  background:
    linear-gradient(90deg, rgba(4,5,9,0.42) 0%, rgba(4,5,9,0.12) 13%, rgba(4,5,9,0) 32%),
    linear-gradient(0deg, rgba(8,8,10,0.5) 0%, rgba(8,8,10,0) 18%) !important;
}
html.theme-dark .anthropic-replica-heading h1 { text-shadow:0 2px 22px rgba(0,0,0,0.65), 0 0 3px rgba(0,0,0,0.45) !important; }
html.theme-dark .anthropic-replica-aside p { text-shadow:0 1px 16px rgba(0,0,0,0.7), 0 0 3px rgba(0,0,0,0.4) !important; }
/* END DARK HERO REFINE v6 */


/* DARK HERO REFINE v7 (20260716) - standard cover+center, lighter filter */
html.theme-dark .anthropic-replica-hero::before {
  background:url('/static/dark-hero-bg.png?v=1') 50% 50% / cover no-repeat !important;
  filter:saturate(1.12) brightness(1.06) !important;
  image-rendering:auto;
}
/* END DARK HERO REFINE v7 */


/* DARK HERO 4K (20260716) - switch to 4K source, minimal filter */
html.theme-dark .anthropic-replica-hero::before {
  background:url('/static/dark-hero-bg-orig-af5c8d17.webp') 50% 50% / cover no-repeat !important;
  filter:saturate(1.06) brightness(1.03) !important;
}
/* END DARK HERO 4K */


/* DARK HERO PURE (20260716) - OpenAI-style: raw 4K, no filter, minimal scrim */
html.theme-dark .anthropic-replica-hero::before {
  background:url('/static/dark-hero-bg-orig-af5c8d17.webp') 50% 50% / cover no-repeat !important;
  filter:none !important;
}
html.theme-dark .anthropic-replica-hero::after {
  background:
    linear-gradient(90deg, rgba(2,7,13,0.46) 0%, rgba(2,7,13,0.12) 12%, rgba(2,7,13,0) 30%),
    linear-gradient(0deg, rgba(4,6,10,0.42) 0%, rgba(4,6,10,0) 16%) !important;
}
/* lighter nav so the image reads crisp under it */
html.theme-dark .topbar, html.theme-dark .store-topbar, html.theme-dark .enterprise-topbar {
  background:rgba(6,8,12,0.30) !important;
  -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px);
}
html.theme-dark .anthropic-replica-heading h1 { text-shadow:0 2px 18px rgba(0,0,0,0.55) !important; }
html.theme-dark .anthropic-replica-aside p { text-shadow:0 1px 14px rgba(0,0,0,0.6) !important; }
/* END DARK HERO PURE */


/* DARK NAV TRANSPARENT-ON-TOP (20260716) - 1:1 with reference */
html.theme-dark .topbar, html.theme-dark .store-topbar, html.theme-dark .enterprise-topbar {
  background:transparent !important;
  -webkit-backdrop-filter:none !important; backdrop-filter:none !important;
  border-bottom:1px solid rgba(255,255,255,0.12) !important;
  transition:background .25s ease, backdrop-filter .25s ease, border-color .25s ease;
}
html.theme-dark.nav-scrolled .topbar, html.theme-dark.nav-scrolled .store-topbar, html.theme-dark.nav-scrolled .enterprise-topbar {
  background:rgba(8,9,12,0.72) !important;
  -webkit-backdrop-filter:saturate(1.2) blur(16px) !important; backdrop-filter:saturate(1.2) blur(16px) !important;
  border-bottom-color:rgba(255,255,255,0.08) !important;
}
/* END DARK NAV TRANSPARENT-ON-TOP */


/* DARK NAV FINAL (20260716) - top-fade gradient, always translucent */
html.theme-dark .topbar, html.theme-dark .store-topbar, html.theme-dark .enterprise-topbar,
html.theme-dark.nav-scrolled .topbar, html.theme-dark.nav-scrolled .store-topbar, html.theme-dark.nav-scrolled .enterprise-topbar {
  background:linear-gradient(180deg, rgba(3,5,9,0.55) 0%, rgba(3,5,9,0.18) 62%, rgba(3,5,9,0) 100%) !important;
  -webkit-backdrop-filter:none !important; backdrop-filter:none !important;
  border-bottom:none !important;
}
/* END DARK NAV FINAL */


/* DARK HERO v8 (20260716) - full-screen hero, white nav, divider, no CTA */
/* nav links pure white for visibility over image */
html.theme-dark .topbar-nav-link, html.theme-dark .nav-link, html.theme-dark .nav-utility-btn {
  color:#ffffff !important; font-weight:500 !important;
}
html.theme-dark .topbar-nav-link svg, html.theme-dark .nav-utility-btn svg { color:#ffffff !important; opacity:.9; }
/* hero fills the whole first screen (like reference) */
html.theme-dark .anthropic-replica-hero {
  min-height:100vh !important;
  border-bottom:1px solid rgba(255,255,255,0.14) !important;
}
/* remove the hero shop button */
html.theme-dark .hero-dark-cta { display:none !important; }
/* END DARK HERO v8 */


/* DARK HERO IMG SWAP (20260716) - use original 4K \*/
html.theme-dark .anthropic-replica-hero::before {
  background:url('/static/dark-hero-bg-orig-af5c8d17.webp') 50% 50% / cover no-repeat !important;
  filter:none !important;
}
/* END DARK HERO IMG SWAP \*/


/* DARK v9 (20260716) - checkout outline fix, nav hairline, hero type */
/* 1) kill harsh white focus outline on non-interactive checkout panels */
html.theme-dark #qrModal .checkout-user-page-left,
html.theme-dark #qrModal .checkout-user-page-left:focus,
html.theme-dark #qrModal .checkout-user-page-left:focus-visible,
html.theme-dark #qrModal .checkout-user-info-box,
html.theme-dark #qrModal .checkout-user-info-box:focus,
html.theme-dark #qrModal .checkout-user-summary-shell,
html.theme-dark #qrModal .modal-box:focus,
html.theme-dark #qrModal .checkout-layout:focus,
html.theme-dark #qrModal .modal-box:focus-visible { outline:none !important; }
/* slightly lift left panel so the modal reads as one cohesive card */
html.theme-dark #qrModal .checkout-user-page-left { background:#161618 !important; }
html.theme-dark #qrModal .modal-box.checkout-layout { border-color:rgba(255,255,255,0.12) !important; }

/* 2) hairline under the top nav (like reference) */
html.theme-dark .topbar, html.theme-dark .store-topbar, html.theme-dark .enterprise-topbar,
html.theme-dark.nav-scrolled .topbar {
  border-bottom:1px solid rgba(255,255,255,0.14) !important;
}

/* 3) hero typography tuned closer to reference (dark only) */
html.theme-dark .anthropic-replica-heading h1 {
  font-size:clamp(46px, 4.8vw, 78px) !important;
  font-weight:700 !important;
  line-height:1.08 !important;
  letter-spacing:-0.02em !important;
}
html.theme-dark .anthropic-replica-aside p {
  font-size:clamp(15px, 1.2vw, 19px) !important;
  line-height:1.55 !important;
  font-weight:400 !important;
}
/* END DARK v9 */


/* DARK v10 (20260716) - remove nav divider */
html.theme-dark .topbar, html.theme-dark .store-topbar, html.theme-dark .enterprise-topbar,
html.theme-dark.nav-scrolled .topbar, html.theme-dark.nav-scrolled .store-topbar, html.theme-dark.nav-scrolled .enterprise-topbar {
  border-bottom:none !important;
}
/* END DARK v10 */


/* DARK v11 (20260716) - parser-discovered 4K hero + unified checkout canvas */
.dark-hero-media {
  display:none;
}

html.theme-dark .anthropic-replica-hero > .dark-hero-media {
  display:block;
  position:absolute;
  inset:0;
  z-index:0;
  width:100%;
  height:100%;
  max-width:none;
  object-fit:cover;
  object-position:50% 50%;
  pointer-events:none;
}

html.theme-dark .anthropic-replica-hero::before {
  background:none !important;
  filter:none !important;
}

html.theme-dark .anthropic-replica-hero::after {
  z-index:1 !important;
}

html.theme-dark .anthropic-replica-grid {
  z-index:2 !important;
}

/* One modal, one surface: keep borders only on controls and dividers. */
html.theme-dark #qrModal .checkout-layout,
html.theme-dark #qrModal .modal-box.checkout-layout {
  background:#141416 !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:0 30px 100px rgba(0,0,0,0.58) !important;
}

html.theme-dark #qrModal .checkout-main-column,
html.theme-dark #qrModal .checkout-side-column,
html.theme-dark #qrModal .checkout-user-page-left,
html.theme-dark #qrModal .checkout-user-contact-card,
html.theme-dark #qrModal .checkout-user-summary-shell,
html.theme-dark #qrModal .checkout-user-price-box {
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}

html.theme-dark #qrModal .checkout-user-info-box,
html.theme-dark #qrModal .checkout-user-info-box.is-ready,
html.theme-dark #qrModal .checkout-user-info-box.is-invalid,
html.theme-dark #qrModal .checkout-user-info-box.is-signed-in,
html.theme-dark #qrModal .checkout-user-info-box.state-signed-in {
  padding:18px 0 0 !important;
  background:transparent !important;
  border:0 !important;
  border-top:1px solid rgba(255,255,255,0.08) !important;
  border-radius:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}

html.theme-dark #qrModal .checkout-user-price-box {
  padding:12px 0 0 !important;
}

html.theme-dark #qrModal .checkout-user-back-btn {
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
/* END DARK v11 */


/* DARK v12 (20260716) - remove summary surface and restore spinner contrast */
html.theme-dark #qrModal.is-user-checkout-page #summaryBox.summary-box.checkout-card.checkout-summary-card {
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  filter:none !important;
}

html.theme-dark #qrModal #confirmOrderBtn.checkout-user-cta .btn-spinner {
  box-sizing:border-box;
  flex:0 0 auto;
  border-color:rgba(10,10,10,0.22) !important;
  border-top-color:#0a0a0a !important;
}
/* END DARK v12 */


/* PRODUCT MEDIA LAYOUT v1 (20260716) - reserved 16:9 artwork slot */
body.store-page .project-grid.enterprise-grid {
  gap:14px !important;
}

body.store-page .ed-card {
  display:grid !important;
  grid-template-columns:minmax(260px, 32%) minmax(0, 1fr);
  align-items:stretch;
  gap:28px;
  padding:16px !important;
  border:1px solid var(--ag-border) !important;
  border-radius:12px !important;
  background:var(--ag-card-soft) !important;
  overflow:hidden;
  box-shadow:none !important;
  transition:background-color 180ms ease, border-color 180ms ease !important;
}

body.store-page .project-grid.enterprise-grid > .ed-card:last-child {
  border-bottom:1px solid var(--ag-border) !important;
}

body.store-page .ed-card:hover {
  padding-left:16px !important;
  border-color:var(--ag-border-strong) !important;
  background:var(--ag-card-soft) !important;
  box-shadow:none !important;
}

body.store-page .ed-media {
  position:relative;
  align-self:center;
  width:100%;
  aspect-ratio:16 / 9;
  min-width:0;
  overflow:hidden;
  border:1px solid var(--ag-border);
  border-radius:8px;
  background:
    linear-gradient(135deg, rgba(255,255,255,0.08), rgba(255,255,255,0) 48%),
    var(--ag-card);
}

body.store-page .ed-media img {
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

body.store-page .ed-content {
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:10px 12px 10px 0;
}

body.store-page .ed-content .ed-row {
  flex:1 1 auto;
  flex-wrap:nowrap;
  align-items:center;
}

body.store-page .ed-content .ed-left {
  min-width:0;
}

body.store-page .ed-content .ed-right {
  align-self:center;
}

body.store-page .ed-content .ed-desc {
  max-width:560px;
}

body.store-page .ed-content > .ed-meta {
  margin-top:16px;
  padding-top:14px;
  border-top:1px solid var(--ag-border);
}

html.theme-dark body.store-page .ed-card,
html.theme-dark body.store-page .ed-card:hover {
  background:linear-gradient(110deg, rgba(255,255,255,0.025), rgba(255,255,255,0.012)) !important;
  border-color:rgba(255,255,255,0.08) !important;
  box-shadow:none !important;
}

html.theme-dark body.store-page .ed-card:hover {
  border-color:rgba(255,255,255,0.14) !important;
}

html.theme-dark body.store-page .project-grid.enterprise-grid > .ed-card:last-child {
  border-bottom-color:rgba(255,255,255,0.08) !important;
}

html.theme-dark body.store-page .ed-media {
  border-color:rgba(255,255,255,0.08);
  background:
    linear-gradient(135deg, rgba(255,255,255,0.035), rgba(255,255,255,0) 46%),
    #151716;
}

html.theme-dark body.store-page .ed-content > .ed-meta {
  border-top-color:rgba(255,255,255,0.08);
}

@media (max-width:900px) {
  body.store-page .ed-card {
    grid-template-columns:1fr;
    gap:20px;
  }

  body.store-page .ed-content {
    padding:0 4px 4px;
  }
}

@media (max-width:680px) {
  body.store-page .project-grid.enterprise-grid {
    gap:10px !important;
  }

  body.store-page .ed-card,
  body.store-page .ed-card:hover {
    padding:12px !important;
    border-radius:10px !important;
  }

  body.store-page .ed-media {
    border-radius:7px;
  }

  body.store-page .ed-content .ed-row {
    align-items:stretch;
  }
}
/* END PRODUCT MEDIA LAYOUT v1 */


/* PRODUCT MEDIA + THEMED CTA v2 (20260716) */
body.store-page .ed-card {
  --ed-accent:#c2410c;
  --ed-accent-ink:#ffffff;
}

body.store-page .ed-card.product-openai  { --ed-accent:#10a37f; --ed-accent-ink:#ffffff; }
body.store-page .ed-card.product-claude  { --ed-accent:#d97757; --ed-accent-ink:#21110b; }
body.store-page .ed-card.product-grok,
body.store-page .ed-card.product-xgrok   { --ed-accent:#9b7bb1; --ed-accent-ink:#171218; }
body.store-page .ed-card.product-gemini  { --ed-accent:#4f63d9; --ed-accent-ink:#ffffff; }
body.store-page .ed-card.product-kiro    { --ed-accent:#e3a11b; --ed-accent-ink:#211707; }
body.store-page .ed-card.product-outlook { --ed-accent:#0078d4; --ed-accent-ink:#ffffff; }
body.store-page .ed-card.product-google  { --ed-accent:#34a853; --ed-accent-ink:#07150b; }
body.store-page .ed-card.product-apple   { --ed-accent:#6b7280; --ed-accent-ink:#ffffff; }
body.store-page .ed-card.product-card    { --ed-accent:#7c3aed; --ed-accent-ink:#ffffff; }
body.store-page .ed-card.product-cursor  { --ed-accent:#9aa5b4; --ed-accent-ink:#101317; }
body.store-page .ed-card.product-codex   { --ed-accent:#14b8a6; --ed-accent-ink:#071412; }

html.theme-dark body.store-page .ed-card.product-openai  { --ed-accent:#10b981; --ed-accent-ink:#07150f; }
html.theme-dark body.store-page .ed-card.product-claude  { --ed-accent:#d97757; --ed-accent-ink:#21110b; }
html.theme-dark body.store-page .ed-card.product-grok,
html.theme-dark body.store-page .ed-card.product-xgrok   { --ed-accent:#c3a3c8; --ed-accent-ink:#19131a; }
html.theme-dark body.store-page .ed-card.product-gemini  { --ed-accent:#7c8cff; --ed-accent-ink:#0e1220; }
html.theme-dark body.store-page .ed-card.product-kiro    { --ed-accent:#f1b84b; --ed-accent-ink:#211707; }
html.theme-dark body.store-page .ed-card.product-outlook { --ed-accent:#3b9eea; --ed-accent-ink:#07131d; }
html.theme-dark body.store-page .ed-card.product-google  { --ed-accent:#4ade80; --ed-accent-ink:#07150b; }
html.theme-dark body.store-page .ed-card.product-apple   { --ed-accent:#c8ccd4; --ed-accent-ink:#111318; }
html.theme-dark body.store-page .ed-card.product-card    { --ed-accent:#a78bfa; --ed-accent-ink:#151020; }
html.theme-dark body.store-page .ed-card.product-cursor  { --ed-accent:#b8c0cc; --ed-accent-ink:#111419; }
html.theme-dark body.store-page .ed-card.product-codex   { --ed-accent:#2dd4bf; --ed-accent-ink:#061512; }

body.store-page .ed-card .ed-hot {
  color:var(--ed-accent-ink) !important;
}

body.store-page .ed-card .product-buy-btn.is-available,
body.store-page .ed-card .bundle-launch-btn {
  background:var(--ed-accent) !important;
  background-image:none !important;
  border-color:var(--ed-accent) !important;
  color:var(--ed-accent-ink) !important;
  box-shadow:0 8px 22px color-mix(in srgb, var(--ed-accent) 18%, transparent) !important;
  transition:background-color 160ms cubic-bezier(.23,1,.32,1),
             border-color 160ms cubic-bezier(.23,1,.32,1),
             box-shadow 160ms cubic-bezier(.23,1,.32,1),
             transform 140ms cubic-bezier(.23,1,.32,1) !important;
}

@media (hover:hover) and (pointer:fine) {
  body.store-page .ed-card .product-buy-btn.is-available:hover,
  body.store-page .ed-card .bundle-launch-btn:hover {
    background:color-mix(in srgb, var(--ed-accent) 88%, white) !important;
    border-color:color-mix(in srgb, var(--ed-accent) 88%, white) !important;
    color:var(--ed-accent-ink) !important;
    box-shadow:0 10px 26px color-mix(in srgb, var(--ed-accent) 26%, transparent) !important;
    transform:translateY(-1px);
  }
}

body.store-page .ed-card .product-buy-btn.is-available:active,
body.store-page .ed-card .bundle-launch-btn:active {
  transform:scale(.97);
  box-shadow:0 4px 12px color-mix(in srgb, var(--ed-accent) 16%, transparent) !important;
}

body.store-page .ed-card .product-buy-btn:focus-visible,
body.store-page .ed-card .bundle-launch-btn:focus-visible {
  outline:2px solid var(--ed-accent) !important;
  outline-offset:3px;
}

body.store-page .ed-card .product-buy-btn.is-sold-out,
body.store-page .ed-card .product-buy-btn[disabled] {
  background:transparent !important;
  background-image:none !important;
  border-color:var(--ag-border-strong) !important;
  color:var(--ag-muted) !important;
  box-shadow:none !important;
  transform:none !important;
}
/* END PRODUCT MEDIA + THEMED CTA v2 */


/* DARK HERO DECLARATION (20260716) - manifesto copy + centered control bar */
html.theme-dark .anthropic-replica-heading h1 {
  display:flex !important; flex-direction:column; gap:4px; font-size:initial !important;
}
html.theme-dark .hero-main-cn {
  font-size:clamp(66px, 8.2vw, 140px) !important; font-weight:800 !important;
  line-height:0.96 !important; letter-spacing:-0.035em !important; color:#ffffff !important;
  text-shadow:0 2px 30px rgba(0,0,0,0.55);
}
html.theme-dark .hero-main-en {
  font-family:"Fraunces","Songti SC",Georgia,serif !important; font-style:italic;
  font-weight:400 !important; font-size:clamp(26px, 3vw, 48px) !important;
  color:rgba(255,255,255,0.6) !important; letter-spacing:0 !important; line-height:1.1 !important;
  text-shadow:0 1px 20px rgba(0,0,0,0.5);
}
html.theme-dark .anthropic-replica-aside { margin-top:28px !important; }
html.theme-dark .hero-sub { margin:0 !important; }
html.theme-dark .hero-sub-cn { display:block; font-size:clamp(19px,1.7vw,26px); font-weight:600; color:#f2f2f2; text-shadow:0 1px 16px rgba(0,0,0,0.55); }
html.theme-dark .hero-sub-en { display:block; font-size:clamp(13px,1.05vw,16px); color:rgba(255,255,255,0.55); margin-top:4px; letter-spacing:0.01em; text-shadow:0 1px 14px rgba(0,0,0,0.5); }
html.theme-dark .hero-detail { margin:20px 0 0 !important; max-width:46ch; }
html.theme-dark .hero-detail-cn { display:block; font-size:15px; line-height:1.75; color:rgba(255,255,255,0.74); text-shadow:0 1px 14px rgba(0,0,0,0.5); }
html.theme-dark .hero-detail-en { display:block; font-size:12.5px; line-height:1.6; color:rgba(255,255,255,0.45); margin-top:6px; }
html.theme-dark .hero-slogan { margin-top:24px; display:flex; align-items:baseline; gap:12px; flex-wrap:wrap; }
html.theme-dark .hero-slogan-cn { font-size:15px; font-weight:600; letter-spacing:0.10em; color:#ffffff; text-shadow:0 1px 14px rgba(0,0,0,0.55); }
html.theme-dark .hero-slogan-en { font-family:"Fraunces","Songti SC",Georgia,serif; font-style:italic; font-size:15px; color:rgba(255,255,255,0.5); }
html.theme-dark .hero-dark-cta { margin-top:30px !important; }

/* control bar: centered, Claude-warm color */
html.theme-dark .store-control-bar { text-align:center; }
html.theme-dark .control-bar-head { justify-content:center !important; }
html.theme-dark .control-bar-intro { text-align:center !important; margin:0 auto !important; }
html.theme-dark .control-bar-sub-en { color:#cdc6b8 !important; }
html.theme-dark .project-switcher { justify-content:center !important; }
/* END DARK HERO DECLARATION */


/* STOCK COLLAPSE (20260716) */
.stock-collapsed { display:none !important; }
html.theme-dark .stock-toggle-bar {
  display:flex; align-items:center; justify-content:center; gap:10px;
  width:100%; margin:0; padding:16px 6px;
  background:transparent; border:0; border-top:1px solid rgba(255,255,255,0.09);
  color:rgba(255,255,255,0.62); cursor:pointer; font-family:var(--font-ui);
  transition:color .2s ease, background .2s ease;
}
html.theme-dark .stock-toggle-bar:hover { color:#ffffff; background:rgba(255,255,255,0.03); }
html.theme-dark .stock-toggle-ico {
  display:inline-flex; align-items:center; justify-content:center;
  width:20px; height:20px; border:1px solid rgba(255,255,255,0.22); border-radius:50%;
  font-size:13px; line-height:1;
}
html.theme-dark .stock-toggle-txt { font-size:14px; font-weight:600; letter-spacing:0.02em; }
html.theme-dark .stock-toggle-en { font-size:12px; color:rgba(255,255,255,0.4); }
/* END STOCK COLLAPSE */


/* R2 (20260716) - apple hero, claude tagline, centered tabs, ai animation, stock icon */
html.theme-dark .hero-kicker {
  display:block; font-size:13px; font-weight:600; letter-spacing:0.24em; text-transform:uppercase;
  color:rgba(255,255,255,0.55); margin-bottom:20px; text-shadow:0 1px 12px rgba(0,0,0,0.5);
}
html.theme-dark .hero-sub-en { margin-bottom:0 !important; }

/* claude-aesthetic tagline, centered + enlarged */
html.theme-dark .control-bar-sub-en {
  font-family:"Fraunces","Songti SC",Georgia,serif !important;
  font-style:italic !important; font-weight:400 !important;
  font-size:clamp(30px, 3vw, 46px) !important; line-height:1.18 !important;
  color:#d3a377 !important; letter-spacing:0.005em !important;
}
html.theme-dark .store-control-bar,
html.theme-dark .control-bar-head,
html.theme-dark .control-bar-intro { text-align:center !important; }
html.theme-dark .control-bar-intro { margin:0 auto !important; }
/* center the product tabs */
html.theme-dark .project-switcher {
  display:flex !important; justify-content:center !important; flex-wrap:wrap !important;
}

/* stock toggle icon: perfectly centered glyph */
html.theme-dark .stock-toggle-ico {
  display:inline-flex; align-items:center; justify-content:center;
  width:20px; height:20px; border:1px solid rgba(255,255,255,0.24); border-radius:50%;
  font-size:14px; line-height:1; font-family:var(--font-ui); padding:0; box-sizing:border-box;
}

/* ---- AI network animation ---- */
@keyframes aiDraw { to { stroke-dashoffset:0; } }
@keyframes aiNodeIn { from { opacity:0; } to { opacity:1; } }
@keyframes aiCorePulse { 0%,100% { transform:scale(1); opacity:.85; } 50% { transform:scale(1.9); opacity:.28; } }
html.theme-dark .ai-link {
  fill:none; stroke:rgba(255,255,255,0.24); stroke-width:1.1;
  stroke-dasharray:1; stroke-dashoffset:1; animation:aiDraw 1.3s ease forwards;
}
html.theme-dark .ai-link-accent {
  fill:none; stroke:#e6733a; stroke-width:1.5;
  stroke-dasharray:1; stroke-dashoffset:1; animation:aiDraw 1.4s ease forwards;
}
html.theme-dark .ai-node { fill:rgba(255,255,255,0.92); opacity:0; animation:aiNodeIn .7s ease forwards; }
html.theme-dark .ai-core-glow { fill:#e6733a; animation:aiCorePulse 2.8s ease-in-out infinite; }
html.theme-dark .ai-core { fill:#ffcbb0; }
html.theme-dark .ai-signal { fill:#ffe0cc; filter:drop-shadow(0 0 5px rgba(230,115,58,0.85)); }
/* END R2 */


/* R3 (20260716) - reliable link fade-in + tagline size override */
@keyframes aiLinkIn { from { opacity:0; } to { opacity:1; } }
html.theme-dark .ai-link, html.theme-dark .ai-link-accent {
  stroke-dasharray:none; stroke-dashoffset:0; opacity:0;
  animation-name:aiLinkIn; animation-duration:1s; animation-timing-function:ease; animation-fill-mode:forwards;
}
html.theme-dark body.store-page .control-bar-sub-en {
  font-size:clamp(30px, 3vw, 46px) !important;
}
/* END R3 */


/* R4 (20260716) - network always visible; animation is enhancement only */
html.theme-dark .ai-link, html.theme-dark .ai-link-accent {
  opacity:1; animation-name:aiLinkIn; animation-duration:1s; animation-timing-function:ease; animation-fill-mode:backwards;
}
html.theme-dark .ai-node {
  opacity:1; animation-name:aiNodeIn; animation-duration:.7s; animation-timing-function:ease; animation-fill-mode:backwards;
}
/* END R4 */


/* R5 (20260716) - tabs left, hero cta row, stock hide fix */
/* product tabs LEFT aligned (only tagline stays centered) */
html.theme-dark .project-switcher { justify-content:flex-start !important; text-align:left !important; }
html.theme-dark .control-bar-head { justify-content:center !important; }

/* hero CTA row + secondary button */
html.theme-dark .hero-cta-row { display:flex; gap:14px; margin-top:30px; flex-wrap:wrap; align-items:center; }
html.theme-dark .hero-dark-cta { margin-top:0 !important; }
html.theme-dark .hero-secondary-cta {
  display:inline-flex; align-items:center; gap:8px; padding:14px 26px; border-radius:999px;
  background:transparent; border:1px solid rgba(255,255,255,0.42); color:#ffffff !important;
  font-weight:600; font-size:16px; text-decoration:none; letter-spacing:0.01em;
  transition:background .2s ease, border-color .2s ease, transform .2s ease;
}
html.theme-dark .hero-secondary-cta:hover { background:rgba(255,255,255,0.10); border-color:#ffffff; transform:translateY(-2px); }

/* stock collapse: guarantee hidden */
html.theme-dark .ed-card.stock-collapsed,
.ed-card.stock-collapsed,
html.theme-dark .project-grid .ed-card.stock-collapsed { display:none !important; }
/* END R5 */


/* R6 (20260716) - premium neural animation */
html.theme-dark .ai-link {
  fill:none; stroke:url(#aiLinkGrad); stroke-width:1.25; stroke-linecap:round;
  opacity:1; animation:aiLinkIn 1.1s ease backwards;
}
html.theme-dark .ai-node { fill:#ffffff; opacity:1; animation:aiNodeIn .7s ease backwards; }
html.theme-dark .ai-node-glow { fill:url(#aiNodeGlow); }
html.theme-dark .ai-ring { fill:none; stroke:#e6733a; stroke-width:1.2; }
html.theme-dark .ai-core-glow2 { fill:url(#aiCoreGlow); transform-box:fill-box; transform-origin:center; animation:aiCorePulse 3s ease-in-out infinite; }
html.theme-dark .ai-core { fill:#ffd9c2; }
html.theme-dark .ai-particle { fill:#ffe6d4; filter:drop-shadow(0 0 6px rgba(230,115,58,0.95)); }
/* END R6 */


/* R7 (20260716) - order query result dark coverage */
html.theme-dark .query-result-shell,
html.theme-dark .history-merged-card { background:#161616 !important; border-color:rgba(255,255,255,0.10) !important; }
html.theme-dark .query-result-shell-head strong,
html.theme-dark .history-merged-head strong,
html.theme-dark .history-merged-card h3,
html.theme-dark .history-merged-card strong { color:#f5f5f5 !important; }
html.theme-dark .history-merged-line { border-color:rgba(255,255,255,0.08) !important; }
html.theme-dark .history-merged-line span,
html.theme-dark .history-merged-line strong,
html.theme-dark .history-merged-section,
html.theme-dark .query-result-shell-head span { color:#e2e2e2 !important; }
html.theme-dark .history-merged-line .muted,
html.theme-dark .history-merged-card .meta,
html.theme-dark .history-merged-card .muted { color:rgba(255,255,255,0.55) !important; }
html.theme-dark .delivery-copy-card,
html.theme-dark .delivery-copy-card-plain { background:rgba(255,255,255,0.05) !important; border-color:rgba(255,255,255,0.10) !important; }
html.theme-dark .delivery-copy-card-plain-value,
html.theme-dark .delivery-copy-card-plain-value * { color:#f0ece4 !important; }
/* END R7 */


/* R8 (20260716) - single white rectangular CDK button + subnote */
html.theme-dark .hero-faq-cta {
  display:inline-flex; align-items:center; margin-top:32px;
  padding:15px 30px; border-radius:6px;
  background:#ffffff; color:#0a0a0a !important; font-weight:600; font-size:16px;
  text-decoration:none; letter-spacing:0.01em;
  transition:background .2s ease, transform .2s ease, box-shadow .2s ease;
}
html.theme-dark .hero-faq-cta:hover { background:#ececec; transform:translateY(-1px); box-shadow:0 10px 30px -12px rgba(255,255,255,0.4); }
html.theme-dark .hero-subnote {
  margin:18px 0 0; font-size:13px; color:rgba(255,255,255,0.5);
  letter-spacing:0.02em; text-shadow:0 1px 10px rgba(0,0,0,0.5);
}
/* END R8 */


/* R9 (20260716) - tagline nowrap + Claude-black hover on stock bar */
html.theme-dark body.store-page .control-bar-sub-en { white-space:nowrap !important; }
html.theme-dark .stock-toggle-bar:hover {
  background:#0d0d0d !important; color:#ffffff !important;
}
html.theme-dark .stock-toggle-bar:hover .stock-toggle-ico { border-color:rgba(255,255,255,0.45) !important; }
html.theme-dark .stock-toggle-bar:hover .stock-toggle-en { color:rgba(255,255,255,0.55) !important; }
/* END R9 */


/* R10 (20260716) - hero manifesto + Claude-black interaction language */
/* hero headline sizing (now the CN line) + sharp 90deg button */
html.theme-dark .hero-main-cn {
  font-size:clamp(42px, 5.2vw, 84px) !important; font-weight:700 !important;
  line-height:1.12 !important; letter-spacing:-0.02em !important;
}
html.theme-dark .hero-faq-cta { border-radius:2px !important; }

/* --- black = interaction feedback --- */
/* product rows hover -> gray-black */
html.theme-dark .ed-card:hover { background:rgba(0,0,0,0.34) !important; }
/* tabs hover -> subtle dark pill */
html.theme-dark .project-switcher-btn:hover { background:rgba(0,0,0,0.32) !important; border-radius:8px; }
/* ghost + nav utility hover -> black */
html.theme-dark .ghost:hover, html.theme-dark .project-link-btn.ghost:hover,
html.theme-dark .topbar-nav-link:hover, html.theme-dark .nav-link:hover, html.theme-dark .nav-utility-btn:hover {
  background:rgba(0,0,0,0.38) !important; border-radius:8px;
}
/* dropdown items hover -> black chip */
html.theme-dark .nav-account-card-link:hover,
html.theme-dark .nav-contact-link:hover,
html.theme-dark .nav-language-option:hover,
html.theme-dark .nav-free-tools-item:hover {
  background:#0d0d0d !important; color:#ffffff !important;
}

/* --- rare-black chips: product badges as black pills --- */
html.theme-dark .refined-card-badge,
html.theme-dark .refined-card-badge-official {
  background:#0d0d0d !important; color:#ffffff !important;
  border:1px solid rgba(255,255,255,0.14) !important; border-radius:999px !important;
  padding:2px 11px !important; font-style:normal !important; letter-spacing:0.02em;
}
/* END R10 */

/* R11 - hero h1 block so CJK wraps horizontally */
html.theme-dark .anthropic-replica-heading h1 { display:block !important; }
html.theme-dark .hero-main-cn { display:block; }
/* END R11 */


/* R12 - release hero h1 width clamp (was forcing CJK vertical) */
html.theme-dark .anthropic-replica-heading h1 {
  display:block !important; max-width:none !important; width:auto !important;
}
html.theme-dark .hero-main-cn {
  display:block !important; max-width:none !important; width:auto !important; white-space:normal !important;
}
/* END R12 */


/* R13 (20260716) - buttons(no lift, crisp brighten), black footer, hero polish */
/* CDK + buy buttons: keep brighten, remove pop/white-halo, crisp */
html.theme-dark .hero-faq-cta {
  box-shadow:none !important;
  transition:background .18s ease, box-shadow .18s ease !important;
}
html.theme-dark .hero-faq-cta:hover {
  background:#ffffff !important; transform:none !important;
  box-shadow:0 4px 18px -8px rgba(0,0,0,0.55) !important;
}
html.theme-dark body.store-page .ed-card .product-buy-btn.is-available:hover,
html.theme-dark .product-buy-btn.is-available:hover,
html.theme-dark .refined-product-card .product-buy-btn.is-available:hover {
  color:#ffffff !important; transform:none !important;
}

/* footer -> pure black, separated from gray page */
html.theme-dark .store-footer {
  background:#000000 !important; border-top:1px solid rgba(255,255,255,0.06) !important;
}

/* hero typography polish (tighter, better rhythm) */
html.theme-dark .hero-main-cn { line-height:1.06 !important; letter-spacing:-0.015em !important; }
html.theme-dark .anthropic-replica-aside { margin-top:24px !important; }
html.theme-dark .hero-sub-en { font-size:clamp(15px,1.15vw,18px) !important; color:rgba(255,255,255,0.74) !important; }
html.theme-dark .hero-faq-cta { margin-top:28px !important; }
html.theme-dark .hero-subnote { margin-top:16px !important; }
/* END R13 */


/* R14 (20260716) - no scroll-reveal buffer, tab underline only, CDK 1:1 buy, inner-feedback buttons */
/* 1) content visible immediately (cancel scroll-reveal) */
.reveal-block { opacity:1 !important; transform:none !important; animation:none !important; }

/* 2) product tabs: keep underline, remove black pill hover */
html.theme-dark .project-switcher-btn:hover { background:transparent !important; border-radius:0 !important; }

/* 3) CDK Activation 1:1 with buy button shape (sharp radius 0) + inner feedback, no drop shadow */
html.theme-dark .hero-faq-cta {
  border-radius:0 !important; box-shadow:none !important;
  border:1px solid #ffffff !important; background:#ffffff !important;
  transition:box-shadow .15s ease !important;
}
html.theme-dark .hero-faq-cta:hover {
  background:#ffffff !important; transform:none !important;
  box-shadow: inset 0 0 0 999px rgba(0,0,0,0.07) !important;
}

/* 4) buy button: keep brand-color sharp, hover = inner brighten (no lift, no outer shadow) */
html.theme-dark body.store-page .ed-card .product-buy-btn.is-available:hover,
html.theme-dark .product-buy-btn.is-available:hover,
html.theme-dark .refined-product-card .product-buy-btn.is-available:hover {
  background:var(--ed-accent) !important; border-color:var(--ed-accent) !important; color:#ffffff !important;
  transform:none !important; box-shadow: inset 0 0 0 999px rgba(0,0,0,0.12) !important;
}
/* END R14 */


/* R15 (20260716) - hero sub restyle, card-bin gray-black, unified inner-feedback buttons */
/* hero EN subtext: white, larger (between sub and headline) */
html.theme-dark .hero-sub-en {
  font-size:clamp(20px, 1.9vw, 28px) !important; color:#ffffff !important;
  font-weight:400 !important; line-height:1.42 !important; max-width:26ch;
  text-shadow:0 1px 16px rgba(0,0,0,0.55) !important;
}

/* card-bin picker (选择卡段) - gray-black language */
html.theme-dark .card-bin-choice-card {
  background:#2a2a28 !important; border-color:rgba(255,255,255,0.10) !important; color:#f2f2f2 !important;
  transition:background .18s ease, border-color .18s ease !important;
}
html.theme-dark .card-bin-choice-card:hover { background:#1c1b1a !important; }
html.theme-dark .card-bin-choice-card.is-active {
  background:#0d0d0d !important; border-color:rgba(217,119,87,0.7) !important; color:#ffffff !important;
}
html.theme-dark .card-bin-choice-stock,
html.theme-dark .card-bin-choice-stock-label,
html.theme-dark .card-bin-choice-stock-value { color:rgba(255,255,255,0.58) !important; }

/* unified button hover: inner-feedback only, NO color change / lift / outer shadow */
html.theme-dark body.store-page .ed-card .product-buy-btn.is-available:hover,
html.theme-dark .product-buy-btn.is-available:hover,
html.theme-dark .refined-product-card .product-buy-btn.is-available:hover {
  transform:none !important; box-shadow: inset 0 0 0 999px rgba(0,0,0,0.10) !important;
}
html.theme-dark .card-bin-picker-confirm:hover,
html.theme-dark #confirmOrderBtn:hover, html.theme-dark #checkOrderBtn:hover,
html.theme-dark .checkout-user-cta:hover, html.theme-dark #verifyCardGuideBtn:hover,
html.theme-dark #acceptPurchaseNoticeBtn:hover,
html.theme-dark .bundle-primary-btn:hover, html.theme-dark .bundle-launch-btn:hover,
html.theme-dark .hero-faq-cta:hover {
  transform:none !important; box-shadow: inset 0 0 0 999px rgba(0,0,0,0.08) !important;
}
/* END R15 */


/* R16 (20260716) - buy hover: keep brand color, inner-feedback only (no white) + hero sub 2-line */
html.theme-dark body.store-page .ed-card .product-buy-btn.is-available:hover {
  background:var(--ed-accent) !important; border-color:var(--ed-accent) !important; color:#ffffff !important;
  box-shadow: inset 0 0 0 999px rgba(0,0,0,0.12) !important; transform:none !important;
}
html.theme-dark .refined-product-card .product-buy-btn.is-available:hover {
  box-shadow: inset 0 0 0 999px rgba(0,0,0,0.12) !important; transform:none !important;
}
html.theme-dark .hero-sub-en { max-width:none !important; }
/* END R16 */


/* R17 (20260716) - bulletproof button feedback (filter darken, never white) + hero sub nowrap */
html.theme-dark .product-buy-btn.is-available:hover,
html.theme-dark .hero-faq-cta:hover,
html.theme-dark .card-bin-picker-confirm:hover,
html.theme-dark #confirmOrderBtn:hover, html.theme-dark #checkOrderBtn:hover,
html.theme-dark .checkout-user-cta:hover, html.theme-dark #verifyCardGuideBtn:hover,
html.theme-dark #acceptPurchaseNoticeBtn:hover,
html.theme-dark .bundle-primary-btn:hover, html.theme-dark .bundle-launch-btn:hover {
  filter:brightness(0.9) !important; box-shadow:none !important; transform:none !important;
}
html.theme-dark .hero-sub-en { white-space:nowrap !important; }
/* END R17 */


/* R18 (20260716) - fix hero aside width so sub wraps to 2 clean lines (no overflow) */
html.theme-dark .anthropic-replica-aside {
  display:block !important; width:min(640px, 92vw) !important; max-width:none !important;
}
html.theme-dark .hero-sub-en {
  white-space:normal !important; width:auto !important; max-width:none !important;
}
/* END R18 */


/* R19 (20260716) - explicit sub width so it wraps to exactly 2 lines */
html.theme-dark .hero-sub,
html.theme-dark .hero-sub-en {
  display:block !important; width:600px !important; max-width:92vw !important;
  white-space:normal !important;
}
/* END R19 */


/* R21 (20260716) - definitive buy/CDK hover: darken only, kill any white inset */
html.theme-dark body.store-page .store-content-column .ed-card .product-buy-btn.is-available:hover,
html.theme-dark body.store-page .ed-card .product-buy-btn.is-available:hover {
  filter:brightness(0.9) !important; box-shadow:none !important;
  background:var(--ed-accent) !important; border-color:var(--ed-accent) !important; transform:none !important;
}
html.theme-dark .hero-faq-cta:hover {
  filter:brightness(0.94) !important; box-shadow:none !important; background:#ffffff !important; transform:none !important;
}
/* END R21 */


/* R22 (20260716) - left-align hero+topbar, Ken Burns bg, mobile fixes */
/* 1) left-align topbar + hero content (OpenAI-style edge) */
html.theme-dark .topbar, html.theme-dark .store-topbar, html.theme-dark .enterprise-topbar {
  padding-left: clamp(22px, 3.4vw, 64px) !important;
  padding-right: clamp(22px, 3.4vw, 64px) !important;
}
html.theme-dark .anthropic-replica-grid {
  max-width:none !important; margin-left:0 !important; margin-right:0 !important;
  padding-left: clamp(22px, 3.4vw, 64px) !important;
}

/* 5) Ken Burns / cosmic drift on hero background image */
@keyframes cosmicDrift {
  0%   { transform: scale(1.04) translate3d(0, 0, 0); }
  50%  { transform: scale(1.08) translate3d(-0.8%, -0.4%, 0); }
  100% { transform: scale(1.12) translate3d(-1.5%, -0.8%, 0); }
}
html.theme-dark .dark-hero-media {
  animation: cosmicDrift 30s ease-in-out infinite alternate;
  transform-origin: 70% 60%;
  will-change: transform;
}
@media (prefers-reduced-motion: reduce) {
  html.theme-dark .dark-hero-media { animation: none; }
}

/* 4) mobile fixes */
@media (max-width: 820px) {
  /* hamburger bars white */
  html.theme-dark .nav-burger-bars i,
  html.theme-dark .nav-burger i,
  html.theme-dark .nav-burger span { background:#ffffff !important; color:#ffffff !important; }
  /* hero sub: auto width, no overflow */
  html.theme-dark .hero-sub, html.theme-dark .hero-sub-en { width:auto !important; max-width:100% !important; white-space:normal !important; }
  html.theme-dark .anthropic-replica-aside { width:100% !important; }
  /* tagline wraps + smaller on mobile */
  html.theme-dark .control-bar-sub-en { white-space:normal !important; font-size:22px !important; }
  /* hide vector animation on mobile */
  html.theme-dark .store-hero-prism { display:none !important; }
  /* tighter side padding */
  html.theme-dark .anthropic-replica-grid { padding-left:20px !important; padding-right:20px !important; }
  html.theme-dark .topbar, html.theme-dark .store-topbar, html.theme-dark .enterprise-topbar { padding-left:16px !important; padding-right:16px !important; }
  /* hero headline scale down a touch */
  html.theme-dark .hero-main-cn { font-size:clamp(38px, 11vw, 64px) !important; }
}
/* END R22 */


/* R23 (20260716) - remove free-tools nav, account avatar chip */
html.theme-dark #freeToolsMenu, html.theme-dark .nav-free-tools-menu-shell { display:none !important; }
html.theme-dark #centerLink.nav-primary-cta-main {
  display:inline-flex !important; align-items:center; gap:9px;
}
html.theme-dark .nav-avatar {
  width:26px; height:26px; border-radius:50%;
  background:rgba(255,255,255,0.12); display:inline-flex; align-items:center; justify-content:center;
  color:#f5f5f5; flex:0 0 26px;
}
html.theme-dark .nav-avatar svg { width:15px; height:15px; }
/* END R23 */


/* R24 (20260716) - hero indent like OpenAI (not edge), dark account chip, mobile hero full-bleed */
/* 1) hero content moderate indent (~210px @1920, responsive) */
html.theme-dark .anthropic-replica-grid {
  padding-left: clamp(24px, 11vw, 210px) !important;
}

/* 2) account chip -> dark themed (was white) */
html.theme-dark .nav-account-menu #centerLink.nav-primary-cta-main,
html.theme-dark .nav-account-menu #accountMenuToggleBtn,
html.theme-dark .nav-account-menu .nav-primary-cta {
  background: rgba(255,255,255,0.06) !important;
  border-color: rgba(255,255,255,0.18) !important;
  color: #f5f5f5 !important;
}
html.theme-dark .nav-account-menu #centerLink.nav-primary-cta-main:hover,
html.theme-dark .nav-account-menu #accountMenuToggleBtn:hover {
  background: rgba(0,0,0,0.42) !important;
}
html.theme-dark .nav-avatar { background: rgba(255,255,255,0.16) !important; color:#f5f5f5 !important; }

/* 3) mobile: robust full-bleed hero + tidy content */
@media (max-width: 820px) {
  html.theme-dark .anthropic-replica-hero {
    position: relative !important;
    left: 50% !important; right: 50% !important;
    margin-left: -50vw !important; margin-right: -50vw !important;
    width: 100vw !important; max-width: 100vw !important;
  }
  html.theme-dark .anthropic-replica-grid {
    padding-left: 22px !important; padding-right: 22px !important;
  }
  html.theme-dark .hero-sub, html.theme-dark .hero-sub-en {
    width: auto !important; max-width: 100% !important; white-space: normal !important;
  }
}
/* END R24 */


/* R25 (20260716) - mobile: neutralize hero full-bleed (even margins, no black bar) */
@media (max-width: 820px) {
  html.theme-dark .anthropic-replica-hero {
    position: static !important;
    left: auto !important; right: auto !important;
    margin-left: 0 !important; margin-right: 0 !important;
    width: auto !important; max-width: 100% !important;
    border-radius: 14px !important;
  }
}
/* END R25 */


/* R26 (20260716) - CRITICAL: mobile hero must be position:relative to contain abs bg img */
@media (max-width: 820px) {
  html.theme-dark .anthropic-replica-hero {
    position: relative !important;
    left: auto !important; right: auto !important;
    width: 100vw !important; max-width: 100vw !important;
    margin-left: 50% !important; margin-right: 0 !important;
    transform: translateX(-50%) !important;
    overflow: hidden !important;
    border-radius: 0 !important;
  }
  /* hamburger: transparent bg, white bars only */
  html.theme-dark .nav-burger { background: transparent !important; border: 0 !important; box-shadow: none !important; }
}
/* END R26 */


/* R27 (20260717) - MOBILE ONLY: fix severe layout breakage on store
   Root causes from screenshots:
   1) .nav-burger span {background:#fff} painted a solid white square
   2) product row min-widths + flex-wrap:nowrap clipped BUY button / text
   3) control-bar tagline white-space:nowrap overflowed viewport
   4) hero 100vw + margin/transform full-bleed conflicted inside padded shell
   5) brand max-width + nowrap truncated name mid-word
   Scope: max-width 900px only. Desktop unchanged.
*/
@media (max-width: 900px) {
  /* --- page clip --- */
  html.theme-dark body.store-page,
  body.store-page {
    overflow-x: clip !important;
    max-width: 100vw !important;
  }

  body.store-page .shell.store-shell,
  body.store-page .shell.store-shell.editorial-shell {
    width: 100% !important;
    max-width: 100vw !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  /* --- topbar --- */
  html.theme-dark body.store-page .topbar,
  html.theme-dark body.store-page .store-topbar,
  html.theme-dark body.store-page .enterprise-topbar,
  body.store-page .topbar,
  body.store-page .store-topbar,
  body.store-page .enterprise-topbar {
    width: 100% !important;
    max-width: 100vw !important;
    box-sizing: border-box !important;
    padding: 10px 14px !important;
    gap: 8px 10px !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    min-height: 56px !important;
  }

  body.store-page .topbar-brand,
  body.store-page .brand-mini {
    max-width: min(52vw, calc(100vw - 168px)) !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }

  body.store-page .brand-mark {
    width: 40px !important;
    height: 24px !important;
    flex: 0 0 auto !important;
  }

  body.store-page .brand-text {
    max-width: min(40vw, calc(100vw - 210px)) !important;
    min-width: 0 !important;
    margin-left: 8px !important;
    overflow: hidden !important;
  }

  body.store-page .brand-stack-motion,
  body.store-page .brand-stack,
  body.store-page .brand-stack-expanded {
    min-width: 0 !important;
    max-width: 100% !important;
  }

  body.store-page .brand-stack strong,
  html.theme-dark body.store-page .brand-stack strong,
  html.theme-dark body.store-page .brand-mini strong {
    display: block !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    font-size: 13px !important;
  }

  body.store-page .topbar-action-cluster {
    gap: 8px !important;
    min-width: 0 !important;
    flex: 0 0 auto !important;
  }

  body.store-page .nav-primary-cta-solo,
  body.store-page #loginLink {
    padding: 8px 12px !important;
    font-size: 12.5px !important;
    white-space: nowrap !important;
    max-width: 42vw !important;
  }

  body.store-page .nav-primary-cta-label {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  /* hamburger: transparent plate, white bars only (kill white square) */
  html.theme-dark body.store-page .nav-burger,
  html.theme-dark .nav-burger {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    width: 40px !important;
    height: 40px !important;
  }
  html.theme-dark body.store-page .nav-burger span,
  html.theme-dark body.store-page .nav-burger .nav-burger-bars,
  html.theme-dark .nav-burger span,
  html.theme-dark .nav-burger .nav-burger-bars {
    background: transparent !important;
    color: transparent !important;
  }
  html.theme-dark body.store-page .nav-burger i,
  html.theme-dark .nav-burger i,
  html.theme-dark .nav-burger-bars i {
    background: #ffffff !important;
  }

  /* dark mobile nav panel */
  html.theme-dark body.store-page .topbar-nav {
    background: #121214 !important;
    border-top-color: rgba(255,255,255,0.10) !important;
    box-shadow: 0 26px 50px rgba(0,0,0,0.55) !important;
  }

  /* --- hero: drop 100vw/transform full-bleed; stay inside shell --- */
  html.theme-dark body.store-page .anthropic-replica-shell {
    width: 100% !important;
    max-width: 100vw !important;
    overflow: hidden !important;
    margin: 0 !important;
  }

  html.theme-dark body.store-page .anthropic-replica-hero,
  html.theme-dark .anthropic-replica-hero {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: none !important;
    min-height: min(70vh, 540px) !important;
    overflow: hidden !important;
    border-radius: 0 !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    padding-top: 56px !important;
    padding-bottom: 36px !important;
  }

  html.theme-dark body.store-page .dark-hero-media,
  html.theme-dark .dark-hero-media {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: 62% 48% !important;
    animation: none !important; /* Ken Burns can spill past clip */
    transform: none !important;
  }

  html.theme-dark body.store-page .anthropic-replica-grid,
  html.theme-dark .anthropic-replica-grid {
    position: relative !important;
    z-index: 2 !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 24px 20px 20px !important;
    box-sizing: border-box !important;
  }

  html.theme-dark body.store-page .anthropic-replica-heading,
  html.theme-dark body.store-page .anthropic-replica-aside,
  html.theme-dark .anthropic-replica-heading,
  html.theme-dark .anthropic-replica-aside {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  html.theme-dark body.store-page .hero-main-cn,
  html.theme-dark .hero-main-cn {
    font-size: clamp(30px, 8.6vw, 44px) !important;
    line-height: 1.14 !important;
    max-width: 100% !important;
    white-space: normal !important;
  }

  html.theme-dark body.store-page .hero-sub,
  html.theme-dark body.store-page .hero-sub-en,
  html.theme-dark .hero-sub,
  html.theme-dark .hero-sub-en {
    width: auto !important;
    max-width: 100% !important;
    white-space: normal !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
  }

  html.theme-dark body.store-page .hero-faq-cta,
  html.theme-dark .hero-faq-cta {
    max-width: 100% !important;
    box-sizing: border-box !important;
    padding: 13px 22px !important;
    font-size: 14px !important;
  }

  html.theme-dark body.store-page .hero-subnote {
    max-width: 100% !important;
  }

  /* --- market control bar / tagline --- */
  body.store-page .store-control-bar {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  html.theme-dark body.store-page .control-bar-sub-en,
  html.theme-dark body.store-page .store-control-bar .control-bar-sub-en,
  body.store-page .control-bar-sub-en {
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
    max-width: 100% !important;
    width: auto !important;
    font-size: clamp(18px, 5.4vw, 24px) !important;
    line-height: 1.25 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  body.store-page .control-bar-head,
  body.store-page .control-bar-intro {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  body.store-page .project-switcher {
    justify-content: flex-start !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    max-width: 100% !important;
    width: 100% !important;
    padding-bottom: 6px !important;
    scrollbar-width: none;
  }
  body.store-page .project-switcher::-webkit-scrollbar { display: none; }
  body.store-page .project-switcher-btn {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
  }

  /* --- product cards --- */
  body.store-page .store-content-column,
  body.store-page .project-grid,
  body.store-page .project-grid.enterprise-grid,
  body.store-page #market + * .project-grid {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body.store-page .ed-card,
  body.store-page .project-grid.enterprise-grid > .ed-card {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    gap: 14px !important;
    padding: 12px !important;
  }

  body.store-page .ed-media {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  body.store-page .ed-content {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    padding: 2px 2px 6px !important;
    box-sizing: border-box !important;
  }

  body.store-page .ed-content .ed-row,
  body.store-page .ed-row {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 14px !important;
    min-width: 0 !important;
    width: 100% !important;
  }

  body.store-page .ed-left,
  body.store-page .ed-content .ed-left {
    min-width: 0 !important;
    width: 100% !important;
    flex: 1 1 auto !important;
    max-width: 100% !important;
  }

  body.store-page .ed-right,
  body.store-page .ed-content .ed-right {
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    align-items: stretch !important;
    align-self: stretch !important;
    text-align: left !important;
    gap: 12px !important;
  }

  body.store-page .ed-name {
    max-width: 100% !important;
    flex-wrap: wrap !important;
  }

  body.store-page .ed-desc,
  body.store-page .ed-content .ed-desc {
    max-width: 100% !important;
    width: 100% !important;
    overflow-wrap: anywhere !important;
  }

  body.store-page .ed-price {
    white-space: normal !important;
    text-align: left !important;
    font-size: clamp(28px, 8vw, 36px) !important;
  }

  body.store-page .ed-card .product-action-row {
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
  }

  body.store-page .ed-card .product-buy-btn,
  body.store-page .ed-card .product-buy-btn.is-available,
  body.store-page .ed-card .bundle-launch-btn {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    text-align: center !important;
    justify-content: center !important;
    white-space: nowrap !important;
    padding: 12px 16px !important;
  }

  body.store-page .ed-card .qty-box {
    align-self: flex-start !important;
  }

  body.store-page .ed-meta {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
  }

  /* any remaining wide children */
  body.store-page main.shell > *,
  body.store-page .editorial-shell > * {
    max-width: 100vw !important;
    box-sizing: border-box !important;
  }
}
/* END R27 */


/* R28 (20260717) - mobile polish: stock collapse, OpenAI-style hero, account one-tap CSS aids
   1) R27 set display:grid !important on .ed-card with higher specificity than .stock-collapsed,
      so sold-out products never hid on mobile. Reassert display:none with equal/higher specificity.
   2) Hero fills viewport top-to-bottom like OpenAI (+ a little taller).
   Desktop unchanged.
*/
@media (max-width: 900px) {
  /* --- 1) sold-out default collapsed (must beat R27 display:grid) --- */
  body.store-page .ed-card.stock-collapsed,
  body.store-page .project-grid > .ed-card.stock-collapsed,
  body.store-page .project-grid.enterprise-grid > .ed-card.stock-collapsed,
  html.theme-dark body.store-page .ed-card.stock-collapsed,
  html.theme-dark body.store-page .project-grid > .ed-card.stock-collapsed,
  html.theme-dark body.store-page .project-grid.enterprise-grid > .ed-card.stock-collapsed {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
  }

  html.theme-dark body.store-page .stock-toggle-bar,
  body.store-page .stock-toggle-bar {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    margin: 6px 0 10px !important;
    padding: 14px 12px !important;
    background: transparent !important;
    border: 0 !important;
    border-top: 1px solid rgba(255,255,255,0.10) !important;
    color: rgba(255,255,255,0.72) !important;
    cursor: pointer !important;
  }
  html.theme-dark body.store-page .stock-toggle-bar:active {
    background: rgba(0,0,0,0.35) !important;
    color: #ffffff !important;
  }

  /* --- 2) OpenAI-style starfield: full viewport + a little longer --- */
  /* sticky transparent nav floats over hero (already transparent-on-top in dark) */
  html.theme-dark body.store-page .topbar,
  html.theme-dark body.store-page .store-topbar,
  html.theme-dark body.store-page .enterprise-topbar {
    position: sticky !important;
    top: 0 !important;
    z-index: 50 !important;
    background: transparent !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    border-bottom: 0 !important;
  }
  /* when scrolled past hero, keep readable bar */
  html.theme-dark.nav-scrolled body.store-page .topbar,
  html.theme-dark.nav-scrolled body.store-page .store-topbar,
  html.theme-dark.nav-scrolled body.store-page .enterprise-topbar {
    background: rgba(8,9,12,0.78) !important;
    -webkit-backdrop-filter: saturate(1.2) blur(14px) !important;
    backdrop-filter: saturate(1.2) blur(14px) !important;
  }

  body.store-page .shell.store-shell,
  body.store-page .shell.store-shell.editorial-shell {
    padding-top: 0 !important;
    gap: 0 !important;
  }

  /* pull hero under sticky topbar so stars fill from the very top */
  html.theme-dark body.store-page .anthropic-replica-shell {
    margin-top: -56px !important;
    width: 100% !important;
    max-width: 100vw !important;
    overflow: hidden !important;
  }

  html.theme-dark body.store-page .anthropic-replica-hero,
  html.theme-dark .anthropic-replica-hero {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    transform: none !important;
    /* fill screen, then slightly taller so content bleeds a bit past first fold */
    min-height: 100svh !important;
    min-height: 100svh !important; /* was 100dvh+48 — caused scroll zoom */
    height: auto !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    /* content clears floating topbar */
    padding-top: 88px !important;
    padding-bottom: 56px !important;
    overflow: hidden !important;
    border-radius: 0 !important;
  }

  html.theme-dark body.store-page .dark-hero-media,
  html.theme-dark .dark-hero-media {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: 58% 42% !important;
    animation: none !important;
    transform: none !important;
  }

  html.theme-dark body.store-page .anthropic-replica-grid,
  html.theme-dark .anthropic-replica-grid {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 12px 20px 24px !important;
    box-sizing: border-box !important;
  }

  html.theme-dark body.store-page .hero-main-cn,
  html.theme-dark .hero-main-cn {
    font-size: clamp(34px, 9.2vw, 48px) !important;
    line-height: 1.12 !important;
  }

  /* market section spacing after taller hero */
  body.store-page .store-control-bar {
    margin-top: 28px !important;
    padding-top: 8px !important;
  }

  /* account dropdown: larger tap target on chevron, avoid double-tap ghosts */
  body.store-page .nav-account-menu .nav-primary-cta-menu,
  body.store-page #accountMenuToggleBtn {
    min-width: 40px !important;
    min-height: 40px !important;
    touch-action: manipulation !important;
  }
  body.store-page .nav-account-menu {
    touch-action: manipulation !important;
  }
  html.theme-dark body.store-page .nav-account-card {
    z-index: 80 !important;
  }
}
/* END R28 */


/* R29 (20260717) - mobile only
   1) store-resource-band (从购买到激活 / 售后客服): full mobile layout
   2) starfield: pure static original image — no Ken Burns, no gradient overlays,
      no scroll-driven topbar chrome change, kill top gray seam
   Desktop unchanged.
*/
@media (max-width: 900px) {
  /* ========== 1) 从购买到激活 + 售后入口 ========== */
  body.store-page .store-resource-band,
  html.theme-dark body.store-page .store-resource-band {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 18px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 20px 0 0 !important;
    padding: 28px 16px 18px !important;
    box-sizing: border-box !important;
    align-items: stretch !important;
    border-top: 1px solid rgba(255,255,255,0.10) !important;
    overflow: hidden !important;
  }

  body.store-page .store-resource-copy,
  html.theme-dark body.store-page .store-resource-copy {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    gap: 8px !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  body.store-page .store-resource-copy h2,
  body.store-page[data-locale="en"] .store-resource-copy h2,
  html.theme-dark body.store-page .store-resource-copy h2,
  html.theme-dark body.store-page[data-locale="en"] .store-resource-copy h2 {
    width: 100% !important;
    max-width: 100% !important;
    font-size: clamp(26px, 7.2vw, 34px) !important;
    line-height: 1.2 !important;
    letter-spacing: -0.02em !important;
    font-weight: 700 !important;
    color: #f5f5f5 !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
    margin: 0 !important;
  }

  body.store-page .store-resource-list,
  html.theme-dark body.store-page .store-resource-list {
    display: grid !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    gap: 0 !important;
    padding: 4px 0 0 !important;
    margin: 0 !important;
  }

  body.store-page .store-resource-list a,
  body.store-page .guide-link,
  html.theme-dark body.store-page .store-resource-list a,
  html.theme-dark body.store-page .guide-link {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    min-height: 52px !important;
    padding: 13px 2px !important;
    gap: 12px !important;
    font-size: 15px !important;
    line-height: 1.4 !important;
    font-weight: 500 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
    color: rgba(245,245,245,0.90) !important;
    border: 0 !important;
    border-top: 1px solid rgba(255,255,255,0.10) !important;
    background: transparent !important;
  }

  body.store-page .store-resource-list a:first-child,
  html.theme-dark body.store-page .store-resource-list a:first-child {
    border-top: 0 !important;
  }

  body.store-page .store-resource-list a > span,
  html.theme-dark body.store-page .store-resource-list a > span {
    min-width: 0 !important;
    flex: 1 1 auto !important;
  }

  body.store-page .store-resource-list a::after,
  html.theme-dark body.store-page .store-resource-list a::after {
    flex: 0 0 auto !important;
    margin-left: 8px !important;
    color: rgba(255,255,255,0.40) !important;
    transform: none !important;
  }

  body.store-page .store-resource-list a:active,
  html.theme-dark body.store-page .store-resource-list a:active {
    color: #ffffff !important;
    background: rgba(255,255,255,0.04) !important;
  }

  /* footer support links (售后) stay readable / wrap on mobile */
  body.store-page .store-footer-inner,
  html.theme-dark body.store-page .store-footer-inner {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    padding: 36px 16px 44px !important;
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }

  body.store-page .store-footer-columns,
  html.theme-dark body.store-page .store-footer-columns {
    grid-template-columns: 1fr 1fr !important;
    gap: 20px 16px !important;
    width: 100% !important;
  }

  body.store-page .store-footer-column,
  html.theme-dark body.store-page .store-footer-column {
    min-width: 0 !important;
  }

  body.store-page .store-footer-column a,
  html.theme-dark body.store-page .store-footer-column a {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    min-width: 0 !important;
    max-width: 100% !important;
    font-size: 13.5px !important;
    line-height: 1.45 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  body.store-page .store-footer-column a .tg-ico,
  html.theme-dark body.store-page .store-footer-column a .tg-ico {
    flex: 0 0 16px !important;
  }

  @media (max-width: 380px) {
    body.store-page .store-footer-columns,
    html.theme-dark body.store-page .store-footer-columns {
      grid-template-columns: 1fr !important;
    }
  }

  /* ========== 2) 星空：纯静态原图，无任何动效/滚动变化，消灰缝 ========== */

  /* page / shell: match image edge black so no gray seam peeks */
  html.theme-dark body.store-page {
    background: #05060a !important;
  }
  html.theme-dark body.store-page .shell.store-shell,
  html.theme-dark body.store-page .shell.store-shell.editorial-shell,
  html.theme-dark body.store-page main.shell {
    background: transparent !important;
    padding-top: 0 !important;
    margin-top: 0 !important;
    gap: 0 !important;
  }

  /* fixed transparent topbar: out of flow → hero can start at y=0, no sticky gray seam */
  html.theme-dark body.store-page .topbar,
  html.theme-dark body.store-page .store-topbar,
  html.theme-dark body.store-page .enterprise-topbar,
  html.theme-dark.nav-scrolled body.store-page .topbar,
  html.theme-dark.nav-scrolled body.store-page .store-topbar,
  html.theme-dark.nav-scrolled body.store-page .enterprise-topbar,
  html.theme-dark body.store-page .topbar.is-scrolled {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: 100vw !important;
    z-index: 100 !important;
    background: transparent !important;
    background-color: transparent !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    border: 0 !important;
    border-bottom: 0 !important;
    box-shadow: none !important;
    transition: none !important;
  }

  /* hero shell flush to top of page */
  html.theme-dark body.store-page .anthropic-replica-shell {
    margin: 0 !important;
    margin-top: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: 100vw !important;
    overflow: hidden !important;
  }

  html.theme-dark body.store-page .anthropic-replica-hero,
  html.theme-dark .anthropic-replica-hero {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    margin-top: 0 !important;
    transform: none !important;
    /* fill viewport, slightly longer — static, no motion */
    min-height: 100svh !important;
    min-height: 100svh !important; /* was 100dvh+24 — caused scroll zoom */
    height: auto !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    padding-top: 72px !important;
    padding-bottom: 48px !important;
    overflow: hidden !important;
    border-radius: 0 !important;
    border: 0 !important;
    /* solid black under image so no gray shows at edges */
    background: #05060a !important;
    background-image: none !important;
  }

  /* kill ALL gradient / filter overlays on hero */
  html.theme-dark body.store-page .anthropic-replica-hero::before,
  html.theme-dark body.store-page .anthropic-replica-hero::after,
  html.theme-dark .anthropic-replica-hero::before,
  html.theme-dark .anthropic-replica-hero::after {
    content: none !important;
    display: none !important;
    background: none !important;
    filter: none !important;
    opacity: 0 !important;
    animation: none !important;
    transform: none !important;
  }

  /* pure static original <img> — no Ken Burns, no drift, no scale */
  html.theme-dark body.store-page .dark-hero-media,
  html.theme-dark .dark-hero-media,
  html.theme-dark body.store-page .anthropic-replica-hero > .dark-hero-media {
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: cover !important;
    object-position: center center !important;
    animation: none !important;
    transition: none !important;
    transform: none !important;
    filter: none !important;
    will-change: auto !important;
    pointer-events: none !important;
  }

  html.theme-dark body.store-page .anthropic-replica-grid {
    position: relative !important;
    z-index: 2 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 12px 20px 20px !important;
    box-sizing: border-box !important;
  }

  /* content below hero restores dark page canvas */
  body.store-page .store-control-bar,
  body.store-page .store-content-column,
  body.store-page .store-resource-band {
    background: #1f1f1e !important;
  }
  body.store-page .store-control-bar {
    margin-top: 0 !important;
    padding-top: 20px !important;
  }
}
/* END R29 */

/* R31 (20260717) - desktop keeps cosmicDrift; mobile starfield is static only */
@media (max-width: 900px) {
  html.theme-dark .dark-hero-media,
  html.theme-dark body.store-page .dark-hero-media,
  html.theme-dark .anthropic-replica-hero > .dark-hero-media,
  html.theme-dark body.store-page .anthropic-replica-hero > .dark-hero-media {
    animation: none !important;
    animation-name: none !important;
    animation-duration: 0s !important;
    animation-play-state: paused !important;
    transform: none !important;
    filter: none !important;
    transition: none !important;
    will-change: auto !important;
  }
}
/* desktop (901px+): ensure cosmicDrift stays on */
@media (min-width: 901px) {
  html.theme-dark .dark-hero-media,
  html.theme-dark body.store-page .dark-hero-media,
  html.theme-dark .anthropic-replica-hero > .dark-hero-media {
    animation: cosmicDrift 30s ease-in-out infinite alternate !important;
    transform-origin: 70% 60% !important;
    will-change: transform;
  }
}
@media (min-width: 901px) and (prefers-reduced-motion: reduce) {
  html.theme-dark .dark-hero-media,
  html.theme-dark body.store-page .dark-hero-media,
  html.theme-dark .anthropic-replica-hero > .dark-hero-media {
    animation: none !important;
    will-change: auto !important;
  }
}
/* END R31 */

/* R32 (20260717) - mobile only: stop hero "zoom" on scroll
   Cause: min-height used 100dvh (dynamic viewport). Mobile browser chrome
   show/hide changes dvh → hero box resizes → object-fit:cover recrops → looks like zoom.
   Fix: lock hero to stable svh (and px fallback), never dvh. Desktop untouched.
*/
@media (max-width: 900px) {
  html.theme-dark body.store-page .anthropic-replica-hero,
  html.theme-dark .anthropic-replica-hero,
  html.theme-dark body.store-page .anthropic-replica-hero {
    /* stable viewport only — NOT dvh/lvh */
    min-height: 100vh !important; /* old fallback */
    min-height: 100svh !important; /* small/stable viewport */
    height: 100svh !important;
    max-height: 100svh !important;
    /* prevent any leftover growth from earlier calc(100dvh + N) */
  }

  html.theme-dark body.store-page .dark-hero-media,
  html.theme-dark .dark-hero-media,
  html.theme-dark body.store-page .anthropic-replica-hero > .dark-hero-media {
    /* keep cover static; no transform that could compound with resize */
    object-fit: cover !important;
    object-position: center center !important;
    width: 100% !important;
    height: 100% !important;
    transform: none !important;
    animation: none !important;
    will-change: auto !important;
  }
}

/* also scrub explicit mobile dvh calc lines if still present as winners */

/* END R32 */

/* R33 (20260717) - multi-locale layout: en/ja/ko/ru (and non-zh) text wrap & sizing
   CSS previously only tuned data-locale="en"; ja/ko/ru overflowed like en.
   Desktop + mobile. Does not change zh layout intent.
*/
/* Tagline / hero sub: allow wrap for all non-zh (long Latin/Cyrillic/JP) */
body.store-page:not([data-locale="zh"]) .control-bar-sub-en {
  white-space: normal !important;
  max-width: min(42rem, 100%) !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  line-height: 1.25 !important;
}
body.store-page:not([data-locale="zh"]) .hero-main-cn,
body.store-page:not([data-locale="zh"]) .anthropic-replica-heading h1,
body.store-page:not([data-locale="zh"]) .anthropic-replica-heading h1 .hero-main-cn {
  max-width: min(22ch, 100%) !important;
  width: auto !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}
body.store-page:not([data-locale="zh"]) .hero-sub,
body.store-page:not([data-locale="zh"]) .hero-sub-en,
body.store-page:not([data-locale="zh"]) .hero-subnote {
  max-width: min(40ch, 100%) !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}
body.store-page:not([data-locale="zh"]) .hero-faq-cta {
  max-width: 100% !important;
  white-space: normal !important;
  text-align: center !important;
  line-height: 1.3 !important;
}

/* Resource band long links */
body.store-page:not([data-locale="zh"]) .store-resource-copy h2 {
  max-width: 100% !important;
  overflow-wrap: anywhere !important;
}
body.store-page:not([data-locale="zh"]) .store-resource-list a {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  align-items: flex-start !important;
  padding-top: 12px !important;
  padding-bottom: 12px !important;
}

/* Brand name length (日本語 / Русский site title) */
body.store-page[data-locale="ja"] .brand-stack strong,
body.store-page[data-locale="ko"] .brand-stack strong,
body.store-page[data-locale="ru"] .brand-stack strong,
body.store-page[data-locale="en"] .brand-stack strong {
  font-size: clamp(13px, 1.1vw, 17px) !important;
  max-width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* Russian: slightly tighter hero type (longer words) */
body.store-page[data-locale="ru"] .hero-main-cn,
body.store-page[data-locale="ru"] .anthropic-replica-heading h1 .hero-main-cn {
  font-size: clamp(30px, 4.6vw, 72px) !important;
  letter-spacing: -0.02em !important;
  max-width: min(16ch, 100%) !important;
}
body.store-page[data-locale="ru"] .control-bar-sub-en {
  font-size: clamp(20px, 2.4vw, 36px) !important;
}

/* Japanese / Korean hero rhythm */
body.store-page[data-locale="ja"] .hero-main-cn,
body.store-page[data-locale="ko"] .hero-main-cn {
  letter-spacing: -0.01em !important;
  line-height: 1.15 !important;
  max-width: min(14ch, 100%) !important;
}

/* Nav labels can grow (CDKアクティベーション etc. in menus) */
body.store-page:not([data-locale="zh"]) .topbar-nav-link,
body.store-page:not([data-locale="zh"]) .nav-utility-btn {
  white-space: nowrap;
}
@media (max-width: 900px) {
  body.store-page:not([data-locale="zh"]) .topbar-nav-link,
  body.store-page:not([data-locale="zh"]) .nav-utility-btn {
    white-space: normal !important;
  }
  body.store-page:not([data-locale="zh"]) .hero-main-cn {
    font-size: clamp(28px, 7.5vw, 42px) !important;
    max-width: 100% !important;
  }
  body.store-page[data-locale="ru"] .hero-main-cn {
    font-size: clamp(26px, 7vw, 38px) !important;
  }
  body.store-page:not([data-locale="zh"]) .control-bar-sub-en {
    font-size: clamp(18px, 5vw, 24px) !important;
    padding-left: 4px !important;
    padding-right: 4px !important;
  }
  body.store-page:not([data-locale="zh"]) .nav-primary-cta-label {
    max-width: 28vw !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}

/* Product card text for long locales */
body.store-page:not([data-locale="zh"]) .ed-name,
body.store-page:not([data-locale="zh"]) .ed-desc {
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}
body.store-page:not([data-locale="zh"]) .ed-price {
  white-space: normal !important;
}
/* END R33 */

/* R34 (20260717) - FIX non-zh hero title: was stacking mid-word / per-character
   Cause: legacy en max-width: 9–12ch + R33 overflow-wrap:anywhere + narrow ch
   at large font sizes. Chinese used intentional <br>; en/ja/ko/ru broke badly.
   Goal: 2 clean lines like the Chinese hero. Desktop + mobile.
*/
/* Kill over-narrow width + mid-word break on hero titles for all non-zh */
html.theme-dark body.store-page:not([data-locale="zh"]) .anthropic-replica-heading,
html.theme-dark body.store-page:not([data-locale="zh"]) .anthropic-replica-heading h1,
html.theme-dark body.store-page:not([data-locale="zh"]) .hero-main-cn,
body.store-page:not([data-locale="zh"]) .anthropic-replica-heading,
body.store-page:not([data-locale="zh"]) .anthropic-replica-heading h1,
body.store-page:not([data-locale="zh"]) .hero-main-cn,
body.store-page[data-locale="en"] .anthropic-replica-heading h1,
body.store-page[data-locale="ja"] .anthropic-replica-heading h1,
body.store-page[data-locale="ko"] .anthropic-replica-heading h1,
body.store-page[data-locale="ru"] .anthropic-replica-heading h1,
body.store-page[data-locale="en"] .hero-main-cn,
body.store-page[data-locale="ja"] .hero-main-cn,
body.store-page[data-locale="ko"] .hero-main-cn,
body.store-page[data-locale="ru"] .hero-main-cn {
  max-width: min(16em, 90vw) !important;
  width: auto !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  line-break: auto !important;
  hyphens: none !important;
  line-height: 1.12 !important;
  letter-spacing: -0.02em !important;
  display: block !important;
}

/* Latin / Cyrillic: wrap only at spaces; wide enough for "No waiting." */
html.theme-dark body.store-page[data-locale="en"] .hero-main-cn,
html.theme-dark body.store-page[data-locale="ru"] .hero-main-cn,
body.store-page[data-locale="en"] .hero-main-cn,
body.store-page[data-locale="ru"] .hero-main-cn {
  max-width: min(14em, 88vw) !important;
  word-break: keep-all !important;
  overflow-wrap: break-word !important;
  font-size: clamp(40px, 5vw, 80px) !important;
}

/* Japanese / Korean: keep phrases intact (not 1 char per line) */
html.theme-dark body.store-page[data-locale="ja"] .hero-main-cn,
html.theme-dark body.store-page[data-locale="ko"] .hero-main-cn,
body.store-page[data-locale="ja"] .hero-main-cn,
body.store-page[data-locale="ko"] .hero-main-cn {
  max-width: min(12em, 88vw) !important;
  word-break: keep-all !important;
  line-break: strict !important;
  overflow-wrap: normal !important;
  font-size: clamp(40px, 5vw, 80px) !important;
}

/* Sub copy under hero: readable paragraph width, no mid-word shredding */
html.theme-dark body.store-page:not([data-locale="zh"]) .hero-sub,
html.theme-dark body.store-page:not([data-locale="zh"]) .hero-sub-en,
html.theme-dark body.store-page:not([data-locale="zh"]) .hero-subnote,
body.store-page:not([data-locale="zh"]) .hero-sub,
body.store-page:not([data-locale="zh"]) .hero-sub-en,
body.store-page:not([data-locale="zh"]) .hero-subnote {
  max-width: min(36em, 92vw) !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  line-height: 1.5 !important;
}

/* Tagline under products */
body.store-page:not([data-locale="zh"]) .control-bar-sub-en {
  max-width: min(40em, 100%) !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
}

@media (max-width: 900px) {
  html.theme-dark body.store-page:not([data-locale="zh"]) .hero-main-cn,
  body.store-page:not([data-locale="zh"]) .hero-main-cn,
  body.store-page[data-locale="en"] .hero-main-cn,
  body.store-page[data-locale="ja"] .hero-main-cn,
  body.store-page[data-locale="ko"] .hero-main-cn,
  body.store-page[data-locale="ru"] .hero-main-cn {
    max-width: 100% !important;
    font-size: clamp(32px, 8.2vw, 44px) !important;
    line-height: 1.15 !important;
  }
  html.theme-dark body.store-page:not([data-locale="zh"]) .hero-sub-en,
  body.store-page:not([data-locale="zh"]) .hero-sub-en {
    max-width: 100% !important;
    font-size: 14px !important;
  }
}
/* END R34 */

/* R35 (20260717) - EN/RU hero title: 2-line layout like Chinese
   Chinese reference: "无需等待，" + "只管向前。" side-by-side block, not vertical shred.
   EN:  No waiting. / Just move forward.
   RU:  Не ждите. / Просто идите вперёд.
*/
/* Base: give EN/RU heading a real horizontal measure (not 9–12ch) */
html.theme-dark body.store-page[data-locale="en"] .anthropic-replica-heading,
html.theme-dark body.store-page[data-locale="ru"] .anthropic-replica-heading,
body.store-page[data-locale="en"] .anthropic-replica-heading,
body.store-page[data-locale="ru"] .anthropic-replica-heading {
  max-width: min(920px, 92vw) !important;
  width: auto !important;
}

html.theme-dark body.store-page[data-locale="en"] .anthropic-replica-heading h1,
html.theme-dark body.store-page[data-locale="ru"] .anthropic-replica-heading h1,
body.store-page[data-locale="en"] .anthropic-replica-heading h1,
body.store-page[data-locale="ru"] .anthropic-replica-heading h1 {
  display: block !important;
  max-width: min(920px, 92vw) !important;
  width: auto !important;
  margin: 0 !important;
}

/* The title span itself — wide, normal wrap only at <br> / spaces */
html.theme-dark body.store-page[data-locale="en"] .hero-main-cn,
html.theme-dark body.store-page[data-locale="ru"] .hero-main-cn,
body.store-page[data-locale="en"] .hero-main-cn,
body.store-page[data-locale="ru"] .hero-main-cn,
html.theme-dark body.store-page[data-locale="en"] .anthropic-replica-heading h1 .hero-main-cn,
html.theme-dark body.store-page[data-locale="ru"] .anthropic-replica-heading h1 .hero-main-cn {
  display: block !important;
  max-width: min(18em, 90vw) !important;
  width: max-content !important;
  max-width: min(18em, 90vw) !important;
  white-space: normal !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
  line-break: auto !important;
  hyphens: none !important;
  font-size: clamp(44px, 5.4vw, 84px) !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
  letter-spacing: -0.025em !important;
  text-wrap: balance;
}

/* Russian words are longer — slightly smaller type, wider box */
html.theme-dark body.store-page[data-locale="ru"] .hero-main-cn,
body.store-page[data-locale="ru"] .hero-main-cn {
  max-width: min(20em, 92vw) !important;
  width: max-content !important;
  max-width: min(20em, 92vw) !important;
  font-size: clamp(38px, 4.8vw, 76px) !important;
  letter-spacing: -0.02em !important;
}

/* Sub line under title */
html.theme-dark body.store-page[data-locale="en"] .hero-sub-en,
html.theme-dark body.store-page[data-locale="ru"] .hero-sub-en,
body.store-page[data-locale="en"] .hero-sub-en,
body.store-page[data-locale="ru"] .hero-sub-en {
  display: block !important;
  max-width: min(34em, 92vw) !important;
  width: auto !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  line-height: 1.45 !important;
}

@media (max-width: 900px) {
  html.theme-dark body.store-page[data-locale="en"] .hero-main-cn,
  html.theme-dark body.store-page[data-locale="ru"] .hero-main-cn,
  body.store-page[data-locale="en"] .hero-main-cn,
  body.store-page[data-locale="ru"] .hero-main-cn {
    width: auto !important;
    max-width: 100% !important;
    font-size: clamp(34px, 8.5vw, 46px) !important;
    line-height: 1.14 !important;
  }
  html.theme-dark body.store-page[data-locale="ru"] .hero-main-cn,
  body.store-page[data-locale="ru"] .hero-main-cn {
    font-size: clamp(30px, 7.8vw, 42px) !important;
  }
}
/* END R35 */


/* 立即购买按钮配色 - 20260717 (图1 palette, button-scoped) */
body.store-page .ed-card.product-codex   .product-buy-btn,
body.store-page .ed-card.product-codex   .bundle-launch-btn { --ed-accent:#34d6ee; --ed-accent-ink:#0a0c0b; }
body.store-page .ed-card.product-openai  .product-buy-btn,
body.store-page .ed-card.product-openai  .bundle-launch-btn { --ed-accent:#2dd4a8; --ed-accent-ink:#0a0c0b; }
body.store-page .ed-card.product-claude  .product-buy-btn,
body.store-page .ed-card.product-claude  .bundle-launch-btn { --ed-accent:#e08a63; --ed-accent-ink:#0a0c0b; }
body.store-page .ed-card.product-grok    .product-buy-btn,
body.store-page .ed-card.product-grok    .bundle-launch-btn,
body.store-page .ed-card.product-xgrok   .product-buy-btn,
body.store-page .ed-card.product-xgrok   .bundle-launch-btn { --ed-accent:#a78bfa; --ed-accent-ink:#0a0c0b; }
body.store-page .ed-card.product-gemini  .product-buy-btn,
body.store-page .ed-card.product-gemini  .bundle-launch-btn { --ed-accent:#6c9ef8; --ed-accent-ink:#0a0c0b; }
body.store-page .ed-card.product-cursor  .product-buy-btn,
body.store-page .ed-card.product-cursor  .bundle-launch-btn { --ed-accent:#b8d0f5; --ed-accent-ink:#0a0c0b; }
body.store-page .ed-card.product-kiro    .product-buy-btn,
body.store-page .ed-card.product-kiro    .bundle-launch-btn { --ed-accent:#f5b942; --ed-accent-ink:#0a0c0b; }
body.store-page .ed-card.product-outlook .product-buy-btn,
body.store-page .ed-card.product-outlook .bundle-launch-btn { --ed-accent:#4da3e0; --ed-accent-ink:#0a0c0b; }
body.store-page .ed-card.product-apple   .product-buy-btn,
body.store-page .ed-card.product-apple   .bundle-launch-btn { --ed-accent:#d8dbe0; --ed-accent-ink:#0a0c0b; }
body.store-page .ed-card.product-card    .product-buy-btn,
body.store-page .ed-card.product-card    .bundle-launch-btn { --ed-accent:#f26d4e; --ed-accent-ink:#0a0c0b; }
body.store-page .ed-card.product-google  .product-buy-btn,
body.store-page .ed-card.product-google  .bundle-launch-btn { --ed-accent:#e4635a; --ed-accent-ink:#0a0c0b; }
/* END 立即购买按钮配色 20260717 */

/* 卡片强调色统一 - 20260717 (图1 palette, 全卡片) */
html body.store-page .ed-card.product-codex { --ed-accent:#34d6ee !important; --ed-accent-ink:#0a0c0b !important; }
html body.store-page .ed-card.product-openai { --ed-accent:#2dd4a8 !important; --ed-accent-ink:#0a0c0b !important; }
html body.store-page .ed-card.product-claude { --ed-accent:#e08a63 !important; --ed-accent-ink:#0a0c0b !important; }
html body.store-page .ed-card.product-grok { --ed-accent:#a78bfa !important; --ed-accent-ink:#0a0c0b !important; }
html body.store-page .ed-card.product-xgrok { --ed-accent:#a78bfa !important; --ed-accent-ink:#0a0c0b !important; }
html body.store-page .ed-card.product-gemini { --ed-accent:#6c9ef8 !important; --ed-accent-ink:#0a0c0b !important; }
html body.store-page .ed-card.product-cursor { --ed-accent:#b8d0f5 !important; --ed-accent-ink:#0a0c0b !important; }
html body.store-page .ed-card.product-kiro { --ed-accent:#f5b942 !important; --ed-accent-ink:#0a0c0b !important; }
html body.store-page .ed-card.product-outlook { --ed-accent:#4da3e0 !important; --ed-accent-ink:#0a0c0b !important; }
html body.store-page .ed-card.product-apple { --ed-accent:#d8dbe0 !important; --ed-accent-ink:#0a0c0b !important; }
html body.store-page .ed-card.product-card { --ed-accent:#f26d4e !important; --ed-accent-ink:#0a0c0b !important; }
html body.store-page .ed-card.product-google { --ed-accent:#e4635a !important; --ed-accent-ink:#0a0c0b !important; }
/* END 卡片强调色统一 20260717 */

/* PRODUCT MAINTENANCE STATE (20260719) - 维护中禁用按钮，琥珀色 */
body.store-page .ed-card .product-buy-btn.is-maintenance,
body.store-page .ed-card .product-buy-btn.is-maintenance[disabled],
body.store-page .ed-card .product-buy-btn.is-maintenance:hover {
  background: rgba(230,182,87,0.14) !important;
  background-image: none !important;
  border: 1px solid rgba(230,182,87,0.55) !important;
  color: #e6b657 !important;
  cursor: not-allowed !important;
  box-shadow: none !important;
  transform: none !important;
  opacity: 1 !important;
}
body.store-page .ed-card .product-buy-btn.is-maintenance::after { content: none !important; display: none !important; }

/* 渠道徽标 (20260720) —— GPT Plus 渠道1/渠道2 显眼区分 */
body.store-page .ed-name .ed-channel{display:inline-flex;align-items:center;font-size:10px;font-weight:800;letter-spacing:.04em;color:#fff;padding:2px 9px;border-radius:999px;margin-left:2px;vertical-align:middle;box-shadow:0 1px 6px rgba(0,0,0,.28);}
body.store-page .ed-name .ed-channel-1{background:linear-gradient(135deg,#10a37f,#0c7a5f);}
body.store-page .ed-name .ed-channel-2{background:linear-gradient(135deg,#7c5cff,#5a37e0);}

/* R23 (20260722) - 立即购买 hover：黑底白字（仅作用于 [data-buy-plan]，不影响 选择卡段/联系客服 等共用 .product-buy-btn 的按钮） */
html.theme-dark .product-buy-btn.is-available[data-buy-plan]:hover,
html.theme-dark .refined-product-card .product-buy-btn.is-available[data-buy-plan]:hover,
html.theme-dark body.store-page .ed-card .product-buy-btn.is-available[data-buy-plan]:hover,
html.theme-dark body.store-page .store-content-column .ed-card .product-buy-btn.is-available[data-buy-plan]:hover {
  background:#0b0b0a !important;
  background-image:none !important;
  border-color:#0b0b0a !important;
  color:#ffffff !important;
  filter:none !important;
  box-shadow:none !important;
  transform:none !important;
}
/* END R23 */

/* R24 (20260722) - 选择卡段 hover：黑底白字（与立即购买一致） */
html.theme-dark .product-buy-btn.is-available[data-card-picker-plan]:hover,
html.theme-dark .refined-product-card .product-buy-btn.is-available[data-card-picker-plan]:hover,
html.theme-dark body.store-page .ed-card .product-buy-btn.is-available[data-card-picker-plan]:hover,
html.theme-dark body.store-page .store-content-column .ed-card .product-buy-btn.is-available[data-card-picker-plan]:hover {
  background:#0b0b0a !important;
  background-image:none !important;
  border-color:#0b0b0a !important;
  color:#ffffff !important;
  filter:none !important;
  box-shadow:none !important;
  transform:none !important;
}
/* END R24 */

/* R25 (20260722) - 未登录「登录/注册」按钮与登录态「账户」胶囊统一为半透明深色（覆盖 14152 白色规则），网页端+移动端一致 */
html.theme-dark #loginLink.nav-primary-cta-solo,
html.theme-dark .nav-primary-cta-solo,
html.theme-dark body.store-page .nav-primary-cta-solo {
  background: rgba(255,255,255,0.06) !important;
  border: 1px solid rgba(255,255,255,0.18) !important;
  color: #f5f5f5 !important;
  box-shadow: none !important;
}
html.theme-dark #loginLink.nav-primary-cta-solo:hover,
html.theme-dark #loginLink.nav-primary-cta-solo:focus-visible,
html.theme-dark .nav-primary-cta-solo:hover,
html.theme-dark .nav-primary-cta-solo:focus-visible,
html.theme-dark body.store-page .nav-primary-cta-solo:hover,
html.theme-dark body.store-page .nav-primary-cta-solo:focus-visible {
  background: rgba(255,255,255,0.12) !important;
  border-color: rgba(255,255,255,0.28) !important;
  color: #ffffff !important;
}
/* END R25 */

/* R26 (20260722) - 登录/注册按钮高度与「账户」胶囊对齐：去掉占位的 border，改用 inset 描边（高度 42px→40px） */
html.theme-dark #loginLink.nav-primary-cta-solo,
html.theme-dark .nav-primary-cta-solo,
html.theme-dark body.store-page .nav-primary-cta-solo {
  border: 0 !important;
  min-height: 40px !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.18) !important;
}
html.theme-dark #loginLink .nav-primary-cta-label {
  min-height: 40px !important;
}
html.theme-dark #loginLink.nav-primary-cta-solo:hover,
html.theme-dark #loginLink.nav-primary-cta-solo:focus-visible,
html.theme-dark .nav-primary-cta-solo:hover,
html.theme-dark .nav-primary-cta-solo:focus-visible,
html.theme-dark body.store-page .nav-primary-cta-solo:hover,
html.theme-dark body.store-page .nav-primary-cta-solo:focus-visible {
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.28) !important;
}
/* END R26 */

/* R27 (20260722) - 移动端登录/注册按钮高度对齐账户胶囊（去掉 8px 竖向 padding 导致的 56px，改为 min-height:42 = 账户胶囊高） */
@media (max-width: 900px) {
  html.theme-dark #loginLink.nav-primary-cta-solo,
  html.theme-dark body.store-page #loginLink.nav-primary-cta-solo,
  html.theme-dark body.store-page .nav-primary-cta-solo {
    padding: 0 14px !important;
    min-height: 42px !important;
  }
}
/* END R27 */

/* R28 (20260722) - 支付页(#qrModal)订单号在深色模式下改为白色（原 #3a332a 在深底上偏暗） */
html.theme-dark #qrModal .checkout-mono {
  color: #ffffff !important;
  background: rgba(255,255,255,0.08) !important;
}
/* END R28 */

/* R29 (20260722) - 订单查询结果卡片间距与分隔更清晰（网页+移动端） */
.query-result-order-list { gap: 18px !important; }
@media (max-width: 768px) { .query-result-order-list { gap: 14px !important; } }
html.theme-dark .history-merged-card {
  border: 1px solid rgba(255,255,255,0.14) !important;
  box-shadow: 0 8px 24px -16px rgba(0,0,0,0.7) !important;
}

/* R30 (20260722) - 「生成支付二维码」按钮前的支付宝图标 */
#confirmOrderBtn { display: inline-flex; align-items: center; justify-content: center; gap: 9px; }
#confirmOrderBtn .btn-alipay-icon {
  width: 19px; height: 19px; flex: 0 0 19px; display: inline-block; vertical-align: middle;
}
#confirmOrderBtn .confirm-btn-label { display: inline-flex; align-items: center; }

/* R31 (20260722) v2 - 支付倒计时：更大的卡片 + 加长进度条 + 文字居中 */
.checkout-payment-progress {
  display: block !important;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 14px;
  padding: 18px 22px !important;
  margin-bottom: 6px;
  color: inherit !important;
  text-align: center;
}
.checkout-payment-progress .cpc-top {
  display: flex; flex-direction: column; align-items: center; gap: 6px; margin-bottom: 14px;
}
.checkout-payment-progress .cpc-caption {
  font-size: 13px; color: rgba(255,255,255,0.62); letter-spacing: .02em;
}
.checkout-payment-progress .cpc-clock {
  font-family: var(--font-mono, ui-monospace, Menlo, monospace);
  font-size: 26px; font-weight: 700; letter-spacing: .06em; color: #f5f5f5;
  font-variant-numeric: tabular-nums; line-height: 1;
}
.checkout-payment-progress .cpc-track {
  position: relative; width: 100%; height: 9px; border-radius: 999px;
  background: rgba(255,255,255,0.12); overflow: hidden;
}
.checkout-payment-progress .cpc-fill {
  position: absolute; left: 0; top: 0; bottom: 0; width: 100%;
  border-radius: 999px;
  background: linear-gradient(90deg, #34d399, #10b981);
  transition: width .25s linear, background .3s ease;
}
.checkout-payment-progress.is-low .cpc-fill { background: linear-gradient(90deg, #f97316, #ef4444); }
.checkout-payment-progress.is-low .cpc-clock { color: #fca5a5; }
.checkout-payment-progress.is-expired .cpc-fill { width: 0 !important; }
html:not(.theme-dark) .checkout-payment-progress { background: rgba(17,16,13,0.04); border-color: rgba(17,16,13,0.10); }
html:not(.theme-dark) .checkout-payment-progress .cpc-caption { color: rgba(17,16,13,0.60); }
html:not(.theme-dark) .checkout-payment-progress .cpc-clock { color: #1a1815; }
html:not(.theme-dark) .checkout-payment-progress .cpc-track { background: rgba(17,16,13,0.10); }

/* 登录账户整合行 */
.checkout-user-account-val { display: inline-flex; align-items: center; gap: 7px; }
.checkout-user-account-icon { width: 16px; height: 16px; flex: 0 0 16px; opacity: .8; }
.checkout-user-account-name { font-weight: 600; }
/* END R31 */

/* R32 (20260717) - mobile only: stop hero "zoom" on scroll
   Cause: min-height used 100dvh (dynamic viewport). Mobile browser chrome
   show/hide changes dvh → hero box resizes → object-fit:cover recrops → looks like zoom.
   Fix: lock hero to stable svh (and px fallback), never dvh. Desktop untouched.
*/
@media (max-width: 900px) {
  html.theme-dark body.store-page .anthropic-replica-hero,
  html.theme-dark .anthropic-replica-hero,
  html.theme-dark body.store-page .anthropic-replica-hero {
    /* stable viewport only — NOT dvh/lvh */
    min-height: 100vh !important; /* old fallback */
    min-height: 100svh !important; /* small/stable viewport */
    height: 100svh !important;
    max-height: 100svh !important;
    /* prevent any leftover growth from earlier calc(100dvh + N) */
  }

  html.theme-dark body.store-page .dark-hero-media,
  html.theme-dark .dark-hero-media,
  html.theme-dark body.store-page .anthropic-replica-hero > .dark-hero-media {
    /* keep cover static; no transform that could compound with resize */
    object-fit: cover !important;
    object-position: center center !important;
    width: 100% !important;
    height: 100% !important;
    transform: none !important;
    animation: none !important;
    will-change: auto !important;
  }
}

/* also scrub explicit mobile dvh calc lines if still present as winners */

/* END R32 */

/* R33 (20260717) - multi-locale layout: en/ja/ko/ru (and non-zh) text wrap & sizing
   CSS previously only tuned data-locale="en"; ja/ko/ru overflowed like en.
   Desktop + mobile. Does not change zh layout intent.
*/
/* Tagline / hero sub: allow wrap for all non-zh (long Latin/Cyrillic/JP) */
body.store-page:not([data-locale="zh"]) .control-bar-sub-en {
  white-space: normal !important;
  max-width: min(42rem, 100%) !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  line-height: 1.25 !important;
}
body.store-page:not([data-locale="zh"]) .hero-main-cn,
body.store-page:not([data-locale="zh"]) .anthropic-replica-heading h1,
body.store-page:not([data-locale="zh"]) .anthropic-replica-heading h1 .hero-main-cn {
  max-width: min(22ch, 100%) !important;
  width: auto !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}
body.store-page:not([data-locale="zh"]) .hero-sub,
body.store-page:not([data-locale="zh"]) .hero-sub-en,
body.store-page:not([data-locale="zh"]) .hero-subnote {
  max-width: min(40ch, 100%) !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}
body.store-page:not([data-locale="zh"]) .hero-faq-cta {
  max-width: 100% !important;
  white-space: normal !important;
  text-align: center !important;
  line-height: 1.3 !important;
}

/* Resource band long links */
body.store-page:not([data-locale="zh"]) .store-resource-copy h2 {
  max-width: 100% !important;
  overflow-wrap: anywhere !important;
}
body.store-page:not([data-locale="zh"]) .store-resource-list a {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  align-items: flex-start !important;
  padding-top: 12px !important;
  padding-bottom: 12px !important;
}

/* Brand name length (日本語 / Русский site title) */
body.store-page[data-locale="ja"] .brand-stack strong,
body.store-page[data-locale="ko"] .brand-stack strong,
body.store-page[data-locale="ru"] .brand-stack strong,
body.store-page[data-locale="en"] .brand-stack strong {
  font-size: clamp(13px, 1.1vw, 17px) !important;
  max-width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* Russian: slightly tighter hero type (longer words) */
body.store-page[data-locale="ru"] .hero-main-cn,
body.store-page[data-locale="ru"] .anthropic-replica-heading h1 .hero-main-cn {
  font-size: clamp(30px, 4.6vw, 72px) !important;
  letter-spacing: -0.02em !important;
  max-width: min(16ch, 100%) !important;
}
body.store-page[data-locale="ru"] .control-bar-sub-en {
  font-size: clamp(20px, 2.4vw, 36px) !important;
}

/* Japanese / Korean hero rhythm */
body.store-page[data-locale="ja"] .hero-main-cn,
body.store-page[data-locale="ko"] .hero-main-cn {
  letter-spacing: -0.01em !important;
  line-height: 1.15 !important;
  max-width: min(14ch, 100%) !important;
}

/* Nav labels can grow (CDKアクティベーション etc. in menus) */
body.store-page:not([data-locale="zh"]) .topbar-nav-link,
body.store-page:not([data-locale="zh"]) .nav-utility-btn {
  white-space: nowrap;
}
@media (max-width: 900px) {
  body.store-page:not([data-locale="zh"]) .topbar-nav-link,
  body.store-page:not([data-locale="zh"]) .nav-utility-btn {
    white-space: normal !important;
  }
  body.store-page:not([data-locale="zh"]) .hero-main-cn {
    font-size: clamp(28px, 7.5vw, 42px) !important;
    max-width: 100% !important;
  }
  body.store-page[data-locale="ru"] .hero-main-cn {
    font-size: clamp(26px, 7vw, 38px) !important;
  }
  body.store-page:not([data-locale="zh"]) .control-bar-sub-en {
    font-size: clamp(18px, 5vw, 24px) !important;
    padding-left: 4px !important;
    padding-right: 4px !important;
  }
  body.store-page:not([data-locale="zh"]) .nav-primary-cta-label {
    max-width: 28vw !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}

/* Product card text for long locales */
body.store-page:not([data-locale="zh"]) .ed-name,
body.store-page:not([data-locale="zh"]) .ed-desc {
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}
body.store-page:not([data-locale="zh"]) .ed-price {
  white-space: normal !important;
}
/* END R33 */

/* R34 (20260717) - FIX non-zh hero title: was stacking mid-word / per-character
   Cause: legacy en max-width: 9–12ch + R33 overflow-wrap:anywhere + narrow ch
   at large font sizes. Chinese used intentional <br>; en/ja/ko/ru broke badly.
   Goal: 2 clean lines like the Chinese hero. Desktop + mobile.
*/
/* Kill over-narrow width + mid-word break on hero titles for all non-zh */
html.theme-dark body.store-page:not([data-locale="zh"]) .anthropic-replica-heading,
html.theme-dark body.store-page:not([data-locale="zh"]) .anthropic-replica-heading h1,
html.theme-dark body.store-page:not([data-locale="zh"]) .hero-main-cn,
body.store-page:not([data-locale="zh"]) .anthropic-replica-heading,
body.store-page:not([data-locale="zh"]) .anthropic-replica-heading h1,
body.store-page:not([data-locale="zh"]) .hero-main-cn,
body.store-page[data-locale="en"] .anthropic-replica-heading h1,
body.store-page[data-locale="ja"] .anthropic-replica-heading h1,
body.store-page[data-locale="ko"] .anthropic-replica-heading h1,
body.store-page[data-locale="ru"] .anthropic-replica-heading h1,
body.store-page[data-locale="en"] .hero-main-cn,
body.store-page[data-locale="ja"] .hero-main-cn,
body.store-page[data-locale="ko"] .hero-main-cn,
body.store-page[data-locale="ru"] .hero-main-cn {
  max-width: min(16em, 90vw) !important;
  width: auto !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  line-break: auto !important;
  hyphens: none !important;
  line-height: 1.12 !important;
  letter-spacing: -0.02em !important;
  display: block !important;
}

/* Latin / Cyrillic: wrap only at spaces; wide enough for "No waiting." */
html.theme-dark body.store-page[data-locale="en"] .hero-main-cn,
html.theme-dark body.store-page[data-locale="ru"] .hero-main-cn,
body.store-page[data-locale="en"] .hero-main-cn,
body.store-page[data-locale="ru"] .hero-main-cn {
  max-width: min(14em, 88vw) !important;
  word-break: keep-all !important;
  overflow-wrap: break-word !important;
  font-size: clamp(40px, 5vw, 80px) !important;
}

/* Japanese / Korean: keep phrases intact (not 1 char per line) */
html.theme-dark body.store-page[data-locale="ja"] .hero-main-cn,
html.theme-dark body.store-page[data-locale="ko"] .hero-main-cn,
body.store-page[data-locale="ja"] .hero-main-cn,
body.store-page[data-locale="ko"] .hero-main-cn {
  max-width: min(12em, 88vw) !important;
  word-break: keep-all !important;
  line-break: strict !important;
  overflow-wrap: normal !important;
  font-size: clamp(40px, 5vw, 80px) !important;
}

/* Sub copy under hero: readable paragraph width, no mid-word shredding */
html.theme-dark body.store-page:not([data-locale="zh"]) .hero-sub,
html.theme-dark body.store-page:not([data-locale="zh"]) .hero-sub-en,
html.theme-dark body.store-page:not([data-locale="zh"]) .hero-subnote,
body.store-page:not([data-locale="zh"]) .hero-sub,
body.store-page:not([data-locale="zh"]) .hero-sub-en,
body.store-page:not([data-locale="zh"]) .hero-subnote {
  max-width: min(36em, 92vw) !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  line-height: 1.5 !important;
}

/* Tagline under products */
body.store-page:not([data-locale="zh"]) .control-bar-sub-en {
  max-width: min(40em, 100%) !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
}

@media (max-width: 900px) {
  html.theme-dark body.store-page:not([data-locale="zh"]) .hero-main-cn,
  body.store-page:not([data-locale="zh"]) .hero-main-cn,
  body.store-page[data-locale="en"] .hero-main-cn,
  body.store-page[data-locale="ja"] .hero-main-cn,
  body.store-page[data-locale="ko"] .hero-main-cn,
  body.store-page[data-locale="ru"] .hero-main-cn {
    max-width: 100% !important;
    font-size: clamp(32px, 8.2vw, 44px) !important;
    line-height: 1.15 !important;
  }
  html.theme-dark body.store-page:not([data-locale="zh"]) .hero-sub-en,
  body.store-page:not([data-locale="zh"]) .hero-sub-en {
    max-width: 100% !important;
    font-size: 14px !important;
  }
}
/* END R34 */

/* R35 (20260717) - EN/RU hero title: 2-line layout like Chinese
   Chinese reference: "无需等待，" + "只管向前。" side-by-side block, not vertical shred.
   EN:  No waiting. / Just move forward.
   RU:  Не ждите. / Просто идите вперёд.
*/
/* Base: give EN/RU heading a real horizontal measure (not 9–12ch) */
html.theme-dark body.store-page[data-locale="en"] .anthropic-replica-heading,
html.theme-dark body.store-page[data-locale="ru"] .anthropic-replica-heading,
body.store-page[data-locale="en"] .anthropic-replica-heading,
body.store-page[data-locale="ru"] .anthropic-replica-heading {
  max-width: min(920px, 92vw) !important;
  width: auto !important;
}

html.theme-dark body.store-page[data-locale="en"] .anthropic-replica-heading h1,
html.theme-dark body.store-page[data-locale="ru"] .anthropic-replica-heading h1,
body.store-page[data-locale="en"] .anthropic-replica-heading h1,
body.store-page[data-locale="ru"] .anthropic-replica-heading h1 {
  display: block !important;
  max-width: min(920px, 92vw) !important;
  width: auto !important;
  margin: 0 !important;
}

/* The title span itself — wide, normal wrap only at <br> / spaces */
html.theme-dark body.store-page[data-locale="en"] .hero-main-cn,
html.theme-dark body.store-page[data-locale="ru"] .hero-main-cn,
body.store-page[data-locale="en"] .hero-main-cn,
body.store-page[data-locale="ru"] .hero-main-cn,
html.theme-dark body.store-page[data-locale="en"] .anthropic-replica-heading h1 .hero-main-cn,
html.theme-dark body.store-page[data-locale="ru"] .anthropic-replica-heading h1 .hero-main-cn {
  display: block !important;
  max-width: min(18em, 90vw) !important;
  width: max-content !important;
  max-width: min(18em, 90vw) !important;
  white-space: normal !important;
  word-break: keep-all !important;
  overflow-wrap: normal !important;
  line-break: auto !important;
  hyphens: none !important;
  font-size: clamp(44px, 5.4vw, 84px) !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
  letter-spacing: -0.025em !important;
  text-wrap: balance;
}

/* Russian words are longer — slightly smaller type, wider box */
html.theme-dark body.store-page[data-locale="ru"] .hero-main-cn,
body.store-page[data-locale="ru"] .hero-main-cn {
  max-width: min(20em, 92vw) !important;
  width: max-content !important;
  max-width: min(20em, 92vw) !important;
  font-size: clamp(38px, 4.8vw, 76px) !important;
  letter-spacing: -0.02em !important;
}

/* Sub line under title */
html.theme-dark body.store-page[data-locale="en"] .hero-sub-en,
html.theme-dark body.store-page[data-locale="ru"] .hero-sub-en,
body.store-page[data-locale="en"] .hero-sub-en,
body.store-page[data-locale="ru"] .hero-sub-en {
  display: block !important;
  max-width: min(34em, 92vw) !important;
  width: auto !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  line-height: 1.45 !important;
}

@media (max-width: 900px) {
  html.theme-dark body.store-page[data-locale="en"] .hero-main-cn,
  html.theme-dark body.store-page[data-locale="ru"] .hero-main-cn,
  body.store-page[data-locale="en"] .hero-main-cn,
  body.store-page[data-locale="ru"] .hero-main-cn {
    width: auto !important;
    max-width: 100% !important;
    font-size: clamp(34px, 8.5vw, 46px) !important;
    line-height: 1.14 !important;
  }
  html.theme-dark body.store-page[data-locale="ru"] .hero-main-cn,
  body.store-page[data-locale="ru"] .hero-main-cn {
    font-size: clamp(30px, 7.8vw, 42px) !important;
  }
}
/* END R35 */


/* 立即购买按钮配色 - 20260717 (图1 palette, button-scoped) */
body.store-page .ed-card.product-codex   .product-buy-btn,
body.store-page .ed-card.product-codex   .bundle-launch-btn { --ed-accent:#34d6ee; --ed-accent-ink:#0a0c0b; }
body.store-page .ed-card.product-openai  .product-buy-btn,
body.store-page .ed-card.product-openai  .bundle-launch-btn { --ed-accent:#2dd4a8; --ed-accent-ink:#0a0c0b; }
body.store-page .ed-card.product-claude  .product-buy-btn,
body.store-page .ed-card.product-claude  .bundle-launch-btn { --ed-accent:#e08a63; --ed-accent-ink:#0a0c0b; }
body.store-page .ed-card.product-grok    .product-buy-btn,
body.store-page .ed-card.product-grok    .bundle-launch-btn,
body.store-page .ed-card.product-xgrok   .product-buy-btn,
body.store-page .ed-card.product-xgrok   .bundle-launch-btn { --ed-accent:#a78bfa; --ed-accent-ink:#0a0c0b; }
body.store-page .ed-card.product-gemini  .product-buy-btn,
body.store-page .ed-card.product-gemini  .bundle-launch-btn { --ed-accent:#6c9ef8; --ed-accent-ink:#0a0c0b; }
body.store-page .ed-card.product-cursor  .product-buy-btn,
body.store-page .ed-card.product-cursor  .bundle-launch-btn { --ed-accent:#b8d0f5; --ed-accent-ink:#0a0c0b; }
body.store-page .ed-card.product-kiro    .product-buy-btn,
body.store-page .ed-card.product-kiro    .bundle-launch-btn { --ed-accent:#f5b942; --ed-accent-ink:#0a0c0b; }
body.store-page .ed-card.product-outlook .product-buy-btn,
body.store-page .ed-card.product-outlook .bundle-launch-btn { --ed-accent:#4da3e0; --ed-accent-ink:#0a0c0b; }
body.store-page .ed-card.product-apple   .product-buy-btn,
body.store-page .ed-card.product-apple   .bundle-launch-btn { --ed-accent:#d8dbe0; --ed-accent-ink:#0a0c0b; }
body.store-page .ed-card.product-card    .product-buy-btn,
body.store-page .ed-card.product-card    .bundle-launch-btn { --ed-accent:#f26d4e; --ed-accent-ink:#0a0c0b; }
body.store-page .ed-card.product-google  .product-buy-btn,
body.store-page .ed-card.product-google  .bundle-launch-btn { --ed-accent:#e4635a; --ed-accent-ink:#0a0c0b; }
/* END 立即购买按钮配色 20260717 */

/* 卡片强调色统一 - 20260717 (图1 palette, 全卡片) */
html body.store-page .ed-card.product-codex { --ed-accent:#34d6ee !important; --ed-accent-ink:#0a0c0b !important; }
html body.store-page .ed-card.product-openai { --ed-accent:#2dd4a8 !important; --ed-accent-ink:#0a0c0b !important; }
html body.store-page .ed-card.product-claude { --ed-accent:#e08a63 !important; --ed-accent-ink:#0a0c0b !important; }
html body.store-page .ed-card.product-grok { --ed-accent:#a78bfa !important; --ed-accent-ink:#0a0c0b !important; }
html body.store-page .ed-card.product-xgrok { --ed-accent:#a78bfa !important; --ed-accent-ink:#0a0c0b !important; }
html body.store-page .ed-card.product-gemini { --ed-accent:#6c9ef8 !important; --ed-accent-ink:#0a0c0b !important; }
html body.store-page .ed-card.product-cursor { --ed-accent:#b8d0f5 !important; --ed-accent-ink:#0a0c0b !important; }
html body.store-page .ed-card.product-kiro { --ed-accent:#f5b942 !important; --ed-accent-ink:#0a0c0b !important; }
html body.store-page .ed-card.product-outlook { --ed-accent:#4da3e0 !important; --ed-accent-ink:#0a0c0b !important; }
html body.store-page .ed-card.product-apple { --ed-accent:#d8dbe0 !important; --ed-accent-ink:#0a0c0b !important; }
html body.store-page .ed-card.product-card { --ed-accent:#f26d4e !important; --ed-accent-ink:#0a0c0b !important; }
html body.store-page .ed-card.product-google { --ed-accent:#e4635a !important; --ed-accent-ink:#0a0c0b !important; }
/* END 卡片强调色统一 20260717 */

/* PRODUCT MAINTENANCE STATE (20260719) - 维护中禁用按钮，琥珀色 */
body.store-page .ed-card .product-buy-btn.is-maintenance,
body.store-page .ed-card .product-buy-btn.is-maintenance[disabled],
body.store-page .ed-card .product-buy-btn.is-maintenance:hover {
  background: rgba(230,182,87,0.14) !important;
  background-image: none !important;
  border: 1px solid rgba(230,182,87,0.55) !important;
  color: #e6b657 !important;
  cursor: not-allowed !important;
  box-shadow: none !important;
  transform: none !important;
  opacity: 1 !important;
}
body.store-page .ed-card .product-buy-btn.is-maintenance::after { content: none !important; display: none !important; }

/* 渠道徽标 (20260720) —— GPT Plus 渠道1/渠道2 显眼区分 */
body.store-page .ed-name .ed-channel{display:inline-flex;align-items:center;font-size:10px;font-weight:800;letter-spacing:.04em;color:#fff;padding:2px 9px;border-radius:999px;margin-left:2px;vertical-align:middle;box-shadow:0 1px 6px rgba(0,0,0,.28);}
body.store-page .ed-name .ed-channel-1{background:linear-gradient(135deg,#10a37f,#0c7a5f);}
body.store-page .ed-name .ed-channel-2{background:linear-gradient(135deg,#7c5cff,#5a37e0);}

/* R23 (20260722) - 立即购买 hover：黑底白字（仅作用于 [data-buy-plan]，不影响 选择卡段/联系客服 等共用 .product-buy-btn 的按钮） */
html.theme-dark .product-buy-btn.is-available[data-buy-plan]:hover,
html.theme-dark .refined-product-card .product-buy-btn.is-available[data-buy-plan]:hover,
html.theme-dark body.store-page .ed-card .product-buy-btn.is-available[data-buy-plan]:hover,
html.theme-dark body.store-page .store-content-column .ed-card .product-buy-btn.is-available[data-buy-plan]:hover {
  background:#0b0b0a !important;
  background-image:none !important;
  border-color:#0b0b0a !important;
  color:#ffffff !important;
  filter:none !important;
  box-shadow:none !important;
  transform:none !important;
}
/* END R23 */

/* R24 (20260722) - 选择卡段 hover：黑底白字（与立即购买一致） */
html.theme-dark .product-buy-btn.is-available[data-card-picker-plan]:hover,
html.theme-dark .refined-product-card .product-buy-btn.is-available[data-card-picker-plan]:hover,
html.theme-dark body.store-page .ed-card .product-buy-btn.is-available[data-card-picker-plan]:hover,
html.theme-dark body.store-page .store-content-column .ed-card .product-buy-btn.is-available[data-card-picker-plan]:hover {
  background:#0b0b0a !important;
  background-image:none !important;
  border-color:#0b0b0a !important;
  color:#ffffff !important;
  filter:none !important;
  box-shadow:none !important;
  transform:none !important;
}
/* END R24 */

/* R25 (20260722) - 未登录「登录/注册」按钮与登录态「账户」胶囊统一为半透明深色（覆盖 14152 白色规则），网页端+移动端一致 */
html.theme-dark #loginLink.nav-primary-cta-solo,
html.theme-dark .nav-primary-cta-solo,
html.theme-dark body.store-page .nav-primary-cta-solo {
  background: rgba(255,255,255,0.06) !important;
  border: 1px solid rgba(255,255,255,0.18) !important;
  color: #f5f5f5 !important;
  box-shadow: none !important;
}
html.theme-dark #loginLink.nav-primary-cta-solo:hover,
html.theme-dark #loginLink.nav-primary-cta-solo:focus-visible,
html.theme-dark .nav-primary-cta-solo:hover,
html.theme-dark .nav-primary-cta-solo:focus-visible,
html.theme-dark body.store-page .nav-primary-cta-solo:hover,
html.theme-dark body.store-page .nav-primary-cta-solo:focus-visible {
  background: rgba(255,255,255,0.12) !important;
  border-color: rgba(255,255,255,0.28) !important;
  color: #ffffff !important;
}
/* END R25 */

/* R26 (20260722) - 登录/注册按钮高度与「账户」胶囊对齐：去掉占位的 border，改用 inset 描边（高度 42px→40px） */
html.theme-dark #loginLink.nav-primary-cta-solo,
html.theme-dark .nav-primary-cta-solo,
html.theme-dark body.store-page .nav-primary-cta-solo {
  border: 0 !important;
  min-height: 40px !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.18) !important;
}
html.theme-dark #loginLink .nav-primary-cta-label {
  min-height: 40px !important;
}
html.theme-dark #loginLink.nav-primary-cta-solo:hover,
html.theme-dark #loginLink.nav-primary-cta-solo:focus-visible,
html.theme-dark .nav-primary-cta-solo:hover,
html.theme-dark .nav-primary-cta-solo:focus-visible,
html.theme-dark body.store-page .nav-primary-cta-solo:hover,
html.theme-dark body.store-page .nav-primary-cta-solo:focus-visible {
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.28) !important;
}
/* END R26 */

/* R27 (20260722) - 移动端登录/注册按钮高度对齐账户胶囊（去掉 8px 竖向 padding 导致的 56px，改为 min-height:42 = 账户胶囊高） */
@media (max-width: 900px) {
  html.theme-dark #loginLink.nav-primary-cta-solo,
  html.theme-dark body.store-page #loginLink.nav-primary-cta-solo,
  html.theme-dark body.store-page .nav-primary-cta-solo {
    padding: 0 14px !important;
    min-height: 42px !important;
  }
}
/* END R27 */

/* R28 (20260722) - 支付页(#qrModal)订单号在深色模式下改为白色（原 #3a332a 在深底上偏暗） */
html.theme-dark #qrModal .checkout-mono {
  color: #ffffff !important;
  background: rgba(255,255,255,0.08) !important;
}
/* END R28 */

/* R29 (20260722) - 订单查询结果卡片间距与分隔更清晰（网页+移动端） */
.query-result-order-list { gap: 18px !important; }
@media (max-width: 768px) { .query-result-order-list { gap: 14px !important; } }
html.theme-dark .history-merged-card {
  border: 1px solid rgba(255,255,255,0.14) !important;
  box-shadow: 0 8px 24px -16px rgba(0,0,0,0.7) !important;
}

/* R30 (20260722) - 「生成支付二维码」按钮前的支付宝图标 */
#confirmOrderBtn { display: inline-flex; align-items: center; justify-content: center; gap: 9px; }
#confirmOrderBtn .btn-alipay-icon {
  width: 19px; height: 19px; flex: 0 0 19px; display: inline-block; vertical-align: middle;
}
#confirmOrderBtn .confirm-btn-label { display: inline-flex; align-items: center; }

/* R31 (20260722) - 支付倒计时改为进度条 + 倒计时 */
.checkout-payment-progress {
  display: block !important;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.10);
  border-radius: 12px;
  padding: 12px 14px !important;
  color: inherit !important;
}
.checkout-payment-progress .cpc-top {
  display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 9px;
}
.checkout-payment-progress .cpc-caption {
  font-size: 12.5px; color: rgba(255,255,255,0.60); letter-spacing: .01em;
}
.checkout-payment-progress .cpc-clock {
  font-family: var(--font-mono, ui-monospace, Menlo, monospace);
  font-size: 15px; font-weight: 700; letter-spacing: .04em; color: #f5f5f5;
  font-variant-numeric: tabular-nums;
}
.checkout-payment-progress .cpc-track {
  position: relative; height: 6px; border-radius: 999px;
  background: rgba(255,255,255,0.10); overflow: hidden;
}
.checkout-payment-progress .cpc-fill {
  position: absolute; left: 0; top: 0; bottom: 0; width: 100%;
  border-radius: 999px;
  background: linear-gradient(90deg, #34d399, #10b981);
  transition: width .25s linear, background .3s ease;
}
.checkout-payment-progress.is-low .cpc-fill { background: linear-gradient(90deg, #f97316, #ef4444); }
.checkout-payment-progress.is-low .cpc-clock { color: #fca5a5; }
.checkout-payment-progress.is-expired .cpc-fill { width: 0 !important; }
/* light theme fallback */
html:not(.theme-dark) .checkout-payment-progress { background: rgba(17,16,13,0.04); border-color: rgba(17,16,13,0.10); }
html:not(.theme-dark) .checkout-payment-progress .cpc-caption { color: rgba(17,16,13,0.60); }
html:not(.theme-dark) .checkout-payment-progress .cpc-clock { color: #1a1815; }
html:not(.theme-dark) .checkout-payment-progress .cpc-track { background: rgba(17,16,13,0.10); }
/* END R31 */

/* R33 (20260722) - 支付倒计时卡片：与二维码同宽(363px、居中)，覆盖旧的 width:fit-content 收缩规则 */
body.store-page #qrModal .checkout-payment-progress[data-checkout-payment-countdown],
body.store-page #qrModal .delivery-expiry-banner[data-checkout-payment-countdown].checkout-payment-progress {
  display: block !important;
  width: 100% !important;
  max-width: 363px !important;
  margin: 0 auto 4px !important;
  min-height: 0 !important;
  padding: 18px 22px !important;
  border-radius: 14px !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  background: rgba(255,255,255,0.05) !important;
  color: inherit !important;
  text-align: center !important;
}
body.store-page #qrModal .checkout-payment-progress[data-checkout-payment-countdown] .cpc-top {
  display: flex !important; flex-direction: column !important; align-items: center !important;
  gap: 6px !important; margin-bottom: 14px !important;
}
body.store-page #qrModal .checkout-payment-progress[data-checkout-payment-countdown] .cpc-caption {
  font-size: 13px !important; color: rgba(255,255,255,0.62) !important;
}
body.store-page #qrModal .checkout-payment-progress[data-checkout-payment-countdown] .cpc-clock {
  font-size: 26px !important; font-weight: 700 !important; letter-spacing: .06em !important;
  color: #f5f5f5 !important; line-height: 1 !important; font-variant-numeric: tabular-nums;
}
body.store-page #qrModal .checkout-payment-progress[data-checkout-payment-countdown] .cpc-track {
  width: 100% !important; height: 9px !important; border-radius: 999px !important;
  background: rgba(255,255,255,0.14) !important; overflow: hidden !important; position: relative !important;
}
body.store-page #qrModal .checkout-payment-progress[data-checkout-payment-countdown].is-low .cpc-clock { color:#fca5a5 !important; }
/* END R33 */

/* R34 (20260722) - 确认页与二维码页卡片统一固定高度（进度条已移到右侧摘要上方，左列变矮不再滚动） */
body.store-page #qrModal.is-user-checkout-page .checkout-layout {
  height: min(720px, calc(100vh - 40px)) !important;
  max-height: min(720px, calc(100vh - 40px)) !important;
}
/* 右侧摘要顶部的倒计时与下方内容留出间距 */
body.store-page #qrModal .checkout-side-column .checkout-payment-progress[data-checkout-payment-countdown] {
  margin: 14px 0 20px !important;
  max-width: 100% !important;
}
/* END R34 */

/* R36 (20260722) - 确认订单页(initial)内容垂直居中，填充底部空白（二维码页不受影响） */
body.store-page #qrModal[data-checkout-state="initial"] .checkout-side-column {
  align-content: center !important;
}
/* END R36 */

/* R37 (20260722) - 让确认页两列拉伸到内容区满高，右列内容垂直居中、左列保持顶部 */
body.store-page #qrModal[data-checkout-state="initial"] .checkout-sheet-body {
  grid-template-rows: minmax(0, 1fr) !important;
  align-items: stretch !important;
}
body.store-page #qrModal[data-checkout-state="initial"] .checkout-main-column {
  align-content: start !important;
}
body.store-page #qrModal[data-checkout-state="initial"] .checkout-side-column {
  align-content: center !important;
}
/* END R37 */

/* R37-FIX (20260804) - 移动端单列时 R37 的 minmax(0,1fr) 会塌陷。
   桌面是「两列一行」，1fr 行填满高度没问题；≤980px 变成「一列两行」后，
   第一行(左栏)最小值为 0，会被第二行(订单摘要)挤到只剩几十px，
   左栏内容溢出并压在订单摘要上（确认订单页排版错乱）。
   单列布局下让行高回到按内容分配，内容超高时由 .checkout-sheet-body 自身滚动。 */
@media (max-width: 980px) {
  body.store-page #qrModal[data-checkout-state="initial"] .checkout-sheet-body {
    grid-template-rows: auto !important;
  }
}
/* END R37-FIX */

/* R38 (20260722) - 确认页数量步进器（合并了原「选择数量」弹窗） */
.checkout-qty-stepper {
  display: inline-flex !important;
  align-items: center;
  gap: 0;
  border: 1px solid rgba(255,255,255,0.16);
  border-radius: 9px;
  overflow: hidden;
  background: rgba(255,255,255,0.04);
}
.checkout-qty-stepper .checkout-qty-btn {
  width: 30px; height: 30px;
  display: inline-flex; align-items: center; justify-content: center;
  border: 0; background: transparent; color: #f5f5f5;
  font-size: 17px; line-height: 1; cursor: pointer;
  transition: background .15s ease;
}
.checkout-qty-stepper .checkout-qty-btn:hover { background: rgba(255,255,255,0.10); }
.checkout-qty-stepper .checkout-qty-btn:active { background: rgba(255,255,255,0.16); }
.checkout-qty-stepper .checkout-qty-num {
  min-width: 34px; text-align: center;
  font-size: 14px; font-weight: 700; color: #f5f5f5;
  font-variant-numeric: tabular-nums;
  border-left: 1px solid rgba(255,255,255,0.12);
  border-right: 1px solid rgba(255,255,255,0.12);
  padding: 4px 6px;
}
html:not(.theme-dark) .checkout-qty-stepper { border-color: rgba(17,16,13,0.16); background: rgba(17,16,13,0.03); }
html:not(.theme-dark) .checkout-qty-stepper .checkout-qty-btn { color: #1a1815; }
html:not(.theme-dark) .checkout-qty-stepper .checkout-qty-num { color: #1a1815; border-color: rgba(17,16,13,0.12); }
/* END R38 */

/* R8 (20260726) - order query result: restore label/value hierarchy in dark */
html.theme-dark .history-merged-line span,
html.theme-dark .history-item span { color:rgba(255,255,255,0.45) !important; font-weight:400 !important; letter-spacing:.02em; }
html.theme-dark .history-merged-line strong,
html.theme-dark .history-item strong { color:#f2f2f2 !important; }
html.theme-dark .history-merged-line,
html.theme-dark .history-item { border-color:rgba(255,255,255,0.06) !important; }
/* END R8 */

/* R9 (20260726) - order query result: card separation + copy buttons + status chip (dark) */
/* 1) 卡片与容器同色导致粘连 -> 卡片提亮为托盘上的卡片 */
html.theme-dark .history-merged-card {
  background:#1f1f1f !important;
  border-color:rgba(255,255,255,0.10) !important;
  box-shadow:0 1px 3px rgba(0,0,0,0.45);
}
/* 2) 复制按钮背景与卡片同色且边框透明 -> 变成可见的次级按钮 */
html.theme-dark .query-copy-order-btn,
html.theme-dark .query-copy-all-btn {
  background:rgba(255,255,255,0.07) !important;
  border-color:rgba(255,255,255,0.16) !important;
  color:#ededed !important;
  min-height:34px !important;
  padding:0 14px !important;
  font-size:13px !important;
  font-weight:500 !important;
}
html.theme-dark .query-copy-order-btn:hover,
html.theme-dark .query-copy-all-btn:hover {
  background:rgba(255,255,255,0.13) !important;
  border-color:rgba(255,255,255,0.28) !important;
}
/* 3) 状态徽章原为 40% 白灰块 -> 改为已支付语义色 */
html.theme-dark .history-merged-card .chip {
  background:rgba(45,190,130,0.14) !important;
  border:1px solid rgba(45,190,130,0.34) !important;
  color:#5fd3a3 !important;
  font-size:12px !important;
  font-weight:600 !important;
  padding:3px 11px !important;
}
/* END R9 */

/* R10 (20260726) - order query result: 去掉比面板更暗的黑色托盘，卡片改为面板上的凸起卡片 */
html.theme-dark .query-result-shell {
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
/* 标题区改为分隔线结构，不再是黑色色块 */
html.theme-dark .query-result-shell-head {
  background:transparent !important;
  padding:0 0 14px !important;
  border-bottom:1px solid rgba(255,255,255,0.10) !important;
}
/* 卡片比面板略亮 -> 凸起感，卡片之间露出的是面板底色而非黑带 */
html.theme-dark .history-merged-card {
  background:#2c2c2c !important;
  border-color:rgba(255,255,255,0.12) !important;
  box-shadow:0 1px 2px rgba(0,0,0,0.25) !important;
}
/* 卡内交付内容块相应上调，避免与卡片同色 */
html.theme-dark .delivery-copy-card,
html.theme-dark .delivery-copy-card-plain,
html.theme-dark .history-code-list > * {
  background:rgba(255,255,255,0.06) !important;
  border-color:rgba(255,255,255,0.12) !important;
}
/* END R10 */

/* R11 (20260727) - 商品卡片描述内的网址链接 */
body.store-page .refined-card-desc-link {
  color: inherit;
  text-decoration: none;
  border-bottom: 1px solid rgba(255,255,255,0.28);
  padding-bottom: 1px;
  transition: border-color .16s ease, color .16s ease;
}
body.store-page .refined-card-desc-link:hover {
  color: #fff;
  border-bottom-color: rgba(255,255,255,0.75);
}
/* END R11 */

/* R12 (20260727) - ed-desc 内的网址链接 */
body.store-page .ed-desc .refined-card-desc-link {
  color: inherit;
  text-decoration: none;
  border-bottom: 1px solid rgba(255,255,255,0.28);
  padding-bottom: 1px;
  transition: border-color .16s ease, color .16s ease;
}
body.store-page .ed-desc .refined-card-desc-link:hover {
  color: #fff;
  border-bottom-color: rgba(255,255,255,0.75);
}
/* END R12 */

/* R13 (20260727) - Telegram 项目主题色（官方蓝 #2AABEE，区别于 Outlook/Gemini 蓝） */
.product-telegram { --project-accent: rgba(42, 171, 238, 0.50); }
body.store-page .refined-product-card.product-telegram { --rpc-accent: #2AABEE; }
body.store-page .refined-product-card.product-telegram .product-buy-btn.is-available:hover { background: #1e96d4 !important; }
body.store-page .product-telegram .rpc-icon-wrap { --rpc-icon-bg: #2AABEE14; --rpc-icon-border: #2AABEE33; }
body.store-page .all-pg:has(.product-telegram) .all-pg-label::before { background: #2AABEE; }
/* END R13 */

/* R14 (20260727) - Telegram 项目主题色（ed-card 体系，官方蓝） */
body.store-page .ed-card.product-telegram { --ed-accent:#2AABEE; --ed-accent-ink:#04121b; }
html.theme-dark body.store-page .ed-card.product-telegram { --ed-accent:#3fb8f5; --ed-accent-ink:#04121b; }
/* END R14 */

/* ===== R14 (20260727) 统一按钮与链接配色：纯白按钮/黑字，去品牌蓝链接 ===== */
/* 立即购买 / 选择卡段：统一纯白背景、黑色字体 */
body.store-page .ed-card .product-buy-btn.is-available,
body.store-page .ed-card .bundle-launch-btn,
html.theme-dark body.store-page .ed-card .product-buy-btn.is-available,
html.theme-dark body.store-page .ed-card .bundle-launch-btn {
  background:#ffffff !important;
  background-image:none !important;
  border:1px solid #ffffff !important;
  border-color:#ffffff !important;
  color:#000000 !important;
  box-shadow:none !important;
}
body.store-page .ed-card .product-buy-btn.is-available:hover,
body.store-page .ed-card .bundle-launch-btn:hover,
html.theme-dark body.store-page .ed-card .product-buy-btn.is-available:hover,
html.theme-dark body.store-page .ed-card .product-buy-btn.is-available[data-buy-plan]:hover,
html.theme-dark body.store-page .ed-card .product-buy-btn.is-available[data-card-picker-plan]:hover,
html.theme-dark body.store-page .store-content-column .ed-card .product-buy-btn.is-available:hover,
html.theme-dark body.store-page .store-content-column .ed-card .product-buy-btn.is-available[data-buy-plan]:hover,
html.theme-dark body.store-page .store-content-column .ed-card .product-buy-btn.is-available[data-card-picker-plan]:hover {
  background:#e9e9e9 !important;
  border-color:#e9e9e9 !important;
  color:#000000 !important;
  box-shadow:none !important;
}
/* 说明文档/使用须知等标题链接：改为与描述内网址链接一致（不出现蓝色） */
body.store-page .ed-card .rpc-title-doc-link,
body.store-page .ed-card .refined-card-link {
  color:inherit !important;
  opacity:.85;
  text-decoration:none !important;
  border-bottom:1px solid rgba(255,255,255,0.28) !important;
}
body.store-page .ed-card .rpc-title-doc-link:hover,
body.store-page .ed-card .refined-card-link:hover {
  color:#fff !important;
  opacity:1;
  border-bottom-color:rgba(255,255,255,0.75) !important;
}
/* END R14 */

/* ===== R15 (20260727) 所有站内商品链接追加外链箭头图标 ===== */
body.store-page .ed-card .rpc-title-doc-link,
body.store-page .ed-card .refined-card-link,
body.store-page .refined-card-desc-link,
body.store-page .ed-desc .refined-card-desc-link {
  display:inline-flex;
  align-items:center;
  gap:5px;
}
body.store-page .ed-card .rpc-title-doc-link::before,
body.store-page .ed-card .refined-card-link::before,
body.store-page .refined-card-desc-link::before,
body.store-page .ed-desc .refined-card-desc-link::before {
  content:"";
  width:.8em;
  height:.8em;
  flex:none;
  opacity:.7;
  background:currentColor;
  -webkit-mask:var(--ext) no-repeat center / contain;
  mask:var(--ext) no-repeat center / contain;
  --ext:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 6H6a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2v-6"/><path d="M11 13l9-9M15 4h5v5"/></svg>');
}
body.store-page .ed-card .rpc-title-doc-link:hover::before,
body.store-page .ed-card .refined-card-link:hover::before,
body.store-page .refined-card-desc-link:hover::before,
body.store-page .ed-desc .refined-card-desc-link:hover::before {
  opacity:1;
}
/* END R15 */


/* ═══════ 限时促销：划线原价 + 倒计时 ═══════ */
body.store-page .ed-was{
  font-family:var(--font-serif);
  font-size:17px;line-height:1;color:var(--ag-muted);
  opacity:.62;margin-bottom:4px;white-space:nowrap;
  animation:edWasIn .5s cubic-bezier(.16,1,.3,1) both;
}
body.store-page .ed-was-inner{position:relative;display:inline-block;padding:0 1px;}
body.store-page .ed-was-inner::after{
  content:"";position:absolute;left:0;right:0;top:52%;height:1.5px;border-radius:2px;
  background:currentColor;opacity:.85;
  transform:scaleX(0);transform-origin:left center;
  animation:edStrike .55s cubic-bezier(.16,1,.3,1) .28s forwards;
}
@keyframes edWasIn{from{opacity:0;transform:translateY(-4px)}to{opacity:.62;transform:none}}
@keyframes edStrike{to{transform:scaleX(1)}}

body.store-page .ed-price.is-promo{animation:edPriceDrop .62s cubic-bezier(.16,1,.3,1) .34s both;}
@keyframes edPriceDrop{
  0%{opacity:0;transform:translateY(9px) scale(.94)}
  62%{opacity:1;transform:translateY(0) scale(1.045)}
  100%{opacity:1;transform:none}
}

body.store-page .ed-promo{
  display:inline-flex;align-items:center;gap:6px;margin-top:8px;
  padding:4px 9px 4px 8px;border-radius:8px;
  font-family:var(--font-sans);font-size:11.5px;font-weight:600;letter-spacing:.02em;
  color:#c2410c;background:rgba(234,88,12,.09);border:1px solid rgba(234,88,12,.22);
  white-space:nowrap;animation:edPromoIn .5s cubic-bezier(.16,1,.3,1) .5s both;
}
body.store-page .ed-promo-dot{
  width:5px;height:5px;border-radius:50%;background:currentColor;flex-shrink:0;
  animation:edPromoPulse 2.2s ease-in-out infinite;
}
body.store-page .ed-promo-time{
  font-variant-numeric:tabular-nums;font-feature-settings:"tnum";
  letter-spacing:.04em;min-width:66px;text-align:right;
}
body.store-page .ed-promo.is-urgent{color:#dc2626;background:rgba(220,38,38,.1);border-color:rgba(220,38,38,.28)}
body.store-page .ed-promo.is-urgent .ed-promo-dot{animation-duration:1.1s}
body.store-page .ed-promo.is-over{opacity:.5;filter:grayscale(1)}
@keyframes edPromoIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@keyframes edPromoPulse{
  0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(234,88,12,.42)}
  50%{opacity:.55;box-shadow:0 0 0 5px rgba(234,88,12,0)}
}

html.theme-dark .ed-was{color:rgba(255,255,255,.5)!important;}
html.theme-dark .ed-promo{color:#fdba74;background:rgba(251,146,60,.12);border-color:rgba(251,146,60,.26)}
html.theme-dark .ed-promo.is-urgent{color:#fca5a5;background:rgba(248,113,113,.13);border-color:rgba(248,113,113,.3)}
html.theme-dark .ed-promo-dot{animation-name:edPromoPulseDark}
@keyframes edPromoPulseDark{
  0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(251,146,60,.45)}
  50%{opacity:.55;box-shadow:0 0 0 5px rgba(251,146,60,0)}
}

@media (prefers-reduced-motion:reduce){
  body.store-page .ed-was,body.store-page .ed-was-inner::after,
  body.store-page .ed-price.is-promo,body.store-page .ed-promo,
  body.store-page .ed-promo-dot{animation:none!important;transform:none!important;opacity:1}
  body.store-page .ed-was-inner::after{transform:scaleX(1)!important}
  body.store-page .ed-was{opacity:.62}
}


/* ===== 联系支持弹窗（手动发货商品） ===== */
.support-modal{position:fixed;inset:0;z-index:12000;display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;pointer-events:none;transition:opacity .22s ease;}
.support-modal.is-open{opacity:1;pointer-events:auto;}
.support-modal-backdrop{position:absolute;inset:0;background:rgba(8,10,12,.72);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);}
.support-modal-card{position:relative;width:min(420px,100%);background:#17191c;border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:26px 26px 22px;box-shadow:0 32px 80px -28px rgba(0,0,0,.9),inset 0 1px 0 rgba(255,255,255,.06);transform:translateY(14px) scale(.97);transition:transform .28s cubic-bezier(.22,1,.36,1);}
.support-modal.is-open .support-modal-card{transform:none;}
.support-modal-close{position:absolute;top:12px;right:14px;width:32px;height:32px;border:none;background:none;color:rgba(255,255,255,.42);font-size:24px;line-height:1;border-radius:50%;cursor:pointer;transition:color .18s,background .18s;}
.support-modal-close:hover{color:#fff;background:rgba(255,255,255,.08);}
.support-modal-title{margin:0 0 8px;font-size:18px;font-weight:650;color:#f1f3f5;letter-spacing:.3px;}
.support-modal-sub{margin:0 0 20px;font-size:13px;line-height:1.6;color:rgba(255,255,255,.5);}
.support-modal-list{display:flex;flex-direction:column;gap:10px;}
.support-item{display:flex;align-items:center;gap:12px;padding:13px 15px;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:rgba(255,255,255,.035);transition:border-color .18s,background .18s;}
.support-item:hover{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.06);}
.support-item-label{flex:none;min-width:66px;font-size:12px;font-weight:600;letter-spacing:.6px;text-transform:uppercase;color:rgba(255,255,255,.42);}
.support-item-value{flex:1;min-width:0;font-size:15px;font-weight:600;color:#f1f3f5;text-decoration:none;word-break:break-all;}
a.support-item-value:hover{color:#10a37f;text-decoration:underline;}
.support-item-copy{flex:none;box-sizing:border-box;width:76px;text-align:center;white-space:nowrap;border:1px solid rgba(255,255,255,.14);background:transparent;color:rgba(255,255,255,.62);font-size:12px;padding:6px 0;border-radius:8px;cursor:pointer;font-family:inherit;transition:color .18s,background .18s,border-color .18s;}
.support-item-copy:hover{color:#fff;border-color:rgba(255,255,255,.3);background:rgba(255,255,255,.08);}
.support-item-copy.is-copied{color:#10a37f;border-color:rgba(16,163,127,.5);background:rgba(16,163,127,.12);}
@media (max-width:520px){
  .support-modal-card{padding:22px 18px 18px;}
  .support-item{flex-wrap:wrap;gap:8px;}
  .support-item-label{min-width:auto;width:100%;}
}

/* R39 (20260810) - 确认页数量支持自定义键入（原先只能点 −/+） */
.checkout-qty-stepper .checkout-qty-field {
  -webkit-appearance: none;
  appearance: none;
  width: 58px;
  min-width: 58px;
  align-self: stretch;
  height: auto;
  min-height: 30px;
  padding: 0 6px;
  font-family: inherit;
  background: transparent;
  border: 0;
  border-left: 1px solid rgba(255,255,255,0.12);
  border-right: 1px solid rgba(255,255,255,0.12);
  border-radius: 0;
  box-shadow: none;
  outline: none;
  text-align: center;
}
.checkout-qty-stepper .checkout-qty-field:focus {
  background: rgba(255,255,255,0.09);
  border-color: rgba(255,255,255,0.24);
  box-shadow: none;
  outline: none;
}
html:not(.theme-dark) .checkout-qty-stepper .checkout-qty-field {
  border-left-color: rgba(17,16,13,0.12);
  border-right-color: rgba(17,16,13,0.12);
}
html:not(.theme-dark) .checkout-qty-stepper .checkout-qty-field:focus {
  background: rgba(17,16,13,0.06);
  border-color: rgba(17,16,13,0.2);
}
/* END R39 */


/* R40 (20260810) - 商品文案里的重点短语（如「两种订阅方案」） */
body.store-page .ed-desc .ed-desc-em {
  color: var(--ed-accent);
  font-weight: 600;
}
/* END R40 */




/* R42 (20260812) - 结算页支付渠道切换（支付宝 / 微信支付） */
.checkout-pay-switch {
  display: inline-flex !important;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.checkout-pay-opt {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 11px 6px 9px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,0.14);
  background: rgba(255,255,255,0.04);
  color: rgba(255,255,255,0.62);
  font-family: inherit;
  font-size: 12.5px;
  font-weight: 600;
  line-height: 1;
  cursor: pointer;
  transition: border-color .18s ease, background .18s ease, color .18s ease, opacity .18s ease;
}
.checkout-pay-opt:hover { border-color: rgba(255,255,255,0.28); background: rgba(255,255,255,0.08); color: #f1f3f5; }
.checkout-pay-opt.is-active {
  border-color: rgba(255,255,255,0.42);
  background: rgba(255,255,255,0.12);
  color: #ffffff;
}
.checkout-pay-opt.is-off { opacity: .4; cursor: default; }
.checkout-pay-opt.is-off:hover { opacity: .4; border-color: rgba(255,255,255,0.14); background: rgba(255,255,255,0.04); color: rgba(255,255,255,0.62); }
.checkout-pay-opt.is-off .checkout-pay-opt-name { text-decoration: line-through; }
.checkout-pay-opt-icon { display: inline-flex; }
.checkout-pay-opt-icon svg { width: 15px; height: 15px; display: block; }
html:not(.theme-dark) .checkout-pay-opt { border-color: rgba(17,16,13,0.16); background: rgba(17,16,13,0.03); color: #4a463f; }
html:not(.theme-dark) .checkout-pay-opt.is-active { border-color: rgba(17,16,13,0.4); background: rgba(17,16,13,0.08); color: #1a1815; }
/* END R42 */


/* R43 (20260812) - 支付完成动画（Stripe 风格，支付宝 / 微信共用） */
body.store-page #qrModal .pay-done {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 26px;
  padding: 30px 0 8px;
  text-align: center;
}
body.store-page #qrModal .pay-done-stage {
  position: relative;
  width: 128px;
  height: 128px;
  display: grid;
  place-items: center;
}
/* 底层柔光 */
body.store-page #qrModal .pay-done-glow {
  position: absolute;
  inset: -18%;
  border-radius: 50%;
  background: radial-gradient(circle at 50% 50%, rgba(52,199,89,.42) 0%, rgba(52,199,89,.14) 42%, rgba(52,199,89,0) 68%);
  opacity: 0;
  transform: scale(.55);
  animation: payDoneGlow 1.15s cubic-bezier(.22,1,.36,1) 40ms forwards;
}
/* 两圈错开的涟漪 */
body.store-page #qrModal .pay-done-ripple {
  position: absolute;
  width: 92px;
  height: 92px;
  border-radius: 50%;
  border: 1.5px solid rgba(52,199,89,.55);
  opacity: 0;
  transform: scale(.72);
  animation: payDoneRipple 1.5s cubic-bezier(.16,.8,.3,1) 340ms forwards;
}
body.store-page #qrModal .pay-done-ripple.is-late { animation-delay: 620ms; border-color: rgba(52,199,89,.34); }
/* 主体圆盘 */
body.store-page #qrModal .pay-done-disc {
  position: relative;
  width: 92px;
  height: 92px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: linear-gradient(160deg, #4ade80 0%, #34c759 44%, #16a34a 100%);
  box-shadow:
    0 18px 38px -14px rgba(22,163,74,.75),
    inset 0 1.5px 0 rgba(255,255,255,.45),
    inset 0 -10px 18px -12px rgba(0,0,0,.45);
  transform: scale(.28);
  opacity: 0;
  animation: payDoneDisc 720ms cubic-bezier(.16,1.28,.36,1) 60ms forwards;
}
body.store-page #qrModal .pay-done-svg {
  width: 92px;
  height: 92px;
  display: block;
  overflow: visible;
}
body.store-page #qrModal .pay-done-check {
  fill: none;
  stroke: #ffffff;
  stroke-width: 7.5;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-dasharray: 62;
  stroke-dashoffset: 62;
  filter: drop-shadow(0 1px 1px rgba(6,78,42,.35));
  animation: payDoneCheck 460ms cubic-bezier(.65,0,.35,1) 330ms forwards;
}
/* 文案 */
body.store-page #qrModal .pay-done-copy { display: grid; gap: 9px; }
body.store-page #qrModal .pay-done-amount {
  font-size: 34px;
  font-weight: 700;
  letter-spacing: -.01em;
  color: #f5f5f5;
  font-variant-numeric: tabular-nums;
  opacity: 0;
  transform: translateY(10px);
  animation: payDoneRise 620ms cubic-bezier(.22,1,.36,1) 560ms forwards;
}
body.store-page #qrModal .pay-done-meta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  font-size: 13px;
  letter-spacing: .01em;
  color: rgba(255,255,255,.5);
  opacity: 0;
  transform: translateY(10px);
  animation: payDoneRise 620ms cubic-bezier(.22,1,.36,1) 700ms forwards;
}
body.store-page #qrModal .pay-done-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #34c759;
  box-shadow: 0 0 0 3px rgba(52,199,89,.18);
}
body.store-page #qrModal .pay-done-sep { color: rgba(255,255,255,.26); }

@keyframes payDoneGlow {
  0%   { opacity: 0; transform: scale(.55); }
  45%  { opacity: 1; transform: scale(1.04); }
  100% { opacity: .58; transform: scale(1); }
}
@keyframes payDoneRipple {
  0%   { opacity: 0; transform: scale(.72); }
  18%  { opacity: .85; }
  100% { opacity: 0; transform: scale(1.95); }
}
@keyframes payDoneDisc {
  0%   { opacity: 0; transform: scale(.28); }
  55%  { opacity: 1; transform: scale(1.08); }
  78%  { transform: scale(.975); }
  100% { opacity: 1; transform: scale(1); }
}
@keyframes payDoneCheck {
  0%   { stroke-dashoffset: 62; }
  100% { stroke-dashoffset: 0; }
}
@keyframes payDoneRise {
  0%   { opacity: 0; transform: translateY(10px); }
  100% { opacity: 1; transform: translateY(0); }
}

html:not(.theme-dark) body.store-page #qrModal .pay-done-amount { color: #16150f; }
html:not(.theme-dark) body.store-page #qrModal .pay-done-meta { color: rgba(17,16,13,.55); }
html:not(.theme-dark) body.store-page #qrModal .pay-done-sep { color: rgba(17,16,13,.3); }

@media (max-width: 720px) {
  body.store-page #qrModal .pay-done { gap: 20px; padding: 18px 0 4px; }
  body.store-page #qrModal .pay-done-stage { width: 106px; height: 106px; }
  body.store-page #qrModal .pay-done-disc,
  body.store-page #qrModal .pay-done-svg { width: 78px; height: 78px; }
  body.store-page #qrModal .pay-done-ripple { width: 78px; height: 78px; }
  body.store-page #qrModal .pay-done-amount { font-size: 29px; }
}

@media (prefers-reduced-motion: reduce) {
  body.store-page #qrModal .pay-done-glow,
  body.store-page #qrModal .pay-done-disc,
  body.store-page #qrModal .pay-done-check,
  body.store-page #qrModal .pay-done-amount,
  body.store-page #qrModal .pay-done-meta {
    animation-duration: .01ms !important;
    animation-delay: 0ms !important;
  }
  body.store-page #qrModal .pay-done-ripple { display: none; }
}
/* END R43 */


/* ── 限时活动价标（细边药丸 + 缓慢掠光，克制的高级感） ── */
body.store-page .ed-offer{
  position:relative;overflow:hidden;align-self:baseline;
  display:inline-flex;align-items:center;gap:5px;
  padding:2px 9px 3px;border-radius:999px;
  font-family:var(--font-serif);font-style:italic;font-weight:400;
  font-size:12.5px;line-height:1.45;letter-spacing:.01em;white-space:nowrap;
  color:var(--ed-accent);
  border:1px solid rgba(130,130,130,.3);
  border-color:color-mix(in srgb, var(--ed-accent) 34%, transparent);
  background:color-mix(in srgb, var(--ed-accent) 8%, transparent);
  animation:edOfferRise .5s cubic-bezier(.16,1,.3,1) .2s both;
}
body.store-page .ed-offer::before{
  content:"";flex:none;width:4px;height:4px;border-radius:50%;
  background:currentColor;
  animation:edOfferDot 3.8s ease-in-out infinite;
}
body.store-page .ed-offer::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(105deg,transparent 42%,rgba(255,255,255,.4) 50%,transparent 58%);
  transform:translateX(-140%);
  animation:edOfferSheen 6s cubic-bezier(.45,0,.25,1) 1.4s infinite;
}
@keyframes edOfferRise{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}
@keyframes edOfferDot{0%,100%{opacity:.42}50%{opacity:1}}
@keyframes edOfferSheen{0%,70%{transform:translateX(-140%)}100%{transform:translateX(140%)}}
html.theme-dark .ed-offer::after{
  background:linear-gradient(105deg,transparent 42%,rgba(255,255,255,.26) 50%,transparent 58%);
}
@media (prefers-reduced-motion:reduce){
  body.store-page .ed-offer,
  body.store-page .ed-offer::before,
  body.store-page .ed-offer::after{animation:none!important;transform:none!important;opacity:1}
  body.store-page .ed-offer::after{display:none}
}

/* ── 限时活动价卡片强调 ──
   实现约束：.ed-card 的 border / box-shadow 在 14681 行被 !important 锁死，
   border-color 即使内联 !important 也压不过去（实测），所以改用 box-shadow
   的 0 扩散环来"画"描边；呼吸动画放在伪元素上，因为 @keyframes 内的
   !important 按规范会被忽略，压不过基础规则的 box-shadow:none !important。 */
html body.store-page .ed-card.is-offer{
  box-shadow:
    0 0 0 1px color-mix(in srgb, var(--ed-accent) 46%, transparent),
    0 0 30px -13px var(--ed-accent) !important;
}
/* 顶边一道渐隐高光，静止不动，只做明暗呼吸 */
body.store-page .ed-card.is-offer::before{
  content:"";position:absolute;left:12%;right:12%;top:0;height:1px;z-index:3;
  pointer-events:none;
  background:linear-gradient(90deg,transparent,var(--ed-accent),transparent);
  animation:edOfferEdge 7.5s ease-in-out infinite;
}
/* 内层极淡的主题色晕，7.5s 一次呼吸；铺满卡片但不拦截点击 */
body.store-page .ed-card.is-offer::after{
  content:"";position:absolute;inset:0;z-index:0;
  pointer-events:none;border-radius:inherit;
  box-shadow:inset 0 0 52px -20px var(--ed-accent);
  animation:edOfferHalo 7.5s ease-in-out infinite;
}
@keyframes edOfferEdge{0%,100%{opacity:.3}50%{opacity:.78}}
@keyframes edOfferHalo{0%,100%{opacity:.4}50%{opacity:1}}
/* 悬停：保持与默认态完全一致，不做二次提亮。
   这条规则不能删——基础样式里有 html.theme-dark .ed-card:hover{box-shadow:...!important}，
   删了之后鼠标一放上去这层光就会被它整个顶掉。 */
html body.store-page .ed-card.is-offer:hover{
  box-shadow:
    0 0 0 1px color-mix(in srgb, var(--ed-accent) 46%, transparent),
    0 0 30px -13px var(--ed-accent) !important;
}
@media (prefers-reduced-motion:reduce){
  body.store-page .ed-card.is-offer::before{animation:none !important;opacity:.55}
  body.store-page .ed-card.is-offer::after{animation:none !important;opacity:.7}
}

/* ── 首屏「立即选购」按钮：锁住体量，中英文切换尺寸一致 ──
   权重说明：站内已有多条 !important 规则作用于 .hero-faq-cta
   （15205 桌面态、15665 移动端、16408/16958 非中文态），
   这里用同权重 (0,3,2) 且位置更靠后来取胜，必须保留 !important。 */
html body.store-page .hero-faq-cta,
html.theme-dark body.store-page .hero-faq-cta {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  min-width: 200px !important;
  white-space: nowrap !important;
  text-align: center !important;
  font-family: "PingFang SC", "Noto Sans SC", "Source Han Sans SC", "Microsoft YaHei", sans-serif, Inter, "Helvetica Neue", Arial, "PingFang SC", "Noto Sans SC", "Microsoft YaHei", sans-serif !important;
  font-weight: 700 !important;
}
/* 中文字距拉开后，末字右侧会多出一段空隙，用等值 text-indent 补回来做视觉居中。
   text-indent 是可继承属性，会传给 flex 容器内的匿名块级项，因此在 inline-flex 上依然有效。 */
html body.store-page[data-locale="zh"] .hero-faq-cta,
html.theme-dark body.store-page[data-locale="zh"] .hero-faq-cta {
  letter-spacing: 0.08em !important;
  text-indent: 0.08em !important;
}
@media (max-width: 640px) {
  html body.store-page .hero-faq-cta,
  html.theme-dark body.store-page .hero-faq-cta {
    min-width: 0 !important;
    width: 100% !important;
    max-width: 320px !important;
  }
}


/* ===== 商品维护中：磨砂遮罩（配合 store.js 的 .ed-card.is-maintenance） ===== */
body.store-page .ed-card.is-maintenance .ed-maint-veil{position:absolute;inset:0;z-index:6;display:flex;align-items:center;justify-content:center;border-radius:inherit;background:rgba(127,127,127,.06);-webkit-backdrop-filter:blur(7px) saturate(.85);backdrop-filter:blur(7px) saturate(.85);pointer-events:auto;cursor:not-allowed;}
body.store-page .ed-card.is-maintenance .ed-maint-chip{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 28px;border:1px solid var(--ag-border-strong);background:var(--ag-card-plain);text-align:center;}
body.store-page .ed-card.is-maintenance .ed-maint-row{display:inline-flex;align-items:center;gap:8px;}
body.store-page .ed-card.is-maintenance .ed-maint-dot{width:7px;height:7px;border-radius:50%;background:#f59e0b;animation:edMaintPulse 1.6s ease-in-out infinite;}
body.store-page .ed-card.is-maintenance .ed-maint-title{font-size:15px;font-weight:600;letter-spacing:.12em;color:var(--ag-text);}
body.store-page .ed-card.is-maintenance .ed-maint-sub{font-size:12.5px;color:var(--ag-muted);}
@keyframes edMaintPulse{0%,100%{opacity:1;}50%{opacity:.35;}}
