/* ========== 移动端适配 & iOS刘海屏 ========== */

/* iOS安全区 */
@supports (padding-top: env(safe-area-inset-top)) {
    .app-header {
        padding-top: max(var(--space-md), env(safe-area-inset-top));
    }

    .chat-footer {
        padding-bottom: max(var(--space-md), env(safe-area-inset-bottom));
    }

    .panel-header {
        padding-top: max(var(--space-md), env(safe-area-inset-top));
    }
}

/* 小屏幕优化 */
@media (max-width: 480px) {
    :root {
        --radius-md: 14px;
        --radius-lg: 18px;
        --radius-xl: 20px;
    }

    .app-header {
        padding: var(--space-sm) var(--space-md);
    }

    .app-title {
        font-size: 1rem;
    }

    .current-model {
        font-size: 0.65rem;
        max-width: 140px;
    }

    .chat-main {
        padding: var(--space-sm);
    }

    .chat-footer {
        padding: var(--space-sm) var(--space-md);
    }

    .message {
        max-width: 92%;
    }

    .message-bubble {
        padding: var(--space-sm) var(--space-md);
        font-size: 0.9rem;
    }

    .message-avatar {
        width: 32px;
        height: 32px;
        font-size: 0.85rem;
    }

    .welcome-bubble {
        padding: var(--space-xl);
    }

    .welcome-bubble h1 {
        font-size: 1.1rem;
    }

    .modal-content {
        max-height: 85vh;
    }

    .panel-body {
        padding: var(--space-md);
    }
}

/* 横屏优化 */
@media (max-height: 500px) and (orientation: landscape) {
    .welcome-screen {
        padding: var(--space-md);
    }

    .welcome-bubble {
        padding: var(--space-lg);
    }

    .welcome-icon svg {
        width: 48px;
        height: 48px;
    }
}

/* 防止iOS橡皮筋效果 */
body {
    overscroll-behavior-y: none;
}

/* 输入框聚焦时防止页面缩放 */
input, textarea, select {
    font-size: 16px;
}

/* 禁用长按菜单 */
.btn, .btn-icon, .preset-card, .history-item {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    user-select: none;
}

/* 允许消息文本选择 */
.message-bubble {
    -webkit-user-select: text;
    user-select: text;
}
