:root{--primary-50: #eff5ff;--primary-100: #dbe7fe;--primary-200: #bfd3fe;--primary-300: #93b4fd;--primary-400: #6090fa;--primary-500: #3b6df6;--primary-600: #1e40af;--primary-700: #1e3a8a;--primary-800: #1e3577;--primary-900: #1e2f5e;--slate-50: #f8fafc;--slate-100: #f1f5f9;--slate-200: #e2e8f0;--slate-300: #cbd5e1;--slate-400: #94a3b8;--slate-500: #64748b;--slate-600: #475569;--slate-700: #334155;--slate-800: #1e293b;--slate-900: #0f172a;--success-50: #ecfdf5;--success-500: #10b981;--success-600: #059669;--warning-50: #fffbeb;--warning-500: #f59e0b;--warning-600: #d97706;--warning-700: #b45309;--danger-50: #fef2f2;--danger-500: #ef4444;--danger-600: #dc2626;--info-50: #ecfeff;--info-500: #06b6d4;--info-600: #0891b2;--bg-app: var(--slate-50);--bg-card: #ffffff;--bg-sidebar: #ffffff;--bg-hover: var(--slate-100);--border: var(--slate-200);--border-strong: var(--slate-300);--text-primary: var(--slate-900);--text-secondary: var(--slate-600);--text-muted: var(--slate-500);--text-disabled: var(--slate-400);--text-inverse: #ffffff;--font-sans: "Geist", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-mono: "Geist Mono", "SF Mono", Menlo, monospace;--text-xs: 12px;--text-sm: 13px;--text-base: 14px;--text-md: 16px;--text-lg: 18px;--text-xl: 20px;--text-2xl: 24px;--text-3xl: 30px;--text-4xl: 36px;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--shadow-xs: 0 1px 2px 0 rgb(15 23 42 / .04);--shadow-sm: 0 1px 2px 0 rgb(15 23 42 / .04), 0 1px 3px 0 rgb(15 23 42 / .06);--shadow-md: 0 2px 4px -1px rgb(15 23 42 / .05), 0 4px 8px -2px rgb(15 23 42 / .08);--shadow-lg: 0 4px 8px -2px rgb(15 23 42 / .06), 0 12px 24px -4px rgb(15 23 42 / .1);--shadow-focus: 0 0 0 3px rgb(30 64 175 / .15);--transition-fast: .12s cubic-bezier(.4, 0, .2, 1);--transition-normal: .2s cubic-bezier(.4, 0, .2, 1);--sidebar-width: 240px;--topbar-height: 56px;--devbar-height: 32px}:root{--primary: var(--primary-600);--primary-dark: var(--primary-700);--gray-50: var(--slate-50);--gray-100: var(--slate-100);--gray-200: var(--slate-200);--gray-300: var(--slate-300);--gray-400: var(--slate-400);--gray-500: var(--slate-500);--gray-600: var(--slate-600);--gray-700: var(--slate-700);--gray-900: var(--slate-900);--success: var(--success-600);--success-bg: var(--success-50);--success-text:#065f46;--warning: var(--warning-600);--warning-bg: var(--warning-50);--warning-text:#92400e;--danger: var(--danger-600);--danger-bg: var(--danger-50);--danger-text: #991b1b;--radius: var(--radius-md);--transition: var(--transition-fast);--sidebar-width: 260px;--card-pad-y: 1.1rem;--card-pad-x: 1.25rem}*,*:before,*:after{box-sizing:border-box}html,body{height:100%;margin:0}body{font-family:var(--font-sans);background:var(--bg-app);color:var(--text-primary);min-height:100vh;font-size:var(--text-base);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv11","ss01"}#app{display:flex;flex-direction:column;min-height:100vh}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{background:var(--slate-200);border-radius:8px;border:2px solid var(--slate-100)}*::-webkit-scrollbar-thumb:hover{background:var(--slate-300)}*::-webkit-scrollbar-track{background:transparent}button{font-family:inherit;cursor:pointer}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:0 var(--space-4);height:40px;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--weight-semibold);line-height:1;transition:all var(--transition-fast);border:1px solid transparent;white-space:nowrap;letter-spacing:-.01em}.btn svg{width:16px;height:16px}.btn-sm{height:32px;padding:0 var(--space-3);font-size:var(--text-xs)}.btn-lg{height:44px;padding:0 var(--space-5);font-size:var(--text-base)}.btn-primary{background:var(--primary-600);color:#fff;box-shadow:var(--shadow-xs),inset 0 1px #ffffff1f}.btn-primary:hover:not(:disabled){background:var(--primary-700);box-shadow:var(--shadow-sm),inset 0 1px #ffffff1f;transform:translateY(-1px)}.btn-primary:active:not(:disabled){background:var(--primary-800);transform:translateY(0)}.btn-primary:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.btn-secondary{background:#fff;color:var(--text-primary);border-color:var(--border);box-shadow:var(--shadow-xs)}.btn-secondary:hover:not(:disabled){background:var(--slate-50);border-color:var(--border-strong)}.btn-secondary:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.btn-ghost:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:var(--shadow-xs)}.field{display:flex;flex-direction:column;gap:var(--space-2)}.label{display:block;font-size:11px;font-weight:var(--weight-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.input,.select{width:100%;height:40px;padding:0 var(--space-3);background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-primary);transition:all var(--transition-fast);-moz-appearance:none;appearance:none;-webkit-appearance:none;font-family:inherit}.input::placeholder{color:var(--text-muted)}.input:hover,.select:hover{border-color:var(--border-strong)}.input:focus,.select:focus{outline:none;border-color:var(--primary-500);box-shadow:var(--shadow-focus)}.select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='%2364748b'%3E%3Cpath fill-rule='evenodd' d='M5.23 7.21a.75.75 0 011.06.02L10 11.168l3.71-3.938a.75.75 0 111.08 1.04l-4.25 4.5a.75.75 0 01-1.08 0l-4.25-4.5a.75.75 0 01.02-1.06z' clip-rule='evenodd'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;padding-right:36px}.input--with-icon{padding-left:36px}.input-wrap{position:relative}.input-wrap__icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-muted);width:16px;height:16px;pointer-events:none}.card,.section{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.section{overflow:hidden;margin-bottom:var(--space-5)}.section__header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border)}.section__title{font-size:var(--text-md);font-weight:var(--weight-semibold);color:var(--text-primary);letter-spacing:-.01em}.section__subtitle{font-size:var(--text-xs);color:var(--text-muted);margin-top:2px}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-4);margin-bottom:var(--space-6)}.kpi-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-5);position:relative;overflow:hidden;transition:all var(--transition-normal)}.kpi-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.kpi-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--primary-600)}.kpi-card--success:before{background:var(--success-500)}.kpi-card--warning:before{background:var(--warning-500)}.kpi-card--info:before{background:var(--info-500)}.kpi-card__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.kpi-card__icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;background:var(--primary-50);color:var(--primary-600);border-radius:var(--radius-md)}.kpi-card__icon svg{width:18px;height:18px}.kpi-card--success .kpi-card__icon{background:var(--success-50);color:var(--success-600)}.kpi-card--warning .kpi-card__icon{background:var(--warning-50);color:var(--warning-600)}.kpi-card--info .kpi-card__icon{background:var(--info-50);color:var(--info-600)}.kpi-card__label{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-2)}.kpi-card__value{font-family:var(--font-mono);font-size:var(--text-3xl);font-weight:var(--weight-semibold);color:var(--text-primary);font-variant-numeric:tabular-nums;line-height:1.1;letter-spacing:-.02em;margin-bottom:var(--space-2)}.kpi-card__meta{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--text-muted)}.kpi-card__trend{display:inline-flex;align-items:center;gap:2px;padding:2px 6px;border-radius:var(--radius-xs);font-weight:var(--weight-semibold);font-size:11px;font-family:var(--font-mono)}.kpi-card__trend--up{background:var(--success-50);color:var(--success-600)}.kpi-card__trend--down{background:var(--danger-50);color:var(--danger-600)}.kpi-card__trend svg{width:10px;height:10px}.table-wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.table thead th{padding:var(--space-3) var(--space-5);text-align:left;font-size:11px;font-weight:var(--weight-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;background:var(--slate-50);border-bottom:1px solid var(--border)}.table tbody td{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border);color:var(--text-primary);vertical-align:middle}.table tbody tr{transition:background var(--transition-fast)}.table tbody tr:hover{background:var(--slate-50)}.table tbody tr:last-child td{border-bottom:none}.table .is-numeric{text-align:right;font-variant-numeric:tabular-nums;font-family:var(--font-mono);font-feature-settings:"tnum" on}.value-positive{color:var(--success-600);font-weight:var(--weight-semibold)}.value-warning{color:var(--warning-700);font-weight:var(--weight-semibold)}.value-muted{color:var(--text-muted)}.table__user{display:flex;align-items:center;gap:var(--space-3)}.table__user .avatar{width:28px;height:28px;font-size:11px}.table__user-info{display:flex;flex-direction:column}.table__user-name{font-weight:var(--weight-medium)}.table__user-meta{font-size:var(--text-xs);color:var(--text-muted)}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px 8px;border-radius:var(--radius-full);font-size:11px;font-weight:var(--weight-semibold);letter-spacing:.01em;border:1px solid}.badge:before{content:"";width:6px;height:6px;border-radius:var(--radius-full);background:currentColor}.badge--success{background:var(--success-50);color:var(--success-600);border-color:#a7f3d0}.badge--warning{background:var(--warning-50);color:var(--warning-700);border-color:#fde68a}.badge--danger{background:var(--danger-50);color:var(--danger-600);border-color:#fecaca}.badge--info{background:var(--info-50);color:var(--info-600);border-color:#a5f3fc}.badge--neutral{background:var(--slate-100);color:var(--slate-700);border-color:var(--slate-200)}.avatar{width:32px;height:32px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--primary-400),var(--primary-700));color:#fff;display:flex;align-items:center;justify-content:center;font-size:var(--text-sm);font-weight:var(--weight-semibold);flex-shrink:0}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--space-12) var(--space-6);color:var(--text-muted);gap:var(--space-3)}.empty-state__icon{width:48px;height:48px;border-radius:var(--radius-full);background:var(--slate-100);color:var(--slate-400);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-2)}.empty-state__icon svg{width:24px;height:24px}.empty-state__title{font-size:var(--text-md);font-weight:var(--weight-semibold);color:var(--text-primary);letter-spacing:-.01em}.empty-state__text{font-size:var(--text-sm);color:var(--text-muted);max-width:400px}.empty-state .btn{margin-top:var(--space-2)}.skeleton{display:block;background:linear-gradient(90deg,var(--slate-100) 0%,var(--slate-200) 50%,var(--slate-100) 100%);background-size:200% 100%;border-radius:var(--radius-sm);animation:skeleton-shimmer 1.4s ease-in-out infinite}.skeleton--text{height:var(--text-base);width:100%;border-radius:var(--radius-xs)}.skeleton--title{height:var(--text-2xl);width:60%}.skeleton--card{height:120px;width:100%;border-radius:var(--radius-lg)}.skeleton--row{height:48px;width:100%;border-radius:var(--radius-sm);margin-bottom:var(--space-2)}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.toast-region{position:fixed;top:calc(var(--shell-top, 0px) + var(--space-4));right:var(--space-4);z-index:1000;display:flex;flex-direction:column;gap:var(--space-2);pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:flex-start;gap:var(--space-3);min-width:280px;max-width:420px;padding:var(--space-3) var(--space-4);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);font-size:var(--text-sm);color:var(--text-primary);animation:toast-slide-in var(--transition-normal) ease-out}.toast__icon{flex-shrink:0;width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center}.toast__icon svg{width:18px;height:18px}.toast__body{flex:1;min-width:0}.toast__title{font-weight:var(--weight-semibold)}.toast__message{color:var(--text-secondary);margin-top:2px}.toast--success{border-left:3px solid var(--success-500)}.toast--success .toast__icon{color:var(--success-600)}.toast--warning{border-left:3px solid var(--warning-500)}.toast--warning .toast__icon{color:var(--warning-600)}.toast--danger{border-left:3px solid var(--danger-500)}.toast--danger .toast__icon{color:var(--danger-600)}.toast--info{border-left:3px solid var(--info-500)}.toast--info .toast__icon{color:var(--info-600)}@keyframes toast-slide-in{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}:where(a,button,input,select,textarea,[tabindex]):focus{outline:none}:where(a,[tabindex]):focus-visible{outline:none;box-shadow:var(--shadow-focus);border-radius:var(--radius-xs)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.btn-primary:hover,.kpi-card:hover{transform:none}.skeleton{animation:none;background:var(--slate-100)}}.sidebar[data-v-06ef3eb7]{position:fixed;top:var(--shell-top, 0);left:0;width:260px;height:calc(100vh - var(--shell-top, 0px));background:var(--bg-sidebar);border-right:1px solid var(--border);display:flex;flex-direction:column;z-index:100;transition:width .2s ease}.sidebar.is-collapsed[data-v-06ef3eb7]{width:64px}.sidebar-top[data-v-06ef3eb7]{display:flex;align-items:center;justify-content:space-between;padding:.85rem .75rem .75rem 1.1rem;border-bottom:1px solid var(--gray-200)}.sidebar-brand[data-v-06ef3eb7]{display:flex;align-items:center;text-decoration:none;flex:1;min-width:0}.sidebar-logo[data-v-06ef3eb7]{height:48px;width:auto}.sidebar.is-collapsed .sidebar-brand[data-v-06ef3eb7]{display:none}.collapse-btn[data-v-06ef3eb7]{background:transparent;border:1px solid var(--gray-200);border-radius:var(--radius-sm);width:28px;height:28px;padding:0;cursor:pointer;color:var(--gray-500);font-size:.9rem;line-height:1;display:flex;align-items:center;justify-content:center;font-family:inherit;flex-shrink:0}.collapse-btn[data-v-06ef3eb7]:hover{color:var(--primary);border-color:var(--primary)}.sidebar.is-collapsed .sidebar-top[data-v-06ef3eb7]{justify-content:center;padding:.85rem .5rem .75rem}.sidebar-nav[data-v-06ef3eb7]{flex:1;overflow-y:auto;overflow-x:hidden;padding:.5rem 0}.nav-section[data-v-06ef3eb7]{margin-bottom:.125rem}.nav-section-label[data-v-06ef3eb7]{display:block;font-size:.68rem;font-weight:700;color:var(--gray-400);text-transform:uppercase;letter-spacing:.08em;padding:.75rem 1rem .3rem}.sidebar.is-collapsed .nav-section-label[data-v-06ef3eb7]{display:none}.nav-section a[data-v-06ef3eb7]{position:relative;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);margin:1px var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-secondary);text-decoration:none;transition:all var(--transition-fast);white-space:nowrap;overflow:hidden}.nav-section a[data-v-06ef3eb7]:hover{background:var(--bg-hover);color:var(--text-primary)}.nav-section a.router-link-active[data-v-06ef3eb7]{background:var(--primary-50);color:var(--primary-700);font-weight:var(--weight-semibold)}.nav-section a.router-link-active[data-v-06ef3eb7]:before{content:"";position:absolute;left:calc(var(--space-3) * -1);top:50%;transform:translateY(-50%);width:3px;height:18px;background:var(--primary-600);border-radius:0 var(--radius-xs) var(--radius-xs) 0}.nav-icon[data-v-06ef3eb7]{width:20px;text-align:center;flex-shrink:0;font-size:.95rem}.nav-label[data-v-06ef3eb7]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.nav-badge[data-v-06ef3eb7]{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:18px;padding:0 .35rem;background:var(--danger);color:#fff;border-radius:999px;font-size:.68rem;font-weight:700;flex-shrink:0}.nav-badge-warn[data-v-06ef3eb7]{background:#f59e0b;color:#78350f}.sidebar.is-collapsed .nav-badge[data-v-06ef3eb7]{display:none}.sidebar.is-collapsed .nav-section a[data-v-06ef3eb7]{justify-content:center;padding:var(--space-2) 0;margin:1px var(--space-2)}.sidebar.is-collapsed .nav-section a.router-link-active[data-v-06ef3eb7]:before{display:none}.sidebar.is-collapsed .nav-label[data-v-06ef3eb7]{display:none}.sidebar-footer[data-v-06ef3eb7]{padding:.75rem .85rem;border-top:1px solid var(--gray-200);display:flex;flex-direction:column;gap:.55rem}.sidebar-user-row[data-v-06ef3eb7]{display:flex;align-items:center;gap:.6rem;padding:.35rem;margin:-.35rem -.35rem 0;border-radius:var(--radius-sm);text-decoration:none;color:inherit;transition:background var(--transition)}.sidebar-user-row[data-v-06ef3eb7]:hover{background:var(--gray-50)}.sidebar-user-row.router-link-active .sidebar-avatar[data-v-06ef3eb7]{background:var(--primary);color:#fff}.sidebar.is-collapsed .sidebar-user-row[data-v-06ef3eb7]{justify-content:center}.sidebar-avatar[data-v-06ef3eb7]{width:30px;height:30px;border-radius:50%;background:var(--primary-100);color:var(--primary);font-size:.75rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sidebar-username[data-v-06ef3eb7]{font-size:.8rem;font-weight:600;color:var(--gray-700);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar.is-collapsed .sidebar-username[data-v-06ef3eb7],.sidebar.is-collapsed .sidebar-version[data-v-06ef3eb7]{display:none}.sidebar-version[data-v-06ef3eb7]{display:flex;justify-content:space-between;font-size:.68rem;color:var(--gray-400)}.logout-btn[data-v-06ef3eb7]{width:100%;padding:.4rem .6rem;background:transparent;border:1px solid var(--gray-200);border-radius:var(--radius-sm);color:var(--gray-500);cursor:pointer;font-size:.8rem;font-weight:500;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;transition:border-color var(--transition),color var(--transition),background var(--transition);font-family:inherit}.logout-btn[data-v-06ef3eb7]:hover{border-color:var(--danger);color:var(--danger);background:var(--danger-bg)}.logout-icon[data-v-06ef3eb7]{font-size:.95rem}.sidebar.is-collapsed .logout-label[data-v-06ef3eb7],.mobile-close[data-v-06ef3eb7]{display:none}@media(max-width:900px){.sidebar[data-v-06ef3eb7]{transform:translate(-100%);transition:transform .25s ease;width:260px!important}.sidebar.is-open[data-v-06ef3eb7]{transform:translate(0);box-shadow:var(--shadow-lg)}.sidebar.is-collapsed .sidebar-brand[data-v-06ef3eb7],.sidebar.is-collapsed .nav-section-label[data-v-06ef3eb7],.sidebar.is-collapsed .nav-label[data-v-06ef3eb7],.sidebar.is-collapsed .sidebar-username[data-v-06ef3eb7],.sidebar.is-collapsed .sidebar-version[data-v-06ef3eb7],.sidebar.is-collapsed .logout-label[data-v-06ef3eb7]{display:initial}.sidebar.is-collapsed .nav-section a[data-v-06ef3eb7]{justify-content:flex-start;padding:.5rem 1rem .5rem 1.1rem}.sidebar .collapse-btn[data-v-06ef3eb7]{display:none}.mobile-close[data-v-06ef3eb7]{display:flex;align-items:center;justify-content:center;position:absolute;top:.75rem;right:.75rem;width:32px;height:32px;background:none;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:1rem;color:var(--gray-500);padding:0;box-shadow:none}.mobile-close[data-v-06ef3eb7]:hover{background:var(--gray-100);box-shadow:none}}.user-menu[data-v-df81b04c]{position:relative}.avatar-btn[data-v-df81b04c]{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .45rem .25rem .3rem;background:#fff;border:1px solid var(--gray-200);border-radius:999px;cursor:pointer;font-family:inherit;transition:border-color var(--transition),box-shadow var(--transition);box-shadow:none}.avatar-btn[data-v-df81b04c]:hover{border-color:var(--primary-200)}.avatar[data-v-df81b04c]{width:28px;height:28px;border-radius:50%;background:var(--primary);color:#fff;font-size:.72rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.caret[data-v-df81b04c]{font-size:.65rem;color:var(--gray-500)}.dropdown[data-v-df81b04c]{position:absolute;top:calc(100% + 6px);right:0;min-width:220px;background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:.35rem;z-index:120}.dropdown-header[data-v-df81b04c]{padding:.5rem .6rem}.dropdown-name[data-v-df81b04c]{font-size:.85rem;font-weight:600;color:var(--gray-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dropdown-sub[data-v-df81b04c]{font-size:.72rem;color:var(--gray-500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:.1rem}.dropdown-sep[data-v-df81b04c]{height:1px;background:var(--gray-100);margin:.2rem}.dropdown-item[data-v-df81b04c]{display:flex;align-items:center;gap:.55rem;width:100%;padding:.5rem .6rem;font-size:.83rem;color:var(--gray-700);background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;text-decoration:none;font-family:inherit;text-align:left;box-shadow:none;transition:background var(--transition),color var(--transition)}.dropdown-item[data-v-df81b04c]:hover{background:var(--gray-50);color:var(--primary);box-shadow:none}.dropdown-item.danger[data-v-df81b04c]:hover{background:var(--danger-bg);color:var(--danger)}.item-icon[data-v-df81b04c]{width:18px;text-align:center;font-size:.9rem;flex-shrink:0}.topbar[data-v-ba75488b]{position:sticky;top:var(--shell-top, 0);z-index:100;height:var(--topbar-height);background:#ffffffd9;backdrop-filter:saturate(180%) blur(12px);-webkit-backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 var(--space-6);gap:var(--space-4)}.breadcrumb[data-v-ba75488b]{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-muted)}.breadcrumb__sep[data-v-ba75488b]{color:var(--slate-300)}.breadcrumb__current[data-v-ba75488b]{color:var(--text-primary);font-weight:var(--weight-medium)}.search[data-v-ba75488b]{flex:1;max-width:480px;margin:0 auto;position:relative}.search input[data-v-ba75488b]{width:100%;height:36px;padding:0 var(--space-3) 0 36px;background:var(--slate-100);border:1px solid transparent;border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-primary);transition:all var(--transition-fast);font-family:inherit}.search input[data-v-ba75488b]::placeholder{color:var(--text-muted)}.search input[data-v-ba75488b]:hover{background:var(--slate-200)}.search input[data-v-ba75488b]:focus{outline:none;background:#fff;border-color:var(--primary-500);box-shadow:var(--shadow-focus)}.search__icon[data-v-ba75488b]{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-muted);width:16px;height:16px;pointer-events:none;display:inline-flex}.search__icon svg[data-v-ba75488b]{width:16px;height:16px}.search__shortcut[data-v-ba75488b]{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:11px;color:var(--text-muted);background:#fff;border:1px solid var(--border);border-radius:var(--radius-xs);padding:2px 6px;font-family:var(--font-mono)}.topbar__actions[data-v-ba75488b]{display:flex;align-items:center;gap:var(--space-2);margin-left:auto}.icon-btn[data-v-ba75488b]{width:36px;height:36px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:all var(--transition-fast);position:relative;background:none;border:none}.icon-btn[data-v-ba75488b]:hover{background:var(--bg-hover);color:var(--text-primary)}.icon-btn svg[data-v-ba75488b]{width:18px;height:18px}.icon-btn__badge[data-v-ba75488b]{position:absolute;top:6px;right:6px;width:8px;height:8px;background:var(--danger-500);border:2px solid white;border-radius:var(--radius-full)}@media(max-width:900px){.topbar[data-v-ba75488b]{display:none}}.devbar[data-v-d6709ca3]{position:sticky;top:0;z-index:200;height:var(--devbar-height);background:var(--warning-50);border-bottom:1px solid #fcd34d;color:var(--warning-700);display:flex;align-items:center;justify-content:center;font-size:var(--text-xs);font-weight:var(--weight-medium);gap:var(--space-2)}.devbar strong[data-v-d6709ca3]{font-weight:var(--weight-semibold)}.devbar__dot[data-v-d6709ca3]{width:6px;height:6px;border-radius:var(--radius-full);background:var(--warning-500);box-shadow:0 0 0 3px #f59e0b33;animation:devbar-pulse-d6709ca3 2s ease-in-out infinite}@keyframes devbar-pulse-d6709ca3{0%,to{opacity:1}50%{opacity:.5}}@media(prefers-reduced-motion:reduce){.devbar__dot[data-v-d6709ca3]{animation:none}}.app-footer[data-v-f3e652b8]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem;padding:.875rem 1.5rem;border-top:1px solid #e5e7eb;background:#fff;font-size:.78rem;color:#9ca3af;margin-top:auto}.footer-links[data-v-f3e652b8]{display:flex;gap:1rem}.footer-links a[data-v-f3e652b8]{color:#9ca3af;text-decoration:none}.footer-links a[data-v-f3e652b8]:hover{color:#1b4f8a;text-decoration:underline}.idle-overlay[data-v-7d07f134]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;z-index:200;display:flex;align-items:center;justify-content:center;padding:1rem}.idle-box[data-v-7d07f134]{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:1.5rem 1.75rem;max-width:380px;width:100%;text-align:center}.idle-box h2[data-v-7d07f134]{font-size:1.1rem;font-weight:700;color:var(--gray-900);margin:0 0 .5rem}.idle-box p[data-v-7d07f134]{font-size:.9rem;color:var(--gray-600);margin:0 0 1.25rem}.stay-btn[data-v-7d07f134]{padding:.55rem 1.25rem;background:var(--primary);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:.875rem;font-weight:600;font-family:inherit}.stay-btn[data-v-7d07f134]:hover{background:var(--primary-dark)}.app-shell[data-v-0e09bd4b]{--shell-top: 0px;display:flex;flex-direction:column;min-height:100vh}.app-shell.with-devbar[data-v-0e09bd4b]{--shell-top: var(--devbar-height)}.app-content[data-v-0e09bd4b]{flex:1;display:flex;flex-direction:column;min-height:100vh}.app-content.with-sidebar[data-v-0e09bd4b]{margin-left:260px;transition:margin-left .2s ease}.app-shell.sidebar-collapsed .app-content.with-sidebar[data-v-0e09bd4b]{margin-left:64px}.mobile-header[data-v-0e09bd4b]{display:none;position:fixed;top:var(--shell-top, 0);left:0;right:0;height:56px;background:#fff;border-bottom:1px solid var(--gray-200);align-items:center;padding:0 1rem;gap:.75rem;z-index:90}.hamburger[data-v-0e09bd4b]{background:none;border:none;cursor:pointer;padding:.4rem;display:flex;flex-direction:column;gap:5px;box-shadow:none;flex-shrink:0}.hamburger span[data-v-0e09bd4b]{display:block;width:22px;height:2px;background:var(--gray-700);border-radius:2px}.hamburger[data-v-0e09bd4b]:hover{background:none;box-shadow:none}.mobile-brand[data-v-0e09bd4b]{display:flex;align-items:center}.mobile-logo[data-v-0e09bd4b]{height:42px;width:auto}.mobile-header-right[data-v-0e09bd4b]{margin-left:auto;display:flex;align-items:center}.sidebar-overlay[data-v-0e09bd4b]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a66;z-index:99}@media(max-width:900px){.app-content.with-sidebar[data-v-0e09bd4b],.app-shell.sidebar-collapsed .app-content.with-sidebar[data-v-0e09bd4b]{margin-left:0;padding-top:calc(56px + var(--shell-top, 0px))}.mobile-header[data-v-0e09bd4b]{display:flex}}
