@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/70b699b2-fce5-4925-a70b-1f02f84ecadf.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/6451fdad-9454-4dc1-8e1a-38efd8c6e89f.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/529c0076-c659-4dd4-ad8e-5a92312bae88.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/b5b2e720-5f48-407c-b178-20845918affb.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ed90705d-4d0b-47e5-812a-eda3c1d70b6e.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/4da2abe8-7db2-4977-80f9-39c40e595a8c.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/70b699b2-fce5-4925-a70b-1f02f84ecadf.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/6451fdad-9454-4dc1-8e1a-38efd8c6e89f.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/529c0076-c659-4dd4-ad8e-5a92312bae88.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/b5b2e720-5f48-407c-b178-20845918affb.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/ed90705d-4d0b-47e5-812a-eda3c1d70b6e.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/4da2abe8-7db2-4977-80f9-39c40e595a8c.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/70b699b2-fce5-4925-a70b-1f02f84ecadf.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/6451fdad-9454-4dc1-8e1a-38efd8c6e89f.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/529c0076-c659-4dd4-ad8e-5a92312bae88.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/b5b2e720-5f48-407c-b178-20845918affb.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/ed90705d-4d0b-47e5-812a-eda3c1d70b6e.woff2) format("woff2");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:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/4da2abe8-7db2-4977-80f9-39c40e595a8c.woff2) format("woff2");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:Onest;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/20b7f1a1-9d17-40a3-9727-2ba44d8121e4.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Onest;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/c43c6849-20da-4faa-b5be-b93771a17e96.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Onest;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/a218e2f3-498a-43e0-b336-fb0dfc635a24.woff2) format("woff2");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:Onest;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/a6eb8e01-05c1-47d0-b958-3ba2bfafa846.woff2) format("woff2");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:Onest;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/20b7f1a1-9d17-40a3-9727-2ba44d8121e4.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Onest;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/c43c6849-20da-4faa-b5be-b93771a17e96.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Onest;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/a218e2f3-498a-43e0-b336-fb0dfc635a24.woff2) format("woff2");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:Onest;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/a6eb8e01-05c1-47d0-b958-3ba2bfafa846.woff2) format("woff2");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:Onest;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/20b7f1a1-9d17-40a3-9727-2ba44d8121e4.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Onest;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/c43c6849-20da-4faa-b5be-b93771a17e96.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Onest;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/a218e2f3-498a-43e0-b336-fb0dfc635a24.woff2) format("woff2");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:Onest;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/a6eb8e01-05c1-47d0-b958-3ba2bfafa846.woff2) format("woff2");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:Onest;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/20b7f1a1-9d17-40a3-9727-2ba44d8121e4.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Onest;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/c43c6849-20da-4faa-b5be-b93771a17e96.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Onest;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/a218e2f3-498a-43e0-b336-fb0dfc635a24.woff2) format("woff2");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:Onest;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/a6eb8e01-05c1-47d0-b958-3ba2bfafa846.woff2) format("woff2");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:Onest;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/20b7f1a1-9d17-40a3-9727-2ba44d8121e4.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Onest;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/c43c6849-20da-4faa-b5be-b93771a17e96.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Onest;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/a218e2f3-498a-43e0-b336-fb0dfc635a24.woff2) format("woff2");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:Onest;font-style:normal;font-weight:800;font-display:swap;src:url(/fonts/a6eb8e01-05c1-47d0-b958-3ba2bfafa846.woff2) format("woff2");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{--brand-50: #EFF4FF;--brand-100: #DBE6FF;--brand-200: #BACFFF;--brand-300: #8FAEFF;--brand-400: #5B82FF;--brand-500: #0B5FFF;--brand-600: #0A4FD6;--brand-700: #0940AC;--brand-800: #0C3585;--brand-900: #0E2F6B;--ink-950: #0A0E1A;--ink-900: #11162A;--ink-800: #1C2438;--ink-700: #2C3650;--ink-600: #475068;--ink-500: #6B7488;--ink-400: #98A0B3;--ink-300: #C4CAD6;--ink-200: #E2E6EE;--ink-100: #EEF1F6;--ink-50: #F6F8FB;--paper: #FFFFFF;--bg: #F3F6FB;--bg-2: #EAF0FA;--success: #12A150;--success-bg: #E7F7EE;--success-ink:#0A6E37;--warning: #B86E00;--warning-bg: #FBF0DC;--warning-ink:#8A5300;--danger: #E03E3E;--danger-bg: #FCEBEB;--danger-ink: #A81F1F;--teal: #0E8A8A;--teal-bg: #E2F5F4;--violet: #6D45D9;--violet-bg: #EFE9FC;--r-xs: 6px;--r-sm: 9px;--r-md: 13px;--r-lg: 18px;--r-xl: 24px;--r-2xl: 32px;--r-full: 999px;--sh-xs: 0 1px 2px rgba(16,24,40,.05);--sh-sm: 0 1px 3px rgba(16,24,40,.07), 0 1px 2px rgba(16,24,40,.04);--sh-md: 0 4px 12px rgba(16,24,40,.08), 0 2px 4px rgba(16,24,40,.04);--sh-lg: 0 12px 28px rgba(16,24,40,.12), 0 4px 8px rgba(16,24,40,.05);--sh-xl: 0 24px 56px rgba(13,42,110,.16), 0 8px 16px rgba(16,24,40,.06);--sh-brand: 0 8px 24px rgba(11,95,255,.28);--font: "Onest", system-ui, -apple-system, "Segoe UI", sans-serif;--mono: "JetBrains Mono", ui-monospace, monospace;--maxw: 1240px;--side-w: 264px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font);color:var(--ink-900);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}::selection{background:var(--brand-200);color:var(--brand-900)}.num{font-family:var(--mono);font-feature-settings:"tnum" 1;letter-spacing:-.02em}:focus-visible{outline:2px solid var(--brand-500);outline-offset:2px}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{background:var(--ink-200);border-radius:99px;border:2px solid transparent;background-clip:content-box}*::-webkit-scrollbar-thumb:hover{background:var(--ink-300);background-clip:content-box}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font);font-weight:600;font-size:15px;line-height:1;padding:12px 20px;border-radius:var(--r-full);border:1px solid transparent;cursor:pointer;text-decoration:none;white-space:nowrap;transition:transform .12s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease,color .18s ease}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--brand-500);color:#fff;box-shadow:var(--sh-brand)}.btn-primary:hover{background:var(--brand-600)}.btn-dark{background:var(--ink-900);color:#fff}.btn-dark:hover{background:var(--ink-800)}.btn-ghost{background:var(--paper);color:var(--ink-800);border-color:var(--ink-200);box-shadow:var(--sh-xs)}.btn-ghost:hover{border-color:var(--ink-300);background:var(--ink-50)}.btn-soft{background:var(--brand-50);color:var(--brand-700)}.btn-soft:hover{background:var(--brand-100)}.btn-lg{padding:16px 28px;font-size:16px}.btn-sm{padding:8px 14px;font-size:13.5px}.badge{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;padding:4px 10px;border-radius:var(--r-full);background:var(--ink-100);color:var(--ink-600)}.badge .dot{width:6px;height:6px;border-radius:50%;background:currentColor}.badge-brand{background:var(--brand-50);color:var(--brand-700)}.badge-success{background:var(--success-bg);color:var(--success-ink)}.badge-warning{background:var(--warning-bg);color:var(--warning-ink)}.badge-danger{background:var(--danger-bg);color:var(--danger-ink)}.badge-teal{background:var(--teal-bg);color:var(--teal)}.badge-violet{background:var(--violet-bg);color:var(--violet)}.app{display:flex;min-height:100vh;background:var(--bg)}.side{width:var(--side-w);flex:none;position:fixed;inset:0 auto 0 0;z-index:60;background:var(--paper);border-right:1px solid var(--ink-100);display:flex;flex-direction:column;transition:transform .25s ease}.side-logo{display:flex;align-items:center;gap:11px;padding:20px 20px 16px;font-weight:800;font-size:18px;letter-spacing:-.02em;color:var(--ink-900);text-decoration:none}.side-logo .mark{width:34px;height:34px;border-radius:10px;background:var(--brand-500);display:grid;place-items:center;box-shadow:var(--sh-brand);flex:none}.side-logo small{color:var(--brand-500)}.side-scroll{flex:1;overflow-y:auto;padding:8px 12px 12px}.nav-group{margin-top:14px}.nav-group-t{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-400);padding:6px 12px}.nav-item{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:10px 12px;border-radius:var(--r-md);border:none;background:none;cursor:pointer;font-family:var(--font);font-size:14.5px;font-weight:500;color:var(--ink-600);margin-bottom:2px;transition:.14s;position:relative}.nav-item:hover{background:var(--ink-50);color:var(--ink-900)}.nav-item.active{background:var(--brand-50);color:var(--brand-700);font-weight:600}.nav-item.active svg{color:var(--brand-600)}.nav-item .nv-badge{margin-left:auto;font-size:11px;font-weight:700;background:var(--brand-500);color:#fff;padding:1px 7px;border-radius:var(--r-full)}.nav-item .nv-badge.muted{background:var(--ink-200);color:var(--ink-600)}.side-foot{padding:12px;border-top:1px solid var(--ink-100)}.side-card{background:linear-gradient(150deg,var(--brand-600),var(--brand-800));border-radius:var(--r-lg);padding:16px;color:#fff}.side-card b{font-size:14px}.side-card p{font-size:12.5px;color:#ffffffc7;margin:4px 0 12px;line-height:1.4}.main{flex:1;min-width:0;margin-left:var(--side-w);display:flex;flex-direction:column}.top{position:sticky;top:0;z-index:40;height:66px;flex:none;background:#ffffffd9;-webkit-backdrop-filter:saturate(180%) blur(12px);backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--ink-100);display:flex;align-items:center;gap:16px;padding:0 24px}.top .menu-btn{display:none;width:40px;height:40px;border-radius:10px;border:1px solid var(--ink-200);background:#fff;align-items:center;justify-content:center;cursor:pointer;flex:none}.searchbar{display:flex;align-items:center;gap:10px;background:var(--ink-50);border:1px solid var(--ink-150, var(--ink-100));border-radius:var(--r-full);padding:9px 16px;width:320px;max-width:38vw;color:var(--ink-400)}.searchbar input{border:none;background:none;outline:none;font-family:var(--font);font-size:14px;color:var(--ink-800);width:100%}.top-right{margin-left:auto;display:flex;align-items:center;gap:10px}.role-switch{display:flex;background:var(--ink-100);border-radius:var(--r-full);padding:3px}.role-switch button{border:none;background:none;cursor:pointer;font-family:var(--font);font-size:13px;font-weight:600;color:var(--ink-500);padding:7px 14px;border-radius:var(--r-full);display:flex;align-items:center;gap:7px;transition:.14s}.role-switch button.on{background:#fff;color:var(--ink-900);box-shadow:var(--sh-xs)}.icon-btn{width:42px;height:42px;border-radius:var(--r-md);border:1px solid var(--ink-200);background:#fff;display:grid;place-items:center;cursor:pointer;color:var(--ink-600);position:relative;transition:.14s}.icon-btn:hover{border-color:var(--ink-300);color:var(--ink-900)}.icon-btn .ping{position:absolute;top:9px;right:9px;width:8px;height:8px;background:var(--danger);border-radius:50%;border:2px solid #fff}.top-user{display:flex;align-items:center;gap:10px;padding:5px 6px 5px 5px;border-radius:var(--r-full);border:1px solid var(--ink-200);background:#fff;cursor:pointer}.top-user .tu-meta{line-height:1.15}.top-user .tu-meta b{font-size:13.5px;display:block}.top-user .tu-meta span{font-size:11.5px;color:var(--ink-400)}.content{padding:28px 24px 48px;max-width:1280px;width:100%;margin:0 auto}.page-h{display:flex;align-items:flex-end;gap:16px;margin-bottom:24px;flex-wrap:wrap}.page-h h1{font-size:28px;letter-spacing:-.03em;margin:0;font-weight:800}.page-h .ph-sub{color:var(--ink-500);font-size:14.5px;margin:6px 0 0}.page-h .ph-actions{margin-left:auto;display:flex;gap:10px;flex-wrap:wrap}.card{background:var(--paper);border:1px solid var(--ink-200);border-radius:var(--r-lg);box-shadow:var(--sh-xs)}.card-p{padding:20px}.card-h{padding:18px 20px;border-bottom:1px solid var(--ink-100);display:flex;align-items:center;gap:12px}.card-h h3{font-size:16px;margin:0;letter-spacing:-.01em}.card-h .ch-act{margin-left:auto}.stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.stat{background:var(--paper);border:1px solid var(--ink-200);border-radius:var(--r-lg);padding:18px 20px;box-shadow:var(--sh-xs)}.stat .si{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;margin-bottom:14px}.stat .sv{font-size:26px;font-weight:800;letter-spacing:-.03em}.stat .sl{font-size:13px;color:var(--ink-500);margin-top:2px}.stat .sd{font-size:12px;font-weight:600;margin-top:8px;display:inline-flex;align-items:center;gap:4px}.sd.up{color:var(--success-ink)}.sd.down{color:var(--danger-ink)}.filters{display:flex;align-items:center;gap:10px;margin-bottom:18px;flex-wrap:wrap}.fchip{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:var(--r-full);border:1px solid var(--ink-200);background:#fff;font-size:13.5px;font-weight:600;color:var(--ink-600);cursor:pointer;transition:.14s;white-space:nowrap}.fchip:hover{border-color:var(--ink-300)}.fchip.on{background:var(--brand-500);border-color:var(--brand-500);color:#fff}.fchip .cnt{font-size:11px;opacity:.7}.fchip.on .cnt{opacity:.85}.req-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.reqc{background:var(--paper);border:1px solid var(--ink-200);border-radius:var(--r-lg);padding:18px;box-shadow:var(--sh-xs);cursor:pointer;transition:.16s;display:flex;flex-direction:column}.reqc:hover{border-color:var(--brand-200);box-shadow:var(--sh-md);transform:translateY(-2px)}.reqc-top{display:flex;align-items:flex-start;gap:12px}.plate-b{font-family:var(--mono);font-weight:700;font-size:13px;background:var(--ink-900);color:#fff;padding:5px 10px;border-radius:7px;letter-spacing:.04em;white-space:nowrap;flex:none}.reqc-car{font-weight:700;font-size:16px;letter-spacing:-.01em}.reqc-city{font-size:13px;color:var(--ink-500);margin-top:2px}.reqc-reward{margin-left:auto;text-align:right;flex:none}.reqc-reward b{font-family:var(--mono);font-weight:700;font-size:18px;color:var(--success-ink)}.reqc-reward span{display:block;font-size:11px;color:var(--ink-400)}.reqc-meta{display:flex;gap:7px;margin-top:14px;flex-wrap:wrap}.reqc-foot{display:flex;align-items:center;gap:10px;margin-top:16px;padding-top:14px;border-top:1px dashed var(--ink-200)}.avstack{display:flex}.avstack .ub-av{margin-left:-8px;border:2px solid #fff}.avstack .ub-av:first-child{margin-left:0}.reqc-foot .ftxt{font-size:12.5px;color:var(--ink-500)}.reqc-foot .fcta{margin-left:auto}.mchip{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;padding:4px 10px;border-radius:var(--r-full);background:var(--ink-100);color:var(--ink-600)}.mchip.hot{background:var(--warning-bg);color:var(--warning-ink)}.ub-av{border-radius:50%;display:inline-grid;place-items:center;color:#fff;font-weight:700;flex:none}.tbl{width:100%;border-collapse:collapse}.tbl th{text-align:left;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-400);padding:12px 16px;border-bottom:1px solid var(--ink-100)}.tbl td{padding:14px 16px;border-bottom:1px solid var(--ink-100);font-size:14px;vertical-align:middle}.tbl tr:last-child td{border-bottom:none}.tbl tbody tr{transition:.12s}.tbl tbody tr:hover{background:var(--ink-50)}.tbl .u-cell{display:flex;align-items:center;gap:11px}.tbl .u-cell b{font-size:14px}.tbl .u-cell span{font-size:12.5px;color:var(--ink-500)}.field{margin-bottom:18px}.field>label{display:block;font-size:13.5px;font-weight:600;color:var(--ink-700);margin-bottom:7px}.field .hint{font-size:12.5px;color:var(--ink-400);margin-top:6px}.input,.select,.textarea{width:100%;font-family:var(--font);font-size:14.5px;color:var(--ink-900);background:#fff;border:1px solid var(--ink-200);border-radius:var(--r-md);padding:12px 14px;transition:.14s}.input:focus,.select:focus,.textarea:focus{border-color:var(--brand-400);box-shadow:0 0 0 3px var(--brand-50);outline:none}.textarea{resize:vertical;min-height:92px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.seg{display:flex;gap:8px;flex-wrap:wrap}.seg-opt{padding:10px 16px;border:1px solid var(--ink-200);border-radius:var(--r-md);background:#fff;font-size:14px;font-weight:600;color:var(--ink-600);cursor:pointer;transition:.14s}.seg-opt:hover{border-color:var(--ink-300)}.seg-opt.on{background:var(--brand-50);border-color:var(--brand-400);color:var(--brand-700)}.drop{border:1.5px dashed var(--ink-300);border-radius:var(--r-md);padding:22px;text-align:center;background:var(--ink-50);cursor:pointer;transition:.14s}.drop:hover{border-color:var(--brand-400);background:var(--brand-50)}.drop .di{width:44px;height:44px;border-radius:12px;background:#fff;color:var(--brand-600);display:grid;place-items:center;margin:0 auto 10px;box-shadow:var(--sh-xs)}.stepper{display:flex;align-items:center;gap:0;margin-bottom:28px}.stp{display:flex;align-items:center;gap:10px}.stp .num{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:700;background:var(--ink-100);color:var(--ink-500);flex:none}.stp.on .num{background:var(--brand-500);color:#fff}.stp.done .num{background:var(--success);color:#fff}.stp .stp-l{font-size:13.5px;font-weight:600;color:var(--ink-500)}.stp.on .stp-l,.stp.done .stp-l{color:var(--ink-900)}.stp-line{flex:1;height:2px;background:var(--ink-150, var(--ink-200));margin:0 14px;min-width:24px}.stp-line.done{background:var(--success)}.detail-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:20px;align-items:start}.offer{display:flex;align-items:center;gap:14px;padding:16px;border:1px solid var(--ink-200);border-radius:var(--r-md);margin-bottom:12px;transition:.14s}.offer:hover{border-color:var(--brand-200);box-shadow:var(--sh-sm)}.offer.best{border-color:var(--brand-300);background:var(--brand-50)}.offer .o-meta b{font-size:14.5px}.offer .o-meta .rt{font-size:12.5px;color:var(--ink-500);display:flex;align-items:center;gap:8px;margin-top:2px}.offer .o-note{font-size:13px;color:var(--ink-600);margin-top:6px}.offer .o-price{margin-left:auto;text-align:right;flex:none}.offer .o-price b{font-family:var(--mono);font-size:17px;font-weight:700}.offer .o-price span{display:block;font-size:11.5px;color:var(--ink-400)}.escrow{background:linear-gradient(155deg,var(--brand-50),#fff);border:1px solid var(--brand-100);border-radius:var(--r-lg);padding:20px}.escrow .eh{display:flex;align-items:center;gap:10px;margin-bottom:16px}.escrow .eh b{font-size:15px}.escrow .eamt{font-family:var(--mono);font-size:30px;font-weight:700;letter-spacing:-.03em;color:var(--brand-700)}.escrow .estep{display:flex;gap:12px;padding:10px 0}.escrow .estep .ec{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;flex:none;font-size:12px;font-weight:700}.escrow .estep .ec.done{background:var(--success);color:#fff}.escrow .estep .ec.now{background:var(--brand-500);color:#fff}.escrow .estep .ec.wait{background:var(--ink-100);color:var(--ink-400)}.escrow .estep .et b{font-size:13.5px;display:block}.escrow .estep .et span{font-size:12px;color:var(--ink-500)}.chat{display:flex;flex-direction:column;height:540px}.chat-scroll{flex:1;overflow-y:auto;padding:18px;display:flex;flex-direction:column;gap:12px;background:var(--bg)}.msg{max-width:76%}.msg .bub{padding:10px 14px;border-radius:16px;font-size:14px;line-height:1.45}.msg.them{align-self:flex-start}.msg.them .bub{background:#fff;border:1px solid var(--ink-200);border-bottom-left-radius:5px}.msg.me{align-self:flex-end}.msg.me .bub{background:var(--brand-500);color:#fff;border-bottom-right-radius:5px}.msg .meta{font-size:11px;color:var(--ink-400);margin-top:4px;padding:0 4px}.msg.me .meta{text-align:right}.msg.sys{align-self:center;font-size:12px;color:var(--ink-500);background:var(--ink-100);padding:5px 12px;border-radius:var(--r-full)}.chat-input{display:flex;align-items:center;gap:10px;padding:14px;border-top:1px solid var(--ink-100);background:#fff}.chat-input input{flex:1;border:1px solid var(--ink-200);border-radius:var(--r-full);padding:11px 16px;font-family:var(--font);font-size:14px;outline:none}.chat-input input:focus{border-color:var(--brand-400)}.chat-send{width:42px;height:42px;border-radius:50%;background:var(--brand-500);color:#fff;border:none;display:grid;place-items:center;cursor:pointer;flex:none}.irow{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--ink-100)}.irow:last-child{border-bottom:none}.irow .il{font-size:13.5px;color:var(--ink-500)}.irow .iv{margin-left:auto;font-size:14px;font-weight:600;text-align:right}.notif{display:flex;gap:14px;padding:16px;border-radius:var(--r-md);cursor:pointer;transition:.12s}.notif:hover{background:var(--ink-50)}.notif.unread{background:var(--brand-50)}.notif .ni{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;flex:none}.notif b{font-size:14.5px}.notif p{font-size:13px;color:var(--ink-600);margin:3px 0 0}.notif .nt{font-size:12px;color:var(--ink-400);margin-left:auto;white-space:nowrap;flex:none}.pbar{height:8px;background:var(--ink-100);border-radius:99px;overflow:hidden}.pbar>i{display:block;height:100%;background:var(--brand-500);border-radius:99px}.empty{text-align:center;padding:56px 24px;color:var(--ink-400)}.empty .ei{width:64px;height:64px;border-radius:18px;background:var(--ink-50);display:grid;place-items:center;margin:0 auto 16px;color:var(--ink-300)}.empty b{font-size:16px;color:var(--ink-700);display:block}.empty p{font-size:14px;margin:6px 0 0}.kb-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.kb{background:var(--paper);border:1px solid var(--ink-200);border-radius:var(--r-lg);padding:22px;cursor:pointer;transition:.15s}.kb:hover{border-color:var(--brand-200);box-shadow:var(--sh-sm);transform:translateY(-2px)}.kb .ki{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;margin-bottom:14px}.kb b{font-size:16px}.kb p{font-size:13.5px;color:var(--ink-500);margin:6px 0 0;line-height:1.5}.kb .kmeta{font-size:12.5px;color:var(--ink-400);margin-top:14px}.rsa-result{display:flex;align-items:center;gap:16px;padding:20px;border-radius:var(--r-lg);background:var(--success-bg);border:1px solid #bfe6cd}.rsa-result .ri{width:52px;height:52px;border-radius:14px;background:var(--success);color:#fff;display:grid;place-items:center;flex:none}.barchart{display:flex;align-items:flex-end;gap:12px;height:200px;padding-top:10px}.barchart .bcol{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;height:100%;justify-content:flex-end}.barchart .bcol .bar{width:100%;max-width:42px;background:var(--brand-500);border-radius:7px 7px 0 0;transition:height .6s ease;min-height:4px}.barchart .bcol .bar.alt{background:var(--brand-200)}.barchart .bcol .bl{font-size:12px;color:var(--ink-400)}.scrim{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#10182873;z-index:55}.modal-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#10182880;z-index:90;display:grid;place-items:center;padding:20px;animation:fadein .15s ease}@keyframes fadein{0%{opacity:0}to{opacity:1}}.modal{background:var(--paper);border-radius:var(--r-xl);box-shadow:var(--sh-xl);width:100%;max-width:460px;overflow:hidden;animation:pop .18s ease}@keyframes pop{0%{transform:scale(.96);opacity:.6}to{transform:scale(1);opacity:1}}.modal-h{display:flex;align-items:center;gap:12px;padding:20px 22px;border-bottom:1px solid var(--ink-100)}.modal-h h3{font-size:18px;margin:0;letter-spacing:-.02em}.modal-h .mclose{margin-left:auto;width:34px;height:34px;border-radius:9px;border:none;background:var(--ink-50);color:var(--ink-500);display:grid;place-items:center;cursor:pointer}.modal-b{padding:22px}.modal-f{padding:16px 22px;border-top:1px solid var(--ink-100);display:flex;gap:10px}.msgs{display:grid;grid-template-columns:340px 1fr;gap:0;height:calc(100vh - 122px);min-height:540px;background:var(--paper);border:1px solid var(--ink-200);border-radius:var(--r-lg);box-shadow:var(--sh-xs);overflow:hidden}.conv-pane{border-right:1px solid var(--ink-100);display:flex;flex-direction:column;min-width:0}.conv-search{padding:14px;border-bottom:1px solid var(--ink-100)}.conv-search .searchbar{display:flex;width:100%;max-width:none}.conv-list{flex:1;overflow-y:auto}.conv-item{display:flex;gap:12px;padding:13px 16px;cursor:pointer;border-bottom:1px solid var(--ink-50);transition:.12s;position:relative}.conv-item:hover{background:var(--ink-50)}.conv-item.on{background:var(--brand-50)}.conv-item.on:before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;background:var(--brand-500);border-radius:0 3px 3px 0}.conv-av{position:relative;flex:none}.conv-av .onl{position:absolute;right:-1px;bottom:-1px;width:11px;height:11px;border-radius:50%;background:var(--success);border:2px solid #fff}.conv-main{flex:1;min-width:0}.conv-main .cm-top{display:flex;align-items:center;gap:8px}.conv-main .cm-top b{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conv-main .cm-top .cm-time{margin-left:auto;font-size:11.5px;color:var(--ink-400);flex:none}.conv-main .cm-prev{font-size:12.5px;color:var(--ink-500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:3px}.conv-main .cm-ctx{font-size:11.5px;color:var(--ink-400);margin-top:3px;display:flex;align-items:center;gap:5px}.conv-unread{flex:none;align-self:center;min-width:20px;height:20px;padding:0 6px;border-radius:99px;background:var(--brand-500);color:#fff;font-size:11px;font-weight:700;display:grid;place-items:center}.thread-pane{display:flex;flex-direction:column;min-width:0}.thread-head{display:flex;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--ink-100);flex:none}.thread-head .th-back{display:none}.thread-ctx{margin-left:auto;display:flex;align-items:center;gap:8px}.msgs .chat{height:auto;flex:1;min-height:0}@media (max-width: 760px){.msgs{grid-template-columns:1fr}.msgs.show-thread .conv-pane{display:none}.msgs:not(.show-thread) .thread-pane{display:none}.thread-head .th-back{display:grid}}.feed-summary{display:flex;gap:0;background:var(--paper);border:1px solid var(--ink-200);border-radius:var(--r-lg);box-shadow:var(--sh-xs);overflow:hidden;margin-bottom:18px}.feed-summary .fs{flex:1;padding:16px 22px;border-right:1px solid var(--ink-100)}.feed-summary .fs:last-child{border-right:none}.feed-summary .fs .fsl{font-size:12.5px;color:var(--ink-500);display:flex;align-items:center;gap:7px}.feed-summary .fs .fsv{font-size:24px;font-weight:800;letter-spacing:-.03em;margin-top:4px}.feed{display:flex;flex-direction:column;gap:12px}.feedrow{display:flex;align-items:center;gap:20px;background:var(--paper);border:1px solid var(--ink-200);border-radius:var(--r-lg);padding:16px 20px;box-shadow:var(--sh-xs);cursor:pointer;transition:.15s;position:relative}.feedrow:hover{border-color:var(--brand-200);box-shadow:var(--sh-md)}.feedrow.fresh:before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;border-radius:0 3px 3px 0;background:var(--success)}.feedrow .fr-info{flex:1;min-width:0}.feedrow .fr-title{display:flex;align-items:center;gap:12px}.feedrow .fr-title b{font-size:16.5px;letter-spacing:-.01em}.feedrow .fr-title .fr-city{font-size:12.5px;color:var(--ink-500)}.feedrow .fr-chips{display:flex;gap:6px;margin-top:9px;flex-wrap:wrap}.feedrow .fr-comp{flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:5px;min-width:130px}.feedrow .fr-comp .frc-off{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--ink-600);font-weight:600}.feedrow .fr-comp .frc-time{font-size:12px;color:var(--ink-400)}.feedrow .fr-reward{flex:none;text-align:right;min-width:130px}.feedrow .fr-reward b{font-family:var(--mono);font-size:21px;font-weight:700;color:var(--success-ink);letter-spacing:-.02em}.feedrow .fr-reward span{display:block;font-size:11px;color:var(--ink-400)}.feedrow .fr-cta{flex:none}@media (max-width: 820px){.feed-summary{flex-wrap:wrap}.feed-summary .fs{flex:1 1 50%;border-bottom:1px solid var(--ink-100)}.feedrow{flex-wrap:wrap;gap:12px}.feedrow .fr-info{flex:1 1 100%}.feedrow .fr-reward,.feedrow .fr-comp{min-width:0;text-align:left;align-items:flex-start}.feedrow .fr-comp{order:3}.feedrow .fr-reward{order:2}.feedrow .fr-cta{order:4;margin-left:auto}}[data-density=compact] .content{padding-top:20px;padding-bottom:36px}[data-density=compact] .card-p{padding:15px}[data-density=compact] .nav-item{padding-top:8px;padding-bottom:8px}[data-density=compact] .stat{padding:14px 16px}[data-density=compact] .reqc{padding:14px}[data-density=compact] .tbl td{padding-top:10px;padding-bottom:10px}[data-density=comfy] .content{padding-top:36px}[data-density=comfy] .card-p{padding:26px}[data-density=comfy] .nav-item{padding-top:12px;padding-bottom:12px}[data-density=comfy] .stat{padding:24px 26px}[data-density=comfy] .reqc{padding:22px}[data-density=comfy] .tbl td{padding-top:18px;padding-bottom:18px}@media (max-width: 1100px){.stats-row{grid-template-columns:1fr 1fr}.detail-grid{grid-template-columns:1fr}.kb-grid{grid-template-columns:1fr 1fr}}@media (max-width: 860px){.side{transform:translate(-100%);box-shadow:var(--sh-xl)}.app.nav-open .side{transform:translate(0)}.app.nav-open .scrim{display:block}.main{margin-left:0}.top .menu-btn{display:flex}.searchbar{display:none}.req-grid{grid-template-columns:1fr}.role-switch button span.rs-l{display:none}}@media (max-width: 640px){.stats-row{grid-template-columns:1fr 1fr;gap:12px}.kb-grid,.form-grid{grid-template-columns:1fr}.content{padding:20px 16px 40px}.page-h h1{font-size:23px}.top-user .tu-meta{display:none}.tbl-wrap{overflow-x:auto}.tbl{min-width:640px}}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}input[type=range]{height:6px;border-radius:99px;background:var(--ink-200)}#root{min-height:100vh}.auth{display:grid;grid-template-columns:1.05fr 1fr;min-height:100vh;background:var(--bg)}.auth-brand{position:relative;overflow:hidden;background:linear-gradient(155deg,var(--brand-700) 0%,var(--brand-900) 60%,#081d4d 100%);color:#fff;padding:48px 56px;display:flex;flex-direction:column}.auth-brand:before{content:"";position:absolute;inset:-30% -10% auto auto;width:560px;height:560px;background:radial-gradient(circle at center,rgba(91,130,255,.55),transparent 62%);filter:blur(8px);pointer-events:none}.auth-brand:after{content:"";position:absolute;inset:auto auto -25% -15%;width:460px;height:460px;background:radial-gradient(circle at center,rgba(14,124,123,.35),transparent 65%);pointer-events:none}.auth-logo{display:flex;align-items:center;gap:11px;font-weight:800;font-size:19px;letter-spacing:-.02em;color:#fff;text-decoration:none;position:relative;z-index:2}.auth-logo .mark{width:36px;height:36px;border-radius:11px;background:#ffffff29;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;flex:none}.auth-logo small{color:var(--brand-200)}.auth-brand-body{position:relative;z-index:2;margin-top:auto}.auth-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600;letter-spacing:.02em;background:#ffffff1f;border:1px solid rgba(255,255,255,.16);color:#fff;padding:6px 13px;border-radius:999px;margin-bottom:22px}.auth-eyebrow b{color:var(--brand-200);font-weight:800}.auth-brand h1{font-size:38px;line-height:1.1;letter-spacing:-.035em;font-weight:800;margin:0 0 16px}.auth-brand h1 em{font-style:normal;color:var(--brand-200)}.auth-brand .lead{font-size:15.5px;line-height:1.55;color:#ffffffc7;max-width:460px;margin:0 0 30px}.auth-feats{display:flex;flex-direction:column;gap:14px;margin-bottom:34px}.auth-feat{display:flex;align-items:flex-start;gap:13px}.auth-feat .fi{width:38px;height:38px;border-radius:11px;background:#ffffff21;display:grid;place-items:center;flex:none}.auth-feat b{font-size:14.5px;display:block}.auth-feat span{font-size:13px;color:#ffffffb3}.auth-trust{display:flex;gap:30px;padding-top:26px;border-top:1px solid rgba(255,255,255,.14);position:relative;z-index:2}.auth-trust .t b{font-family:var(--mono);font-size:24px;font-weight:700;letter-spacing:-.03em;display:block}.auth-trust .t span{font-size:12.5px;color:#ffffffa8}.auth-main{display:flex;align-items:center;justify-content:center;padding:40px 24px}.auth-card{width:100%;max-width:408px}.auth-card .mobile-logo{display:none}.auth-head{margin-bottom:24px}.auth-head h2{font-size:26px;letter-spacing:-.03em;font-weight:800;margin:0 0 6px}.auth-head p{font-size:14.5px;color:var(--ink-500);margin:0}.auth-tabs{display:flex;background:var(--ink-100);border-radius:var(--r-full);padding:4px;margin-bottom:24px}.auth-tabs button{flex:1;border:none;background:none;cursor:pointer;font-family:var(--font);font-size:14px;font-weight:600;color:var(--ink-500);padding:10px;border-radius:var(--r-full);transition:.15s}.auth-tabs button.on{background:#fff;color:var(--ink-900);box-shadow:var(--sh-xs)}.auth-form .field{margin-bottom:16px}.auth-input-wrap{position:relative}.auth-input-wrap>svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--ink-400);pointer-events:none}.auth-form .input{padding-left:42px;height:48px}.auth-form .input.no-icon{padding-left:14px}.auth-pass-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:32px;height:32px;border:none;background:none;color:var(--ink-400);display:grid;place-items:center;cursor:pointer;border-radius:8px}.auth-pass-toggle:hover{color:var(--ink-700);background:var(--ink-50)}.auth-roles{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.auth-role{border:1px solid var(--ink-200);border-radius:var(--r-md);background:#fff;padding:12px 8px;cursor:pointer;text-align:center;transition:.14s;display:flex;flex-direction:column;align-items:center;gap:6px}.auth-role:hover{border-color:var(--ink-300)}.auth-role.on{border-color:var(--brand-400);background:var(--brand-50);color:var(--brand-700)}.auth-role .ri{width:34px;height:34px;border-radius:10px;background:var(--ink-100);color:var(--ink-500);display:grid;place-items:center}.auth-role.on .ri{background:var(--brand-500);color:#fff}.auth-role b{font-size:12.5px}.auth-row{display:flex;align-items:center;justify-content:space-between;margin:4px 0 20px}.auth-check{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--ink-600);cursor:pointer;-webkit-user-select:none;user-select:none}.auth-check input{width:16px;height:16px;accent-color:var(--brand-500)}.auth-link{font-size:13.5px;color:var(--brand-600);font-weight:600;text-decoration:none;cursor:pointer;background:none;border:none;font-family:var(--font)}.auth-link:hover{color:var(--brand-700);text-decoration:underline}.auth-submit{width:100%;height:50px;font-size:15.5px}.auth-error{display:flex;align-items:center;gap:9px;background:var(--danger-bg);color:var(--danger-ink);border:1px solid #f3c9c9;font-size:13.5px;padding:11px 14px;border-radius:var(--r-md);margin-bottom:16px}.auth-sep{display:flex;align-items:center;gap:12px;margin:22px 0;color:var(--ink-400);font-size:12.5px}.auth-sep:before,.auth-sep:after{content:"";flex:1;height:1px;background:var(--ink-200)}.auth-demo{background:var(--ink-50);border:1px solid var(--ink-100);border-radius:var(--r-md);padding:14px}.auth-demo-t{font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-400);margin-bottom:10px}.auth-demo-grid{display:flex;gap:8px;flex-wrap:wrap}.auth-demo-btn{flex:1;min-width:0;display:flex;align-items:center;gap:8px;border:1px solid var(--ink-200);background:#fff;border-radius:var(--r-sm);padding:9px 11px;cursor:pointer;transition:.14s;font-family:var(--font);text-align:left}.auth-demo-btn:hover{border-color:var(--brand-300);background:var(--brand-50)}.auth-demo-btn b{font-size:12.5px;display:block;color:var(--ink-800)}.auth-demo-btn span{font-size:11px;color:var(--ink-400)}.auth-foot{text-align:center;font-size:12.5px;color:var(--ink-400);margin-top:26px}.auth-foot a{color:var(--ink-500);text-decoration:none}.auth-foot a:hover{color:var(--brand-600)}@media (max-width: 900px){.auth{grid-template-columns:1fr}.auth-brand{display:none}.auth-card .mobile-logo{display:flex;align-items:center;gap:10px;justify-content:center;margin-bottom:28px;font-weight:800;font-size:19px;color:var(--ink-900);text-decoration:none}.auth-card .mobile-logo .mark{width:34px;height:34px;border-radius:10px;background:var(--brand-500);display:grid;place-items:center;box-shadow:var(--sh-brand)}.auth-card .mobile-logo small{color:var(--brand-500)}}html,body,#root{min-height:100vh}body{margin:0;background:var(--bg)}@keyframes pulse{0%{box-shadow:0 0 #12a15073}70%{box-shadow:0 0 0 6px #12a15000}to{box-shadow:0 0 #12a15000}}
