:root{--kd-primary:#1f6bff;--kd-primary-hover:#4d8bff;--kd-primary-active:#1452d9;--kd-primary-bg:#eaf1ff;--kd-primary-text:#1a5ce6;--kd-icon-bg:#eef4ff;--kd-success:#00b42a;--kd-success-text:#00873c;--kd-success-bg:#e8ffea;--kd-warning:#ff7d00;--kd-warning-text:#c25100;--kd-warning-bg:#fff3e8;--kd-danger:#f53f3f;--kd-danger-text:#d92d20;--kd-danger-bg:#ffece8;--kd-text:#1d2129;--kd-text-2:#4e5969;--kd-border:#e5eaf3;--kd-page-bg:#f3f7ff;--kd-th-bg:#f2f6ff;--kd-zebra:#fafcff;--kd-row-hover:#eaf1ff;--kd-card-shadow:0 1px 2px #1f6bff0a, 0 2px 8px -2px #1f6bff0f;--kd-header-h:56px;--kd-tabsbar-h:40px;--kd-font:-apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Segoe UI", "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--kd-page-bg);color:var(--kd-text);font-family:var(--kd-font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#c9d6ee;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:#9fb5dc}::-webkit-scrollbar-track{background:0 0}.kd-num,.kd-num *{font-variant-numeric:tabular-nums}.kd-text-2{color:var(--kd-text-2)}.kd-strong{color:var(--kd-text);font-weight:600}.kd-link{color:var(--kd-primary);cursor:pointer;font-weight:500}.kd-link:hover{color:var(--kd-primary-hover);text-decoration:underline}.kd-ellipsis{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.kd-flex{align-items:center;gap:8px;display:flex}.kd-spacer{flex:auto}.kd-danger-text{color:var(--kd-danger-text)!important}.kd-success-text{color:var(--kd-success-text)!important}.kd-warning-text{color:var(--kd-warning-text)!important}.kd-card{border:1px solid var(--kd-border);box-shadow:var(--kd-card-shadow);background:#fff;border-radius:12px}.kd-card-hd{border-bottom:1px solid var(--kd-border);align-items:center;gap:10px;min-height:48px;padding:10px 16px;display:flex}.kd-card-title{color:var(--kd-text);white-space:nowrap;padding-left:11px;font-size:15px;font-weight:700;line-height:22px;position:relative}.kd-card-title:before{content:"";background:linear-gradient(#4d8bff,#1f6bff);border-radius:4px;width:4px;position:absolute;top:4px;bottom:4px;left:0}.kd-card-sub{color:var(--kd-text-2);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.kd-card-bd{padding:16px}.kd-card-bd.p0{padding:0}.kd-page{flex-direction:column;gap:12px;min-height:100%;display:flex}.kd-grid{gap:12px;display:grid}.kd-row{align-items:stretch;gap:12px;display:flex}.kd-row>*{min-width:0}.kd-page-tabs>.ant-tabs-nav{border:1px solid var(--kd-border);box-shadow:var(--kd-card-shadow);background:#fff;border-radius:12px;padding:0 16px;margin:0 0 12px!important}.kd-page-tabs>.ant-tabs-nav:before{display:none}.kd-page-tabs>.ant-tabs-nav .ant-tabs-tab{font-weight:500}.kd-page-tabs>.ant-tabs-nav .ant-tabs-tab-active .ant-tabs-tab-btn{font-weight:700}.kd-page-tabs>.ant-tabs-nav .ant-tabs-ink-bar{border-radius:3px 3px 0 0;height:3px}.kd-page-tabs .ant-tabs-tab .anticon{margin-inline-end:6px}.kd-tab-count{text-align:center;background:var(--kd-primary-bg);min-width:20px;height:18px;color:var(--kd-primary-text);border-radius:9px;margin-left:6px;padding:0 6px;font-size:12px;font-weight:600;line-height:18px;display:inline-block}.kd-ico{background:var(--kd-icon-bg);color:var(--kd-primary);flex:none;place-items:center;display:grid}.kd-demo-flag{color:#c25100;cursor:default;background:#fff3e8;border:1px solid #ffd5ae;border-radius:12px;flex:none;margin-right:12px;padding:3px 12px;font-size:13px;font-weight:700}.kd-chart-cap{color:var(--kd-text);margin-bottom:8px;font-size:14px;font-weight:600}.kd-stat-row{gap:12px;display:grid}.kd-stat{--c:#1f6bff;--tint:#e3edff;--shadow:#1f6bff47;--ctext:#1a5ce6;border:1px solid var(--kd-border);background:linear-gradient(135deg, #fff 0%, #fff 42%, var(--tint) 100%);min-height:92px;box-shadow:var(--kd-card-shadow);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:12px;align-items:center;gap:14px;padding:14px 16px;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex;position:relative;overflow:hidden}.kd-stat:after{content:"";background:var(--c);opacity:.07;border-radius:50%;width:92px;height:92px;transition:transform .25s;position:absolute;bottom:-26px;right:-26px}.kd-stat:hover{border-color:var(--c);box-shadow:0 12px 26px -10px var(--shadow), 0 2px 6px -2px var(--shadow);transform:translateY(-3px)}.kd-stat:hover:after{transform:scale(1.25)}.kd-stat:active{box-shadow:0 4px 12px -6px var(--shadow);transform:translateY(-1px)scale(.985)}.kd-stat:focus-visible{outline:2px solid var(--c);outline-offset:2px}.kd-stat.is-static{cursor:default}.kd-stat.is-static:hover{border-color:var(--kd-border);box-shadow:var(--kd-card-shadow);transform:none}.kd-stat-icon{background:var(--kd-icon-bg);width:46px;height:46px;color:var(--kd-primary);border-radius:12px;flex:none;place-items:center;font-size:22px;display:grid}.kd-stat-main{z-index:1;flex:auto;min-width:0;position:relative;container-type:inline-size}.kd-stat-label{color:var(--kd-text-2);white-space:nowrap;text-overflow:ellipsis;font-size:13px;line-height:20px;overflow:hidden}.kd-stat-value{color:var(--kd-text);font-variant-numeric:tabular-nums;white-space:nowrap;margin-top:2px;font-size:clamp(17px,15cqi,25px);font-weight:700;line-height:32px}.kd-stat-unit{color:var(--kd-text-2);margin-left:4px;font-size:13px;font-weight:500}.kd-stat-foot{color:var(--kd-text-2);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:6px;margin-top:2px;font-size:12px;line-height:18px;display:flex;overflow:hidden}.kd-stat-arrow{color:var(--ctext);opacity:0;font-size:12px;transition:all .18s;position:absolute;top:10px;right:12px;transform:translate(-4px)}.kd-stat:hover .kd-stat-arrow{opacity:1;transform:none}.kd-trend-up{color:#00873c;font-weight:600}.kd-trend-down{color:#d92d20;font-weight:600}.kd-trend-up.is-bad{color:#d92d20}.kd-trend-down.is-good{color:#00873c}.kd-stat-skeleton{border:1px solid var(--kd-border);background:linear-gradient(90deg,#fff 25%,#f2f6ff 37%,#fff 63%) 0 0/400% 100%;border-radius:12px;min-height:92px;animation:1.2s infinite kd-shimmer}@keyframes kd-shimmer{0%{background-position:100%}to{background-position:0}}.kd-click-num{min-width:28px;color:var(--kd-primary-text);cursor:pointer;font-variant-numeric:tabular-nums;border-radius:6px;padding:0 6px;font-weight:700;transition:background .15s;display:inline-block}.kd-click-num:hover{background:var(--kd-primary-bg);text-decoration:underline}.kd-query{padding:16px 16px 0}.kd-query-wrap{align-items:flex-start;gap:16px;display:flex}.kd-query-fields{flex:auto;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:16px;display:grid}.kd-query-fields .ant-form-item{min-width:0;margin-bottom:16px}.kd-query-fields .ant-form-item-control{min-width:0}.kd-query-fields .span-2{grid-column:span 2}.kd-query-fields .ant-form-item-label>label{color:var(--kd-text);font-weight:500}.kd-query-btns{flex:none;align-items:center;gap:8px;padding-bottom:16px;display:flex}@media (width<=1500px){.kd-query-fields{grid-template-columns:repeat(3,minmax(0,1fr))}}.kd-table-card{flex-direction:column;display:flex}.kd-table-toolbar{align-items:center;gap:10px;min-height:56px;padding:10px 16px;display:flex}.kd-table-title{color:var(--kd-text);white-space:nowrap;font-size:15px;font-weight:700}.kd-table-summary{color:var(--kd-text-2);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.kd-batch-bar{background:var(--kd-primary-bg);border:1px solid #c7daff;border-radius:8px;flex:auto;align-items:center;gap:10px;min-width:0;height:38px;padding:0 12px;animation:.18s kd-fade-in;display:flex}.kd-batch-bar b{color:var(--kd-primary-text);font-variant-numeric:tabular-nums;font-size:15px}@keyframes kd-fade-in{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}.kd-table .ant-table{font-variant-numeric:tabular-nums}.kd-table .ant-table-thead>tr>th{color:var(--kd-text);white-space:nowrap;background:var(--kd-th-bg);font-weight:700;text-align:center!important}.kd-table .ant-table-tbody>tr>td{text-align:center;color:var(--kd-text)}.kd-table .ant-table-tbody>tr.kd-row-odd>td{background:var(--kd-zebra)}.kd-table .ant-table-tbody>tr.ant-table-row:hover>td,.kd-table .ant-table-tbody>tr.kd-row-odd.ant-table-row:hover>td{background:var(--kd-row-hover)}.kd-table .ant-table-tbody>tr.ant-table-row-selected>td,.kd-table .ant-table-tbody>tr.kd-row-odd.ant-table-row-selected>td{background:#e3edff}.kd-table .ant-table-tbody>tr.ant-table-row-selected:hover>td{background:#d6e4ff}.kd-table .ant-table-cell .ant-checkbox-wrapper{justify-content:center}.kd-table .ant-table-pagination.ant-pagination{margin:12px 16px!important}.kd-table .ant-pagination .ant-pagination-total-text{color:var(--kd-text);margin-inline-end:12px;font-weight:500}.kd-table .ant-table-container{border-top:1px solid var(--kd-border)}.kd-index-cell{color:var(--kd-text-2);font-weight:600}.kd-sel-head{align-items:center;gap:2px;display:inline-flex}.kd-sel-head .kd-sel-caret{width:16px;height:18px;color:var(--kd-text-2);cursor:pointer;border-radius:4px;place-items:center;font-size:10px;display:inline-grid}.kd-sel-head .kd-sel-caret:hover{color:var(--kd-primary);background:#dce8ff}.kd-ops{flex-wrap:nowrap;justify-content:center;align-items:center;gap:2px;display:inline-flex}.kd-ops .ant-btn{height:26px;padding:0 6px}.kd-cell-sub{color:var(--kd-text-2);font-size:12px;line-height:18px}.kd-tag{white-space:nowrap;border:1px solid #0000;border-radius:12px;align-items:center;gap:6px;height:24px;padding:0 10px;font-size:12px;font-weight:600;line-height:22px;display:inline-flex}.kd-tag-dot{border-radius:50%;flex:none;width:6px;height:6px}.kd-tag.no-dot{padding:0 8px}.kd-tags{flex-wrap:wrap;justify-content:center;gap:4px;display:inline-flex}.kd-layout{height:100vh;overflow:hidden}.kd-sider{border-right:1px solid var(--kd-border);z-index:20;box-shadow:2px 0 12px -6px #1f6bff1f}.kd-sider .ant-layout-sider-children{flex-direction:column;height:100%;display:flex}.kd-brand{height:var(--kd-header-h);border-bottom:1px solid var(--kd-border);flex:none;align-items:center;gap:10px;padding:0 16px;display:flex;overflow:hidden}.kd-brand-mark{color:#fff;background:linear-gradient(135deg,#4d8bff,#1452d9);border-radius:10px;flex:none;place-items:center;width:34px;height:34px;font-size:18px;display:grid;box-shadow:0 6px 14px -6px #1f6bffb3}.kd-brand-name{color:var(--kd-text);white-space:nowrap;font-size:15px;font-weight:700;line-height:20px}.kd-brand-sub{color:var(--kd-text-2);white-space:nowrap;font-size:12px;line-height:16px}.kd-menu-wrap{flex:auto;padding:6px 0 12px;overflow:hidden auto}.kd-menu.ant-menu{border-inline-end:0!important}.kd-menu .ant-menu-item-group-title{letter-spacing:1px;font-weight:600;padding:14px 20px 6px!important}.kd-menu .ant-menu-item{font-weight:500}.kd-menu .ant-menu-item-selected{font-weight:700;position:relative}.kd-menu .ant-menu-item-selected:before{content:"";background:var(--kd-primary);border-radius:0 3px 3px 0;width:3px;position:absolute;top:9px;bottom:9px;left:0}.kd-sider-foot{border-top:1px solid var(--kd-border);flex:none;padding:8px 10px}.kd-collapse-btn{width:100%;height:36px;color:var(--kd-text-2);cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;font-size:13px;display:flex}.kd-collapse-btn:hover{color:var(--kd-primary);background:#f3f7ff}.kd-header{height:var(--kd-header-h);border-bottom:1px solid var(--kd-border);z-index:10;background:#fff;align-items:center;gap:12px;padding:0 20px;display:flex;position:relative}.kd-header .ant-breadcrumb{font-size:14px}.kd-header .ant-breadcrumb li:last-child{color:var(--kd-text);font-weight:600}.kd-icon-btn{cursor:pointer;width:36px;height:36px;color:var(--kd-text);background:0 0;border:0;border-radius:10px;place-items:center;font-size:18px;display:grid;position:relative}.kd-icon-btn:hover{background:var(--kd-primary-bg);color:var(--kd-primary)}.kd-user{cursor:pointer;border-radius:20px;align-items:center;gap:10px;height:40px;padding:0 10px 0 6px;display:flex}.kd-user:hover{background:var(--kd-primary-bg)}.kd-user-name{color:var(--kd-text);font-size:14px;font-weight:600;line-height:18px}.kd-user-role{color:var(--kd-text-2);font-size:12px;line-height:16px}.kd-vsep{background:var(--kd-border);width:1px;height:20px}.kd-tabsbar{height:var(--kd-tabsbar-h);border-bottom:1px solid var(--kd-border);background:#fff;align-items:center;gap:8px;padding:0 12px 0 16px;display:flex}.kd-tabsbar-list{scrollbar-width:none;flex:auto;align-items:center;gap:6px;min-width:0;display:flex;overflow:auto hidden}.kd-tabsbar-list::-webkit-scrollbar{display:none}.kd-tabsbar-item{border:1px solid var(--kd-border);height:28px;color:var(--kd-text);cursor:pointer;white-space:nowrap;background:#f6f9ff;border-radius:7px;flex:none;align-items:center;gap:6px;padding:0 10px;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.kd-tabsbar-item:hover{color:var(--kd-primary);background:#eef4ff;border-color:#b9cffd}.kd-tabsbar-item.active{color:#fff;background:linear-gradient(135deg,#3d80ff,#1f6bff);border-color:#1f6bff;box-shadow:0 4px 10px -4px #1f6bffb3}.kd-tabsbar-item .kd-tab-close{border-radius:50%;place-items:center;width:16px;height:16px;font-size:10px;display:grid}.kd-tabsbar-item .kd-tab-close:hover{background:#1f6bff26}.kd-tabsbar-item.active .kd-tab-close:hover{background:#ffffff40}.kd-content{height:calc(100vh - var(--kd-header-h) - var(--kd-tabsbar-h));background:var(--kd-page-bg);padding:12px 16px 16px;overflow:auto}.kd-modal .ant-modal-header{border-bottom:1px solid var(--kd-border);padding-bottom:12px;margin-bottom:0!important}.kd-modal .ant-modal-body{padding-top:16px}.kd-modal .ant-modal-footer{border-top:1px solid var(--kd-border);margin-top:16px;padding-top:12px}.kd-modal-title{align-items:center;gap:10px;padding-right:28px;display:flex}.kd-modal-title>span:not(.kd-modal-sub){white-space:nowrap;flex-shrink:0}.kd-modal-title-icon{width:30px;height:30px;color:var(--kd-primary);background:var(--kd-icon-bg);border-radius:8px;place-items:center;font-size:15px;display:grid}.kd-modal-sub{min-width:0;color:var(--kd-text-2);font-size:13px;font-weight:400}.kd-form-grid{column-gap:16px;display:grid}.kd-form-grid.cols-1{grid-template-columns:minmax(0,1fr)}.kd-form-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.kd-form-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.kd-form-grid .full{grid-column:1/-1}.kd-form-grid .span-2{grid-column:span 2}.kd-note{border:1px solid;border-radius:8px;align-items:flex-start;gap:8px;padding:10px 12px;font-size:13px;line-height:20px;display:flex}.kd-note.info{background:var(--kd-primary-bg);color:#173f9c;border-color:#c7daff}.kd-note.warn{background:var(--kd-warning-bg);color:#8a3a00;border-color:#ffd5ae}.kd-note.danger{background:var(--kd-danger-bg);color:#a8231a;border-color:#ffc6bc}.kd-note.success{background:var(--kd-success-bg);color:#00612b;border-color:#b7ebc3}.kd-note b{font-weight:700}.kd-import-stage{flex-direction:column;gap:10px;padding:8px 4px;display:flex}.kd-import-title{color:var(--kd-text);align-items:center;gap:8px;font-size:15px;font-weight:700;display:flex}.kd-import-sub{color:var(--kd-text-2);font-size:13px}.kd-import-dock{z-index:990;flex-direction:column;gap:10px;width:320px;display:flex;position:fixed;bottom:20px;right:20px}.kd-import-card{border:1px solid #c7daff;border-left:4px solid var(--kd-primary);background:#fff;border-radius:12px;flex-direction:column;gap:6px;padding:12px 14px;display:flex;box-shadow:0 10px 30px #142d6e2e}.kd-import-card.done{border-color:#b7ebc3 #b7ebc3 #b7ebc3 #00a12a}.kd-import-card.failed{border-color:#ffc6bc #ffc6bc #ffc6bc #d92d20}.kd-import-card-head{align-items:center;gap:8px;display:flex}.kd-import-card-title{min-width:0;color:var(--kd-text);flex:1;font-weight:700}.kd-import-card-file{color:var(--kd-text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.kd-import-card-sub{color:var(--kd-text-2);font-size:12px}.kd-import-card-tip{color:#8a3a00;background:var(--kd-warning-bg);border-radius:6px;padding:4px 8px;font-size:12px;line-height:18px}.kd-import-card-tip.danger{color:#a8231a;background:var(--kd-danger-bg)}.kd-import-card-foot{justify-content:flex-end;gap:8px;display:flex}.kd-import-card .ant-progress{margin:0}.kd-kv{grid-template-columns:repeat(var(--cols,3), minmax(0, 1fr));gap:10px;display:grid}.kd-kv-item{background:#f6f9ff;border:1px solid #e6eefc;border-radius:10px;min-width:0;padding:10px 12px}.kd-kv-label{color:var(--kd-text-2);font-size:12px;line-height:18px}.kd-kv-value{color:var(--kd-text);font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:16px;font-weight:700;overflow:hidden}.kd-empty{text-align:center;color:var(--kd-text-2);padding:32px 0}.kd-thumbs{flex-wrap:wrap;justify-content:center;gap:6px;display:inline-flex}.kd-thumb{object-fit:cover;border:1px solid var(--kd-border);cursor:zoom-in;background:#f2f6ff;border-radius:6px;width:36px;height:36px}.kd-map{background:#eef4ff;border-radius:10px;width:100%;height:100%;position:relative;overflow:hidden}.kd-map-holder{background:linear-gradient(#1f6bff0f 1px,#0000 1px) 0 0/32px 32px,linear-gradient(90deg,#1f6bff0f 1px,#0000 1px) 0 0/32px 32px,linear-gradient(160deg,#f5f9ff,#e8f0ff);flex-direction:column;gap:12px;padding:18px;display:flex;position:absolute;inset:0}.kd-map-holder-hd{background:#fff;border:1px dashed #9fbcf7;border-radius:10px;align-items:center;gap:12px;padding:12px 14px;display:flex}.kd-map-holder-hd .ico{background:var(--kd-icon-bg);width:40px;height:40px;color:var(--kd-primary);border-radius:10px;flex:none;place-items:center;font-size:20px;display:grid}.kd-map-holder-list{border:1px solid var(--kd-border);background:#fff;border-radius:10px;flex:auto;min-height:0;overflow:auto}.kd-map-legend{z-index:500;border:1px solid var(--kd-border);background:#fff;border-radius:8px;gap:10px;padding:6px 10px;font-size:12px;display:flex;position:absolute;bottom:12px;left:12px;box-shadow:0 2px 8px #1f6bff1f}.kd-map-legend i{vertical-align:-1px;border-radius:50%;width:10px;height:10px;margin-right:4px;display:inline-block}.kd-map-info{min-width:200px;color:var(--kd-text);font-size:13px;line-height:20px}.kd-map-info b{font-size:14px}.kd-timeline .ant-timeline-item-content{color:var(--kd-text)}.kd-h5{background:linear-gradient(#1f6bff 0,#4d8bff 180px,#f3f7ff 180px);min-height:100vh}.ant-btn{font-weight:500}.ant-picker-range{width:100%}.ant-modal-confirm .ant-modal-confirm-content{color:var(--kd-text)}.ant-descriptions-item-label{font-weight:500;color:var(--kd-text-2)!important}.ant-descriptions-item-content{color:var(--kd-text)!important}.ant-empty-description{color:var(--kd-text-2)!important}.ant-form-item-explain-error{font-size:12px}.kd-cell-clip{text-overflow:ellipsis;white-space:nowrap;margin:0 auto;overflow:hidden}.kd-sum-row>td{color:#1d2129;background:#f2f6ff!important}.kd-file-tile{color:#4e5969;cursor:pointer;background:#f7f9fc;border:1px solid #e5eaf3;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:4px;text-decoration:none;display:inline-flex;overflow:hidden}.kd-file-tile:hover{background:#eaf1ff;border-color:#4d8bff}.kd-file-tile-name{color:#4e5969;white-space:nowrap;text-overflow:ellipsis;max-width:100%;padding:0 6px;font-size:11px;line-height:14px;overflow:hidden}.kd-qsheet table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:13px}.kd-qsheet th{color:#1a5ce6;text-align:center;background:#eaf1ff;border:1px solid #d5e1f7;padding:9px 8px;font-weight:700}.kd-qsheet td{text-align:center;color:#1d2129;border:1px solid #e3eaf6;padding:8px 10px}.kd-qsheet-zone{white-space:nowrap;background:#f7f9fd;font-weight:700}.kd-qsheet-big{color:#1f6bff;font-variant-numeric:tabular-nums;font-size:20px;font-weight:700}.kd-qsheet-big small{color:#4e5969;font-size:12px;font-weight:400;display:block}.kd-qsheet-v{font-variant-numeric:tabular-nums;font-size:15px;font-weight:700}.kd-qsheet-v small{color:#4e5969;font-size:12px;font-weight:400}.kd-qsheet-sub{color:#4e5969;font-size:12px}.kd-qsheet-sub-k{color:#4e5969}.kd-qsheet-red{color:#d92d20}.kd-qsheet-notes{color:#c25100;background:#fff7e6;border:1px solid #ffe0b2;border-radius:10px;margin-top:10px;padding:10px 14px;font-size:12px;line-height:1.8}.kd-qsheet-notes b{color:#1d2129;margin-bottom:2px;display:block}.kdl{color:#e6eeff;background:#030a1c;justify-content:center;align-items:center;min-height:100vh;padding:40px 32px;display:flex;position:relative;overflow:hidden}.kdl-stage{transform-origin:50% 100%;will-change:transform;background:url(./login-bg-CiEVRlFH.jpg) bottom/cover no-repeat;animation:36s ease-in-out infinite alternate kdl-drift;position:absolute;inset:0}@keyframes kdl-drift{0%{transform:scale(1)}to{transform:scale(1.06)}}.kdl-fx{width:100%;height:100%;position:absolute;inset:0}.kdl-vignette{pointer-events:none;background:radial-gradient(#0208180d 45%,#02081880 100%);position:absolute;inset:0}.kdl-flow{fill:none;stroke-linecap:round;stroke-dasharray:10 190;stroke-dashoffset:200px;animation-name:kdl-flow;animation-timing-function:linear;animation-iteration-count:infinite}.kdl-flow--halo{stroke-width:8px;opacity:.32}.kdl-flow--core{stroke-width:2.6px}@keyframes kdl-flow{0%{stroke-dashoffset:200px}to{stroke-dashoffset:0}}.kdl-ring{fill:none;stroke-width:2px;transform-box:fill-box;transform-origin:50%;animation:3s ease-out infinite kdl-ring}@keyframes kdl-ring{0%{opacity:.9;transform:scale(.4)}to{opacity:0;transform:scale(2.8)}}.kdl-node{animation:2.4s ease-in-out infinite kdl-blink}@keyframes kdl-blink{0%,to{opacity:.55}50%{opacity:1}}.kdl-label rect{fill:#081636e0;stroke:#7fb8ffb3;stroke-width:1.2px}.kdl-label text{fill:#fff;letter-spacing:1px;font-size:15px;font-weight:600}.kdl-card{z-index:1;border:1px solid #5694ff66;border-radius:22px;width:min(1360px,100%);min-height:720px;animation:.8s cubic-bezier(.2,.8,.2,1) both kdl-in;display:flex;position:relative;overflow:hidden;box-shadow:0 40px 120px -40px #0050ff8c,inset 0 1px #ffffff0f}@keyframes kdl-in{0%{opacity:0;transform:translateY(18px)scale(.985)}to{opacity:1;transform:none}}@property --kdl-angle{syntax:"<angle>";inherits:false;initial-value:0deg}.kdl-card:before{content:"";z-index:2;border-radius:inherit;pointer-events:none;background:conic-gradient(from var(--kdl-angle), transparent 0 72%, #4fe3fff2 82%, transparent 92%);-webkit-mask-composite:xor;padding:1.5px;animation:9s linear infinite kdl-spin;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}@keyframes kdl-spin{to{--kdl-angle:360deg}}.kdl-left{background:linear-gradient(#06122e80 0%,#06122e52 60%,#06122e00 100%);border-right:1px solid #5694ff40;flex-direction:column;flex:54%;padding:44px 46px;display:flex;position:relative;overflow:hidden}.kdl-brand{align-items:center;gap:16px;display:flex}.kdl-logo{color:#1f6bff;background:#fff;border-radius:14px;flex:none;place-items:center;width:58px;height:58px;font-size:28px;display:grid;box-shadow:0 8px 24px -6px #1f6bffb3}.kdl-title{letter-spacing:1px;color:#fff;font-size:26px;font-weight:800}.kdl-sub{color:#9fb4da;margin-top:2px;font-size:14px}.kdl-bar{background:linear-gradient(90deg,#2f7bff,#4cc9ff,#2f7bff) 0 0/200% 100%;border-radius:2px;width:56px;height:4px;margin-top:22px;animation:3s linear infinite kdl-bar;box-shadow:0 0 12px #3ca0ffcc}@keyframes kdl-bar{to{background-position:-200% 0}}.kdl-headline{letter-spacing:1px;color:#fff;margin-top:28px;font-size:38px;font-weight:800;line-height:1.4}.kdl-tagline{color:#b5c6e6;margin-top:10px;font-size:16px}.kdl-features{z-index:1;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:30px;display:grid;position:relative}.kdl-feature{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:linear-gradient(135deg,#18306080,#0c1c3e6b);border:1px solid #5a96ff40;border-radius:12px;align-items:center;gap:14px;padding:14px 16px;transition:border-color .2s,transform .2s,box-shadow .2s;animation:.6s cubic-bezier(.2,.8,.2,1) both kdl-up;display:flex}@keyframes kdl-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.kdl-feature:hover{border-color:#5abeffb3;transform:translateY(-2px);box-shadow:0 10px 26px -12px #288cffcc}.kdl-feature-ico{color:#cfe3ff;background:#1e469659;border:1px solid #6eaaff73;border-radius:11px;flex:none;place-items:center;width:46px;height:46px;font-size:22px;display:grid;box-shadow:inset 0 0 12px #3c8cff40}.kdl-feature-title{color:#fff;font-size:16px;font-weight:700}.kdl-feature-desc{color:#9fb4da;margin-top:2px;font-size:13px}.kdl-right{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#050f2694;flex-direction:column;flex:46%;min-width:0;padding:52px 48px 30px;display:flex}.kdl-welcome{letter-spacing:2px;color:#fff;font-size:34px;font-weight:800}.kdl-welcome-sub{color:#9fb4da;margin-top:6px;font-size:15px}.kdl-form{margin-top:26px}.kdl-form .ant-form-item-label>label{color:#dce6fa;font-size:15px}.kdl-form .ant-input-affix-wrapper{background:#06122cbf;border-color:#608cdc61}.kdl-form .ant-input-affix-wrapper:hover{border-color:#60a0ffb3}.kdl-form .ant-input-affix-wrapper-focused{border-color:#3d8bff;box-shadow:0 0 0 3px #2f7bff38,0 0 18px #2f7bff59}.kdl-form .ant-input-prefix{color:#9fb4da;margin-inline-end:10px}.kdl-options{align-items:center;gap:8px;margin-bottom:20px;font-size:14px;display:flex}.kdl-options .kdl-hint{color:#9fb4da;margin-left:auto}.kdl-login-btn.ant-btn{letter-spacing:6px;background:linear-gradient(90deg,#1f6bff,#2e8bff 60%,#3aa8ff);border:0;height:52px;font-size:17px;position:relative;overflow:hidden;box-shadow:0 12px 30px -10px #1f6bffe6}.kdl-login-btn.ant-btn:after{content:"";pointer-events:none;background:linear-gradient(100deg,#0000,#ffffff61,#0000);width:30%;height:100%;animation:4s ease-in-out infinite kdl-shine;position:absolute;top:0;left:-40%;transform:skew(-20deg)}@keyframes kdl-shine{0%,55%{left:-40%}to{left:120%}}.kdl-login-btn.ant-btn:not(:disabled):hover{background:linear-gradient(90deg,#3a7dff,#47a0ff 60%,#5ab8ff)}.kdl-demo{border-top:1px solid #5a96ff2e;margin-top:28px;padding-top:18px}.kdl-demo-hd{align-items:baseline;gap:10px;margin-bottom:12px;display:flex}.kdl-demo-hd b{color:#fff;font-size:15px}.kdl-demo-hd span{color:#9fb4da;font-size:13px}.kdl-demo-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.kdl-demo-item{min-width:0;color:inherit;text-align:left;cursor:pointer;font:inherit;background:#12244c99;border:1px solid #5a96ff38;border-radius:10px;align-items:center;gap:8px;padding:10px;transition:border-color .2s,background .2s;display:flex}.kdl-demo-item:hover:not(:disabled){background:#1c3870a6;border-color:#5aaaff99}.kdl-demo-item:disabled{cursor:default}.kdl-demo-ava{color:#fff;border-radius:9px;flex:none;place-items:center;width:30px;height:30px;font-weight:700;display:grid}.kdl-demo-text{min-width:0}.kdl-demo-name{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:700;overflow:hidden}.kdl-demo-role{color:#8ea4cc;white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.kdl-more{color:#8ea4cc;margin-top:12px;font-size:13px;line-height:1.7}.kdl-foot{text-align:center;color:#8ea4cc;margin-top:22px;font-size:13px}.kdl-foot .anticon{margin-right:6px}@media (width<=1500px){.kdl-demo-item{padding:8px}.kdl-demo-ava{border-radius:8px;width:28px;height:28px}}@media (height<=860px){.kdl{padding:16px 32px}.kdl-card{min-height:0}.kdl-left{padding-top:30px;padding-bottom:30px}.kdl-logo{width:52px;height:52px;font-size:25px}.kdl-bar{margin-top:18px}.kdl-headline{margin-top:18px;font-size:30px}.kdl-features{gap:12px;margin-top:20px}.kdl-feature{padding:10px 14px}.kdl-feature-ico{width:42px;height:42px;font-size:20px}.kdl-right{padding:32px 44px 20px}.kdl-welcome{font-size:30px}.kdl-form{margin-top:16px}.kdl-form .ant-form-item,.kdl-options{margin-bottom:16px}.kdl-demo{margin-top:18px;padding-top:14px}.kdl-foot{margin-top:14px}}@media (width<=1340px){.kdl-right{padding-left:32px;padding-right:32px}.kdl-demo-ava{width:26px;height:26px}.kdl-demo-name{font-size:12px}}@media (height<=760px){.kdl-tagline,.kdl-more{display:none}.kdl-right{padding-top:26px}}@media (width<=1100px){.kdl-left{display:none}.kdl-card{width:min(600px,100%);min-height:0}}@media (width<=560px){.kdl{padding:16px}.kdl-right{padding:32px 20px 24px}.kdl-demo-grid{grid-template-columns:repeat(2,1fr)}}@media (prefers-reduced-motion:reduce){.kdl-stage,.kdl-flow,.kdl-ring,.kdl-node,.kdl-card,.kdl-card:before,.kdl-feature,.kdl-bar,.kdl-login-btn.ant-btn:after{animation:none}.kdl-flow,.kdl-ring{display:none}}
