/* ===== 375px 窄屏专项（iPhone SE/小屏手机） ===== */
/* ui-ux-pro-max 交付检查项：375px 无横向滚动、无遮挡、触摸目标 ≥44px */

@media (max-width: 375px) {
    /* 全局 padding 收紧但保持可触达 */
    .container { padding: 12px; }
    .main-content { padding: 12px; }
    .page-header {
        padding: 16px 12px 12px;
        margin-bottom: 12px;
    }
    .page-header h1 {
        font-size: 20px;
        line-height: 1.3;
    }
    .page-header .subtitle {
        font-size: 13px;
    }

    /* 卡片 */
    .card { padding: 14px; border-radius: 14px; }
    .card-title { font-size: 16px; }

    /* 统计卡片网格：2 列，避免太挤 */
    .stats-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 10px;
    }
    .stat-card { padding: 14px 10px; }
    .stat-value { font-size: 22px; }
    .stat-label { font-size: 12px; }

    /* 按钮 */
    .btn { min-height: 44px; padding: 10px 16px; font-size: 14px; }
    .btn-group { gap: 8px; }
    .btn-group .btn { flex: 1; }

    /* 表单 */
    .form-group { margin-bottom: 14px; }
    .form-group input, .form-group select, .form-group textarea {
        padding: 10px 12px;
        font-size: 16px; /* 防 iOS 缩放 */
        min-height: 44px;
    }
    .form-group label { font-size: 13px; }

    /* 首页倒计时大卡 */
    .hero-card { padding: 24px 16px; }
    .hero-card .countdown { font-size: 48px; }
    .hero-card .countdown-label { font-size: 13px; }

    /* 任务列表 */
    .quest-item { padding: 12px; gap: 10px; }
    .quest-title { font-size: 14px; }

    /* 错题/练习选项：缩小 padding 但保持 44px 高 */
    .option-btn {
        padding: 10px 12px;
        min-height: 44px;
        font-size: 14px;
    }

    /* 番茄钟大字 */
    .timer-display { font-size: 56px; }

    /* 心情选择：横向可滚，避免换行挤压 */
    .mood-selector {
        display: flex;
        overflow-x: auto;
        gap: 8px;
        padding-bottom: 4px;
        -webkit-overflow-scrolling: touch;
    }
    .mood-btn {
        flex: 0 0 auto;
        min-width: 64px;
        min-height: 64px;
    }

    /* 报告页图表占位缩小 */
    .chart-placeholder { height: 160px; }

    /* 底部安全区兜底（全面屏手势指示条） */
    .page-bottom-pad { padding-bottom: calc(20px + env(safe-area-inset-bottom)); }
    .mobile-drawer { padding-bottom: env(safe-area-inset-bottom); }

    /* 等级/进度条 */
    .level-bar { gap: 6px; }
    .level-badge { padding: 4px 8px; font-size: 12px; }

    /* 文字收紧 */
    h2 { font-size: 18px; }
    h3 { font-size: 16px; }
    p, .text-base { font-size: 14px; line-height: 1.6; }
    .text-sm { font-size: 12px; }

    /* 徽章/标签缩小 */
    .badge { padding: 2px 8px; font-size: 11px; }

    /* 导航在 375px 不做横滚兜底（由 nav 横滚 CSS 负责），
       这里确保 logo 不换行、不遮挡 */
    .navbar-brand span {
        font-size: 15px;
    }
    .navbar-brand .logo {
        width: 24px;
        height: 24px;
    }

    /* 空状态 */
    .empty-state { padding: 30px 16px; }
    .empty-state .icon { font-size: 40px; }
}

/* 极小屏兜底（320px 以下，老设备） */
@media (max-width: 320px) {
    .stats-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    .hero-card .countdown { font-size: 40px; }
    .timer-display { font-size: 48px; }
    .page-header h1 { font-size: 18px; }
}

/* 全面屏底部安全区（所有 <900px 都加，不限于 375） */
@media (max-width: 900px) {
    .mobile-drawer {
        padding-bottom: calc(16px + env(safe-area-inset-bottom));
    }
    .page-bottom-safe {
        padding-bottom: calc(24px + env(safe-area-inset-bottom));
    }
    input, select, textarea {
        font-size: 16px; /* 全局防 iOS 缩放 */
    }
    /* 确保所有可点元素 ≥44px（触摸屏最低标准） */
    button, .btn, .quest-item, .option-btn, .mood-btn, .tab-btn,
    select, input[type="checkbox"], input[type="radio"] {
        min-height: 44px;
    }
}
