*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;color-scheme:dark}body{margin:0;min-height:100vh;background-color:var(--color-page);background-image:var(--bg-aura);background-repeat:no-repeat;background-attachment:fixed;color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-body);font-weight:var(--weight-body);line-height:var(--leading-body);overflow-x:hidden}html[lang=th] body{line-height:var(--leading-body-th);letter-spacing:var(--tracking-th)}iframe,img,svg,video{max-width:100%}img,svg,video{height:auto}h1,h2,h3,h4{margin:0 0 var(--space-3);font-family:var(--font-display);font-weight:var(--weight-bold);line-height:var(--leading-heading);letter-spacing:var(--tracking-display);color:var(--color-ink)}html[lang=th] h1,html[lang=th] h2,html[lang=th] h3,html[lang=th] h4{line-height:var(--leading-display-th);text-transform:none;letter-spacing:var(--tracking-th)}p{margin:0 0 var(--space-4)}a{color:var(--color-cyan);text-decoration:none}a:hover{color:var(--color-violet);text-decoration:underline}:focus-visible{outline:none;box-shadow:var(--ring-focus);border-radius:var(--radius-xs)}button,input,select,textarea{font:inherit;color:inherit}.wrap{width:100%;max-width:var(--content-max);margin-inline:auto;padding-inline:var(--gutter)}.wrap-play{max-width:1180px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.skip{position:absolute;left:var(--space-4);top:calc(var(--space-4) * -6);z-index:var(--z-toast);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);background:var(--color-cyan);color:var(--color-on-neon);font-family:var(--font-display);font-weight:var(--weight-bold);box-shadow:var(--glow-btn-sm);transition:top var(--motion-fast) var(--ease-out)}.skip:focus{top:var(--space-4)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--tap-min);padding:var(--space-3) var(--space-5);background:var(--color-card);color:var(--color-ink);box-shadow:0 10px 26px -18px var(--color-violet-deep);border:1px solid var(--color-border-control);border-radius:var(--radius-md);font-family:var(--font-display);font-size:var(--text-label);font-weight:var(--weight-bold);letter-spacing:var(--tracking-btn);text-transform:uppercase;text-decoration:none;cursor:pointer;transition:transform var(--motion-fast) var(--ease-out),background-color var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out)}html[lang=th] .btn{letter-spacing:var(--tracking-th);text-transform:none;font-size:var(--text-ui)}.btn:hover{transform:translateY(var(--lift-btn));text-decoration:none}.btn:active{transform:translateY(0)}.btn.big{min-height:52px;padding-inline:var(--space-6)}.btn.xl{min-height:56px;padding-inline:var(--space-8);font-size:var(--text-ui);border-radius:var(--radius-lg)}.btn.block{display:flex;width:100%}.btn>svg{flex:none}.btn.t-neon{color:var(--color-on-neon);background:var(--color-cyan);background-image:var(--gradient-cta);box-shadow:var(--glow-btn-sm)}.btn.t-neon:hover{color:var(--color-on-neon);background:var(--color-violet);background-image:var(--gradient-cta-hero);box-shadow:var(--glow-btn-lg)}.btn.t-neon:focus-visible{box-shadow:var(--ring-focus-on-neon)}.btn.t-ghost{color:var(--color-ink);background:var(--color-page);border-color:var(--color-border-control);box-shadow:none}.btn.t-ghost:hover{color:var(--color-ink);background:var(--color-nav-active);border-color:var(--color-violet-deep)}.btn.t-quiet{color:var(--color-ink-soft);background:var(--color-card);border-color:var(--color-border-control);box-shadow:none}.btn.t-quiet:hover{color:var(--color-ink);background:var(--color-nav-active);border-color:var(--color-violet-deep)}.btn.t-rail{color:var(--color-ink-soft);background:var(--color-panel);border-color:transparent;box-shadow:none;justify-content:flex-start;text-transform:none;letter-spacing:0;font-size:var(--text-ui);font-weight:var(--weight-medium)}.btn.t-rail:hover{color:var(--color-white);background:var(--color-nav-active);border-color:var(--color-violet-deep)}.btn:disabled,.btn[aria-disabled=true]{color:var(--color-disabled);background:var(--color-card);border-color:var(--color-disabled);background-image:none;box-shadow:none;cursor:not-allowed;pointer-events:none}.icon-btn{display:inline-grid;place-items:center;width:var(--tap-min);height:var(--tap-min);border:1px solid var(--color-border-control);border-radius:var(--radius-md);background:var(--color-input);color:var(--color-ink);cursor:pointer;transition:background-color var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out)}.icon-btn:hover{background:var(--color-nav-active);color:var(--color-white);border-color:var(--color-violet-deep)}.icon-btn:active{transform:translateY(0)}.ic-k{fill:var(--color-page)}.ic-w{fill:var(--color-ink)}.ic-y{fill:var(--color-gold)}.ic-r{fill:var(--color-magenta)}.ic-b{fill:var(--color-cyan)}.ic-g{fill:var(--color-mint)}.ic-line{fill:none;stroke:var(--color-ink);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.hdr-wrap{position:sticky;top:0;z-index:var(--z-sticky);background:var(--color-header);backdrop-filter:blur(var(--blur-glass));-webkit-backdrop-filter:blur(var(--blur-glass));border-bottom:1px solid var(--color-rule)}.hdr{display:flex;align-items:center;gap:var(--space-6);width:100%;max-width:var(--content-max);margin-inline:auto;padding:14px var(--gutter)}.hdr-wrap.play .hdr{max-width:1180px}.hdr-wrap.play .lang{margin-left:auto;flex:none}.mark{display:inline-flex;align-items:center;gap:var(--space-3);flex:none;text-decoration:none}.mark:before{content:"";width:36px;height:36px;flex:none;border-radius:var(--radius-md);background-image:var(--gradient-brand);box-shadow:var(--glow-logo);-webkit-mask:linear-gradient(#000 0 0) padding-box,linear-gradient(#000 0 0)}.mark:after{content:"";position:absolute;width:13px;height:13px;margin-left:11px;border:2.5px solid var(--color-on-neon);border-radius:3px;transform:rotate(45deg);pointer-events:none}.mark{position:relative}.mark:hover{text-decoration:none}.plate-body{display:flex;flex-direction:column;line-height:1;gap:3px}.plate-top{font-weight:var(--weight-bold);font-size:1.125rem;letter-spacing:var(--tracking-logo);color:var(--color-ink)}.plate-bottom,.plate-top{font-family:var(--font-display);text-transform:uppercase}.plate-bottom{font-size:var(--text-label);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-eyebrow);color:var(--color-ink-dim)}html[lang=th] .plate-bottom{letter-spacing:var(--tracking-th)}.hdr-search{display:flex;align-items:center;flex:1 1 auto;max-width:440px;min-width:0;border:1px solid var(--color-border-control);border-radius:var(--radius-md);background:var(--color-input)}.hdr-search .field{display:block;flex:1 1 auto;min-width:0}.hdr-search input{width:100%;min-height:40px;padding:0 var(--space-4);border:0;border-radius:var(--radius-md);background:transparent;color:var(--color-ink);font-size:var(--text-ui)}.hdr-search input:focus{outline:none}.hdr-search input::placeholder{color:var(--color-ink-dim)}.hdr-search-go{display:grid;place-items:center;width:40px;height:40px;margin-right:2px;border:0;border-radius:var(--radius-md);background:transparent;color:var(--color-ink-soft);cursor:pointer}.hdr-search-go:hover{color:var(--color-cyan)}.hdr-search:focus-within{border-color:var(--color-cyan);box-shadow:var(--glow-btn-sm)}.hdr-search-sm{display:none}.hdr-tag{display:inline-flex;align-items:center;gap:var(--space-2);flex:none;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background:var(--color-badge-mint);color:var(--color-mint-soft);font-family:var(--font-display);font-size:var(--text-label);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;white-space:nowrap}html[lang=th] .hdr-tag{letter-spacing:var(--tracking-th);text-transform:none}.hdr-tag:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--color-mint);box-shadow:var(--glow-dot);animation:ae-blink var(--motion-blink) infinite}.hdr-end{display:flex;align-items:center;gap:var(--space-3);margin-left:auto;flex:none}.hdr-surprise{flex:none;white-space:nowrap}.lang{display:inline-flex;align-items:center;border:1px solid var(--color-border-control);border-radius:var(--radius-md);overflow:hidden}.lang-link{display:inline-grid;place-items:center;min-width:40px;min-height:40px;padding-inline:var(--space-2);color:var(--color-ink-soft);font-family:var(--font-display);font-size:var(--text-label);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-btn);text-transform:uppercase}.lang-link:hover{background:var(--color-nav-active);color:var(--color-white);text-decoration:none}.lang-link+.lang-link{border-left:1px solid var(--color-rule)}.lang-link[aria-current=true]{background:var(--color-nav-active);color:var(--color-white)}.avatar{display:inline-grid;place-items:center;width:40px;height:40px;flex:none;border:1px solid var(--color-border-control);border-radius:var(--radius-md);background:var(--color-input);color:var(--color-ink)}.avatar:hover{background:var(--color-nav-active);border-color:var(--color-violet-deep);text-decoration:none}.avatar-face{width:22px;height:22px}.drawer-toggle{position:relative;display:block}.drawer-toggle>summary{display:grid;place-items:center;width:var(--tap-min);height:var(--tap-min);border:1px solid var(--color-border-control);border-radius:var(--radius-md);background:var(--color-input);color:var(--color-ink);cursor:pointer;list-style:none}.drawer-toggle>summary::-webkit-details-marker{display:none}.drawer-panel{position:absolute;right:0;top:calc(100% + var(--space-2));z-index:var(--z-overlay);display:grid;gap:var(--space-1);min-width:220px;padding:var(--space-2);border:1px solid var(--color-rule);border-radius:var(--radius-2xl);background:var(--color-panel);backdrop-filter:blur(var(--blur-glass-soft));-webkit-backdrop-filter:blur(var(--blur-glass-soft));box-shadow:var(--glow-frame)}.drawer-link{display:flex;align-items:center;gap:var(--space-3);min-height:var(--tap-min);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-ink-soft);font-size:var(--text-ui)}.drawer-link:hover,.drawer-link[aria-current=page]{background:var(--color-nav-active);color:var(--color-white);text-decoration:none}.layout{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--rail-gap);padding-block:var(--space-6) var(--space-12)}.col,.rail{min-width:0}.railbox{padding:var(--space-4) var(--space-3);border:1px solid var(--color-rule);border-radius:var(--radius-2xl);background:var(--color-panel);backdrop-filter:blur(var(--blur-glass-soft));-webkit-backdrop-filter:blur(var(--blur-glass-soft))}.railhead{margin:0 var(--space-3) var(--space-3);font-family:var(--font-display);font-size:var(--text-label);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--color-ink-dim)}html[lang=th] .railhead{letter-spacing:var(--tracking-th);text-transform:none}.railrows{display:grid;gap:2px;margin:0;padding:0;list-style:none}.railrow{display:flex;align-items:center;gap:var(--space-3);width:100%;min-height:var(--tap-min);padding:11px var(--space-3);border:1px solid transparent;border-radius:var(--radius-md);color:var(--color-ink-soft);font-size:var(--text-ui);transition:background-color var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out)}.railrow:hover{text-decoration:none}.railrow:hover,.railrow[aria-current=page]{background:var(--color-nav-active);color:var(--color-white);border-color:var(--color-violet-deep)}.railrow[aria-current=page]{font-weight:var(--weight-semibold)}.railicon{display:grid;place-items:center;width:26px;height:26px;flex:none;border:1px solid var(--color-border-control);border-radius:var(--radius-sm);background:var(--color-art)}.railicon svg{width:15px;height:15px}.railname{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.railcount{flex:none;font-family:var(--font-display);font-size:var(--text-label);color:var(--color-ink-dim);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.railrow:hover .railcount,.railrow[aria-current=page] .railcount{color:var(--color-ink)}.hero{position:relative;isolation:isolate;overflow:hidden;min-height:392px;display:flex;align-items:center;border:1px solid var(--color-violet-deep);border-radius:var(--radius-3xl);background-color:var(--color-art);box-shadow:var(--glow-frame)}.hero.art:before{content:"";position:absolute;inset:0 0 0 34%;z-index:var(--z-art);background-image:url(/images/hero-emberveil.webp);background-position:100%;background-size:cover}.hero:after{content:"";position:absolute;inset:0;z-index:var(--z-scrim);background-image:var(--scrim-hero);pointer-events:none}.hero-inner{position:relative;z-index:var(--z-on-art);width:100%;padding:var(--space-10) var(--space-8)}.hero-plate{max-width:var(--hero-copy-max)}.hero-badge{display:inline-flex;align-items:center;padding:var(--space-2) var(--space-3);margin-bottom:var(--space-4);border-radius:var(--radius-xs);background:var(--color-badge-magenta);color:var(--color-pink-soft);font-family:var(--font-display);font-size:var(--text-label);font-weight:var(--weight-bold);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase}html[lang=th] .hero-badge{letter-spacing:var(--tracking-th);text-transform:none}.hero-eyebrow{margin:0 0 var(--space-2);font-family:var(--font-display);font-size:var(--text-label);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--color-ink-soft)}html[lang=th] .hero-eyebrow{letter-spacing:var(--tracking-th);text-transform:none}.hero-line1{margin:0 0 var(--space-2);font-size:var(--text-h2);line-height:var(--leading-heading);color:var(--color-ink-soft)}.hero-line1,.hero-line2{display:block;font-family:var(--font-display);font-weight:var(--weight-bold);letter-spacing:var(--tracking-display)}.hero-line2{margin:0 0 var(--space-4);font-size:var(--text-display);line-height:var(--leading-display);color:var(--color-ink);text-shadow:0 0 26px color-mix(in srgb,var(--color-violet-deep),transparent 45%)}html[lang=th] .hero-line1,html[lang=th] .hero-line2{letter-spacing:var(--tracking-th);line-height:var(--leading-display-th)}.hero-tagline{max-width:460px;margin:0 0 var(--space-6);font-size:var(--text-lead);line-height:var(--leading-body);color:var(--color-ink-soft)}html[lang=th] .hero-tagline{line-height:var(--leading-body-th)}.hero-cta{flex-wrap:wrap}.hero-cta,.tilegrid{display:flex;gap:var(--space-3)}.tilegrid{margin:0;padding:var(--space-1) 2px var(--space-3);list-style:none;overflow-x:auto;scrollbar-width:thin;scroll-snap-type:x proximity}.tilegrid>li{flex:none;width:var(--quick-tile);scroll-snap-align:start}.tile{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-decoration:none;color:var(--color-ink-soft);height:100%}.tile-icon{position:relative;display:grid;place-items:center;width:100%;aspect-ratio:1;overflow:hidden;border:1px solid var(--color-rule);border-radius:var(--radius-xl);background:var(--color-art);background-image:var(--scrim-tile);transition:transform var(--motion-mid) var(--ease-out),border-color var(--motion-mid) var(--ease-out),box-shadow var(--motion-mid) var(--ease-out)}.tile-icon img{width:100%;height:100%;object-fit:cover}.tile:hover .tile-icon{transform:translateY(var(--lift-tile));border-color:var(--color-cyan);box-shadow:var(--glow-tile-hover)}.tile:hover{text-decoration:none}.tile.on{color:var(--color-ink)}.tile.on .tile-icon{border-color:var(--color-violet-deep);box-shadow:var(--glow-tile-hover)}.tile-name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:var(--text-label);line-height:1.35;min-height:calc(2em * 1.35);text-align:center;color:var(--color-ink-soft)}.tile:hover .tile-name{color:var(--color-ink)}.tile-count{margin-top:auto;font-family:var(--font-display);font-size:var(--text-label);color:var(--color-ink-dim)}.tile-glyph{display:grid;place-items:center;width:44%;height:44%;color:var(--color-ink-soft)}.tile-glyph svg{width:100%;height:100%}.band{margin-top:var(--space-12)}.sech{display:flex;align-items:flex-end;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-5)}.sech h1,.sech h2{margin:0;flex:1 1 auto;font-size:var(--text-h2)}.sech .btn{flex:none}.sech p{flex-basis:100%;margin:0;color:var(--color-ink-soft)}.count{font-family:var(--font-display);font-size:var(--text-label);color:var(--color-ink-dim);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pagehead{margin-bottom:var(--space-6)}.pagehead h1{margin-bottom:var(--space-2);font-size:var(--text-h1)}.pagehead p{margin:0;color:var(--color-ink-soft)}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-5);margin:0;padding:0;list-style:none}.card{position:relative;display:flex;flex-direction:column;height:100%;overflow:hidden;border:1px solid var(--color-rule);border-radius:var(--radius-2xl);background:var(--color-card);transition:transform var(--motion-slow) var(--ease-out),border-color var(--motion-slow) var(--ease-out),box-shadow var(--motion-slow) var(--ease-out)}.card:hover{transform:translateY(var(--lift-card));border-color:var(--color-violet-deep);box-shadow:var(--glow-card-hover)}.cover{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--color-art)}.cover img{width:100%;height:100%;object-fit:contain;z-index:var(--z-art)}.cover img,.cover:after{position:absolute;inset:0}.cover:after{content:"";z-index:var(--z-scrim);background-image:var(--scrim-card);pointer-events:none}.poster-fallback{position:absolute;inset:0;display:grid;place-items:center;font-size:2.5rem;color:var(--color-ink-dim);background-image:var(--gradient-brand);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.badge,.poster-fallback{font-family:var(--font-display);font-weight:var(--weight-bold)}.badge{position:absolute;top:var(--space-3);left:var(--space-3);z-index:var(--z-on-art);padding:5px var(--space-2);border-radius:var(--radius-xs);background:var(--color-badge-mint);color:var(--color-mint-soft);font-size:var(--text-label);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase}html[lang=th] .badge{letter-spacing:var(--tracking-th);text-transform:none}.badge.fresh{left:auto;right:var(--space-3);background:var(--color-art);color:var(--color-gold);border:1px solid var(--color-gold)}.rank{top:var(--space-3);left:var(--space-3);place-items:center;min-width:28px;height:28px;padding-inline:var(--space-2);border-radius:var(--radius-xs);background:var(--color-nav-active);color:var(--color-white);font-family:var(--font-display);font-size:var(--text-label);font-weight:var(--weight-bold)}.card-play,.rank{position:absolute;z-index:var(--z-on-art);display:grid}.card-play{right:var(--space-3);bottom:var(--space-3);place-items:center;width:var(--tap-min);height:var(--tap-min);border-radius:var(--radius-lg);background-image:var(--gradient-play-btn);color:var(--color-on-neon);pointer-events:none;transition:transform var(--motion-fast) var(--ease-out)}.card:hover .card-play{transform:scale(1.12)}.heart-slot{position:absolute;left:var(--space-3);bottom:var(--space-3);z-index:var(--z-on-art)}.heart{display:grid;place-items:center;width:var(--tap-min);height:var(--tap-min);border:1px solid var(--color-border-control);border-radius:var(--radius-lg);background:var(--color-card);color:var(--color-ink-soft);cursor:pointer;transition:transform var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out),border-color var(--motion-fast) var(--ease-out)}.heart:hover{transform:scale(1.08)}.heart:hover,.heart[aria-pressed=true]{color:var(--color-magenta);border-color:var(--color-magenta)}.heart:active{transform:scale(1)}.card>h3{margin:var(--space-4) var(--space-4) var(--space-1);font-size:var(--text-h3);line-height:var(--leading-heading);min-height:calc(2em * var(--leading-heading))}html[lang=th] .card>h3{min-height:calc(2em * var(--leading-display-th))}.title-link{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--color-ink)}.title-link:after{content:"";position:absolute;inset:0;z-index:var(--z-scrim)}.title-link:hover{color:var(--color-cyan);text-decoration:none}.card-meta{margin:auto var(--space-4) var(--space-4);margin-top:auto;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;min-height:calc(1em * var(--leading-body));font-family:var(--font-display);font-size:var(--text-label);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--color-ink-dim)}html[lang=th] .card-meta{letter-spacing:var(--tracking-th);text-transform:none}.when{margin:0 var(--space-4) var(--space-2);font-size:var(--text-label);color:var(--color-ink-dim)}.play-body{min-height:100vh}.play-main{display:grid;gap:var(--space-6);padding-block:var(--space-6) var(--space-12)}.play-col,.play-side{min-width:0}.play-side{display:grid;gap:var(--space-5);align-content:start}.gamehead{position:relative;isolation:isolate;overflow:hidden;min-height:320px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:var(--space-3);padding:var(--space-8);margin-bottom:var(--space-6);border:1px solid var(--color-violet-deep);border-radius:var(--radius-3xl);background-color:var(--color-art);box-shadow:var(--glow-frame)}.gamehead-art{position:absolute;inset:0 0 0 46%;z-index:var(--z-art);display:grid;place-items:center;padding:var(--space-5)}.gamehead-art img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:var(--radius-2xl)}.gamehead:after{content:"";position:absolute;inset:0;z-index:var(--z-scrim);background-image:var(--scrim-hero);pointer-events:none}.gamehead>*{position:relative;z-index:var(--z-on-art)}.game-title{margin:0 0 var(--space-3);max-width:var(--hero-copy-max);font-size:var(--text-h1);line-height:var(--leading-display)}html[lang=th] .game-title{line-height:var(--leading-display-th)}.game-lede{max-width:var(--hero-copy-max);margin:0 0 var(--space-5);font-size:var(--text-lead)}.game-lede,.game-tag{color:var(--color-ink-soft)}.game-tag{display:inline-flex;align-items:center;gap:var(--space-2);padding:6px var(--space-3);border:1px solid var(--color-border-control);border-radius:var(--radius-sm);background:var(--color-card);font-size:var(--text-label)}.hdr-back{flex:none}.hdr-back small{font-size:var(--text-label);color:var(--color-ink-dim)}.sidecard{padding:var(--space-5);border:1px solid var(--color-rule);border-radius:var(--radius-2xl);background:var(--color-card)}.sidecard h2{margin:0 0 var(--space-4);font-size:1.0625rem}.spec{display:grid;gap:0;margin:0}.spec>div{display:flex;justify-content:space-between;gap:var(--space-3);padding-block:var(--space-3);border-bottom:1px solid var(--color-rule);font-size:var(--text-ui)}.spec>div:last-child{border-bottom:0}.spec dt{color:var(--color-ink-dim)}.spec dd{margin:0;color:var(--color-ink);text-align:right}.siderows{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none}.siderow{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2);border:1px solid transparent;border-radius:var(--radius-md);color:var(--color-ink-soft);font-size:var(--text-ui)}.siderow:hover{background:var(--color-nav-active);border-color:var(--color-violet-deep);color:var(--color-white);text-decoration:none}.siderow-dot{display:grid;place-items:center;width:40px;height:40px;flex:none;overflow:hidden;border-radius:var(--radius-sm);background:var(--color-art)}.siderow-dot img{width:100%;height:100%;object-fit:cover}.siderow b{font-weight:var(--weight-semibold)}.shell{display:grid;gap:var(--space-4)}.shell-bar{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.shell-name{flex:1 1 auto;min-width:0;margin:0;font-family:var(--font-display);font-size:1.25rem;font-weight:var(--weight-bold);color:var(--color-ink)}.shell-bar .btn,.shell-bar .heart{flex:none}.shell-stage{position:relative;aspect-ratio:16/9;overflow:hidden;border:1px solid var(--color-violet-deep);border-radius:var(--radius-2xl);background:var(--color-art);box-shadow:var(--glow-frame)}.stage-slot{position:absolute;inset:0}.stage-slot>.front,.stage-slot>iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.stage-slot>.front{display:grid;place-items:center;gap:var(--space-4);padding:var(--space-6);text-align:center;z-index:var(--z-on-art);background:var(--color-art)}.shell-stage .poster,.shell-stage .poster-card{max-width:160px;border-radius:var(--radius-md)}.muted-on-dark{color:var(--color-ink-soft)}.play-escape{position:absolute;right:var(--space-4);bottom:var(--space-4);z-index:var(--z-on-art);display:flex;gap:var(--space-2)}.play-hint{margin:0;font-size:var(--text-ui);color:var(--color-ink-soft)}.play-hint-ghost{visibility:hidden}.ae-anim-spin{width:34px;height:34px;border:3px solid var(--color-rule);border-top-color:var(--color-cyan);border-radius:50%;animation:ae-spin var(--motion-spin) linear infinite}.ae-anim-bar{position:relative;width:180px;height:4px;overflow:hidden;background:var(--color-rule)}.ae-anim-bar,.ae-anim-bar:after{border-radius:var(--radius-pill)}.ae-anim-bar:after{content:"";position:absolute;inset:0;width:30%;background-image:var(--gradient-cta);animation:ae-bar var(--motion-bar) var(--ease-out) infinite}.crumb{margin-bottom:var(--space-5)}.crumb ol{flex-wrap:wrap;margin:0;padding:0;list-style:none;font-size:var(--text-label)}.crumb li,.crumb ol{display:flex;gap:var(--space-2)}.crumb li{align-items:center}.crumb [aria-current=page],.crumb a{color:var(--color-ink-dim)}.crumb a:hover{color:var(--color-cyan)}.crumb [aria-current=page]{color:var(--color-ink)}.filterbar{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-6)}.filterbar .field{display:grid;gap:var(--space-1);font-size:var(--text-label);color:var(--color-ink-dim)}.filterbar input,.filterbar select{min-height:var(--tap-min);padding:0 var(--space-3);border:1px solid var(--color-border-control);border-radius:var(--radius-md);background:var(--color-input);color:var(--color-ink);font-size:var(--text-ui)}.pills{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-6)}.catgrid{grid-template-columns:repeat(auto-fill,minmax(var(--card-min-related),1fr))}.cathero{padding:var(--space-6);margin-bottom:var(--space-6);border:1px solid var(--color-rule);border-radius:var(--radius-2xl);background:var(--color-card)}.cathero h1{margin-bottom:var(--space-2);font-size:var(--text-h1)}.cathero p{margin:0;color:var(--color-ink-soft)}.setgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--space-5);margin:0;padding:0;list-style:none}.setcard{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-5);border:1px solid var(--color-rule);border-radius:var(--radius-2xl);background:var(--color-card)}.setcard h2{margin:0;font-size:var(--text-h3)}.criteria,.criteria-line{margin:0;font-size:var(--text-label);color:var(--color-ink-dim)}.stack3{display:grid;place-items:center;width:44px;height:44px;border-radius:var(--radius-sm);background:var(--color-art);color:var(--color-cyan)}.toprows{display:grid;gap:var(--space-4);margin:0;padding:0;list-style:none}.toprows>li{display:flex;align-items:center;gap:var(--space-4)}.rank-num{flex:none;width:34px;font-family:var(--font-display);font-size:var(--text-h3);font-weight:var(--weight-bold);color:var(--color-ink-dim);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.toprows .card{flex:1 1 auto}.catlinks{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:var(--space-6) 0 0;padding:0;list-style:none;font-size:var(--text-label)}.catlinks a,.catlinks strong{display:inline-flex;align-items:center;min-height:32px;padding:0 var(--space-3);border:1px solid var(--color-border-control);border-radius:var(--radius-sm);color:var(--color-ink-soft);font-weight:var(--weight-medium)}.catlinks strong{border-color:transparent;color:var(--color-ink-dim)}.catlinks a:hover{background:var(--color-nav-active);border-color:var(--color-violet-deep);color:var(--color-white);text-decoration:none}.doc{max-width:72ch}.doc>h1{font-size:var(--text-h1)}.doc .when{margin:0 0 var(--space-6);padding:0;color:var(--color-ink-dim)}.doc .prose>h1:first-child,.doc .prose>h2:first-child{margin-top:0}.prose{color:var(--color-ink-soft)}.prose h2{margin-top:var(--space-8);font-size:var(--text-h2)}.prose h3{margin-top:var(--space-6);font-size:var(--text-h3)}.prose ol,.prose ul{padding-left:var(--space-6)}.prose li{margin-bottom:var(--space-2)}.prose a{text-decoration:underline}.site-footer{margin-top:var(--space-16);padding-block:var(--space-12) var(--space-8);background:var(--color-footer);border-top:1px solid var(--color-rule)}.ft-row{display:flex;flex-wrap:wrap;gap:var(--space-10);align-items:flex-start}.ft-nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-8);flex:1 1 320px}.ft-col h2{margin:0 0 var(--space-3);font-size:var(--text-label);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--color-ink)}html[lang=th] .ft-col h2{letter-spacing:var(--tracking-th);text-transform:none}.ft-links{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none}.ft-links a{display:inline-flex;align-items:center;min-height:28px;color:var(--color-cyan);font-size:var(--text-ui)}.ft-links a:hover{color:var(--color-violet)}.ft-extra{display:grid;gap:var(--space-3);margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--color-rule)}.ft-extra p{margin:0;max-width:78ch}.ft-extra p,.ft-top{font-size:var(--text-ui);color:var(--color-ink-soft)}.ft-top{justify-self:start;display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--tap-min);padding-inline:var(--space-4);border:1px solid var(--color-border-control);border-radius:var(--radius-md);background:transparent;cursor:pointer}.ft-top:hover{background:var(--color-nav-active);border-color:var(--color-violet-deep);color:var(--color-white)}.ft-top:focus-visible{box-shadow:var(--ring-focus)}.grid+.ft-top{margin-top:var(--space-8)}.ft-base{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-5);margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--color-rule);font-size:var(--text-label)}.ft-base p{margin:0;color:var(--color-ink-dim)}.ft-base a{color:var(--color-ink-soft)}.ft-base a:hover{color:var(--color-cyan)}.site-footer.slim{margin-top:var(--space-10);padding-block:var(--space-6)}.site-footer.slim .ft-base{margin-top:0;padding-top:0;border-top:0}.ft-h{font-size:var(--text-h3)}.to-top{display:inline-flex;align-items:center;gap:var(--space-2)}.notice{display:flex;align-items:center;margin-bottom:var(--space-6);padding:var(--space-3) var(--space-4);border:1px solid var(--color-gold);border-radius:var(--radius-md);color:var(--color-ink);font-size:var(--text-ui)}.empty,.notice{gap:var(--space-3);background:var(--color-card)}.empty{display:grid;justify-items:center;padding:var(--space-12) var(--space-6);border:1px solid var(--color-rule);border-radius:var(--radius-2xl);text-align:center}.empty .glyph{font-size:2.5rem;line-height:1}.empty h1,.empty h2{margin:0;font-size:var(--text-h2)}.empty p{margin:0;color:var(--color-ink-soft)}.rescue{display:grid;justify-items:center;gap:var(--space-4);padding-block:var(--space-16);text-align:center}.exits{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-3)}.skeleton{border-radius:var(--radius-md);background:var(--color-card);animation:ae-pulse 1.6s var(--ease-out) infinite}.ae-anim-blink{animation:ae-blink var(--motion-blink) infinite}@media (max-width:767px){.hdr{flex-wrap:wrap;gap:var(--space-2) var(--space-3)}.hdr-end{flex:1 1 100%;justify-content:flex-end;flex-wrap:wrap;min-width:0;gap:var(--space-2)}.plate-top{font-size:1rem}.hdr-surprise{font-size:var(--text-label);padding-inline:var(--space-4)}.hdr-search{display:none}.hdr-search-sm{display:inline-grid}.hdr-wrap:not(.play) .hdr-tag{display:none}.hero{min-height:320px}.hero-inner{padding:var(--space-6) var(--space-5)}.hero:after{background-image:linear-gradient(180deg,color-mix(in srgb,var(--color-page),transparent 5%) 0,color-mix(in srgb,var(--color-page),transparent 8%) 70%,color-mix(in srgb,var(--color-page),transparent 55%) 100%)}.game-lede,.game-title,.hero-plate{max-width:100%}.gamehead{min-height:240px;padding:var(--space-5)}.gamehead:after{background-image:linear-gradient(180deg,color-mix(in srgb,var(--color-page),transparent 5%) 0,color-mix(in srgb,var(--color-page),transparent 8%) 70%,color-mix(in srgb,var(--color-page),transparent 55%) 100%)}}@media (min-width:768px) and (max-width:1023px){.hdr-wrap:not(.play) .hdr-tag{display:none}}@media (min-width:640px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:768px){.play-main{grid-template-columns:minmax(0,1fr) 280px}}@media (min-width:1024px){.layout{grid-template-columns:var(--rail-width) minmax(0,1fr)}.railbox{position:sticky;top:var(--sticky-top);max-height:calc(100vh - var(--sticky-top) - var(--space-6));overflow-y:auto}.grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:1023px){.railbox{padding:var(--space-3)}.railrows{display:flex;gap:var(--space-2);overflow-x:auto;scrollbar-width:thin;padding-bottom:var(--space-1)}.railrows>li{flex:none}.railrow{white-space:nowrap;border-color:var(--color-rule)}}@media (min-width:1280px){.grid{grid-template-columns:repeat(5,minmax(0,1fr))}}