/* Hallmark · macrostructure: Workbench · tone: 国风商店目录 · anchor hue: forest
 * theme: custom · nav: N2 stacked · footer: Ft2 index · enrichment: real game UI
 * display: Songti SC · body: PingFang SC · motion: image drift, pressed state
 * pre-emit critique: P5 H5 E4 S5 R5 V5 */
@import url('tokens.css');
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--nav-offset);overflow-x:clip}body{margin:0;background:var(--color-paper);color:var(--color-ink);font:var(--text-base)/1.75 var(--font-body);overflow-x:clip;padding-bottom:calc(76px + env(safe-area-inset-bottom))}a{color:var(--color-green);text-underline-offset:4px}a:active,button:active,summary:active{transform:translateY(1px)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}a[aria-disabled=true],button:disabled{opacity:.55;cursor:not-allowed;pointer-events:none}button,a,summary{-webkit-tap-highlight-color:var(--color-transparent)}button{font:inherit;cursor:pointer}button[data-state=loading],a[data-state=loading]{cursor:progress}button[data-state=error],a[data-state=error]{outline:2px solid var(--color-error)}button[data-state=success],a[data-state=success]{border-color:var(--color-success)}img{display:block;max-width:100%;height:auto}h1,h2,h3{font-style:normal;overflow-wrap:anywhere;min-width:0;line-height:1.35}h1{font-family:var(--font-display);font-size:var(--text-display);margin:var(--space-xs) 0}h2{font-size:var(--text-xl);margin:0 0 var(--space-sm)}h3{font-size:var(--text-lg);margin:0 0 var(--space-2xs)}p{margin:0 0 var(--space-sm)}figure{margin:0}ul,ol{padding-inline-start:var(--space-lg)}li+li{margin-top:var(--space-2xs)}.wrap{width:min(1184px,calc(100% - 32px));margin-inline:auto}.skip{position:absolute;top:-100px;z-index:90;padding:var(--space-xs);background:var(--color-surface);color:var(--color-ink)}.skip:focus{top:var(--space-2xs)}.notice{background:var(--color-green);color:var(--color-on-dark);font-size:var(--text-sm);padding:var(--space-2xs) 0}.notice .wrap{display:flex;justify-content:space-between;gap:var(--space-sm);align-items:center}.notice a{color:var(--color-on-dark);white-space:nowrap}.header{position:sticky;top:0;z-index:30;background:var(--color-paper);color:var(--color-ink);border-bottom:1px solid var(--color-rule)}.masthead{display:flex;align-items:center;justify-content:space-between;padding-block:var(--space-xs);gap:var(--space-sm)}.brand{display:flex;align-items:center;gap:var(--space-xs);text-decoration:none;color:var(--color-ink);white-space:nowrap}.seal{display:grid;place-items:center;width:42px;height:42px;border:2px solid var(--color-green);color:var(--color-green);font:700 25px var(--font-display);border-radius:var(--radius-sm)}.brand strong{display:block;font:700 21px var(--font-display)}.brand small{font-size:11px;color:var(--color-muted);letter-spacing:2px}.mast-note{font-size:var(--text-sm);color:var(--color-muted);display:none}.nav{background:var(--color-navy);color:var(--color-on-dark)}.nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2xs)}.nav-links{display:flex;align-items:center;gap:var(--space-3xs);flex-wrap:wrap}.nav a{color:var(--color-on-dark);text-decoration:none;padding:var(--space-xs) var(--space-sm);min-height:44px;display:flex;align-items:center;white-space:nowrap;font-size:var(--text-sm);line-height:1}.nav a[aria-current=page]{background:var(--color-green);color:var(--color-on-dark);box-shadow:inset 0 -3px var(--color-gold)}.nav .nav-cta{background:var(--color-accent);color:var(--color-accent-ink);font-weight:700;margin-block:var(--space-3xs);padding-inline:var(--space-xs);display:none}.breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2xs);padding-block:var(--space-md);font-size:var(--text-sm);color:var(--color-muted)}.breadcrumbs a{white-space:nowrap}.hero{display:grid;gap:var(--space-lg);padding-top:var(--space-2xs);padding-bottom:var(--space-2xl)}.hero-copy{order:-1}.tags{display:flex;gap:var(--space-2xs);flex-wrap:wrap}.tag{font-size:var(--text-sm);background:var(--color-green-light);color:var(--color-green);padding:var(--space-3xs) var(--space-2xs);border:1px solid var(--color-rule)}.tag.dark{background:var(--color-navy);color:var(--color-on-dark)}.en-title{display:block;font:var(--text-base) var(--font-body);letter-spacing:.06em;color:var(--color-muted);margin-top:var(--space-2xs)}.lede{max-width:65ch;font-size:var(--text-base)}.hero-actions{display:flex;flex-direction:column;gap:var(--space-xs);margin-top:var(--space-lg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);text-decoration:none;min-height:48px;border:1px solid var(--color-rule);border-radius:var(--radius-sm);padding:var(--space-xs) var(--space-lg);white-space:nowrap;font-weight:700;font-size:var(--text-base);line-height:1.3;background:var(--color-surface);color:var(--color-ink)}.btn.primary{background:var(--color-accent);color:var(--color-accent-ink);border-color:var(--color-accent)}.btn.secondary{background:var(--color-green-light);color:var(--color-green)}.btn.small{min-height:44px;font-size:var(--text-sm);padding:var(--space-2xs) var(--space-sm)}.minor{font-size:var(--text-sm);color:var(--color-muted)}.hero-note{margin-top:var(--space-xs);margin-bottom:0}.facts-mini{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm);border-block:1px solid var(--color-rule);padding-block:var(--space-sm);margin-block:var(--space-lg)}.facts-mini dt{font-size:var(--text-sm);color:var(--color-muted)}.facts-mini dd{margin:0;font-weight:600}.media-main{position:relative;overflow:hidden;border-radius:var(--radius-sm);background:var(--color-navy);color:var(--color-on-dark)}.media-main img{width:100%;aspect-ratio:16/9;object-fit:contain}.media-main .media-caption{padding:var(--space-2xs) var(--space-xs);font-size:var(--text-sm);display:flex;align-items:center;justify-content:space-between;gap:var(--space-xs)}.media-caption a{color:var(--color-on-dark);white-space:nowrap}.thumbnails{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2xs);margin-top:var(--space-2xs)}.thumbnails a{display:block;border:2px solid var(--color-rule);border-radius:var(--radius-sm);overflow:hidden;min-height:44px}.thumbnails a[aria-current=true]{border-color:var(--color-green)}.thumbnails img{aspect-ratio:16/9;width:100%;object-fit:contain}.media-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);margin-top:var(--space-xs);font-size:var(--text-sm);color:var(--color-muted)}.media-foot a{white-space:nowrap}.section-tabs{display:flex;gap:var(--space-md);flex-wrap:wrap;align-items:center;border-block:1px solid var(--color-rule);padding-block:var(--space-2xs);margin-bottom:var(--space-xl)}.section-tabs a{white-space:nowrap;min-height:44px;display:inline-flex;align-items:center;text-decoration:none;font-weight:600;font-size:var(--text-sm)}.content-columns{display:grid;gap:var(--space-xl)}.section{margin-bottom:var(--space-xl)}.bar-title{background:var(--color-navy);color:var(--color-on-dark);padding:var(--space-xs) var(--space-sm);font-size:var(--text-lg);font-weight:600;margin:0 0 var(--space-md);border-radius:var(--radius-sm)}.story p,.guide-section p{max-width:70ch}.story-lead{font:700 25px/1.55 var(--font-display);color:var(--color-green);padding-block:var(--space-2xs)}.feature-row{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-md);padding-block:var(--space-md);border-top:1px solid var(--color-rule)}.feature-row img{aspect-ratio:16/9;object-fit:contain;border-radius:var(--radius-sm)}.feature-row p{margin:0;color:var(--color-muted)}.info-panel{background:var(--color-surface);color:var(--color-ink);border:1px solid var(--color-rule);padding:var(--space-md);border-radius:var(--radius-sm)}.info-list{margin:0}.info-list>div{display:grid;grid-template-columns:80px minmax(0,1fr);gap:var(--space-xs);padding-block:var(--space-xs);border-bottom:1px solid var(--color-rule)}.info-list>div:last-child{border:0}.info-list dt{color:var(--color-muted);font-size:var(--text-sm)}.info-list dd{margin:0}.wordmark{width:230px;height:auto;border-radius:var(--radius-sm);margin-bottom:var(--space-sm)}.quick-links{display:grid;gap:var(--space-xs)}.quick-link{display:block;text-decoration:none;color:var(--color-ink);border-bottom:1px solid var(--color-rule);padding-block:var(--space-xs)}.quick-link span{display:block;color:var(--color-muted);font-size:var(--text-sm);margin-top:var(--space-3xs)}.quick-link strong{color:var(--color-green)}.quick-link .arrow{float:right;margin:0;color:var(--color-green)}.table-wrap{overflow-x:auto}.requirements{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.requirements th,.requirements td{text-align:left;vertical-align:top;border-bottom:1px solid var(--color-rule);padding:var(--space-xs)}.requirements th{font-weight:600;background:var(--color-paper-2);color:var(--color-ink)}.requirements td:first-child{min-width:72px;color:var(--color-muted)}.update{border-bottom:1px solid var(--color-rule);padding-block:var(--space-sm)}summary{cursor:pointer;min-height:44px;padding-block:var(--space-xs);font-weight:600;line-height:1.6}summary::marker{color:var(--color-green)}details>p,details>ul{margin-top:var(--space-xs)}.update small{color:var(--color-muted);display:block;font-weight:400}.faq details{border-bottom:1px solid var(--color-rule)}.faq details>div{padding-bottom:var(--space-sm)}.final-cta{background:var(--color-green-light);color:var(--color-ink);border-block:1px solid var(--color-rule);padding-block:var(--space-xl);margin-top:var(--space-lg)}.final-cta .wrap{display:grid;gap:var(--space-lg);align-items:center}.final-cta h2{font-family:var(--font-display);margin-bottom:var(--space-2xs)}.final-cta p{margin:0}.footer{background:var(--color-navy);color:var(--color-on-dark);padding-block:var(--space-xl)}.footer a{color:var(--color-on-dark);font-size:var(--text-sm);white-space:nowrap;min-height:44px;display:inline-flex;align-items:center}.footer-top{display:grid;gap:var(--space-lg)}.footer-brand{font:700 25px var(--font-display)}.footer h3{font-size:var(--text-base);color:var(--color-gold)}.footer-links{display:flex;gap:var(--space-2xs) var(--space-lg);align-items:center;flex-wrap:wrap}.footer .minor{color:var(--color-on-dark)}.footer-bottom{border-top:1px solid var(--color-gold);margin-top:var(--space-lg);padding-top:var(--space-lg);font-size:var(--text-sm)}.legal{font-size:var(--text-sm);margin-top:var(--space-lg)}.legal summary{font-weight:400}.bottom-cta{position:fixed;bottom:0;left:0;right:0;background:var(--color-surface);color:var(--color-ink);border-top:1px solid var(--color-rule);padding:var(--space-2xs) 0 calc(var(--space-2xs) + env(safe-area-inset-bottom));z-index:25}.bottom-cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:var(--space-xs)}.bottom-cta strong{font:700 var(--text-base) var(--font-display)}.bottom-cta small{display:block;font-size:11px;color:var(--color-muted)}.bottom-cta .btn{font-size:var(--text-sm);padding-inline:var(--space-sm)}.top-link{display:none}.page-intro{margin-bottom:var(--space-xl);max-width:75ch}.page-intro h1{margin-top:0}.page-intro .intro-text{font-size:var(--text-lg);color:var(--color-muted)}.subgrid{display:grid;gap:var(--space-xl)}.download-card{border:1px solid var(--color-rule);background:var(--color-surface);color:var(--color-ink);padding:var(--space-lg);border-radius:var(--radius-md)}.download-card .btn{margin-block:var(--space-sm)}.platform-mark{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-lg)}.platform-mark svg{color:var(--color-green);width:38px;height:38px;flex-shrink:0}.steps{list-style:none;counter-reset:steps;padding:0;margin:0}.steps li{counter-increment:steps;display:grid;grid-template-columns:36px minmax(0,1fr);gap:var(--space-sm);padding-block:var(--space-lg);border-bottom:1px solid var(--color-rule)}.steps li:before{content:counter(steps,decimal-leading-zero);font:700 22px var(--font-display);color:var(--color-brown)}.steps p{margin-bottom:0}.guide-layout{display:grid;gap:var(--space-xl)}.toc{padding:var(--space-md);border:1px solid var(--color-rule);align-self:start;background:var(--color-surface);color:var(--color-ink)}.toc a{display:block;min-height:44px;display:flex;align-items:center;text-decoration:none;font-size:var(--text-sm)}.guide-section{scroll-margin-top:var(--nav-offset);margin-bottom:var(--space-2xl)}.guide-section h2{border-bottom:2px solid var(--color-green);padding-bottom:var(--space-xs)}.note{background:var(--color-paper-2);color:var(--color-ink);padding:var(--space-md);border:1px solid var(--color-rule);font-size:var(--text-sm);margin-block:var(--space-md)}.guide-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm);margin-bottom:var(--space-xl)}.guide-cards a{display:block;text-decoration:none;border:1px solid var(--color-rule);background:var(--color-surface);color:var(--color-ink);padding:var(--space-sm)}.guide-cards strong{display:block;color:var(--color-green)}.guide-cards small{display:block;color:var(--color-muted);margin-top:var(--space-2xs)}.filter-row{display:none;gap:var(--space-2xs);align-items:center;flex-wrap:wrap;margin-bottom:var(--space-lg)}.js .filter-row{display:flex}.filter-row button{min-height:44px;padding:var(--space-2xs) var(--space-md);border:1px solid var(--color-rule);background:var(--color-surface);color:var(--color-ink);border-radius:var(--radius-sm);white-space:nowrap}.filter-row button[aria-pressed=true]{background:var(--color-green);color:var(--color-on-dark);border-color:var(--color-green)}.gallery-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-lg)}.gallery-card{border:1px solid var(--color-rule);background:var(--color-surface);color:var(--color-ink)}.gallery-card a{display:block;overflow:hidden}.gallery-card img{width:100%;aspect-ratio:16/9;object-fit:contain}.gallery-card figcaption{padding:var(--space-sm)}.gallery-card strong{display:block;font-size:var(--text-base)}.gallery-card p{font-size:var(--text-sm);color:var(--color-muted);margin-top:var(--space-2xs);margin-bottom:0}[hidden]{display:none!important}.lightbox{position:fixed;inset:0;margin:auto;width:min(1200px,calc(100% - 24px));height:fit-content;max-height:94dvh;overflow:auto;border:1px solid var(--color-rule);border-radius:var(--radius-md);padding:var(--space-sm);background:var(--color-navy);color:var(--color-on-dark)}.lightbox::backdrop{background:var(--color-backdrop)}.lightbox img{width:100%;height:auto;max-height:70dvh;object-fit:contain;aspect-ratio:16/9}.lightbox-toolbar{display:flex;justify-content:space-between;align-items:center;gap:var(--space-xs);margin-bottom:var(--space-sm)}.lightbox-toolbar button{min-height:44px;border:1px solid var(--color-gold);background:var(--color-navy);color:var(--color-on-dark);border-radius:var(--radius-sm);padding:var(--space-2xs) var(--space-xs);white-space:nowrap}.lightbox-bottom{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);padding-top:var(--space-xs);font-size:var(--text-sm)}.lightbox .status{min-height:24px;font-size:var(--text-sm);margin:0;color:var(--color-on-dark)}.lightbox .status[data-state=error]{color:var(--color-gold)}
@media(hover:hover) and (pointer:fine){a:hover{text-decoration:none}.btn:hover{filter:brightness(.96)}.nav a:hover{background:var(--color-brown);color:var(--color-on-dark)}.quick-link:hover,.toc a:hover{color:var(--color-brown)}.filter-row button:hover{border-color:var(--color-green)}.thumbnails a:hover,.gallery-card a:hover{opacity:.86}}
@media(min-width:40rem){.wrap{width:min(1184px,calc(100% - 48px))}.mast-note{display:block}.nav .nav-cta{display:flex}.hero-actions{flex-direction:row}.hero-actions .primary{flex:1}.feature-row{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-top{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr)}.final-cta .wrap{grid-template-columns:minmax(0,1fr) auto}.top-link{display:inline-flex;align-items:center;min-height:44px;white-space:nowrap;font-size:var(--text-sm)}.bottom-cta .wrap{justify-content:flex-start}.bottom-cta .btn{margin-left:auto}}
@media(min-width:62rem){.hero{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);align-items:start}.hero-copy{order:0;padding-left:var(--space-2xs)}.hero-media{padding-top:var(--space-xs)}.content-columns{grid-template-columns:minmax(0,1.8fr) minmax(0,1fr)}.hero-actions{flex-direction:column}.hero-actions .btn{width:100%}.subgrid{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}.guide-layout{grid-template-columns:240px minmax(0,1fr)}.toc{position:sticky;top:var(--nav-offset)}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.guide-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-copy{position:relative;isolation:isolate}.hero-copy:before{content:"";position:absolute;inset:0;background:url("../images/jipin-caihualang-forest-10-thumb.webp") center/cover;opacity:.045;z-index:-1;animation:drift 18s var(--ease-in-out) infinite alternate}.hero-media:focus-within img,.hero-media:hover img{animation-play-state:paused}}
@keyframes drift{from{transform:translate(var(--parallax-x,0px),var(--parallax-y,0px)) scale(1.02)}to{transform:translate(var(--parallax-x,0px),var(--parallax-y,0px)) scale(1.04)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}a:active,button:active,summary:active{transform:none}}
.nav a:focus-visible,.footer a:focus-visible,.lightbox button:focus-visible{outline-color:var(--color-gold)}.filter-row button[aria-pressed=true]:focus-visible{box-shadow:0 0 0 3px var(--color-paper)}
.facts-mini>div:nth-child(n+3){display:none}
@media(min-width:40rem){.facts-mini>div:nth-child(n+3){display:block}}
.hero:hover .hero-copy:before,.hero:focus-within .hero-copy:before{animation-play-state:paused}
.nav a{padding-inline:var(--space-2xs)}
@media(min-width:40rem){.nav a{padding-inline:var(--space-sm)}}
