/* DaoYe Pro v2 — shared chrome (header, footer, tokens). Loaded on every page. System fonts only. */
:root{
  --v2-ink:#16130f;--v2-ink2:#3b352e;--v2-mute:#655d53;--v2-paper:#f8f5ef;--v2-card:#fffdf9;--v2-line:#e4dccf;
  --v2-red:#9e2f26;--v2-red2:#86251d;--v2-gold:#c9a45c;--v2-gold-ink:#7a5a1f;--v2-dark:#15120f;--v2-dark2:#221d18;--v2-on-dark:#f4eee3;--v2-on-dark-mute:#cfc4b2;
  --v2-serif:"Iowan Old Style","Palatino Linotype",Palatino,"Songti SC","Noto Serif SC","Source Han Serif SC",Georgia,serif;
  --v2-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC",sans-serif;
  --v2-radius:14px;--v2-max:1160px;--v2-pad:clamp(20px,5vw,40px);
}
:lang(zh-Hant){--v2-serif:"Iowan Old Style","Palatino Linotype","Songti TC","Noto Serif TC","Source Han Serif TC",Georgia,serif;--v2-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,"PingFang TC","Microsoft JhengHei","Noto Sans TC",sans-serif}
.v2-skip{position:absolute;left:-9999px;top:8px;z-index:100;background:var(--v2-ink);color:#fff;padding:12px 16px;border-radius:8px}
.v2-skip:focus{left:12px}
.v2-header{display:block;padding:0;margin:0;letter-spacing:normal;position:sticky;top:0;z-index:50;background:rgba(248,245,239,.92);-webkit-backdrop-filter:saturate(1.4) blur(10px);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--v2-line);font-family:var(--v2-sans)}
.v2-header__in{max-width:var(--v2-max);margin:0 auto;padding:0 var(--v2-pad);height:64px;display:flex;align-items:center;gap:16px}
.v2-logo{display:inline-flex;align-items:center;gap:10px;min-height:44px;color:var(--v2-ink);text-decoration:none;font:600 1.05rem/1 var(--v2-serif);letter-spacing:.02em;margin-right:auto}
.v2-seal{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:7px;background:var(--v2-red);color:#fff;font:600 17px/1 var(--v2-serif)}
.v2-nav{display:flex;align-items:center;gap:4px}
.v2-nav a,.v2-lang a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:0 12px;border-radius:999px;color:var(--v2-ink2);text-decoration:none;font-size:.95rem}
.v2-nav a:hover,.v2-lang a:hover{background:#efe8dc;color:var(--v2-ink)}
.v2-nav a[aria-current=page]{color:var(--v2-red);font-weight:600}
.v2-lang{display:flex;align-items:center;border-left:1px solid var(--v2-line);padding-left:6px;margin-left:4px}
.v2-lang a{padding:0 8px;font-size:.9rem}
.v2-lang a[aria-current=true]{color:var(--v2-ink);font-weight:700}
.v2-cta{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;background:var(--v2-red);color:#fff!important;text-decoration:none;font-weight:600;font-size:.95rem;white-space:nowrap}
.v2-cta:hover{background:var(--v2-red2)}
.v2-menu{display:none;position:relative}
.v2-menu>summary{list-style:none;display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border-radius:10px;cursor:pointer;color:var(--v2-ink)}
.v2-menu>summary::-webkit-details-marker{display:none}
.v2-menu>summary svg{width:24px;height:24px}
.v2-menu__panel{position:absolute;right:0;top:52px;width:min(86vw,320px);background:var(--v2-card);border:1px solid var(--v2-line);border-radius:var(--v2-radius);box-shadow:0 18px 40px rgba(22,19,15,.16);padding:8px;display:grid}
.v2-menu__panel a{display:flex;align-items:center;min-height:48px;padding:0 14px;border-radius:10px;color:var(--v2-ink);text-decoration:none;font-size:1rem}
.v2-menu__panel a:hover{background:#f1ebe0}
.v2-menu__panel .v2-cta{justify-content:center;margin-top:6px}
.v2-menu__langs{display:flex;gap:4px;border-top:1px solid var(--v2-line);margin-top:6px;padding-top:6px}
.v2-menu__langs a{flex:1;justify-content:center}
@media (max-width:900px){.v2-nav,.v2-header__in>.v2-cta{display:none}.v2-menu{display:block}}
@media (max-width:900px){.v2-header__in>.v2-lang{border-left:0;margin-left:0;padding-left:0}}
@media (max-width:380px){.v2-header__in>.v2-lang{display:none}}
/* Footer */
.v2-footer{display:block;padding:0;margin:0;border:0;gap:0;letter-spacing:normal;text-align:left;background:var(--v2-dark);color:var(--v2-on-dark-mute);font-family:var(--v2-sans);font-size:.95rem;line-height:1.6}
.v2-footer a{color:var(--v2-on-dark);text-decoration:none}
.v2-footer a:hover{text-decoration:underline;text-underline-offset:3px}
.v2-fcta{border-bottom:1px solid #2f2922}
.v2-fcta__in{max-width:var(--v2-max);margin:0 auto;padding:clamp(48px,8vw,88px) var(--v2-pad);display:grid;gap:24px;align-items:center}
@media (min-width:860px){.v2-fcta__in{grid-template-columns:1.4fr 1fr}}
.v2-fcta h2{margin:0;color:var(--v2-on-dark);font:500 clamp(1.7rem,3.6vw,2.6rem)/1.2 var(--v2-serif);letter-spacing:-.005em}
.v2-fcta p{margin:10px 0 0;max-width:46ch}
.v2-fcta__btns{display:flex;flex-wrap:wrap;gap:12px}
@media (min-width:860px){.v2-fcta__btns{justify-content:flex-end}}
.v2-fbtn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:999px;font-weight:600;text-decoration:none!important}
.v2-fbtn--gold{background:var(--v2-gold);color:var(--v2-ink)!important}
.v2-fbtn--gold:hover{background:#d8b56f}
.v2-fbtn--line{border:1px solid #6b5f4f;color:var(--v2-on-dark)!important}
.v2-fbtn--line:hover{border-color:var(--v2-gold)}
.v2-footer__grid{max-width:var(--v2-max);margin:0 auto;padding:48px var(--v2-pad) 24px;display:grid;gap:32px;grid-template-columns:1fr}
@media (min-width:700px){.v2-footer__grid{grid-template-columns:1.3fr 1fr 1fr 1fr}}
.v2-footer h3{margin:0 0 6px;color:var(--v2-on-dark);font:600 .82rem/1.4 var(--v2-sans);letter-spacing:.12em;text-transform:uppercase}
.v2-footer ul{list-style:none;margin:0;padding:0}
.v2-footer li a{display:inline-flex;align-items:center;min-height:44px;min-width:44px}
.v2-footer__brand .v2-logo{color:var(--v2-on-dark)}
.v2-footer__brand p{margin:8px 0 0;max-width:34ch}
.v2-footer__merchant{max-width:var(--v2-max);margin:0 auto;padding:24px var(--v2-pad);border-top:1px solid #2f2922;display:grid;gap:20px;align-items:start}
@media (min-width:700px){.v2-footer__merchant{grid-template-columns:1fr auto}}
.v2-footer__merchant p{margin:0 0 6px}
.v2-footer__merchant strong{color:var(--v2-on-dark);font-weight:600}
.v2-footer__merchant a{display:inline-flex;align-items:center;min-height:44px}
.v2-footer__qr{margin:0;display:flex;gap:12px;align-items:center}
.v2-footer__qr img{width:96px;height:auto;border-radius:8px;background:#fff;padding:4px}
.v2-footer__qr figcaption{max-width:18ch;font-size:.85rem}
.v2-footer__legal{max-width:var(--v2-max);margin:0 auto;padding:16px var(--v2-pad) 32px;border-top:1px solid #2f2922;font-size:.85rem;color:#b9ad9a}
.v2-footer__legal p{margin:0 0 6px}
/* Legacy-page safety nets (non-content): touch targets and table overflow */
.btn,.wl-input,button,select,input[type=email],input[type=date]{min-height:44px}
.wl-consent input[type=checkbox]{width:22px!important;height:22px!important;flex:none}
summary{min-height:44px;display:list-item}
.document-page main table{display:block;max-width:100%;overflow-x:auto}
.related-links a,.lang-alt a,.lang-links a,.policy-nav a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
.v2-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
/* Isolate chrome from legacy element rules */
.v2-footer :is(div,nav,ul,li,p,figure,h2,h3){box-sizing:border-box;background:none;box-shadow:none}
.v2-footer .v2-fcta,.v2-footer .v2-footer__grid,.v2-footer .v2-footer__merchant,.v2-footer .v2-footer__legal{width:auto;border-radius:0}
.v2-header nav{background:none;border:0;box-shadow:none;padding:0}
/* Legacy pages: align fonts and accents with v2 (content untouched) */
:root{--font-serif:var(--v2-serif);--font-sans:var(--v2-sans)}
body:not(.v2){font-family:var(--v2-sans)}
/* Legacy checkout waitlist form: stack fields (was inline and cramped) */
form.waitlist-form{display:flex;flex-direction:column;gap:8px;max-width:560px}
form.waitlist-form>label:not(.wl-consent){font-size:.9rem;font-weight:600;margin-top:6px}
form.waitlist-form>select,form.waitlist-form>input[type=email]{width:100%;padding:0 12px;border:1px solid #d9d0c2;border-radius:10px;background:#fff;font:inherit}
form.waitlist-form .wl-consent{display:flex;gap:10px;align-items:flex-start;line-height:1.45}
form.waitlist-form button[type=submit]{min-height:48px;border-radius:999px;padding:0 20px}
