#app{width:100%;min-height:100vh}:root{--primary-color: #0d9488;--primary-light: #14b8a6;--primary-dark: #0f766e;--primary-bg: rgba(13, 148, 136, .08);--success-color: #22c55e;--warning-color: #f59e0b;--danger-color: #ef4444;--info-color: #3b82f6;--text-primary: #1e293b;--text-secondary: #64748b;--text-muted: #94a3b8;--bg-base: #f8fafc;--bg-light: #f1f5f9;--bg-white: #ffffff;--bg-sidebar: #1e293b;--border-color: #e2e8f0;--border-light: #f1f5f9;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);--sidebar-width: 240px;--sidebar-collapsed-width: 64px;--header-height: 60px}html.dark{--primary-color: #14b8a6;--primary-light: #2dd4bf;--primary-dark: #0d9488;--primary-bg: rgba(20, 184, 166, .12);--text-primary: #e2e8f0;--text-secondary: #94a3b8;--text-muted: #64748b;--bg-base: #0f172a;--bg-light: #1e293b;--bg-white: #1e293b;--bg-sidebar: #0f172a;--border-color: #334155;--border-light: #1e293b;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3);--shadow-md: 0 4px 8px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 20px rgba(0, 0, 0, .5);color-scheme:dark;--el-bg-color: #1e293b;--el-bg-color-page: #0f172a;--el-bg-color-overlay: #1e293b;--el-text-color-primary: #e2e8f0;--el-text-color-regular: #cbd5e1;--el-text-color-secondary: #94a3b8;--el-text-color-placeholder: #64748b;--el-border-color: #334155;--el-border-color-light: #1e293b;--el-border-color-lighter: #1e293b;--el-fill-color: #1e293b;--el-fill-color-light: #162032;--el-fill-color-lighter: #0f172a;--el-fill-color-blank: #1e293b;--el-mask-color: rgba(0, 0, 0, .6);--el-color-primary: #14b8a6;--el-color-primary-light-3: #0d9488;--el-color-primary-light-5: #0f766e;--el-color-primary-light-7: #115e59;--el-color-primary-light-9: #134e4a;--el-color-primary-dark-2: #2dd4bf}html.dark body{background-color:var(--bg-base);color:var(--text-primary)}html.dark .sidebar-container{background-color:var(--bg-sidebar)!important;border-right-color:var(--border-color)!important}html.dark .el-menu{background-color:var(--bg-sidebar)!important}html.dark .el-menu .el-menu-item,html.dark .el-menu .el-sub-menu__title{color:var(--text-secondary)!important}html.dark .el-menu .el-menu-item:hover,html.dark .el-menu .el-sub-menu__title:hover{background-color:#ffffff0f!important;color:var(--text-primary)!important}html.dark .el-menu .el-menu-item.is-active,html.dark .el-menu .el-sub-menu__title.is-active{color:var(--primary-color)!important;background-color:var(--primary-bg)!important}html.dark .el-menu .el-sub-menu.is-active>.el-sub-menu__title{color:var(--primary-color)!important}html.dark .header-container{background-color:var(--bg-white)!important;border-bottom-color:var(--border-color)!important}html.dark .header-container .header-action{color:var(--text-secondary)}html.dark .header-container .header-action:hover{color:var(--text-primary);background-color:#ffffff0f}html.dark .el-card{--el-card-bg-color: var(--bg-white);background-color:var(--bg-white);border-color:var(--border-color);color:var(--text-primary)}html.dark .el-table{--el-table-bg-color: var(--bg-white);--el-table-tr-bg-color: var(--bg-white);--el-table-header-bg-color: var(--bg-light);--el-table-row-hover-bg-color: rgba(255, 255, 255, .04);--el-table-text-color: var(--text-primary);--el-table-border-color: var(--border-color);--el-table-header-text-color: var(--text-secondary);color:var(--text-primary)}html.dark .el-input__wrapper,html.dark .el-select__wrapper,html.dark .el-textarea__inner{background-color:var(--bg-light)!important;box-shadow:0 0 0 1px var(--border-color)!important;color:var(--text-primary)}html.dark .el-input__inner{color:var(--text-primary)!important}html.dark .el-drawer{--el-drawer-bg-color: var(--bg-white)}html.dark .el-dialog{--el-dialog-bg-color: var(--bg-white);--el-dialog-title-font-size: 16px}html.dark .el-tabs__header{background:var(--bg-base)!important;border-bottom-color:var(--border-color)!important}html.dark .el-tabs__item{color:var(--text-secondary)!important}html.dark .el-tabs__item.is-active{color:var(--primary-color)!important}html.dark .el-tabs__item:hover{color:var(--primary-light)!important}html.dark .el-pagination{--el-pagination-bg-color: var(--bg-light);--el-pagination-text-color: var(--text-secondary);--el-pagination-hover-color: var(--primary-color)}html.dark .el-pagination button,html.dark .el-pagination .el-pager li{background-color:var(--bg-light)!important;color:var(--text-secondary)!important}html.dark .el-pagination button.is-active,html.dark .el-pagination .el-pager li.is-active{color:var(--primary-color)!important}html.dark .el-tag{--el-tag-bg-color: rgba(20, 184, 166, .15);--el-tag-border-color: rgba(20, 184, 166, .3);--el-tag-text-color: #2dd4bf}html.dark .el-dropdown-menu{background-color:var(--bg-white)!important;border-color:var(--border-color)!important}html.dark .el-dropdown-menu .el-dropdown-menu__item{color:var(--text-primary)!important}html.dark .el-dropdown-menu .el-dropdown-menu__item:hover{background-color:#ffffff0f!important;color:var(--primary-color)!important}html.dark .el-popover,html.dark .el-popper{--el-popover-bg-color: var(--bg-white);background-color:var(--bg-white)!important;border-color:var(--border-color)!important;color:var(--text-primary)!important}html.dark .el-form-item__label{color:var(--text-primary)!important}html.dark .el-descriptions__label{color:var(--text-secondary)!important}html.dark .el-descriptions__content{color:var(--text-primary)!important}html.dark .stat-card{background:var(--bg-white)!important;border-color:var(--border-color)!important}html.dark .stat-card .stat-label{color:var(--text-secondary)!important}html.dark .stat-card .stat-value{color:var(--text-primary)!important}html.dark .page-with-tabs .el-tabs__header{background:var(--bg-base)!important}html.dark .command-palette-mask{background:#0009!important}html.dark .command-palette{background:var(--bg-white)!important;border-color:var(--border-color)!important}html.dark .el-select-dropdown{background-color:var(--bg-white)!important;border-color:var(--border-color)!important}html.dark .el-select-dropdown .el-select-dropdown__item{color:var(--text-primary)!important}html.dark .el-select-dropdown .el-select-dropdown__item:hover{background-color:#ffffff0f!important}html.dark .el-select-dropdown .el-select-dropdown__item.is-selected{color:var(--primary-color)!important}html.dark .el-breadcrumb__inner{color:var(--text-secondary)!important}html.dark .el-message-box{--el-messagebox-bg: var(--bg-white);background-color:var(--bg-white)!important;border-color:var(--border-color)!important}html.dark .el-message-box .el-message-box__title{color:var(--text-primary)!important}html.dark .el-message-box .el-message-box__content{color:var(--text-secondary)!important}html.dark .el-badge__content{border-color:var(--bg-white)!important}html.dark ::-webkit-scrollbar-thumb{background:#475569}html.dark .sidebar-logo-container{border-bottom-color:var(--border-color)!important}html.dark .summary-card{background:var(--bg-white)!important;color:var(--text-primary)!important}html.dark .summary-card .summary-label{color:var(--text-muted)!important}html.dark .summary-card .summary-value{color:var(--text-primary)!important}html.dark .filter-card,html.dark .search-card{background:var(--bg-white)!important}html.dark .meter-detail-page,html.dark .device-detail-page{background:var(--bg-base)!important}html.dark .page-header{background:var(--bg-white)!important}html.dark .page-header .page-title,html.dark .status-value{color:var(--text-primary)!important}html.dark .status-label{color:var(--text-muted)!important}html.dark .estimate-card :deep(.el-card__header){background:var(--bg-light)!important}html.dark .el-descriptions{--el-descriptions-table-border: var(--border-color)}html.dark .el-descriptions .el-descriptions__label{background-color:var(--bg-light)!important;color:var(--text-secondary)!important}html.dark .el-descriptions .el-descriptions__content{background-color:var(--bg-white)!important;color:var(--text-primary)!important}html.dark .current-balance,html.dark .recharge-form .current-balance{background:#14b8a61a!important}html.dark .current-balance .label,html.dark .recharge-form .current-balance .label{color:var(--text-secondary)!important}html.dark .current-balance .value,html.dark .recharge-form .current-balance .value{color:#2dd4bf!important}html.dark .transfer-info,html.dark .transfer-form .transfer-info{background:var(--bg-light)!important}html.dark .transfer-info .label,html.dark .transfer-form .transfer-info .label{color:var(--text-muted)!important}html.dark .transfer-info .value,html.dark .transfer-form .transfer-info .value{color:var(--text-primary)!important}html.dark .security-item{border-bottom-color:var(--border-color)!important}html.dark .security-title{color:var(--text-primary)!important}html.dark .security-desc{color:var(--text-muted)!important}html.dark .tier-name{color:var(--text-secondary)!important}html.dark .el-loading-mask{background-color:#0f172ab3!important}html.dark .el-empty__description p{color:var(--text-muted)!important}html.dark .el-alert.el-alert--info{background-color:#14b8a614;border-color:#14b8a633}html.dark .el-alert.el-alert--warning{background-color:#f59e0b14;border-color:#f59e0b33}html.dark #nprogress .bar{background:var(--primary-color)!important}html.dark .login-brand{background:linear-gradient(135deg,#0f172a,#1e293b)!important}html.dark .login-form-wrapper{background:var(--bg-base)!important}html.dark .command-palette-input{background:var(--bg-light)!important;color:var(--text-primary)!important;border-color:var(--border-color)!important}html.dark .command-palette-item{color:var(--text-primary)!important}html.dark .command-palette-item:hover,html.dark .command-palette-item.active{background:var(--primary-bg)!important}html.dark .echarts-tooltip{background:var(--bg-white)!important;border-color:var(--border-color)!important;color:var(--text-primary)!important}*,*:before,*:after{box-sizing:border-box}body,h1,h2,h3,h4,h5,h6,p,ul,ol,li,figure,figcaption,blockquote,dl,dd{margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:DM Sans,Noto Sans SC,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px;line-height:1.5;color:#1e293b;background-color:#f8fafc;min-height:100vh}a{color:#0d9488;text-decoration:none;transition:color .15s ease}a:hover{color:#0f766e}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#94a3b8;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#64748b}.el-button--primary{--el-button-bg-color: #0d9488;--el-button-border-color: #0d9488;--el-button-hover-bg-color: #14b8a6;--el-button-hover-border-color: #14b8a6;--el-button-active-bg-color: #0f766e;--el-button-active-border-color: #0f766e}.el-menu{border-right:none!important}.el-card{--el-card-border-radius: 12px;border:none;box-shadow:0 1px 2px #0000000d}.el-table{--el-table-border-color: #f1f5f9;--el-table-header-bg-color: #f1f5f9}.el-dialog{--el-dialog-border-radius: 12px}.el-drawer{--el-drawer-padding-primary: 20px}.el-select,.el-tree-select{width:100%}.el-select-dropdown .el-select-dropdown__list{padding:6px 0!important}.el-select-dropdown .el-select-dropdown__item{height:34px!important;line-height:34px!important;padding:0 20px!important;font-size:14px!important;color:#1e293b!important}.el-select-dropdown .el-select-dropdown__item.is-selected{color:#0d9488!important;font-weight:500}.el-select-dropdown .el-select-dropdown__item:hover{background-color:#f1f5f9!important}.el-select-dropdown .el-scrollbar__view .el-select-dropdown__item{display:flex!important;align-items:center!important}.el-popper{z-index:2050!important}.el-form-item .el-select,.el-form-item .el-tree-select{width:100%}.el-form-item .n-select{width:200px}.search-card .el-form--inline .el-form-item .el-select{min-width:160px}.search-card .el-form--inline .el-form-item .el-input{min-width:200px}.n-select{--n-border: 1px solid #e2e8f0 !important;--n-border-hover: 1px solid #0d9488 !important;--n-border-focus: 1px solid #0d9488 !important;--n-box-shadow-focus: 0 0 0 2px rgba(13, 148, 136, .2) !important}.n-base-select-menu,.n-select-menu,.v-binder-follower-container{z-index:9999!important}.el-dialog .n-select,.el-drawer .n-select{position:relative;z-index:1}.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.flex-col{display:flex;flex-direction:column}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-6{gap:24px}.text-center{text-align:center}.text-right{text-align:right}.text-primary{color:#1e293b}.text-secondary{color:#64748b}.text-muted{color:#94a3b8}.text-success{color:#22c55e}.text-warning{color:#f59e0b}.text-danger{color:#ef4444}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-container{padding:24px 28px;min-height:calc(100vh - var(--header-height))}.page-header{margin-bottom:24px}.page-header .page-title{font-size:24px;font-weight:600;color:#1e293b;margin-bottom:8px}.page-header .page-desc{font-size:14px;color:#64748b}.stat-card{background:#fff;border-radius:16px;padding:24px;box-shadow:0 1px 2px #0000000d;transition:all .35s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;border:1px solid rgba(0,0,0,.04)}.stat-card:before{content:"";position:absolute;top:-30px;right:-30px;width:100px;height:100px;border-radius:50%;opacity:.06;transition:all .35s ease;background:currentColor}.stat-card:after{content:"";position:absolute;bottom:-20px;right:30px;width:60px;height:60px;border-radius:50%;opacity:.04;background:currentColor}.stat-card:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;transform:translateY(-4px)}.stat-card:hover:before{transform:scale(1.2);opacity:.08}.stat-card:hover .stat-icon{transform:scale(1.08);box-shadow:0 8px 20px #0000001f}.stat-card .stat-icon{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;margin-bottom:18px;transition:all .35s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #00000014}.stat-card .stat-icon .el-icon{font-size:24px;color:#fff}.stat-card .stat-value{font-size:28px;font-weight:700;color:#1e293b;margin-bottom:6px;letter-spacing:-.5px;line-height:1.2}.stat-card .stat-label{font-size:13px;color:#64748b;font-weight:500}.stat-card .stat-trend{margin-top:14px;font-size:12px;font-weight:500;display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:20px;display:inline-flex;background:#00000008}.stat-card .stat-trend.up{color:#22c55e;background:#22c55e14}.stat-card .stat-trend.down{color:#ef4444;background:#ef444414}.page-with-tabs{display:flex;flex-direction:column;min-height:calc(100vh - var(--header-height))}.page-with-tabs .el-tabs{display:flex;flex-direction:column;flex:1}.page-with-tabs .el-tabs__header{position:sticky;top:0;z-index:10;background:var(--bg-base, #f8fafc);margin:0;padding:0 28px;border-bottom:1px solid var(--border-light, #e2e8f0)}.page-with-tabs .el-tabs__header .el-tabs__nav-wrap:after{display:none}.page-with-tabs .el-tabs__header .el-tabs__item{height:48px;line-height:48px;font-size:14px;font-weight:500;color:var(--text-secondary, #64748b);padding:0 20px}.page-with-tabs .el-tabs__header .el-tabs__item.is-active{color:var(--primary-color, #14b8a6);font-weight:600}.page-with-tabs .el-tabs__header .el-tabs__item:hover{color:var(--primary-color, #14b8a6)}.page-with-tabs .el-tabs__header .el-tabs__active-bar{background-color:var(--primary-color, #14b8a6);height:2px;border-radius:2px}.page-with-tabs .el-tabs__content{flex:1;padding:24px 28px;overflow:visible}.page-padded{padding:24px 28px;min-height:calc(100vh - var(--header-height))}.el-menu--vertical.el-menu--popup-container .el-menu--popup{background:linear-gradient(180deg,#1e293b,#0f172a)!important;border:1px solid rgba(255,255,255,.08);border-radius:12px;box-shadow:0 12px 40px #00000059,0 4px 12px #0003;padding:8px;min-width:180px;backdrop-filter:blur(12px)}.el-menu--vertical.el-menu--popup-container .el-menu--popup .el-menu-item{color:#94a3b8!important;background-color:transparent!important;border-radius:8px;margin:2px 0;height:40px;line-height:40px;padding:0 16px!important;font-size:13px;transition:all .15s ease}.el-menu--vertical.el-menu--popup-container .el-menu--popup .el-menu-item:hover{background-color:#ffffff14!important;color:#e2e8f0!important}.el-menu--vertical.el-menu--popup-container .el-menu--popup .el-menu-item.is-active{background:linear-gradient(90deg,#14b8a62e,#14b8a60f)!important;color:#14b8a6!important;font-weight:500}.el-menu--vertical.el-menu--popup-container .el-menu--popup .el-menu-item .el-icon{color:inherit;margin-right:8px;font-size:16px}.el-table,.el-card .el-table{width:100%!important}#nprogress .bar{background:#0d9488!important;height:3px!important}#nprogress .peg{box-shadow:0 0 10px #0d9488,0 0 5px #0d9488!important}@media(max-width:768px){.page-container,.page-padded{padding:16px 12px}.page-with-tabs .el-tabs__header{padding:0 12px}.page-with-tabs .el-tabs__content{padding:16px 12px}.stat-card{padding:16px}.stat-card .stat-value{font-size:22px}.stat-card .stat-icon{width:42px;height:42px}.el-drawer{--el-drawer-size: 100% !important}.search-card .el-form--inline .el-form-item{margin-right:8px;margin-bottom:8px}.search-card .el-form--inline .el-form-item .el-select{min-width:120px}.search-card .el-form--inline .el-form-item .el-input{min-width:150px}}@media(max-width:480px){.page-container,.page-padded{padding:12px 8px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-fade-in{animation:fadeIn .3s ease-out}.animate-slide-in{animation:slideInLeft .3s ease-out}.bg-gradient-primary{background:linear-gradient(135deg,#0d9488,#14b8a6)}.bg-gradient-success{background:linear-gradient(135deg,#059669,#22c55e)}.bg-gradient-warning{background:linear-gradient(135deg,#d97706,#f59e0b)}.bg-gradient-danger{background:linear-gradient(135deg,#dc2626,#ef4444)}.bg-gradient-info{background:linear-gradient(135deg,#2563eb,#3b82f6)}
