@charset "UTF-8";@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fonts/plus-jakarta-sans-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fonts/plus-jakarta-sans-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fonts/plus-jakarta-sans-latin-500-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fonts/plus-jakarta-sans-latin-ext-500-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fonts/plus-jakarta-sans-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fonts/plus-jakarta-sans-latin-ext-600-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fonts/plus-jakarta-sans-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fonts/plus-jakarta-sans-latin-ext-700-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/fonts/plus-jakarta-sans-latin-800-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/fonts/plus-jakarta-sans-latin-ext-800-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fonts/jetbrains-mono-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fonts/jetbrains-mono-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fonts/jetbrains-mono-latin-500-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fonts/jetbrains-mono-latin-ext-500-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fonts/jetbrains-mono-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fonts/jetbrains-mono-latin-ext-600-normal.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--primary-50: #fff7ed;--primary-100: #ffedd5;--primary-200: #fed7aa;--primary-300: #fdba74;--primary-400: #fb923c;--primary-500: #f97316;--primary-600: #ea580c;--primary-700: #c2410c;--success: #10b981;--success-soft: rgba(16, 185, 129, .12);--warning: #f59e0b;--warning-soft: rgba(245, 158, 11, .14);--danger: #ef4444;--danger-soft: rgba(239, 68, 68, .12);--info: #3b82f6;--info-soft: rgba(59, 130, 246, .12);--neutral: #64748b;--neutral-soft: rgba(100, 116, 139, .14);--r-sm: 6px;--r-md: 8px;--r-lg: 12px;--r-xl: 16px;--shadow-1: 0 1px 2px rgba(15, 23, 42, .04), 0 1px 1px rgba(15, 23, 42, .03);--shadow-2: 0 2px 6px rgba(15, 23, 42, .06), 0 1px 2px rgba(15, 23, 42, .04);--shadow-3: 0 8px 32px rgba(15, 23, 42, .1), 0 2px 8px rgba(15, 23, 42, .06);--font-sans: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace}:root,:root[data-theme=light]{--bg: #f5f6fa;--bg-2: #eef0f6;--surface: #ffffff;--surface-2: #f8fafc;--surface-hover: #f1f5f9;--border: #e6e8ef;--border-strong: #d4d8e2;--text: #0f172a;--text-2: #334155;--muted: #64748b;--muted-2: #94a3b8;--topbar-bg: #ffffff;--sidebar-bg: #ffffff;--sidebar-item-hover: #f5f6fa;--sidebar-item-active: rgba(249, 115, 22, .1);--sidebar-item-active-fg: var(--primary-600);--chart-grid: #eef0f6;--chart-axis: #94a3b8;--boot-refresh-bg: rgba(245, 246, 250, .5)}:root[data-theme=dark]{--bg: #0b1020;--bg-2: #0e1426;--surface: #131a2e;--surface-2: #1a2238;--surface-hover: #1f2942;--border: #232d49;--border-strong: #2f3a5a;--text: #f1f5f9;--text-2: #cbd5e1;--muted: #94a3b8;--muted-2: #64748b;--topbar-bg: #131a2e;--sidebar-bg: #131a2e;--sidebar-item-hover: #1a2238;--sidebar-item-active: rgba(249, 115, 22, .16);--sidebar-item-active-fg: var(--primary-400);--chart-grid: #1f2942;--chart-axis: #64748b;--boot-refresh-bg: rgba(11, 16, 32, .5);--shadow-1: 0 1px 2px rgba(0, 0, 0, .3);--shadow-2: 0 2px 6px rgba(0, 0, 0, .35);--shadow-3: 0 8px 32px rgba(0, 0, 0, .45), 0 2px 8px rgba(0, 0, 0, .3);--success-soft: rgba(16, 185, 129, .18);--warning-soft: rgba(245, 158, 11, .2);--danger-soft: rgba(239, 68, 68, .2);--info-soft: rgba(59, 130, 246, .2);--neutral-soft: rgba(148, 163, 184, .18)}*,*:before,*:after{box-sizing:border-box}html,body{height:100%}body{margin:0;font-family:var(--font-sans);font-size:14px;line-height:1.45;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button{font-family:inherit}input,textarea,select{font-family:inherit;color:inherit}.app-shell{display:grid;grid-template-columns:248px 1fr;grid-template-rows:60px 1fr;min-height:100vh;background:var(--bg)}.app-shell__topbar{grid-column:1/-1}.app-shell__sidebar{overflow-y:auto}.app-shell__main{overflow-y:auto;padding:24px 28px 40px}.btn{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;height:36px;border-radius:var(--r-md);font-size:13px;font-weight:600;border:1px solid transparent;cursor:pointer;transition:background .12s,border-color .12s,transform .05s;white-space:nowrap;font-family:inherit}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:active:not(:disabled){transform:translateY(1px)}.btn--primary{background:var(--primary-500);color:#fff;box-shadow:0 1px #ffffff26 inset,0 1px 2px #c2410c40}.btn--primary:hover:not(:disabled){background:var(--primary-600)}.btn--secondary{background:var(--surface);color:var(--text);border-color:var(--border-strong)}.btn--secondary:hover:not(:disabled){background:var(--surface-hover)}.btn--ghost{background:transparent;color:var(--text-2)}.btn--ghost:hover:not(:disabled){background:var(--surface-hover)}.btn--danger{background:var(--danger);color:#fff}.btn--sm{height:30px;padding:4px 10px;font-size:12px}.btn--icon{padding:0;width:36px;justify-content:center}.btn--icon.btn--sm{width:30px}.input,.textarea,.select{height:38px;padding:0 12px;border-radius:var(--r-md);border:1px solid var(--border-strong);background:var(--surface);font-size:13.5px;color:var(--text);transition:border-color .12s,box-shadow .12s;width:100%}.input:focus,.textarea:focus,.select:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px #f973162e}.textarea{height:auto;min-height:120px;padding:10px 12px;font-family:var(--font-mono);font-size:12.5px;line-height:1.55;resize:vertical}.input--search{padding-left:36px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><circle cx='11' cy='11' r='7'/><path d='M21 21l-4.3-4.3'/></svg>");background-repeat:no-repeat;background-position:12px 50%;background-size:16px;max-width:280px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-1)}.card__header{padding:16px 20px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:16px}.card__title{font-size:14px;font-weight:600}.card__body{padding:20px}.page-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:20px;gap:16px;flex-wrap:wrap}.page-header__title{font-size:22px;font-weight:700;letter-spacing:-.01em;margin:0}.page-header__subtitle{color:var(--muted);font-size:13px;margin-top:4px}.page-header__count{color:var(--text-2);font-size:13px;margin-top:4px}.page-header__count strong{color:var(--text);font-weight:700}.badge{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;font-size:11.5px;font-weight:600;border-radius:999px;letter-spacing:.01em;white-space:nowrap}.badge .dot{width:6px;height:6px;box-shadow:none}.badge--success{color:#047857;background:var(--success-soft)}.badge--warning{color:#b45309;background:var(--warning-soft)}.badge--danger{color:#b91c1c;background:var(--danger-soft)}.badge--info{color:#1d4ed8;background:var(--info-soft)}.badge--neutral{color:var(--text-2);background:var(--neutral-soft)}:root[data-theme=dark] .badge--success{color:#6ee7b7}:root[data-theme=dark] .badge--warning{color:#fcd34d}:root[data-theme=dark] .badge--danger{color:#fca5a5}:root[data-theme=dark] .badge--info{color:#93c5fd}.tag{display:inline-flex;align-items:center;padding:2px 8px;font-size:10.5px;font-weight:700;border-radius:4px;letter-spacing:.04em;background:var(--neutral-soft);color:var(--text-2);text-transform:uppercase;font-family:var(--font-mono)}.tag--success{background:var(--success-soft);color:#047857}.tag--warning{background:var(--warning-soft);color:#b45309}.tag--info{background:var(--info-soft);color:#1d4ed8}.tag--primary{background:#f9731624;color:var(--primary-700)}:root[data-theme=dark] .tag--success{color:#6ee7b7}:root[data-theme=dark] .tag--warning{color:#fcd34d}:root[data-theme=dark] .tag--info{color:#93c5fd}:root[data-theme=dark] .tag--primary{color:var(--primary-300)}.dot{width:8px;height:8px;border-radius:50%;display:inline-block}.dot--success{background:var(--success);box-shadow:0 0 0 3px var(--success-soft)}.dot--warning{background:var(--warning);box-shadow:0 0 0 3px var(--warning-soft)}.dot--danger{background:var(--danger);box-shadow:0 0 0 3px var(--danger-soft)}.field{display:flex;flex-direction:column;gap:6px}.field__label{font-size:12.5px;font-weight:600;color:var(--text-2)}.field__label .req{color:var(--danger);margin-left:2px}.field__hint{font-size:11.5px;color:var(--muted)}.field__error{font-size:11.5px;color:var(--danger);margin-top:-2px}.segmented{display:inline-flex;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);padding:3px;gap:2px}.segmented__item{padding:6px 12px;font-size:12.5px;font-weight:600;border-radius:6px;cursor:pointer;color:var(--muted);-webkit-user-select:none;user-select:none}.segmented__item--active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-1)}.toggle{position:relative;width:38px;height:22px;background:var(--surface-2);border:1px solid var(--border-strong);border-radius:999px;cursor:pointer;flex-shrink:0;transition:background .15s}.toggle:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;background:#fff;border-radius:50%;box-shadow:0 1px 2px #0003;transition:transform .15s}.toggle--on{background:var(--primary-500);border-color:var(--primary-500)}.toggle--on:after{transform:translate(16px)}.mono{font-family:var(--font-mono);font-size:12px}.num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:5px;border:2px solid var(--bg)}::-webkit-scrollbar-thumb:hover{background:var(--muted-2)}.p-component{font-family:var(--font-sans)}
