.avatar[data-v-63e79a6b]{color:#07130d;-webkit-user-select:none;user-select:none;border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.avatar.md[data-v-63e79a6b]{width:40px;height:40px;font-size:16px}.avatar.sm[data-v-63e79a6b]{width:30px;height:30px;font-size:13px}.avatar.lg[data-v-63e79a6b]{width:56px;height:56px;font-size:22px}.nav[data-v-2d6258c2]{z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);background:#0a0f0cdb;position:sticky;top:0}.nav-inner[data-v-2d6258c2]{max-width:var(--page-max);height:var(--nav-h);justify-content:space-between;align-items:center;gap:16px;margin:0 auto;padding:0 20px;display:flex}.brand[data-v-2d6258c2]{color:var(--ink);font-family:var(--serif);flex:none;align-items:center;gap:8px;font-size:15px;font-weight:700;display:flex}.brand-mark[data-v-2d6258c2]{border-radius:var(--r-sm);background:var(--green);width:26px;height:26px;color:var(--green-ink);justify-content:center;align-items:center;font-size:12px;font-weight:800;display:inline-flex}.links[data-v-2d6258c2]{align-items:center;gap:4px;display:flex}.links a[data-v-2d6258c2]:not(.btn){border-radius:var(--r-md);color:var(--ink-2);padding:6px 10px;font-size:14px}.links a[data-v-2d6258c2]:not(.btn):hover{color:var(--ink);background:var(--card-2)}.links a.router-link-active[data-v-2d6258c2]:not(.btn){color:var(--green)}.links a.btn[data-v-2d6258c2]{padding:6px 14px}.me[data-v-2d6258c2]{align-items:center;gap:8px;display:inline-flex}.divider[data-v-2d6258c2]{background:var(--line-2);width:1px;height:20px;margin:0 6px}.burger[data-v-2d6258c2]{border:1px solid var(--line-2);border-radius:var(--r-md);cursor:pointer;background:0 0;flex-direction:column;justify-content:center;gap:4px;width:36px;height:36px;padding:0 8px;display:none}.burger span[data-v-2d6258c2]{background:var(--ink-2);height:1.5px;display:block}@media (width<=760px){.burger[data-v-2d6258c2]{display:flex}.links[data-v-2d6258c2]{top:var(--nav-h);background:var(--card);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:2px;padding:10px 16px 16px;display:none;position:absolute;left:0;right:0}.links.open[data-v-2d6258c2]{display:flex}.links a[data-v-2d6258c2]:not(.btn){padding:10px 12px}.divider[data-v-2d6258c2]{width:auto;height:1px;margin:6px 0}}.footer[data-v-e5189596]{width:100%;max-width:var(--page-max);border-top:1px solid var(--line);text-align:center;margin:0 auto;padding:22px 20px 44px}.footer.wide[data-v-e5189596]{max-width:var(--page-wide)}.main[data-v-e5189596]{font-family:var(--serif);color:var(--ink-2);letter-spacing:.04em;font-size:13px}.sub[data-v-e5189596]{font-family:var(--mono);color:var(--ink-3);letter-spacing:.05em;word-break:keep-all;margin-top:6px;font-size:11.5px}:root{--paper:#0a0f0c;--card:#101712;--card-2:#141d16;--ink:#e9f1eb;--ink-2:#a6b7ab;--ink-3:#788b7f;--line:#1e2a22;--line-2:#2c3b30;--green:#34e39b;--green-dark:#1fc383;--green-ink:#05130c;--green-bg:#34e39b1a;--green-line:#34e39b4d;--coral:#ff7a59;--coral-bg:#ff7a591f;--warn:#e8b44d;--warn-bg:#e8b44d1f;--mono:"JetBrains Mono", ui-monospace, "SF Mono", Consolas, "Liberation Mono", monospace;--serif:"JetBrains Mono", "PingFang SC", "HarmonyOS Sans SC", "MiSans", "Source Han Sans SC", "Microsoft YaHei", sans-serif;--sans:-apple-system, "PingFang SC", "HarmonyOS Sans SC", "MiSans", "Source Han Sans SC", "Microsoft YaHei", "Segoe UI", sans-serif;--r-sm:5px;--r-md:9px;--r-lg:13px;--shadow-1:0 2px 10px #00000059;--shadow-2:0 12px 36px #00000073;--glow:0 0 0 1px var(--green-line), 0 10px 34px #34e39b1a;--ease:cubic-bezier(.16, 1, .3, 1);--dur-fast:.16s;--dur-base:.32s;--dur-slow:.64s;--page-max:1080px;--page-wide:1240px;--nav-h:60px}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono-400.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono-500.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono-700.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{font-family:var(--sans);color:var(--ink);background:var(--paper);letter-spacing:.01em;-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.7}:where(a){color:var(--green);text-decoration:none}:where(a:hover){color:var(--green-dark)}img{max-width:100%;display:block}body:before{content:"";pointer-events:none;z-index:0;background-image:linear-gradient(#34e39b08 1px,#0000 1px),linear-gradient(90deg,#34e39b08 1px,#0000 1px),linear-gradient(#34e39b0b 1px,#0000 1px),linear-gradient(90deg,#34e39b0b 1px,#0000 1px);background-size:28px 28px,28px 28px,140px 140px,140px 140px;position:fixed;inset:0}body:after{content:"";pointer-events:none;z-index:0;opacity:.05;mix-blend-mode:overlay;background:radial-gradient(64rem 38rem at 82% -12%,#34e39b1a,#0000 62%),radial-gradient(46rem 32rem at -8% 14%,#34e39b0d,#0000 58%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E");position:fixed;inset:0}#app{z-index:1;flex-direction:column;min-height:100dvh;display:flex;position:relative}@supports not (min-height:100dvh){#app{min-height:100vh}}.page{width:100%;max-width:var(--page-max);flex:1 0 auto;margin:0 auto;padding:40px 20px 52px}.page.wide{max-width:var(--page-wide)}.page-head{margin-bottom:28px}.page-head h1{font-family:var(--serif);letter-spacing:-.01em;font-size:26px;font-weight:700}.page-head .sub{color:var(--ink-2);margin-top:6px;font-size:14px}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:20px}.card+.card{margin-top:16px}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.row.between{justify-content:space-between}.muted{color:var(--ink-2)}.dim{color:var(--ink-3);font-size:13px}.btn{border-radius:var(--r-md);background:var(--green);color:var(--green-ink);font:inherit;cursor:pointer;transition:transform var(--dur-fast) var(--ease), background var(--dur-fast) var(--ease);border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:9px 18px;font-size:14px;font-weight:600;display:inline-flex}.btn:hover:not(:disabled){background:var(--green-dark)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.outline{border-color:var(--line-2);color:var(--ink);background:0 0}.btn.outline:hover:not(:disabled){border-color:var(--green-line);background:var(--green-bg);color:var(--ink)}.btn.ghost{color:var(--ink-2);background:0 0;border-color:#0000}.btn.ghost:hover:not(:disabled){color:var(--ink);background:var(--card-2)}.btn.danger{background:var(--coral);color:#1a0d08}.btn.danger:hover:not(:disabled){background:#ff6543}.btn.sm{padding:6px 12px;font-size:13px}.field{margin-bottom:16px}.field>label{color:var(--ink-2);margin-bottom:6px;font-size:13px;display:block}.field .hint{color:var(--ink-3);margin-top:5px;font-size:12px}.field.invalid>label{color:var(--coral)}.field.invalid input,.field.invalid textarea,.field.invalid select,.field.invalid input:focus,.field.invalid textarea:focus,.field.invalid select:focus{border-color:var(--coral)}input[type=text],input[type=password],input[type=url],input[type=datetime-local],textarea,select{background:var(--card-2);border:1px solid var(--line-2);border-radius:var(--r-md);width:100%;color:var(--ink);font:inherit;transition:border-color var(--dur-fast) var(--ease);padding:10px 12px;font-size:14px}input:focus,textarea:focus,select:focus{border-color:var(--green-line);outline:none}input::placeholder,textarea::placeholder{color:var(--ink-3)}textarea{resize:vertical;min-height:96px;line-height:1.7}input:disabled,textarea:disabled,select:disabled{opacity:.6;cursor:not-allowed}.error{color:var(--coral);background:var(--coral-bg);border-radius:var(--r-md);border:1px solid #ff7a594d;margin:12px 0;padding:9px 12px;font-size:13.5px}.ok{color:var(--green);background:var(--green-bg);border:1px solid var(--green-line);border-radius:var(--r-md);margin:12px 0;padding:9px 12px;font-size:13.5px}.empty,.loading{color:var(--ink-2);text-align:center;padding:48px 20px;font-size:14px}.tag{background:var(--green-bg);color:var(--green);border:1px solid var(--green-line);border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.tag.gray{background:var(--card-2);color:var(--ink-2);border-color:var(--line-2)}.tag.warn{background:var(--warn-bg);color:var(--warn);border-color:#e8b44d4d}.tag.coral{background:var(--coral-bg);color:var(--coral);border-color:#ff7a594d}.table-wrap{border:1px solid var(--line);border-radius:var(--r-lg);overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13.5px}th,td{text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:11px 14px}th{color:var(--ink-2);background:var(--card-2);font-size:12.5px;font-weight:600}tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--card-2)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
