.sidebar[data-v-5ce0171e]{width:264px;flex-shrink:0;border-right:none;border-radius:0 var(--radius-sidebar) var(--radius-sidebar) 0;display:flex;flex-direction:column;transition:width .18s var(--ease)}.sidebar.collapsed[data-v-5ce0171e]{width:80px}.head[data-v-5ce0171e]{display:flex;align-items:center;justify-content:space-between;padding:1.1rem 1rem;border-bottom:1px solid var(--color-hairline)}.brand[data-v-5ce0171e]{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--color-ink);font-weight:900;letter-spacing:-.02em;min-width:0}.mark[data-v-5ce0171e]{width:32px;height:32px;font-size:.95rem;flex-shrink:0}.name[data-v-5ce0171e]{font-size:var(--text-lg);white-space:nowrap}.collapse[data-v-5ce0171e]{width:26px;height:26px;flex-shrink:0}.nav[data-v-5ce0171e]{display:flex;flex-direction:column;padding:.75rem;gap:.2rem}.nav-item[data-v-5ce0171e]{position:relative;display:flex;align-items:center;gap:.65rem;padding:.6rem .75rem;border-radius:var(--radius-button);text-decoration:none;color:var(--color-ink-body);font-size:var(--text-sm);font-weight:600;transition:background-color .12s var(--ease),color .12s var(--ease)}.nav-item .indicator[data-v-5ce0171e]{position:absolute;left:-.75rem;top:50%;transform:translateY(-50%) scaleY(0);width:4px;height:60%;border-radius:999px;background:var(--color-brand);transition:transform .15s var(--ease)}.nav-item .label[data-v-5ce0171e]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-item[data-v-5ce0171e]:hover{background:var(--color-surface-hover);color:var(--color-ink)}.nav-item.router-link-active[data-v-5ce0171e]{background:linear-gradient(90deg,color-mix(in srgb,var(--color-brand) 15%,transparent),color-mix(in srgb,var(--color-brand) 5%,transparent));color:var(--color-brand)}.nav-item.router-link-active .indicator[data-v-5ce0171e]{transform:translateY(-50%) scaleY(1)}.foot[data-v-5ce0171e]{margin-top:auto;padding:.9rem 1rem 1.1rem;border-top:1px solid var(--color-hairline);display:flex;flex-direction:column;gap:.5rem}.theme-toggle[data-v-5ce0171e]{display:flex;padding:.2rem;gap:.2rem;border-radius:var(--radius-full)}.theme-toggle .tab[data-v-5ce0171e]{flex:1;padding:.4rem .5rem;font-size:var(--text-xs)}.theme-toggle .tab-active[data-v-5ce0171e]{background:var(--color-surface);color:var(--color-ink);box-shadow:var(--shadow-xs)}.theme-toggle-collapsed[data-v-5ce0171e]{margin:0 auto}.foot-caption[data-v-5ce0171e]{font-size:var(--text-xs);color:var(--color-ink-faint)}@media(max-width:767px){.sidebar.mobile[data-v-5ce0171e]{position:fixed;inset:0 auto 0 0;z-index:40;transform:translate(-100%);transition:transform .2s var(--ease);box-shadow:var(--shadow-md);border-radius:0}.sidebar.mobile.mobile-open[data-v-5ce0171e]{transform:translate(0)}}.shell[data-v-2a348b01]{display:flex;min-height:100vh}.body[data-v-2a348b01]{flex:1;min-width:0}.topbar[data-v-2a348b01]{display:flex;align-items:center;gap:.75rem;height:3.5rem;padding:0 1.1rem;border-radius:0;border-width:0 0 1px 0;position:sticky;top:0;z-index:30}.menu-btn[data-v-2a348b01]{font-size:1.1rem;line-height:1}.brand[data-v-2a348b01]{font-weight:900;color:var(--color-ink);letter-spacing:-.02em}.content[data-v-2a348b01]{padding:1.25rem;max-width:80rem;margin:0 auto}@media(min-width:640px){.content[data-v-2a348b01]{padding:2rem}}.glass-backdrop[data-v-50fa885f]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;overflow:hidden;background:var(--canvas)}html.dark .glass-backdrop .orb[data-v-50fa885f],html.dark .glass-backdrop .grain[data-v-50fa885f]{display:none}.orb[data-v-50fa885f]{position:absolute;border-radius:999px;background:radial-gradient(circle,var(--color-brand),transparent 70%);opacity:var(--orb-opacity);filter:blur(2px);will-change:transform}.orb-1[data-v-50fa885f]{width:46vw;height:46vw;top:-18vw;left:-12vw;animation:drift-a-50fa885f 32s ease-in-out infinite}.orb-2[data-v-50fa885f]{width:32vw;height:32vw;top:-10vw;right:-10vw;animation:drift-b-50fa885f 28s ease-in-out infinite}.orb-3[data-v-50fa885f]{width:38vw;height:38vw;bottom:-16vw;left:8vw;animation:drift-c-50fa885f 34s ease-in-out infinite}.orb-4[data-v-50fa885f]{width:26vw;height:26vw;bottom:-8vw;right:6vw;animation:drift-a-50fa885f 30s ease-in-out infinite reverse}.orb-5[data-v-50fa885f]{width:20vw;height:20vw;top:40vh;left:50vw;animation:drift-b-50fa885f 36s ease-in-out infinite}@keyframes drift-a-50fa885f{0%,to{transform:translate(0) scale(1)}50%{transform:translate(3vw,4vh) scale(1.06)}}@keyframes drift-b-50fa885f{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-4vw,3vh) scale(.96)}}@keyframes drift-c-50fa885f{0%,to{transform:translate(0) scale(1)}50%{transform:translate(2vw,-3vh) scale(1.04)}}@media(prefers-reduced-motion:reduce){.orb[data-v-50fa885f]{animation:none}}.grain[data-v-50fa885f]{position:absolute;top:-10%;right:-10%;bottom:-10%;left:-10%;opacity:var(--grain-opacity);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");mix-blend-mode:overlay;pointer-events:none}:root{--color-brand: #ad0020;--color-brand-strong: #d1002a;--color-ink: #0b1220;--color-ink-body: #334155;--color-ink-muted: #64748b;--color-ink-faint: #94a3b8;--color-hairline: rgba(255, 255, 255, .55);--color-surface: rgba(255, 255, 255, .35);--color-surface-hover: rgba(255, 255, 255, .6);--canvas: #eceef3;--color-success: #059669;--color-success-weak: rgba(5, 150, 105, .12);--color-danger: #dc2626;--color-danger-weak: rgba(220, 38, 38, .12);--color-warning: #b45309;--color-warning-weak: rgba(180, 83, 9, .14);--glass-bg: linear-gradient(135deg, rgba(255, 255, 255, .6), rgba(255, 255, 255, .28));--glass-strong-bg: rgba(255, 255, 255, .72);--glass-soft-bg: rgba(255, 255, 255, .45);--glass-border: rgba(255, 255, 255, .7);--glass-border-strong: rgba(255, 255, 255, .85);--glass-blur: blur(24px) saturate(170%);--glass-shadow: 0 1px 1px rgba(30, 41, 59, .04), 0 12px 32px rgba(30, 41, 59, .1), 0 2px 6px rgba(30, 41, 59, .06);--glass-inset: inset 0 1px 0 rgba(255, 255, 255, .7);--sheen: linear-gradient(180deg, rgba(255, 255, 255, .55), rgba(255, 255, 255, 0) 60%);--control-bg: rgba(255, 255, 255, .6);--input-bg: rgba(255, 255, 255, .7);--orb-opacity: .07;--grain-opacity: .045;--heading-gradient: linear-gradient(115deg, #0d1420 20%, #48526a 70%, #ad0020);--color-brand-weak: color-mix(in srgb, var(--color-brand) 12%, transparent);--color-brand-soft: color-mix(in srgb, var(--color-brand) 6%, transparent);--color-ink-muted-weak: color-mix(in srgb, var(--color-ink-muted) 14%, transparent);--radius-button: .75rem;--radius-card: 1rem;--radius-section: 1.5rem;--radius-sidebar: 1.5rem;--radius-modal: 2rem;--radius-full: 999px;--shadow-xs: 0 1px 2px rgba(15, 23, 42, .05);--shadow-sm: 0 4px 16px rgba(15, 23, 42, .07), 0 1px 2px rgba(15, 23, 42, .05);--shadow-md: 0 12px 32px rgba(15, 23, 42, .12), 0 2px 8px rgba(15, 23, 42, .06);--shadow-brand: 0 8px 20px rgba(173, 0, 32, .28);--font-sans: "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--ease: cubic-bezier(.4, 0, .2, 1);--ease-pop: cubic-bezier(.22, .9, .28, 1);--text-xs: .625rem;--lh-xs: .875rem;--text-sm: .75rem;--lh-sm: 1rem;--text-base: .8125rem;--lh-base: 1.125rem;--text-lg: .875rem;--lh-lg: 1.3125rem;--text-xl: 1rem;--lh-xl: 1.5rem;--text-2xl: 1.125rem;--lh-2xl: 1.625rem;--text-3xl: 1.3125rem;--lh-3xl: 1.75rem;--text-4xl: 1.5rem;--lh-4xl: 1.875rem}html.dark{--color-brand: #f14862;--color-brand-strong: #ff8fa0;--color-ink: #f7f8fc;--color-ink-body: #d5dae6;--color-ink-muted: #aeb4c2;--color-ink-faint: #8b92a3;--color-hairline: rgba(255, 255, 255, .1);--color-surface: rgba(255, 255, 255, .06);--color-surface-hover: rgba(255, 255, 255, .1);--canvas: #12131a;--color-success: #34d399;--color-success-weak: rgba(52, 211, 153, .16);--color-danger: #f87171;--color-danger-weak: rgba(248, 113, 113, .16);--color-warning: #fcd34d;--color-warning-weak: rgba(252, 211, 77, .16);--glass-bg: #20222c;--glass-strong-bg: #252734;--glass-soft-bg: #1c1e28;--glass-border: rgba(255, 255, 255, .1);--glass-border-strong: rgba(255, 255, 255, .16);--glass-blur: none;--glass-shadow: 0 1px 0 rgba(255, 255, 255, .03) inset, 0 16px 32px rgba(0, 0, 0, .4);--glass-inset: inset 0 1px 0 rgba(255, 255, 255, .04);--sheen: none;--control-bg: #1c1e28;--input-bg: #1c1e28;--heading-gradient: none;--shadow-brand: 0 8px 20px rgba(241, 72, 98, .22);color-scheme:dark}*{box-sizing:border-box}html,body,#app{margin:0;height:100%}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--lh-base);color:var(--color-ink-body);background:var(--canvas);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;transition:background-color .2s var(--ease)}h1,h2,h3{font-weight:800;letter-spacing:-.015em;color:var(--color-ink);margin:0}code,.mono{font-family:var(--font-mono)}::selection{background:color-mix(in srgb,var(--color-brand) 20%,transparent);color:var(--color-brand)}*{scrollbar-width:thin;scrollbar-color:var(--color-ink-faint) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--color-ink-faint);opacity:.4;border-radius:999px;border:2px solid transparent;background-clip:padding-box}:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px;border-radius:var(--radius-button)}button{font:inherit;cursor:pointer;color:inherit;transition:background-color .15s var(--ease),border-color .15s var(--ease),box-shadow .15s var(--ease),opacity .15s var(--ease),transform .15s var(--ease),filter .15s var(--ease)}button:disabled{cursor:not-allowed;opacity:.45}.glass{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.glass-strong{background:var(--glass-strong-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border-strong);box-shadow:var(--glass-shadow)}.glass-soft{background:var(--glass-soft-bg);border:1px solid var(--color-hairline)}.glass-sheen{position:relative;overflow:hidden}.glass-sheen:after{content:"";position:absolute;inset:0 0 auto 0;height:40%;background:var(--sheen);pointer-events:none}.glass-hover{transition:transform .3s var(--ease-pop),box-shadow .3s var(--ease-pop),background-color .3s var(--ease)}.glass-hover:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.text-xs{font-size:var(--text-xs);line-height:var(--lh-xs)}.text-sm{font-size:var(--text-sm);line-height:var(--lh-sm)}.text-lg{font-size:var(--text-lg);line-height:var(--lh-lg)}.text-xl{font-size:var(--text-xl);line-height:var(--lh-xl)}.text-2xl{font-size:var(--text-2xl);line-height:var(--lh-2xl)}.text-3xl{font-size:var(--text-3xl);line-height:var(--lh-3xl)}.text-4xl{font-size:var(--text-4xl);line-height:var(--lh-4xl)}.text-brand{color:var(--color-brand)}.bg-brand{background:var(--color-brand)}.border-brand{border-color:var(--color-brand)}.eyebrow{display:inline-block;font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.16em;color:var(--color-ink-faint)}.text-gradient{background:var(--heading-gradient);-webkit-background-clip:text;background-clip:text;color:var(--color-ink)}html.dark .text-gradient{background:none;-webkit-text-fill-color:unset;color:var(--color-ink)}.button-primary,.button-secondary,.button-danger{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;font-size:var(--text-sm);font-weight:700;padding:.55rem 1rem;border-radius:var(--radius-button);border:1px solid transparent;white-space:nowrap}.button-primary{background:linear-gradient(135deg,#d1002a,#93001b);color:#fff;box-shadow:var(--shadow-brand)}.button-primary:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.06)}.button-secondary{background:var(--control-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-color:var(--glass-border);color:var(--color-ink-body)}.button-secondary:hover:not(:disabled){background:var(--color-surface-hover);color:var(--color-ink)}.button-danger{background:var(--color-danger-weak);color:var(--color-danger)}.button-danger:hover:not(:disabled){filter:brightness(.96)}.icon-button{width:2.25rem;height:2.25rem;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-button);border:1px solid var(--glass-border);background:var(--control-bg);color:var(--color-ink-muted)}.icon-button:hover:not(:disabled){background:var(--color-surface-hover);color:var(--color-ink)}input,select,textarea,.input{font:inherit;font-size:var(--text-sm);width:100%;color:var(--color-ink);background:var(--input-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-button);padding:.55rem .75rem;transition:border-color .15s var(--ease),box-shadow .15s var(--ease)}input:hover,select:hover,textarea:hover{border-color:var(--glass-border-strong)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-brand) 16%,transparent)}input::placeholder,textarea::placeholder{color:var(--color-ink-faint)}.tab{display:inline-flex;align-items:center;gap:.4rem;font-size:var(--text-sm);font-weight:600;color:var(--color-ink-muted);padding:.5rem .9rem;border-radius:var(--radius-button);border:none;background:transparent;white-space:nowrap;transition:background-color .15s var(--ease),color .15s var(--ease)}.tab:hover{color:var(--color-ink);background:var(--color-surface-hover)}.tab-active,.tab.tab-active{color:var(--color-brand);background:linear-gradient(135deg,color-mix(in srgb,var(--color-brand) 15%,transparent),color-mix(in srgb,var(--color-brand) 5%,transparent))}.badge{display:inline-flex;align-items:center;gap:.35rem;font-size:var(--text-xs);font-weight:700;padding:.22rem .6rem .22rem .5rem;border-radius:var(--radius-full);white-space:nowrap;line-height:1.4;background:var(--color-surface);color:var(--color-ink-muted)}.badge:before{content:"";width:6px;height:6px;border-radius:999px;background:currentColor;flex-shrink:0}.badge-on{background:var(--color-success-weak);color:var(--color-success)}.badge-off{background:var(--color-danger-weak);color:var(--color-danger)}.badge-warn{background:var(--color-warning-weak);color:var(--color-warning)}.alert-error,.alert-ok,.alert-warn{display:flex;align-items:flex-start;gap:.5rem;font-size:var(--text-sm);font-weight:600;padding:.65rem .9rem;border-radius:var(--radius-card);border:1px solid transparent}.alert-error{background:var(--color-danger-weak);color:var(--color-danger)}.alert-ok{background:var(--color-success-weak);color:var(--color-success)}.alert-warn{background:var(--color-warning-weak);color:var(--color-warning)}.skeleton{position:relative;overflow:hidden;background:var(--color-surface);border-radius:var(--radius-card)}.skeleton:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,var(--color-surface-hover),transparent);animation:skeleton-shimmer 1.5s linear infinite}@keyframes skeleton-shimmer{to{transform:translate(100%)}}.icon-tile{display:inline-flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;border-radius:var(--radius-card);background:linear-gradient(140deg,#d1002a,#82001a);color:#fff;box-shadow:var(--shadow-brand)}table{border-collapse:separate;border-spacing:0;width:100%}th,td{text-align:left;padding:1rem 1.25rem;border-bottom:1px solid var(--color-hairline);font-size:var(--text-sm)}th{color:var(--color-ink-faint);font-weight:700;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em}tbody tr{transition:background-color .12s var(--ease)}tbody tr:hover{background:var(--color-surface-hover)}tbody tr:last-child td{border-bottom:none}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.animate-rise{animation:rise .4s var(--ease-pop)}@keyframes pop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.animate-pop{animation:pop .24s cubic-bezier(.22,.9,.28,1.05)}@keyframes fade{0%{opacity:0}to{opacity:1}}.animate-fade{animation:fade .2s ease-out}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}@media(prefers-reduced-transparency:reduce){.glass,.glass-strong,.glass-soft,input,select,textarea,.input,.button-secondary,.icon-button{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:var(--canvas)!important}}
