*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-ui,-apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif);background:var(--surface-0,#0e0e0e);color:var(--text-1,#eee);touch-action:manipulation}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/oswald-cyrillic-ext-400-normal-DaQSmjrl.woff2)format("woff2"),url(/assets/oswald-cyrillic-ext-400-normal-BkkDEomt.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/oswald-cyrillic-400-normal-Dakd8U79.woff2)format("woff2"),url(/assets/oswald-cyrillic-400-normal-BUD0W5Zj.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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)format("woff2"),url(/assets/oswald-vietnamese-400-normal-BupuUjkp.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/oswald-latin-ext-400-normal-DbVOzfr-.woff2)format("woff2"),url(/assets/oswald-latin-ext-400-normal-KcyBFdGH.woff)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:Oswald;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/oswald-latin-400-normal-BAFo8sP8.woff2)format("woff2"),url(/assets/oswald-latin-400-normal-D1wpMXgf.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}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/oswald-cyrillic-ext-500-normal-DngHVvy4.woff2)format("woff2"),url(/assets/oswald-cyrillic-ext-500-normal-Hz7kEHBT.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/oswald-cyrillic-500-normal-Dz4ZC46J.woff2)format("woff2"),url(/assets/oswald-cyrillic-500-normal-CjKr_ZfC.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/oswald-vietnamese-500-normal-hXcn5ojQ.woff2)format("woff2"),url(/assets/oswald-vietnamese-500-normal-Bi4XG4HV.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/oswald-latin-ext-500-normal-QdEKgtiz.woff2)format("woff2"),url(/assets/oswald-latin-ext-500-normal-DcyNJhgm.woff)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:Oswald;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/oswald-latin-500-normal-B-eyT0Dw.woff2)format("woff2"),url(/assets/oswald-latin-500-normal-DM85Di4w.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}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/oswald-cyrillic-ext-600-normal-DJv8RkPb.woff2)format("woff2"),url(/assets/oswald-cyrillic-ext-600-normal-CXH_3Vsf.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/oswald-cyrillic-600-normal-OIkAk3Qq.woff2)format("woff2"),url(/assets/oswald-cyrillic-600-normal-B7zyAoGs.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/oswald-vietnamese-600-normal-h0z1RevK.woff2)format("woff2"),url(/assets/oswald-vietnamese-600-normal-CH5CIKWT.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/oswald-latin-ext-600-normal-5Cvn_Zbc.woff2)format("woff2"),url(/assets/oswald-latin-ext-600-normal-BUCHT9gM.woff)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:Oswald;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/oswald-latin-600-normal-plFmSr5g.woff2)format("woff2"),url(/assets/oswald-latin-600-normal-DRToI_2E.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}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-400-normal-obahsSVq.woff2)format("woff2"),url(/assets/inter-cyrillic-400-normal-HOLc17fK.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2)format("woff2"),url(/assets/inter-greek-ext-400-normal-KugGGMne.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-400-normal-B4URO6DV.woff2)format("woff2"),url(/assets/inter-greek-400-normal-q2sYcFCs.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-vietnamese-400-normal-DMkecbls.woff2)format("woff2"),url(/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2)format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff)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:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.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}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-500-normal-BasfLYem.woff2)format("woff2"),url(/assets/inter-cyrillic-500-normal-CxZf_p3X.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-ext-500-normal-C4iEst2y.woff2)format("woff2"),url(/assets/inter-greek-ext-500-normal-2j5mBUwD.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-500-normal-BIZE56-Y.woff2)format("woff2"),url(/assets/inter-greek-500-normal-Xzm54t5V.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-vietnamese-500-normal-DOriooB6.woff2)format("woff2"),url(/assets/inter-vietnamese-500-normal-mJboJaSs.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2)format("woff2"),url(/assets/inter-latin-ext-500-normal-BxGbmqWO.woff)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:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2)format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.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}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-600-normal-CWCymEST.woff2)format("woff2"),url(/assets/inter-cyrillic-600-normal-4D_pXhcN.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2)format("woff2"),url(/assets/inter-greek-ext-600-normal-B8X0CLgF.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-600-normal-plRanbMR.woff2)format("woff2"),url(/assets/inter-greek-600-normal-BZpKdvQh.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2)format("woff2"),url(/assets/inter-vietnamese-600-normal-BuLX-rYi.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2)format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.woff)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:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2)format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.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}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-ext-700-normal-BjwYoWNd.woff2)format("woff2"),url(/assets/inter-cyrillic-ext-700-normal-LO58E6JB.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-700-normal-CjBOestx.woff2)format("woff2"),url(/assets/inter-cyrillic-700-normal-DrXBdSj3.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-ext-700-normal-qfdV9bQt.woff2)format("woff2"),url(/assets/inter-greek-ext-700-normal-BoQ6DsYi.woff)format("woff");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-700-normal-C3JjAnD8.woff2)format("woff2"),url(/assets/inter-greek-700-normal-BUv2fZ6O.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-vietnamese-700-normal-DlLaEgI2.woff2)format("woff2"),url(/assets/inter-vietnamese-700-normal-BZaoP0fm.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-ext-700-normal-Ca8adRJv.woff2)format("woff2"),url(/assets/inter-latin-ext-700-normal-TidjK2hL.woff)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:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2)format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.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}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAASIABAAAAAACQQAAAQuAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVF4AdBEICoRkhAALIAABNgIkAzoEIAWFAAeBFAwHG2oHKJ6DceNW4lJEFHn9tEOE37LNsvkjHr7f739rn3u+OSrSxLQytE91Dw2PYtNVq3Qaw/vJ7fUBMdOj/u2ImB98cT5WUx9F13ZKt06mU7tG1sAYcM26yCRX4f/0904bmwq8hwkUUMTRX61pa9C3xlpAGYw1vOu8C2SBZZFlld7DAW82RJWmwYMI1AJCKBNCIASqdZGFmtPSNQRhMpR0EKjWTwm6z6sJ+4jqhxjovTinVdRpZaQjaQzAYjI8NgAKDJCokgunCn9oUQE8VZd/F//+v6P4F1U9gLr58yNI/dJX9BAshEoJbTDogz7ocKoUsPvES8UK/aQIUQgpGgECBVLkOEV6iASTYgNAPKdNXayhDPL7IJuAZnEYSZ0eOLc9i5Rv5/+lEi3sW/kfnCf/+fTe0sxS7CKLx5erRJkKOixEqQaoqrvx5HN4iz4VhX0gS6DjFIWUzn/fIXJRVFY1NFRVNVeFt+SYmrK6vCU6eJsnKnJj5HTESMTQZOTI3Y/tzr3rUcOsiRy/ciP50s3Mycgxmhz9GMXhjzVH30ut796NHP0UUa31/Zoa6vCH6iPvdIM0IRANaT60FablmZlZd+UKNFy9NrvnFGxb5NC2CRxR0/rIyF/WNn+35sv9r+tHVhkseuWGKkCPPh96+GXt8Lc/Sh24ujfjf+tNw1lZWreiPuHb/PSpyjdv2rf/++ZE5TSKjFdZxYsBvr1sEHl5STuHZqYR7jGYGvGBBdjcaB5bODY1GAxMjsd0wDMIzXAXODRd74DxNMtO4YuYHclgLQRzp9KlUmxptCwv9bYgvWGD2xBW7r9413fdJu+mxzvzAUYeeONQvZP4kgfqZle4jhH/MWh+UbxgtJdrLdXLymNL53PRU0D3Q6FcXTfGqGcul6vrqhgLGAVSv+IVIfZOHpu+mlLqSlnj903j8mazXDsba/wbxhS/4Oubh1c5/uXDgt4j5KtnGEy5BIJHo0ur+jD+r2qCkuP1aRVM8EpUoRYSJyqNRA38uwDvHBNo0AejO2Z+ZYLLal1QiFyFh1EDQOgSCSCpjwwKU8yDbIjroEwne0G5Qca49cYp4AlqtQNZfWTQoFb1tRpFYAmRD+HXTkV4uQhG2bg4OKmyoypAsUGtWgQXyFxYrkpODeUxvGqIZA61erXo0sFG1UBGuPgpuon8RNUG2DhovAjZCBuZwtXrU3mQGki9+pm0eVZAXoWxLWTQoYHBPrJR4WunNxIFbCHfkTyPK+sqxjxDmGArZvf79JGJ3GwEqjwc7a7NIrl/7bJ7Nzu4+n1Ow6shEPnUrtVo7cnd5Wi5qCUbBIQbNKCP95FMCSZylEV5VCiiMqqiOmrKZ/I/C0gI1fyuulVcM2E1r4MhtcV/fbCD+HwEvVzH1dGNAzFE0FTbKzyQz3gootrNbN2a4PuG0j0JOgE=)format("woff2"),url(data:font/woff;base64,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)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-400-normal-ugxPyKxw.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-greek-400-normal-C190GLew.woff2)format("woff2"),url(/assets/jetbrains-mono-greek-400-normal-B9oWc5Lo.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,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)format("woff2"),url(/assets/jetbrains-mono-vietnamese-400-normal-CqNFfHCs.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-ext-400-normal-fXTG6kC5.woff)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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.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}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(data:font/woff2;base64,d09GMgABAAAAAASIABAAAAAACQAAAAQtAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoBmA/U1RBVDYAdBEICoRkg3gLIAABNgIkAzoEIAWFIgeBFAwHG1wHKI7DuPEacDIiFJ/g+f47+1/7dIcdXTlD8DKqmcw4eIC+AOCPf6+qiWq3h6+aSCLNJDnkqX9Xl+rv/6dSBcwSBCzEoVqxNbp5SqPMYdKBQhBq1dK9ggSsgYUoGnHOqttMECvWjIJfPA8cjQAuAEAQLAiClASc7M6OkfbO/nHs6ACmCYBxZXKP4s9uXIHECh4AdEhX0yIHC6jzgAb65sshStMMChwEfWVjZe8Anset/6H93x8jOyL5fuS67z4Dlam+BPyH/pV2FLCZAOnU0XPzCQGiJ7AkXgSFhqDEB4AAoAAN2ExDgM10joCNfDQUbvxaXM8LovT79D9MEyYU9+q/myT9p/m8uWi2mLJBPbzcih2wYIPzBDFNvABt315OXwy8BaRnbo5hXsOS5taknX4FguiaZnd4vQ7HxnBnm3SPYXHrQbclvOgyDhsHnZPO8f3G5I2fbr34Y7+hzRozVzyw5bKHdu03plXgvE9FO/Uz4/xPUKd8/PHk+R+JODnlg1lDTv3Qed77zDNqRszaqHUQT248kUPGzBXXXHGFnHrVVdft2m8c4PhpjB+/QEqMU54xruc6m3w8++XNXx4sya9rMvNq88m6X1zeOMlRuQ+/nvNw4+ZrCt58yDdSVOQdfoi/jc/ePfZY+1taYaH21FH2Y4fGG+RVNJkIN4SSiWj3ZKGG1oojoYr2SNWFVbHvY1XX1PR+H6y+oKrqgmryqj1UXnmk5cKWysPM3R4Uh5svYo6saAtU3V297+d91U/X/frzLvUdqiqfruKvhx5+OeOYxbHI7SenQum+PTw/fvRLGQ/jiufOn3/S+vlsfGn9h4Zb96fekZ7xRups68FhVCYCWHHvZVIPxjanr3NABSALqkR7FMBOulF9ScHvV3np+6pK/eEzRx877K3/z65pvwN89eGtV3Ly5ft/25ngaiSYDVYUAAKvIKimMdLO6YBQEY+aZpbXZ5WinTBQXwAA4LMAXuNUBPCSTmMfjd6jpNLNjbToDuBpaR9AoTBbUeERO2o0erNeR6KFne5HK/nOQA+VBtFnt1LtBj6pJQIutnLwipz/Ix9OYNSqZQEreiQELIkKmRIRNWdewpiIZVGtVi0J6xWR0ComIGpFnN+AVStWzUtIWBNXq0iRuJCYqDUJcYXiopYUWhUzp8iQTv20dtO84Agw6YrhuOijfqUKlSpRAruvTq9WdeQw2vs5SUsCYhdt7icIt1nNkseKPZzgV6q4FfYbH4ZIBcThYTEgLIgIkYRbJLl7/rks+ObZDxydE8W9LymoUMiqZUVbtVv0GNkcispQM0IpEG7sBdK9IYr6aKKLRaxiQxO7OMQphrUlGIscFbElV6LF5S0dQN5RbRoUdRbWWOYCy8sB83RxS7FqG/UEQslE5Nsd5v93uF3T0bLiypD/uJhn3q9fCAA=)format("woff2"),url(data:font/woff;base64,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)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-cyrillic-600-normal-EVf6-Yzo.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-600-normal-8K4wrrwR.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-greek-600-normal-H7WoG9Et.woff2)format("woff2"),url(/assets/jetbrains-mono-greek-600-normal-mc2nkWzM.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(data:font/woff2;base64,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)format("woff2"),url(/assets/jetbrains-mono-vietnamese-600-normal-OWROknRo.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-latin-ext-600-normal-BfB_LPfz.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-ext-600-normal-DObL3zCW.woff)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:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-latin-600-normal-C8RAYTDA.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-600-normal-BfsvjouI.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}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/chakra-petch-thai-500-normal-DeexCGiz.woff2)format("woff2"),url(/assets/chakra-petch-thai-500-normal-CJG_V2_m.woff)format("woff");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:500;src:url(data:font/woff2;base64,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)format("woff2"),url(/assets/chakra-petch-vietnamese-500-normal-BVzUBLGs.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/chakra-petch-latin-ext-500-normal-gA6791b0.woff2)format("woff2"),url(/assets/chakra-petch-latin-ext-500-normal-BCHeNDEx.woff)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:Chakra Petch;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/chakra-petch-latin-500-normal-BR1ody1F.woff2)format("woff2"),url(/assets/chakra-petch-latin-500-normal-CnUQnZ4D.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}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/chakra-petch-thai-600-normal-C620THcd.woff2)format("woff2"),url(/assets/chakra-petch-thai-600-normal-BiM5MXH8.woff)format("woff");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:600;src:url(data:font/woff2;base64,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)format("woff2"),url(/assets/chakra-petch-vietnamese-600-normal-Pvj4qcw_.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Chakra Petch;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/chakra-petch-latin-ext-600-normal-CdGvbdDU.woff2)format("woff2"),url(/assets/chakra-petch-latin-ext-600-normal-nL80L4xU.woff)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:Chakra Petch;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/chakra-petch-latin-600-normal-DVQm9bgb.woff2)format("woff2"),url(/assets/chakra-petch-latin-600-normal-DQKfcdKo.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;--surface-0:#0e0e0e;--surface-1:#151517;--surface-2:#1c1c1f;--surface-3:#242428;--surface-4:#2c2c31;--surface-overlay:#18181b;--scrim:#0000009e;--border-subtle:#232327;--border:#34343a;--border-strong:#45454d;--text-1:#ececf0;--text-2:#a6a6b2;--text-3:#74747f;--text-disabled:#54545c;--text-on-accent:#0b0b0d;--accent:var(--faction-accent,#d4af37);--accent-dim:var(--faction-accent-dim,#d4af3766);--accent-bg:var(--faction-accent-bg,#d4af3714);--accent-text:var(--faction-text,#f0d877);--player1:#4a90e2;--player1-text:#74a8e2;--player2:#e24a4a;--player2-text:#e27474;--color-success:#3ad17a;--color-success-bg:#3ad17a1f;--color-warning:#e6b53c;--color-warning-bg:#e6b53c1f;--color-danger:#e25563;--color-danger-bg:#e255631f;--color-info:#4a90e2;--color-info-bg:#4a90e21f;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--radius-sm:4px;--radius-md:6px;--radius-lg:10px;--radius-xl:14px;--radius-pill:999px;--shadow-1:0 1px 2px #0006;--shadow-2:0 4px 12px #00000073;--shadow-3:0 12px 32px #0000008c;--shadow-inset-accent:inset 0 0 0 1px var(--accent-dim);--font-ui:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-display:"Oswald", "Bebas Neue", "Roboto Condensed", var(--font-ui);--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--font-console:"Chakra Petch", var(--font-mono);--fs-xs:11px;--fs-sm:12px;--fs-md:13px;--fs-base:14px;--fs-lg:16px;--fs-xl:20px;--fs-2xl:28px;--fs-3xl:36px;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--lh-tight:1.15;--lh-normal:1.45;--tracking-wide:.04em;--tracking-wider:.08em;--dur-fast:.12s;--dur-med:.2s;--dur-slow:.32s;--ease-standard:cubic-bezier(.2, 0, 0, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-overshoot:cubic-bezier(.34, 1.56, .64, 1);--focus-ring:0 0 0 2px var(--surface-0), 0 0 0 4px var(--accent-dim);--z-overlay:900;--z-modal:1000;--z-popover:1100;--z-tooltip:1200;--glass-bg:#1414189e;--glass-border:#ffffff14;--glass-highlight:#ffffff0f;--glass-blur:14px;--tone-defensive:#8fc4ee;--tone-defensive-dim:#2e6f9e8c;--tone-defensive-bg:#2e6f9e2e;--tone-defensive-fill:#2e6f9e;--tone-defensive-on-fill:#eaf6ff;--tone-peril:#ef9a9a;--tone-peril-dim:#9e3a3a8c;--tone-peril-bg:#9e3a3a2e;--tone-peril-fill:#9e3a3a;--tone-peril-on-fill:#fff;--tone-opportunity:#ecc766;--tone-opportunity-dim:#b8902e8c;--tone-opportunity-bg:#b8902e2e;--tone-opportunity-fill:#b8902e;--tone-opportunity-on-fill:#1a1606}body[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--surface-0:#eae3d2;--surface-1:#f0eadb;--surface-2:#f6f1e4;--surface-3:#ece4d0;--surface-4:#e2d8bf;--surface-overlay:#faf6ec;--scrim:#3a301c73;--border-subtle:#ded3b8;--border:#cfc4a8;--border-strong:#b3a378;--text-1:#262119;--text-2:#5c5138;--text-3:#8a7f63;--text-disabled:#b0a584;--text-on-accent:#fdf9ee;--player1:#2d6cb3;--player1-text:#2d6cb3;--player2:#b13340;--player2-text:#b13340;--accent:var(--faction-accent,#8a6d1f);--accent-dim:var(--faction-accent-dim,#8a6d1f73);--accent-bg:var(--faction-accent-bg,#8a6d1f1a);--accent-text:var(--faction-text,#8a6d1f);--color-success:#2c8a55;--color-success-bg:#2c8a551f;--color-warning:#a07614;--color-warning-bg:#a076141f;--color-danger:#b13340;--color-danger-bg:#b133401a;--color-info:#2d6cb3;--color-info-bg:#2d6cb31a;--shadow-1:0 1px 2px #50411e1f;--shadow-2:0 4px 12px #50411e29;--shadow-3:0 12px 32px #50411e38;--focus-ring:0 0 0 2px var(--surface-0), 0 0 0 4px var(--accent-dim);--glass-bg:#f6f1e4b3;--glass-border:#50411e24;--glass-highlight:#ffffff80;--tone-defensive:#1f5a93;--tone-defensive-dim:#2d6cb380;--tone-defensive-bg:#2d6cb324;--tone-defensive-fill:#2d6cb3;--tone-defensive-on-fill:#fff;--tone-peril:#94232f;--tone-peril-dim:#b1334080;--tone-peril-bg:#b133401f;--tone-peril-fill:#b13340;--tone-peril-on-fill:#fff;--tone-opportunity:#7a5e14;--tone-opportunity-dim:#8a6d1f80;--tone-opportunity-bg:#8a6d1f24;--tone-opportunity-fill:#8a6d1f;--tone-opportunity-on-fill:#fdf9ee}@media (prefers-reduced-motion:reduce){:root{--dur-fast:0s;--dur-med:0s;--dur-slow:0s}}body[data-side-colors=cb]{--player1:#0072b2;--player1-text:#56b4e9;--player2:#e69f00;--player2-text:#f0c441}.fx-glass{background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(1.2);backdrop-filter:blur(var(--glass-blur)) saturate(1.2);border:1px solid var(--glass-border);box-shadow:var(--shadow-2), inset 0 1px 0 var(--glass-highlight)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.fx-glass{background:var(--surface-overlay)}}.fx-chamfer{--fx-ch:12px;clip-path:polygon(var(--fx-ch) 0, 100% 0, 100% calc(100% - var(--fx-ch)), calc(100% - var(--fx-ch)) 100%, 0 100%, 0 var(--fx-ch))}.fx-brackets{position:relative}.fx-brackets:before,.fx-brackets:after{content:"";border-color:var(--accent);opacity:.85;pointer-events:none;border-style:solid;width:14px;height:14px;position:absolute}.fx-brackets:before{border-width:1.5px 0 0 1.5px;top:4px;left:4px}.fx-brackets:after{border-width:0 1.5px 1.5px 0;bottom:4px;right:4px}.fx-scanlines{position:relative}.fx-scanlines:after{content:"";pointer-events:none;border-radius:inherit;background:repeating-linear-gradient(0deg,#ffffff05 0 1px,#0000 1px 3px);position:absolute;inset:0}.fx-skeleton{background:linear-gradient(90deg, var(--surface-3) 25%, var(--surface-4) 50%, var(--surface-3) 75%);border-radius:var(--radius-md);color:#0000;-webkit-user-select:none;user-select:none;background-size:200% 100%;animation:1.4s linear infinite fx-shimmer}@keyframes fx-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes fx-die-pop{0%{opacity:0;transform:scale(0)rotate(-60deg)}60%{opacity:1;transform:scale(1.18)rotate(6deg)}to{opacity:1;transform:scale(1)rotate(0)}}.fx-die-pop{animation:fx-die-pop var(--dur-slow) var(--ease-overshoot) backwards}.fx-odo{vertical-align:bottom;display:inline-flex;overflow:hidden}.fx-odo-reel{transition:transform var(--dur-slow) var(--ease-out);transform:translateY(var(--fx-odo-shift,0));flex-direction:column;display:flex}@media (prefers-reduced-motion:reduce){.fx-skeleton,.fx-die-pop{animation:none}.fx-odo-reel{transition:none}}.app:not(.app--rails-overlay){background:radial-gradient(ellipse 80% 60% at 50% 30%, #60583a1a, transparent 65%), radial-gradient(ellipse 50% 40% at 20% 80%, #783c280f, transparent 70%), var(--surface-0)}body[data-theme=light] .app:not(.app--rails-overlay){background:radial-gradient(ellipse 80% 60% at 50% 30%, #8a6d1f12, transparent 65%), var(--surface-0)}.app:not(.app--rails-overlay) .board-area:after{content:"";pointer-events:none;z-index:2;position:absolute;inset:0;box-shadow:inset 0 0 110px #00000073}body[data-theme=light] .app:not(.app--rails-overlay) .board-area:after{box-shadow:inset 0 0 90px #50411e2e}.app:not(.app--rails-overlay) .top-score-strip{z-index:6;border:1px solid var(--glass-border);border-radius:var(--radius-pill);width:max-content;max-width:calc(100% - 28px);box-shadow:var(--shadow-2), inset 0 1px 0 var(--glass-highlight);animation:hud-drop-in var(--dur-slow) var(--ease-out) backwards;gap:16px;padding:7px 18px;position:absolute;top:10px;left:50%;transform:translate(-50%)}.app:not(.app--rails-overlay) .phase-bar{z-index:6;background:var(--glass-bg);width:max-content;max-width:calc(100% - 28px);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(1.2);backdrop-filter:blur(var(--glass-blur)) saturate(1.2);border:1px solid var(--glass-border);border-radius:var(--radius-pill);animation:hud-drop-in var(--dur-slow) var(--ease-out) 60ms backwards;padding:3px 14px;position:absolute;top:52px;left:50%;transform:translate(-50%)}.app:not(.app--rails-overlay) .action-bar{z-index:6;border:1px solid var(--glass-border);border-left:4px solid var(--faction-accent);border-radius:var(--radius-xl);width:max-content;max-width:calc(100% - 28px);box-shadow:var(--shadow-2), inset 0 1px 0 var(--glass-highlight);animation:hud-rise-in var(--dur-slow) var(--ease-out) backwards;grid-template-columns:auto auto auto;padding:9px 16px;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.app:not(.app--rails-overlay) .ab-breadcrumb .ab-crumb{display:none}.app:not(.app--rails-overlay) .ab-breadcrumb .ab-crumb--active{font-family:var(--font-display);letter-spacing:.12em;padding:2px 10px;font-size:13px;display:inline-block}.app:not(.app--rails-overlay) .ab-breadcrumb .ab-crumb+.ab-crumb:before{content:none}.app:not(.app--rails-overlay) .ability-dock{z-index:6;border:1px solid var(--glass-border);border-left:4px solid var(--faction-accent);border-radius:var(--radius-xl);width:max-content;max-width:calc(100% - 28px);min-height:0;box-shadow:var(--shadow-2), inset 0 1px 0 var(--glass-highlight);animation:hud-rise-in var(--dur-slow) var(--ease-out) 60ms backwards;padding:7px 14px;position:absolute;bottom:72px;left:50%;transform:translate(-50%)}.app:not(.app--rails-overlay):not(.app--strip):not(.app--compact) .sidebar{border:1px solid var(--glass-border);border-radius:var(--radius-xl);background:linear-gradient(180deg, var(--faction-accent-bg), transparent 30%), var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(1.2);backdrop-filter:blur(var(--glass-blur)) saturate(1.2);box-shadow:var(--shadow-2), inset 0 1px 0 var(--glass-highlight), 0 0 28px -10px var(--faction-accent-dim);animation:hud-rail-left var(--dur-slow) var(--ease-out) backwards;margin:10px 0 10px 10px}.app:not(.app--rails-overlay) .combat-rail{border:1px solid var(--glass-border);border-left:1px solid var(--glass-border);border-radius:var(--radius-xl);background:linear-gradient(180deg, var(--faction-accent-bg), transparent 30%), var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(1.2);backdrop-filter:blur(var(--glass-blur)) saturate(1.2);box-shadow:var(--shadow-2), inset 0 1px 0 var(--glass-highlight), 0 0 28px -10px var(--faction-accent-dim);animation:hud-rail-right var(--dur-slow) var(--ease-out) backwards;margin:10px 10px 10px 0}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.app:not(.app--rails-overlay):not(.app--strip):not(.app--compact) .sidebar,.app:not(.app--rails-overlay) .combat-rail{background:var(--surface-1)}}.app:not(.app--rails-overlay) .sidebar .tabbed-rail-tabs{border-bottom:1px solid var(--glass-border);background:0 0}.app:not(.app--rails-overlay):not(.app--strip):not(.app--compact) .sidebar{position:relative}.app:not(.app--rails-overlay):not(.app--strip):not(.app--compact) .sidebar:before,.app:not(.app--rails-overlay):not(.app--strip):not(.app--compact) .sidebar:after{content:"";border-color:var(--faction-accent);opacity:.6;pointer-events:none;z-index:3;border-style:solid;width:14px;height:14px;position:absolute}.app:not(.app--rails-overlay):not(.app--strip):not(.app--compact) .sidebar:before{border-width:1.5px 0 0 1.5px;top:5px;left:5px}.app:not(.app--rails-overlay):not(.app--strip):not(.app--compact) .sidebar:after{border-width:0 1.5px 1.5px 0;bottom:5px;right:5px}.app--strip:not(.app--rails-overlay){grid-template-columns:56px 1fr 300px}.app--strip:not(.app--rails-overlay) .sidebar{border:1px solid var(--glass-border);border-radius:var(--radius-lg);background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(1.2);backdrop-filter:blur(var(--glass-blur)) saturate(1.2);margin:10px 0 10px 8px}.app:not(.app--rails-overlay).app--focus{position:relative}.app:not(.app--rails-overlay).app--focus .top-score-strip{display:flex}.app:not(.app--rails-overlay).app--focus .combat-rail{right:12px;top:calc(var(--topbar-h) + 60px);width:280px;max-height:calc(100dvh - var(--topbar-h) - 150px);z-index:7;margin:0;display:flex;position:absolute;bottom:auto}.dice-overlay{z-index:6;background:var(--glass-bg);width:260px;max-width:calc(100% - 28px);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(1.2);backdrop-filter:blur(var(--glass-blur)) saturate(1.2);border:1px solid var(--glass-border);border-left:3px solid var(--faction-accent);border-radius:var(--radius-lg);box-shadow:var(--shadow-2), inset 0 1px 0 var(--glass-highlight);animation:hud-rise-in var(--dur-slow) var(--ease-out);pointer-events:none;padding:10px 12px;position:absolute;bottom:14px;right:14px}.app--focus .dice-overlay{right:304px}.app--rails-overlay .dice-overlay{display:none}.app:not(.app--rails-overlay) .tss-side,.app:not(.app--rails-overlay) .tss-obj,.app:not(.app--rails-overlay) .phase-bar-turn,.app:not(.app--rails-overlay) .ab-turn{font-family:var(--font-console)}.ds-header .unit-portrait,.ds-header .unit-portrait img{clip-path:polygon(50% 0,94% 25%,94% 75%,50% 100%,6% 75%,6% 25%);border-radius:0}.ab-crumb--active,.phase-bar-step--current{animation:hud-crumb-pop .35s var(--ease-overshoot)}.app .dock-tile{transition:background var(--dur-fast) var(--ease-standard), border-color var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard), transform var(--dur-fast) var(--ease-overshoot)}.app .dock-tile:hover:not(:disabled){transform:translateY(-1px)}@keyframes hud-drop-in{0%{opacity:0;transform:translate(-50%,-10px)}to{opacity:1;transform:translate(-50%)}}@keyframes hud-rise-in{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}@keyframes hud-rail-left{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@keyframes hud-rail-right{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes hud-crumb-pop{0%{transform:scale(.85)}60%{transform:scale(1.08)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.app:not(.app--rails-overlay) .top-score-strip,.app:not(.app--rails-overlay) .phase-bar,.app:not(.app--rails-overlay) .action-bar,.app:not(.app--rails-overlay) .ability-dock,.app:not(.app--rails-overlay) .sidebar,.app:not(.app--rails-overlay) .combat-rail,.ab-crumb--active,.phase-bar-step--current{animation:none}}.advisor-pill,.advisor-chip{z-index:7;position:absolute;bottom:130px;left:14px}.advisor-pill{font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--text-2);background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--radius-pill);cursor:pointer;transition:color var(--dur-fast) var(--ease-standard), border-color var(--dur-fast) var(--ease-standard);align-items:center;gap:6px;padding:6px 12px;font-size:11px;display:inline-flex}.advisor-pill:hover{color:var(--accent-text);border-color:var(--accent-dim)}.advisor-chip{background:linear-gradient(120deg, var(--faction-accent-bg), var(--glass-bg) 65%);width:300px;max-width:calc(100% - 28px);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(1.2);backdrop-filter:blur(var(--glass-blur)) saturate(1.2);border:1px solid var(--faction-accent-dim);border-radius:var(--radius-lg);box-shadow:var(--shadow-2), 0 0 22px -8px var(--faction-accent-dim);animation:hud-rise-in var(--dur-slow) var(--ease-out);padding:10px 12px}.advisor-head{font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:var(--faction-text);align-items:center;gap:7px;margin-bottom:6px;font-size:11px;display:flex}.advisor-close{color:var(--text-3);cursor:pointer;background:0 0;border:none;margin-left:auto;padding:2px;display:inline-flex}.advisor-close:hover{color:var(--text-1)}.advisor-headline{margin-bottom:3px;font-size:13.5px;font-weight:600}.advisor-detail{font-family:var(--font-mono);color:var(--text-2);font-size:11px}.advisor-actions{gap:8px;margin-top:9px;display:flex}.advisor-go{background:var(--faction-accent-bg);border-color:var(--faction-accent-dim);color:var(--faction-text)}.app--rails-overlay .advisor-pill,.app--rails-overlay .advisor-chip{display:none}.killfeed{z-index:6;pointer-events:none;flex-direction:column;gap:6px;display:flex;position:absolute;top:96px;right:14px}.killfeed-item{font-family:var(--font-mono);color:var(--text-1);border-radius:var(--radius-md);background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);animation:hud-rail-right var(--dur-slow) var(--ease-out);align-items:center;gap:7px;padding:5px 10px;font-size:11px;display:inline-flex}.killfeed-item--destroyed{color:var(--color-danger);border-color:#e2556366}.destroy-sting{z-index:8;text-align:center;pointer-events:none;background:linear-gradient(100deg, #8b1a1a59, transparent 75%), var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);animation:destroy-sting-in 1.6s var(--ease-out) forwards;border:1px solid #e2556373;padding:14px 40px;position:absolute;top:34%;left:50%;transform:translate(-50%)}.destroy-sting-main{font-family:var(--font-display);letter-spacing:.3em;color:var(--color-danger);font-size:26px;font-weight:600}.destroy-sting-main:before{content:"++ ";opacity:.7}.destroy-sting-main:after{content:" ++";opacity:.7}.destroy-sting-sub{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-2);font-size:12px}@keyframes destroy-sting-in{0%{opacity:0;transform:translate(-50%)scale(.92)}12%{opacity:1;transform:translate(-50%)scale(1.02)}18%{transform:translate(-50%)scale(1)}80%{opacity:1}to{opacity:0;transform:translate(-50%)scale(.98)}}@media (prefers-reduced-motion:reduce){.killfeed-item,.destroy-sting{animation:none}}.advisor-why{border-top:1px solid var(--glass-border);flex-direction:column;gap:5px;max-height:220px;margin-top:9px;padding-top:7px;display:flex;overflow-y:auto}.advisor-why-row{text-align:left;border:1px solid var(--glass-border);border-radius:var(--radius-md);cursor:pointer;color:var(--text-1);transition:border-color var(--dur-fast) var(--ease-standard), background var(--dur-fast) var(--ease-standard);background:#ffffff0a;align-items:flex-start;gap:9px;padding:6px 9px;font-family:inherit;display:flex}.advisor-why-row:hover{border-color:var(--faction-accent-dim);background:var(--faction-accent-bg)}.advisor-why-rank{font-family:var(--font-console);color:var(--faction-text);padding-top:1px;font-size:11px}.advisor-why-main{flex-direction:column;gap:1px;min-width:0;display:flex}.advisor-why-headline{font-size:12px;font-weight:600}.advisor-why-detail{font-family:var(--font-mono);color:var(--text-2);font-size:10.5px}.mob-sheet{left:8px;right:8px;bottom:calc(var(--appbar-h,56px) + 8px + env(safe-area-inset-bottom,0px));z-index:40;background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(1.2);backdrop-filter:blur(var(--glass-blur)) saturate(1.2);border:1px solid var(--glass-border);border-radius:16px 16px var(--radius-lg) var(--radius-lg);box-shadow:var(--shadow-3), inset 0 1px 0 var(--glass-highlight);animation:hud-rise-in var(--dur-slow) var(--ease-out);padding:2px 12px 10px;position:fixed}.app:not(.app--rails-overlay)~.mob-sheet{display:none}.mob-sheet-grip{cursor:pointer;background:0 0;border:none;width:100%;padding:7px 0 5px;display:block}.mob-sheet-grip-bar{background:var(--border-strong);border-radius:2px;width:38px;height:4px;margin:0 auto;display:block}.mob-sheet-head{align-items:center;gap:10px;display:flex}.mob-sheet-title{flex-direction:column;flex:1;min-width:0;display:flex}.mob-sheet-name{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.03em;text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.mob-sheet-pts{font-family:var(--font-mono);color:var(--faction-text);font-size:10px}.mob-sheet-primary{flex:none}.mob-sheet-chips{gap:4px;margin-top:8px;display:flex}.mob-chip{text-align:center;font-family:var(--font-mono);color:var(--text-2);border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:#ffffff0d;flex:1;padding:3px 0;font-size:10px}.mob-chip b{color:var(--text-3);font-size:8px;font-weight:400}.mob-sheet-body{border-top:1px solid var(--glass-border);max-height:46vh;margin-top:10px;padding-top:8px;overflow-y:auto}.ui-btn{justify-content:center;align-items:center;gap:var(--space-2);font-family:var(--font-ui);font-weight:var(--fw-semibold);white-space:nowrap;border-radius:var(--radius-md);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--dur-fast) var(--ease-standard), border-color var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard), box-shadow var(--dur-fast) var(--ease-standard), transform var(--dur-fast) var(--ease-standard);border:1px solid #0000;line-height:1;display:inline-flex}.ui-btn:active:not(:disabled){transform:scale(.96)}.ui-btn:focus-visible{box-shadow:var(--focus-ring);outline:none}.ui-btn:disabled{opacity:.45;cursor:not-allowed}.ui-btn--block{width:100%}.ui-btn--sm{font-size:var(--fs-xs);padding:4px 8px}.ui-btn--md{font-size:var(--fs-sm);padding:6px 12px}.ui-btn--lg{font-size:var(--fs-base);padding:9px 18px}.ui-btn--secondary{background:var(--surface-3);border-color:var(--border-strong);color:var(--text-1)}.ui-btn--secondary:hover:not(:disabled){background:var(--surface-4)}.ui-btn--ghost{color:var(--text-2);background:0 0}.ui-btn--ghost:hover:not(:disabled){background:var(--surface-3);color:var(--text-1)}.ui-btn--secondary[aria-pressed=true],.ui-btn--ghost[aria-pressed=true]{background:var(--accent-bg);border-color:var(--accent-dim);color:var(--accent-text)}.ui-btn--primary{background:var(--accent);border-color:var(--accent);color:var(--text-on-accent)}.ui-btn--primary:hover:not(:disabled){filter:brightness(1.1);box-shadow:0 0 12px var(--accent-dim)}.ui-btn--success{background:var(--color-success);border-color:var(--color-success);color:var(--text-on-accent)}.ui-btn--success:hover:not(:disabled){filter:brightness(1.08)}.ui-btn--danger{border-color:var(--color-danger);color:var(--color-danger);background:0 0}.ui-btn--danger:hover:not(:disabled){background:var(--color-danger-bg)}.ui-input{width:100%;font-family:var(--font-ui);background:var(--surface-3);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-1);transition:border-color var(--dur-fast) var(--ease-standard), box-shadow var(--dur-fast) var(--ease-standard)}.ui-input::placeholder{color:var(--text-3)}.ui-input--sm{font-size:var(--fs-sm);padding:5px 8px}.ui-input--md{font-size:var(--fs-base);padding:8px 10px}.ui-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-dim);outline:none}.ui-input--invalid{border-color:var(--color-danger)}.ui-input--invalid:focus{box-shadow:0 0 0 2px var(--color-danger-bg)}.ui-field{gap:var(--space-1);flex-direction:column;display:flex}.ui-field--inline{align-items:center;gap:var(--space-3);flex-direction:row}.ui-field-label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-2);letter-spacing:var(--tracking-wide);text-transform:uppercase}.ui-field-control{min-width:0;display:flex}.ui-field-control>*{flex:1;min-width:0}.ui-field-help{font-size:var(--fs-xs);color:var(--text-3)}.ui-field-error{font-size:var(--fs-xs);color:var(--color-danger)}.ui-select-trigger{justify-content:space-between;align-items:center;gap:var(--space-2);width:100%;font-family:var(--font-ui);background:var(--surface-3);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-1);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-standard);display:inline-flex}.ui-select-trigger--sm{font-size:var(--fs-sm);padding:5px 8px}.ui-select-trigger--md{font-size:var(--fs-base);padding:8px 10px}.ui-select-trigger:hover{border-color:var(--border-strong)}.ui-select-trigger:focus-visible{box-shadow:var(--focus-ring);outline:none}.ui-select-trigger[data-placeholder]{color:var(--text-3)}.ui-select-icon{color:var(--text-3);font-size:10px}.ui-select-content{background:var(--surface-overlay);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-3);padding:var(--space-1);z-index:var(--z-popover);min-width:var(--radix-select-trigger-width);max-height:var(--radix-select-content-available-height)}.ui-select-viewport{padding:2px}.ui-select-item{justify-content:space-between;align-items:center;gap:var(--space-3);font-size:var(--fs-sm);color:var(--text-1);border-radius:var(--radius-sm);cursor:pointer;-webkit-user-select:none;user-select:none;outline:none;padding:6px 10px;display:flex}.ui-select-item[data-highlighted]{background:var(--accent-bg);color:var(--accent-text)}.ui-select-item[data-state=checked]{color:var(--accent-text)}.ui-select-item[data-disabled]{color:var(--text-disabled);pointer-events:none}.ui-select-item-indicator{color:var(--accent);font-size:11px}.ui-select-scroll{height:18px;color:var(--text-3);cursor:default;justify-content:center;align-items:center;display:flex}.ui-seg{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-md);gap:2px;padding:2px;display:inline-flex}.ui-seg-item{font-family:var(--font-ui);font-weight:var(--fw-semibold);color:var(--text-2);border-radius:calc(var(--radius-md) - 2px);cursor:pointer;transition:background var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard);background:0 0;border:none}.ui-seg--sm .ui-seg-item{font-size:var(--fs-xs);padding:3px 10px}.ui-seg--md .ui-seg-item{font-size:var(--fs-sm);padding:5px 14px}.ui-seg-item:hover{color:var(--text-1);background:var(--surface-3)}.ui-seg-item[data-state=on]{background:var(--accent);color:var(--text-on-accent)}.ui-seg-item:focus-visible{box-shadow:var(--focus-ring);outline:none}.ui-tabs-list{gap:var(--space-1);border-bottom:1px solid var(--border-subtle);display:flex}.ui-tab-trigger{font-family:var(--font-ui);font-size:var(--fs-sm);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-3);padding:var(--space-2) var(--space-3);cursor:pointer;transition:color var(--dur-fast) var(--ease-standard), border-color var(--dur-fast) var(--ease-standard);background:0 0;border:none;border-bottom:2px solid #0000}.ui-tab-trigger:hover{color:var(--text-1)}.ui-tab-trigger[data-state=active]{color:var(--accent-text);border-bottom-color:var(--accent)}.ui-tab-trigger:focus-visible{box-shadow:var(--focus-ring);outline:none}.ui-tooltip{background:var(--surface-overlay);border:1px solid var(--border-strong);border-radius:var(--radius-sm);box-shadow:var(--shadow-2);color:var(--text-1);font-size:var(--fs-xs);line-height:var(--lh-normal);max-width:280px;z-index:var(--z-tooltip);animation:ui-fade-in var(--dur-fast) var(--ease-out);padding:6px 9px}.ui-tooltip-arrow{fill:var(--surface-overlay)}.ui-overlay{background:var(--scrim);z-index:var(--z-modal);animation:ui-fade-in var(--dur-med) var(--ease-out);position:fixed;inset:0}.ui-modal{background:var(--glass-bg);width:92vw;max-height:88vh;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(1.2);backdrop-filter:blur(var(--glass-blur)) saturate(1.2);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-3), inset 0 1px 0 var(--glass-highlight);z-index:var(--z-modal);animation:ui-modal-in var(--dur-slow) var(--ease-overshoot);flex-direction:column;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.ui-modal{background:var(--surface-overlay)}}.ui-modal--sm{max-width:420px}.ui-modal--md{max-width:560px}.ui-modal--lg{max-width:820px}.ui-modal--xl{max-width:1100px}.ui-modal--full{width:96vw;max-width:96vw;height:92vh;max-height:92vh}.ui-modal-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-subtle);display:flex}.ui-modal-titles{flex-direction:column;gap:2px;display:flex}.ui-modal-title{font-family:var(--font-display);font-size:var(--fs-xl);font-weight:var(--fw-bold);letter-spacing:var(--tracking-wide);color:var(--text-1);margin:0}.ui-modal-desc{font-size:var(--fs-sm);color:var(--text-2);margin:0}.ui-modal-close,.ui-drawer .ui-modal-close{width:28px;height:28px;color:var(--text-2);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:1px solid #0000;flex:none;justify-content:center;align-items:center;font-size:20px;line-height:1;display:inline-flex}.ui-modal-close:hover{background:var(--surface-3);color:var(--text-1)}.ui-modal-body{padding:var(--space-5);overflow:auto}.ui-modal-footer{justify-content:flex-end;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-top:1px solid var(--border-subtle);display:flex}.ui-drawer{background:var(--surface-overlay);max-width:96vw;box-shadow:var(--shadow-3);z-index:var(--z-modal);flex-direction:column;display:flex;position:fixed;top:0;bottom:0}.ui-drawer--right{border-left:1px solid var(--border);animation:ui-slide-left var(--dur-slow) var(--ease-overshoot);right:0}.ui-drawer--left{border-right:1px solid var(--border);animation:ui-slide-right var(--dur-slow) var(--ease-overshoot);left:0}.ui-drawer-head{padding:var(--space-4) var(--space-4);border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;display:flex}.ui-drawer-title{font-family:var(--font-display);font-size:var(--fs-lg);font-weight:var(--fw-bold);letter-spacing:var(--tracking-wide);color:var(--text-1);margin:0}.ui-drawer-body{padding:var(--space-4);flex:1;overflow:auto}.ui-drawer-footer{gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-subtle);justify-content:flex-end;display:flex}.ui-popover{background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(1.2);backdrop-filter:blur(var(--glass-blur)) saturate(1.2);border:1px solid var(--glass-border);border-radius:var(--radius-md);box-shadow:var(--shadow-3), inset 0 1px 0 var(--glass-highlight);color:var(--text-1);padding:var(--space-3);font-size:var(--fs-sm);max-width:320px;z-index:var(--z-popover);animation:ui-fade-in var(--dur-fast) var(--ease-out)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.ui-popover{background:var(--surface-overlay)}}.ui-popover-arrow{fill:var(--surface-overlay)}.ui-card{background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-lg)}.ui-card--pad-none{padding:0}.ui-card--pad-sm{padding:var(--space-3)}.ui-card--pad-md{padding:var(--space-4)}.ui-card--interactive{cursor:pointer;transition:border-color var(--dur-fast), background var(--dur-fast), transform var(--dur-fast)}.ui-card--interactive:hover{border-color:var(--border-strong);background:var(--surface-3)}.ui-card--accent{border-left:3px solid var(--accent)}.ui-chip{align-items:center;gap:var(--space-1);font-family:var(--font-ui);font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--text-2);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-pill);cursor:pointer;transition:background var(--dur-fast), border-color var(--dur-fast), color var(--dur-fast);padding:3px 10px;display:inline-flex}.ui-chip:hover{border-color:var(--border-strong);color:var(--text-1)}.ui-chip--on{background:var(--accent);border-color:var(--accent);color:var(--text-on-accent)}.ui-chip:focus-visible{box-shadow:var(--focus-ring);outline:none}.ui-badge{font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase;border-radius:var(--radius-sm);align-items:center;gap:3px;padding:1px 6px;line-height:1.5;display:inline-flex}.ui-badge--neutral{background:var(--surface-3);color:var(--text-2)}.ui-badge--accent{background:var(--accent-bg);color:var(--accent-text)}.ui-badge--success{background:var(--color-success-bg);color:var(--color-success)}.ui-badge--warning{background:var(--color-warning-bg);color:var(--color-warning)}.ui-badge--danger{background:var(--color-danger-bg);color:var(--color-danger)}.ui-badge--info{background:var(--color-info-bg);color:var(--color-info)}.ui-badge--outline{background:0 0;border:1px solid}.ui-kbd{min-width:18px;height:18px;font-family:var(--font-mono);font-size:10px;font-weight:var(--fw-semibold);color:var(--text-2);background:var(--surface-1);border:1px solid var(--border-strong);border-radius:var(--radius-sm);border-bottom-width:2px;justify-content:center;align-items:center;padding:0 4px;line-height:1;display:inline-flex}@keyframes ui-fade-in{0%{opacity:0}to{opacity:1}}@keyframes ui-modal-in{0%{opacity:0;transform:translate(-50%,-48%)scale(.97)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes ui-slide-left{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes ui-slide-right{0%{transform:translate(-100%)}to{transform:translate(0)}}.ui-toast-viewport{left:50%;bottom:var(--space-5);z-index:1300;gap:var(--space-2);pointer-events:none;flex-direction:column;align-items:center;max-width:min(92vw,560px);display:flex;position:fixed;transform:translate(-50%)}.ui-toast{pointer-events:auto;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-3) var(--space-3) var(--space-4);background:var(--surface-overlay);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-3);color:var(--text-1);border-left-width:3px;font-size:.85rem;line-height:1.35;animation:.16s ease-out ui-toast-in;display:flex}.ui-toast--error{border-left-color:var(--color-danger);background:linear-gradient(var(--color-danger-bg), var(--color-danger-bg)), var(--surface-overlay)}.ui-toast--success{border-left-color:var(--color-success);background:linear-gradient(var(--color-success-bg), var(--color-success-bg)), var(--surface-overlay)}.ui-toast--info{border-left-color:var(--color-info);background:linear-gradient(var(--color-info-bg), var(--color-info-bg)), var(--surface-overlay)}.ui-toast-msg{white-space:pre-line;flex:1}.ui-toast-close{color:var(--text-3);cursor:pointer;background:0 0;border:none;flex:none;padding:0 2px;font-size:1.1rem;line-height:1}.ui-toast-close:hover{color:var(--text-1)}@keyframes ui-toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.ui-toast{animation:none}}.ui-skeleton-rows{gap:var(--space-3);padding:var(--space-2) 0;flex-direction:column;display:flex}.ui-skeleton-row{align-items:center;gap:var(--space-3);display:flex}.ui-skeleton-avatar{border-radius:var(--radius-md);flex:none;width:40px;height:40px}.ui-skeleton-lines{flex-direction:column;flex:1;gap:7px;display:flex}.ui-skeleton-line{max-width:320px;height:11px}.ui-skeleton-line--short{max-width:180px;height:9px}.ui-odo{vertical-align:bottom;display:inline-flex}.ui-odo-digit{height:1.3em;display:inline-block;overflow:hidden}.ui-odo-reel{transition:transform .48s var(--ease-out);will-change:transform;flex-direction:column;display:flex}.ui-odo-num{text-align:center;height:1.3em;line-height:1.3}@media (prefers-reduced-motion:reduce){.ui-odo-reel{transition:none}}:root{--faction-accent:#d4af37;--faction-accent-dim:#d4af3766;--faction-accent-bg:#d4af3714;--faction-text:#f0d877}body[data-active-faction=tau]{--faction-accent:#c6a86a;--faction-accent-dim:#c6a86a66;--faction-accent-bg:#c6a86a14;--faction-text:#f0d8a0}body[data-active-faction=space-marines]{--faction-accent:#3a6ea5;--faction-accent-dim:#3a6ea566;--faction-accent-bg:#3a6ea51a;--faction-text:#a0c8f0}body[data-active-faction=chaos-space-marines]{--faction-accent:#8b1a1a;--faction-accent-dim:#8b1a1a66;--faction-accent-bg:#8b1a1a1a;--faction-text:#f0a0a0}:root{--faction-grad:linear-gradient(100deg, var(--faction-accent-bg), transparent 70%);--faction-glyph:"⚜"}body[data-active-faction=tau]{--faction-glyph:"◬"}body[data-active-faction=space-marines]{--faction-glyph:"Ω"}body[data-active-faction=chaos-space-marines]{--faction-glyph:"☠"}body[data-theme=light]{--faction-accent:#8a6d1f;--faction-accent-dim:#8a6d1f73;--faction-accent-bg:#8a6d1f14;--faction-text:#6e5618}body[data-theme=light][data-active-faction=tau]{--faction-accent:#8a703d;--faction-accent-dim:#8a703d73;--faction-accent-bg:#8a703d14;--faction-text:#6e5a30}body[data-theme=light][data-active-faction=space-marines]{--faction-accent:#2d5e94;--faction-accent-dim:#2d5e9473;--faction-accent-bg:#2d5e9414;--faction-text:#24517f}body[data-theme=light][data-active-faction=chaos-space-marines]{--faction-accent:#8b1a1a;--faction-accent-dim:#8b1a1a73;--faction-accent-bg:#8b1a1a14;--faction-text:#7a1f1f}.app{--topbar-h:calc(44px + env(safe-area-inset-top,0px));grid-template-rows:var(--topbar-h) 1fr;grid-template-columns:320px 1fr 300px;grid-template-areas:"top top top""side board combat";width:100vw;height:100dvh;display:grid}.topbar{padding:env(safe-area-inset-top,0px) calc(16px + env(safe-area-inset-right,0px)) 0 calc(16px + env(safe-area-inset-left,0px));background:var(--surface-1);color:var(--text-1);border-bottom:1px solid var(--border);grid-area:top;align-items:center;gap:16px;display:flex}.rendermode-toggle{border:1px solid var(--border);border-radius:var(--radius-md);display:inline-flex;overflow:hidden}.rendermode-seg{background:var(--surface-2);color:var(--text-2);cursor:pointer;border:none;padding:4px 12px;font-size:13px;font-weight:600;transition:background .12s,color .12s}.rendermode-seg:hover{background:var(--surface-3);color:var(--text-1)}.rendermode-seg.active{background:var(--color-info);color:#fff}.rendermode-seg+.rendermode-seg{border-left:1px solid var(--border)}.topbar h1{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.08em;margin:0;font-size:15px;font-weight:600}.phase-indicator{color:var(--text-2);font-size:12px}.tool-btn{background:var(--surface-3);color:var(--text-1);border:1px solid var(--border-strong);border-radius:var(--radius-sm);cursor:pointer;margin-left:auto;padding:4px 12px;font-size:12px}.tool-btn:hover{background:var(--surface-4)}.tool-btn.active{background:var(--accent);color:var(--text-on-accent);border-color:var(--accent)}.tool-btn.primary{color:var(--text-on-accent);background:#2c5;border-color:#2c5;font-weight:600}.tool-btn.primary:hover{background:#3d6}.owner-tag{background:var(--surface-3);border:1px solid var(--border-strong);color:var(--text-2);vertical-align:middle;border-radius:2px;padding:1px 4px;font-size:10px}.flag-on{color:#f93;font-weight:600}.flag-off{color:var(--text-disabled)}.phase-action{padding:6px 0}.kind-charge .dice-summary{color:#f55}.kind-phase .dice-summary{color:#5cf}.kind-fight .dice-summary{color:#fc6}.kind-move .dice-summary{color:#8c8}.hint.warn{color:#f93;font-style:normal}.scoreboard{background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);align-items:center;gap:6px;margin-left:8px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.score-p1{color:var(--player1)}.score-p2{color:var(--player2)}.score-sep{color:var(--text-disabled);font-weight:400}.score-sub{color:var(--text-3);font-size:10px;font-weight:400}.obj-list{flex-direction:column;gap:2px;display:flex}.obj-row{border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-2);border-left:3px solid #555;grid-template-columns:32px 1fr 28px;align-items:center;gap:6px;padding:3px 6px;font-size:12px;display:grid}.obj-row.ctrl-player1{border-left-color:var(--player1)}.obj-row.ctrl-player2{border-left-color:var(--player2)}.obj-row.ctrl-neutral{border-left-color:var(--accent)}.obj-id{color:var(--text-1);font-weight:600}.obj-bar{gap:6px;display:flex}.obj-p1{color:var(--player1)}.obj-p2{color:var(--player2)}.obj-vs{color:var(--text-disabled)}.obj-owner{text-align:right;color:var(--text-1);font-weight:600}.cp-board{background:#1c1822;border-color:#2a2433}.strat-list{flex-direction:column;gap:4px;display:flex}.strat-row{background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:6px 8px;font-size:12px}.strat-row.disabled{opacity:.45}.strat-head{grid-template-columns:1fr 48px 56px;align-items:center;gap:6px;display:grid}.strat-name{color:var(--text-1);font-weight:600}.strat-cost{text-align:right;color:#fb6;font-size:11px;font-weight:600}.strat-btn{color:var(--text-on-accent);border-radius:var(--radius-sm);cursor:pointer;background:#2a5;border:none;padding:3px 6px;font-size:11px;font-weight:600}.strat-btn:hover:not(:disabled){background:#3d6}.strat-btn:disabled{background:var(--surface-4);color:var(--text-disabled);cursor:not-allowed}.strat-timing{color:var(--text-3);margin-top:3px;font-size:11px;font-style:italic}.strat-used{color:var(--color-danger);margin-top:2px;font-size:10px;font-weight:600}.roster-overlay{background:var(--scrim);z-index:1000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.roster-modal{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-md);width:min(1100px,95vw);max-height:90vh;color:var(--text-1);flex-direction:column;display:flex}.roster-head{border-bottom:1px solid var(--border-subtle);align-items:center;gap:12px;padding:12px 16px;display:flex}.roster-head h1{margin:0;font-size:16px}.roster-sub{color:var(--text-3);font-size:12px}.roster-actions{gap:8px;margin-left:auto;display:flex}.roster-body{grid-template-columns:1fr 1fr;gap:12px;padding:12px;display:grid;overflow-y:auto}.roster-col{background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:8px}.roster-col.tone-p1{border-top:2px solid #4a90e2}.roster-col.tone-p2{border-top:2px solid #e24a4a}.col-head{align-items:center;gap:8px;margin-bottom:8px;display:flex}.col-head h2{margin:0;font-size:14px}.col-head select{background:var(--surface-3);color:var(--text-1);border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:3px 6px;font-size:12px}.points-total{color:var(--text-3);margin-left:auto;font-size:12px;font-weight:600}.points-total.over{color:#e85}.roster-split{grid-template-columns:1fr 1fr;gap:8px;display:grid}@media (width<=600px){.roster-body,.roster-split{grid-template-columns:1fr}}.roster-available h3,.roster-picks h3{text-transform:uppercase;color:var(--text-2);letter-spacing:.06em;margin:0 0 6px;font-size:11px}.ds-pick{background:var(--surface-3);border:1px solid var(--border-subtle);width:100%;color:var(--text-1);border-radius:var(--radius-sm);cursor:pointer;text-align:left;grid-template-columns:1fr 60px;align-items:center;gap:6px;margin-bottom:3px;padding:6px 8px;font-family:inherit;font-size:12px;display:grid}.ds-pick:hover{background:var(--surface-4)}.ds-pick-name{color:var(--text-1);font-weight:500}.ds-pick-pts{color:#fb6;text-align:right;font-size:11px}.ds-remove{color:#f99;cursor:pointer;background:#3a2222;border:1px solid #4a2a2a;border-radius:2px;width:18px;height:18px;padding:0;font-size:14px;line-height:1}.ds-remove:hover{background:#5a2a2a}.tip-anchor{cursor:help;border-bottom:1px dotted #555;position:relative}.tip-bubble{z-index:9999;background:var(--surface-2);border:1px solid var(--border-strong);width:260px;color:var(--text-1);border-radius:var(--radius-sm);pointer-events:none;text-align:left;padding:8px 10px;font-size:11px;font-style:normal;font-weight:400;line-height:1.45;position:fixed;box-shadow:0 4px 18px #00000080}.board-host{background:var(--surface-2);overflow:hidden}.board-host canvas{display:block}.sidebar{background:var(--surface-1);color:var(--text-1);border-left:1px solid var(--border);flex-direction:column;grid-area:side;min-height:0;font-size:13px;display:flex;overflow:hidden}.sidebar h2{font-family:var(--font-display);text-transform:uppercase;color:var(--text-2);letter-spacing:.1em;margin:16px 0 6px;font-size:12px;font-weight:500}.sidebar h2:first-child{margin-top:0}.sidebar ul{margin:0;padding:0;list-style:none}.sidebar li{align-items:center;gap:8px;padding:4px 0;display:flex}.swatch{border:1px solid var(--border-strong);border-radius:2px;width:12px;height:12px;display:inline-block}.swatch.ring{background:0 0;border-radius:50%}.swatch.ring.p1{border:1px solid #4a90e280}.swatch.ring.sel{border:2px solid #fff}.swatch.ring.rng{border:1.5px solid #ffaa44b3}.legend-list li{color:var(--text-2);padding:2px 0;font-size:11px}.sec-list{flex-direction:column;gap:4px;margin-top:4px;display:flex}.sec-row{background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:6px 8px}.sec-head{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.sec-name{color:var(--text-1);flex:1;font-size:12px;font-weight:600}.sec-buttons{flex-wrap:wrap;gap:2px;display:flex}.sec-btn{cursor:pointer;background:var(--surface-2);border:1px solid;border-radius:2px;padding:2px 5px;font-size:10px;font-weight:600}.sec-btn.sec-p1{color:var(--player1);border-color:#2a3a52}.sec-btn.sec-p2{color:var(--player2);border-color:#522a2a}.sec-btn:hover{background:#232323}.rule-lookup{background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);margin-bottom:4px;padding:6px 8px;font-size:12px}.rule-lookup summary{color:var(--text-1);cursor:pointer;padding:2px 0;font-weight:600}.rule-lookup p{color:var(--text-2);margin:6px 0 0;font-size:11px;line-height:1.45}.rule-lookup dl{margin:6px 0 0;font-size:11px}.rule-lookup dt{color:#fb6;margin-top:6px;font-weight:600}.rule-lookup dd{color:var(--text-2);margin:2px 0 0;line-height:1.4}.replay-loader{max-width:600px;color:var(--text-1);margin:40px auto;padding:16px;font-family:sans-serif}.replay-loader h1{font-size:16px}.replay-loader code{background:var(--surface-2);border-radius:var(--radius-sm);padding:2px 6px}.replay-loader .error{color:#e85}.roster-cloud{border-bottom:1px solid var(--border-subtle);align-items:center;gap:8px;margin-bottom:8px;padding:6px 0;font-size:12px;display:flex}.roster-cloud .tool-btn{padding:3px 8px;font-size:11px}.roster-cloud select{background:var(--surface-3);color:var(--text-1);border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:3px 6px;font-size:11px}.replay-loader button{color:var(--text-on-accent);border-radius:var(--radius-sm);cursor:pointer;background:#2c5;border:1px solid #2c5;margin-top:12px;padding:6px 12px;font-weight:600}.hint{color:var(--text-3);padding:4px 0;font-size:12px;font-style:italic}.ds-card{background:linear-gradient(180deg, var(--surface-2), var(--surface-1));border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);padding:8px;position:relative;overflow:hidden}.ds-card:before,.ds-card:after{content:"";border-color:var(--faction-accent);opacity:.7;pointer-events:none;z-index:1;border-style:solid;width:12px;height:12px;position:absolute}.ds-card:before{border-width:1.5px 0 0 1.5px;top:3px;left:3px}.ds-card:after{border-width:0 1.5px 1.5px 0;bottom:3px;right:3px}.ds-header{align-items:center;gap:var(--space-2);margin:-8px -8px var(--space-2);background:var(--faction-grad);border-bottom:1px solid var(--faction-accent-dim);padding:8px;display:flex}.ds-header .ds-title{min-width:0;margin-bottom:0}.ds-pts{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--faction-text);border:1px solid var(--faction-accent-dim);border-radius:var(--radius-pill);white-space:nowrap;flex:none;margin-left:auto;padding:2px 8px;font-size:10px}.ds-watermark{pointer-events:none;color:var(--faction-accent);opacity:.08;z-index:0;position:absolute;bottom:-12px;right:-8px}.ds-title{font-family:var(--font-display);font-size:var(--fs-lg);text-transform:uppercase;letter-spacing:.03em;color:var(--text-1);margin-bottom:4px;font-weight:500}.ds-meta{color:var(--text-2);margin-bottom:2px;font-size:12px}.ds-statline{margin-bottom:var(--space-2);gap:4px;display:flex}.ds-statline .stat-pair{background:var(--surface-3);border:1px solid var(--border);border-radius:var(--radius-sm);flex-direction:column;flex:1;align-items:center;gap:1px;min-width:0;padding:3px 2px 4px;display:flex}.ds-statline .stat-pair .stat-k{letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);font-size:9px}.ds-statline .stat-pair .stat-v{font-family:var(--font-mono);font-size:13px;font-weight:var(--fw-semibold);color:var(--faction-text)}.weapon-list{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--surface-1);flex-direction:column;margin-top:8px;display:flex;overflow:hidden}.weapon-thead,.weapon-row{grid-template-columns:13px minmax(0,1fr) repeat(6,minmax(21px,auto));align-items:center;column-gap:3px;padding:5px 8px;display:grid}.weapon-thead{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);border-bottom:1px solid var(--border);font-size:9px}.weapon-thead .wt-head-name{grid-column:1/3}.weapon-thead span:not(.wt-head-name){text-align:center}.weapon-row{cursor:pointer;transition:background var(--dur-fast) var(--ease-standard), box-shadow var(--dur-fast) var(--ease-standard);font-size:12px}.weapon-list .weapon-row:nth-of-type(2n){background:#ffffff06}body[data-theme=light] .weapon-list .weapon-row:nth-of-type(2n){background:#3a301c0a}.weapon-row:hover{background:var(--surface-3)}.weapon-row.on{background:var(--faction-accent-bg);box-shadow:inset 2px 0 0 var(--faction-accent)}.weapon-row input{width:11px;height:11px;accent-color:var(--faction-accent);margin:0}.weapon-name{color:var(--text-1);overflow-wrap:break-word;min-width:0;font-weight:500;line-height:1.25}.wt-cell{font-family:var(--font-mono);text-align:center;color:var(--text-2);cursor:help;border-left:1px solid #0000;font-size:11px}.weapon-row.on .wt-cell{color:var(--text-1);border-left-color:var(--faction-accent-dim)}.wt-keywords{flex-wrap:wrap;grid-column:2/-1;gap:4px;margin-top:1px;font-size:10px;display:flex}.weapon-keyword{color:var(--accent-text);cursor:help;letter-spacing:.03em;font-size:10px}.fire-btn{color:#fff;border-radius:var(--radius-sm);cursor:pointer;background:#c33;border:none;width:100%;margin-top:12px;padding:8px;font-size:13px;font-weight:600}.fire-btn:disabled{background:var(--surface-4);color:var(--text-disabled);cursor:not-allowed}.fire-btn:not(:disabled):hover{background:#d44}.dice-log{flex-direction:column;gap:8px;max-height:260px;display:flex;overflow-y:auto}.dice-entry{background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:6px 8px}.dice-summary{color:var(--text-1);margin-bottom:4px;font-size:12px}.dice-detail{color:var(--text-3);font-size:11px;font-family:var(--font-mono);margin:0;padding:0 0 0 8px;list-style:none}.dice-detail li{padding:1px 0}.modal-backdrop{background:var(--scrim);z-index:1000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal.token-overrides{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-md);width:min(900px,95vw);max-height:90vh;color:var(--text-1);flex-direction:column;display:flex}.modal.wound-allocation{background:var(--surface-1);border-radius:var(--radius-md);width:min(440px,90vw);color:var(--text-1);border:1px solid #d4af37}.wound-alloc-list{flex-direction:column;gap:4px;display:flex}.wound-alloc-row{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-1);text-align:left;cursor:pointer;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:8px 12px;font-size:13px;display:grid}.wound-alloc-row:hover{background:var(--surface-3);border-color:var(--accent)}.wound-alloc-role{text-transform:capitalize;font-weight:600}.wound-alloc-wounds{font-variant-numeric:tabular-nums;color:var(--text-2);font-size:12px}.wound-alloc-warn{color:#ffd;text-transform:uppercase;letter-spacing:.04em;background:#6e1a1a;border-radius:2px;padding:1px 6px;font-size:10px}.modal-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.modal-header h2{margin:0;font-size:16px}.overrides-toolbar{border-bottom:1px solid var(--border-subtle);align-items:center;gap:8px;padding:10px 16px;display:flex}.overrides-filter{background:var(--surface-0);border:1px solid var(--border-subtle);color:var(--text-1);border-radius:var(--radius-sm);flex:1;padding:6px 8px}.overrides-toolbar select{background:var(--surface-0);border:1px solid var(--border-subtle);color:var(--text-1);border-radius:var(--radius-sm);padding:6px 8px}.overrides-hint{color:var(--text-3);border-bottom:1px solid var(--border-subtle);margin:0;padding:8px 16px;font-size:11px}.overrides-hint code{background:var(--surface-0);color:#b5b5b5;border-radius:2px;padding:1px 4px}.overrides-list{flex-direction:column;gap:6px;padding:8px 12px;display:flex;overflow-y:auto}.override-row{background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);gap:12px;padding:8px;display:flex}.override-row--custom{border-color:var(--player1)}.override-group{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface-1);flex-direction:column;gap:6px;padding:8px;display:flex}.override-group--custom{border-color:var(--player1)}.override-group-header{border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;align-items:baseline;gap:8px;padding:0 0 4px 4px;display:flex}.override-group-header>strong{font-size:13px}.override-row--role{background:var(--surface-2);margin-left:12px}.override-slot-label{color:var(--text-2);align-items:baseline;gap:6px;margin-bottom:4px;font-size:11px;display:flex}.override-slot-name{color:var(--text-1);font-weight:500}.override-badge--multirole{color:var(--accent);border-color:var(--accent)}.override-badge--chapter{color:#6cbe6c;border-color:#6cbe6c}.override-chapter-block{border-radius:var(--radius-sm);background:#6cbe6c0a;border-left:2px solid #6cbe6c;margin:10px 0 4px 16px;padding:6px 8px}.override-chapter-header{align-items:center;gap:10px;margin-bottom:6px;display:flex}.override-chapter-name{color:#6cbe6c;text-transform:uppercase;letter-spacing:.4px;font-size:12px}.override-add-chapter{color:var(--text-2);border-top:1px dashed #2b2b2b;align-items:center;gap:8px;margin-top:8px;padding:8px 4px 4px;font-size:12px;display:flex}.override-add-chapter-label{color:var(--text-1)}.override-add-chapter-empty{color:var(--text-3);font-style:italic}.override-add-chapter select{background:var(--surface-1);color:var(--text-1);border:1px solid var(--border);border-radius:var(--radius-sm);padding:3px 6px}.override-preview{background:var(--surface-0);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;display:flex;overflow:hidden}.override-preview img{object-fit:cover;width:100%;height:100%}.override-preview-empty{background:var(--surface-3);width:100%;height:100%}.override-info{flex:1;min-width:0}.override-title{align-items:baseline;gap:8px;margin-bottom:4px;display:flex}.override-faction{color:var(--text-3);text-transform:uppercase;letter-spacing:.4px;font-size:10px}.override-badge{color:var(--player1);text-transform:uppercase;letter-spacing:.4px;border:1px solid #4a90e2;border-radius:2px;padding:1px 4px;font-size:9px}.override-row-controls{align-items:center;gap:6px;display:flex}.override-row-controls input[type=text]{background:var(--surface-0);border:1px solid var(--border-subtle);color:var(--text-1);border-radius:var(--radius-sm);flex:1;padding:4px 6px;font-size:11px}.override-upload-btn{cursor:pointer;align-items:center;display:inline-flex}.override-error{color:var(--color-danger);margin-top:4px;font-size:10px}.override-row-controls--3d{margin-top:4px}.override-badge--3d{color:var(--accent);border-color:var(--accent)}.override-status{color:#8aa9c9;margin-top:4px;font-size:10px}.phase-banner{background:var(--faction-grad), var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(1.2);backdrop-filter:blur(var(--glass-blur)) saturate(1.2);border:1px solid var(--glass-border);clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);text-align:center;color:var(--text-1);pointer-events:none;z-index:9000;padding:14px 38px;animation:.9s ease-out forwards phase-banner-flash;position:fixed;top:56px;left:50%;transform:translate(-50%)}.phase-banner--player1{border-left:4px solid var(--player1);border-right:4px solid var(--player1)}.phase-banner--player2{border-left:4px solid var(--player2);border-right:4px solid var(--player2)}.phase-banner-sub{letter-spacing:2px;opacity:.72;margin-bottom:4px;font-size:11px}.phase-banner-main{font-family:var(--font-display);letter-spacing:4px;font-size:22px;font-weight:600}.phase-banner-main:before{content:"++ ";color:var(--faction-accent);opacity:.8}.phase-banner-main:after{content:" ++";color:var(--faction-accent);opacity:.8}@keyframes phase-banner-flash{0%{opacity:0;transform:translate(-50%,-8px)}18%{opacity:1;transform:translate(-50%)}80%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-8px)}}.dice-tray{flex-direction:column;gap:10px;margin-top:4px;display:flex}.dice-tray-entry{border:1px solid var(--border-subtle);border-radius:var(--radius-sm);animation:dice-entry-in var(--dur-slow) var(--ease-out) backwards;background:#ffffff0a;padding:8px 10px}@keyframes dice-entry-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.dice-tray-summary{color:var(--text-2);margin-bottom:6px;font-size:10px;line-height:1.3}.dice-tray-row{align-items:center;gap:8px;margin-bottom:3px;display:flex}.dice-tray-step{width:42px;color:var(--text-3);text-transform:uppercase;letter-spacing:.5px;font-size:10px}.dice-tray-faces{flex-wrap:wrap;flex:1;gap:1px;display:flex}.die{text-align:center;width:20px;animation:fx-die-pop var(--dur-slow) var(--ease-overshoot) backwards;font-size:20px;line-height:1;display:inline-block}.dice-tray-faces .die:nth-child(2){animation-delay:40ms}.dice-tray-faces .die:nth-child(3){animation-delay:80ms}.dice-tray-faces .die:nth-child(4){animation-delay:.12s}.dice-tray-faces .die:nth-child(5){animation-delay:.16s}.dice-tray-faces .die:nth-child(6){animation-delay:.2s}.dice-tray-faces .die:nth-child(7){animation-delay:.24s}.dice-tray-faces .die:nth-child(8){animation-delay:.28s}.dice-tray-faces .die:nth-child(n+9){animation-delay:.32s}.die--good{color:#6cba6c}.die--bad{color:var(--color-danger)}.die--save-good{color:#6cba6c}.die--save-bad{color:var(--color-danger)}.mathhammer-preview{background:var(--faction-accent-bg);border-left:2px solid var(--faction-accent);border-radius:var(--radius-sm);color:#d8d4c0;align-items:center;gap:6px;margin-bottom:6px;padding:6px 8px;font-size:11px;display:flex}.mathhammer-preview .mh-label{color:var(--faction-accent);text-transform:uppercase;letter-spacing:.7px;font-size:9px}.mathhammer-preview .mh-stat b{color:#fff;font-size:12px}.mathhammer-preview .mh-sep{color:var(--text-disabled)}.detachment-card{background:var(--faction-accent-bg);border-left:3px solid var(--faction-accent);border-radius:var(--radius-sm);margin-bottom:8px;padding:8px 10px;position:relative;overflow:hidden}.detachment-card:after{content:var(--faction-glyph);color:var(--faction-accent);opacity:.1;pointer-events:none;font-size:48px;line-height:1;position:absolute;bottom:-14px;right:-6px}.detachment-name{font-family:var(--font-display);color:var(--faction-accent);text-transform:uppercase;letter-spacing:1px;margin-bottom:3px;font-size:11px;font-weight:600}.detachment-rule{color:var(--text-2);font-size:10px;line-height:1.4}.board-area{flex-direction:column;grid-area:board;min-width:0;min-height:0;display:flex;position:relative}.board-area .board-host{flex:1;min-width:0;min-height:0;position:relative}.mode-picker-overlay{z-index:60;background:#000000a8;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.mode-picker-card{background:var(--surface-overlay);border:1px solid var(--border);border-radius:var(--radius-xl);width:min(560px,92vw);padding:24px;box-shadow:0 12px 48px #00000080}.mode-picker-title{color:var(--text-1);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.05em;margin:0 0 16px;font-size:20px;font-weight:600}.mode-picker-options{gap:12px;display:grid}.mode-picker-option{text-align:left;cursor:pointer;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-lg);color:var(--text-1);transition:background var(--dur-fast) var(--ease-standard), border-color var(--dur-fast) var(--ease-standard), transform var(--dur-med) var(--ease-overshoot), box-shadow var(--dur-med) var(--ease-standard);grid-template-rows:auto auto;grid-template-columns:36px 1fr;gap:2px 12px;padding:14px 16px;display:grid}.mode-picker-option:hover{background:var(--surface-3);border-color:var(--accent-dim);box-shadow:var(--shadow-2), 0 0 0 1px var(--accent-dim);transform:translateY(-2px)}.mode-picker-icon{color:var(--accent-text);grid-row:1/3;align-self:center;display:inline-flex}.mode-picker-name{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.04em;font-weight:600}.mode-picker-desc{color:var(--text-2);font-size:13px}.mode-picker-cancel{color:var(--text-2);cursor:pointer;background:0 0;border:none;margin-top:16px}.mode-picker-cancel:hover{color:var(--text-1)}body[data-compact=true] .mode-picker-card{width:min(560px,96vw);max-height:92dvh;padding-bottom:max(24px, env(safe-area-inset-bottom,0px));overflow-y:auto}.ai-turn-banner,.attack-reroll-banner,.overwatch-banner,.save-reroll-banner{border-radius:var(--radius-pill);background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(1.2);backdrop-filter:blur(var(--glass-blur)) saturate(1.2);border:1px solid var(--tone-dim,var(--glass-border));color:var(--tone,var(--text-1));box-shadow:var(--shadow-2), inset 0 1px 0 var(--glass-highlight);align-items:center;gap:10px;padding:6px 8px 6px 16px;font-size:13px;display:flex;position:fixed;left:50%;transform:translate(-50%)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.ai-turn-banner,.attack-reroll-banner,.overwatch-banner,.save-reroll-banner{background:var(--surface-overlay)}}.attack-reroll-banner__go,.overwatch-banner__go,.save-reroll-banner__go{background:var(--tone-fill);color:var(--tone-on-fill);border-radius:var(--radius-pill);cursor:pointer;border:none;padding:4px 12px;font-size:13px;font-weight:700}.attack-reroll-banner__go:hover:not(:disabled),.overwatch-banner__go:hover:not(:disabled),.save-reroll-banner__go:hover:not(:disabled){filter:brightness(1.15)}.attack-reroll-banner__go:disabled,.overwatch-banner__go:disabled,.save-reroll-banner__go:disabled{opacity:.45;cursor:not-allowed}.attack-reroll-banner__cp,.overwatch-banner__cp,.save-reroll-banner__cp{color:var(--tone);font-weight:600}.attack-reroll-banner__x,.overwatch-banner__x{color:var(--tone);opacity:.7;cursor:pointer;background:0 0;border:none;padding:0 6px;font-size:18px;line-height:1}.attack-reroll-banner__x:hover,.overwatch-banner__x:hover{opacity:1}.save-reroll-banner__keep{border:1px solid var(--tone-dim);color:var(--tone);opacity:.85;cursor:pointer;border-radius:var(--radius-pill);background:0 0;padding:4px 10px;font-size:12px}.save-reroll-banner__keep:hover{opacity:1}.ai-turn-banner{z-index:55;--tone:var(--tone-defensive);--tone-dim:var(--tone-defensive-dim);font-weight:600;top:8px}.attack-reroll-banner{z-index:56;--tone:var(--tone-opportunity);--tone-dim:var(--tone-opportunity-dim);--tone-fill:var(--tone-opportunity-fill);--tone-on-fill:var(--tone-opportunity-on-fill);bottom:88px}.overwatch-banner{z-index:56;--tone:var(--tone-defensive);--tone-dim:var(--tone-defensive-dim);--tone-fill:var(--tone-defensive-fill);--tone-on-fill:var(--tone-defensive-on-fill);bottom:128px}.save-reroll-banner{z-index:57;--tone:var(--tone-peril);--tone-dim:var(--tone-peril-dim);--tone-fill:var(--tone-peril-fill);--tone-on-fill:var(--tone-peril-on-fill);bottom:168px}.empty-state{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10;pointer-events:auto;background:#080a0ed9;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.empty-state-card{background:var(--surface-overlay);border:1px solid var(--border);border-radius:var(--radius-lg);text-align:center;max-width:480px;box-shadow:var(--shadow-3);padding:32px 36px;position:relative}.empty-state-card:before,.empty-state-card:after{content:"";border-color:var(--accent);opacity:.8;pointer-events:none;border-style:solid;width:16px;height:16px;position:absolute}.empty-state-card:before{border-width:1.5px 0 0 1.5px;top:6px;left:6px}.empty-state-card:after{border-width:0 1.5px 1.5px 0;bottom:6px;right:6px}.empty-state-title{font-family:var(--font-display);text-transform:uppercase;color:var(--accent);letter-spacing:.04em;margin:0 0 8px;font-size:30px;font-weight:600}.empty-state-sub{color:var(--text-2);margin:0 0 22px;font-size:14px;line-height:1.5}.empty-state-actions{justify-content:center;gap:12px;margin-bottom:18px;display:flex}.empty-state-primary,.empty-state-secondary{padding:10px 18px;font-size:14px;font-weight:600}.empty-state-hint{color:var(--text-3);margin:0;font-size:12px;font-style:italic}.top-score-strip{background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(1.2);backdrop-filter:blur(var(--glass-blur)) saturate(1.2);border-bottom:1px solid var(--glass-border);box-shadow:inset 0 1px 0 var(--glass-highlight);color:var(--text-1);flex-wrap:wrap;justify-content:center;align-items:center;gap:22px;padding:8px 14px;font-size:12px;display:flex}.tss-side,.tss-obj-bar{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.tss-block{align-items:center;gap:6px;display:flex}.tss-side.tss-p1{color:var(--player1-text);font-weight:700}.tss-side.tss-p2{color:var(--player2-text);font-weight:700}.tss-sep{color:var(--text-disabled);font-size:10px}.tss-label{color:var(--text-3);letter-spacing:1px;margin-left:2px;font-size:9px}.tss-objectives{border-left:1px solid var(--border);gap:4px;margin-left:4px;padding-left:12px;display:flex}.tss-obj{border-radius:var(--radius-sm);background:#ffffff08;border:1px solid #0000;align-items:center;gap:3px;padding:2px 6px;font-size:10px;display:inline-flex}.tss-obj.ctrl-player1{border-color:var(--player1)}.tss-obj.ctrl-player2{border-color:var(--player2)}.tss-obj-id{color:var(--accent);font-weight:600}.tss-obj-p1{color:var(--player1-text)}.tss-obj-p2{color:var(--player2-text)}.tss-obj-vs{color:var(--text-disabled)}.action-bar{background:var(--faction-grad), var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(1.2);backdrop-filter:blur(var(--glass-blur)) saturate(1.2);border-bottom:1px solid var(--glass-border);color:var(--text-1);grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:8px 14px;display:grid}.action-bar--player1,.action-bar--player2{border-left:4px solid var(--faction-accent)}.ab-phase{align-items:baseline;gap:8px;font-size:13px;display:inline-flex}.ab-turn{color:var(--text-3);letter-spacing:1px;font-size:10px}.ab-player{color:#fff;border-radius:var(--radius-sm);background:#ffffff0f;padding:2px 6px;font-size:11px}.action-bar--player1 .ab-player{color:var(--player1-text)}.action-bar--player2 .ab-player{color:var(--player2-text)}.ab-phase-name{font-family:var(--font-display);text-transform:uppercase;letter-spacing:2px;color:var(--text-1);font-weight:600}.ab-breadcrumb{align-items:baseline;gap:2px;display:inline-flex}.ab-crumb{letter-spacing:.06em;text-transform:uppercase;color:#6a6a72;border-radius:var(--radius-sm,4px);cursor:help;padding:2px 7px;font-size:11px;font-weight:600}.ab-crumb+.ab-crumb{position:relative}.ab-crumb+.ab-crumb:before{content:"›";color:#44444a;position:absolute;left:-3px}.ab-crumb--active{color:var(--text-on-accent,#0b0b0d);background:var(--faction-accent,#d4af37);font-weight:700}.ab-primary{justify-content:center;align-items:center;gap:10px;display:flex}.ab-actions{justify-self:end;align-items:center;gap:8px;display:inline-flex}.ab-kbd{letter-spacing:.04em;border-radius:var(--radius-sm);color:inherit;opacity:.85;background:#00000047;border:1px solid #fff3;margin-left:3px;padding:1px 5px;font-size:9px;font-weight:700}.ab-phase-hint{color:var(--text-3);font-size:11px;font-style:italic}.ab-phase-hint--alert{color:#e2b774;font-style:normal;font-weight:600}.ab-action-btn{border:1px solid var(--border);background:var(--surface-3);color:var(--text-1);border-radius:var(--radius-sm);cursor:pointer;letter-spacing:.5px;padding:6px 16px;font-size:12px;font-weight:600;transition:background 80ms,border-color 80ms}.ab-action-btn:hover:not(:disabled){border-color:var(--border-strong);background:#3a3a3a}.ab-action-btn:disabled{opacity:.4;cursor:not-allowed}.ab-fire{color:#ffd690;background:#5a3e1e;border-color:#8a5e2e}.ab-fire:hover:not(:disabled){background:#7a5424}.ab-charge{color:#ffb0b0;background:#5a1e1e;border-color:#8a2e2e}.ab-charge:hover:not(:disabled){background:#7a2424}.ab-fight{color:#f0c0f0;background:#4a2a4a;border-color:#6a3e6a}.ab-fight:hover:not(:disabled){background:#5a345a}.ab-oath{color:#ffe79a;background:#3a3416;border-color:#8a7a2e}.ab-oath:hover:not(:disabled){background:#524a1f}.ab-pact{color:#ffb0c8;background:#3a1622;border-color:#8a2e4e}.ab-pact:hover:not(:disabled){background:#521f30}.ab-pact-active{color:#ff9ab8;align-self:center;padding:0 8px;font-weight:600}.ab-doctrines{gap:6px;margin-left:8px;display:inline-flex}.ab-doctrine{color:#a8d4ff;text-transform:capitalize;background:#1e2e3a;border-color:#2e5e8a}.ab-doctrine:hover:not(:disabled){background:#24405a}.ab-doctrine-active{color:#a8d4ff;text-transform:capitalize;font-weight:600}.ab-next-phase{color:#c6e9d0;background:#1f4a2f;border-color:#2f6a40}.ab-next-phase:hover:not(:disabled){background:#295e3a}.tabbed-rail{flex-direction:column;height:100%;display:flex}.tabbed-rail-tabs{border-bottom:1px solid var(--border-subtle);background:var(--surface-1);grid-template-columns:repeat(4,1fr);display:grid}.tab-btn{color:var(--text-3);font-family:var(--font-display);letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;transition:color var(--dur-fast) var(--ease-standard), border-color var(--dur-fast) var(--ease-standard), background var(--dur-fast) var(--ease-standard);background:0 0;border:none;border-bottom:2px solid #0000;flex-direction:column;align-items:center;gap:3px;padding:10px 6px;font-size:11px;font-weight:500;display:flex}.tab-btn .tab-icon{stroke-width:2px;opacity:.85;width:15px;height:15px}.tab-btn:hover{color:var(--text-1)}.tab-btn--active{color:#fff;border-bottom-color:var(--faction-accent);background:var(--faction-accent-bg)}.tab-label{font-size:11px}.tab-badge{color:var(--faction-accent);text-transform:none;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:9px;font-weight:400;display:block;overflow:hidden}.tab-btn--active .tab-badge{color:var(--faction-text)}.tabbed-rail-content{flex:1;min-height:0;padding:12px 14px;overflow-y:auto}.tabbed-rail-content h2{font-family:var(--font-display);text-transform:uppercase;letter-spacing:1.5px;color:var(--text-2);margin:18px 0 6px;font-size:11px;font-weight:500}.tabbed-rail-content h2:first-child{margin-top:0}.phase-banner--turn{background:var(--faction-grad), #08080ad1;border-width:2px;padding:28px 60px;animation:1.3s ease-out forwards phase-banner-mega;top:80px}.phase-banner--turn.phase-banner--player1{border-left:6px solid var(--player1);border-right:6px solid var(--player1)}.phase-banner--turn.phase-banner--player2{border-left:6px solid var(--player2);border-right:6px solid var(--player2)}.phase-banner-mega-sub{letter-spacing:4px;opacity:.75;margin-bottom:8px;font-size:13px}.phase-banner-mega-main{font-family:var(--font-display);letter-spacing:8px;color:var(--faction-accent);text-shadow:0 0 24px var(--faction-accent-dim);font-size:36px;font-weight:600}@keyframes phase-banner-mega{0%{opacity:0;transform:translate(-50%,-16px)scale(.95)}12%{opacity:1;transform:translate(-50%)scale(1)}80%{opacity:1;transform:translate(-50%)scale(1)}to{opacity:0;transform:translate(-50%,-16px)scale(.95)}}.ab-next-phase{animation:2.4s ease-in-out infinite end-phase-pulse}.ab-next-phase:disabled{animation:none}@keyframes end-phase-pulse{0%,to{box-shadow:0 0 #0000}50%{box-shadow:0 0 12px 3px var(--faction-accent-dim)}}.ability-dock{background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(1.2);backdrop-filter:blur(var(--glass-blur)) saturate(1.2);border-top:1px solid var(--glass-border);border-left:4px solid var(--faction-accent);color:var(--text-1);flex-wrap:wrap;align-items:center;gap:10px;min-height:48px;padding:8px 14px;font-size:12px;display:flex}.ability-dock--passive{border-left-color:var(--text-disabled);opacity:.7}.dock-label{font-family:var(--font-display);color:var(--faction-accent);text-transform:uppercase;letter-spacing:1.5px;font-size:10px;font-weight:600}.dock-hint{color:var(--text-3);font-size:11px;font-style:italic}.dock-hint--right{margin-left:auto}.dock-tile{background:var(--surface-3);color:var(--text-1);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;letter-spacing:.4px;padding:6px 12px;font-size:11px;font-weight:600;transition:background 80ms,border-color 80ms,color 80ms}.dock-tile:hover:not(:disabled){background:var(--surface-4);border-color:var(--border-strong)}.dock-tile:disabled{color:var(--text-disabled);cursor:not-allowed;opacity:.5}.dock-tile--active{background:var(--faction-accent);color:var(--text-on-accent);border-color:var(--faction-accent);box-shadow:0 0 8px var(--faction-accent-dim);font-weight:700}.dock-tile--active:hover{background:var(--faction-accent)}.dock-weapon,.dock-weapon-card{border:1px solid var(--border);border-left:3px solid var(--faction-accent-dim);text-align:left;background:linear-gradient(170deg,#222 0%,#1a1a1a 100%);flex-direction:column;align-items:flex-start;gap:3px;min-width:140px;max-width:240px;padding:6px 10px;transition:transform .12s ease-out,box-shadow .12s,border-color .12s;display:inline-flex}.dock-weapon-card:hover:not(:disabled){border-left-color:var(--faction-accent);transform:translateY(-2px);box-shadow:0 4px 12px #00000080}.dock-weapon-card.dock-tile--active{background:var(--faction-accent);color:var(--text-on-accent);border-color:var(--faction-accent);border-left-color:var(--faction-accent);box-shadow:0 0 10px var(--faction-accent-dim)}.dock-weapon-name{white-space:nowrap;letter-spacing:.3px;font-size:11px;font-weight:700}.dock-weapon-stats{color:var(--text-3);letter-spacing:.4px;white-space:nowrap;font-size:9px}.dock-tile--active .dock-weapon-stats{color:#000000a6}.dock-weapon-keywords{flex-wrap:wrap;gap:2px;margin-top:2px;display:flex}.dock-kw-chip{color:var(--faction-text);border:1px solid var(--faction-accent-dim);border-radius:var(--radius-lg);letter-spacing:.5px;text-transform:uppercase;cursor:help;background:#ffffff0f;padding:1px 5px;font-size:8px;font-weight:700;display:inline-block}.dock-tile--active .dock-kw-chip{color:#000000b3;background:#00000026;border-color:#00000040}.strat-controls{z-index:3;background:var(--surface-1,#16181d);border-bottom:1px solid #24272d;flex-direction:column;gap:7px;margin-bottom:6px;padding-bottom:9px;display:flex;position:sticky;top:0}.strat-search{width:100%}.strat-control-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.strat-toggle{letter-spacing:.2px;color:#9aa0aa;border:1px solid var(--border)73f;border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;background:0 0;flex:none;margin-left:auto;padding:4px 9px;font-size:11px;font-weight:700;transition:color .1s,background .1s,border-color .1s}.strat-toggle:hover{color:#d6dae0;border-color:#4a4f59}.strat-toggle.is-on{color:#0c1410;background:#6fcf97;border-color:#6fcf97}.strat-sections{flex-direction:column;gap:7px;display:flex}.strat-section-head{border-radius:var(--radius-md);color:#c4c9d2;text-align:left;cursor:pointer;background:#ffffff08;border:1px solid #26292f;align-items:center;gap:7px;width:100%;padding:6px 9px;transition:background .1s;display:flex}.strat-section-head:hover{background:#ffffff0f}.strat-section-caret{color:#6f7782;width:9px;font-size:9px}.strat-section-glyph{font-size:12px;line-height:1}.strat-section-title{letter-spacing:.5px;text-transform:uppercase;font-size:11px;font-weight:800}.strat-section-count{color:#8a90a0;white-space:nowrap;background:#ffffff0d;border-radius:9px;margin-left:auto;padding:1px 8px;font-size:10px;font-weight:700}.strat-section-cards{padding-top:7px}.strat-section--now .strat-section-glyph{color:#6fcf97}.strat-section--now .strat-section-count{color:#0c1410;background:#6fcf97}.strat-section--later .strat-section-glyph{color:#7fb4dd}.strat-section--reactive .strat-section-glyph{color:#e2a04a}.strat-section--unavailable .strat-section-head{opacity:.78}.strat-card{border:1px solid var(--border-subtle);border-left:4px solid var(--faction-accent);border-radius:var(--radius-md);color:#d8d8d8;background:linear-gradient(170deg,#1f1f1f 0%,#171717 100%);align-items:flex-start;gap:10px;margin-bottom:8px;padding:9px 11px 9px 9px;transition:transform .1s ease-out,box-shadow .1s ease-out,opacity .12s;display:flex;position:relative}.strat-card:hover{box-shadow:0 6px 16px #00000080, 0 0 0 1px var(--faction-accent-dim) inset;z-index:2;transform:translateY(-1px)}.strat-card--your-turn{border-left-color:var(--faction-accent)}.strat-card--either{border-left-color:#c9a23a}.strat-card--opponents-turn{border-left-color:#b3121b}.strat-card--locked{opacity:.6}.strat-card--locked:hover{opacity:.82}.strat-card--used{opacity:.42;filter:grayscale(.4)}.strat-card--used .strat-card-gem{background:linear-gradient(#555,#3a3a3a)}.strat-card--active{opacity:1;filter:none;background:linear-gradient(170deg,#1c2a20 0%,#15201a 100%);box-shadow:inset 0 0 0 1px #6fcf9759,0 0 10px #6fcf971f}.strat-card[draggable=true]{cursor:grab}.strat-card[draggable=true]:active{cursor:grabbing}.strat-card--dragging{opacity:.4;transform:rotate(-2deg)scale(.98)}.strat-card-gem{color:#fff;clip-path:polygon(50% 0%,100% 50%,50% 100%,0% 50%);background:linear-gradient(#c0121a,#8b0d13);flex:none;place-items:center;width:38px;height:38px;margin-top:2px;line-height:1;display:grid;box-shadow:0 1px 3px #00000080}.strat-card-gem-n{font-size:15px;font-weight:800}.strat-card-gem-cp{letter-spacing:.5px;opacity:.85;margin-top:1px;font-size:7px;font-weight:700}.strat-card-body{flex:auto;min-width:0}.strat-card-cat{letter-spacing:.8px;text-transform:uppercase;color:#9aa0aa;font-size:9px;font-weight:800}.strat-card[data-category=battle-tactic] .strat-card-cat{color:#7fb4dd}.strat-card[data-category=strategic-ploy] .strat-card-cat{color:#8fd6a6}.strat-card[data-category=epic-deed] .strat-card-cat{color:#e6c558}.strat-card[data-category=wargear] .strat-card-cat{color:#dd9a5a}.strat-card-name{color:#fff;letter-spacing:.3px;font-size:14px;font-weight:800;line-height:1.15}.strat-card-active-tag{letter-spacing:.5px;color:#6fcf97;margin-top:3px;font-size:10px;font-weight:700}.strat-card-row{gap:7px;margin-top:6px;font-size:11px;line-height:1.4;display:flex}.strat-card-rowlabel{letter-spacing:.6px;text-transform:uppercase;color:#6f7782;flex:0 0 38px;padding-top:2px;font-size:8px;font-weight:800}.strat-card-rowtext{color:#cfcfcf;flex:auto;min-width:0}.strat-card-row:first-of-type .strat-card-rowtext{color:#9aa39a;font-style:italic}.strat-card-tags{flex-wrap:wrap;gap:5px;margin-top:7px;display:flex}.strat-card-target,.strat-card-wire,.strat-card-effect{letter-spacing:.3px;border:1px solid;border-radius:9px;padding:2px 6px;font-size:9px;font-weight:700}.strat-card-target{color:#b6bcc6;white-space:nowrap;background:#ffffff0a;border-color:#33373f}.strat-card-wire.is-auto{color:#8fd6a6;white-space:nowrap;background:#6fcf971f;border-color:#6fcf9759}.strat-card-wire.is-manual{color:#d8a657;white-space:nowrap;background:#d8a6571a;border-color:#d8a65759}.strat-card-effect{color:#8fd6a6;background:#6fcf971a;border-color:#6fcf974d}.strat-card-foot{justify-content:flex-end;align-items:center;gap:8px;margin-top:9px;display:flex}.strat-card-btn{color:#f0fff0;border-radius:var(--radius-sm);cursor:pointer;letter-spacing:.5px;background:#2a6b3b;border:1px solid #3d8f55;padding:4px 14px;font-size:11px;font-weight:700;transition:background 80ms,transform 80ms}.strat-card-btn:hover{background:#347e48;transform:translate(2px)}.strat-card-used-label{color:var(--color-danger);letter-spacing:1px;font-size:10px;font-weight:700}.strat-card-cant{color:#c98a8a;font-size:10px;font-style:italic}.strat-card-phase{color:#8a93a8;letter-spacing:.2px;font-size:10px;font-weight:600}.strat-card-drag-hint{color:var(--text-disabled);letter-spacing:.4px;margin-right:auto;font-size:9px;font-style:italic}.strat-card[draggable=true]:hover .strat-card-drag-hint{color:var(--faction-accent)}.strat-army-rules{background:var(--surface-2,#1b1f27);border:1px solid var(--border-subtle,#2a2f3a);border-radius:var(--radius-md,8px);margin-bottom:10px;padding:8px 10px}.strat-army-rules-title{letter-spacing:.6px;text-transform:uppercase;color:#8a93a8;margin-bottom:6px;font-size:10px;font-weight:700}.strat-rule-row{justify-content:space-between;align-items:center;gap:8px;padding:3px 0;display:flex}.strat-rule-name{color:#d7c98a;font-size:12px;font-weight:600}.strat-rule-active{color:#6fcf97;font-size:11px;font-weight:600}.strat-rule-hint{color:var(--text-3);font-size:10px;font-style:italic}.strat-rule-btns{gap:6px;display:flex}.strat-rule-btns .strat-card-btn{text-transform:capitalize}.strat-active-strip{border-radius:var(--radius-sm);background:#6fcf9714;border:1px solid #6fcf974d;flex-direction:column;gap:6px;margin-bottom:8px;padding:8px 10px;display:flex}.strat-active-strip-label{text-transform:uppercase;letter-spacing:1px;color:#6fcf97;font-size:10px;font-weight:700}.strat-active-chips{flex-wrap:wrap;gap:6px;display:flex}.strat-active-chip{color:#d8f0e0;border-radius:var(--radius-lg);background:#6fcf971f;border:1px solid #6fcf974d;padding:2px 8px;font-size:11px;font-weight:600}.kw-highlight{color:var(--faction-accent);background:var(--faction-accent-bg);border-bottom:1px dotted var(--faction-accent);cursor:help;text-transform:uppercase;letter-spacing:.5px;border-radius:2px;margin:0 1px;padding:0 4px;font-size:.92em;font-weight:700;display:inline}.shot-callout{pointer-events:none;z-index:200;border:1px solid var(--faction-accent);border-radius:var(--radius-md);min-width:200px;max-width:280px;color:var(--text-1);background:#0f0f0ff0;padding:8px 10px;font-size:11px;line-height:1.4;animation:.16s ease-out shot-callout-in;position:fixed;box-shadow:0 6px 18px #000000b3,inset 0 0 0 1px #0000004d}@keyframes shot-callout-in{0%{opacity:0;transform:translate(-4px,-4px)scale(.96)}to{opacity:1;transform:translate(0)scale(1)}}.move-actions-callout{z-index:200;border:1px solid var(--faction-accent);border-radius:var(--radius-md);pointer-events:auto;background:#0f0f0ff0;flex-direction:column;gap:5px;padding:6px 8px;animation:.14s ease-out shot-callout-in;display:flex;position:fixed;transform:translate(-50%,calc(-100% - 22px));box-shadow:0 6px 18px #000000b3,inset 0 0 0 1px #0000004d}.mac-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.mac-title{letter-spacing:.4px;text-transform:uppercase;color:var(--faction-accent);font-size:11px;font-weight:700}.mac-sub{color:var(--text-2);white-space:nowrap;font-size:11px}.mac-orders{gap:6px;display:flex}.mac-btn{letter-spacing:.2px;color:var(--text-1);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;padding:5px 11px;font-size:11px;font-weight:600}.mac-btn:hover:not(:disabled){background:var(--faction-accent-bg);border-color:var(--faction-accent)}.mac-btn--active{background:var(--faction-accent);color:var(--text-on-accent);border-color:var(--faction-accent);box-shadow:0 0 8px var(--faction-accent-dim);font-weight:700}.mac-btn--active:hover:not(:disabled){background:var(--faction-accent)}.mac-btn:disabled{opacity:.4;cursor:not-allowed}.sc-head{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:6px;padding-bottom:4px;display:flex}.sc-weapon{color:var(--faction-accent);letter-spacing:.3px;font-size:11px;font-weight:700}.sc-attackers{color:var(--text-2);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:#ffffff0a;padding:1px 6px;font-size:10px}.sc-stats{grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:6px;display:grid}.sc-stat{border-radius:var(--radius-sm);background:#ffffff08;flex-direction:column;align-items:center;padding:4px 0;display:flex}.sc-stat-label{color:var(--text-3);text-transform:uppercase;letter-spacing:.5px;font-size:8px}.sc-stat-value{color:#fff;font-size:13px;font-weight:700}.sc-footer{border-top:1px solid var(--border-subtle);flex-direction:column;gap:3px;padding-top:4px;display:flex}.sc-headline{color:var(--text-1);font-size:12px}.sc-headline b{color:var(--faction-accent);font-size:14px}.sc-mod{letter-spacing:.5px;text-transform:uppercase;border-radius:2px;align-self:flex-start;padding:1px 4px;font-size:9px;font-weight:700}.sc-mod-guided{color:#c6a86a;background:#c6a86a1f;border:1px solid #c6a86a66}.sc-mod-dev{color:var(--player2-text);background:#e274741a;border:1px solid #e2747466}.sc-mods{flex-wrap:wrap;gap:3px;display:flex}.sc-mod-attacks{color:#7fb4dd;background:#7fb4dd1f;border:1px solid #7fb4dd66}.sc-mod-hit{color:#c6a86a;background:#c6a86a1f;border:1px solid #c6a86a66}.sc-mod-wound{color:#dd9a5a;background:#dd9a5a1f;border:1px solid #dd9a5a66}.sc-mod-save{color:var(--player2-text);background:#e274741a;border:1px solid #e2747466}.sc-mod-special{color:#b694d9;background:#b694d91f;border:1px solid #b694d966}.sc-mod-risk{color:#e2c14a;background:#e2c14a1a;border:1px dashed #e2c14a99}.board-area--strat-targeting{outline:2px dashed var(--faction-accent);outline-offset:-6px;animation:1.2s ease-in-out infinite strat-drop-pulse}.board-area--strat-targeting .board-host{cursor:copy}.board-area--strat-targeting:after{content:"DROP TO PLAY STRATAGEM";border:1px solid var(--faction-accent);border-radius:var(--radius-md);color:var(--faction-accent);letter-spacing:3px;pointer-events:none;z-index:100;box-shadow:0 0 24px var(--faction-accent-dim);background:#000000c7;padding:12px 24px;font-size:14px;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes strat-drop-pulse{0%,to{outline-color:var(--faction-accent-dim)}50%{outline-color:var(--faction-accent)}}.app--strip{grid-template-columns:44px 1fr 300px}.app--strip .tabbed-rail-content{display:none}.app--strip .tab-btn{padding:12px 4px;font-size:0}.app--strip .tab-btn .tab-label{display:none}.app--strip .tab-btn .tab-badge{margin-top:4px;padding:1px 4px;font-size:9px}.app--strip .tab-btn .tab-icon{width:18px;height:18px}.app--strip .tabbed-rail-tabs{flex-direction:column}.app--compact{grid-template-columns:0 1fr 300px}.app--compact .sidebar{display:none}.app--compact .board-area{padding-left:0}.app--rails-overlay{grid-template-columns:1fr;grid-template-areas:"top""board"}.app--rails-overlay .sidebar{top:var(--topbar-h,44px);width:min(330px,86vw);padding-bottom:env(safe-area-inset-bottom,0px);z-index:320;will-change:transform;transition:transform .22s;position:fixed;bottom:0;left:0;overflow-y:auto;transform:translate(-102%);box-shadow:0 0 24px #00000080}.app--rails-overlay.app--rail-left-open .sidebar{transform:translate(0)}.app--rails-overlay .combat-rail{width:auto;max-height:min(72dvh, calc(100dvh - var(--topbar-h) - 12px));z-index:320;border-left:none;border-top:1px solid var(--border,#2a2a2a);padding-bottom:max(12px, env(safe-area-inset-bottom,0px));will-change:transform;border-radius:14px 14px 0 0;transition:transform .24s;position:fixed;inset:auto 0 0;overflow-y:auto;transform:translateY(102%);box-shadow:0 -8px 28px #0000008c}.app--rails-overlay.app--rail-right-open .combat-rail,.app--rails-overlay.app--combat-bar .combat-rail{transform:translateY(0)}.app--rails-overlay.app--combat-bar:not(.app--rail-right-open) .combat-rail{max-height:none}.app--rails-overlay.app--combat-bar:not(.app--rail-right-open) .combat-rail>:not(.combat-rail__peek),.combat-rail__peek{display:none}.app--rails-overlay.app--combat-bar .combat-rail__peek{border:none;border-bottom:1px solid var(--border,#2a2a2a);width:100%;color:var(--text-1,#eee);font:inherit;cursor:pointer;text-align:left;background:0 0;align-items:center;gap:8px;margin-bottom:6px;padding:4px 4px 10px;font-weight:600;display:flex}.combat-rail__peek-icon{color:var(--faction-accent,#d9b65a);flex:none;font-size:18px}.combat-rail__peek-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.combat-rail__peek-action{color:var(--faction-accent,#d9b65a);flex:none;font-size:13px}.app--rails-overlay .combat-rail .combat-rail__fire{background:linear-gradient(#12121200 0%,#141414 28%);padding-top:8px;position:sticky;bottom:0}.rail-backdrop{inset:var(--topbar-h,44px) 0 0 0;z-index:310;background:#00000073;position:fixed}.rail-toggle{z-index:330;border:1px solid var(--surface-3,#333);width:30px;height:64px;color:var(--faction-accent,#d9b65a);cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#141414d1;justify-content:center;align-items:center;font-size:16px;display:flex;position:fixed;top:50%;transform:translateY(-50%)}.rail-toggle--left{border-left:none;border-radius:0 10px 10px 0;left:0}.rail-toggle--right{top:auto;bottom:calc(12px + env(safe-area-inset-bottom,0px));border:1px solid var(--surface-3,#333);border-radius:var(--radius-pill);gap:6px;width:auto;height:40px;padding:0 14px;font-weight:600;right:12px;transform:none}.rail-toggle:active{background:#282828f2}.strat-card--armed{outline:2px solid var(--faction-accent,#d9b65a);outline-offset:-2px;box-shadow:0 0 0 1px var(--faction-accent,#d9b65a), 0 0 14px #d9b65a59}.strat-armed-hint{z-index:340;border-radius:var(--radius-lg);border:1px solid var(--faction-accent,#d9b65a);max-width:min(560px,92vw);color:var(--text-1);background:#141414f0;align-items:center;gap:12px;padding:10px 14px;font-size:13px;display:flex;position:fixed;bottom:16px;left:50%;transform:translate(-50%);box-shadow:0 6px 22px #00000080}.strat-armed-cancel{border-radius:var(--radius-md);background:var(--surface-3);color:var(--text-1);cursor:pointer;border:1px solid #555;flex:none;padding:4px 10px}.placement-rotate{left:50%;bottom:calc(80px + env(safe-area-inset-bottom,0px));z-index:335;border-radius:var(--radius-pill);border:1px solid var(--faction-accent,#d9b65a);background:#141414eb;align-items:center;gap:10px;padding:6px 10px;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 4px 18px #00000080}.placement-rotate-btn{background:var(--surface-3);width:40px;height:40px;color:var(--faction-accent,#d9b65a);cursor:pointer;border:1px solid #555;border-radius:50%;justify-content:center;align-items:center;font-size:18px;display:flex}.placement-rotate-btn:active{background:#3a3a3a}.placement-rotate-deg{text-align:center;min-width:42px;color:var(--text-1);font-variant-numeric:tabular-nums;font-size:14px}.combat-rail{border-left:1px solid var(--border-subtle);color:var(--text-1);background:linear-gradient(#161616 0%,#121212 100%);flex-direction:column;grid-area:combat;gap:10px;padding:12px 12px 24px;display:flex;overflow-y:auto}.combat-rail h2{letter-spacing:.1em;text-transform:uppercase;color:#8a8a92;margin:4px 0 2px;font-size:11px}.combat-rail__fire{margin-top:auto}.combat-rail__empty{color:var(--text-3);padding:4px 2px;font-size:13px;font-style:italic}.roster-filters{border-bottom:1px solid var(--border-subtle);flex-direction:column;gap:6px;margin-bottom:8px;padding-bottom:8px;display:flex}.roster-search{background:var(--surface-3);color:var(--text-1);border:1px solid var(--border-strong);border-radius:var(--radius-sm);width:100%;padding:5px 8px;font-size:12px}.roster-search:focus{border-color:var(--faction-accent);outline:none}.roster-chips{flex-wrap:wrap;gap:4px;display:flex}.roster-chip{background:var(--surface-3);color:var(--text-2);border:1px solid var(--border-subtle);letter-spacing:.3px;cursor:pointer;border-radius:11px;padding:2px 9px;font-size:10px;font-weight:600;transition:background 80ms,border-color 80ms,color 80ms}.roster-chip:hover{background:var(--surface-4);color:var(--text-1)}.roster-chip--on{background:var(--faction-accent-bg);border-color:var(--faction-accent);color:var(--faction-accent)}.roster-chip--clear{border-color:var(--border-strong);color:var(--text-3);background:0 0}.roster-chip--clear:hover{color:var(--color-danger);border-color:var(--color-danger)}.roster-filter-count{color:var(--text-disabled);font-size:10px;font-style:italic}.roster-sort{background-color:var(--surface-3);color:var(--text-1);border:1px solid var(--border-subtle);letter-spacing:.3px;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'><path d='M0 0l5 6 5-6z' fill='%23888'/></svg>");background-position:right 6px center;background-repeat:no-repeat;background-size:8px;border-radius:11px;padding:2px 22px 2px 9px;font-size:10px;font-weight:600;transition:background-color 80ms,border-color 80ms,color 80ms}.roster-sort:hover{background-color:#2c2c2c;border-color:#3a3a3a}.roster-sort:focus{border-color:var(--faction-accent);outline:none}.roster-sort:disabled{opacity:.5;cursor:not-allowed}.ab-deploy-hint{color:#e8d27a}.ab-deploy-hint b{color:#fff}.deployment-hint-overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:200;cursor:pointer;background:#080a0ec7;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.deployment-hint-card{cursor:default;background:var(--surface-overlay);border:1px solid var(--border);border-radius:var(--radius-lg);max-width:520px;padding:28px 32px;box-shadow:0 8px 32px #00000080}.deployment-hint-title{color:var(--accent);letter-spacing:.02em;margin:0 0 12px;font-size:22px}.deployment-hint-body{color:var(--text-2);margin:0 0 12px;font-size:14px;line-height:1.55}.deployment-hint-body b{color:var(--text-1)}.deployment-hint-ok{margin-top:6px;padding:8px 18px;font-size:14px;font-weight:600}.reserves-drawer{z-index:12;border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#14181ff2;border:1px solid #3a4250;min-width:240px;max-width:280px;padding:10px 12px;position:absolute;top:12px;right:12px;box-shadow:0 4px 16px #0006}.reserves-drawer-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.reserves-drawer-title{color:var(--accent);letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:700}.reserves-drawer-close{color:var(--text-3);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:2px 6px;font-size:16px;line-height:1}.reserves-drawer-close:hover{background:var(--surface-3);color:var(--text-1)}.reserves-drawer-hint{color:var(--text-3);margin-bottom:8px;font-size:10px;font-style:italic;line-height:1.4}.reserves-drawer-list{flex-direction:column;gap:4px;display:flex}.reserves-drawer-row{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;text-align:left;color:var(--text-1);justify-content:space-between;align-items:center;gap:8px;padding:6px 8px;font-size:12px;transition:background-color 80ms,border-color 80ms;display:flex}.reserves-drawer-row:hover:not(:disabled){background:#232a36;border-color:#3a4456}.reserves-drawer-row:disabled{opacity:.55;cursor:not-allowed}.reserves-drawer-row--selected{background:var(--faction-accent-bg);border-color:var(--faction-accent);color:var(--faction-accent)}.reserves-drawer-name{font-weight:600}.reserves-drawer-cta{color:var(--text-3);font-size:10px;font-style:italic}.reserves-drawer-row--selected .reserves-drawer-cta{color:var(--faction-accent);font-style:normal;font-weight:600}.reserves-chip{z-index:12;color:var(--accent);letter-spacing:.05em;text-transform:uppercase;cursor:pointer;background:#14181ff2;border:1px solid #3a4250;border-radius:16px;padding:6px 12px;font-size:11px;font-weight:700;transition:background-color 80ms,border-color 80ms;position:absolute;top:12px;right:12px;box-shadow:0 4px 12px #0000004d}.reserves-chip:hover{border-color:var(--accent);background:#2a2f3a}.settings-drawer-overlay{z-index:300;cursor:pointer;background:#080a0e8c;justify-content:flex-end;display:flex;position:fixed;inset:0}.settings-drawer{cursor:default;background:var(--surface-overlay);border-left:1px solid var(--border);flex-direction:column;width:340px;max-width:90vw;height:100vh;padding:16px 18px;animation:.16s ease-out settings-slide-in;display:flex;overflow-y:auto;box-shadow:-4px 0 16px #00000080}@keyframes settings-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}.settings-drawer-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.settings-drawer-title{color:var(--accent);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:16px}.settings-drawer-close{color:var(--text-3);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:2px 8px;font-size:22px;line-height:1}.settings-drawer-close:hover{background:var(--surface-3);color:var(--text-1)}.settings-drawer-section{margin-bottom:var(--space-5)}.settings-drawer-section-title{margin:0 0 var(--space-2) 0;font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-3)}.settings-drawer-section-list{gap:var(--space-2);flex-direction:column;display:flex}.kb-settings{flex-direction:column;gap:10px;display:flex}.kb-cat-title{font-size:var(--fs-2xs,.65rem);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-3);margin-bottom:4px}.kb-row{grid-template-columns:1fr auto auto auto;align-items:center;gap:6px;padding:2px 0;display:grid}.kb-row-label{font-size:var(--fs-sm,.82rem);color:var(--text-2)}.kb-conflict{color:#d4a838;cursor:help;font-size:12px}.kb-key{text-align:center;min-width:64px;font-size:var(--fs-xs);font-variant-numeric:tabular-nums;background:var(--surface-3);color:var(--text-1);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;padding:3px 8px}.kb-key:hover{border-color:var(--border-strong,#555)}.kb-key.is-capturing{background:var(--faction-accent,#c6a86a);color:#161310;border-color:var(--faction-accent,#c6a86a);font-weight:var(--fw-semibold)}.kb-reset{color:var(--text-3);cursor:pointer;background:0 0;border:none;padding:2px 4px;font-size:14px;line-height:1}.kb-reset:hover{color:var(--text-1)}.kb-reset-spacer{width:22px}.kb-reset-all{font-size:var(--fs-xs);border:1px solid var(--border);color:var(--text-2);border-radius:var(--radius-md);cursor:pointer;background:0 0;align-self:flex-start;margin-top:4px;padding:4px 10px}.kb-reset-all:hover{color:var(--text-1);border-color:var(--border-strong,#555)}.settings-drawer-item{text-align:left;background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-3);color:var(--text-1);cursor:pointer;transition:background-color var(--dur-fast), border-color var(--dur-fast);text-decoration:none;display:block}.settings-drawer-item:hover{background:var(--surface-3);border-color:var(--border-strong)}.settings-drawer-item--active{background:var(--accent-bg);border-color:var(--accent-dim);color:var(--accent-text)}.settings-drawer-item-label{font-size:var(--fs-md);font-weight:var(--fw-semibold);display:block}.settings-drawer-item-hint{font-size:var(--fs-xs);color:var(--text-3);line-height:var(--lh-normal);margin-top:2px;display:block}.settings-drawer-toggle{justify-content:space-between;align-items:center;gap:var(--space-3);background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-3);display:flex}.settings-drawer-toggle-text{min-width:0}.settings-lighting{gap:var(--space-2);background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-3);flex-direction:column;display:flex}.settings-lighting-row{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.settings-lighting-dir{gap:var(--space-1);flex-direction:column;display:flex}.settings-lighting-dir input[type=range]{width:100%;accent-color:var(--accent)}.settings-lighting-deg{color:var(--text-3);font-variant-numeric:tabular-nums}.settings-ground{gap:var(--space-2);background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-3);flex-direction:column;display:flex}.settings-ground-grid{gap:var(--space-2);grid-template-columns:repeat(3,1fr);display:grid}.settings-ground-swatch{align-items:center;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--surface-1);color:var(--text-2);font-size:var(--fs-xs);font-weight:var(--fw-medium);cursor:pointer;transition:border-color .12s,background .12s;display:flex}.settings-ground-swatch:hover{border-color:var(--border-strong)}.settings-ground-swatch.is-active{border-color:var(--accent);background:var(--surface-3);color:var(--text-1)}.settings-ground-chip{border-radius:var(--radius-sm);border:1px solid #00000059;flex:none;width:16px;height:16px;box-shadow:inset 0 1px 2px #ffffff40}.settings-ground-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.settings-objective-terrain{gap:var(--space-2);background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-3);flex-direction:column;display:flex}.settings-objective-rows{gap:var(--space-2);flex-direction:column;display:flex}.settings-objective-row{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.settings-objective-name{font-size:var(--fs-xs);font-weight:var(--fw-medium);color:var(--text-2)}.settings-objective-select{min-width:0;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--surface-1);color:var(--text-1);font-size:var(--fs-xs);cursor:pointer;flex:0 60%}.settings-objective-select:hover{border-color:var(--border-strong)}.settings-objective-foot{gap:var(--space-2);margin-top:var(--space-1);flex-direction:column;display:flex}.settings-objective-reset{padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--surface-1);color:var(--text-2);font-size:var(--fs-xs);font-weight:var(--fw-medium);cursor:pointer;align-self:flex-start;transition:border-color .12s,color .12s}.settings-objective-reset:hover:not(:disabled){border-color:var(--border-strong);color:var(--text-1)}.settings-objective-reset:disabled{opacity:.45;cursor:default}.settings-drawer-footnote{padding-top:var(--space-3);font-size:var(--fs-xs);color:var(--text-3);text-align:center;margin-top:auto}.settings-drawer-footnote kbd{background:var(--surface-1);border:1px solid var(--border-strong);border-radius:var(--radius-sm);font-family:var(--font-mono);color:var(--text-2);padding:1px 5px;font-size:10px}.pause-confirm-actions{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.pause-confirm-actions .tool-btn{flex:1;min-width:110px;padding:8px 12px;font-size:13px}.docs-page{background:var(--surface-0);min-height:100vh;color:var(--text-1);flex-direction:column;display:flex}.docs-page-head{border-bottom:1px solid var(--border);background:var(--surface-overlay);align-items:baseline;gap:14px;padding:14px 22px;display:flex}.docs-page-head h1{color:var(--accent);letter-spacing:.02em;margin:0;font-size:18px}.docs-page-sub{color:var(--text-3);font-size:12px}.docs-page-head .spacer{flex:1}.docs-page-body{box-sizing:border-box;width:100%;max-width:920px;margin:0 auto;padding:24px 22px}.docs-section{margin-bottom:28px}.docs-section h2{letter-spacing:.06em;text-transform:uppercase;color:var(--text-2);margin:0 0 12px;font-size:14px}.docs-list{color:var(--text-1);margin:0;padding-left:22px;font-size:13px;line-height:1.6}.docs-list li{margin-bottom:4px}.docs-dl{margin:0}.docs-dl-row{border-bottom:1px solid #1a1f28;grid-template-columns:130px 1fr;gap:12px;padding:6px 0;font-size:12px;display:grid}.docs-dl-row dt{color:var(--accent);letter-spacing:.03em;font-weight:700}.docs-dl-row dd{color:var(--text-2);margin:0;line-height:1.5}.docs-hint{color:var(--text-3);margin:0;font-size:12px;font-style:italic}.docs-hint code{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--accent);padding:1px 5px;font-size:11px}.library-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;display:grid}.library-card{background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-4);color:var(--text-1);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-standard), border-color var(--dur-fast) var(--ease-standard), transform var(--dur-med) var(--ease-overshoot), box-shadow var(--dur-med) var(--ease-standard);text-align:left;flex-direction:column;font-family:inherit;text-decoration:none;display:flex}.library-card:hover{background:var(--surface-3);border-color:var(--accent-dim);box-shadow:var(--shadow-2), 0 0 0 1px var(--accent-dim);transform:translateY(-3px)}.library-card--button{width:100%}.library-card--static{cursor:default}.library-card--static:hover{background:var(--surface-2);border-color:var(--border-subtle);box-shadow:none;transform:none}.library-card--coming-soon{opacity:.55;cursor:default}.library-card--coming-soon:hover{background:var(--surface-2);border-color:var(--border-subtle)}.library-card-title{color:var(--accent-text);font-family:var(--font-display);font-weight:var(--fw-bold);font-size:var(--fs-lg);margin-bottom:var(--space-1);letter-spacing:var(--tracking-wide)}.library-card-sub{margin:0 0 var(--space-2) 0;font-size:var(--fs-sm);color:var(--text-2);line-height:var(--lh-normal)}.library-card-stat{font-size:var(--fs-xs);color:var(--text-3);margin-top:auto;font-style:italic}.maps-toolbar{margin-bottom:var(--space-3);align-items:center;gap:8px;display:flex}.maps-toolbar .spacer{flex:1}.maps-cloud-status{font-size:var(--fs-xs);color:var(--text-3);margin-right:4px}.map-row-name{align-items:center;gap:8px;display:flex}.maps-intro{margin:0 0 var(--space-4) 0;font-size:var(--fs-sm);color:var(--text-2);line-height:var(--lh-normal);max-width:70ch}.maps-intro a{color:var(--accent-text)}.maps-empty{padding:var(--space-6);border:1px dashed var(--border-subtle);border-radius:var(--radius-lg);color:var(--text-2);text-align:center}.maps-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.map-row{justify-content:space-between;align-items:center;gap:var(--space-4);background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);display:flex}.map-row:hover{border-color:var(--border-strong)}.map-row-main{min-width:0}.map-row-name{font-family:var(--font-display);font-weight:var(--fw-bold);font-size:var(--fs-md);color:var(--text-1);letter-spacing:var(--tracking-wide)}.map-row-meta{font-size:var(--fs-xs);color:var(--text-3);flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px;display:flex}.map-row-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.profile-card{background:var(--surface-overlay);border:1px solid var(--border);border-radius:var(--radius-lg);max-width:480px;padding:16px 18px}.profile-card-row{grid-template-columns:100px 1fr;gap:12px;padding:6px 0;font-size:13px;display:grid}.profile-card-label{color:var(--text-3);letter-spacing:.04em;text-transform:uppercase;align-self:center;font-size:11px}.profile-card-value{color:var(--text-1);font-weight:500}.profile-card-actions{gap:8px;margin-top:12px;display:flex}.profile-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.profile-list-row{background:var(--surface-overlay);border:1px solid var(--border);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;padding:8px 12px;font-size:12px;display:flex}.profile-list-name{color:var(--text-1);font-weight:600}.profile-list-meta{color:var(--text-3);font-size:11px}.render3-preview{background:var(--surface-0);color:var(--text-1);flex-direction:column;display:flex;position:fixed;inset:0}.render3-preview-head{background:var(--surface-overlay);border-bottom:1px solid var(--border);align-items:baseline;gap:14px;padding:12px 18px;display:flex}.render3-preview-head h1{color:var(--accent);letter-spacing:.02em;margin:0;font-size:16px}.render3-preview-sub{color:var(--text-3);font-size:11px}.render3-preview-head .spacer{flex:1}.render3-preview-host{flex:1;position:relative;overflow:hidden}.render3-preview-host canvas{display:block}.render3-preview-foot{background:var(--surface-overlay);border-top:1px solid var(--border);color:var(--text-3);padding:8px 18px;font-size:11px}.render3-preview-error{color:#fa8;background:#2a1a18;border-bottom:1px solid #5a2a28;padding:18px;font-size:13px}.phase-banner-coach{color:#e8d27a;text-align:center;max-width:560px;margin-top:6px;font-size:12px;font-weight:400;line-height:1.45}.coach-tip-stack{flex-direction:column;gap:6px;margin-bottom:10px;display:flex}.coach-tip{background:var(--accent-bg);border:1px solid var(--accent-dim);border-left:3px solid var(--accent);border-radius:var(--radius-sm);padding:8px 26px 8px 10px;position:relative}.coach-tip--disabled{background:var(--color-warning-bg);border-color:var(--color-warning);border-left-color:var(--color-warning)}.coach-tip--disabled .coach-tip-title{color:var(--color-warning)}.coach-tip--phase-end{background:var(--tone-peril-bg);border-color:var(--tone-peril-dim);border-left-color:var(--tone-peril)}.coach-tip--phase-end .coach-tip-title{color:var(--tone-peril)}.coach-tip-dismiss{width:18px;height:18px;color:var(--text-3);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:0;font-size:14px;line-height:1;position:absolute;top:4px;right:4px}.coach-tip-dismiss:hover{color:var(--text-1);background:#444}.coach-tip-title{letter-spacing:.04em;text-transform:uppercase;color:#e8d27a;margin-bottom:4px;font-size:11px;font-weight:700}.coach-tip-body{color:#d4c79a;font-size:12px;line-height:1.5}.unit-hover-tip{pointer-events:none;z-index:150;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);min-width:140px;max-width:240px;color:var(--text-1);background:#0f0f0ff0;padding:5px 8px;font-size:10px;line-height:1.3;animation:.12s ease-out uht-in;position:fixed;transform:translate(-50%,-100%);box-shadow:0 3px 10px #0009}@keyframes uht-in{0%{opacity:0;transform:translate(-50%,calc(4px - 100%))}to{opacity:1;transform:translate(-50%,-100%)}}.unit-hover-tip--player1{border-left:3px solid #4a90e2}.unit-hover-tip--player2{border-left:3px solid #e24a4a}.uht-head{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:baseline;gap:6px;margin-bottom:3px;padding-bottom:3px;display:flex}.uht-name{color:#fff;letter-spacing:.2px;font-size:11px;font-weight:700}.uht-owner{color:var(--text-2);border-radius:var(--radius-md);background:#ffffff0f;padding:0 5px;font-size:9px}.unit-hover-tip--player1 .uht-owner{color:var(--player1-text)}.unit-hover-tip--player2 .uht-owner{color:var(--player2-text)}.uht-stats{flex-wrap:wrap;gap:6px;display:flex}.uht-stat{color:var(--text-3);font-size:10px}.uht-stat b{color:#fff;font-weight:600}.uht-living{color:var(--text-3);margin-left:auto}.uht-living b{color:var(--accent)}.reserves-list{flex-direction:column;gap:4px;margin-bottom:8px;display:flex}.reserves-row{border:1px solid #d4af3740;border-left:3px solid var(--faction-accent);border-radius:var(--radius-sm);color:var(--text-1);cursor:pointer;text-align:left;background:#d4af370f;justify-content:space-between;align-items:center;gap:8px;padding:6px 10px;font-size:12px;transition:background 80ms,border-color 80ms;display:flex}.reserves-row:hover{background:#d4af371f}.reserves-row--selected{background:var(--faction-accent-bg);border-color:var(--faction-accent);box-shadow:0 0 8px var(--faction-accent-dim)}.reserves-name{color:#fff;font-weight:600}.reserves-hint{color:var(--faction-accent);font-size:10px;font-style:italic}.ds-reserve-toggle{color:var(--text-3);cursor:pointer;border-radius:var(--radius-lg);border:1px solid var(--border-subtle);-webkit-user-select:none;user-select:none;align-items:center;gap:4px;padding:2px 6px;font-size:10px;display:inline-flex}.ds-reserve-toggle:hover{color:var(--text-1);border-color:var(--border-strong)}.ds-reserve-toggle.on{border-color:var(--faction-accent);color:var(--faction-accent);background:#d4af371f}.ds-reserve-toggle input[type=checkbox]{width:10px;height:10px;accent-color:var(--faction-accent);margin:0}.ds-picked{background:var(--surface-3);border:1px solid var(--border-subtle);width:100%;color:var(--text-1);border-radius:var(--radius-sm);align-items:center;gap:6px;padding:6px 8px;display:flex}.ds-picked .ds-pick-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.ds-picked .ds-pick-pts{color:var(--text-3);white-space:nowrap;font-size:11px}.ds-picked .ds-remove{color:var(--text-3);cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:14px;line-height:1}.ds-picked .ds-remove:hover{color:var(--color-danger)}.camera-controls{z-index:20;border:1px solid var(--border);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);-webkit-user-select:none;user-select:none;background:#111111d1;flex-direction:column;gap:6px;padding:8px;display:flex;position:absolute;bottom:12px;right:12px}.camera-controls-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.camera-controls-title{text-transform:uppercase;letter-spacing:.5px;color:var(--text-3);font-size:11px}.camera-controls-hide{color:var(--text-3);cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:16px;line-height:1}.camera-controls-hide:hover{color:var(--text-1)}.camera-controls-row{justify-content:center;gap:4px;display:flex}.camera-controls-dpad{grid-template-columns:repeat(3,1fr);justify-items:center;gap:4px;display:grid}.camera-ctrl-btn{background:var(--surface-3);width:38px;height:40px;color:var(--text-1);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:15px;line-height:1;transition:background .1s;display:flex}.camera-ctrl-btn:hover{background:var(--surface-4)}.camera-ctrl-btn:active{background:var(--color-info);color:#fff}.camera-ctrl-glyph{line-height:1}.camera-ctrl-key{font-family:var(--font-mono);letter-spacing:.02em;color:var(--text-3);font-size:8px;font-weight:600;line-height:1}.camera-ctrl-btn:hover .camera-ctrl-key{color:var(--text-2)}.camera-ctrl-btn:active .camera-ctrl-key{color:#fff}.camera-ctrl-reset{background:var(--surface-3)}.camera-controls-show{z-index:20;width:36px;height:36px;color:var(--text-1);border:1px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#111111d1;font-size:18px;position:absolute;bottom:12px;right:12px}.camera-controls-show:hover{color:#fff;border-color:var(--player1)}.shooting-targets{z-index:18;border:1px solid var(--border);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#111111e0;flex-direction:column;width:248px;max-height:calc(100% - 96px);display:flex;position:absolute;top:64px;left:12px;overflow:hidden}.shooting-targets-head{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:baseline;gap:8px;padding:8px 10px;display:flex}.shooting-targets-title{color:var(--text-1);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;overflow:hidden}.shooting-targets-sub{color:var(--text-3);white-space:nowrap;font-size:11px}.shooting-targets-list{flex-direction:column;display:flex;overflow-y:auto}.shooting-target-row{border:none;border-bottom:1px solid var(--border-subtle);text-align:left;cursor:pointer;color:var(--text-1);background:0 0;grid-template-columns:auto minmax(0,1fr) auto auto;grid-template-areas:"los name dist dmg""notes notes notes notes";align-items:center;gap:2px 7px;padding:6px 10px;transition:background .1s;display:grid}.shooting-target-row:hover:not(:disabled){background:#4a90e224}.shooting-target-row--active{background:#4a90e242}.shooting-target-row--disabled{cursor:default;opacity:.8}.shooting-target-row--disabled .shooting-target-name{color:var(--text-2)}.shooting-target-los{grid-area:los}.shooting-target-name{text-overflow:ellipsis;white-space:nowrap;grid-area:name;min-width:0;font-size:12px;font-weight:500;overflow:hidden}.shooting-target-dist{color:var(--text-2);font-variant-numeric:tabular-nums;grid-area:dist;font-size:11px}.shooting-target-dmg{color:#8fc8ff;font-variant-numeric:tabular-nums;grid-area:dmg;font-size:11px;font-weight:600}.shooting-target-notes{color:var(--text-2);grid-area:notes;font-size:10.5px;line-height:1.3}.admin-portal{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-1);flex-direction:column;width:min(720px,92vw);max-height:90vh;padding:16px;display:flex}.admin-portal .modal-header h2{align-items:center;gap:10px;display:flex}.admin-pending-badge{color:#1a1a1a;border-radius:var(--radius-lg);background:#e8c84a;padding:2px 9px;font-size:11px;font-weight:600}.admin-error{border-radius:var(--radius-md);color:#e8a0a0;background:#c75c5c26;border:1px solid #c75c5c;margin:8px 0;padding:8px 10px;font-size:13px}.admin-empty{text-align:center;color:var(--text-3);padding:24px;font-size:14px}.admin-user-list{flex-direction:column;max-height:56vh;display:flex;overflow-y:auto}.admin-user-row{border-bottom:1px solid #242424;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:10px 8px;display:grid}.admin-user-id{flex-direction:column;gap:2px;min-width:0;display:flex}.admin-user-name{color:var(--text-1);align-items:center;gap:8px;font-size:14px;font-weight:500;display:flex}.admin-self-tag,.admin-role-tag{text-transform:uppercase;letter-spacing:.4px;border-radius:var(--radius-lg);padding:1px 6px;font-size:10px}.admin-self-tag{color:#8fc8ff;background:#2a3a4a}.admin-role-tag{color:#c89fff;background:#3a2a4a}.admin-user-email{color:var(--text-3);text-overflow:ellipsis;font-size:12px;overflow:hidden}.admin-status{text-transform:uppercase;letter-spacing:.4px;border-radius:var(--radius-lg);white-space:nowrap;padding:3px 10px;font-size:11px;font-weight:600}.admin-status--approved{color:#6cd36c;background:#6cd36c29}.admin-status--pending{color:#e8c84a;background:#e8c84a29}.admin-status--rejected{color:#d98080;background:#c75c5c29}.admin-user-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.admin-user-actions .tool-btn{padding:4px 10px;font-size:12px}.admin-approve{color:#9ad99a!important;border-color:#4a7a4a!important}.admin-reject{color:#d99a9a!important;border-color:#7a4a4a!important}.admin-user-actions .tool-btn:disabled{opacity:.4;cursor:default}.admin-footnote{color:var(--text-3);margin:12px 4px 0;font-size:12px;line-height:1.5}.bs-list{gap:var(--space-2,8px);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.bs-row{align-items:center;gap:var(--space-3,12px);padding:var(--space-2,8px) var(--space-3,12px);background:var(--surface-2,#1c1c1f);border:1px solid var(--border-subtle,#232327);border-radius:var(--radius-md,6px);display:flex}.bs-unit{flex:1;font-weight:600}.bs-roll{color:var(--text-2,#aaa);font-variant-numeric:tabular-nums;font-size:.85rem}.bs-note{margin:var(--space-3,12px) 0 0;color:var(--text-2,#aaa);font-size:.8rem;line-height:1.4}.dock-unit-chip{color:var(--faction-accent,#c6a86a);white-space:nowrap;padding-right:4px;font-size:12px;font-weight:700}.dock-attack-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}.dock-target-chip{border-radius:var(--radius-sm);white-space:nowrap;padding:4px 8px;font-size:12px}.dock-target-chip.is-set{color:#bff0c8;background:#4caf5024;border:1px solid #4caf5066}.dock-target-chip.is-empty{color:#d8c089;background:#e6b53c1a;border:1px dashed #e6b53c66}.dock-fire-btn{appearance:none;cursor:pointer;font:inherit;border-radius:var(--radius-md);color:#ffd690;white-space:nowrap;background:#5a3e1e;border:1px solid #8a5e2e;padding:9px 16px;font-size:13px;font-weight:700;transition:background .12s,box-shadow .12s,transform 80ms}.dock-fire-btn:hover:not(:disabled){background:#7a5424;box-shadow:0 0 12px #8a5e2e99}.dock-fire-btn:active:not(:disabled){transform:translateY(1px)}.dock-fire-btn:disabled{opacity:.4;cursor:not-allowed}.dock-fire-btn--fight{color:#f0c0f0;background:#4a2a4a;border-color:#6a3e6a}.dock-fire-btn--fight:hover:not(:disabled){background:#5a345a;box-shadow:0 0 12px #6a3e6a99}.dock-fire-btn--charge{color:#ffb0b0;background:#5a1e1e;border-color:#8a2e2e}.dock-fire-btn--charge:hover:not(:disabled){background:#7a2424;box-shadow:0 0 12px #8a2e2e99}.dock-pact{color:#ffb0c8;background:#3a1622;border-color:#8a2e4e}.dock-pact:hover:not(:disabled){background:#521f30}.dock-pact-active{color:#ff9ab8;white-space:nowrap;font-size:12px;font-weight:600}.dock-spot{color:#a8e6f0;background:#16323a;border-color:#2e7d8a}.dock-spot:hover:not(:disabled){background:#1f4a52}.secondaries-panel{border:1px solid var(--border-subtle,#232327);border-left:3px solid var(--faction-accent,#c6a86a);border-radius:var(--radius-md,6px);background:var(--surface-2,#1c1c1f);margin:0 0 12px;padding:8px 10px}.secondaries-panel .sec-head{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.secondaries-panel .sec-title{letter-spacing:.06em;text-transform:uppercase;color:var(--text-3,#888);font-size:.72rem;font-weight:700}.secondaries-panel .sec-mode{border-radius:var(--radius-pill);padding:1px 7px;font-size:.68rem;font-weight:700}.secondaries-panel .sec-mode--tactical{color:#9cc4ee;background:#3a6ea533}.secondaries-panel .sec-mode--fixed{color:#d8c089;background:#c6a86a2e}.secondaries-panel .sec-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.secondaries-panel .sec-row{align-items:center;gap:8px;display:flex}.secondaries-panel .sec-name{color:var(--text-1,#eee);flex:1;font-size:.82rem}.secondaries-panel .sec-redraw{appearance:none;cursor:pointer;font:inherit;border-radius:var(--radius-sm);color:#ffd690;white-space:nowrap;background:#3a2a14;border:1px solid #5a3e1e;padding:2px 8px;font-size:.7rem;font-weight:700}.secondaries-panel .sec-redraw:hover:not(:disabled){background:#5a3e1e}.secondaries-panel .sec-redraw:disabled{opacity:.35;cursor:not-allowed}.secondaries-panel .sec-foot{color:var(--text-3,#888);margin-top:6px;font-size:.7rem}.board-host,.board-host canvas{touch-action:none;overscroll-behavior:none}@media (width<=760px){.topbar{flex-wrap:wrap;row-gap:4px}.top-score-strip{font-size:.72rem}.ability-dock{gap:4px}}.app--focus{grid-template-columns:0 1fr 0}.app--focus .sidebar,.app--focus .combat-rail,.app--focus .top-score-strip{display:none}.ab-focus-toggle.is-on{background:var(--faction-accent,#c6a86a);color:#161310;border-color:var(--faction-accent,#c6a86a)}.ab-breadcrumb .ab-crumb:not(.ab-crumb--active){opacity:.5}.secondaries-panel .primary-mission{margin-bottom:12px}.secondaries-panel .primary-mission-row{align-items:center;gap:8px;display:flex}.secondaries-panel .primary-mission-name{color:var(--text-1,#eee);flex:1;font-size:.86rem;font-weight:700}.secondaries-panel .primary-mission-summary{color:var(--text-3,#999);margin-top:3px;font-size:.72rem;line-height:1.35}.secondaries-panel .primary-mission-projection{color:var(--text-2,#bbb);margin-top:4px;font-size:.74rem}.secondaries-panel .primary-mission-projection b{color:var(--faction-accent,#c6a86a)}.mission-info{line-height:0;display:inline-flex}.mission-info-icon{border-radius:var(--radius-pill);cursor:help;width:15px;height:15px;color:var(--faction-accent,#c6a86a);opacity:.8;border:1px solid;justify-content:center;align-items:center;font:italic 700 10px/1 Georgia,Times New Roman,serif;display:inline-flex}.mission-info-icon:hover{opacity:1}.mission-tip{text-align:left;flex-direction:column;gap:5px;max-width:320px;display:flex}.mission-tip b{color:#fff}.mission-tip em{color:#cbb884;font-style:italic}.top-score-strip .tss-mission{cursor:help;gap:5px}.top-score-strip .tss-mission-name{color:var(--text-1,#eee);font-weight:700}.top-score-strip .tss-mission-info{border-radius:var(--radius-pill);width:14px;height:14px;color:var(--faction-accent,#c6a86a);opacity:.85;border:1px solid;justify-content:center;align-items:center;font:italic 700 9px/1 Georgia,Times New Roman,serif;display:inline-flex}@media (width<=1024px){.top-score-strip{flex-wrap:wrap;gap:6px}.sidebar{font-size:.95em}}@media (width<=480px){.topbar{gap:4px}.action-bar{flex-wrap:wrap;row-gap:4px}.ab-breadcrumb .ab-crumb:not(.ab-crumb--active){display:none}.top-score-strip{font-size:.66rem}}@media (pointer:coarse){.ab-action-btn,.ab-next-phase,.sec-redraw,.tab-btn{min-height:40px;padding-top:8px;padding-bottom:8px}.mission-info-icon,.tss-mission-info{width:22px;height:22px;font-size:13px}.mission-info{margin:-6px;padding:6px}}@media (width<=1024px){#root{height:auto}.app:not(.app--rails-overlay),.app--strip:not(.app--rails-overlay),.app--compact:not(.app--rails-overlay){grid-template:"top""board"62vh"side""combat"/1fr;width:100%;height:auto;min-height:100vh}.app>*{min-width:0}.topbar{flex-wrap:wrap;row-gap:4px;height:auto;min-height:44px}.sidebar,.combat-rail{border-left:none;border-top:1px solid var(--border);min-height:0;overflow:visible}.app--focus{grid-template:"top""board"1fr/1fr;height:100vh}.app--focus .sidebar,.app--focus .combat-rail{display:none}.board-area{min-height:62vh}}body[data-compact=true]{--appbar-h:54px;overflow-x:hidden}body[data-compact=true] .topbar{display:none}body[data-compact=true] .app--combat-bar .combat-rail{bottom:calc(var(--appbar-h) + env(safe-area-inset-bottom,0px))}body[data-compact=true] .board-area{padding-bottom:calc(var(--appbar-h) + env(safe-area-inset-bottom,0px))}body[data-compact=true] .sidebar{padding-bottom:calc(var(--appbar-h) + env(safe-area-inset-bottom,0px));box-sizing:border-box}body[data-compact=true] .top-score-strip{scrollbar-width:none;flex-wrap:nowrap;justify-content:flex-start;gap:10px;padding:4px 10px;font-size:.66rem;overflow-x:auto}body[data-compact=true] .top-score-strip::-webkit-scrollbar{display:none}body[data-compact=true] .top-score-strip>*{flex:none}body[data-compact=true] .tss-objectives{gap:3px;margin-left:2px;padding-left:8px}body[data-compact=true] .action-bar{gap:8px;padding:5px 10px}body[data-compact=true] .ab-phase-hint,body[data-compact=true] .ab-focus-toggle{display:none}body[data-compact=true] .reserves-drawer{min-width:0;max-width:62vw;top:8px;right:8px}body[data-compact=true] .shooting-targets{width:58vw;max-width:240px;max-height:42vh;top:8px;left:8px}body[data-compact=true] .attack-reroll-banner,body[data-compact=true] .overwatch-banner,body[data-compact=true] .save-reroll-banner{border-radius:var(--radius-xl);z-index:360;padding:10px 14px;font-size:12px;left:8px;right:8px;transform:none;box-shadow:0 6px 22px #0009}body[data-compact=true] .ab-kbd{display:none}.hint--row{align-items:center;gap:6px;display:flex}.kbd-chip{font-size:10px;font-family:var(--font-mono);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-1);color:var(--text-2);padding:1px 4px}.wt-hotkey{margin:0 5px 0 0}.combat-rail__fire .ab-action-btn{width:100%;margin-bottom:6px}.combat-rail__fire .ab-action-btn:last-child{margin-bottom:0}.ds-meta--pact{color:#c98bff}.library-card:before{content:var(--faction-glyph);height:40px;color:var(--accent);opacity:.8;margin:calc(-1 * var(--space-4)) calc(-1 * var(--space-4)) var(--space-3);background:linear-gradient(120deg, var(--accent-bg), transparent 65%), linear-gradient(180deg, var(--surface-3), var(--surface-2));border-bottom:1px solid var(--border-subtle);padding-left:12px;font-size:26px;line-height:40px;display:block}.csm-error{margin-top:0}.csm-empty{opacity:.7}.cloud-saves-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.csm-row{border:1px solid var(--border);border-radius:var(--radius-lg);justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;display:flex}.csm-row-main{min-width:0}.csm-row-title{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.csm-row-meta{color:var(--text-2);font-size:12px;font-family:var(--font-mono)}.csm-row-actions{flex-shrink:0;gap:6px;display:flex}.sui-wtable{margin-top:6px}.sui-wtable .weapon-thead,.sui-wtable .weapon-row{grid-template-columns:minmax(0,1fr) repeat(6,minmax(21px,auto))}.sui-wtable .weapon-thead .wt-head-name{grid-column:1/2}.sui-wtable .wt-keywords{grid-column:1/-1}.weapon-row--static{cursor:default}.mode-picker-option--instant{border-color:var(--accent-dim);background:linear-gradient(120deg, var(--accent-bg), var(--surface-2) 60%)}.mode-picker-option--instant .mode-picker-name{color:var(--accent-text)}.tss-odds-bar{border-radius:var(--radius-pill);border:1px solid var(--border);background:linear-gradient(90deg,#e24a4a,#8b1a1a);width:110px;height:8px;display:inline-flex;overflow:hidden}.tss-odds-p1{height:100%;transition:width var(--dur-slow) var(--ease-out);background:linear-gradient(90deg,#2d6cb3,#4a90e2)}.ab-smart-next{background:var(--faction-accent-bg);border-color:var(--faction-accent-dim);color:var(--faction-text)}.ab-smart-next:hover:not(:disabled){background:var(--faction-accent-bg);border-color:var(--faction-accent);box-shadow:0 0 10px -2px var(--faction-accent-dim)}.combat-rail .shooting-targets,body[data-compact=true] .combat-rail .shooting-targets{-webkit-backdrop-filter:none;backdrop-filter:none;width:auto;max-width:none;max-height:300px;box-shadow:none;background:0 0;border:none;margin-bottom:6px;padding:0;position:static}.combat-rail .shooting-target-row{border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:var(--surface-2);transition:transform var(--dur-fast) var(--ease-overshoot), border-color var(--dur-fast) var(--ease-standard), box-shadow var(--dur-fast) var(--ease-standard);margin-bottom:6px}.combat-rail .shooting-target-row:hover:not(:disabled){border-color:var(--accent-dim);box-shadow:var(--shadow-1);transform:translateY(-1px)}.combat-rail .shooting-target-row--active{border-color:var(--player2);box-shadow:inset 3px 0 0 var(--player2);background:#e24a4a0f}.shooting-target-los{font-family:var(--font-mono);letter-spacing:.05em;border-radius:var(--radius-pill);padding:1px 6px;font-size:9px}.los-visible .shooting-target-los{background:var(--color-success-bg);color:var(--color-success)}.los-cover .shooting-target-los{background:var(--color-warning-bg);color:var(--color-warning)}.los-blocked .shooting-target-los{background:var(--color-danger-bg);color:var(--color-danger)}.warroom-card{text-align:left;max-width:560px}.warroom-card .empty-state-title,.warroom-card .empty-state-sub{text-align:center}.warroom-grid{grid-template-columns:1fr 1fr;gap:10px;margin:14px 0 4px;display:grid}.wr-tile{text-align:left;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-lg);color:var(--text-1);cursor:pointer;transition:transform var(--dur-med) var(--ease-overshoot), border-color var(--dur-fast) var(--ease-standard), box-shadow var(--dur-med) var(--ease-standard);flex-direction:column;gap:3px;padding:12px 14px;font-family:inherit;text-decoration:none;display:flex}.wr-tile:hover{border-color:var(--accent-dim);box-shadow:var(--shadow-2), 0 0 0 1px var(--accent-dim);transform:translateY(-2px)}.wr-tile--instant{border-color:var(--accent-dim);background:linear-gradient(120deg, var(--accent-bg), var(--surface-2) 60%)}.wr-tile-name{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:7px;font-size:14px;font-weight:600;display:inline-flex}.wr-tile--instant .wr-tile-name{color:var(--accent-text)}.wr-tile-desc{color:var(--text-3);font-size:11.5px}.wr-recent{border-top:1px solid var(--border-subtle);margin-top:12px;padding-top:10px}.wr-recent-title{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);margin-bottom:6px;font-size:10px}.wr-recent-row{color:var(--text-2);justify-content:space-between;padding:3px 0;font-size:12.5px;display:flex}.wr-result{font-family:var(--font-mono);font-size:11.5px}.wr-result--w{color:var(--color-success)}.wr-result--l{color:var(--color-danger)}.wr-result--d{color:var(--text-3)}.dice-overlay .dice-tray-row{opacity:0;animation:dice-beat-in .45s var(--ease-out) forwards}.dice-overlay .dice-tray-row:nth-child(2){animation-delay:.35s}.dice-overlay .dice-tray-row:nth-child(3){animation-delay:.7s}.dice-overlay .dice-tray-row:nth-child(n+4){animation-delay:1.05s}@keyframes dice-beat-in{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.codex-bar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;display:flex}.codex-search{max-width:320px}.codex-filter{font-family:var(--font-mono);border-radius:var(--radius-pill);background:var(--surface-2);border:1px solid var(--border);color:var(--text-2);cursor:pointer;transition:color var(--dur-fast), border-color var(--dur-fast), background var(--dur-fast);align-items:center;gap:6px;padding:6px 12px;font-size:11px;display:inline-flex}.codex-filter:hover{color:var(--text-1);border-color:var(--border-strong)}.codex-filter--on{background:var(--accent-bg);border-color:var(--accent-dim);color:var(--accent-text)}.codex-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px;display:grid}.codex-card{text-align:left;background:linear-gradient(180deg, var(--surface-2), var(--surface-1));border:1px solid var(--border);border-radius:var(--radius-lg);color:var(--text-1);cursor:pointer;transition:transform var(--dur-med) var(--ease-overshoot), box-shadow var(--dur-med), border-color var(--dur-fast);flex-direction:column;gap:5px;padding:11px 13px;font-family:inherit;display:flex}.codex-card:hover{border-color:var(--accent-dim);box-shadow:var(--shadow-2), 0 0 0 1px var(--accent-dim);transform:translateY(-2px)}.codex-card-head{color:var(--accent-text);align-items:center;gap:7px;display:flex}.codex-card-name{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.02em;color:var(--text-1);flex:1;min-width:0;font-size:13.5px}.codex-card-pts{font-family:var(--font-mono);color:var(--accent-text);border:1px solid var(--accent-dim);border-radius:var(--radius-pill);white-space:nowrap;padding:1px 7px;font-size:10px}.codex-card-stats{font-family:var(--font-mono);color:var(--text-3);font-size:10.5px}.settings-pref-row{align-items:center;gap:12px;margin-top:10px;display:flex}.settings-pref-label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--text-2);min-width:76px}.tss-odds{cursor:pointer;font:inherit;color:inherit;background:0 0;border:none;align-items:center;gap:6px;padding:0;display:flex}.odds-pop{min-width:240px}.odds-pop-head{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.08em;color:var(--accent-text);margin-bottom:2px;font-size:13px}.odds-pop-sub{color:var(--text-3);margin-bottom:8px;font-size:11px}.odds-pop-row{color:var(--text-2);justify-content:space-between;gap:14px;padding:2px 0;font-size:12px;display:flex}.odds-pop-row span:last-child{font-family:var(--font-mono);font-size:11.5px}.odds-pos{color:var(--player1)}.odds-neg{color:var(--player2)}.wr-tile--continue{background:linear-gradient(120deg, var(--color-success-bg), var(--surface-2) 60%);border-color:#3ad17a73}.wr-tile--continue .wr-tile-name{color:var(--color-success)}.codex-card-head .unit-portrait{flex:none}.codex-3d{height:220px;margin-bottom:var(--space-3);border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:var(--surface-0);overflow:hidden}.codex-3d>*{width:100%;height:100%}.dice-overlay .dice-tray-step{color:var(--text-2)}.dice-overlay .dice-tray-summary{color:var(--text-1)}.crumbs{font-size:12px;line-height:1.4}.crumbs-list{flex-wrap:wrap;align-items:center;gap:6px;margin:0;padding:0;list-style:none;display:flex}.crumb-item{align-items:center;gap:6px;display:inline-flex}.crumb-link{color:var(--text-3);text-decoration:none}.crumb-link:hover{color:var(--accent);text-decoration:underline}.crumb-current{color:var(--accent);font-weight:600}.crumb-sep{color:var(--text-disabled);-webkit-user-select:none;user-select:none}.page-header{background:var(--surface-1);border-bottom:1px solid var(--border);padding:12px 22px}.page-header-toprow{justify-content:space-between;align-items:center;gap:12px;display:flex}.page-header-titlerow{align-items:baseline;gap:14px;margin-top:8px;display:flex}.page-header-titles{flex-wrap:wrap;align-items:baseline;gap:14px;min-width:0;display:flex}.page-header-title{color:var(--accent);letter-spacing:.02em;margin:0;font-size:18px}.page-header-sub{color:var(--text-3);font-size:12px}.page-header-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.page-crumbs-bar{background:var(--surface-2);justify-content:space-between;align-items:center;gap:12px;padding:6px 16px;display:flex}.topbar .user-avatar{margin-left:auto}.settings-drawer-more{color:var(--accent);font-size:13px;font-weight:600;text-decoration:none;display:inline-block}.settings-drawer-more:hover{text-decoration:underline}.settings-drawer-sub{flex-direction:column;gap:8px;display:flex}.settings-drawer-sublabel{color:var(--text-2);font-size:12px;font-weight:600}.abil-panel{gap:var(--space-2,8px);flex-direction:column;display:flex}.abil-row{border:1px solid var(--border-subtle,#2a2a2a);border-left:3px solid var(--border,#3a3a3a);border-radius:var(--radius-md,6px);background:var(--surface-2,#1d1d1d);padding:var(--space-2,8px)}.abil-row--auto{border-left-color:var(--color-success,#4caf50)}.abil-row--passive{border-left-color:var(--color-info,#4a9eff)}.abil-row--available{border-left-color:var(--faction-accent,#c9a227)}.abil-row--locked{border-left-color:var(--border-strong,#4a4a4a);opacity:.72}.abil-row--narrative{border-left-color:var(--color-warning,#e0a800)}.abil-head{align-items:center;gap:var(--space-2,8px);flex-wrap:wrap;display:flex}.abil-name{font-weight:600;font-size:var(--fs-sm,12px);color:var(--text-1,#e8e8e8)}.abil-timing{font-size:var(--fs-xs,11px);color:var(--text-3,#8a8a8a);white-space:nowrap;margin-left:auto}.abil-activate{border:1px solid var(--faction-accent,#c9a227);background:var(--faction-accent-bg,#c9a22726);color:var(--faction-accent,#c9a227);font-size:var(--fs-xs,11px);border-radius:var(--radius-sm,4px);cursor:pointer;white-space:nowrap;padding:1px 8px;font-weight:600}.abil-activate:hover{background:var(--faction-accent,#c9a227);color:#111}.abil-effect{margin-top:var(--space-1,4px);font-size:var(--fs-xs,11px);color:var(--text-2,#b8b8b8);line-height:1.4}.abil-reason{margin-top:var(--space-1,4px);font-size:var(--fs-xs,11px);color:var(--color-warning,#e0a800)}.board-ctx{z-index:1200;background:var(--glass-bg);min-width:200px;max-width:244px;max-height:360px;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(1.2);backdrop-filter:blur(var(--glass-blur)) saturate(1.2);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-3), inset 0 1px 0 var(--glass-highlight);color:var(--text-1);-webkit-user-select:none;user-select:none;padding:6px;font-size:13px;position:fixed;overflow-y:auto}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.board-ctx{background:var(--surface-overlay)}}.board-ctx__head{border-bottom:1px solid #2c2c30;align-items:center;gap:8px;margin-bottom:4px;padding:4px 6px 8px;display:flex}.board-ctx__name{white-space:nowrap;text-overflow:ellipsis;flex:1;font-weight:700;overflow:hidden}.board-ctx__owner{background:#ffffff14;border-radius:3px;padding:1px 6px;font-size:10px;font-weight:700}.board-ctx__owner--player1{color:#74a8e2}.board-ctx__owner--player2{color:#e27474}.board-ctx__item{text-align:left;width:100%;color:inherit;cursor:pointer;background:0 0;border:none;border-radius:5px;padding:7px 8px;font-size:13px;display:block}.board-ctx__item:hover{background:#2e2e34}.board-ctx__item--mission{color:var(--accent,#e8b341);font-weight:600}.board-ctx__section{letter-spacing:.08em;text-transform:uppercase;color:#8a8a92;padding:6px 8px 2px;font-size:10px}.board-ctx__hint{color:#9a9a9a;padding:6px 8px;font-size:12px;font-style:italic}.board-ctx__abilities{max-height:220px;overflow-y:auto}.unit-portrait{border-radius:var(--radius-md);background:var(--surface-1);border:1px solid var(--border);flex:none;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.unit-portrait img{object-fit:cover;width:100%;height:100%;display:block}.unit-portrait--fallback{background:var(--surface-3)}.unit-portrait--fallback[data-owner=player1]{background:#4a90e22e;border-color:#4a90e266}.unit-portrait--fallback[data-owner=player2]{background:#e255632e;border-color:#e2556366}.unit-portrait-initials{font-family:var(--font-display);font-weight:var(--fw-bold);font-size:var(--fs-sm);letter-spacing:var(--tracking-wide);color:var(--text-2)}.wt{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.wt-pips{flex-wrap:wrap;gap:3px;display:flex}.wt-pip{background:var(--surface-3);border:1px solid var(--border-subtle);width:14px;height:8px;transition:background var(--dur-med) var(--ease-standard), opacity var(--dur-med) var(--ease-standard);border-radius:3px}.wt-pip--full{border-color:var(--color-success);background:linear-gradient(#4ad388,#2f9e5f);box-shadow:0 0 6px #3ad17a59}.wt-pip--hurt{background:var(--color-warning);border-color:var(--color-warning)}.wt-pip--dead{background:var(--surface-2);border-color:var(--border-subtle);opacity:.5}.wt-bar{border-radius:var(--radius-pill);background:var(--surface-1);border:1px solid var(--border-subtle);flex:1;min-width:90px;height:9px;overflow:hidden}.wt-fill{height:100%;transition:width var(--dur-fast) var(--ease-standard)}.wt-fill--ok{background:linear-gradient(#4ad388,#2f9e5f);box-shadow:0 0 8px #3ad17a4d}.wt-fill--low{background:var(--color-warning)}.wt-fill--dead{background:var(--color-danger)}.wt-num{font-size:var(--fs-xs);color:var(--text-3);font-variant-numeric:tabular-nums;white-space:nowrap}.wt{position:relative}.wt-flyoff{pointer-events:none;z-index:3;position:absolute;top:0;left:30%}.wt-chip-fly{width:12px;height:7px;animation:wt-chip-fly .85s var(--ease-out) forwards;background:linear-gradient(#e25563,#a13a44);border-radius:3px;position:absolute;box-shadow:0 0 6px #e2556380}@keyframes wt-chip-fly{0%{opacity:1;transform:translate(0)rotate(0)scale(1)}to{opacity:0;transform:translate(var(--fly-dx,20px), -34px) rotate(140deg) scale(.7)}}@media (prefers-reduced-motion:reduce){.wt-chip-fly{opacity:0;animation:none}}.sui{gap:var(--space-3);margin-top:var(--space-2);flex-direction:column;display:flex}.sui-section{gap:var(--space-1);flex-direction:column;display:flex}.sui-label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-2);cursor:default}.sui-dim{color:var(--text-3);font-weight:var(--fw-regular);text-transform:none;letter-spacing:0}.sui-pips{flex-wrap:wrap;gap:3px;display:flex}.sui-pip{border:1px solid var(--border-strong);width:12px;height:12px;transition:background var(--dur-med) var(--ease-standard), border-color var(--dur-med) var(--ease-standard), opacity var(--dur-med) var(--ease-standard);border-radius:3px}.sui-pip--full{border-color:var(--color-success);background:linear-gradient(#4ad388,#2f9e5f);box-shadow:0 0 6px #3ad17a4d}.sui-pip--hurt{background:var(--color-warning);border-color:var(--color-warning)}.sui-pip--dead{opacity:.5;background:0 0;border-style:dashed}.sui-chips{gap:var(--space-1);flex-wrap:wrap;display:flex}.sui-details{border-top:1px solid var(--border-subtle);padding-top:var(--space-2)}.sui-details>summary{-webkit-user-select:none;user-select:none;list-style:none}.sui-details>summary::-webkit-details-marker{display:none}.sui-details>summary:before{content:"▸ ";color:var(--text-3)}.sui-details[open]>summary:before{content:"▾ "}.sui-wgroup{font-size:var(--fs-xs);color:var(--text-3);letter-spacing:var(--tracking-wide);text-transform:uppercase;margin:var(--space-2) 0 2px}.sui-weapon{background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);border-left:2px solid var(--faction-accent-dim);padding:var(--space-1) var(--space-2);margin-bottom:4px}.sui-weapon-name{font-size:var(--fs-sm);color:var(--text-1);font-weight:var(--fw-medium)}.sui-weapon-stats{font-size:var(--fs-xs);color:var(--text-2);font-family:var(--font-mono)}.sui-weapon-kw{font-size:var(--fs-xs);margin-top:2px}.sui-ability{font-size:var(--fs-sm);color:var(--text-1);cursor:help;padding:2px 0}.sui-ability-name{border-bottom:1px dotted var(--border-strong)}.sui-keywords{font-size:var(--fs-xs);color:var(--text-3);margin-top:var(--space-1);line-height:var(--lh-normal)}.go-headline{font-family:var(--font-display);font-size:var(--fs-2xl);font-weight:var(--fw-bold);letter-spacing:var(--tracking-wide);text-align:center;margin-bottom:var(--space-4);padding:var(--space-2) var(--space-4);color:var(--text-1);background:var(--faction-grad);border-bottom:1px solid var(--faction-accent-dim);text-transform:uppercase}.go-headline:before{content:"++ ";color:var(--faction-accent);opacity:.7}.go-headline:after{content:" ++";color:var(--faction-accent);opacity:.7}.go-headline--player1{color:var(--color-info)}.go-headline--player2{color:var(--color-danger)}.go-headline--draw{color:var(--text-2)}.go-grid{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.go-side{align-items:center;gap:var(--space-1);background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-4);flex-direction:column;display:flex}.go-side--win{border-color:var(--accent-dim);box-shadow:var(--shadow-inset-accent)}.go-side-head{align-items:center;gap:var(--space-2);display:flex}.go-side-name{font-size:var(--fs-sm);font-weight:var(--fw-bold);letter-spacing:var(--tracking-wider);text-transform:uppercase}.go-side-name--p1{color:var(--color-info)}.go-side-name--p2{color:var(--color-danger)}.go-vp{font-family:var(--font-console);font-size:var(--fs-3xl);font-weight:var(--fw-bold);color:var(--text-1);line-height:1}.go-vp-label{font-size:var(--fs-xs);color:var(--text-3);letter-spacing:var(--tracking-wide);text-transform:uppercase;margin-bottom:var(--space-2)}.go-stats{flex-direction:column;gap:2px;width:100%;display:flex}.go-stat{font-size:var(--fs-sm);color:var(--text-2);justify-content:space-between;display:flex}.go-stat b{color:var(--text-1)}.go-report{gap:var(--space-4);flex-direction:column;display:flex}.go-report-prose p{margin:0 0 var(--space-2);font-size:var(--fs-sm);color:var(--text-2);line-height:1.5}.go-report-prose p:last-child{margin-bottom:0}.go-report-highlights h4{margin:0 0 var(--space-1);font-size:var(--fs-xs);color:var(--text-3);letter-spacing:var(--tracking-wide);text-transform:uppercase}.go-report-highlights ul{padding-left:var(--space-4);margin:0}.go-report-highlights li{font-size:var(--fs-sm);color:var(--text-2);line-height:1.5}.go-report-stats{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.go-report-side{background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}@keyframes go-headline-in{0%{opacity:0;transform:translateY(-10px)scale(.92)}60%{opacity:1;transform:translateY(0)scale(1.04)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes go-side-in{0%{opacity:0;transform:translateY(14px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes go-vp-in{0%{opacity:0;transform:scale(.6)}70%{opacity:1;transform:scale(1.12)}to{opacity:1;transform:scale(1)}}.go-headline{animation:.52s cubic-bezier(.16,1,.3,1) both go-headline-in}.go-side{animation:.42s cubic-bezier(.16,1,.3,1) both go-side-in}.go-side:first-child{animation-delay:.15s}.go-side:nth-child(2){animation-delay:.29s}.go-vp{animation:.6s cubic-bezier(.16,1,.3,1) .38s both go-vp-in}@media (prefers-reduced-motion:reduce){.go-headline,.go-side,.go-vp{animation:none}}.go-graph{margin:0 0 var(--space-4)}.go-graph svg{width:100%;height:94px;display:block}.go-graph-legend{font-family:var(--font-mono);color:var(--text-3);gap:14px;margin-top:2px;font-size:10px;display:flex}.go-graph-p1{color:var(--player1)}.go-graph-p2{color:var(--player2)}.go-honours{margin:0 0 var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3)}.go-honour{font-size:var(--fs-sm);justify-content:space-between;gap:12px;padding:4px 0;display:flex}.go-honour span:first-child{color:var(--text-3);text-transform:uppercase;font-size:var(--fs-xs);letter-spacing:var(--tracking-wide);padding-top:2px}.go-honour span:last-child{color:var(--accent-text);font-family:var(--font-mono);font-size:var(--fs-sm);text-align:right}.go-graph-odds{color:var(--accent-text)}.replay-scrubber{left:50%;bottom:var(--space-4);z-index:60;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--surface-2,#14161ceb);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-2,0 6px 24px #00000073);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);max-width:calc(100vw - 2 * var(--space-4));display:flex;position:fixed;transform:translate(-50%)}.replay-scrubber-head{align-items:center;gap:var(--space-2);min-width:0;display:flex}.replay-scrubber-badge{font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--accent,#d9a441);border:1px solid var(--accent-dim,#d9a44166);border-radius:var(--radius-sm);padding:1px var(--space-2)}.replay-scrubber-pos{font-size:var(--fs-sm);color:var(--text-1);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.replay-scrubber-vp{font-size:var(--fs-xs);color:var(--text-3);white-space:nowrap}.replay-scrubber-controls{align-items:center;gap:var(--space-2);display:flex}.replay-scrubber-range{width:clamp(120px,28vw,320px);accent-color:var(--accent,#d9a441)}.replay-scrubber-count{font-size:var(--fs-xs);color:var(--text-3);white-space:nowrap}.replay-scrubber-empty{font-size:var(--fs-sm);color:var(--text-3)}@media (width<=720px){.replay-scrubber{left:var(--space-2);right:var(--space-2);flex-wrap:wrap;justify-content:center;max-width:none;transform:none}.replay-scrubber-range{width:100%}}.unit-preview3d{gap:var(--space-1);flex-direction:column;display:flex}.unit-preview3d-canvas{aspect-ratio:1;border-radius:var(--radius-lg);border:1px solid var(--border-subtle);background:radial-gradient(120% 90% at 50% 18%, #ffe4ba1a, transparent 60%), radial-gradient(140% 120% at 50% 110%, #141822e6, var(--surface-1) 70%);cursor:grab;width:100%;position:relative;overflow:hidden}.unit-preview3d-canvas:active{cursor:grabbing}.unit-preview3d-canvas canvas{display:block;width:100%!important;height:100%!important}.unit-preview3d-caption{font-size:var(--fs-xs);color:var(--text-3);text-align:center;letter-spacing:var(--tracking-wide)}.unit-preview3d-caption[data-status=model]{color:var(--accent-text)}.dsp{gap:var(--space-3);margin-top:var(--space-2);flex-direction:column;display:flex}.dsp-stats{gap:var(--space-1);flex-wrap:wrap;display:flex}.dsp-stat{min-width:34px;padding:var(--space-1) var(--space-2);background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);flex-direction:column;justify-content:center;align-items:center;display:flex}.dsp-stat-v{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-1);font-family:var(--font-mono);line-height:1.1}.dsp-stat-k{letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-3);margin-top:1px;font-size:9px}.dsp-stat--accent{border-color:var(--faction-accent)}.dsp-stat--accent .dsp-stat-v{color:var(--faction-accent)}.dsp-section{gap:var(--space-1);border-top:1px solid var(--border-subtle);padding-top:var(--space-2);flex-direction:column;display:flex}.dsp-label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-2)}.dsp-dim{color:var(--text-3);font-weight:var(--fw-regular)}.dsp-line{font-size:var(--fs-sm);color:var(--text-1);line-height:var(--lh-normal)}.dsp-wgroup{font-size:var(--fs-xs);color:var(--text-3);letter-spacing:var(--tracking-wide);text-transform:uppercase;margin:var(--space-1) 0 2px}.dsp-weapon{background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);margin-bottom:4px}.dsp-weapon-name{font-size:var(--fs-sm);color:var(--text-1);font-weight:var(--fw-medium)}.dsp-weapon-stats{font-size:var(--fs-xs);color:var(--text-2);font-family:var(--font-mono)}.dsp-weapon-kw{font-size:var(--fs-xs);margin-top:2px}.dsp-ability{padding:2px 0}.dsp-ability-name{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-1)}.dsp-tag{text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--text-3);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);margin-left:6px;padding:0 4px;font-size:9px}.dsp-ability-text{font-size:var(--fs-xs);color:var(--text-2);line-height:var(--lh-normal);margin-top:1px}.dsp-keywords{font-size:var(--fs-xs);color:var(--text-3);line-height:var(--lh-normal)}.as{gap:var(--space-2);margin:var(--space-2) 0;padding-top:var(--space-2);border-top:1px solid var(--border-subtle);flex-direction:column;display:flex}.as-label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-2)}.as-tiles{gap:var(--space-1);grid-template-columns:repeat(auto-fit,minmax(52px,1fr));display:grid}.as-tile{padding:var(--space-1) 2px;background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);cursor:default;flex-direction:column;align-items:center;display:flex}.as-tile-v{font-size:var(--fs-base);font-weight:var(--fw-semibold);color:var(--text-1);font-family:var(--font-mono);line-height:1.1}.as-tile-k{letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-3);margin-top:2px;font-size:9px}.as-row{flex-direction:column;gap:3px;display:flex}.as-sub{font-size:var(--fs-xs);color:var(--text-3);letter-spacing:var(--tracking-wide);text-transform:uppercase;cursor:default}.as-bars{flex-direction:column;gap:3px;display:flex}.as-bar-row{align-items:center;gap:var(--space-2);grid-template-columns:68px 1fr auto;display:grid}.as-bar-label{font-size:var(--fs-xs);color:var(--text-2);white-space:nowrap}.as-bar{background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--radius-pill);height:8px;overflow:hidden}.as-bar-fill{background:var(--accent);border-radius:var(--radius-pill);min-width:2px;height:100%}.as-bar-fill--off{background:var(--color-danger)}.as-bar-val{font-size:var(--fs-xs);color:var(--text-3);font-family:var(--font-mono);white-space:nowrap;text-align:right;min-width:56px}.as-flags{flex-direction:column;gap:2px;margin-top:2px;display:flex}.as-flag{font-size:var(--fs-xs);line-height:1.4}.as-flag--good{color:var(--color-success)}.as-flag--warn{color:var(--color-warning)}.dd-card{gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--surface-1);border:1px solid var(--border-subtle);border-left:3px solid var(--accent);border-radius:var(--radius-md);flex-direction:column;display:flex}.dd-head{flex-direction:column;gap:2px;display:flex}.dd-eyebrow{font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-3)}.dd-name{font-size:var(--fs-md);font-weight:var(--fw-bold);color:var(--accent-text);letter-spacing:var(--tracking-wide);margin:0}.dd-head--toggle{align-items:center;gap:0 var(--space-3,12px);cursor:pointer;text-align:left;width:100%;color:inherit;font:inherit;background:0 0;border:0;grid-template-columns:1fr auto;padding:0;display:grid}.dd-head--toggle .dd-eyebrow{grid-area:1/1}.dd-head--toggle .dd-name{grid-area:2/1}.dd-card-chevron{color:var(--text-3);font-size:var(--fs-md);transition:transform .18s var(--ease-standard,ease);grid-area:1/2/3/2;align-self:center}.dd-card-chevron--open{transform:rotate(90deg)}.dd-rule{font-size:var(--fs-sm);line-height:var(--lh-normal);color:var(--text-2);margin:0}.dd-restrictions{padding:var(--space-2) var(--space-3);background:var(--color-warning-bg);border:1px solid var(--color-warning);border-radius:var(--radius-sm);font-size:var(--fs-xs);color:var(--text-2);flex-direction:column;gap:2px;margin:0;list-style:none;display:flex}.dd-restrict-label{font-weight:var(--fw-semibold);color:var(--color-warning)}.dd-toggle{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) 0 0;border:none;border-top:1px solid var(--border-subtle);margin-top:var(--space-1);cursor:pointer;font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-1);text-align:left;background:0 0;display:flex}.dd-toggle:hover{color:var(--accent-text)}.dd-chevron{transition:transform var(--dur-fast) var(--ease-standard);color:var(--text-3);display:inline-block}.dd-chevron--open{transform:rotate(90deg)}.dd-counts{font-size:var(--fs-xs);font-weight:var(--fw-regular);color:var(--text-3);margin-left:auto}.dd-detail{gap:var(--space-3);flex-direction:column;display:flex}.dd-group{gap:var(--space-2);flex-direction:column;display:flex}.dd-group-title{font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-3);margin:0}.dd-list{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.dd-item{padding:var(--space-2) var(--space-3);background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-sm)}.dd-item-head{align-items:baseline;gap:var(--space-2);display:flex}.dd-item-name{font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-1)}.dd-item-cost{font-size:var(--fs-xs);font-weight:var(--fw-semibold);color:var(--accent-text);flex:none;margin-left:auto}.dd-item-meta{font-size:var(--fs-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-3);margin-top:2px}.dd-item-text{margin-top:var(--space-1);font-size:var(--fs-xs);line-height:var(--lh-normal);color:var(--text-2)}.rp-overlay{background:var(--scrim);z-index:var(--z-modal);padding:var(--space-4);animation:ui-fade-in var(--dur-med) var(--ease-out);place-items:center;display:grid;position:fixed;inset:0}.rp-modal{background:var(--surface-overlay);border:1px solid var(--border);border-radius:var(--radius-xl);width:min(1560px,96vw);height:min(1080px,94vh);box-shadow:var(--shadow-3);flex-direction:column;display:flex;overflow:hidden}.rp-head{gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border-subtle);flex-direction:column;display:flex}.rp-head-top{align-items:center;gap:var(--space-4);display:flex}.rp-head-titles{flex-direction:column;flex:1 1 0;gap:2px;min-width:0;display:flex}.rp-title{font-family:var(--font-display);font-size:var(--fs-2xl);font-weight:var(--fw-bold);letter-spacing:var(--tracking-wide);color:var(--text-1);margin:0;line-height:1}.rp-subtitle{font-size:var(--fs-sm);color:var(--text-2)}.rp-head-top-right{flex:1 1 0;justify-content:flex-end;display:flex}.rp-head-cancel{font-size:var(--fs-lg);padding:4px 11px;line-height:1}.rp-battlefield{font-size:var(--fs-sm);color:var(--accent-text);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wide);white-space:nowrap}.rp-setup-bar{align-items:center;gap:var(--space-3) var(--space-4);flex-wrap:wrap;display:flex}.rp-setup-divider{background:var(--border-subtle);align-self:stretch;width:1px;min-height:22px}.rp-legality-toggle{font-size:var(--fs-sm);color:var(--text-2);cursor:pointer}.rp-setup-bar .ui-field-label{font-size:var(--fs-xs);color:var(--text-3)}.rp-steps{align-items:center;gap:var(--space-2);flex:none;display:flex}.rp-step{align-items:center;gap:var(--space-2);font-size:var(--fs-sm);font-weight:var(--fw-semibold);color:var(--text-3);border-radius:var(--radius-pill);cursor:pointer;background:0 0;border:1px solid #0000;padding:4px 12px;display:inline-flex}.rp-step:disabled{cursor:default}.rp-step--done{color:var(--text-2)}.rp-step--active{color:var(--accent-text);background:var(--accent-bg);border-color:var(--accent-dim)}.rp-step-num{background:var(--surface-3);width:18px;height:18px;color:var(--text-2);border-radius:50%;justify-content:center;align-items:center;font-size:10px;display:inline-flex}.rp-step--active .rp-step-num{background:var(--accent);color:var(--text-on-accent)}.rp-step-sep{color:var(--text-3)}.rp-body{padding:var(--space-4) var(--space-5);gap:var(--space-3);flex-direction:column;flex:1;display:flex;overflow:auto}.rp-player{gap:var(--space-4);flex-direction:column;flex:1;min-height:0;display:flex}.rp-side-tone{font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:var(--tracking-wider);text-transform:uppercase}.rp-side-tone--p1{color:var(--color-info)}.rp-side-tone--p2{color:var(--color-danger)}.rp-identity-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end;display:grid}.rp-budget{flex-direction:column;gap:4px;display:flex}.rp-budget-bar{background:var(--surface-1);border-radius:var(--radius-pill);border:1px solid var(--border-subtle);height:8px;overflow:hidden}.rp-budget-fill{background:var(--accent);height:100%;transition:width var(--dur-med) var(--ease-standard)}.rp-budget-fill--over{background:var(--color-danger)}.rp-budget-label{font-size:var(--fs-sm);color:var(--text-2);justify-content:space-between;display:flex}.rp-budget-label .over{color:var(--color-danger);font-weight:var(--fw-semibold)}.rp-banner{align-items:center;gap:var(--space-2);font-size:var(--fs-sm);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);display:flex}.rp-banner--error{background:var(--color-danger-bg);border:1px solid var(--color-danger);color:var(--color-danger)}.rp-banner--warn{background:var(--color-warning-bg);border:1px solid var(--color-warning);color:var(--color-warning)}.rp-banner ul{margin:4px 0 0;padding-left:16px}.rp-banner li{align-items:center;gap:var(--space-2);display:flex}.rp-banner-text{flex:1}.rp-split{gap:var(--space-4);flex:1;grid-template-rows:minmax(0,1fr);grid-template-columns:1.25fr minmax(240px,300px) 1fr;min-height:0;display:grid;overflow:hidden}.rp-pane{flex-direction:column;min-height:0;display:flex}.rp-preview-pane{min-height:0}.rp-preview-body{gap:var(--space-3);background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);min-height:0;padding:var(--space-3);flex-direction:column;flex:1;display:flex;overflow:auto}.rp-preview-info{gap:var(--space-2);flex-direction:column;display:flex}.rp-preview-head{align-items:center;gap:var(--space-2);display:flex}.rp-preview-titles{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.rp-preview-name{font-size:var(--fs-base);font-weight:var(--fw-semibold);color:var(--text-1)}.rp-preview-pills{gap:var(--space-1);flex-wrap:wrap;display:flex}.rp-unit--preview{border-color:var(--accent-dim);background:var(--surface-3)}@media (width<=860px){.rp-split{grid-template-columns:1fr}.rp-pane-scroll{max-height:320px}.rp-preview-pane .unit-preview3d-canvas{max-width:300px}.rp-head-top{flex-wrap:wrap}.rp-steps{flex:100%;order:3;justify-content:center}}.rp-mobile-tabs{display:none}body[data-compact=true] .rp-mobile-tabs{gap:var(--space-1);padding:var(--space-2) 0;z-index:2;background:var(--surface-0,#0e0e0e);border-top:1px solid var(--border-subtle,#20252f);order:1;margin-top:auto;display:flex;position:sticky;top:auto;bottom:0}body[data-compact=true] .rp-overlay .dd-card{padding:var(--space-2) var(--space-3);margin-top:var(--space-2)}body[data-compact=true] .rp-review{grid-template-columns:1fr}body[data-compact=true] .rp-review-list{max-height:none}.rp-mtab{padding:var(--space-2) var(--space-1);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface-2);color:var(--text-2);font-size:var(--fs-md);font-weight:var(--fw-semibold);cursor:pointer;flex:1}.rp-mtab.on{border-color:var(--accent);color:var(--accent-text);background:var(--accent-bg)}body[data-compact=true] .rp-split{flex-direction:column;flex:none;height:min(60vh,480px);display:flex}body[data-compact=true] .rp-split[data-mobile-pane=browse]>:nth-child(2),body[data-compact=true] .rp-split[data-mobile-pane=browse]>:nth-child(3),body[data-compact=true] .rp-split[data-mobile-pane=preview]>:first-child,body[data-compact=true] .rp-split[data-mobile-pane=preview]>:nth-child(3),body[data-compact=true] .rp-split[data-mobile-pane=roster]>:first-child,body[data-compact=true] .rp-split[data-mobile-pane=roster]>:nth-child(2){display:none}body[data-compact=true] .rp-pane-scroll,body[data-compact=true] .rp-preview-body{max-height:none}body[data-compact=true] .rp-split>*{flex:auto;min-height:0}body[data-compact=true] .rp-head{padding:var(--space-3) var(--space-3) var(--space-2);gap:var(--space-2)}body[data-compact=true] .rp-setup-bar{gap:var(--space-2);padding-bottom:var(--space-1);scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}body[data-compact=true] .rp-setup-bar::-webkit-scrollbar{display:none}body[data-compact=true] .rp-setup-bar>*{flex:none}.rp-pane-head{justify-content:space-between;align-items:baseline;gap:var(--space-2);font-size:var(--fs-sm);font-weight:var(--fw-bold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-2);margin-bottom:var(--space-2);display:flex}.rp-pane-count{font-size:var(--fs-xs);color:var(--text-3);font-weight:var(--fw-regular);letter-spacing:0;text-transform:none}.rp-pane-scroll{background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);min-height:0;padding:var(--space-2);flex:1;overflow:auto}.rp-toolbar{gap:var(--space-2);margin-bottom:var(--space-2);flex-direction:column;display:flex}.rp-toolbar-row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.rp-chips,.rp-active-pills{gap:var(--space-1);flex-wrap:wrap;display:flex}.rp-group{margin-bottom:var(--space-3)}.rp-group-head{z-index:1;align-items:center;gap:var(--space-2);font-size:var(--fs-xs);font-weight:var(--fw-bold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-3);background:linear-gradient(var(--surface-1), var(--surface-1) 70%, transparent);padding:var(--space-2) var(--space-1) 4px;display:flex;position:sticky;top:-8px}.rp-group-head-count{color:var(--text-3);font-weight:var(--fw-regular)}.rp-group-head-pts{color:var(--text-3);font-weight:var(--fw-regular);margin-left:auto}.rp-unit{align-items:center;gap:var(--space-3);text-align:left;background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-md);width:100%;padding:var(--space-2) var(--space-3);cursor:pointer;transition:border-color var(--dur-fast), background var(--dur-fast);margin-bottom:4px;display:flex}.rp-unit:hover{border-color:var(--border-strong);background:var(--surface-3)}.rp-unit--maxed{opacity:.45;cursor:not-allowed}.rp-unit--maxed:hover{border-color:var(--border);background:0 0}.rp-unit:focus-visible{box-shadow:var(--focus-ring);outline:none}.rp-unit-main{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.rp-unit-name{font-size:var(--fs-base);color:var(--text-1);font-weight:var(--fw-medium)}.rp-unit-meta{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.rp-unit-stats{font-size:var(--fs-xs);color:var(--text-3);font-family:var(--font-mono)}.rp-unit-pts{font-size:var(--fs-sm);color:var(--accent-text);font-weight:var(--fw-semibold);white-space:nowrap}.rp-unit-add{color:var(--text-3);font-size:var(--fs-lg);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;flex:none;padding:2px 7px;line-height:1}.rp-unit-add:hover:not(:disabled){color:var(--accent);background:var(--surface-1)}.rp-unit-add:focus-visible{box-shadow:var(--focus-ring);outline:none}.rp-unit-add:disabled{cursor:default;color:var(--color-success,#6c6)}.rp-unit:hover .rp-unit-add:not(:disabled){color:var(--accent)}.rp-pick{gap:var(--space-1);background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);cursor:pointer;transition:border-color var(--dur-fast), background var(--dur-fast);flex-direction:column;margin-bottom:4px;display:flex}.rp-pick:hover{border-color:var(--border-strong);background:var(--surface-3)}.rp-pick:focus-visible{box-shadow:var(--focus-ring);outline:none}.rp-pick--selected{border-color:var(--accent);background:var(--accent-bg)}.rp-pick-top{align-items:center;gap:var(--space-2);display:flex}.rp-pick-summary{flex-wrap:wrap;gap:4px;padding-left:36px;display:flex}.rp-pick-chip{font-size:var(--fs-2xs,.65rem);color:var(--text-2);background:var(--surface-3);border:1px solid var(--border-subtle);border-radius:var(--radius-pill);white-space:nowrap;padding:1px 8px}.rp-pick-chip--muted{color:var(--text-3);background:0 0;border-color:#0000;font-style:italic}.rp-pick-name{min-width:0;font-size:var(--fs-sm);color:var(--text-1);flex:1}.rp-pick-pts{font-size:var(--fs-sm);color:var(--text-2);white-space:nowrap}.rp-reserve{font-size:var(--fs-xs);color:var(--text-3);cursor:pointer;align-items:center;gap:4px;display:inline-flex}.rp-reserve.on{color:var(--accent-text)}.rp-pick-remove{width:22px;height:22px;color:var(--text-3);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:1px solid #0000;flex:none;justify-content:center;align-items:center;font-size:16px;line-height:1;display:inline-flex}.rp-pick-remove:hover{background:var(--color-danger-bg);color:var(--color-danger)}.rp-pick-dupe{width:22px;height:22px;color:var(--text-3);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:1px solid #0000;flex:none;justify-content:center;align-items:center;font-size:13px;line-height:1;display:inline-flex}.rp-pick-dupe:hover:not(:disabled){background:var(--surface-2);color:var(--accent-text)}.rp-pick-dupe:disabled{opacity:.35;cursor:default}.rp-empty{color:var(--text-3);font-size:var(--fs-sm);padding:var(--space-4);text-align:center;font-style:italic}.rp-cloud{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.rp-cloud .hint{font-size:var(--fs-xs);color:var(--text-3)}.rp-review{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.rp-review-side{gap:var(--space-3);flex-direction:column;display:flex}.rp-review-head{justify-content:space-between;align-items:center;display:flex}.rp-review-stat{font-size:var(--fs-sm);color:var(--text-2);justify-content:space-between;display:flex}.rp-review-stat b{color:var(--text-1)}.rp-review-list{flex-direction:column;gap:2px;max-height:280px;display:flex;overflow:auto}.rp-review-unit{font-size:var(--fs-xs);color:var(--text-2);border-bottom:1px solid var(--border-subtle);justify-content:space-between;padding:2px 0;display:flex}.rp-foot{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-top:1px solid var(--border-subtle);display:flex}.rp-foot-spacer{flex:1}.rp-foot-hint{font-size:var(--fs-xs);color:var(--text-3)}.rp-wargear{margin-top:var(--space-1);padding:var(--space-2);background:var(--surface-1);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);font-size:var(--fs-xs)}.rp-wargear-title{color:var(--text-3);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase;align-items:center;gap:4px;margin-bottom:4px;display:flex}.rp-info-icon{cursor:help;color:var(--faction-accent,#c9a227);font-size:var(--fs-sm);line-height:1}.rp-enh-info{gap:var(--space-2,8px);text-align:left;flex-direction:column;max-width:280px;display:flex}.rp-enh-info-item{flex-direction:column;gap:2px;display:flex}.rp-enh-info-head{justify-content:space-between;gap:var(--space-2,8px);display:flex}.rp-enh-info-cost{color:var(--faction-accent,#c9a227);white-space:nowrap}.rp-enh-info-effect{color:var(--text-2);font-size:var(--fs-xs);line-height:1.35}.rp-enh-effect{color:var(--text-2);font-size:var(--fs-xs);margin-top:4px;line-height:1.35}.rp-wg-toggle{cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:6px;width:100%;padding:0;display:flex}.rp-wg-caret{color:var(--text-3);flex:none;width:10px;font-size:.7rem}.rp-wg-toggle-title{margin-bottom:0}.rp-wg-summary{color:var(--text-3);font-size:var(--fs-2xs,.65rem)}.rp-wg-summary.is-changed{color:var(--faction-accent,#c9a227)}.rp-wg-warn{color:var(--danger,#d9534f);margin-left:auto}.rp-wg-body{gap:var(--space-2);flex-direction:column;margin-top:7px;display:flex}.rp-wg-opt{flex-direction:column;gap:4px;display:flex}.rp-wg-opt-desc{color:var(--text-2)}.rp-wg-arrow{color:var(--faction-accent,#c9a227);font-weight:var(--fw-semibold)}.rp-wg-cap{color:var(--text-3);opacity:.75}.rp-wg-pills{flex-wrap:wrap;gap:4px;display:flex}.rp-wg-pill{font-size:var(--fs-xs);background:var(--surface-3);color:var(--text-2);border:1px solid var(--border);cursor:pointer;border-radius:999px;align-items:center;gap:3px;padding:2px 9px;line-height:1.4;display:inline-flex}.rp-wg-pill:hover{border-color:var(--border-strong,#555);color:var(--text-1)}.rp-wg-pill.is-on{background:var(--faction-accent,#c9a227);color:var(--text-on-accent,#1a1a1a);border-color:var(--faction-accent,#c9a227);font-weight:var(--fw-semibold)}.rp-wg-counter{cursor:default;padding:1px 3px}.rp-wg-counter-label{padding:0 2px}.rp-wg-step{color:inherit;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:1px 5px;font-size:.9rem;line-height:1}.rp-wg-step:hover:not(:disabled){background:#ffffff24}.rp-wg-step:disabled{opacity:.3;cursor:not-allowed}.rp-wg-stats{flex-direction:column;gap:1px;margin:1px 0 2px 2px;display:flex}.rp-wg-stat{font-size:var(--fs-xs);flex-wrap:wrap;align-items:baseline;gap:0 8px;display:flex}.rp-wg-stat-name{color:var(--text-2);min-width:132px}.rp-wg-stat.is-current .rp-wg-stat-name,.rp-wg-stat.is-current .rp-wg-stat-line{color:var(--text-3);opacity:.85}.rp-wg-stat-tag{text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);border:1px solid var(--border);vertical-align:middle;border-radius:4px;margin-right:5px;padding:0 4px;font-size:.82em;display:inline-block}.rp-wg-stat-line{color:var(--text-3);font-variant-numeric:tabular-nums}.rp-wargear-loadout{border-top:1px dashed var(--border-subtle);color:var(--text-2);flex-direction:column;gap:2px;margin-top:6px;padding-top:6px;line-height:1.35;display:flex}.rp-wg-loadout-label{color:var(--text-3);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase;font-size:var(--fs-2xs,.65rem)}.rp-wg-loadout-row b{color:var(--text-1)}.rp-wargear-errors{color:var(--danger,#d9534f);font-size:var(--fs-xs);margin-top:6px;line-height:1.35}.rp-secondaries{margin-top:var(--space-4,16px);gap:var(--space-2,8px);flex-direction:column;display:flex}.rp-sec-title{color:var(--text-1,#eee);margin:0 0 2px;font-size:.95rem}.rp-sec{border:1px solid var(--border-subtle,#232327);border-left:3px solid var(--border,#34343a);border-radius:var(--radius-md,6px);background:var(--surface-2,#1c1c1f);padding:var(--space-2,8px) var(--space-3,12px)}.rp-sec--p1{border-left-color:#3a6ea5}.rp-sec--p2{border-left-color:#b5563a}.rp-sec-head{align-items:center;gap:var(--space-3,12px);display:flex}.rp-sec-label{flex:1;font-size:.85rem;font-weight:700}.rp-sec-modes{border:1px solid var(--border,#34343a);border-radius:var(--radius-pill,999px);display:inline-flex;overflow:hidden}.rp-sec-mode{appearance:none;cursor:pointer;font:inherit;color:var(--text-2,#aaa);background:0 0;border:none;padding:4px 12px;font-size:.78rem}.rp-sec-mode.on{background:var(--accent,#c6a86a);color:var(--text-on-accent);font-weight:700}.rp-sec-chips{margin-top:var(--space-2,8px);flex-wrap:wrap;align-items:center;gap:6px;display:flex}.rp-sec-chip{appearance:none;cursor:pointer;font:inherit;border-radius:var(--radius-pill,999px);border:1px solid var(--border,#34343a);background:var(--surface-3,#242428);color:var(--text-2,#bbb);padding:4px 10px;font-size:.78rem}.rp-sec-chip:hover:not(:disabled){border-color:var(--accent-dim,#8a7a4a);color:var(--text-1,#eee)}.rp-sec-chip.on{background:var(--accent,#c6a86a);border-color:var(--accent,#c6a86a);color:var(--text-on-accent);font-weight:700}.rp-sec-chip:disabled{opacity:.4;cursor:not-allowed}.rp-sec-hint{color:var(--text-3,#888);margin-top:6px;font-size:.75rem}.rp-sec-chips .rp-sec-hint{margin-top:0;margin-left:4px}.rp-edit{gap:var(--space-3);flex-direction:column;display:flex}.rp-edit-section{gap:var(--space-1);flex-direction:column;display:flex}.rp-edit-section-title{font-size:var(--fs-2xs,.65rem);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-3)}.rp-edit-reserve{font-size:var(--fs-sm)}.rp-edit-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.rp-edit-remove{color:var(--color-danger);align-self:flex-start}.rp-edit-remove:hover{background:var(--color-danger-bg)}.rp-wargear--bare{background:0 0;border:none;margin-top:0;padding:0}.rp-enh-cards{flex-direction:column;gap:4px;display:flex}.rp-enh-card{text-align:left;cursor:pointer;background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-md);width:100%;padding:var(--space-2) var(--space-3);color:var(--text-2);transition:border-color var(--dur-fast), background var(--dur-fast);flex-direction:column;gap:2px;display:flex}.rp-enh-card:hover:not(:disabled){border-color:var(--border-strong);background:var(--surface-3)}.rp-enh-card:focus-visible{box-shadow:var(--focus-ring);outline:none}.rp-enh-card.is-on{border-color:var(--accent);background:var(--accent-bg)}.rp-enh-card.is-disabled{opacity:.45;cursor:not-allowed}.rp-enh-card-head{justify-content:space-between;align-items:baseline;gap:var(--space-2);display:flex}.rp-enh-card-name{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-1)}.rp-enh-card-cost{font-size:var(--fs-xs);color:var(--accent-text);white-space:nowrap}.rp-enh-card-effect{font-size:var(--fs-xs);color:var(--text-2);line-height:1.35}.rp-preview-hint{font-size:var(--fs-xs);color:var(--text-3);font-style:italic}.rp-drones{gap:var(--space-2);flex-direction:column;display:flex}.rp-drones-cap{font-size:var(--fs-xs);color:var(--text-2)}.rp-drone-choices{gap:var(--space-1);flex-wrap:wrap;display:flex}.bss-overlay{z-index:60;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#02060ec7;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.bss-card{background:var(--surface-1,#11151c);border:1px solid var(--border,#2a2f3a);border-radius:var(--radius-lg,14px);width:min(960px,100%);max-height:min(720px,92vh);box-shadow:var(--shadow-3,0 24px 64px #00000080);flex-direction:column;display:flex;overflow:hidden}.bss-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3,12px);padding:var(--space-4,18px) var(--space-5,22px);border-bottom:1px solid var(--border-subtle,#20252f);display:flex}.bss-title{font-family:var(--font-display,inherit);font-size:var(--fs-xl,22px);color:var(--text-1,#eef2f7);margin:0}.bss-subtitle{font-size:var(--fs-sm,13px);color:var(--text-3,#8b94a3);margin-top:2px}.bss-battlefield{font-size:var(--fs-sm,13px);color:var(--accent-text,#9cc2ff)}.bss-body{gap:var(--space-4,18px);min-height:0;padding:var(--space-4,18px) var(--space-5,22px);flex:1;grid-template-columns:320px 1fr;display:grid;overflow:hidden}.bss-mission-list{gap:var(--space-2,8px);flex-direction:column;padding-right:4px;display:flex;overflow-y:auto}.bss-mission{text-align:left;padding:var(--space-3,12px);background:var(--surface-2,#161b23);border:1px solid var(--border-subtle,#20252f);border-radius:var(--radius-md,10px);cursor:pointer;transition:border-color var(--dur-fast,.12s), background var(--dur-fast,.12s), transform var(--dur-med,.2s) var(--ease-overshoot,ease-out), box-shadow var(--dur-med,.2s);flex-direction:column;gap:3px;display:flex}.bss-mission:hover{border-color:var(--accent-dim,#39414f);background:var(--surface-3,#1c222c);box-shadow:var(--shadow-2), 0 0 0 1px var(--accent-dim,transparent);transform:translateY(-2px)}.bss-mission--active{border-color:var(--accent,#6aa3ff);background:var(--surface-3,#1c222c);box-shadow:0 0 0 1px var(--accent,#6aa3ff) inset}.bss-thumb{width:100%;height:58px;margin-bottom:var(--space-2,8px);border-radius:var(--radius-sm,4px);border:1px solid var(--border-subtle,#20252f);background:repeating-linear-gradient(0deg,#ffffff09 0 1px,#0000 1px 12px),repeating-linear-gradient(90deg,#ffffff09 0 1px,#0000 1px 12px),linear-gradient(#171a12,#101207);display:block}body[data-theme=light] .bss-thumb{background:repeating-linear-gradient(0deg,#3a301c14 0 1px,#0000 1px 12px),repeating-linear-gradient(90deg,#3a301c14 0 1px,#0000 1px 12px),linear-gradient(#e4dcc6,#d8cfb4)}.bss-thumb-zone{stroke-width:1.5px;stroke-dasharray:4 3}.bss-thumb-zone--player1{fill:#4a90e22e;stroke:var(--player1,#4a90e2)}.bss-thumb-zone--player2{fill:#e24a4a2e;stroke:var(--player2,#e24a4a)}.bss-mission-name{font-family:var(--font-display,inherit);font-size:var(--fs-base,15px);font-weight:var(--fw-semibold,600);text-transform:uppercase;letter-spacing:.03em;color:var(--text-1,#eef2f7)}.bss-mission-summary{font-size:var(--fs-xs,12px);color:var(--text-3,#8b94a3)}.bss-detail{padding-right:4px;overflow-y:auto}.bss-detail-name{margin:0 0 var(--space-3,12px);font-family:var(--font-display,inherit);font-size:var(--fs-lg,18px);color:var(--text-1,#eef2f7)}.bss-detail-section{margin-bottom:var(--space-3,12px)}.bss-detail-label{font-size:var(--fs-xs,12px);text-transform:uppercase;letter-spacing:.04em;color:var(--accent-text,#9cc2ff);margin-bottom:4px;display:block}.bss-detail-text{font-size:var(--fs-sm,14px);color:var(--text-2,#c4ccd8);margin:0;line-height:1.55}.bss-foot{justify-content:space-between;align-items:center;gap:var(--space-4,18px);padding:var(--space-4,18px) var(--space-5,22px);border-top:1px solid var(--border-subtle,#20252f);flex-wrap:wrap;display:flex}.bss-foot-selects{gap:var(--space-4,18px);flex-wrap:wrap;display:flex}.bss-foot-actions{gap:var(--space-2,8px);margin-left:auto;display:flex}@media (width<=720px){.bss-body{grid-template-columns:1fr;overflow-y:auto}.bss-overlay{padding:0}.bss-card{box-sizing:border-box;width:100%;height:100dvh;max-height:100dvh;padding-bottom:calc(var(--appbar-h,0px) + env(safe-area-inset-bottom,0px));border:none;border-radius:0}.bss-head{padding-top:max(var(--space-4,18px), env(safe-area-inset-top))}.bss-foot{padding:var(--space-3,12px) var(--space-4,16px);gap:var(--space-2,8px)}.bss-mission{padding:var(--space-2,8px) var(--space-3,12px)}.bss-thumb{height:40px}.bss-mission-summary{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.bss-detail-name{font-size:var(--fs-base,15px);margin-bottom:var(--space-2,8px)}.bss-detail-text{font-size:var(--fs-sm,13px);line-height:1.45}.bss-foot-selects{gap:var(--space-2,8px);flex-wrap:wrap}}.phase-bar{background:var(--surface-1);-webkit-user-select:none;user-select:none;border-bottom:1px solid #2a2a2a;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;padding:4px 12px;display:flex}.phase-bar-turn{color:var(--text-2);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;font-size:11px;font-weight:700}.phase-bar-steps{gap:3px;display:flex}.phase-bar-step{text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);transition:color .12s var(--ease-out), background .12s var(--ease-out);border-radius:999px;align-items:center;gap:4px;padding:2px 9px;font-size:11px;display:inline-flex}.phase-bar-step--done{color:var(--text-2)}.phase-bar-step--current{color:#0e0e0e;background:var(--faction-accent,#d4af37);font-weight:700}.phase-bar-step--upcoming{color:#666}.phase-bar-ico{stroke-width:2.2px;opacity:.9;width:11px;height:11px}.mobile-appbar{--appbar-h:54px;z-index:340;justify-content:space-between;align-items:center;gap:var(--space-2);height:calc(var(--appbar-h) + env(safe-area-inset-bottom,0px));padding:0 var(--space-3);padding-bottom:env(safe-area-inset-bottom,0px);background:var(--surface-overlay,#14140f);border-top:1px solid var(--border);display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -6px 22px #00000073}.mab-view{border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;flex:none;display:flex;overflow:hidden}.mab-view-opt{background:var(--surface-2);color:var(--text-2);font-size:11px;font-weight:var(--fw-bold);letter-spacing:.04em;cursor:pointer;border:0;padding:2px 12px;line-height:1.5}.mab-view-opt:first-child{border-bottom:1px solid var(--border)}.mab-view-opt.is-active{background:var(--accent);color:var(--text-on-accent,#14140f)}.mab-item{min-width:0;height:44px;color:var(--text-2);font-size:12px;font-weight:var(--fw-semibold);border-radius:var(--radius-md);cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:1px;display:flex}.mab-item:active{background:var(--surface-2)}.mab-item.is-open{background:var(--surface-2);color:var(--text-1)}.mab-item.has-active{color:var(--accent-text)}.mab-item-icon{stroke-width:2px;width:16px;height:16px}.mab-item-label{letter-spacing:.04em;font-size:10px}.mab-item-caret{opacity:.65;width:10px;height:10px}.mab-account{flex:none;justify-content:center;align-items:center;display:flex}.mab-menu{flex-direction:column;gap:2px;min-width:190px;display:flex}.mab-menu-item{text-align:left;color:var(--text-1);font-size:var(--fs-md);font-weight:var(--fw-medium);border-radius:var(--radius-md);cursor:pointer;background:0 0;border:0;padding:11px 12px}.mab-menu-item:hover:not(:disabled),.mab-menu-item:focus-visible{background:var(--surface-2)}.mab-menu-item:disabled{opacity:.4;cursor:default}.mab-menu-item.is-active{color:var(--accent-text);background:var(--accent-bg)}.mab-menu-item--accent{color:var(--color-success,#6bd08a)}.mab-menu-item--danger{color:var(--color-danger,#ff7a7a)}.mab-next{border-radius:var(--radius-pill);border:1px solid var(--border-strong);background:var(--surface-3);min-width:0;height:38px;color:var(--text-1);font-weight:var(--fw-semibold);text-overflow:ellipsis;white-space:nowrap;flex:2 1 0;padding:0 12px;font-size:12px;overflow:hidden}.mab-next--todo{background:var(--accent-bg);border-color:var(--accent-dim);color:var(--accent-text)}.welcome-scrim{z-index:var(--z-modal,1000);padding:var(--space-4);background:var(--scrim,#0000009e);animation:welcome-fade .2s var(--ease-out) both;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.welcome-card{width:100%;max-width:440px;padding:var(--space-5);background:var(--surface-overlay,#18181b);border:1px solid var(--border-subtle,#2a2a2a);border-radius:var(--radius-xl,14px);box-shadow:var(--shadow-3);color:var(--text-1,#eee);animation:welcome-rise .28s var(--ease-overshoot,cubic-bezier(.16, 1, .3, 1)) both}.welcome-title{margin:0 0 var(--space-2);font-family:var(--font-display);font-size:var(--fs-2xl);color:var(--faction-accent,#d4af37)}.welcome-lede{margin:0 0 var(--space-3);font-size:var(--fs-sm);color:var(--text-2);line-height:1.5}.welcome-points{margin:0 0 var(--space-3);padding-left:var(--space-4);gap:var(--space-2);flex-direction:column;display:flex}.welcome-points li{font-size:var(--fs-sm);color:var(--text-2);line-height:1.45}.welcome-points b{color:var(--text-1)}.welcome-foot{margin:0 0 var(--space-4);font-size:var(--fs-xs);color:var(--text-3)}.welcome-actions{justify-content:flex-end;display:flex}@keyframes welcome-fade{0%{opacity:0}to{opacity:1}}@keyframes welcome-rise{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.welcome-scrim,.welcome-card{animation:none}}.auth-shell{color:var(--text-1);background:radial-gradient(circle at 20% 10%,#2a1a1a 0%,#0000 50%),radial-gradient(circle at 80% 90%,#1a1a2a 0%,#0000 50%),#0d0d0d;justify-content:center;align-items:center;font-family:system-ui,-apple-system,sans-serif;display:flex;position:fixed;inset:0}.auth-card{background:var(--surface-1);border:1px solid var(--border);border-radius:8px;width:100%;max-width:360px;padding:28px 28px 24px;box-shadow:0 8px 32px #00000080}.auth-title{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;color:var(--accent);margin:0 0 4px;font-size:24px;font-weight:600}.auth-sub{color:var(--text-2);margin:0 0 20px;font-size:13px}.auth-form{flex-direction:column;gap:12px;display:flex}.auth-field{color:var(--text-2);flex-direction:column;gap:4px;font-size:12px;display:flex}.auth-field input{background:var(--surface-0);border:1px solid var(--border);color:var(--text-1);border-radius:4px;outline:none;padding:8px 10px;font-size:14px}.auth-field input:focus{border-color:var(--accent)}.auth-btn{border:1px solid var(--border-strong);background:var(--surface-3);color:var(--text-1);cursor:pointer;border-radius:4px;margin-top:4px;padding:9px 12px;font-size:13px}.auth-btn:hover:not(:disabled){background:var(--surface-4)}.auth-btn.primary{background:var(--accent);color:var(--text-on-accent);border-color:var(--accent);font-weight:600}.auth-btn.primary:hover:not(:disabled){background:#e0bc4a}.auth-btn:disabled{opacity:.6;cursor:default}.auth-links{justify-content:space-between;margin-top:4px;display:flex}.auth-link{color:var(--text-2);cursor:pointer;background:0 0;border:none;padding:4px 0;font-size:12px}.auth-link:hover{color:var(--accent);text-decoration:underline}.auth-error{color:#f4b0b0;background:#2a1414;border:1px solid #5a2222;border-radius:4px;padding:8px 10px;font-size:12px}.auth-success{color:#b0f4c8;background:#14261a;border:1px solid #2a5a3a;border-radius:4px;padding:8px 10px;font-size:12px}.auth-hint{color:var(--text-3);font-size:11px}.user-avatar{border:1px solid var(--border);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);width:32px;height:32px;color:var(--text-1);cursor:pointer;background:#111111d9;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:border-color .12s,background .12s;display:inline-flex;position:relative}.user-avatar:hover,.user-avatar[data-state=open]{border-color:var(--accent);background:#282828eb}.user-avatar-initials{letter-spacing:.02em;font-size:12px;font-weight:700}.user-avatar--lg{cursor:default;-webkit-backdrop-filter:none;backdrop-filter:none;flex:none;width:40px;height:40px}.user-avatar--lg .user-avatar-initials{font-size:14px}.user-avatar-admin-dot{background:var(--accent);border:2px solid #111;border-radius:50%;width:9px;height:9px;position:absolute;top:-1px;right:-1px}.user-menu{flex-direction:column;min-width:210px;display:flex}.user-menu-head{align-items:center;gap:10px;padding:2px 2px 8px;display:flex}.user-menu-id{flex-direction:column;gap:2px;min-width:0;display:flex}.user-menu-name{color:var(--text-1);font-size:13px;font-weight:600}.user-menu-email{max-width:160px;color:var(--text-3);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.role-pill{background:var(--surface-4);color:var(--text-2);text-transform:uppercase;border-radius:8px;align-self:flex-start;margin-top:2px;padding:1px 6px;font-size:10px;font-weight:700}.role-pill--admin{background:var(--accent);color:var(--text-on-accent)}.user-menu-sep{background:var(--surface-3);height:1px;margin:4px -4px}.user-menu-item{text-align:left;width:100%;color:var(--text-1);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:7px 8px;font-size:12px;text-decoration:none;display:block}.user-menu-item:hover{background:var(--surface-3)}.user-menu-item--danger{color:#e0796f}.user-menu-item--danger:hover{background:#b43c3226}.approval-gate{z-index:9999;color:var(--text-1);text-align:center;background:#000;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.approval-gate-inner{flex-direction:column;gap:14px;max-width:420px;display:flex}.approval-gate-title{letter-spacing:.3px;margin:0;font-size:24px;font-weight:600}.approval-gate-body{color:var(--text-3);margin:0;font-size:14px;line-height:1.55}.approval-gate-email{color:#5f5f5f;font-variant:small-caps;letter-spacing:.5px;margin:0;font-size:12px}.approval-gate-signout{border:1px solid var(--border);color:var(--text-3);cursor:pointer;background:0 0;border-radius:6px;align-self:center;margin-top:18px;padding:7px 18px;font-size:13px;transition:color .12s,border-color .12s}.approval-gate-signout:hover{color:var(--text-1);border-color:#555}.auth-row{gap:12px;display:flex}.auth-row .auth-field{flex:1;min-width:0}.editor-page{background:var(--surface-1);height:100vh;color:var(--text-1);flex-direction:column;font-family:inherit;display:flex}.editor-topbar{background:var(--surface-2);border-bottom:1px solid var(--border);flex:none;align-items:center;gap:12px;padding:10px 16px;display:flex}.editor-topbar h1{color:var(--accent);margin:0;font-size:16px;font-weight:600}.editor-topbar .editor-mode{color:var(--text-3);margin-left:4px;font-size:13px}.editor-topbar .spacer{flex:1}.editor-topbar a,.editor-topbar button{color:var(--accent);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:4px;padding:6px 12px;font-size:13px;text-decoration:none}.editor-topbar button:disabled{opacity:.4;cursor:not-allowed}.editor-topbar button.primary{color:var(--text-on-accent);border-color:var(--accent);background:#d4af37;font-weight:600}.editor-topbar button.primary:disabled{color:var(--text-3);background:#5a4d20;border-color:#5a4d20}.editor-body{flex:1;grid-template-columns:minmax(0,1fr) 360px;display:grid;overflow:hidden}.editor-form{padding:16px 24px;overflow-y:auto}.editor-preview{background:#11141a;border-left:1px solid #2a3140;padding:16px;overflow-y:auto}.editor-section{border:1px solid var(--border);background:var(--surface-2);border-radius:6px;margin-bottom:16px;padding:12px 16px}.editor-section h2{text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin:0 0 12px;font-size:13px;font-weight:600}.editor-row{grid-template-columns:140px minmax(0,1fr);align-items:center;gap:12px;margin-bottom:8px;display:grid}.editor-row label{color:var(--text-2);font-size:13px}.editor-row input[type=text],.editor-row input[type=number],.editor-row select,.editor-row textarea{background:var(--surface-0);border:1px solid var(--border);color:var(--text-1);box-sizing:border-box;border-radius:4px;width:100%;padding:6px 8px;font-family:inherit;font-size:13px}.editor-row input[type=checkbox]{transform:scale(1.2)}.editor-row textarea{resize:vertical;min-height:60px}.editor-row .row-hint{color:var(--text-disabled);grid-column:2;margin-top:2px;font-size:11px}.editor-stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.editor-help-text{color:var(--text-3);margin:4px 0 12px;font-size:12px;line-height:1.5}.editor-help-text code{background:#1a1f2c;border-radius:3px;padding:1px 4px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px}.editor-help-text a{color:#6fa3e0}.editor-help-text.editor-error{color:#e07070}.editor-button-secondary{background:var(--surface-3);color:var(--text-1);border:1px solid var(--border-strong);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:4px;margin-right:12px;padding:6px 12px;font-size:12px;font-weight:600;transition:background 80ms;display:inline-block}.editor-button-secondary:hover{background:#354060}.editor-stat{flex-direction:column;gap:4px;display:flex}.editor-stat label{color:var(--text-2);letter-spacing:.04em;font-size:11px;font-weight:600}.editor-chip-input{background:var(--surface-0);border:1px solid var(--border);border-radius:4px;flex-wrap:wrap;align-items:center;gap:4px;min-height:30px;padding:4px;display:flex}.editor-chip{background:var(--surface-3);color:var(--text-1);border-radius:3px;align-items:center;gap:4px;padding:2px 6px;font-size:11px;display:inline-flex}.editor-chip button{color:var(--text-2);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;line-height:1}.editor-chip-input input{color:var(--text-1);background:0 0;border:0;outline:none;flex:1;min-width:80px;padding:2px 4px;font-size:12px}.editor-table{border-collapse:collapse;width:100%;font-size:12px}.editor-table th,.editor-table td{text-align:left;border-bottom:1px solid var(--border);padding:4px 6px}.editor-table th{text-transform:uppercase;color:var(--text-2);letter-spacing:.06em;font-size:10px;font-weight:600}.editor-table input[type=text],.editor-table input[type=number],.editor-table select{background:var(--surface-0);border:1px solid var(--border);color:var(--text-1);box-sizing:border-box;border-radius:3px;width:100%;padding:3px 5px;font-family:inherit;font-size:12px}.editor-table .col-num{width:60px}.editor-table .col-narrow{width:80px}.editor-table .col-actions{text-align:right;width:60px}.editor-row-actions button,.editor-add-row{background:var(--surface-3);color:var(--accent);cursor:pointer;border:0;border-radius:3px;padding:4px 10px;font-size:12px}.editor-add-row{margin-top:8px}.editor-remove-row{color:#c44;cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:14px}.editor-errors{background:#2a1f1f;border:1px solid #844;border-radius:4px;margin-top:8px;padding:8px 12px;font-size:12px;position:sticky;bottom:0}.editor-errors-title{color:#f88;margin-bottom:4px;font-weight:600}.editor-errors ul{color:#fcc;margin:0;padding-left:16px}.editor-preview-card{background:var(--surface-2);border:1px solid var(--border);border-radius:6px;padding:12px}.editor-preview-img{background:var(--surface-0);border:2px solid var(--accent);object-fit:cover;border-radius:50%;width:64px;height:64px;margin:0 auto 8px;display:block}.editor-preview-3d{width:100%;max-width:220px;margin:0 auto 10px}.editor-preview-name{color:var(--accent);text-align:center;margin-bottom:2px;font-size:14px;font-weight:600}.editor-preview-faction{color:var(--text-3);text-align:center;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;font-size:11px}.editor-preview-stats{text-align:center;grid-template-columns:repeat(4,1fr);gap:4px;margin-bottom:8px;font-size:11px;display:grid}.editor-preview-stat .lbl{color:var(--text-3);text-transform:uppercase;font-size:9px;display:block}.editor-preview-stat .val{color:var(--text-1);font-size:14px;font-weight:600;display:block}.editor-preview-section{border-top:1px solid #2a3140;margin-top:8px;padding-top:8px;font-size:11px}.editor-preview-section h4{color:var(--text-2);text-transform:uppercase;letter-spacing:.06em;margin:0 0 4px;font-size:10px}.editor-preview-weapon{background:var(--surface-0);border-radius:3px;margin-bottom:4px;padding:4px}.editor-preview-weapon-name{color:var(--text-1);font-size:11px;font-weight:600}.editor-preview-weapon-stats{color:var(--text-2);margin-top:2px;font-size:10px}.editor-preview-ability{border-bottom:1px dotted #2a3140;margin-bottom:6px;padding-bottom:4px}.editor-preview-ability:last-child{border-bottom:0}.editor-preview-ability-name{color:var(--accent);font-size:11px;font-weight:600}.editor-preview-ability-text{color:var(--text-1);margin-top:2px;font-size:10px}.editor-preview-keywords{color:var(--text-3);word-break:break-word;margin-top:4px;font-size:10px}.picker-page{background:var(--surface-1);height:100vh;color:var(--text-1);flex-direction:column;font-family:inherit;display:flex}.picker-body{flex:1;padding:24px;overflow-y:auto}.picker-section{margin-bottom:32px}.picker-section h2{color:var(--accent);text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px;font-size:14px}.picker-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.picker-card{background:var(--surface-2);border:1px solid var(--border);border-radius:6px;flex-direction:column;gap:6px;padding:12px;display:flex}.picker-card-name{color:var(--text-1);font-size:13px;font-weight:600}.picker-card-meta{color:var(--text-3);text-transform:capitalize;font-size:11px}.picker-card-actions{gap:6px;margin-top:6px;display:flex}.picker-card-actions a,.picker-card-actions button{text-align:center;background:var(--surface-3);color:var(--accent);cursor:pointer;border:0;border-radius:3px;flex:1;padding:4px;font-size:11px;text-decoration:none}.picker-new-card{border:2px dashed var(--border);color:var(--text-3);background:0 0;border-radius:6px;justify-content:center;align-items:center;min-height:80px;font-size:13px;text-decoration:none;display:flex}.picker-new-card:hover{border-color:var(--accent);color:var(--accent)}.editor-status-badge{text-transform:uppercase;border-radius:2px;margin-left:4px;padding:1px 5px;font-size:9px;font-weight:600;display:inline-block}.editor-status-badge.draft{color:#ffe9a0;background:#5a4d20}.editor-status-badge.published{color:#a0ffc0;background:#2a5a3d}.editor-head{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:12px;display:flex}.editor-grid{grid-template-columns:1fr 420px;align-items:start;gap:20px;display:grid}.editor-card{border:1px solid var(--border,#2a4256);background:var(--surface-2,#15202b);border-radius:8px;margin-bottom:10px;padding:10px 12px}.editor-textarea{background:var(--surface-3,#0e161e);width:100%;color:var(--text-1,#e6edf3);border:1px solid var(--border,#2a4256);font:inherit;resize:vertical;border-radius:6px;padding:6px 8px}.editor-issues{flex-direction:column;gap:4px;margin-bottom:10px;display:flex}.editor-error{color:#ff9b9b;font-size:12px}.editor-warning{color:#e0c060;font-size:12px}.editor-json-head{justify-content:space-between;align-items:center;margin-bottom:6px;font-weight:600;display:flex}.editor-json{border:1px solid var(--border,#2a4256);color:#cfe3ff;white-space:pre;background:#0b1118;border-radius:8px;max-height:60vh;padding:10px;font-size:12px;overflow:auto}.editor-hint{color:var(--text-2);margin-top:8px;font-size:12px}@media (width<=900px){.editor-grid{grid-template-columns:1fr}}.av-uploaded-chip{align-items:center;gap:var(--space-1);min-width:0;font-size:var(--fs-xs);color:var(--text-2);background:var(--surface-1);border:1px dashed var(--border-strong);border-radius:var(--radius-sm);flex:1;padding:4px 8px;display:inline-flex}.av-uploaded-chip-dot{color:var(--color-success)}.av-row-controls{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.av-help-body{font-size:var(--fs-sm);color:var(--text-2);line-height:var(--lh-normal);max-width:320px}.av-help-body strong{color:var(--text-1)}.av-help-body p{margin:0 0 var(--space-2)}.av-toolbar{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.av-toolbar .ui-input{flex:1;min-width:160px}.av-backup-status{font-size:var(--fs-xs);color:var(--text-2)}.av-variant-count{font-size:var(--fs-xs);color:var(--text-3);flex:1}.token-overrides .overrides-list{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(270px,1fr));align-content:start;display:grid}.token-overrides .override-group{min-width:0}.av-toolbar-spacer{flex:1}.av-count{font-size:var(--fs-xs);color:var(--text-3);white-space:nowrap}.av-empty{color:var(--text-3);font-size:var(--fs-sm);padding:var(--space-5);text-align:center;font-style:italic}.token-overrides .av-tabs{min-height:0;padding:0 var(--space-3);flex-direction:column;flex:1;display:flex}.token-overrides .ui-tabs-list{padding:0 var(--space-1)}.token-overrides .av-tab{min-height:0;padding-top:var(--space-2);flex-direction:column;flex:1;display:flex}.token-overrides .av-tab--units .overrides-list{flex:1;min-height:0}.bf-body{min-height:0;padding:var(--space-2) 0 var(--space-3);flex:1;overflow-y:auto}.bf-section-title{font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-3);margin:var(--space-2) 0 var(--space-1)}.bf-grid{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(180px,1fr));display:grid}.bf-slot{gap:var(--space-1);background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);padding:var(--space-2);flex-direction:column;display:flex}.bf-slot--custom{border-color:var(--accent-dim)}.bf-slot-head{align-items:center;gap:var(--space-2);display:flex}.bf-slot-name{min-width:0;font-size:var(--fs-sm);color:var(--text-1);flex:1}.bf-slot-preview{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:var(--surface-1);flex:none;width:28px;height:28px;overflow:hidden}.bf-slot-preview img{object-fit:cover;width:100%;height:100%;display:block}.bf-slot-preview-empty{width:100%;height:100%}.bf-note{font-size:var(--fs-xs);color:var(--text-3);margin:var(--space-2) 0 0;line-height:var(--lh-normal)}.bf-note code{background:var(--surface-3);border-radius:var(--radius-sm);padding:0 4px}.bf-actions{margin-top:var(--space-3)}.bf-edit{gap:var(--space-2);margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px dashed var(--border-subtle);flex-direction:column;display:flex}.bf-edit-row{gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.bf-edit-checks{flex-direction:column;gap:4px;display:flex}.bf-check{align-items:center;gap:var(--space-2);font-size:var(--fs-xs);color:var(--text-2);cursor:pointer;display:flex}.bf-check input{accent-color:var(--accent);flex:none}.bf-new{gap:var(--space-2);background:var(--surface-2);border:1px solid var(--accent-dim);border-radius:var(--radius-sm);padding:var(--space-3);flex-direction:column;max-width:360px;display:flex}.bf-meta-chips{flex-wrap:wrap;gap:4px;display:flex}.bf-meta-chip{color:var(--text-2);background:var(--surface-3);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);white-space:nowrap;padding:0 6px;font-size:10px;line-height:1.5}.map-editor{height:100vh;color:var(--text-1);background:#0c0f14;flex-direction:column;display:flex}.map-editor-head{border-bottom:1px solid var(--border-subtle);background:#14181f;flex-shrink:0;align-items:center;gap:10px;padding:10px 16px;display:flex}.map-editor-head .spacer{flex:1}.map-editor-name{max-width:320px;font-family:var(--font-display);font-weight:var(--fw-bold)}.map-editor-body{flex:1;grid-template-columns:minmax(280px,1fr) minmax(280px,1fr) 300px;gap:12px;min-height:0;padding:12px;display:grid}.map-editor-pane-title{font-size:var(--fs-xs);color:var(--text-3);text-transform:uppercase;letter-spacing:var(--tracking-wide);margin-bottom:6px}.map-editor-plan-pane,.map-editor-preview-pane{flex-direction:column;min-width:0;min-height:0;display:flex}.terrain-plan{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:#0a0c10;flex:1;min-height:0;display:flex;overflow:hidden}.terrain-plan-svg{touch-action:none;width:100%;height:100%}.plan-board{fill:#1a1712}.plan-grid{stroke:#2a2f38;stroke-width:.1px}.plan-grid-mid{stroke:#3a4150;stroke-width:.18px}.plan-border{fill:none;stroke:#4a5160;stroke-width:.25px}.plan-piece{cursor:grab}.plan-piece:active{cursor:grabbing}.plan-piece-rect{stroke:#0006;stroke-width:.15px;transition:stroke var(--dur-fast)}.plan-piece-tick{stroke:#fff8;stroke-width:.2px}.plan-piece--selected .plan-piece-rect{stroke:var(--accent,#d4af37);stroke-width:.5px}.map-preview-3d{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:#0a0c10;flex:1;min-height:0;position:relative;overflow:hidden}.map-preview-3d canvas{display:block}.map-editor-inspector{flex-direction:column;gap:14px;padding:4px 4px 4px 0;display:flex;overflow-y:auto}.inspector-section{background:var(--surface-2);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);padding:var(--space-3);flex-direction:column;gap:10px;display:flex}.inspector-title{font-family:var(--font-display);font-weight:var(--fw-bold);font-size:var(--fs-sm);color:var(--accent-text);letter-spacing:var(--tracking-wide);justify-content:space-between;align-items:baseline;display:flex}.inspector-count{font-family:var(--font-body);font-weight:var(--fw-normal);font-size:var(--fs-xs);color:var(--text-3)}.inspector-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.inspector-range{width:100%}.inspector-meta{font-size:var(--fs-xs);color:var(--text-3)}.inspector-empty{color:var(--text-3);font-size:var(--fs-sm);font-style:italic}@media (width<=980px){.map-editor-body{grid-template-columns:1fr;grid-auto-rows:minmax(280px,auto);overflow-y:auto}}
