.role-guide-drawer .el-drawer__header{border-bottom:1px solid var(--border);margin-bottom:0;padding:22px 24px 18px}.role-guide-drawer .el-drawer__body{min-height:0;padding:0;display:flex}.guide-title{color:var(--text);align-items:center;gap:10px;margin:0;font-size:19px;font-weight:600;display:flex}.role-guide{flex-direction:column;width:100%;min-height:0;display:flex}.guide-scope{color:var(--text-secondary);margin:18px 24px 14px;font-size:13px;line-height:1.8}.guide-search{flex:none;width:calc(100% - 48px);margin:0 24px 18px}.guide-layout{border-top:1px solid var(--border);flex:1;grid-template-columns:232px minmax(0,1fr);min-height:0;display:grid}.guide-directory{background:var(--surface-secondary);border-right:1px solid var(--border);padding:18px 12px;overflow:auto}.guide-directory-label{color:var(--text-secondary);margin:0 10px 12px;font-size:12px}.guide-topic{text-align:left;width:100%;color:var(--text-secondary);cursor:pointer;overflow-wrap:anywhere;background:0 0;border:0;border-radius:4px;align-items:baseline;gap:8px;padding:11px 10px;font-size:13px;line-height:1.6;display:flex}.guide-topic:hover{background:var(--surface-hover)}.guide-topic.selected{background:var(--accent-soft);color:var(--accent-text);font-weight:600}.guide-topic:focus-visible,.guide-article:focus-visible{outline:2px solid var(--accent-text);outline-offset:-2px}.guide-topic-index{color:var(--text-tertiary);font-variant-numeric:tabular-nums;flex:0 0 20px;font-size:11px}.guide-article{overflow-wrap:anywhere;padding:24px 28px 36px;overflow:auto}.guide-article h3{color:var(--text);margin:0 0 12px;font-size:18px;line-height:1.5}.guide-summary{color:var(--text-secondary);margin:0 0 22px;font-size:13px;line-height:1.8}.guide-steps{color:var(--text);margin:0;padding-left:24px;font-size:14px;line-height:1.95}.guide-steps li{margin-bottom:17px;padding-left:6px}.guide-steps li::marker{color:var(--accent-text);font-weight:600}.guide-notes{border-top:1px solid var(--border);border-left:3px solid var(--warning);margin-top:24px;padding:14px 0 0 14px}.guide-article h4{color:var(--text);margin:0 0 8px;font-size:13px}.guide-notes p{color:var(--text-secondary);margin:8px 0;font-size:13px;line-height:1.85}.guide-actions{margin-top:26px}.guide-links{flex-wrap:wrap;gap:6px 10px;display:flex}.guide-links .el-button{white-space:normal;text-align:left;height:auto;margin-left:0;padding:8px 4px}.guide-links .el-button>span{gap:6px}@media (width<=640px){.role-guide-drawer .el-drawer__header{padding:18px 16px}.guide-title{font-size:17px}.guide-scope{margin:14px 16px 12px;font-size:12px}.guide-search{width:calc(100% - 32px);margin:0 16px 14px}.guide-layout{flex-direction:column;display:flex}.guide-directory{border-right:0;border-bottom:1px solid var(--border);flex:none;grid-template-columns:repeat(2,minmax(0,1fr));max-height:156px;padding:10px 12px;display:grid}.guide-directory-label{grid-column:1/-1;margin-bottom:4px}.guide-topic{gap:4px;padding:6px 5px;font-size:12px}.guide-topic-index{flex-basis:17px}.guide-article{flex:1;min-height:0;padding:19px 20px 30px}.guide-article h3{font-size:17px}.guide-steps{padding-left:20px;font-size:13px}}.schedule-reminder-popover{box-sizing:border-box;max-width:calc(100vw - 24px)}.schedule-reminder-popover .reminder-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.schedule-reminder-popover .reminder-heading strong{font-size:14px}.schedule-reminder-popover .reminder-heading strong span{color:var(--text-secondary);margin-left:6px;font-size:12px;font-weight:400}.schedule-reminder-popover .reminder-list{max-height:min(430px,60vh);margin-top:8px;overflow:auto}.schedule-reminder-popover .reminder-row{font:inherit;text-align:left;background:var(--surface);border:0;border-bottom:1px solid var(--border-subtle);cursor:pointer;width:100%;padding:12px 10px;display:block}.schedule-reminder-popover .reminder-row:hover{background:var(--surface-secondary)}.schedule-reminder-popover .reminder-row.is-unread{border-left:3px solid var(--accent-text);background:var(--accent-soft)}.schedule-reminder-popover .reminder-meta{color:var(--text-secondary);justify-content:space-between;gap:8px;font-size:11px;display:flex}.schedule-reminder-popover .reminder-title{overflow-wrap:anywhere;color:var(--text);margin-top:4px;font-size:13px;line-height:1.6}.schedule-reminder-popover .reminder-calendar{width:100%;margin-top:8px}:root{font-family:var(--font-system);color:var(--text);background:var(--background);font-synthesis:none;letter-spacing:0}*{box-sizing:border-box;letter-spacing:0}body{margin:0}button,input,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}svg{vertical-align:middle;flex-shrink:0}.el-button svg{margin-right:6px}.el-button.is-text svg{margin-right:0}.el-dialog{border-radius:8px;max-width:calc(100% - 28px);padding:24px}.el-dialog__title{font-size:19px;font-weight:650}.el-overlay-dialog{padding-bottom:24px}.el-form-item__label{font-weight:550}.el-input-number,.el-select,.el-date-editor{max-width:100%}.el-form .el-select,.el-form .el-date-editor.el-input{width:100%}.el-table{--el-table-header-bg-color:var(--surface-secondary);--el-table-header-text-color:var(--text-secondary);--el-table-row-hover-bg-color:var(--surface-hover);--el-table-border-color:var(--border-subtle);font-size:13px}.el-table .money{font-variant-numeric:tabular-nums}.el-tag{border:0;font-weight:500}.el-pagination{flex-wrap:wrap;justify-content:flex-end;gap:6px;max-width:100%}.el-drawer__header{border-bottom:1px solid var(--border-subtle);margin-bottom:0;padding:22px}.el-drawer__body{padding:22px}.el-descriptions__label{font-weight:500!important}.el-empty{padding:55px 0}.el-dropdown-menu__item svg{margin-right:8px}.el-message{max-width:calc(100vw - 24px)}.app-shell{--side-width:232px;min-height:100vh}.app-shell.collapsed{--side-width:72px}.sidebar{width:var(--side-width);background:var(--surface);border-right:1px solid var(--border);z-index:30;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0}.brand{flex-shrink:0;align-items:center;gap:11px;height:82px;padding:20px 22px;display:flex}.brand-mark{background:var(--accent-text);width:37px;height:37px;color:var(--surface);border-radius:8px;flex-shrink:0;place-items:center;display:grid}.brand strong{font-size:19px;font-weight:700;display:block}.brand span{color:var(--text-tertiary);margin-top:4px;font-size:9px;display:block}.navigation{scrollbar-width:thin;flex:1;padding:5px 12px 18px;overflow:auto}.nav-link{height:40px;color:var(--text-secondary);white-space:nowrap;border-radius:5px;align-items:center;gap:12px;margin:2px 0;padding:0 14px;font-size:13px;display:flex}.nav-link:hover{background:var(--surface-hover)}.nav-link.selected{background:var(--accent-soft);color:var(--accent-text);font-weight:650}.nav-group-title{color:var(--text-tertiary);margin:0 0 8px;padding:0 14px;font-size:10px}.sidebar-bottom{border-top:1px solid var(--border-subtle);height:48px;color:var(--text-tertiary);flex-shrink:0;align-items:center;gap:8px;padding:0 12px;font-size:10px;display:flex}.collapsed .brand{padding:20px 17px}.collapsed .navigation{padding-left:10px;padding-right:10px}.collapsed .nav-link{justify-content:center;padding:0}.collapsed .nav-link span,.collapsed .nav-group-title{display:none}.collapsed .nav-group{border-top:1px solid var(--border-subtle);padding-top:12px}.main-shell{margin-left:var(--side-width);min-width:0}.topbar{background:var(--surface);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;height:70px;padding:0 28px;display:flex}.breadcrumbs{color:var(--text-tertiary);align-items:center;gap:12px;min-width:0;font-size:12px;display:flex}.breadcrumbs strong{color:var(--text);white-space:nowrap;font-weight:500}.topbar-right{align-items:center;gap:24px;min-width:0;display:flex}.book-label{color:var(--text-tertiary);white-space:nowrap;text-overflow:ellipsis;max-width:200px;font-size:12px;overflow:hidden}.user-menu{text-align:left;color:var(--text);background:0 0;border:0;align-items:center;gap:9px;padding:0;display:flex}.user-avatar{background:var(--surface-secondary);width:33px;height:33px;color:var(--text-secondary);border-radius:50%;place-items:center;font-size:13px;display:grid}.user-info strong{font-size:12px;font-weight:600;display:block}.user-info span{color:var(--text-tertiary);margin-top:3px;font-size:10px;display:block}.workspace{max-width:1800px;min-height:calc(100vh - 112px);margin:auto;padding:27px 28px 30px}.workspace-footer{height:42px;color:var(--text-tertiary);justify-content:space-between;padding:0 28px;font-size:10px;display:flex}.page-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.page-title{margin:0 0 6px;font-size:23px;font-weight:650;line-height:1.35}.page-subtitle{color:var(--text-tertiary);margin:0;font-size:12px}.page-actions{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;max-width:100%;display:flex}.page-actions .el-button+.el-button{margin-left:0}.page-actions .el-date-editor{min-width:0;max-width:100%}.data-section{background:var(--surface);border-top:1px solid var(--border);border-bottom:1px solid var(--border);min-width:0}.filterbar{border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;align-items:center;gap:12px;padding:17px 18px;display:flex}.filter-search{width:250px}.filter-status{width:135px}.filterbar .el-date-editor{width:245px}.filter-count{color:var(--text-tertiary);margin-left:auto;font-size:12px}.pagination{border-top:1px solid var(--border-subtle);padding:17px 18px}.link-name{color:var(--accent-text);text-align:left;background:0 0;border:0;padding:0;font-weight:550;line-height:1.5}.subline{color:var(--text-tertiary);margin-top:3px;font-size:11px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.amount{font-variant-numeric:tabular-nums;font-weight:550}.row-actions{align-items:center;gap:2px;min-height:28px;display:flex}.icon-action{width:28px;height:28px;color:var(--text-tertiary);background:0 0;border:0;border-radius:4px;place-items:center;padding:0;display:inline-grid}.icon-action:hover{color:var(--accent-text);background:var(--accent-soft)}.icon-action.danger:hover{color:var(--danger);background:var(--danger-soft)}.status-dot{white-space:nowrap;align-items:center;gap:6px;font-size:11px;display:inline-flex}.status-dot:before{content:"";background:var(--text-tertiary);border-radius:50%;width:5px;height:5px}.status-dot.submitted{color:var(--warning)}.status-dot.submitted:before{background:var(--warning)}.status-dot.approved,.status-dot.active,.status-dot.paid,.status-dot.posted,.status-dot.completed,.status-dot.reconciled{color:var(--success)}.status-dot.approved:before,.status-dot.active:before,.status-dot.paid:before,.status-dot.posted:before,.status-dot.completed:before,.status-dot.reconciled:before{background:var(--success)}.status-dot.partial,.status-dot.running{color:var(--accent-text)}.status-dot.partial:before,.status-dot.running:before{background:var(--accent-text)}.status-dot.rejected,.status-dot.failed{color:var(--danger)}.status-dot.rejected:before,.status-dot.failed:before{background:var(--danger)}.status-dot.void,.status-dot.reversed{color:var(--text-tertiary)}.form-grid{grid-template-columns:1fr 1fr;gap:0 20px;display:grid}.span-full{grid-column:1/-1}.form-lines{margin-bottom:20px;overflow:auto}.form-line{grid-template-columns:1fr 160px 30px;align-items:center;gap:8px;min-width:320px;margin-bottom:9px;display:grid}.form-section-title{margin:5px 0 13px;font-size:13px;font-weight:600}.form-section-title .el-button{margin-left:10px}.amount-total{background:var(--success-soft);justify-content:space-between;margin:8px 0 16px;padding:14px 18px;font-size:13px;display:flex}.amount-total strong{color:var(--accent-text);font-size:19px}.detail-heading{justify-content:space-between;align-items:center;gap:12px;margin:0 0 22px;display:flex}.detail-heading h2{margin:0;font-size:20px}.detail-section{border-bottom:1px solid var(--border-subtle);padding:20px 0}.detail-section h3{margin:0 0 16px;font-size:13px}.detail-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.detail-field label{color:var(--text-tertiary);margin-bottom:7px;font-size:11px;display:block}.detail-field div{word-break:break-word;white-space:pre-wrap;font-size:13px}.attachment-row{border-bottom:1px solid var(--border-subtle);align-items:center;gap:10px;padding:10px 0;font-size:12px;display:flex}.attachment-row a{color:var(--accent-text);word-break:break-all}.attachment-row .icon-action{margin-left:auto}.file-attachment>svg{flex-shrink:0}.file-attachment .attachment-name{min-width:0;color:var(--accent-text);text-align:left;font:inherit;cursor:pointer;overflow-wrap:anywhere;background:0 0;border:0;flex:1;padding:0}.file-attachment .icon-action{flex-shrink:0;margin-left:0}.attachment-size{white-space:nowrap}@media (width<=600px){.file-attachment{gap:6px}.file-attachment .attachment-size{display:none}}.audit-line{color:var(--text-secondary);padding:9px 0;font-size:12px;line-height:1.8}.section-heading{justify-content:space-between;align-items:center;gap:12px;padding:19px 0 16px;display:flex}.section-heading h2{margin:0;font-size:15px;font-weight:600}.section-heading span{color:var(--text-tertiary);font-size:11px}.summary-strip{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface);grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:24px;display:grid}.summary-item{border-right:1px solid var(--border-subtle);min-width:0;padding:23px 23px 21px}.summary-item:last-child{border:0}.summary-label{color:var(--text-tertiary);justify-content:space-between;align-items:center;margin-bottom:17px;font-size:12px;display:flex}.summary-value{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:27px;font-weight:650;line-height:1.25}.summary-meta{color:var(--text-tertiary);margin-top:10px;font-size:11px}.charts-row{grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:26px;margin-bottom:22px;display:grid}.chart-section{min-width:0}.chart-box{background:var(--surface);border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);width:100%;height:270px;padding:12px}.quick-links{flex-wrap:wrap;gap:10px;margin-bottom:22px;display:flex}.quick-links a{color:var(--text-secondary);align-items:center;gap:8px;margin-right:20px;padding:9px 0;font-size:12px;display:flex}.quick-links a:hover{color:var(--accent-text)}.inset-empty{padding:30px 0}.report-tabs{margin-bottom:20px}.report-totals{background:var(--success-soft);flex-wrap:wrap;gap:26px;padding:18px;font-size:12px;display:flex}.report-totals strong{margin-top:8px;font-size:20px;display:block}.settings-tabs{border-bottom:1px solid var(--border);gap:22px;margin-bottom:24px;display:flex;overflow:auto}.settings-tabs a{white-space:nowrap;color:var(--text-tertiary);padding:0 0 13px;font-size:13px}.settings-tabs .router-link-active{color:var(--accent-text);border-bottom:2px solid var(--accent-text)}.settings-form{max-width:650px;padding:22px 0}.metrics-grid{background:var(--surface);border-top:1px solid var(--border);grid-template-columns:repeat(3,1fr);gap:0;display:grid}.metric{border-bottom:1px solid var(--border);padding:22px}.metric label{color:var(--text-tertiary);font-size:12px;display:block}.metric strong{margin-top:13px;font-size:23px;font-weight:550;display:block}.login-screen{background:var(--background);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:40px 22px;display:flex}.login-brand{text-align:center;margin-bottom:28px}.login-brand .brand-mark{width:52px;height:52px;margin:0 auto 18px}.login-brand h1{margin:0 0 10px;font-size:28px;font-weight:650}.login-brand p{color:var(--text-tertiary);margin:0;font-size:12px}.login-form{background:var(--surface);border:1px solid var(--border);border-radius:8px;width:380px;max-width:100%;padding:30px}.login-form h2{margin:0 0 25px;font-size:18px;font-weight:600}.login-submit{width:100%;margin-top:6px}.login-footer{color:var(--text-tertiary);gap:7px;margin-top:30px;font-size:11px;display:flex}.boot-screen{max-width:350px;color:var(--accent-text);gap:20px;margin:25vh auto;padding:25px;display:grid}.mobile-toggle{display:none!important}.sidebar-backdrop{display:none}.empty-actions{justify-content:center;gap:8px;display:flex}@media (width>=1800px){.workspace{padding-left:45px;padding-right:45px}.summary-value{font-size:30px}}@media (width<=1100px){.app-shell{--side-width:208px}.topbar{padding:0 20px}.workspace{padding:24px 20px}.summary-item{padding:20px 16px}.summary-value{font-size:24px}.book-label{display:none}.charts-row{gap:18px}.filter-count{display:none}.summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.summary-item:nth-child(2){border-right:0}.summary-item:nth-child(-n+2){border-bottom:1px solid var(--border-subtle)}}@media (width<=760px){.app-shell,.app-shell.collapsed{--side-width:0px}.sidebar{width:232px;transition:transform .18s;transform:translate(-100%)}.sidebar.mobile-open{transform:translate(0)}.collapsed .sidebar .nav-link span,.collapsed .sidebar .nav-group-title{display:initial}.collapsed .sidebar .nav-link{justify-content:flex-start;padding:0 14px}.sidebar-backdrop{background:var(--scrim);z-index:29;display:block;position:fixed;inset:0}.mobile-toggle{margin-right:3px;padding:3px!important;display:inline-flex!important}.topbar{gap:8px;height:60px;padding:0 14px}.breadcrumbs{flex:1;gap:5px;font-size:11px}.breadcrumbs>span,.breadcrumbs>svg{display:none}.topbar-right{gap:5px}.user-info{display:none}.workspace{min-height:calc(100vh - 100px);padding:21px 14px}.workspace-footer{padding:0 14px}.page-header{flex-wrap:wrap;gap:12px;margin-bottom:18px}.page-title{font-size:21px}.page-actions{gap:6px}.page-actions .el-button{padding:8px 10px;font-size:12px}.summary-item{padding:18px 14px}.summary-value{font-size:22px}.summary-label{margin-bottom:12px;font-size:11px}.summary-meta{font-size:10px}.charts-row{grid-template-columns:1fr}.chart-box{height:245px}.filterbar{gap:8px;padding:12px}.filter-search{width:100%}.filter-status{width:120px}.filterbar .el-date-editor{width:calc(100% - 128px)}.form-grid{grid-template-columns:1fr}.form-line{grid-template-columns:1fr 115px 28px}.detail-grid{gap:17px 12px}.el-dialog{margin-top:6vh;padding:20px}.metrics-grid{grid-template-columns:repeat(2,1fr)}.metric strong{font-size:20px}.pagination{padding:12px 8px}.el-pagination .el-pagination__sizes{display:none}.quick-links{gap:3px}.quick-links a{margin-right:13px}.settings-tabs{gap:20px}.section-heading{padding-top:13px}.collapse-button{display:none!important}}.management-chart{background:var(--surface);width:100%;height:300px}.boss-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.metric>a{color:var(--success);align-items:center;gap:4px;font-size:13px;display:inline-flex}.metric>span{color:var(--text-secondary);font-size:12px;line-height:1.6;display:block}.management-tabs{margin-top:28px}.operating-grid{grid-template-columns:repeat(4,minmax(0,1fr));max-width:960px}.category-editor{max-width:520px}.form-lines .form-line{border-bottom:1px solid var(--border-subtle);grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-bottom:15px}.form-lines .form-line .el-date-editor{width:100%;min-width:0}.person-photos{flex-wrap:wrap;gap:12px;margin:16px 0;display:flex}.person-photos img{object-fit:contain;background:var(--surface-secondary);width:100px;height:125px}@media (width<=760px){.boss-metrics,.operating-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}:root{--font-system:-apple-system, BlinkMacSystemFont, "PingFang SC", "Helvetica Neue", "Microsoft YaHei", system-ui, sans-serif;--background:#f5f5f7;--surface:#fff;--surface-secondary:#f0f0f3;--surface-hover:#e9e9ed;--chrome:#f5f5f7e0;--toolbar:#ffffffe0;--text:#1d1d1f;--text-secondary:#606066;--text-tertiary:#6e6e75;--text-disabled:#9a9aa1;--border:#d4d4da;--border-subtle:#e5e5ea;--accent:#007aff;--action:#006adc;--accent-text:#0064d1;--accent-soft:#e6f0ff;--success:#218345;--success-soft:#e9f5ec;--warning:#986300;--warning-soft:#fff4db;--danger:#c7332d;--danger-soft:#ffedeb;--chart-expense:#5570be;--scrim:#00000052;--shadow-popover:0 8px 28px #0000001f, 0 1px 4px #0000000d;--shadow-dialog:0 24px 80px #0003, 0 0 0 1px var(--border-subtle);--radius:6px;--radius-panel:8px;--control-height:34px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px}:root[data-theme=dark]{--background:#161618;--surface:#1c1c1e;--surface-secondary:#2c2c2e;--surface-hover:#363639;--chrome:#1c1c1eeb;--toolbar:#232325e6;--text:#f5f5f7;--text-secondary:#c3c3ca;--text-tertiary:#a0a0a9;--text-disabled:#717179;--border:#48484e;--border-subtle:#343438;--accent:#0a84ff;--action:#006fdf;--accent-text:#6ab4ff;--accent-soft:#163454;--success:#68d58a;--success-soft:#173923;--warning:#f2c15b;--warning-soft:#3d311c;--danger:#ff8580;--danger-soft:#442422;--chart-expense:#a3b3fa;--scrim:#00000094;--shadow-popover:0 8px 28px #00000061, 0 0 0 1px var(--border);--shadow-dialog:0 24px 80px #0000008c, 0 0 0 1px var(--border)}:root,:root.dark{--el-color-white:#fff;--el-color-black:#000;--el-color-primary:var(--accent);--el-color-primary-light-3:color-mix(in srgb, var(--accent) 72%, var(--surface));--el-color-primary-light-5:color-mix(in srgb, var(--accent) 50%, var(--surface));--el-color-primary-light-7:color-mix(in srgb, var(--accent) 28%, var(--surface));--el-color-primary-light-8:color-mix(in srgb, var(--accent) 18%, var(--surface));--el-color-primary-light-9:var(--accent-soft);--el-color-primary-dark-2:color-mix(in srgb, var(--accent) 80%, #000);--el-color-success:var(--success);--el-color-success-light-3:var(--success);--el-color-success-light-5:color-mix(in srgb, var(--success) 50%, var(--surface));--el-color-success-light-7:color-mix(in srgb, var(--success) 25%, var(--surface));--el-color-success-light-8:var(--success-soft);--el-color-success-light-9:var(--success-soft);--el-color-success-dark-2:var(--success);--el-color-warning:var(--warning);--el-color-warning-light-3:var(--warning);--el-color-warning-light-5:color-mix(in srgb, var(--warning) 50%, var(--surface));--el-color-warning-light-7:color-mix(in srgb, var(--warning) 25%, var(--surface));--el-color-warning-light-8:var(--warning-soft);--el-color-warning-light-9:var(--warning-soft);--el-color-warning-dark-2:var(--warning);--el-color-danger:var(--danger);--el-color-danger-light-3:var(--danger);--el-color-danger-light-5:color-mix(in srgb, var(--danger) 50%, var(--surface));--el-color-danger-light-7:color-mix(in srgb, var(--danger) 25%, var(--surface));--el-color-danger-light-8:var(--danger-soft);--el-color-danger-light-9:var(--danger-soft);--el-color-danger-dark-2:var(--danger);--el-color-error:var(--danger);--el-color-error-light-9:var(--danger-soft);--el-color-info:var(--text-secondary);--el-color-info-light-3:var(--text-tertiary);--el-color-info-light-5:var(--border);--el-color-info-light-7:var(--border-subtle);--el-color-info-light-8:var(--surface-secondary);--el-color-info-light-9:var(--surface-secondary);--el-color-info-dark-2:var(--text);--el-text-color-primary:var(--text);--el-text-color-regular:var(--text-secondary);--el-text-color-secondary:var(--text-tertiary);--el-text-color-placeholder:var(--text-tertiary);--el-text-color-disabled:var(--text-disabled);--el-border-color:var(--border);--el-border-color-light:var(--border-subtle);--el-border-color-lighter:var(--border-subtle);--el-border-color-extra-light:var(--border-subtle);--el-border-color-dark:var(--border);--el-border-color-darker:var(--text-tertiary);--el-fill-color:var(--surface-secondary);--el-fill-color-light:var(--surface-secondary);--el-fill-color-lighter:var(--background);--el-fill-color-extra-light:var(--background);--el-fill-color-dark:var(--surface-hover);--el-fill-color-darker:var(--border);--el-fill-color-blank:var(--surface);--el-bg-color:var(--surface);--el-bg-color-page:var(--background);--el-bg-color-overlay:var(--surface);--el-mask-color:color-mix(in srgb, var(--surface) 85%, transparent);--el-mask-color-extra-light:color-mix(in srgb, var(--surface) 65%, transparent);--el-overlay-color:var(--scrim);--el-overlay-color-light:var(--scrim);--el-overlay-color-lighter:var(--scrim);--el-disabled-bg-color:var(--surface-secondary);--el-disabled-text-color:var(--text-disabled);--el-disabled-border-color:var(--border-subtle);--el-box-shadow:var(--shadow-popover);--el-box-shadow-light:var(--shadow-popover);--el-box-shadow-lighter:var(--shadow-popover);--el-box-shadow-dark:var(--shadow-dialog);--el-border-radius-base:var(--radius);--el-font-family:var(--font-system);--el-font-size-base:13px;--el-component-size:var(--control-height)}html{background:var(--background);color:var(--text);-webkit-font-smoothing:antialiased;font-optical-sizing:auto;font-size:14px}body{min-width:280px}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button,a{transition:background-color .12s,color .12s,box-shadow .12s}button:active:not(:disabled){filter:brightness(.94)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}::selection{background:var(--accent-soft);color:var(--text)}*{scrollbar-width:thin;scrollbar-color:var(--border) transparent}.sidebar{background:var(--chrome);-webkit-backdrop-filter:blur(18px)saturate(130%);backdrop-filter:blur(18px)saturate(130%)}.brand{gap:10px;height:80px;padding:18px}.brand-mark{border:1px solid var(--border-subtle);background:#fff;overflow:hidden}.brand-mark img{object-fit:contain;width:100%;height:100%;display:block}.brand strong{font-size:18px;font-weight:650}.brand span{margin-top:3px;font-size:11px}.nav-link{border-radius:var(--radius);height:36px;color:var(--text-secondary);gap:10px;padding:0 11px}.nav-link.selected{background:var(--accent-soft);color:var(--accent-text)}.nav-group{margin-top:20px}.nav-group-title{padding:0 11px;font-size:11px;font-weight:600}.nav-link svg{stroke-width:1.8px;width:17px;height:17px}.sidebar-bottom{font-size:11px}.topbar{z-index:25;background:var(--toolbar);-webkit-backdrop-filter:blur(16px)saturate(120%);backdrop-filter:blur(16px)saturate(120%);height:62px;position:sticky;top:0}.breadcrumbs{flex:1;overflow:hidden}.breadcrumbs>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.breadcrumbs strong{color:var(--text);text-overflow:ellipsis;font-weight:600;overflow:hidden}.topbar-right{flex-shrink:0;gap:12px}.book-label{display:none}.topbar-right>.el-button{width:34px;height:34px;margin:0;padding:0}.toolbar-icon{border-radius:var(--radius);width:34px;height:34px;color:var(--text-secondary);background:0 0;border:0;place-items:center;padding:0;display:inline-grid}.toolbar-icon:hover{background:var(--surface-hover);color:var(--text)}.theme-menu{min-width:176px}.theme-menu .el-dropdown-menu__item{gap:8px;min-height:36px}.theme-menu .el-dropdown-menu__item svg{margin:0}.theme-menu .theme-selected{color:var(--accent-text);background:var(--accent-soft)}.theme-menu .theme-check{margin-left:auto!important}.user-menu{border-radius:var(--radius);min-height:38px;padding:3px}.user-menu:hover{background:var(--surface-hover)}.user-avatar{background:var(--surface-secondary);color:var(--text-secondary);border:1px solid var(--border);font-weight:600}.user-info strong{text-overflow:ellipsis;white-space:nowrap;max-width:120px;font-size:13px;overflow:hidden}.user-info span{font-size:11px}.workspace{min-height:calc(100dvh - 104px);padding:24px 28px 32px}.workspace>*,.page-header>*,.form-grid>*,.detail-grid>*,.metric{min-width:0}.page-title{font-size:22px;line-height:1.4}.page-subtitle{line-height:1.6}.page-header{margin-bottom:20px}.data-section{border-color:var(--border-subtle)}.filterbar{background:var(--surface);gap:8px;padding:12px 16px}.filterbar>.el-input{width:260px;max-width:100%}.filterbar>.el-select{width:165px;max-width:100%}.summary-strip{border-color:var(--border-subtle);margin-bottom:20px}.summary-item{padding:20px}.summary-label{color:var(--text-secondary);margin-bottom:12px}.summary-value{font-size:26px}.summary-meta{color:var(--text-tertiary);line-height:1.6}.summary-value,.amount,.amount-total strong,.metric strong,.report-totals strong,.el-table .cell,.el-descriptions__content{font-variant-numeric:tabular-nums}.amount{text-align:right;display:inline-block}.metric{padding:20px}.metric strong{overflow-wrap:anywhere;font-size:24px;line-height:1.4}.metric label{color:var(--text-secondary)}.metric>a{color:var(--accent-text)}.section-heading span{font-size:12px}.positive{color:var(--success)}.negative{color:var(--danger)}.status-dot{font-size:12px}.status-dot:before{width:6px;height:6px}.icon-action{border-radius:var(--radius);width:30px;height:30px}.el-button{font-weight:500}.el-button+.el-button{margin-left:8px}.el-button--primary{--el-button-text-color:#fff;--el-button-hover-text-color:#fff;--el-button-active-text-color:#fff}.el-button--primary:not(.is-plain):not(.is-text):not(.is-link){--el-button-bg-color:var(--action);--el-button-border-color:var(--action);--el-button-hover-bg-color:#005dbd;--el-button-hover-border-color:#005dbd;--el-button-active-bg-color:#0054aa;--el-button-active-border-color:#0054aa}.el-button--primary.is-plain{--el-button-text-color:var(--accent-text)}.el-button--primary.is-text,.el-button--primary.is-link{--el-button-text-color:var(--accent-text);--el-button-hover-text-color:var(--accent-text)}.el-button--success:not(.is-plain):not(.is-text):not(.is-link),.el-button--warning:not(.is-plain):not(.is-text):not(.is-link),.el-button--danger:not(.is-plain):not(.is-text):not(.is-link){--el-button-text-color:var(--surface);--el-button-hover-text-color:var(--surface)}.el-input__wrapper,.el-select__wrapper,.el-textarea__inner{transition:box-shadow .12s,background-color .12s}.el-form-item{margin-bottom:20px}.el-form-item__label{color:var(--text);font-size:13px;line-height:1.5}.el-form-item__error{line-height:1.5;position:static}.el-table{--el-table-header-bg-color:var(--surface-secondary);--el-table-header-text-color:var(--text-secondary);--el-table-row-hover-bg-color:var(--accent-soft);--el-table-border-color:var(--border-subtle);color:var(--text)}.el-table th.el-table__cell{height:40px;font-weight:600}.el-table .el-table__cell{padding:10px 0}.el-table .cell{line-height:1.6}.el-tag{border-radius:4px}.el-tag--primary{--el-tag-text-color:var(--accent-text)}.el-badge__content{color:var(--surface)}.el-tabs__item{font-size:13px}.el-tabs__item.is-active{color:var(--accent-text)}.el-tabs__nav-wrap:after{height:1px}.el-dialog,.el-message-box{border-radius:var(--radius-panel);box-shadow:var(--shadow-dialog)}.el-dialog{padding:22px}.el-dialog__header{padding-bottom:20px;padding-right:28px}.el-dialog__title{font-size:18px;line-height:1.5}.el-dialog__body{color:var(--text);overflow-wrap:anywhere}.el-dialog__footer{flex-wrap:wrap;justify-content:flex-end;gap:8px;padding-top:20px;display:flex}.el-dialog__footer .el-button+.el-button{margin-left:0}.el-message-box{max-width:calc(100vw - 24px)}.el-drawer__header{color:var(--text);padding:20px}.el-drawer__title{font-size:18px;font-weight:600}.el-drawer__body{color:var(--text);padding:20px}.el-popper.is-light{border-color:var(--border)}.el-popper.is-dark{background:var(--text);color:var(--surface);border-color:var(--text)}.el-popper.is-dark>.el-popper__arrow:before{background:var(--text);border-color:var(--text)}.el-dropdown-menu{padding:5px}.el-dropdown-menu__item{border-radius:4px}.el-alert{--el-alert-title-font-size:13px;line-height:1.65}.el-empty{--el-empty-fill-color-0:var(--surface);--el-empty-fill-color-1:var(--surface-secondary);--el-empty-fill-color-2:var(--border-subtle);--el-empty-fill-color-3:var(--surface-secondary);--el-empty-fill-color-4:var(--border);--el-empty-fill-color-5:var(--surface-hover);--el-empty-fill-color-6:var(--border-subtle);--el-empty-fill-color-7:var(--surface-secondary);--el-empty-fill-color-8:var(--border);--el-empty-fill-color-9:var(--border-subtle)}.el-skeleton{--el-skeleton-color:var(--surface-secondary);--el-skeleton-to-color:var(--surface-hover)}.el-date-picker,.el-picker-panel{max-width:calc(100vw - 20px)}.el-date-picker .el-picker-panel__content{max-width:calc(100% - 24px);margin:12px}.el-picker-panel__icon-btn{color:var(--text-secondary)}.el-date-range-picker__time-picker-wrap .el-picker-panel{background:var(--surface)}.el-date-picker,.el-date-range-picker{--el-datepicker-inrange-bg-color:var(--accent-soft);--el-datepicker-inrange-hover-bg-color:var(--accent-soft);--el-datepicker-hover-text-color:var(--accent-text)}.el-date-table td.current:not(.disabled) .el-date-table-cell__text,.el-date-table td.start-date .el-date-table-cell__text,.el-date-table td.end-date .el-date-table-cell__text{color:#fff}.el-date-table td.today .el-date-table-cell__text{color:var(--accent-text)}.el-select-dropdown{max-width:calc(100vw - 24px)}.el-select-dropdown__item{text-overflow:ellipsis}.el-descriptions__table{table-layout:fixed}.el-descriptions__cell{overflow-wrap:anywhere}.detail-heading{flex-wrap:wrap}.detail-heading h2{overflow-wrap:anywhere}.detail-heading>div{flex-wrap:wrap;gap:6px;display:flex}.login-screen{background:var(--background);min-height:100dvh;padding:72px 24px 36px;position:relative}.login-appearance{position:absolute;top:20px;right:24px}.login-brand{margin-bottom:28px}.login-brand .brand-mark{border-radius:8px;width:72px;height:72px;margin-bottom:20px}.login-brand h1{margin-bottom:8px;font-size:26px;line-height:1.4}.login-brand p{font-size:13px}.login-form{background:0 0;border:0;border-radius:0;width:340px;padding:0}.login-form h2{text-align:center;color:var(--text-secondary);margin:0 0 22px;font-size:16px}.login-form .el-input__wrapper{min-height:42px}.login-form .el-form-item{margin-bottom:18px}.login-form .login-submit{height:42px;margin-top:6px}.login-form .login-back{width:100%;margin:12px 0 0}.login-totp-account{text-align:center;color:var(--text-secondary);overflow-wrap:anywhere;margin:-10px 0 20px;font-size:13px}.login-form .totp-input input{text-align:center;font-variant-numeric:tabular-nums;font-size:22px}.login-footer{margin-top:28px;font-size:12px}.boot-screen img{border-radius:8px;width:48px;height:48px}.fc{--fc-page-bg-color:var(--surface);--fc-neutral-bg-color:var(--surface-secondary);--fc-neutral-text-color:var(--text-secondary);--fc-border-color:var(--border-subtle);--fc-now-indicator-color:var(--danger);--fc-highlight-color:var(--accent-soft);--fc-more-link-bg-color:var(--surface-secondary);--fc-more-link-text-color:var(--text);--fc-list-event-hover-bg-color:var(--surface-hover);--fc-non-business-color:var(--background)}.schedule-calendar{background:var(--surface)}.schedule-calendar .fc-theme-standard .fc-popover{background:var(--surface);border-color:var(--border);box-shadow:var(--shadow-popover)}.schedule-calendar .fc-popover-header{background:var(--surface-secondary);color:var(--text)}.schedule-calendar .fc-col-header{background:var(--surface-secondary)}.schedule-calendar .fc-day-today .fc-daygrid-day-number{color:var(--accent-text);font-weight:700}.schedule-calendar .fc-day-other .fc-daygrid-day-top{opacity:1;color:var(--text-tertiary)}.schedule-calendar .fc-event{border-left:3px solid var(--event-text);border-radius:4px}.schedule-kind-long{--event-background:var(--success-soft);--event-text:var(--success)}.schedule-kind-timed{--event-background:var(--accent-soft);--event-text:var(--accent-text)}.schedule-calendar .schedule-state-completed{--event-background:var(--surface-secondary);--event-text:var(--text-secondary);opacity:1}.schedule-calendar .schedule-state-cancelled{--event-background:var(--danger-soft);--event-text:var(--danger);opacity:1}.schedule-calendar .fc-list-event-dot{border-color:var(--event-text)}.schedule-page .schedule-legend .long{background:var(--success)}.schedule-page .schedule-legend .timed{background:var(--accent)}.schedule-calendar .fc-list-day-cushion{color:var(--text-secondary)}.el-segmented{--el-segmented-bg-color:var(--surface-secondary);--el-segmented-item-selected-bg-color:var(--surface);--el-segmented-item-selected-color:var(--text);--el-segmented-item-hover-bg-color:var(--surface-hover);border:1px solid var(--border-subtle);padding:3px}.el-segmented__item-selected{box-shadow:0 1px 3px #0002}@media (width>=1101px){.metrics-grid:has(>.metric:nth-child(4):last-child){grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=1100px){.topbar-right{gap:8px}}@media (width<=760px){.topbar{gap:6px;height:58px;padding:0 12px}.topbar-right{gap:3px}.topbar-right>.el-button,.toolbar-icon{width:32px;height:34px}.breadcrumbs{font-size:12px}.user-avatar{width:30px;height:30px}.workspace{padding:20px 12px 28px}.page-title{font-size:20px}.page-actions{width:100%}.page-subtitle{overflow-wrap:anywhere}.summary-item{padding:16px 12px}.summary-value{font-size:22px}.metric{padding:16px 12px}.metric strong{font-size:21px}.metric label{font-size:12px}.filterbar{padding:10px}.filterbar>.el-input{width:100%}.filterbar>.el-select{flex:120px}.filterbar .el-date-editor{flex-basis:100%;width:100%}.el-dialog{max-width:calc(100% - 20px);margin-top:4dvh;padding:16px}.el-dialog__header{padding-bottom:16px}.el-drawer__body,.el-drawer__header{padding:16px}.el-date-range-picker{width:322px;max-width:calc(100vw - 20px)}.el-date-range-picker__content{float:none;width:100%;padding:10px;display:block}.el-date-range-picker .el-picker-panel__body,.el-date-range-picker.single-panel .el-picker-panel__body{width:100%;min-width:0}.el-date-range-picker.single-panel .el-picker-panel__content{width:auto;margin:10px}.el-date-picker .el-picker-panel__body{width:100%}.el-date-range-picker__content.is-left{border-right:0;border-bottom:1px solid var(--border-subtle)}.el-date-range-picker__time-header{flex-direction:column;gap:6px;display:flex}.el-date-range-picker__time-header>.el-date-range-picker__editors-wrap{width:100%}.el-date-range-picker__time-header>.el-icon{display:none}.el-picker-panel{max-height:82dvh;overflow:auto}.el-date-range-picker.has-sidebar{width:calc(100vw - 20px)}.el-picker-panel__sidebar{width:76px}.el-picker-panel__sidebar+.el-picker-panel__body{margin-left:76px}.el-date-table td{padding:2px 0}.el-pagination .el-pagination__jump{display:none}.detail-grid{grid-template-columns:1fr}.el-message-box__btns{flex-wrap:wrap;gap:6px}.form-grid,.form-lines .form-line{grid-template-columns:minmax(0,1fr)}.form-lines .form-line{min-width:0}}@media (width<=360px){.breadcrumbs strong{max-width:98px}.workspace,.workspace-footer{padding-inline:10px}.summary-value,.metric strong{font-size:19px}.login-screen{padding-inline:20px}.el-dialog__title{font-size:17px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (prefers-reduced-transparency:reduce){.sidebar,.topbar{background:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none}}@media (prefers-contrast:more){:root{--text-secondary:var(--text);--text-tertiary:var(--text);--border-subtle:var(--border)}.sidebar,.topbar{background:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none}button{border-color:var(--text-secondary)}}
