:root{--surface-0: #f7f9fc;--surface-1: #ffffff;--surface-2: #ffffff;--surface-3: #f4f6fa;--surface-4: #e8ecf1;--text: #1f2733;--text-dim: #66718a;--accent: var(--gb-500);--accent-hover: #43596f;--accent-dim: #3a4e63;--sage-100: #dde6d4;--sage-200: #c2d1b8;--sage-300: #a7b89f;--sage-400: #7f957a;--sage-500: #556b56;--gb-100: #d5dfec;--gb-200: #afc0d6;--gb-300: #8fa6c1;--gb-400: #6e87a4;--gb-500: #4f6b8a;--struct-head: var(--sage-100);--struct-hover: #eef3ea;--struct-selected: var(--sage-200);--sidebar-bg: var(--gb-500);--sidebar-danger: #9c3830;--sidebar-danger-hover: #86302a;--c-success-bg: var(--sage-200);--c-success-fg: var(--sage-500);--c-info-bg: var(--gb-100);--c-info-fg: var(--gb-500);--c-warning-bg: #faf1df;--c-warning-fg: #8a5b0a;--c-error-bg: #f7e3e1;--c-error-fg: #9c3830;--success: #1f9d6b;--warning: #c47d12;--error: #d6453d;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--fs-xs: 12px;--fs-sm: 13px;--fs-base: 14px;--fs-lg: 16px;--fs-xl: 20px;--fs-2xl: 24px;--font-sans: "PingFang SC", "Microsoft YaHei", system-ui, -apple-system, sans-serif;--font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--radius-sm: 10px;--radius-md: 14px;--radius-full: 999px;--shadow-1: 0 1px 3px rgba(15, 43, 94, .06);--shadow-2: 0 4px 16px rgba(15, 43, 94, .08);--shadow-3: 0 8px 30px rgba(15, 43, 94, .14);--border: var(--surface-4);--z-sticky: 10;--z-topbar: 20;--z-dropdown: 100;--z-modal: 1000;--z-toast: 2000;--table-font-size: var(--fs-base);--table-line-height: 22px;--table-cell-py: 12px;--table-cell-px: 16px;--table-cell-py-compact: 8px;--table-cell-px-compact: 12px;--table-cell-py-loose: 16px;--table-cell-px-loose: 16px;--table-head-bg: var(--struct-head);--table-head-color: #3e4f3f;--table-head-font-size: var(--fs-sm);--table-border: #dce3d8;--table-row-hover: var(--struct-hover);--table-row-selected: var(--struct-selected);--table-fixed-shadow: inset 6px 0 8px -3px rgba(0, 0, 0, .15);--table-col-action-w: 80px;--table-col-check-w: 40px;--table-empty-min-h: 240px;--table-loading-opacity: .65}*{margin:0;padding:0;box-sizing:border-box}html{color-scheme:light}body{font-family:var(--font-sans);font-size:var(--fs-lg);line-height:1.6;color:var(--text);background:var(--surface-0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}h1,h2,h3,h4,h5,h6{line-height:1.2;letter-spacing:-.02em;color:var(--text)}h1{font-size:var(--fs-2xl)}h2{font-size:var(--fs-xl)}h3{font-size:var(--fs-lg)}button{font-family:inherit;color:inherit;cursor:pointer;border:none;outline:none}input,textarea,select{font-family:inherit;font-size:inherit;border:none;outline:none;color:var(--text)}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}::selection{background:color-mix(in srgb,var(--accent) 18%,transparent)}.lp-input{width:100%;padding:.75rem 1rem;background:var(--surface-1);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);transition:border-color .2s,box-shadow .2s}.lp-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 12%,transparent)}.lp-input::placeholder{color:var(--text-dim)}.lp-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);height:32px;padding:0 var(--space-4);font-size:var(--fs-sm);font-weight:600;border:1px solid transparent;border-radius:var(--radius-sm);white-space:nowrap;transition:background-color .15s,border-color .15s,color .15s}.lp-btn:disabled{opacity:.5;cursor:not-allowed}.lp-btn--primary{background:var(--accent);color:#fff}.lp-btn--primary:hover:not(:disabled){background:var(--accent-hover)}.lp-btn--ghost{background:var(--surface-1);color:var(--text-dim);border-color:var(--border)}.lp-btn--ghost:hover:not(:disabled){background:var(--surface-3);color:var(--text)}.lp-btn--danger{background:var(--surface-1);color:var(--c-error-fg);border-color:var(--border)}.lp-btn--danger:hover:not(:disabled){background:var(--c-error-bg)}.lp-btn--sm{height:26px;padding:0 var(--space-3);font-size:var(--fs-xs)}.lp-card{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-1)}.lp-pill{display:inline-block;padding:1px var(--space-2);border-radius:var(--radius-full);font-size:var(--fs-xs);font-weight:600;white-space:nowrap;background:var(--surface-3);color:var(--text-dim)}.lp-pill--success{background:var(--c-success-bg);color:var(--c-success-fg)}.lp-pill--info{background:var(--c-info-bg);color:var(--c-info-fg)}.lp-pill--warning{background:var(--c-warning-bg);color:var(--c-warning-fg)}.lp-pill--error{background:var(--c-error-bg);color:var(--c-error-fg)}.lp-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);min-height:var(--table-empty-min-h);padding:var(--space-5);color:var(--text-dim);font-size:var(--fs-base);text-align:center}.lp-empty__icon{color:var(--gb-300)}.lp-skeleton{background:linear-gradient(90deg,var(--surface-3) 25%,var(--surface-4) 37%,var(--surface-3) 63%);background-size:400% 100%;border-radius:var(--radius-sm);animation:lp-skeleton 1.4s ease infinite}@keyframes lp-skeleton{0%{background-position:100% 50%}to{background-position:0 50%}}@media (prefers-reduced-motion: reduce){.lp-skeleton{animation:none}}.lp-tabbed{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.lp-tabs{display:flex;align-items:flex-end;gap:2px;padding:var(--space-2) var(--space-3) 0;background:var(--sage-100)}.lp-tab{position:relative;padding:var(--space-2) var(--space-4);border:none;border-radius:10px 10px 0 0;background:transparent;color:var(--sage-500);font-size:var(--fs-base);font-weight:600;white-space:nowrap;cursor:pointer;transition:background .15s,color .15s}.lp-tab:hover{background:color-mix(in srgb,var(--surface-1) 50%,transparent)}.lp-tab.is-active{background:var(--surface-2);color:var(--text)}.lp-tab+.lp-tab:before{content:"";position:absolute;left:-1px;top:25%;bottom:25%;width:1px;background:var(--sage-300)}.lp-tab.is-active:before,.lp-tab.is-active+.lp-tab:before{display:none}.lp-tabbed__body{background:var(--surface-2)}.lp-tabbed__bar{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;padding:var(--space-3) var(--space-4)}.lp-pagination{display:flex;align-items:center;justify-content:center;gap:var(--space-3);margin-top:var(--space-5);flex-wrap:wrap}.lp-pagination__info{font-size:var(--fs-sm);color:var(--text-dim);font-variant-numeric:tabular-nums}.lp-pagination__size{padding:var(--space-1) var(--space-2);background:var(--surface-1);color:var(--text-dim);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--fs-sm)}.lp-page-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-4)}.lp-toolbar{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-3)}
