/* Hallmark · macrostructure: Workbench · tone: intimate fortress fieldbook · anchor hue: warm gold
 * theme: user-locked midnight · nav: N7 · footer: Ft1 · enrichment: actual clothed game frame
 * axes: light paper / Chinese roman-serif / warm-gold · pre-emit critique: P5 H4 E4 S5 R5 V4 */
@import url('tokens.css');
*{box-sizing:border-box}html,body{overflow-x:clip}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-height) + var(--space-lg))}body{margin:0;background:var(--color-page);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-base);line-height:1.85;background-image:repeating-linear-gradient(90deg,var(--color-clear) 0,var(--color-clear) 15px,var(--color-soft-shadow) 16px,var(--color-clear) 17px)}a{color:inherit;text-underline-offset:4px}button{font:inherit;cursor:pointer}img{display:block;max-width:100%;height:auto}figure{margin:0}h1,h2,h3{font-family:var(--font-display);font-style:normal;line-height:1.3;overflow-wrap:anywhere;min-width:0}h1{font-size:var(--text-display);margin:0}h2{font-size:clamp(1.65rem,3vw,2.3rem);margin:0 0 var(--space-lg)}h3{font-size:var(--text-xl);margin:0 0 var(--space-sm)}p{margin:0 0 var(--space-lg)}ul,ol{padding-left:var(--space-lg)}li+li{margin-top:var(--space-xs)}:focus-visible{outline:3px solid var(--color-focus);outline-offset:4px}.nav-slab :focus-visible,.hero :focus-visible,.site-footer :focus-visible,.lightbox :focus-visible,.sticky-cta :focus-visible{outline-color:var(--color-accent)}a:active,button:active,summary:active{transform:translateY(1px)}button:disabled,[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}[data-state=loading]{opacity:.7;cursor:progress}[data-state=error]{outline:2px solid var(--color-error)}[data-state=success]{outline:2px solid var(--color-success)}[hidden]{display:none!important}.wrap{max-width:1120px;margin:auto}.skip{position:fixed;top:-100px;left:var(--space-md);z-index:100;background:var(--color-paper);padding:var(--space-md)}.skip:focus{top:var(--space-md)}.nav-slab{position:sticky;top:0;z-index:40;background:var(--color-dark);color:var(--color-paper);border-bottom:2px solid var(--color-accent)}.nav-inner{max-width:1120px;min-height:var(--nav-height);padding:var(--space-sm) var(--space-xl);margin:auto;display:flex;align-items:center;gap:var(--space-lg)}.slab-mark{text-decoration:none;font-family:var(--font-display);font-size:var(--text-lg);font-weight:700;white-space:nowrap;line-height:1}.slab-mark small{display:block;font:var(--text-sm)/1 var(--font-body);color:var(--color-dark-muted);margin-top:var(--space-xs)}.nav-inner nav{margin-left:auto}.nav-list{display:flex;align-items:center;gap:var(--space-lg);list-style:none;margin:0;padding:0}.nav-list li{margin:0}.nav-list a{text-decoration:none;white-space:nowrap;display:flex;align-items:center;min-height:44px;line-height:1;font-size:.875rem}.nav-list a[aria-current=page]{color:var(--color-accent);box-shadow:inset 0 -2px var(--color-accent)}.menu-toggle{display:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);min-height:48px;white-space:nowrap;line-height:1.2;padding:var(--space-md) var(--space-lg);background:var(--color-accent);border:1px solid var(--color-accent);color:var(--color-on-accent);text-decoration:none;font-weight:700;box-shadow:4px 4px 0 var(--color-page);transition:transform var(--dur-fast) var(--ease-out)}.button.secondary{background:var(--color-clear);color:var(--color-on-dark);border-color:var(--color-dark-muted);box-shadow:none}.button.paper{color:var(--color-ink);border-color:var(--color-rule);background:var(--color-clear);box-shadow:none}.button.small{font-size:var(--text-sm);min-height:44px;padding:var(--space-sm) var(--space-md)}.hero{position:relative;min-height:650px;display:flex;align-items:flex-end;background:var(--color-dark);color:var(--color-paper);isolation:isolate}.hero-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% 25%;z-index:-2}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--color-overlay),var(--color-shade) 32%,var(--color-clear) 80%),linear-gradient(0deg,var(--color-dark),var(--color-clear) 60%);z-index:-1}.hero-copy{padding:var(--space-2xl) var(--space-xl);max-width:670px}.game-logo{width:174px;height:auto;margin-bottom:var(--space-lg);border:1px solid var(--color-dark-muted);transform:rotate(-2deg)}.hero h1{max-width:9em;text-shadow:2px 3px 0 var(--color-dark)}.original{display:block;font:var(--text-sm)/1.6 var(--font-body);font-weight:400;margin-top:var(--space-md);color:var(--color-dark-muted)}.hero-lede{max-width:26em;font-size:var(--text-lg);line-height:1.8;margin:var(--space-lg) 0}.tags{display:flex;flex-wrap:wrap;gap:var(--space-xs);margin:0 0 var(--space-lg)}.tag{font-size:var(--text-sm);border:1px solid var(--color-dark-muted);padding:var(--space-2xs) var(--space-sm);line-height:1.7}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-lg)}.fine{font-size:var(--text-sm);color:var(--color-muted)}.hero .fine,.site-footer .fine,.sticky-cta .fine{color:var(--color-dark-muted)}.hero .fine{margin:var(--space-md) 0 0}.paper-sheet{background:var(--color-paper);box-shadow:10px 0 0 var(--color-soft-shadow),-10px 0 0 var(--color-soft-shadow)}.info-box{padding:var(--space-xl);border-bottom:1px solid var(--color-rule)}.info-box h2{font-family:var(--font-body);font-size:var(--text-base);margin-bottom:var(--space-md)}.info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-lg);margin:0}.info-grid dt{font-size:var(--text-sm);color:var(--color-muted)}.info-grid dd{margin:var(--space-2xs) 0 0;font-weight:600}.section{padding:var(--space-2xl) var(--space-xl)}.section+.section{border-top:1px solid var(--color-rule)}.section-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);margin-bottom:var(--space-xl)}.section-head h2{margin:0}.section-head a{white-space:nowrap;font-size:var(--text-sm);min-height:44px;display:flex;align-items:center}.prose{max-width:64ch}.story{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:var(--space-2xl);align-items:start}.story-aside{padding:var(--space-lg);border:1px solid var(--color-rule);background:var(--color-paper-2);transform:rotate(1deg)}.story-aside img{width:100%;max-width:460px}.story-aside h3{margin-top:var(--space-lg)}.quote{font-family:var(--font-display);font-size:var(--text-xl);padding:var(--space-lg) 0;border-top:1px solid var(--color-rule);border-bottom:1px solid var(--color-rule);line-height:1.7}.scene-band{background:var(--color-dark);color:var(--color-paper)}.scene-band .fine{color:var(--color-dark-muted)}.mechanic{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:var(--space-xl);align-items:center}.mechanic+.mechanic{margin-top:var(--space-2xl)}.mechanic:nth-child(odd) .media{order:2}.media img{width:100%;border:1px solid var(--color-rule)}figcaption{font-size:var(--text-sm);color:var(--color-muted);margin-top:var(--space-sm)}.scene-band figcaption{color:var(--color-dark-muted)}.mechanic p{font-size:.9375rem}.thumbnail-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-sm);margin-top:var(--space-sm)}.thumbnail-row a{display:block;border:1px solid var(--color-rule)}.thumbnail-row img{width:100%;aspect-ratio:16/9;object-fit:contain;background:var(--color-dark)}.thumbnail-row span{display:block;padding:var(--space-xs);font-size:var(--text-sm);line-height:1.5}.large-shot img{width:100%}.fit-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-xl)}.fit-list article{border-top:2px solid var(--color-ink);padding-top:var(--space-lg)}details{border-bottom:1px solid var(--color-rule);padding:var(--space-md) 0}summary{font-weight:600;cursor:pointer;min-height:44px;display:list-item;align-content:center}details p{margin:var(--space-sm) 0 var(--space-md);max-width:64ch}details[open] summary{color:var(--color-page)}.final-cta{background:var(--color-dark);color:var(--color-paper);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-xl);align-items:center;border-top:4px solid var(--color-accent)}.final-cta p{margin:0;color:var(--color-dark-muted)}.site-footer{background:var(--color-dark);color:var(--color-paper);padding:var(--space-xl);border-top:1px solid var(--color-dark-muted)}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);margin-bottom:var(--space-lg)}.footer-mark{font-family:var(--font-display);font-size:var(--text-xl);margin:0}.footer-links,.related-links{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-xs) var(--space-lg)}.footer-links a,.related-links a{white-space:nowrap;min-height:44px;display:inline-flex;align-items:center;font-size:var(--text-sm)}.site-footer details{border-color:var(--color-dark-muted);font-size:var(--text-sm)}.site-footer details[open] summary{color:var(--color-accent)}.site-footer .fine{margin-top:var(--space-lg);margin-bottom:0}.sticky-cta{position:fixed;bottom:0;left:0;right:0;z-index:35;background:var(--color-dark);color:var(--color-paper);border-top:1px solid var(--color-accent);display:none;align-items:center;justify-content:space-between;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);padding-bottom:max(var(--space-sm),env(safe-area-inset-bottom))}.sticky-cta strong{font-size:var(--text-sm);display:block;line-height:1.4}.sticky-cta .fine{margin:0;font-size:.75rem;line-height:1.5}.back-top{display:inline-flex;align-items:center;min-height:44px;white-space:nowrap}.sub-head{padding:var(--space-xl) var(--space-xl) var(--space-2xl);background:var(--color-dark);color:var(--color-paper);border-bottom:3px solid var(--color-accent)}.breadcrumbs{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap;font-size:var(--text-sm);margin-bottom:var(--space-xl);color:var(--color-dark-muted)}.breadcrumbs a{white-space:nowrap;min-height:44px;display:flex;align-items:center}.sub-head h1{font-size:clamp(1.8rem,4vw,3rem);max-width:17em}.sub-head p{margin-top:var(--space-lg);max-width:52ch;color:var(--color-dark-muted);margin-bottom:0}.download-card{border:1px solid var(--color-rule);padding:var(--space-xl);background:var(--color-paper-2);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-xl);align-items:center}.download-card p{margin:var(--space-sm) 0}.label{font-size:var(--text-sm);font-weight:600;display:inline-block;background:var(--color-paper);border:1px solid var(--color-rule);padding:var(--space-2xs) var(--space-sm);margin-bottom:var(--space-lg)}.steps{counter-reset:step;list-style:none;padding:0}.steps li{position:relative;padding-left:var(--space-2xl);padding-bottom:var(--space-xl);margin:0}.steps li:before{counter-increment:step;content:counter(step,decimal-leading-zero);position:absolute;left:0;top:0;font-family:var(--font-outlier);color:var(--color-muted);font-size:var(--text-xl)}.steps li p{margin-bottom:0}.spec-table{width:100%;border-collapse:collapse}.spec-table th,.spec-table td{text-align:left;padding:var(--space-md);border-bottom:1px solid var(--color-rule)}.spec-table th{background:var(--color-paper-2)}.toc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md);list-style:none;margin:0;padding:0}.toc li{margin:0}.toc a{display:block;border:1px solid var(--color-rule);padding:var(--space-lg);text-decoration:none;min-height:100%}.toc strong{display:block;line-height:1.4}.toc span{display:block;font-size:var(--text-sm);color:var(--color-muted);margin-top:var(--space-sm)}.guide-chapter{max-width:75ch}.guide-chapter h3{font-family:var(--font-body);font-size:var(--text-base);margin-top:var(--space-xl)}.note{background:var(--color-paper-2);padding:var(--space-lg);border:1px solid var(--color-rule)}.filters{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap;margin-bottom:var(--space-xl)}.filter{padding:var(--space-sm) var(--space-lg);min-height:44px;border:1px solid var(--color-rule);background:var(--color-clear);color:var(--color-ink);white-space:nowrap;line-height:1}.filter[aria-pressed=true]{background:var(--color-ink);color:var(--color-paper);border-color:var(--color-ink)}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-xl) var(--space-lg)}.gallery-grid img{width:100%;aspect-ratio:16/9;object-fit:contain;background:var(--color-dark)}.gallery-grid a{display:block}.gallery-grid figcaption strong{color:var(--color-ink);display:block;font-size:var(--text-base)}.gallery-grid .cover img{aspect-ratio:460/215}.gallery-grid .cover{max-width:460px}.gallery-count{font-size:var(--text-sm);color:var(--color-muted)}.lightbox{width:min(96vw,1500px);max-width:96vw;max-height:94dvh;border:1px solid var(--color-dark-muted);padding:var(--space-lg);background:var(--color-dark);color:var(--color-paper);overflow:auto}.lightbox::backdrop{background:var(--color-overlay)}.lightbox-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-lg);margin-bottom:var(--space-md)}.lightbox-bar p{margin:0;font-size:var(--text-sm)}.lightbox button{min-width:44px;min-height:44px;background:var(--color-clear);color:var(--color-paper);border:1px solid var(--color-dark-muted);white-space:nowrap;padding:var(--space-sm)}.lightbox img{width:auto;max-height:68dvh;margin:auto;object-fit:contain}.lightbox figcaption{color:var(--color-dark-muted);text-align:center}.lightbox-controls{display:flex;align-items:center;justify-content:center;gap:var(--space-lg);margin-top:var(--space-md)}.image-status{font-size:var(--text-sm);margin:var(--space-md) 0 0;min-height:1.85em}.media-link{transition:opacity var(--dur-fast) var(--ease-out)}
@media(hover:hover){.button:hover{transform:translate(-1px,-1px)}.nav-list a:hover,.footer-links a:hover,.related-links a:hover{color:var(--color-accent)}.media-link:hover{opacity:.85}.toc a:hover,summary:hover{background:var(--color-paper-2)}.filter:hover{border-color:var(--color-ink)}}
@media(min-width:1500px){.hero{min-height:740px}}
@media(max-width:900px){.nav-inner{padding-inline:var(--space-lg);gap:var(--space-md)}.nav-list{gap:var(--space-md)}.nav-inner>.button{display:none}.hero{min-height:600px}.story{gap:var(--space-xl)}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-copy{max-width:580px}.final-cta{grid-template-columns:minmax(0,1fr)}.download-card{grid-template-columns:minmax(0,1fr)}}
@media(max-width:640px){:root{--nav-height:68px}body{padding-bottom:90px}.nav-inner{min-height:68px;flex-wrap:wrap;gap:var(--space-sm)}.slab-mark{font-size:var(--text-base)}.slab-mark small{font-size:.7rem}.menu-toggle{display:block;margin-left:auto;border:1px solid var(--color-dark-muted);padding:var(--space-sm) var(--space-md);min-height:44px;color:var(--color-paper);background:var(--color-clear);white-space:nowrap;line-height:1}.nav-inner nav{width:100%;margin:0}.nav-list{justify-content:space-between;gap:var(--space-xs);border-top:1px solid var(--color-dark-muted);padding-top:var(--space-xs)}.nav-list a{font-size:var(--text-sm)}.js .nav-inner nav:not(.is-open){display:none}.hero{min-height:620px;align-items:flex-end}.hero-art{object-position:57% 0%;height:62%;object-fit:cover}.hero:after{background:linear-gradient(0deg,var(--color-dark) 0%,var(--color-dark) 39%,var(--color-shade) 58%,var(--color-clear) 90%)}.hero-copy{padding:var(--space-xl) var(--space-lg);padding-top:230px;max-width:none}.game-logo{display:none}.hero h1{font-size:2.4rem;max-width:10em}.original{font-size:.75rem;margin-top:var(--space-sm)}.hero-lede{font-size:var(--text-base);margin:var(--space-md) 0;max-width:30em}.tags{margin-bottom:var(--space-md)}.actions{gap:var(--space-sm)}.button{font-size:.875rem;padding:var(--space-md);min-height:48px}.hero .fine{font-size:.75rem}.section,.info-box,.site-footer,.sub-head{padding:var(--space-xl) var(--space-lg)}.info-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-lg) var(--space-md)}.info-grid dd{font-size:.875rem}.story,.mechanic,.fit-list{grid-template-columns:minmax(0,1fr);gap:var(--space-lg)}.story-aside{transform:none}.story-aside img{width:240px}.mechanic:nth-child(odd) .media{order:0}.mechanic+.mechanic{margin-top:var(--space-xl)}.section-head{align-items:flex-start;flex-direction:column;gap:var(--space-xs);margin-bottom:var(--space-lg)}.thumbnail-row{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-top{align-items:flex-start;flex-direction:column}.sticky-cta{display:flex}.toc,.gallery-grid{grid-template-columns:minmax(0,1fr)}.download-card{padding:var(--space-lg)}.spec-table th,.spec-table td{padding:var(--space-sm);font-size:.875rem}.sub-head h1{font-size:1.9rem}.breadcrumbs{margin-bottom:var(--space-lg)}.lightbox{padding:var(--space-sm)}.lightbox-bar{gap:var(--space-xs)}.lightbox img{max-height:62dvh}.lightbox-controls{gap:var(--space-sm)}.lightbox-controls button{font-size:var(--text-sm)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.button:hover,a:active,button:active,summary:active{transform:none}.game-logo{transform:none}}

@media(max-width:640px){html:not(.js){--nav-height:128px}}
