/* ==================== 响应式增强样式 ==================== */

/* 容器最大宽度自适应 */
.container {
    max-width: min(1400px, 95vw);
    margin: 0 auto;
    padding: 0 clamp(10px, 2vw, 20px);
}

/* 侧边栏响应式 */
@media (min-width: 1441px) {
    .sidebar {
        width: 55px;
    }
    
    .main-content {
        margin-left: 55px;
    }
}

@media (min-width: 1025px) and (max-width: 1440px) {
    .sidebar {
        width: 50px;
    }
    
    .main-content {
        margin-left: 50px;
    }
}

/* 仪表盘卡片响应式 */
@media (min-width: 1600px) {
    .dashboard-grid {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media (min-width: 1200px) and (max-width: 1599px) {
    .dashboard-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (min-width: 769px) and (max-width: 1199px) {
    .dashboard-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* 内容包装器响应式内边距 */
.content-wrapper {
    padding: clamp(15px, 2vw, 30px);
}

/* 信息框响应式 */
.info-box {
    padding: clamp(15px, 2vw, 25px);
    margin-bottom: clamp(15px, 2vh, 25px);
}

.info-box h2 {
    font-size: clamp(1rem, 1.2rem + 0.5vw, 1.5rem);
    margin-bottom: clamp(12px, 1.5vh, 20px);
}

/* 按钮响应式 */
.btn {
    padding: clamp(8px, 1vh, 12px) clamp(12px, 1.5vw, 20px);
    font-size: clamp(0.85rem, 0.9rem, 1rem);
    white-space: nowrap;
    display: inline-block;
}

/* 操作栏按钮不要全宽 */
.action-bar .btn {
    width: auto;
}

/* 表格内按钮 */
table .btn {
    padding: clamp(6px, 0.8vh, 10px) clamp(10px, 1.2vw, 14px);
    font-size: clamp(0.75rem, 0.85rem, 0.95rem);
}

/* 表格响应式 */
table {
    font-size: clamp(0.8rem, 0.9rem, 1rem);
}

th, td {
    padding: clamp(8px, 1vh, 14px) clamp(10px, 1.5vw, 18px);
}

/* 统计卡片响应式 */
.stat-card {
    padding: clamp(15px, 2vw, 25px);
}

.stat-value {
    font-size: clamp(1.5rem, 2rem + 0.5vw, 2.5rem);
}

.stat-label {
    font-size: clamp(0.85rem, 0.9rem, 1rem);
}

/* 输入框响应式 */
input[type="text"],
input[type="password"],
input[type="number"],
input[type="email"],
textarea,
select {
    font-size: clamp(0.9rem, 1rem, 1.1rem);
    padding: clamp(8px, 1vh, 12px) clamp(10px, 1.5vw, 15px);
}

/* 操作栏响应式 */
.action-bar {
    gap: clamp(8px, 1vw, 15px);
}

/* 用户界面响应式 */
.user-header {
    padding: clamp(15px, 2vh, 25px) clamp(15px, 2vw, 25px);
}

.user-header h1 {
    font-size: clamp(1.3rem, 1.5rem + 0.5vw, 2rem);
}

.stats-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(250px, 100%), 1fr));
    gap: clamp(12px, 1.5vw, 20px);
}

.content-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(400px, 100%), 1fr));
    gap: clamp(15px, 2vw, 25px);
}

/* 中等屏幕优化 (1025px - 1440px) */
@media (min-width: 1025px) and (max-width: 1440px) {
    .top-bar h1 {
        font-size: 1.3rem;
    }
    
    .stat-card {
        padding: 18px;
    }
}

/* 大屏优化 (>1440px) */
@media (min-width: 1441px) {
    .content-wrapper {
        max-width: 1600px;
        margin: 0 auto;
    }
    
    .dashboard-grid {
        gap: 25px;
    }
    
    .info-box {
        padding: 25px;
    }
}

/* 超大屏优化 (>1920px) */
@media (min-width: 1921px) {
    html {
        font-size: 18px;
    }
    
    .content-wrapper {
        max-width: 1800px;
    }
    
    .sidebar {
        width: 60px;
    }
    
    .main-content {
        margin-left: 60px;
    }
}

/* 弹窗响应式 */
.modal-content {
    width: min(400px, 90vw);
    max-height: 85vh;
}

.modal-content-wide {
    width: min(900px, 95vw);
    max-height: 85vh;
}

/* 表单组响应式 */
.form-group {
    margin-bottom: clamp(12px, 1.5vh, 20px);
}

.form-group label {
    font-size: clamp(0.9rem, 1rem, 1.1rem);
    margin-bottom: clamp(6px, 0.8vh, 10px);
}

/* 卡片响应式 */
.card {
    padding: clamp(20px, 3vw, 35px);
}

/* 标签页响应式 */
.tab {
    padding: clamp(10px, 1.2vh, 14px) clamp(16px, 2vw, 24px);
    font-size: clamp(0.9rem, 1rem, 1.1rem);
}

/* 徽章响应式 */
.badge {
    padding: clamp(4px, 0.5vh, 6px) clamp(8px, 1vw, 12px);
    font-size: clamp(0.75rem, 0.85rem, 0.95rem);
}

/* 信息项响应式 */
.info-item {
    padding: clamp(10px, 1.2vh, 15px) 0;
}

.info-label {
    font-size: clamp(0.85rem, 0.95rem, 1.05rem);
}

.info-value {
    font-size: clamp(0.9rem, 1rem, 1.1rem);
}

/* 顶部栏响应式 */
.top-bar {
    padding: clamp(12px, 1.5vh, 20px) clamp(15px, 2vw, 25px);
    gap: clamp(10px, 1.5vw, 20px);
}

.top-bar h1 {
    font-size: clamp(1.2rem, 1.4rem + 0.3vw, 1.8rem);
}

/* 侧边栏图标响应式 */
.sidebar-item {
    width: clamp(38px, 2.8vw, 48px);
    height: clamp(38px, 2.8vw, 48px);
    font-size: clamp(1rem, 1.3rem, 1.5rem);
}

.sidebar-logo {
    font-size: clamp(1.2rem, 1.5rem, 1.8rem);
    margin-bottom: clamp(15px, 2vh, 25px);
}

/* 切换开关响应式 */
.toggle-switch {
    width: clamp(45px, 3.5vw, 55px);
    height: clamp(22px, 1.8vh, 26px);
}

.toggle-slider:before {
    height: clamp(16px, 1.3vh, 20px);
    width: clamp(16px, 1.3vh, 20px);
}

/* 用户统计图标响应式 */
.stat-icon {
    width: clamp(45px, 3.5vw, 55px);
    height: clamp(45px, 3.5vw, 55px);
    font-size: clamp(1.3rem, 1.5rem, 1.8rem);
}

