@font-face{font-family:Sofia Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/sofia-sans-cyrillic-ext-400-normal-CVBl-_xj.woff2)format("woff2"),url(/assets/sofia-sans-cyrillic-ext-400-normal-C76a1JRI.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Sofia Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/sofia-sans-cyrillic-400-normal-aPOqbJFG.woff2)format("woff2"),url(/assets/sofia-sans-cyrillic-400-normal-BZDnveNQ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Sofia Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/sofia-sans-greek-400-normal-vYieE5GI.woff2)format("woff2"),url(/assets/sofia-sans-greek-400-normal-C02Vi3CM.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Sofia Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/sofia-sans-latin-ext-400-normal-DInp3oxI.woff2)format("woff2"),url(/assets/sofia-sans-latin-ext-400-normal-BK0KM0ji.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:Sofia Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/sofia-sans-latin-400-normal-CwUGEJF7.woff2)format("woff2"),url(/assets/sofia-sans-latin-400-normal-BRg5az2I.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:Sofia Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/sofia-sans-cyrillic-ext-500-normal-t-aotEwK.woff2)format("woff2"),url(/assets/sofia-sans-cyrillic-ext-500-normal-B8X57VI5.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Sofia Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/sofia-sans-cyrillic-500-normal-jdFUC6kD.woff2)format("woff2"),url(/assets/sofia-sans-cyrillic-500-normal-BMFJqCNn.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Sofia Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/sofia-sans-greek-500-normal-BjX7I18A.woff2)format("woff2"),url(/assets/sofia-sans-greek-500-normal-CBDxg3f7.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Sofia Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/sofia-sans-latin-ext-500-normal-B8pzYG1z.woff2)format("woff2"),url(/assets/sofia-sans-latin-ext-500-normal-B577ZEMD.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:Sofia Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/sofia-sans-latin-500-normal-CF_FiJiJ.woff2)format("woff2"),url(/assets/sofia-sans-latin-500-normal-BggsTkFI.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:Sofia Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/sofia-sans-cyrillic-ext-600-normal-Dp8h1IWb.woff2)format("woff2"),url(/assets/sofia-sans-cyrillic-ext-600-normal-Cd-jFJmy.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Sofia Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/sofia-sans-cyrillic-600-normal-CaRSAomm.woff2)format("woff2"),url(/assets/sofia-sans-cyrillic-600-normal-CBh1HHFG.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Sofia Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/sofia-sans-greek-600-normal-DfXQaAdy.woff2)format("woff2"),url(/assets/sofia-sans-greek-600-normal-C0uJHt0O.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Sofia Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/sofia-sans-latin-ext-600-normal-_0zT4HSC.woff2)format("woff2"),url(/assets/sofia-sans-latin-ext-600-normal-B9GADE0Q.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:Sofia Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/sofia-sans-latin-600-normal-i552trx7.woff2)format("woff2"),url(/assets/sofia-sans-latin-600-normal-CilnjWlq.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:Sofia Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/sofia-sans-cyrillic-ext-700-normal-CgW9z_Hv.woff2)format("woff2"),url(/assets/sofia-sans-cyrillic-ext-700-normal-DDecXkSU.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Sofia Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/sofia-sans-cyrillic-700-normal-Dmfw-x4G.woff2)format("woff2"),url(/assets/sofia-sans-cyrillic-700-normal-CCa4ZRok.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Sofia Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/sofia-sans-greek-700-normal-Cmg2Dgec.woff2)format("woff2"),url(/assets/sofia-sans-greek-700-normal-DithjEzn.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Sofia Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/sofia-sans-latin-ext-700-normal-DaQ_iM5_.woff2)format("woff2"),url(/assets/sofia-sans-latin-ext-700-normal-Cdtqx15C.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:Sofia Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/sofia-sans-latin-700-normal-ClD8T4bq.woff2)format("woff2"),url(/assets/sofia-sans-latin-700-normal-CLbI16IB.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:Sofia Sans Semi Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/sofia-sans-semi-condensed-cyrillic-ext-700-normal-CsSqa_bQ.woff2)format("woff2"),url(/assets/sofia-sans-semi-condensed-cyrillic-ext-700-normal-15uxDP_d.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Sofia Sans Semi Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/sofia-sans-semi-condensed-cyrillic-700-normal-DUftFK4K.woff2)format("woff2"),url(/assets/sofia-sans-semi-condensed-cyrillic-700-normal-BAeHAbLE.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Sofia Sans Semi Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/sofia-sans-semi-condensed-greek-700-normal-hn7r57g0.woff2)format("woff2"),url(/assets/sofia-sans-semi-condensed-greek-700-normal-Bs2U3Pdj.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Sofia Sans Semi Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/sofia-sans-semi-condensed-latin-ext-700-normal-Dz1rVp6U.woff2)format("woff2"),url(/assets/sofia-sans-semi-condensed-latin-ext-700-normal-BzHUPngN.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:Sofia Sans Semi Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/sofia-sans-semi-condensed-latin-700-normal-dULccpkg.woff2)format("woff2"),url(/assets/sofia-sans-semi-condensed-latin-700-normal-qp1WI3hS.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:Sofia Sans Semi Condensed;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/sofia-sans-semi-condensed-cyrillic-ext-800-normal-BWMV3KFo.woff2)format("woff2"),url(/assets/sofia-sans-semi-condensed-cyrillic-ext-800-normal-DXX_Jf4n.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Sofia Sans Semi Condensed;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/sofia-sans-semi-condensed-cyrillic-800-normal-CV3EzSl6.woff2)format("woff2"),url(/assets/sofia-sans-semi-condensed-cyrillic-800-normal-B7U2k8es.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Sofia Sans Semi Condensed;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/sofia-sans-semi-condensed-greek-800-normal-OLrF_-QB.woff2)format("woff2"),url(/assets/sofia-sans-semi-condensed-greek-800-normal-Dmcwa-b8.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Sofia Sans Semi Condensed;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/sofia-sans-semi-condensed-latin-ext-800-normal-DRfLtiku.woff2)format("woff2"),url(/assets/sofia-sans-semi-condensed-latin-ext-800-normal-CcJOBoCM.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:Sofia Sans Semi Condensed;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/sofia-sans-semi-condensed-latin-800-normal-CyBwOzYI.woff2)format("woff2"),url(/assets/sofia-sans-semi-condensed-latin-800-normal-BkrEN7wA.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-cyrillic-ext-400-normal-C_uLvvQ5.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-ext-400-normal-Bh0R7Dhr.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-400-normal-ugxPyKxw.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-greek-400-normal-C190GLew.woff2)format("woff2"),url(/assets/jetbrains-mono-greek-400-normal-B9oWc5Lo.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-vietnamese-400-normal-ByoDsISC.woff2)format("woff2"),url(/assets/jetbrains-mono-vietnamese-400-normal-CqNFfHCs.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-ext-400-normal-fXTG6kC5.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-cyrillic-ext-500-normal-C9ShMxGR.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-ext-500-normal-CEVyPk4Y.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-cyrillic-500-normal-DmUKJPL_.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-500-normal-DJqRU3vO.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-greek-500-normal-JpySY46c.woff2)format("woff2"),url(/assets/jetbrains-mono-greek-500-normal-D7SFKleX.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-vietnamese-500-normal-BvH7FW2L.woff2)format("woff2"),url(/assets/jetbrains-mono-vietnamese-500-normal-DNRqzVM1.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-ext-500-normal-Cut-4mMH.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-ext-500-normal-ckzbgY84.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-500-normal-CJOVTJB7.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:#061726;--panel:#0a2034;--panel-2:#0f2b44;--line:#1b3a55;--line-soft:#13304a;--text:#e8f1f7;--text-strong:#fff;--text-soft:#c9d8e4;--muted:#9fb6c8;--dim:#7d97ac;--accent:#00a8c8;--accent-text:#4fd6ee;--accent-light:#8ae6f6;--primary-a:#14608d;--primary-b:#0b7fa3;--ok:#2fbf71;--ok-text:#5fd896;--bad:#f06a5a;--bad-text:#f58b7e;--warn:#f0b429;--warn-text:#f6d58a;--paper:#f7f8fa;--ink:#0d2234;--ink-label:#22394c;--ink-muted:#4b5f70;--ink-line:#c3cfd9;--font:"Sofia Sans", "Segoe UI", system-ui, sans-serif;--font-head:"Sofia Sans Semi Condensed", "Sofia Sans", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{min-height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.45}a{color:var(--accent-text)}a:hover{color:var(--accent-light)}button{font:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.mono{font-family:var(--font-mono)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.btn{border:1px solid var(--line);background:var(--panel);height:44px;color:var(--text);cursor:pointer;white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{color:var(--text-strong);border-color:#2a4a66}.btn-primary{color:#fff;background:linear-gradient(90deg, var(--primary-a) 0%, var(--primary-b) 100%);border:0;font-weight:700}.btn-primary:hover{filter:brightness(1.1);color:#fff}.btn[disabled]{opacity:.55;cursor:not-allowed;filter:none}.btn-block{width:100%;height:50px;font-size:16px}.link-btn{color:var(--primary-a);cursor:pointer;text-align:left;background:0 0;border:0;padding:0;font-weight:600}.link-btn:hover{color:#0b4466;text-decoration:underline}.login-page{background:radial-gradient(1200px 700px at 15% 10%, #0c3a55 0%, #0c3a5500 60%), radial-gradient(900px 600px at 90% 95%, #0a3350 0%, #0a335000 55%), var(--bg);flex-direction:column;justify-content:center;align-items:center;gap:28px;min-height:100vh;padding:40px 20px;display:flex}.login-top,.login-foot{width:100%;max-width:1120px;display:flex}.login-top{justify-content:flex-end}.login-foot{color:var(--dim);justify-content:space-between;font-size:13px}.lang-switch{border:1px solid var(--line);border-radius:999px;gap:4px;padding:4px;font-size:13px;font-weight:600;display:flex}.lang-switch button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:6px 12px}.lang-switch button[aria-pressed=true]{background:var(--panel-2);color:var(--text)}.login-card{border:1px solid var(--line);background:#061726b8;border-radius:20px;flex-wrap:wrap;width:100%;max-width:1120px;display:flex;overflow:hidden}.login-brand{flex-direction:column;flex:460px;gap:36px;min-width:0;padding:64px 64px 56px;display:flex}.brand-row{align-items:center;gap:14px;display:flex}.brand-row img{width:50px;height:45px}.brand-name{font-family:var(--font-head);letter-spacing:-.01em;color:#fff;font-size:38px;font-weight:800}.brand-copy{flex-direction:column;gap:18px;display:flex}.brand-bar{background:var(--accent);border-radius:2px;width:52px;height:3px}.brand-tag{letter-spacing:.14em;text-transform:uppercase;color:var(--accent-text);font-size:13px;font-weight:700}.brand-copy h1{font-family:var(--font-head);letter-spacing:-.015em;color:#fff;text-wrap:balance;margin:0;font-size:56px;font-weight:800;line-height:1.02}.brand-copy p{max-width:46ch;color:var(--muted);margin:0;font-size:18px;line-height:1.55}.brand-points{border-top:1px solid var(--line);flex-direction:column;gap:14px;margin:0;padding:22px 0 0;list-style:none;display:flex}.brand-points li{color:var(--text-soft);align-items:center;gap:12px;font-size:15px;display:flex}.brand-points svg{color:var(--accent);flex:none}.login-form-wrap{flex:400px;min-width:0;padding:20px;display:flex}.login-form{background:var(--paper);color:var(--ink);border-radius:14px;flex-direction:column;flex:1;gap:22px;padding:48px 44px;display:flex}.login-form h2{font-family:var(--font-head);color:var(--ink);margin:0;font-size:30px;font-weight:700}.login-form .lead{color:var(--ink-muted);margin:0;font-size:15px;line-height:1.5}.field{flex-direction:column;gap:8px;display:flex}.field label{color:var(--ink-label);font-size:14px;font-weight:600}.field input{border:1px solid var(--ink-line);height:48px;font:inherit;color:var(--ink);background:#fff;border-radius:10px;padding:0 14px;font-size:16px}.field input:focus{border-color:var(--primary-a)}.field .code-input{font-family:var(--font-mono);letter-spacing:.3em;font-size:22px}.pw-wrap{display:flex;position:relative}.pw-wrap input{flex:1;min-width:0;padding-right:52px}.pw-toggle{width:40px;height:40px;color:var(--ink-muted);cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;display:flex;position:absolute;top:4px;right:4px}.form-error{color:#8a2418;background:#fdecea;border:1px solid #f3b7af;border-radius:10px;margin:0;padding:12px 14px;font-size:15px;line-height:1.45}.form-note{color:var(--ink-muted);margin:0;font-size:14px;line-height:1.5}.steps{color:var(--ink-label);flex-direction:column;gap:6px;margin:0;padding-left:20px;font-size:15px;line-height:1.45;display:flex}.qr-box{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.qr-box img{border:1px solid var(--ink-line);background:#fff;border-radius:8px;width:168px;height:168px}.qr-secret{min-width:0;color:var(--ink-muted);flex-direction:column;flex:160px;gap:6px;font-size:13px;display:flex}.qr-secret code{font-family:var(--font-mono);color:var(--ink);word-break:break-all;font-size:14px}.codes{border:1px solid var(--ink-line);background:#fff;border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;margin:0;padding:16px;list-style:none;display:grid}.codes li{font-family:var(--font-mono);color:var(--ink);font-size:16px}.shell{min-height:100vh;display:flex}.sidenav{background:var(--panel);border-right:1px solid var(--line);flex-direction:column;flex:0 0 248px;gap:24px;height:100vh;padding:24px 16px;display:flex;position:sticky;top:0}.sidenav .brand-row{gap:10px;padding:0 8px}.sidenav .brand-row img{width:30px;height:27px}.sidenav .brand-name{font-size:24px}.company-pick{flex-direction:column;gap:6px;display:flex}.company-pick label{color:var(--dim);padding:0 4px;font-size:12px}.company-pick select{border:1px solid var(--line);background:var(--panel-2);height:44px;color:var(--text);font:inherit;border-radius:10px;padding:0 12px;font-weight:700}.nav-links{flex-direction:column;gap:4px;font-size:15px;font-weight:600;display:flex}.nav-links a{color:var(--muted);border-radius:8px;align-items:center;gap:12px;padding:11px 12px;text-decoration:none;display:flex}.nav-links a[aria-current=page]{color:#fff;background:#00a8c824}.nav-links a[aria-current=page] svg{color:var(--accent-text)}.nav-user{border-top:1px solid var(--line);flex-direction:column;gap:10px;margin-top:auto;padding:12px;display:flex}.nav-user-row{align-items:center;gap:10px;min-width:0;display:flex}.avatar{background:var(--primary-a);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:36px;height:36px;font-weight:700;display:flex}.nav-user-text{flex-direction:column;gap:2px;min-width:0;display:flex}.nav-user-text span:first-child{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.nav-user-text span:last-child{color:var(--dim);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.nav-logout{color:var(--muted);cursor:pointer;background:0 0;border:0;align-self:flex-start;padding:4px 0;font-weight:600}.nav-logout:hover{color:#fff}.topbar,.tabbar{display:none}.main{flex-direction:column;flex:1;gap:28px;min-width:0;padding:32px clamp(16px,3vw,40px) 48px;display:flex}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.page-head-text{flex-direction:column;gap:6px;display:flex}.page-kicker{color:var(--muted);font-size:15px}.page-head h1{font-family:var(--font-head);color:#fff;margin:0;font-size:40px;font-weight:800;line-height:1.05}.search{border:1px solid var(--line);background:var(--panel);height:44px;color:var(--dim);border-radius:10px;align-items:center;gap:8px;padding:0 14px;display:flex}.search input{width:220px;color:var(--text);font:inherit;background:0 0;border:0;outline:none;font-size:15px}.stats{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;display:grid}.stat{border:1px solid var(--line);background:var(--panel);border-radius:12px;flex-direction:column;gap:4px;padding:16px 18px;display:flex}.stat span:first-child{color:var(--muted);font-size:13px}.stat b{font-family:var(--font-head);font-variant-numeric:tabular-nums;font-size:32px;font-weight:800}.stat.ok b{color:var(--ok)}.stat.bad{border-color:#f06a5a73}.stat.bad b{color:var(--bad)}.site-list{flex-direction:column;gap:10px;display:flex}.site-row{border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:12px;flex-wrap:wrap;align-items:center;gap:14px 24px;padding:18px 20px;text-decoration:none;display:flex}.site-row:hover{color:var(--text);border-color:#2a4a66}.site-row-name{flex-direction:column;flex:2 220px;gap:4px;min-width:0;display:flex}.site-row-name b{color:#fff;font-size:18px}.site-row-name span{color:var(--dim);font-size:14px}.site-row-status{flex-direction:column;flex:170px;gap:6px;display:flex}.site-row-status small{color:var(--dim);font-size:13px}.site-row-svcs{flex-wrap:wrap;flex:150px;gap:6px;display:flex}.tag{background:var(--panel-2);border:1px solid var(--line);font-family:var(--font-mono);color:var(--text-soft);border-radius:6px;padding:4px 8px;font-size:12px}.chev{color:var(--dim);flex:none}.chip{border-radius:999px;align-items:center;gap:8px;width:fit-content;padding:5px 10px;font-size:13px;font-weight:700;display:inline-flex}.chip i{border-radius:50%;width:8px;height:8px}.chip.ok{color:var(--ok-text);background:#2fbf7124}.chip.ok i{background:var(--ok)}.chip.bad{color:var(--bad-text);background:#f06a5a24}.chip.bad i{background:var(--bad)}.chip.unknown{color:var(--muted);background:#9fb6c81f}.chip.unknown i{background:var(--dim)}.chip.live{color:var(--accent-light);background:#00a8c824}.chip.live i{background:var(--accent-text)}.empty{color:var(--muted);border:1px dashed #2a4a66;border-radius:12px;max-width:70ch;padding:28px;line-height:1.5}.alert{border-radius:12px;align-items:flex-start;gap:12px;padding:14px 18px;font-size:15px;line-height:1.45;display:flex}.alert.bad{color:#ffd2cc;background:#f06a5a1a;border:1px solid #f06a5a73}.alert.info{color:var(--text-soft);background:#00a8c814;border:1px solid #00a8c859}.crumbs{color:var(--dim);align-items:center;gap:8px;font-size:14px;display:flex}.crumbs a{font-weight:600;text-decoration:none}.site-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:12px;font-size:15px;display:flex}.columns{flex-wrap:wrap;align-items:flex-start;gap:24px;display:flex}.col-main{flex-direction:column;flex:3 560px;gap:24px;min-width:0;display:flex}.col-side{flex-direction:column;flex:300px;gap:16px;min-width:0;display:flex}.section-title{color:#fff;margin:0 0 12px;font-size:18px;font-weight:700}.svc-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px;display:grid}.svc{border:1px solid var(--line);background:var(--panel);border-radius:14px;flex-direction:column;gap:14px;padding:20px;display:flex}.svc-head{align-items:flex-start;gap:14px;display:flex}.svc-kind{background:var(--panel-2);border:1px solid var(--line);width:44px;height:44px;font-family:var(--font-mono);color:var(--accent-text);border-radius:10px;flex:none;justify-content:center;align-items:center;font-size:12px;font-weight:500;display:flex}.svc-title{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.svc-title b{color:#fff;font-size:18px}.svc-title span{color:var(--muted);overflow-wrap:anywhere;font-size:14px}.svc-target{font-family:var(--font-mono);color:var(--text-soft);overflow-wrap:anywhere;font-size:13px}.svc-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:auto;display:flex}.svc-note{color:var(--muted);font-size:14px}.svc-error{color:var(--bad-text);font-size:14px}.panel{border:1px solid var(--line);background:var(--panel);border-radius:14px;flex-direction:column;gap:14px;padding:20px;display:flex}.panel h2{color:#fff;margin:0;font-size:16px;font-weight:700}.panel-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.kv{grid-template-columns:auto minmax(0,1fr);gap:10px 14px;margin:0;font-size:14px;display:grid}.kv dt{color:var(--dim)}.kv dd{color:var(--text);overflow-wrap:anywhere;margin:0}.open-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.open-list li{justify-content:space-between;align-items:center;gap:10px;font-size:14px;display:flex}.open-list small{color:var(--dim);display:block}.btn-sm{height:34px;padding:0 12px;font-size:14px}.center-msg{min-height:60vh;color:var(--muted);justify-content:center;align-items:center;display:flex}@media (width<=860px){.login-brand{gap:18px;padding:28px 24px 4px}.brand-copy{gap:12px}.brand-copy h1{font-size:30px}.brand-copy p,.brand-points,.brand-bar{display:none}.login-form{padding:32px 22px}.login-page{gap:16px;padding:20px 12px}}@media (width<=760px){.shell{flex-direction:column}.sidenav{display:none}.topbar{border-bottom:1px solid var(--line);background:var(--panel);z-index:5;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex;position:sticky;top:0}.topbar .brand-row img{width:26px;height:23px}.topbar .brand-name{font-size:20px}.topbar select{border:1px solid var(--line);background:var(--panel-2);max-width:50vw;height:36px;color:var(--text);font:inherit;border-radius:8px;padding:0 8px;font-weight:600}.tabbar{padding:8px 8px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--panel);grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;font-size:12px;font-weight:600;display:grid;position:sticky;bottom:0}.tabbar a,.tabbar button{height:52px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:4px;text-decoration:none;display:flex}.tabbar a[aria-current=page]{color:var(--accent-text)}.main{gap:18px;padding:16px 16px 24px}.page-head h1{font-size:32px}.search,.search input{width:100%}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.svc-grid{grid-template-columns:minmax(0,1fr)}.svc-actions .btn-primary{width:100%;height:46px;font-size:16px}}.fgrid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px 16px;display:grid}.fgrid>.form-actions,.fgrid>.alert{grid-column:1/-1}.f{flex-direction:column;gap:6px;min-width:0;font-size:14px;display:flex}.f.wide{grid-column:1/-1}.f>label,.f>.f-label{color:var(--text-soft);font-weight:600}.f input,.f select,.limit-input{border:1px solid var(--line);background:var(--bg);height:44px;color:var(--text);font:inherit;border-radius:10px;min-width:0;padding:0 12px;font-size:15px}.f input:focus,.f select:focus,.limit-input:focus{border-color:var(--accent);outline:none}.f input.mono{font-family:var(--font-mono);font-size:14px}.f small{color:var(--dim);font-size:13px;line-height:1.45}.seg{border:1px solid var(--line);border-radius:10px;gap:4px;width:fit-content;padding:4px;display:inline-flex}.seg button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:8px 14px;font-weight:600}.seg button[aria-pressed=true]{background:var(--panel-2);color:#fff}.form-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.btn-danger{color:var(--bad-text);border-color:#f06a5a73}.btn-danger:hover{color:#fff;border-color:var(--bad)}.chip.warn{color:var(--warn-text);background:#f0b42924}.chip.warn i{background:var(--warn)}.alert.warn{color:var(--warn-text);background:#f0b42914;border:1px solid #f0b42966}.alert.ok{color:var(--ok-text);background:#2fbf7114;border:1px solid #2fbf7166}.gw-list{flex-direction:column;gap:10px;display:flex}.gw-row{border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:12px;grid-template-columns:minmax(150px,1.1fr) minmax(150px,1fr) minmax(170px,1.3fr) minmax(110px,.8fr) 20px;align-items:center;gap:12px 20px;padding:16px 20px;text-decoration:none;display:grid}.gw-row:hover{color:var(--text);border-color:#2a4a66}.gw-row b{color:#fff;font-family:var(--font-mono);font-size:15px;font-weight:500}.gw-row small{color:var(--dim);font-size:13px;display:block}.gw-chips{flex-wrap:wrap;gap:6px;display:flex}.howto{color:var(--text-soft);flex-direction:column;gap:14px;margin:0;padding-left:22px;font-size:15px;line-height:1.5;display:flex}.howto li::marker{color:var(--accent-text);font-weight:700}.howto .btn{margin-top:8px}.cmd{background:var(--bg);border:1px solid var(--line);font-family:var(--font-mono);color:var(--accent-light);overflow-wrap:anywhere;border-radius:8px;align-items:center;gap:10px;margin-top:8px;padding:10px 12px;font-size:13px;display:flex}.cmd code{flex:1;min-width:0}.secret-box{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.secret-box code{background:var(--bg);border:1px solid var(--line);font-family:var(--font-mono);color:#fff;overflow-wrap:anywhere;border-radius:8px;padding:8px 12px;font-size:15px}.svc-state{flex-direction:column;gap:6px;font-size:14px;display:flex}.svc-state small{color:var(--dim);overflow-wrap:anywhere}.svc-manage{border-top:1px solid var(--line-soft);flex-wrap:wrap;gap:8px;padding-top:12px;display:flex}.new-svc{border:1px solid var(--line);background:var(--panel);border-radius:14px;flex-direction:column;gap:16px;padding:20px;display:flex}.new-svc h3,.panel h3{color:#fff;margin:0;font-size:16px}.head-actions{flex-wrap:wrap;gap:10px;display:flex}@media (width<=760px){.gw-row{grid-template-columns:minmax(0,1fr) 20px}.gw-row>:nth-child(2),.gw-row>:nth-child(3),.gw-row>:nth-child(4){grid-column:1}.gw-row>.chev{grid-area:1/2}.tabbar.three{grid-template-columns:repeat(3,minmax(0,1fr))}.head-actions,.head-actions .btn{width:100%}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.user-list li{align-items:flex-start}.user-list li>span:first-child{min-width:0}.limit-input{width:120px}@media (width<=560px){.user-list li{flex-direction:column}}.open-list li.net-row{align-items:flex-start}.inet-line{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.inet-error{color:var(--bad-text)}.inet-edit{border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:10px;margin-top:10px;padding:12px;display:flex}.inet-edit textarea{border:1px solid var(--line);background:var(--bg);color:var(--text);resize:vertical;border-radius:10px;padding:10px 12px;font-size:14px}.inet-site{display:block}.tool-body{flex-direction:column;gap:10px;margin-top:12px;display:flex}.tool-filter{width:240px}.log-list{border:1px solid var(--line);border-radius:10px;max-height:420px;margin:0;padding:0;font-size:13px;list-style:none;overflow:auto}.log-list li{border-bottom:1px solid var(--line);grid-template-columns:170px 150px minmax(0,1fr);gap:10px;padding:6px 10px;display:grid}.log-list li.bad{color:var(--bad-text)}.log-topics{color:var(--dim);overflow-wrap:anywhere}.tool-table{border-collapse:collapse;width:100%;font-size:13px}.tool-table th,.tool-table td{text-align:left;border-bottom:1px solid var(--line);padding:6px 8px}.tool-table th{color:var(--dim);font-weight:600}.tool-scan{flex-direction:column;gap:8px;display:flex}@media (width<=560px){.log-list li{grid-template-columns:1fr;gap:2px}.tool-table{display:block;overflow-x:auto}}.check{color:var(--muted);align-items:center;gap:6px;font-size:14px;display:inline-flex}
