/* BSC edition: white receipt paper, black ink and one sunflower accent.
   Status green/red retain their meaning; yellow is never used as body text. */
:root:lang(zh-CN) {
  --display: "Bricolage Grotesque", "PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", sans-serif;
  --mono: "IBM Plex Mono", "PingFang SC", "Microsoft YaHei", "Noto Sans CJK SC", monospace;
}
html:lang(zh-CN) body { line-height: 1.65; }
html:lang(zh-CN) :is(h1,h2,h3,.k,.kicker,.eyebrow,.btn,.badge) { letter-spacing: .015em; }
html:lang(zh-CN) :is(.btn,button,select) { line-height: 1.5; }
html:lang(zh-CN) .hero.show .show-h { line-height: 1.18; letter-spacing: -.025em; }
html:lang(zh-CN) :is(.status,.notice,.note,.footnote,.fine,.lede) { line-height: 1.75; overflow-wrap: anywhere; }
html:lang(zh-CN) :is(.facts dd,.toolbar,.app-nav-links) { min-width: 0; }
html:lang(zh-CN) .app-heading h1 { line-height: 1.2; text-wrap: balance; }
:root, :root[data-theme="light"] {
  color-scheme: light;
  --bsc: #f0b90b; --bsc-bright: #f7cb35; --bsc-wash: #fff4c6;
  --bg: #fffef9; --bg2: #f6f4e9; --bg-2: #f6f4e9;
  --paper: #fffefb; --paper-2: #f7f4e9;
  --ink: #24231e; --fg: #24231e;
  --soft: #686354; --faint: #746d5b; --ink-soft: #686354; --ink-faint: #746d5b;
  --ink-2: #686354; --ink-3: #746d5b;
  --fg-2: #686354; --fg-3: #746d5b;
  --hair: #24231e1a; --hair2: #24231e30; --hair-2: #24231e30; --dash: #d8d1bb;
  --green: #48643b; --green-3: #edf1e7; --accent: #f0b90b;
}
::selection { background: var(--bsc); color: #24231e; }
:focus-visible { outline: 2px solid #745700; outline-offset: 5px; }
input, select, textarea { accent-color: var(--bsc); }
a, button { touch-action: manipulation; }
.btn:not(.ghost):not(.btn-ghost):not(.danger), .scan-link {
  background: var(--bsc); color: #24231e; text-decoration: none;
  box-shadow: 0 4px 0 #c89705; border-radius: 3px; animation: none;
}
.btn:not(:disabled):hover { box-shadow: 0 6px 0 #c89705; }
.btn.ghost, .btn.btn-ghost { background: var(--paper); color: var(--ink); border-radius: 3px; box-shadow: inset 0 0 0 1px var(--hair2); }
.btn.ghost:hover, .btn.btn-ghost:hover { box-shadow: inset 0 0 0 1px #947000; }
.btn:disabled { box-shadow: none; }
.k, .eyebrow { color: var(--faint); }
.badge { background: var(--bsc-wash); color: #66500c; }
.notice { background: #fffaf0; border-left-color: var(--bsc); }
.bar i { background: var(--bsc); }
.eligibility-panel { background: #fffae5; border-color: #d8c77b; }
.sheet { box-shadow: 0 18px 38px -24px #63541455, 0 0 0 1px #5b51241a; }
.sheet.soon { background: #fff0af; color: var(--ink); }
.sheet.soon::after { background: #fff0af; }
.sheet.soon .k, .sheet.soon .status { color: #66500c; }
.brand-directory-list { scrollbar-color: #c7aa50 transparent; }
.brand-entry-heading b { color: #755707; }
.upcoming-brands { background: #faf8ef; border-color: #d8d1bb; }
.site-chain { font: 600 10px/1 var(--mono); letter-spacing: .08em; padding: 7px 9px; background: var(--bsc); color: #24231e; white-space: nowrap; }
.skip-link { position: fixed; z-index: 200; top: -100px; left: 16px; padding: 14px 20px; background: #24231e; color: #fff; font: 600 12px/1.5 var(--mono); }
.skip-link:focus { top: 12px; }

/* Homepage keeps the reference's paper, photography and receipt animation. */
.home-page nav::before { background: #fffef9f5; backdrop-filter: blur(16px); border-bottom: 1px solid #24231e20; }
.home-page .nav-in { padding-block: 20px; }
.home-page .nav-meta { color: #6b560f; letter-spacing: .09em; background: #fff0ae; padding: 8px 10px; }
.home-page .nav-links { gap: 22px; }
.home-page nav .nav-links .btn { background: var(--bsc); color: #24231e; box-shadow: none; min-height: 40px; }
.home-page .hero.show { background: var(--bsc-bright); padding-top: 64px; }
.home-page .hero.show .show-k { color: #5a480c; }
.home-page .hero.show .show-sub { color: #4d4222; font-size: 15px; line-height: 1.75; }
.home-page .hero.show .show-h { color: #24231e; letter-spacing: -.055em; line-height: 1; }
.home-page .hero.show .show-h .em { color: #24231e; background: none; -webkit-text-fill-color: currentColor; text-decoration: underline; text-decoration-color: #ffffffa8; text-decoration-thickness: .065em; text-underline-offset: .1em; }
.home-page .hero.show .hero-cta .btn:not(.btn-ghost) { background: #24231e; color: #fffef9; box-shadow: 0 4px 0 #24231e38; }
.home-page .hero.show .hero-cta .btn-ghost { background: transparent; color: #24231e; box-shadow: inset 0 0 0 1px #24231e66; }
.hero-facts { display: flex; gap: 20px; margin-top: 30px; font: 500 11px/1.7 var(--mono); color: #574516; }
.hero-facts b { display: block; font: 800 25px/1.1 var(--display); letter-spacing: -.03em; color: #24231e; margin-bottom: 5px; }
.hero-facts > div + div { border-left: 1px dashed #80641a77; padding-left: 20px; }
.hero-launch-note { font: 500 10px/1.7 var(--mono); color: #5b4b21; margin: 20px 0 32px; }
.home-page .hero-launch-note { margin-bottom: 2px; }
.motion-toggle { min-height: 44px; padding: 10px 0; margin-bottom: 18px; border: 0; background: transparent; color: #5b4b21; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; font: 500 10px/1.6 var(--mono); }
.motion-toggle:disabled { cursor: default; text-decoration: none; }
.motion-paused *, .motion-paused *::before, .motion-paused *::after { animation-play-state: paused !important; }
.home-page.motion-paused .rcpt { clip-path: none; opacity: 1; transform: none; }
.home-page .hero.show .r-back { background: #fff0ad; color: #594303; }
.home-page .hero.show .r-ver { color: #705606; }
.home-page .hero.show .r-ver i { background: var(--bsc); }
.home-page .hero.show .tape { background: #24231e; mask-image: none; -webkit-mask-image: none; border: 0; }
.home-page .hero.show .tape span { color: #e9e3ce; }
.home-page .hero.show .tape b { color: #f7cb35; }
.home-page .hero.show .tape span::after { color: #b9a968; }
.home-page .pslot { background: #292721; border-radius: 5px; height: 16px; }
.home-page .card .pair b, .home-page .merchant b { color: #6f5200; }
.home-page .merchant b { background: #fff0af; }
.home-page .card figcaption { border-top-color: #e3cc80; }
.home-page .dark { --bg: #26251f; --bg-2: #302e25; --fg: #fffef6; --fg-2: #d4cfbc; --fg-3: #bdb59d; --green: #f5cc43; --hair: #ffffff1a; --hair-2: #ffffff33; background: #26251f; }
.home-page .dark .btn { background: var(--bsc); color: #24231e; }
.home-page .dark .btn-ghost { background: transparent; color: #fffef6; }
.home-page .dark .paper { --green: #705606; }
.home-page .dark .step .n { -webkit-text-stroke-color: var(--bsc); }
.home-page .dark .step figure span { background: var(--bsc); color: #24231e; }
.home-page #waitlist { background: var(--bsc-bright); --fg: #24231e; --fg-2: #554725; --fg-3: #665429; --hair-2: #24231e40; }
.home-page #waitlist .btn { background: #24231e; color: #fffef9; box-shadow: 0 4px 0 #24231e33; }
.home-page .paper .tot .big, .home-page .paper .back b { color: #725500; }
.home-page .paper .back { background: #fff0b3; color: #6b5000; }
.home-page #tiers .paper { border-top: 5px solid var(--bsc); }
.home-page .grain { opacity: .022; }
.home-page section[id], .home-page header[id] { scroll-margin-top: 86px; }
@media (min-width: 1000px) {
  .home-page .hero.show { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr); column-gap: 52px; padding-inline: max(32px, calc((100% - 1160px) / 2)); padding-top: 74px; align-items: start; text-align: left; }
  .home-page .hero.show > .wrap { width: 100%; margin: 18px 0 60px; }
  .home-page .hero.show .show-h { font-size: clamp(66px, 6.3vw, 90px); max-width: 13ch; margin: 0 0 24px; }
  .home-page .hero.show .show-k { margin-bottom: 22px; }
  .home-page .hero.show .show-sub { max-width: 45ch; margin: 0 0 28px; }
  .home-page .hero.show .hero-cta { justify-content: flex-start; }
  .home-page .hero.show .printer { width: min(100%, 400px); margin: 12px auto 0; min-height: 550px; }
  .home-page .hero.show .tape { grid-column: 1 / -1; width: 100vw; margin-left: calc(-1 * max(32px, (100vw - 1160px) / 2)); margin-top: 0; }
}
@media (max-width: 999px) { .hero-facts { justify-content: center; } .home-page .hero.show .printer { min-height: 570px; } }
@media (max-width: 640px) {
  .home-page .nav-in { padding-block: 16px; }
  .home-page .nav-links { gap: 14px; }
  .home-page .hero.show { padding-top: 38px; }
  .home-page .hero.show .show-h { font-size: clamp(40px, 10.7vw, 62px); line-height: 1.04; }
  .hero-facts { gap: 16px; font-size: 10px; margin-top: 26px; }
  .hero-facts > div + div { padding-left: 16px; }
  .hero-facts b { font-size: 24px; }
  .home-page .hero.show .printer { width: min(370px, calc(100% - 64px)); min-height: 550px; }
  .home-page .hero.show .rcpt { padding: 24px 18px 20px; }
  .home-page .r-flip .face { padding: 14px 10px; }
  .home-page .r-flip .face.b b { font-size: 20px; }
}

/* Rules and capture share the same light paper edition. */
.rules-page .rules-nav { border-top: 5px solid var(--bsc); background: #fffef9; }
.rules-page .rules-nav .scan-link { padding: 12px 16px; color: #24231e; }
.rules-page header { border-left: 6px solid var(--bsc); padding-left: 24px; }
.scan-page > .wrap, .admin-page > .wrap { border-top: 5px solid var(--bsc); }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
  .home-page .reveal, .home-page .rise { opacity: 1 !important; transform: none !important; }
}

/* 收据 identity: one shared generated mark and crisp, live Chinese wordmark. */
html:lang(zh-CN) .brand {gap:10px;font-family:"Microsoft YaHei","PingFang SC",sans-serif;font-size:24px;font-weight:800;letter-spacing:.06em;white-space:nowrap;line-height:1.15;}
html:lang(zh-CN) .brand img,html:lang(zh-CN) .brand .mark {display:block;width:36px;height:36px;flex:0 0 36px;object-fit:cover;border-radius:9px;}
@media(max-width:420px){html:lang(zh-CN) .brand {font-size:22px;gap:8px;}html:lang(zh-CN) .brand img,html:lang(zh-CN) .brand .mark {width:32px;height:32px;flex-basis:32px;border-radius:8px;}}
