:root{--tk-hue: 245;--tk-gray-0: oklch(99.2% .003 var(--tk-hue));--tk-gray-50: oklch(97.8% .004 var(--tk-hue));--tk-gray-100: oklch(95.5% .005 var(--tk-hue));--tk-gray-200: oklch(91.5% .006 var(--tk-hue));--tk-gray-300: oklch(85% .008 var(--tk-hue));--tk-gray-400: oklch(72% .01 var(--tk-hue));--tk-gray-500: oklch(58% .012 var(--tk-hue));--tk-gray-600: oklch(45% .014 var(--tk-hue));--tk-gray-700: oklch(35% .014 var(--tk-hue));--tk-gray-800: oklch(24% .012 var(--tk-hue));--tk-gray-900: oklch(16% .01 var(--tk-hue));--tk-gray-950: oklch(10% .008 var(--tk-hue));--tk-brand-50: oklch(97% .02 var(--tk-hue));--tk-brand-100: oklch(94% .05 var(--tk-hue));--tk-brand-200: oklch(87% .1 var(--tk-hue));--tk-brand-300: oklch(78% .16 var(--tk-hue));--tk-brand-400: oklch(68% .22 var(--tk-hue));--tk-brand-500: oklch(56% .28 var(--tk-hue));--tk-brand-600: oklch(48% .29 var(--tk-hue));--tk-brand-700: oklch(40% .25 var(--tk-hue));--tk-brand-800: oklch(32% .19 var(--tk-hue));--tk-brand-900: oklch(24% .14 var(--tk-hue));--tk-success: oklch(62% .15 152);--tk-warning: oklch(74% .16 75);--tk-danger: oklch(60% .2 25);--tk-info: oklch(65% .13 230);--tk-bg: var(--tk-gray-50);--tk-bg-elev: var(--tk-gray-0);--tk-bg-sunken: var(--tk-gray-100);--tk-surface: color-mix(in oklab, var(--tk-gray-0) 75%, transparent);--tk-fg: var(--tk-gray-900);--tk-fg-muted: var(--tk-gray-600);--tk-fg-subtle: var(--tk-gray-500);--tk-fg-faint: var(--tk-gray-400);--tk-border: color-mix(in oklab, var(--tk-gray-900) 8%, transparent);--tk-border-strong: color-mix(in oklab, var(--tk-gray-900) 16%, transparent);--tk-accent: var(--tk-brand-600);--tk-accent-hover: var(--tk-brand-700);--tk-on-accent: white;--tk-font-sans: "Inter", -apple-system, ui-sans-serif, system-ui, sans-serif;--tk-font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--tk-font-serif: "Noto Serif SC", serif;--tk-text-2xs: 10px;--tk-text-xs: 11px;--tk-text-sm: 13px;--tk-text-base: 15px;--tk-text-md: 17px;--tk-text-lg: 20px;--tk-text-xl: 24px;--tk-text-2xl: 30px;--tk-text-3xl: 38px;--tk-text-4xl: 48px;--tk-text-5xl: 64px;--tk-space-0: 0;--tk-space-1: 4px;--tk-space-2: 8px;--tk-space-3: 12px;--tk-space-4: 16px;--tk-space-5: 20px;--tk-space-6: 24px;--tk-space-8: 32px;--tk-space-10: 40px;--tk-space-12: 48px;--tk-space-16: 64px;--tk-space-20: 80px;--tk-radius-scale: 1;--tk-radius-xs: calc(2px * var(--tk-radius-scale));--tk-radius-sm: calc(4px * var(--tk-radius-scale));--tk-radius-md: calc(8px * var(--tk-radius-scale));--tk-radius-lg: calc(12px * var(--tk-radius-scale));--tk-radius-xl: calc(18px * var(--tk-radius-scale));--tk-radius-2xl: calc(24px * var(--tk-radius-scale));--tk-radius-full: 999px;--tk-shadow-1: 0 .5px 0 rgba(255,255,255,.6) inset, 0 1px 2px rgba(15,18,28,.06), 0 1px 1px rgba(15,18,28,.04);--tk-shadow-2: 0 .5px 0 rgba(255,255,255,.6) inset, 0 4px 12px rgba(15,18,28,.07), 0 2px 4px rgba(15,18,28,.04);--tk-shadow-3: 0 .5px 0 rgba(255,255,255,.5) inset, 0 12px 32px rgba(15,18,28,.1), 0 4px 8px rgba(15,18,28,.05);--tk-shadow-4: 0 .5px 0 rgba(255,255,255,.4) inset, 0 28px 64px rgba(15,18,28,.16), 0 8px 16px rgba(15,18,28,.08);--tk-shadow-focus: 0 0 0 3px color-mix(in oklab, var(--tk-accent) 28%, transparent);--tk-ease-standard: cubic-bezier(.25,.46,.45,.94);--tk-ease-emphasized: cubic-bezier(.2,.8,.2,1);--tk-ease-spring: cubic-bezier(.34,1.56,.64,1);--tk-dur-instant: 80ms;--tk-dur-fast: .16s;--tk-dur-base: .24s;--tk-dur-slow: .36s;--tk-dur-slower: .52s;--tk-z-base: 0;--tk-z-sticky: 1100;--tk-z-overlay: 1200;--tk-z-modal: 1300;--tk-z-dropdown: 1350;--tk-z-toast: 1400;--tk-z-tooltip: 1500;--tk-density: 1;color-scheme:light}[data-theme=dark],.dark{--tk-bg: oklch(14% .012 var(--tk-hue));--tk-bg-elev: oklch(18% .014 var(--tk-hue));--tk-bg-sunken: oklch(11% .01 var(--tk-hue));--tk-surface: color-mix(in oklab, oklch(22% .014 var(--tk-hue)) 75%, transparent);--tk-fg: oklch(96% .005 var(--tk-hue));--tk-fg-muted: oklch(72% .01 var(--tk-hue));--tk-fg-subtle: oklch(58% .01 var(--tk-hue));--tk-fg-faint: oklch(42% .012 var(--tk-hue));--tk-border: color-mix(in oklab, white 10%, transparent);--tk-border-strong: color-mix(in oklab, white 18%, transparent);--tk-accent: var(--tk-brand-400);--tk-accent-hover: var(--tk-brand-300);--tk-on-accent: oklch(14% .012 var(--tk-hue));--tk-shadow-1: 0 .5px 0 rgba(255,255,255,.04) inset, 0 1px 2px rgba(0,0,0,.4);--tk-shadow-2: 0 .5px 0 rgba(255,255,255,.04) inset, 0 4px 12px rgba(0,0,0,.35), 0 2px 4px rgba(0,0,0,.3);--tk-shadow-3: 0 .5px 0 rgba(255,255,255,.04) inset, 0 12px 32px rgba(0,0,0,.5), 0 4px 8px rgba(0,0,0,.3);--tk-shadow-4: 0 .5px 0 rgba(255,255,255,.04) inset, 0 28px 64px rgba(0,0,0,.6), 0 8px 16px rgba(0,0,0,.4);color-scheme:dark}@media(prefers-color-scheme:dark){:root:not([data-theme=light]):not(.light){--tk-bg: oklch(14% .012 var(--tk-hue));--tk-bg-elev: oklch(18% .014 var(--tk-hue));--tk-bg-sunken: oklch(11% .01 var(--tk-hue));--tk-surface: color-mix(in oklab, oklch(22% .014 var(--tk-hue)) 75%, transparent);--tk-fg: oklch(96% .005 var(--tk-hue));--tk-fg-muted: oklch(72% .01 var(--tk-hue));--tk-fg-subtle: oklch(58% .01 var(--tk-hue));--tk-fg-faint: oklch(42% .012 var(--tk-hue));--tk-border: color-mix(in oklab, white 10%, transparent);--tk-border-strong: color-mix(in oklab, white 18%, transparent);--tk-accent: var(--tk-brand-400);--tk-accent-hover: var(--tk-brand-300);--tk-on-accent: oklch(14% .012 var(--tk-hue));--tk-shadow-1: 0 .5px 0 rgba(255,255,255,.04) inset, 0 1px 2px rgba(0,0,0,.4);--tk-shadow-2: 0 .5px 0 rgba(255,255,255,.04) inset, 0 4px 12px rgba(0,0,0,.35), 0 2px 4px rgba(0,0,0,.3);--tk-shadow-3: 0 .5px 0 rgba(255,255,255,.04) inset, 0 12px 32px rgba(0,0,0,.5), 0 4px 8px rgba(0,0,0,.3);--tk-shadow-4: 0 .5px 0 rgba(255,255,255,.04) inset, 0 28px 64px rgba(0,0,0,.6), 0 8px 16px rgba(0,0,0,.4);color-scheme:dark}}body{font-family:var(--tk-font-sans);font-size:var(--tk-text-base);line-height:1.55;color:var(--tk-fg);background:var(--tk-bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;transition:background var(--tk-dur-base) var(--tk-ease-standard),color var(--tk-dur-base) var(--tk-ease-standard)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background:radial-gradient(60% 50% at 8% 0%,color-mix(in oklab,var(--tk-brand-200) 28%,transparent),transparent 60%),radial-gradient(50% 40% at 100% 30%,color-mix(in oklab,var(--tk-brand-100) 25%,transparent),transparent 60%),radial-gradient(40% 30% at 50% 100%,color-mix(in oklab,var(--tk-brand-50) 45%,transparent),transparent 60%);opacity:.85;transition:opacity var(--tk-dur-base) var(--tk-ease-standard)}[data-theme=dark] body:before,.dark body:before{opacity:.35}@media(prefers-color-scheme:dark){:root:not([data-theme=light]):not(.light) body:before{opacity:.35}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--tk-border-strong);border-radius:var(--tk-radius-full);border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:var(--tk-fg-faint);background-clip:padding-box}::selection{background:color-mix(in oklab,var(--tk-accent) 28%,transparent);color:var(--tk-fg)}.tk-mono{font-family:var(--tk-font-mono)}.tk-serif{font-family:var(--tk-font-serif)}.surface-glass{background:var(--tk-surface);backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);border:.5px solid var(--tk-border)}.hairline{border-width:.5px}.text-balance{text-wrap:balance}.text-pretty{text-wrap:pretty}.num-tabular{font-variant-numeric:tabular-nums}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--tk-text-xs: 12px;--tk-text-sm: 14px;--tk-text-base: 14px;--tk-text-md: 16px;--tk-text-lg: 18px;--tk-text-xl: 22px;--tk-text-2xl: 28px;--bg: var(--tk-bg);--bg-subtle: var(--tk-bg-sunken);--sidebar-bg: var(--tk-gray-950);--sidebar-text: color-mix(in oklab, white 60%, transparent);--sidebar-active: var(--tk-accent);--sidebar-hover: color-mix(in oklab, white 6%, transparent);--card-bg: var(--tk-bg-elev);--input-bg: var(--tk-bg-elev);--table-header-bg: var(--tk-bg-sunken);--hover-bg: color-mix(in oklab, var(--tk-fg) 4%, transparent);--code-bg: var(--tk-bg-sunken);--text: var(--tk-fg);--text-secondary: var(--tk-fg-muted);--text-muted: var(--tk-fg-subtle);--text-inverse: var(--tk-on-accent);--border: var(--tk-border-strong);--border-light: var(--tk-border);--primary: var(--tk-accent);--primary-hover: var(--tk-accent-hover);--primary-light: color-mix(in oklab, var(--tk-accent) 10%, transparent);--primary-ring: color-mix(in oklab, var(--tk-accent) 28%, transparent);--success: var(--tk-success);--success-light: color-mix(in oklab, var(--tk-success) 12%, transparent);--warning: var(--tk-warning);--warning-light: color-mix(in oklab, var(--tk-warning) 14%, transparent);--danger: var(--tk-danger);--danger-light: color-mix(in oklab, var(--tk-danger) 12%, transparent);--radius-sm: var(--tk-radius-sm);--radius: var(--tk-radius-md);--radius-lg: var(--tk-radius-lg);--radius-xl: var(--tk-radius-xl);--radius-full: var(--tk-radius-full);--shadow-xs: var(--tk-shadow-1);--shadow-sm: var(--tk-shadow-1);--shadow: var(--tk-shadow-2);--shadow-md: var(--tk-shadow-3);--shadow-lg: var(--tk-shadow-4);--shadow-primary: var(--tk-shadow-focus);--transition-fast: var(--tk-dur-fast) var(--tk-ease-standard);--transition: var(--tk-dur-base) var(--tk-ease-standard);--transition-slow: var(--tk-dur-slow) var(--tk-ease-emphasized)}[data-theme=dark],.dark{--sidebar-bg: oklch(8% .012 var(--tk-hue));--sidebar-text: color-mix(in oklab, white 45%, transparent);--sidebar-hover: color-mix(in oklab, white 4%, transparent);--primary-light: color-mix(in oklab, var(--tk-accent) 14%, transparent);--hover-bg: color-mix(in oklab, white 6%, transparent)}body{font-family:var(--tk-font-sans);background:var(--tk-bg);color:var(--tk-fg);font-size:var(--tk-text-sm);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--primary-hover)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 18px;border:1px solid var(--tk-border);border-radius:var(--radius-sm);font-size:var(--tk-text-sm);font-weight:500;cursor:pointer;background:var(--card-bg);color:var(--text);transition:all var(--transition);white-space:nowrap;line-height:1.5;position:relative;overflow:hidden}.btn:hover{border-color:var(--primary);color:var(--primary);box-shadow:var(--tk-shadow-1);transform:translateY(-1px)}.btn:active{transform:translateY(0);box-shadow:none}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.btn:focus-visible{outline:none;box-shadow:var(--tk-shadow-focus)}.btn-primary{background:var(--primary);color:var(--tk-on-accent);border-color:var(--primary);font-weight:600}.btn-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover);color:var(--tk-on-accent);box-shadow:var(--tk-shadow-2)}.btn-danger{color:var(--danger);border-color:color-mix(in oklab,var(--danger) 30%,transparent)}.btn-danger:hover{background:var(--danger);color:var(--tk-on-accent);border-color:var(--danger);box-shadow:var(--tk-shadow-2)}.btn-success{color:var(--success);border-color:color-mix(in oklab,var(--success) 30%,transparent)}.btn-success:hover{background:var(--success);color:var(--tk-on-accent);border-color:var(--success);box-shadow:var(--tk-shadow-2)}.btn-sm{padding:5px 12px;font-size:var(--tk-text-sm);border-radius:var(--radius-sm)}.btn-xs{padding:3px 8px;font-size:var(--tk-text-xs);border-radius:var(--tk-radius-xs)}.btn-link{border:none;background:none;color:var(--primary);padding:4px 8px;cursor:pointer;font-size:var(--tk-text-sm)}.btn-link:hover{color:var(--primary-hover);background:var(--primary-light);border-radius:var(--radius-sm);transform:none;box-shadow:none}.btn-ghost{border:none;background:none;color:var(--text-secondary);padding:6px 10px;cursor:pointer;border-radius:var(--radius-sm)}.btn-ghost:hover{background:var(--hover-bg);color:var(--text);transform:none;box-shadow:none}.btn-icon{width:34px;height:34px;padding:0;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center}.btn-icon.btn-sm{width:28px;height:28px}input,select,textarea{padding:8px 14px;border:1px solid var(--tk-border);border-radius:var(--radius-sm);font-size:var(--tk-text-sm);outline:none;transition:all var(--transition);width:100%;background:var(--input-bg);color:var(--text);line-height:1.5}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:var(--tk-shadow-focus)}input::placeholder,textarea::placeholder{color:var(--text-muted)}input:disabled,select:disabled,textarea:disabled{opacity:.55;cursor:not-allowed;background:var(--hover-bg)}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px;color:var(--text)}.search-input-wrapper{position:relative;display:inline-flex;align-items:center}.search-input-wrapper .search-icon{position:absolute;left:12px;color:var(--text-muted);pointer-events:none;display:flex;align-items:center}.search-input-wrapper input{padding-left:36px}.card{background:var(--card-bg);border-radius:var(--radius);border:1px solid var(--tk-border);box-shadow:var(--tk-shadow-1);padding:24px;transition:all var(--transition)}.card:hover{box-shadow:var(--tk-shadow-2)}.card-title{font-size:var(--tk-text-base);font-weight:600;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--tk-border);color:var(--text)}.card-hoverable:hover{transform:translateY(-2px);box-shadow:var(--tk-shadow-3)}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}table{width:100%;border-collapse:separate;border-spacing:0}th,td{padding:14px 16px;text-align:left;border-bottom:1px solid var(--tk-border)}th{background:var(--table-header-bg);font-weight:600;font-size:var(--tk-text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}th:first-child{border-radius:var(--radius-sm) 0 0 0}th:last-child{border-radius:0 var(--radius-sm) 0 0}td{font-size:var(--tk-text-sm);color:var(--text)}tr{transition:background var(--transition-fast)}tbody tr:hover td{background:var(--hover-bg)}tbody tr:last-child td{border-bottom:none}.table-wrapper{background:var(--card-bg);border-radius:var(--radius);border:1px solid var(--tk-border);box-shadow:var(--tk-shadow-1);overflow:hidden}.table-wrapper table{margin:0}.tag{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:var(--radius-full);font-size:var(--tk-text-xs);font-weight:500;letter-spacing:.01em;line-height:1.6}.tag-blue{background:var(--primary-light);color:var(--primary)}.tag-green{background:var(--success-light);color:var(--success)}.tag-red{background:var(--danger-light);color:var(--danger)}.tag-orange{background:var(--warning-light);color:var(--warning)}.tag-gray{background:var(--hover-bg);color:var(--text-muted)}.tag-gold{background:color-mix(in oklab,var(--tk-warning) 18%,transparent);color:color-mix(in oklab,var(--tk-warning) 70%,var(--tk-fg))}.tag-dot{width:6px;height:6px;border-radius:50%;display:inline-block;flex-shrink:0}.tag-blue .tag-dot{background:var(--primary)}.tag-green .tag-dot{background:var(--success)}.tag-red .tag-dot{background:var(--danger)}.tag-orange .tag-dot{background:var(--warning)}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px}.status-running{background:var(--success);box-shadow:0 0 6px color-mix(in oklab,var(--success) 50%,transparent)}.status-stopped{background:var(--danger);box-shadow:0 0 6px color-mix(in oklab,var(--danger) 50%,transparent)}.status-error{background:var(--warning);box-shadow:0 0 6px color-mix(in oklab,var(--warning) 50%,transparent)}.modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:color-mix(in oklab,var(--tk-gray-950) 50%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:var(--tk-z-modal);animation:modal-backdrop-in var(--transition-slow)}@keyframes modal-backdrop-in{0%{opacity:0}to{opacity:1}}.modal{background:var(--card-bg);border-radius:var(--radius-lg);box-shadow:var(--tk-shadow-4);width:520px;max-width:90vw;max-height:85vh;display:flex;flex-direction:column;border:1px solid var(--tk-border);animation:modal-slide-in var(--tk-dur-slow) var(--tk-ease-emphasized)}@keyframes modal-slide-in{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--tk-border);font-size:var(--tk-text-md);font-weight:600}.modal-close{cursor:pointer;font-size:18px;color:var(--text-muted);background:none;border:none;padding:6px;border-radius:var(--radius-sm);transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.modal-close:hover{color:var(--text);background:var(--hover-bg)}.modal-body{padding:24px;overflow-y:auto}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid var(--tk-border)}.form-group{margin-bottom:18px}.form-label{display:block;font-size:var(--tk-text-sm);font-weight:500;margin-bottom:6px;color:var(--text-secondary)}.form-row{display:flex;gap:16px}.form-row>*{flex:1}.form-hint{font-size:var(--tk-text-xs);color:var(--text-muted);margin-top:4px}.form-error{font-size:var(--tk-text-xs);color:var(--danger);margin-top:4px}.form-section-label{font-size:var(--tk-text-sm);font-weight:600;color:var(--text);margin:6px 0 10px}.date-row{display:flex;gap:8px;align-items:center;margin-bottom:8px}.date-row>input{flex:1}.checkbox-group{display:flex;flex-wrap:wrap;gap:8px}.checkbox-label{display:flex;align-items:center;gap:6px;padding:5px 14px;border:1px solid var(--tk-border);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--tk-text-sm);transition:all var(--transition);-webkit-user-select:none;user-select:none}.checkbox-label:hover{border-color:var(--primary);background:var(--primary-light)}.checkbox-label.checked{background:var(--primary-light);border-color:var(--primary);color:var(--primary);font-weight:500}.checkbox-label input{display:none}.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin-bottom:24px}.stat-card{background:var(--card-bg);border-radius:var(--radius);padding:22px 24px;border:1px solid var(--tk-border);box-shadow:var(--tk-shadow-1);display:flex;flex-direction:column;gap:8px;transition:all var(--transition);position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--primary);opacity:0;transition:opacity var(--transition)}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--tk-shadow-3)}.stat-card:hover:before{opacity:1}.stat-card .label{font-size:var(--tk-text-sm);color:var(--text-muted);font-weight:500}.stat-card .value{font-size:var(--tk-text-2xl);font-weight:700;color:var(--text);letter-spacing:-.02em}.stat-card .stat-icon{width:40px;height:40px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:18px}.stat-card.stat-blue:before{background:var(--primary)}.stat-card.stat-green:before{background:var(--success)}.stat-card.stat-orange:before{background:var(--warning)}.stat-card.stat-purple:before{background:#8e58f2}.stat-card.stat-blue .stat-icon{background:var(--primary-light);color:var(--primary)}.stat-card.stat-green .stat-icon{background:var(--success-light);color:var(--success)}.stat-card.stat-orange .stat-icon{background:var(--warning-light);color:var(--warning)}.stat-card.stat-purple .stat-icon{background:color-mix(in oklab,oklch(60% .22 295) 12%,transparent);color:#8e58f2}.config-table td:first-child{font-weight:500;width:300px;font-family:var(--tk-font-mono);font-size:var(--tk-text-sm)}.config-table td:nth-child(2){font-family:var(--tk-font-mono);font-size:var(--tk-text-sm);color:var(--text-secondary);word-break:break-all}.tabs{display:flex;gap:0;border-bottom:1px solid var(--tk-border);margin-bottom:20px}.tab{padding:10px 20px;cursor:pointer;font-size:var(--tk-text-sm);color:var(--text-secondary);border-bottom:2px solid transparent;margin-bottom:-1px;transition:all var(--transition);background:none;border-top:none;border-left:none;border-right:none;font-weight:500}.tab:hover{color:var(--text)}.tab.active{color:var(--primary);border-bottom-color:var(--primary);font-weight:600}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.page-header h2{font-size:var(--tk-text-xl);font-weight:700;letter-spacing:-.02em;color:var(--text)}.toolbar{display:flex;gap:12px;align-items:center;margin-bottom:16px;flex-wrap:wrap}.toolbar input,.toolbar select{max-width:260px}.msg{padding:12px 16px;border-radius:var(--radius-sm);margin-bottom:16px;font-size:var(--tk-text-sm);display:flex;align-items:center;gap:8px}.msg-success{background:var(--success-light);border:1px solid color-mix(in oklab,var(--success) 22%,transparent);color:var(--success)}.msg-error{background:var(--danger-light);border:1px solid color-mix(in oklab,var(--danger) 22%,transparent);color:var(--danger)}.fade-enter-active,.fade-leave-active{transition:opacity var(--transition)}.fade-enter-from,.fade-leave-to{opacity:0}.slide-up-enter-active{transition:all var(--transition-slow)}.slide-up-leave-active{transition:all var(--transition-fast)}.slide-up-enter-from{opacity:0;transform:translateY(8px)}.slide-up-leave-to{opacity:0;transform:translateY(-4px)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:var(--tk-border-strong);border-radius:3px;border:none}::-webkit-scrollbar-thumb:hover{background:var(--tk-fg-faint)}::-webkit-scrollbar-track{background:transparent}.table-wrapper{position:relative}.table-loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;background:color-mix(in oklab,var(--tk-bg-elev) 60%,transparent);display:flex;align-items:center;justify-content:center;border-radius:var(--radius);pointer-events:none;animation:overlay-in .15s ease}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}.skeleton{background:linear-gradient(90deg,var(--hover-bg) 25%,var(--tk-border) 50%,var(--hover-bg) 75%);background-size:200% 100%;animation:skeleton-pulse 1.5s ease-in-out infinite;border-radius:var(--radius-sm)}@keyframes skeleton-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-text{height:14px;margin-bottom:8px}.skeleton-title{height:20px;width:60%;margin-bottom:12px}.skeleton-card{height:100px;border-radius:var(--radius)}.empty-state{text-align:center;padding:60px 20px;color:var(--text-muted)}.empty-state-icon{font-size:48px;margin-bottom:16px;opacity:.4;display:flex;align-items:center;justify-content:center}.empty-state-title{font-size:var(--tk-text-base);font-weight:600;color:var(--text-secondary);margin-bottom:8px}.empty-state-desc{font-size:var(--tk-text-sm);margin-bottom:20px}code{background:var(--code-bg);padding:2px 6px;border-radius:var(--tk-radius-xs);font-family:var(--tk-font-mono);font-size:var(--tk-text-sm);border:1px solid var(--tk-border)}.tooltip{position:relative}.tooltip:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);padding:5px 10px;background:var(--tk-fg);color:var(--tk-bg);font-size:var(--tk-text-xs);border-radius:var(--radius-sm);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity var(--transition-fast);z-index:var(--tk-z-tooltip)}.tooltip:hover:after{opacity:1}.divider{border:none;border-top:1px solid var(--tk-border);margin:16px 0}.action-btns{display:flex;gap:4px;align-items:center}.action-btns .btn-icon{width:30px;height:30px;border:none;background:none;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);display:inline-flex;align-items:center;justify-content:center}.action-btns .btn-icon:hover{background:var(--hover-bg);color:var(--text)}.action-btns .btn-icon.danger:hover{background:var(--danger-light);color:var(--danger)}.spinner{width:18px;height:18px;border:2px solid var(--tk-border);border-top-color:var(--primary);border-radius:50%;animation:spin .6s linear infinite;display:inline-block}.spinner-sm{width:14px;height:14px;border-width:1.5px}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:768px){.form-row{flex-direction:column;gap:0}.page-header{flex-direction:column;gap:12px;align-items:flex-start}.toolbar{flex-direction:column}.toolbar input,.toolbar select{max-width:100%}.stat-grid{grid-template-columns:repeat(2,1fr)}.modal{max-width:95vw;margin:16px}}@media(max-width:480px){.stat-grid{grid-template-columns:1fr}}html,body,#app{min-height:100%}#app{min-height:100vh}.login-page[data-v-644f1a7b]{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}.login-card[data-v-644f1a7b]{width:100%;max-width:400px;background:var(--card-bg);border:1px solid var(--tk-border);border-radius:var(--radius-xl);box-shadow:var(--tk-shadow-4);padding:36px 32px}.login-brand[data-v-644f1a7b]{display:flex;align-items:center;gap:14px;margin-bottom:28px}.login-logo[data-v-644f1a7b],.logo-icon[data-v-644f1a7b]{width:46px;height:46px;border-radius:var(--tk-radius-lg);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:800;color:var(--tk-on-accent);background:linear-gradient(135deg,var(--tk-brand-400),var(--tk-brand-700));box-shadow:0 6px 18px color-mix(in oklab,var(--tk-accent) 35%,transparent)}.login-title[data-v-644f1a7b]{font-size:var(--tk-text-xl);font-weight:700;color:var(--text);letter-spacing:-.02em}.login-sub[data-v-644f1a7b]{font-size:var(--tk-text-xs);color:var(--text-muted);letter-spacing:.04em;text-transform:uppercase}.login-form[data-v-644f1a7b]{display:flex;flex-direction:column}.login-input-wrap[data-v-644f1a7b]{position:relative;display:flex;align-items:center}.login-input-wrap .input-icon[data-v-644f1a7b]{position:absolute;left:12px;color:var(--text-muted);pointer-events:none}.login-input-wrap input[data-v-644f1a7b]{padding-left:40px;height:44px}.login-input-wrap input[type=password][data-v-644f1a7b],.login-input-wrap input[type=text][data-v-644f1a7b]{padding-right:42px}.pwd-toggle[data-v-644f1a7b]{position:absolute;right:6px;width:32px;height:32px;padding:0;display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;color:var(--text-muted);border-radius:var(--tk-radius-sm);transition:color var(--transition-fast),background var(--transition-fast)}.pwd-toggle[data-v-644f1a7b]:hover{color:var(--text);background:var(--hover-bg)}.login-btn[data-v-644f1a7b]{width:100%;height:46px;margin-top:8px;border:none;cursor:pointer;border-radius:var(--tk-radius-lg);font-size:var(--tk-text-base);font-weight:600;color:var(--tk-on-accent);background:linear-gradient(135deg,var(--tk-brand-500),var(--tk-brand-700));box-shadow:var(--tk-shadow-2);display:flex;align-items:center;justify-content:center;gap:8px;transition:all var(--transition)}.login-btn[data-v-644f1a7b]:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--tk-shadow-3)}.login-btn[data-v-644f1a7b]:active:not(:disabled){transform:translateY(0)}.login-btn[data-v-644f1a7b]:disabled{opacity:.6;cursor:not-allowed}.login-btn .spinner-sm[data-v-644f1a7b]{border-color:#ffffff4d;border-top-color:#fff}.layout[data-v-644f1a7b]{display:flex;min-height:100vh}.sidebar[data-v-644f1a7b]{width:240px;background:var(--sidebar-bg);color:var(--sidebar-text);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:var(--tk-z-sticky);border-right:1px solid color-mix(in oklab,white 4%,transparent)}.sidebar-logo[data-v-644f1a7b]{display:flex;align-items:center;gap:12px;padding:20px 16px 16px;min-height:64px}.logo-icon[data-v-644f1a7b]{width:38px;height:38px;font-size:18px;border-radius:10px}.logo-text[data-v-644f1a7b]{font-size:var(--tk-text-md);font-weight:700;color:color-mix(in oklab,white 90%,transparent);letter-spacing:-.01em;white-space:nowrap}.sidebar-nav[data-v-644f1a7b]{flex:1;padding:8px;overflow-y:auto}.nav-item[data-v-644f1a7b]{display:flex;align-items:center;gap:12px;padding:10px 12px;color:var(--sidebar-text);font-size:var(--tk-text-sm);cursor:pointer;border-radius:var(--tk-radius-md);margin-bottom:2px;position:relative;font-weight:450;transition:all var(--tk-dur-fast) var(--tk-ease-standard)}.nav-item[data-v-644f1a7b]:hover{background:var(--sidebar-hover);color:color-mix(in oklab,white 90%,transparent)}.nav-item.active[data-v-644f1a7b]{background:color-mix(in oklab,var(--tk-accent) 18%,transparent);color:#fff}.nav-active-indicator[data-v-644f1a7b]{position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:16px;border-radius:0 3px 3px 0;background:var(--sidebar-active)}.nav-icon-svg[data-v-644f1a7b]{flex-shrink:0;opacity:.55;transition:opacity var(--tk-dur-fast)}.nav-item:hover .nav-icon-svg[data-v-644f1a7b]{opacity:.85}.nav-item.active .nav-icon-svg[data-v-644f1a7b]{opacity:1;color:var(--sidebar-active)}.sidebar-footer[data-v-644f1a7b]{padding:12px;border-top:1px solid color-mix(in oklab,white 6%,transparent);display:flex;gap:6px;justify-content:center}.icon-btn[data-v-644f1a7b]{background:none;border:none;color:var(--sidebar-text);cursor:pointer;width:34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:var(--tk-radius-md);transition:all var(--tk-dur-fast) var(--tk-ease-standard)}.icon-btn[data-v-644f1a7b]:hover{background:color-mix(in oklab,white 8%,transparent);color:color-mix(in oklab,white 90%,transparent)}.main-content[data-v-644f1a7b]{flex:1;margin-left:240px;padding:28px 32px;min-height:100vh}.stat-card-head[data-v-644f1a7b]{display:flex;align-items:center;justify-content:space-between;gap:8px}.stat-card-meta[data-v-644f1a7b]{display:flex;gap:6px}.stat-empty[data-v-644f1a7b]{align-items:center;justify-content:center;color:var(--text-muted);min-height:110px}.quota-summary[data-v-644f1a7b]{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:18px;padding:18px 20px;border-radius:var(--radius-xl);background:var(--card-bg);border:1px solid var(--tk-border);box-shadow:var(--tk-shadow-1)}.quota-summary-item[data-v-644f1a7b]{flex:1 1 120px;min-width:96px}.qs-label[data-v-644f1a7b]{font-size:var(--tk-text-xs);color:var(--text-muted);margin-bottom:6px}.qs-value[data-v-644f1a7b]{font-size:26px;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.qs-blue[data-v-644f1a7b]{color:var(--primary)}.qs-green[data-v-644f1a7b]{color:var(--success)}.qs-gold[data-v-644f1a7b]{color:#c8881e}.stat-section-label[data-v-644f1a7b]{font-size:var(--tk-text-sm);font-weight:600;color:var(--text-secondary);margin:4px 0 10px}.config-pane[data-v-644f1a7b]{max-width:560px}.danger-card[data-v-644f1a7b]{margin-top:20px;border-color:color-mix(in oklab,var(--danger) 35%,var(--tk-border))}.danger-title[data-v-644f1a7b]{color:var(--danger)}.danger-text[data-v-644f1a7b]{color:var(--danger);font-weight:700}.modal-mask[data-v-644f1a7b]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--tk-z-toast);background:#00000073;display:flex;align-items:center;justify-content:center;padding:20px}.modal-card[data-v-644f1a7b]{width:100%;max-width:420px;background:var(--card-bg);border:1px solid var(--tk-border);border-radius:var(--radius-xl);box-shadow:var(--tk-shadow-4);padding:22px 22px 18px}.modal-title[data-v-644f1a7b]{font-size:var(--tk-text-lg);font-weight:700;color:var(--text);margin-bottom:12px}.modal-body[data-v-644f1a7b]{font-size:var(--tk-text-sm);color:var(--text-secondary);line-height:1.75}.modal-body b[data-v-644f1a7b]{color:var(--text)}.reset-confirm-input[data-v-644f1a7b]{width:100%;margin-top:8px;height:38px;padding:0 12px;border:1px solid var(--tk-border);border-radius:var(--radius-md);background:var(--card-bg);color:var(--text);outline:none;transition:border-color var(--transition-fast)}.reset-confirm-input[data-v-644f1a7b]:focus{border-color:var(--danger)}.modal-actions[data-v-644f1a7b]{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.modalfade-enter-active[data-v-644f1a7b],.modalfade-leave-active[data-v-644f1a7b]{transition:opacity var(--transition)}.modalfade-enter-from[data-v-644f1a7b],.modalfade-leave-to[data-v-644f1a7b]{opacity:0}.switch-row[data-v-644f1a7b]{display:flex;align-items:flex-start;gap:12px}.switch[data-v-644f1a7b]{position:relative;display:inline-flex;flex-shrink:0;cursor:pointer;margin-top:1px}.switch input[data-v-644f1a7b]{position:absolute;opacity:0;width:0;height:0}.switch-track[data-v-644f1a7b]{width:42px;height:24px;border-radius:var(--radius-full);background:var(--tk-border-strong);padding:2px;display:inline-flex;align-items:center;transition:background var(--transition)}.switch-thumb[data-v-644f1a7b]{width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:var(--tk-shadow-1);transition:transform var(--transition)}.switch input:checked+.switch-track[data-v-644f1a7b]{background:var(--primary)}.switch input:checked+.switch-track .switch-thumb[data-v-644f1a7b]{transform:translate(18px)}.switch input:focus-visible+.switch-track[data-v-644f1a7b]{box-shadow:var(--tk-shadow-focus)}.switch-sm[data-v-644f1a7b]{margin-top:0}.switch-sm .switch-track[data-v-644f1a7b]{width:34px;height:20px}.switch-sm .switch-thumb[data-v-644f1a7b]{width:16px;height:16px}.switch-sm input:checked+.switch-track .switch-thumb[data-v-644f1a7b]{transform:translate(14px)}.wl-status[data-v-644f1a7b]{display:inline-flex;align-items:center;gap:10px}.switch-text[data-v-644f1a7b]{cursor:pointer;-webkit-user-select:none;user-select:none}.switch-title[data-v-644f1a7b]{display:flex;align-items:center;gap:8px;font-weight:500;color:var(--text);margin-bottom:3px}.switch-text .form-hint[data-v-644f1a7b]{margin:0}[data-v-644f1a7b] .tk-pager{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:4px;margin-top:20px;font-size:var(--tk-text-sm);color:var(--text-secondary)}[data-v-644f1a7b] .tk-pager-total{margin-right:8px;white-space:nowrap}[data-v-644f1a7b] .tk-pager-btn{min-width:32px;height:32px;padding:0 8px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--tk-border);border-radius:var(--radius-sm);background:var(--card-bg);color:var(--text);font-size:var(--tk-text-sm);font-variant-numeric:tabular-nums;cursor:pointer;transition:all var(--transition-fast)}[data-v-644f1a7b] .tk-pager-btn:hover:not(:disabled):not(.active){border-color:var(--primary);color:var(--primary);background:var(--primary-light)}[data-v-644f1a7b] .tk-pager-btn:disabled{opacity:.5;cursor:not-allowed}[data-v-644f1a7b] .tk-pager-btn.active{background:var(--primary);border-color:var(--primary);color:#fff;cursor:default}[data-v-644f1a7b] .tk-pager-ellipsis{min-width:28px;height:32px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-muted);-webkit-user-select:none;user-select:none}.toast[data-v-644f1a7b]{position:fixed;left:50%;bottom:36px;transform:translate(-50%);padding:11px 20px;border-radius:var(--radius-lg);font-size:var(--tk-text-sm);font-weight:500;box-shadow:var(--tk-shadow-3);z-index:var(--tk-z-toast);max-width:90vw;border:1px solid var(--tk-border)}.toast-success[data-v-644f1a7b]{background:var(--success);color:#fff;border-color:transparent}.toast-error[data-v-644f1a7b]{background:var(--danger);color:#fff;border-color:transparent}.fade-enter-active[data-v-644f1a7b],.fade-leave-active[data-v-644f1a7b]{transition:opacity var(--transition),transform var(--transition)}.fade-enter-from[data-v-644f1a7b],.fade-leave-to[data-v-644f1a7b]{opacity:0;transform:translate(-50%) translateY(8px)}@media(max-width:768px){.sidebar[data-v-644f1a7b]{width:64px}.logo-text[data-v-644f1a7b],.nav-label[data-v-644f1a7b]{display:none}.sidebar-logo[data-v-644f1a7b]{justify-content:center;padding:16px 8px}.nav-item[data-v-644f1a7b]{justify-content:center;padding:10px}.sidebar-footer[data-v-644f1a7b]{flex-direction:column;align-items:center}.main-content[data-v-644f1a7b]{margin-left:64px;padding:20px 16px}}
