.chart-container{display:flex;width:100%;height:600px;border-radius:5px;box-shadow:0 4px 12px #0000001a;overflow:hidden;min-height:500px;background-color:#fff;flex-direction:row;padding-bottom:10px}.chart-section{flex:1;min-width:0;border-right:1px solid #eaeaea;padding:16px;display:flex;flex-direction:column;position:relative}.chart-controls{display:flex;justify-content:space-between;padding:8px 0 16px;border-bottom:1px solid #eaeaea;margin-bottom:16px;flex-wrap:wrap;gap:12px}.control-group{display:flex;align-items:center;margin-right:16px}.control-label{font-size:13px;color:#606266;margin-right:8px;white-space:nowrap}.chart-wrapper{width:100%;height:100%;min-height:350px;flex-grow:1}.description-section{width:58%;min-width:200px;background-color:#f9fafc;display:flex;flex-direction:column}.description-title{color:#2c3e50;font-size:18px;margin-top:0;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #eaeaea}.description-content{font-size:14px;line-height:1.6;color:#5e6d82;height:100%;overflow-y:auto}.download-button-container{position:absolute;right:5px;bottom:5px;z-index:10}.dark-theme .chart-container{background-color:#2d2d2d;box-shadow:0 4px 12px #0000004d}.dark-theme .chart-controls{border-bottom-color:#444}.dark-theme .control-label{color:#c0c4cc}.dark-theme .description-section{background-color:#2d2d2d}.dark-theme .description-title{color:#e6e6e6;border-bottom-color:#444}.dark-theme .description-content{color:#c0c4cc}.chart-wrapper.loading{display:flex;align-items:center;justify-content:center}.chart-wrapper.error{display:flex;align-items:center;justify-content:center;color:#ff6b6b}@media(max-width:992px){.chart-container{flex-direction:column;min-height:auto}.chart-section{border-right:none;border-bottom:1px solid #eaeaea;height:450px}.chart-controls{flex-direction:column;align-items:flex-start;gap:12px}.control-group{width:100%;margin-right:0}.description-section{width:100%;min-width:0}}@media(max-width:768px){.chart-controls{padding-bottom:12px}.chart-section{height:500px}}.blur-background{background:#ffffff80;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);border-radius:10px;display:flex;justify-content:center;align-items:center}:root{--oa-primary: #1e40af;--oa-primary-light: #3b82f6;--oa-primary-bg: #eff4ff;--oa-success: #16a34a;--oa-success-bg: #f0fdf4;--oa-warning: #d97706;--oa-warning-bg: #fffbeb;--oa-danger: #dc2626;--oa-danger-bg: #fef2f2;--oa-bg-page: #f6f8fb;--oa-bg-card: #ffffff;--oa-border: #eaeef4;--oa-border-strong: #c7d7f5;--oa-text-primary: #0f172a;--oa-text-regular: #1e293b;--oa-text-secondary: #64748b;--oa-text-muted: #94a3b8;--oa-strategy-a: #0e7490;--oa-strategy-b: #7c3aed;--oa-strategy-c: #b45309;--oa-font-lg: 16px;--oa-font-md: 14px;--oa-font-sm: 13px;--oa-font-xs: 12px;--oa-gap-xs: 6px;--oa-gap-sm: 8px;--oa-gap-md: 12px;--oa-gap-lg: 16px;--oa-radius: 9px;--oa-radius-lg: 12px;--oa-radius-xl: 14px;--oa-shadow: 0 1px 2px rgba(15, 23, 42, .04);--oa-shadow-md: 0 4px 12px rgba(15, 23, 42, .08);--oa-highlight: rgba(59, 130, 246, .18);--oa-highlight-strong: rgba(217, 119, 6, .22)}.oa-card{background:var(--oa-bg-card);border:1px solid var(--oa-border);border-radius:var(--oa-radius-lg);box-shadow:var(--oa-shadow)}.oa-panel-title{font-size:var(--oa-font-md);font-weight:600;color:var(--oa-text-regular)}.oa-highlighted{background:var(--oa-highlight);border-radius:3px;transition:background .2s}:root{--ui-primary: #0284c7;--ui-primary-hover: #0369a1;--ui-primary-active: #026a9f;--ui-primary-light: #e6f3f9;--ui-primary-lighter: #f0f9ff;--ui-primary-gradient: linear-gradient(135deg, #0284c7, #38bdf8);--ui-success: #16a34a;--ui-warning: #d97706;--ui-danger: #dc2626;--ui-bg-page: #f6f8fb;--ui-bg-card: #ffffff;--ui-border: #e5eaf1;--ui-text-title: #1e293b;--ui-text-regular: #334155;--ui-text-secondary: #64748b;--ui-text-muted: #94a3b8;--ui-radius-sm: 8px;--ui-radius: 12px;--ui-radius-lg: 14px;--ui-shadow: 0 1px 2px rgba(15, 23, 42, .05);--ui-shadow-md: 0 4px 12px rgba(15, 23, 42, .08);--el-color-primary: #0284c7;--el-color-primary-light-3: #4ea9d8;--el-color-primary-light-5: #81c2e3;--el-color-primary-light-7: #b3daee;--el-color-primary-light-8: #cce6f4;--el-color-primary-light-9: #e6f3f9;--el-color-primary-dark-2: #026a9f;--el-color-success: #16a34a;--el-color-success-light-3: #5cbf80;--el-color-success-light-5: #8bd1a5;--el-color-success-light-7: #b9e3c9;--el-color-success-light-8: #d0eddb;--el-color-success-light-9: #e8f6ed;--el-color-success-dark-2: #12823b;--el-color-warning: #d97706;--el-color-warning-light-3: #e4a051;--el-color-warning-light-5: #ecbb83;--el-color-warning-light-7: #f4d6b4;--el-color-warning-light-8: #f7e4cd;--el-color-warning-light-9: #fbf1e6;--el-color-warning-dark-2: #ae5f05;--el-color-danger: #dc2626;--el-color-error: #dc2626;--el-color-danger-light-3: #e76767;--el-color-danger-light-5: #ee9393;--el-color-danger-light-7: #f5bebe;--el-color-danger-light-8: #f8d4d4;--el-color-danger-light-9: #fce9e9;--el-color-danger-dark-2: #b01e1e;--el-color-error-light-3: #e76767;--el-color-error-light-5: #ee9393;--el-color-error-light-7: #f5bebe;--el-color-error-light-8: #f8d4d4;--el-color-error-light-9: #fce9e9;--el-color-error-dark-2: #b01e1e;--el-color-info: #64748b;--el-color-info-light-3: #939eae;--el-color-info-light-5: #b2bac5;--el-color-info-light-7: #d1d5dc;--el-color-info-light-8: #e0e3e8;--el-color-info-light-9: #f0f1f3;--el-color-info-dark-2: #505d6f;--el-border-radius-base: 8px;--el-border-radius-small: 6px;--oa-primary: #0284c7;--oa-primary-light: #0369a1;--oa-primary-bg: #f0f9ff;--oa-border-strong: #b3daee;--ai-accent: var(--ui-primary);--ai-accent-2: #38bdf8;--ai-accent-grad: linear-gradient(135deg, #0284c7, #38bdf8);--ai-track: #e6f3f9;--ai-text: var(--ui-primary-hover);--ai-size-sm: 14px;--ai-size-md: 18px;--ai-radius: 999px}.ui-page{min-height:100%;background:var(--ui-bg-page)}.ui-page-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:18px 24px 0;max-width:1360px;margin:0 auto;box-sizing:border-box;width:100%}.ui-page-head-main{display:flex;align-items:center;gap:12px;min-width:0}.ui-back{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:#fff;border-radius:var(--ui-radius-sm);color:var(--ui-text-secondary);cursor:pointer;box-shadow:var(--ui-shadow);transition:color .2s,background .2s;flex-shrink:0}.ui-back:hover{color:var(--ui-primary);background:var(--ui-primary-light)}.ui-page-icon{width:40px;height:40px;border-radius:10px;background:var(--ui-primary-light);color:var(--ui-primary);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.ui-page-titles{min-width:0}.ui-page-title{margin:0;font-size:18px;font-weight:700;color:var(--ui-text-title);line-height:1.3}.ui-page-desc{margin:2px 0 0;font-size:12.5px;color:var(--ui-text-muted);line-height:1.5}.ui-page-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ui-page-body{max-width:1360px;margin:0 auto;padding:16px 24px 32px;box-sizing:border-box;width:100%}.ui-card{background:var(--ui-bg-card);border:1px solid var(--ui-border);border-radius:var(--ui-radius);box-shadow:var(--ui-shadow)}.ui-loading-tip{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:48px 0;color:var(--ui-text-secondary);font-size:14px}@keyframes ai-spin{to{transform:rotate(360deg)}}@keyframes ai-indeterminate{0%{transform:translate(-100%)}to{transform:translate(280%)}}@keyframes ai-shimmer{0%{background-position:-160% 0}to{background-position:260% 0}}@keyframes ai-blink{0%,to{opacity:1}50%{opacity:.15}}@keyframes ai-pulse{0%,to{box-shadow:0 0 #0284c752}50%{box-shadow:0 0 0 6px #0284c700}}.admin-view{--adm-bg: #f5f7fb;--adm-surface: #ffffff;--adm-border: #eef1f6;--adm-border-strong: #e2e8f0;--adm-text: #1e293b;--adm-text-2: #475569;--adm-text-3: #94a3b8;--adm-accent: #4f46e5;--adm-accent-600: #4338ca;--adm-accent-soft: #eef2ff;--el-color-primary: var(--adm-accent);--el-color-primary-light-3: #7c74ec;--el-color-primary-light-5: #a5a0f3;--el-color-primary-light-7: #cdcafa;--el-color-primary-light-8: #e0defb;--el-color-primary-light-9: var(--adm-accent-soft);--el-color-primary-dark-2: var(--adm-accent-600);--el-text-color-primary: var(--adm-text);--el-text-color-regular: var(--adm-text-2);--el-text-color-secondary: var(--adm-text-3);--el-text-color-placeholder: #b0b8c4;--el-border-color: var(--adm-border-strong);--el-border-color-light: var(--adm-border);--el-border-color-lighter: var(--adm-border);--el-border-color-extra-light: #f1f4f9;--el-fill-color-blank: #ffffff;--el-fill-color-light: #f8fafc;--el-fill-color-lighter: #fbfcfe;--el-bg-color: #ffffff;--el-bg-color-overlay: #ffffff;--el-border-radius-base: 9px;--el-table-border-color: var(--adm-border);--el-table-header-bg-color: #f8fafc;--el-table-header-text-color: var(--adm-text-2);--el-table-text-color: var(--adm-text-2);--el-table-row-hover-bg-color: #f5f7ff;--el-table-current-row-bg-color: var(--adm-accent-soft);--el-card-border-color: var(--adm-border);--el-card-border-radius: 14px;--el-card-padding: 18px;--el-box-shadow-light: 0 6px 20px rgba(15, 23, 42, .05);--el-dialog-border-radius: 16px;min-height:100vh;box-sizing:border-box;background:var(--adm-bg);color:var(--adm-text);font-size:14px;-webkit-font-smoothing:antialiased}.admin-view *,.admin-view *:before,.admin-view *:after{box-sizing:border-box}.adm-header{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:16px}.adm-header .adm-icon{width:46px;height:46px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:23px;color:#fff;background:linear-gradient(135deg,#6366f1,#4f46e5);box-shadow:0 8px 18px #4f46e547;flex-shrink:0}.adm-header .adm-title{display:flex;flex-direction:column;gap:2px;min-width:0}.adm-header .adm-title h1{margin:0;font-size:19px;font-weight:800;letter-spacing:.2px;color:var(--adm-text)}.adm-header .adm-title .adm-sub{font-size:12.5px;color:var(--adm-text-3)}.adm-header .adm-actions{margin-left:auto;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.adm-stats{display:grid;gap:14px;grid-template-columns:repeat(3,1fr);margin-bottom:16px}.adm-stat{display:flex;align-items:center;gap:14px;background:var(--adm-surface);border:1px solid var(--adm-border);border-radius:14px;padding:16px 18px;box-shadow:0 6px 18px #0f172a0a}.adm-stat .adm-stat-icon{width:46px;height:46px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0}.adm-stat .adm-stat-icon.i-indigo{background:#eef2ff;color:#4f46e5}.adm-stat .adm-stat-icon.i-green{background:#ecfdf5;color:#059669}.adm-stat .adm-stat-icon.i-amber{background:#fff7ed;color:#d97706}.adm-stat .adm-stat-icon.i-blue{background:#eff6ff;color:#2563eb}.adm-stat .adm-stat-info{display:flex;flex-direction:column;gap:2px;min-width:0}.adm-stat .adm-stat-label{font-size:12.5px;color:var(--adm-text-3)}.adm-stat .adm-stat-value{font-size:22px;font-weight:800;color:var(--adm-text);line-height:1.1;letter-spacing:-.3px}.admin-view .el-card{box-shadow:0 6px 20px #0f172a0d!important;border:1px solid var(--adm-border)}.admin-view .el-table{border-radius:12px;overflow:hidden;font-size:13px}.admin-view .el-table th.el-table__cell{font-weight:700;letter-spacing:.2px}.admin-view .el-table .cell{line-height:1.5}.admin-view .el-tabs__item{font-weight:600}.admin-view .el-tabs--border-card{border:1px solid var(--adm-border);border-radius:12px;box-shadow:none;overflow:hidden}.admin-view .el-tabs--border-card>.el-tabs__header{background:#f8fafc;border-bottom:1px solid var(--adm-border)}.admin-view .el-pagination{--el-pagination-font-size: 13px;font-weight:500}.admin-view .el-descriptions__label{color:var(--adm-text-3);font-weight:500}.admin-view .el-descriptions__content{color:var(--adm-text)}.admin-view .el-empty__description p{color:var(--adm-text-3)}.admin-view .el-form-item__label{font-weight:600;color:var(--adm-text-2)}.admin-view .el-switch.is-checked .el-switch__core{background:var(--adm-accent)!important;border-color:var(--adm-accent)!important}@media(max-width:768px){.adm-header .adm-actions{margin-left:0;width:100%}.adm-stats{grid-template-columns:1fr}.admin-view .search-input,.admin-view .el-input:not(.el-input-number),.admin-view .el-select{width:100%}.admin-view .el-date-editor.el-input,.admin-view .el-date-editor.el-select{width:100%!important}.admin-view .el-card__body{padding:12px}}@media(max-width:768px){.el-dialog:not(.is-fullscreen){--el-dialog-width: min(92vw, calc(100vw - 96px) ) !important;width:min(92vw,calc(100vw - 96px))!important;max-width:calc(100vw - 96px);margin-top:6vh}.el-message-box{max-width:calc(100vw - 96px)}.el-popover.el-popper{max-width:calc(100vw - 24px)}.el-drawer.ltr,.el-drawer.rtl{width:calc(100vw - 56px)!important}.el-notification{width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)}}@media(max-width:768px){.el-input__inner{font-size:16px}.el-select__selection{min-width:0}.el-select__selection .el-select__selected-item{min-width:0;max-width:100%;overflow:hidden}.el-select__selection .el-select__selected-item>span{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}}@media(max-width:768px){.el-table{font-size:12px}.el-table--default .el-table__cell{padding:5px 0}.el-pagination{flex-wrap:wrap;row-gap:4px;justify-content:flex-end}}@media(max-width:768px){.ui-page-head{padding:12px 14px 0}.ui-page-body{padding:12px 14px 28px}}.ui-page-head.is-sticky[data-v-23acb2a4]{position:sticky;top:0;z-index:20;background:#f6f8fbeb;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding-bottom:14px}
