@layer reset,tokens,base,layout,components,motion,page,game,scripts;@property --scroll{syntax:"<number>";inherits:false;initial-value:0}@layer tokens{:root{color-scheme:dark;--bg-deep:#07080b;--base:#0e1014;--raised:#171a21;--raised-high:#1f232c;--sunken:#0a0b0e;--surface-1:rgb(255 255 255 / .035);--surface-2:rgb(255 255 255 / .06);--surface-3:rgb(255 255 255 / .09);--hairline:rgb(255 255 255 / .1);--hairline-strong:rgb(255 255 255 / .2);--ink:#f2f4f8;--ink-2:#a3acba;--ink-3:#4a5160;--danger:#ff6b5b;--c-collapse:#f5c518;--c-poker:#ff4d7e;--c-fleet:#35c8f0;--c-backgammon:#e2703a;--c-chess:#3ddc97;--accent:var(--ink);--on-accent:var(--base);--focus:var(--accent);--contact:radial-gradient(closest-side,rgb(0 0 0 / .72),rgb(0 0 0 / .28) 55%,transparent);--vignette:radial-gradient(120% 90% at 50% 40%,transparent 45%,rgb(3 4 6 / .85) 100%);--grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .5 0 0 0 0 .5 0 0 0 0 .5 0 0 0 1.4 -.2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");--grain-opacity:.05;--shadow-1:0 1px 1px rgb(2 3 6 / .4),0 6px 12px -4px rgb(2 3 6 / .45),0 18px 36px -14px rgb(2 3 6 / .6);--shadow-2:0 2px 2px rgb(2 3 6 / .4),0 12px 24px -8px rgb(2 3 6 / .5),0 36px 72px -24px rgb(2 3 6 / .7);--shadow-3:0 4px 6px rgb(2 3 6 / .35),0 24px 48px -12px rgb(2 3 6 / .55),0 64px 128px -32px rgb(2 3 6 / .8);--shadow-inset:inset 0 1px 0 rgb(255 255 255 / .06),inset 0 -1px 0 rgb(0 0 0 / .35);--font-latin:"Manrope","Manrope Fallback",system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font:var(--font-latin);--font-system:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-ar:"Manrope","Manrope Fallback","Segoe UI",Tahoma,"Noto Sans Arabic","Geeza Pro",system-ui,sans-serif;--font-hi:"Manrope","Manrope Fallback","Nirmala UI","Noto Sans Devanagari","Kohinoor Devanagari","Devanagari Sangam MN",system-ui,sans-serif;--font-th:"Manrope","Manrope Fallback","Leelawadee UI","Noto Sans Thai","Thonburi",system-ui,sans-serif;--font-ja:"Manrope","Manrope Fallback","Yu Gothic","Hiragino Sans","Noto Sans JP","Noto Sans CJK JP",Meiryo,system-ui,sans-serif;--font-ko:"Manrope","Manrope Fallback","Malgun Gothic","Apple SD Gothic Neo","Noto Sans KR","Noto Sans CJK KR",system-ui,sans-serif;--font-zh-hans:"Manrope","Manrope Fallback","Microsoft YaHei","PingFang SC","Noto Sans SC","Noto Sans CJK SC",system-ui,sans-serif;--font-zh-hant:"Manrope","Manrope Fallback","Microsoft JhengHei","PingFang TC","Noto Sans TC","Noto Sans CJK TC",system-ui,sans-serif;--fs-2xs:.75rem;--fs-xs:.8125rem;--fs-s:.9375rem;--fs-m:1.0625rem;--fs-l:clamp(1.125rem,1.05rem + .35vw,1.3125rem);--fs-xl:calc(clamp(1.375rem,1.15rem + .9vw,1.875rem) * var(--head-scale,1));--fs-2xl:calc(clamp(1.875rem,1.2rem + 2.7vw,3.5rem) * var(--head-scale,1));--fs-3xl:calc(clamp(2.5rem,1.35rem + 4.6vw,5rem) * var(--display-scale,1));--fs-display:calc(clamp(2.875rem,.9rem + 7.9vw,7rem) * var(--display-scale,1));--fw-body:500;--fw-ui:650;--fw-strong:750;--fw-head:800;--track-display:-.04em;--track-head:-.03em;--track-ui:-.005em;--measure:62ch;--measure-narrow:46ch;--lh-body:1.6;--lh-lede:1.5;--lh-head:1.06;--lh-display:.98;--lh-snug:1.45;--lh-tight:1.2;--dir:1;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:64px;--s-9:96px;--s-10:128px;--s-11:176px;--gutter:clamp(16px,4.2vw,56px);--section-y:clamp(72px,10vw,160px);--r-xs:4px;--r-s:8px;--r-m:12px;--r-l:20px;--r-xl:28px;--r-2xl:40px;--r-pill:999px;--z-below:-1;--z-base:0;--z-raised:1;--z-sticky:20;--z-header:40;--z-menu:50;--z-overlay:60;--z-skip:100;--ease-out:cubic-bezier(.23,1,.32,1);--ease-expo:cubic-bezier(.16,1,.3,1);--ease-in-out:cubic-bezier(.77,0,.175,1);--ease-shift:cubic-bezier(.645,.045,.355,1);--ease-spring:linear(0,.013 .6%,.05 1.2%,.2 2.6%,.48 4.6%,.8 7.1%,1.03 9.6%,1.12 11.6%,1.15 13.4%,1.12 15.6%,1.04 19.3%,.99 23%,.97 27.4%,.99 34%,1.005 42%,1);--dur-tap:120ms;--dur-hover:200ms;--dur-ui:320ms;--dur-reveal:700ms;--dur-stage:900ms;--dur-spring:800ms;--stagger:70ms;--dur-fast:var(--dur-hover);--dur-move:280ms;--dur-shift:600ms;--dur-scene:var(--dur-stage);--container:1240px;--container-wide:1440px;--container-narrow:760px;--header-h:78px}@media (max-width:47.99em){:root{--header-h:114px}}:root[dir="rtl"]{--dir:-1}:root,[style*="--accent"],[data-accent]{--pool:radial-gradient(closest-side,color-mix(in srgb,var(--accent) 55%,transparent),transparent);--pool-soft:radial-gradient(closest-side,color-mix(in srgb,var(--accent) 28%,transparent),transparent)}}@font-face{font-family:"Manrope";src:url("../fonts/Manrope-latin.e0bc3ad9.woff2") format("woff2");font-weight:200 800;font-style:normal;font-display:swap;unicode-range:U+000D,U+0020-007E,U+00A0-00FF,U+0131,U+0152-0153,U+02C6,U+02DA,U+02DC,U+2011,U+2013-2014,U+2018-201A,U+201C-2022,U+2026,U+2030,U+2039-203A,U+2044,U+2060,U+20AC,U+2122,U+2190-2193,U+2212,U+2215}@font-face{font-family:"Manrope";src:url("../fonts/Manrope-latin-ext.08d23193.woff2") format("woff2");font-weight:200 800;font-style:normal;font-display:swap;unicode-range:U+0100-0101,U+0104-010F,U+0112-0113,U+0116-0127,U+012A-012B,U+012E-0130,U+0134-0137,U+0139-013E,U+0141-0148,U+014A-014D,U+0150-0151,U+0154-0167,U+016A-017E,U+0192,U+0218-021B,U+02C7,U+02D8-02D9,U+02DB,U+02DD,U+1E80-1E85,U+1E9E,U+20A3,U+20A9-20AA,U+20AE,U+20B1,U+20B4,U+20B9-20BA,U+20BD,U+20BF}@font-face{font-family:"Manrope";src:url("../fonts/Manrope-cyrillic.8e5b1330.woff2") format("woff2");font-weight:200 800;font-style:normal;font-display:swap;unicode-range:U+0400-045F,U+0490-0491,U+04AE-04AF,U+04BA-04BB,U+04E8-04E9,U+2116}@font-face{font-family:"Manrope";src:url("../fonts/Manrope-vietnamese.043103a5.woff2") format("woff2");font-weight:200 800;font-style:normal;font-display:swap;unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Manrope Fallback";src:local("Arial"),local("Liberation Sans"),local("Helvetica");size-adjust:99.7%;ascent-override:106.9%;descent-override:30.1%;line-gap-override:0%;unicode-range:U+000D,U+0020-007E,U+00A0-0113,U+0116-012B,U+012E-0131,U+0134-0137,U+0139-013E,U+0141-0148,U+014A-014D,U+0150-017E,U+0192,U+01A0-01A1,U+01AF-01B0,U+0218-021B,U+02C6-02C7,U+02D8-02DD,U+0400-045F,U+0490-0491,U+04AE-04AF,U+04BA-04BB,U+04E8-04E9,U+1E80-1E85,U+1E9E,U+1EA0-1EF9,U+2011,U+2013-2014,U+2018-201A,U+201C-2022,U+2026,U+2030,U+2039-203A,U+2044,U+2060,U+20A3,U+20A9-20AC,U+20AE,U+20B1,U+20B4,U+20B9-20BA,U+20BD,U+20BF,U+2116,U+2122,U+2190-2193,U+2212,U+2215}@layer reset{*,*::before,*::after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;tab-size:4}img,picture,svg,video{display:block;max-width:100%}img{height:auto}button,input,select,textarea{font:inherit;color:inherit;letter-spacing:inherit}button{cursor:pointer}ul[role="list"],ol[role="list"]{list-style:none;padding:0}table{border-collapse:collapse}[hidden]{display:none !important}}@layer base{html{background:var(--bg-deep);scroll-padding-block-start:calc(var(--header-h) + var(--s-4));hanging-punctuation:first last}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:var(--bg-deep);color:var(--ink);font-family:var(--font);font-size:var(--fs-m);font-weight:var(--fw-body);line-height:var(--lh-body);overflow-wrap:break-word;font-synthesis:none;font-optical-sizing:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;caret-color:var(--accent);accent-color:var(--accent);scrollbar-color:#2b303b transparent;overflow-x:clip;-webkit-tap-highlight-color:transparent}main{flex:1 0 auto}main:focus{outline:none}h1,h2,h3,h4{font-weight:var(--fw-head);line-height:var(--lh-head);letter-spacing:var(--track-head);text-wrap:balance;overflow-wrap:break-word}h1{font-size:var(--fs-3xl);letter-spacing:var(--track-display)}h2{font-size:var(--fs-2xl)}h3{font-size:var(--fs-xl);line-height:var(--lh-tight);letter-spacing:-.02em}h4{font-size:var(--fs-l);line-height:var(--lh-tight);letter-spacing:-.01em}p,li,dd,figcaption{text-wrap:pretty}p{max-width:var(--measure)}strong,b{font-weight:var(--fw-head)}small{font-size:var(--fs-xs)}a{color:inherit;text-decoration-color:var(--hairline-strong);text-decoration-thickness:1px;text-underline-offset:.24em}p a,dd a,td a,li>a:only-child:not([class]){text-decoration-line:underline}@media (hover:hover) and (pointer:fine){p a:hover,dd a:hover,td a:hover{color:var(--accent);text-decoration-color:currentColor}}:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:var(--r-s)}::selection{background:color-mix(in srgb,var(--accent) 42%,transparent);color:var(--ink)}table,time,.t-num{font-variant-numeric:tabular-nums}.visually-hidden{position:absolute !important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:fixed;inset-inline-start:var(--s-4);inset-block-start:var(--s-3);z-index:var(--z-skip);padding:var(--s-3) var(--s-5);border-radius:var(--r-m);background:var(--ink);color:var(--base);font-weight:var(--fw-head);text-decoration:none;translate:0 -200%}.skip-link:focus{translate:0 0;outline-color:var(--ink)}.icon{flex:none;width:var(--icon,20px);height:var(--icon,20px);fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.icon--back,[dir="rtl"] .icon--flip{transform:scaleX(-1)}[dir="rtl"] .icon--flip.icon--back{transform:none}}@layer layout{.container{position:relative;z-index:var(--z-raised);width:min(100% - 2 * var(--gutter),var(--container));margin-inline:auto}.container--wide{width:min(100% - 2 * var(--gutter),var(--container-wide))}.container--narrow{width:min(100% - 2 * var(--gutter),var(--container-narrow))}.bleed{width:100%;overflow-x:clip}.section{position:relative;isolation:isolate;padding-block:calc(var(--section-y) * .62)}.section--tight{padding-block:calc(var(--section-y) * .4)}.section--loose{padding-block:var(--section-y)}.section__head{display:grid;gap:var(--s-4);margin-block-end:clamp(var(--s-6),4vw,var(--s-8));justify-items:start}.section__head>h2{max-width:18ch}.section__head--row{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:var(--s-4) var(--s-6)}.section__head--row>h2{max-width:none}.cv{content-visibility:auto;contain-intrinsic-size:auto 900px}.t-display{font-size:var(--fs-display);font-weight:var(--fw-head);line-height:var(--lh-display);letter-spacing:var(--track-display);text-wrap:balance}.t-1{font-size:var(--fs-3xl);line-height:calc(var(--lh-display) + .04);letter-spacing:var(--track-display)}.t-2{font-size:var(--fs-2xl)}.t-3{font-size:var(--fs-xl)}.lede,.t-lede{font-size:var(--fs-l);line-height:var(--lh-lede);color:var(--ink-2);max-width:52ch}.t-small{font-size:var(--fs-s);line-height:var(--lh-snug)}.t-meta{font-size:var(--fs-xs);font-weight:var(--fw-ui);line-height:var(--lh-snug);color:var(--ink-2)}.t-muted{color:var(--ink-2)}.t-accent{color:var(--accent)}.subhead{font-size:var(--fs-l);font-weight:var(--fw-head);margin-block:var(--s-8) var(--s-4);letter-spacing:-.01em}.stack{display:grid;gap:var(--gap,var(--s-4));align-content:start;justify-items:start}.cluster{display:flex;flex-wrap:wrap;gap:var(--gap,var(--s-3));align-items:center}ul.cluster,ol.cluster{list-style:none;padding:0}.split{display:grid;gap:var(--s-7)}@media (min-width:56.25em){.split{grid-template-columns:minmax(0,var(--split-a,5fr)) minmax(0,var(--split-b,7fr));gap:var(--s-9);align-items:var(--split-align,start)}}.card-grid{display:grid;gap:var(--s-5);grid-template-columns:minmax(0,1fr);list-style:none;padding:0}.card-grid>li{display:flex;min-width:0}.card-grid>li>*{flex:1}@media (min-width:40em){.card-grid--games{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:68.75em){.card-grid--games{grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--s-6)}.card-grid--games>li{grid-column:span 2}.card-grid--games>li:nth-child(4):nth-last-child(2),.card-grid--games>li:nth-child(5):nth-last-child(1){grid-column:span 3}}.card-grid--compact{grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr))}@media (prefers-reduced-motion:no-preference){.js .reveal:not(.is-in){opacity:0;transform:translateY(18px)}.js .reveal{transition:opacity var(--dur-reveal) var(--ease-out),transform var(--dur-reveal) var(--ease-out);transition-delay:calc(var(--i,0) * var(--stagger))}}}@layer components{.site-header{position:sticky;inset-block-start:0;z-index:var(--z-header);padding-block:var(--s-2);pointer-events:none}body[data-header="overlay"] .site-header{position:fixed;inset-inline:0}.site-header__inner{display:flex;flex-wrap:wrap;align-items:center;gap:0 var(--s-2);padding-block:var(--s-1);padding-inline:var(--s-3) var(--s-2);border:1px solid transparent;border-radius:var(--r-l);pointer-events:auto}.is-scrolled .site-header__inner,body:not([data-header="overlay"]) .site-header__inner{border-color:var(--hairline);background:color-mix(in srgb,var(--base) 88%,transparent)}.is-scrolled .site-header__inner{box-shadow:var(--shadow-2)}html[data-header-hidden] .site-header{translate:0 calc(-100% - var(--s-2))}@media (prefers-reduced-motion:no-preference){.site-header{transition:translate var(--dur-ui) var(--ease-out)}.site-header__inner{transition:background-color var(--dur-ui) ease,border-color var(--dur-ui) ease,box-shadow var(--dur-ui) ease}}.brand{order:1;margin-inline-end:auto;display:inline-flex;align-items:center;gap:var(--s-3);min-height:44px;padding-inline-end:var(--s-2);font-size:1.0625rem;font-weight:var(--fw-head);letter-spacing:-.02em;text-decoration:none;white-space:nowrap}.brand__mark{flex:none}.brand__mark rect{transform-box:fill-box;transform-origin:center}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.brand__mark rect{transition:translate var(--dur-ui) var(--ease-spring)}.brand:hover .brand__mark rect:nth-child(odd){translate:calc(var(--dir) * 2.5px) 0}.brand:hover .brand__mark rect:nth-child(even){translate:calc(var(--dir) * -2.5px) 0}}.lang-switch{order:2;display:flex}.site-nav{order:3;flex-basis:100%}.site-nav ul{display:flex;gap:var(--s-1);margin-inline-start:calc(var(--s-3) * -1)}@media (min-width:48em){.site-header{padding-block:var(--s-3)}.site-nav{order:2;flex-basis:auto}.site-nav ul{margin-inline-start:0}.lang-switch{order:3;padding-inline-start:var(--s-2);margin-inline-start:var(--s-2);border-inline-start:1px solid var(--hairline)}}.site-nav a{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--s-1);min-height:44px;min-width:44px;padding-inline:var(--s-3);border-radius:var(--r-m);color:var(--ink-2);font-size:var(--fs-s);font-weight:var(--fw-ui);text-decoration:none}.site-nav a[aria-current="page"],.site-nav a.is-section{color:var(--ink)}.site-nav a[aria-current="page"]::after,.site-nav a.is-section::after{content:"";position:absolute;inset-inline:var(--s-3);inset-block-end:6px;height:2px;border-radius:1px;background:var(--accent)}.icon--external{--icon:14px;opacity:.7}@media (hover:hover) and (pointer:fine){.site-nav a:hover{color:var(--ink);background:var(--surface-2)}}@media (prefers-reduced-motion:no-preference){.site-nav a{transition:color var(--dur-hover) ease,background-color var(--dur-hover) ease}}.breadcrumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:0 var(--s-2);list-style:none;padding:0;font-size:var(--fs-s);font-weight:var(--fw-ui);color:var(--ink-2)}.breadcrumbs li + li::before{content:"/";content:"/" / "";margin-inline-end:var(--s-2);color:var(--ink-3)}.breadcrumbs a,.breadcrumbs [aria-current]{display:inline-flex;align-items:center;min-height:44px}.breadcrumbs a{min-width:44px;text-decoration:none}.breadcrumbs [aria-current]{color:var(--ink)}@media (hover:hover) and (pointer:fine){.breadcrumbs a:hover{color:var(--ink);text-decoration:underline}}.btn{--btn-bg:transparent;--btn-fg:var(--ink);--btn-border:transparent;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);min-height:48px;padding:var(--s-2) var(--s-5);border:1px solid var(--btn-border);border-radius:var(--r-m);background:var(--btn-bg);color:var(--btn-fg);font-size:var(--fs-m);font-weight:var(--fw-strong);line-height:var(--lh-tight);letter-spacing:var(--track-ui);text-decoration:none;text-align:center;touch-action:manipulation}.btn--primary{--btn-bg:var(--accent);--btn-fg:var(--on-accent);box-shadow:var(--shadow-inset),var(--shadow-1)}.btn--ghost{--btn-bg:var(--surface-1);--btn-border:var(--hairline-strong)}.btn--accent{--btn-bg:color-mix(in srgb,var(--accent) 14%,var(--raised));--btn-border:color-mix(in srgb,var(--accent) 45%,transparent)}.btn--small{min-height:44px;padding:var(--s-2) var(--s-4);font-size:var(--fs-s)}.btn--large{min-height:56px;padding-inline:var(--s-6);font-size:var(--fs-l);border-radius:var(--r-l)}.btn__meta{font-size:var(--fs-xs);font-weight:var(--fw-ui);padding-inline-start:var(--s-2);margin-inline-start:var(--s-1);border-inline-start:1px solid color-mix(in srgb,currentColor 40%,transparent);font-variant-numeric:tabular-nums}.btn .icon--arrow{--icon:18px}@media (hover:hover) and (pointer:fine){.btn--primary:hover{--btn-bg:color-mix(in srgb,var(--accent) 86%,white)}.btn--ghost:hover{--btn-bg:var(--surface-3);--btn-border:color-mix(in srgb,var(--ink) 40%,transparent)}.btn--accent:hover{--btn-bg:color-mix(in srgb,var(--accent) 24%,var(--raised))}.btn:hover .icon--arrow{translate:calc(var(--dir) * 3px) 0}}@media (prefers-reduced-motion:no-preference){.btn{transition:scale var(--dur-tap) var(--ease-out),translate var(--dur-ui) var(--ease-out),background-color var(--dur-hover) ease,border-color var(--dur-hover) ease}.btn .icon--arrow{transition:translate var(--dur-hover) var(--ease-out)}.btn:active,.icon-btn:active{scale:.97}[data-magnetic].is-magnet{transition-duration:var(--dur-tap),90ms,var(--dur-hover),var(--dur-hover)}}.icon-btn{display:inline-grid;place-items:center;width:44px;height:44px;border:1px solid var(--hairline-strong);border-radius:50%;background:var(--surface-1);color:var(--ink)}@media (hover:hover) and (pointer:fine){.icon-btn:hover{background:var(--surface-3)}}@media (prefers-reduced-motion:no-preference){.icon-btn{transition:scale var(--dur-tap) var(--ease-out),background-color var(--dur-hover) ease}}.link-quiet{display:inline-flex;align-items:center;min-height:44px;color:var(--ink-2);font-size:var(--fs-s);font-weight:var(--fw-ui)}.link-arrow{display:inline-flex;align-items:center;gap:var(--s-2);min-height:44px;font-weight:var(--fw-strong);text-decoration:none}@media (hover:hover) and (pointer:fine){.link-quiet:hover{color:var(--ink)}.link-arrow:hover{color:var(--accent)}.link-arrow:hover .icon--arrow{translate:calc(var(--dir) * 3px) 0}}.accent-bar{display:block;width:48px;height:4px;border-radius:2px;background:var(--accent);transform-origin:left center}.bars{display:flex;flex-wrap:wrap;gap:var(--s-2)}.bars span{display:block;width:48px;height:4px;border-radius:2px;background:var(--accent);transform-origin:left center}[dir="rtl"] .accent-bar,[dir="rtl"] .bars span{transform-origin:right center}.chips{display:flex;flex-wrap:wrap;gap:var(--s-2);list-style:none;padding:0}.chips>li,.chip{display:inline-flex;align-items:center;gap:var(--s-2);min-height:36px;padding:var(--s-1) var(--s-4);border:1px solid var(--hairline-strong);border-radius:var(--r-pill);background:var(--surface-1);font-size:var(--fs-s);font-weight:var(--fw-ui);line-height:var(--lh-tight)}.chip--accent{border-color:color-mix(in srgb,var(--accent) 50%,transparent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.chip__dot{width:8px;height:8px;border-radius:50%;background:var(--accent)}.stores{display:flex;flex-wrap:wrap;gap:var(--s-3);list-style:none;padding:0}.store-badge{display:inline-flex;flex-direction:column;justify-content:center;min-width:10.5rem;min-height:56px;padding:var(--s-2) var(--s-5);border:1px solid var(--hairline-strong);border-radius:var(--r-m);background:var(--raised);text-decoration:none;line-height:var(--lh-tight);box-shadow:var(--shadow-inset)}.store-badge.is-soon{border-style:dashed;background:var(--surface-1);box-shadow:none}.store-badge__small{font-size:var(--fs-xs);font-weight:var(--fw-ui);color:var(--ink-2)}.store-badge__name{font-size:1.125rem;font-weight:var(--fw-head);letter-spacing:-.015em}.pool,.contact-shadow{position:absolute;z-index:var(--z-below);pointer-events:none;border-radius:50%}.pool{inset-block-end:var(--pool-y,4%);inset-inline-start:50%;width:var(--pool-w,90%);aspect-ratio:var(--pool-ratio,2.4);translate:calc(var(--dir) * -50%) 0;background:radial-gradient(closest-side,color-mix(in srgb,var(--accent) var(--pool-strength,55%),transparent),transparent)}.contact-shadow{inset-block-end:var(--shadow-y,6%);inset-inline-start:50%;width:var(--shadow-w,62%);aspect-ratio:6;translate:calc(var(--dir) * -50%) 0;background:var(--contact)}.grain{position:relative;isolation:isolate}.grain::after{content:"";position:absolute;inset:0;z-index:var(--z-raised);pointer-events:none;background:var(--grain);opacity:var(--grain-opacity);mix-blend-mode:overlay}.blur-up{position:relative;isolation:isolate}.blur-up::before{content:"";position:absolute;inset:0;z-index:var(--z-below);background:var(--lqip) center / 100% 100% no-repeat;filter:blur(14px);pointer-events:none}.js .blur-up:not(.is-loaded) img{opacity:0}.blur-up.is-loaded::before{opacity:0}@media (prefers-reduced-motion:no-preference){.blur-up img,.blur-up::before{transition:opacity 480ms var(--ease-out)}}.game-card{position:relative;isolation:isolate;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--hairline);border-radius:var(--r-xl);background:var(--raised);box-shadow:var(--shadow-1);transform:perspective(1100px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg))}.game-card__stage{position:relative;isolation:isolate;aspect-ratio:4 / 3;overflow:hidden}.game-card__material{position:absolute;inset:0;z-index:-3}.game-card__material img{width:100%;height:100%;object-fit:cover}.game-card__stage::before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(60% 55% at 50% 62%,color-mix(in srgb,var(--accent) 30%,transparent),transparent 70%),linear-gradient(180deg,rgb(7 8 11 / .15),rgb(7 8 11 / .35) 55%,var(--raised) 100%)}.game-card__render{position:absolute;inset-block-end:6%;inset-inline-start:50%;width:72%;translate:calc(var(--dir) * -50%) 0}.game-card__render img{width:100%}.game-card .contact-shadow{--shadow-y:7%;--shadow-w:52%}.game-card__spot{position:absolute;inset:0;z-index:var(--z-raised);pointer-events:none;opacity:0;background:radial-gradient(circle closest-side,rgb(255 255 255 / .1),transparent);translate:calc(var(--mx,50%) - 50%) calc(var(--my,50%) - 50%)}.game-card__body{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:var(--s-3);padding:0 var(--s-5) var(--s-5);margin-block-start:calc(var(--s-5) * -1)}.game-card__icon{position:relative;width:64px;border-radius:22.5%;overflow:hidden;box-shadow:var(--shadow-1)}.game-card__icon img{width:100%}.game-card__title{font-size:var(--fs-xl);letter-spacing:-.025em}.game-card__link{text-decoration:none}.game-card__link::after{content:"";position:absolute;inset:0;z-index:2}.game-card__link:focus-visible{outline:none}.game-card__link:focus-visible::after{outline:3px solid var(--focus);outline-offset:-3px;border-radius:var(--r-xl)}.game-card__twist{color:var(--ink);line-height:var(--lh-snug)}.game-card__note{font-size:var(--fs-s);font-weight:var(--fw-strong);color:var(--accent)}.game-card__meta{display:flex;flex-wrap:wrap;gap:var(--s-1) var(--s-4);margin-block-start:auto;padding-block-start:var(--s-2);font-size:var(--fs-s);color:var(--ink-2)}.game-card__soon{font-weight:var(--fw-strong)}.game-card:has(.game-card__link:focus-visible){border-color:color-mix(in srgb,var(--accent) 60%,var(--hairline))}.game-card[data-material="slate"] .game-card__material img{filter:brightness(.55) saturate(.7)}.game-card[data-material="felt"] .game-card__material img{filter:brightness(.75)}.game-card[data-material="walnut"] .game-card__material img{filter:brightness(.62) saturate(.9)}.game-card[data-material="ocean"] .game-card__material img,.game-card[data-material="glass-water"] .game-card__material img{filter:brightness(1.9) saturate(1.4)}@media (hover:hover) and (pointer:fine){.game-card:hover{border-color:color-mix(in srgb,var(--accent) 55%,var(--hairline))}.game-card:hover .game-card__spot{opacity:1}.game-card:hover .game-card__render{scale:1.04}}@media (prefers-reduced-motion:no-preference){.game-card{transition:transform 600ms var(--ease-out),border-color var(--dur-hover) ease}.game-card.is-tilting{transition-duration:120ms,var(--dur-hover)}.game-card__spot{transition:opacity var(--dur-ui) ease}.game-card__render{transition:scale var(--dur-stage) var(--ease-expo)}}.game-card--compact{flex-direction:row;align-items:center;gap:var(--s-4);padding:var(--s-4);border-radius:var(--r-l);background:radial-gradient(80% 120% at 0% 0%,color-mix(in srgb,var(--accent) 14%,transparent),transparent 70%),var(--raised)}[dir="rtl"] .game-card--compact{background:radial-gradient(80% 120% at 100% 0%,color-mix(in srgb,var(--accent) 14%,transparent),transparent 70%),var(--raised)}.game-card--compact .game-card__icon{flex:none;width:64px}.game-card--compact .game-card__body{padding:0;margin:0;gap:var(--s-1)}.game-card--compact .game-card__title{font-size:var(--fs-l)}.game-card--compact .game-card__twist{font-size:var(--fs-s);color:var(--ink-2)}.marquee{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}.marquee__inner{display:flex;width:max-content}.marquee__track{display:flex;gap:var(--marquee-gap,var(--s-5));padding-inline-end:var(--marquee-gap,var(--s-5));list-style:none;padding-block:var(--s-2)}.marquee__track>li{flex:none;width:var(--marquee-item,22rem)}.marquee:not([data-ready]){overflow-x:auto;mask-image:none;scrollbar-width:thin}.counter{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.site-footer{position:relative;isolation:isolate;overflow:hidden;margin-block-start:var(--s-9);padding-block:var(--s-9) var(--s-5);border-top:1px solid var(--hairline);background:linear-gradient(180deg,var(--base),var(--bg-deep) 70%)}.site-footer__grid{display:grid;gap:var(--s-7) var(--s-6);grid-template-columns:repeat(2,minmax(0,1fr))}.site-footer__brand{grid-column:1 / -1;display:grid;gap:var(--s-3);justify-items:start;align-content:start}.site-footer__brand .brand{order:0;margin-inline-end:0;font-size:1.25rem}.site-footer__brand p{color:var(--ink-2);max-width:34ch}.site-footer__brand p a{display:inline-flex;align-items:center;min-height:44px;color:var(--ink);font-weight:var(--fw-ui)}.site-footer__langs{grid-column:1 / -1;padding-block-start:var(--s-6);border-top:1px solid var(--hairline)}.site-footer__title{margin-block-end:var(--s-2);font-size:var(--fs-xs);font-weight:var(--fw-head);color:var(--ink);letter-spacing:.02em}.site-footer ul{display:grid;gap:0;list-style:none;padding:0}.site-footer li a{display:inline-flex;align-items:center;gap:var(--s-2);min-height:40px;color:var(--ink-2);font-size:var(--fs-s);text-decoration:none}.site-footer__game::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:var(--accent)}.site-footer__base{display:grid;gap:var(--s-2);margin-block-start:var(--s-7);padding-block-start:var(--s-5);border-top:1px solid var(--hairline);color:var(--ink-2);font-size:var(--fs-xs)}.site-footer__base p{max-width:none}.site-footer__wordmark{max-width:none;margin-block-start:var(--s-8);font-size:min(9.4vw,13.5rem);font-weight:var(--fw-head);line-height:.85;letter-spacing:-.055em;white-space:nowrap;color:transparent;background:linear-gradient(180deg,rgb(255 255 255 / .09),rgb(255 255 255 / .015) 85%);background-clip:text;-webkit-background-clip:text;user-select:none}@media (hover:hover) and (pointer:fine){.site-footer li a:hover{color:var(--ink)}}@media (min-width:56.25em){.site-footer__grid{grid-template-columns:1.6fr 1fr 1fr 1fr}.site-footer__brand{grid-column:auto}.site-footer__base{grid-template-columns:auto 1fr auto;gap:var(--s-6);align-items:baseline}}}@layer components{.langmenu{position:relative}.langmenu__button{display:inline-flex;align-items:center;gap:var(--s-2);min-height:44px;min-width:44px;padding-inline:var(--s-3);border-radius:var(--r-m);color:var(--ink-2);font-size:var(--fs-s);font-weight:var(--fw-ui);cursor:pointer;list-style:none;user-select:none}.langmenu__button::-webkit-details-marker{display:none}.langmenu__button::marker{content:""}.langmenu[open]>.langmenu__button{color:var(--ink);background:var(--surface-2)}.langmenu__globe,.langmenu__caret{flex:none}.langmenu[open] .langmenu__caret{rotate:180deg}.langmenu__list{position:absolute;z-index:var(--z-menu);inset-block-start:calc(100% + var(--s-2));inset-inline-end:calc(var(--s-2) * -1);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;width:min(26rem,calc(100vw - 2 * var(--gutter)));max-height:min(72vh,36rem);overflow-y:auto;overscroll-behavior:contain;padding:var(--s-2);border:1px solid var(--hairline-strong);border-radius:var(--r-l);background:var(--raised);box-shadow:var(--shadow-3);list-style:none}.langmenu__list a{display:flex;align-items:center;min-height:44px;padding-inline:var(--s-3);border-radius:var(--r-m);color:var(--ink-2);font-size:var(--fs-s);font-weight:var(--fw-ui);text-decoration:none}.langmenu__list a[aria-current="true"]{background:var(--raised-high);color:var(--ink);font-weight:var(--fw-head)}.langmenu__list a[aria-current="true"]::after{content:"";width:6px;height:6px;margin-inline-start:auto;border-radius:50%;background:var(--accent)}@media (hover:hover) and (pointer:fine){.langmenu__button:hover,.langmenu__list a:hover{color:var(--ink);background:var(--surface-2)}}@media (prefers-reduced-motion:no-preference){.langmenu__button,.langmenu__list a{transition:color var(--dur-hover) ease,background-color var(--dur-hover) ease}.langmenu__caret{transition:rotate var(--dur-ui) var(--ease-out)}.langmenu[open] .langmenu__list{transition:opacity var(--dur-hover) var(--ease-out),translate var(--dur-ui) var(--ease-expo);@starting-style{opacity:0;translate:0 -6px}}}@media (max-width:29.99em){.langmenu__current{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}}@media (max-width:22.5em){.langmenu__list{grid-template-columns:minmax(0,1fr)}}:root:not(:lang(ru)) :is(.langmenu__list,.lang-grid__list) a:lang(ru),:root:not(:lang(uk)) :is(.langmenu__list,.lang-grid__list) a:lang(uk),:root:not(:lang(vi)) :is(.langmenu__list,.lang-grid__list) a:lang(vi){font-family:var(--font-system)}.site-footer .lang-grid__list{display:grid;grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr));gap:0 var(--s-4)}.site-footer .lang-grid__list a{min-height:40px}.site-footer .lang-grid__list a[aria-current="true"]{color:var(--ink);font-weight:var(--fw-head)}.site-footer .lang-grid__list a[aria-current="true"]::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent)}}@layer motion{@media (prefers-reduced-motion:no-preference){.js [data-reveal]{transition:opacity var(--dur-reveal) var(--ease-out),translate var(--dur-reveal) var(--ease-expo),scale var(--dur-reveal) var(--ease-expo);transition-delay:calc(var(--d,0ms) + var(--i,0) * var(--stagger))}.js [data-reveal]:not([data-reveal="mask"]):not(.is-in){opacity:0}.js [data-reveal="up"]:not(.is-in){translate:0 32px}.js [data-reveal="scale"]:not(.is-in){scale:.94}.js [data-reveal="mask"] .kl__i{transition:translate var(--dur-reveal) var(--ease-expo);transition-delay:calc(var(--d,0ms) + var(--li,0) * 90ms)}.js [data-reveal="mask"]:not(.is-in) .kl__i{translate:0 108%}.float{animation:float var(--float-dur,7s) var(--ease-shift) var(--float-delay,0s) infinite alternate both}[data-offscreen] .float,[data-loop][data-offscreen] *{animation-play-state:paused}.marquee[data-ready] .marquee__inner{animation:marquee var(--marquee-dur,60s) linear infinite}.marquee:hover .marquee__inner,.marquee:focus-within .marquee__inner,.marquee[data-offscreen] .marquee__inner{animation-play-state:paused}@supports (animation-timeline:scroll()){.progress-line{animation:progress linear both;animation-timeline:scroll(root block)}}@view-transition{navigation:auto}::view-transition-group(*){animation-duration:560ms;animation-timing-function:var(--ease-expo)}::view-transition-old(root),::view-transition-new(root){animation-duration:280ms;animation-timing-function:var(--ease-out)}::view-transition-group(root){animation-duration:280ms}.site-header{view-transition-name:site-header}}@keyframes float{from{transform:translateY(calc(var(--float-y,10px) * -.5))}to{transform:translateY(calc(var(--float-y,10px) * .5))}}@keyframes marquee{to{translate:calc(var(--dir) * -50%) 0}}@keyframes progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}.kl{display:block;overflow:clip;padding-block:.12em;margin-block:-.12em}.kl__i{display:block}.progress-line{position:fixed;inset-block-start:0;inset-inline:0;z-index:calc(var(--z-header) + 1);height:2px;background:var(--accent);transform:scaleX(var(--scroll,0));transform-origin:left center;pointer-events:none}[dir="rtl"] .progress-line{transform-origin:right center}.js [data-parallax]{will-change:translate}}@layer scripts{[lang]:lang(ar){--font:var(--font-ar);font-family:var(--font)}[lang]:lang(hi){--font:var(--font-hi);font-family:var(--font)}[lang]:lang(th){--font:var(--font-th);font-family:var(--font)}[lang]:lang(ja){--font:var(--font-ja);font-family:var(--font)}[lang]:lang(ko){--font:var(--font-ko);font-family:var(--font)}[lang]:lang(zh-Hans){--font:var(--font-zh-hans);font-family:var(--font)}[lang]:lang(zh-Hant){--font:var(--font-zh-hant);font-family:var(--font)}:root:lang(ar){--lh-body:1.85;--lh-lede:1.8;--lh-snug:1.75;--lh-tight:1.45;--lh-head:1.4;--lh-display:1.3;--head-scale:1;--display-scale:.92}:root:lang(hi){--lh-body:1.8;--lh-lede:1.8;--lh-snug:1.75;--lh-tight:1.45;--lh-head:1.4;--lh-display:1.35;--head-scale:.95;--display-scale:.88}:root:lang(th){--lh-body:1.85;--lh-lede:1.8;--lh-snug:1.8;--lh-tight:1.5;--lh-head:1.45;--lh-display:1.4;--head-scale:.95;--display-scale:.86}:root:lang(ja),:root:lang(zh-Hans),:root:lang(zh-Hant){--lh-body:1.85;--lh-lede:1.8;--lh-snug:1.75;--lh-tight:1.4;--lh-head:1.35;--lh-display:1.25;--head-scale:.9;--display-scale:.78}:root:lang(ko){--lh-body:1.8;--lh-lede:1.75;--lh-snug:1.7;--lh-tight:1.4;--lh-head:1.35;--lh-display:1.25;--head-scale:.9;--display-scale:.8}:is(:lang(ar),:lang(hi),:lang(th),:lang(ja),:lang(ko),:lang(zh-Hans),:lang(zh-Hant)),:is(:lang(ar),:lang(hi),:lang(th),:lang(ja),:lang(ko),:lang(zh-Hans),:lang(zh-Hant)) *,:is(:lang(ar),:lang(hi),:lang(th),:lang(ja),:lang(ko),:lang(zh-Hans),:lang(zh-Hant)) *::before,:is(:lang(ar),:lang(hi),:lang(th),:lang(ja),:lang(ko),:lang(zh-Hans),:lang(zh-Hant)) *::after{letter-spacing:0;text-transform:none}:lang(ja),:lang(zh-Hans),:lang(zh-Hant){line-break:strict}:lang(ko){word-break:keep-all}[lang]:is(:lang(de),:lang(nl),:lang(fr),:lang(es),:lang(it),:lang(pt),:lang(ru),:lang(uk),:lang(pl),:lang(tr),:lang(id)){hyphens:auto}}@layer components{.facts{width:100%;max-width:64rem;font-variant-numeric:tabular-nums}.facts th,.facts td{overflow-wrap:anywhere;padding-block:var(--s-4);padding-inline:0 var(--s-5);border-top:1px solid var(--hairline);text-align:start;vertical-align:baseline}.facts th{width:34%;color:var(--ink-2);font-size:var(--fs-s);font-weight:var(--fw-ui)}.facts td{font-weight:var(--fw-ui)}.facts tbody tr:last-child>*{border-bottom:1px solid var(--hairline)}.facts a{text-decoration-color:var(--ink-3)}@media (hover:hover) and (pointer:fine){.facts:not(.facts--compare) tbody tr:hover>*{background:var(--surface-1)}}@media (max-width:39.99em){.facts:not(.facts--compare) th,.facts:not(.facts--compare) td{display:block;width:auto;padding-inline-end:0}.facts:not(.facts--compare) th{padding-block-end:0;border-bottom:0}.facts:not(.facts--compare) td{padding-block-start:var(--s-1);border-top:0}.facts:not(.facts--compare) tbody tr{display:block;border-top:1px solid var(--hairline)}.facts:not(.facts--compare) tbody tr>*{border-top:0}}.facts--compare{max-width:none}.facts--compare th{width:auto}.facts--compare thead th{padding-block:var(--s-3);border-top:0;font-size:var(--fs-xs)}.facts--compare tbody th a{display:inline-flex;align-items:center;gap:var(--s-2);min-height:44px;color:var(--ink);font-weight:var(--fw-head);font-size:var(--fs-l);letter-spacing:-.015em;text-decoration:none}.facts--compare tbody th a::before{content:"";flex:none;width:10px;height:10px;border-radius:50%;background:var(--accent)}@media (min-width:56.25em){.facts--compare tbody th a,.facts--compare td:last-child{white-space:nowrap}}@media (hover:hover) and (pointer:fine){.facts--compare tbody th a:hover{text-decoration:underline}}@media (max-width:56.24em){.facts--compare thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.facts--compare,.facts--compare tbody,.facts--compare tr,.facts--compare th,.facts--compare td{display:block}.facts--compare tr{padding-block:var(--s-4);border-top:1px solid var(--hairline)}.facts--compare th,.facts--compare td{padding:var(--s-1) 0;border:0 !important}.facts--compare td::before{content:attr(data-label) ": ";color:var(--ink-2);font-weight:var(--fw-ui)}}.downloads{display:grid;gap:var(--s-4);list-style:none;padding:0}.downloads--grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,16rem),1fr))}.download{position:relative;display:grid;gap:var(--s-4);align-items:center;padding:var(--s-5);border:1px solid var(--hairline);border-radius:var(--r-l);background:var(--surface-1)}.download--kit{background:radial-gradient(90% 140% at 100% 0%,color-mix(in srgb,var(--accent) 16%,transparent),transparent 60%),var(--raised);border-color:color-mix(in srgb,var(--accent) 30%,var(--hairline))}[dir="rtl"] .download--kit{background:radial-gradient(90% 140% at 0% 0%,color-mix(in srgb,var(--accent) 16%,transparent),transparent 60%),var(--raised)}.download__info{display:grid;gap:var(--s-1)}.download__title{font-size:var(--fs-l);font-weight:var(--fw-head);letter-spacing:-.015em}.download__info p{color:var(--ink-2);font-size:var(--fs-s)}.download__info a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none}.download__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2) var(--s-5)}.download__icon{width:64px;border-radius:22.5%;overflow:hidden;box-shadow:var(--shadow-1)}.download__preview{display:grid;place-items:center;aspect-ratio:16 / 10;overflow:hidden;border-radius:var(--r-m);background:radial-gradient(closest-side,color-mix(in srgb,var(--accent) 22%,transparent),transparent),var(--sunken)}.download__preview img{max-height:100%;width:auto;object-fit:contain}.download__preview--cover img{width:100%;height:100%;object-fit:cover}.download--preview{align-content:start}.download--preview .btn{justify-self:start}.download--game{grid-template-columns:64px minmax(0,1fr);column-gap:var(--s-4)}.download--game .download__actions{grid-column:1 / -1}@media (hover:hover) and (pointer:fine){.download--preview:hover .download__preview img{scale:1.05;translate:0 -4px}.download:hover{border-color:var(--hairline-strong)}}@media (prefers-reduced-motion:no-preference){.download__preview img{transition:scale var(--dur-stage) var(--ease-expo),translate var(--dur-stage) var(--ease-expo)}.download{transition:border-color var(--dur-hover) ease}}@media (min-width:40em){.download:not(.download--preview){grid-template-columns:minmax(0,1fr) auto}.download--game:not(.download--preview){grid-template-columns:64px minmax(0,1fr) auto}.download--game .download__actions{grid-column:auto}}.steps{display:grid;gap:var(--s-6);counter-reset:step}.step{display:grid;gap:var(--s-3);align-content:start;padding-block-start:var(--s-5);border-top:1px solid var(--hairline)}.step__n{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--accent);color:var(--on-accent);font-size:1.25rem;font-weight:var(--fw-head);font-variant-numeric:tabular-nums;box-shadow:var(--shadow-inset),var(--shadow-1)}.step p{color:var(--ink-2)}@media (min-width:56.25em){.steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-7)}}.rail{--rail-pad:max(var(--gutter),calc((100% - var(--container)) / 2));overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scroll-padding-inline:var(--rail-pad);padding-inline:var(--rail-pad);padding-block:var(--s-3) var(--s-5);scrollbar-width:thin;scrollbar-color:#343a47 transparent}.rail:focus-visible{outline-offset:-3px}.rail__track{display:flex;gap:var(--s-5);width:max-content;list-style:none;padding:0}.rail__item{flex:none;width:clamp(210px,22vw,280px);scroll-snap-align:start}.rail-controls{display:flex;gap:var(--s-2)}.shot{overflow:hidden;border:1px solid var(--hairline-strong);border-radius:var(--r-xl);background:var(--sunken);box-shadow:var(--shadow-2)}.shot img{width:100%;height:auto}.g-gallery--grid .rail{overflow:visible;padding-inline:0}.g-gallery--grid .rail__track{display:grid;width:auto;grid-template-columns:repeat(auto-fill,minmax(min(100%,13rem),1fr))}.g-gallery--grid .rail__item{width:auto}.feature-list{display:grid;gap:var(--s-4) var(--s-8);list-style:none;padding:0}.feature-list li{position:relative;padding-inline-start:var(--s-6);max-width:52ch}.feature-list li::before{content:"";position:absolute;inset-inline-start:0;inset-block-start:.72em;width:16px;height:4px;border-radius:2px;background:var(--accent)}@media (min-width:56.25em){.feature-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.plain-list{display:grid;gap:var(--s-3);padding-inline-start:var(--s-5)}}@layer components{.downloads + .downloads{margin-block-start:var(--s-4)}}@layer page{.g-scene{--light-x:50%;--light-y:36%;position:relative;isolation:isolate;display:grid;align-items:center;min-height:100svh;--g-head:114px;padding-block:calc(var(--g-head) + var(--s-2)) var(--s-8);overflow:clip;background:var(--bg-deep)}@media (min-width:48em){.g-scene{--g-head:78px}}.g-scene__layers{position:absolute;inset:0;z-index:var(--z-below);pointer-events:none}.g-scene__backdrop{position:absolute;inset:-6% -3%}.g-scene__backdrop picture,.g-scene__backdrop img{width:100%;height:100%;object-fit:cover}.g-scene__backdrop::after{content:"";position:absolute;inset:0;background:radial-gradient(120% 90% at 50% 40%,transparent 30%,rgb(7 8 11 / .72) 100%),linear-gradient(180deg,rgb(7 8 11 / .55),transparent 28%,transparent 62%,var(--bg-deep) 98%)}.g-scene__table{position:absolute;inset-inline:-30%;inset-block-end:-4%;height:56%;perspective:760px;perspective-origin:50% 0%}.g-scene__plane{position:absolute;inset:0;background:radial-gradient(60% 120% at var(--light-x) 0%,transparent,rgb(7 8 11 / .75)),linear-gradient(rgb(7 8 11 / var(--g-tile-shade,.45)),rgb(7 8 11 / var(--g-tile-shade,.45))),var(--g-tile,none) center / var(--g-tile-size,280px);opacity:var(--g-tile-opacity,.6);transform:rotateX(68deg);transform-origin:50% 100%;mask-image:linear-gradient(0deg,#000 10%,rgb(0 0 0 / .6) 45%,transparent 92%)}.g-scene__light{position:absolute;inset:0;background:radial-gradient(34% 22% at var(--light-x) var(--light-y),color-mix(in srgb,var(--accent) 34%,transparent),transparent 70%),radial-gradient(70% 46% at var(--light-x) calc(var(--light-y) + 4%),color-mix(in srgb,var(--accent) 12%,transparent),transparent 72%)}.g-scene__motes{position:absolute;inset:0}.mote{position:absolute;inset-inline-start:var(--x);inset-block-start:var(--y);width:calc(var(--mote-size,3px) * var(--s));aspect-ratio:1;border-radius:50%;background:var(--mote-color,rgb(255 255 255 / .7));opacity:calc(var(--mote-opacity,.5) * .6)}.g-scene__grid{display:grid;gap:var(--s-5);align-items:center}.g-scene__art{position:relative;isolation:isolate;justify-self:center;width:min(66vw,32svh,560px);aspect-ratio:1;margin-block-end:calc(var(--s-4) * -1)}.g-scene__render{position:absolute;inset:0}.g-scene__float{--float-dur:8s;--float-y:14px}.g-scene__float img{width:100%}.g-scene__float picture{mask-image:linear-gradient(90deg,transparent,#000 9% 91%,transparent),linear-gradient(180deg,transparent,#000 8% 92%,transparent);mask-composite:intersect}.g-scene__pool{--pool-w:120%;--pool-y:-6%;--pool-strength:42%}.g-scene__shadow{--shadow-w:56%;--shadow-y:6%}.g-sat{position:absolute;pointer-events:none}.g-sat img{width:100%}.g-scene__copy{display:grid;gap:var(--s-4);justify-items:start;align-content:center;min-width:0}.g-scene__eyebrow{display:inline-flex;align-items:center;gap:var(--s-3);font-size:var(--fs-s);font-weight:var(--fw-ui);color:var(--ink-2)}.g-scene__icon{flex:none;width:40px;overflow:hidden;border-radius:22.5%;box-shadow:var(--shadow-1)}.g-scene__title{max-width:none;font-size:var(--fs-display);line-height:var(--lh-display);letter-spacing:var(--track-display);text-wrap:balance}.g-scene__bar{margin-block:var(--s-1)}.g-scene__tagline{max-width:24ch;font-size:var(--fs-xl);font-weight:var(--fw-strong);line-height:var(--lh-tight);letter-spacing:var(--track-head)}.g-scene__lede{max-width:46ch;font-size:var(--fs-l);line-height:var(--lh-lede);color:var(--ink-2)}.g-scene__actions{display:grid;gap:var(--s-3);margin-block-start:var(--s-2)}.g-scene__note{font-weight:var(--fw-strong);color:var(--accent)}.g-scene__quick{display:flex;flex-wrap:wrap;gap:var(--s-2) var(--s-5);padding:0;list-style:none;font-size:var(--fs-xs);font-weight:var(--fw-ui);color:var(--ink-2)}.g-scene__quick li{display:inline-flex;align-items:center;gap:var(--s-2)}.g-scene__quick li::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--accent)}.g-scene__cue{min-height:44px;font-weight:var(--fw-strong);color:var(--ink)}.g-scene__cue .icon{color:var(--accent)}@media (min-width:56.25em){.g-scene{--light-x:27%;--light-y:70%}[dir="rtl"] .g-scene{--light-x:73%}.g-scene__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--s-8)}.g-scene__art{width:min(100%,44vw,72svh,640px);margin-block-end:0}.g-scene--split .g-scene__art{order:2}.g-scene--split{--light-x:72%}[dir="rtl"] .g-scene--split{--light-x:28%}}.g-play{position:relative;padding-block:var(--section-y)}.g-play__grid{display:grid;gap:var(--s-7);align-items:center}.g-play__copy{display:grid;gap:var(--s-4);justify-items:start;align-content:center}.g-play__kicker{display:inline-flex;align-items:center;gap:var(--s-3);font-size:var(--fs-s);font-weight:var(--fw-strong);color:var(--accent)}.g-play__copy h2{max-width:16ch}.g-play__copy .lede{color:var(--ink)}.g-play__copy p:not(.lede):not(.g-play__kicker){color:var(--ink-2)}.g-play__legend,.g-play__hint,.g-play__note{font-size:var(--fs-s)}.g-play__hint{display:none}.g-play:has(.is-playing) .g-play__hint{display:block}.g-play__note{padding-inline-start:var(--s-4);border-inline-start:2px solid var(--hairline-strong)}@media (min-width:56.25em){.g-play__grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--s-8)}}@media (min-width:56.25em) and (min-height:37.5em){.g-play--pinned{min-height:150svh;padding-block:0}.g-play--pinned .g-play__pin{position:sticky;inset-block-start:0;display:grid;align-items:center;min-height:100svh;padding-block:var(--s-8)}}.demo{--play:running;position:relative;min-width:0}.demo__toggle:checked ~ .demo__stage,.demo[data-offscreen] .demo__stage{--play:paused}.demo__stage{container-type:inline-size;position:relative;display:grid;place-items:center;padding:var(--s-6) var(--s-4);overflow:hidden;border:1px solid var(--hairline);border-radius:var(--r-xl);background:var(--stage-bg,var(--raised));box-shadow:var(--shadow-2)}.demo__still,.demo.is-playing .demo__stage .demo__live,.demo.is-playing .demo__stage .demo__still,.demo.is-playing .demo__pause{display:none}.demo__play{width:100%}.demo--still .demo__stage img{width:min(100%,520px)}.demo__caption{display:grid;gap:var(--s-3);justify-items:start;margin-block-start:var(--s-4);font-size:var(--fs-s);color:var(--ink-2)}.demo.is-playing .demo__caption{margin-block-start:var(--s-3)}.demo__text{max-width:56ch}.demo__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s-3) var(--s-5);margin-block-start:var(--s-4)}.demo__status{flex:1 1 18rem;min-height:calc(2 * var(--lh-snug) * 1em);margin:0;font-weight:var(--fw-ui);line-height:var(--lh-snug);color:var(--ink);unicode-bidi:plaintext}.demo__pause{display:inline-flex;align-items:center;gap:var(--s-2);min-height:44px;padding:var(--s-2) var(--s-4);border:1px solid var(--hairline-strong);border-radius:var(--r-pill);color:var(--ink);font-weight:700;cursor:pointer}.demo__pause::before{content:"";width:10px;height:12px;border-inline:3px solid currentColor}.demo__pause-off,.demo__toggle:checked ~ .demo__caption .demo__pause-on{display:none}.demo__toggle:checked ~ .demo__caption .demo__pause-off{display:inline}.demo__toggle:checked ~ .demo__caption .demo__pause::before{width:0;height:0;border-style:solid;border-width:6px 0 6px 10px;border-color:transparent transparent transparent currentColor}.demo__toggle:focus-visible ~ .demo__caption .demo__pause{outline:2px solid var(--focus);outline-offset:3px}@media (hover:hover) and (pointer:fine){.demo__pause:hover{background:var(--raised-high)}}@media (prefers-reduced-motion:no-preference){.demo__pause{transition:background-color var(--dur-hover) var(--ease-out)}}@media (prefers-reduced-motion:reduce){.demo__pause{display:none}.demo__stage:has(.demo__still) .demo__live{display:none}.demo:not(.is-playing) .demo__still{display:block}}.g-how__grid{display:grid;gap:var(--s-5)}.g-how__head h2{max-width:18ch}.how-steps{display:grid;margin:0;padding:0;list-style:none}.how-step{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--s-2) var(--s-5);align-content:center;padding-block:var(--s-6);border-block-start:1px solid var(--hairline)}.how-step__n{grid-row:span 2;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;border:1px solid var(--hairline-strong);font-size:var(--fs-l);font-weight:var(--fw-head);font-variant-numeric:tabular-nums}.how-step__title{font-size:var(--fs-xl)}.how-step p{color:var(--ink-2)}.js .g-how--phone .how-step:not(.is-current){opacity:.42}.phone{position:relative;isolation:isolate;width:min(100%,300px);margin-inline:auto;padding:9px;border-radius:46px;background:linear-gradient(160deg,#20242c,#0b0c10 60%);box-shadow:inset 0 0 0 1px rgb(255 255 255 / .14),0 40px 80px -30px rgb(0 0 0 / .9)}.phone::before{content:"";position:absolute;z-index:var(--z-below);inset:20% -40% -16%;border-radius:50%;background:radial-gradient(closest-side,color-mix(in srgb,var(--accent) var(--phone-glow,26%),transparent),transparent)}.phone__screen{position:relative;aspect-ratio:780 / 1688;overflow:hidden;border-radius:37px;background:#0b0c10}.phone__shot{position:absolute;inset:0;opacity:0}.phone__shot.is-on{opacity:1}.phone__shot img{width:100%;height:100%;object-fit:cover}@media (max-width:56.24em){.g-how__phone-col{position:sticky;inset-block-start:0;z-index:var(--z-raised);padding-block:var(--s-4) var(--s-6);background:linear-gradient(180deg,var(--bg-deep) 82%,transparent)}.phone{width:min(52vw,calc(42svh * .47),260px);padding:6px;border-radius:30px}.phone__screen{border-radius:24px}.g-how--phone .how-step{min-height:46svh}}@media (max-width:56.24em) and (max-height:34em){.g-how__phone-col{position:static}}@media (min-width:56.25em){.g-how--phone .g-how__grid{grid-template-columns:minmax(0,5fr) minmax(0,6fr);grid-template-areas:"phone head" "phone steps";column-gap:var(--s-9)}.g-how--phone .g-how__head{grid-area:head}.g-how--phone .how-steps{grid-area:steps}.g-how__phone-col{grid-area:phone}.g-how--phone .phone{position:sticky;inset-block-start:max(var(--s-6),calc(50svh - (min(300px,calc(78svh * .462)) * 2.164 + 18px) / 2));width:min(300px,calc(78svh * .462))}.g-how--phone .how-step{min-height:64svh}}.g-screens{overflow-x:clip}.flow{--w:clamp(210px,56vw,300px);position:relative;isolation:isolate;padding-block:var(--s-5) var(--s-6);border-radius:var(--r-xl)}.flow:focus-visible{outline-offset:-6px}.flow::before{content:"";position:absolute;z-index:var(--z-below);inset-block-end:0;inset-inline:20%;height:34%;border-radius:50%;background:radial-gradient(closest-side,color-mix(in srgb,var(--accent) 22%,transparent),transparent)}.flow__track{display:flex;gap:var(--s-4);margin:0;padding:var(--s-2) var(--gutter);overflow-x:auto;list-style:none;scroll-snap-type:x mandatory;scrollbar-width:thin}.flow__item{flex:none;width:var(--w);scroll-snap-align:center}.flow__plate{margin:0;border-radius:calc(var(--w) * .06);overflow:hidden;box-shadow:var(--shadow-3);transform:perspective(1000px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg))}.flow__plate img{width:100%;-webkit-user-drag:none;user-select:none}.flow.is-3d .flow__track{position:relative;display:block;height:calc(var(--w) * 1.778 + 2 * var(--s-2));overflow:visible;perspective:1500px;touch-action:pan-y;user-select:none;cursor:grab}.flow.is-dragging .flow__track{cursor:grabbing}.flow.is-3d .flow__item{position:absolute;inset-block-start:var(--s-2);inset-inline:0;margin-inline:auto;transform:translateX(calc(var(--o,0) * var(--w) * .66 * var(--dir))) translateZ(calc(var(--a,0) * -200px)) rotateY(calc(var(--c,0) * -44deg * var(--dir)));opacity:clamp(0,calc(3.2 - var(--a,0)),1)}.flow.is-3d .flow__item:not(.is-active) .flow__plate{box-shadow:var(--shadow-2)}.flow.is-3d .flow__item:not(.is-active)::after{content:"";position:absolute;inset:0;border-radius:calc(var(--w) * .06);background:rgb(7 8 11 / .38);opacity:clamp(0,var(--a,0),1)}.flow__foot{display:grid;justify-items:center;gap:var(--s-3);text-align:center}.flow__caption{max-width:40ch;min-height:calc(2 * var(--lh-snug) * 1em);margin:0;font-size:var(--fs-l);font-weight:var(--fw-strong);line-height:var(--lh-snug)}.flow__dots{display:flex;flex-wrap:wrap;justify-content:center}.flow__dot{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:none;cursor:pointer}.flow__dot::before{content:"";width:8px;height:8px;border-radius:var(--r-pill);background:var(--ink-3)}.flow__dot[aria-current]::before{width:24px;background:var(--accent)}.flow__hint{font-size:var(--fs-xs);color:var(--ink-2)}.flow__controls{display:flex;gap:var(--s-2)}.flow__controls[hidden],.flow__dots[hidden],.flow__hint[hidden]{display:none}.flow__ic-play,.g-screens.is-paused .flow__ic-pause{display:none}.g-screens.is-paused .flow__ic-play{display:inline-block}@media (min-width:56.25em){.flow{--w:clamp(240px,22vw,320px)}}@media (min-width:56.25em){.g-features .container,.g-facts .container{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:var(--s-8);align-items:start}}.g-facts .facts{width:100%;border-block-start:2px solid var(--accent)}.g-facts .facts th{width:38%;font-size:var(--fs-s);font-weight:var(--fw-ui);color:var(--ink-2)}.g-facts .facts td{font-weight:var(--fw-strong);font-variant-numeric:tabular-nums}.g-downloads .download>*{min-width:0}.g-downloads .btn{max-width:100%;white-space:normal}.g-related__marquee{--marquee-gap:var(--s-5)}@media (prefers-reduced-motion:no-preference){.mote{animation:g-mote var(--t,12s) linear var(--dl,0s) infinite;animation-play-state:var(--play-motes,running)}[data-offscreen] .mote{animation-play-state:paused}@keyframes g-mote{0%{opacity:0;transform:translate3d(0,0,0)}18%{opacity:var(--mote-opacity,.5)}80%{opacity:var(--mote-opacity,.5)}100%{opacity:0;transform:translate3d(calc((var(--k) - 1) * 14px),calc(var(--mote-rise,160px) * -1),0)}}.js .g-scene__float picture{transition:translate var(--dur-stage) var(--ease-expo) 80ms}.js:not(.is-ready) .g-scene__float picture{translate:0 -48px}.js .g-scene__light,.js .g-scene__motes,.js .g-scene__pool,.js .g-sat{transition:opacity var(--dur-stage) var(--ease-out) 380ms,scale var(--dur-stage) var(--ease-expo) 380ms}.js:not(.is-ready) .g-scene__light,.js:not(.is-ready) .g-scene__pool{opacity:0;scale:.7}.js:not(.is-ready) .g-scene__motes,.js:not(.is-ready) .g-sat{opacity:0}.phone__shot{transition:opacity 420ms var(--ease-out)}.how-step{transition:opacity var(--dur-ui) var(--ease-out)}.flow.is-3d .flow__item{transition:transform 720ms var(--ease-expo),opacity 420ms var(--ease-out)}.flow.is-dragging .flow__item{transition:none}.flow__plate{transition:transform 360ms var(--ease-out)}.flow__dot::before{transition:width var(--dur-ui) var(--ease-out),background-color var(--dur-ui) var(--ease-out)}@supports (animation-timeline:view()){.g-play .demo__stage{animation:g-table linear both;animation-timeline:view();animation-range:entry 0% cover 38%}@keyframes g-table{from{opacity:.4;transform:perspective(1200px) translateY(48px) rotateX(14deg)}to{opacity:1;transform:none}}}@supports (animation-timeline:--a) and (timeline-scope:--a){.phone.is-driven .phone__shot{transition:none;animation:g-shot linear both;animation-range:cover 26% cover 74%}.phone.is-driven .phone__shot:first-child{animation-name:g-shot-first}.phone.is-driven .phone__shot:last-child{animation-name:g-shot-last}.phone.is-driven [data-shot="0"]{animation-timeline:--step-0}.phone.is-driven [data-shot="1"]{animation-timeline:--step-1}.phone.is-driven [data-shot="2"]{animation-timeline:--step-2}.phone.is-driven [data-shot="3"]{animation-timeline:--step-3}@keyframes g-shot{0%{opacity:0}10%,90%{opacity:1}100%{opacity:0}}@keyframes g-shot-first{0%,90%{opacity:1}100%{opacity:0}}@keyframes g-shot-last{0%{opacity:0}10%,100%{opacity:1}}}}}@layer game{body[data-game="drifting-fleet"]{--sea:#061722;--sea-hi:#0b3346;--foam:#c6f1ff;--ember:#ffd166;--breach:#ff8a2a;--cyan-a:rgb(53 200 240 / .16);--g-tile-opacity:.9;--g-tile-shade:.2;--mote-color:rgb(170 236 255 / .9);--mote-size:3px;--mote-rise:70px;--mote-opacity:.5;--phone-glow:22%;--stage-bg:radial-gradient(70% 55% at 50% 50%,rgb(11 51 70 / .55),transparent 75%),linear-gradient(180deg,#0a141b,#070d12)}body[data-game="drifting-fleet"] .g-scene__light{background:radial-gradient(26% 16% at var(--light-x) var(--light-y),rgb(53 200 240 / .3),transparent 70%),radial-gradient(60% 44% at var(--light-x) calc(var(--light-y) + 6%),rgb(53 200 240 / .1),transparent 72%)}body[data-game="drifting-fleet"] .g-scene__plane::before,body[data-game="drifting-fleet"] .g-scene__plane::after{content:"";position:absolute;inset:-30%;opacity:.7;background:radial-gradient(ellipse 16% 7% at 22% 30%,rgb(150 235 255 / .22),transparent 70%),radial-gradient(ellipse 9% 5% at 64% 18%,rgb(150 235 255 / .2),transparent 70%),radial-gradient(ellipse 22% 6% at 78% 66%,rgb(150 235 255 / .16),transparent 70%),radial-gradient(ellipse 7% 4% at 38% 82%,rgb(150 235 255 / .24),transparent 70%);background-size:340px 230px}body[data-game="drifting-fleet"] .g-scene__plane::before{background-size:230px 170px;rotate:18deg}body[data-game="drifting-fleet"] .g-scene__icon{box-shadow:0 1px 2px rgb(0 0 0 / .5),0 10px 24px -10px rgb(53 200 240 / .5)}.fl-radar{position:absolute;z-index:var(--z-below);left:2%;top:-3%;width:120%;aspect-ratio:1;transform:scale(1,.58);pointer-events:none;mask-image:radial-gradient(closest-side,#000 55%,transparent)}.fl-radar i{position:absolute;inset:0;border-radius:50%}.fl-radar__grid{background:repeating-radial-gradient(circle closest-side,transparent 0 calc(16.6% - 1.5px),rgb(53 200 240 / .3) calc(16.6% - 1.5px) 16.6%),linear-gradient(90deg,transparent calc(50% - .5px),rgb(53 200 240 / .28) 0 calc(50% + .5px),transparent 0),linear-gradient(transparent calc(50% - .5px),rgb(53 200 240 / .28) 0 calc(50% + .5px),transparent 0)}.fl-radar__sweep{background:conic-gradient(transparent 0 290deg,rgb(53 200 240 / .08) 320deg,rgb(53 200 240 / .42) 360deg)}.fl-radar__ring{border:2px solid rgb(53 200 240 / .7);opacity:0;scale:.6}.fl-radar__ring:nth-of-type(3){opacity:.25}body[data-game="drifting-fleet"] .how-step__n{border:1.5px solid var(--accent);background:radial-gradient(circle,var(--sea-hi),var(--sea) 72%);box-shadow:0 0 0 6px var(--cyan-a),0 0 0 12px rgb(53 200 240 / .06);color:var(--ink)}.fl{--cell:clamp(26px,calc((100cqw - 20px) / 8.3),54px);display:grid;justify-items:center;gap:var(--s-3);width:100%;font-variant-numeric:tabular-nums}.fl [dir="auto"]{unicode-bidi:plaintext}.fl-defs{position:absolute}.fl__hud,.fl__status,.fl__tools{width:min(100%,calc(var(--cell) * 8 + 20px))}.fl__hud{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s-1) var(--s-3);font-size:var(--fs-xs);font-weight:700;color:var(--ink-2)}.fl__fleet,.fl__turn{display:flex;align-items:center;gap:var(--s-2);margin:0}.fl__pills{display:flex;gap:4px}.fl__pills i{width:calc(var(--len) * 7px + 4px);height:9px;border-radius:3px 6px 6px 3px;background:color-mix(in srgb,var(--accent) 45%,var(--sea-hi));box-shadow:inset 0 0 0 1px var(--accent)}.fl__pills .is-sunk{background:linear-gradient(to top right,transparent 42%,var(--danger) 42% 58%,transparent 58%),#1c232b;box-shadow:inset 0 0 0 1px var(--ink-3)}.fl__chip{padding:2px 9px;border:1px solid var(--hairline-strong);border-radius:var(--r-pill);color:var(--ink-3)}.fl__chip.is-on,.fl--live .fl__chip{border-color:var(--accent);background:rgb(53 200 240 / .14);color:var(--accent)}.fl__frame{display:grid;grid-template:". x" auto "y sea" auto / 20px auto;font-size:var(--fs-xs);color:var(--ink-3)}.fl__ax{display:grid;margin:0;padding:0;list-style:none;text-align:center;line-height:20px}.fl__ax--x{grid-area:x;grid-template-columns:repeat(8,var(--cell))}.fl__ax--y{grid-area:y;grid-template-rows:repeat(8,var(--cell));align-items:center}.fl__sea{grid-area:sea;position:relative;isolation:isolate;width:8em;height:8em;overflow:hidden;border-radius:.22em;background:radial-gradient(circle,var(--sea-hi),var(--sea) 78%);box-shadow:inset 0 0 0 1px rgb(53 200 240 / .3),0 24px 40px -22px #000,0 0 44px -14px rgb(53 200 240 / .45);font-size:var(--cell);line-height:1}.fl__grid,.fl__sweep,.fl__objs{position:absolute;inset:0}.fl__grid{background:repeating-radial-gradient(circle,transparent 0 1.96em,rgb(53 200 240 / .12) 1.96em 2em),linear-gradient(to right,var(--cyan-a) 1px,transparent 1px) 0 0 / 1em 1em,linear-gradient(var(--cyan-a) 1px,transparent 1px) 0 0 / 1em 1em}.fl__sweep{inset:-1.7em;border-radius:50%;background:conic-gradient(transparent 0 290deg,rgb(53 200 240 / .05) 320deg,rgb(53 200 240 / .18) 357deg,transparent 360deg)}.fl-ship,.fl-ghost,.fl-mk,.fl-rip,.fl-area,.fl-badge,.fl-ring,.fl-ret,.fl-fx{position:absolute;left:0;top:0;width:1em;height:1em;translate:calc(var(--x) * 1em) calc(var(--y) * 1em)}.fl-ship,.fl-ghost{z-index:2;width:calc(var(--len) * 1em);rotate:var(--a);color:var(--accent)}.fl-ship svg,.fl-ghost svg{display:block;width:100%;height:100%;overflow:visible}.fl-ship svg{filter:drop-shadow(0 0 .08em rgb(53 200 240 / .7))}.fl-ghost{z-index:1;opacity:.6}.fl-ship.is-wreck{z-index:1;color:#6c7a89}.fl-ship.is-wreck svg{filter:none}.fl-ship.is-wreck::after{content:"";position:absolute;inset:0;background:radial-gradient(circle,var(--breach) 0 .06em,#4a1e0c .09em .2em,transparent .22em) 0 0 / 1em 1em repeat-x}.is-veiled .fl-ship:not(.is-wreck),.is-veiled .fl-ghost{opacity:0}.fl-mk{z-index:3}.fl-mk::before{content:"";position:absolute;inset:.18em;border-radius:50%;background:radial-gradient(circle,#fff 0 10%,var(--ember) 24%,var(--breach) 48%,rgb(255 138 42 / 0) 72%);box-shadow:0 0 .2em rgb(255 138 42 / .7)}.fl-mk::after{content:"";position:absolute;left:.82em;top:.37em;width:.15em;height:.26em;background:var(--accent);clip-path:polygon(0 0,100% 50%,0 100%);transform-origin:-.32em 50%;rotate:var(--d,0deg);opacity:0}.fl-mk.is-moved::after{opacity:1}.fl-rip{z-index:1;opacity:calc(var(--life,1) * .85)}.fl-rip::before,.fl-rip::after{content:"";position:absolute;inset:.31em;border:.045em solid var(--foam);border-radius:50%}.fl-rip::after{inset:.15em;opacity:.55}.fl-area{z-index:4;width:calc(var(--w,3) * 1em - .08em);height:calc(var(--h,3) * 1em - .08em);margin:.04em;border:1.5px solid rgb(53 200 240 / .75);border-radius:.2em;background:rgb(53 200 240 / .12)}.fl-badge{z-index:5;display:grid;place-items:center}.fl-badge b{display:grid;place-items:center;width:1.9em;height:1.9em;border:2px solid var(--accent);border-radius:50%;background:rgb(6 23 34 / .92);box-shadow:0 0 10px rgb(53 200 240 / .5);color:#fff;font-size:.38em;font-weight:800}.fl-ring,.fl-fx{z-index:5;opacity:0;pointer-events:none}.fl-ring::before{content:"";position:absolute;inset:-2em;border:2px solid var(--accent);border-radius:50%}.fl-ret{z-index:4;border:2px solid var(--accent);border-radius:.16em;box-shadow:0 0 .25em rgb(53 200 240 / .6),inset 0 0 0 .3em rgb(53 200 240 / .12);opacity:0}.fl-fx::before{content:"";position:absolute;inset:-.35em;border-radius:50%;background:radial-gradient(circle,#fff 0,var(--ember) 24%,rgb(255 138 42 / .7) 48%,transparent 70%)}.fl-fx.is-miss::before{inset:.05em;border:.06em solid var(--foam);background:radial-gradient(circle,rgb(198 241 255 / .4),transparent 70%)}.fl__cells{position:absolute;inset:0;z-index:7;display:grid;grid-template-columns:repeat(8,1fr)}.fl__cell{position:relative;margin:0;padding:0;border:0;border-radius:.12em;background:transparent;cursor:crosshair}.fl__cell[aria-disabled="true"]{cursor:default}.fl__cell:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.fl__cell:not([aria-disabled="true"]):is(:hover,:focus-visible)::after{content:"";position:absolute;inset:.1em;border:2px solid rgb(53 200 240 / .85);border-radius:.14em;box-shadow:0 0 .3em rgb(53 200 240 / .45)}.is-aiming .fl__cell:is(:hover,:focus-visible)::before{content:"";position:absolute;inset:-1em;border:1.5px dashed var(--accent);border-radius:.2em;background:rgb(53 200 240 / .08);pointer-events:none}.fl__tools{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--s-2) var(--s-3)}.fl__tool{display:inline-flex;align-items:center;gap:var(--s-2);min-height:44px;padding:var(--s-1) var(--s-4);border:1px solid var(--hairline-strong);border-radius:var(--r-pill);background:rgb(255 255 255 / .03);color:var(--ink-2);font:inherit;font-size:var(--fs-s);font-weight:700;cursor:pointer}.fl__tool[aria-pressed="true"]{border-color:var(--accent);background:rgb(53 200 240 / .14);color:var(--ink)}.fl__tool[aria-disabled="true"]{opacity:.5;cursor:default}.fl__tool:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.fl__ic{flex:none;width:18px;height:18px;border-radius:50%;color:var(--accent)}.fl__ic--sonar{background:radial-gradient(circle,currentColor 0 2px,transparent 2.5px 4.5px,currentColor 5px 6.5px,transparent 7px 8px,currentColor 8.5px);mask-image:radial-gradient(circle,#000 9px,transparent 9px)}.fl__ic--eye{height:12px;border:2px solid currentColor;background:radial-gradient(circle,currentColor 0 2.5px,transparent 3px)}@media (hover:hover) and (pointer:fine){.fl__tool:not([aria-disabled="true"]):hover{background:var(--raised-high)}}.fl--live .fl-ship:not(.is-wreck){translate:calc(var(--x1) * 1em) calc(var(--y1) * 1em);rotate:var(--a1)}.fl--live .fl-ghost{translate:calc(var(--x0) * 1em) calc(var(--y0) * 1em);rotate:var(--a0)}.fl--live .fl-area,.fl--live .fl-badge{opacity:0}.fl--live .fl-mk{--d:var(--d1);translate:calc(var(--x1) * 1em) calc(var(--y1) * 1em)}.fl__status{display:grid;align-items:center;min-height:44px;margin:0;text-align:center;font-size:var(--fs-s);font-weight:700;color:var(--ink-2)}.fl__status span{grid-area:1 / 1;opacity:0}.fl__status span:nth-child(3){opacity:1}}@layer game{@media (prefers-reduced-motion:no-preference){.fl .fl__sweep{animation:fl-spin 8s linear infinite;animation-play-state:var(--play,running)}.fl-radar__sweep{animation:fl-spin 10s linear infinite}.fl-radar__ring{animation:fl-sonar 4.5s var(--ease-out) infinite}.fl-radar__ring:nth-of-type(4){animation-delay:1.5s}.fl-radar__ring:nth-of-type(5){animation-delay:3s}body[data-game="drifting-fleet"] .g-scene__plane::after{animation:fl-caustic 30s linear infinite}body[data-game="drifting-fleet"] .g-scene__plane::before{animation:fl-caustic-b 22s linear infinite}[data-offscreen] .fl-radar i,body[data-game="drifting-fleet"] [data-offscreen] .g-scene__plane::before,body[data-game="drifting-fleet"] [data-offscreen] .g-scene__plane::after{animation-play-state:paused}@keyframes fl-spin{to{rotate:360deg}}@keyframes fl-sonar{from{opacity:.8;scale:.15}to{opacity:0;scale:1}}@keyframes fl-caustic{to{translate:-340px -230px}}@keyframes fl-caustic-b{to{translate:230px -170px}}.fl--play .fl-ship,.fl--play .fl-mk{transition:translate 640ms var(--ease-shift),rotate 640ms var(--ease-shift),opacity 240ms var(--ease-out)}.fl--play .fl-ghost,.fl--play .fl-rip,.fl--play .fl-mk::after,.fl__chip{transition:opacity 400ms var(--ease-out)}.fl--play .fl-mk::before{animation:fl-flame 1.1s ease-in-out infinite alternate}.fl--play .fl-ghost{animation:fl-in 400ms var(--ease-out)}.fl__tool{transition:background-color var(--dur-hover) var(--ease-out),border-color var(--dur-hover) var(--ease-out)}@keyframes fl-flame{from{scale:.86}to{scale:1.12}}@keyframes fl-in{from{opacity:0}}.fl--live .fl-a{animation-duration:12s;animation-iteration-count:infinite;animation-timing-function:var(--ease-out);animation-play-state:var(--play,running)}.fl--live .fl__objs{animation:fl-layer 12s linear infinite;animation-play-state:var(--play,running)}.fl--live .fl-ship.fl-a{animation-name:fl-move;animation-timing-function:var(--ease-shift)}.fl--live .fl-ghost{animation-name:fl-ghost}.fl--live .fl-mk{animation-name:fl-mk;animation-timing-function:var(--ease-shift)}.fl--live .fl-mk::after{animation:fl-chev 12s infinite;animation-play-state:var(--play,running)}.fl--live .fl-area{animation-name:fl-area}.fl--live .fl-badge{animation-name:fl-badge}.fl--live .fl-ring{animation-name:fl-ring;animation-delay:calc(.72s + var(--i) * .18s)}.fl--live .fl-ret{animation-name:fl-ret}.fl--live .fl-fx{animation-name:fl-fx}.fl--live .fl__chip{animation-name:fl-chip}.fl--live .fl__status span:nth-child(1){animation-name:fl-st1}.fl--live .fl__status span:nth-child(2){animation-name:fl-st2}.fl--live .fl__status span:nth-child(3){animation-name:fl-st3}.fl--live .fl__status span:nth-child(4){animation-name:fl-st4}@keyframes fl-layer{0%{opacity:0}3%,90%{opacity:1}94%,100%{opacity:0}}@keyframes fl-move{0%,52%{translate:calc(var(--x0) * 1em) calc(var(--y0) * 1em);rotate:var(--a0)}57.3%,72%{translate:calc(var(--x1) * 1em) calc(var(--y1) * 1em);rotate:var(--a1)}77.3%,100%{translate:calc(var(--x2) * 1em) calc(var(--y2) * 1em);rotate:var(--a2)}}@keyframes fl-ghost{0%,52%{opacity:0;translate:calc(var(--x0) * 1em) calc(var(--y0) * 1em);rotate:var(--a0)}55%,71%{opacity:.6;translate:calc(var(--x0) * 1em) calc(var(--y0) * 1em);rotate:var(--a0)}72%{opacity:0;translate:calc(var(--x0) * 1em) calc(var(--y0) * 1em);rotate:var(--a0)}72.1%{opacity:0;translate:calc(var(--x1) * 1em) calc(var(--y1) * 1em);rotate:var(--a1)}75%,100%{opacity:.6;translate:calc(var(--x1) * 1em) calc(var(--y1) * 1em);rotate:var(--a1)}}@keyframes fl-mk{0%,44.9%{opacity:0;scale:.4;translate:calc(var(--x0) * 1em) calc(var(--y0) * 1em)}46%,52%{opacity:1;scale:1;translate:calc(var(--x0) * 1em) calc(var(--y0) * 1em)}57.3%,72%{opacity:1;scale:1;translate:calc(var(--x1) * 1em) calc(var(--y1) * 1em)}77.3%,100%{opacity:1;scale:1;translate:calc(var(--x2) * 1em) calc(var(--y2) * 1em)}}@keyframes fl-chev{0%,54%{opacity:0}57%,100%{opacity:1}}@keyframes fl-area{0%,6%{opacity:0;scale:.96}7.5%,29%{opacity:1;scale:1}31%,100%{opacity:0;scale:1}}@keyframes fl-badge{0%,8%{opacity:0;scale:.8}10%,29%{opacity:1;scale:1}31%,100%{opacity:0;scale:1}}@keyframes fl-ring{0%{opacity:.8;scale:.12}6.25%,100%{opacity:0;scale:1}}@keyframes fl-ret{0%,32%{opacity:0;scale:1.2}34%,43%{opacity:1;scale:1}45%,100%{opacity:0;scale:1}}@keyframes fl-fx{0%,43.9%{opacity:0;scale:.3}44%{opacity:1;scale:.3}45.5%{opacity:1;scale:1}48%,100%{opacity:0;scale:1.5}}@keyframes fl-chip{0%,51%,60%,71%,80%,100%{opacity:.35}52%,58%,72%,78%{opacity:1}}@keyframes fl-st1{0%,6%{opacity:0}8%,29%{opacity:1}31%,100%{opacity:0}}@keyframes fl-st2{0%,31%{opacity:0}33%,43%{opacity:1}45%,100%{opacity:0}}@keyframes fl-st3{0%,44%{opacity:0}46%,51%{opacity:1}53%,100%{opacity:0}}@keyframes fl-st4{0%,52%{opacity:0}54%,100%{opacity:1}}}}