:root{--color-primary:#1b9aa4;--color-primary-hover:#168a93;--color-primary-active:#117a82;--color-primary-light:#e6f5f6;--color-primary-lighter:#f0fafb;--color-primary-bg:#f7fdfd;--color-primary-text:#0d4f53;--color-primary-ring:#1b9aa438;--color-primary-50:#e6f5f6;--color-primary-100:#cceced;--color-primary-200:#99d9dd;--color-primary-300:#66c7ce;--color-primary-400:#33b5be;--color-primary-500:#1b9aa4;--color-primary-600:#168a93;--color-primary-700:#117a82;--color-primary-800:#0c6a71;--color-primary-900:#075a60;--color-bg:#f5f7fa;--color-bg-elevated:#fff;--color-bg-subtle:#fafbfc;--color-bg-header:#f0f2f5;--color-bg-track:#e9edf2;--color-bg-inset:#ebeef3;--color-bg-hover:#f0f2f5;--color-bg-active:#e8ebf0;--color-bg-disabled:#f5f7fa;--color-table-row-hover-bg:var(--color-primary-100);--color-border:#e2e6ec;--color-border-light:#f0f1f3;--color-border-dark:#cdd2da;--color-text-primary:#1d2129;--color-text-regular:#4e5969;--color-text-secondary:#5c6770;--color-text-placeholder:#7a828c;--color-text-inverse:#fff;--color-text-on-primary:#fff;--state-success:#30a46c;--state-success-bg:#e8f8ef;--state-success-border:#9ee2b9;--state-warning:#f7ba1e;--state-warning-bg:#fff8e6;--state-warning-border:#fddea0;--state-error:#e5484d;--state-error-bg:#ffece8;--state-error-border:#fdada8;--state-info:#2a6fdb;--state-info-bg:#ebf2fe;--state-info-border:#b3ccf7;--state-success-ink:#1b7a4b;--state-warning-ink:#96650a;--state-error-ink:#c0272b;--state-info-ink:#1d4ed8;--font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-mono:"SF Mono", "Fira Code", "Fira Mono", "Roboto Mono", "Courier New", monospace;--font-size-xs:12px;--font-size-sm:13px;--font-size-base:14px;--font-size-md:15px;--font-size-lg:16px;--font-size-xl:18px;--font-size-2xl:20px;--font-size-3xl:24px;--font-size-4xl:28px;--font-size-5xl:32px;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.25;--line-height-normal:1.5;--line-height-relaxed:1.75;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:12px;--spacing-lg:16px;--spacing-xl:20px;--spacing-2xl:24px;--spacing-3xl:32px;--spacing-4xl:40px;--spacing-5xl:48px;--radius-sm:4px;--radius-md:6px;--radius-lg:12px;--radius-xl:16px;--radius-full:9999px;--shadow-xs:0 1px 2px #1018280a;--shadow-sm:0 1px 3px #1018280f;--shadow-md:0 6px 18px -6px #1018281f, 0 1px 2px #1018280a;--shadow-lg:0 18px 44px -14px #10182833;--shadow-float:0 12px 32px #1018281f;--sidebar-width:220px;--sidebar-collapsed-width:64px;--header-height:56px;--content-max-width:1400px;--transition-fast:.12s cubic-bezier(.2, .8, .2, 1);--transition-normal:.15s cubic-bezier(.2, .8, .2, 1);--transition-slow:.2s cubic-bezier(.2, .8, .2, 1);--z-index-base:0;--z-index-sticky:100;--z-index-dropdown:1000;--z-index-popover:1100;--z-index-overlay:2000;--z-index-dialog:2000;--z-index-drawer:2000;--z-index-message:3000;--el-color-primary:var(--color-primary);--el-color-primary-light-3:var(--color-primary-hover);--el-color-primary-light-5:var(--color-primary-400);--el-color-primary-light-7:var(--color-primary-light);--el-color-primary-light-9:var(--color-primary-lighter);--el-color-primary-dark-2:var(--color-primary-active);--el-color-success:var(--state-success);--el-color-success-light-3:var(--state-success-border);--el-color-success-light-7:var(--state-success-bg);--el-color-success-light-9:var(--state-success-bg);--el-color-warning:var(--state-warning);--el-color-warning-light-3:var(--state-warning-border);--el-color-warning-light-7:var(--state-warning-bg);--el-color-warning-light-9:var(--state-warning-bg);--el-color-danger:var(--state-error);--el-color-danger-light-3:var(--state-error-border);--el-color-danger-light-7:var(--state-error-bg);--el-color-danger-light-9:var(--state-error-bg);--el-color-info:var(--state-info);--el-color-info-light-3:var(--state-info-border);--el-color-info-light-7:var(--state-info-bg);--el-color-info-light-9:var(--state-info-bg);--el-text-color-primary:var(--color-text-primary);--el-text-color-regular:var(--color-text-regular);--el-text-color-secondary:var(--color-text-secondary);--el-text-color-placeholder:var(--color-text-placeholder);--el-border-color:var(--color-border);--el-border-color-light:var(--color-border-light);--el-border-color-lighter:var(--color-border-light);--el-border-color-dark:var(--color-border-dark);--el-border-radius-base:var(--radius-md);--el-border-radius-small:var(--radius-sm);--el-border-radius-round:var(--radius-full);--el-dialog-border-radius:var(--radius-xl);--el-font-size-base:var(--font-size-base);--el-font-size-small:var(--font-size-sm);--el-font-size-extra-small:var(--font-size-xs);--el-box-shadow-light:var(--shadow-md);--el-box-shadow:var(--shadow-lg);--el-fill-color:var(--color-bg-inset);--el-fill-color-light:var(--color-bg-hover);--el-fill-color-lighter:var(--color-bg);--el-fill-color-blank:var(--color-bg-elevated);--el-table-row-hover-bg-color:var(--color-table-row-hover-bg);--el-overlay-z-index:var(--z-index-overlay)}.el-button--primary:not(.is-plain){--el-button-bg-color:var(--color-primary-700);--el-button-border-color:var(--color-primary-700);--el-button-hover-bg-color:var(--color-primary-600);--el-button-hover-border-color:var(--color-primary-600);--el-button-active-bg-color:var(--color-primary-800);--el-button-active-border-color:var(--color-primary-800)}.el-alert--info .el-alert__title,.el-alert--info .el-alert__description{color:var(--state-info-ink)}.el-message-box__btns{flex-direction:row-reverse;justify-content:flex-start;gap:12px}.el-message-box__btns .el-button{margin-left:0}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-size:var(--font-size-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:var(--line-height-normal);color:var(--color-text-regular);background-color:var(--color-bg)}a{color:var(--color-primary-700);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--color-primary-hover)}input,textarea,select{font-family:inherit;font-size:inherit;line-height:inherit;color:var(--color-text-primary)}input::placeholder,textarea::placeholder{color:var(--color-text-placeholder)}input:focus,textarea:focus,select:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 2px #1b9aa426}button{cursor:pointer;background:0 0;border:none;font-family:inherit}table{border-collapse:collapse;width:100%}th,td{word-break:break-word}th{white-space:nowrap}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tabular-nums{font-variant-numeric:tabular-nums}.whitespace-nowrap{white-space:nowrap}.break-words{word-break:break-word}.flex-center{justify-content:center;align-items:center;display:flex}.nav-item{cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);text-decoration:none}.nav-item:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.nav-item[data-active=true]{background:var(--color-primary-light);color:var(--color-primary-700);border-left-color:var(--color-primary);font-weight:var(--font-weight-medium)}.nav-item[data-active=true]:hover{background:var(--color-primary-light);color:var(--color-primary-700)}.time-tab{font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;transition:color var(--transition-fast), background var(--transition-fast), border-color var(--transition-fast);font-family:var(--font-family);background:0 0;border:none;border-bottom:2px solid #0000;padding:6px 16px}.time-tab:hover{background:var(--color-primary-lighter);color:var(--color-primary-700)}.time-tab[data-active=true]{color:var(--color-primary-700);border-bottom-color:var(--color-primary);font-weight:var(--font-weight-medium)}.quick-action-card{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;transition:border-color var(--transition-fast), background var(--transition-fast)}.quick-action-card:hover{border-color:var(--color-primary);background:var(--color-primary-lighter)}.reminder-card{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;transition:border-color var(--transition-fast), background var(--transition-fast)}.reminder-card:hover{border-color:var(--color-border-dark)}.table-row-hover tbody tr{cursor:pointer;transition:background var(--transition-fast)}.table-row-hover tbody tr:hover{background:var(--color-table-row-hover-bg)}.badge{border-radius:var(--radius-md);font-size:11px;font-weight:var(--font-weight-medium);white-space:nowrap;align-items:center;padding:2px 8px;display:inline-flex}.badge--success{background:var(--state-success-bg);color:var(--state-success-ink)}.badge--warning{background:var(--state-warning-bg);color:var(--state-warning-ink)}.badge--error{background:var(--state-error-bg);color:var(--state-error-ink)}.badge--info{background:var(--state-info-bg);color:var(--state-info-ink)}.spec-tag-small{color:var(--color-primary-text);background:var(--color-primary-lighter);border-radius:var(--radius-sm);white-space:nowrap;align-items:center;padding:1px 6px;font-size:11px;display:inline-flex}.spec-tags{flex-wrap:wrap;gap:4px;display:flex}.spec-tag-more{color:var(--color-text-secondary);background:var(--color-bg-hover);border-radius:var(--radius-sm);white-space:nowrap;align-items:center;padding:1px 6px;font-size:11px;display:inline-flex}.product-popup-name-row{align-items:center;gap:8px;margin-bottom:4px;display:flex}.product-popup-thumb{border-radius:var(--radius-sm);background:var(--color-bg-inset);flex-shrink:0;width:36px;height:36px}.product-popup-thumb--placeholder{background:var(--color-bg);justify-content:center;align-items:center;display:flex}.product-popup-thumb--placeholder .image-placeholder{color:var(--color-text-placeholder);font-size:16px}.product-popup-name{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.product-popup-code{color:var(--color-text-secondary);background:var(--color-bg-inset);border-radius:var(--radius-md);align-items:center;padding:1px 8px;font-size:11px;display:inline-flex}.product-popup-specs{flex-wrap:wrap;gap:6px;margin-bottom:6px;display:flex}.product-popup-meta{font-size:var(--font-size-sm);justify-content:space-between;align-items:center;display:flex}.product-popup-meta .meta-stock{color:var(--color-text-secondary)}.product-popup-meta .stock-value{color:var(--color-text-primary);font-weight:var(--font-weight-medium)}.product-popup-meta .stock-value.stock-low{color:var(--state-warning-ink)}.product-popup-meta .meta-price{color:var(--color-primary-700);font-weight:var(--font-weight-semibold)}.btn-primary{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-on-primary);background:var(--color-primary);border-radius:var(--radius-md);transition:background var(--transition-fast);cursor:pointer;border:none;justify-content:center;align-items:center;padding:8px 20px;display:inline-flex}.btn-primary:hover{background:var(--color-primary-hover)}.btn-primary:active{background:var(--color-primary-active)}.btn-primary:focus-visible{outline:none;box-shadow:0 0 0 2px #1b9aa44d}.btn-secondary{font-size:var(--font-size-base);color:var(--color-text-regular);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:background var(--transition-fast), border-color var(--transition-fast);cursor:pointer;justify-content:center;align-items:center;padding:8px 20px;display:inline-flex}.btn-secondary:hover{background:var(--color-bg-hover);border-color:var(--color-border-dark)}.btn-secondary:focus-visible{outline:none;box-shadow:0 0 0 2px #1b9aa426}.form-input{width:100%;font-size:var(--font-size-sm);color:var(--color-text-primary);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;padding:6px 12px}.form-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px #1b9aa426}.page-container{padding:var(--spacing-xl);margin-left:var(--sidebar-width);margin-top:var(--header-height);min-height:calc(100vh - var(--header-height));background:var(--color-bg)}.page-header{margin-bottom:var(--spacing-xl);justify-content:space-between;align-items:center;display:flex}.page-title{font-size:var(--font-size-lg);color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}.query-btn{font-size:var(--font-size-sm);font-family:var(--font-family);color:var(--color-text-on-primary);background:var(--color-primary);border:1px solid var(--color-primary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);align-items:center;gap:6px;padding:6px 16px;display:inline-flex}.query-btn:hover{background:var(--color-primary-hover)}.reset-btn{font-size:var(--font-size-sm);font-family:var(--font-family);color:var(--color-text-regular);background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);padding:6px 16px}.reset-btn:hover{background:var(--color-bg-hover)}.create-btn{font-size:var(--font-size-sm);font-family:var(--font-family);font-weight:var(--font-weight-medium);color:var(--color-text-on-primary);background:var(--color-primary);border:1px solid var(--color-primary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);align-items:center;gap:6px;margin-left:auto;padding:6px 16px;display:inline-flex}.create-btn:hover{background:var(--color-primary-hover)}.card{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.btn-soft--primary{--el-button-bg-color:var(--color-primary-50);--el-button-text-color:var(--color-primary-700);--el-button-border-color:transparent;--el-button-hover-bg-color:var(--color-primary-100);--el-button-hover-text-color:var(--color-primary-700);--el-button-hover-border-color:transparent;--el-button-active-bg-color:var(--color-primary-100);--el-button-active-text-color:var(--color-primary-700);--el-button-active-border-color:transparent}.btn-soft--success{--el-button-bg-color:var(--state-success-bg);--el-button-text-color:var(--state-success-ink);--el-button-border-color:transparent;--el-button-hover-bg-color:var(--state-success-bg);--el-button-hover-text-color:var(--state-success-ink);--el-button-hover-border-color:transparent;--el-button-active-bg-color:var(--state-success-border);--el-button-active-text-color:var(--state-success-ink);--el-button-active-border-color:transparent}.btn-soft--warning{--el-button-bg-color:var(--state-warning-bg);--el-button-text-color:var(--state-warning-ink);--el-button-border-color:transparent;--el-button-hover-bg-color:var(--state-warning-bg);--el-button-hover-text-color:var(--state-warning-ink);--el-button-hover-border-color:transparent;--el-button-active-bg-color:var(--state-warning-border);--el-button-active-text-color:var(--state-warning-ink);--el-button-active-border-color:transparent}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.fund-note{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.fund-note--block{margin-top:2px;display:block}
