.anticon{display:inline-flex;align-items:center;color:inherit;font-style:normal;line-height:0;text-align:center;text-transform:none;vertical-align:-.125em;text-rendering:optimizeLegibility}.anticon>svg{display:inline-block;line-height:1}.auth-shell[data-v-a61260bc]{min-height:100%}.fade-enter-active[data-v-a61260bc],.fade-leave-active[data-v-a61260bc]{transition:opacity .2s ease}.fade-enter-from[data-v-a61260bc],.fade-leave-to[data-v-a61260bc]{opacity:0}.drawer-enter-active[data-v-a61260bc],.drawer-leave-active[data-v-a61260bc]{transition:opacity .2s ease}.drawer-enter-active .drawer[data-v-a61260bc],.drawer-leave-active .drawer[data-v-a61260bc]{transition:transform .22s ease}.drawer-enter-from[data-v-a61260bc],.drawer-leave-to[data-v-a61260bc]{opacity:0;pointer-events:none}.drawer-enter-from .drawer[data-v-a61260bc],.drawer-leave-to .drawer[data-v-a61260bc]{transform:translate(-100%)}[dir=rtl] .drawer-enter-from .drawer[data-v-a61260bc],[dir=rtl] .drawer-leave-to .drawer[data-v-a61260bc]{transform:translate(100%)}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2) format("woff2"),url(./ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2) format("woff2"),url(./ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2) format("woff2"),url(./ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2) format("woff2"),url(./ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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 Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(./ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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 Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2) format("woff2"),url(./ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2) format("woff2"),url(./ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2) format("woff2"),url(./ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2) format("woff2"),url(./ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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 Mono;font-style:normal;font-display:swap;font-weight:500;src:url(./ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2"),url(./ibm-plex-mono-latin-500-normal-CB9ihrfo.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:400;src:url(./vazirmatn-arabic-400-normal-DMZFCm7K.woff2) format("woff2"),url(./vazirmatn-arabic-400-normal-C4W5XURk.woff) format("woff");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:400;src:url(./vazirmatn-latin-ext-400-normal-BdGhO0lm.woff2) format("woff2"),url(./vazirmatn-latin-ext-400-normal-DPxMaNjI.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Vazirmatn;font-style:normal;font-display:swap;font-weight:400;src:url(./vazirmatn-latin-400-normal-BT_DHTc7.woff2) format("woff2"),url(./vazirmatn-latin-400-normal-GKyMcI03.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:500;src:url(./vazirmatn-arabic-500-normal-C_lbnnKa.woff2) format("woff2"),url(./vazirmatn-arabic-500-normal-Dqq3-xo3.woff) format("woff");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:500;src:url(./vazirmatn-latin-ext-500-normal-CgxvvVrG.woff2) format("woff2"),url(./vazirmatn-latin-ext-500-normal-4XgegWYb.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Vazirmatn;font-style:normal;font-display:swap;font-weight:500;src:url(./vazirmatn-latin-500-normal-6zZzgpg4.woff2) format("woff2"),url(./vazirmatn-latin-500-normal-Bg_BALlD.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:700;src:url(./vazirmatn-arabic-700-normal-Dge_DOjm.woff2) format("woff2"),url(./vazirmatn-arabic-700-normal-B5nPuCFv.woff) format("woff");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Vazirmatn;font-style:normal;font-display:swap;font-weight:700;src:url(./vazirmatn-latin-ext-700-normal-BfoXmNMx.woff2) format("woff2"),url(./vazirmatn-latin-ext-700-normal-DMYLqBto.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Vazirmatn;font-style:normal;font-display:swap;font-weight:700;src:url(./vazirmatn-latin-700-normal-9BlbvDRV.woff2) format("woff2"),url(./vazirmatn-latin-700-normal-DrB0PBU6.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:dark;--ground: #0a090a;--surface: #141215;--surface-2: #1c191d;--surface-3: #262227;--surface-elev: #1f1b20;--sider: #0f0d10;--sider-sub: #0a090a;--line: #302a31;--line-soft: #241f25;--ink: #f4f1f2;--ink-2: #d2cbce;--muted: #a1959b;--faint: #8c8188;--accent: #e02e3d;--accent-hover: #f2404f;--accent-ink: #ffffff;--accent-text: #e75d69;--accent-soft: #2c1217;--accent-line: #55202a;--ok: #4ac36a;--ok-soft: #12291c;--warn: #e0ab34;--warn-soft: #2d2411;--bad: #f4655f;--bad-fill: #c62f28;--bad-soft: #331714;--tag-green-bg: #162312;--tag-green-line: #274916;--tag-green-ink: #6abe39;--tag-red-bg: #2a1215;--tag-red-line: #58181c;--tag-red-ink: #e84749;--tag-orange-bg: #2b1d11;--tag-orange-line: #593815;--tag-orange-ink: #e89a3c;--tag-gold-ink: #d4b106;--switch-off: rgba(255, 255, 255, .25);--tag-purple-bg: #1a1325;--tag-purple-line: #3a2a5c;--tag-purple-ink: #a878e6;--tag-cyan-bg: #112123;--tag-cyan-line: #144848;--tag-cyan-ink: #33bcb7;--fill-tertiary: rgba(255, 255, 255, .06);--fill-quaternary: rgba(255, 255, 255, .03);--tag-blue-bg: #111a2c;--tag-blue-line: #15325b;--tag-blue-ink: #4e9bf5;--tag-geek-bg: #131629;--tag-geek-line: #263a91;--tag-geek-ink: #6b8ae4;--accent-glow: rgba(224, 46, 61, .6);--accent-ring: rgba(224, 46, 61, .16);--scrim: rgba(0, 0, 0, .55);--scrim-ink: #ffffff;--rail-shadow: rgba(0, 0, 0, .45);--modal-scrim: rgba(0, 0, 0, .72);--auth-wash: #1a0d11;--auth-blob-1: rgba(224, 46, 61, .5);--auth-blob-2: rgba(160, 26, 42, .45);--auth-blob-3: rgba(242, 64, 79, .28);--auth-blob-4: rgba(120, 18, 30, .5);--auth-blob-5: rgba(224, 46, 61, .22);--auth-grid: rgba(255, 255, 255, .045);--auth-card: rgba(20, 18, 21, .72);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .5);--shadow: 0 2px 6px rgba(0, 0, 0, .45), 0 16px 40px -16px rgba(0, 0, 0, .9);--edge: inset 0 1px 0 rgba(255, 255, 255, .045);--elev-1: 0 1px 2px rgba(0, 0, 0, .4), var(--edge);--elev-2: 0 1px 2px rgba(0, 0, 0, .5), 0 10px 28px -10px rgba(0, 0, 0, .72), var(--edge);--elev-3: 0 2px 6px rgba(0, 0, 0, .5), 0 28px 64px -24px rgba(0, 0, 0, .85), var(--edge);--ease: cubic-bezier(.2, .8, .2, 1);--ease-soft: cubic-bezier(.16, 1, .3, 1);--t-quick: .12s;--t-move: .18s;--ring: 0 0 0 2px var(--ground), 0 0 0 4px var(--accent);--ring-inset: 0 0 0 2px var(--surface), 0 0 0 4px var(--accent);--radius: 8px;--radius-sm: 6px;--font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--mono: "IBM Plex Mono", ui-monospace, "Cascadia Mono", Consolas, monospace;--sidebar-w: 232px;--t-xs: .75rem;--t-sm: .8125rem;--t-base: .875rem;--t-md: 1rem;--t-lg: 1.25rem;--t-xl: 1.5rem}html[lang=fa]{--font: "Vazirmatn", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"}html[lang=fa] :is(p,li,h1,h2,h3,h4,label,td,th,small,.aalert,.aalert *,.banner,.banner *,.hint,.aform-extra,.muted,.stat-label,.amodal-title,.acollapse-label,.menu-item,.amenu-item):not(.ltr):not(.num){unicode-bidi:plaintext}:root[data-theme=ultra-dark]{--ground: #000000;--surface: #0a0a0c;--surface-2: #121215;--surface-3: #1a1a1e;--surface-elev: #151518;--sider: #050507;--sider-sub: #000000;--line: #26262b;--line-soft: #17171b;--shadow: 0 2px 6px rgba(0, 0, 0, .7), 0 16px 40px -16px rgba(0, 0, 0, 1)}:root.light,body.light{--edge: inset 0 1px 0 rgba(255, 255, 255, .9);--elev-1: 0 1px 2px rgba(16, 12, 14, .06), 0 1px 1px rgba(16, 12, 14, .04);--elev-2: 0 1px 2px rgba(16, 12, 14, .07), 0 10px 28px -12px rgba(16, 12, 14, .18);--elev-3: 0 2px 6px rgba(16, 12, 14, .08), 0 28px 64px -28px rgba(16, 12, 14, .26);--ring: 0 0 0 2px #fff, 0 0 0 4px var(--accent);--ring-inset: 0 0 0 2px var(--surface), 0 0 0 4px var(--accent);color-scheme:light;--ground: #eceef1;--surface: #ffffff;--surface-2: #f4f5f7;--surface-3: #e9eaee;--surface-elev: #ffffff;--sider: #ffffff;--sider-sub: #f4f5f7;--line: #dcdee3;--line-soft: #eaebef;--ink: #141113;--ink-2: #3d363b;--muted: #6b6169;--faint: #766c73;--accent: #c81f2e;--accent-hover: #a81826;--accent-ink: #ffffff;--accent-text: #c81f2e;--accent-soft: #fdeaec;--accent-line: #f3c3c8;--ok: #1a7f3c;--ok-soft: #e6f4ea;--warn: #8a6206;--warn-soft: #fdf3dd;--bad: #c62f28;--bad-fill: #c62f28;--bad-soft: #fdeae9;--tag-green-bg: #e8f6ec;--tag-green-line: #b5e0c0;--tag-green-ink: #1a7f3c;--tag-red-bg: #fdecea;--tag-red-line: #f5c2bd;--tag-red-ink: #b42318;--tag-orange-bg: #fdf3dd;--tag-orange-line: #f0d9a0;--tag-orange-ink: #8a6206;--tag-gold-ink: #826d04;--switch-off: rgba(0, 0, 0, .25);--tag-purple-bg: #f2ecfd;--tag-purple-line: #d8c8f5;--tag-purple-ink: #6633b8;--tag-cyan-bg: #e6f7f6;--tag-cyan-line: #a8dedb;--tag-cyan-ink: #0b6e6a;--fill-tertiary: rgba(16, 12, 14, .05);--fill-quaternary: rgba(16, 12, 14, .025);--tag-blue-bg: #e8f1fd;--tag-blue-line: #bcd6f7;--tag-blue-ink: #1a5fb4;--tag-geek-bg: #eceffb;--tag-geek-line: #c6cff2;--tag-geek-ink: #2f4bb8;--accent-glow: rgba(200, 31, 46, .35);--accent-ring: rgba(200, 31, 46, .18);--scrim: rgba(24, 20, 22, .42);--scrim-ink: #ffffff;--rail-shadow: rgba(16, 12, 15, .18);--modal-scrim: rgba(24, 20, 22, .5);--auth-wash: #fbe9eb;--auth-blob-1: rgba(200, 31, 46, .16);--auth-blob-2: rgba(160, 26, 42, .12);--auth-blob-3: rgba(242, 64, 79, .1);--auth-blob-4: rgba(120, 18, 30, .1);--auth-blob-5: rgba(200, 31, 46, .08);--auth-grid: rgba(20, 17, 19, .05);--auth-card: rgba(255, 255, 255, .86);--shadow-sm: 0 1px 2px rgba(16, 12, 15, .06);--shadow: 0 1px 3px rgba(16, 12, 15, .08), 0 12px 32px -14px rgba(16, 12, 15, .22)}body.light .auth-shell{--auth-glow: rgba(200, 31, 46, .14)}*{box-sizing:border-box}html{font-size:100%}html,body,#app{height:100%}body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--font);font-size:var(--t-base);line-height:1.5714285714;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{margin:0;line-height:1.3;text-wrap:balance}a{color:var(--accent-text);text-decoration:none}a:hover{color:var(--accent-hover)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}::selection,*::selection{background:var(--accent-line);color:var(--ink)}.mono,code{font-family:var(--mono);font-size:.92em;direction:ltr;unicode-bidi:isolate}.num{font-variant-numeric:tabular-nums}.ltr{direction:ltr;unicode-bidi:isolate;display:inline-block}td.ltr,th.ltr{display:table-cell}.muted{color:var(--muted)}.small{font-size:var(--t-sm)}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.spacer{margin-inline-start:auto}.page-head{display:flex;align-items:flex-start;gap:16px;flex-wrap:wrap;margin-bottom:22px}.page-head h1{font-size:var(--t-xl);font-weight:700;letter-spacing:-.01em}.page-head p{margin:5px 0 0;color:var(--muted);font-size:var(--t-sm);max-width:68ch}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:4px 15px;min-height:32px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--ink);font:inherit;font-size:var(--t-base);font-weight:500;cursor:pointer;white-space:nowrap;transition:background .12s,border-color .12s,color .12s}.btn:hover:not(:disabled){background:var(--surface-3);border-color:var(--faint)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:600}.btn.ghost{background:transparent}.btn.danger{color:var(--bad);border-color:var(--bad-soft);background:transparent}.btn.danger:hover:not(:disabled){background:var(--bad-soft);border-color:var(--bad)}.btn.sm{padding:0 7px;min-height:24px;font-size:var(--t-sm)}.btn.icon{padding:0;width:38px;min-height:38px}.btn.sm.icon{width:24px;min-height:24px}input,select,textarea{width:100%;padding:4px 11px;min-height:32px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--ink);font:inherit;font-size:var(--t-base);transition:border-color .12s,box-shadow .12s}input:hover:not(:disabled),select:hover:not(:disabled){border-color:var(--faint)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}input::placeholder{color:var(--faint)}input:disabled,select:disabled{background:var(--surface);color:var(--faint)}select{cursor:pointer}input[type=checkbox],input[type=radio]{width:16px;height:16px;min-height:0;flex:0 0 auto;padding:0;accent-color:var(--accent);cursor:pointer}option{background:var(--surface-2);color:var(--ink)}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field label{font-size:var(--t-xs);font-weight:600;color:var(--ink-2)}.field label .req{color:var(--accent-text);margin-inline-end:3px}.field .hint{font-size:var(--t-xs);color:var(--muted);line-height:1.5}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.card{background:var(--surface);border:1px solid var(--line-soft);border-radius:var(--radius)}.card-head{padding:14px 18px;border-bottom:1px solid var(--line-soft);display:flex;align-items:center;gap:11px;flex-wrap:wrap}.card-head h2{font-size:var(--t-md);font-weight:600}.modal>.card-head>.act:last-child{margin-inline-start:auto}.card-body{padding:18px}.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:var(--line-soft)}.metric{padding:15px 18px;background:var(--surface);min-width:0}.metric dt{font-size:var(--t-xs);color:var(--muted);margin-bottom:4px;font-weight:500}.metric dd{margin:0;font-size:var(--t-lg);font-weight:600;font-variant-numeric:tabular-nums;color:var(--ink);line-height:1.25;overflow-wrap:anywhere}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:var(--t-sm);min-width:680px}th,td{text-align:start;padding:8px 12px;border-bottom:1px solid var(--line-soft);vertical-align:middle}thead th{background:var(--surface-2);font-size:var(--t-xs);color:var(--muted);font-weight:600;white-space:nowrap;padding-block:11px}tbody tr:last-child td{border-bottom:none}tbody tr{transition:background .1s}.tag{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:5px;font-size:var(--t-xs);font-weight:600;white-space:nowrap;border:1px solid var(--line);background:var(--surface-3);color:var(--ink-2)}.tag.green{background:var(--tag-green-bg);border-color:var(--tag-green-line);color:var(--tag-green-ink)}.tag.red,.tag.expired,.tag.exhausted{background:var(--tag-red-bg);border-color:var(--tag-red-line);color:var(--tag-red-ink)}.tag.orange{background:var(--tag-orange-bg);border-color:var(--tag-orange-line);color:var(--tag-orange-ink)}.tag.purple{background:var(--tag-purple-bg);border-color:var(--tag-purple-line);color:var(--tag-purple-ink)}.tag.blue{background:var(--tag-blue-bg);border-color:var(--tag-blue-line);color:var(--tag-blue-ink)}.tag.geekblue{background:var(--tag-geek-bg);border-color:var(--tag-geek-line);color:var(--tag-geek-ink)}.tag.grey,.tag.disabled{background:var(--surface-3);border-color:var(--line);color:var(--muted)}.tag.active{background:var(--tag-green-bg);border-color:var(--tag-green-line);color:var(--tag-green-ink)}.tag.proto{background:var(--accent-soft);color:var(--accent-hover);border-color:var(--accent-line);font-family:var(--mono)}.tag .dot{width:6px;height:6px;border-radius:50%;background:currentColor}.meter{height:5px;background:var(--surface-3);border-radius:100px;overflow:hidden;min-width:60px}.meter span{display:block;height:100%;background:var(--accent);border-radius:100px;transition:width .3s ease}.meter span.ok{background:var(--ok)}.meter span.warn{background:var(--warn)}.meter span.bad{background:var(--bad)}.banner{display:flex;gap:11px;align-items:flex-start;padding:13px 16px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--surface);font-size:var(--t-sm);margin-bottom:18px;color:var(--ink-2);line-height:1.55}.banner svg{flex-shrink:0;margin-top:2px}.banner.warn{background:var(--warn-soft);border-color:color-mix(in srgb,var(--warn) 40%,transparent);color:var(--ink)}.banner.warn svg{color:var(--warn)}.banner.bad{background:var(--bad-soft);border-color:color-mix(in srgb,var(--bad) 40%,transparent);color:var(--ink)}.banner.bad svg{color:var(--bad)}.toast{position:fixed;inset-block-end:20px;inset-inline-end:20px;z-index:1400;padding:13px 18px;border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--line);box-shadow:var(--shadow);font-size:var(--t-sm);max-width:min(380px,calc(100vw - 40px))}.toast.error{border-color:var(--bad);color:var(--bad)}.toast.success{border-color:var(--ok);color:var(--ok)}.toast.warning{border-color:var(--warn);color:var(--warn)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--modal-scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:24px 16px;z-index:1150}.modal{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);width:100%;max-width:640px;max-height:calc(100dvh - 48px);display:flex;flex-direction:column}.modal>.card-head{flex-shrink:0}.modal>.card-body,.modal>form.card-body{overflow-y:auto;flex:1 1 auto;min-height:0}.modal table{min-width:0}.modal-foot{flex-shrink:0;display:flex;justify-content:flex-end;gap:10px;padding:14px 18px;border-top:1px solid var(--line-soft)}.empty{padding:52px 24px;text-align:center;color:var(--muted);font-size:var(--t-sm)}pre.config{direction:ltr;text-align:left;background:var(--ground);border:1px solid var(--line);border-radius:var(--radius-sm);padding:14px 16px;overflow-x:auto;font-family:var(--mono);font-size:var(--t-xs);line-height:1.75;margin:0;color:var(--ink-2)}.spin{display:inline-block;width:15px;height:15px;border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}.spin.sm{width:14px;height:14px;border-width:2px}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spin{animation-duration:2s}*,*:before,*:after{transition-duration:.01ms!important}}@media(max-width:768px){.main:has(.ov-page),.main:has(.api-docs){padding-top:64px}.main>.banner{margin-top:48px}}@media(max-width:620px){:root{--t-xl: 1.4375rem}.page-head{gap:12px}.page-head .spacer{margin-inline-start:0;width:100%}.page-head .spacer .btn{width:100%}.modal-backdrop{padding:0;align-items:stretch}.modal{max-width:none;max-height:100dvh;height:100dvh;border:none;border-radius:0}.modal-foot{padding-bottom:max(14px,env(safe-area-inset-bottom))}.modal-foot .btn{flex:1}.card-head{padding:12px 14px}.card-body{padding:14px}th,td{padding:11px 14px}.metrics{grid-template-columns:1fr 1fr}.metric{padding:13px 14px}}.card-toolbar{display:flex;align-items:center;gap:8px;padding:12px;border-bottom:1px solid var(--line-soft)}.card-toolbar.spread{justify-content:space-between}.card-toolbar.wrap{flex-wrap:wrap;row-gap:8px}.toolbar-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.w-num{width:100px;white-space:nowrap}.w-egress{width:210px}.w-country{width:160px}.w-traffic{width:200px}.w-latency{width:140px}.w-check{width:80px}th.center,td.center{text-align:center}.rownum{display:flex;align-items:center;gap:6px}.row-index{min-width:18px;font-weight:500;opacity:.7;text-align:right;font-variant-numeric:tabular-nums}.action-buttons{display:flex;align-items:center;justify-content:flex-end;gap:4px;margin-inline-start:auto}.act.round{width:24px;height:24px;border:1px solid var(--line);border-radius:50%;background:var(--surface);color:var(--ink)}.act.round:hover:not(:disabled){border-color:var(--accent);color:var(--accent-text);background:var(--surface)}.act.round.primary{border-color:var(--accent);background:var(--accent);color:#fff}.act.round.primary:hover:not(:disabled){background:var(--accent-hover, var(--accent));color:#fff;filter:brightness(1.1)}.act.round .spin.sm{width:12px;height:12px}.act.round,.act.round.sm{width:24px;height:24px;font-size:14px}.act.round.check-btn{width:32px;height:32px;font-size:16px}.act.round.check-btn:disabled{opacity:.45}.anticon-spin svg{animation:anticon-spin 1s linear infinite}@keyframes anticon-spin{to{transform:rotate(360deg)}}.identity-cell{display:flex;flex-direction:column;gap:4px;min-width:0}.tag-name{display:inline-block;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.protocol-line{display:inline-flex;flex-wrap:wrap;gap:2px}.address-list{display:flex;flex-wrap:wrap;gap:4px}.address-pill{padding:2px 6px;border-radius:4px;background:var(--surface-3);font-size:11px}.egress-header{display:inline-flex;align-items:center;gap:4px}.ip-toggle{display:inline-flex;padding:0;border:0;background:none;color:inherit;cursor:pointer;opacity:.65}.ip-toggle:hover{opacity:1}.egress-stack{display:inline-flex;flex-direction:column;gap:3px}.egress-address{display:inline-flex;align-items:center;gap:4px;min-width:0}.egress-family{color:var(--muted);font-size:10px;text-transform:uppercase}.egress-ip{font-family:var(--mono);font-size:12px}.address-hidden{filter:blur(5px);transition:filter .2s ease}.address-visible{filter:none}.country-pill{display:inline-flex;align-items:center;gap:4px;padding:1px 6px;border:1px solid var(--line);border-radius:4px;line-height:20px;font-size:12px;white-space:nowrap}.traffic{display:inline-flex;gap:4px;font-size:12px}.traffic .up{color:var(--tag-green-ink)}.traffic .down{color:var(--tag-blue-ink)}.save-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:16px;margin-bottom:12px}.save-right{display:flex;justify-content:flex-end;flex:1}.alert{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);font-size:var(--t-base)}.alert.warning{background:var(--warn-soft, rgba(250, 173, 20, .12));border-color:var(--warn-line, rgba(250, 173, 20, .45))}.alert.warning svg{color:var(--warn, #faad14);flex:none}.rowmenu{position:fixed;z-index:40;display:flex;flex-direction:column;gap:1px;min-width:180px;padding:4px;border:1px solid var(--line);border-radius:8px;background:var(--surface-2);box-shadow:var(--shadow)}.rowmenu.below{position:absolute;top:calc(100% + 4px);inset-inline-start:0}.menu-item{display:flex;align-items:center;gap:8px;padding:5px 12px;border:none;border-radius:4px;background:transparent;color:var(--ink-2);font:inherit;font-size:var(--t-base);text-align:start;cursor:pointer;white-space:nowrap}.menu-item:hover:not(:disabled){background:var(--surface-3);color:var(--ink)}.menu-item:disabled{opacity:.4;cursor:not-allowed}.menu-item.danger{color:var(--bad)}.menu-item.danger:hover:not(:disabled){background:var(--bad-soft)}.seg{display:inline-flex;border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden}.seg-btn{padding:8px 16px;border:0;border-inline-end:1px solid var(--line);background:var(--surface-2);color:var(--ink-2);font:inherit;font-size:var(--t-sm);cursor:pointer;transition:background-color .14s var(--ease),color .14s var(--ease)}.seg-btn:last-child{border-inline-end:0}.seg-btn:hover:not(.on){background:var(--surface-3)}.seg-btn.on{background:var(--accent);color:var(--accent-ink)}.seg.sm .seg-btn{padding:3px 10px;font-size:var(--t-xs)}tr.off td{opacity:.55}.empty-row td{padding:0;border-bottom:0}.card-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:36px 16px 40px;color:var(--muted);font-size:var(--t-base)}.card-empty svg{color:var(--faint)}.btn.ctl.on{border-color:var(--accent-line, var(--accent));background:var(--accent-soft)}.btn.danger-ghost{border-color:var(--accent-line, var(--accent));background:none;color:var(--accent-text)}.btn.danger-ghost:hover:not(:disabled){background:var(--accent-soft)}.setting-meta{display:flex;flex-direction:column;gap:4px;flex:1 1 50%;min-width:0}.setting-title{display:flex;align-items:center;gap:8px;font-size:var(--t-base);font-weight:500;color:var(--ink)}.setting-desc{margin:0;font-size:var(--t-sm);color:var(--faint);line-height:1.55}.unit-field{display:flex;align-items:center;gap:8px}.unit-field input{min-width:120px}.unit{color:var(--faint);font-size:var(--t-sm);font-family:var(--mono);white-space:nowrap}code.readonly{display:inline-block;padding:6px 10px;border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--line);color:var(--ink-2);font-family:var(--mono);font-size:var(--t-sm);overflow-wrap:anywhere}.kv{display:grid;grid-template-columns:auto auto;gap:4px 16px;margin:0;font-size:var(--t-sm);justify-content:end}.kv dt{color:var(--faint)}.kv dd{margin:0;color:var(--ink);font-family:var(--mono);text-align:end}.banner.stack{display:block}.banner-head{display:flex;align-items:center;gap:8px;margin-bottom:6px}.banner.stack ul{margin:0;padding-inline-start:26px}.banner.stack li{margin:2px 0}@media(max-width:768px){.kv{justify-content:start}.kv dd{text-align:start}}.check,.switch{display:inline-flex;align-items:center;gap:8px;font-size:var(--t-sm);color:var(--ink-2);cursor:pointer}.check input,.switch input{accent-color:var(--accent);width:16px;height:16px;cursor:pointer}.backup-list{list-style:none;margin:0;padding:0;width:100%;display:flex;flex-direction:column;gap:6px}.backup-list li{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);font-size:var(--t-sm)}.backup-name{flex:1 1 16em;min-width:0;font-family:var(--mono);overflow-wrap:anywhere}.backup-size{color:var(--faint);font-family:var(--mono);white-space:nowrap}.linkbtn{border:none;background:transparent;color:var(--accent-hover);font:inherit;cursor:pointer;padding:0;white-space:nowrap}.linkbtn:hover{text-decoration:underline}.linkbtn.danger{color:var(--faint)}.linkbtn.danger:hover{color:var(--accent-hover)}@media(max-width:768px){.backup-list li{flex-wrap:wrap}}.addr-list{display:flex;flex-wrap:wrap;gap:5px}.empty-state{display:flex;flex-direction:column;align-items:center;gap:8px;padding:44px 24px;text-align:center}.empty-state svg{color:var(--ok, #4ade80)}.empty-state p{margin:0}.banner.info{border-color:var(--line);background:var(--surface-2);color:var(--ink-2)}.banner.info p{margin:0}.cell-link{color:var(--ink);font-weight:500}.cell-link:hover{color:var(--accent-hover)}.log-view{width:100%;max-height:460px;overflow:auto;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--ground)}.log-lines{list-style:none;margin:0;padding:6px 0;font-family:var(--mono);font-size:var(--t-xs);line-height:1.65}.log-lines li{display:grid;grid-template-columns:auto 44px 1fr;gap:2px 10px;padding:3px 12px;border-inline-start:2px solid transparent}.log-msg,.log-fields{grid-column:3;min-width:0}.log-lines li:hover{background:var(--surface-2)}.log-time{color:var(--faint);white-space:nowrap}.log-level{color:var(--faint)}.log-fields{color:var(--faint);overflow-wrap:anywhere}.log-view .muted{padding:18px;margin:0}.code-input{letter-spacing:.4em;font-family:var(--mono);text-align:center}th.right,td.right{text-align:end}td.right .actions{justify-content:flex-end}.ov-customers{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:18px}.ov-cust{display:flex;flex-direction:column;gap:6px;padding:14px 16px;transition:border-color .14s,background .14s}.ov-cust:hover{border-color:var(--accent-line);background:var(--surface-2)}.ov-cust-label{display:flex;align-items:center;gap:7px;font-size:var(--t-sm);color:var(--faint);white-space:nowrap}.ov-cust-value{font-size:var(--t-xl);font-weight:700;line-height:1;color:var(--ink)}.ov-cust.quiet .ov-cust-value{color:var(--faint)}.ov-cust.urgent{border-color:var(--accent-line)}.ov-cust.urgent .ov-cust-value{color:var(--accent-hover)}.ov-cust-label .dot.ok{background:var(--ok, #4ade80)}.ov-cust-label .dot.warn{background:var(--warn, #d99e2b)}.ov-cust-label .dot.bad{background:var(--accent)}.api-intro{padding:16px 18px;margin-bottom:12px}.api-intro-head{display:flex;align-items:center;gap:8px;margin-bottom:6px;color:var(--ink)}.api-intro p{margin:0 0 10px;color:var(--faint);font-size:var(--t-sm);line-height:1.6}.api-search{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;margin-bottom:12px}.api-search .control{display:flex;align-items:center;gap:8px;flex:1 1 auto;color:var(--faint)}.api-search input{border:none;background:transparent;width:100%;color:var(--ink);font:inherit}.api-search input:focus{outline:none}.api-group{padding:0;margin-bottom:10px;overflow:hidden}.api-group-head{display:flex;align-items:center;gap:10px;width:100%;padding:13px 16px;border:none;background:transparent;color:var(--ink);font:inherit;font-weight:600;cursor:pointer;text-align:start}.api-group-head:hover{background:var(--surface-2)}.api-group-head svg{transition:transform .15s;flex-shrink:0}.api-group-head svg.turned{transform:rotate(-90deg)}[dir=rtl] .api-group-head svg.turned{transform:rotate(90deg)}.api-group-name{flex:1 1 auto}.api-routes{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.api-route{padding:14px 16px;border-bottom:1px solid var(--line-soft)}.api-route:last-child{border-bottom:0}.api-route-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:6px}.api-path{font-family:var(--mono);font-size:var(--t-sm);color:var(--ink);overflow-wrap:anywhere}.api-summary{margin:0;color:var(--ink-2);font-size:var(--t-sm);line-height:1.6}.api-note{display:flex;align-items:flex-start;gap:7px;margin:7px 0 0;color:var(--faint);font-size:var(--t-xs);line-height:1.6}.api-note svg{flex-shrink:0;margin-top:2px}.api-code{margin:9px 0 0;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--ground);color:var(--ink-2);font-family:var(--mono);font-size:var(--t-xs);line-height:1.6;display:block;max-width:100%;overflow-x:auto;white-space:pre}.error-state{display:flex;flex-direction:column;align-items:center;gap:10px;padding:46px 26px;text-align:center}.error-mark{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--accent-soft);color:var(--accent-hover);margin-bottom:2px}.error-state h2{margin:0;font-size:var(--t-lg)}.error-detail{margin:0;max-width:52ch;color:var(--faint);font-size:var(--t-sm);line-height:1.6;overflow-wrap:anywhere}.error-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:6px}body.light .tag.red{background:#fdecea;border-color:#f5c2bd;color:#b42318}body.light .tag.purple{background:#f2ecfd;border-color:#d8c8f5;color:#6633b8}body.light .tag.geekblue{background:#eceffb;border-color:#c6cff2;color:#2f4bb8}body.light .log-view{background:var(--surface-2)}.w-gcount{width:180px}.w-gsize{width:140px}.w-gtraffic{width:160px}.menu-divider{height:1px;margin:4px 6px;border:0;background:var(--line)}.picklist{list-style:none;margin:0;padding:0;max-height:46vh;overflow-y:auto;border:1px solid var(--line);border-radius:var(--radius-sm)}.picklist li+li{border-top:1px solid var(--line-soft)}.pick{display:flex;align-items:center;gap:10px;padding:9px 12px;cursor:pointer}.pick:hover{background:var(--surface-2)}.pick-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:var(--line-soft);margin-bottom:16px;overflow:hidden}.strip-item{background:var(--surface);border:none;padding:13px 16px;text-align:start;font:inherit;color:inherit;display:flex;flex-direction:column;gap:4px;min-width:0}button.strip-item{cursor:pointer}button.strip-item:hover{background:var(--surface-2)}.strip-label{display:flex;align-items:center;gap:6px;font-size:var(--t-xs);color:var(--muted)}.strip-value{font-size:var(--t-lg);font-weight:600;line-height:1.15;overflow-wrap:anywhere}.strip-value.small{font-size:var(--t-base)}.modal.confirm{max-width:460px}.confirm-body{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;padding:26px 24px 20px}.confirm-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--surface-3);color:var(--muted)}.confirm-mark.danger{background:var(--bad-soft);color:var(--bad)}.confirm-body h2{margin:0;font-size:var(--t-md)}.confirm-text{margin:0;color:var(--ink-2);font-size:var(--t-sm);line-height:1.6}.confirm-subject{margin:2px 0 0}.confirm-list{margin:4px 0 0;padding:0;list-style:none;text-align:start;width:100%;display:flex;flex-direction:column;gap:7px}.confirm-list li{position:relative;padding-inline-start:18px;color:var(--faint);font-size:var(--t-xs);line-height:1.55}.confirm-list li:before{content:"";position:absolute;inset-inline-start:5px;top:8px;width:4px;height:4px;border-radius:50%;background:var(--faint)}.confirm-type{width:100%;margin-top:6px;text-align:start}.confirm-type label{font-size:var(--t-xs)}.field-error{display:block;margin-top:5px;color:var(--bad);font-size:var(--t-xs);line-height:1.5}input.bad,select.bad,textarea.bad{border-color:var(--bad)}input.bad:focus,select.bad:focus,textarea.bad:focus{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--bad) 18%,transparent)}.ov-actions{gap:6px;flex-wrap:wrap}@media(max-width:900px){.ov-actions .lbl{display:none}}.modal.cf-modal{max-width:720px}.modal.cf-modal>.card-body{max-height:calc(100vh - 200px)}.modal.wide{max-width:900px;width:92vw}.logmodal{width:min(980px,96vw)}.log-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 16px;border-bottom:1px solid var(--line);background:var(--surface-2)}.log-toolbar select{width:auto;flex:0 0 auto;height:30px;min-height:30px;padding:0 26px 0 8px;font-size:var(--t-xs)}.log-toolbar select[aria-label]{max-width:150px}.log-search{display:flex;align-items:center;gap:6px;flex:1 1 200px;min-width:150px;height:30px;padding:0 8px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--muted)}.log-search input{flex:1;min-width:0;height:100%;border:0;padding:0;background:none;color:var(--ink);font-size:var(--t-xs)}.log-search input:focus{outline:none}.log-follow{display:flex;align-items:center;gap:6px;font-size:var(--t-xs);color:var(--ink-2);white-space:nowrap;cursor:pointer}.log-body{max-height:60vh;overflow-y:auto;padding:0}.log-notice{margin:0;padding:10px 16px;font-size:var(--t-xs);color:var(--warn);background:var(--warn-soft);border-bottom:1px solid var(--line-soft)}.log-body .muted{padding:24px 16px;margin:0}.ltr-block{direction:ltr;text-align:left;unicode-bidi:isolate}.loglist{list-style:none;margin:0;padding:0;font-family:var(--mono);font-size:var(--t-xs);line-height:1.65}.loglist li{display:grid;grid-template-columns:auto 58px 1fr;gap:10px;padding:5px 16px;border-bottom:1px solid var(--line-soft);overflow-wrap:anywhere}.loglist li:last-child{border-bottom:0}.loglist li:hover{background:var(--surface-2)}.log-time{color:var(--faint);white-space:nowrap;font-variant-numeric:tabular-nums}.log-level{font-size:10px;font-weight:700;letter-spacing:.04em;text-align:center;align-self:start;padding:1px 0;border-radius:var(--radius-sm);color:var(--muted);background:var(--surface-3, var(--surface-2))}.log-text{min-width:0}.log-msg{color:var(--ink)}.log-field{display:inline-block;margin-inline-start:10px;color:var(--faint)}.log-field b{font-weight:600;color:var(--muted)}@media(max-width:640px){.loglist li{grid-template-columns:auto 1fr;gap:4px 8px;padding:8px 12px}.log-level{justify-self:start;padding:1px 6px}.log-text{grid-column:1 / -1}.log-field{margin-inline-start:0;margin-inline-end:10px}}.modal-backdrop{animation:scrim-in .16s ease both}.modal-backdrop>.modal{animation:modal-in .18s cubic-bezier(.2,.7,.3,1) both}@keyframes scrim-in{0%{opacity:0}}@keyframes modal-in{0%{opacity:0;transform:translateY(6px) scale(.985)}}.toast{animation:toast-in .2s cubic-bezier(.2,.7,.3,1) both}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)}}.table-wrap tbody tr{animation:row-in .14s ease both}@keyframes row-in{0%{opacity:0}}.btn:active:not(:disabled),.act:active:not(:disabled){transform:scale(.97)}.btn,.act,.strip-item,.tag{transition:background-color .14s ease,border-color .14s ease,color .14s ease,transform .08s ease}.meter span{transition:width .4s cubic-bezier(.3,.8,.4,1)}@media(prefers-reduced-motion:reduce){.modal-backdrop,.modal-backdrop>.modal,.toast,.table-wrap tbody tr{animation:none!important}.btn:active:not(:disabled),.act:active:not(:disabled){transform:none}.meter span{transition:none}}.empty-cta{display:flex;flex-direction:column;align-items:center;gap:9px;padding:44px 24px;text-align:center}.empty-cta p{margin:0;max-width:46ch}.empty-cta .btn{margin-top:4px}.navbar-progress{position:fixed;top:0;inset-inline:0;height:2px;z-index:1300;background:linear-gradient(90deg,transparent,var(--accent) 40%,var(--accent-hover) 60%,transparent);background-size:45% 100%;background-repeat:no-repeat;animation:nav-sweep .9s ease-in-out infinite}@keyframes nav-sweep{0%{background-position:-45% 0}to{background-position:145% 0}}@media(prefers-reduced-motion:reduce){.navbar-progress{animation:none;background:var(--accent);opacity:.7}}.toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 16px;border-bottom:1px solid var(--line-soft)}.toolbar:last-child{border-bottom:0}.toolbar .spacer{flex:1}.stat-value{font-size:1.25rem;font-weight:650;color:var(--ink)}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--line);margin-bottom:16px;flex-wrap:wrap}.tab{display:inline-flex;align-items:center;gap:7px;padding:10px 14px;border:0;background:none;color:var(--muted);font:inherit;font-size:var(--t-sm);font-weight:550;cursor:pointer;white-space:nowrap;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .14s ease,border-color .14s ease}.tab:hover{color:var(--ink-2)}.tab.on{color:var(--accent-text);border-bottom-color:var(--accent)}.tab svg{opacity:.85}.segmented{display:inline-flex;border:1px solid var(--line);border-radius:var(--radius-sm);overflow:hidden}.segmented button{padding:6px 12px;border:0;background:var(--surface-2);color:var(--muted);font:inherit;font-size:var(--t-xs);font-weight:600;cursor:pointer;transition:background .14s ease,color .14s ease}.segmented button+button{border-inline-start:1px solid var(--line)}.segmented button:hover{color:var(--ink-2)}.segmented button.on{background:var(--accent);color:var(--accent-ink)}.notice{margin:0;padding:10px 14px;border-radius:var(--radius-sm);background:var(--warn-soft);border:1px solid color-mix(in srgb,var(--warn) 30%,transparent);color:var(--ink-2);font-size:var(--t-sm)}.notice.info{background:var(--surface-2);border-color:var(--line);color:var(--muted)}.row-control{min-width:0}.taginput{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);padding:6px;cursor:text;transition:border-color .14s ease}.taginput:focus-within{border-color:var(--accent-line)}.taginput .chips{display:flex;flex-wrap:wrap;gap:5px;align-items:center}.chip{display:inline-flex;align-items:center;gap:5px;padding-block:3px;padding-inline:9px 4px;border-radius:5px;background:var(--surface-3);border:1px solid var(--line);font-size:var(--t-xs);color:var(--ink-2);max-width:100%}.chip-x{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border:0;border-radius:4px;background:none;color:var(--muted);cursor:pointer;flex:none}.chip-x:hover{background:var(--bad-soft);color:var(--bad)}.chip-input{flex:1;min-width:120px;border:0;background:none;color:var(--ink);font:inherit;font-size:var(--t-sm);padding:3px 4px;outline:none}.suggestions{display:flex;flex-wrap:wrap;gap:5px;align-items:center;margin-top:7px;padding-top:7px;border-top:1px dashed var(--line-soft)}.chip.ghost{background:none;border-style:dashed;color:var(--muted);cursor:pointer;padding-inline:9px}.chip.ghost:hover{color:var(--accent-text);border-color:var(--accent-line);background:var(--accent-soft)}.tester-row{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.tester-row input,.tester-row select{flex:1;min-width:110px}.tester-row input.narrow{flex:0 0 100px;min-width:80px}.tester-row .btn{flex:none}.answer{margin-top:14px;padding:14px;border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--line)}.answer-head{display:flex;align-items:center;gap:10px;margin-bottom:8px;flex-wrap:wrap}.tag.lg{font-size:var(--t-sm);padding:5px 12px}.steps{margin:10px 0 0;padding-inline-start:18px;color:var(--muted);font-size:var(--t-xs)}.steps li+li{margin-top:3px}.engine-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.engine-card.inert{border-color:color-mix(in srgb,var(--bad) 28%,var(--line))}pre.code{display:block;width:100%;max-width:100%;min-width:0;margin:0;padding:14px 16px;overflow-x:auto;background:var(--ground);border-top:1px solid var(--line);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;line-height:1.55;color:var(--ink-2);max-height:62vh}pre.code code{background:none;padding:0;font:inherit;color:inherit}@media(prefers-reduced-motion:reduce){.tab,.segmented button,.taginput{transition:none}}.warnings{margin-bottom:18px;border:1px solid color-mix(in srgb,var(--bad) 32%,var(--line));border-radius:var(--radius);background:var(--surface);overflow:hidden}.warnings-head{display:flex;align-items:center;gap:9px;padding:11px 16px;background:var(--bad-soft);border-bottom:1px solid color-mix(in srgb,var(--bad) 24%,var(--line));color:var(--bad)}.warnings-head h2{margin:0;font-size:var(--t-sm);font-weight:650;color:var(--ink)}.warnings-head .tag{margin-inline-start:auto}.warning-list{list-style:none;margin:0;padding:0}.warning-list li{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:start;padding:13px 16px}.warning-list li+li{border-top:1px solid var(--line-soft)}.warning-mark{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;flex:none;background:var(--warn-soft);color:var(--warn)}.warning-list li.high .warning-mark{background:var(--bad-soft);color:var(--bad)}.warning-body{min-width:0}.warning-body strong{display:block;font-size:var(--t-sm);color:var(--ink);margin-bottom:3px}.warning-body p{margin:0;font-size:var(--t-xs);line-height:1.5}.warning-body .fix{margin-top:5px;color:var(--ink-2)}.btn.sm{flex:none;white-space:nowrap}@media(max-width:640px){.warning-list li{grid-template-columns:auto 1fr}.warning-list li .btn{grid-column:2;justify-self:start;margin-top:4px}}.actions{display:flex;align-items:center;gap:2px;flex-wrap:nowrap}.act{display:grid;place-items:center;width:30px;height:30px;flex:none;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--muted);cursor:pointer;transition:background .12s,color .12s}.act:hover:not(:disabled){background:var(--surface-3);color:var(--ink)}.act:disabled{opacity:.35;cursor:not-allowed}.w-gact{width:104px}@media(prefers-reduced-motion:reduce){.act{transition:none}}:is(a,button,input,select,textarea,summary,[tabindex]):focus-visible,.toggle:focus-within .track{outline:none;box-shadow:var(--ring)}.card :is(input,select,textarea):focus-visible,.modal :is(input,select,textarea,.btn):focus-visible{box-shadow:var(--ring-inset)}.card{box-shadow:var(--elev-1)}.modal{box-shadow:var(--elev-3)}.btn{box-shadow:var(--elev-1);transition:background var(--t-quick) linear,border-color var(--t-quick) linear,color var(--t-quick) linear,transform .06s var(--ease)}.btn:hover:not(:disabled){background:var(--surface-3);border-color:color-mix(in srgb,var(--line) 60%,var(--ink) 12%)}.btn.primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.btn:active:not(:disabled){transform:translateY(1px);box-shadow:none}.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.act{transition:background var(--t-quick) linear,color var(--t-quick) linear}.act:hover:not(:disabled){background:var(--surface-3);color:var(--ink);box-shadow:var(--edge)}.act.danger:hover:not(:disabled){background:var(--bad-soft);color:var(--bad)}.act:active:not(:disabled){transform:translateY(1px)}.tag{box-shadow:var(--edge);letter-spacing:.01em;font-variant-numeric:tabular-nums}.meter{box-shadow:inset 0 1px 2px #00000059;height:6px}:root.light .meter,body.light .meter{box-shadow:inset 0 1px 2px #100c0e1a}.meter span{min-width:3px;box-shadow:0 0 8px -2px currentColor;transition:width .4s var(--ease-soft),background-color var(--t-quick) linear}@media(prefers-reduced-motion:reduce){.sidebar,.main,.btn,.act,.meter span{transition:none}.btn:active:not(:disabled),.act:active:not(:disabled){transform:none}}button.strip-item{cursor:pointer;position:relative;transition:background var(--t-quick) linear,color var(--t-quick) linear}button.strip-item:hover:not(.on){background:var(--surface-2)}button.strip-item.on{background:var(--accent-soft);box-shadow:inset 0 2px 0 var(--accent)}button.strip-item.on .strip-label{color:var(--accent-hover)}button.strip-item.on .strip-value{color:var(--ink)}button.strip-item.on .dot{opacity:1}.strip-value{font-variant-numeric:tabular-nums}thead th{position:sticky;top:0;z-index:3;background:var(--surface-2);box-shadow:inset 0 -1px 0 var(--line)}tbody tr{transition:background var(--t-quick) linear}tbody tr:hover{background:var(--surface-2)}tbody tr.picked{background:var(--accent-soft);box-shadow:inset 2px 0 0 var(--accent)}[dir=rtl] tbody tr.picked{box-shadow:inset -2px 0 0 var(--accent)}tbody tr.picked:hover{background:color-mix(in srgb,var(--accent-soft) 70%,var(--surface-2))}.table-wrap.stale{opacity:.55;pointer-events:none;transition:opacity var(--t-move) var(--ease)}table.skeleton td{padding:13px 18px;border-bottom:1px solid var(--line-soft)}.sk{display:block;height:11px;border-radius:4px;background:linear-gradient(90deg,var(--surface-2) 0%,var(--surface-3) 50%,var(--surface-2) 100%);background-size:200% 100%;animation:sk-sweep 1.4s ease-in-out infinite}table.skeleton tr:nth-child(2n) .sk{animation-delay:.12s}table.skeleton tr:nth-child(3n) .sk{animation-delay:.24s}table.skeleton td:nth-child(1) .sk{width:30%}table.skeleton td:nth-child(4) .sk{width:72%}table.skeleton td:nth-child(5) .sk{width:48%}table.skeleton td:nth-child(9) .sk{width:55%}@keyframes sk-sweep{0%{background-position:200% 0}to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.sk{animation:none;background:var(--surface-2)}.table-wrap.stale,tbody tr,button.strip-item{transition:none}}.sk-lg{height:22px;margin-block:4px}.sk-block{display:flex;flex-direction:column;gap:10px;padding:18px}.sk-block .sk{width:100%}.sk-rows{padding:6px 18px}.sk-row{display:flex;align-items:center;gap:20px;padding:16px 0;border-bottom:1px solid var(--line-soft)}.sk-row:last-child{border-bottom:0}.sk-row-meta{display:flex;flex:1;min-width:0;flex-direction:column;gap:9px}.sk-row-control{width:120px;flex:none}.sk-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:18px}.sk-block .sk:nth-child(2n),.sk-row:nth-child(2n) .sk{animation-delay:.12s}.sk-block .sk:nth-child(3n),.sk-row:nth-child(3n) .sk{animation-delay:.24s}.sk-tall{height:180px;margin-top:12px}.ov-tile .sk,.ov-wide .sk{margin-bottom:8px}.step{display:inline-grid;place-items:center;min-width:22px;height:22px;padding-inline:5px;border-radius:6px;background:var(--surface-3);border:1px solid var(--line);box-shadow:var(--edge);color:var(--ink-2);font-family:var(--mono);font-size:var(--t-xs);font-weight:600;font-variant-numeric:tabular-nums}tbody tr.off td:not(.w-gact){opacity:.5}tbody tr.decided{background:var(--accent-soft);box-shadow:inset 2px 0 0 var(--accent)}[dir=rtl] tbody tr.decided{box-shadow:inset -2px 0 0 var(--accent)}tbody tr.decided .step{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.upload-btn{position:relative;overflow:hidden;cursor:pointer}.upload-btn input[type=file]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.upload-btn input[type=file]:disabled{cursor:not-allowed}.bk-body{display:flex;flex-direction:column;gap:4px}.bk-item{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--line-soft)}.bk-item:last-of-type{border-bottom:0}.bk-meta{flex:1;min-width:0}.bk-title{font-size:var(--t-sm);font-weight:600;color:var(--ink)}.bk-desc{margin:3px 0 0;font-size:var(--t-xs);color:var(--muted);line-height:1.5;overflow-wrap:anywhere}.bk-item .btn{flex:0 0 auto}.bk-all{display:inline-block;margin-bottom:12px;color:var(--accent-text);font-size:var(--t-sm)}.bk-all:hover{text-decoration:underline}.bk-keep{display:flex;align-items:flex-start;gap:10px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);cursor:pointer}.bk-keep b{display:block;font-size:var(--t-sm);font-weight:600;color:var(--ink)}.bk-keep .bk-desc{display:block}.bk-done,.bk-error,.bk-warn{margin:0 0 8px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--surface-2);font-size:var(--t-xs);line-height:1.5;overflow-wrap:anywhere}.bk-done{color:var(--ok, var(--ink-2))}.bk-error{color:var(--bad)}.bk-warn{color:var(--warn)}.bk-file{display:flex;align-items:center;gap:8px;margin-bottom:10px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);font-size:var(--t-sm)}.bk-file-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--mono)}.upload-btn.disabled{opacity:.5;pointer-events:none}.ov-version{font-family:var(--mono);font-size:var(--t-xs);color:var(--faint);white-space:nowrap}.hs-ranges{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:10px 16px;border-bottom:1px solid var(--line);background:var(--surface-2)}.hs-range{padding:4px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--muted);font-family:var(--mono);font-size:var(--t-xs);cursor:pointer}.hs-range:hover{color:var(--ink)}.hs-range.on{border-color:var(--accent);color:var(--accent-text)}.hs-note{font-size:var(--t-xs);color:var(--faint)}.hs-body{max-height:66vh;overflow-y:auto}.hsmodal{width:min(1200px,96vw)}.hs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}.hs-chart{padding:12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);min-width:0}.hs-chart-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:6px}.hs-legend{display:flex;gap:10px;flex-wrap:wrap}.hs-legend-item{display:inline-flex;align-items:center;gap:4px;font-size:var(--t-xs);color:var(--muted);white-space:nowrap}.hs-swatch{width:8px;height:8px;border-radius:2px}.hs-chart-foot{display:flex;justify-content:space-between;gap:8px;margin-top:6px;font-size:var(--t-xs);color:var(--faint);font-variant-numeric:tabular-nums}.hs-peak{color:var(--muted)}.srv-list{display:flex;flex-direction:column;gap:2px;max-height:240px;overflow-y:auto;padding:6px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2)}.srv-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:var(--radius-sm);cursor:pointer}.srv-item:hover{background:var(--surface)}.srv-item input{width:auto;min-height:0;margin:0}.srv-name{font-weight:600;color:var(--ink)}.srv-meta{margin-inline-start:auto;font-size:var(--t-xs);color:var(--faint)}.warn-text{color:var(--warn)}.row.gap{display:flex;align-items:center;gap:8px}.row.gap input{flex:1;min-width:0}.flip{transform:rotate(180deg)}textarea.mono{font-family:var(--mono);font-size:var(--t-xs);line-height:1.5;white-space:pre;overflow-x:auto}button.ov-version{position:relative;border:0;background:none;padding:0 2px;cursor:pointer}button.ov-version:hover{color:var(--ink-2)}.ov-update{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border:1px solid color-mix(in srgb,var(--warn) 35%,transparent);border-radius:6px;background:color-mix(in srgb,var(--warn) 12%,transparent);color:var(--warn);font:inherit;font-size:var(--t-sm, 13px);white-space:nowrap;cursor:pointer;transition:background .2s,border-color .2s}.ov-update:hover{background:color-mix(in srgb,var(--warn) 20%,transparent);border-color:var(--warn)}.ov-update:focus-visible{outline:2px solid var(--warn);outline-offset:2px}.ov-update .anticon{font-size:14px}.update-progress{margin-top:12px}.update-bar{position:relative;height:6px;overflow:hidden;border-radius:3px;background:var(--surface-2)}.update-bar>i{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width .3s}.update-bar.busy>i{width:40%!important;animation:update-slide 1.2s ease-in-out infinite}@keyframes update-slide{0%{transform:translate(-100%)}to{transform:translate(250%)}}@media(prefers-reduced-motion:reduce){.update-bar.busy>i{width:100%!important;animation:none;opacity:.6}}.update-progress .muted{margin-top:8px}.update-error{margin-top:8px;font-family:var(--mono);font-size:var(--t-xs);color:var(--bad);word-break:break-word}.update-cmd{display:flex;align-items:center;gap:8px;margin-top:8px;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2)}.update-cmd code{flex:1;min-width:0;overflow-x:auto;white-space:nowrap;font-family:var(--mono);font-size:var(--t-xs)}.update-notes{max-height:220px;overflow:auto;margin:10px 0 0;padding:10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);font-family:var(--mono);font-size:var(--t-xs);line-height:1.6;white-space:pre-wrap}@keyframes rise-in{0%{opacity:0;transform:translateY(10px)}}.table-wrap tbody tr{animation:row-in .2s var(--ease-soft) both}.table-wrap tbody tr:nth-child(2){animation-delay:14ms}.table-wrap tbody tr:nth-child(3){animation-delay:28ms}.table-wrap tbody tr:nth-child(4){animation-delay:42ms}.table-wrap tbody tr:nth-child(5){animation-delay:56ms}.table-wrap tbody tr:nth-child(6){animation-delay:70ms}.table-wrap tbody tr:nth-child(7){animation-delay:84ms}.table-wrap tbody tr:nth-child(8){animation-delay:98ms}.table-wrap tbody tr:nth-child(9){animation-delay:112ms}.table-wrap tbody tr:nth-child(10){animation-delay:126ms}.table-wrap tbody tr:nth-child(11){animation-delay:.14s}.table-wrap tbody tr:nth-child(n+12){animation-delay:154ms}a.card,button.card,.ccard{transition:box-shadow .18s var(--ease),transform .18s var(--ease),border-color .18s var(--ease)}a.card:hover,button.card:hover,.ccard:hover{box-shadow:var(--elev-2);transform:translateY(-2px);border-color:color-mix(in srgb,var(--line) 55%,var(--accent) 22%)}.table-wrap tbody tr{transition:background-color .14s var(--ease)}@keyframes sider-in{0%{opacity:0;transform:translate(-10px)}}[dir=rtl] .sidebar{animation-name:sider-in-rtl}@keyframes sider-in-rtl{0%{opacity:0;transform:translate(10px)}}@media(prefers-reduced-motion:reduce){.main>*,.main .card,.table-wrap tbody tr,.sidebar{animation:none}a.card:hover,button.card:hover,.ccard:hover{transform:none}}.hform{display:flex;flex-direction:column}.hrow{display:grid;grid-template-columns:33.333% 58.333%;align-items:start;margin-bottom:24px}.hrow>label{padding-inline-end:8px;padding-top:5px;text-align:end;font-size:var(--t-base);color:var(--ink);line-height:22px}.hrow>label.req:before{content:"* ";color:var(--bad)}.hctl{min-width:0}.hctl>input,.hctl>select,.hctl>textarea,.compact>input{width:100%}.hctl>select,.hctl>input,.compact>input,.compact>.btn{height:32px;min-height:32px}.compact{display:flex;align-items:stretch}.compact>input{flex:1;min-width:0}.compact>.btn:not(:first-child),.compact>input:not(:first-child){margin-inline-start:-1px;border-start-start-radius:0;border-end-start-radius:0}.compact>input:not(:last-child),.compact>.btn:not(:last-child){border-start-end-radius:0;border-end-end-radius:0}.btn.addon{width:32px;padding:0;flex:none}@media(max-width:640px){.hrow{grid-template-columns:1fr}.hrow>label{text-align:start;padding-top:0;margin-bottom:4px}}.ov-kicker{font-size:var(--t-xs);font-weight:600;color:var(--muted);letter-spacing:.02em}.antpage{display:flex;flex-direction:column;gap:12px;font-size:14px;line-height:1.5714285714285714}.acard{background:var(--surface);border:1px solid var(--line-soft);border-radius:8px;transition:box-shadow .2s,border-color .2s}.acard:hover{box-shadow:var(--shadow);border-color:transparent}.acard-head{display:flex;align-items:center;min-height:56px;padding:0 24px;border-bottom:1px solid var(--line-soft)}.acard-body{padding:24px}.acard.small .acard-body{padding:12px}.arow{display:flex;flex-wrap:wrap;margin:-6px -8px}.acol{flex:0 0 33.3333%;max-width:33.3333%;padding:6px 8px;box-sizing:border-box}@media(max-width:767px){.acol{flex:0 0 50%;max-width:50%}.acol:last-child{flex:0 0 100%;max-width:100%}}.stat-title{margin-bottom:4px;font-size:11px;color:var(--muted)}.stat-content{display:flex;align-items:center;font-size:17px;color:var(--ink)}.stat-prefix{display:inline-block;margin-inline-end:4px}.aspace{display:inline-flex;flex-wrap:wrap;align-items:center;gap:8px}.abtn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:32px;padding:4px 15px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink);font:inherit;font-size:14px;line-height:22px;font-weight:400;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s cubic-bezier(.645,.045,.355,1)}.abtn:hover{color:var(--accent-hover);border-color:var(--accent-hover)}.abtn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);box-shadow:0 2px 0 var(--accent-ring, rgba(0, 0, 0, .04))}.abtn.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--accent-ink)}.abtn.danger{border-color:var(--bad);color:var(--bad)}.abtn.danger:hover{border-color:var(--bad);color:var(--bad);opacity:.8}.abtn.text{border-color:transparent;background:transparent;box-shadow:none;color:var(--ink)}.abtn.text:hover{background:var(--surface-3);color:var(--ink)}.abtn.sm{height:24px;padding:0 7px;border-radius:4px;font-size:16px}.ainput{display:inline-flex;align-items:center;width:200px;height:32px;padding:4px 11px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink);transition:all .2s}.ainput:hover,.ainput:focus-within{border-color:var(--accent-hover)}.ainput:focus-within{box-shadow:0 0 0 2px var(--accent-ring)}.ainput-prefix{display:flex;margin-inline-end:4px;color:var(--ink)}.ainput input{flex:1;min-width:0;height:22px;padding:0;border:0;background:none;color:var(--ink);font:inherit;font-size:14px;line-height:22px}.ainput input:focus{outline:none;box-shadow:none}.ainput input::placeholder{color:var(--faint)}.ainput-clear{display:flex;margin-inline-start:4px;padding:0;border:0;background:none;color:var(--faint);font-size:12px;cursor:pointer}.ainput-clear:hover{color:var(--muted)}.atag{display:inline-block;height:auto;margin-inline-end:8px;padding-inline:7px;border:1px solid var(--line);border-radius:4px;background:var(--surface-3);color:var(--ink);font-size:12px;line-height:20px;white-space:nowrap;box-sizing:border-box;font-variant-numeric:tabular-nums}.atag .anticon{font-size:12px}.atag.green{background:var(--tag-green-bg);border-color:var(--tag-green-line);color:var(--tag-green-ink)}.atag.red{background:var(--tag-red-bg);border-color:var(--tag-red-line);color:var(--tag-red-ink)}.atag.purple{background:var(--tag-purple-bg);border-color:var(--tag-purple-line);color:var(--tag-purple-ink)}.atag.blue{background:var(--tag-blue-bg);border-color:var(--tag-blue-line);color:var(--tag-blue-ink)}.atag.closable{display:inline-flex;align-items:center;margin-inline-end:0}.atag-close{display:inline-flex;margin-inline-start:3px;padding:0;border:0;background:none;color:inherit;font-size:10px;opacity:.45;cursor:pointer}.atag-close:hover{opacity:1}.atag.count{margin:0 4px 0 0;padding:0 2px}.atag.count.last{margin-right:0}.protocol-tags{display:inline-flex;flex-wrap:wrap;gap:4px}.protocol-tags .atag{margin-inline-end:0}td.center>.atag,.speed-tag{margin-inline-end:0}.speed-tag{display:inline-flex;align-items:center;justify-content:center;width:200px;text-align:center;overflow:hidden;text-overflow:ellipsis}.infinity{font-size:14px;line-height:1;vertical-align:-.05em}.amenu{position:fixed;z-index:40;min-width:120px;padding:4px;border-radius:8px;background:var(--surface-2);box-shadow:0 6px 16px #00000014,0 3px 6px -4px #0000001f,0 9px 28px 8px #0000000d}.amenu.below{position:absolute;top:calc(100% + 4px);inset-inline-start:0}.more-wrap{position:relative}.amenu-item{display:flex;width:100%;align-items:center;gap:8px;padding:5px 12px;border:0;border-radius:4px;background:transparent;color:var(--ink);font:inherit;font-size:14px;line-height:22px;text-align:start;white-space:nowrap;cursor:pointer;transition:all .2s}.amenu-item:hover{background:var(--surface-3)}.amenu-item.danger{color:var(--bad)}.amenu-item.danger:hover{background:var(--bad);color:#fff}.amenu-item .anticon{font-size:14px}.amenu-divider{margin:4px 0;border:0;border-top:1px solid var(--line-soft)}.atable-wrap{margin-top:10px;border-radius:8px;overflow:auto}.atable{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;font-size:14px}.atable th,.atable td{padding:8px;border-bottom:1px solid var(--line-soft);text-align:start;vertical-align:middle;overflow-wrap:break-word;transition:background .2s}.atable thead th{position:relative;background:var(--surface-2);color:var(--ink);font-size:14px;font-weight:600;white-space:nowrap;border-bottom:1px solid var(--line-soft)}.atable thead th:not(:last-child):not(.sel):before{position:absolute;top:50%;inset-inline-end:0;width:1px;height:1.6em;background:var(--line-soft);transform:translateY(-50%);content:""}.atable thead th.sortable{cursor:pointer}.atable thead th.sortable:hover{background:var(--surface-3)}.atable thead tr:first-child>*:first-child{border-start-start-radius:8px}.atable thead tr:first-child>*:last-child{border-start-end-radius:8px}.atable tbody tr:last-child>td{border-bottom:0}.atable tbody tr:hover>td{background:var(--surface-2)}.atable tbody tr.picked>td{background:var(--accent-soft)}.sorters{display:flex;align-items:center;justify-content:space-between}.sorters .title{flex:1}th.center .sorters .title{text-align:center}th.right .sorters .title{text-align:end}.sorter{display:inline-flex;flex-direction:column;align-items:center;margin-inline-start:4px;color:var(--faint);font-size:0}.sorter .anticon{font-size:11px}.sorter .down{margin-top:-.3em}th.sorted.asc .sorter .up,th.sorted.desc .sorter .down{color:var(--accent-text)}.atable th.sel,.atable td.sel{width:32px;text-align:center;padding:8px}.acheck{width:16px;height:16px;min-height:0;margin:0;padding:0;vertical-align:middle;accent-color:var(--accent);cursor:pointer}.atabs-nav{position:relative;display:flex;margin:0 0 16px;border-bottom:1px solid var(--line-soft)}.atabs-list{display:flex;gap:32px;flex-wrap:wrap}@media(max-width:768px){.atabs-nav{overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none}.atabs-nav::-webkit-scrollbar{display:none}.atabs-list{flex-wrap:nowrap;gap:20px;width:max-content;min-width:100%}.atab{white-space:nowrap}}.atab{position:relative;display:inline-flex;align-items:center;gap:8px;padding:12px 0;border:0;background:none;color:var(--ink);font:inherit;font-size:14px;line-height:22px;cursor:pointer;transition:color .3s}.atab:hover{color:var(--accent-hover)}.atab.active{color:var(--accent-text);text-shadow:0 0 .25px currentcolor}.atab.active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--accent)}.atab .anticon{font-size:14px}.aalert{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-2);color:var(--ink);font-size:14px;line-height:22px;word-wrap:break-word}.aalert.with-desc{align-items:flex-start;padding:20px 24px}.aalert.with-desc>.anticon{font-size:24px;line-height:24px;margin-inline-end:12px}.aalert>.anticon{font-size:14px;line-height:0;flex:none}.aalert-body{flex:1;min-width:0}.aalert-title{display:block}.aalert.with-desc .aalert-title{margin-bottom:8px;font-size:16px;line-height:24px}.aalert-desc{display:block}.aalert-close{margin-inline-start:8px;padding:0;border:0;background:none;color:var(--faint);font-size:12px;line-height:0;cursor:pointer}.aalert-close:hover{color:var(--muted)}.aalert.warning{background:var(--tag-orange-bg);border-color:var(--tag-orange-line)}.aalert.warning>.anticon{color:var(--tag-orange-ink)}.aalert.error{background:var(--tag-red-bg);border-color:var(--tag-red-line)}.aalert.error>.anticon{color:var(--tag-red-ink)}.aalert.success{background:var(--tag-green-bg);border-color:var(--tag-green-line)}.aalert.success>.anticon{color:var(--tag-green-ink)}.aalert.info{background:var(--tag-blue-bg);border-color:var(--tag-blue-line)}.aalert.info>.anticon{color:var(--tag-blue-ink)}.aalert ul{margin:4px 0 0;padding-inline-start:20px}.aalert-action{margin-inline-start:8px}.ainput.block,.ainput.number,.aselect{width:100%}.ainput.number input{-moz-appearance:textfield}.ainput.number input::-webkit-outer-spin-button,.ainput.number input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ainput textarea{flex:1;min-width:0;min-height:22px;padding:0;border:0;background:none;color:var(--ink);font:inherit;font-size:14px;line-height:22px;resize:vertical}.ainput textarea:focus{outline:none;box-shadow:none}.ainput.area{height:auto;align-items:stretch}.ainput.disabled,.aselect.disabled{background:var(--surface-2);color:var(--faint);cursor:not-allowed}.ainput.disabled input{color:var(--faint)}.ainput.sm{height:24px;padding:0 7px;border-radius:4px}.ainput.sm input{height:22px}.aselect{position:relative;display:inline-flex;align-items:center;height:32px;border:1px solid var(--line);border-radius:6px;background:var(--surface);transition:all .2s}.aselect:hover,.aselect:focus-within{border-color:var(--accent-hover)}.aselect:focus-within{box-shadow:0 0 0 2px var(--accent-ring)}.aselect select{width:100%;height:30px;min-height:0;padding:0 32px 0 11px;border:0;background:none;color:var(--ink);font:inherit;font-size:14px;line-height:22px;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.aselect select:focus{outline:none;box-shadow:none}.aselect:after{content:"";position:absolute;inset-inline-end:11px;top:50%;width:12px;height:12px;margin-top:-6px;background:var(--faint);-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='64 64 896 896'><path d='M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z'/></svg>") center / contain no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='64 64 896 896'><path d='M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z'/></svg>") center / contain no-repeat;pointer-events:none}.acompact{display:inline-flex;width:100%}.acompact>*{border-radius:0}.acompact>*:first-child{border-start-start-radius:6px;border-end-start-radius:6px}.acompact>*:last-child{border-start-end-radius:6px;border-end-end-radius:6px}.acompact>*+*{margin-inline-start:-1px}.acompact>.ainput{flex:1;width:auto}.acompact>.aselect{flex:1;width:auto}.acompact>.abtn:hover,.acompact>.ainput:focus-within{position:relative;z-index:1}.acheckbox{display:inline-flex;align-items:center;gap:8px;font-size:14px;line-height:22px;color:var(--ink);cursor:pointer}.acheckbox input{width:16px;height:16px;min-height:0;margin:0;padding:0;accent-color:var(--accent);cursor:pointer}.setting-list-item{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;border-bottom:1px solid var(--line-soft)}.setting-list-item:last-child{border-bottom:0}.setting-list-item>.arow{width:100%;margin:-8px -4px}.setting-list-item>.arow>.acol{flex:0 0 50%;max-width:50%;padding:8px 4px}@media(max-width:991px){.setting-list-item>.arow>.acol{flex:0 0 100%;max-width:100%}}.setting-list-meta{display:flex;flex-direction:column;gap:4px}.setting-list-title{font-size:14px;color:var(--ink);font-weight:500}.setting-list-title .atag{margin-inline-start:8px;margin-inline-end:0}.setting-list-description{font-size:14px;color:var(--faint);line-height:1.5715}.setting-list-description a{color:var(--accent-text)}.aspace-v{display:flex;flex-direction:column;gap:8px;width:100%}.amodal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1150;display:flex;align-items:flex-start;justify-content:center;padding:100px 16px 24px;background:#00000073;overflow:auto}.amodal{width:520px;max-width:100%;padding:20px 24px;border-radius:8px;background:var(--surface);box-shadow:0 6px 16px #00000014,0 3px 6px -4px #0000001f,0 9px 28px 8px #0000000d}.amodal-head{display:flex;align-items:center;margin-bottom:8px}.amodal-title{flex:1;margin:0;font-size:16px;font-weight:600;line-height:24px;color:var(--ink)}.amodal-close{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:0;border-radius:4px;background:none;color:var(--faint);font-size:16px;cursor:pointer}.amodal-close:hover{background:var(--surface-3);color:var(--ink)}.amodal{display:flex;flex-direction:column;max-height:calc(100dvh - 48px)}.amodal-body{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;font-size:14px;line-height:22px}.amodal-body{scrollbar-width:none}.amodal-body::-webkit-scrollbar{display:none}.amodal table{min-width:0}.amodal-foot{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.aform-item{margin-bottom:24px}.aform-label{display:block;margin-bottom:8px;font-size:14px;line-height:22px;color:var(--ink)}.aform-label.required:before{content:"*";margin-inline-end:4px;color:var(--bad)}.aempty{margin:32px 8px;text-align:center;color:var(--faint);font-size:14px;line-height:22px}.aempty .anticon{display:block;margin:0 auto 8px;font-size:40px;opacity:.5}.apagination{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin:16px 0;padding:0;list-style:none;direction:ltr}.apagination>li{display:inline-flex}.apage{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 6px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--ink);font:inherit;font-size:14px;line-height:30px;cursor:pointer;transition:all .2s}.apage:hover:not(:disabled):not(.active){background:var(--surface-2)}.apage.active{border-color:var(--accent);background:var(--surface);color:var(--accent-text);font-weight:600}.apage:disabled{color:var(--faint);cursor:not-allowed}.apagination.small .apage{min-width:24px;height:24px;line-height:22px;border-radius:4px}.aradio-group{display:inline-flex;font-size:14px;line-height:22px}.aradio-btn{position:relative;height:32px;padding:0 15px;border:1px solid var(--line);border-inline-start-width:0;background:var(--surface);color:var(--ink);font:inherit;font-size:14px;line-height:30px;cursor:pointer;transition:color .2s,background .2s,border-color .2s}.aradio-btn:first-child{border-inline-start-width:1px;border-start-start-radius:6px;border-end-start-radius:6px}.aradio-btn:last-child{border-start-end-radius:6px;border-end-end-radius:6px}.aradio-btn:hover{color:var(--accent-text)}.aradio-btn.active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);z-index:1}.aradio-btn.active+.aradio-btn{border-inline-start-color:var(--accent)}.abtn.circle{width:24px;height:24px;min-width:24px;padding:0;border-radius:50%;font-size:14px}.abtn.small{height:24px;padding:0 7px;border-radius:4px;font-size:14px}.abtn.danger-primary{background:var(--bad-fill, var(--bad));border-color:var(--bad-fill, var(--bad));color:#fff}.abtn.danger-primary:hover{opacity:.85;color:#fff}.abtn:disabled{color:var(--faint);background:var(--surface-2);border-color:var(--line);box-shadow:none;cursor:not-allowed}.abtn .anticon.spin{animation:aspin 1s linear infinite}@keyframes aspin{to{transform:rotate(360deg)}}.atable.bordered{border:1px solid var(--line-soft);border-radius:8px}.atable.bordered th,.atable.bordered td{border-inline-end:1px solid var(--line-soft)}.atable.bordered th:last-child,.atable.bordered td:last-child{border-inline-end:0}.atable.bordered thead th:before{display:none}.atable .action-cell{display:flex;align-items:center;justify-content:center;gap:8px}.atable .row-index{font-weight:500;opacity:.7}.atable .action-buttons{display:flex;align-items:center;justify-content:center;gap:4px}.atable .info-large-tag{margin:0 4px 0 0}.aselect.small{height:24px;border-radius:4px}.aselect.small select{height:22px;padding-inline-start:7px}.atextarea{display:block;width:100%;min-height:32px;padding:4px 11px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink);font:inherit;font-size:14px;line-height:22px;resize:vertical;transition:all .2s}.atextarea:hover,.atextarea:focus{border-color:var(--accent-hover);outline:none}.atextarea:focus{box-shadow:0 0 0 2px var(--accent-ring)}.atextarea.json{min-height:420px;max-height:720px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px;line-height:20px;white-space:pre;overflow:auto;direction:ltr;text-align:left;-moz-tab-size:2;tab-size:2}.hosts-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.hosts-row>.ainput{flex:1 1 220px;width:auto}.hosts-row>.tagbox{flex:2 1 320px}.advanced-meta h4{margin:0 0 4px;font-size:14px;font-weight:600;color:var(--ink)}.advanced-meta p{margin:0;opacity:.7;font-size:14px}.hint-alert{text-align:center}.mb-12{margin-bottom:12px}.aspin-nested{position:relative}.aspin-nested>.loading-spacer{min-height:calc(100vh - 120px)}.aspin{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;max-height:400px;color:var(--accent-text);font-size:14px;text-align:center}.aspin-dot{position:absolute;top:50%;inset-inline-start:50%;display:inline-block;width:1em;height:1em;margin:-26px -16px -16px;font-size:32px;transform:rotate(45deg);animation:aspin-rotate 1.2s infinite linear}.aspin-dot i{position:absolute;display:block;width:14px;height:14px;border-radius:100%;background-color:currentColor;transform:scale(.75);transform-origin:50% 50%;opacity:.3;animation:aspin-move 1s infinite linear alternate}.aspin-dot i:nth-child(1){top:0;inset-inline-start:0}.aspin-dot i:nth-child(2){top:0;inset-inline-end:0;animation-delay:.4s}.aspin-dot i:nth-child(3){inset-inline-end:0;bottom:0;animation-delay:.8s}.aspin-dot i:nth-child(4){bottom:0;inset-inline-start:0;animation-delay:1.2s}.aspin-text{position:absolute;top:50%;width:100%;padding-top:11px;font-size:14px;text-shadow:0 1px 2px var(--ground)}@keyframes aspin-move{to{opacity:1}}@keyframes aspin-rotate{to{transform:rotate(405deg)}}.acollapse{border:1px solid var(--line);border-radius:8px;background:var(--surface-2);font-size:14px;line-height:22px}.acollapse-item{border-bottom:1px solid var(--line)}.acollapse-item:last-child{border-bottom:0}.acollapse-item:last-child>.acollapse-header{border-radius:0 0 8px 8px}.acollapse-item:first-child>.acollapse-header{border-radius:8px 8px 0 0}.acollapse-header{position:relative;display:flex;align-items:flex-start;width:100%;padding:12px 16px;border:0;background:transparent;color:var(--ink);font:inherit;line-height:22px;text-align:start;cursor:pointer;transition:all .3s,visibility 0s}.acollapse-expand{display:flex;height:22px;align-items:center;padding-inline-end:12px;font-size:12px}.acollapse-expand .anticon{transition:transform .3s}.acollapse-item.open>.acollapse-header .acollapse-expand .anticon{transform:rotate(90deg)}.acollapse-label{flex:auto}.acollapse-extra{margin-inline-start:auto}.acollapse-content{border-top:1px solid var(--line);background:var(--surface)}.acollapse-item:last-child>.acollapse-content{border-radius:0 0 8px 8px}.acollapse-box{padding:16px}.adivider{display:flex;align-items:center;margin:16px 0;color:var(--ink);font-size:16px;font-weight:500;white-space:nowrap;text-align:center}.adivider:before,.adivider:after{content:"";flex:1;border-top:1px solid var(--line-soft)}.adivider-text{padding:0 1em}.abtn.small.icon{width:24px;padding:0}.abtn.text.danger{color:var(--bad)}.abtn.text.danger:hover{background:var(--bad-soft);color:var(--bad)}.abtn:disabled.text{background:transparent}.apopover{position:fixed;z-index:1060;padding:12px;border-radius:8px;background:var(--surface-elev);box-shadow:0 6px 16px #00000014,0 3px 6px -4px #0000001f,0 9px 28px 8px #0000000d;animation:amenu-zoom .2s var(--sider-ease, ease)}.aprogress{position:relative;display:block;width:100%;height:8px;border-radius:100px;background:var(--surface-3);overflow:hidden}.aprogress.small{height:6px}.aprogress>span{display:block;height:100%;border-radius:100px;background:var(--accent);transition:all .4s cubic-bezier(.08,.82,.17,1) 0s}.amodal-backdrop.centered{align-items:center;padding:24px 16px}.amodal.w640{width:640px}.amodal.w440{width:440px}.amodal.w520{width:min(520px,calc(100vw - 32px))}.amodal.w760{width:min(760px,calc(100vw - 32px))}.atag.cyan{background:var(--tag-cyan-bg, #112123);border-color:var(--tag-cyan-line, #144848);color:var(--tag-cyan-ink, #33bcb7)}.atag.geekblue{background:var(--tag-geek-bg);border-color:var(--tag-geek-line);color:var(--tag-geek-ink)}.atag.orange{background:var(--tag-orange-bg);border-color:var(--tag-orange-line);color:var(--tag-orange-ink)}.atag.gold{background:var(--tag-orange-bg);border-color:var(--tag-orange-line);color:var(--tag-gold-ink, #d4b106)}.atag.default{background:var(--surface-3);border-color:var(--line);color:var(--ink)}.inbound-cards,.client-cards,.node-cards{display:flex;flex-direction:column;gap:12px;margin-top:4px}.client-cards{gap:10px}.inbound-card,.client-card,.node-card,.outbound-card{border:1px solid var(--line-soft, var(--line));border-radius:10px;padding:12px;background:var(--fill-quaternary, rgba(255, 255, 255, .03));display:flex;flex-direction:column;gap:8px}.client-card{padding:10px 12px}.outbound-card{border-radius:8px;margin-bottom:8px}.outbound-card.off{opacity:.6}.outbound-card .card-head{justify-content:space-between;cursor:default}.outbound-card .card-identity .tag-name{flex:0 1 auto}.inbound-card.is-selected,.client-card.is-selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 6%,transparent)}.card-bulk-bar{display:flex;align-items:center;gap:8px;padding:4px 4px 8px}.bulk-count{font-size:12px;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent-text);border-radius:10px;padding:0 8px;line-height:20px}.card-head{display:flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.card-id{font-size:11px;opacity:.6}.tag-name{font-weight:600;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.row-action-trigger{font-size:20px;cursor:pointer;background:none;border:0;padding:0;color:inherit;display:inline-flex;align-items:center}.card-stats{display:flex;flex-direction:column;gap:6px}.stat-row{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.stat-label{font-size:10px;text-transform:uppercase;letter-spacing:.04em;opacity:.6;min-width:96px;flex-shrink:0}.card-stats .atag{margin:0}.card-identity{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.card-num{font-weight:500;opacity:.7;min-width:18px;text-align:right}.card-foot{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.card-test{margin-left:auto;display:inline-flex;align-items:center;gap:8px}.card-egress{display:flex;flex-direction:column;align-items:flex-start;gap:3px;font-size:12px;opacity:.85}.card-egress-row{display:inline-flex;align-items:center;gap:6px;min-width:0;max-width:100%}.card-pagination{display:flex;justify-content:center;flex-wrap:wrap;padding:4px 0 8px}.status-tag{margin:0 0 0 4px;font-size:11px;padding:0 6px;line-height:18px}.client-card-comment{display:block;margin-top:6px;color:var(--muted);font-size:12px;max-height:4.5em;overflow-y:auto}.card-empty{text-align:center;color:var(--muted);padding:24px 12px;display:flex;flex-direction:column;align-items:center;gap:8px}@media(max-width:768px){.antpage .summary-card .acard-body{padding:8px}.antpage .acard-head{padding:0 12px;min-height:44px}.antpage .acard-body{padding:8px}.antpage .row-action-trigger{font-size:22px;padding:4px}}@media(min-width:769px)and (max-width:920px){.card-toolbar,.acard-head .aspace{gap:6px}.card-toolbar .abtn .anticon+span,.acard-head .aspace .abtn .anticon+span{display:none}.card-toolbar .abtn,.acard-head .aspace .abtn{padding-inline:8px}}.node-name{font-weight:600;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-expand{font-size:12px;opacity:.6;transition:transform .15s ease;flex-shrink:0}.card-expand.is-expanded{transform:rotate(90deg)}.card-history{margin-top:4px;padding-top:8px;border-top:1px solid var(--line-soft, var(--line))}.rule-list{display:flex;flex-direction:column;gap:14px}.rule-empty{text-align:center;opacity:.5;padding:24px 12px}.rule-card{position:relative;display:flex;flex-direction:column;gap:8px;padding:10px 12px;background:var(--surface-2, var(--surface));border:1px solid var(--line);border-radius:8px;box-shadow:0 1px 3px #0000000f}.rule-list>.rule-card:not(:last-child):after{content:"";position:absolute;left:50%;bottom:-8px;width:32px;height:1px;background:var(--line);transform:translate(-50%);opacity:.7}.rule-card.rule-disabled{opacity:.6}.rule-card-head{display:flex;align-items:center;gap:8px}.rule-card-head .drag-handle{cursor:grab;opacity:.35;padding:4px}.rule-number{font-weight:600;font-size:13px;opacity:.75;flex:1}.rule-flow{display:flex;align-items:center;gap:8px}.flow-side{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.flow-side-target{align-items:flex-end;text-align:right}.flow-label{font-size:10px;text-transform:uppercase;letter-spacing:.05em;opacity:.55}.flow-tag{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:0}.flow-arrow{font-size:16px;opacity:.45;flex-shrink:0}.rule-criteria{display:flex;flex-wrap:wrap;gap:4px;padding-top:6px;border-top:1px dashed var(--line)}.criterion-chip{display:inline-flex;align-items:baseline;gap:4px;padding:1px 6px;font-size:11px;border-radius:6px;background:var(--fill-tertiary, rgba(255, 255, 255, .06));max-width:100%}.criterion-chip-label{font-size:10px;text-transform:uppercase;opacity:.55;letter-spacing:.04em}.criterion-chip-value{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.criterion-empty{opacity:.4}.rule-comment{display:flex;align-items:center;gap:4px;margin-top:6px;font-size:12px;color:var(--muted)}.rule-comment-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tabs.icons-only{margin-bottom:8px;width:100%;display:flex}.tabs.icons-only .tab{flex:1 1 0;justify-content:center;margin:0;padding:10px 0}.abadge-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--faint);flex-shrink:0}.abadge-dot.red{background:var(--bad)}.abadge-dot.orange{background:var(--warn)}.abadge-dot.green{background:var(--ok)}.aalert-close,.ainput-clear,.chip-x,button.ov-version{position:relative}.aalert-close:before,.ainput-clear:before,.chip-x:before,button.ov-version:before{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px}.chip,.linkbtn{min-height:24px}a.spacer.small{display:inline-flex;align-items:center;min-height:24px}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}.abtn:focus-visible,.abtn.text:focus-visible,.abtn.primary:focus-visible,.acheck:focus-visible,.aradio-btn:focus-visible,.atab:focus-visible,.amodal-close:focus-visible,.amenu-item:focus-visible,.amenu-submenu-title:focus-visible{outline:none;box-shadow:var(--ring)}:root{--sider-rail: 72px;--sider-open: 220px;--sider-ease: cubic-bezier(.645, .045, .355, 1)}.shell{min-height:100%}.shell>*{min-width:0}.sidebar{position:fixed;inset-block:0;inset-inline-start:0;z-index:210;display:flex;flex-direction:column;width:var(--sider-rail);background:var(--sider);color:var(--ink);overflow:hidden;transition:all .2s,background 0s}.sidebar.expanded{width:var(--sider-open)}.shell:not(.rail-pinned) .sidebar.expanded{box-shadow:0 0 32px #00000038}.sider-brand{display:flex;align-items:center;justify-content:space-between;gap:8px;height:58px;padding:0 16px 0 24px;border-bottom:1px solid var(--line-soft);color:var(--ink);font-size:18px;font-weight:600;letter-spacing:.5px;-webkit-user-select:none;user-select:none;white-space:nowrap;overflow:hidden;flex-shrink:0}.sidebar:not(.expanded) .sider-brand{justify-content:center;padding:0}.brand-block{display:inline-flex;align-items:center;min-width:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;letter-spacing:inherit;line-height:1.1;cursor:pointer}.brand-actions{display:inline-flex;align-items:center;gap:0;flex-shrink:0}.brand-actions>*{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--muted);font-size:16px;text-decoration:none;cursor:pointer;flex-shrink:0;transition:background-color .2s,transform .15s,color .2s}.brand-actions>*:hover,.brand-actions>*:focus-visible{background-color:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent-text);transform:scale(1.08);outline:none}.sider-nav{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden}.sider-utility{flex:0 0 auto;border-top:1px solid var(--line-soft)}.sider-footer{flex:0 0 auto;padding:8px 8px 12px}.amenu-inline{margin:0;padding:0;list-style:none;font-size:14px;line-height:0}.amenu-inline .amenu-item,.amenu-inline .amenu-submenu-title{position:relative;display:flex;align-items:center;box-sizing:border-box;width:calc(100% - 8px);height:40px;margin-block:4px;margin-inline:4px;padding-inline:16px;padding-inline-start:24px;border:0;border-radius:8px;background:transparent;color:var(--ink);font:inherit;font-size:14px;line-height:40px;text-align:start;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;transition:border-color .3s,background .3s,padding .3s var(--sider-ease),color .3s}.amenu-inline .amenu-item .anticon,.amenu-inline .amenu-submenu-title .anticon{min-width:14px;font-size:16px;transition:font-size .15s cubic-bezier(.215,.61,.355,1),margin .3s var(--sider-ease),color .3s}.amenu-inline .amenu-item .anticon+.amenu-title,.amenu-inline .amenu-submenu-title .anticon+.amenu-title{margin-inline-start:10px;opacity:1;transition:opacity .3s var(--sider-ease),margin .3s,color .3s}.amenu-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.amenu-inline .amenu-item:hover:not(.selected),.amenu-inline .amenu-submenu-title:hover:not(.selected){background-color:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent-text)}.amenu-inline .amenu-item.selected{background-color:color-mix(in srgb,var(--accent) 20%,transparent);color:var(--accent-text)}.amenu-inline .amenu-submenu.open>.amenu-submenu-title,.amenu-inline .amenu-submenu.active>.amenu-submenu-title{color:var(--accent-text)}.amenu-submenu-arrow{position:absolute;top:50%;inset-inline-end:16px;width:10px;color:currentColor;transform:translateY(-50%);transition:transform .3s var(--sider-ease),opacity .3s}.amenu-submenu-arrow:before,.amenu-submenu-arrow:after{content:"";position:absolute;width:6px;height:1.5px;border-radius:6px;background-color:currentColor;transition:background .3s var(--sider-ease),transform .3s var(--sider-ease),top .3s var(--sider-ease),color .3s var(--sider-ease)}.amenu-submenu-arrow:before{transform:rotate(-45deg) translate(2.5px)}.amenu-submenu-arrow:after{transform:rotate(45deg) translate(-2.5px)}.amenu-submenu.open>.amenu-submenu-title>.amenu-submenu-arrow{transform:translateY(-2px)}.amenu-submenu.open>.amenu-submenu-title>.amenu-submenu-arrow:before{transform:rotate(45deg) translate(2.5px)}.amenu-submenu.open>.amenu-submenu-title>.amenu-submenu-arrow:after{transform:rotate(-45deg) translate(-2.5px)}.amenu-sub{margin:0;padding:0;list-style:none;background:var(--sider-sub);border-radius:0;overflow:hidden}.amenu-sub .amenu-item{padding-inline-start:48px}.amenu-collapse-enter-active,.amenu-collapse-leave-active{transition:height .3s var(--sider-ease),opacity .3s var(--sider-ease);overflow:hidden}.amenu-collapse-enter-from,.amenu-collapse-leave-to{height:0!important;opacity:0}.sidebar:not(.expanded) .amenu-inline .amenu-item,.sidebar:not(.expanded) .amenu-inline .amenu-submenu-title{padding-inline:calc(50% - 8px);padding-inline-start:calc(50% - 8px);text-overflow:clip}.sidebar:not(.expanded) .amenu-inline .anticon+.amenu-title{display:inline-block;opacity:0}.sidebar:not(.expanded) .amenu-submenu-arrow{opacity:0}.sidebar:not(.expanded) .amenu-sub{display:none}.amenu-popup{position:fixed;z-index:1050;min-width:160px;margin:0;padding:4px;list-style:none;border-radius:8px;background:var(--surface-elev);box-shadow:0 6px 16px #00000014,0 3px 6px -4px #0000001f,0 9px 28px 8px #0000000d;animation:amenu-zoom .2s var(--sider-ease);transform-origin:0 0}.amenu-popup .amenu-item{display:flex;align-items:center;height:40px;margin-block:4px;margin-inline:4px;padding-inline:16px;border:0;border-radius:8px;background:transparent;color:var(--ink);font:inherit;font-size:14px;line-height:40px;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background .3s,color .3s}.amenu-popup .amenu-item .anticon{font-size:16px}.amenu-popup .amenu-item .anticon+.amenu-title{margin-inline-start:10px}.amenu-popup .amenu-item:hover:not(.selected){background-color:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent-text)}.amenu-popup .amenu-item.selected{background-color:color-mix(in srgb,var(--accent) 20%,transparent);color:var(--accent-text)}@keyframes amenu-zoom{0%{opacity:0;transform:scale(.8)}}.sider-version{display:flex;align-items:center;justify-content:flex-start;gap:10px;width:100%;padding:8px 16px;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px;font-weight:500;text-decoration:none;direction:ltr;white-space:nowrap;transition:color .2s}.sider-version .anticon{font-size:16px}.sidebar:not(.expanded) .sider-version{justify-content:center;padding:8px 0}.sider-version:hover,.sider-version:focus-visible{color:var(--accent-text);outline:none}.drawer-handle{position:fixed;top:12px;inset-inline-start:12px;z-index:1100;display:none;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:50%;background:#0000008c;color:#fff;font-size:18px;cursor:pointer;box-shadow:0 2px 8px #00000040}.drawer-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;background:#00000073}.drawer{display:flex;flex-direction:column;width:min(82vw,320px);height:100%;background:var(--sider);color:var(--ink);overflow:hidden;box-shadow:6px 0 16px #00000014,3px 0 6px -4px #0000001f,9px 0 28px 8px #0000000d}.drawer-enter-active,.drawer-leave-active{transition:opacity .3s var(--sider-ease)}.drawer-enter-active .drawer,.drawer-leave-active .drawer{transition:transform .3s var(--sider-ease)}.drawer-enter-from,.drawer-leave-to{opacity:0}.drawer-enter-from .drawer,.drawer-leave-to .drawer{transform:translate(-100%)}[dir=rtl] .drawer-enter-from .drawer,[dir=rtl] .drawer-leave-to .drawer{transform:translate(100%)}.drawer-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--line-soft);font-size:18px;font-weight:600;letter-spacing:.5px}.drawer-header-actions{display:inline-flex;align-items:center;gap:4px}.drawer-header-actions>*{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:none;border-radius:50%;background:transparent;color:var(--muted);font-size:16px;cursor:pointer;transition:background-color .2s,transform .15s,color .2s}.drawer-header-actions>*:hover{background-color:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent-text)}.drawer-header-actions>.drawer-close:hover{background:var(--surface-3);color:var(--ink)}.drawer-menu{flex:1 1 auto;min-height:0;overflow-y:auto}.drawer-menu .amenu-item,.drawer-menu .amenu-submenu-title{width:100%;height:48px;margin:0;border-radius:0;line-height:48px}.drawer-utility{flex:0 0 auto;margin-top:auto;border-top:1px solid var(--line-soft)}.drawer-footer{flex:0 0 auto;padding:8px 8px 12px}.main{margin-inline-start:var(--sider-rail);padding:24px;transition:margin-inline-start .2s}.shell.rail-pinned .main{margin-inline-start:var(--sider-open)}@media(max-width:768px){.drawer-handle{display:inline-flex}.sidebar{display:none}.main,.shell.rail-pinned .main{margin-inline-start:0;padding:8px}}.login-app[data-v-cd857e95]{--bg-card: rgba(20, 18, 21, .55);--bg-card-solid: #141215;--color-border: rgba(255, 255, 255, .1);--shadow-card: 0 1px 3px rgba(0, 0, 0, .4), 0 20px 60px rgba(224, 46, 61, .22);--blob-1: rgba(224, 46, 61, .42);--blob-2: rgba(160, 26, 42, .42);--blob-3: rgba(242, 64, 79, .3);--blob-4: rgba(251, 146, 60, .14);--blob-5: rgba(120, 18, 30, .35);--grid-color: rgba(255, 255, 255, .04);--hair-a: rgba(255, 255, 255, .15);--hair-b: rgba(224, 46, 61, .4);position:relative;min-height:100vh;overflow:hidden;color:var(--ink);background:radial-gradient(ellipse at 25% 20%,#1a0d11,#0a090a 60%)}.login-app[data-v-cd857e95]:not(.is-dark){--bg-card: rgba(255, 255, 255, .72);--bg-card-solid: #ffffff;--color-border: rgba(255, 255, 255, .6);--shadow-card: 0 1px 3px rgba(0, 0, 0, .04), 0 18px 50px rgba(200, 31, 46, .18);--blob-1: rgba(200, 31, 46, .35);--blob-2: rgba(242, 64, 79, .3);--blob-3: rgba(251, 146, 60, .25);--blob-4: rgba(160, 26, 42, .2);--blob-5: rgba(200, 31, 46, .2);--grid-color: rgba(200, 31, 46, .06);--hair-a: rgba(255, 255, 255, .5);--hair-b: rgba(200, 31, 46, .25);background:linear-gradient(135deg,#fbe9eb,#fdf2f8,#fff5f5)}.login-app.is-ultra[data-v-cd857e95]{--bg-card: rgba(10, 10, 12, .6);--bg-card-solid: #0a0a0c;--color-border: rgba(255, 255, 255, .06);--blob-1: rgba(224, 46, 61, .3);--blob-2: rgba(160, 26, 42, .22);--blob-3: rgba(242, 64, 79, .2);--blob-4: rgba(251, 146, 60, .12);--blob-5: rgba(120, 18, 30, .25);--grid-color: rgba(255, 255, 255, .025);background:radial-gradient(ellipse at 25% 20%,#150709,#000 60%)}.login-app[data-v-cd857e95]:before,.login-app[data-v-cd857e95]:after,.login-content[data-v-cd857e95]:before,.login-content[data-v-cd857e95]:after,.login-wrapper[data-v-cd857e95]:before{content:"";position:absolute;border-radius:50%;pointer-events:none;z-index:0;will-change:transform}.login-app[data-v-cd857e95]:before{top:-25vw;left:-20vw;width:70vw;height:70vw;max-width:900px;max-height:900px;filter:blur(100px);background:radial-gradient(circle,var(--blob-1) 0%,transparent 65%);animation:blob-drift-a-cd857e95 24s ease-in-out infinite alternate}.login-app[data-v-cd857e95]:after{bottom:-25vw;right:-20vw;width:70vw;height:70vw;max-width:900px;max-height:900px;filter:blur(100px);background:radial-gradient(circle,var(--blob-2) 0%,transparent 65%);animation:blob-drift-b-cd857e95 30s ease-in-out infinite alternate}.login-content[data-v-cd857e95]:before{top:30%;left:50%;width:50vw;height:50vw;max-width:700px;max-height:700px;filter:blur(100px);background:radial-gradient(circle,var(--blob-3) 0%,transparent 65%);animation:blob-drift-c-cd857e95 36s ease-in-out infinite alternate}.login-content[data-v-cd857e95]:after{top:10%;right:15%;width:35vw;height:35vw;max-width:500px;max-height:500px;filter:blur(90px);background:radial-gradient(circle,var(--blob-4) 0%,transparent 65%);animation:blob-drift-d-cd857e95 28s ease-in-out infinite alternate}.login-wrapper[data-v-cd857e95]:before{bottom:5%;left:10%;width:35vw;height:35vw;max-width:500px;max-height:500px;filter:blur(90px);background:radial-gradient(circle,var(--blob-5) 0%,transparent 65%);animation:blob-drift-e-cd857e95 32s ease-in-out infinite alternate}.login-wrapper[data-v-cd857e95]:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background-image:linear-gradient(var(--grid-color) 1px,transparent 1px),linear-gradient(90deg,var(--grid-color) 1px,transparent 1px);background-size:48px 48px;background-position:center;-webkit-mask-image:radial-gradient(ellipse at center,black 30%,transparent 75%);mask-image:radial-gradient(ellipse at center,black 30%,transparent 75%)}@keyframes blob-drift-a-cd857e95{0%{transform:translate(0) scale(1)}50%{transform:translate(18vw,10vh) scale(1.15)}to{transform:translate(34vw,22vh) scale(1.25)}}@keyframes blob-drift-b-cd857e95{0%{transform:translate(0) scale(1)}50%{transform:translate(-16vw,-10vh) scale(1.12)}to{transform:translate(-30vw,-22vh) scale(1.2)}}@keyframes blob-drift-c-cd857e95{0%{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-20%,-20%) scale(1.1)}to{transform:translate(-80%,-10%) scale(1.05)}}@keyframes blob-drift-d-cd857e95{0%{transform:translate(0) scale(.9)}50%{transform:translate(-12vw,14vh) scale(1.05)}to{transform:translate(8vw,-8vh) scale(1.1)}}@keyframes blob-drift-e-cd857e95{0%{transform:translate(0) scale(1)}50%{transform:translate(14vw,-8vh) scale(1.1)}to{transform:translate(-6vw,12vh) scale(1.15)}}@media(prefers-reduced-motion:reduce){.login-app[data-v-cd857e95]:before,.login-app[data-v-cd857e95]:after,.login-content[data-v-cd857e95]:before,.login-content[data-v-cd857e95]:after,.login-wrapper[data-v-cd857e95]:before{animation:none}.welcome b[data-v-cd857e95]{animation:none}}.login-content[data-v-cd857e95]{position:relative}.login-content[data-v-cd857e95]>*{position:relative;z-index:1}.login-toolbar[data-v-cd857e95]{position:fixed;top:16px;right:16px;z-index:10;display:inline-flex;align-items:center;gap:8px}.toolbar-btn[data-v-cd857e95]{width:40px;height:40px;min-width:40px;padding:0;border-radius:50%;background:var(--bg-card-solid)}.toolbar-btn .anticon[data-v-cd857e95]{font-size:18px}.lang[data-v-cd857e95]{position:relative}.lang-menu[data-v-cd857e95]{position:absolute;top:calc(100% + 4px);inset-inline-end:0;min-width:160px}.lang-menu .amenu-item.selected[data-v-cd857e95]{color:var(--accent-text);background:var(--accent-soft)}.login-wrapper[data-v-cd857e95]{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px 16px}.login-card[data-v-cd857e95]{position:relative;z-index:2;width:100%;max-width:400px;padding:40px 32px 28px;background:var(--bg-card);border:1px solid var(--color-border);border-radius:20px;box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(24px) saturate(180%);backdrop-filter:blur(24px) saturate(180%)}.login-card[data-v-cd857e95]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:20px;padding:1px;pointer-events:none;background:linear-gradient(135deg,var(--hair-a),rgba(255,255,255,0) 40%,var(--hair-b) 80%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}@media(max-width:480px){.login-card[data-v-cd857e95]{padding:32px 20px 24px}}.brand[data-v-cd857e95]{display:flex;flex-direction:column;align-items:center;gap:10px;margin-bottom:8px}.brand-logo[data-v-cd857e95]{width:96px;height:auto;display:block}.brand-accent[data-v-cd857e95]{display:block;width:40px;height:3px;border-radius:2px;background:linear-gradient(90deg,var(--accent-hover),var(--accent))}.welcome[data-v-cd857e95]{min-height:42px;margin:12px 0 28px;text-align:center;color:var(--ink);font-size:32px;font-weight:700;line-height:1.2;letter-spacing:.3px}.welcome b[data-v-cd857e95]{display:inline-block;font-weight:inherit;animation:headline-in-cd857e95 .28s ease both}@keyframes headline-in-cd857e95{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.login-form .aform-label[data-v-cd857e95]{font-weight:500;color:var(--ink)}.login-form .ainput.large[data-v-cd857e95]{height:40px;padding:7px 11px;border-radius:8px;font-size:16px;background:var(--bg-card-solid)}.login-form .ainput.large input[data-v-cd857e95]{font-size:16px}.login-form .ainput-prefix[data-v-cd857e95]{color:var(--ink)}.ainput-eye[data-v-cd857e95]{display:inline-flex;padding:0;border:0;background:none;color:var(--faint);font-size:14px;cursor:pointer}.ainput-eye[data-v-cd857e95]:hover{color:var(--ink)}.login-form input[data-v-cd857e95]:-webkit-autofill,.login-form input[data-v-cd857e95]:-webkit-autofill:hover,.login-form input[data-v-cd857e95]:-webkit-autofill:focus{-webkit-text-fill-color:var(--ink)!important;-webkit-box-shadow:0 0 0 1000px var(--bg-card-solid) inset!important;box-shadow:0 0 0 1000px var(--bg-card-solid) inset!important;transition:background-color 9999s ease-in-out 0s,color 9999s ease-in-out 0s}.abtn.large[data-v-cd857e95]{height:40px;padding:6px 15px;border-radius:8px;font-size:16px}.abtn.block[data-v-cd857e95]{width:100%}.submit-row[data-v-cd857e95]{margin-bottom:0}.error[data-v-cd857e95]{margin:-8px 0 16px;color:var(--bad);font-size:13px}.spin[data-v-cd857e95]{width:16px;height:16px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:rot-cd857e95 .8s linear infinite}@keyframes rot-cd857e95{to{transform:rotate(360deg)}}
