@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";.main-layout{min-height:100vh;background-color:var(--bg-body)}.main-sider{background:#fff!important;border-right:none!important;box-shadow:2px 0 20px #00000005;z-index:10}.logo{height:64px;display:flex;align-items:center;padding:0 24px;margin-bottom:24px}.logo-icon{width:36px;height:36px;background:linear-gradient(135deg,var(--primary-color),var(--primary-active));border-radius:10px;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14px;margin-right:12px;box-shadow:0 4px 6px -1px #0596694d}.logo-text{font-size:18px;font-weight:700;color:var(--text-primary);letter-spacing:-.5px}.main-menu{border-right:none!important;padding:0 12px}.ant-menu-item{border-radius:10px!important;margin-bottom:8px!important;color:var(--text-secondary)!important;height:48px!important;line-height:48px!important}.ant-menu-item:hover{color:var(--primary-color)!important;background-color:var(--primary-bg)!important}.ant-menu-item-selected{background-color:var(--primary-bg)!important;color:var(--primary-color)!important;font-weight:600;position:relative}.ant-menu-item-selected:before{content:"";position:absolute;left:-12px;top:12px;bottom:12px;width:4px;background:var(--primary-color);border-radius:0 4px 4px 0;display:none}.main-header{background:#fffc!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:0 32px!important;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(0,0,0,.03);position:sticky;top:0;z-index:9}.header-left .current-date{color:var(--text-tertiary);font-weight:500;font-size:14px}.header-right{display:flex;align-items:center;gap:24px}.header-icon{font-size:18px;color:var(--text-secondary);cursor:pointer;transition:color .3s}.header-icon:hover{color:var(--primary-color)}.user-info{display:flex;align-items:center;gap:12px;padding:4px 12px;border-radius:30px;background:var(--bg-body);border:1px solid transparent;cursor:pointer;transition:all .3s}.user-info:hover{background:#fff;box-shadow:var(--shadow-sm);border-color:#e5e7eb}.user-name{font-weight:600;color:var(--text-primary);font-size:14px}.main-content{margin:24px 32px!important;min-height:280px;border-radius:var(--radius-lg)}.dashboard-container{min-height:100%}.stat-card{height:100%;position:relative;overflow:hidden;border:none!important;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008!important}.stat-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.stat-title{color:#6b7280;font-size:14px;font-weight:500}.stat-icon-bg{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:20px}.bg-blue{background:#eff6ff;color:#3b82f6}.bg-red{background:#fef2f2;color:#ef4444}.bg-green{background:#ecfdf5;color:#10b981}.bg-purple{background:#f5f3ff;color:#8b5cf6}.stat-value-group{display:flex;align-items:baseline;gap:4px}.stat-value{font-size:28px;font-weight:700;color:#111827;line-height:1.2}.stat-suffix{font-size:14px;color:#9ca3af;font-weight:500}.stat-subtext{margin-top:8px;font-size:12px;color:#9ca3af;display:flex;align-items:center;gap:8px}.trend-up{color:#10b981;font-weight:600;display:flex;align-items:center;gap:2px}.trend-down{color:#ef4444;font-weight:600;display:flex;align-items:center;gap:2px}.operation-bar-card{margin-bottom:24px;border-radius:12px!important}.operation-bar{display:flex;justify-content:space-between;align-items:center}.label-text{font-weight:600;color:#374151}.modern-tabs{background:#f3f4f6;padding:4px;border-radius:8px;display:flex;gap:4px}.modern-tab-item{padding:6px 16px;font-size:13px;font-weight:500;color:#4b5563;cursor:pointer;border-radius:6px;transition:all .2s}.modern-tab-item.active{background:#fff;color:#059669;box-shadow:0 1px 2px #0000001a;font-weight:600}.table-card-modern{border-radius:12px!important}.indicator-name-wrapper{display:flex;align-items:center;gap:12px;cursor:pointer}.indicator-icon{width:32px;height:32px;background:#f3f4f6;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#6b7280;transition:all .2s}.indicator-name-wrapper:hover .indicator-icon{background:#ecfdf5;color:#059669}.indicator-info{display:flex;flex-direction:column}.name-text{font-weight:600;color:#1f2937;font-size:14px}.tag-core{font-size:10px;background:#ede9fe;color:#7c3aed;padding:1px 6px;border-radius:4px;width:fit-content;margin-top:2px;font-weight:600}.dept-tag{background:#f3f4f6;border:none;color:#4b5563;border-radius:6px;padding:2px 8px}.user-avatar-xs{width:20px;height:20px;border-radius:50%;background:#d1fae5;color:#059669;font-size:10px;display:flex;align-items:center;justify-content:center;font-weight:700}.status-capsule{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:600;position:relative}.status-dot{width:6px;height:6px;border-radius:50%}.status-action-icon{margin-left:4px;cursor:pointer;opacity:.7}.status-action-icon:hover{opacity:1}.rate-cell-modern{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.rate-val{font-weight:700;color:#111827;font-family:Inter,sans-serif}.text-success{color:#059669}.progress-bar-bg{width:100px;height:6px;background:#f3f4f6;border-radius:3px;overflow:hidden}.progress-bar-fill{height:100%;border-radius:3px}.target-num{font-family:Inter,sans-serif;font-weight:600;color:#374151}.unit{font-size:12px;color:#9ca3af;font-weight:400;margin-left:2px}.alert-box-error{background:#fef2f2;border:1px solid #fee2e2;color:#b91c1c;padding:12px;border-radius:8px;display:flex;align-items:center;gap:8px}.modern-textarea{width:100%;border:1px solid #e5e7eb;border-radius:8px;padding:12px;outline:none;font-family:inherit;font-size:14px;transition:border-color .2s;background:#f9fafb}.modern-textarea:focus{border-color:#059669;background:#fff;box-shadow:0 0 0 3px #0596691a}:root{--primary-color: #059669;--primary-hover: #10b981;--primary-active: #047857;--primary-bg: #ecfdf5;--accent-blue: #3b82f6;--accent-purple: #8b5cf6;--accent-orange: #f59e0b;--success-color: #10b981;--warning-color: #f59e0b;--error-color: #ef4444;--text-primary: #111827;--text-secondary: #4b5563;--text-tertiary: #9ca3af;--bg-body: #f3f4f6;--bg-card: #ffffff;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .05), 0 2px 4px -1px rgba(0, 0, 0, .03);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .05), 0 4px 6px -2px rgba(0, 0, 0, .025);--shadow-colored: 0 10px 15px -3px rgba(5, 150, 105, .1), 0 4px 6px -2px rgba(5, 150, 105, .05);--radius-xs: 4px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background-color:var(--bg-body);color:var(--text-secondary)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}::-webkit-scrollbar-track{background:transparent}.ant-card{border-radius:var(--radius-md)!important;box-shadow:var(--shadow-sm);border:1px solid rgba(229,231,235,.5)!important;transition:all .3s cubic-bezier(.4,0,.2,1)}.ant-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.ant-btn-primary{background:var(--primary-color)!important;border-color:var(--primary-color)!important;box-shadow:0 4px 6px -1px #05966933;border-radius:8px!important;height:36px;font-weight:500}.ant-btn-primary:hover{background:var(--primary-hover)!important;transform:translateY(-1px)}.ant-tag{border-radius:6px;border:none;padding:2px 8px;font-weight:500}.ant-table-wrapper .ant-table{border-radius:var(--radius-md)}.ant-table-thead>tr>th{background:#f9fafb!important;color:var(--text-secondary)!important;font-weight:600!important;border-bottom:1px solid #f3f4f6!important}.ant-table-tbody>tr:hover>td{background:#f9fafb!important}.ant-modal-content{border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-lg)!important}.ant-modal-header{border-radius:var(--radius-lg) var(--radius-lg) 0 0!important;border-bottom:1px solid #f3f4f6;margin-bottom:20px}.capsule-btn-group{background:#e5e7eb;padding:4px;border-radius:12px}.capsule-btn{border-radius:8px;font-weight:500;color:var(--text-secondary)}.capsule-btn:hover{color:var(--text-primary)}.capsule-btn--active{background:#fff;color:var(--primary-color);box-shadow:0 1px 3px #0000001a}
