@font-face{font-family:"STIX Two Text";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/stix-two-text-400.ttf") format("truetype")}
@font-face{font-family:"STIX Two Text";font-style:normal;font-weight:600;font-display:swap;src:url("fonts/stix-two-text-600.ttf") format("truetype")}
:root{--bg:#e2e2e2;--surface:#d6d6d6;--surface-light:#ececec;--ink:#7d0c14;--muted:#704148;--accent:#7d0c14;--accent-ink:#e2e2e2;--field:#7d0c14;--field-ink:#f0eeee;--step-small:15px;--step-body:18px;--step-lead:18px;--step-head:clamp(30px,3.6vw,52px);--step-display:clamp(44px,6.8vw,98px);--gutter:clamp(20px,3.2vw,48px);--ease-out:cubic-bezier(.22,1,.36,1);--ease-soft:cubic-bezier(.33,1,.68,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--bg);color:var(--ink);font:400 var(--step-body)/1.6 "STIX Two Text","PMingLiU",serif}a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:.08em}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}img{display:block;width:100%;height:auto}figure,p,h1,h2,h3{margin:0}h1,h2,h3{font-weight:600;letter-spacing:-.026em;line-height:1.12}p{max-width:68ch}h2{font-size:var(--step-head)}h3{font-size:var(--step-lead)}:focus-visible{outline:3px solid currentColor;outline-offset:5px}[hidden]{display:none!important}.page-gutter{padding-left:var(--gutter);padding-right:var(--gutter)}.skip-link{position:fixed;left:20px;top:-100px;z-index:20;background:var(--ink);color:var(--bg);padding:12px 20px}.skip-link:focus{top:12px}.masthead{min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{white-space:nowrap;font-size:var(--step-head);font-weight:600;text-decoration:none;letter-spacing:-.04em}.masthead nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:clamp(20px,3vw,48px);align-items:center}.masthead nav a{font-size:var(--step-body);text-decoration:none}.hero-atlas{display:grid;grid-template-columns:7fr 3fr;gap:0;padding:0 var(--gutter)}.hero-atlas figure{height:clamp(220px,28vw,340px);position:relative;overflow:hidden}.hero-atlas img{height:100%;object-fit:cover}.atlas-main img{object-position:50% 46%}.atlas-sfc{background:#000}.atlas-sfc img{object-fit:contain}.hero-atlas figcaption{position:absolute;bottom:0;left:0;padding:9px 16px;background:var(--ink);color:var(--bg);font-size:var(--step-small)}.hero-copy{display:grid;grid-template-columns:42% minmax(0,58%);align-items:end;padding-top:52px;padding-bottom:100px}.hero-aside{font-size:var(--step-body);padding-bottom:4px}.hero-statement h1{font-size:var(--step-display);line-height:1.04}.mask-line{display:block}.mask-line>span{display:block}.hero-description{font-size:var(--step-lead);margin-top:24px;max-width:30ch;line-height:1.5}.primary-action{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:12px 28px;background:var(--accent);color:var(--accent-ink);text-decoration:none;margin-top:28px;border:0}.library{padding-top:48px;padding-bottom:120px}.section-intro{display:grid;grid-template-columns:42% minmax(0,58%);align-items:start;gap:0;margin-bottom:52px}.side-note{font-size:var(--step-body)}.library-layout{display:grid;grid-template-columns:25% minmax(0,75%);gap:0}.platform-selector{padding-right:48px}.platform-buttons{display:flex;flex-direction:column;gap:8px}.platform-buttons button{min-height:64px;display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border:0;background:var(--surface);color:var(--ink);text-align:left}.platform-buttons button[aria-pressed=true]{background:var(--ink);color:var(--bg)}.platform-buttons span{font-variant-numeric:tabular-nums}.result-status{font-size:var(--step-small);margin-top:24px}.catalog-search{margin-bottom:36px}.catalog-search label{display:block;margin-bottom:10px}.search-row{display:flex;gap:0;background:var(--surface-light)}.search-row input{min-width:0;flex:1;width:100%;padding:15px 18px;border:0;background:transparent;color:var(--ink);border-radius:0}.search-row input::placeholder{color:var(--muted);opacity:1}.search-row button{padding:0 20px;background:var(--surface);border:0;color:var(--ink)}.platform-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding:0 0 18px}.platform-heading h3{font-size:var(--step-head)}.platform-heading p{font-size:var(--step-small)}.platform-group+.platform-group{margin-top:52px}.guide-entry{display:grid;grid-template-columns:180px minmax(0,1fr) 100px;gap:28px;align-items:start;padding:28px;background:var(--surface)}.guide-entry:nth-of-type(even){background:var(--surface-light)}.guide-image{display:block;overflow:hidden;aspect-ratio:4/3}.guide-image img{height:100%;object-fit:cover}.guide-copy h3{font-size:var(--step-head)}.game-subtitle{margin-top:8px;font-size:var(--step-body)}.game-description{margin-top:18px}.game-features{display:flex;flex-wrap:wrap;gap:4px 20px;list-style:none;padding:0;margin:18px 0 0;font-size:var(--step-small)}.game-features li{white-space:nowrap}.guide-note{font-size:var(--step-small);margin-top:18px}.read-link{font-size:var(--step-body);align-self:end;white-space:nowrap;min-height:44px;display:inline-flex;align-items:center;gap:4px}.no-results{padding:48px 28px;background:var(--surface)}.no-results p{margin-top:16px}.no-results button{min-height:48px;margin-top:24px;border:0;padding:10px 20px;background:var(--ink);color:var(--bg)}.about{background:var(--surface);padding-top:100px;padding-bottom:100px}.about-intro{display:grid;grid-template-columns:42% minmax(0,58%);align-items:start;margin-bottom:56px}.about-intro p{max-width:46ch}.about-mosaic{display:grid;grid-template-columns:1fr 1fr;gap:0}.about-mosaic figure{position:relative;overflow:hidden;height:440px}.about-mosaic img{height:100%;object-fit:cover;object-position:center 55%}.about-mosaic figcaption{position:absolute;left:0;bottom:0;background:var(--bg);padding:10px 18px;font-size:var(--step-small)}.collection-note{padding:clamp(32px,5vw,72px);background:var(--field);color:var(--field-ink);display:flex;flex-direction:column;justify-content:center;align-items:start;gap:28px}.collection-note h3{font-size:var(--step-head)}.collection-note p{max-width:38ch}.collection-note a{display:inline-flex;align-items:center;min-height:44px}.footer{background:var(--field);color:var(--field-ink);min-height:80svh;padding-top:64px;padding-bottom:24px;display:flex;flex-direction:column;justify-content:space-between}.footer-columns{display:grid;grid-template-columns:1fr 1fr 1fr 2fr;gap:32px}.footer-columns>div{display:flex;flex-direction:column;align-items:start;gap:12px}.footer-columns p,.footer-columns a{font-size:var(--step-small)}.footer-columns>div>p:first-child{font-size:var(--step-body);margin-bottom:4px}.footer-columns>div:last-child p{max-width:38ch}.footer-wordmark{font-size:clamp(36px,10vw,144px);line-height:.95;letter-spacing:-.05em;white-space:nowrap;margin-top:100px;max-width:none}.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:32px}.footer-bottom p,.footer-bottom a{font-size:var(--step-small)}.not-found{min-height:100svh;display:flex;flex-direction:column;align-items:start;justify-content:center;gap:24px}.not-found h1{font-size:var(--step-head)}
@media(max-width:1100px){.guide-entry{grid-template-columns:140px minmax(0,1fr);gap:20px}.read-link{grid-column:2}.library-layout{grid-template-columns:22% minmax(0,78%)}.platform-selector{padding-right:28px}.hero-copy{padding-bottom:72px}.about-mosaic figure{height:460px}.collection-note{padding:32px}}
@media(max-width:767px){:root{--step-small:15px;--step-body:17px;--step-lead:17px;--step-head:30px;--step-display:clamp(42px,11vw,70px);--gutter:20px}.masthead{min-height:80px;gap:12px;align-items:flex-start;flex-direction:column;padding-top:18px;padding-bottom:18px}.brand{font-size:var(--step-head)}.masthead nav{gap:16px}.masthead nav a{font-size:15px}.masthead nav a:last-child{display:none}.hero-atlas{grid-template-columns:1.3fr 1fr}.hero-atlas figure{height:190px}.hero-atlas figcaption{font-size:var(--step-small);padding:6px 10px;max-width:100%}.hero-copy{display:flex;flex-direction:column;align-items:stretch;padding-top:36px;padding-bottom:64px}.hero-aside{display:none}.hero-description{font-size:var(--step-body);margin-top:20px}.wide-break{display:none}.primary-action{margin-top:22px;min-height:48px;padding:10px 22px;align-self:flex-start}.section-intro{display:flex;flex-direction:column-reverse;gap:18px;margin-bottom:28px}.side-note{font-size:var(--step-small)}.library{padding-top:16px;padding-bottom:72px}.library-layout{display:block}.platform-selector{padding:0;margin-bottom:28px}.platform-buttons{flex-direction:row;gap:6px}.platform-buttons button{flex:1;min-height:52px;padding:10px 14px;gap:12px}.result-status{margin-top:12px}.catalog-search{margin-bottom:28px}.catalog-search label{font-size:var(--step-small)}.search-row input{padding:14px 12px;font-size:16px}.search-row button{font-size:15px;padding:0 14px}.platform-heading{gap:12px;padding-bottom:16px}.platform-heading p{font-size:var(--step-small)}.guide-entry{display:grid;grid-template-columns:1fr;gap:24px;padding:24px;margin:0}.guide-image{aspect-ratio:16/9}.guide-copy h3{font-size:var(--step-head)}.game-description{margin-top:16px}.game-features{margin-top:16px;gap:4px 16px}.guide-note{margin-top:14px}.read-link{grid-column:1;min-height:44px;justify-self:start}.platform-group+.platform-group{margin-top:40px}.about{padding-top:64px;padding-bottom:64px}.about-intro{display:block;margin-bottom:32px}.about-intro p{margin-top:24px}.about-mosaic{grid-template-columns:1fr}.about-mosaic figure{height:320px}.collection-note{padding:32px 24px;gap:22px}.footer{padding-top:48px;min-height:660px}.footer-columns{grid-template-columns:1fr 1fr;gap:32px 20px}.footer-columns>div:last-child{grid-column:1/-1}.footer-columns>div:last-child p{max-width:45ch}.footer-wordmark{font-size:10vw;margin-top:64px}.footer-bottom{margin-top:24px;align-items:end}.footer-bottom p,.footer-bottom a{font-size:var(--step-small)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

@media(prefers-reduced-motion:no-preference){
  .mask-line{overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
  .mask-line>span{animation:line-enter 850ms var(--ease-out) both}
  .mask-line:nth-child(2)>span{animation-delay:110ms}
  .hero-atlas img{animation:atlas-drift 18s var(--ease-soft) both}
  .is-revealing{animation:content-enter 650ms var(--ease-out) both;animation-delay:var(--reveal-delay,0ms)}
  .guide-image.is-revealing{animation-name:picture-enter;animation-duration:850ms}
  a,button{transition:transform 160ms var(--ease-out),opacity 160ms ease}
  a:hover,button:hover{opacity:.78}
  a:active,button:active{transform:translateY(2px)}
  .guide-image img{transition:transform 450ms var(--ease-soft)}
  .guide-image:hover img{transform:scale(1.035)}
  @keyframes line-enter{from{transform:translateY(105%)}to{transform:translateY(0)}}
  @keyframes atlas-drift{from{transform:scale(1.045)}to{transform:scale(1)}}
  @keyframes content-enter{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
  @keyframes picture-enter{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
}
