@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-hebrew-wght-normal-DdnsCkLr.woff2)format("woff2-variations");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-latin-ext-wght-normal-CYrqKuxd.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fredoka Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/fredoka-latin-wght-normal-DM6njrJ3.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lilita One;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAAVoAA8AAAAACegAAAUTAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbDBwYBmAAbBEIColciA0LHgABNgIkAzgEIAWDZAc+DAcb9QdRlE5OmOBngm2rYa0IiBSU4SB6GXpb1ovxAEMb3kc8/X6ve+4LIEoWKsKQjE0KaAS5si8LV935qoC6jkBWl99PeNa/acrMsmIWkJM7J2fiwyD6/rZ3nySQEEJPI2+8mQgCjl/7/xfCPjhmumgbjyJtDTLAgZRI5C2Lsyg9Ej+AogCfIgpT4Glg/xqJD/gP3cxixar09EqCLkAR0S2CjsmOByOgCZ096O8EMaNtszM3NFMavYQr9Cp5x9dfFA/5c6zg2Tty8yAadUVizTiA6qa3QCC/ewmYw2NFVjA0W0NfnG8fGGCFUMwlNjUZzmSW9PlG/R/AyDGpxk28hPlctcMi84z8m/D+t4A8BCJ1LJF6PM8poA/kPvkJWDJ1K8BaUZaAFU7lYnST2ctUYrFxdcncWZ+9iCBZ7QpGtRZjgknaiROuAw9zmuW0fBVJAuYMq2n1OtKMXVFHky8Q0hrFz5fHL9r+nEPMnjt7HmivMC8x91xDA/1M/oAFOmT59tOnXR4D/SyfffGCednGaXbT8vxlrLJwBWKuYq7gZdFz7CSU+gIt6kE7uc+Qo2v37Ql5HkHKQsxRQtvGGz2XFwMdv411vIFQ6YqXmDMUlNIsQgwHBXRRFWtcw+hMzOajmR59mMsOuWmOF4yqrMx9tIxFTBfJL+Ii0RlIK4ImubT7MpIsjraaeanajTm7MtJOmW4rxrqXFRkT0If2oT0spW5rQzzafpjguAN9hiRinFZih+0AJ4zTkDbS8Uh95LjURmGlmKaOU1gqqpGTVk+skg4HuviVSNOtxkAukjRmgehpuFJzeK1lTT5P1BR1/PNEQdrPnuV+BTaWg//+kPhs+NC04dbkEaOaIOzcWmf+0GCvjO57t/beypjctoHZoyi8WpYUkmvITj8o+TTCOX91Xp24bnVevsQkk/AmUsZTIOZotreXUWEZNO7bn9qWsbLZpFW6JvXu9NXJzKKH42p+jchuqW1L6vNy1e9301q7tfmbr/QZMkUOD899Yd14NHBLo/SjF5cCSkjT2NHk135OQk4wT8IJPl3A+KVAmsC6w9Yzeb5ippX3NAv4svYkQsqFgb5lm1UzJZ7DRrsvW6fPCvnquOaJ3AZkUSKvIgyXf96PrZJ0kgSzaEuXOoX1hffmtOr/WYZ+xra+RIUo1WFKdehUQIrG3y5m3i9eznH2AwnYJE9dQSY4kM2VOdnutWqt4pcfeb+k1NlrCD2P3ZO5XLekNz+2uPpKb/XJ2t0NUfOkPccR0vHefWSNS4H/BGiupbdcml/BnXeommkZlIk13/I8D/sOQlw8z33xfpVl+C/GxBeA17vkDn3BYWv7dXrdRJsCQnVz7EH1QwnxcArxoPR47glkG2iQNwSZIChqhlyhaVP9a/045AZNdsyOfJGctxwg9NgmBAURbAFAm+MIaZIADY94zBhygFn0uMesbKlubVJlNpuQyGwxwB96jhQ4qR9Qu4XyKu1Tp1cLH/p5ZE990E5DFwpNaqksidKBtoMWVahBSjs1KNRwaI2gi380ig9P3rz5SjWgRqcMBWu/Q2sDMrNLKOq0U7MWT/ny5gPGn6tBkwHtavQaVcbp0m0kfWtTWctTnNVxceak0ulKzTpDe6uiNRqHjom7XY06zVt5qtVilAt3lKFEEM26JK19bwCDFNQf9sQgYUrmZO1Qm5ZiW0CGLZ6Hyvq4TZke5H+6xGcf+8Snzvruczt8Mu1G9R7wrwIAAA==)format("woff2"),url(data:font/woff;base64,d09GRgABAAAAAAdoAA4AAAAACcgAAQABAAAAAAAAAAAAAAAAAAAAAAAAAABHREVGAAABRAAAABYAAAAWABEADkdQT1MAAAFcAAAADAAAAAwAFQAKR1NVQgAAAWgAAAAYAAAAGGyKdIVPUy8yAAABgAAAAE8AAABgZgH8y2NtYXAAAAHQAAAAUwAAAGxDUOfcZ2FzcAAAAiQAAAAIAAAACAAAABBnbHlmAAACLAAAA1QAAATSWeRXtGhlYWQAAAWAAAAAMgAAADb4vFe7aGhlYQAABbQAAAAeAAAAJAbhAvBobXR4AAAF1AAAADgAAAA4FcIAhmxvY2EAAAYMAAAAHgAAAB4HgwZJbWF4cAAABiwAAAAYAAAAIAAVAE5uYW1lAAAGRAAAAPIAAAHkJa9Cm3Bvc3QAAAc4AAAALwAAAD4DnwR9AAEAAAAMAAAAAAAAAAIAAQABAA0AAQAAAAEAAAAKAAoACgAAAAEAAAAKABYAFgABbGF0bgAIAAAAAAAAeNpjYGJczjiBgZWBgWkPUxcDA0MPhGa8y2DE8AsoygADDQwMugxIICAyKJjBgUFBQYF51n9VBgbm2Qx3gMKMDCDiF9MBIKXAwAQAu3UOIwB42mNgYGACYmYgFgGSjGCahSECSAsxCDAwA2UVGJ0YExkrGOsYJzEdV1D4/5+BASjmyJgAFKuFif1//O/wv2X/Jvzr+Vf51/X+W6BJGAAA3YQYRQAAAQAB//8AD3jabJQDtOtKFIb3nkmTpkqRSWqeukdBr23bNheebXvx2bZtLz7b9uLTcnsnBxe9J8bM/N8mILgA8E3yNlQARoUK+XLJGtUchyF+NXWNhUxD11RJrCMbeirk8qXpubBbENzhnBGL2sbmwZfN1zp3Mdx6MuiOoyelJJUUsqBIBVFp/TXwekZVr6o1n6PabuGx5FVIARTVQmkCHqZsHi6LbOfi8YMC47esmDT4NMkto/TRoMJWhUqt6waegUCq/T/+Q6+BGkwAGJVGw7Z6KF+5aRqarjJVlEp5puppqmvOS74HrSY6WgqK+V4s2c5IvTk/smFFdHLWDlTO2zv7VNKQJ+8outPl7rh94mnjt8xO4wJZUcXrJbd0vZiXyZln/KtYOUVPh8pszKOnZGKUFvaJuS4tJAQiqaixdN/FRB27dAl5VEtXXMsFYblLzlhz5wInjnHi+8hbUIAmJ9ZMTlx2MAxtgLbAcdNkgLaQL9kj0k5d0pu2zth/zZ66u24k2Oii3rd336zjE9jooHyynylR8/i5C7NxbTaNRnyhmBouTVi8ra+WnEgSHXC0/V/7P3ISvQA0SEMJAB0vSpTxwPBoTUBa4h8ySNX8BLQMpg/d8Ur/calF9P1RyWZi1GfC2sxpvjnWZZf9etll5PaCW2xN+z0kCVQK/4ivid6uL7Eiui6XXVcNXB2PFPklTq+AFPQBRAbzwswZmipR0zgsC61RiZFCF5KoS2Z4QbAf/3wGUZMF0au3TpN76Z/nd/iDiD2RnljPeQFs3dSnG0njlLSA+/CiEaIEgA/xKGlQdZhsawBIwVEGUwdhJmHkaJi6FMFJUh++/nDQ42u9qtTIK5d0MODy+gmrvfivb1Zi5nZGvsN9nerYvrs9Ad/l6nX+wgWduqBOOlhNJ2FGRQocyKmdURPRdPImgHYpryCe7A2J0txS9Fl7bpec7a24ijO8Lo9nBvVuWtzYls1m50gU/80bXYHW2Y/Fral+ZuGJGTUxStuzNBZndp4wiwHCbOLDm7l+GGAEj+OxnW59q8MEhGL7UXyefAMFAAw58eM5fqjb2IPdJoXD0cVaSgmkUsdFJCrI4QMrBHOKgBxWDiHGaf8sIKUA4wlZXlkB2a0Q3lYwhwEAvBLSq3jaY2BkYADi5t8fKo7F89t8ZeBmfsEABKd1OU/B6P9d/1WYdzLPBnI5GJhAogCeEw3qAAB42mNgZGBgnv1fBUi++9/1/zzzTqAIKuADAKY3BtYAAADHAAAAAAAAAU0AAAC8AAAB1QAFAX0ABQIYAB0BwgAZAmf/9QIzACUBxgAZAab/pgHjAEgB2wAlAAAAAAAAAAAAAAA7AGcAwAEOAUkBkwHSAhICMwJpAAB42mNgZGBg4GPwZWBjAAIgDw0AAAnZAGR42m2OBWoDQBREX929WLFPkLoXC1J3V5y4u8tpeoKeoFhOlgHiCWuzY3xgkiAjDI1OAf/UGniIVf4aeJh5fht4hDPcDTza4RljjZsGHmeZkwaeF4Iwea00Tva1cvjIEtE/L7ynEyGuNyU2JP2VG560xOrk8YhJEuBHJ4vcpPQ3DpU50DrigQIecc9IIY+a5BUj5MS6uqzRJp4jpQ+1PvQPqSMuPTvQfUmKNBWy4kOEpRkb+NjsaLHWHDZwEiWINhxniCchNq6/j7DuPbxqr6pzB6MknBdvaDpyOlmKuv1ibhrtxotyCaQLOwZO7qgDp2hIawAAeNptwUkBgCAAALCJf8MY0TA24EUa7hhQgE0AVvQ6eXAJbkXVdMkw/bJvA722ChwA)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lilita One;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lilita-one-latin-400-normal-87r-Z-Re.woff2)format("woff2"),url(/assets/lilita-one-latin-400-normal-DXkechA3.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--brand:#b52d12;--ink:#1e0f08;--wood:#4a2412;--wood-2:#5c2f18;--wood-3:#6e3a1f;--iron:#4d6475;--iron-line:#8fa3b1;--night:#1d2129;--night-glow:#3c4552;--night-deep:#121419;--moonlight:#c9d6ea;--parchment:#fbecc9;--parchment-2:#efd8a8;--parchment-ink:#3a1d0e;--gold:#fdbb21;--gold-ink:#3b2400;--sky:#7cc6ee;--ocean:#2d7fbf;--haze:#fbecc9;--band:#1e0f08db;--band-2:#140a05e6;--band-see:#1e0f08c7;--line:#8fa3b166;--text:var(--parchment);--text-dim:#dcc39a;--text-faint:#c9a878;--danger:#ff8a7c;--danger-bg:#a3200f;--good:#8fe39a;--silver:#d9e1e6;--bronze:#e39a5a;--focus:var(--gold);--radius:12px;--radius-lg:18px;--shadow:0 8px 22px #1e0f0842;--shadow-lg:0 16px 40px #1e0f0857;--font:"Fredoka Variable", "Nunito", system-ui, sans-serif;--font-display:"Lilita One", var(--font);--edge:2px solid #1e0f08d9;--bevel:3px;--lift-pressed:0 1px 0 #1e0f088c;--rim:inset 0 0 0 1px #fff4dc24;--rim-light:inset 0 0 0 2px #fff4dc80;--shade:inset 0 -3px 0 #1e0f0829;--gloss:inset 0 3px 0 #ffffff47;--glass:#1e0f087a;--glass-deep:#1e0f08d6;--text-drop:0 2px 0 #1e0f0899;--art-drop:drop-shadow(0 2px 0 #1e0f0866);--face-wood:linear-gradient(#9a6034, #6e3a1f 70%);--face-gold:linear-gradient(#ffdb6b, #fdbb21 55%, #f0a414);--face-iron:linear-gradient(#7590a3, #4d6475 70%);--face-paper:linear-gradient(#fff7e4, #e9d3a6);--face-red:linear-gradient(#c43b1f, #a3200f 70%);--gutter:max(16px, env(safe-area-inset-left))}*,:before,:after{box-sizing:border-box;--lift:0 var(--bevel) 0 #1e0f088c, 0 calc(var(--bevel) + 2px) 10px #1e0f083d}html,body,#root{height:100%;margin:0;overflow:hidden}html,body{overscroll-behavior:none;touch-action:manipulation}body{font-family:var(--font);color:var(--text);background:linear-gradient(var(--sky), var(--haze)) fixed;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;font-variant-numeric:tabular-nums;font-size:16px;line-height:1.35}img{-webkit-user-drag:none}button{font:inherit;color:inherit}button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus);outline-offset:2px}::selection{background:var(--gold);color:var(--gold-ink)}.icon{vertical-align:-.14em;flex:none}h1,h2,h3{margin:0;font-weight:600;line-height:1.15}.outlined,.panel :is(h1,h2,h3),.band :is(h2,h3){font-family:var(--font-display);letter-spacing:.02em;-webkit-text-stroke:var(--stroke-w,.16em) var(--ink);paint-order:stroke fill;color:var(--parchment);font-style:normal;font-weight:400}.muted{color:var(--text-dim)}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.fineprint{color:var(--text-faint);margin:12px 0 0;font-size:12px}.row{align-items:center;gap:12px;display:flex}.row.center{justify-content:center}.row.spread{justify-content:space-between}.stack{gap:10px;display:grid}.app{width:100%;height:100%;position:relative}.viewport{touch-action:none;position:absolute;inset:0}.viewport canvas{cursor:pointer;animation:.45s ease-out fade-in;display:block}@keyframes fade-in{0%{opacity:0}}.panel{background:var(--glass-deep);color:var(--text);border-radius:var(--radius-lg);box-shadow:var(--rim), var(--shadow-lg);-webkit-backdrop-filter:blur(14px)saturate(1.2);backdrop-filter:blur(14px)saturate(1.2);border:0}.paper{background:var(--face-paper);color:var(--parchment-ink);border:var(--edge);border-radius:var(--radius);box-shadow:var(--rim-light)}.band{background:var(--band);box-shadow:inset 0 1px #fff4dc29}.band.deep,.panel:where(.deep){background:var(--band-2)}.panel:where(.deep){box-shadow:var(--rim)}.btn{cursor:pointer;min-height:46px;margin-bottom:var(--bevel);border:var(--edge);border-radius:var(--radius);box-shadow:var(--lift), var(--rim-light), var(--gloss);background:var(--face-wood);color:var(--parchment);font:400 18px var(--font-display);letter-spacing:.02em;justify-content:center;align-items:center;gap:8px;padding:0 22px;transition:transform 70ms ease-out,box-shadow 70ms ease-out,filter .12s;display:inline-flex}.btn:hover{filter:brightness(1.06)}.btn:active{transform:translateY(calc(var(--bevel) - 1px));box-shadow:var(--lift-pressed), var(--rim-light)}.btn.primary{background:var(--face-gold);color:var(--gold-ink)}.btn.primary[aria-disabled=true]{background:var(--face-wood);color:var(--parchment);filter:saturate(.6)}.btn[aria-disabled=true],.btn:disabled{cursor:not-allowed}.btn:disabled{opacity:.6}.btn[aria-disabled=true]:active,.btn:disabled:active{box-shadow:var(--lift), var(--rim-light), var(--gloss);transform:none}.btn.ghost{background:var(--face-paper);color:var(--parchment-ink)}.btn.danger{background:var(--face-red);color:var(--parchment)}.btn.tiny{--bevel:2px;border-radius:10px;min-height:34px;padding:0 12px;font-size:15px;position:relative}.btn.tiny:after{content:"";position:absolute;inset:-6px -2px}.btn.tiny:not(.primary,.ghost,.danger){background:var(--face-iron)}.btn.wide{min-width:140px}.btn.icon{width:46px;padding:0}.btn.big{border-radius:var(--radius-lg);text-transform:uppercase;min-height:58px;padding:0 32px;font-size:23px}.btn.hero{border-radius:var(--radius-lg);text-transform:uppercase;min-width:260px;min-height:62px;padding:0 34px;font-size:clamp(22px,5.6vw,28px)}.disc{border:var(--ring,2px) solid #1e0f08d9;background:var(--face-wood);color:var(--parchment);box-shadow:var(--lift), var(--rim-light), var(--gloss);border-radius:50%;flex:none;place-items:center;padding:0;transition:transform 70ms ease-out,box-shadow 70ms ease-out,background-color .12s;display:grid;position:relative}.disc.iron{background:var(--face-iron)}.disc.gold{background:var(--face-gold);color:var(--gold-ink)}.disc.paper{background:var(--face-paper);color:var(--parchment-ink)}.disc.flat{box-shadow:var(--rim-light)}button.disc{cursor:pointer}button.disc:hover,button:not(:disabled):hover>.disc:not(.flat){transform:scale(1.05)}button.disc:active,button:not(:disabled):active>.disc:not(.flat){box-shadow:var(--lift-pressed), var(--rim-light);transform:translateY(2px)}button.disc.paper:hover{filter:brightness(.96);transform:none}button.disc:disabled{opacity:.45;cursor:not-allowed;transform:none}.crest{--notch:polygon(0 0, 100% 0, 100% 100%, 50% 84%, 0 100%);background:var(--ink);width:84px;height:100px;clip-path:var(--notch);place-items:center;transition:transform .12s;display:grid;position:relative}.crest:before{content:"";background:var(--tribe);clip-path:var(--notch);position:absolute;inset:3px 3px 4px}.crest>*{position:relative}.crest>img{width:76px;height:76px;margin-top:-22px}.ribbon{background:var(--tribe);border:2px solid var(--ink);white-space:nowrap;--stroke-w:3px;border-bottom-width:3px;border-radius:3px;align-items:center;gap:6px;padding:1px 10px 0;font-size:15px;display:flex;position:relative}.ribbon:before,.ribbon:after{content:"";background:var(--ink);width:11px;position:absolute;top:5px;bottom:-6px}.ribbon:before{clip-path:polygon(0 0,100% 0,100% 100%,0 100%,45% 50%);left:-11px}.ribbon:after{clip-path:polygon(0 0,100% 0,55% 50%,100% 100%,0 100%);right:-11px}.paper :focus-visible{outline-color:var(--ink)}.icon-btn{width:44px;height:44px}.back-btn{top:max(14px, env(safe-area-inset-top));left:var(--gutter);z-index:5;width:56px;height:56px;position:absolute}.glass{border-radius:var(--radius-lg);background:color-mix(in srgb, var(--night-deep) 64%, transparent);color:var(--parchment);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.topbar{z-index:2;padding:max(10px, env(safe-area-inset-top)) var(--gutter) 0;pointer-events:none;justify-content:space-between;align-items:flex-start;gap:12px;display:flex;position:absolute;top:0;left:0;right:0}@media (min-width:1000px) and (min-height:700px){.topbar,.dock{zoom:1.35}}.hud-corner{flex:none;align-items:center;gap:8px;display:flex}.hud-corner>*,.race>*{pointer-events:auto}.race{align-items:stretch;gap:8px;display:flex}.plaque{border-radius:var(--radius);background:var(--glass);min-height:44px;color:var(--text);font:inherit;text-align:left;border:none;align-items:center;gap:8px;padding:4px 12px;display:flex;position:relative}button.plaque{cursor:pointer}button.plaque:disabled{cursor:default}.plaque b{font:400 22px / 1.05 var(--font-display);--stroke-w:3.5px;text-shadow:var(--text-drop);white-space:nowrap}.plaque b.gold{color:var(--gold)}.plaque b.silver{color:var(--silver)}.plaque b.bronze{color:var(--bronze)}.plaque.standings{margin-left:4px;padding-left:0}.plaque-head{border:var(--edge);border-radius:var(--radius);background:var(--face-iron);width:52px;height:52px;box-shadow:var(--lift);object-fit:cover;margin:-6px 0 -6px -8px}.plaque.turn{justify-content:center;min-width:76px;overflow:hidden}.plaque.turn b{z-index:1;position:relative}.plaque.turn.last b{color:var(--gold)}.plaque.turn.last .track>i{background:color-mix(in srgb, var(--gold) 45%, transparent)}.track{position:absolute;inset:0}.track>i{background:color-mix(in srgb, var(--parchment-2) 26%, transparent);height:100%;box-shadow:inset -2px 0 0 color-mix(in srgb, var(--parchment) 45%, transparent);display:block}.plaque.wallet{margin-right:6px;padding-right:0}.plaque.wallet .star-target{margin:-10px -14px -10px -2px}.star-target img{width:52px;height:52px;filter:var(--art-drop);display:block}.plaque.wallet b{font-variant-numeric:tabular-nums;font-size:26px}.gain{border:var(--edge);box-shadow:var(--rim-light);color:var(--parchment);font:400 14px / 18px var(--font-display);background:#2b742f;border-radius:8px;padding:0 6px}@media (max-width:480px){.topbar,.hud-corner,.race{gap:6px}.plaque{gap:4px;padding:4px 8px}.plaque b{--stroke-w:3px;font-size:19px}.plaque-head{width:46px;height:46px;margin:-4px 0 -4px -6px}.plaque.wallet .star-target{margin:-8px -12px -8px -2px}.star-target img{width:46px;height:46px}.plaque.turn{min-width:64px}.plaque.wallet b{font-size:22px}.gain{padding:0 4px}.app>.topbar:has(.clock) .gain{display:none}}.tile{border:var(--edge);background:var(--face-wood);color:var(--text);box-shadow:var(--lift), var(--rim-light), var(--gloss);cursor:pointer;font:inherit;border-radius:16px;flex-direction:column;justify-content:flex-end;align-items:center;margin-bottom:3px;padding:0 6px 6px;transition:transform 70ms ease-out,box-shadow 70ms ease-out;display:flex;position:relative}.tile:active:not(:disabled){box-shadow:var(--lift-pressed), var(--rim-light);transform:translateY(2px)}.tile:disabled{opacity:.45;cursor:not-allowed}.tile.gold{background:var(--face-gold)}.tile:before{content:"";position:absolute;inset:-12px 0 0}.tile>img{width:104%;height:104%;filter:var(--art-drop);pointer-events:none;position:absolute;top:38%;left:50%;transform:translate(-50%,-50%)}.tile-label{font:400 15px / 1 var(--font-display);--stroke-w:3.5px;text-shadow:var(--text-drop);white-space:nowrap;margin-bottom:5px;position:relative}.tile .badge{top:-10px;right:-10px}.badge.quiet{background:var(--parchment);color:var(--parchment-ink)}.tile.research,.tile.command{width:92px;height:92px;padding:0 4px}.tile.research.ready{background:var(--face-iron);animation:1.2s ease-out research-lit}@keyframes research-lit{30%{box-shadow:var(--lift), var(--rim-light), var(--gloss), 0 0 0 6px color-mix(in srgb, var(--parchment) 55%, transparent)}}.plaque.clock{flex-direction:row;align-items:center}.plaque.clock .value{font:400 20px / 1.05 var(--font-display);--stroke-w:3.5px;text-shadow:var(--text-drop);font-variant-numeric:tabular-nums;align-items:center;gap:5px;display:inline-flex}.plaque.clock .value .icon{color:var(--parchment);stroke:var(--ink);stroke-width:2px}.plaque.clock.low .value .icon{color:var(--danger)}.plaque.clock.idle{opacity:.7}.plaque.clock.low .value{color:var(--danger);transform-origin:0 100%;animation:1s ease-out clock-pop}@keyframes clock-pop{0%{transform:scale(1.15)}35%{transform:scale(1)}}.clock-gain{color:var(--good);white-space:nowrap;--stroke-w:4px;font-size:18px;animation:1.8s ease-out forwards clock-gain;position:absolute;top:100%;left:50%}@keyframes clock-gain{0%{opacity:0;transform:translate(-50%,8px)}15%,70%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-10px)}}.clock-edge{z-index:9;pointer-events:none;background:radial-gradient(ellipse at center, transparent 50%, color-mix(in srgb, var(--danger-bg) 60%, transparent) 100%);animation:1s ease-out forwards clock-edge;position:absolute;inset:0}@keyframes clock-edge{0%{opacity:1}to{opacity:.3}}@media (prefers-reduced-motion:reduce){.plaque.clock.low .value,.clock-gain,.clock-edge{animation:none}.clock-gain{display:none}.clock-edge{opacity:.6}}@keyframes pop-in{0%{opacity:0;transform:translateY(-6px)}}.toast{z-index:30;--bevel:4px;background:var(--danger-bg);box-shadow:var(--lift);text-align:center;border-radius:12px;max-width:calc(100% - 32px);padding:8px 18px;font-weight:600;position:absolute;top:108px;left:50%;transform:translate(-50%)}.map-vignette{pointer-events:none;background:radial-gradient(at 50% 45%,#05080e00 45%,#05080e9e 100%);position:absolute;inset:0}.city-labels{pointer-events:none;z-index:1;position:absolute;inset:0;overflow:hidden}.city-label{will-change:transform;justify-items:center;gap:3px;transition:opacity .15s;display:grid;position:absolute;top:0;left:0}.city-label.muted{opacity:.25}.city-label.under-hud{opacity:0}.city-label.focused>*{animation:.9s ease-in-out infinite label-bounce}.city-label.focused .cl-name{box-shadow:0 0 0 2px var(--gold), 0 2px 6px #1e0f0840}@keyframes label-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.cl-name{box-shadow:0 2px 6px #1e0f0840}.cl-name .crown,.cl-name .inc,.cl-name .link{color:var(--gold)}.cl-name .link{filter:drop-shadow(0 0 1px var(--ink)) drop-shadow(0 0 1px var(--ink));display:inline-flex}.city-label.light .cl-name{color:var(--parchment-ink);--stroke-w:0}.city-label.light .cl-name .crown,.city-label.light .cl-name .inc,.city-label.light .cl-name .link{color:var(--parchment-ink)}.cl-name .siege-glow{border-radius:inherit;box-shadow:0 0 0 3px var(--danger), 0 0 16px 3px var(--danger);opacity:.35;pointer-events:none;animation:.98s ease-in-out infinite alternate siege-glow;position:absolute;inset:-3px}@keyframes siege-glow{to{opacity:1}}.cl-name .inc.siege{color:var(--danger)}.city-label.light .cl-name .inc.siege{color:var(--danger-bg)}@media (prefers-reduced-motion:reduce){.cl-name .siege-glow{opacity:1;animation:none}}.cl-bars{border:2px solid var(--ink);background:var(--parchment);border-radius:6px;gap:2px;padding:2px;display:flex}.cl-bars .bar{background:color-mix(in srgb, var(--parchment-2) 80%, var(--ink));border-radius:3px;place-items:center;width:16px;height:9px;display:grid;position:relative}.cl-bars .bar.on{background:var(--iron)}.cl-bars .bar.neg{background:var(--danger)}.cl-bars .bar b{background:var(--ink);border-radius:50%;width:5px;height:5px}.cl-bars .bar.on b{background:var(--parchment)}.cl-bars .bar.on.fresh{animation:.4s ease-out both bar-fill}@keyframes bar-fill{0%{background:var(--parchment-2);transform:scale(.7)}60%{background:var(--gold);transform:scale(1.45,1.6)}to{background:var(--iron);transform:scale(1)}}.city-label.leveled>*{animation:.6s cubic-bezier(.3,1.6,.5,1) both label-level}@keyframes label-level{0%{transform:scale(1)}35%{filter:drop-shadow(0 0 6px color-mix(in srgb, var(--gold) 90%, transparent));transform:scale(1.35)translateY(-6px)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.cl-bars .bar.on.fresh,.city-label.leveled>*{animation:none}}.dock{z-index:2;padding:26px var(--gutter) max(12px, env(safe-area-inset-bottom));pointer-events:none;justify-content:space-between;align-items:flex-end;gap:12px;display:flex;position:absolute;bottom:0;left:0;right:0}.settings-btn{margin-right:4px}.dock>.tile.research{pointer-events:auto}.commands{pointer-events:auto;gap:10px;display:flex}.waiting{pointer-events:auto;background:var(--band-see);width:194px;min-height:92px;color:var(--text);text-align:center;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:6px;margin-bottom:3px;padding:8px 10px;font-size:14px;font-weight:600;display:flex}.tile.command.glow{animation:1.8s ease-in-out infinite tile-breathe}@keyframes breathe{50%{box-shadow:var(--lift), var(--shade), var(--gloss), 0 0 0 8px color-mix(in srgb, var(--gold) 35%, transparent)}}@keyframes tile-breathe{50%{box-shadow:var(--lift), var(--rim-light), var(--gloss), 0 0 0 8px color-mix(in srgb, var(--gold) 35%, transparent)}}.badge{border:2px solid var(--parchment);min-width:26px;height:26px;box-shadow:0 0 0 1.5px var(--ink), var(--lift-pressed);background:var(--gold);color:var(--gold-ink);font:400 14px / 22px var(--font-display);border-radius:13px;padding:0 6px;position:absolute;top:-8px;right:-8px}.selection{z-index:2;position:absolute;bottom:0;left:0;right:0}.infobar{--bar-pad:max(var(--gutter), calc((100% - 680px) / 2));min-height:64px;padding:6px var(--bar-pad) 8px;background:var(--band-see);align-items:center;gap:12px;display:flex}.selection>.infobar:last-child{padding-bottom:max(8px, env(safe-area-inset-bottom))}.info-thumb{cursor:pointer;pointer-events:none;background:0 0;border:0;flex:none;width:84px;height:84px;margin:-34px -4px 0 -6px;padding:0;position:relative}button.info-thumb:after{content:"";pointer-events:auto;position:absolute;inset:34px 0 0}.info-thumb .thumb{width:100%;height:100%;filter:drop-shadow(0 3px 0 color-mix(in srgb, var(--ink) 55%, transparent))}.info-dot{width:24px;height:24px;position:absolute;bottom:6px;right:14px}.info-text{flex:1;min-width:0}.info-text h2{--stroke-w:4px;align-items:center;gap:8px;margin:0;font-size:clamp(20px,5vw,26px);line-height:1.15;display:flex}.info-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;min-width:0;display:-webkit-box;overflow:hidden}.info-text p{-webkit-line-clamp:3;color:var(--text);-webkit-box-orient:vertical;margin:2px 0 0;font-size:clamp(14px,3.6vw,17px);line-height:1.3;display:-webkit-box;overflow:hidden}.mark-move{color:var(--sky)}.mark-attack{color:var(--danger)}.tribe-tag{font:600 14px var(--font);-webkit-text-stroke:0;background:color-mix(in srgb, var(--tribe) 45%, var(--ink));border:1px solid var(--tribe);border-radius:999px;flex:none;padding:1px 9px}.unit-stats{flex-wrap:wrap;gap:4px 18px;margin:0 0 10px;padding:0;list-style:none;display:flex}.unit-stats li{color:var(--text-dim);align-items:center;gap:6px;display:inline-flex}.unit-stats li:first-child{color:var(--good)}.unit-stats li.low{color:var(--danger)}.unit-stats li.vet{color:var(--gold)}.skill-list{margin:4px 0 0}.skill-list dt{font-weight:700}.skill-list dd{color:var(--text-dim);margin:0 0 6px;font-size:.85em}.close-btn{flex:none;width:44px;height:44px}.action-row{padding:12px var(--gutter) max(12px, env(safe-area-inset-bottom));box-shadow:none;scrollbar-width:none;border-top-width:2px;justify-content:center;gap:clamp(10px,3vw,22px);display:flex;overflow-x:auto}.action-row::-webkit-scrollbar{display:none}.action{cursor:pointer;background:0 0;border:0;flex:none;justify-items:center;gap:6px;width:84px;padding:0;display:grid}.action-disc{width:74px;height:74px}.action-disc .thumb{width:62px;height:62px}.action.blocked .action-disc,.map-btn.blocked .map-disc{background:linear-gradient(color-mix(in srgb, var(--wood-3) 80%, white), var(--wood-3) 70%)}.action.gold .action-disc{animation:1.6s ease-in-out infinite breathe}.action.tech-link .action-disc{background:var(--face-wood)}.action.tech-link .action-label:after{content:" →"}.action.blocked .action-disc .thumb,.map-btn.blocked .map-disc .thumb{opacity:.55;filter:grayscale(.6)}.action .cost,.map-btn .cost{--stroke-w:4px;align-items:center;gap:1px;font-size:18px;display:inline-flex;position:absolute;top:-8px;right:-12px}.action .cost .icon,.map-btn .cost .icon{color:var(--gold)}.action .cost.short,.map-btn .cost.short{color:var(--danger)}.action-label{text-align:center;font-size:14px;font-weight:600;line-height:1.1}.map-layer{z-index:1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.map-group{position:absolute;top:0;left:0}.unit-btns>.bob{animation:map-bob 1.2s ease-in-out var(--in-ms) 3}@keyframes map-bob{50%{transform:translateY(-4px)}}.map-btn{left:calc(var(--disc) / -2);top:calc(var(--disc) / -2);cursor:pointer;pointer-events:auto;transform:translate(var(--dx), var(--dy));animation:map-btn-in var(--in-ms) cubic-bezier(.34, 1.56, .64, 1) both;animation-delay:calc(var(--i) * var(--in-stagger));-webkit-tap-highlight-color:transparent;background:0 0;border:0;justify-items:center;padding:0;display:grid;position:absolute}.map-disc{width:var(--disc);height:var(--disc)}.map-disc .thumb{width:calc(var(--disc) - 8px);height:calc(var(--disc) - 8px)}.map-btn .cost{font-size:16px;top:-6px;right:-9px}.map-name{white-space:nowrap;opacity:0;pointer-events:none;margin-top:2px;font-size:14px;transition:opacity .12s,transform .12s;position:absolute;top:100%;transform:translateY(-4px)}@media (hover:hover){.map-btn:hover .map-name{opacity:1;transform:none}.map-btn:hover{z-index:1}}.map-btn:focus-visible .map-name{opacity:1;transform:none}.map-btn:focus-visible{z-index:1;outline:none}.map-btn:focus-visible .map-disc{box-shadow:0 0 0 3px var(--focus), var(--lift), var(--rim-light)}.map-group.closing .map-btn{pointer-events:none;animation:map-btn-out var(--out-ms) ease-in both;animation-delay:calc(var(--i) * var(--out-stagger))}.map-group .map-btn.chosen{pointer-events:none;animation:map-btn-chosen var(--chosen-ms) cubic-bezier(.5, -.4, .8, .6) both}@keyframes map-btn-in{0%{opacity:0;transform:translate(0)scale(.2)}}@keyframes map-btn-out{to{opacity:0;transform:translate(calc(var(--dx) * .4), calc(var(--dy) * .4)) scale(.4)}}@keyframes map-btn-chosen{40%{opacity:1;transform:translate(var(--dx), calc(var(--dy) - 10px)) scale(1.15)}to{opacity:0;transform:translateY(30px)scale(.35)}}@media (prefers-reduced-motion:reduce){.map-btn,.map-group.closing .map-btn,.map-group .map-btn.chosen,.unit-btns>.bob{animation:none}.map-group.closing{opacity:0}}.overlay{z-index:10;padding:var(--gutter);place-items:center;display:grid;position:absolute;inset:0}.overlay.dim{background:#1e0f0899}.sheet{width:100%;max-width:560px;max-height:100%;box-shadow:var(--rim), var(--shadow-lg);text-align:center;outline:none;padding:26px;overflow:auto}.sheet.small{max-width:420px}.sheet h2{margin-bottom:6px;font-size:30px}.sheet-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.eyebrow-line{color:var(--gold);font:400 15px var(--font-display);letter-spacing:.04em;text-transform:uppercase;margin:0 0 4px}.reward-overlay{background:#1e0f0840}.reward{width:100%;max-width:380px;max-height:100%;box-shadow:var(--rim), var(--shadow-lg);padding:12px 16px;overflow:auto}.reward h2{margin:0;font-size:28px}.reward-line{color:var(--text-dim);margin:4px 0 0;font-size:14px}.reward-line svg{vertical-align:-.12em;color:var(--gold)}.reward-choices{grid-template-columns:1fr 1fr;gap:8px;margin-top:12px;display:grid}.reward-card{border-radius:var(--radius-lg);cursor:pointer;background:0 0;border:0;align-content:start;justify-items:center;gap:4px;padding:8px 4px;display:grid}.reward-card b{margin-top:4px;font-size:16px}.reward-card span:last-child{color:var(--text-dim);font-size:12px;line-height:1.25}.reward-icon{width:64px;height:64px}.seg{background:#1e0f0859;border-radius:999px;gap:3px;margin-bottom:14px;padding:3px;display:flex}.seg button{cursor:pointer;min-height:38px;color:var(--text-dim);background:0 0;border:0;border-radius:999px;flex:1}.seg button.on{background:var(--parchment);color:var(--parchment-ink);font-weight:600}.stats{text-align:left;max-width:620px}.ranking,.tasks{gap:8px;margin:0;padding:0;list-style:none;display:grid}.ranking li{border-radius:var(--radius);background:var(--wood-2);flex-wrap:wrap;align-items:center;gap:12px;padding:8px 12px;display:flex}.ranking li.dead{opacity:.45}.rk-row{all:unset;box-sizing:border-box;cursor:pointer;border-radius:8px;flex:1;align-items:center;gap:12px;min-height:52px;display:flex}.rk-row:disabled{cursor:default}.rk-row:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.rk-row:not(:disabled):hover .rk-main b{text-decoration:underline}.ranking .rank{text-align:center;width:22px;color:var(--text-dim);font-weight:600}.ranking img.unknown{filter:brightness(0);opacity:.6}.rk-main{flex:1;display:grid}.rk-main span{color:var(--text-dim);font-size:13px}.rel{background:#fbecc91f;border-radius:999px;padding:2px 10px;font-size:12px}.rel.war{background:var(--danger-bg);color:var(--parchment)}.rel.peace{background:color-mix(in srgb, var(--good) 25%, transparent);color:var(--good)}.score-table{border-collapse:collapse;width:100%}.score-table td{border-bottom:1px solid var(--line);padding:8px 4px}.score-table td:last-child{text-align:right}.score-table tr.total td{font-size:18px;font-weight:700}.tasks li{border-radius:var(--radius);background:var(--wood-2);align-items:center;gap:12px;padding:8px 12px;display:flex}.tasks li.done{outline:2px solid var(--good)}.tasks li div{display:grid}.tasks li b small{color:var(--text-dim);font-weight:400}.tasks li span{color:var(--text-dim);font-size:13px}.tasks .hint-good{color:var(--good)}.result{max-width:460px}.result h1{margin:6px 0;font-size:44px}.techtree-screen{z-index:8;background:radial-gradient(circle at 50% 50%, var(--wood) 0%, var(--ink) 75%);grid-template-rows:auto 1fr auto;display:grid;position:absolute;inset:0}.techtree-screen:before{content:"";pointer-events:none;opacity:.5;background-image:repeating-linear-gradient(90deg,#0000 0 118px,#1e0f08b3 118px 122px);position:absolute;inset:0}.techtree-screen .topbar{background:0 0;position:relative}@media (max-width:480px){.techtree-screen .topbar{padding-left:calc(var(--gutter) + 64px);gap:16px;padding-bottom:6px;padding-right:8px}:is(.techtree-screen .topbar .standings,.techtree-screen .topbar:has(.clock) .turn){display:none}}.tree-wrap{overscroll-behavior:contain;scrollbar-gutter:stable;min-height:0;position:relative;overflow:hidden auto}.tree-wrap:focus{outline:none}.hud-under{display:contents}.tree{position:relative}.tree-board{--bevel:4px;box-shadow:var(--lift), inset 0 0 0 3px var(--parchment-2);border-radius:16px;position:absolute}.tree-board.done{border-color:var(--brand);box-shadow:var(--lift), inset 0 0 0 3px var(--brand)}.tree-links{pointer-events:none;position:absolute;inset:0;overflow:visible}.tree-links path{fill:none;stroke-linecap:round;transition:stroke .25s ease-out,stroke-width .25s ease-out,opacity .25s ease-out}.tree-links .lk{stroke:var(--parchment-ink);stroke-width:4px}.tree-links .lk-case{stroke:none;stroke-width:10px}.tree-links .locked .lk{stroke-width:3px;stroke-dasharray:2 7;opacity:.45}.tree-links .from-head .lk-case,.tree-links .ready .lk-case{stroke:var(--ink)}.tree-links .from-head .lk{stroke:var(--parchment)}.tree-links .ready .lk{stroke:var(--gold);stroke-width:5px}.tree-links .owned .lk-case{stroke:var(--parchment)}.tree-links .owned .lk{stroke:var(--brand);stroke-width:5px}.tree-links .route:not(.owned) .lk{stroke-width:5px;stroke-dasharray:8 7;opacity:1;animation:.9s linear 3 route-march}.tree-links .route:not(.owned,.ready) .lk{stroke:var(--parchment-ink)}@keyframes route-march{to{stroke-dashoffset:-16px}}.tree-links .lk-flow{stroke:var(--gold);stroke-width:7px;stroke-dasharray:1;stroke-dashoffset:1px;animation:1.1s ease-out .2s both lk-flow}@keyframes lk-flow{45%{stroke-dashoffset:0;opacity:1}to{stroke-dashoffset:0;opacity:0}}.tree-head{pointer-events:none;position:absolute;transform:translate(-50%,-50%)}.tree-head img{width:150%;height:150%;margin:-25%}.tree-count{border:2px solid var(--ink);background:var(--wood);white-space:nowrap;--stroke-w:4px;border-radius:999px;padding:1px 7px;font-size:15px;position:absolute;top:120%;left:50%;transform:translate(-50%)}.tech-node{--d:60px;width:var(--d);height:var(--d);cursor:pointer;font:inherit;color:inherit;background:0 0;border:0;padding:0;position:absolute;transform:translate(-50%,-50%)}.tech-node .tn-disc{--bevel:3px;width:100%;height:100%;overflow:hidden}.tech-node .tn-disc img{pointer-events:none;width:88%;height:88%;margin-top:-6%}.tech-node .tn-name{font-size:min(calc(9px + var(--d) * .095), calc(var(--name-room,100px) / 7.2));white-space:nowrap;--stroke-w:4px;line-height:1;position:absolute;top:calc(100% - 9px);left:50%;transform:translate(-50%)}.tech-node .tn-cost{border:2px solid var(--ink);background:var(--wood);color:var(--parchment);font:400 calc(10px + var(--d) * .07) / 1 var(--font-display);border-radius:999px;align-items:center;gap:2px;padding:2px 6px 2px 4px;display:inline-flex;position:absolute;top:-6px;right:-10px}.tech-node .tn-cost .icon{color:var(--gold)}.tech-node.ready .tn-cost{background:var(--gold);color:var(--gold-ink)}.tech-node.ready .tn-cost .icon{color:var(--gold-ink)}.tech-node .tn-badge{width:calc(var(--d) * .36);height:calc(var(--d) * .36);border:2px solid var(--ink);background:var(--parchment);min-width:20px;min-height:20px;color:var(--brand);border-radius:50%;padding:3px;display:grid;position:absolute;top:-6%;right:-6%}.tech-node:before{content:"";pointer-events:none;border:3px solid #0000;border-radius:50%;position:absolute;inset:-5px}.tech-node:focus-visible{outline:none}.tech-node.picked,.tech-node:focus-visible{z-index:2}.tech-node.owned .tn-disc{background:linear-gradient(color-mix(in srgb, var(--brand) 82%, white), var(--brand) 70%);box-shadow:var(--lift), inset 0 0 0 3px var(--parchment-2), var(--shade)}button.tech-node.owned:not(:disabled):active>.tn-disc{box-shadow:var(--lift-pressed), inset 0 0 0 3px var(--parchment-2)}.tech-node:is(.ready,.short) .tn-disc{background:var(--face-iron)}.tech-node.ready .tn-disc{border-color:var(--gold)}.tech-node.ready:before{border-color:var(--gold);box-shadow:0 0 0 2px var(--ink), 0 0 12px 2px color-mix(in srgb, var(--gold) 70%, transparent);animation:1.8s ease-in-out 4 tn-breathe}@keyframes tn-breathe{50%{opacity:.35;transform:scale(.96)}}.tech-node.locked .tn-disc{background:linear-gradient(var(--parchment), var(--parchment-2) 70%);box-shadow:var(--lift);border-color:#1e0f088c}.tech-node.locked .tn-disc img{filter:saturate(.35);opacity:.75}.tech-node.route:not(.owned,.ready):before{border:3px dashed var(--parchment-ink)}.tech-node.tech-node:is(.picked,:focus-visible):before{border:4px solid var(--parchment-ink);box-shadow:0 0 0 2px var(--parchment);opacity:1;animation:none;inset:-6px}.tech-node.fresh{z-index:2}.tech-node.fresh .tn-disc{animation:.45s cubic-bezier(.3,1.6,.5,1) both tn-stamp}@keyframes tn-stamp{0%{filter:brightness(1.6);transform:scale(1.45)}}.tn-burst{border:5px solid var(--gold);pointer-events:none;border-radius:50%;animation:.7s ease-out .12s both tn-burst;position:absolute;inset:0}@keyframes tn-burst{0%{opacity:1;transform:scale(.8)}to{opacity:0;border-width:1px;transform:scale(2.1)}}.tn-points{font-size:calc(12px + var(--d) * .14);color:var(--gold);white-space:nowrap;pointer-events:none;--stroke-w:5px;animation:1.2s ease-out both tn-points;position:absolute;bottom:70%;left:50%}@keyframes tn-points{0%{opacity:0;transform:translate(-50%,20px)scale(.6)}20%{opacity:1;transform:translate(-50%)scale(1.1)}75%{opacity:1}to{opacity:0;transform:translate(-50%,-28px)}}.tech-node.wake .tn-disc img{animation:.5s ease-out .55s both tn-wake}.tech-node.wake:before{animation:.5s ease-out .55s both tn-wake-ring,1.8s ease-in-out 1.05s 4 tn-breathe}@keyframes tn-wake{0%{filter:saturate(.35);opacity:.75}}@keyframes tn-wake-ring{0%{opacity:0;transform:scale(1.4)}}.tech-tip{z-index:3;--bevel:4px;width:max-content;max-width:260px;box-shadow:var(--lift);pointer-events:none;padding:8px 12px;font-size:14px;line-height:1.3;animation:.14s ease-out both tip-in;position:absolute;transform:translate(-50%,-100%)}.tech-tip.below{transform:translate(-50%)}.tech-tip b{font:400 17px var(--font-display)}.tech-tip ul{margin:2px 0 0;padding:0;font-weight:600;list-style:none}.tech-tip span{font-weight:400}@keyframes tip-in{0%{opacity:0}}.tp{animation:.16s ease-out tp-in}@keyframes tp-in{0%{opacity:0}}.tech-panel{height:calc(120px + env(safe-area-inset-bottom));padding:8px 12px env(safe-area-inset-bottom);border-bottom:0;border-radius:18px 18px 0 0;position:relative;overflow:hidden}.tp-head{align-items:center;gap:10px;min-height:46px;display:flex}.tp-title{flex:1;min-width:0;display:grid}.tp-title h2{white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:22px;line-height:1.05;overflow:hidden}.tp-line{-webkit-line-clamp:2;color:var(--text-dim);-webkit-box-orient:vertical;font-size:14px;font-weight:600;line-height:1.15;display:-webkit-box;overflow:hidden}.tp-act{flex:none;max-width:55%;min-height:44px;padding:0 14px;font-size:16px}.tp-act[aria-disabled=true]{min-width:0}.btn.tp-done:disabled{color:var(--good);box-shadow:none;opacity:1;background:0 0;border-color:#0000;gap:6px}.tp-cost{align-items:center;gap:2px;margin-left:6px;display:inline-flex}.tp-unlocks{scrollbar-width:none;gap:14px;margin:6px -12px 0;padding:0 12px 4px;list-style:none;display:flex;overflow-x:auto}.tp-unlocks.more{-webkit-mask-image:linear-gradient(90deg,#000 82%,#0000);mask-image:linear-gradient(90deg,#000 82%,#0000)}.tp-unlocks button{min-height:44px;color:var(--text);font:inherit;text-align:left;white-space:nowrap;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:0;display:flex}.tp-pic{width:40px;height:40px;overflow:hidden}.tp-pic img{width:34px;height:34px}.tp-unlocks button:hover .tp-pic,.tp-unlocks button:focus-visible .tp-pic{border-color:var(--gold)}.tp-text{line-height:1.15;display:grid}.tp-text b{font-size:15px}.tp-short{color:var(--text-dim);font-size:13px;font-weight:600}.tp-desc,.tp-route{display:none}.tp-hint{text-align:center;align-content:center;height:100%;font-weight:600;display:grid}.tp-hint p{margin:0 0 4px}.tp-legend{color:var(--text-dim);flex-wrap:wrap;justify-content:center;gap:4px 14px;margin:0 0 4px;padding:0;font-size:14px;list-style:none;display:flex}.tp-legend li{white-space:nowrap;align-items:center;gap:6px;display:flex}.tp-dot{border:2px solid var(--ink);min-width:16px;height:18px;color:var(--gold);border-radius:999px;place-items:center;padding:0 4px;display:inline-grid}.tp-dot.owned{background:var(--brand);width:18px;color:var(--parchment);padding:0}.tp-dot.ready{background:var(--gold);color:var(--gold-ink)}.tp-dot.short{background:var(--wood-3)}.tp-dot.locked{background:var(--parchment-2);width:18px;padding:0}.tp-note{color:var(--text-faint);font-size:13px}.tp-route ol{justify-content:center;align-items:flex-start;margin:0;padding:0;list-style:none;display:flex}.tp-route li{align-items:flex-start;display:flex}.tp-route li+li:before{content:"›";font:400 28px / 1 var(--font-display);color:var(--brand);margin-top:8px}.tp-route button{width:78px;min-height:44px;color:var(--parchment-ink);font:inherit;cursor:pointer;background:0 0;border:0;justify-items:center;gap:3px;padding:0;font-size:14px;font-weight:600;line-height:1.1;display:grid}.tp-step{background:var(--parchment-2);width:46px;height:46px;overflow:hidden}.tp-step.first{background:var(--iron);border-color:var(--gold)}.tp-step img{width:40px;height:40px}@media (min-width:1000px) and (min-aspect-ratio:11/10),(orientation:landscape) and (max-height:500px){.techtree-screen{grid-template-columns:1fr var(--panel-w,340px);grid-template-rows:auto 1fr}.techtree-screen .topbar{grid-column:1/-1}.tree-wrap{grid-area:2/1}.tech-panel{border-bottom:var(--edge);border-radius:18px;grid-area:2/2;height:auto;margin:0 12px 12px 0;padding:18px;overflow-y:auto}.tp-head{flex-direction:column;align-items:stretch;gap:12px}.tp-title h2{white-space:normal;font-size:32px}.tp-line{font-size:16px}.tp-act{max-width:none;min-height:52px;font-size:18px}.tp-unlocks,.tp-unlocks.more{flex-direction:column;gap:14px;margin:16px 0 0;padding:0;overflow:visible;-webkit-mask-image:none;mask-image:none}.tp-unlocks button{white-space:normal;align-items:flex-start}.tp-pic{width:56px;height:56px}.tp-pic img{width:48px;height:48px}.tp-text b{font-size:17px}.tp-short{display:none}.tp-desc{color:var(--text-dim);margin-top:3px;font-size:14px;line-height:1.35;display:block}.tp-route{margin-top:18px;padding:10px 6px 8px;display:block}.tp-hint{height:auto;padding-top:24px}.tp-legend{flex-direction:column;align-items:flex-start;gap:8px;width:max-content;margin:12px auto}}@media (orientation:landscape) and (max-height:500px){.techtree-screen{--panel-w:270px}.techtree-screen .topbar{padding-bottom:4px}.tech-panel{padding:12px}.tp-title h2{font-size:24px}}@media (prefers-reduced-motion:reduce){.tp,.tech-tip,.tech-node.ready:before,.tech-node.wake:before,.tech-node.fresh .tn-disc,.tech-node.wake .tn-disc img,.tree-links .route:not(.owned) .lk{animation:none}.tree-links .lk-flow,.tn-burst,.tn-points{display:none}.tree-links path{transition:none}}.menu-screen~.overlay{z-index:21}.menu-screen{z-index:20;background:linear-gradient(color-mix(in srgb, var(--night-deep) 78%, transparent), color-mix(in srgb, var(--night-deep) 30%, transparent) 30%, color-mix(in srgb, var(--night-deep) 22%, transparent) 55%, color-mix(in srgb, var(--night-deep) 82%, transparent));position:absolute;inset:0;overflow:auto}.menu-main,.menu-page{min-height:100%;padding:90px var(--gutter) 60px;flex-direction:column;align-items:center;display:flex;position:relative}.game-title{margin:-50px 0 0;line-height:0}.game-title img{-webkit-user-select:none;user-select:none;filter:drop-shadow(0 6px 14px #1e0f0859);width:min(560px,92vw);height:auto;animation:.7s cubic-bezier(.3,1.5,.5,1) logo-in}@keyframes logo-in{0%{opacity:0;transform:scale(.6)translateY(20px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.game-title img{animation:none}}.menu-buttons{justify-items:center;gap:16px;margin-top:6vh;display:grid}.menu-page>.btn.hero{margin-top:30px}.page-title{text-transform:uppercase;text-align:center;margin-bottom:26px;font-size:clamp(32px,9vw,48px)}.menu-page:has(>.page-head){padding-top:max(14px, env(safe-area-inset-top))}.page-head{align-items:center;gap:10px;width:min(760px,100%);margin-bottom:22px;display:flex}.page-head .back-btn{flex:none;position:static}.page-head .page-title{flex:1;min-width:0;margin:0;font-size:clamp(26px,7.4vw,46px)}.tribe-page{--screen-h:100vh;padding-bottom:max(18px, env(safe-area-inset-bottom))}@supports (height:100dvh){.tribe-page{--screen-h:100dvh}}.tribe-page>.page-head{margin-bottom:0}.tribe-set{width:100%;border:0;min-inline-size:0;margin:0;padding:0}.tribe-row{--card-w:min(76vw, 340px);width:calc(100% + 2 * var(--gutter));overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 calc(-1 * var(--gutter));padding:20px calc(50% + var(--gutter) - var(--card-w) / 2) 12px;align-items:stretch;gap:12px;display:flex;position:relative;overflow-x:auto}.tribe-row::-webkit-scrollbar{display:none}.tribe-pick{width:var(--card-w);margin-bottom:var(--bevel);border:var(--edge);scroll-snap-align:center;cursor:pointer;text-align:left;color:var(--parchment);background:radial-gradient(ellipse 95% 55% at 50% 28%, color-mix(in srgb, var(--tribe) 45%, white) 0, var(--tribe) 48%, color-mix(in srgb, var(--tribe) 38%, black) 100%);box-shadow:var(--lift), var(--rim-light), var(--gloss);scale:calc(.9 + .1 * var(--near,0));filter:brightness(calc(.6 + .4 * var(--near,0))) saturate(calc(.8 + .2 * var(--near,0)));animation:.36s ease-out backwards pick-in;animation-delay:calc(min(var(--i), 4) * 40ms);border-radius:22px;flex-direction:column;flex:none;padding:0;transition:transform .22s ease-out;display:flex;position:relative}@media (hover:hover) and (pointer:fine){.tribe-pick:not(.on):hover{filter:brightness(calc(.78 + .22 * var(--near,0))) saturate(calc(.9 + .1 * var(--near,0)))}}@keyframes pick-in{0%{opacity:0;translate:0 36px;scale:.96}}.tribe-pick:active{transform:scale(.98)}.tp-art{--art-h:clamp(120px, calc(var(--screen-h) - 480px), 290px);min-height:var(--art-h);border-radius:20px 20px 0 0;flex:1;display:block;position:relative;overflow:hidden}.tp-art img{left:50%;bottom:calc(var(--art-h) * -.06);width:auto;height:calc(var(--art-h) * 1.16);position:absolute;translate:-50%}.tp-name{font:400 clamp(30px, 9vw, 40px) / 1 var(--font-display);--stroke-w:7px;text-transform:uppercase;text-shadow:var(--text-drop);white-space:nowrap;text-overflow:ellipsis;position:absolute;bottom:6px;left:14px;right:14px;overflow:hidden}.tp-info{background:color-mix(in srgb, var(--ink) 62%, transparent);box-shadow:var(--rim);border-radius:16px;align-content:start;gap:10px;margin:0 8px 8px;padding:12px 12px 10px;display:grid}.tp-blurb{font-size:15px;font-weight:500;line-height:1.3}.tribe-controls{justify-content:center;align-items:center;gap:16px;margin-top:6px;display:flex}.tribe-controls>.btn.hero{margin-top:0}.tp-nav{width:56px;height:56px;margin-bottom:var(--bevel);display:none}.tp-nav.next svg{scale:-1 1}@media (min-width:760px){.tribe-page{padding-top:max(24px, env(safe-area-inset-top));justify-content:center}.tribe-row{--card-w:clamp(340px, max(24vw, 36vh), 460px);-webkit-mask-image:linear-gradient(90deg,#0000,#000 14% 86%,#0000);mask-image:linear-gradient(90deg,#0000,#000 14% 86%,#0000)}.tp-art{--art-h:clamp(160px, calc(var(--screen-h) - 495px), calc(var(--card-w) * .86))}.tp-blurb{font-size:17px}.tribe-pick .ts-tile img,.tribe-pick .ts-stars,.tribe-pick .ts-big{height:60px}.tribe-pick .ts-tile img{width:60px}.tribe-pick .ts-name{font-size:13px}.tp-nav{display:grid}.tribe-go{min-width:360px}}@media (max-height:700px){.tribe-row{padding-top:14px}.tp-info{gap:6px;padding:8px 10px}.tp-blurb{font-size:14px}.tribe-pick .ts-tile img,.tribe-pick .ts-stars,.tribe-pick .ts-big{width:auto;height:40px}.tribe-pick .ts-tile img{width:40px}.tribe-go{min-height:54px}}@media (max-height:500px) and (orientation:landscape){.tribe-page{padding-top:max(8px, env(safe-area-inset-top));padding-bottom:max(8px, env(safe-area-inset-bottom));justify-content:flex-start}.tribe-page .page-title{font-size:26px}.tribe-page .back-btn{width:44px;height:44px}.tribe-row{--card-w:min(68vw, 560px);padding-top:12px;padding-bottom:2px}.tribe-pick{flex-direction:row}.tp-art{--art-h:clamp(110px, calc(var(--screen-h) - 200px), 220px);border-radius:20px 0 0 20px;flex:0 0 42%}.tp-name{--stroke-w:5px;font-size:26px}.tp-info{flex:1;gap:4px;margin:6px 6px 6px 0;padding:6px 8px}.tribe-controls{margin-top:2px}.tribe-go{min-height:48px}.tp-nav{width:46px;height:46px}}@media (prefers-reduced-motion:reduce){.tribe-pick{transition:none;animation:none}}.tribe-start{gap:6px;display:grid}.ts-label{font:400 13px var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim)}.ts-tiles{grid-template-columns:repeat(auto-fit,minmax(62px,1fr));gap:6px;display:grid}.ts-tile{background:#fff4dc1a;border-radius:12px;align-content:start;justify-items:center;min-width:0;padding:2px 3px 7px;display:grid}.ts-tile img{width:52px;height:52px}.ts-tile img.ts-unit{transform-origin:50% 70%;transform:scale(1.5)}.ts-name{font:400 12px / 1.1 var(--font-display);text-align:center;color:var(--text)}.ts-stars{align-items:center;gap:2px;height:52px;display:flex}.ts-stars img{width:34px;height:34px}.ts-stars b{font:400 24px / 1 var(--font-display);--stroke-w:5px}.ts-big{height:52px;font:400 26px / 1 var(--font-display);color:var(--gold);align-items:center;gap:4px;display:flex}.menu-hub{justify-items:center}.hub-find{flex-direction:column;gap:0;line-height:1.05}.hub-find small{font:600 14px var(--font);text-transform:none;opacity:.85}.hub-invite{aspect-ratio:.85;border:3px dashed var(--gold);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--night-deep) 45%, transparent);width:100%;color:var(--parchment);cursor:pointer;align-content:center;justify-items:center;gap:2px;padding:8px;display:grid}.hub-invite:active{translate:0 2px}.hub-invite:focus-visible{outline:3px solid var(--parchment);outline-offset:3px}.hub-invite-mark{font:400 clamp(40px, 11vw, 60px) / 1 var(--font-display);color:var(--gold);--stroke-w:.12em}.hub-invite-line{font:400 clamp(17px, 4.6vw, 22px) / 1.1 var(--font-display);--stroke-w:.14em;text-align:center}.hub-invite-sub{font:600 13px var(--font);color:var(--text-dim);text-shadow:var(--text-drop)}@media (hover:hover) and (pointer:fine){.hub-invite:hover{background:color-mix(in srgb, var(--gold) 12%, transparent)}}.menu-main{height:100%;min-height:0;padding-top:max(12px, env(safe-area-inset-top));padding-bottom:max(14px, env(safe-area-inset-bottom))}.menu-main>.game-title{margin:0}.menu-main>.game-title img{width:min(380px,62vw,30vh)}.menu-main>.champ{--stage:clamp(116px, min(44vw, 24vh), 250px);margin:auto 0}.menu-main>.champ .champ-name{font-size:clamp(24px,4vh,40px)}.menu-main>.champ .rank-plate{gap:12px;width:min(340px,100%);margin-top:clamp(6px,1.2vh,12px);padding:7px 14px 7px 10px}.menu-main>.champ .rank-plate .rb-crest{width:42px;height:50px}.menu-main>.champ .rank-plate .rb-crest b{font-size:18px}.menu-main>.champ .rp-name{font-size:20px}.menu-main>.menu-hub{gap:clamp(8px,1.2vh,12px);width:min(340px,100%);padding-top:8px}.menu-main>.menu-hub>.btn.hero{min-height:clamp(48px,6.8vh,60px);font-size:clamp(19px,2.8vh,25px)}.menu-hub>.btn.hero{width:100%}.champ{--stage:clamp(220px, 66vw, 300px);text-align:center;justify-items:center;width:min(640px,100%);display:grid;position:relative}.champ-open{width:100%;max-width:100%;color:inherit;font:inherit;background:0 0;border:0;justify-items:center;padding:0;display:grid}button.champ-open{cursor:pointer;border-radius:var(--radius-lg)}button.champ-open:active .champ-art{transform:translateY(2px)scale(.98)}button.champ-open:focus-visible{outline:3px solid var(--parchment);outline-offset:4px}.champ-stage{width:min(100%, var(--stage));aspect-ratio:1;display:block;position:relative}.champ-glow{background:radial-gradient(circle, color-mix(in srgb, var(--tribe,var(--moonlight)) 60%, white) 0, color-mix(in srgb, var(--tribe,var(--moonlight)) 70%, transparent) 36%, transparent 70%);border-radius:50%;animation:.9s ease-out both pf-glow-in;position:absolute;inset:4% -6% 10%}.champ-art{filter:drop-shadow(0 12px 14px #0009);--from:60px;width:100%;height:auto;transition:transform .1s ease-out;animation:.45s cubic-bezier(.2,1.2,.4,1) .1s backwards hero-in;display:block;position:relative}.champ.dark .champ-glow{opacity:.5}.champ.dark .champ-art{filter:grayscale(1) brightness(.22) drop-shadow(0 0 2px var(--moonlight)) drop-shadow(0 0 1px var(--moonlight)) drop-shadow(0 0 16px color-mix(in srgb, var(--moonlight) 60%, transparent))}.champ-name{max-width:100%;margin:calc(var(--stage) * -.14) 0 0;overflow-wrap:anywhere;font:400 clamp(32px, 9vw, 56px) / .95 var(--font-display);text-transform:uppercase;color:var(--gold);--stroke-w:.11em;filter:drop-shadow(0 8px 16px #0000008c);outline:none;animation:.42s cubic-bezier(.2,1.5,.4,1) .25s both slam;position:relative;rotate:-2deg}.champ-open>.rank-plate{margin-top:14px;animation:.3s ease-out .4s backwards fade-in}.rank-plate{--tier:var(--iron-line);border-radius:var(--radius-lg);background:var(--glass-deep);width:min(360px,100%);box-shadow:var(--rim);text-align:left;align-items:center;gap:14px;padding:10px 16px 10px 12px;display:flex}.rank-plate[data-tier=bronze]{--tier:var(--bronze)}.rank-plate[data-tier=silver]{--tier:var(--silver)}.rank-plate[data-tier=gold]{--tier:var(--gold)}.rank-emblem{flex:none;place-items:center;display:grid;position:relative}.rank-emblem:before{content:"";background:radial-gradient(circle, color-mix(in srgb, var(--tier) 45%, transparent), transparent 70%);border-radius:50%;position:absolute;inset:-10px}.rank-plate .rb-crest{width:54px;height:64px}.rank-plate .rb-crest b{font-size:22px}.rp-text{flex:1;gap:5px;min-width:0;display:grid}.rp-name{font:400 24px / 1 var(--font-display);color:var(--parchment);--stroke-w:.14em;text-transform:uppercase}.rp-line{color:var(--text-dim);justify-content:space-between;gap:8px;font-size:14px;font-weight:600;display:flex}.rank-plate.promoted .rank-emblem,.rank-strip.promoted .rb-crest{animation:.7s cubic-bezier(.2,1.6,.4,1) .35s both rank-up}.rank-plate.promoted .rank-emblem:before{animation:1.2s ease-out .35s both rank-halo}@keyframes rank-up{0%{transform:scale(.4)rotate(-12deg)}60%{transform:scale(1.25)rotate(4deg)}to{transform:none}}@keyframes rank-halo{0%{opacity:0;transform:scale(.5)}40%{opacity:1;transform:scale(1.6)}}.match-page{--screen-h:100vh;padding-top:max(10px, env(safe-area-inset-top));padding-bottom:max(18px, env(safe-area-inset-bottom))}@supports (height:100dvh){.match-page{--screen-h:100dvh}}.match-head{grid-template-columns:56px 1fr 56px;align-items:start;width:min(760px,100%);display:grid}.match-head>.back-btn{position:static}.match-head>.bt-head{margin-top:4px}.match-head .bt-head-top{font-size:clamp(30px,9vw,56px)}.match-head .bt-head-bottom{font-size:clamp(18px,5vw,30px)}.match-versus{flex-direction:column;flex:1;align-items:center;width:100%;display:flex}.match-versus>.bt-matchup,.match-versus>.bt-teams{margin:auto 0}.match-versus .bt-seat .bt-stage{width:clamp(72px,21vw,140px)}.rec-tag{z-index:1;border:2px solid var(--ink);background:var(--gold);color:var(--gold-ink);font:400 12px var(--font-display);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;--bevel:2px;box-shadow:var(--lift);border-radius:999px;padding:2px 10px 1px;position:absolute;top:-11px;left:50%;translate:-50%}@keyframes slam{0%{opacity:0;transform:translateY(-70px)scale(1.7)}60%{opacity:1;transform:scale(.9)}}.rank-badge{--tier:var(--iron-line);vertical-align:middle;align-items:center;gap:8px;display:inline-flex}.rank-badge[data-tier=bronze]{--tier:var(--bronze)}.rank-badge[data-tier=silver]{--tier:var(--silver)}.rank-badge[data-tier=gold]{--tier:var(--gold)}.rb-crest{--tribe:linear-gradient(color-mix(in srgb, var(--tier) 70%, white), var(--tier) 55%, color-mix(in srgb, var(--tier) 72%, var(--ink)));flex:none;width:34px;height:40px}.rb-crest:before{background:var(--tribe)}.rb-crest b{font:400 15px / 1 var(--font-display);color:var(--parchment);--stroke-w:3px;margin-top:-6px}.rb-text{text-align:left;line-height:1.1;display:grid}.rb-name{font:400 18px var(--font-display);color:var(--parchment);-webkit-text-stroke:0;text-shadow:var(--text-drop)}.rb-lp{color:var(--text-dim);text-shadow:var(--text-drop);font-size:14px;font-weight:600}.bt-plates .rank-badge .rb-name{font-size:clamp(15px,4vw,18px)}.bt-seat .rank-badge .rb-crest{width:28px;height:33px}.bt-seat .rank-badge .rb-name{font-size:clamp(13px,3.6vw,16px)}.match-versus.phase-landed>:not(.coin-screen,.skip-hint),.match-versus.phase-out>:not(.coin-screen,.skip-hint){visibility:hidden}.coin-screen{z-index:20;will-change:opacity;padding:max(24px, env(safe-area-inset-top)) var(--gutter) max(24px, env(safe-area-inset-bottom));background:radial-gradient(circle at 50% 46%, color-mix(in srgb, var(--gold) 16%, var(--night-deep)) 0, var(--night-deep) 62%);flex-direction:column;align-items:center;gap:clamp(10px,2.4vh,22px);display:flex;position:fixed;inset:0;overflow:hidden}.coin-screen.phase-out{animation:.6s ease-in forwards coin-screen-out}@keyframes coin-screen-out{to{opacity:0;scale:1.15}}.coin-rays{z-index:-1;will-change:transform;background:repeating-conic-gradient(color-mix(in srgb, var(--gold) 9%, transparent) 0 6deg, transparent 6deg 18deg);opacity:.7;width:140vmax;height:140vmax;transition:opacity .3s;animation:.4s ease-out both fade-in,24s linear infinite rays-turn;position:absolute;top:46%;left:50%;translate:-50% -50%;-webkit-mask:radial-gradient(circle,#000 0,#0000 45%);mask:radial-gradient(circle,#000 0,#0000 45%)}.coin-screen.landed .coin-rays{opacity:1;background:repeating-conic-gradient(color-mix(in srgb, var(--gold) 20%, transparent) 0 6deg, transparent 6deg 18deg)}@keyframes rays-turn{to{rotate:1turn}}.coin-ask{font:400 clamp(34px, 10vw, 64px) / 1 var(--font-display);color:var(--parchment);--stroke-w:.12em;margin:clamp(24px,9vh,96px) 0 0;animation:.42s cubic-bezier(.2,1.5,.4,1) .1s both slam}.coin-air{perspective:900px;justify-items:center;margin-top:auto;display:grid;position:relative}.coin{aspect-ratio:1;width:clamp(150px,min(44vw,32vh),300px);transform-style:preserve-3d;animation:.5s cubic-bezier(.2,1.4,.4,1) .15s both coin-ready;position:relative}@keyframes coin-ready{0%{opacity:0;translate:0 40px;scale:.6}}.coin-face{border:5px solid var(--ink);background:var(--face-gold);box-shadow:var(--rim-light), inset 0 0 0 10px color-mix(in srgb, var(--gold-ink) 22%, transparent), inset 0 -12px 24px color-mix(in srgb, var(--gold-ink) 30%, transparent);backface-visibility:hidden;border-radius:50%;place-items:center;display:grid;position:absolute;inset:0}.coin-face.back{transform:rotateY(180deg)}.coin-face{overflow:hidden}.coin-face img{width:104%;height:auto;margin-top:6%}.coin-shadow{background:radial-gradient(closest-side,#00000080,#0000);border-radius:50%;width:60%;height:16px;margin-top:14px}.coin-screen.phase-toss .coin{animation:2s cubic-bezier(.3,.5,.35,1) forwards coin-flip}.coin-screen.phase-toss .coin-shadow{animation:2s cubic-bezier(.3,.5,.35,1) forwards coin-shadow}@keyframes coin-flip{0%{transform:rotateY(0)}45%{translate:0 -24vh;scale:.8}to{transform:rotateY(var(--end));translate:0;scale:1}}@keyframes coin-shadow{45%{opacity:.3;scale:.4}}.coin-screen.landed .coin{transform:rotateY(var(--end));animation:.35s ease-out coin-slap}@keyframes coin-slap{30%{scale:1.18 .86}65%{scale:.96 1.04}}.coin-air:after{content:"";aspect-ratio:1;opacity:0;pointer-events:none;border-radius:50%;width:clamp(150px,min(44vw,32vh),300px);position:absolute;top:0;left:50%;translate:-50%}.coin-screen.landed .coin-air:after{animation:.6s ease-out coin-flash}@keyframes coin-flash{0%{opacity:.9;box-shadow:0 0 0 0 color-mix(in srgb, var(--gold) 80%, transparent);scale:1}to{opacity:0;box-shadow:0 0 0 26px color-mix(in srgb, var(--gold) 0%, transparent);scale:1.9}}.coin-sides{font:400 clamp(16px, 4.4vw, 22px) var(--font-display);color:var(--text-dim);gap:clamp(16px,6vw,40px);display:flex}.coin-sides span{align-items:center;gap:8px;transition:color .2s,scale .2s;display:flex}.coin-sides img{width:32px;height:32px}.coin-sides .won{color:var(--gold);scale:1.1}.coin-call{min-height:1.2em;font:400 clamp(30px, 9vw, 56px) / 1.2 var(--font-display);color:var(--gold);--stroke-w:.12em;margin:0 0 auto}.coin-screen.landed .coin-call{animation:.35s cubic-bezier(.2,1.5,.4,1) both slam}.end-next{justify-items:center;gap:18px;display:grid}.rank-strip{border-radius:var(--radius-lg);background:var(--glass-deep);width:min(380px,100%);box-shadow:var(--rim);align-items:center;gap:14px;padding:10px 16px;display:flex}.rank-strip .rb-text{display:none}.rank-strip .rb-crest{width:46px;height:54px}.rank-strip .rb-crest b{font-size:20px}.rs-main{flex:1;gap:6px;min-width:0;display:grid}.rs-lp{font:400 24px / 1 var(--font-display);color:var(--parchment);--stroke-w:.14em}.rank-strip.gain .rs-lp{color:var(--good)}.rank-strip.loss .rs-lp{color:var(--danger)}.rs-bar{border:2px solid var(--ink);background:var(--wood-2);border-radius:999px;height:12px;overflow:hidden}.rs-fill{background:var(--face-gold);width:100%;height:100%;transform:scaleX(var(--fill));transform-origin:0;transition:transform .9s cubic-bezier(.2,.8,.2,1);display:block}.rs-note{font:400 16px var(--font-display);color:var(--text-dim)}.rs-note.good{color:var(--gold)}.es-panel .rank-strip{margin:0 auto 14px}@media (prefers-reduced-motion:reduce){.coin-screen,.coin-screen *,.coin-screen .coin-air:after,.rs-fill{transition:none;animation:none}}@media (max-width:640px){.infobar{gap:10px}.action{width:72px}.action-disc{width:64px;height:64px}.action-disc .thumb{width:52px;height:52px}.action-row{justify-content:flex-start}.toast{top:calc(max(10px, env(safe-area-inset-top)) + 116px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}.tribe-head{flex:none;place-items:center;display:inline-grid;position:relative}.tribe-head img{z-index:1;position:relative}.tribe-head.flames:before{content:"";background:radial-gradient(circle,#ff5a2800 45%,#ff5a28d9 62%,#ffbe3c00 74%);border-radius:50%;animation:.9s ease-in-out infinite alternate flicker;position:absolute;inset:-8%}.tribe-head.halo:after{content:"";z-index:2;border:3px solid var(--gold);height:14%;box-shadow:0 0 8px color-mix(in srgb, var(--gold) 80%, transparent);border-radius:50%;position:absolute;top:-4%;left:22%;right:22%}.tribe-head.allied img{filter:drop-shadow(0 3px 0 var(--gold))}.deco-swords{z-index:2;background:var(--danger-bg);width:26px;height:26px;color:var(--parchment);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:-4px;right:-6px}@keyframes flicker{0%{opacity:.8;transform:scale(.96)}to{opacity:1;transform:scale(1.05)}}@media (prefers-reduced-motion:reduce){.tribe-head.flames:before{animation:none}}.rel-card{flex-basis:100%;gap:8px;padding:6px 4px 4px 34px;display:grid}.rel-card .ruler,.rel-card p{margin:0}.lvl{text-transform:capitalize}.lvl.horrible,.lvl.poor{color:var(--danger)}.lvl.decent,.lvl.great{color:var(--good)}.opinions{gap:4px;margin:0;padding:0;list-style:none;display:grid}.opinions li{align-items:baseline;gap:8px;font-size:14px;display:flex}.opinions li span{color:var(--text-dim);font-size:13px}.opinions li.pos b{color:var(--good)}.opinions li.neg b{color:var(--danger)}.rel-matrix{border-collapse:collapse;margin:0 auto 12px}.rel-matrix th,.rel-matrix td{text-align:center;width:38px;height:34px;padding:2px}.rel-matrix td{color:var(--text-faint);border-radius:6px}.rel-matrix td.war{color:var(--danger);background:#a3200f4d}.rel-matrix td.peace{color:var(--good);background:color-mix(in srgb, var(--good) 16%, transparent)}.rel-matrix td.self{background:#fbecc90f}.ruin-overlay{animation:.2s ease-out .35s both fade-in}.ruin-find{justify-items:center;gap:4px;animation:.28s cubic-bezier(.2,1.4,.4,1) .35s both ruin-in;display:grid}.ruin-find .ruin-pic{width:96px;height:96px;margin-bottom:4px}.ruin-find .ruin-text{max-width:32ch;margin:2px 0 16px;font-size:18px}@keyframes ruin-in{0%{opacity:0;transform:scale(.85)}}@media (prefers-reduced-motion:reduce){.ruin-overlay,.ruin-find{animation:none}}.goal-overlay{animation:.24s ease-out .15s both fade-in}.goal-card{justify-items:center;gap:4px;animation:.3s cubic-bezier(.2,1.4,.4,1) .15s both ruin-in;display:grid}.goal-crest{margin:18px 0 6px}.goal-lines{gap:8px;margin:4px 0 18px;display:grid}.goal-lines p{text-wrap:balance;max-width:30ch;margin:0;font-size:18px;animation:.42s ease-out both goal-line}.goal-lines p:first-child{animation-delay:.45s}.goal-lines p:nth-child(2){animation-delay:.85s}.goal-lines b{color:var(--gold);white-space:nowrap;font-weight:600}@keyframes goal-line{0%{opacity:0;transform:translateY(6px)}}@media (prefers-reduced-motion:reduce){.goal-overlay,.goal-card,.goal-lines p{animation:none}}.toggle{border-radius:var(--radius);cursor:pointer;background:#fbecc914;justify-content:space-between;align-items:center;gap:12px;min-height:44px;padding:0 14px;display:flex}.toggle span{align-items:center;gap:8px;display:inline-flex}.toggle input{width:22px;height:22px;accent-color:var(--gold)}.info-overlay{z-index:30;background:#1e0f084d;position:fixed}.info-card{border-radius:26px;width:min(560px,100%);max-height:calc(100% - 32px);padding:22px 26px 24px;animation:.14s ease-out pop-in;overflow:auto}.info-card header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.info-card h2{margin:0;font-size:clamp(30px,7vw,40px);line-height:1.05}.ic-cost{font:400 24px var(--font-display);flex:none;align-items:center;gap:4px;display:inline-flex}.ic-cost .icon{color:var(--gold)}.ic-cost.short{color:var(--danger)}.ic-body{align-items:flex-start;gap:18px;display:flex}.ic-art{flex:none;place-items:center;width:clamp(88px,22vw,140px);display:grid}.ic-art img{width:100%;height:auto}.ic-text{flex:1;min-width:0;font-size:clamp(16px,4vw,20px);line-height:1.35}.ic-text p{margin:0 0 8px}.ic-actions{justify-content:space-between;gap:12px;margin-top:18px;display:flex}.ic-actions:has(>:only-child){justify-content:center}.ic-note{color:var(--text-dim);text-align:center;margin-top:6px;font-size:15px}.hotkey{display:none}@media (hover:hover) and (pointer:fine){.hotkey{background:var(--band-see);color:var(--text);font:600 11px / 17px var(--font);letter-spacing:.02em;border-radius:6px;padding:0 6px;display:block;position:absolute;top:-10px;left:-8px}}.action.locked .action-disc{background:linear-gradient(color-mix(in srgb, var(--ink) 85%, white), var(--ink) 70%)}.action.locked .action-disc img{opacity:.55}.ic-note.warn{color:var(--danger)}.notice{top:calc(max(12px, env(safe-area-inset-top)) + 70px);z-index:4;width:min(440px, calc(100% - 2 * var(--gutter)));pointer-events:none;align-items:center;gap:14px;padding:12px 18px;animation:2.8s ease-out forwards notice;display:flex;position:absolute;left:50%}.notice img{flex:none;width:56px;height:56px}.notice div{gap:2px;display:grid}.notice b{--stroke-w:5px;font-size:26px}.notice span{color:var(--text-dim);font-size:15px}@keyframes notice{0%{opacity:0;transform:translate(-50%,-10px)}8%,85%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.notice{animation:none;transform:translate(-50%)}}.score-table tr.group td{padding-top:10px;font-weight:600}.score-table tr.sub td{color:var(--text-dim);padding-left:16px;font-size:14px}.score-table.compact{margin:10px auto 4px}.undo-btn{left:var(--gutter);top:calc(max(10px, env(safe-area-inset-top)) + 64px);z-index:4;padding:0 16px 0 12px;font-size:16px;animation:.16s ease-out pop-in;position:absolute}@media (min-width:1000px) and (min-height:700px){.undo-btn{top:calc(max(10px, env(safe-area-inset-top)) + 90px)}}.turn-card{z-index:5;pointer-events:none;border-radius:16px;justify-items:center;gap:4px;min-width:220px;padding:16px 34px;animation:1.5s ease-out forwards turn-card;display:grid;position:absolute;top:42%;left:50%}.turn-card b{--stroke-w:5px;font-size:30px}.turn-card span{color:var(--text-dim);font-size:16px;font-weight:500}@keyframes turn-card{0%{opacity:0;transform:translate(-50%,-50%)scale(.92)}12%,75%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(1)}}.meet-alert{top:calc(max(12px, env(safe-area-inset-top)) + 70px);z-index:4;max-width:calc(100% - 2 * var(--gutter));white-space:nowrap;pointer-events:none;align-items:center;gap:10px;padding:6px 22px 6px 8px;font-size:16px;animation:2.4s ease-out forwards notice;display:flex;position:absolute;left:50%}.meet-alert img{flex:none}.meet-alert .ribbon{margin-left:11px}.meet-stars{--stroke-w:4px;align-items:center;gap:4px;font-size:20px;display:inline-flex}.meet-stars .icon{color:var(--gold)}@media (prefers-reduced-motion:reduce){.meet-alert{animation:none;transform:translate(-50%)}}.flying-star{z-index:6;pointer-events:none;will-change:transform;width:34px;height:34px;margin:-17px 0 0 -17px;position:fixed;top:0;left:0}.flying-star svg{filter:drop-shadow(0 2px 3px #1e0f0873);width:100%;height:100%}.star-target{vertical-align:-.14em;display:inline-block}.star-target .icon{display:block}.star-ring{z-index:6;border:3px solid var(--gold);pointer-events:none;border-radius:50%;width:30px;height:30px;margin:-15px 0 0 -15px;position:fixed;top:0;left:0}@media (prefers-reduced-motion:reduce){.turn-card{animation:none;transform:translate(-50%,-50%)}}.replay-bar{z-index:2;padding:36px var(--gutter) max(12px, env(safe-area-inset-bottom));background:linear-gradient(#1e0f0800,#1e0f08a8 40%);justify-items:center;gap:8px;display:grid;position:absolute;bottom:0;left:0;right:0}.replay-bar>*{width:min(760px,100%)}.replay-head{text-shadow:0 1px 3px #1e0f08cc;align-items:center;gap:12px;font-size:14px;display:flex}.replay-tag{border:2px solid var(--ink);background:var(--gold);color:var(--gold-ink);text-shadow:none;border-radius:999px;align-items:center;gap:6px;padding:2px 10px;font-weight:600;display:inline-flex}.replay-where{white-space:nowrap;text-overflow:ellipsis;min-width:0;font-weight:600;overflow:hidden}.replay-count{color:var(--text-dim);white-space:nowrap;margin-left:auto}.replay-problem{border:2px solid var(--ink);border-radius:var(--radius);background:var(--band-2);color:var(--danger);margin:0;padding:6px 12px;font-size:13px}.replay-log{pointer-events:none;gap:4px;margin:0;padding:0;list-style:none;display:grid}.replay-log li{border:2px solid var(--ink);background:var(--band-2);border-radius:12px;justify-self:start;max-width:100%;padding:4px 12px;font-size:13px;animation:.2s ease-out pop-in}.replay-track{height:52px;margin-top:22px;position:relative}.replay-track:before{content:"";height:8px;box-shadow:0 0 0 2px var(--ink);background:#fbecc940;border-radius:4px;position:absolute;top:26px;left:0;right:0}.replay-fill{background:var(--gold);pointer-events:none;border-radius:4px;height:8px;position:absolute;top:26px;left:0}.replay-round{pointer-events:none;background:#fbecc980;width:1px;height:12px;position:absolute;top:24px}.replay-track input[type=range]{appearance:none;cursor:pointer;background:0 0;width:100%;height:44px;margin:0;position:absolute;top:8px;left:0;right:0}.replay-track input[type=range]::-webkit-slider-runnable-track{background:0 0;height:44px}.replay-track input[type=range]::-moz-range-track{background:0 0;height:44px}.replay-track input[type=range]::-webkit-slider-thumb{appearance:none;box-sizing:border-box;background:var(--gold);border:3px solid var(--ink);width:22px;height:22px;box-shadow:var(--shadow);border-radius:50%;margin-top:11px}.replay-track input[type=range]::-moz-range-thumb{box-sizing:border-box;background:var(--gold);border:3px solid var(--ink);width:22px;height:22px;box-shadow:var(--shadow);border-radius:50%}.replay-track input[type=range]:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:12px}.replay-marker{top:calc(var(--row,0) * -22px);z-index:1;cursor:pointer;border:2px solid var(--ink);background:var(--tribe);width:22px;height:22px;color:var(--parchment);border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;transform:translate(-50%);box-shadow:0 1px 4px #1e0f0880}.replay-marker:before{content:"";border-radius:50%;position:absolute;inset:-11px -11px -2px}.replay-marker.village{z-index:0;pointer-events:none;border-width:1.5px;width:12px;height:12px;top:24px}.replay-marker.fallen{background:var(--ink);border-color:var(--tribe)}.replay-marker:hover{z-index:2;transform:translate(-50%)scale(1.2)}.replay-controls{align-items:center;gap:10px;display:flex}.replay-transport{align-items:center;gap:8px;margin:0 auto;display:flex}.replay-controls .play{width:56px;height:56px}.replay-eyes{gap:6px;display:flex}.replay-eye{cursor:pointer;border:3px solid var(--ink);background:var(--band-2);opacity:.7;border-radius:50%;place-items:center;width:44px;height:44px;padding:0;display:grid}.replay-eye img{border-radius:50%;width:36px;height:36px}.replay-eye.on{border-color:var(--tribe);opacity:1;box-shadow:0 0 0 2px var(--parchment)}.replay-eye.fallen img{filter:grayscale()}.replay-eye:hover{opacity:1}@media (max-width:640px){.replay-controls{flex-wrap:wrap;justify-content:center}.replay-transport{order:-1;justify-content:center;width:100%}}@media (max-height:500px){.replay-bar{gap:4px;padding-top:12px}.replay-log,.replay-count{display:none}.replay-track{margin-top:0}}@media (prefers-reduced-motion:reduce){.replay-log li{animation:none}}.menu-error{color:var(--danger);text-align:center;border-radius:var(--radius);background:var(--band-2);max-width:460px;padding:8px 14px}.end-scene{--word:var(--gold);--king-gap:36px;--king-small:min(104px, 22vh);--king-shadow:drop-shadow(0 8px 0 color-mix(in srgb, var(--ink) 45%, transparent));padding:0;overflow:hidden}.end-scene:focus-visible,.end-score-page:focus-visible{outline:none}.end-scene.defeat{--word:var(--iron-line)}.end-backdrop{background:radial-gradient(at 50% 35%,#1e0f0880 0,#1e0f08c7 50%,#1e0f08f0 100%);position:absolute;inset:0}.end-scene.defeat .end-backdrop{background:linear-gradient(transparent 55%, color-mix(in srgb, var(--danger-bg) 45%, transparent)), radial-gradient(ellipse at 50% 35%, #1e0f0859 0, #1e0f08bf 55%, #1e0f08f0 100%);-webkit-backdrop-filter:grayscale(.9)brightness(.7)}.end-flash{z-index:4;background:var(--parchment);opacity:0;pointer-events:none;position:absolute;inset:0}.end-fx{z-index:3;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.end-stage{z-index:2;padding:max(24px, env(safe-area-inset-top)) var(--gutter) max(24px, env(safe-area-inset-bottom));flex-direction:column;align-items:center;display:flex;position:absolute;inset:0;overflow:hidden auto}.end-hero{translate:0 var(--drop,0px);margin-top:auto;transition:translate .7s cubic-bezier(.2,.8,.2,1)}.end-scene.results .end-hero{translate:0}.end-shake{justify-items:center;display:grid}.end-king{isolation:isolate;width:min(180px,28vh);height:min(180px,28vh);margin-top:var(--king-gap);transition:width .6s cubic-bezier(.2,.8,.2,1),height .6s cubic-bezier(.2,.8,.2,1);position:relative}.end-hero.small .end-king{width:var(--king-small);height:var(--king-small)}.end-king img{object-fit:contain;width:100%;height:100%;filter:grayscale(0) brightness(1) var(--king-shadow);position:relative}.end-scene.defeat .end-king img{filter:grayscale(.85) brightness(.75) var(--king-shadow);rotate:-9deg}.end-rays{left:50%;top:var(--ray-y,40%);z-index:1;aspect-ratio:1;background:repeating-conic-gradient(color-mix(in srgb, var(--word) 30%, transparent) 0deg 5deg, transparent 5deg 15deg);pointer-events:none;width:84vmax;transition:top .7s cubic-bezier(.2,.8,.2,1),opacity .7s;animation:70s linear infinite end-spin;position:absolute;translate:-50% -50%;-webkit-mask:radial-gradient(circle closest-side,#000 0,#0000 100%);mask:radial-gradient(circle closest-side,#000 0,#0000 100%)}.end-scene.results .end-rays{top:var(--ray-end,calc(max(24px, env(safe-area-inset-top)) + var(--king-gap) + var(--king-small) / 2));opacity:.6}.end-glow{z-index:-1;background:radial-gradient(circle, color-mix(in srgb, var(--word) 55%, transparent) 0, transparent 65%);border-radius:50%;position:absolute;inset:-45%}.end-scene.defeat .end-glow{background:radial-gradient(circle, color-mix(in srgb, var(--danger-bg) 40%, transparent) 0, transparent 65%)}.end-crown{width:62%;filter:drop-shadow(0 4px 0 color-mix(in srgb, var(--ink) 45%, transparent));position:absolute;top:-24%;left:50%;overflow:visible;translate:-50%;rotate:-7deg}.end-crown .gold{fill:var(--gold);stroke:var(--ink);stroke-width:4px;stroke-linejoin:round}.end-crown .gem{fill:var(--brand);stroke:var(--ink);stroke-width:3px}.end-crown .rivet{fill:var(--gold-ink)}.end-scene.defeat .end-crown{opacity:0;translate:40% 280%;rotate:130deg}.end-word-box{place-items:center;display:grid;position:relative}.end-word{color:var(--word);--stroke-w:.09em;filter:drop-shadow(0 .06em 0 var(--ink));margin:6px 0 0;font-size:clamp(48px,min(19vw,17vh),132px);line-height:.95;transition:font-size .6s cubic-bezier(.2,.8,.2,1)}.end-scene:is(.victory,.defeat) .end-word{text-transform:uppercase}.end-hero.small .end-word{font-size:clamp(40px,min(13vw,12vh),76px)}.end-wave{aspect-ratio:1;border:6px solid var(--word);opacity:0;pointer-events:none;border-radius:50%;width:70%;position:absolute;top:50%;left:50%;translate:-50% -50%}.end-scene.defeat .end-wave{aspect-ratio:5;border-color:var(--text-faint);width:110%;top:92%}.end-line{margin:10px 0 0;padding:3px 16px 1px;font-size:20px}.end-skip{inset:auto 0 max(16px, env(safe-area-inset-bottom));text-align:center;color:var(--text-dim);margin:0;font-size:14px;position:absolute}.end-skip .keys{display:none}@media (pointer:fine){.end-skip .touch{display:none}.end-skip .keys{display:inline}}.end-next{opacity:0;visibility:hidden;margin:28px 0 auto;transition:opacity .45s ease-out,translate .6s cubic-bezier(.2,.8,.2,1),visibility 0s .6s;translate:0 24px}.end-scene.results .end-next{opacity:1;visibility:visible;transition-delay:.15s;translate:0}.end-standings{gap:6px;margin:0 0 14px;padding:0;list-style:none;display:grid}.end-standings li{border-radius:var(--radius);background:var(--wood-2);text-align:left;grid-template-columns:40px 40px 1fr auto;align-items:center;gap:10px;padding:4px 12px;display:grid}.end-standings li.me{background:color-mix(in srgb, var(--gold) 24%, var(--wood-2))}.end-standings li>b{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.end-standings li>span:last-child{color:var(--text-dim);white-space:nowrap}.end-place{--stroke-w:4px;font-size:20px}.end-standings li:first-child .end-place{color:var(--gold)}.end-score .end-standings li{animation:.38s cubic-bezier(.2,.8,.2,1) backwards end-rise;animation-delay:calc(var(--i) * 70ms + .15s)}.end-actions{bottom:calc(-1 * max(24px, env(safe-area-inset-bottom)));z-index:2;padding:14px 20px max(18px, env(safe-area-inset-bottom));border-radius:0 0 var(--radius-lg) var(--radius-lg);background:linear-gradient(transparent, color-mix(in srgb, var(--ink) 94%, transparent) 22px);flex-wrap:wrap;justify-content:center;gap:10px;margin:18px -20px -20px;display:flex;position:sticky}.end-actions>.btn{overflow-wrap:anywhere;flex:1 1 0;min-width:0;min-height:52px;margin-top:0;padding:0 10px;font-size:clamp(16px,4.8vw,20px);line-height:1.1}.end-scene.playing .end-backdrop{animation:.7s ease-out backwards end-fade}.end-scene.playing .end-rays{animation:.9s ease-out .25s backwards end-fade,70s linear infinite end-spin}.end-scene.playing .end-king{animation:.5s cubic-bezier(.2,.8,.2,1) .1s backwards end-rise}.end-scene.playing:not(.defeat) .end-word{animation:.44s .39s backwards end-slam}.end-scene.defeat.playing .end-word{animation:.62s .33s backwards end-drop}.end-scene.playing .end-wave{animation:.65s cubic-bezier(.1,.7,.3,1) .7s end-wave}.end-scene.victory.playing .end-flash{animation:.38s ease-out .7s end-flash}.end-scene.playing .end-shake{animation:.42s .7s end-shake}.end-scene.defeat.playing .end-shake{animation:.4s .7s end-thud}.end-scene.playing:not(.defeat) .end-king img{animation:.5s .7s end-pop}.end-scene.defeat.playing .end-king img{animation:.9s ease-out .7s backwards end-wither}.end-scene.victory.playing .end-crown{animation:.52s .95s backwards end-crown-drop}.end-scene.defeat.playing .end-crown{animation:1.1s .7s backwards end-crown-fall}.end-scene.playing .end-line{animation:.42s cubic-bezier(.2,.9,.3,1.3) 1.05s backwards end-unfurl}.end-scene.playing .end-skip{animation:.4s 1.6s backwards end-fade}.end-scene.results .end-rays,.end-scene.results.playing .end-rays{animation-play-state:paused}@keyframes end-fade{0%{opacity:0}}@keyframes end-spin{to{rotate:1turn}}@keyframes end-rise{0%{opacity:0;translate:0 40px}}@keyframes end-slam{0%{opacity:0;animation-timing-function:cubic-bezier(.5,0,.9,.4);scale:3.2}70%{opacity:1;animation-timing-function:ease-out;scale:.9}85%{scale:1.06}to{scale:1}}@keyframes end-drop{0%{animation-timing-function:cubic-bezier(.6,0,1,.6);translate:0 -70vh}60%{animation-timing-function:ease-out;translate:0;scale:1.14 .76}78%{scale:.96 1.05}to{scale:1}}@keyframes end-wave{0%{opacity:.9;scale:.3}to{opacity:0;scale:2.6}}@keyframes end-flash{0%{opacity:.7}to{opacity:0}}@keyframes end-shake{15%{translate:-10px 6px}30%{translate:9px -6px}45%{translate:-6px 3px}60%{translate:4px -2px}80%{translate:-2px 1px}}@keyframes end-thud{20%{translate:0 14px}45%{translate:0 -5px}70%{translate:0 2px}}@keyframes end-pop{30%{scale:1.14}}@keyframes end-wither{0%{filter:grayscale(0) brightness(1) var(--king-shadow);rotate:0deg}}@keyframes end-crown-drop{0%{opacity:0;animation-timing-function:cubic-bezier(.5,0,1,.5);translate:-50% -300%;rotate:-35deg}12%{opacity:1}65%{animation-timing-function:ease-out;translate:-50%;rotate:-7deg;scale:1.18 .82}82%{translate:-50% -10%;scale:.95 1.06}to{translate:-50%;scale:1}}@keyframes end-crown-fall{0%{opacity:1;translate:-50%;rotate:-7deg}18%{opacity:1;animation-timing-function:cubic-bezier(.5,0,1,.6);translate:-42% -12%;rotate:16deg}85%{opacity:1}}@keyframes end-unfurl{0%{opacity:0;scale:0 1}}@media (prefers-reduced-motion:reduce){.end-rays,.end-score .end-standings li{animation:none}.end-hero,.end-king,.end-word,.end-next{transition:none}}.end-score{--word:var(--gold);z-index:40;background:radial-gradient(at 50% 20%,#1e0f08b8 0,#1e0f08f0 70%);padding:0}.end-score.defeat{--word:var(--iron-line);background:linear-gradient(transparent 60%, color-mix(in srgb, var(--danger-bg) 35%, transparent)), radial-gradient(ellipse at 50% 20%, #1e0f08b8 0, #1e0f08f2 70%)}.end-score-page{padding:max(20px, env(safe-area-inset-top)) var(--gutter) max(24px, env(safe-area-inset-bottom));outline:none;flex-direction:column;align-items:center;animation:.35s ease-out end-fade;display:flex;position:absolute;inset:0;overflow:hidden auto}.es-head{text-align:center;margin-bottom:14px}.es-word{color:var(--word);text-transform:uppercase;--stroke-w:.09em;filter:drop-shadow(0 .06em 0 var(--ink));margin:0;font-size:clamp(38px,11vw,56px);line-height:1}.es-line{color:var(--text-dim);font:400 17px var(--font-display);margin:6px 0 0}.es-panel{width:100%;max-width:580px;max-height:none;padding:20px;animation:.5s cubic-bezier(.2,.8,.2,1) 50ms backwards end-rise;overflow:visible}.end-actions>.es-save{flex:100%;min-height:34px;font-size:15px}@media (max-width:380px){.end-score .end-standings li{grid-template-columns:34px 32px 1fr auto;gap:6px;padding:4px 8px;font-size:14px}.end-score .end-standings img{width:32px;height:32px}}@media (min-width:1100px) and (min-height:640px){.es-panel{max-width:1060px}.end-score .end-standings{grid-template-columns:repeat(2,minmax(0,1fr))}.review{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start}.review>.rv-race{grid-column:1/-1}.review>.rv-race .rv-graph{max-width:640px;margin:0 auto}}.review{text-align:left;gap:16px;margin-top:6px;display:grid}.review .glass{box-shadow:var(--rim);-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff4dc0f;border-radius:16px}.review b{color:var(--gold);font-weight:700}.end-score .review>section{animation:.5s cubic-bezier(.2,.8,.2,1) backwards end-rise;animation-delay:calc(var(--n) * .14s + .3s)}.rv-title{font:400 19px var(--font-display);--stroke-w:4px;letter-spacing:.02em;margin:0 0 8px}.rv-wait{color:var(--text-dim);margin:0;padding:12px 14px}.rv-race{padding:12px 12px 10px}.rv-graph{position:relative}.rv-graph svg{width:100%;height:auto;display:block;overflow:visible}.rv-grid{stroke:#fff4dc1f;stroke-width:1px}.rv-axis{fill:var(--text-faint);font:400 9px var(--font-display)}.rv-line{fill:none;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:0}.rv-line.you{stroke:var(--you);stroke-width:3.5px;filter:drop-shadow(0 1px #1e0f08cc)}.rv-line.rival{stroke:var(--rival);opacity:.85}.rv-area{fill:color-mix(in srgb, var(--you) 18%, transparent)}.end-score .rv-line{animation:1.3s cubic-bezier(.4,0,.2,1) .6s backwards rv-draw}.end-score .rv-area{animation:.8s ease-out 1.4s backwards end-fade}@keyframes rv-draw{0%{stroke-dashoffset:1px}}.rv-mark{cursor:pointer;outline:none}.rv-hit{fill:#0000;cursor:pointer}.rv-mark circle:not(.rv-hit){fill:var(--danger-bg);stroke:var(--ink);stroke-width:2px}.rv-mark.best circle:not(.rv-hit){fill:var(--gold)}.rv-mark.slipped circle:not(.rv-hit){fill:var(--iron)}.rv-mark text{fill:var(--parchment);font:400 11px var(--font-display);text-anchor:middle}.rv-mark.best text{fill:var(--gold-ink)}.rv-mark:hover circle:not(.rv-hit),.rv-mark:focus-visible circle:not(.rv-hit){stroke:var(--gold);stroke-width:3px}.end-score .rv-mark{animation:.4s cubic-bezier(.3,1.6,.5,1) backwards rv-pop;animation-delay:calc(var(--i) * .15s + 1.9s);transform-box:fill-box}@keyframes rv-pop{0%{opacity:0;scale:.2}}.rv-end{pointer-events:none;align-items:center;gap:3px;display:flex;position:absolute;right:0;translate:0 -50%}.rv-end img{border:2px solid var(--you);background:color-mix(in srgb, var(--you) 40%, var(--ink));border-radius:50%;width:24px;height:24px}.rv-end.rival img{border-color:var(--rival);background:color-mix(in srgb, var(--rival) 40%, var(--ink))}.rv-end b{color:var(--parchment);font:400 13px var(--font-display);--stroke-w:3px}.end-score .rv-end{animation:.5s ease-out 1.7s backwards end-fade}.rv-moments{gap:10px;display:grid}.rv-moments>.rv-title{margin-bottom:-2px}.rv-moment{padding:0 14px 14px;scroll-margin:80px;overflow:hidden}.rv-band{background:linear-gradient(90deg, color-mix(in srgb, var(--danger-bg) 85%, transparent), transparent);align-items:center;gap:8px;margin:0 -14px 10px;padding:6px 14px;display:flex}.rv-moment.slipped .rv-band{background:linear-gradient(90deg, color-mix(in srgb, var(--iron) 90%, transparent), transparent)}.rv-moment.best .rv-band{background:linear-gradient(90deg, color-mix(in srgb, var(--gold) 70%, transparent), transparent)}.rv-num{border:2px solid var(--ink);background:var(--danger-bg);width:24px;height:24px;font:400 13px var(--font-display);--stroke-w:3px;border-radius:50%;place-items:center;display:grid}.rv-moment.slipped .rv-num{background:var(--iron)}.rv-moment.best .rv-num{background:var(--gold)}.rv-tag{font:400 13px var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--parchment)}.rv-moment h4{font:400 19px / 1.15 var(--font-display);--stroke-w:4px;margin:0 0 6px}.rv-moment p{margin:0 0 6px;font-size:15px;line-height:1.4}.rv-why,.rv-instead{align-items:flex-start;gap:8px;display:flex}.rv-why svg,.rv-instead svg{color:var(--text-dim);flex:none;margin-top:2px}.rv-instead{background:color-mix(in srgb, var(--gold) 13%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--gold) 30%, transparent);border-radius:10px;padding:8px 10px}.rv-instead svg{color:var(--good)}.rv-watch{margin-top:4px}.end-score .rv-moment{animation:.45s cubic-bezier(.2,.8,.2,1) backwards end-rise;animation-delay:calc(var(--i) * .12s + .7s)}.rv-points{padding:12px 14px}.rv-bars{gap:10px;display:grid}.rv-bar-row{gap:3px;display:grid}.rv-bar-name{font:400 14px var(--font-display);color:var(--text)}.rv-bar{align-items:center;height:16px;display:flex;position:relative}.rv-bar:before{content:"";width:max(4px, calc(var(--w) * (100% - 64px)));background:linear-gradient(color-mix(in srgb, var(--you) 75%, white), var(--you) 70%);transform-origin:0;border-radius:0 6px 6px 0;height:100%;box-shadow:inset 0 0 0 1px #1e0f0880}.rv-bar.rival:before{background:linear-gradient(color-mix(in srgb, var(--rival) 75%, white), var(--rival) 70%);opacity:.8}.rv-bar b{color:var(--parchment);font:400 13px var(--font-display);margin-left:6px}.rv-bar.rival b{color:var(--text-dim)}.rv-bar-row.behind .rv-bar.rival b{color:var(--danger)}.end-score .rv-bar:before{animation:.8s cubic-bezier(.2,.8,.2,1) backwards rv-grow;animation-delay:calc(var(--i) * 90ms + .9s)}@keyframes rv-grow{0%{transform:scaleX(0)}}.rv-legend{color:var(--text-dim);gap:14px;margin:2px 0 0;font-size:13px;display:flex}.rv-legend span:before{content:"";background:var(--you);vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin-right:5px;display:inline-block}.rv-legend .rival:before{background:var(--rival)}.rv-decided{margin:4px 0 0;font-size:15px}@media (prefers-reduced-motion:reduce){.end-score .review>section,.end-score .rv-line,.end-score .rv-area,.end-score .rv-mark,.end-score .rv-end,.end-score .rv-moment,.end-score .rv-bar:before,.end-score-page,.es-panel{animation:none}}@media (max-height:500px) and (orientation:landscape){:root{--gutter:max(16px, env(safe-area-inset-left), env(safe-area-inset-right))}.topbar{padding:max(6px, env(safe-area-inset-top)) var(--gutter) 0}.toast{top:64px}.dock{padding:0 var(--gutter) max(8px, env(safe-area-inset-bottom))}.tile.research,.tile.command{width:66px;height:66px}.tile-label{--stroke-w:3.5px;margin-bottom:3px;font-size:12px}.waiting{width:142px;min-height:66px;font-size:12px}.undo-btn{top:calc(max(6px, env(safe-area-inset-top)) + 64px)}.tile-label{font-size:14px}.selection{border-top:var(--edge);border-right:var(--edge);border-top-right-radius:var(--radius-lg);width:min(540px,64vw);box-shadow:var(--shadow);right:auto}.selection>.infobar{border-top-right-radius:calc(var(--radius-lg) - 3px);border-top:0}.infobar{min-height:56px;padding:6px 12px 6px var(--gutter);gap:10px}.info-thumb{width:56px;height:56px;margin-top:0}button.info-thumb:after{inset:0}.info-text h2{font-size:19px}.info-text p{font-size:14px}.action-row{padding:8px 12px max(8px, env(safe-area-inset-bottom)) var(--gutter);justify-content:flex-start;gap:10px}.action{gap:3px;width:64px}.action-disc{width:52px;height:52px}.action-disc .thumb{width:42px;height:42px}.action .cost{font-size:16px}.action-label{font-size:12px}.menu-main{padding-top:max(12px, env(safe-area-inset-top));padding-bottom:12px}.game-title{margin:0}.game-title img{width:auto;height:min(46vh,200px)}.btn.hero{min-height:52px;font-size:clamp(18px,3vw,26px)}.menu-buttons{--col-gap:14px;justify-items:stretch;gap:10px var(--col-gap);grid-template-columns:repeat(2,1fr);width:min(560px,100%);margin-top:8px}.menu-buttons>.btn.hero{white-space:nowrap;min-width:0;padding:0 12px}.menu-buttons>.btn:last-child:nth-child(odd){width:calc((100% - var(--col-gap)) / 2);grid-column:1/-1;justify-self:center}}.invite-help{text-align:center;max-width:460px;margin:16px 0 0;padding:8px 16px;font-size:16px}.menu-page>.btn.ghost{margin-top:24px}.menu-screen.battle{background:var(--night-deep)}.menu-screen.battle:before{content:"";z-index:-1;background:linear-gradient(color-mix(in srgb, var(--night-deep) 80%, transparent), color-mix(in srgb, var(--night-deep) 36%, transparent) 30%, color-mix(in srgb, var(--night-deep) 44%, transparent) 58%, color-mix(in srgb, var(--night-deep) 92%, transparent) 100%), url(/invite-art.webp) 40% 30% / cover no-repeat;animation:30s ease-in-out 2 alternate art-drift;position:fixed;inset:-3%}@keyframes art-drift{to{transform:scale(1.07)translate(-1.2%,.8%)}}.battle-page{padding-bottom:max(32px, env(safe-area-inset-bottom))}.battle-page>.bt-top+*{margin-top:auto}.battle-page>:last-child{margin-bottom:auto}.menu-page.battle-page{padding-top:max(10px, env(safe-area-inset-top))}.bt-top{grid-template-columns:56px 1fr 56px;align-items:center;width:min(760px,100%);display:grid}.bt-top .back-btn{position:static}.bt-logo{-webkit-user-select:none;user-select:none;filter:drop-shadow(0 6px 14px #00000080);justify-self:center;width:clamp(140px,40vw,220px);height:auto;animation:.6s cubic-bezier(.3,1.5,.5,1) logo-in}.bt-head{text-align:center;text-transform:uppercase;outline:none;justify-items:center;max-width:100%;margin:clamp(10px,3vh,26px) 0 0;line-height:.95;display:grid;rotate:-2deg}.bt-head-top{overflow-wrap:anywhere;max-width:100%;color:var(--gold);--stroke-w:.11em;filter:drop-shadow(0 8px 16px #0000008c);font-size:clamp(40px,12vw,78px);animation:.42s cubic-bezier(.2,1.5,.4,1) both slam}.bt-head-bottom{color:var(--parchment);--stroke-w:.14em;font-size:clamp(21px,6vw,36px);animation:.3s ease-out .25s backwards fade-in}.bt-matchup{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:4px;width:min(620px,100%);margin-top:clamp(4px,2vh,18px);display:grid;position:relative}.bt-side{justify-items:center;gap:6px;min-width:0;display:grid}.bt-matchup:before,.bt-teams:before{content:"";z-index:-1;background:radial-gradient(ellipse closest-side, color-mix(in srgb, var(--night-deep) 76%, transparent), color-mix(in srgb, var(--night-deep) 48%, transparent) 60%, transparent);pointer-events:none;position:absolute;inset:-6% -14% -4%}.bt-stage{aspect-ratio:1;width:clamp(140px,42vw,240px);display:block;position:relative}.bt-glow{background:radial-gradient(circle, color-mix(in srgb, var(--tribe,var(--moonlight)) 55%, white) 0, color-mix(in srgb, var(--tribe,var(--moonlight)) 70%, transparent) 38%, transparent 70%);opacity:.85;border-radius:50%;position:absolute;inset:6% 4% 14%}.bt-hero{filter:drop-shadow(0 10px 12px #0000008c);--from:-50px;width:100%;height:auto;animation:.38s cubic-bezier(.2,1.2,.4,1) .15s backwards hero-in;display:block;position:relative}.bt-side.left .bt-hero,.bt-team:not(.mine) .bt-hero{--from:50px;scale:-1 1}.bt-side.empty .bt-glow{opacity:.45}.bt-side.empty .bt-hero{filter:grayscale(1) brightness(.22) drop-shadow(0 0 2px var(--moonlight)) drop-shadow(0 0 1px var(--moonlight)) drop-shadow(0 0 16px color-mix(in srgb, var(--moonlight) 60%, transparent))}.bt-ask{color:var(--gold);--stroke-w:.12em;font-size:clamp(44px,12vw,76px);animation:2.4s ease-in-out infinite bt-pulse;position:absolute;top:44%;left:50%;translate:-50% -50%}@keyframes bt-pulse{50%{opacity:.55;transform:scale(.94)}}.bt-vs{z-index:2;color:var(--gold);--stroke-w:.12em;pointer-events:none;font-size:clamp(44px,13vw,86px);animation:.34s cubic-bezier(.2,1.5,.4,1) .4s both slam;position:absolute;top:34%;left:50%;translate:-50% -50%;rotate:-8deg}.bt-plates{justify-items:center;gap:6px;min-width:0;max-width:100%;display:grid}.bt-name{text-wrap:balance;max-width:100%;min-height:44px;color:var(--parchment);font:400 clamp(18px, 5vw, 26px) / 1.1 var(--font-display);--stroke-w:.14em;overflow-wrap:anywhere;text-align:center;background:0 0;border:0;padding:6px 6px 0;display:inline-block}button.bt-name{cursor:pointer}button.bt-name .icon,.bt-change .icon{vertical-align:-.05em;width:.8em;height:.8em;color:var(--gold);flex:none;margin-left:.2em}.bt-ribbon{font-size:clamp(14px,4vw,18px)}.bt-change{background:0 0;border:0;place-items:center;min-height:44px;padding:0 10px;display:grid}button.bt-change{cursor:pointer}button.bt-change:disabled{opacity:.6;cursor:default}.bt-change .ribbon{align-items:center;gap:6px;display:inline-flex}.bt-wait{min-height:44px;color:var(--moonlight);font:400 clamp(18px, 5vw, 26px) var(--font-display);--stroke-w:.14em;align-items:center;display:inline-flex}.bt-dots:after{content:"…";vertical-align:bottom;width:1.1em;animation:1.4s steps(4,end) infinite bt-dots;display:inline-block;overflow:hidden}@keyframes bt-dots{0%{width:0}to{width:1.4em}}.bt-note{max-width:34ch;color:var(--parchment);font:600 16px / 1.35 var(--font);--stroke-w:4px;text-align:center;margin:14px 0 0}.bt-loading{margin-top:30vh}.bt-actions{justify-items:center;gap:14px;width:min(460px,100%);margin-top:clamp(14px,3vh,28px);display:grid}.bt-actions>.btn.hero{width:min(380px,100%)}.bt-accept{animation:2.2s ease-in-out 1s 4 breathe}.bt-share .icon{width:.9em;height:.9em}.bt-link{border:var(--edge);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--ink) 82%, transparent);width:min(420px,100%);min-height:54px;box-shadow:var(--rim);color:var(--parchment);font:400 clamp(14px, 4.2vw, 19px) var(--font-display);letter-spacing:.02em;justify-content:space-between;align-items:center;gap:10px;padding:6px 7px 6px 16px;display:flex}.bt-url{overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;min-width:0}.bt-copy{border-radius:var(--radius);background:var(--iron);min-height:44px;box-shadow:var(--rim-light);color:var(--parchment);font:400 15px var(--font-display);text-transform:uppercase;cursor:pointer;border:0;flex:none;align-items:center;gap:6px;padding:0 12px;display:inline-flex}.bt-facts{color:var(--parchment-2);font:600 16px / 1.5 var(--font);--stroke-w:4px;text-align:center;margin:2px 0 0}.bt-teams{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,6vw,56px);width:min(700px,100%);margin-top:clamp(10px,2.5vh,22px);display:grid;position:relative}.bt-team{border:var(--edge);border-radius:var(--radius-lg);background:color-mix(in srgb, var(--night-deep) 74%, transparent);min-width:0;box-shadow:var(--rim);align-content:start;justify-items:center;gap:8px;padding:10px 6px 12px;display:grid}.bt-team.mine{background:linear-gradient(color-mix(in srgb, var(--gold) 30%, var(--night-deep)), color-mix(in srgb, var(--night-deep) 78%, transparent) 70%)}.bt-team-name{font:400 clamp(18px, 5vw, 24px) var(--font-display);color:var(--moonlight);--stroke-w:.14em;text-transform:uppercase}.bt-team.mine .bt-team-name{color:var(--gold)}.bt-seat{justify-items:center;gap:2px;width:100%;min-width:0;display:grid}.bt-seat .bt-stage{width:clamp(84px,24vw,150px)}.bt-seat .bt-name{font-size:clamp(15px,4.2vw,20px)}.bt-seat span.bt-name{min-height:36px}.bt-seat .bt-ribbon{font-size:clamp(12px,3.4vw,15px)}.bt-seat.open{border:3px dashed color-mix(in srgb, var(--parchment) 40%, transparent);border-radius:var(--radius-lg);min-height:clamp(120px,34vw,200px);color:var(--parchment);font:inherit;background:0 0;align-content:center}.bt-seat.open.join{border-color:var(--gold);background:color-mix(in srgb, var(--gold) 10%, transparent);cursor:pointer}.bt-seat.open.join:active{transform:translateY(2px)}.bt-open-mark{font:400 clamp(36px, 10vw, 54px) / 1 var(--font-display);color:var(--parchment-2);--stroke-w:.12em}.bt-seat.join .bt-open-mark{color:var(--gold)}.bt-open-line{font:600 16px var(--font);color:var(--parchment-2)}.bt-teams>.bt-vs{font-size:clamp(34px,10vw,64px);top:48%}@media (min-width:720px){.bt-teams{width:min(980px,100%)}.bt-team{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.bt-team-name{grid-column:1/-1}.bt-seat.open{align-self:stretch;min-height:150px}.bt-teams>.bt-vs{top:54%}}@media (hover:hover) and (pointer:fine){.bt-seat.open.join:hover,.bt-copy:hover{filter:brightness(1.12)}}@media (prefers-reduced-motion:reduce){.menu-screen.battle:before,.bt-logo,.bt-head-top,.bt-head-bottom,.bt-hero,.bt-vs,.bt-side.empty .bt-ask,.bt-accept,.bt-dots:after{animation:none}}.menu-float{left:50%;bottom:calc(24px + env(safe-area-inset-bottom));z-index:40;position:fixed;transform:translate(-50%)}.online-bar{top:calc(max(12px, env(safe-area-inset-top)) + 6px);z-index:3;max-width:calc(100% - 2 * var(--gutter));border-radius:var(--radius);white-space:nowrap;align-items:center;gap:12px;padding:8px 16px;font-size:16px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.online-bar>span:first-child{min-width:0;display:flex}.online-bar .ob-name{text-overflow:ellipsis;min-width:0;overflow:hidden}.online-bar .ob-dim{color:var(--text-dim);font-variant-numeric:tabular-nums;align-items:center;gap:4px;display:inline-flex}.online-bar .btn{min-height:44px}.online-bar>.ob-text{width:max-content;max-width:min(320px, calc(100vw - 2 * var(--gutter) - 32px));white-space:normal;text-align:center;display:block}@media (max-width:1100px){.online-bar{top:calc(max(12px, env(safe-area-inset-top)) + 62px)}}@media (max-width:1100px) and (min-width:1000px) and (min-height:700px){.online-bar{top:calc(max(12px, env(safe-area-inset-top)) + 90px)}}@media (max-width:640px){.online-bar{flex-wrap:wrap;justify-content:center;row-gap:4px}}.menu-account{justify-items:center;gap:10px;margin-top:clamp(8px,1.6vh,18px);display:grid}@media (min-width:900px){.menu-account{top:max(16px, env(safe-area-inset-top));right:var(--gutter);justify-items:end;margin:0;position:absolute}}.acct-signin{align-items:center;gap:10px;margin:0;font-size:18px;display:flex}.acct-dev{top:max(10px, env(safe-area-inset-top));z-index:30;border:2px dashed var(--ink);border-radius:var(--radius);background:color-mix(in srgb, var(--parchment) 85%, transparent);color:var(--parchment-ink);font:400 13px var(--font-display);padding:4px 10px;position:fixed;left:10px}.acct-dev>summary{cursor:pointer}.acct-dev-list{gap:6px;padding:6px 0 2px;display:grid}.acct-dev small{text-align:center;color:var(--danger-bg);flex-basis:100%}.acct-overlay{z-index:50;position:fixed}.acct-line{margin:0 0 14px}.acct-small{color:var(--text-dim);margin:12px 0 0;font-size:14px}.acct-email{overflow-wrap:anywhere}.acct-form{gap:8px;display:grid}.acct-form>.btn{margin-top:8px}.acct-label{text-align:left;color:var(--text-dim);margin:0 0 6px;font-size:14px;display:block}.acct-input{border:var(--edge);border-radius:var(--radius);background:var(--parchment);width:100%;min-height:52px;color:var(--parchment-ink);font:600 18px var(--font);-webkit-user-select:text;user-select:text;padding:0 14px}.acct-input:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.acct-code{text-align:center;font:400 32px var(--font-display);letter-spacing:.3em;padding-left:calc(14px + .3em)}.acct-hint,.acct-link{min-height:44px;color:var(--gold);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;align-items:center;padding:0 4px;text-decoration:underline;display:inline-flex}.acct-hint{justify-self:start}.acct-error{margin:10px auto 0}.acct-resend{margin-top:14px}.acct-actions{margin-top:16px}.acct-actions.row{flex-wrap:wrap}.acct-name{justify-items:center;margin-bottom:10px;display:grid}.acct-name-btn{cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;min-height:44px;font-size:26px;display:inline-flex}.acct-actions.row>.btn{white-space:nowrap;flex:1 1 0;min-width:0;padding:0 12px}.acct-sheet .sheet-head h2{text-align:left;margin:0;font-size:clamp(22px,7vw,30px)}.pf-page{padding-top:max(10px, env(safe-area-inset-top));padding-bottom:max(40px, env(safe-area-inset-bottom))}.pf-top{grid-template-columns:1fr auto 1fr;align-items:center;width:min(640px,100%);display:grid}.pf-logo{-webkit-user-select:none;user-select:none;filter:drop-shadow(0 6px 14px #00000080);width:clamp(120px,34vw,180px);height:auto}.pf-tools{justify-content:flex-end;gap:8px;display:flex}.pf-top>.btn{justify-self:start}.pf-toast{top:max(16px, env(safe-area-inset-top));z-index:30;border-radius:var(--radius);background:var(--glass);color:var(--parchment);font:400 17px var(--font-display);margin:0;padding:8px 16px;animation:.2s ease-out pop-in;position:fixed;left:50%;translate:-50%}@keyframes pf-glow-in{0%{opacity:0;transform:scale(.6)}}.pf-tags{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 22px;margin-top:12px;animation:.3s ease-out .5s backwards fade-in;display:flex}.pf-tags .ribbon{font-size:17px}.pf-since{--stroke-w:4px;font-size:16px}.pf-body{gap:14px;width:min(640px,100%);margin-top:18px;display:grid}.pf-note{text-align:center;margin:0;padding:14px 16px;font-size:16px}.pf-link{overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;width:min(640px,100%);margin-bottom:10px}.pf-head{text-transform:uppercase;margin:10px 0 0;font-size:24px}.pf-cta{justify-items:center;gap:12px;animation:.3s ease-out .55s backwards pop-in;display:grid}.pf-cta>.btn.big{min-width:min(320px,100%)}.pf-save{text-align:center;justify-items:center;gap:10px;padding:14px 16px;font-size:16px;display:grid}.pf-empty{text-align:center;justify-items:center;gap:12px;padding:18px 16px;font-size:17px;display:grid}.pf-empty p{margin:0}.pf-signin{align-items:center;gap:10px;display:flex}.pf-rivalry{grid-template-columns:1fr auto 1fr;align-items:center;gap:4px 12px;padding:12px 16px 10px;animation:.3s ease-out .6s backwards pop-in;display:grid}.pf-side{overflow-wrap:anywhere;align-items:center;gap:8px;min-width:0;font-size:20px;display:flex}.pf-side:first-child{justify-content:flex-end}.pf-side img{flex:none;width:44px;height:44px}.pf-score-big{color:var(--gold);--stroke-w:.12em;font-variant-numeric:tabular-nums;font-size:44px;line-height:1;animation:.34s cubic-bezier(.2,1.5,.4,1) .7s both slam;rotate:-4deg}.pf-score-big i{margin:0 6px;font-style:normal}.pf-lead{text-align:center;color:var(--text-dim);grid-column:1/-1;font-size:14px}.pf-record{gap:10px;display:grid}.pf-stats{grid-template-columns:1fr 1fr;gap:12px;padding-left:18px;display:grid}.pf-stat{min-height:64px;animation:pop-in .3s var(--d,0s) ease-out backwards;grid-template-columns:auto 1fr;align-items:center;column-gap:8px;padding:6px 12px 6px 50px;display:grid;position:relative}.pf-stat img{width:72px;height:72px;filter:var(--art-drop);position:absolute;top:50%;left:-18px;translate:0 -50%}.pf-stat b{--stroke-w:4px;text-shadow:var(--text-drop);font-variant-numeric:tabular-nums;font-size:34px;line-height:1}.pf-stat span{font:400 14px var(--font-display);color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em}.pf-split{color:var(--text-dim);flex-wrap:wrap;justify-content:space-around;gap:4px 16px;padding:10px 14px;font-size:16px;display:flex}.pf-split b{font:400 17px var(--font-display);color:var(--parchment);margin-left:4px}.pf-form-bar{align-items:center;gap:12px;padding:10px 14px;display:flex}.pf-form-bar>span{font:400 14px var(--font-display);color:var(--text-dim);text-transform:uppercase;flex:none}.pf-form{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.pf-form li{clip-path:polygon(0 0,100% 0,100% 58%,50% 100%,0 58%);background:var(--face-iron);width:26px;height:30px;color:var(--parchment);font:400 14px var(--font-display);-webkit-text-stroke:3px var(--ink);paint-order:stroke fill;animation:pf-shield .25s cubic-bezier(.2, 1.5, .4, 1) var(--d,0s) backwards;place-items:center;padding-bottom:3px;display:grid}.pf-form li.won{background:var(--face-gold);color:var(--gold-ink);-webkit-text-stroke:0}@keyframes pf-shield{0%{opacity:0;transform:translateY(-10px)scale(1.4)}}.pf-log,.pf-device{gap:10px;display:grid}.pf-log>ul{gap:12px;margin:0;padding:0;list-style:none;display:grid}.pf-match{cursor:pointer;animation:pop-in .3s var(--d,0s) ease-out backwards;overflow:hidden}.pf-match.old{cursor:default}.pf-match-head{background:var(--face-iron);justify-content:space-between;align-items:center;gap:10px;padding:6px 14px;display:flex}.pf-lp{white-space:nowrap;background:var(--glass-deep);font:400 15px var(--font-display);color:var(--parchment);border-radius:999px;flex-shrink:0;margin-right:auto;padding:1px 9px}.pf-lp.up{color:var(--good)}.pf-lp.down{color:var(--danger)}.pf-match.won .pf-match-head{background:var(--face-gold)}.pf-match.lost .pf-match-head,.pf-form li.lost{background:linear-gradient(color-mix(in srgb, var(--brand) 78%, white), var(--brand) 55%, color-mix(in srgb, var(--brand) 75%, black))}.pf-match-head b{--stroke-w:4px;text-transform:uppercase;font-size:22px}.pf-match.won .pf-match-head b{color:var(--parchment)}.pf-match-head span{font:400 14px var(--font-display);color:var(--parchment);-webkit-text-stroke:3px var(--ink);paint-order:stroke fill}.pf-match-body{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;padding:10px 12px 4px;display:grid}.pf-side-list{gap:2px;min-width:0;margin:0;padding:0;list-style:none;display:grid}.pf-side-list li{align-items:center;gap:6px;min-width:0;display:flex}.pf-side-list.end li{flex-direction:row-reverse}.pf-side-list.end .pf-name-link{text-align:right}.pf-points{text-align:center;justify-items:center;display:grid}.pf-points b{--stroke-w:4px;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:19px}.pf-points i{color:var(--gold);margin:0 4px;font-style:normal}.pf-points span{color:var(--text-dim);font-size:12px}.pf-match-foot{color:var(--text-dim);justify-content:flex-end;align-items:center;gap:10px;padding:4px 12px 10px 14px;font-size:14px;display:flex}.pf-match-foot .btn{flex:none}.pf-crest{border:var(--edge);background:radial-gradient(circle at 50% 35%, color-mix(in srgb, var(--tribe,var(--iron)) 70%, white), var(--tribe,var(--iron)) 75%);width:40px;height:40px;box-shadow:var(--rim-light);object-fit:cover;border-radius:50%;flex:none}.pf-name-link{min-width:0;min-height:44px;color:var(--parchment);font:600 16px var(--font);text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, var(--parchment) 45%, transparent);text-decoration-color:color-mix(in srgb, var(--parchment) 45%, transparent);text-underline-offset:3px;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;text-align:left;background:0 0;border:0;padding:0 2px;overflow:hidden}.pf-name-link:hover{-webkit-text-decoration-color:var(--gold);text-decoration-color:var(--gold)}.pf-name-link.bot{color:var(--text-dim);cursor:inherit;align-items:center;text-decoration:none;display:inline-flex}.pf-watch{width:48px;height:48px}.pf-last{align-items:center;gap:12px;padding:10px 12px;display:flex}.pf-last div{flex:1;min-width:0;display:grid}.pf-last span{color:var(--text-dim);font-size:14px}.pf-log>.btn,.pf-device>.btn{justify-self:center}.pick-clock{align-items:center;gap:10px;width:min(360px,100%);margin:0 auto 8px;display:flex}.pc-bar{border:2px solid var(--ink);background:var(--glass-deep);border-radius:999px;flex:1;height:12px;overflow:hidden}.pc-fill{background:var(--face-gold);transform-origin:0;width:100%;height:100%;animation:linear forwards pick-drain;display:block}@keyframes pick-drain{0%{transform:scaleX(var(--from,1))}to{transform:scaleX(0)}}.pick-clock.late .pc-fill{background:var(--danger-bg)}.pc-left{min-width:2ch;font:400 28px / 1 var(--font-display);color:var(--parchment);--stroke-w:.14em;text-align:center}.pick-clock.late .pc-left{color:var(--danger)}.rec-tag.taken{background:var(--iron);color:var(--parchment)}.match-page:has(.pick-clock) .tp-art{--art-h:clamp(120px, calc(var(--screen-h) - 530px), 290px)}.match-page:has(.pick-clock):has(.bt-note) .tp-art{--art-h:clamp(120px, calc(var(--screen-h) - 565px), 290px)}.champ-row{grid-template-columns:minmax(0,1fr) minmax(0,.85fr);align-items:center;gap:clamp(8px,3vw,28px);width:min(560px,100%);display:grid}.lobby-page>.champ.with-beside{--stage:clamp(130px, min(44vw, 23vh), 250px)}.lobby-page>.champ.with-beside .champ-name{font-size:clamp(24px,6.4vw,38px)}.champ-beside{justify-self:center;justify-items:center;width:min(100%,clamp(110px,min(36vw,20vh),210px));display:grid}.champ-beside .bt-side,.champ-beside .bt-stage{width:100%}.champ.with-beside>.rank-plate{margin-top:12px;animation:.3s ease-out .4s backwards fade-in}.lobby-page>.champ{margin:auto 0}.lobby-page>.menu-hub{width:min(380px,100%);padding-top:12px}.lobby-page>.menu-hub>.btn.hero{width:100%}.rank-frame{pointer-events:none;--metal-hi:#c9d3dc;--metal-mid:#6f7b86;--metal-lo:#2c3238;width:150%;height:auto;position:absolute;top:-15%;left:-25%;overflow:visible}.rank-frame[data-tier=bronze]{--metal-hi:#f6c99a;--metal-mid:var(--bronze);--metal-lo:#6b3514}.rank-frame[data-tier=silver]{--metal-hi:#fff;--metal-mid:var(--silver);--metal-lo:#6d7884}.rank-frame[data-tier=gold]{--metal-hi:#fff4b8;--metal-mid:var(--gold);--metal-lo:#8a560a;filter:drop-shadow(0 0 10px color-mix(in srgb, var(--gold) 55%, transparent))}.rf-hi{stop-color:var(--metal-hi)}.rf-mid{stop-color:var(--metal-mid)}.rf-lo{stop-color:var(--metal-lo)}.rf-disc-in{stop-color:color-mix(in srgb, var(--tribe,var(--moonlight)) 32%, var(--night-deep));stop-opacity:.75}.rf-disc-out{stop-color:var(--night-deep);stop-opacity:.85}.rf-line{stroke:var(--ink);stroke-width:2.5px;stroke-linejoin:round}.rf-edge{stroke:var(--ink);stroke-width:2.5px}.rf-rivet{fill:var(--metal-hi);stroke:var(--ink);stroke-width:1.5px}.rf-gem{fill:var(--brand);stroke:var(--ink);stroke-width:2px}.rf-shine{stroke:#fffbe6;stroke-dasharray:9 91;stroke-linecap:round;opacity:.85;transform-origin:150px 140px;animation:4.5s linear infinite rf-run}@keyframes rf-run{to{transform:rotate(1turn)}}.rank-shield{z-index:1}.rf-division{font:400 24px var(--font-display);fill:var(--parchment);stroke:var(--ink);stroke-width:4px;paint-order:stroke;text-anchor:middle}.champ.framed .champ-art{position:relative;translate:0 -2%;scale:.92}.champ.framed{padding-top:calc(var(--stage) * .1)}.champ.framed .champ-name{margin-top:calc(var(--stage) * .2)}.champ-rank{font:400 clamp(16px, 4.4vw, 20px) var(--font-display);color:var(--parchment);--stroke-w:.14em;margin-top:2px}@media (prefers-reduced-motion:reduce){.rf-shine{animation:none}}.champ.framed>.champ-row{gap:clamp(30px,11vw,72px)}.lobby-page>.champ.framed.with-beside{--stage:clamp(110px, min(34vw, 21vh), 220px)}.champ-beside>.champ.framed{--stage:clamp(100px, min(30vw, 19vh), 190px)}.champ-beside>.champ .champ-name{font-size:clamp(20px,5.4vw,30px)}.found-screen{z-index:20;will-change:opacity;padding:var(--gutter);background:radial-gradient(circle at 50% 46%, color-mix(in srgb, var(--gold) 18%, var(--night-deep)) 0, var(--night-deep) 62%);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:clamp(14px,3vh,28px);display:flex;position:fixed;inset:0;overflow:hidden}.found-screen:before{content:"";background:radial-gradient(circle at 50% 42%, var(--gold), transparent 70%);opacity:0;pointer-events:none;animation:.45s ease-out found-flash;position:absolute;inset:0}@keyframes found-flash{0%{opacity:.45}}.found-screen.out{animation:.5s ease-in forwards found-out}@keyframes found-out{to{opacity:0;scale:1.08}}.found-word{font:400 clamp(54px, 16vw, 120px) / .95 var(--font-display);color:var(--gold);--stroke-w:.1em;text-align:center;text-transform:uppercase;filter:drop-shadow(0 10px 20px #0009);margin:0;animation:.5s cubic-bezier(.2,1.5,.4,1) .15s both slam;rotate:-3deg}.found-sides{align-items:center;gap:clamp(10px,4vw,30px);display:flex}.found-side{animation:.5s cubic-bezier(.2,1.2,.4,1) .55s both found-side;display:flex}.found-side.rivals{animation-name:found-side-r}.found-side img{filter:drop-shadow(0 6px 10px #0000008c);width:clamp(88px,26vw,150px);height:auto}.found-side img+img{margin-left:-18%}.found-side.rivals img{filter:grayscale(1) brightness(.22) drop-shadow(0 0 2px var(--moonlight)) drop-shadow(0 0 10px color-mix(in srgb, var(--moonlight) 50%, transparent));scale:-1 1}@keyframes found-side{0%{opacity:0;translate:-60px}}@keyframes found-side-r{0%{opacity:0;translate:60px}}.found-vs{font:400 clamp(26px, 7vw, 44px) var(--font-display);color:var(--parchment);--stroke-w:.14em;animation:.4s cubic-bezier(.2,1.5,.4,1) .85s both slam}.found-next{font:400 clamp(22px, 6vw, 34px) var(--font-display);color:var(--parchment);--stroke-w:.14em;text-transform:uppercase;margin:0;animation:.4s ease-out 1.2s both fade-in}.pick-wrap{display:contents}.pick-wrap.up .tribe-set,.pick-wrap.up .pick-clock,.pick-wrap.up .tribe-controls{animation:.6s cubic-bezier(.2,.9,.3,1) both pick-in}.pick-wrap.up .tribe-controls{animation-delay:.18s}@media (prefers-reduced-motion:reduce){.found-screen,.found-screen *,.found-screen:before,.pick-wrap.up .tribe-set,.pick-wrap.up .pick-clock,.pick-wrap.up .tribe-controls{animation:none}}.tribe-row.locked .tribe-pick:not(.locked){opacity:.25;filter:grayscale(.6);transition:opacity .3s,filter .3s}.tribe-pick.locked{box-shadow:0 0 0 4px var(--gold), 0 0 28px 6px color-mix(in srgb, var(--gold) 60%, transparent);animation:.5s cubic-bezier(.2,1.4,.4,1) lock-pulse}@keyframes lock-pulse{35%{scale:1.06}}.tp-stamp{z-index:2;border:4px solid var(--gold);background:color-mix(in srgb, var(--night-deep) 55%, transparent);color:var(--gold);font:400 clamp(26px, 8vw, 40px) var(--font-display);--stroke-w:.12em;text-transform:uppercase;white-space:nowrap;border-radius:10px;padding:4px 16px 2px;animation:.35s cubic-bezier(.2,1.6,.4,1) both stamp;position:absolute;top:38%;left:50%;translate:-50% -50%;rotate:-10deg}@keyframes stamp{0%{opacity:0;scale:2.2}}.match-versus.phase-reveal .bt-matchup>.bt-side:first-child,.match-versus.phase-reveal .bt-team.mine{animation:.6s cubic-bezier(.2,1,.3,1) both side-in}.match-versus.phase-reveal .bt-vs{animation:.4s cubic-bezier(.2,1.5,.4,1) .8s both slam}.match-versus.phase-reveal .bt-matchup>.bt-side:nth-child(2),.match-versus.phase-reveal .bt-team:not(.mine){animation:.5s cubic-bezier(.3,1.3,.4,1) 1.3s both charge-in}.match-versus.phase-reveal .bt-matchup>.bt-side:nth-child(2) .bt-plates,.match-versus.phase-reveal .bt-team:not(.mine) .bt-plates{animation:.4s ease-out 1.8s both fade-in}.match-versus.phase-reveal .bt-head-bottom{animation:.45s ease-out 2s both fade-in}@keyframes side-in{0%{opacity:0;translate:-70px}}@keyframes charge-in{0%{opacity:0;translate:140px;scale:1.25}70%{translate:-8px}}.skip-hint{bottom:max(14px, env(safe-area-inset-bottom));z-index:21;background:var(--glass);color:var(--text-dim);font:600 13px var(--font);pointer-events:none;border-radius:999px;margin:0;padding:4px 12px;animation:.4s ease-out 1.2s both fade-in;position:fixed;left:50%;translate:-50%}@media (prefers-reduced-motion:reduce){.tribe-pick.locked,.tp-stamp,.match-versus.phase-reveal *,.match-versus.phase-reveal .bt-team,.skip-hint{animation:none}}.pick-clock.frozen .pc-fill{animation-play-state:paused}.pick-wrap.up .pick-clock.frozen{animation:none}.found-sides.later{visibility:hidden}.pick-backdrop{z-index:-1;background:radial-gradient(circle at 50% 46%, color-mix(in srgb, var(--gold) 14%, var(--night-deep)) 0, var(--night-deep) 68%);pointer-events:none;position:fixed;inset:0;overflow:hidden}.pick-backdrop.locked{background:radial-gradient(circle at 50% 46%, color-mix(in srgb, var(--gold) 26%, var(--night-deep)) 0, var(--night-deep) 72%);transition:background .4s}.pick-backdrop.locked .coin-rays{opacity:1;background:repeating-conic-gradient(color-mix(in srgb, var(--gold) 20%, transparent) 0 6deg, transparent 6deg 18deg)}.brand-logo{justify-self:center;line-height:0;display:inline-block;position:relative}.beta-tag{border:2px solid var(--ink);background:linear-gradient(color-mix(in srgb, var(--brand) 82%, white), var(--brand) 60%);box-shadow:0 3px 0 var(--ink);color:var(--parchment);font:400 clamp(11px, 2.4vh, 18px) / 1 var(--font-display);--stroke-w:.12em;letter-spacing:.06em;text-transform:uppercase;pointer-events:none;border-radius:6px;padding:.18em .5em .1em;position:absolute;bottom:-4%;right:-3%;rotate:-8deg}.bt-logo+.beta-tag,.pf-logo+.beta-tag{box-shadow:0 2px 0 var(--ink);border-width:1.5px;font-size:11px}.discord-btn{min-height:42px;text-decoration:none}
