@charset "UTF-8";.qh-confirm-body[data-v-3a6cca60]{display:flex;align-items:flex-start;gap:12px;padding:4px 4px 8px;line-height:1.6;color:var(--el-text-color-primary);font-size:14px}.qh-confirm-icon[data-v-3a6cca60]{flex-shrink:0;font-size:22px;margin-top:1px}.qh-confirm-icon.is-warning[data-v-3a6cca60]{color:var(--el-color-warning)}.qh-confirm-icon.is-info[data-v-3a6cca60]{color:var(--el-color-info)}.qh-confirm-icon.is-success[data-v-3a6cca60]{color:var(--el-color-success)}.qh-confirm-icon.is-error[data-v-3a6cca60]{color:var(--el-color-danger)}.qh-confirm-message[data-v-3a6cca60]{flex:1;word-break:break-word;white-space:pre-wrap}.qh-prompt-body[data-v-36cf2dd7]{padding:4px 2px 8px;min-height:180px}.qh-prompt-desc[data-v-36cf2dd7]{margin:0 0 14px;padding:10px 12px;line-height:1.55;font-size:13px;color:var(--el-text-color-regular);background:var(--el-fill-color-light);border-radius:6px}.qh-prompt-body[data-v-36cf2dd7] .el-form-item{margin-bottom:0}.qh-prompt-body[data-v-36cf2dd7] .el-form-item__label{margin-bottom:6px;line-height:1.4;font-weight:500;color:var(--el-text-color-primary)}.qh-prompt-item--nolabel[data-v-36cf2dd7]>.el-form-item__label{display:none!important}.qh-prompt-body[data-v-36cf2dd7] .el-textarea__inner{padding:12px 14px;height:180px;min-height:180px;font-size:14px;line-height:1.6;border-radius:6px;box-sizing:border-box}.layout[data-v-b731064e]{display:flex;height:100vh}.sidebar[data-v-b731064e]{width:220px;flex-shrink:0;background:var(--qh-bg-surface);color:var(--qh-text-regular);display:flex;flex-direction:column;overflow:hidden;border-right:1px solid var(--qh-border-color)}.brand[data-v-b731064e]{height:52px;width:100%;padding:0 12px;box-sizing:border-box;display:flex;align-items:center;gap:10px;background:var(--qh-color-primary);border-bottom:1px solid var(--qh-border-color)}.brand-logo[data-v-b731064e]{width:32px;height:32px;flex-shrink:0;border-radius:8px;background:#fff;color:var(--qh-color-primary);font-size:13px;font-weight:700;letter-spacing:-.5px;display:flex;align-items:center;justify-content:center}.brand-title[data-v-b731064e]{flex:1;min-width:0;font-size:14px;font-weight:600;line-height:1.2;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar[data-v-b731064e] .side-menu{width:100%;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;border-right:none;box-sizing:border-box}.sidebar[data-v-b731064e] .side-menu .el-menu-item,.sidebar[data-v-b731064e] .side-menu .el-sub-menu__title{height:48px;line-height:48px;margin:0;border-right:3px solid transparent}.sidebar[data-v-b731064e] .side-menu .el-menu-item.is-active{background-color:var(--qh-color-primary-soft)!important;color:var(--qh-color-primary)!important;border-right-color:var(--qh-color-primary)}.sidebar[data-v-b731064e] .side-menu .el-sub-menu__title:hover,.sidebar[data-v-b731064e] .side-menu .el-menu-item:hover{background-color:var(--qh-hover-bg)!important;color:var(--qh-text-regular)!important}.sidebar[data-v-b731064e] .side-menu .el-menu-item.is-active:hover{background-color:var(--qh-color-primary-soft)!important;color:var(--qh-color-primary)!important}.main[data-v-b731064e]{flex:1;display:flex;flex-direction:column;min-width:0}.navbar[data-v-b731064e]{height:52px;background:var(--qh-bg-surface);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 16px;border-bottom:1px solid var(--qh-border-color)}.navbar[data-v-b731064e] .el-breadcrumb__inner,.navbar[data-v-b731064e] .el-breadcrumb__separator{color:var(--qh-text-secondary)!important}.navbar-right[data-v-b731064e]{display:flex;align-items:center;gap:12px;flex-shrink:0}.theme-btn[data-v-b731064e]{width:32px;height:32px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--qh-border-color);background:var(--qh-bg-surface);color:var(--qh-text-secondary);cursor:pointer;outline:none}.theme-btn[data-v-b731064e]:hover{color:var(--qh-color-primary);border-color:var(--qh-color-primary)}.theme-icon[data-v-b731064e]{width:18px;height:18px;display:block}.user-card[data-v-b731064e]{display:flex;align-items:center;gap:10px;width:200px;min-width:200px;padding:4px 12px 4px 6px;border-radius:8px;background:var(--qh-color-primary-soft);border:1px solid color-mix(in srgb,var(--qh-color-primary) 28%,transparent);cursor:pointer;outline:none;box-sizing:border-box}.user-avatar[data-v-b731064e]{flex-shrink:0;color:#fff}.user-meta[data-v-b731064e]{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.user-name[data-v-b731064e]{font-size:13px;font-weight:600;line-height:1.25;color:var(--qh-color-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-dept[data-v-b731064e]{margin-top:1px;font-size:12px;color:color-mix(in srgb,var(--qh-color-primary) 55%,var(--qh-text-secondary));line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-caret[data-v-b731064e]{flex-shrink:0;font-size:12px;color:var(--qh-color-primary)}.tags[data-v-b731064e]{background:var(--qh-bg-surface);padding:8px 12px;border-bottom:1px solid var(--qh-border-color);display:flex;gap:8px;flex-wrap:wrap}.tag-item[data-v-b731064e]{cursor:pointer}.content[data-v-b731064e]{flex:1;min-height:0;overflow:auto;padding:16px;display:flex;flex-direction:column;box-sizing:border-box}.content[data-v-b731064e]>*{flex:1;min-height:0;width:100%}.qh-theme-popover{padding:6px 0!important}.qh-theme-popover .theme-panel-list{display:flex;flex-direction:column}.qh-theme-popover .theme-mode-block{padding:4px 12px 8px}.qh-theme-popover .theme-mode-title{padding:4px 14px 6px;font-size:12px;color:var(--qh-text-secondary)}.qh-theme-popover .theme-mode-title-pad{padding-top:2px}.qh-theme-popover .theme-mode-row{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.qh-theme-popover .theme-mode-btn{height:30px;border:1px solid var(--qh-border-color);border-radius:6px;background:var(--qh-bg-surface);color:var(--qh-text-regular);font-size:12px;cursor:pointer}.qh-theme-popover .theme-mode-btn:hover{border-color:var(--qh-color-primary);color:var(--qh-color-primary)}.qh-theme-popover .theme-mode-btn.active{border-color:var(--qh-color-primary);background:var(--qh-color-primary-soft);color:var(--qh-color-primary);font-weight:600}.qh-theme-popover .theme-row{width:100%;min-height:36px;padding:8px 14px;box-sizing:border-box;display:flex;align-items:center;gap:8px;border:none;background:transparent;text-align:left;cursor:pointer}.qh-theme-popover button.theme-row:hover,.qh-theme-popover .theme-row:hover{background:var(--qh-hover-bg)}.qh-theme-popover .theme-row-divider{height:1px;margin:4px 0;background:var(--qh-border-color)}.qh-theme-popover .theme-row-main{display:inline-flex;align-items:center;gap:8px;min-width:0;flex:1}.qh-theme-popover .theme-row-custom{padding:0;gap:0;cursor:default}.qh-theme-popover .theme-custom-main{flex:2;min-width:0;min-height:36px;padding:8px 8px 8px 14px;border:none;background:transparent;display:inline-flex;align-items:center;gap:8px;cursor:pointer;text-align:left}.qh-theme-popover .theme-custom-side{flex:1;min-width:0;min-height:36px;padding:8px 14px 8px 8px;border:none;background:transparent;display:inline-flex;align-items:center;justify-content:flex-end;gap:6px;cursor:pointer}.qh-theme-popover .theme-custom-side:hover{background:#00000008}.qh-theme-popover html.dark .theme-custom-side:hover{background:#ffffff0a}.qh-theme-popover .theme-item-dot{width:14px;height:14px;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 1px #00000014}.qh-theme-popover .theme-label{font-size:13px;color:var(--qh-text-regular);white-space:nowrap}.qh-theme-popover .theme-hex{flex-shrink:0;font-size:12px;color:var(--qh-text-secondary);font-variant-numeric:tabular-nums}.qh-theme-popover .theme-tick{flex-shrink:0;margin-left:2px;font-size:14px;font-weight:600;color:var(--qh-color-primary);line-height:1}.qh-theme-popover .theme-edit-arrow{flex-shrink:0;font-size:14px;color:var(--qh-text-secondary)}.qh-theme-popover .is-theme-active{background-color:var(--qh-color-primary-soft)!important}.qh-theme-popover .is-theme-active .theme-label{color:var(--qh-color-primary);font-weight:600}.qh-theme-popover .theme-panel-picker{padding:4px 4px 6px}.qh-theme-popover .theme-panel-picker .el-color-picker-panel{width:100%;padding:8px;box-sizing:border-box;display:flex;flex-wrap:wrap;align-items:center;border:none}.qh-theme-popover .theme-panel-picker .el-color-picker-panel__wrapper{width:100%;margin-bottom:8px}.qh-theme-popover .theme-panel-picker .el-color-predefine{width:auto;margin:0;flex:0 0 auto}.qh-theme-popover .theme-panel-picker .el-color-predefine__colors{flex-wrap:nowrap}.qh-theme-popover .theme-panel-picker .el-color-picker-panel__footer{flex:1 1 auto;min-width:0;margin:0 0 0 8px;display:flex;align-items:center;justify-content:flex-end;gap:6px}.qh-theme-popover .theme-panel-picker .el-color-picker-panel__footer .el-input{width:88px;flex-shrink:0}.qh-theme-popover .theme-panel-picker .el-color-picker-panel__footer .el-button{margin:0;flex-shrink:0}.nav-progress[data-v-80934db7]{position:fixed;top:0;left:0;right:0;z-index:4000;height:2px;pointer-events:none;overflow:hidden}.nav-progress__bar[data-v-80934db7]{height:100%;width:40%;background:var(--el-color-primary);animation:nav-progress-slide-80934db7 .9s ease-in-out infinite}@keyframes nav-progress-slide-80934db7{0%{transform:translate(-120%)}to{transform:translate(350%)}}:root{--qh-color-primary: #1890ff;--qh-color-primary-soft: #e6f7ff;--qh-color-primary-soft-90: rgba(230, 247, 255, .9);--qh-color-primary-soft-35: rgba(230, 247, 255, .35);--qh-color-primary-soft-0: rgba(230, 247, 255, 0);--qh-bg-page: #f3f5f9;--qh-bg-surface: #ffffff;--qh-bg-elevated: #ffffff;--qh-border-color: #e8edf3;--qh-text-primary: #1f2a37;--qh-text-regular: #303133;--qh-text-secondary: #909399;--qh-hover-bg: #f5f7fa;color-scheme:light}html.dark{--qh-bg-page: #0d1117;--qh-bg-surface: #161b22;--qh-bg-elevated: #1c2128;--qh-border-color: #30363d;--qh-text-primary: #e6edf3;--qh-text-regular: #c9d1d9;--qh-text-secondary: #8b949e;--qh-hover-bg: #21262d;color-scheme:dark}*{box-sizing:border-box}html,body,#app{margin:0;height:100%;font-family:Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;background:var(--qh-bg-page);color:var(--qh-text-primary)}a{color:inherit;text-decoration:none}.el-table th.el-table__cell{text-align:center;background-color:var(--qh-color-primary-soft)!important;color:var(--qh-color-primary)}.el-table th.el-table__cell>.cell{text-align:center;justify-content:center;color:var(--qh-color-primary)}.el-table td.el-table__cell{text-align:center}.el-table td.el-table__cell>.cell{text-align:center;justify-content:center}.el-table .el-table__cell.is-left,.el-table .el-table__cell.is-left>.cell{text-align:left;justify-content:flex-start}.el-table .el-table__cell.is-right,.el-table .el-table__cell.is-right>.cell{text-align:right;justify-content:flex-end}.el-table{--el-table-border-color: #e4e7ed}html.dark .el-table{--el-table-border-color: #3a424c}.el-form-item__label:after{content:"："}.el-table .el-table__cell.qh-op-col>.cell{padding-left:0;padding-right:0}.op-actions{display:grid;grid-template-columns:repeat(3,max-content);justify-content:center;align-items:center;gap:6px;width:max-content;margin:0 auto;padding:4px 10px;box-sizing:content-box}.op-pill{margin:0;padding:3px 12px;border:none;border-radius:999px;font-size:12px;line-height:1.4;color:#fff;cursor:pointer;white-space:nowrap;transition:opacity .15s ease,filter .15s ease}.op-pill:hover{opacity:.9;filter:brightness(1.05)}.op-pill:active{filter:brightness(.95)}.op-pill--edit{background:#e6a23c}.op-pill--favor{background:#f0c040}.op-pill--recommend,.op-pill--attach,.op-pill--exec,.op-pill--modify,.op-pill--reset,.op-pill--add{background:#409eff}.op-pill--unfavor,.op-pill--disable{background:#909399}.op-pill--record,.op-pill--place,.op-pill--complete,.op-pill--assign,.op-pill--enable{background:#67c23a}.op-pill--order{background:#13c2c2}.op-pill--leader{background:#e6a23c}.op-pill--delete{background:#f56c6c}.el-button.qh-btn-gray{--el-button-bg-color: #909399;--el-button-border-color: #909399;--el-button-text-color: #fff;--el-button-hover-bg-color: #a6a9ad;--el-button-hover-border-color: #a6a9ad;--el-button-hover-text-color: #fff;--el-button-active-bg-color: #82848a;--el-button-active-border-color: #82848a;--el-button-active-text-color: #fff}
