*{margin:0;padding:0;box-sizing:border-box}body,html{min-height:100%;font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app,body,html{width:100%;background-color:#f0f2f5}#app{min-height:100vh}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a8a8a8}::-webkit-scrollbar-track{background:#f1f1f1}:root{--ruoyi-primary:#409eff;--ruoyi-primary-hover:#66b1ff;--ruoyi-primary-active:#337ecc;--ruoyi-primary-tag-bg:rgba(64,158,255,.1);--ruoyi-primary-tag-border:rgba(64,158,255,.25)}.el-button--primary{background-color:var(--ruoyi-primary)!important;border-color:var(--ruoyi-primary)!important}.el-button--primary:focus,.el-button--primary:hover{background-color:var(--ruoyi-primary-hover)!important;border-color:var(--ruoyi-primary-hover)!important}.el-button--primary:active{background-color:var(--ruoyi-primary-active)!important;border-color:var(--ruoyi-primary-active)!important}.el-button--text{color:var(--ruoyi-primary)}.el-button--text:focus,.el-button--text:hover{color:var(--ruoyi-primary-hover)}.el-checkbox__input.is-checked .el-checkbox__inner{background-color:var(--ruoyi-primary);border-color:var(--ruoyi-primary)}.el-checkbox__input.is-checked+.el-checkbox__label{color:var(--ruoyi-primary)}.el-input__inner:focus{border-color:var(--ruoyi-primary)}.el-pagination.is-background .el-pager li:not(.disabled).active{background-color:var(--ruoyi-primary)}.el-tag--primary{background-color:var(--ruoyi-primary-tag-bg);border-color:var(--ruoyi-primary-tag-border)}.el-link--primary,.el-tag--primary{color:var(--ruoyi-primary)}.el-link--primary:hover{color:var(--ruoyi-primary-hover)}html.theme-dark .layout-main-container{background:#0f0f0f!important}html.theme-dark .layout-content{background:#141414!important;color:#d0d0d0}html.theme-dark .layout-navbar{border-bottom:1px solid #2a2a2a}html.theme-dark .tags-view-container{background:#1a1a1a!important;border-color:#333!important}html.theme-dark .tags-view-item{background:#252525!important;border-color:#3a3a3a!important;color:#bbb!important}html.theme-dark .tags-view-item.active{color:#fff!important}html.theme-dark .app-container,html.theme-dark .dashboard-container,html.theme-dark .order-container{background:#1e1e1e!important;color:#d5d5d5;box-shadow:none}html.theme-dark .el-card{background:#1e1e1e;border-color:#333;color:#ccc}html.theme-dark .el-table{background:#1a1a1a;color:#ccc}html.theme-dark .el-table th,html.theme-dark .el-table tr{background:#1a1a1a}html.theme-dark .el-table--striped .el-table__body tr.el-table__row--striped td{background:#222}html.grey-mode #app{filter:grayscale(1)}.app-breadcrumb[data-v-62e27201]{display:inline-block;font-size:14px;line-height:50px;margin-left:8px}.app-breadcrumb[data-v-62e27201] .el-breadcrumb__separator{margin:0 9px;font-weight:400;color:#c0c4cc}.bc-icon[data-v-62e27201]{margin-right:4px;font-size:14px;vertical-align:-1px}.breadcrumb-link[data-v-62e27201]{color:#606266;cursor:pointer}.breadcrumb-link[data-v-62e27201]:hover{color:var(--ruoyi-primary,#409eff)}.no-redirect[data-v-62e27201]{color:#97a8be;cursor:text}.breadcrumb-enter-active[data-v-62e27201],.breadcrumb-leave-active[data-v-62e27201]{transition:all .2s}.breadcrumb-enter[data-v-62e27201],.breadcrumb-leave-active[data-v-62e27201]{opacity:0;transform:translateX(8px)}.breadcrumb-leave-active[data-v-62e27201]{position:absolute}.tags-view-container[data-v-7cda2f88]{height:34px;width:100%;background:#fff;border-bottom:1px solid #d8dce5;box-shadow:0 1px 3px 0 rgba(0,0,0,.12),0 0 3px 0 rgba(0,0,0,.04)}.tags-view-container.is-immersion[data-v-7cda2f88]{background:transparent;border-bottom-color:transparent;box-shadow:none}.tags-view-wrapper[data-v-7cda2f88]{height:34px;width:100%;overflow-x:auto;overflow-y:hidden;white-space:nowrap}.tags-view-wrapper[data-v-7cda2f88]::-webkit-scrollbar{height:4px}.tags-view-wrapper[data-v-7cda2f88]::-webkit-scrollbar-thumb{background:#dcdfe6;border-radius:2px}.tag-icon[data-v-7cda2f88]{margin-right:4px;font-size:12px;vertical-align:-1px}.tags-view-item[data-v-7cda2f88]{display:inline-block;position:relative;cursor:pointer;height:26px;line-height:26px;border:1px solid #d8dce5;color:#495060;background:#fff;padding:0 8px;font-size:12px;margin-left:5px;margin-top:4px;border-radius:3px}.tags-view-item[data-v-7cda2f88]:first-of-type{margin-left:15px}.tags-view-item[data-v-7cda2f88]:last-of-type{margin-right:15px}.tags-view-item.active[data-v-7cda2f88]{background-color:var(--ruoyi-primary,#409eff);color:#fff;border-color:var(--ruoyi-primary,#409eff)}.tags-view-item.active[data-v-7cda2f88]:not(.has-tab-icon):before{content:"";background:#fff;display:inline-block;width:8px;height:8px;border-radius:50%;position:relative;margin-right:4px}.is-immersion .tags-view-item[data-v-7cda2f88]{background:hsla(0,0%,100%,.65)}.el-icon-close[data-v-7cda2f88]{width:16px;height:16px;vertical-align:2px;border-radius:50%;text-align:center;transition:all .3s cubic-bezier(.645,.045,.355,1);margin-left:2px}.el-icon-close[data-v-7cda2f88]:before{transform:scale(.6);display:inline-block;vertical-align:-1px}.el-icon-close[data-v-7cda2f88]:hover{background-color:rgba(0,0,0,.16);color:#fff}.tags-view-item.active .el-icon-close[data-v-7cda2f88]:hover{background-color:hsla(0,0%,100%,.3);color:#fff}.navbar-toolbar[data-v-3c1a4199]{display:flex;align-items:center;flex-shrink:0}.toolbar-item[data-v-3c1a4199]{display:flex;align-items:center;justify-content:center;width:40px;height:50px;cursor:pointer;color:#5a5e66}.toolbar-item i[data-v-3c1a4199]{font-size:18px}.toolbar-item[data-v-3c1a4199]:hover{color:#409eff}.badge-wrap[data-v-3c1a4199]{padding-top:2px}.toolbar-badge[data-v-3c1a4199] .el-badge__content{transform:translate(4px,-2px)}.toolbar-user[data-v-3c1a4199]{display:flex;align-items:center;cursor:pointer;padding:0 4px 0 12px;height:50px}.toolbar-user .user-name[data-v-3c1a4199]{margin:0 6px 0 8px;font-size:14px;color:#606266;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toolbar-user .el-icon-arrow-down[data-v-3c1a4199]{font-size:12px;color:#909399}.toolbar-user[data-v-3c1a4199]:hover{background:#f5f7fa;border-radius:4px}.notice-dropdown[data-v-3c1a4199]{min-width:240px;padding:0}.notice-head[data-v-3c1a4199]{padding:10px 16px;font-size:13px;font-weight:600;color:#303133;border-bottom:1px solid #ebeef5}.notice-empty[data-v-3c1a4199]{padding:24px 16px;text-align:center;color:#909399;font-size:13px}.is-read[data-v-3c1a4199]{color:#c0c4cc}.layout-main-container[data-v-5be5bdf4]{display:flex;flex-direction:column;overflow:hidden;background:#f0f2f5;flex:1;min-width:0}.fixed-header[data-v-5be5bdf4]{flex-shrink:0;z-index:9}.layout-navbar[data-v-5be5bdf4]{padding:0!important;height:50px!important}.navbar-row[data-v-5be5bdf4]{display:flex;align-items:center;width:100%;height:50px;padding:0 8px 0 8px}.navbar-left[data-v-5be5bdf4]{display:flex;align-items:center;flex:1;min-width:0}.navbar-right[data-v-5be5bdf4]{flex-shrink:0}.hamburger[data-v-5be5bdf4]{font-size:20px;cursor:pointer;line-height:50px;padding:0 8px;opacity:.85}.hamburger[data-v-5be5bdf4]:hover{opacity:1;color:var(--ruoyi-primary,#409eff)}.layout-content[data-v-5be5bdf4]{flex:1;overflow-y:auto;padding:15px;background:#f0f2f5;min-height:calc(100vh - 84px)}.layout-content.no-tags[data-v-5be5bdf4]{min-height:calc(100vh - 50px)}.layout-footer[data-v-5be5bdf4]{flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:12px;color:#909399;background:#fff;border-top:1px solid #ebeef5}.fade-transform-enter-active[data-v-5be5bdf4],.fade-transform-leave-active[data-v-5be5bdf4]{transition:all .2s}.fade-transform-enter[data-v-5be5bdf4]{opacity:0;transform:translateX(-10px)}.fade-transform-leave-to[data-v-5be5bdf4]{opacity:0;transform:translateX(10px)}.right-setting[data-v-412dd39e]{position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:2000}.setting-trigger[data-v-412dd39e]{width:40px;height:40px;background:var(--ruoyi-primary,#409eff);color:#fff;border-radius:6px 0 0 6px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:-2px 0 8px rgba(0,0,0,.12)}.setting-trigger i[data-v-412dd39e]{font-size:20px}.setting-trigger[data-v-412dd39e]:hover{filter:brightness(1.06)}.setting-body[data-v-412dd39e]{padding:0 20px 24px}.section-title[data-v-412dd39e]{margin:18px 0 8px;font-size:14px;font-weight:600;color:#303133}.section-title[data-v-412dd39e]:first-of-type{margin-top:0}.section-desc[data-v-412dd39e]{margin:0 0 12px;font-size:12px;color:#909399;line-height:1.5}.layout-modes[data-v-412dd39e]{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:4px}.layout-thumb[data-v-412dd39e]{width:52px;height:40px;border:2px solid #e4e7ed;border-radius:4px;padding:4px;cursor:pointer;background:#fafafa}.layout-thumb.active[data-v-412dd39e]{border-color:var(--ruoyi-primary,#409eff);box-shadow:0 0 0 1px var(--ruoyi-primary,#409eff)}.thumb-inner[data-v-412dd39e]{display:block;width:100%;height:100%;background:#e4e7ed;border-radius:2px;position:relative;overflow:hidden}.thumb-m0[data-v-412dd39e]{background:#dcdfe6;box-shadow:inset 0 0 0 10px #c0c4cc,inset 12px 0 0 #909399}.thumb-m1[data-v-412dd39e]{background:#909399;box-shadow:inset 0 0 0 6px #606266,inset 0 8px 0 #c0c4cc,inset 10px 8px 0 #dcdfe6}.thumb-m2[data-v-412dd39e]{background:#c0c4cc;box-shadow:inset 0 0 0 6px #909399,inset 0 10px 0 #606266}.thumb-m3[data-v-412dd39e]{background:#dcdfe6;box-shadow:inset 0 0 0 5px #909399,inset 0 8px 0 #c0c4cc,inset 10px 8px 0 #606266}.swatch-row[data-v-412dd39e]{display:flex;flex-wrap:wrap;gap:8px}.swatch[data-v-412dd39e]{width:26px;height:26px;border:none;border-radius:4px;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.06)}.swatch.active[data-v-412dd39e]{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--ruoyi-primary,#409eff)}.swatch-ring[data-v-412dd39e]{border:2px solid transparent}.swatch-check[data-v-412dd39e]{color:#fff;text-shadow:0 0 2px rgba(0,0,0,.5);font-size:12px}.setting-row[data-v-412dd39e]{display:flex;align-items:center;justify-content:space-between;font-size:13px;color:#606266;margin-bottom:10px}.drawer-footer-btns[data-v-412dd39e]{margin-top:20px;display:flex;gap:10px;flex-wrap:wrap}.watermark-layer[data-v-e42a8e06]{position:fixed;inset:0;pointer-events:none;z-index:9998;overflow:hidden}.watermark-inner[data-v-e42a8e06]{display:flex;flex-wrap:wrap;width:220%;transform:rotate(-16deg) translate(-12%,-18%);opacity:.07;font-size:15px;font-weight:500;color:#000;-webkit-user-select:none;-moz-user-select:none;user-select:none}.wm-item[data-v-e42a8e06]{margin:40px 56px;white-space:nowrap}.layout-container[data-v-7853964c]{width:100%;height:100vh;overflow:hidden}.layout-vertical-fill[data-v-7853964c]{height:100vh}.layout-container.is-head-fixed .fixed-header[data-v-7853964c]{position:sticky;top:0;z-index:99}.layout-below-top[data-v-7853964c]{flex:1;min-height:0;overflow:hidden}.layout-top-banner[data-v-7853964c]{padding:0!important;flex-shrink:0}.top-banner-row[data-v-7853964c]{display:flex;align-items:center;height:50px;padding:0 4px 0 8px;min-width:0}.top-logo[data-v-7853964c]{display:flex;align-items:center;cursor:pointer;flex-shrink:0;margin-right:12px}.top-logo .logo-text[data-v-7853964c]{margin-left:0;font-size:14px;font-weight:600;white-space:nowrap}.top-horizontal-menu[data-v-7853964c]{flex:1;min-width:0;border-bottom:none!important;overflow-x:auto;overflow-y:hidden}.top-horizontal-menu[data-v-7853964c] .el-menu-item{height:50px!important;line-height:50px!important;border-bottom:none!important;background-color:transparent!important}.top-horizontal-menu[data-v-7853964c] .el-menu-item i{margin-right:4px}.top-row-spacer[data-v-7853964c]{flex:1;min-width:8px}.layout-aside[data-v-7853964c]{background-color:var(--aside-bg,#304156);transition:width .28s;overflow:hidden;display:flex;flex-direction:column}.layout-aside.is-fixed[data-v-7853964c]{position:fixed;left:0;top:0;bottom:0;z-index:1002;height:100vh}.layout-aside.is-fixed.aside-under-top[data-v-7853964c]{top:50px;height:auto;bottom:0}.layout-aside .logo-box[data-v-7853964c]{height:50px;display:flex;align-items:center;justify-content:center;cursor:pointer;background-color:var(--aside-logo-bg,#2b2f3a);overflow:hidden}.layout-aside .logo-box .logo-text[data-v-7853964c]{font-size:14px;font-weight:600;color:var(--aside-active-text,#fff);margin-left:0;white-space:nowrap;letter-spacing:.5px;padding:0 10px;text-align:center}.layout-aside .logo-box .logo-text--fold[data-v-7853964c]{font-size:18px;letter-spacing:0;padding:0}.layout-aside[data-v-7853964c] .scrollbar-wrapper{overflow-x:hidden!important}.layout-aside[data-v-7853964c] .el-scrollbar__view{height:calc(100vh - 50px)}.layout-aside.aside-no-logo[data-v-7853964c] .el-scrollbar__view{height:100vh}.layout-aside.aside-under-top.aside-no-logo[data-v-7853964c] .el-scrollbar__view{height:calc(100vh - 50px)}.layout-aside .el-menu[data-v-7853964c]{border:none;height:100%;width:100%!important}.layout-aside[data-v-7853964c] .el-menu-item{height:50px;line-height:50px;font-size:14px}.layout-aside[data-v-7853964c] .el-menu-item i{color:inherit;margin-right:8px;font-size:16px}.layout-aside[data-v-7853964c] .el-menu-item:hover{background-color:var(--aside-hover,#263445)!important}.layout-aside[data-v-7853964c] .el-menu-item.is-active{background-color:var(--aside-active-bg,#409eff)!important;color:var(--aside-active-text,#fff)!important}.layout-aside[data-v-7853964c] .el-submenu__title{height:50px;line-height:50px;font-size:14px}.layout-aside[data-v-7853964c] .el-submenu__title i{color:inherit;margin-right:8px;font-size:16px}.layout-aside[data-v-7853964c] .el-submenu__title:hover{background-color:var(--aside-hover,#263445)!important}.layout-aside[data-v-7853964c] .el-submenu .el-menu-item{min-width:auto!important;padding-left:50px!important;background-color:var(--aside-sub,#1f2d3d)!important}.layout-aside[data-v-7853964c] .el-submenu .el-menu-item:hover{background-color:var(--aside-hover,#001528)!important}.layout-aside[data-v-7853964c] .el-submenu .el-menu-item.is-active{background-color:var(--aside-active-bg,#409eff)!important;color:var(--aside-active-text,#fff)!important}.layout-aside-under-top[data-v-7853964c]{height:100%}