html,body,#app{min-height:100%;margin:0;font-family:Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}:root{--admin-primary:#2563eb;--admin-primary-light:#3b82f6;--admin-primary-soft:#eff6ff;--admin-primary-glow:#2563eb1f;--admin-sidebar-bg:#0b1220;--admin-sidebar-active:#2563eb;--admin-page-bg:#eef2f7;--admin-card-bg:#fff;--admin-card-radius:14px;--admin-card-shadow:0 1px 2px #0f172a0d, 0 12px 32px #0f172a0f;--admin-card-shadow-hover:0 16px 40px #0f172a1a;--admin-header-height:60px;--admin-content-max:1440px;--el-color-primary:var(--admin-primary);--el-color-primary-light-3:#60a5fa;--el-color-primary-light-5:#93c5fd;--el-color-primary-light-7:#bfdbfe;--el-color-primary-light-8:#dbeafe;--el-color-primary-light-9:var(--admin-primary-soft);--el-color-primary-dark-2:#1d4ed8;--el-border-radius-base:10px;--el-border-radius-small:8px;--el-border-color:#e2e8f0;--el-border-color-light:#e8edf3;--el-fill-color-light:#f8fafc;--el-fill-color-lighter:#fcfdfe;--el-text-color-primary:#0f172a;--el-text-color-regular:#475569;--el-text-color-secondary:#64748b;--el-font-family:"Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif}html,body,#app{background:var(--admin-page-bg);height:100%;color:var(--el-text-color-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.layout-main,.login-page{background-color:var(--admin-page-bg);background-image:radial-gradient(circle at 0 0,#2563eb0d,#0000 42%),radial-gradient(circle at 100% 0,#6366f10a,#0000 38%)}.el-card{transition:box-shadow .2s,border-color .2s;overflow:hidden;border:1px solid var(--el-border-color-light)!important;border-radius:var(--admin-card-radius)!important;box-shadow:var(--admin-card-shadow)!important}.el-card.is-hover-shadow:hover,.el-card:hover{box-shadow:var(--admin-card-shadow-hover)!important}.el-card__header{background:linear-gradient(#fff 0%,#fafbfc 100%);font-weight:600;border-bottom:1px solid var(--el-border-color-light)!important;padding:18px 22px!important}.el-card__body{padding:22px!important}.el-table{--el-table-border-color:var(--el-border-color-light);--el-table-header-bg-color:#f8fafc;--el-table-row-hover-bg-color:#f1f5f9;border-radius:10px;font-size:13px}.el-table th.el-table__cell{color:var(--el-text-color-primary);font-size:13px;font-weight:600;background:#f8fafc!important}.el-table .el-table__row{transition:background-color .15s}.el-button{border-radius:10px;font-weight:500;transition:transform .15s,box-shadow .15s}.el-button--primary:not(.is-text):not(.is-link):hover{box-shadow:0 6px 16px var(--admin-primary-glow);transform:translateY(-1px)}.el-input__wrapper,.el-select__wrapper,.el-textarea__inner{transition:box-shadow .15s;box-shadow:0 0 0 1px var(--el-border-color-light) inset!important;border-radius:10px!important}.el-input__wrapper:hover,.el-select__wrapper:hover{box-shadow:inset 0 0 0 1px #cbd5e1!important}.el-input__wrapper.is-focus,.el-select__wrapper.is-focused{box-shadow:0 0 0 1px var(--admin-primary) inset, 0 0 0 3px var(--admin-primary-glow)!important}.el-tag{border-radius:999px;font-weight:500}.el-dialog{overflow:hidden;border-radius:16px!important;box-shadow:0 24px 48px #0f172a1f!important}.el-dialog__header{border-bottom:1px solid var(--el-border-color-light);margin-right:0!important;padding:20px 24px 14px!important}.el-dialog__body{padding:22px 24px!important}.el-dialog__footer{border-top:1px solid var(--el-border-color-light);background:var(--el-fill-color-lighter);padding:14px 24px 20px!important}.el-form--inline .el-form-item{margin-bottom:12px}.el-pagination.is-background .el-pager li.is-active{background:var(--admin-primary)!important}.admin-page{max-width:var(--admin-content-max);margin:0 auto}.admin-toolbar{background:linear-gradient(180deg, #fff 0%, var(--el-fill-color-light) 100%);border:1px solid var(--el-border-color-light);border-radius:12px;flex-wrap:wrap;align-items:flex-end;gap:12px;padding:16px 18px;display:flex;box-shadow:0 1px 2px #0f172a0a}.admin-table-wrap{border:1px solid var(--el-border-color-light);background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 2px #0f172a0a}.admin-table-wrap .el-table{border-radius:0}.admin-pagination,.admin-pager{justify-content:flex-end;margin-top:18px;padding-top:4px;display:flex}.admin-empty-hint{color:var(--el-text-color-regular);background:linear-gradient(135deg, var(--admin-primary-soft) 0%, #fff 100%);border:1px solid #bfdbfe;border-radius:12px;padding:14px 16px;font-size:13px;line-height:1.65}.hub-section{margin-bottom:28px}.hub-section__title{letter-spacing:-.02em;color:var(--el-text-color-primary);margin:0 0 6px;font-size:18px;font-weight:700}.hub-section__desc{color:var(--el-text-color-secondary);margin:0 0 16px;font-size:13px;line-height:1.6}.hub-grid{grid-template-columns:repeat(auto-fill,minmax(268px,1fr));gap:16px;display:grid}.config-grid{grid-template-columns:repeat(auto-fill,minmax(228px,1fr));gap:16px;display:grid}.config-card h4{margin:0 0 14px;font-size:15px;font-weight:600}.layout-main .card-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.layout-main .card-header>span:first-child{letter-spacing:-.02em;font-size:17px;font-weight:700}.layout-main .header-right{align-items:center;gap:8px;display:flex}.layout-main .pager,.layout-main .admin-pager{justify-content:flex-end;margin-top:18px;display:flex}.layout-main .status-tabs{margin-bottom:16px}.layout-main .el-card__body>.el-form--inline{background:linear-gradient(180deg, #fff 0%, var(--el-fill-color-light) 100%);border:1px solid var(--el-border-color-light);border-radius:12px;margin-bottom:16px;padding:14px 16px}.layout-main .el-card__body>.el-table{border:1px solid var(--el-border-color-light);border-radius:12px;overflow:hidden}.layout-main .group-block+.group-block{margin-top:24px}.layout-main .group-title{margin:0 0 12px;font-size:16px;font-weight:700}.layout-main .module-card{cursor:pointer;margin-bottom:16px}.layout-main .module-name{align-items:center;gap:8px;font-weight:600;display:flex}.layout-main .module-desc{color:var(--el-text-color-secondary);margin-top:8px;font-size:13px;line-height:1.5}
