.toast-icon[data-v-a789ba4b]{flex:none;margin-top:1px;color:var(--win-accent)}.toast.success .toast-icon[data-v-a789ba4b]{color:var(--win-success)}.toast.error .toast-icon[data-v-a789ba4b]{color:var(--win-danger)}.toast.warning .toast-icon[data-v-a789ba4b]{color:var(--win-warning)}.toast-close[data-v-a789ba4b]{flex:none}:root{--win-bg: #f3f3f3;--win-surface: #ffffff;--win-surface-alt: #fafafa;--win-surface-hover: #f4f4f4;--win-surface-active: #ebebeb;--win-border: #e3e3e3;--win-border-strong: #c9c9c9;--win-text: #1b1b1b;--win-text-secondary: #616161;--win-text-tertiary: #8a8a8a;--win-accent: #0067c0;--win-accent-hover: #0078d4;--win-accent-soft: #e5f1fb;--win-selection: #cce8ff;--win-selection-border: #99c9f0;--win-danger: #c42b1c;--win-danger-soft: #fde7e9;--win-success: #0f7b0f;--win-warning: #9d5d00;--excel-green: #217346;--excel-dark: #185c37;--excel-soft: #e6f2ec;--shadow-flyout: 0 8px 28px rgba(0, 0, 0, .16), 0 1px 3px rgba(0, 0, 0, .12);--shadow-dialog: 0 24px 70px rgba(0, 0, 0, .28), 0 2px 8px rgba(0, 0, 0, .12);--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--font-ui: "Segoe UI Variable Text", "Segoe UI", "Microsoft YaHei UI", "Microsoft YaHei", "PingFang SC", "Hiragino Sans GB", system-ui, sans-serif;--font-mono: "Cascadia Mono", "Consolas", "SFMono-Regular", "Menlo", "Microsoft YaHei", monospace}*{box-sizing:border-box}html,body,#app{height:100%}body{margin:0;font-family:var(--font-ui);font-size:14px;color:var(--win-text);background:var(--win-bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow:hidden}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default}a{color:var(--win-accent);text-decoration:none}::selection{background:var(--win-selection)}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#c7c7c7;border:3px solid transparent;border-radius:8px;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:#a6a6a6;border:3px solid transparent;background-clip:content-box}.win-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:32px;padding:0 12px;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--win-text);font-size:13px;white-space:nowrap;transition:background .12s ease,border-color .12s ease}.win-btn:hover:not(:disabled){background:var(--win-surface-hover)}.win-btn:active:not(:disabled){background:var(--win-surface-active)}.win-btn:disabled{color:var(--win-text-tertiary);opacity:.7}.win-btn.primary{background:var(--win-accent);color:#fff}.win-btn.primary:hover:not(:disabled){background:var(--win-accent-hover)}.win-btn.danger{color:var(--win-danger)}.win-btn.danger:hover:not(:disabled){background:var(--win-danger-soft)}.win-btn.bordered{border-color:var(--win-border-strong);background:var(--win-surface)}.win-btn.bordered:hover:not(:disabled){background:var(--win-surface-hover)}.win-input{height:34px;width:100%;padding:0 10px;border:1px solid var(--win-border-strong);border-radius:var(--radius-sm);background:var(--win-surface);outline:none;transition:border-color .12s ease,box-shadow .12s ease}.win-input:focus{border-color:var(--win-accent);box-shadow:0 0 0 2px #0067c029}.win-input::placeholder{color:var(--win-text-tertiary)}.win-select{height:34px;padding:0 28px 0 10px;border:1px solid var(--win-border-strong);border-radius:var(--radius-sm);background:var(--win-surface);outline:none}.win-select:focus{border-color:var(--win-accent)}.field-label{display:block;margin-bottom:6px;font-size:13px;color:var(--win-text-secondary)}.form-error{margin-top:10px;padding:8px 10px;border-radius:var(--radius-sm);background:var(--win-danger-soft);color:var(--win-danger);font-size:13px}.spinner{width:18px;height:18px;border:2px solid rgba(0,103,192,.2);border-top-color:var(--win-accent);border-radius:50%;animation:spin .75s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.muted{color:var(--win-text-secondary)}.ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.flex{display:flex;align-items:center}.gap-6{gap:6px}.gap-8{gap:8px}.gap-12{gap:12px}.grow{flex:1;min-width:0}.toast-host{position:fixed;right:20px;bottom:20px;z-index:9000;display:flex;flex-direction:column;gap:10px;width:min(380px,calc(100vw - 40px));pointer-events:none}.toast{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;background:var(--win-surface);border:1px solid var(--win-border);border-left:4px solid var(--win-accent);border-radius:var(--radius-md);box-shadow:var(--shadow-flyout);font-size:13px;line-height:1.5;pointer-events:auto;animation:toast-in .18s ease-out}.toast.success{border-left-color:var(--win-success)}.toast.error{border-left-color:var(--win-danger)}.toast.warning{border-left-color:var(--win-warning)}.toast-close{border:none;background:transparent;color:var(--win-text-tertiary);padding:0;line-height:1}@keyframes toast-in{0%{transform:translateY(8px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-backdrop{position:fixed;inset:0;z-index:8000;display:flex;align-items:center;justify-content:center;padding:24px;background:#00000047;-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);animation:fade-in .12s ease-out}.modal-card{width:min(480px,100%);max-height:calc(100vh - 48px);display:flex;flex-direction:column;background:var(--win-surface);border:1px solid var(--win-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-dialog);animation:dialog-in .16s ease-out}.modal-card.wide{width:min(760px,100%)}.modal-header{display:flex;align-items:center;padding:20px 24px 8px}.modal-title{margin:0;font-size:20px;font-weight:600}.modal-body{padding:12px 24px 20px;overflow:auto}.modal-footer{display:flex;justify-content:flex-end;gap:8px;padding:16px 24px 20px;border-top:1px solid var(--win-border);background:var(--win-surface-alt);border-radius:0 0 var(--radius-lg) var(--radius-lg)}.modal-footer .win-btn{min-width:84px}@keyframes fade-in{0%{opacity:0}}@keyframes dialog-in{0%{opacity:0;transform:translateY(8px) scale(.99)}}.context-menu{position:fixed;z-index:8500;min-width:220px;padding:4px;background:var(--win-surface);border:1px solid var(--win-border);border-radius:var(--radius-md);box-shadow:var(--shadow-flyout);animation:dialog-in .1s ease-out;-webkit-user-select:none;user-select:none}.context-menu-item{display:flex;align-items:center;gap:10px;width:100%;height:32px;padding:0 10px;border:none;border-radius:var(--radius-sm);background:transparent;text-align:left;font-size:13px}.context-menu-item:hover:not(:disabled){background:var(--win-surface-hover)}.context-menu-item:disabled{color:var(--win-text-tertiary)}.context-menu-item.danger{color:var(--win-danger)}.context-menu-separator{height:1px;margin:4px 8px;background:var(--win-border)}.context-menu-shortcut{margin-left:auto;color:var(--win-text-tertiary);font-size:12px}.avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(135deg,#0b6bcb,#4b9ce2);color:#fff;font-weight:600;letter-spacing:.5px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;height:100%;min-height:260px;color:var(--win-text-tertiary);-webkit-user-select:none;user-select:none}.empty-state .empty-title{font-size:16px;color:var(--win-text-secondary)}.empty-state .empty-desc{font-size:13px;max-width:420px;text-align:center;line-height:1.7}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.drag-overlay{position:fixed;inset:0;z-index:7000;display:flex;align-items:center;justify-content:center;background:#0067c014;border:3px dashed var(--win-accent);color:var(--win-accent);font-size:18px;font-weight:600;pointer-events:none}
