.toast-stack[data-v-f2a922ed]{position:fixed;top:12px;right:12px;z-index:var(--z-toast);display:flex;flex-direction:column;gap:8px;width:360px;max-width:calc(100vw - 24px);pointer-events:none}@media(max-width:767px){.toast-stack[data-v-f2a922ed]{right:50%;transform:translate(50%);top:8px}}.toast-card[data-v-f2a922ed]{pointer-events:auto;background:var(--bg-surface);border:1px solid var(--border-strong);border-left-width:3px;border-radius:var(--radius-md);padding:10px 12px 12px;position:relative;overflow:hidden}.toast-success[data-v-f2a922ed]{border-left-color:var(--status-success)}.toast-warning[data-v-f2a922ed]{border-left-color:var(--status-warning)}.toast-error[data-v-f2a922ed]{border-left-color:var(--status-danger)}.toast-info[data-v-f2a922ed]{border-left-color:var(--color-primary)}.toast-header[data-v-f2a922ed]{display:flex;align-items:center;gap:8px}.toast-badge[data-v-f2a922ed]{font-size:10px;font-weight:700;padding:2px 5px;border-radius:3px;background:var(--bg-subtle);color:var(--text-secondary);letter-spacing:.04em}.toast-title[data-v-f2a922ed]{flex:1;font-size:var(--fs-base);font-weight:600}.toast-close[data-v-f2a922ed]{background:none;border:none;color:var(--text-muted);cursor:pointer;display:inline-flex;padding:2px;border-radius:3px}.toast-close[data-v-f2a922ed]:hover{color:var(--text-main);background:var(--bg-subtle)}.toast-body[data-v-f2a922ed]{margin-top:4px;font-size:var(--fs-sm);color:var(--text-secondary);word-break:break-word}.toast-actions[data-v-f2a922ed]{margin-top:8px}.toast-progress[data-v-f2a922ed]{position:absolute;bottom:0;left:0;height:2px;width:100%;background:var(--color-primary);transform-origin:left;animation:toast-shrink-f2a922ed linear forwards}.toast-error .toast-progress[data-v-f2a922ed]{background:var(--status-danger)}.toast-warning .toast-progress[data-v-f2a922ed]{background:var(--status-warning)}.toast-success .toast-progress[data-v-f2a922ed]{background:var(--status-success)}@keyframes toast-shrink-f2a922ed{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.toast-slide-enter-active[data-v-f2a922ed],.toast-slide-leave-active[data-v-f2a922ed]{transition:all .18s var(--ease)}.toast-slide-enter-from[data-v-f2a922ed],.toast-slide-leave-to[data-v-f2a922ed]{opacity:0;transform:translateY(-8px)}.modal-backdrop[data-v-285db6c7]{position:fixed;inset:0;z-index:var(--z-modal);background:var(--bg-backdrop);display:flex;align-items:center;justify-content:center;padding:16px}.modal-dialog[data-v-285db6c7]{width:100%;max-height:calc(100vh - 32px);background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:var(--radius-md);display:flex;flex-direction:column;overflow:hidden;outline:none}.modal-header[data-v-285db6c7]{padding:12px 16px;border-bottom:1px solid var(--border-color);display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.modal-title[data-v-285db6c7]{font-size:var(--fs-md);font-weight:600}.modal-desc[data-v-285db6c7]{margin-top:2px;font-size:var(--fs-sm);color:var(--text-muted)}.modal-body[data-v-285db6c7]{padding:16px;overflow-y:auto;flex:1}.modal-body.dense[data-v-285db6c7]{padding:0}.modal-footer[data-v-285db6c7]{padding:10px 16px;border-top:1px solid var(--border-color);background:var(--bg-subtle);display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}@media(max-width:767px){.modal-backdrop[data-v-285db6c7]{padding:0;align-items:flex-end}.modal-dialog.modal-fullscreen-mobile[data-v-285db6c7]{max-width:100%!important;max-height:96vh;border-radius:var(--radius-md) var(--radius-md) 0 0;border-bottom:none}}.confirm-message[data-v-ee681026]{font-size:var(--fs-base);color:var(--text-secondary);white-space:pre-line}:root{--color-primary: #0d9488;--color-primary-hover: #0f766e;--color-primary-rgb: 13, 148, 136;--color-primary-soft: #f0fdfa;--color-primary-border: #99f6e4;--bg-app: #f6f7f9;--bg-surface: #ffffff;--bg-subtle: #f1f3f6;--bg-sunken: #e9ecf0;--bg-header: #ffffff;--bg-sidebar: #0f172a;--bg-sidebar-hover: rgba(255, 255, 255, .06);--bg-sidebar-active: rgba(var(--color-primary-rgb), .22);--bg-backdrop: rgba(15, 23, 42, .55);--border-color: #e2e6eb;--border-strong: #c9d0d9;--border-focus: var(--color-primary);--text-main: #0f172a;--text-secondary: #334155;--text-muted: #64748b;--text-faint: #94a3b8;--text-inverse: #ffffff;--text-sidebar: #cbd5e1;--text-sidebar-muted: #7c8aa0;--status-success: #15803d;--status-success-bg: #dcfce7;--status-warning: #b45309;--status-warning-bg: #fef3c7;--status-danger: #be123c;--status-danger-bg: #ffe4e6;--status-info: #1d4ed8;--status-info-bg: #dbeafe;--status-neutral: #475569;--status-neutral-bg: #f1f5f9;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif;--font-mono: "JetBrains Mono", "Fira Code", ui-monospace, Menlo, monospace;--fs-xs: 11px;--fs-sm: 12px;--fs-base: 13px;--fs-md: 14px;--fs-lg: 16px;--fs-xl: 20px;--radius-sm: 4px;--radius-md: 6px;--control-h: 34px;--control-h-sm: 28px;--sidebar-w: 240px;--sidebar-w-collapsed: 60px;--topbar-h: 52px;--ease: cubic-bezier(.2, .7, .2, 1);--dur: .14s;--z-dropdown: 1200;--z-drawer: 2400;--z-modal: 2600;--z-help: 2800;--z-toast: 3000}[data-theme=dark]{--bg-app: #0b0f19;--bg-surface: #111827;--bg-subtle: #161e2e;--bg-sunken: #0d1320;--bg-header: #0f172a;--bg-sidebar: #090d16;--bg-backdrop: rgba(2, 6, 23, .7);--border-color: #1f2a3c;--border-strong: #334155;--text-main: #f1f5f9;--text-secondary: #cbd5e1;--text-muted: #94a3b8;--text-faint: #64748b;--text-sidebar: #cbd5e1;--text-sidebar-muted: #6b7a90;--status-success: #4ade80;--status-success-bg: rgba(34, 197, 94, .16);--status-warning: #fbbf24;--status-warning-bg: rgba(245, 158, 11, .16);--status-danger: #fb7185;--status-danger-bg: rgba(244, 63, 94, .16);--status-info: #60a5fa;--status-info-bg: rgba(59, 130, 246, .16);--status-neutral: #cbd5e1;--status-neutral-bg: rgba(148, 163, 184, .14)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:var(--font-sans);font-size:var(--fs-base);line-height:1.45;background-color:var(--bg-app);color:var(--text-main);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}#app{min-height:100%}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}img,svg{display:block;max-width:100%}ul,ol{list-style:none}h1,h2,h3,h4{font-weight:600;letter-spacing:-.01em;line-height:1.25}:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}:focus:not(:focus-visible){outline:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.font-mono,.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.text-danger{color:var(--status-danger)}.text-success{color:var(--status-success)}.text-warning{color:var(--status-warning)}.text-xs{font-size:var(--fs-xs)}.text-sm{font-size:var(--fs-sm)}.text-md{font-size:var(--fs-md)}.text-right{text-align:right}.text-center{text-align:center}.fw-600{font-weight:600}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.eyebrow{font-size:var(--fs-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.stack{display:flex;flex-direction:column;gap:12px}.stack-sm{display:flex;flex-direction:column;gap:6px}.row{display:flex;align-items:center;gap:8px}.row-wrap{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.between{display:flex;align-items:center;justify-content:space-between;gap:12px}.grow{flex:1 1 auto;min-width:0}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.mb-2{margin-bottom:8px}.mb-3{margin-bottom:12px}.gap-2{gap:8px}.gap-3{gap:12px}.page{padding:16px 20px 32px;max-width:1600px;margin:0 auto;width:100%}.page-fluid{padding:16px 20px 32px;width:100%}@media(max-width:767px){.page,.page-fluid{padding:12px 16px 24px}}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}@media(max-width:1100px){.grid-4,.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:767px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.split{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}.split.has-detail{grid-template-columns:minmax(0,1fr) minmax(360px,440px)}.split.has-detail.wide{grid-template-columns:minmax(0,1fr) minmax(480px,640px)}.split-detail{position:sticky;top:calc(var(--topbar-h) + 12px);max-height:calc(100vh - var(--topbar-h) - 24px);display:flex;flex-direction:column;overflow:hidden}@media(max-width:1100px){.split.has-detail,.split.has-detail.wide{grid-template-columns:minmax(0,1fr)}.split-detail{position:fixed;inset:0;max-height:none;z-index:var(--z-drawer);border-radius:0!important;border:none!important}}.panel{background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md)}.panel-header{padding:10px 14px;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px}.panel-title{font-size:var(--fs-md);font-weight:600;color:var(--text-main)}.panel-body{padding:14px}.panel-body.dense{padding:0}.panel-footer{padding:10px 14px;border-top:1px solid var(--border-color);background:var(--bg-subtle);display:flex;justify-content:flex-end;gap:8px}.dl{display:grid;grid-template-columns:minmax(120px,36%) 1fr;border-top:1px solid var(--border-color)}.dl>dt,.dl>dd{padding:7px 12px;border-bottom:1px solid var(--border-color);font-size:var(--fs-base)}.dl>dt{color:var(--text-muted);background:var(--bg-subtle);font-weight:500}.dl>dd{color:var(--text-main);min-width:0;word-break:break-word}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--border-color)}.page-header h1{font-size:var(--fs-xl);display:flex;align-items:center;gap:8px}.page-header .subtitle{margin-top:2px;color:var(--text-muted);font-size:var(--fs-base)}.page-header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}@media(max-width:767px){.page-header{flex-direction:column;align-items:stretch}.page-header-actions{justify-content:flex-start}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--control-h);padding:0 12px;font-size:var(--fs-base);font-weight:600;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background-color:var(--bg-surface);color:var(--text-main);cursor:pointer;white-space:nowrap;text-decoration:none;transition:background-color var(--dur) var(--ease),border-color var(--dur) var(--ease),color var(--dur) var(--ease)}.btn:hover:not(:disabled){background-color:var(--bg-subtle);text-decoration:none}.btn:active:not(:disabled){background-color:var(--bg-sunken)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background-color:var(--color-primary);border-color:var(--color-primary);color:var(--text-inverse)}.btn-primary:hover:not(:disabled),.btn-primary:active:not(:disabled){background-color:var(--color-primary-hover);border-color:var(--color-primary-hover)}.btn-danger{background-color:var(--status-danger);border-color:var(--status-danger);color:#fff}.btn-danger:hover:not(:disabled){filter:brightness(.92)}.btn-ghost{border-color:transparent;background:transparent}.btn-ghost:hover:not(:disabled){background:var(--bg-subtle)}.btn-link{border-color:transparent;background:transparent;color:var(--color-primary);padding:0 4px;height:auto}.btn-sm{height:var(--control-h-sm);padding:0 9px;font-size:var(--fs-sm)}.btn-xs{height:24px;padding:0 7px;font-size:var(--fs-xs)}.btn-icon{width:var(--control-h);padding:0}.btn-icon.btn-sm{width:var(--control-h-sm)}.btn-block{width:100%}.btn svg{width:15px;height:15px;flex-shrink:0}.btn-sm svg{width:13px;height:13px}.btn-group{display:inline-flex}.btn-group .btn{border-radius:0;margin-left:-1px}.btn-group .btn:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm);margin-left:0}.btn-group .btn:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.form-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:10px 12px}.col-12{grid-column:span 12}.col-8{grid-column:span 8}.col-6{grid-column:span 6}.col-4{grid-column:span 4}.col-3{grid-column:span 3}.col-9{grid-column:span 9}@media(max-width:767px){.form-grid>[class*=col-]{grid-column:span 12}.form-grid>.col-6.keep,.form-grid>.col-3.keep,.form-grid>.col-4.keep{grid-column:span 6}}.form-row{display:flex;flex-direction:column;gap:4px;min-width:0}.form-label{font-size:var(--fs-sm);font-weight:600;color:var(--text-secondary);display:flex;align-items:center;gap:4px}.form-label .req{color:var(--status-danger)}.form-hint{font-size:var(--fs-xs);color:var(--text-muted)}.form-error{font-size:var(--fs-xs);color:var(--status-danger)}.form-input,.form-textarea,.form-select{width:100%;height:var(--control-h);padding:0 10px;font-size:var(--fs-base);background-color:var(--bg-surface);color:var(--text-main);border:1px solid var(--border-strong);border-radius:var(--radius-sm);outline:none;transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}.form-textarea{height:auto;min-height:72px;padding:8px 10px;resize:vertical;line-height:1.4}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-faint)}.form-input:focus,.form-textarea:focus,.form-select:focus{border-color:var(--border-focus);box-shadow:0 0 0 2px var(--color-primary-soft)}.form-input:disabled,.form-textarea:disabled,.form-select:disabled{background-color:var(--bg-subtle);color:var(--text-muted);cursor:not-allowed}.form-input.is-invalid,.form-textarea.is-invalid{border-color:var(--status-danger)}.form-input.mono{font-family:var(--font-mono)}.form-input-sm{height:var(--control-h-sm);font-size:var(--fs-sm);padding:0 8px}.form-select{appearance:none;padding-right:28px;background-image:linear-gradient(45deg,transparent 50%,var(--text-muted) 50%),linear-gradient(135deg,var(--text-muted) 50%,transparent 50%);background-position:calc(100% - 14px) 55%,calc(100% - 9px) 55%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.input-group{display:flex;align-items:stretch}.input-group .form-input{border-radius:0;margin-left:-1px}.input-group>:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm);margin-left:0}.input-group>:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.input-addon{display:inline-flex;align-items:center;padding:0 10px;font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text-muted);background:var(--bg-subtle);border:1px solid var(--border-strong);white-space:nowrap}.check{display:inline-flex;align-items:center;gap:8px;font-size:var(--fs-base);cursor:pointer;min-height:24px;user-select:none}.check input[type=checkbox],.check input[type=radio]{width:15px;height:15px;accent-color:var(--color-primary);cursor:pointer;margin:0}.check.disabled{opacity:.6;cursor:not-allowed}.switch{position:relative;display:inline-flex;align-items:center;gap:8px;cursor:pointer;user-select:none;font-size:var(--fs-base)}.switch input{position:absolute;opacity:0;width:0;height:0}.switch-track{width:32px;height:18px;border-radius:9px;background:var(--border-strong);border:1px solid var(--border-strong);position:relative;transition:background-color var(--dur) var(--ease);flex-shrink:0}.switch-track:after{content:"";position:absolute;top:1px;left:1px;width:14px;height:14px;border-radius:50%;background:#fff;transition:transform var(--dur) var(--ease)}.switch input:checked+.switch-track{background:var(--color-primary);border-color:var(--color-primary)}.switch input:checked+.switch-track:after{transform:translate(14px)}.switch input:focus-visible+.switch-track{outline:2px solid var(--border-focus);outline-offset:2px}.switch input:disabled+.switch-track{opacity:.5}.fieldset{border:1px solid var(--border-color);border-radius:var(--radius-md);padding:12px 14px 14px;margin:0;min-width:0}.fieldset>legend{padding:0 6px;font-size:var(--fs-sm);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.fieldset-desc{font-size:var(--fs-xs);color:var(--text-muted);margin:-4px 0 10px}.toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 10px;border:1px solid var(--border-color);border-bottom:none;border-radius:var(--radius-md) var(--radius-md) 0 0;background:var(--bg-surface)}.toolbar .form-input,.toolbar .form-select{height:var(--control-h-sm);font-size:var(--fs-sm)}.toolbar-spacer{flex:1 1 auto}.toolbar-sep{width:1px;height:20px;background:var(--border-color)}.toolbar-search{position:relative;min-width:180px;flex:1 1 200px;max-width:360px}.toolbar-search svg{position:absolute;left:8px;top:50%;transform:translateY(-50%);width:13px;height:13px;color:var(--text-muted);pointer-events:none}.toolbar-search .form-input{padding-left:26px}.chip{display:inline-flex;align-items:center;gap:4px;height:var(--control-h-sm);padding:0 10px;font-size:var(--fs-sm);font-weight:500;border:1px solid var(--border-strong);border-radius:999px;background:var(--bg-surface);color:var(--text-secondary);cursor:pointer;transition:background-color var(--dur) var(--ease),border-color var(--dur) var(--ease)}.chip:hover{background:var(--bg-subtle)}.chip.is-active{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary)}.chip-group{display:inline-flex;gap:4px;flex-wrap:wrap}.table-wrap{width:100%;overflow:auto;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-surface)}.toolbar+.table-wrap{border-radius:0 0 var(--radius-md) var(--radius-md)}.table{width:100%;border-collapse:separate;border-spacing:0;font-size:var(--fs-base)}.table th,.table td{padding:6px 10px;border-bottom:1px solid var(--border-color);text-align:left;vertical-align:middle;white-space:nowrap}.table th{position:sticky;top:0;z-index:2;background-color:var(--bg-subtle);font-size:var(--fs-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);user-select:none}.table th.sortable{cursor:pointer}.table th.sortable:hover{color:var(--text-main)}.table th .sort-ind{display:inline-block;width:10px;margin-left:4px;font-family:var(--font-mono);color:var(--color-primary)}.table td.num,.table th.num{text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums}.table th.num{font-family:var(--font-sans)}.table td.wrap{white-space:normal}.table tbody tr:last-child td{border-bottom:none}.table tbody tr.clickable{cursor:pointer}.table tbody tr:hover td{background-color:var(--bg-subtle)}.table tbody tr.is-selected td{background-color:var(--color-primary-soft)}.table tbody tr.is-inactive td{color:var(--text-muted)}.table .cell-actions{display:flex;gap:4px;justify-content:flex-end}.table-compact th,.table-compact td{padding:4px 8px;font-size:var(--fs-sm)}.table-inline-input{height:26px;padding:0 6px;font-size:var(--fs-sm);width:100%;min-width:70px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-main)}.table-inline-input:focus{border-color:var(--border-focus);outline:none}.table-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border-top:1px solid var(--border-color);font-size:var(--fs-sm);color:var(--text-muted);flex-wrap:wrap;background:var(--bg-surface)}.badge{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-xs);font-weight:600;line-height:1;padding:3px 7px;border-radius:var(--radius-sm);border:1px solid transparent;white-space:nowrap;letter-spacing:.01em}.badge.mono{font-family:var(--font-mono)}.badge-success{background:var(--status-success-bg);color:var(--status-success);border-color:#15803d40}.badge-warning{background:var(--status-warning-bg);color:var(--status-warning);border-color:#d977064d}.badge-danger{background:var(--status-danger-bg);color:var(--status-danger);border-color:#be123c40}.badge-info{background:var(--status-info-bg);color:var(--status-info);border-color:#2563eb40}.badge-neutral{background:var(--status-neutral-bg);color:var(--status-neutral);border-color:var(--border-color)}.badge-primary{background:var(--color-primary-soft);color:var(--color-primary);border-color:var(--color-primary-border)}.badge-dot:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.kbd{display:inline-block;font-family:var(--font-mono);font-size:10.5px;line-height:1;padding:3px 5px;border:1px solid var(--border-strong);border-bottom-width:2px;border-radius:3px;background:var(--bg-subtle);color:var(--text-secondary)}.menu{position:absolute;z-index:var(--z-dropdown);min-width:180px;background:var(--bg-surface);border:1px solid var(--border-strong);border-radius:var(--radius-md);padding:4px;box-shadow:0 2px 4px #0f172a0f}.menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:7px 10px;border:none;background:transparent;border-radius:var(--radius-sm);font-size:var(--fs-base);color:var(--text-main);text-align:left;cursor:pointer}.menu-item:hover,.menu-item.is-active{background:var(--bg-subtle)}.menu-item.is-danger{color:var(--status-danger)}.menu-item svg{width:14px;height:14px;color:var(--text-muted)}.menu-sep{height:1px;background:var(--border-color);margin:4px 0}.menu-label{padding:6px 10px 2px;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-weight:600}.alert{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--border-color);border-left-width:3px;border-radius:var(--radius-sm);font-size:var(--fs-base);background:var(--bg-surface)}.alert-info{border-left-color:var(--status-info)}.alert-warning{border-left-color:var(--status-warning);background:var(--status-warning-bg)}.alert-danger{border-left-color:var(--status-danger);background:var(--status-danger-bg)}.alert-success{border-left-color:var(--status-success);background:var(--status-success-bg)}.skeleton{display:block;background:linear-gradient(90deg,var(--bg-subtle) 25%,var(--bg-sunken) 50%,var(--bg-subtle) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.2s linear infinite;border-radius:var(--radius-sm)}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.stat{padding:10px 12px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-surface);display:flex;flex-direction:column;gap:2px;min-width:0}.stat-label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-weight:600}.stat-value{font-family:var(--font-mono);font-size:var(--fs-lg);font-weight:600;color:var(--text-main);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stat-value.text{font-family:var(--font-sans)}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:4px}*::-webkit-scrollbar-track{background:transparent}.fade-enter-active,.fade-leave-active{transition:opacity var(--dur) var(--ease)}.fade-enter-from,.fade-leave-to{opacity:0}.slide-right-enter-active,.slide-right-leave-active{transition:transform .18s var(--ease),opacity .18s var(--ease)}.slide-right-enter-from,.slide-right-leave-to{transform:translate(16px);opacity:0}.swatch{width:22px;height:22px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0;position:relative}.swatch.is-active{border-color:var(--text-main);box-shadow:inset 0 0 0 2px var(--bg-surface)}.swatch-lg{width:30px;height:30px}
