@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-cyrillic-wght-normal-Dvxsihut.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-greek-wght-normal-DL7QRZyv.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-vietnamese-wght-normal-usUDDRr7.woff2)format("woff2-variations");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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-ext-wght-normal-Ch3YOpNY.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-wght-normal-DHIcAJRg.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAfsABQAAAAAEAwAAAeCAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoP0hWQVJbBmA/U1RBVIFiJyYAdC9qEQgKhGSEAAsgADCGCAE2AiQDOgQgBYlMB4EUDAcbLQ4onoexrSC/2ZyLAa8p8VHB8/x3Vue+V0hVJalMJg2nx/TCrQXxBeqLjQG7FyM1WEa/X1tEXN7cFz9EJEMmMUz3RihWSSKeQCbcIou0izz/C8v+fq3VfajEa9gDD11CImXS7qL/RJFVzC1qiB6KmKeD6TZdQ6IRGv78dL6uSVVCfgni5mzu7kcgQBgAEAQTQRCoL++STTYybkJxNfQxAAIAGu8OdEB9teW2jh4BpgDqFjAeSEByW3zFP0CBBgNMsMCGEDjgggdhiEAUAeIIED7ABTDUEnkIE9Q9ahFgKttcVhApo4ACB4qobHaccgDfEjFO6aaWUhjMLt2SyIvHKoDqoA4CSUwEIYQCEjhAO9R1G6keDeDZGjNo+AhxOjCEGTr1WeIF3kYBiLAOKvkJSMiKX0VdAyQt3SDJClCkxJCHkCzfqyVTriJZLcolS32JZHUekq2TYNkYtCtjYHMQXSxGjXDz2t/yLWXzDzxz+o3zFwDEaN23F+13pyMdQAEaSKAR9vcGq4A4MTSKCElGW+M7UcY7xqkggITb28ZJhlqc9q2twYKTt0NjixBgYvO9BIihEBLYuOFXQzfIQ7dXGUEEEgFDooBfAzqiQbpJrhiWSuKJCRFKYbHCyJKI2G5GiZbNAvgAu5pc3vwx4G+g3aDkhklABiSz0BICXrYghtYhx/cdJ+44rY2oZ0aMNRFz3VZjb6W33F3gzltqtOCV8tTHSpOeXuItfvr5lCdfzFpqtEitvqdcdGGFd28ZqqC0tPbeChGXgrIlnhSWu/eUso4uKWFLugyDzQJhflY4659+WjQ++6x72WUMv9G8mw6QJl7BVxX5fe/kpUsOvnZwee9uQ0cGXYd0o89XB2748sDSnt8d2VphdOTTgceDVvOds0v9P/s7HPq15aGun/6Vllb56f1dl0t1LejqrNkpdRZsG8TOnM5vkBG5oiVyVGnS8LHps5cfNWJs6qKPfaNSxiQNBUm3cKNWROr0GSur7Za31k1vieq7LH11VF+jXdRIasRKflc7jkobm1Z9te1IyZA0pDkhLR98+H37Zf1c/8at+dB7x+7GfVyTfJMPiYztsnl59Y5l4j+0n1RXlpHnF3Tq7HecmNF/CJodEMAikruxiyJaGLvHOdAfoA+oDvpjBm2b91cHGRZMU9n25xEU0A8fgEEAdKI3Q1iDtc034sug5YVMkE2jsE+BIkwSoQ3gxXMqz9tELp48bd0cFKOKS7xYjEuXBnZP5ia7DyiO/X/YI+PQSbt2uSdqAkWL9nQbV1XB94/+uPfdZz8dnXYFBYrcTl2SIR/ybxJNJPz/Gupb0JaZeens2ekC7EKr8t+Ls/P5VJPYJdHKyqfg2nqU6bhlidzcddQV/7MmecTzJ5VPcKXkNKSEogHjYFx6QZ7rQ+FSe8njaiNuOnXS8H2ScQ619c2mC3VTtauL0rRbXd/CkSOP37FY9Zkjz8+GibYUMOEWF+RdrFS8Ecv1SHOpPUPZGEIpjPvFyU5cXKjd6OXqorTqy9GwRd++HVufPGnVsW+aO3vggKZ18jR9sXaTC1PWTEsVUaK0FkNySbTQDqlm2PfDjZcu4aalnSLKjnOoYQ0nUlqqXcGpPu/4VgV/xU2pAqW4BW3qzhQ8/hFKhV2qE3+BKAtDqBXjfgnVdH4y0wg5tbVNRenNdTWOrenWLcupQdmsbq5b+18piTe/xRdp1xbILxNPJGInm2z6hoB21Lal0i+ePTtd7B45+3XhFJ329evskXm7qurUVREotqSluSo/L29d3qDhI4YOQqWhI4YNvBNfsMHeXKemXrxQfKeuPOGRVayA3JtkJKEgbPp+dXUDluddutRYLFoXGXWX6N3WFaGLbQtRSitVYNacTNSdy7AaG/HSaUEANcBoGXNdcZvZsOqQ1icBDv21/gzAoYPHH/WDW0qNR3QTYKEAEHig6o13NXbND06CQPlRtYjGNnSktRc09k1mAMDvAlDKfQjgy6fssInlfzmNAjKkDxoxHOBLdVRAIVt9j4qo+hA1w9T1aNBNTUOTTNUHLbqokE+UAfJXCIGw/IxCSL5GRUJeR40rL/UxTm4Q08H6MbCs70ObuNyIIXrINHQYInF06UUlevTjbQzTh5upiDMzMMogUtEnjPs/Y7jAHCJeB0GBHh04tC6FiB6ZFB1oArUSIoFoqhzCeAN6lHwm0T4C3VVPWvjpSMXReuWesMEcoqrmgtNBGd2noWeV0hNAz9rFeShNJxHGsPa3HXeKTk8b55hahySYHaYKKFFLpCfN8rsoaJn01CR04Gkc+5k7KVTCmClX8Q10HCrUEkVlSX+XO33oQR9609tJ516H497WSobWs5Up6TLaS10/dessIskgJSLiDlWvHVUywpkQ7hdPZqGyiEF0uVQerVcPamT1A3eKXdyI1vG9OoflrSXihZ1qqGE3nhmAgiIbRCQgPLEPtOM3UQwTLYaYYomNlpA44opnjV6jkD6id80OOrzf6BzmMD6eEa1zKyeYG1fzfEf16V6jw9XYOaar1/b2kP/IYX8oR2mcFvv2GtBV3JXgd437AQAA)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Noto Color Emoji;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-color-emoji-0-400-normal-DkR_PTkf.woff2)format("woff2"),url(/assets/noto-color-emoji-0-400-normal-BSxM6zX1.woff)format("woff");unicode-range:U+1F1E6-1F1FF}@font-face{font-family:Noto Color Emoji;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-color-emoji-1-400-normal-DMWB-2WB.woff2)format("woff2"),url(/assets/noto-color-emoji-1-400-normal-CkQviifM.woff)format("woff");unicode-range:U+200D,U+2620,U+26A7,U+FE0F,U+1F308,U+1F38C,U+1F3C1,U+1F3F3-1F3F4,U+1F6A9,U+E0062-E0063,U+E0065,U+E0067,U+E006C,U+E006E,U+E0073-E0074,U+E0077,U+E007F}@font-face{font-family:Noto Color Emoji;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-color-emoji-2-400-normal-C2EWOBgu.woff2)format("woff2"),url(/assets/noto-color-emoji-2-400-normal-99Ac8Jp-.woff)format("woff");unicode-range:U+23,U+2A,U+30-39,U+A9,U+AE,U+200D,U+203C,U+2049,U+20E3,U+2122,U+2139,U+2194-2199,U+21A9-21AA,U+23CF,U+23E9-23EF,U+23F8-23FA,U+24C2,U+25AA-25AB,U+25B6,U+25C0,U+25FB-25FE,U+2611,U+2622-2623,U+2626,U+262A,U+262E-262F,U+2638,U+2640,U+2642,U+2648-2653,U+2660,U+2663,U+2665-2666,U+2668,U+267B,U+267E-267F,U+2695,U+269B-269C,U+26A0,U+26A7,U+26AA-26AB,U+26CE,U+26D4,U+2705,U+2714,U+2716,U+271D,U+2721,U+2733-2734,U+2747,U+274C,U+274E,U+2753-2755,U+2757,U+2764,U+2795-2797,U+27A1,U+27B0,U+27BF,U+2934-2935,U+2B05-2B07,U+2B1B-2B1C,U+2B55,U+3030,U+303D,U+3297,U+3299,U+FE0F,U+1F170-1F171,U+1F17E-1F17F,U+1F18E,U+1F191-1F19A,U+1F201-1F202,U+1F21A,U+1F22F,U+1F232-1F23A,U+1F250-1F251,U+1F310,U+1F3A6,U+1F3B5-1F3B6,U+1F3BC,U+1F3E7,U+1F441,U+1F499-1F49C,U+1F49F-1F4A0,U+1F4AC-1F4AD,U+1F4B1-1F4B2,U+1F4B9,U+1F4DB,U+1F4F2-1F4F6,U+1F500-1F507,U+1F515,U+1F518-1F524,U+1F52F-1F53D,U+1F549,U+1F54E,U+1F5A4,U+1F5E8,U+1F5EF,U+1F6AB,U+1F6AD-1F6B1,U+1F6B3,U+1F6B7-1F6BC,U+1F6BE,U+1F6C2-1F6C5,U+1F6D0-1F6D1,U+1F6D7,U+1F6DC,U+1F7E0-1F7EB,U+1F7F0,U+1F90D-1F90E,U+1F9D1-1F9D2,U+1F9E1,U+1FA75-1FA77,U+1FAAF}@font-face{font-family:Noto Color Emoji;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-color-emoji-3-400-normal-CIUQS5Lh.woff2)format("woff2"),url(/assets/noto-color-emoji-3-400-normal-DvmlCaZx.woff)format("woff");unicode-range:U+200D,U+231A-231B,U+2328,U+23F0-23F3,U+2602,U+260E,U+2692,U+2694,U+2696-2697,U+2699,U+26B0-26B1,U+26CF,U+26D1,U+26D3,U+2702,U+2709,U+270F,U+2712,U+FE0F,U+1F302,U+1F321,U+1F392-1F393,U+1F3A9,U+1F3BD,U+1F3EE,U+1F3F7,U+1F3FA,U+1F451-1F462,U+1F484,U+1F489-1F48A,U+1F48C-1F48E,U+1F4A1,U+1F4A3,U+1F4A5,U+1F4B0,U+1F4B3-1F4B8,U+1F4BB-1F4DA,U+1F4DC-1F4F1,U+1F4FF,U+1F508-1F514,U+1F516-1F517,U+1F526-1F529,U+1F52C-1F52E,U+1F550-1F567,U+1F56F-1F570,U+1F576,U+1F587,U+1F58A-1F58D,U+1F5A5,U+1F5A8,U+1F5B1-1F5B2,U+1F5C2-1F5C4,U+1F5D1-1F5D3,U+1F5DC-1F5DE,U+1F5E1,U+1F5F3,U+1F6AA,U+1F6AC,U+1F6BD,U+1F6BF,U+1F6C1,U+1F6CB,U+1F6CD-1F6CF,U+1F6D2,U+1F6E0-1F6E1,U+1F6F0,U+1F97B-1F97F,U+1F9AF,U+1F9BA,U+1F9E2-1F9E6,U+1F9EA-1F9EC,U+1F9EE-1F9F4,U+1F9F7-1F9FF,U+1FA71-1FA74,U+1FA79-1FA7B,U+1FA86,U+1FA8E-1FA8F,U+1FA91-1FA93,U+1FA96,U+1FA99-1FAA0,U+1FAA2-1FAA7,U+1FAAA-1FAAE}@font-face{font-family:Noto Color Emoji;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-color-emoji-4-400-normal-Ck8hYGlS.woff2)format("woff2"),url(/assets/noto-color-emoji-4-400-normal-BWwAh4rz.woff)format("woff");unicode-range:U+265F,U+26BD-26BE,U+26F3,U+26F8,U+FE0F,U+1F004,U+1F0CF,U+1F380-1F384,U+1F386-1F38B,U+1F38D-1F391,U+1F396-1F397,U+1F399-1F39B,U+1F39E-1F39F,U+1F3A3-1F3A5,U+1F3A7-1F3A9,U+1F3AB-1F3B4,U+1F3B7-1F3BB,U+1F3BD-1F3C0,U+1F3C5-1F3C6,U+1F3C8-1F3C9,U+1F3CF-1F3D3,U+1F3F8-1F3F9,U+1F47E,U+1F4E2,U+1F4F7-1F4FD,U+1F52B,U+1F579,U+1F58C-1F58D,U+1F5BC,U+1F6F7,U+1F6F9,U+1F6FC,U+1F93F,U+1F941,U+1F945,U+1F947-1F94F,U+1F9E7-1F9E9,U+1F9F5-1F9F6,U+1FA70-1FA71,U+1FA80-1FA81,U+1FA83-1FA85,U+1FA87-1FA8A,U+1FA94-1FA95,U+1FA97-1FA98,U+1FAA1,U+1FAA9,U+1FADF}@font-face{font-family:Noto Color Emoji;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-color-emoji-5-400-normal-BnsK1PuK.woff2)format("woff2"),url(/assets/noto-color-emoji-5-400-normal-CpXaST6_.woff)format("woff");unicode-range:U+2693,U+26E9-26EA,U+26F1-26F2,U+26F4-26F5,U+26FA,U+26FD,U+2708,U+FE0F,U+1F301,U+1F303,U+1F306-1F307,U+1F309,U+1F310,U+1F3A0-1F3A2,U+1F3AA,U+1F3CD-1F3CE,U+1F3D5,U+1F3D7-1F3DB,U+1F3DF-1F3E6,U+1F3E8-1F3ED,U+1F3EF-1F3F0,U+1F488,U+1F492,U+1F4BA,U+1F54B-1F54D,U+1F5FA-1F5FF,U+1F680-1F6A2,U+1F6A4-1F6A8,U+1F6B2,U+1F6D1,U+1F6D5-1F6D6,U+1F6DD-1F6DF,U+1F6E2-1F6E5,U+1F6E9,U+1F6EB-1F6EC,U+1F6F3-1F6F6,U+1F6F8,U+1F6FA-1F6FB,U+1F9BC-1F9BD,U+1F9ED,U+1F9F3,U+1FA7C}@font-face{font-family:Noto Color Emoji;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-color-emoji-6-400-normal-CCZ3eWTj.woff2)format("woff2"),url(/assets/noto-color-emoji-6-400-normal-B1LmIlST.woff)format("woff");unicode-range:U+200D,U+2615,U+FE0F,U+1F32D-1F330,U+1F336,U+1F33D,U+1F344-1F37F,U+1F382,U+1F52A,U+1F7E9,U+1F7EB,U+1F942-1F944,U+1F950-1F96F,U+1F99E,U+1F9AA,U+1F9C0-1F9CB,U+1FAD0-1FADC}@font-face{font-family:Noto Color Emoji;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-color-emoji-7-400-normal--YSOl6BV.woff2)format("woff2"),url(/assets/noto-color-emoji-7-400-normal-DkDdl2ay.woff)format("woff");unicode-range:U+200D,U+2600-2601,U+2603-2604,U+2614,U+2618,U+26A1,U+26C4-26C5,U+26C8,U+26F0,U+2728,U+2744,U+2B1B,U+2B50,U+FE0F,U+1F300,U+1F304-1F305,U+1F308,U+1F30A-1F30F,U+1F311-1F321,U+1F324-1F32C,U+1F331-1F335,U+1F337-1F33C,U+1F33E-1F344,U+1F3D4,U+1F3D6,U+1F3DC-1F3DE,U+1F3F5,U+1F400-1F43F,U+1F490,U+1F4A7,U+1F4AE,U+1F525,U+1F54A,U+1F573,U+1F577-1F578,U+1F648-1F64A,U+1F6D8,U+1F940,U+1F980-1F9AE,U+1F9BA,U+1FA90,U+1FAA8,U+1FAB?,U+1FACD-1FACF,U+1FAE7}@font-face{font-family:Noto Color Emoji;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-color-emoji-8-400-normal-Cbl3QhNQ.woff2)format("woff2"),url(/assets/noto-color-emoji-8-400-normal-C_gu7RYJ.woff)format("woff");unicode-range:U+200D,U+2640,U+2642,U+2695-2696,U+26F7,U+26F9,U+2708,U+2764,U+27A1,U+FE0F,U+1F33E,U+1F373,U+1F37C,U+1F384-1F385,U+1F393,U+1F3A4,U+1F3A8,U+1F3C2-1F3C4,U+1F3C7,U+1F3CA-1F3CC,U+1F3EB,U+1F3ED,U+1F3FB-1F3FF,U+1F430,U+1F466-1F469,U+1F46B-1F478,U+1F47C,U+1F481-1F483,U+1F486-1F487,U+1F48B,U+1F48F,U+1F491,U+1F4BB-1F4BC,U+1F527,U+1F52C,U+1F574-1F575,U+1F57A,U+1F645-1F647,U+1F64B,U+1F64D-1F64E,U+1F680,U+1F692,U+1F6A3,U+1F6B4-1F6B6,U+1F6C0,U+1F6CC,U+1F91D,U+1F926,U+1F930-1F931,U+1F934-1F93A,U+1F93C-1F93E,U+1F977,U+1F9AF-1F9B3,U+1F9B8-1F9B9,U+1F9BC-1F9BD,U+1F9CC-1F9CF,U+1F9D1-1F9DF,U+1FA70,U+1FA82,U+1FAC3-1FAC5,U+1FAC8,U+1FAEF}@font-face{font-family:Noto Color Emoji;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-color-emoji-9-400-normal-CDtYxzw1.woff2)format("woff2"),url(/assets/noto-color-emoji-9-400-normal-BkH9GDtr.woff)format("woff");unicode-range:U+200D,U+2194-2195,U+2603,U+261D,U+2620,U+2639-263A,U+2665,U+26A1,U+26C4,U+270A-270D,U+2728,U+2763-2764,U+2B50,U+FE0F,U+1F31A-1F31F,U+1F32B,U+1F389-1F38A,U+1F3FB-1F3FF,U+1F440-1F450,U+1F463-1F465,U+1F479-1F47B,U+1F47D-1F480,U+1F485,U+1F48B-1F48C,U+1F493-1F49F,U+1F4A2,U+1F4A4-1F4A6,U+1F4A8-1F4AB,U+1F4AF,U+1F525,U+1F573,U+1F590,U+1F595-1F596,U+1F5A4,U+1F5E3,U+1F600-1F644,U+1F648-1F64A,U+1F64C,U+1F64F,U+1F90C-1F925,U+1F927-1F92F,U+1F932-1F933,U+1F970-1F976,U+1F978-1F97A,U+1F9A0,U+1F9B4-1F9B7,U+1F9BB,U+1F9BE-1F9BF,U+1F9D0,U+1F9E0-1F9E1,U+1FA75-1FA79,U+1FAC0-1FAC2,U+1FAC6,U+1FAE0-1FAE6,U+1FAE8-1FAEA,U+1FAEF-1FAFA}@font-face{font-family:Noto Color Emoji;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/noto-color-emoji-10-400-normal-DctwJKDw.woff2)format("woff2"),url(/assets/noto-color-emoji-10-400-normal-BPCE3lge.woff)format("woff");unicode-range:U+1F6D9,U+1FA8B-1FA8D,U+1FACC,U+1FADD,U+1FAEB}:root{--bg-app:#101012;--bg-surface:#19191c;--bg-card:#222225;--bg-raised:#2a2a2e;--bg-input:#161618;--text-primary:#f2f2f4;--text-secondary:#92929b;--text-faint:#6e6e78;--accent:#c8102e;--accent-bright:#e0283f;--accent-soft:#c8102e24;--accent-text-on:#fff;--ok:#3e9b57;--warn:#c98a2b;--err:#c8102e;--border:#303035;--border-strong:#46464d;--control-edge:#4a4a52;--font-emoji:"Segoe UI Emoji", "Apple Color Emoji", "Noto Color Emoji", "Twemoji Mozilla", "EmojiOne Color", sans-serif;--font-ui:"Manrope Variable", var(--font-emoji), system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono Variable", ui-monospace, "Cascadia Mono", monospace;--font-chat:system-ui, -apple-system, "Segoe UI", var(--font-emoji), sans-serif;--radius-s:6px;--radius-m:10px;--radius-l:14px;--field-h:38px;--shadow-1:0 1px 2px #0006;--shadow-2:0 8px 28px #00000080;--shadow-ring:inset 0 0 0 1px var(--border);--t-fast:.12s;--t-med:.2s;--t-slow:.32s;--ease:cubic-bezier(.2, 0, .1, 1);--row-h:34px;--list-density:8px}[data-theme=light]{--bg-app:#f3f4f6;--bg-surface:#fff;--bg-card:#fff;--bg-raised:#fff;--bg-input:#fff;--text-primary:#191b20;--text-secondary:#5b6270;--text-faint:#8a909c;--border:#e1e4e9;--border-strong:#cbced6;--shadow-1:0 1px 2px #0a0c101f;--shadow-2:0 8px 28px #0a0c1029}[data-node-accent]{--accent:var(--node-accent);--accent-bright:color-mix(in srgb, var(--node-accent) 78%, #fff);--accent-soft:color-mix(in srgb, var(--node-accent) 14%, transparent)}[data-accent="1"]{--accent:var(--user-accent);--accent-bright:color-mix(in srgb, var(--user-accent) 78%, #fff);--accent-soft:color-mix(in srgb, var(--user-accent) 14%, transparent)}[data-room-theme=black]{--bg-app:#0a0a0b;--bg-surface:#111113;--bg-card:#171719;--bg-raised:#202022}[data-room-theme=crimson]{--bg-app:#140d0e;--bg-surface:#1d1214;--bg-card:#251619;--bg-raised:#2f1b1f}[data-room-theme=slate]{--bg-app:#0f1114;--bg-surface:#171a1f;--bg-card:#1e2228;--bg-raised:#272c34}[data-room-accent]{--accent:var(--room-accent);--accent-bright:color-mix(in srgb, var(--room-accent) 78%, #fff);--accent-soft:color-mix(in srgb, var(--room-accent) 14%, transparent)}[data-density=compact]{--list-density:4px;--row-h:28px}[data-density=spacious]{--list-density:12px;--row-h:40px}[data-reduced-motion] *{transition-duration:.01ms!important;animation-duration:.01ms!important}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-ui);background:var(--bg-app);color:var(--text-primary);font-weight:500;font-size:calc(14px * var(--ui-scale,1));-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;line-height:1.45;overflow:hidden}h1,h2,h3,h4{letter-spacing:.01em;margin:0;font-weight:750}h1{font-weight:800}h3,h4{font-weight:700}a{color:inherit;text-decoration:none}a:hover{text-decoration:none}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border-strong);background-clip:content-box;border:2px solid #0000;border-radius:8px}::-webkit-scrollbar-track{background:0 0}::selection{background:var(--accent-soft)}button{font-family:inherit;font-size:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent-bright);outline-offset:2px;border-radius:4px}.logo{letter-spacing:.22em;font-weight:900;font-family:var(--font-ui);-webkit-user-select:none;user-select:none}.logo .dash{color:var(--accent)}.btn{height:var(--field-h);border-radius:var(--radius-m);background:var(--bg-raised);color:var(--text-primary);box-shadow:inset 0 0 0 1px var(--control-edge);transition:background var(--t-fast) var(--ease), transform var(--t-fast) var(--ease), box-shadow var(--t-fast), color var(--t-fast);white-space:nowrap;align-items:center;gap:8px;padding:0 18px;font-weight:600;display:inline-flex}.btn:hover{box-shadow:inset 0 0 0 1px var(--text-secondary);background:#34343a}.btn:active{background:var(--bg-card);transform:translateY(1px)}.btn:focus-visible{outline:2px solid var(--accent-bright);outline-offset:2px}.btn:disabled{background:var(--bg-surface);color:var(--text-faint);box-shadow:inset 0 0 0 1px var(--border);cursor:not-allowed;transform:none}.btn-primary{background:var(--accent);color:var(--accent-text-on);box-shadow:none}.btn-primary:hover{background:var(--accent-bright);box-shadow:none}.btn-primary:active{background:var(--accent);filter:brightness(.9)}.btn-primary:disabled{background:var(--bg-raised);color:var(--text-faint);box-shadow:inset 0 0 0 1px var(--border)}.btn-ghost{box-shadow:none;color:var(--text-secondary);background:0 0}.btn-ghost:hover{background:var(--bg-raised);color:var(--text-primary);box-shadow:none}.btn-ghost:disabled{box-shadow:none;background:0 0}.btn-danger{color:var(--accent-bright);box-shadow:inset 0 0 0 1px var(--accent);background:0 0}.btn-danger:hover{background:var(--accent-soft)}.btn-sm{height:30px;padding:0 12px;font-size:.92em}.field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.field label{color:var(--text-secondary);font-size:.85em;font-weight:600}.input,textarea.input{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-m);color:var(--text-primary);height:var(--field-h);font-family:inherit;font-size:inherit;transition:border-color var(--t-fast);padding:0 12px}textarea.input{resize:vertical;height:auto;min-height:90px;padding:10px 12px}.input:hover{border-color:var(--border-strong)}.input:focus{border-color:var(--accent);outline:none}select.input{appearance:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:var(--font-ui);cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23969ca8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding:0 38px 0 12px;font-weight:600}[data-theme=light] select.input{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}select.input option{background:var(--bg-card);color:var(--text-primary);font-family:var(--font-ui)}.select-trigger{text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:10px;width:100%;font-weight:600;display:flex}.select-trigger span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.select-trigger svg{color:var(--text-secondary);transition:transform var(--t-med) var(--ease);flex:none}.select-trigger svg.open{transform:rotate(180deg)}.select-trigger:focus-visible{outline:2px solid var(--accent-bright);outline-offset:2px}.select-menu{z-index:1100;background:var(--bg-raised);border:1px solid var(--border-strong);border-radius:var(--radius-l);animation:pop var(--t-fast) var(--ease);scrollbar-width:thin;padding:6px;position:fixed;overflow-y:auto;box-shadow:0 18px 40px #00000073}.select-menu::-webkit-scrollbar{width:8px}.select-menu::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:4px}.select-option{transition:background var(--t-fast), color var(--t-fast)}.select-option:hover{background:var(--bg-card);color:var(--text-primary)}.select-option[aria-selected=true]{background:var(--accent-soft);color:var(--accent-bright)}select.input:hover{border-color:var(--border-strong);background-color:var(--bg-raised)}select.input:focus-visible{outline:2px solid var(--accent-bright);outline-offset:1px}.select-option{border-radius:var(--radius-s);min-height:36px;color:var(--text-secondary);cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:7px 10px;font-weight:600;display:flex}.select-option.active{background:var(--bg-raised);color:var(--text-primary)}.select-option[aria-selected=true]{color:var(--accent-bright)}.role-select{flex:1;min-width:0}input[type=checkbox]{appearance:none;border:1px solid var(--control-edge);background:var(--bg-input);cursor:pointer;width:18px;height:18px;transition:background var(--t-fast), border-color var(--t-fast), transform var(--t-fast);border-radius:5px;flex:none;margin:0}input[type=checkbox]:hover{border-color:var(--accent)}input[type=checkbox]:checked{border-color:var(--accent);background:var(--accent) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='white' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 10 4 4 8-8'/%3E%3C/svg%3E") center/16px no-repeat}input[type=checkbox]:active{transform:scale(.94)}.input-err{border-color:var(--err)!important}.field-err{color:var(--accent-bright);font-size:.85em}.badge{background:var(--accent);color:#fff;border-radius:9px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex}.badge:not([data-show=true]){display:none}.spinner{border:2px solid var(--border-strong);border-top-color:var(--accent);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{background:linear-gradient(100deg, var(--bg-card) 40%, var(--bg-raised) 50%, var(--bg-card) 60%);border-radius:var(--radius-m);background-size:200% 100%;animation:1.4s linear infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}.brand-loading{height:100%;color:var(--text-secondary);place-content:center;justify-items:center;gap:18px;display:grid}.brand-loading-mark{border:1px solid var(--border-strong);background:var(--bg-card);border-radius:24px;place-items:center;width:76px;height:76px;animation:1.8s ease-in-out infinite brand-breathe;display:grid}.brand-loading-text{letter-spacing:.08em;font-size:.85em}.brand-loading:after{content:"";background:linear-gradient(90deg, transparent, var(--accent), transparent);width:180px;height:3px;animation:brand-bar 1.4s var(--ease) infinite;border-radius:2px}@keyframes brand-bar{0%{opacity:.2;transform:translate(-120px)}50%{opacity:1}to{opacity:.2;transform:translate(120px)}}@media (prefers-reduced-motion:reduce){.brand-loading:after{animation:none}}@keyframes brand-breathe{50%{box-shadow:0 8px 28px var(--accent-soft);transform:translateY(-4px)}}.empty{color:var(--text-secondary);text-align:center;padding:40px 20px}.toasts{z-index:1000;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:20px;right:20px}.toast{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-m);min-width:240px;box-shadow:var(--shadow-2);animation:toast-in var(--t-med) var(--ease);align-items:center;gap:10px;padding:10px 16px;font-size:.95em;display:flex}.toast[data-kind=ok]{border-left:3px solid var(--ok)}.toast[data-kind=err]{border-left:3px solid var(--err)}.toast[data-kind=info]{border-left:3px solid var(--warn)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}}.modal-back{z-index:800;animation:fade-in var(--t-fast) var(--ease);background:#06070999;place-items:center;display:grid;position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}}.modal{background:var(--bg-card);border-radius:var(--radius-l);min-width:380px;max-width:560px;box-shadow:var(--shadow-2);animation:modal-in var(--t-med) var(--ease);max-height:86vh;padding:24px;overflow:auto}@keyframes modal-in{0%{opacity:0;transform:translateY(10px)scale(.98)}}.media-consent{text-align:center;width:min(420px,100vw - 32px);min-width:0}.media-consent-icon{background:var(--bg-raised);width:52px;height:52px;color:var(--accent,var(--text-primary));border:1px solid var(--border);border-radius:50%;place-items:center;margin:0 auto 14px;display:grid}.media-consent h2{margin:0 0 8px;font-size:1.2em}.media-consent-text{color:var(--text-secondary,var(--text-primary));margin:0 0 20px;font-size:.95em;line-height:1.5}.media-consent-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.media-consent-actions .btn{min-height:44px}.menu-pop{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-m);min-width:200px;box-shadow:var(--shadow-2);z-index:900;animation:pop var(--t-fast) var(--ease);transform-origin:0 0;padding:6px;position:absolute}@keyframes pop{0%{opacity:0;transform:scale(.97)translateY(-2px)}}.menu-item{border-radius:var(--radius-s);color:var(--text-primary);cursor:pointer;text-align:left;align-items:center;gap:10px;width:100%;padding:8px 10px;font-size:.95em;display:flex}.menu-sep{background:var(--border);height:1px;margin:6px 4px}.tip{background:var(--bg-raised);border:1px solid var(--border);color:var(--text-primary);border-radius:var(--radius-s);pointer-events:none;z-index:950;box-shadow:var(--shadow-1);white-space:nowrap;padding:4px 10px;font-size:12px;position:fixed}.soyuz-brand-image{border-radius:12px;width:min(100%,460px);height:auto;display:block}.visually-hidden{clip:rect(0,0,0,0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.auth-shell{grid-template:1fr/1.1fr 1fr;height:100%;display:grid}@media (width<=900px){.auth-shell{grid-template:auto auto/1fr;height:auto;min-height:100%}.auth-form-wrap{overflow:visible}body:has(.auth-shell){overflow:auto}}.auth-brand{background:radial-gradient(1200px 400px at 20% -10%, #d6283529, transparent), var(--bg-surface);border-right:1px solid var(--border);flex-direction:column;justify-content:center;gap:18px;padding:64px;display:flex}@media (width<=900px){.auth-brand{border-right:none;padding:40px 28px}}.brand-mark{border-radius:18px;width:84px;height:84px}.brand-title{animation:brand-in .6s var(--ease);font-size:clamp(44px,7vw,84px);line-height:.95}@keyframes brand-in{0%{opacity:0;letter-spacing:.5em}}.brand-sub{color:var(--text-secondary);max-width:440px;font-size:1.06em}.brand-points{flex-direction:column;gap:10px;margin-top:12px;display:flex}.brand-point{color:var(--text-secondary);align-items:center;gap:12px;font-size:.95em;display:flex}.brand-point svg{color:var(--accent-bright)}.auth-form-wrap{place-items:center;padding:40px 24px;display:grid;overflow:auto}.auth-card{flex-direction:column;gap:16px;width:100%;max-width:380px;display:flex}.auth-card h2{font-size:1.5em}.auth-alt{color:var(--text-secondary);text-align:center;font-size:.92em}.auth-alt a{color:var(--accent-bright);font-weight:600}.auth-note{color:var(--text-secondary);text-align:center;margin-top:8px;font-size:.83em}.auth-foot{color:var(--text-faint);gap:12px;font-size:12px;display:flex;position:fixed;bottom:12px;right:16px}.app-root{flex-direction:column;height:100%;min-height:0;display:flex}.app-root-content{flex:1;min-height:0}.window-bar{background:var(--bg-app);border-bottom:1px solid var(--border);-webkit-app-region:drag;-webkit-user-select:none;user-select:none;flex:none;justify-content:space-between;align-items:center;height:32px;padding-left:10px;display:flex;position:relative}.window-bar:after{content:"";pointer-events:none;background:linear-gradient(90deg, transparent, var(--accent) 16%, var(--accent-bright) 50%, var(--accent) 84%, transparent);opacity:.9;height:2px;position:absolute;bottom:-1px;left:0;right:0}.window-bar-title{color:var(--text-secondary);letter-spacing:.04em;align-items:center;gap:8px;font-size:12px;font-weight:600;display:flex}.window-bar-controls{-webkit-app-region:no-drag;height:100%;display:flex}.window-btn{width:46px;height:100%;color:var(--text-secondary);transition:background var(--t-fast), color var(--t-fast);place-items:center;display:grid}.window-btn:hover{background:var(--bg-hover,#ffffff0f);color:var(--text-primary)}.window-btn-close:hover{background:var(--accent);color:#fff}.sound-settings{border-top:1px solid var(--border);max-width:640px;margin-top:18px;padding-top:14px}.sound-rows{gap:2px;margin:6px 0 8px;display:grid}.sound-row{justify-content:space-between;align-items:center;gap:12px;padding:4px 0;display:flex}.sound-row .toggle-row{padding:0}.sound-row .btn{flex:none}.toggle-row{align-items:center;gap:10px;padding:6px 0;display:flex}.toggle-row span{color:var(--text-primary)}.check-row{align-items:center;gap:10px;padding:6px 0;display:flex}.profile-banner{position:relative;overflow:hidden}.profile-banner-img{object-fit:cover;z-index:0;width:100%;height:100%;position:absolute;inset:0}.profile-banner-fallback{z-index:0;position:absolute;inset:0}.profile-banner-deco{z-index:2;pointer-events:none;position:absolute;inset:0}.profile-banner-deco-spark{background:radial-gradient(circle at 18% 30%, color-mix(in srgb, var(--profile-accent,var(--accent)) 70%, white) 0 1.6px, transparent 2.6px) 0 0/26px 26px, radial-gradient(circle at 62% 56%, color-mix(in srgb, var(--profile-accent,var(--accent)) 55%, white) 0 1.2px, transparent 2.2px) 0 0/34px 34px;opacity:.55}.profile-banner-deco-grid{opacity:.5;background:linear-gradient(#ffffff24 1px,#0000 1px) 0 0/22px 22px,linear-gradient(90deg,#ffffff24 1px,#0000 1px) 0 0/22px 22px}.profile-banner-deco-orbit{background:radial-gradient(circle at 78% 42%, color-mix(in srgb, var(--profile-accent,var(--accent)) 55%, transparent) 0 42px, transparent 43px) bottom 40px left -30px/160px 160px no-repeat, radial-gradient(circle at 20% 80%, color-mix(in srgb, var(--profile-accent,var(--accent)) 35%, transparent) 0 22px, transparent 23px) top 10px right 10px/90px 90px no-repeat;opacity:.8}.voice-quick{z-index:640;background:color-mix(in srgb, var(--bg-raised) 92%, transparent);border:1px solid var(--border-strong);box-shadow:var(--shadow-2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:toast-in var(--t-med) var(--ease);border-radius:14px;align-items:center;gap:6px;padding:6px;display:flex;position:fixed;bottom:76px;left:14px}.voice-quick-meta{gap:1px;min-width:0;max-width:180px;padding:0 8px 0 6px;display:grid}.voice-quick-meta b{white-space:nowrap;text-overflow:ellipsis;font-size:.82em;overflow:hidden}.voice-quick-meta small{color:var(--text-secondary);font-size:.72em}.voice-quick .iconbtn{border-radius:10px;width:34px;height:34px}.voice-quick .iconbtn.is-active{color:var(--accent-bright);background:var(--accent-soft)}.voice-quick-end{background:var(--accent);color:#fff!important}.voice-quick-end:hover{background:var(--accent-bright)}@media (width<=640px){.voice-quick{display:none}}.app-crash{place-content:center;justify-items:start;gap:12px;max-width:520px;height:100%;margin:0 auto;padding:32px;display:grid}.app-crash h1{margin:0;font-size:1.25em}.app-crash p{color:var(--text-secondary);margin:0}.app-crash-actions{flex-wrap:wrap;gap:8px;display:flex}.app-crash small{color:var(--text-faint);word-break:break-word}.download-banner{background:var(--bg-surface);border-bottom:1px solid var(--border);color:var(--text-secondary);flex-wrap:wrap;flex:none;justify-content:center;align-items:center;gap:14px;padding:8px 16px;font-size:13px;display:flex}.download-banner-text{color:var(--text-primary);font-weight:600}.download-banner-btn{padding:6px 14px;font-size:13px}@media (width<=700px){.download-banner{display:none}}.app-shell{grid-template-rows:1fr;grid-template-columns:auto auto 1fr auto;height:100%;display:grid;overflow:hidden}.rail{background:var(--bg-app);border-right:1px solid var(--border);flex-direction:column;align-items:center;gap:8px;width:64px;padding:10px 0 0;display:flex}.rail-logo{width:36px;height:36px;margin-bottom:2px;padding:4px}.rail-sep{background:var(--border);width:28px;height:1px;margin:4px 0}.rail-btn{width:40px;height:40px;color:var(--text-secondary);transition:background var(--t-fast), color var(--t-fast), border-radius var(--t-med);border-radius:12px;place-items:center;display:grid;position:relative}.rail-btn:hover{background:var(--bg-raised);color:var(--text-primary);border-radius:50%}.rail-btn.active{background:var(--bg-raised);color:var(--text-primary);border-radius:12px}.rail-btn.active:before{content:"";background:var(--accent);border-radius:2px;width:3px;position:absolute;top:8px;bottom:8px;left:-10px}.rail-btn .badge{position:absolute;top:-2px;right:-2px}.rail-spacer{flex:1}.rail-profile{padding-bottom:12px;position:relative}.spacebar{width:var(--spacebar-w,264px);background:var(--bg-surface);border-right:1px solid var(--border);flex-direction:column;min-width:200px;display:flex;position:relative;overflow:hidden}.spacebar-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;min-height:56px;padding:14px 14px 10px;display:flex}.spacebar-title{white-space:nowrap;text-overflow:ellipsis;cursor:pointer;font-size:1.02em;font-weight:800;overflow:hidden}.spacebar-body{flex:1;padding:10px 8px 20px;overflow-y:auto}.spacebar-context-menu{z-index:900;border:1px solid var(--border);border-radius:var(--radius-m);background:var(--bg-raised);width:210px;box-shadow:var(--shadow-2);padding:6px;position:fixed}.spacebar-resize{cursor:ew-resize;z-index:5;width:6px;position:absolute;top:0;bottom:0;right:-3px}.spacebar-resize:hover,.spacebar-resize.dragging{background:var(--accent-soft)}.chan-group{margin-top:12px}.category-heading,.category-edit{align-items:center;min-width:0;display:flex}.category-heading>.chan-group-head{text-align:left;flex:1;min-width:0}.category-heading .chan-group-head span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.category-rename{opacity:.7;flex:none}.category-edit{gap:2px;width:100%}.category-edit input{flex:1;width:0;min-width:0}.category-drop-target{outline:1px solid var(--accent);border-radius:var(--radius-s)}.channel-row{position:relative}.channel-row.drop-target{border-top:2px solid var(--accent)}.channel-row.dragging-channel{opacity:.45}.channel-drag{z-index:1;color:var(--text-secondary);cursor:grab;opacity:.55;display:flex;position:absolute;top:50%;right:3px;transform:translateY(-50%)}.channel-drag:active{cursor:grabbing}.channel-row:has(.channel-drag)>.chan{padding-right:24px}.channel-row:hover .channel-drag{opacity:1}.chan-group-head{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:4px;padding:6px 8px;font-size:.78em;font-weight:700;display:flex}.chan{width:100%;height:var(--row-h);border-radius:var(--radius-s);color:var(--text-secondary);text-align:left;transition:background var(--t-fast);align-items:center;gap:8px;margin-bottom:1px;padding:0 10px;display:flex;position:relative}.chan svg{opacity:.75;flex:none}.chan:hover,.chan.active{background:var(--bg-raised);color:var(--text-primary)}.chan.active:before{content:"";background:var(--accent);border-radius:2px;width:3px;position:absolute;top:6px;bottom:6px;left:-8px}.chan .label{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.chan .badge{position:static}.chan-kind-voice{color:var(--text-secondary)}.chan-kind-voice.has-peers{color:var(--ok)}.channel-voice-members{border-left:1px solid var(--border-strong);margin:2px 0 8px 20px;padding-left:10px}.channel-voice-member{color:var(--text-secondary);align-items:center;gap:8px;min-width:0;padding:4px 2px;font-size:.88em;display:flex}.channel-voice-member>span:first-of-type{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.channel-voice-member .avatar{width:24px!important;height:24px!important;font-size:10px!important}.channel-voice-member .avatar img{width:24px;height:24px}.voice-muted{color:var(--text-faint);text-align:right;margin-left:auto;font-size:.75em}.mainarea{grid-template-columns:minmax(0,1fr);min-width:0;min-height:0;display:grid;position:relative}.members{background:var(--bg-surface);border-left:1px solid var(--border);width:240px;padding:14px 10px;overflow-y:auto}.members h3{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);padding:8px 8px 4px;font-size:.78em}.member-row{border-radius:var(--radius-s);cursor:pointer;align-items:center;gap:10px;padding:5px 8px;display:flex}.member-row:hover{background:var(--bg-raised)}.member-name{white-space:nowrap;text-overflow:ellipsis;font-size:.95em;overflow:hidden}.member-sub{color:var(--text-secondary);font-size:.78em}.member-summary{text-align:left;flex:1;align-items:center;gap:10px;min-width:0;display:flex}.member-info{min-width:0;display:grid}.member-info .member-sub{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.home-aside{padding-top:6px}.home-aside-head{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:6px;margin-top:14px;display:flex;padding-top:12px!important}.home-aside-row{border-radius:var(--radius-s);text-align:left;width:100%;color:var(--text-primary);align-items:center;gap:9px;padding:7px 8px;display:flex}.home-aside-row:hover{background:var(--bg-raised)}.home-aside-text{flex:1;gap:1px;min-width:0;display:grid}.home-aside-name{white-space:nowrap;text-overflow:ellipsis;font-size:.86em;font-weight:600;overflow:hidden}.home-aside-name small{color:var(--text-secondary);font-weight:400}.home-aside-preview{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:.78em;overflow:hidden}.home-aside-time{color:var(--text-secondary);flex:none;font-size:.72em}.home-aside-event{border-radius:var(--radius-s);text-align:left;width:100%;color:var(--text-primary);align-items:flex-start;gap:9px;padding:7px 8px;display:flex}.home-aside-event:hover{background:var(--bg-raised)}.home-aside-bell{color:var(--text-secondary);flex:none;margin-top:2px}.home-aside-bell.is-new{color:var(--accent-bright)}.home-aside-open{color:var(--text-secondary);opacity:0;transition:opacity var(--t-fast);flex:none;margin-top:2px}.home-aside-event:hover .home-aside-open{opacity:1}.member-card{width:min(420px,100vw - 24px);min-width:0;position:relative}.member-card-close{position:absolute;top:14px;right:14px}.member-ctx.wider{width:236px}.member-ctx-head{align-items:center;gap:8px;padding:8px 10px;font-size:.92em;display:flex}.member-ctx-volume{color:var(--text-secondary);align-items:center;gap:8px;padding:6px 10px;display:flex}.member-ctx-volume input[type=range]{accent-color:var(--accent);flex:1}.member-ctx-vol-val{color:var(--text-secondary);text-align:right;min-width:34px;font-size:.82em}.member-ctx-submenu{display:grid}.member-ctx-subtitle{color:var(--text-faint);letter-spacing:.05em;text-transform:uppercase;align-items:center;gap:6px;padding:6px 10px 4px;font-size:.74em;font-weight:700;display:flex}.menu-item{border-radius:var(--radius-s);width:100%;color:var(--text-primary);text-align:left;align-items:center;gap:10px;padding:8px 10px;font-size:.9em;display:flex}.menu-item:hover{background:var(--bg-card)}.menu-item.danger{color:var(--accent-bright)}.menu-icon{color:var(--text-secondary)}.member-card-header{align-items:center;gap:14px;padding-right:28px;display:flex}.member-card-header h3{color:var(--text-primary);text-transform:none;letter-spacing:0;overflow-wrap:anywhere;padding:0;font-size:1.15em}.member-card-status,.member-card-bio{color:var(--text-secondary);overflow-wrap:anywhere;margin:14px 0}.member-card-ranks{gap:8px;margin:20px 0;display:grid}.member-card-ranks>div{flex-wrap:wrap;gap:6px;display:flex}.member-rank{border:1px solid var(--border-strong);border-radius:999px;align-items:center;padding:4px 10px;font-size:.85em;display:inline-flex}.member-card>.btn{justify-content:center;width:100%}.profilebar{background:var(--bg-raised);border-top:1px solid var(--border);align-items:center;gap:8px;padding:8px;display:flex;position:absolute;inset:auto 0 0}.profilebar .spacer{flex:1}.iconbtn{border-radius:var(--radius-s);width:32px;height:32px;color:var(--text-secondary);transition:background var(--t-fast), color var(--t-fast);place-items:center;display:grid}.iconbtn:hover{background:var(--bg-card);color:var(--text-primary)}.iconbtn.on,.iconbtn.toggled{color:var(--accent-bright)}.avatar{object-fit:cover;background:var(--bg-card);color:#fff;-webkit-user-select:none;user-select:none;border-radius:50%;flex:none;place-items:center;font-weight:800;display:grid;position:relative}.avatar-sm{width:28px;height:28px;font-size:12px}.avatar-md{width:40px;height:40px;font-size:15px}.avatar-lg{width:64px;height:64px;font-size:22px}.avatar-dot{background:var(--text-faint);border:2.5px solid var(--bg-surface);border-radius:50%;width:12px;height:12px;position:absolute;bottom:-1px;right:-1px}.avatar-dot[data-presence=online]{background:var(--ok)}.avatar-dot[data-presence=idle]{background:var(--warn)}.avatar-dot[data-presence=dnd]{background:var(--err)}.notif-pop{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-l);width:360px;max-height:480px;box-shadow:var(--shadow-2);z-index:700;animation:pop var(--t-fast) var(--ease);padding:10px;position:absolute;top:60px;left:64px;overflow:auto}.notif-item{border-radius:var(--radius-s);cursor:pointer;gap:10px;padding:10px 12px;font-size:.92em;display:flex}.notif-item:hover{background:var(--bg-card)}.notif-item.unread{background:var(--accent-soft)}.notif-empty{text-align:center;color:var(--text-secondary);padding:30px}.settings-page{height:100%;min-height:0;display:flex;overflow:hidden}.settings-menu{border-right:1px solid var(--border);background:var(--bg-surface);flex-direction:column;gap:2px;width:230px;min-width:190px;padding:20px 10px;display:flex;overflow-y:auto}.settings-menu-item{border-radius:var(--radius-m);color:var(--text-secondary);text-align:left;align-items:center;gap:10px;width:100%;padding:9px 12px;font-weight:600;display:flex}.settings-menu-item:hover,.settings-menu-item.active{background:var(--bg-card);color:var(--text-primary)}.settings-content{overscroll-behavior:contain;flex:1;min-width:0;min-height:0;padding:28px 32px 60px;overflow-y:auto}.settings-section{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-l);max-width:760px;margin-bottom:18px;padding:20px}.settings-section h2{margin-bottom:12px;font-size:1.02em}.home-content,.subscription-page{height:100%;padding:32px;overflow-y:auto}.home-header h1,.subscription-page h1{margin:8px 0;font-size:1.7em}.home-header p,.subscription-page>p{color:var(--text-secondary);margin:0}.channel-empty{text-align:center;justify-items:center;gap:6px;padding:48px 20px;display:grid}.channel-empty-icon{border-radius:var(--radius-m);background:var(--bg-raised);width:52px;height:52px;color:var(--text-secondary);place-items:center;margin-bottom:6px;display:grid}.channel-empty h3{margin:0}.channel-empty p{color:var(--text-secondary);max-width:46ch;margin:0}.channel-empty-topic{color:var(--text-primary)!important}.channel-empty-welcome{border-left:2px solid var(--accent);text-align:left;padding-left:10px}.room-card{background-color:var(--bg-card);border-bottom:1px solid var(--border);background-repeat:no-repeat;align-items:flex-end;gap:10px;min-height:74px;padding:10px 12px;display:flex;position:relative}.room-card-avatar{border-radius:var(--radius-m);object-fit:cover;width:40px;height:40px;box-shadow:0 0 0 1px var(--border);background:var(--bg-raised);flex:none}.room-card-text{gap:2px;min-width:0;display:grid}.room-card-text strong{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.95em;overflow:hidden}.room-card-text span{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:.8em;overflow:hidden}.room-image-row{align-items:center;gap:14px;display:flex}.room-image-preview{border-radius:var(--radius-m);background:var(--bg-raised);width:64px;height:64px;color:var(--text-primary);flex:none;place-items:center;font-size:1.4em;font-weight:800;display:grid;overflow:hidden}.room-image-actions{flex-wrap:wrap;gap:8px;display:flex}.room-banner-preview{border-radius:var(--radius-m);background-color:var(--bg-raised);border:1px solid var(--border);background-repeat:no-repeat;width:100%;height:120px}.room-crop{gap:6px;display:grid}.room-crop label{color:var(--text-secondary);gap:4px;font-size:.85em;display:grid}.home-kicker{color:var(--accent-bright);letter-spacing:.12em;font-size:.72em;font-weight:800}.home-quick{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:24px 0 28px;display:grid}.home-quick button{text-align:left;border:1px solid var(--border);border-radius:var(--radius-l);background:var(--bg-card);transition:border-color var(--t-fast), transform var(--t-fast);align-items:flex-start;gap:11px;padding:16px;display:flex}.home-quick button:hover{border-color:var(--accent);transform:translateY(-2px)}.home-quick svg{color:var(--accent-bright);flex:none}.home-quick span{gap:3px;min-width:0;display:grid}.home-quick small{color:var(--text-secondary)}.home-empty{border:1px dashed var(--border-strong);border-radius:var(--radius-l);color:var(--text-secondary);padding:22px}.home-empty button{color:var(--accent-bright);font-weight:600}.home-page{width:100%;max-width:880px;margin:0 auto}.home-hello{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.home-online-pill{border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);transition:border-color var(--t-fast), color var(--t-fast);border-radius:999px;align-items:center;gap:7px;padding:7px 12px;font-size:.82em;display:inline-flex}.home-online-pill:hover{border-color:var(--border-strong);color:var(--text-primary)}.home-online-dot{background:var(--text-secondary);border-radius:50%;flex:none;width:7px;height:7px}.home-online-dot[data-online=true]{background:#4fbf7a;box-shadow:0 0 0 3px #4fbf7a24}.home-search{border:1px solid var(--border);border-radius:var(--radius-m);background:var(--bg-card);height:44px;transition:border-color var(--t-fast);align-items:center;gap:9px;margin-top:20px;padding:0 12px;display:flex;position:relative}.home-search:focus-within{border-color:var(--accent)}.home-search-icon{color:var(--text-secondary);flex:none}.home-search input{min-width:0;height:100%;color:var(--text-primary);font:inherit;background:0 0;border:0;outline:0;flex:1}.home-search input::placeholder{color:var(--text-secondary)}.home-search-clear{flex:none}.home-search-pop{z-index:40;background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-m);max-height:56vh;box-shadow:var(--shadow-2);padding:6px;animation:.14s ease-out pop;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto}.home-search-group{letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary);padding:8px 8px 4px;font-size:.7em;font-weight:700}.home-search-row{border-radius:var(--radius-s);text-align:left;width:100%;color:var(--text-primary);align-items:center;gap:10px;padding:8px;display:flex}.home-search-row:hover,.home-search-row:focus-visible{background:var(--bg-card)}.home-search-row>svg{color:var(--text-secondary);flex:none}.home-search-text{flex:1;gap:2px;min-width:0;display:grid}.home-search-text strong{white-space:nowrap;text-overflow:ellipsis;font-size:.92em;font-weight:600;overflow:hidden}.home-search-text small{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:.82em;overflow:hidden}.home-search-row.is-message .home-search-text small{color:var(--text-secondary)}.home-search-time{color:var(--text-secondary);flex:none;font-size:.78em}.home-search-empty{color:var(--text-secondary);padding:14px 10px;font-size:.9em}.home-section{margin-top:26px}.home-section-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.home-section-head .home-conv-heading{margin:0}.home-link{color:var(--text-secondary);transition:color var(--t-fast);align-items:center;gap:4px;font-size:.82em;display:inline-flex}.home-link:hover{color:var(--accent-bright)}.home-conv-heading{margin-bottom:12px;font-size:1.05em}.home-pinned{flex-wrap:wrap;gap:8px;display:flex}.home-pin-chip{max-width:100%;display:inline-flex;position:relative}.home-pin-unpin{border:1px solid var(--border);background:var(--bg-raised);width:18px;height:18px;color:var(--text-secondary);opacity:0;transition:opacity var(--t-fast), color var(--t-fast);border-radius:50%;place-items:center;display:grid;position:absolute;top:-6px;right:-6px}.home-pin-chip:hover .home-pin-unpin,.home-pin-unpin:focus-visible{opacity:1}.home-pin-unpin:hover{color:var(--text-primary)}.home-pin-card{border:1px solid var(--border);border-radius:var(--radius-m);background:var(--bg-card);min-width:168px;max-width:100%;color:var(--text-primary);text-align:left;transition:border-color var(--t-fast);align-items:center;gap:9px;padding:9px 12px 9px 9px;display:flex}.home-pin-card:hover{border-color:var(--accent)}.home-pin-name{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:.9em;font-weight:600;overflow:hidden}.home-pin-mark{color:var(--text-secondary);flex:none}.home-conv-rows{display:grid}.home-conv-row{border-bottom:1px solid var(--border);cursor:pointer;border-radius:0;gap:12px;padding:11px 8px;position:relative}.home-conv-row:last-child{border-bottom:0}.home-conv-row:hover{background:var(--bg-card)}.home-conv-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.home-conv-info{flex:1;gap:3px;min-width:0;display:grid}.home-conv-info .name{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.home-conv-preview{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:.85em;overflow:hidden}.home-conv-row.is-unread .name,.home-conv-row.is-unread .home-conv-preview{color:var(--text-primary)}.home-conv-meta{flex:none;align-items:center;gap:8px;display:flex}.home-conv-time{color:var(--text-secondary);white-space:nowrap;font-size:.76em}.home-conv-pin{opacity:0;color:var(--text-secondary);transition:opacity var(--t-fast), color var(--t-fast);flex:none}.home-conv-row:hover .home-conv-pin,.home-conv-pin.is-on,.home-conv-pin:focus-visible{opacity:1}.home-conv-pin.is-on{color:var(--accent-bright)}.home-conv-pin:hover{color:var(--text-primary)}.home-activity-list{border-top:1px solid var(--border);display:grid}.home-activity-row{border-bottom:1px solid var(--border);text-align:left;width:100%;color:var(--text-primary);transition:background var(--t-fast);align-items:center;gap:11px;padding:10px 8px;display:flex}.home-activity-row:hover{background:var(--bg-card)}.home-activity-text{flex:1;gap:2px;min-width:0;display:grid}.home-activity-text>span{white-space:nowrap;text-overflow:ellipsis;font-size:.88em;overflow:hidden}.home-activity-text strong{font-weight:600}.home-activity-place{color:var(--text-secondary)}.home-activity-text small{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:.82em;overflow:hidden}.subscription-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:24px 0;display:grid}.subscription-grid article{border:1px solid var(--border);background:var(--bg-card);border-radius:var(--radius-l);padding:20px}.subscription-grid p,.subscription-note{color:var(--text-secondary)}.friends-content{max-width:none}.friends-overview{border-radius:var(--radius-m);background:var(--bg-surface);justify-content:space-between;gap:16px;margin-bottom:22px;padding:18px;display:flex}.friends-overview h2{margin:6px 0;font-size:1.2em}.friends-overview p,.friends-empty p{color:var(--text-secondary);margin:4px 0 0}.friends-stats{color:var(--text-secondary);gap:18px;display:flex}.friends-stats span{justify-items:center;display:grid}.friends-stats strong{color:var(--text-primary);font-size:1.3em}.friends-search{max-width:600px;display:flex}.friends-search input{width:100%}.friends-empty{border:1px dashed var(--border-strong);border-radius:var(--radius-m);align-items:center;gap:12px;padding:20px;display:flex}.friends-empty svg{color:var(--accent-bright)}@media (width<=700px){.home-content,.subscription-page{padding:20px}.friends-overview{flex-wrap:wrap}.home-conv-pin{opacity:1}.home-pin-card{min-width:0}.home-search-pop{max-height:60vh;position:fixed;top:96px;left:12px;right:12px}}.settings-hint{color:var(--text-secondary);margin:0 0 16px}.shortcuts-list{margin-bottom:16px;display:grid}.shortcut-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:9px 0;display:flex}.shortcut-row .btn{font-family:var(--font-mono);flex:none;font-size:.83em}.appearance-section h3{margin-top:18px;font-size:.95em}.appearance-preview{border:1px solid var(--border-strong);border-radius:var(--radius-m);background:var(--bg-surface);gap:12px;padding:16px;display:flex}.appearance-preview-avatar{background:var(--accent);color:#fff;border-radius:50%;flex:none;place-items:center;width:38px;height:38px;font-weight:800;display:grid}.appearance-preview small{color:var(--text-secondary)}.appearance-preview p{margin:4px 0 0;line-height:1.55}.settings-select{color:var(--text-secondary);gap:7px;margin:14px 0;font-weight:600;display:grid}.settings-select .input{width:min(100%,420px);height:42px}.channel-create-fields{gap:8px;padding:4px;display:grid}.channel-create-fields select{width:100%}.channel-create-name{gap:6px;min-width:0;display:flex}.channel-create-name input{flex:1;min-width:0}.channel-create-name .btn{padding:0 12px}.notif-panel{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-l);width:340px;max-height:calc(100vh - 80px);box-shadow:var(--shadow-2);z-index:750;animation:pop var(--t-fast) var(--ease);position:fixed;top:8px;left:64px;overflow:auto}.notif-head{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:12px 14px;font-weight:700;display:flex}.notif-list{gap:2px;padding:8px;display:grid}.notif-row{border-radius:var(--radius-m);text-align:left;align-items:flex-start;gap:10px;width:100%;padding:10px 12px;display:flex}.notif-row:hover{background:var(--bg-card)}.notif-row[data-read=false]{background:var(--accent-soft)}.notif-row .label{flex:1;min-width:0}.notif-row .unread-dot{background:var(--accent);border-radius:50%;flex:none;width:8px;height:8px;margin-top:6px}.update-card{z-index:120;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-l);width:min(340px,100vw - 24px);box-shadow:var(--shadow-2);gap:8px;padding:12px;display:grid;position:fixed;bottom:16px;right:16px}.update-card.inline{background:var(--accent-soft);border-radius:var(--radius-m);width:auto;box-shadow:none;border-color:#0000;padding:10px;position:static}.update-head{align-items:flex-start;gap:8px;display:flex}.update-icon{background:var(--bg-raised);width:26px;height:26px;color:var(--accent);border-radius:8px;flex:none;place-items:center;display:grid}.update-text{flex:1;gap:2px;min-width:0;display:grid}.update-text b{font-size:.88em}.update-text small{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:.76em}.update-bar{background:var(--bg-raised);border:1px solid var(--border);border-radius:999px;height:6px;overflow:hidden}.update-bar i{background:linear-gradient(90deg, var(--accent), color-mix(in srgb, var(--accent) 50%, #7ce3c0));border-radius:999px;height:100%;transition:width .25s;display:block}.update-bar[data-indeterminate] i{animation:1.1s ease-in-out infinite update-slide}@keyframes update-slide{0%{margin-left:-35%}to{margin-left:100%}}.update-action{justify-self:start}@media (width<=780px){.update-card{width:auto;left:12px;right:12px;bottom:calc(74px + env(safe-area-inset-bottom))}}.friends-page{height:100%;min-height:0;padding:28px 32px 60px;overflow-y:auto}.friends-page>h1{margin:0 0 22px}.settings-section{overflow-wrap:anywhere;min-width:0}.settings-section>div{flex-wrap:wrap}.settings-section .input{min-width:0;max-width:100%}.friend-row{align-items:center;gap:12px;padding:10px 6px;display:flex}.friend-row .info{min-width:0}.friend-row .info .name{font-weight:600}.friend-row .info .handle{color:var(--text-secondary);font-size:.85em}.conv-list{max-width:720px;margin:0 auto;padding:0 16px}.conv-row{border-radius:var(--radius-m);text-align:left;align-items:center;gap:12px;width:100%;padding:12px 14px;display:flex}.conv-row:hover{background:var(--bg-card)}.palette-backdrop{z-index:850;background:#0607098c;place-items:start center;padding-top:14vh;display:grid;position:fixed;inset:0}.palette{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-l);width:min(560px,92vw);box-shadow:var(--shadow-2);animation:modal-in var(--t-med) var(--ease);overflow:hidden}.palette-input{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:12px 16px;display:flex}.palette-input input{color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:1em}.palette-item{border-radius:var(--radius-m);text-align:left;align-items:center;gap:10px;width:100%;padding:9px 12px;display:flex}.palette-item .label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.palette-item .hint{color:var(--text-faint);font-size:.8em}.palette-item:hover,.palette-item.active{background:var(--bg-card)}.palette-foot{border-top:1px solid var(--border);color:var(--text-faint);padding:8px 14px;font-size:.78em}.palette-foot kbd{background:var(--bg-card);border:1px solid var(--border);border-radius:4px;padding:1px 5px}.rail-rooms{flex-direction:column;align-items:center;gap:8px;width:100%;min-height:0;padding:2px 0;display:flex;overflow-y:auto}.room-rail-btn{background:var(--bg-card);color:var(--text-primary);font-size:12px;font-weight:800}.room-rail-btn img{border-radius:inherit;object-fit:cover;width:100%;height:100%}.room-add{border:1px dashed var(--border-strong);color:var(--accent-bright)}.room-kicker{color:var(--accent-bright);font:700 10px var(--font-mono);letter-spacing:.16em;margin-bottom:10px;display:block}.room-modal-description{color:var(--text-secondary);margin:8px 0 18px}.room-tabs{background:var(--bg-input);border-radius:10px;gap:6px;margin-bottom:18px;padding:4px;display:flex}.room-tabs button{color:var(--text-secondary);border-radius:7px;flex:1;padding:9px;font-weight:700}.room-tabs button.active{background:var(--bg-raised);color:var(--text-primary)}.room-fields{gap:12px;margin-top:16px;display:grid}.room-fields label{gap:6px;font-size:.88em;font-weight:700;display:grid}.room-fields label span,.room-fields p{color:var(--text-secondary);font-size:.9em;font-weight:400}.room-fields .input{width:100%}.room-actions{justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.profile-image-controls{flex-wrap:wrap;gap:8px;margin:0 0 16px;display:flex}.profile-image-controls input{opacity:0;width:1px;height:1px;position:absolute}.mobile-nav-toggle,.mobile-tabbar{display:none}:root{--keyboard-inset:0px}@media (width<=780px){.app-shell{height:100dvh}.mobile-tabbar{z-index:70;padding:6px 6px calc(6px + env(safe-area-inset-bottom));background:var(--bg-surface);border-top:1px solid var(--border);grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-tabbar a{min-height:52px;color:var(--text-secondary);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:11px;text-decoration:none;display:flex}.mobile-tabbar a.active{color:var(--text-primary);background:var(--bg-raised)}.mobile-tabbar a:focus-visible{outline:2px solid var(--accent-bright);outline-offset:-2px}.mainarea{padding-bottom:calc(64px + env(safe-area-inset-bottom))}.profilebar{bottom:calc(58px + env(safe-area-inset-bottom))}.mobile-tabbar a{min-width:44px;min-height:52px}.iconbtn,.btn{min-width:44px;min-height:44px}.modal{width:calc(100vw - 16px);max-width:calc(100vw - 16px);max-height:calc(100dvh - 32px);overflow-y:auto}.app-shell .composer textarea{font-size:16px}html,body{overflow-x:hidden}}.mobile-back{display:none}@media (width<=1024px){.members{z-index:40;position:absolute;top:0;bottom:58px;right:0}}@media (width<=780px){.members{display:none}.app-shell{grid-template-columns:1fr}.rail{z-index:60;visibility:hidden;pointer-events:none;transition:transform var(--t-med) var(--ease), visibility 0s linear var(--t-med);position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.rail.open{visibility:visible;pointer-events:auto;transition:transform var(--t-med) var(--ease), visibility 0s;transform:translate(0)}.spacebar{z-index:55;visibility:hidden;pointer-events:none;transition:transform var(--t-med) var(--ease), visibility 0s linear var(--t-med);width:280px;position:fixed;top:0;bottom:0;left:64px;transform:translate(-110%)}.mobile-nav-open .spacebar{visibility:visible;pointer-events:auto;transition:transform var(--t-med) var(--ease), visibility 0s}.mainarea{padding-top:56px}.spacebar-head{min-height:52px;padding:10px 10px 10px 14px}.mobile-back{order:9;display:grid}.spacebar-head .iconbtn{background:var(--bg-raised);border-radius:9px;flex:none;width:34px;min-width:34px;height:34px}.spacebar-body{padding:8px 6px 24px}.room-card{margin:8px 6px}.mobile-nav-toggle{z-index:80;background:var(--bg-raised);width:38px;height:38px;color:var(--text-primary);border-radius:9px;place-items:center;display:grid;position:fixed;top:8px;right:8px}.mobile-nav-open .rail,.mobile-nav-open .spacebar{transform:translate(0)}.settings-page{flex-direction:column}.settings-menu{flex-direction:row;flex:none;width:100%;min-width:0;padding:10px;overflow:auto hidden}.settings-menu-item{white-space:nowrap;flex:none;width:auto;min-height:44px;padding-top:10px;padding-bottom:10px}.room-tab,.menu-pop .menu-item,.menu-pop button,.profilebar>button{min-height:44px}.settings-menu>.menu-item{white-space:nowrap;flex:none;width:auto}.settings-content,.friends-page{padding:20px 18px 48px}.modal{max-width:calc(100vw - 24px);max-height:90vh;overflow-y:auto;min-width:0!important}}.room-settings-modal{width:min(680px,100vw - 24px);max-height:min(86vh,760px);overflow-y:auto}.room-tabs{flex-wrap:wrap}.room-tabs .room-tab{white-space:nowrap;flex:0 auto;padding:8px 12px;font-size:.86em}.room-overview{gap:14px;margin-top:16px;display:grid}.room-overview-head{border:1px solid var(--border);border-radius:var(--radius-m);background:var(--bg-raised);flex-wrap:wrap;align-items:center;gap:12px;padding:12px;display:flex}.room-overview-text{gap:2px;min-width:0;display:grid}.room-overview-text strong{overflow-wrap:anywhere;font-size:1.05em}.room-overview-text span{color:var(--text-faint);font-size:.82em}.room-overview-stats{color:var(--text-secondary);flex-wrap:wrap;gap:14px;margin-left:auto;font-size:.8em;display:flex}.room-overview-stats b{color:var(--text-primary)}.room-overview-note{color:var(--text-faint);align-items:center;gap:6px;font-size:.82em;display:flex}.room-appearance{gap:14px}.room-image-preview{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;flex:none;place-items:center;width:72px;height:72px;display:grid;overflow:hidden}.room-image-preview img{object-fit:cover;width:100%;height:100%}.room-image-preview span{color:var(--text-secondary);font-size:1.6em;font-weight:800}.room-avatar-crop{width:84px;height:84px}.room-image-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.room-image-hint{color:var(--text-faint);font-size:.78em}.room-banner-preview{border-radius:var(--radius-m);border:1px solid var(--border);background:var(--bg-card) center/cover no-repeat;height:120px}.room-crop{border:1px solid var(--border);border-radius:var(--radius-s);gap:8px;padding:10px;display:grid}.room-crop label{grid-template-columns:160px 1fr;align-items:center;gap:10px;font-size:.82em;font-weight:600;display:grid}.room-crop input[type=range]{width:100%;accent-color:var(--accent)}.theme-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;display:grid}.theme-chip{border:1px solid var(--border);border-radius:var(--radius-s);color:var(--text-secondary);align-items:center;gap:8px;padding:9px;font-weight:600;display:flex}.theme-chip:hover{background:var(--bg-card);color:var(--text-primary)}.theme-chip.active{border-color:var(--accent);color:var(--text-primary);background:var(--accent-soft)}.theme-swatch{border:1px solid var(--border-strong);background:#191817;border-radius:6px;width:22px;height:22px}.theme-chip[data-room-theme=black] .theme-swatch{background:#0b0b0b}.theme-chip[data-room-theme=crimson] .theme-swatch{background:#231014}.theme-chip[data-room-theme=slate] .theme-swatch{background:#1b1e22}.accent-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.accent-row input[type=color]{border:1px solid var(--border);background:var(--bg-card);border-radius:7px;width:38px;height:30px;padding:2px}.accent-dot{width:24px;height:24px;box-shadow:0 0 0 1px var(--border-strong);border:2px solid #0000;border-radius:50%}.accent-dot.active{border-color:var(--text-primary)}.contrast-note{color:var(--text-faint);font-size:.78em}.contrast-note.is-bad{color:var(--accent-bright)}.invite-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.invite-row .input{flex:1;min-width:160px}.channel-settings{width:min(620px,100vw - 24px);max-height:min(86vh,720px);overflow-y:auto}.channel-settings-head{align-items:center;gap:10px;margin-bottom:4px;display:flex}.channel-settings-head h3{flex:1}.channel-settings-icon{background:var(--accent-soft);width:34px;height:34px;color:var(--accent-bright);border-radius:10px;flex:none;place-items:center;display:grid}.channel-topic{resize:vertical;min-height:60px}.channel-access{gap:10px;margin-top:12px;display:grid}.channel-access-hint{color:var(--text-faint);margin:0;font-size:.82em;line-height:1.45}.channel-access-legend{color:var(--text-faint);flex-wrap:wrap;align-items:center;gap:6px;font-size:.76em;display:flex}.channel-access-list{gap:6px;max-height:320px;margin-top:4px;padding-right:2px;display:grid;overflow-y:auto}.channel-access-row{border:1px solid var(--border);border-radius:var(--radius-s);background:var(--bg-card);flex-wrap:wrap;align-items:center;gap:10px;padding:8px 10px;display:flex}.channel-access-row:hover{border-color:var(--border-strong)}.channel-access-row small{color:var(--text-faint);text-transform:uppercase;letter-spacing:.05em;font-size:.74em}.channel-access-who{align-items:center;gap:8px;min-width:0;display:flex}.access-avatar{background:var(--bg-card);border:1px solid var(--border);width:26px;height:26px;color:var(--text-secondary);border-radius:8px;flex:none;place-items:center;display:grid}.channel-access-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.86em;font-weight:600;overflow:hidden}.channel-access-perms{flex-wrap:wrap;gap:4px;margin-left:auto;display:flex}.perm-chip{border:1px solid var(--border);background:var(--bg-card);color:var(--text-faint);letter-spacing:.01em;border-radius:999px;align-items:center;gap:4px;padding:3px 7px;font-size:.72em;font-weight:700;display:inline-flex}.perm-chip:hover{color:var(--text-primary);border-color:var(--border-strong)}.perm-chip.is-allow{color:#a6dcb8;background:#4f9d6b29;border-color:#4f9d6b99}.perm-chip.is-deny{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-bright)}.role-dot{border-radius:50%;flex:none;width:8px;height:8px}.check-row{color:var(--text-secondary);cursor:pointer;align-items:center;gap:8px;font-size:.88em;display:flex}.check-row input{accent-color:var(--accent)}.room-access-panel{gap:16px;margin-top:12px;display:grid}.access-section{gap:8px;display:grid}.access-section>h4{color:var(--text-secondary);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:.78em}.access-group{border:1px solid var(--border);border-radius:var(--radius-m);overflow:hidden}.access-group-head{background:var(--bg-raised);align-items:center;gap:8px;padding:9px 11px;font-size:.86em;font-weight:700;display:flex}.access-group-head .btn{margin-left:auto}.access-channel-row{border-top:1px solid var(--border);align-items:center;gap:8px;padding:7px 11px;font-size:.86em;display:flex}.access-channel-name{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;min-width:0;display:flex;overflow:hidden}.access-channel-meta{color:var(--text-faint);align-items:center;gap:6px;margin-left:auto;font-size:.8em;display:flex}.access-channel-meta .btn{padding:4px 8px}.access-members{gap:2px;display:grid}.access-member-row{border-radius:8px;align-items:center;gap:8px;padding:7px 9px;display:flex}.access-member-row:hover{background:var(--bg-card)}.access-member-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.87em;font-weight:600;overflow:hidden}.access-member-roles{flex-wrap:wrap;gap:4px;margin-left:auto;display:flex}.role-chips{flex-wrap:wrap;gap:4px;display:flex}.member-perms{gap:8px;margin-top:12px;display:grid}.member-perm-row{border:1px solid var(--border);border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:7px 9px;font-size:.86em;display:flex}.member-perm-row .role-chips{margin-left:auto}.role-editor{gap:12px;margin-top:12px;display:grid}.roles-head{align-items:center;gap:8px;display:flex}.roles-head h4{color:var(--text-secondary);letter-spacing:.05em;text-transform:uppercase;flex:1;margin:0;font-size:.8em}.roles-list{gap:6px;display:grid}.role-row{border:1px solid var(--border);border-radius:var(--radius-s);width:100%;color:var(--text-primary);background:var(--bg-card);text-align:left;align-items:center;gap:8px;padding:9px 11px;display:flex}.role-row:hover{border-color:var(--border-strong)}.role-row-main{align-items:center;gap:8px;min-width:0;display:flex}.role-name{overflow-wrap:anywhere;font-weight:700}.role-count{color:var(--text-faint);white-space:nowrap;margin-left:auto;font-size:.78em}.role-system{color:var(--text-faint);text-transform:uppercase;letter-spacing:.04em;font-size:.72em}.role-editor-head{border:1px solid var(--border);border-radius:var(--radius-m);background:var(--bg-raised);gap:8px;padding:12px;display:grid}.role-editor-head .role-top{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.role-editor-head .input{flex:1;min-width:100px}.role-color{flex:none;width:48px;padding:2px}.role-perms{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:4px 12px;display:grid}.role-perm{color:var(--text-secondary);cursor:pointer;align-items:center;gap:7px;font-size:.82em;display:flex}.role-perm input{accent-color:var(--accent)}.roles-grant{gap:8px;display:grid}.roles-grant-row{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.roles-members{gap:6px;max-height:260px;display:grid;overflow-y:auto}.roles-member{border-radius:8px;align-items:center;gap:8px;padding:6px 8px;display:flex}.roles-member:hover{background:var(--bg-card)}.roles-member-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.87em;font-weight:600;overflow:hidden}.roles-member-tags{flex-wrap:wrap;gap:4px;margin-left:auto;display:flex}.member-rank{border:1px solid var(--border-strong);border-radius:999px;align-items:center;gap:4px;padding:2px 7px;font-size:.74em;font-weight:700;display:inline-flex}.room-moderation{gap:8px;margin-top:12px;display:grid}.moderation-row{border:1px solid var(--border);border-radius:8px;align-items:center;gap:8px;padding:8px 10px;font-size:.86em;display:flex}.moderation-who{font-weight:600}.moderation-date{color:var(--text-faint);white-space:nowrap;margin-left:auto;font-size:.8em}.room-danger{border:1px solid var(--accent);border-radius:var(--radius-m);background:var(--accent-soft);flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;padding:12px;display:flex}.room-danger p{min-width:180px;color:var(--text-secondary);flex:1;margin:0;font-size:.85em}.room-danger .input{flex:1;min-width:160px}.member-group{color:var(--text-faint);letter-spacing:.06em;text-transform:uppercase;margin:12px 4px 4px;font-size:.72em;font-weight:700}.member-role-dot{vertical-align:middle;border-radius:50%;width:6px;height:6px;margin-right:5px;display:inline-block}.member-card-actions{gap:8px;margin-top:20px;display:flex}.member-card-actions .btn{flex:1;justify-content:center}.ctx-back{z-index:890;position:fixed;inset:0}.member-ctx{width:220px}.admin-page{flex:1;min-width:0;height:100%;padding:24px 24px 96px;display:block;overflow-y:auto}.admin-page h1{margin:0;font-size:1.25em}.admin-tabs{background:var(--bg-input);scrollbar-width:none;border-radius:10px;gap:6px;margin-bottom:18px;padding:4px;display:flex;overflow-x:auto}.admin-tabs::-webkit-scrollbar{display:none}.admin-tabs button{color:var(--text-secondary);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:7px;flex:none;align-items:center;gap:6px;padding:9px 12px;font-size:.86em;font-weight:700;display:inline-flex}.admin-tabs button:hover{color:var(--text-primary);background:var(--bg-card)}.admin-tabs button.active{background:var(--bg-raised);color:var(--text-primary);box-shadow:inset 0 -2px 0 var(--accent)}.admin-tab-count{background:var(--accent);color:#fff;border-radius:9px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:800;display:grid}.admin-actions-row{justify-content:flex-end;margin-top:12px;display:flex}.admin-logo-row{flex-wrap:wrap;align-items:center;gap:14px;margin:4px 0 8px;display:flex}.admin-logo-preview{background:var(--bg-card);border:1px solid var(--border);width:72px;height:72px;color:var(--text-secondary);border-radius:18px;flex:none;place-items:center;font-size:1.4em;font-weight:800;display:grid;overflow:hidden}.admin-logo-preview img{object-fit:cover;width:100%;height:100%}.admin-swatches{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-swatch{background:var(--bg-input);min-width:34px;height:34px;color:var(--text-secondary);cursor:pointer;border:0;border-radius:9px;padding:0 10px;font-size:.78em;font-weight:700}.admin-swatch.active{outline:2px solid var(--text-primary);outline-offset:2px}.admin-color-field{border:1px dashed var(--border-strong);height:34px;color:var(--text-secondary);cursor:pointer;border-radius:9px;align-items:center;gap:6px;padding:0 10px;font-size:.78em;font-weight:700;display:inline-flex}.admin-color-field input[type=color]{cursor:pointer;background:0 0;border:0;width:20px;height:20px;padding:0}.admin-brand-preview{border:1px solid var(--border);border-radius:var(--radius-m);background:var(--bg-raised);flex-wrap:wrap;align-items:center;gap:12px;padding:14px;display:flex}.admin-brand-mark{background:var(--accent);color:#fff;border-radius:12px;flex:none;place-items:center;width:44px;height:44px;font-weight:800;display:grid;overflow:hidden}.admin-brand-mark img{object-fit:cover;width:100%;height:100%}.admin-brand-name{font-weight:800}.admin-brand-tag{color:var(--text-secondary);font-size:.84em}@media (width<=720px){.admin-page{padding:16px 14px 96px}.admin-tabs button{min-height:44px;padding:10px 12px}.admin-tabs{margin-inline:-2px}.admin-swatch,.admin-color-field{min-height:44px}}.settings-page.admin-page{max-width:100%;padding-inline:clamp(12px,3vw,24px);display:block;overflow-x:hidden}.admin-page>div,.admin-page section{min-width:0;max-width:100%}.admin-page h1,.admin-page .handle,.admin-page .name{overflow-wrap:anywhere}.admin-page .friend-row{flex-wrap:wrap;row-gap:6px}.admin-page .friend-row .btn{flex:none}.admin-page .settings-section{width:100%}.admin-page form{min-width:0}.admin-page form .input{width:auto;min-width:0}.admin-page .input{max-width:100%}.perm-chip{color:var(--text-secondary);border-color:var(--border-strong)}.settings-hint{color:var(--text-secondary)}.chan svg{opacity:.9}.member-sub,.attach-size,.moderation-date,.home-conv-time{color:var(--text-secondary)}.btn{border:1px solid var(--border-strong)}.btn:not(.btn-primary):hover{border-color:var(--text-faint)}.btn:disabled{opacity:.45;cursor:not-allowed;border-color:var(--border);box-shadow:none;filter:saturate(.8)}.btn-primary:disabled{background:var(--accent);opacity:.35}.btn:focus-visible,.iconbtn:focus-visible,.object:focus-visible,button:focus-visible{outline:2px solid var(--accent-bright);outline-offset:2px}.iconbtn:disabled{opacity:.4}.pending-msg{opacity:.62}.pending-msg .time:after{content:" ⏳";font-size:.85em}.failed-msg .msg-failed-text{color:var(--accent-bright);font-size:.92em}.media-consent-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:10px 0;display:grid}.settings-field{gap:5px;display:grid}.settings-field>span{color:var(--text-secondary);font-size:.84em;font-weight:700}.screen-source-list{grid-template-columns:repeat(2,1fr);gap:8px;max-height:260px;margin:8px 0;display:grid;overflow-y:auto}.screen-source{border:1px solid var(--border);border-radius:var(--radius-m);background:var(--bg-card);color:var(--text-primary);text-align:left;gap:6px;padding:6px;display:grid}.screen-source.selected{border-color:var(--accent);background:var(--accent-soft)}.screen-source img{aspect-ratio:16/9;object-fit:cover;background:var(--bg-app);border-radius:6px;width:100%}.screen-source span{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:5px;font-size:.8em;display:flex;overflow:hidden}.screen-source.selected span{color:var(--text-primary)}.screen-source-empty{color:var(--text-secondary);text-align:center;grid-column:1/-1;padding:12px}.activity-page{gap:18px;width:100%;max-width:860px;height:100%;margin:0 auto;padding:24px 28px 96px;display:grid;overflow-y:auto}.activity-section{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-l);padding:14px 16px}@media (width<=780px){.activity-page{padding:16px 14px calc(104px + env(safe-area-inset-bottom))}}.activity-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.activity-head h1{margin:0}.activity-section h2{align-items:center;gap:7px;margin:0 0 10px;font-size:1.02em;display:flex}.activity-list{display:grid}.activity-row{border-bottom:1px solid var(--border);text-align:left;width:100%;color:var(--text-primary);align-items:center;gap:12px;padding:10px;display:flex}.activity-row:hover{background:var(--bg-card)}.activity-text{flex:1;gap:2px;min-width:0;display:grid}.activity-text>div:first-child{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.activity-text small{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:.8em;overflow:hidden}.activity-text svg{vertical-align:-2px;color:var(--text-secondary);margin-right:4px}.activity-time{color:var(--text-secondary);flex:none;font-size:.76em}.activity-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;display:grid}.activity-game-card{border:1px solid var(--border);border-radius:var(--radius-l);background:var(--bg-card);color:var(--text-primary);text-align:left;align-items:center;gap:10px;padding:14px;display:flex}.activity-game-card:hover{border-color:var(--accent)}.activity-game-card svg{color:var(--accent-bright);flex:none}@media (width<=700px){.activity-page{padding:16px 14px 40px}.activity-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}}.profile-card-full{max-width:760px}.profile-banner{background:linear-gradient(120deg, var(--bg-raised), var(--bg-card));border-radius:14px;height:120px;position:relative;overflow:hidden}.profile-banner-lg{height:168px}.profile-banner-fallback{background:linear-gradient(120deg, color-mix(in srgb, var(--profile-accent,var(--accent)) 18%, transparent), var(--bg-raised));position:absolute;inset:0}.profile-head{position:relative}.profile-status-pill{border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);border-radius:999px;align-self:center;align-items:center;gap:6px;margin-left:auto;padding:6px 12px;font-size:.84em;display:inline-flex}.profile-body{padding:10px 20px 22px}.profile-activity{border:1px solid var(--border);border-radius:var(--radius-m);background:var(--bg-card);color:var(--text-secondary);align-items:center;gap:8px;margin:8px 0;padding:9px 12px;font-size:.9em;display:flex}.profile-activity svg{color:var(--profile-accent,var(--accent-bright));flex:none}.profile-showcase h3{align-items:center;gap:6px;margin:14px 0 8px;font-size:.92em;display:flex}.profile-showcase-grid{flex-wrap:wrap;gap:8px;display:flex}.ach-badge{border:1px solid var(--border);border-radius:var(--radius-m);background:var(--bg-card);text-align:center;justify-items:center;gap:2px;min-width:104px;padding:10px 12px;display:grid}.ach-badge-icon{font-size:1.5em}.ach-badge-name{color:var(--text-primary);font-size:.8em;font-weight:700}.ach-badge-rarity{letter-spacing:.06em;text-transform:uppercase;color:var(--text-secondary);font-size:.68em;font-weight:700}.ach-badge.selectable{cursor:pointer}.ach-badge.selectable.selected{border-color:var(--accent);background:var(--accent-soft)}.avatar-frame{border-radius:50%;padding:3px;line-height:0;display:inline-block}.avatar-frame[data-size=sm]{padding:2px}.avatar-frame[data-size=lg]{padding:4px}.avatar-frame .avatar{border-radius:50%;position:relative}.avatar-frame .avatar-dot{border-color:var(--bg-card)}.avatar-frame-steel{background:linear-gradient(135deg,#8a8f98,#3a3f46 55%,#6e747c);border-radius:50%;padding:3px}.avatar-frame-bronze{background:linear-gradient(135deg,#c9a36b,#6e4b23 55%,#a87c46);border-radius:50%;padding:3px}.avatar-frame-silver{background:linear-gradient(135deg,#f2f4f8,#9aa2ad 55%,#d7dce2);border-radius:50%;padding:3px}.avatar-frame-gold{background:linear-gradient(135deg,#f5d67a,#b98a2b 55%,#edc250);border-radius:50%;padding:3px;box-shadow:0 0 10px #f5d67a40}.avatar-frame-crimson{background:linear-gradient(135deg,#e0283f,#6d0f1e 55%,#c8102e);border-radius:50%;padding:3px;box-shadow:0 0 12px #c8102e59}.avatar-frame-snow{background:conic-gradient(#e8f6ff,#8dc4ee,#fff,#a9d6f5,#e8f6ff);border-radius:50%;padding:3px;box-shadow:0 0 12px #96cdff73}.avatar-frame-pumpkin{background:conic-gradient(from 20deg,#ffb15c,#c2551b,#7a2f0d,#ff9a3c,#ffb15c);border-radius:50%;padding:3px;box-shadow:0 0 12px #ff8c2873}.avatar-frame-hearts{background:conic-gradient(#ffd0e0,#e0387a,#ff9fc0,#ffd0e0);border-radius:50%;padding:3px;box-shadow:0 0 12px #e0387a66}.avatar-frame-blossom{background:conic-gradient(from 40deg,#fff0f7,#e88ab5,#ffd7ea,#b7e6c4,#fff0f7);border-radius:50%;padding:3px;box-shadow:0 0 12px #e88ab566}.avatar-frame-victory{background:conic-gradient(from 10deg,#f2c14e,#8a5a1d,#e8a33a,#f7dd93,#f2c14e);border-radius:50%;padding:3px;box-shadow:0 0 12px #f2c14e6b}.avatar-frame-defender{background:conic-gradient(#cfe7cf,#3f6b46,#9fd0a0,#dff2df,#cfe7cf);border-radius:50%;padding:3px;box-shadow:0 0 12px #82be8c66}.frame-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin-bottom:14px;display:grid}.frame-chip{border:1px solid var(--border);border-radius:var(--radius-m);background:var(--bg-card);color:var(--text-primary);justify-items:center;gap:5px;padding:12px 8px;font-size:.84em;display:grid}.frame-chip.active{border-color:var(--accent);background:var(--accent-soft)}.frame-chip small{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:.7em}.frame-chip:disabled{opacity:.5;cursor:not-allowed}.settings-section{border:1px solid var(--border);background:var(--bg-surface);border-radius:16px;padding:18px 20px}.settings-section+.settings-section{margin-top:14px}.settings-section h2{letter-spacing:-.01em;margin-bottom:6px;font-size:1.04em}.settings-section h3,.settings-section h4{letter-spacing:-.005em;font-size:.95em}.settings-hint{color:var(--text-secondary);font-size:.84em;line-height:1.5}.frame-chip{transition:transform var(--t-fast), border-color var(--t-fast), background var(--t-fast);border-radius:14px}.frame-chip:hover:not(:disabled){border-color:var(--border-strong);transform:translateY(-1px)}.admin-tabs{flex-wrap:wrap;gap:6px}.admin-tabs button{border-radius:999px}.room-fields label>span{color:var(--text-secondary);font-size:.82em}.profile-gifts{margin-top:16px}.profile-gifts h3{color:var(--text-secondary);align-items:center;gap:6px;margin-bottom:8px;font-size:.92em;display:flex}.gift-chip{border:1px solid var(--border);background:var(--bg-card);border-radius:14px;justify-items:start;gap:3px;padding:10px 12px;display:grid}.gift-chip b{font-size:.84em}.gift-chip small{color:var(--text-secondary);font-size:.74em}.gift-chip i{color:var(--text-primary);opacity:.85;font-size:.78em;font-style:italic}.gift-chip .frame-preview{width:34px;height:34px}.composer textarea,.composer input,.msg-text,.msg-body,.message-text,.chat-input,.msg-edit-input{font-family:var(--font-chat)}.frame-preview{background:var(--bg-raised);border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.frame-dot{background:var(--bg-card);border-radius:50%;width:22px;height:22px}.profile-deco-spark .profile-banner-fallback{background:radial-gradient(circle at 18% 30%, color-mix(in srgb, var(--profile-accent,var(--accent)) 26%, transparent) 0 2px, transparent 3px) 0 0/26px 26px, radial-gradient(circle at 62% 56%, color-mix(in srgb, var(--profile-accent,var(--accent)) 18%, transparent) 0 1.6px, transparent 3px) 0 0/34px 34px, linear-gradient(120deg, var(--bg-raised), var(--bg-card))}.profile-deco-grid .profile-banner-fallback{background:linear-gradient(var(--border) 1px, transparent 1px) 0 0/22px 22px, linear-gradient(90deg, var(--border) 1px, transparent 1px) 0 0/22px 22px, linear-gradient(120deg, var(--bg-raised), var(--bg-card))}.profile-deco-orbit .profile-banner-fallback{background:radial-gradient(circle at 78% 42%, color-mix(in srgb, var(--profile-accent,var(--accent)) 30%, transparent) 0 42px, transparent 43px) bottom 60px left -30px/120px 120px no-repeat, linear-gradient(120deg, var(--bg-raised), var(--bg-card))}.profile-editor-modal{width:min(720px,100vw - 24px);max-height:min(88vh,780px);overflow-y:auto}.profile-banner-preview{height:140px}.profile-editor-modal h4{margin:16px 0 8px;font-size:.9em}.showcase-editor{flex-wrap:wrap;gap:8px;display:flex}.showcase-editor small{color:var(--text-secondary);margin-top:4px;font-size:.72em;display:block}.collection-grid{gap:10px;display:grid}.ach-card{border:1px solid var(--border);border-radius:var(--radius-m);background:var(--bg-card);padding:12px}.ach-card.earned{border-color:var(--border-strong)}.ach-card p{color:var(--text-secondary);margin:6px 0 4px;font-size:.84em}.ach-card small{color:var(--text-faint);font-size:.76em}.ach-card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.ach-progress{flex:1;min-width:180px;max-width:240px}.ach-progress-bar{background:var(--bg-input);border-radius:4px;height:6px;overflow:hidden}.ach-progress-bar i{background:var(--accent);height:100%;display:block}.ach-progress small{text-align:right;color:var(--text-secondary);margin-top:3px;display:block}.chat.chat-with-pins{grid-template-rows:auto auto minmax(0,1fr) auto}.channel-pins{background:var(--bg-card);border-bottom:1px solid var(--border);max-height:240px;padding:12px 20px;overflow-y:auto}.channel-pins-head{justify-content:space-between;align-items:center;display:flex}.channel-pins p{color:var(--text-secondary);margin:8px 0}.channel-pin{border-top:1px solid var(--border);justify-content:space-between;gap:12px;padding:10px 0;display:flex}.channel-pin>div{overflow-wrap:anywhere;gap:4px;min-width:0;display:grid}.emoji-picker-wrap{flex:none;position:relative}.emoji-picker{z-index:500;border:1px solid var(--border-strong);border-radius:var(--radius-l);background:var(--bg-card);width:344px;max-width:calc(100vw - 32px);box-shadow:var(--shadow-2);gap:8px;padding:10px;display:grid;position:absolute;bottom:calc(100% + 12px);right:0}.emoji-tabs{border-bottom:1px solid var(--border);scrollbar-width:none;gap:2px;padding-bottom:6px;display:flex;overflow-x:auto}.emoji-tabs::-webkit-scrollbar{display:none}.emoji-tabs button{width:34px;height:34px;font-size:18px;line-height:1;font-family:var(--font-emoji);font-variant-emoji:emoji;opacity:.75;transition:background var(--t-fast), opacity var(--t-fast), transform var(--t-fast);border-radius:8px;flex:none;place-items:center;display:grid}.emoji-tabs button:hover{background:var(--bg-raised);opacity:1}.emoji-tabs button.active{background:var(--bg-raised);opacity:1;filter:none;box-shadow:inset 0 0 0 1px var(--border-strong)}.emoji-picker-title{letter-spacing:.04em;color:var(--text-secondary);padding:0 2px;font-size:.78em;font-weight:700}.emoji-grid{overscroll-behavior:contain;grid-template-columns:repeat(8,1fr);gap:2px;max-height:232px;display:grid;overflow-y:auto}.emoji-grid button{aspect-ratio:1;width:100%;font-size:24px;line-height:1;font-family:var(--font-emoji);font-variant-emoji:emoji;transition:background var(--t-fast), transform var(--t-fast);border-radius:8px;place-items:center;display:grid}.emoji-grid button:hover{background:var(--bg-raised);transform:scale(1.14)}@media (width<=780px){.emoji-picker{width:min(344px,100vw - 20px);right:-6px}.emoji-tabs button{width:40px;height:40px}.emoji-grid{grid-template-columns:repeat(7,1fr);max-height:44vh}}.chat{grid-template-rows:auto minmax(0,1fr) auto;height:100%;min-height:0;display:grid}.chat-head{border-bottom:1px solid var(--border);background:var(--bg-surface);align-items:center;gap:10px;min-height:64px;padding:10px 16px;display:flex}.chat-head .icon{color:var(--text-secondary)}.chat-title{white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}.chat-topic{color:var(--text-secondary);border-left:1px solid var(--border-strong);white-space:nowrap;text-overflow:ellipsis;max-width:40%;margin-left:2px;padding-left:10px;font-size:.85em;overflow:hidden}.chat-head .spacer{flex:1}.msg-list{scroll-behavior:smooth;padding:16px 0 8px;overflow-y:auto}.msg-list-inner{max-width:1100px;margin:0 auto;padding:0 24px}.day-sep{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:12px;margin:18px 8px 8px;font-size:.8em;font-weight:700;display:flex}.day-sep:before,.day-sep:after{content:"";background:var(--border);flex:1;height:1px}.msg-row{border-radius:var(--radius-m);gap:14px;padding:8px 12px;display:flex;position:relative}.msg-row.grouped{padding-top:0}.msg-row:hover{background:var(--bg-card)}.msg-gutter{flex:none;width:40px}.msg-gutter .time{visibility:hidden;color:var(--text-faint);text-align:center;font-size:10.5px;font-family:var(--font-mono);padding-top:6px;display:block}.msg-row:hover .msg-gutter .time{visibility:visible}.msg-body{flex:1;min-width:0}.msg-head{align-items:baseline;gap:8px;display:flex}.msg-author{cursor:pointer;font-size:.95em;font-weight:700}.msg-time{color:var(--text-faint);font-size:.76em;font-family:var(--font-mono)}.msg-edited{color:var(--text-faint);font-size:.75em}.msg-content{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--text-primary);font-size:1em;line-height:1.55}.msg-deleted{color:var(--text-faint);font-style:italic}.msg-code{background:var(--bg-input);border:1px solid var(--border);font-family:var(--font-mono);border-radius:4px;padding:1px 5px;font-size:.88em}.msg-link{color:var(--accent-bright);text-underline-offset:2px;text-decoration:underline}.msg-mention{color:var(--accent-bright);background:var(--accent-soft);cursor:pointer;border-radius:4px;padding:0 3px}.msg-reactions{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.reaction{background:var(--bg-input);border:1px solid var(--border);cursor:pointer;transition:border-color var(--t-fast), transform var(--t-fast);border-radius:999px;align-items:center;gap:5px;padding:2px 9px;font-size:1em;display:inline-flex}.reaction:hover{border-color:var(--border-strong);transform:translateY(-1px)}.reaction.mine{border-color:var(--accent);background:var(--accent-soft)}.reaction .cnt{color:var(--text-secondary);font-size:.8em;font-weight:700}.msg-reply{border-left:3px solid var(--border-strong);color:var(--text-secondary);cursor:pointer;margin-bottom:4px;padding:2px 10px;font-size:.8em}.msg-reply:hover{border-color:var(--accent)}.msg-reply .name{color:var(--text-primary);font-weight:600}.msg-reply .snippet{white-space:nowrap;text-overflow:ellipsis;max-width:60ch;display:block;overflow:hidden}.msg-attach{flex-direction:column;gap:6px;margin-top:6px;display:flex}.attach-img{border-radius:var(--radius-m);object-fit:contain;cursor:zoom-in;border:1px solid var(--border);max-width:380px;max-height:280px}.attach-file{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-m);cursor:pointer;align-items:center;gap:10px;max-width:380px;padding:10px 14px;display:flex}.attach-file:hover{border-color:var(--border-strong)}.attach-name{font-size:.88em;font-weight:600}.attach-size{color:var(--text-faint);font-size:.78em;font-family:var(--font-mono)}.msg-actions{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-m);box-shadow:var(--shadow-1);display:none;position:absolute;top:-16px;right:12px;overflow:hidden}.msg-row:hover .msg-actions{display:flex}.msg-act{color:var(--text-secondary);cursor:pointer;padding:7px 9px}.msg-act:hover{background:var(--bg-card);color:var(--text-primary)}.composer-wrap{width:100%;max-width:1100px;margin:0 auto;padding:6px 24px 18px;position:relative}.typing-line{height:16px;color:var(--text-secondary);padding:0 4px 2px;font-size:.78em;font-style:italic}.composer{background:var(--bg-card);border:1px solid var(--border-strong);border-radius:var(--radius-l);transition:border-color var(--t-fast);align-items:flex-end;gap:8px;padding:10px 12px;display:flex}.composer:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.composer .attach-previews{flex-basis:100%}.composer{flex-wrap:wrap}@media (width<=780px){.composer-wrap{padding:6px 12px 12px}.msg-list-inner{padding:0 12px}}.composer textarea{color:var(--text-primary);resize:none;background:0 0;border:none;outline:none;flex:1;max-height:180px;padding:6px 0;font-family:inherit;font-size:.95em;line-height:1.4}.reply-bar{background:var(--bg-card);border-radius:var(--radius-s);color:var(--text-secondary);align-items:center;gap:8px;margin-bottom:6px;padding:6px 10px;font-size:.85em;display:flex}.attach-previews{flex-wrap:wrap;gap:8px;padding:8px 8px 0;display:flex}.attach-pill{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-m);align-items:center;gap:8px;padding:6px 8px;font-size:.82em;display:flex}.attach-pill .x{cursor:pointer;color:var(--text-secondary)}.attach-pill .x:hover{color:var(--accent-bright)}.progress{background:var(--border);border-radius:2px;width:100%;height:3px;overflow:hidden}.progress>i{background:var(--accent);width:40%;height:100%;transition:width var(--t-med);display:block}.palette-back{z-index:850;animation:fade-in var(--t-fast) var(--ease);background:#0405088c;justify-content:center;padding-top:12vh;display:flex;position:fixed;inset:0}.palette{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-l);width:min(620px,92vw);box-shadow:var(--shadow-2);height:fit-content;animation:modal-in var(--t-fast) var(--ease);overflow:hidden}.palette-input{width:100%;color:var(--text-primary);border:none;border-bottom:1px solid var(--border);background:0 0;outline:none;padding:16px 18px;font-family:inherit;font-size:1.05em}.palette-list{max-height:340px;padding:6px;overflow-y:auto}.palette-item{border-radius:var(--radius-m);cursor:pointer;width:100%;color:var(--text-primary);text-align:left;align-items:center;gap:10px;padding:10px 12px;font-size:.95em;display:flex}.palette-item.sel{background:var(--bg-card)}.palette-item .kind{color:var(--text-faint);margin-left:auto;font-size:.75em}.palette-empty{text-align:center;color:var(--text-secondary);padding:30px}.palette-hint{border-top:1px solid var(--border);color:var(--text-faint);gap:14px;padding:10px 16px;font-size:.78em;display:flex}.kbd{font-family:var(--font-mono);background:var(--bg-input);border:1px solid var(--border);border-bottom-width:2px;border-radius:4px;padding:0 5px;font-size:.82em}.voice-stage{grid-template-rows:auto 1fr auto;height:100%;min-height:0;display:grid}.voice-head{border-bottom:1px solid var(--border);background:var(--bg-surface);align-items:center;gap:10px;min-height:56px;padding:10px 16px;display:flex}.voice-connection-status{color:var(--ok);font-size:.85em;font-weight:700}.voice-connection-status:before{content:"";background:var(--ok);border-radius:50%;width:8px;height:8px;margin-right:7px;display:inline-block}.voice-body{place-content:center;gap:24px;padding:24px;display:grid;overflow:auto}.voice-tile{border-radius:var(--radius-l);background:var(--bg-surface);border:1px solid var(--border);width:160px;transition:border-color var(--t-med);justify-items:center;gap:8px;padding:18px;display:grid;position:relative}.voice-tile[data-speaking=true]{border-color:var(--ok)}.voice-tile video{border-radius:var(--radius-l);background:#000;width:220px}.voice-tile .name{font-size:.9em;font-weight:600}.voice-tile .status{color:var(--text-secondary);font-size:.75em}.voice-grid{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.speaking-bar{inset-inline:10px;background:var(--border);border-radius:2px;height:3px;position:absolute;bottom:8px;overflow:hidden}.speaking-bar>i{background:var(--ok);width:0%;height:100%;transition:width 90ms;display:block}.voice-rail-buttons{flex-wrap:wrap;justify-content:center;gap:8px;padding:12px;display:flex}.voice-ctl{border-radius:var(--radius-m);background:var(--bg-raised);border:1px solid var(--border);height:42px;transition:background var(--t-fast), color var(--t-fast);align-items:center;gap:8px;padding:0 16px;font-weight:600;display:flex}.voice-ctl:hover{background:var(--border)}.voice-ctl.active{color:var(--accent-bright);border-color:var(--accent)}.voice-ctl.leave{background:var(--accent);color:#fff;border:none}.voice-ctl.leave:hover{background:var(--accent-bright)}.voice-ctl:disabled{opacity:.5}.mic-meter{z-index:500;background:var(--border);border-radius:3px;width:6px;position:fixed;overflow:hidden}.mic-meter>i{background:var(--ok);width:100%;transition:height .1s;display:block}.voice-peers-inline{color:var(--text-secondary);align-items:center;gap:6px;font-size:.85em;display:flex}.voice-note{color:var(--text-secondary);text-align:center;max-width:420px;font-size:.85em}.screen-main{border-radius:var(--radius-l);border:1px solid var(--border);background:#000;width:100%;max-width:980px}.call-ring{z-index:950;background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-l);width:280px;box-shadow:var(--shadow-2);animation:toast-in var(--t-med) var(--ease);padding:16px;position:fixed;top:20px;right:20px}.call-ring .who{align-items:center;gap:12px;margin-bottom:10px;font-weight:700;display:flex}.call-ring .acts{gap:8px;display:flex}.call-view{z-index:940;color:#f4f4f6;animation:call-in var(--t-med) var(--ease);background:#050506;grid-template-rows:auto 1fr auto;padding:18px 22px 26px;display:grid;position:fixed;inset:0}@keyframes call-in{0%{opacity:0}to{opacity:1}}.call-top{justify-content:space-between;align-items:center;display:flex}.call-top-btn{color:#f4f4f6;background:#ffffff0f;border:1px solid #ffffff29;border-radius:50%;place-items:center;width:40px;height:40px;display:grid}.call-top-btn:hover{background:#ffffff24}.call-stage{text-align:center;place-items:center;gap:12px;min-height:0;display:grid;position:relative}.call-video-pip{border-radius:var(--radius-m);object-fit:cover;background:#000;border:1px solid #ffffff2e;width:180px;max-width:32vw;position:absolute;bottom:12px;left:12px}.call-avatar{animation:call-avatar-in var(--t-slow) var(--ease);place-items:center;display:grid}@keyframes call-avatar-in{0%{opacity:.6;transform:scale(.94)}to{opacity:1;transform:none}}.call-peer-name{font-size:1.5em;font-weight:700}.call-status{color:#f4f4f699;font-size:.95em}.call-controls{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.call-controls .voice-ctl{color:#f4f4f6;background:#ffffff14;border-color:#ffffff24;min-width:128px;height:54px}.call-controls .voice-ctl:hover{background:#ffffff29}.call-controls .voice-ctl.is-off{color:#ff9aa6;border-color:#ff6b7d73}.call-controls .voice-ctl.leave{background:var(--accent);color:#fff;border-color:#0000}.call-controls .voice-ctl.leave:hover{background:var(--accent-bright)}.call-me{color:#f4f4f699;align-items:center;gap:6px;font-size:.82em;display:flex;position:absolute;bottom:96px;left:50%;transform:translate(-50%)}.call-video-full{object-fit:contain;border-radius:var(--radius-l);background:#000;width:100%;height:100%;max-height:78vh}.call-timer{font-family:var(--font-mono);color:#f4f4f6bf;font-size:.95em}.call-mini{z-index:945;width:110px;box-shadow:var(--shadow-2);color:#f4f4f6;animation:toast-in var(--t-med) var(--ease);background:#000;border:1px solid #ffffff29;border-radius:14px;justify-items:center;gap:6px;padding:8px;display:grid;position:fixed;top:42px;right:18px}.call-mini-media{background:#000;border-radius:10px;place-items:center;width:84px;height:84px;display:grid;overflow:hidden}.call-mini-media video{object-fit:cover;background:#000;width:100%;height:100%}.call-mini-timer{color:#f4f4f6b3;font-variant-numeric:tabular-nums;font-size:.72em}.call-mini-acts{gap:2px;display:flex}.call-mini .iconbtn{color:#f4f4f6;border-radius:8px;place-items:center;width:28px;height:28px;display:grid}.call-mini .iconbtn:hover{background:#ffffff1f}.call-mini-end{color:#ff6b7d!important}@media (width<=640px){.call-controls{gap:8px}.call-controls .voice-ctl{min-width:96px;height:50px;font-size:.8em}.call-mini{width:96px;min-width:0;inset:38px 10px auto auto}.call-mini-media{width:72px;height:72px}}.av-toggle{cursor:pointer;align-items:center;gap:10px;padding:6px 0;font-size:.94em;display:flex}.av-toggle.disabled{opacity:.45;cursor:default}.av-toggle input{accent-color:var(--accent)}.av-slider{gap:6px;max-width:560px;padding:8px 0 10px;display:grid}.av-slider.disabled{opacity:.45}.av-slider-head{justify-content:space-between;align-items:baseline;gap:12px;font-size:.9em;display:flex}.av-slider-head b{font-variant-numeric:tabular-nums;color:var(--text-primary);background:var(--bg-raised);border:1px solid var(--border);border-radius:999px;padding:1px 8px;font-size:.92em}.av-slider input[type=range]{appearance:none;cursor:pointer;background:0 0;width:100%;height:20px;margin:2px 0 0}.av-slider input[type=range]::-webkit-slider-runnable-track{border:1px solid var(--border);background:linear-gradient(90deg, var(--accent), color-mix(in srgb, var(--accent) 50%, #7ce3c0)) 0 / var(--av-fill,0%) 100% no-repeat, var(--bg-raised);border-radius:999px;height:6px;box-shadow:inset 0 1px 2px #00000073}.av-slider input[type=range]::-webkit-slider-thumb{appearance:none;background:radial-gradient(circle at 34% 30%, #fff, var(--accent) 72%);border:2px solid var(--bg-card);width:15px;height:15px;box-shadow:0 0 0 1px var(--border), 0 2px 6px #0000008c;border-radius:50%;margin-top:-5.5px;transition:transform .12s,box-shadow .12s}.av-slider input[type=range]:hover::-webkit-slider-thumb{transform:scale(1.08)}.av-slider input[type=range]:active::-webkit-slider-thumb{box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 28%, transparent), 0 2px 6px #0000008c;transform:scale(1.04)}.av-slider input[type=range]:focus-visible{outline:none}.av-slider input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 30%, transparent), 0 2px 6px #0000008c}.av-slider input[type=range]::-moz-range-track{background:var(--bg-raised);border:1px solid var(--border);border-radius:999px;height:6px}.av-slider input[type=range]::-moz-range-progress{background:linear-gradient(90deg, var(--accent), color-mix(in srgb, var(--accent) 50%, #7ce3c0));border-radius:999px;height:6px}.av-slider input[type=range]::-moz-range-thumb{background:var(--accent);border:2px solid var(--bg-card);border-radius:50%;width:13px;height:13px;box-shadow:0 2px 6px #0000008c}.av-slider small{color:var(--text-secondary);font-size:.78em;line-height:1.45}.av-actions{flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0;display:flex}.av-meter{background:var(--bg-raised);border:1px solid var(--border);border-radius:7px;max-width:560px;height:14px;margin:10px 0 6px;position:relative;overflow:hidden}.av-meter-level{background:linear-gradient(90deg, var(--ok), #d8c04a 72%, #e06a56);width:0;transition:width 90ms linear;position:absolute;inset:0 auto 0 0}.av-meter-level[data-clip=true]{background:#e0432f}.av-meter-peak{background:#ffffffb3;width:2px;position:absolute;top:0;bottom:0}.av-readout{color:var(--text-secondary);flex-wrap:wrap;gap:14px;font-size:.86em;display:flex}.av-readout b{color:var(--text-primary);font-variant-numeric:tabular-nums}.av-clip{color:#e06a56;align-items:center;gap:4px;font-weight:600;display:inline-flex}.av-bands{align-items:flex-end;gap:14px;height:56px;margin:12px 0;display:flex}.av-bands>span{width:44px;height:100%;color:var(--text-secondary);place-items:end center;gap:4px;font-size:.72em;display:grid}.av-bands i{background:var(--accent);border-radius:4px 4px 0 0;width:100%;min-height:3px;transition:height .12s linear;display:block}.av-camera{grid-template-columns:minmax(220px,340px) 1fr;align-items:start;gap:18px;display:grid}.av-preview{aspect-ratio:16/9;border-radius:var(--radius-l);border:1px solid var(--border);background:#000;place-items:center;display:grid;position:relative;overflow:hidden}.av-preview video{object-fit:cover;width:100%;height:100%}.av-preview>span{color:var(--text-secondary);align-items:center;gap:8px;font-size:.85em;display:flex;position:absolute}.av-camera-controls{gap:8px;display:grid}.av-diag{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px 18px;margin:6px 0 10px;display:grid}.av-diag>span{color:var(--text-secondary);gap:2px;font-size:.85em;display:grid}.av-diag b{color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:1.15em}.av-diag b[data-tier=excellent]{color:var(--ok)}.av-diag b[data-tier=poor]{color:#e06a56}@media (width<=720px){.av-camera{grid-template-columns:1fr}.av-preview{max-width:340px}}.mobile-voice-bar{display:none}@media (width<=780px){.mobile-voice-bar{left:8px;right:8px;bottom:calc(66px + env(safe-area-inset-bottom));z-index:69;gap:6px;max-height:34vh;display:grid;position:fixed;overflow-y:auto}.mobile-voice-item{background:var(--bg-raised);border:1px solid var(--border);box-shadow:var(--shadow-2);border-radius:12px;align-items:center;gap:6px;padding:6px 8px;display:flex}.mobile-voice-item.active{border-color:var(--ok)}.mobile-voice-open{min-width:0;color:var(--text-primary);text-align:left;flex:1;align-items:center;gap:8px;display:flex}.mobile-voice-avatars{flex:none;display:flex}.mobile-voice-avatars>*+*{margin-left:-8px}.mobile-voice-text{min-width:0;display:grid}.mobile-voice-text b{white-space:nowrap;text-overflow:ellipsis;font-size:.84em;font-weight:700;overflow:hidden}.mobile-voice-text small{color:var(--text-secondary);font-size:.72em}.mobile-voice-leave{color:#ff6b7d}}.holiday-layer{z-index:1;pointer-events:none;position:fixed;inset:0}.holiday-top{z-index:1;pointer-events:none;opacity:0;height:148px;transition:opacity var(--t-slow) var(--ease);position:fixed;top:0;left:0;right:0}[data-holiday] .holiday-top{opacity:1}.holiday-ornament{z-index:1;pointer-events:none;opacity:0;width:260px;height:180px;transition:opacity var(--t-slow) var(--ease);position:fixed;top:0;right:0;-webkit-mask-image:radial-gradient(120% 100% at 100% 0,#000 45%,#0000 78%);mask-image:radial-gradient(120% 100% at 100% 0,#000 45%,#0000 78%)}[data-holiday] .holiday-ornament{opacity:.85}[data-theme=dark][data-holiday=newyear]{--bg-app:#0e1722;--bg-surface:#14202c;--bg-card:#1a2836;--bg-raised:#223346;--border:#29394a;--border-strong:#3a5066;--holiday-line:#bee0ff57;--holiday-glow:#96c8ff33}[data-theme=dark][data-holiday=halloween]{--bg-app:#120d17;--bg-surface:#191120;--bg-card:#201628;--bg-raised:#2a1d33;--border:#33233d;--border-strong:#4a3355;--holiday-line:#ffa55a57;--holiday-glow:#ff8a282e}[data-theme=dark][data-holiday=valentine]{--bg-app:#170d12;--bg-surface:#20121a;--bg-card:#291721;--bg-raised:#341d29;--border:#3b2330;--border-strong:#553243;--holiday-line:#ff96b952;--holiday-glow:#ff6ea02b}[data-theme=dark][data-holiday=march8]{--bg-app:#171114;--bg-surface:#1f171b;--bg-card:#271d22;--bg-raised:#31242a;--border:#382a31;--border-strong:#4e3a44;--holiday-line:#f6b7ce52;--holiday-glow:#ffa0c829}[data-theme=dark][data-holiday=feb23]{--bg-app:#0f1412;--bg-surface:#151c19;--bg-card:#1b2420;--bg-raised:#233029;--border:#2a3730;--border-strong:#3e5045;--holiday-line:#c8b28a4d;--holiday-glow:#96b9a026}[data-theme=dark][data-holiday=may9]{--bg-app:#14100e;--bg-surface:#1b1613;--bg-card:#221c17;--bg-raised:#2c241d;--border:#342a22;--border-strong:#4c3d2f;--holiday-line:#e8a75c52;--holiday-glow:#e8a75c29}[data-theme=light][data-holiday=newyear]{--holiday-glow:#78b4f02e;--holiday-line:#78aadc59}[data-theme=light][data-holiday=halloween]{--holiday-glow:#eb8c3c29;--holiday-line:#d2823759}[data-theme=light][data-holiday=valentine]{--holiday-glow:#eb78a029;--holiday-line:#d76e9659}[data-theme=light][data-holiday=march8]{--holiday-glow:#f0a0c32e;--holiday-line:#dc96b459}[data-theme=light][data-holiday=feb23]{--holiday-glow:#8caf9629;--holiday-line:#78968259}[data-theme=light][data-holiday=may9]{--holiday-glow:#dca55f29;--holiday-line:#c8965a59}[data-holiday] .app-shell:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(100% 120% at 50% -40%, var(--holiday-glow,transparent), transparent 72%);height:210px;transition:background var(--t-slow) var(--ease);position:fixed;inset:0 0 auto}[data-holiday] .topbar,[data-holiday] .sectionheader{border-bottom-color:var(--holiday-line,var(--border))}[data-holiday=newyear] .holiday-top{border-bottom:1px solid var(--holiday-line);background:radial-gradient(circle at 14% 32%,#ffffff8c 0 1.6px,#0000 2.6px),radial-gradient(circle at 32% 58%,#fff6 0 1.3px,#0000 2.4px),radial-gradient(circle at 56% 26%,#ffffff80 0 1.8px,#0000 2.8px),radial-gradient(circle at 74% 62%,#ffffff57 0 1.2px,#0000 2.2px),radial-gradient(circle at 90% 38%,#ffffff6b 0 1.5px,#0000 2.5px),linear-gradient(#c4e2ff33,#c4e2ff0a 58%,#0000)}[data-holiday=newyear] .holiday-ornament{background:radial-gradient(circle at 78% 22%,#d6eeff80 0 2px,#0000 3px),radial-gradient(circle at 88% 38%,#d6eeff59 0 1.5px,#0000 2.5px),radial-gradient(circle at 66% 46%,#d6eeff47 0 1.5px,#0000 2.5px)}[data-holiday=halloween] .holiday-top{background:radial-gradient(circle at 18% 0,#ff8a2847,#0000 58%),radial-gradient(circle at 82% 0,#8c3cd238,#0000 52%),linear-gradient(#0c071080,#0000 82%)}[data-holiday=halloween] .holiday-ornament{background:repeating-conic-gradient(from 250deg at 96% 4%,#e6c8ff29 0deg 1.2deg,#0000 1.2deg 24deg),radial-gradient(circle at 88% 16%,#ff963759,#0000 42%)}[data-holiday=halloween] .holiday-ornament:before{content:"";opacity:.55;background:linear-gradient(#e8893b,#b4571c);border-radius:46% 46% 52% 52%/52% 52% 44% 44%;width:34px;height:30px;position:absolute;top:52px;right:46px;box-shadow:inset 0 -4px 8px #00000052,0 0 18px #ff8c2d47}[data-holiday=valentine] .holiday-top{background:radial-gradient(circle at 24% 20%,#ff78a54d,#0000 58%),radial-gradient(circle at 76% 32%,#ffbed73d,#0000 54%),linear-gradient(#ff78a529,#0000)}[data-holiday=valentine] .holiday-ornament{background:radial-gradient(circle at 84% 22%,#ff8fb26b,#0000 34%),radial-gradient(circle at 94% 12%,#ffcde04d,#0000 28%)}[data-holiday=march8] .holiday-top{background:radial-gradient(circle at 16% 28%,#ff96c34d,#0000 56%),radial-gradient(circle at 72% 16%,#b4ebbe3d,#0000 52%),linear-gradient(#ffafcd29,#0000)}[data-holiday=march8] .holiday-ornament{background:radial-gradient(12px 8px at 82% 26%,#f6b7ce73,#0000 60%),radial-gradient(9px 6px at 92% 40%,#efd3a866,#0000 60%),radial-gradient(10px 7px at 74% 48%,#cde7c759,#0000 60%)}[data-holiday=feb23] .holiday-top{border-bottom:1px solid var(--holiday-line);background:linear-gradient(#c8b28a24,#0000 78%),radial-gradient(circle at 70% 0,#8cb49b2e,#0000 58%)}[data-holiday=feb23] .holiday-ornament{background:repeating-linear-gradient(118deg,#c8b28a29 0 2px,#0000 2px 18px)}[data-holiday=may9] .holiday-top{background:radial-gradient(circle at 50% -30%,#f0aa3c33,#0000 62%),linear-gradient(#f0aa3c1a,#0000 74%)}[data-holiday=may9] .holiday-ornament{opacity:.7;background:repeating-linear-gradient(135deg,#e8a75c4d 0 7px,#14100e59 7px 14px,#f0f0f02e 14px 16px);width:100%;max-width:100%;height:6px;top:0;-webkit-mask-image:none;mask-image:none}[data-reduced-motion] .holiday-layer{display:none}[data-reduced-motion] .holiday-top{opacity:.8}@media (prefers-reduced-motion:reduce){.holiday-layer{display:none}}@media (width<=700px){.holiday-top{height:104px}.holiday-ornament{width:160px;height:120px}}.media-panel{z-index:500;border:1px solid var(--border-strong);border-radius:var(--radius-l);background:var(--bg-card);width:348px;max-width:calc(100vw - 24px);box-shadow:var(--shadow-2);animation:pop var(--t-fast) var(--ease);gap:8px;padding:10px;display:grid;position:absolute;bottom:calc(100% + 12px);right:0}.media-tabs{background:var(--bg-input);border:1px solid var(--border);border-radius:10px;grid-template-columns:repeat(3,1fr);gap:4px;padding:3px;display:grid}.media-tab{height:30px;color:var(--text-secondary);transition:background var(--t-fast) var(--ease), color var(--t-fast) var(--ease);border-radius:8px;font-size:.82em;font-weight:600}.media-tab:hover{color:var(--text-primary)}.media-tab.active{background:var(--bg-raised);color:var(--text-primary);box-shadow:var(--shadow-1)}.sticker-grid{overscroll-behavior:contain;grid-template-columns:repeat(4,1fr);gap:6px;max-height:244px;padding-right:2px;display:grid;overflow-y:auto}.sticker-btn{aspect-ratio:1;border-radius:var(--radius-m);background:var(--bg-input);transition:transform var(--t-fast) var(--ease), border-color var(--t-fast), background var(--t-fast);border:1px solid #0000;place-items:center;padding:8px;display:grid}.sticker-btn:hover{border-color:var(--border-strong);background:var(--bg-raised);transform:translateY(-2px)}.sticker-btn:active{transform:scale(.96)}.sticker-img{width:100%;height:100%}.gif-search{border:1px solid var(--border);border-radius:var(--radius-m);background:var(--bg-input);color:var(--text-secondary);align-items:center;gap:8px;padding:0 0 0 10px;display:flex}.gif-search:focus-within{border-color:var(--accent)}.gif-search input{min-width:0;height:36px;color:var(--text-primary);font:inherit;background:0 0;border:0;outline:0;flex:1;font-size:.9em}.gif-search .btn{margin:4px}.gif-grid{overscroll-behavior:contain;grid-template-columns:repeat(2,1fr);gap:6px;max-height:236px;display:grid;overflow-y:auto}.gif-card{border-radius:var(--radius-m);border:1px solid var(--border);background:var(--bg-input);aspect-ratio:4/3;place-items:center;display:grid;position:relative;overflow:hidden}.gif-card img{object-fit:cover;width:100%;height:100%}.gif-card:hover{border-color:var(--accent)}.gif-card:disabled{opacity:.7}.gif-loading{color:var(--text-primary);text-align:center;background:#0a0a0cb8;padding:4px 6px;font-size:.7em;position:absolute;inset:auto 0 0}.media-empty{text-align:center;color:var(--text-secondary);border:1px dashed var(--border);border-radius:var(--radius-m);margin:4px 2px;padding:18px 10px;font-size:.85em}.media-error{color:var(--accent-bright);border-color:var(--accent-soft)}.media-note{color:var(--text-faint);margin:0;padding:0 2px;font-size:.72em}.msg-sticker{width:156px;height:156px;margin-top:2px;display:block}@media (width<=560px){.media-panel{width:auto;max-height:62vh;left:8px;right:8px;bottom:calc(env(safe-area-inset-bottom,0px) + 78px);position:fixed;overflow-y:auto}.media-panel .emoji-grid{max-height:none}.sticker-grid{grid-template-columns:repeat(4,1fr);max-height:40vh}.gif-grid{max-height:38vh}.msg-sticker{width:128px;height:128px}}.appearance-page{gap:14px;min-width:0;max-width:100%;display:grid}.appearance-page>.settings-section{min-width:0;overflow:hidden}.appearance-bar{z-index:5;border:1px solid var(--border);background:color-mix(in srgb, var(--bg-card) 88%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:border-color var(--t-med) var(--ease), background var(--t-med) var(--ease);border-radius:14px;flex-wrap:wrap;align-items:center;gap:12px;padding:10px 14px;display:flex;position:sticky;top:8px}.appearance-bar.is-dirty{border-color:var(--accent-line);background:color-mix(in srgb, var(--bg-card) 92%, var(--accent) 8%)}.appearance-bar-state{color:var(--text-secondary);align-items:center;gap:7px;font-size:.86em;display:flex}.appearance-bar.is-dirty .appearance-bar-state{color:var(--text-primary)}.appearance-bar-actions{flex-wrap:wrap;gap:8px;margin-left:auto;display:flex}.appearance-head h2{margin-bottom:4px}.appearance-head .settings-hint{margin-bottom:14px}.appearance-preview-live{grid-template-columns:minmax(0,1.6fr) minmax(180px,.8fr);align-items:start;gap:12px;display:grid}.apv-window{border:1px solid var(--border-strong);background:var(--bg-app);min-width:0;box-shadow:var(--shadow-1);border-radius:14px;overflow:hidden}.apv-topbar{background:var(--bg-surface);border-bottom:1px solid var(--border);align-items:center;gap:6px;padding:8px 11px;display:flex}.apv-dot{background:var(--border-strong);border-radius:50%;width:7px;height:7px}.apv-dot:first-child{background:var(--accent)}.apv-title{color:var(--text-faint);letter-spacing:.02em;margin-left:6px;font-size:.72em}.apv-body{grid-template-columns:118px minmax(0,1fr);min-height:176px;display:grid}.apv-nav{background:var(--bg-surface);border-right:1px solid var(--border);align-content:start;gap:3px;padding:10px 8px;display:grid}.apv-nav-item{color:var(--text-secondary);border-radius:8px;align-items:center;gap:7px;padding:6px 8px;font-size:.74em;display:flex}.apv-nav-item.active{background:var(--accent-soft);color:var(--text-primary);box-shadow:inset 0 0 0 1px var(--accent-line)}.apv-nav-dot{opacity:.7;background:currentColor;border-radius:50%;width:6px;height:6px}.apv-nav-item.active .apv-nav-dot{background:var(--accent);opacity:1}.apv-main{align-content:start;gap:10px;padding:12px;display:grid}.apv-profile{align-items:center;gap:9px;display:flex}.apv-avatar{background:var(--accent);width:30px;height:30px;color:var(--accent-text-on);border-radius:50%;place-items:center;font-size:.8em;font-weight:800;display:grid}.apv-avatar.sm{flex:none;width:24px;height:24px;font-size:.7em}.apv-who{line-height:1.25;display:grid}.apv-who b{font-size:.84em}.apv-who small{color:var(--text-secondary);font-size:.7em}.apv-badge{background:var(--accent-soft);color:var(--accent-bright);letter-spacing:.02em;border-radius:999px;margin-left:auto;padding:2px 8px;font-size:.66em}.apv-buttons{flex-wrap:wrap;gap:6px;display:flex}.apv-btn{border:1px solid #0000;border-radius:9px;padding:6px 11px;font-size:.74em;font-weight:600}.apv-btn.primary{background:var(--accent);color:var(--accent-text-on)}.apv-btn.secondary{background:var(--bg-raised);border-color:var(--border-strong);color:var(--text-primary)}.apv-btn.ghost{color:var(--accent-bright);background:0 0}.apv-message{border:1px solid var(--border);background:var(--bg-card);border-radius:11px;gap:9px;padding:9px 10px;display:flex}.apv-message p{color:var(--text-primary);margin:3px 0 5px;font-size:.78em;line-height:1.45}.apv-msg-head{align-items:baseline;gap:8px;display:flex}.apv-msg-head b{font-size:.78em}.apv-msg-head small{color:var(--text-faint);font-size:.68em}.apv-reaction{background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:999px;padding:1px 7px;font-size:.68em;display:inline-flex}.apv-meta{gap:8px;display:grid}.apv-meta-row{color:var(--text-secondary);align-items:center;gap:8px;font-size:.78em;display:flex}.apv-meta-row b{color:var(--text-primary);text-align:right;margin-left:auto}.apv-meta-row code{font-family:var(--font-mono);color:var(--text-secondary);font-size:.92em}.apv-swatch{border-radius:4px;width:14px;height:14px;box-shadow:inset 0 0 0 1px #ffffff40}.apv-contrast{border:1px solid var(--border);background:var(--bg-card);border-radius:11px;gap:3px;padding:9px 11px;font-size:.76em;display:grid}.apv-contrast b{font-size:1.15em}.apv-contrast small{color:var(--text-secondary)}.apv-contrast.is-low{border-color:var(--accent-line)}.appearance-choice-row{flex-wrap:wrap;gap:8px;display:flex}.appearance-choice{text-align:left;border:1px solid var(--border);background:var(--bg-card);min-width:132px;color:var(--text-primary);transition:border-color var(--t-fast), background var(--t-fast), transform var(--t-fast);border-radius:12px;flex:150px;gap:2px;padding:10px 12px;display:grid}.appearance-choice:hover{border-color:var(--border-strong);transform:translateY(-1px)}.appearance-choice.active{border-color:var(--accent);background:var(--accent-soft)}.appearance-choice b{font-size:.86em}.appearance-choice small{color:var(--text-secondary);font-size:.74em}.appearance-choice.compact{flex:110px;min-width:100px}.accent-presets{grid-template-columns:repeat(auto-fill,minmax(196px,1fr));gap:8px;display:grid}.accent-preset{text-align:left;border:1px solid var(--border);background:var(--bg-card);color:var(--text-primary);transition:border-color var(--t-fast), background var(--t-fast), transform var(--t-fast);border-radius:12px;align-items:center;gap:10px;padding:9px 11px;display:flex;position:relative}.accent-preset:hover{border-color:var(--border-strong);transform:translateY(-1px)}.accent-preset.active{border-color:var(--accent);background:var(--accent-soft)}.accent-preset-strip{border-radius:6px;flex:none;display:flex;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff1f}.accent-preset-strip i{width:9px;height:26px;display:block}.accent-preset-text{min-width:0;display:grid}.accent-preset-text b{font-size:.84em}.accent-preset-text small{color:var(--text-secondary);font-size:.72em}.accent-preset-check{color:var(--accent-bright);flex:none;margin-left:auto}.accent-custom{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.accent-custom-color input{border:1px solid var(--border-strong);background:var(--bg-card);border-radius:10px;width:46px;height:38px;padding:3px}.accent-custom-hex{align-items:center;gap:7px;display:flex}.accent-custom-hex span{letter-spacing:.06em;color:var(--text-faint);font-size:.72em}.accent-custom-hex .input{width:112px;font-family:var(--font-mono);text-transform:uppercase}.accent-meter{min-width:168px;color:var(--text-secondary);gap:4px;font-size:.74em;display:grid}.accent-meter-bar{background:var(--bg-input);border-radius:999px;height:5px;display:block;overflow:hidden}.accent-meter-bar i{border-radius:inherit;height:100%;transition:width var(--t-med) var(--ease);display:block}.accent-meter.is-low{color:var(--accent-bright)}.accent-ink-preview{letter-spacing:.01em;transition:background var(--t-med), color var(--t-med);border-radius:10px;margin:12px 0 0;padding:10px 12px;font-size:.8em;font-weight:700}.holiday-grid{grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:9px;margin-top:6px;display:grid}.holiday-card{text-align:left;border:1px solid var(--border);background:var(--bg-card);color:var(--text-primary);transition:border-color var(--t-fast), transform var(--t-fast), box-shadow var(--t-fast);border-radius:14px;gap:0;padding:0;display:grid;overflow:hidden}.holiday-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-1);transform:translateY(-2px)}.holiday-card.active{border-color:var(--holiday-card-tone,var(--accent));box-shadow:0 0 0 1px var(--holiday-card-tone,var(--accent)) inset}.holiday-card-art{background-size:cover;height:72px;display:block;position:relative}.holiday-card-check{background:var(--holiday-card-tone,var(--accent));color:#121216;border-radius:50%;place-items:center;width:20px;height:20px;display:grid;position:absolute;top:7px;right:7px}.holiday-card-body{gap:1px;padding:9px 11px 11px;display:grid}.holiday-card-body b{font-size:.84em}.holiday-card-body small{color:var(--holiday-card-tone,var(--text-secondary));font-size:.72em}.holiday-card-body em{color:var(--text-secondary);font-size:.7em;font-style:normal}.holiday-scope{gap:6px;margin-top:14px;display:grid}.holiday-scope-row{border:1px solid var(--border);background:var(--bg-input);border-radius:11px;gap:10px;padding:9px 11px;display:flex}.holiday-scope-row.active{border-color:var(--accent-line);background:var(--accent-soft)}.holiday-scope-row>div{gap:1px;display:grid}.holiday-scope-row b{font-size:.8em}.holiday-scope-row small{color:var(--text-secondary);font-size:.75em}.holiday-scope-mark{background:var(--border-strong);border-radius:50%;flex:none;width:8px;height:8px;margin-top:4px}.holiday-scope-row.active .holiday-scope-mark{background:var(--accent)}.settings-hint-inline{margin:10px 0 0}.appearance-toggle{border:1px solid var(--border);background:var(--bg-input);cursor:pointer;border-radius:12px;align-items:flex-start;gap:10px;margin-top:12px;padding:10px 12px;display:flex}.appearance-toggle input{margin-top:3px}.appearance-toggle span{gap:2px;display:grid}.appearance-toggle b{font-size:.84em}.appearance-toggle small{color:var(--text-secondary);font-size:.74em}.appearance-footnote{color:var(--text-secondary);align-items:center;gap:8px;padding:2px 4px 10px;font-size:.8em;display:flex}.appearance-footnote.is-dirty{color:var(--text-primary)}.gift-grid{grid-template-columns:repeat(auto-fill,minmax(172px,1fr));gap:9px;display:grid}.gift-card{border:1px solid var(--border);background:var(--bg-card);transition:border-color var(--t-fast), transform var(--t-fast);border-radius:14px;gap:6px;padding:12px;display:grid}.gift-card:hover{border-color:var(--border-strong);transform:translateY(-1px)}.gift-card-head{align-items:center;gap:9px;display:flex}.gift-preview{border-radius:50%;flex:none;width:34px;height:34px;padding:3px}.gift-preview>span{background:var(--bg-surface);border-radius:50%;width:100%;height:100%;display:block}.gift-card-title{gap:1px;min-width:0;display:grid}.gift-card-title b{font-size:.84em}.gift-card-title small{color:var(--text-secondary);font-size:.72em}.gift-card p{color:var(--text-secondary);margin:0;font-size:.76em;line-height:1.45}.gift-card footer{color:var(--text-faint);align-items:center;gap:6px;font-size:.72em;display:flex}.gift-card i{color:var(--text-primary);opacity:.9;font-size:.76em}@media (width<=860px){.appearance-preview-live{grid-template-columns:minmax(0,1fr)}.apv-body{grid-template-columns:104px minmax(0,1fr)}.appearance-bar{position:static}}@media (width<=560px){.appearance-bar-actions{width:100%}.appearance-bar-actions .btn{flex:1;justify-content:center}.accent-presets{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.holiday-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.apv-body{grid-template-columns:minmax(0,1fr)}.apv-nav{border-right:0;border-bottom:1px solid var(--border);grid-auto-flow:column;overflow-x:auto}.apv-nav-item{white-space:nowrap}}
