.system-dialog .ant-modal-content{padding:0;overflow:hidden;border-radius:10px;box-shadow:0 18px 50px #0f172a3d}.system-dialog .ant-modal-body{padding:0}.system-dialog__header{display:flex;align-items:center;gap:10px;padding:18px 22px 14px;border-bottom:1px solid #eef1f5}.system-dialog__icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;font-size:16px}.system-dialog__icon--info{color:#5bc0fb;background:#eef9ff}.system-dialog__icon--success{color:#28b28b;background:#eef9f6}.system-dialog__icon--warning{color:#b58a15;background:#fff8de}.system-dialog__icon--error{color:#ff7b6f;background:#fff0ee}.system-dialog__title{flex:1;color:#1f2937;font-size:16px;font-weight:600;line-height:24px}.system-dialog__body{padding:22px;color:#4b5563;font-size:14px;line-height:1.75}.system-dialog__content{white-space:pre-wrap;word-break:break-word}.system-dialog__detail{margin-top:14px}.system-dialog__detail pre{max-height:260px;margin:8px 0 0;padding:12px;overflow:auto;color:#475569;font-size:12px;line-height:1.6;white-space:pre-wrap;word-break:break-word;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.system-dialog__footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 22px 18px;background:#fbfcfe;border-top:1px solid #eef1f5}.system-dialog__footer .ant-btn-primary{background:#28b28b;box-shadow:none}@media(max-width:520px){.system-dialog{max-width:calc(100vw - 28px)}.system-dialog__header,.system-dialog__body,.system-dialog__footer{padding-right:16px;padding-left:16px}}.ant-message{z-index:2000}.ant-message-notice-content{border-radius:8px;box-shadow:0 4px 12px #00000014,0 0 1px #0000000a;padding:12px 16px;background:#fff;border:1px solid #DCDFE6}.ant-message-success .anticon{color:#28b28b}.ant-message-error .anticon{color:#ff7b6f}.ant-message-warning .anticon{color:#f6ce62}.ant-message-info .anticon{color:#5bc0fb}.ant-notification{z-index:2000}.ant-notification-notice{border-radius:12px;box-shadow:0 8px 24px #0000001f,0 0 1px #0000000a;background:#fff;border:1px solid #DCDFE6;padding:16px 20px;margin-bottom:12px;max-width:384px}.ant-notification-notice-message{font-size:14px;font-weight:600;color:#333;line-height:1.5}.ant-notification-notice-description{font-size:13px;color:#5f6b7a;line-height:1.6;margin-top:4px}.ant-notification-notice-success .ant-notification-notice-icon,.ant-notification-notice-success .anticon{color:#28b28b}.ant-notification-notice-error .ant-notification-notice-icon,.ant-notification-notice-error .anticon{color:#ff7b6f}.ant-notification-notice-warning .ant-notification-notice-icon,.ant-notification-notice-warning .anticon{color:#f6ce62}.ant-notification-notice-info .ant-notification-notice-icon,.ant-notification-notice-info .anticon{color:#5bc0fb}.ant-notification-notice-close{color:#9aa4b2;transition:color .18s ease}.ant-notification-notice-close:hover{color:#5f6b7a}.ant-notification-notice-progress{background:#eef2fd}.ant-notification-notice-progress .ant-progress-bg{background:#28b28b;border-radius:999px}.ant-notification-bottomRight{bottom:24px;right:24px}.ant-modal-content{border-radius:12px;box-shadow:0 20px 60px #00000026;border:1px solid #DCDFE6}.ant-modal-header{border-bottom:1px solid #DCDFE6;padding:20px 24px;border-radius:12px 12px 0 0}.ant-modal-title{font-size:16px;font-weight:600;color:#333}.ant-modal-body{padding:24px;color:#5f6b7a}.ant-modal-footer{border-top:1px solid #DCDFE6;padding:16px 24px;border-radius:0 0 12px 12px}.ant-popover-inner{border-radius:8px;box-shadow:0 4px 12px #00000014;border:1px solid #DCDFE6}.ant-popover-inner-content{padding:12px 16px}.ant-tooltip-inner{background:#333;color:#fff;border-radius:6px;font-size:12px;padding:6px 12px;box-shadow:0 2px 8px #00000026}.ant-drawer-content{background:#fff;border-left:1px solid #DCDFE6}.ant-drawer-header{border-bottom:1px solid #DCDFE6;padding:16px 24px}.ant-drawer-title{font-size:16px;font-weight:600;color:#333}.ant-drawer-body{padding:24px;color:#5f6b7a}@media(max-width:768px){.ant-notification-bottomRight{bottom:16px;right:16px;left:16px}.ant-notification-notice{max-width:100%}.ant-modal-content{border-radius:8px}.ant-modal-header,.ant-modal-body,.ant-modal-footer{padding:16px}}.login-shell{position:relative;width:100%;height:100vh;display:flex;overflow:hidden;color:#0f172a;font-family:PingFang SC,Microsoft YaHei,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.login-brand-side{position:relative;flex:7;min-width:0;overflow:hidden;background:linear-gradient(158deg,#eaf5ee,#f2f8f5 60%,#f6fbf8)}.login-form-side{position:relative;flex:3;min-width:440px;display:flex;align-items:center;justify-content:center;padding:40px;background:#fff;border-left:1px solid rgba(40,178,139,.18)}.login-decor{position:absolute;pointer-events:none}.login-decor--mesh{inset:-8%;z-index:0;background:radial-gradient(circle at 22% 76%,rgba(40,178,139,.3),transparent 42%),radial-gradient(circle at 80% 22%,rgba(92,214,168,.24),transparent 40%),radial-gradient(circle at 65% 82%,rgba(26,138,107,.2),transparent 50%);filter:blur(4px);animation:meshDrift 26s ease-in-out infinite}.login-decor--grid{inset:0;z-index:0;background-image:linear-gradient(rgba(26,138,107,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(26,138,107,.07) 1px,transparent 1px);background-size:42px 42px;-webkit-mask-image:radial-gradient(circle at 30% 72%,#000 12%,transparent 72%);mask-image:radial-gradient(circle at 30% 72%,#000 12%,transparent 72%)}@keyframes meshDrift{0%,to{transform:translate(0) scale(1)}50%{transform:translate(2%,1%) scale(1.04)}}.login-brand-content{position:absolute;left:clamp(48px,5vw,88px);bottom:clamp(48px,5vw,88px);right:clamp(48px,5vw,88px);max-width:560px;z-index:2;text-align:left}.login-brand-badge{width:64px;height:64px;margin:0 0 28px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #A8E5D0;border-radius:16px;box-shadow:0 6px 18px #28b28b24}.login-brand-badge img{width:42px;height:auto;object-fit:contain}.login-brand-eyebrow{margin:0 0 14px;font-size:12px;font-weight:600;letter-spacing:.42em;color:#1a8a6b}.login-brand-title{margin:0;font-size:clamp(34px,3.6vw,46px);font-weight:800;line-height:1.1;letter-spacing:.04em;color:#0f172a}.login-brand-line{width:48px;height:3px;margin:18px 0;background:#28b28b;border-radius:2px}.login-brand-slogan{margin:0;font-size:15px;letter-spacing:.06em;color:#334155}.login-brand-company{margin:40px 0 0;font-size:12px;letter-spacing:.08em;color:#64748b}.login-form-card{position:relative;z-index:2;width:100%;max-width:360px;padding:40px 34px;background:#fff;border:1px solid #E2E8F0;border-radius:12px;box-shadow:0 1px 2px #0f172a0a,0 12px 36px #0f172a1a}.login-form-card:after{content:"";position:absolute;top:-1px;left:22%;right:22%;height:2px;background:linear-gradient(90deg,transparent,#28B28B,transparent);border-radius:2px}.login-submit-btn{height:44px!important;font-size:15px!important;font-weight:600!important;letter-spacing:6px!important;color:#fff!important;background:#28b28b!important;border:none!important;border-radius:8px!important;box-shadow:0 6px 16px #28b28b4d!important;position:relative;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.login-submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 22px #28b28b66!important}.login-submit-btn:before{content:"";position:absolute;top:0;left:-120%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);transition:left .6s ease}.login-submit-btn:hover:not(:disabled):before{left:120%}.login-submit-btn:disabled{background:#28b28b66!important;color:#ffffffb3!important;box-shadow:none!important}.login-ghost-btn{height:44px!important;background:#fff!important;border:1px solid #D9D9D9!important;color:#475569!important;border-radius:8px!important}.login-ghost-btn:hover{border-color:#28b28b!important;color:#28b28b!important}@media(max-width:1280px){.login-brand-title{font-size:clamp(28px,3.2vw,38px)}}@media(max-width:960px){.login-brand-side{display:none}.login-form-side{flex:1;min-width:0;padding:24px;border-left:none}.login-form-card{max-width:400px}}@media(max-width:480px){.login-form-side{padding:16px;align-items:flex-start}.login-form-card{max-width:none;padding:32px 24px;border-radius:10px}}@media(prefers-reduced-motion:reduce){.login-decor--mesh{animation:none}}.role-selector{display:inline-flex;align-items:center}.role-selector-button{cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:100px;height:32px;padding:0 10px;background:transparent;border:none;border-radius:6px;color:#64748b;font-size:13px;font-weight:500;transition:all .2s ease;-webkit-user-select:none;user-select:none}.role-selector-button--readonly{cursor:default;background:transparent}.role-selector-button:hover{color:#28b28b;background:#f0f7f5;box-shadow:0 1px 3px #00000014}.role-selector-button--readonly:hover{background:transparent;box-shadow:none}.role-selector-button:focus-visible{outline:2px solid #28B28B;outline-offset:2px}.role-selector-button:focus:not(:focus-visible){outline:none}.role-display{display:flex;align-items:center;gap:8px;justify-content:center}.role-display .role-icon{font-size:16px;line-height:1;display:flex;align-items:center;margin:0 2px}.role-display .role-name{font-size:13px;font-weight:500;color:#262626;line-height:1}.role-dropdown-icon{font-size:11px;color:#8c8c8c;transition:transform .2s ease;margin-left:4px}.role-selector-button:hover .role-dropdown-icon{transform:rotate(180deg)}.role-selector-dropdown,.role-selector-dropdown-custom,.role-selector-popup,.role-selector-menu,.role-selector-dropdown .ant-dropdown-menu,.role-selector-dropdown-custom .ant-dropdown-menu,.role-selector-popup .ant-dropdown-menu{min-width:220px!important;max-width:300px!important}.role-selector-menu .ant-menu-item,.role-selector-dropdown .ant-dropdown-menu-item,.role-selector-dropdown-custom .ant-dropdown-menu-item,.role-selector-popup .ant-dropdown-menu-item{height:auto!important;min-height:auto!important;padding:10px 12px!important;line-height:1.4!important}.role-selector-menu .ant-menu-item .ant-menu-title-content,.role-selector-dropdown .ant-dropdown-menu-item .ant-dropdown-menu-item-content,.role-selector-dropdown-custom .ant-dropdown-menu-item .ant-dropdown-menu-item-content,.role-selector-popup .ant-dropdown-menu-item .ant-dropdown-menu-item-content{white-space:normal!important;display:flex!important;flex-direction:column!important;width:100%!important}.role-selector-menu div,.role-selector-menu span,.role-selector-dropdown div,.role-selector-dropdown span,.role-selector-dropdown-custom div,.role-selector-dropdown-custom span,.role-selector-popup div,.role-selector-popup span{white-space:normal!important;word-wrap:break-word!important}.role-selector-menu .ant-menu-item-content>div,.role-selector-dropdown .ant-dropdown-menu-item-content>div,.role-selector-dropdown-custom .ant-dropdown-menu-item-content>div,.role-selector-popup .ant-dropdown-menu-item-content>div{display:block!important;visibility:visible!important}.role-menu-item-footer{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:4px}.role-menu-item-footer .role-description{font-size:12px;color:#8c8c8c;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.role-tag-count{font-size:10px;padding:0 4px;height:18px;line-height:18px;border-radius:2px;flex-shrink:0}.role-selector-button--loading{cursor:wait;opacity:.7}.role-loading-text{font-size:13px;color:#8c8c8c;margin-left:4px}.role-selector-menu .ant-menu-title-content,.role-selector-menu .ant-menu-item-content{white-space:normal!important}.role-selector-menu{min-width:220px;max-width:300px;border-radius:8px;box-shadow:0 2px 8px #00000026}.role-selector-menu .ant-dropdown-menu-item,.role-selector-menu .ant-menu-item{padding:10px 12px!important;transition:all .2s ease;min-height:auto;height:auto}.role-selector-menu .ant-dropdown-menu-item:hover,.role-selector-menu .ant-menu-item:hover{background-color:#f0f7f5}:is(.role-selector-popup,.role-selector-menu,.rc-dropdown-menu,[class*=dropdown]) :is(.role-menu-item-selected,.ant-dropdown-menu-item-selected,.ant-menu-item-selected,[class*=selected]){background-color:#e6f7f2!important}:is(.role-selector-popup,.role-selector-menu,.rc-dropdown-menu,[class*=dropdown]) :is(.role-menu-item-selected,.ant-dropdown-menu-item-selected,.ant-menu-item-selected,[class*=selected]):hover{background-color:#d1efe5!important}li.role-menu-item-selected,.ant-dropdown-menu-item.role-menu-item-selected,[class*=dropdown] [class*=role-menu-item-selected]{background-color:#e6f7f2!important}li.role-menu-item-selected:hover,.ant-dropdown-menu-item.role-menu-item-selected:hover,[class*=dropdown] [class*=role-menu-item-selected]:hover{background-color:#d1efe5!important}.role-menu-item-content{width:100%;padding:0;display:flex!important;flex-direction:column!important}.role-menu-item-header{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:2px}.role-menu-item-header .role-name{font-weight:500;color:#262626;font-size:14px}.role-selector-menu .ant-dropdown-menu-item .ant-dropdown-menu-item-icon,.role-selector-menu .ant-menu-item .anticon{font-size:16px;margin-right:8px}.role-selector-menu .ant-dropdown-menu-item-content,.role-selector-menu .ant-menu-title-content,.role-selector-menu .ant-dropdown-menu-item .ant-dropdown-menu-item-label,.role-selector-menu .ant-menu-item .ant-menu-title-content{display:flex!important;flex-direction:column!important;width:100%!important;white-space:normal!important}.role-selector-menu .ant-menu-title-content{display:flex!important;flex-direction:column!important;width:100%!important}.role-selector-menu .ant-menu-item .ant-menu-title-content{white-space:normal!important}.role-selector-menu .ant-menu-item>*{display:block!important}.role-selector-menu .ant-menu-item .ant-menu-title-content>*{display:block!important}.role-selector-menu div,.role-selector-menu span{white-space:normal!important}.role-selector-menu .role-description,.role-selector-menu div[class*=role-description],.role-selector-menu span[class*=role-description]{display:block!important;visibility:visible!important;opacity:1!important;font-size:12px!important;color:#8c8c8c!important;margin-top:4px!important}.role-tag-current{font-size:10px;padding:0 4px;height:18px;line-height:18px;border-radius:2px}.role-tag{font-weight:500}@media(max-width:768px){.role-selector{margin-right:8px}.role-display .role-name{font-size:12px}.role-selector-menu{min-width:180px}}@media(prefers-color-scheme:dark){.role-selector-button{background-color:#1f1f1f;border-color:#3f3f3f}.role-selector-button:hover{background-color:#34d39926;border-color:#34d3994d}.role-selector-button--readonly{background-color:#1a1a1a;border-color:#3f3f3f}.role-display .role-name{color:#d9d9d9}.role-dropdown-icon{color:#bfbfbf}.role-menu-item-header .role-name{color:#e8e8e8}.role-selector-menu .role-menu-item-selected{background-color:#34d39933}}@media(prefers-contrast:high){.role-display .role-name{color:#000}.role-selector-button{border:1px solid #d9d9d9}}.role-selector-button:focus{outline:2px solid #1890ff;outline-offset:2px}@media(prefers-reduced-motion:reduce){.role-dropdown-icon,.role-selector-menu .ant-dropdown-menu-item{transition:none}}.portal-toolbar{display:flex;align-items:center;max-width:100%;min-width:0;overflow:hidden;height:40px;padding:4px;background:#f5f7fa;border-radius:10px;gap:4px}.portal-toolbar-group{display:inline-flex;align-items:center;gap:6px;padding:0 10px;min-width:0}.portal-toolbar-group:first-child{flex:1 1 auto;min-width:0;overflow-x:auto;scrollbar-width:none}.portal-toolbar-group:first-child::-webkit-scrollbar{display:none}.portal-toolbar-group:last-of-type{flex-shrink:0}.portal-toolbar-group:first-child{padding-left:0}.portal-toolbar-group:last-child{padding-right:0}.portal-toolbar-label{display:none}.portal-toolbar-divider{width:2px;height:28px;background:linear-gradient(180deg,#e2e8f0,#cbd5e1,#e2e8f0);margin:0 8px;border-radius:1px}.portal-toolbar-button{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:80px;height:32px;padding:0 10px;background:transparent;border:none;border-radius:6px;color:#64748b;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none}.portal-toolbar-button--icon-only{min-width:32px;width:32px;padding:0;justify-content:center}.portal-toolbar-button:hover:not(.active):not(:disabled){color:#28b28b;background:#f0f7f5}.portal-toolbar-button.active{color:#28b28b;background:#e6f7f2;box-shadow:0 1px 3px #00000014}.portal-toolbar-button:disabled{cursor:not-allowed;opacity:.5}.portal-toolbar-button .anticon{font-size:16px;line-height:1;color:currentColor}.portal-toolbar-button .anticon svg{display:block;width:1em;height:1em;fill:currentColor}.portal-toolbar-button:focus-visible{outline:2px solid #28B28B;outline-offset:2px}.portal-toolbar-button:focus:not(:focus-visible){outline:none}.portal-toolbar-toggle{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:none;border-radius:6px;color:#64748b;cursor:pointer;transition:all .2s ease;flex-shrink:0}.portal-toolbar-toggle:hover{color:#28b28b;background:#fff}.portal-toolbar-toggle:focus-visible{outline:2px solid #28B28B;outline-offset:2px}.portal-toolbar-toggle:focus:not(:focus-visible){outline:none}.portal-toolbar-toggle .anticon{font-size:16px;line-height:1}.portal-toolbar.collapsed .portal-toolbar-button{min-width:40px;width:40px;padding:0;justify-content:center}.portal-toolbar.collapsed{flex-wrap:nowrap;overflow:visible}.portal-toolbar.collapsed .portal-toolbar-user{padding:4px 12px;min-width:120px;display:inline-flex;visibility:visible;flex-shrink:0}.portal-toolbar.collapsed .portal-toolbar-user .ant-avatar{width:28px!important;height:28px!important;min-width:28px;min-height:28px;flex-shrink:0}.portal-toolbar.collapsed .portal-toolbar-user span{opacity:1!important;transform:translate(0)!important;pointer-events:auto!important}.portal-toolbar-user__name--collapsed{display:inline-block;max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-toolbar-button .scene-label,.portal-toolbar-user span{transition:opacity .2s ease,transform .2s ease;opacity:1;transform:translate(0)}.portal-toolbar.collapsed .portal-toolbar-button .scene-label,.portal-toolbar.collapsed .portal-toolbar-user span{opacity:0;transform:translate(-8px);pointer-events:none}.portal-toolbar-user{display:inline-flex;align-items:center;gap:8px;padding:4px 12px;margin-left:8px;border-radius:8px;cursor:pointer;transition:all .2s ease}.portal-toolbar-user:hover{background:#fff}.portal-toolbar-user .ant-avatar{background:linear-gradient(135deg,#28b28b,#1a8a6b);width:28px;height:28px;line-height:28px}.portal-toolbar-user .ant-avatar .anticon{font-size:14px;color:#fff}.portal-toolbar-user span{color:#64748b;font-size:13px;font-weight:500;line-height:1.4;white-space:nowrap}@media(max-width:768px){.portal-toolbar{gap:2px}.portal-toolbar-group{padding:0 6px}.portal-toolbar-user span{display:none}}@media(prefers-reduced-motion:reduce){.portal-toolbar-button,.portal-toolbar-user{transition:none}}@media(prefers-color-scheme:dark){.portal-toolbar{background:#1f2937}.portal-toolbar-button{color:#9ca3af}.portal-toolbar-button:hover:not(.active):not(:disabled){color:#34d399;background:#34d39926}.portal-toolbar-button.active{color:#34d399;background:#34d39933;box-shadow:0 1px 3px #0000004d}.portal-toolbar-toggle{color:#9ca3af}.portal-toolbar-toggle:hover{color:#34d399;background:#374151}.portal-toolbar-user span{color:#d1d5db}.portal-toolbar-divider{background:linear-gradient(180deg,#374151,#4b5563,#374151)}}.portal-layout{height:100vh;min-height:0;background:#eef2fd;overflow:hidden}.portal-layout__main{min-width:0;height:100vh;min-height:0;overflow:hidden}.portal-sidebar{height:100vh;overflow:hidden;background:#fff!important;border-right:1px solid #DCDFE6}.portal-sidebar .ant-layout-sider-children{height:100%;min-height:0;display:flex;flex-direction:column}.portal-sidebar__brand{flex:0 0 56px;display:flex;align-items:center;justify-content:center;gap:12px;padding:0 16px;border-bottom:1px solid #DCDFE6}.portal-sidebar__brand-logo{height:28px;width:auto;object-fit:contain;flex-shrink:0}.portal-sidebar__brand-logo--collapsed{height:28px}.portal-sidebar__brand-text{font-weight:700;font-size:18px;color:#28b28b;white-space:nowrap;overflow:hidden}.portal-sidebar__menu{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:8px 0}.portal-sidebar__menu .ant-menu{border-inline-end:0!important}.portal-sidebar__menu::-webkit-scrollbar{width:6px}.portal-sidebar__menu::-webkit-scrollbar-thumb{background:#c0c4cc;border-radius:999px}.portal-sidebar__menu::-webkit-scrollbar-track{background:transparent}.portal-sidebar__collapse{flex:0 0 44px;display:flex;align-items:center;justify-content:center;border-top:1px solid #DCDFE6;background:#fff}.portal-layout__chrome{flex:0 0 36px;min-width:0;background:#fff;border-bottom:1px solid #DCDFE6}.portal-top-nav__left{min-width:0;display:flex;align-items:center;gap:8px}.portal-top-nav__breadcrumb{min-width:0;color:#7b8794;white-space:nowrap}.portal-top-nav__right{flex:0 0 auto;display:flex;align-items:center;gap:12px;min-width:0;overflow:visible}.portal-top-nav__tools{display:inline-flex;align-items:center;height:32px;padding:0 4px;border:1px solid #DCDFE6;border-radius:8px;background:#fff}.portal-top-nav__tool{width:30px;height:30px;color:#5f6b7a;border-radius:6px}.portal-top-nav__tool:hover{color:#28b28b!important;background:#eef9f6!important}.portal-top-nav__user{max-width:180px;cursor:pointer}.portal-top-nav__user span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-tabs{display:flex;align-items:center;width:100%;height:36px;min-width:0}.portal-tabs__viewport{flex:1 1 auto;min-width:0;height:100%;overflow:hidden;border-left:1px solid #DCDFE6;border-right:1px solid #DCDFE6}.portal-tabs__track{display:flex;align-items:flex-end;height:100%;min-width:0;overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;scrollbar-width:none}.portal-tabs__track::-webkit-scrollbar{display:none}.portal-tabs__item{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;max-width:180px;height:32px;margin:4px 0 0;padding:0 10px;color:#5f6b7a;font-size:13px;line-height:32px;white-space:nowrap;cursor:pointer;background:#fff;border:0;border-right:1px solid #DCDFE6;border-top:2px solid transparent;outline:none;transition:color .18s ease,background .18s ease,border-color .18s ease}.portal-tabs__item:hover{color:#28b28b;background:#eef9f6}.portal-tabs__item--active{color:#28b28b;font-weight:500;background:#eef9f6;border-top-color:#28b28b}.portal-tabs__home-icon{font-size:12px}.portal-tabs__label{min-width:0;overflow:hidden;text-overflow:ellipsis}.portal-tabs__close{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;color:#9aa4b2;font-size:10px;cursor:pointer;background:transparent;border:0;border-radius:50%}.portal-tabs__close:hover{color:#fff;background:#9aa4b2}.portal-tabs__control{flex:0 0 34px;width:34px;height:36px;border-radius:0;border-left:1px solid #DCDFE6}.portal-tabs__control:last-child{border-right:1px solid #DCDFE6}.portal-tabs__more{border-left:0}.portal-layout__content{height:calc(100vh - 92px);min-height:0;box-sizing:border-box;padding:20px;overflow:auto}.ant-card.ant-card-small>.ant-card-head{padding:16px 24px!important}.ant-card.ant-card-small>.ant-card-body{padding:16px 24px!important}.portal-layout__content>.ant-card{background:#fff;border:1px solid #DCDFE6;border-radius:8px;box-shadow:0 1px 2px #141e320d}@media(max-width:768px){.portal-top-nav{padding:0 10px!important}.portal-top-nav__breadcrumb{max-width:52vw;overflow:hidden}.portal-top-nav__right{gap:6px}.portal-top-nav__tools{padding:0 2px}.portal-top-nav__tool{width:28px}.portal-top-nav__user span:last-child{display:none}.portal-tabs__item{max-width:128px;padding:0 8px}.portal-tabs__control{flex-basis:30px;width:30px}.portal-layout__content{padding:8px}}:root{--color-primary: #28B28B;--color-primary-hover: #249A77;--color-primary-active: #1F8763;--color-primary-light: rgba(40, 178, 139, .1);--color-primary-lighter: rgba(40, 178, 139, .06);--color-success: #22C55E;--color-warning: #F59E0B;--color-error: #EF4444;--color-info: #3B82F6;--color-bg-primary: #FFFFFF;--color-bg-secondary: #F8FAFC;--color-bg-tertiary: #F1F5F9;--color-bg-elevated: #FFFFFF;--color-text-primary: #1E293B;--color-text-secondary: #475569;--color-text-tertiary: #64748B;--color-text-disabled: #94A3B8;--color-border: #E2E8F0;--color-border-light: #F1F5F9;--color-divider: #E5E7EB;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .08), 0 2px 4px -1px rgba(0, 0, 0, .04);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .08), 0 4px 6px -2px rgba(0, 0, 0, .04);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .08), 0 10px 10px -5px rgba(0, 0, 0, .04);--radius-xs: 4px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--spacing-0: 0;--spacing-1: 4px;--spacing-2: 8px;--spacing-3: 12px;--spacing-4: 16px;--spacing-5: 20px;--spacing-6: 24px;--spacing-8: 32px;--spacing-10: 40px;--spacing-12: 48px;--spacing-16: 64px;--spacing-20: 80px;--font-sans: "Fira Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", sans-serif;--font-mono: "Fira Code", "SF Mono", "Monaco", "Cascadia Code", monospace;--text-xs: 12px;--text-sm: 13px;--text-base: 14px;--text-lg: 16px;--text-xl: 18px;--text-2xl: 20px;--text-3xl: 24px;--text-4xl: 30px;--text-5xl: 36px;--leading-tight: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.75;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--z-base: 0;--z-dropdown: 10;--z-sticky: 20;--z-fixed: 30;--z-modal-backdrop: 40;--z-modal: 50;--z-popover: 60;--z-tooltip: 70;--z-toast: 80;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .2s cubic-bezier(.4, 0, .2, 1);--transition-normal: .25s cubic-bezier(.16, 1, .3, 1);--transition-slow: .35s cubic-bezier(.16, 1, .3, 1);--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-2xl: 1536px}@media(prefers-color-scheme:dark){:root{--color-primary: #28B28B;--color-primary-hover: #34C69D;--color-primary-active: #3DD0A6;--color-primary-light: rgba(40, 178, 139, .2);--color-primary-lighter: rgba(40, 178, 139, .15);--color-bg-primary: #0F172A;--color-bg-secondary: #1E293B;--color-bg-tertiary: #334155;--color-bg-elevated: #1E293B;--color-text-primary: #F8FAFC;--color-text-secondary: #E2E8F0;--color-text-tertiary: #CBD5E1;--color-text-disabled: #64748B;--color-border: #334155;--color-border-light: #1E293B;--color-divider: #475569;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .2);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4), 0 2px 4px -1px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .5), 0 4px 6px -2px rgba(0, 0, 0, .3);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .6), 0 10px 10px -5px rgba(0, 0, 0, .4)}}*,*:before,*:after{box-sizing:border-box}html{font-size:14px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{margin:0;padding:0;font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text-primary);background-color:var(--color-bg-secondary);min-height:100vh}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius-xs)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.menu-search-wrapper{display:inline-block;width:100%;max-width:600px}.menu-search-input{width:100%;border-radius:var(--radius-base, 8px);box-shadow:var(--shadow-sm, 0 1px 2px rgba(0, 0, 0, .05));transition:all var(--duration-base, .25s) var(--easing-out, cubic-bezier(0, 0, .2, 1))}.menu-search-input:hover,.menu-search-input:focus,.menu-search-input.ant-input-affix-wrapper-focused{box-shadow:var(--shadow-md, 0 4px 6px rgba(0, 0, 0, .1)),0 0 0 2px var(--color-primary-light, #5CD6A8);border-color:var(--color-primary, #28B28B)}.menu-search-input-icon{color:var(--color-text-secondary, #8C8C8C);font-size:16px}.menu-search-clear-icon{color:var(--color-text-tertiary, #BFBFBF);font-size:14px;cursor:pointer;transition:color var(--duration-fast, .15s)}.menu-search-clear-icon:hover{color:var(--color-text-secondary, #8C8C8C)}.menu-search-popover{max-width:600px}.menu-search-popover .ant-popover-inner{padding:0;border-radius:var(--radius-md, 10px);box-shadow:var(--shadow-xl, 0 20px 25px rgba(0, 0, 0, .1)),0 10px 10px #0000000a );overflow:hidden}.menu-search-content{padding:var(--spacing-4, 16px);min-height:200px;max-height:500px;overflow-y:auto}.menu-search-results{margin:0}.menu-search-results .ant-list-item{padding:0;border:none;margin-bottom:var(--spacing-2, 8px)}.menu-search-result-item{display:flex;align-items:center;padding:var(--spacing-3, 12px) var(--spacing-4, 16px);border-radius:var(--radius-base, 8px);cursor:pointer;transition:all var(--duration-fast, .15s) var(--easing-out);background:transparent;border:1px solid transparent}.menu-search-result-item:hover{background:var(--color-bg-base, #F0F2F5)}.menu-search-result-item.active{background:var(--color-primary-lighter, #A8E5D0);border-color:var(--color-primary-light, #5CD6A8);box-shadow:var(--shadow-sm, 0 1px 2px rgba(0, 0, 0, .05))}.menu-search-result-content{display:flex;align-items:center;gap:var(--spacing-3, 12px);width:100%}.menu-search-result-icon{font-size:18px;color:var(--color-primary, #28B28B);flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.menu-search-result-text{flex:1;min-width:0}.menu-search-result-title{display:flex;align-items:center;gap:var(--spacing-2, 8px);font-weight:var(--font-weight-medium, 500);margin-bottom:var(--spacing-1, 4px);font-size:var(--font-size-base, 16px);color:var(--color-text-primary, #262626)}.menu-search-result-tag{font-size:var(--font-size-xs, 12px);padding:2px 6px;border-radius:var(--radius-sm, 4px);background:var(--color-bg-base, #F0F2F5);border:1px solid var(--color-border-base, #D9D9D9);white-space:nowrap}.menu-search-result-path{font-size:var(--font-size-sm, 14px);color:var(--color-text-secondary, #8C8C8C);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-search-highlight{background:var(--color-warning-light, #FFD666);color:var(--color-text-primary, #262626);padding:0 2px;border-radius:var(--radius-sm, 4px);font-weight:var(--font-weight-semibold, 600)}.menu-search-relevance-icon{color:var(--color-warning, #FAAD14);font-size:14px;flex-shrink:0}.menu-search-more{padding:var(--spacing-3, 12px);text-align:center;border-top:1px solid var(--color-border-secondary, #F0F0F0);margin-top:var(--spacing-2, 8px)}.menu-search-shortcuts{padding:var(--spacing-4, 16px);background:var(--color-bg-base, #F0F2F5);border-radius:var(--radius-base, 8px);margin-bottom:var(--spacing-4, 16px)}.menu-search-shortcut-item{display:flex;align-items:center;gap:var(--spacing-3, 12px)}.menu-search-shortcut-item kbd{display:inline-flex;align-items:center;justify-content:center;min-width:32px;padding:4px 8px;font-size:var(--font-size-xs, 12px);font-weight:var(--font-weight-medium, 500);color:var(--color-text-secondary, #8C8C8C);background:var(--color-bg-container, #FFFFFF);border:1px solid var(--color-border-base, #D9D9D9);border-radius:var(--radius-sm, 4px);box-shadow:var(--shadow-sm, 0 1px 2px rgba(0, 0, 0, .05))}.menu-search-empty{padding:var(--spacing-8, 32px) var(--spacing-4, 16px)}.menu-search-divider{margin:var(--spacing-4, 16px) 0;font-size:var(--font-size-xs, 12px)}.menu-search-content::-webkit-scrollbar{width:6px}.menu-search-content::-webkit-scrollbar-track{background:transparent}.menu-search-content::-webkit-scrollbar-thumb{background:var(--color-border-base, #D9D9D9);border-radius:var(--radius-full, 9999px)}.menu-search-content::-webkit-scrollbar-thumb:hover{background:var(--color-text-tertiary, #BFBFBF)}@keyframes searchResultEnter{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.menu-search-result-item{animation:searchResultEnter var(--duration-base, .25s) var(--easing-out, cubic-bezier(0, 0, .2, 1))}.menu-search-result-item:nth-child(1){animation-delay:0ms}.menu-search-result-item:nth-child(2){animation-delay:25ms}.menu-search-result-item:nth-child(3){animation-delay:50ms}.menu-search-result-item:nth-child(4){animation-delay:75ms}.menu-search-result-item:nth-child(5){animation-delay:.1s}.menu-search-result-item:nth-child(6){animation-delay:125ms}.menu-search-result-item:nth-child(7){animation-delay:.15s}.menu-search-result-item:nth-child(8){animation-delay:175ms}@media(max-width:768px){.menu-search-wrapper{max-width:100%}.menu-search-popover{max-width:calc(100vw - 32px)}.menu-search-content{max-height:400px}.menu-search-shortcuts{display:none}}@media(prefers-reduced-motion:reduce){.menu-search-result-item{animation:none}.menu-search-input,.menu-search-result-item{transition:none}}@media(prefers-contrast:high){.menu-search-result-item{border:1px solid var(--color-border-base, #D9D9D9)}.menu-search-result-item.active{border-width:2px}.menu-search-highlight{background:var(--color-warning, #FAAD14)}}.scene-switcher{--color-bg-container: #ffffff;--color-scene-inactive: #f5f5f5;--color-scene-inactive-hover: #e6f4ff;--color-scene-text-inactive: #666666;--color-scene-active: #1890ff;--color-scene-text-active: #ffffff;--color-scene-border-inactive: #d9d9d9;--color-scene-border-active: #1890ff;--color-primary: #1890ff;--color-primary-dark: #096dd9;--color-bg-base: #ffffff;--touch-target-min: 44px;--radius-base: 6px;--radius-lg: 8px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .03);--shadow-focus: 0 0 0 2px rgba(24, 144, 255, .2);--duration-fast: .15s;--duration-base: .2s;--easing-out: cubic-bezier(.215, .61, .355, 1);--font-size-xs: 11px;--font-size-sm: 12px;--font-weight-medium: 500;--font-weight-semibold: 600}.scene-switcher{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--color-bg-container);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);position:relative;z-index:10}.scene-switcher--empty{justify-content:center;min-width:200px}.scene-empty-message{display:flex;align-items:center;gap:8px;color:var(--color-scene-text-inactive);font-size:var(--font-size-sm);padding:12px 16px}.scene-empty-message .anticon{font-size:16px}.scene-tab{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:var(--touch-target-min);min-width:80px;padding:8px 16px;gap:4px;background:transparent;border:2px solid transparent;border-radius:var(--radius-base);cursor:pointer;transition:all var(--duration-fast) var(--easing-out);outline:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.scene-tab:not(.active){background:var(--color-scene-inactive);color:var(--color-scene-text-inactive);border-color:var(--color-scene-border-inactive)}.scene-tab:not(.active):hover{background:var(--color-scene-inactive-hover);transform:translateY(-1px)}.scene-tab:not(.active):active{transform:translateY(0)}.scene-tab.active{background:var(--color-scene-active);color:var(--color-scene-text-active);border-color:var(--color-scene-border-active);font-weight:var(--font-weight-semibold)}.scene-tab.active:hover{background:var(--color-primary-dark)}.scene-tab:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.scene-tab.switching{position:relative;overflow:hidden}.scene-tab.switching:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 1.5s infinite}@keyframes shimmer{0%{left:-100%}to{left:100%}}.scene-tab:focus-visible{outline:none;box-shadow:var(--shadow-focus);border-color:var(--color-primary)}.scene-tab.focused{border-color:var(--color-primary)}.scene-icon{font-size:20px;line-height:1;transition:transform var(--duration-fast) var(--easing-out)}.scene-tab:hover .scene-icon{transform:scale(1.1)}.scene-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:1.2;white-space:nowrap}.scene-indicator{position:absolute;bottom:2px;left:50%;transform:translate(-50%);width:24px;height:3px;background:var(--color-bg-container);border-radius:var(--radius-full);animation:slideIn var(--duration-base) var(--easing-out)}@keyframes slideIn{0%{width:0;opacity:0}to{width:24px;opacity:1}}.scene-loading{position:absolute;top:4px;right:4px;display:flex;align-items:center;justify-content:center;width:16px;height:16px}.loading-spinner{animation:spin 1s linear infinite}.loading-path{stroke:var(--color-bg-container);stroke-linecap:round;stroke-dasharray:90,150;stroke-dashoffset:0;animation:dash 1.5s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes dash{0%{stroke-dasharray:1,150;stroke-dashoffset:0}50%{stroke-dasharray:90,150;stroke-dashoffset:-35}to{stroke-dasharray:90,150;stroke-dashoffset:-124}}.scene-panel{display:none;animation:fadeIn var(--duration-base) var(--easing-out)}.scene-panel.active{display:block}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:767px){.scene-switcher{display:none}}@media(min-width:768px)and (max-width:1023px){.scene-switcher{padding:6px 12px}.scene-tab{min-width:70px;padding:6px 12px;gap:2px}.scene-icon{font-size:18px}.scene-label{font-size:var(--font-size-xs)}}@media(min-width:1024px)and (max-width:1279px){.scene-tab{min-width:75px}}@media(prefers-reduced-motion:reduce){.scene-tab,.scene-icon,.scene-indicator,.loading-spinner,.loading-path,.scene-panel{animation-duration:.01ms!important;transition-duration:.01ms!important}.scene-tab:hover .scene-icon{transform:none}}@media(prefers-contrast:high){.scene-tab{border-width:3px}.scene-tab:focus-visible{outline:3px solid currentColor;outline-offset:2px}}.monitor-flat-nav{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--color-bg-container, #fff);border-radius:var(--radius-lg, 8px)}.monitor-flat-nav.compact{padding:4px 8px;gap:4px}.monitor-nav-button{min-height:40px;min-width:100px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;border:1px solid var(--color-border, #e8e8e8);border-radius:var(--radius-base, 6px);background:var(--color-bg-container, #fff);color:var(--color-text, #5f6b7a);font-size:14px;font-weight:500;cursor:pointer;transition:all .15s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none}.monitor-nav-button.compact{min-width:40px;padding:8px}.monitor-nav-button:hover:not(.active){background:var(--color-bg-text-hover, #f0f7f5);color:var(--color-primary, #28B28B);border-color:var(--color-primary, #28B28B);transform:translateY(-1px);box-shadow:0 2px 4px #28b28b1a}.monitor-nav-button.active{background:linear-gradient(135deg,#28b28b,#1a8a6b);color:#fff;border-color:transparent;box-shadow:0 2px 8px #28b28b40}.monitor-nav-button:active{transform:translateY(0)}.monitor-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;background:var(--color-bg-container, #fff);border-bottom:1px solid var(--color-border, #e8e8e8);min-height:64px}.monitor-toolbar-left{flex:1 1 auto;min-width:0;overflow-x:auto;overflow-y:hidden}.monitor-toolbar-left::-webkit-scrollbar{height:4px}.monitor-toolbar-left::-webkit-scrollbar-thumb{background:var(--color-border-secondary, #c0c4cc);border-radius:2px}.monitor-toolbar-right{flex:0 0 auto;display:flex;align-items:center;gap:12px}.monitor-toolbar-status{flex:0 0 auto}.monitor-status-indicator{display:flex;align-items:center;gap:16px;padding:8px 12px;background:var(--color-bg-layout, #f5f5f5);border-radius:var(--radius-base, 6px)}.status-item{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:48px}.status-label{font-size:11px;color:var(--color-text-secondary, #9aa4b2);text-transform:uppercase;letter-spacing:.5px}.status-value{font-size:16px;font-weight:600;color:var(--color-text, #5f6b7a)}.status-item.success .status-value{color:var(--color-success, #52c41a)}.status-item.warning .status-value{color:var(--color-warning, #faad14)}.status-item.error .status-value{color:var(--color-error, #f5222d)}.monitor-tab-nav{display:flex;align-items:center;gap:4px;padding:8px 16px;background:var(--color-bg-layout, #f5f5f5);border-radius:var(--radius-lg, 8px);overflow-x:auto}.monitor-tab-nav::-webkit-scrollbar{height:4px}.monitor-tab-nav::-webkit-scrollbar-thumb{background:var(--color-border-secondary, #c0c4cc);border-radius:2px}.monitor-tab{position:relative;display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:8px 12px;background:transparent;border:none;border-radius:var(--radius-base, 6px);color:var(--color-text, #5f6b7a);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease;white-space:nowrap}.monitor-tab:hover{background:#28b28b14;color:var(--color-primary, #28B28B)}.monitor-tab.active{background:var(--color-primary-bg, #e6f7f2);color:var(--color-primary, #28B28B)}.tab-icon{font-size:16px;line-height:1}.tab-label{font-size:13px;line-height:1}.tab-badge{position:absolute;top:4px;right:4px;min-width:16px;height:16px;padding:0 4px;background:var(--color-error, #f5222d);color:#fff;font-size:10px;font-weight:600;line-height:16px;text-align:center;border-radius:8px}.monitor-tab-nav.compact{gap:2px;padding:4px 8px}.monitor-tab-nav.compact .monitor-tab{min-height:32px;padding:6px 10px}.monitor-tab-nav.compact .tab-label{display:none}.monitor-flat-nav .ant-badge{display:inline-flex}.monitor-flat-nav .ant-badge-count{background:var(--color-error, #f5222d);box-shadow:0 0 0 1px var(--color-bg-container, #fff)}@media(max-width:575px){.monitor-toolbar{flex-direction:column;align-items:stretch;gap:8px;padding:8px}.monitor-toolbar-left{overflow-x:auto;overflow-y:hidden}.monitor-toolbar-right{flex-direction:row;justify-content:space-between}.monitor-flat-nav{padding:4px 8px;gap:4px}.monitor-nav-button{min-width:40px;padding:8px}.monitor-nav-button:not(.compact) span{display:none}.monitor-status-indicator{gap:8px;padding:4px 8px}.status-item{min-width:36px}.status-value{font-size:14px}.monitor-tab-nav{padding:4px 8px}.monitor-tab{min-height:32px;padding:6px 10px}.monitor-tab .tab-label{display:none}}@media(min-width:576px)and (max-width:767px){.monitor-toolbar{padding:8px 12px}.monitor-flat-nav{gap:6px}.monitor-nav-button{min-width:80px;padding:8px 12px;font-size:13px}.monitor-status-indicator{gap:12px;padding:6px 10px}}@media(min-width:768px)and (max-width:1023px){.monitor-toolbar{padding:10px 16px}.monitor-nav-button{min-width:90px;font-size:14px}}@media(min-width:1024px)and (max-width:1439px){.monitor-toolbar{padding:12px 20px}.monitor-flat-nav{gap:8px}.monitor-nav-button{min-width:100px}}@media(min-width:1440px){.monitor-toolbar{padding:16px 24px}.monitor-flat-nav{gap:10px}.monitor-nav-button{min-height:44px;min-width:110px;padding:10px 18px;font-size:15px}.monitor-status-indicator{gap:20px;padding:10px 16px}.status-item{min-width:56px}.status-value{font-size:18px}}@media(prefers-contrast:high){.monitor-nav-button{border-width:2px}.monitor-toolbar{border-bottom-width:2px}.monitor-status-indicator{border:1px solid currentColor}}@media(prefers-reduced-motion:reduce){.monitor-nav-button,.monitor-tab,.monitor-nav-button:hover,.monitor-tab:hover{transition:none}.monitor-nav-button:hover:not(.active),.monitor-tab:hover{transform:none}}.todo-card{height:100%;border-radius:12px;box-shadow:0 2px 8px #00000014;transition:box-shadow .3s ease}.todo-card:hover{box-shadow:0 4px 16px #0000001f}.todo-card .ant-card-head{border-bottom:1px solid var(--color-border, #f0f0f0)}.todo-card .ant-card-body{padding:16px}.todo-filters{margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--color-border, #f0f0f0)}.todo-list{max-height:400px;overflow-y:auto}.todo-list::-webkit-scrollbar{width:6px}.todo-list::-webkit-scrollbar-track{background:transparent}.todo-list::-webkit-scrollbar-thumb{background:#0000001a;border-radius:3px}.todo-list::-webkit-scrollbar-thumb:hover{background:#0003}.todo-item{padding:12px 16px;margin-bottom:8px;background:var(--color-bg-container, #fff);border:1px solid var(--color-border, #f0f0f0);border-radius:8px;cursor:pointer;transition:all .2s ease;position:relative}.todo-item:hover{background:var(--color-bg-base, #fafafa);border-color:var(--color-primary, #28b28b);box-shadow:0 2px 8px #28b28b26}.todo-item:last-child{margin-bottom:0}.todo-item-high{background:linear-gradient(to right,rgba(255,77,79,.04),transparent)}.todo-item-high:hover{background:linear-gradient(to right,rgba(255,77,79,.08),var(--color-bg-base, #fafafa))}.todo-item-medium{background:linear-gradient(to right,rgba(250,173,20,.04),transparent)}.todo-item-medium:hover{background:linear-gradient(to right,rgba(250,173,20,.08),var(--color-bg-base, #fafafa))}.todo-item-completed{opacity:.6}.todo-item-completed .todo-title{color:#8c8c8c}.todo-title{font-weight:500;color:var(--color-text-primary, #0f172a)}@media(max-width:768px){.todo-card .ant-card-body{padding:12px}.todo-list{max-height:300px}.todo-item{padding:8px 12px}}.data-overview{padding:16px;background:var(--color-bg-base, #f8fafc);border-radius:12px}.data-overview-header{margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--color-border, #f0f0f0)}.stat-card{height:100%;border-radius:10px;border:1px solid var(--color-border, #f0f0f0);transition:all .3s ease;background:linear-gradient(135deg,#fff,#fafafa)}.stat-card:hover{border-color:var(--color-primary, #28b28b);box-shadow:0 4px 12px #28b28b26;transform:translateY(-2px)}.stat-card-clickable{cursor:pointer}.stat-card-clickable:active{transform:translateY(0)}.stat-card .stat-title{font-size:13px;font-weight:500}.stat-card .ant-progress-line{margin-bottom:4px}.stat-card .ant-progress-bg{height:12px!important;border-radius:6px}.stat-card .ant-progress-inner{border-radius:6px}.data-overview-compact{padding:16px;background:var(--color-bg-base, #f8fafc);border-radius:12px}.data-overview-compact .ant-statistic-title{font-size:12px;margin-bottom:4px}.data-overview-compact .ant-statistic-content{font-size:20px}.data-overview-compact .ant-statistic-content-prefix{font-size:18px;margin-right:4px}@media(max-width:768px){.data-overview{padding:12px}.data-overview-header{margin-bottom:12px}.stat-card{min-height:100px}.stat-card .ant-statistic{margin-bottom:8px}.stat-card .ant-statistic-content{font-size:24px}}@media(max-width:576px){.data-overview-compact{padding:8px}.data-overview-compact .ant-col{margin-bottom:8px}}.quick-access-grid{border-radius:12px;box-shadow:0 2px 8px #00000014}.quick-access-grid .ant-card-head{border-bottom:1px solid var(--color-border, #f0f0f0)}.quick-access-grid .ant-card-body{padding:16px}.quick-access-row{margin:-8px}.quick-access-item{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px 12px;background:var(--color-bg-container, #fff);border:1px solid var(--color-border, #f0f0f0);border-radius:10px;cursor:pointer;transition:all .2s ease;min-height:100px}.quick-access-item:hover{background:linear-gradient(135deg,#28b28b0d,#28b28b05);border-color:var(--color-primary, #28b28b);transform:translateY(-4px);box-shadow:0 4px 12px #28b28b26}.quick-access-item:active{transform:translateY(-2px)}.quick-access-item-disabled{opacity:.5;cursor:not-allowed}.quick-access-item-disabled:hover{transform:none;background:var(--color-bg-container, #fff);border-color:var(--color-border, #f0f0f0);box-shadow:none}.quick-access-item-compact{min-height:80px;padding:12px 8px}.quick-access-item-edit{position:absolute;top:4px;right:4px;display:none;padding:4px;background:var(--color-bg-base, #f8fafc);border-radius:4px;cursor:move;opacity:.6}.quick-access-item:hover .quick-access-item-edit{display:block}.quick-access-item-edit:hover{opacity:1;background:var(--color-primary, #28b28b);color:#fff}.quick-access-icon-wrapper{position:relative;margin-bottom:8px}.quick-access-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;font-size:24px;color:var(--color-primary, #28b28b);background:linear-gradient(135deg,#28b28b1a,#28b28b0d);border-radius:12px;transition:all .2s ease}.quick-access-item:hover .quick-access-icon{background:linear-gradient(135deg,#28b28b26,#28b28b14);transform:scale(1.1)}.quick-access-item-compact .quick-access-icon{width:40px;height:40px;font-size:20px}.quick-access-label{text-align:center;max-width:100%}.quick-access-label .ant-typography{color:var(--color-text-primary, #0f172a)}.quick-access-badge-new{position:absolute;top:4px;left:4px;padding:2px 6px;font-size:10px;font-weight:600;color:#fff;background:linear-gradient(135deg,#ff4d4f,#ff7875);border-radius:4px}.quick-access-skeleton{height:100px;background:linear-gradient(90deg,var(--color-bg-container, #f0f0f0) 25%,var(--color-bg-base, #fafafa) 50%,var(--color-bg-container, #f0f0f0) 75%);background-size:200% 100%;border-radius:10px;animation:skeleton-loading 1.5s ease-in-out infinite}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.quick-access-empty{text-align:center;padding:40px 20px}@media(max-width:768px){.quick-access-grid .ant-card-body{padding:12px}.quick-access-item{min-height:80px;padding:16px 8px}.quick-access-icon{width:40px;height:40px;font-size:20px}.quick-access-label .ant-typography{font-size:12px}}@media(max-width:576px){.quick-access-item{min-height:70px;padding:12px 6px}.quick-access-icon{width:36px;height:36px;font-size:18px}.quick-access-label .ant-typography{font-size:11px}}.workbench-layout{min-height:100%;padding:24px;background:var(--color-bg-base, #f8fafc)}.workbench-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding:16px 24px;background:var(--color-bg-container, #fff);border-radius:var(--radius-lg, 12px);box-shadow:var(--shadow-sm, 0 1px 4px rgba(0, 0, 0, .05));transition:box-shadow var(--duration-base, .25s) var(--easing-out, ease-out)}.workbench-header:hover{box-shadow:var(--shadow-md, 0 4px 6px rgba(0, 0, 0, .1))}.workbench-header-title{display:flex;align-items:center;gap:12px}.workbench-content{display:grid;grid-template-columns:repeat(12,1fr);gap:24px;margin:0}.workbench-content .ant-col{padding:0}.card-primary{grid-column:span 5;box-shadow:var(--shadow-lg, 0 10px 15px rgba(0, 0, 0, .1));border-radius:var(--radius-lg, 12px);transition:all var(--duration-base, .25s) var(--easing-out, ease-out)}.card-primary:hover{box-shadow:var(--shadow-xl, 0 20px 25px rgba(0, 0, 0, .1));transform:translateY(-2px)}.card-secondary{grid-column:span 7;box-shadow:var(--shadow-md, 0 4px 6px rgba(0, 0, 0, .1));border-radius:var(--radius-md, 10px);transition:all var(--duration-base, .25s) var(--easing-out, ease-out)}.card-secondary:hover{box-shadow:var(--shadow-lg, 0 10px 15px rgba(0, 0, 0, .1))}.card-tertiary{grid-column:span 7;box-shadow:var(--shadow-sm, 0 1px 4px rgba(0, 0, 0, .05));border-radius:var(--radius-base, 8px);transition:all var(--duration-fast, .15s) var(--easing-out, ease-out)}.card-tertiary:hover{box-shadow:var(--shadow-md, 0 4px 6px rgba(0, 0, 0, .1))}.workbench-content .ant-col:first-child .ant-card{background:linear-gradient(135deg,#28b28b,#1a8a6b);color:#fff;border:none;height:100%}.workbench-content .ant-col:first-child .ant-card-head{border-bottom-color:#fff3;color:#fff}.workbench-content .ant-col:first-child .ant-card-head-title{color:#fff;font-weight:600}.workbench-content .ant-col:first-child .ant-card-body{color:#fff}.workbench-content .ant-col:nth-child(2) .ant-space>.ant-card:first-child{background:linear-gradient(to right,rgba(40,178,139,.03) 0%,var(--color-bg-container, #fff) 20%);border-left:1px solid rgba(40,178,139,.15)}.workbench-content .ant-col:nth-child(2) .ant-space>.ant-card:last-child{background:var(--color-bg-container, #fff)}.workbench-layout-loading{display:flex;align-items:center;justify-content:center;min-height:400px}.workbench-layout-loading .ant-spin{--ant-dot-size: 12px}.workbench-empty{margin-top:40px;padding:48px 24px;text-align:center}@media(max-width:1200px){.workbench-layout{padding:20px}.workbench-content{gap:20px}.card-primary,.card-secondary,.card-tertiary{grid-column:span 12}}@media(max-width:768px){.workbench-layout{padding:16px}.workbench-header{flex-direction:column;gap:12px;align-items:flex-start;padding:16px}.workbench-header-title{width:100%}.workbench-header>.ant-space:last-child{width:100%;justify-content:space-between}.workbench-content{display:flex;flex-direction:column;gap:16px}.card-primary,.card-secondary,.card-tertiary{grid-column:span 12}}@media(max-width:576px){.workbench-layout{padding:12px}.workbench-header{padding:12px;margin-bottom:16px;border-radius:var(--radius-md, 10px)}.workbench-header .ant-btn{padding:4px 8px;font-size:12px}.workbench-content{gap:12px}.card-primary{box-shadow:var(--shadow-md, 0 4px 6px rgba(0, 0, 0, .1))}.card-secondary,.card-tertiary{box-shadow:var(--shadow-sm, 0 1px 4px rgba(0, 0, 0, .05))}}@keyframes cardSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.workbench-content .ant-col{animation:cardSlideIn .4s var(--easing-out, ease-out) backwards}.workbench-content .ant-col:nth-child(1){animation-delay:0ms}.workbench-content .ant-col:nth-child(2){animation-delay:.1s}@media(prefers-reduced-motion:reduce){.workbench-content .ant-col,.card-primary,.card-secondary,.card-tertiary{animation:none;transition:none}.card-primary:hover,.card-secondary:hover,.card-tertiary:hover{transform:none}}@media(prefers-contrast:high){.workbench-header,.card-primary,.card-secondary,.card-tertiary{border:2px solid var(--color-border, #d9d9d9)}}@media(prefers-color-scheme:dark){.workbench-layout{background:#141414}.workbench-header{background:#1f1f1f}.card-primary{background:linear-gradient(135deg,#1a8a6b,#126350)}.card-secondary,.card-tertiary{background:#1f1f1f}}.monitor-quick-nav{display:flex;gap:8px;padding:8px 16px;background:var(--color-bg-container, #ffffff);border-radius:var(--radius-lg, 8px);box-shadow:var(--shadow-sm, 0 1px 3px rgba(0, 0, 0, .05));flex-wrap:wrap}.monitor-quick-nav.compact{gap:4px;padding:4px 8px}.monitor-quick-nav.vertical{flex-direction:column;width:80px;padding:12px 8px;gap:12px}.monitor-nav-button{display:flex;align-items:center;gap:6px;height:36px;padding:0 12px;border-radius:var(--radius-base, 6px);transition:all var(--duration-base, .25s) var(--easing-out, ease-out);color:var(--color-text-secondary, #64748b);font-weight:var(--font-weight-medium, 500)}.monitor-nav-button:hover{color:var(--color-primary, #28b28b);background:var(--color-primary-bg, rgba(40, 178, 139, .08))}.monitor-nav-button:focus{color:var(--color-primary, #28b28b);background:var(--color-primary-bg, rgba(40, 178, 139, .12));box-shadow:0 0 0 2px #28b28b1a}.monitor-quick-nav.vertical .monitor-nav-button{flex-direction:column;gap:4px;padding:8px;height:auto;font-size:var(--font-size-xs, 12px);text-align:center}.monitor-quick-nav-tabs{display:flex;gap:4px;padding:4px;background:var(--color-bg-layout, #f5f5f5);border-radius:var(--radius-lg, 8px);overflow-x:auto;scrollbar-width:none}.monitor-quick-nav-tabs::-webkit-scrollbar{display:none}.monitor-tab{display:flex;align-items:center;gap:8px;padding:10px 16px;border:none;background:transparent;border-radius:var(--radius-base, 6px);color:var(--color-text-secondary, #64748b);font-weight:var(--font-weight-medium, 500);font-size:var(--font-size-sm, 14px);white-space:nowrap;cursor:pointer;transition:all var(--duration-base, .25s) var(--easing-out, ease-out)}.monitor-tab:hover{color:var(--color-text-primary, #0f172a);background:var(--color-bg-container, #ffffff)}.monitor-tab.active{color:var(--color-primary, #28b28b);background:var(--color-bg-container, #ffffff);box-shadow:var(--shadow-sm, 0 1px 3px rgba(0, 0, 0, .08))}.monitor-tab-label{display:flex;align-items:center;gap:8px}@media(max-width:768px){.monitor-quick-nav{padding:6px 12px;gap:6px}.monitor-nav-button{height:32px;padding:0 8px;font-size:var(--font-size-xs, 12px)}.monitor-nav-button span{display:none}.monitor-nav-button .anticon{font-size:16px}.monitor-quick-nav-tabs{gap:2px;padding:2px}.monitor-tab{padding:8px 12px;font-size:var(--font-size-xs, 12px)}.monitor-tab-label span{display:none}}.monitor-status-footer{display:flex;align-items:center;justify-content:space-between;padding:8px 24px;background:var(--color-bg-container, #ffffff);border-top:1px solid var(--color-border, #e2e8f0);gap:16px;min-height:40px}.monitor-status-left,.monitor-status-right{display:flex;align-items:center;flex-shrink:0}.monitor-status-left{flex:1}.monitor-status-center{flex:1;max-width:500px}.monitor-status-right{min-width:150px;justify-content:flex-end}.status-item{padding:4px 8px;border-radius:var(--radius-base, 6px);transition:background var(--duration-fast, .15s) var(--easing-out, ease-out)}.status-item:hover{background:var(--color-bg-layout, #f5f5f5)}.status-icon{font-size:16px}.status-label{font-size:var(--font-size-sm, 14px);white-space:nowrap}.status-split{color:var(--color-border, #e2e8f0);font-size:16px}.status-progress{transform:scale(.8)}.status-progress .ant-progress-text{font-size:10px!important;font-weight:var(--font-weight-semibold, 600)}.monitor-alert-banner{margin:0;padding:4px 12px;border-radius:var(--radius-base, 6px);background:var(--color-warning-bg, rgba(250, 173, 20, .08));border:1px solid var(--color-warning-border, rgba(250, 173, 20, .2))}.monitor-alert-banner .ant-alert-message{font-size:var(--font-size-sm, 14px);color:var(--color-warning-text, #d48806)}.system-status{padding:4px 8px;border-radius:var(--radius-base, 6px)}.system-time{font-size:var(--font-size-xs, 12px);font-family:var(--font-family-code, "JetBrains Mono", monospace)}.refresh-button{width:32px;height:32px;padding:0;border-radius:var(--radius-base, 6px)}.monitor-status-compact{padding:8px 16px;background:var(--color-bg-layout, #f5f5f5);border-radius:var(--radius-base, 6px)}.monitor-status-panel{position:absolute;bottom:48px;right:24px;width:280px;background:var(--color-bg-container, #ffffff);border-radius:var(--radius-lg, 12px);box-shadow:var(--shadow-xl, 0 20px 25px -5px rgba(0, 0, 0, .1));overflow:hidden;z-index:100}.status-panel-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--color-border, #e2e8f0)}.status-panel-header h3{margin:0;font-size:var(--font-size-base, 16px);font-weight:var(--font-weight-semibold, 600)}.status-panel-content{padding:16px}.status-panel-section{margin-bottom:16px}.status-panel-section:last-child{margin-bottom:0}.status-panel-section h4{margin:0 0 8px;font-size:var(--font-size-sm, 14px);font-weight:var(--font-weight-medium, 500);color:var(--color-text-secondary, #64748b)}.status-row{display:flex;justify-content:space-between;padding:4px 0}@media(max-width:1024px){.monitor-status-footer{padding:8px 16px}.monitor-status-center{max-width:300px}.monitor-status-right{min-width:120px}.monitor-status-panel{right:16px;bottom:40px;width:240px}}@media(max-width:768px){.monitor-status-footer{flex-direction:column;padding:8px 12px;min-height:auto;gap:8px}.monitor-status-left{width:100%;overflow-x:auto}.monitor-status-center{width:100%;max-width:none}.monitor-status-right{width:100%;justify-content:center}.monitor-alert-banner .ant-alert-message{font-size:var(--font-size-xs, 12px)}.monitor-status-panel{display:none}}.monitor-side-drawer .ant-drawer-body{padding:0}.monitor-side-panel-content{display:flex;flex-direction:column;height:100%;background:var(--color-bg-container, #ffffff)}.side-panel-header{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid var(--color-border, #e2e8f0);background:var(--color-bg-layout, #f8fafc)}.side-panel-title{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.side-panel-title h5{margin:0;flex:1;font-size:var(--font-size-base, 16px);font-weight:var(--font-weight-semibold, 600)}.side-panel-close{width:32px;height:32px;padding:0;border-radius:var(--radius-base, 6px)}.side-panel-body{flex:1;overflow-y:auto;padding:16px}.side-panel-section{margin-bottom:16px}.side-panel-section:last-child{margin-bottom:0}.section-title{margin:0 0 12px;font-size:var(--font-size-sm, 14px);font-weight:var(--font-weight-medium, 500);color:var(--color-text-secondary, #64748b);display:flex;align-items:center;gap:6px}.section-divider{margin:16px 0}.side-descriptions{font-size:var(--font-size-sm, 14px)}.side-descriptions .ant-descriptions-item-label{color:var(--color-text-secondary, #64748b);font-weight:var(--font-weight-normal, 400)}.side-descriptions .ant-descriptions-item-content{color:var(--color-text-primary, #0f172a);font-weight:var(--font-weight-medium, 500)}.alert-list-item{padding:8px;border-radius:var(--radius-base, 6px);cursor:pointer;transition:background var(--duration-fast, .15s) var(--easing-out, ease-out)}.alert-list-item:hover{background:var(--color-bg-layout, #f8fafc)}.alert-list-item .ant-list-item-content{width:100%}.side-panel-footer{padding:12px 16px;border-top:1px solid var(--color-border, #e2e8f0);background:var(--color-bg-layout, #f8fafc)}.side-panel-inline{padding:16px;background:var(--color-bg-container, #ffffff);border-radius:var(--radius-base, 8px)}.side-panel-inline-empty{padding:32px 16px;display:flex;align-items:center;justify-content:center;min-height:200px}.side-panel-inline-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--color-border, #e2e8f0)}.side-panel-inline-header h5{margin:0;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.side-panel-inline-body{font-size:var(--font-size-sm, 14px)}@media(max-width:768px){.monitor-side-drawer .ant-drawer-content{width:100%!important}.side-panel-header,.side-panel-body{padding:12px}.side-panel-footer{padding:8px 12px}.side-panel-inline{padding:12px}}.monitor-layout{display:flex;flex-direction:column;background:var(--color-bg-base, #f8fafc);overflow:hidden}.monitor-header{height:56px;padding:0;background:var(--color-bg-container, #ffffff);border-bottom:1px solid var(--color-border, #e2e8f0);display:flex;align-items:center;box-shadow:var(--shadow-xs, 0 1px 2px rgba(0, 0, 0, .05));z-index:10}.monitor-header-content{display:flex;align-items:center;justify-content:space-between;width:100%;padding:0 24px;gap:24px}.monitor-header-left{display:flex;align-items:center;gap:16px;min-width:200px}.monitor-title{margin:0;font-size:var(--font-size-lg, 18px);font-weight:var(--font-weight-semibold, 600);color:var(--color-text-primary, #0f172a)}.monitor-header-right{display:flex;align-items:center;gap:12px}.monitor-body{flex:1;display:flex;overflow:hidden;position:relative}.monitor-content{flex:1;position:relative;overflow:hidden}.monitor-side-panel{background:var(--color-bg-container, #ffffff);border-left:1px solid var(--color-border, #e2e8f0);box-shadow:var(--shadow-md, 0 4px 6px -1px rgba(0, 0, 0, .1));z-index:5;transition:all var(--duration-base, .25s) var(--easing-out, ease-out)}.monitor-footer{height:auto;min-height:40px;padding:0;background:var(--color-bg-container, #ffffff);border-top:1px solid var(--color-border, #e2e8f0)}.monitor-loading,.monitor-empty{display:flex;align-items:center;justify-content:center;height:100%;background:var(--color-bg-container, #ffffff)}.monitor-compact{display:flex;flex-direction:column;border-radius:var(--radius-lg, 12px);overflow:hidden;background:var(--color-bg-container, #ffffff);box-shadow:var(--shadow-md, 0 4px 6px -1px rgba(0, 0, 0, .1))}.monitor-compact-map{flex:1;position:relative;background:var(--color-bg-layout, #f5f5f5)}.monitor-map-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.monitor-selected-info{padding:16px;background:var(--color-bg-container, #ffffff);border-radius:var(--radius-base, 8px);box-shadow:var(--shadow-lg, 0 10px 15px -3px rgba(0, 0, 0, .1))}.monitor-selected-info h3{margin:0 0 8px;font-size:var(--font-size-lg, 18px);font-weight:var(--font-weight-semibold, 600)}.monitor-selected-info p{margin:0;color:var(--color-text-secondary, #64748b)}.monitor-compact-stats{padding:12px;background:var(--color-bg-container, #ffffff);border-top:1px solid var(--color-border, #e2e8f0)}@media(max-width:1024px){.monitor-header-content{padding:0 16px;gap:16px}.monitor-header-left{min-width:150px}.monitor-side-panel{position:absolute;right:0;top:0;bottom:0;width:280px!important}}@media(max-width:768px){.monitor-header{height:auto;min-height:48px}.monitor-header-content{flex-direction:column;padding:12px;gap:12px}.monitor-header-left{width:100%;min-width:auto}.monitor-title{font-size:var(--font-size-base, 16px)}.monitor-header-right{width:100%;justify-content:flex-end}.monitor-side-panel{width:100%!important}.monitor-compact{border-radius:var(--radius-base, 8px)}}.mobile-bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;height:56px;background:var(--color-bg-container, #FFFFFF);border-top:1px solid var(--color-border, #E2E8F0);z-index:1000;padding:0;margin:0;list-style:none;box-shadow:0 -2px 8px #0000000a}.mobile-bottom-nav button{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:8px 4px;background:transparent;border:none;cursor:pointer;transition:color .15s ease-out;color:var(--color-text-secondary, #64748B);font-size:12px;font-weight:500;min-height:auto;min-width:auto}.mobile-bottom-nav button .icon{font-size:24px;line-height:1;transition:transform .25s ease-out}.mobile-bottom-nav button .label{font-size:11px;line-height:1.2;white-space:nowrap}.mobile-bottom-nav button:hover{color:var(--color-primary, #28B28B);background:#28b28b0a}.mobile-bottom-nav button:active{transform:scale(.95)}.mobile-bottom-nav button.active{color:var(--color-primary, #28B28B)}.mobile-bottom-nav button.active .icon{transform:scale(1.1)}.mobile-bottom-nav button:focus-visible{outline:2px solid var(--color-primary, #28B28B);outline-offset:2px}.mobile-bottom-nav button .badge{position:absolute;top:6px;right:20%;min-width:16px;height:16px;padding:0 4px;background:var(--color-error, #F5222D);color:#fff;font-size:10px;font-weight:600;line-height:16px;text-align:center;border-radius:8px;transform:translate(50%)}@supports (bottom: env(safe-area-inset-bottom)){.mobile-bottom-nav{height:calc(56px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom)}}@media(max-width:767px)and (orientation:landscape){.mobile-bottom-nav{height:48px}.mobile-bottom-nav button{padding:4px;gap:2px}.mobile-bottom-nav button .icon{font-size:20px}.mobile-bottom-nav button .label{font-size:10px}}@media(min-width:768px){.mobile-bottom-nav{display:none}}@media(prefers-color-scheme:dark){.mobile-bottom-nav{background:#1f1f1f;border-top-color:#3a3a3a}.mobile-bottom-nav button:hover{background:#28b28b1f}}.mobile-drawer .ant-drawer-header{border-bottom:1px solid var(--color-border, #E2E8F0);padding:16px 20px}.mobile-drawer .ant-drawer-title{font-size:18px;font-weight:600;color:var(--color-text-primary, #0F172A)}.mobile-drawer .ant-drawer-close{width:44px;height:44px;display:flex;align-items:center;justify-content:center}.mobile-drawer-content{max-height:calc(100vh - 56px);overflow-y:auto;-webkit-overflow-scrolling:touch}.mobile-drawer-menu-item{display:flex;align-items:center;gap:12px;padding:16px 20px;cursor:pointer;transition:background .15s ease-out,color .15s ease-out;color:var(--color-text-primary, #0F172A);font-size:15px;min-height:56px;border-bottom:1px solid var(--color-border-secondary, #F1F5F9)}.mobile-drawer-menu-item:last-child{border-bottom:none}.mobile-drawer-menu-item:active{background:#28b28b14}.mobile-drawer-menu-item.active{background:#28b28b14;color:var(--color-primary, #28B28B);font-weight:500}.mobile-drawer-menu-item .icon{font-size:20px;color:var(--color-text-secondary, #64748B);flex-shrink:0}.mobile-drawer-menu-item.active .icon{color:var(--color-primary, #28B28B)}.mobile-drawer-menu-item .label{flex:1}.mobile-drawer .ant-collapse{border:none;background:transparent}.mobile-drawer .ant-collapse-item{border-bottom:1px solid var(--color-border-secondary, #F1F5F9)}.mobile-drawer .ant-collapse-header{padding:16px 20px!important;font-size:15px;transition:background .15s ease-out}.mobile-drawer .ant-collapse-header:active{background:#28b28b0a}.mobile-drawer-panel-header{display:flex;align-items:center;gap:12px}.mobile-drawer-panel-header.active{color:var(--color-primary, #28B28B);font-weight:500}.mobile-drawer-panel-header .icon{font-size:20px;color:var(--color-text-secondary, #64748B)}.mobile-drawer-panel-header.active .icon{color:var(--color-primary, #28B28B)}.mobile-drawer-panel-header .label{flex:1}.mobile-drawer .ant-collapse-content{border-top:1px solid var(--color-border-secondary, #F1F5F9)}.mobile-drawer .ant-collapse-content-box{padding:0}.mobile-drawer-content::-webkit-scrollbar{width:4px}.mobile-drawer-content::-webkit-scrollbar-track{background:transparent}.mobile-drawer-content::-webkit-scrollbar-thumb{background:var(--color-border, #E2E8F0);border-radius:2px}.mobile-drawer-content::-webkit-scrollbar-thumb:hover{background:var(--color-text-secondary, #64748B)}@media(prefers-color-scheme:dark){.mobile-drawer .ant-drawer-header{background:#1f1f1f;border-bottom-color:#3a3a3a}.mobile-drawer .ant-drawer-title{color:#fafafa}.mobile-drawer-menu-item{color:#fafafa;border-bottom-color:#3a3a3a}.mobile-drawer-menu-item.active{background:#28b28b29}.mobile-drawer .ant-collapse-item{border-bottom-color:#3a3a3a}.mobile-drawer .ant-collapse-content{border-top-color:#3a3a3a}}@media(min-width:768px){.mobile-drawer{display:none}}.scene-sidebar-container{display:flex;flex-direction:column;height:100%;background:var(--color-bg-container, #fff);border-right:1px solid var(--color-border, #e8e8e8)}.sidebar-brand{flex:0 0 64px;display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--color-border, #e8e8e8);transition:all .2s ease;background:linear-gradient(135deg,#28b28b,#1a8a6b)}.brand-content{display:flex;align-items:center;gap:8px;color:#fff}.brand-icon{font-size:24px;line-height:1}.brand-text{font-size:16px;font-weight:600;white-space:nowrap}.brand-text-collapsed{font-size:14px;font-weight:700}.sidebar-menu{flex:1 1 auto;overflow-y:auto;overflow-x:hidden;padding:8px 0}.sidebar-menu::-webkit-scrollbar{width:6px}.sidebar-menu::-webkit-scrollbar-thumb{background:var(--color-border-secondary, #c0c4cc);border-radius:3px}.sidebar-menu::-webkit-scrollbar-track{background:transparent}.scene-menu{border-inline-end:none!important;background:transparent}.scene-menu .ant-menu-item,.scene-menu .ant-menu-submenu-title{margin:4px 8px;border-radius:6px;height:40px;line-height:40px;transition:all .15s ease}.scene-menu .ant-menu-item:hover,.scene-menu .ant-menu-submenu-title:hover{background:var(--color-bg-text-hover, #f0f7f5);color:var(--color-primary, #28B28B)}.scene-menu .ant-menu-item-selected{background:var(--color-primary-bg, #e6f7f2);color:var(--color-primary, #28B28B);font-weight:500}.scene-menu .ant-menu-submenu-selected>.ant-menu-submenu-title{color:var(--color-primary, #28B28B)}.scene-menu .ant-menu-item .anticon,.scene-menu .ant-menu-submenu-title .anticon{font-size:16px;transition:transform .15s ease}.scene-menu .ant-menu-item:hover .anticon,.scene-menu .ant-menu-submenu-title:hover .anticon{transform:scale(1.1)}.scene-menu .ant-menu-inline-collapsed{width:64px}.scene-menu .ant-menu-inline-collapsed .ant-menu-item,.scene-menu .ant-menu-inline-collapsed .ant-menu-submenu-title{padding:0 calc(50% - 8px)}.empty-menu-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 16px;text-align:center;color:var(--color-text-secondary, #9aa4b2)}.empty-icon{font-size:48px;margin-bottom:12px;opacity:.5}.empty-text{font-size:13px;color:var(--color-text-tertiary, #bdc3c7)}.sidebar-toggle{flex:0 0 48px;display:flex;align-items:center;justify-content:center;border-top:1px solid var(--color-border, #e8e8e8);background:var(--color-bg-container, #fff)}.toggle-button{width:100%;height:100%;border:none;border-radius:0;color:var(--color-text-secondary, #5f6b7a);display:flex;align-items:center;justify-content:center;gap:8px;transition:all .15s ease}.toggle-button:hover{color:var(--color-primary, #28B28B);background:var(--color-bg-text-hover, #f0f7f5)}@media(max-width:575px){.scene-sidebar-container{position:fixed;left:0;top:56px;height:calc(100vh - 56px);z-index:1000;transform:translate(-100%);transition:transform .3s ease;width:240px!important}.scene-sidebar-container.mobile-open{transform:translate(0)}.sidebar-brand{flex:0 0 56px}}@media(min-width:576px)and (max-width:767px){.scene-sidebar-container{width:200px!important}.sidebar-brand{flex:0 0 56px}.brand-text{font-size:15px}.toggle-button{font-size:13px}}@media(min-width:768px)and (max-width:1023px){.scene-sidebar-container{width:220px!important}.scene-menu .ant-menu-item,.scene-menu .ant-menu-submenu-title{margin:4px 6px;height:38px;line-height:38px;font-size:13px}}@media(min-width:1024px)and (max-width:1439px){.scene-sidebar-container{width:240px!important}}@media(min-width:1440px){.scene-sidebar-container{width:260px!important}.sidebar-brand{flex:0 0 72px}.brand-icon{font-size:28px}.brand-text{font-size:18px}.scene-menu .ant-menu-item,.scene-menu .ant-menu-submenu-title{margin:4px 10px;height:44px;line-height:44px;font-size:15px}}@media(prefers-contrast:high){.scene-sidebar-container{border-right-width:2px}.sidebar-brand{border-bottom-width:2px}.sidebar-toggle{border-top-width:2px}.scene-menu .ant-menu-item,.scene-menu .ant-menu-submenu-title{border:1px solid transparent}.scene-menu .ant-menu-item:hover,.scene-menu .ant-menu-submenu-title:hover,.scene-menu .ant-menu-item-selected{border-color:currentColor}}@media(prefers-reduced-motion:reduce){.scene-sidebar-container,.sidebar-brand,.scene-menu .ant-menu-item,.scene-menu .ant-menu-submenu-title,.scene-menu .ant-menu-item .anticon,.scene-menu .ant-menu-submenu-title .anticon,.toggle-button,.scene-sidebar-container.mobile-open{transition:none}.scene-menu .ant-menu-item:hover .anticon,.scene-menu .ant-menu-submenu-title:hover .anticon{transform:none}}.hybrid-scene-layout{min-height:100vh;background:var(--color-bg-base, #EEF2FD);overflow:hidden;display:flex;flex-direction:column}.scene-header{display:flex;align-items:center;justify-content:space-between;height:56px;padding:0 16px;background:#fff;border-bottom:1px solid #E2E8F0;box-shadow:0 1px 4px #0000000d;z-index:100}.scene-header-left{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.scene-header-breadcrumb{flex:1;min-width:0}.scene-header-breadcrumb .ant-breadcrumb{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scene-header-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.scene-header-shortcuts{display:inline-flex;align-items:center;gap:4px;padding:0 4px;border:1px solid #DCDFE6;border-radius:6px;background:#fff;height:32px}.scene-header-user{max-width:180px;cursor:pointer}.scene-header-user span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scene-body{display:flex;flex:1;min-height:0;overflow:hidden}.scene-sidebar{background:#fff!important;border-right:1px solid #DCDFE6;box-shadow:2px 0 8px #0000000a;z-index:50}.scene-sidebar .ant-layout-sider-children{display:flex;flex-direction:column;height:100%;overflow:hidden}.scene-content-wrapper{display:flex;flex-direction:column;flex:1;min-width:0;overflow:hidden}.scene-tabs-bar{flex:0 0 36px;background:#fff;border-bottom:1px solid #DCDFE6}.scene-content{flex:1;min-height:0;overflow:auto;background:#eef2fd;padding:12px}.scene-content::-webkit-scrollbar{width:8px;height:8px}.scene-content::-webkit-scrollbar-thumb{background:#c0c4cc;border-radius:4px}.scene-content::-webkit-scrollbar-track{background:transparent}@media(max-width:575px){.scene-header{padding:0 10px;height:52px}.scene-header-breadcrumb{max-width:52vw;overflow:hidden}.scene-header-right{gap:4px}.scene-header-shortcuts{padding:0 2px}.scene-header-user span:last-child{display:none}.scene-content{padding:8px}}@media(min-width:576px)and (max-width:767px){.scene-header{padding:0 12px}.scene-header-breadcrumb{max-width:60vw}}@media(min-width:768px)and (max-width:1023px){.scene-header{padding:0 16px}}@media(min-width:1024px)and (max-width:1439px){.scene-header{padding:0 20px}}@media(min-width:1440px){.scene-header{padding:0 24px}}@media(prefers-contrast:high){.scene-header{border-bottom-width:2px}.scene-sidebar{border-right-width:2px}.scene-tabs-bar{border-bottom-width:2px}}@media(prefers-reduced-motion:reduce){.scene-sidebar,.scene-tabs-bar{transition:none}}
