@font-face{font-family:IM Fell English;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/im-fell-english-latin-400-normal-BhowGHCQ.woff2)format("woff2"),url(/assets/im-fell-english-latin-400-normal-CxhBQSzl.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:IM Fell English;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/im-fell-english-latin-400-italic-DD_ylKHZ.woff2)format("woff2"),url(/assets/im-fell-english-latin-400-italic-hN89MLGX.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:Lora;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lora-cyrillic-ext-400-normal-DwaaZvol.woff2)format("woff2"),url(/assets/lora-cyrillic-ext-400-normal-PiPRSBNu.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:Lora;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lora-cyrillic-400-normal-CbVom6TB.woff2)format("woff2"),url(/assets/lora-cyrillic-400-normal-BedExNGj.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Lora;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lora-math-400-normal-D2gccGFf.woff2)format("woff2"),url(/assets/lora-math-400-normal-BToItYw_.woff)format("woff");unicode-range:U+302-303,U+305,U+307-308,U+310,U+312,U+315,U+31A,U+326-327,U+32C,U+32F-330,U+332-333,U+338,U+33A,U+346,U+34D,U+391-3A1,U+3A3-3A9,U+3B1-3C9,U+3D1,U+3D5-3D6,U+3F0-3F1,U+3F4-3F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE??}@font-face{font-family:Lora;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lora-symbols-400-normal-DmcY0X7a.woff2)format("woff2"),url(/assets/lora-symbols-400-normal-BK2bqsD8.woff)format("woff");unicode-range:U+1-C,U+E-1F,U+7F-9F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+28??,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B??,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F0??,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F7??,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB??}@font-face{font-family:Lora;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lora-vietnamese-400-normal-BxA6xcFr.woff2)format("woff2"),url(/assets/lora-vietnamese-400-normal-DlgyXXxo.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:Lora;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lora-latin-ext-400-normal-CyviI4c-.woff2)format("woff2"),url(/assets/lora-latin-ext-400-normal-B9GmMl5M.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:Lora;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lora-latin-400-normal-DnxXpLNu.woff2)format("woff2"),url(/assets/lora-latin-400-normal-DBJS-Hc6.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:Lora;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/lora-cyrillic-ext-400-italic-sNZZY6P_.woff2)format("woff2"),url(/assets/lora-cyrillic-ext-400-italic-CkoKUlaJ.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:Lora;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/lora-cyrillic-400-italic-BZqWJcgY.woff2)format("woff2"),url(/assets/lora-cyrillic-400-italic-rXhP2Nh9.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Lora;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/lora-math-400-italic-C8XPXhEM.woff2)format("woff2"),url(/assets/lora-math-400-italic-iqgQGvdL.woff)format("woff");unicode-range:U+302-303,U+305,U+307-308,U+310,U+312,U+315,U+31A,U+326-327,U+32C,U+32F-330,U+332-333,U+338,U+33A,U+346,U+34D,U+391-3A1,U+3A3-3A9,U+3B1-3C9,U+3D1,U+3D5-3D6,U+3F0-3F1,U+3F4-3F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE??}@font-face{font-family:Lora;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/lora-symbols-400-italic-Bx3UNHSW.woff2)format("woff2"),url(/assets/lora-symbols-400-italic-DQuLZM7M.woff)format("woff");unicode-range:U+1-C,U+E-1F,U+7F-9F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+28??,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B??,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F0??,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F7??,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB??}@font-face{font-family:Lora;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/lora-vietnamese-400-italic-DFs7jfwN.woff2)format("woff2"),url(/assets/lora-vietnamese-400-italic-DGRK7mLs.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:Lora;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/lora-latin-ext-400-italic-D02B-RQB.woff2)format("woff2"),url(/assets/lora-latin-ext-400-italic-2Cu7DU_m.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:Lora;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/lora-latin-400-italic-DYjZp4sZ.woff2)format("woff2"),url(/assets/lora-latin-400-italic-wRLkZNVE.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:Lora;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/lora-cyrillic-ext-500-normal-4Ud55qIb.woff2)format("woff2"),url(/assets/lora-cyrillic-ext-500-normal-BM33EBQZ.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:Lora;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/lora-cyrillic-500-normal-CGcjVW1P.woff2)format("woff2"),url(/assets/lora-cyrillic-500-normal-B7VECUNf.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Lora;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/lora-math-500-normal-CZVvtWMy.woff2)format("woff2"),url(/assets/lora-math-500-normal-z1mtDCUR.woff)format("woff");unicode-range:U+302-303,U+305,U+307-308,U+310,U+312,U+315,U+31A,U+326-327,U+32C,U+32F-330,U+332-333,U+338,U+33A,U+346,U+34D,U+391-3A1,U+3A3-3A9,U+3B1-3C9,U+3D1,U+3D5-3D6,U+3F0-3F1,U+3F4-3F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE??}@font-face{font-family:Lora;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/lora-symbols-500-normal-CJHTIF5f.woff2)format("woff2"),url(/assets/lora-symbols-500-normal-C70LsJbW.woff)format("woff");unicode-range:U+1-C,U+E-1F,U+7F-9F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+28??,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B??,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F0??,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F7??,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB??}@font-face{font-family:Lora;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/lora-vietnamese-500-normal-LA4e_tum.woff2)format("woff2"),url(/assets/lora-vietnamese-500-normal-vya0n-2r.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:Lora;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/lora-latin-ext-500-normal-CVMwgWlS.woff2)format("woff2"),url(/assets/lora-latin-ext-500-normal-CmiMDADN.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:Lora;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/lora-latin-500-normal-Dh16O2IA.woff2)format("woff2"),url(/assets/lora-latin-500-normal-Dbc_1yrl.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:Lora;font-style:italic;font-display:swap;font-weight:500;src:url(/assets/lora-cyrillic-ext-500-italic-Dut_s61P.woff2)format("woff2"),url(/assets/lora-cyrillic-ext-500-italic-CYFYAaH0.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:Lora;font-style:italic;font-display:swap;font-weight:500;src:url(/assets/lora-cyrillic-500-italic-D2bUnDRr.woff2)format("woff2"),url(/assets/lora-cyrillic-500-italic-p3syZHoO.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Lora;font-style:italic;font-display:swap;font-weight:500;src:url(/assets/lora-math-500-italic-CjvQrE7t.woff2)format("woff2"),url(/assets/lora-math-500-italic-B4GgkPn9.woff)format("woff");unicode-range:U+302-303,U+305,U+307-308,U+310,U+312,U+315,U+31A,U+326-327,U+32C,U+32F-330,U+332-333,U+338,U+33A,U+346,U+34D,U+391-3A1,U+3A3-3A9,U+3B1-3C9,U+3D1,U+3D5-3D6,U+3F0-3F1,U+3F4-3F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE??}@font-face{font-family:Lora;font-style:italic;font-display:swap;font-weight:500;src:url(/assets/lora-symbols-500-italic-CpDp1nI-.woff2)format("woff2"),url(/assets/lora-symbols-500-italic-DqfmaPpw.woff)format("woff");unicode-range:U+1-C,U+E-1F,U+7F-9F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+28??,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B??,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F0??,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F7??,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB??}@font-face{font-family:Lora;font-style:italic;font-display:swap;font-weight:500;src:url(/assets/lora-vietnamese-500-italic-CkYhorqi.woff2)format("woff2"),url(/assets/lora-vietnamese-500-italic-BgtGG3kb.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:Lora;font-style:italic;font-display:swap;font-weight:500;src:url(/assets/lora-latin-ext-500-italic-CsetchPh.woff2)format("woff2"),url(/assets/lora-latin-ext-500-italic-pcfNJUg1.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:Lora;font-style:italic;font-display:swap;font-weight:500;src:url(/assets/lora-latin-500-italic-D1ptFfg7.woff2)format("woff2"),url(/assets/lora-latin-500-italic-DaWhScir.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:Space Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/space-mono-vietnamese-400-normal-BNOj0Qhp.woff2)format("woff2"),url(/assets/space-mono-vietnamese-400-normal-B0PMp_xB.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:Space Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/space-mono-latin-ext-400-normal-DTLbW2xa.woff2)format("woff2"),url(/assets/space-mono-latin-ext-400-normal-D4cJI_B-.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:Space Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/space-mono-latin-400-normal-Rg4St2Dn.woff2)format("woff2"),url(/assets/space-mono-latin-400-normal-_3DlpgIW.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:Space Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-mono-vietnamese-700-normal-DWQgDHuA.woff2)format("woff2"),url(/assets/space-mono-vietnamese-700-normal-D-KrLuLr.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:Space Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-mono-latin-ext-700-normal-B2s3bDs2.woff2)format("woff2"),url(/assets/space-mono-latin-ext-700-normal-B_E7P90g.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:Space Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-mono-latin-700-normal-mWgeinG7.woff2)format("woff2"),url(/assets/space-mono-latin-700-normal-D7A851RN.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}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--deep:#08070a;--washed:#15130f;--washed-2:#1a1714;--washed-3:#211d18;--ink-text:#d8ccaa;--ink-warm:#c4b890;--ink-muted:#968a72;--ink-ghost:#5e5648;--ink-edge:#2a251f;--jade:#4a9e6e;--jade-mid:#3f8a60;--jade-deep:#2f7050;--crimson:#c0392b;--crimson-hi:#d75341;--crimson-deep:#7a2117;--gold:#c9952a;--gold-warm:#a37b22;--gold-soft:#876820;--bronze:#8b7355;--slate:oklch(62% .05 240);--ash:oklch(55% .01 30);--threat-slate:#7b8fa6;--threat-teal:#2ec4b6;--threat-green:var(--jade);--threat-amber:var(--gold);--threat-crimson:var(--crimson);--rule-warm:#8b735552;--font-display:"IM Fell English", Georgia, serif;--font-serif:"Lora", Georgia, "Times New Roman", serif;--font-mono:"Space Mono", "Courier New", Courier, monospace;--bg:var(--washed);--surface:var(--washed-2);--border:var(--ink-edge);--text:var(--ink-text);--text-muted:var(--ink-muted);--text-dim:var(--ink-warm);--accent:var(--bronze);--accent-hover:var(--ink-text);--error:var(--crimson);--bg-panel:var(--washed-2);--border-panel:var(--ink-edge);--text-dao:#8b9a8b;--text-scar:var(--crimson);--text-bracket:var(--jade);--color-threat-slate:#7b8fa6;--color-threat-teal:#2ec4b6;--color-threat-green:var(--jade);--color-threat-amber:var(--gold);--color-threat-crimson:var(--crimson);--color-grade-mortal:var(--ink-text);--color-grade-yellow:var(--gold);--color-grade-blue:#5a8fb8;--grade-mortal:#c9a04a;--grade-yellow:#5e8aa8;--grade-blue:#8d6a9e}[data-threat=slate]{color:var(--color-threat-slate)}[data-threat=teal]{color:var(--color-threat-teal)}[data-threat=green]{color:var(--color-threat-green)}[data-threat=amber]{color:var(--color-threat-amber)}[data-threat=crimson]{color:var(--color-threat-crimson)}[data-grade=mortal]{color:var(--color-grade-mortal)}[data-grade=yellow]{color:var(--color-grade-yellow)}[data-grade=blue]{color:var(--color-grade-blue)}html,body{height:100%}body{font-family:var(--font-serif);color:var(--ink-text);background:radial-gradient(36% 28% at 18% 22%,#050405 0%,#0000 70%),radial-gradient(28% 22% at 78% 18%,#060507 0%,#0000 65%),radial-gradient(44% 34% at 64% 78%,#040405 0%,#0000 72%),#181510 radial-gradient(80% 80%,#1d1915 0%,#181510 55%,#100e0c 100%);font-size:17px;line-height:1.82}body:before{content:"";pointer-events:none;z-index:0;opacity:.42;mix-blend-mode:screen;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='260' height='260'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.7' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.85  0 0 0 0 0.78  0 0 0 0 0.58  0 0 0 0.04 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");position:fixed;inset:0}#root{z-index:1;flex-direction:column;height:auto;min-height:100%;display:flex;position:relative}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.creation-layout{flex-direction:column;gap:2rem;max-width:600px;margin:0 auto;padding:4rem 2rem;display:flex}.creation-title{letter-spacing:.15em;color:var(--accent);font-size:2.5rem;font-weight:400}.creation-subtitle{color:var(--text-muted);font-style:italic}@keyframes qi-pulse{0%,to{opacity:1}50%{opacity:.35}}.creation-subtitle--resuming{animation:2.4s ease-in-out infinite qi-pulse}.creation-form{flex-direction:column;gap:2rem;display:flex}.creation-error{color:var(--error);font-size:.9rem}.creation-submit{border:1px solid var(--accent);color:var(--accent);font-family:var(--font-serif);cursor:pointer;letter-spacing:.1em;background:0 0;align-self:flex-start;padding:.75rem 2.5rem;font-size:1rem;transition:all .2s}.creation-submit:hover:not(:disabled){background:var(--accent);color:var(--bg)}.creation-submit:disabled{opacity:.4;cursor:not-allowed}.field{flex-direction:column;gap:.5rem;display:flex}.field-label{color:var(--text-muted);letter-spacing:.05em;text-transform:uppercase;font-size:.85rem}.field-input,.field-textarea{background:var(--surface);border:1px solid var(--border);color:var(--text);font-family:var(--font-serif);resize:vertical;padding:.75rem 1rem;font-size:1rem}.field-input:focus,.field-textarea:focus{outline:1px solid var(--accent)}.field-input:disabled,.field-textarea:disabled{opacity:.5}.char-count{color:var(--text-muted);align-self:flex-end;font-size:.75rem}.origin-choices,.instinct-choices{flex-direction:column;gap:.75rem;display:flex}.choice{border:1px solid var(--border);cursor:pointer;flex-direction:column;gap:.25rem;padding:1rem;transition:border-color .15s;display:flex}.choice input[type=radio]{display:none}.choice--selected{border-color:var(--accent)}.choice:hover{border-color:var(--text-muted)}.choice-label{color:var(--text)}.choice-desc{color:var(--text-muted);font-size:.9rem;font-style:italic}.landing-paths{flex-direction:column;gap:1rem;display:flex}.path-button{text-align:left;border:1px solid var(--border);color:var(--text);font-family:var(--font-serif);cursor:pointer;background:0 0;flex-direction:column;gap:.35rem;padding:1.25rem 1.5rem;transition:border-color .15s;display:flex}.path-button:hover{border-color:var(--accent)}.path-button__title{color:var(--accent);font-size:1.05rem}.path-button__desc{color:var(--text-muted);font-size:.9rem;font-style:italic}.creation-actions{align-items:center;gap:1.5rem;display:flex}.creation-back{color:var(--text-muted);font-family:var(--font-serif);cursor:pointer;background:0 0;border:none;padding:0;font-size:.9rem;transition:color .15s}.creation-back:hover:not(:disabled){color:var(--text)}.creation-back:disabled{opacity:.4;cursor:not-allowed}.email-note{color:var(--text-muted);font-size:.9rem;font-style:italic}.magic-sent{flex-direction:column;gap:1rem;display:flex}.magic-sent__message{color:var(--text)}.magic-sent__hint{color:var(--text-muted);font-size:.9rem;font-style:italic}.game-layout{flex-direction:column;width:100%;max-width:1080px;min-height:100vh;margin:0 auto;display:flex;position:relative}.sticky-title{z-index:6;-webkit-backdrop-filter:blur(6px);background:#14110deb;align-items:center;gap:1rem;padding:.6rem 2.2rem;display:flex;position:sticky;top:0}.sticky-title:after{content:"";background:linear-gradient(90deg,#0000 0%,#8b73550d 4%,#8b735566 35%,#8b73558c 50%,#8b735559 70%,#8b735514 92%,#0000 100%);height:1px;position:absolute;bottom:0;left:0;right:0}.st-eyebrow{font-family:var(--font-mono);letter-spacing:.28em;text-transform:uppercase;color:var(--gold);opacity:.85;margin-right:.4rem;font-size:.54rem}.st-loc{font-family:var(--font-display);color:var(--ink-text);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:1.05rem;overflow:hidden}.st-meters{flex-shrink:0;gap:.9rem;display:flex}.st-meter{flex-direction:column;align-items:flex-end;gap:3px;display:flex}.st-lbl{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-ghost);font-size:.42rem}.st-bar{background:var(--ink-edge);width:60px;height:2px;position:relative}.st-fill{position:absolute;top:0;bottom:0;left:0}.st-fill.qi{background:linear-gradient(90deg, var(--jade) 0%, #4a9e6e4d 100%)}.st-fill.stm{background:linear-gradient(90deg, var(--bronze) 0%, #8b73554d 100%)}.state-toggle{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-ghost);border:1px solid var(--ink-edge);cursor:pointer;background:0 0;flex-shrink:0;min-height:28px;padding:.3rem .55rem;font-size:.48rem;transition:color .13s,border-color .13s}.state-toggle:hover{color:var(--ink-text);border-color:var(--bronze)}.intro-band{grid-template-columns:1fr auto;align-items:end;gap:2rem;padding:2.6rem 3rem 2.2rem 2.4rem;display:grid;position:relative}.intro-band:after{content:"";pointer-events:none;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 280 14' preserveAspectRatio='none'><defs><filter id='b'><feGaussianBlur stdDeviation='0.3'/></filter></defs><path d='M3,7 Q14,3 32,5 Q58,8 92,4 Q132,1.5 168,5 Q204,8 234,4 Q258,2 270,5.5 Q276,7 277,8 Q272,9 260,8.5 Q224,7 200,8 Q160,9.5 124,8 Q92,7 60,8.5 Q32,9.5 12,8 Q5,7.5 3,7 Z' fill='%23968a72' filter='url(%23b)' opacity='0.55'/></svg>") 0 0/100% 100% no-repeat;width:280px;height:14px;position:absolute;bottom:1rem;left:2.4rem}.intro-loc-block{min-width:0}.intro-eyebrow{font-family:var(--font-mono);letter-spacing:.32em;text-transform:uppercase;color:var(--gold);opacity:.82;margin-bottom:.4rem;font-size:.6rem}.intro-loc{font-family:var(--font-display);color:var(--ink-text);font-size:2.4rem;font-weight:400;line-height:1.02}.intro-cond{font-family:var(--font-serif);color:var(--ink-muted);margin-top:1.2rem;font-size:.88rem;font-style:italic}.intro-player{flex-direction:column;align-items:flex-end;gap:.55rem;display:flex}.player-name{font-family:var(--font-display);color:var(--ink-text);font-size:1.2rem;font-style:italic;line-height:1}.realm-tag{font-family:var(--font-mono);letter-spacing:.18em;color:var(--ink-muted);font-size:.52rem}.meter-pair{gap:1rem;margin-top:.4rem;display:flex}.meter-col{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.meter-lbl{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-ghost);font-size:.46rem}.meter-bar{background:var(--ink-edge);width:76px;height:3px;position:relative}.meter-fill{position:absolute;top:0;bottom:0;left:0}.meter-fill.qi{background:linear-gradient(90deg, var(--jade) 0%, #4a9e6e4d 100%)}.meter-fill.stm{background:linear-gradient(90deg, var(--bronze) 0%, #8b73554d 100%)}.meter-num{font-family:var(--font-mono);color:var(--ink-warm);margin-top:1px;font-size:.62rem}.here-strip{z-index:5;background:#0f0d0af2;align-items:center;gap:1.2rem;padding:.7rem 2.2rem;display:flex;position:sticky;top:47px}.here-strip:before,.here-strip:after{content:"";background:linear-gradient(90deg,#0000 0%,#8b735540 10%,#8b735573 50%,#8b735540 90%,#0000 100%);height:1px;position:absolute;left:0;right:0}.here-strip:before{opacity:.5;top:0}.here-strip:after{bottom:0}.compass{border:1px solid var(--ink-edge);background:#ffffff05;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;padding:4px;display:flex}.compass svg{width:100%;height:100%;stroke:var(--bronze);fill:none;stroke-width:1px;stroke-linecap:round}.compass .exit{fill:none;stroke:var(--bronze)}.compass .exit.blocked{opacity:.18}.compass .here{fill:var(--jade);stroke:none}.compass .lbl{font-family:var(--font-mono);letter-spacing:.16em;fill:var(--ink-muted);stroke:none;font-size:5px}.here-label{font-family:var(--font-mono);letter-spacing:.28em;text-transform:uppercase;color:var(--ink-muted);border-right:1px solid var(--ink-edge);flex-shrink:0;padding-right:.9rem;font-size:.5rem}.here-list{scrollbar-width:none;flex:1;align-items:center;gap:1.2rem;min-width:0;display:flex;overflow-x:auto}.here-list::-webkit-scrollbar{display:none}.here-entry{flex-shrink:0;align-items:baseline;gap:.42rem;display:inline-flex}.here-dot{background:var(--ink-muted);border-radius:50%;flex-shrink:0;width:5px;height:5px;transform:translateY(-1px)}.here-dot[data-kind=npc]{background:var(--ink-muted)}.here-dot[data-kind=hostile]{background:var(--crimson)}.here-dot[data-kind=poi],.here-dot[data-kind=cultivation_tablet]{background:var(--gold)}.here-dot[data-kind=item],.here-dot[data-kind=herb]{background:var(--bronze)}.here-text{font-family:var(--font-serif);color:var(--ink-muted);white-space:nowrap;font-size:.82rem;font-style:italic}.here-entry[data-kind=hostile] .here-text{color:var(--crimson)}.here-entry[data-kind=poi] .here-text,.here-entry[data-kind=cultivation_tablet] .here-text{color:var(--gold)}.game-main{flex-direction:column;flex:1;min-width:0;display:flex}.game-footer{z-index:4;background:#0f0d0af2;flex-direction:column;gap:.85rem;padding:1rem 2.4rem 1.4rem;display:flex;position:sticky;bottom:0}.game-footer:before{content:"";background:linear-gradient(90deg,#0000 0%,#8b735533 5%,#8b735580 50%,#8b735533 95%,#0000 100%);height:1px;position:absolute;top:0;left:0;right:0}.game-layout--hydrating{text-align:center;justify-content:center;align-items:center;gap:1.4rem;padding:3rem 2rem}.hydrating-message{font-family:var(--font-display);color:var(--ink-muted);font-size:1.1rem;font-style:italic}@media (width<=720px){.sticky-title{gap:.55rem;padding:.55rem 1rem}.st-bar{width:42px}.intro-band{padding:1.4rem 1.2rem 1.3rem;display:block}.intro-band:after{width:auto;bottom:.4rem;left:1.2rem;right:3rem}.intro-loc{margin-bottom:.5rem;font-size:1.7rem}.intro-player{border-top:1px dashed var(--ink-edge);flex-direction:row;justify-content:space-between;align-items:center;margin-top:1.1rem;padding-top:.8rem}.meter-bar{width:56px}.here-strip{gap:.55rem;padding:.55rem 1rem;top:44px;overflow-x:auto}.compass{border:none;border-right:1px solid var(--ink-edge);border-radius:0;width:32px;height:32px;padding:2px .55rem 2px 2px}.here-label{padding-right:.45rem}.game-footer{padding:.85rem 1.1rem 1rem}}.minimap-panel{padding:.25rem 0}.minimap-svg{width:100%;display:block;overflow:visible}.map-edge{stroke:var(--border);stroke-width:1px}.map-node[data-state=current] circle:not(.map-node__pulse){fill:var(--accent)}.map-node__pulse{fill:var(--accent);opacity:.15}.map-node[data-state=visited] circle{fill:var(--text-muted)}.map-node[data-state=cross-location] circle{fill:var(--accent);opacity:.7}.map-node[data-state=unknown] circle{fill:none;stroke:var(--text-muted);opacity:.25}.narrative-stream{scrollbar-width:thin;scrollbar-color:var(--ink-edge) transparent;flex-direction:column;flex:1;gap:1.4rem;padding:3rem 4rem 2.4rem 2rem;display:flex;overflow-y:auto}.narrative-stream::-webkit-scrollbar{width:6px}.narrative-stream::-webkit-scrollbar-thumb{background:var(--ink-edge);border-radius:3px}.message{max-width:56ch}.message--ai_dm .message-content{color:var(--ink-text);font-feature-settings:"onum" 1, "liga" 1}.message--ai_dm .message-content p{margin-bottom:1.4em;line-height:1.82}.message--ai_dm .message-content p:last-child{margin-bottom:0}.narrative-stream>.message--ai_dm:first-of-type .message-content p:first-of-type:first-letter{font-family:var(--font-display);float:left;color:var(--ink-warm);padding:.12em .2em 0 0;font-size:2.8em;line-height:.9}.message--ai_dm .message-content strong{color:var(--ink-text);letter-spacing:.02em;font-weight:400}.message--ai_dm .message-content em{color:var(--ink-muted);font-style:italic}.message--ai_dm .message-content hr{border:none;border-top:1px solid var(--ink-edge);margin:1.2rem 0}.message--player .message-content{font-family:var(--font-serif);color:var(--ink-muted);font-size:.95rem;font-style:italic}.message--player .message-content:before{content:"› ";opacity:.55}.cursor{color:var(--ink-muted);animation:1s step-end infinite blink}@keyframes blink{50%{opacity:0}}.narrative-empty-reset-wrap{margin-top:1rem}.narrative-empty-reset{color:var(--ink-muted);font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;cursor:pointer;text-underline-offset:4px;text-decoration:underline;-webkit-text-decoration-color:var(--ink-edge);text-decoration-color:var(--ink-edge);background:0 0;border:none;padding:0;font-size:.7rem;transition:color .15s,text-decoration-color .15s}.narrative-empty-reset:hover{color:var(--gold);-webkit-text-decoration-color:var(--gold-soft);text-decoration-color:var(--gold-soft)}.reset-confirm{flex-direction:column;gap:.5rem;display:flex}.reset-confirm-text{color:var(--ink-muted);max-width:50ch;font-size:.85rem;font-style:italic}.reset-confirm-error{color:var(--crimson);font-family:var(--font-mono);letter-spacing:.08em;font-size:.72rem}.reset-confirm-actions{align-items:center;gap:.75rem;display:flex}.reset-confirm-accept{border:1px solid var(--crimson);color:var(--crimson);font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;cursor:pointer;background:0 0;padding:.32rem .7rem;font-size:.7rem;transition:background .15s,color .15s}.reset-confirm-accept:hover:not(:disabled){background:#c0392b1f}.reset-confirm-accept:disabled{opacity:.5;cursor:not-allowed}.reset-confirm-cancel{color:var(--ink-muted);font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;cursor:pointer;background:0 0;border:none;padding:.32rem 0;font-size:.7rem;transition:color .15s}.reset-confirm-cancel:hover:not(:disabled){color:var(--ink-text)}.reset-confirm-cancel:disabled{opacity:.5;cursor:not-allowed}@media (width<=720px){.narrative-stream{padding:1.6rem 1.3rem 1rem}}.choice-buttons{flex-direction:column;gap:.4rem;display:flex}.choices-head{align-items:center;gap:.7rem;margin-bottom:.45rem;display:flex}.choices-mark{border:1px solid var(--gold);background:radial-gradient(circle at 35% 32%,#c9952a66 0%,#0000 60%);border-radius:50%;flex-shrink:0;width:18px;height:18px}.choices-label{font-family:var(--font-mono);letter-spacing:.3em;text-transform:uppercase;color:var(--gold);font-size:.52rem}.choice-button{width:100%;font-family:var(--font-serif);color:var(--ink-text);cursor:pointer;text-align:left;border:none;border-left:2px solid var(--ink-edge);background:0 0;min-height:44px;padding:.45rem 0 .45rem 1rem;font-size:.96rem;font-style:italic;transition:color .15s,border-left-color .15s,padding-left .15s,background .15s;display:block}.choice-button:hover:not(:disabled){color:#ebe0b8;border-left-color:var(--gold);background:linear-gradient(90deg,#c9952a14,#0000 60%);padding-left:1.15rem}.choice-button:disabled{opacity:.5;cursor:not-allowed}.choice-buttons--tribulation .choice-button{border-left-color:#c0392b8c}.choice-buttons--tribulation .choice-button:hover:not(:disabled){border-left-color:var(--crimson);background:linear-gradient(90deg,#c0392b14,#0000 60%)}.choice-buttons--tribulation .choices-mark{border-color:var(--crimson);background:radial-gradient(circle at 35% 32%,#c0392b66 0%,#0000 60%)}.choice-buttons--tribulation .choices-label{color:var(--crimson)}.actions-block{flex-direction:column;gap:.5rem;display:flex}.actions-head{align-items:center;gap:.7rem;display:flex}.actions-mark{border:1px solid var(--bronze);background:radial-gradient(circle at 35% 32%,#8b735559 0%,#0000 60%);border-radius:50%;flex-shrink:0;width:18px;height:18px}.actions-label{font-family:var(--font-mono);letter-spacing:.3em;text-transform:uppercase;color:var(--ink-muted);font-size:.52rem}.act-row{align-items:stretch;gap:.4rem;display:flex}.act-strip{scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex:1;gap:.45rem;min-width:0;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 4% 96%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 4% 96%,#0000 100%)}.act-strip::-webkit-scrollbar{display:none}.act-chev{border:1px solid var(--ink-edge);min-width:30px;min-height:44px;color:var(--ink-muted);font-family:var(--font-mono);cursor:pointer;background:0 0;flex:none;padding:0;font-size:.74rem;transition:color .13s,border-color .13s}.act-chev:not(:disabled):hover{color:var(--ink-text);border-color:var(--bronze)}.act-chev[disabled]{opacity:.3;cursor:default}.act-btn{scroll-snap-align:start;font-family:var(--font-serif);border:1px solid var(--ink-ghost);border-left:3px solid var(--ink-ghost);min-height:44px;color:var(--ink-text);cursor:pointer;white-space:nowrap;background:#ffffff08;flex:none;align-items:baseline;gap:.4rem;padding:.5rem .82rem .5rem .62rem;font-size:.86rem;font-style:italic;transition:background .13s,border-color .13s,color .13s;display:inline-flex}.act-btn:hover:not(:disabled){color:#ebe0b8;background:#ffffff0d}.act-btn:disabled{opacity:.4;cursor:not-allowed}.act-btn .vb{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-muted);font-size:.54rem;font-style:normal;font-weight:700}.act-btn[data-intent=friendly]{border-color:#4a9e6e66;border-left-color:var(--jade)}.act-btn[data-intent=friendly] .vb{color:var(--jade)}.act-btn[data-intent=friendly]:hover:not(:disabled){border-color:#4a9e6eb3}.act-btn[data-intent=hostile]{border-color:#c0392b73;border-left-color:var(--crimson)}.act-btn[data-intent=hostile] .vb{color:var(--crimson)}.act-btn[data-intent=hostile]:hover:not(:disabled){border-color:#c0392bcc}.act-btn[data-intent=inspect]{border-color:#8b735573;border-left-color:var(--bronze)}.act-btn[data-intent=inspect] .vb{color:var(--bronze)}.act-btn[data-intent=significant]{border-color:#c9952a73;border-left-color:var(--gold)}.act-btn[data-intent=significant] .vb{color:var(--gold)}.act-btn[data-intent=significant]:hover:not(:disabled){border-color:#c9952acc}.act-btn[data-intent=exit]{border-color:#8b735559;border-left-color:var(--ink-ghost)}.act-btn[data-intent=exit] .vb{color:var(--ink-muted)}.cultivate-button,.rest-button,.gather-button{scroll-snap-align:start;font-family:var(--font-serif);border:1px solid var(--ink-ghost);border-left:3px solid var(--jade);min-height:44px;color:var(--ink-text);cursor:pointer;white-space:nowrap;background:#ffffff08;flex:none;padding:.5rem .82rem .5rem .62rem;font-size:.86rem;font-style:italic;transition:background .13s,border-color .13s}.cultivate-button{border-color:#4a9e6e80;border-left-color:var(--jade)}.rest-button{border-color:#8b735573;border-left-color:var(--bronze)}.gather-button{border-color:#c9952a66;border-left-color:var(--gold)}.cultivate-button:hover:not(:disabled),.rest-button:hover:not(:disabled),.gather-button:hover:not(:disabled){background:#ffffff0d}.cultivate-button:disabled,.rest-button:disabled,.gather-button:disabled{opacity:.4;cursor:not-allowed}.input-row{align-items:center;gap:.5rem;padding-top:.6rem;display:flex;position:relative}.input-row:before{content:"";background:linear-gradient(90deg,#0000 0%,#8b735526 8%,#8b735559 50%,#8b735526 92%,#0000 100%);height:1px;position:absolute;top:0;left:0;right:0}.input-field{flex:1;align-items:stretch;gap:.4rem;min-width:0;display:flex}.input-textarea{min-height:48px;font-family:var(--font-serif);border:1px solid var(--ink-edge);color:var(--ink-text);resize:none;background:#ffffff08;outline:none;flex:1;padding:.55rem .75rem;font-size:.96rem;font-style:italic;line-height:1.5;transition:border-color .13s,background .13s}.input-textarea::placeholder{color:var(--ink-ghost);font-style:italic}.input-textarea:focus{border-color:var(--bronze);background:#ffffff0d}.input-textarea:disabled{opacity:.5}.input-submit{border:1px solid var(--ink-edge);color:var(--ink-muted);font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;cursor:pointer;white-space:nowrap;background:0 0;flex-shrink:0;padding:.55rem .85rem;font-size:.62rem;transition:all .15s}.input-submit:hover:not(:disabled){border-color:var(--bronze);color:var(--ink-text)}.input-submit:disabled{opacity:.4;cursor:not-allowed}.util-cluster{flex-shrink:0;gap:.15rem;display:flex}.util-btn{min-width:44px;min-height:48px;color:var(--ink-muted);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;transition:color .13s,background .13s,border-color .13s;display:inline-flex;position:relative}.util-btn:hover{color:var(--ink-text);border-color:var(--ink-edge);background:#ffffff0a}.util-btn:disabled{opacity:.3;cursor:not-allowed}.util-icon{stroke:currentColor;fill:none;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.util-seal{background:var(--crimson);color:#ffe4d2f5;font-family:var(--font-display);pointer-events:none;border-radius:50%;justify-content:center;align-items:center;width:12px;height:12px;font-size:7.5px;line-height:1;display:flex;position:absolute;top:4px;right:4px}.sentinel-error{background:#c0392b0d;border:1px solid #c0392b66;flex-direction:column;gap:.6rem;max-width:56ch;margin-top:1rem;padding:.85rem 1rem;display:flex}.sentinel-error-message{font-family:var(--font-serif);color:var(--ink-warm);font-size:.92rem;font-style:italic}.sentinel-retry-button{border:1px solid var(--crimson);color:var(--crimson);font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;cursor:pointer;background:0 0;align-self:flex-start;padding:.35rem .75rem;font-size:.66rem;transition:background .15s}.sentinel-retry-button:hover:not(:disabled){background:#c0392b1f}.sentinel-retry-button:disabled{opacity:.5;cursor:not-allowed}.network-error{font-family:var(--font-mono);letter-spacing:.1em;color:var(--crimson);max-width:56ch;margin:1rem 0 0;font-size:.72rem}.tip-strip{border-left:2px solid var(--ink-edge);font-family:var(--font-mono);letter-spacing:.06em;color:var(--ink-muted);background:0 0;align-items:flex-start;gap:.6rem;max-width:56ch;margin-top:.5rem;padding:.55rem .85rem;font-size:.7rem;line-height:1.6;display:flex}.tip-strip-glyph{opacity:.45;flex-shrink:0;margin-top:.1rem;font-size:.7rem}.tip-strip-text{font-style:italic}.game-layout[data-state=scene] .actions-block,.game-layout[data-state=scene] .game-actions,.game-layout[data-state=free] .choice-buttons{display:none}.chat-fab{right:14px;bottom:calc(96px + env(safe-area-inset-bottom));z-index:14;border:1px solid var(--bronze);width:48px;height:48px;color:var(--ink-text);cursor:pointer;-webkit-tap-highlight-color:transparent;background:#14110df5;border-radius:50%;justify-content:center;align-items:center;transition:background .14s,border-color .14s,transform .14s;display:flex;position:fixed;box-shadow:0 4px 14px #00000080}.chat-fab:active{border-color:var(--gold);background:#c9952a1f}.chat-fab .han{font-family:var(--font-display);color:var(--gold);font-size:1.05rem;font-style:italic;line-height:1}.chat-fab .pen{font-family:var(--font-mono);color:var(--ink-muted);font-size:.6rem;line-height:1;position:absolute;bottom:9px;right:9px}.composer-backdrop{z-index:19;opacity:0;pointer-events:none;background:#08070a8c;transition:opacity .2s;position:fixed;inset:0}.composer-backdrop.visible{opacity:1;pointer-events:auto}.composer-expanded{z-index:20;padding:.85rem 1rem calc(1.1rem + env(safe-area-inset-bottom));border-top:1px solid var(--bronze);background:#100e0afa;align-items:center;gap:.45rem;transition:transform .22s cubic-bezier(.2,.7,.2,1);display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(110%)}.composer-expanded.visible{transform:translateY(0)}.composer-expanded .input-textarea{min-width:0;min-height:44px;font-family:var(--font-serif);border:1px solid var(--bronze);color:var(--ink-text);resize:none;background:#ffffff0d;outline:none;flex:1;padding:.65rem .78rem;font-size:1rem;font-style:italic}.composer-expanded .input-submit{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--gold);border:1px solid var(--gold-soft);cursor:pointer;background:0 0;min-height:44px;padding:.7rem .78rem;font-size:.5rem}.composer-expanded .input-submit:active{background:#c9952a1f}@media (width<=720px){.choice-button{padding:.6rem .6rem .6rem .85rem;font-size:.95rem}.util-btn{min-width:44px;min-height:44px}.input-textarea{min-height:44px;font-size:1rem}}.sticky-bar{z-index:6;-webkit-backdrop-filter:blur(6px);background:#14110deb;flex-direction:column;display:flex;position:sticky;top:0}.sticky-bar:after{content:"";background:linear-gradient(90deg,#0000 0%,#8b73550d 4%,#8b735566 35%,#8b73558c 50%,#8b735559 70%,#8b735514 92%,#0000 100%);height:1px;position:absolute;bottom:0;left:0;right:0}.sticky-bar .sticky-row{box-sizing:border-box;align-items:center;gap:.85rem;width:100%;padding:.55rem 1.8rem;display:flex}.sticky-bar .player-anchor{color:inherit;cursor:pointer;font:inherit;background:0 0;border:1px solid #0000;flex-shrink:0;align-items:center;gap:.55rem;padding:.35rem .7rem .35rem .5rem;transition:background .13s,border-color .13s;display:inline-flex;position:relative}.sticky-bar .player-anchor:hover{border-color:var(--ink-edge);background:#ffffff06}.sticky-bar .disc{border:1px solid var(--bronze);width:26px;height:26px;font-family:var(--font-display);color:var(--gold);background:radial-gradient(circle at 35% 30%,#3a2f22 0%,#1a1410 80%);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.78rem;display:none}.sticky-bar .pa-name{font-family:var(--font-display);color:var(--ink-text);white-space:nowrap;text-overflow:ellipsis;font-size:1.05rem;font-style:italic;line-height:1;overflow:hidden}.sticky-bar .st-han{font-family:var(--font-display);color:var(--gold);opacity:.85;flex-shrink:0;font-size:.92rem;font-style:italic}.sb-combat-pill{font-family:var(--font-display);color:var(--crimson);opacity:.9;flex-shrink:0;font-size:.88rem}.sb-spacer{flex:1}.sticky-bar .st-meters{flex-shrink:0;gap:.9rem;display:flex}.sticky-bar .st-meter{flex-direction:column;align-items:flex-end;gap:3px;display:flex}.sticky-bar .st-lbl{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-ghost);font-size:.42rem}.sticky-bar .st-bar{background:var(--ink-edge);width:60px;height:2px;position:relative}.sticky-bar .st-fill{transition:width .3s;position:absolute;top:0;bottom:0;left:0}.sticky-bar .st-fill.qi{background:linear-gradient(90deg, var(--jade) 0%, #4a9e6e4d 100%)}.sticky-bar .st-fill.stm{background:linear-gradient(90deg, var(--bronze) 0%, #8b73554d 100%)}.sticky-bar .st-utils{flex-shrink:0;display:flex}.sticky-bar .sticky-quest{color:inherit;font:inherit;cursor:pointer;text-align:left;-webkit-tap-highlight-color:transparent;background:0 0;border:none;align-items:baseline;gap:.5rem;width:100%;padding:.32rem .85rem .42rem;display:flex;position:relative}.sticky-bar .sticky-quest:after{content:"";background:linear-gradient(90deg,#0000 0%,#8b735533 10%,#8b735580 50%,#8b735533 90%,#0000 100%);height:1px;position:absolute;bottom:0;left:0;right:0}.sticky-bar .sticky-quest:active{background:#c9952a0f}.sticky-bar .quest-eyebrow{font-family:var(--font-mono);letter-spacing:.24em;text-transform:uppercase;color:var(--gold);opacity:.85;flex-shrink:0;font-size:.42rem}.sticky-bar .quest-title{font-family:var(--font-display);color:var(--ink-warm);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.82rem;font-style:italic;line-height:1.2;overflow:hidden}.sticky-bar .ledger-chev{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-ghost);flex-shrink:0;font-size:.46rem}@media (width<=767px){.sticky-bar .sticky-row{gap:.5rem;padding:.42rem .8rem;position:relative}.sticky-bar .sticky-row:after{content:"";background:linear-gradient(90deg,#0000 0%,#8b73552e 10%,#8b735566 50%,#8b73552e 90%,#0000 100%);height:1px;position:absolute;bottom:0;left:0;right:0}.sticky-bar .player-anchor{flex:1;min-width:0;padding:.25rem .4rem .25rem .25rem}.sticky-bar .player-anchor:active{border-color:var(--ink-edge);background:#ffffff0a}.sticky-bar .disc{display:inline-flex}.sticky-bar .pa-name{font-size:.95rem}.sticky-bar .st-han{margin-right:2px}.sticky-bar .st-meters{gap:.4rem}.sticky-bar .st-meter{gap:2px}.sticky-bar .st-lbl{letter-spacing:.2em;font-size:.38rem}.sticky-bar .st-bar{width:32px}.sticky-bar .st-utils{gap:.1rem}}.verb-ladder{flex-direction:column;gap:6px;display:flex}.vl-verb-row{flex-wrap:wrap;gap:6px;display:flex}.vl-verb-chip{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;border:1px solid var(--ink-edge);border-left:3px solid var(--ink-ghost);min-height:36px;color:var(--ink-text);cursor:pointer;background:0 0;flex:none;padding:.45rem .75rem;font-size:.56rem;font-weight:700;transition:background .13s,color .13s,border-color .13s}.vl-verb-chip:hover:not([disabled]):not([data-active=true]){border-color:var(--bronze);background:#ffffff0a}.vl-verb-chip[disabled]{opacity:.4;cursor:not-allowed}.vl-verb-chip[data-intent=friendly]{border-left-color:var(--jade);color:var(--jade)}.vl-verb-chip[data-intent=hostile]{border-left-color:var(--crimson);color:var(--crimson)}.vl-verb-chip[data-intent=inspect]{border-left-color:var(--bronze);color:var(--bronze)}.vl-verb-chip[data-intent=significant]{border-left-color:var(--gold);color:var(--gold)}.vl-verb-chip[data-active=true][data-intent=friendly]{border-color:var(--jade);color:var(--jade);background:#4a9e6e1a}.vl-verb-chip[data-active=true][data-intent=hostile]{border-color:var(--crimson);color:var(--crimson);background:#c0392b1a}.vl-verb-chip[data-active=true][data-intent=inspect]{border-color:var(--bronze);color:var(--bronze);background:#8b73551a}.vl-verb-chip[data-active=true][data-intent=significant]{border-color:var(--gold);color:var(--gold);background:#c9952a1a}.vl-verb-chip[data-all-gated=true]{opacity:.5}.vl-target-row{flex-wrap:wrap;align-items:center;gap:6px;min-height:34px;display:flex}.vl-target-chip{font-family:var(--font-body);border:1px solid var(--ink-edge);min-height:34px;color:var(--ink-text);cursor:pointer;background:#ffffff08;flex:none;padding:.4rem .75rem;font-size:.88rem;font-style:italic;transition:background .13s,color .13s,border-color .13s;animation:.18s cubic-bezier(.2,.7,.2,1) vl-target-in}@keyframes vl-target-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.vl-target-chip:hover:not([disabled]){border-color:var(--gold-soft);background:#c9952a14}.vl-target-chip[data-intent=friendly]{color:var(--jade);border-color:#4a9e6e80}.vl-target-chip[data-intent=hostile]{color:var(--crimson);border-color:#c0392b8c}.vl-target-chip[data-intent=inspect]{color:var(--ink-warm);border-color:#8b73558c}.vl-target-chip[data-intent=significant]{color:var(--gold);border-color:#c9952a8c}.vl-target-chip[data-gated=true],.vl-target-chip[disabled]{opacity:.4;cursor:not-allowed}.verb-ladder--combat .vl-verb-chip{min-height:32px;padding:.35rem .65rem}.vl-empty-line{font-family:var(--font-serif);color:var(--ink-ghost);font-size:.88rem;font-style:italic}.vl-more-pill{display:none}@media (width<=767px){.vl-verb-chip{letter-spacing:.22em;-webkit-tap-highlight-color:transparent;flex:1 1 0;justify-content:center;min-width:0;min-height:38px;padding:.48rem .78rem;font-size:.56rem}.vl-verb-row{flex-wrap:nowrap}.vl-more-pill{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;border:1px solid var(--ink-edge);border-left:3px solid var(--bronze);min-height:38px;color:var(--ink-muted);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;flex:none;align-items:center;gap:6px;padding:.48rem .7rem;font-size:.54rem;font-weight:700;transition:background .13s,color .13s,border-color .13s;display:inline-flex}.vl-more-pill:active{color:var(--ink-text);border-color:var(--bronze);background:#ffffff0a}.vl-more-pill[disabled]{opacity:.4;cursor:not-allowed}.vl-more-pill__han{font-family:var(--font-display);letter-spacing:0;color:var(--gold);font-size:.78rem;font-weight:400}.vl-more-pill__count{font-family:var(--font-mono);color:var(--ink-ghost);letter-spacing:.04em;font-size:.5rem;font-weight:400}.verb-ladder--idle .vl-verb-row .vl-verb-chip:nth-of-type(n+4){display:none}}@media (width>=768px){.td-backdrop,.td-drawer{display:none}}.td-backdrop{z-index:22;opacity:0;pointer-events:none;background:#08070a8c;transition:opacity .2s;position:fixed;inset:0}.td-backdrop--visible{opacity:1;pointer-events:auto}.td-drawer{z-index:23;border-top:1px solid var(--bronze);-webkit-overflow-scrolling:touch;background:#14110dfc;max-height:76vh;padding:.55rem 1rem 1.1rem;transition:transform .26s cubic-bezier(.2,.7,.2,1);position:fixed;bottom:0;left:0;right:0;overflow-y:auto;transform:translateY(100%);box-shadow:0 -10px 32px #0009}.td-drawer--visible{transform:translateY(0)}@media (prefers-reduced-motion:reduce){.td-backdrop,.td-drawer{transition:none}}.td-grip{background:var(--bronze);opacity:.55;border-radius:2px;width:42px;height:4px;margin:0 auto .8rem}.td-head{align-items:baseline;gap:.6rem;margin-bottom:.7rem;display:flex}.td-head__han{font-family:var(--font-display);color:var(--ink-text);font-size:1.3rem;font-style:italic;line-height:1}.td-head__en{font-family:var(--font-mono);letter-spacing:.24em;text-transform:uppercase;color:var(--ink-muted);font-size:.5rem}.td-head__meta{font-family:var(--font-serif);color:var(--ink-ghost);margin-left:auto;font-size:.74rem;font-style:italic}.td-head[data-verb=speak] .td-head__han{color:var(--jade)}.td-head[data-verb=confront] .td-head__han{color:var(--crimson)}.td-head[data-verb=inspect] .td-head__han{color:var(--bronze)}.td-head[data-verb=trade] .td-head__han{color:var(--jade)}.td-head[data-verb=inscribe] .td-head__han{color:var(--gold)}.td-head[data-verb=examine] .td-head__han,.td-head[data-verb=gather] .td-head__han{color:var(--bronze)}.td-head[data-verb=cultivate] .td-head__han{color:var(--gold)}.td-head[data-verb=rest] .td-head__han{color:var(--bronze)}.td-head--all .td-head__han{color:var(--gold)}.td-list{flex-direction:column;gap:.35rem;display:flex}.td-target-btn{font-family:var(--font-serif);color:var(--ink-text);border:1px solid var(--ink-edge);border-left:3px solid var(--ink-ghost);cursor:pointer;text-align:left;-webkit-tap-highlight-color:transparent;background:#ffffff06;align-items:baseline;gap:.6rem;width:100%;min-height:48px;padding:.7rem .82rem;font-size:1rem;font-style:italic;transition:background .13s,border-color .13s;animation:.2s cubic-bezier(.2,.7,.2,1) backwards td-target-in;display:flex}@keyframes td-target-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.td-target-btn:first-child{animation-delay:30ms}.td-target-btn:nth-child(2){animation-delay:60ms}.td-target-btn:nth-child(3){animation-delay:90ms}.td-target-btn:nth-child(4){animation-delay:.12s}.td-target-btn:nth-child(5){animation-delay:.15s}.td-target-btn:active{border-color:var(--gold);background:#c9952a14}.td-target-btn[data-gated=true],.td-target-btn[disabled]{opacity:.4;cursor:not-allowed}.td-target-btn--speak{border-left-color:var(--jade)}.td-target-btn--confront{border-left-color:var(--crimson)}.td-target-btn--inspect{border-left-color:var(--bronze)}.td-target-btn--read{border-left-color:var(--gold)}.td-target-btn--trade{border-left-color:var(--jade)}.td-target-btn--inscribe{border-left-color:var(--gold)}.td-target-btn--examine,.td-target-btn--gather{border-left-color:var(--bronze)}.td-target-btn--cultivate{border-left-color:var(--gold)}.td-target-btn--rest{border-left-color:var(--bronze)}.td-target-btn__label{flex:1}.td-empty-state{font-family:var(--font-serif);color:var(--ink-ghost);text-align:center;padding:1.5rem .5rem;font-size:.9rem;font-style:italic}.td-accordion{flex-direction:column;gap:.4rem;display:flex}.td-acc-row{flex-direction:column;animation:.2s cubic-bezier(.2,.7,.2,1) backwards td-target-in;display:flex}.td-acc-row:first-child{animation-delay:30ms}.td-acc-row:nth-child(2){animation-delay:60ms}.td-acc-row:nth-child(3){animation-delay:90ms}.td-acc-row:nth-child(4){animation-delay:.12s}.td-acc-row:nth-child(5){animation-delay:.15s}.td-acc-btn{font-family:var(--font-display);color:var(--ink-text);border:1px solid var(--ink-edge);border-left:3px solid var(--ink-ghost);cursor:pointer;text-align:left;-webkit-tap-highlight-color:transparent;background:#ffffff06;align-items:baseline;gap:.7rem;width:100%;min-height:50px;padding:.7rem .85rem;font-size:1.15rem;font-style:italic;transition:background .13s,border-color .13s;display:flex}.td-acc-btn:active{border-color:var(--gold);background:#c9952a14}.td-acc-row--expanded .td-acc-btn{border-color:var(--gold);background:#c9952a0f}.td-acc-btn--speak{border-left-color:var(--jade)}.td-acc-btn--confront{border-left-color:var(--crimson)}.td-acc-btn--inspect{border-left-color:var(--bronze)}.td-acc-btn--read{border-left-color:var(--gold)}.td-acc-btn--trade{border-left-color:var(--jade)}.td-acc-btn--inscribe{border-left-color:var(--gold)}.td-acc-btn--examine,.td-acc-btn--gather{border-left-color:var(--bronze)}.td-acc-btn--cultivate{border-left-color:var(--gold)}.td-acc-btn--rest{border-left-color:var(--bronze)}.td-acc-btn__han{font-family:var(--font-display);text-align:center;flex-shrink:0;width:22px;font-size:1.15rem;font-style:italic;line-height:1}.td-acc-btn--speak .td-acc-btn__han{color:var(--jade)}.td-acc-btn--confront .td-acc-btn__han{color:var(--crimson)}.td-acc-btn--inspect .td-acc-btn__han{color:var(--bronze)}.td-acc-btn--read .td-acc-btn__han{color:var(--gold)}.td-acc-btn--trade .td-acc-btn__han{color:var(--jade)}.td-acc-btn--inscribe .td-acc-btn__han{color:var(--gold)}.td-acc-btn--examine .td-acc-btn__han,.td-acc-btn--gather .td-acc-btn__han{color:var(--bronze)}.td-acc-btn--cultivate .td-acc-btn__han{color:var(--gold)}.td-acc-btn--rest .td-acc-btn__han{color:var(--bronze)}.td-acc-btn__label{flex:1}.td-acc-btn__count{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-ghost);flex-shrink:0;font-size:.5rem}.td-acc-btn__chev{font-family:var(--font-mono);color:var(--ink-muted);flex-shrink:0;font-size:.7rem;transition:transform .2s}.td-acc-row--expanded .td-acc-btn__chev{transform:rotate(180deg)}.td-acc-targets{grid-template-rows:0fr;transition:grid-template-rows .24s cubic-bezier(.2,.7,.2,1);display:grid}.td-acc-row--expanded .td-acc-targets{grid-template-rows:1fr}.td-acc-targets__inner{flex-direction:column;gap:.3rem;min-height:0;display:flex;overflow:hidden}.td-acc-row--expanded .td-acc-targets__inner{padding:.5rem 0 .2rem}.modal-backdrop{z-index:50;background:#000000b8;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-panel{background:var(--bg-panel);border:1px solid var(--border-panel);width:90vw;min-width:340px;max-width:500px;font-family:var(--font-mono);color:var(--text);max-height:90vh;padding:1.5rem;font-size:.875rem;overflow-y:auto}.modal-panel--wide{max-width:520px}.cs-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:1.25rem;padding-bottom:.75rem;display:flex}.cs-player-name{letter-spacing:.08em;color:var(--accent);font-size:1rem;font-weight:400}.cs-close{color:var(--text-muted);cursor:pointer;font-size:1rem;font-family:var(--font-mono);background:0 0;border:none;padding:.25rem;transition:color .15s}.cs-close:hover{color:var(--text)}.cs-section{margin-bottom:1rem}.cs-section-title{color:var(--text-muted);letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid var(--border);margin-bottom:.4rem;padding-bottom:3px;font-size:.68rem}.cs-row{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:3px;display:flex}.cs-row-label{color:var(--text-dim)}.cs-row-value{color:var(--text);align-items:center;gap:.5rem;display:flex}.cs-bracket{color:var(--text-bracket);font-style:italic}.cs-dao-axes{flex-wrap:wrap;gap:1rem;margin-bottom:.35rem;display:flex}.cs-dao-label{color:var(--text-dao);font-style:italic}.cs-archetype{color:var(--text-muted);font-size:.82rem}.cs-scars{margin-top:.4rem}.cs-scar{color:var(--text-scar);border-left:2px solid #b43c3c66;margin-bottom:2px;padding-left:.5rem;font-size:.82rem}.cs-inventory-empty{color:var(--text-muted);padding:.15rem 0;font-size:.82rem;font-style:italic}.inventory-weapon-error{color:var(--error);margin-top:.1rem;font-size:.75rem;font-style:italic}.character-sheet-reset{border-top:1px solid var(--border);margin-top:1.25rem;padding-top:1rem}.character-sheet-reset-btn{border:1px solid var(--border);color:var(--text-muted);font-family:var(--font-mono);letter-spacing:.04em;cursor:pointer;background:0 0;margin-top:.4rem;padding:.3rem .65rem;font-size:.78rem;transition:border-color .15s,color .15s}.character-sheet-reset-btn:hover{border-color:var(--error);color:var(--error)}.merchant-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:1rem;padding:.5rem 0;display:flex}.merchant-row:last-child{border-bottom:none}.merchant-row-info{flex-direction:column;flex:1;gap:.2rem;min-width:0;display:flex}.merchant-row-name{color:var(--text)}.merchant-row-desc{color:var(--text-muted);font-size:.78rem;font-style:italic;line-height:1.4}.merchant-row-meta{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:.3rem;display:flex}.merchant-row-stock{color:var(--text-muted);font-size:.78rem}.merchant-row-price{color:var(--text-dim);font-size:.82rem}.merchant-buy-button{border:1px solid var(--accent);color:var(--accent);font-family:var(--font-mono);cursor:pointer;letter-spacing:.04em;white-space:nowrap;background:0 0;padding:.25rem .75rem;font-size:.75rem;transition:all .15s}.merchant-buy-button:hover:not(:disabled){background:var(--accent);color:var(--bg)}.merchant-buy-button:disabled{opacity:.4;cursor:not-allowed;border-color:var(--border);color:var(--text-muted)}.merchant-narration-hint{min-height:1.4em;margin-top:.75rem}.merchant-narration{color:var(--text-muted);font-size:.82rem;font-style:italic}.merchant-empty{color:var(--text-muted);padding:.15rem 0;font-size:.82rem;font-style:italic}.settings-overlay{z-index:50;background:#000000b8;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.settings-panel{background:var(--bg-panel);border:1px solid var(--border-panel);width:88vw;min-width:300px;max-width:400px;font-family:var(--font-mono);color:var(--text);padding:1.25rem;font-size:.875rem}.settings-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;display:flex}.settings-title{letter-spacing:.08em;color:var(--text-muted);font-size:.82rem}.settings-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0 .25rem;font-size:.9rem;line-height:1;transition:color .15s}.settings-close:hover{color:var(--text)}.settings-body{flex-direction:column;gap:.75rem;display:flex}.settings-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.settings-label{color:var(--text);cursor:default;font-size:.82rem}.settings-toggle{border:1px solid var(--border);font-family:var(--font-mono);cursor:pointer;letter-spacing:.04em;text-align:center;background:0 0;min-width:5rem;padding:.25rem .75rem;font-size:.75rem;transition:all .15s}.settings-toggle--on{border-color:var(--accent);color:var(--accent)}.settings-toggle--off{border-color:var(--border);color:var(--text-muted)}.settings-error{color:var(--error);font-size:.78rem;font-style:italic}.csv-overlay{z-index:60;color:var(--ink-text);font-family:var(--font-serif);background:radial-gradient(80% 60% at 50% 0,#08070af2 0%,#0000 70%),#181510fa;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.csv-tabbar{z-index:10;background:#16130ff5;flex-shrink:0;align-items:stretch;gap:0;padding:0 1.5rem 0 1rem;display:flex;position:sticky;top:0}.csv-tabbar:after{content:"";background:linear-gradient(90deg,#0000 0%,#8b735533 8%,#8b735580 50%,#8b735533 92%,#0000 100%);height:1px;position:absolute;bottom:0;left:0;right:0}.csv-player-name{font-family:var(--font-display);color:var(--ink-text);flex-shrink:0;align-items:baseline;gap:.55rem;min-height:48px;padding:.35rem .9rem .35rem .5rem;font-size:1.05rem;font-style:italic;line-height:1;display:inline-flex}.csv-divider{background:var(--ink-edge);flex-shrink:0;align-self:stretch;width:1px;margin:.4rem}.csv-tabs{flex:1;align-items:stretch;min-width:0;display:flex}.csv-tab{min-height:48px;color:var(--ink-muted);font-family:var(--font-mono);letter-spacing:.24em;text-transform:uppercase;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:baseline;gap:.55rem;padding:.55rem 1.2rem .65rem;font-size:.55rem;transition:color .13s,border-bottom-color .13s;display:inline-flex}.csv-tab:hover{color:var(--ink-warm)}.csv-tab[aria-selected=true]{color:var(--gold);border-bottom-color:var(--gold)}.csv-close{border:1px solid var(--ink-edge);width:36px;height:36px;color:var(--ink-muted);font-family:var(--font-mono);cursor:pointer;background:0 0;flex-shrink:0;justify-content:center;align-self:center;align-items:center;margin-left:auto;font-size:1.15rem;transition:color .13s,border-color .13s;display:inline-flex}.csv-close:hover{color:var(--ink-text);border-color:var(--bronze)}.csv-body{scrollbar-width:thin;scrollbar-color:var(--ink-edge) transparent;flex:1;overflow-y:auto}.csv-body::-webkit-scrollbar{width:6px}.csv-body::-webkit-scrollbar-thumb{background:var(--ink-edge);border-radius:3px}.csv-panel{flex-direction:column;display:flex}.csv-panel[hidden]{display:none}.csv-sheet{grid-template-columns:1fr 1fr;grid-auto-rows:min-content;gap:1.6rem 2.4rem;width:100%;max-width:900px;margin:0 auto;padding:1.6rem 2rem 2.4rem;display:grid}.csv-section{flex-direction:column;gap:.5rem;display:flex}.csv-section-title{font-family:var(--font-mono);letter-spacing:.3em;text-transform:uppercase;color:var(--ink-muted);border-bottom:1px solid #8b735540;align-items:baseline;gap:.5rem;margin-bottom:.2rem;padding-bottom:.3rem;font-size:.52rem;display:flex}.csv-row{border-bottom:1px solid #8b73551a;grid-template-columns:1fr auto;align-items:baseline;gap:.5rem 1rem;padding:.36rem 0;display:grid}.csv-row:last-child{border-bottom:0}.csv-row-label{font-family:var(--font-display);color:var(--ink-text);font-size:.95rem}.csv-row-value{font-family:var(--font-mono);color:var(--ink-warm);white-space:nowrap;align-items:baseline;gap:.45rem;font-size:.78rem;display:flex}.csv-bracket{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-muted);white-space:nowrap;font-size:.52rem}.csv-dao-axes{font-family:var(--font-display);color:var(--ink-text);flex-direction:column;gap:.4rem;font-size:.95rem;display:flex}.csv-dao-label{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-muted);margin-left:.55rem;font-size:.5rem}.csv-archetype{font-family:var(--font-display);color:var(--ink-muted);margin-top:.4rem;font-size:.9rem;font-style:italic}.csv-scars{flex-direction:column;gap:.3rem;margin-top:.5rem;display:flex}.csv-scar{font-family:var(--font-serif);color:var(--crimson);padding:.2rem 0;font-size:.82rem;font-style:italic}.csv-equip{flex-direction:column;gap:1.4rem;width:100%;max-width:680px;margin:0 auto;padding:1.6rem 2rem 2.4rem;display:flex}.csv-section-head{font-family:var(--font-mono);letter-spacing:.3em;text-transform:uppercase;color:var(--ink-muted);border-bottom:1px solid #8b735540;margin-bottom:.4rem;padding-bottom:.3rem;font-size:.52rem;font-weight:400}.csv-slot{border:1px solid #8b735533;border-left:3px solid var(--ink-edge);background:#ffffff06;grid-template-columns:120px 1fr;align-items:baseline;gap:.5rem .8rem;padding:.8rem 1rem;display:grid}.csv-slot--inert{opacity:.55;border-style:dashed}.csv-slot-label{font-family:var(--font-mono);letter-spacing:.26em;text-transform:uppercase;color:var(--ink-muted);font-size:.52rem}.csv-slot-empty{font-family:var(--font-serif);color:var(--ink-ghost);font-size:.82rem;font-style:italic}.csv-slot-item{font-family:var(--font-display);color:var(--ink-text);flex-wrap:wrap;align-items:baseline;gap:.55rem;font-size:1rem;display:flex}.csv-slot-meta{font-family:var(--font-mono);letter-spacing:.14em;color:var(--ink-muted);font-size:.55rem}.csv-inventory{flex-direction:column;gap:1.4rem;width:100%;max-width:680px;margin:0 auto;padding:1.6rem 2rem 2.4rem;display:flex}.csv-empty{font-family:var(--font-serif);color:var(--ink-ghost);padding:.4rem 0;font-size:.88rem;font-style:italic}.csv-inv-list{flex-direction:column;gap:.2rem;margin-bottom:.6rem;list-style:none;display:flex}.csv-inv-row{border-bottom:1px solid #8b73551a;grid-template-columns:1fr auto;align-items:center;gap:.5rem .8rem;padding:.55rem .8rem;display:grid}.csv-inv-row:last-child{border-bottom:0}.csv-inv-info{flex-direction:column;gap:.18rem;min-width:0;display:flex}.csv-inv-name{font-family:var(--font-display);color:var(--ink-text);font-size:.95rem}.csv-inv-count{font-family:var(--font-mono);color:var(--ink-muted);margin-left:.35rem;font-size:.65rem}.csv-inv-desc{font-family:var(--font-serif);color:var(--ink-muted);font-size:.78rem;font-style:italic}.csv-inv-use{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--jade);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #4a9e6e66;min-height:30px;padding:.35rem .65rem;font-size:.52rem;transition:color .13s,border-color .13s,background .13s}.csv-inv-use:hover:not(:disabled){color:var(--jade);border-color:var(--jade);background:#4a9e6e14}.csv-inv-use:disabled{opacity:.38;cursor:not-allowed}.csv-inv-error{font-family:var(--font-mono);color:var(--crimson);margin-top:.15rem;font-size:.62rem}.csv-reset{border-top:1px solid #8b735533;flex-direction:column;grid-column:1/-1;gap:.7rem;margin-top:.2rem;padding-top:1.2rem;display:flex}.csv-reset-btn{font-family:var(--font-mono);letter-spacing:.24em;text-transform:uppercase;color:var(--ink-muted);border:1px solid var(--ink-edge);cursor:pointer;background:0 0;align-self:flex-start;align-items:center;gap:.5rem;min-height:34px;padding:.55rem .9rem;font-size:.54rem;transition:color .13s,border-color .13s;display:inline-flex}.csv-reset-btn:hover{color:var(--ink-text);border-color:var(--bronze)}.csv-reset-confirm{flex-direction:column;gap:.6rem;display:flex}.csv-reset-text{font-family:var(--font-serif);color:var(--ink-muted);max-width:44ch;font-size:.84rem;font-style:italic}.csv-reset-error{font-family:var(--font-mono);color:var(--crimson);font-size:.62rem}.csv-reset-actions{gap:.55rem;display:flex}.csv-reset-accept{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--crimson);cursor:pointer;background:0 0;border:1px solid #c0392b80;min-height:32px;padding:.5rem .85rem;font-size:.54rem;transition:color .13s,border-color .13s,background .13s}.csv-reset-accept:hover:not(:disabled){border-color:var(--crimson);background:#c0392b1a}.csv-reset-accept:disabled{opacity:.4;cursor:not-allowed}.csv-reset-cancel{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-muted);border:1px solid var(--ink-edge);cursor:pointer;background:0 0;min-height:32px;padding:.5rem .85rem;font-size:.54rem;transition:color .13s,border-color .13s}.csv-reset-cancel:hover:not(:disabled){color:var(--ink-text);border-color:var(--bronze)}.csv-reset-cancel:disabled{opacity:.4;cursor:not-allowed}@media (width<=720px){.csv-tabbar{padding:0 .6rem 0 .5rem}.csv-player-name{padding:.3rem .6rem .3rem .3rem;font-size:.9rem}.csv-tab{letter-spacing:.18em;padding:.4rem .7rem .5rem;font-size:.5rem}.csv-sheet{grid-template-columns:1fr;gap:1.2rem;padding:1.2rem 1rem 2rem}.csv-reset{grid-column:1}.csv-equip,.csv-inventory{padding:1.2rem 1rem 2rem}}.settings-overlay{z-index:60;-webkit-backdrop-filter:blur(2px);background:#08070ab3;justify-content:flex-end;align-items:flex-start;display:flex;position:fixed;inset:0}.settings-panel{background:var(--washed-2);border:1px solid var(--ink-edge);scrollbar-width:thin;scrollbar-color:var(--ink-edge) transparent;border-top:none;flex-direction:column;width:320px;max-width:92vw;min-height:180px;max-height:90vh;display:flex;overflow-y:auto;box-shadow:-4px 4px 32px #0000008c}.settings-header{border-bottom:1px solid var(--ink-edge);flex-shrink:0;justify-content:space-between;align-items:center;padding:.7rem 1rem;display:flex}.settings-title{font-family:var(--font-mono);letter-spacing:.28em;text-transform:uppercase;color:var(--ink-muted);font-size:.54rem}.settings-close{border:1px solid var(--ink-edge);width:28px;height:28px;color:var(--ink-muted);font-family:var(--font-mono);cursor:pointer;background:0 0;flex-shrink:0;justify-content:center;align-items:center;font-size:.9rem;transition:color .13s,border-color .13s;display:inline-flex}.settings-close:hover{color:var(--ink-text);border-color:var(--bronze)}.settings-body{flex-direction:column;flex:1;gap:.2rem;padding:.6rem 0;display:flex}.settings-row{border-bottom:1px solid #2a251f99;justify-content:space-between;align-items:center;gap:.8rem;padding:.6rem 1rem;display:flex}.settings-label{font-family:var(--font-serif);color:var(--ink-text);cursor:pointer;font-size:.88rem}.settings-toggle{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;border:1px solid var(--ink-edge);cursor:pointer;text-align:center;background:0 0;min-width:64px;min-height:28px;padding:.3rem .65rem;font-size:.52rem;transition:color .13s,border-color .13s,background .13s}.settings-toggle--on{color:var(--jade);border-color:#4a9e6e73}.settings-toggle--on:hover{border-color:var(--jade);background:#4a9e6e14}.settings-toggle--off{color:var(--ink-muted);border-color:var(--ink-edge)}.settings-toggle--off:hover{color:var(--ink-warm);border-color:var(--bronze)}.settings-toggle:disabled{opacity:.4;cursor:not-allowed}.settings-error{font-family:var(--font-mono);color:var(--crimson);padding:.4rem 1rem;font-size:.62rem}[data-mode=combat].game-layout:before{content:"";pointer-events:none;z-index:0;background:linear-gradient(270deg,#7a21170f 0%,#0000 100%);width:80px;height:100%;position:fixed;top:0;right:0}[data-mode=combat].game-layout:after{content:"";background:var(--crimson-deep,#7a2117);z-index:10;pointer-events:none;height:1px;position:fixed;top:0;left:0;right:0}.opponent-line{background:var(--washed-3,#15130f);border-bottom:1px solid var(--ink-edge,#2a251f);align-items:center;gap:.6rem;min-height:32px;padding:.35rem 1.4rem;display:flex}.opponent-line-prefix{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-ghost,#5e5648);flex-shrink:0;font-size:.5rem}.opponent-line-name{font-family:var(--font-display);flex-shrink:0;font-size:.9rem;font-weight:400}.opponent-line-br{font-family:var(--font-mono);color:var(--ink-warm,#c4b890);flex-shrink:0;font-size:.72rem}.opponent-line-bar-wrap{background:var(--ink-edge,#2a251f);flex:1;max-width:120px;height:2px;position:relative}.opponent-line-bar-fill{background:currentColor;transition:width .3s;position:absolute;top:0;bottom:0;left:0}.opponent-line-stack{z-index:5;background:var(--washed-3,#15130f);border-bottom:1px solid var(--ink-edge,#2a251f);flex-direction:column;flex-shrink:0;gap:.2rem;padding:.25rem 1.4rem;display:flex;position:sticky;top:66px}.threat-slate{color:var(--threat-slate,#7b8fa6)}.threat-teal{color:var(--threat-teal,#2ec4b6)}.threat-green{color:var(--threat-green,#4a9e6e)}.threat-amber{color:var(--threat-amber,#c9952a)}.threat-crimson{color:var(--threat-crimson,#c0392b)}@media (width<=720px){.opponent-line-stack{top:62px}}.cl-hud{background:var(--washed-3,#15130f);border-bottom:1px solid var(--ink-edge);font-family:var(--font-mono);z-index:4;flex-shrink:0;position:sticky;top:113px;overflow:hidden}.cl-hud-header{scrollbar-width:none;align-items:center;gap:.5rem;min-height:20px;padding:.3rem 1.2rem .2rem;display:flex;overflow-x:auto}.cl-hud-header::-webkit-scrollbar{display:none}.cl-round-chip{letter-spacing:.15em;color:var(--gold-warm,#a37b22);cursor:pointer;white-space:nowrap;background:#a37b2214;border:1px solid #a37b222e;flex-shrink:0;padding:.15rem .45rem;font-size:.6rem;transition:border-color .12s}.cl-round-chip:hover{border-color:var(--gold-warm)}.cl-roster{border-bottom:1px solid #2a251f99;flex-direction:column;gap:.1rem;padding:.2rem 1.2rem .15rem;list-style:none;display:flex}.cl-roster-row{color:var(--ink-muted);align-items:center;gap:.35rem;min-height:14px;font-size:.65rem;display:flex}.cl-roster-lane{color:var(--ink-ghost);flex-shrink:0;width:52px}.cl-roster-name{color:var(--ink-warm)}.cl-roster-name[data-acted=true]{opacity:.4;text-decoration:line-through}.cl-roster-intent{color:var(--gold-soft,#876820);margin-left:.2rem;font-size:.6rem}.cl-rows{scrollbar-width:thin;scrollbar-color:var(--ink-edge) transparent;max-height:calc(40vh - 120px);overflow-y:auto}.cl-overflow-chip{color:var(--ink-ghost);cursor:pointer;padding:.2rem 1.2rem;font-size:.58rem}.cl-overflow-chip:hover{color:var(--ink-muted)}.cl-row{border-bottom:1px solid #2a251f66;border-left:2px solid #0000;flex-direction:column;gap:.25rem;padding:.55rem 1.2rem;transition:opacity .3s;display:flex}.cl-row[data-side=player]{border-left-color:var(--jade)}.cl-row[data-side=ally]{border-left-color:var(--gold)}.cl-row[data-side=enemy]{border-left-color:var(--crimson)}.cl-row[data-side=bystander]{border-left-color:var(--slate,oklch(62% .05 240))}.cl-row[data-side=environment]{border-left-color:var(--ash,oklch(55% .01 30))}.cl-row[data-mode=history]{padding:.28rem 1rem}.cl-row[data-state=skeleton]{opacity:.55}.cl-hud[data-lifecycle=resolving][data-direction=defeat]{opacity:.5;filter:grayscale(.4)}.cl-hud[data-lifecycle=resolving][data-direction=victory],.cl-hud[data-lifecycle=resolving][data-direction=fled]{opacity:.6}.cl-row-head{color:var(--ink-text);flex-wrap:wrap;align-items:baseline;gap:.3rem;font-size:.78rem;display:flex}.cl-actor-name{font-size:.82rem;font-weight:400}.cl-actor-name[data-weight=boss]{font-family:var(--font-display);font-size:.9rem}.cl-verb-chip{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);border:1px solid var(--ink-edge);background:#ffffff08;padding:.1rem .35rem;font-size:.62rem}.cl-technique-chip{font-family:var(--font-display);color:var(--ink-warm);font-size:.78rem;font-weight:400}.cl-row[data-mode=history] .cl-technique-chip{font-family:var(--font-serif);font-style:italic}.cl-cost{color:var(--jade-deep,#2f7050);flex-shrink:0;margin-left:auto;font-size:.62rem}.cl-deltas{flex-wrap:wrap;gap:.3rem;font-size:.68rem;display:flex}.cl-delta-br-enemy{color:var(--crimson,#c0392b)}.cl-delta-br-player{color:var(--crimson-hi,#d75341);font-weight:600}.cl-delta-qi-spent{color:var(--jade-deep,#2f7050)}.cl-delta-qi-gained{color:var(--jade-mid,#3f8a60)}.cl-delta-status{color:var(--gold-soft,#876820)}.cl-delta-suffix{font-family:var(--font-display);font-variant-numeric:normal;letter-spacing:normal;color:var(--ink-muted);margin-left:.25em;font-size:.85em}.cl-status-chip{letter-spacing:.08em;border-radius:2px;padding:.08rem .28rem;font-size:.6rem}.cl-status-chip[data-status=staggered]{color:var(--gold-soft);background:#8768202e}.cl-status-chip[data-status=guarded]{color:var(--jade-mid);background:#2f70502e}.cl-status-chip[data-status=wounded]{color:var(--crimson-hi);background:#d753412e}.cl-status-chip[data-status=channeling]{color:var(--ink-muted);background:#968a721f}.cl-outcome-chip{letter-spacing:.12em;text-transform:uppercase;border:1px solid #0000;padding:.1rem .35rem;font-size:.58rem}.cl-outcome-chip[data-outcome=hit]{color:var(--ink-warm);border-color:#c4b89033}.cl-outcome-chip[data-outcome=crit]{color:var(--jade);border-color:#4a9e6e4d}.cl-outcome-chip[data-outcome=miss]{color:var(--ink-ghost)}.cl-outcome-chip[data-outcome=guarded],.cl-outcome-chip[data-outcome=recovered]{color:var(--jade-mid)}.cl-outcome-chip[data-outcome=fled]{color:var(--gold-soft)}.cl-outcome-chip[data-outcome=ko]{color:var(--crimson-hi);border-color:#d753414d}.cl-outcome-chip[data-outcome=evaded],.cl-outcome-chip[data-outcome=no-target]{color:var(--ink-ghost)}.cl-skeleton-slot{background:linear-gradient(90deg, var(--ink-edge) 25%, #2a251f80 50%, var(--ink-edge) 75%);background-size:200% 100%;border-radius:2px;width:60%;height:.75rem;animation:1.4s ease-in-out infinite cl-shimmer}@keyframes cl-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.cl-skeleton-slot{opacity:.4;animation:none}}.cl-sub-rows{padding-left:.8rem}.cl-sub-row{border-left:2px solid #0000;align-items:baseline;gap:.3rem;margin-bottom:.1rem;padding:.2rem .4rem;font-size:.68rem;display:flex}.cl-sub-row[data-side=player]{border-left-color:var(--jade)}.cl-sub-row[data-side=enemy]{border-left-color:var(--crimson)}.cl-sub-row[data-side=ally]{border-left-color:var(--gold)}.cl-sub-row[data-side=bystander]{border-left-color:var(--slate,oklch(62% .05 240))}.cl-history-overlay{z-index:200;justify-content:flex-end;display:flex;position:fixed;inset:0}.cl-history-backdrop{background:#08070a8c;position:absolute;inset:0}.cl-history-panel{background:var(--washed-2,#1a1714);border-left:1px solid var(--ink-edge);flex-direction:column;width:min(400px,90vw);height:100%;transition:transform .25s;display:flex;position:relative;overflow:hidden;transform:translate(0)}.cl-history-panel[data-enter=false]{transform:translate(100%)}@media (prefers-reduced-motion:reduce){.cl-history-panel{transition:none}}.cl-history-head{border-bottom:1px solid var(--ink-edge);flex-shrink:0;justify-content:space-between;align-items:center;padding:1rem 1.2rem .75rem;display:flex}.cl-history-title{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-muted);font-size:.62rem}.cl-history-close{border:1px solid var(--ink-edge);color:var(--ink-ghost);cursor:pointer;background:0 0;min-width:32px;min-height:32px;padding:.3rem .55rem;font-size:.9rem;transition:color .12s,border-color .12s}.cl-history-close:hover{color:var(--ink-text);border-color:var(--ink-muted)}.cl-history-body{flex:1;padding:.5rem 0;overflow-y:auto}@media (width<=767px){.cl-history-panel{border-left:none;width:100vw}}@media (width<=720px){.cl-hud{top:109px}}.cl-round-section{margin-bottom:.5rem}.cl-round-header{cursor:pointer;border-bottom:1px solid #2a251f80;align-items:center;gap:.5rem;padding:.3rem 1.2rem;display:flex}.cl-round-label{font-family:var(--font-mono);letter-spacing:.15em;text-transform:uppercase;color:var(--gold-warm,#a37b22);font-size:.62rem}.cl-round-summary{color:var(--ink-ghost);margin-left:auto;font-size:.6rem}.cl-round-expand{color:var(--ink-ghost);font-size:.7rem}.cl-lost-sync{color:var(--ink-ghost);font-size:.65rem;font-family:var(--font-mono);align-items:center;gap:.5rem;padding:.4rem 1.2rem;display:flex}.cl-lost-sync-dot{background:var(--crimson-hi,#d75341);border-radius:50%;flex-shrink:0;width:6px;height:6px}.player-banner{flex-direction:column;gap:0;padding:2rem 2.4rem 1.6rem;display:flex;position:relative}.player-banner:after{content:"";background:linear-gradient(90deg,#0000 0%,#8b73551a 8%,#8b735547 50%,#8b73551a 92%,#0000 100%);height:1px;position:absolute;bottom:0;left:0;right:0}.banner-eyebrow{font-family:var(--font-mono);letter-spacing:.32em;text-transform:uppercase;color:var(--gold);opacity:.82;margin-bottom:.4rem;font-size:.6rem}.banner-eyebrow .eyebrow-shichen{display:none}.ident-row{align-items:center;gap:.7rem;margin-bottom:.3rem;display:flex}.player-banner .seal-anchor{display:none}.player-banner .banner-name{font-family:var(--font-display);color:var(--ink-text);cursor:pointer;background:0 0;border:none;padding:0;font-size:2.2rem;font-style:italic;font-weight:400;line-height:1.02;transition:opacity .13s;display:inline-block}.player-banner .banner-name:hover{opacity:.82}.pb-brushstroke{width:220px;height:14px;color:var(--ink-muted);flex-shrink:0;margin-bottom:.6rem;display:block}.banner-status{margin-bottom:.75rem}.banner-status .status-dots{font-family:var(--font-body);color:var(--ink-muted);font-size:.78rem;font-style:italic;line-height:1.35;display:none}.banner-status .status-chips{flex-wrap:wrap;gap:.4rem;display:flex}.pb-chip{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;border:1px solid var(--ink-edge);color:var(--ink-muted);padding:.2rem .45rem;font-size:.46rem;line-height:1}.pb-chip--combat{color:var(--crimson);border-color:#c0392b80}.pb-chip--wound{color:var(--crimson-hi);border-color:#c0392b66}.pb-chip--exhaustion{color:var(--bronze);border-color:#8b735566}.pb-chip--qi-low{color:var(--jade-deep);border-color:#2f705066}.pb-chip--neutral{border-color:var(--ink-edge);color:var(--ink-muted)}.pb-vitals{border-top:1px dashed var(--ink-edge);gap:1.4rem;padding-top:.65rem;display:flex}.pb-vital{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.pb-vital-lbl{font-family:var(--font-mono);letter-spacing:.26em;text-transform:uppercase;color:var(--ink-ghost);font-size:.46rem}.pb-vital-bar-wrap{width:100%}.pb-vital-bar{background:var(--ink-edge);width:100%;height:3px;position:relative}.pb-vital-fill{transition:width .4s;position:absolute;top:0;bottom:0;left:0}.pb-vital-fill.qi{background:linear-gradient(90deg, var(--jade) 0%, #4a9e6e4d 100%)}.pb-vital-fill.stm{background:linear-gradient(90deg, var(--bronze) 0%, #8b73554d 100%)}.pb-vital-num{font-family:var(--font-mono);color:var(--ink-warm);font-size:.68rem}.pb-vital-num .of{color:var(--ink-ghost);margin-left:2px;font-size:.5rem}.pb-vital-delta{font-family:var(--font-mono);color:var(--crimson);margin-left:.3rem;font-size:.6rem}@media (width<=767px){.player-banner{padding:1.2rem}.player-banner:after{content:"";pointer-events:none;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 280 14' preserveAspectRatio='none'><defs><filter id='b'><feGaussianBlur stdDeviation='0.3'/></filter></defs><path d='M3,7 Q14,3 32,5 Q58,8 92,4 Q132,1.5 168,5 Q204,8 234,4 Q258,2 270,5.5 Q276,7 277,8 Q272,9 260,8.5 Q224,7 200,8 Q160,9.5 124,8 Q92,7 60,8.5 Q32,9.5 12,8 Q5,7.5 3,7 Z' fill='%23968a72' filter='url(%23b)' opacity='0.5'/></svg>") 0 0/100% 100% no-repeat;height:9px;position:absolute;bottom:.2rem;left:1.2rem;right:1.6rem}.banner-eyebrow{letter-spacing:.28em;opacity:.85;margin-bottom:.5rem;font-size:.48rem}.banner-eyebrow .eyebrow-shichen{display:inline}.banner-eyebrow .han{font-family:var(--font-display);letter-spacing:0;color:var(--gold);vertical-align:-1px;margin-right:5px;font-size:.78rem}.banner-eyebrow .day{color:var(--ink-muted);letter-spacing:.22em;margin-left:6px}.pb-realm-stage{display:none}.ident-row{margin-bottom:.55rem}.player-banner .seal-anchor{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-shrink:0;align-items:center;padding:0;display:inline-flex}.player-banner .seal-anchor .disc{border:1.5px solid var(--bronze);background:radial-gradient(circle at 32% 28%,#45382a 0%,#1a1410 75%,#0c0908 100%);border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;transition:border-color .14s,transform .14s;display:inline-flex;position:relative}.player-banner .seal-anchor .disc:before{content:"";pointer-events:none;border:1px dashed #c9952a4d;border-radius:50%;position:absolute;inset:3px}.player-banner .seal-anchor:active .disc{border-color:var(--gold);transform:scale(.96)}.player-banner .seal-anchor .disc .glyph{font-family:var(--font-display);color:var(--gold);font-size:1.3rem;font-style:italic}.player-banner .banner-name{-webkit-tap-highlight-color:transparent;font-size:1.7rem;line-height:1}.player-banner .banner-name:active,.player-banner .banner-name:hover{color:var(--gold-soft);opacity:1}.pb-brushstroke{display:none}.banner-status .status-dots{display:inline}.banner-status .status-chips{display:none}.banner-status .dot{background:var(--crimson);vertical-align:1px;border-radius:50%;width:5px;height:5px;margin-right:5px;display:inline-block}.banner-status .dot.muted{background:var(--ink-muted)}.banner-status .sep{color:var(--ink-ghost);margin:0 6px}.pb-vitals{gap:1rem;padding-top:.5rem}}.nav-pad-wrap{flex-direction:column;flex-shrink:0;align-self:flex-start;align-items:center;gap:0;width:fit-content;display:flex}.nav-pad{flex-shrink:0;grid-template-rows:32px 32px 32px;grid-template-columns:32px 32px 32px;gap:0;width:96px;display:grid}.nav-btn{border:1px solid var(--ink-edge);color:var(--ink-text);font-family:var(--font-display);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;justify-content:center;align-items:center;padding:0;font-size:1.1rem;line-height:1;transition:background .13s,border-color .13s,color .13s;display:flex}.nav-btn:hover:not([disabled]){border-color:var(--gold-soft);color:var(--gold);background:#c9952a12}.nav-btn:active:not([disabled]){color:var(--gold);border-color:var(--gold-soft);background:#c9952a1a}.nav-btn[disabled]{color:var(--ink-ghost);cursor:default;opacity:.45}.nav-btn[data-locked=true]{color:var(--ink-ghost);opacity:.5}.nav-btn--map{color:var(--bronze);font-size:.95rem}.nav-btn--map:hover:not([disabled]){color:var(--gold)}.nav-cell-empty{width:100%;height:100%;display:block}.nav-vert-row{justify-content:center;width:96px;display:flex}.nav-vert-row .nav-btn{width:32px;height:32px;font-size:1rem}.compass-fab{right:14px;bottom:calc(156px + env(safe-area-inset-bottom));z-index:14;border:1px solid var(--bronze);width:48px;height:48px;color:var(--gold);cursor:pointer;-webkit-tap-highlight-color:transparent;background:#14110df2;border-radius:50%;justify-content:center;align-items:center;transition:transform .2s cubic-bezier(.2,.7,.2,1),background .14s,border-color .14s;display:none;position:fixed;box-shadow:0 4px 14px #00000080}.compass-fab:active{background:#c9952a1f}.compass-fab.expanded{border-color:var(--gold);background:#c9952a2e}.compass-fab .rose{width:26px;height:26px;transition:opacity .2s}.compass-fab .rose path{fill:currentColor;opacity:.7}.compass-fab .rose circle{fill:none;stroke:currentColor;stroke-width:.8px;opacity:.7}.compass-fab .x{color:var(--gold);opacity:0;font-family:Space Mono,monospace;font-size:1.4rem;transition:opacity .2s;position:absolute}.compass-fab.expanded .rose{opacity:0}.compass-fab.expanded .x{opacity:1}.compass-panel{right:14px;bottom:calc(214px + env(safe-area-inset-bottom));z-index:13;border:1px solid var(--bronze);opacity:0;pointer-events:none;transform-origin:100% 100%;background:#14110dfa;grid-template-rows:repeat(3,44px);grid-template-columns:repeat(3,44px);gap:4px;padding:10px;transition:opacity .18s,transform .2s cubic-bezier(.2,.7,.2,1);display:none;position:fixed;transform:translateY(6px)scale(.92);box-shadow:0 10px 28px #0000008c}.compass-panel.visible{opacity:1;pointer-events:auto;transform:translateY(0)scale(1)}.compass-panel .pbtn{border:1px solid var(--ink-edge);color:var(--ink-text);font-family:var(--font-display);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;justify-content:center;align-items:center;font-size:1rem;transition:background .13s,border-color .13s,color .13s;display:flex}.compass-panel .pbtn:active:not([disabled]){border-color:var(--gold);color:var(--gold);background:#c9952a1f}.compass-panel .pbtn[disabled]{color:var(--ink-ghost);cursor:not-allowed;opacity:.45}.compass-panel .pbtn.center{border-color:var(--bronze);color:var(--gold);font-size:.95rem}.compass-panel .pbtn.up{grid-area:1/1}.compass-panel .pbtn.n{grid-area:1/2}.compass-panel .pbtn.w{grid-area:2/1}.compass-panel .pbtn.c{grid-area:2/2}.compass-panel .pbtn.e{grid-area:2/3}.compass-panel .pbtn.down{grid-area:3/1}.compass-panel .pbtn.s{grid-area:3/2}.map-overlay-backdrop{z-index:50;-webkit-backdrop-filter:blur(3px);background:#08070ae0;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.map-overlay{border:1px solid var(--rule-warm);background-color:#15120e;background-image:radial-gradient(60% 50% at 30% 25%,#382c1e66 0%,#0000 65%),radial-gradient(60% 50% at 70% 80%,#382c1e59 0%,#0000 65%);background-position:0 0;background-repeat:repeat;background-size:auto;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;grid-template-rows:auto 1fr auto;width:min(960px,94vw);max-height:92vh;display:grid;position:relative;overflow:hidden;box-shadow:0 24px 60px #0009}.map-overlay:before{content:"";mix-blend-mode:screen;opacity:.5;pointer-events:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='260' height='260'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.85  0 0 0 0 0.78  0 0 0 0 0.58  0 0 0 0.04 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");position:absolute;inset:0}.map-overlay-head{border-bottom:1px solid var(--ink-edge);z-index:2;align-items:baseline;gap:1rem;padding:1.1rem 1.6rem .9rem;display:flex;position:relative}.map-overlay-title{font-family:var(--font-display);color:var(--ink-text);flex:1;font-size:1.5rem;font-weight:400}.map-overlay-close{font-family:var(--font-mono);letter-spacing:.24em;text-transform:uppercase;color:var(--ink-muted);border:1px solid var(--ink-edge);cursor:pointer;background:0 0;padding:.35rem .7rem;font-size:.5rem;transition:color .13s,border-color .13s}.map-overlay-close:hover{color:var(--ink-text);border-color:var(--bronze)}.map-overlay-body{z-index:2;grid-template-columns:1fr 220px;gap:0;min-height:0;display:grid;position:relative}.map-overlay-canvas{flex-direction:column;justify-content:center;align-items:center;min-width:0;min-height:0;padding:1.2rem 1rem 1.2rem 1.6rem;display:flex}.map-overlay-empty{font-family:var(--font-serif);color:var(--ink-muted);text-align:center;margin-top:1rem;font-size:.88rem;font-style:italic}.map-overlay-legend{border-left:1px solid var(--ink-edge);padding:1.2rem 1.4rem 1.2rem 1.2rem;overflow-y:auto}.map-legend-head{font-family:var(--font-mono);letter-spacing:.28em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:.5rem;font-size:.5rem}.map-legend-list{margin:0;padding:0;list-style:none}.map-legend-item{font-family:var(--font-serif);color:var(--ink-warm);grid-template-columns:18px 1fr;gap:.4rem;padding:.2rem 0;font-size:.78rem;font-style:italic;line-height:1.3;display:grid}.map-legend-symbol{text-align:center;font-style:normal}.map-legend-symbol.legend-current{color:var(--jade)}.map-legend-symbol.legend-visited{color:var(--ink-muted)}.map-legend-symbol.legend-unknown{color:var(--ink-ghost)}.map-legend-symbol.legend-cross{color:var(--bronze)}.map-legend-label{color:var(--ink-warm)}.map-overlay-foot{border-top:1px solid var(--ink-edge);z-index:2;align-items:center;gap:1rem;padding:.6rem 1.6rem;display:flex;position:relative}.map-overlay-hint{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-muted);font-size:.5rem}.ledger{background:#0d0b088c;grid-template-columns:1fr auto;align-items:stretch;gap:1.4rem;padding:.55rem 1.6rem .55rem 1.8rem;display:grid;position:relative}.ledger:after{content:"";background:linear-gradient(90deg,#0000 0%,#8b735526 8%,#8b735552 50%,#8b735526 92%,#0000 100%);height:1px;position:absolute;bottom:0;left:0;right:0}.ledger-section-head{font-family:var(--font-mono);letter-spacing:.28em;text-transform:uppercase;color:var(--gold);opacity:.9;margin-bottom:.35rem;font-size:.46rem}.ledger-quests{border-right:1px solid var(--ink-edge);min-width:0;padding-right:1rem}.ledger-empty{font-family:var(--font-serif);color:var(--ink-ghost);font-size:.82rem;font-style:italic}.ledger-quest-list{flex-direction:column;gap:.2rem;margin:0;padding:0;list-style:none;display:flex}.ledger-quest-item{font-family:var(--font-serif);color:var(--ink-text);white-space:nowrap;text-overflow:ellipsis;font-size:.88rem;font-style:italic;line-height:1.35;overflow:hidden}.ledger-almanac{flex-shrink:0}.almanac-grid{grid-template-columns:auto auto;align-items:center;gap:.4rem 1.1rem;display:grid}.almanac-cell{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.almanac-val{font-family:var(--font-display);color:var(--ink-warm);font-size:.95rem;line-height:1}.almanac-sub{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-ghost);font-size:.42rem}.almanac-season-han{color:var(--gold);font-size:1.1rem}.almanac-arc{justify-content:flex-end;align-items:center;display:flex}.almanac-arc-svg{width:32px;height:32px}.almanac-arc-track{fill:none;stroke:var(--ink-edge);stroke-width:1.5px}.almanac-arc-fill{fill:none;stroke:var(--gold);stroke-width:1.5px;stroke-linecap:round}.almanac-arc-label{font-family:var(--font-mono);fill:var(--ink-muted);letter-spacing:0;font-size:7px}.qa-pill-wrap{z-index:5;-webkit-backdrop-filter:blur(6px);background:#100e0af5;align-items:center;display:flex;position:sticky;top:43px}.qa-pill-wrap:after{content:"";background:linear-gradient(90deg,#0000 0%,#8b73552e 8%,#8b735566 50%,#8b73552e 92%,#0000 100%);height:1px;position:absolute;bottom:0;left:0;right:0}.qa-pill{width:100%;min-width:0;color:inherit;cursor:pointer;text-align:left;-webkit-tap-highlight-color:transparent;background:0 0;border:none;align-items:center;gap:.55rem;min-height:40px;padding:.42rem .85rem;display:flex}.qa-pill:active{background:#c9952a0f}.qa-pill-shichen{font-family:var(--font-display);color:var(--gold);flex-shrink:0;font-size:.95rem;line-height:1}.qa-pill-day{font-family:var(--font-mono);letter-spacing:.1em;color:var(--ink-warm);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:.5rem;overflow:hidden}.qa-pill-quest-count{font-family:var(--font-mono);letter-spacing:.18em;color:var(--gold);flex-shrink:0;font-size:.46rem}.qa-backdrop{z-index:40;background:#08070a8c;position:fixed;inset:0}.qa-sheet{z-index:41;border-top:1px solid var(--bronze);background:#14110dfa radial-gradient(80% 40% at 50% 0,#382c1e80,#0000 70%);flex-direction:column;max-height:82vh;display:flex;position:fixed;bottom:0;left:0;right:0;overflow:hidden;box-shadow:0 -10px 36px #0009}.qa-handle{background:var(--bronze);opacity:.45;border-radius:2px;flex-shrink:0;width:38px;height:4px;margin:8px auto 2px}.qa-head{border-bottom:1px solid var(--ink-edge);flex-shrink:0;align-items:baseline;gap:12px;padding:8px 14px 10px;display:flex}.qa-title{font-family:var(--font-display);color:var(--ink-text);flex:1;font-size:1.1rem;font-weight:400}.qa-close{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-muted);border:1px solid var(--ink-edge);cursor:pointer;background:0 0;padding:6px 10px;font-size:.5rem}.qa-close:active{color:var(--ink-text);border-color:var(--bronze)}.qa-body{-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;gap:1.5rem;padding:16px 16px 24px;display:flex;overflow-y:auto}.qa-section-head{font-family:var(--font-mono);letter-spacing:.28em;text-transform:uppercase;color:var(--gold);margin-bottom:6px;font-size:.5rem}.qa-quests{border-bottom:1px solid var(--ink-edge);padding-bottom:1.5rem}.qa-empty{font-family:var(--font-serif);color:var(--ink-ghost);font-size:.86rem;font-style:italic}.qa-quest-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.qa-quest-item{font-family:var(--font-serif);color:var(--ink-warm);font-size:.86rem;font-style:italic;line-height:1.45}.qa-almanac{flex-shrink:0}.qa-almanac-grid{grid-template-columns:1fr 1fr;gap:14px 16px;margin-top:8px;display:grid}.qa-almanac-row{flex-direction:column;gap:4px;display:flex}.qa-almanac-label{font-family:var(--font-mono);letter-spacing:.26em;text-transform:uppercase;color:var(--ink-ghost);font-size:.46rem}.qa-almanac-val{font-family:var(--font-display);color:var(--ink-text);font-size:1rem;line-height:1.15}@media (width<=720px){.sheet-button,.settings-button{padding:.35rem .55rem;font-size:.7rem}}@media (width>=768px){.chat-fab,.qa-pill-wrap,.qa-backdrop,.qa-sheet{display:none}.nav-pad{grid-template-rows:32px 32px 32px;grid-template-columns:32px 32px 32px}.nav-vert-row{width:96px}.compass-fab,.compass-panel,.composer-expanded,.composer-backdrop{display:none}}@media (width<=767px){.ledger,.input-row{display:none}.chat-fab{display:flex}.nav-pad{grid-template-rows:36px 36px 36px;grid-template-columns:36px 36px 36px;width:108px}.nav-vert-row{width:108px}.nav-vert-row .nav-btn{width:36px;height:36px}.player-banner{padding:1.2rem}.pb-name{font-size:1.7rem}.map-overlay-body{grid-template-rows:1fr auto;grid-template-columns:1fr}.map-overlay-legend{border-left:none;border-top:1px solid var(--ink-edge)}.nav-pad-inline{display:none}.compass-fab{display:flex}.compass-panel{display:grid}}[data-mode=combat] .compass-fab,[data-mode=combat] .compass-panel,[data-mode=combat] .chat-fab{display:none}
