/* Default look: white background, black text. Dark only on manual toggle. */
:root{
  --paper:#ffffff; --panel:#ffffff; --ink:#111316; --ink-soft:#41474f;
  --ink-faint:#70757d; --line:#d7d9dd; --line-soft:#e9eaec;
  --accent:#b0231a; --accent-ink:#8c1c14; --accent-wash:#faeae8;
  --serif:Georgia,"Times New Roman","Songti SC","Noto Serif CJK SC",serif;
  --sans:system-ui,-apple-system,Segoe UI,Roboto,"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",sans-serif;
  --mono:ui-monospace,"SF Mono",Menlo,Consolas,"Roboto Mono",monospace;
}
:root[data-theme="light"]{
  --paper:#ffffff; --panel:#ffffff; --ink:#111316; --ink-soft:#41474f;
  --ink-faint:#70757d; --line:#d7d9dd; --line-soft:#e9eaec;
  --accent:#b0231a; --accent-ink:#8c1c14; --accent-wash:#faeae8;
}
:root[data-theme="dark"]{
  --paper:#121418; --panel:#1a1d22; --ink:#e8e9ec; --ink-soft:#aab0ba;
  --ink-faint:#7e8590; --line:#2b2f37; --line-soft:#23272e;
  --accent:#e15a4d; --accent-ink:#ef7367; --accent-wash:#2a1b19;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);
  line-height:1.68;font-size:17px;-webkit-font-smoothing:antialiased;}
.wrap{max-width:880px;margin:0 auto;padding:0 22px}
a{color:var(--accent-ink)}
img{max-width:100%;display:block}
.en{color:var(--ink-faint);font-size:.82em;letter-spacing:.01em}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

.top-rule{height:5px;background:var(--accent)}
.controls{position:fixed;top:12px;right:12px;z-index:9;display:flex;gap:8px}
.langsel select{font-family:var(--mono);font-size:12.5px;background:var(--panel);color:var(--ink);
  border:1px solid var(--line);padding:7px 9px;max-width:46vw;cursor:pointer}
.toggle{font-family:var(--mono);font-size:13px;background:var(--panel);color:var(--ink-soft);
  border:1px solid var(--line);padding:6px 10px;cursor:pointer;line-height:1}
.langsel select:focus-visible,.toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

header.mast{border-bottom:1px solid var(--line);padding:56px 0 26px}
.kicker{font-family:var(--mono);font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;
  color:var(--accent);font-weight:600}
h1{font-family:var(--serif);font-weight:700;font-size:clamp(38px,7vw,66px);line-height:1.03;
  letter-spacing:-.02em;text-wrap:balance;margin:.34em 0 .14em;color:var(--ink)}
.subhead{font-family:var(--serif);font-style:italic;color:var(--ink-soft);font-size:clamp(16px,2.4vw,20px);
  margin:.25em 0 0;text-wrap:balance}
.dek{color:var(--ink-soft);margin:.95em 0 0;max-width:62ch}
.dek b,.product b,.notice b{color:var(--ink)}

.meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:0;
  background:var(--panel);border-top:1px solid var(--line);border-left:1px solid var(--line);margin:26px 0 0}
.meta div{background:var(--panel);padding:12px 14px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.meta dt{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--ink-faint);margin:0 0 4px}
.meta dd{margin:0;font-weight:600;font-size:15px}
.meta dd .en{display:block;font-weight:400}
.flag{color:var(--accent)!important}

main{padding:8px 0 0}
section{padding:38px 0;border-bottom:1px solid var(--line-soft)}
.eyebrow{font-family:var(--mono);font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--ink-faint);margin:0 0 14px}
h2{font-family:var(--serif);font-weight:700;font-size:clamp(22px,3.4vw,30px);line-height:1.18;
  margin:0 0 .5em;text-wrap:balance}
p{margin:0 0 1em}
.lead{font-size:19px}

.qbox{background:var(--panel);border:1px solid var(--line);border-left:4px solid var(--accent);
  padding:22px 24px;margin:6px 0}
