.logo-mark{object-fit:contain;flex:none;display:block}.main-layout{height:100vh;overflow:hidden}.main-layout .layout-sider{height:100vh;position:relative;overflow:hidden auto;box-shadow:none!important;background:linear-gradient(195deg,#d4e4fc 0%,#dff0fe 38%,#edf6ff 72%,#f7faff 100%)!important;border-right:1px solid #1e5fd814!important}.main-layout .layout-sider .logo{z-index:1;height:40px;color:var(--c-primary);white-space:nowrap;letter-spacing:.5px;background:linear-gradient(135deg,#ccdcf8 0%,#d9effb 100%);border-bottom:1px solid #1e5fd814;justify-content:flex-start;align-items:center;gap:8px;padding-left:14px;font-size:13px;font-weight:700;display:flex;position:sticky;top:0;overflow:hidden}.main-layout .layout-sider .logo span{background:linear-gradient(135deg, var(--c-primary) 0%, var(--c-accent) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.main-layout .layout-sider .logo svg,.main-layout .layout-sider .logo img{flex-shrink:0}.main-layout .layout-sider .ant-menu-inline,.main-layout .layout-sider .ant-menu-vertical{border-inline-end:none!important}.main-layout>.ant-layout{flex-direction:column;height:100vh;display:flex;overflow:hidden;background:var(--c-bg)!important}.main-layout .layout-header{z-index:1;background:linear-gradient(90deg,#eaf2fd 0%,#f6fafe 22%,#fff 52%);border-bottom:1px solid #1e5fd814;flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.main-layout .layout-header .header-left{align-items:center;gap:12px;min-width:0;display:flex}.main-layout .layout-header .header-left .header-collapse-btn{width:34px;height:34px;color:var(--c-text-muted);cursor:pointer;border-radius:var(--radius-sm);justify-content:center;align-items:center;font-size:13px;transition:background .15s,color .15s;display:flex}.main-layout .layout-header .header-left .header-collapse-btn:hover{background:var(--c-bg);color:var(--c-text-primary)}.main-layout .layout-header .header-tabs{background:var(--c-border-light);border:1px solid var(--c-border);border-radius:6px;align-items:center;gap:2px;padding:2px;display:inline-flex}.main-layout .layout-header .header-tab{height:26px;color:var(--c-text-muted);cursor:pointer;background:0 0;border:0;border-radius:4px;padding:0 12px;font-size:12px;line-height:26px}.main-layout .layout-header .header-tab:hover{color:var(--c-primary);background:#fff}.main-layout .layout-header .header-tab--active{color:var(--c-primary);background:#fff;box-shadow:0 1px 2px #0f172a14}.main-layout .layout-header .header-right{align-items:stretch;height:100%;display:flex}.main-layout .layout-header .header-right .user-info{cursor:pointer;color:var(--c-text-secondary);align-items:center;gap:7px;padding:0 12px;font-size:13px;transition:background .15s,color .15s;display:flex}.main-layout .layout-header .header-right .user-info:hover{background:var(--c-bg);color:var(--c-text-primary)}.main-layout .layout-content{background:var(--c-bg-white);border-radius:var(--radius-md);border:1px solid var(--c-border);flex:1;min-height:0;margin:10px;padding:16px;overflow-y:auto}.main-layout .layout-content.layout-content--dashboard{background:var(--c-bg);border:none;border-radius:0;margin:0;padding:0}.main-layout .sider-version{color:var(--c-text-disabled);text-align:center;border-top:1px solid var(--c-border-light);padding:6px 0;font-size:11px;position:absolute;bottom:0;left:0;right:0}:root{--c-primary:#1e5fd8;--c-primary-hover:#184db0;--c-primary-active:#123d8f;--c-primary-light:#eaf2ff;--c-primary-pale:#f3f7ff;--c-accent:#0ea5c6;--c-accent-hover:#0b89a6;--c-accent-light:#e6f8fc;--c-dark-950:#060f1e;--c-dark-900:#0b1628;--c-dark-800:#0f2040;--c-dark-700:#152b57;--c-dark-600:#1c3a6e;--c-dark-border:#ffffff14;--c-bg:#f2f6fa;--c-bg-white:#fff;--c-surface:#f8fafc;--c-text-primary:#1e293b;--c-text-secondary:#475569;--c-text-muted:#94a3b8;--c-text-disabled:#cbd5e1;--c-border:#e2e8f0;--c-border-light:#f1f5f9;--c-success:#10b981;--c-warning:#f59e0b;--c-error:#ef4444;--c-info:#0ea5c6;--shadow-sm:0 1px 3px #0000000f, 0 1px 2px #0000000a;--shadow-md:0 4px 12px #00000014, 0 2px 4px #0000000d;--shadow-lg:0 10px 30px #0000001f, 0 4px 8px #0000000f;--shadow-primary:0 8px 24px #1e5fd83d;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--c-text-primary);background:var(--c-bg);font-family:PingFang SC,Microsoft YaHei,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}::-webkit-scrollbar{width:2px;height:2px}::-webkit-scrollbar-thumb{background:#00000014;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#00000040}::-webkit-scrollbar-track{background:0 0}*{scrollbar-width:thin;scrollbar-color:#00000014 transparent}.ant-tooltip{--ant-tooltip-bg:#fff;--ant-color-bg-spotlight:#fff;--ant-tooltip-color:var(--c-text-primary)}.ant-tooltip .ant-tooltip-inner{color:var(--c-text-primary)!important;border:1px solid var(--c-border)!important;background:#fff!important;box-shadow:0 4px 12px #0000001a!important}.ant-tooltip .ant-tooltip-arrow:before,.ant-tooltip .ant-tooltip-arrow:after{border-color:var(--c-border)!important;background:#fff!important}.ant-table-wrapper .ant-table-thead .ant-table-cell{background:var(--c-surface)!important;color:var(--c-text-secondary)!important;border-bottom:1.5px solid #1e5fd821!important;font-size:13px!important;font-weight:600!important}.ant-table-wrapper .ant-pagination{margin:8px 0 0!important}.ant-table-wrapper{padding-bottom:0!important}.ant-card .ant-card-head{border-bottom-color:var(--c-border);min-height:46px}.ant-card .ant-card-head .ant-card-head-title{color:var(--c-text-primary);padding-left:10px;font-size:14px;font-weight:600;position:relative}.ant-card .ant-card-head .ant-card-head-title:before{content:"";background:var(--c-primary);border-radius:2px;width:3px;height:14px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.ant-tag{border-radius:4px!important;font-size:12px!important;font-weight:500!important}.ant-descriptions .ant-descriptions-item-label{color:var(--c-text-secondary);font-weight:500}
