:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--admin-primary:#2563eb;--admin-primary-soft:#e8f0fe;--admin-primary-soft-2:#eff6ff;--admin-bg:#f0f4fa;--admin-surface:#fff;--admin-border:#e5e7eb;--admin-border-soft:#eef2f7;--admin-text:#111827;--admin-text-secondary:#6b7280;--admin-shadow-sm:0 1px 2px #0f172a0a;--admin-shadow-md:0 8px 24px #0f172a0f;--admin-shadow-lg:0 16px 42px #0f172a14;--admin-radius:12px;--admin-radius-lg:16px;background:var(--admin-bg);color:var(--admin-text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,Noto Sans CJK SC,Helvetica Neue,Arial,sans-serif}*{box-sizing:border-box}body{background:var(--admin-bg);min-width:320px;margin:0}.login-shell{background:radial-gradient(circle at 18% 20%,#2563eb1f,#0000 32rem),radial-gradient(circle at 82% 78%,#3b82f614,#0000 28rem),linear-gradient(#f8fafc 0%,#eef5ff 100%);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:32px 24px;display:flex}.login-panel{flex-wrap:wrap;flex:1;justify-content:center;align-items:center;gap:56px;width:min(100%,1080px);display:flex}.login-brand{flex:360px;max-width:520px}.login-brand-row{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:8px;display:flex}.login-brand-mark{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex;overflow:hidden;box-shadow:0 10px 24px #2563eb2e}.login-brand-mark img{object-fit:contain;width:100%;height:100%;display:block}.login-brand-title{margin:0!important;font-size:26px!important;line-height:1.25!important}.login-brand-tag{color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;padding:2px 14px;font-size:13px;line-height:22px;display:inline-block}.login-brand-slogan{color:#1e3a5f!important;margin-top:28px!important;margin-bottom:8px!important;font-weight:600!important}.login-brand-desc{max-width:28em;margin-bottom:0!important}.login-card{flex:0 420px;width:min(100%,420px);border:1px solid var(--admin-border)!important;border-radius:var(--admin-radius-lg)!important;box-shadow:var(--admin-shadow-lg)!important}.login-card .ant-card-body{padding:32px 28px}.login-card .ant-form-item-label>label{color:#374151;font-weight:500}.login-footer{margin-top:24px;margin-bottom:0;font-size:13px}.app-frame{background:var(--admin-bg);min-height:100vh}.app-frame>.ant-layout{background:0 0}.app-header{border-bottom:1px solid var(--admin-border);box-shadow:var(--admin-shadow-sm);z-index:20;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0;background:var(--admin-surface)!important;height:64px!important;padding-inline:20px 24px!important;line-height:64px!important}.app-header-left,.app-header-right{align-items:center;gap:12px;min-width:0;display:flex}.app-brand-block{align-items:center;gap:10px;min-width:0;display:flex}.app-brand-mark{border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex;overflow:hidden;box-shadow:0 6px 14px #2563eb2e}.app-brand-mark img{object-fit:contain;width:100%;height:100%;display:block}.app-brand{letter-spacing:-.02em;color:var(--admin-text);white-space:nowrap;text-overflow:ellipsis;font-size:16px;overflow:hidden}.app-header-badge.ant-tag{color:#2563eb;background:#eff6ff;border-color:#bfdbfe;border-radius:999px;margin-inline-end:0;padding-inline:10px;line-height:22px}.app-session-dot{color:#047857;white-space:nowrap;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:999px;align-items:center;gap:6px;padding:2px 10px;font-size:12px;line-height:20px;display:inline-flex}.app-session-dot:before{content:"";background:#10b981;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #10b9812e}.app-role-tag.ant-tag{border-radius:999px;margin-inline-end:0}.app-user-name{text-overflow:ellipsis;white-space:nowrap;max-width:140px;overflow:hidden}.app-logout-btn.ant-btn{border-radius:8px}.app-body{background:0 0;min-height:calc(100vh - 64px)}.app-sider.ant-layout-sider{border-right:1px solid var(--admin-border);background:var(--admin-surface)!important}.app-sider .ant-layout-sider-children{flex-direction:column;padding:12px 10px 8px;display:flex}.app-sider .ant-menu{background:0 0;flex:1;border-inline-end:none!important}.app-sider .ant-menu-item{color:#4b5563;height:40px;line-height:40px;border-radius:10px!important;width:100%!important;margin-inline:0!important}.app-sider .ant-menu-item .anticon{font-size:15px}.app-sider .ant-menu-item-selected{font-weight:600;background:var(--admin-primary-soft)!important;color:var(--admin-primary)!important}.app-sider .ant-menu-item:hover{color:var(--admin-primary)!important}.app-sider .ant-layout-sider-trigger{background:var(--admin-surface);border-top:1px solid var(--admin-border-soft);color:var(--admin-text-secondary);border-inline-end:1px solid var(--admin-border)}.app-content.ant-layout-content{max-width:1480px;min-height:calc(100vh - 64px);padding:24px 28px 16px}.app-footer{text-align:center;margin-top:28px;margin-bottom:8px;font-size:12px}.beian-line{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:6px;display:flex}.beian-line a{color:inherit;white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.beian-line a:hover{color:var(--admin-primary)}.beian-line img{border-radius:3px;width:auto;height:16px}.app-content .ant-card{border:1px solid var(--admin-border);border-radius:var(--admin-radius);box-shadow:var(--admin-shadow-md)}.app-content .ant-card .ant-card-head{border-bottom-color:var(--admin-border-soft);min-height:48px;font-weight:600}.app-content .ant-alert{border-radius:12px}.app-content .ant-table-wrapper{overflow-x:auto}.app-content .ant-table-thead>tr>th{color:#4b5563;font-weight:600;background:#f8fafc!important}.app-content .ant-btn-primary{box-shadow:0 4px 12px #2563eb38}.page-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:4px;display:flex}.page-header-main{flex:1;min-width:0}.page-header-title.ant-typography{letter-spacing:-.02em;margin:0 0 4px!important;font-size:22px!important;line-height:1.3!important}.page-header-desc{line-height:1.55;display:block}.page-header-extra{flex-shrink:0}.filter-bar{border:1px solid var(--admin-border);border-radius:var(--admin-radius);background:var(--admin-surface);box-shadow:var(--admin-shadow-sm);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px 16px;padding:14px 16px;display:flex}.filter-bar-fields{flex:1;min-width:0}.filter-bar-actions{flex-shrink:0}.stat-metric-card.ant-card{height:100%;border-radius:var(--admin-radius)!important;box-shadow:var(--admin-shadow-md)!important}.stat-metric-card .ant-card-body{padding:16px 16px 14px}.stat-metric-card-body{align-items:flex-start;gap:12px;display:flex}.stat-metric-card-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;display:inline-flex}.stat-metric-card-text{flex:1;min-width:0}.stat-metric-card-title{font-size:13px;line-height:1.3;display:block}.stat-metric-card-value.ant-typography{letter-spacing:-.03em;word-break:break-all;margin:6px 0 0!important;font-size:24px!important;line-height:1.2!important}.stat-metric-card-footer{color:var(--admin-text-secondary);margin-top:6px;font-size:12px}.stat-metric-card--blue .stat-metric-card-icon{color:#2563eb;background:#e8f0fe}.stat-metric-card--green .stat-metric-card-icon{color:#059669;background:#ecfdf5}.stat-metric-card--orange .stat-metric-card-icon{color:#ea580c;background:#fff7ed}.stat-metric-card--red .stat-metric-card-icon{color:#dc2626;background:#fef2f2}.stat-metric-card--purple .stat-metric-card-icon{color:#7c3aed;background:#f5f3ff}.stat-metric-card--cyan .stat-metric-card-icon{color:#0891b2;background:#ecfeff}.stat-metric-card--gold .stat-metric-card-icon{color:#d97706;background:#fffbeb}.shortcut-list{flex-direction:column;gap:8px;display:flex}.shortcut-item{border:1px solid var(--admin-border-soft);color:inherit;background:linear-gradient(#fff 0%,#f8fafc 100%);border-radius:12px;align-items:center;gap:12px;padding:12px 14px;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:flex}.shortcut-item:hover{color:inherit;border-color:#bfdbfe;box-shadow:0 6px 16px #2563eb14}.shortcut-item-icon{background:var(--admin-primary-soft);width:36px;height:36px;color:var(--admin-primary);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;display:inline-flex}.shortcut-item-text{flex:1;min-width:0}.shortcut-item-title{color:var(--admin-text);font-weight:600;display:block}.shortcut-item-desc{color:var(--admin-text-secondary);margin-top:2px;font-size:12px;display:block}.shortcut-item-arrow{color:#9ca3af;flex-shrink:0}.admin-shell{background:radial-gradient(circle at 0 0,#2563eb1f,#0000 34rem),linear-gradient(#f8fafc 0%,#eef5ff 100%);justify-content:center;min-height:100vh;padding:24px;display:flex}.admin-stack{width:min(100%,720px)}.admin-shell .ant-card{border:1px solid var(--admin-border);box-shadow:var(--admin-shadow-lg);border-radius:18px}@media (width<=900px){.app-session-dot{display:none}.app-brand{max-width:160px}}@media (width<=720px){.app-content.ant-layout-content,.admin-shell{padding:14px}.login-panel{gap:28px}.app-header{padding-inline:12px 14px!important}}
