.mascot-fig[data-v-6547eb71]{position:relative;display:inline-block;flex-shrink:0;animation:mf-breathe 3.8s ease-in-out infinite}.mf-part[data-v-6547eb71]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:fill;pointer-events:none;-webkit-user-select:none;user-select:none;transform-box:fill-box}.mf-left_eye[data-v-6547eb71]{animation:mf-blink-6547eb71 6.2s ease-in-out infinite}.mf-right_eye[data-v-6547eb71]{animation:mf-blink-6547eb71 6.2s ease-in-out infinite;animation-delay:.05s}@keyframes mf-blink-6547eb71{0%,91%,to{transform:scaleY(1)}93%{transform:scaleY(.08)}95.5%{transform:scaleY(1)}}.mf-body[data-v-6547eb71]{animation:mf-body-6547eb71 3.4s ease-in-out infinite}@keyframes mf-body-6547eb71{0%,to{transform:translateY(0) scaleY(1)}50%{transform:translateY(-.35%) scaleY(1.012)}}.mf-head[data-v-6547eb71]{animation:mf-head-6547eb71 4.6s ease-in-out infinite}@keyframes mf-head-6547eb71{0%,to{transform:rotate(0) translateY(0)}50%{transform:rotate(1.2deg) translateY(-.4%)}}.mf-left_arm[data-v-6547eb71]{animation:mf-arm-l-6547eb71 5.1s ease-in-out infinite}@keyframes mf-arm-l-6547eb71{0%,to{transform:rotate(0)}50%{transform:rotate(-2deg)}}.mf-right_arm[data-v-6547eb71]{animation:mf-arm-r-6547eb71 4.4s ease-in-out infinite}@keyframes mf-arm-r-6547eb71{0%,to{transform:rotate(0)}50%{transform:rotate(2.2deg)}}.mf-tablet[data-v-6547eb71]{animation:mf-tablet-6547eb71 4.2s ease-in-out infinite}@keyframes mf-tablet-6547eb71{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-.3%) rotate(-1deg)}}.thinking[data-v-6547eb71]{animation:mf-th-bob-6547eb71 1.15s ease-in-out infinite}@keyframes mf-th-bob-6547eb71{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-.5%) rotate(-1.2deg)}}.thinking .mf-body[data-v-6547eb71]{animation:mf-th-body-6547eb71 1.15s ease-in-out infinite}@keyframes mf-th-body-6547eb71{0%,to{transform:rotate(0)}50%{transform:rotate(-2deg)}}.thinking .mf-head[data-v-6547eb71]{animation:mf-th-head-6547eb71 1.6s ease-in-out infinite}@keyframes mf-th-head-6547eb71{0%,to{transform:rotate(0)}50%{transform:rotate(4.5deg) translateY(-.5%)}}.thinking .mf-left_arm[data-v-6547eb71]{animation:mf-th-la-6547eb71 1.6s ease-in-out infinite}@keyframes mf-th-la-6547eb71{0%,to{transform:rotate(0)}50%{transform:rotate(-7deg)}}.thinking .mf-right_arm[data-v-6547eb71]{animation:mf-th-ra-6547eb71 1.6s ease-in-out infinite}@keyframes mf-th-ra-6547eb71{0%,to{transform:rotate(0)}50%{transform:rotate(7deg)}}.thinking .mf-left_eye[data-v-6547eb71],.thinking .mf-right_eye[data-v-6547eb71]{animation:mf-th-eye-6547eb71 2.4s ease-in-out infinite}@keyframes mf-th-eye-6547eb71{0%,to{transform:translateY(0) scaleY(1)}50%{transform:translateY(-.5%) scaleY(.86)}}.thinking .mf-tablet[data-v-6547eb71]{animation:mf-th-tablet-6547eb71 1.1s ease-in-out infinite}@keyframes mf-th-tablet-6547eb71{0%,to{transform:translateY(0) rotate(0);filter:brightness(1)}50%{transform:translateY(-.4%) rotate(-1.5deg);filter:brightness(1.12)}}.thinking .mf-mouth[data-v-6547eb71],.talking .mf-mouth[data-v-6547eb71]{animation:mf-mouth-6547eb71 .42s ease-in-out infinite}@keyframes mf-mouth-6547eb71{0%,to{transform:scaleY(1)}50%{transform:scaleY(1.4)}}.talking[data-v-6547eb71]{animation:mf-talking-6547eb71 .9s ease-in-out infinite}@keyframes mf-talking-6547eb71{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-.35%) rotate(1deg)}}.talking .mf-right_arm[data-v-6547eb71]{animation:mf-arm-talk-6547eb71 .9s ease-in-out infinite}@keyframes mf-arm-talk-6547eb71{0%,to{transform:rotate(0)}50%{transform:rotate(6deg)}}.confirm[data-v-6547eb71]{animation:mf-cf-pulse-6547eb71 1.5s ease-in-out infinite}@keyframes mf-cf-pulse-6547eb71{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.confirm .mf-head[data-v-6547eb71]{animation:mf-cf-head-6547eb71 1.5s ease-in-out infinite}@keyframes mf-cf-head-6547eb71{0%,to{transform:rotate(0)}50%{transform:rotate(-6deg) translateY(-.35%)}}.confirm .mf-right_arm[data-v-6547eb71]{animation:mf-cf-raise-6547eb71 1.5s ease-in-out infinite}@keyframes mf-cf-raise-6547eb71{0%,to{transform:rotate(0)}50%{transform:rotate(-26deg)}}.confirm .mf-left_arm[data-v-6547eb71]{animation:mf-cf-la-6547eb71 1.5s ease-in-out infinite}@keyframes mf-cf-la-6547eb71{0%,to{transform:rotate(0)}50%{transform:rotate(10deg)}}.confirm .mf-left_eye[data-v-6547eb71],.confirm .mf-right_eye[data-v-6547eb71]{animation:mf-cf-eye-6547eb71 1.5s ease-in-out infinite}@keyframes mf-cf-eye-6547eb71{0%,to{transform:scale(1)}50%{transform:scale(1.07)}}.greet[data-v-6547eb71]{animation:mf-greet-bounce-6547eb71 .7s ease-in-out 2}@keyframes mf-greet-bounce-6547eb71{0%,to{transform:translateY(0) scale(1)}40%{transform:translateY(-.9%) scale(1.04,.97)}70%{transform:translateY(0) scale(.97,1.03)}}.greet .mf-right_arm[data-v-6547eb71]{animation:mf-wave-6547eb71 .36s ease-in-out 6}@keyframes mf-wave-6547eb71{0%,to{transform:rotate(-8deg)}50%{transform:rotate(-30deg)}}.greet .mf-head[data-v-6547eb71]{animation:mf-greet-head-6547eb71 .7s ease-in-out 2}@keyframes mf-greet-head-6547eb71{0%,to{transform:rotate(0)}50%{transform:rotate(4deg) translateY(-.35%)}}.greet .mf-left_eye[data-v-6547eb71],.greet .mf-right_eye[data-v-6547eb71]{animation:mf-blink-6547eb71 3s ease-in-out infinite}.mc-mask[data-v-887dfb61]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:210;display:flex;align-items:center;justify-content:center;padding:24px;background:#00000073;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.mc-card[data-v-887dfb61]{display:flex;align-items:flex-end;gap:4px;max-width:560px}.mc-fig[data-v-887dfb61]{flex-shrink:0;margin-bottom:6px}.mc-bubble[data-v-887dfb61]{position:relative;flex:1;padding:16px 18px;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 12px 32px #0000002e}.mc-bubble[data-v-887dfb61]:before{content:"";position:absolute;left:-7px;bottom:34px;width:12px;height:12px;background:var(--bg-panel);border-left:1px solid var(--border);border-bottom:1px solid var(--border);transform:rotate(45deg)}.mc-title[data-v-887dfb61]{font-size:15px;font-weight:600;margin-bottom:6px}.mc-body[data-v-887dfb61]{font-size:13px;color:var(--text-secondary);line-height:1.7}.mc-streak[data-v-887dfb61]{margin-top:4px;font-size:12px;color:var(--text-muted)}.mc-acts[data-v-887dfb61]{display:flex;gap:8px;margin-top:14px}.mc-fade-enter-active[data-v-887dfb61],.mc-fade-leave-active[data-v-887dfb61]{transition:opacity .18s ease}.mc-fade-enter-from[data-v-887dfb61],.mc-fade-leave-to[data-v-887dfb61]{opacity:0}.toast{position:fixed;top:22px;left:50%;transform:translate(-50%);z-index:2000;display:inline-flex;align-items:center;gap:8px;max-width:min(560px,calc(100vw - 40px));padding:9px 16px;border-radius:var(--radius-full);background:var(--toast-bg);color:var(--toast-fg);border:1px solid var(--toast-border);box-shadow:var(--shadow-lg);font-size:13px;line-height:1.5;pointer-events:none}.toast-icon{display:inline-flex;flex-shrink:0}.toast-error{--toast-bg: var(--danger-soft);--toast-fg: var(--danger);--toast-border: color-mix(in srgb, var(--danger) 32%, transparent)}.toast-enter-active,.toast-leave-active{transition:opacity .2s ease,transform .2s ease}.toast-enter-from,.toast-leave-to{opacity:0;transform:translate(-50%,-10px)}.dlg-msg[data-v-000553e7]{margin:0 0 14px;font-size:14px;line-height:1.7;color:var(--text);white-space:pre-wrap;word-break:break-word}.dlg-actions[data-v-000553e7]{display:flex;justify-content:flex-end;gap:8px}.fade-enter-active,.fade-leave-active{transition:opacity .15s ease}.fade-enter-active{animation:fade-in .15s ease both}.fade-leave-active{animation:fade-out .15s ease both}.fade-enter-from,.fade-leave-to{opacity:0}@keyframes fade-out{0%{opacity:1}to{opacity:0}}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"tnum" 1}:root{--c-accent: #16a34a;--c-accent-strong: #15803d}[data-accent=blue]{--c-accent: #2563eb;--c-accent-strong: #1d4ed8}[data-accent=purple]{--c-accent: #7c3aed;--c-accent-strong: #6d28d9}[data-accent=orange]{--c-accent: #ea580c;--c-accent-strong: #c2410c}[data-accent=teal]{--c-accent: #0d9488;--c-accent-strong: #0f766e}:root,[data-theme=light]{--bg: #fbfcfd;--bg-panel: #ffffff;--bg-elevated: #ffffff;--bg-subtle: #f6f8fa;--bg-hover: #eef1f5;--bg-active: #e6eaf0;--text: #1a1d21;--text-secondary: #4b5563;--text-muted: #98a2b3;--text-inverse: #fafafa;--border: #e4e4e7;--border-strong: #d4d4d8;--border-soft: #efeff1;--accent: var(--c-accent);--accent-hover: var(--c-accent-strong);--accent-soft: color-mix(in srgb, var(--c-accent) 14%, #ffffff);--accent-border: color-mix(in srgb, var(--c-accent) 38%, #ffffff);--on-accent: #ffffff;--accent-active: color-mix(in srgb, var(--c-accent) 78%, #000000);--accent-shadow: color-mix(in srgb, var(--c-accent) 34%, transparent);--accent-ring: color-mix(in srgb, var(--c-accent) 24%, transparent);--danger: #dc2626;--danger-soft: #fee2e2;--on-danger-soft: #b91c1c;--warning: #b45309;--warning-soft: #fef3c7;--on-warning-soft: #92400e;--info-soft: #dbeafe;--info: #1d4ed8;--info-border: #bfdbfe;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--shadow: 0 2px 8px rgba(0, 0, 0, .06);--shadow-md: 0 4px 14px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 28px rgba(0, 0, 0, .1);--overlay: rgba(24, 24, 27, .32);--scroll-thumb: #d6dae0;--scroll-thumb-hover: #a8b0bd;--sidebar-bg: #f4f7fa;--on-accent-faint: rgba(255, 255, 255, .45);--on-accent-soft: rgba(255, 255, 255, .75);--on-accent-faintest: rgba(255, 255, 255, .6);--sheet: rgba(255, 255, 255, .9);--glow-a: rgba(37, 99, 235, .05);--glow-b: rgba(14, 165, 233, .045);--shadow-ask: rgba(15, 23, 42, .05);--shadow-ask-focus: rgba(15, 23, 42, .09);--toast-bg: var(--accent-soft);--toast-fg: var(--accent-hover);--toast-border: var(--accent-border);--landing-top: color-mix(in srgb, var(--accent) 3%, #ffffff);--landing-base: color-mix(in srgb, var(--accent) 1%, #fbfcfe);--landing-bottom: color-mix(in srgb, var(--accent) 2%, #ffffff);--landing-glow-a: color-mix(in srgb, var(--accent) 11%, transparent);--landing-glow-b: color-mix(in srgb, var(--accent) 8%, transparent);--landing-glow-c: color-mix(in srgb, var(--accent) 5%, transparent);--landing-chip: color-mix(in srgb, var(--accent) 8%, rgba(255, 255, 255, .7));--landing-ring: color-mix(in srgb, var(--accent) 38%, var(--border));--landing-map-bg: color-mix(in srgb, var(--accent) 2%, #fbfcfe);--landing-map-veil: color-mix(in srgb, #fbfcfe 82%, transparent);--landing-map-stroke: color-mix(in srgb, #ffffff 78%, var(--border));--landing-map-shadow: color-mix(in srgb, #0e1117 16%, transparent);--vm-grid-line: color-mix(in srgb, var(--accent) 7%, transparent)}[data-theme=eye]{--bg: #eef3e6;--bg-panel: #f7faf1;--bg-elevated: #f7faf1;--bg-subtle: #e7eddd;--bg-hover: #dee7d2;--bg-active: #d4dfc6;--text: #1f2b22;--text-secondary: #43523f;--text-muted: #7b8a74;--text-inverse: #f7faf1;--border: #d9e2cb;--border-strong: #c6d3b6;--border-soft: #e4ebd8;--accent: var(--c-accent);--accent-hover: var(--c-accent-strong);--accent-soft: color-mix(in srgb, var(--c-accent) 12%, #f7faf1);--accent-border: color-mix(in srgb, var(--c-accent) 34%, #f7faf1);--on-accent: #ffffff;--accent-active: color-mix(in srgb, var(--c-accent) 78%, #000000);--accent-shadow: color-mix(in srgb, var(--c-accent) 30%, transparent);--accent-ring: color-mix(in srgb, var(--c-accent) 22%, transparent);--danger: #c0392b;--danger-soft: #fbe4e0;--on-danger-soft: #9c2b1e;--warning: #a3611a;--warning-soft: #f8ecd2;--on-warning-soft: #85500f;--info-soft: #e2eef7;--info: #2563a8;--info-border: #c7ddf0;--shadow-sm: 0 1px 2px rgba(60, 80, 50, .05);--shadow: 0 2px 8px rgba(60, 80, 50, .07);--shadow-md: 0 4px 14px rgba(60, 80, 50, .09);--shadow-lg: 0 8px 28px rgba(60, 80, 50, .11);--overlay: rgba(31, 43, 34, .3);--scroll-thumb: #c6d3b6;--scroll-thumb-hover: #a8b89a;--sidebar-bg: #e8efe0;--on-accent-faint: rgba(255, 255, 255, .45);--on-accent-soft: rgba(255, 255, 255, .75);--on-accent-faintest: rgba(255, 255, 255, .6);--sheet: rgba(247, 250, 241, .92);--glow-a: rgba(37, 99, 235, .04);--glow-b: rgba(14, 165, 233, .035);--shadow-ask: rgba(60, 80, 50, .06);--shadow-ask-focus: rgba(60, 80, 50, .1);--toast-bg: var(--accent-soft);--toast-fg: var(--accent-hover);--toast-border: var(--accent-border);--landing-top: color-mix(in srgb, var(--accent) 3%, #f7faf1);--landing-base: color-mix(in srgb, var(--accent) 1%, #f4f8ec);--landing-bottom: color-mix(in srgb, var(--accent) 2%, #f7faf1);--landing-glow-a: color-mix(in srgb, var(--accent) 9%, transparent);--landing-glow-b: color-mix(in srgb, var(--accent) 7%, transparent);--landing-glow-c: color-mix(in srgb, var(--accent) 4%, transparent);--landing-chip: color-mix(in srgb, var(--accent) 7%, rgba(247, 250, 241, .75));--landing-ring: color-mix(in srgb, var(--accent) 34%, var(--border));--landing-map-bg: color-mix(in srgb, var(--accent) 2%, #f4f8ec);--landing-map-veil: color-mix(in srgb, #f4f8ec 82%, transparent);--landing-map-stroke: color-mix(in srgb, #ffffff 60%, var(--border));--landing-map-shadow: color-mix(in srgb, #1f2b22 15%, transparent);--vm-grid-line: color-mix(in srgb, var(--accent) 7%, transparent)}[data-theme=dark]{--bg: #0f1115;--bg-panel: #171a21;--bg-elevated: #1e222b;--bg-subtle: #1c2029;--bg-hover: #262b36;--bg-active: #2f3542;--text: #e8eaed;--text-secondary: #a8b0bd;--text-muted: #6f7787;--text-inverse: #0f1115;--border: #272c37;--border-strong: #39404e;--border-soft: #20242e;--accent: color-mix(in srgb, var(--c-accent) 72%, #ffffff);--accent-hover: color-mix(in srgb, var(--c-accent) 86%, #ffffff);--accent-soft: color-mix(in srgb, var(--c-accent) 20%, #171a21);--accent-border: color-mix(in srgb, var(--c-accent) 40%, #171a21);--on-accent: #0f1115;--accent-active: color-mix(in srgb, var(--c-accent) 88%, #000000);--accent-shadow: color-mix(in srgb, var(--c-accent) 26%, transparent);--accent-ring: color-mix(in srgb, var(--c-accent) 30%, transparent);--danger: #f87171;--danger-soft: color-mix(in srgb, #ef4444 18%, #171a21);--on-danger-soft: #fca5a5;--warning: #fbbf24;--warning-soft: color-mix(in srgb, #f59e0b 16%, #171a21);--on-warning-soft: #fcd34d;--info: #93c5fd;--info-soft: color-mix(in srgb, #3b82f6 18%, #171a21);--info-border: color-mix(in srgb, #3b82f6 38%, #171a21);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow: 0 2px 10px rgba(0, 0, 0, .4);--shadow-md: 0 4px 16px rgba(0, 0, 0, .45);--shadow-lg: 0 10px 34px rgba(0, 0, 0, .55);--overlay: rgba(0, 0, 0, .6);--scroll-thumb: #39404e;--scroll-thumb-hover: #4f5866;--sidebar-bg: #12151b;--on-accent-faint: rgba(0, 0, 0, .45);--on-accent-soft: rgba(255, 255, 255, .08);--on-accent-faintest: rgba(255, 255, 255, .05);--sheet: rgba(15, 17, 21, .9);--shadow-ask: rgba(0, 0, 0, .4);--shadow-ask-focus: rgba(0, 0, 0, .55);--landing-top: color-mix(in srgb, var(--accent) 6%, #0e1117);--landing-base: color-mix(in srgb, var(--accent) 3%, #0b0e13);--landing-bottom: color-mix(in srgb, var(--accent) 4%, #0d1016);--landing-glow-a: color-mix(in srgb, var(--accent) 14%, transparent);--landing-glow-b: color-mix(in srgb, var(--accent) 10%, transparent);--landing-glow-c: color-mix(in srgb, var(--accent) 7%, transparent);--landing-chip: color-mix(in srgb, var(--accent) 12%, rgba(255, 255, 255, .05));--landing-ring: color-mix(in srgb, var(--accent) 42%, var(--border));--landing-map-bg: color-mix(in srgb, var(--accent) 4%, #0b0e13);--landing-map-veil: color-mix(in srgb, #0b0e13 78%, transparent);--landing-map-stroke: color-mix(in srgb, #000000 55%, var(--border));--landing-map-shadow: color-mix(in srgb, #000000 55%, transparent);--vm-grid-line: color-mix(in srgb, var(--accent) 9%, transparent)}:root{--radius-sm: 6px;--radius: 10px;--radius-lg: 14px;--radius-full: 999px;--sidebar-w: 260px;--font: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace}*{box-sizing:border-box;margin:0;padding:0}html,body,#app{height:100%}body{font-family:var(--font);background:var(--bg);color:var(--text);font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}button{font-family:inherit;font-size:inherit;cursor:pointer;border:none;background:none;color:inherit}input,textarea,select{font-family:inherit;font-size:inherit;color:inherit}.scroll-y{overflow-y:auto;scrollbar-width:thin;scrollbar-color:transparent transparent;transition:scrollbar-color .25s ease}.scroll-y:hover{scrollbar-color:var(--scroll-thumb) transparent}.scroll-y::-webkit-scrollbar{width:8px;height:8px}.scroll-y::-webkit-scrollbar-track{background:transparent}.scroll-y::-webkit-scrollbar-thumb{background:transparent;border-radius:var(--radius-full);border:2px solid transparent;background-clip:padding-box}.scroll-y:hover::-webkit-scrollbar-thumb{background:var(--scroll-thumb);background-clip:padding-box}.scroll-y::-webkit-scrollbar-thumb:hover{background:var(--scroll-thumb-hover);background-clip:padding-box}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:7px 14px;border-radius:var(--radius);font-weight:500;transition:background .15s ease,color .15s ease,border-color .15s ease,opacity .15s ease;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--text-inverse)}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-secondary{background:var(--bg-subtle);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){background:var(--bg-hover)}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--bg-hover);color:var(--text)}.btn-danger{background:var(--danger-soft);color:var(--danger)}.btn-danger:hover:not(:disabled){background:#fecaca}.btn-sm{padding:4px 10px;font-size:13px}.input,.select,.textarea{width:100%;padding:8px 11px;background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius);outline:none;transition:border-color .15s ease,box-shadow .15s ease}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.textarea{resize:vertical;min-height:80px}.field{display:flex;flex-direction:column;gap:6px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 560px){.field-row{grid-template-columns:1fr}}.field>label{font-size:13px;font-weight:500;color:var(--text-secondary)}.card{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-lg)}.tag{display:inline-flex;align-items:center;padding:1px 8px;border-radius:var(--radius-full);font-size:12px;font-weight:500;background:var(--bg-subtle);color:var(--text-secondary);border:1px solid var(--border)}.tag-gray{background:var(--bg-subtle);color:var(--text-secondary);border-color:var(--border)}.tag-green{background:var(--accent-soft);color:var(--accent-hover);border-color:var(--accent-border)}.tag-red{background:var(--danger-soft);color:var(--danger);border-color:#fecaca}.tag-amber{background:var(--warning-soft);color:var(--warning);border-color:#fde68a}.table-wrap{overflow-x:auto;border-radius:var(--radius-lg)}table.data{width:100%;border-collapse:collapse;font-size:13px}table.data th{text-align:left;font-weight:500;color:var(--text-secondary);padding:10px 14px;background:var(--bg-subtle);border-bottom:1px solid var(--border);white-space:nowrap}table.data td{padding:10px 14px;border-bottom:1px solid var(--border);vertical-align:middle}table.data tbody tr:last-child td{border-bottom:none}table.data tbody tr:hover{background:var(--bg-subtle)}.empty{padding:48px 16px;text-align:center;color:var(--text-muted);font-size:13px}.spinner{width:16px;height:16px;border:2px solid var(--border-strong);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.markdown{font-size:14px;line-height:1.75;word-break:break-word}.markdown>*:first-child{margin-top:0}.markdown>*:last-child{margin-bottom:0}.markdown p{margin:0 0 10px}.markdown h1,.markdown h2,.markdown h3,.markdown h4{margin:18px 0 10px;font-weight:600;line-height:1.35}.markdown h1{font-size:20px}.markdown h2{font-size:17px}.markdown h3{font-size:15px}.markdown ul,.markdown ol{margin:0 0 10px;padding-left:22px}.markdown li{margin:3px 0}.markdown code{font-family:var(--font-mono);font-size:.875em;background:var(--bg-subtle);padding:1px 5px;border-radius:var(--radius-sm);border:1px solid var(--border)}.markdown pre{margin:0 0 12px;padding:12px 14px;background:var(--bg-subtle);border:1px solid var(--border);border-radius:var(--radius);overflow-x:auto}.markdown pre code{background:none;border:none;padding:0;font-size:12.5px;line-height:1.6}.markdown blockquote{margin:0 0 10px;padding:2px 0 2px 12px;border-left:3px solid var(--border-strong);color:var(--text-secondary)}.markdown table{width:100%;margin:0 0 12px;border-collapse:collapse;font-size:13px}.markdown th,.markdown td{padding:6px 10px;border:1px solid var(--border)}.markdown th{background:var(--bg-subtle);font-weight:500}.markdown a{color:var(--accent-hover);text-decoration:underline}.markdown hr{margin:14px 0;border:none;border-top:1px solid var(--border)}.modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay);display:flex;align-items:center;justify-content:center;z-index:100;padding:20px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal{width:100%;max-width:480px;max-height:86vh;display:flex;flex-direction:column;background:var(--bg-panel);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.modal-header h3{font-size:15px;font-weight:600}.modal-body{padding:20px;overflow-y:auto;display:flex;flex-direction:column;gap:14px}.modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:14px 20px;border-top:1px solid var(--border);background:var(--bg-subtle)}.toast{position:fixed;top:20px;left:50%;transform:translate(-50%);z-index:200;padding:9px 16px;border-radius:var(--radius);background:var(--text);color:var(--text-inverse);font-size:13px;box-shadow:var(--shadow-lg);max-width:80vw}.toast-error{background:var(--danger)}:root{--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--sp-10: 40px;--radius-xs: 6px;--radius-md: 10px;--radius-xl: 16px;--radius-2xl: 20px;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--dur-1: .12s;--dur-2: .2s;--dur-3: .32s;--elev-1: 0 1px 2px rgba(16, 24, 40, .05), 0 1px 3px rgba(16, 24, 40, .06);--elev-2: 0 4px 12px rgba(16, 24, 40, .08), 0 2px 4px rgba(16, 24, 40, .04);--elev-3: 0 12px 32px rgba(16, 24, 40, .12), 0 4px 8px rgba(16, 24, 40, .06);--elev-4: 0 24px 64px rgba(16, 24, 40, .18);--glass: color-mix(in srgb, var(--bg-panel) 76%, transparent);--glass-border: color-mix(in srgb, var(--border) 72%, transparent);--accent-grad: linear-gradient(135deg, var(--accent) 0%, var(--accent-hover) 100%);--accent-glow: 0 6px 18px color-mix(in srgb, var(--accent) 28%, transparent)}::selection{background:color-mix(in srgb,var(--accent) 26%,transparent)}body{background-image:radial-gradient(1200px 420px at 50% -160px,color-mix(in srgb,var(--accent) 7%,transparent),transparent 70%);background-repeat:no-repeat;background-attachment:fixed;letter-spacing:.01em}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@keyframes fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes pop-in{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:none}}@keyframes slide-in-left{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:none}}@keyframes shimmer{0%{background-position:-320px 0}to{background-position:320px 0}}@keyframes float-y{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes glow-breathe{0%,to{box-shadow:0 0 color-mix(in srgb,var(--accent) 34%,transparent)}50%{box-shadow:0 0 0 8px color-mix(in srgb,var(--accent) 0%,transparent)}}@keyframes spin-slow{to{transform:rotate(360deg)}}.anim-fade-up{animation:fade-up var(--dur-3) var(--ease-out) both}.stagger>*{animation:fade-up var(--dur-3) var(--ease-out) both}.stagger>*:nth-child(1){animation-delay:20ms}.stagger>*:nth-child(2){animation-delay:50ms}.stagger>*:nth-child(3){animation-delay:80ms}.stagger>*:nth-child(4){animation-delay:.11s}.stagger>*:nth-child(5){animation-delay:.14s}.stagger>*:nth-child(6){animation-delay:.17s}.stagger>*:nth-child(n+7){animation-delay:.2s}.skeleton{border-radius:var(--radius-md);background:linear-gradient(90deg,var(--bg-subtle) 0%,color-mix(in srgb,var(--bg-subtle) 55%,var(--bg-panel)) 40%,var(--bg-subtle) 80%);background-size:640px 100%;animation:shimmer 1.2s linear infinite}@media (prefers-reduced-motion: reduce){*:not(.mascot):not(.mascot *),*:not(.mascot):not(.mascot *):before,*:not(.mascot):not(.mascot *):after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.btn{padding:9px 16px;border-radius:var(--radius-md);font-weight:500;letter-spacing:.01em;transition:background var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out),transform var(--dur-1) var(--ease-out)}.btn:active:not(:disabled){transform:scale(.975)}.btn-primary{background:var(--accent-grad);color:var(--on-accent, #fff);box-shadow:var(--elev-1),var(--accent-glow)}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--elev-2),0 10px 24px color-mix(in srgb,var(--accent) 34%,transparent)}.btn-secondary{background:var(--bg-panel);border:1px solid var(--border);box-shadow:var(--elev-1)}.btn-secondary:hover:not(:disabled){border-color:var(--accent-border);color:var(--accent-hover);transform:translateY(-1px)}.btn-ghost:hover:not(:disabled){background:var(--accent-soft);color:var(--accent-hover)}.btn-sm{padding:5px 11px;font-size:12.5px;border-radius:var(--radius-xs)}.btn-danger{box-shadow:var(--elev-1)}.btn-danger:hover:not(:disabled){transform:translateY(-1px)}.input,.select,.textarea{padding:10px 13px;border-radius:var(--radius-md);transition:border-color var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out),background var(--dur-2) var(--ease-out)}.input:hover:not(:disabled),.select:hover:not(:disabled),.textarea:hover:not(:disabled){border-color:var(--border-strong)}.input:focus,.select:focus,.textarea:focus{box-shadow:0 0 0 4px var(--accent-ring)}.card{border-radius:var(--radius-xl);box-shadow:var(--elev-1);transition:box-shadow var(--dur-3) var(--ease-out),transform var(--dur-3) var(--ease-out),border-color var(--dur-3) var(--ease-out)}.card:hover{box-shadow:var(--elev-2)}a.card:hover,.card.clickable:hover{transform:translateY(-2px);border-color:var(--accent-border);box-shadow:var(--elev-3)}table.data th{position:sticky;top:0;z-index:1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:color-mix(in srgb,var(--bg-subtle) 92%,transparent);font-weight:600;font-size:12.5px;letter-spacing:.02em;padding:11px 16px}table.data td{padding:12px 16px;transition:background var(--dur-1) var(--ease-out)}table.data tbody tr{transition:background var(--dur-1) var(--ease-out)}table.data tbody tr:hover{background:color-mix(in srgb,var(--accent) 5%,var(--bg-panel))}table.data tbody tr:hover td:first-child{box-shadow:inset 3px 0 0 var(--accent)}.table-wrap{border:1px solid var(--border);background:var(--bg-panel);box-shadow:var(--elev-1)}.tag{padding:2px 9px;border-radius:var(--radius-full);font-weight:500;letter-spacing:.01em}.modal-mask{background:color-mix(in srgb,var(--overlay) 88%,transparent);-webkit-backdrop-filter:blur(6px) saturate(1.1);backdrop-filter:blur(6px) saturate(1.1);animation:fade-in var(--dur-2) var(--ease-out)}.modal{border-radius:var(--radius-2xl);box-shadow:var(--elev-4);border:1px solid var(--glass-border);animation:pop-in var(--dur-3) var(--ease-spring)}.modal-header{padding:18px 22px}.modal-body{padding:22px;gap:16px}.modal-footer{padding:16px 22px;gap:10px}.toast{padding:10px 18px;border-radius:var(--radius-full);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:fade-up var(--dur-3) var(--ease-spring);font-weight:500;letter-spacing:.01em}.empty{padding:64px 20px;font-size:13.5px;letter-spacing:.02em}.panel{transition:box-shadow var(--dur-3) var(--ease-out)}.page{animation:fade-up var(--dur-3) var(--ease-out)}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--sp-4);flex-wrap:wrap;margin-bottom:var(--sp-5)}.page-head .page-title{display:flex;align-items:center;gap:var(--sp-3);font-size:22px;font-weight:650;letter-spacing:-.01em;line-height:1.3}.page-head .page-title:before{content:"";width:4px;height:20px;border-radius:var(--radius-full);background:var(--accent-grad)}.page-head .page-sub{margin-top:4px;color:var(--text-muted);font-size:13px}.row{display:flex;align-items:center;gap:var(--sp-2)}.row-between{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3)}.stack{display:flex;flex-direction:column;gap:var(--sp-4)}.grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--sp-4)}.divider{height:1px;background:var(--border-soft);margin:var(--sp-4) 0}.muted{color:var(--text-muted)}.metric{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em}@media (max-width: 640px){.page{padding:12px}.page-head .page-title{font-size:18px}.data{font-size:12px}.data th,.data td{padding:8px 10px}.table-wrap{margin:0 -4px}.toolbar,.page-head{gap:8px}.stat-grid,.metric-grid{grid-template-columns:1fr 1fr}}.n-modal .n-card{border-radius:var(--radius-lg)}.n-modal .n-card__content{max-height:65vh;overflow-y:auto}.n-base-selection,.n-base-selection .n-base-selection-label,.n-base-selection__border,.n-base-selection__state-border{border-radius:var(--radius)!important}.ops,.item-ops,.row-actions,.status-ops,.reply-ops,.modal-ops,.auto-acts,.conn-acts,.fpd-acts,.hv-actions,.cf-acts,.mc-acts,.page-error-ops,.panel-title,.tabs,.tabs-bar,.src-tabs,.sort-tabs,.cats,.plugin-tabs,.field-actions{gap:6px}.n-card__footer{display:flex;justify-content:flex-end;gap:8px}
