/* 中文说明：参考ECS的layuiAdmin布局、浅蓝工具栏及灰蓝按钮，适配当前Layui；不包含ECS业务或账号逻辑。 */
:root{color-scheme:light;--accent:#009688;--ink:#333;--muted:#888;--line:#e6e6e6;--sidebar:#20222a;--button:#607d8b}
*{box-sizing:border-box}body{margin:0;background:#f2f2f2;color:var(--ink);font:14px/1.7 "Microsoft YaHei",sans-serif}[hidden]{display:none!important}a{color:inherit}button,a,input,textarea,select{touch-action:manipulation}button:focus-visible,a:focus-visible{outline:2px solid #3b91ff;outline-offset:2px}h1{font-size:22px;font-weight:500;margin:0 0 14px}h2{font-size:16px;font-weight:500;margin:0 0 12px}.muted{color:var(--muted)}.small{font-size:12px}.error{color:#c23b31}.admin-main{width:100%;max-width:none;margin:0;padding:20px}.admin-main>p{margin:10px 0 16px}.page-breadcrumb{display:flex;gap:12px;font-size:13px;color:#888;margin:0 0 18px;padding-bottom:12px;border-bottom:1px solid var(--line)}.page-breadcrumb a:hover{color:var(--accent)}
.layui-btn{background:var(--button);border-radius:3px}.layui-btn-primary{background:#fff;border-color:#d2d2d2;color:#5f5f5f}.layui-btn-primary:hover{border-color:var(--accent);color:var(--accent)}.layui-input,.layui-textarea,.layui-select{border-radius:2px}.layui-input:focus,.layui-textarea:focus{border-color:#91b7cf!important}.layui-form label{display:block;margin:12px 0 6px}.layui-form select{display:block}.layui-form .layui-input{max-width:820px}.layui-form .layui-input,.layui-form .layui-select{margin:8px 0 16px}.layui-form select{height:38px;border:1px solid var(--line);padding:0 10px}.metric{display:block;background:white;border:1px solid var(--line);border-radius:2px;padding:18px 20px}.metric h2{padding-bottom:12px;border-bottom:1px solid #f2f2f2}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:20px 0}.metric-grid .metric{border:0;border-left:3px solid #607d8b}.metric-grid .metric span{display:block;color:#888}.metric strong{font-size:32px;line-height:1.7;font-weight:400}.shortcut-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.shortcut-grid a{display:flex;flex-direction:column;align-items:center;padding:22px 10px;background:#f8f8f8;border:1px solid #f2f2f2}.shortcut-grid a:hover{background:#e6f7ff;border-color:#91d5ff}.shortcut-grid i{font-size:28px;margin-bottom:8px;color:#607d8b}.table-panel{background:#fff;padding:12px;min-width:0;overflow:hidden}.layui-table-view{margin:0}.layui-table-tool{background:#e6f7ff;border-color:#91d5ff}.layui-table-header th{background:#f7f8fa}.layui-table-view .layui-table td,.layui-table-view .layui-table th{padding:6px 0}.layui-table-view .layui-table-box{min-width:0}.database-panel{overflow-x:auto}.database-panel .layui-table{min-width:720px}.maintenance-list{padding-left:24px}.maintenance-list li{margin:14px 0}.menu-item{padding:14px 0;border-bottom:1px solid #eee}.menu-item pre{overflow-wrap:anywhere}.menu-item .layui-btn{margin:10px 0}.layui-layer-title{background:#f8f8f8!important}.layui-layer-btn .layui-layer-btn0{background:var(--button)!important;border-color:var(--button)!important}[role=status]:not(:empty){padding:10px 14px;background:#e6f7ff;border-left:3px solid #91d5ff}.admin-main details{padding:12px;border:1px solid var(--line);background:#fafafa}.admin-main summary{cursor:pointer;color:#607d8b}.admin-main pre{overflow-wrap:anywhere}
/* 中文说明：同源页签使用固定菜单路由，头部与侧栏持续显示，内容区独立滚动。 */
.admin-shell-body{height:100vh;overflow:hidden}.admin-layout{display:grid;grid-template-columns:220px minmax(0,1fr);grid-template-rows:56px 42px minmax(0,1fr);height:100vh}.admin-sidebar{grid-row:1/4;grid-column:1;background:var(--sidebar);color:#c2c2c2;overflow-y:auto;min-width:0;z-index:30}.admin-brand{display:flex;align-items:center;gap:12px;height:56px;padding:0 22px;color:#fff!important;border-bottom:1px solid #30323b;white-space:nowrap}.brand-mark{display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;background:#607d8b;color:#fff;border-radius:3px;font-size:24px}.small-mark{width:30px;height:30px;font-size:19px;flex-shrink:0}.admin-sidebar nav>a{display:flex;gap:10px;align-items:center;padding:12px 24px;border-left:4px solid transparent;white-space:nowrap}.admin-sidebar nav>a:hover{background:#2b2d36;color:white}.admin-sidebar nav>a.active{background:var(--accent);color:#fff;border-left-color:#51d3c6}.nav-group{font-size:12px;padding:17px 24px 6px;color:#7b7f8b;white-space:nowrap}.admin-topbar{grid-column:2;grid-row:1;display:flex;align-items:center;justify-content:space-between;padding:0 20px 0 10px;background:white;border-bottom:1px solid #eee;min-width:0}.topbar-left,.admin-topbar form{display:flex;gap:16px;align-items:center;min-width:0}.admin-user{white-space:nowrap}.icon-button{border:0;background:transparent;padding:12px;color:#666;cursor:pointer}.icon-button:hover{background:#f5f5f5}.icon-button i{font-size:19px}#admin-current-title{color:#888;white-space:nowrap}.admin-tabs{grid-column:2;grid-row:2;display:flex;align-items:stretch;overflow-x:auto;overflow-y:hidden;min-width:0;background:#fff;border-bottom:1px solid #ddd;scrollbar-width:thin}.admin-tab{display:flex;align-items:stretch;border-right:1px solid #eee;border-top:2px solid transparent;flex-shrink:0}.admin-tab.active{border-top-color:var(--accent);background:#f6f6f6}.admin-tab button{border:0;background:transparent;cursor:pointer;color:#666}.admin-tab-title{padding:0 16px;white-space:nowrap}.admin-tab-close{padding:0 12px 0 0;font-size:20px}.admin-tab-close:hover{color:#f44336}.admin-panes{grid-row:3;grid-column:2;position:relative;min-height:0;min-width:0;overflow:hidden}.admin-frame{border:0;width:100%;height:100%;display:block;background:#f2f2f2}.sidebar-collapsed{grid-template-columns:0 minmax(0,1fr)}.sidebar-collapsed .admin-sidebar{visibility:hidden}.admin-shade{display:none}
/* 中文说明：登录与错误页使用相同配色，登录表单仍保留原账号、CSRF及提交方式。 */
.login-body{min-height:100vh;display:flex;justify-content:center;align-items:flex-start;padding:12vh 20px 40px;background:linear-gradient(150deg,#eef2f5,#f8f9fa)}.login-panel{width:400px;max-width:100%;background:#fff;border-top:3px solid #607d8b;box-shadow:0 4px 24px #20222a14;padding:32px}.login-panel>.brand-mark{margin-bottom:16px}.login-panel form{margin-top:24px}.login-panel .layui-input{height:42px}.login-panel label{display:block;margin-bottom:8px}.login-panel .layui-btn-fluid{margin-top:12px}.error-panel{max-width:640px;margin:10vh auto;text-align:center;padding:40px}.error-panel>i{display:block;font-size:44px;color:#607d8b;margin-bottom:20px}.error-panel p{margin:20px 0}
@media(max-width:1000px){.metric-grid,.shortcut-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.admin-layout{grid-template-columns:0 minmax(0,1fr)}.admin-sidebar{position:fixed;top:0;bottom:0;left:0;width:220px;visibility:visible;box-shadow:4px 0 18px #0003}.sidebar-collapsed .admin-sidebar{visibility:hidden}.admin-layout:not(.sidebar-collapsed) .admin-shade{display:block;position:fixed;inset:0;background:#0006;border:0;z-index:20}.admin-topbar{padding-right:12px}.topbar-left,.admin-topbar form{gap:8px}.admin-user{max-width:100px;overflow:hidden;text-overflow:ellipsis}.admin-main{padding:14px}.metric{padding:14px}.metric-grid,.shortcut-grid{gap:10px}.table-panel{padding:8px}#admin-current-title{display:none}.login-body{padding-top:8vh}.login-panel{padding:24px}.admin-main .layui-btn{margin-bottom:6px}}

/* 中文说明：列表工具栏沿用ECS浅蓝背景与紧凑刷新按钮。 */
.table-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#e6f7ff;border:1px solid #91d5ff;padding:6px 12px;min-height:42px}.table-toolbar .layui-btn{margin:0}
