/* stats.css - 精简版 */
.footer-compact-container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 var(--container-padding-xs, 16px);
    box-sizing: border-box;
}
@media (min-width:576px) { .footer-compact-container { padding: 0 var(--container-padding-sm, 20px); } }
@media (min-width:768px) { .footer-compact-container { padding: 0 var(--container-padding-md, 24px); } }
@media (min-width:992px) { .footer-compact-container { padding: 0 var(--container-padding-lg, 28px); } }
@media (min-width:1200px) { .footer-compact-container { padding: 0 var(--container-padding-xl, 32px); } }

.footer-disclaimer-card {
    background: var(--bg-card, #ffffff);
    border: 1px solid var(--border-color, #e9ecef);
    border-radius: 6px;
    padding: 10px 12px;
    margin-bottom: 10px;
    box-shadow: var(--shadow, 0 2px 4px rgba(0,0,0,.05));
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
}

.disclaimer-header {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px 10px;
    margin-bottom: 8px;
    padding-bottom: 7px;
    border-bottom: 1px solid var(--border-color, #e9ecef);
}
.disclaimer-title {
    font-size: 11px;
    font-weight: 700;
    color: var(--text-primary, #2b2d42);
}
.disclaimer-version {
    font-size: 10px;
    color: var(--text-secondary, #6c757d);
    background: var(--bg-secondary, #f8f9fa);
    padding: 1px 6px;
    border-radius: 8px;
    margin-left: auto;
    white-space: nowrap;
}
.disclaimer-text {
    font-size: 11px;
    line-height: 1.4;
    color: var(--text-secondary, #6c757d);
    text-align: justify;
}
.disclaimer-text strong {
    color: var(--text-primary, #2b2d42);
    font-weight: 650;
}
.email-text {
    color: var(--primary-color, #4361ee);
    font-weight: 500;
    font-style: italic;
}

.footer-stats-cards {
    display: grid;
    gap: 10px;
}
@media (max-width:767px) {
    .footer-stats-cards { grid-template-columns: repeat(2, 1fr) !important; grid-auto-rows: auto; }
}
@media (min-width:768px) and (max-width:1024px) {
    .footer-stats-cards { grid-template-columns: repeat(4, 1fr); }
}
@media (min-width:1025px) {
    .footer-stats-cards { grid-template-columns: repeat(4, 1fr); }
    .footer-compact-container { display: flex; gap: 20px; align-items: flex-start; }
    .footer-stats-cards { flex: none; width: auto; min-width: 0; }
}

.stat-card {
    background: var(--bg-card, #ffffff);
    border: 1px solid var(--border-color, #e9ecef);
    border-radius: 6px;
    padding: 10px;
    transition: all .2s ease;
    box-shadow: var(--shadow, 0 2px 4px rgba(0,0,0,.05));
    box-sizing: border-box;
}
.stat-card:hover {
    border-color: var(--primary-color, #4361ee);
    box-shadow: 0 2px 6px rgba(67,97,238,.08);
}

.stat-card-inner {
    display: flex;
    align-items: center;
    gap: 10px;
}
.stat-icon {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    background-color: transparent;
}
.running-icon {
    border: 1.5px solid var(--error-color, #ef4444);
}
.running-icon i {
    color: var(--error-color, #ef4444);
    font-size: 14px;
}
.online-icon i { color: #ff9f4a; }
.today-icon i { color: #4cd964; }
.total-icon i { color: var(--primary-color, #4361ee); }

.heartbeat-enhanced {
    animation: heartbeat-enhanced 1.2s ease-in-out infinite;
    transform-origin: center;
}
@keyframes heartbeat-enhanced {
    0% { transform: scale(1); color: var(--error-color, #ef4444); }
    25% { transform: scale(1.05); }
    50% { transform: scale(1.1); color: #ff6b81; }
    75% { transform: scale(1.02); }
    100% { transform: scale(1); color: var(--error-color, #ef4444); }
}

.stat-content { flex: 1; min-width: 0; }
.stat-name {
    font-size: 10px;
    color: var(--text-secondary, #6c757d);
    text-transform: uppercase;
    letter-spacing: .3px;
    margin-bottom: 2px;
    font-weight: 600;
}
.stat-number {
    font-size: 14px;
    font-weight: 800;
    color: var(--text-primary, #2b2d42);
    font-family: 'SF Mono','Roboto Mono',Consolas,monospace;
    line-height: 1.1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
#onlineCount { color: #ff9f4a; }
#todayCount { color: #4cd964; }
#totalCount { color: var(--primary-color, #4361ee); }

/* 响应式 */
@media (max-width:767px) {
    .stat-number { font-size: 13px; }
    .stat-card { padding: 8px; }
    .stat-icon { width: 30px; height: 30px; }
    .disclaimer-text { font-size: 10px; }
    .footer-compact-container { padding-top: 0; }
}
@media (max-width:375px) {
    .footer-disclaimer-card { padding: 8px 10px; }
    .disclaimer-header { gap: 4px 8px; }
    .stat-card { padding: 8px; }
    .stat-card-inner { gap: 8px; }
    .stat-icon { width: 28px; height: 28px; border-width: 1px; }
    .stat-number { font-size: 12px; }
    .stat-name { font-size: 9px; }
}
@media (min-width:1025px) { .footer-compact-container { padding-top: 0; } }

.floating-btn { width: 40px; height: 40px; font-size: 14px; }

/* 深色模式 */
.dark-mode .footer-disclaimer-card {
    background: var(--bg-card);
    border-color: var(--border-color);
}
.dark-mode .disclaimer-header { border-bottom-color: var(--border-color); }
.dark-mode .disclaimer-title { color: var(--text-primary); }
.dark-mode .disclaimer-version {
    background: var(--bg-secondary);
    color: var(--text-secondary);
}
.dark-mode .disclaimer-text { color: var(--text-secondary); }
.dark-mode .disclaimer-text strong { color: var(--text-primary); }
.dark-mode .stat-card {
    background: var(--bg-card);
    border-color: var(--border-color);
}
.dark-mode .stat-card:hover { border-color: var(--primary-color); }
.dark-mode .running-icon { border-color: var(--error-color); }
.dark-mode .stat-name { color: var(--text-secondary); }
.dark-mode .stat-number { color: var(--text-primary); }