/* Font Awesome 图标引用 - 本地版本 */
/* 实际项目中可替换为完整的 Font Awesome CSS 文件 */

/* 基本图标类 */
.fas, .fa-solid {
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
}

.far, .fa-regular {
    font-family: 'Font Awesome 6 Free';
    font-weight: 400;
}

.fal, .fa-light {
    font-family: 'Font Awesome 6 Free';
    font-weight: 300;
}

.fab, .fa-brands {
    font-family: 'Font Awesome 6 Brands';
    font-weight: 400;
}

/* 工业相关图标类（为了演示，这里只列出项目中使用的部分图标） */

/* 核心导航图标 */
.fa-house:before { content: '\f015'; }
.fa-chart-line:before { content: '\f201'; }
.fa-history:before { content: '\f1da'; }
.fa-chart-bar:before { content: '\f080'; }
.fa-gear:before, .fa-cog:before { content: '\f013'; }
.fa-tools:before { content: '\f7d9'; }
.fa-circle-info:before { content: '\f05a'; }

/* 设备状态图标 */
.fa-satellite-dish:before { content: '\f7c0'; }
.fa-cogs:before { content: '\f085'; }
.fa-triangle-exclamation:before { content: '\f071'; }
.fa-exclamation-circle:before { content: '\f06a'; }
.fa-check-circle:before { content: '\f058'; }
.fa-arrow-rotate-right:before { content: '\f2f1'; }

/* 操作按钮图标 */
.fa-search:before { content: '\f002'; }
.fa-download:before { content: '\f019'; }
.fa-refresh:before { content: '\f021'; }
.fa-filter:before { content: '\f0b0'; }
.fa-calendar:before { content: '\f133'; }
.fa-clock:before { content: '\f017'; }
.fa-user:before { content: '\f007'; }
.fa-user-shield:before { content: '\f505'; }
.fa-xmark:before { content: '\f00d'; }
.fa-eye:before { content: '\f06e'; }
.fa-eye-slash:before { content: '\f070'; }
.fa-save:before { content: '\f0c7'; }
.fa-trash:before { content: '\f1f8'; }

/* 数据可视化图标 */
.fa-chart-pie:before { content: '\f200'; }
.fa-chart-area:before { content: '\f1fe'; }
.fa-table:before { content: '\f0ce'; }
.fa-file-excel:before { content: '\f1c3'; }
.fa-file-pdf:before { content: '\f1c1'; }

/* 系统状态图标 */
.fa-plug:before { content: '\f1e6'; }
.fa-server:before { content: '\f233'; }
.fa-database:before { content: '\f1c0'; }
.fa-ethernet:before { content: '\f796'; }
.fa-wifi:before { content: '\f1eb'; }
.fa-signal:before { content: '\f012'; }

/* 颜色样式类 */
.text-success {
    color: rgb(0, 176, 80);
}

.text-warning {
    color: rgb(255, 192, 0);
}

.text-danger {
    color: rgb(255, 0, 0);
}

.text-orange {
    color: rgb(255, 102, 0);
}

.text-primary {
    color: rgb(0, 113, 197);
}

/* 闪烁动画 */
@keyframes blink {
    0%, 50% { opacity: 1; }
    51%, 100% { opacity: 0.2; }
}

.blink {
    animation: blink 1s infinite;
}

/* 旋转动画 */
@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.spin {
    animation: spin 1s linear infinite;
}

/* 脉冲动画 */
@keyframes pulse {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.05); }
}

.pulse {
    animation: pulse 2s infinite;
}

/* 工具提示样式 */
[data-tooltip] {
    position: relative;
    cursor: help;
}

[data-tooltip]:hover::after {
    content: attr(data-tooltip);
    position: absolute;
    bottom: 125%;
    left: 50%;
    transform: translateX(-50%);
    background-color: rgba(0, 0, 0, 0.8);
    color: white;
    padding: 5px 10px;
    border-radius: 4px;
    font-size: 12px;
    white-space: nowrap;
    z-index: 1000;
}

[data-tooltip]:hover::before {
    content: '';
    position: absolute;
    bottom: 115%;
    left: 50%;
    transform: translateX(-50%);
    border-width: 5px;
    border-style: solid;
    border-color: rgba(0, 0, 0, 0.8) transparent transparent transparent;
}