*{margin:0;padding:0;box-sizing:border-box}body,html{height:100%;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Arial,sans-serif;background-color:var(--bg-page)}#app{min-height:100vh}.app-header[data-v-0a912765]{position:fixed;top:0;left:var(--sidebar-width);right:0;z-index:1000;height:var(--header-height);background:var(--bg-surface);border-bottom:1px solid var(--border-color)}.header-inner[data-v-0a912765]{height:100%;padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:16px}.push-status[data-v-0a912765]{display:inline-flex;align-items:center;gap:8px;height:28px;padding:0 12px 0 10px;border-radius:999px;font-size:12px;font-weight:500;line-height:1;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:pointer;transition:background .15s var(--ease-out)}.push-status__dot[data-v-0a912765]{width:8px;height:8px;border-radius:50%;flex-shrink:0}.push-status__text[data-v-0a912765]{white-space:nowrap}.push-status--ok[data-v-0a912765]{color:#2e7d32;background:rgba(103,194,58,.12);cursor:default}.push-status--ok .push-status__dot[data-v-0a912765]{background:#67c23a;box-shadow:0 0 0 0 rgba(103,194,58,.5);animation:push-dot-pulse-0a912765 1.8s ease-in-out infinite}.push-status--warn[data-v-0a912765]{color:#b8821a;background:rgba(230,162,60,.12)}.push-status--warn .push-status__dot[data-v-0a912765]{background:#e6a23c;animation:push-dot-blink-0a912765 1s ease-in-out infinite}.push-status--danger[data-v-0a912765]{color:#c45656;background:hsla(0,87%,69%,.1)}.push-status--danger .push-status__dot[data-v-0a912765]{background:#f56c6c}.push-status--muted[data-v-0a912765]{color:#909399;background:#f4f5f7}.push-status--muted .push-status__dot[data-v-0a912765]{background:#c0c4cc}@keyframes push-dot-pulse-0a912765{0%,to{box-shadow:0 0 0 0 rgba(103,194,58,.45)}50%{box-shadow:0 0 0 6px rgba(103,194,58,0)}}@keyframes push-dot-blink-0a912765{0%,to{opacity:1}50%{opacity:.35}}.user-avatar[data-v-0a912765]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;overflow:hidden;text-decoration:none;background:linear-gradient(135deg,#057bfa,#0284c7);flex-shrink:0;border:1px solid rgba(5,123,250,.2);transition:transform .15s var(--ease-out),box-shadow .15s var(--ease-out)}.user-avatar[data-v-0a912765]:hover{transform:translateY(-1px);box-shadow:0 4px 10px rgba(5,123,250,.25)}.avatar-img[data-v-0a912765]{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.avatar-text[data-v-0a912765]{font-size:14px;font-weight:600;color:#fff}.app-sidebar[data-v-6bedf92a]{position:fixed;top:0;left:0;bottom:0;z-index:1001;width:var(--sidebar-width);background:var(--bg-surface);border-right:1px solid var(--border-color);display:flex;flex-direction:column}.brand[data-v-6bedf92a]{display:flex;align-items:center;gap:10px;height:var(--header-height);padding:0 16px 0 20px;cursor:pointer;flex-shrink:0;min-width:0;border-bottom:1px solid var(--border-color)}.brand-icon[data-v-6bedf92a]{width:28px;height:28px;border-radius:50%;-o-object-fit:contain;object-fit:contain;flex-shrink:0}.brand-name[data-v-6bedf92a]{font-size:15px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.sidebar-nav[data-v-6bedf92a]{flex:1;padding:12px 0;overflow-y:auto}.nav-item[data-v-6bedf92a]{position:relative;display:flex;align-items:center;gap:10px;height:44px;margin:2px 10px;padding:0 12px 0 14px;border-radius:8px;text-decoration:none;color:var(--text-secondary);font-size:14px;font-weight:500;transition:color .16s var(--ease-out),background .16s var(--ease-out)}.nav-item[data-v-6bedf92a]:hover{color:var(--color-primary);background:var(--color-primary-soft)}.nav-item.active[data-v-6bedf92a]{color:var(--color-primary);background:rgba(5,123,250,.12)}.nav-item.active[data-v-6bedf92a]:before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:0 2px 2px 0;background:var(--color-primary)}.nav-item[data-v-6bedf92a]:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.nav-icon[data-v-6bedf92a]{width:18px;height:18px;flex-shrink:0;-o-object-fit:contain;object-fit:contain}.nav-text[data-v-6bedf92a]{white-space:nowrap;flex:1;min-width:0}.nav-item--remind[data-v-6bedf92a]{position:relative;animation:nav-item-breathe-6bedf92a 2s ease-in-out infinite}.nav-item--remind[data-v-6bedf92a]:after{content:"";position:absolute;inset:4px 8px;border-radius:8px;border:1.5px solid hsla(0,87%,69%,.55);pointer-events:none;animation:nav-item-ring-6bedf92a 2s ease-in-out infinite}.nav-item.active.nav-item--remind[data-v-6bedf92a]:after{border-color:rgba(5,123,250,.45)}.nav-badge[data-v-6bedf92a]{flex-shrink:0;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--color-danger);color:#fff;font-size:11px;font-style:normal;font-weight:600;line-height:18px;text-align:center}.nav-item.active .nav-badge[data-v-6bedf92a]{background:#e64545}@keyframes nav-item-breathe-6bedf92a{0%,to{background:transparent}50%{background:hsla(0,87%,69%,.08)}}.nav-item.active.nav-item--remind[data-v-6bedf92a]{animation-name:nav-item-breathe-active-6bedf92a}@keyframes nav-item-breathe-active-6bedf92a{0%,to{background:#f5f9ff}50%{background:rgba(5,123,250,.12)}}@keyframes nav-item-ring-6bedf92a{0%,to{opacity:.9;transform:scale(1)}50%{opacity:.2;transform:scale(1.02)}}.sidebar-footer[data-v-6bedf92a]{flex-shrink:0;align-self:stretch;border-top:1px solid var(--border-color);padding:16px 12px 20px}.logout-btn[data-v-6bedf92a]{display:flex;flex-direction:row;justify-content:center;align-items:center;width:100%;height:40px;padding:0 12px;gap:8px;border:none;border-radius:8px;background:var(--color-primary);cursor:pointer;transition:background .16s var(--ease-out),transform .15s var(--ease-out)}.logout-btn[data-v-6bedf92a]:hover:not(:disabled){background:var(--color-primary-hover)}.logout-btn[data-v-6bedf92a]:active:not(:disabled){background:#0358b8}.logout-btn[data-v-6bedf92a]:disabled{opacity:.7;cursor:not-allowed}.logout-btn__icon[data-v-6bedf92a]{flex:none;width:17.3px;height:18px;color:#fff}.logout-btn__text[data-v-6bedf92a]{flex:none;font-size:16px;font-weight:700;line-height:24px;color:#fff;white-space:nowrap}.dispatch-layout[data-v-49222c3a]{min-height:100vh;background:var(--bg-page)}.main-content[data-v-49222c3a]{margin-top:var(--header-height);margin-left:var(--sidebar-width);min-height:calc(100vh - var(--header-height))}.page-view[data-v-49222c3a]{min-height:inherit}:root{--color-primary:#057bfa;--color-primary-hover:#0468d4;--color-primary-light:#e6efff;--color-primary-soft:rgba(5,123,250,.1);--text-primary:#0f172a;--text-secondary:#64748b;--text-muted:#94a3b8;--text-disabled:#cbd5e1;--bg-page:#f1f5f9;--bg-surface:#fff;--bg-muted:#f1f5f9;--border-color:#e2e8f0;--border-strong:#cbd5e1;--color-success:#059669;--color-warning:#d97706;--color-danger:#dc2626;--color-info:#0284c7;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--shadow-card:0 1px 2px rgba(15,23,42,.04),0 4px 12px rgba(15,23,42,.04);--shadow-hover:0 2px 4px rgba(15,23,42,.06),0 8px 20px rgba(5,123,250,.08);--ease-out:cubic-bezier(0.22,1,0.36,1);--header-height:56px;--sidebar-width:200px;--modal-mask:rgba(15,23,42,.45);--modal-radius:12px;--modal-shadow:0 16px 40px rgba(15,23,42,.18)}*,:after,:before{box-sizing:border-box}body,html{margin:0;color:var(--text-primary);background:var(--bg-page);font-family:PingFang SC,Microsoft YaHei,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}input.account-input[readonly],input.amount-input[readonly],input.form-input[readonly]{cursor:text;background:inherit;color:inherit;opacity:1}.fade-enter-active,.fade-leave-active{transition:opacity .22s var(--ease-out)}.fade-enter-from,.fade-leave-to{opacity:0}@media (prefers-reduced-motion:reduce){.fade-enter-active,.fade-leave-active{transition:none}.sk-block,.sk-line{animation:none!important}}.sk-block,.sk-line{display:block;border-radius:6px;background:linear-gradient(90deg,#e2e8f0,#f1f5f9 50%,#e2e8f0);background-size:200% 100%;animation:sk-shimmer 1.2s ease-in-out infinite}.sk-line{height:12px;width:100%}.sk-line--sm{width:56%;height:12px}.sk-line--md{width:72%;height:12px}.sk-line--lg{width:88%;height:14px}.sk-line--title{width:42%;height:16px}.sk-avatar{width:48px;height:48px;border-radius:10px;flex-shrink:0}.sk-tag{width:64px;height:22px;border-radius:999px}.sk-thumb{width:44px;height:44px;border-radius:6px;flex-shrink:0}@keyframes sk-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.sk-table-rows{display:flex;flex-direction:column;width:100%}.sk-table-row{display:flex;align-items:center;gap:12px;min-height:56px;padding:12px 16px;border-top:1px solid #f1f5f9;box-sizing:border-box}.sk-table-row:first-child{border-top:none}.sk-table-row .sk-line{flex:1;min-width:0}.sk-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;width:100%}.sk-card{display:flex;flex-direction:column;gap:12px;min-height:140px;padding:18px 16px;background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-card);box-sizing:border-box}.sk-card__head{display:flex;gap:12px;align-items:flex-start}.sk-card__meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px;padding-top:4px}.sk-card__actions{display:flex;gap:8px;margin-top:auto}.sk-btn{flex:1;height:36px;border-radius:8px}.sk-list{display:flex;flex-direction:column;gap:12px;width:100%;padding:4px 0}.sk-list-card{display:flex;flex-direction:column;gap:10px;padding:14px;border:1px solid var(--border-color);border-radius:10px}.sk-list-card,.sk-panel{background:#fff;box-sizing:border-box}.sk-panel{border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-card);padding:20px}