.qbox .q{font-family:var(--serif);font-size:clamp(19px,3vw,25px);line-height:1.34;font-weight:600;margin:0}
.withhold{margin:20px 0 0;border-left:3px solid var(--accent);background:var(--accent-wash);
  padding:14px 18px;font-size:15.5px;color:var(--ink)}

.pull{border-top:2px solid var(--accent);border-bottom:1px solid var(--line);padding:22px 0;margin:8px 0}
.pull p{font-family:var(--serif);font-size:clamp(21px,3.4vw,28px);line-height:1.32;font-weight:700;
  margin:0;text-wrap:balance}

.facts{list-style:none;padding:0;margin:0;display:grid;gap:0;border-top:1px solid var(--line)}
.facts li{display:grid;grid-template-columns:210px 1fr;gap:18px;padding:13px 0;border-bottom:1px solid var(--line-soft)}
.facts .k{font-family:var(--mono);font-size:12px;letter-spacing:.04em;color:var(--ink-faint);text-transform:uppercase;padding-top:2px}
.facts .v{margin:0}
@media(max-width:560px){.facts li{grid-template-columns:1fr;gap:3px}}

.product{margin:26px 0 0;border:1px solid var(--line);background:var(--panel)}
.product img{width:100%;max-height:64vh;object-fit:contain}
.product figcaption{padding:14px 18px;color:var(--ink-soft);font-size:15px;margin:0}

.exhibit{margin:30px 0 0;border:1px solid var(--line);background:var(--panel)}
.exhibit figure{margin:0}
.exhibit .imgwrap{background:#0c0d10;position:relative}
.exhibit img{width:100%;max-height:78vh;object-fit:contain;margin:0 auto}
.exhibit .tag{position:absolute;top:0;left:0;background:var(--accent);color:#fff;
  font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;padding:6px 11px;font-weight:600}
.exhibit figcaption{padding:16px 20px 20px}
.exhibit .cap-t{font-weight:700;font-size:16.5px;margin:0 0 5px}
.exhibit .cap-b{color:var(--ink-soft);font-size:15px;margin:0}
.exhibit .ask{margin:12px 0 0;padding-top:12px;border-top:1px dashed var(--line);
  font-weight:600;color:var(--accent-ink);font-size:15px}
.exhibit .ask::before{content:"? ";font-family:var(--serif)}
html[lang^="zh"] .exhibit .ask::before{content:"？ "}
.pair{display:grid;grid-template-columns:1fr 1fr;gap:0}
.pair .exhibit{border-left:none}
.pair .exhibit:first-child{border-left:1px solid var(--line)}
@media(max-width:620px){.pair{grid-template-columns:1fr}.pair .exhibit{border-left:1px solid var(--line)}}

#demands{background:var(--panel);border:1px solid var(--line);border-top:3px solid var(--accent);
  padding:32px 26px;margin:12px 0 0}
.demand{display:grid;grid-template-columns:44px 1fr;gap:16px;padding:18px 0;border-bottom:1px solid var(--line-soft)}
.demand:last-child{border-bottom:none}
.demand .n{font-family:var(--serif);font-size:30px;font-weight:700;color:var(--accent);line-height:1}
.demand h3{margin:0 0 4px;font-size:18px}
.demand p{margin:0;color:var(--ink-soft);font-size:15.5px}

.notice{border:1px solid var(--accent);background:var(--accent-wash);padding:20px 22px;margin:26px 0 0}
.notice .lbl{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--accent);font-weight:700;margin:0 0 8px}
.notice p{margin:0 0 .5em}
.notice p:last-child{margin:0}
.notice b{color:var(--accent-ink)}

.chips{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 0;padding:0;list-style:none}
.chips li{font-family:var(--mono);font-size:12.5px;border:1px solid var(--line);background:var(--panel);
  padding:6px 11px;color:var(--ink-soft)}

footer{padding:34px 0 64px;color:var(--ink-faint);font-size:13px}
footer .disc{border-top:1px solid var(--line);padding-top:18px;max-width:74ch;line-height:1.6}
.sig{font-family:var(--serif);color:var(--ink);font-size:16px;margin:0 0 16px}

@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
