/* Public wiki presentation only. The game's runtime is not imported. */
@font-face{font-family:"Cubic 11";src:url("./fonts/mfm-reading.ttf") format("truetype");font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:"MFM Pixel";src:url("./fonts/BoutiqueBitmap9x9_1.93.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
/* Static presentation tokens from the game's competitive-rule.html and
   desktop-layout.css. Keep the Wiki independent of the private game runtime. */
:root{color-scheme:dark;--bg:#000;--panel:#000;--ink:#f1eedc;--copy:#c4c4b6;--muted:#8d8a7b;--line:#48483f;--soft:#2c302a;--accent:#72aa83;--game-accent:var(--accent);--gold:#c8a951;--cyan:#6cbebc;--font:"Cubic 11",monospace;--wiki-frame-width:min(100vw,calc(100dvh * 4 / 3));--wiki-frame-height:calc(var(--wiki-frame-width) * 3 / 4);--wiki-frame-pad:clamp(8px,calc(var(--wiki-frame-width) * .0095),14px);--wiki-frame-gap:var(--wiki-frame-pad);--wiki-header-height:clamp(54px,calc(var(--wiki-frame-height) * .0625),72px);--mfm-scroll-size:12px;--mfm-scroll-rail-width:12px;--mfm-scroll-content-gutter:14px;--mfm-scroll-track:#0b0d0a;--mfm-scroll-track-line:#242720;--mfm-scroll-thumb:#666960;--mfm-scroll-thumb-edge:#353831;--mfm-scroll-hover:#8b7a42;--mfm-scroll-active:#4f6f59;--mfm-frame-shadow:5px 5px 0 #111,inset 0 0 0 2px #090909}
*{box-sizing:border-box}
html{scroll-padding-top:110px}
html.wiki-fonts-loading body{visibility:hidden}
body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.8 var(--font);font-synthesis:none;-webkit-text-size-adjust:100%;text-size-adjust:100%}
/* Static copy of the game loading presentation; no game runtime is imported. */
.wiki-loading-overlay{display:none;position:fixed;inset:0;z-index:2147483000;align-items:center;justify-content:center;background:#050706;color:#f1eedc}
html.wiki-fonts-loading .wiki-loading-overlay{display:flex;visibility:visible}
.mfm-loading-hexes{display:flex;align-items:center;justify-content:center;gap:14px;width:max-content;height:26px;animation:mfm-loading-hex-center 1380ms linear infinite}
.mfm-loading-hexes>b{position:relative;display:block;width:22px;height:25.4px;flex:0 0 22px;background:#fff;clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);opacity:0;transform-origin:center}
.mfm-loading-hexes>b::after{content:"";position:absolute;inset:0;background:#050706;clip-path:inherit;transform:scale(.78)}
.mfm-loading-hexes>b:first-child{animation:mfm-loading-hex-one 1380ms linear infinite}
.mfm-loading-hexes>b:nth-child(2){animation:mfm-loading-hex-two 1380ms linear infinite}
.mfm-loading-hexes>b:nth-child(3){animation:mfm-loading-hex-three 1380ms linear infinite}
@keyframes mfm-loading-hex-center{
  0%,23%{transform:translateX(36px)}
  27%,41%{transform:translateX(18px)}
  45%,100%{transform:translateX(0)}
}
@keyframes mfm-loading-hex-one{
  0%,5%{opacity:0;transform:translateY(-8px) scale(.12)}
  9%{opacity:1;transform:translateY(0) scale(.12)}
  11%{transform:scale(.08);animation-timing-function:cubic-bezier(.2,.75,.25,1)}
  19%{transform:scale(1.06);animation-timing-function:ease-out}
  23%,78%{opacity:1;transform:scale(1)}
  84%,100%{opacity:0;transform:scale(.6)}
}
@keyframes mfm-loading-hex-two{
  0%,23%{opacity:0;transform:translateY(-8px) scale(.12)}
  27%{opacity:1;transform:translateY(0) scale(.12)}
  29%{transform:scale(.08);animation-timing-function:cubic-bezier(.2,.75,.25,1)}
  37%{transform:scale(1.06);animation-timing-function:ease-out}
  41%,78%{opacity:1;transform:scale(1)}
  84%,100%{opacity:0;transform:scale(.6)}
}
@keyframes mfm-loading-hex-three{
  0%,41%{opacity:0;transform:translateY(-8px) scale(.12)}
  45%{opacity:1;transform:translateY(0) scale(.12)}
  47%{transform:scale(.08);animation-timing-function:cubic-bezier(.2,.75,.25,1)}
  55%{transform:scale(1.06);animation-timing-function:ease-out}
  59%,78%{opacity:1;transform:scale(1)}
  84%,100%{opacity:0;transform:scale(.6)}
}
@media (prefers-reduced-motion:reduce){.mfm-loading-hexes{animation:none;transform:none}.mfm-loading-hexes>b{animation:none!important;opacity:1;transform:none}}
a{color:var(--cyan);text-underline-offset:4px}
a:hover{color:#b7ded7}
a:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
img{max-width:100%;height:auto;display:block}
h1,h2,h3,p,ol,ul,figure,dl{margin:0}
h1,h2,h3,strong{font-weight:400}
h1{font-size:30px;line-height:1.35;color:var(--accent)}
h2{font-size:24px;line-height:1.45;color:var(--accent)}
h3{font-size:20px;line-height:1.5;color:var(--ink)}
p,li,td,th{overflow-wrap:break-word}
p{color:var(--copy)}
p+p{margin-top:14px}
strong{color:var(--ink)}
ul,ol{padding-left:24px;color:var(--copy)}
li+li{margin-top:9px}
::selection{background:#244735;color:#fff}
.site-shell{width:var(--wiki-frame-width);aspect-ratio:4/3;margin:0 auto;padding:var(--wiki-frame-pad);display:flex;flex-direction:column;overflow:hidden;container:wiki-frame / inline-size}
.frame{border:3px solid var(--line);background:var(--panel);box-shadow:var(--mfm-frame-shadow)}
.site-head{position:relative;z-index:10;flex:none;height:var(--wiki-header-height);min-height:var(--wiki-header-height);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:7px 7px 7px 14px}
.site-head::before{content:"";position:absolute;top:-15px;left:-3px;right:-3px;height:12px;background:var(--bg)}
.brand{display:flex;align-items:center;gap:22px;min-width:0;color:var(--ink);text-decoration:none}
.brand img{width:min(814.02px,calc(100cqw - 176px));height:auto;min-width:0;filter:drop-shadow(0 0 1px rgba(255,255,255,.18))}
.brand-tag{padding-left:20px;border-left:1px solid var(--line);color:var(--accent);font:13px/1.5 var(--font);letter-spacing:.06em;flex:none}
.head-actions{display:flex;align-items:center;gap:12px;flex:none}
.language-switch{display:flex;border:1px solid var(--line);padding:3px;gap:3px;background:#000}
.language-switch a{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:36px;padding:3px 8px;text-decoration:none;font-size:14px;color:var(--muted);border:1px solid transparent}
.language-switch a[aria-current]{border-color:var(--game-accent);background:#102017;color:var(--accent)}
.language-switch a:hover{color:var(--ink);background:#131811}
.pixel-btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:44px;padding:9px 12px;background:#000;border:2px solid var(--button-line,#737373);box-shadow:3px 3px 0 var(--button-shadow,#222),0 0 1.5px rgba(225,235,225,.1);color:var(--ink);text-decoration:none;font:inherit;font-size:15px;line-height:1.4;cursor:pointer;touch-action:manipulation}
.pixel-btn.primary{border-color:var(--game-accent)}
.pixel-btn.cyan{border-color:var(--cyan);color:var(--cyan)}
.pixel-btn:hover{background:var(--button-hover-bg,#000);color:var(--button-hover-ink,var(--ink));border-color:var(--button-hover-line,#737373);filter:brightness(var(--button-hover-brightness,1.25))}
.pixel-btn.primary:hover{border-color:var(--game-accent)}
.pixel-btn.cyan:hover{border-color:var(--cyan);color:var(--cyan)}
.pixel-btn:focus-visible{outline:3px solid #fff;outline-offset:3px}
.pixel-btn:active{transform:translate(2px,2px);box-shadow:1px 1px #111}
/* Static counterpart of the game's room-action dialog and popup-presentation.
   Native dialog supplies modality; wiki.js owns only launch and finite animations. */
@property --launch-frame-y{syntax:"<length>";inherits:true;initial-value:0px}
@property --launch-frame-x{syntax:"<length>";inherits:true;initial-value:0px}
.mfm-launch-dialog{
  --button-line:#73736b;--button-shadow:#222;
  --button-hover-bg:#000;--button-hover-ink:var(--ink);--button-hover-line:#73736b;--button-hover-brightness:1.3;
  box-sizing:border-box;width:min(46rem,calc(100% - 28px));max-height:calc(100dvh - 28px);
  margin:auto;padding:clamp(16px,4vw,24px);border:3px solid #777b72;border-radius:0;
  overflow:auto;scrollbar-gutter:stable;color:#e9e6d6;font-family:"MFM Pixel",monospace;
  background:radial-gradient(ellipse 80% 54% at 50% 26%,rgba(108,190,188,.13),transparent 68%),radial-gradient(ellipse 100% 90% at 50% 50%,transparent 54%,rgba(0,0,0,.74) 100%),repeating-linear-gradient(180deg,rgba(255,255,255,.015) 0 1px,transparent 1px 4px),#050605;
  box-shadow:var(--mfm-frame-shadow),inset 0 0 42px rgba(108,190,188,.035);
}
.mfm-launch-dialog[data-animating]::after{content:"";position:absolute;pointer-events:none;border:2px solid #777b72;inset:max(0px,calc(var(--launch-frame-y) - 3px)) max(0px,calc(var(--launch-frame-x) - 3px));z-index:1}
.mfm-launch-dialog::backdrop{background:radial-gradient(ellipse at 50% 42%,rgba(108,190,188,.08),transparent 48%),rgba(0,0,0,.82)}
.mfm-launch-dialog h2{margin:0 0 16px;font-size:22px;line-height:1.4;color:var(--game-accent);overflow-wrap:anywhere}
.mfm-launch-copy{font-family:var(--font);font-size:16px;line-height:1.45}
.mfm-launch-copy p{color:#b9b6a4}
.mfm-launch-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:12px;margin-top:20px}
.mfm-launch-actions .pixel-btn{min-width:0;text-align:center;overflow-wrap:anywhere;font-family:var(--font)}
.mfm-launch-dialog .pixel-btn:focus-visible{outline:0;border-color:#e2e5d9;filter:brightness(1.5);box-shadow:3px 3px #303228,0 0 9px rgba(235,238,226,.42)}
.layout{display:grid;grid-template-columns:228px minmax(0,1fr) 206px;align-items:stretch;gap:var(--wiki-frame-gap);margin-top:var(--wiki-frame-gap);flex:1 1 auto;min-height:0}
.left-rail,.right-rail{display:grid;grid-auto-rows:max-content;align-content:start;gap:var(--wiki-frame-gap);min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;scrollbar-width:none;scrollbar-gutter:auto;padding:0 5px 5px 0}
:is(.left-rail,.right-rail)::-webkit-scrollbar{display:none;width:0;height:0}
/* Scrollbar palette and geometry mirror the game's retro-scrollbar.css.
   The article reserves its game rail in HTML; tables keep native scrollbar styling. */
.page,.table-wrap{
  scrollbar-width:auto;
  scrollbar-color:var(--mfm-scroll-thumb) var(--mfm-scroll-track);
}
:is(.page,.table-wrap)::-webkit-scrollbar{
  width:var(--mfm-scroll-size);
  height:var(--mfm-scroll-size);
  background:#000;
}
:is(.page,.table-wrap)::-webkit-scrollbar-track{
  border:2px solid #1f221d;
  border-radius:0;
  background:repeating-linear-gradient(180deg,transparent 0 3px,var(--mfm-scroll-track-line) 3px 4px),var(--mfm-scroll-track);
  box-shadow:inset 0 0 0 1px #30332c;
}
:is(.page,.table-wrap)::-webkit-scrollbar-thumb{
  min-width:28px;
  min-height:28px;
  border:2px solid #000;
  border-radius:0;
  background:linear-gradient(90deg,var(--mfm-scroll-thumb-edge) 0 2px,var(--mfm-scroll-thumb) 2px calc(100% - 2px),var(--mfm-scroll-thumb-edge) calc(100% - 2px));
  box-shadow:inset 0 0 0 1px #7f8278;
}
:is(.page,.table-wrap)::-webkit-scrollbar-thumb:hover{
  background:linear-gradient(90deg,#514725 0 2px,var(--mfm-scroll-hover) 2px calc(100% - 2px),#514725 calc(100% - 2px));
  box-shadow:inset 0 0 0 1px #a8975b;
}
:is(.page,.table-wrap)::-webkit-scrollbar-thumb:active{
  background:linear-gradient(90deg,#32483a 0 2px,var(--mfm-scroll-active) 2px calc(100% - 2px),#32483a calc(100% - 2px));
  box-shadow:inset 0 0 0 1px #6f9079;
}
:is(.page,.table-wrap)::-webkit-scrollbar-corner{
  border:2px solid #000;
  background:linear-gradient(45deg,transparent 40%,#242620 40% 60%,transparent 60%),var(--mfm-scroll-track);
}
/* The article has this class in its initial HTML, reserving the 14px gutter
   before enhancement runs. JavaScript sizes and moves the thumb without
   changing article geometry. Wheel, touch and keyboard scrolling remain native. */
@media(min-width:761px){
  .page.wiki-scroll-rail{
    --wiki-scroll-thumb-h:28px;
    --wiki-scroll-thumb-y:2px;
    --wiki-scroll-thumb-color:var(--mfm-scroll-thumb);
    --wiki-scroll-thumb-edge:var(--mfm-scroll-thumb-edge);
    overflow-y:auto;
    scrollbar-width:none;
    scrollbar-gutter:auto;
    padding-right:var(--mfm-scroll-content-gutter);
    background-image:
      linear-gradient(90deg,var(--wiki-scroll-thumb-edge) 0 2px,var(--wiki-scroll-thumb-color) 2px 8px,var(--wiki-scroll-thumb-edge) 8px 10px),
      repeating-linear-gradient(180deg,var(--mfm-scroll-track) 0 3px,var(--mfm-scroll-track-line) 3px 4px);
    background-position:
      calc(100% - 2px) var(--wiki-scroll-thumb-y),
      calc(100% - 1px) 0;
    background-size:
      10px var(--wiki-scroll-thumb-h),
      var(--mfm-scroll-rail-width) 100%;
    background-repeat:no-repeat;
    background-attachment:scroll;
  }
  .wiki-scroll-rail::-webkit-scrollbar{width:0;height:0}
  .wiki-scroll-rail[data-wiki-scroll-hover]{
    --wiki-scroll-thumb-color:var(--mfm-scroll-hover);
    --wiki-scroll-thumb-edge:#514725;
  }
  .wiki-scroll-rail[data-wiki-scroll-dragging]{
    --wiki-scroll-thumb-color:var(--mfm-scroll-active);
    --wiki-scroll-thumb-edge:#32483a;
    cursor:ns-resize;
    user-select:none;
  }
}
.site-nav{padding:17px 12px 13px}
.panel-label{display:block;font-size:13px;line-height:1.5;color:var(--muted);letter-spacing:.02em}
.site-nav>.panel-label{padding:0 6px 16px}
.nav-link{display:flex;align-items:center;gap:12px;min-height:73px;margin-top:4px;padding:10px 9px;border:1px solid transparent;text-decoration:none;color:var(--copy);line-height:1.45;font-size:17px}
.nav-index{align-self:center;font-size:12px;color:var(--muted)}
.nav-link small{display:block;margin-top:5px;color:var(--muted);font-size:12px;line-height:1.4;letter-spacing:.02em}
.nav-arrow{margin-left:auto;color:var(--soft);font-size:23px}
.nav-link[aria-current="page"]{border-color:var(--game-accent);background:#0b160e;color:var(--accent);box-shadow:inset 3px 0 var(--game-accent)}
.nav-link[aria-current] .nav-index,.nav-link[aria-current] .nav-arrow{color:var(--accent)}
.nav-link:hover{color:var(--accent);background:#0b100c}
.rail-note{padding:17px 18px}
.rail-note p{font-size:14px;line-height:1.8;margin:11px 0 16px;color:var(--muted)}
.rail-note .pixel-btn{display:flex;padding:8px;font-size:13px;gap:8px}
.page{min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;scrollbar-gutter:stable;scroll-padding-top:18px;container:wiki-article / inline-size}
.page:focus{outline:none}
.hero{padding:27px 28px 26px}
.eyebrow{display:block;color:var(--muted);font-size:12px;line-height:1.5;letter-spacing:.02em;margin-bottom:12px}
.hero .eyebrow{color:var(--gold)}
.hero h1{margin-bottom:14px}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin-top:23px}
.text-link{font-size:14px;text-decoration:none;color:var(--muted)}
.text-link:hover{color:var(--cyan)}
.section{padding:27px 28px 29px;border-top:1px solid var(--line)}
.section h2{margin-bottom:16px}
.section ol,.section ul{margin-top:14px}
.section p+ul,.section p+ol{margin-top:14px}
.section ul+p,.section ol+p{margin-top:16px}
.version-note{font-size:13px!important;line-height:1.7;color:var(--muted)!important;margin-top:15px!important}
.game-figure{margin:0 28px 28px;border:1px solid var(--line);background:#000}
.figure-label{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 13px;background:#0b1412;border-bottom:1px solid var(--line);color:var(--cyan);font-size:12px;line-height:1.5}
.demo-label{color:var(--muted);font-size:12px}
.game-preview{display:block;overflow:hidden;aspect-ratio:16/9}
.game-preview img{width:100%;height:100%;object-fit:cover;object-position:50% 32%}
.game-preview:hover img{opacity:.85}
figcaption{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;padding:10px 13px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}
figcaption a{text-decoration:none}
.entry-list{display:grid}
.entry{display:grid;grid-template-columns:26px minmax(0,1fr);align-items:center;gap:17px;padding:20px 7px;border-top:1px solid var(--soft);text-decoration:none}
.entry:last-child{padding-bottom:6px}
.entry-number{align-self:center;font-size:13px;color:var(--gold)}
.entry h3{font-size:21px;color:var(--ink);margin-bottom:6px}
.entry p{font-size:14px;line-height:1.75;color:var(--muted)}
.entry:hover{background:#0b130e}
.entry:hover h3{color:var(--accent)}
.contents-panel{padding:17px 13px 13px}
.search-panel[data-wiki-resizing],.contents-panel[data-wiki-resizing]{overflow:hidden;overflow:clip}
.contents-panel summary{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 3px;list-style:none;cursor:pointer;min-height:24px}
.contents-panel summary::-webkit-details-marker{display:none}
.collapse-icon{width:7px;height:7px;border-right:1px solid var(--muted);border-bottom:1px solid var(--muted);transform:rotate(45deg);margin:0 4px 4px 0}
details[open] .collapse-icon{transform:rotate(225deg);margin-top:6px}
.toc{list-style:none;padding:12px 0 0;font-size:14px}
.toc li+li{margin-top:3px}
.toc a{display:flex;align-items:baseline;gap:10px;padding:9px 8px;border-left:2px solid transparent;text-decoration:none;color:var(--muted);line-height:1.5}
.toc a>span{color:#73796b;font:12px/1.5 var(--font);flex:none}
.toc a:hover{color:var(--ink)}
.toc a[aria-current="location"]{color:var(--accent);border-color:var(--game-accent);background:#0b130e}
.toc a[aria-current] span{color:var(--accent)}
.reference-card{padding:17px 17px 11px}
.reference-card p{font-size:14px;line-height:1.75;color:var(--muted);margin:12px 0}
.reference-card:not(.wiki-contribution)>a{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #343325;padding:11px 0;color:var(--gold);text-decoration:none;font:12px/1.5 var(--font)}
.reference-card:not(.wiki-contribution)>a:hover{color:var(--ink)}
.wiki-contribution{padding-bottom:17px}
.wiki-contribution>.pixel-btn{width:100%;padding-inline:6px;font-size:13px;text-align:center;justify-content:center;align-items:center}
.card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.mode-card{border:1px solid var(--line);padding:18px}
.mode-card .eyebrow{font-size:12px}
.mode-card h3{color:var(--accent);margin-bottom:12px}
.mode-card p{font-size:14px;line-height:1.85}
.table-wrap{overflow-x:auto;margin:18px 0;max-width:100%}
.data-table{border-collapse:collapse;width:100%;font-size:15px;line-height:1.7}
.data-table th,.data-table td{padding:11px 12px;text-align:left;border-bottom:1px solid var(--soft)}
.data-table th{background:#10150e;color:var(--gold);font-weight:400;white-space:nowrap}
.data-table td{color:var(--copy)}
.data-table td:nth-child(2){color:var(--ink)}
.note{padding:15px 17px;border-left:3px solid var(--gold);background:#131209;color:var(--copy);font-size:14px;line-height:1.85;margin:18px 0}
.note strong{color:var(--gold)}
.timeline{list-style:none;padding-left:23px;border-left:1px solid var(--line)}
.timeline li{position:relative;margin:0 0 30px;padding-left:4px}
.timeline li::before{content:"";position:absolute;left:-28px;top:4px;width:9px;height:9px;background:var(--game-accent);box-shadow:0 0 0 4px var(--panel)}
.timeline li:last-child{margin-bottom:0}
.timeline .eyebrow{font-size:12px;color:var(--gold)}
.timeline h3{margin-bottom:11px;color:var(--accent)}
.site-footer{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px 16px;flex:none;margin-top:12px;padding:10px 0;border-top:1px solid var(--soft);background:var(--bg);font-size:12px;line-height:1.45;color:var(--muted)}
.site-footer .rating-summary{display:flex;align-items:center;gap:10px;flex:1 1 270px;min-width:0}
.site-footer .rating-symbol{display:block;flex:none;width:52px;height:52px;object-fit:contain}
.site-footer .rating-copy{min-width:0;overflow-wrap:anywhere;font-size:10px;line-height:1.4}
.site-footer .rating-title{margin-bottom:6px;color:var(--ink);font-size:11px;font-weight:600}
.site-footer .rating-pending{color:var(--muted);font-size:10px;font-weight:400}
.site-footer .rating-warning{color:var(--muted)}
.site-footer .rating-zh-notice{font-size:9px;color:var(--muted)}
.site-footer .footer-meta{display:grid;grid-template-columns:minmax(0,1fr);gap:4px;width:max-content;max-width:100%;margin-left:auto;flex:0 1 auto}
.site-footer .footer-copyright{display:flex;justify-content:space-between;align-items:center;gap:5px;white-space:nowrap;font-size:11px}
.site-footer .footer-nav{display:flex;justify-content:space-between;align-items:center;flex-wrap:nowrap;gap:4px;width:100%;margin-left:0}
.site-footer .footer-nav a{text-decoration:none;white-space:nowrap}
.site-footer .footer-nav a+a::before{content:"/";display:inline-block;margin-right:7px;color:var(--line)}
.site-footer a{color:var(--muted)}
.site-footer a:hover{color:#b7ded7}
@media(max-width:760px){.site-footer .rating-summary{flex:1 1 100%}.site-footer .footer-meta{margin-left:auto}}
@media(max-width:420px){.site-footer .footer-meta{font-size:10px}.site-footer .footer-copyright{font-size:10px;gap:3px}.site-footer .footer-nav a+a::before{margin-right:4px}}
.skip-link{position:fixed;left:18px;top:-100px;z-index:30;background:#000;padding:10px 15px;border:2px solid var(--gold)}
.skip-link:focus{top:10px}
@media(min-width:761px){html,body{height:100%;overflow:hidden}body{display:grid;place-items:center}}
/* Breakpoints follow the actual 4:3 frame, including wide, short windows. */
@container wiki-frame (min-width:1600px){.hero,.section{padding-left:34px;padding-right:34px}.game-figure{margin-left:34px;margin-right:34px}}
@container wiki-frame (max-width:1260px){.layout{grid-template-columns:205px minmax(0,1fr) 182px}.brand-tag{display:none}.brand img{width:min(814.02px,calc(100cqw - 160px))}.head-actions{gap:9px}.site-head{gap:18px}.hero,.section{padding:24px}.game-figure{margin-left:24px;margin-right:24px}.nav-link{gap:9px;font-size:16px}}
@media(min-width:761px){
  @container wiki-frame (max-width:1000px){.layout{grid-template-columns:176px minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto}.left-rail{grid-column:1;grid-row:1;overflow-y:auto}.right-rail{grid-column:1;grid-row:2;overflow-y:auto;max-height:40dvh}.page{grid-column:2;grid-row:1 / span 2}.toc{font-size:13px}.contents-panel{padding:12px}.nav-link{font-size:15px;gap:8px}.nav-link small{font-size:12px}.rail-note{padding:15px 13px}.rail-note .pixel-btn{font-size:12px}}
}
@media(max-width:760px){html{scroll-padding-top:160px}.site-shell{width:calc(100% - 24px);height:auto;aspect-ratio:auto;margin-top:12px;padding:0;display:block;overflow:visible}.site-head{position:sticky;top:9px;height:auto;min-height:0;padding:14px;gap:15px;flex-wrap:wrap}.brand{width:100%;justify-content:space-between;gap:15px}.brand img{width:calc(100% - 80px);max-width:660px}.brand-tag{display:block;font-size:12px;padding-left:13px;line-height:1.4}.head-actions{width:100%;justify-content:flex-end}.language-switch a{min-height:37px;min-width:48px}.layout{display:flex;flex-direction:column;gap:13px;margin-top:13px;flex:none;min-height:auto}.left-rail,.right-rail{width:100%;display:grid;gap:13px;max-height:none;overflow:visible;padding:0}.left-rail{order:1}.right-rail{order:2}.page{order:3;width:100%;min-height:auto;overflow:visible;scrollbar-gutter:auto}.site-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;padding:8px}.site-nav>.panel-label{display:none}.nav-link{min-height:53px;justify-content:center;gap:0;padding:7px 3px;margin:0;font-size:14px;text-align:center}.nav-link small,.nav-index,.nav-arrow{display:none}.nav-link[aria-current="page"]{box-shadow:inset 0 -2px var(--game-accent)}.contents-panel{padding:11px 13px}.contents-panel summary{min-height:26px}.toc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.toc li+li{margin:0}.hero,.section{padding:22px}.hero h1{font-size:27px}.hero p{font-size:16px;line-height:1.9}.game-figure{margin:0 22px 22px}.hero-actions{gap:17px}.game-preview{aspect-ratio:4/3}.game-preview img{object-fit:contain}.entry{gap:11px;grid-template-columns:22px minmax(0,1fr);padding-top:18px;padding-bottom:18px}.entry h3{font-size:20px}.site-footer{font-size:12px;gap:7px;margin-top:20px}.data-table{font-size:14px}.data-table th,.data-table td{padding:9px 8px}.mode-card{padding:15px}.card-grid{gap:10px}}
@media(max-width:420px){.site-shell{width:calc(100% - 18px);margin-top:9px}.site-head{padding:12px}.brand{gap:9px}.brand img{width:100%}.brand-tag{display:none}.nav-link{font-size:12px}.hero,.section{padding:19px}.game-figure{margin:0 19px 19px}.hero-actions{gap:14px}.hero-actions .pixel-btn{font-size:14px}.text-link{font-size:13px}.figure-label{font-size:12px;padding:8px 9px}.demo-label{font-size:12px}.entry p{font-size:13px}.card-grid{grid-template-columns:1fr}.version-note{font-size:12px!important}.footer-divider{padding:0 4px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Cropped game visuals: captions stay outside the image and translate with the article. */
.guide-figure{margin:20px 0 0;border:1px solid var(--line);background:#000;min-width:0}
.guide-figure>img{width:100%;max-height:420px;object-fit:contain;background:#000}
.guide-figure figcaption{font-size:13px;line-height:1.75;color:var(--copy);border-color:var(--soft);padding:11px 13px;display:block}
.intro-visual>img{height:235px;object-fit:cover;object-position:center}
.board-map{max-width:620px;margin:22px auto 0}
.board-map>img{max-height:480px}
.small-detail{width:fit-content;max-width:100%;margin:20px auto 0}
.small-detail>img{width:auto;max-width:100%;max-height:260px;margin:auto}
.visual-note{font-size:13px;line-height:1.8;color:var(--muted);margin-top:18px}
.visual-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:20px 0 15px;flex-wrap:wrap}
.visual-heading h3{color:var(--accent);font-size:19px}
[hidden]{display:none!important}
.demo-gallery{border:1px solid var(--line);margin-top:25px;background:#000}
.demo-gallery .figure-label{padding:9px 12px;min-height:48px}
.demo-stage{height:310px;display:flex;align-items:center;justify-content:center;background:#000;overflow:hidden}
.demo-stage img{width:100%;height:100%;object-fit:contain}
.demo-caption{min-height:56px;display:block;font-size:13px;line-height:1.8;color:var(--copy);border-color:var(--line)}
.demo-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:11px;border-top:1px solid var(--soft)}
.demo-controls button{min-width:0;min-height:43px;padding:8px 6px;background:#050805;border:1px solid var(--line);color:var(--muted);font:13px/1.5 var(--font);cursor:pointer}
.demo-controls button[aria-pressed="true"]{color:var(--accent);border-color:var(--game-accent);background:#0b180e;box-shadow:inset 0 -2px #42684d}
.demo-controls button:hover{color:var(--ink);border-color:var(--accent)}
.entry{grid-template-columns:26px 96px minmax(0,1fr);gap:14px}
.entry-thumb{display:block;border:1px solid var(--soft);background:#000;height:74px;overflow:hidden}
.entry-thumb img{width:100%;height:100%;object-fit:cover}
.rank-preview{margin-top:26px;padding-top:3px;border-top:1px solid var(--line)}
.rank-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-bottom:18px}
.rank-mini{display:block;text-decoration:none;text-align:center;background:#000;border:1px solid var(--soft);padding:8px 2px}
.rank-mini img{width:100%;max-width:100px;margin:auto}
.rank-mini span{font:12px/1.5 var(--font);display:block;color:var(--muted);margin-top:6px;overflow-wrap:anywhere}
.rank-mini:hover{border-color:var(--accent)}
.tile-catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:22px}
.tile-family{min-width:0;border:1px solid var(--line);background:#000}
.tile-family-label{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:11px 13px;border-bottom:1px solid var(--soft);font:14px/1.5 var(--font)}
.tile-family-label strong{color:var(--accent)}
.tile-family-label>span{font-size:12px;color:var(--gold)}
.tile-swatches{--tile-size:88px;display:grid;grid-template-columns:repeat(auto-fill,var(--tile-size));grid-auto-rows:var(--tile-size);align-content:start;gap:8px;padding:12px;min-height:112px}
.tile-swatch{position:relative;display:block;width:var(--tile-size);height:var(--tile-size);overflow:hidden}
.tile-swatch>img{position:absolute;max-width:none;width:calc(var(--tile-size) * var(--sheet-columns));height:auto;left:calc(var(--tile-size) * var(--tile-x));top:calc(var(--tile-size) * var(--tile-y))}
.connection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px}
.connection-grid .guide-figure{margin:0}
.connection-grid img{height:175px;object-fit:contain}
.connection-grid figcaption{font-size:12px;line-height:1.85;padding:10px}
.subheading{font-size:19px!important;margin-top:27px;color:var(--accent)}
.visual-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:20px}
.visual-pair .guide-figure{margin:0}
.visual-pair img{height:220px;object-fit:contain}
.center-comparison img{height:160px}
.scoring-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:20px}
.score-example{border:1px solid var(--line);background:#000;min-width:0}
.annotated-board{position:relative;margin:0 auto}
.annotated-board img{width:100%;height:auto}
.tile-number{position:absolute;transform:translate(-50%,-50%);background:#050f11;color:#e7fff3;border:1px solid #a9d6cd;box-shadow:1px 1px 0 #000;font:12px/1 var(--font);width:22px;height:22px;display:flex;justify-content:center;align-items:center}
.score-example figcaption{display:block;text-align:center;border-color:var(--soft);font:16px/1.6 var(--font);color:var(--accent)}
.score-example b{font-weight:400;color:var(--gold);padding:0 5px}
.rank-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px}
.rank-card{border:1px solid var(--line);background:#000;min-width:0;padding:12px 9px 15px;text-align:center}
.rank-card>img{width:112px;height:112px;margin:auto}
.rank-card figcaption{border:0;padding:5px 0 0;display:block}
.rank-card h3{font-size:20px;color:var(--ink);margin-bottom:8px}
.rank-rating{color:var(--gold);display:block;font:15px/1.5 var(--font)}
.rank-card figcaption>span{display:block;font-size:12px;line-height:1.75;color:var(--muted);margin-top:8px}
.placement-state{display:flex;align-items:center;gap:17px;padding:16px;margin-top:15px;border:1px solid var(--soft);background:#070907}
.placement-state>img{width:64px;height:64px;flex:none}
.placement-state strong{font:16px/1.5 var(--font);color:var(--muted)}
.placement-state p{font-size:13px;line-height:1.7;margin-top:6px}
.feature-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:22px}
.feature-gallery .guide-figure{margin:0}
.feature-gallery img{height:185px;object-fit:contain;object-position:center}
.feature-gallery figcaption{font-size:12px;padding:10px}
.timeline-visuals{margin:20px 0 27px}
.timeline-visuals img{height:220px}
@container wiki-frame (max-width:1150px){.rank-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.rank-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.entry{grid-template-columns:20px 72px minmax(0,1fr);gap:10px}.connection-grid{grid-template-columns:1fr}.connection-grid .guide-figure{display:grid;grid-template-columns:150px minmax(0,1fr)}.connection-grid img{height:140px}.connection-grid figcaption{border-top:0;border-left:1px solid var(--soft);display:flex;align-items:center}.feature-gallery{grid-template-columns:1fr}.feature-gallery .guide-figure{display:grid;grid-template-columns:155px minmax(0,1fr)}.feature-gallery img{height:140px}.feature-gallery figcaption{border-left:1px solid var(--soft);border-top:0;display:flex;align-items:center}}
@media(max-width:760px){.entry{grid-template-columns:72px minmax(0,1fr);gap:11px}.entry-number{display:none}.demo-controls{gap:5px;padding:8px}.demo-controls button{font-size:12px;min-height:48px}.demo-caption{font-size:12px}.tile-catalog{gap:11px}.tile-family-label{padding:9px;font-size:13px}.tile-family-label>span{font-size:12px}.visual-pair{gap:11px}.visual-pair img{height:155px}.visual-pair figcaption{padding:9px;font-size:12px}.rank-grid{gap:11px}.rank-card{padding:9px 7px 12px}.rank-card>img{width:100px;height:100px}.rank-card h3{font-size:18px}.rank-rating{font-size:13px}.rank-card figcaption>span{font-size:12px}.scoring-gallery{gap:12px}.tile-number{font-size:12px;width:19px;height:19px}.intro-visual>img{height:210px}.rank-mini span{font-size:12px}}
@media(max-width:520px){.tile-catalog{grid-template-columns:1fr}.scoring-gallery{grid-template-columns:1fr}.connection-grid .guide-figure{grid-template-columns:125px minmax(0,1fr)}.connection-grid img{height:150px}.connection-grid figcaption{padding:9px;font-size:12px}.feature-gallery .guide-figure{grid-template-columns:120px minmax(0,1fr)}.feature-gallery img{height:140px}.visual-pair{grid-template-columns:1fr}.visual-pair img{height:190px}.center-comparison{grid-template-columns:repeat(2,minmax(0,1fr))}.center-comparison img{height:130px}.entry-thumb{height:67px}.demo-controls button{font-size:12px}.guide-figure figcaption{font-size:12px}.placement-state{padding:12px;gap:12px}.placement-state>img{width:52px;height:52px}.small-detail>img{max-height:200px}.intro-visual>img{height:190px}}

.score-reference{margin-top:22px;border:1px solid var(--line);padding:12px 14px}
.score-reference summary{cursor:pointer;color:var(--gold);font:14px/1.6 var(--font)}
.score-reference .table-wrap{margin-bottom:0}
@media(max-width:760px){.demo-stage{height:auto;aspect-ratio:640/380;max-height:300px}.demo-caption{min-height:88px}}

/* Bilingual keyword search sits above the article contents in the right rail. */
.search-panel{padding:15px 12px 13px;min-width:0}
.search-panel .panel-label{display:block;margin-bottom:12px;color:var(--cyan)}
.search-field{position:relative}
.search-field input{display:block;width:100%;min-width:0;min-height:42px;padding:9px 29px 9px 9px;border:2px solid #5d5d54;border-radius:0;background:#000;color:#fff;font:13px/1.6 var(--font);appearance:none}
.search-field input::placeholder{color:var(--muted);opacity:1}
.search-field input::-webkit-search-cancel-button{appearance:none}
.search-field input:focus-visible{outline:0;border-color:#fff}
.search-clear{position:absolute;right:3px;top:4px;min-width:27px;min-height:34px;padding:0;border:0;background:#000;color:var(--muted);font:20px/1 var(--font);cursor:pointer}
.search-clear:hover{color:var(--ink)}
.search-clear:focus-visible{outline:2px solid var(--gold);outline-offset:0}
.search-status{font:12px/1.8 var(--font);color:var(--muted);margin-top:10px}
.search-status{color:var(--gold)}
.search-results{list-style:none;padding:0;margin:12px 0 0;border-top:1px solid var(--soft)}
.search-results li+li{margin-top:0}
.search-results a{display:block;padding:12px 3px;border-bottom:1px solid var(--soft);text-decoration:none;overflow-wrap:anywhere}
.search-results a:hover,.search-results a:focus-visible{background:#0b180e;color:var(--accent)}
.search-result-page{display:block;color:var(--gold);font:12px/1.7 var(--font);margin-bottom:4px}
.search-results strong{display:block;color:var(--accent);font:14px/1.7 var(--font)}
.search-result-snippet{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font:12px/1.8 var(--font);color:var(--muted);margin-top:6px}
@media(max-width:760px){.search-panel{padding:13px}.search-panel .panel-label{margin-bottom:9px}.search-field input{font-size:16px;min-height:44px}.search-results a{padding:13px 5px}.search-results strong{font-size:16px}.search-result-snippet{font-size:13px}.search-result-page{font-size:12px}}

.demo-controls button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}

.section ol:not(.timeline){list-style-type:"-  "}

/* Short landscape windows can have a narrow article inside a desktop frame.
   Content cards must follow that reading column rather than the browser width. */
@container wiki-article (max-width:480px){
  .card-grid,.tile-catalog,.visual-pair,.scoring-gallery,.rank-grid{grid-template-columns:1fr}
}
