@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.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:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.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:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAAWEABAAAAAACnwAAAUtAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGx4cLgZgAFQIUAmCcxEQCoNgg18LDgABNgIkAxgEIAWDXgdGDINsG1MJQB6FTZl7lLXccknfu1wyTATU3L97eflQ5pSZFDAaQ2lZGABwoEh28vM61/uRmqMp3E9NUQkmEvCWM7XNclvAh+1kutF0mLT/I/pDTx2q/sjCXMDGBokHg7TG5j00ngglgHOe50pjWa/ntXqNCoB94CaYSdTl3t0pAEWZmaF+A6qbQYYCZEDP9PEhi6OXDSzMgOl/ok4FE8D+eBw1haNoEO2PJgFDqT87zJAT2oOoGE3SBAlEDkAOiAAwuE8Nhg2Sq/G0/z+Ip0UVExQQAFFMLAEJAoiAHFAeCQHlUTigOBkCBZSA3UuuZuC/FbJ/vpv/eRTkev1KivTjpCmTY0qVAJtTklQqVq/VMFA860QVKkhCG3k2jCrMk0QUqKKlGX6CFvDmU6ag2VCRfNSkFyGcmZyGbFequMYiOXLmDL8INUtwCV8shFnNRUSzFGpS2y8imyWlQq7+gMZ2awc+kewfPO9EMgCPDwwLcf1WqpoxcmJySyxomsRvpc2TWKHXZIapmt/RkeUXUZFwrDnRB0vxRAw8Ie2u+dc8RTcbioVcg1HtDe3C1n7VWk2/toxlcYnwYNSkp6dfNfaUdmZJrVIquJuPrhpKrZImnUEWRzN20PTqEjr27+cjVlbYOqSq7a87WTJOtNGLDYi97KKYubn6/cWwdZRSsxV1TCshJKOlg3n8Q4v9InmzoU3tJcUMy3b4ASHJKOjQWaYUQD5AcSAH9ABGABCDUB0BQABxnFasQC0ZLJGnGtj/6tmrsO1KpaJB2VY8qG+Gba+K7n/RbMz662IHXj58aWvlYhTjSlCdPGvfy2IHXvccvfIiKX62+NSu+FLSJVvZahhTH1fsiQzVVhbtfjyzbtHWwzU6cClZzpK4N/0uzW+Y7iuPqjZzLsvREX33PJ5Zr2jb7r2mnNLsHE+l5USDLdMJH+AWioy8TNlMEVU6BU+koP8kEbSstgiU7dEhQh9SUDpFURBFpB9atfalM9Kkq3wQQ2Xg7kFyl6gxINHN6pa9SaAENL037ZUS3imBWM3CBMxJjZAgI0k6dC4y/SbFBv/6tRSCMjn0N6UuTWMNZBaZqP/eEsVEk7ZSUzpleZJSU9AOFdAB5dCtBS8cpCeRC35oQiIgIChYtyfH16ft9q+wCPkN3t752g3w4ffA/g//z/zpcTugCAIggK+LJX+DnqLCGMglkB/eShh+zfFonQCnC+2jOkdlAA0BFAURohsSAgqNIqFYDmBKqIlsxOY3m6Dxi03iPGFTUmxj0yINsiUCUrSaIQsWWbjpc7IEy8KGhPAk9AVhga/KmxIwK2RMUJ1S1SoUqlFvyohtmgyYEdZs3ACeX6MRYzabMiCk1YiQMN6sGViigMQoZjya8WjGoyis8DVnj8PMrqWTH7yGhxWZNWe7EN6YcQuwJAkSZcIxpHY/FjInACswZQr20Yd57QgFR37lFiOGBRAAsslxXZEPhEAAGUhESTev4BNAV4yJpITCFMnWggQRNLUEUSOahpWmQcH79zQoksIuCihsep9WiUw+mHFfpcNJ5RbPAIv00vlZxdCCRt+KNCmWyhlKmJAlgUt8K6lVmXQuq1WUUc0KBJlhMq1WvqRlskS3KtmyVVLJPFjRNJCVqZSzBS1MuEpum0E10rGQVbhu9xgs5cGskgtug3oKXKUS0qlUkngYVauqaKklBkrSpin4ZSpbwomE1lHEOWI+8R7SgfVEjnpPNFhLfIUArCNy/n5mTVDHHFFn9nSabYl3/ZvYLI0vEfXp1gE=)format("woff2"),url(data:font/woff;base64,d09GRgABAAAAAASEAA0AAAAABXwAAQABAAAAAAAAAAAAAAAAAAAAAAAAAABHUE9TAAABMAAAAB4AAAAeRHRMdUdTVUIAAAFQAAAALQAAAC4tfxplT1MvMgAAAYAAAABTAAAAYGmlnq5jbWFwAAAB1AAAADwAAABUAMohV2dhc3AAAAIQAAAAEAAAABAAGAAhZ2x5ZgAAAiAAAADAAAAAwELfCadoZWFkAAAC4AAAADYAAAA2GnZrk2hoZWEAAAMYAAAAHwAAACQJCQOBaG10eAAAAzgAAAAXAAAAGAcQAE5sb2NhAAADUAAAAA4AAAAOAIgAiG1heHAAAANgAAAAHAAAACAAGwDzbmFtZQAAA3wAAADYAAAB3iYtQbtwb3N0AAAEVAAAADAAAABG/5SrMAABAAAACgAcABwAAURGTFQACAAEAAAAAP//AAAAAAAAeNpjYGRgYOBi0AFCZhc3nxAGiZzEkjwGkZKMxEwGEQYQYAER//+DSACUkQcoAAAAeNothTEOQFAQBWef/ZVevZfQqXQiKo3ix4FUDqNSOY87SBAmMxlco60k0KIJ6L/bTGM1qExFUsEjvImfrh2CA2LzfJ3gWVWYGYBcOxDoBuCVClMAeNpjYGBgAmJmIBYBkoxgmoXBAUjzMHAA5ViALF4GBYYFClv+/weykXmM/7/+f/w/9X4ASB8CAACScQ45AAEAAwAIAAoAEAAF//8ADwACACAAAAG4AwwAAwAHAAAzESERJSERISABmP6kASD+4AMM/PQ8ApQAAQAu//QCRgLGADUAAAUiLgI1NDY3IzUzNyE1ITY1NCYjIgYHJz4BMzIeAhUUBzMVIwchFSEOARUUFjMyNjcXDgEBPDBNNh4IBUp9pv7dAXcJQTonRh41KmY3LEk1HQlOfqYBJP6ICAhHPCpLKTMobgwcMUUqFiMPQ2BDFh02NR4jNS4oGC1BKCIYQ2BDDiAUPDwjKzcwMQABAAAAAQBBzvNdCF8PPPUACQPoAAAAANm84TwAAAAA3PJHEf5N/esGXQQ0AAAACQACAAAAAAAAeNpjYGRgYIn5+4qBga36n+9/UbZYoAgqYAMAjoYFkwB42mO8waDAAAJvIJiphEEPRAMANRYEYgAAAAAUABQAFAAUAGAAYAAAeNpjYGRgYGBjmMDAw5DIwArmIQAzAyMAGHQBD3jalc4BR0NRGIDhZ7VSMECAHATQXcugBlVElFIJAatu25jtOndl/ad+Wr8g0MFxGVA+eA7ne33Y8mZdq72Np9Zudsuen+w1Hd/Z6058Zbf1LbM37HjO3lToZ3eSGFukqRzrpqm9iCYqi+RCnTxVmItGum5cuHLpzLVbU6Wle0MztQfjpIl9d0oj76aGokelKJXMzQQ9hV5uhKYSmk5oSmG1lDcHze7gn5esvv5ywbm5yqeYPDK2EBw60HMkNIX0S1QpBKemaYJmQ+qJSrVS9KH0qvgFlnxHCnjaY2BiAIP/CxlsGLABNiBmZGRiYGZkZmRhL83LNDAwcAHRRgZOJhC+owEAx1QIaw==)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-thai-thai-400-normal-Bt1rR4gi.woff2)format("woff2"),url(/assets/ibm-plex-sans-thai-thai-400-normal-DKc8V4lk.woff)format("woff");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-thai-latin-ext-400-normal-DBkYO1u-.woff2)format("woff2"),url(/assets/ibm-plex-sans-thai-latin-ext-400-normal-n-X-g5Z4.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-thai-latin-400-normal-CwmoKdEh.woff2)format("woff2"),url(/assets/ibm-plex-sans-thai-latin-400-normal-YXrLwNa7.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:600;src:url(data:font/woff2;base64,d09GMgABAAAAAAV4ABAAAAAAChgAAAUeAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGx4cLgZgAFQISAmCcxEQCoMsgzILDgABNgIkAxgEIAWDQAdGDINkG/gICB4HzvksHpSclNDkippHLXj4bGp/ZleEBnzJyIBCI8oOkMxSgBVgUI464KLU8UbB+pBL5NIngtxdgHFLKA/SQF4gooyDBAOt/2vHv09dmm5Jwz5eumAwSLdppWDtFODK0QC2Lxj9hqVZgN7e3+hB5LVU90rtdlc6G8ew80QEYKdSJREfXz6NFR0gD+AkDgrSWkvXpiP7KPxb1J0UAoL26XKrTGICmVnzYdmfLdaTTN0gHRbNJDWkBmiABABYMlYoHoI6+tr5n0FfK4uVEAJA2mUOUCQgAQ0opCGAQjpDwIkViQ64UF5Sr+VB+S2R/8+ll0Awed8SU5ZbZ1TSdqvssVybkEdY7KhdLvAY4Mx3cYolOPIDdHEQs7TjlLkafgsaLtKA4DSwJZIvC/FYyhD5qwbxehsb2ob1IQMRVGpsZzwrNoYMZNBANAVCBlpQjWe12vHJZHVKZVRmydaMGlc7Nm3N6rUpsdiTzqQiKstU7OzapyOQHUpVbPWkU6mekIHOw7o7k0JA7SLhXSQ7Zz5kYAouU1mtLpGcSGYvxCtSczzvCATUWPZhIjkPxysCI8lc5guTdeLsztKrQ4vH3JTZrTTzVGEeyvKkdkaZrg5kLxTFikx1ql9k8DDXKKAP+QzI9VrtmCEuJGzMF2CtSKklVbpTFdN/cDxkYAsum0qOxSsCgVQIgYYVO16mfJ4HADMATkAD+sAyAKAD/5IAgABdb3NYXObNDpN9U+azjz4TF58tsQvHnF24nhQX37NnErMPPnfc+vTDT7lQ6sA+7cL5FBc+dNz6fHDm7ifK+ZRzcO7HtT/2LHZ0TC48Vrm0yVVdunjq4K1l89N71hdHGsPLu0cT9bua+2MrKhOVI3Xlc8umT95YJqf2JQrbLrfWjqi5+MTSvW05gBw6Vmw+f7eB7jXgAwwYCwMi5Tbg7ykD8Y0B70X/xiC8BpZvorEc5dq0Z393ICpnl1swO1Z9Dhfl2O+OrsiwiQgXg1zIdcMaf3Ih1t3Gjvx3m+fB3mFD/GtweRXYDctrC7n/zSkudFG73V6DwDO4AGugHdZCG2ywEIpDwigboS+NxhCAYLg1HXthg6fvP6tN+xHgy7u/H+Cbvxf5/h+Z/8W8Xk8ANiQAAr4XbvMZJ1a+ZAGCiYpZfIFi/7XOyfM0qKwifVaewMl2JgQAdpCIb9EQgJVtNIRuA1YnIBV0eEsqcXNXqjHi1LzuKjVRbKvUTFRbt5s2sMORmfCAHpHqw7Y4ZKdaeMRh4cvZaY+w/Q7ZLmKVccstMWKFhD3STpiyyT6HTdthk51CpqTttdOI/fbYalbaISaFE/soMWExK0cvdbNKLx9Ojm931B6bHOIZOS5VulSpXtWP2u+Ak4+3bf8oVyotomK6KWwr558eckCYMmyPPVSg7bDSkl7D9K88Jm2rMAkA+UianGEGhJBoQhO65ei+nVGxxpFviY60qW8djhrQLIfAjWwWLdeDBh88pU2zKqU8gLX5AV7NalQq5OyP+dRTyvg5xEx+lWBUp2bViqyrJUv0iST0MotWNMfUqeBDtc6UuPbSUYKKiUFtqavSddxMh6CAsqTawrhuodJRgIqVVk2poJTbbrsEAb3wKju7zImLqZSrHJy21UpdauQqJw2UUj52GXexwqComsdsu4mqv9ZJcvjZsDQb8FPpyDGomDiypg/RD9BfQl77UTeCHF7lsG4EOAw8BjOutA6CqB37QX8R/QkOoyhxdyRQk7SAOAIAAAA=)format("woff2"),url(data:font/woff;base64,d09GRgABAAAAAASAAA0AAAAABVQAAQABAAAAAAAAAAAAAAAAAAAAAAAAAABHUE9TAAABMAAAAB4AAAAeRHRMdUdTVUIAAAFQAAAALQAAAC4tfxplT1MvMgAAAYAAAABSAAAAYGpxoOFjbWFwAAAB1AAAADwAAABUAMohV2dhc3AAAAIQAAAAEAAAABAAGAAhZ2x5ZgAAAiAAAAC4AAAAuIJK/GhoZWFkAAAC2AAAADYAAAA2GmxrsGhoZWEAAAMQAAAAHwAAACQI/wOEaG10eAAAAzAAAAAXAAAAGAcbAEhsb2NhAAADSAAAAA4AAAAOAIIAgm1heHAAAANYAAAAHAAAACAAGwD5bmFtZQAAA3QAAADZAAABwCLFP6pwb3N0AAAEUAAAADAAAABG/6irTAABAAAACgAcABwAAURGTFQACAAEAAAAAP//AAAAAAAAeNpjYGRgYOBi0AFCZhc3nxAGiZzEkjwGkZKMxEwGEQYQYAER//+DSACUkQcoAAAAeNothTEOQEAUBec/u5HQq/81tDoR/RYbldM4j0rlPO4gscJkJkPQqkQEbeUwfbeFZD2orauoiiK8iZ9xmJ0TfA/5viBkdW5mAGp0AI4e3IAKVQAAeNpjYGBgAmJmIBYBkoxgmoXBAUjzMHAA5ViALF4GBYYFClv+/weykXmM/7/+f/w/9X4ASB8CAACScQ45AAEAAwAIAAoAEAAF//8ADwACACAAAAG4AwwAAwAHAAAzESERJTMRIyABmP7A6OgDDPz0WAJcAAEAKP/0AlcCxgAzAAAFIi4CNTQ2NyM1MzcjNSE2NTQmIyIHJz4BMzIeAhUUBzMVIwchFSEGFRQWMzI2NxcOAQFJNlM4HQMCSHGM/QFsBjMuTDREI2s9MU42HQZLeYkBAv6SBjkzJUMmRSVuDCA3SyoNFAlTTFQPFi8qOlEoLB0xQyYaGFRMUxEUNDQhKFIrNQAAAQAAAAEAQVVJdwRfDzz1AAkD6AAAAADZvOE9AAAAANzyRxH+Qv3rBl4EUAAAAAkAAgAAAAAAAHjaY2BkYGCJ+fuKgYGt5p/Tf3G2OKAIKmADAI3fBYwAeNpjvMGgwAACbyCYqZ5BA0QDADVFBGcAAAAAEwATABMAEwBcAFwAAHjaY2BkYGBgY5jAwMOQzsAK5iEAMwMjABjyARV42pWMtWFDQRBEn5kdOv4FmBkSk5gZIjEzS7WpAlWlCcSZjvbN7ewAx+TYY2f/BIjvMOMdXpnMeJdLxjPe45fRjPdXPAdckZnxIfc8z/hSBAU62g0+udNuk6ZFUbojvqUtrqjWaZFX34MZJzZ+ceFVJ8uAAElqcgYpiIrc6CdLVfRLXZ4MYekWyqIup8EDtzzM3q9ZmiHaNtcvnacrTtJa5MzmRbME0SxDtJnxp9pgSIsiebk6GDxyzwMfolkmctGS71b8Q0XbWJloI0VWNava05vhdgr05EGRAAAAeNpjYGIAg/9bGSIYsAE2IGZkZGJgZmRmZGEvzcs0MDBwAdFGBk4mEL6jAQDSjAib)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-thai-thai-600-normal-DvfsyWAn.woff2)format("woff2"),url(/assets/ibm-plex-sans-thai-thai-600-normal-BOwfviun.woff)format("woff");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-thai-latin-ext-600-normal-BXI6PlF4.woff2)format("woff2"),url(/assets/ibm-plex-sans-thai-latin-ext-600-normal-iH120vlL.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-thai-latin-600-normal-BR-dhaTH.woff2)format("woff2"),url(/assets/ibm-plex-sans-thai-latin-600-normal-P_JjY83V.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#080d18;--glass:#0c1220bd;--glass-strong:#0b111ee6;--glass-hi:#ffffff0b;--line:#ffffff14;--line-strong:#ffffff29;--text:#e7ecf4;--muted:#93a1b8;--faint:#64748b;--accent:#38bdf8;--accent-2:#818cf8;--ok:#34d399;--warn:#fbbf24;--bad:#f87171;--radius:14px;--shadow:0 12px 32px #00000061, inset 0 1px 0 #ffffff0d;--font:"Inter Variable", "IBM Plex Sans Thai", system-ui, -apple-system, "Segoe UI", sans-serif;--mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--dock-w:272px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{background:var(--bg);height:100%;color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;font-feature-settings:"tnum" 1, "cv11" 1;margin:0;font-size:14px}button,input,select{font:inherit;color:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}html,body{overscroll-behavior:none;overflow:hidden}.app{inset:var(--banner-h,0px) 0 0 0;position:fixed;overflow:clip}.conn-banner{z-index:60;position:fixed;top:0;left:0;right:0}.conn-banner:empty{display:none}.conn-body{padding:calc(10px + env(safe-area-inset-top,0px)) 16px 10px;color:#1a1204;align-items:center;gap:12px;display:flex}.conn-body.line{padding-top:calc(6px + env(safe-area-inset-top,0px));padding-bottom:6px}.conn-standalone .conn-body,.conn-standalone .conn-strip{background:#f59e0b}.conn-offline .conn-body,.conn-offline .conn-strip{color:#fff;background:#dc2626}.conn-degraded .conn-body{background:#fcd34d}.conn-back .conn-body{color:#04130d;background:#10b981;animation:8s ease-in forwards conn-fade}@keyframes conn-fade{0%,80%{opacity:1}to{opacity:.6}}.conn-icon{flex:none}.conn-text{flex-direction:column;flex:1;gap:2px;min-width:0;line-height:1.35;display:flex}.conn-text b{font-size:14.5px}.conn-text span{font-size:13px}.conn-meta{opacity:.8;font-size:12px!important}.conn-actions{flex:none;gap:6px;display:flex}.conn-btn{color:#fff;background:#000000d1;border:1px solid #00000059;border-radius:8px;align-items:center;gap:6px;min-height:36px;padding:0 12px;font-size:13px;font-weight:600;display:inline-flex}.conn-btn.ghost{color:inherit;background:0 0}.conn-btn.icon{padding:0 8px}.conn-btn:disabled{opacity:.6}.conn-strip{width:100%;min-height:24px;padding:calc(3px + env(safe-area-inset-top,0px)) 12px 3px;color:#1a1204;border:0;justify-content:center;align-items:center;gap:8px;font-size:12.5px;font-weight:600;display:flex}.conn-offline .conn-strip{color:#fff}.app>.map{background:#141c2e;position:absolute;inset:0}.wind-particles{pointer-events:none;z-index:1;mix-blend-mode:screen;position:absolute;top:0;left:0}.glass{background:var(--glass);-webkit-backdrop-filter:blur(16px)saturate(140%);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.muted{color:var(--muted)}.small{font-size:12.5px}.tiny{font-size:11.5px}.mono{font-family:var(--mono);font-size:12px}.warn{color:var(--warn)}.spacer{flex:1}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.topbar{z-index:20;pointer-events:none;align-items:flex-start;gap:10px;display:flex;position:absolute;top:12px;left:12px;right:12px}.topbar>*{pointer-events:auto}.brand{align-items:center;gap:8px;height:44px;padding:6px 12px 6px 8px;display:flex}.brand-text{flex-direction:column;line-height:1.05;display:flex}.brand-text b{letter-spacing:.01em;background:linear-gradient(90deg,#e0f2fe,#a5b4fc);color:#0000;-webkit-background-clip:text;background-clip:text;font-size:16px}.brand-text span{color:var(--muted);font-size:11px}.search{width:min(320px,32vw);position:relative}.search input{border-radius:var(--radius);border:1px solid var(--line);background:var(--glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);width:100%;height:44px;box-shadow:var(--shadow);outline:none;padding:0 34px 0 36px}.search input::placeholder{color:var(--faint)}.search-icon{color:var(--muted);position:absolute;top:14px;left:12px}.search-busy{color:var(--muted);position:absolute;top:14px;right:12px}.search-results{z-index:30;margin:0;padding:6px;list-style:none;position:absolute;top:50px;left:0;right:0}.search-results button{text-align:left;background:0 0;border:0;border-radius:10px;flex-direction:column;align-items:flex-start;gap:1px;width:100%;padding:8px 10px;display:flex}.search-results button:hover{background:var(--glass-hi)}.search-results span{color:var(--muted);font-size:12px}.status-chips{align-items:center;gap:6px;height:44px;display:flex}.status-chip{border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);white-space:nowrap;background:#0a101ea8;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:12px;display:inline-flex}.status-chip i{background:var(--ok);width:7px;height:7px;box-shadow:0 0 8px var(--ok);border-radius:50%}.status-chip.stale i{background:var(--warn);box-shadow:0 0 8px var(--warn)}button.status-chip.clickable{cursor:pointer;color:inherit}button.status-chip.clickable:hover{border-color:var(--warn)}.status-chip.bad i{background:var(--bad);box-shadow:0 0 8px var(--bad)}.nav{align-items:center;gap:2px;height:44px;margin-left:auto;padding:4px;display:flex}.nav-btn{height:34px;color:var(--muted);background:0 0;border:0;border-radius:10px;align-items:center;gap:7px;padding:0 12px;font-weight:500;display:inline-flex;position:relative}.nav-btn.icon-only{padding:0 9px}.nav-btn:hover{color:var(--text);background:var(--glass-hi)}.nav-btn.active{color:#0b1120;background:linear-gradient(135deg,#7dd3fc,#a5b4fc)}.nav-btn em{min-width:18px;height:18px;color:var(--text);background:#ffffff1f;border-radius:9px;place-items:center;padding:0 5px;font-size:11px;font-style:normal;display:inline-grid}.nav-btn em.hot{color:#fff;background:#ef4444}.nav-btn.active em{color:#0b1120;background:#0b112040}.icon-btn{width:32px;height:32px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:10px;place-items:center;font-size:20px;line-height:1;display:inline-grid}.icon-btn.sm{width:26px;height:26px;font-size:17px}.icon-btn:hover{color:var(--text);background:var(--glass-hi)}.btn{border:1px solid var(--line-strong);white-space:nowrap;background:#ffffff0d;border-radius:10px;justify-content:center;align-items:center;gap:7px;height:34px;padding:0 12px;font-size:13px;font-weight:500;display:inline-flex}.btn:hover{background:#ffffff1a}.btn.primary{color:#06121f;background:linear-gradient(135deg,#7dd3fc,#818cf8);border-color:#0000}.btn.ghost{background:0 0}.btn.ok{color:#a7f3d0;border-color:#34d39980}.btn.danger{color:#fecaca;border-color:#f8717166;margin-top:6px}.btn.wide{width:100%}.btn:disabled,.chip:disabled{opacity:.55;cursor:default}.chip{border:1px solid var(--line-strong);white-space:nowrap;background:#ffffff0a;border-radius:999px;align-items:center;gap:5px;height:28px;padding:0 10px;font-size:12.5px;display:inline-flex}.chip:hover{background:#ffffff17}.chip-active{border-color:var(--accent);color:var(--accent)}.chip-mono{font-family:var(--mono);justify-content:center;min-width:42px}.select,.text-input,.time-input{border:1px solid var(--line-strong);background:#03071280;border-radius:10px;outline:none;width:100%;height:34px;padding:0 10px}.select.sm{width:auto;height:28px;font-size:12.5px}.time-input{width:110px}.switch{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:13px;display:inline-flex}.switch input{opacity:0;width:1px;height:1px;position:absolute}.switch-track{background:#94a3b84d;border-radius:9px;flex:none;width:32px;height:18px;transition:background .18s;position:relative}.switch-thumb{background:#e2e8f0;border-radius:50%;width:14px;height:14px;transition:transform .18s;position:absolute;top:2px;left:2px}.switch input:checked+.switch-track{background:var(--accent)}.switch input:checked+.switch-track .switch-thumb{background:#fff;transform:translate(14px)}.switch input:focus-visible+.switch-track{outline:2px solid var(--accent);outline-offset:2px}.segmented{border:1px solid var(--line);background:#03071273;border-radius:11px;gap:2px;padding:3px;display:inline-flex}.segmented button{color:var(--muted);white-space:nowrap;background:0 0;border:0;border-radius:8px;height:28px;padding:0 11px;font-size:12.5px;font-weight:500}.segmented-sm button{height:24px;padding:0 9px;font-size:12px}.segmented button:hover{color:var(--text)}.segmented button.active{color:#06121f;background:linear-gradient(135deg,#bae6fd,#c7d2fe)}.slider{appearance:none;background:linear-gradient(90deg, var(--accent) var(--pct), #94a3b840 var(--pct));border-radius:2px;outline:none;flex:1;min-width:80px;height:4px}.slider::-webkit-slider-thumb{-webkit-appearance:none;background:#fff;border-radius:50%;width:14px;height:14px;box-shadow:0 1px 4px #0006}.slider::-moz-range-thumb{background:#fff;border:0;border-radius:50%;width:14px;height:14px}.row-inline{align-items:center;gap:10px;display:flex}.row-inline.gap{flex-wrap:wrap;gap:14px}.field{border-bottom:1px solid var(--line);flex-direction:column;gap:7px;padding:10px 0;display:flex}.field:last-child{border-bottom:0}.field-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:11.5px;font-weight:600}.field-body{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.field-hint{color:var(--faint);font-size:11.5px}.num-field{color:var(--muted);flex-direction:column;gap:3px;font-size:11.5px;display:flex}.num-field.inline{flex-direction:row;align-items:center;gap:8px}.num-field input{border:1px solid var(--line-strong);width:84px;height:30px;color:var(--text);font-family:var(--mono);background:#03071280;border-radius:8px;padding:0 8px}.dock{width:var(--dock-w);z-index:15;scrollbar-width:thin;min-height:220px;max-height:calc(100% - 448px);padding:10px;position:absolute;top:68px;right:12px;overflow:auto}.dock-head{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);justify-content:space-between;align-items:center;padding:0 2px 6px;font-size:12px;font-weight:600;display:flex}.dock-head span{align-items:center;gap:6px;display:inline-flex}.dock-fab{z-index:15;width:48px;height:48px;color:var(--text);place-items:center;display:grid;position:absolute;top:68px;right:12px}.preset-row{grid-template-columns:repeat(5,1fr);gap:4px;margin-bottom:8px;display:grid}.preset{border:1px solid var(--line);color:var(--muted);text-align:center;background:#ffffff08;border-radius:10px;flex-direction:column;align-items:center;gap:4px;padding:7px 2px;font-size:10.5px;line-height:1.1;display:flex}.preset:hover{color:var(--text)}.preset.active{color:#06121f;background:linear-gradient(135deg,#bae6fd,#c7d2fe);border-color:#0000}.layer-row{border:1px solid #0000;border-radius:11px;margin-bottom:3px;padding:6px}.layer-row.on{border-color:var(--line);background:#ffffff09}.layer-head{align-items:center;gap:8px;display:flex}.layer-icon{width:30px;height:30px;color:var(--muted);background:#ffffff0d;border:0;border-radius:9px;place-items:center;display:grid}.layer-row.on .layer-icon{color:#06121f;background:var(--accent);box-shadow:0 0 16px color-mix(in srgb, var(--accent) 45%, transparent)}.layer-name{text-align:left;background:0 0;border:0;flex:1;padding:0;font-weight:500}.layer-body{flex-direction:column;gap:8px;padding:8px 2px 4px 38px;display:flex}.model-chips{border-top:1px solid var(--line);flex-wrap:wrap;gap:4px;margin-top:8px;padding-top:8px;display:flex}.model-chip{border:1px solid var(--line);color:var(--muted);background:#ffffff08;border-radius:8px;flex-direction:column;align-items:center;padding:4px 8px;font-size:11.5px;font-weight:600;line-height:1.15;display:inline-flex}.model-chip small{opacity:.8;font-size:9px;font-weight:400}.model-chip.active{color:#1c1305;background:linear-gradient(135deg,#fde68a,#fbbf24);border-color:#0000}.model-more{border:1px solid var(--line);height:34px;color:var(--muted);background:#ffffff08;border-radius:8px;width:40px;padding:0 4px}.map-controls{z-index:15;flex-direction:column;gap:2px;padding:4px;display:flex;position:absolute;bottom:196px;right:12px}.map-controls button{width:36px;height:36px;color:var(--muted);background:0 0;border:0;border-radius:10px;place-items:center;display:grid}.map-controls button:hover{color:var(--text);background:var(--glass-hi)}.map-controls button.active{color:var(--accent)}.bottom{z-index:16;pointer-events:none;flex-direction:column;gap:8px;display:flex;position:absolute;bottom:12px;left:12px;right:12px}.bottom>*{pointer-events:auto}.legend{flex-direction:column;align-self:flex-end;gap:8px;width:min(430px,100%);padding:8px 12px 10px;display:flex}.legend:empty{display:none}.legend-row{align-items:flex-start;gap:10px;display:flex}.legend-title{width:44px;color:var(--muted);flex-direction:column;font-size:10.5px;line-height:1.2;display:flex}.legend-title b{color:var(--text);font-size:11px}.legend-scale{flex:1;padding-bottom:22px;position:relative}.legend-bar{border-radius:4px;height:8px;box-shadow:inset 0 0 0 1px #ffffff14}.legend-ticks span{flex-direction:column;align-items:center;font-size:10px;line-height:1.15;display:flex;position:absolute;top:10px;transform:translate(-50%)}.legend-ticks b{font-weight:600}.legend-ticks i{color:var(--muted);font-size:9.5px;font-style:normal}.timeline{-webkit-user-select:none;user-select:none;padding:10px 14px}.tl-top{align-items:center;gap:14px;display:flex}.tl-controls{align-items:center;gap:4px;display:flex}.play-btn{color:#06121f;background:linear-gradient(135deg,#7dd3fc,#818cf8);border:0;border-radius:50%;place-items:center;width:42px;height:42px;display:grid;box-shadow:0 6px 20px #38bdf859}.play-btn:hover{filter:brightness(1.08)}.tl-time{flex-direction:column;gap:2px;min-width:0;display:flex}.tl-clock{letter-spacing:.01em;font-size:16px;font-weight:650}.tl-tz{color:var(--muted);font-size:11px;font-weight:500}.tl-rel{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;display:flex}.src-badge{white-space:nowrap;border:1px solid;border-radius:999px;padding:2px 7px;font-size:10.5px;font-weight:600}.src-observed{color:#7dd3fc;background:#38bdf81a;border-color:#7dd3fc66}.src-nowcast{color:#fde68a;background:repeating-linear-gradient(135deg,#fde68a1f 0 4px,#0000 4px 8px);border-color:#fde68a73}.src-model{color:#d8b4fe;background:#c084fc1a;border-color:#d8b4fe66}.src-premium{color:#fcd34d;border-color:#fcd34d66}.tl-right{align-items:center;gap:8px;margin-left:auto;display:flex}.tl-track{cursor:pointer;touch-action:none;border-radius:8px;height:50px;margin:10px 4px 0;position:relative}.tl-future{background:repeating-linear-gradient(135deg,#ffffff06 0 6px,#0000 6px 12px);border-radius:0 8px 8px 0;position:absolute;top:0;bottom:18px;right:0}.tl-lanes{flex-direction:column;gap:3px;display:flex;position:absolute;top:4px;left:0;right:0}.tl-lane-row{background:#ffffff0a;border-radius:3px;height:6px;position:relative}.tl-lane{border-radius:3px;position:absolute;top:0;bottom:0}.lane-radar{background:linear-gradient(90deg,#0ea5e9,#38bdf8)}.lane-nowcast{background:repeating-linear-gradient(135deg,#fde68a 0 3px,#fde68a59 3px 6px)}.lane-sat{background:linear-gradient(90deg,#94a3b8,#e2e8f0)}.lane-model{background:linear-gradient(90deg,#c084fc8c,#818cf88c)}.tl-tick{border-left:1px solid #ffffff12;width:0;position:absolute;top:28px;bottom:0}.tl-tick.major{border-left-color:#ffffff2e}.tl-tick span{color:var(--muted);white-space:nowrap;font-size:10.5px;position:absolute;top:6px;left:4px}.tl-tick.major span{color:var(--text);font-weight:600}.tl-now{border-left:2px dashed #ffffff8c;position:absolute;top:-2px;bottom:14px}.tl-now span{text-transform:uppercase;letter-spacing:.08em;color:#ffffffbf;font-size:9.5px;position:absolute;top:-14px;left:-14px}.tl-hover{pointer-events:none;border-left:1px solid #ffffff59;position:absolute;top:0;bottom:16px}.tl-hover span{background:#0009;border-radius:4px;padding:1px 5px;font-size:10px;position:absolute;bottom:-2px;left:4px}.tl-cursor{background:var(--accent);width:2px;box-shadow:0 0 10px var(--accent);pointer-events:none;margin-left:-1px;transition:left .18s ease-out;position:absolute;top:-4px;bottom:14px}.tl-knob{border:3px solid var(--accent);background:#fff;border-radius:50%;width:14px;height:14px;position:absolute;bottom:-6px;left:-6px}.tl-legend{color:var(--muted);flex-wrap:wrap;gap:16px;margin-top:6px;font-size:11px;display:flex}.tl-legend span{align-items:center;gap:6px;display:inline-flex}.tl-legend em{color:var(--faint);font-style:normal}.dot{border-radius:3px;width:14px;height:6px;display:inline-block}.panel-slot{z-index:18;pointer-events:none;display:flex;position:absolute;top:68px;bottom:164px}.panel-left{width:min(440px,100% - 24px);left:12px}.panel-right{width:min(400px,100% - 24px);right:12px}.panel{pointer-events:auto;background:var(--glass-strong);flex-direction:column;flex:1;min-height:0;animation:.2s ease-out panel-in;display:flex}@keyframes panel-in{0%{opacity:0;transform:translateY(6px)}}.panel-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:12px 12px 8px 16px;display:flex}.panel-head h2{align-items:center;gap:8px;margin:0;font-size:15px;display:inline-flex}.panel-body{scrollbar-width:thin;flex:1;padding:12px 16px 16px;overflow:auto}.panel-body h3{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin:14px 0 8px;font-size:12px}.draw-buttons{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.empty{color:var(--muted);padding:10px 2px;font-size:13px;line-height:1.5}.area-list{flex-direction:column;gap:6px;margin:8px 0 0;padding:0;list-style:none;display:flex}.area-item{border:1px solid var(--line);text-align:left;background:#ffffff08;border-radius:12px;align-items:center;gap:10px;width:100%;padding:10px 12px;display:flex}.area-item:hover{background:#ffffff12}.area-swatch{border-radius:4px;flex:none;width:12px;height:12px;box-shadow:0 0 10px}.area-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.area-main small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.rain-dot{border-radius:50%;width:10px;height:10px;animation:1.6s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.6;transform:scale(1.5)}}.area-detail{flex-direction:column;gap:10px;display:flex}.area-top{align-items:center;gap:8px;display:flex}.area-name{background:0 0;border:1px solid #0000;border-radius:9px;flex:1;min-width:0;height:34px;padding:0 6px;font-size:17px;font-weight:650}.area-name:hover,.area-name:focus{border-color:var(--line-strong);background:#03071266;outline:none}.sum-grid{grid-template-columns:1fr 1fr;gap:6px;display:grid}.sum-chip{--chip:#64748b;background:linear-gradient(160deg, color-mix(in srgb, var(--chip) 22%, transparent), #ffffff05);border:1px solid color-mix(in srgb, var(--chip) 40%, transparent);border-radius:12px;flex-direction:column;gap:2px;min-width:0;padding:9px 11px;display:flex}.sum-label{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-size:10.5px}.sum-value{font-size:16px;font-weight:650}.sum-sub{color:var(--muted);font-size:11.5px;line-height:1.35}.chart-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.aoi-chart{width:100%}.chart-stage{cursor:crosshair;position:relative}.chart-stage svg{border:1px solid var(--line);border-radius:10px;display:block}.chart-tip{border:1px solid var(--line-strong);pointer-events:none;min-width:170px;box-shadow:var(--shadow);background:#020611eb;border-radius:10px;padding:8px 10px;font-size:11.5px;line-height:1.5;position:absolute;top:26px}.chart-tip b{font-size:12px}.chart-tip .dot{border-radius:50%;width:8px;height:8px;margin-right:2px}.chart-legend{color:var(--muted);flex-wrap:wrap;gap:12px;margin-top:6px;font-size:11px;display:flex}.chart-legend span{align-items:center;gap:5px;display:inline-flex}.sw{border-radius:2px;width:14px;height:9px;display:inline-block}.sw-obs{background:#52cf62}.sw-now{background:repeating-linear-gradient(135deg,#52cf62 0 3px,#ffffff80 3px 5px)}.sw-model{background:#52cf6273}.sw-spread{background:#c084fc59}.export-row{flex-wrap:wrap;align-items:center;gap:6px;padding-top:4px;display:flex}.rules{flex-direction:column;gap:8px;display:flex}.rule-card{border:1px solid var(--line);border-left:3px solid var(--accent);background:#ffffff08;border-radius:12px;flex-direction:column;gap:8px;padding:10px;display:flex}.rule-card.sev-warning{border-left-color:var(--warn)}.rule-card.sev-severe{border-left-color:var(--bad)}.rule-card.sev-info{border-left-color:var(--accent)}.rule-card.disabled{opacity:.55}.rule-head{align-items:center;gap:6px;display:flex}.rule-params{flex-wrap:wrap;gap:10px;display:flex}.rule-channels{flex-wrap:wrap;align-items:center;gap:10px;font-size:12.5px;display:flex}.rule-channels .switch{font-size:12px}.rule-add{gap:6px;display:flex}.pill-live{color:var(--bad);font-size:11px;animation:1.2s infinite pulse}.armed{align-items:center;gap:8px;margin-bottom:4px;font-size:15px;display:flex}.log-head{justify-content:space-between;align-items:center;display:flex}.alert-log{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.alert-log li{border:1px solid var(--line);border-left:3px solid var(--accent);background:#ffffff08;border-radius:10px;padding:8px 10px}.alert-log li.sev-warning{border-left-color:var(--warn)}.alert-log li.sev-severe{border-left-color:var(--bad)}.log-time{color:var(--faint);font-size:11px}.log-title{font-weight:600}.log-body{color:var(--muted);font-size:12.5px}.keys{gap:8px;display:grid}.key-input{color:var(--muted);flex-direction:column;gap:4px;font-size:12px;display:flex}.key-input span{align-items:center;gap:5px;display:inline-flex}.key-input input{border:1px solid var(--line-strong);height:32px;font-family:var(--mono);background:#03071280;border-radius:9px;padding:0 10px;font-size:12px}.connection{border:1px solid var(--line-strong);border-left:3px solid var(--ok);border-radius:10px;flex-direction:column;gap:8px;margin:4px 0 12px;padding:10px 12px;display:flex}.connection h3{margin:0}.connection.conn-mode-standalone,.connection.conn-mode-degraded,.connection.conn-mode-checking{border-left-color:var(--warn)}.connection.conn-mode-offline{border-left-color:var(--bad)}.connection.conn-mode-disabled{border-left-color:var(--line-strong)}.connection p{margin:0}.route-list{gap:4px;margin:0;padding:0;font-size:12.5px;list-style:none;display:grid}.route-list li{justify-content:space-between;gap:12px;display:flex}.route-server{color:var(--ok)}.route-direct{color:var(--warn)}.quota{width:100%}.quota .row-inline{justify-content:space-between}.meter{background:#ffffff14;border-radius:3px;height:6px;margin-top:5px;overflow:hidden}.meter div{border-radius:3px;height:100%}.provider-cards{gap:8px;margin-top:14px;display:grid}.provider-card{border:1px solid var(--line);background:#ffffff06;border-radius:12px;padding:10px 12px}.provider-card header{align-items:center;gap:6px;display:flex}.provider-card header a{color:var(--muted);margin-left:auto}.provider-card p{margin:6px 0;font-size:12.5px}.provider-card dl{grid-template-columns:auto 1fr;gap:2px 10px;margin:0;font-size:11.5px;display:grid}.provider-card dt{color:var(--faint)}.provider-card dd{color:var(--muted);margin:0}.tier{letter-spacing:.06em;border-radius:5px;padding:2px 6px;font-size:9.5px;font-weight:700}.tier-free{color:#6ee7b7;background:#34d39929}.tier-key{color:#7dd3fc;background:#38bdf829}.tier-paid{color:#fcd34d;background:#fbbf2429}.tier-missing{color:var(--muted);background:#94a3b824;font-weight:500}.units-grid{grid-template-columns:auto 1fr;align-items:center;gap:8px 12px;display:grid}.shortcuts{gap:6px;margin:0 0 14px;display:grid}.shortcuts div{align-items:center;gap:12px;display:flex}.shortcuts dt{width:110px}.shortcuts dd{color:var(--muted);margin:0}kbd{font-family:var(--mono);border:1px solid var(--line-strong);white-space:nowrap;background:#ffffff0d;border-radius:6px;padding:3px 7px;font-size:11.5px}.toasts{z-index:40;pointer-events:none;flex-direction:column;gap:8px;width:min(420px,100% - 24px);display:flex;position:absolute;top:68px;left:50%;transform:translate(-50%)}.toast{pointer-events:auto;background:var(--glass-strong);border-left:3px solid var(--accent);align-items:flex-start;gap:10px;padding:11px 12px;animation:.25s cubic-bezier(.2,.9,.3,1.2) toast-in;display:flex}@keyframes toast-in{0%{opacity:0;transform:translateY(-10px)scale(.98)}}.toast.sev-warning{border-left-color:var(--warn)}.toast.sev-severe{border-left-color:var(--bad);box-shadow:0 0 0 1px #f8717159,0 12px 40px #f8717140}.toast.sev-ok{border-left-color:var(--ok)}.toast-icon{color:var(--accent);margin-top:1px}.toast.sev-warning .toast-icon{color:var(--warn)}.toast.sev-severe .toast-icon{color:var(--bad)}.toast.sev-ok .toast-icon{color:var(--ok)}.toast-text{flex-direction:column;flex:1;gap:2px;font-size:13px;display:flex}.toast-text span{color:var(--muted);font-size:12.5px}.has-right-panel .probe{right:424px}.probe{top:68px;right:calc(var(--dock-w) + 24px);z-index:17;width:250px;padding:10px 12px 12px;animation:.18s ease-out panel-in;position:absolute}.probe header{align-items:center;gap:8px;margin-bottom:6px;display:flex}.probe header b{flex:1}.probe dl{grid-template-columns:auto 1fr;gap:4px 12px;margin:0 0 10px;font-size:12.5px;display:grid}.probe dt{color:var(--muted)}.probe dd{text-align:right;margin:0;font-weight:500}.drawbar{z-index:30;border-color:#7dd3fc66;align-items:center;gap:10px;max-width:calc(100% - 24px);padding:8px 8px 8px 14px;font-size:13px;display:flex;position:absolute;top:68px;left:50%;transform:translate(-50%)}.maplibregl-ctrl-attrib{color:var(--faint)!important;background:#080c1699!important;border-radius:8px!important;font-size:10px!important}.maplibregl-ctrl-attrib a{color:var(--muted)!important}.maplibregl-ctrl-attrib-button{filter:invert(.8)}.maplibregl-ctrl-bottom-right{bottom:186px!important;right:60px!important}@media (max-width:760px){:root{--dock-w:100%}.topbar{flex-wrap:wrap;gap:6px;top:8px;left:8px;right:8px}.brand{height:40px;padding:4px 8px}.brand-text span{display:none}.search{flex:1;width:auto;min-width:0}.search input{height:40px}.search-icon,.search-busy{top:12px}.status-chips{order:3;width:100%;height:auto}.nav{order:2;height:40px;margin-left:0}.nav-btn span{display:none}.nav-btn{padding:0 9px}.dock,.dock-fab{top:auto;bottom:calc(var(--tl-h,160px) + 18px)}.dock{width:auto;max-height:48vh;left:8px;right:8px}.map-controls{bottom:calc(var(--tl-h,160px) + 76px);right:8px}.dock-fab{right:8px}.bottom{bottom:8px;left:8px;right:8px}.legend{display:none}.timeline{padding:8px 10px}.tl-top{flex-wrap:wrap;gap:8px}.tl-right{margin-left:0}.tl-legend{display:none}.panel-slot{z-index:35;height:72vh;top:auto;bottom:0;width:100%!important;left:0!important;right:0!important}.panel{border-radius:18px 18px 0 0}.probe{width:auto;top:auto;left:8px;right:8px;bottom:calc(var(--tl-h,160px) + 18px)}.toasts{top:108px}.conn-body{flex-wrap:wrap;padding-left:12px;padding-right:12px}.conn-text{flex-basis:calc(100% - 32px)}.conn-actions{justify-content:flex-end;width:100%}.conn-body.line .conn-actions{width:auto}.conn-btn{min-height:44px}.drawbar{top:auto;bottom:calc(var(--tl-h,160px) + 18px);flex-wrap:wrap}.maplibregl-ctrl-bottom-right{bottom:calc(var(--tl-h,160px) + 12px)!important;right:60px!important}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
